引言0.2 人脸识别系统的概念

  在我们谈及人脸识别的系统的时候,实际上应该先讨论一下什么是系统。如同我们在前面一节说的那样,这些知识我们在后续再补充。我们这里先提出系统的几个特点,作为本文的基础。

  系统是这样一个东西,它有一个输入,有一个输出,在输入和输出之间,有一个转换的方法,我们把这个方法称为系统函数。这里所说的一个输入,可能是一系列的输入;一个输出,也可能是一系列的输出。输入和输出是针对于系统的边界而言。比如我们把一个人看成是一个系统,那么,他说的话是一个输出,他听到的话是一个输入。显然,关于人的说话系统,其输出是和输入有相互关系的。如果我们把人的说话器官(如嘴巴、声带、咽喉等器官的组合)看成一个系统,那么它的输出就是发出的声音了,而输入则变成了神经中枢传递给它的指令。这些指令传递给肌肉,然后肌肉接受指令后进行相应活动,最后形成发声。显然,如果我们能够解决人的说话系统的系统函数,那么我们就可以模拟一些场景;我们简单分析一下会发现,这个说话系统中有一部分似乎并不属于这个系统,但是又控制着这个系统的本身,那就是神经系统。也就是说,神经系统必须成为说话系统的一部分,我们才能够来研究说话系统。而本质上说话系统的核心,恰恰是神经系统。

  那么人脸识别系统又是怎样的一个系统呢?我们说,人脸识别系统有很多种,并不能单纯用一个系统来说明。面对不同的应用,我们会有不同的人脸识别系统。最常见的人脸识别系统有2种。1)用于认证的人脸识别系统,这里简称认证系统;2)用于辨识的人脸识别系统,这里简称辨识系统。

  认证系统的输入是两个人脸集合的信息,比如我们给宋兵甲拍了一张照片A放在认证系统里面,然后来了一个宋兵,我们问,这个人是不是宋兵甲,那就给这个宋兵又拍一张照片B,把A和B作为认证系统的输入。我们的认证系统会给出结论:a)这个宋兵是宋兵甲,b)这个宋兵和宋兵甲有点像但又不是很像,c)这个宋兵肯定不是宋兵甲。那么给出的abc到底哪一种结论就是我们的认证系统的输出。在不同的应用里面,输入的所谓"照片A"可能还不止一张照片,有可能是一段视频,也有可能是正面侧面很多张照片,还有可能是一个三维的3D图。当然,另一个输入"照片B"也有上述可能。而输出的可能仅仅是照片A和照片B的相似度。

  辨识系统的输入是一组人脸集合的信息S和一个人脸信息B。比如我们给所有宋兵都拍了照片A1-An,那么这些A1-An组成的集合我们称为S,当一个"宋兵"来了之后,我们问,这个"宋兵"在不在我们登记注册的宋兵里面,这个"宋兵"到底是谁?辨识系统会给出结论,a)这个宋兵就是我们登记过的宋兵甲,b)我们不确定这个宋兵是谁,但是和这个宋兵很像的人有这么几个B1-Bm,c)这个宋兵根本就是冒充的。

  因此,认证系统是1vs1的人脸识别系统,而辨识系统是1vsN的人脸识别系统。这两种系统都有着广泛的应用。如认证系统可以用在门禁、考勤、出入口控制(如奥运电子门票)、人脸签名以及一切需要确认身份的应用中;而辨识系统可以用在嫌疑人搜索、图像检索、重复的图像分拣、数据归并以及一切需要对一定数量的人脸进行批量遴选的应用中。下面我们探讨一下这两个系统的描述。

  显然,认证系统需要考察的是AvsB的问题。那么就有2种情况,1)A是B,2)A不是B。如果A是B,而我们的认证系统认为A和B之间的相似度达不到某个阀值而认为A不是B,我们称为漏识率,也叫错误拒绝率,英文称为FALSE REJECT RATE,简称FRR。如果A不是B,而我们的认证系统认为AB相似度超过该阀值,我们称为误识率,也叫错误接受率,英文称为FALSE ACCEPT RATE,简称FAR。这里阀值是指某一个特定的值,如果我们认为两张图片的相似度达到或超过这个阀值,就认为认证系统判断这两张图片对应的是同一个人。阀值的选取是一种学问。而显然,不同的阀值会带来不同的FAR和FRR。我们通常称的识别率,是指正确接受率,也就是1-FRR。任何一个系统脱离了FAR来讨论FRR是没有意义的。因此如果我们看到某个认证系统宣称其识别率有多高而绝口不提FAR的话,那肯定是不完善的数据。我们通常会说,一个认证系统在FAR为0.001的时候其FRR是多少,也就是在千分之一误识率的情况下其漏识率能低到什么程度。相应地有关于1-FRR和1-FAR之间的关系。我们关注一个认证系统的优劣,在识别率方面,最好的参考是一条FRR-FAR的曲线。

  图1图2

  比如上面两张图是从FRVT2006的报告中摘出来的,图1描述在在FAR=0.001的条件下从93年到06年的FRR的变化。而图2的横坐标是FAR,纵坐标是FRR,描述了各个厂家的FAR-FRR曲线。这两张图的清晰版本在我的相册里面可以找到。

  我们再来考虑辨识系统对应的1vsN的问题。显然辨识系统需要考虑的问题更加多一些。首先这个N是多大是一个问题。在国外的系统中,因为种种原因,往往很难采集到一个足够大的N,而我国目前为止建成的最大的N大约是1000万左右。不同的N,对应的结果是不一样的。通常有一个说法,就是每6万人当中可以找出2个人长得非常相似。也就是说,6万人是一个坎。如果系统的N超过6万,就会有一些意想不到的结果。显然,如果N等于1,那么,我们的辨识系统中无论输入什么图像,目标图像都会排在第一位。如果N等于10,分别对应a1-a10这么10个人,如果输入一张照片B,那么对应的a-B的相似度会有一个排序,排在第一位的ak如果恰好是B,那么我们称这个人在第一名命中了。如果N=1000,我们考察辨识系统,如果能在第一名被命中,我们可能会觉得满意。如果是6万呢,那么第一名被命中的概率就很低了。由于N的不同会对前多少名被命中的几率产生影响,我们有时候也会考虑用前1%,1‰,万分之一,十万分之一的命中率来衡量辨识系统的准确率。但在实用的系统中,前1‰的命中未必管用,比如N为1000万的时候,前1‰的命中相当于B图像出现在前一万名,这是难以接受的。因此,我们权衡这个辨识系统的效果问题,通常采用两种机制。一个是前K名的命中率,一个是前k%的命中率。前者需要确认N的大小,后者不需要确认N的大小。

  前面讲到的人脸识别系统的效果,实际上还和这N张图片和图片B的质量有关系,有关图像的质量问题,我们后面会深入探讨。这里指出,不同的测试环境,不同的图片质量,不同的图片来源等等都会对人脸识别系统的效果产生巨大的影响。

  另外,就像我们前面讲到的人的说话系统,其核心是人的神经系统,而人脸识别系统的核心就是其人脸识别的核心算法。我们可以想象,如果一个人听到对方的声音断断续续,或者他自己本身口齿不清,在某些程度上也会影响人的说话系统的表现,也就是说,在核心的神经系统之外,还会有一些对输入的影响因素会导致这个系统本身的效果。类似地,人脸识别系统的效果,在某些程度上会受到输入图片和已有图片的质量有很大关系。因此,我们把人脸识别系统的系统中枢分成2部分,一部分是核心识别算法(神经系统),一部分是预处理算法(通过该算法来改善或使图片具有某些一致的特性)。

  下一个话题是图像的质量。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值