面向飞行器平台的图像目标追踪算法*
2017-06-27柴天峰朱小龙毛勇建卢永刚
柴天峰,朱小龙,毛勇建,卢永刚
(1.中国工程物理研究院 总体工程研究所,四川 绵阳 621900;2.中国工程物理研究院,四川 绵阳 621900)
面向飞行器平台的图像目标追踪算法*
柴天峰1,朱小龙2,毛勇建1,卢永刚1
(1.中国工程物理研究院 总体工程研究所,四川 绵阳 621900;2.中国工程物理研究院,四川 绵阳 621900)
以求解主动轮廓为目标观测手段,给出了基于卡尔曼滤波方法的可以追踪目标位置和目标在图像平面内面积的基础追踪算法。利用特征点匹配信息,解决了目标状态在图像平面内的急剧非线性变化导致基础追踪算法失败的问题。给出了结合特征点匹配与目标颜色统计直方图反向投影匹配2种方法的处理目标被遮挡情况的算法。通过实验验证,该算法在实验场景中,可以实现对目标位置和大小的追踪,可以成功地适应目标被遮挡的情况。
图像目标追踪;卡尔曼滤波;几何主动轮廓;特征点匹配;均值漂移算法;遮挡问题
0 引言
随着对计算机视觉问题的深入研究和各类处理器性能的大幅提升,可见光成像图像中目标的识别和跟踪算法在视频监控和自动控制领域得到了广泛地研究和应用。这些领域的一些成熟应用[1-2],展示出了图像目标识别与跟踪技术在无人机和智能弹药等飞行器平台上的潜在应用价值。利用可见光图像信息对目标进行探测和追踪,一方面具有相对较低的硬件成本,适合以单兵巡飞弹为代表的作战半径较小的简易制导武器;另一方面,因为人眼可以很容易地理解可见光图像,所以利用可见光图像进行导航和制导,可以较方便地引入人机互动,通过人的干预完成一些复杂的判断,提高武器的适应性,降低武器的复杂度,同时还可以做到侦察和打击一体化设计。
在飞行器平台上,尤其是作为武器系统的飞行器上,追踪算法需要在复杂场景中长时间追踪目标,同时还需要处理目标被遮挡的情况。由于光照和图像背景等因素的持续变化,一些在相机静止时成熟有效的算法[3-4]将不再适用。除了一些关于背景运动条件下运动目标检测算法[5-6]的研究外,目前较少有专门对相机持续运动条件下图像目标识别与追踪算法的研究。然而,由于此类追踪问题的复杂性和独特性,有必要对其进行专门的研究。
根据核心追踪方法的不同,目前已有的图像目标追踪算法可大致分为基于光流法的追踪算法、基于均值漂移法[7](Mean Shift) 的追踪算法和基于滤波预测的追踪算法[8]。基于滤波预测的追踪算法,可以将卡尔曼滤波或粒子滤波等滤波算法[9]和各种合适的图像目标表示与识别方法相结合,具有较好的适应性和扩展性,数据存储量和计算量也较小。同时,卡尔曼滤波算法递推计算的特点,使得目标追踪算法可以很方便地重新初始化,有利于追踪目标的复杂运动,处理目标被遮挡的情况。基于以上优点,本文选择以卡尔曼滤波方法为基础展开研究。
文献[10]中提出了一种将卡尔曼滤波与几何主动轮廓模型相结合的目标追踪算法,并将其应用于交通监控视频中,取得了较好的效果。该文献验证了此种算法在相机固定的条件下能够很好的适应并跟踪目标的大小变化,且其计算量也符合实时处理的要求。文中还将此算法与Mean Shift算法在同一应用场景中进行比较,显示出此种方法比Mean Shift算法具有更高的稳定性。
但是此文献中并未研究相机运动时此种算法的追踪效果。本文将此算法应用于相机运动的场景中,发现当目标在图像平面内的运动较复杂时,总是会出现追踪失败的情况。所以,本文详细分析了导致算法追踪失败的原因,并利用相邻帧间特征点匹配的结果修正和再初始化追踪算法,解决了目标状态急剧非线性变化引起的追踪失败问题。进一步地,本文将此基础追踪算法与特征点匹配和颜色统计直方图反向投影匹配[7]有机结合,以研究遮挡问题。
1 可追踪目标大小变化的算法
1.1 基于卡尔曼滤波和几何主动轮廓模型的基础追踪算法
在基础追踪算法中,将求取主动轮廓作为观测目标的手段,由目标的轮廓信息得到观测向量,完成卡尔曼滤波算法中的校正环节。在每一帧图像中,通过卡尔曼滤波算法的一步预测环节预测出目标的外接矩形,进而将其作为求解目标主动轮廓的初始轮廓。
1.1.1 几何主动轮廓模型及其在基础算法中的应用
几何主动轮廓模型由Caselles等[11]和Malladi等[12]分别独立提出,此模型隐式地将曲线表达为高维标量函数的水平集,可自然地处理拓扑结构的分裂与融合。几何主动轮廓模型是基于曲线演化理论和水平集方法求解的,所以只需要在某一固定区域内迭代求解偏微分方程的数值解,即可获得表示目标边界曲线的水平集函数的数值解。为提高运算速度,Li等[13]2005年在CVPR提出了一种新的无需重新初始化的变分水平集方法,大幅地减少了几何主动轮廓的计算量。Li提出的方法可以采用简单的差分方法求解,并且可选择较大的时间步长,很大程度地降低了主动轮廓的计算复杂度,提高了水平集演化的效率,使得几何主动轮廓模型能够应用于目标实时追踪算法中。
本文中,选择Li提出的几何主动轮廓求解算法进行目标识别。在此算法中,对包含目标的主动轮廓求解区域,定义如下能量泛函数:
(1)
(2)
在追踪算法的状态观测环节,以卡尔曼滤波算法预测的目标外接矩形为初始轮廓,进而以其对应的符号距离函数作为初始水平集函数,递推求解梯度下降流方程,得到收敛的表示目标轮廓的水平集函数。然后,由求得的目标轮廓信息,求出目标的面积、几何中心位置以及外接矩形的位置和大小等信息,作为观测信息,带入卡尔曼滤波算法中进行状态校正,进而求出目标状态信息的最优估计。
1.1.2 状态配置和系统滤波模型
因为要追踪目标的位置和大小,所以在状态向量中包含目标几何中心的位置(xc,yc)和目标的面积s(定义为目标轮廓曲线内部像素点的总数)。同时为了方便地预测目标的外接矩形,状态向量中包括目标外接矩形的位置(xR,yR)和外接矩形的宽度WR和高度hR。为了进行状态预测,状态向量中还应包括以上各状态量在两帧图像之间的增量:Δxc,Δyc,Δs,ΔxR,ΔyR,ΔWR,ΔhR。
如果状态向量中仅包括以上各个状态量,则已可以完成相机静止条件下的目标追踪。但是,当相机和目标同时运动时,目标在图像平面内的运动比较复杂,目标外接矩形位置和大小的变化可能会有较强的非线性,因而在图像序列的某些帧中,目标外接矩形的预测偏差较大,从而导致追踪失败。为适应此种情况,在状态向量中添加可以反映两帧图像间外接矩形位置和大小的二次变化的状态量Δ2xR,Δ2yR,Δ2WR,Δ2hR。综合以上分析,配置系统的状态向量如下:
式中:
根据主动轮廓可以求得的状态信息,配置系统的观测向量如下:
根据以上状态配置,写出系统的滤波模型如下:
(3)
式中:Zk为状态噪声向量;Vk为观测噪声向量。
状态转移矩阵Fk,k-1的具体表达如下:
(4)
式中:En为n×n的单位矩阵;0m×n为m×n的零矩阵。观测矩阵Hk为
(5)
在本文的追踪算法中,设状态噪声向量Z和观测噪声向量V的协方差矩阵为单位矩阵,初始误差协方差矩阵为单位矩阵。
1.1.3 基础算法的跟踪匹配法则
在卡尔曼滤波与主动轮廓模型相结合的基础追踪算法中,本文利用目标几何中心的位置和检测出的活动轮廓内的图像面积进行跟踪匹配,在每一帧中检查跟踪是否失败。
根据以上2个判断指标,给出判断基础追踪算法中目标观测是否成功的准则如下:
判断准则1:若Dk 基础追踪算法出现追踪失败有2种可能的原因。一是因为相机的旋转造成目标初始轮廓预测偏差较大,进而导致主动轮廓求解错误;另一个原因是目标可能被其他物体部分的遮挡了,进而导致主动轮廓收敛错误。在本文中,检测出观测失败后,应用下文提出的算法重新求解目标轮廓,修正观测向量,然后判断修正是否成功。 1.2 状态修正和追踪算法的再初始化 相机随飞行器平台的急速旋转,可能会使预测的目标外接矩形不能完全包含目标,进而造成目标状态观测错误。此种观测错误,若不对其加以检查和修正,会导致之后的目标追踪失败。本文应用“判断准则1”判断出这种情况后,通过匹配两帧图像中目标上的特征点,求出目标的位移,以此修正目标的外接矩形,重新求解主动轮廓,得到修正的状态观测向量。综合考虑匹配效果和计算量,本文选择使用SURF算子[14]检测和描述目标上的特征点。 在每一帧图像中,当确定目标追踪成功后,结合主动轮廓信息,求取位于目标轮廓内的SURF特征点并计算其特征点描述子,然后,更新并存储已成功追踪到的特征点和目标外接矩形数据。当检测到目标观测失败后,求出目标可能存在的区域内所有的特征点,并与存储的上一帧图像中目标上的特征点进行匹配。为了保证匹配的准确性,在匹配过程中引入了交叉检查匹配项的方法和随机抽样一致性(RANSAC)匹配算法[15]。 同时,将匹配点对按照匹配强度排序,保留那些匹配强度较高的特征点对。 计算匹配点对位移的平均值,估算出目标在2帧图像间的位移,然后将上一帧图像中目标的外接矩形按此位移进行平移,再将其按一定的倍数放大,作为修正的初始轮廓,再次求解目标的主动轮廓,进而求得修正的目标观测向量。比较观测向量和上一帧图像中目标状态向量中的预测数据,判断修正是否成功。如果判定修正失败,则认为目标已被部分遮挡,进入处理遮挡情况的算法,如果判断修正成功,则按此观测信息重新初始化基础追踪算法后继续追踪。具体的判断准则如下: 根据图像中是否存在和前几帧图像中目标上的特征点相匹配的特征点,本文将目标被遮挡的情况分为部分遮挡和完全遮挡2种,并对其分别处理。本文默认所追踪目标的速度相对较低,不会在两帧图像采样的间隔内突然由未被遮挡变为完全被遮挡。 目标被部分遮挡时需要处理2个问题,第1是结合特征点匹配和颜色直方图反向投影匹配2种方法继续追踪目标的位置;第2是判断目标是否已被完全遮挡或目标是否已经走出遮挡。目标被完全遮挡时,需要在每一帧图像中搜索目标,从而当目标走出遮挡时能找回目标并继续用上文中的基础算法追踪目标。 2.1 处理目标被部分遮挡情况的算法 随着追踪帧数的增加,匹配的特征描述子之间的差距会整体性增大,进而所选取的特征点匹配对中出现匹配错误的概率也逐渐增大。在此,继续采用2.2节中所用的方法减小匹配错误的概率。除此以外,为了减小不可避免的特征点匹配错误带来的误差,存储目标被遮挡前的前10帧图像中目标上的特征点的信息,然后将当前帧图像中的特征点分别与此10组数据进行匹配,最后求取所得的10个目标位置坐标的平均值,得到特征点匹配算法估算的目标位置。 进一步的,为了减小特征点匹配错误带来的目标位置的波动变化,利用目标颜色统计直方图反向投影和Mean Shift算法来修正特征点匹配的结果。具体的,将特征点匹配的结果作为Mean Shift算法的初始搜索位置,求得目标最终的位置信息。为了增加Mean Shift算法搜索的准确度,可以利用彩色图像HSV色彩空间中的色调通道或者Lab色彩空间的色度组件来做颜色直方图反向投影。 当遮挡目标的物体表面颜色相对比较均一时,主动轮廓不会在遮挡物表面停留,导致追踪过程表现为目标面积逐渐减小的过程。此种遮挡情况无法结合判断准则1,2判断出。为检测此种情况,本文假设一般情况下目标面积的相对减小量不会在连续n1帧之间都大于阈值ts3。从而给出在基础追踪算法中判断目标是否已被部分遮挡的判断准则如下: 判断准则3:记录并检查当前图像之前的n1+1帧图像中目标面积的变化过程,如果目标面积一致性的连续减小,并且相对减小量均大于阈值ts3,则认为目标已经被部分遮挡。 在利用特征点匹配信息和颜色直方图反向投影匹配信息追踪目标位置的同时,还要检查目标是否已走出遮挡或是否已被完全遮挡。具体的判断准则如下: 判断准则4:用Mean Shift算法求得的目标位置和目标被遮挡前的外接矩形,初始化基础追踪算法,然后比较基础追踪算法运行n2(本文取5)帧图像后的结果和特征点匹配与Mean Shift算法求得的结果,如果差距小于阈值td1,记为成功1次。然后继续用Mean Shift求得的结果初始化基础追踪算法,重复此判断过程,直到有连续3次成功,则判定目标已走出遮挡。 判断准则5:如果当前图像中匹配到的特征点对数小于3,或者Mean Shift算法求得的目标区域的颜色统计直方图和目标遮挡之前的颜色统计直方图之间的用Bhattacharyys测量法评估的相似度小于某个阈值tB1,则认为目标已被完全遮挡,或者处理部分遮挡情况的算法追踪失败。 2.2 处理目标被完全遮挡情况的算法 目标被完全遮挡后,算法需要在每一帧图像中,利用颜色统计直方图反向投影所得的概率分布图和Mean Shift算法,搜索目标可能存在的区域,然后比较所得区域的颜色统计直方图和被遮挡前的目标颜色直方图之间的Bhattacharyys相似度,来判断是否成功找回目标。一般情况下,假设目标运动状态变化较慢,所以本文利用目标被遮挡前的速度和大小来预测被完全遮挡后Mean Shift算法搜索的初始区域。当目标的运动比较复杂时,这种预测方法将无法找回目标。然而当目标在图像中的运动较复杂时,目标相对背景是运动的。因此,在使用以上的预测搜索算法搜索一定帧数的图像却依然未能找回目标后,将采用文献[6]中提出的移动背景下运动目标检测算法,全局检测存在运动目标的区域,然后在检测出的区域中应用以上的颜色直方图反向投影匹配算法寻找目标。判断目标是否找回成功的判断准则如下: 判断准则6:如果连续n3(本文中取5)帧图像中,目标搜索算法求得的目标区域的颜色统计直方图与存储的目标颜色统计直方图之间的Bhattacharyys相似度均大于某个阈值tB2,则判定目标找回成功;如果连续搜索了n4帧图像依然没有成功找回目标,则判定目标找回算法失败,结束搜索。 应用本文中提出的算法追踪目标时,需要利用前文中提出的各个判断准则将基础追踪算法、状态修正算法以及处理目标被遮挡情况的算法有机结合。另外,还要通过一些场景实验找到判断准则中各个阈值的合适值。结合各部分算法的具体步骤如下: Step 1:通过人机交互界面输入目标的外接矩形,然后以此矩形为初始轮廓求出目标的主动轮廓,进而给出目标状态向量的初值,进入卡尔曼滤波算法。 Step 2:读取新的一帧图像,利用卡尔曼滤波算法预测出目标的外接矩形,以此为初始轮廓求出目标的主动轮廓,进而求出观测向量,然后应用判断准则1判断观测是否成功,若观测失败则进入Step 3,若观测成功,再应用判断准则3判断目标是否被部分遮挡,若目标已被部分遮挡则进入Step 5,否则进入Step 4。 Step 3:通过特征点匹配,给出修正的目标初始轮廓,再次求解目标的主动轮廓,进而得到修正后的观测向量,然后应用判断准则2判断修正是否成功,若修正成功则进入Step 4,否则进入Step 5。 Step 4:利用目标的观测向量,进行卡尔曼滤波的一步校正环节,求得目标状态向量的最优估计,然后更新已存储的目标面积、特征点和颜色统计直方图等信息,返回Step 2。 Step 5:利用特征点匹配信息和颜色直方图反向投影匹配信息继续追踪目标的位置,然后应用判断准则5判断目标是否已被完全遮挡,若目标已被完全遮挡则进入Step 6,否则再应用判断准则4判断目标是否已走出遮挡,若目标已走出遮挡则跳转到Step 2,若目标尚未走出遮挡状态,读取下一帧图像,再重复Step 5。 Step 6:利用颜色直方图反向投影匹配的方法寻找目标的可能位置,然后应用判断准则6判断目标是否找回成功,若判定目标找回成功则跳转到Step 2,若判定目标找回算法已失败,则跳转到Step 1,若目标找回算法尚未失败,则读取下一帧图像,再重复Step 6。 本文中使用缩小的汽车模型,模仿飞行器追踪地面目标时的视角拍摄追踪视频,以验证提出的算法。在追踪算法中,滤波参数设置如下。状态噪声向量Zk的方差矩阵Qk和观测噪声向量Vk的方差矩阵Rk都设为单位矩阵。状态估计均方差初值选取为P0=αIn,在本文中α选取为10,且实验结果表明在此例中α的选取并不影响滤波算法的收敛。初始状态向量X0中,目标的位置和面积由第一帧图像中鼠标输入的矩形框及主动轮廓算法的结果求得。在第一帧图像中目标有可能向各个方向运动,所以,在初始状态中令目标外接矩形的高度和宽度的增量ΔhR和ΔWR和取为某一固定的正值。此数值可根据图像的大小和分辨率选取,如本文中选取8。除此以外,其他表示增量的状态的初始值都选取为0。 图1中第1行的4幅图像展示了基础追踪算法对目标位置和大小的追踪效果,第2行图像展示了利用特征点匹配信息修正观测向量的过程。图2展示了目标仅仅被部分遮挡时的处理过程,其中粉色矩形是利用特征点匹配和颜色直方图匹配求得的目标位置。图3展示了算法处理目标被完全遮挡情况的过程。其中目标先被部分遮挡,算法继续追踪目标的位置,直到没有足够的特征点匹配对时,认为目标已被完全遮挡。然后,算法利用存储的目标颜色统计直方图,找回走出遮挡的目标并继续利用基础追踪算法追踪目标。 图1 基础追踪算法和状态修正算法的验证Fig.1 Result of basic algorithm and state correction 图2 处理目标被部分遮挡情况的算法验证Fig.2 Tracking result with object partially shaded 图3 处理目标被完全遮挡情况的算法验证Fig.3 Tracking result with object totally shaded 对实验过程中追踪数据的分析表明,状态初始化时引入的误差会随着滤波步数的增加逐渐衰减到0,在相机无急剧抖动的条件下,滤波器预测的目标外接矩形都能够完整地包含下一帧图像中的目标,为主动轮廓算法提供初值。以上结果也再一次验证了,卡尔曼滤波方法可以有效地应用于图像目标追踪算法中,且对滤波参数的配置不敏感。另外,在最初追踪的几帧图像中,虽然滤波器的输出结果包含有初始化时引入的误差,但是误差的大小远小于目标在图像中的尺寸和目标运动速度,所以这些误差并没有导致最初几帧图像中的追踪失败。这也验证了,在基于卡尔曼滤波的图像目标追踪算法中,通过检测和校正目标急剧非线性运动造成的追踪失败,并重新初始化卡尔曼滤波,以解决非线性运动导致卡尔曼滤波算法失败的思路的可行性和有效性。 本文中的基础追踪算法,在图像背景的颜色分布和纹理特征相对简单的场景中,能够很好地追踪目标的位置和目标在图像平面内的大小变化。在此基础上,通过引入其它改进的几何主动轮廓求解算法,还可以继续提高追踪算法对场景的适应性。本文通过一些判断准则,构建了处理遮挡问题的基本框架,并结合一些简单的目标表示与识别方法,实现了算法在简单场景中对目标被遮挡情况的适应。在此算法框架的基础上,可以结合更复杂的目标表示与识别方法,进一步提高算法对更复杂的遮挡情况的适应性。 [1] DALAL N,TRIGGS B.Histograms of Oriented Gradients for Human Detection[C] ∥Computer Vision and Pattern Recognition,2005.IEEE Computer Society Conference on.IEEE,2005:886-893. [2] ZHOU J,GAO D,ZHANG D.Moving Vehicle Detection for Automatic Traffic Monitoring[J].Vehicular Technology,IEEE Transactions on,2007,56(1):51-59. [3] STAUFFER C,GRIMSON W E L.Adaptive Background Mixture Models for Real-Time Tracking[C]∥Computer Vision and Pattern Recognition,1999.IEEE Computer Society Conference on.IEEE,1999. [4] SHI J,TOMASI C.Good Features to Track[C] ∥Computer Vision and Pattern Recognition,1994.Proceedings CVPR’94.,1994 IEEE Computer Society Conference on.IEEE,1994:593-600. [5] 孙斌,黄神治.移动背景下运动目标检测与跟踪技术研究[J].电子测量与仪器学报,2011,25(3):206-210. SUN Bin,HUANG Shen-zhi.Target Detection and Tracking Under Moving Background[J].Journal of Electronic Measurement and Instrument,2011,25(3):206-210. [6] 王亮芬.基于 SIFT 特征匹配和动态更新背景模型的运动目标检测算法[J].计算机应用与软件,2010,27(2):267-270. WANG Liang-fen.Detection Algorithm of Moving Objects Based on SIFT Features Matching and Dynamic Updating Background Model[J].Computer Application and Software,2010,27(2):267-270. [7] COMANICIU D,RAMESH V,MEER P.Real-Time Tracking of Non-Rigid Objects Using Mean Shift[C]∥Computer Vision and Pattern Recognition,2000.Proceedings.IEEE Conference on.IEEE,2000:142-149. [8] 李培华.序列图像中运动目标跟踪方法[M].北京:科学出版社,2010. LI Pei-hua.Moving Target Tracking Method in Sequence Images[M].Beijing:Science Press,2010. [9] 雷振达,马春草.自适应鲁棒滤波在机动目标跟踪中的应用研究[J].现代防御技术,2016,44(1):156-160. LEI Zhen-da,MA Chun-cao.Application of Adaptive Robust Filter in Maneuvering Target Tracking Algorithm[J].Modern Defence Technology,2016,44(1):156-160. [10] 徐杨.面向视频监控的动态目标检测,跟踪与识别关键技术研究[D].沈阳:东北大学,2012. XU Yang.Research on Key Technology of Dynamic Objects Detection,Tracking and Recognition for Video Surveillance[D].Shenyang:Northeastern University:2012. [11] CASELLES V,CATTÉ F,COLL T,et al.A Geometric Model for Active Contours in Image Processing[J].Numerische Mathematik,1993,66(1):1-31. [12] MALLADI R,SETHIAN J A,VEMURI B C.Shape Modeling with Front Propagation:A Level Set Approach[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,1995,17(2):158-175. [13] LI C,XU C,GUI C,et al.Level Set Evolution Without Re-Initialization:A New Variational Formulation[C]∥Computer Vision and Pattern Recognition,2005.CVPR 2005.IEEE Computer Society Conference on IEEE,2005:430-436. [14] BAY H,ESS A,TUYTELAARS T,et al.Speeded-up Robust Features(SURF)[J].Computer Vision and Image Understanding,2008,110(3):346-359. Image Object Tracking Algorithm for Aircraft Oriented Platform CHAI Tian-feng1,ZHU Xiao-long2,MAO Yong-jian1,LU Yong-gang1 (1.China Academy of Engineering Physics,Institute of Systems Engineering,Sichuan Mianyang 621900,China;2.China Academy of Engineering Physics,Sichuan Mianyang 621900,China) Taking active contour as the target observation method, a basic tracking algorithm based on Kalman filtering method is presented for tracking the target position and computing the target area in the image plane. By using the matching information of the feature points, the problem that the sharp nonlinear variation of the target state in the image plane leads to the failure of the basic tracking algorithm is solved. This paper presents an algorithm to deal with the occlusion of the target by two methods: the matching of feature points and the histogram of the target color. Experimental results show that the proposed algorithm can track the position and size of the target in the experimental scene, and can be successfully adapted to the situation that the target is occluded. image object tracking;Kalman filtering;geodesic active contour;key point matching;mean shift algorithm;occlusion problem 2016-06-21; 2016-09-02 柴天峰(1992-),男,甘肃永昌人。硕士生,研究方向为图像目标识别与追踪。 通信地址:621900 四川省绵阳市科学城四所 E-mail:chaitianfeng@126.com 10.3969/j.issn.1009-086x.2017.03.020 TN911.73 A 1009-086X(2017)-03-0122-072 处理目标被遮挡情况的算法
3 结合各部分算法的完整算法
4 实验验证
5 结束语