《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于TMS320DM6437的視頻采集
基于TMS320DM6437的視頻采集
劉德勇,宋 弘,孔志強(qiáng)
(四川理工學(xué)院 自動(dòng)化與電子工程學(xué)院,四川 自貢 643000)
摘要: 設(shè)計(jì)了一種基于TMS320DM6437的數(shù)字視頻采集系統(tǒng),以適應(yīng)現(xiàn)代采集系統(tǒng)高性能、快速性以及數(shù)字化的需要。該設(shè)計(jì)方法分為CCD傳感器、達(dá)芬奇系列DSP上集成的視頻處理子系統(tǒng)組件(VPSS)和顯示器3部分,不需要外接編解碼芯片,直接連接數(shù)字?jǐn)z像頭(CCD)。實(shí)驗(yàn)結(jié)果表明,該視頻采集系統(tǒng)采集的圖像色彩均勻,畫(huà)面清晰,采集速度快,具有良好的擴(kuò)展性。
Abstract:
Key words :

摘  要: 設(shè)計(jì)了一種基于TMS320DM6437的數(shù)字視頻采集系統(tǒng),以適應(yīng)現(xiàn)代采集系統(tǒng)高性能、快速性以及數(shù)字化的需要。該設(shè)計(jì)方法分為CCD傳感器、達(dá)芬奇系列DSP上集成的視頻處理子系統(tǒng)組件(VPSS)和顯示器3部分,不需要外接編解碼芯片,直接連接數(shù)字?jǐn)z像頭(CCD)。實(shí)驗(yàn)結(jié)果表明,該視頻采集系統(tǒng)采集的圖像色彩均勻,畫(huà)面清晰,采集速度快,具有良好的擴(kuò)展性。
關(guān)鍵詞: 數(shù)字?jǐn)z像機(jī);VPSS;VPFE;VPBE;TMS320DM6437

 視頻技術(shù)在日常生活中的地位顯得越來(lái)越重要。視頻圖像不清晰、噪聲污染、分辨率低等原因?qū)е乱曨l質(zhì)量低。針對(duì)這個(gè)問(wèn)題,提出了用CCD傳感器獲取外部的圖像,因?yàn)镃CD傳感器在靈敏度、分辨率、噪聲控制等方面都優(yōu)于CMOS傳感器,可以獲取高質(zhì)量的圖像產(chǎn)品。選用TMS320DM6437作為處理器,它是一款高性能的多媒體處理器,有利于在交通、生活小區(qū)、金融、工廠、校園等領(lǐng)域發(fā)揮更好的作用。
1 系統(tǒng)組成及其原理
 系統(tǒng)由CCD傳感器模塊、處理器和顯示器模塊組成,系統(tǒng)的整體框圖如圖1所示。TMS320DM6437處理器是TI公司專(zhuān)為低成本、高性能視頻應(yīng)用開(kāi)發(fā)的32位定點(diǎn)DSP達(dá)芬奇技術(shù)處理器。該器件采用TI第2代超長(zhǎng)指令字(VLIW)結(jié)構(gòu)的TMS320C64X+DSP內(nèi)核,主頻可達(dá)700 MHz,支持8個(gè)8位或4個(gè)16位并行MAC(Multiply-Accumulates)運(yùn)算,峰值處理能力高達(dá)5 600 MIPS。針對(duì)視頻應(yīng)用,TMS320DM6437還提供了強(qiáng)大的視頻處理子系統(tǒng)VPSS(Video Processing Sub Systern),其包括一個(gè)視頻處理前端VPFE(Video Processing Front End)和一個(gè)視頻處理后端VPBE(Video Processing Back End),在控制方面提高了其配置和使用的簡(jiǎn)易性。這一子系統(tǒng)提供的各種接口為視頻的采集和顯示處理提供了極大的便利。

 CCD傳感器實(shí)時(shí)采集視頻圖像并將之轉(zhuǎn)換成模擬視頻信號(hào),通過(guò)視頻電纜把模擬視頻信號(hào)送給TVP5146視頻A/D轉(zhuǎn)換芯片轉(zhuǎn)成數(shù)字視頻信號(hào),通過(guò)TMS320DM6437的硬件連線傳送輸入VPFE,應(yīng)用程序接收到一幅完整的視頻幀后,將它傳送給VPBE,VPBE將此數(shù)字視頻信號(hào)編碼輸出,通過(guò)TMS320DM6437系統(tǒng)的視頻輸出接口電路將此視頻信號(hào)轉(zhuǎn)換成模擬信號(hào)輸出,通過(guò)視頻電纜,信號(hào)最終傳送顯示器進(jìn)行顯示。
