陶佳麗 丁啟鳳 許強(qiáng) 趙希宇 姜志鵬
摘 要:利用攝像頭獲取監(jiān)控現(xiàn)場視頻信息,以FPGA為核心處理器,實現(xiàn)了一種視頻處理模塊。攝像頭采用了PMOD CAM-0.3M模塊,其傳感器為OV7670,硬件開發(fā)平臺采用了Basys3,片上FPGA采用了Xilinx的Artix7芯片,使用Vivado為開發(fā)軟件,根據(jù)背景差分算法,實現(xiàn)了對現(xiàn)場的實時視頻監(jiān)測。
關(guān)鍵詞:FPGA核心處理器; 視頻監(jiān)測
中圖分類號:TP23? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼:A? ? ? ? ? 文章編號:1006-3315(2020)1-000-001
近年來,隨著VLSI(Very large Scale Integration超大規(guī)模集成電路)技術(shù)的飛速發(fā)展,已能夠在FPGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)芯片中實現(xiàn)復(fù)雜算法,包括各類視頻處理算法。本文介紹了一種基于FPGA的視頻監(jiān)測模塊的實現(xiàn)方法。
一、硬件設(shè)計
本視頻監(jiān)測系統(tǒng)的硬件模塊框圖如圖1所示。
如圖中所示,攝像頭采用的是PMOD CAM 0.3M攝像頭模塊,與FPGA接口時,只提供了8位數(shù)據(jù)線,因此所采集的視頻數(shù)據(jù)應(yīng)分2次傳給FPGA。這種攝像頭模塊的其核心傳感器為OV7670,OV7670的內(nèi)部如圖2所示。
從圖2可以看出,OV7670的時序產(chǎn)生模塊負(fù)責(zé)產(chǎn)生所需的控制信號,能夠控制圖像陣列和幀信號的產(chǎn)生,控制幀率的時序、產(chǎn)生VSYNC、HSYNC和PCLK等外部接口時所需的時序控制信號。模塊處理模塊實現(xiàn)自動增益控制、自動白平衡等級功能,其產(chǎn)生的RGB三色信號,經(jīng)過后續(xù)的模/數(shù)轉(zhuǎn)換模塊ADC轉(zhuǎn)換為所需的數(shù)字信號,其轉(zhuǎn)換速度最高可達(dá)到12MHz[1]。
本次設(shè)計中采用了Basys3開發(fā)平臺,平臺上所用的FPGA芯片為XILINX的Artix7系列,如圖1所示,其具體型號為XC7A35T-1CPG236C[2]。該芯片擁有33,280個邏輯單元,分布于5200個區(qū)域中,每個區(qū)域中還提供了6輸入查找表和8個觸發(fā)器,另外還有,800 Kbits的快速RAM,資源比較豐富,能滿足一般性的小型系統(tǒng)需求。
二、軟件設(shè)計
1.SCCB總線初始化
圖2中右下角的SCCB接口,全稱為Serial Camera Control Bus,屬于一種串行攝像頭控制接口。OV7670采用了2線式SCCB接口,接口的時鐘線和數(shù)據(jù)線分別是SIO_C和SIO_D,只能接收來自FPGA的數(shù)據(jù)。對SCCB接口進(jìn)行配置的仿真結(jié)果如圖3所示。
2.背景差分算法
為了能夠?qū)ΡO(jiān)測現(xiàn)場進(jìn)行自動監(jiān)測,本次設(shè)計采用了較簡便的背景差分法。所謂背景差分法,是指首先存儲一張正常情況下的圖像作為背景數(shù)據(jù),然后在監(jiān)測過程中,將攝像得到的畫面,與背景數(shù)據(jù)進(jìn)行差分運(yùn)算。如果監(jiān)測現(xiàn)場沒有發(fā)生任何顯著變化,則攝像所得到的畫面與背景進(jìn)行差分后大部分像素位置參數(shù)正常。考慮到實際工程中存在著非入侵情況下的攝像現(xiàn)場畫面的細(xì)微變化,因此在設(shè)計時,設(shè)置了門限,當(dāng)差分值異常的像素位置總數(shù)不大于門限時,均認(rèn)為監(jiān)測現(xiàn)場屬于正常情況。
本次設(shè)計進(jìn)行差分計算的部分代碼如下:
always@(posedge clk)
begin
if(rst) outd<=0;
else? ?if (dinA>dinB) odata<=dinA-dinB;
else? ? outd<=dataB-dataA;
end
三、結(jié)論
本文以FPGA為核心控制芯片,將攝像頭所采集的視頻數(shù)據(jù)與背景圖片進(jìn)行差分計算,根據(jù)差分計算的結(jié)果判斷所監(jiān)測現(xiàn)場的情況,充分利用了FPGA芯片強(qiáng)大的可編程功能和豐富的內(nèi)部資源。在其他場合,當(dāng)所需視頻分辨力較高時,可選用分辨率更高的攝像頭,并配以更復(fù)雜的監(jiān)測算法,以達(dá)到更佳的設(shè)計效果。
基金:金陵科技學(xué)院2018年大學(xué)生創(chuàng)新訓(xùn)練計劃項目(201813573095J);江蘇省現(xiàn)代教育技術(shù)研究課題(2016-R-48673)
江蘇省教育科學(xué)“十三五”規(guī)劃2018年度重點(diǎn)資助課題(B-a/2018/01/39)
參考文獻(xiàn):
[1] Patel D,Parmar R, Desai A, et al.Gesture recognition using FPGA and OV7670 camera[C]// International Conference on Inventive Systems & Control.2017
[2]姜志鵬,陳正宇,史金芬.應(yīng)用型工科院校“口袋實驗室”培養(yǎng)模式探索——以電子信息工程專業(yè)為例[J]統(tǒng)計與管理,2015(10)