java – 面部检测不适用于前置摄像头

前端之家收集整理的这篇文章主要介绍了java – 面部检测不适用于前置摄像头前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以基本上我有这个代码,
if(mCamera.getParameters().getMaxNumDetectedFaces()==0)
        {
            System.out.println("Face detection not avaliable");
        }
        else
        {
            System.out.println("Max faces: " + Integer.toString(mCamera.getParameters().getMaxNumDetectedFaces()));
        }

        mCamera.setFaceDetectionListener(new FaceDetectionListener() {

            @Override
            public void onFaceDetection(Face[] faces,Camera camera) {
                // TODO Auto-generated method stub
                System.out.println("Face detection callback called." + Integer.toString(faces.length));


            }


        });

调用mCamera.startFaceDetection();调用回调后,一切正常.但是,如果我更换相机,相同的代码会导致回调永远不会被调用. getMaxNumDetectedFaces,为两个摄像机返回35,所以我认为它支持在前置摄像头.我可以来回更改相机,每次调用代码,它将适用于后置摄像头,但不适用于前置摄像头.

还有什么我可能做错了吗?

解决方法

相机的质量不可能(前一个,对吗?)是不是足够准确的面部检测工作?相机的图像可能太嘈杂,无法使脸部探测器工作.还有很多其他变量可能会阻碍这一点.

还要搜索前置摄像头,看起来像前置摄像头的点可能是镜像的.这在以下描述:http://developer.android.com/reference/android/hardware/Camera.Face.html

我希望这有帮助.

猜你在找的Java相关文章