欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

色彩空間轉(zhuǎn)換方法及其裝置的制作方法

文檔序號(hào):7657477閱讀:378來源:國知局
專利名稱:色彩空間轉(zhuǎn)換方法及其裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及信號(hào)處理領(lǐng)域,特別涉及色彩空間轉(zhuǎn)換技術(shù)。
背景技術(shù)
彩色圖像的表示方法有多種方式,如可以通過不同比例的紅色(R)、綠色(G)和藍(lán)色(B)組合而成,這就是著名的三基色原理,這種表示彩色圖像的方法即為RGB彩色空間。又如通過不同比例的亮度(Y)、和色差信號(hào)(CR,CB)表示彩色圖像,這種表示彩色圖像的方法即為基于YCRCB彩色空間。
RGB彩色空間通常應(yīng)用與顯示設(shè)備,如顯示器。YCRCB彩色空間的一個(gè)優(yōu)點(diǎn)是由于人眼對(duì)彩色細(xì)節(jié)的分辨能力遠(yuǎn)比對(duì)亮度細(xì)節(jié)的分辨能力低,因此可以對(duì)色差信號(hào)進(jìn)行子采樣,以減小數(shù)字彩色圖像所需要的存儲(chǔ)容量以及降低在數(shù)據(jù)傳輸過程中數(shù)據(jù)流量。基于YCRCB彩色空間的優(yōu)點(diǎn),YCRCB彩色空間通常被應(yīng)用于圖像的存儲(chǔ)。
由于對(duì)于顯示設(shè)備如顯示器,使用的是RGB彩色空間,而存儲(chǔ)的彩色圖像通常使用YCRCB彩色空間來表示,因此當(dāng)需要顯示存儲(chǔ)的彩色圖像時(shí)必需將YCRCB彩色空間表示的彩色圖像轉(zhuǎn)換為RGB彩色空間表示的彩色圖像。
根據(jù)ITU-R BT.601標(biāo)準(zhǔn),YCRCB彩色空間到RGB彩色空間的轉(zhuǎn)換公式如式(1)所示。
YCRCB=0.2990.5870.1140.500-0.419-0.081-0.169-0.3310.500·RGB---(1)]]>在ITU-R BT.601標(biāo)準(zhǔn)規(guī)定,對(duì)于4:2:2子采樣格式,量化后亮度信號(hào)Y的取值范圍是16~235,只占據(jù)220個(gè)值;當(dāng)亮度為16時(shí)就是黑色,為235時(shí)就是白色。量化后色差信號(hào)CR,CB的取值范圍是16~240。
根據(jù)ITU-R BT.601標(biāo)準(zhǔn),對(duì)式(1)作矩陣變換可得到RGB彩色空間到Y(jié)CRCB彩色空間的轉(zhuǎn)換公式,如式(2)所示。
RGB=1.16401.5961.164-0.391-0.8131.1642.0180·YCBCR+-222.912135.488-276.428---(2)]]>RGB各分量的取值范圍都是0~255,實(shí)際運(yùn)算得到的結(jié)果若大于255,則取值255;若小于0,則取值0。
如果Y、CR、CB的取值范圍伸張到0~255、則相應(yīng)的轉(zhuǎn)換公式如式(3)所示。
RGB=101.4021-0.344-0.71411.7720·YCBCR+-178.755134.895-225.93---(3)]]>由于式(2)和式(3)均是矩陣乘法,傳統(tǒng)的實(shí)現(xiàn)方法(現(xiàn)有技術(shù)一)是通過采用乘法器來實(shí)現(xiàn)矩陣相乘的運(yùn)算的。該乘法器如圖1所示,在乘法器的輸入側(cè)輸入Y、CR、CB,所輸入的Y、CR、CB與系數(shù)相乘得到R、G、B結(jié)果,從另一側(cè)輸出。
然而,本發(fā)明的發(fā)明人發(fā)現(xiàn),上述的轉(zhuǎn)換公式的矩陣中存在浮點(diǎn)數(shù),需要使用浮點(diǎn)數(shù)乘法器,浮點(diǎn)數(shù)乘法器結(jié)構(gòu)復(fù)雜,在專用集成電路(Application SpecifiedIntegrated Circuit,簡(jiǎn)稱“ASIC”)芯片實(shí)現(xiàn)時(shí)面積大,且計(jì)算復(fù)雜度高導(dǎo)致功耗較大。
或者,也可以采用加法器實(shí)現(xiàn)式(2)和(3)所示的矩陣乘法。即使用移位加法器替換現(xiàn)有技術(shù)一中使用的乘法器。具體替換方式為對(duì)式(2)和式(3)中的浮點(diǎn)系數(shù)進(jìn)行變換,使用等價(jià)的分?jǐn)?shù)來代替,如式(2)中的1.164可等價(jià)為式(4)
1.164≈1+18+132+1256+1256---(4)]]>通過將矩陣中所有浮點(diǎn)數(shù)使用等價(jià)的分?jǐn)?shù)來替代,如使用式(4)中等號(hào)右半部分的分?jǐn)?shù)替代系數(shù)1.164,可實(shí)現(xiàn)乘法與移位加法的替換。
然而,本發(fā)明的發(fā)明人發(fā)現(xiàn),由于在現(xiàn)有技術(shù)二中需要將浮點(diǎn)數(shù)拆分為等價(jià)的分?jǐn)?shù)的和,而在這種等價(jià)的表示方法中,要使等號(hào)左右兩邊的相似度越高,即分?jǐn)?shù)的和與浮點(diǎn)數(shù)匹配的精度越高,和項(xiàng)必然越多,移位加法的次數(shù)同樣越多,計(jì)算復(fù)雜度越高,功耗越大。并且,和項(xiàng)多,采用并行加法實(shí)現(xiàn)的加法器就多,面積也就增大了。而要降低計(jì)算復(fù)雜度和加法器的面積,就需要減少和項(xiàng),要減少和項(xiàng),就不得不降低精度??梢姡?jì)算復(fù)雜度和精度無法兩全。

發(fā)明內(nèi)容
本發(fā)明實(shí)施方式要解決的主要技術(shù)問題是提供一種色彩空間轉(zhuǎn)換方法及其裝置,使得色彩空間轉(zhuǎn)換時(shí)可以在保持較高精度的條件下降低計(jì)算復(fù)雜度。
為解決上述技術(shù)問題,本發(fā)明的實(shí)施方式提供了一種色彩空間轉(zhuǎn)換方法,第一色彩空間每個(gè)色彩分量被劃分為M個(gè)片段,每個(gè)片段包含至少一個(gè)比特,包含以下步驟分別將第一色彩空間各色彩分量中對(duì)應(yīng)位置的片段組合成一個(gè)片段組,共得到M個(gè)片段組;分別根據(jù)每個(gè)片段組的值查表,共得到M組查表結(jié)果,每組查表結(jié)果中包括X個(gè)值,分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;將M組查表結(jié)果中對(duì)應(yīng)于第二色彩空間同一色彩分量的值相加,得到X個(gè)轉(zhuǎn)換結(jié)果,分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;其中M、X為正整數(shù)。
本發(fā)明的實(shí)施方式還提供了一種色彩空間轉(zhuǎn)換裝置,第一色彩空間每個(gè)色彩分量被劃分為M個(gè)片段,每個(gè)片段包含至少一個(gè)比特,裝置包括查找表,用于根據(jù)輸入進(jìn)行查表,該輸入是第一色彩空間各色彩分量中對(duì)應(yīng)位置的片段組合而成的片段組,輸出一組查表結(jié)果,其中包括X個(gè)值,每個(gè)值分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;共有M個(gè)片段組,每個(gè)片段組分別輸入到查找表處理,共得到M組查表結(jié)果;加法器,用于將M組查表結(jié)果中對(duì)應(yīng)于第二色彩空間同一色彩分量的值相加,得到X個(gè)轉(zhuǎn)換結(jié)果,分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;其中M、X為正整數(shù)。
本發(fā)明實(shí)施方式與現(xiàn)有技術(shù)相比,主要區(qū)別及其效果在于本發(fā)明實(shí)施方式采用查找表和加法器替代乘法器實(shí)現(xiàn)了色彩空間轉(zhuǎn)換時(shí)所需的矩陣乘法,查找表和加法器在實(shí)現(xiàn)時(shí)芯片面積較小,有效地減少了因乘法器的使用而導(dǎo)致的芯片面積大的問題,減少了計(jì)算復(fù)雜度并降低了功耗。因?yàn)椴檎冶硎穷A(yù)先計(jì)算好的,在預(yù)先計(jì)算時(shí)可以使用很高的精度進(jìn)行浮點(diǎn)乘法和加法運(yùn)算,所以最后得到的查找表有較高的精度;而現(xiàn)有技術(shù)是實(shí)時(shí)地進(jìn)行浮點(diǎn)乘法和加法運(yùn)算的,為了在計(jì)算復(fù)雜度和精度之間達(dá)到平衡,只能用較低的精度進(jìn)行浮點(diǎn)乘法和加法運(yùn)算,因此最終結(jié)果的精度不如本發(fā)明。


