《人脸检测算法的讨论和研究》由会员分享,可在线阅读,更多相关《人脸检测算法的讨论和研究(16页珍藏版)》请在金锄头文库上搜索。
1、关于人脸检测算法的讨论和研究,by:王腾龙,郑良榉,为什么需要人脸检测?,随着我国社会和经济等各项事业的迅猛发展,许多行业对于快速和准确地识别有关人员身份的需求正日趋迫切. 由于生物特征是人体的内在属性,具有很强的自身稳定性和个体差异性, 所以人体的生物特征是进行身份识别最理想的依据. 其中利用人脸的特征进行身份识别是最自然和最直接的手段.人脸检测与定位是人脸识别的重要环节,它直接影响到人脸识别的准确性.,简介,人脸检测是一个开放性的,比较活跃的研究课题。在人脸检测算法中, 依照时间顺序的发展有模板匹配模型,肤色模型,ANN模型,SVM模型,Adaboost模型等。其中Adaboost模型在速
2、度与精度的综合性能上表现最好。,模板匹配模型,模板匹配方法是指存储几种标准的人脸模式,用来分别描述整个人脸和面部特征;计算输入图像和存储的模式间的相互关系并用于检测。 有两种方法 ,分别是预定义模板匹配的方法和改进的模板匹配的方法。,模板匹配模型,预定义模板匹配的方法: 一个标准的人脸模板首先被预定义和参数后给定一幅输入图像,分别计算出脸部轮廓、眼睛、鼻子和嘴巴与模板之间的相关度,如果相关度在一定阈值之内,则可判定输入图像为人脸,反之,则可判定为非人脸。 例:Sak ai等人使用眼睛、鼻子、嘴和人脸轮廓等子模板建模,检测照 片中的正面人脸。Cra w等人提出了一种基于正面人脸的形状模板(也就是
3、人脸的外 形)的定位方法。Govindar aju等人提出两个阶段的人脸检测方法。人脸模型根据边 缘定义的特征构成,这些特征描述了正面人脸的左边、发线和右边的曲 线。人脸必须是垂直、无遮挡和正面,模板匹配模型,改进的模板匹配的方法:包括多分辨率、多刻度、多模板和可变形模板等方法。 例: Miao等人提出了用于人脸检测的层次模板匹配方法。 Yuille等人使用可变形模板建立一个人脸特征相匹配的先验性 模型。,基于肤色模型,通过统计学习的方法,估计出人脸肤色在Y-Cr-Cb颜色空间中的概率模型,然后对检测点的肤色通过训练的概率模型的估计判断该点是否属于人脸区域,然后再进一步判断。 常用的肤色模型有
4、高斯模型、混合高斯模型和直方图模型。,基于特征脸,基于特征脸的方法中的“模板”是从图像中的样本学习的通常,基于特征脸的方法依靠统计分析和机器学习技术找到相应的人脸和非人脸图像的特征。学习的特征由分布模型或判别函数形成,用于人脸检测,同时,由于计算效率和检测有效性的原因通常需要降维。基于特征脸的方法是根据图像的统计特征进行正交变换,以消除原有样本之间的相关性,变换得到依次递减的特征值所对应的特征向量,即特征脸。,隐Markov模型,这是一种基于整体的或然率统计方法。隐马尔可夫模型在模式识别中应用很广,已经在语音识别和文字识别领域得到实际的应用。对于一幅正面的人脸来说,马尔可夫的“状态”包括前额、
5、眼睛、鼻子、嘴巴和下巴,这些状态以相同的顺序一一从上到下出现,即使是图像平面有些许的倾斜。这样,可以把人脸图像和隐马尔可夫模型结合起来,这些脸卜的特征区域被指定为状态,即从上到下为人脸图像进行一维连续了大证U窟莲。基于隐马尔可夫的方法的好处是便于掌握图像的定标,这正是其它的识别方法所欠缺的地方。基于隐Markov模型的算法有:前向,后向算法、Viterbi 算法、BaumWelch算法。,ANN与SVM方法,该方法是基于机器学习的方法,以人脸像素作为分类器的输入,然后判断区域是否是人脸。由于训练图象的尺度是固定的,但是检测做不到尺度不变,所以需要对多个尺度的图象进行检测,造成检测速度比较慢。另
6、外ANN的训练速度也很慢,同样数据量的情况下,ANN训练大约要17小时,但是SVM算法训练2分钟就可以得到一个较好的分类模型了。但是两者的检测速度都比较慢。,ANN方法,人工神经网方法是把模型的统计特征隐含于神经网的结构和参数中,对于人脸这类复杂的、难以显式描述的模型,基于人工神经网的方法具有独特的优势。,SVM方法,将模式投影到较高维数空间,然后在投影的人脸和非人脸模式之间形成一个决策面。SVM分类器是线性分类器,所选择的分类超平面使未知测试样本的分类错误最小。最优超平面是通过权值结合训练向量的小子集(称为支持向量)来定义的。,Adaboost算法,是目前人脸检测最为成功的算法之一,该算法的
7、特点就是训练慢,检测快。实验中采用的弱分类器是一种双阀值分类的方法,与opencv中的cart算法不一样,同时与Voila的原始算法也不同。另外在训练过程中采用了动态调整阀值的方法,使得分类器需要的弱分类器大大的减少了。下面是用Adaboost算法的效果图,注意该检测算法的速度是最快的。,Adaboost算法,Ad aBoo s t算法是Freund等人在Boosting算法的基础上提出的,其主要思想是给定一弱学习算法和一训练集(x1,y1),(x2,y2),(xn,yn)。这里xi为第i个训练样本的输入,yi为分类问题的类别标志。算法开始先给每一个训练样本赋以相等的权值1/n,然后用该学习算
8、法对训练集训练T轮,每次训练后,对训练失败的训练样本赋以较大的权值,也就是让学习算法在后续的学习中集中对比较难的训练样本进行学习,从而得到一个预测函数序列h1,h2,hT,其中hj也有一定的权值,预测效果好的预测函数的权值较大,反之较小。最终的预测函数H采用有权值的投票方式对新样本进行判别。 算法的具体实现,小结,肤色特征在人脸检测中是最常用的一种特征。 Adaboost模型在速度与精度的综合性能上表现最好。 人脸检测是模式识别中极富挑战性的一类问题,尽管目前存在许多的人脸检测算法,但是每种算法都是针对不同的应用环境而得到的,还没有一种算法适用各种不同的环境。虽然人们在人脸检测研究领域中取得了显著的进展,但是一个稳定性和鲁棒性强的人脸检测系统需要在不同的环境下如光照条件、人脸方向、姿势和部分遮挡、面部表情以及外部饰物等干扰,也具有很好的有效性和稳定性。,