2017-05-06 118 views
0

我如何才能在框架上获得一张脸部跟踪?
现在我可以使用Haar检测和跟踪脸部了。人脸跟踪OpenCV

但是如果在框架上有许多面孔。

程序将跟踪所有面,但我希望它只检测一个面。

这个post建议使用camshift然后卡尔曼过滤器。

它有其他方法可以做到吗?

谢谢你,对不起,困惑的英语。

回答

0

应用多尺度级联分类,如下之后:

...  
MatOfRect faces = new MatOfRect(); 
mJavaDetector.detectMultiScale(imagem_gray, faces, 1.1, 2, 2, new Size(mAbsoluteFaceSize, mAbsoluteFaceSize), new Size()); 

然后......

Rect[] facesArray = faces.toArray(); 
if (facesArray.length > 0) //... do whatever you want 

可以因此单独访问每个面。 Ex,facesArray[0],你有Rect相关的脸0

+0

是0脸最大的脸?或者它是第一个出现在框架中。 –

+0

第一个。 facesArray(Rect!)的每个元素都有一个大小。如果你想要最大的脸庞,你可以按它的大小来订购。 – raullalves