文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.172962
中文引用格式: 王永俊,卿粼波,何小海,等. 基于TMS320C6678核相關(guān)濾波器跟蹤算法實(shí)現(xiàn)及改進(jìn)[J].電子技術(shù)應(yīng)用,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 引言
目標(biāo)跟蹤是計(jì)算機(jī)視覺領(lǐng)域中一個(gè)重要分支,被廣泛應(yīng)用于智能監(jiān)控、人機(jī)交互、機(jī)器人等領(lǐng)域。近年來,目標(biāo)跟蹤算法的研究得到了很大發(fā)展。其中以相關(guān)濾波器在目標(biāo)跟蹤上的研究成為了典型。BOLME D S[1]等提出了通過訓(xùn)練單幀圖像得到最小輸出方差和濾波器(Minimum Output Sum of Squared Error,MOSSE)來對(duì)目標(biāo)進(jìn)行跟蹤,提升了以往跟蹤算法的速度。HENRIQUES J F[2]等提出了基于循環(huán)結(jié)構(gòu)的檢測(cè)跟蹤算法(the Circulant Structure of tracking by detection with Kernels,CSK),該算法對(duì)候選圖像塊進(jìn)行循環(huán)移位,得到大量的樣本進(jìn)行訓(xùn)練分類器。分類器的訓(xùn)練和檢測(cè)都是基于頻率域點(diǎn)積操作,極大地提升了跟蹤速度。后來HENRIQUES J F[3]等對(duì)CSK算法進(jìn)行了改進(jìn),通過提取圖像的HOG特征,進(jìn)行多維特征跟蹤,并提出了核相關(guān)濾波器(KCF)以及雙核相關(guān)濾波器(DCF)跟蹤算法,進(jìn)一步提高了跟蹤性能。由于KCF算法具有對(duì)光照變化魯棒性高、跟蹤速度快的特點(diǎn),更適合在嵌入式系統(tǒng)上應(yīng)用。
然而原始的KCF算法不能適應(yīng)目標(biāo)尺寸的變化以及當(dāng)目標(biāo)受到嚴(yán)重遮擋時(shí)不能準(zhǔn)確跟蹤。文獻(xiàn)[4]~[6]針對(duì)KCF算法進(jìn)行了改進(jìn),根據(jù)在先前幀成功跟蹤的位置處提取大量的正負(fù)樣本圖片在線訓(xùn)練SVM分類器,當(dāng)目標(biāo)丟失后使用SVM分類器進(jìn)行重定位。但是這些文章都忽略了當(dāng)前幀的信息,并且提取大量的正負(fù)樣本訓(xùn)練分類器降低了跟蹤速度。
為了增強(qiáng)KCF算法的跟蹤性能,本文在原始KCF算法基礎(chǔ)上改進(jìn)了具有目標(biāo)尺度更新的算法,并結(jié)合峰值旁瓣比(Peak to Sidelobe Ratio,PSR)[2]和MOSSE濾波器提出了一種在時(shí)域進(jìn)行由粗到精的目標(biāo)重定位算法。本文改進(jìn)型的KCF算法在DSP TMS320C6678處理器上成功實(shí)現(xiàn)了移植及優(yōu)化,實(shí)驗(yàn)表明對(duì)于OTB[7]大多數(shù)視頻能達(dá)到30幀/s以上的穩(wěn)定跟蹤。
1 KCF跟蹤算法[3]
基于核函數(shù)的相關(guān)濾波器的跟蹤算法總體思想是使用循環(huán)樣本xm,n通過式(1)找到最優(yōu)的濾波器w,其中循環(huán)樣本xm,n是由M×N的圖像塊x循環(huán)移位獲得的,其中(m,n)∈{0,1,…,M-1;0,1,…,N-1},y(m,n)是相應(yīng)循環(huán)移位樣本對(duì)應(yīng)的高斯回歸目標(biāo)。
通過式(3)可以看出,原始KCF算法以固定的尺寸提取圖像塊z,并且無論跟蹤是否失敗,都在上一幀相關(guān)值最大的位置處以固定的尺寸提取圖像塊,這樣導(dǎo)致不能適應(yīng)目標(biāo)尺度的變化以及跟蹤失敗后將永久性失敗。
2 改進(jìn)型的KCF跟蹤算法
針對(duì)原始KCF算法不能適應(yīng)目標(biāo)尺寸變換以及目標(biāo)受到嚴(yán)重遮擋時(shí)不能準(zhǔn)確跟蹤,本文提出了改進(jìn)型的KCF跟蹤算法。
2.1 目標(biāo)尺度更新算法
如圖1所示,左圖為先前幀跟蹤結(jié)果,目標(biāo)尺寸大小為P×Q,中心位置為c1。定義S為尺度數(shù)量,以anP×anQ的大小在c1為中心點(diǎn)處提取下一幀圖像得到候選樣本集J,即圖1中右圖畫框的圖像塊,其中n∈{-,…,},a定義為初始值大于1的尺度因子。將候選樣本集J的所有樣本尺寸縮放到P×Q大小的圖像塊,對(duì)所有的候選樣本通過式(3)分別計(jì)算出對(duì)應(yīng)的響應(yīng)值,響應(yīng)值最大的尺寸即為當(dāng)前目標(biāo)的尺寸,記為P′×Q′,更新目標(biāo)尺寸為P′×Q′。
2.2 目標(biāo)跟蹤失敗后重定位算法
本文通過PSR值評(píng)估目標(biāo)跟蹤狀態(tài),當(dāng)目標(biāo)丟失后,調(diào)用目標(biāo)重定位算法確定目標(biāo)位置,以便能繼續(xù)準(zhǔn)確跟蹤。
2.2.1 PSR定義
定義PSR值τ=(gmax-μs1)/σs1,其中g(shù)max是相關(guān)輸出的最大值,μs1和σs1分別表示除去以相關(guān)輸出最大值為中心的11×11的區(qū)域后剩余區(qū)域的均值和標(biāo)準(zhǔn)差。在本文中定義了兩個(gè)門限τa和τb分別表示目標(biāo)的跟蹤狀態(tài)為失敗和成功。當(dāng)τ≤τa時(shí)表示目標(biāo)丟失,需要進(jìn)行重定位目標(biāo);當(dāng)τ≥τb時(shí)表示目標(biāo)正確跟蹤,繼續(xù)跟蹤下一幀圖像。
2.2.2 時(shí)域由粗到精的目標(biāo)重定位算法
根據(jù)PSR τ判斷目標(biāo)丟失后,本文提出了一種使用時(shí)域模型γprev和MOSSE濾波器H進(jìn)行由粗到精的快速重定位算法。這里的γprev是先前幀根據(jù)跟蹤結(jié)果PSR滿足τ≥τb時(shí)提取的時(shí)域模型。算法步驟為:首先使用方差濾波器粗檢,濾除大部分目標(biāo)不存在的區(qū)域;然后使用直方圖相交法進(jìn)一步對(duì)剩余的區(qū)域進(jìn)行篩選;最后使用MOSSE濾波器對(duì)篩選出來的區(qū)域進(jìn)行精檢??傮w流程如圖2所示。
(1)方差濾波器粗檢,根據(jù)γprev求取標(biāo)準(zhǔn)差,提取出標(biāo)準(zhǔn)差滿足|σ-σ0|≤σmin的候選框,并結(jié)合了NMS(非極大值抑制算法)處理得到候選集C1。其中σ滓和σ0分別表示當(dāng)前候選框和γprev的標(biāo)準(zhǔn)差,σmin是標(biāo)準(zhǔn)差門限值。標(biāo)準(zhǔn)差計(jì)算公式如下:
其中N表示像素點(diǎn)的個(gè)數(shù),x表示像素的灰度值,m是圖像的均值。對(duì)于計(jì)算標(biāo)準(zhǔn)差σ可以利用積分圖求解,加快粗檢操作。
(2)采用直方圖相交對(duì)候選框集C1進(jìn)一步篩選出目標(biāo)存在可能性大的候選框,得到候選框集C2,直方圖相交公式如下:
如果d≥d0則保留候選框,否則丟棄當(dāng)前的候選框。其中d0是直方圖相交門限值,d是直方圖歸一化后的相交值。
(3)使用MOSSE濾波器H進(jìn)行精檢,由文獻(xiàn)[1]可知MOSSE濾波器定義及相關(guān)輸出如下:
3 基于TMS320C6678算法實(shí)現(xiàn)與測(cè)試
TMS320C6678是TI推出的8核浮點(diǎn)DSP,每個(gè)核工作頻率在1.25 GHz時(shí)運(yùn)算能力能達(dá)到40 GMAC定點(diǎn)運(yùn)算或者20 GMAC浮點(diǎn)運(yùn)算。本文采用8個(gè)核對(duì)算法并行處理,加速跟蹤。
3.1 多核并行設(shè)計(jì)實(shí)現(xiàn)
core0建立TCP服務(wù)器與計(jì)算機(jī)通信,core1作為主協(xié)調(diào)器協(xié)調(diào)core2和core3分別計(jì)算尺度大的區(qū)域和尺度小的區(qū)域圖像塊的響應(yīng),core4計(jì)算當(dāng)前尺寸的圖像塊的響應(yīng),core5負(fù)責(zé)更新參數(shù)α(m,n)以及濾波器H,core6和core7用于目標(biāo)丟失后重定位。整個(gè)多核設(shè)計(jì)如圖3所示。
3.2 算法在TMS320C6678上測(cè)試效果
本文選取了OTB測(cè)試視頻集中具有明顯尺寸變化以及目標(biāo)受到嚴(yán)重遮擋的幾個(gè)視頻測(cè)試,效果如圖4和圖5所示。
圖4和圖5中黑色框?yàn)樵糑CF算法的跟蹤效果,白色框?yàn)楸疚膶?duì)KCF算法改進(jìn)后的跟蹤結(jié)果。
本文對(duì)改進(jìn)型的KCF算法在DSP處理器TMS320C6678上使用了多核并行處理。表1列舉了OTB視頻集中的幾個(gè)視頻跟蹤的幀率。從表中可以看出跟蹤幀率能達(dá)到30幀/s。
4 結(jié)論
本文介紹了KCF跟蹤算法原理,在原始KCF算法基礎(chǔ)上改進(jìn)了尺度更新和由粗到精的目標(biāo)重定位功能,并在DSP處理器TMS320C6678上成功實(shí)現(xiàn)多核并行處理,達(dá)到30幀/s的實(shí)時(shí)跟蹤。
參考文獻(xiàn)
[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] 楊德東,蔡玉柱,毛寧,等.采用核相關(guān)濾波器的長(zhǎng)期目標(biāo)跟蹤[J].光學(xué)精密工程,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.