一种人脸跟踪方法、装置和智能终端与流程

文档序号:14685896发布日期:2018-06-14 21:57
本发明涉及计算机视觉
技术领域
,具体涉及一种人脸跟踪方法、装置和智能终端。
背景技术
:人脸跟踪是在人脸识别的基础上确定目标人脸运动轨迹的过程。人脸识别通常又可分为两部分,一是对图像进行人脸检测,二是对检测到的人脸区域进行特定人脸判定,即首先要在输入图像中检测出人脸,然后再将检测到的人脸与人脸库中的样本进行比对以识别出目标人脸。在识别出目标人脸后,如何对人脸的运动轨迹进行有效的跟踪是人脸跟踪需要解决的问题。现有技术,人脸跟踪广泛应用的是基于肤色特征的Camshift(连续自适应均值移动,ContinuouslyAdaptiveMeanShift)算法,Camshift算法是均值移动(MeanShift)算法的改进,该算法的基本思想是将视频图像的所有帧作MeanShift运算,并将上一帧的计算结果(即搜索窗口的中心和大小)作为下一帧MeanShift算法的搜索窗口的初始值,如此迭代下去。Camshift算法能够根据当前帧的跟踪结果自适应地调整搜索窗口的位置和大小,实现人脸实时跟踪。但是,Camshift算法采用肤色模型跟踪,对环境、背景等因素依赖大且抗干扰能力差,跟踪精度较低。技术实现要素:本发明提供了一种人脸跟踪方法、装置和智能终端,以解决现有的人脸跟踪算法存在的跟踪精度低的问题。根据本发明的一个方面,提供了一种人脸跟踪方法,该方法包括:采集视频流中的一帧图像作为参考帧并对该参考帧进行人脸检测和人脸识别,识别出目标人脸;根据识别出的目标人脸,确定参考帧中包括目标人脸的待跟踪窗口的位置,并提取参考帧待跟踪窗口中的边缘特征点;根据参考帧待跟踪窗口的位置,确定视频流中当前帧图像上待跟踪窗口的初始位置,并提取当前帧待跟踪窗口中的边缘特征点;计算参考帧的边缘特征点与当前帧的边缘特征点的相对位移;利用相对位移对当前帧待跟踪窗口的初始位置进行调整,获得视频流中目标人脸的活动轨迹,实现人脸跟踪。根据本发明的另一个方面,提供了一种人脸跟踪装置,该装置包括:人脸识别模块,用于采集视频流中的一帧图像作为参考帧并对该参考帧进行人脸检测和人脸识别,识别出目标人脸;参考帧窗口位置确定模块,用于根据识别出的目标人脸,确定参考帧中包括目标人脸的待跟踪窗口的位置,并提取参考帧待跟踪窗口中的边缘特征点;当前帧窗口位置确定模块,用于根据参考帧待跟踪窗口的位置,确定视频流中当前帧图像上待跟踪窗口的初始位置,并提取当前帧待跟踪窗口中的边缘特征点;相对位移计算模块,用于计算参考帧的边缘特征点与当前帧的边缘特征点的相对位移;窗口位置调整模块,用于利用相对位移对当前帧待跟踪窗口的初始位置进行调整,获得视频流中目标人脸的活动轨迹,实现人脸跟踪。根据本发明又一个方面,提供了一种智能终端,智能终端包括:如本发明另一个方面的人脸跟踪装置;该智能终端利用人脸跟踪装置检测人脸运动状态,且该智能终端根据定位到的人脸运动状态自适应调整至少部分可移动部件的位置或至少部分部件所执行的功能。本发明的有益效果是:与现有的基于肤色模型的Camshift算法等现有技术相比,本发明技术方案提供的这种人脸跟踪方法和装置,基于识别出的目标人脸的边缘特征点位移进行跟踪,通过利用分布在目标人脸的边缘特征点的运动特征(即位移)信息来确定下一帧图像中目标人脸的区域,降低待跟踪目标人脸的运动以及噪声对人脸跟踪检测的影响,从而提高了人脸跟踪的正确率和跟踪精度。另外,本发明还提供了一种智能终端,该智能终端利用人脸跟踪装置检测人脸运动状态,且该智能终端根据定位到的人脸运动状态自适应调整至少部分可移动部件的位置或至少部分部件所执行的功能。可以针对同一个目标人脸实现不间断的跟踪,提高了产品的用户体验和竞争力。附图说明图1是本发明一个实施例的一种人脸跟踪方法的流程示意图;图2是本发明另一个实施例的一种人脸跟踪应用的实现流程图;图3是本发明一个实施例的反向跟踪验证的原理示意图;图4是本发明一个实施例的待跟踪窗口以及目标人脸边缘特征点的示意图;图5是本发明一个实施例的一种人脸跟踪装置的结构框图;图6是本发明一个实施例的一种智能终端的结构框图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。实施例一图1是本发明一个实施例的一种人脸跟踪方法的流程示意图,参见图1,该人脸跟踪方法包括如下步骤11至15:步骤11,采集视频流中的一帧图像作为参考帧并对该参考帧进行人脸检测和人脸识别,识别出目标人脸;步骤12,根据识别出的目标人脸,确定参考帧中包括目标人脸的待跟踪窗口的位置,并提取参考帧待跟踪窗口中的边缘特征点;步骤13,根据参考帧待跟踪窗口的位置,确定视频流中当前帧图像上待跟踪窗口的初始位置,并提取当前帧待跟踪窗口中的边缘特征点;这里的参考帧,是从视频流中选取的一帧,当前帧是在参考帧之后并且时间上尽量相邻的一帧。此外,本实施例视频流中图像也需要满足计算的前提条件(如,图像背景不变及光线稳定相邻两帧的边缘特征点位移远小于图像尺度)以保证图像的平移运动,以及当前帧中待跟踪窗口的初始位置与参考帧的待跟踪窗口的位置相同。如此,在确定出参考帧中待跟踪窗口的位置后,即可根据该位置确定出当前帧中待跟踪窗口的初始位置。步骤14,计算参考帧的边缘特征点与当前帧的边缘特征点的相对位移;在此,相对位移为特征点在空间中的移动量,例如,分别将目标人脸的各边缘特征点投影到与目标人脸平行的平面上,根据所述当前帧和参考帧的待跟踪窗口,构建对应的包括四个区域的平面坐标系,将待跟踪窗口中的边缘特征点投影到所述平面坐标系中,得到每个边缘特征点对应的横坐标和纵坐标值,利用参考帧的边缘特征点的坐标与当前帧的边缘特征点的坐标之间的差值得到相对位移。步骤15,利用相对位移对当前帧待跟踪窗口的初始位置进行调整,获得视频流中目标人脸的活动轨迹,实现人脸跟踪。由图1可知,本实施例的人脸跟踪方法,基于参考帧中待跟踪窗口的位置确定当前帧中待跟踪窗口的位置,并基于两帧图像中目标人脸的边缘特征点的位移,调整当前帧的待跟踪窗口位置,以降低待跟踪目标人脸的运动以及噪声对人脸跟踪检测的影响,从而提高了人脸跟踪的正确率和跟踪精度。人脸跟踪技术已经越来越多的应用到智能终端中,但是,目前人脸跟踪在智能终端上的实际应用仍然存在下列问题:(1)如何克服人脸表情、环境光线及图像集合变化产生的影响,提取有效的特征来描述人脸。(2)在目标快速移动的时候准确的跟踪,人脸在移动的时候会产生不同程度的角度变化,左右倾斜或前后转动,也会产生一定程度的表情变化。人前后移动也会令人脸在画面中的大小产生变化。如何克服这些变化,准确的定位和跟踪人脸。(3)如何通过跟踪的人脸来判定目标的运动状态。在视频流中的人脸始终处于运动状态,如何通过提取的人脸信息判定用户的运动状态,这也是人机交互领域不得不解决的问题之一。以下结合本发明的其他实施例,对本发明为了解决上述技术问题采取的技术手段进行具体说明。实施例二图2是本发明另一个实施例的一种人脸跟踪应用的实现流程图,参见图2,本实施例中将人脸跟踪方法应用到智能终端中,使得智能终端能够检测、识别出目标人脸,并实时跟踪识别出的目标人脸。本实施例通过截取视频流中的某一帧图像,利用Cascade算法对图像进行扫描检测,然后针对检测到的人脸区域进行Gabor小波变换来提取人脸特征,随后利用支持向量机(SupportVectorMachine,SVM)进行模式匹配识别,当匹配到确定目标后,采用基于特征点位移的跟踪算法对该特定目标进行跟踪。即本实施例中的人脸跟踪的流程大致为:首先,采用Cascade算法进行扫描检测人脸,其次,根据检测到的人脸区域利用Gabor小波变换提取人脸特征,最后,利用SVM来对提取的人脸特征进行识别比对。比对成功后,即可对该目标人脸进行跟踪。以下进行具体说明:步骤21,流程开始后,由(智能)终端获取视频流中的一帧图像作为参考帧;这里,智能终端中安装视频采集装置,能够实时采集图像得到视频流,从视频流中选取一帧图像(一般为彩色图像)作为参考帧,并将选取的一帧彩色图像转换为灰度图像,然后提取灰度图像的类Haar特征值。提取灰度图像的类Haar特征值时,本实施例中将简单矩形组合作为特征模板,特征模板内有白色和黑色两种矩形,并将此模板的特征值定义为白色矩形像素点的总和减去黑色矩形像素点的总和。此外,为了提高计算速度,可以采用积分图像方法。而利用积分图像提取类Haar特征可以采用现有技术,更详细的操作步骤可以参见现有技术中的相关记载,这里不再赘述。步骤22,人脸检测;人脸检测的目的是在图像或者视频中正确地找到并标记出人脸的准确位置,是实现人脸识别、跟踪等工作的重要先决条件。由于图像的复杂程度较高,仅利用单一特征信息往往不能得到准确的检测结果,需要融合多个特征信息进行检测。所以,本实施例中采用Cascade算法和肤色判别相结合的方法进行人脸检测。Cascade算法是基于类Haar特征(即矩形特征)的,然后采用Adaboost算法的级联分类器对类Haar特征进行选择判别。即本实施例中对参考帧图像进行人脸检测包括:利用训练好的Adaboost级联分类器对灰度图像的类Haar特征值进行选择,并利用选择的类Haar特征值对灰度图像进行检测得到初始人脸区域。基于类Haar特征的Adaboost检测算法,对系统自身的要求较低,运算速度快。另外,进一步降低误检率,提高人脸跟踪的精度,可以利用预先构建的肤色模型对检测出的初始人脸区域进行肤色判别,得到标准人脸区域。步骤23,人脸识别;在对图像完成人脸检测后,需要对已检测到的人脸进行比对识别,以确认是否为目标人脸。人脸识别主要包括特征提取和分类两部分,本实施例中采用Gabor小波变换来提取人脸特征,并采用SVM特征向量机来进行分类。具体的,对步骤22中得到的标准人脸区域,利用设定的Gabor滤波器提取人脸特征,然后将Gabor滤波器提取出的人脸特征送入训练好的SVM中进行匹配识别,以识别出目标人脸。其中,Gabor小波变换可以取8个方向,每个方向下5个频率的一共40组特征值来描述人脸特征。然后,对提取的Gabor特征利用SVM进行匹配识别。接下来,就可以针对SVM匹配成功的人脸区域进行边缘特征点(如人脸区域的眼角、鼻梁、嘴角等特征点)提取,并对这些特征点的位置进行跟踪。相比以往人脸识别的技术,本实施例中Gabor小波变换选取了8个不同方向下的5个不同频率的总计40个图像纹理信息,更加全面的描述了图像纹理特征,可以有效的消除光照、表情等因素对人脸识别的影响。人脸跟踪本实施例中,人脸跟踪包括步骤24,根据识别出的目标人脸确定待跟踪窗口的位置,并进行边缘特征点提取;步骤25,获取视频流中当前帧图像,步骤26,确定当前帧的待跟踪窗口初始位置,并进行边缘特征点提取;步骤27计算边缘特征点之间的相对位移。下面结合步骤24至步骤27具体说明人脸跟踪流程:步骤24和步骤26中出现的待跟踪窗口,待跟踪窗口是通过步骤23人脸识别步骤中识别出的目标人脸来确定的,具体的,待跟踪窗口是包括标准人脸区域一个矩形框。人脸跟踪的实现是通过两帧图像的SSD(SumofSquaredintensityDifferences,灰度差平方和)来计算待跟踪窗口出现在下一帧的位置,这里所说的下一帧是两帧中的第二帧,两帧图像不是任意的两帧,而是满足计算的前提条件(如图像背景不变及光线稳定,保证相邻两帧的边缘特征点位移应远小于图像尺度),并且时间上尽量相近的两帧。具体的,基于边缘特征点的人脸跟踪算法,是以待跟踪窗口W(W中包括识别出的人脸)在视频图像帧间SSD作为度量的跟踪算法。其中,边缘特征点是指人脸的边缘特征(如眼角、嘴边等)对应的像素点,这些特征对应的像素点在两帧图像间会出现像素值突变。需要强调的是,本实施例的基于两帧图像的SSD确定位移的人脸跟踪需保证:亮度恒定,时间连续或者运动幅度相对较小,以及空间一致,临近点有相似运动,保持相邻。满足以上前提条件,可保证计算过程不受亮度变化影响,在待跟踪窗口间进行仿射变换,一般在这个过程中假设待跟踪窗口中所有边缘特征点的坐标偏移量相等。用偏移变量d来表示。因此,本实施例中两帧图像之间是平移运动,而不适用于图像翻转、折叠、扭曲等特征点运动特性不同的情况。对于灰度图像,一个包含了特征纹理信息(即边缘特征)的待跟踪窗口W,在t时刻图像帧I(x,y,t)和在t+τ时刻图像帧I(x,y,t+τ)中的位置满足下列公式:I(x,y,t+τ)=I(x-Δx,y-Δy,t)公式2.1即,在I(x,y,t+τ)中的每个像素点,都可以由I(x,y,t)中相应窗口的像素点平移d=(Δx,Δy)得到。求出位移d,即可实现对两帧图像的特定目标的跟踪。假设t+τ时刻的待跟踪窗口为B(X)=B(x,y,t+τ),其中X=(x,y)为视口坐标。t时刻的待跟踪窗口为A(X-d)=A(x-Δx,y-Δy,t)。考虑一般情况,有B(X)=A(X-d)+n(X)公式2.2其中,n(X)为在时间τ内由于光照条件变化产生的噪声,将n(X)平方并在整个窗口上积分,就得到了窗口图像的SSD:ε=∫∫vn(X)2ω(X)dX=∫∫v[A(X-d)-B(X)]2ω(X)dX公式2.3其中,X=[x,y]T,d=[dx,dy]T,ω(X)通常可取为1。如果强调中心部分特征点的作用,ω(X)可以采用高斯分布函数。当d为一个和X比起来可忽略的小量时,将A(X-d)进行泰勒展开,去除高次项,仅保留展开项的第一项,以降低计算量,得到下列算式:A(X-d)=A(X)-g·d公式2.4将公式2.4代入公式2.3,并对公式2.3的两边同时对d求导之后取零,可以得到:∂ϵ∂d=∫∫v[A(X)-B(X)-gTd]×gω(X)dX=0]]>公式2.5此时ε取得极小值,公式2.5可变换为下面公式2.6:(∫∫vggTωdX)d=∫∫v[A(X)-B(X)]gωdX公式2.6若令Z=∫∫vg(X)gT(X)dX=∫∫vgx2gxgygxgygy2ω(X)dX=GxxGxyGxyGyy]]>e=∫∫v[A(X)-B(X)]g(X)ω(X)dX则,公式2.6可以简写为:Zd=e,对于每两帧图像,解上式Zd=e,即可以求出待跟踪窗口中的边缘特征点的相对位移d=(Δx,Δy)。至此,得到了边缘特征点的相对位移d,然后根据相对位移调整待跟踪窗口在下一帧的位置,即可得到目标人脸的运动轨迹,实现人脸跟踪。由上可知,本实施例的人脸跟踪通过选取视频流中的某一帧图像作为参考帧,利用Cascade算法进行扫描检测,然后针对检测到的人脸区域进行Gabor小波变换来提取人脸特征,随后利用SVM进行模式匹配识别,当匹配到确定目标人脸后,采用基于边缘特征点位移的跟踪算法确定待跟踪窗口在当前帧的位置,实现对该目标人脸的跟踪。克服了人脸表情、环境光线及图像集合变化产生的影响,并提取到有效的边缘特征来描述人脸,提高了人脸跟踪的精度。实施例三在实际跟踪过程中,在目标快速移动的时候准确的跟踪,人脸在移动的时候会产生不同程度的角度变化,而左右倾斜或前后转动时,人脸会产生一定程度的表情变化,人前后移动也会令人脸在画面中的大小产生变化。如遇到边缘特征点被遮挡的情况,系统有可能将其他相似的边缘特征点误认为是该特征点而导致跟踪产生错误或跟踪失败的情况。为解决这一问题,本发明的一个实施例中采用逆时反向跟踪的手段来验证跟踪的准确性。以下结合本实施例对人脸跟踪的反向验证进行重点说明,其他内容参见本发明的其他实施例。图3是本发明一个实施例的反向跟踪验证的原理示意图,本实施例中,对调整后的当前帧待跟踪窗口中的每个边缘特征点进行验证;当验证成功时,确认在当前帧成功跟踪到该边缘特征点,在后续跟踪过程中继续对该边缘特征点进行跟踪;当验证失败时,确认在当前帧中对该边缘特征点跟踪失败,舍弃该边缘特征点,不再对该边缘特征点进行跟踪。参见图3,图3示出的是跟踪错误的情况。在人脸跟踪过程中,视频流中图像是按照顺时针排列的,即从前一帧跟踪到当前帧,并从当前帧跟踪到后一帧。但是在逆时验证时,视频流中的图像相当于按照逆时针排列,这样,逆时验证时的第一帧就可以是顺时跟踪到的最后一帧。反向跟踪验证即对于顺时跟踪到的一个t+k(k>1)时刻的图像It+k(当前帧)中的一个边缘特征点Xt+k,向前回溯跟踪至t+1时刻的图像It+1,并继续向前回溯跟踪至t时刻(参考帧),计算出t时刻边缘特征点Xt+k对应的位置为Yt,若Yt与t时刻时记录的位置Xt没有重合(表示跟踪错误),那么在从t+k时刻向后一帧顺时跟踪过程中,系统将抛弃该边缘特征点并利用验证通过的那些边缘特征点继续人脸跟踪。通过对It+k上的每个边缘特征点进行逆时方向跟踪计算和验证,即可判断出跟踪错误的所有边缘特征点。经实验结果证实,采用逆时验证的手段可以确保人脸跟踪的正确性。具体实现时,是将当前帧待跟踪窗口中的边缘特征点的位置作为验证起始位置;利用验证起始位置及当前帧与参考帧之间边缘特征点的相对位移,确定边缘特征点在参考帧的待跟踪窗口,并在待跟踪窗口内搜索边缘特征点,得到边缘特征点在参考帧的位置;将验证出的边缘特征点在参考帧的位置与预先获取的参考帧图像中边缘特征点的位置进行比较,若比较结果相同,则验证成功;若比较结果不同,则验证失败。由上可知,在人脸跟踪过程中,针对人脸运动可能存在的边缘特征被遮挡导致跟踪错误的问题,通过对跟踪到的边缘特征点进行验证,并将跟踪错误的边缘特征点及时排除,确保利用跟踪正确的边缘特征点进行后续顺时跟踪,克服了由边缘特征点的误判导致跟踪失败的问题,进一步提高了人脸跟踪的精度。实施例四本发明的这种基于边缘特征点的位移的人脸跟踪方法,还可以通过比对视频流中相邻两帧画面中同一边缘特征点的相对位置关系,判断出目标人脸的动作。这解决了在视频流中的人脸始终处于运动状态的情况,如何通过提取的人脸信息判定用户的运动状态的问题。以下结合实施例四进行具体说明:图4是本发明一个实施例的待跟踪窗口以及目标人脸边缘特征点的示意图,参见图4,目标人脸的运动主要体现在倾斜和转动。倾斜的情况下可通过边缘特征点位移得到,当人脸发生向左或向右的倾斜时,待跟踪窗口W(即图4中包括人脸的矩形框40)也会随之产生倾斜。此时,根据矩形框的四个角点(角点,是二维图像亮度变化剧烈的点或图像边缘曲线上曲率极大值的点,这些点保留了图像的重要特征)的坐标即可得出人脸倾斜的方向和大小。而转动的情况就比较复杂,人脸的转动主要包括上、下、左、右四个方向,其中又以左和右的转动为多数情况。转动时,边缘特征点的位移主要体现在间距的变化,因此,本实施例中根据边缘特征点之间的相对位移来判断人脸动作。参见图4,主要实现步骤是:对当前帧和参考帧,分别将目标人脸的各边缘特征点投影到与目标人脸平行的平面上,并监测各边缘特征点之间的间距;若相对于参考帧中边缘特征点的间距,当前帧的左半边脸的边缘特征点的间距变大且右半边脸的边缘特征点的间距变小,则确定目标人脸向右转;若相对于参考帧中边缘特征点的间距,当前帧的左半边脸的边缘特征点的间距变小且右半边脸的边缘特征点的间距变大,则确定目标人脸向左转;若相对于参考帧中边缘特征点的间距,当前帧的上半边脸的边缘特征点的间距变大且下半边脸的边缘特征点的间距变小,则确定目标人脸在抬头;若相对于参考帧中边缘特征点的间距,当前帧的上半边脸的边缘特征点的间距变小且下半边脸的边缘特征点的间距变大,则确定目标人脸在低头。如图4所示,在选定的人脸区域矩形框内,以对角线交点为中点划出四个区域41、42、43、44,构建对应的包括四个区域41、42、43、44的平面坐标系,将待跟踪窗口中的边缘特征点投影到平面坐标系中,得到每个边缘特征点401对应的横坐标和纵坐标值(图4中人脸中的各点投影至包括四个区域的平面坐标系,得到人脸中各点的坐标,当人脸转动时,坐标会发生变化);具体的,四个区域是按照每帧图像待跟踪窗口所在图形的对角线的交点为中点划分而成,包括:区域一41、区域二42、区域三43和区域四44,区域一和区域三中边缘特征点的横坐标值小于等于区域二和区域四中边缘特征点的横坐标值,区域三和区域四中边缘特征点的纵坐标值小于等于区域一和区域二中边缘特征点的纵坐标值;将投影到区域一和区域三中的边缘特征点根据横坐标X升序排列得到矩阵将投影到区域二和区域四中的边缘特征点根据横坐标X升序排成排列得到矩阵将投影到区域一和区域二中的边缘特征点根据纵坐标Y值升序排列得到矩阵将投影到区域三和区域四中的边缘特征点根据纵坐标Y值升序排列得到矩阵当判定左右转动时,对和进行计算;当判定抬头低头动作时,则对矩阵和进行计算。判定左右转动时,分别求得矩阵相邻两个边缘特征点的间距在X轴上的映射和并将其与上一帧(即参考帧)的间距相减。当区域一、三区域的所有特征点之间的距离在x轴上的投影全部减小并且区域二、四的所有特征点之间的距离在x轴上的投影全部增加时,即判定目标正在向右转;而当区域二、四的所有特征点之间的距离在x轴上的投影全部减小并且区域一、三的所有特征点之间的距离在x轴上的投影全部增加时,即判定目标正在向左转。具体的:分别计算矩阵中每相邻两个元素的间距得到相应的间距矩阵和并依次将当前帧的间距矩阵和中的每个元素与参考帧的间距矩阵中的每个元素作差,根据计算结果判断目标人脸的左转或右转动作;分别计算矩阵中每相邻两个元素的间距得到相应的间距矩阵和并依次将当前帧的间距矩阵和中的每个元素与参考帧的间距矩阵中的每个元素作差,根据计算结果判断目标人脸的抬头或低头动作。其中,当计算结果满足下列公式(1)和(2)时,确定目标人脸向右转动;公式(1)公式(2)其中,表示当前帧左半边脸的边缘特征点的间距矩阵,表示参考帧左半边脸的边缘特征点的间距矩阵表示当前帧右半边脸的边缘特征点的间距矩阵,表示参考帧右半边脸的边缘特征点的间距矩阵;当计算结果满足下列公式(3)和(4)时,确定目标人脸向左转动:公式(3)公式(4)其中,表示当前帧左半边脸的边缘特征点的间距矩阵,表示参考帧左半边脸的边缘特征点的间距矩阵表示当前帧右半边脸的边缘特征点的间距矩阵,表示参考帧右半边脸的边缘特征点的间距矩阵;根据计算结果判断目标人脸的抬头或低头动作包括:当计算结果满足下列公式(5)和(6)时,确定目标人脸在抬头:公式(5)公式(6)其中,表示当前帧上半边脸的边缘特征点的间距矩阵表示参考帧上半边脸的边缘特征点的间距矩阵表示当前帧下半边脸的边缘特征点的间距矩阵表示参考帧下半边脸的边缘特征点的间距矩阵当计算结果满足下列公式(7)和(8)时,确定目标人脸在低头:公式(7)公式(8)其中,表示当前帧上半边脸的边缘特征点的间距矩阵表示参考帧上半边脸的边缘特征点的间距矩阵表示当前帧下半边脸的边缘特征点的间距矩阵表示参考帧下半边脸的边缘特征点的间距矩阵由上描述可知,本实施例针对人脸跟踪过程中,视频流中的人脸始终处于运动状态的情况下如何实时跟踪的问题,通过对参考帧和当前帧中待跟踪窗口中的边缘特征点的间距变化判断目标人脸的运动动作,判定目标的运动状态,同时保证了人脸跟踪的准确性和精度。实施例五图5是本发明一个实施例的一种人脸跟踪装置的结构框图,参见图5,该人脸跟踪装置人脸跟踪装置50包括:人脸识别模块501,用于采集视频流中的一帧图像作为参考帧并对该参考帧进行人脸检测和人脸识别,识别出目标人脸;参考帧窗口位置确定模块502,用于根据识别出的目标人脸,确定参考帧中包括目标人脸的待跟踪窗口的位置,并提取参考帧待跟踪窗口中的边缘特征点;当前帧窗口位置确定模块503,用于根据参考帧待跟踪窗口的位置,确定视频流中当前帧图像上待跟踪窗口的初始位置,并提取当前帧待跟踪窗口中的边缘特征点;相对位移计算模块504,用于计算参考帧的边缘特征点与当前帧的边缘特征点的相对位移;人脸跟踪模块505,用于利用相对位移对当前帧待跟踪窗口的初始位置进行调整,获得视频流中目标人脸的活动轨迹,实现人脸跟踪。本实施例中,装置50进一步包括:跟踪验证模块和人脸动作判断模块;跟踪验证模块,用于在利用相对位移对当前帧待跟踪窗口的初始位置进行调整之后,对调整后的当前帧待跟踪窗口中的每个边缘特征点进行验证;当验证成功时,确认在当前帧成功跟踪到该边缘特征点,在后续跟踪过程中继续对该边缘特征点进行跟踪;当验证失败时,确认在当前帧中对该边缘特征点跟踪失败,舍弃该边缘特征点,不再对该边缘特征点进行跟踪;人脸动作判断模块,用于利用待跟踪窗口中的边缘特征点在参考帧和当前帧之间的间距变化确定目标人脸的左右转动动作和抬头低头动作;以及,利用参考帧与当前帧之间边缘特征点的相对位移计算目标人脸的倾斜角度,由倾斜角度确定目标人脸的倾斜动作。本实施例中,跟踪验证模块,具体用于将当前帧待跟踪窗口中的边缘特征点的位置作为验证起始位置;利用验证起始位置及当前帧与参考帧之间边缘特征点的相对位移,确定边缘特征点在参考帧的待跟踪窗口,并在待跟踪窗口内搜索边缘特征点,得到边缘特征点在参考帧的位置;将验证出的边缘特征点在参考帧的位置与预先获取的参考帧图像中边缘特征点的位置进行比较,若比较结果相同,则验证成功;若比较结果不同,则验证失败。本实施例中,人脸动作判断模块,具体用于对当前帧和参考帧,分别将目标人脸的各边缘特征点投影到与目标人脸平行的平面上,并监测各边缘特征点之间的间距;若相对于参考帧中边缘特征点的间距,当前帧的左半边脸的边缘特征点的间距变大且右半边脸的边缘特征点的间距变小,则确定目标人脸向右转;若相对于参考帧中边缘特征点的间距,当前帧的左半边脸的边缘特征点的间距变小且右半边脸的边缘特征点的间距变大,则确定目标人脸向左转;若相对于参考帧中边缘特征点的间距,当前帧的上半边脸的边缘特征点的间距变大且下半边脸的边缘特征点的间距变小,则确定目标人脸在抬头;若相对于参考帧中边缘特征点的间距,当前帧的上半边脸的边缘特征点的间距变小且下半边脸的边缘特征点的间距变大,则确定目标人脸在低头。其中,分别根据当前帧和参考帧的待跟踪窗口,构建对应的包括四个区域的平面坐标系,将待跟踪窗口中的边缘特征点投影到平面坐标系中,得到每个边缘特征点对应的横坐标和纵坐标值;具体的,四个区域是按照每帧图像待跟踪窗口所在图形的对角线的交点为中点划分而成,包括:区域一、区域二、区域三和区域四,区域一和区域三中边缘特征点的横坐标值小于等于区域二和区域四中边缘特征点的横坐标值,区域三和区域四中边缘特征点的纵坐标值小于等于区域一和区域二中边缘特征点的纵坐标值;将投影到区域一和区域三中的边缘特征点根据横坐标升序排列得到矩阵将投影到区域二和区域四中的边缘特征点根据横坐标升序排成排列得到矩阵将投影到区域一和区域二中的边缘特征点根据纵坐标值升序排列得到矩阵将投影到区域三和区域四中的边缘特征点根据纵坐标值升序排列得到矩阵分别计算矩阵中每相邻两个元素的间距得到相应的间距矩阵和并依次将当前帧的间距矩阵和中的每个元素与参考帧的间距矩阵中的每个元素作差,根据计算结果判断目标人脸的左转或右转动作;分别计算矩阵中每相邻两个元素的间距得到相应的间距矩阵和并依次将当前帧的间距矩阵和中的每个元素与参考帧的间距矩阵中的每个元素作差,根据计算结果判断目标人脸的抬头或低头动作。其中,当计算结果满足下列公式(1)和(2)时,确定目标人脸向右转动;公式(1)公式(2)其中,表示当前帧左半边脸的边缘特征点的间距矩阵,表示参考帧左半边脸的边缘特征点的间距矩阵表示当前帧右半边脸的边缘特征点的间距矩阵,表示参考帧右半边脸的边缘特征点的间距矩阵;当计算结果满足下列公式(3)和(4)时,确定目标人脸向左转动:公式(3)公式(4)其中,表示当前帧左半边脸的边缘特征点的间距矩阵,表示参考帧左半边脸的边缘特征点的间距矩阵表示当前帧右半边脸的边缘特征点的间距矩阵,表示参考帧右半边脸的边缘特征点的间距矩阵;根据计算结果判断目标人脸的抬头或低头动作包括:当计算结果满足下列公式(5)和(6)时,确定目标人脸在抬头:公式(5)公式(6)其中,表示当前帧上半边脸的边缘特征点的间距矩阵表示参考帧上半边脸的边缘特征点的间距矩阵表示当前帧下半边脸的边缘特征点的间距矩阵表示参考帧下半边脸的边缘特征点的间距矩阵当计算结果满足下列公式(7)和(8)时,确定目标人脸在低头:公式(7)公式(8)其中,表示当前帧上半边脸的边缘特征点的间距矩阵表示参考帧上半边脸的边缘特征点的间距矩阵表示当前帧下半边脸的边缘特征点的间距矩阵表示参考帧下半边脸的边缘特征点的间距矩阵如此,实现了视频流中目标人脸的动作检测。本实施例中,人脸识别模块501,具体用于采集视频流中的一帧图像并转换为灰度图像,提取灰度图像的类Haar特征值;利用训练好的Adaboost级联分类器对灰度图像的类Haar特征值进行选择,并利用选择的类Haar特征值对灰度图像进行检测得到初始人脸区域;利用构建的肤色模型对初始人脸区域进行肤色判别,得到标准人脸区域;对标准人脸区域,利用设定的Gabor滤波器提取人脸特征;将Gabor滤波器提取出的人脸特征送入训练好的支持向量机SVM中进行匹配识别,以识别出目标人脸。需要说明的是,本实施例中的人脸跟踪装置是和前述的人脸跟踪方法相对应的,因此,该人脸跟踪装置的工作过程可以参见本发明的人脸跟踪方法实施例中的相关描述,在此不再赘述。实施例六图6是本发明一个实施例的一种智能终端的结构框图,参见图6,本实施例的这种智能终端60包括实施例五中所示的人脸跟踪装置50。该智能终端60利用人脸跟踪装置50检测人脸运动状态,且该智能终端60根据定位到的人脸运动状态自适应调整至少部分可移动部件的位置(如转动显示屏的位置)或至少部分部件所执行的功能(如开启或关闭终端中某一些应用的功能)。一般情况下,当人脸进行抬头和低头操作时,无需移动智能终端的可移动部件位置(或朝向),而当人脸进行左转和右转时,则可能需要对智能终端的可移动部件的位置进行移动操作。本实施例中,由于该智能终端60包括了人脸跟踪装置,所以当智能终端60的系统判定到有人脸转动动作后,定位到人脸的一次动作结束时,调整智能终端的可移动部件的位置,以使得智能终端跟随人脸的动作,更加人性化。本实施例中,智能终端60计算相邻的t时刻和t-1时刻,当前帧的左半边脸或右半边脸的边缘特征点的间距矩阵的差值,即或即确定人脸转动动作接近结束,其中阈值为0,此时,控制将智能终端的可移动部件的位置按转动方向平移π/4弧度。智能终端60的可移动部件移动后,视频流中图像背景随之变化,因此重新对图像进行人脸检测步骤。如此,智能终端通过该人脸跟踪装置跟踪人脸的运动,使得可以针对同一个人实现不间断的跟踪,提高了智能终端的人机交互的能力。本实施例中,智能终端60可以为检测人体活动的终端设备(如智能机器人),然后智能机器人根据检测出的目标人脸人体动作,做出对应的配合操作,提高了智能机器人的人机交互性能,优化了用户体验。综上所述,相比于现有的基于肤色模型算法等人脸跟踪方法,本发明的这种人脸跟踪方法和跟踪装置,首先,克服了背景颜色干扰的问题,提高了人脸跟踪的正确性。其次,利用各个边缘特征点之间的相对位置关系,反推出人脸的姿态、运动方向等信息,方便了人机交互。最后,针对运动过程中可能存在的特征被遮挡导致跟踪出现错误的问题,采用时间反转验证,克服了由边缘特征点的误判导致跟踪失败的问题。另外,本发明的智能终端包括了人脸跟踪装置,在目标脸部运动时,智能终端可以自主跟随,实现不间断跟踪的效果,优化了人机交互体验,提升了产品的竞争力。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。当前第1页1 2 3 
再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1