2 視頻處理子系統(tǒng)硬件結(jié)構(gòu)
 VPFE用于輸入數(shù)字視頻數(shù)據(jù),為多種標(biāo)準(zhǔn)的數(shù)字視頻輸入提供接口,并為輸入的數(shù)字視頻數(shù)據(jù)作必要的預(yù)處理;VPBE用于輸出視頻數(shù)據(jù),以驅(qū)動(dòng)顯示器顯示視頻圖像。VPFE和VPBE統(tǒng)稱(chēng)為視頻處理子系統(tǒng),結(jié)構(gòu)如圖2所示。

2.1 VPFE
 VPFE提供了一個(gè)豐富和強(qiáng)大的視頻輸入接口,系統(tǒng)包括CCD控制(CCDC)、預(yù)覽器、縮放器、H3A和直方圖模塊。
2.1.1 CCD控制器
 CCDC接收從傳感器傳送來(lái)的原始圖像/視頻數(shù)據(jù)或從視頻解碼器設(shè)備接收各種格式的YUV數(shù)據(jù),為圖像傳感器和數(shù)字視頻提供了一個(gè)接口。CCD控制器的輸出需要另外處理,這種處理在預(yù)覽器或圖像處理的軟件算法中實(shí)現(xiàn),才能把原始圖像轉(zhuǎn)化成最終處理的圖像。同時(shí),原始數(shù)據(jù)輸入到CCD控制器,可以用于計(jì)算各種統(tǒng)計(jì)數(shù)據(jù)(H3A和直方圖)以控制圖像/視頻的調(diào)節(jié)參數(shù)。
2.1.2 預(yù)覽器
 預(yù)覽器是一個(gè)圖像處理模塊,用來(lái)配置各種傳感器類(lèi)型、圖像質(zhì)量和視頻幀速率。預(yù)覽器把從傳感器(CMOS或CCD)傳送來(lái)的未經(jīng)處理的圖像/視頻轉(zhuǎn)換為YCbCr4:2:2數(shù)據(jù)。預(yù)覽器的輸出用于視頻壓縮和外部顯示,如一個(gè)NTSC/PAL模擬編碼器或者一個(gè)數(shù)字液晶顯示器。
2.1.3 縮放器
 縮放器用來(lái)實(shí)現(xiàn)圖像和視頻的縮放,縮放范圍為1/4~4倍,它可以接收來(lái)自預(yù)覽器和DDR2的圖像/視頻。
2.1.4 H3A
 H3A為自動(dòng)對(duì)焦(Auto Focus)、自動(dòng)白平衡(Auto WhiteBlance)和自動(dòng)曝光(Auto Exposure)的控制環(huán)路。它包含兩個(gè)主要模塊:自動(dòng)對(duì)焦(AF)引擎裝置和自動(dòng)曝光(AE)與自動(dòng)白平衡(AWB)引擎裝置。
2.1.5 直方圖
直方圖模塊處理彩色像素獲取統(tǒng)計(jì)信息,提供給H3A模塊實(shí)現(xiàn)各種3A算法,以平滑最終的輸出圖像/視頻。
2.2 VPBE
 VPBE用于實(shí)現(xiàn)視頻圖像的輸出顯示,它包括OSD模塊、VENC模塊。
