视频序列中人脸的实时检测与持续跟踪的方法及系统的制作方法

文档序号:6651817阅读:231来源:国知局
专利名称:视频序列中人脸的实时检测与持续跟踪的方法及系统的制作方法
技术领域
本发明涉及人脸检测和跟踪领域,尤其是指一种在视频序列中人脸的实时检测与持续跟踪的方法及系统。
背景技术
人脸是计算机视觉系统中人机交互最便捷的方式之一。人脸检测就是在图像或图像序列中确定所有人脸的位置、大小等信息,而人脸跟踪则是持续跟踪视频序列中的一个或多个检测人脸。人脸检测与跟踪技术不仅是人脸识别、表情识别、人脸合成等技术的必要前提,而且其在智能人机交互、视频会议、智能监控、视频检索等领域有着广泛的应用价值。
人脸检测的重要性以及人脸模式的复杂性使得人脸检测课题一直是计算机视觉领域的一个研究热点,相关文献和方法非常多,主要分为基于启发式规则和基于统计模型两类。基于启发式规则的方法首先提取人脸的边缘、肤色、运动、对称性、轮廓、脸部器官等具有明确物理含义的特征,然后按照对人脸的先验知识制定一系列规则,最后通过检验特征是否符合这些先验规则来检测人脸。这类方法速度一般比较快,但要依赖于固定的先验规则,适应变化的能力差,虚警较多。基于统计的方法则是采用大量的“人脸”与“非人脸”样本,通过所采用的像素灰度特征或者其它变换域特征,训练和构造分类器,并利用所构造的分类器对所有可能大小的候选人脸区域进行判断,从而检测得到所有可能位置和大小的人脸。
尽管上述的方法是有大量样本训练得到,在统计意义上更为可靠,扩充了检测的范围,提高了检测系统的鲁棒性,较适合于复杂场景中的人脸检测,但是需要的时间比较长,实时性比较差。
尽管现有技术中也采用了AdaBoost的人脸检测算法,但是基于上述方法可见,仍然存在训练时间过长、提取的人脸特征数过多的问题,同时现有人脸检测及跟踪技术在获取当前帧目标的位置时仅考虑了前一帧的直方图,将前一帧的直方图作为模板,这样容易导致一些不稳定结果,如果某帧跟踪结果不够准确,则后续帧的跟踪结果也会连续出错,还存在检测左右光照不均匀的人脸的能力差,且容易受噪声干扰,稳定性比较差的问题。
并且由于图像是视频摄像头输入的视频序列,这意味着输入摄像头的人脸存在着很大的不确定性,经常受表情、外貌的干扰,胡须、眼镜、头发也会影响人脸的外观。另外,人脸尺寸、旋转、姿态、俯仰的变化、局部区域的遮挡,以及成像条件造成的变化等,都极大地影响人脸的外观,从而影响算法性能。

