亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

圖像編碼裝置和方法、圖像解碼裝置和方法以及記錄介質(zhì)與流程

文檔序號:11157563閱讀:432來源:國知局
圖像編碼裝置和方法、圖像解碼裝置和方法以及記錄介質(zhì)與制造工藝

技術(shù)領(lǐng)域

本發(fā)明涉及高效地對圖像進(jìn)行編碼的圖像編碼裝置以及圖像編碼方法、對高效地編碼了的圖像進(jìn)行解碼的圖像解碼裝置以及圖像解碼方法、和圖像預(yù)測裝置。



背景技術(shù):

例如,在MPEG(Moving Picture Experts Group,運(yùn)動圖像專家組)、“ITU-T H.26x”等國際標(biāo)準(zhǔn)影像編碼方式中,將輸入影像幀分割為矩形的塊(編碼塊),并對該編碼塊實(shí)施使用已編碼的圖像信號的預(yù)測處理從而生成預(yù)測圖像,將作為該編碼塊與預(yù)測圖像的差分的預(yù)測誤差信號按照塊單位進(jìn)行正交變換、量化處理,從而進(jìn)行信息壓縮。

例如,在作為國際標(biāo)準(zhǔn)方式的MPEG-4 AVC/H.264(ISO/IEC 14496-10|ITU-T H.264)中,根據(jù)已編碼的附近像素進(jìn)行幀內(nèi)部(Intra)預(yù)測處理或者鄰近幀間的運(yùn)動補(bǔ)償預(yù)測處理(例如,參照非專利文獻(xiàn)1)。

在MPEG-4 AVC/H.264中,在亮度的幀內(nèi)部預(yù)測模式中,能夠按照塊單位,從多個預(yù)測模式中選擇1個預(yù)測模式。

圖14是示出亮度的塊尺寸是4×4像素的情況的幀內(nèi)部預(yù)測模式的說明圖。

在圖14中,塊內(nèi)的白圈表示編碼對象的像素,黑圈表示作為預(yù)測中使用的像素的已編碼的像素。在亮度的塊尺寸是4×4像素的情況下,規(guī)定了模式0至模式8這9個幀內(nèi)部預(yù)測模式。

在圖14中,模式2是進(jìn)行平均值預(yù)測的模式,利用塊的上面和左面的鄰接像素的平均值,預(yù)測塊內(nèi)的像素。

模式2以外的模式是進(jìn)行方向性預(yù)測的模式。模式0是垂直方向預(yù)測,通過在垂直方向上重復(fù)塊的上面的鄰接像素從而生成預(yù)測圖像。例如,在豎條紋花紋時選擇模式0。

模式1是水平方向預(yù)測,通過在水平方向上重復(fù)塊的左面的鄰接像素從而生成預(yù)測圖像。例如,在橫條紋花紋時選擇模式1。

在模式3至模式8中,使用塊的上面或者左面的已編碼的像素,在規(guī)定的方向(箭頭表示的方向)上生成插值像素來生成預(yù)測圖像。

此處,應(yīng)用幀內(nèi)部預(yù)測的亮度的塊尺寸能夠從4×4像素、8×8像素、16×16像素中選擇,在8×8像素的情況下,與4×4像素同樣地規(guī)定了9個幀內(nèi)部預(yù)測模式。但是,關(guān)于預(yù)測中使用的像素,并非是已編碼的像素自身,而是使用針對這些像素實(shí)施濾波處理而得到的像素。

相對于此,在16×16像素的情況下,除了與平均值預(yù)測、垂直方向預(yù)測以及水平方向預(yù)測有關(guān)的幀內(nèi)部預(yù)測模式以外,還規(guī)定了被稱為Plane預(yù)測的4個幀內(nèi)部預(yù)測模式。

與Plane預(yù)測有關(guān)的幀內(nèi)部預(yù)測模式是將針對塊的上面和左面的已編碼的鄰接像素在傾斜方向上進(jìn)行內(nèi)插插值而生成的像素作為預(yù)測值的模式。

另外,在方向性預(yù)測模式中,通過在預(yù)定的方向(預(yù)測方向)上重復(fù)塊的鄰接像素或者根據(jù)鄰接像素生成的插值像素從而生成預(yù)測值,所以在圖15所示那樣的預(yù)測對象塊內(nèi)的目標(biāo)的邊界(邊緣)的方向與預(yù)測方向一致、并且塊內(nèi)的信號值沿著預(yù)測方向而恒定的情況下,預(yù)測效率變高而能夠削減符號量。

非專利文獻(xiàn)1:MPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264標(biāo)準(zhǔn)



技術(shù)實(shí)現(xiàn)要素:

以往的運(yùn)動圖像編碼裝置如以上那樣構(gòu)成,所以如果預(yù)測對象塊內(nèi)的目標(biāo)的邊界(邊緣)的方向與預(yù)測方向一致、并且預(yù)測對象塊內(nèi)的信號值沿著該預(yù)測方向而恒定,則能夠通過使用方向性預(yù)測來高精度地進(jìn)行預(yù)測。但是,存在如下課題:即便預(yù)測對象塊內(nèi)的目標(biāo)的邊界(邊緣)的方向與預(yù)測方向一致,在如圖16所示,在信號值沿著該預(yù)測方向而變化的情況下,預(yù)測誤差也會變大。

本發(fā)明是為了解決上述那樣的課題而完成的,其目的在于得到一種圖像編碼裝置、圖像解碼裝置、圖像編碼方法、圖像解碼方法以及圖像預(yù)測裝置,即使在信號值沿著預(yù)測方向而變化的情況下,也能夠?qū)崿F(xiàn)高精度的預(yù)測來提高圖像質(zhì)量。

在本發(fā)明的圖像編碼裝置中,幀內(nèi)部預(yù)測單元在幀內(nèi)部預(yù)測參數(shù)表示水平方向預(yù)測處理的情況下,對成為編碼塊的預(yù)測處理的單位的各塊的左面所鄰接的像素的亮度值相加與塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值作為預(yù)測圖像的預(yù)測值,在幀內(nèi)部預(yù)測參數(shù)表示垂直方向預(yù)測處理的情況下,對塊的上面所鄰接的像素的亮度值相加與塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值作為預(yù)測圖像的預(yù)測值。

根據(jù)本發(fā)明,幀內(nèi)部預(yù)測單元構(gòu)成為在幀內(nèi)部預(yù)測參數(shù)表示水平方向預(yù)測處理的情況下,對塊的左面所鄰接的像素的亮度值相加與塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值作為預(yù)測圖像的預(yù)測值,在幀內(nèi)部預(yù)測參數(shù)表示垂直方向預(yù)測處理的情況下,對塊的上面所鄰接的像素的亮度值相加與塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值作為預(yù)測圖像的預(yù)測值,所以具有即使在信號值沿著預(yù)測方向而變化的情況下也能夠?qū)崿F(xiàn)高精度的預(yù)測來提高圖像質(zhì)量的效果。

附圖說明

圖1是示出本發(fā)明的實(shí)施方式1的運(yùn)動圖像編碼裝置的結(jié)構(gòu)圖。

圖2是示出本發(fā)明的實(shí)施方式1的運(yùn)動圖像編碼裝置的處理內(nèi)容(運(yùn)動圖像編碼方法)的流程圖。

圖3是示出本發(fā)明的實(shí)施方式1的運(yùn)動圖像解碼裝置的結(jié)構(gòu)圖。

圖4是示出本發(fā)明的實(shí)施方式1的運(yùn)動圖像解碼裝置的處理內(nèi)容(運(yùn)動圖像解碼方法)的流程圖。

圖5是示出最大編碼塊被層次性地分割為多個編碼塊的例子的說明圖。

圖6的(a)是示出分割后的編碼塊以及預(yù)測塊的分布的說明圖,(b)是示出通過層次分割而分配了編碼模式m(Bn)的狀況的說明圖。

圖7是示出編碼塊Bn內(nèi)的各預(yù)測塊Pin可選擇的幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)的一個例子的說明圖。

圖8是示出在lin=min=4的情況下生成預(yù)測塊Pin內(nèi)的像素的預(yù)測值時使用的像素的一個例子的說明圖。

圖9是示出以預(yù)測塊Pin內(nèi)的左上像素為原點(diǎn)的相對坐標(biāo)的說明圖。

圖10是示出垂直方向預(yù)測中的以往的為了計算對預(yù)測值相加的亮度值變化量而參照的左面的預(yù)測塊的鄰接像素的一個例子的說明圖。

圖11是示出垂直方向預(yù)測中的以往的對預(yù)測值相加的亮度值變化量的縮放值的一個例子的說明圖。

圖12是示出水平方向預(yù)測中的以往的為了計算對預(yù)測值相加的亮度值變化量而參照的上面的預(yù)測塊的鄰接像素的一個例子的說明圖。

圖13是示出水平方向預(yù)測中的以往的對預(yù)測值相加的亮度值變化量的縮放值的一個例子的說明圖。

圖14是示出亮度的塊尺寸是4×4像素的情況的幀內(nèi)部預(yù)測模式的說明圖。

圖15是示出通過水平方向預(yù)測而高精度地預(yù)測的預(yù)測圖像的一個例子的說明圖。

圖16是示出在通過水平方向預(yù)測進(jìn)行了預(yù)測時發(fā)生大的預(yù)測誤差的一個例子的說明圖。

圖17是示出編碼塊Bn內(nèi)的各預(yù)測塊Pin可選擇的幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)的一個例子的說明圖。

(符號說明)

1:塊分割部(塊分割單元);2:編碼控制部(編碼控制單元);3:切換開關(guān);4:幀內(nèi)部預(yù)測部(幀內(nèi)部預(yù)測單元);5:運(yùn)動補(bǔ)償預(yù)測部(運(yùn)動補(bǔ)償預(yù)測單元);6:減法部(量化單元);7:變換/量化部(量化單元);8:逆量化/逆變換部;9:加法部;10:幀內(nèi)部預(yù)測用存儲器(幀內(nèi)部預(yù)測單元);11:環(huán)路濾波器部;12:運(yùn)動補(bǔ)償預(yù)測幀存儲器(運(yùn)動補(bǔ)償預(yù)測單元);13:可變長編碼部(可變長編碼單元);31:可變長解碼部(可變長解碼單元);32:逆量化/逆變換部(逆量化單元);33:切換開關(guān);34:幀內(nèi)部預(yù)測部(幀內(nèi)部預(yù)測單元);35:運(yùn)動補(bǔ)償部(運(yùn)動補(bǔ)償預(yù)測單元);36:加法部;37:幀內(nèi)部預(yù)測用存儲器(幀內(nèi)部預(yù)測單元);38:環(huán)路濾波器部;39:運(yùn)動補(bǔ)償預(yù)測幀存儲器(運(yùn)動補(bǔ)償預(yù)測單元)。

具體實(shí)施方式

以下,為了更詳細(xì)地說明本發(fā)明,依照附圖來說明用于實(shí)施本發(fā)明的方式。

實(shí)施方式1.

圖1是示出本發(fā)明的實(shí)施方式1的運(yùn)動圖像編碼裝置的結(jié)構(gòu)圖。

在圖1中,塊分割部1實(shí)施如下處理:如果輸入了表示輸入圖像的影像信號,則將該輸入圖像分割為由編碼控制部2決定的最大尺寸的編碼塊即最大編碼塊,并且直至達(dá)到由編碼控制部2決定的上限的層次數(shù)為止,將該最大編碼塊層次性地分割為各編碼塊。

即,塊分割部1實(shí)施如下處理:根據(jù)由編碼控制部2決定的分割而將輸入圖像分割為各編碼塊,并輸出該編碼塊。另外,各編碼塊被分割為成為預(yù)測處理單位的一個或多個預(yù)測塊。

另外,塊分割部1構(gòu)成了塊分割單元。

編碼控制部2實(shí)施如下處理:決定成為實(shí)施預(yù)測處理時的處理單位的編碼塊的最大尺寸,并且決定最大尺寸的編碼塊被層次性地分割時的上限的層次數(shù),從而決定各個編碼塊的尺寸。

另外,編碼控制部2實(shí)施如下處理:從可選擇的1個以上的編碼模式(1個以上的幀內(nèi)部編碼模式、1個以上的幀間編碼模式)中,選擇針對從塊分割部1輸出的編碼塊的編碼效率最高的編碼模式。

另外,編碼控制部2實(shí)施如下處理:在編碼效率最高的編碼模式是幀內(nèi)部編碼模式的情況下,針對作為預(yù)測處理單位的每個預(yù)測塊,決定在以該幀內(nèi)部編碼模式實(shí)施針對編碼塊的幀內(nèi)部預(yù)測處理時所使用的幀內(nèi)部預(yù)測參數(shù),在編碼效率最高的編碼模式是幀間編碼模式的情況下,針對作為預(yù)測處理單位的每個預(yù)測塊,決定在以該幀間編碼模式實(shí)施針對編碼塊的幀間預(yù)測處理時所使用的幀間預(yù)測參數(shù)。

而且,編碼控制部2實(shí)施如下處理:決定對變換/量化部7以及逆量化/逆變換部8提供的預(yù)測差分編碼參數(shù)。

另外,編碼控制部2構(gòu)成了編碼控制單元。

切換開關(guān)3實(shí)施如下處理:如果由編碼控制部2決定的編碼模式是幀內(nèi)部編碼模式,則將從塊分割部1輸出的編碼塊輸出到幀內(nèi)部預(yù)測部4,如果由編碼控制部2決定的編碼模式是幀間編碼模式,則將從塊分割部1輸出的編碼塊輸出到運(yùn)動補(bǔ)償預(yù)測部5。

幀內(nèi)部預(yù)測部4實(shí)施如下處理:針對從切換開關(guān)3輸出的編碼塊,按照作為預(yù)測處理單位的每個預(yù)測塊,一邊參照幀內(nèi)部預(yù)測用存儲器10中儲存的局部解碼圖像,一邊實(shí)施使用了由編碼控制部2決定的幀內(nèi)部預(yù)測參數(shù)的幀內(nèi)部預(yù)測處理(幀內(nèi)預(yù)測處理)來生成幀內(nèi)部預(yù)測圖像。

另外,幀內(nèi)部預(yù)測部4在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是水平方向預(yù)測處理的情況下,對預(yù)測塊的左面所鄰接的像素的亮度值相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是垂直方向預(yù)測處理的情況下,對預(yù)測塊的上面所鄰接的像素的亮度值相加與預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值。

由幀內(nèi)部預(yù)測部4以及幀內(nèi)部預(yù)測用存儲器10構(gòu)成了幀內(nèi)部預(yù)測單元。

運(yùn)動補(bǔ)償預(yù)測部5實(shí)施如下處理:按照作為預(yù)測處理單位的預(yù)測塊單位,比較從切換開關(guān)3輸出的編碼塊和儲存在運(yùn)動補(bǔ)償預(yù)測幀存儲器12中的1幀以上的局部解碼圖像,來搜索運(yùn)動矢量,并使用該運(yùn)動矢量和由編碼控制部2決定的幀間預(yù)測參數(shù),按照預(yù)測塊單位實(shí)施針對該編碼塊的幀間預(yù)測處理(運(yùn)動補(bǔ)償預(yù)測處理)而生成幀間預(yù)測圖像。

減法部6實(shí)施如下處理:從由塊分割部1輸出的編碼塊減去由幀內(nèi)部預(yù)測部4生成的幀內(nèi)部預(yù)測圖像或者由運(yùn)動補(bǔ)償預(yù)測部5生成的幀間預(yù)測圖像,將作為其相減結(jié)果的預(yù)測差分信號(差分圖像)輸出到變換/量化部7。

變換/量化部7實(shí)施如下處理:參照由編碼控制部2決定的預(yù)測差分編碼參數(shù),實(shí)施針對從減法部6輸出的預(yù)測差分信號的正交變換處理(例如,DCT(離散余弦變換)、預(yù)先對特定的學(xué)習(xí)序列進(jìn)行基底設(shè)計的KL變換等正交變換處理)來計算變換系數(shù),并且參照該預(yù)測差分編碼參數(shù),對該變換系數(shù)進(jìn)行量化,將作為量化后的變換系數(shù)的壓縮數(shù)據(jù)輸出到逆量化/逆變換部8以及可變長編碼部13。

另外,由減法部6以及變換/量化部7構(gòu)成了量化單元。

逆量化/逆變換部8實(shí)施如下處理:參照由編碼控制部2決定的預(yù)測差分編碼參數(shù),對從變換/量化部7輸出的壓縮數(shù)據(jù)進(jìn)行逆量化,并且參照該預(yù)測差分編碼參數(shù),實(shí)施針對作為逆量化后的壓縮數(shù)據(jù)的變換系數(shù)的逆正交變換處理,計算與從減法部6輸出的預(yù)測差分信號相當(dāng)?shù)木植拷獯a預(yù)測差分信號。

