Emgu下人脸识别算法的调用

简单编写了一个C#的人脸识别的程序,检测方法采用默认的CascadeClassifier

privatevoidFaceDetcBtn_Click(object sender,EventArgs e)
{
   Image<Gray,Byte> img =newImage<Gray,Byte>(filename);
   //载入训练库数据
   CascadeClassifierFacedetect=newCascadeClassifier("haarcascade_frontalface_alt2.xml");
   Rectangle[] faceRect =Facedetect.DetectMultiScale(img,1.1,2,Size.Empty,Size.Empty);
   Emgu.CV.Image<Bgr,Byte> imgori =newEmgu.CV.Image<Bgr,byte>(filename);
   for(int i =0; i < faceRect.Length; i++)
   {
      Bgr clr =newBgr(15.0f,15.0f,220.0f);
      imgori.Draw(faceRect[i],clr,1);
   }
   picBox2.Image= imgori.ToBitmap();
   imgori.Save(name +"_faceDetected.jpg");
}

默认代码的错误率较高,识别能力不好,建议自己编写更好的识别算法。

posted @ 2015-07-25 20:03  回归的世界线  阅读(447)  评论(0编辑  收藏  举报