圖1是現(xiàn)有技術(shù)中色彩空間轉(zhuǎn)換裝置示意圖;圖2是根據(jù)本發(fā)明第一實(shí)施方式的色彩空間轉(zhuǎn)換方法流程圖;圖3是根據(jù)本發(fā)明第一實(shí)施方式的色彩空間轉(zhuǎn)換裝置示意圖;圖4是根據(jù)本發(fā)明第二實(shí)施方式的色彩空間轉(zhuǎn)換方法流程圖;圖5是根據(jù)本發(fā)明第二實(shí)施方式的色彩空間轉(zhuǎn)換裝置示意圖;
圖6是根據(jù)本發(fā)明第二實(shí)施方式的第一查找表的結(jié)構(gòu)圖;圖7是根據(jù)本發(fā)明第二實(shí)施方式的第二查找表的結(jié)構(gòu)圖;圖8是根據(jù)本發(fā)明第二實(shí)施方式的第三查找表的結(jié)構(gòu)圖;圖9是根據(jù)本發(fā)明第二實(shí)施方式的第四查找表的結(jié)構(gòu)圖;圖10是根據(jù)本發(fā)明第二實(shí)施方式的對(duì)應(yīng)于分量R的查找表項(xiàng)的軟件計(jì)算流程圖;圖11是根據(jù)本發(fā)明第二實(shí)施方式的對(duì)應(yīng)于分量G的查找表項(xiàng)的軟件計(jì)算流程圖;圖12是根據(jù)本發(fā)明第二實(shí)施方式的對(duì)應(yīng)于分量B的查找表項(xiàng)的軟件計(jì)算流程圖;圖13是根據(jù)本發(fā)明第二實(shí)施方式的包含兩組查找表和加法器的轉(zhuǎn)換裝置示意圖;圖14是根據(jù)本發(fā)明第三實(shí)施方式的第一種色彩空間轉(zhuǎn)換裝置結(jié)構(gòu)示意圖;圖15是根據(jù)本發(fā)明第三實(shí)施方式的第二種色彩空間轉(zhuǎn)換裝置結(jié)構(gòu)示意圖。
具體實(shí)施例方式
為使本發(fā)明實(shí)施方式的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明的實(shí)施方式作進(jìn)一步地詳細(xì)描述。
本發(fā)明第一實(shí)施方式涉及一種色彩空間轉(zhuǎn)換方法,用于將第一色彩空間轉(zhuǎn)換為第二色彩空間,其中,第一色彩空間是YCRCB色彩空間,第二色彩空間是RGB色彩空間,各色彩分量的值可以是經(jīng)伸張或未經(jīng)伸張的值。
下面先對(duì)本實(shí)施方式的理論依據(jù)進(jìn)行說明?,F(xiàn)有技術(shù)中,根據(jù)式(2)或式(3)可以實(shí)現(xiàn)YCRCB色彩空間到RGB色彩空間的轉(zhuǎn)換,在本實(shí)施方式中對(duì)(2)和式(3)作一些變換,以得到本實(shí)施方式的色彩空間轉(zhuǎn)換公式,變化過程描述如下首先,將式(2)或(3)表示為y(n)=Σk=13Akxk(n)+C---(5)]]>其中,式(5)中的y(n)為集合{R,G,B}中的第n個(gè)元素,n=1、2、3(對(duì)應(yīng)R、G、B)。
xk(n)為對(duì)應(yīng)y(n)的輸入變量集合{Y,CR,CB}中的第k個(gè)元素,k=1、2、3(對(duì)應(yīng)Y、CR、CB)。
Ak為輸入變量的第k個(gè)權(quán)重因子,其為常量。
接著,將xk(n)表示為二進(jìn)制的形式,其表達(dá)如式(6)所示(由于這里的推導(dǎo)涉及n,可將n省略),其中,xkb為二進(jìn)制形式下xk(n)中第b個(gè)位置的比特,其值僅為0或1。
xk=Σb=07xkb2b---(6)]]>之后的推導(dǎo)不再需要時(shí)標(biāo)n。將式(6)代入(5)得到y(tǒng)=Σk=13AkΣb=07xkb2b+C=Σk=13Σb=07xkb·Ak2b+C]]>=Σb=07(Σk=13xkb·Ak)2b+C---(7)]]>由式(7)可以看出 為3個(gè)輸入變量xk(Y、CR、CB)的第b個(gè)比特位與常量Ak的所有比特位按位與操作后作算術(shù)加操作。由此可見,式(7)可以由一個(gè)非乘法結(jié)構(gòu)的運(yùn)算構(gòu)造出。具體地說,可以預(yù)先計(jì)算出xkb的各種組合所得的和值,存儲(chǔ)在隨機(jī)存取存儲(chǔ)器(Random Access Memory,簡(jiǎn)稱“RAM”)或只讀存儲(chǔ)器(Read Only Memory,簡(jiǎn)稱“ROM”)中,或由組合邏輯實(shí)現(xiàn)查表功能,計(jì)算時(shí)直接查表得出計(jì)算積之和,然后作和值累加。由此整個(gè)計(jì)算操作為由加法和移位操作構(gòu)成。
式(7)可以進(jìn)一步變換為,y=Σb=07(Σk=13xkb·Ak)2b+C=Σb=07[(Σk=13xkb·Ak)+C255]2b---(8)]]>由此,比式(7)在硬件實(shí)現(xiàn)時(shí)減少加常數(shù)C所需要的加法器,式(8)中 可以預(yù)先計(jì)算出,由于人眼分辨能力允許一定的誤差,本實(shí)施方式將預(yù)先計(jì)算出的浮點(diǎn)結(jié)果定點(diǎn)化構(gòu)成查找表,確保實(shí)現(xiàn)誤差僅為±1,提高轉(zhuǎn)換的精度。
下面對(duì)根據(jù)式(8)實(shí)現(xiàn)的轉(zhuǎn)換流程進(jìn)行具體說明,在該流程中,YCRCB色彩空間每個(gè)色彩分量被劃分為M個(gè)片段,每個(gè)片段包含一個(gè)比特,包括以下幾個(gè)主要步驟(1)分別將YCRCB色彩空間各色彩分量中對(duì)應(yīng)位置的片段組合成一個(gè)片段組,共得到M個(gè)片段組;(2)分別根據(jù)每個(gè)片段組的值查表,共得到M組查表結(jié)果,每組查表結(jié)果中包括3個(gè)值,分別對(duì)應(yīng)于RGB色彩空間3個(gè)色彩分量;(3)根據(jù)每個(gè)片段組中的片段在YCRCB色彩空間色彩分量中的位置,對(duì)該片段組的查表結(jié)果中3個(gè)值分別進(jìn)行移位;(4)將經(jīng)移位處理的M組查表結(jié)果中對(duì)應(yīng)于RGB色彩空間同一色彩分量的值相加,得到3個(gè)轉(zhuǎn)換結(jié)果,分別對(duì)應(yīng)于RGB色彩空間3個(gè)色彩分量。
為了加快轉(zhuǎn)換速度,減少移位操作,本實(shí)施方式中將上述步驟4個(gè)步驟交疊進(jìn)行,即將輸入、查表、移位、和相加操作交疊進(jìn)行,如圖2所示。
具體地說,首先分別將YCRCB色彩空間各色彩分量中對(duì)應(yīng)位置的片段組作為一個(gè)片段組,共得到M個(gè)片段組,本實(shí)施方式中M可以為YCRCB色彩空間各色彩分量的比特?cái)?shù)目,這樣每個(gè)片段僅包含1個(gè)比特。下面以YCRCB色彩空間各色彩分量都是8比特為例進(jìn)行具體說明。
由于在本實(shí)施方式中YCRCB色彩空間各色彩分量均為8比特,可以設(shè)Y分量為a0a1a2a3a4a5a6a7,CR分量為b0b1b2b3b4b5b6b7,CB分量為c0c1c2c3c4c5c6c7,分別將Y分量、CR分量、CB分量中對(duì)應(yīng)位置的片段a0、b0、c0;a1、b1、c1;……a7、b7、c7;組合成一個(gè)片段組,共得到8個(gè)片段組。本實(shí)施方式中Y、CR、CB三個(gè)分量為串行輸入,如圖3所示,在串行輸入的過程中,三個(gè)分量每輸入一個(gè)比特,即可組成一個(gè)片段組。
在步驟201中,按照由高位到低位的順序,依次分別輸入Y、CR、CB分量的一個(gè)比特,組成一個(gè)片段組。首次輸入的是最高位(第7位)的比特。
接著,進(jìn)入步驟202,根據(jù)步驟201中所輸入的片段組的值查表,得到一組查表結(jié)果,該查表結(jié)果中包括3個(gè)值,分別對(duì)應(yīng)于RGB色彩空間的3個(gè)色彩分量。
其中,該查找表包含片段組8(23)種可能的值先與系數(shù)矩陣相乘再與常數(shù) 相加的結(jié)果,即計(jì)算出所有可能的 將其結(jié)果存儲(chǔ)在查找表中。因?yàn)椴檎冶硎穷A(yù)先計(jì)算好的,在預(yù)先計(jì)算時(shí)可以使用很高的精度,所以在轉(zhuǎn)換的流程中去除了浮點(diǎn)乘加計(jì)算定點(diǎn)化實(shí)現(xiàn)而引入的精度損失,獲得了較高的精度性能。本實(shí)施方式中只包含一個(gè)查找表,如圖3所示,各分量串行輸入后形成的8個(gè)片段組按照輸入的先后依次查找該表。
接著,進(jìn)入步驟203,將該片段組的查表結(jié)果中的3個(gè)值(即本輪的查表結(jié)果)分別與上一輪移位后(步驟205)的3個(gè)值相加,得到本輪的3個(gè)相加后的結(jié)果值。第一個(gè)片段組(即a7b7c7)的查表結(jié)果的3個(gè)值分別與0相加。
接著,進(jìn)入步驟204,判斷輸入是否已結(jié)束,即當(dāng)前參與相加的片段組是否為最后一個(gè)片段組,如果是則進(jìn)入步驟206,將本輪的3個(gè)相加后的結(jié)果值輸出,作為RGB色彩空間的3個(gè)分量;反之則進(jìn)入步驟205。
在步驟205中,對(duì)本輪的3個(gè)相加后的結(jié)果值分別進(jìn)行移位,分別左移一位。接著進(jìn)入步驟201,進(jìn)行下一輪的輸入、查找、相加和移位,經(jīng)本輪的步驟205移位后得到的3個(gè)結(jié)果值參與下一輪的相加步驟(步驟203),即與下一輪的查找結(jié)果中的3個(gè)值分別相加。
比如說,首次輸入YCRCB色彩空間3個(gè)分量的第7比特a7、b7和c7,形成一個(gè)片段組a7b7c7,根據(jù)該片段組的值進(jìn)行查表,得到的查表結(jié)果包含3個(gè)值Y7、CR7和CB7,由于首次輸入,這3個(gè)值只能分別與0相加,由于輸入并未結(jié)束,因此相加后的結(jié)果左移1位;接著進(jìn)行下一輪的輸入,輸入YCRCB色彩空間3個(gè)分量的第6比特a6、b6和c6,形成一個(gè)片段組a6b6c6,根據(jù)該片段組的值進(jìn)行查表,得到的查表結(jié)果包含3個(gè)值Y6、CR6和CB6,將這3個(gè)值分別與左移后的Y7、CR7和CB7相加,得到3個(gè)結(jié)果值,由于輸入并未結(jié)束,因此分別將這3個(gè)結(jié)果值左移1位,并進(jìn)行下一輪的輸入、查找、相加和移位;下一輪輸入YCRCB色彩空間3個(gè)分量的第5比特a5、b5和c5,形成一個(gè)片段組a5b5c5,根據(jù)該片段組的值進(jìn)行查表,得到的查表結(jié)果包含3個(gè)值Y5、CR5和CB5,將這3個(gè)值分別與前一輪左移后的3個(gè)結(jié)果值(即左移2位的Y7與左移1位的Y6的和、左移2位的CR7與左移1位的CR6的和、左移2位的CB7與左移1位的CB6的和)相加,得到3個(gè)結(jié)果值,同樣由于輸入未結(jié)束,因此分別將這3個(gè)結(jié)果值左移1位,并進(jìn)行下一輪的輸入、查找、相加和移位,直到分別輸入最后一個(gè)比特位,形成片段組a0b0c0,將片段組a0b0c0的查表結(jié)果Y5、CR5和CB5與上一輪的3個(gè)移位結(jié)果值相加,得到的結(jié)果作為RGB色彩空間的3個(gè)分量。
在本實(shí)施方式中,還可以對(duì)步驟206輸出的結(jié)果進(jìn)行舍入,最終得到RGB色彩空間3個(gè)色彩分量的轉(zhuǎn)換結(jié)果。RGB各分量的取值范圍都是0~255,對(duì)相加得到的3個(gè)轉(zhuǎn)換結(jié)果進(jìn)行舍入即為對(duì)相加得到的結(jié)果進(jìn)行判斷,若大于255,則取值255;若小于0,則取值0。
可見,本實(shí)施方式通過采用查找表和加法器替代乘法器實(shí)現(xiàn)了色彩空間轉(zhuǎn)換時(shí)所需的矩陣乘法,由于查找表和加法器在實(shí)現(xiàn)時(shí)芯片面積較小,從而能夠有效地減少了因乘法器的使用而導(dǎo)致的芯片面積大的問題,減少了計(jì)算復(fù)雜度并降低了功耗。
并且,本實(shí)施方式通過將相加和移位交疊進(jìn)行,可以大大減少移位的次數(shù),減少設(shè)備的能耗以及轉(zhuǎn)換所需的時(shí)間。以上述YCRCB色彩空間各色彩分量都是8比特為例,如果先根據(jù)每個(gè)片段組中的片段在YCRCB色彩空間色彩分量中的位置,對(duì)該片段組的查表結(jié)果中3個(gè)值分別進(jìn)行移位,再將移位后的結(jié)果相加,則對(duì)于8比特長(zhǎng)度的分量,a7b7c7對(duì)應(yīng)的查表結(jié)果Y7、CR7、CB7需要分別左移7次;a6b6c6對(duì)應(yīng)的查表結(jié)果Y6、CR6、CB6需要分別左移6次;Y5、CR5、CB5需要分別左移5次;……,共需要進(jìn)行63次左移1位的操作,而在本實(shí)施方式中,通過將相加和移位交疊進(jìn)行,總共只需進(jìn)行21次左移1位的操作,在降低芯片面積、減少計(jì)算復(fù)雜度的同時(shí),大大減少移位的次數(shù),減少設(shè)備的能耗以及轉(zhuǎn)換所需的時(shí)間。
圖3中,只需要一個(gè)3輸入查找表(LUT)、3個(gè)加法器和3個(gè)移位器即可實(shí)現(xiàn)YCRCB色彩空間與RGB色彩空間的轉(zhuǎn)換,適用于對(duì)面積要求要小,對(duì)速度要求不高的應(yīng)用中。采用1位串行輸入的缺點(diǎn)是需要較多執(zhí)行周期且加法的次數(shù)仍舊較多,功耗仍舊較大,例如在Y、CR、CB均為8比特的情況下,需要8個(gè)時(shí)鐘周期輸入查表,得到8組查表結(jié)果(每組查找結(jié)果包含對(duì)應(yīng)3個(gè)分量的3個(gè)值),每個(gè)分量都需要7次移位加法才能夠得到最終的值。
本實(shí)施方式以YCRCB色彩空間各色彩分量均為8比特為例,對(duì)YCRCB色彩空間與RGB色彩空間的轉(zhuǎn)換過程進(jìn)行了說明,在實(shí)際應(yīng)用中,各色彩分量也可以是其它長(zhǎng)度,如16比特,無論比特長(zhǎng)度為多少,均可以通過本實(shí)施方式來實(shí)現(xiàn)轉(zhuǎn)換。
本發(fā)明第二實(shí)施方式涉及一種色彩空間轉(zhuǎn)換方法,本實(shí)施方式與第一實(shí)施方式的區(qū)別在于,在第一實(shí)施方式中,對(duì)各片段組串行處理,各片段組依次查同一個(gè)表,對(duì)查表結(jié)果進(jìn)行移位后再求和;由于串行處理只需要一個(gè)查找表,實(shí)現(xiàn)起來最為簡(jiǎn)單。而在本實(shí)施方式中,對(duì)各片段組并行處理,不同的片段組查不同的表,再對(duì)查表結(jié)果求和;并行處理使得可以在一個(gè)時(shí)鐘周期內(nèi)完成轉(zhuǎn)換,獲得較高的吞吐量。
在本實(shí)施方式中,進(jìn)行轉(zhuǎn)換的第一色彩空間同樣是YCRCB空間,第二色彩空間同樣是RGB空間,兩個(gè)色彩空間各色彩分量都是8比特,兩個(gè)色彩空間均有3個(gè)色彩分量。在本實(shí)施方式中,YCRCB色彩空間每個(gè)色彩分量被劃分為4個(gè)片段,每個(gè)片段包2個(gè)比特。
下面先對(duì)本實(shí)施方式的理論依據(jù)進(jìn)行說明。在本實(shí)施方式中需要對(duì)式(8)進(jìn)行變換,得到y(tǒng)≈Σb=07[(Σk=13xkbxk(b+1)·Ak)+C85]2b,(b=0,2,4,6)---(9)]]>式(9)中xkbxk(b+1)為輸入變量的第b位和b+1個(gè)比特位。
根據(jù)式(9)實(shí)現(xiàn)的具體轉(zhuǎn)換流程如圖4所示。在步驟401中,分別將YCRCB色彩空間各色彩分量中對(duì)應(yīng)位置的片段組合成一個(gè)片段組,共得到4個(gè)片段組。
具體地說,第一片段是色彩分量的第0和第1位,由YCRCB色彩空間各色彩分量中第一片段組成的片段組1包括Y分量、CR分量、CB分量的第0和第1位(簡(jiǎn)稱Y[1:0]、CR[1:0]、CB[1:0]);第二片段是色彩分量的第2和第3位,由YCRCB色彩空間各色彩分量中第二片段組成的片段組2包括Y分量、CR分量、CB分量的第2和第3位(簡(jiǎn)稱Y[3:2]、CR[3:2]、CB[3:2]);第三片段是色彩分量的第4和第5位,由YCRCB色彩空間各色彩分量中第三片段組成的片段組3包括Y分量、CR分量、CB分量的第4和第5位(簡(jiǎn)稱Y[5:4]、CR[5:4]、CB[5:4]);第四片段是色彩分量的第6和第7位,由YCRCB色彩空間各色彩分量中第三片段組成的片段組4包括Y分量、CR分量、CB分量的第6和第7位(簡(jiǎn)稱Y[7:6]、CR[7:6]、CB[7:6]),如圖5所示。
在步驟402中,4個(gè)片段組分別使用4個(gè)不同的查找表進(jìn)行查表操作,得到4組查表結(jié)果,每組查表結(jié)果中包括3個(gè)值,分別對(duì)應(yīng)于RGB色彩空間的3個(gè)色彩分量。
具體地說,片段組1使用輸出為5比特的第一查找表;片段組2使用輸出為7比特的第二查找表;片段組3使用輸出為9比特的第三查找表;片段組4使用輸出為11比特的第四查找表,如圖5所示。
在第N查找表(N為1、2、3、4)中對(duì)應(yīng)于RGB色彩空間第L(L為1或2或3)個(gè)色彩分量的查找項(xiàng)的輸出值是 其中xkbxk(b+1)是YCRCB色彩空間第k(k為1或2或3)個(gè)色彩分量第b和b+1個(gè)比特,Ak和C是轉(zhuǎn)換涉及的常量。
下面分別對(duì)各查找表進(jìn)行說明。
第一查找表LUT1的結(jié)構(gòu)如圖6所示。
LUT1的輸入為YCRCB色彩空間中Y分量、CR分量和CB分量的第1和第0個(gè)比特位,通過三個(gè)分別為16X5比特、64X5比特和16X5比特的子查找表得到查表結(jié)果lut_r0_0[4:0]、lut_g0_o[4:0]、lut_b0_o[4:0],作為R、G、B結(jié)果的第0分量輸出。
根據(jù)公式(2)或(3)中與Y、CR、CB分量相乘的矩陣參數(shù)可看出,該矩陣參數(shù)中包含2個(gè)0元素,從而在三個(gè)子查找表中,一個(gè)子查找表可無需輸入CR分量的第1和第0個(gè)比特位(簡(jiǎn)稱CR[1:0]),僅根據(jù)Y[1:0]和CB[1:0]得到查表結(jié)果;一個(gè)子查找表(16X5比特的子查找表)可無需輸入CB[1:0],僅根據(jù)Y[1:0]和CR[1:0]得到查表結(jié)果。上述兩個(gè)子查找表由于只有兩個(gè)輸入(4比特),從而包含16個(gè)可能的結(jié)果(即為1 6X5比特的子查找表);另一個(gè)子查找表由于存在三個(gè)輸入(6比特),從而包含64個(gè)可能的結(jié)果(即為64X5比特的子查找表)。上述3個(gè)子查找表的輸出均為5比特。
子查找表中的各表項(xiàng)(即可能的結(jié)果)的計(jì)算如下。
在輸入的Y、CR、CB分量未經(jīng)伸張的情況下,即Y、CR、CB的取值范圍未從16~240伸張到0~255的情況下,由式(2)和式(9)可得到LUT1中各子查找表的表項(xiàng)計(jì)算式(10)、(11)和(12)lut_r0_o[4:0]=((1.164×Y[1:0]+1.596×CR[1:0])×256+(-222.912)×25685)>>7---(10)]]>lut_g0_o[4:0]=((1.164×Y[1:0]+(-0.391)×CB[1:0]+(-0.813)×CR[1:0])×256]]>+(135.488)×25685)>>7---(11)]]>lut_b0_o[4:0]=((1.164×Y[1:0]+2.018×CB[1:0])×256+(-276.428)×25685)>>7---(12)]]>而在輸入的Y、CR、CB分量的取值范圍伸張到0~255的情況下,由式(3)和式(9)可得到LUT1各子查找表的表項(xiàng)計(jì)算式(13)、(14)和(15)lut_r0_o[4:0]=((1×Y[1:0]+1.402×CR[1:0])×256+(-178.755)×25685)>>7---(13)]]>lut_g0_o[4:0]=((1×Y[1:0]+(0.344)×CB[1:0]+(-0.714)×CR[1:0])×256]]>+(134.895)×25685)>>7---(14)]]>lut_b0_o[4:0]=((1×Y[1:0]+1.772×CB[1:0])×256+(-225.93)85)>>7---(15)]]>根據(jù)運(yùn)算需要(只需要5比特參與運(yùn)算),式(10)到式(15)的結(jié)果只取低5位。
第二查找表LUT2的結(jié)構(gòu)如圖7所示。
LUT2的輸入為YCRCB色彩空間中Y分量、CR分量和CB分量的第3和第2個(gè)比特位,通過三個(gè)分別為16X7比特、64X7比特和16X7比特的子查找表得到查表結(jié)果lut_r1_0[6:0]、lut_g1_o[6:0]、lut_b1_o[6:0],作為R、G、B結(jié)果的第1分量輸出。
同樣,在上述三個(gè)子查找表中,一個(gè)子查找表(16X7比特的子查找表)可無需輸入CR[3:2]),僅根據(jù)Y[3:2]和CB[3:2]得到查表結(jié)果;一個(gè)子查找表可無需輸入CB[3:2],僅根據(jù)Y[3:2]和CR[3:2]得到查表結(jié)果。上述兩個(gè)子查找表由于只有兩個(gè)輸入(4比特),從而包含16個(gè)可能的結(jié)果(即為16X7比特的子查找表);另一個(gè)子查找表由于存在三個(gè)輸入(6比特),從而包含64個(gè)可能的結(jié)果(即為64X7比特的子查找表)。上述3個(gè)子查找表的輸出均為7比特。
上述子查找表中的各表項(xiàng)的計(jì)算如下。
在輸入的Y、CR、CB分量未經(jīng)伸張的情況下,由式(2)和式(9)可得到LUT2中各子查找表的表項(xiàng)計(jì)算式(16)、(17)和(18)lut_r1_o[6:0]=((1.164×Y[3:2]+1.596×CR[3:2])×256+(-222.912)×25685)>>5---(16)]]>lut_g1_o[6:0]=((1.164×Y[3:2]+(-0.391)×CB[3:2]+(-0.813)×CR[3:2])×256]]>+(135.488)×25685)>>5---(17)]]>lut_b1_o[6:0]=((1.164×Y[3:2]+2.018×CB[3:2])×256+(-276.428)×25685)>>5---(18)]]>而在輸入的Y、CR、CB分量的取值范圍伸張到0~255的情況下,由式(3)和式(9)可得到LUT2各子查找表的表項(xiàng)計(jì)算式(19)、(20)和(21)lut_r1_o[6:0]=((1×Y[3:2]+1.402×CR[3:2])×256+(-178.755)×25685)>>5---(19)]]>lut_g1_o[6:0]=((1×Y[3:2]+(-0.344)×CB[3:2]+(-0.714)×CR[3:2])×256]]>+(134.895)×25685)>>5---(20)]]>lut_b1_o[6:0]=((1×Y[3:2]+1.772×CB[3:2])×256+(-225.93)×25685)>>5---(21)]]>根據(jù)運(yùn)算需要(只需要7比特參與運(yùn)算),式(16)到式(21)的結(jié)果只取低7位。
第三查找表LUT3的結(jié)構(gòu)如圖8所示。
LUT3的輸入為YCRCB色彩空間中Y分量、CR分量和CB分量的第5和第4個(gè)比特位,通過三個(gè)分別為16X9比特、64X9比特和16X9比特的子查找表得到查表結(jié)果lut_r2_0[8:0]、lut_g2_o[8:0]、lut_b2_o[8:0],作為R、G、B結(jié)果的第2分量輸出。
同樣,在上述三個(gè)子查找表中,一個(gè)子查找表(16X9比特的子查找表)可無需輸入CR[5:4]),僅根據(jù)Y[5:4]和CB[5:4]得到查表結(jié)果;一個(gè)子查找表可無需輸入CB[5:4],僅根據(jù)Y[5:4]和CR[5:4]得到查表結(jié)果。上述兩個(gè)子查找表由于只有兩個(gè)輸入(4比特),從而包含16個(gè)可能的結(jié)果(即為16X9比特的子查找表);另一個(gè)子查找表由于存在三個(gè)輸入(6比特),從而包含64個(gè)可能的結(jié)果(即為64X9比特的子查找表)。上述3個(gè)子查找表的輸出均為9比特。
上述子查找表中的各表項(xiàng)的計(jì)算如下。
在輸入的Y、CR、CB分量未經(jīng)伸張的情況下,由式(2)和式(9)可得到LUT3中各子查找表的表項(xiàng)計(jì)算式(22)、(23)和(24)lut_r2_o[8:0]=((1.164×Y[5:4]+1.596×CR[5:4])×256+(-222.912)×25685)>>3---(22)]]>lut_g2_o[8:0]=((1.164×Y[5:4]+(-0.391)×CB[5:4]+(0.813)×CR[5:4])×256]]>+(135.488)×25685)>>3---(23)]]>lut_b2_o[8:0]=((1.164×Y[5:4]+2.018×CB[5:4])×256+(-276.428)×25685)>>3---(24)]]>而在輸入的Y、CR、CB分量的取值范圍伸張到0~255的情況下,由式(3)和式(9)可得到LUT3各子查找表的表項(xiàng)計(jì)算式(25)、(26)和(27)lut_r2_o[8:0]=((1×Y[5:4]+1.402×CR[5:4])×256+(-178.755)×25685)>>3---(25)]]>
lut_g2_o[8:0]=((1×Y[5:4]+(-0.344)×CB[5:4]+(0.714)×CR[5:4])×256]]>+(134.895)×25685)>>3---(26)]]>lut_b2_o[8:0]=((1×Y[5:4]+1.722×CB[5:4])×256+(-225.93)×25685)>>3---(27)]]>根據(jù)運(yùn)算需要(只需要9比特參與運(yùn)算),式(22)到式(27)的結(jié)果只取低9位。
第四查找表LUT4的結(jié)構(gòu)如圖9所示。
LUT4的輸入為YCRCB色彩空間中Y分量、CR分量和CB分量的第7和第6個(gè)比特位,通過三個(gè)分別為16X11比特、64X11比特和16X11比特的子查找表得到查表結(jié)果lut_r3_0[10:0]、lut_g3_o[10:0]、lut_b3_o[10:0],作為R、G、B結(jié)果的第3分量輸出。
同樣,在上述三個(gè)子查找表中,一個(gè)子查找表(16X11比特的子查找表)可無需輸入CR[7:6]),僅根據(jù)Y[7:6]和CB[7:6]得到查表結(jié)果;一個(gè)子查找表可無需輸入CB[7:6],僅根據(jù)Y[7:6]和CR[7:6]得到查表結(jié)果。上述兩個(gè)子查找表由于只有兩個(gè)輸入(4比特),從而包含16個(gè)可能的結(jié)果(即為16X11比特的子查找表);另一個(gè)子查找表由于存在三個(gè)輸入(6比特),從而包含64個(gè)可能的結(jié)果(即為64X11比特的子查找表)。上述3個(gè)子查找表的輸出均為11比特。
上述子查找表中的各表項(xiàng)的計(jì)算如下。
在輸入的Y、CR、CB分量未經(jīng)伸張的情況下,由式(2)和式(9)可得到LUT4中各子查找表的表項(xiàng)計(jì)算式(28)、(29)和(30)lut_r3_o[10:0]=((1.164×Y[7:6]+1.596×CR[7:6])×256+(-222.912)×25685+2)>>1---(28)]]>
lut_g3_o[10:0]=((1.164×Y[7:6]+(-0.391)×CB[7:6]+(-0.813)×CR[7:6])×256]]>+(135.488)×25685+2)>>1---(29)]]>lut_b3_o[10:0]=((1.164×Y[7:6]+2.018×CB[7:6])×256+(-276.428)×25685+2)>>1---(30)]]>而在輸入的Y、CR、CB分量的取值范圍伸張到0~255的情況下,由式(3)和式(9)可得到LUT4各子查找表的表項(xiàng)計(jì)算式(31)、(32)和(33)lut_r3_o[10:0]=((1×Y[7:6]+1.402×CR[7:6])×256+(-178.755)×25685+2)>>1---(31)]]>lut_g3_o[10:0]=((1×Y[7:6]+(-0.344)×CB[7:6]+(-0.714)×CR[7:6])×256]]>+(134.895)×25685+2)>>1---(32)]]>lut_b3_o[10:0]=((1×Y[7:6]+1.772×CB[7:6])×256+(-225.93)×25685+2)>>1---(33)]]>根據(jù)運(yùn)算需要(只需要11比特參與運(yùn)算),式(28)到式(33)的結(jié)果只取低11位。
在本實(shí)施方式中,LUT1、LUT2、LUT3、LUT4的表項(xiàng)都是預(yù)先計(jì)算好的,也就是說式(16)到式(33)的計(jì)算過程均是使用軟件實(shí)現(xiàn)并保存在查找表中的,軟件實(shí)現(xiàn)流程如圖10,圖11和圖12所示。其中,圖10為對(duì)應(yīng)于分量R的查找表項(xiàng)的軟件計(jì)算流程圖。圖11為對(duì)應(yīng)于分量G的查找表項(xiàng)的軟件計(jì)算流程圖。圖12為對(duì)應(yīng)于分量B的查找表項(xiàng)的軟件計(jì)算流程圖。
圖中參數(shù)Ai,j(i=0,1,2;j=0,1,2)分別對(duì)應(yīng)式(2)或式(3)中的常系數(shù)矩陣元素。Y、CR、CB分量未經(jīng)伸張的情況下參數(shù)C1對(duì)應(yīng)常系數(shù) C2對(duì)應(yīng)常系數(shù) C3對(duì)應(yīng)常系數(shù) Y、CR、CB分量經(jīng)過伸張的情況下參數(shù)C1對(duì)應(yīng)常系數(shù) C2對(duì)應(yīng)常系數(shù) C3對(duì)應(yīng)常系數(shù) LUT4中的C1、C2、C3再加上2是為了用于做4舍5入的處理。
具體地說,分量R的一個(gè)查表項(xiàng)的計(jì)算方式如圖10所示,首先將式(2)或式(3)中的常系數(shù)矩陣的第0行第0列的值與一個(gè)可能的Y分量值兩位相乘,再將該矩陣的第0行第2列的值與一個(gè)可能的CR分量?jī)晌幌喑?,之后,將兩個(gè)乘法結(jié)果相加,并將相加結(jié)果右移8位,最后將右移后的結(jié)果與參數(shù)C1相加,將相加結(jié)果作左移運(yùn)算即可得到分量R的一個(gè)查表項(xiàng)。
分量G的一個(gè)查表項(xiàng)的計(jì)算方式如圖11所示,首先分別將式(2)或式(3)中的常系數(shù)矩陣的第1行第0列的值與一個(gè)可能的Y分量值兩位相乘,將該矩陣的第1行第1列的值與一個(gè)可能的CB分量?jī)晌幌喑?,將該矩陣的?行第2列的值與一個(gè)可能的CR分量?jī)晌幌喑?,之后,將三個(gè)乘法結(jié)果相加,并將相加結(jié)果右移8位,最后將右移結(jié)果與參數(shù)C2相加,將相加結(jié)果作左移運(yùn)算即可得到分量G的一個(gè)查表項(xiàng)。
分量B的一個(gè)查表項(xiàng)的計(jì)算方式如圖12所示,首先將式(2)或式(3)中的常系數(shù)矩陣的第2行第0列的值與一個(gè)可能的Y分量值兩位相乘,再將該矩陣的第2行第1列的值與一個(gè)可能的CB分量?jī)晌幌喑耍?,將兩個(gè)乘法結(jié)果相加,并將相加結(jié)果右移8位,最后將右移結(jié)果與參數(shù)C3相加,將相加結(jié)果作左移運(yùn)算即可得到分量B的一個(gè)查表項(xiàng)。
在查表結(jié)束后,接著,進(jìn)入步驟403,將4組查表結(jié)果中對(duì)應(yīng)于RGB色彩空間同一色彩分量的值相加,得到3個(gè)轉(zhuǎn)換結(jié)果,分別對(duì)應(yīng)于RGB色彩空間3個(gè)色彩分量,對(duì)3個(gè)轉(zhuǎn)換結(jié)果分別進(jìn)行舍入處理,取其低8位作為最終的RGB轉(zhuǎn)換結(jié)果。
各分量的加法如公式(34)、(35)、(36)所示。
R=(符號(hào)位擴(kuò)展的lut_r0_o+符號(hào)位擴(kuò)展的lut_r1_o+符號(hào)位擴(kuò)展的lut_r2_o+符號(hào)位擴(kuò)展的lut_r3_o)>>1;(34)G=(符號(hào)位擴(kuò)展的lut_g0_o+符號(hào)位擴(kuò)展的lut_g1_o+符號(hào)位擴(kuò)展的lut_g2_o+符號(hào)位擴(kuò)展的lut_g3_o)>>1;(35)B=(符號(hào)位擴(kuò)展的lut_b0_o+符號(hào)位擴(kuò)展的lut_b1_o+符號(hào)位擴(kuò)展的lut_b2_o+符號(hào)位擴(kuò)展的lut_b3_o)>>1;(36)本實(shí)施方式通過對(duì)各片段組并行處理,不同的片段組查不同的表,再對(duì)查表結(jié)果求和,使得可以在一個(gè)時(shí)鐘周期內(nèi)完成轉(zhuǎn)換,獲得較高的吞吐量。另外,對(duì)于YCRCB色彩空間各色彩分量為8比特的情況,可以將每個(gè)色彩分量各分為4個(gè)片段,每個(gè)片段2比特,以并行方式處理,從而在查找表面積和加法次數(shù)之間取得較好的平衡,使查找表的面積較少、加法次數(shù)也較少,有效地降低了功耗。
并且,由于本實(shí)施方式中將轉(zhuǎn)換中涉及的加性常數(shù)C歸并到查表項(xiàng)中(如式8和式9所示),在查找表中實(shí)現(xiàn),從而減少了一次加法,簡(jiǎn)化了計(jì)算。當(dāng)然,在實(shí)際應(yīng)用中,也可以直接根據(jù)式(7)完成該轉(zhuǎn)換流程,即將常數(shù)C歸并到查表項(xiàng)中,而通過多采用一個(gè)加法器實(shí)現(xiàn)該轉(zhuǎn)換。
需要說明的是,由于Y、CR、CB分量存在經(jīng)伸張和未經(jīng)伸張兩種,在本實(shí)施方式中,可以設(shè)置一組查找表和加法器,根據(jù)輸入的Y、CR、CB分量的值選擇對(duì)應(yīng)的一組公式;可以設(shè)置兩組查找表和加法器,一組用于對(duì)經(jīng)伸張的輸入的處理,另一組用于對(duì)未經(jīng)伸張的輸入的處理,用一個(gè)多路復(fù)用選擇器選擇輸出哪一組的結(jié)果,從而可以用同一裝置完成對(duì)不同類型輸入的處理,如圖13所示。由extend_en信號(hào)選擇查表輸出,當(dāng)extend_en等于0時(shí)選擇沒有伸張的查找表LUT進(jìn)行查找和輸出,當(dāng)extend_en等于1時(shí)選擇經(jīng)伸張的查找表LUT_extend進(jìn)行查找和輸出。
值得一提的是,本實(shí)施方式以YCRCB色彩空間各色彩分量為8比特,將每個(gè)色彩分量各分為4個(gè)片段,每個(gè)片段2比特為例,進(jìn)行了具體說明,但該情況只是一個(gè)例子,本實(shí)施方式同樣可以應(yīng)用于YCRCB色彩空間各色彩分量為其它比特位數(shù),或?qū)Ω魃史至窟M(jìn)行其它劃分的情況。
本實(shí)施方式中的查找表(LUT)由組合邏輯實(shí)現(xiàn),在實(shí)際應(yīng)用中也可以使用RAM或ROM存儲(chǔ)查找項(xiàng)實(shí)現(xiàn)該查找表。
另外,本發(fā)明第一實(shí)施方式和第二實(shí)施方式對(duì)1位串行輸入和8位串行輸入(即并行輸入)兩種情況進(jìn)行了具體說明,該兩種情況僅是本發(fā)明的個(gè)別例子,在本發(fā)明的實(shí)施例中,同樣可以以1到8位的任何一種串行輸入為基礎(chǔ)進(jìn)行輸入轉(zhuǎn)換,如2位串行輸入轉(zhuǎn)換,即將8比特分為4組,每?jī)蓚€(gè)比特串行輸入,各組間并行輸入,等等。當(dāng)然輸入的位數(shù)也不一定是8位,還可以是16位等。輸入后轉(zhuǎn)換的方式與第一或第二實(shí)施方式相類似,在此不再贅述。
本發(fā)明第三實(shí)施方式涉及一種色彩空間轉(zhuǎn)換裝置。在本實(shí)施方式中,第一色彩空間每個(gè)色彩分量被劃分為M個(gè)片段,每個(gè)片段包含至少一個(gè)比特。該裝置包括查找表,用于根據(jù)輸入進(jìn)行查表,該輸入是第一色彩空間各色彩分量中對(duì)應(yīng)位置的片段組合而成的片段組,輸出一組查表結(jié)果,該查表結(jié)果包括X個(gè)值,每個(gè)值分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;共有M個(gè)片段組,每個(gè)片段組分別輸入到對(duì)應(yīng)查找表處理,共得到M組查表結(jié)果;加法單元,用于將M組查表結(jié)果中對(duì)應(yīng)于第二色彩空間同一色彩分量的值相加,得到X個(gè)轉(zhuǎn)換結(jié)果,分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;其中M、X為正整數(shù)。
本實(shí)施方式采用查找表和加法單元替代乘法器實(shí)現(xiàn)了色彩空間轉(zhuǎn)換時(shí)所需的矩陣乘法,查找表和加法單元在實(shí)現(xiàn)時(shí)芯片面積較小,有效地減少了因乘法器的使用而導(dǎo)致的芯片面積大的問題,減少了計(jì)算復(fù)雜度并降低了功耗。因?yàn)椴檎冶硎穷A(yù)先計(jì)算好的,所以在該裝置中去除了浮點(diǎn)乘加計(jì)算定點(diǎn)化實(shí)現(xiàn)而引入的精度損失,獲得了較高的精度性能。
該查找表由組合邏輯實(shí)現(xiàn),或由RAM存儲(chǔ)查找項(xiàng)實(shí)現(xiàn),或由ROM存儲(chǔ)查找項(xiàng)實(shí)現(xiàn)。
在該裝置中,上述加法單元有X個(gè),分別對(duì)應(yīng)于第二色彩空間一個(gè)色彩分量的加法處理;上述查找表為一個(gè),在不同的時(shí)鐘周期依次串行地將M個(gè)片段組中的一個(gè)輸入到該查找表,該查找表將查表結(jié)果中的X個(gè)值分別輸出到X個(gè)加法單元;該裝置還包含X個(gè)移位器,每個(gè)移位器與一個(gè)加法單元組合使用,用于對(duì)該加法單元的輸出結(jié)果移位后作為該加法單元下一個(gè)時(shí)鐘周期的一個(gè)輸入,如圖14所示。該裝置可以對(duì)各片段組串行處理,各片段組依次查同一個(gè)表,對(duì)查表結(jié)果進(jìn)行移位后再求和。由于只需要一個(gè)查找表,實(shí)現(xiàn)起來最為簡(jiǎn)單。
或者,在該裝置中,上述查找表有M個(gè),M個(gè)查找表并行地對(duì)M個(gè)片段組進(jìn)行查表;上述加法單元有X個(gè),每個(gè)加法單元中包括至少一個(gè)加法器,用于對(duì)M個(gè)查找表輸出的查表結(jié)果中對(duì)應(yīng)于第二色彩空間同一色彩分量的值進(jìn)行相加,如圖15所示。進(jìn)行上述設(shè)置的裝置可以對(duì)各片段組并行處理,不同的片段組查不同的表,再對(duì)查表結(jié)果求和。并行處理可以在一個(gè)時(shí)鐘周期內(nèi)完成轉(zhuǎn)換,獲得較高的吞吐量。
由于Y、CR、CB分量存在經(jīng)伸張和未經(jīng)伸張兩種,在本實(shí)施方式中,可以在該裝置中設(shè)置兩組上述的查找表和加法單元,第一組查找表和加法單元用于處理經(jīng)伸張的第一色彩空間各色彩分量,第二組查找表和加法單元用于處理未經(jīng)伸張的第一色彩空間各色彩分量,兩組查找表和加法單元從同一來源獲得輸入;該裝置還路包含一個(gè)多路復(fù)用選擇器,用于從兩組查找表和加法單元中選擇一組輸出,從而可以用同一裝置完成對(duì)不同類型輸入(包括伸張和未經(jīng)伸張兩種輸入)的處理。
綜上所述,在本發(fā)明的實(shí)施方式中,采用查找表和加法器替代乘法器實(shí)現(xiàn)了色彩空間轉(zhuǎn)換時(shí)所需的矩陣乘法,查找表和加法器在實(shí)現(xiàn)時(shí)芯片面積較小,有效地減少了因乘法器的使用而導(dǎo)致的芯片面積大的問題,減少了計(jì)算復(fù)雜度并降低了功耗。因?yàn)椴檎冶硎穷A(yù)先計(jì)算好的,在預(yù)先計(jì)算時(shí)可以使用很高的精度,所以在轉(zhuǎn)換的流程中去除了浮點(diǎn)乘加計(jì)算定點(diǎn)化實(shí)現(xiàn)而引入的精度損失,獲得了較高的精度性能。
將第一色彩空間各色彩分量劃分為若干個(gè)片段,對(duì)應(yīng)位置的片段組合成片段組,將片段組中各比特作為輸入去查表??梢詫?duì)各片段組串行處理,各片段組依次查同一個(gè)表,對(duì)查表結(jié)果進(jìn)行移位后再求和。串行處理只需要一個(gè)查找表,實(shí)現(xiàn)起來最為簡(jiǎn)單。也可以對(duì)各片段組并行處理,不同的片段組查不同的表,再對(duì)查表結(jié)果求和。并行處理可以在一個(gè)時(shí)鐘周期內(nèi)完成轉(zhuǎn)換,獲得較高的吞吐量。
對(duì)于第一色彩空間各色彩分量為8比特的情況,可以將每個(gè)色彩分量各分為4個(gè)片段,每個(gè)片段2比特,以并行方式處理,從而在查找表面積和加法次數(shù)之間取得較好的平衡,使查找表的面積較少、加法次數(shù)也較少,有效地降低了功耗。
對(duì)于轉(zhuǎn)換中涉及的加性常數(shù)(如實(shí)施方式中的常數(shù)C),可以在查找表中實(shí)現(xiàn),從而減少了一次加法,簡(jiǎn)化了計(jì)算。
可以設(shè)置兩組查找表和加法器,一組用于對(duì)經(jīng)伸張的輸入的處理,另一組用于對(duì)未經(jīng)伸張的輸入的處理,用一個(gè)多路復(fù)用選擇器選擇輸出哪一組的結(jié)果,從而可以用同一裝置完成對(duì)不同類型輸入的處理。
雖然通過參照本發(fā)明的某些優(yōu)選實(shí)施方式,已經(jīng)對(duì)本發(fā)明進(jìn)行了圖示和描述,但本領(lǐng)域的普通技術(shù)人員應(yīng)該明白,可以在形式上和細(xì)節(jié)上對(duì)其作各種改變,而不偏離本發(fā)明的精神和范圍。
權(quán)利要求
1.一種色彩空間轉(zhuǎn)換方法,其特征在于,第一色彩空間每個(gè)色彩分量被劃分為M個(gè)片段,每個(gè)片段包含至少一個(gè)比特,包含以下步驟分別將第一色彩空間各色彩分量中對(duì)應(yīng)位置的片段組合成一個(gè)片段組,共得到M個(gè)片段組;分別根據(jù)每個(gè)片段組的值查表,共得到M組查表結(jié)果,每組查表結(jié)果中包括X個(gè)值,分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;將M組查表結(jié)果中對(duì)應(yīng)于第二色彩空間同一色彩分量的值相加,得到X個(gè)轉(zhuǎn)換結(jié)果,分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;其中M、X為正整數(shù)。
2.根據(jù)權(quán)利要求1所述的色彩空間轉(zhuǎn)換方法,其特征在于,所述查表的步驟中,不同的片段組查同一個(gè)表;所述相加的步驟之前,還包含以下步驟根據(jù)每個(gè)片段組中的片段在第一色彩空間色彩分量中的位置,對(duì)該片段組的查表結(jié)果中X個(gè)值分別進(jìn)行移位;所述相加的步驟中,將經(jīng)移位處理的M組查表結(jié)果中對(duì)應(yīng)于第二色彩空間同一色彩分量的值相加。
3.根據(jù)權(quán)利要求1所述的色彩空間轉(zhuǎn)換方法,其特征在于,所述查表的步驟中,M個(gè)所述片段組分別使用M個(gè)查找表進(jìn)行查表操作。
4.根據(jù)權(quán)利要求3所述的色彩空間轉(zhuǎn)換方法,其特征在于,所述第一色彩空間是YCRCB空間,所述第二色彩空間是RGB空間;兩個(gè)色彩空間各色彩分量都是8比特,所述X=3,所述M為4,每個(gè)片段包含2個(gè)比特,4個(gè)片段組分別使用4個(gè)不同的查找表進(jìn)行所述查表操作;第一片段是色彩分量的第0和第1位,使用輸出為5比特的第一查找表;第二片段是色彩分量的第2和第3位,使用輸出為7比特的第二查找表;第三片段是色彩分量的第4和第5位,使用輸出為9比特的第三查找表;第四片段是色彩分量的第6和第7位,使用輸出為11比特的第四查找表。
5.根據(jù)權(quán)利要求4所述的色彩空間轉(zhuǎn)換方法,其特征在于,所述第N查找表中對(duì)應(yīng)于第二色彩空間第L個(gè)色彩分量的查找項(xiàng)的輸出值是[(Σk=13xkbxk(b+1)·Ak)+C85],]]>其中xkbxk(b+1)是第一色彩空間第k個(gè)色彩分量第b和b+1個(gè)比特,Ak和C是轉(zhuǎn)換涉及的常量,1≤L≤X,1≤N≤4。
6.根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的色彩空間轉(zhuǎn)換方法,其特征在于,所述第一色彩空間為YCRCB空間,各色彩分量的值為經(jīng)伸張或未經(jīng)伸張的值。
7.根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的色彩空間轉(zhuǎn)換方法,其特征在于,所述相加的步驟之后還包含以下步驟對(duì)相加得到的X個(gè)轉(zhuǎn)換結(jié)果進(jìn)行舍入。
8.一種色彩空間轉(zhuǎn)換裝置,其特征在于,第一色彩空間每個(gè)色彩分量被劃分為M個(gè)片段,每個(gè)片段包含至少一個(gè)比特,所述裝置包括查找表,用于根據(jù)輸入進(jìn)行查表,該輸入是第一色彩空間各色彩分量中對(duì)應(yīng)位置的片段組合而成的片段組,輸出一組查表結(jié)果,該查表結(jié)果包括X個(gè)值,每個(gè)值分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;共有M個(gè)片段組,每個(gè)片段組分別輸入到所述查找表處理,共得到M組查表結(jié)果;加法單元,用于將M組查表結(jié)果中對(duì)應(yīng)于第二色彩空間同一色彩分量的值相加,得到X個(gè)轉(zhuǎn)換結(jié)果,分別對(duì)應(yīng)于第二色彩空間X個(gè)色彩分量;其中M、X為正整數(shù)。
9.根據(jù)權(quán)利要求8所述的色彩空間轉(zhuǎn)換裝置,其特征在于,所述查找表由組合邏輯實(shí)現(xiàn),或由隨機(jī)存取存儲(chǔ)器存儲(chǔ)查找項(xiàng)實(shí)現(xiàn),或由只讀存儲(chǔ)器存儲(chǔ)查找項(xiàng)實(shí)現(xiàn)。
10.根據(jù)權(quán)利要求8所述的色彩空間轉(zhuǎn)換裝置,其特征在于,所述加法單元有X個(gè),分別對(duì)應(yīng)于第二色彩空間一個(gè)色彩分量的加法處理;所述查找表為一個(gè),在不同的時(shí)鐘周期依次將M個(gè)所述片段組中的一個(gè)輸入到該查找表,該查找表將查表結(jié)果中的X個(gè)值分別輸出到X個(gè)所述加法單元;所述裝置還包含X個(gè)移位器,每個(gè)移位器與一個(gè)所述加法單元組合使用,用于對(duì)該加法單元的輸出結(jié)果移位后作為該加法單元下一個(gè)時(shí)鐘周期的一個(gè)輸入。
11.根據(jù)權(quán)利要求8所述的色彩空間轉(zhuǎn)換裝置,其特征在于,所述查找表有M個(gè),M個(gè)查找表并行地對(duì)所述M個(gè)片段組進(jìn)行查表;所述加法單元有X個(gè),每個(gè)加法單元中包括至少一個(gè)加法器,用于對(duì)M個(gè)所述查找表輸出的查表結(jié)果中對(duì)應(yīng)于第二色彩空間同一色彩分量的值進(jìn)行相加。
12.根據(jù)權(quán)利要求8所述的色彩空間轉(zhuǎn)換裝置,其特征在于,所述查找表和加法單元有兩組,第一組查找表和加法單元用于處理經(jīng)伸張的第一色彩空間各色彩分量,第二組查找表和加法單元用于處理未經(jīng)伸張的第一色彩空間各色彩分量,兩組查找表和加法單元從同一來源獲得輸入;所述裝置還包含一個(gè)多路復(fù)用選擇器,用于從兩組查找表和加法單元中選擇一組輸出。
全文摘要
本發(fā)明涉及信號(hào)處理領(lǐng)域,公開了一種色彩空間轉(zhuǎn)換方法及其裝置,使得色彩空間轉(zhuǎn)換時(shí)可以在保持較高精度的條件下降低計(jì)算復(fù)雜度。本發(fā)明中,采用查找表和加法器替代乘法器實(shí)現(xiàn)了色彩空間轉(zhuǎn)換時(shí)所需的矩陣乘法。將第一色彩空間各色彩分量劃分為若干個(gè)片段,對(duì)應(yīng)位置的片段組合成片段組,將片段組中各比特作為輸入去查表??梢詫?duì)各片段組串行處理,各片段組依次查同一個(gè)表,對(duì)查表結(jié)果進(jìn)行移位后再求和。也可以對(duì)各片段組并行處理,不同的片段組查不同的表,再對(duì)查表結(jié)果求和。
文檔編號(hào)H04N9/64GK101090449SQ20071012677
公開日2007年12月19日 申請(qǐng)日期2007年6月19日 優(yōu)先權(quán)日2007年6月19日
發(fā)明者羅翔鯤, 季淵 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
宜州市| 镇坪县| 女性| 那曲县| 新建县| 拜泉县| 板桥市| 漳浦县| 黎川县| 门头沟区| 都昌县| 定陶县| 凤台县| 宁强县| 南召县| 启东市| 沙河市| 紫金县| 饶平县| 饶河县| 五原县| 三明市| 曲麻莱县| 高青县| 东丰县| 闻喜县| 定边县| 乌拉特后旗| 洛川县| 阳春市| 美姑县| 溧水县| 镇雄县| 长丰县| 廉江市| 唐海县| 墨江| 澄城县| 罗甸县| 增城市| 桐庐县|