基于FPGA的視頻圖像分割技術設計與應用
數字硬盤錄像機是一種性價比很高的視頻監控解決方案,具有對圖像/語音進行長時間錄像、錄音、遠程監控和控制的功能,集合錄像機、畫面分割器、云臺鏡頭控制、報警控制、網絡傳輸等功能于一身,是目前市面上視頻監控系統的首選產品。在DVR系統中,需要在一個現實設備上同時顯示多個監控畫面,這樣可大大節省資源并便于工作人員監視,本文研究的內容就是這種圖像分割技術在FPGA上的實現。
FPGA是20世紀80年代由美國Xilinx公司首先推出的,它具有性能高、規模大、可重復編程、開發投資小等優點,在現代電子產品設計中應用廣泛。FPGA具有極高并行度的信號處理引擎,提供高性能的信號處理能力。在本設計中,就是要利用FPGA的高速性能對多路視頻信號進行處理,從而簡化硬件結構,提升DSP性能,使單片DSP實現16路CIF圖像實時編解碼成為可能。
1 圖像分割與合成
1.1視頻標準
FPGA處理的視頻數據由專用解碼芯片Tw2815輸出,符合ITU.RBT.656標準。ITU.RBT.656標準是在國際電信聯盟無線電通信部門656.4號建議書中提出,全稱是工作在ITU.RBT.601建議(部分A)的4:2:2級別上的525行和625行電視系統中數字分量視頻信號的接口。實施這樣的標準是為了在525行和625行兩者間提供一種世界范圍兼容的數字化方法。數據信號編碼成8比特二進制信息形式,格式如圖1所示。
由圖1可知ITU.RBT.656并行接口除了傳輸4:2:2的YCbCr視頻數據流外,還有行、列同步控制信號。一幀數據由525行(NTSC制式)或625行(PAL制式)、每行1728個字節的數據塊組成。每行數據中,有4個字節的EAV和SAV信號,前3個字節是前導數據,最后一個字節中包含本行數據信息。EAV/SAv包含了關于同步的所有信息。
1.2 割與合成原理
視頻圖像合成基于像素域,即將多路壓縮的源視頻編碼數據進行解碼,將解碼后的YUv(或RGB)數據按照一定線性規則進行排列,合并成一路ⅥⅣ(或RGB)數據,再將合并后的視頻數據進行編碼12J。ITU.RBT.656標準YCbC,(4:2:2)格式中4:2:2的含義為Y信號與Cb、C,信號的數量比為4:2:2,即在有效視頻數據區域,每4個字節為一個宏像素點,其中包含2個Y信號,1個Cb信號和1個Cr信號。
要實現4畫面及16畫面顯示功能,就是要以宏像素為單位對原畫面像素按照1/4(或1/16)的比例進行抽取,如圖2所示(以PAL制式一幀數據為例)。
通過上面的方法可以得到各視頻通道1/4(或1/16)畫面數據接下來的任務是將畫面合成并傳輸給DSP做編碼處理。通過實驗得到:對于TMS320DM6467芯片的VPIF(視頻設備接口)來說,只要輸入視頻數據有效數據行內從EAV到SAV之間的字節數為一定值(可由DSP內部寄存器設置),且行數滿足對應制式要求,DSP就能將其識別為一幀有效數據。這樣就能得到圖3所示的第一種畫面合成方法。這種方法雖然可行,但是可以看到,在有效數據區中每一行都由多個通道數據組成,在從內存讀取數據時通道切換頻繁。會給編碼和調試帶來困難。
評論