天空背景红外成像多目标跟踪方法与流程

文档序号:19933246发布日期:2020-02-14 22:16阅读:293来源:国知局
天空背景红外成像多目标跟踪方法与流程

本发明涉及计算机视觉目标跟踪的方法,具体讲是天空背景红外成像多目标跟踪方法。



背景技术:

随着科技的发展,人们对目标检测及跟踪理论已经进行了广泛、深入的研究,并取得了令人瞩目的成果。然而这些方法大多是针对某些具体应用和特定场景进行研究和开发的专用算法,针对多目标密集场景下的实时目标检测和跟踪,现有方法依然存在很大的局限性。特别是针对复杂背景的多目标、点目标的稳定跟踪,依然缺乏高效、适应性好的通用技术。因此,开发实时性好、鲁棒性高的多目标跟踪检测技术,仍然是计算机视觉领域所面临的巨大挑战。开展多目标密集场景下的实时检测与跟踪技术研究,不仅具有十分重要的理论意义,对提高光电探测系统性能也具有重要的工程应用前景。

目前红外多目标跟踪技术主要是检测算法配合跟踪算法完成的。针对红外小目标检测由于在红外波段中,目标的纹理、结构信息缺乏,同时远距离、复杂背景、各种杂波的影响,红外目标经常呈斑点或点状,甚至淹没在背景中,这就造成了红外弱小目标检测极其困难。红外弱小目标检测技术分为两大类:基于单帧的弱小目标检测技术和基于多帧的弱小目标检测技术。但是由于基于多帧的检测技术需要联合多帧捕获目标的运动轨迹,排除噪声的干扰,因此需要极大的计算量和存储量,对硬件要求高,实际工程中应用很少。目前常用的基于单帧的检测方法分为以下三类:背景抑制、视觉显著性、目标背景分离。

目前的目标跟踪方法主要有(1)基于区域信息,如模板匹配方法,该方法简单、准确、速度快,但不能适应目标剧烈形变等复杂环境,此种情况下易造成目标丢失;(2)基于模型信息,是通过建立目标的几何模型,再对模型进行搜索,这种方法也很难解决遮挡问题,且在红外环境中缺乏颜色信息抗遮挡能力更弱;(3)基于贝叶斯框架,即在捕捉到目标初始状态和通过特征提取的目标特征基础上,进行一种时空结合的目标状态估计,可用于被遮挡情况下的目标位置估计,但算法复杂度较高;(4)基于深度学习类方法,具有良好鲁棒性,但容易出现数据缺失问题,且网络训练速度难以达到实时性要求;(5)基于相关滤波,这类方法普遍速度相对较快,其中,基于核相关滤波(kernelizedcorrelationfilters,kcf)的目标跟踪具有快速、精确度高的特点,相比较基于结构化核输出跟踪(structuredoutputtrackingwithkernels,struck)的跟踪算法和跟踪-学习-检测(tracking-learning-detection,tld)框架的跟踪等算法,其跟踪速度提高近10倍,相比较otb50(objecttrackingbenchmark,前50个跟踪视频竞赛序列)精确度为43.1%的最小输出均方误差(minimumoutputsumofsquarederror,mosse)滤波算法,又具有极高的精确度,在使用hog特征的情况下精确度可达73.2%。

而针对天空背景下的红外成像多目标跟踪主要是受到以下技术影响:多目标检测及快速捕获;虚假目标剔除及感兴趣目标识别;多目标的数据关联及稳定跟踪等;满足实时性要求的算法设计及实现。



技术实现要素:

本发明提供了一种天空背景红外成像多目标跟踪方法,以对天空背景的多目标进行快速检测和捕获,以及对虚假目标剔除及感兴趣目标的识别。

本发明天空背景红外成像多目标跟踪方法,包括:

a.读取红外图像序列,从红外图像序列的初始帧起,记录当前读取的帧数,并且每读取k帧进行一次当前帧的状态是检测状态或跟踪状态的判断,k≥1;如果当前帧的处于检测状态,则对当前帧进行一次目标检测,得到所有的n个目标的质心坐标,n>1;

如果当前帧处于跟踪状态,则根据前一帧的位置通过kalman滤波器预测当前帧的位置,根据当前帧更新对应的跟踪器模板,并根据更新后的跟踪模板得到当前帧的位置,用所述当前帧的位置对所述kalman滤波器预测的位置进行校正,得出当前帧最终的目标跟踪位置;

