本发明专利技术属于计算机视觉目标跟踪领域,针对现有跟踪算法在抖动视频中跟踪失败的情况,本发明专利技术旨在提出一种用于抖动视频下目标跟踪的改进算法。本发明专利技术采用的技术方案是,抖动视频中目标跟踪的方法,步骤如下:利用局部区域块搜索匹配算法,计算出目标物体在当前帧与上一帧的位置坐标偏差,然后将该偏差补偿至跟踪算法的检测区域,使得跟踪算法可以正确跟踪当前目标。本发明专利技术主要应用于计算机视觉目标跟踪场合。
【技术实现步骤摘要】
本专利技术属于计算机视觉目标跟踪领域,特别涉及用于抖动视频中的目标跟踪的方法。
技术介绍
随着科技的发展,无人机航拍越来越热门,而无人机航拍得到的视频很难避免的会产生各种由于无人机的平移、晃动等导致拍摄的视频具有严重的抖动情况。这些抖动现象会严重干扰对运动物体目标跟踪的结果。而目前很多跟踪算法,比如KCF(KernelizedCorrelationFilters,核相关滤波)跟踪算法等,在严重抖动的视频中均会出现跟踪失败的情况。原因是这些跟踪算法的跟踪原理是默认相邻帧目标物体运动位移小,因此只在当前帧中检测与上一帧物体位置相同的区域(由于认为目标物体运动位移小,因此相邻帧目标物体位置差别不大)。而在抖动比较严重的视频中,当前帧目标物体的位置很可能与上一帧该物体位置位移差很大,因此会导致这些跟踪算法无法正确跟踪运动目标。
技术实现思路
为克服现有技术的不足,针对现有跟踪算法在抖动视频中跟踪失败的情况,本专利技术旨在提出一种用于抖动视频下目标跟踪的改进算法。本专利技术采用的技术方案是,抖动视频中目标跟踪的方法,步骤如下:利用局部区域块搜索匹配算法,计算出目标物体在当前帧与上一帧的位置坐标偏差,然后将该偏差补偿至跟踪算法的检测区域,使得跟踪算法可以正确跟踪当前目标。具体步骤进一步细化为:(1)对于视频第一帧,由用户选择出需要跟踪的目标物体,得到目标物体的坐标范围(x0,y0,w,h),该坐标分别表示目标物体所在的外接矩形的左上角横坐标x0与纵坐标y0,外接矩形沿着x轴方向的宽度w与沿着y轴方向的高度h;(2)对于视频第二帧,首先进行块搜索匹配,如果目标物体比较小的话,在第一帧中选定目标物体区域作为匹配块Blocki,其中下标i表示帧序号,第一帧i=0,第二帧i=2,以此类推,如果目标物体比较大的话,则选择目标物体的一部分区域作为匹配块Blocki;设匹配块的长宽为M和N,由于视频帧序列之间存在相对运动,导致随后一系列视频中的块Blocki+1与前一帧的块Blocki的位置发生偏移,假设x,y方向上最大偏移量分别为dx与dy,则在视频当前帧中围绕Blocki选定一个(M+2dx)*(N+2dy)搜索区域,根据最小绝对误差准则,公式如下:其中,MAD即为MinimumAbsoluteDifference,最小绝对误差,fk(s,t)和fk-1(s+i,t+j)分别表示当前帧和参考帧的灰度值,匹配块大小为M×N,s,t分别表示匹配块内的x和y方向坐标,i,j分别表示当前帧可能的匹配块与参考帧匹配块在x,y方向坐标差值。利用该准则在搜索区域中进行最小匹配搜索,得到最佳匹配块Block,然后计算Block与Blocki的坐标差(offsetX,offsetY),得到偏差之后,跟踪算法在上一帧的检测区域加上该偏差得到新的检测区域,即将原来的检测区域在x方向和y方向分别平移offsetX和offsetY距离得到新的检测区域,然后跟踪算法在此区域上做计算得到精确的目标位置,接下来将该位置更新为用于下一帧块搜索匹配的Blocki+1;(3)在接下的每一帧中,重复第二步的,即每次计算当前帧与上一帧的偏差,然后将该偏差补偿至跟踪算法上一帧的检测区域得到当前帧的检测区域,接着跟踪算法在此区域上做计算得到精确的目标位置,同时更新块Blocki+1,至此实现抖动视频中目标跟踪的功能。本专利技术的特点及有益效果是:本专利技术利用局部区域块搜索匹配算法,精确的求出跟踪目标区域抖动的分量,然后将该分量补偿至目标跟踪算法的检测区域,使得目标跟踪算法可以准确地跟踪目标。该算法对于大抖动视频中跟踪小目标的效果更显著。附图说明:图1:抖动视频中目标跟踪框架图;图2:块搜索匹配算法图。具体实施方式本专利技术针对现有跟踪算法在抖动视频中跟踪失败的情况,提出一种用于抖动视频下目标跟踪的改进算法。本专利技术采用的技术方案是:利用局部区域块搜索匹配算法,计算出目标物体在当前帧与上一帧的位置坐标偏差,然后将该偏差补偿至跟踪算法的检测区域,使得跟踪算法可以正确跟踪当前目标。本专利技术算法整体框架如图1所示,主要步骤如下:(1)对于视频第一帧,由用户选择出需要跟踪的目标物体,得到目标物体的坐标范围(x0,y0,w,h),该坐标分别表示目标物体所在的外接矩形的左上角横坐标x0与纵坐标y0,外接矩形沿着x轴方向的宽度w与沿着y轴方向的高度h。(2)对于视频第二帧,首先进行块搜索匹配。如果目标物体比较小的话,在第一帧中选定目标物体区域作为匹配块Blocki(其中i表示帧序号,第一帧i=0,第二帧i=2,以此类推),如果目标物体比较大的话,则可以选择目标物体的一部分区域作为匹配块Blocki(可以加快匹配速度)。设匹配块的长宽为M和N。由于视频帧序列之间存在相对运动,导致随后一系列视频中的块Blocki+1与前一帧的块Blocki的位置发生偏移,假设x,y方向上最大偏移量分别为dx与dy。则在视频当前帧中围绕Blocki选定一个(M+2dx)*(N+2dy)搜索区域,根据最小总绝对误差准则,公式如下:其中,MAD即为MinimumAbsoluteDifference,最小绝对误差,fk(s,t)和fk-1(s+i,t+j)分别表示当前帧和参考帧的灰度值,匹配块大小为M×N,s,t分别表示匹配块内的x和y方向坐标,i,j分别表示当前帧可能的匹配块与参考帧匹配块在x,y方向坐标差值。利用该准则在搜索区域中进行最小匹配搜索,得到最佳匹配块Block,然后计算Block与Blocki的坐标差(offsetX,offsetY)。块搜索匹配算法如图2。得到偏差之后,跟踪算法在上一帧的检测区域加上该偏差得到新的检测区域(即将原来的检测区域在x方向和y方向分别平移offsetX和offsetY距离得到新的检测区域),然后跟踪算法在此区域上做计算得到精确的目标位置。接下来将该位置更新为用于下一帧块搜索匹配的Blocki+1。(3)在接下的每一帧中,重复第二步的,即每次计算当前帧与上一帧的偏差,然后将该偏差补偿至跟踪算法上一帧的检测区域得到当前帧的检测区域,接着跟踪算法在此区域上做计算得到精确的目标位置。同时更新块Blocki+1。至此便实现抖动视频中目标跟踪的功能。本专利技术提出抖动视频中目标跟踪的方法,下面结合具体实施方式对本专利技术作进一步的详细说明。测试环境:Windows764位MicrosoftVisualStudio2015首先从github上下载KCF跟踪算法源代码(KCF源代码地址:https://github.com/joaofaro/KCFcpp),此算法在抖动视频中跟踪效果很差,经常会跟踪失败。在此程序上加入块搜索算法的函数代码,该函数输入参数为Mat类型的前一帧的匹配块Block和当前帧的块搜索区域,输出参数为x方向的偏移值offsetX和y方向的偏移值offsetY。然后在main.cpp文件中定位至update函数,原本该函数只有一个输入参数,即当前帧Mat类型数据。现在将update函数增加2个类型为整型的输入参数,分别为之前求得的x方向偏移值offsetX和y方向偏移值offsetY。接下来定位至update函数内部,在其函数内部将检测区域_roi的x与y分别加上偏移值offs本文档来自技高网...
【技术保护点】
一种抖动视频中目标跟踪的方法,其特征是,步骤如下:利用局部区域块搜索匹配算法,计算出目标物体在当前帧与上一帧的位置坐标偏差,然后将该偏差补偿至跟踪算法的检测区域,使得跟踪算法可以正确跟踪当前目标。
【技术特征摘要】
1.一种抖动视频中目标跟踪的方法,其特征是,步骤如下:利用局部区域块搜索匹配算法,计算出目标物体在当前帧与上一帧的位置坐标偏差,然后将该偏差补偿至跟踪算法的检测区域,使得跟踪算法可以正确跟踪当前目标。2.如权利要求1所述的抖动视频中目标跟踪的方法,其特征是,具体步骤进一步细化为:(1)对于视频第一帧,由用户选择出需要跟踪的目标物体,得到目标物体的坐标范围(x0,y0,w,h),该坐标分别表示目标物体所在的外接矩形的左上角横坐标x0与纵坐标y0,外接矩形沿着x轴方向的宽度w与沿着y轴方向的高度h;(2)对于视频第二帧,首先进行块搜索匹配,如果目标物体比较小的话,在第一帧中选定目标物体区域作为匹配块Blocki,其中下标i表示帧序号,第一帧i=0,第二帧i=2,以此类推,如果目标物体比较大的话,则选择目标物体的一部分区域作为匹配块Blocki;设匹配块的长宽为M和N,由于视频帧序列之间存在相对运动,导致随后一系列视频中的块Blocki+1与前一帧的块Blocki的位置发生偏移,假设x,y方向上最大偏移量分别为dx与dy,则在视频当前帧中围绕Blocki选定一个(M+2dx)*(N+2dy)搜索区域,根据最小绝对误差准则,公式如下:MAD...
【专利技术属性】
技术研发人员:操晓春,何军林,郑继龙,童学智,李雪威,
申请(专利权)人:天津大学,
类型:发明
国别省市:天津;12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。