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

圖像編碼裝置、圖像解碼裝置及它們的控制方法

文檔序號(hào):7650604閱讀:157來(lái)源:國(guó)知局
專利名稱:圖像編碼裝置、圖像解碼裝置及它們的控制方法
技術(shù)領(lǐng)域
本發(fā)明涉及圖像編碼裝置、圖像解碼裝置及它們的控制方法。
背景技術(shù)
作為用于圖像編碼的熵編碼的形式,有使用靜態(tài)概率分布模型的形式和基于動(dòng)態(tài)模型的形式。使用靜態(tài)概率分布模型的形式,是調(diào)查或假定信息源的性質(zhì),預(yù)先準(zhǔn)備概率分布的模型,并進(jìn)行適于該模型的編碼的形式。此外,使用動(dòng)態(tài)概率分布模型的形式,是在編碼過(guò)程中學(xué)習(xí)信息源的性質(zhì),動(dòng)態(tài)地邊變更概率分布的模型邊進(jìn)行編碼的形式。
在此,對(duì)多值圖像的無(wú)損失壓縮(lossless)編碼,列舉其2個(gè)例子。
在作為連續(xù)灰階靜止圖像的國(guó)際標(biāo)準(zhǔn)編碼方式由ISO和ITU-T推薦的JPEG所規(guī)定的無(wú)損失壓縮編碼方式中,使用預(yù)先確定的霍夫曼表對(duì)關(guān)注像素和預(yù)測(cè)值的差進(jìn)行編碼,使用了靜態(tài)模型。
而作為連續(xù)灰階靜止圖像的可逆和準(zhǔn)可逆壓縮的國(guó)際標(biāo)準(zhǔn)方式由ISO和ITU-T推薦的JPEG-LS Part1是動(dòng)態(tài)模型的一個(gè)例子。JPEG-LS在預(yù)測(cè)誤差的編碼中,采用了可通過(guò)改變編碼參數(shù)來(lái)應(yīng)對(duì)不同概率分布的Golomb編碼技術(shù)。對(duì)每個(gè)由關(guān)注像素的周圍4個(gè)像素確定的前后關(guān)系(context),參考已編碼的符號(hào)(symbol)的概率分布狀況選擇“k”,由此動(dòng)態(tài)地進(jìn)行概率分布模型的變更。
以下,說(shuō)明JPEG-LS中的預(yù)測(cè)誤差編碼的總體流程和Golomb編碼參數(shù)的確定方法。在以下的說(shuō)明中,省略與本發(fā)明沒(méi)有直接關(guān)系的因素,例如關(guān)注像素的周圍像素全部為相同像素值時(shí)適用的運(yùn)行模式、或用于準(zhǔn)可逆編碼的量化處理等。關(guān)于標(biāo)準(zhǔn)方式的詳細(xì)情況請(qǐng)參照說(shuō)明書(shū)。
圖3表示在JPEG-LS中參照的關(guān)注像素“x”與其周圍像素a、b、c、d的相對(duì)位置關(guān)系。請(qǐng)注意由于是按照光柵掃描順序?qū)ο袼剡M(jìn)行編碼,因此,關(guān)注像素“x”的周圍像素a、b、c、d全部已編碼。各個(gè)像素的值也用a、b、c、d表示。首先,利用以下的公式求出a和c、c和b、b和d的差,得到D1、D2、D3。
D1=d-bD2=b-cD3=c-a將該差值D1、D2、D3量化成九種(從-4到4),求出各自的差的量化值Q1、Q2、Q3。圖2表示差值的范圍與其量化值的對(duì)應(yīng)關(guān)系。T1、T2、T3是預(yù)先確定的非負(fù)的整數(shù)值。
例如,對(duì)取0~255值的8位圖像,設(shè)定T1=3、T2=7、T3=21這樣的值。這樣得到的Q1、Q2、Q3的組合(Q1,Q2,Q3),由于Q1、Q2、Q3分別能夠具有從-4到4的九種的值,因而是9×9×9=729種。
在此,認(rèn)為在狀態(tài)(Q1,Q2,Q3)下發(fā)生預(yù)測(cè)誤差e的概率和在狀態(tài)(-Q1,-Q2,-Q3)下發(fā)生預(yù)測(cè)誤差-e的概率相同。因此,合并這兩個(gè)狀態(tài)縮減至365種。表示該組合的信息是上述前后關(guān)系。將表示是365種狀態(tài)的哪一個(gè)的標(biāo)識(shí)符取為S,以下,將該標(biāo)識(shí)符S稱作狀態(tài)序號(hào)。
使用周圍像素a、b、c利用以下的公式求出對(duì)關(guān)注像素值x的預(yù)測(cè)值p。
p=min(a,b)(max(a,b)≤c時(shí)),或者p=max(a,b)(min(a,b)≥c時(shí)),或者p=a+b-c(其它情況下)在此,min(x,y)是返回x、y中較小者的函數(shù),max(x,y)是返回較大者的函數(shù)。
請(qǐng)注意如下情況雖然預(yù)測(cè)值p的值的取得方法要根據(jù)周圍像素a、b、c的值的大小關(guān)系進(jìn)行切換,但由于a、b、c是已編碼的像素,因此,能夠不傳送關(guān)于切換的附加信息地,在編碼側(cè)和解碼側(cè)取得相同的預(yù)測(cè)值p。在JPEG-LS中為了提高預(yù)測(cè)精度,采用了如下技術(shù)參照此前在狀態(tài)S下進(jìn)行了編碼的像素中發(fā)生的預(yù)測(cè)誤差的平均值來(lái)修正預(yù)測(cè)值p,但在此省略說(shuō)明。
求出該預(yù)測(cè)值p和關(guān)注像素x的差e,將其轉(zhuǎn)換成非負(fù)的整數(shù)值進(jìn)行Golomb編碼。此時(shí),按照關(guān)注像素的前后關(guān)系確定編碼的參數(shù)k。
在JPEG-LS中,對(duì)每個(gè)狀態(tài)S,保持發(fā)生次數(shù)N[S]和在該狀態(tài)下進(jìn)行了編碼的預(yù)測(cè)誤差的絕對(duì)值之和A[S]。Golomb編碼的參數(shù)k,滿足使用了這2個(gè)值的以下的條件?!皒^y”表示x的y次冪。
2^(k-1)<A[S]/N[S]≤2^k實(shí)際上,不需要做A[S]/N[S]的除法。只要求出滿足N[S]×2^k≥A[S]的最小的k即可。由此,在預(yù)測(cè)誤差的絕對(duì)值的平均大的狀態(tài)下作為k參數(shù)選擇大的值,相反地在絕對(duì)值的平均小的狀態(tài)下選擇小的k參數(shù)。
在編碼的開(kāi)始時(shí)刻預(yù)先對(duì)A[S]、N[S]設(shè)定初始值,通過(guò)在編碼處理的過(guò)程中隨時(shí)更新值,動(dòng)態(tài)地追蹤各個(gè)狀態(tài)的概率分布。
在基于上述JPEG-LS的圖像處理裝置中,每當(dāng)對(duì)預(yù)測(cè)誤差進(jìn)行編碼時(shí),執(zhí)行用于確定k參數(shù)的處理。
雖然人們采取了使得不進(jìn)行除法等減輕處理負(fù)荷的措施,但從處理負(fù)荷的觀點(diǎn)來(lái)看,每次都要進(jìn)行伴隨不定次數(shù)的判斷的處理不能說(shuō)是有效率的。
此外,保持預(yù)測(cè)誤差的絕對(duì)值之和需要有較多的位數(shù),根據(jù)情況A[S]的存儲(chǔ)容量有時(shí)會(huì)成為問(wèn)題。
此外,根據(jù)預(yù)測(cè)誤差的絕對(duì)值的平均來(lái)確定編碼參數(shù)k。由此,仍然會(huì)有這樣的問(wèn)題例如在對(duì)狀態(tài)分離不充分造成統(tǒng)計(jì)性質(zhì)的變化較大的信息源進(jìn)行編碼的情況下,在發(fā)生了較大的預(yù)測(cè)誤差時(shí),對(duì)此后要編碼的多個(gè)預(yù)測(cè)誤差帶來(lái)k參數(shù)變大等影響。