发明内容
本发明解决现有技术中采集到的视频序列中进行人脸的实时检测与持续跟踪的方法及系统计算时间比较长、实时性比较差的技术问题,本发明的目的是采用基于AdaBoost统计分层分类器的人脸检测方法,实现正面直立人脸的实时检测,并结合基于Mean shift和直方图特征的人脸跟踪方法,实现了人脸的实时检测和跟踪,本发明的方法具有检测及跟踪迅速、实时性强的优点。
本发明的目的是这样实现的一种视频序列中人脸的实时检测与持续跟踪的方法,包括以下步骤输入视频图像;采用实时人脸检测算法对输入的视频图像进行人脸检测;再采用粗细两级人脸检测算法对检测到的人脸进行检测验证;采用物体跟踪算法跟踪验证后的人脸;通过对跟踪区域的验证对跟踪的人脸进行验证处理。
所述的实时人脸检测算法是基于AdaBoost算法由多级分类器实现。
所述的人脸检测包含以下步骤接收到的图像信息,进行图像缩放,搜索到人脸窗口;对检测到的人脸进行特征点定位,对人脸进行几何归一化;对人脸进行灰度均衡化处理;对人脸进行旋转缩放;得到检测的标准人脸图像。
在接收到的图像中检测人脸图像,包括以下步骤对输入的每帧图像进行搜索,如在某帧图像中检测到一个或多个人脸,在接下来的两帧图像中跟踪这些人脸,并对后续两帧图像中跟踪的人脸进行检测和验证;在某位置连续三帧检测到人脸后,确定人脸存在,选择其中一个开始跟踪。
本发明的方法在对人脸进行灰度均衡化处理后,还包括对人脸两侧灰度分别归一化的步骤,使人脸左右半边灰度的均值和方差相等。
所述的人脸旋转缩放后还包括微特征计算以及分类器判决的步骤,该步骤是采用处理后的人脸图像的积分图和平方积分图得到图像中任意尺度、位置的微结构特征。
所述的对检测到的人脸进行验证的步骤包括在后续帧中持续跟踪选择的人脸,如相邻帧中后一帧与前一帧的跟踪结果相似度低于设定值,停止跟踪;前一目标停止跟踪后,在后续图像中重新进行人脸检测,直到找到新的人脸,验证后进行跟踪步骤。
所述的粗细两级人脸检测算法是将人脸的检测验证分两级实现,粗检测的人脸窗口的分辨率小于细检测的人脸窗口的分辨率。
在进行跟踪验证后的人脸步骤中,所述的物体跟踪算法是基于Meanshift和直方图特征做出。
所述的直方图包括长期直方图、短期直方图以及颜色直方图。
对跟踪区域验证的步骤是指每隔数帧在跟踪区域进行人脸检测。
本发明还提出一种视频序列中人脸的实时检测与持续跟踪系统,包括人脸检测装置与人脸跟踪装置,人脸检测装置包括人脸处理单元、微特征计算单元及分类器单元;所述的人脸处理单元接收到图像信息,对接收到的图像进行缩放,穷举搜索候选人脸窗口,计算窗口灰度的均值和方差;所述的特征计算单元根据AdaBoost算法计算出各个窗口的微结构特征,并将其传送给所述的分类器单元进行判决,分类器单元进行判决后将其传送给人脸跟踪装置;所述的人脸跟踪装置包括物体跟踪单元和跟踪区域验证单元,物体跟踪单元采用直方图特征进行计算,实现对图像跟踪,跟踪区域验证单元对跟踪的图像进行区域检测,对跟踪的人脸进行验证。
所述的人脸检测装置的分类器单元还包含粗细两级人脸检测单元,接收微结构特征,进行粗细两级检测,确定人脸窗口。
所述的直方图包括长期直方图、短期直方图以及颜色直方图。
本发明产生的技术效果是显著的本发明所述的方法和系统是基于AdaBoost算法进行检测的,并采用粗模型和细模型进行人脸检测验证,使本发明取得非常高的检测率,且检测速度非常快,效率高,可实时实现;本发明在检测过程中根据标准人脸灰度的均值和方差对左右人脸分辨率进行灰度的归一化,消除左右人脸光照不均匀的影响;本发明在人脸检测完毕后在短时间内继续进行人脸的跟踪和验证,消除人脸检测虚警的影响;人脸跟踪过程中引入长期直方图和短期直方图两个局部特征,反映前面图像中目标直方图的变化过程,保证算法可以跟踪姿态不断变化的运动目标。