加法部9實(shí)施如下處理:將由逆量化/逆變換部8計算出的局部解碼預(yù)測差分信號、與由幀內(nèi)部預(yù)測部4生成的幀內(nèi)部預(yù)測圖像或者由運(yùn)動補(bǔ)償預(yù)測部5生成的幀間預(yù)測圖像進(jìn)行相加,來計算與從塊分割部1輸出的編碼塊相當(dāng)?shù)木植拷獯a圖像。

幀內(nèi)部預(yù)測用存儲器10是儲存由加法部9計算出的局部解碼圖像的記錄介質(zhì)。

環(huán)路濾波器部11實(shí)施如下處理:對由加法部9計算出的局部解碼圖像實(shí)施規(guī)定的濾波處理,輸出濾波處理后的局部解碼圖像。

運(yùn)動補(bǔ)償預(yù)測幀存儲器12是儲存濾波處理后的局部解碼圖像的記錄介質(zhì)。

可變長編碼部13實(shí)施如下處理:對從變換/量化部7輸出的壓縮數(shù)據(jù)、編碼控制部2的輸出信號(最大編碼塊內(nèi)的塊分割信息、編碼模式、預(yù)測差分編碼參數(shù)、幀內(nèi)部預(yù)測參數(shù)或者幀間預(yù)測參數(shù))、以及從運(yùn)動補(bǔ)償預(yù)測部5輸出的運(yùn)動矢量(編碼模式是幀間編碼模式的情況)進(jìn)行可變長編碼,而生成比特流。

另外,可變長編碼部13構(gòu)成了可變長編碼單元。

在圖1的例子中,設(shè)想作為運(yùn)動圖像編碼裝置的構(gòu)成要素的塊分割部1、編碼控制部2、切換開關(guān)3、幀內(nèi)部預(yù)測部4、運(yùn)動補(bǔ)償預(yù)測部5、減法部6、變換/量化部7、逆量化/逆變換部8、加法部9、幀內(nèi)部預(yù)測用存儲器10、環(huán)路濾波器部11、運(yùn)動補(bǔ)償預(yù)測幀存儲器12以及可變長編碼部13的各個由專用的硬件(例如,安裝了CPU的半導(dǎo)體集成電路、單片式微型計算機(jī)等)構(gòu)成的例子,但在運(yùn)動圖像編碼裝置由計算機(jī)構(gòu)成的情況下,也可以將記述了塊分割部1、編碼控制部2、切換開關(guān)3、幀內(nèi)部預(yù)測部4、運(yùn)動補(bǔ)償預(yù)測部5、減法部6、變換/量化部7、逆量化/逆變換部8、加法部9、環(huán)路濾波器部11以及可變長編碼部13的處理內(nèi)容的程序儲存到計算機(jī)的存儲器中,并由該計算機(jī)的CPU執(zhí)行該存儲器中儲存的程序。

圖2是示出本發(fā)明的實(shí)施方式1的運(yùn)動圖像編碼裝置的處理內(nèi)容(運(yùn)動圖像編碼方法)的流程圖。

圖3是示出本發(fā)明的實(shí)施方式1的運(yùn)動圖像解碼裝置的結(jié)構(gòu)圖。

在圖3中,可變長解碼部31實(shí)施如下處理:如果輸入了由圖1的運(yùn)動圖像編碼裝置生成的比特流,則從該比特流,對壓縮數(shù)據(jù)、塊分割信息、編碼模式、幀內(nèi)部預(yù)測參數(shù)(編碼模式是幀內(nèi)部編碼模式的情況)、幀間預(yù)測參數(shù)(編碼模式是幀間編碼模式的情況)、預(yù)測差分編碼參數(shù)以及運(yùn)動矢量(編碼模式是幀間編碼模式的情況)進(jìn)行可變長解碼。

另外,可變長解碼部31構(gòu)成了可變長解碼單元。

逆量化/逆變換部32實(shí)施如下處理:參照由可變長解碼部31可變長解碼了的預(yù)測差分編碼參數(shù),對由可變長解碼部31可變長解碼了的壓縮數(shù)據(jù)進(jìn)行逆量化,并且參照該預(yù)測差分編碼參數(shù)來實(shí)施針對作為逆量化后的壓縮數(shù)據(jù)的變換系數(shù)的逆正交變換處理,計算與從圖1的逆量化/逆變換部8輸出的局部解碼預(yù)測差分信號相同的解碼預(yù)測差分信號。

另外,逆量化/逆變換部32構(gòu)成了逆量化單元。

切換開關(guān)33實(shí)施如下處理:如果由可變長解碼部31可變長解碼了的編碼模式是幀內(nèi)部編碼模式,則將由可變長解碼部31可變長解碼了的幀內(nèi)部預(yù)測參數(shù)輸出到幀內(nèi)部預(yù)測部34,如果由可變長解碼部31可變長解碼了的編碼模式是幀間編碼模式,則將由可變長解碼部31可變長解碼了的幀間預(yù)測參數(shù)以及運(yùn)動矢量輸出到運(yùn)動補(bǔ)償部35。

幀內(nèi)部預(yù)測部34實(shí)施如下處理:針對根據(jù)由可變長解碼部31可變長解碼了的塊分割信息以及編碼模式而確定的解碼塊(與圖1的運(yùn)動圖像編碼裝置的“編碼塊”相當(dāng)?shù)膲K),按照作為預(yù)測處理單位的每個預(yù)測塊,一邊參照幀內(nèi)部預(yù)測用存儲器37中儲存的解碼圖像,一邊實(shí)施使用了從切換開關(guān)33輸出的幀內(nèi)部預(yù)測參數(shù)的幀內(nèi)部預(yù)測處理(幀內(nèi)預(yù)測處理)而生成幀內(nèi)部預(yù)測圖像。

另外,幀內(nèi)部預(yù)測部34在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是水平方向預(yù)測處理的情況下,對預(yù)測塊的左面所鄰接的像素的亮度值相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是垂直方向預(yù)測處理的情況下,對預(yù)測塊的上面所鄰接的像素的亮度值相加與預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值。

由幀內(nèi)部預(yù)測部34以及幀內(nèi)部預(yù)測用存儲器37構(gòu)成了幀內(nèi)部預(yù)測單元。

運(yùn)動補(bǔ)償部35實(shí)施如下處理:針對根據(jù)由可變長解碼部31可變長解碼了的塊分割信息以及編碼模式而確定的解碼塊,按照作為預(yù)測處理單位的每個預(yù)測塊,一邊參照運(yùn)動補(bǔ)償預(yù)測幀存儲器39中儲存的解碼圖像,一邊實(shí)施使用了從切換開關(guān)33輸出的運(yùn)動矢量和幀間預(yù)測參數(shù)的幀間預(yù)測處理(運(yùn)動補(bǔ)償預(yù)測處理)而生成幀間預(yù)測圖像。

加法部36實(shí)施如下處理:將由逆量化/逆變換部32計算出的解碼預(yù)測差分信號、與由幀內(nèi)部預(yù)測部34生成的幀內(nèi)部預(yù)測圖像或者由運(yùn)動補(bǔ)償部35生成的幀間預(yù)測圖像進(jìn)行相加,計算與從圖1的加法部9輸出的局部解碼圖像相同的解碼圖像。

幀內(nèi)部預(yù)測用存儲器37是儲存由加法部36計算出的解碼圖像的記錄介質(zhì)。

環(huán)路濾波器部38實(shí)施如下處理:對由加法部36計算出的解碼圖像實(shí)施規(guī)定的濾波處理,輸出濾波處理后的解碼圖像。

運(yùn)動補(bǔ)償預(yù)測幀存儲器39是儲存濾波處理后的解碼圖像的記錄介質(zhì)。

在圖3的例子中,設(shè)想作為運(yùn)動圖像解碼裝置的構(gòu)成要素的可變長解碼部31、逆量化/逆變換部32、切換開關(guān)33、幀內(nèi)部預(yù)測部34、運(yùn)動補(bǔ)償部35、加法部36、幀內(nèi)部預(yù)測用存儲器37、環(huán)路濾波器部38以及運(yùn)動補(bǔ)償預(yù)測幀存儲器39的各個由專用的硬件(例如,安裝了CPU的半導(dǎo)體集成電路、單片式微型計算機(jī)等)構(gòu)成的例子,但在運(yùn)動圖像解碼裝置由計算機(jī)構(gòu)成的情況下,也可以將記述了可變長解碼部31、逆量化/逆變換部32、切換開關(guān)33、幀內(nèi)部預(yù)測部34、運(yùn)動補(bǔ)償部35、加法部36以及環(huán)路濾波器部38的處理內(nèi)容的程序儲存到計算機(jī)的存儲器中,并由該計算機(jī)的CPU執(zhí)行該存儲器中儲存的程序。

圖4是示出本發(fā)明的實(shí)施方式1的運(yùn)動圖像解碼裝置的處理內(nèi)容(運(yùn)動圖像解碼方法)的流程圖。

接下來,說明動作。

在該實(shí)施方式1中,說明運(yùn)動圖像編碼裝置和運(yùn)動圖像解碼裝置,其中,所述運(yùn)動圖像編碼裝置將影像的各幀圖像作為輸入圖像,實(shí)施基于已編碼的附近像素的幀內(nèi)部預(yù)測或者鄰近幀間的運(yùn)動補(bǔ)償預(yù)測,針對所得到的預(yù)測差分信號實(shí)施基于正交變換/量化的壓縮處理,之后進(jìn)行可變長編碼來生成比特流,所述運(yùn)動圖像解碼裝置對從該運(yùn)動圖像編碼裝置輸出的比特流進(jìn)行解碼。

圖1的運(yùn)動圖像編碼裝置的特征在于,適應(yīng)于影像信號的空間/時間方向的局部性的變化,將影像信號分割為各種尺寸的塊,來進(jìn)行幀內(nèi)/幀間自適應(yīng)編碼。

一般,影像信號具有信號的復(fù)雜度在空間/時間上局部地變化的特性。在空間上觀察時,有時在某個影像幀上,例如既有在天空、壁等那樣的比較寬的圖像區(qū)域中具有均勻的信號特性的圖樣,也混合存在人物或包含細(xì)微的紋理的繪畫等在小的圖像區(qū)域內(nèi)具有復(fù)雜的紋理圖案的圖樣。

即使在時間上觀察,雖然關(guān)于天空、壁,局部性地時間方向的圖樣的變化小,但關(guān)于活動的人物、物體,由于其輪廓在時間上進(jìn)行剛體/非剛體的運(yùn)動,所以時間上的變化大。

在編碼處理中,進(jìn)行通過時間/空間上的預(yù)測來生成信號功率或熵小的預(yù)測差分信號從而削減整體的符號量的處理,但只要能夠?qū)㈩A(yù)測中使用的參數(shù)均勻地應(yīng)用于盡可能大的圖像信號區(qū)域,就能夠減小該參數(shù)的符號量。

另一方面,如果針對時間上/空間上變化大的圖像信號圖案,將同一預(yù)測參數(shù)應(yīng)用于大的圖像區(qū)域,則預(yù)測的錯誤增加,所以預(yù)測差分信號的符號量增加。

因此,在時間上/空間上變化大的區(qū)域中,優(yōu)選減小應(yīng)用同一預(yù)測參數(shù)來進(jìn)行預(yù)測處理的塊尺寸,增加預(yù)測中使用的參數(shù)的數(shù)據(jù)量,降低預(yù)測差分信號的功率/熵。

在該實(shí)施方式1中,為了進(jìn)行與這樣的影像信號的一般的性質(zhì)適應(yīng)的編碼,采用如下結(jié)構(gòu):最初從規(guī)定的最大塊尺寸開始預(yù)測處理等,層次性地分割影像信號的區(qū)域,針對所分割的每個區(qū)域,使預(yù)測處理、其預(yù)測差分的編碼處理自適應(yīng)化。

關(guān)于圖1的運(yùn)動圖像編碼裝置設(shè)為處理對象的影像信號格式,除了由亮度信號和2個色差信號構(gòu)成的YUV信號、從數(shù)字?jǐn)z像元件輸出的RGB信號等任意的顏色空間的彩色影像信號以外,還設(shè)為單色圖像信號、紅外線圖像信號等影像幀由水平和垂直二維的數(shù)字采樣(像素)列構(gòu)成的任意的影像信號。

其中,各像素的灰度既可以是8比特,也可以是10比特、12比特等灰度。

在以下的說明中,為了方便,只要沒有特別說明,就說明設(shè)為輸入圖像的影像信號是YUV信號、并且處理2個色差分量U、V相對亮度分量Y被子采樣了的4:2:0格式的信號的情況。

另外,將與影像信號的各幀對應(yīng)的處理數(shù)據(jù)單位稱為“圖片”。

在該實(shí)施方式1中,將“圖片”設(shè)為依次掃描(逐行掃描)了的影像幀信號而進(jìn)行說明,但在影像信號是隔行掃描信號的情況下,“圖片”也可以是作為構(gòu)成影像幀的單位的場圖像信號。

最初,說明圖1的運(yùn)動圖像編碼裝置的處理內(nèi)容。

首先,編碼控制部2決定成為編碼對象的圖片(當(dāng)前圖片)的編碼中使用的最大編碼塊的尺寸、和對最大編碼塊進(jìn)行層次分割的層次數(shù)的上限(圖2的步驟ST1)。

作為最大編碼塊的尺寸的決定方法,例如既可以根據(jù)輸入圖像的影像信號的分辨率而對所有圖片決定同一尺寸,也可以將輸入圖像的影像信號的局部性的運(yùn)動的復(fù)雜度的差異作為參數(shù)而進(jìn)行定量化,對于運(yùn)動劇烈的圖片決定小的尺寸,另一方面對于運(yùn)動少的圖片決定大的尺寸。

作為分割層次數(shù)的上限的決定方法,例如有根據(jù)輸入圖像的影像信號的分辨率針對所有圖片決定同一層次數(shù)的方法、或在輸入圖像的影像信號的運(yùn)動劇烈的情況下設(shè)定為增大層次數(shù)而能夠檢測更細(xì)微的運(yùn)動且在運(yùn)動少的情況下設(shè)定為抑制層次數(shù)的方法等。

另外,編碼控制部2從可利用的1個以上的編碼模式中選擇與層次性地分割的各個編碼塊對應(yīng)的編碼模式(步驟ST2)。

即,編碼控制部2針對最大編碼塊尺寸的每個圖像區(qū)域,直至達(dá)到預(yù)先決定的分割層次數(shù)的上限為止,層次性地分割為具有編碼塊尺寸的編碼塊,決定針對各個編碼塊的編碼模式。

在編碼模式中有一個或多個幀內(nèi)部編碼模式(總稱為“INTRA”)、和一個或多個幀間編碼模式(總稱為“INTER”),編碼控制部2從在該圖片中可利用的所有編碼模式或者其子集中,選擇與各個編碼塊對應(yīng)的編碼模式。

其中,由后述塊分割部1層次性地分割的各個編碼塊被進(jìn)一步分割為作為進(jìn)行預(yù)測處理的單位的一個或多個預(yù)測塊,預(yù)測塊的分割狀態(tài)也作為信息而被包含于編碼模式中。

編碼控制部2的編碼模式的選擇方法是公知的技術(shù),所以省略詳細(xì)的說明,例如有如下方法等:使用可利用的任意的編碼模式來實(shí)施針對編碼塊的編碼處理而驗(yàn)證編碼效率,在可利用的多個編碼模式中選擇編碼效率最佳的編碼模式。

另外,編碼控制部2針對各個編碼塊的每一個,決定在壓縮差分圖像時使用的量化參數(shù)以及變換塊尺寸,并且決定在實(shí)施預(yù)測處理時使用的預(yù)測參數(shù)(幀內(nèi)部預(yù)測參數(shù)或者幀間預(yù)測參數(shù))。

其中,在編碼塊進(jìn)一步被分割為進(jìn)行預(yù)測處理的預(yù)測塊單位的情況下,能夠針對每個預(yù)測塊選擇預(yù)測參數(shù)(幀內(nèi)部預(yù)測參數(shù)或者幀間預(yù)測參數(shù))。

進(jìn)而,在編碼模式是幀內(nèi)部編碼模式的編碼塊中,由于在如后所述那樣進(jìn)行幀內(nèi)部預(yù)測處理時使用與預(yù)測塊鄰接的已編碼的像素,所以需要按照預(yù)測塊單位進(jìn)行編碼,所以可選擇的變換塊尺寸被限制為預(yù)測塊的尺寸以下。