發(fā)明內(nèi)容
本發(fā)明正是鑒于上述問(wèn)題而完成的。并且,根據(jù)本發(fā)明的實(shí)施方式,提供如下的技術(shù)在使用動(dòng)態(tài)概率分布模型的圖像編碼中,能夠簡(jiǎn)單地確定編碼參數(shù),并且,實(shí)現(xiàn)良好的編碼性能。
本發(fā)明的第1實(shí)施方式的圖像編碼裝置具有以下結(jié)構(gòu)。即,一種圖像編碼裝置,包括輸入單元,輸入編碼對(duì)象的符號(hào);編碼單元,按照編碼參數(shù)對(duì)上述編碼對(duì)象的符號(hào)進(jìn)行編碼,生成編碼數(shù)據(jù);判斷單元,判斷上述編碼對(duì)象的符號(hào)是否超過(guò)了上述編碼參數(shù)中的目標(biāo)范圍的上限,以及是否低于該目標(biāo)范圍的下限;以及更新單元,按照上述判斷單元的判斷結(jié)果,進(jìn)行編碼參數(shù)的更新。
此外,本發(fā)明的第2實(shí)施方式的圖像編碼裝置的控制方法具有以下結(jié)構(gòu)。即,一種圖像編碼裝置的控制方法,包括輸入步驟,輸入編碼對(duì)象的符號(hào);編碼步驟,按照編碼參數(shù)對(duì)上述編碼對(duì)象的符號(hào)進(jìn)行編碼,生成編碼數(shù)據(jù);判斷步驟,判斷上述編碼對(duì)象的符號(hào)是否超過(guò)了上述編碼參數(shù)中的目標(biāo)范圍的上限,以及是否低于該目標(biāo)范圍的下限;以及更新步驟,按照上述判斷步驟的判斷結(jié)果,進(jìn)行編碼參數(shù)的更新。
此外,本發(fā)明的第3實(shí)施方式的圖像解碼裝置具有以下結(jié)構(gòu)。即,一種圖像解碼裝置,包括輸入單元,輸入編碼數(shù)據(jù);解碼單元,按照解碼參數(shù)對(duì)所輸入的編碼數(shù)據(jù)進(jìn)行解碼,生成符號(hào);
判斷單元,判斷上述符號(hào)是否超過(guò)了上述解碼參數(shù)的目標(biāo)范圍的上限,以及是否低于上述目標(biāo)范圍的下限;以及更新單元,按照上述判斷單元的判斷結(jié)果,進(jìn)行解碼參數(shù)的更新。
此外,本發(fā)明的第4實(shí)施方式的圖像解碼裝置的控制方法具有以下結(jié)構(gòu)。即,一種圖像解碼裝置的控制方法,包括輸入步驟,輸入編碼數(shù)據(jù);解碼步驟,按照解碼參數(shù)對(duì)所輸入的編碼數(shù)據(jù)進(jìn)行解碼,生成符號(hào);判斷步驟,判斷上述符號(hào)是否超過(guò)了上述解碼參數(shù)的目標(biāo)范圍的上限,以及是否低于上述目標(biāo)范圍的下限;以及更新步驟,按照上述判斷步驟的判斷結(jié)果,進(jìn)行解碼參數(shù)的更新。
此外,本發(fā)明的第5實(shí)施方式的圖像編碼裝置具有以下結(jié)構(gòu)。即,一種基于動(dòng)態(tài)概率分布模型對(duì)圖像數(shù)據(jù)進(jìn)行編碼的圖像編碼裝置,包括輸入單元,按照像素單位輸入圖像數(shù)據(jù);符號(hào)生成單元,從由上述輸入單元所輸入的關(guān)注像素?cái)?shù)據(jù),生成成為熵編碼對(duì)象的符號(hào);編碼單元,按照所給的編碼參數(shù)對(duì)由上述符號(hào)生成單元所生成的符號(hào)進(jìn)行編碼,生成編碼數(shù)據(jù);判斷單元,判斷在對(duì)成為上述編碼單元編碼對(duì)象的符號(hào)進(jìn)行編碼時(shí)使用的編碼參數(shù),是在用于使上述編碼對(duì)象的符號(hào)的代碼字為目標(biāo)代碼長(zhǎng)度內(nèi)的編碼參數(shù)可取的范圍內(nèi),還是超過(guò)上述范圍的上限,或是低于上述范圍的下限;以及更新單元,根據(jù)上述判斷單元的判斷結(jié)果更新上述編碼參數(shù)。
此外,本發(fā)明的第6實(shí)施方式的圖像編碼裝置的控制方法具有以下結(jié)構(gòu)。即,一種基于動(dòng)態(tài)概率分布模型對(duì)圖像數(shù)據(jù)進(jìn)行編碼的圖像編碼裝置的控制方法,包括輸入步驟,按照像素單位輸入圖像數(shù)據(jù);符號(hào)生成步驟,從在上述輸入步驟所輸入的關(guān)注像素?cái)?shù)據(jù),生成成為熵編碼對(duì)象的符號(hào);編碼步驟,按照所給的編碼參數(shù)對(duì)在上述符號(hào)生成步驟所生成的符號(hào)進(jìn)行編碼,生成編碼數(shù)據(jù);判斷步驟,判斷在對(duì)成為上述編碼步驟的編碼對(duì)象的符號(hào)進(jìn)行編碼時(shí)使用的編碼參數(shù),是在用于使上述編碼對(duì)象的符號(hào)的代碼字為目標(biāo)代碼長(zhǎng)度內(nèi)的編碼參數(shù)可取的范圍內(nèi),還是超過(guò)上述范圍的上限,或是低于上述范圍的下限;以及更新步驟,根據(jù)上述判斷步驟的判斷結(jié)果更新上述編碼參數(shù)。
此外,本發(fā)明的第7實(shí)施方式的圖像解碼裝置具有以下結(jié)構(gòu)。即,一種對(duì)基于動(dòng)態(tài)概率分布模型進(jìn)行了編碼的圖像數(shù)據(jù)進(jìn)行解碼的圖像解碼裝置,包括輸入單元,輸入像素單位的編碼數(shù)據(jù);解碼單元,按照所給的解碼參數(shù)對(duì)由上述輸入單元所輸入的編碼數(shù)據(jù)進(jìn)行解碼,生成關(guān)注像素的符號(hào);像素?cái)?shù)據(jù)恢復(fù)單元,從解碼得到的符號(hào)恢復(fù)成關(guān)注像素的像素?cái)?shù)據(jù);判斷單元,判斷在對(duì)由上述解碼單元得到的符號(hào)進(jìn)行解碼時(shí)使用的解碼參數(shù),是在用于將上述符號(hào)的代碼字的代碼長(zhǎng)度容納于目標(biāo)代碼長(zhǎng)度內(nèi)的編碼參數(shù)可取的范圍內(nèi),還是超過(guò)上述范圍的上限,或是低于上述范圍的下限;以及更新單元,根據(jù)上述判斷單元的判斷結(jié)果更新上述解碼參數(shù)。
此外,本發(fā)明的第8實(shí)施方式的圖像解碼裝置的控制方法具有以下結(jié)構(gòu)。即,
一種對(duì)基于動(dòng)態(tài)概率分布模型進(jìn)行了編碼的圖像數(shù)據(jù)進(jìn)行解碼的圖像解碼裝置的控制方法,包括輸入步驟,輸入像素單位的編碼數(shù)據(jù);解碼步驟,按照所給的解碼參數(shù)對(duì)在上述輸入步驟所輸入的編碼數(shù)據(jù)進(jìn)行解碼,生成關(guān)注像素的符號(hào);像素?cái)?shù)據(jù)恢復(fù)步驟,從解碼得到的符號(hào)恢復(fù)成關(guān)注像素的像素?cái)?shù)據(jù);判斷步驟,判斷對(duì)在上述解碼步驟得到的符號(hào)進(jìn)行解碼時(shí)使用的解碼參數(shù),是在用于將上述符號(hào)的代碼字的代碼長(zhǎng)度容納于目標(biāo)代碼長(zhǎng)度內(nèi)的編碼參數(shù)可取的范圍內(nèi),還是超過(guò)上述范圍的上限,或是低于上述范圍的下限;以及更新步驟,根據(jù)上述判斷步驟的判斷結(jié)果更新上述解碼參數(shù)。
根據(jù)本發(fā)明,能夠用處理負(fù)荷和存儲(chǔ)成本較少的簡(jiǎn)單方法確定編碼參數(shù),并且,能夠以良好的壓縮性能對(duì)圖像數(shù)據(jù)進(jìn)行編碼。
通過(guò)如下參照附圖的對(duì)示例性實(shí)施方式的說(shuō)明,本發(fā)明的其它特征將得以清楚。


