Я использую комплект Google Firebase ML Kit для определения контуров лица изображений, снятых с камеры телефона. Однако на самом деле он не обнаруживает никаких лиц. Я проверил, что изображение было снято и правильно сохранено с камеры, отображая изображение в ImageView. Я также добавил, что
<meta-data android:name="com.google.android.gms.vision.DEPENDENCIES" android:value="face"/>
в AndroidManifest. xml и
implementation 'com.google.firebase:firebase-ml-vision:24.0.1'
implementation 'com.google.firebase:firebase-ml-vision-face-model:19.0.0'
в build.gradle приложения.
Вот код Firebase:
FirebaseApp.initializeApp(context);
FirebaseVisionFaceDetectorOptions realTimeOpts =
new FirebaseVisionFaceDetectorOptions.Builder()
.setPerformanceMode(FirebaseVisionFaceDetectorOptions.ACCURATE)
.setContourMode(FirebaseVisionFaceDetectorOptions.ALL_CONTOURS)
.build();
fbImage = FirebaseVisionImage.fromBitmap(portrait);
FirebaseVisionFaceDetector detector = FirebaseVision.getInstance()
.getVisionFaceDetector(realTimeOpts);
Task<List<FirebaseVisionFace>> result =
detector.detectInImage(fbImage)
.addOnSuccessListener(
new OnSuccessListener<List<FirebaseVisionFace>>() {
@Override
public void onSuccess(List<FirebaseVisionFace> faces) {
Log.d(TAG, "No. Faces Detected: " + faces.size());
}
})
.addOnFailureListener(
new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d(TAG, e.getMessage());
}
});
Кто-нибудь знает, почему это ничего не обнаруживает?