專利名稱::基于s3c2440a的真彩色圖像采集方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種在嵌入式系統(tǒng)中實(shí)現(xiàn)真彩色圖像采集和處理的方法,用于多功能便攜式控制系統(tǒng)中進(jìn)行高分辨率、高精度圖像采集及處理。
背景技術(shù):
:目前常用的圖像采集系統(tǒng),大多以通用計(jì)算機(jī)為平臺或者起輔助處理作用,在微型化、便攜式和無線遠(yuǎn)程傳輸?shù)确矫娲嬖谥蛔恪S行iT設(shè)計(jì)的系統(tǒng)通常需要各種芯片結(jié)合來實(shí)現(xiàn),系統(tǒng)比較復(fù)雜,在控制、監(jiān)視或管理方面也不夠靈活,功能也比較單一。嵌入式技術(shù)已經(jīng)成當(dāng)前最熱門、最具發(fā)展前景的IT應(yīng)用領(lǐng)域之一。三星公司的S3C2440A使用ARM920T內(nèi)核,主頻是400M,最高處理速度為533MHz,是同類嵌入式CPU中最快的--款,并兼有低功耗、高度集成等特性。它集成了一個攝像頭接口(CAMIF)。CAMIF支持ITURBT.601/656YCbCr8-位標(biāo)準(zhǔn)的圖像數(shù)據(jù)輸入,最大可采樣4096x4096像素的圖像,其圖像采集模塊簡單,硬件電路容易實(shí)現(xiàn),可實(shí)現(xiàn)在微系統(tǒng)中監(jiān)控圖像變化以及遠(yuǎn)程傳輸。但是該接口默認(rèn)的視頻輸入格式ITURBT.601/656規(guī)范,不能直接對真彩色圖像數(shù)據(jù)(RawRGB格式)進(jìn)行采集處理。對于通用的ITURBT.601/656標(biāo)準(zhǔn)圖像,雖然具有較好視覺效果,數(shù)據(jù)量小等特點(diǎn),但是對于精度要求比較高的圖像分析和識別,在經(jīng)過數(shù)字RGB-YCbCr-RGB轉(zhuǎn)換之后,會丟失很多原有的顏色信息,影響結(jié)果的真實(shí)性。
發(fā)明內(nèi)容針對現(xiàn)有技術(shù)存在的上述不足,本發(fā)明的目的在于提供一種利用S3C2440A提供的圖像采集通道,使用并口將數(shù)據(jù)采集到內(nèi)存后進(jìn)行處理,沒有任何失真的得到原始圖像,實(shí)現(xiàn)了高分辨率(最高可達(dá)1600萬像素)真彩色(RawRGB格式)圖像數(shù)據(jù)的采集的方法。本發(fā)明的目的是這樣實(shí)現(xiàn)的一種基于S3C2440A的真彩色圖像采集方法,包括如下步驟(1)利用S3C244()A的攝像頭接口,將采集到的數(shù)據(jù)按y,cb,cr三個地址空間來存放,存放規(guī)則為將與ITU-RBT.601/656規(guī)范中的與Y數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到y(tǒng)空間;將與ITU-RBT.601/656規(guī)范中的與Cb數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到cb空間;將與ITU-RBT.601/656規(guī)范中的與Cr數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到cr空間;(2)將上述三個地址空間的數(shù)據(jù)按如下規(guī)則進(jìn)行整理,其整理規(guī)則為將y,cb,cr三個空間中的R,G,B顏色數(shù)據(jù)分別抽取出來,抽取出來后放入循環(huán)緩沖區(qū),再利用旁邊其他的像素,為每個基色像素計(jì)算出其余兩色的值進(jìn)行顏色插值(Colorinterpolation),從而得到24位真彩色圖像數(shù)據(jù)。相比現(xiàn)有技術(shù),本發(fā)明具有如下優(yōu)點(diǎn)1、能夠?qū)崟r的采集和處理高分辨率、高精度的真彩色圖像,并且處理速度快;2、由于數(shù)據(jù)量大,處理過程復(fù)雜,當(dāng)多個進(jìn)程并發(fā)時,很可能引發(fā)"競態(tài)"造成死鎖,本設(shè)計(jì)將數(shù)據(jù)放入循環(huán)緩沖區(qū),設(shè)計(jì)恰當(dāng)?shù)娜蝿?wù)隊(duì)列和延時進(jìn)行調(diào)度,從而避免了死鎖的出現(xiàn),系統(tǒng)可以同時執(zhí)行其他任務(wù),運(yùn)行穩(wěn)定;3、可實(shí)現(xiàn)對圖像變化的遠(yuǎn)程監(jiān)控,具有微型化、便攜化和智能控制等特點(diǎn);4、本設(shè)計(jì)系統(tǒng)結(jié)構(gòu)簡單,運(yùn)行穩(wěn)定,可以同時實(shí)現(xiàn)多個功能要求。圖l是系統(tǒng)工作流程示意圖2是數(shù)據(jù)存放到y(tǒng),cr,cb三個空間的分布示意圖3是數(shù)據(jù)抽取示意圖4是數(shù)據(jù)插值示意圖。具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一歩說明如圖1所示,一種基于S3C2440A的真彩色圖像采集方法,以300萬像素為例,包括如下步驟(1)利用S3C2440A的攝像頭接口提供的通道,將采集到的數(shù)據(jù)存放到y(tǒng),cb,cr三個地址空間,存放規(guī)則為將與ITU-RBT.601/656規(guī)范中的與Y數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到y(tǒng)空間;將與ITU-RBT.601/656規(guī)范中的與Cb數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到cb空間;將與ITU-RBT.601/656規(guī)范中的與Cr數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到cr空間。例如對于默認(rèn)的ITURBT.601/656(YCrCb4:2:2)格式,攝像頭接口采集到Y(jié),Cr,Cb數(shù)據(jù)后存放在y,cr,cb三個空間的數(shù)據(jù)分布如圖2所示。(2)攝像頭輸出為RawRGB格式,R,G,B輸出順序可以通過相應(yīng)的寄存器進(jìn)行設(shè)置。例如設(shè)置攝像頭輸出R,G,B數(shù)據(jù)順序是-第一行Rl1Gi2Rl3Gi4Ri5Gi6Rl7Gl8Rl9Gi10RiiiGl12......Rlm......第一行G2iB22G23B24G25B26G27B;28G29B210G;2uB212......B2n1......第二行R3IG32R33G34R35G36R37G38R3<)G3"IR311G312............第j行Rj1Gj2Rj3Gj4Rj5Gj6Rj7Gj8Rj9Gj10Rj11Gj12......Gjm......m<=1536;j<=2048;因此,RGB數(shù)據(jù)采集到y(tǒng),cr,cb空間后,遵循一定的規(guī)則存放,例如y空間存放的數(shù)據(jù)格式如下(2048*768):<table>tableseeoriginaldocumentpage5</column></row><table>k<=768(3)將上述三個區(qū)的數(shù)據(jù)按如下規(guī)則進(jìn)行整理,其整理的抽取規(guī)則為將y,cb,cr三個空間中的R,G,B顏色數(shù)據(jù)分別抽取出來,抽取出來后放入循環(huán)緩沖區(qū),再利用旁邊其他的像素,為每個基色像素計(jì)算出其余兩色的值進(jìn)行顏色插值,從而得到24位真彩色圖像數(shù)據(jù)。申請一塊3MB的連續(xù)物理空間,用來存放DMA傳輸?shù)膱D像數(shù)據(jù)。通過以下過程將得到的數(shù)據(jù)進(jìn)行整理將y,cr,cb三個內(nèi)存空間內(nèi)的R,G,B數(shù)據(jù)分別按圖3所示的格式抽取出來,存放至Jconverter—r,converter_gl,converter—g2,converter一bl,converter一b2空間中,再將converter—gl與converter_g2中的G數(shù)據(jù)交叉整合在一起存放到converter_g空間,將converter—bl與converter—b2中的B數(shù)據(jù)交叉整合在一起存放到converter—b空間。經(jīng)過上述運(yùn)算,將R,G,B三種顏色數(shù)據(jù)值分別放在三個空間converter一r,converter—g,converter—b中,再將抽取出來的每個8位的單色R,G,B與相鄰R,G,B數(shù)據(jù)進(jìn)行顏色插值,為每個基色像素計(jì)算出其余兩色的值,即每個象素用24位來表示,從而得到24位真彩色圖像。參見圖4所示。對于在中斷上下文中處理數(shù)據(jù)量龐大的圖像數(shù)據(jù)來說,幾個進(jìn)程同時訪問同一塊內(nèi)存空間時容易造成死鎖。本設(shè)計(jì)將數(shù)據(jù)放入循環(huán)緩沖區(qū),設(shè)計(jì)恰當(dāng)?shù)娜蝿?wù)隊(duì)列和延時,從而避免了死鎖的出現(xiàn)。這種方式具有清晰度高,準(zhǔn)確度高,處理速度快等特點(diǎn)。獲得圖像數(shù)據(jù)后,可以直接在matlab下進(jìn)行顯示處理,也可以處理形成計(jì)算機(jī)可以識別的特定格式的文件。例如加入BMP文件頭信息塊、圖像描述信息塊等,形成BMP內(nèi)存文件映像,然后在計(jì)算機(jī)上的通用圖像處理軟件進(jìn)行顯示處理。利用S3C2440A提供的圖像采集通道將數(shù)據(jù)采集到內(nèi)存,此時采集到的RawRGB格式的圖像數(shù)據(jù)存放順序是不規(guī)則的,不能直接生成真彩色圖像,但是有一定的規(guī)律,通過處理可以毫無失真的恢復(fù)為原始的圖像數(shù)據(jù)格式。因此,本發(fā)明采用了這樣一種方法即申請循環(huán)緩沖區(qū),設(shè)置一定的時間等待后,再進(jìn)行處理,這樣就避免了圖像采集和用戶空間處理和拷貝的并發(fā)問題。使用延時函數(shù)進(jìn)行延時,驅(qū)動程序使用等待隊(duì)列等待數(shù)據(jù)處理,確保在一段時間后一定運(yùn)行該驅(qū)動程序,由于在中斷服務(wù)程序中不能使用喚醒函數(shù)來喚醒休眠的進(jìn)程,因此可以通過設(shè)置超時時間,使進(jìn)程休眠到該時間時就會因超時而被喚醒。延時時間通過多次試驗(yàn)確定(根據(jù)系統(tǒng)任務(wù)多少和數(shù)據(jù)量大小不同來確定合適的值),這樣可以充分利用系統(tǒng)資源,并行執(zhí)行各個任務(wù),提高了處理速度。權(quán)利要求1.基于S3C2440A的真彩色圖像采集方法,包括如下步驟(1)利用S3C2440A的攝像頭接口,將采集到的數(shù)據(jù)按y,cb,cr三個地址空間來存放,存放規(guī)則為將與ITU-RBT.601/656規(guī)范中的與Y數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到y(tǒng)空間;將與ITU-RBT.601/656規(guī)范中的與Cb數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到cb空間;將與ITU-RBT.601/656規(guī)范中的與Cr數(shù)據(jù)對應(yīng)的R或G或B數(shù)據(jù)存放到cr空間;(2)將上述三個地址空間的數(shù)據(jù)按如下規(guī)則進(jìn)行整理,其整理規(guī)則為將y,cb,cr三個空間中的R,G,B顏色數(shù)據(jù)分別抽取出來,抽取出來后放入循環(huán)緩沖區(qū),再利用旁邊其他的像素,為每個基色像素計(jì)算出其余兩色的值進(jìn)行顏色插值,從而得到24位真彩色圖像數(shù)據(jù)。2.根據(jù)權(quán)利要求1所述的基于S3C2440A的真彩色圖像采集方法,其特征在于所述攝像頭輸出的數(shù)據(jù)格式為RawRGB,S3C2440A攝像頭接口的視頻信號輸入格式為ITU-RBT.601/656規(guī)范。全文摘要本發(fā)明提供一種基于S3C2440A的真彩色圖像采集方法,它是利用S3C2440A的攝像頭接口采集真彩色圖像(RawRGB格式),將采集到的R,G,B數(shù)據(jù)存放到y(tǒng),cb,cr三個地址空間;由于數(shù)據(jù)存放的位置有規(guī)律,將上述三個空間的數(shù)據(jù)進(jìn)行抽??;再進(jìn)行顏色插值,即可得到24位真彩色圖像數(shù)據(jù)。本發(fā)明方法能夠?qū)崟r的采集高分辨率、高精度的真彩色圖像,并且處理速度快。該方法可實(shí)現(xiàn)對圖像微弱變化的實(shí)時遠(yuǎn)程監(jiān)測,系統(tǒng)結(jié)構(gòu)簡單,具有微型化、便攜化和智能控制等特點(diǎn)。常見的具有圖像采集功能的微處理器(DSP,ARM等)的內(nèi)部邏輯單元都具有類似設(shè)計(jì),因此該方案可廣泛應(yīng)用與其他圖像采集設(shè)備中,具有一定的通用性。文檔編號H04N1/60GK101170633SQ20071009301公開日2008年4月30日申請日期2007年11月21日優(yōu)先權(quán)日2007年11月21日發(fā)明者侯文生,侯長軍,彭承琳,趙德春,趙明璽,霍丹群申請人:重慶大學(xué)