Firebase ML Kit дает различный идентификатор отслеживания лица даже для тех же лиц в приложении Flutter - PullRequest
0 голосов
/ 15 апреля 2020

Сначала я передаю изображения одного и того же человека, взяв self ie, а другой pi c - это существующий профиль pi c пользователя, которого я преобразовываю в тип данных File, потому что нет никакого способа непосредственно обнаруживать лица по URL во флаттере. Даже когда оба лица одинаковы, я получаю разные идентификаторы лиц, например 0 и 1 в инструкциях печати. Как решить эту проблему?

Future verifyYourProfile(File image) async {

    final faceDetector = FirebaseVision.instance.faceDetector(
      FaceDetectorOptions(
          enableTracking: true, mode: FaceDetectorMode.accurate),
    );

    // Assign face ID to selfie from incoming File image called from App.
    final selfieVisionImage = FirebaseVisionImage.fromFile(image);
    final selfieFace = await faceDetector.processImage(selfieVisionImage);
    final int selfieId = selfieFace[0].trackingId;
    print(selfieId);

    // Assign face ID to profile Picture.

    // Convert URL Image to File data type
    final response = await get(_imageUrl);
    final documentDirectory = await getApplicationDocumentsDirectory();
    File file = new File(join(documentDirectory.path, 'verifyImage.png'));
    file.writeAsBytesSync(response.bodyBytes);

    print('Detecting second face');
    // Detect the face.
    final faceDetector2 = FirebaseVision.instance.faceDetector(
      FaceDetectorOptions(
          enableTracking: true, mode: FaceDetectorMode.accurate),
    );
    final profilePicVisionImage = FirebaseVisionImage.fromFile(file);
    final profilePicFace =
        await faceDetector2.processImage(profilePicVisionImage);
    final int profilePicId = profilePicFace[0].trackingId;
    print(profilePicId);
  }

1 Ответ

1 голос
/ 18 апреля 2020

Спасибо за ваш вопрос!

Функция распознавания лиц не предназначена для распознавания лиц, и она не скажет вам, принадлежат ли эти два лица одному человеку или нет. Идентификатор отслеживания лица можно использовать в потоковом режиме, когда он помогает отслеживать одно и то же лицо в последовательных кадрах.

...