999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的視頻圖像采集與顯示系統設計

2013-09-08 10:18:18周云飛胡永兵
計算機工程與設計 2013年6期
關鍵詞:信號系統

楊 欽,周云飛,胡永兵

(華中科技大學 機械科學與工程學院,湖北 武漢430074)

0 引 言

現場可編程邏輯門陣列FPGA具有容量大,編程靈活,并行處理能力強的特點。在視頻信號的實時處理場合,由于圖像數據的吞吐量大,處理運算量大,同時實時性要求高,因此FPGA強大的并行處理能力在數字視頻的實時處理方面得到廣泛應用[1-6]。

本文設計了一種采用Altera公司的FPGA芯片EP2C35F672C6N作為主控芯片、ADI生產的ADV7403作為解碼芯片、SDRAM作為圖像數據緩沖區、ADV7123作為編碼芯片的實時視頻采集與顯示系統。其中,FPGA用于配置視頻解碼芯片,解析視頻數據,預處理視頻數據,控制SDRAM的工作時序、色度空間轉換以及VGA顯示;ADV7403用于對模擬攝像頭數據進行A/D轉換;SDRAM用于視頻數據的實時存儲;ADV7123用于將RGB分量轉換成00.714V的模擬信號。

1 視頻采集方案整體框架

圖1為本系統的整體結構框圖,主要分為以下幾個部分:

(1)視頻采集部分:將攝像頭采集到的模擬視頻數據CVBS轉換成數字視頻格式YUV4∶2∶2,包括I2C總線配置,ITU656解碼。

(2)視頻處理部分:為適應VGA的不同顯示,對視頻數據做相應預處理,包括彩色VGA數據處理,灰度VGA數據處理,Sobel邊沿檢測數據處理,Prewitt邊沿檢測數據處理。

(3)視頻存儲部分:將視頻數據儲存在容量為4M×16×4Banks的SDRAM中,主要包括SDRAM控制器設計。

(4)VGA顯示部分:將實時的視頻數據在顯示器上顯示出來。包括色度空間轉換,VGA時序產生,ADV7123視頻數據編碼。

圖1 采集與顯示系統總體結構

2 視頻解碼芯片的工作配置

本文選取的視頻解碼芯片ADV7403是一款高質量、單芯片、多格式視頻解碼器和圖形數字化儀。這款多格式解碼器支持將復合視頻CVBS或S視頻形式的PAL、NTSC和SECAM標準信號轉換為數字ITU-R BT.656格式。它還支持將RGB/YPrPb分量視頻信號解碼為數字YCrCb或RGB像素輸出流。支持的分量視頻包括525i、625i、525p、1080i、1250i等標準,以及許多其它高清和SMPTE標準。該芯片的數字輸出位數可配置為12位或10位或8位,視頻輸出格式為ITU-R BT.656YCrCb4:2:2格式,同時該芯片還提供一些輔助信號,包括水平同步信號TD_HS,垂直同步信號TD_VS,場同步信號TD_FIELD和像素時鐘LLC等信號。

為適應特定模式的需要,需要對ADV7403進行寄存器配置,配置采用I2C總線的方式。I2C由兩根信號線組成,雙向串行數據線和單向時鐘線。I2C總線傳輸的協議如圖2所示。

圖2 I2 C總線配置時序

其中,第一個17表示設備地址,第二個17表示該設備的寄存器地址,第三個17和數據位8表示此次傳輸的數據。本系統采用的解碼芯片ADV7403擁有兩個獨立的I2C控制線接口,Control Port與 VBI Port。Control Port用于設置內部寄存器,VBI Port用于俘獲內部數據。每個接口都有兩個地址,一個讀地址,一個寫地址。根據解碼芯片的ALSB引腳電平高低和I2C的讀寫控制位,一共4種組合 (見表1),可對內部寄存器實現不同操作。

表1 ADV7403的I2C讀寫地址

由于本文只需要對視頻解碼芯片進行配置操作,即寫操作,因此設備地址選用0x42。同時I2C控制器只需要實現寫部分即可。實現一個寄存器配置需要一次傳輸24位數據LUT_DATA [23∶0],其中LUT_DATA [23∶16]為尋址的設備地址,LUT_DATA [15∶8]為該設備的寄存器地址,LUT_DATA [7∶0]為該寄存器的配置數據。由于I2C總線每傳輸8位數據后,需要從設備發回一個應答數據,因此配置一個寄存器至少需要27個時鐘周期。本文采用的方式為,控制器采用33個時鐘周期完成一次數據傳輸,前3個周期用于初始化控制器并啟動傳輸,接著

