一种面部特征点跟踪方法及系统与流程

文档序号:11708065阅读:240来源:国知局
一种面部特征点跟踪方法及系统与流程

本发明涉及图像处理技术领域,更具体地说,涉及一种面部特征点跟踪方法及系统。



背景技术:

随着计算机视觉领域的技术的发展,针对面部特征点定位的技术日趋完善,然而现有的优秀的特征点定位算法多针对静态图片,在动态图像如视频文件中的应用较少。特征点指鼻尖、嘴角、眼角等特定的点。

现有技术中,动态图像的特征点跟踪技术主要采用重复计算跟踪,即每一帧都对采集到的图像面部检测并定位特征点,这种方法的计算量大,较难做到实时跟踪。

因此,如何减少面部特征点跟踪技术的计算量,实现面部特征点的实时跟踪成为了本领域技术人员亟需解决的问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种面部特征点跟踪方法,通过前一时刻的第一特征点预测后一时刻的第二特征点,减少了面部特征点跟踪技术的计算量,实现面部特征点的实时跟踪。

为实现上述目的,本发明提供如下技术方案:

一种面部特征点跟踪方法,所述方法包括以下步骤:

步骤a:初始化参数;

步骤b:接收第一图像;

步骤c:若所述第一图像中包括面部图像,基于所述面部图像生成第一面部图像;

步骤d:基于所述第一面部图像生成第一特征点;

步骤e:基于所述第一特征点生成第一预测信息;

步骤f:接收第二图像;

步骤g:基于所述第二图像及所述第一预测信息生成第三图像;

步骤h:若所述第三图像包括与所述面部图像相对应的第二面部图像,基于所述第二面部图像生成第二特征点,以所述第二特征点作为所述第一特征点并执行步骤e。

优选地,所述基于所述第一面部图像信息生成第一特征点包括:

基于所述第一面部图像信息生成第一图像位置信息;

基于所述第一图像位置信息生成第一特征点。

优选地,所述方法还包括:

若所述第三图像不包括所述第二面部图像,基于所述第一预测信息生成第二图像位置信息;

基于所述第二图像位置信息生成第四图像;

以所述第四图像作为所述第一图像,执行步骤c。

优选地,所述初始化参数包括:

重新生成计时信息。

优选地,所述方法还包括:

若所述计时信息满足所述预设计时条件,对所述第三图像及第三面部图像进行交除并操作生成交除并值,所述第三面部图像为所述第三图像对应时刻下一时刻的面部图像;

若所述交除并值小于预设阈值,以所述第三面部图像作为所述第三图像,执行步骤a。

一种面部特征点跟踪系统,所述系统包括初始化模块、接收模块、面部检测模块、第一生成模块、第二生成模块、第三生成模块及第四生成模块,其中:

所述初始化模块用于初始化参数;

所述接收模块用于接收第一图像;

所述面部检测模块用于检测所述第一图像包括的面部图像;

所述第一生成模块用于基于所述面部图像生成第一面部图像;

所述第二生成模块用于基于所述第一面部图像生成第一特征点;

所述第三生成模块基于所述第一特征点及平均脸信息生成所述第一预测信息;

所述接收模块还用于接收第二图像;

所述第四生成模块用于基于所述第二图像及所述第一预测信息生成第三图像;

所述面部检测模块还用于检测所述第三图像包括的与所述面部图像相对应的第二面部图像;

所述第二生成模块还用于基于所述第二面部图像生成所述第二特征点。

优选地,所述第二生成模块包括第一生成单元及第二生成单元,其中:

所述第一生成单元用于基于所述第一面部图像信息生成第一图像位置信息;

所述第二生成单元用于基于所述第一图像位置信息生成第一特征点。

优选地,所述系统还包括第五生成模块及第六生成模块,其中:

所述第五生成模块用于基于所述第一预测信息生成第二图像位置信息;

所述第六生成模块用于基于所述第二图像位置信息生成第四图像。

优选地,所述初始化模块包括计时单元,其中:

所述计时单元用于重新生成计时信息。