編碼控制部2將包括量化參數(shù)以及變換塊尺寸的預(yù)測差分編碼參數(shù)輸出到變換/量化部7、逆量化/逆變換部8以及可變長編碼部13。

另外,編碼控制部2將幀內(nèi)部預(yù)測參數(shù)根據(jù)需要而輸出到幀內(nèi)部預(yù)測部4。

另外,編碼控制部2將幀間預(yù)測參數(shù)根據(jù)需要而輸出到運(yùn)動補(bǔ)償預(yù)測部5。

如果輸入了輸入圖像的影像信號,則塊分割部1將該輸入圖像的影像信號分割為由編碼控制部2決定的最大編碼塊尺寸,進(jìn)而將分割了的最大編碼塊層次性地分割為由編碼控制部2決定的編碼塊,并輸出該編碼塊。

此處,圖5是示出最大編碼塊被層次性地分割為多個編碼塊的例子的說明圖。

在圖5中,最大編碼塊是被記載為“第0層次”的亮度分量具有(L0,M0)的尺寸的編碼塊。

將最大編碼塊設(shè)為出發(fā)點(diǎn),直至利用四叉樹構(gòu)造另行決定的規(guī)定的深度為止,層次性地進(jìn)行分割,從而得到編碼塊。

在深度n中,編碼塊是尺寸(Ln,Mn)的圖像區(qū)域。

其中,Ln和Mn既可以相同,也可以不同,但在圖5中示出了Ln=Mn的情形。

以后,將由編碼控制部2決定的編碼塊尺寸定義為編碼塊的亮度分量中的尺寸(Ln,Mn)。

由于進(jìn)行四叉樹分割,所以(Ln+1,Mn+1)=(Ln/2,Mn/2)始終成立。

另外,在RGB信號等所有顏色分量具有同一采樣數(shù)的彩色影像信號(4:4:4格式)中,所有顏色分量的尺寸成為(Ln,Mn),但在處理4:2:0格式的情況下,所對應(yīng)的色差分量的編碼塊尺寸成為(Ln/2,Mn/2)。

以后,設(shè)為用Bn來表示第n層次的編碼塊,用m(Bn)來表示在編碼塊Bn中可選擇的編碼模式。

在由多個顏色分量構(gòu)成的彩色影像信號的情況下,編碼模式m(Bn)既可以構(gòu)成為針對每個顏色分量分別使用單獨(dú)的模式,也可以構(gòu)成為針對所有顏色分量使用共同的模式。以后,只要沒有特別說明,就指與YUV信號、4:2:0格式的編碼塊的亮度分量對應(yīng)的編碼模式而進(jìn)行說明。

編碼塊Bn如圖6所示,通過塊分割部1而被分割為表示預(yù)測處理單位的一個或多個預(yù)測塊。

以后,將屬于編碼塊Bn的預(yù)測塊記載為Pin(i是第n層次中的預(yù)測塊編號)。圖5示出P00和P10的一個例子。

在編碼模式m(Bn)中作為信息而包含有如何進(jìn)行編碼塊Bn的預(yù)測塊分割。

關(guān)于預(yù)測塊Pin,全部依照編碼模式m(Bn)進(jìn)行預(yù)測處理,但能夠針對每個預(yù)測塊Pin,選擇單獨(dú)的預(yù)測參數(shù)(幀內(nèi)部預(yù)測參數(shù)或者幀間預(yù)測參數(shù))。

編碼控制部2針對最大編碼塊,例如生成圖6所示那樣的塊分割狀態(tài)來確定編碼塊。

圖6(a)的虛線所包圍的矩形表示各編碼塊,各編碼塊內(nèi)存在的用斜線涂覆的塊表示各預(yù)測塊的分割狀態(tài)。

圖6(b)是關(guān)于圖6(a)的例子利用四叉樹圖形表示了通過層次分割來分配編碼模式m(Bn)的狀況的圖。圖6(b)的□所包圍的節(jié)點(diǎn)是分配了編碼模式m(Bn)的節(jié)點(diǎn)(編碼塊)。

該四叉樹圖形的信息與編碼模式m(Bn)一起從編碼控制部2輸出到可變長編碼部13而被復(fù)用到比特流。

切換開關(guān)3在由編碼控制部2決定的編碼模式m(Bn)是幀內(nèi)部編碼模式的情況(m(Bn)∈INTRA的情況)下,將從塊分割部1輸出的編碼塊Bn輸出到幀內(nèi)部預(yù)測部4。

另一方面,在由編碼控制部2決定的編碼模式m(Bn)是幀間編碼模式的情況(m(Bn)∈INTER的情況)下,將從塊分割部1輸出的編碼塊Bn輸出到運(yùn)動補(bǔ)償預(yù)測部5。

在幀內(nèi)部預(yù)測部4中,如果由編碼控制部2決定的編碼模式m(Bn)是幀內(nèi)部編碼模式(m(Bn)∈INTRA的情況),且從切換開關(guān)3接收到編碼塊Bn(步驟ST3),則一邊參照幀內(nèi)部預(yù)測用存儲器10中儲存的局部解碼圖像,一邊使用由編碼控制部2決定的幀內(nèi)部預(yù)測參數(shù),來實(shí)施針對該編碼塊Bn內(nèi)的各預(yù)測塊Pin的幀內(nèi)部預(yù)測處理而生成幀內(nèi)部預(yù)測圖像PINTRAin(步驟ST4)。

另外,運(yùn)動圖像解碼裝置需要生成與幀內(nèi)部預(yù)測圖像PINTRAin完全相同的幀內(nèi)部預(yù)測圖像,所以幀內(nèi)部預(yù)測圖像PINTRAin的生成中使用的幀內(nèi)部預(yù)測參數(shù)從編碼控制部2輸出到可變長編碼部13而被復(fù)用到比特流。

在后面詳細(xì)敘述幀內(nèi)部預(yù)測部4的處理內(nèi)容。

在運(yùn)動補(bǔ)償預(yù)測部5中,如果由編碼控制部2決定的編碼模式m(Bn)是幀間編碼模式(m(Bn)∈INTER的情況),且從切換開關(guān)3接收到編碼塊Bn(步驟ST3),則比較該編碼塊Bn內(nèi)的各預(yù)測塊Pin和運(yùn)動補(bǔ)償預(yù)測幀存儲器12中儲存的濾波處理后的局部解碼圖像來搜索運(yùn)動矢量,使用該運(yùn)動矢量和由編碼控制部2決定的幀間預(yù)測參數(shù),實(shí)施針對該編碼塊Bn內(nèi)的各預(yù)測塊Pin的幀間預(yù)測處理,生成幀間預(yù)測圖像PINTERin(步驟ST5)。

另外,運(yùn)動圖像解碼裝置需要生成與幀間預(yù)測圖像PINTERin完全相同的幀間預(yù)測圖像,所以幀間預(yù)測圖像PINTERin的生成中使用的幀間預(yù)測參數(shù)從編碼控制部2輸出到可變長編碼部13而被復(fù)用到比特流。

另外,由運(yùn)動補(bǔ)償預(yù)測部5搜索到的運(yùn)動矢量也輸出到可變長編碼部13而被復(fù)用到比特流。

減法部6如果從塊分割部1接收到編碼塊Bn,則從該編碼塊Bn內(nèi)的預(yù)測塊Pin減去由幀內(nèi)部預(yù)測部4生成的幀內(nèi)部預(yù)測圖像PINTRAin或者由運(yùn)動補(bǔ)償預(yù)測部5生成的幀間預(yù)測圖像PINTERin中的某一方,將作為其相減結(jié)果的預(yù)測差分信號ein輸出到變換/量化部7(步驟ST6)。

變換/量化部7如果從減法部6接收到預(yù)測差分信號ein,則參照由編碼控制部2決定的預(yù)測差分編碼參數(shù),實(shí)施針對該預(yù)測差分信號ein的正交變換處理(例如,DCT(離散余弦變換)、對預(yù)先確定的學(xué)習(xí)序列進(jìn)行了基底設(shè)計的KL變換等正交變換處理),計算變換系數(shù)。

另外,變換/量化部7參照該預(yù)測差分編碼參數(shù),對該變換系數(shù)進(jìn)行量化,將作為量化后的變換系數(shù)的壓縮數(shù)據(jù)輸出到逆量化/逆變換部8以及可變長編碼部13(步驟ST7)。

逆量化/逆變換部8如果從變換/量化部7接收到壓縮數(shù)據(jù),則參照由編碼控制部2決定的預(yù)測差分編碼參數(shù),對該壓縮數(shù)據(jù)進(jìn)行逆量化。

另外,逆量化/逆變換部8參照該預(yù)測差分編碼參數(shù),實(shí)施針對作為逆量化后的壓縮數(shù)據(jù)的變換系數(shù)的逆正交變換處理(例如,逆DCT、逆KL變換等),計算與從減法部6輸出的預(yù)測差分信號ein相當(dāng)?shù)木植拷獯a預(yù)測差分信號并輸出到加法部9(步驟ST8)。

加法部9如果從逆量化/逆變換部8接收到局部解碼預(yù)測差分信號,則將該局部解碼預(yù)測差分信號、與由幀內(nèi)部預(yù)測部4生成的幀內(nèi)部預(yù)測圖像PINTRAin和由運(yùn)動補(bǔ)償預(yù)測部5生成的幀間預(yù)測圖像PINTERin中的某一方進(jìn)行相加,從而計算局部解碼圖像(步驟ST9)。

另外,加法部9將該局部解碼圖像輸出到環(huán)路濾波器部11,并且將該局部解碼圖像儲存到幀內(nèi)部預(yù)測用存儲器10中。

該局部解碼圖像成為在以后的幀內(nèi)部預(yù)測處理時使用的已編碼的圖像信號。

環(huán)路濾波器部11如果從加法部9接收到局部解碼圖像,則對該局部解碼圖像實(shí)施規(guī)定的濾波處理,將濾波處理后的局部解碼圖像儲存到運(yùn)動補(bǔ)償預(yù)測幀存儲器12中(步驟ST10)。

另外,關(guān)于由環(huán)路濾波器部11執(zhí)行的濾波處理,既可以以所輸入的局部解碼圖像的最大編碼塊或者各個編碼塊為單位進(jìn)行,也可以在輸入了1個圖片量的局部解碼圖像之后集中1個圖片量來進(jìn)行。

另外,作為規(guī)定的濾波處理的例子,可以舉出以使編碼塊邊界的不連續(xù)性(塊噪聲)不會變得顯著的方式對塊邊界進(jìn)行濾波的處理、以使作為輸入圖像的圖1的影像信號與局部解碼圖像之間的誤差成為最小的方式對局部解碼圖像的失真進(jìn)行補(bǔ)償?shù)臑V波處理等。

但是,在進(jìn)行以使作為輸入圖像的圖1的影像信號與局部解碼圖像之間的誤差成為最小的方式對局部解碼圖像的失真進(jìn)行補(bǔ)償?shù)臑V波處理的情況下,需要在環(huán)路濾波器部11中參照影像信號,所以需要變更圖1的運(yùn)動圖像編碼裝置使得對環(huán)路濾波器部11輸入影像信號。

直至針對層次性地分割了的所有編碼塊Bn的處理完成為止重復(fù)實(shí)施步驟ST3~ST9的處理,如果針對所有編碼塊Bn的處理完成,則轉(zhuǎn)移到步驟ST13的處理(步驟ST11、ST12)。

可變長編碼部13對從變換/量化部7輸出的壓縮數(shù)據(jù)、從編碼控制部2輸出的最大編碼塊內(nèi)的塊分割信息(以圖6(b)為例子的四叉樹信息)、編碼模式m(Bn)以及預(yù)測差分編碼參數(shù)、從編碼控制部2輸出的幀內(nèi)部預(yù)測參數(shù)(編碼模式是幀內(nèi)部編碼模式的情況)或者幀間預(yù)測參數(shù)(編碼模式是幀間編碼模式的情況)、以及從運(yùn)動補(bǔ)償預(yù)測部5輸出的運(yùn)動矢量(編碼模式是幀間編碼模式的情況)進(jìn)行可變長編碼,生成表示這些編碼結(jié)果的比特流(步驟ST13)。

接下來,詳細(xì)說明幀內(nèi)部預(yù)測部4的處理內(nèi)容。

圖7是示出編碼塊Bn內(nèi)的各預(yù)測塊Pin可選擇的幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)的一個例子的說明圖。

在圖7中,示出幀內(nèi)部預(yù)測模式和該幀內(nèi)部預(yù)測模式所表示的預(yù)測方向矢量,在圖7的例子中,進(jìn)行設(shè)計使得隨著可選擇的幀內(nèi)部預(yù)測模式的個數(shù)增加而使預(yù)測方向矢量彼此的相對角度變小。

幀內(nèi)部預(yù)測部4如上述那樣參照預(yù)測塊Pin的幀內(nèi)部預(yù)測參數(shù),實(shí)施針對該預(yù)測塊Pin的幀內(nèi)部預(yù)測處理,生成幀內(nèi)部預(yù)測圖像PINTRAin,但此處說明生成亮度信號中的預(yù)測塊Pin的幀內(nèi)部預(yù)測信號的幀內(nèi)部處理。

將預(yù)測塊Pin的尺寸設(shè)為lin×min像素。

圖8是示出生成lin=min=4的情況的預(yù)測塊Pin內(nèi)的像素的預(yù)測值時使用的像素的一個例子的說明圖。

在圖8中,將預(yù)測塊Pin的上面的已編碼的像素(2×lin+1)個、和左面的已編碼的像素(2×min)個設(shè)為預(yù)測中使用的像素,但預(yù)測中使用的像素既可以多于圖8所示的像素也可以少于圖8所示的像素。

另外,在圖8中,將預(yù)測塊Pin的附近的1行或者1列量的像素用于預(yù)測,但也可以將2行或2列、或者其以上的像素用于預(yù)測。

在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是0(垂直方向預(yù)測)的情況下,根據(jù)下述式(1)而計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值,生成預(yù)測圖像。

S'(x,y)=S(x,-1)+(S(-1,y)-S(-1,-1))/t (1)

其中,坐標(biāo)(x,y)是以預(yù)測塊Pin內(nèi)的左上像素為原點(diǎn)的相對坐標(biāo)(參照圖9),S’(x,y)是坐標(biāo)(x,y)中的預(yù)測值,S(x,y)是坐標(biāo)(x,y)中的已編碼的像素的亮度值(解碼了的亮度值)。

這樣,對作為以往(MPEG-4 AVC/H.264)的垂直方向預(yù)測的預(yù)測值的預(yù)測塊Pin的上面所鄰接的已編碼的像素的亮度值S(x,-1),相加與預(yù)測塊Pin的左面所鄰接的已編碼的像素(圖10的粗框所包圍的像素)的表示垂直方向的亮度值的變化量的S(-1,y)-S(-1,-1)成比例的值(將表示垂直方向的亮度值的變化量的S(-1,y)-S(-1,-1)縮放為1/t而得到的值),將該相加后的值決定為預(yù)測圖像的預(yù)測值,從而能夠?qū)崿F(xiàn)追隨向預(yù)測方向的亮度值的變化的垂直方向預(yù)測。

但是,在上述預(yù)測值未收斂于亮度值可取的值的范圍內(nèi)的情況下,對值進(jìn)行舍入使得收斂于該范圍內(nèi)。

另外,上述1/t也可以設(shè)為固定值,但還可以設(shè)為根據(jù)坐標(biāo)(x,y)而變化的變量。

例如,如果設(shè)為t=2x+1,則如圖11所示,縮放值從左端的列起依次如1/2、1/4、1/8、1/16那樣變小,所以從預(yù)測塊Pin的左面所鄰接的已編碼的像素起的距離越遠(yuǎn),相加的垂直方向的亮度值的變化量越小。

由此,越是與預(yù)測塊Pin的左面所鄰接的已編碼的像素之間的距離遠(yuǎn)而相關(guān)變低的預(yù)測對象像素,越能夠使預(yù)測塊Pin的左面所鄰接的已編碼的像素的影響變小,所以能夠進(jìn)行和與預(yù)測塊Pin的左面所鄰接的已編碼的像素之間的相關(guān)對應(yīng)的高精度的預(yù)測。

