《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 監(jiān)控系統(tǒng)中多路視頻的合成方法
監(jiān)控系統(tǒng)中多路視頻的合成方法
2014年微型機與應(yīng)用第12期
李廣輝1,, 朱俊株2,, 何 洋1
1. 中國科學(xué)技術(shù)大學(xué) 電子科學(xué)與技術(shù)系 集成電路實驗室2. 中國科學(xué)技術(shù)大學(xué) 信息科學(xué)實驗中心,, 安徽 合肥
摘要: 為了滿足家庭和公共安全的需要,,監(jiān)控系統(tǒng)越來越多地出現(xiàn)在日常生活中。采用多個攝像頭進行監(jiān)控可以有效地監(jiān)視各個方位,,多路視頻合成一路既方便觀察又可以有效地減少數(shù)據(jù)存儲量,。而采用視頻壓縮芯片可以進一步降低視頻數(shù)據(jù)的存儲量,壓縮后的視頻存儲后可以便于使用PC進行查詢,。
Abstract:
Key words :

  摘   要: 給出一種使用FPGA和ARM實現(xiàn)4路視頻采集存儲功能的嵌入式系統(tǒng)設(shè)計方法,,介紹了FPGA控制視頻AD芯片TVP5154對模擬視頻進行數(shù)字轉(zhuǎn)換,、多路ITU656格式的視頻數(shù)據(jù)的抽取方

  法,、視頻數(shù)據(jù)的乒乓存儲以及合成后的視頻數(shù)據(jù)的重組發(fā)送。

  關(guān)鍵詞: 嵌入式系統(tǒng),; TVP5154,; 視頻合成; 乒乓存儲

  為了滿足家庭和公共安全的需要,,監(jiān)控系統(tǒng)越來越多地出現(xiàn)在日常生活中,。采用多個攝像頭進行監(jiān)控可以有效地監(jiān)視各個方位,多路視頻合成一路既方便觀察又可以有效地減少數(shù)據(jù)存儲量,。而采用視頻壓縮芯片可以進一步降低視頻數(shù)據(jù)的存儲量,,壓縮后的視頻存儲后可以便于使用PC進行查詢。

  1 系統(tǒng)組成及工作原理

  視頻AD芯片TVP5154將PAL制式模擬視頻轉(zhuǎn)換成ITU656格式[1]的數(shù)字視頻,, FPGA對ITU656格式的碼流進行采集抽取并將4路視頻合成1路,,合成后的視頻分成兩路:一路由視頻DA芯片SAA7121進行D/A轉(zhuǎn)換,,發(fā)送到LCD顯示器上進行視頻實時顯示;另一路進入ARM9模塊,,由音視頻編解碼芯片VW2010進行視頻壓縮,,將ITU656碼流壓縮成MPEG-4格式,建立文件系統(tǒng)進行視頻存儲,。圖1為系統(tǒng)的硬件結(jié)構(gòu)圖,。

001.jpg

  考慮系統(tǒng)功耗、體積,、成本和資源等因素,,采用Xilinx公司Spartan 3E系列中的XC3S1200E芯片。TVP5154芯片[2]支持4通道 NTSC/PAL/SECAM制式的模擬視頻轉(zhuǎn)換成4通道的8位ITU-RBT.656格式的數(shù)字視頻,。本文介紹FPGA抽取4路ITU656格式視頻數(shù)據(jù),,利用乒乓緩存將其有效數(shù)據(jù)合成1路[3],并重新組成ITU656碼流進行發(fā)送,。

  2 功能實現(xiàn)

  2.1 ITU656碼流的抽取

  ITU656標準的數(shù)字視頻1 s有25幀(50場)圖像,,每幀圖像分為偶場和奇場。每幀圖像有625行,,864列,。行數(shù)據(jù)分為有效行(576行)和消隱行(49行)兩種。有效行分為偶場有效行(288行)和奇場有效行(288行),。圖2是一幀圖像數(shù)據(jù),,圖中表明了偶場有效行、奇場有效行和消隱行,。

