2012-03-08 119 views
1

所以我知道android冰淇淋三明治支持人脸检测。所以我最近将我的华硕变压器升级到了启用了人脸检测解锁功能的平板电脑,并且效果很好。现在,当我去编写一个使用人脸检测的程序时,当我尝试查找支持的最大面数时,我总是得到0,并且当我尝试开始跟踪面时,我的应用程序总是崩溃。为什么如果我的平板电脑支持人脸检测?难道我做错了什么?我使用的是检查是否被支持人脸检测的代码下面贴:Android人脸检测支持

Camera.Parameters params = mCamera.getParameters(); 
System.out.println("Max num faces is!!!! :" + params.getMaxNumDetectedFaces()); 

而且我使用的完整的代码可以在这里找到: https://docs.google.com/file/d/0B2Nu5U2Cz81qZExGQ25sWVdRd21IOExUUTZsZzFoZw/edit

回答

3

,脸部侦测不可人脸识别。人脸检测通过哈尔级联等方式完成,并确定图像中存在人脸。此功能可以包含在安卓相机的应用程序,但不能 - API是那里,但它说,它支持最大0面(意味着什么,离开,我们只是满足接口)

面部解锁工程不同 - 它会不需要定位脸部,所以它可以使用一些模式匹配技术来识别它。

这里是读指针,人脸检测:

http://www.richardnichols.net/2011/01/java-facial-recognition-haar-cascade-with-jjil-guide/

并且你可以通过摄像头预览功能,实现它自己,即使你的相机软件sdoes不支持此

+0

因此,这将是硬件要求而不是一个软件?我以前见过,你知道任何使用android上的摄像头预览的例子吗? – Peter 2012-03-08 12:26:43

+0

这不是硬件需求,而是相机软件的具体实现。我在相机预览中没有面部检测,但是我有OCR相机预览的OCR软件:http://sourceforge.net/projects/javaocr/(请参阅demos子目录) – 2012-03-08 12:50:14