b.当前帧处于检测状态时,通过匈牙利(hungarian)算法将已有的m个跟踪器与所述检测到的n个目标的质心进行关联匹配,得到的三种匹配状态分别为:检测到的目标匹配到了跟踪器、当前帧分配有跟踪器但检测器未检测到目标,以及检测到新的目标但是没分配跟踪器;

c.如果所述的匹配状态为检测到的目标匹配到了跟踪器,则以检测到的目标的质心为初值,重新初始化所匹配的跟踪器的位置,同时校正kalman滤波器的位置,设置连续帧未检测目标的第一变量,由于此状态为检测到了目标,因此第一变量的值设为0;

d.如果所述的匹配状态为当前帧分配有跟踪器但检测器未检测到目标,则将当前帧所对应跟踪器中的滤波器,从前一帧的滤波器模板更新至当前帧的滤波器模板,并将更新了滤波器的跟踪器与当前帧进行关联,使跟踪器通过更新后的滤波器模板重新计算并得到当前帧中的目标位置;设置连续帧未检测目标的第二变量,如果当前帧为红外图像序列的初始帧,则初始化第二变量的值为0,由于此状态为跟踪器在检测阶段未检测到目标,因此第二变量的值加1;如果第二变量的值达到了设定的阈值t,说明当前帧中的目标已经消失,删除当前帧对应的跟踪器;

e.如果所述的匹配状态为检测到新的目标但是没分配跟踪器,则为每一个此状态的目标新建kalman滤波器和跟踪器,并用检测到的每个目标的质心坐标初始化给每个目标分配的跟踪器的位置;设置连续帧未检测目标的第三变量,由于此状态属于检测到了目标位置,因此第三变量的值设为0;

f.跟踪状态:根据前一帧的位置通过kalman滤波器对当前帧的位置进行预测,根据当前帧更新对应的跟踪器模板,并与跟踪器模板进行关联得到目标的响应位置,根据所述的响应位置对kalman滤波器预测的位置进行校正,得到当前帧最终的目标跟踪位置;

g.显示跟踪结果,根据检测状态和跟踪状态返回的目标位置坐标,显示跟踪框;

h.判断当前帧是否为红外图像序列的最后一帧,如果是则结束目标跟踪,否则返回步骤a重复执行。

具体的,步骤a中,在当前帧的处于检测状态时,得到所有的n个目标的质心坐标的步骤包括:

a1.在对当前帧进行一次目标检测时,通过方向高斯差分(directionaldifferenceofguassian,ddog)算子进行滤波;

a2.对所述滤波的输出结果进行二值分割,其中二值分割的阈值为滤波输出结果中的最大像素值和最小像素值之间差值的0.6倍加上最小像素值,然后输出二值分割的结果;

a3.基于所述二值分割的结果进行连通区域分析,输出检测到的n个目标的连通区域的质心坐标,得到目标检测的结果。

进一步的,步骤a1包括:

a11.生成两个长半轴和短半轴分别不同、方差不同的二维高斯滤波器,将这两个二维高斯滤波器做差,生成方向高斯差分算子,公式为:

式中,dog(x,y)为方向高斯差分算子,g1(x,y)为sigma值为σ1的第一高斯滤波器,g2(x,y)为sigma值为σ2的第二高斯滤波器,x和y分别为当前帧对应的跟踪器模板在二维坐标系中的坐标值,σ1和σ2分别对应为第一高斯滤波器和第二高斯滤波器的sigma值;

a12.使用4个不同方向的方向高斯差分算子分别对当前帧图像滤波,其中方向通过引入正弦和余弦函数来表示:

其中x’,y’为:

x和y分别为当前帧对应的跟踪器模板在二维坐标系中的坐标值,θ为在二维坐标系中(x,y)点与x轴方向的夹角,4个不同的方向分别为θ取0°、45°、90°和135°;

a13.将所述4个方向的方向高斯差分算子的主轴右侧系数分别赋值为零,生成4个对应的方向高斯差分滤波器;

a14.选取4个滤波器在分别对应的坐标位置上的最小值作为滤波的输出结果。