优选地,所述系统还包括计算模块及比较模块,其中:

所述计算模块用于对所述第三图像及第三面部图像进行交除并操作生成交除并值,所述第三面部图像为所述第三图像对应时刻下一时刻的面部图像;

所述比较模块用于比较所述交除并值与所述预设阈值的大小。

从上述技术方案可以看出,本发明提供了一种面部特征点跟踪方法,包括以下步骤:步骤a:初始化参数;步骤b:接收第一图像;步骤c:若第一图像中包括面部图像,基于所述第一图像生成第一面部图像;步骤d:基于第一面部图像生成第一特征点;步骤e:基于第一特征点生成第一预测信息;步骤f:接收第二图像;步骤g:基于第二图像及第一预测信息生成第三图像;步骤h:若第三图像包括与面部图像相对应的第二面部图像,基于第二面部图像生成第二特征点,以第二特征点作为第一特征点并执行步骤e。通过前一时刻的第一特征点预测后一时刻的第二特征点,减少了面部特征点跟踪技术的计算量,降低了计算难度,实现了面部特征点的实时跟踪。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本发明公开的一种面部特征点跟踪方法的实施例1的流程图;

图2为本发明公开的一种面部特征点跟踪方法的实施例2的流程图;

图3为本发明公开的一种面部特征点跟踪方法的实施例3的流程图;

图4为本发明公开的一种面部特征点跟踪方法的实施例4的流程图;

图5为本发明公开的一种面部特征点跟踪系统的实施例1的结构示意图;

图6为本发明公开的一种面部特征点跟踪系统的实施例2的结构示意图;

图7为本发明公开的一种面部特征点跟踪系统的实施例3的结构示意图;

图8为本发明公开的一种面部特征点跟踪系统的实施例4的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

如图1所示,为本发明公开的一种面部特征点跟踪方法实施例1的流程图,本方法包括以下步骤:

s101、初始化参数;

开启面部特征点跟踪功能后,初始化各项参数,例如将暂存的图像清空。

s102、接收第一图像;

第一图像为当前时刻图像采集装置拍摄并发送的图像。

s103、若第一图像中包括面部图像,基于第一图像生成第一面部图像;

对第一图像进行面部检测,判断第一图像中是否存在面部图像,此处可利用现有技术,例如可使用haar人脸检测技术进行检测。基于第一图像中的面部图像生成第一面部图像,即第一图像中的被检测出的面部区域的图像。生成的第一面部图像的数量与第一图像中被检测出的面部图像的数量相等。

s104、基于第一面部图像生成第一特征点;

第一特征点为第一面部图像上一些特定的点,如鼻尖、嘴角、眼角等特定的点。可由第一面部图像生成第一特征点,需要注意的是,第一特征点并不特指某一个点,第一特征点可以为一系列的点。

s105、基于第一特征点生成第一预测信息;

基于第一特征点可生成第一预测信息,第一预测信息为第一面部图像在下一时刻时所处的位置。此位置可用坐标形式表示,此位置是相对于图像采集装置所采集的图像而言的。当前时刻与下一时刻的间隔为固定值,可取值为一帧。

s106、接收第二图像;

接收图像采集装置发送的第二图像,第二图像即为采集第一图像的时刻的下一时刻所采集的图像。需要指出的是,本发明中的第一图像与第二图像并不单指某一时刻的图像,使用第一及第二对图像进行区分只是为区分图像采集的时刻的不同。本说明书中,使用第一时刻表示采集第一图像的时刻,第二时刻表示采集第二图像的时刻,同理,第一时刻及第二时刻也不特指某一时刻,只是用于表示其先后关系。

s107、基于第二图像及第一预测信息生成第三图像;

第一预测信息为第二时刻时与第一面部图像相对应的面部图像在第二图像中的预测位置,可基于第一预测信息及第二图像生成第三图像,第三图像为基于第一预测信息中的预测位置在第二图像中获取的与第一面部图像形状及大小相同的图像。