附圖包含在說(shuō)明書(shū)中,構(gòu)成其一部分,用于說(shuō)明本發(fā)明的實(shí)施方式,并與說(shuō)明書(shū)的記述一起用于解釋本發(fā)明的原理。
圖1是第1實(shí)施方式所涉及的圖像處理裝置的框結(jié)構(gòu)圖。
圖2是表示用于對(duì)周圍像素之間的差進(jìn)行量化的表的圖。
圖3是表示編碼對(duì)象像素x與其周圍像素a、b、c的相對(duì)位置關(guān)系的圖。
圖4是表示第1實(shí)施方式所涉及的編碼處理流程的流程圖。
圖5A是表示Golomb編碼的k參數(shù)和各個(gè)符號(hào)的代碼長(zhǎng)度的關(guān)系的表。
圖5B是表示Golomb編碼的k參數(shù)、各個(gè)符號(hào)的代碼長(zhǎng)度以及修正值的關(guān)系的表。
圖6是表示第1實(shí)施方式所涉及的圖像處理裝置中的k參數(shù)變遷的例子的圖。
圖7是表示k=1時(shí)使編碼效率最大的概率分布f(n,1)的圖。
圖8A和8B是表示k參數(shù)的變遷概率的圖。
圖9是表示本圖像處理裝置的輸出碼串的結(jié)構(gòu)的圖。
圖10是第2實(shí)施方式和第3實(shí)施方式所涉及的圖像處理裝置的框結(jié)構(gòu)圖。
圖11是表示第2實(shí)施方式中的k參數(shù)更新部1002的處理流程的流程圖。
圖12是表示第3實(shí)施方式中的索引值i和參數(shù)k的對(duì)應(yīng)關(guān)系的圖。
圖13是表示第3實(shí)施方式中的k參數(shù)更新部1002的處理流程的流程圖。
圖14是表示用軟件實(shí)現(xiàn)第1~第3實(shí)施方式時(shí)的信息處理裝置的框結(jié)構(gòu)圖。
圖15是進(jìn)行在第1實(shí)施方式中的解碼的圖像處理裝置的框結(jié)構(gòu)圖。
圖16是表示Golomb編碼的例子的圖。
具體實(shí)施例方式
下面,參照附圖按照優(yōu)選實(shí)施方式詳細(xì)地說(shuō)明本發(fā)明。
<第1實(shí)施方式>
圖1是表示本實(shí)施方式所涉及的圖像處理裝置的功能結(jié)構(gòu)的框結(jié)構(gòu)圖。
如圖1所示,本實(shí)施方式所涉及的進(jìn)行圖像編碼的圖像處理裝置具有圖像輸入部101、行緩沖器(line buffer)102、預(yù)測(cè)器103、預(yù)測(cè)誤差生成部104、預(yù)測(cè)順序轉(zhuǎn)換部105、Golomb編碼部106、k參數(shù)更新部107以及碼串形成部108。在圖1中109表示信號(hào)線。
以下,參照?qǐng)D1說(shuō)明本實(shí)施方式所涉及的圖像處理裝置進(jìn)行的圖像編碼處理。在此,編碼對(duì)象圖像,取為各個(gè)像素由8位(0~255的范圍)的表示亮度值或者密度值的像素?cái)?shù)據(jù)構(gòu)成的、單色圖像數(shù)據(jù)。但是,本方式也同樣能夠適用于RGB、CMYK等1個(gè)像素用多個(gè)分量(component)(顏色)表現(xiàn)的彩色圖像、各個(gè)分量用8位以上的位精度表現(xiàn)的圖像數(shù)據(jù)。例如,在適用于彩色圖像時(shí),只要分離成每個(gè)分量,與單色圖像同樣地對(duì)各個(gè)分量進(jìn)行編碼即可。編碼對(duì)象圖像,由水平方向W像素、垂直方向G像素構(gòu)成。
接著,說(shuō)明本實(shí)施方式的圖像處理裝置的各部的動(dòng)作。
圖像輸入部101,輸入編碼對(duì)象圖像數(shù)據(jù)的像素?cái)?shù)據(jù)x。該輸入為光柵掃描順序。假定輸入源為圖像掃描儀,但也可以是存儲(chǔ)有圖像數(shù)據(jù)文件的存儲(chǔ)介質(zhì),不管該輸入源的種類如何。
行緩沖器102具有存儲(chǔ)2行圖像數(shù)據(jù)的存儲(chǔ)容量,依次存儲(chǔ)從圖像輸入部101輸入的圖像數(shù)據(jù)。即,行緩沖器102所需要的容量是2×W字節(jié)。行緩沖器102所保持的2行的像素?cái)?shù)據(jù),在編碼開(kāi)始時(shí)刻用預(yù)定的值初始化。作為像素的初始值,只要是可在編碼裝置和解碼裝置中共同設(shè)定的值即可。在此,為了簡(jiǎn)化說(shuō)明,在開(kāi)始編碼處理時(shí)假定用“0”對(duì)行緩沖器102進(jìn)行初始化。
預(yù)測(cè)器103,對(duì)從圖像輸入部101輸入的像素(以下稱作關(guān)注像素),參照已編碼的周圍像素a、b、c生成預(yù)測(cè)值p。關(guān)注像素x與周圍像素a、b、c的相對(duì)位置關(guān)系如圖3所示。已編碼的周圍像素a、b、c由行緩沖器102提供。在關(guān)注像素x為行的起始時(shí)或者行的最后的像素的情況下,周圍像素a、b、c的任意一個(gè)有時(shí)會(huì)在編碼對(duì)象圖像的范圍外。在這樣的情況下,雖然在編碼裝置和解碼裝置中使用共同的值,但在此圖像的范圍外的值取為0。在本實(shí)施方式中,預(yù)測(cè)值p利用以下的公式求出。
p=min(a,b)(max(a,b)≤c時(shí)),或者p=max(a,b)(min(a,b)≥c時(shí)),或者p=a+b-c(其它情況下)在生成預(yù)測(cè)值時(shí)除了上述方法還可以使用各種方法。例如,也可以像可在JPEG標(biāo)準(zhǔn)方式的無(wú)損失壓縮編碼中使用的7個(gè)預(yù)測(cè)式那樣,使用其它預(yù)測(cè)式。此外,還能夠使用像JPEG-LS標(biāo)準(zhǔn)方式那樣,通過(guò)使用在已編碼的像素中平均發(fā)生的預(yù)測(cè)誤差值修正上述預(yù)測(cè)值p,來(lái)提高預(yù)測(cè)精度的方法。
預(yù)測(cè)誤差生成部104,對(duì)由預(yù)測(cè)器103生成的預(yù)測(cè)值p和從圖像輸入部101輸入的關(guān)注像素值x的差“x-p”進(jìn)行運(yùn)算,將其結(jié)果作為預(yù)測(cè)誤差e輸出。
預(yù)測(cè)順序轉(zhuǎn)換部105,利用以下的公式將由預(yù)測(cè)誤差生成部104求出的預(yù)測(cè)誤差e映射成非負(fù)的整數(shù)值M(e)。以下,將M(e)稱作預(yù)測(cè)順序。
M(e)=2×e(e≥0時(shí))M(e)=-2×e-1 (e<0時(shí))由此,M(e)成為非負(fù)的整數(shù),能夠根據(jù)其是偶數(shù)還是奇數(shù)來(lái)辨別預(yù)測(cè)誤差e的正負(fù)記號(hào)(sign)。
Golomb編碼部106,使用在k參數(shù)更新部107內(nèi)部保持的k參數(shù),對(duì)從預(yù)測(cè)順序轉(zhuǎn)換部105輸出的預(yù)測(cè)順序M(e)進(jìn)行Golomb編碼,輸出2值符號(hào)串。
Golomb編碼具有如下特征可將非負(fù)的整數(shù)值作為編碼對(duì)象,用取決于參數(shù)變量m而不同的多個(gè)概率模型進(jìn)行編碼。此外,由于能夠根據(jù)編碼對(duì)象符號(hào)和參數(shù)變量m導(dǎo)出代碼字,因而還具有不需要代碼表這樣的優(yōu)點(diǎn)。在以下的說(shuō)明中,限定于參數(shù)變量m為2^k的Golomb編碼的特殊形式,將k作為參數(shù)變量進(jìn)行說(shuō)明。在由ISO和ITU-T作為國(guó)際標(biāo)準(zhǔn)推薦的JPEG-LS(ISO/IEC 14495-1|ITU-TRecommendation T.87)中,這樣的Golomb編碼的一種形式被用作預(yù)測(cè)誤差的編碼方式。
用編碼參數(shù)k對(duì)編碼對(duì)象的非負(fù)的整數(shù)值n進(jìn)行Golomb編碼的順序如下所述。首先,將n右移k位求出整數(shù)值u。簡(jiǎn)單地說(shuō),整數(shù)值u是n除以2^k得到的商。
對(duì)符號(hào)n的代碼,由u個(gè)“0”后面的“1”(可變長(zhǎng)部)和n的下位k位(固定長(zhǎng)部)的組合構(gòu)成。圖16表示k=0,1,2,3時(shí)Golomb編碼的例子。
例如,在k=2(因此m=4)、符號(hào)n=5時(shí),u=floor(5/4)=1,因此,可變長(zhǎng)部成為二進(jìn)制的“01”。此外,符號(hào)n的下位2位成為“01”,因此,k=2時(shí)的符號(hào)“5”的Golomb代碼字(codeword)成為“0101”,代碼長(zhǎng)度為4位。
在此所說(shuō)的代碼的構(gòu)成方法是一個(gè)例子,即使調(diào)換固定長(zhǎng)部和可變長(zhǎng)部的順序也能夠構(gòu)成可唯一解碼的代碼。此外,也可以使0和1相反地構(gòu)成代碼。
k參數(shù)更新部107,在由Golomb編碼部106對(duì)從預(yù)測(cè)順序轉(zhuǎn)換部105輸出的預(yù)測(cè)順序M(e)進(jìn)行了編碼后,進(jìn)行在內(nèi)部保持的k參數(shù)的更新處理。更新處理通過(guò)以下方式來(lái)進(jìn)行比較編碼后的預(yù)測(cè)順序M(e)的值和用當(dāng)前保持的k參數(shù)能夠得到最小代碼長(zhǎng)度的范圍(以下稱作最佳符號(hào)范圍),根據(jù)需要將k的值+1或者-1。
圖5A是表示Golomb編碼的各個(gè)符號(hào)的值(縱軸)、k參數(shù)(橫軸)和二維空間中的代碼長(zhǎng)度的表。如圖所示,表示用k=0~5各自的編碼參數(shù)對(duì)0~28的編碼對(duì)象符號(hào)(對(duì)應(yīng)于預(yù)測(cè)順序M(e))進(jìn)行編碼時(shí)發(fā)生的代碼長(zhǎng)度(位數(shù))。
在圖示的表中,分成3個(gè)區(qū)域進(jìn)行顯示。第1個(gè)區(qū)域是關(guān)注各個(gè)符號(hào),其代碼字的代碼長(zhǎng)度為最小(最短)的區(qū)域50。其余的2個(gè)區(qū)域是由區(qū)域50隔開(kāi)的區(qū)域51、52。區(qū)域51,可以說(shuō)成是用比規(guī)定區(qū)域50的編碼參數(shù)k的值大的編碼參數(shù)k、和不是最小代碼長(zhǎng)度的代碼長(zhǎng)度定義的區(qū)域。此外,區(qū)域52,可以說(shuō)成是用比規(guī)定區(qū)域50的編碼參數(shù)k的值小的編碼參數(shù)k、和不是最小代碼長(zhǎng)度的代碼長(zhǎng)度定義的區(qū)域。
例如,在編碼對(duì)象符號(hào)為“8”、編碼參數(shù)k=2~4的范圍內(nèi),最小代碼長(zhǎng)度為“5”。因此,在符號(hào)為“8”時(shí),編碼參數(shù)k=2~4的范圍的代碼長(zhǎng)度為“5”的位置,在區(qū)域50內(nèi)。
此外,在編碼對(duì)象符號(hào)為“8”、編碼參數(shù)k=5時(shí),代碼長(zhǎng)度為“6”,不是最小代碼長(zhǎng)度“5”。故而,在符號(hào)為“8”時(shí),編碼參數(shù)k=5的代碼長(zhǎng)度為“6”的位置,在區(qū)域51內(nèi)。
同樣地,在編碼對(duì)象符號(hào)為“8”、編碼參數(shù)k=0、1時(shí),代碼長(zhǎng)度為“9”或“6”,仍然不是最小代碼長(zhǎng)度“5”。故而,在符號(hào)為“8”時(shí),編碼參數(shù)k=0、1的代碼長(zhǎng)度為“9”或“6”的位置,在區(qū)域52內(nèi)。
本實(shí)施方式的k參數(shù)更新部107,當(dāng)編碼對(duì)象的預(yù)測(cè)順序M(e)在區(qū)域51內(nèi)時(shí),在對(duì)接下來(lái)的像素進(jìn)行編碼時(shí),判斷為適合更小的k參數(shù),將k的值修正為更小的值。具體地說(shuō),準(zhǔn)備接下來(lái)的像素的編碼,從參數(shù)k減1。
此外,當(dāng)編碼后的預(yù)測(cè)順序M(e)在區(qū)域52內(nèi)時(shí),判斷為更大的k參數(shù)合適,將k的值修正為更大的值。具體地說(shuō),將k加1進(jìn)行更新。
并且,當(dāng)編碼后的預(yù)測(cè)順序M(e)在區(qū)域50內(nèi)時(shí),判斷為當(dāng)前的k參數(shù)合適,不修正而是維持k的值。
圖示的區(qū)域51、52的邊界能夠根據(jù)參數(shù)k導(dǎo)出。當(dāng)用n表示編碼對(duì)象符號(hào)的值時(shí),區(qū)域51是滿足“n<2^(k-1)”的關(guān)系的范圍,區(qū)域52是3×2^k≤n的范圍。換言之,不必存儲(chǔ)全部的圖5A的表,只要僅存儲(chǔ)定義區(qū)域50的信息即可。區(qū)域50,只要存儲(chǔ)各個(gè)符號(hào)的值,并對(duì)于每個(gè)符號(hào)存儲(chǔ)對(duì)其進(jìn)行編碼時(shí)成為最小代碼長(zhǎng)度的參數(shù)k的下限值和上限值即可。
此外,為了不要該判斷處理,也可以預(yù)先由k參數(shù)更新部107存儲(chǔ)保持圖5B所示的表。圖5B的表,是在圖5A的表中追加為下一次編碼準(zhǔn)備的修正值(-1、0、+1)的項(xiàng)目而成的。區(qū)域50內(nèi)的修正值是“0”,區(qū)域51內(nèi)的修正值是“-1”,并且,區(qū)域52內(nèi)的修正值是“+1”。因此,修正值H(=-1、0、+1)可表現(xiàn)為H(n,k),因此,將該值H(n,k)與當(dāng)前的k參數(shù)相加即可更新k參數(shù)。
碼串形成部108,使從Golomb編碼部106輸出的碼串(2值符號(hào)串)結(jié)合起來(lái),加上必要的附加信息形成成為本圖像處理裝置的輸出的編碼數(shù)據(jù),從信號(hào)線109輸出。如果輸出目的地是存儲(chǔ)裝置,則存儲(chǔ)為文件。
圖9是表示本圖像處理裝置的輸出碼串的結(jié)構(gòu)的圖。在輸出碼串的起始,作為首部添加有對(duì)圖像進(jìn)行解碼所需要的信息,例如圖像的水平方向像素?cái)?shù)、垂直方向像素?cái)?shù)、表示顏色空間的屬性信息、分量數(shù)、各個(gè)分量的位數(shù)等附加信息。
圖4是表示基于本實(shí)施方式所涉及的圖像處理裝置的編碼對(duì)象圖像數(shù)據(jù)的編碼處理流程的流程圖。以下,參照?qǐng)D4所示的流程圖,說(shuō)明本實(shí)施方式所涉及的圖像處理裝置進(jìn)行的圖像編碼處理的整體流程。
首先,在編碼處理之前,先進(jìn)行存儲(chǔ)于行緩沖器102的像素?cái)?shù)據(jù)、和保持于k參數(shù)更新部107的編碼參數(shù)k的初始化。在本實(shí)施方式中,將行緩沖器102的像素?cái)?shù)據(jù)全部初始化為0,將k參數(shù)更新部107所保持的k參數(shù)設(shè)定為“2”(步驟S400)。接著,圖像輸入部101,按照光柵掃描順序開(kāi)始輸入圖像數(shù)據(jù),將所輸入的圖像數(shù)據(jù)的各個(gè)像素?cái)?shù)據(jù)存儲(chǔ)到行緩沖器102,并且,提供給預(yù)測(cè)誤差生成部104(步驟S401)。
接著,從行緩沖器102讀取關(guān)注像素的周圍像素a、b、c,由預(yù)測(cè)器103生成預(yù)測(cè)值p(步驟S402)。預(yù)測(cè)誤差生成部104,求出關(guān)注像素x和預(yù)測(cè)器103生成的預(yù)測(cè)值p的差,作為預(yù)測(cè)誤差e輸出(步驟S403)。預(yù)測(cè)順序轉(zhuǎn)換部105,將該預(yù)測(cè)誤差e轉(zhuǎn)換成預(yù)測(cè)順序M(e)(步驟S404)。Golomb編碼部106,使用在k參數(shù)更新部107內(nèi)部所保持的k參數(shù),對(duì)預(yù)測(cè)順序M(e)進(jìn)行Golomb編碼(步驟S405)。
接著,由k參數(shù)更新部107比較編碼后的預(yù)測(cè)順序M(e)和更新前的k參數(shù)時(shí)的最佳范圍,根據(jù)需要更新自身所保持的k參數(shù)(步驟S406)。即,判斷用預(yù)測(cè)順序M(e)和由Golomb編碼部106使用的k參數(shù)所表示的位置,位于圖5A或者圖5B的區(qū)域50~52的哪個(gè)區(qū)域內(nèi),根據(jù)位于哪個(gè)區(qū)域更新(修正)將在對(duì)接下來(lái)的像素進(jìn)行編碼時(shí)使用的k參數(shù)。
接著,判斷編碼后的像素是否為圖像的最后的像素(步驟S407),在為最后的像素時(shí)結(jié)束編碼處理,在不是時(shí)將處理轉(zhuǎn)移至步驟S401,進(jìn)行接下來(lái)的像素的編碼處理。
根據(jù)以上的處理,進(jìn)行圖像整體的編碼。編碼處理不必一定按照該順序進(jìn)行。例如,在此雖然按照像素?cái)?shù)據(jù)的讀取(步驟S401)、預(yù)測(cè)值的生成(步驟S402)這樣的順序進(jìn)行了說(shuō)明,但也可以將順序調(diào)換。此外,如果能夠正確地交接更新前的k參數(shù),則也可以進(jìn)行改變Golomb編碼(步驟S405)和k參數(shù)的更新(步驟S406)的順序,或者并行進(jìn)行這樣的變更。
在此,以對(duì)從預(yù)測(cè)順序轉(zhuǎn)換部105依次輸出的預(yù)測(cè)順序的列“0,0,2,0,0,1,0,3,0…”進(jìn)行編碼的情況為例,在圖6中表示編碼所使用的k參數(shù)的值、更新處理的內(nèi)容以及更新處理后的k值的推移。
以下,依次說(shuō)明k參數(shù)的變化。在開(kāi)始編碼時(shí)將k參數(shù)的初始值設(shè)定為“2”,使用該k=2對(duì)最初的符號(hào)“0”進(jìn)行Golomb編碼。相對(duì)于k=2,符號(hào)“0”屬于圖5A的區(qū)域51。因此,從k減1,更新為k=1。
用更新后的k(此時(shí)k=1)對(duì)第2個(gè)符號(hào)“0”進(jìn)行編碼。此時(shí),符號(hào)“0”同樣屬于圖5A的區(qū)域51,因此,從k減1,更新為k=0。
接著,用k=0對(duì)符號(hào)“2”進(jìn)行編碼。符號(hào)“2”位于k=0的最佳符號(hào)范圍,因此,k的值沒(méi)有變化。以下,同樣對(duì)符號(hào)串“0,0,1,0”進(jìn)行編碼,但基于同樣的理由k的值沒(méi)有變化。
接著,用k=0對(duì)符號(hào)“3”進(jìn)行編碼,由于符號(hào)相當(dāng)于區(qū)域52,因此加1更新為k=1。用k=1對(duì)接下來(lái)的符號(hào)“0”進(jìn)行編碼,由于屬于區(qū)域51,因此減1更新為k=0。這樣,進(jìn)行編碼和參數(shù)k的更新處理。由該例子可知按照編碼對(duì)象符號(hào)的局部的性質(zhì)逐步變更k參數(shù)的情況。
當(dāng)要對(duì)由本實(shí)施方式的圖像處理裝置生成的編碼數(shù)據(jù)進(jìn)行解碼時(shí),參照在首部所示的附加信息,按照編碼處理的相反順序逐步對(duì)各個(gè)像素進(jìn)行解碼即可。此時(shí),在對(duì)各個(gè)符號(hào)進(jìn)行解碼時(shí),Golomb編碼的k參數(shù)使用在編碼側(cè)和解碼側(cè)相同的值。即,在解碼側(cè)也給予與編碼側(cè)相同的初始值開(kāi)始解碼,判斷解碼后的符號(hào)屬于當(dāng)前的k參數(shù)是否位于最佳符號(hào)范圍,根據(jù)需要用與編碼時(shí)相同的算法逐步進(jìn)行更新。
圖15是表示解碼側(cè)的圖像處理裝置的功能結(jié)構(gòu)的框圖。對(duì)于與在先說(shuō)明的圖1共同的框標(biāo)注相同的序號(hào),省略說(shuō)明。如圖所示,解碼側(cè)的圖像處理裝置具有編碼數(shù)據(jù)輸入部1501、Golomb編碼解碼部1502、預(yù)測(cè)順序逆轉(zhuǎn)換部1503、像素值恢復(fù)部1504、首部分析部1505、行緩沖器102、預(yù)測(cè)器103以及k參數(shù)更新部107。
以下,說(shuō)明進(jìn)行解碼處理的圖像處理裝置的各個(gè)處理部的動(dòng)作。
編碼數(shù)據(jù)輸入部1501,輸入成為解碼對(duì)象的編碼數(shù)據(jù)。此時(shí),編碼數(shù)據(jù)輸入部1501,進(jìn)行編碼數(shù)據(jù)的構(gòu)造分析,向首部分析部1505傳送首部,向Golomb編碼解碼部1502傳送像素編碼數(shù)據(jù)。
首部分析部1505,分析從編碼數(shù)據(jù)輸入部1501傳送的首部,取出編碼后的圖像數(shù)據(jù)的水平、垂直方向像素?cái)?shù)等解碼處理所需要的信息,使之反映到圖像處理裝置的控制。
Golomb編碼解碼部1502,取得k參數(shù)更新部107所保持的k參數(shù),使用它恢復(fù)到預(yù)測(cè)順序M(e)。
k參數(shù)更新部107,采用與在先說(shuō)明的編碼時(shí)的更新處理相同的方法,基于解碼后的預(yù)測(cè)順序M(e)根據(jù)需要更新k參數(shù)。
預(yù)測(cè)順序逆轉(zhuǎn)換部1503,根據(jù)由Golomb編碼解碼部1502解碼后的預(yù)測(cè)順序M(e)利用以下的公式恢復(fù)預(yù)測(cè)誤差e。
e=M(e)/2(M(e)為偶數(shù)時(shí))e=-(M(e)+1)/2 (M(e)為奇數(shù)時(shí))像素值恢復(fù)部1504,根據(jù)由預(yù)測(cè)順序逆轉(zhuǎn)換部1503恢復(fù)的預(yù)測(cè)誤差e和由預(yù)測(cè)器103生成的預(yù)測(cè)值p,通過(guò)e+p恢復(fù)關(guān)注像素值x進(jìn)行輸出。解碼后的像素值x被存儲(chǔ)到行緩沖器102,在生成以下的像素的預(yù)測(cè)值時(shí)使用。
通過(guò)反復(fù)進(jìn)行從Golomb編碼解碼部1502到像素值恢復(fù)部1504的處理,根據(jù)編碼數(shù)據(jù)進(jìn)行圖像數(shù)據(jù)的解碼,直到構(gòu)成圖像的全部像素被解碼為止。
如以上說(shuō)明的那樣,在本實(shí)施方式所涉及的圖像處理裝置中,判斷編碼后的符號(hào)或者解碼后的符號(hào)是否位于當(dāng)前的k參數(shù)中的最佳符號(hào)范圍內(nèi),當(dāng)不在最佳符號(hào)范圍內(nèi)時(shí)通過(guò)+1或者-1進(jìn)行更新,進(jìn)行控制使之成為合適的k參數(shù)。由此,即使是局部的統(tǒng)計(jì)性質(zhì)不同的圖像數(shù)據(jù),也能夠追蹤性質(zhì)的變化高效率地進(jìn)行編碼。
<第1實(shí)施方式的變形例>
也可以由個(gè)人計(jì)算機(jī)等通用信息處理裝置和在其上運(yùn)行的計(jì)算機(jī)程序來(lái)實(shí)現(xiàn)上述實(shí)施方式。
圖14是表示本變形例所涉及的信息處理裝置的基本結(jié)構(gòu)的圖。在圖14中,1401是CPU,使用存儲(chǔ)于RAM1402或ROM1403的程序或數(shù)據(jù)控制本裝置整體,并且,執(zhí)行后述的圖像編碼處理。
1402是RAM,具有用于存儲(chǔ)經(jīng)由外部存儲(chǔ)裝置1407、存儲(chǔ)介質(zhì)驅(qū)動(dòng)器1408、或者I/F1409從外部裝置下載的程序或數(shù)據(jù)的區(qū)域,并且,還具有CPU1401在執(zhí)行各種處理時(shí)使用的工作區(qū)域。
1403是ROM,存儲(chǔ)引導(dǎo)程序、本裝置的設(shè)定程序和數(shù)據(jù)。
1404、1405分別是鍵盤、鼠標(biāo)等定點(diǎn)設(shè)備,能夠?qū)PU1401輸入各種指示。
1406是顯示裝置,由CRT或液晶畫(huà)面等構(gòu)成,能夠顯示圖像、文字等信息。
1407是外部存儲(chǔ)裝置,是硬盤驅(qū)動(dòng)裝置等大容量信息存儲(chǔ)裝置,其中保存有OS、后述的用于圖像編碼、解碼處理的應(yīng)用程序、編碼對(duì)象的圖像數(shù)據(jù)等。OS和應(yīng)用程序,通過(guò)CPU1401的控制,加載到RAM1402上的預(yù)定區(qū)域,從而被執(zhí)行。
1408是存儲(chǔ)介質(zhì)驅(qū)動(dòng)器,用于讀取存儲(chǔ)于CD-ROM、DVD-ROM等存儲(chǔ)介質(zhì)的程序或數(shù)據(jù),輸出到RAM1402或外部存儲(chǔ)裝置1407。也可以預(yù)先在該存儲(chǔ)介質(zhì)中記錄后述的用于圖像編碼處理的程序、編碼對(duì)象圖像。在這樣的情況下,存儲(chǔ)介質(zhì)驅(qū)動(dòng)器1408,通過(guò)CPU1401的控制,將這些程序或數(shù)據(jù)加載到RAM1402上的預(yù)定區(qū)域。
1409是I/F,通過(guò)該I/F1409將外部裝置連接到本裝置,從而能夠在本裝置與外部裝置之間進(jìn)行數(shù)據(jù)通信。例如能夠經(jīng)由I/F1409將成為編碼對(duì)象的圖像數(shù)據(jù)輸入到本裝置的RAM1402或外部存儲(chǔ)裝置1407,或者相反地,將所生成的圖像編碼數(shù)據(jù)從本裝置的RAM1402或外部存儲(chǔ)裝置1407輸出到裝置外部。1410是連接上述各部的總線。
在進(jìn)行圖像編碼處理時(shí),將對(duì)應(yīng)的程序從外部存儲(chǔ)裝置1407加載到RAM1402,由CPU1401執(zhí)行該處理。該編碼處理的程序,基本上按照?qǐng)D4的流程圖進(jìn)行處理即可。此外,該程序由相當(dāng)于圖1所示的各個(gè)結(jié)構(gòu)的模塊(也可以稱作函數(shù)、子程序)構(gòu)成即可。不過(guò),行緩沖器102將會(huì)在RAM1402確保相應(yīng)容量的數(shù)據(jù)區(qū)域。
此外,解碼處理所涉及的程序,無(wú)疑也可以由圖15所示的模塊構(gòu)成。
<第2實(shí)施方式>
接著,說(shuō)明第2實(shí)施方式。在第1實(shí)施方式的圖像處理裝置中,每當(dāng)編碼對(duì)象的符號(hào)在最佳符號(hào)范圍外時(shí),通過(guò)增減編碼參數(shù)k來(lái)進(jìn)行修正。在這樣的情況下,具有能夠迅速應(yīng)對(duì)信息源的統(tǒng)計(jì)性質(zhì)變化的優(yōu)點(diǎn),但在性質(zhì)變化較少的信息源中穩(wěn)定性將成為問(wèn)題。
例如,考慮在各自的k參數(shù)中編碼效率最大的概率分布f(n,k)=(1/2)^L(n,k)。L(n,k)是用編碼參數(shù)k對(duì)編碼對(duì)象符號(hào)n進(jìn)行Golomb編碼時(shí)的代碼長(zhǎng)度,由L(n,k)=k+1+floor(n/(2^k))給出。x^y表示x的y次冪,floor(x)表示返回不超過(guò)x的最大整數(shù)的函數(shù)。
圖7表示k=1時(shí)的概率分布f(n,1)。
對(duì)于概率分布f(n,k),研究屬于圖5A所示的區(qū)域52的任意一個(gè)符號(hào)出現(xiàn)的概率,即在某個(gè)k時(shí)屬于區(qū)域52的符號(hào)的出現(xiàn)概率的和時(shí),可知在任何k參數(shù)時(shí)均為12.5%。
當(dāng)同樣地觀察區(qū)域51時(shí),除了k=0時(shí),區(qū)域51的符號(hào)的出現(xiàn)概率為25%。即,表示即使用某個(gè)k參數(shù)(k≠0)對(duì)其理想的概率分布的信息源f(n,k)進(jìn)行了編碼時(shí),k參數(shù)仍以37.5%(=12.5%+25%)的概率變化。
圖8A表示k=0時(shí)對(duì)具有f(n,k)的概率分布的信息源的符號(hào)進(jìn)行編碼所引起的k參數(shù)的變遷;圖8B表示k>0時(shí)對(duì)具有f(n,k)的概率分布的信息源的符號(hào)進(jìn)行編碼所引起的k參數(shù)的變遷。
在此,作為本發(fā)明的第2實(shí)施方式,說(shuō)明抑制k參數(shù)的變動(dòng),提高穩(wěn)定性的方法。
圖10是表示本第2實(shí)施方式所涉及的圖像處理裝置的功能結(jié)構(gòu)的框圖。對(duì)于與在第1實(shí)施方式中說(shuō)明的圖1共同的框標(biāo)注相同的序號(hào),省略說(shuō)明。
本第2實(shí)施方式所涉及的圖像處理裝置具有圖像輸入部101、行緩沖器102、預(yù)測(cè)器103、預(yù)測(cè)誤差生成部104、預(yù)測(cè)順序轉(zhuǎn)換部105、Golomb編碼部106、前后關(guān)系生成部1001、k參數(shù)更新部1002以及碼串形成部108。此外,在圖10中109表示信號(hào)線。
本第2實(shí)施方式所涉及的圖像處理裝置的基本結(jié)構(gòu),也可以由專用的硬件來(lái)構(gòu)成各自的功能。此外,也可以與在先說(shuō)明的第1實(shí)施方式的變形例同樣地取為圖14所示的結(jié)構(gòu),通過(guò)使計(jì)算機(jī)實(shí)現(xiàn)圖10所示的各部的功能的程序來(lái)實(shí)現(xiàn)。在為后者的情況下,該程序經(jīng)由上述外部存儲(chǔ)裝置1407、存儲(chǔ)介質(zhì)驅(qū)動(dòng)器1408或者I/F1409從外部裝置加載到RAM1402,由CPU1401執(zhí)行。
以下,使用圖10說(shuō)明本第2實(shí)施方式所涉及的圖像處理裝置進(jìn)行的處理。
本第2實(shí)施方式所涉及的圖像處理裝置的作為編碼對(duì)象的圖像數(shù)據(jù),與第1實(shí)施方式相同,作為各個(gè)像素用8位表現(xiàn)0~255范圍的亮度值的單色圖像數(shù)據(jù)進(jìn)行說(shuō)明。不過(guò),還能夠適用于RGB、CMYK彩色圖像等由多個(gè)分量構(gòu)成的圖像數(shù)據(jù)。此外,編碼對(duì)象的圖像數(shù)據(jù),按照光柵掃描順序排列各個(gè)像素的值而構(gòu)成。圖像由水平方向W像素、垂直方向H像素構(gòu)成。
在本第2實(shí)施方式的圖像處理裝置中,也與第1實(shí)施方式的圖像處理裝置相同,圖像輸入部101輸入成為編碼對(duì)象的像素?cái)?shù)據(jù)x,將該像素?cái)?shù)據(jù)x存儲(chǔ)到行緩沖器102。由在先說(shuō)明的預(yù)測(cè)器103、預(yù)測(cè)誤差生成部104、預(yù)測(cè)順序轉(zhuǎn)換部105,生成成為熵編碼對(duì)象的非負(fù)的整數(shù)值M(e)。
另一方面,在前后關(guān)系生成部1001中,從行緩沖器102讀取關(guān)注像素x的周圍像素a、b、c、d,生成表示關(guān)注像素周圍的狀態(tài)的前后關(guān)系。在本實(shí)施方式中,采用與JPEG-LS相類似的方法,分離成狀態(tài)序號(hào)S為0~728的729種的狀態(tài)。
如在現(xiàn)有技術(shù)的說(shuō)明部分中說(shuō)明的那樣,對(duì)于周圍像素a、b、c、d,分別按照?qǐng)D2的表對(duì)a和b、b和c、c和d的差進(jìn)行量化,得到Q1、Q2、Q3。生成唯一地表示該組合的狀態(tài)序號(hào)S。在本第2實(shí)施方式中利用以下的公式確定狀態(tài)序號(hào)S。
S=81×Q1+9×Q2+Q3+364與JPEG-LS相同地,可以合并狀態(tài)(Q1,Q2,Q3)和狀態(tài)(-Q1,-Q2,-Q3)縮減至365個(gè)狀態(tài),也可以參照a、b、c、d以外的周圍像素生成前后關(guān)系。
在k參數(shù)更新部1002內(nèi)部,保持存儲(chǔ)對(duì)應(yīng)于各個(gè)狀態(tài)S的k參數(shù)的陣列K[S],和在后述的更新處理中參照的標(biāo)記陣列F[S]。在開(kāi)始編碼時(shí),陣列K[S](S=0,1,2,…)被設(shè)定為初始值(在本實(shí)施方式中為2),將標(biāo)記陣列F[S](S=0,1,2,…)初始化為“0”。
圖11是表示對(duì)關(guān)注像素x進(jìn)行編碼時(shí)k參數(shù)更新部1002的處理流程的流程圖。使用圖11說(shuō)明在各個(gè)像素中進(jìn)行的k參數(shù)更新部1002的處理流程。
首先,k參數(shù)更新部1002,取得從前后關(guān)系生成部1001輸出的狀態(tài)序號(hào)S和從預(yù)測(cè)順序轉(zhuǎn)換部105輸出的預(yù)測(cè)順序M(e)(步驟S1101)。接著,k參數(shù)更新部1002,利用陣列元素K[S]取得對(duì)應(yīng)于所輸入的狀態(tài)序號(hào)S的k參數(shù),將其輸出到Golomb編碼部106(步驟S1102)。由此,Golomb編碼部106,進(jìn)行預(yù)測(cè)順序M(e)的編碼。
接著,判斷用當(dāng)前的k參數(shù)的值、即K[S]和作為符號(hào)的預(yù)測(cè)順序M(e)表示的位置(K[S],M(e))是否在區(qū)域51內(nèi)(步驟S1103)。
換言之,就是判斷當(dāng)前的k參數(shù)的值,是否超過(guò)了成為預(yù)測(cè)順序M(e)的最小代碼長(zhǎng)度的k參數(shù)的上限值。
當(dāng)判斷為位置(K[S],M(e))在區(qū)域51內(nèi)時(shí),將處理前進(jìn)至步驟S1107,判斷標(biāo)記陣列的元素F[S]是否為“1”。在判斷為不是“1”時(shí),對(duì)標(biāo)記陣列元素F[S]設(shè)定“1”(步驟S1110)。此外,當(dāng)在步驟S1107中判斷為標(biāo)記陣列的元素F[S]是“1”時(shí),從K[S]減“1”進(jìn)行更新(步驟S1108),對(duì)標(biāo)記陣列的元素F[S]設(shè)定“0”(步驟S1109)。
當(dāng)在步驟S1103中判斷為位置(K[S],M(e))不屬于區(qū)域51時(shí),前進(jìn)至步驟S1104,判斷位置(K[S],M(e))是否在區(qū)域52內(nèi)。
換言之,就是判斷當(dāng)前的k參數(shù)的值,是否低于成為預(yù)測(cè)順序M(e)的最小代碼長(zhǎng)度的k參數(shù)的下限值。
當(dāng)判斷為位置(K[S],M(e))在區(qū)域52內(nèi)時(shí),對(duì)K[S]加“1”進(jìn)行更新,對(duì)F[S]設(shè)定“0”(步驟S1106)。
此外,當(dāng)在步驟S1104中判斷為位置(K[S],M(e))不屬于區(qū)域52時(shí),即,判斷為位置(K[S],M(e))位于區(qū)域50內(nèi)時(shí),判斷為當(dāng)前的編碼處理狀態(tài)處于最佳符號(hào)范圍,不進(jìn)行k參數(shù)的更新。
此后,更新后的K[S]適用于關(guān)注像素以后的、為相同狀態(tài)序號(hào)S的像素的編碼。
總結(jié)以上內(nèi)容,在本第2實(shí)施方式中,當(dāng)位置(K[S],M(e))位于區(qū)域52內(nèi)時(shí),與第1實(shí)施方式相同地直接對(duì)k參數(shù)加1進(jìn)行更新。但是,使用標(biāo)記F[S],將當(dāng)位置(K[S],M(e))位于區(qū)域51內(nèi)時(shí)減1進(jìn)行更新的處理取1/2的頻率。
在此,再次考慮用某個(gè)k參數(shù)對(duì)在本實(shí)施方式的說(shuō)明的開(kāi)始所述的概率分布f(n,k)的信息源進(jìn)行編碼的情況,在本實(shí)施方式中,考慮發(fā)生增大k的方向的更新的概率為12.5%,發(fā)生減小k的方向的更新的概率為12.5%以下,因此,不進(jìn)行k參數(shù)變遷的概率為75%以上。
因此,能夠減小k參數(shù)更新中、增加方向和減少方向的概率偏差,并且,減少不需要的k參數(shù)變動(dòng)的發(fā)生概率。
與第1實(shí)施方式相同地,Golomb編碼部106,使用從k參數(shù)更新部107輸出的k參數(shù),對(duì)預(yù)測(cè)順序M(e)進(jìn)行編碼,由碼串形成部108進(jìn)行合并,作為對(duì)編碼對(duì)象的圖像數(shù)據(jù)的碼串,由碼串形成部108生成的最終碼串通過(guò)信號(hào)線109被輸出到裝置外部。
基于本第2實(shí)施方式所涉及的圖像處理裝置的編碼對(duì)象圖像數(shù)據(jù)的編碼處理流程,僅對(duì)圖4所示的第1實(shí)施方式的圖像處理裝置的流程圖實(shí)施了細(xì)微的改動(dòng)。具體而言,在從步驟S401到步驟S404的處理時(shí)序由前后關(guān)系生成部1001進(jìn)行前后關(guān)系生成處理。例如,在步驟S401讀取關(guān)注像素?cái)?shù)據(jù)和在步驟S402生成預(yù)測(cè)值之間,實(shí)施該前后關(guān)系生成處理。
對(duì)由本第2實(shí)施方式的圖像處理裝置所生成的編碼數(shù)據(jù)進(jìn)行解碼,只要參照首部所示的附加信息按照編碼處理的相反順序?qū)Ω鱾€(gè)像素進(jìn)行解碼即可。
此時(shí),在各個(gè)符號(hào)的解碼中,Golomb編碼的k參數(shù)使用在編碼側(cè)和解碼側(cè)相同的值。
即,在解碼側(cè)也給出與編碼側(cè)相同的初始值開(kāi)始解碼,判斷解碼后的符號(hào)相對(duì)于當(dāng)前的k參數(shù)是否位于最佳符號(hào)范圍,根據(jù)需要采用與編碼時(shí)相同的算法預(yù)先更新即可。
像以上說(shuō)明的那樣,在本第2實(shí)施方式所涉及的圖像處理裝置中,能夠采用簡(jiǎn)單的方法進(jìn)行追蹤信息源性質(zhì)的編碼。此外,能夠通過(guò)調(diào)整參數(shù)變遷的頻率,減少相對(duì)于統(tǒng)計(jì)性質(zhì)變化較少的信息源無(wú)用的參數(shù)變遷。
<第3實(shí)施方式>
在上述第2實(shí)施方式中,示出了在發(fā)生2次區(qū)域51的符號(hào)時(shí)減少k參數(shù)的方法,但也可以根據(jù)k參數(shù)改變實(shí)施更新的發(fā)生次數(shù)。將其例子作為第3實(shí)施方式進(jìn)行說(shuō)明。
本第3實(shí)施方式的圖像處理裝置的框圖,與在第2實(shí)施方式說(shuō)明的圖10相同,僅k參數(shù)更新部1002的處理不同。以下,說(shuō)明本第3實(shí)施方式中的k參數(shù)更新部1002的處理。
本第3實(shí)施方式的k參數(shù)更新部1002,保持圖12所示的索引值i和參數(shù)k的對(duì)應(yīng)表,以及對(duì)由前后關(guān)系生成部1001分類的365個(gè)狀態(tài)序號(hào)S存儲(chǔ)索引值i的陣列I[S]。陣列I[S]的所有元素在開(kāi)始編碼的時(shí)刻被設(shè)定為初始值(在此為4)。即,不管狀態(tài)序號(hào)S如何,初始狀態(tài)的參數(shù)k都為“2”。更清楚地說(shuō),如果用陣列K[i]表現(xiàn)基于索引i的k參數(shù),則可表記為K[i]=K[I[S]]。
圖13是表示對(duì)關(guān)注像素x進(jìn)行編碼時(shí)k參數(shù)更新部1002的處理流程的流程圖。使用圖13說(shuō)明在各個(gè)像素中進(jìn)行的k參數(shù)更新部1002的處理流程。
k參數(shù)更新部1002,取得從前后關(guān)系生成部1001輸出的狀態(tài)序號(hào)S和從預(yù)測(cè)順序轉(zhuǎn)換部105輸出的預(yù)測(cè)順序M(e)(步驟S1301)。取出所輸入的狀態(tài)序號(hào)S的索引值陣列的元素I[S],將參照?qǐng)D12的對(duì)應(yīng)表與之對(duì)應(yīng)得k參數(shù)的值輸出到Golomb編碼部106(步驟S1102)。例如,如果對(duì)于某個(gè)狀態(tài)序號(hào)S,I[S]的值為5,則參照對(duì)應(yīng)表k參數(shù)為K[I[S]]=K“5”,因此,作為k參數(shù)將“3”輸出到Golomb編碼部106。由此,Golomb編碼部106,進(jìn)行對(duì)應(yīng)于關(guān)注像素x的預(yù)測(cè)順序M(e)的編碼。
接著,判斷用當(dāng)前的k參數(shù)和預(yù)測(cè)順序M(e)表示的位置是否在區(qū)域51內(nèi)(步驟S1303)。當(dāng)判斷為該位置屬于區(qū)域51內(nèi)時(shí),將處理移至步驟S1308,當(dāng)不屬于時(shí),移至步驟S1304。
當(dāng)屬于區(qū)域51時(shí),檢查陣列元素I[S]是否為0(步驟S1308),在不是0時(shí)從I[S]的值中減1進(jìn)行更新(步驟S1309)。此外,當(dāng)陣列元素I[S]為0時(shí),不進(jìn)行上述減法。
當(dāng)在步驟S1303中判斷為用參數(shù)k和M(e)表示的位置在區(qū)域51以外時(shí),判斷該位置是否在區(qū)域52之內(nèi)(步驟S1304)。
當(dāng)判斷為在區(qū)域52內(nèi)時(shí),使I[S]的值與“2”相加進(jìn)行更新(步驟S1305)。此外,檢查I[S]是否超過(guò)了預(yù)先確定的索引的最大值(在本實(shí)施方式中為23)(步驟S1306),在超過(guò)了時(shí)將I[S]設(shè)定為最大值(步驟S1307)。
此外,當(dāng)在步驟S1304中判斷為用參數(shù)k和M(e)表示的位置不屬于區(qū)域52時(shí),表示該位置位于區(qū)域50內(nèi)。即,判斷為處于最佳符號(hào)范圍,不進(jìn)行索引I[S]的更新。更新后的I[S],在對(duì)關(guān)注像素以后的成為相同狀態(tài)序號(hào)S的像素進(jìn)行編碼時(shí)使用。
由上述處理可知,在本第3實(shí)施方式中示出了在k參數(shù)小的部分索引I[S]和k參數(shù)的變遷迅速進(jìn)行、在k參數(shù)大的部分變遷變得緩慢的例子。
不僅能夠通過(guò)直接增減k參數(shù)進(jìn)行更新,還能夠通過(guò)像本第3實(shí)施方式那樣導(dǎo)入索引值間接地控制k參數(shù),符合編碼對(duì)象的信息源的動(dòng)態(tài)特性地,更自由地設(shè)計(jì)編碼系統(tǒng)。
<其他變形例>
本發(fā)明不限于上述實(shí)施方式。例如,雖然示出了作為預(yù)測(cè)誤差的生成方法采用與JPEG-LS相同的方法,適當(dāng)?shù)厍袚Qa、b、a+b-c這三種預(yù)測(cè)式的例子,但也可以使用(a+b)/2等除此以外的預(yù)測(cè)式。并且,只要是從已編碼的區(qū)域生成預(yù)測(cè)值的方法即可,例如,也可以采用如下方法在由多個(gè)幀構(gòu)成的動(dòng)圖像中,將存在于在編碼完成之前的上一幀中與關(guān)注像素相同的空間位置的像素值作為預(yù)測(cè)值。
此外,如在JPEG-LS所采用的那樣,也可以參照已編碼的預(yù)測(cè)誤差修正預(yù)測(cè)值來(lái)提高預(yù)測(cè)精度。
此外,也可以預(yù)測(cè)預(yù)測(cè)誤差的符號(hào)再進(jìn)行符號(hào)翻轉(zhuǎn),或者與通過(guò)模轉(zhuǎn)換去除動(dòng)態(tài)范圍這樣的效率改善的研究組合起來(lái)使用。
此外,在第1~第3實(shí)施方式中,示出了以代碼長(zhǎng)度最小的范圍為基準(zhǔn)判斷k參數(shù)的更新的結(jié)構(gòu)。例如,在k=2的情況下,在編碼對(duì)象的符號(hào)(在實(shí)施方式中為M(e))為2~11時(shí)作為最佳符號(hào)范圍不進(jìn)行參數(shù)更新,在為0或者1時(shí)在減小k的方向進(jìn)行更新,在為12以上時(shí)在增大k的方向進(jìn)行更新。
但是,例如也可以進(jìn)行將到最小代碼長(zhǎng)度+1認(rèn)為是適當(dāng)?shù)姆秶?,使范圍變寬或者變窄的修正?br> 如果k=2時(shí)將到最小代碼長(zhǎng)度+1認(rèn)為是適當(dāng)范圍,則在符號(hào)的值為1~15時(shí)不進(jìn)行參數(shù)更新,參數(shù)穩(wěn)定性提高。但是,在這樣的情況下,由于不從k=1變遷成k=0,因此,需要在k=1時(shí)不適用范圍擴(kuò)大等的例外處理。
此外,在上述實(shí)施方式中,示出了作為熵編碼使用參數(shù)變量m=2^k的Golomb編碼的例子,但不限于此。也可以使用不為2^k的m來(lái)適用本方法。并且,還能夠適用Exponential-Golomb編碼等Golomb編碼的派生形式。
此外,在實(shí)施方式中,特別地以進(jìn)行編碼/解碼的圖像處理裝置為例進(jìn)行了說(shuō)明,但也可以適用于進(jìn)行圖像的編碼或解碼的裝置,例如復(fù)印機(jī)、打印機(jī)、讀取器等裝置。此外,如在先說(shuō)明的那樣,本實(shí)施方式的功能,也可以通過(guò)計(jì)算機(jī)讀取、執(zhí)行的計(jì)算機(jī)程序來(lái)實(shí)現(xiàn),因此,計(jì)算機(jī)程序顯然也屬于本發(fā)明的范疇。此外,通常計(jì)算機(jī)程序被存儲(chǔ)于CD-ROM等計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),將其設(shè)置為計(jì)算機(jī)的讀入裝置(CD-ROM驅(qū)動(dòng)器等),可通過(guò)復(fù)制或安裝到系統(tǒng)中來(lái)執(zhí)行之。由此,這樣的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)顯然也屬于本發(fā)明的范疇。
盡管參照示例性實(shí)施方式描述了本發(fā)明,但是應(yīng)當(dāng)理解為本發(fā)明不限于所公開(kāi)的示例性實(shí)施方式。將按照最寬的范圍來(lái)解釋后附的權(quán)利要求的范圍,以便概括所有這些修改和等同的結(jié)構(gòu)和功能。
權(quán)利要求
1.一種圖像編碼裝置,包括輸入單元,輸入編碼對(duì)象的符號(hào);編碼單元,按照編碼參數(shù)對(duì)上述編碼對(duì)象的符號(hào)進(jìn)行編碼,生成編碼數(shù)據(jù);判斷單元,判斷上述編碼對(duì)象的符號(hào)是否超過(guò)了上述編碼參數(shù)的目標(biāo)范圍的上限,以及是否低于該目標(biāo)范圍的下限;以及更新單元,按照上述判斷單元的判斷結(jié)果,進(jìn)行編碼參數(shù)的更新。
2.一種圖像編碼裝置的控制方法,包括輸入步驟,輸入編碼對(duì)象的符號(hào);編碼步驟,按照編碼參數(shù)對(duì)上述編碼對(duì)象的符號(hào)進(jìn)行編碼,生成編碼數(shù)據(jù);判斷步驟,判斷上述編碼對(duì)象的符號(hào)是否超過(guò)了上述編碼參數(shù)中的目標(biāo)范圍的上限,以及是否低于該目標(biāo)范圍的下限;以及更新步驟,按照上述判斷步驟的判斷結(jié)果,進(jìn)行編碼參數(shù)的更新。
3.一種圖像解碼裝置,包括輸入單元,輸入編碼數(shù)據(jù);解碼單元,按照解碼參數(shù)對(duì)所輸入的編碼數(shù)據(jù)進(jìn)行解碼,生成符號(hào);判斷單元,判斷上述符號(hào)是否超過(guò)了上述解碼參數(shù)的目標(biāo)范圍的上限,以及是否低于上述目標(biāo)范圍的下限;以及更新單元,按照上述判斷單元的判斷結(jié)果,進(jìn)行解碼參數(shù)的更新。
4.一種圖像解碼裝置的控制方法,包括輸入步驟,輸入編碼數(shù)據(jù);解碼步驟,按照解碼參數(shù)對(duì)所輸入的編碼數(shù)據(jù)進(jìn)行解碼,生成符號(hào);判斷步驟,判斷上述符號(hào)是否超過(guò)了上述解碼參數(shù)的目標(biāo)范圍的上限,以及是否低于上述目標(biāo)范圍的下限;以及更新步驟,按照上述判斷步驟的判斷結(jié)果,進(jìn)行解碼參數(shù)的更新。
5.一種基于動(dòng)態(tài)概率分布模型對(duì)圖像數(shù)據(jù)進(jìn)行編碼的圖像編碼裝置,包括輸入單元,以像素單位輸入圖像數(shù)據(jù);符號(hào)生成單元,從由上述輸入單元所輸入的關(guān)注像素?cái)?shù)據(jù),生成成為熵編碼對(duì)象的符號(hào);編碼單元,按照所給的編碼參數(shù)對(duì)由上述符號(hào)生成單元所生成的符號(hào)進(jìn)行編碼,生成編碼數(shù)據(jù);判斷單元,判斷在對(duì)成為上述編碼單元的編碼對(duì)象的符號(hào)進(jìn)行編碼時(shí)使用的編碼參數(shù),是在用于使上述編碼對(duì)象的符號(hào)的代碼字為目標(biāo)代碼長(zhǎng)度內(nèi)的編碼參數(shù)可取范圍內(nèi),還是超過(guò)上述范圍的上限,或是低于上述范圍的下限;以及更新單元,根據(jù)上述判斷單元的判斷結(jié)果更新上述編碼參數(shù)。
6.根據(jù)權(quán)利要求5所述的圖像編碼裝置,上述編碼單元是Golomb編碼單元。
7.根據(jù)權(quán)利要求5所述的圖像編碼裝置,上述符號(hào)生成單元包括預(yù)測(cè)值計(jì)算單元,根據(jù)位于關(guān)注像素?cái)?shù)據(jù)的周圍、已經(jīng)編碼的至少1個(gè)像素?cái)?shù)據(jù),計(jì)算關(guān)注像素?cái)?shù)據(jù)的預(yù)測(cè)值;預(yù)測(cè)誤差計(jì)算單元,計(jì)算作為被計(jì)算出的預(yù)測(cè)值和關(guān)注像素?cái)?shù)據(jù)的差的預(yù)測(cè)誤差;以及轉(zhuǎn)換單元,將所計(jì)算出的預(yù)測(cè)誤差的正負(fù)記號(hào)轉(zhuǎn)換成可判斷的非負(fù)的整數(shù)值;上述符號(hào)生成單元,生成由上述轉(zhuǎn)換單元轉(zhuǎn)換而成的非負(fù)的整數(shù)值,作為上述符號(hào)。
8.根據(jù)權(quán)利要求5所述的圖像編碼裝置,當(dāng)將由上述編碼單元對(duì)上述符號(hào)進(jìn)行編碼時(shí)使用的編碼參數(shù)定義為K、將使上述符號(hào)的代碼長(zhǎng)度為目標(biāo)代碼長(zhǎng)度的編碼參數(shù)的范圍的下限和上限定義為K Smin和K Smax時(shí),上述更新單元,在處于K<K Smin的關(guān)系時(shí),使編碼參數(shù)K增大,在處于K Smax<K的關(guān)系時(shí),使編碼參數(shù)K減小,在處于K Smin≤K≤K Smax的關(guān)系時(shí),維持編碼參數(shù)K的值。
9.根據(jù)權(quán)利要求5所述的圖像編碼裝置,還包括狀態(tài)信息計(jì)算單元,根據(jù)已經(jīng)編碼的、位于關(guān)注像素X周圍的像素?cái)?shù)據(jù),計(jì)算關(guān)注像素位置的狀態(tài)信息S;以及編碼參數(shù)存儲(chǔ)單元,存儲(chǔ)上述狀態(tài)信息S可取的范圍的編碼參數(shù)陣列K[];上述編碼單元,按照由關(guān)注像素?cái)?shù)據(jù)的狀態(tài)信息S確定的編碼參數(shù)K[S]進(jìn)行編碼;上述更新單元,更新編碼參數(shù)K[S]。
10.根據(jù)權(quán)利要求9所述的圖像編碼裝置,當(dāng)將由上述編碼單元對(duì)上述符號(hào)進(jìn)行編碼時(shí)使用的編碼參數(shù)定義為K[S]、將上述符號(hào)的代碼長(zhǎng)度為目標(biāo)代碼長(zhǎng)度的編碼參數(shù)的范圍的下限和上限定義為K Smin和K Smax時(shí),上述更新單元,在處于K[S]<K Smin的關(guān)系時(shí),使編碼參數(shù)K[S]增大,在處于K Smax<K[S]的關(guān)系時(shí),以小于1的概率使編碼參數(shù)K[S]減小,在處于K Smin≤K[S]≤K Smax的關(guān)系時(shí),維持編碼參數(shù)K[S]的值。
11.根據(jù)權(quán)利要求5所述的圖像編碼裝置,還包括狀態(tài)信息計(jì)算單元,根據(jù)已經(jīng)編碼的、位于關(guān)注像素X周圍的像素?cái)?shù)據(jù),計(jì)算關(guān)注像素位置的狀態(tài)信息S;索引存儲(chǔ)單元,存儲(chǔ)由上述狀態(tài)信息計(jì)算單元計(jì)算出的狀態(tài)信息S可取的范圍的索引陣列i[];以及編碼參數(shù)存儲(chǔ)單元,存儲(chǔ)上述索引陣列i[]可取的范圍的編碼參數(shù)陣列K[i];上述編碼單元,按照由關(guān)注像素?cái)?shù)據(jù)的狀態(tài)信息S確定的編碼參數(shù)K[i[S]]進(jìn)行編碼;上述更新單元,更新編碼參數(shù)K[i[S]]。
12.根據(jù)權(quán)利要求11所述的圖像編碼裝置,當(dāng)將由上述編碼單元對(duì)上述符號(hào)進(jìn)行編碼時(shí)使用的編碼參數(shù)定義為K、將上述符號(hào)的代碼長(zhǎng)度為目標(biāo)代碼長(zhǎng)度的編碼參數(shù)的范圍的下限和上限定義為K Smin和K Smax時(shí),上述更新單元,在處于K[i[S]]<K Smin的關(guān)系時(shí),使編碼參數(shù)K[i[S]]增大預(yù)先設(shè)定的修正值α,在處于K Smax<K[i[S]]的關(guān)系時(shí),使編碼參數(shù)K[i[S]]減小比上述修正值α小的修正值β,在處于K Smin≤K[i[S]]≤K Smax的關(guān)系時(shí),維持編碼參數(shù)K[i[S]]的值。
13.一種基于動(dòng)態(tài)概率分布模型對(duì)圖像數(shù)據(jù)進(jìn)行編碼的圖像編碼裝置的控制方法,包括輸入步驟,按照像素單位輸入圖像數(shù)據(jù);符號(hào)生成步驟,從在上述輸入步驟所輸入的關(guān)注像素?cái)?shù)據(jù),生成成為熵編碼對(duì)象的符號(hào);編碼步驟,按照所給的編碼參數(shù)對(duì)在上述符號(hào)生成步驟所生成的符號(hào)進(jìn)行編碼,生成編碼數(shù)據(jù);判斷步驟,判斷在對(duì)成為上述編碼步驟的編碼對(duì)象的符號(hào)進(jìn)行編碼時(shí)使用的編碼參數(shù),是在用于使上述編碼對(duì)象的符號(hào)的代碼字為目標(biāo)代碼長(zhǎng)度內(nèi)的編碼參數(shù)可取的范圍內(nèi),還是超過(guò)上述范圍的上限,或是低于上述范圍的下限;以及更新步驟,根據(jù)上述判斷步驟的判斷結(jié)果更新上述編碼參數(shù)。
14.一種對(duì)基于動(dòng)態(tài)概率分布模型進(jìn)行了編碼的圖像數(shù)據(jù)進(jìn)行解碼的圖像解碼裝置,包括輸入單元,輸入像素單位的編碼數(shù)據(jù);解碼單元,按照所給的解碼參數(shù)對(duì)由上述輸入單元所輸入的編碼數(shù)據(jù)進(jìn)行解碼,生成關(guān)注像素的符號(hào);像素?cái)?shù)據(jù)恢復(fù)單元,從解碼得到的符號(hào)恢復(fù)成關(guān)注像素的像素?cái)?shù)據(jù);判斷單元,判斷在對(duì)由上述解碼單元得到的符號(hào)進(jìn)行解碼時(shí)使用的解碼參數(shù),是在用于將上述符號(hào)的代碼字的代碼長(zhǎng)度容納于目標(biāo)代碼長(zhǎng)度內(nèi)的編碼參數(shù)可取的范圍內(nèi),還是超過(guò)上述范圍的上限,或是低于上述范圍的下限;以及更新單元,根據(jù)上述判斷單元的判斷結(jié)果更新上述解碼參數(shù)。
15.一種對(duì)基于動(dòng)態(tài)概率分布模型進(jìn)行了編碼的圖像數(shù)據(jù)進(jìn)行解碼的圖像解碼裝置的控制方法,包括輸入步驟,輸入像素單位的編碼數(shù)據(jù);解碼步驟,按照所給的解碼參數(shù)對(duì)在上述輸入步驟所輸入的編碼數(shù)據(jù)進(jìn)行解碼,生成關(guān)注像素的符號(hào);像素?cái)?shù)據(jù)恢復(fù)步驟,從解碼得到的符號(hào)恢復(fù)成關(guān)注像素的像素?cái)?shù)據(jù);判斷步驟,判斷對(duì)在上述解碼步驟得到的符號(hào)進(jìn)行解碼時(shí)使用的解碼參數(shù),是在用于將上述符號(hào)的代碼字的代碼長(zhǎng)度容納于目標(biāo)代碼長(zhǎng)度內(nèi)的編碼參數(shù)可取的范圍內(nèi),還是超過(guò)上述范圍的上限,或是低于上述范圍的下限;以及更新步驟,根據(jù)上述判斷步驟的判斷結(jié)果更新上述解碼參數(shù)。
全文摘要
本發(fā)明提供一種圖像編碼裝置、圖像解碼裝置及它們的控制方法,能夠用處理負(fù)荷和存儲(chǔ)成本較少的簡(jiǎn)單方法確定編碼參數(shù),并且,能夠以良好的壓縮性能對(duì)圖像數(shù)據(jù)進(jìn)行編碼。為此,本發(fā)明的編碼裝置的預(yù)測(cè)誤差生成部,計(jì)算關(guān)注像素和預(yù)測(cè)值的差(預(yù)測(cè)誤差)。預(yù)測(cè)順序轉(zhuǎn)換部將預(yù)測(cè)誤差轉(zhuǎn)換成非負(fù)的整數(shù),將其作為預(yù)測(cè)順序M(e)輸出。Golomb編碼部,按照從k參數(shù)更新部提供的k參數(shù)進(jìn)行編碼。k參數(shù)更新部,根據(jù)關(guān)注像素的預(yù)測(cè)順序M(e)和提供給Golomb編碼部的k參數(shù),更新用于接下來(lái)的編碼的k參數(shù)。
文檔編號(hào)H04N1/41GK101039422SQ20071008836
公開(kāi)日2007年9月19日 申請(qǐng)日期2007年3月16日 優(yōu)先權(quán)日2006年3月17日
發(fā)明者梶原浩 申請(qǐng)人:佳能株式會(huì)社
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
广宁县| 吴忠市| 乌兰浩特市| 鹰潭市| 城固县| 当雄县| 永嘉县| 昌宁县| 盐池县| 吉林市| 舞阳县| 河南省| 桐梓县| 尼勒克县| 蛟河市| 宝坻区| 大城县| 禄丰县| 奉新县| 开鲁县| 亚东县| 焦作市| 汉中市| 老河口市| 池州市| 同德县| 拉孜县| 土默特右旗| 德化县| 科尔| 丹阳市| 铜梁县| 图片| 望奎县| 阿鲁科尔沁旗| 桃江县| 安达市| 特克斯县| 漳州市| 城口县| 黑水县|