27個周期傳輸有效數據 (24位數據和3個應答位),最后3個周期停止傳輸[1]。周期計數用6位計數器I2C_CNT實現。

配置數據存儲在一個查找表中,每次配置完畢之后從中再選出新的數據進行傳輸。如此循環,直到35個寄存器數據配置完畢。本系統串行時鐘頻率選為20KHz,由系統主時鐘50MHz分頻而來。

3 ITU-R BT.656解碼

視頻解碼芯片依照選定的工作模式將攝像頭采集到的模擬視頻數據進行相應解碼轉換,最后輸出8位的YUV4∶2∶2數據流。本系統選用的CCD攝像頭輸出的是PAL制式的CVBS信號,PAL制式全名為逐行倒相正交平衡制,該制式圖像一幀有625行,每秒掃描25幀,每行數據由1728個數據塊組成,每個數據塊可以是8位,也可以是10位,前者一般用于演播室內,后者用于傳輸。其中,PAL制式23310行是奇數場視頻數據,336623是偶數場視頻數據,其余為輔助數據和基準數據。

ITU-R BT.601建議規定,PAL制式的演播室數字編碼的主要參數為,全行的采樣點數為:亮度信號Y為864,色差信號Cr為432,Cb為432;有效行的采樣點數為:亮度信號為720,每個色差信號 (Cr,Cb)各為360,抽樣結構為正交結構;亮度信號的抽樣頻率為13.5MHz,每個色差信號的抽樣頻率為6.75MHz。因此,視頻數據字的亮度信號Y,色差信號Cr和色差信號Cb的字速率分別為13.5MW/s和6.75MW/s。在有效行內時分復用后輸出的串行字 (像素)速率為27MW/s,順序為Cb1,Y1,Cr1,Y2,Cb2,Y3,…,一共傳輸了720個亮度數據和360個色差數據,之后就進入行消隱期。每行的數據結構如圖3所示[2]。

圖3 ITU656每行的數據結構

行消隱期內一共占用288個字節,開始4字節為有效視頻結束信號EAV,接著280個固定填充數據,最后4字節為有效視頻開始信號SAV。SAV之后緊接著就是有效行視頻數據。因此,SAV和EAV將有效數據和消隱數據明確的區分開。作為基準信號,SAV和EAV有著相同的前導符:FF、00、00,第四個字節XY則用于表示該行在這一幀數據中的位置信息和區分SAV、EAV,其結構見表2。

表2 XY各位定義

其中,F=0表示奇數場,F=1表示偶數場;V=0表示場正程,V=1表示場消隱期;H=0表示SAV,H=1表示EAV,而P3、P2、P1、P0為校驗碼保護位[3-4]。

因此,在提取視頻數據時,需要先檢測到FF0000,然后從XY中提取出F、V、H,再根據這些標志位的0、1狀態,判斷目前數據是EAV還是SAV,如果是SAV,則下個數據便是有效視頻數據,開始提取Y、Cb、Cr,同時有效視頻行計數器L_cnt啟動,加1計數,判定目前數據是亮度還是色度,由于SDRAM為16位,視頻數據為8位,故需要將數據組裝成16位,送往預處理模塊進行處理;如果是EAV,則進入消隱期。

PAL制式的有效視頻數據為720×576像素,本文采集的圖像要通過分辨率為640×480的VGA進行實時顯示,故每行需要截掉80個像素,每幀需要截掉96行。為保證圖像的清晰,系統選用的截斷辦法是:將每行的邊沿數據(開始40個像素,結尾40個像素)進行截斷,每幀的邊沿行數據 (奇數場的起、始各24行,偶數場的起、始各24行)進行截斷,使圖像的中間部分得到良好的顯示。因此,當80<L_cnt<1280時,提取的數據作為VGA顯示的行有效數據。

4 視頻數據處理

為實現VGA的不同顯示,需要對采集到的視頻數據進行預處理。系統采用的VGA顯示包括4種:RGB彩色顯示,灰度顯示,Sobel邊沿檢測圖像顯示,Prewitt邊沿檢測圖像顯示。相應的處理方式有4種:RGB處理,灰度處理,Sobel邊沿檢測處理,Prewitt邊沿檢測處理。VGA的顯示模式由外部顯示開關進行選擇。

