亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

DSP視頻捕獲驅(qū)動(dòng)YCbCr數(shù)據(jù)格式轉(zhuǎn)換處理方法

文檔序號(hào):2567510閱讀:277來(lái)源:國(guó)知局
專利名稱:DSP視頻捕獲驅(qū)動(dòng)YCbCr數(shù)據(jù)格式轉(zhuǎn)換處理方法
技術(shù)領(lǐng)域
本發(fā)明涉及DSP (Digital Signal Processor,數(shù)字信號(hào)處理器)的圖像處理領(lǐng)域,特 別是涉及改進(jìn)TMS320DM642 (以下簡(jiǎn)稱匿642)的視頻捕獲驅(qū)動(dòng)YCbCr數(shù)據(jù)格式4:2:2轉(zhuǎn)化為 4:2:0的方法。
背景技術(shù)
數(shù)字圖像處理技術(shù)的飛速發(fā)展,使得所有圖像處理的問(wèn)題都可以用數(shù)字信號(hào)處理的形式 來(lái)解決,這為實(shí)時(shí)圖像處理的應(yīng)用提供了廣闊的空間。首先,數(shù)字信號(hào)處理中存在大量成熟 的快速算法,這些算法已經(jīng)大量地應(yīng)用于圖像處理中。其次,幾個(gè)技術(shù)發(fā)展趨勢(shì)進(jìn)一步促進(jìn) 此領(lǐng)域的發(fā)展。隨著超大規(guī)模集成電路的高速發(fā)展,包括低價(jià)位DSP、微處理器支持的并行 處理技術(shù),用于圖像數(shù)字化的低成本電荷耦合器件,使用低成本存儲(chǔ)陣列的新存儲(chǔ)技術(shù),以 及低成本、高分辨率的彩色顯示系統(tǒng)的發(fā)展,為實(shí)現(xiàn)高速信號(hào)處理和實(shí)時(shí)系統(tǒng)提供了可能。 幾年來(lái),瞬態(tài)物理國(guó)家重點(diǎn)實(shí)驗(yàn)室在研制電視導(dǎo)引頭的過(guò)程中使用了多種圖像采集處理系統(tǒng), 例如TMS320C6711、 TMS320C6416和TMS320DM642等。綜合考慮各款國(guó)內(nèi)外的圖像處理平臺(tái) 的處理速度、圖像接口、性價(jià)比等因素,TMS320DM642顯示出優(yōu)勢(shì)。這款TI公司的DSP芯 片具有內(nèi)核速度快(600MHz)、獨(dú)立的視頻端口、強(qiáng)大的存儲(chǔ)器擴(kuò)展能力、不斷下降的價(jià)格等 特點(diǎn)。
腿642上實(shí)現(xiàn)D1 (分辨率為720X576) , CIF格式(分辨率為352X288)的H. 26X或者 MPEG-4等格式的編碼和解碼過(guò)程是程序?qū)z入的視頻圖像首先進(jìn)行編碼,產(chǎn)生碼流,再由 解碼程序處理此碼流,生成目標(biāo)視頻,最后送顯示設(shè)備顯示。正如幾何上用坐標(biāo)空間來(lái)描述 坐標(biāo)集合,色彩空間用數(shù)學(xué)方式來(lái)描述顏色集合;常見的3個(gè)基本色彩模型是RGB、 CMKY 和YUV。 DM642輸入設(shè)備提供的一幀圖像就是YUV圖像。
這里的YUV實(shí)際上指的是YCbCr彩色系統(tǒng)。YCbCr在世界數(shù)字組織視頻標(biāo)準(zhǔn)研制過(guò)程 中作為ITU-R.BT1601建議的一部分,其實(shí)是YUV經(jīng)過(guò)縮放和偏移的翻版。其中Y與YUV 中的Y含義一致,Cb和Cr同樣都指色彩,只是在表示方法上不同而已。在DVD、攝像 機(jī)、數(shù)字電視等消費(fèi)類視頻產(chǎn)品中,常用的色彩編碼方案就是YCbCr,其中Y是指亮度 分量,Cb指藍(lán)色色度分量,而Cr指紅色色度分量。人的肉眼對(duì)視頻的Y分量更敏感, 因此在通過(guò)對(duì)色度分量進(jìn)行子采樣來(lái)減少色度分量后,肉眼將察覺(jué)不到的圖像質(zhì)量的變 化。主要的子采樣格式有YCbCr 4:2:0、 YCbCr 4:2:2和YCbCr 4:4:4。 YCbCr 4:2:0 表示每4個(gè)像素有4個(gè)亮度分量,2個(gè)色度分量(YYYYCbCr),色度分量?jī)H采樣奇數(shù)掃描 線,是便攜式視頻設(shè)備(MPEG-4)以及電視會(huì)議(H.26X)最常用格式;YCbCr 4:2:2表示每 4個(gè)像素有4個(gè)亮度分量,4個(gè)色度分量(YYYYCbCrCbCr),是DVD、數(shù)字電視(HDTV)以 及其它消費(fèi)類視頻設(shè)備的最常用格式;YCbCr 4:4:4表示全像素點(diǎn)陣
4(YYYYCbCrCbCrCbCrCbCr),用于高質(zhì)量視頻應(yīng)用、演播室以及專業(yè)視頻產(chǎn)品。
現(xiàn)有技術(shù)可參考專利號(hào)為200310120399.9的專利。當(dāng)前,對(duì)于大多數(shù)的視頻編碼方式如 MPEG或者ITU-T H.26x等,都主要以使用YCbCr 4:2:0格式的輸入信號(hào)為前提,因此在應(yīng)用 中需要進(jìn)行視頻輸入的預(yù)處理,即對(duì)YCbCr 4:2:2隔行掃描(例如從攝像機(jī))到Y(jié)CbCr 4:2:0 非隔行掃描轉(zhuǎn)換,僅抽取但不過(guò)濾CbCr分量。DM642等處理器都是通過(guò)軟件來(lái)進(jìn)行此項(xiàng)處理, 固642僅有256kbit/s的片內(nèi)Cache (高速緩存),對(duì)于直接處理圖像數(shù)據(jù)還是很有限的。比 如MPEG-4或者H. 264等視頻數(shù)據(jù)壓縮算法一般至少要存儲(chǔ)當(dāng)前待編碼幀數(shù)據(jù)和上一幀的重建 幀數(shù)據(jù), 一幀YCbCr 4:2:0格式CIF圖像的數(shù)據(jù)約有150KB,所以256KB內(nèi)存對(duì)于CIF圖像 就不夠了。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種DSP視頻捕獲驅(qū)動(dòng)YCbCr數(shù)據(jù)格式轉(zhuǎn)換處理方 法,本方法改進(jìn)DM642的視頻捕獲驅(qū)動(dòng)YCbCr 4:2:2數(shù)據(jù)格式轉(zhuǎn)化為YCbCr 4:2.'0的處理過(guò) 程。本方法能有效地降低CPU的利用率,提高處理速度和兩種格式之間的轉(zhuǎn)化速率。
本發(fā)明所采用的技術(shù)方案包含以下步驟-
(1) 首先經(jīng)過(guò)數(shù)字信號(hào)處理器的視頻捕獲驅(qū)動(dòng)YCbCr 4:2:2格式數(shù)據(jù);
(2) 首先分配存儲(chǔ)幀的緩存器;
(3) 分別提取奇數(shù)場(chǎng)的Yl、 Cbl和Crl數(shù)據(jù),并將提取的Yl、 Cbl和Crl數(shù)據(jù)存儲(chǔ)至緩 存器中;
(4) 分別提取偶數(shù)場(chǎng)的Y2、 Cb2和Cr2數(shù)據(jù),并將提取的Y2、 Cb2和Cr2數(shù)據(jù)存儲(chǔ)至緩 存器中;
(5) 合成緩存器中兩個(gè)場(chǎng)的Y1、 Y2、 Cbl、 Cb2、 Crl、 Cr2數(shù)據(jù)并且取樣為4:2:0格式; 其中Y1、 Cbl、 Crl分別為奇數(shù)場(chǎng)亮度分量、藍(lán)色色度分量、紅色色度分量;
Y2、 Cb2、 Cr2分別為偶數(shù)場(chǎng)亮度分量、藍(lán)色色度分量、紅色色度分量。 相對(duì)已有技術(shù)方法,本系統(tǒng)具有以下優(yōu)點(diǎn)
1) 直接在驅(qū)動(dòng)采樣YCbCr 4:2:2格式數(shù)據(jù)的同時(shí)完成了取樣為4:2:0格式的轉(zhuǎn)換;
2) 在不影響圖象質(zhì)量和分配緩沖區(qū)大小的情況下與以前所使用的拷貝方法相比,降低CPU 的利用率;


