多层次约束的多目标追踪算法的制作方法

文档序号:11231942阅读:496来源:国知局
本发明属计算机视觉、图形处理
技术领域
,具体涉及一种基于多层次约束的视觉多目标追踪算法。
背景技术
:多层次约束的多目标追踪算法可以在给定视频序列的情况下,将处于不同帧的检测物链接起来,从而得到不同物体的运动轨迹;基于视觉信息的多目标追踪算法对于智能驾驶中的检测异常车辆及行人等、规避潜在粉线,对于监控视频的拥挤场景分析、异常行为检测,具有重要的理论和现实意义。根据使用视频数据方式的不同,现有的视觉多目标追踪算法大致可分为:离线多目标算法和在线多目标算法。离线多目标算法主要是利用最大化后验概率将目标检测器检测出的所用目标转化为图模型,通过求解该图模型得到目标在视频序列中的轨迹。l.zhang等人在文献“l.zhang,y.li,andr.nevatia.globaldataassociationformulti-objecttrackingusingnetworkflows,inproceedingsofieeeconferenceoncomputervisionandpatternrecognition,pp.1-8,2008.”中提出了基于网络流和预流推进算法的算法,该算法将多目标追踪问题转化为网络流的最小费用问题,可以得到较为准确、稳定的结果。在线多目标算法主要是通过假设跟踪目标当前帧状态只与该目标前一帧或前数帧的状态有关,将多目标追踪算法转化为连续两帧间检测物的匹配问题;使用结构化约束解决摄像机运动造成的抖动,使用不同滤波器筛选出目标检测器检测结果中的误检、漏检等,使用群组模型解决目标间的过分遮挡。j.yoon等人在文献“j.yoon,m.yang,j.limandetal.bayesianmulti-objecttrackingusingmotioncontextfrommultipleobjects,inproceedingsofieeewinterconferenceonapplicationsofcomputervision,pp.33-40,2015”中提出了基于结构化约束和卡尔曼滤波的算法,该算法利用前数帧的目标信息,构建关系网络,结构化约束当前帧的目标位置,能够有效的应对移动平台下摄像头的抖动以及当前帧存在的错检、误检。这些算法的局限性在于:离线多目标算法往往将问题转化为图模型,但图模型的解不一定完全对应追踪结果;在线多目标算法往往涉及到对目标预测这一过程,而得到的预测不一定很准确,极大地影响了最后的追踪结果。技术实现要素:为了克服现有多目标追踪算法无法提供准确且鲁棒的结果的不足,本发明提出了一种基于多层次约束的视觉多目标追踪算法。该算法的主要思想是:使用简单的策略快速得到追踪片段,利用视觉信息对所有的追踪片段进行修正、分割,再将上述结果转化为关于追踪片段的图模型并求解,对求解得到的结果使用高层语义信息进一步修正,得到最终结果。一种多层次约束的多目标追踪算法,其特征在于包括以下步骤:步骤一:生成追踪片段:将视频序列的检测结果转化为图模型,使用图模型算法求解,得到相应的追踪片段,具体为:步骤1:假定第i个检测物为xi=(di,si,ai,ti),其中,di表示检测物的位置,si表示尺度,ai表示视觉信息,ti表示检测物所处帧,i=1,…,m,m为检测物个数;χ={xi}表示检测物的集合,表示第k条目标轨迹,表示第k条轨迹所对应的检测物的序号,lk为第k条轨迹所包含的检测物的个数,t={tk}表示轨迹的集合,k=1,…,k,k为视频序列中目标总数;步骤2:根据最大化后验概率得到目标函数t*:其中,p(t|χ)表示使用检测物的集合得到一组轨迹的后验概率;p(xi|t)表示检测物xi存在于轨迹集合t的概率,p(tk)表示轨迹tk存在的概率;步骤3:根据p(xi|t)的特性以及检测器的准确率β,将其转化为:步骤4:假定追踪序列是马尔科夫链,pentr表示马尔可夫链起始概率,plink表示转化概率,pexit表示转化概率,将步骤2中的p(tk)转化为:步骤5:将公式(2)、(3)代入公式(1),对公式(1)取对数,得到:其中,cen,i=-logpentr(xi),cex,i=-logpexit(xi),ci,j=-logplink(xj|xi),cen,i、cex,i、ci,j、ci、fen,i、fex,i、fi,j、fi即构成图模型;步骤6:对步骤5得到的图模型进行求解得到追踪片段,具体为:步骤a:按照cost(i)=cen,i+ci对第一帧检测数据中所对应的节点进行初始化,i为节点序号,i=1,…,m1,m1为第一帧检测数据中检测物的个数;步骤b:对后续节点按cost(i)=ci+min(ω,cen,i)计算其cost(i)值,其中n(i)表示节点i可能的前驱节点集合,这里,i为后续检测数据对应的节点序号;所述的前驱节点根据前后两帧检测物的iou进行判断,iou大于等于0.3的为可能的前驱节点,iou表示两帧检测物交集与并集的比率;步骤c:按步骤b遍历所有节点后,cost(i)值最小的节点及其前驱节点则对应着一条追踪片段,删去这条追踪片段对应的节点,对剩余节点重复步骤b,直至所有节点的cost(i)值大于等于阈值时,即得到所有的追踪片段;所述的阈值设置为18;步骤二:追踪片段的分割、修正:使用追踪片段的前5帧检测数据的特征值的均值为模板,计算模板与该追踪片段后续帧数据的特征值的余弦值作为相似性度量值,如果某一帧数据的相似性度量值小于阈值,就在当前位置将追踪片段分割成两段,对所有追踪片段重复此过程,直至所有相似性度量值均大于阈值,即得到所有可靠的追踪片段;这里所述的阈值等于前一帧数据的相似性度量值/1.25;步骤三:求解可靠追踪片段的图模型,得到最终目标轨迹,具体为:步骤1:设fi、fj分别表示第i个和第j个可靠追踪片段,hl(fi)、hl(fj)分别表示可靠追踪片段fi和fj的第l维视觉特征值,nh表示特征维数,根据追踪片段的视觉特性,按下式计算步骤二所得到的不同追踪片段之间的视觉相似度:步骤2:根据追踪片段的运动特性,按下式计算步骤二所得到的不同追踪片段的运动相似度affinitymot:其中,表示第i个追踪片段在第k帧的检测数据,k为追踪片段fi最后一帧的帧数;步骤3:利用视觉相似度、运动相似度按下式计算不同追踪片段间总的相似度ci,j:ci,j=affinityapp(fi,fj))affinitymot(fi,fj)(7)步骤4:公式(1)转化下式:其中,p(fi|t)表示追踪片段fi存在于轨迹集合t的概率;步骤5:由于fi为可靠的追踪片段,p(fi|t)≈1,假定追踪序列是马尔科夫链,则p(tk)可以转化为下式:步骤6:将公式(9)代入公式(8),取对数,得到:其中,ci,j=-logp(fj|fi)=ci,j,ci,j,fis,fit,fi,j即构成图模型;步骤7:利用迪杰斯特拉算法计算步骤6所得到图模型的最短路径,并利用链路分离算法对已得到的最短路径进行修正,重复此过程,直至大于等于阈值,即可得到最终的目标轨迹,这里的阈值设置为12。本发明的有益效果是:通过检测数据构成的图模型求解快速得到较为可信的追踪片段,通过分割和修正进一步使追踪片段精确化,通过追踪片段图模型的求解得到最终结果,可以较好地改善追踪效果。本发明充分利用了追踪目标的视觉特性,由浅到深,层层约束,解决了现有方法难以充分利用视觉特性而造成的难以获取准确结果的问题,可以使追踪结果更为精确。附图说明图1是本发明的一种多层次约束的多目标追踪算法的基本流程图具体实施方式下面结合附图和实施例对本发明进一步说明,本发明包括但不仅限于下述实施例。本发明的一种多层次约束的多目标跟踪算法如图1所示,其实现步骤如下:一、生成追踪片段将视频序列的检测结果转化为图模型,使用图模型算法求解,得到相应的追踪片段,基本过程为:根据iou(两检测物位置的交集与并集的比率),本发明阈值为0.3,得出当前目标的前一帧检测物可能位置,构建图模型;然后,对第一帧检测物对应的节点数据初始化,迭代求解出当前最短路径;从图中移除当前最短路径,重复上述过程即可得到数条目标轨迹,迭代过程的终止条件是当前得到的目标轨迹cost(i)大于等于18。具体为:步骤1:假定第i个检测物为xi=(di,si,ai,ti),其中,di表示检测物的位置,si表示尺度,ai表示视觉信息,ti表示检测物所处帧,i=1,…,m,m为检测物个数;χ={xi}表示检测物的集合,表示第k条目标轨迹,表示第k条轨迹所对应的检测物的序号,lk为第k条轨迹所包含的检测物的个数,t={tk}表示轨迹的集合,k=1,…,k,k为视频序列中目标总数。步骤2:根据最大化后验概率得到目标函数t*:其中,p(t|χ)表示使用检测物的集合得到一组轨迹的后验概率;p(xi|t)表示检测物xi存在于轨迹集合t的概率,p(tk)表示轨迹tk存在的概率。步骤3:根据p(xi|t)的特性以及检测器的准确率β,将其转化为:步骤4:假定追踪序列是马尔科夫链,pentr表示马尔可夫链起始概率,plink表示转化概率,pexit表示转化概率,将公式(11)中的p(tk)转化为:步骤5:将公式(12)、(13)代入公式(11),对公式(11)取对数,得到:其中,cen,i=-logpentr(xi),cex,i=-logpexit(xi),ci,j=-logplink(xj|xi),cen,i、cex,i、ci,j、ci、fen,i、fex,i、fi,j、fi即构成图模型。步骤6:对前述步骤得到的图模型进行求解得到追踪片段,具体为:先按照costi()=cen,i+ci对第一帧检测数据中所对应的节点进行初始化,i为节点序号,i=1,…,m1,m1为第一帧检测数据中检测物的个数;然后,对后续节点按cost(i)=ci+min(ω,cen,i)计算其cost(i)值,其中n(i)表示节点i可能的前驱节点集合,如此遍历所有节点后,cost(i)值最小的节点及其前驱节点则对应着一条追踪片段,删去这条追踪片段对应的节点,对剩余节点重新计算其cost(i)值,直至所有节点的cost(i)值大于等于阈值时,即得到所有的追踪片段。其中,前驱节点根据前后两帧检测物的iou进行判断,iou大于等于0.3的为可能的前驱节点,iou表示两帧检测物交集与并集的比率;cost(i)值的阈值设置为18。二、追踪片段的分割、修正使用追踪片段的前5帧检测数据的特征值的均值为模板,计算模板与该追踪片段后续帧数据的特征值的余弦值作为相似性度量值,如果某一帧数据的相似性度量值小于阈值,就在当前位置将追踪片段分割成两段,对所有追踪片段重复此过程,直至所有相似性度量值均大于阈值,即得到所有可靠的追踪片段;这里所述的阈值等于前一帧数据的相似性度量值/1.25。三、求解可靠追踪片段的图模型,得到最终目标轨迹基本过程为:首先,根据不同追踪片段的视觉特性、运动特性得到不同追踪片段间的紧密度,将其转化到图模型中;然后,使用迪杰斯特拉算法得到网络流中一条最短路径,由于迪杰斯特拉算法要求图模型中边的权重必须为正数,使用链路分离算法对权值进行修正。重复以上过程,即可得到图中所有的路径,即最终的追踪目标轨迹。具体为:步骤1:设fi、fj分别表示第i个和第j个可靠追踪片段,hl(fi)、hl(fj)分别表示可靠追踪片段fi和fj的第l维视觉特征值,nh表示特征维数,根据追踪片段的视觉特性,按下式计算步骤二所得到的不同追踪片段之间的视觉相似度:步骤2:根据追踪片段的运动特性,按下式计算步骤二所得到的不同追踪片段的运动相似度affinitymot:其中,表示第i个追踪片段在第k帧的检测数据,k为追踪片段fi最后一帧的帧数;步骤3:利用视觉相似度、运动相似度按下式计算不同追踪片段间总的相似度ci,j:ci,j=affinityapp(fi,fj))affinitymot(fi,fj)(17)步骤4:公式(11)转化下式:其中,p(fi|t)表示追踪片段fi存在于轨迹集合t的概率。步骤5:由于fi为可靠的追踪片段,p(fi|t)≈1,假定追踪序列是马尔科夫链,则p(tk)可以转化为下式:步骤6:将公式(19)代入公式(18),取对数,得到:其中,ci,j=-logp(fj|fi)=ci,j,ci,j,fis,fit,fi,j即构成图模型。步骤7:利用迪杰斯特拉算法计算步骤6所得到图模型的最短路径,并利用链路分离算法对已得到的最短路径进行修正,重复此过程,直至大于等于阈值,即可得到最终的目标轨迹,这里的阈值设置为12。本实施例在中央处理器为i5-34703.2ghzcpu、内存4g、centos系统上,运用matlab软件进行的仿真。使用的数据为:mot2016数据集。评测标准包括avgrank,mota,motp,faf,mt,ml,fp,fn,idswitch,frag,分别来源于文献“k.bernardinandr.stiefelhagen,evaluatingmultipleobjecttrackingperformance:theclearmotmetrics,imageandvideoprocessing,vol.1,pp.1-10,2008”和“learningtoassociate:hybridboostedmulti-targettrackerforcrowdedscene,inproceedingsofieeeconferenceoncomputervisionandpatternrecognition,2009”。由表1数据可以看出,本发明能够有效地进行目标跟踪,追踪结果较为精确。表1avgrankmotamotpfafmtmlfpfnidswitchfrag17.833.570.61.213%39.4%702130824273896当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1