买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】一种基于改进Camshift算法的人脸跟踪方法_华南理工大学_201910460328.4 

申请/专利权人:华南理工大学

申请日:2019-05-30

公开(公告)日:2019-09-06

公开(公告)号:CN110211160A

主分类号:G06T7/277(20170101)

分类号:G06T7/277(20170101);G06T7/246(20170101)

优先权:

专利状态码:有效-授权

法律状态:2022.03.25#授权;2019.10.08#实质审查的生效;2019.09.06#公开

摘要:本发明公开了一种基于改进Camshift算法的人脸跟踪方法,所述方法包括以下步骤:1)以视频图像初始帧中的人脸为初始人脸窗口,作为跟踪目标;2)以跟踪目标的质心位置和窗口大小对改进的Camshift跟踪算法进行建模,在当前帧图像中利用该跟踪算法计算得到最优候选窗口;3)计算当前帧图像遮挡干扰是否超过给定阈值;4)干扰小于给定阈值,使用步骤2得到的候选窗口作为目标窗口,并返回目标窗口;5)若干扰不小于给定阈值,引入Kalman滤波器,将得到的目标质心作为观测向量进行预测,返回预测结果作为目标窗口;6)使用Kalman滤波器得到的输出预测向量作为搜索窗口中心,继续下一帧的目标跟踪。

主权项:1.一种基于改进Camshift算法的人脸跟踪方法,其特征在于,在识别车辆驾驶员人脸后实现对人脸窗口的实时跟踪,通过视频初始帧图像检测到的初始人脸窗口,跟踪得到后续帧图像中的人脸目标窗口,所述方法包括以下步骤:1以视频图像初始帧中的驾驶员人脸为初始人脸窗口,作为跟踪目标;2以跟踪目标的质心位置和窗口大小对改进的Camshift跟踪算法进行建模,在当前帧图像中利用改进的Camshift跟踪算法计算得到最优候选窗口;3计算当前帧图像是否被干扰;4干扰小于给定阈值,使用步骤2得到的最优候选窗口作为目标窗口,并返回目标窗口;5若干扰不小于给定阈值,引入Kalman滤波器,将由步骤2得到的最优候选窗口的质心输入到Kalman滤波器作为观测向量进行预测,得到的输出预测向量作为目标窗口中心,并返回目标窗口;6使用Kalman滤波器得到的输出预测向量作为改进的Camshift跟踪算法的搜索窗口质心,返回步骤2继续进行下一帧的目标跟踪。

