论文部分内容阅读
目前计算机视觉受到很多学者的青睐,视频人脸跟踪与识别是其中的一个研究热点。它有着广泛的应用前景及研究意义,如在安防监控系统、视频会议、门禁系统、远程教学、身份识别中都会用到。人脸检测、跟踪、识别三者密不可分相辅相成。人脸检测是人脸跟踪的基础,为跟踪目标提供初始位置信息,人脸检测与实时跟踪为后续动态地进行特征点拟合提供准确位置信息。本文分别对视频人脸检测、跟踪、关键特征点定位三大部分做了深入的研究。本文采用Adaboost算法对静态图像帧进行人脸检测定位。检测之前需要利用训练样本集训练出人脸分类器,选择5种基本Haar特征以及扩展的Haar特征来表征脸部灰度分布特征,并利用积分图法计算每一个像素点的特征值保存在一个矩阵中以简化计算。在训练人脸分类器过程中,通过逐次改变样本权重实现样本集更新,不断突出未检测到的图像,消弱已检测到的图像的权重。经过T次循环得到T个带有权重的弱分类器,最后选择若干个弱分类器加权为一个强分类器,并可将若干个分类能力逐级增强的强分类器级联起来构成级联分类器,至此人脸检测分类器训练完成。为提高人脸检测的准确度和鲁棒性,本文在目标检测之前,对输入图片进行一系列预处理操作,如:光照补偿、直方图均衡化、噪声滤除。预处理完成后,即可用Adaboost人脸检测器对图像中人脸进行检测定位,为后续人脸跟踪与识别做准备。本文的视频人脸跟踪算法是以Adaboost人脸检测为基础的。传统的Camshift算法,是一种半自动化人脸跟踪算法。在跟踪开始时需要手动输入人脸的初始位置。本文将Adaboost与Camshift算法相结合实现了人脸跟踪器的自动化功能。人脸跟踪是以人脸肤色为基础的,容易受到光照和背景以及近肤色目标的干扰,影响跟踪效果。鉴于上述问题,本文分别给与了相应的改善方案。首先,加入Adaboost检测器,在跟踪之前启用检测器对人脸进行初始定位并且给定搜索窗口初始位置;对于近肤色或遮挡物出现时本文采用尺寸约束对其改善;若在跟踪过程中,由于两帧之间的距离太大、有部分遮挡或者由于出现近肤色目标等问题导致跟踪目标丢失,此时可以重新启用Adaboost跟踪器对人脸重新定位。Adaboost人脸检测器的引入以及尺寸约束规则的使用,很好的实现了Camshift算法的高效跟踪,很好的解决了跟踪目标丢失的问题,也实现了其自动循环检测跟踪。其次,在概率密度分布图中,人脸区域内会有黑色的像素点。本文采用opencv里面的中值滤波函数cvSmooth以及腐蚀与膨胀等方法加以改善,使图像更加连通并去除脸部的噪声点。另外,由于Adaboost检测算法使用矩形框标注人脸位置,不太符合人脸形状,在拐角处会引入一些背景点,本文将其转换为椭圆形,并加一个旋转角度,有效的提高了跟踪算法的准确率与鲁棒性。人脸跟踪定位的位置信息为后续的特征点拟合提供了初始参数。本文采用主动表观模型(Active Appearance Model,AAM)与反向组合算法进行人脸特征拟合。首先利用Camshift算法的定位结果作为特征拟合的初始位置,然后通过纹理信息能量函数约束形状不断逼近输入图片人脸的真实位置,直到能量函数达到最小。求出此时局部以及全局形状参数及纹理参数以对关键特征点进行定位。传统的反向组合AAM拟合算法能够很好地实现对正面人脸图片进行定位,但是对于在平面内有旋转角度的人脸,在定位的准确率和效率上都不是很高。针对这个问题,本文提出用眼睛定位法求取人脸的旋转角度,并将旋转角度传递给全局初始位置参数。这样不仅减少了迭代的次数,而且提高了关键特征点定位正确率,对一些原先拟合失败的图片也可以准确的找到关键特征点的位置。本文采用Visual C++6.0与Opencv1.0实验平台对理论推导进行实验验证。