具体的,步骤b包括:

b1.基于当前帧检测到的n个目标的质心坐标,以及当前帧已有的m个跟踪器返回的质心坐标,构造一个n×m维的代价矩阵,代价矩阵上的每一个元素表示第i个检测目标和该检测目标对应的第j个跟踪器得到的目标质心的距离,其中i的值为0~n,j的值为0~m;

b2.通过匈牙利算法对n×m维的代价矩阵进行计算,根据最优匹配原则完成任务分配,得到使代价矩阵中所有元素和最小的匹配方式,并返回一个t×2矩阵,在t×2矩阵的两列中包含分配的跟踪器和检测到的目标索引;通过匈牙利算法返回未分配的跟踪器和检测到的目标索引;并输出所述的三种匹配状态。

进一步的,步骤b2中所述的任务分配包括:

b21.对所述n×m维的代价矩阵作行变换和列变换;所述的行变换是将代价矩阵的每一行的各个元素分别减去该行的最小元素;所述的列变换是将代价矩阵的每一列的各个元素分别减去该列的最小元素,有0元素的列不作列变换;

b22.在经过行变换和列变换的代价矩阵中通过标记法寻找所有不同行且不同列的0元素;如果找到,则这些不同行且不同列的0元素的位置则为最优指派;否则,进行步骤b23;

依次检查经过行变换和列变换的代价矩阵的各行,找出只有一个没有加标记的0元素的行,并将这个0元素加上标记,并将与这个0元素在同一列的其他0元素全部加上标记;

依次检查经过行变换和列变换的代价矩阵的各列,找出只有一个没有加标记的0元素的列,并将这个0元素加上标记,并将与这个0元素在同一行的其他0元素全部加上标记;

b23.对标记后的代价矩阵进行调整:根据每一行或每一列中加了标记的0元素的数量,比较所述0元素所在的行和列中包含的加了标记的0元素的数量,如果所述行中的0元素数量多于所述列中的0元素数量,则画一条横线经过所述行中的所有0元素,反之则画一条竖线经过所述列中的所有0元素;

在所述横线和竖线没有经过的元素中找出最小元素;

未画横线的各行元素减去所述的最小元素,画竖线的各列元素加上所述的最小元素;

重新在新的代价矩阵中找出所有不同行且不同列的0元素,这些不同行且不同列的0元素的位置则为代价最少的任务分配。

具体的,步骤c包括:

c1.当所述的匹配状态为检测到的目标匹配到了跟踪器时,在所述的重新初始化所匹配的跟踪器的位置后,重新定位跟踪器的初始框,然后当前帧的状态转到跟踪状态;

c2.同时根据检测到的质心坐标来校正当前帧的kalman滤波器位置;

c3.所述的第一变量用于记录连续未检测到目标的帧数量,因为此状态中跟踪器匹配到了目标,因此当前帧属于检测到目标状态,第一变量的值设为0。

优选的,步骤d中,每个目标对应的跟踪器为核相关滤波(kernelizedcorrelationfilters,kcf)跟踪器。

具体的,步骤e包括:

e1.为每一个匹配状态为检测到新的目标但是没分配跟踪器的目标新建kalman滤波器:

e11.根据上一帧图像中的目标状态xt-1来预测当前帧的目标状态xt,从预测的目标状态xt中取出目标的中心位置的坐标,设为预测坐标,其中,目标状态包括目标的中心位置和速度,由于跟踪器模板不更新,因此相邻两帧间的跟踪器模板相似,认为目标做匀速运动;预测当前帧的目标状态xt的公式为:

xt=a·xt-1+b·ut-1+wt-1

其中,a为目标状态转移矩阵,b为联系外部控制参数的矩阵,xt-1是(t-1)帧图像中的目标状态,ut-1是(t-1)帧图像中目标的加速度,因为此时为匀速运动,因此ut-1为0,wt-1用于描述过程噪声,且服从高斯分布wt-1~n(0,qt-1),qt-1为上一帧图像的过程噪声协方差,得到px和py分别对应为第t帧图像中目标的中心位置的x坐标值和y坐标值,vx和vy分别对应为第t帧图像中目标的中心位置在x轴和y轴上的速度;根据匀速运动模型,状态转移矩阵设为因此预测当前帧的目标状态为:

