劉偉寧
(中國科學院長春光學精密機械與物理研究所,吉林長春130033)
基于DSP+FPGA平臺的復雜背景目標檢測與跟蹤
劉偉寧?
(中國科學院長春光學精密機械與物理研究所,吉林長春130033)
研究了圖像匹配算法原理,并分析了不同匹配算法類型。根據灰度特征編碼的原理,給出了編碼流程以及匹配算法FPGA實現,在試驗中進行了FPGA編碼并實現了改進的中值濾波算法和灰度特征編碼匹配算法。在各種背景環境條件下,利用該算法對可見光視頻圖像和紅外圖像的匹配效果進行了試驗,實驗證明,該匹配跟蹤算法容易進行硬件實現,能夠達到提高系統實時性的要求。
目標跟蹤;DSP;復雜背景
景象匹配技術是目前在視頻圖像目標跟蹤中應用的主要跟蹤方法之一,其基本思想是預先設定目標基準圖,一般稱作模板,然后在實時采集的可見光或紅外等視頻圖像中,把基準圖與實時圖進行比較,尋找與預設模板最接近的圖像區域,認為該區域是目標區域,引導設備瞄準該目標或對設備進行方向校準。
景象匹配處理需要處理大量圖像信息數據,因此實時性是衡量景象匹配技術性能的重要指標之一。一般根據實際視頻的工作頻率,也就是25 Hz作為實時性指標,因此圖像處理系統需要在40 ms內完成圖像數據傳輸和圖像計算工作。實時性要求不僅需要圖像處理硬件系統具有良好的體系結構,也要求圖像處理算法不僅能夠準確捕獲、跟蹤目標,具有高可靠性,同時也要求圖像處理算法適應硬件系統的體系結構。
目前,隨著高速信號處理器DSP技術以及FPGA技術的進步,通常的把圖像處理系統做在一塊電路板上,結合DSP和FPGA各自的特點,可以實現高速、大數據量的視頻圖像實時處理,目前文獻上關于這方面有較多介紹[1-2],技術已經比較成熟,但是由于攝像機技術的快速發展,實時獲取的圖像幀頻越來越高、圖像靶面越來越大,而且對于復雜圖像場景的目標跟蹤也提出了更高的要求,迫切需要研究解決超大數據量和高工作幀頻的目標跟蹤實時處理問題,以及復雜背景目標捕獲、跟蹤處理算法的高速實現。
我們根據實際工程應用的需求,設計了基于DSP+FPGA硬件架構的圖像處理系統,并根據復雜目標背景圖像的跟蹤需求,結合圖像處理硬件體系結構特點,提出了新的圖像處理系統設計方法,合理分配DSP和FPGA運算能力,并設計了適合硬件實現的圖像處理算法,對于復雜背景的目標跟蹤處理獲得了較好的跟蹤效果。
根據FPGA的特點以及圖像處理算法的需求,我們設計的圖像處理系統基于DSP+FPGA硬件架構,其中,FPGA除了作為整個圖像處理系統的控制核心外,通過內部可編程邏輯電路對處理板上外圍器件進行管理和圖像數據的采集控制,并且對采集的圖像進行預處理以及一些統計計算。由于圖像預處理過去一般在DSP中實現,用FPGA實現后,可以減輕DSP的運算壓力,也有利于提高圖像處理算法的實時性,整個圖像處理系統的硬件架構如圖1所示。
圖像處理板主要由圖像采集單元、圖像數據控制單元、圖像數據緩存以及圖像計算單元等組成,其中圖像計算單元由DSP芯片完成,負責圖像處理軟件的運行以及與外部系統進行通訊等工作,圖像數據控制單元由FPGA芯片完成,FPGA同時負責圖像數據的預處理工作。由于該圖像處理板希望FPGA能夠完成盡可能多的任務,板上的FPGA采用Xilinx公司開發的高性能FPGA芯片,型號為Virtex2Pro4,該芯片是Virtex2Pro系列中的一款,功能強大,內部資源非常豐富,芯片內部包含有6 700多個邏輯單元和3 000多個CLB,28個18×18 bit的乘法器,1個Power PC處理器,28個18 Kb的Select RAM-II等資源。其中Select RAM-II實質上是位寬32 bit的雙端口RAM,可以用于緩存圖像數據,非常適合視頻圖像處理這類的大數據量數據處理;28個18×18 bit的乘法器也適合進行快速圖像處理。

