楊文龍,賈敏智
(太原理工大學 信息工程學院,太原 030024)
基于自適應PSO粒子濾波的智能跟蹤系統
楊文龍,賈敏智
(太原理工大學 信息工程學院,太原 030024)
目前,通過視頻跟蹤目標的跟蹤系統大多是在PC機上實現的,應用C/C++、VC++等高級程序設計語言,采用軟件方式實現視頻跟蹤算法,由于算法的復雜性和不實用性,跟蹤算法只能仿真實現而不能應用到實際,而PC機體積大、功耗高等特點限制了它在視頻跟蹤中的應用[1]。現有的粒子濾波算法是一種新提出的用于視頻跟蹤的算法,該算法在處理非線性非高斯方面具有優越性,采用帶權重的粒子集來估計后驗分布,一般的粒子濾波算法在目標跟蹤時的持續性有效性存在不足,把粒子群優化算法融入粒子濾波的算法在動態求取最優解時往往使最優解陷入局部最優[2]。針對現有算法的不足,對現有PSO粒子濾波算法進行了改進,提出了一種新的PSO粒子濾波算法,該算法能夠在線調整粒子數,動態尋優,減少運算量,并能準確估計目標的位置狀態。基于此算法設計了智能跟蹤系統,該系統以TMS320F28335(DSP)和FPGA為主要硬件處理視頻圖像數據。TMS320F28335的串行通信對數據處理有一定影響,但FPGA具有可修改性高、功耗低、并行執行等特點,使其能彌補DSP的不足。基于FPGA實現的目標跟蹤器在硬件設計上采用并行和流水線技術,能達到圖像數據處理的速度要求,有效的實現目標跟蹤。
本系統是基于自適應PSO粒子濾波算法的智能跟蹤系統,具有能自動識別目標并對目標進行有效跟蹤的功能。攝像頭模塊采集的圖像數據由FPGA先進行預處理,然后發送到DSP。
TMS320F28335微處理器主要負責視頻圖像數據的分析與處理,根據視頻跟蹤算法識別目標,確定目標位置然后根據目標的位置信息來控制小車移動,跟蹤目標。
系統硬件由DSP數據分析處理模塊,視頻圖像處理轉換模塊,圖像存儲單元,FPGA數字處理模塊,電機驅動部分,觸摸屏顯示模塊,OV7670攝像頭模塊等組成。
系統硬件框圖如圖1所示。

圖1 系統硬件框圖
攝像頭模塊能自動將視頻信號經過模數轉換為8位數字信號輸出,并對視頻信號進行行、場同步分離,驅動地址分離器為采集的圖像分配存儲地址并按順序存入圖像采集存儲器。在擴充外部RAM時選用IS61LV25616AL型號RAM,外部FLASH選用SST39VF800a。LCD顯示屏用來觀察跟蹤目標的狀態。TMS320F28335執行相應的自適應PSO粒子濾波的算法程序進行圖像數據的分析與處理,確定出目標的位置,微處理器再根據目標狀態信息E( xt)來控制電機驅動模塊使小車調整車速和方向實現目標跟蹤。
該部分主要由FPGA來完成。采用在線可編程大容量的FPGA(EP1K100)。FPGA為系統的數字處理單元,具有數字濾波功能,能抑制信號中的干擾,使目標檢測能力提高[3]。FPGA在接收到攝像頭模塊輸出的視頻信號后對其進行預處理,再將處理后的數字圖像信息存放在圖像存儲器中。
本單元主要由TMS320F28335、圖像存儲器組成。對目標的圖像信息進行處理,分析控制中心的命令并實時進行去噪處理、背景分離、目標提取、粒子濾波獲取每幀的圖像信息 ( x0,y0,r0),輸出目標在視頻圖像中的大小和位置數據[4]。每幀圖片為320×240大小。 DSP通過FPGA配置OV7670模塊,使其直接輸出8位數據,以此來減輕DSP處理圖像信息的負荷。
系統的主控制程序控制著系統的有序運行。系統在上電或者復位后,進行初始化,初始化后進入自動跟蹤程序,主程序首先調用圖像接收程序,再調用自適應PSO粒子濾波目標跟蹤算法程序,然后調用圖像分析和處理程序來確定目標,進而獲得目標位置信息 ( x0,y0,r0),利用PWM調速模塊驅動電機控制小車移動并追蹤目標。系統的主控制流程圖如圖2所示。
攝像頭模塊OV7670的VSYNC、HREF、PCLK各引腳信號由FPGA讀取,并將其狀態存儲在一個8bit數據變量SIGA中供DSP讀取,DSP根據讀取的SIGA狀態和攝像頭模塊輸出的圖像信息時序圖來采集圖像數據,根據PSO自適應粒子濾波算法來處理圖像信息,進而確定出目標現在狀態E( xt)。圖像獲取流程圖如圖3所示。

