刘 娜,岳琪琪,陈加宏,孙 健
(1.上海大学 机电工程与自动化学院,上海 200444;2.上海大学 计算机工程与科学学院,上海 200444)
海面目标跟踪任务对于海面目标行为分析及水面无人艇的导航避障等方面有着重要意义[1]。海面目标跟踪任务的定义如下:根据海面图像序列第一帧中海面目标的信息,该任务负责在之后的每一帧图像中定位出该目标[2-3]。不同于普通场景的目标跟踪任务,海面目标跟踪虽然背景较为简单,但是具有目标抖动剧烈和目标尺度变化大等独特难点。
普通场景的目标跟踪算法需要充分利用视频中图像帧与帧之间的关系,通常的做法是根据上一帧目标的中心位置获得一定的搜索区域,然后在该搜索区域内寻找当前帧目标的位置,因此一旦目标不在搜索区域内,肯定会造成跟踪失败。在海面目标跟踪过程中,感知摄像机架设在无人艇上,无人艇受风浪影响会发生晃动,对于轻微晃动可以通过相机云台来消除,但是当海况较差时,无人艇会发生超出云台可调节范围的剧烈晃动,使目标在图像中的位置直接超出搜索区域,从而导致跟踪失败[4]。如图1(a)所示(彩图见期刊电子版),黄、蓝、红、绿4条直线分别表示前后4帧图像中海天线位置的变化,在当时图像采集频率为30 frame/s的情况下目标在图像画面中产生了剧烈抖动。另一方面,尺度自适应对海面目标跟踪算法的性能也有着重要的意义[5-10]。若估计的目标框比目标尺度大,则下一帧的搜索区域会包含更多背景信息,容易导致最佳响应值偏移到背景上从而导致跟踪漂移甚至失败;若估计的目标框比目标尺度小,则跟踪模板只能学习到目标的局部外观信息,容易导致定位精度低或发生非预期情况使跟踪失败。海面目标大多为船只,其长宽比较大,同时海面目标可活动范围较大,操作自由度大,当目标自身发生转向时,目标船只的尺度变化会很大。图1右侧图表示了海面目标在尺寸和长宽比两个方面的变化。以上两个挑战都会严重打破跟踪算法的一个重要先验:前后图像帧中目标的变化不大。海面目标跟踪算法必须能够有效解决以上难点,并且实现定位准确,跟踪鲁棒和CPU下实时的跟踪效果。
(a)目标剧烈抖动(a)Intense target jitter(b)目标尺寸和长宽比变化(b)Change of target size and length-width ratio图1 海面目标跟踪面临的独特挑战Fig.1 Unique challenges in sea surface target tracking
目前常用的实时跟踪算法可以分为两类:一类是基于相关滤波的,另一类是基于孪生网络的。早期,基于相关滤波的跟踪算法使用人为设计的特征[5-13],其跟踪鲁棒性有较大提升空间。后来,基于相关滤波器的跟踪算法通过循环样本集训练一个二维的滤波器来寻找图像中目标的位置,并且根据循环矩阵可以在傅立叶域对角化的性质,将复杂的时域运算转化到傅立叶域元素间的点乘运算,大大减少了运算量,跟踪算法的效率很高[12],在CPU计算平台上可实现超实时跟踪。采用卷积神经网络提取目标深度特征可以较大幅度地提升跟踪性能,但是神经网络的计算复杂度大,会降低跟踪算法效率[14-18],无法做到在CPU计算平台上跟踪。基于孪生网络的跟踪算法通过将模板区域与候选区域做相似性匹配来寻找目标的位置[19],目前一些基于孪生网络的跟踪算法在精度和鲁棒性方面都表现优异[20-22],但是无人海洋平台的供电功率有限,无法为算法处理提供高性能的GPU计算平台,所以无法采用基于卷积神经网络的跟踪算法。因此,本文采用相关滤波作为跟踪算法的基本框架。
目前,以上两类跟踪算法均不能很好地处理海上目标抖动大的情况。所幸,相机抖动并不会造成图像中场景相对位置的变化,因此本文提出一种搜索区域自适应方法,提取海面场景中海天线位置并通过海天线运动模型来修正目标搜索区域。该方法首先使用高斯混合模型[23]对海面场景进行建模,并使用EM迭代算法[24]对模型进行求解以完成海面分割任务,然后通过分割结果确定海天线在图像中的位置,以海天线竖直方向的平移运动和平面内的旋转运动对其主要运动进行建模,最后通过求解前后两帧海天线的运动参数来修正跟踪算法中目标搜索框的位置。
上述两类跟踪算法解决目标尺度问题的方法大致可以分为两类:一类是直接通过构建图像金字塔以获得不同尺度的候选目标[5-8];另一类是受目标检测方法的启发提取预先具备目标性质的候选区域[9,20]。但是这两种方法的本质都是通过列举不同尺度的目标来估计目标真实尺度,面对海面场景中目标尺度变化大的情况,跟踪效果不理想。因此,本文采用图像分割获取目标真实大小的策略以实现跟踪过程中目标尺度自适应。该方法首先使用基于马尔可夫随机场的图像分割[25]策略充分利用全局色彩信息和位置信息来分割目标,然后使用基于结构化随机森林的边缘检测策略以利用局部轮廓信息来提取边缘细节[26],最后使用融合策略将以上两种方法的处理结果进行融合得到更精确的目标尺度。该方法有效解决了跟踪过程中因目标尺度变化较大而导致的无法获取目标真实尺度以及跟踪漂移的问题。
为了验证本文提出的搜索区域自适应算法和尺度自适应算法的有效性,分别选取了目标抖动大的视频序列和不同尺度变化的视频序列进行定性和定量分析,在目标抖动大的序列上测试,本文提出的算法精确度可以达到92%,而KCF只能达到3%,在不同尺度变化的序列上测试,本文提出的算法能够更好地应对目标大尺度变化,并且实验表明,在搜索区域自适应算法中应用的海天线检测算法和在尺度自适应算法中应用的图像分割算法都能够达到很好的效果。在真实的海面目标图像测试序列中,基于相关滤波跟踪框架并结合上述两种改进策略的跟踪方法相比传统的相关滤波算法,跟踪精度至少提升了约26%,鲁棒性至少提升了约16%。
本文跟踪算法的总体框架如图2所示,对于待跟踪图像,首先由上一帧目标的位置和尺度获得搜索区域并提取搜索区域的HOG特征,采用相关滤波算法寻找目标的中心位置。相关滤波算法生成与搜索区域大小相同的响应图,响应图中值最大的位置即为目标中心位置。若目标中心位置的响应值大于阈值(通过实验确定),则认为得到的目标中心位置可靠。此时进行尺度自适应算法,根据得到的目标中心位置截取图像块,再通过图像分割算法将目标从背景中分割出来以获得目标的精确尺度,最后由目标的尺度矫正目标中心的位置;若目标中心位置的响应值小于阈值,则认为得到的目标中心位置不可靠。此时执行搜索区域自矫正算法,分割当前帧和上一帧图像中的海天区域,并由此拟合出海天线的直线方程。由当前帧和上一帧的海天线方程可以得到海天线的运动模型,然后通过海天线的运动模型修正搜索区域的位置,再一次通过相关滤波获取目标的中心位置,直到最大的响应值大于设定的阈值进行尺度自适应。
图2 海面目标跟踪算法框架Fig.2 Framework of sea surface target tracking
本文提出的跟踪算法由相关滤波模块、搜索区域自矫正模块和尺度自适应模块3个模块组成。相关滤波算法[12]作为基础框架,在其基础上通过响应值大小来判断跟踪效果。在第i帧,以目标中心位置为中心,以目标尺度扩大一定的比例后得到的图像块作为基样本,将基样本循环位移后得到循环样本集。依据岭回归模型求解滤波器,线性岭回归的优化公式为:
(1)
其中:w为滤波器,xi为样本,yi为样本对应标签,λ为正则化项系数,对于非线性,引入核空间:
(2)
在基本空间关于参数w的极小化问题转换为对偶空间关于参数α的极小化问题。此时α存在闭式解,在频域空间可得到:
(3)
其中:kxx为核自相关量,y是标签矩阵,α为αi的向量化。在跟踪过程中得到的搜索区域z的响应图为:
(4)
其中:kxz为x与z的核相关值。响应图中最大值所在的位置即为目标中心的位置,若最大的响应值小于阈值说明跟踪失败,此时执行搜索区域自矫正模块。为了应对目标变化大的问题,在相关滤波输出的目标位置之后执行尺度自适应模块。
为了解决海面目标抖动剧烈的问题,本文通过海面环境的先验信息来提取海天线并完成对目标运动模型的修正,具体方法流程如图3所示。首先对当前帧图像和前一帧图像分别使用高斯混合模型进行分割,将海景分割为天空和海面两个区域,两区域的交界处即为海天线位置;然后使用直线方程拟合海天线,并通过前后两帧海天线的直线方程得到海天线运动模型;最后由海天线运动模型获取海天线的平移量和旋转量并根据这两个量修正目标搜索框的位置。通过上述操作流程可以将目标搜索框修正到更加合适的位置,从而解决因目标抖动过大而导致的跟踪失败问题。
高斯混合模型及其优化:观察到海景中海面与天空两个区域色彩差异较大,而单个区域中色彩又较单一的特点,本文使用高斯混合模型[23]对海面-天空场景进行建模。本分割任务将图像分割成天空和海面两个类别,因此使用的高斯混合模型由两个高斯模型组成。最后通过EM优化方法求解模型参数。为了得到更好的EM迭代效果,先通过自适应算法确定大致的海面和天空区域。
图3 搜索区域自适应算法流程图Fig.3 Flowchart of adaptive search area algorithm
大致确定海面和天空区域方法的流程如图4所示。首先将原图缩放至较小的分辨率,由于这里是对整幅图像进行图像分割,而图像分割所花费的时间与像素点的个数成正相关,所以需要先对图像进行缩放。在同时考虑速率和精度的情况下,将图像缩放至50×50的分辨率;然后将三通道图像转换为单通道灰度图并计算每行像素的均值。平均值能够抑制干扰,得到正确的海天线的大致位置,所以此时数据维度变为50×1。由于海上场景天空比较明亮,从天空区域过渡到海面区域灰度值会发生突然变小,对50×1维的数据求一阶导数,一阶导数最小的位置即为海天线大致位置。获得海天线的大致位置后,将海面场景自适应的划分为两个区域,根据这两个区域的大小初始化高斯模型。图像中每个像素均包括像素位置通道(row,col)和像素色彩通道(Y,U,V)共5个通道,每个通道均对应一个高斯分布,使用EM算法分别对5个高斯分布的参数求解。
图4 混合高斯模型初始位置自适应流程图Fig.4 Flowchart of adaptive initial position of mixed gauss model
EM(Expectation Maximization)算法[24]可以分为如下两步:第一步为E步(期望步),每个像素点的5个通道信息输入对应通道的高斯分布,得到5个通道上的概率,整合后即可得到该像素属于天空或者海面的概率。每次进行迭代后都要判断是否已经达到预设的精度要求,如果达到了就停止迭代得到最终结果。这里使用概率分布的变化量作为判别标准,将本次迭代后求得的概率分布和上一次迭代求得的概率分布进行加权求和,再与本次迭代后求得的概率分布进行对应位置上的差值运算。在第一次迭代之前由于不知道像素的标签,所以每个像素等概率的属于天空和海面两个区域即均为常值0.5。若前后两次迭代中概率分布发生的变化较小说明已经达到迭代终止条件,则停止迭代;第二步为M步(最大化步),根据E步求出各像素点属于海面的概率和属于天空的概率,将所有像素点进行天空或海面的区域分类,根据新的分类结果求出使概率分布的似然函数取得极大值的新高斯模型的参数。接下来使用更新后的高斯模型参数进行下一次迭代的E步,以此循环迭代直至达到迭代终止条件。
搜索区域修正:以图像的平移运动和旋转运动来描述海天线的运动。而海天线水平方向的运动主要是由无人艇自身的主动转向导致的,其运动频率较低不是导致海天线运动的主要原因,所以不进行考虑。因此,海天线在图像相邻两帧的位置变化可以由竖直方向的平移运动和图像平面内的旋转运动的合成运动进行建模。根据上一步的分割结果通过简单的边缘提取操作即可获得海天线的位置,然后使用基于RANSAC[27]的直线拟合方法拟合出海天线最佳位置的直线方程。
如图5所示(彩图见期刊电子版),以图像左上角为坐标原点,水平向右为x轴正方向,竖直向下为y轴正方向建立坐标系。图像的宽度为W,高度为H,红色线条为海天线在上一帧图像中的位置,其方程式为y=kn-1x+bn-1,绿色线条为海天线在当前帧图像中的位置,其方程式为y=knx+bn。红点On-1(xn-1,yn-1)为上一帧目标中心位置即为当前帧矫正前搜索框的中心位置,绿点On(xn,yn)为当前帧经过校正后搜索框的中心位置。这两点之间的转换关系和两海天线之间的转换关系相同,求出两海天线之间的转换关系即为这两点之间的转换关系。
图5 海天线运动模型求解示意图Fig.5 Sketch of getting sea-sky line motion model
图像矫正前后,图像中各点的相对位置不会变化,所以向量CnOn与向量Cn-1On-1的模相等,夹角与前后两帧海天线的夹角α相同,即:
(5)
而上一帧中海天线中心与搜索框中心组成的向量Cn-1On-1为:
(6)
向量Cn-1On-1旋转角度α后得到CnOn为:
(7)
最终可得点On(xn,yn)的坐标为:
(8)
根据上一帧图像中目标的位置以及公式(8)可求得修正后的目标搜索框的中心位置。
尺度自适应方法的总体流程如图6所示。首先对于新的一帧图像,由相关滤波模块得到目标的粗略位置,此时得到的位置信息并不准确;然后在这个粗略的目标位置上扩大一定的比例截取出待分割目标区域;接着使用基于马尔可夫的海面目标分割方法和基于结构化随机森林的海景边缘提取方法分别得到目标的轮廓;再使用本文提出的融合方法将两个结果融合得到最终的分割结果;最后使用分割结果在原图上得到目标的精确位置以及尺寸。通过上述描述的流程即能实现目标在跟踪过程中的尺寸自适应。
图6 尺度自适应算法流程图Fig.6 Flowchart of adaptive target scale
基于马尔可夫的海面目标分割:在目标分割时,目标的中心位置已知,可以以某像素点属于目标的概率会随着与该中心位置的距离的增大而减小建立空间先验信息。使用修改后的二维高斯分布作为空间先验,二维高斯分布的函数形式如下:
(9)
其中row和col分别表示像素点在图像坐标系中的行数和列数。
随后根据实际情况确定二维高斯分布中的参数σ1和σ2。以目标框为临界位置,目标框及目标框外的位置属于目标的概率等于0.5;靠近目标框中心属于目标的概率大于0.5且逐渐增大,则可以得到如下等式:
(10)
(11)
其中:式(10)、式(11)均是以图像中心位置作为坐标原点,a表示中心位置属于目标的概率,H表示目标框的高度,W表示目标框的宽度。那么可以计算得到:
(12)
(13)
将指定中心位置像素点属于目标的概率a以及目标框的尺度H和W带入式(12)和式(13)即可以计算出σ1以及σ2。最终获得的空间位置先验形状如图7所示。
海上环境中目标与背景的色彩差异较大,所以选择颜色信息作为先验,使用颜色特征可以实现对目标分割[28]。获得图像颜色编码直方图的过程如图8所示。
图8 前景和背景编码直方图建立流程图Fig.8 Flowchart of establish foreground and background coding histogram
首先将待分割区域图像从RGB颜色空间转换到HSV颜色空间,HSV颜色空间能够非常直观地表达色彩的明暗、色调以及鲜艳程度,方便进行颜色之间的对比。目标框将待分割图像分划分为前景和背景区域,目标框内的像素点均属于前景,目标框外的像素点均属于背景。将HSV颜色空间的彩色图像分离为3幅单通道的灰度图像,分别统计出每幅单通道图像的直方图,由此可以分别提取前景以及背景的颜色统计直方图。颜色直方图的组距设置为16,这样0~255的灰度值就会映射到直方图的0~15区间内。前景和背景分别生成3幅直方图,则图像特征的维度共48维。但是此时3个通道之间的信息相互独立,为了将3个通道关联起来,对3幅直方图进行编码。编码前HSV 3通道的直方图均为16维,取值为0~15,编码后的直方图维度共4 096维。编码的具体转换公式如下:
Hist4 096(hist)=256×H16(h)+
16×S16(s)+1×V16(v),
(14)
其中:H16(h),S16(s),V16(v)分别表示像素点对应到3个通道直方图的位置分别为h、s和v,16代表该向量为16维,Hist4 096(hist)则表示该像素点对应到编码直方图中的位置,4 096代表该向量为4 096维。根据该计算公式可得像素对应到编码后的直方图的位置,如此遍历每一个像素点后即可得到前景和背景的编码直方图。
综合上述步骤,得到待分割图像中每个像素的信息,包括颜色空间3通道特征(H,S,V)以及空间位置特征(x,y)共5个通道的数据,根据学习到的颜色统计编码直方图以及建立的空间概率分布图计算出目标后验概率。具体步骤如下:首先根据上一步骤生成的前景和背景图像块的编码直方图即可得到这个像素点属于前景和背景的概率,将前景概率进行归一化后可得到该像素点在只考虑色彩通道的情况下属于前景的概率P1;然后将像素点的空间位置特征(x,y)带入生成的空间先验图,得到该像素点在仅考虑空间位置的情况下属于前景的概率P2。最后,将这两项概率相乘即可得到该像素点属于前景的概率(P1×P2)。
基于结构化随机森林的目标边缘提取:图像中的边缘在图像分割任务中是非常重要的信息,通过边缘检测来达到较好的分割效果。基于结构森林的边缘检测是Dollar等[26]首先提出的,随机森林由众多互不相关的决策树组成,每个决策树相当于一个弱分类器,而决策树组成的随机森林相当于一个强分类器,能提高泛化以及容错能力。对于单个决策树j,使用训练数据集进行训练:
Sj⊂X×Y,
(15)
其中:X为训练样本集合,Y为样本对应的标签集合。训练的过程就是寻找节点分离函数:
h(x,θj)=[xk<γ∈{0,1}],
(16)
其中:θj=(k,γ),k为样本x的某一特征,γ为该特征对应的阈值。在此过程中根据如下信息增益准则来选择特征:
(17)
(18)
(19)
(20)
其中Py为训练集Sj中标签为y的概率。
计算其每个特征的信息增益,并比较它们的大小,然后选择信息增益最大的特征作为结点。如此不断地递归训练直到达到了设定的树的深度或信息增益的阈值,最终就能确定决策树的分支情况以及每个内部结点使用的判别特征。
基于马尔可夫随机场的图像分割实际上使用了图像的全局信息,即目标的整体色彩信息,而基于结构化边缘提取的图像分割实际上使用了图像的局部纹理信息。本文融合了全局信息和局部信息以实现更好的分割效果。融合方法如下:
Ic=Ia.*Ib,
(21)
其中:Ia为使用基于马尔可夫随机场分割方法得到的目标概率图,Ib为使用基于结构化森林边缘检测得到的边缘响应图,运算符号.*代表对应位置上元素相乘,Ic则为融合两种方法得到的结果。
以安装在水面无人艇上的环境感知摄像机拍摄的真实图像序列作为本文跟踪算法性能评估的测试数据集,并按照OTB100[2-3]目标跟踪数据集公开的统一标准进行了人工标注。
基于上述测试数据,本文定性地分析了海天线检测算法和目标分割算法的有效性,定量地评估了跟踪算法的成功率和精确度。成功率、精确度和鲁棒性是评估跟踪算法的3种度量指标。通常根据精确度曲线图和成功率曲线图对跟踪算法的性能进行排名,用曲线与横坐标和纵坐标所围成的面积来量化表示,其取值范围为0~1,越接近1代表算法的跟踪效果越好。
精确度曲线图的横坐标为中心距离阈值,纵坐标为中心距离小于对应横坐标阈值帧数与总视频总帧数的比值。中心距离定义为跟踪算法得到的目标框的中心坐标与真实的目标框的中心坐标之间的欧式距离,距离公式定义如下:
(22)
其中:(xgt,ygt)是目标真实边界框的中心坐标,(xbb,ybb)是计算得到的目标边界框的中心坐标。
从式(22)可以看出,该评估方法只考虑目标框的位置而没有考虑目标框的尺度,因此这个评估方法常用于评估目标尺度固定的跟踪算法的跟踪精度。
成功率曲线图的横坐标为重叠率阈值,纵坐标为重叠率超过对应的横坐标阈值的帧数与视频总帧数的比值。重叠率定义为跟踪算法得到的目标边界框与目标实际边界框之间的交集与并集的比,其公式如式(23)所示:
(23)
其中:Areabb为计算得到的目标边界框区域,Areagt为目标真实边界框区域,∩和∪分别表示两个边界框之间的交集和并集,Num(·)表示指定区域中像素点的个数。重叠率IOU数值越大表示计算结果越理想,其取值范围为0~1。
鲁棒性评估分为一次性通过评估(One-pass Evaluation,OPE)、时间鲁棒性评估(Temporal Robustness Evaluation,TRE)和空间鲁棒性评估(Spatial Robustness Evaluation,SRE)共3个算法鲁棒性评估标准。本文只用到OPE和TRE,因此介绍这两种鲁棒性评估。OPE在视频的第一帧用真实的目标位置对跟踪算法进行初始化,使用跟踪算法得到后续帧中目标的位置即完成一次性通过评估;TRE与OPE不同,其将每个视频序列平分成20个等份,然后从不同等份的起始帧开始跟踪器的初始化,使用跟踪算法得到后续帧结果。因此,TRE相当于每个视频序列的不同起始时间上独立执行算法20次,以此实现时间鲁棒性的评估。
从海面目标图像序列中随机选取一张海天图片验证EM迭代算法的有效性。如图9所示,分别为原图像和迭代1、2、3、4、5次后的分割效果。第1次迭代结果由于人为设定的初始化高斯模型与真实值存在偏差导致分割效果不理想;从第2次迭代开始,分割结果相对理想,但是前后两次迭代的概率分布仍在变化,迭代仍然继续;第5次迭代完成后,概率分布的变化量小于指定阈值,即达到了迭代终止条件。上述分割结果与人为分割效果十分接近,由此可以看出EM迭代算法的有效性。
图9 EM迭代算法多次迭代分割效果Fig.9 Multiple iterative of EM iterative algorithms
如图10所示,每行分别表示一个图像序列中的一帧图像的海天线检测过程,从左到右依次为缩放后的原始图像、分割效果、提取的海天线和海天线直线拟合效果。前2行的海天线检测效果表明:当目标较远时,海天线没有被物体遮挡,检测海天线的难度较低;第4行和第5行的测试结果表明:即使视野出现较大的物体遮挡了海天线,本文检测方法仍然能够准确地检测海天线的位置;最后2行由于海上天气原因,造成图像中天空和海面颜色差异较小,对于基于颜色特征的分割方法带来了极大挑战。第5行检测结果显示:虽然成功检测出海天线位置,但是恶劣的天气严重影响了海天线的检测精度。
图10 海天线检测实验验证Fig.10 Experiment of sea-sky line detection
为了更直观地感受目标分割方法的效果,单独对目标分割的有效性进行了实验验证。从采集的图像序列中抽取5个序列进行不同分割方法的对比,结果如图11所示。从左到右依次为待分割图像、真实分割效果、基于马尔可夫随机场分割方法得到的结果、基于结构化随机森林提取的边缘结果以及使用本文提出的融合策略得到的融合结果。第3列和第4列结果显示:基于马尔可夫随机场的分割方法获得分割结果的轮廓精确度较差;基于结构化随机森林提取的边缘包括了背景边缘相比于只使用一种分割方法,使用本文提出的融合策略得到的分割结果更加贴近目标真实的轮廓和大小,用这种结果来确定目标尺度的效果会更好。
图11 目标分割方法效果对比Fig.11 Comparison of different target segmentation methods
搜索区域自适应实验是验证算法对目标的定位效果而不考虑目标尺度,所以只需用中心距离衡量标准来评估跟踪效果。选择KCF,KCF2,LCT以及本文算法共4个算法进行对比。KCF[12]是本文算法的基础框架,KCF2是将KCF的搜索框由之前的2.5倍调整到5.5倍,验证以单纯扩大搜索框的方法面对目标剧烈抖动的效果。LCT[29]算法中添加了跟踪失败再检测模块,能够在跟踪失败后通过检测重新定位目标位置。本文是本文提出的使用前后两帧之间海天线的运动参数来矫正搜索框位置的算法。
图12为4种算法在一个目标抖动剧烈测试序列上的跟踪效果对比图。由于第1帧和第2帧之间目标抖动过大,KCF算法丢失了目标,而此时扩大了搜索区域的KCF2算法成功的定位到目标位置。第11帧,除了本文算法外其他算法均跟踪失败,但LCT的重检测模块能在后续帧中再次定位到目标位置。第95帧,只有本文算法和LCT算法定位到了目标实际位置。以上结果表明:单纯的扩大搜索区域对目标抖动问题有一定的缓解作用,而本文提出的通过海天线的运动参数来矫正搜索框位置能有效地解决目标抖动剧烈的问题。
图12 目标抖动剧烈情况下跟踪算法效果对比图Fig.12 Comparison of tracking algorithm in the case of violent jitter of target
图13是目标抖动大的图像序列上作一次性通过评估的精确度曲线图。精确度曲线表明:算法之间的性能差距很大,这是由于在高海况场景下,即使相邻帧之间目标也会发生较大位移,对于没有跟踪失败再检测功能的跟踪算法而言,只要某帧跟踪失败后续帧几乎都是错误的跟踪结果。所以KCF以及KCF2算法的精度很低,LCT算法凭借着再检测模块对目标的重新定位以至不丢失目标,其跟踪精度略好。而本文提出的算法表现最好,证明了本文提出的使用海天线运动模型参数修正目标搜索框的算法的有效性。
图13 目标抖动剧烈跟踪算法精确度曲线Fig.13 Comparative experiment of target segmentation
为了验证本文提出的目标尺度自适应算法的有效性,选取了SAMF,DSST,KCFDP,KCF这4种算法与本文提出的算法进行对比。其中,SAMF[8]和DSST[5]能够实现长宽比固定的尺度自适应,KCFDP[9]能够实现长宽比自适应的尺度自适应,KCF[12]不能实现尺度自适应,其作为本文算法的基础框架进行对比。本文算法提出使用目标分割方法来实现尺度自适应的算法。采用OPE以目标框的中心距离和重叠率两个衡量标准来评估跟踪效果。OPE和实际应用过程中的流程完全一致,通过该评估结果能够直接体现算法在实际应用中的表现效果。
图14为5种算法在一个目标尺度变化大的测试序列上的跟踪效果对比图。跟踪结果表明:只有本文算法能够精确地获取目标的位置及尺度。在第2~80帧之间船只目标发生急剧转向,除了本文算法,其余4种算法对船只目标尺度的自适应能力不足;第610~650帧之间,目标在更远的位置发生了急剧的转向,本文算法仍然能够通过目标分割算法准确的获取目标的位置及尺度,KCFDP、DSST和SAMF 3种算法在第650帧目标完成转向后只能跟住目标船只的尾部,而KCF由于不能实现尺度自适应导致背景信息所占的成分越来越多,到1 110帧跟踪完全失败。值得一提的是在该图像序列的第2帧,本文算法得到的目标尺度与初始化的目标尺度相比发生了较大变化。这是由于本文的目标分割方法无法精细地解决船只边缘细长的凸起物,只能将船只的主要部分分割出来。正是由于这一特性该算法才能着重于目标的主要特征部分从而减少了背景的干扰,获得更好的跟踪效果。
图14 目标尺度变化大的情况下跟踪算法效果对比图Fig.14 Comparison of tracking algorithm under large scale changes of target
图15 不同尺度变化情况下跟踪算法精确度曲线和成功率曲线Fig.15 Precision plots and success plots of tracking algorithms under different scale variations
如图15所示是不同算法量化对比曲线图。其中第1行为不同跟踪算法在图像序列上的精确度曲线图,该评估标准中用定位误差阈值为20像素点时的精度值来量化排名,因为此时各算法的精确度曲线趋于平稳,可以真实地体现跟踪算法的性能;第2行结果为不同跟踪算法在图像序列上的成功率曲线图。两行跟踪结果从左至右分别表示目标尺度变化逐渐增大。第1行结果显示:目标尺度变化不大时本文算法与KCFDP的成功率接近,而目标尺度变化大时,本文算法与KCFDP的成功率差距显著,表明本文提出的算法具备更好的处理海上目标尺度变化大的能力。第2行结果显示:目标尺度变化不大时,几个算法的精确度都可以达到100%。但是当目标尺度变化大时,本文算法的精确度仍有100%,其他算法则很低,进一步表明本文算法的有效性。
根据图15结果定量分析:(1)当目标尺度缓慢变化、长宽比不变化的情况下,这几种算法的精确度均能够达到100%;在获取目标具体尺度方面,能实现尺度自适应的算法表现要优于不能实现尺度自适应的KCF基础算法,而其中本文提出的算法获得成功率为85.5%的最优量化评分,但是由于该情况比较简单很难拉开差距,所以其相比于第2名的DSST只提高了3.3%。(2)当目标尺度急剧变化、长宽比缓慢变化的情况下,这几种算法的精确度仍然都能达到100%,而在获取目标具体尺度方面,能实现长宽比自适应的算法表现明显要优于其他算法,而其中本文提出的算法获得成功率为73.7%的最优量化评分,但是由于该情况下长宽比只发生了缓慢的变化,所以其相比于第2名的KCFDP只提高了0.8%。(3)当目标尺度急剧变化、长宽比也急剧变化的情况下,这几种算法只有本文提出的算法精确度可以达到100%,并且在获取目标具体尺度方面,本文算法的表现明显要优于其他算法,本文算法获得成功率为65.6%的最优量化评分,相比于第2名的DSST提高了26.9%的精确度,足以证明该算法在应对海上目标跟踪恶劣情况的有效性。
为了验证本文算法的整体有效性以及海上目标跟踪的普适性,本节对本文提出的目标跟踪算法进行了综合性的评估。使用采集的所有海面目标序列对算法进行综合性的评估,分别用一次性通过评估(OPE)和时间鲁棒性评估(TRE)两种方法以目标框的中心距离和重叠率两个衡量标准来评估跟踪效果。
图16和图17的跟踪结果显示:无论是一次性通过评估(OPE)还是时间鲁棒性评估(TRE),本文提出的跟踪算法的表现都是最好的。从评估曲线以及性能指标可以看出,相比于其他跟踪算法本文提出的算法应用在海面目标跟踪场景中,无论是定位精度还是目标框大小,无论是实际应用情况评估还是鲁棒性评估,都得到较大提升。
图16 跟踪算法一次通过性评估精确度曲线和成功率曲线Fig.16 Success plot and precision plot of OPE
图17 跟踪算法时间鲁棒性评估精确度曲线和成功率曲线Fig.17 Success plot and precision plot of TRE
本文着重解决水面无人艇在海面执行目标跟踪任务时遇到的难题,主要针对海面目标跟踪中普遍遇到的两个难题进行研究:海面目标抖动剧烈,这种现象出现在海况较差、目标较远的情况,本文利用海面场景简单、海天线特性突出的特点,使用图像分割的方法来检测海天线位置,并通过海天线的运动模型来修正目标搜索区域。海面目标跟踪过程中目标尺度变化大,本文利用海面场景中目标与背景色彩差距较大的特点,使用分割搜素区域的方法计算目标的真实大小,以实现目标的尺度自适应。为了验证本文提出的算法的有效性,在真实应用场景建立了无人艇海面目标跟踪测试序列中进行了定量和定性分析。实验表明本文提出的算法有效地解决了海面目标跟踪场景中目标抖动剧烈和尺度自适应问题,相比传统的相关滤波算法,其跟踪精度上至少提升了26%,跟踪成功率至少提升了16%。