人脸识别是基于生物特征识别技术的身份认证中最主要的方法之一,涉及计算机图形学、计算机视觉、模式识别、机器学习、感知科学、人工智能、计算智能等技术,3D人脸识别主要分为人脸检测、人脸特征和人脸识别三个过程。为了提高人脸的识别精度,本文对3D人脸的自动识别系统及识别算法进行了研究,给出了3D人脸识别存在的问题。
1 3D人脸自动识别系统
普通的人脸识别一般分为图1所示的三个过程。图2所示是一个典型的3D人脸识别系统的组成框图。其中,图像获取部分负责获取来自于摄像机或是扫描仪等设备的图像,通过程序将其转换为可处理的数字图像格式;检测定位是通过对输入的图像进行处理分析,判断图像中是否有人脸,如果有人脸,则作出准确的定位;特征提取是在预处理后的人脸图像中按照某种策略抽取出识别的特征。
图2 典型的人脸识别系统
人脸模型主要分为刚性模型和塑性模式,刚性模型可以满足对人头部跟踪检测的要求,主要用于表示人的头部位置、姿态、方向等;塑性实体主要处理人脸识别、表情识别、唇语识别等问题,它涉及面部器官、肌肉和表皮的运动。
目前主要的三维建模工具有3DSMAX,MAYA,AUTOCAD等。
1.1 结合一般人脸模型的建模
由于人脸的复杂性和相似性,直接采用视觉重建算法进行3D人脸的重建,在精度和实用性上,相对于昂贵的硬件采集方法,都不能达到很好的效果。为了重建精度较高的人脸模型,下面引入了一般人脸3D模型。
一般人脸模型的主要思想是定义一个平均的人脸3D模型,其空间坐标点集为Sg={xgi,ygi,zgi},i=1,2,…,n,该空间坐标集表达了常见的人脸表面形状的共同特性。该思想认为,不同人脸的3D结构S。都可 以通过一般人脸模型Sg中每个空间点的位置变化来表达,即特定的人脸模型Sp=Sg+△S,(xpi,ypi,zpi}={xgi+△xi,yg+△yi,zgi+△zi}。形变量△S如何求取具有不同的方法,但核心思想是利用人脸模型提取表达五官特征(眼睛、鼻子、嘴、脸颊、眉毛)的轮廓点集Sf={xfj,yfj,zfj},j=1,2,…,m(其中m《n),然后利用相应的轮廓信息或特征点队形的深度信息在一般人脸模型和特定人脸模型之间建立一个光滑的3D位移插值函数f(Sg),并使f(Sg)对于轮廓或特征点集合均满足f(Sj)=△Sf,进而从f(Sg)得到一般人脸模型上每一点的位移△S。
1.2 结合3D人脸形变模型的建模
3D人脸形变模型的核心思想是利用有限数量的3D人脸模型的线性组合来表达任何一个3D人脸。在用3D人脸形变模型建模时,可将模型的形状坐标集合记为s=[x1,y1,z1,…,xN,yN,zN]T,即包括N个顶点的x,y,z坐标;再将对应一个人脸的纹理表示为一个纹理向量t=[R1,G1,B1,…,RN,GN,BN]T,即包括N个对应顶点的RGB值(假设有效纹理的数据等于顶点数)。
形变模型由M个人脸样本数据构成,这些数据分别表示为它的3D形状和纹理两部分,也可写成M个样本图像的质心坐标表达式,即:
使用PCA对3D人脸数据进行压缩,再把基底变换到一个由对应协方差距阵的特征值按降序排列对应的特征向量si和ti形成的正交坐标系下,则有(α,β∈RM-1):
其中,a的概率分布满足
式中:δ2是形状协方差矩阵Cs的特征值。p(β)的计算与p(α)的计算类似。
最终定义的3DMM为[smodel(α),tmodel(β)],由两个变量参数确定a=[a1,a2,…,aM]T,b=[b1,b2,…,bM]T。这样,任意新的人脸都可以通过变化a,b来控制其形状和纹理。
2 基于视频图像的识别算法
特征脸方法通常利用主分量分析进行降维和提取特征。该方法选择与原数据协方差矩阵前几个最大特征值对应的特征向量构成一个组基,以达到最佳表征原数据的目的。在人脸识别中,由一组特征脸基图像张成一个特征脸子空间,任何一幅人脸图像(减去平均人脸后)都可投影到该子空间,从而得到一个权值向量。图3所示是一个主分量分析的应用举例。图中最左边的图像为平均脸,其他为对应7个最大特征值的特征向量。
图3 人脸识别主分量分析例图
但是,3D人脸识别是通过自动检测人脸区,从视频中提取特征后才识别出人脸的身份。虽然视频人脸识别是基于静态图像的人脸识别的直接扩展,但一般认为,视频人脸识别算法需要同时用到空间和时间信息,它的时间连续性是视频图像的一个非常重要的特性,包括由此产生的人脸信息的不确定性。视频人脸识别算法和基于静态图像的人脸识别算法的最大区别就是在人脸跟踪和识别中利用时间信息。目前这类算法大致可分为两类:
(1)跟踪-然后-识别,这类方法首先检测出人脸,然后跟踪人脸特征随时间的变化。只在跟踪阶段用到时间信息。识别还是采用基于静态图像的方法,而没有用到时间信息。
(2)跟踪-且-识别,这类方法中,人脸跟踪和识别是同时进行的,在跟踪阶段和识别阶段都要用到时间信息。
3 3D人脸识别存在的问题
近几年才开始研究将三维方法用于人脸机器识别,目的是为了弥补二维方法的不足,或者是解决二维方法所无法根本解决的问题。
目前,三维人脸识别的处理方法和手段还是处于发现时期,其本身还不成熟,主要存在以下困难:
(1)海量存储和计算的困难。由于三维识别过程中处理的数据容量和计算量十分巨大,对于一般计算机来说,它们的存储和运算还比较困难;
(2)信息来源方面的困难。由于三维识别的完整信息难于获取或者识别的信息往往不完整,同时,再加上图像采集设备的差异和成像原理的不同,都可能造成识别算法本身不可纠正的错误;
(3)对人的生理认识的不足。由于计算机没有人的经验和知识功能,而只有计算功能,同时由于对肌肉的运动理论和表情形成等问题,现在还不能提供给计算机足够的专家支持;
(4)受环境和条件的约束。影响二维识别的不利因素在三维识别上同样存在,如光线的强弱、方向、遮盖、阴影、背景等;
(5)实现方式和手段的不足。传统的识别方法不能满足三维识别的要求,必须改进或采用新的方法。例如由于动态图像的计算量太大,因此,适用于静态图像处理的神经网络就变得不适合了。
4 结语
3D人脸的研究始于计算机动画和生物医学成像。计算机动画方面的方法是在计算机上生成三维的人脸来表达人的运动、姿态和表情。这种动画的人脸可以在不同的环境下应用和发展为虚拟现实,这在生物医学方面可从生物图层或切片来重构人体器官组织,并将其用于病理分析。而三维人脸识别是极具挑战性的课题,如在技术上有所突破,将具有很强的创新性和应用价值。