s108、若第三图像包括与面部图像相对应的第二面部图像,基于第二面部图像生成第二特征点,以第二特征点作为第一特征点并执行步骤s105。

若第三图像中包括与第一面部图像中的面部图像相同的面部图像,即第二面部图像,则说明预测成功,基于第一时刻时面部图像的位置成功预测了第二时刻时相对应的面部图像的位置,实现了跟踪功能。此时基于第二面部图像生成第二特征点,此时第二面部图像与步骤s104中的第一面部图像的作用是相同的。生成第二特征点的方法与生成第一特征点的方法也相同。返回执行步骤s105,继续基于上一时刻的面部图像的位置预测下一时刻的面部图像的位置。

综上所述,本发明提供了一种面部特征点跟踪方法,包括以下步骤:初始化参数,接收第一图像,若第一图像中包括面部图像,基于第一图像生成第一面部图像,基于第一面部图像生成第一特征点,基于第一特征点生成第一预测信息,接收第二图像,基于第二图像及第一预测信息生成第三图像,若第三图像包括与面部图像相对应的第二面部图像,基于第二面部图像生成第二特征点,以第二特征点作为第一特征点并重复执行上述步骤以实现特征点的跟踪。通过前一时刻的第一特征点预测后一时刻的第二特征点,减少了面部特征点跟踪技术的计算量,降低了计算难度,实现了面部特征点的实时跟踪。

如图2所示,为本发明在上述实施例的基础上公开的实施例2的流程图。在上述实施例中,基于第一面部图像信息生成第一预测信息的具体实施方式可以包括以下步骤:

s201、基于第一面部图像信息生成第一图像位置信息;

第一面部图像信息为包括面部图像的面部框,基于此面部框在第一图像中的位置,可生成第一图像位置信息,第一图像位置信息可采用两种方式表示。一种是以(left,right,top,bottom)来表示,其中left表示矩形框左边界,也即左上角和最下角角点的x轴坐标,right表示右边界,也即右上角和右下角角点的x轴坐标,top表示矩形框上边界,也即左上角和左下角的y轴坐标,bottom表示矩形框的下边界,也即左下角和右下角的y轴坐标。另一种表示法以(x,y,width,height)来表示,其中,x表示矩形框左上角角点的x轴坐标,y表示矩形框左上角角点的y轴坐标,width表示矩形框的宽度,height表示矩形框的高度。上述两种表示法均能够通过四个值唯一确定画面中的一个矩形框的位置及大小。此处以第一种方法为例,即第一图像位置信息采用(left,right,top),的b形ott式o表m示。

s202、基于第一图像位置信息生成第一特征点;

第一特征点为第一面部图像上一些特定的点,如鼻尖、嘴角、眼角等特定的点。可对第一图像位置信息进行回归计算,并生成第一特征点。在算法中,特征点表示为归一化坐标,也即:

xnorm=(x-left)/(right-left)

ynorm=(y-top)/(bottom-top)

其中,xnorm、ynorm表示归一化坐标系下的坐标值。归一化表示后,将所有训练样本的特征点进行加权平均,平均后可以得到一个平均形状,即实际平均脸。再利用检测框的坐标,可以将平均脸的坐标由归一化坐标系映射到真实坐标系下,具体映射关系为:

x=xnorm*(right-left)+left

y=ynorm*(bottom-top)+top

需要注意的是第一特征点并不指一个特征点,而是一系列的特征点,其数量可根据面部特征点跟踪的精度需求及硬件设备的性能进行调整。例如采用68个特征点,即第一特征点包括68个坐标(x,y)。

值得一提的是,采用此种方法求出第一特征点后,可采用以下方法求第一预测信息:

求c使得下式最小:

min|b-a×c|2

其中b为第一特征点。

其中a为平均脸信息,平均脸信息为一个预先设计好的标准模型。

求得c后,使用c对第一图像位置信息进行相似变换,即可求出第一预测信息。第一预测信息以(left,right,top,bottom)的形式表示。