圖1是D1奇數(shù)場(chǎng)(Fieldl)存儲(chǔ)示意圖。 圖2是Dl偶數(shù)場(chǎng)(Field2)存儲(chǔ)示意圖。 圖3是D1圖像4:2:2格式幀數(shù)據(jù)存儲(chǔ)示意圖。 圖4是Dl圖像4:2:0格式幀數(shù)據(jù)存儲(chǔ)示意圖。 圖5是CIF奇數(shù)場(chǎng)(Fieldl)存儲(chǔ)示意圖。 圖6是CIF偶數(shù)場(chǎng)(FieW2)存儲(chǔ)示意圖。 圖7是CIF圖像4:2:2格式幀數(shù)據(jù)存儲(chǔ)示意圖。 圖8是CIF圖像4:2:0格式幀數(shù)據(jù)存儲(chǔ)示意圖。圖9是以往4:2:2轉(zhuǎn)4:2:0格式流程圖。
圖10是本發(fā)明改進(jìn)的4:2:2轉(zhuǎn)4:2:0格式流程圖。
圖中N為自然數(shù),1SN^288; Y1-1 Y1-288、 Cbl-l Cb1-288、 Crl-l Cr1-288依次為 Yl、 Cbl、 Crl的每行分量,Y2-l Y2-288、 Cb2-l Cb2-288、 Cr2-l Cr2-288依次為Y2、 Cb2、 Cr2的每行分量。
具體實(shí)施例方式
DSP視頻捕獲驅(qū)動(dòng)YCbCr數(shù)據(jù)格式轉(zhuǎn)換處理方法,包括以下步驟
(1) 首先經(jīng)過(guò)數(shù)字信號(hào)處理器(如匿642)的視頻捕獲驅(qū)動(dòng)YCbCr 4:2:2格式數(shù)據(jù);該 取樣結(jié)構(gòu)為正交結(jié)構(gòu),即按行、場(chǎng)、幀重復(fù), 一幀(Frame)含奇數(shù)場(chǎng)(Fiddl)和偶數(shù)場(chǎng)(Field2), 即取樣結(jié)構(gòu)是固定的,取樣點(diǎn)在電視屏幕上的相對(duì)位置不變;
(2) 首先分配存儲(chǔ)幀的緩存器;
(3) 分別提取奇數(shù)場(chǎng)的Yl、 Cbl和Crl數(shù)據(jù),并將提取的Yl、 Cbl和Crl數(shù)據(jù)存儲(chǔ)至緩 存器中;
(4) 分別提取偶數(shù)場(chǎng)的Y2、 Cb2和Cr2數(shù)據(jù),并將提取的Y2、 Cb2和Cr2數(shù)據(jù)存儲(chǔ)至緩 存器中;偶數(shù)場(chǎng)使用的是另外一個(gè)DMA (直接存儲(chǔ)訪問(wèn))通道;
(5) 合成緩存器中兩個(gè)場(chǎng)的Y1、 Y2、 Cbl、 Cb2、 Crl、 Cr2數(shù)據(jù)并且取樣為4:2:0格式; 其中Y1、 Cbl、 Crl分別為奇數(shù)場(chǎng)亮度分量、藍(lán)色色度分量、紅色色度分量;
Y2、 Cb2、 Cr2分別為偶數(shù)場(chǎng)亮度分量、藍(lán)色色度分量、紅色色度分量。 步驟(2)中幀緩存器的空間大小為幀亮度分量的點(diǎn)數(shù)與行數(shù)的乘積,再分別加上幀藍(lán)色 色度分量、紅色色度分量的點(diǎn)數(shù)與行數(shù)的乘積。 所述視頻格式數(shù)據(jù)的分辨率可以為Dl或CIF。
① 對(duì)于Dl圖像其分辨率為720X576:
其中(3)包括以下步驟FieWl包括Y1、 Cbl、 Crl,讀入一行Yl,地址偏移一行,然 后讀入下一行Yl,依次完成Yl的讀入,Cbl和Crl讀入時(shí)直接連續(xù)存放不做偏移;
步驟(4)中,F(xiàn)ield2包括Y2、 Cb2、 Cr2, Y2的目的地址直接偏移到Y(jié)l的偶數(shù)行,Cb2 和Cr2連續(xù)存放在Crl之后
步驟(5)兩場(chǎng)合并后,直接丟去Cb2和Cr2的數(shù)據(jù),結(jié)束后數(shù)據(jù)取樣為4: 2: 0格式 (YYYYCbCr)。
② 對(duì)于CIF圖像其分辨率為352X288:
其中(3)包括以下步驟,F(xiàn)ieldl包括Yl、 Cbl和Crl,讀入一行Y1,地址不做偏移繼續(xù) 讀入下一行Yl,依次完成Yl的讀入,Cbl和Crl讀入時(shí)也直接連續(xù)存放不做偏移
步驟(4)中,F(xiàn)ield2包括Y2、 Cb2和Cr2, Y2、 Cb2和Cr2連續(xù)存放在Crl之后;
步驟(5)兩場(chǎng)合并后,直接丟去Y2、 Cb2和Cr2的數(shù)據(jù),然后需要在主程序中對(duì)藍(lán)色色 差分量和紅色色差分量通過(guò)隔行拷貝來(lái)完成取樣轉(zhuǎn)換,結(jié)束后數(shù)據(jù)取樣為4:2:0格式。
實(shí)施例
DM642上實(shí)現(xiàn)Dl或CIF格式的H. 26X或者M(jìn)PEG-4等格式的編碼和解碼過(guò)程是程序?qū)z入的視頻圖像首先進(jìn)行編碼,產(chǎn)生碼流,再由解碼程序處理此碼流,生成目標(biāo)視頻送顯示 設(shè)備顯示<=
數(shù)據(jù)流程
100).根據(jù)步驟(1) (4),輸入設(shè)備提供的一幀圖像被采集到輸入緩存;
200).根據(jù)步驟(5),獲得的數(shù)據(jù)由YCbCr 4:2:2格式進(jìn)行重抽樣變?yōu)閅CbCr 4:2:0格
式;
300).提供圖像數(shù)據(jù)給編碼庫(kù)程序;
400).編碼程序完成對(duì)輸入幀的編碼;
500).編碼程序輸出編碼碼流;
600).產(chǎn)生的編碼碼流被傳輸?shù)浇獯a模塊;
700).解碼模塊解碼傳入的碼流,輸出解碼的一幀圖像;
800).解碼模塊解碼產(chǎn)生的圖像經(jīng)過(guò)重新抽樣由YCbCr 4:2:0變?yōu)閅CbCr 4:2:2格式; 900).顯示設(shè)備顯示輸出的圖像。
其中一個(gè)重要的部分就是據(jù)由YUV 4:2:2格式進(jìn)行重抽樣變?yōu)閅UV 4:2:0格式,這里的 YUV指的就是YCbCr彩色系統(tǒng)像素。
YCbCr彩色系統(tǒng)像素表示成RGB彩色系統(tǒng)像素算法
RGB色彩系統(tǒng)俄國(guó)科學(xué)家羅蒙洛索夫于1756年首先提出三基色(RGB)的假設(shè),奠定了 認(rèn)識(shí)色覺(jué)的基礎(chǔ)。羅蒙洛索夫認(rèn)為,肉眼的錐狀細(xì)胞是由紅、綠、藍(lán)三種感光細(xì)胞組成的。 錐狀細(xì)胞將光信號(hào)轉(zhuǎn)化為神經(jīng)脈沖的感光化學(xué)特性可區(qū)分為三種形式,即錐狀細(xì)胞將電磁光 譜的可見部分分為三個(gè)波段:紅、綠和藍(lán)。這三種顏色被稱為人類視覺(jué)的三基色。當(dāng)一束光射 入肉眼時(shí),三種錐狀細(xì)胞就產(chǎn)生不同反應(yīng)。不同顏色的光對(duì)三種細(xì)胞的刺激量是不同的,這 就產(chǎn)生了不同的顏色。肉眼感覺(jué)到的各種顏色就是不同波長(zhǎng)的光刺激三基色細(xì)胞的結(jié)果。彩 色合成在彩色顯示中我們采用彩色合成技術(shù),利用彩色的三基色原理完成彩色的再現(xiàn)。比 如在彩色顯示器上顯示彩色圖像時(shí),首先將彩色分成不同亮度的三基色分量,進(jìn)行數(shù)字化用 亮度值(通常取值0 255)表示,然后使用這三個(gè)亮度值去點(diǎn)亮臨近的三個(gè)熒光點(diǎn),這三個(gè)熒 光點(diǎn)分別可以發(fā)出紅、綠、藍(lán)光,由于熒光點(diǎn)靠得足夠近,它們發(fā)出的光合成和再現(xiàn)了原始 彩色光。
YCbCr色彩系統(tǒng)用RGB三基色來(lái)表示彩色的確很直觀,但是如果把這種方法用作圖像 傳輸則絕不是一個(gè)好的方法。第一個(gè)缺點(diǎn)是與黑白圖像不兼容,把RGB三基色轉(zhuǎn)換為灰度的 方法是:灰度=1 *0.3+6*0.59+8*0. 11,這個(gè)轉(zhuǎn)換過(guò)程顯然是比較復(fù)雜的。對(duì)于電視機(jī)而言,就 味著必須解碼出RGB信號(hào)才有可能得到黑白圖像,而黑白電視機(jī)沒(méi)有解碼功能,所以不能實(shí) 現(xiàn)兼容。第二個(gè)缺點(diǎn)是占用太多帶寬,用RGB三基色表示圖像,每個(gè)分量的帶寬是均等的, 都約等于亮度信號(hào)的帶寬,所以對(duì)于每個(gè)分量,都要用較大的帶寬來(lái)描述。第三個(gè)缺點(diǎn)是抗 干擾能力差。由于G分量占有亮度值59y。所以當(dāng)G受到干擾的時(shí)候,像素的亮度值會(huì)受到很 大的影響,而人眼對(duì)亮度值的變化是十分敏感的,所以圖像主觀質(zhì)量會(huì)明顯下降?;谶@些 原因,在視頻信號(hào)傳輸中采用的是YUV合成的方法。Y代表亮度信息,U代表藍(lán)色色差(藍(lán)色信號(hào)與亮度信號(hào)之問(wèn)的差值Cb), V代表紅色色差(紅色信號(hào)與亮度信號(hào)之問(wèn)的差值Cr)。我 們來(lái)看看使用這種表示方法的優(yōu)點(diǎn)。第一個(gè)優(yōu)點(diǎn)是與黑白圖像兼容。假定一個(gè)像素是用YUV 表示的,我們只要忽略UV分量,取出Y分量,就可以得到像素的亮度值,從而把彩色圖像轉(zhuǎn) 換為黑白圖像。這樣很容易實(shí)現(xiàn)彩色電視信號(hào)與黑白電視信號(hào)的兼容。第二個(gè)優(yōu)點(diǎn)是節(jié)省帶 寬。說(shuō)這個(gè)問(wèn)題的時(shí)候要先說(shuō)說(shuō)大面積著色原理。實(shí)驗(yàn)發(fā)現(xiàn),人眼對(duì)亮度信息是敏感的,主 要通過(guò)亮度差別來(lái)分辨物體形狀的細(xì)節(jié),而對(duì)彩色信息是不敏感的,人眼區(qū)分不出物體顏色 上的細(xì)小的變化,或者說(shuō)人眼不容易覺(jué)察出來(lái)圖像的色彩的細(xì)節(jié)部分的變化。因此,可以對(duì) 亮度信號(hào)用較高的采樣頻率采樣,而對(duì)色度信號(hào)用較低的采樣頻率采樣(或者用較低的量化深 度),比如幾個(gè)相鄰的像素的亮度值不同,但是卻可以使用一個(gè)相同的色度值。這就是大面積 著色原理?;谶@個(gè)原理,在電視信號(hào)傳輸中,U或V信號(hào)的帶寬遠(yuǎn)小于Y信號(hào)的帶寬,這 樣就節(jié)約了帶寬。換個(gè)方式來(lái)說(shuō),比如在計(jì)算機(jī)中,用RGB方式描述一個(gè)像素需要R, G, B 共3個(gè)字節(jié)。而用YUV方式描述,則對(duì)于每2個(gè)像素,Y用2個(gè)字節(jié),U取相同的值,用一個(gè) 字節(jié),V取相同的值,用一個(gè)字節(jié),平均每個(gè)像素2個(gè)字節(jié),或者每個(gè)像素Y用一個(gè)字節(jié),U 用半個(gè)字節(jié),V用半個(gè)字節(jié),共2個(gè)字節(jié)。第三個(gè)優(yōu)點(diǎn)是抗干擾能力強(qiáng)。由于亮度信號(hào)是單 獨(dú)表示的,所以如果色差信號(hào)受到干擾,不會(huì)影響到亮度,主觀感覺(jué)噪聲不會(huì)明顯增加。
其中YUV 4:2:2是指每個(gè)色差信道的抽樣率是亮度信道的一半,所以水平方向的色度 抽樣率只是4:4:4的一半。對(duì)非壓縮的8比特量化的圖像來(lái)說(shuō),每個(gè)由兩個(gè)水平方向相鄰的 像素組成的宏像素需要占用4字節(jié)內(nèi)存。
例如四個(gè)像素為[Y0 U0 V0] [Yl Ul VI] [Y2 U2 V2] [Y3 U3 V3]
存放的碼流為Y0 U0 Yl VI Y2 U2 Y3 V3
映射出像素點(diǎn)為[Y0 U0 VI] [Yl U0 VI] [Y2 U2 V3] [Y3 U2 V3]
YUV 4:2:0并不意味著只有Y、 Cb而沒(méi)有Cr分量。它指得是對(duì)每行掃描線來(lái)說(shuō),只有一 種色度分量以2:1的抽樣率存儲(chǔ)。相鄰的掃描行存儲(chǔ)不同的色度分量,也就是說(shuō),如果一行 是4:2:0的話,下一行就是4:0:2,再下一行是4:2:0以此類推。對(duì)每個(gè)色度分量來(lái)說(shuō),水 平方向和豎直方向的抽樣率都是2:1,所以可以說(shuō)色度的抽樣率是4:1。對(duì)非壓縮的8比特量 化的視頻來(lái)說(shuō),每個(gè)由2X2個(gè)2行2列相鄰的像素組成的宏像素需要占用6字節(jié)內(nèi)存。
例如八個(gè)像素為[YO UO VO] [Yl Ul VI] [Y2 U2 V2] [Y3 U3 V3] [Y5 U5 V5] [Y6 U6 V6] [Y7 U7 V7] [Y8 U8 V8]
存放的碼流為YO UO Yl Y2 U2 Y3 Y5 V5 Y6 Y7 V7 Y8
映射出的像素點(diǎn)為[YO UO V5] [Yl UO V5] [Y2 U2 V7] [Y3 U2 V7] [Y5 UO V5] [Y6 UO V5] [Y7 U2 V7] [Y8 U2 V7]
在DM642的驅(qū)動(dòng)中,圖像是以幀模式存儲(chǔ)的,幀模式指, 一幀數(shù)據(jù)包含兩場(chǎng),奇數(shù)場(chǎng)和 偶數(shù)場(chǎng)分別用Fieldl和Field2表示,F(xiàn)ieldl和Field2共同組成一幀數(shù)據(jù)。其中Fieldl包 含上面提到的Y1、 Cbl、 Crl三個(gè)分量,F(xiàn)ield2包含Y2、 Cb2、 Cr2三個(gè)分量。每個(gè)像素Y用 一個(gè)字節(jié),U用半個(gè)字節(jié),V用半個(gè)字節(jié)。
現(xiàn)有技術(shù)中
8① 作為一般的Dl (720X576)圖像,其中Yl和Y2為一行720 (yPitch)個(gè)點(diǎn),Cbl、 Cb2、 Crl、 Cr2均為每行360 (cPitch)個(gè)點(diǎn),其中Y、 Cb、 Cr的行數(shù)均為288 (細(xì)lines)如圖1 和圖2所示;
因此合并奇數(shù)場(chǎng)和偶數(shù)場(chǎng)為4:2:2格式的過(guò)程為,分配幀緩存,大小為yPitch* n咖lines (亮度)+ cPitch*翻lines氺2(色度)。 然后讀入奇數(shù)場(chǎng)Fieldl (如圖l):
A. 讀入Y1中的720字節(jié)一行數(shù)據(jù)到Y(jié)1所指向的首的地址(addr),記為Y1-1,然后 Yl的地址偏移720*2,即Yl=H+720*2然后再讀入720字節(jié)存放到目前Yl指向的位置,記為 Yl-2,依次讀取一直到到最后720字節(jié)的數(shù)據(jù)到Y(jié)l-288,完成Fieldl中Yl的讀入;
B. 讀入Cbl中的360字節(jié)一行數(shù)據(jù)到Cbl所指向的首的地址,此時(shí)的地址為Yl所指 向的首的地址(addr)+numLines*yPitch,記為Cbl-1,然后Cbl的地址偏移360*2,即Cbl= Cbhl+360*2,然后再讀入360字節(jié)存放到目前Cb1-1指向的位置,記為Cbl-2,依次讀取一 直到到最后360字節(jié)的數(shù)據(jù)到Cbl-288,完成Fieldl中Cbl的讀入;
C. 同上一步驟B完成Crl種數(shù)據(jù)的讀入,Crl所指向的首的地址,此時(shí)的地址為Yl所 指向的首的地土止(addr) +nuraLines*yPitch+ n咖Lines承cPitch。
從而完成了 Fieldl讀入到緩沖區(qū)的奇數(shù)行中。
其次讀入偶數(shù)場(chǎng)Field2 (如圖2),這時(shí)使用的是另外一個(gè)DMA通道,Y2、 Cb2、 Cr2目 的地址均在Y1、 Cbl、 Crl的基礎(chǔ)上偏移一行,存儲(chǔ)在偶數(shù)行,過(guò)程和以上奇數(shù)場(chǎng)的讀入方式 相同。
最后完成了一幀數(shù)據(jù)的讀入,產(chǎn)生中斷,因此完成了一幀4:2:2的D1圖像,如圖3所示。 至此現(xiàn)有技術(shù)的驅(qū)動(dòng)處理方式,就將此種一幀4:2:2的圖像傳輸給視頻壓縮線程,利用
函數(shù)中的循環(huán)拷貝來(lái)實(shí)現(xiàn)4:2:2格式轉(zhuǎn)化為4:2:0格式。具體拷貝方法如下
首先拷貝一幀數(shù)據(jù)中的Y分量,逐行拷貝每行720個(gè)字節(jié),共需要循環(huán)拷貝576次,其
次隔行拷貝Cb分量,合并后每行360個(gè)字節(jié)共有576行Cb數(shù)據(jù),隔行拷貝后抽樣為288行
共循環(huán)拷貝288次,最后同理隔行拷貝Cr分量,共循環(huán)288次。整個(gè)拷貝過(guò)程共循環(huán)1152次。
② 對(duì)于一般的CIF (352*288)的圖像,其中Yl和Y2為一行352 (yPitch)個(gè)點(diǎn),Cbl、 Cb2、 Crl、 Cr2均為每行176 (cPitch)個(gè)點(diǎn),其中Y、 Cb、 Cr的行數(shù)均為288 (畫lines), 如圖5和圖6所示。
因此合并奇數(shù)場(chǎng)(如圖5)和偶數(shù)場(chǎng)(如圖6)為4:2:2格式的過(guò)程為,分配幀緩存,大 小為yPitch* nuralines (亮度)+ cPitch* numlines*2 (色度)。
其原始的驅(qū)動(dòng)處理方式和上述Dl圖像的處理方法相似,其中在上述步驟A中Yl —行為 352字節(jié),因此Yl的地址偏移352*2。同理在上述步驟B中Cbl —行為176字節(jié),因此Cb2 的地址偏移176*2,同理在上述步驟C中Crl 一行為176字節(jié),因此Cr2的地址偏移176*2。 由此完成了一幀4:2:2的CIF圖像如圖7所示。
然后現(xiàn)有技術(shù)中,CIF圖像利用函數(shù)中的循環(huán)拷貝來(lái)實(shí)現(xiàn)4:2:2格式轉(zhuǎn)化為4:2:0格式。具體拷貝方法如下
首先拷貝一幀數(shù)據(jù)中的Y分量,隔行拷貝每行352個(gè)字節(jié)共需要循環(huán)拷貝288次,其次 隔行拷貝Cb分量,合并后每行176個(gè)字節(jié)共有576行Cb數(shù)據(jù),隔行拷貝后抽樣為144行共 循環(huán)拷貝144次,最后同理隔行拷貝Cr分量,共循環(huán)144次。整個(gè)拷貝過(guò)程共循環(huán)576次。 此種方法CPU使用率高,并且在程序中反復(fù)利用數(shù)據(jù)拷貝,因此會(huì)造成處理時(shí)間長(zhǎng)。 因此本發(fā)明直接在驅(qū)動(dòng)的Fieldl和Field2的組幀的過(guò)程中進(jìn)行改進(jìn),在驅(qū)動(dòng)中直接高 效的實(shí)現(xiàn)4:2:2格式到4:2:0格式的轉(zhuǎn)換。過(guò)程如下
① 對(duì)于Dl圖像其分辨率為720*576:
首先分配緩存和讀入Fieldl和Field2的Yl和Y2分量的過(guò)程,都與上述Dl圖像合并 奇數(shù)場(chǎng)和偶數(shù)場(chǎng)為4:2:2格式的過(guò)程相同。
其次在讀入Fieldl和Field2的Cb以及Cr分量時(shí),存儲(chǔ)方法有所改變,以Cbl的讀入 為例。讀入Cbl中的360字節(jié)一行數(shù)據(jù)到Cbl所指向的首的地址,此時(shí)的地址為Yl所指向的 首的地址(addr)+numLines承yPitch,記為Cbl-l,然后Cbl的地址偏移360,即Cbl= Cbl-1+360。 然后再讀入360字節(jié),存放到目前Cbl-l指向的位置,記為Cbl-2,依次讀取一直到到最后 360字節(jié)的數(shù)據(jù)到Cbl-288,完成Cbl的讀入。按照此種相同方法讀入Crl、 Cb2、 Cb2,此時(shí) 讀入的偏移值為360,而不是原來(lái)的360*2,結(jié)果得到的數(shù)據(jù)存儲(chǔ)方式如圖5所示;
最后全部讀入結(jié)束后,直接舍去最后的Cb2和Cr2的數(shù)據(jù),就得到4:2:0格式的視頻幀 (如圖4),直接由驅(qū)動(dòng)傳輸給視頻處理線程,此時(shí)可以完全略去利用函數(shù)中的循環(huán)拷貝過(guò)程, 來(lái)實(shí)現(xiàn)4:2:2格式轉(zhuǎn)化為4:2:0格式。
② 對(duì)于CIF圖像其分辨率為352*288:
首先分配緩存中上述CIF圖像合并奇數(shù)場(chǎng)和偶數(shù)場(chǎng)為4:2:2格式的過(guò)程相同。
其次在讀入Fieldl的Y1分量的過(guò)程中,存儲(chǔ)方法有所改變。讀入Y1中的352字節(jié)一行 數(shù)據(jù)到Y(jié)l所指向的首的地址,此時(shí)的地址為Yl所指向的首的地址(addr) +numLines*yPitch 記為Y卜1,然后Y1的地址偏移352,即Yl:Y卜l+352,然后再讀入352字節(jié)存放到目前Yl-l 指向的位置,記為Yl-2,依次讀取一直到到最后360字節(jié)的數(shù)據(jù)到Y(jié)l-288,完成Yl的讀入。
然后在讀入Fieldl的Cbl以及Crl分量時(shí),存儲(chǔ)方法有所改變,以Cbl的讀入為例。讀 入Cbl中的176字節(jié)一行數(shù)據(jù)到Cbl所指向的首的地址,此時(shí)的地址為Yl所指向的首的地址 (addr) +numLines*yPitch記為Cbl-l,然后Cbl的地址偏移176,即Cbl= Cbl-1+176,然 后再讀入176字節(jié)存放到目前Cb1-l指向的位置,記為Cbl-2,依次讀取一直到到最后176 字節(jié)的數(shù)據(jù)到Cb1-288,完成Cbl的讀入。按照此種相同方法讀入Crl,此時(shí)讀入的偏移值為 176而不是原來(lái)的176*2;
同理按照上述讀入Fieldl的方法依次讀入Field2的Y2, Cb2以及Cr2分量,依次存放 在上述Crl之后。
最后全部讀入結(jié)束后直接舍去最后的Y2, Cb2和Cr2的數(shù)據(jù)就得到了亮度分量Y轉(zhuǎn)換完 成的視頻幀,直接由驅(qū)動(dòng)傳輸給視頻壓縮處理線程,此時(shí)可以利用函數(shù)中的循環(huán)拷貝來(lái)完成 色度分量Cb, Cr的抽樣轉(zhuǎn)換過(guò)程,來(lái)實(shí)現(xiàn)4:2:2格式到4:2:0格式的轉(zhuǎn)換。具體拷貝方法如下
隔行拷貝Cb分量,合并后每行176個(gè)字節(jié)共有288行Cb數(shù)據(jù),隔行拷貝后抽樣為144 行每行字節(jié)數(shù)不變,共循環(huán)拷貝144次,最后同理隔行拷貝Cr分量,共循環(huán)144次。整個(gè)拷 貝過(guò)程共循環(huán)288次。
由此CIF圖像4:2:2格式到4:2:0格式(如圖8)的轉(zhuǎn)換完成,與以往方式相比函數(shù)中 循環(huán)拷貝的次數(shù)大大減少,因此可以有效的減少函數(shù)執(zhí)行時(shí)間。
權(quán)利要求
1.DSP視頻捕獲驅(qū)動(dòng)YCbCr數(shù)據(jù)格式轉(zhuǎn)換處理方法,其特征在于包括以下步驟(1)首先經(jīng)過(guò)數(shù)字信號(hào)處理器的視頻捕獲驅(qū)動(dòng)YCbCr 4:2:2格式數(shù)據(jù);(2)然后分配存儲(chǔ)幀的緩存器;(3)分別提取奇數(shù)場(chǎng)的Y1、Cb1和Cr1數(shù)據(jù),并將提取的Y1、Cb1和Cr1數(shù)據(jù)存儲(chǔ)至緩存器中;(4)分別提取偶數(shù)場(chǎng)的Y2、Cb2和Cr2數(shù)據(jù),并將提取的Y2、Cb2和Cr2數(shù)據(jù)存儲(chǔ)至緩存器中;(5)合成緩存器中兩個(gè)場(chǎng)的Y1、Y2、Cb1、Cb2、Cr1、Cr2數(shù)據(jù),并且取樣為4:2:0格式;其中Y1、Cb1、Cr1分別為奇數(shù)場(chǎng)亮度分量、藍(lán)色色度分量、紅色色度分量;Y2、Cb2、Cr2分別為偶數(shù)場(chǎng)亮度分量、藍(lán)色色度分量、紅色色度分量。
2. 如權(quán)利要求l所述的方法,其特征在于歩驟(2)中幀緩存器的空間大小為幀亮度 分量的點(diǎn)數(shù)與行數(shù)的乘積,再分別加上幀藍(lán)色色度分量、紅色色度分量的點(diǎn)數(shù)與行數(shù)的乘積。
3. 如權(quán)利要求l所述的方法,其特征在于所述視頻格式數(shù)據(jù)的分辨率為D1或CIF。
4. 如權(quán)利要求3所述的方法,其特征在于當(dāng)所述視頻格式數(shù)據(jù)的分辨率為D1時(shí) 所述步驟(3)中存儲(chǔ)奇數(shù)場(chǎng)數(shù)據(jù)到幀緩存時(shí),讀入一行Yl,地址偏移一行,然后讀入下一行Yl,如此依次完成Yl的讀入;Cbl和Crl讀入時(shí)直接連續(xù)存放不做偏移;所述步驟(4)中存儲(chǔ)偶數(shù)場(chǎng)數(shù)據(jù)到幀緩存時(shí),Y2的目的地址直接偏移到相應(yīng)Y1的偶數(shù)行,Cb2和Cr2連續(xù)存放在Crl之后;所述步驟(5)合成兩場(chǎng)數(shù)據(jù)后的緩存器中,直接丟去Cb2和Cr2的數(shù)據(jù),結(jié)束后數(shù)據(jù)取樣為4:2:0格式。
5. 如權(quán)利要求3所述的方法,其特征在于當(dāng)所述視頻格式數(shù)據(jù)的分辨率為CIF時(shí) 所述步驟(3)中存儲(chǔ)奇數(shù)場(chǎng)數(shù)據(jù)到幀緩存時(shí),讀入一行Yl,地址不做偏移,繼續(xù)讀入下一行Y1,如此依次完成Y1的讀入;Cbl和Crl讀入時(shí)直接連續(xù)存放不做偏移;所述步驟(4)中存儲(chǔ)偶數(shù)場(chǎng)數(shù)據(jù)到幀緩存時(shí),Y2、 Cb2和Cr2連續(xù)存放在Crl之后; 所述步驟(5)合成兩場(chǎng)數(shù)據(jù)后的緩存器中,直接丟去Cb2和&2的數(shù)據(jù),然后需要在主程序中對(duì)藍(lán)色色差分量和紅色色差分量通過(guò)隔行拷貝來(lái)完成取樣轉(zhuǎn)換,結(jié)束后數(shù)據(jù)取樣為4:2:0格式。
6. 如權(quán)利要求1 5所述的方法在數(shù)字信號(hào)處理器編解碼中的應(yīng)用,包括以下步驟 100).根據(jù)步驟(1) (4),輸入設(shè)備提供的一幀圖像被采集到輸入緩存;200).根據(jù)步驟(5),獲得的數(shù)據(jù)由YCbCr 4:2:2格式進(jìn)行重抽樣變?yōu)閅CbCr 4:2:0格式;300).提供圖像數(shù)據(jù)給編碼庫(kù)程序; 400).編碼程序完成對(duì)輸入幀的編碼; 500).編碼程序輸出編碼碼流;600).產(chǎn)生的編碼碼流被傳輸?shù)浇獯a模塊;700).解碼模塊解碼傳入的碼流,輸出解碼的一幀圖像;800).解碼模塊解碼產(chǎn)生的圖像經(jīng)過(guò)重新抽樣由YCbCr 4:2:0變?yōu)閅CbCr 4:2:2格式; 900).顯示設(shè)備顯示輸出的圖像。
全文摘要
本發(fā)明提供了DSP視頻捕獲驅(qū)動(dòng)YCbCr數(shù)據(jù)格式轉(zhuǎn)換處理方法,包括以下步驟(1)經(jīng)過(guò)數(shù)字信號(hào)處理器的視頻捕獲驅(qū)動(dòng)YCbCr 4:2:2格式數(shù)據(jù);(2)分配存儲(chǔ)幀的緩存器;(3)分別提取奇數(shù)場(chǎng)的Y1、Cb1和Cr1數(shù)據(jù),并將提取的數(shù)據(jù)存儲(chǔ)至緩存器中;(4)分別提取偶數(shù)場(chǎng)的Y2、Cb2和Cr2數(shù)據(jù),并將提取的數(shù)據(jù)存儲(chǔ)至緩存器中;(5)合成緩存器中兩個(gè)場(chǎng)的Y1、Y2、Cb1、Cb2、Cr1、Cr2數(shù)據(jù),并且取樣為4:2:0格式。在不影響圖象質(zhì)量和分配緩沖區(qū)大小的情況下與以前所使用的拷貝方法相比,降低CPU的利用率,并且能夠有效地提高轉(zhuǎn)化速率。
文檔編號(hào)G09G5/36GK101556791SQ20091006216
公開日2009年10月14日 申請(qǐng)日期2009年5月19日 優(yōu)先權(quán)日2009年5月19日
發(fā)明者松 吳, 王季煒, 董明洲, 陳春漢, 偉 黃, 成 黃, 瑩 黃 申請(qǐng)人:武漢長(zhǎng)江通信產(chǎn)業(yè)集團(tuán)股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1