《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 一種多路圖像采集系統的軟件設計
一種多路圖像采集系統的軟件設計
電子市場
摘要: 本文介紹的系統主要由兩片Altera公司的CycloneⅡ系列的EP2C8Q20818和飛利浦公司的視頻解碼芯片SAA7113H以及外存儲器件SRAM等組成。兩片FPGA分別完成前端圖像的采集和后端數據的處理,視頻解碼芯片完成模擬信號向數據信號的轉換,存儲器件在FPGA的控制下起到數據緩存作用。
Abstract:
Key words :

     工業現場因為環境復雜,實時性要求高,常常需要對一處或多處重要位置同時進行監控,且能夠在需要時切換其中一幅畫面全屏顯示。這就要求設計一種實時視頻監控" title="視頻監控">視頻監控系統,既能夠滿足工業現場應用的特殊環境,具有體積小、功耗低、可定制的特點,又能夠對多點進行同時采集和同屏顯示以及對其中的一路進行切換。

  國內現有的視頻監控方案一般是采用CCD攝像頭+視頻解碼" title="視頻解碼">視頻解碼芯片(如SAA7113H/ADV7181B)+FPGA" title="FPGA">FPGA/CPLD+DSP的模式實現,其中視頻解碼芯片用來對CCD攝像頭采集的模擬信號進行AD轉換,FPGA/CPLD對數據采集進行控制,DSP最終對數據進行處理。這種方法開發周期長,成本高,且可更改性差。

  本文介紹的系統主要由兩片Altera公司的CycloneⅡ系列的EP2C8Q20818和飛利浦公司的視頻解碼芯片SAA7113H以及外存儲器件SRAM等組成。兩片FPGA分別完成前端圖像的采集和后端數據的處理,視頻解碼芯片完成模擬信號向數據信號的轉換,存儲器件在FPGA的控制下起到數據緩存作用。

  1 系統描述

  系統主要分為采集模塊、解碼模塊、數據格式轉換模塊、存儲模塊、UART模塊和LCD/VGA顯示模塊,如下圖1所示。四片視頻解碼芯片在FPGA1的控制下通過I2C總線完成配置和初始化過程,輸出8位與CCIR656兼容的YCrCb 4:2:2格式的視頻數據,同時還包括行同步HS、場同步VS和奇偶場RTS0等信號。由于顯示終端支持的是標準的RGB格式的數據,所以要對視頻解碼芯片輸出的YCrCb 4:2:2格式數據進行轉換。經轉換所得的RGB數據在FPGA2的控制下,配合相應的時序信號,截取要顯示的有效的640x480個像素,乒乓存入兩個SRAM中,并最終在:LCD /VGA顯示模塊的控制下將數據顯示在屏幕上。UART通訊模塊集成在FPGA里,通過PC機的串口發送相應的控制命令,FPGA接收后切換相應通道的畫面。

系統結構圖

圖1 系統結構圖

  2 系統軟件結構

  系統軟件主要由采集模塊、解碼模塊、存儲模塊、顯示模塊和UART模塊組成,軟件結構如圖2所示。

軟件結構圖

圖2 軟件結構圖

  3 ITU656解碼

  ITU656解碼模塊根據ITU656標準將4:2:2的數據流解碼成ITU656標準視頻流。ITU656并行接口除了傳輸4:2:2的YCbCr視頻流外,還有行、場同步所用的控制信號。PAL制式的圖像一幀有625行,每秒掃描25幀;每行數據由1128字節的數據塊組成。其中,PAL制式23~311行是偶數場視頻數據,312~552行是奇數場視頻數據,其余為垂直控制信號。

  圖3為ITU656每行的數據結構。每行數據包含水平控制信號和YCbCr視頻數據信號。視頻數據字是以27兆字/秒的速率傳送的,其順序是:Cb,Y,Cr,Y,Cb,Y,Cr,…其中,Cb,Y.Cr這3個字指的是同址的亮度和色差信號取樣,后面的Y字對應于下一個亮度取樣。每行開始的288字節為行控制信號,開始的4字節為EAV信號(有效視頻結束),緊接著280個固定填充數據,最后是4字節的SAV信號(有效視頻起始)。

