摘要:針對(duì)視頻" title="視頻">視頻采集系統(tǒng)" title="系統(tǒng)">系統(tǒng)需要對(duì)攝像頭輸出的復(fù)合視頻信號(hào)進(jìn)行快速轉(zhuǎn)化,、采樣,、存儲(chǔ)的要求,設(shè)計(jì)基于高速A/D轉(zhuǎn)換器" title="轉(zhuǎn)換器">轉(zhuǎn)換器TLC551O的視頻采集系統(tǒng),。模擬視頻信號(hào)通過(guò)A/D轉(zhuǎn)換器轉(zhuǎn)化為8位灰度值,,16位微處理器MC9S12DG128B通過(guò)普通IO口,控制FIFO存儲(chǔ)器uPD42280寫(xiě)入和讀取A/D轉(zhuǎn)換結(jié)果,,實(shí)現(xiàn)視頻圖像數(shù)據(jù)的高精度采集,。分析了主要芯片的工作原理及時(shí)序,描述了軟件控制圖像數(shù)據(jù)采集" title="數(shù)據(jù)采集">數(shù)據(jù)采集流程,。并將采得數(shù)據(jù)經(jīng)過(guò)處理,,與實(shí)際圖像對(duì)比。實(shí)驗(yàn)結(jié)果表明,,該系統(tǒng)在單行掃描時(shí)問(wèn)50μs內(nèi)能采集160個(gè)以上的有效像素點(diǎn),,成像質(zhì)量高,能滿(mǎn)足簡(jiǎn)單圖像處理算法對(duì)數(shù)據(jù)的要求,。
關(guān)鍵詞:A/D轉(zhuǎn)換器,;FIFO存儲(chǔ)器;時(shí)序,;視頻圖像數(shù)據(jù)
國(guó)內(nèi)外的視頻圖像采集方法很多,,基本分為兩大類(lèi):自動(dòng)圖像采集和基于處理器的圖像采集。自動(dòng)圖像采集多采用專(zhuān)門(mén)的視頻解碼芯片,,如SAA7113,,TVP5150等,自動(dòng)完成模數(shù)轉(zhuǎn)化,,并輸出行,、場(chǎng)信號(hào)以實(shí)現(xiàn)存儲(chǔ)器地址產(chǎn)生,,一般以DSP為主處理器,除了對(duì)采集模式進(jìn)行初始化設(shè)置外,,主處理器不參與采集過(guò)程,。這種方法的優(yōu)點(diǎn)是采集不占用CPU的時(shí)間,實(shí)時(shí)性較好,,適合于對(duì)圖像數(shù)據(jù)的精度要求較高和算法復(fù)雜的場(chǎng)合,,如車(chē)道識(shí)別、車(chē)輛識(shí)別等方向的應(yīng)用,。但是該方案對(duì)處理器的速度有很高的要求,,成本較高,且電路復(fù)雜,?;谔幚砥鞯膱D像采集則采用視頻同步信號(hào)分離芯片產(chǎn)生行、場(chǎng)中斷信號(hào),,用微處理器內(nèi)部的A/D轉(zhuǎn)換器實(shí)現(xiàn)圖像的采集,。圖像的采集過(guò)程在CPU控制下完成,由CPU啟動(dòng)A/D轉(zhuǎn)換,,得到轉(zhuǎn)換數(shù)據(jù),。該方案的特點(diǎn)是電路簡(jiǎn)單,成本低,,易于實(shí)現(xiàn),,能滿(mǎn)足簡(jiǎn)單圖像采集系統(tǒng)的需要。但數(shù)據(jù)采集占用CPU時(shí)間,,采集速度受微處理器A/D轉(zhuǎn)化時(shí)間限制,。
本文提出了基于獨(dú)立的高速A/D轉(zhuǎn)換器TLC5510的視頻采集系統(tǒng)設(shè)計(jì)方案,能高速采集較高精度的視頻數(shù)據(jù),,可適用于智能車(chē)比賽,、室內(nèi)導(dǎo)盲、車(chē)隊(duì)仿真平臺(tái),、移動(dòng)機(jī)器人平臺(tái)等道路環(huán)境相對(duì)單一。圖像處理算法簡(jiǎn)單的場(chǎng)合,。
1 系統(tǒng)架構(gòu)
本系統(tǒng)主要適用于符合PAL制式的模擬攝像頭輸出視頻信號(hào)的采集,。一般的模擬攝像頭的主要工作原理是:按一定的分辨率,以隔行掃描的方式采樣圖像上的點(diǎn),,當(dāng)掃描到某點(diǎn)時(shí),,就通過(guò)圖像傳感芯片將該點(diǎn)處圖像的灰度轉(zhuǎn)換成與灰度成一一對(duì)應(yīng)的電壓值,然后將此電壓值通過(guò)視頻信號(hào)端輸出,。同時(shí),,視頻信號(hào)端輸出還隱含了場(chǎng)同步信號(hào),、行同步信號(hào)、奇偶場(chǎng)同步信號(hào)等信息,,因此實(shí)際輸出的是復(fù)合視頻信號(hào),。
本系統(tǒng)采用MC9S12DGl28B作為處理器,針對(duì)信號(hào)特點(diǎn),,主要設(shè)計(jì)思想如下:首先,,通過(guò)專(zhuān)門(mén)的視頻同步信號(hào)分離芯片LM1881提取復(fù)合視頻信號(hào)的行同步脈沖、消隱脈沖和場(chǎng)同步脈沖,,并將它們轉(zhuǎn)換成數(shù)字式電平直接輸給單片機(jī)的中斷口作為控制信號(hào),。同時(shí)采用高速A/D轉(zhuǎn)換器TLC5510對(duì)視頻信號(hào)進(jìn)行A/D轉(zhuǎn)換,使視頻電壓模擬信號(hào)轉(zhuǎn)換為代表圖像灰度的數(shù)字信號(hào)輸出,。接著采用FIFO存儲(chǔ)器uPD42280作為視頻數(shù)據(jù)的緩存,,在行中斷服務(wù)函數(shù)中對(duì)其進(jìn)行寫(xiě)控制,將A/D轉(zhuǎn)換數(shù)據(jù)寫(xiě)入其內(nèi)存中,。最后,,當(dāng)一場(chǎng)圖像結(jié)束時(shí),在場(chǎng)中斷服務(wù)函數(shù)中通過(guò)單片機(jī)的8位IO口將視頻數(shù)據(jù)讀回,。為了保證數(shù)據(jù)的穩(wěn)定,,在單片機(jī)與FIFO存儲(chǔ)器之間加了一級(jí)74HC245,作為數(shù)據(jù)緩沖,。為保證采集同步,,LC5510 uPD42280和74HC245采用同一有源晶振作為轉(zhuǎn)換和讀寫(xiě)的時(shí)鐘源。本系統(tǒng)框架如圖1所示,。
2 系統(tǒng)硬件設(shè)計(jì)
視頻采集系統(tǒng)一場(chǎng)圖像時(shí)間內(nèi)的采集數(shù)據(jù)量決定了成像質(zhì)量,,也就是常說(shuō)的分辨率或者叫像素。按照我國(guó)PAL制式的信號(hào)特點(diǎn),,每秒掃描25幀圖像,,每一幀圖像又分奇偶兩場(chǎng),那么,,一場(chǎng)圖像的掃描時(shí)間就是20 ms,。目前市場(chǎng)上的攝像頭,不管是CCD或是CMOS成像的,,縱向分辨率基本都在400線(xiàn)的以上,。因此推得單行視頻信號(hào)的持續(xù)時(shí)間小于20 ms/400=50μs左右。那么,,如何在50μs內(nèi)對(duì)視頻信號(hào)進(jìn)行快速地A/D轉(zhuǎn)換,,得到更多的灰度值數(shù)據(jù),以提高橫向分辨率就成為視頻采集系統(tǒng)設(shè)計(jì)的關(guān)鍵問(wèn)題,。
2.1 高速A/D轉(zhuǎn)換器
TLC5510是美國(guó)TI公司生產(chǎn)CMOS,,8位高阻抗并行的模數(shù)轉(zhuǎn)換器件(ADC),。它采用+5 V單電源工作,能提供的最大采樣率為20 MSPS,。TLC-551O的滿(mǎn)輸入量程是2 V,,TLC551OA的滿(mǎn)輸入量程是4 V。TLC5510采用了半閃速結(jié)構(gòu)及CMOS工藝,,所以大大減少了器件中比較器的數(shù)量,,并在高速轉(zhuǎn)換的同時(shí)能夠保持較低的功耗。在推薦的工作條件下,,TLC5510的功耗僅為130 mW,。
TLC5510模數(shù)轉(zhuǎn)換器內(nèi)含時(shí)鐘發(fā)生器、內(nèi)部基準(zhǔn)電壓分壓器,、1套高4位采樣比較器,、編碼器、鎖存器,、2套低4位采樣比較器,、編碼器和1個(gè)低4位鎖存器等電路。TLC5510的外部時(shí)鐘信號(hào)CLK通過(guò)其內(nèi)部的時(shí)鐘發(fā)生器可產(chǎn)生3路內(nèi)部時(shí)鐘,,以驅(qū)動(dòng)3組采樣比較器,。基準(zhǔn)電壓分壓器則可用來(lái)為這3組比較器提供基準(zhǔn)電壓,。輸出A/D信號(hào)的高4位由高4位編碼器直接提供,,而低4位的采樣數(shù)據(jù)則由2個(gè)低4位的編碼器交替提供。 TLC551O的工作時(shí)序如圖2所示,。時(shí)鐘信號(hào)CLK在每一個(gè)下降沿采集模擬輸入信號(hào),。第N次采集的數(shù)據(jù)經(jīng)過(guò)2.5個(gè)時(shí)鐘周期的延遲后送到內(nèi)部數(shù)據(jù)總線(xiàn)上。此時(shí)如果輸出使能端OE有效,,則數(shù)據(jù)可送至8位數(shù)據(jù)總線(xiàn)上,。
TLC5510不僅具有高速的A/D轉(zhuǎn)換功能,還帶有內(nèi)部采樣和保持電路,,從而大大簡(jiǎn)化了外圍電路的設(shè)計(jì),。只需要使用內(nèi)部基準(zhǔn)電阻和VDDA構(gòu)成基準(zhǔn)分壓器即可實(shí)現(xiàn)2V的滿(mǎn)量程轉(zhuǎn)換范圍。因?yàn)檎5膹?fù)合視頻信號(hào)最大電壓值不超過(guò)2V,,所以在本系統(tǒng)設(shè)計(jì)過(guò)程中,,將TLC5510的REF-BS端短接至REFB端,REFTS端短接至REFT端,,從而獲得2V基準(zhǔn)電壓。視屏信號(hào)從ANALOGIN引腳輸入,,同時(shí)采用4MHz的有源晶振提供時(shí)鐘信號(hào),。通過(guò)計(jì)算可知,,該芯片在單行視頻信號(hào)掃描時(shí)間內(nèi)可進(jìn)行200次的A/D轉(zhuǎn)換,對(duì)于簡(jiǎn)單圖像算法而言,,橫向分辨率已完全能夠滿(mǎn)足要求,。如果提高TLC5510工作時(shí)鐘頻率,可以繼續(xù)提高橫向分辨率,。若使TLC5510工作在極限情況下(20 MHz的采樣率),,橫向分辨率可達(dá)到約800個(gè)點(diǎn),也就是30萬(wàn)像素以上,。上電以后,,由于將TLC5510的OE引腳接到GND,芯片始終處于低有效狀態(tài),,所以A/D轉(zhuǎn)換將持續(xù)工作,。8位數(shù)據(jù)輸出直接接到下一級(jí)FIFO存儲(chǔ)器的輸入,由處理器決定存儲(chǔ)器是否將A/D轉(zhuǎn)換數(shù)據(jù)寫(xiě)入,。
具體的應(yīng)用電路如圖3所示,。需要注意的是,因?yàn)門(mén)LC5510的AGND引腳和DGND引腳在內(nèi)部沒(méi)有連接,,所以在外部需要連接,。建議采用電感或磁珠連接,用以去除模擬地對(duì)數(shù)字信號(hào)的噪聲,。同時(shí),,在VDDA與AGND,VDDD與DGND引腳之間,,應(yīng)分別使用0.1 μF的電容去耦,,建議使用陶瓷電容,并配以10 μF以上的鉭電容儲(chǔ)能,。
2.2 FIFO存儲(chǔ)器
uPD42280是一種2 Mbit的雙口FIFO(先入先出)存儲(chǔ)器,。在本系統(tǒng)中作為A/D轉(zhuǎn)換數(shù)據(jù)的緩存,容量大且性?xún)r(jià)比較高,,能滿(mǎn)足一幀圖像數(shù)據(jù)約25萬(wàn)個(gè)像素點(diǎn)存儲(chǔ)的要求,。A/D轉(zhuǎn)換數(shù)據(jù)按照一定的時(shí)鐘節(jié)拍順序?qū)懭牖蜃x出,它的讀寫(xiě)時(shí)鐘速率最高可達(dá)33 MHz,。uPD42280本身的數(shù)據(jù)是8 bit并行輸入輸出,,通過(guò)控制它的WE引腳、WRST引腳,、RE引腳和RRST引腳的電平高低,,實(shí)現(xiàn)數(shù)據(jù)的寫(xiě)入和讀取。圖4為uPD42280的讀、寫(xiě)周期時(shí)序,。
在寫(xiě)控制周期,,WE若處于低有效狀態(tài)(WRST此時(shí)為高電平),數(shù)據(jù)在下一周期上升沿到來(lái)前寫(xiě)入存儲(chǔ)器地址中,;WE若處于高禁能狀態(tài),。寫(xiě)入暫停,寫(xiě)地址指針保持,。在WE處于低有效狀態(tài)時(shí),。若WRST處于低電平,則寫(xiě)地址指針將從當(dāng)前地址回到地址0,,WRST回復(fù)高電平后,,數(shù)據(jù)也將從地址0開(kāi)始寫(xiě)入。在讀控制周期,,RE若處于低有效狀態(tài)(RRST此時(shí)為高電平),,數(shù)據(jù)在下一周期上升沿到時(shí)被讀取,;RE若處于高禁能狀態(tài),,讀取暫停,讀地址指針保持,。在RE處于低有效狀態(tài)時(shí),,若RRST處于低電平,則讀地址指針將從當(dāng)前地址回到地址0,,RRST回復(fù)高電平后,,數(shù)據(jù)也將從地址0開(kāi)始讀取。
在本系統(tǒng)中,,uPD42280的讀寫(xiě)時(shí)鐘與TLC5510的工作時(shí)鐘使用同一信號(hào)源(4 MHz),,既保證了FIFO的寫(xiě)操作與A/D轉(zhuǎn)換操作的同步,避免出現(xiàn)數(shù)據(jù)漏接或混接現(xiàn)象,,又可以使數(shù)據(jù)讀取時(shí),,讀取速率僅由處理器IO口的讀取時(shí)間決定。通過(guò)處理器IO口控制讀,、寫(xiě)使能信號(hào),,讀、寫(xiě)地址復(fù)位信號(hào),,可完成一幀圖像數(shù)據(jù)的讀寫(xiě)和更新,。在處理器的總線(xiàn)頻率為32 MHz時(shí),單行視屏信號(hào)掃描時(shí)間內(nèi)(約50 us),,IO口最終可讀入約190個(gè)有效像素的灰度值,。去除行消隱區(qū)和圖像中心對(duì)正需要省略的點(diǎn),本系統(tǒng)每行視頻信號(hào)可采集到的有效像素點(diǎn)為160個(gè)。
需要注意的是,,uPD42280本身外圍電路很簡(jiǎn)單,,只需要在電源與地之間加1個(gè)去耦電容即可,。但是由于FIFO存儲(chǔ)器有別于RAM,,是不能進(jìn)行內(nèi)部尋址操作的,只能是簡(jiǎn)單的地址復(fù)位,。所以在軟件控制時(shí)一定要注意邏輯,,嚴(yán)格按照讀寫(xiě)時(shí)序去控制4個(gè)引腳,才能保證一場(chǎng)圖像的完整寫(xiě)入和讀取,。
本系統(tǒng)創(chuàng)新之處在于將高速A/D轉(zhuǎn)換器TLC5510與FIFO存儲(chǔ)器uPD42280聯(lián)合使用,,實(shí)現(xiàn)視頻信號(hào)的轉(zhuǎn)換和數(shù)據(jù)存儲(chǔ)。這樣做使得整個(gè)前端的轉(zhuǎn)換和存儲(chǔ)完全由幾個(gè)IO口控制,,對(duì)單片機(jī)本身的性能要求低,、資源要求少,僅僅用到了單片機(jī)的兩路中斷和多路普通IO口,。這樣的設(shè)計(jì)使得本系統(tǒng)移植性很強(qiáng),,可用于多種單片機(jī)或DSP。并且這兩款核心器件都是8 bit并行數(shù)據(jù)輸入輸出,,速度很快,,可以實(shí)現(xiàn)視頻數(shù)據(jù)的高速傳輸。
3 軟件流程
軟件部分主要包括初始化,、寫(xiě)操作,、讀操作和圖像處理。首先將處理器的IO口,,中斷口初始化,,PORTB8位作為數(shù)據(jù)入口,輸入使能,;PORTK0~PORTK3作為存儲(chǔ)器的讀寫(xiě)使能和地址控制線(xiàn),,輸出使能,PORTJ0,、PORTJ1分別響應(yīng)行,、場(chǎng)中斷,上升沿觸發(fā),。
主函數(shù)是一個(gè)無(wú)限循環(huán),,不斷檢測(cè)圖像是否采集完成,如果采集完成則進(jìn)行圖像處理,,然后作出相應(yīng)的控制輸出,。場(chǎng)中斷服務(wù)函數(shù)的主要功能是將行計(jì)數(shù)器清零,寫(xiě)地址回零,為新一幀圖像作準(zhǔn)備,。行中斷服務(wù)函數(shù)主要功能是行計(jì)數(shù)器自加,,用以判斷圖像當(dāng)前的行數(shù)。判斷采集是否開(kāi)始,,控制寫(xiě)入使能,,判斷采集是否結(jié)束,控制寫(xiě)入禁能,,控制讀取地址回零,,讀取使能,將數(shù)據(jù)經(jīng)過(guò)一級(jí)緩沖,,通過(guò)8位數(shù)據(jù)總線(xiàn)讀入單片機(jī)的二維數(shù)組中,,并通知主函數(shù)圖像數(shù)據(jù)準(zhǔn)備好了。具體流程如圖5所示,。
4 實(shí)驗(yàn)數(shù)據(jù)
實(shí)驗(yàn)環(huán)境是白底黑線(xiàn)的模型跑道,,一場(chǎng)圖像數(shù)據(jù)的實(shí)際采集像素點(diǎn)為160個(gè)x20行,圖像處理的算法主要是邊緣檢測(cè)和一次線(xiàn)性插值,,目的是得到跑道的中心線(xiàn)軌跡,。圖6所示為單行A/D轉(zhuǎn)換數(shù)據(jù),其中灰度值高的對(duì)應(yīng)白板,,灰度值低的對(duì)應(yīng)黑線(xiàn),,橫坐標(biāo)為每個(gè)采樣點(diǎn)在實(shí)際圖像中的X軸的比例坐標(biāo),量綱是1,。
圖7所示為該系統(tǒng)對(duì)不同道路類(lèi)型的識(shí)別情況,,上邊是攝像頭拍攝的實(shí)際圖像,下邊是圖像數(shù)據(jù)經(jīng)邊緣檢測(cè)和線(xiàn)性插值處理之后得到的中心線(xiàn)軌跡,。橫坐標(biāo)為每行中心線(xiàn)在實(shí)際圖像中的X軸的比例坐標(biāo),,縱坐標(biāo)為每行中心線(xiàn)在實(shí)際圖像中的Y軸的比例坐標(biāo),量綱為1,。該橫,、縱坐標(biāo)可以通過(guò)對(duì)圖像的實(shí)際測(cè)量標(biāo)定得到現(xiàn)實(shí)世界的二維坐標(biāo)。再將對(duì)應(yīng)值存入單片機(jī)一個(gè)靜態(tài)的二維數(shù)組中,,控制需要時(shí)通過(guò)查表提取使用,;也可以根據(jù)三維坐標(biāo)變化計(jì)算得出。
可以看出,,在跑道中心線(xiàn)軌跡與實(shí)際圖像符合得較好,。曲線(xiàn)的軌跡能很好地反映跑道特征,從而較為容易地判斷跑道類(lèi)型,,為下一步控制策略提供了可靠的信息依據(jù),。
5 結(jié)論
本文提出基于高速A/D轉(zhuǎn)換器TLC5510和FIFO存儲(chǔ)器uPD42102的視頻采集系統(tǒng),,為普通單片機(jī)實(shí)現(xiàn)視頻信號(hào)的高速、高精度采集提供了一種新思路,。該系統(tǒng)電路簡(jiǎn)單穩(wěn)定,,移植性較強(qiáng),對(duì)徽處理器要求低,,可適用于絕大多數(shù)CCD或CMOS攝像頭輸出的復(fù)合視頻信號(hào)采集,。實(shí)驗(yàn)證明,該系統(tǒng)可以為圖像處理提供可靠的前端硬件平臺(tái),。