郭 瓊,閆秀燕,段晶晶,段杰奇,翟曉燕
(北方自動(dòng)控制技術(shù)研究所,太原 030006)
從信號(hào)處理實(shí)現(xiàn)的角度,目標(biāo)跟蹤系統(tǒng)的發(fā)展歷程[1]如圖1 所示??梢钥吹礁櫰饔赡M到數(shù)字,再到模擬數(shù)字結(jié)合;由跟蹤簡(jiǎn)單場(chǎng)景單一特定目標(biāo)到跟蹤復(fù)雜場(chǎng)景任意指定目標(biāo);由硬件實(shí)現(xiàn)單一任務(wù)的硬件跟蹤器到軟硬結(jié)合的、智能可編程、可實(shí)現(xiàn)多任務(wù)的數(shù)字跟蹤器。
圖1 圖像跟蹤系統(tǒng)的發(fā)展
隨著目標(biāo)跟蹤技術(shù)的不斷發(fā)展,現(xiàn)今的跟蹤器具有以下特點(diǎn)[2]:
具有單一目標(biāo)和多目標(biāo)處理能力,可對(duì)整個(gè)視場(chǎng)內(nèi)的目標(biāo)進(jìn)行檢測(cè)和跟蹤;
具有很強(qiáng)的抗干擾能力,采用多模跟蹤,可自適應(yīng)地修改門限和進(jìn)行最佳加權(quán)處理,使跟蹤器能在復(fù)雜背景和低對(duì)比度的情況下工作;
具有前景預(yù)測(cè)能力,能預(yù)測(cè)目標(biāo)前進(jìn)方向上的障礙物或背景突變,一旦有障礙物出現(xiàn),它將采用記憶外推繼續(xù)保持對(duì)目標(biāo)的跟蹤。
同時(shí),目標(biāo)跟蹤領(lǐng)域的研究主要集中在以下兩個(gè)方面[3]:跟蹤算法研究和高速硬件平臺(tái)研究。
本文研究的是裝甲戰(zhàn)車目標(biāo)跟蹤系統(tǒng),即系統(tǒng)收到目標(biāo)跟蹤指令,獲得此時(shí)刻目標(biāo)的位置信息,通過(guò)系統(tǒng)的自學(xué)習(xí)在后續(xù)幀處理中檢測(cè)和跟蹤目標(biāo)。針對(duì)系統(tǒng)的處理算法和硬件結(jié)構(gòu)進(jìn)行分析設(shè)計(jì),實(shí)現(xiàn)了一套可應(yīng)用于復(fù)雜場(chǎng)景的跟蹤原理樣機(jī)。
目標(biāo)跟蹤的主要任務(wù)是在視頻圖像中目標(biāo)被識(shí)別的基礎(chǔ)上,將不同幀中的同一目標(biāo)對(duì)應(yīng)的過(guò)程。目前針對(duì)運(yùn)動(dòng)目標(biāo)的跟蹤方法主要分為兩大類[4]:第1 種基于濾波和數(shù)據(jù)關(guān)聯(lián),先根據(jù)實(shí)際情況建立目標(biāo)的運(yùn)動(dòng)方程,對(duì)目標(biāo)的運(yùn)動(dòng)過(guò)程進(jìn)行預(yù)測(cè),再由合適的濾波或數(shù)據(jù)關(guān)聯(lián)算法來(lái)實(shí)現(xiàn)對(duì)真實(shí)目標(biāo)的提取。第2 種基于目標(biāo)特征,利用圖像的灰度,紋理、顏色、形狀等特征,對(duì)目標(biāo)進(jìn)行表征,通過(guò)這些特征對(duì)目標(biāo)對(duì)象或目標(biāo)所在局部區(qū)域建立數(shù)學(xué)模型,繼而由匹配跟蹤或波門跟蹤方法來(lái)實(shí)現(xiàn)對(duì)目標(biāo)的跟蹤。
采用基于核相關(guān)濾波器和時(shí)空上下文濾波器的目標(biāo)長(zhǎng)時(shí)跟蹤算法,融合核相關(guān)濾波器(KCF)[5]、時(shí)空上下文濾波器(STC)[6]以及卡爾曼濾波器等技術(shù),構(gòu)建可在復(fù)雜場(chǎng)景下穩(wěn)定跟蹤且具有目標(biāo)丟失重捕獲功能的跟蹤技術(shù)。
KCF 算法的核心思想是利用循環(huán)矩陣?yán)碚撛谀繕?biāo)區(qū)域進(jìn)行移位,構(gòu)造大量樣本提升分類器的判別能力,通過(guò)核函數(shù)計(jì)算候選區(qū)域和跟蹤目標(biāo)的相似度,選取相似度最大的區(qū)域?yàn)樾履繕?biāo)。
對(duì)于每一個(gè)訓(xùn)練樣本xi賦予對(duì)應(yīng)的分類標(biāo)簽yi,yi值服從高斯分布。
利用循環(huán)移位獲得的樣本xi,分類器f(x)通過(guò)最小化正則泛函
其中,向量α 的元素為αi,向量y 的元素為yi。對(duì)式(2)進(jìn)行傅立葉變換:
在目標(biāo)受遮擋的過(guò)程中,KCF 算法實(shí)時(shí)更新會(huì)丟失目標(biāo)圖像的特征值,提出目標(biāo)的模板記憶規(guī)則。選定跟蹤目標(biāo),初始化記憶模板T 為原始目標(biāo)模板T0,采用KCF 濾波器進(jìn)行跟蹤。從第2 幀開始,計(jì)算當(dāng)前幀跟蹤算法選取出的目標(biāo)模型與模板T對(duì)應(yīng)目標(biāo)模型的相似度。本文采用基于Sobel 算子的梯度直方圖[9]度量候選模型與記憶模板的匹配程度,相似度越大,匹配程度越高。
當(dāng)目標(biāo)受到遮擋,原始的KCF 算法丟失目標(biāo)會(huì)影響跟蹤效果。因此,提出一種基于Kalman 濾波器的運(yùn)動(dòng)外推[10],即判定目標(biāo)受到遮擋,則利用Kalman濾波器對(duì)目標(biāo)位置進(jìn)行預(yù)測(cè)。其實(shí)現(xiàn)過(guò)程如下:
判定目標(biāo)丟失后,依據(jù)模板對(duì)其進(jìn)行大范圍置信圖檢測(cè),針對(duì)每次遍歷中概率最大的位置進(jìn)行驗(yàn)證。比對(duì)所選取出的位置的梯度直方圖與記憶模板的梯度直方圖的相似度,若相似度大于,則目標(biāo)重檢成功,若相似度小于,則目標(biāo)重檢失敗,重檢繼續(xù)。
圖2 目標(biāo)跟蹤算法流程圖
本文提出的基于核相關(guān)濾波器和時(shí)空上下文的目標(biāo)長(zhǎng)時(shí)跟蹤的算法流程如圖2 所示。算法步驟如下:
1)手動(dòng)選定目標(biāo),對(duì)目標(biāo)模板進(jìn)行記憶。
2)目標(biāo)圖樣移位獲得訓(xùn)練樣本,訓(xùn)練濾波器。
3)采用更新后的濾波器對(duì)下一幀圖像進(jìn)行檢測(cè),得出目標(biāo)的新位置。
5)判定目標(biāo)受遮擋后,在丟失位置進(jìn)行基于卡爾曼濾波的運(yùn)動(dòng)外推。
6)利用置信圖進(jìn)行遍歷重檢,對(duì)重檢結(jié)果與記憶模板進(jìn)行對(duì)比,相似度小于,繼續(xù)重檢,直到超過(guò)tlost,跟蹤失敗。相似度大于,跳轉(zhuǎn)回KCF 跟蹤器繼續(xù)跟蹤。
視頻跟蹤器的主要功能是對(duì)輸入的圖像數(shù)據(jù)進(jìn)行目標(biāo)跟蹤,跟蹤上目標(biāo)后,輸出目標(biāo)與搜索平臺(tái)之間的偏差量(Δx,Δy),來(lái)驅(qū)動(dòng)轉(zhuǎn)臺(tái)跟蹤目標(biāo)。結(jié)合視頻跟蹤器的主要功能和用戶使用簡(jiǎn)捷的原則,設(shè)計(jì)系統(tǒng)的工作狀態(tài)包括:解鎖狀態(tài)、較軸狀態(tài)、跟蹤狀態(tài),系統(tǒng)的工作狀態(tài)如圖3 所示。
圖3 跟蹤器工作流程
此平臺(tái)為FPGA+DSP 架構(gòu),從視覺傳感器輸出信號(hào)通過(guò)PAL 制式標(biāo)準(zhǔn)接口進(jìn)入FPGA 中,F(xiàn)PGA將待處理數(shù)據(jù)通過(guò)高速接口傳輸給DSP 處理器進(jìn)行圖像處理,同時(shí)輸出視頻信號(hào)給監(jiān)視器,便于人眼觀察。外部通信接口為RS422 與火控計(jì)算機(jī)或指揮控制中心實(shí)現(xiàn)信息交互。在系統(tǒng)內(nèi)部,DSP 和FPGA 通過(guò)SPI、GPIO、EMIF 三者相連,用于輸出圖像數(shù)據(jù),工作指令等信號(hào)。DSP 外擴(kuò)DDR 存儲(chǔ)器,F(xiàn)PGA 外擴(kuò)SDRAM 存儲(chǔ)器用于存放圖像。系統(tǒng)硬件設(shè)計(jì)如下頁(yè)圖4 所示。
圖4 系統(tǒng)硬件設(shè)計(jì)
對(duì)本文提出的視頻跟蹤器系統(tǒng)進(jìn)行相關(guān)指標(biāo)檢測(cè),其中包含低對(duì)比度、小目標(biāo)、嚴(yán)重遮擋場(chǎng)景的跟蹤測(cè)試。在仿真模擬器中逐漸將目標(biāo)的對(duì)比度由50%下降至5%,跟蹤系統(tǒng)均能實(shí)現(xiàn)良好的跟蹤效果。分別模擬目標(biāo)像素?cái)?shù)為64×64、32×32、16×16、8×8、4×4、2×2 的場(chǎng)景測(cè)試,實(shí)驗(yàn)結(jié)果表明,本文提出的視頻跟蹤系統(tǒng),能實(shí)現(xiàn)目標(biāo)大小為2×2像素、運(yùn)動(dòng)速度為10 像素/場(chǎng)的穩(wěn)定跟蹤。選取了50 組不同遮擋情況的視頻序列,在相同硬件系統(tǒng)下進(jìn)行算法對(duì)比測(cè)試,本文提出的跟蹤算法的跟蹤成功率相較于KCF 算法提高了42%,相較于STC 算法提高了28%。如圖5 所示為研究的跟蹤器相關(guān)參數(shù)檢定情況。
在低對(duì)比度環(huán)境下對(duì)小車進(jìn)行實(shí)時(shí)跟蹤,場(chǎng)景包括目標(biāo)快速運(yùn)動(dòng)、小幅度旋轉(zhuǎn)、被部分遮擋和完全遮擋,且由于環(huán)境中有光照強(qiáng)弱變化,可以進(jìn)一步驗(yàn)證本系統(tǒng)的有效性和魯棒性。實(shí)驗(yàn)結(jié)果如圖6所示,第228 幀目標(biāo)相較于第164 幀有小幅度旋轉(zhuǎn),系統(tǒng)仍能準(zhǔn)確跟蹤目標(biāo),目標(biāo)在第539 幀到第595 幀通過(guò)遮擋物,跟蹤框沿著目標(biāo)運(yùn)動(dòng)方向移動(dòng),第595 幀后系統(tǒng)重新捕獲目標(biāo)進(jìn)行穩(wěn)定跟蹤,第874 幀目標(biāo)逆向通過(guò)了遮擋物,跟蹤系統(tǒng)持續(xù)鎖定目標(biāo),第874 幀到第1 114 幀目標(biāo)快速往返運(yùn)動(dòng),系統(tǒng)均能平穩(wěn)有效跟蹤。
74 頁(yè)圖7 為本系統(tǒng)的戰(zhàn)場(chǎng)環(huán)境測(cè)試圖片。裝甲戰(zhàn)車在視場(chǎng)中平穩(wěn)行駛的過(guò)程中,目標(biāo)跟蹤系統(tǒng)處于穩(wěn)定的跟蹤狀態(tài)。當(dāng)有障礙物(手)遮擋時(shí),目標(biāo)完全丟失,波門沿著目標(biāo)之前運(yùn)動(dòng)軌跡移動(dòng)。當(dāng)遮擋消失后,目標(biāo)裝甲車出現(xiàn)在視野中,跟蹤系統(tǒng)迅速重捕獲到目標(biāo)。
本文針對(duì)復(fù)雜戰(zhàn)場(chǎng)環(huán)境下裝甲目標(biāo)的跟蹤問(wèn)題,提出了基于核相關(guān)濾波器和時(shí)空上下文濾波的目標(biāo)長(zhǎng)時(shí)跟蹤算法,實(shí)現(xiàn)了復(fù)雜場(chǎng)景下目標(biāo)的實(shí)時(shí)、準(zhǔn)確跟蹤。設(shè)計(jì)了基于DSP 和FPGA 的視頻跟蹤器系統(tǒng),通過(guò)實(shí)驗(yàn)驗(yàn)證,該系統(tǒng)能夠很好地滿足戰(zhàn)場(chǎng)環(huán)境對(duì)視頻跟蹤器的需求。
圖5 跟蹤器各項(xiàng)指標(biāo)測(cè)試
圖6 實(shí)時(shí)復(fù)雜場(chǎng)景目標(biāo)跟蹤實(shí)驗(yàn)
圖7 戰(zhàn)場(chǎng)環(huán)境下的系統(tǒng)測(cè)試