前言:
此刻同学们对“kcf算法改进代码”大约比较注意,看官们都需要剖析一些“kcf算法改进代码”的相关内容。那么小编也在网摘上汇集了一些对于“kcf算法改进代码””的相关知识,希望咱们能喜欢,大家快快来学习一下吧!王永俊,卿粼波,何小海,张 琪
(四川大学 电子信息学院,四川 成都610064)
目前,目标跟踪已成为计算机视觉领域的一个重要分支。近年来,基于核相关滤波器(Kernel Correlation Filter,KCF)跟踪算法在频域使用循环矩阵性质进行元素的点积运算,与以往的跟踪算法相比,在性能和速度上具有很大的优势。但是当目标尺寸发生变化以及目标受到严重遮挡时,KCF算法不能准确跟踪。因此,在KCF算法基础上做了改进,提出了一种尺度更新算法以及目标跟踪丢失后由粗到精的重定位算法,最后算法在8核DSP处理器TMS320C6678上成功实现了移植。通过多核并行处理,达到30帧/s的实时跟踪帧率。
核相关滤波器;尺度更新;目标重定位;TMS320C6678
中图分类号:TP391
文献标识码:A
DOI:10.16157/j.issn.0258-7998.172962
中文引用格式:王永俊,卿粼波,何小海,等. 基于TMS320C6678核相关滤波器跟踪算法实现及改进[J].电子技术应用,2018,44(2):36-38,43.
英文引用格式:Wang Yongjun,Qing Linbo,He Xiaohai,et al. The implementation and improvement of tracking algorithm with kernel correlation filter based on TMS320C6678[J]. Application of Electronic Technique,2018,44(2):36-38,43.
0 引言
目标跟踪是计算机视觉领域中一个重要分支,被广泛应用于智能监控、人机交互、机器人等领域。近年来,目标跟踪算法的研究得到了很大发展。其中以相关滤波器在目标跟踪上的研究成为了典型。BOLME D S[1]等提出了通过训练单帧图像得到最小输出方差和滤波器(Minimum Output Sum of Squared Error,MOSSE)来对目标进行跟踪,提升了以往跟踪算法的速度。HENRIQUES J F[2]等提出了基于循环结构的检测跟踪算法(the Circulant Structure of tracking by detection with Kernels,CSK),该算法对候选图像块进行循环移位,得到大量的样本进行训练分类器。分类器的训练和检测都是基于频率域点积操作,极大地提升了跟踪速度。后来HENRIQUES J F[3]等对CSK算法进行了改进,通过提取图像的HOG特征,进行多维特征跟踪,并提出了核相关滤波器(KCF)以及双核相关滤波器(DCF)跟踪算法,进一步提高了跟踪性能。由于KCF算法具有对光照变化鲁棒性高、跟踪速度快的特点,更适合在嵌入式系统上应用。
然而原始的KCF算法不能适应目标尺寸的变化以及当目标受到严重遮挡时不能准确跟踪。文献[4]~[6]针对KCF算法进行了改进,根据在先前帧成功跟踪的位置处提取大量的正负样本图片在线训练SVM分类器,当目标丢失后使用SVM分类器进行重定位。但是这些文章都忽略了当前帧的信息,并且提取大量的正负样本训练分类器降低了跟踪速度。
为了增强KCF算法的跟踪性能,本文在原始KCF算法基础上改进了具有目标尺度更新的算法,并结合峰值旁瓣比(Peak to Sidelobe Ratio,PSR)[2]和MOSSE滤波器提出了一种在时域进行由粗到精的目标重定位算法。本文改进型的KCF算法在DSP TMS320C6678处理器上成功实现了移植及优化,实验表明对于OTB[7]大多数视频能达到30帧/s以上的稳定跟踪。
1 KCF跟踪算法[3]
基于核函数的相关滤波器的跟踪算法总体思想是使用循环样本xm,n通过式(1)找到最优的滤波器w,其中循环样本xm,n是由M×N的图像块x循环移位获得的,其中(m,n)∈{0,1,…,M-1;0,1,…,N-1},y(m,n)是相应循环移位样本对应的高斯回归目标。
通过式(3)可以看出,原始KCF算法以固定的尺寸提取图像块z,并且无论跟踪是否失败,都在上一帧相关值最大的位置处以固定的尺寸提取图像块,这样导致不能适应目标尺度的变化以及跟踪失败后将永久性失败。
2 改进型的KCF跟踪算法
针对原始KCF算法不能适应目标尺寸变换以及目标受到严重遮挡时不能准确跟踪,本文提出了改进型的KCF跟踪算法。
2.1 目标尺度更新算法
如图1所示,左图为先前帧跟踪结果,目标尺寸大小为P×Q,中心位置为c1。定义S为尺度数量,以anP×anQ的大小在c1为中心点处提取下一帧图像得到候选样本集J,即图1中右图画框的图像块,其中n∈{-,…,},a定义为初始值大于1的尺度因子。将候选样本集J的所有样本尺寸缩放到P×Q大小的图像块,对所有的候选样本通过式(3)分别计算出对应的响应值,响应值最大的尺寸即为当前目标的尺寸,记为P′×Q′,更新目标尺寸为P′×Q′。
2.2 目标跟踪失败后重定位算法
本文通过PSR值评估目标跟踪状态,当目标丢失后,调用目标重定位算法确定目标位置,以便能继续准确跟踪。
2.2.1 PSR定义
定义PSR值τ=(gmax-μs1)/σs1,其中gmax是相关输出的最大值,μs1和σs1分别表示除去以相关输出最大值为中心的11×11的区域后剩余区域的均值和标准差。在本文中定义了两个门限τa和τb分别表示目标的跟踪状态为失败和成功。当τ≤τa时表示目标丢失,需要进行重定位目标;当τ≥τb时表示目标正确跟踪,继续跟踪下一帧图像。
2.2.2 时域由粗到精的目标重定位算法
根据PSR τ判断目标丢失后,本文提出了一种使用时域模型γprev和MOSSE滤波器H进行由粗到精的快速重定位算法。这里的γprev是先前帧根据跟踪结果PSR满足τ≥τb时提取的时域模型。算法步骤为:首先使用方差滤波器粗检,滤除大部分目标不存在的区域;然后使用直方图相交法进一步对剩余的区域进行筛选;最后使用MOSSE滤波器对筛选出来的区域进行精检。总体流程如图2所示。
(1)方差滤波器粗检,根据γprev求取标准差,提取出标准差满足|σ-σ0|≤σmin的候选框,并结合了NMS(非极大值抑制算法)处理得到候选集C1。其中σ滓和σ0分别表示当前候选框和γprev的标准差,σmin是标准差门限值。标准差计算公式如下:
其中N表示像素点的个数,x表示像素的灰度值,m是图像的均值。对于计算标准差σ可以利用积分图求解,加快粗检操作。
(2)采用直方图相交对候选框集C1进一步筛选出目标存在可能性大的候选框,得到候选框集C2,直方图相交公式如下:
如果d≥d0则保留候选框,否则丢弃当前的候选框。其中d0是直方图相交门限值,d是直方图归一化后的相交值。
(3)使用MOSSE滤波器H进行精检,由文献[1]可知MOSSE滤波器定义及相关输出如下:
3 基于TMS320C6678算法实现与测试
TMS320C6678是TI推出的8核浮点DSP,每个核工作频率在1.25 GHz时运算能力能达到40 GMAC定点运算或者20 GMAC浮点运算。本文采用8个核对算法并行处理,加速跟踪。
3.1 多核并行设计实现
core0建立TCP服务器与计算机通信,core1作为主协调器协调core2和core3分别计算尺度大的区域和尺度小的区域图像块的响应,core4计算当前尺寸的图像块的响应,core5负责更新参数α(m,n)以及滤波器H,core6和core7用于目标丢失后重定位。整个多核设计如图3所示。
3.2 算法在TMS320C6678上测试效果
本文选取了OTB测试视频集中具有明显尺寸变化以及目标受到严重遮挡的几个视频测试,效果如图4和图5所示。
图4和图5中黑色框为原始KCF算法的跟踪效果,白色框为本文对KCF算法改进后的跟踪结果。
本文对改进型的KCF算法在DSP处理器TMS320C6678上使用了多核并行处理。表1列举了OTB视频集中的几个视频跟踪的帧率。从表中可以看出跟踪帧率能达到30帧/s。
4 结论
本文介绍了KCF跟踪算法原理,在原始KCF算法基础上改进了尺度更新和由粗到精的目标重定位功能,并在DSP处理器TMS320C6678上成功实现多核并行处理,达到30帧/s的实时跟踪。
参考文献
[1] BOLME D S,BEVERIDGE J R,DRAPER B A,et al.Visual object tracking using adaptive correlation filters[C].2010 IEEE Conference on Computer Vision and Pattern Recognition(CVPR),IEEE,2010:2544-2550.
[2] HENRIQUES J F,CASEIRO R,MARTINS P,et al.Exploiting the circulant structure of tracking-by-detection with kernels[C].European Conference on Computer Vision.Springer Berlin Heidelberg,2012:702-715.
[3] HENRIQUES J F,CASEIRO R,MARTINS P,et al.High-speed tracking with kernelized correlation filters[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2015,37(3):583-596.
[4] Ma Chao,Yang Xiaokang,Zhang Chongyang,et al.Longterm correlation tracking[C].Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2015:5388-5396.
[5] HAAG K,DOTENCO S,GALLWITZ F.Correlation filter based visual trackers for person pursuit using a low-cost quadrotor[C].2015 15th International Conference on Innovations for Community Services(I4CS),IEEE,2015:1-8.
[6] 杨德东,蔡玉柱,毛宁,等.采用核相关滤波器的长期目标跟踪[J].光学精密工程,2016,24(8):2037-2049.
[7] Wu Yi,LIM J,YANG M H.Online object tracking:A benchmark[C].Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2013:2411-2418.
标签: #kcf算法改进代码