2.2.1 OSD模塊
 OSD的主要功能就是把視頻數(shù)據(jù)和位圖數(shù)據(jù)混合集成給視頻解碼器以YCbCr格式輸出到VENC中,視頻和顯示數(shù)據(jù)從外部存儲(chǔ)器讀入,一般為DDR2。OSD通過(guò)控制器和參數(shù)寄存器編程實(shí)現(xiàn)其功能。
2.2.2 VENC模塊
 VENC包含數(shù)字LCD(DLCD)和模擬(DAC等)接口。視頻編碼器產(chǎn)生模擬的視頻輸出。DLCD控制器產(chǎn)生數(shù)字的RGB/YCbCr數(shù)據(jù)輸出和時(shí)鐘信號(hào)。
3 視頻處理子系統(tǒng)程序設(shè)計(jì)
 如圖3所示,一個(gè)CCD傳感器與TVP5146解碼器連接在一起,把模擬復(fù)合信號(hào)變成數(shù)字YUV4:2:2數(shù)據(jù)。該數(shù)據(jù)通過(guò)8位數(shù)據(jù)總線被送到TMS320DM6437處理器。在解碼器與TMS320DM6437之間有一個(gè)I2C總線,使TMS320DM6437充當(dāng)主配置TVP5416。

 

 

 使用VPFE驅(qū)動(dòng)程序配置TVP5146解碼器和捕獲視頻輸入數(shù)據(jù)且在顯示器上顯示出捕獲數(shù)據(jù)。CCD傳感器輸出的數(shù)據(jù)是NTSC D1分辨率,而在VPFE,CCD控制器模塊已足夠靈活來(lái)獲取任何不大于D1的幀??梢酝ㄟ^(guò)以下步驟配置VPFE驅(qū)動(dòng)來(lái)獲取并顯示數(shù)據(jù):
 (1)通過(guò)調(diào)用FVID_create()和傳遞參數(shù)ccdcParams()來(lái)創(chuàng)建ccdcHandle作為CCDC的通道。在傳遞函數(shù)ccdcParams(),數(shù)據(jù)流(dateflow)被設(shè)置為PSP_VPFE_CCDC_ YCBCR_8,ffMode設(shè)置為PSP_VPSS_FRAME_MODE,高度和寬度設(shè)置為480和720,這樣CCDC模塊就能配置來(lái)捕獲交錯(cuò)NTSC D1幀。在傳遞函數(shù)ccdcParams()中,有3個(gè)函數(shù)與TVP5146解碼器有關(guān),分別為:
?、貾SP_VPFE_TVP5146_Open()被調(diào)用:當(dāng)CCDC通道被創(chuàng)建并初始化I2C總線;
?、赑SP_VPFE_TVP5146_Close()被調(diào)用:當(dāng)CCDC通道被刪除并重新初始化I2C總線;
?、跴SP_VPFE_TVP5146_Control()被調(diào)用:當(dāng)一個(gè)特定的控制命令來(lái)配置TVP5416。
 (2)通過(guò)調(diào)用FVID_control()和傳遞參數(shù)TVP5146Params()來(lái)配置TVP5146。在自動(dòng)模式下,TVP5146譯碼器配置為捕獲復(fù)合信號(hào),因?yàn)樵谀J(rèn)情況下大多數(shù)TVP5146的配置參數(shù)設(shè)置為最佳的典型用法。
 (3)通過(guò)調(diào)用FVID_alloc()為CCDC模塊分配一些幀緩沖。隊(duì)列緩沖區(qū)到驅(qū)動(dòng)程序通過(guò)調(diào)用FVID_queue()。
?。?)在VPBE中,創(chuàng)建vid0Handle作為VIDWIN0通道。通過(guò)調(diào)用FVID_creat()和傳遞參數(shù)vid0Params()來(lái)配置VIDWIN0顯示YUV4:2:2捕獲的數(shù)據(jù)格式和NTSC D1分辨率。
 (5)通過(guò)調(diào)用FVID_alloc()為VIDWIN0模塊分配一些幀緩沖。隊(duì)列緩沖區(qū)到驅(qū)動(dòng)程序通過(guò)調(diào)用FVID_queue()。
