如何确保用于视觉图像的Firebase ML套件为应用中的每个新面孔生成新的面孔ID?

时间:2020-04-14 08:43:24

标签: firebase flutter firebase-mlkit

我正在使用Firebase ML Kit的Firebase Vision API来检测面孔并跟踪所有照片中面孔的ID。只要用户安装了应用,它就会生成以01等开头的ID。当用户卸载该应用程序并使用相同的帐户进行安装和登录时,它再次开始从01等生成ID。我如何确保它为检测到的每个新面孔生成一个新ID。

Future assignFaceId(File image) async{
    print('Face detect called');
    final visionImage = FirebaseVisionImage.fromFile(image);
    final faceDetector = FirebaseVision.instance.faceDetector(FaceDetectorOptions(
      enableTracking: true,
      mode: FaceDetectorMode.accurate
    ));
    final face = await faceDetector.processImage(visionImage);
    print(face[0].trackingId);
  }

1 个答案:

答案 0 :(得分:0)

感谢您的提问!

人脸跟踪ID不用于识别人脸,它不会告诉您这两个人脸是否属于同一个人。 face tracking ID用于流模式,它有助于在连续帧中跟踪同一张脸。

在您的情况下,如果您只想给每个面孔分配一个新ID而又不将它们识别为同一个人,则可以自己分配一个ID,并将计数保留在SharedPreference中。希望有帮助。