zoukankan      html  css  js  c++  java
  • AI大厂算法测试心得:人脸识别关键指标有哪些?

    仅仅在几年前,程序员要开发一款人脸识别应用,就必须精通算法的编写。但现在,随着成熟算法的对外开放,越来越多开发者只需专注于开发垂直行业的产品即可。

    由调查机构发布的《中国AI产业地图研究》中也有一组有趣的数据,目前中国的AI企业中,有近8成集中在应用层,其中AI行业解决方案占比高达40.7%,从上下班的人脸识别考勤,到金融App的人脸身份核验,再到医院和政务大厅的人脸识别取号,以及车站的人脸核验检票……

    目前市面上既有OpenCV等开源算法库,很多芯片厂商的产品也自带简单算法,同时专业算法大厂也会开放相关技术,如提供免费、离线人脸识别SDK的虹软视觉开放平台等。对于开发者而言,面对多种算法,如何进一步了解算法性能至关重要。因此,本文将从算法原理、应用场景、关键指标一一进行介绍。

    人脸识别算法原理简述

    在介绍关键性能指标之前,我们需要厘清人脸识别的技术原理。

    所谓人脸识别(Face Recognition),是对图像中的人脸进行检测、识别和跟踪。当前的人脸识别,通常是利用卷积神经网络(CNN)对海量的人脸图片进行学习,然后对输入图像提取出对应的人脸特征值。

    人脸特征值是面部特征所组成的信息集。人类记忆和辨别一张脸,主要是靠肉眼可见的特征,譬如国字脸、双眼皮、黑眼睛、蓝色头发、塌鼻梁……但人工智能不同,主要是利用卷积神经网络(CNN)对海量的人脸图片进行学习。它们能够抽象出人类难以理解的面部特征,因而在识别能力上超越人类。

    人脸特征值是一组空间向量,也是人脸比对的依据。同一张脸不同照片提取出的特征值,在特征空间里距离很近,不同人的脸在特征空间里相距较远。换言之,距离近的就有更大可能是同一个人。

    另外需要注意,人脸识别和人脸检测并非同一技术。人脸检测是人脸识别完整流程中的一个环节。在用摄像头采集含有人脸的图像或视频流后,首先就需要用人脸检测技术自动检测、提取当中的人脸,随后才能进入人脸图像预处理及最核心的人脸特征提取环节。

    在实际商业落地中,人脸检测也可独立于人脸识别进行使用,典型应用如近期在海内外大热的AI测温机,只在检测到人脸时激活测温模块,从而降低产品长期运行的损耗与能耗,该过程就无需对人脸进行识别。

    【了解这些指标,你也能评价算法】

    在理想状态下,人脸识别准确率越高越好,但算法在产品化时会受到逆光、暗光、强光、识别角度等诸多实际因素的影响。因此,脱离使用场景单独考量算法的识别准确率参考价值不大。

    那么我们又该如何合理且有效的判断一款算法呢?业内知名免费算法平台——虹软视觉开放平台推出的《从零学习人脸识别》系列技术公开课中,对算法测试的关键指标进行了详细介绍。感兴趣的开发者朋友可以点击以下链接,进一步详细了解。

    《从零学习人脸识别:人脸识别算法介绍》
    https://ai.arcsoft.com.cn/course/video-26.html

    《从零学习人脸识别:人脸检测算法介绍》
    https://ai.arcsoft.com.cn/course/video-25.html

    人脸识别关键指标:

    多数情况下,我们以基于FAR(错误接受率,又称误识率,即把某人误识为其他人的概率)和FRR(错误拒绝率率,即本人注册在底库中,但比对相似度达到不预定的值)的DET曲线作为评判参考。

    (1)错误拒绝率(FAR)

    相似度值范围内等分为若干档,得到若干个不同的阈值 S,计算不同阈值 S 的 FRR 如下:FRR(S) = 同人比对相似度中低于阈值S的数量 / 同一人比对总数 × 100%;

    (2)错误接受率(FRR)

    相似度值范围内等分为若干档,得到若干个不同的阈值 S,计算不同阈值 S 的 FAR 如下:FAR(S) = 非同人比对相似度中不低于阈值S的数量 / 非同人比对总数 ×100%;

    理想状况下,FAR和FRR都越低越好,但两个指标是一个跷跷板,一个指标的降低通常意味着另一个指标会升高,所以需要实现两者间的平衡。一般认为在FAR达到市场正常水准时,FRR越低,该人脸识别算法性能就越好。

    目前,市场上大部分场景会根据自身安全性要求,制定不同标准。比如在门禁场景下,要求FAR低于十万分之一,此时FRR越低,算法效果越好。以下图为例,算法1效果就好于算法2。

    人脸检测关键指标:

    评价一款人脸检测算法,也有检测率、误报率、FPS、IOU四个指标。

    一般情况下,我们同样希望检测率越高越好,误报率越低越完美,但这两者需要一个最优的平衡,我们可以用ROC曲线解决这一问题。

    (1)True Positive:检测出来确实是人脸,但实际上仍然是人脸的

    (2)False Positive:检测出来是人脸,但实际上是背景的

    (3)False Negative:检测出来是背景,但实际上是人脸的

    (4)True Negatives:检测出来是背景,实际上就是背景的

    除了算法模型本身,我们也还可以从工程和应用等角度提升整体人脸识别效果。

    应用角度:研发质量模型,对检测到的人脸质量进行评价,质量较差则不识别,如虹软视觉开放平台的FQ(人脸图像质量检测算法)

    工程角度:施加场景限制,比如刷脸解锁,人脸闸机,会场签到时,都要求用户在良好的光照条件下正对摄像头,以避免采集到质量差的图片。

    相关产品在虹软人脸识别开放平台了解喔

  • 相关阅读:
    Do You See Me? Ethical Considerations of the Homeless
    ELDER HOMELESSNESS WHY IS THIS AN ISSUE?
    Endoflife support is lacking for homeless people
    html内联框架
    html字体
    html块 div span
    html列表
    html表格
    SQL Server管理员专用连接的使用   作为一名DBA,经常会处理一些比较棘手的服务无响应问题,鉴于事态的严重性,多数DBA可能直接用“重启”大法,以便尽快的恢复生产环境的正常运转,但是多数情况
    如何配置最大工作线程数 (SQL Server Management Studio)
  • 原文地址:https://www.cnblogs.com/ccLqqy/p/13389316.html
Copyright © 2011-2022 走看看