《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的運動目標檢測系統設計
基于FPGA的運動目標檢測系統設計
2014年電子技術應用第11期
杜文略1,劉建梁1,沈三民1,劉文怡1,關詠梅2
1.中北大學 儀器科學與動態測試教育部重點實驗室&電子測試技術重點實驗室, 山西 太原030051; 2.北京宇航系統工程研究所,北京100076
摘要: 針對運動目標檢測技術在國防軍工領域的廣泛應用,設計了一種基于FPGA的運動目標檢測系統。利用CCD攝像頭采集帶有運動目標的視頻圖像,并將采集后視頻圖像傳輸給SAA7113H進行解碼,再將解碼后的數字信號供給FPGA實現幀間差分算法以達到運動目標檢測的目的,之后將數據傳輸給SAA7121H芯片進行編碼,并將編碼后的視頻數據在顯示單元中顯示。實驗測試結果表明,該運動目標檢測系統能夠實時地檢測出運動目標,穩定性高,實時性好。
中圖分類號: TN919
文獻標識碼: A
文章編號: 0258-7998(2014)11-0036-03
The design of moving object detection system based on FPGA
Du Wenlue1,Liu Jianliang1,Shen Sanmin1,Liu Wenyi1,Guan Yongmei2
1.Ministry of Education Key Laboratory of Instrumentation Science & Dynamic Measurement & Key Laboratory of Electronic Testing Technology,North University of China, Taiyuan 030051,China;2.Beijing Institute of Astronalltical Systems Engineering,Beijing 100076,China
Abstract: In view of the wide application of moving object detection technique in the field of national defense, a kind of moving object detection system is designed based on FPGA. Video image with a moving target is collected by using CCD camera, and the sampled video image is transmitted to SAA7113H for decoding. Then decoded digital signal is supplied to the FPGA to realize frame difference algorithm to achieve the purpose of moving target detection, the data is transmitted to a SAA7121H chip to encode, and the encoded video data displays in the display unit. The experimental results show that, the moving target detection system can real-time detect moving targets, and it has high stability and good real-time performance.
Key words : moving object detection;computer vision;inter-frame difference;DDR SDRAM

0 引言

  近年來,大規模集成電路的快速發展使其在計算機視覺領域得到了廣泛的應用。而運動目標檢測技術是計算機視覺的重要組成部分,因此吸引了世界各國科學研究者投入到對這一技術的研究[1-2]。

  目前,運動目標檢測最常用的是幀間差分算法、背景差分算法和光流法3種算法。通過比較,本系統采用易于硬件實現、實時性好的幀間差分算法[3-4]。FPGA內含豐富的邏輯資源,加之內嵌著DSP塊,有著出色的計算能力;同時FPGA采用的體系是并行體系且具有流水性的工作方式,可以加快數據流的數據。因此,本設計采用FPGA模塊作為主控制和算法處理單元。

1 系統的總體結構

  整個系統由視頻信號采集單元、控制和算法實現單元、數據緩存單元和視頻信號顯示單元四部分組成,如圖1所示。

001.jpg

  視頻采集單元在FPGA的控制下,對帶有運動目標的模擬視頻進行采集,并轉換為數字視頻信號傳輸到FPGA進一步處理;FPGA主要負責對其他模塊進行功能控制以及對傳入的視頻信號進行灰度化、幀間差分和閾值分割,以實現運動目標的檢測; 數據緩存單元是在FPGA的控制下,完成對視頻圖像數據的緩存,配合FPGA進行圖像處理;視頻信號顯示單元是在FPGA的控制下對處理前后的視頻圖像進行顯示,可以直觀地觀察檢測效果。

2 系統硬件設計

  2.1 視頻信號采集單元

  本系統使用的CCD(Charge Coupled Device)相機輸出PAL制式視頻。而FPGA只能處理數字視頻信號,因此需要將PAL制式信號轉換為標準的數字視頻格式。飛利浦公司研制的SAA7113H是一款功能強大的9位視頻解碼芯片,它可以自動檢測視頻制式,并且可以輸出包含YUV4:2:2在內的不同格式的數字視頻。圖2所示為本系統中視頻解碼模塊的電路圖。

