Example #1
0
        private void btnOpenTestImage_Click(object sender, EventArgs e)
        {
            MyOpenFileDialogControl dlgLoad = new MyOpenFileDialogControl();

            dlgLoad.FileDlgInitialDirectory = "./";

            dlgLoad.FileDlgCaption = "Select file to add to test set...";
            dlgLoad.FileDlgFilter = "Image Files (*.png,*.jpg,*.bmp,*.ppm)|*.png;*.jpg;*.bmp;*.ppm";

            DialogResult r = dlgLoad.ShowDialog();

            if (r == DialogResult.OK)
            {

                testImageFilename = dlgLoad.FileDlgFileName;

                //SourceItem item = new SourceItem(controlex.Filename, 0);
                //ListViewItem newItem = lstInputs.Items.Add(new ListViewItem(item.GetStringValues()));
                //sourceItems.Add(newItem.GetHashCode(), item);
            }

            currentSource = new SourceItem(testImageFilename, cmbSampleType.SelectedIndex);
            redrawPipeline();
            calculateFitness();
        }
Example #2
0
        public void AddSource(int index, SourceItem sourceItem)
        {
            int blobIndex = -1;
            if (sourceItem.Cached)
            {
                blobIndex = database.InsertBLOBImage((Bitmap)sourceItem.InternalImage);
            }

            string query =
               "REPLACE INTO Sources " +
               "VALUES ('" +
               index + "','" +
               sourceItem.Name + "','" +
               sourceItem.Filename + "','" +
               sourceItem.Size.Width + "','" +
               sourceItem.Size.Height + "','" +
               (int)sourceItem.SampleType + "','" +
               Convert.ToInt32(sourceItem.Cached) + "','" +
               blobIndex + "','" +
               (int)sourceItem.SourceType + "');";

               database.RunQueryNoResult(query);
        }
Example #3
0
        private void button1_Click(object sender, EventArgs e)
        {
            using (MyOpenFileDialogControl dlgLoad = new MyOpenFileDialogControl())
            {
                dlgLoad.FileDlgCaption = "Select a ERun file...";
                dlgLoad.FileDlgFilter = "ENFORM Set File (*.eset)|*.eset|Text File (*.txt) |*.txt|Any file (*.*)|*.*";

                if (dlgLoad.ShowDialog() == DialogResult.OK)
                {

                    if ((dlgLoad.MSDialog as OpenFileDialog).FileNames.Length > 0)
                    {
                        double total = 0.0;
                        int count = 0;
                        using (StreamReader r = new StreamReader(dlgLoad.FileDlgFileName))
                        {
                            while (!r.EndOfStream)
                            {
                                string[] s = r.ReadLine().Split(',');
                                string use = s[2].Trim();
                                string filename = s[3];
                                if (use == "1")
                                {
                                    try
                                    {
                                    SourceItem item = new SourceItem(filename, dlgLoad.SampleType);
                                    currentSource = item;

                                        total += calculateFitness();
                                        count++;
                                    }
                                    catch (Exception)
                                    {

                                    }
                                }
                            }

                        }

                        MessageBox.Show("Average fitness = " + (total / (double) count).ToString());

                    }

                    //SourceItem item = new SourceItem(controlex.Filename, 0);
                    //ListViewItem newItem = lstInputs.Items.Add(new ListViewItem(item.GetStringValues()));
                    //sourceItems.Add(newItem.GetHashCode(), item);
                }

            }
        }
Example #4
0
        private void btnGetFERETImages_Click(object sender, EventArgs e)
        {
            using (MyOpenFileDialogControl dlgLoad = new MyOpenFileDialogControl())
            {
                dlgLoad.FileDlgCaption = "Select a ERun file...";
                dlgLoad.FileDlgFilter = "ENFORM Set File (*.eset)|*.eset|Text File (*.txt) |*.txt|Any file (*.*)|*.*";

                if (dlgLoad.ShowDialog() == DialogResult.OK)
                {

                    if ((dlgLoad.MSDialog as OpenFileDialog).FileNames.Length > 0)
                    {

                        using (StreamReader r = new StreamReader(dlgLoad.FileDlgFileName))
                        {
                            while (!r.EndOfStream)
                            {
                                string[] s = r.ReadLine().Split(',');
                                string use = s[1].Trim();
                                string filename = s[3];
                                if (use == "1")
                                {
                                    SourceItem item = new SourceItem(filename, dlgLoad.SampleType);

                                    ListViewItem newItem = lstInputs.Items.Add(new ListViewItem(item.GetStringValues()));
                                    sourceItems.Add(newItem.GetHashCode(), item);
                                }
                            }

                        }

                    }

                    //SourceItem item = new SourceItem(controlex.Filename, 0);
                    //ListViewItem newItem = lstInputs.Items.Add(new ListViewItem(item.GetStringValues()));
                    //sourceItems.Add(newItem.GetHashCode(), item);
                }

            }
        }
Example #5
0
        private void lstInputs_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (txtHeight.Text == "" || txtWidth.Text == "")
            {
                imageViewer1.LoadImage(ENFORM.GUI.Properties.Resources.Error);
                return;
            }

            if (lstInputs.SelectedItems.Count >= 1)
            {
                try
                {
                    int sourceHash = lstInputs.SelectedItems[0].GetHashCode();
                    SourceItem item = sourceItems[sourceHash];
                    currentSource = item;
                    redrawPipeline();

                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error loading the selected file as an image.\n" + ex.Message + ex.StackTrace);
                    imageViewer1.LoadImage(ENFORM.GUI.Properties.Resources.Error);

                }

            }
        }