全文数据:一种基于改进Camshift算法的人脸跟踪方法技术领域本技术涉及一种视频目标跟踪技术领域,尤其涉及一种基于改进Camshift算法的人脸跟踪方法。背景技术在现代交通运输作业中,由于运输路程长、工作强度高,驾驶员易出现疲劳驾驶现象,从而导致各类交通事故。在利用卷积神经网络完成背景与人脸的分离,框出人脸窗口后,需要对人脸窗口进行跟踪,以进行后续通过面部特征对疲劳情况的判定。目标跟踪算法决定了目标跟踪的实时性和准确性,而现有的Camshift跟踪算法计算计算量大,保证了人脸窗口追踪的实时性,由于搜索窗口尺寸不固定,导致跟踪窗口不断扩大,相近颜色容易受到干扰的同时更新尺寸参数调制搜索框的计算量大。发明内容本发明所要解决的技术问题是:提供一种基于改进Camshift算法的人脸跟踪方法,在识别车辆驾驶员人脸后实现对人脸窗口的实时跟踪,可以通过视频第一帧图像检测到的人脸窗口,根据图像中干扰的大小,选择跟踪算法,获取人脸目标窗口。本发明至少通过如下技术方案之一实现。一种基于改进Camshift算法的人脸跟踪方法,在识别车辆驾驶员人脸后实现对人脸窗口的实时跟踪,通过视频第一帧图像检测到的初始人脸窗口,跟踪得到后续帧图像中的人脸目标窗口,所述方法包括以下步骤:1以视频图像初始帧中的驾驶员人脸为初始人脸窗口,作为跟踪目标;2以跟踪目标的质心位置和窗口大小对改进的Camshift跟踪算法进行建模,在当前帧图像中利用改进的Camshift跟踪算法计算得到最优候选窗口;3计算当前帧图像是否被干扰;4干扰小于给定阈值,使用步骤2得到的最优候选窗口作为目标窗口,并返回目标窗口;5若干扰不小于给定阈值,引入Kalman滤波器,将改进的Camshift跟踪算法搜索得到的目标质心输入到Kalman滤波器作为观测向量进行预测,得到的输出预测向量作为目标窗口中心,并返回目标窗口;6使用Kalman滤波器得到的输出预测向量作为改进的Camshift跟踪算法的搜索窗口质心,返回步骤2继续进行下一帧的目标跟踪。进一步的,步骤2所述的改进的Camshift跟踪算法的运算步骤为:1将图像转换到HSV颜色空间,得到图像的颜色概率分布,转换过程如下:将图像的颜色由RGB空间转为HSV空间,再提取出H分量,其中H分量和RGB各分量的映射关系为:然后对图像进行反向投影的运算,也就是将观测图像的每一个像素值用其分量在直方图中对应的值替代;所得到的输出图像就是颜色概率分布图像;2初始化一个跟踪窗口,窗口的大小为S,采用Meanshift算法进行搜索,找到最匹配的区域;3更新搜索窗口的位置并计算跟踪目标的质心位置大小。进一步的,所述Meanshift算法的计算过程如下:以视频图像初始帧中的驾驶员人脸为初始人脸窗口,作为跟踪目标,这个窗口称为Meanshift算法的目标区域。设目标区域的中心像素的坐标为x0,其中有n个像素点xi,i=1~n,则在选定的目标窗口中,初始帧的第u个特征值的概率为:式中,k为核函数,采用Epanechikov核函数;h是核函数的带宽,C是归一化常数,使得δ是单位脉冲函数;bxi为第i个像素位置的目标索引。以起始帧以后的各帧中目标可能存在的区域为候选区域。设候选区域的中心像素的坐标为y,其中有nh个像素点{xi}i=1,2,…,nh,候选区域特征值为u的概率为:其中归一化常数采用巴氏距离来计算目标区域与候选区域之间的相似程度,设目标区域的中心像素的坐标为x,候选区域的中心像素的坐标为y;设目标区域与候选区域的直方图分别为qux和puy,则相似性为:ρy的值在0-1之间,值越大表示目标区域与候选区域越相近。目标跟踪的过程为计算目标区域与候选区域相似度的大小,并在当前帧选择最优候选区域为目标在本帧中的位置。定义目标区域的直方图分布为:{qu},u=1,2,…,m,m为特征值的个数,目标可能在的位置为y0。初始化当前帧的目标区域,先将前一帧的目标区域的中心位置定为当前帧的候选区域的中心位置,加权直方图,计算其中,puy0为候选区域直方图,qux0为目标区域直方图,x0为目标区域的中心位置,ρ[puy0,qu]为当前帧候选区域与目标区域的相似性;更新权值{wi},i=1,2,...,nh,计算目标可能位置y1,更新{puy1},u=1,2,…,m;计算若ρ[puy1,qu]T,说明目标已经被严重遮挡。进一步的,步骤5若干扰不小于给定阈值,引入Kalman滤波器,并将改进的Camshift跟踪算法搜索得到的目标质心输入到Kalman滤波器作为观测向量进行预测,得到的输出预测向量作为目标窗口质心,并返回目标窗口。Kalman滤波器的两个公式分别为:状态方程:Xk=Ak,k-1Xk-1+Vk-1观测方程:Yk=HXk+Wk式中:Xk和Xk-1分别为k时刻和k-1时刻的状态向量;Yk表示k时刻观测向量;Ak,k-1为相应的状态转移矩阵;H表示观测矩阵;Vk-1和Wk分别为k-1时刻和k时刻的噪声,相应的方差矩阵分别为Q和R。设状态向量为Xk=[xsk,ysk,xvk,yvk],变量xsk,xvk,ysk,yvk分别表示目标在x与y轴上的位置与速度;观测向量为Yk=[xtk,ytk],变量xtk,ytk均表示目标的观测位置,具体的计算公式为:Xk,k-1=Ak,k-1XkXk=Xk,k-1+Kk[Yk-HkXk,k-1]Pk=I-KkHkPk,k-1式中,Xk,k-1为状态预测值;Xk为先验估计Xk,k-1的修正值;Kk为卡尔曼滤波增益矩阵;Pk,k-1为Xk,k-1的协方差矩阵;Pk为Xk的协方差矩阵,I离散的反向投影图。进一步的,步骤6当干扰超过阈值引入Kalman滤波器时估算目标人脸窗口时,同时使用Kalman滤波器的预测结果作为新的目标位置,调整改进的Camshift跟踪算法的初始搜窗口质心位置,继续进行下一帧的目标跟踪。相对于现有技术,具有如下的优点及效果:本发明对传统Camshift跟踪算法进行改进,固定搜索窗口尺寸,避免当目标与背景颜色接近时,Camshift跟踪算法自动将其包括在内,导致跟踪窗口不断扩大,避免相近颜色干扰的同时减少更新尺寸参数调制搜索框的计算量。本发明根据当前帧图像中遮挡干扰是否超过给定阈值,判断是否引入Kalman滤波器及模型,获取更加精确的目标窗口。本发明在干扰小于阈值时采用改进的Camshift跟踪算法计算得到的最优结果作为目标窗口,不启动引入Kalman滤波器,减少计算量,保证了人脸窗口追踪的实时性。本发明在遮挡干扰不小于给定阈值时,不返回改进的Camshift跟踪算法搜索到的目标位置作为目标窗口,而是将由改进的Camshift跟踪算法搜索得到的目标质心输入到Kalman滤波器作为观测向量进行预测,得到的输出预测向量作为目标窗口质心,并返回目标窗口。以保证后续跟踪过程的准确性。本发明在当干扰超过阈值引入Kalman滤波器时估算目标人脸窗口时,同时使用Kalman滤波器的预测结果作为新的目标位置,调整改进的Camshift跟踪算法的初始搜窗口质心位置,继续进行下一帧的目标跟踪。本发明将改进Camshift跟踪算法和Kalman滤波器应用于驾驶员疲劳检测系统的人脸追踪中,实现了实时准确的人脸追踪,可保证后续疲劳判定的实时准确性,对疲劳检测技术有实践借鉴意义。附图说明图1为本实施例一种基于改进Camshift算法的人脸跟踪方法的流程图。具体实施方式以下将结合附图对本发明进行详细说明。本发明提供了一种基于改进Camshift算法的人脸跟踪方法。针对Camshift跟踪算法容易被相似背景特征干扰、无法跟踪快速无规则运动物体以及抗遮挡能力差等情况,提出了一种基于改进Camshift并引入Kalman滤波的预测型人脸跟踪方法。此方法具有高实时性,对背景颜色干扰等有较强的鲁棒性。如图1所示的一种基于改进Camshift算法的人脸跟踪方法,具体包括以下步骤:步骤1、以视频图像初始帧中的驾驶员人脸为初始人脸窗口,作为跟踪目标;。步骤2、以跟踪目标的质心位置和窗口大小对改进的Camshift跟踪算法进行建模,在当前帧图像中利用改进的Camshift跟踪算法计算得到最优候选窗口;具体的,传统的Camshift跟踪算法采用不变矩来估计目标的大小,能持续自动的改变跟踪窗口的位置和尺寸,当目标的尺寸发生变化时也能准确的跟踪。传统Camshift跟踪算法的思想是先将序列图像转换成颜色概率分布图像,并且选择一个矩形窗口作为初始跟踪窗,然后对每一顿图像采用算法寻找与目标最相似的区域,并且根据跟踪窗口的不变矩估计运动目标的中心与尺寸,将跟踪结果作为下一倾的初始搜索窗口。如此循环就可以实现对运动目标持续跟踪。本发明采用改进的Camshift跟踪算法,具体的,在初始化跟踪窗口时,固定窗口的大小S为步骤1确定的跟踪目标的窗口大小。考虑到驾驶过程中驾驶员座椅固定,身系安全带,人脸窗口尺寸变动小,仅窗口中心位置有变动,因此对Camshift跟踪算法进行改进,固定搜索窗口尺寸为跟踪目标窗口大小,避免当目标与背景颜色接近时,搜索框自动将其包括在内,导致跟踪窗口不断扩大,避免相近颜色干扰的同时减少更新尺寸参数调制搜索框的计算量。改进的Camshift跟踪算法运算步骤为:1将图像转换到HSV颜色空间,得到图像的颜色概率分布;2初始化一个跟踪窗口,窗口的大小为S,采用Meanshift算法进行搜索,找到最匹配的区域;3更新搜索窗口的位置并计算跟踪目标的质心位置大小。具体的,首先将图像的颜色由RGB空间转为HSV空间,再提取出H分量,其中H分量和RGB各分量的映射关系为:然后对图像进行反向投影的运算,也就是将观测图像的每一个像素值用其分量在直方图中对应的值替代;所得到的输出图像就是颜色概率分布图像。以步骤1得到视频图像初始帧中的驾驶员人脸为初始人脸窗口,作为跟踪目标,这个窗口称为Meanshift算法的目标区域。设目标区域的中心像素的坐标为x0,其中有n个像素点xi,i=1~n,有m个特征值,分别为u=1~m,则在选定的目标窗口中,初始帧的第u个特征值的概率为:式中,k为核函数,采用Epanechikov核函数;h是核函数的带宽,C是归一化常数,使得δ是单位脉冲函数;bxi为第i个像素位置的目标索引。以起始帧以后的各帧中目标可能存在的区域为候选区域。设候选区域的中心像素的坐标为y,其中有nh个像素点{xi}i=1,2,…,nh,候选区域特征值为u的概率为:其中归一化常数采用用巴氏距离来计算目标区域与候选区域之间的相似程度,设目标区域与候选区域的直方图分别为qux和pux,则相似性为:其值在0-1之间,值越大表示目标区域与候选区域中心位置越相近。目标跟踪的过程为计算目标区域与候选区域相似度的大小,并在当前帧选择最优候选区域为目标在本帧中的位置。定义目标区域的直方图分布为:{qu}u=1,2,…,m,目标可能在的位置为y0。初始化当前帧的目标区域,先将前一帧的目标区域的中心位置定为当前帧的候选区域的中心位置,加权直方图,计算其中,puy0为候选区域直方图,qux0为目标区域直方图,ρ[puy0,qu]为当前帧候选区域与目标区域的相似性;更新权值{wi},i=1,2,...,nh,计算目标可能位置y1,更新{puy1},u=1,2,…,m;计算若ρ[puy1,qu]T,说明目标已经被严重遮挡。步骤4、干扰小于给定阈值,使用步骤2得到的最优候选窗口作为目标窗口,并返回目标窗口;步骤5、若干扰不小于给定阈值,将改进的Camshift跟踪算法搜索得到的目标质心输入到Kalman滤波器作为观测向量进行预测,得到的输出预测向量作为目标窗口质心,并返回目标窗口。Kalman滤波器进行预测的计算过程如下:状态方程:Xk=Ak,k-1Xk-1+Vk-1观测方程:Yk=HXk+Wk式中:Xk和Xk-1分别为k时刻和k-1时刻的状态向量;Hk表示k时刻的观测向量;Ak,k-1为相应的状态转移矩阵;Hk为k时刻的观测矩阵;V和W是噪声,相应的方差矩阵分别为Q和R。设状态向量为Xk=[xsk,ysk,xvk,yvk],变量分别表示目标在x与y轴上的位置与速度;观测向量为Yk=[xtk,ytk],变量分别表示目标的观测位置,其中Xk,k-1=Ak,k-1XkXk=Xk,k-1+Kk[Yk-HkXk,k-1]Pk=I-KkHkPk,k-1式中,Xk,k-1为状态预测值;Xk为先验估计Xk,k-1的修正值;Kk为卡尔曼滤波增益矩阵;Pk,k-1为Xk,k-1的协方差矩阵;Pk为Xk的协方差矩阵,I为离散的反向投影图。步骤6、使用Kalman滤波器得到的输出预测向量Xk作为改进的Camshift跟踪算法的搜索窗口中心,继续进行下一帧的目标跟踪。上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