e12.计算当前第t帧图像的先验估计的协方差矩阵:

其中,为(t-1)帧图像的后验误差,初始值是给定的值,at为a的转置,q为帧图像给定的过程噪声协方差;

e13.计算当前第t帧图像的滤波增益矩阵

其中,是状态转换矩阵,是状态转换矩阵的转置,rt是观测噪声协方差,为定值r,(x)-1表示x的逆;

e14.根据当前第t帧图像的滤波增益矩阵与预测的目标状态xt,产生后验状态的最佳估计位置即匹配结果:

其中,表示当前第t帧图像实际匹配得到的目标区域的中心位置,即为测量值,为测量值与预测坐标之间的误差,用vt表示,vt满足高斯分布,vt~n(0,rt);

e15.若当前第t帧不是最后一帧,根据滤波增益矩阵状态转换矩阵与先验估计的协方差矩阵pt,更新当前第t帧图像的的后验误差:

e16.根据得到的最佳估计位置更新当前第t帧图像中目标的中心位置:

其中,posx和posy为更新后的目标的中心位置,px和py为最佳估计位置的坐标;

e2.为每一个匹配状态为检测到新的目标但是没分配跟踪器的目标新建跟踪器,新建的跟踪器为核相关(kernelizedcorrelationfilters,kcf)滤波器:

e21.读取红外图像序列,在初始帧图像中框选目标,得到目标的中心位置和大小,将初始帧图像中的目标作为模板,获取第二帧图像作为当前帧图像,将初始帧图像的模板作为当前帧图像的模板;

e22.根据模板的大小和细胞单元尺寸得到二维余弦窗;

e23.基于灰度特征计算得到当前帧的目标回归系数,如果所述的目标回归系数由第二帧图像计算所得,用所述目标回归系数赋值给目标模型中的目标回归系数;如果所述的目标回归系数由最后一帧图像计算所得,则不作处理;如果所述目标回归系数既不是由第二帧图像也不是由最后一帧图像计算所得,则用当前帧得到目标回归系数的值替换目标模型中前一帧的目标回归系数的值;

e24.以当前帧图像的模板中心为搜索框中心位置确定当前帧图像的搜索框;

e25.基于模板大小,在当前帧图像中的搜索框中进行遍历,得到待匹配区域集合,再基于待匹配区域集合得到多个待匹配区域对应的灰度特征,基于灰度特征及对应的目标模型和目标回归系数,计算各待匹配区域对应的核相关滤波响应得到核相关滤波响应集合;

e26.以核相关滤波响应集合中最大响应值的横纵坐标作为当前帧图像的目标的质心位置;

e3.设置连续帧未检测目标的第三变量,由于此状态属于检测到了目标位置,因此第三变量的值设为0。

本发明天空背景红外成像多目标跟踪方法的有益效果包括:

1、采用的目标检测方法为方向高斯差分(directionaldifferenceofguassian,ddog)算子的滤波方法,一般情况下,真实目标和背景边缘在局部会有不同的方向特征,而此滤波方法对方向敏感,故对真实目标与背景边缘有更好的分辨力,并且速度也较快,可以达到实时性的要求。

2、通过引入匈牙利(hungarian)算法将多目标的检测器和跟踪器进行关联匹配,并通过对连续未检测到目标帧数进行计数,删除了消失的虚假目标,解决了虚假目标剔除问题;同时通过每隔k帧检测一次,可以重新捕获新的目标,从而解决了感兴趣目标识别的问题。

3、本发明中采用核相关滤波(kcf)算法,其具有与线性相关滤波器完全相同的低复杂性,代码行数少,且与其他跟踪类算法相比速度更快,可以每秒数百帧的速度运行,可以保证多目标跟踪的实时性要求。

以下结合实施例的具体实施方式,对本发明的上述内容再作进一步的详细说明。但不应将此理解为本发明上述主题的范围仅限于以下的实例。在不脱离本发明上述技术思想情况下,根据本领域普通技术知识和惯用手段做出的各种替换或变更,均应包括在本发明的范围内。

附图说明

图1为本发明天空背景红外成像多目标跟踪方法的流程图。

图2为本发明的方法通过红外图像序列第一次捕获到目标的图像。

图3为图2图像的第50帧图像。