Example #6
0
        private void btnNewImage_Click(object sender, EventArgs e)
        {
            NameDialog dlgName = new NameDialog();
            DialogResult r = dlgName.ShowDialog(this);

            if (r == DialogResult.OK)
            {
                Size itemSize = new Size(Convert.ToInt32(txtWidth.Text), Convert.ToInt32(txtHeight.Text));
                SourceItem item = new SourceItem(itemSize, dlgName.SampleType, dlgName.NameText);
                ListViewItem newItem = lstInputs.Items.Add(new ListViewItem(item.GetStringValues()));
                sourceItems.Add(newItem.GetHashCode(), item);

            }
            if (lstInputs.SelectedItems.Count == 0 && lstInputs.Items.Count > 0)
            {
                lstInputs.Focus();
                lstInputs.Items[0].Selected = true;
            }
        }
Example #7
0
        private void btnLoadImages_Click(object sender, EventArgs e)
        {
            /*
            OpenFileDialog dlgOpen = new OpenFileDialog();
            dlgOpen.InitialDirectory = "./";
            dlgOpen.Multiselect = true;
            dlgOpen.Title = "Select file to add to test set...";
            dlgOpen.Filter = "Image Files |*.png;*.jpg;*.bmp";
            DialogResult r = dlgOpen.ShowDialog(this);
            if (r == DialogResult.OK)
            {
                if (dlgOpen.FileNames.Length > 0)
                {
                    foreach (String s in dlgOpen.FileNames)
                    {
                        SourceItem item = new SourceItem(s, 0);

                        ListViewItem newItem = lstInputs.Items.Add(new ListViewItem(item.GetStringValues()));
                        sourceItems.Add(newItem.GetHashCode(),item);

                    }
                }
            }
             *
             * /
             *
             */

            MyOpenFileDialogControl dlgLoad = new MyOpenFileDialogControl();

            dlgLoad.FileDlgInitialDirectory = "./";

            dlgLoad.FileDlgCaption = "Select file to add to test set...";
            dlgLoad.FileDlgFilter = "Image Files (*.png,*.jpg,*.bmp,*.ppm)|*.png;*.jpg;*.bmp;*.ppm";

            DialogResult r = dlgLoad.ShowDialog();

               if (r == DialogResult.OK)
            {

                if ((dlgLoad.MSDialog as OpenFileDialog).FileNames.Length > 0)
                {
                    foreach (String s in (dlgLoad.MSDialog as OpenFileDialog).FileNames)
                    {
                        SourceItem item = new SourceItem(s, dlgLoad.SampleType);

                        ListViewItem newItem = lstInputs.Items.Add(new ListViewItem(item.GetStringValues()));
                        sourceItems.Add(newItem.GetHashCode(), item);

                    }
                }

                //SourceItem item = new SourceItem(controlex.Filename, 0);
                //ListViewItem newItem = lstInputs.Items.Add(new ListViewItem(item.GetStringValues()));
                //sourceItems.Add(newItem.GetHashCode(), item);
            }
            //controlex.Dispose();

            if (lstInputs.SelectedItems.Count == 0 && lstInputs.Items.Count > 0)
            {
                lstInputs.Focus();
                lstInputs.Items[0].Selected = true;
            }
        }
Example #8
0
        public SourceItem[] GetSourceItems()
        {
            string query =
                "SELECT * " +
                "FROM Sources; ";//+
                //"ORDER BY Index;";

            DataSet result = database.RunQuery(query);
            if (result.Tables.Count > 0)
            {

                SourceItem[] items = new SourceItem[result.Tables[0].Rows.Count];

                for (int i = 0; i < result.Tables[0].Rows.Count; i++)
                {
                    DataRow row = result.Tables[0].Rows[i];
                    SourceType sourceType = (SourceType)Convert.ToInt32(row["SourceType"]);
                    Image cachedImage = null;
                    SourceItem item;

                    if ((bool)row["Cached"])
                    {
                        //Utils.Logger.Log("Image cached: Loading from database");

                        int index = Convert.ToInt32(row["ImageBLOBRef"]);
                        //Utils.Logger.Log("Index = " + index);

                        cachedImage = database.RetrieveBLOBImage(index);

                    }

                    if (sourceType == SourceType.FileSystem)
                    {

                        if (cachedImage == null)
                        {
                            Utils.Logger.Log("Image not cached: Loading from filesystem");
                            item = new SourceItem(
                                row["Filename"].ToString(),
                                Convert.ToInt32(row["SampleType"]),
                                row["Name"].ToString());
                        }
                        else
                        {
                            item = new SourceItem(
                                row["Filename"].ToString(),
                                Convert.ToInt32(row["SampleType"]),
                                row["Name"].ToString(),
                                cachedImage);

                        }
                    }
                    else
                        if (sourceType == SourceType.Custom)
                        {
                            Size size = new Size(
                                Convert.ToInt32(row["Width"]),
                                Convert.ToInt32(row["Height"]));
                            item = new SourceItem(size, Convert.ToInt32(row["SampleType"]), row["Name"].ToString());
                            item.InternalImage = cachedImage;
                        }
                        else
                        {
                            throw new NotImplementedException("Source Type '" +
                                sourceType.ToString() +
                                " is not implemented yet");
                        }
                    //item.SourceType = (SourceType) Convert.ToInt32(row["SourceType"]);

                    items[i] = item;
                }

                return items;
            }
            return new SourceItem[0];
        }