002.jpg

  本設計僅使用4路輸入通道中的1路即可,將SAA7113H解碼后的數字視頻信號傳輸給FPGA進行下一步處理,片選信號CE接高電平時,芯片選通;像素時鐘接口LLC外接27 MHz時鐘信號。

  2.2 視頻圖像緩存單元

  在完成運動目標檢測的過程中,需要至少緩存一幀圖像。為了節省FPGA內部有限的存儲資源,緩存數據量巨大的視頻圖像時,本系統采用外接DDR SDRAM來進行數據緩存。Hynix公司研制的存儲容量為2 M×4 Banks×16 bit的HY57V281620FTP-H型號SDRAM滿足本設計要求。其各引腳功能如表1所示。其中WE#無效時進行讀操作;A0~A11為行列地址選擇信號,當列有效時,使用A0~A8表示列地址,當行有效時,使用A0~A11表示行地址,其中A10還是自動預充的標記[5]。

009.jpg

  2.3 視頻圖像顯示單元

  經過FPGA處理輸出的視頻信號為數字信號,而一般的顯示器只能顯示模擬信號,因此需要將數字視頻信號轉換為模擬視頻信號進行顯示。飛利浦公司的視頻編碼芯片SAA7121H轉換效率高,設計簡單,可以將FPGA處理輸出的YCbCr格式的數字視頻信號編碼成可以直接顯示的PAL制式的模擬視頻信號,本設計采用此芯片完成視頻編碼并進行顯示。其電路如圖3所示。

003.jpg

  MP0~MP7是8個數字視頻數據輸入端口;RCV1、RCV2是行、場同步信號接口;LLC是27 MHz像素時鐘信號接口;SCL、RESET和SDA分別是串行時鐘信號線、復位信號以及雙向串行數據信號線,設計時這3個接口都要外接一個2.2 kΩ的上拉電阻。CVBS是CVBS信號的輸出端口,與顯示屏連接可顯示視頻圖像。

3 系統軟件設計

  3.1 幀間差分算法


