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

由调查机构发布的《中国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(人脸图像质量检测算法)

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

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

AI大厂算法测试心得:人脸识别关键指标有哪些?的更多相关文章

  1. MP算法、OMP算法及其在人脸识别的应用

    主要内容: 1.MP算法 2.OMP算法 3.OMP算法的matlab实现 4.OMP在压缩感知和人脸识别的应用 一.MP(Matching Pursuits)与OMP(Orthogonal Matc ...

  2. 简述Apache的ab测试主要有那些关键指标

    一.ab的原理 ab是apachebench命令的缩写. ab的原理:ab命令会创建多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问.它的测试目标是基于URL的,因此,它既可以用来测试ap ...

  3. OpenCV人脸识别LBPH算法源码分析

    1 背景及理论基础 人脸识别是指将一个需要识别的人脸和人脸库中的某个人脸对应起来(类似于指纹识别),目的是完成识别功能,该术语需要和人脸检测进行区分,人脸检测是在一张图片中把人脸定位出来,完成的是搜寻 ...

  4. 基于机器学习人脸识别face recognition具体的算法和原理

    引自:http://blog.csdn.net/eclipsesy/article/details/78388468?utm_source=debugrun&utm_medium=referr ...

  5. 【第1篇】人工智能(AI)语音测试原理和实践---宣传

    ​前言 本文主要介绍作者关于人工智能(AI)语音测试的各方面知识点和实战技术. 本书共分为9章,第1.2章详细介绍人工智能(AI)语音测试各种知识点和人工智能(AI)语音交互原理:第3.4章介绍人工智 ...

  6. 基于node.js人脸识别之人脸对比

    基于node.js人脸识别之人脸对比 Node.js简介 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境. Node.js 使用了一个事件驱动.非阻塞式 I/O ...

  7. AI人脸识别的测试重点

    最常见的 AI应用就是人脸识别,因此这篇文章从人脸识别的架构和核心上,来讲讲测试的重点. 测试之前需要先了解人脸识别的整个流程,红色标识代表的是对应AI架构中的各个阶段 首先是人脸采集. 安装拍照摄像 ...

  8. 【AI图像识别一】人脸识别测试探索

    ****************************************************************************** 本文主要介绍AI能力平台的人脸识别技术的测 ...

  9. AI人脸识别SDK接入 — 参数优化篇(虹软)

    引言 使用了虹软公司免费的人脸识别算法,感觉还是很不错的,当然,如果是初次接触的话会对一些接口的参数有些疑问的.这里分享一下我对一些参数的验证结果(这里以windows版本为例,linux.andro ...

随机推荐

  1. Oracle数据库中,误删除或者修改数据恢复方法

    在我们实际工作中,误删除或者修改Oracle数据库中的数据,怎么办呢?这里给大家分享一种解决办法.假如你误操作的时间不超过30分钟(数据库默认的回滚保持段里的数据时间,可以在pl/sql执行窗口按ct ...

  2. 打开指定大小的新窗口和window.open参数

    用法: <SCRIPT LANGUAGE="javascript">   window.open ('要打开的路径', '窗口名称', '参数列表');</SCR ...

  3. 【vue】---- ElementUI 实现上传Excel

    1.功能描述:vue 项目使用 el-upload 实现上传 Excel. 2.功能效果:在el-upload基础上做了样式整改. 3.功能实现: // el-upload 上传组件 <temp ...

  4. 如何配置-整合ssm框架之配置文件

    ssm整合 一.applicationContext.xml 1.配置数据源 <bean id="dataSource" class="org.springfram ...

  5. 使用MWeb进行博客发布测试

    MWeb 是专业的 Markdown 写作.记笔记.静态博客生成软件,目前已支持 Mac,iPad 和 iPhone.MWeb 有以下特色: 软件本身: 使用原生的 macOS 技术打造,追求与系统的 ...

  6. 看球的巴士——线性dp

    [题目描述] 两个球队的支持者要一起坐车去看球,他们已经排成了一列.我们要让他们分乘若干辆巴士,同一辆巴士上的人必须在队伍中是连续的.为了在车上不起冲突,希望两队的支持者人数尽量相等,差至多是D.有一 ...

  7. TJOI2013 奖学金—大根堆实现(洛谷P3963)

    奖学金 题目描述 小张学院有 \(c\) 名学生,第 \(i\) 名学生的成绩为 \(ai\) ​,要获得的奖学金金额为 \(bi\) . 要从这 \(c\) 名学生中挑出 \(n\) 名学生发奖学金 ...

  8. XHXJ's LIS,还是dp

    题目: background: #define xhxj (Xin Hang senior sister(学姐)) If you do not know xhxj, then carefully re ...

  9. 数据分析04 /基于pandas的DateFrame进行股票分析、双均线策略制定

    数据分析04 /基于pandas的DateFrame进行股票分析.双均线策略制定 目录 数据分析04 /基于pandas的DateFrame进行股票分析.双均线策略制定 需求1:对茅台股票分析 需求2 ...

  10. python 装饰器(七):装饰器实例(四)类装饰器装饰类以及类方法

    类装饰器装饰类方法 不带参数 from functools import wraps import types class CatchException: def __init__(self,orig ...