王鋮 劉中姐 袁新枚 史書恒 李柏毅
(吉林大學(xué),長春 130022)
主題詞:智能車自動跟隨 目標(biāo)跟蹤 ECO算法 Camshift算法
目標(biāo)跟蹤技術(shù)是智能車輛實(shí)現(xiàn)自動跟隨控制和無人駕駛的核心技術(shù)之一,盡管目前大量文獻(xiàn)研究了運(yùn)動目標(biāo)跟蹤算法,但是在車載環(huán)境下,各種路況和車況因素引起的攝像頭不穩(wěn)定、光照強(qiáng)度變化、背景干擾等問題導(dǎo)致傳統(tǒng)的目標(biāo)跟蹤算法在一定程度上難以適應(yīng)智能車實(shí)際行駛工況下的具體需要。
針對智能車自動駕駛狀態(tài)下的目標(biāo)跟蹤,國內(nèi)外學(xué)者開展了大量研究:Li 等[1]先用級聯(lián)分類器進(jìn)行檢測,然后用Camshift算法結(jié)合濾波器實(shí)現(xiàn)了對目標(biāo)的跟蹤;李志慧等[2]通過在線訓(xùn)練相關(guān)濾波器和一維的尺度相關(guān)濾波器對尺度進(jìn)行精細(xì)搜索,使算法更適應(yīng)車載條件下的快速尺度變化;Xuan等[3]結(jié)合方向梯度直方圖(Histogram of Oriented Gradients,HOG)和支持向量機(jī)(Support Vector Machine,SVM)方法進(jìn)行檢測,并通過特征點(diǎn)匹配估計(jì)距離,最后使用粒子濾波算法進(jìn)行跟蹤。Henriques 等[4]用HOG 替換單通道灰度特征,并使用核函數(shù)對偶相關(guān)濾波進(jìn)行運(yùn)算,提出了快速且效果良好的核相關(guān)濾波(Kernel Correlation Filter,KCF)跟蹤算法,但在目標(biāo)快速運(yùn)動、目標(biāo)變形或遮擋等情況下易丟失目標(biāo),導(dǎo)致跟蹤失敗。隨著機(jī)器學(xué)習(xí)的發(fā)展,Kalal等人[5]提出的單目標(biāo)長時(shí)間跟蹤(Tracking Learning Detection,TLD)算法利用檢測模塊和學(xué)習(xí)模塊進(jìn)行修正和再學(xué)習(xí),提高了跟蹤算法的魯棒性,但存在跟蹤模塊準(zhǔn)確性低產(chǎn)生跟蹤漂移、計(jì)算量大導(dǎo)致算法運(yùn)行速度降低等問題,其后的學(xué)者相繼對TLD 算法進(jìn)行了改進(jìn)[6-7]。雖然以上算法為智能車自動跟隨目標(biāo)追蹤提供了良好的借鑒,但是在一定程度上無法良好適應(yīng)由車輛遠(yuǎn)近光、路燈、建筑物陰影等因素造成的光照變化的影響,目標(biāo)車輛行駛過程中的形變,以及相似背景和相似車型的干擾。
本文針對自動跟隨問題對跟蹤算法的具體要求,采用綜合Camshift 算法和ECO(Efficient Convolution Operators for Tracking)算法的改進(jìn)算法作為目標(biāo)跟蹤算法,在傳統(tǒng)Camshift算法的基礎(chǔ)上引入卡爾曼(Kalman)濾波預(yù)測機(jī)制,結(jié)合卡爾曼濾波的Camshift算法運(yùn)行速度快,且對目標(biāo)形變等環(huán)境干擾具有一定的魯棒性,ECO 算法對于模型更新策略的調(diào)整可避免相似背景的模型漂移問題,相關(guān)濾波的應(yīng)用有利于排除光強(qiáng)變化的干擾,同時(shí)運(yùn)行2 種算法進(jìn)行跟蹤,利用算法可靠性評價(jià)響應(yīng)狀態(tài),建立觀測值選擇性更新機(jī)制獲取目標(biāo)位置,并利用美國目標(biāo)跟蹤基準(zhǔn)(Object Tracking Benchmark,OTB)開放測試庫進(jìn)行測試,驗(yàn)證本文提出方法的有效性。
Camshift 跟蹤算法是基于Meanshift 跟蹤算法的一種改進(jìn)算法[8]。Camshift 跟蹤算法提取出源圖像的色調(diào)H特征后進(jìn)行反向投影,在目標(biāo)圖像中用顏色出現(xiàn)的概率代替像素值,得到表示圖像顏色概率分布情況的灰度圖像[9]。
對反向投影后得到的顏色概率分布圖進(jìn)行迭代運(yùn)算,直到找到概率分布的極值,確定目標(biāo)位置[10]。視頻當(dāng)前幀搜索窗口的尺寸和中心位置可以作為下一幀圖像進(jìn)行運(yùn)算的初始值,算法隨著目標(biāo)大小變化自適應(yīng)調(diào)整搜索窗口的大小、方向和位置,完成目標(biāo)跟蹤[11]。
當(dāng)系統(tǒng)被外界噪聲等因素干擾時(shí),Kalman 濾波會根據(jù)前一幀目標(biāo)的狀態(tài)對當(dāng)前幀目標(biāo)做出預(yù)判,實(shí)際上是通過線性擬合將兩種算法進(jìn)行融合[12]:
式中,x(t)為目標(biāo)在t時(shí)刻的預(yù)測位置;x(t|t-1)為卡爾曼濾波器的預(yù)測位置;Y為Camshift 算子的預(yù)測位置;α為比例因子,隨目標(biāo)遮擋干擾程度的變化而變化。
本文通過巴氏距離d(H1,H2)對目標(biāo)是否發(fā)生干擾進(jìn)行判斷。設(shè)定閾值T=0.45,當(dāng)d(H1,H2)>T時(shí),目標(biāo)發(fā)生嚴(yán)重干擾,此時(shí)引入卡爾曼濾波[13]。d(H1,H2)的求解方式為[12]:
式中,H1、H2分別為第i幀預(yù)測模板和目標(biāo)模板直方圖的顏色概率分布數(shù)據(jù)集;N為直方圖不同色調(diào)值的總數(shù)。
由于結(jié)合Kalman 濾波的Camshift 算法只使用色彩特征進(jìn)行追蹤,抗干擾能力較差。為保證智能車目標(biāo)跟蹤的準(zhǔn)確性和穩(wěn)定性,本文同時(shí)運(yùn)行ECO算法。
ECO 算法是基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)空間梯度計(jì)算與HOG特征識別技術(shù),改進(jìn)于連續(xù)卷積算子跟蹤器(Continuous Convolution Operator Tracker,C-COT)跟蹤算法[14]的濾波特征點(diǎn)跟蹤算法,在傳統(tǒng)判別相關(guān)濾波器(Discriminative Correlation Filter,DCF)的基礎(chǔ)上,Martin Danelljan[15]通過改進(jìn)模型體量、訓(xùn)練集體量和模型更新方式,提高了時(shí)間效率和空間效率,大幅降低了計(jì)算復(fù)雜度,從而提高了跟蹤效果。
對于模型體量的下降,ECO 算法提出了一種新的因式分解的卷積操作來減少DCF的參數(shù)。新的檢測函數(shù)為[15]:
式中,f=(f1,f2,…,fc)為多通道卷積濾波器;J{x}為樣本x插值特征層函數(shù);P為D×C矩陣,每一行為一個(gè)維度的特征對應(yīng)的C個(gè)濾波器的線性組合系數(shù),需要在第1幀中進(jìn)行學(xué)習(xí);PT為線性降維后的矩陣。
在新的目標(biāo)函數(shù)中加入對P的正則化后,通過高斯-牛頓(Guss-Newton)算法優(yōu)化計(jì)算,可將模型大小從D維下降到C維。
對于訓(xùn)練集體量的下降,ECO 算法通過簡化樣本x和目標(biāo)輸出y的聯(lián)合概率分布p(x,y)將目標(biāo)函數(shù)進(jìn)一步完善為[15]:
2.2 按蚊50%吸血率測定 稱重法吸血曲線回歸分析顯示,在0~15 min范圍內(nèi)吸血曲線呈現(xiàn)良好的線性回歸性(y=4.6558x-0.7595,R2=0.999 3)。回歸方程計(jì)算顯示,在饑餓處理?xiàng)l件下,按蚊完成50%最大吸血量(34.5%)的時(shí)間為7.8 min。
式中,ω為懲罰因子;L為分組數(shù)量。
簡化后再利用高斯混合模型(Gaussian Mixture Model,GMM)進(jìn)行建模。訓(xùn)練集從總量M下降到了L分組,減少了計(jì)算量,同時(shí)增加了樣本多樣性,使效果得到提升。
對于模型更新方式的改進(jìn),將模型更新步長由1幀調(diào)整為Ns,以節(jié)約時(shí)間,避免模型漂移。
由于本文算法同時(shí)使用Camshift 算法和ECO 算法提供觀測數(shù)據(jù)和預(yù)測數(shù)據(jù),在兩者差距不可忽略的情況下,會造成目標(biāo)丟失。本文引入算法可靠性的思想,對兩者的數(shù)據(jù)進(jìn)行評價(jià)與觀測值的選擇性更新。目標(biāo)跟蹤的檢測計(jì)算響應(yīng)是各模板分別響應(yīng)的綜合體現(xiàn),而不同模板的重要性和準(zhǔn)確性不同,因此本文對每個(gè)模板進(jìn)行加權(quán)處理,從而保證算法的可靠性。在自動跟隨的情況下,不同模板的加權(quán)系數(shù)由兩部分乘積構(gòu)成,即離心可靠性和連續(xù)可靠性。
算法離心可靠性的直接測量是跟隨測量值x與屏幕中值x0的代數(shù)關(guān)系,離心穩(wěn)定性系數(shù)ω1為:
式中,xi為第i幀的測量值;n為當(dāng)前幀數(shù);S1為設(shè)定的離心可靠性閾值。
當(dāng)(xn-x0)>S1時(shí),將ω1設(shè)置為0,認(rèn)為跟蹤失敗。
連續(xù)可靠性是基于度量測量值的連續(xù)性做出的可靠性估計(jì),直觀來看,連續(xù)性越高,可靠性越強(qiáng)。連續(xù)可靠性系數(shù)ω2為:
將2算法的可靠性加權(quán)系數(shù)比較計(jì)算后,輸出綜合數(shù)據(jù)。當(dāng)ECO 算法的可靠性加權(quán)系數(shù)優(yōu)于Camshift 算法時(shí),輸出ECO算法觀測結(jié)果。
本文的改進(jìn)算法軟件框架圖如圖1所示。
圖1 綜合Camshift算法和ECO算法的改進(jìn)跟蹤算法軟件框架
為驗(yàn)證本文跟蹤算法在智能車目標(biāo)跟蹤上的改進(jìn)效果,在MATLAB軟件平臺上,使用美國OTB開放測試庫[16]的專業(yè)數(shù)據(jù)對本文改進(jìn)算法、結(jié)合深度學(xué)習(xí)的TLD算法、傳統(tǒng)的KCF算法、基于自適應(yīng)結(jié)構(gòu)局部稀疏外觀模型(Adaptive Structural Local Sparse Appearance Model,ASLA)算法[17]進(jìn)行對比檢測。為使跟蹤效果的表達(dá)更加簡潔,僅給出與TLD 算法的對比結(jié)果。其中,結(jié)合智能車對目標(biāo)跟蹤跟隨的實(shí)際要求,選取目標(biāo)變形(Deformation,DEF)、光照強(qiáng)度變化(Illumination Variation,IV)以及包含特征與顏色相似背景的背景雜波(Background Clutters,BC)片段進(jìn)行分析。
為了定量分析測試結(jié)果,本文對采用標(biāo)準(zhǔn)一遍過評估(One-Pass Evaluation,OPE)以及通過打亂時(shí)間和空間得到的時(shí)間穩(wěn)健性評估(Temporal Robustness Evaluation,TRE)和空間穩(wěn)健性評估(Spatial Robustness Evaluation,SRE)3 種評估方法得到的中心像素閾值誤差-準(zhǔn)確率曲線、重合率得分閾值-成功率曲線進(jìn)行對比分析。
算法準(zhǔn)確率由中心像素誤差(跟蹤算法估計(jì)的目標(biāo)位置中心點(diǎn)與人工標(biāo)注的目標(biāo)中心點(diǎn)的距離)小于給定閾值的視頻幀的百分比來表征。閾值越小,準(zhǔn)確率越高,跟蹤算法的中心精度越高。
重合率得分為:
式中,CT為跟蹤目標(biāo)真實(shí)的矩形框;CF為跟蹤算法計(jì)算得到的矩形框;k(CT∩CF)、k(CT∪CF)為相應(yīng)區(qū)域的像素?cái)?shù)目。
當(dāng)某一幀的重合率得分大于設(shè)定的閾值時(shí),該幀為成功幀,總的成功幀占所有幀的百分比即為成功率。成功率越高,跟蹤算法對目標(biāo)尺寸變化和形變的適應(yīng)性越強(qiáng)。
分別選取OTB 開放測試庫中包含目標(biāo)變形屬性、光照強(qiáng)度變化屬性以及包含特征與顏色相似背景的背景雜波屬性的測試序列對算法進(jìn)行測試。跟蹤效果如圖2所示,成功率與準(zhǔn)確率曲線如圖3所示。
圖2 不同算法跟蹤效果
由圖2 和圖3 可知:本文算法既可以滿足目標(biāo)跟蹤過程中智能車位置變化以及路況所引起的目標(biāo)形變而提出的穩(wěn)定性要求,又能解決智能車自動跟隨時(shí)面臨的光照強(qiáng)度不規(guī)律變化的問題;同時(shí),本文算法在一定程度上改善了因背景相似引起跟蹤目標(biāo)改變導(dǎo)致跟蹤失敗的問題,且在較為惡劣的環(huán)境下,仍然具有一定的可靠性。由此,本算法有效提高了目標(biāo)跟蹤的準(zhǔn)確性和穩(wěn)定性。
在某視頻序列中,每個(gè)跟蹤算法以不同的幀作為起始幀進(jìn)行追蹤,初始化采用的矩形框?yàn)閷?yīng)幀標(biāo)注的真實(shí)數(shù)據(jù),對得到的準(zhǔn)確率和成功率結(jié)果取平均值,得到TRE。由于有些算法對初始化時(shí)給定的矩形框比較敏感,而目前測評用的真實(shí)數(shù)據(jù)均為人工標(biāo)注數(shù)據(jù),因此可能會對某些跟蹤算法產(chǎn)生影響。為評估上述跟蹤算法是否對初始化敏感,將真實(shí)數(shù)據(jù)進(jìn)行微小平移和伸縮來產(chǎn)生矩形框。平移的幅度為目標(biāo)物體面積的10%,尺度變化范圍為真實(shí)數(shù)據(jù)的80%~120%,以每10百分點(diǎn)依次增加。最后取結(jié)果的平均值作為SRE。本文通過對比TRE和SRE的整體性,對算法魯棒性進(jìn)行評估。
圖3 不同算法跟蹤成功率與準(zhǔn)確率
在智能車正常運(yùn)動跟蹤的情況下,對OTB 開放測試庫中的運(yùn)動車輛序列進(jìn)行整體性分析。OPE、TRE和SRE 評估方法的目標(biāo)跟蹤成功率與準(zhǔn)確率曲線如圖4所示。由圖4可知,盡管算法的成功率和準(zhǔn)確性均略有下降,但本文改進(jìn)算法的各項(xiàng)數(shù)據(jù)均高于其他3 種算法,因此,本文算法具有較強(qiáng)的魯棒性。
圖4 不同情況下各算法魯棒性定量分析結(jié)果
本文針對智能車對行人或前方車輛等目標(biāo)進(jìn)行自動跟蹤跟隨時(shí),易受環(huán)境噪聲、相似背景和光照變化等因素影響而導(dǎo)致目標(biāo)丟失的問題,提出了一種綜合Camshift算法和ECO算法的改進(jìn)目標(biāo)跟蹤算法,利用國際公開測試庫將本文算法與傳統(tǒng)的KCF算法、TLD算法和ASLA 算法進(jìn)行試驗(yàn)對比,結(jié)果表明,改進(jìn)算法在目標(biāo)變形、光照強(qiáng)度改變以及特征與顏色相似背景條件下具有較好的魯棒性和測試性能。此外,該算法可以通過與深度學(xué)習(xí)更為緊密的結(jié)合,進(jìn)一步提高跟蹤精度。