(1)RGB處理:系統采用的SDRAM是16位的,而視頻數據亮度和色度是8位的,故需要對數據進行組裝處理,為提取方便,本文選取準則為:高8位為亮度數據,低8位為色度數據,即視頻數據流組裝為 (Y1,Cb1), (Y2,Cr1),(Y3,Cb2),…。相應代碼表示如下:

(2)灰度處理:灰度數據即亮度數據,因此可以直接舍棄掉色度數據,直接取亮度數據。準則為:當Lin_cnt

[0]為1時,將TD_DATA直接賦值給YCbCr。

(3)邊沿檢測處理:邊沿定義為圖像中灰度發生急劇變化的區域邊界。圖像灰度的變化情況可以用圖像灰度分布的梯度來反映,常用的邊沿檢測算子有Sobel算子,Prewitt算子,拉普拉斯算子[5-10]。本系統選用的是Sobel算子和Prewitt算子。兩種算子的模版如圖4所示。

兩種算子都是對圖像數據的連續三行進行處理,因此在讀SDRAM數據的時候,需要連續讀取兩行數據,并暫存起來,具體的實現步驟如圖5所示。

FIFO1和FIFO2的長度為VGA顯示的一行數據個數,即640。通過模板計算出相應的水平梯度和垂直梯度,二者相加之和再和一定的閾值進行比較,若大于閾值,則輸出白電平;否則輸出黑電平。

5 SDRAM幀緩存設計

ITU656解碼后得到的YUV4∶2∶2數據,經過預處理模塊后,原來的8位數據組裝成16位,送入SDRAM進行存儲。PAL制式的圖像一幀有效數據為720×576,每行去掉80個像素后,為640×576,存入SDRAM的0 640×575的地址空間中。

SDRAM的時鐘頻率為100MHz,往SDRAM寫視頻數據的同時,需要從SDRAM讀出數據供VGA顯示。本系統設計了4個端口,兩個讀端口,兩個寫端口。兩個寫端口負責將寫FIFO中的數據寫進SDRAM,兩個讀端口負責將從SDRAM中讀出的數據寫進讀FIFO。對于寫端口,系統采用解碼芯片給出的像素時鐘27MHz,對于讀端口,為了與VGA同步,選用VGA時鐘25MHz。為平衡不同時鐘域的速度要求,4個端口各控制一個長度為512的數據暫存FIFO。在采集系統中,SDRAM的讀寫均采用全頁突發模式,一次可以讀寫512個數據 (列地址為9位),由于PAL一行有效像素為720個,截斷80個后 ,剩下640個,為存儲方便,系統采取一次讀寫128個數據的方式,一行數據存取完畢總共需要5次突發讀寫。在突發讀寫的時候,設計了一個計數器,記錄當前突發傳輸的個數。當讀寫了128個數據后就發出突發停止命令,中止當前突發傳輸,同時突發起始地址增加128,并進行下一次突發傳輸[11,12]。

PAL制式圖像采用逐行掃描的方式,將一幀圖像分為兩場掃描和傳輸。奇數場掃描一幀的奇數行,共312行,偶數場掃描一幀的偶數行,共313行。SDRAM先存儲奇數場數據,再存儲偶數場數據。除去截斷的有效行內80個像素值,兩場數據的有效像素均為640×288,對應SDRAM的地址空間范圍為,奇數場為0640×287,偶數場為640×288640×575。截去列的首尾96行,VGA顯示的數據地址空間范圍為640×24640×263和640×312 640×551。

6 YCbCr2RGB色度空間轉換

如果外部開關選擇RGB彩色顯示,則需要將視頻解碼芯片輸出的YUV4∶2∶2數據轉換成RGB三色分量。操作步驟包括YUV4∶2∶2到YUV4∶4∶4轉換,YUV4∶4∶4到RGB的轉換。

YUV4∶2∶2轉換到YUV4∶4∶4,使每一個像素點都包含完整的Y,Cb,Cr。然后進行色度空間轉換,將YUV4∶4∶4的數據轉換成ADV7123可接受的10位RGB信號,轉換公式如下

