分类: C/C++
2012-10-27 22:48:28
在进行人脸识别过程中参考了一些论文,也看了一些资料现在把这些资料做一下整理,算是对当前人脸识别姿态问题的一个方法介绍吧~!和大家分享一下,希望对大家有用~!
1. 基于多视图的多姿态人脸识别
该方法采集各个人脸的各个姿态的一定数目的视图作为训练样本,建立多姿态人脸数据库,识别时将输入人脸图像与训练库中所有的多视图进行比较分析,通过定位两个瞳孔点的位置加以配准,再对配准后特定姿态的人脸进行识别,得出人脸识别结果。
这在一定程度上解决了多姿态人脸识别的问题,但是该方法存在很大的缺陷:它需要以对每个人脸的多个视角都进行拍摄采集形成多视图为前提条件。这在许多实际场合中是不可能办到的,往往仅能得到前视图或其它姿态的单视图。
2. 利用与姿态无关的特征进行识别
这种方法通过提取与姿态无关的人脸特征来进行识别,例如肤色。其基本假设是要求较为准确地定位特征,然而由于人脸上缺乏足够的纹理信息,常常难以满足这一假设,一般很少独立使用。也有通过提取姿势不变特征进行识别的,Wiskott等人假设Gabor Jet在人脸存在旋转变化时仍能很好地刻画人脸特征,Krueger等人提出了Gabor小波与神经网络结合方法用于人脸表达和姿势估计,但是深度旋转很大程度地改变了人脸图像,很难寻找姿势不变特征。
3. 基于单张视图生成多角度视图
该方法以根据正面人脸生成不同角度的视图来解决训练样本较少的情况下的多姿态人脸识别问题。最常见的方法是建立人脸三维模型,再将其进行任意角度的投影,产生出多姿态二维人脸图像。
Hallian等提出的三维弹性图匹配的方法只能解决小角度的姿态变化,Lee等的三维模型将边缘模型、颜色模型以及网络模型结合起来,分别对人脸图像进行分析;CMU的Xiao提出的利用二维人脸图像生成三维模型的方法加大了人脸姿态估计的尺度,但识别效果仍不理想。Vetter等提出了三维形变模型的方法,将二维输入图像与三维模型进行匹配,获得三维人脸的形状、纹理参数以及相应的光照、姿态等信息。利用形变模型的变形系数作为特征进行人脸识别,可以分析更大范围的人脸姿态。
这种方法要求三维模型必须足够精确,但是在实际应用中,三维建模的方法计算费时,模型的优化过程复杂的,数值求解难以达到最优解,得到的变形系数并不能很好地代表人脸的特征,由平面图像恢复三维信息也是非常困难的。
4. 人脸姿势标准化方法
该方法基于单张视图通过正面人脸合成算法由带姿势人脸合成出一张虚拟正面人脸,再输入人脸识别系统中进行识别。
正脸合成算法有两类模型:基于3D人脸重建的方法和基于2D视角的方法。在基于3D人脸重建的方法中,Blanz等人使用一个标准人脸模型和一个光照模型,用主分量分析的方法表达输入图像的形状、纹理以及光照情况,通过贝叶斯估计确定模型中的参数,最终获得该图像的3D模型;Feng等人提出了基于3D弹性网格(spring.based face model)的合成方法,该方法首先确定人脸朝向,再使用3D弹性网格进行对齐,最后将人脸纹理映射到网格中。
关于基于2D视角的方法,1997年Beymer等人在《Science))杂志上15sJ首先提出,在经过稠密特征对应后,将研究对象表达成某线性空间的一个样本,成功地将统计学习方法引入到图像合成当中。Vetter等人进一步提出了线性物体类的概念,将该线性空间具体化。Park等人则将该理论成功应用于超分辨率图像合成。2D视角的方法具有实现简易性、效率高的特点,通过对算法的优化,可以达到满意的合成效果,与3D重建的方法相比更适合大范围的应用。
人脸的多姿态性对于以前的识别方法造成了极大的阻碍,因而研究者们又提出了基于多样本图像的多姿态人脸识别和基于单一样本图像的多姿态人脸识别方法。基于多样本图像的多姿态人脸识别对每个人脸按视角姿态拍摄多个视图形成人脸训练图像库,由此进行多姿态人脸识别,提高了人脸识别正确率。这方法在一定程度上确实解决了多姿态人脸识别的问题,但是它也存在着极大的缺陷:每个人脸必需按各种姿态拍摄多个视角图像作为前提条件,这条件不仅耗时耗资源,而且最为关键的是在实际场合中多数情况下我们是无法得到多个角度的图像。这时只能基于单一的图像进行多姿态人脸识别。这样基于单一的图像或小样本的多姿态人脸识别技术就很重要了。
基于单一图像的多姿态识别与基于多角度图像的多姿态识别方法的唯一区别是前者以每个人脸在每个姿态下只取一个训练样本作为前提条件,相对于后者,它实际上是一种小样本训练方法。