在单个CameraSource(Google移动视觉)中实施FaceDetector和TextRecognizer

问题描述 投票:0回答:1

在我的Android应用程序中,我需要同时进行面部检测和ORC功能。我可以在同一个CameraSource上实现这两个吗?可能吗?

Context context = getApplicationContext();

TextRecognizer textRecognizer = new TextRecognizer.Builder(context).build();
textRecognizer.setProcessor(new OcrDetectorProcessor(mGraphicOverlay));

FaceDetector detector = new FaceDetector.Builder(context).setClassificationType(FaceDetector.ALL_CLASSIFICATIONS).build();
detector.setProcessor(new MultiProcessor.Builder<>(new GraphicFaceTrackerFactory()).build());

mCameraSource = new CameraSource.Builder(getApplicationContext(), detector)
                    .setFacing(CameraSource.CAMERA_FACING_BACK)
                    .setRequestedPreviewSize(1280, 1024)
                    .setRequestedFps(15.0f)
                    .setFlashMode(useFlash ? Camera.Parameters.FLASH_MODE_TORCH : null)
                    .setFocusMode(autoFocus ? Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE : null)
                    .build();

在示例代码中,它们一次只能将一个检测器传递给CameraSource。 textRecognizerdetector

android google-api ocr face-detection google-vision
1个回答
0
投票

更新:我找到了办法。您可以创建一个MultiDetector并将FaceDetectorTextRecognizer添加到其中并将MultiDetector对象传递给CameraSource.Builder

MultiDetector multiDetector = new MultiDetector.Builder()
            .add(textRecognizer)
            .add(detector)
            .build();

多检测器将从相机源接收一系列帧。每个帧都提交给两个探测器。 MultiFetector

© www.soinside.com 2019 - 2024. All rights reserved.