图4为本发明方法对图3的图像跟踪效果图。

图5为图2图像的第171帧图像。

图6为本发明方法对图5的图像跟踪效果图。

图7为图2图像的第390帧图像。

图8为本发明方法对图7的图像跟踪效果图。

具体实施方式

如图1所示本发明天空背景红外成像多目标跟踪方法,包括:

a.读取红外图像序列,从红外图像序列的初始帧起,记录当前读取的帧数,并且每读取k帧(k为≥1的自定义数值)进行一次当前帧的状态是检测状态或跟踪状态的判断;如果当前帧的处于检测状态,则对当前帧进行一次目标检测,得到所有的n个目标的质心坐标,n>1;

如果当前帧处于跟踪状态,则根据前一帧的位置通过kalman滤波器预测当前帧的位置,根据当前帧更新对应的跟踪器模板,并根据更新后的跟踪模板得到当前帧的位置,用所述当前帧的位置对所述kalman滤波器预测的位置进行校正,得出当前帧最终的目标跟踪位置。

其中,当前帧的处于所述的检测状态时,得到所有的n个目标的质心坐标的步骤为:

a1.在对当前帧进行一次目标检测时,通过方向高斯差分(directionaldifferenceofguassian,ddog)算子进行滤波:

a11.生成两个长半轴和短半轴分别不同、方差不同的二维高斯滤波器,将这两个二维高斯滤波器做差,生成方向高斯差分算子,公式为:

式中,dog(x,y)为方向高斯差分算子,g1(x,y)为sigma值为σ1的第一高斯滤波器,g2(x,y)为sigma值为σ2的第二高斯滤波器,x和y分别为当前帧对应的跟踪器模板在二维坐标系中的坐标值,σ1和σ2分别对应为第一高斯滤波器和第二高斯滤波器的sigma值;

a12.使用4个不同方向的方向高斯差分算子分别对当前帧图像滤波,其中方向通过引入正弦和余弦函数来表示:

其中x’,y’为:

x和y分别为当前帧对应的跟踪器模板在二维坐标系中的坐标值,θ为在二维坐标系中(x,y)点与x轴方向的夹角,4个不同的方向分别为θ取0°、45°、90°和135°;

a13.将所述4个方向的方向高斯差分算子的主轴右侧系数分别赋值为零,生成4个对应的方向高斯差分滤波器;

a14.选取4个滤波器在分别对应的坐标位置上的最小值作为滤波的输出结果。

a2.对所述滤波的输出结果进行二值分割,其中二值分割的阈值为滤波输出结果中的最大像素值和最小像素值之间差值的0.6倍加上最小像素值,然后输出二值分割的结果;

a3.基于所述二值分割的结果进行连通区域分析,输出检测到的n个目标的连通区域的质心坐标,得到目标检测的结果。

b.当前帧处于检测状态时,通过匈牙利(hungarian)算法将已有的m个跟踪器与所述检测到的n个目标的质心进行关联匹配,具体为:

b1.基于当前帧检测到的n个目标的质心坐标,以及当前帧已有的m个跟踪器返回的质心坐标,构造一个n×m维的代价矩阵,代价矩阵上的每一个元素表示第i个检测目标和该检测目标对应的第j个跟踪器得到的目标质心的距离,其中i的值为0~n,j的值为0~m;

b2.通过匈牙利算法对n×m维的代价矩阵进行计算,根据最优匹配原则进行任务分配,得到使代价矩阵中所有元素和最小的匹配方式,并返回一个t×2矩阵,在t×2矩阵的两列中包含分配的跟踪器和检测到的目标索引,具体为:

b21.对所述n×m维的代价矩阵作行变换和列变换;所述的行变换是将代价矩阵的每一行的各个元素分别减去该行的最小元素;所述的列变换是将代价矩阵的每一列的各个元素分别减去该列的最小元素,有0元素的列不作列变换;

b22.在经过行变换和列变换的代价矩阵中通过标记法寻找所有不同行且不同列的0元素;如果找到,则这些不同行且不同列的0元素的位置则为最优指派;否则,进行步骤b23;

依次检查经过行变换和列变换的代价矩阵的各行,找出只有一个没有加标记的0元素的行,并将这个0元素加上标记,并将与这个0元素在同一列的其他0元素全部加上标记;

