介绍
利用Android实现人脸识别并统计人脸数?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
& lt; LinearLayout xmlns: android=癶ttp://schemas.android.com/apk/res/android" android: layout_width=癴ill_parent" android: layout_height=癴ill_parent" android:取向=皏ertical"比; & lt; SurfaceView android: id=癅 + id/sv" android: layout_width=癿atch_parent" android: layout_height=? dp" android: layout_weight=?”;/比; & lt;/LinearLayout>
java
cameraManager=(cameraManager) getSystemService (Context.CAMERA_SERVICE); surfaceHolder=sv.getHolder (); 表面=surfaceHolder.getSurface ();
//获取可用的相机列的表 String [] cameraIdList=cameraManager.getCameraIdList ();
如果(checkSelfPermission (Manifest.permission.CAMERA) !=PackageManager.PERMISSION_GRANTED) {//TODO:考虑//活动# requestPermissions//请求丢失的权限,然后覆盖//公共空>//获取开启相机的相关参数 CameraCharacteristics特点=cameraManager.getCameraCharacteristics (cameraIdList [1]);//可用于判断是否支持人脸检测,以及支持到哪种程度 faceDetectModes=characteristics.get (CameraCharacteristics.STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES);//支持的人脸检测模式 cameraManager。mStateCallback openCamera (cameraIdList [1], null);
camera.createCaptureSession (arrays . aslist(表面),新的CameraCaptureSession.StateCallback () { @Override 公共空间> CaptureRequest。Builder captureRequest=camera.createCaptureRequest (CameraDevice.TEMPLATE_PREVIEW); captureRequest.addTarget(表面); captureRequest.set (CaptureRequest。CONTROL_MODE CameraMetadata.CONTROL_MODE_AUTO); captureRequest.set (CaptureRequest。STATISTICS_FACE_DETECT_MODE getFaceDetectMode ()); session.setRepeatingRequest (captureRequest.build (), captureCallback,新处理程序());
利用Android实现人脸识别并统计人脸数