進(jìn)而,也可以限定進(jìn)行式(1)的預(yù)測處理的預(yù)測塊Pin的塊尺寸。一般在大的塊尺寸中,在塊內(nèi)易于包含各種信號變化,能夠使用方向性預(yù)測而高精度地進(jìn)行預(yù)測的情形少,所以例如在16×16像素以上的塊尺寸的預(yù)測塊Pin中不應(yīng)用式(1)而設(shè)為以往的垂直方向預(yù)測的預(yù)測值(預(yù)測塊Pin的上面所鄰接的已編碼的像素的亮度值S(x,-1)),僅在比16×16像素小的塊中應(yīng)用式(1),從而相比于以往的垂直方向預(yù)測,能夠提高預(yù)測性能,并且抑制運(yùn)算量的增加。

另外,在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是1(水平方向預(yù)測)的情況下,根據(jù)下述式(2)而計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值,生成預(yù)測圖像。

S'(x,y)=S(-1,y)+(S(x,-1)-S(-1,-1))/u (2)

其中,坐標(biāo)(x,y)是以預(yù)測塊Pin內(nèi)的左上像素為原點(diǎn)的相對坐標(biāo)(參照圖9),S’(x,y)是坐標(biāo)(x,y)中的預(yù)測值,S(x,y)是坐標(biāo)(x,y)中的已編碼的像素的亮度值(解碼了的亮度值)。

這樣,對作為以往(MPEG-4 AVC/H.264)的水平方向預(yù)測的預(yù)測值的預(yù)測塊Pin的左面所鄰接的已編碼的像素的亮度值S(-1,y),相加與預(yù)測塊Pin的上面所鄰接的已編碼的像素(圖12的粗框所包圍的像素)的表示水平方向的亮度值的變化量的S(x,-1)-S(-1,-1)成比例的值(將表示水平方向的亮度值的變化量的S(x,-1)-S(-1,-1)縮放為1/u而得到的值),并將該相加后的值決定為預(yù)測圖像的預(yù)測值,從而能夠?qū)崿F(xiàn)追隨向預(yù)測方向的亮度值的變化的水平方向預(yù)測。

但是,在上述預(yù)測值未收斂于亮度值可取的值的范圍內(nèi)的情況下,對值進(jìn)行舍入使得收斂于該范圍內(nèi)。

另外,上述1/u也可以設(shè)為固定值,但還可以設(shè)為隨著坐標(biāo)(x,y)而變化的變量。

例如,如果設(shè)為u=2y+1,則如圖13所示,縮放值從上端的行起依次如1/2、1/4、1/8、1/16那樣變小,所以從預(yù)測塊Pin的上面所鄰接的已編碼的像素起的距離越遠(yuǎn),相加的水平方向的亮度值的變化量越小。

由此,越是與預(yù)測塊Pin的上面所鄰接的已編碼的像素之間的距離遠(yuǎn)而相關(guān)變低的像素,越能夠使預(yù)測塊Pin的上面所鄰接的已編碼的像素的影響變小,所以能夠進(jìn)行和與預(yù)測塊Pin的上面所鄰接的已編碼的像素之間的相關(guān)對應(yīng)的高精度的預(yù)測。

進(jìn)而,也可以限定進(jìn)行式(2)的預(yù)測處理的預(yù)測塊Pin的塊尺寸。一般在大的塊尺寸中,在塊內(nèi)易于包含各種信號變化,能夠使用方向性預(yù)測而高精度地進(jìn)行預(yù)測的情形少,所以例如在16×16像素以上的塊尺寸的預(yù)測塊Pin中不應(yīng)用式(2)而設(shè)為以往的水平方向預(yù)測的預(yù)測值(預(yù)測塊Pin的左面所鄰接的已編碼的像素的亮度值S(-1,y)),僅在比16×16像素小的塊中應(yīng)用式(2),從而相比于以往的水平方向預(yù)測,能夠提高預(yù)測性能,并且抑制運(yùn)算量的增加。

另外,在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是2(平均值預(yù)測)的情況下,將預(yù)測塊Pin的上面所鄰接的已編碼的像素和預(yù)測塊Pin的左面所鄰接的已編碼的像素的平均值作為預(yù)測塊Pin內(nèi)的像素的預(yù)測值而生成預(yù)測圖像。

在幀內(nèi)部預(yù)測模式的索引值是0(垂直方向預(yù)測)、1(水平方向預(yù)測)、2(平均值預(yù)測)以外的情況下,根據(jù)索引值表示的預(yù)測方向矢量υp=(dx,dy),生成預(yù)測塊Pin內(nèi)的像素的預(yù)測值。

如圖9所示,如果以預(yù)測塊Pin的左上像素為原點(diǎn)而將預(yù)測塊Pin內(nèi)的相對坐標(biāo)設(shè)定為(x,y),則預(yù)測中使用的參照像素的位置成為下述L和鄰接像素的交點(diǎn)。

其中,k是負(fù)的標(biāo)量值。

在參照像素處于整數(shù)像素位置的情況下,將該整數(shù)像素設(shè)為預(yù)測對象像素的預(yù)測值,在參照像素不處于整數(shù)像素位置的情況下,將根據(jù)與參照像素鄰接的整數(shù)像素而生成的插值像素設(shè)為預(yù)測值。

在圖8的例子中,參照像素不處于整數(shù)像素位置,所以將根據(jù)與參照像素鄰接的2個像素進(jìn)行內(nèi)插而得到的結(jié)果作為預(yù)測值。另外,并非僅根據(jù)鄰接的2個像素,而也可以根據(jù)鄰接的2個像素以上的像素來生成插值像素作為預(yù)測值。

通過增加插值處理中使用的像素,具有提高插值像素的插值精度的效果,另一方面,由于插值處理所需的運(yùn)算的復(fù)雜度增加,所以在即使運(yùn)算負(fù)荷大但仍要求高編碼性能的運(yùn)動圖像編碼裝置的情況下,優(yōu)選根據(jù)更多的像素來生成插值像素。

通過同樣的步驟,生成與預(yù)測塊Pin內(nèi)的亮度信號的所有像素對應(yīng)的預(yù)測像素而輸出幀內(nèi)部預(yù)測圖像PINTRAin。

另外,關(guān)于幀內(nèi)部預(yù)測圖像PINTRAin的生成中使用的幀內(nèi)部預(yù)測參數(shù),為了復(fù)用到比特流而被輸出到可變長編碼部13。

另外,與之前說明的MPEG-4 AVC/H.264中的8×8像素的塊的幀內(nèi)部預(yù)測同樣地,關(guān)于在進(jìn)行幀內(nèi)部預(yù)測時使用的像素,也可以并非使用已編碼的鄰接塊內(nèi)的像素自身,而是使用對這些像素實(shí)施濾波處理而得到的結(jié)果。

針對預(yù)測塊Pin的色差信號,也通過與亮度信號同樣的步驟,實(shí)施基于幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)的幀內(nèi)部預(yù)測處理,將幀內(nèi)部預(yù)測圖像的生成中使用的幀內(nèi)部預(yù)測參數(shù)輸出到可變長編碼部13。

其中,在色差信號中可選擇的幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)無需與亮度信號相同,另外,關(guān)于垂直方向預(yù)測以及水平方向預(yù)測,也可以是以往(MPEG-4 AVC/H.264)的預(yù)測方法。

例如,在YUV信號4:2:0格式的情況下,色差信號(U、V信號)是相對亮度信號(Y信號)將分辨率在水平方向、垂直方向上都縮小為1/2而得到的信號,相比于亮度信號,圖像信號的復(fù)雜性低且預(yù)測容易,所以可選擇的幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)的數(shù)量比亮度信號少,關(guān)于垂直方向預(yù)測以及水平方向預(yù)測也設(shè)為以往的簡易的預(yù)測方法,從而幾乎不會降低預(yù)測效率而能夠?qū)崿F(xiàn)對幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)進(jìn)行編碼所需的符號量的削減、預(yù)測處理的低運(yùn)算化。

另外,關(guān)于作為垂直方向預(yù)測中使用的縮放值的1/t、和作為水平方向預(yù)測中使用的縮放值的1/u,也可以預(yù)先在運(yùn)動圖像編碼裝置以及運(yùn)動圖像解碼裝置之間約定,但也可以由運(yùn)動圖像編碼裝置的幀內(nèi)部預(yù)測部4按照序列單位或者圖片單位,將t、u輸出到可變長編碼部13,可變長編碼部13對t、u進(jìn)行可變長編碼而包含到比特流中,運(yùn)動圖像解碼裝置從比特流對t、u進(jìn)行可變長解碼來使用。

這樣能夠按照序列單位或者圖片單位對t、u進(jìn)行自適應(yīng)控制,從而能夠?qū)崿F(xiàn)進(jìn)一步與輸入圖像的影像信號的特性對應(yīng)的預(yù)測處理。

另外,關(guān)于使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸,也可以預(yù)先在運(yùn)動圖像編碼裝置以及運(yùn)動圖像解碼裝置之間約定,但也可以由運(yùn)動圖像編碼裝置的幀內(nèi)部預(yù)測部4按照序列單位或者圖片單位,將表示使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸的每個塊尺寸的ON(開)/OFF(關(guān))標(biāo)志輸出到可變長編碼部13,可變長編碼部13對上述ON/OFF標(biāo)志進(jìn)行可變長編碼而包含到比特流中,運(yùn)動圖像解碼裝置從比特流對上述ON/OFF標(biāo)志進(jìn)行可變長解碼而使用。

這樣能夠按照序列單位或者圖片單位對使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸進(jìn)行自適應(yīng)控制,從而能夠?qū)崿F(xiàn)進(jìn)一步與輸入圖像的影像信號的特性對應(yīng)的預(yù)測處理。

接下來,具體說明圖3的運(yùn)動圖像解碼裝置的處理內(nèi)容。

可變長解碼部31如果輸入了由圖1的運(yùn)動圖像編碼裝置生成的比特流,則實(shí)施針對該比特流的可變長解碼處理(圖4的步驟ST21),按照由1幀以上的圖片構(gòu)成的序列單位、或者圖片單位,對幀尺寸的信息進(jìn)行解碼。

此時,在垂直方向預(yù)測中使用的縮放值的參數(shù)t、水平方向預(yù)測中使用的縮放值的參數(shù)u、表示使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸的每個塊尺寸的ON/OFF標(biāo)志中,只要任意一個被可變長編碼并被復(fù)用到比特流的情況下,就按照由圖1的運(yùn)動圖像編碼裝置編碼了的單位(序列單位或者圖片單位)進(jìn)行解碼。

可變長解碼部31通過與運(yùn)動圖像編碼裝置同樣的步驟,決定由圖1的運(yùn)動圖像編碼裝置的編碼控制部2決定的最大編碼塊尺寸以及分割層次數(shù)的上限(步驟ST22)。

例如,在根據(jù)影像信號的分辨率決定了最大編碼塊尺寸、分割層次數(shù)上限的情況下,根據(jù)所解碼的幀尺寸信息,通過與運(yùn)動圖像編碼裝置同樣的步驟來決定最大編碼塊尺寸。

最大編碼塊尺寸以及分割層次數(shù)上限在運(yùn)動圖像編碼裝置側(cè)被復(fù)用到比特流中的情況下,使用從比特流解碼得到的值。

以后,在運(yùn)動圖像解碼裝置中,將上述最大編碼塊尺寸稱為最大解碼塊尺寸,將最大編碼塊稱為最大解碼塊。

可變長解碼部31按照所決定的最大解碼塊單位,對圖6所示那樣的最大解碼塊的分割狀態(tài)進(jìn)行解碼。根據(jù)所解碼的分割狀態(tài),層次性地確定解碼塊(與圖1的運(yùn)動圖像編碼裝置的“編碼塊”相當(dāng)?shù)膲K)(步驟ST23)。

接下來,可變長解碼部31解碼對解碼塊分配的編碼模式。根據(jù)所解碼的編碼模式中包含的信息,將解碼塊進(jìn)一步分割為一個或多個預(yù)測處理單位即預(yù)測塊,解碼對預(yù)測塊單位分配的預(yù)測參數(shù)(步驟ST24)。

在對解碼塊分配的編碼模式是幀內(nèi)部編碼模式的情況下,可變長解碼部31針對包含在解碼塊中且成為預(yù)測處理單位的一個以上的預(yù)測塊的每一個,對幀內(nèi)部預(yù)測參數(shù)進(jìn)行解碼。

進(jìn)而,可變長解碼部31根據(jù)預(yù)測差分編碼參數(shù)中包含的變換塊尺寸的信息,將解碼塊分割為成為變換處理單位的一個或多個變換塊,針對每個變換塊,對壓縮數(shù)據(jù)(變換/量化后的變換系數(shù))進(jìn)行解碼(步驟ST24)。

在切換開關(guān)33中,如果由可變長解碼部31可變長解碼了的編碼模式m(Bn)是幀內(nèi)部編碼模式(m(Bn)∈INTRA的情況),則將由可變長解碼部31可變長解碼了的預(yù)測塊單位的幀內(nèi)部預(yù)測參數(shù)輸出到幀內(nèi)部預(yù)測部34。

另一方面,如果由可變長解碼部31可變長解碼了的編碼模式m(Bn)是幀間編碼模式(m(Bn)∈INTER的情況),則將由可變長解碼部31可變長解碼了的預(yù)測塊單位的幀間預(yù)測參數(shù)以及運(yùn)動矢量輸出到運(yùn)動補(bǔ)償部35。

幀內(nèi)部預(yù)測部34在由可變長解碼部31可變長解碼了的編碼模式m(Bn)是幀內(nèi)部編碼模式(m(Bn)∈INTRA)的情況下(步驟ST25),接收從切換開關(guān)33輸出的預(yù)測塊單位的幀內(nèi)部預(yù)測參數(shù),通過與圖1的幀內(nèi)部預(yù)測部4同樣的步驟,一邊參照幀內(nèi)部預(yù)測用存儲器37中儲存的解碼圖像,一邊實(shí)施使用了上述幀內(nèi)部預(yù)測參數(shù)的針對解碼塊Bn內(nèi)的各預(yù)測塊Pin的幀內(nèi)部預(yù)測處理,生成幀內(nèi)部預(yù)測圖像PINTRAin(步驟ST26)。

即,幀內(nèi)部預(yù)測部34在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是0(垂直方向預(yù)測)的情況下,根據(jù)上述式(1)計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值,生成幀內(nèi)部預(yù)測圖像PINTRAin。

另外,在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是1(水平方向預(yù)測)的情況下,根據(jù)上述式(2)計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值,生成幀內(nèi)部預(yù)測圖像PINTRAin。

但是,在使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸被限制了的情況下,在使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸以外的尺寸的預(yù)測塊Pin中通過以往(MPEG-4 AVC/H.264)的垂直方向預(yù)測及水平方向預(yù)測進(jìn)行幀內(nèi)部預(yù)測處理。

運(yùn)動補(bǔ)償部35在由可變長解碼部31可變長解碼了的編碼模式m(Bn)是幀間編碼模式(m(Bn)∈INTER)的情況下(步驟ST25),接收從切換開關(guān)33輸出的預(yù)測塊單位的運(yùn)動矢量和幀間預(yù)測參數(shù),一邊參照運(yùn)動補(bǔ)償預(yù)測幀存儲器39中儲存的濾波處理后的解碼圖像,一邊實(shí)施使用了上述運(yùn)動矢量和幀間預(yù)測參數(shù)的針對解碼塊內(nèi)的各預(yù)測塊Pin的幀間預(yù)測處理來生成幀間預(yù)測圖像PINTERin(步驟ST27)。

逆量化/逆變換部32如果從可變長解碼部31接收到壓縮數(shù)據(jù)以及預(yù)測差分編碼參數(shù),則通過與圖1的逆量化/逆變換部8同樣的步驟,參照該預(yù)測差分編碼參數(shù),對該壓縮數(shù)據(jù)進(jìn)行逆量化,并且參照該預(yù)測差分編碼參數(shù),實(shí)施針對作為逆量化后的壓縮數(shù)據(jù)的變換系數(shù)的逆正交變換處理,計算與從圖1的逆量化/逆變換部8輸出的局部解碼預(yù)測差分信號相同的解碼預(yù)測差分信號(步驟ST28)。

加法部36將由逆量化/逆變換部32計算出的解碼預(yù)測差分信號、與由幀內(nèi)部預(yù)測部34生成的幀內(nèi)部預(yù)測圖像PINTRAin和由運(yùn)動補(bǔ)償部35生成的幀間預(yù)測圖像PINTERin中的某一方進(jìn)行相加而計算出解碼圖像,并輸出到環(huán)路濾波器部38,并且將該解碼圖像儲存到幀內(nèi)部預(yù)測用存儲器37中(步驟ST29)。

該解碼圖像成為在以后的幀內(nèi)部預(yù)測處理時使用的已解碼的圖像信號。