如图3所示,为本发明在上述实施例的基础上公开的实施例3的流程图。在上述实施例中,若第三图像不包括第二面部图像,即第二时刻的预测的面部图像区域中并无面部图像,本实施例包括以下步骤:

s301、基于第一预测信息生成第二图像位置信息;

若第三图像不包括第二面部图像,即第二时刻的预测的面部图像区域中并无面部图像,说明预测与实际不符,跟踪失败,此时基于以(left,right,top,bottom)的形式表示的第一预测信息生成第二图像位置信息,第二图像位置信息采用(leftresize,rightresize,topresize,bottomresize)的形式表示。人脸框的宽度和高度分别为:

w=right-left

h=bottom-top

缩放比例设置为factor,则新的四元组为:

leftresize=left-factor×w

rightresize=right+factor×w

topresize=top-factor×h

bottomresize=bottom+factor×h。

第二图像位置信息是将第一预测信息所表示的区域进行放大的区域。虽然预测错误,但短时间内面部图像不会出现长距离的移动,因此将第一预测信息所代表的区域扩大,可使此区域包括面部图像。

s302、基于第二图像位置信息生成第四图像;

基于第二图像位置信息生成第四图像,第四图像即第二图像位置信息在第二图像中所代表的区域。

s303、以第四图像作为第一图像,执行步骤s103。

第四图像为第二时刻采集的图像的一部分,且第四图像中包括面部图像,可再次进行面部特征点跟踪,以第四图像作为上述实施例中的第一图像,由步骤s103开始执行,可对下一时刻的面部图像的位置进行预测。

如图4所示,为本发明在上述实施例的基础上公开的实施例4的流程图。在上述实施例中,初始化参数可包括:

s401、重新生成计时信息;

当初始化参数时,计时器由零开始计时。

为进一步优化上述方案,上述实施例还可包括:

s402、若计时信息满足预设计时条件,对第三图像及第三面部图像进行交除并操作生成交除并值,第三面部图像为第三图像对应时刻下一时刻的面部图像;

第三面部图像为第三图像对应时刻下一时刻图像采集装置采集的图像通过面部检测后得到的面部图像。预设计时条件为计时信息中的时间为预设时间的倍数,例如预设时间为20帧,则计时信息中的时间为20帧的倍数时,例如20帧、40帧或60帧,计时信息均满足预设计时条件。此时,对第三图像及第三面部图像进行交除并操作生成交除并值。即将第三图像与第三面部图像的交集除以第三图像与第三面部图像的并集。交除并值表示了第三图像与第三面部图像的相似度。

s403、若交除并值小于预设阈值,以第三面部图像作为第三图像,执行步骤s101;

若交除并值小于预设阈值,则说明第三图像中的面部图像与第三面部图像中的面部图像不属于同一个人,此时可能是由于跟踪的人物已走出图像采集范围或有新的人走进图像采集范围,此时由步骤s101重新开始面部检测过程。

如图5所示,为本发明公开的一种面部特征点跟踪系统实施例1的结构示意图,本系统包括初始化模块101、接收模块102、面部检测模块103、第一生成模块104、第二生成模块105、第三生成模块106及第四生成模块107,其中:

初始化模块101用于初始化参数;

开启面部特征点跟踪功能后,初始化各项参数,例如将暂存的图像清空。

接收模块用于接收第一图像102;

第一图像为当前时刻图像采集装置拍摄并发送的图像。

面部检测模块103用于检测第一图像包括的面部图像,第一生成模块104用于基于第一图像生成第一面部图像;

对第一图像进行面部检测,判断第一图像中是否存在面部图像,此处可利用现有技术,例如可使用haar人脸检测技术进行检测。基于第一图像中的面部图像生成第一面部图像,即第一图像中的被检测出的面部区域的图像。生成的第一面部图像的数量与第一图像中被检测出的面部图像的数量相等。

第二生成模块105用于基于第一面部图像生成第一特征点;

第一特征点为第一面部图像上一些特定的点,如鼻尖、嘴角、眼角等特定的点。可由第一面部图像生成第一特征点,需要注意的是,第一特征点并不特指某一个点,第一特征点可以为一系列的点。