?。?)在VPBE中創(chuàng)建vencHandle作為VENC通道,通過(guò)調(diào)用FVID_creat()和傳遞參數(shù)vencParams()來(lái)配置VENC模塊顯示復(fù)合信號(hào)。
?。?)按指定的次數(shù)開(kāi)始循環(huán),獲取并顯示輸入的視頻信號(hào):
 ①調(diào)用FVID_exchange()得到一個(gè)捕獲視頻幀并傳遞一個(gè)空的幀緩沖到CCDC通道。當(dāng)CCDC模塊已經(jīng)捕獲了一個(gè)新的幀后,函數(shù)返回;
?、谡{(diào)用FVID_exchange()傳輸已捕獲數(shù)據(jù)的幀緩沖到VIDWIN0和接收一個(gè)新的幀緩沖被顯示之后,函數(shù)返回;
?。?)一旦程序退出循環(huán),釋放所有通道和幀緩沖區(qū):
?、僬{(diào)用FVID_free()釋放VIDWIN0幀緩沖,調(diào)用FVID_delete()釋放VIDWIN0通道;
 ②調(diào)用FVID_free()釋放CCDC幀緩沖,調(diào)用FVID_delete()釋放CCDC通道;
?、壅{(diào)用FVID_delete()釋放VENC通道。
4 結(jié)果測(cè)試
 使用復(fù)合電纜把顯示器、CCD傳感器與TMS320DM6437相連,啟動(dòng)板上電源,啟動(dòng)CCS,打開(kāi)項(xiàng)目文件(.jpt);通過(guò)點(diǎn)擊CCS菜單File→Load Program,加載文件;點(diǎn)擊CCS菜單Debug→Reset CPU,然后點(diǎn)擊CCS菜單Debug→Restart,最后選擇F5鍵運(yùn)行程序,捕獲的視頻在顯示器上顯示出來(lái),如圖4所示。

 在視頻采集系統(tǒng)中將攝像頭的分辨率設(shè)置為720×480,圖像傳感器輸出的原始圖像信號(hào)送入視頻解碼器TVP5146進(jìn)行視頻解碼,然后輸出進(jìn)入TMS320DM6437處理器組成的DSP系統(tǒng),在DSP系統(tǒng)中主要進(jìn)行必要的圖像預(yù)處理以獲得良好的圖像質(zhì)量。采集到的視頻圖像色彩均衡、畫(huà)面清晰,圖像采集速度快且具有良好的擴(kuò)展性。當(dāng)需要對(duì)視頻進(jìn)行處理(如灰度變換、黑白圖像變換等)時(shí),進(jìn)一步為圖像的提取和識(shí)別作好準(zhǔn)備,只需要添加相應(yīng)的程序即可,無(wú)需改變硬件,降低了開(kāi)發(fā)成本。
參考文獻(xiàn)
[1] Texas Instruments Incorporated.SPRU977D.TMS320DM643x DMP Video Processing Front End (VPFE)User′s Guide[S].2010.
[2] Texas Instruments Incorporated.SPRU952A .TMS320DM643x DMP Video Processing Back End (VPBE) User′s Guide[S].2007.
[3] Texas Instruments Incorporated.SPRU983A.TMS320DM643x DMP Peripherals Overview Refe- rence Guide[S].2007.
[4] BAYER B E. Color imaging array:US.3971065[P]. 1976:56-60.
[5] 米本和也.CCD/COMS圖像傳感器基礎(chǔ)與應(yīng)用[M].北京:科學(xué)出版社,2006.
[6] 張德剛,陳文藝,陳瑞.基于DM6437的數(shù)字?jǐn)z影機(jī)[J].電子設(shè)計(jì)工程,2011,19(8):130.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。