コード例 #1
0
        private void frm_kullanicigiris_yüztanima_Load(object sender, EventArgs e)
        //Tanımlanan ve Tanınan Yüzün Vurgulanıp İsminin Yazılması
        {
            Capture capture = new Capture();

            capture.Start();
            capture.ImageGrabbed += (a, b) =>
            {
                var            image   = capture.RetrieveBgrFrame();
                var            image2  = image.Convert <Gray, byte>();
                HaarCascade    haaryuz = new HaarCascade("haarcascade_frontalface_alt2.xml");
                MCvAvgComp[][] Yuzler  = image2.DetectHaarCascade(haaryuz, 1.2, 5, HAAR_DETECTION_TYPE.DO_CANNY_PRUNING, new Size(15, 15));
                MCvFont        font    = new MCvFont(FONT.CV_FONT_HERSHEY_COMPLEX, 0.5, 0.5);
                foreach (MCvAvgComp yuz in Yuzler[0])
                {
                    var sadeyuz = image2.Copy(yuz.rect).Convert <Gray, byte>().Resize(100, 100, INTER.CV_INTER_CUBIC);
                    //Resimler aynı boyutta olmalıdır. O yüzden Resize ile yeniden boyutlandırma yapılmıştır. Aksi taktirde Classifier_Train sınıfının 245. satırında hata alınacaktır.
                    pictureBox2.Image = sadeyuz.ToBitmap();
                    if (train != null)
                    {
                        if (train.IsTrained)
                        {
                            string name        = train.Recognise(sadeyuz);
                            int    match_value = (int)train.Get_Eigen_Distance;
                            image.Draw(name + " ", ref font, new Point(yuz.rect.X - 2, yuz.rect.Y - 2), new Bgr(Color.LightGreen));
                        }
                    }
                    image.Draw(yuz.rect, new Bgr(Color.Red), 2);
                    textBox2.Text = train.Recognise(sadeyuz);
                }
                pictureBox1.Image = image.ToBitmap();
            };
        }
コード例 #2
0
        private void frm_kullanicigiris_yüztanima_Load(object sender, EventArgs e)
        //Tanımlanan ve Tanınan Yüzün Vurgulanıp İsminin Yazılması
        {
            Capture capture = new Capture();

            capture.Start();
            capture.ImageGrabbed += (a, b) =>
            {
                var            image   = capture.RetrieveBgrFrame();
                var            image2  = image.Convert <Gray, byte>();
                HaarCascade    haaryuz = new HaarCascade("haarcascade_frontalface_alt2.xml");
                MCvAvgComp[][] Yuzler  = image2.DetectHaarCascade(haaryuz, 1.2, 5, HAAR_DETECTION_TYPE.DO_CANNY_PRUNING, new Size(15, 15));
                MCvFont        font    = new MCvFont(FONT.CV_FONT_HERSHEY_COMPLEX, 0.5, 0.5);
                foreach (MCvAvgComp yuz in Yuzler[0])
                {
                    var sadeyuz = image2.Copy(yuz.rect).Convert <Gray, byte>().Resize(100, 100, INTER.CV_INTER_CUBIC);
                    //Resimler aynı boyutta olmalıdır. O yüzden Resize ile yeniden boyutlandırma yapılmıştır. Aksi taktirde Classifier_Train sınıfının 245. satırında hata alınacaktır.
                    pictureBox2.Image = sadeyuz.ToBitmap();
                    if (train != null)
                    {
                        if (train.IsTrained)
                        {
                            string name        = train.Recognise(sadeyuz);
                            int    match_value = (int)train.Get_Eigen_Distance;
                            image.Draw(name + " ", ref font, new Point(yuz.rect.X - 2, yuz.rect.Y - 2), new Bgr(Color.LightGreen));
                        }
                    }
                    image.Draw(yuz.rect, new Bgr(Color.Red), 2);
                    textBox2.Text = train.Recognise(sadeyuz);


                    /* baglanti.Open();
                    *  SqlCommand komut = new SqlCommand("select * from kullanici where KULLANICIAD='" + textBox2.Text + "'", baglanti);
                    *  SqlDataReader oku = komut.ExecuteReader();
                    *  if (oku.Read())
                    *  {
                    *      ID = Convert.ToInt32(oku["KULLANICIID"].ToString());
                    *      frm_tanimlar f4 = new frm_tanimlar();
                    *      f4.ShowDialog();
                    *      this.Hide();
                    *  }
                    *  else
                    *  {
                    *      MessageBox.Show("Kullanıcı Adı veya Şifre Hatalı");
                    *  }
                    *
                    *  baglanti.Close();*/
                }
                pictureBox1.Image = image.ToBitmap();
            };
        }