相机面部检测getMaxNumDetectedFaces为Nexus 4,Nexus 7,三星Galaxy 2返回0

时间:2013-10-26 19:41:47

标签: android camera face-detection

我正在尝试使用ICS中新增的基于硬件的Camera.faceDetectionListener在实时预览模式下进行面部检测。我尝试使用Nexus 4,Nexus 7和三星Galaxy 10.1平板电脑,当我调用getMaxNumDetectedFaces时,所有这些设备都为前置摄像头返回0。但是,所有设备都支持面部解锁,所以我不明白为什么它们似乎都不支持面部检测。有没有人使用其中一种设备?

1 个答案:

答案 0 :(得分:1)

从API 14(ICS)开始支持,getMaxNumDetectedFaces返回包含使用startFaceDetection启动后摄像头人脸检测结果的数组的最大长度。如果返回的值为0,则表示设备不支持这种人脸检测方法。在这种情况下,面部检测必须通过其他方式实现(例如,使用自API 1以来可用的FaceDetector。)

我在一些设备中检查了getMaxNumDetectedFaces为前后摄像头返回的值:

  • Nexus 4:两台相机都返回2。
  • Nexus 5:为两个摄像头返回一个非常大的数字(5308421)。
  • Nexus 7:两台相机都返回0。
  • Nexus 10:两台相机都返回16
  • Sony Xperia Z1:两台相机都返回5。

总之,OEM对相机面部检测的支持非常有用。