google face API 对所有图像处理缓慢?

Slow processing of all images by google face API?

我正在制作一个 android 应用程序,它使用 Google 人脸 API 来检测图库中所有图像的人脸。处理所有图像需要很长时间,因此应用程序会卡住很长时间。任何解决方法? 我尝试缩小图像的大小然后进行处理,但它给出了错误的答案。

禁用图像跟踪

    FaceDetector detector = new FaceDetector.Builder(context)
            .setTrackingEnabled(false)
            .build();

默认为 true,如果您不需要此功能,可能会减慢检测速度。

如果您查看 FaceDetector.Builder 的文档,您会发现可以设置一些可以提高速度的属性。

例如:

public FaceDetector.Builder setProminentFaceOnly (boolean prominentFaceOnly)

2 分钟 715 张图片真是太棒了。
可以采取的步骤:

  1. 在 FaceDetector 中启用快速模式
  2. 如果您不想跟踪,请将 setTrackingEnabled 设置为 false
  3. 根据您的数据集将最小面部尺寸设置为合适的尺寸
  4. 使用 Universal Image Loader 或 Android 的 glide 库加载位图。我使用了 UIL 库。
  5. 640x480 是人脸检测和分类的最佳尺寸,可以在更短的时间内缩小尺寸并获得几乎相同的结果。
  6. 根据需要设置setLandmarkType和setClassificationType,不需要则禁用。