在環(huán)路濾波器部38中,如果針對所有解碼塊Bn的步驟ST23~ST29的處理完成(步驟ST30),則對從加法部36輸出的解碼圖像實(shí)施規(guī)定的濾波處理,將濾波處理后的解碼圖像儲存到運(yùn)動補(bǔ)償預(yù)測幀存儲器39中(步驟ST31)。

另外,關(guān)于環(huán)路濾波器部38的濾波處理,即可以以所輸入的解碼圖像的最大解碼塊或者各個解碼塊為單位來進(jìn)行,也可以在輸入了1個圖片量的解碼圖像之后集中1個圖片量來進(jìn)行。

另外,作為規(guī)定的濾波處理的例子,可以舉出以使編碼塊邊界的不連續(xù)性(塊噪聲)不會變得顯著的方式對塊邊界進(jìn)行濾波的處理、對解碼圖像的失真進(jìn)行補(bǔ)償?shù)臑V波處理等。

該解碼圖像成為運(yùn)動補(bǔ)償預(yù)測用的參照圖像,并且成為再生圖像。

根據(jù)以上可知,根據(jù)該實(shí)施方式1,運(yùn)動圖像編碼裝置的幀內(nèi)部預(yù)測部4構(gòu)成為在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是水平方向預(yù)測處理的情況下,對預(yù)測塊的左面所鄰接的像素的亮度值相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是垂直方向預(yù)測處理的情況下,對預(yù)測塊的上面所鄰接的像素的亮度值相加與預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,所以起到即使在信號值沿著預(yù)測方向而變化的情況下也能夠?qū)崿F(xiàn)高精度的預(yù)測來提高圖像質(zhì)量的效果。

另外,根據(jù)該實(shí)施方式1,運(yùn)動圖像解碼裝置的幀內(nèi)部預(yù)測部34構(gòu)成為在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是水平方向預(yù)測處理的情況下,對預(yù)測塊的左面所鄰接的像素的亮度值相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是垂直方向預(yù)測處理的情況下,對預(yù)測塊的上面所鄰接的像素的亮度值相加與預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,所以起到即使在信號值沿著預(yù)測方向而變化的情況下也能夠?qū)崿F(xiàn)高精度的預(yù)測來提高圖像質(zhì)量的效果。

根據(jù)該實(shí)施方式1,關(guān)于由幀內(nèi)部預(yù)測部4、34實(shí)施水平方向預(yù)測處理時所使用的縮放值即1/u,構(gòu)成為越是與從預(yù)測塊的上面所鄰接的像素起距離遠(yuǎn)的行有關(guān)的縮放值,設(shè)定為越小的值,所以越是與預(yù)測塊的上面所鄰接的像素之間的距離遠(yuǎn)而相關(guān)變低的像素,越能夠使預(yù)測塊的上面所鄰接的像素的影響變小,其結(jié)果,起到能夠高精度地進(jìn)行預(yù)測的效果。

另外,關(guān)于由幀內(nèi)部預(yù)測部4、34實(shí)施垂直方向預(yù)測處理時所使用的縮放值即1/t,構(gòu)成為越是與從預(yù)測塊的左面所鄰接的像素起距離遠(yuǎn)的列有關(guān)的縮放值,設(shè)定為越小的值,所以越是與預(yù)測塊的左面所鄰接的像素之間的距離遠(yuǎn)而相關(guān)變低的像素,越能夠使預(yù)測塊的左面所鄰接的像素的影響變小,其結(jié)果,起到能夠高精度地進(jìn)行預(yù)測的效果。

另外,在該實(shí)施方式1中,示出了由幀內(nèi)部預(yù)測部4、34實(shí)施水平方向預(yù)測處理時的預(yù)測塊內(nèi)的第N行(從預(yù)測塊的上端起第N行)的縮放值是1/2N+1(=1/2,1/4,1/8,1/16,···)、由幀內(nèi)部預(yù)測部4、34實(shí)施垂直方向預(yù)測處理時的預(yù)測塊內(nèi)的第M列(從預(yù)測塊的左端起第M列)的縮放值是1/2M+1(=1/2,1/4,1/8,1/16,···)的例子,但這只是一個例子,只要由幀內(nèi)部預(yù)測部4、34實(shí)施水平方向預(yù)測處理時越是從預(yù)測塊的上端遠(yuǎn)離的行的縮放值越小、并且由幀內(nèi)部預(yù)測部4、34實(shí)施垂直方向預(yù)測處理時越是從預(yù)測塊的左端遠(yuǎn)離的列的縮放值越小,就可以是任意值。

實(shí)施方式2.

在上述實(shí)施方式1中,幀內(nèi)部預(yù)測部4、34在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是垂直方向預(yù)測處理的情況下,對預(yù)測塊的上面所鄰接的像素的亮度值,相加對該預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量乘以針對預(yù)測塊內(nèi)的每列設(shè)定的縮放值而得到的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,但為了實(shí)現(xiàn)低運(yùn)算的處理,也可以關(guān)于從預(yù)測塊內(nèi)的左端起的規(guī)定的幾列,對該預(yù)測塊的上面所鄰接的像素的亮度值,相加與該預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,但關(guān)于該預(yù)測塊內(nèi)的剩余的列,將該預(yù)測塊的上面所鄰接的像素的亮度值決定為預(yù)測圖像的預(yù)測值。

另外,根據(jù)同樣的理由,在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是水平方向預(yù)測處理的情況下,也可以關(guān)于從預(yù)測塊內(nèi)的上端起的規(guī)定的幾行,對該預(yù)測塊的左面所鄰接的像素的亮度值,相加對該預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量乘以針對預(yù)測塊內(nèi)的每行設(shè)定的縮放值而得到的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,但關(guān)于該預(yù)測塊內(nèi)的剩余的行,將該預(yù)測塊的左面所鄰接的像素的亮度值決定為預(yù)測圖像的預(yù)測值。

以下,具體說明幀內(nèi)部預(yù)測部4、34的處理內(nèi)容。

幀內(nèi)部預(yù)測部4、34在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是0(垂直方向預(yù)測)的情況下,根據(jù)下述式(4)計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值來生成預(yù)測圖像。

其中,B是0以上的整數(shù),在應(yīng)用式(4)的上式的x<B時,在所計算出的預(yù)測值超過亮度值可取的值的范圍的情況下,以使預(yù)測值收斂于該范圍內(nèi)的方式對值進(jìn)行舍入。

使B的值越小,能夠?qū)崿F(xiàn)越低運(yùn)算的處理,在B=0的情況下,與僅使用預(yù)測塊Pin的上面所鄰接的已編碼(已解碼)像素的亮度值S(x,-1)的以往(MPEG-4 AVC/H.264)的垂直方向預(yù)測一致。

B的值也可以根據(jù)預(yù)測塊Pin的塊尺寸而變更。一般,如果所預(yù)測的塊尺寸變大,則在塊內(nèi)易于包含各種信號變化,難以在單一的方向上進(jìn)行預(yù)測,所以能夠利用方向性預(yù)測高精度地進(jìn)行預(yù)測的情形減少。

因此,僅在預(yù)測塊Pin的塊尺寸小于規(guī)定尺寸的情況下設(shè)定為B≥1,如果預(yù)測塊Pin的塊尺寸是規(guī)定尺寸以上,則設(shè)為B=0。

例如,如果規(guī)定尺寸是16×16像素,則在16×16像素以上的塊尺寸的預(yù)測塊Pin中成為B=0,所以與以往的垂直方向預(yù)測相同,能夠抑制運(yùn)算處理的增加。即,在B=0的塊尺寸中,屬于x<B或x≥B中的哪一個的條件判定處理變得不需要,所以始終不進(jìn)行上述條件判定處理而進(jìn)行以往的垂直方向預(yù)測,從而不會發(fā)生任何由以往的垂直方向預(yù)測處理所致的運(yùn)算處理的增加。

另一方面,在4×4像素、8×8像素等比16×16像素小的塊尺寸的預(yù)測塊Pin中,成為B≥1,所以相比于以往的垂直方向預(yù)測,能夠提高預(yù)測性能。

例如,在4×4像素的塊尺寸的預(yù)測塊Pin中,在是B=1的情況下,針對預(yù)測塊Pin內(nèi)的最左邊的列,應(yīng)用式(4)的上式,相加與預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值。

另一方面,針對預(yù)測塊Pin內(nèi)的從左端起的第2~第4列,應(yīng)用式(4)的下式,不相加與預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值。

通過這樣將B的值設(shè)定為小的值,能夠大幅抑制運(yùn)算量的增加。

另外,作為實(shí)際的裝置,也可以如上述式(4)所示,在x<B的位置的像素和x≥B的位置的像素中,區(qū)分地構(gòu)成預(yù)測值的計算式,還可以構(gòu)成為針對預(yù)測塊Pin內(nèi)的所有像素,在拷貝了作為以往的垂直方向預(yù)測的預(yù)測值的預(yù)測塊Pin的上面所鄰接的已編碼(已解碼)像素的亮度值S(x,-1)之后,僅對x<B的位置的像素相加將S(-1,y)-S(-1,-1)縮放為1/t而得到的值等,只要能夠計算與上述式等價的預(yù)測值,則可以任意地構(gòu)成。

另外,幀內(nèi)部預(yù)測部4、34在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是1(水平方向預(yù)測)的情況下,根據(jù)下述式(5)計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值來生成預(yù)測圖像。

其中,C是0以上的整數(shù),在應(yīng)用式(5)的上式的x<C時,在所計算出的預(yù)測值超過亮度值可取的值的范圍的情況下,以使預(yù)測值收斂于該范圍內(nèi)的方式對值進(jìn)行舍入。

使C的值越小,能夠?qū)崿F(xiàn)越低運(yùn)算的處理,在C=0的情況下,與僅使用預(yù)測塊Pin的左面所鄰接的已編碼(已解碼)像素的亮度值S(-1,y)的以往(MPEG-4 AVC/H.264)的水平方向預(yù)測一致。

C的值也可以根據(jù)預(yù)測塊Pin的塊尺寸而變更。一般,如果所預(yù)測的塊尺寸變大,則在塊內(nèi)易于包含各種信號變化,難以在單一的方向上進(jìn)行預(yù)測,所以能夠通過方向性預(yù)測來高精度地進(jìn)行預(yù)測的情形減少。

因此,僅在預(yù)測塊Pin的塊尺寸比規(guī)定尺寸小的情況下設(shè)定為C≥1,如果預(yù)測塊Pin的塊尺寸是規(guī)定尺寸以上,則設(shè)為C=0。

例如,如果規(guī)定尺寸是16×16像素,則在16×16像素以上的塊尺寸的預(yù)測塊Pin中,成為C=0,所以與以往的水平方向預(yù)測相同,能夠抑制運(yùn)算處理的增加。即,在C=0的塊尺寸中,屬于y<C或y≥C中的哪一個的條件判定處理變得不需要,所以始終不進(jìn)行上述條件判定處理而進(jìn)行以往的水平方向預(yù)測,從而不會發(fā)生任何由以往的水平方向預(yù)測處理所致的運(yùn)算處理的增加。

另一方面,在4×4像素、8×8像素等比16×16像素小的塊尺寸的預(yù)測塊Pin中,成為C≥1,所以相比于以往的水平方向預(yù)測,能夠提高預(yù)測性能,并且大幅抑制運(yùn)算量的增加。

例如,在4×4像素的塊尺寸的預(yù)測塊Pin中,在是C=1的情況下,針對預(yù)測塊Pin內(nèi)的最上面的行,應(yīng)用式(5)的上式,相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值。

另一方面,針對預(yù)測塊Pin內(nèi)的從上端起的第2~第4行,應(yīng)用式(5)的下式,不相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值。

通過這樣將C的值設(shè)定為小的值,能夠大幅抑制運(yùn)算量的增加。

另外,作為實(shí)際的裝置,也可以如上述式(5)所示,在y<C的位置的像素和y≥C的位置的像素中,區(qū)分地構(gòu)成預(yù)測值的計算式,還可以構(gòu)成為針對預(yù)測塊Pin內(nèi)的所有像素,在拷貝了作為以往的水平方向預(yù)測的預(yù)測值的預(yù)測塊Pin的左面所鄰接的已編碼(已解碼)像素的亮度值S(-1,y)之后,僅對y<C的位置的像素相加將S(x,-1)-S(-1,-1)縮放為1/u而得到的值等,只要能夠計算與上述式等價的預(yù)測值,就可以任意地構(gòu)成。

另外,關(guān)于作為在垂直方向預(yù)測中使用的縮放值的1/t、B(對預(yù)測塊的上面所鄰接的像素的亮度值相加與編碼塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值的表示預(yù)測塊內(nèi)的列的塊內(nèi)信息)、和作為在水平方向預(yù)測中使用的縮放值的1/u、C(對預(yù)測塊的左面所鄰接的像素的亮度值相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值的表示預(yù)測塊內(nèi)的行的塊內(nèi)信息),也可以預(yù)先在運(yùn)動圖像編碼裝置以及運(yùn)動圖像解碼裝置之間約定,但也可以由運(yùn)動圖像編碼裝置的幀內(nèi)部預(yù)測部4按照序列單位或者圖片單位,將t、u、B、C輸出到可變長編碼部13,由可變長編碼部13對t、u、B、C進(jìn)行可變長編碼而包含到比特流中,并由運(yùn)動圖像解碼裝置從比特流對t、u、B、C進(jìn)行可變長解碼來使用。

這樣按照序列單位或者圖片單位,能夠自適應(yīng)地控制t、u、B、C,從而能夠?qū)崿F(xiàn)進(jìn)一步與輸入圖像的影像信號的特性對應(yīng)的預(yù)測處理。

另外,關(guān)于使用式(4)的垂直方向預(yù)測、式(5)的水平方向預(yù)測的塊尺寸,也可以預(yù)先在運(yùn)動圖像編碼裝置以及運(yùn)動圖像解碼裝置之間約定,但也可以由運(yùn)動圖像編碼裝置的幀內(nèi)部預(yù)測部4按照序列單位或者圖片單位,將表示使用式(4)的垂直方向預(yù)測、式(5)的水平方向預(yù)測的塊尺寸的每個塊尺寸的ON/OFF標(biāo)志輸出到可變長編碼部13,由可變長編碼部13對上述ON/OFF標(biāo)志進(jìn)行可變長編碼而包含到比特流中,并由運(yùn)動圖像解碼裝置從比特流對上述ON/OFF標(biāo)志進(jìn)行可變長解碼來使用。

這樣按照序列單位或者圖片單位,能夠自適應(yīng)地控制使用式(4)的垂直方向預(yù)測、式(5)的水平方向預(yù)測的塊尺寸,從而能夠?qū)崿F(xiàn)進(jìn)一步與輸入圖像的影像信號的特性對應(yīng)的預(yù)測處理。

通過以上可知,根據(jù)該實(shí)施方式2,幀內(nèi)部預(yù)測部4、34構(gòu)成為在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是水平方向預(yù)測處理的情況下,關(guān)于從預(yù)測塊內(nèi)的上端起的規(guī)定的幾行,對該預(yù)測塊的左面所鄰接的像素的亮度值,相加與該預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,但關(guān)于該預(yù)測塊內(nèi)的剩余的行,將該預(yù)測塊的左面所鄰接的像素的亮度值決定為預(yù)測圖像的預(yù)測值,所以起到能夠抑制運(yùn)算量的增加并且改善水平方向預(yù)測的預(yù)測效率的效果。

另外,幀內(nèi)部預(yù)測部4、34構(gòu)成為在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是垂直方向預(yù)測處理的情況下,關(guān)于從預(yù)測塊內(nèi)的左端起的規(guī)定的幾列,對該預(yù)測塊的上面所鄰接的像素的亮度值,相加與該預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,但關(guān)于該預(yù)測塊內(nèi)的剩余的列,將該預(yù)測塊的上面所鄰接的像素的亮度值決定為預(yù)測圖像的預(yù)測值,所以起到能夠抑制運(yùn)算量的增加并且改善垂直方向預(yù)測的預(yù)測效率的效果。

實(shí)施方式3.

該實(shí)施方式3中的運(yùn)動圖像編碼裝置的結(jié)構(gòu)圖與上述實(shí)施方式1中示出的圖1相同,該實(shí)施方式3中的運(yùn)動圖像解碼裝置的結(jié)構(gòu)圖與上述實(shí)施方式1中示出的圖3相同。

接下來,說明動作。

