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