002.jpg

  系統(tǒng)中使用4路攝像頭,,合成1路時每路視頻只保留原來視頻數(shù)據(jù)的1/4。依據(jù)ITU656標準的特點,,每幀數(shù)據(jù)舍棄一場,。

  TVP5154的輸出[4]有兩種輸出方式,一種是將基準信號(EAV和SAV)作為嵌入式控制字嵌入到視頻碼流中,,并有1路時鐘信號CLK輸出,,頻率為27 MHz;另一種由芯片的獨立引腳輸出,,有3路同步信號FID/GLCO,、HSYNC、VSYNC/PALI,,分別配置為場,、水平、豎直同步信號,,并有1路時鐘信號CLK輸出,,頻率為27 MHz,。

  系統(tǒng)中采用的是從數(shù)據(jù)端口接收內(nèi)含嵌入式基準信號(即EAV和SAV)的ITU656標準視頻數(shù)據(jù)。EAV與SAV的詳細定義如表1所示,。

006.jpg

  通過檢測基準信號,,可以區(qū)別當前行屬于奇場(Odd)還是偶場(Even),是消隱行(Blank)還是有效行(Active),。依據(jù)ITU656標準,,消隱行數(shù)據(jù)除了基準信號,其余均用0X8010進行填充即可,。

003.jpg

  圖3是有效行數(shù)據(jù)構(gòu)成,。每行有1 728 B,其中720個像素點占用了1 440 B,,為有效數(shù)據(jù)(Valid data),。另有280 B為行消隱數(shù)據(jù)(blanking,用0X8010進行填充),剩下8 B是基準信號,分為有效數(shù)據(jù)結(jié)束的基準信號(EAV)4 B和有效數(shù)據(jù)開始的基準信號(SAV)4 B,。所要抽取的就是ITU656碼流的有效行的有效數(shù)據(jù),。

  ITU656標準中像素采用YUV422格式表示。每個像素點都采集亮度信息,,但是色差信息則隔一個像素點采集一種,。這樣兩個相鄰像素點共有兩個亮度信息、兩個色差信息,,按照每個信息8 bit計算,,則兩個像素點共4 B,平均每個像素點2 B,。ITU656格式中有效行中有效數(shù)據(jù)排列順序如圖4所示,。

004.jpg

  因為相鄰的兩個像素點共用一組色差信息,所以每個場有效行的有效數(shù)據(jù)區(qū)域采用每隔兩個像素點抽取2個像素點的策略,。通過每幀只留一場和每個有效行只取一半像素,,每路視頻實際得到的是其1/4的數(shù)據(jù),將4路視頻按一定規(guī)則存儲到SRAM中就得到了一幀完整YUV422格式的圖像,。

  2.2 4路視頻合成

  ITU656標準的一幀圖像分為625×864,,其中有效像素為576×720,,每個像素點為2 B,,每行有720個像素點,即1 440 B,。不經(jīng)過壓縮的每幅圖像為810 KB,。

  系統(tǒng)中選取兩塊的容量為2 M×8 B的SRAM芯片CY7C1069AV33,它有21根地址線,,其中行地址線10根,,列地址線11根,。一列可以存儲2 048 B。

  以ITU656標準中一幀圖像的頂場(即F同步信號為0)為偶場,。4路視頻中1,、2兩路只采集偶場數(shù)據(jù),3,、4兩路只采集奇場數(shù)據(jù),,F(xiàn)PGA通過檢測ITU656碼流的基準信號來判斷當前處于哪一場。ITU656標準所用的時鐘為27 MHz,,1 s有25幀(50場)圖像,每場所用時間為20 ms,,每個場有效行的有效數(shù)據(jù)區(qū)域采用每隔兩個像素點抽取2個像素點,1個像素點用2 B數(shù)據(jù)表示,,這樣采樣間隔為4/27 MHz=148 ns,。每路每隔148 ns進行一次抽取,得到的4 B存儲到SRAM中,, SRAM芯片讀寫周期為12 ns,,寫入所用時間為12 ns×4=48 ns,時間上條件滿足,。1,、2路數(shù)據(jù)要分開抽取寫入,前一個148 ns抽取第1路視頻數(shù)據(jù)并寫入到SRAM,,后一個148 ns第2路視頻數(shù)據(jù)被抽取并寫入SRAM中,,這樣做是為了合理利用SRAM的地址和數(shù)據(jù)總線,防止寫入沖突,。奇場有效行基準信號被檢測到之后,,進行3、4路數(shù)據(jù)的抽取存儲,,依次循環(huán),。采用如圖5所示的規(guī)則。

