Firebase 视觉人脸检测使用启发式算法 (MLK​​it) 获得人脸的紧密拟合估计

Posted

技术标签:

【中文标题】Firebase 视觉人脸检测使用启发式算法 (MLK​​it) 获得人脸的紧密拟合估计【英文标题】:Firebase vision Face detection get tight fit estimation of the face using heuristics (MLKit) 【发布时间】:2020-10-01 23:47:11 【问题描述】:

开启setContourMode(FirebaseVisionFaceDetectorOptions.ALL_CONTOURS) 面部检测器会显着减慢速度。我想知道我们是否可以仅使用边界框和初始面部轮廓来进行紧密拟合的面部估计。假设在应用程序开始时,我们在 android 上将人脸轮廓作为路径对象,然后在应用程序期间,我们只进行快速人脸检测并使用启发式方法使用以下输入转换初始路径

    当前边界框 getHeadEulerAngleY() getHeadEulerAngleZ()

见下图。矩形是包围盒,椭圆是包围盒转换成椭圆,红色曲线是检测器给出的人脸轮廓。 问题是我们能否使用上述输入转换左图的人脸路径。这不一定是 100% 正确的,仔细估计就足够了,这样我就不必牺牲性能了。我不能使用边界框,因为从图像中可以看出,它不太适合脸部。

【问题讨论】:

【参考方案1】:

如果您只想获得紧凑的面部轮廓,您可以启用轮廓,但禁用所有其他功能,例如地标和分类。还将模式设置为 FAST。它应该给你合理的性能。

FaceDetectorOptions options = new FaceDetectorOptions.Builder()
    .setContourMode(FaceDetectorOptions.CONTOUR_MODE_ALL)
    .build());

【讨论】:

以上是关于Firebase 视觉人脸检测使用启发式算法 (MLK​​it) 获得人脸的紧密拟合估计的主要内容,如果未能解决你的问题,请参考以下文章

使用matlab机器视觉工具箱实现人脸特征的检测和定位,识别并标注眉毛,眼睛,鼻子,嘴巴

人脸识别openCV视觉工作室理解

转《trackingjs人脸检测》

一文入门 3D 视觉算法基础

计算机视觉项目-人脸识别与检测

OpenCV vs Dlib 人脸检测比较分析