人脸检测

利用机器学习套件的人脸检测 API,您可以检测图片中的人脸,识别主要的面部特征,并获得检测到的人脸的轮廓。

通过人脸检测,您可以获得执行某些任务(如美化自拍照片和肖像或者根据用户的照片生成头像)所需的信息。 由于机器学习套件可以实时执行人脸检测,因此您可以在视频聊天或响应玩家面部表情的游戏等应用中使用该功能。

iOS Android

如果您是 Flutter 开发者,那么您可能会对 FlutterFire 感兴趣,它包含一个适用于 Firebase 的 ML Vision API 的插件。

主要功能

识别并定位面部特征 获得检测到的每个人脸的眼睛、耳朵、脸颊、鼻子和嘴巴的坐标。
获得面部特征的轮廓 获得检测到的人脸及其眼睛、眉毛、嘴唇和鼻子的轮廓。
识别面部表情 判断某人是在微笑还是紧闭双眼。
跨视频帧跟踪人脸 为检测到的每个人脸获得一个标识符。 此标识符在各个调用之间保持一致,因此您可以对视频串流中的特定人员执行图片处理等操作。
实时处理视频帧 人脸检测在设备上执行,其速度足够快,可用于视频处理等实时应用。

示例结果

示例 1

对于检测到的每个人脸:

人脸 1(共 3 个)
边界多边形 (884.880004882812, 149.546676635742)、(1030.77197265625, 149.546676635742)、(1030.77197265625, 329.660278320312)、(884.880004882812, 329.660278320312)
旋转角度 Y:-14.054030418395996,Z:-55.007488250732422
跟踪 ID 2
面部特征点
左眼 (945.869323730469, 211.867126464844)
右眼 (971.579467773438, 247.257247924805)
嘴巴下部 (907.756591796875, 259.714477539062)

等等

特征概率
微笑 0.88979166746139526
左眼睁开 0.98635888937860727
右眼睁开 0.99258323386311531

示例 2(人脸轮廓检测)

启用人脸轮廓检测后,对于检测到的每个面部特征,您还会获得一系列点。这些点表示特征的形状。下图展示了这些点与人脸的对应情况(点击图片可放大):

面部特征轮廓
鼻梁 (505.149811, 221.201797)、(506.987122, 313.285919)
左眼 (404.642029, 232.854431)、(408.527283, 231.366623)、(413.565796, 229.427856)、(421.378296, 226.967682)、(432.598755, 225.434143)、(442.953064, 226.089508)、(453.899811, 228.594818)、(461.516418, 232.650467)、(465.069580, 235.600845)、(462.170410, 236.316147)、(456.233643, 236.891602)、(446.363922, 237.966888)、(435.698914, 238.149323)、(424.320740, 237.235168)、(416.037720, 236.012115)、(409.983459, 234.870300)
上唇顶部 (421.662048, 354.520813)、(428.103882, 349.694061)、(440.847595, 348.048737)、(456.549988, 346.295532)、(480.526489, 346.089294)、(503.375702, 349.470459)、(525.624634, 347.352783)、(547.371155, 349.091980)、(560.082031, 351.693268)、(570.226685, 354.210175)、(575.305420, 359.257751)
(等等)