上式公式涉及到浮點運算,FPGA不支持浮點類型,因此需要采用移位操作進行放大和縮小。采集系統采用如下方法:系數全部左移9位,計算結果再右移7位 (Y、Cb、Cr為8位數據,RGB為10位數據,故結果右移7位)。乘法操作可采取兩種方式,一種方式調用內部乘法器IP核,另一種方式是不用乘法器IP核,直接將系數轉換成二進制,乘2n就向左移n位數據,乘法操作就轉換成了移位操作。

7 VGA顯示

VGA控制模塊的功能包括產生VGA時序,控制對SDRAM的讀操作,同時將讀取的數據送到編碼芯片ADV7123中,并產生行同步信號VGA_HS,場同步信號VGA_VS,以實現視頻數據在VGA顯示器中的實時顯示。

VGA顯示模塊采用的分辨率為640×480@60,時鐘頻率為25MHz。VGA的顯示時序如圖6所示。VGA的顯示采用逐行掃描的方式,因此需要同時讀SDRAM中的奇數場數據和偶數場數據,并將兩場數據復合到一場中。一種簡單的做法是設計一個VGA列計數器,計數器為奇數時,讀奇數場數據進行顯示,否則讀偶數場數據進行顯示。實驗結果表明,顯示效果較好。

VGA視頻數據顯示如圖7所示。

8 結束語

本文采用可編程邏輯門陣列FPGA,視頻解碼芯片ADV7403,視頻編碼芯片ADV7123以及同步動態隨機存取器SDRAM,實現了對CCD攝像頭采集到的CVBS信號的不同處理,然后通過VGA顯示器進行了實時顯示。并且通過外部顯示開關的不同選擇,實現了視頻數據的RGB顯示、灰度顯示、Sobel邊沿檢測顯示以及Prewitt邊沿檢測顯示。此系統結構簡單,成本低廉,實時性強,處理效率高,接口方便以及編程靈活,是CCD模擬視頻信號采集與處理的良好方案。

[1]ZHU Changfeng,XIAO Tiejun.Design of video capture system based on FPGA [J].Computer Engineering and Design,2008,29 (17):4405 (in Chinese).[祝長鋒,肖鐵軍.基于FPGA的視頻圖像采集系統的設計 [J].計算機工程與設計,2008,29 (17):4405.]

[2]TAN Xinquan,CHEN Xiaoqian,DENG Tianping,et al.Digital video technology foundation [M].Wuhan:Huazhong University of Science and Technology Press,2009 (in Chinese). [談新權,陳筱倩,鄧天平,等.數字視頻技術基礎[M].武漢:華中科技大學出版社,2009.]

[3]SHAO Zhongjun,CHENG Guangwei.Design of video capture and display based on FPGA [J].Electronic Component & Device Applications,2010,12 (12):24-25 (in Chinese). [邵忠俊,程光偉.基于FPGA的視頻采集與顯示模塊設計 [J].電子元器件應用,2010,12 (12):24-25.]

[4]LUO Xiaoqiao,FAN Weiliang,LI Wei.Design and implementation of digital video conversion interface based on FPGA [J].Electronic Measurement Technology,2008,31 (10):177-178(in Chinese).[羅小巧,樊偉良,李偉.基于FPGA的數字視頻轉換接口的設計與實現 [J].電子測量技術,2008,31(10):177-178.]

[5]WANG Jianzhuang.Study on the algorithms of high-speed image processing based on FPGA and system implementation[D].Wuhan:Huazhong University of Science & Technology,2011(in Chinese).[王建莊.基于FPGA的高速圖像處理算法研究及系統實現 [D].武漢:華中科技大學,2011.]

[6]LIU Wenying.Design and implementation of video image preprocessing system based on FPGA [D].Tianjin:Tianjin Normal University,2010 (in Chinese).[劉文英.基于 FPGA 的視頻圖像預處理系統的設計與實現 [D].天津:天津師范大學,2010.]

[7]JIANG Guoqiang.SOPC technology and application [M].Beijing:China Machine Press,2006 (in Chinese).[江國強.SOPC技術與應用 [M].北京:機械工業出版社,2006.]

[8]WANG Gang,ZHANG Lian.Design and typical examples of SOPC embedded system based on FPGA [M].Beijing:Publishing House of Electronics Industry,2009 (in Chinese).[王剛,張瀲.基于FPGA的SOPC嵌入式系統設計與典型實例 [M].北京:電子工業出版社,2009.]