004.jpg

  幀間差分算法是對視頻信號中相鄰幀或者多幀圖像中同一位置的像素點進行差分運算。現在以相鄰幀的幀間差分算法為例,其基本流程如圖4所示。設第k-1幀圖像中(x,y)位置處的像素值為fk-1(x,y),第k幀相同位置處的像素值為fk(x,y),先對二者按式(1)進行差分運算得到?駐k(x,y),再將?駐k(x,y)按式(2)進行二值化處理。

  J6B83~EQI67T_5(I_ON4E%F.png

  其中,T為預設“閾值”,可以從0~255中取值,具體大小與實際環境有關。當k(x,y)≥T時,Rk(x,y)=1,此時判斷該像素點為運動區域像素點;當?駐k(x,y)<T時,Rk(x,y)=0,此時判斷該像素點為靜止區域像素點。

  幀間差分算法中兩幀圖像相差的時間短,使得環境中光線變化等不可控因素對設計的影響較小,因此具有良好的抗干擾性,且對動態環境有很強的適應能力。

  3.2 幀間差分算法的實現

  系統開始工作后,FPGA先通過I2C總線對SAA7113H和SAA7121H進行初始化,使視頻采集及視頻顯示單元能夠正常工作。配置流程如圖5所示。

005.jpg

  視頻信號采集單元采集的有效視頻數據分兩路傳輸:一路直接傳輸給視頻信號顯示單元進行顯示,用來與處理后的結果進行對比分析;另一路傳輸給圖像預處理模塊進行灰度化處理,以備后續處理。經過圖像預處理模塊后的視頻數據僅有Y分量;同時需要設置A、B兩個數據通道進行傳輸。當寫信號sd_wr有效,提取的Y分量數據開始寫入SDRAM中,當讀信號sd_rd有效時,同時將A、B兩個數據通道打開;此時A數據通道傳輸的數據是第n+m幀圖像數據的Y分量,而B數據通道的數據卻是第n幀圖像數據的Y分量。A、B兩通道的數據同時傳入“數據做差比較器”中進行差分運算,即能得出視頻中第n+m幀圖像的像素點與第n幀圖像的像素點的差分結果。若差分結果的絕對值大于預先設定的閾值t(t值取25),則判定此像素點發生較大的變化,為運動目標區域的像素點。設計流程如圖6所示[6]。

006.jpg

4 系統試驗結果與分析

  利用幀間差分算法對運動目標檢測后,為完善檢測效果,需要進行“閾值分割”處理,而這個“閾值”需要根據具體實驗測試環境提前設定。選用與最終實驗測試攝像頭采集的視頻環境類似的一段視頻進行軟件仿真,分別選用“閾值”為10、20、25、30、40、50進行仿真分析,結果如圖7所示。

007.jpg

  從圖7中可以看出,當“閾值”小于25時,出現了很多誤判,導致檢測效果不理想;當“閾值”大于25時,雖然干擾像素點減少,但檢測出的運動目標出現了“空洞”,“閾值”越大,“空洞”越大。因此,“閾值”選定為25。

008.jpg

  搭建實驗平臺對系統進行測試,顯示屏顯示的原視頻圖像的其中4幀圖像如8所示;經過硬件電路端處理以后的視頻圖像的其中4幀圖像如圖9所示。

010.jpg

  分析以上實驗結果,不難發現,圖9(a)和圖9(b)所示的檢測結果出現了較多的“空洞”,因為在這兩個時間段,運動中的人經過一輛與背景顏色相近的汽車前面,在檢測時,把運動目標上的部分像素點誤認為是背景圖像,故出現了“空洞”;圖9(c)所示的檢測效果更好,因為這段時間運動目標顏色與所處背景顏色差異較大,在進行幀間差分檢測時,運動目標能更好地從背景中分割出來;圖9(d)所示的檢測結果中,運動中的人臉部位出現了空洞,因為此時人臉膚色與目標所處的背景顏色接近。

5 結論

  本文設計了一種基于FPGA的運動目標檢測系統,以FPGA為控制核心和算法實現單元,加上外圍的采集和顯示電路,可以實時地檢測運動目標并顯示。在軍事公安、工業生產、生物醫學等各個領域都有廣泛的應用前景。

參考文獻

  [1] 郭浩.基于FPGA的運動目標檢測系統設計與實現[D].武漢:武漢理工大學,2013.

  [2] 劉攀.車輛目標檢測和跟蹤技術研究[D].太原:中北大學,2011.

  [3] 王瑾琦.復雜背景下運動目標檢測與跟蹤方法研究[D].太原:中北大學,2012.

  [4] 高美鳳,劉娣.分塊幀差和背景相融合的運動目標檢測[J].計算機應用研究,2013,30(1):299-302.

  [5] 程曉東,鄭為民,唐志敏.基于DDR SDRAM控制器時序分析的模型[J].計算機工程,2005,31(17):182-184.

  [6] 田耘,徐文波.Xilinx FPGA開發實用教程[M].北京:清華大學出版社,2012.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 欧洲三级在线观看 | 五月婷中文字幕 | 欧美黑人性色黄在线视频 | 午夜剧场在线免费观看 | 国产精品久久久久久久9999 | 免费香蕉一区二区在线观看 | 999yy成年在线视频免费看 | 免费二级c片在线观看a | 99视频在线精品免费观看18 | 女性爽爽影院免费观看麻豆 | 一级黄色毛片视频 | 国产成人久久综合热 | 欧美性天天影院欧美狂野 | 久久成人国产精品 | 草草网| 欧美日韩国产欧美 | 色噜噜狠狠狠综合曰曰曰88av | 卡一卡二卡三免费专区2 | 久久国产精品亚洲va麻豆 | 欧美在线精品一区二区在线观看 | 91人前露出精品国产 | 最近中文免费字幕在线播放 | 深夜福利欧美 | 国产精品久久久久9999高清 | 欧美午夜春性猛交xxxx | 无遮挡动漫黄漫网站在线观看 | dy888午夜国产精品不卡 | 看全色黄大色黄大片免责看的 | 欧美一区2区三区3区公司 | 97视频精品全国在线观看 | 丝袜美女网站 | 看免费黄色一级视频 | 亚洲欧美日韩伦中文 | 猫色综合网 | 午夜视频在线播放 | 男女精品视频 | 射综合网 | 国产在线观看xxxx免费 | 国产极品在线观看视频 | 可以看的黑人性较视频 | 久久国产欧美日韩精品免费 |