005.jpg

  在1,、2路偶場有效數(shù)據(jù)抽取完和3,、4路奇場有效數(shù)據(jù)抽取完成后都存在一段時間的空白期??梢栽谶@段時間對SRAM中存入的數(shù)據(jù)進行處理,。系統(tǒng)在這段時間為視頻數(shù)據(jù)添加時間水印,從ROM中取出子模取代要寫入位置的視頻數(shù)據(jù),。

  依據(jù)TVP5154芯片手冊,,輸出的4路ITU656碼流使用的是同一個時鐘,4路數(shù)據(jù)同步輸出,。1,、2路偶場和3,、4路奇場視頻數(shù)據(jù)完全寫入第1塊SRAM之后,F(xiàn)PGA切換到第2塊SRAM繼續(xù)抽取視頻數(shù)據(jù)并寫入,,第1塊SRAM中的數(shù)據(jù)則準備重組發(fā)送,。

  2.3 有效數(shù)據(jù)的重組發(fā)送

  TVP5154發(fā)送的ITU656格式碼流的時鐘頻率是27 MHz,合成后的有效數(shù)據(jù)需要按照ITU656格式發(fā)送出去,,每40 ms完成一幀圖像的發(fā)送[5],。在第1塊SRAM數(shù)據(jù)寫入完畢、第2塊SRAM開始寫入數(shù)據(jù)之前的這段時間,第1塊SRAM中的數(shù)據(jù)需要被讀取并發(fā)送出去,。

  合成后視頻數(shù)據(jù)的發(fā)送可以采用兩種方式,,與TVP5154類似,一種以帶基準信號的嵌入式控制字形式,,另一種以帶場,、水平、豎直同步信號的方式發(fā)出,。系統(tǒng)中的視頻DA芯片SAA7121,、音視頻編解碼芯片VW2010都接收合成后的ITU656格式碼流,其中VW2010只支持帶基準信號的ITU656碼流,。所以系統(tǒng)中采用帶基準信號的ITU656碼流發(fā)送合成后的視頻數(shù)據(jù),。

  系統(tǒng)中發(fā)送模塊以27 MHz的頻率讀取SRAM中的數(shù)據(jù)。讀取時要隔行讀取,,先讀出偶場有效數(shù)據(jù),,再讀奇場有效數(shù)據(jù)。依據(jù)ITU656標準,,讀取SRAM之前先發(fā)22行偶場消隱行,, 再從SRAM中讀取288行偶場有效數(shù)據(jù)加上基準信號和消隱數(shù)據(jù)發(fā)送出去,然后再發(fā)2行偶場消隱行,;接著發(fā)出23行奇場消隱行,,再從SRAM中讀出288行奇場有效數(shù)據(jù)加上基準信號和消隱數(shù)據(jù)發(fā)送出去,然后再發(fā)2行奇場消隱行,。至此完成一幀圖像的發(fā)送,。重復(fù)此過程讀取第二塊SRAM中的數(shù)據(jù)并發(fā)送出去,依次循環(huán),。

  偶場消隱行,、奇場消隱行、偶場有效行基準信號和消隱數(shù)據(jù)以及奇場有效行基準信號和消隱數(shù)據(jù)提前存儲在ROM中,。

  本文介紹了一個使用FPGA和ARM設(shè)計的4路視頻采集存儲系統(tǒng),。該系統(tǒng)可以接收4路模擬攝像頭的數(shù)據(jù),合成1路后在LCD顯示器上顯示,,并可以存儲合成后的視頻,,可應(yīng)用于家庭和公共環(huán)境的監(jiān)控。系統(tǒng)的體積小,,功耗低,,可便攜地使用。系統(tǒng)外圍諸多外設(shè)可用于系統(tǒng)測試和功能拓展,。

  參考文獻

  [1] ITU. Recommendation BT.656-5[EB/OL].(2007-12)[2014-02].http://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.656-5-200712-I!!PDF-E.pdf.

  [2] 吳厚航.深入淺出玩轉(zhuǎn)FPGA(第1版)[M].北京:北京航空航天大學(xué)出版社,,2010.

  [3] 蔡青青,龔立群,黃益新.基于FPGA的視頻監(jiān)控系統(tǒng)[J].微型機與應(yīng)用, 2012,31(4):37-39.

  [4] 韓峰,袁安民,,趙穎輝.基于FPGA+ARM的多路視頻采集系統(tǒng)設(shè)計[J].火力與指揮控制,,2010,35(6):86-93.

  [5] 孫紅亮,,唐艷發(fā),,梁春鋒,等. 基于FPGA+ARM的高速計算機屏幕信息記錄系統(tǒng)[J].電子技術(shù)應(yīng)用,,2011,,37(6):35-40.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。