基于DM6437的數(shù)字?jǐn)z像機(jī)
摘要:為了適應(yīng)現(xiàn)代采集系統(tǒng)的小型化以及數(shù)字化需要,設(shè)計了一種基于達(dá)芬奇技術(shù)DSP芯片的數(shù)字圖像采集系統(tǒng)。這種設(shè)計方法不需要外接編解碼芯片,直接連接數(shù)字?jǐn)z像頭,減少了D/A轉(zhuǎn)換帶來的圖像干擾,同時利用了迭芬奇系列DSP上集成的視頻處理子系統(tǒng)組件(VPSS),其中的視頻處理前端(VPFE)以硬件方式對數(shù)字視頻圖像進(jìn)行視頻采集、CFA插值、色彩空問變換等圖像預(yù)處理操作,簡化了軟件設(shè)計。結(jié)果顯示,該系統(tǒng)采集到的視頻圖像清晰、穩(wěn)定、色彩均衡,滿足普通攝像機(jī)對視頻圖像的要求。
關(guān)鍵詞:數(shù)字?jǐn)z像機(jī);視頻采集;DM6437;VPFE
隨著社會的發(fā)展變化,視頻監(jiān)控已應(yīng)用于交通、金融、電力、家庭、公安消防等領(lǐng)域,視頻監(jiān)控的技術(shù)和手段也在不斷地發(fā)展和提高。攝像機(jī)的關(guān)鍵器件為圖像傳感器。目前,圖像傳感器主要分為為CCD和CMOS兩種類型,CCD傳感器在靈敏度、分辨率、噪聲控制等方面都優(yōu)于CMOS傳感器,而CMOS傳感器則具有低成本、低功耗、以及高整合度的特點(diǎn)。不過,隨著CCD與CMOS傳感器技術(shù)的進(jìn)步,兩者的差異有逐漸縮小的態(tài)勢。用于視頻監(jiān)控系統(tǒng)中的視頻圖像處理芯片主要DSP,DSP芯片強(qiáng)大的數(shù)據(jù)計算能力可以完成很多復(fù)雜的算法。TI也針對圖像處理方面發(fā)布了達(dá)芬奇系列的DSP芯片,芯片上面集成了一個視頻處理子系統(tǒng)專用于視頻采集和顯示,極大的方便了用戶進(jìn)行視頻采集和視頻顯示。
1 攝像機(jī)工作原理以及關(guān)鍵技術(shù)說明
數(shù)字?jǐn)z像機(jī)是指把圖像傳感器采集到的數(shù)字圖像信號直接傳送給后端的圖像處理芯片進(jìn)行處理,不進(jìn)行傳統(tǒng)模擬攝像機(jī)的數(shù)字圖像信號的數(shù)/模、模/數(shù)轉(zhuǎn)換過程,這樣就避免圖像信號數(shù)/模轉(zhuǎn)換過程帶來的噪聲影響。圖像傳感器送出的Bayer格式數(shù)字圖像信號將被直接被后端的圖像處理芯片采集,然后對采集到的視頻信號進(jìn)行CFA插值、色彩空間轉(zhuǎn)換等操作。最后生成YUV格式的視頻圖像,生成的YUV格式視頻圖像可以存儲起來或者通過網(wǎng)口發(fā)送到網(wǎng)絡(luò)上。
Bayer格式:CMOS圖像傳感器光敏區(qū)域內(nèi)的每一個像素感應(yīng)一種顏色,其中R感應(yīng)紅光,G代表綠光,B感應(yīng)藍(lán)光。奇行掃描輸出為R、G、R、G…,偶行掃描輸出為G、B、G、B…。其格式如圖1所示。
CFA插值:Bayer格式圖像信號每像素只代表一種顏色,而像素顏色需要3原色來進(jìn)行表示,需要對Bayer格式的圖像信號進(jìn)行插值,輸出的圖像使用臨近像素中相同顏色成分做線性平均計算來補(bǔ)償每個像素丟失的顏色。最終,每像素用R、G、B 3種顏色來表示也就是所謂RGB格式圖像。
色彩空間轉(zhuǎn)換:在圖形圖像的處理過程中,RGB的效率不是很高,因為在產(chǎn)生任何一種顏色時,R、G、B 3者需要同樣的帶寬,修改像素的亮度和色度的時候需要3者全部修改。而YUV色彩空間描述了亮度和色度的概念,Y指亮度,U指色調(diào),V指飽和度。色彩空間的轉(zhuǎn)換關(guān)系如圖2所示。
[!--empirenews.page--]
2 攝像機(jī)硬件組成
數(shù)字?jǐn)z像機(jī)主要由圖像傳感器、DSP芯片和顯示器組成。系統(tǒng)整體框圖如圖3所示。
CMOS攝像頭主要用來完成圖像信息的光電轉(zhuǎn)換,輸出信號為數(shù)字Raw Bayer模式圖像信號。輸出Bayer模式圖像信號將直接通過視頻處理前端(VPFE)的視頻輸入端口進(jìn)入到視頻處理子系統(tǒng)中。視頻處理前端將接收到的視頻信號進(jìn)行處理后存儲,由于需要存儲大量的視頻圖像數(shù)據(jù),所以存儲器容量需要足夠大,TI專門為此設(shè)計了一個32位、256 M字節(jié)的高速、大容量的DDR2存儲器來進(jìn)行視頻圖像數(shù)據(jù)的高速存儲。視頻處理后端(VPBE)讀取存儲在DDR2中的視頻圖像信號,通過視頻輸出端口來傳送到顯示器上進(jìn)行顯示。
3 TMSDM6437 DSP硬件結(jié)構(gòu)
TMS320DM6437是TI公司推出的、專門為高性能、低成本視頻應(yīng)用開發(fā)的、主頻600MHz的、32位定點(diǎn)DSP達(dá)芬奇技術(shù)的處理器系列。DM643 7采用2級CaChe存儲器體系結(jié)構(gòu),片上具有64通道增強(qiáng)型DMA控制器EDMA,支持復(fù)雜的數(shù)據(jù)類型的傳輸,有利于圖像數(shù)據(jù)的高效傳輸和格式變換。DM6437包含豐富的外部存儲器接口,同時還帶有豐富的外設(shè)接口,可以很方便和其他器件相連接通信。
DM6437片上的視頻輸入/輸出接口統(tǒng)稱為視頻處理子系統(tǒng)VPSS,DM6437的視頻處理子系統(tǒng)由2部分組成:1是視頻處理前端(VPFE),用于輸入數(shù)字視頻數(shù)據(jù),為多種標(biāo)準(zhǔn)的數(shù)字視頻輸入提供接口,并為輸入的數(shù)字視頻數(shù)據(jù)作必要的預(yù)處理;2是視頻處理后端(VPBE),用于輸出視頻數(shù)據(jù),以驅(qū)動顯示器顯示視頻圖像。VPSS功能結(jié)構(gòu)圖如圖4所示。
1)視頻處理前端VPFE DM6437視頻處理前端(VPFE)為視頻處理系統(tǒng)提供2大功能,1是為多種標(biāo)準(zhǔn)數(shù)字視頻輸入提供無縫接口,2是為各種視頻處理應(yīng)用提供必要的預(yù)處理。
CCDC為數(shù)字視頻輸入接口,它可直接與CMOS攝像頭連接,支持Bayer BGB圖像格式輸入或者是模擬視頻信號通過編解碼芯片轉(zhuǎn)換為8//10位BT.656或者8/16行位帶行、場同步信號的YUV4:2:2數(shù)字視頻流。
預(yù)覽器(Priview)用于Bayer RGB模式的是視頻輸入,由硬件來實現(xiàn)Bayer RGB圖像格式的視頻數(shù)據(jù)轉(zhuǎn)換為YUV4:2:2的圖像格式。
縮放器(Resizer)接受來自于預(yù)覽器、CCDC控制器或者存儲器的視頻數(shù)據(jù),實現(xiàn)圖像大小的縮放,縮放范圍為1/4~4倍。
H3A為自動對焦(Auto Focus)、自動白平衡(Auto White Blanee)和自動曝光(Auto Exposure)。H3A只能用于Raw Bayer模式數(shù)據(jù),選擇對應(yīng)的矩陣就可以通過硬件來完成自動對焦、自動白平衡和自動曝光。
統(tǒng)計器(Histogram)用來對視頻圖像中的各種顏色信息進(jìn)行直方圖統(tǒng)計。
2)視頻處理后端VPBE DM6437視頻處理后端(VPBE)用于實現(xiàn)視頻圖像的輸出顯示,包括OSD模塊和VENC模塊。
OSD(On-Screen Display)模塊主要用來把來自于不同源的視頻數(shù)據(jù)、圖形以及字符復(fù)合為同一個數(shù)字視頻流,然后將復(fù)合后的視頻流以YebCr格式輸出到VENC中。
VENC(Video Encode)主要有3個模塊:視頻編碼模塊將產(chǎn)生模擬視頻數(shù)據(jù)輸出、數(shù)字LCD控制器產(chǎn)生數(shù)字RGB/YChCr數(shù)據(jù)輸出以及需要的時序信號、時序產(chǎn)生器模塊將產(chǎn)生視頻編碼模塊和數(shù)據(jù)LCD控制器模塊需要的輸入和輸出時鐘信號。
[!--empirenews.page--]
4 攝像機(jī)運(yùn)行過程
4.1 視頻處理前端(VPFE)處理
對于DM6437芯片上集成的VPFE組件,我們主要用到了CCD控制器和預(yù)覽器模塊。CCD控制器作為接口接收外部視頻信號,預(yù)覽器則實現(xiàn)RGB到Y(jié)ChCr的轉(zhuǎn)換。其內(nèi)部設(shè)置的主要圖像處理模塊如圖5所示。
對于CCD控制器(CCDC)中,采樣和數(shù)據(jù)移位模塊用來設(shè)置鎖存器、數(shù)據(jù)時鐘極性和CCD像素數(shù)據(jù)寬度的選擇。光黑鉗位模塊用來去掉圖像數(shù)據(jù)幀中的噪聲。黑像素補(bǔ)償用來調(diào)整各個顏色通道的信號電平。數(shù)據(jù)格式化和視頻端像素選擇用來設(shè)置行/場同步信號的長度,以及來此傳感器的圖像數(shù)據(jù)幀的格式,反映的是傳感器的讀出幀結(jié)構(gòu)。
對于預(yù)覽器(Preview)中,預(yù)覽器接口用來選擇視頻源的接口方向以及設(shè)置輸入幀的尺寸。中值濾波和噪聲濾波則用來濾除圖像數(shù)據(jù)中的噪聲。CFA插值用來完成Bayer模式RGB圖像格式數(shù)據(jù)到RGB數(shù)據(jù)格式的轉(zhuǎn)換。Gamma校正用來調(diào)整視頻圖像機(jī)器顯示的非線性特性。RGB到Y(jié)CbCr用來完成圖像從RGB色彩空間到Y(jié)CbCr色彩空間的轉(zhuǎn)換。4:2:2下采樣模塊使圖像數(shù)據(jù)轉(zhuǎn)變?yōu)閅CbCr4:2:2格式。緩沖器接口用來圖像數(shù)據(jù)的流向,如果為SDRAM則需要設(shè)置SDRAM的開始地址以及行偏移地址。
4.2 系統(tǒng)運(yùn)行過程
整個系統(tǒng)的運(yùn)行過程主要為系統(tǒng)的初始化以及對視頻端口的配置。其主要運(yùn)行過程如圖6所示。
在運(yùn)行整個視頻采集系統(tǒng)之前,需要針對DSP芯片的管腳進(jìn)行定義,因為DSP的管腳絕大部分都是復(fù)用管腳,需要根據(jù)需求來決定芯片管腳的作用和輸出的信號,芯片管腳定義通過設(shè)置芯片內(nèi)部PINMUX1、PINMUX2寄存器來決定,所以首先需要運(yùn)行芯片初始化函數(shù)。
系統(tǒng)初始化:主要用于初始化DM6437的系統(tǒng)時鐘、DDR2時鐘、L2緩存的存儲器空間分配、外部存儲器空間映射以及復(fù)用管腳分配等功能。
前端處理:用來配置CCDC為10-bit Raw Bayer模式接口,接收來自數(shù)字?jǐn)z像頭的裸數(shù)據(jù),同時定義了視頻圖像的分辨率為:720x576。使能了光黑鉗位模塊和黑電平補(bǔ)償模塊,最后設(shè)置CCDC的視頻輸出分辨率以及數(shù)據(jù)路徑流向預(yù)覽器。在預(yù)覽器接口模塊。設(shè)置接口接受來自CC-DC的10-bit Raw Bayer模式圖像數(shù)據(jù),在緩沖器接口模塊中選擇圖像數(shù)據(jù)流行為外部存儲器DDR2,指定圖像存儲地址和偏移地址。
攝像頭配置:通過I2C總線來配置CMOS攝像頭。需要對PLL設(shè)置寄存器進(jìn)行配置,設(shè)置好的時鐘信號則作為像素輸出時鐘使用。其次,需要設(shè)置圖像格式寄存器和一些控制寄存器,主用于模擬信號的增益、數(shù)字信號的增益、黑電平校正、數(shù)字偏移更正寄存器,這些寄存器的設(shè)置可以使我們得到的圖像信號更理想一些。
后端處理:用來配置視頻處理后端(VPBE)。根據(jù)VPFE的設(shè)置,VPBE設(shè)置同樣的視頻圖分辨率以,VPBE中的圖像存儲器讀取地址就是VPFE中的圖像存儲地址。在顯示窗選擇上,選擇顯示窗為video windou0,禁止其他顯示窗口。設(shè)置輸出信號為NTSC制的復(fù)合視頻信號(CVBS信號)。
5 測試結(jié)果
在視頻采集系統(tǒng)中對攝像頭的分辨率設(shè)置為720x576,采集到的視頻圖像如圖7所示。觀察采集到的視頻圖像,畫面清晰、幀數(shù)穩(wěn)定、色彩均衡,滿足普通相機(jī)、網(wǎng)絡(luò)攝像機(jī)對視頻圖像的要求。當(dāng)需要改變分辨率的時候,只改變程序中相應(yīng)的寄存器設(shè)置就可以,硬件無需變更,降低了開發(fā)成本。
6 結(jié)束語
在本文利用DaVinei技術(shù)的處理器TMSDM6437芯片,實現(xiàn)了數(shù)字視頻圖像的采集功能。這種方法充分利用到了該系列芯片上的集成組件——視頻處理子系統(tǒng),以硬件方式完成了視頻圖像數(shù)據(jù)的采集和一些圖像預(yù)處理操作,使后續(xù)只進(jìn)行圖像提取和識別等,而不需要進(jìn)行圖像數(shù)據(jù)的轉(zhuǎn)換、編解碼等操作,簡化了此類系統(tǒng)的設(shè)計。由于視頻處理子系統(tǒng)為芯片上的硬件集成組件,運(yùn)行速度快,這些都為小型、實時數(shù)字采集系統(tǒng)提供了保證。