第三生成模块106基于第一特征点及平均脸信息生成第一预测信息;

基于第一特征点可生成第一预测信息,第一预测信息为第一面部图像在下一时刻时所处的位置。此位置可用坐标形式表示,此位置是相对于图像采集装置所采集的图像而言的。当前时刻与下一时刻的间隔为固定值,可取值为一帧。

接收模块102还用于接收第二图像;

接收图像采集装置发送的第二图像,第二图像即为采集第一图像的时刻的下一时刻所采集的图像。需要指出的是,本发明中的第一图像与第二图像并不单指某一时刻的图像,使用第一及第二对图像进行区分只是为区分图像采集的时刻的不同。本说明书中,使用第一时刻表示采集第一图像的时刻,第二时刻表示采集第二图像的时刻,同理,第一时刻及第二时刻也不特指某一时刻,只是用于表示其先后关系。

第四生成模块107用于基于第二图像及第一预测信息生成第三图像;

第一预测信息为第二时刻时与第一面部图像相对应的面部图像在第二图像中的预测位置,可基于第一预测信息及第二图像生成第三图像,第三图像为基于第一预测信息中的预测位置在第二图像中获取的与第一面部图像形状及大小相同的图像。

面部检测模块103还用于检测第三图像包括的与面部图像相对应的第二面部图像,第二生成模块105还用于基于第二面部图像生成第二特征点。

若第三图像中包括与第一面部图像中的面部图像相同的面部图像,即第二面部图像,则说明预测成功,基于第一时刻时面部图像的位置成功预测了第二时刻时相对应的面部图像的位置,实现了跟踪功能。此时基于第二面部图像生成第二特征点,此时第二面部图像与上述中的第一面部图像的作用是相同的。生成第二特征点的方法与生成第一特征点的方法也相同。返回执行上述步骤,继续基于上一时刻的面部图像的位置预测下一时刻的面部图像的位置。

综上所述,本发明提供了一种面部特征点跟踪系统,本系统的工作原理为:初始化参数,接收第一图像,若第一图像中包括面部图像,基于第一图像生成第一面部图像,基于第一面部图像生成第一特征点,基于第一特征点生成第一预测信息,接收第二图像,基于第二图像及第一预测信息生成第三图像,若第三图像包括与面部图像相对应的第二面部图像,基于第二面部图像生成第二特征点,以第二特征点作为第一特征点并重复执行上述步骤以实现特征点的跟踪。通过前一时刻的第一特征点预测后一时刻的第二特征点,减少了面部特征点跟踪技术的计算量,降低了计算难度,实现了面部特征点的实时跟踪。

如图6所示,为本发明在上述实施例的基础上公开的实施例2的结构示意图。在上述实施例中,第二生成模块201包括第一生成单元202及第二生成单元203,其中:

第一生成单元202用于基于第一面部图像信息生成第一图像位置信息;

第一面部图像信息为包括面部图像的面部框,基于此面部框在第一图像中的位置,可生成第一图像位置信息,第一图像位置信息可采用两种方式表示。一种是以(left,right,top,bottom)来表示,其中left表示矩形框左边界,也即左上角和最下角角点的x轴坐标,right表示右边界,也即右上角和右下角角点的x轴坐标,top表示矩形框上边界,也即左上角和左下角的y轴坐标,bottom表示矩形框的下边界,也即左下角和右下角的y轴坐标。另一种表示法以(x,y,width,height)来表示,其中,x表示矩形框左上角角点的x轴坐标,y表示矩形框左上角角点的y轴坐标,width表示矩形框的宽度,height表示矩形框的高度。上述两种表示法均能够通过四个值唯一确定画面中的一个矩形框的位置及大小。此处以第一种方法为例,即第一图像位置信息采用(left,right,top,bottom)的形式表示。

第二生成单元203用于基于第一图像位置信息生成第一特征点;

