检测到脸部时采取措施(Android Camera2 API)

阿奎尔·卡拉萨拉尼

如果未检测到脸部,我需要隐藏相机拍摄按钮。我已经尝试了三天了。当检测到脸部时,我找不到采取行动的方法。

注意:此代码工作正常,我只需要在什么地方添加面部检测器?然后使用此面部检测器对相机拍摄按钮进行操作

btn_shot.setVisibility(view.GONE)

这是在创建相机预览:

private void creatCameraPreview() throws CameraAccessException {
        SurfaceTexture texture = textureView.getSurfaceTexture();
        texture.setDefaultBufferSize(imageDimensions.getWidth(),
imageDimensions.getHeight());

        Surface surface = new Surface(texture);

        captureRequestBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);
        captureRequestBuilder.addTarget(surface);

        cameraDevice.createCaptureSession(Arrays.asList(surface), new CameraCaptureSession.StateCallback() {
            @Override
            public void onConfigured(@NonNull CameraCaptureSession session) {
                if (cameraDevice == null)
                    return;

                cameraCaptureSession = session;
                try {
                    updatePreview();
                } catch (CameraAccessException e) {
                    e.printStackTrace();
                }

            }

            @Override
            public void onConfigureFailed(@NonNull CameraCaptureSession session) {
                Toast.makeText(CameraTaken.this, "Configuration Changed", Toast.LENGTH_SHORT).show();

            }
        }, null);
    }

这里打开相机:

private void openCamera() throws CameraAccessException {
        CameraManager manager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);

        assert manager != null;
        cameraId = manager.getCameraIdList()[0]; //[0] for the back facing camera [1] for the front facing camera

        CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraId);

        StreamConfigurationMap map = characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);


        assert map != null;
        imageDimensions = map.getOutputSizes(SurfaceTexture.class)[0];

        if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED
                && ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED
                && ActivityCompat.checkSelfPermission(this, Manifest.permission.INTERNET) != PackageManager.PERMISSION_GRANTED) {

            ActivityCompat.requestPermissions(CameraTaken.this, new String[]{
                    Manifest.permission.CAMERA,
                    Manifest.permission.WRITE_EXTERNAL_STORAGE,
                    Manifest.permission.INTERNET}, 101);
            return;
        }
        manager.openCamera(cameraId, stateCallBack, null);




    }
埃迪·塔尔瓦拉(Eddy Talvala)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android Camera2 API和EXIF

来自分类Dev

Android Camera2 API-检测何时关注

来自分类Dev

Android API 21+ Camera2 API

来自分类Dev

预览创建布局programmaticaly时streched在Camera2 API

来自分类Dev

Android Camera2 API手动曝光更改

来自分类Dev

如何使用Android Camera2 API捕获单个图像?

来自分类Dev

Android Camera2 API聚焦距离校准

来自分类Dev

在Android Vision API中切换到Camera2

来自分类Dev

Android Camera2 API手动曝光更改

来自分类Dev

使用Android Camera2 API在后台捕获视频

来自分类Dev

Android Camera2 API 中的等效 canDisableShutterSound 方法

来自分类Dev

Android Camera2 API - 覆盖旧图像

来自分类Dev

Camera2 API 问题

来自分类Dev

我应该为Android使用Camera2还是Camera API?

来自分类Dev

Android:Camera2 API 在尝试第二次录制时崩溃

来自分类Dev

Android JavaCV + Camera2

来自分类Dev

Android Camera2 getPreviewFrame

来自分类Dev

Android Camera2示例

来自分类Dev

使用Android camera2 API打开/关闭闪光灯不起作用

来自分类Dev

Android Camera2 API切换回-前置摄像头

来自分类Dev

使用Android L和Camera2 API的相机预览图像数据处理

来自分类Dev

Android L-使用Camera2 API自动对焦拍摄闪光灯图像

来自分类Dev

来自Android camera2 API的图像数据在Galaxy S5上翻转并压缩

来自分类Dev

使用camera2 API createCaptureSession后,Android无法仅播放视频音频

来自分类Dev

Android Camera2:如何使用SENSOR_BLACK_LEVEL_PATTERN API?

来自分类Dev

使用Android Camera2 API快速捕获闪光/不闪光图像

来自分类Dev

如何在预览到 Android Camera2 API 期间获取指向每个帧数据的指针?

来自分类Dev

Android Camera2 API 将流缓冲区发送到本机函数

来自分类Dev

前置Camera2 API GLSurfaceview

Related 相关文章

热门标签

归档