依次检查经过行变换和列变换的代价矩阵的各列,找出只有一个没有加标记的0元素的列,并将这个0元素加上标记,并将与这个0元素在同一行的其他0元素全部加上标记;

b23.对标记后的代价矩阵进行调整:根据每一行或每一列中加了标记的0元素的数量,比较所述0元素所在的行和列中包含的加了标记的0元素的数量,如果所述行中的0元素数量多于所述列中的0元素数量,则画一条横线经过所述行中的所有0元素,反之则画一条竖线经过所述列中的所有0元素;

在所述横线和竖线没有经过的元素中找出最小元素;

未画横线的各行元素减去所述的最小元素,画竖线的各列元素加上所述的最小元素;

重新在新的代价矩阵中找出所有不同行且不同列的0元素,这些不同行且不同列的0元素的位置则为代价最少的任务分配。

通过匈牙利算法返回未分配的跟踪器和检测到的目标索引,最终得到的三种匹配状态分别为:检测到的目标匹配到了跟踪器、当前帧分配有跟踪器但检测器未检测到目标,以及检测到新的目标但是没分配跟踪器。

c.如果所述的匹配状态为检测到的目标匹配到了跟踪器,则:

c1.当所述的匹配状态为检测到的目标匹配到了跟踪器时,在重新初始化所匹配的跟踪器的位置后,重新定位跟踪器的初始框,然后当前帧的状态转到跟踪状态;

c2.根据检测到的质心坐标来校正当前帧的kalman滤波器位置;

c3.设置第一变量,用于记录连续未检测到目标的帧数量,因为此状态中跟踪器匹配到了目标,因此当前帧属于检测到目标状态,第一变量的值设为0。

d.如果所述的匹配状态为当前帧分配有跟踪器但检测器未检测到目标,则将当前帧所对应跟踪器中的滤波器,从前一帧的滤波器模板更新至当前帧的滤波器模板,并将更新了滤波器的跟踪器与当前帧进行关联,使跟踪器通过更新后的滤波器模板重新计算并得到当前帧中的目标位置;设置连续帧未检测目标的第二变量,如果当前帧为红外图像序列的初始帧,则初始化第二变量的值为0,由于此状态为跟踪器在检测阶段未检测到目标,因此第二变量的值加1;如果第二变量的值达到了设定的阈值t,说明当前帧中的目标已经消失,删除当前帧对应的跟踪器。本实施例中阈值t取值为3。其中,每个目标对应的跟踪器为核相关滤波(kernelizedcorrelationfilters,kcf)跟踪器。

e.如果所述的匹配状态为检测到新的目标但是没分配跟踪器,则为每一个此状态的目标新建kalman滤波器和跟踪器,并用检测到的每个目标的质心坐标初始化给每个目标分配的跟踪器的位置,具体为:

e1.为每一个匹配状态为检测到新的目标但是没分配跟踪器的目标新建kalman滤波器:

e11.根据上一帧图像中的目标状态xt-1来预测当前帧的目标状态xt,从预测的目标状态xt中取出目标的中心位置的坐标,设为预测坐标,其中,目标状态包括目标的中心位置和速度,由于跟踪器模板不更新,因此相邻两帧间的跟踪器模板相似,认为目标做匀速运动;预测当前帧的目标状态xt的公式为:

xt=a·xt-1+b·ut-1+wt-1

其中,a为目标状态转移矩阵,b为联系外部控制参数的矩阵,xt-1是(t-1)帧图像中的目标状态,ut-1是(t-1)帧图像中目标的加速度,因为此时为匀速运动,因此ut-1为0,wt-1用于描述过程噪声,且服从高斯分布wt-1~n(0,qt-1),qt-1为上一帧图像的过程噪声协方差,得到px和py分别对应为第t帧图像中目标的中心位置的x坐标值和y坐标值,vx和vy分别对应为第t帧图像中目标的中心位置在x轴和y轴上的速度;根据匀速运动模型,状态转移矩阵设为因此预测当前帧的目标状态为:

e12.计算当前第t帧图像的先验估计的协方差矩阵:

其中,为(t-1)帧图像的后验误差,初始值是给定的值,at为a的转置,q为帧图像给定的过程噪声协方差;

e13.计算当前第t帧图像的滤波增益矩阵