为减少计算量,可以面部图像中的一些特征点为实现面部特征点跟踪的依据。可对第一图像位置信息进行回归计算,并生成第一特征点。在算法中,特征点表示为归一化坐标,也即:

xnorm=(x-left)/(right-left)

ynorm=(y-top)/(bottom-top)

归一化表示后,将所有训练样本的特征点进行加权平均,平均后可以得到一个平均形状。再利用检测框的坐标,可以将平均脸的坐标由归一化坐标系映射到真实坐标系下,具体映射关系为:

x=xnorm*(right-left)+left

y=ynorm*(bottom-top)+top

需要注意的是第一特征点并不指一个特征点,而是一系列的特征点,其数量可根据面部特征点跟踪的精度需求及硬件设备的性能进行调整。例如采用68个特征点,即第一特征点包括68个坐标(x,y)。

值得一提的是,采用方法生成第一特征点后,第三生成模块生成第一预测信息的工作原理可采用以下方法:

平均脸信息为一个预先设计好的标准模型。求c使得下式最小:

min|b-a×c|2

其中b为第一特征点。

其中a为平均脸信息,平均脸信息为一个预先设计好的标准模型。

求得c后,使用c对第一图像位置信息进行相似变换,即可求出第一预测信息。第一预测信息也是以(left,right,top,bottom)的形式表示。

如图7所示,为本发明在上述实施例的基础上公开的实施例3的结构示意图。在上述实施例中,本系统还包括第五生成模块301及第六生成模块302,其中:

第五生成模块301用于基于第一预测信息生成第二图像位置信息;

若第三图像不包括第二面部图像,即第二时刻的预测的面部图像区域中并无面部图像,说明预测与实际不符,跟踪失败,此时基于以(left,right,top,bottom)的形式表示的第一预测信息生成第二图像位置信息,第二图像位置信息采用(leftresize,rightresize,topresize,bottomresize)的形式表示。人脸框的宽度和高度分别为:

w=right-left

h=bottom-top

缩放比例设置为factor,则新的四元组为:

leftresize=left-factor×w

rightresize=right+factor×w

topresize=top-factor×h

bottomresize=bottom+factor×h。

第二图像位置信息是将第一预测信息所表示的区域进行放大的区域。虽然预测错误,但短时间内面部图像不会出现长距离的移动,因此将第一预测信息所代表的区域扩大,可使此区域包括面部图像。

第六生成模块302用于基于第二图像位置信息生成第四图像。

基于第二图像位置信息生成第四图像,第四图像即第二图像位置信息在第二图像中所代表的区域。第四图像为第二时刻采集的图像的一部分,且第四图像中包括面部图像,可再次进行面部特征点跟踪,以第四图像作为上述实施例中的第一图像,可对下一时刻的面部图像的位置进行预测。

如图8所示,为本发明在上述实施例的基础上公开的实施例4的结构示意图。在上述实施例中,本系统还包括计算模块403及比较模块404,初始化模块401包括计时单元402,其中:

计时单元402用于重新生成计时信息。

为进一步优化上述方案,上述实施例还可包括:

计算模块403用于对第三图像及第三面部图像进行交除并操作生成交除并值,第三面部图像为第三图像对应时刻下一时刻的面部图像;

第三面部图像为第三图像对应时刻下一时刻图像采集装置采集的图像通过面部检测后得到的面部图像。预设计时条件为计时信息中的时间为预设时间的倍数,例如预设时间为20帧,则计时信息中的时间为20帧的倍数时,例如20帧、40帧或60帧,计时信息均满足预设计时条件。此时,对第三图像及第三面部图像进行交除并操作生成交除并值。即将第三图像与第三面部图像的交集除以第三图像与第三面部图像的并集。交除并值表示了第三图像与第三面部图像的相似度。

比较模块404用于比较交除并值与预设阈值的大小。

若交除并值小于预设阈值,则说明第三图像中的面部图像与第三面部图像中的面部图像不属于同一个人,此时可能是由于跟踪的人物已走出图像采集范围或有新的人走进图像采集范围,此时重新开始面部检测过程。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1