圖2 系統主控制流程圖

圖3 圖像獲取流程圖
自適應PSO粒子濾波算法相對于傳統的卡爾曼濾波、Mean—Shift算法等有很高的精度,能夠有效解決遮擋、光照和背景變化等目標跟蹤時出現的問題。傳統的粒子濾波算法因為粒子數目多,所以運算復雜,濾波時間長,使得系統的實時跟蹤性差。改進的自適應PSO粒子濾波算法是一種可以動態改變粒子數的算法,能根據各個時刻實際跟蹤情況 ,在保證一定性能的前提下,自動擇優改變粒子數目,可以有效的降低參與運算的粒子數目,從而使濾波時間性能和實時性提高。本算法對行人進行人體骨架模型簡化,用三角特征來描述目標,再通過粒子濾波估計目標位置。
在檢測識別人體時選擇了人體骨架模型作為目標檢測的特征值,以簡單的人體模型的肢體作為局部坐標,各個主要肢節為關節點,用一組線段來連接各個關節點。圖4所示為人體骨架模型[5]。

圖4 人體骨架模型圖

圖5 人體抽象模型
人體用三元組X=(x,y,r)來表示,x,y,r分別表示人的圖像在幀中的坐標位置和大小,跟蹤就是在視頻幀中確定出目標的X=(x,y,r)。
常見的行人行走姿勢如圖5所示,傳統的行人檢測是采用矩形特征來描述,這種方法效率低,檢測范圍具有局限性。由人的行走姿勢圖可知人的各個部位都廣泛的存在著傾斜,這種不同程度的傾斜從各個角度都能觀測到。為此,采用三角特征來代替矩形特征更符合人的行走姿態,三角特征能改善矩形特征的局限性,可以從各個部位來檢測行人,也更符合行人特征,減少了所需的特征數目,降低了誤差率,提高了目標檢測準確率[6]。
本文在Rainer Lienhart矩形特征值計算方法基礎上,采用一種極限思想,逐級逼近計算三角特征特征值[6],如圖6所示。

圖6 三角特征計算示意圖
計算三角特征的特征值S為:

本文采用的PSO粒子濾波算法是一種自適應的算法,該跟蹤算法描述如下[2,5]。



3)計算有效性樣本容量Neff。如果Neff

5)重采樣。
繼續跟蹤則轉入2)。
采用中值濾波法來消除原始圖像噪聲,將所求點(i,j)像素周圍的9個像素值進行排列并求取中值,該中值既為所求點(i,j)像素值。在去噪處理過程中該方法可使目標邊緣信息很好的保留[7]。

為降低環境對目標提取過程中的干擾,分離目標圖像和其當前背景,并二值化處理目標圖像。