在該實(shí)施方式3中,說明如下的運(yùn)動圖像編碼裝置和運(yùn)動圖像解碼裝置,其中,該運(yùn)動圖像編碼裝置將影像的各幀圖像作為輸入圖像,實(shí)施從已編碼的附近像素進(jìn)行的幀內(nèi)部預(yù)測或者鄰近幀間的運(yùn)動補(bǔ)償預(yù)測,針對所得到的預(yù)測差分信號實(shí)施基于正交變換/量化的壓縮處理,之后進(jìn)行可變長編碼來生成比特流,該運(yùn)動圖像解碼裝置對從該運(yùn)動圖像編碼裝置輸出的比特流進(jìn)行解碼。

圖1的運(yùn)動圖像編碼裝置的特征在于,適應(yīng)于影像信號的空間/時間方向的局部性的變化,而將影像信號分割為各種尺寸的塊,來進(jìn)行幀內(nèi)/幀間自適應(yīng)編碼。

一般,影像信號具有在空間/時間上信號的復(fù)雜度局部地變化的特性。在空間上觀察時,有時在某個影像幀上,例如既有在天空、壁等那樣的比較寬的圖像區(qū)域中具有均勻的信號特性的圖樣,也混合存在人物或包含細(xì)微的紋理的繪畫等在小的圖像區(qū)域內(nèi)具有復(fù)雜的紋理圖案的圖樣。

即使在時間上觀察,雖然關(guān)于天空、壁,局部性地時間方向的圖樣的變化小,但關(guān)于活動的人物、物體,由于其輪廓在時間上進(jìn)行剛體/非剛體的運(yùn)動,所以時間上的變化大。

在編碼處理中,進(jìn)行通過時間/空間上的預(yù)測來生成信號功率或熵小的預(yù)測差分信號從而削減整體的符號量的處理,但只要能夠?qū)㈩A(yù)測中使用的參數(shù)均勻地應(yīng)用于盡可能大的圖像信號區(qū)域,就能夠減小該參數(shù)的符號量。

另一方面,如果針對時間上/空間上變化大的圖像信號圖案,將同一預(yù)測參數(shù)應(yīng)用于大的圖像區(qū)域,則預(yù)測的錯誤增加,所以預(yù)測差分信號的符號量增加。

因此,在時間上/空間上變化大的區(qū)域中,優(yōu)選減小應(yīng)用同一預(yù)測參數(shù)來進(jìn)行預(yù)測處理的塊尺寸,增加預(yù)測中使用的參數(shù)的數(shù)據(jù)量,降低預(yù)測差分信號的功率/熵。

在該實(shí)施方式3中,為了進(jìn)行與這樣的影像信號的一般的性質(zhì)適應(yīng)的編碼,采用如下結(jié)構(gòu):最初從規(guī)定的最大塊尺寸開始預(yù)測處理等,層次性地分割影像信號的區(qū)域,針對所分割的每個區(qū)域,使預(yù)測處理、其預(yù)測差分的編碼處理自適應(yīng)化。

關(guān)于圖1的運(yùn)動圖像編碼裝置設(shè)為處理對象的影像信號格式,除了由亮度信號和2個色差信號構(gòu)成的YUV信號、從數(shù)字?jǐn)z像元件輸出的RGB信號等任意的顏色空間的彩色影像信號以外,還設(shè)為單色圖像信號、紅外線圖像信號等影像幀由水平和垂直二維的數(shù)字采樣(像素)列構(gòu)成的任意的影像信號。

其中,各像素的灰度既可以是8比特,也可以是10比特、12比特等灰度。

在以下的說明中,為了方便,只要沒有特別說明,就說明設(shè)為輸入圖像的影像信號是YUV信號、并且處理2個色差分量U、V相對亮度分量Y被子采樣了的4:2:0格式的信號的情況。

另外,將與影像信號的各幀對應(yīng)的處理數(shù)據(jù)單位稱為“圖片”。

在該實(shí)施方式3中,將“圖片”設(shè)為依次掃描(逐行掃描)了的影像幀信號而進(jìn)行說明,但在影像信號是隔行掃描信號的情況下,“圖片”也可以是作為構(gòu)成影像幀的單位的場圖像信號。

最初,說明圖1的運(yùn)動圖像編碼裝置的處理內(nèi)容。

首先,編碼控制部2決定成為編碼對象的圖片(當(dāng)前圖片)的編碼中使用的最大編碼塊的尺寸、和對最大編碼塊進(jìn)行層次分割的層次數(shù)的上限(圖2的步驟ST1)。

作為最大編碼塊的尺寸的決定方法,例如既可以根據(jù)輸入圖像的影像信號的分辨率而對所有圖片決定同一尺寸,也可以將輸入圖像的影像信號的局部性的運(yùn)動的復(fù)雜度的差異作為參數(shù)而進(jìn)行定量化,對于運(yùn)動劇烈的圖片決定小的尺寸,另一方面對于運(yùn)動少的圖片決定大的尺寸。

作為分割層次數(shù)的上限的決定方法,例如有根據(jù)輸入圖像的影像信號的分辨率針對所有圖片決定同一層次數(shù)的方法、或在輸入圖像的影像信號的運(yùn)動劇烈的情況下設(shè)定為增大層次數(shù)而能夠檢測更細(xì)微的運(yùn)動且在運(yùn)動少的情況下設(shè)定為抑制層次數(shù)的方法等。

另外,編碼控制部2從可利用的1個以上的編碼模式中選擇與層次性地分割的各個編碼塊對應(yīng)的編碼模式(步驟ST2)。

即,編碼控制部2針對最大編碼塊尺寸的每個圖像區(qū)域,直至達(dá)到預(yù)先決定的分割層次數(shù)的上限為止,層次性地分割為具有編碼塊尺寸的編碼塊,決定針對各個編碼塊的編碼模式。

在編碼模式中有一個或多個幀內(nèi)部編碼模式(總稱為“INTRA”)、和一個或多個幀間編碼模式(總稱為“INTER”),編碼控制部2從在該圖片中可利用的所有編碼模式或者其子集中,選擇與各個編碼塊對應(yīng)的編碼模式。

其中,由后述塊分割部1層次性地分割的各個編碼塊被進(jìn)一步分割為作為進(jìn)行預(yù)測處理的單位的一個或多個預(yù)測塊,預(yù)測塊的分割狀態(tài)也作為信息而被包含于編碼模式中。

編碼控制部2的編碼模式的選擇方法是公知的技術(shù),所以省略詳細(xì)的說明,例如有如下方法等:使用可利用的任意的編碼模式來實(shí)施針對編碼塊的編碼處理而驗(yàn)證編碼效率,在可利用的多個編碼模式中選擇編碼效率最佳的編碼模式。

另外,編碼控制部2針對各個編碼塊的每一個,決定在壓縮差分圖像時使用的量化參數(shù)以及變換塊尺寸,并且決定在實(shí)施預(yù)測處理時使用的預(yù)測參數(shù)(幀內(nèi)部預(yù)測參數(shù)或者幀間預(yù)測參數(shù))。

其中,在編碼塊進(jìn)一步被分割為進(jìn)行預(yù)測處理的預(yù)測塊單位的情況下,能夠針對每個預(yù)測塊選擇預(yù)測參數(shù)(幀內(nèi)部預(yù)測參數(shù)或者幀間預(yù)測參數(shù))。

進(jìn)而,在編碼模式是幀內(nèi)部編碼模式的編碼塊中,由于在如后所述那樣進(jìn)行幀內(nèi)部預(yù)測處理時使用與預(yù)測塊鄰接的已編碼的像素,所以需要按照預(yù)測塊單位進(jìn)行編碼,所以可選擇的變換塊尺寸被限制為預(yù)測塊的尺寸以下。

編碼控制部2將包括量化參數(shù)以及變換塊尺寸的預(yù)測差分編碼參數(shù)輸出到變換/量化部7、逆量化/逆變換部8以及可變長編碼部13。

另外,編碼控制部2將幀內(nèi)部預(yù)測參數(shù)根據(jù)需要而輸出到幀內(nèi)部預(yù)測部4。

另外,編碼控制部2將幀間預(yù)測參數(shù)根據(jù)需要而輸出到運(yùn)動補(bǔ)償預(yù)測部5。

如果輸入了輸入圖像的影像信號,則塊分割部1將該輸入圖像的影像信號分割為由編碼控制部2決定的最大編碼塊尺寸,進(jìn)而將分割了的最大編碼塊層次性地分割為由編碼控制部2決定的編碼塊,并輸出該編碼塊。

此處,圖5是示出最大編碼塊被層次性地分割為多個編碼塊的例子的說明圖。

在圖5中,最大編碼塊是被記載為“第0層次”的亮度分量具有(L0,M0)的尺寸的編碼塊。

將最大編碼塊設(shè)為出發(fā)點(diǎn),直至利用四叉樹構(gòu)造另行決定的規(guī)定的深度為止,層次性地進(jìn)行分割,從而得到編碼塊。

在深度n中,編碼塊是尺寸(Ln,Mn)的圖像區(qū)域。

其中,Ln和Mn既可以相同,也可以不同,但在圖5中示出了Ln=Mn的情形。

以后,將由編碼控制部2決定的編碼塊尺寸定義為編碼塊的亮度分量中的尺寸(Ln,Mn)。

由于進(jìn)行四叉樹分割,所以(Ln+1,Mn+1)=(Ln/2,Mn/2)始終成立。

另外,在RGB信號等所有顏色分量具有同一采樣數(shù)的彩色影像信號(4:4:4格式)中,所有顏色分量的尺寸成為(Ln,Mn),但在處理4:2:0格式的情況下,所對應(yīng)的色差分量的編碼塊尺寸成為(Ln/2,Mn/2)。

以后,設(shè)為用Bn來表示第n層次的編碼塊,用m(Bn)來表示在編碼塊Bn中可選擇的編碼模式。

在由多個顏色分量構(gòu)成的彩色影像信號的情況下,編碼模式m(Bn)既可以構(gòu)成為針對每個顏色分量分別使用單獨(dú)的模式,也可以構(gòu)成為針對所有顏色分量使用共同的模式。以后,只要沒有特別說明,就指與YUV信號、4:2:0格式的編碼塊的亮度分量對應(yīng)的編碼模式而進(jìn)行說明。

編碼塊Bn如圖6所示,通過塊分割部1而被分割為表示預(yù)測處理單位的一個或多個預(yù)測塊。

以后,將屬于編碼塊Bn的預(yù)測塊記載為Pin(i是第n層次中的預(yù)測塊編號)。圖5示出P00和P10的一個例子。

在編碼模式m(Bn)中作為信息而包含有如何進(jìn)行編碼塊Bn的預(yù)測塊分割。

關(guān)于預(yù)測塊Pin,全部依照編碼模式m(Bn)進(jìn)行預(yù)測處理,但能夠針對每個預(yù)測塊Pin,選擇單獨(dú)的預(yù)測參數(shù)(幀內(nèi)部預(yù)測參數(shù)或者幀間預(yù)測參數(shù))。

編碼控制部2針對最大編碼塊,例如生成圖6所示那樣的塊分割狀態(tài)來確定編碼塊。

圖6(a)的虛線所包圍的矩形表示各編碼塊,各編碼塊內(nèi)存在的用斜線涂覆的塊表示各預(yù)測塊的分割狀態(tài)。

圖6(b)是關(guān)于圖6(a)的例子利用四叉樹圖形表示了通過層次分割來分配編碼模式m(Bn)的狀況的圖。圖6(b)的□所包圍的節(jié)點(diǎn)是分配了編碼模式m(Bn)的節(jié)點(diǎn)(編碼塊)。

該四叉樹圖形的信息與編碼模式m(Bn)一起從編碼控制部2輸出到可變長編碼部13而被復(fù)用到比特流。

切換開關(guān)3在由編碼控制部2決定的編碼模式m(Bn)是幀內(nèi)部編碼模式的情況(m(Bn)∈INTRA的情況)下,將從塊分割部1輸出的編碼塊Bn輸出到幀內(nèi)部預(yù)測部4。

另一方面,在由編碼控制部2決定的編碼模式m(Bn)是幀間編碼模式的情況(m(Bn)∈INTER的情況)下,將從塊分割部1輸出的編碼塊Bn輸出到運(yùn)動補(bǔ)償預(yù)測部5。

在幀內(nèi)部預(yù)測部4中,如果由編碼控制部2決定的編碼模式m(Bn)是幀內(nèi)部編碼模式(m(Bn)∈INTRA的情況),且從切換開關(guān)3接收到編碼塊Bn(步驟ST3),則一邊參照幀內(nèi)部預(yù)測用存儲器10中儲存的局部解碼圖像,一邊使用由編碼控制部2決定的幀內(nèi)部預(yù)測參數(shù),來實(shí)施針對該編碼塊Bn內(nèi)的各預(yù)測塊Pin的幀內(nèi)部預(yù)測處理而生成幀內(nèi)部預(yù)測圖像PINTRAin(步驟ST4)。

另外,運(yùn)動圖像解碼裝置需要生成與幀內(nèi)部預(yù)測圖像PINTRAin完全相同的幀內(nèi)部預(yù)測圖像,所以幀內(nèi)部預(yù)測圖像PINTRAin的生成中使用的幀內(nèi)部預(yù)測參數(shù)從編碼控制部2輸出到可變長編碼部13而被復(fù)用到比特流。

在后面詳細(xì)敘述幀內(nèi)部預(yù)測部4的處理內(nèi)容。

在運(yùn)動補(bǔ)償預(yù)測部5中,如果由編碼控制部2決定的編碼模式m(Bn)是幀間編碼模式(m(Bn)∈INTER的情況),且從切換開關(guān)3接收到編碼塊Bn(步驟ST3),則比較該編碼塊Bn內(nèi)的各預(yù)測塊Pin和運(yùn)動補(bǔ)償預(yù)測幀存儲器12中儲存的濾波處理后的局部解碼圖像來搜索運(yùn)動矢量,使用該運(yùn)動矢量和由編碼控制部2決定的幀間預(yù)測參數(shù),實(shí)施針對該編碼塊Bn內(nèi)的各預(yù)測塊Pin的幀間預(yù)測處理,生成幀間預(yù)測圖像PINTERin(步驟ST5)。

另外,運(yùn)動圖像解碼裝置需要生成與幀間預(yù)測圖像PINTERin完全相同的幀間預(yù)測圖像,所以幀間預(yù)測圖像PINTERin的生成中使用的幀間預(yù)測參數(shù)從編碼控制部2輸出到可變長編碼部13而被復(fù)用到比特流。

另外,由運(yùn)動補(bǔ)償預(yù)測部5搜索到的運(yùn)動矢量也輸出到可變長編碼部13而被復(fù)用到比特流。

減法部6如果從塊分割部1接收到編碼塊Bn,則從該編碼塊Bn內(nèi)的預(yù)測塊Pin減去由幀內(nèi)部預(yù)測部4生成的幀內(nèi)部預(yù)測圖像PINTRAin或者由運(yùn)動補(bǔ)償預(yù)測部5生成的幀間預(yù)測圖像PINTERin中的某一方,將作為其相減結(jié)果的預(yù)測差分信號ein輸出到變換/量化部7(步驟ST6)。

變換/量化部7如果從減法部6接收到預(yù)測差分信號ein,則參照由編碼控制部2決定的預(yù)測差分編碼參數(shù),實(shí)施針對該預(yù)測差分信號ein的正交變換處理(例如,DCT(離散余弦變換)、對預(yù)先確定的學(xué)習(xí)序列進(jìn)行了基底設(shè)計的KL變換等正交變換處理),計算變換系數(shù)。

另外,變換/量化部7參照該預(yù)測差分編碼參數(shù),對該變換系數(shù)進(jìn)行量化,將作為量化后的變換系數(shù)的壓縮數(shù)據(jù)輸出到逆量化/逆變換部8以及可變長編碼部13(步驟ST7)。

逆量化/逆變換部8如果從變換/量化部7接收到壓縮數(shù)據(jù),則參照由編碼控制部2決定的預(yù)測差分編碼參數(shù),對該壓縮數(shù)據(jù)進(jìn)行逆量化。

另外,逆量化/逆變換部8參照該預(yù)測差分編碼參數(shù),實(shí)施針對作為逆量化后的壓縮數(shù)據(jù)的變換系數(shù)的逆正交變換處理(例如,逆DCT、逆KL變換等),計算與從減法部6輸出的預(yù)測差分信號ein相當(dāng)?shù)木植拷獯a預(yù)測差分信號并輸出到加法部9(步驟ST8)。

加法部9如果從逆量化/逆變換部8接收到局部解碼預(yù)測差分信號,則將該局部解碼預(yù)測差分信號、與由幀內(nèi)部預(yù)測部4生成的幀內(nèi)部預(yù)測圖像PINTRAin和由運(yùn)動補(bǔ)償預(yù)測部5生成的幀間預(yù)測圖像PINTERin中的某一方進(jìn)行相加,從而計算局部解碼圖像(步驟ST9)。