ITU656每行的數據結構

圖3 ITU656每行的數據結構

  SAV和EAV信號有3字節的前導:FF、FF、00;最后1字節XY表示該行位于整個數據幀的位置及如何區分SAV、EAV。在每個時鐘的上升沿讀取從解碼芯片傳來的8位數據。當檢測到一行數據的開始標志FF0000XY時,檢測到SAV信號或EAV信號,提取H、F、V信號。然后發出開始命令,同時開啟行列計數器,開始對接下來的圖像數據進行解碼,根據每個8位數據自身帶的信息,判斷該數據為Y,Cr還是Cb,從而得到Y,Cr,Cb各分量的值。解碼流程如圖4所示。

 解碼流程

圖4 解碼流程

  4 幀存儲控制器與LCD/VGA顯示控制器的設計

  4.1 數據格式的轉換

  根據前面第2節的介紹,從ITU656解碼模塊出來的數據為8位4:2:2的YUV空間圖像數據,而LCD/VGA顯示器只能接收RGB數據。因為Y-CrCb4:2:2格式不能直接轉換為RGB,所以需要先轉換為YCrCb4:4:4格式。

  我們知道解碼芯片得到的視頻數據是順序為Cb,Y,Cr,Y,Cb,Y,Cr,……的序列,存儲的時候將一個Y與一個C(Cb或Cr)結合起來組成一個16位的數據。而當數據被讀出來時就要將這些視頻數據轉換為每個像素占24位(Y、Cb、Cr各占8位)的4:4:4的數據流。4:2:2到4:4:4的轉換采用最簡單的插值算法,在采樣的時候,每隔一個像素才采一次色度值(Cb和Cr)。在轉化時,直接將前一個有色度信息的像素點的Cr以及Cb的值直接賦給后一個像素的Cr和Cb,這樣就能得到4:4:4的像素數據,每個像素占用24位位寬。

  4.2 幀存儲控制器

  作為系統的重要組成部分,幀存儲控制器主要用來進行有效數據的緩存。視頻數據在FPGA1的控制下乒乓寫入兩片SRAM。乒乓技術應用的關鍵在于乒乓切換信號frame的產生,本系統中根據視頻解碼芯片的奇偶場信號RTS0來產生幀切換frame信號,也就是一個RTS0周期切換一次。一個RTS0周期由一個奇場和一個偶場組成,是一副完整的畫面。當frame為1是,FPGA通過計數器的計數截取最終顯示所需要的有效的像素點信息按照SRAM的控制時序寫入SRAM1,同樣當frame為0時,將對應的像素信息寫入SRAM2,如圖5所示。

乒乓存儲示意圖

圖5 乒乓存儲示意圖

  系統加電的同時,4片視頻解碼芯片同時工作,為了保證數據采集的準確性和顯示的同步性,系統內生成一個八倍于像素時鐘的寫時鐘信號write_clk,這樣,在一個像素時鐘周期,寫時鐘信號已經過了八個周期,而每兩個周期分別完成一路圖像數據的寫過程。

  由于SRAM是一維存儲空間,一個地址對應一個數據。所以在寫入數據時將SRAM的地址空間劃分為4段,每一段用來存儲一路圖像數據。

  用程序實現比較簡單,設置一個地址寄存器sram_addr_reg,將它賦給SRAM的地址控制信號sram_addr。然后在對每一路圖像寫入時,將對應的SRAM的起始地址加上一個固定的基數。如:

  這樣就保證了SRAM中對應地址的數據和屏幕上顯示位置的一一對應關系,在讀程序中,只需要按照順序讀SRAM即可,如圖6所示。

SRAM地址驗證

圖6 SRAM地址驗證

  4.3 LCD/VGA顯示控制器

  本模塊主要是用FPGA來產生LCD/VGA顯示時所需要的時鐘信號CLK(像素時鐘信號)、VSYNC(幀同步信號)、HSYNC(行同步信號)和使能信號(VDEN),并在相應控制時序的作用下,依次將顯示緩存即SRAM中的數據依次讀出,輸出到LCD上的過程。

  LCD顯示所需的主要時序信號的關系如圖7所示。

