人脸干货盘点,人脸识别技术背后的那些常见误区

作为人工智能领域少有的算法研究和商业应用都相当成熟的技术 , 人脸识别近几年火热异常 。 但由于其技术门槛较高 , 一些新入门的开发者往往对人脸识别存在很多认知误区 , 如简单地认为识别率越高 , 算法越好;可检测的关键点越多 , 识别比对效果越出色……接下来笔者就以自身使用虹软视觉开放平台免费离线SDK ArcFace3.0做开发的经历来为大家讲讲 , 要如何避开这些误区 。
这里先简单介绍一下ArcFace3.0 , 该SDK对人脸识别、活体检测、年龄检测、性别检测等核心算法模型进行了全面升级 , 其算法鲁棒性大幅提升 , 接入门槛显著降低 , 可同时支持Windows、iOS、Android(包含Android10)、Linux , 性能与开发效率也有了整体提升 , 同样秉承了开放平台免费、离线的核心 , 进而成为了广大开发者落地AI应用的利器 。
人脸干货盘点,人脸识别技术背后的那些常见误区
图片

常见误区一:“人脸检测”就是“人脸识别”?
事实上 , “人脸检测”只是人脸识别完整流程中的一个环节 。 在用摄像头采集含有人脸的图像或视频流后 , 首先就需要用人脸检测技术自动检测、提取当中的人脸 , 随后才能进入人脸图像预处理及最核心的人脸特征提取环节 。
但在实际商业化落地中 , 人脸检测也可独立于人脸识别进行使用 。 譬如泸州云龙机场就布置了智能零售服务机器人 , 可以通过人脸检测功能自动寻找顾客并提供服务 。 其智能零售服务机器人就是采用了虹软视觉开放平台的人脸识别算法 。
虹软推出的ArcFace3.0 SDK囊括了人脸检测、性别检测、年龄检测等技术 , 结合使用可应用于商业迎宾机器人、自动广告机等产品 。
常见误区二:人脸识别的准确率越高越好吗?
理想状态下 , “人脸识别准确率”当然越高越好 , 但算法在产品化使用时会受到逆光、暗光、强光、识别角度等诸多因素的影响 。 相同算法 , 在实验室环境中与不同的实际应用环境中 , 所表现出的识别准确率都存在一定差异 。 因此 , 脱离使用场景单纯考量算法的识别准确率参考价值不大 。
业界更多会采用“认假率(FAR , 又称误识率 , 把某人误识为其他人)”和“拒真率(FRR拒真率 , 本人注册在底库中 , 但比对相似度达到不预定的值)” , 来作为评判算法的依据 。 另外还有识别速度、活体攻击成功率、人脸检测成功率等维度 , 也可作为评判算法优劣的参考依据 。
尽管FAR和FRR都越低越好 , 但两个指标是一个跷跷板 , 一个指标的降低会意味着另一个指标会升高 , 所以需要实现两者间的平衡 。
人脸识别算法一般会设定一个阈值作为评判通过与否的标准 , 该阈值一般是用分数或者百分比来衡量 。 当人脸比对的相似度值大于此阈值时 , 则比对通过 , 否则比对失败 。 每个阈值都可以统计对应的FAR\FRR , 不同阈值的FAR\FRR值可绘成ROC曲线(Receiver Operating Curve) , 我们可以通过ROC曲线选定一个合理的阈值点 。
人脸干货盘点,人脸识别技术背后的那些常见误区
图片

常见误区三:人脸关键点越多 , 人脸比对效果越好?
人脸关键点技术在人脸识别的一系列环节中 , 确实有所应用 。 但它并不是使用在最核心的人脸比对中 , 而是在前置的人脸图像预处理环节中 。 因此 , 确保人脸五官基础关键点数量及准确性即可 , 无需一味追求过多关键点的数量 。
当前主流的人脸识别算法 , 在进行最核心的人脸比对时 , 主要依靠人脸特征值的比对 。 所谓特征值 , 即面部特征所组成的信息集 。 我们辨别一个人的特征 , 可能会记住他是双眼皮、黑眼睛、蓝色头发、塌鼻梁……但人工智能算法可以辨别和记住的面部特征会比肉眼所能观察到的多很多 。
人脸识别算法通过深度学习 , 利用卷积神经网络对海量人脸图片进行学习 , 借助输入图像 , 提取出对区分不同人脸的特征向量 , 以替代人工设计的特征 。 每张人脸在算法中都有一组对应的特征值 , 这也是进行人脸比对的依据 。 同一人的不同照片提取出的特征值 , 在特征空间里距离很近 , 不同人的脸在特征空间里相距较远 。


推荐阅读