[9]HAN Xiaojun.Digital image processing technology and application [M].Beijing:Publishing House of Electronics Industry,2009(in Chinese).[韓曉軍.數字圖像處理技術與應用[M].北京:電子工業出版社,2009.]

[10]ZHANG Zhigang.FPGA and SOPC design tutorial-DE2practice [M].Xi’an:Xi’an University of Electronic Science and Technology Press,2007 (in Chinese). [張志剛.FPGA 與SOPC設計教程-DE2實踐 [M].西安:西安電子科技大學出版社,2007.]

[11]FAN Ji,WU Xiaoyi,WANG Binyi,et al.FPGA realization of SDRAM controller design in digital system [J].Journal of Gun Launch & Control,2009 (4):38-40 (in Chinese).[范繼,吳小役,王斌翊,等.數字系統中SDRAM控制器的FPGA實現 [J].火炮發射與控制學報,2009 (4):38-40.]

[12]MA Ling,YANG Junfeng,SONG Kezhu,et al.A design of multiple DDR SDRAM controllers based on FPGA in a seismic data acquisition system [J].Journal of University of Science and Technology of China,2010 (9):939-945 (in Chinese).[馬靈,楊俊峰,宋克柱,等.地震數據采集中基于FPGA的多DDR SDRAM控制器設計 [J].中國科學技術大學學報,2010 (9):939-945.]

猜你喜歡
信號系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
完形填空二則
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
孩子停止長個的信號
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
基于LabVIEW的力加載信號采集與PID控制
主站蜘蛛池模板: 午夜老司机永久免费看片| 欧美有码在线| 国产91精品最新在线播放| 曰韩免费无码AV一区二区| 欧美精品1区| 中文字幕无码中文字幕有码在线| 高潮爽到爆的喷水女主播视频| 一级一级一片免费| 国产不卡网| 日韩亚洲综合在线| a免费毛片在线播放| 中国一级毛片免费观看| 欧美成人综合视频| 99久久精品国产麻豆婷婷| 国产成人亚洲综合A∨在线播放| 91精品最新国内在线播放| 91久久国产综合精品女同我| 日韩视频免费| 成人中文字幕在线| 97国产精品视频自在拍| 中文字幕在线欧美| 国产大片喷水在线在线视频| 国产日本欧美亚洲精品视| 人妻无码一区二区视频| 香蕉久久国产精品免| 亚洲高清在线天堂精品| 少妇高潮惨叫久久久久久| 亚洲视频二| 狠狠色狠狠色综合久久第一次 | 综合久久五月天| 久久综合婷婷| 亚洲床戏一区| 国产手机在线观看| 99热这里只有精品2| 丁香五月婷婷激情基地| 真实国产乱子伦高清| 久久精品91麻豆| 亚洲V日韩V无码一区二区 | 婷婷六月色| 中文字幕自拍偷拍| 影音先锋丝袜制服| 免费看一级毛片波多结衣| 丁香亚洲综合五月天婷婷| 亚洲精品无码高潮喷水A| 亚洲天堂久久| 国产中文一区二区苍井空| 久久国产黑丝袜视频| 日本三区视频| 国产成人免费视频精品一区二区| 午夜不卡福利| 国产靠逼视频| 九九免费观看全部免费视频| 久久精品人妻中文系列| 制服无码网站| 成人在线观看不卡| 精品国产成人三级在线观看| 日本在线免费网站| 国产欧美精品一区二区| 91精品啪在线观看国产91九色| 114级毛片免费观看| 久久久久人妻一区精品| 国产精品成人啪精品视频| 亚洲精品777| 久久久久无码国产精品不卡 | 中文字幕亚洲综久久2021| 亚洲综合色婷婷| 免费A∨中文乱码专区| 99热这里只有免费国产精品| 中文字幕在线永久在线视频2020| 成年免费在线观看| 国产麻豆精品久久一二三| 亚洲a级毛片| 久久人妻xunleige无码| 国产日本欧美亚洲精品视| 精品人妻一区无码视频| 美女视频黄频a免费高清不卡| 欧美日本在线一区二区三区| 国产小视频免费观看| 亚洲欧美成aⅴ人在线观看| 麻豆国产精品视频| 中国美女**毛片录像在线| 中文字幕在线看|