在此基礎上通過腐蝕處理目標圖像來進一步減小環境噪聲干擾。用5×5的結構元素對獲得的當前目標圖像的每個像素點進行掃描,用該結構元素和其覆蓋下的二值化的目標圖像進行邏輯“與”運算,結果為1,則圖像像素值為1,否則為0[8]。經過以上處理能進一步優化消噪效果,準確標記目標。
圖像在經過上述預處理后標記出目標所在的位置,再通過加權平均法獲得目標在當前圖像中的位置坐標信息,算法如下:

其中(X,Y)為目標所在圖像中的位置坐標。

D為當前圖像進行二值化后最終的所有像素值之和,即D為跟蹤目標占當前圖像面積的大小,由透視原理可知遠近不同物體大小也不同,所以可根據D值來通過相應算法計算出目標和小車之間的距離,進而決定小車是否前進和前進的距離。
在實驗室環境下,取視頻幀中的兩幀為例進行說明。如圖7所示,圖7(a)為從目標背后采集的圖像,圖7(b)為從目標側面采集的圖像。不論是從后面還是側面,采集的是人體的哪個部位,該跟蹤系統都能準確識別目標,并進行跟蹤。經試驗測試,小車能識別跟蹤人的最遠距離為3m,小車的最快速度為2m/s,在此基礎上小車能很好的跟蹤行人。

圖7 目標跟蹤測試結果
在算法上采用改進的自適應PSO粒子濾波算法,減小了運算量,結合中值濾波,背景差分,腐蝕處理等數字圖像處理技術,成功的提取了目標位置。硬件上通過FPGA處理攝像頭輸出的圖像信息,這樣不僅實現了電平轉化,還減輕了DSP獲取圖像的負擔。該跟蹤系統完成了算法與硬件的結合,實現了智能跟蹤功能,穩定性良好。由于現有條件有限,該跟蹤系統的目標識別距離有限,復雜環境下的跟蹤情況還有待改進。
[1]王愛俠,李晶皎,陸振林,等.基于FPGA的粒子濾波跟蹤系統的設計與實現[J].小型微型計算機系統,2013,34(3):580-584.
[2]姚海濤,朱福喜,陳海強.一種自適應的PSO粒子濾波人臉視頻跟蹤方法[J].武漢大學學報(自然科學版),2012,37(4):492-495.
[3]干戈.基于DSP+FPGA的雙通道實時圖像處理系統設計[J].艦船電子工程,2008,28(7):75-78.
[4]劉陵順.TMS320F28335 DSP原理及開發編程[M].北京:北京航空航天大學出版社,2011.
[5]丁婕,汪亞明,鄭俊褒.自適應粒子濾波在人體跟蹤過程中的應用[J].工業控制計算機,2010,23(11):59-60,63.
[6]趙春暉,潘泉,梁彥等.視頻圖像運動目標分析[M].北京:國防工業出版社,2011.
[7]孫興華,郭麗.數字圖像處理[M].北京:機械工業出版社,2012.
[8]許甲海,王立東,盧曉文.基于TMS320F2812的圖像識別智能跟蹤小車[DB/OL].(2012-8-4)[2013-10-21]http://wenku.baidu.com/view/b68a5736b90d6c85ec3ac6a7.html.
Intelligent tracking system based on adaptive PSO particle filter
YANG Wen-long,JIA Min-zhi
為解決現有跟蹤算法的復雜性和不實用性等問題,提出了一種新的自適應PSO粒子濾波算法。該算法能動態調整粒子數,根據三角特征提取目標信息,準確估計目標狀態位置。在此算法基礎上設計了智能跟蹤系統,該系統以DSP為視頻圖像處理的核心,由FPGA預處理視頻圖像數據,實現了對目標的識別與跟蹤。
自適應PSO粒子濾波;圖像處理;DSP;實時跟蹤
楊文龍(1988 -),男,河北石家莊人,碩士研究生,研究方向為智能控制理論與應用。
TP391.4
A
1009-0134(2014)06(上)-0011-04
10.3969/j.issn.1009-0134.2014.06(上).03
2014-01-09