另外,加法部9將該局部解碼圖像輸出到環(huán)路濾波器部11,并且將該局部解碼圖像儲存到幀內(nèi)部預(yù)測用存儲器10中。

該局部解碼圖像成為在以后的幀內(nèi)部預(yù)測處理時使用的已編碼的圖像信號。

環(huán)路濾波器部11如果從加法部9接收到局部解碼圖像,則對該局部解碼圖像實(shí)施規(guī)定的濾波處理,將濾波處理后的局部解碼圖像儲存到運(yùn)動補(bǔ)償預(yù)測幀存儲器12中(步驟ST10)。

另外,關(guān)于由環(huán)路濾波器部11執(zhí)行的濾波處理,既可以以所輸入的局部解碼圖像的最大編碼塊或者各個編碼塊為單位進(jìn)行,也可以在輸入了1個圖片量的局部解碼圖像之后集中1個圖片量來進(jìn)行。

另外,作為規(guī)定的濾波處理的例子,可以舉出以使編碼塊邊界的不連續(xù)性(塊噪聲)不會變得顯著的方式對塊邊界進(jìn)行濾波的處理、以使作為輸入圖像的圖1的影像信號與局部解碼圖像之間的誤差成為最小的方式對局部解碼圖像的失真進(jìn)行補(bǔ)償?shù)臑V波處理等。

但是,在進(jìn)行以使作為輸入圖像的圖1的影像信號與局部解碼圖像之間的誤差成為最小的方式對局部解碼圖像的失真進(jìn)行補(bǔ)償?shù)臑V波處理的情況下,需要在環(huán)路濾波器部11中參照影像信號,所以需要變更圖1的運(yùn)動圖像編碼裝置使得對環(huán)路濾波器部11輸入影像信號。

直至針對層次性地分割了的所有編碼塊Bn的處理完成為止重復(fù)實(shí)施步驟ST3~ST9的處理,如果針對所有編碼塊Bn的處理完成,則轉(zhuǎn)移到步驟ST13的處理(步驟ST11、ST12)。

可變長編碼部13對從變換/量化部7輸出的壓縮數(shù)據(jù)、從編碼控制部2輸出的最大編碼塊內(nèi)的塊分割信息(以圖6(b)為例子的四叉樹信息)、編碼模式m(Bn)以及預(yù)測差分編碼參數(shù)、從編碼控制部2輸出的幀內(nèi)部預(yù)測參數(shù)(編碼模式是幀內(nèi)部編碼模式的情況)或者幀間預(yù)測參數(shù)(編碼模式是幀間編碼模式的情況)、以及從運(yùn)動補(bǔ)償預(yù)測部5輸出的運(yùn)動矢量(編碼模式是幀間編碼模式的情況)進(jìn)行可變長編碼,生成表示這些編碼結(jié)果的比特流(步驟ST13)。

接下來,詳細(xì)說明幀內(nèi)部預(yù)測部4的處理內(nèi)容。

圖17是示出編碼塊Bn內(nèi)的各預(yù)測塊Pin可選擇的幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)的一個例子的說明圖。其中,NI表示幀內(nèi)部預(yù)測模式數(shù)。

在圖17中,示出幀內(nèi)部預(yù)測模式和該幀內(nèi)部預(yù)測模式所表示的預(yù)測方向矢量,在圖17的例子中,進(jìn)行設(shè)計使得隨著可選擇的幀內(nèi)部預(yù)測模式的個數(shù)增加而使預(yù)測方向矢量彼此的相對角度變小。

幀內(nèi)部預(yù)測部4如上述那樣參照預(yù)測塊Pin的幀內(nèi)部預(yù)測參數(shù),實(shí)施針對該預(yù)測塊Pin的幀內(nèi)部預(yù)測處理,生成幀內(nèi)部預(yù)測圖像PINTRAin,但此處說明生成亮度信號中的預(yù)測塊Pin的幀內(nèi)部預(yù)測信號的幀內(nèi)部處理。

將預(yù)測塊Pin的尺寸設(shè)為lin×min像素。

圖8是示出生成lin=min=4的情況的預(yù)測塊Pin內(nèi)的像素的預(yù)測值時使用的像素的一個例子的說明圖。

在圖8中,將預(yù)測塊Pin的上面的已編碼的像素(2×lin+1)個、和左面的已編碼的像素(2×min)個設(shè)為預(yù)測中使用的像素,但預(yù)測中使用的像素既可以多于圖8所示的像素也可以少于圖8所示的像素。

另外,在圖8中,將預(yù)測塊Pin的附近的1行或者1列量的像素用于預(yù)測,但也可以將2行或2列、或者其以上的像素用于預(yù)測。

在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是0(平面(Planar)預(yù)測)的情況下,將使用預(yù)測塊Pin的上面所鄰接的已編碼的像素和預(yù)測塊Pin的左面所鄰接的已編碼的像素根據(jù)預(yù)測塊Pin內(nèi)的預(yù)測對象像素與上述鄰接像素之間的距離進(jìn)行內(nèi)插而得到的值作為預(yù)測值,生成預(yù)測圖像。

在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是1(垂直方向預(yù)測)的情況下,根據(jù)下述式(1)計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值來生成預(yù)測圖像。

S'(x,y)=S(x,-1)+(S(-1,y)-S(-1,-1))/t (1)

其中,坐標(biāo)(x,y)是以預(yù)測塊Pin內(nèi)的左上像素為原點(diǎn)的相對坐標(biāo)(參照圖9),S’(x,y)是坐標(biāo)(x,y)中的預(yù)測值,S(x,y)是坐標(biāo)(x,y)中的已編碼的像素的亮度值(解碼了的亮度值)。

這樣,對作為以往(MPEG-4 AVC/H.264)的垂直方向預(yù)測的預(yù)測值的預(yù)測塊Pin的上面所鄰接的已編碼的像素的亮度值S(x,-1),相加與預(yù)測塊Pin的左面所鄰接的已編碼的像素(圖10的粗框所包圍的像素)的表示垂直方向的亮度值的變化量的S(-1,y)-S(-1,-1)成比例的值(將表示垂直方向的亮度值的變化量的S(-1,y)-S(-1,-1)縮放為1/t而得到的值),將該相加后的值決定為預(yù)測圖像的預(yù)測值,從而能夠?qū)崿F(xiàn)追隨向預(yù)測方向的亮度值的變化的垂直方向預(yù)測。

但是,在上述預(yù)測值未收斂于亮度值可取的值的范圍內(nèi)的情況下,也可以對值進(jìn)行舍入使得收斂于該范圍內(nèi)。由此,雖然與進(jìn)行舍入處理相應(yīng)地運(yùn)算量稍微增加,但能夠抑制成為亮度值可取的值的范圍外的預(yù)測值的發(fā)生從而減少預(yù)測誤差。

另外,上述1/t也可以設(shè)為固定值,但還可以設(shè)為根據(jù)坐標(biāo)(x,y)而變化的變量。

例如,如果設(shè)為t=2x+1,則如圖11所示,縮放值從左端的列起依次如1/2、1/4、1/8、1/16那樣變小,所以從預(yù)測塊Pin的左面所鄰接的已編碼的像素起的距離越遠(yuǎn),相加的垂直方向的亮度值的變化量越小。

由此,越是與預(yù)測塊Pin的左面所鄰接的已編碼的像素之間的距離遠(yuǎn)而相關(guān)變低的預(yù)測對象像素,越能夠使預(yù)測塊Pin的左面所鄰接的已編碼的像素的影響變小,所以能夠進(jìn)行和與預(yù)測塊Pin的左面所鄰接的已編碼的像素之間的相關(guān)對應(yīng)的高精度的預(yù)測。

另外,在t=2x+1的情況下,能夠如下所述通過基于比特移位(bit shift)的式來表現(xiàn)式(1)。

S′(x,y)=S(x,-1)+(S(-1,y)-S(-1,-1))>>(x+1) (Ia)

在式(1a)中,“>>a”表示向右算術(shù)移位a比特的運(yùn)算。

通過使用移位運(yùn)算來代替式(1)的除法,從而在計算機(jī)上安裝的情況下能夠?qū)崿F(xiàn)高速的運(yùn)算。

但是,S(-1,y)-S(-1,-1)還可以取負(fù)值,所以有時根據(jù)安裝環(huán)境(編譯器)等,“>>”并非被處理為算術(shù)移位而被處理為邏輯移位,計算結(jié)果與式(1)不同。

因此,作為不依賴于安裝環(huán)境的t=2x+1的情況的式(1)的近似式,可以舉出下述式(1b)。

S′(x,y)=S(x,-1)+S(-1,y)>>(x+1)-S(-1,-1)>>(x+1) (1b)

在式(1b)中,使亮度值S(-1,y)、S(-1,-1)分別先向右移位(x+1)比特之后進(jìn)行減法運(yùn)算,所以如果用正值來定義亮度值,則算術(shù)移位、邏輯移位都得到同一計算結(jié)果。

另外,進(jìn)行式(1)的預(yù)測處理的預(yù)測塊Pin的塊尺寸也可以限定為特定的尺寸。一般,在大的塊尺寸中,在塊內(nèi)易于包含各種信號變化,能夠使用方向性預(yù)測而高精度地預(yù)測的情形少,所以例如在16×16像素以上的塊尺寸的預(yù)測塊Pin中,不應(yīng)用式(1),而作為以往的垂直方向預(yù)測的預(yù)測值(預(yù)測塊Pin的上面所鄰接的已編碼的像素的亮度值S(x,-1)),僅在比16×16像素小的塊中應(yīng)用式(1),從而相比于以往的垂直方向預(yù)測,能夠提高預(yù)測性能并且抑制運(yùn)算量的增加。

另外,在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是2(水平方向預(yù)測)的情況下,根據(jù)下述式(2)計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值來生成預(yù)測圖像。

S′(x,y)=S(-1,y)+(S(x,-1)-S(-1,-1))/u (2)

其中,坐標(biāo)(x,y)是以預(yù)測塊Pin內(nèi)的左上像素為原點(diǎn)的相對坐標(biāo)(參照圖9),S’(x,y)是坐標(biāo)(x,y)中的預(yù)測值,S(x,y)是坐標(biāo)(x,y)中的已編碼的像素的亮度值(解碼了的亮度值)。

這樣,對作為以往(MPEG-4 AVC/H.264)的水平方向預(yù)測的預(yù)測值的預(yù)測塊Pin的左面所鄰接的已編碼的像素的亮度值S(-1,y),相加與預(yù)測塊Pin的上面所鄰接的已編碼的像素(圖12的粗框所包圍的像素)的表示水平方向的亮度值的變化量的S(x,-1)-S(-1,-1)成比例的值(將表示水平方向的亮度值的變化量的S(x,-1)-S(-1,-1)縮放為1/u而得到的值),將該相加后的值決定為預(yù)測圖像的預(yù)測值,從而能夠?qū)崿F(xiàn)追隨向預(yù)測方向的亮度值的變化的水平方向預(yù)測。

但是,在上述預(yù)測值未收斂于亮度值可取的值的范圍內(nèi)的情況下,也可以對值進(jìn)行舍入使得收斂于該范圍內(nèi)。由此,雖然與進(jìn)行舍入處理相應(yīng)地運(yùn)算量稍微增加,但能夠抑制成為亮度值可取的值的范圍外的預(yù)測值的發(fā)生而減少預(yù)測誤差。

另外,上述1/u也可以設(shè)為固定值,但還可以設(shè)為根據(jù)坐標(biāo)(x,y)而變化的變量。

例如,如果設(shè)為u=2y+1,則如圖13所示,縮放值從上端的行起依次如1/2、1/4、1/8、1/16那樣變小,所以從預(yù)測塊Pin的上面所鄰接的已編碼的像素起的距離越遠(yuǎn),相加的水平方向的亮度值的變化量越小。

由此,越是與預(yù)測塊Pin的上面所鄰接的已編碼的像素之間的距離遠(yuǎn)而相關(guān)變低的像素,越能夠使預(yù)測塊Pin的上面所鄰接的已編碼的像素的影響變小,所以能夠進(jìn)行和與預(yù)測塊Pin的上面所鄰接的已編碼的像素之間的相關(guān)對應(yīng)的高精度的預(yù)測。

另外,在u=2y+1的情況下,能夠如下所述通過基于比特移位的式來表現(xiàn)式(2)。

S'(x,y)=S(-1,y)+(S(x,-1)-S(-1,-1))>>(y+1) (2a)

在式(2a)中,“>>a”表示向右算術(shù)移位a比特的運(yùn)算。

通過使用移位運(yùn)算來代替式(2)的除法,從而在計算機(jī)上安裝的情況下能夠?qū)崿F(xiàn)高速的運(yùn)算。

但是,S(x,-1)-S(-1,-1)也可以取負(fù)值,所以有時根據(jù)安裝環(huán)境(編譯器)等,“>>”并非被處理為算術(shù)移位而被處理為邏輯移位,計算結(jié)果與式(2)不同。

因此,作為不依賴于安裝環(huán)境的u=2y+1的情況的式(2)的近似式,可以舉出下述式(2b)。

S'(x,y)=S(-1,y)+S(x,-1)>>(y+1)-S(-1,-1)>>(y+1) (2b)

在式(2b)中,使亮度值S(x,-1)、S(-1,-1)分別先向右移位(y+1)比特之后進(jìn)行減法運(yùn)算,所以如果用正值來定義亮度值,則算術(shù)移位、邏輯移位都得到同一計算結(jié)果。

另外,進(jìn)行式(2)的預(yù)測處理的預(yù)測塊Pin的塊尺寸也可以限定為特定的尺寸。一般,在大的塊尺寸中,在塊內(nèi)易于包含各種信號變化,能夠使用方向性預(yù)測而高精度地預(yù)測的情形少,所以例如在16×16像素以上的塊尺寸的預(yù)測塊Pin中,不應(yīng)用式(2),而設(shè)為以往的水平方向預(yù)測的預(yù)測值(預(yù)測塊Pin的左面所鄰接的已編碼的像素的亮度值S(-1,y)),僅在比16×16像素小的塊中應(yīng)用式(2),從而相比于以往的水平方向預(yù)測,能夠提高預(yù)測性能并且抑制運(yùn)算量的增加。

另外,在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是3(平均值(DC)預(yù)測)的情況下,將預(yù)測塊Pin的上面所鄰接的已編碼的像素和預(yù)測塊Pin的左面所鄰接的已編碼的像素的平均值作為預(yù)測塊Pin內(nèi)的像素的預(yù)測值而生成預(yù)測圖像。

在幀內(nèi)部預(yù)測模式的索引值是0(平面(Planar)預(yù)測)、1(垂直方向預(yù)測)、2(水平方向預(yù)測)、3(平均值(DC)預(yù)測)以外的情況下,根據(jù)索引值表示的預(yù)測方向矢量υp=(dx,dy),生成預(yù)測塊Pin內(nèi)的像素的預(yù)測值。

如圖9所示,如果以預(yù)測塊Pin的左上像素為原點(diǎn)而將預(yù)測塊Pin內(nèi)的相對坐標(biāo)設(shè)定為(x,y),則預(yù)測中使用的參照像素的位置成為下述L和鄰接像素的交點(diǎn)。

其中,k是負(fù)的標(biāo)量值。

在參照像素處于整數(shù)像素位置的情況下,將該整數(shù)像素設(shè)為預(yù)測對象像素的預(yù)測值,在參照像素不處于整數(shù)像素位置的情況下,將根據(jù)與參照像素鄰接的整數(shù)像素而生成的插值像素設(shè)為預(yù)測值。

在圖8的例子中,參照像素不處于整數(shù)像素位置,所以將根據(jù)與參照像素鄰接的2個像素進(jìn)行內(nèi)插而得到的結(jié)果作為預(yù)測值。另外,不僅是鄰接的2個像素,也可以根據(jù)鄰接的2個像素以上的像素生成插值像素而作為預(yù)測值。

通過增加插值處理中使用的像素,從而具有提高插值像素的插值精度的效果,另一方面,由于插值處理所需的運(yùn)算的復(fù)雜度增加,所以在即使運(yùn)算負(fù)荷大也仍要求高的編碼性能的運(yùn)動圖像編碼裝置的情況下,優(yōu)選根據(jù)更大量的像素生成插值像素。

通過同樣的步驟,生成與預(yù)測塊Pin內(nèi)的亮度信號的所有像素對應(yīng)的預(yù)測像素而輸出幀內(nèi)部預(yù)測圖像PINTRAin。

