基于DSP的車輛視頻處理系統(tǒng)的研究
引言
目前,交通監(jiān)控應(yīng)用系統(tǒng)大多以緊急報警、車輛定位與語音通信為主,圖像方面的應(yīng)用不多。本文正是基于這樣的考慮,設(shè)計了車輛圖像采集與處理系統(tǒng)。該系統(tǒng)采集車后方的圖像信息,實(shí)時地傳送給前方的顯示屏顯示,司機(jī)可通過顯示屏實(shí)時觀測后方路面及車輛狀況,倒車時可以及時發(fā)現(xiàn)后方障礙物及行人,安全避讓。
圖1 實(shí)時圖像采集處理系統(tǒng)組成框圖
(a) 采集一行圖像(720個采樣點(diǎn))的時序圖
(b) 采集一幀圖像的時序圖
圖2 數(shù)字視頻信號輸出時序圖
圖3 采用CPLD完成視頻采集控制
實(shí)時圖像采集處理系統(tǒng)的組成及工作原理
本系統(tǒng)由模擬攝像頭采集視頻數(shù)據(jù),通過視頻解碼芯片將模擬視頻信號轉(zhuǎn)換為數(shù)字視頻信號。CPLD作為采樣控制器,完成數(shù)字視頻數(shù)據(jù)的存儲和時序控制。本設(shè)計選用TMS320C6416實(shí)現(xiàn)系統(tǒng)控制和數(shù)據(jù)處理。具體組成如圖1所示。
視頻采集模塊
圖像的輸入由模擬攝像頭完成(本系統(tǒng)選用黑白攝像頭)。攝像頭輸出為標(biāo)準(zhǔn)的復(fù)合視頻信號(CVBS),該信號必須經(jīng)過視頻解碼和A/D變換后進(jìn)入數(shù)字系統(tǒng)才有效。由于模擬視頻信號非常復(fù)雜,除了包含圖像信號之外,還包括行同步信號、行消隱信號、場同步信號、場消隱信號等。因而,對視頻信號進(jìn)行A/D轉(zhuǎn)換的電路非常復(fù)雜。本設(shè)計選用TI公司的視頻解碼芯片TVP5146完成從模擬到數(shù)字視頻的轉(zhuǎn)換。TVP5146允許10路模擬視頻輸入,具有4路10bit 30MSPS A/D 轉(zhuǎn)換器;場同步信號VS,行同步信號HS,奇偶場信號FID,時鐘輸出信號DATACLK等都由引腳直接引出,省去同步時鐘電路的設(shè)計。
基于DSP的圖像處理模塊
實(shí)時圖像處理系統(tǒng)設(shè)計的難點(diǎn)是如何在有限的時間內(nèi)完成大量圖像數(shù)據(jù)的處理。只有圖像處理系統(tǒng)的處理速度達(dá)到每秒25 幀以上時才能達(dá)到實(shí)時的效果,所以在系統(tǒng)設(shè)計中,處理器是關(guān)鍵,要求處理器運(yùn)算速度快、實(shí)時處理能力強(qiáng),并且還具有高速的存儲器及I/O存取能力。本設(shè)計選用TMS3206416DSK作為視頻信號處理系統(tǒng)?! MS3206416DSK是一個低成本的開發(fā)平臺,用戶可以根據(jù)功能需要擴(kuò)展硬件設(shè)計,便于硬件開發(fā),縮短設(shè)計時間。
CPLD控制模塊
TMS320C6416DSK 板上含有一片 CPLD,它主要實(shí)現(xiàn)系統(tǒng)的邏輯控制和存儲器地址解碼功能。本設(shè)計仍需一片 CPLD 完成視頻存儲及顯示的時序控制,選用 Altera公司的EPM7064ATC100 來完成上述功能,它的工作電壓是3.3V,具有64個邏輯單元,68個I/O 可用引腳,引腳間 4.5ns延時,其最高的時鐘頻率為 222.2MHz。該器件基于EEPROM 結(jié)構(gòu),可以通過 JTAG 接口現(xiàn)場編輯內(nèi)部的結(jié)構(gòu)邏輯,編程語言為 VHDL。數(shù)字視頻信號輸出時序如圖2所示。
數(shù)字視頻信號按圖2所示時序輸出。以 NTSC 制為例,圖中 Y[9:0]為輸出的亮度視頻信號,DATACLK 為行鎖定系統(tǒng)的輸出時鐘,為像素時鐘頻率的兩倍,即27MHz,用來同步數(shù)據(jù)采集,HS 為行同步信號,VS為場同步信號,VBLK 為場消隱信號,F(xiàn)ID為奇偶場信號。HS 的高電平表示一行有效采樣點(diǎn)720個,VS 的高電平表示一場有效信號,對于 NTSC制信號,單場為243行,奇偶場信號 FID 為“1”時,表示當(dāng)前為奇數(shù)場, 為“0”表示偶數(shù)場。
圖像存儲模塊
為了實(shí)現(xiàn)圖像的實(shí)時采集與處理,往往需要視頻的輸入轉(zhuǎn)換和圖像處理并行進(jìn)行。傳統(tǒng)上實(shí)現(xiàn)數(shù)據(jù)采集與處理同步的方法有:使用 FIFO 存儲器;使用雙口 RAM;使用雙/單口RAM 交替切換存儲數(shù)據(jù)??紤]到圖像處理系統(tǒng)需要處理的數(shù)據(jù)量太大,而且 FIFO 存儲器和雙口 RAM 的價格因素,本設(shè)計使用高速雙/單口 SRAM 交替切換存儲數(shù)據(jù)的方法。一幀圖像容量為 720×486=349.92K像素,選用 512K×8bit的高速SRAM。TVP5146 對亮度信號的采樣頻率是13.5MHz,2次寫入的數(shù)據(jù)間隔是74ns,可以選擇 Cypress公司的 CY7C1049CV33(512K×8bit,12ns,3.3V)來完成數(shù)據(jù)儲存。
兩幀的切換由CPLD設(shè)計的幀存控制器自動實(shí)現(xiàn)。當(dāng)幀A存儲TVP5146輸出的數(shù)據(jù)時, DSP讀取并處理幀B的數(shù)據(jù),完成處理后送往液晶顯示。在幀A存滿一幀數(shù)據(jù),處理器也處理完幀B數(shù)據(jù)并完成一幀圖像顯示后,由CPLD 構(gòu)造的乒乓開關(guān)轉(zhuǎn)換兩個接口,DSP開始從幀A里讀取數(shù)據(jù)進(jìn)行處理,這樣,兩幀輪換進(jìn)行,實(shí)現(xiàn)了采集與處理顯示的并行操作。
本設(shè)計采用場合并行法,將兩場的數(shù)據(jù)寫入一個幀存中。系統(tǒng)利用 VS 信號對此進(jìn)行控制。當(dāng) VS 信號有效時,表明新的一場開始了,此時無效行計數(shù)器開始工作,控制不需要采集的圖像行,計數(shù)到閾值后,有效行計數(shù)器開始工作,控制所要采集的圖像行,并發(fā)出高位地址信號 A[18..11];同樣,當(dāng) HS 有效后,無效像素計數(shù)器開始計數(shù)每行中的無效像素,然后有效像素計數(shù)器開始計數(shù)需要采集的行有效像素;每次計滿720個像素后,等待下一次有效行信號的到來,同時將有效行計數(shù)器加1。由于系統(tǒng)選用的幀存容量較大,因此利用 FID 的反相信號作為幀存地址的 A10,為每行圖像提供了1024個存儲空間(實(shí)際使用720個),可以簡化數(shù)據(jù)寫入與讀出的控制電路。隔行的視頻信號就會被逐行地存儲到幀存體中。
圖3所示為 CPLD 編程構(gòu)成幀存儲器和視頻采集控制器。視頻采集控制器根據(jù) TVP5146的同步信號 DATACLK、HS、VS 在內(nèi)部產(chǎn)生對幀存儲器的地址信號 A[18:0]、寫信號 WR以及幀切換信號 RDY1、RDY2。幀存控制器根據(jù)切換信號 RDY1、RDY2 進(jìn)行接口轉(zhuǎn)換:當(dāng)一幀圖像存入幀存儲器時,幀切換的兩個必要條件之一RDY1置為高電平,RDY2在DSP處理完一幀圖像并送出顯示后置為高電平,當(dāng)兩者同時為真時,切換兩通道的連接,開始新一輪圖像處理過程,同時RDY1、RDY2復(fù)位,為下一次切換作準(zhǔn)備。
TMS320C6146DSK 外擴(kuò)SDRAM共 4M×64bit的容量,為2片 MT48LC2M32B2,用來作為DSP處理后送往液晶顯示前的視頻數(shù)據(jù)緩存。
圖像顯示模塊
本設(shè)計選用 EPSON 的 E35G23 圖形顯示模塊,320×240 像素,帶有行列驅(qū)動電路以及背光電路,16級灰度顯示。系統(tǒng)采用 CPLD 構(gòu)成液晶顯示控制器,應(yīng)用 CPLD 產(chǎn)生幀同步信號及掃描時鐘信號。VFRAM 為幀同步信號,標(biāo)志著 LCD 屏新一幀的圖像開始,每一幀中包含240個 VLINE 信號。在幀標(biāo)志信號 VFRAM 有效后產(chǎn)生行同步信號,讀數(shù)據(jù)緩存區(qū),在像素時鐘 VCLK 的控制下,將數(shù)據(jù)寫入 LCD,每一行包含320 個 VCLK 信號,完成一幀數(shù)據(jù)的寫入。
結(jié)語
本文以高速 DSP TMS320C6416 為核心處理器,應(yīng)用 TVP5146 完成模擬視頻信號的數(shù)字化轉(zhuǎn)換,CPLD 完成系統(tǒng)的時序控制,采用雙/單口 SRAM 交替儲存采集的視頻數(shù)據(jù),DSP 處理完數(shù)據(jù)后送往SDRAM緩存,最后將數(shù)據(jù)從緩存讀出并送往液晶屏顯示,實(shí)現(xiàn)視頻數(shù)據(jù)實(shí)時采集處理顯示。本系統(tǒng)是基于車輛視頻監(jiān)控而設(shè)計的,將對減少交通事故起到良好作用。
評論