圖1 圖像處理系統硬件框圖Fig.1 Block diagram of image processing system
圖像處理板的數據流如下,攝像機傳來的Camera Link制式數字圖像數據首先通過解碼芯片進行解碼,然后圖像數據進入FPGA內部, FPGA控制圖像數據的流向,圖像數據可以輸出到板上的SDRAM進行緩存,也可以輸出給模擬視頻編碼芯片ADV7176,用于生成標準模擬視頻信號進行輸出顯示,同時也能夠讓DSP通過DMA操作采集圖像并進行進一步的圖像處理。從電路設計上可以看出,FPGA是電路的核心,也是圖像數據流動的核心,這樣設計有利于充分利用FPGA對圖像進行處理。
FPGA芯片的集成度和性能近年來已經大幅提高,芯片內部也嵌入了如Power PC等CPU核,處理能力大幅提高,通過利用FPGA強大的處理能力,可以將一些簡單算法通過FPGA實現,使算法的計算速度達到硬件的速度水平,提高整個算法的運算速度和性能。
目前很多基本預處理算法已經在FPGA中實現,如Sobel濾波算法、直方圖均衡算法、FFT算法等[3],有學者研究并實現了在FPGA上完成簡化的遺傳算法[4]。
圖像預處理模塊中的中值濾波功能在圖像處理算法中應用較多,一般采用3×3的經典算法,我們在實現上對該函數進行了改進,TI公司的函數庫中,經過該函數處理后的圖像在最左和最右邊分別有一列圖像沒有進行濾波處理,導致后續處理要進行適應性改動,否則可能由于沒有濾波的像素影響計算結果。
原來函數實現如下:

從公式可以看出,由于第0列的左面和最右列的右面沒有像素,因此不能進行濾波計算;而且由于第0行的上面和第Height-1行的下面沒有像素,也不能進行濾波計算。所以使用該算法進行中值濾波計算后,結果圖像矩陣比原有矩陣四面各少一排像素,而且濾波后的圖像在地址空間上不連續。
我們在設計FPGA的中值濾波算法時,對上述算法進行了改進,改進后的算法公式如下:

如公式中所示,如果當前計算的像素是第0列數據,則需要第-1列數據的地方用第0列像素代替,同理,如果當前計算的像素是第Width-1列數據,則需要第Width列數據的地方用第Width-1列像素代替。
在計算時,在緊接圖像矩陣前復制一行圖像數據,內容為第0行圖像數據,在緊接圖像矩陣后復制一行圖像數據,內容為第Width-1行圖像數據,這樣圖像矩陣有Height+2行數據,然后應用改進后的中值濾波算法進行中值濾波運算,結果獲得Width?Height的濾波后數據圖像,并且在地址空間上連續,不影響后續的圖像處理。
提高系統整體性能的途徑有多種,除了改進算法使之運算效率更高以外,還可以針對硬件特點對現有算法進行適應性改進。模板匹配算法在視頻圖像跟蹤系統中應用廣泛,尤其在地圖地形匹配等應用中,其主要優點是在復雜背景下跟蹤效果好,但是其缺點也很明顯,就是數據運算量非常大。在常用的常規模板匹配算法中,如果假定基準圖大小為64×64,實時搜索區大小是256× 256,采用該算法進行全搜索圖像匹配,它的運算量高達3.07×108次加法和3.07×108次乘法。在高速圖像跟蹤系統中,如此巨大的數據運算量完全依靠DSP處理器來進行處理,很難達到系統的實時性要求。因此導致模板匹配算法很難應用在高速實時圖像跟蹤系統中。
根據已有的硬件條件,我們研究了在硬件中實現部分匹配算法,以提高系統跟蹤實時性,主要是針對硬件結構特點對算法進行適應性改進,將特征匹配算法的部分底層計算在FPGA中實現,降低DSP的運算負擔,減少了算法的運算時間。
在算法選擇上采用了下述的基于圖像灰度特征編碼的匹配算法,該算法占用存儲空間少,與傳統像素匹配算法相比,耗用系統處理時間也非常少。
將整幅圖像分成k×k尺寸且互不重疊的圖像塊,稱之為R塊。如果圖像的邊長不是k的整數倍,則將圖像的最底下和最右側的幾行、幾列像素剪掉,對一副M×N的圖像就得到了[M/k]× [N/k]個R塊,如圖2所示。

圖2 R塊的鄰域示意圖Fig.2 Schematic diagram of R block neighbor
與R5相鄰的8個R塊(圖2中R1,R2,R3, R4,R6,R7,R8,R9所示)組成R塊的鄰域。將R塊的鄰域分成四個部分,分別是D 1,D 2,D 3,D 4,稱為R塊的D鄰域,其中:


分別計算每個D鄰域中四個R塊的像素灰度值之和,記為
其中:Q(R)即為Ri的特征編碼。
模板匹配算法實際上就是在實時圖中搜索基準圖中搜索最優匹配點,搜索結果采用適當的度量方法判斷,如序貫相似性檢測算法(SSDA)、歸一化相關算法(NPROD)等,我們采用歸一化相關算法,度量函數公式為:

