Exemple #1
0
 private void btn_learn_resize_Click(object sender, EventArgs e)
 {
     foreach (string imgpath in trainFolder.GetAll())
     {
         Mat tmp = new Mat(imgpath);
         tmp = ImgOps.InterpolationResize(tmp, 32, 32);
         tmp = ImgOps.RGBtoGrey(tmp).Mat;
     }
 }
Exemple #2
0
        public static Mat toBinary(Mat img, int threshold, int maxValue)
        {
            Mat tmp = new Mat();

            try
            {
                tmp = ImgOps.RGBtoGrey(img).Mat;
                CvInvoke.Threshold(tmp, tmp, threshold, maxValue, 0);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(tmp);
        }
Exemple #3
0
        private void btn_CNN_recognize_Click(object sender, EventArgs e)
        {
            if (tb_imgs_path.Text != "")
            {
                if (!Directory.Exists(tb_imgs_path.Text))
                {
                    MessageBox.Show("Folder does not exists");
                    return;
                }

                recognizeImageFolder.Load(tb_imgs_path.Text);
                List <string> sarr = new List <string>();
                foreach (string s in recognizeImageFolder.GetAll())
                {
                    Mat im = new Mat(s);
                    if (im.NumberOfChannels != 1)
                    {
                        im = ImgOps.RGBtoGrey(im).Mat;
                    }

                    if (im.Size != new Size(32, 32))
                    {
                        im = new Image <Gray, byte>(ImgOps.InterpolationResize(im, 32, 32).Bitmap).Mat;
                    }
                    Image <Gray, byte> img  = new Image <Gray, byte>(im.Bitmap);
                    string             sign = network.Recognize(img.Bytes);
                    sarr.Add(sign);
                }
                string name     = "results.txt";
                string filepath = Path.Combine(recognizeImageFolder.GetPath(), name);

                List <string> res = new List <string>();
                for (int i = 0; i < sarr.Count; i++)
                {
                    res.Add(recognizeImageFolder.GetAll()[i] + "_!_" + sarr[i]);
                }
                File.WriteAllLines(filepath, res);
            }
            else
            {
                MessageBox.Show("Path to images is empty");
            }
        }