图1为本发明的人脸检测与跟踪方法的流程图。
图2a和图2b为本发明的人脸检测与跟踪方法的检测及跟踪结果的示意图。
图3为基于AdaBoost分层分类器实现的人脸检测流程示意图。
图4为分类器中的部分正样本人脸图像。
图5为分类器中部分不包含人脸的反样本图像。
图6a至图6d为人脸样本的标定与采集的示意图。
图7为经过两侧灰度归一化处理后的样本。
图8为原始样本和经过镜像、左右旋转、放大处理后的样本。
图9为尺度归一化后的反样本数据。
图10为本发明的人脸检测算法的实施例选择的七组微特征。
图11为AdaBoost训练算法第K层分类器的训练流程示意图。
图12a和12b为人脸检测后处理结果一个实施例的示意图。
图13a和图13b为本发明的人脸跟踪示意图。
图14为人脸检测结果示意图。
图15为人脸检测与跟踪结果的示意图。
图16为本发明的系统一种构成框图。
图17为本发明的系统的另一种构成框图。
具体实施例方式
本发明提出一种在视频序列中人脸的实时检测与持续跟踪的方法,结合图1所示的内容首先,输入视频图像,在该步骤中由摄像头实时输入视频图像;然后,采用实时人脸检测算法对输入的视频图像进行人脸检测;接收到实时输入的视频图像后,对每帧图像进行搜索,检测人脸的存在;如图2a所示,给出了人脸检测的结果,其中正方形框表示为检测到的人脸;在检测过程中,如果在某帧图像中检测到一个或多个人脸,则在接下来的两帧图像中跟踪这些人脸,并对后续两帧图像中跟踪的人脸进行检测和验证,判断前面的检测结果是否是真的人脸;只有在某个位置连续三帧都检测到人脸后,算法才认为该位置人脸存在,如果场景中存在有多个人脸,挑选出一个人脸开始跟踪;本发明的实施例中采用跟踪最大的人脸进行说明;
在后续帧中持续跟踪挑选出来的人脸,如果相邻帧中后一帧与前一帧的跟踪结果的相似度低于设定值(该设定值可以任意设定),则停止跟踪;如果某个跟踪目标所在区域长时间未检测到正面直立人脸,则认为该目标的跟踪价值不大,停止跟踪该目标;前一个跟踪目标停止跟踪后,在后续图像中重新进行人脸检测,直到找到新的人脸,跟踪新的人脸。如图2b给出了人脸跟踪的结果。
以下结合样本的训练过程,对于本发明的检测过程进行说明,本发明是采用统计训练方法进行场景中正面人脸的检测,并采用AdaBoost理论实现人脸检测统计模型的训练。基于AdaBoost的人脸检测算法首先由大量“人脸”和“非人脸”样本训练一个“人脸/非人脸”二类分类器,在检测过程中,由该分类器确定某个尺度的矩形窗口是否是人脸,设矩形长为m,宽为n,则人脸检测的流程就是首先是按照一定比例连续放缩图像,在得到的系列图像中穷举搜索和判别所有大小m×n像素窗口,将各个窗口输入到“人脸/非人脸”分类器中,留下识别为人脸的候选窗口,再采用相邻位置的候选,对合并后的平均值进行计算,输出所有检测到的人脸的位置、大小等信息。
本发明所述的一种实时人脸检测算法,是使用一种类似Harr小波的微结构特征来表达人脸模式,并结合上述的AdaBoost算法提出了一种特征选择方法,将多个基于单个特征的弱分类器组成为一个强分类器,然后将多个强分类器级联成一个完整的人脸检测分类器,结合图3所示。本发明中检测过程中形成的每层分类器都是由AdaBoost算法训练得到的一个强分类器,每层强分类器又由一定数量的弱分类器组成。检测的时候,如果某一层强分类器判别一个子窗口为False就排除此子窗口而不进行进一步的判别,如果输出为True则使用下一层更复杂的分类器对子窗口进行判别。在候选窗口的搜索过程中,每一层强分类器都能让几乎全部人脸样本通过,而拒绝大部分非人脸样本。这样输入低层强分类器的窗口就多,而输入高层的窗口大大减少。
人脸检测算法需要对穷举搜索后的图像放缩一定尺度,得到人脸窗口,在本实施例中,以320×240像素的图像为例,如按照1.25的比例缩小10次,并以20×20大小的窗口逐个像素进行搜索,共需判断170000余个窗口。这意味着一次人脸检测都需要搜索大量的窗口,面对如此大的计算量,图3的检测流程中低层分类器必须非常简单,即前面的分类器包含的弱分类器数量少。后面的分类器复杂,包含的弱分类器数量多,这样后面的层可采用较多的特征来拒除与人脸相似的候选窗口,从而保证了较低的误检率。
在进行人脸检测时,将检测到的图像与训练的样本数据进行对比,其中进行模型的训练时,需要收集大量的人脸正样本和反样本数据,通过这些数据的收集,建立本发明的样本数据库,该数据库中的正样本包含多幅人脸样本,这些样本包括不同表情、不同肤色、不同年龄的人脸,包含-20°到20°深度旋转的人脸,包含戴与不戴眼镜人脸,部分样本如图4所示。反样本数据就是大量不包含人脸的图像,包括风景图像、动物、文字等,参见图5所示的内容。在训练的时候分析所有人脸的关键特征点,确定每个正样本人脸的两眼中心、鼻尖、嘴巴中心以及下巴。根据这些标定点对各个人脸进行几何归一化,即将人脸图像的主要器官位置矫正到标准位置,减小样本间的尺度、平移和平面旋转差异,然后根据器官位置剪裁出人脸区域成为人脸样本,使人脸样本尽量少地引入背景干扰,且不同人脸样本的器官位置具有一致性。在进行人脸检测的过程中,也需要对检测到的人脸作出器官位置的确定,以进行人脸的几何归一化。
参考图6a~图6d所示的内容,表示了一幅标准人脸图像对各个人脸样本进行几何归一化和人脸区域的裁剪过程首先确定前面提供的检测窗口尺度m×n为20×20,接着获取一幅标准的正面人脸图像,标准图像中两眼的y坐标一致,人脸也完全对称,如图6a,标定该图像的五个关键特征点。根据该图像中双眼的距离和位置确定裁剪的正方形人脸区域的位置。设两眼的距离为r,两眼连线的中心点为(xcenter,ycenter),采集矩形的长宽设为2r,即两倍双眼间距,则矩形裁剪区域的坐标(xleft,ytop,xright,ybottom)为xleftytopxrightybittom=xcenter-rytop-0.5rxcemter+rybottom+1.5r---(1)]]>将裁剪的人脸区域归一化到20×20的尺寸,如图6b,并获取归一化后五个标定点的坐标[xstad(i),ystad(i)],i=0,1,2,3,4。
任意给定原始人脸样本和标定的五个特征点[xlabel(i),ylabel(i)],i=0,1,2,3,4,如图6c,计算这五个点与标准图像归一化后五点坐标间的仿射变换系数。在变换过程中应该保证各个人脸样本总的形状不变,即长脸仍应该是长脸,短脸仍应该是短脸,这样检测算法就可以检测不同类型的人脸,因此仿射变换式中不能加入人脸各个方向的拉伸变换,我们仅考虑旋转和整体缩放两个变换,由此可以确定仿射变换公式为xlabel(i)ylabel(i)=scosθ-ssinθssinθscosθxstad(i)ystad(i)ab=c-dadcbxstad(i)ystad(i)1,i=0,1,2,3,4---(2)]]>采用最小二乘法可以获取上式中的变换参数(a,b,c,d)。
设裁剪后的人脸图像为I,该图像尺寸为20×20,则由仿射变换系数可以计算该图像中任意一点(x,y)到原始样本中对应点坐标(xori,yori)。
xoriyori=c-dadcbxy1---(3)]]>为消除噪声的影响,裁剪后的图像中(x,y)的像素值设为对应点(xori,yori)邻域范围内所有点像素值的均值。由此可以获取I中所有点的像素值,如图6d。
在进行检测的过程中,由于外界光照、成像设备等因素可能导致人脸图像亮度或对比度异常,出现强阴影或反光等情况,另外不同人种的肤色间也存在这差异,因此需要对几何归一化后的人脸样本进行灰度均衡化处理,改善其灰度分布,增强模式间的一致性。由于在人脸检测过程中,每一个搜索窗口都需要进行灰度均衡化处理,因此不能采用计算较复杂的方法进行灰度归一化。本发明采用可用快速算法实现的图像灰度均值、方差归一化进行样本的灰度均衡化。另外,受不同方向特别是侧面光照的影响,实际场景中左右两边人脸的亮度经常存在着明显的差异。因此本发明对两侧人脸灰度分别进行归一化,使人脸左右半边灰度的均值和方差都等于一个设定的标准值。图7给出了部分经过两侧归一化处理后的人脸图像。
为增强分类器对人脸一定角度的旋转和尺寸变化的检测鲁棒性,本发明对每个样本进行镜像变换、旋转±20°角度、尺寸放大1.1倍,如图8。每个样本扩充为五个样本,如此组成了AdaBoost训练的正样本集。
反样本数据则在AdaBoost的每层训练过程中到反样本图像库中随机选取。先随机确定反样本图像的序号,随机确定反样本的尺寸和位置,接着到该序号对应图像中裁剪出对应的区域,将裁剪图像归一化到20×20的尺寸,得到一个反样本,图9是部分反样本数据。
本发明在进行特征计算的时候采用了特征提取方法,在本实施例中使用了七组微特征,来有效地表达人脸模式的结构特点。图10给出了20×20图像中所有的微特征结构,计算图像中对应黑色区域和白色区域内像素灰度均值的差值得到特征。前面六组微特征中黑色矩形和白色矩形的大小保持一致,而第七组微特征中白色矩形的长宽是黑色矩形的三倍。各组微特征中黑色矩形或者白色矩形的长、宽可以任意选择,即每个矩形的尺寸可选1到20的任意数值。各组微特征中中心点的位置也可任意选择,因此理论上在20×20图像中可以获取20×20×20×20×7=1120000个特征。考虑到很多组特征中黑色或者白色区域已经到了20×20图像外面,对这类特征我们忽略不计。因此有效的特征数为89199。
在人脸检测过程中需要不断的计算微特征,并将微特征输入到各层AdaBoost强分类器中进行判决。因此微特征计算效率就决定了人脸检测算法的效率。可以利用整幅图像的积分图和平方积分图快速得到图像中任意尺度、任意位置的一种微结构特征,从而为人脸实时检测系统的实现提供了可能,而且采用这种方法无需对抽取的各个20×20窗口的所有像素值进行灰度归一化,只需结合20×20窗口左右半边的灰度均值和方差进行微结构特征的归一化。
如图11所示,是AdaBoost算法训练流程中第k层分类器的训练过程。首先将所有归一化后的正样本人脸数据输入到前K-1层已经训练好的分类器中,将通过这些分类器的正样本输入到第k层分类器的训练模块中。再到前面提到的5400幅反样本图像中随机选择反样本,将各个反样本也输入到前K-1层分类器中,将通过这K-1层分类器的样本作为第k层分类器的训练模块的输入反样本。在训练过程中我们会保证每层分类器不会淘汰或淘汰非常少的正样本人脸。因此最后输入到训练模块中的正样本基本保持在一定的数量。为获取较好的分类性能,且训练效率不至过低,本发明选择与正样本数量相当的反样本。因此当随机选择的反样本数达到正样本相当的数量时停止反样本的选取,开始第k层分类器的训练。
AdaBoost的强分类器由基于单个特征的弱分类器组成,即每个弱分类器对应一个微特征。本发明的弱分类器定义为 (4)其中x是20×20的图像窗口,gj(x)表示图像在第j个特征下的特征值,θi是第j个特征对应的判决阈值,hj(x)表示图像在第j个特征下的判决输出。上式为每个弱分类器定义了一个微特征j和阈值θj,判决方式有三种可能,即根据输入的微特征gj(x)是大于该阈值,还是小于该阈值,还是绝对值小于该阈值决定判决输出是1还是0。每个弱分类器只能选一种判决可能,在训练过程中可根据所有的正反样本对当前微特征进行处理,分别获取三种判决对应的阈值及训练样本集上的分类错误率,将错误率最小的方式作为当前弱分类器的判决方式。
接着对每层强分类器进行训练,而训练过程实际上就是获取各个弱分类器对应的微特征序号的过程,从而使各弱分类器在训练集上总的分类能力最强。我们设定每层分类器包含的弱分类器固定,设为T,且一个微特征只能出现一次。第一个分类器对应的微特征在后面的训练过程中将不考虑。下面列出了算法的训练流程 给定包含n个样本的训练集{(xi,yi)},i=0,1,...,n-1{()},yi=0或1,表示对应的输入样本xi是人脸样本还是非人脸样本,其中人脸样本数量为m,非人脸样本数量为1; 选择误分类风险倍数c,表示训练样本分类错误的风险大小,则对于人脸样本Ci=2cm·(c+1),]]>对非人脸样本Ci=2l·(c+1),]]>初始每个样本的权重W0(i)=CiΣjCj,]]>c越大,则表示正样本分类错误的风险越大,在训练分类器就应该尽量保证正样本的分类错误率尽可能的小; 迭代次数t=0,1,....T-1(T即为希望选择的弱分类器的个数)(1)对每个特征j,利用单个特征训练分类器hj,根据训练样本集的权值Wt得到最优的阈值参数,使得hj的错误率εj最小ϵj=Σi=on-1Wt(i)|hj(xi)-yi|;]]>(2)得到错误率最小的弱分类器作为当前层强分类器的第t个弱分类器ht,对应的特征序号为ft,对应的错误率为εt;(3)计算参数αt=ln(1-ϵtϵt),]]>βt=ϵt1-ϵt;]]>(4)更新所有样本的权重Wt+1(i)=Wt(i)βt1-eiZt,]]>其中ei=0表示当前弱分类器正确识别样本xi,反之则ei=1,Zi是归一化因子,使更新的权重之和等于1 输出最后的强分类器 强分类器输出为1表示输入样本x通过该层强分类器,否则认为输入样本是非人脸。
每层强分类器对正样本的分类错误率要尽可能的低,对单层强分类器而言,c越大,正样本的初始权重越大,反样本的初始权重越小,训练算法为降低各个弱分类器的错误率εt,会尽可能保证权重大的样本分类正确,因此c越大,正样本的分类错误率就越小,反样本的分类错误率就越高,因此我们在训练过程采用手动调节参数c的方法,使各层强分类器对训练正样本的分类错误率非常小,一般要小于0.05%。而对单层分类器而言,我们对反样本的分类正确率即虚警率则没有明确的要求。因为人脸检测算法由多个分类器级联而成,每层的虚警率并不需要太低,而数十层的虚警率相乘得到的总虚警率就可以非常小,如果每层的正样本错误率都小于0.05%,总的正确率仍可达到99%,这样就可保证算法可以检测各种类型的训练样本,又训练样本已经包括了各种类型、多个方向、多个标准和姿态的人脸,因此最后实现的人脸检测模型可以检测加入多类干扰的正面人脸样本。
另外,单层强分类器的弱分类器数T也需要仔细调整。T越大,弱分类器数量越多,虚警率一般越小;由于将各个候选人脸窗口输入到强分类器中时,需要先计算该层强分类器对应的T个微特征,因此T越大也意味着该层强分类器的计算效率偏高。我们在训练过程中需要根据虚警率不断调节各层分类器T的大小,在虚警率与计算效率间寻找折衷,原则是每层分类器的虚警率要小,同时环能太大,计算效率要比较高。
在本发明的人脸检测中,采用粗细两级人脸检测算法对检测到的人脸进行检测验证;以下结合具体实施例进行说明由于20×20图像的微特征数达到了89199,这意味着在每次弱分类器的训练过程中都需要从89199特征中搜索出最佳的特征,这个过程是非常耗时的。为了提高训练算法的效率,同时也为了提高检测算法的性能,本发明提出的粗细两级人脸检测算法,将人脸检测过程分两级实现,粗检测搜索的人脸窗口尺寸固定为10×10,细检测搜索的人脸窗口尺寸才是20×20。在检测过程中我们同样获取不同尺度的图像,接着对各个尺度图像的分辨率再减半,搜索大小为10×10的人脸候选窗口,将各个窗口输入到粗检测的各层强分类器中,计算各层强分类器的微特征,并进行判决,淘汰非人脸窗口,最后剩下少数候选人脸窗口输入到细检测中;将通过粗检测的10×10窗口扩为20×20窗口,进行细检测,到原来的分辨率未减半的尺度图像中继续搜索这些候选窗口,确定最终的人脸窗口。同样,训练过程也分为两部分,先训练粗检测模型,再训练细检测模型。
将训练集中所有的人脸正样本分辨率再减半,得到10×10的粗检测人脸样本。而10×10人脸样本总的微特征数仅为5676,这样粗检测模型的训练效率就远高于细检测模型的效率。另外10×10图像中人脸各个微特征的计算效率也高于20×20图像中微特征的效率,因此采用这种两级检测方法也可以大大提高人脸检测的速度。
任意输入一幅图像,为检测该图像中一定尺度范围的人脸,我们分尺度对该图像进行缩放。例如,如果要检测320×240图像中尺度从20×20到240×240的人脸,我们需要在多个尺度缩小图像。对粗检测而言,最小缩小倍数应为2,最大缩小倍数为24;对细检测而言,最小缩小倍数为1,最大缩小倍数为12。如果将相邻两尺度的缩小倍数的比例设为1.25,则图像的缩小倍数分别为(对粗检测而言)2、2.5、3.13、3.91、4.88、6.10、7.63、9.54、11.9、14.9、18.6、23.3,共12个尺度。
将所有尺度图像中通过粗细两级检测的正方形框反变换到原始输入图像的尺度和位置,得到原始图像中人脸的候选位置和候选尺寸。一般情况下,一张真实人脸往往会在不同的尺度下和相邻的位置处检测出多次,而虚警的出现往往比较孤立,图12a是一个示例。此时需要对检测结果进行后处理,将相邻位置的人脸框合并,如果两个候选人脸框的大小差异和位置差异都非常小,或者这两个人脸框重叠面积非常大,就可以将这两个框合二为一,合并框的位置是这两个框位置的均值,大小也是这两个框大小的均值。最后剩下少数几个人脸框,每个框都由一定数量的候选框合并而成,这个数值是一个非常重要的参数,决定了检测的人脸框是否是一个真实的人脸。本文设定一个阈值,如果合并框数大于这个阈值,则人脸当前位置是一个真实人脸,否则淘汰该候选框。图12b是合并后的结果。
前面提到的人脸检测算法仅能检测正面人脸,能容忍的人脸深度变化、平面旋转角度都非常有限。另外,为获取一幅图像中的人脸,人脸检测算法需要对不同尺度的缩放图像进行大量搜索,尽管算法可以在数十毫秒内实现人脸的检测,但这个过程仍旧是非常耗时和耗计算量的。如果对实时输入的视频序列的每帧图像都进行人脸检测,则整个算法的计算量将非常惊人。人脸跟踪另外一个重要的目的就是实现某个人脸的持续跟踪,确认长时间跟踪的目标是同一个人脸,这样后续的人脸处理算法如人脸识别、表情识别等可以综合视频中多帧识别结果,大大提高识别算法的精度。
人脸的跟踪是在人脸检测的基础上实现。先对视频序列的输入图像进行人脸检测,为了降低程序CPU的占有率,可以每隔几帧检测一次人脸。检测到人脸后在后续两帧中对检测人脸进行跟踪和验证,留下验证通过的人脸中最大的一个,持续跟踪,处理人脸的各种姿态变换。考虑到人脸面部的肤色有着非常鲜明的特征,与头发、衣服、拍摄场景的差异都非常大,因此本发明也采用肤色特征实现人脸的跟踪,而肤色特征的获取通过颜色直方图特征实现。如图13,本文计算圆形区域内的颜色直方图,并利用第k-1帧的人脸坐标、直方图特征到第k帧图像中进行搜索,获取第k帧的人脸位置。
本发明在进行人脸跟踪的时候,采用了基于Mean shift和直方图特征的物体跟踪算法,该算法正是采用直方图特征实现某个颜色目标的快速跟踪,算法的处理效率非常高,该算法与人脸检测结合起来,实现视频序列中人脸的持续检测与跟踪。
本发明所述的方法,在计算人脸颜色直方图特征时,可将R、G、B每个颜色空间量化为8级,总的颜色空间量化为8×8×8级,这样每次计算的直方图特征为512维。人脸区域有三个参数描述(xcen,ycen,rad),分别表示人脸中心点的xy坐标、圆形人脸的半径,如图13a,当然在实际应用的时候也可以采用其他的空间量化级实现。当一幅新的图像输入时,跟踪算法根据前一帧的人脸位置大小以及直方图特征计算当前帧人脸的新位置,并更新人脸的半径,反映人脸大小的变换。
本发明在跟踪的过程中引入了长期直方图和短期直方图两个局部特征,其中长期直方图是前面数十帧直方图的均值,反映了人脸相当长时间内肤色的变化规律,而短期直方图则是前面数帧直方图的均值,反映的则是人脸短时间内肤色的变化。在搜索当前帧人脸的位置时,采用的匹配直方图模板等于长期直方图特征与短期直方图特征的均值,这样即使当前帧人脸否认姿态、光照、表情等变化剧烈,其肤色特征与直方图模板的差异也不会太大,采用Mean shift算法(运动跟踪算法)就可快速获取人脸的位置。
为保证跟踪目标一定是人脸,并确保半径rad可准确描述人脸尺寸的变化,本发明在人脸跟踪时加入了跟踪区域的验证,即每隔数帧在跟踪区域进行正面人脸检测,此时人脸的位置与尺寸已经近似知道,因此不需要搜索整幅图像,只需要搜索少数位置和少数尺度即可。如果在跟踪区域检测到正面人脸,系统再根据检测人脸的大小和位置更新跟踪参数,包括人脸的中心、半径和直方图特征。另外,如果连续数百帧都跟踪到目标,但在跟踪区域都没有检测到正面人脸,此时可以认为目标不一定是人脸,停止跟踪。在后续帧中对输入图像进行穷搜索,重新检测人脸并跟踪。该方法可以用于人脸识别、表情识别、人脸合成等方法中去,以便进行实时检测和跟踪。
本发明的人脸检测算法可准确检测-20°到20°平面旋转人脸、-20°到20°左右深度旋转人脸,可以检测一定范围的抬头和低头人脸,可以检测不同表情人脸,戴与不戴眼镜对检测效果没有影响。图14是一组人脸检测结果,其中的图14a中每个人脸图像包括多个候选框和一个处理后的检测结果框,其中线141所示的框表示后处理后的检测结果,线142所示的框表示的为一个候选框,在本图中包含了多个候选框;图14b-d中的框是进行后处理后的输出结果,图14c-d中人脸左右两侧光照差异较大,但本发明在方法中采用了左右灰度归一化处理的方法,提高了检测算法抗光照干扰的能力,实现了这类人脸的准确检测,图15是一组跟踪结果。
本发明上述的方法可由视频序列中人脸的实时检测与持续跟踪系统实现,参考图16的内容,该系统包括人脸检测装置1与人脸跟踪装置2,人脸检测装置1包括人脸处理单元11、微特征计算单元12及分类器单元14;所述的人脸处理单元11接收到图像信息,对接收到的图像进行缩放,穷举搜索缩放图像中的候选人脸窗口,计算窗口图像左右半边的均值和方差,然后将其传送给所述的微特征计算单元12,所述的特征计算单元12根据AdaBoost算法计算出微结构特征,并将其传送给所述的分类器单元14进行判决,分类器单元14进行判决后将其传送给人脸跟踪装置2;所述的人脸跟踪装置2包括物体跟踪单元21和跟踪区域验证单元22,物体跟踪单元21采用直方图特征进行计算,实现对图像跟踪,跟踪区域验证单元22对跟踪的图像进行区域检测,对跟踪的人脸进行验证。
在本发明所述的系统中,该人脸检测装置1的分类器单元14还包含粗细两级人脸检测单元13,接收微结构特征,进行粗细两级检测和后处理,确定人脸窗口,再进行跟踪。这种系统的构成框图可参见图17所示的内容。
本发明实现了实时输入的视频序列中人脸的检测与持续跟踪。该算法采用基于AdaBoost统计分层分类器的人脸检测方法,实现正面直立人脸的实时检测,并可检测不同场景不同表情的人脸,容忍一定范围和一定角度的姿态、旋转变化,并且采用基于Mean shift和直方图特征的人脸跟踪方法,实现了检测人脸的实时跟踪,跟踪算法速度块,CPU占有率低,且不受人脸姿态的影响,侧面、旋转人脸同样可以跟踪。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换等,均应包含在本发明的保护范围之内。
权利要求
1.一种视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,包括以下步骤输入视频图像;采用实时人脸检测算法对输入的视频图像进行人脸检测;再采用粗细两级人脸检测算法对检测到的人脸进行检测验证;采用物体跟踪算法跟踪验证后的人脸;通过对跟踪区域的验证对跟踪的人脸进行验证处理。
2.如权利要求1所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,所述的实时人脸检测算法是基于AdaBoost算法由多级分类器实现。
3.如权利要求2所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,所述的人脸检测包含以下步骤接收到的图像信息,进行图像缩放,搜索到人脸窗口;对检测到的人脸进行特征点定位,对人脸进行几何归一化;对人脸进行灰度均衡化处理;对人脸进行旋转缩放;得到检测的标准人脸图像。
4.如权利要求3所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,在接收到的图像中检测人脸图像,包括以下步骤对输入的每帧图像进行搜索,如在某帧图像中检测到一个或多个人脸,在接下来的两帧图像中跟踪这些人脸,并对后续两帧图像中跟踪的人脸进行检测和验证;在某位置连续三帧检测到人脸后,确定人脸存在,选择其中一个开始跟踪。
5.如权利要求3所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,对人脸进行灰度均衡化处理后,还包括对人脸两侧灰度分别归一化的步骤,使人脸左右半边灰度的均值和方差相等。
6.如权利要求3所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,所述的人脸旋转缩放后还包括微特征计算以及分类器判决的步骤,该步骤是采用处理后的人脸图像的积分图和平方积分图得到图像中任意尺度、位置的微结构特征。
7.如权利要求4所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,所述的对检测到的人脸进行验证的步骤包括在后续帧中持续跟踪选择的人脸,如相邻帧中后一帧与前一帧的跟踪结果相似度低于设定值,停止跟踪;前一目标停止跟踪后,在后续图像中重新进行人脸检测,直到找到新的人脸,验证后进行跟踪步骤。
8.如权利要求1所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,所述的粗细两级人脸检测算法是将人脸的检测验证分两级实现,粗检测的人脸窗口的分辨率小于细检测的人脸窗口的分辨率。
9.如权利要求1所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,在进行跟踪验证后的人脸步骤中,所述的物体跟踪算法是基于Mean shift和直方图特征做出。
10.如权利要求9所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,所述的直方图包括长期直方图、短期直方图以及颜色直方图。
11.如权利要求9所述的视频序列中人脸的实时检测与持续跟踪的方法,其特征在于,对跟踪区域验证的步骤是指每隔数帧在跟踪区域进行人脸检测。
12.一种视频序列中人脸的实时检测与持续跟踪系统,其特征在于,包括人脸检测装置与人脸跟踪装置,人脸检测装置包括人脸处理单元、微特征计算单元及分类器单元;所述的人脸处理单元接收到图像信息,对接收到的图像进行缩放,穷举搜索候选人脸窗口,计算窗口灰度的均值和方差;所述的特征计算单元根据AdaBoost算法计算出各个窗口的微结构特征,并将其传送给所述的分类器单元进行判决,分类器单元进行判决后将其传送给人脸跟踪装置;所述的人脸跟踪装置包括物体跟踪单元和跟踪区域验证单元,物体跟踪单元采用直方图特征进行计算,实现对图像跟踪,跟踪区域验证单元对跟踪的图像进行区域检测,对跟踪的人脸进行验证。
13.如权利要求12所述的视频序列中人脸的实时检测与持续跟踪系统,其特征在于,所述的人脸检测装置的分类器单元还包含粗细两级人脸检测单元,接收微结构特征,进行粗细两级检测,确定人脸窗口。
14.如权利要求12所述的视频序列中人脸的实时检测与持续跟踪系统,其特征在于,所述的直方图包括长期直方图、短期直方图以及颜色直方图。
全文摘要
本发明提出一种视频序列中人脸的实时检测与持续跟踪的方法及系统,该方法包括以下步骤输入视频图像;采用实时人脸检测算法对输入的视频图像进行人脸检测;再采用粗细两级人脸检测算法对检测到的人脸进行检测验证;采用物体跟踪算法跟踪验证后的人脸;通过对跟踪区域的验证对跟踪的人脸进行验证处理。本发明采用基于AdaBoost统计分层分类器的人脸检测方法,实现正面直立人脸的实时检测,并结合基于Mean shift和直方图特征的人脸跟踪方法,实现了人脸的实时检测和跟踪,本发明具有检测及跟踪迅速、实时性强的优点。
文档编号G06K9/32GK1794264SQ200510135668
公开日2006年6月28日 申请日期2005年12月31日 优先权日2005年12月31日
发明者黄英, 王浩, 俞青 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1