第1章 人脸识别概论
1.1 历史背景
自20世纪70年代以来,随着人工智能技术的兴起以及人类视觉研究的进展,人们逐渐对人脸图像的机器识别投入越来越多的热情,并形成了一个人脸识别研究领域。对这一领域的研究除了具有重大理论价值外,也极具实用价值。
人工智能研究的目标就是让机器具有像人类一样的思考能力以及识别事物、处理事物的能力,并从解剖学、心理学、行为感知学等各个角度来探求人类的思维机制以及感知事物、处理事物的机制,并努力将这些机制用于实践,如各种智能机器人的研制。人脸图像的机器识别研究就是在这种背景下兴起的,因为人们发现许多对于人类而言可以轻易做到的事情让机器来实现却很难,如人脸图像的识别、语音识别、自然语言理解等。如果能够开发出像人类一样的机器识别机制,就能够逐步地了解人类是如何存储信息并进行处理的,从而最终了解人类的思维机制。
人脸识别是模式识别和计算机视觉的交叉领域。人脸识别将计算机视觉和模式识别结合在一起,广泛地应用在机器人学等学科中。作为人类几个重要的外在鉴别特征之一,如同人的指纹一样,人脸也具有唯一性,也可用来鉴别一个人的身份。人脸识别对自动鉴别和人类自动分辨有重要的意义,在生物特征鉴别方面有其独特的优势。人脸识别研究也具有很大的实用价值。
作为人类特征识别的一种,人脸识别和其他人类特征识别相比,具有自然性和不被被测个体察觉的特点,这也是其优点。自然性指该识别方式同人类(甚至其他生物)进行个体识别时所利用的生物特征相同。在样本获取方面,与指纹识别和虹膜识别相比,人脸识别有其独到的优势。指纹和虹膜的获取都要求待识别对象与成像设备的空间距离较近,而人脸识别样本的获取突破了这一限制,在一般可视情况下,人脸图像均能够正常被捕捉用来识别,这决定了人脸识别比指纹、虹膜识别有更广的应用范围,诸如远程安全、检疫、图像传送等。自20世纪90年代起,Internet的蓬勃发展对于网络安全和鉴别的需求也导致了人脸识别具有更广泛的应用领域。但是人脸识别也存在识别困难。指纹识别和虹膜识别的取样样本都具有唯一性,对于任意两个样本,指纹或虹膜样本不会是完全相同的;另外指纹和虹膜的成像不会因为在不同时刻有差别而得到不同结果,这就决定了待识别图像和样本本身一样具有唯一性。而人脸图像受成像角度、光照条件等外界因素的影响比较大,即使相同的人脸图像成像后也可能有较大的差别;另外不同的人脸在一定角度下,有时也有较大相似度,这两个因素导致了人脸识别复杂性比较高、识别难度比较大,带来了人脸识别的困难。
现在已有实用的计算机自动指纹识别系统面世,并在安检等部门得到应用,但还没有通用成熟的人脸自动识别系统出现。人脸图像取样方便,可以不接触目标就进行取样、识别,人脸图像的自动识别系统较之指纹识别系统、DNA鉴定等更具便利性,因此人脸识别研究的实际意义更大。并且与指纹图像不同的是,人脸图像受很多因素的干扰:人脸表情的多样性以及外在的成像过程中的光照、图像尺寸、旋转、姿势变化等。即使同一个人,在不同的环境下拍摄所得到的人脸图像也不相同,甚至有时有很大的差别,这给识别带来很大难度。人脸图像识别的干扰条件很多,因此实现人脸图像的识别也就更具挑战性。
人脸识别研究最早开始于20世纪50年代,当时的研究主要基于人脸的外部轮廓方法。由于人脸轮廓的提取比较困难,在随后的十多年人脸识别的研究相对停滞;直到20世纪80年代后期人脸识别方法有了新的突破,引入了神经生理学、脑神经学、视觉知识等,人脸识别的研究才重新活跃起来。国外对于人脸识别的研究较早,现已有实用系统面世,但这些实用系统通常对于成像条件要求较苛刻,其应用范围较窄。国内也有许多科研机构从事这方面的研究,并已取得许多成果,现在已有产品上市。
1.2 人脸识别相关学科的进展
过去的30多年来,人们试图从神经生理学、神经病理学、心理学、脑神经学以及计算视觉的角度对人脸的识别进行研究,并都取得了不同程度的进展,同时也促进了相应学科的发展。计算机技术的迅猛发展以及计算成本的迅速下降使得以前比较费时费空间的一些模式匹配算法,如大样本的引入、多维特征参数的提取、建模等,又重新引起人们的重视。
1.2.1 神经生理学方面的进展
神经生理学在这方面的研究对象主要是那些患视觉认知不能的病人,他们虽然都是视力正常的人,但对于所看见的物体,他们往往不能意识到物体是什么。例如,有的病人能够认出一个个的字符,但却无法说出每个字符所表达的意思[1];同样,有的病人也能够认出一张张的人脸以及人脸上的特征,如鼻子、眼睛、嘴等,但却无法将每张人脸与具体的人联系起来[2]。这说明,这些病人的感知事物的能力是存在的,但识别事物的能力却很差。为了解释这种现象,19世纪德国神经学家Heinrich Lissauer[3]假设人类的认知现象由两个部分组成,一个是感知部分,另一个是联想部分,且两部分缺一不可。感知部分接受外界的视觉刺激,并形成一种内部表示;而联想部分根据这种内部表示,在相应的存储区域进行搜索,以期得到对应的表示,并做出反应。
根据这个假设,可以认为那些视觉认知不能的病人虽然能够感受外界的视觉刺激,却可能不能形成相应的视觉表示,从而不能识别事物;或者有的病人也能够形成视觉表示,却无法在存储区域内找到相应的视觉表示,从而也造成视觉不能。同时这个假设对于了解人类视觉的形成以及识别事物的能力也有一定帮助。上面所述的视觉感知部分相当于目标的提取或特征的提取;而关联部分相当于目标的识别,通过各种识别技术将待识目标与库中的对象进行比较,以完成分类、识别等任务。
1.2.2 脑神经学方面的进展
英国St. Andrews大学的心理学教授Perrett等人[4]在研究中发现,人脑右半球的某些区域受到损害后,可能会影响其对于人脸的识别,因此,他们认为人脑中可能存在专门执行脸部识别的细胞,并称之为脸部细胞。其他一些研究者[5, 6]在用于实验的恒河猴的下脑皮层中,也发现了具有类似视觉行为的细胞,并由此推断,在下脑皮层中有专门用于分析人脸的机制。
对于这种现象,一种解释认为不存在专门的脸部细胞,否则,也有可能存在类似的其他细胞,这样的话,大脑中将充满许多专门的细胞,显然这与事实不符;另外一种解释认为不存在所谓的脸部细胞,而存在由某些细胞组成的视觉区域,用于解释外界的视觉刺激,而不单用于脸部的识别。
1.2.3 计算机视觉方面的进展
20世纪40年代计算机的出现改变了传统的计算方法,实现了计算自动化。随着计算机能力的增强,计算技术不断向各个领域渗透,从传统的计算领域到各种工程以及生活中。过去人们强调的是计算机的计算能力,随着计算能力的增强和人工智能研究的深入,人们对计算机与人类的交互能力提出了更高的要求:使用计算机来直观描述客观世界物体,而不是采用过去模型化的抽象表示形式。计算机视觉是人工智能研究的一个分支,是人工智能的目标之一:计算机视觉研究的目标是使计算机能够处理传感器输入的现实信号。
人脸识别系统需要对图像进行处理,图像处理是与计算机视觉紧密相关的,因此人脸识别研究需要对计算机视觉有深入理解,这里首先讨论计算机视觉中的一些基本问题[7]:
· 如何区分光的亮度及强度的不同?
· 眼睛的空间分辨率是什么样的?
· 如何精确地比较和估计面积和距离?
· 如何感知色彩?
· 检测和区分物体时利用的是什么特征?
上面的基本问题是人类视觉系统的一些主要问题。加拿大McGill大学智能机器中心的Levine教授[8]比较了人类视觉系统和计算机视觉系统。计算机视觉的发展不仅与计算机科学中图形学等方向有很大联系,它还与心理学、解剖学、机器人学等领域有较密切的联系。计算机视觉研究关心的最基本的问题是,采用物理学和光学的基本假设,如何从一幅图像中提取出物体的信息和采用什么数学模型来建立客观世界,这决定了计算机视觉需要使用认知处理、几何模型、目标和规划方面的知识。
在人脸识别中,有许多问题同样与视觉系统有关,比如如何从图像的描述中抽象出实际的物体块,并根据人脸图像的特点区分出人脸属性,这些都是人脸图像系统识别讨论的问题。
本节将介绍计算机视觉理论、Marr视觉理论、基于推理的视觉理论,使读者从不同角度理解计算机视觉。
1.计算机视觉理论
计算机视觉就是用各种成像系统代替视觉器官作为视觉信息输入手段,由计算机来代替大脑完成处理和解释,并根据解释结果作出相应的决策。计算机视觉的最终研究目标就是使计算机能像人那样通过对视觉信息的处理来观察和理解世界,具有自主适应环境的能力[9]。
人类的视觉系统是功能最强大和完善的视觉系统,但人们并不能描述和解释自身的视觉系统是如何进行信息处理的,通过对计算机视觉的研究、模拟,人们有可能逐步地揭开人类视觉的信息处理机制,从而了解人类的思维机制、推理机制等。因此,用计算机信息处理的方法研究人类视觉的机理,建立人类视觉的计算理论,也是一个非常重要和有趣的研究领域。同样地,通过其他途径(如神经解剖学、心理学等方面)对人类视觉的研究,也会给计算机视觉的研究提供启发和指导,两者有相互促进作用[10, 11]。
除了神经解剖学、心理学,对计算机视觉的研究还要借助其他学科的知识,如图像处理、模式识别(图像识别)、图像理解(景物分析)、图像生成等。
(1)图像处理
图像处理技术把输入图像转换成具有所希望特性的另一幅图像。例如,可通过处理使输出的图像平滑或有较高的信噪比,同时还可通过增强处理来突出图像的细节,以便于对图像特征的检验。在计算机视觉研究中经常需要利用图像处理技术进行预处理和特征抽取,如各种数学变换技术等。
(2)模式识别(图像识别)
模式识别技术根据从图像抽取的统计特性或结构信息,把图像分成预定的类别,如人脸识别、文字识别或指纹识别等。在计算机视觉中模式识别技术经常用于对图像中的某些部分进行处理,例如分割区域的识别和分类。
(3)图像理解(景物分析)
给定一幅图像,图像理解程序不仅描述图像本身,而且描述和解释图像所代表的景物,以便对图像代表的内容作出决定。在人工智能视觉研究的初期经常使用景物分析这个术语,以强调二维图像与三维景物之间的区别。图像理解除了需要复杂的图像处理技术外还需要关于景物成像的物理规律的知识以及与景物内容有关的知识。
(4)图像生成
根据图像的特性如对称性、纹理渐变性以及图像目标的动力学知识和其他的先验知识,可以生成一幅图像,或者当图像信息存在部分缺失时,能够将缺失的那一部分信息补上,从而得到完整的图像信息。例如,对于二维图像,通过图像生成技术能够得到其三维结构信息,这一点如应用在模式识别研究中,则能够大大地提高识别系统的健壮性。
视觉表示的能力分为高级和低级能力[12]。通常知识和目标只是视觉过程中的高级能力,视觉还需要许多被认为是低级能力的能力。能力的区分是由对概念的表现程度和表示程度决定的。比如,一个物体的“亮度”、“颜色”、“距离”、“长度”等图像特征属性都属于低级能力。例如一个物体的反光,如果采光是在复杂背景遇到黑色部分后反射出来的光线,物体也会被感知为黑色。当然感知的颜色不仅仅只和反射光的波长有关,因为看到的颜色并不会随光照度的变化而完全不同。这种形成立体合成是近距离三维感知的低级能力,还有对物体感知和从背景中分离都是视觉系统的低级能力。
前面的一些论述都采用了一个假设前提:视觉系统的基础是客观世界的一些基本假设必须是永远不变的,即视觉感知的效果是建立在非虚拟的基础上的。
低级能力和高级能力之间最明显的差别在于:低级处理能力是难以捉摸的、无意识的,并与其他直接内省的系统联系不紧密;高级能力是在低级处理能力基础上的综合反应,这一过程和人类本身智能紧密地结合在一起。例如,在记忆时,对于一个图像的视觉记忆印象是很深刻的,而对于图像定量的言语描述和细节反应则相对肤浅。生物学中对人类的记忆机制和视觉感官机制都不是非常清楚,因此计算机视觉研究也将在高级能力方面进行深入探讨。
在计算机视觉中面临的一个非常困难的问题是,必须用普通的数字式硬件来重新构造专门的、并行的和部分生物视觉系统所具有的、最基本的、但却难达到的能力。计算机视觉既涉及“前处理”的低级能力,又涉及知识的高级认知利用,二者密不可分。视觉终止于何处,对这个问题了解得并不清楚。但是对于任何先进的视觉系统,都需要对客观世界有一个强有力、协调一致而又富有成效的表示法。没有这些表示法,任何系统都不可能从输入中找出固定不变的有关信息,因为输入中含有不断变化的采光、视点以及形状的少许差别,噪声和其他较大的但无关的种种变异等信息。这些表示法通过对视觉世界的结构进行预测和设想可以免去某些计算工作。另一方面,如果一个系统要成功地用于各种不同的任务,则需要某些“元”能力:它必须对其本身的目标和能力以及所采用方法的结果进行模拟和推理,即使感知过程并不总是“感到”它与认知一样,然而这些复杂而相关联的模型仍必须用类似于认知方法来处理。
通过上面对计算机视觉能力的分层分析,结合计算机的表示特点进行探讨,采用数字化方法来描述视觉表示。视觉感知是视觉输入和已有客观世界模型间的关系,在图像与解释、描述和提取图像信息的模型间存在着表示方法上的很大距离,为了沟通它们,计算机视觉系统通常有一系列表示法,用于连接图像输入和输出(即最终描述、判决或解释)。计算机视觉包括这些中间表示法的设计和通过各种算法来构造它们,并把它们彼此联系起来。
一般这些表示法可以概括为4类:广义图像表示、分割图像表示、几何表示、关系表示。物体的每个部分可能有几层表示法或几个联合表示法,虽然表示法从前期的低级信号到后期的认知符合存在着不严格的次序,但它们之间的实际工作顺序和信息流并不是单方向的,当然并非每一个计算机视觉应用都需要所有级上的处理,有些级可以跳过,或者处理过程可能从某一级开始向上或向下进行到某一级就结束。
广义图像是输入数据的图像(图像型)和类比表示法,图像最初可能由几种不同方法产生,通过域无关处理可以产生对以后处理更直接有用的其他图像表示法,例如边缘元素(灰度)阵列。有时在这一级可以产生特征图像,这些图像揭示出被成像景物的物理特性(例如表面方向、距离或表面反射能力)。并行处理通常可以产生广义图像。更普遍地大多数“低级”处理可以用并行计算来实现。
分割图像是由广义图像通过将其元素聚集成可能与景物中有意义物体相联的集合而得到的。分割一个平面多面体景物可能得到一组对应于多面体端面的二维区域。在产生分割图像时,有关该问题特定域的知识对于节省计算和克服因噪声和不合适数据所引起的问题都是很重要的。比如针对一平面多面体,利用这种知识可以事先就知道线段应当是直的,另外还可以知道纹理和运动在分割中是很重要的。这对计算机视觉研究有重要意义。
几何表示用于获取有关二维及三维形状的所有重要概念,形状的定量表示既困难又重要,这些几何表示法必须具有充分的能力以实现复杂和通用的处理,例如对于采光及运动效应的仿真。几何结构对于编码以前获得的知识和重新表示当前的视觉输入都很有用,因此计算机视觉需要某些基本的数学工具。
关系模型是复杂高级处理中所用各种表示的集合。知识表达中的一个重要工具是语义网络,它可以简单地用作组织知识的一种手段,或用它来对知识形式化。高级处理经常要利用先验知识和感性经验前所得到的模型、基本的处理方式,即先建立表达方法,再与这些表达进行匹配。在高级处理中命题表达变得更重要,它们由关于一个模型是真或假的一些断言所组成,并且由推理规则来处理。推理型方法也可以用于规划,由于规划中自始至终建立情况和动作的模型,因此它必须对随时间变化的、假设的客观世界进行推理,表示的级越高,朝向低级的控制流就越显著,呈现串行处理算法的趋势也就越大。对于复杂的信息处理,这些控制问题是基本的。
计算机视觉本身的研究是与应用无关的,但其结果与很多领域都是相关的。下面列举一些相关应用与计算机视觉研究的关系[10]。
· 机器人学:描述三维景物和机械零件,通过光和X射线对工业任务和物体辨识描述,表现出物体模型和物体反射光模型。
· 航空图像:主要对地形和建筑物采用可见光、红外、雷达等方式对地图或者外界的几何模型进行资源分析、图像改善、天气预报和一些军事上的用途。
· 天文学:利用天体辐射光描述其几何形体,并对天体组成进行成分分析。
· 医学:既可用于描述身体器官,还可用于描述细胞的组成、染色体成分、蛋白质链的分析。一般对于身体器官观察使用X射线、超声波等;对细胞采用电子显微镜,通过形体的模型分析病理学原理和诊断结果。
· 化学:对化学模型进行分析,采用电子密度得到分子结构。
· 神经解剖学:用于神经元结构的分析,通过电子显微镜确定神经元的空间位置,描述神经元之间的连通性及神经元之间的传导关系。
· 物理学:对于新粒子的发现,寻找新粒子径迹的辨识,找出粒子的运动规律。
上面是计算机视觉常见的一些应用。人脸识别的基础就是计算机视觉。
2.Marr视觉理论
美国麻省理工学院的David Marr的视觉计算理论[13]立足于计算机科学,系统地概括了心理物理学、神经生理学、临床神经病理学等方面已取得的所有重要成果,是迄今为止最系统的视觉理论。Marr视觉理论的出现对神经科学的发展和人工智能的研究产生了深远的影响。
Marr认为视觉是一个信息处理过程,这个过程根据外部世界的图像产生对观察者有用的描述,而且这个处理过程是有层次的。整个处理过程如图1-1所示。
图1-1 Marr视觉信息表示过程
低层视觉(即视觉处理的第一阶段)的目的就是要确定图像信息的变化是由哪些因素引起的。这个过程要经过两个步骤来完成。第一步是获得表示图像中的变化和结构的表象。这包括检测灰度的变化、表示和分析局部的几何结构以及检测照明的效应等处理,第一步得到的结果被称为初始简图(primal sketch)的表象。
第二步对初始简图进行一系列运算得到能反映可见表面几何特征的表象,这种表象被称为二维半(2.5 D)简图,这些运算中包括由立体视觉运算提取深度信息,根据灰度影调、纹理等信息恢复表面方向,由运动视觉运算获取表面形状和空间关系信息等。这些运算的结果都集成到2.5 D图像这个中间表象层次,因为这个中间表象已经从原始的图像中去除了许多的多义性,纯粹地表示了物体表面的特征,其中包括光照、反射率、方向、距离等。根据2.5 D图像表示的这些信息可以可靠地把图像分成有明确含义的区域(分割),从而可得到比线条、区域、形状等更为高层次的描述。这个层次的处理称为中层处理(intermediate processing)。
Marr视觉理论中的下一个表象层次是三维模型,它适用于物体的识别,当图像数据具有与目标模型相同的表示形式时,就能够对图像进行识别。这个层次的处理涉及物体本身,并且要依靠和应用与领域有关的先验知识来构成对景物的描述,因此被称为高层视觉处理。
Marr的视觉计算理论虽然是首次提出的关于视觉的系统理论,并已对计算机视觉的研究起了巨大的推动作用,但还远未解决人类视觉的理论问题,在实践中也已遇到了严重困难。英国NewCastle大学的心理学教授Bruce、Young等人[14]认为Marr的三层表示模式是对目标的一种较粗略表示,对于一般的目标识别可能是有效的,但对于需要很精确地对目标加以描述,从而进行识别的情况却可能不适用。例如对于人脸图像的识别,不同目标具有相同的形状,同时同一目标具有不同的表现形式,单纯地使用上述的三层表示模式将无法区分不同的人脸图像。
3.基于推理的视觉理论
由于只根据图像数据本身不能对相应的物体空间结构提供充分的约束,也就是说这是一个约束不充分(underconstrained)的问题。因此,为了理解图像的内容必须要有附加的约束条件。德国柏林学院的实验心理学家Gestalt[15]发现的感知组织现象是一种非常有力的关于像素整体性的附加约束,为视觉推理提供了基础。
心理学家Gestalt所研究的出发点是“形”,他认为任何“形”都是知觉进行了积极组织或构造的结果或功能,而不是客体本身就有的。在视觉研究中,Gestalt理论认为把点状数据聚集成整体特征的聚集过程是所有其他有意义的处理过程的基础。人的视觉系统具有在对景物中的物体一无所知的情况下从景物的图像中得到相对的聚集(grouping)和结构的能力。这种能力被称为感知组织。
感知组织把点状的传感数据变换成客观的表象。在这些表象中用于描述的词藻不是在点状定义的图像中的灰度,而是如形状、形态、运动和空间分布这样的描述。感知组织通过对传感器数据进行整体的分析,得到一组宏观的表象。这样的宏观表象就是进行认知活动时的基本构件,用它们可构成对外部世界的描述。
Gestalt理论反映了人类视觉本质的某些方面,但它对感知组织的基本原理只是一种公理性的描述,而不是一种机理性的描述。因此自从在20世纪20年代该理论被提出以来未能对视觉研究产生根本性的指导作用。但是研究者对感知组织原理的研究一直没有停止。特别是在20世纪80年代以后,加拿大British Columbia大学的Lowe[15]、美国Carnegie Mellon大学的Witkin和Tenenbaum[16]等人在感知组织的原理以及其在视觉处理中的应用方面取得了新的重要研究成果。
1.3 模式识别理论
模式识别是将计算机表示出来的图像和已知的类别进行匹配的过程。识别过程将计算机视觉中表现的客观物体用一定的方法从特征空间映射到模型空间。
模式识别在人类的活动中普遍存在。模式的一种经典定义为[17]:混沌世界中与无序相对的一种状态就是模式。模式识别过程就是试图去确定样本的类别属性,即把某一样本归属于确定类型中的一类[18, 19]。在模式识别过程中,最重要的是寻找样本的特征空间,通过样本特征空间来确定样本的归类,因此可以认为模式识别过程是由模式空间经过特征空间到类型空间的映射过程。在模式识别过程中,模式维数是无限多的,这意味着模式识别中物理世界观察的数据集合具有多样性。模式识别中任一模式空间的属性表示为特征空间的必要条件是客观世界里的物体和时间在物理上是可测量的,而这些可测量的数据都能够用函数的形式描述;并且这些数据可以归并到一组模式定义上。在从模式空间到特征空间的变化中,经常由于模式空间的维数太大,将模式空间的维数进行压缩和综合分析得到低维的特征空间,这一过程称为特征提取或特征选择。模式识别过程的特征空间到类型空间还存在一定的映射关系,这个映射关系一般采用既有的经验和知识对特征空间参数进行分类,这一分类过程叫作判断决策,而判断决策中使用的知识和经验叫作判断规则。在适当的判断规则下,特征空间里的样本区分成不同的类型,这样将特征空间区分成不同的类型空间。类型空间中不同类型的分界面称为决策面。类型空间的维数定义为类型数目,而不是模式空间的维数。模式识别过程存在一个降维的过程,因此一般说来特征空间的维数要大于类型空间的维数,而模式空间的维数要大于特征空间的维数。整个模式识别过程是从可感知的世界通过模式空间、特征空间,经历模式采集、特征提取和分类判决过程,最后得到分类的结果,如图1-2所示。
图1-2 模式识别原理
下面将模式识别整体过程分为预处理、特征提取、分类过程等几个步骤分别进行描述[20]。
1.3.1 预处理
预处理是模式识别过程的第一步。预处理是将模式识别的样本从一定的环境中抽取出不受更多干扰因素影响的待识别样本。一般说来,预处理的功能包括消除或者减少模式采集中的噪声及其他干扰,以便提高信噪比、清除或减少数据图像模糊(特别是运动模糊)及几何失真,提高清晰度、改变模式的结构。例如将非线性的模式转变成线性的模式、图像的滤波、变换、编码、标准化等都可以归类于预处理工作。在一些采样过程中,采集到的是一些模拟量,这一过程在工业控制中经常出现,而计算机却只能处理数字量,这就要求进行模/数转换。对于模/数转换一般要考虑两个量:采样时间间隔和量化级。采样和量化对于模/数转换的效果影响特别大。特别应该指出的是,没有一个通用标准来规定图像模式量化过程和预处理的效果,这种效果是根据客观观察决定的。总之,预处理过程基本包括了模式识别前的所有工作。
1.3.2 特征提取
在客观物体的样本采集过程中,为了保证模式的真实性,总是尽量多地采集各项数据,这使得样本在模式空间里的维数很大。维数大的模式空间带来的处理时间和费用都很大,而且过多的维数影响了分类的可能。另外在模式区分时,并不是每一个特征对事物的描述都有相同意义,特别指出:对于不同的分类要求,不同的特征有不同的意义。特征提取是将对模式识别有明显作用的特征提取出来,通过这一过程可以压缩模式的维数,使之便于处理,减少损失。
特征提取后得到的特征空间是为了分类使用的,对于相同的物体在不同的分类规则下,所提取的特征必须满足在某种准则下分类错误最小。在一般情况下,可以选择适当的正交变换,考虑特征之间的统计关系,提取出最有效的特征;在特征提取的同时删除贡献微弱的特征,以达到减少分类错误的目的。
1.3.3 分类
分类将特征空间划分为类型空间,同时分类还将未知类别属性的样本确定为类型空间里的某一个类型。在给定的条件下,分类还可以否定样本属于某种类型。在实际的模式识别过程中,在预先给定的条件下,被考虑的类型属性通常具有相似性,因此在分类中出现错误是不可避免的。分类过程只能以某种错误率来完成。对于好的模式识别算法,在特征空间上必然有好的分类算法来减少分类的错误率。而且特征空间充分地反映模式空间的程度也决定了分类的错误率。因此错误率的降低是模式识别研究的中心问题。
上面介绍了模式识别的基本原理。模式识别的识别过程是依照上面的过程进行的。另外模式识别系统必然需要一个学习的过程,通过样本特征的变化来对分类功能自动调节,这一功能可以认为是分类器的训练。随着样本的变化,系统自动调整分类特性,这一过程在模式识别系统中属于前期工作,称为学习过程。图1-3为模式识别系统框图。
图1-3 模式识别系统框图
模式采集完成模式的采集。根据处理对象的不同可以选用各种传感器、测量装置或图像录取输入装置。在采集过程中或采集之后,经常需要进行模/数转换、滤波、消除模糊、减小噪声、纠正几何失真等预处理操作。特征提取实现由模式空间向特征空间的转变,有效地压缩模式维数。在一般情况下,特征提取的组合是在一定分类准则下找出最佳的或者接近最佳的变换器,或者是为了实现某种特征的选择算法。
分类器必须实现对未知类别属性样本的分类判决,因此设计分类器首先必须确定对分类错误率的要求,选用适当的判决规则。为了能使分类器有效地进行分类判决,还必须首先对分类器进行训练,这就是分类器的学习过程。分类器的学习/训练过程是模式识别中的重要概念。模式识别具有自动识别功能是非常重要和关键的。经过机器学习过程后,分类器可以得到一个分类器样本原型,这一过程必须经过多次重复,不断纠正错误,最后才能使分类的错误率达到要求。经过特征提取和训练/学习过程的样本通常叫作训练样本,这些样本的类别属性预先并不都是知道的。分类判决常常是样本多特征的函数,学习过程就是要确定函数的所有因子,甚至直接确定判决规则。开始时输入一些训练样本,分类错误率一定很大,因此就要修正判决规则或者权因子。不断输入修正的一个正反馈过程直到分类错误率低于某个定值为止,这个过程称为完整的学习过程。
按分类特性划分,模式识别的常用方法主要包括统计模式识别和句法模式识别。统计模式识别是以实验样本在特征空间中的概率密度函数为基础的。而句法模式识别是以图形的结构特征为基础,采用形式语言理论的技术,适合于复杂景物图像分析和理解。多数识别采用统计方法。
1.4 人脸图像识别主要研究的问题
从人脸图像识别的过程来看,建立人脸模型是一个比较重要的环节,而在这个环节中提取合适的特征采样值又是比较关键的。不同的识别方法所提取的特征值是不一样的,提取方法也是不一样的。但模型特征的最终表现形式都是类似的,以向量的形式表示。
人脸图像识别的难度从其图像样本的易受干扰程度也可体现出来,不同的光照、是否有背景以及图像是否倾斜、是否有旋转等都会对图像的样本产生干扰,从而对图像识别结果造成影响。
1.4.1 数据采样
因为人脸是三维目标物体,很难用简单的模型来加以描述,所以一般将其投影到二维空间,得到二维的人脸图像,并用于识别。而对于同一个物体,从不同角度得到的投影图像各不相同,有的甚至相差较大,因此识别时,可能将来源于同一个目标物体的不同投影图像识别为不相同。
定义1.1: 设训练样本集合为R,取任一目标Si,对Si进行某些操作Γ,由此得到的模式集合为Li={oi1, oi2, …, oin},则对应R,可得到样本库为K={o11, …, o1n, o 21, …, o 2 n, …, oi1, …, oin, …,};对于某一待识目标M,若M与K中任一元素oij相等或最近似,则认为M =Li,也即M =Si;否则,拒识。
在上述定义中,如果Li为单元素集合(n=1),即每个训练样本在库中有一个数据,则称之为单样本数据识别;否则,称为多样本数据识别。
对于某个待识别目标,其在库中对应的样本个数越多,则被识别出的可能性越大;反之,则越小。因此,在识别精确度要求高的场合,应该采用多样本数据,并设计相应的识别算法进行识别;但样本数据增加了,对存储空间的要求也就相应增加。另外在某些场合,有时对于每个训练目标只能提供一个样本数据,则这时应该考虑在单样本数据的情况下,如何设计一个较通用的识别算法。
一般进行人脸图像识别的过程是这样的:首先要建立一个训练样本库,对于每个训练样本在库中都有一幅或多幅人脸图像数据,识别时,得到待识目标的相应数据,与库中各样本数据进行比较,如能够得到合适的匹配,则认为识别出;否则,拒识,并将待识目标的相应数据加入样本库中。为了得到一个通用的人脸图像识别系统,一般都基于单样本数据情况。
1.4.2 干扰因素
除了样本数据不足会给识别带来一定的困难外,一些外在的干扰也会影响识别的精度。
(1)图像质量
对于拍摄清晰的人脸图像,可从中准确地分辨出人脸各部分的结构信息及纹理信息,有利于人脸图像特征的提取以及提高识别率;反之,如图像质量较差,将会给识别带来一定的困难,有时需要先进行图像的增强处理以及平滑处理。
(2)背景
人类能够在各种环境下识别某些特定的目标,可以认为人类具有将目标从背景中提取出来进行识别的能力,而不是只能在某一特定环境下识别目标。但背景却会对机器识别产生不利影响,因为要从一幅图像中分辨出背景与目标本身也是一个识别任务。如果背景较简单,则目标提取相对容易些;否则,很可能提取不出目标,使得后续的识别很难进行。对于一幅人脸图像而言,背景的存在是必然的,因此必须考虑背景的影响。
(3)光照
光照对于视觉的影响是很大的,即使对于人类,也会由于光线太暗而出现误识。反映到人脸图像的识别上,光照可以影响目标图像的结构,使得目标的轮廓、纹理都会出现偏差;对于同一个人,在不同光照下得到的人脸图像也会不同。因此,对于一个通用性较强的人脸图像识别系统,光照是一个要考虑的因素。
(4)目标的旋转
在进行拍摄时,人的头部会不自主地做些转动,一般可归结为两类旋转,一类为深度旋转,另一类为平面旋转(也可称为平面倾斜)。这两类旋转,尤其是前者,给人脸图像的识别带来很大难度。
(5)尺度
对于人类而言,当一个目标在远处出现时,因其较小,可能识别不出,随着目标的靠近,目标逐渐放大,变得清晰,人类能够准确地将其识别出来;另一方面,如果眼睛距离目标太近,目标过于放大,也可能识别不出。同样,对于人脸图像的识别而言,图像中目标的尺度也必须在一定的范围内,目标太小或太大都将给识别带来困难。
(6)人脸的表情
指纹成像时不会因为带有表情而给识别带来困难,而人脸是具有表情的,并且每次成像时,表情都不会完全一样,反映到人脸图像上,对于同一个人,其表情不同,得到的人脸图像也就不同。
(7)其他
其他因素如头饰、眼镜、胡须、化妆等都会给识别带来困难。
1.5 人脸图像识别系统的构成
一般的识别系统主要由3个功能模块组成:人脸图像预处理模块、图像表示与特征提取模块和识别模块,如图1-4所示。
图1-4 识别系统
1.5.1 人脸图像预处理
对人脸图像进行预处理的目的是使外界干扰对识别目标的影响减至最小,并且按照人脸图像识别方法的要求使图像达到标准化(标准尺寸及标准位置)。预处理包括消除噪声、灰度规一化、几何校正、滤波变换等。一般有现成的算法可以帮助我们实现这个步骤,通过这些预处理,可以最大限度地把干扰减到最小,并对人脸识别性能的稳定性起到一定作用。
1.5.2 图像表示与特征提取
人脸的多样性以及识别要求使得人脸的表示具有多样性与唯一性。严格意义上,不存在两张完全相同的人脸,因此,将现实空间的图像反映到机器空间时也应保持这种唯一性与多样性,才能做到人脸图像的准确识别。对于人脸,有两种常用表示法。
(1)基于特征表示
基于特征表示(feature-based representation)考虑两种特征:正面特征和侧面特征。
· 正面特征包括各种距离比例及角度值,如两眼间距离、两颊间距离、眼大小以及各特征点之间组合所形成的距离、角度值等。
· 侧面特征是指由人脸图像侧向投影所形成的凹凸点,将其作为特征点(fiducial-point),如鼻尖、下颌等。
(2)基于图像表示
基于图像表示(image-based representation)是将人脸图像当作矩阵进行处理,从而提取出矩阵的各种代数特征,如特征值、特征向量以及各种变换系数值等。
上述两种人脸图像的表示方法都需要进行人脸特征的提取,为此首先要确定特征的位置,常用的特征探测方法有3类:参数化模型方法、基于模板的方法以及利用数学算子的方法。
1.5.3 图像识别
模式识别可分为类间(inter-classes)识别与类内(in-class)识别两种。类间识别就是不同类物体之间的识别,如从一幅带背景的图像中识别出人脸来,就是将人脸图像从其他物体图像中识别出来,也称作人脸探测;类内识别就是同类物体的不同个体间的识别,如从众多人脸图像中识别出某幅特定人脸图像。本书主要讨论后一种情况。