Java - Android Mobile Vision распознавание лиц с контурами - PullRequest
1 голос
/ 13 марта 2019

Я экспериментирую с распознаванием лиц в Mobile Vision API.Я пытаюсь получить контуры лицевых ориентиров.Но при создании FaceDetector это дает мне следующее исключение:

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.camera2tut, PID: 27106
    java.lang.IllegalArgumentException: Invalid build options

И FaceDetector говорит мне, что «Contour не поддерживается для режима без SELFIE».Вот мой код для настройки FaceDetector:

import com.google.android.gms.vision.face.FaceDetector;
[...]
mFaceDetector = new FaceDetector.Builder(this)
            .setTrackingEnabled(true)
            .setMinFaceSize((float)0.4)
            .setLandmarkType(FaceDetector.CONTOUR_LANDMARKS)
            .setClassificationType(FaceDetector.NO_CLASSIFICATIONS)
            .setProminentFaceOnly(true)
            .setMode(FaceDetector.ACCURATE_MODE)
            .build();

Для FaceDetector.Builder нет опции для установки "режима селфи": https://developers.google.com/android/reference/com/google/android/gms/vision/face/FaceDetector.Builder

Хотя FaceDetector имеетконстанта SELFIE_MODE: https://developers.google.com/android/reference/com/google/android/gms/vision/face/FaceDetector

Из описания этой константы кажется, что .setProminentFaceOnly(true) ближе всего подходит к режиму селфи, но, похоже, не включает его.

Если я простообнаружение ориентиров с .setLandmarkType(FaceDetector.ALL_LANDMARKS), детектор может быть построен.Но как мне использовать этот зловещий режим «селфи», как мне получить контуры?

1 Ответ

0 голосов
/ 14 мая 2019

Вы пробовали

.setMode(FaceDetector.SELFIE_MODE)
...