在確定了算法之后,在圖像處理板的FPGA上進行了編程實現,并設計了相應的完整的基于DSP+FPGA架構的跟蹤算法。
我們完成的圖像處理系統采用實際圖像進行了實驗驗證,圖像來自可見攝像機采集的圖像,采用FPGA完成中值濾波算法和底層圖像匹配處理算法,采用可識別跟蹤目標的直觀檢驗,并且與普通相關匹配算法結果進行目標位置比較。試驗中采用基準圖大小為64 pixel×64 pixel,實時圖為640 pixel×512 pixel的紅外圖像,工作幀頻為100 Hz。圖像處理板上FPGA型號為Virtex2Pro4, DSP數字處理器的型號為TMS320C6416,工作主頻為800 MHz。采用FPGA實現的基于圖像灰度特征編碼的匹配算法與常規相關模板匹配算法均能正常跟蹤目標。

圖3 實時圖(640×512)和模板圖(64×64)Fig.3 Real-time image(640×512)and model image (64×64)
在進行的跟蹤運動汽車試驗中,圖像背景比較復雜,圖像中有樹木、廣告等,如圖3所示。選擇跟蹤運動中的小型汽車,對分別采用常規相關模板匹配算法和本文提出的機遇圖像灰度特征編碼的匹配算法的跟蹤結果進行對比,兩種算法均能夠對目標進行正常跟蹤,本文算法跟蹤與傳統匹配算法相比,不受DSP采集圖像速度影響,可以達到更高跟蹤幀頻。
本文提出的采用FPGA實現基于圖像灰度特征編碼的匹配算法,能夠在采用DSP+FPGA架構的圖像處理板上達到降低DSP運算量、提高圖像處理系統實時性能的結果,在采用DSP+FPGA架構的圖像處理板上,在硬件設計時就需要綜合考慮數據流的需求,硬件設計完成后,如何合理分配DSP和FPGA任務、選擇適當的圖像處理算法非常重要,在本文中,如果需要提高跟蹤精度,可以把FPGA計算的結果作為粗跟蹤結果,在DSP中在粗跟蹤位置附近采用常規匹配算法進行精密跟蹤,能夠取得更好的跟蹤效果。
[1] 楊衛東,張天序,桑農.景象匹配算法在數字信號處理器上的實時實現[J].紅外與激光工程,2001,30(1):21-24.Yang W D,Zhang T X,Sang N.Thereal-time realization of scene matching algorithm on DSP[J].Infrared andLaser Engineering,2001,30(1):21-24.(in Chinese)
[2] 盛磊,徐科軍.基于DSP和FPGA的實時視頻處理平臺的設計與實現[J].中國科學技術大學學報,2006,36(3): 304-309.Sheng L,Xu K J.Thedesign and realization of real-time video processing platform based on DSP and FPGA[J].Journal of University of Science and Technology of China,2006,36(3):304-309.(in Chinese)
[3] 劉亞海.基于FPGA的FFT數字處理器的硬件實現[D].上海:同濟大學,2005 Liu Y H.Thehardware realization of FFT digital processor based on FPGA[D].Shanghai:Tongji University, 2005.(in Chinese)
[4] 吳春英.基于FPGA的遺傳算法硬件化技術的研究[D].南京:南京航空航天大學,2004 Wu C Y.Theresearch on hardware genetic algorithm technology based on FPGA[D].Nanjing:Nanjing University of Aeronautics and Astronautics,2004.(in Chinese)
[5] Torres-Huitzil M.Real-time image processing with a compact FPGA-based architecture[J].Real Time Imaging, 2004,10:177-187.
[6] 高世海,戴文剛,田仲.空域和頻域相結合的景象匹配算法[J].中國圖象圖形學報,2000(4):345-348.Gao S H,Dai W G,Tian Z.The scene matching algorithm in space domain combined with frequency domain[J].Journal of Image and Graphics,2000(4):345-348.(in Chinese)
[7] 尹業宏,王濤,陳穎.基于FPGA的圖像預處理濾波算法[J].光學與光電技術,2004,2(5):61-64.Yin Y H,Wang T,Chen Y.The filter algorithm of image preprocess based on FPGA[J].Optics and Optoelectronic Technology,2004,2(5):61-64.(in Chinese)
(本期制版:于 娜)
Object tracking under complicated background based on DSP+FPGA platform
LIU Wei-ning?
(Changchun Institute of Optics,Fine Mechanics and Physics, Chinese Academy of Sciences,Changchun 130033,China)
The paper studied the principles of image matching algorithms and analyzed the different matching algorithms.By the principle of grayscale features encoding,the improved matching algorithm is presented and is realized by FPGA.The improved mid-value filter and matching algorithm based on grayscale features encoding is realized in the experiments.The matching effect is tested for visual image and infrared image under different background conditions.The experiment results show that the matching algorithm is easy for FPGA design and can enhance the real time performance.
target tracking;DSP;complicated background
TP394.1;TH691.9
A
10.3788/YJYXS20142906.1151
1007-2780(2014)06-1151-05
2014-06-17;
2014-07-20.
?通信聯系人,E-mail:itdili@scut.edu.cn
劉偉寧(1963-),男,吉林長春人,碩士,研究員,主要從事實時圖像處理技術以及目標識別與跟蹤技術的研究。E-mail:liuweininig2003@126.com