技術(shù)領(lǐng)域
本發(fā)明涉及動態(tài)圖像預(yù)測編碼裝置和方法、以及動態(tài)圖像預(yù)測解碼裝置和方法,特別涉及針對畫面內(nèi)的預(yù)測編碼中使用的參照樣本的濾波處理。
背景技術(shù):
為了高效地進(jìn)行動態(tài)圖像數(shù)據(jù)的傳送和蓄積而使用壓縮編碼技術(shù)。在動態(tài)圖像的情況下,廣泛使用MPEG1~4或H.261~H.264的方式。
在這些編碼方式中,在將作為編碼對象的圖像分割成多個塊后進(jìn)行編碼/解碼處理。在畫面內(nèi)的預(yù)測編碼中,使用位于與對象塊相同的畫面內(nèi)的相鄰的已再現(xiàn)的圖像信號(對已壓縮的圖像數(shù)據(jù)進(jìn)行復(fù)原后的圖像信號)生成預(yù)測信號后,對從對象塊的信號中減去該預(yù)測信號而得到的差分信號進(jìn)行編碼。在畫面間的預(yù)測編碼中,參照位于與對象塊不同的畫面內(nèi)的相鄰的已再現(xiàn)的圖像信號進(jìn)行運(yùn)動的校正,生成預(yù)測信號,對從對象塊的信號中減去該預(yù)測信號而得到的差分信號進(jìn)行編碼。
在通常的畫面間預(yù)測(幀間預(yù)測)編碼中,針對作為編碼對象的塊,利用從已經(jīng)再現(xiàn)的畫面中搜索與該像素信號類似的信號的方法生成預(yù)測信號。然后,對對象塊與搜索到的信號構(gòu)成的區(qū)域之間的空間上的位移量即運(yùn)動矢量、以及對象塊的像素信號和預(yù)測信號的殘差信號進(jìn)行編碼。這樣按照每個塊搜索運(yùn)動矢量的手法被稱為塊匹配。
圖10是用于說明塊匹配處理的示意圖。這里,以編碼對象的畫面701上的對象塊702為例來說明預(yù)測信號的生成順序。參照畫面703已經(jīng)再現(xiàn),區(qū)域704在空間上是與對象塊702同一位置的區(qū)域。在塊匹配中,設(shè)定包圍區(qū)域704的搜索范圍705,從該搜索范圍的像素信號中檢測與對象塊702的像素信號之間的絕對值誤差和最小的區(qū)域706。該區(qū)域706的信號成為預(yù)測信號,從區(qū)域704到區(qū)域706的位移量被檢測為運(yùn)動矢量707。并且,還經(jīng)常使用如下方法:準(zhǔn)備多個參照畫面703,按照每個對象塊選擇要實(shí)施塊匹配的參照畫面,檢測參照畫面選擇信息。在H.264中,為了對應(yīng)圖像的局部特征的變化,準(zhǔn)備用于對運(yùn)動矢量進(jìn)行編碼的塊尺寸不同的多個預(yù)測類型。H.264的預(yù)測類型例如記載在專利文獻(xiàn)2中。
在H.264的畫面內(nèi)預(yù)測(幀內(nèi)預(yù)測)編碼中,采用在規(guī)定方向上對與作為編碼對象的塊相鄰的已再現(xiàn)的像素值進(jìn)行外插而生成預(yù)測信號的方法。圖11是用于說明ITU H.264中使用的畫面內(nèi)預(yù)測方法的示意圖。在圖11(A)中,對象塊802是作為編碼對象的塊,由與該對象塊802的邊界相鄰的像素A~M構(gòu)成的像素群(參照樣本群)801是相鄰區(qū)域,是在過去的處理中已經(jīng)再現(xiàn)的圖像信號。
該情況下,向下方拉伸位于對象塊802正上方的相鄰像素即像素群(參照樣本群)801而生成預(yù)測信號。并且,在圖11(B)中,向右側(cè)拉伸位于對象塊804左側(cè)的已再現(xiàn)像素(I~L)而生成預(yù)測信號。生成預(yù)測信號的具體方法例如記載在專利文獻(xiàn)1中。取得這樣利用圖11(A)~(I)所示的方法生成的9個預(yù)測信號分別與對象塊的像素信號的差分,設(shè)差分值最小的預(yù)測信號為最佳的預(yù)測信號。如上所述,通過對像素進(jìn)行外插,能夠生成預(yù)測信號(幀內(nèi)預(yù)測樣本)。以上的內(nèi)容記載在下述專利文獻(xiàn)1中。
并且,在非專利文獻(xiàn)1所示的畫面內(nèi)預(yù)測中,除了上述9種以外,還準(zhǔn)備參照樣本的拉伸方向不同的25種(共34種)預(yù)測信號生成方法。
并且,在非專利文獻(xiàn)1中,為了抑制參照樣本中產(chǎn)生的失真,在生成預(yù)測信號之前,對參照樣本實(shí)施低通濾波。具體而言,對參照樣本應(yīng)用權(quán)重系數(shù)為1:2:1的121濾波器后進(jìn)行外插預(yù)測。該處理被稱為幀內(nèi)平滑(intra smoothing)。
利用圖7和圖8對非專利文獻(xiàn)1的畫面內(nèi)預(yù)測進(jìn)行說明。圖7示出塊分割的例子。與塊尺寸為N×N樣本的對象塊210相鄰的5個塊220、230、240、250、260已經(jīng)再現(xiàn)。在對象塊210的幀內(nèi)預(yù)測中使用ref[x](x=0~4N)所示的參照樣本。圖8示出畫面內(nèi)預(yù)測的處理流程。首先,在步驟310中,實(shí)施畫面內(nèi)預(yù)測處理的預(yù)測信號生成器從保存再現(xiàn)像素的存儲器中取得參照樣本ref[x](x=0~4N)。此時,有時由于編碼順序等理由而使得相鄰塊還未再現(xiàn),無法取得全部4N+1個參照樣本ref[x]。此時,在填充(padding)處理(復(fù)制附近存在的樣本值)中代用不存在的樣本,準(zhǔn)備4N+1個參照樣本。填充處理的詳細(xì)情況記載在非專利文獻(xiàn)1中。接著,在步驟320中,預(yù)測信號生成器利用121濾波器對參照樣本實(shí)施平滑化處理。最后,在步驟330中,預(yù)測信號生成器利用外插法(畫面內(nèi)預(yù)測的方向)估計(jì)對象塊內(nèi)的信號,生成預(yù)測信號(幀內(nèi)預(yù)測樣本)。
現(xiàn)有技術(shù)文獻(xiàn)
專利文獻(xiàn)
專利文獻(xiàn)1:美國特許公報(bào)第6765964號
專利文獻(xiàn)2:美國特許公報(bào)第7003035號
非專利文獻(xiàn)
非專利文獻(xiàn)1:B.Bross et.Al,“High efficiency video coding(HEVC)text specification draft 8”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG16WP3and ISO/IEC JTC1/SC29/WG11,JCTVC-J1003,10th Meeting:Stockholm,Sweden,11-20July,2012.
技術(shù)實(shí)現(xiàn)要素:
發(fā)明要解決的課題
圖9示出像素值的類似的平坦區(qū)域的信號的例子,但是,當(dāng)利用較粗的量化對原來的像素值(原始樣本值)410進(jìn)行編碼時,塊內(nèi)的再現(xiàn)值(再現(xiàn)樣本值)420成為固定值,在塊邊界430產(chǎn)生階梯狀的失真。認(rèn)為該失真是塊噪聲,通常,對再現(xiàn)圖像實(shí)施用于去除塊噪聲的濾波來去除該失真。但是,由于畫面內(nèi)預(yù)測中使用的參照樣本是去除該塊噪聲的濾波處理之前的信號,所以,殘留在塊邊界的參照樣本中的塊噪聲通過畫面內(nèi)預(yù)測而傳播到對象塊的預(yù)測信號(幀內(nèi)預(yù)測樣本)中。傳播到預(yù)測信號中的塊噪聲在針對再現(xiàn)信號的塊噪聲去除處理中不能去除,所以,直接被傳播到下一個對象塊的參照樣本群中。
在非專利文獻(xiàn)1中,在畫面內(nèi)預(yù)測的外插法(畫面內(nèi)預(yù)測的方向)中準(zhǔn)備34種不同的外插方向,所以,塊噪聲改變方向并進(jìn)行傳播。其結(jié)果,在圖像內(nèi)的平坦區(qū)域的再現(xiàn)信號中產(chǎn)生多個偽輪廓。特別是當(dāng)噪聲傳播到尺寸較大的塊中時,成為偽輪廓在大塊內(nèi)橫穿的狀況,視覺影響較大。
背景技術(shù)中說明的121濾波器具有去除參照樣本內(nèi)的噪音的效果,但是,由于抽頭數(shù)較短,所以取法去除圖9所示的階梯狀的噪聲。
因此,本發(fā)明的目的在于,抑制上述偽輪廓這樣的人工噪聲。
用于解決課題的手段
本發(fā)明的一個側(cè)面的動態(tài)圖像預(yù)測編碼裝置,其特征在于,該動態(tài)圖像預(yù)測編碼裝置具有:塊分割單元,其將輸入圖像分割成多個塊;預(yù)測信號生成單元,其使用與對象塊相鄰的已再現(xiàn)的參照樣本,生成與所述對象塊之間的相關(guān)度高的塊的畫面內(nèi)預(yù)測信號,其中所述對象塊是由所述塊分割單元分割后的塊中的作為編碼對象的塊;殘差信號生成單元,其生成所述對象塊的預(yù)測信號與所述對象塊的像素信號之間的殘差信號;殘差信號壓縮單元,其對由所述殘差信號生成單元生成的殘差信號進(jìn)行壓縮;殘差信號復(fù)原單元,其生成對所述殘差信號的壓縮數(shù)據(jù)進(jìn)行復(fù)原后的再現(xiàn)殘差信號;編碼單元,其對所述殘差信號的壓縮數(shù)據(jù)進(jìn)行編碼;以及塊存儲單元,其通過對所述預(yù)測信號和所述再現(xiàn)殘差信號進(jìn)行相加來復(fù)原所述對象塊的像素信號,保存復(fù)原后的所述對象塊的像素信號以用作所述參照樣本,所述預(yù)測信號生成單元從所述塊存儲單元中保存的所述對象塊的周圍的已再現(xiàn)塊中取得參照樣本,對所述參照樣本中預(yù)定位置處的2個以上的關(guān)鍵參照樣本間進(jìn)行內(nèi)插處理,以生成內(nèi)插參照樣本,決定幀內(nèi)預(yù)測模式,并根據(jù)所決定的幀內(nèi)預(yù)測模式對所述內(nèi)插參照樣本進(jìn)行外插,生成所述畫面內(nèi)預(yù)測信號,所述編碼單元將所述幀內(nèi)預(yù)測模式包含在壓縮數(shù)據(jù)中進(jìn)行編碼,所述預(yù)測信號生成單元根據(jù)基于所述關(guān)鍵參照樣本的值與預(yù)定的閾值的比較,適當(dāng)?shù)厍袚Q實(shí)施所述參照樣本的內(nèi)插處理和參照樣本的平滑處理。
本發(fā)明的一個側(cè)面的動態(tài)圖像預(yù)測解碼裝置,其特征在于,該動態(tài)圖像預(yù)測解碼裝置具有:解碼單元,其從分割成多個塊并被編碼后的壓縮數(shù)據(jù)中,解碼出作為解碼對象的對象塊的表示畫面內(nèi)預(yù)測方法的幀內(nèi)預(yù)測模式和殘差信號的壓縮數(shù)據(jù);預(yù)測信號生成單元,其使用所述幀內(nèi)預(yù)測模式和與所述對象塊相鄰的已再現(xiàn)的參照樣本生成畫面內(nèi)預(yù)測信號;殘差信號復(fù)原單元,其從所述殘差信號的壓縮數(shù)據(jù)中復(fù)原所述對象塊的再現(xiàn)殘差信號;以及塊存儲單元,其通過對所述預(yù)測信號和所述再現(xiàn)殘差信號進(jìn)行相加來復(fù)原所述對象塊的像素信號,保存復(fù)原后的所述對象塊的像素信號以用作所述參照樣本,所述預(yù)測信號生成單元從所述塊存儲單元中保存的所述對象塊的周圍的已再現(xiàn)塊中取得參照樣本,對所述參照樣本中預(yù)定位置處的2個以上的關(guān)鍵參照樣本間進(jìn)行內(nèi)插處理,以生成內(nèi)插參照樣本,并根據(jù)所述幀內(nèi)預(yù)測模式對所述內(nèi)插參照樣本進(jìn)行外插,生成所述畫面內(nèi)預(yù)測信號,所述預(yù)測信號生成單元根據(jù)基于所述關(guān)鍵參照樣本的值與預(yù)定的閾值的比較,適當(dāng)?shù)厍袚Q實(shí)施所述參照樣本的內(nèi)插處理和參照樣本的平滑處理。
本發(fā)明的一個側(cè)面的由動態(tài)圖像預(yù)測編碼裝置執(zhí)行的動態(tài)圖像預(yù)測編碼方法,其特征在于,該動態(tài)圖像預(yù)測編碼方法具有以下步驟:塊分割步驟,將輸入圖像分割成多個塊;預(yù)測信號生成步驟,使用與對象塊相鄰的已再現(xiàn)的參照樣本,生成與所述對象塊之間的相關(guān)度高的塊的畫面內(nèi)預(yù)測信號,其中所述對象塊是通過所述塊分割步驟分割后的塊中的作為編碼對象的塊;殘差信號生成步驟,生成所述對象塊的預(yù)測信號與所述對象塊的像素信號之間的殘差信號;殘差信號壓縮步驟,對通過所述殘差信號生成步驟生成的殘差信號進(jìn)行壓縮;殘差信號復(fù)原步驟,生成對所述殘差信號的壓縮數(shù)據(jù)進(jìn)行復(fù)原后的再現(xiàn)殘差信號;編碼步驟,對所述殘差信號的壓縮數(shù)據(jù)進(jìn)行編碼;以及塊存儲步驟,通過對所述預(yù)測信號和所述再現(xiàn)殘差信號進(jìn)行相加來復(fù)原所述對象塊的像素信號,保存復(fù)原后的所述對象塊的像素信號以用作所述參照樣本,在所述預(yù)測信號生成步驟中,從所保存的所述對象塊的周圍的已再現(xiàn)塊中取得參照樣本,對所述參照樣本中預(yù)定位置處的2個以上的關(guān)鍵參照樣本間進(jìn)行內(nèi)插處理,以生成內(nèi)插參照樣本,決定幀內(nèi)預(yù)測模式,根據(jù)所決定的幀內(nèi)預(yù)測模式對所述內(nèi)插參照樣本進(jìn)行外插,生成所述畫面內(nèi)預(yù)測信號,在所述編碼步驟中,將所述幀內(nèi)預(yù)測模式包含在壓縮數(shù)據(jù)中進(jìn)行編碼,在所述預(yù)測信號生成步驟中,根據(jù)基于所述關(guān)鍵參照樣本的值與預(yù)定的閾值的比較,適當(dāng)?shù)厍袚Q實(shí)施所述參照樣本的內(nèi)插處理和參照樣本的平滑處理。
本發(fā)明的一個側(cè)面的由動態(tài)圖像預(yù)測解碼裝置執(zhí)行的動態(tài)圖像預(yù)測解碼方法,其特征在于,該動態(tài)圖像預(yù)測解碼方法具有以下步驟:解碼步驟,從分割成多個塊并被編碼后的壓縮數(shù)據(jù)中,解碼出作為解碼對象的對象塊的表示畫面內(nèi)預(yù)測方法的幀內(nèi)預(yù)測模式和殘差信號的壓縮數(shù)據(jù);預(yù)測信號生成步驟,使用所述幀內(nèi)預(yù)測模式和與所述對象塊相鄰的已再現(xiàn)的參照樣本生成畫面內(nèi)預(yù)測信號;殘差信號復(fù)原步驟,從所述殘差信號的壓縮數(shù)據(jù)中復(fù)原所述對象塊的再現(xiàn)殘差信號;以及塊存儲步驟,通過對所述預(yù)測信號和所述再現(xiàn)殘差信號進(jìn)行相加來復(fù)原所述對象塊的像素信號,保存復(fù)原后的所述對象塊的像素信號以用作所述參照樣本,在所述預(yù)測信號生成步驟中,從所保存的所述對象塊的周圍的已再現(xiàn)塊中取得參照樣本,對所述參照樣本中預(yù)定位置處的2個以上的關(guān)鍵參照樣本間進(jìn)行內(nèi)插處理,以生成內(nèi)插參照樣本,根據(jù)所述幀內(nèi)預(yù)測模式對所述內(nèi)插參照樣本進(jìn)行外插,生成所述畫面內(nèi)預(yù)測信號,在所述預(yù)測信號生成步驟中,根據(jù)基于所述關(guān)鍵參照樣本的值與預(yù)定的閾值的比較,適當(dāng)?shù)厍袚Q實(shí)施所述參照樣本的內(nèi)插處理和參照樣本的平滑處理。
發(fā)明效果
根據(jù)本發(fā)明的基于雙一次內(nèi)插的針對參照樣本的濾波器處理,使用參照樣本兩端的樣本,平緩地改變參照樣本內(nèi)的信號,所以,能夠抑制偽輪廓這樣的人工噪聲。
附圖說明
圖1是示出本發(fā)明的實(shí)施方式的動態(tài)圖像預(yù)測編碼裝置的框圖。
圖2是示出本發(fā)明的實(shí)施方式的動態(tài)圖像預(yù)測解碼裝置的框圖。
圖3是示出本發(fā)明的實(shí)施方式的畫面內(nèi)預(yù)測方法的流程圖。
圖4是示出本發(fā)明的實(shí)施方式的畫面內(nèi)預(yù)測方法的不同例的流程圖。
圖5是示出用于執(zhí)行記錄介質(zhì)中記錄的程序的計(jì)算機(jī)的硬件結(jié)構(gòu)的圖。
圖6是用于執(zhí)行記錄介質(zhì)中記錄的程序的計(jì)算機(jī)的概觀圖。
圖7是說明畫面內(nèi)預(yù)測中使用的參照樣本的例子的圖。
圖8是示出現(xiàn)有技術(shù)中的畫面內(nèi)預(yù)測方法的流程圖。
圖9是說明平坦區(qū)域中的原來的信號和再現(xiàn)信號的關(guān)系的圖。
圖10是用于說明畫面間預(yù)測中的運(yùn)動估計(jì)處理的示意圖。
圖11是用于說明基于參照樣本的外插的畫面內(nèi)預(yù)測的示意圖。
圖12是說明畫面內(nèi)預(yù)測中使用的參照樣本的不同例的圖。
圖13是說明圖1的預(yù)測信號生成器103的處理的流程圖。
圖14是說明圖2的預(yù)測信號生成器208的處理的流程圖。
圖15是示出本發(fā)明的實(shí)施方式的畫面內(nèi)預(yù)測方法的第2不同例的流程圖。
圖16是示出動態(tài)圖像預(yù)測編碼程序的結(jié)構(gòu)的框圖。
圖17是示出動態(tài)圖像預(yù)測解碼程序的結(jié)構(gòu)的框圖。
具體實(shí)施方式
下面,使用圖1~圖7以及圖13~圖17對本發(fā)明的實(shí)施方式進(jìn)行說明。
圖1是示出本發(fā)明的實(shí)施方式的動態(tài)圖像預(yù)測編碼裝置100的框圖。如圖1所示,動態(tài)圖像預(yù)測編碼裝置100具有輸入端子101、塊分割器102、預(yù)測信號生成器103、幀存儲器104、減法器105、轉(zhuǎn)換器106、量化器107、逆量化器108、逆轉(zhuǎn)換器109、加法器110、熵編碼器111、輸出端子112、塊存儲器113和環(huán)路濾波器114。減法器105、轉(zhuǎn)換器106和量化器107對應(yīng)于權(quán)利要求范圍所記載的“編碼單元”。并且,逆量化器108、逆轉(zhuǎn)換器109和加法器110對應(yīng)于權(quán)利要求范圍所記載的“解碼單元”。幀存儲器104對應(yīng)于“圖像存儲單元”,塊存儲器113對應(yīng)于“塊存儲單元”。
下面,敘述如上所述構(gòu)成的動態(tài)圖像預(yù)測編碼裝置100的動作。由多張圖像構(gòu)成的動態(tài)圖像的信號被輸入到輸入端子101。利用塊分割器102將作為編碼對象的圖像分割成多個區(qū)域。在本發(fā)明的實(shí)施方式中,如圖7例示的那樣,塊尺寸沒有限定。多個塊尺寸和形狀可以混合存在于1個畫面中。塊的編碼順序例如記載在非專利文獻(xiàn)1中。接著,針對作為編碼處理對象的區(qū)域(以下稱為對象塊)生成預(yù)測信號。在本發(fā)明的實(shí)施方式中,使用畫面間預(yù)測和畫面內(nèi)預(yù)測這2種預(yù)測方法。預(yù)測信號生成器103中的預(yù)測信號生成處理使用圖13在后面敘述。
利用減法器105從對象塊的信號(經(jīng)由線L102)中減去預(yù)測信號(經(jīng)由線L103),生成殘差信號。利用轉(zhuǎn)換器106對該殘差信號進(jìn)行離散余弦轉(zhuǎn)換,利用量化器107對各轉(zhuǎn)換系數(shù)進(jìn)行量化。熵編碼器111對量化后的轉(zhuǎn)換系數(shù)進(jìn)行編碼,與生成預(yù)測信號所需要的預(yù)測信息一起從輸出端子112送出。
為了對后續(xù)對象塊進(jìn)行畫面內(nèi)預(yù)測或畫面間預(yù)測,對壓縮后的對象塊的信號進(jìn)行逆處理并使其復(fù)原。即,利用逆量化器108對量化后的轉(zhuǎn)換系數(shù)進(jìn)行逆量化后,利用逆轉(zhuǎn)換器109進(jìn)行逆離散余弦轉(zhuǎn)換,對殘差信號進(jìn)行復(fù)原。利用加法器110對復(fù)原后的殘差信號和從線L103送來的預(yù)測信號進(jìn)行相加,對對象塊的信號進(jìn)行再現(xiàn)。再現(xiàn)后的塊的信號存儲在塊存儲器113中以用于進(jìn)行畫面內(nèi)預(yù)測。關(guān)于由再現(xiàn)后的信號構(gòu)成的再現(xiàn)圖像,利用環(huán)路濾波器114去除再現(xiàn)圖像內(nèi)產(chǎn)生的塊噪聲后,將其存儲在幀存儲器104中。
利用圖13對預(yù)測信號生成器103中的預(yù)測信號處理流程進(jìn)行說明。首先,在步驟S302中,生成畫面間預(yù)測所需要的預(yù)測信息。具體而言,將過去編碼后進(jìn)行復(fù)原的再現(xiàn)圖像作為參照圖像,從該參照圖像中搜索給出相對于對象塊的誤差最小的預(yù)測信號的運(yùn)動矢量和參照畫面。此時,經(jīng)由線L102輸入對象塊,經(jīng)由L104輸入?yún)⒄請D像。作為參照圖像,使用過去編碼并復(fù)原的多張圖像作為參照圖像。詳細(xì)情況與作為現(xiàn)有技術(shù)的H.264或非專利文獻(xiàn)1所示的方法相同。
在步驟S303中,生成畫面內(nèi)預(yù)測所需要的預(yù)測信息。如圖7所示,使用空間上與對象塊相鄰的已再現(xiàn)的像素值,針對多個畫面內(nèi)預(yù)測的方向生成預(yù)測信號。然后,決定給出相對于對象塊的誤差最小的預(yù)測信號的預(yù)測方向(幀內(nèi)預(yù)測模式)。此時,在預(yù)測信號生成器103中,從塊存儲器113中經(jīng)由線L113取得位于相同畫面內(nèi)的已再現(xiàn)的像素信號作為參照樣本,通過對這些信號進(jìn)行外插,生成畫面內(nèi)預(yù)測信號。
接著,在步驟S304中,從畫面間預(yù)測和畫面內(nèi)預(yù)測中選擇應(yīng)用于對象塊的預(yù)測方法。例如,選擇給出相對于對象塊的誤差較小的預(yù)測值的預(yù)測方法?;蛘?,實(shí)際上也可以針對2個預(yù)測方法來進(jìn)行直到編碼處理,根據(jù)所產(chǎn)生的碼量和編碼誤差圖像的絕對值和的關(guān)系來選擇計(jì)算出的評價值較小的一方。選擇出的預(yù)測方法的選擇信息作為生成預(yù)測信號所需要的信息而經(jīng)由線L112送到熵編碼器111進(jìn)行編碼后,從輸出端子112送出(步驟S305)。
在步驟S306中選擇出的預(yù)測方法為畫面間預(yù)測的情況下,根據(jù)運(yùn)動信息(運(yùn)動矢量和參照畫面信息),在步驟S307中生成預(yù)測信號,所生成的畫面間預(yù)測信號經(jīng)由線L103輸出到減法器105。在步驟S308中,運(yùn)動信息作為生成預(yù)測信號所需要的信息而經(jīng)由線L112送到熵編碼器111進(jìn)行編碼后,從輸出端子112送出。
在步驟S306中選擇出的預(yù)測方法為畫面內(nèi)預(yù)測的情況下,根據(jù)幀內(nèi)預(yù)測模式,在步驟S309中生成預(yù)測信號,所生成的畫面內(nèi)預(yù)測信號經(jīng)由線L103輸出到減法器105。在步驟S310中,幀內(nèi)預(yù)測模式作為生成預(yù)測信號所需要的信息而經(jīng)由線L112送到熵編碼器111進(jìn)行編碼后,從輸出端子112送出。
熵編碼器111中使用的編碼方法可以是算術(shù)編碼,也可以是可變長編碼。
圖2是本發(fā)明的實(shí)施方式的動態(tài)圖像預(yù)測解碼裝置200的框圖。如圖2所示,動態(tài)圖像預(yù)測解碼裝置200具有輸入端子201、數(shù)據(jù)解析器202、逆量化器203、逆轉(zhuǎn)換器204、加法器205、預(yù)測信號生成器208、幀存儲器207、輸出端子206、環(huán)路濾波器209和塊存儲器215。逆量化器203和逆轉(zhuǎn)換器204對應(yīng)于權(quán)利要求范圍所記載的“解碼單元”。作為解碼單元,也可以使用上述以外的單元。并且,也可以沒有逆轉(zhuǎn)換器204。幀存儲器207對應(yīng)于“圖像存儲單元”,塊存儲器215對應(yīng)于“塊存儲單元”。
下面,敘述如上所述構(gòu)成的動態(tài)圖像預(yù)測解碼裝置200的動作。從輸入端子201輸入利用上述方法進(jìn)行壓縮編碼后的壓縮數(shù)據(jù)。在該壓縮數(shù)據(jù)中包含有對將圖像分割成多個塊而得到的對象塊進(jìn)行預(yù)測編碼的殘差信號、生成預(yù)測信號所需要的信息。如圖7例示的那樣,塊尺寸沒有限定。多個塊尺寸和形狀可以混合存在于1個畫面中。塊的解碼順序例如記載在非專利文獻(xiàn)1中。在生成預(yù)測信號所需要的信息中包含有預(yù)測方法選擇信息和運(yùn)動信息(畫面間預(yù)測的情況下)或幀內(nèi)預(yù)測模式(畫面內(nèi)預(yù)測的情況下)。
數(shù)據(jù)解析器202從壓縮數(shù)據(jù)中對對象塊的殘差信號、生成預(yù)測信號所需要的信息、量化參數(shù)進(jìn)行解碼。利用逆量化器203,根據(jù)量化參數(shù)(經(jīng)由線L202)對解碼后的對象塊的殘差信號進(jìn)行逆量化。進(jìn)而,利用逆轉(zhuǎn)換器204對逆量化后的殘差信號進(jìn)行逆離散余弦轉(zhuǎn)換,其結(jié)果,對殘差信號進(jìn)行復(fù)原。接著,經(jīng)由線L206將生成預(yù)測信號所需要的信息送到預(yù)測信號生成器208。在預(yù)測信號生成器208中,根據(jù)生成預(yù)測信號所需要的信息生成對象塊的預(yù)測信號。預(yù)測信號生成器208中的預(yù)測信號的生成處理使用圖14在后面敘述。所生成的預(yù)測信號經(jīng)由線L208送到加法器205,與復(fù)原后的殘差信號進(jìn)行相加,對對象塊信號進(jìn)行再現(xiàn),經(jīng)由線L205輸出到環(huán)路濾波器209,同時存儲在塊存儲器215中以用于后續(xù)塊的畫面內(nèi)預(yù)測。環(huán)路濾波器209從經(jīng)由線L205輸入的再現(xiàn)信號中去除塊噪聲,去除了塊噪聲后的再現(xiàn)圖像作為后續(xù)圖像的解碼/再現(xiàn)中使用的再現(xiàn)圖像存儲在幀存儲器207中。
利用圖14對預(yù)測信號生成器208中的預(yù)測信號處理流程進(jìn)行說明。首先,在步驟S402中,利用數(shù)據(jù)解析器202取得解碼后的預(yù)測方法。
在解碼后的預(yù)測方法為畫面間預(yù)測的情況下(步驟S403),利用數(shù)據(jù)解析器202取得解碼后的運(yùn)動信息(運(yùn)動矢量和參照畫面信息)(步驟S404),根據(jù)運(yùn)動信息訪問幀存儲器207,從多個參照圖像中取得參照信號并生成預(yù)測信號(步驟S405)。
在解碼后的預(yù)測方法為畫面內(nèi)預(yù)測的情況下(步驟S403),利用數(shù)據(jù)解析器202取得解碼后的幀內(nèi)預(yù)測模式(步驟S406),訪問塊存儲器215,取得與對象塊相鄰的已再現(xiàn)的像素信號作為參照樣本,根據(jù)幀內(nèi)預(yù)測模式生成預(yù)測信號(步驟S407)。所生成的預(yù)測信號經(jīng)由L208輸出到加法器205。
數(shù)據(jù)解析器202中使用的解碼方法可以是算術(shù)解碼,也可以是可變長解碼。
接著,使用圖3和圖7對本發(fā)明的實(shí)施方式的畫面內(nèi)預(yù)測方法進(jìn)行說明。即,對圖13的步驟S309和圖14的步驟S407的詳細(xì)情況、即使用從圖1的塊存儲器113或圖2的塊存儲器215中取得的參照樣本、通過基于幀內(nèi)預(yù)測模式的外插法來估計(jì)對象塊的幀內(nèi)預(yù)測樣本的方法進(jìn)行說明。
在本發(fā)明中,為了抑制發(fā)明要解決的課題所示的偽輪廓這樣的噪聲的產(chǎn)生,針對作為偽輪廓要因的塊,對畫面內(nèi)預(yù)測所使用的參照樣本群應(yīng)用雙一次內(nèi)插處理。通過使參照樣本群的信號的變化平緩,抑制在參照樣本群的塊邊界產(chǎn)生的階梯狀的噪聲的出現(xiàn)。
利用圖7說明對參照樣本群應(yīng)用的雙一次內(nèi)插處理。在對象塊210的塊尺寸為N×N樣本時,這里,利用屬于其周圍的5個已再現(xiàn)塊220、230、240、250、260的已再現(xiàn)的信號構(gòu)成4N+1個參照樣本群270(ref[x](x=0~4N))。在本實(shí)施方式中,將位于參照樣本群270的端部的下左側(cè)的參照樣本BL=ref[0]和上右側(cè)的參照樣本AR=ref[4N]、以及位于參照樣本群270的中央且位于對象塊的上左處的上左側(cè)的參照樣本AL=ref[2N]這3個參照樣本定義為雙一次內(nèi)插的關(guān)鍵參照樣本。此時,如下所述對4N+1個參照樣本進(jìn)行內(nèi)插處理。
ref’[0]=ref[0] (1)
ref’[i]=BL+(i*(AL-BL)+N)/2N(i=1~2N-1) (2)
ref’[2N]=ref[2N] (3)
ref’[2N+i]=AL+(i*(AR-AL)+N)/2N(i=1~2N-1) (4)
ref’[4N]=ref[4N] (5)
這里,ref’[x](x=0~4N)表示內(nèi)插處理后的參照樣本(interpolated reference samples)的值。另外,式(2)和(4)可以分別如式(2)’和(4)’那樣變形。
ref’[i]=((2N-i)*BL+i*AL+N)/2N(i=1~2N-1) (2)’
ref’[2N+i]=((2N-i)*AL+i*AR+N)/2N(i=1~2N-1) (4)’
這樣,利用關(guān)鍵參照樣本BL和AL,通過雙一次內(nèi)插生成BL~AL之間的參照樣本,利用關(guān)鍵參照樣本AL和AR,通過雙一次內(nèi)插生成AL~AR之間的參照樣本,由此,與對象塊相鄰的內(nèi)插處理后的參照樣本值的電平平緩地變化。其結(jié)果,能夠抑制針對預(yù)測信號的塊噪聲的傳播。
接著,利用圖7對應(yīng)用雙一次內(nèi)插的參照樣本的判定基準(zhǔn)進(jìn)行說明。在本實(shí)施方式中,使用3個關(guān)鍵參照樣本、塊邊界的2個參照樣本以及2個閾值進(jìn)行判定。這里,設(shè)THRESHOLD_ABOVE和THRESHOLD_LEFT分別為用于決定是否在針對對象塊的上端的參照樣本ref[x](x=2N+1~4N-1)和左端的參照樣本ref[x](x=1~2N-1)應(yīng)用雙一次內(nèi)插的判定中使用的閾值。對滿足判定基準(zhǔn)的參照樣本應(yīng)用雙一次內(nèi)插。
在本實(shí)施方式中,使用下述判定基準(zhǔn)。下述2個式子中的Interpolate_Above和Interpolate_Left是邏輯值,在滿足右邊的式子的情況下成為ture(1),應(yīng)用雙一次內(nèi)插,在不滿足右邊的式子的情況下成為false(0),應(yīng)用現(xiàn)有的基于121濾波器的intra smoothing。
Interpolate_Left=abs(BL+AL-2*ref[N])<THRESHOLD_LEFT (6)
Interpolate_Above=abs(AL+AR-2*ref[3N])<THRESHOLD_ABOVE (7)
在BL、AL和ref[3N]的值并列在直線上的情況下,BL+AL-2*ref[N]的值成為0。同樣,在AL、AR和ref[3N]的值并列在直線上的情況下,AL+AR-2*ref[3N]的值也成為0。即,上述2個式子對ref[N]相對于從BL連接到AL的直線的偏差(deviation)的大小、以及ref[3N]相對于連接AL和AR的直線的偏差(deviation)的大小與各自的閾值進(jìn)行比較。如果計(jì)算出的2個偏差小于對應(yīng)的閾值THRESHOLD_ABOVE或THRESHOLD_LEFT,則邏輯值(Interpolate_Above或Interpolate_Left)成為true,對參照樣本應(yīng)用雙一次內(nèi)插。在式(6)和(7)中,abs(x)是計(jì)算x的絕對值。
此時,2個閾值的值(THRESHOLD_ABOVE和THRESHOLD_LEFT)可以是預(yù)先設(shè)定的固定值,也可以以幀單位或匯集多個塊的片(slice)單位進(jìn)行編碼并利用解碼器進(jìn)行復(fù)原。并且,還可以以塊為單位進(jìn)行編碼并利用解碼器進(jìn)行復(fù)原。在圖2中,利用數(shù)據(jù)解析器202對2個閾值進(jìn)行解碼并將其輸出到預(yù)測信號生成器208,用于下述圖3和圖4中詳細(xì)說明的畫面內(nèi)預(yù)測信號的生成。
圖3示出通過外插法(畫面內(nèi)預(yù)測的方向)來估計(jì)幀內(nèi)預(yù)測樣本的處理的流程圖。首先,在步驟510中,預(yù)測信號生成器(103或208、以下編號省略)從塊存儲器(113或215、以下編號省略)中取得圖7的像素群270所示的參照樣本ref[x](x=0~4N)。此時,在由于編碼順序等理由而使得相鄰塊還未再現(xiàn)、無法取得全部4N+1個參照樣本的情況下,通過填充處理(復(fù)制附近存在的樣本值)生成不存在的樣本,準(zhǔn)備4N+1個參照樣本。填充處理的詳細(xì)情況記載在非專利文獻(xiàn)1中。接著,在步驟560中,根據(jù)式(6)和(7)計(jì)算2個邏輯值Interpolate_Above和Interpolate_Left。
接著,在步驟520中,預(yù)測信號生成器判定對象塊是否滿足雙一次內(nèi)插應(yīng)用的判定基準(zhǔn)。具體而言,判定對象塊的尺寸是否大于預(yù)定的M,并且,判斷計(jì)算出的Interpolate_Above和Interpolate_Left是否均為true。將塊尺寸作為判定基準(zhǔn)是因?yàn)?,通常情況下,在較大塊尺寸中容易產(chǎn)生作為課題的偽輪廓。通過將M的值設(shè)定為較大,具有抑制參照樣本的不必要變更的效果。
在滿足這2個判定基準(zhǔn)的情況下(塊尺寸>=M、且Interpolate_Above==true且Interpolate_Left==true),進(jìn)入步驟530,在不滿足這2個判定基準(zhǔn)的情況下,進(jìn)入步驟540。在步驟530中,對參照樣本ref[x](x=0~4N)應(yīng)用式(1)~(5)所示的雙一次內(nèi)插處理,生成內(nèi)插處理后的參照樣本(interpolated reference samples)ref’[x](x=0~4N)。在步驟540中,根據(jù)式(8)和(9),對參照樣本ref[x](x=0~4N)應(yīng)用基于121濾波器的intra smoothing。
ref’[i]=ref[i](i=0and 4N) (8)
ref’[i]=(ref[i-1]+2*ref[i]+ref[i+1]+2)/4(i=1~4N-1) (9)
這里,ref’[x](x=0~4N)表示平滑化后的參照樣本(smoothed reference samples)的值。
最后,在步驟550中,使用已定的幀內(nèi)預(yù)測模式和內(nèi)插后或平滑化后的參照樣本ref’[x](x=0~4N),通過外插法(畫面內(nèi)預(yù)測的方向)來估計(jì)對象塊的幀內(nèi)預(yù)測樣本。
圖4更加詳細(xì)地說明圖3,示出通過外插法(畫面內(nèi)預(yù)測的方向)來估計(jì)分為左參照樣本(ref[x],x=0~2N)和上參照樣本(ref[x],x=2N~4N)而獨(dú)立實(shí)施雙一次內(nèi)插和121濾波器的切換的情況下的幀內(nèi)預(yù)測樣本的處理的流程圖。首先,在步驟610中,預(yù)測信號生成器(103或208、以下編號省略)從塊存儲器(113或215、以下編號省略)中取得圖7的像素群270所示的參照樣本ref[x](x=0~4N)。此時,在由于編碼順序等理由而使得相鄰塊還未再現(xiàn)、無法取得全部4N+1個參照樣本的情況下,通過填充處理(復(fù)制附近存在的樣本值)生成不存在的樣本,準(zhǔn)備4N+1個參照樣本。填充處理的詳細(xì)情況記載在非專利文獻(xiàn)1中。
接著,在步驟680中,根據(jù)式(6)和(7)計(jì)算2個邏輯值Interpolate_Above和Interpolate_Left。
接著,在步驟620中,預(yù)測信號生成器判斷對象塊是否滿足雙一次內(nèi)插應(yīng)用的判定基準(zhǔn)。具體而言,判定對象塊的尺寸是否大于預(yù)定的M,并且,判定計(jì)算出的Interpolate_Above和Interpolate_Left中的至少一方是否為true。在滿足這2個判定基準(zhǔn)的情況下(塊尺寸>=M、且Interpolate_Above==true或Interpolate_Left==true),進(jìn)入步驟625,在不滿足這2個判定基準(zhǔn)的情況下,進(jìn)入步驟660。在步驟660中,根據(jù)式(8)和(9),對參照樣本群應(yīng)用基于121濾波器的intra smoothing。
在步驟625中,判定是否滿足式(6)所示的左參照樣本的雙一次內(nèi)插應(yīng)用的判定基準(zhǔn)。即,在Interpolate_Left為true(1)的情況下,進(jìn)入步驟630,對參照樣本ref[x](x=0~2N)應(yīng)用式(1)和(2)所示的雙一次內(nèi)插處理,生成內(nèi)插處理后的參照樣本(interpolated reference samples)ref’[x](x=0~2N)。在不滿足式(6)的判定基準(zhǔn)的情況下,進(jìn)入步驟635,根據(jù)式(10)和(11),對左參照樣本ref[x](x=0~2N)應(yīng)用基于121濾波器的intra smoothing。
ref’[0]=ref[0] (10)
ref’[i]=(ref[i-1]+2*ref[i]+ref[i+1]+2)/4(i=1~2N-1) (11)
這里,ref’[x](x=0~2N)表示平滑化后的參照樣本(smoothed reference samples)的值。
接著,在步驟640中,判定是否滿足式(7)所示的上參照樣本的雙一次內(nèi)插應(yīng)用的判定基準(zhǔn)。即,在Interpolate_Above為true(1)的情況下,進(jìn)入步驟650,根據(jù)式(3)、(4)、(5),對在上參照樣本ref[i](i=2N+1~4N)應(yīng)用雙一次內(nèi)插處理。在不滿足式(7)的判定基準(zhǔn)的情況下,進(jìn)入步驟655,根據(jù)式(12)、(13)、(14),對上參照樣本ref[x](x=2N+1~4N)應(yīng)用基于121濾波器的intra smoothing。
ref’[2N]=ref[2N] (12)
ref’[i]=(ref[i-1]+2*ref[i]+ref[i+1]+2)/4(i=2N+1~4N-1) (13)
ref’[4N]=ref[4N] (14)
這里,ref’[x](x=2N+1~4N)表示平滑化后的參照樣本(smoothed reference samples)的值。
最后,在步驟670中,使用已定的幀內(nèi)預(yù)測模式和內(nèi)插處理后或平滑化后的參照樣本ref’[x](x=0~4N),通過外插法(畫面內(nèi)預(yù)測的方向)來估計(jì)對象塊的幀內(nèi)預(yù)測樣本。在外插中,利用在從外插的對象塊內(nèi)的樣本的位置朝向內(nèi)插處理后或平滑化后的參照樣本(interpolated or smoothed reference samples)在幀內(nèi)預(yù)測的方向上投影線時、位于接近所投影的線的位置的內(nèi)插處理后或平滑化后的參照樣本(interpolated or smoothed reference samples)。
用于使計(jì)算機(jī)作為上述動態(tài)圖像預(yù)測編碼裝置100發(fā)揮功能的動態(tài)圖像預(yù)測編碼程序能夠存儲在記錄介質(zhì)中來提供。同樣,用于使計(jì)算機(jī)作為上述動態(tài)圖像預(yù)測解碼裝置200發(fā)揮功能的動態(tài)圖像預(yù)測解碼程序能夠存儲在記錄介質(zhì)中來提供。作為記錄介質(zhì),例示了USB存儲器、軟盤、CD-ROM、DVD或ROM等記錄介質(zhì)或半導(dǎo)體存儲器等。
例如如圖16所示,動態(tài)圖像預(yù)測編碼程序P100具有塊分割模塊P101、預(yù)測信號生成模塊P102、殘差信號生成模塊P103、殘差信號壓縮模塊P104、殘差信號復(fù)原模塊P105、編碼模塊P106和塊存儲模塊P107。
并且,例如如圖17所示,動態(tài)圖像預(yù)測解碼程序P200具有解碼模塊P201、預(yù)測信號生成模塊P202、殘差信號復(fù)原模塊P203和塊存儲模塊P204。
這樣構(gòu)成的動態(tài)圖像預(yù)測編碼程序P100或動態(tài)圖像預(yù)測解碼程序P200存儲在后述圖5和圖6所示的記錄介質(zhì)10中,由后述計(jì)算機(jī)執(zhí)行。
圖5是示出用于執(zhí)行記錄介質(zhì)中記錄的程序的計(jì)算機(jī)30的硬件結(jié)構(gòu)的圖,圖6是用于執(zhí)行記錄介質(zhì)中記錄的程序的計(jì)算機(jī)30的概觀圖。這里的計(jì)算機(jī)30廣泛包含具有CPU且進(jìn)行基于軟件的信息處理和控制的DVD播放器、機(jī)頂盒、便攜電話等。
如圖6所示,計(jì)算機(jī)30具有軟盤驅(qū)動裝置、CD-ROM驅(qū)動裝置、DVD驅(qū)動裝置等讀取裝置12、使操作系統(tǒng)常駐的作業(yè)用存儲器(RAM)14、存儲記錄介質(zhì)10中存儲的程序的存儲器16、稱為顯示器的顯示裝置18、作為輸入裝置的鼠標(biāo)20和鍵盤22、用于進(jìn)行數(shù)據(jù)等的收發(fā)的通信裝置24、以及對程序的執(zhí)行進(jìn)行控制的CPU26。當(dāng)記錄介質(zhì)10插入讀取裝置12中時,計(jì)算機(jī)30能夠從讀取裝置12訪問記錄介質(zhì)10中存儲的動態(tài)圖像預(yù)測編碼程序,能夠通過該動態(tài)圖像預(yù)測編碼程序作為上述動態(tài)圖像預(yù)測編碼裝置100進(jìn)行動作。同樣,當(dāng)記錄介質(zhì)10插入讀取裝置12中時,計(jì)算機(jī)30能夠從讀取裝置12訪問記錄介質(zhì)10中存儲的動態(tài)圖像預(yù)測解碼程序,能夠通過該動態(tài)圖像預(yù)測解碼程序作為上述動態(tài)圖像預(yù)測解碼裝置200進(jìn)行動作。
在本發(fā)明中,還能夠進(jìn)行下述變形。
(A)雙一次內(nèi)插應(yīng)用的判定基準(zhǔn)
雙一次內(nèi)插應(yīng)用的判定基準(zhǔn)不限于上述實(shí)施方式中說明的方法。例如,也可以設(shè)內(nèi)插應(yīng)用的判定結(jié)果始終為true,省略步驟520、620、625、640。該情況下,代替基于121濾波器的平滑化處理(smoothing process)而始終應(yīng)用內(nèi)插處理(interpolation process)。
也可以在判定基準(zhǔn)中考慮幀內(nèi)預(yù)測模式。例如,由于在塊噪聲去除處理中減輕了塊邊界產(chǎn)生的偽輪廓,所以,在外插處理的預(yù)測方向?yàn)榇怪被蛩綍r,也可以設(shè)內(nèi)插處理應(yīng)用的判定結(jié)果始終為false。
也可以從判斷基準(zhǔn)中去除塊尺寸。并且,也可以代替對象塊塊尺寸而在判斷基準(zhǔn)中使用對象塊與相鄰塊的塊尺寸的相對關(guān)系。在圖7的例子中,與對象塊210的左側(cè)相鄰的塊260的塊尺寸大于對象塊210。該情況下,在ref[N]的周邊不會產(chǎn)生塊噪聲。這樣,在相鄰塊的塊尺寸大于對象塊的情況下,也可以與式(6)或(7)的結(jié)果無關(guān)而設(shè)內(nèi)插應(yīng)用的判定基準(zhǔn)為false。另一方面,與對象塊210的上側(cè)相鄰的塊230、240、250小于對象塊210。該情況下,由于可能在ref[3N]或ref[2N+N/2]的周邊產(chǎn)生塊噪聲,所以,根據(jù)式(6)或(7)的結(jié)果來判定內(nèi)插應(yīng)用。另外,該對象塊與相鄰塊的塊尺寸的相對關(guān)系也可以與對象塊的塊尺寸一起用作判定基準(zhǔn)。
式(6)和(7)的閾值(THRESHOLD_ABOVE和THRESHOLD_LEFT)可以針對不同塊尺寸、塊形狀(塊的縱向和橫向的尺寸差異)、不同幀內(nèi)預(yù)測模式而單獨(dú)確定并進(jìn)行編碼,利用解碼器進(jìn)行復(fù)原。并且,也可以設(shè)THRESHOLD_ABOVE和THRESHOLD_LEFT的值為相同值,僅對一方進(jìn)行編碼,利用解碼器進(jìn)行復(fù)原。在解碼器中,由圖2的數(shù)據(jù)解析器202復(fù)原后的閾值被輸入到預(yù)測信號生成器208。在預(yù)測信號生成器208中,根據(jù)所輸入的閾值計(jì)算Interpolate_Above和Interpolate_Left的值(圖3的步驟560或圖4的步驟680)。
并且,也可以代替在步驟520、620、625和640中設(shè)置判定基準(zhǔn)而將判定結(jié)果包含在比特流中進(jìn)行編碼,利用解碼器進(jìn)行復(fù)原。該情況下,利用圖1的預(yù)測信號生成器103,針對Interpolate_Above和Interpolate_Left的值(0或1),根據(jù)對象塊的尺寸和式(6)或(7)的結(jié)果求出2個值,作為預(yù)測所需要的預(yù)測信息,按照每個塊或以匯集多個塊而得到的塊群單位進(jìn)行編碼。即,在經(jīng)由線L112送到熵編碼器111進(jìn)行編碼后,從輸出端子112送出。另外,在求解Interpolate_Above和Interpolate_Left的值(0或1)時,也可以使用上述的對象塊與相鄰塊的塊尺寸的相對關(guān)系、對象塊的尺寸以及幀內(nèi)預(yù)測模式。
在圖2的數(shù)據(jù)解析器202中,按照每個塊或以匯集多個塊而得到的塊群單位對Interpolate_Above和Interpolate_Left的值進(jìn)行解碼,將其輸入到預(yù)測信號生成器208。另外,2個值可以單獨(dú)進(jìn)行編碼、解碼,也可以作為2個值的組來進(jìn)行編碼、解碼。
利用圖15對圖2的預(yù)測信號生成器208內(nèi)的畫面內(nèi)預(yù)測方法的處理進(jìn)行說明。該情況下,圖15被置換為圖4。在圖14中,在步驟S406中,與幀內(nèi)預(yù)測模式一起取得解碼后的Interpolate_Above和Interpolate_Left的值。首先,在步驟710中,預(yù)測信號生成器(103或208、以下編號省略)從塊存儲器(113或215、以下編號省略)中取得圖7的像素群270所示的參照樣本ref[x](x=0~4N)。此時,在由于編碼順序等理由而使得相鄰塊還未再現(xiàn)、無法取得全部4N+1個參照樣本的情況下,通過填充處理(復(fù)制附近存在的樣本值)生成不存在的樣本,準(zhǔn)備4N+1個參照樣本。填充處理的詳細(xì)情況記載在非專利文獻(xiàn)1中。
接著,在步驟790中,取得Interpolate_Above和Interpolate_Left的值。在步驟720中,預(yù)測信號生成器判定Interpolate_Above和Interpolate_Left的值中的任意一方是否為1。在任意一個值為1的情況下,進(jìn)入步驟725,在不滿足的情況下,進(jìn)入步驟760。在步驟760中,根據(jù)式(8)和(9),對參照樣本群應(yīng)用基于121濾波器的intra smoothing。
在步驟725中,在Interpolate_Left的值為1的情況下,進(jìn)入步驟730,對參照樣本ref[x](x=0~2N)應(yīng)用式(1)和(2)所示的雙一次內(nèi)插處理,生成內(nèi)插處理后的參照樣本(interpolated reference samples)ref’[x](x=0~2N)。在Interpolate_Left的值為0的情況下,進(jìn)入步驟735,根據(jù)式(10)和(11),對左參照樣本ref[x](x=0~2N)應(yīng)用基于121濾波器的intra smoothing。
接著,在步驟740中,在Interpolate_Above值為1的情況下,進(jìn)入步驟750,根據(jù)式(3)、(4)、(5),對上參照樣本ref[i](i=2N+1~4N)應(yīng)用雙一次內(nèi)插處理。在Interpolate_Above值為0的情況下,進(jìn)入步驟755,根據(jù)式(12)、(13)、(14),對左參照樣本ref[x](x=2N+1~4N)應(yīng)用基于121濾波器的intra smoothing。
最后,在步驟770中,使用解碼后的幀內(nèi)預(yù)測模式和內(nèi)插處理后或平滑化后的參照樣本ref’[x](x=0~4N),通過外插法(畫面內(nèi)預(yù)測的方向)來估計(jì)對象塊的幀內(nèi)預(yù)測樣本。
(B)內(nèi)插處理
在上述中,在內(nèi)插處理中使用雙一次內(nèi)插,但是,只要能夠去除塊邊界的噪聲即可,所以也可以是其他內(nèi)插處理。例如,可以利用關(guān)鍵參照樣本的平均值來置換全部參照樣本??梢愿鶕?jù)塊尺寸或畫面內(nèi)預(yù)測類型來切換內(nèi)插處理方法,也可以將要應(yīng)用的內(nèi)插處理方法包含在比特流中進(jìn)行編碼、解碼。
(C)參照樣本的畫面內(nèi)預(yù)測的處理流程
通過外插法(畫面內(nèi)預(yù)測的方向)來估計(jì)幀內(nèi)預(yù)測樣本的處理流程不限于圖4的順序。例如,步驟625、630、635也可以與步驟640、650、655顛倒順序。并且,式(3)和式(12)也可以不在步驟650、655中實(shí)施而在步驟630、635中實(shí)施。并且,由于式(1)(3)(5)和式(10)(12)(14)的處理結(jié)果相同,所以,也可以在步驟625之前(步驟620與625之間)或步驟650和655之后(步驟650或655與步驟670之間)統(tǒng)一實(shí)施。
并且,也可以設(shè)步驟620的判定基準(zhǔn)僅為塊尺寸。此時,如果將式(12)置換為式(15)和(16),則處理結(jié)果與圖4相同,所以也可以這樣。
ref’[2N]=ref[2N]
if Interpolate_Above==true||Interpolate_Left==true (15)
ref’[2N]=(ref[2N-1]+2*ref[2N]+ref[2N+1]+2)/4others (16)
這里,ref’[2N]表示平滑化后的參照樣本(smoothed reference samples)的值。
(D)塊尺寸
在上述中,設(shè)對象塊為正方塊,但是,在非正方塊中,也能夠同樣應(yīng)用本發(fā)明的針對參照樣本的內(nèi)插處理。圖12示出對象塊290的塊尺寸為N×2N的例子。該情況下,ref[x]的數(shù)量為3N+1個。
(E)關(guān)鍵參照樣本
在上述中,設(shè)關(guān)鍵參照樣本為參照樣本群的端部和中央這3個參照樣本,但是,其數(shù)量和位置沒有限定。例如,也可以根據(jù)參照塊的尺寸和參照塊與相鄰塊的相對關(guān)系來改變數(shù)量和位置,還可以將關(guān)鍵參照樣本的數(shù)量和位置包含在比特流中進(jìn)行編碼、解碼。并且,針對關(guān)鍵參照樣本,也可以設(shè)參照樣本群的端部和中央這3個參照樣本為默認(rèn)值,將使用默認(rèn)值還是使用其他關(guān)鍵參照樣本作為指示信息進(jìn)行編碼、解碼。利用圖2的數(shù)據(jù)解析器202對關(guān)鍵參照樣本進(jìn)行更新。作為要更新的關(guān)鍵參照樣本,在圖7中,可以追加ref[N+N/2]和ref[2N+N/2],也可以代替ref[2N]而使用ref[N+N/2]和ref[2N+N/2]。并且,也可以代替ref[0]和ref[4N]而使用ref[N/2]和ref[3N+N/2],對ref[1]~ref[N/2-1]和ref[3N+N/2]~ref[4N-1]應(yīng)用121濾波器。
(F)判定基準(zhǔn)的式子
步驟520、620、625、640中使用的判定式不限于式(6)和(7)。例如,也可以代替圖7的ref[N]和ref[3N]而使用ref[N+1]和ref[3N+1]。
標(biāo)號說明
100:動態(tài)圖像預(yù)測編碼裝置;101:輸入端子;102:塊分割器;103:預(yù)測信號生成器;104:幀存儲器;105:減法器;106:轉(zhuǎn)換器;107:量化器;108:逆量化器;109:逆轉(zhuǎn)換器;110:加法器;111:熵編碼器;112:輸出端子;113:塊存儲器;114:環(huán)路濾波器;200:動態(tài)圖像預(yù)測解碼裝置;201:輸入端子;202:數(shù)據(jù)解析器;203:逆量化器;204:逆轉(zhuǎn)換器;205:加法器;206:輸出端子;207:幀存儲器;208:預(yù)測信號生成器;209:環(huán)路濾波器;215:塊存儲器。