其中,是状态转换矩阵,是状态转换矩阵的转置,rt是观测噪声协方差,为定值r,(x)-1表示x的逆;

e14.根据当前第t帧图像的滤波增益矩阵与预测的目标状态xt,产生后验状态的最佳估计位置即匹配结果:

其中,表示当前第t帧图像实际匹配得到的目标区域的中心位置,即为测量值,为测量值与预测坐标之间的误差,用vt表示,vt满足高斯分布,vt~n(0,rt);

e15.若当前第t帧不是最后一帧,根据滤波增益矩阵状态转换矩阵与先验估计的协方差矩阵pt,更新当前第t帧图像的的后验误差:

e16.根据得到的最佳估计位置更新当前第t帧图像中目标的中心位置:

其中,posx和posy为更新后的目标的中心位置,px和py为最佳估计位置的坐标;

e2.为每一个匹配状态为检测到新的目标但是没分配跟踪器的目标新建跟踪器,新建的跟踪器为核相关(kernelizedcorrelationfilters,kcf)滤波器:

e21.读取红外图像序列,在初始帧图像中框选目标,得到目标的中心位置和大小,将初始帧图像中的目标作为模板,获取第二帧图像作为当前帧图像,将初始帧图像的模板作为当前帧图像的模板;

e22.根据模板的大小和细胞单元尺寸得到二维余弦窗;

e23.基于灰度特征计算得到当前帧的目标回归系数,如果所述的目标回归系数由第二帧图像计算所得,用所述目标回归系数赋值给目标模型中的目标回归系数;如果所述的目标回归系数由最后一帧图像计算所得,则不作处理;如果所述目标回归系数既不是由第二帧图像也不是由最后一帧图像计算所得,则用当前帧得到目标回归系数的值替换目标模型中前一帧的目标回归系数的值;

e24.以当前帧图像的模板中心为搜索框中心位置确定当前帧图像的搜索框;

e25.基于模板大小,在当前帧图像中的搜索框中进行遍历,得到待匹配区域集合,再基于待匹配区域集合得到多个待匹配区域对应的灰度特征,基于灰度特征及对应的目标模型和目标回归系数,计算各待匹配区域对应的核相关滤波响应得到核相关滤波响应集合;

e26.以核相关滤波响应集合中最大响应值的横纵坐标作为当前帧图像的目标的质心位置;

e3.设置连续帧未检测目标的第三变量,由于此状态属于检测到了目标位置,因此第三变量的值设为0。

f.跟踪状态:根据前一帧的位置通过kalman滤波器对当前帧的位置进行预测,根据当前帧更新对应的跟踪器模板,并与跟踪器模板进行关联得到目标的响应位置,根据所述的响应位置对kalman滤波器预测的位置进行校正,其方法与步骤e1类似,通过公式xt=a·xt-1+b·ut-1+wt-1和根据前一帧的位置计算得到当前第t帧图像的先验估计的协方差矩阵,进而得到当前帧最佳估计位置然后根据最佳估计位置更新当前第t帧图像中目标的中心位置:posx和posy为更新后的目标的中心位置,px和py为最佳估计位置的坐标,最后得到当前帧最终的目标跟踪位置;

g.显示跟踪结果,根据检测状态和跟踪状态返回的目标位置坐标,显示跟踪框;

h.判断当前帧是否为红外图像序列的最后一帧,如果是则结束目标跟踪,否则返回步骤a重复执行。

如图2所示,通过本发明的方法读取红外图像序列后第一次捕获到目标的图像,图2中被跟踪器框选出的白色亮点即为图像中的目标。

在图3中,展示出了在图像中有新目标(新的白色亮点)刚出现,图4为通过本发明的方法对图3中的新目标立刻就分配了一个初始框进行跟踪和检测。

图5中的帧图像中,目标数量达到最大,由图6可知,本发明的方法依旧可以对这些目标进行稳定跟踪。

在图7的帧图像中,目标逐渐消失,图8展示出来根据图7中目标数量的变化,本发明的方法能够快速的将消失的跟踪器删除。

通过以上测试,说明本发明方法的跟踪效果自始至终都非常稳定,能够对天空等复杂背景的多目标进行快速检测和捕获,以及对虚假目标剔除及感兴趣目标的识别。

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