另外,幀內(nèi)部預(yù)測圖像PINTRAin的生成中使用的幀內(nèi)部預(yù)測參數(shù)為了復(fù)用到比特流而被輸出到可變長編碼部13。

另外,與之前說明的MPEG-4 AVC/H.264中的8×8像素的塊的幀內(nèi)部預(yù)測同樣地,關(guān)于在進(jìn)行幀內(nèi)部預(yù)測時使用的像素,也可以并非使用已編碼的鄰接塊內(nèi)的像素自身,而是使用對這些像素實(shí)施濾波處理而得到的結(jié)果。

針對預(yù)測塊Pin的色差信號,也通過與亮度信號同樣的步驟,實(shí)施基于幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)的幀內(nèi)部預(yù)測處理,將幀內(nèi)部預(yù)測圖像的生成中使用的幀內(nèi)部預(yù)測參數(shù)輸出到可變長編碼部13。

但是,在色差信號中可選擇的幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)無需與亮度信號相同,另外,關(guān)于垂直方向預(yù)測以及水平方向預(yù)測,也可以是以往(MPEG-4 AVC/H.264)的預(yù)測方法。

例如,在YUV信號4:2:0格式的情況下,色差信號(U、V信號)是相對亮度信號(Y信號)將分辨率在水平方向、垂直方向上都縮小為1/2而得到的信號,相比于亮度信號,圖像信號的復(fù)雜性低且預(yù)測容易,所以可選擇的幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)的數(shù)量少于亮度信號,對于垂直方向預(yù)測以及水平方向預(yù)測也設(shè)為以往的簡易的預(yù)測方法,從而幾乎不會降低預(yù)測效率而能夠?qū)崿F(xiàn)對幀內(nèi)部預(yù)測參數(shù)(幀內(nèi)部預(yù)測模式)進(jìn)行編碼而所需的符號量的削減、預(yù)測處理的低運(yùn)算化。

另外,關(guān)于作為垂直方向預(yù)測中使用的縮放值的1/t、和作為水平方向預(yù)測中使用的縮放值的1/u,也可以預(yù)先在運(yùn)動圖像編碼裝置以及運(yùn)動圖像解碼裝置之間約定,但也可以由運(yùn)動圖像編碼裝置的幀內(nèi)部預(yù)測部4按照序列單位或者圖片單位,將t、u輸出到可變長編碼部13,由可變長編碼部13對t、u進(jìn)行可變長編碼而包含到比特流中,并由運(yùn)動圖像解碼裝置從比特流對t、u進(jìn)行可變長解碼來使用。

這樣按照序列單位或者圖片單位,自適應(yīng)地控制t、u,從而能夠?qū)崿F(xiàn)進(jìn)一步與輸入圖像的影像信號的特性對應(yīng)的預(yù)測處理。

另外,關(guān)于使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸,也可以預(yù)先在運(yùn)動圖像編碼裝置以及運(yùn)動圖像解碼裝置之間約定,但也可以由運(yùn)動圖像編碼裝置的幀內(nèi)部預(yù)測部4按照序列單位或者圖片單位,將表示使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸的每個塊尺寸的ON/OFF標(biāo)志輸出到可變長編碼部13,由可變長編碼部13對上述ON/OFF標(biāo)志進(jìn)行可變長編碼而包含到比特流中,并由運(yùn)動圖像解碼裝置從比特流對上述ON/OFF標(biāo)志進(jìn)行可變長解碼來使用。

這樣能夠按照序列單位或者圖片單位,自適應(yīng)地控制使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸,從而能夠?qū)崿F(xiàn)進(jìn)一步與輸入圖像的影像信號的特性對應(yīng)的預(yù)測處理。

接下來,具體說明圖3的運(yùn)動圖像解碼裝置的處理內(nèi)容。

可變長解碼部31如果輸入了由圖1的運(yùn)動圖像編碼裝置生成的比特流,則實(shí)施針對該比特流的可變長解碼處理(圖4的步驟ST21),按照由1幀以上的圖片構(gòu)成的序列單位、或者圖片單位,對幀尺寸的信息進(jìn)行解碼。

此時,在垂直方向預(yù)測中使用的縮放值的參數(shù)t、水平方向預(yù)測中使用的縮放值的參數(shù)u、表示使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸的每個塊尺寸的ON/OFF標(biāo)志中,只要任意一個被可變長編碼并被復(fù)用到比特流的情況下,就按照由圖1的運(yùn)動圖像編碼裝置編碼了的單位(序列單位或者圖片單位)進(jìn)行解碼。

可變長解碼部31通過與運(yùn)動圖像編碼裝置同樣的步驟,決定由圖1的運(yùn)動圖像編碼裝置的編碼控制部2決定的最大編碼塊尺寸以及分割層次數(shù)的上限(步驟ST22)。

例如,在根據(jù)影像信號的分辨率決定了最大編碼塊尺寸、分割層次數(shù)上限的情況下,根據(jù)所解碼的幀尺寸信息,通過與運(yùn)動圖像編碼裝置同樣的步驟來決定最大編碼塊尺寸。

最大編碼塊尺寸以及分割層次數(shù)上限在運(yùn)動圖像編碼裝置側(cè)被復(fù)用到比特流中的情況下,使用從比特流解碼得到的值。

以后,在運(yùn)動圖像解碼裝置中,將上述最大編碼塊尺寸稱為最大解碼塊尺寸,將最大編碼塊稱為最大解碼塊。

可變長解碼部31按照所決定的最大解碼塊單位,對圖6所示那樣的最大解碼塊的分割狀態(tài)進(jìn)行解碼。根據(jù)所解碼的分割狀態(tài),層次性地確定解碼塊(與圖1的運(yùn)動圖像編碼裝置的“編碼塊”相當(dāng)?shù)膲K)(步驟ST23)。

接下來,可變長解碼部31解碼對解碼塊分配的編碼模式。根據(jù)所解碼的編碼模式中包含的信息,將解碼塊進(jìn)一步分割為一個或多個預(yù)測處理單位即預(yù)測塊,解碼對預(yù)測塊單位分配的預(yù)測參數(shù)(步驟ST24)。

即,在對解碼塊分配的編碼模式是幀內(nèi)部編碼模式的情況下,可變長解碼部31針對包含在解碼塊中且成為預(yù)測處理單位的一個以上的預(yù)測塊的每一個,對幀內(nèi)部預(yù)測參數(shù)進(jìn)行解碼。

另一方面,在對解碼塊分配的編碼模式是幀間編碼模式的情況下,針對包含在解碼塊中且成為預(yù)測處理單位的一個以上的預(yù)測塊的每一個,對幀間預(yù)測參數(shù)以及運(yùn)動矢量進(jìn)行解碼(步驟ST24)。

進(jìn)而,可變長解碼部31根據(jù)預(yù)測差分編碼參數(shù)中包含的變換塊尺寸的信息,將解碼塊分割為成為變換處理單位的一個或多個變換塊,針對每個變換塊,對壓縮數(shù)據(jù)(變換/量化后的變換系數(shù))進(jìn)行解碼(步驟ST24)。

在切換開關(guān)33中,如果由可變長解碼部31可變長解碼了的編碼模式m(Bn)是幀內(nèi)部編碼模式(m(Bn)∈INTRA的情況),則將由可變長解碼部31可變長解碼了的預(yù)測塊單位的幀內(nèi)部預(yù)測參數(shù)輸出到幀內(nèi)部預(yù)測部34。

另一方面,如果由可變長解碼部31可變長解碼了的編碼模式m(Bn)是幀間編碼模式(m(Bn)∈INTER的情況),則將由可變長解碼部31可變長解碼了的預(yù)測塊單位的幀間預(yù)測參數(shù)以及運(yùn)動矢量輸出到運(yùn)動補(bǔ)償部35。

幀內(nèi)部預(yù)測部34在由可變長解碼部31可變長解碼了的編碼模式m(Bn)是幀內(nèi)部編碼模式(m(Bn)∈INTRA)的情況下(步驟ST25),接收從切換開關(guān)33輸出的預(yù)測塊單位的幀內(nèi)部預(yù)測參數(shù),通過與圖1的幀內(nèi)部預(yù)測部4同樣的步驟,一邊參照幀內(nèi)部預(yù)測用存儲器37中儲存的解碼圖像,一邊實(shí)施使用了上述幀內(nèi)部預(yù)測參數(shù)的針對解碼塊Bn內(nèi)的各預(yù)測塊Pin的幀內(nèi)部預(yù)測處理,生成幀內(nèi)部預(yù)測圖像PINTRAin(步驟ST26)。

即,幀內(nèi)部預(yù)測部34在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是0(垂直方向預(yù)測)的情況下,根據(jù)上述式(1)計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值,生成幀內(nèi)部預(yù)測圖像PINTRAin。

另外,在針對預(yù)測塊Pin的幀內(nèi)部預(yù)測模式的索引值是1(水平方向預(yù)測)的情況下,根據(jù)上述式(2)計算預(yù)測塊Pin內(nèi)的像素的預(yù)測值,生成幀內(nèi)部預(yù)測圖像PINTRAin。

但是,在使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸被限制了的情況下,在使用式(1)的垂直方向預(yù)測、式(2)的水平方向預(yù)測的塊尺寸以外的尺寸的預(yù)測塊Pin中通過以往(MPEG-4 AVC/H.264)的垂直方向預(yù)測及水平方向預(yù)測進(jìn)行幀內(nèi)部預(yù)測處理。

運(yùn)動補(bǔ)償部35在由可變長解碼部31可變長解碼了的編碼模式m(Bn)是幀間編碼模式(m(Bn)∈INTER)的情況下(步驟ST25),接收從切換開關(guān)33輸出的預(yù)測塊單位的運(yùn)動矢量和幀間預(yù)測參數(shù),一邊參照運(yùn)動補(bǔ)償預(yù)測幀存儲器39中儲存的濾波處理后的解碼圖像,一邊實(shí)施使用了上述運(yùn)動矢量和幀間預(yù)測參數(shù)的針對解碼塊內(nèi)的各預(yù)測塊Pin的幀間預(yù)測處理來生成幀間預(yù)測圖像PINTERin(步驟ST27)。

逆量化/逆變換部32如果從可變長解碼部31接收到壓縮數(shù)據(jù)以及預(yù)測差分編碼參數(shù),則通過與圖1的逆量化/逆變換部8同樣的步驟,參照該預(yù)測差分編碼參數(shù),對該壓縮數(shù)據(jù)進(jìn)行逆量化,并且參照該預(yù)測差分編碼參數(shù),實(shí)施針對作為逆量化后的壓縮數(shù)據(jù)的變換系數(shù)的逆正交變換處理,計算與從圖1的逆量化/逆變換部8輸出的局部解碼預(yù)測差分信號相同的解碼預(yù)測差分信號(步驟ST28)。

加法部36將由逆量化/逆變換部32計算出的解碼預(yù)測差分信號、與由幀內(nèi)部預(yù)測部34生成的幀內(nèi)部預(yù)測圖像PINTRAin和由運(yùn)動補(bǔ)償部35生成的幀間預(yù)測圖像PINTERin中的某一方進(jìn)行相加而計算出解碼圖像,并輸出到環(huán)路濾波器部38,并且將該解碼圖像儲存到幀內(nèi)部預(yù)測用存儲器37中(步驟ST29)。

該解碼圖像成為在以后的幀內(nèi)部預(yù)測處理時使用的已解碼的圖像信號。

在環(huán)路濾波器部38中,如果針對所有解碼塊Bn的步驟ST23~ST29的處理完成(步驟ST30),則對從加法部36輸出的解碼圖像實(shí)施規(guī)定的濾波處理,將濾波處理后的解碼圖像儲存到運(yùn)動補(bǔ)償預(yù)測幀存儲器39中(步驟ST31)。

另外,關(guān)于環(huán)路濾波器部38的濾波處理,即可以以所輸入的解碼圖像的最大解碼塊或者各個解碼塊為單位來進(jìn)行,也可以在輸入了1個圖片量的解碼圖像之后集中1個圖片量來進(jìn)行。

另外,作為規(guī)定的濾波處理的例子,可以舉出以使編碼塊邊界的不連續(xù)性(塊噪聲)不會變得顯著的方式對塊邊界進(jìn)行濾波的處理、對解碼圖像的失真進(jìn)行補(bǔ)償?shù)臑V波處理等。

該解碼圖像成為運(yùn)動補(bǔ)償預(yù)測用的參照圖像,并且成為再生圖像。

根據(jù)以上可知,根據(jù)該實(shí)施方式3,運(yùn)動圖像編碼裝置的幀內(nèi)部預(yù)測部4構(gòu)成為在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是水平方向預(yù)測處理的情況下,對預(yù)測塊的左面所鄰接的像素的亮度值相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是垂直方向預(yù)測處理的情況下,對預(yù)測塊的上面所鄰接的像素的亮度值相加與預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,所以起到即使在信號值沿著預(yù)測方向而變化的情況下也能夠?qū)崿F(xiàn)高精度的預(yù)測來提高圖像質(zhì)量的效果。

另外,根據(jù)該實(shí)施方式3,運(yùn)動圖像解碼裝置的幀內(nèi)部預(yù)測部34構(gòu)成為在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是水平方向預(yù)測處理的情況下,對預(yù)測塊的左面所鄰接的像素的亮度值相加與預(yù)測塊的上面所鄰接的像素的水平方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,在生成預(yù)測圖像時的幀內(nèi)預(yù)測處理是垂直方向預(yù)測處理的情況下,對預(yù)測塊的上面所鄰接的像素的亮度值相加與預(yù)測塊的左面所鄰接的像素的垂直方向的亮度值變化量成比例的值,將該相加后的值決定為預(yù)測圖像的預(yù)測值,所以起到即使在信號值沿著預(yù)測方向而變化的情況下也能夠?qū)崿F(xiàn)高精度的預(yù)測來提高圖像質(zhì)量的效果。

根據(jù)該實(shí)施方式3,關(guān)于由幀內(nèi)部預(yù)測部4、34實(shí)施水平方向預(yù)測處理時所使用的縮放值即1/u,構(gòu)成為越是與從預(yù)測塊的上面所鄰接的像素起距離遠(yuǎn)的行有關(guān)的縮放值,設(shè)定為越小的值,所以越是與預(yù)測塊的上面所鄰接的像素之間的距離遠(yuǎn)而相關(guān)變低的像素,越能夠使預(yù)測塊的上面所鄰接的像素的影響變小,其結(jié)果,起到能夠高精度地進(jìn)行預(yù)測的效果。

另外,關(guān)于由幀內(nèi)部預(yù)測部4、34實(shí)施垂直方向預(yù)測處理時所使用的縮放值即1/t,構(gòu)成為越是與從預(yù)測塊的左面所鄰接的像素起距離遠(yuǎn)的列有關(guān)的縮放值,設(shè)定為越小的值,所以越是與預(yù)測塊的左面所鄰接的像素之間的距離遠(yuǎn)而相關(guān)變低的像素,越能夠使預(yù)測塊的左面所鄰接的像素的影響變小,其結(jié)果,起到能夠高精度地進(jìn)行預(yù)測的效果。

另外,在該實(shí)施方式3中,示出了由幀內(nèi)部預(yù)測部4、34實(shí)施水平方向預(yù)測處理時的預(yù)測塊內(nèi)的第N行(從預(yù)測塊的上端起第N行)的縮放值是1/2N+1(=1/2,1/4,1/8,1/16,···)、由幀內(nèi)部預(yù)測部4、34實(shí)施垂直方向預(yù)測處理時的預(yù)測塊內(nèi)的第M列(從預(yù)測塊的左端起第M列)的縮放值是1/2M+1(=1/2,1/4,1/8,1/16,···)的例子,但這只是一個例子,只要由幀內(nèi)部預(yù)測部4、34實(shí)施水平方向預(yù)測處理時越是從預(yù)測塊的上端遠(yuǎn)離的行的縮放值越小、并且由幀內(nèi)部預(yù)測部4、34實(shí)施垂直方向預(yù)測處理時越是從預(yù)測塊的左端遠(yuǎn)離的列的縮放值越小,就可以是任意值。

另外,本申請發(fā)明能夠在本發(fā)明的范圍內(nèi)實(shí)現(xiàn)各實(shí)施方式的自由的組合、或者各實(shí)施方式的任意的構(gòu)成要素的變形、或者各實(shí)施方式中的任意的構(gòu)成要素的省略。

(產(chǎn)業(yè)上的可利用性)

本發(fā)明適用于需要高效地對運(yùn)動圖像進(jìn)行編碼的運(yùn)動圖像編碼裝置,另外適用于需要對高效地編碼了的運(yùn)動圖像進(jìn)行解碼的運(yùn)動圖像解碼裝置。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1