LCD時序信號圖

圖7 LCD時序信號圖

  在系統中,LCD屏幕分辨率為640x480,像素時鐘CLK為25MHz,由于FPGA的主時鐘輸入選用了20 MHz的有源時鐘,那么就要求利用Cyclone芯片的內部邏輯資源來實現時鐘倍頻,以產生所需要的CLK(25 MHz)、用Verilog語言編寫參數化的時序生成模塊,產生HSYNC(32 kHz)及VHY-NC(60 Hz)時鐘信號,如圖8所示。

 時序驗證

圖8 時序驗證

  VGA顯示原理與LCD相似,除了在硬件上正確連接ADV7125芯片電路外根據需要的分辨率來生成相應時鐘信號即可。

  5 圖像抖動的分析與解決

  在系統完成后軟硬件聯調時,出現畫面抖動現象,其中以RTSO為基準而產生乒乓切換的那一路圖像穩定,其他三路都出現不同程度的抖動現象。對此我們做了深入的分析和實驗,分析整個系統的結構可知,系統在多個時鐘控制下共同工作,也就是所說的典型的異步系統。我們知道,數據在異步系統傳輸時對時鐘要求非常嚴格,稍微的一點時鐘偏差都會帶來對有效像素截取的偏差,最終影響圖像的顯示質量。

  解決的辦法有兩個,一是加入緩沖機制,利用FIFO對數據存儲的特性來實現數據在異步時鐘之間的無縫傳輸;二是同步時鐘,利用狀態機等方法使得異步系統的時鐘能夠盡可能同步。采用第二種方法對系統進行改進,首先系統中所有的分頻、倍頻盡量使用Quartus 6.0自帶的PLL產生,并且使用專用時鐘引腳進行時鐘輸出;其次把寫時鐘write_clk降為54M,也就是每隔一個像素采集一次。最終,四路圖像都能穩定顯示。

  6 結束語

  本文實現了一種結合Altera公司生產的CycloneII系列FPGA與視頻解碼芯片ADV7181B的嵌入式圖像采集系統。系統具有低功耗、低成本、高可靠和靈活性好等特點?;贔PGA的多路圖像采集系統采用兩片FPGA作為主控芯片,完成四路視頻畫面的同時顯示和切換,實現兩個FPGA的級聯配置,采用Verilog語言編寫的控制邏輯解決了畫面抖動問題。系統軟件集成度高,硬件結構清晰簡單,即可滿足一般監控場合對多處位置進行實時監控的需求,又能為功能更復雜的圖像處理、壓縮、傳輸系統提供前端圖像數據采集。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 免费少妇a级毛片| 欧美老熟妇乱子伦视频| 婷婷色在线观看| 久久精品国产网红主播| 欧美老人巨大xxxx做受视频| 又大又紧又硬又湿a视频| 高清中文字幕免费观在线| 国产精品无码av在线播放| 久久久免费精品| 特级毛片A级毛片免费播放| 国产一区二区在线|播放| 日本三级韩国三级欧美三级| 故意打开双腿让翁公看| 亚洲AV日韩精品久久久久久| 精品福利一区二区三区免费视频 | 国产乡下三级全黄三级bd| a毛片久久免费观看| 手机看片中文字幕| 久久精品国产99国产精品亚洲| 诗涵留学荷兰被黑人摘小说| 少妇性俱乐部纵欲狂欢少妇| 久久久久无码精品国产app| 校园放荡三个女同学| 午夜精品久久久久久久99| 香蕉视频国产在线观看| 大胆gogo高清在线观看| 一级黄色片大全| 桃子视频在线观看高清免费视频| 八区精品色欲人妻综合网| 色视频www在线播放国产人成 | 高贵娇妻被多p| 国产精品久久久久久网站| 中国国产高清免费av片| 欧美日韩亚洲电影| 免费国产黄网站在线观看视频| 黄网在线免费观看| 国产精品亚洲一区二区三区久久| 一级毛片a免费播放王色| 日干夜干天天干| 久久午夜福利电影| 日韩精品www|