权利要求:1.一种基于改进Camshift算法的人脸跟踪方法,其特征在于,在识别车辆驾驶员人脸后实现对人脸窗口的实时跟踪,通过视频初始帧图像检测到的初始人脸窗口,跟踪得到后续帧图像中的人脸目标窗口,所述方法包括以下步骤:1以视频图像初始帧中的驾驶员人脸为初始人脸窗口,作为跟踪目标;2以跟踪目标的质心位置和窗口大小对改进的Camshift跟踪算法进行建模,在当前帧图像中利用改进的Camshift跟踪算法计算得到最优候选窗口;3计算当前帧图像是否被干扰;4干扰小于给定阈值,使用步骤2得到的最优候选窗口作为目标窗口,并返回目标窗口;5若干扰不小于给定阈值,引入Kalman滤波器,将由步骤2得到的最优候选窗口的质心输入到Kalman滤波器作为观测向量进行预测,得到的输出预测向量作为目标窗口中心,并返回目标窗口;6使用Kalman滤波器得到的输出预测向量作为改进的Camshift跟踪算法的搜索窗口质心,返回步骤2继续进行下一帧的目标跟踪。2.根据权利要求书1所述一种基于改进Camshift算法的人脸跟踪方法,其特征在于,步骤2所述的改进的Camshift跟踪算法是在Camshift跟踪算法的基础上固定搜索窗口尺寸,并将搜索窗口尺寸作为跟踪目标窗口大小。3.根据权利要求书1所述一种基于改进Camshift算法的人脸跟踪方法,其特征在于,步骤2所述的改进的Camshift跟踪算法的运算步骤为:1将图像转换到HSV颜色空间,得到图像的颜色概率分布,转换过程如下:将图像的颜色由RGB空间转为HSV空间,再提取出H分量,其中H分量和RGB各分量的映射关系为:然后对图像进行反向投影的运算,也就是将观测图像的每一个像素值用其分量在直方图中对应的值替代;所得到的输出图像就是颜色概率分布图像;2初始化一个跟踪窗口,窗口的大小为S,采用Meanshift算法进行搜索,找到最匹配的区域;3更新搜索窗口的位置并计算跟踪目标的质心位置大小。4.根据权利要求书3所述一种基于改进Camshift算法的人脸跟踪方法,其特征在于,所述Meanshift算法的计算过程如下:设目标区域的中心像素的坐标为x0,其中有n个像素点xi,i=1~n,在选定的目标窗口中,初始帧的第u个特征值的概率为:式中,k为核函数,采用Epanechikov核函数;h是核函数的带宽,C是归一化常数,使得δ是单位脉冲函数;bxi为第i个像素位置的目标索引;以起始帧以后的各帧中目标可能存在的区域为候选区域,设候选区域的中心像素的坐标为y,其中有nh个像素点{xi},i=1,2,…,nh,候选区域特征值为u的概率为:其中归一化常数采用巴氏距离来计算目标区域与候选区域之间的相似程度,设目标区域的中心像素的坐标为x,候选区域的中心像素的坐标为y,目标区域与候选区域的直方图分别为qux和puy,则相似性为:ρy的值在0-1之间,值越大表示目标区域与候选区域中心位置越相近;定义目标区域的直方图分布为:{qu},u=1,2,…,m,m为特征值的个数,目标可能在的位置为y0;初始化当前帧的目标区域,先将前一帧的目标区域的中心位置定为当前帧的候选区域的中心位置,加权直方图,计算其中,puy0为候选区域直方图,qux0为目标区域直方图,x0为目标区域的中心位置,ρ[puy0,qu]为当前帧候选区域与目标区域的相似性;更新权值{wi},i=1,2,...,nh,计算目标可能位置y1,更新{puy1},u=1,2,…,m;计算若ρ[puy1,qu]T,说明目标被干扰。7.根据权利要求书1所述一种基于改进Camshift算法的人脸跟踪方法,其特征在于,步骤4当干扰小于阈值时采用改进的Camshift跟踪算法计算得到的最优结果作为目标窗口。8.根据权利要求书1所述一种基于改进Camshift算法的人脸跟踪方法,其特征在于,步骤5所述的Kalman滤波器的计算公式为:状态方程:Xk=Ak,k-1Xk-1+Vk-1观测方程:Yk=HXk+Wk式中:Xk和Xk-1分别为k时刻和k-1时刻的状态向量;Yk为k时刻观测向量;Ak,k-1为相应的状态转移矩阵;H为观测矩阵;Vk-1和Wk分别为k-1时刻和k时刻的噪声,相应的方差矩阵分别为Q和R;设状态向量为Xk=[xsk,ysk,xvk,yvk],变量xsk,xvk,ysk,yvk分别表示目标在x与y轴上的位置与速度;观测向量为Yk=[xtk,ytk],变量xtk,ytk均表示目标的观测位置,具体的计算公式为:Xk,k-1=Ak,k-1XkXk=Xk,k-1+Kk[Yk-HkXk,k-1]Pk=I-KkHkPk,k-1式中,Xk,k-1为状态预测值;Xk为先验估计Xk,k-1的修正值;Kk为卡尔曼滤波增益矩阵;Pk,k-1为Xk,k-1的协方差矩阵;Pk为Xk的协方差矩阵;I为离散的反向投影图。

百度查询: 华南理工大学 一种基于改进Camshift算法的人脸跟踪方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。