程玉寶, 蔣 斐, 倪家正
(脈沖功率激光技術(shù)國家重點實驗室(電子工程學院),合肥 230037)
自海灣戰(zhàn)爭以來,電視制導技術(shù)一直是精確制導技術(shù)中的焦點,但是,光電對抗技術(shù)的發(fā)展對電視制導技術(shù)構(gòu)成極大的威脅,尤其是激光散斑干擾[1]。目前,電視制導跟蹤系統(tǒng)執(zhí)行的跟蹤算法抗干擾研究主要體現(xiàn)在復雜的自然背景干擾,對抗激光散斑干擾的研究較少,文獻[2]基于FPGA實現(xiàn)的自適應(yīng)卡爾曼濾波算法對背景噪聲進行了處理;文獻[3]基于DSP實現(xiàn)的相關(guān)匹配算法在自然背景下實時性良好。而對于抗干擾性較強的粒子濾波跟蹤算法,目前的研究還局限于計算機仿真階段。
本文針對粒子濾波跟蹤算法計算量大、難以進行硬件實現(xiàn)的問題,提出了基于“DSP+ARM”技術(shù)架構(gòu)的電視跟蹤仿真平臺。以基于達芬奇(DaVinci)技術(shù)的高集成度雙核架構(gòu)視頻芯片TMS320DM6446(簡稱DM6446)為核心,設(shè)計了電視制導跟蹤仿真平臺,完成了粒子濾波跟蹤算法的硬件實現(xiàn)。
電視制導跟蹤平臺由攝像機、視頻編解碼器、存儲單元、圖像處理單元、視頻顯示模塊、控制單元以及伺服機構(gòu)組成,如圖1所示。
為了滿足實時性、穩(wěn)定性、智能化等性能要求,主控芯片選用了DM6446。該芯片是集成了可編程數(shù)字信號處理器(DSP)內(nèi)核以及ARM處理器內(nèi)核的片上系統(tǒng)(SoC):ARM作為主控器件,負責與外圍器件通訊,協(xié)調(diào)控制數(shù)據(jù)傳輸;DSP進行數(shù)據(jù)處理。該方案結(jié)構(gòu)靈活,通用性強,適合模塊化設(shè)計,可以在不更改硬件的條件下改動相應(yīng)ARM和DSP程序,從而滿足不同圖像源以及不同目標特性的跟蹤要求;同時開發(fā)周期較短,性價比高,增強了人機交互能力,為后續(xù)平臺升級和擴展提供了前提。
圖1 電視跟蹤平臺原理框圖Fig.1 The schematic diagram of TV-tracking platform
粒子濾波是一種基于蒙特卡羅仿真的近似貝葉斯濾波[4],它通過非參數(shù)化的蒙特卡羅模擬實現(xiàn)遞推貝葉斯濾波,適用于任何能用狀態(tài)空間模型表示的非線性系統(tǒng),精度可逼近最優(yōu)估計。粒子濾波跟蹤算法描述了一種魯棒的目標跟蹤框架,粒子濾波中的粒子描述目標狀態(tài)的各種可能點,而濾波是濾出目標最有可能的狀態(tài)。
在初始幀中,每個粒子代表目標的一個可能運動狀態(tài),包括兩個參數(shù)系統(tǒng)狀態(tài)轉(zhuǎn)移時,粒子運動參數(shù)為
式中:A1、A2為常數(shù),一般情況下取 A1=1,A2=1;B1、B2為粒子傳播半徑;wk-1為歸一化高斯噪聲量。
通過比較目標模板和參考目標的灰度分布,建立系統(tǒng)觀測模型。取最小平均絕對差值函數(shù)為衡量相似程度的工具,即對每個粒子計算一個相似值MAD。k時刻的后驗概率,就是目標跟蹤中所期望的目標參數(shù)(xopt,yopt)采用加權(quán)準則表示,即各粒子根據(jù)自身權(quán)值大小決定其在后驗概率中所占的比例,如式(2)所示。
至此,一次跟蹤過程結(jié)束,下一時刻的跟蹤仍然從系統(tǒng)的狀態(tài)轉(zhuǎn)移步驟重新開始[5]。
重采樣用于解決“粒子退化”問題,淘汰小權(quán)重粒子,以權(quán)重大粒子衍生替代,并重新分配權(quán)重。裂變自舉粒子濾波(Fission Bootstrap Particle Filtering,F(xiàn)BPF)[6]在粒子濾波跟蹤算法的基礎(chǔ)上改進了重采樣過程,引入了“權(quán)值排序—裂變繁殖—權(quán)值歸一”過程,簡稱SFN預處理過程。SFN預處理的核心是對有樣本枯竭趨勢的粒子集中的高權(quán)值粒子進行適當?shù)念A平滑處理。由于對高權(quán)值粒子的權(quán)值進行了重新分配,所以權(quán)值的方差減小,權(quán)值蛻化減弱,粒子集的多樣性增強,避免了原先的樣本枯竭問題。
裂變自舉粒子濾波的實現(xiàn)主要為系統(tǒng)初始化、狀態(tài)轉(zhuǎn)移、權(quán)重計算、權(quán)重歸一化、最優(yōu)估計輸出和重采樣6個步驟,流程如圖2所示。
圖2 改進FBPF算法流程框圖Fig.2 The flow chart of the improved FBPF
在本文研究中,由于激光散斑干擾,選取灰度模板為目標描述形式,用粒子加權(quán)和來表示目標參數(shù)的估計值,粒子權(quán)值與相關(guān)值成比例。研究中選擇了目標空間位置作為狀態(tài)變量,這樣既能滿足實際跟蹤需求,又能降低狀態(tài)空間模型的復雜度,大大減少運算量。
設(shè)搜索區(qū)域為M1×M2(搜索量),則計算量比值
實際編程中,O 取 0.3 ~0.5[7]。
根據(jù)先驗知識,可以獲得視場內(nèi)目標速度V。V越大,目標在連續(xù)兩幀圖像間的移動范圍就越大,粒子傳播半徑B就應(yīng)越大。實驗發(fā)現(xiàn)[7],當2V<B<3V時,可以得到較好的跟蹤結(jié)果。為了提高平臺的抗激光散斑干擾能力,同時兼顧硬件資源和計算能力,選擇B=2V。
根據(jù)系統(tǒng)預測方程,可以通過計算似然函數(shù)來獲取粒子權(quán)重。當進行重采樣后,權(quán)重被均衡化,常設(shè)為1/Ns,因此下一刻的權(quán)重及權(quán)重歸一化為
經(jīng)過對FBPF算法的反復研究發(fā)現(xiàn),在整個FBPF算法流程中權(quán)重歸一化步驟僅僅用于計算目標最優(yōu)估計和有效樣本容量,而SFN預處理、重采樣過程中也包含有權(quán)重歸一化計算。因此在程序編寫時,將權(quán)重歸一化與其他步驟合并,從而減少大量除法運算,降低開銷。
重采樣過程主要包括權(quán)重銳化檢測和SFN預處理兩方面內(nèi)容。
在SFN預處理判斷時,權(quán)值銳化檢測的有效樣本容量Neff是歸一化權(quán)值平方和的倒數(shù),需要Ns+1次除法運算。因此,按照前面所述與權(quán)重歸一化合并,如式(6)所示。
可見,整個過程僅需1次除法運算,從而省去了Ns次除法,運算量大大降低。另外,預設(shè)門限Nth的選取,一般滿足Nth/Ns∈[0.3 0.8]。編程時根據(jù)實際需要折衷考慮,選用 0.6。
在權(quán)重排序過程中,粒子間依次進行權(quán)重比較,權(quán)重大的粒子存儲在低地址,權(quán)重較小的存儲在較高地址,同時粒子的索引值也相應(yīng)交換。參照樣本容量選取一定數(shù)目的高權(quán)粒子,進行裂變。根據(jù)索引值,對高地址的粒子(淘汰粒子)進行權(quán)重和狀態(tài)量的覆蓋。最后經(jīng)權(quán)重歸一化后,SFN預處理結(jié)束,進入新一輪粒子采樣。
2.3.1 設(shè)置編譯器選項
編譯器選項的設(shè)置不但控制編譯的過程,還能控制程序的運行。CCS編譯器中提供了若干等級和種類的自動優(yōu)化選項。因此在優(yōu)化時,根據(jù)實際要求,合適地選擇了編譯器選項,進行源程序優(yōu)化,如表1所示。
表1 CCS編譯器優(yōu)化選項Table 1 The CCS compiler optimizing options
2.3.2 打包存儲器數(shù)據(jù)
對于FBPF跟蹤算法,粒子間的獨立性非常適合進行打包數(shù)據(jù)操作。因此在編程時,結(jié)合DM6446的32位存儲結(jié)構(gòu),采用了字對齊方式,對視頻存儲數(shù)據(jù)進行打包處理,便于使用內(nèi)聯(lián)函數(shù)進行字處理運算。具體體現(xiàn)在粒子MAD值計算,通過數(shù)據(jù)打包,一條指令能夠處理4個像素的MAD值計算。
在當前實驗環(huán)境下,主要測試執(zhí)行性能,包括跟蹤時間和跟蹤精度兩個方面,主要驗證平臺實時跟蹤能力。
實驗測試時,對DSP端的粒子濾波跟蹤算法中主要耗時模塊進行了時間測試。在27 MHz的參考時鐘下,倍頻使DSP端時鐘為459 MHz,ARM 端為229.5 MHz。根據(jù)實驗場景,選取目標模板24*24,粒子數(shù)32,對全場視頻數(shù)據(jù)Y分量進行處理。統(tǒng)計時,對其中一幀圖像進行跟蹤處理,統(tǒng)計粒子濾波跟蹤算法以及內(nèi)部主要函數(shù)的運行時間,測試結(jié)果如表2所示。
表2 粒子濾波跟蹤算法執(zhí)行時間統(tǒng)計Table 2 The implementing time of particle filter tracking
Trace函數(shù)指的是從第二幀開始運行的粒子濾波跟蹤算法,該處統(tǒng)計的是某一次對第二幀圖像進行粒子濾波跟蹤算法處理所需時間;Extract_module函數(shù)用于粒子提取對應(yīng)灰度區(qū)域,由于粒子數(shù)設(shè)為32,再加上初始模板提取,總共執(zhí)行33次;Sk_MAD函數(shù)是指粒子進行MAD值計算,32個粒子需要進行32次MAD值計算。
通過多次執(zhí)行運算統(tǒng)計,得出運行粒子濾波算法的平均時間為9~10 ms,遠遠小于幀采集時間40 ms。可以看出,改進后的粒子濾波算法在高性能仿真平臺上的執(zhí)行時間完全滿足幀處理要求,具有良好的實時性。
為了更好地分析硬件平臺上跟蹤算法的抗干擾性能,分別采用 0.095 mW、0.576 mW、1.390 mW和3.130 mW 4種不同功率的激光散斑干擾來對電視跟蹤仿真平臺進行跟蹤精度測試。由于篇幅限制,只給出采用粒子濾波算法在1.390 mW和3.130 mW激光散斑干擾時的跟蹤結(jié)果,如圖3~圖4所示。
圖3 1.390 mW激光散斑干擾時仿真平臺跟蹤結(jié)果Fig.3 The simulation platform tracking result of 1.390 mW laser speckle jamming
從上面1.390 mW激光散斑干擾時的跟蹤結(jié)果來看,跟蹤波門自始至終都能鎖定目標,保持了良好的跟蹤性能。
圖4 3.130 mW激光散斑干擾時仿真平臺跟蹤結(jié)果Fig.4 The simulation platform tracking result of 3.130 mW laser speckle jamming
當激光干擾能量為3.130 mW時,散斑很快就覆蓋視場,到達近飽和狀態(tài),跟蹤波門逐漸偏離目標,出現(xiàn)了較大偏差,但跟蹤波門仍能滯留在目標周圍,可見此時高權(quán)重粒子表現(xiàn)出了強健性。隨著攝像機繼續(xù)轉(zhuǎn)動,散斑干擾逐漸減弱,波門將立即捕獲目標。
由此可見,硬件實現(xiàn)的FBPF跟蹤算法在整個跟蹤誤差測試中表現(xiàn)出了粒子濾波算法的“多峰”特性,使得整個仿真平臺在面對激光散斑干擾時具有一定的抗干擾能力,能夠準確跟蹤目標。
本文介紹了裂變自舉粒子濾波跟蹤算法的硬件實現(xiàn),并提出了優(yōu)化方案。搭建的實驗仿真平臺在激光散斑干擾情況下,能夠充分發(fā)揮粒子濾波跟蹤算法的優(yōu)越性,提高了電視制導技術(shù)的實時性和精確性。相信伴隨著數(shù)字信息處理技術(shù)的發(fā)展,電視制導技術(shù)的抗干擾性能將不斷完善。
[1] 陶小紅,胡以華.電視制導武器激光軟殺傷關(guān)鍵技術(shù)[J].火力與指揮控制,2008,3(33):77-79.
[2] 江和平,李飚,沈振康.基于FPGA實現(xiàn)的自適應(yīng)卡爾曼濾波器的設(shè)計[J].紅外與激光工程,2005,34(1):89-92.
[3] 李國輝,李亞安,林關(guān)成.基于多片DSP的相關(guān)匹配算法的研究與實現(xiàn)[J].彈箭與制導學報,2010,30(1):58-64.
[4] BAR-SHALOM Y,LI X R.Estimation with applications to tracking and navigation[M].New York:John Wiley &Sons,2001:179-192.
[5] 楊德貴,張長城,鄭濤.粒子濾波算法的性能分析與改進[J].電光與控制,2008,15(5):72-75.
[6] 程水英,張劍云.裂變自舉粒子濾波[J].電子學報,2008(3):500-503.
[7] 姚劍敏.粒子濾波跟蹤方法研究[D].長春:中國科學院長春光學精密機械與物理研究所,2004.