Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于emgucv的c#人脸识别_C#_Opencv_Emgucv - Fatal编程技术网

基于emgucv的c#人脸识别

基于emgucv的c#人脸识别,c#,opencv,emgucv,C#,Opencv,Emgucv,我试图用c#和emgucv识别照片中的一张脸,但我陷入了一个循环,在这里的最后一行: Image<Bgr, Byte> My_Image = new Image<Bgr, Byte>(dlg.FileName); Image<Gray, Byte> gray = My_Image.Convert<Gray, Byte>(); HaarCascade face = new HaarCascade("haarcascade_frontalface_a

我试图用c#和emgucv识别照片中的一张脸,但我陷入了一个循环,在这里的最后一行:

Image<Bgr, Byte> My_Image = new Image<Bgr, Byte>(dlg.FileName);
Image<Gray, Byte> gray = My_Image.Convert<Gray, Byte>(); 
HaarCascade face = new HaarCascade("haarcascade_frontalface_alt.xml");
MCvAvgComp[][] facesDetected = gray.DetectHaarCascade(face);
而且它也不起作用

我将感谢任何帮助:)

新代码如下

var HaarCascadeXML = new HaarCascade("haarcascade_frontalface_alt.xml");
var faces = HaarCascadeXML.Detect(face, 1.1, 10, HAAR_DETECTION_TYPE.DO_CANNY_PRUNING,
                                  new Size(20, 20), new Size(BaseImage.Width, BaseImage.Height));
顺便说一句,这只是一个人脸检测而不是人脸识别新代码是这样的

var HaarCascadeXML = new HaarCascade("haarcascade_frontalface_alt.xml");
var faces = HaarCascadeXML.Detect(face, 1.1, 10, HAAR_DETECTION_TYPE.DO_CANNY_PRUNING,
                                  new Size(20, 20), new Size(BaseImage.Width, BaseImage.Height));

顺便说一句,这只是一个人脸检测而不是一个人脸识别

你没有把MCvAvgComp[]]误认为MCvAvgComp[,]吗?不,这不能在两个选项上都建立。我在这些行中得到一个奇怪的警告:警告1“Emgu.CV.Image.detectharcascade(Emgu.CV.HaarCascade)”已经过时:“使用HaarCascade.Detect函数代替。”。此功能将在下一版本中删除,首先是EMGU提供的示例。除非灰色为空且未指定图像,否则代码的第二部分没有理由不工作。使用断点来评估灰色的内容。如果没有,你能提供你的来源,让我可以看看我的文章在这里将有助于作为参考的同时,但可能是过度为您的需要。另外,你能告诉我你使用的是什么版本的EMGU,这样我就可以尝试重新创建你的问题了。你不会错把MCvAvgComp[]]当成MCvAvgComp[,]?不,这不能在两个选项上都构建。我在这些行中得到一个奇怪的警告:警告1“Emgu.CV.Image.detectharcascade(Emgu.CV.HaarCascade)”已经过时:“使用HaarCascade.Detect函数代替。”。此功能将在下一版本中删除,首先是EMGU提供的示例。除非灰色为空且未指定图像,否则代码的第二部分没有理由不工作。使用断点来评估灰色的内容。如果没有,你能提供你的来源,让我可以看看我的文章在这里将有助于作为参考的同时,但可能是过度为您的需要。另外,你能告诉我你使用的是什么版本的EMGU,这样我就可以试着重现你的问题欢呼了