本申請是基于申請?zhí)枮?01280028619.2、申請日為2012年6月13日、申請人為jvc建伍株式會社、發(fā)明名稱為“圖像編碼裝置、圖像編碼方法及圖像編碼程序、圖像解碼裝置、圖像解碼方法及圖像解碼程序”的發(fā)明提出的分案申請。
本發(fā)明涉及圖像編碼及解碼技術(shù),特別涉及畫面內(nèi)編碼及解碼技術(shù)。
背景技術(shù):
在作為動圖像編碼的國際標準的mpeg-4avc中,作為在一個畫面內(nèi)完成處理的畫面內(nèi)編碼的方式,采樣了被稱作幀內(nèi)預測的方式。幀內(nèi)預測是通過沿所指定的預測方向復制與成為處理對象的塊相鄰的已解碼采樣值來生成處理對象塊的預測圖像的方式。在mpeg-4avc中,定義了圖1的(a)、(b)所示的9種預測方向,采用通過在各塊中傳送表示預測方向的幀內(nèi)預測模式的模式編號,來指定適當?shù)念A測方向的構(gòu)成。
通過擴展預測方向的定義數(shù)能提高預測圖像質(zhì)量。圖2的(a)的標號201表示了17種預測方向的定義例子,圖2的(b)的標號202表示了34種預測方向的定義例子。然而,預測方向的定義數(shù)的增加將導致幀內(nèi)預測模式的傳送信息量的增加。隨著預測方向的定義數(shù)增加,全部產(chǎn)生碼量中的幀內(nèi)預測模式所占的比例會增加,故需要一種高效的傳送方法。
專利文獻1中記載了通過減少要傳送的畫面內(nèi)預測模式的總數(shù)來削減畫面內(nèi)預測模式的碼量的方法。在專利文獻1的方法中,將多個塊的畫面內(nèi)預測模式掃描預定的統(tǒng)合單位量,若統(tǒng)合單位內(nèi)的所有畫面內(nèi)預測模式相同,則按統(tǒng)合單位傳送一個畫面內(nèi)預測模式,由此來減少要傳送的畫面內(nèi)預測模式。
〔在先技術(shù)文獻〕
〔專利文獻〕
〔專利文獻1〕日本特開2009-246975號公報
技術(shù)實現(xiàn)要素:
〔發(fā)明所要解決的課題〕
一般在幀內(nèi)預測中,是以假定如下情況的幀內(nèi)預測模式的發(fā)生概率模型為前提對幀內(nèi)預測模式進行編碼的,即,假定在編碼對象塊中也選擇與相鄰于圖像的編碼對象塊的塊的幀內(nèi)預測模式相同的幀內(nèi)預測模式的可能性較高。作為目前所采用的方法的一個例子,有簡易地設(shè)定上述發(fā)生概率模型的方法,但并未成為充分反映了現(xiàn)實的幀內(nèi)預測模式的發(fā)生概率的方法,難以高效地對幀內(nèi)預測模式進行編碼。在各塊中自適應地設(shè)定最佳發(fā)生概率模型的方法能夠進行幀內(nèi)預測模式的高效的編碼,但會導致幀內(nèi)預測處理的復雜化。
專利文獻1的方法并非能夠設(shè)定適當?shù)母怕誓P偷姆桨?,故上述課題依然沒有解決。
本發(fā)明是鑒于這樣的狀況而研發(fā)的,其目的在于提供一種能抑制幀內(nèi)預測處理的復雜化,并進一步提高編碼效率的圖像編碼及解碼技術(shù)。
〔用于解決課題的手段〕
為解決上述課題,本發(fā)明一個方案的圖像編碼裝置是一種利用按塊單位從多個畫面內(nèi)預測模式中選擇的畫面內(nèi)預測模式對圖像信號進行編碼,并對確定該所選擇的畫面內(nèi)預測模式的信息進行編碼的圖像編碼裝置,其特征在于,包括:畫面內(nèi)預測模式選擇部(509),選擇編碼對象塊的畫面內(nèi)預測模式;畫面內(nèi)預測模式存儲部(601),存儲已編碼塊的畫面內(nèi)預測模式;優(yōu)先預測模式列表生成部(602),從上述畫面內(nèi)預測模式存儲部取得用于上述編碼對象塊的畫面內(nèi)預測處理的多個參照塊的畫面內(nèi)預測模式,并基于該取得的畫面內(nèi)預測模式,生成成為上述編碼對象塊的畫面內(nèi)預測模式的候選的優(yōu)先預測模式的列表;優(yōu)先預測模式判定標志計算部(603),算出表示上述編碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息;優(yōu)先預測模式索引導出部(605),在上述編碼對象塊的畫面內(nèi)預測模式為優(yōu)先預測模式時,按照上述列表導出確定該優(yōu)先預測模式的信息;非優(yōu)先預測模式索引導出部(607),在上述編碼對象塊的畫面內(nèi)預測模式為非優(yōu)先預測模式時,基于上述列表導出確定該非優(yōu)先預測模式的信息;以及編碼部(604、606、608),在上述編碼對象塊的畫面內(nèi)預測模式為優(yōu)先預測模式時,將確定該優(yōu)先預測模式的信息與表示上述編碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息一起編碼,在上述編碼對象塊的畫面內(nèi)預測模式為非優(yōu)先預測模式時,將確定該非優(yōu)先預測模式的信息與表示上述編碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息一起編碼。上述優(yōu)先預測模式列表生成部(602)生成與多個上述參照塊的不同的畫面內(nèi)預測模式的數(shù)量無關(guān)、任一編碼對象塊都具有預定數(shù)量的要素的上述列表。
本發(fā)明的另一方案是一種圖像編碼方法。該方法是利用按塊單位從多個畫面內(nèi)預測模式中選擇的畫面內(nèi)預測模式對圖像信號進行編碼,并對確定該所選擇的畫面內(nèi)預測模式的信息進行編碼的圖像編碼方法,其特征在于,包括:畫面內(nèi)預測模式選擇步驟,選擇編碼對象塊的畫面內(nèi)預測模式;優(yōu)先預測模式列表生成步驟,參照存儲已編碼塊的畫面內(nèi)預測模式的存儲器,取得用于上述編碼對象塊的畫面內(nèi)預測處理的多個參照塊的畫面內(nèi)預測模式,并基于該取得的畫面內(nèi)預測模式,生成成為上述編碼對象塊的畫面內(nèi)預測模式的候選的優(yōu)先預測模式的列表;優(yōu)先預測模式判定標志計算步驟,算出表示上述編碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息;優(yōu)先預測模式索引導出步驟,在上述編碼對象塊的畫面內(nèi)預測模式為優(yōu)先預測模式時,按照上述列表導出確定該優(yōu)先預測模式的信息;非優(yōu)先預測模式索引導出步驟,在上述編碼對象塊的畫面內(nèi)預測模式為非優(yōu)先預測模式時,基于上述列表導出確定該非優(yōu)先預測模式的信息;以及編碼步驟,在上述編碼對象塊的畫面內(nèi)預測模式為優(yōu)先預測模式時,將確定該優(yōu)先預測模式的信息與表示上述編碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息一起編碼,在上述編碼對象塊的畫面內(nèi)預測模式為非優(yōu)先預測模式時,將確定該非優(yōu)先預測模式的信息與表示上述編碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息一起編碼。上述優(yōu)先預測模式列表生成步驟生成與多個上述參照塊的不同的畫面內(nèi)預測模式的數(shù)量無關(guān)、任一編碼對象塊都具有預定數(shù)量的要素的上述列表。
本發(fā)明一個方案的圖像解碼裝置是從編碼流中按塊單位解碼確定畫面內(nèi)預測模式的信息,并使用所解碼出的確定畫面內(nèi)預測模式的信息來解碼圖像信號的圖像解碼裝置,其特征在于,包括:畫面內(nèi)預測模式存儲部,存儲已解碼塊的畫面內(nèi)預測模式;優(yōu)先預測模式列表生成部,從上述畫面內(nèi)預測模式存儲部取得用于解碼對象塊的畫面內(nèi)預測處理的多個參照塊的畫面內(nèi)預測模式,并基于該取得的畫面內(nèi)預測模式生成成為上述解碼對象塊的畫面內(nèi)預測模式的候選的優(yōu)先預測模式的列表;解碼部,在上述解碼對象塊的畫面內(nèi)預測模式為優(yōu)先預測模式時,將該確定優(yōu)先預測模式的信息與表示上述解碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息一起解碼,在上述解碼對象塊的畫面內(nèi)預測模式為非優(yōu)先預測模式時,將該確定非優(yōu)先預測模式的信息與表示上述解碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息一起解碼;優(yōu)先預測模式導出部,基于上述表示畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息,在將上述解碼對象塊的畫面內(nèi)預測模式判定為優(yōu)先預測模式時,按照上述列表,從所解碼出的上述確定優(yōu)先預測模式的信息,導出優(yōu)先預測模式;以及非優(yōu)先預測模式導出部,基于上述表示畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息,在將上述解碼對象塊的畫面內(nèi)預測模式判定為非優(yōu)先預測模式時,基于上述列表,從所解碼出的上述確定非優(yōu)先預測模式的信息,導出非優(yōu)先預測模式。上述優(yōu)先預測模式列表生成部生成與多個上述參照塊的不同的畫面內(nèi)預測模式的數(shù)量無關(guān)、任一解碼對象塊都具有預定數(shù)量的要素的上述列表。
本發(fā)明的另一方案是圖像解碼方法。該方法是從編碼流中按塊單位解碼確定畫面內(nèi)預測模式的信息,并使用所解碼出的確定畫面內(nèi)預測模式的信息來解碼圖像信號的圖像解碼方法,其特征在于,包括:優(yōu)先預測模式列表生成步驟,參照存儲已解碼塊的畫面內(nèi)預測模式的存儲器,取得用于解碼對象塊的畫面內(nèi)預測處理的多個參照塊的畫面內(nèi)預測模式,并基于該取得的畫面內(nèi)預測模式生成成為上述解碼對象塊的畫面內(nèi)預測模式的候選的優(yōu)先預測模式的列表;解碼步驟,在上述解碼對象塊的畫面內(nèi)預測模式為優(yōu)先預測模式時,將該確定優(yōu)先預測模式的信息與表示上述解碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息一起解碼,在上述解碼對象塊的畫面內(nèi)預測模式為非優(yōu)先預測模式時,將該確定非優(yōu)先預測模式的信息與表示上述解碼對象塊的畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息一起解碼;優(yōu)先預測模式導出步驟,基于上述表示畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息,在將上述解碼對象塊的畫面內(nèi)預測模式判定為優(yōu)先預測模式時,按照上述列表,從所解碼出的上述確定優(yōu)先預測模式的信息,導出優(yōu)先預測模式;以及非優(yōu)先預測模式導出步驟,基于上述表示畫面內(nèi)預測模式是否為優(yōu)先預測模式的信息,在將上述解碼對象塊的畫面內(nèi)預測模式判定為非優(yōu)先預測模式時,基于上述列表,從所解碼出的上述確定非優(yōu)先預測模式的信息,導出非優(yōu)先預測模式。上述優(yōu)先預測模式列表生成步驟生成與多個上述參照塊的不同的畫面內(nèi)預測模式的數(shù)量無關(guān)、任一解碼對象塊都具有預定數(shù)量的要素的上述列表。
此外,將以上構(gòu)成要素的任意組合、本發(fā)明的表現(xiàn)形式在方法、裝置、系統(tǒng)、記錄介質(zhì)、計算機程序等之間變換后的方案,作為本發(fā)明的實施方式也是有效的。
〔發(fā)明效果〕
通過本發(fā)明,能抑制幀內(nèi)預測處理的復雜化,并提高編碼效率。
附圖說明
圖1是說明9模式(pattem)的幀內(nèi)預測模式的預測方向的圖。
圖2是說明17模式、34模式及18模式的幀內(nèi)預測模式的預測方向的圖。
圖3是說明用于編碼幀內(nèi)預測模式的編碼樹的圖。
圖4是說明用于按照圖3的編碼樹傳送幀內(nèi)預測模式的編碼句法的圖。
圖5是表示用于執(zhí)行實施方式的幀內(nèi)預測模式的編碼方法的圖像編碼裝置的構(gòu)成的功能塊圖。
圖6是表示圖5的幀內(nèi)預測模式編碼部的第1實施例的詳細構(gòu)成的功能塊圖。
圖7是說明圖6的幀內(nèi)預測模式編碼部所進行的幀內(nèi)預測模式編碼步驟的流程圖。
圖8是表示用于執(zhí)行實施方式的幀內(nèi)預測模式的解碼方法的圖像解碼裝置的構(gòu)成的功能塊圖。
圖9是表示圖8的幀內(nèi)預測模式解碼部的第1實施例的詳細構(gòu)成的功能塊圖。
圖10是說明圖9的幀內(nèi)預測模式解碼部所進行的幀內(nèi)預測模式解碼步驟的流程圖。
圖11是說明第1實施例中的算出優(yōu)先預測模式列表的步驟的流程圖。
圖12是說明第1實施例中的算出優(yōu)先預測模式判定標志、優(yōu)先預測模式索引的步驟的流程圖。
圖13是說明第1實施例中的算出非優(yōu)先預測模式索引的步驟的流程圖。
圖14是說明第1實施例中的對非優(yōu)先預測模式索引進行編碼的步驟的流程圖。
圖15是說明第1實施例中的解碼非優(yōu)先預測模式索引的步驟的流程圖。
圖16是說明第1實施例中的算出對象預測模式的步驟的流程圖。
圖17是說明第2實施例的幀內(nèi)預測模式編碼部的動作的流程圖。
圖18是說明圖像的塊結(jié)構(gòu)和參照塊的圖。
圖19是說明第2實施例中的算出優(yōu)先預測模式列表的步驟的流程圖。
圖20是說明第2實施例中的編碼非優(yōu)先預測模式索引的處理的流程圖。
圖21是說明第2實施例的幀內(nèi)預測模式解碼部的動作的流程圖。
圖22是說明第2實施例中的解碼非優(yōu)先預測模式索引的步驟的流程圖。
圖23是說明與第1實施例的編碼裝置/解碼裝置對應的幀內(nèi)預測模式的編碼句法的圖。
圖24是說明與第2實施例的編碼裝置/解碼裝置對應的幀內(nèi)預測模式的編碼句法的圖。
圖25是說明第3實施例中的算出優(yōu)先預測模式列表的步驟的流程圖。
圖26是表示第3實施例中的優(yōu)先預測模式列表的計算中所使用的參照表的例子的圖。
具體實施方式
首先,說明本發(fā)明實施方式的前提技術(shù)。
在以下的說明中,所謂“處理對象塊”,對于圖像編碼裝置的編碼處理,是指編碼對象塊,對于圖像解碼裝置的解碼處理,是指解碼對象塊。所謂“已處理塊”,對于圖像編碼裝置的編碼處理,是指已編碼的被解碼后的塊,對于圖像解碼裝置的解碼處理,是指已解碼的塊。以下,在沒有特別說明的情況下,按該意思來使用。
[編碼樹]
圖3是說明用于對圖1的9模式的幀內(nèi)預測模式進行編碼的編碼樹的圖。mpeg-4avc中的幀內(nèi)預測模式的傳送方法遵循圖3的(a)的標號301所示的編碼樹。圖中、內(nèi)部節(jié)點(圓形)分配碼,葉(四角形)分配幀內(nèi)預測的模式編號。葉中的標號302是優(yōu)先預測模式。關(guān)于優(yōu)先預測模式,將在后面說明。例如,對優(yōu)先預測模式分配了“1”,對模式7分配了碼“0111”。
圖4是說明用于按照圖3的編碼樹傳送幀內(nèi)預測模式的編碼句法的圖。圖4的(a)、(b)所示的prev_intra_pred_flag是用于確定是否為優(yōu)先預測模式的句法要素,rem_intra_pred_mode是表示模式編號的句法要素。在解碼時,首先從編碼序列中讀出1比特的prev_intra_pred_flag,在prev_intra_pred_flag為1時,將幀內(nèi)預測模式設(shè)定為優(yōu)先預測模式,并移向下一句法。在非為1時,進一步讀出3比特的prev_intra_pred_flag,將幀內(nèi)預測模式設(shè)定為rem_intra_pred_mode所示的預測模式。
為對圖2的(a)所示的17模式的幀內(nèi)預測模式進行編碼,可以按照圖3的(b)的標號303所示的編碼樹,采用同樣的傳送方法。
[優(yōu)先預測模式]
為決定優(yōu)先預測模式,參照與處理對象塊相鄰的已處理相鄰塊。將已處理相鄰塊定為處理對象塊的左側(cè)相鄰、且位于最上側(cè)的塊(稱作“參照塊a”)、和處理對象塊的上側(cè)相鄰、且位于最左側(cè)的塊(稱作“參照塊b”)。
使用圖18說明已處理相鄰參照塊的例子。相對于圖中的處理對象塊1801、空間上位于上側(cè)或/和左側(cè)的塊(標號1802~1811)全部已處理,其它的塊(標號1812~1815)為未處理。處理對象塊1801的左側(cè)相鄰的塊是塊1807和塊1809這兩個,但將其中位于上側(cè)的塊1807定為參照塊a。此外,處理對象塊1801的上側(cè)相鄰的塊僅有塊1803,將該塊1803定為參照塊b。
將參照塊a、參照塊b的幀內(nèi)預測模式編號分別記為modeidxa、modeidxb時,用下式表示處理對象塊的優(yōu)先預測模式的索引mpmidx。
mpmidx=min(modeidxa,modeidxb)
即,優(yōu)先預測模式與參照塊的幀內(nèi)預測模式的某一者一致。
[優(yōu)先預測模式與編碼樹的關(guān)系]
圖3的編碼樹是對優(yōu)先預測模式分配1比特的碼,對其它模式都同樣地分配1+3=4比特的碼,并遵循以下概率模型。
p(mpm)≥0.5,mpm表示優(yōu)先模式。
p(m)=0.0625=(1-p(mpm))/8,m≠mpm
采用這樣的傳送方法的優(yōu)點在于,通過使處理對象預測模式與優(yōu)先預測模式相等或?qū)︻A測模式分配較短的碼語言,能平均地削減幀內(nèi)預測模式的碼量。
然而,實際的優(yōu)先預測模式的發(fā)生概率為平均p(mpm)=0.2程度,圖3的編碼樹未必遵循現(xiàn)實的幀內(nèi)預測模式的發(fā)生分布,上述方法不能說是用于提高編碼效率的最佳方法。
若僅著眼于提高編碼效率,例如根據(jù)已處理塊的預測模式分布自適應地切換編碼樹的方法是有效的,但這樣的方法會需要各塊中的條件判斷、處理分支,導致電路規(guī)模的增大、處理的復雜化。
在本實施方式中,在抑制電路規(guī)模的增大及處理的復雜化的基礎(chǔ)上提高編碼效率。
[編碼裝置]
參照附圖說明實施本發(fā)明的優(yōu)選的圖像編碼裝置。圖5是表示實施方式的圖像編碼裝置的構(gòu)成的功能塊圖。實施方式的圖像編碼裝置包括減法部501、正交變換.量化部502、逆量化.逆變換部503、加法部504、解碼圖像存儲器505、幀內(nèi)預測部506、紋理信息編碼部507、幀內(nèi)預測模式編碼部508、幀內(nèi)預測模式選擇部509。本發(fā)明的實施方式是針對畫面內(nèi)預測的,故對于與畫面間預測相關(guān)聯(lián)的構(gòu)成要素未進行圖示,并省略說明。
幀內(nèi)預測模式選擇部509針對圖像的每個塊選擇最佳的幀內(nèi)預測模式,并將所選擇的幀內(nèi)預測模式提供給幀內(nèi)預測部506和幀內(nèi)預測模式編碼部508。
幀內(nèi)預測模式編碼部508對所輸入的幀內(nèi)預測模式進行可變長度編碼,輸出幀內(nèi)預測模式比特流。對于幀內(nèi)預測模式編碼部508的詳細構(gòu)成和動作,將在后面說明。
幀內(nèi)預測部506使用所輸入的幀內(nèi)預測模式和存儲在解碼圖像存儲器505中的相鄰塊的已解碼圖像來生成幀內(nèi)預測圖像,將生成的幀內(nèi)預測圖像提供給減法部501。
減法部501通過從編碼對象的原圖像減去幀內(nèi)預測圖像來生成差分圖像,將生成的差分信號提供給正交變換.量化部502。
正交變換.量化部502對差分圖像進行正交變換.量化后生成紋理信息,將生成的紋理信息提供給逆量化.逆變換部503和紋理信息編碼部507。
紋理信息編碼部507對紋理信息進行熵編碼,輸出紋理信息比特流。
逆量化.逆變換部503對從正交變換.量化部502收到的紋理信息進行逆量化.逆正交變換,生成解碼差分信號,將生成的解碼差分信號提供給加法部504。
加法部504將幀內(nèi)預測圖像和解碼差分信號相加,生成解碼圖像,將生成的解碼圖像保存在解碼圖像存儲器505中。
[解碼裝置]
參照附圖說明實施本發(fā)明的優(yōu)選的圖像解碼裝置。圖8是表示實施方式的動圖像解碼裝置的構(gòu)成的功能塊圖。實施方式的圖像解碼裝置包括紋理信息解碼部801、逆量化.逆變換部802、幀內(nèi)預測模式解碼部803、加法部804、解碼圖像存儲器805、幀內(nèi)預測部806。本發(fā)明的實施方式是針對畫面內(nèi)預測的,故與畫面間預測相關(guān)聯(lián)的構(gòu)成要素未圖示,省略說明。
圖8的圖像解碼裝置的解碼處理是與圖5的圖像編碼裝置內(nèi)部所設(shè)的解碼處理相對應的,故圖8的逆量化.逆變換部802、加法部804、解碼圖像存儲器805、及幀內(nèi)預測部806的各構(gòu)成分別具有與圖5的圖像編碼裝置的逆量化.逆變換部503、加法部504、解碼圖像存儲器505、及幀內(nèi)預測部506的各構(gòu)成相對應的功能。
幀內(nèi)預測模式解碼部803對所輸入的幀內(nèi)預測模式比特流進行熵解碼,生成幀內(nèi)預測模式,并將所生成的幀內(nèi)預測模式提供給幀內(nèi)預測部806。幀內(nèi)預測模式解碼部803的詳細構(gòu)成和動作將在后面敘述。
幀內(nèi)預測部806使用所輸入的幀內(nèi)預測模式和存儲在解碼圖像存儲器805中的相鄰塊的已解碼圖像,生成幀內(nèi)預測圖像,并將生成的幀內(nèi)預測圖像提供給加法部804。
紋理信息解碼部801對紋理信息進行熵解碼,生成紋理信息。將生成的紋理信息提供給逆量化.逆變換部802。
逆量化.逆變換部802對從紋理信息解碼部801收到的紋理信息進行逆量化.逆正交變換,生成解碼差分信號,將生成的解碼差分信號提供給加法部804。
加法部804將幀內(nèi)預測圖像和解碼差分信號相加,生成解碼圖像,并將生成的解碼圖像保存在解碼圖像存儲器805中,進行輸出。
本發(fā)明實施方式的幀內(nèi)預測模式編碼及解碼處理是在圖5的動圖像編碼裝置的幀內(nèi)預測模式編碼部508及圖8的動圖像解碼裝置的幀內(nèi)預測模式解碼部803中被實施的。以下說明實施方式的幀內(nèi)預測模式編碼及解碼處理的詳細情況。
[編碼塊]
在實施方式中,如圖18所示,按矩形塊階層地分割畫面,并對各塊進行預定處理順序的逐次處理。將分割的各塊稱為編碼塊。圖18的塊1817在實施方式中是分割的最大單位,將其稱作最大編碼塊。圖18的塊1816在實施方式中是分割的最小單位,將其稱作最小編碼塊。以下以最小編碼塊為4×4像素、最大編碼塊為16×16像素進行說明。
[預測塊]
將編碼塊中進行幀內(nèi)預測的單位稱作預測塊。預測塊具有最小編碼塊以上、最大編碼塊以下的任意大小。在圖18中,塊1802、1803及1804為16×16塊,塊1805、1810、1811及1801為8×8塊,塊1806、1807、1808、1809為4×4塊。塊1812、1813、1814、1815是未處理塊,編碼塊尺寸未確定。在編碼步驟中,決定最佳的預測塊尺寸,并傳送預測塊尺寸。在解碼步驟中從比特流取得預測塊尺寸。以下以預測塊為處理單位進行說明。
[參照塊和參照幀內(nèi)預測模式]
參照塊是作為處理對象塊的左側(cè)相鄰且位于最上側(cè)的塊的塊a、和作為處理對象塊的上側(cè)相鄰且位于最左側(cè)的塊的塊b。將塊a的預測模式記作refmodea、將塊b的預測模式記作refmodeb。將各參照塊的幀內(nèi)預測模式稱作“參照幀內(nèi)預測模式”。將不存在參照塊時的參照幀內(nèi)預測模式設(shè)定為直流預測模式(也稱作“平均值模式”)。
(第1實施例)
[預測塊尺寸和幀內(nèi)預測模式]
根據(jù)預測塊的尺寸來切換幀內(nèi)預測模式的構(gòu)成。對于4×4塊,定義圖2的(a)的標號201所示的17模式的幀內(nèi)預測模式,對于8×8塊和16×16塊,定義圖2的(b)的標號202所示的34模式的幀內(nèi)預測模式。
[編碼步驟]
說明本發(fā)明實施方式的幀內(nèi)預測模式的編碼方法的第1實施例。圖6是圖5的幀內(nèi)預測模式編碼部508的第1實施例的詳細構(gòu)成的功能塊圖。第1實施例的幀內(nèi)預測模式編碼部508包括幀內(nèi)預測模式存儲器601、優(yōu)先預測模式列表生成部602、優(yōu)先預測模式判定標志計算部603、優(yōu)先預測模式判定標志編碼部604、優(yōu)先預測模式索引計算部605、優(yōu)先預測模式索引編碼部606、非優(yōu)先預測模式索引計算部607、非優(yōu)先預測模式索引編碼部608、以及優(yōu)先預測模式判定部609。以下、參照圖7的流程圖說明幀內(nèi)預測模式的編碼步驟。
優(yōu)先預測模式列表生成部602從幀內(nèi)預測模式存儲器601取得相鄰塊的幀內(nèi)預測模式refmodea和refmodeb,生成優(yōu)先預測模式列表mpmlist,并決定優(yōu)先預測模式列表尺寸mpmlistsize(步驟s701)。對于優(yōu)先預測模式列表生成步驟的詳細情況,將在后面說明。此外,將對象幀內(nèi)預測模式存儲在幀內(nèi)預測模式存儲器601中。在本實施例中,優(yōu)先預測模式列表尺寸mpmlistsize被設(shè)定為1或2的一者,在參照模式refmodea與refmodeb相等時,mpmlistsize成為1,在參照模式refmodea與refmodeb不同時,mpmlistsize成為2。
優(yōu)先預測模式判定標志計算部603取得對象預測模式和優(yōu)先預測模式列表mpmlist,算出優(yōu)先預測模式判定標志mpmflag。此外,優(yōu)先預測模式索引計算部605算出優(yōu)先預測模式索引mpmindex(步驟s702),優(yōu)先預測模式判定標志編碼部604對優(yōu)先預測模式判定標志mpmflag進行編碼(步驟s703)。優(yōu)先預測模式判定標志、優(yōu)先預測模式索引計算步驟的詳細情況將在后面敘述。
優(yōu)先預測模式判定部609判定優(yōu)先預測模式判定標志mpmflag(步驟s704)。
在優(yōu)先預測模式判定標志mpmflag為true時,優(yōu)先預測模式索引編碼部606判定優(yōu)先預測模式索引mpmindex(步驟s705),在mpmlistsize=1時,優(yōu)先預測模式索引mpmindex總為0,故不進行mpmindex的編碼,結(jié)束處理。若mpmlistsize=2,則對優(yōu)先預測模式索引mpmindex進行編碼(步驟s706),結(jié)束處理。
若優(yōu)先預測模式判定標志mpmflag為false,則非優(yōu)先預測模式索引計算部607算出非優(yōu)先預測模式索引remmodeindex(步驟s707),非優(yōu)先預測模式索引編碼部608對算出的非優(yōu)先預測模式remmodeindex進行編碼(步驟s708)。非優(yōu)先預測模式索引計算步驟及非優(yōu)先預測模式編碼步驟的詳細情況將在后面說明。
[優(yōu)先預測模式列表生成步驟]
參照圖11的流程圖說明圖7的步驟s701的優(yōu)先預測模式列表生成步驟的詳細情況。
優(yōu)先預測模式列表生成部602從幀內(nèi)預測模式存儲器601取得相鄰塊的幀內(nèi)預測模式refmodea和refmodeb,并比較refmodea和refmodeb(步驟s1101)。
若refmodea與refmodeb相等,則設(shè)定mpmlist[0]=refmodea(步驟s1102),進而設(shè)定mpmlistsize=1(步驟s1103),進入圖7的步驟s702。
若refmodea與refmodeb不同,則設(shè)定mpmlist[0]=min(refmodea,refmodeb),mpmlist[1]=max(refmodea,refmodeb)(步驟s1104),進而設(shè)定mpmlistsize=2(步驟s1105),進入圖7的步驟s702。
[優(yōu)先預測模式判定標志、優(yōu)先預測模式索引計算步驟]
參照圖12的流程圖說明圖7的步驟s702的優(yōu)先預測模式判定標志和優(yōu)先預測模式索引計算步驟的詳細情況。
在本步驟中,通過升序掃描mpmlist來推進處理。優(yōu)先預測模式判定標志計算部603及優(yōu)先預測模式索引計算部605分別以false、0來初始化優(yōu)先預測模式判定標志mpmflag和優(yōu)先預測模式索引mpmindex。以0來初始化用于掃描mpmlist的變量i(步驟s1201)。
若變量i不足mpmlistsize(步驟s1202)、即尚未掃描完mpmlist的所有要素,則比較mpmlist[i]與currmodeindex(步驟s1203)。若mpmlist[i]與currmodeindex相等,則表示對象預測模式等于優(yōu)先預測模式列表的第i個要素,分別將mpmflag設(shè)定為true、將mpmindex設(shè)定為i(步驟s1204),進入圖7的步驟s703。若mpmlist[i]與currmodeindex不同,則使i增1(步驟s1205),繼續(xù)進行掃描。
在步驟s1202中,當變量i在mpmlistsize以上時,即已掃描完mpmlist的所有要素時,結(jié)束優(yōu)先預測模式判定標志、優(yōu)先預測模式索引計算步驟,進入圖7的步驟s703。此時表示對象預測模式未包含在優(yōu)先預測模式列表中,不進行mpmflag和mpmindex的再設(shè)定。即,mpmflag=false、mpmindex=0。
[非優(yōu)先預測模式索引計算步驟]
參照圖13的流程圖說明圖7的步驟s707的非優(yōu)先預測模式索引計算步驟的詳細情況。
在本步驟中,通過按索引的降序掃描mpmlist來推進處理。非優(yōu)先預測模式索引計算部607以對象預測模式currmodeindex來初始化非優(yōu)先預測模式索引remmodeindex,并以mpmlistsize-1來初始化用于掃描mpmlist的變量i(步驟s1301)。
若變量i在0以上(步驟s1302)、即尚未掃描完mpmlist的所有要素,則比較remmodeindex和mpmlist[i](步驟s1303)。若remmodeindex比mpmlist[i]大,則使remmodeindex的值減1(步驟s1304)。使變量i的值減1(步驟s1305),繼續(xù)掃描。
在步驟s1302中,當變量i不足0時、即已掃描完mpmlist的所有要素時,結(jié)束非優(yōu)先預測模式索引計算步驟,進入圖7的步驟s708。
[非優(yōu)先預測模式索引編碼步驟]
參照圖14的流程圖說明圖7的步驟s708的非優(yōu)先預測模式索引編碼步驟的詳細情況。
非優(yōu)先預測模式索引編碼部608判定對象塊尺寸(步驟s1401)。
在對象塊為4×4塊時,定義了17模式的幀內(nèi)預測。在上述的非優(yōu)先預測模式索引計算步驟中,若優(yōu)先預測模式的數(shù)量為1,則remmodeindex被變換成[0,15]的任一值,若優(yōu)先預測模式的數(shù)量為2,則remmodeindex被變換成[0,14]的任一值。不論在哪種情況下,用4比特都足以以固定長度來表現(xiàn)remmodeindex了,故對remmodeindex進行4比特的固定長度編碼(步驟s1402),結(jié)束處理。
在對象塊為8×8塊或16×16塊時,定義了34模式的幀內(nèi)預測。在上述的非優(yōu)先預測模式索引計算步驟中,若優(yōu)先預測模式的數(shù)量為1,則remmodeindex被變換成[0,32]的任一值,若優(yōu)先預測模式的數(shù)量為2,則remmodeindex被變換成[0,31]的任一值。在優(yōu)先預測模式的數(shù)量為1的情況下,為取得33模式的非優(yōu)先預測模式索引,5比特的固定長度并不足夠,故需要進行可變長度的編碼。在remmodeindex不足31時(步驟s1403),對remmodeindex進行5比特的固定長度編碼(步驟s1404),結(jié)束處理。當remmodeindex在31以上時(步驟s1405),若remmodeindex為31,則對6比特序列“111110”進行編碼(步驟s1406),若remmodeindex為32,則對6比特序列“111111”進行編碼(步驟s1407),結(jié)束處理。
在本實施例中,對4×4塊定義了圖2的(a)的標號201的17模式。其理由是為簡便地對4×4塊的非優(yōu)先預測模式索引進行編碼/解碼。標號201以按將180度16分割后的11.25(=180/16)度單位表現(xiàn)預測方向為基礎(chǔ),但僅模式9與模式8之間產(chǎn)生25度的方向差,導致該方向的預測精度下降。除標號201外、考慮圖2的(c)的標號203的定義18模式的情況。18模式的定義的優(yōu)點在于,能將5度單位的預測方向全部表現(xiàn)出來,不會出現(xiàn)標號201那樣的預測精度的下降。在該情況下,若優(yōu)先預測模式的數(shù)量為1,則remmodeindex被變換成[0,16]的任一值,若優(yōu)先預測模式的數(shù)量為2,則remmodeindex被變換成[0,15]的任一值。在優(yōu)先預測模式的數(shù)量為1的情況下,能取到16模式的非優(yōu)先預測模式索引,同本實施例的8×8塊、16×16塊的例子一樣、需要進行可變長度編碼,處理會變復雜。在對8×8塊、16×16采取圖2的(d)的標號204的定義33模式的構(gòu)成的情況下,同4x4塊的處理一樣,能進行5比特的固定長度編碼,但由于幀內(nèi)預測模式的候選數(shù)減少,會發(fā)生編碼效率的劣化。像這樣,幀內(nèi)預測模式的候選數(shù)和處理的復雜度呈相互制衡(trade-off)的關(guān)系,4×4塊與8×8、16×16塊相比,較小的角度差導致的預測精度質(zhì)量的差較少,且4×4塊的運算量的影響比8×8、16×16塊要大,故對4×4塊定義標號201的17模式,對8×8、16×16塊定義標號202的34模式。
[解碼步驟]
說明本發(fā)明實施方式的幀內(nèi)預測模式的解碼方法的第1實施例。圖9是圖8的幀內(nèi)預測模式解碼部803的第1實施例的詳細構(gòu)成的功能塊圖。第1實施例的幀內(nèi)預測模式解碼部803包括幀內(nèi)預測模式存儲器901、優(yōu)先預測模式列表生成部902、優(yōu)先預測模式判定標志解碼部903、優(yōu)先預測模式索引解碼部904、優(yōu)先預測模式計算部905、非優(yōu)先預測模式索引解碼部906、以及非優(yōu)先預測模式計算部907。
圖9的幀內(nèi)預測模式解碼部803中的幀內(nèi)預測模式解碼處理是與圖6的幀內(nèi)預測模式編碼部508中的幀內(nèi)預測模式編碼處理相對應的,故圖9的幀內(nèi)預測模式存儲器901、優(yōu)先預測模式列表生成部902的各構(gòu)成分別具有與圖6的幀內(nèi)預測模式存儲器601、優(yōu)先預測模式列表生成部602的各構(gòu)成相同的功能。
以下也參照圖10的流程圖來說明幀內(nèi)預測模式的解碼步驟。
優(yōu)先預測模式列表生成部902從幀內(nèi)預測模式存儲器901取得相鄰塊的幀內(nèi)預測模式refmodea和refmodeb,生成優(yōu)先預測模式列表mpmlist,并決定優(yōu)先預測模式列表的尺寸mpmlistsize(步驟s1001)。優(yōu)先預測模式列表生成步驟同圖6的優(yōu)先預測模式列表生成部602中的優(yōu)先預測模式列表生成步驟一樣,遵從圖11的流程圖所示的步驟,故省略詳細說明。
優(yōu)先預測模式判定標志解碼部903從編碼序列讀入1比特,解碼優(yōu)先預測模式判定標志mpmflag(步驟s1002),判定優(yōu)先預測模式判定標志mpmflag的值(步驟s1003)。
若優(yōu)先預測模式判定標志mpmflag為true,則優(yōu)先預測模式索引解碼部904判定優(yōu)先預測模式的數(shù)量mpmlistsize(步驟s1004)。若mpmlistsize為1,則將優(yōu)先預測模式索引mpmindex設(shè)定為0(步驟s1005)。若mpmlistsize為2,則從編碼序列再讀入1比特,解碼優(yōu)先預測模式索引mpmindex(步驟s1006)。進而,優(yōu)先預測模式計算部905將優(yōu)先預測模式列表mpmlist的第mpmindex個要素mpmlist[mpmindex]作為對象預測模式currmodeindex(步驟s1007),結(jié)束處理。
若優(yōu)先預測模式判定標志mpmflag為false,則非優(yōu)先預測模式索引解碼部906解碼非優(yōu)先預測模式索引remmodeindex(步驟s1008),非優(yōu)先預測模式計算部907基于算出的remmodeindex算出對象預測模式currmodeindex(步驟s1009)。將對象預測模式currmodeindex保存在幀內(nèi)預測模式存儲器901中,結(jié)束處理。對于非優(yōu)先預測模式索引的解碼步驟和對象預測模式計算步驟,將在后面說明。
[非優(yōu)先預測模式索引解碼步驟]
參照圖15的流程圖說明圖10的步驟s1008的非優(yōu)先預測模式索引解碼步驟的詳細情況。
非優(yōu)先預測模式索引解碼部906判定對象塊尺寸(步驟s1501)。
在對象塊為4×4塊時,進行4比特的固定長度解碼,作為remmodeindex(步驟s1502)。
在對象塊為8×8塊或16×16塊時,首先進行5比特的固定長度解碼,作為remmodeindex(步驟s1503)。判定remmodeindex的值(步驟s1504)。
在remmodeindex并非“11111”時,結(jié)束非優(yōu)先預測模式索引解碼步驟,并進入圖10的步驟s1009。
在remmodeindex為“11111”時,再進行1比特nextbit的解碼(步驟s1505),判定nextbit的值(步驟s1506)。若nextbit為“0”,則將remmodeindex設(shè)定為31后,結(jié)束非優(yōu)先預測模式索引解碼步驟,進入圖10的步驟s1009。若nextbit為“0”,則將remmodeindex設(shè)定為32后,結(jié)束非優(yōu)先預測模式索引解碼步驟,進入圖10的步驟s1009。
[預測模式計算步驟]
參照圖16的流程圖說明圖10的步驟s1009的預測模式計算步驟的詳細情況。
在本步驟中,通過按索引的升序掃描mpmlist來推進處理。非優(yōu)先預測模式計算部907以非優(yōu)先預測模式索引remmodeindex來初始化對象預測模式currmodeindex,并以0來初始化用于掃描mpmlist的變量i(步驟s1601)。
若變量i不足mpmlistsize(步驟s1602)、即尚未掃描mpmlist的所有要素,則比較currmodeindex和mpmlist[i](步驟s1603)。若currmodeindex在mpmlist[i]以上,則使currmodeindex的值加1(步驟s1604)。使變量i的值加1(步驟s1605),繼續(xù)掃描。
在步驟s1602中,當i變成mpmlistsize以上時,即已掃描完mpmlist的所有要素時,結(jié)束處理。
圖23是由本實施例的編碼裝置輸出、并在解碼裝置中被解釋的編碼流的幀內(nèi)預測模式的編碼句法。
(第2實施例)
在本實施例中,在生成優(yōu)先預測模式列表時,若refmodea與refmodeb相同,則將與參照預測模式不同的預測模式追加到優(yōu)先預測模式列表中,從而總是設(shè)定2個優(yōu)先預測模式,在這一點上與實施例1不同。通過進行這樣的動作,來減少之后的編碼/解碼處理的處理分支,實現(xiàn)處理的簡略化。
[預測塊尺寸和幀內(nèi)預測模式]
在本實施例中,根據(jù)預測塊的尺寸來切換幀內(nèi)預測模式構(gòu)成。
在本實施例中,對于4×4塊,定義圖2的標號203所示的18模式,對于8×8塊和16×16塊,定義在圖2的標號201的模式上增加了標號202的模式的34模式。18模式及34模式的定義分別能表現(xiàn)11.25度單位、7.125單位的全部預測方向,在這一點上與存在一部分不能表現(xiàn)的方向的17模式和33模式的定義相比,具有預測精度不會下降這樣的優(yōu)點。與實施例1的不同點在于4×4塊的幀內(nèi)預測模式構(gòu)成。在本實施例中,總是設(shè)定2個優(yōu)先預測模式,故即使在定義了18模式的幀內(nèi)預測模式的情況下,也能總是將非優(yōu)先預測模式固定為16模式,故在對非優(yōu)先預測模式進行固定長度編碼時能進行不存在多余或不足的碼分配。
[編碼步驟]
說明本發(fā)明實施方式的幀內(nèi)預測模式的編碼方法的第2實施例。第2實施例中的幀內(nèi)預測模式編碼部508的構(gòu)成同圖6所示的第1實施例一樣,但優(yōu)先預測模式列表生成部602、優(yōu)先預測模式索引編碼部606、及非優(yōu)先預測模式索引編碼部608的詳細動作與第1實施例是不同的。以下、參照圖17的流程圖說明幀內(nèi)預測模式的編碼步驟。
優(yōu)先預測模式列表生成部602從幀內(nèi)預測模式存儲器601取得相鄰塊的幀內(nèi)預測模式,生成優(yōu)先預測模式列表mpmlist,決定優(yōu)先預測模式列表尺寸mpmlistsize(步驟s1701)。對于優(yōu)先預測模式列表生成步驟的詳細情況,將在后面說明。此外,將對象幀內(nèi)預測模式存儲在幀內(nèi)預測模式存儲器601中。在本實施例中,生成優(yōu)先預測模式列表mpmlist使得優(yōu)先預測模式列表尺寸mpmlistsize總是為2,在這一點上與第1實施例不同。
優(yōu)先預測模式判定標志計算部603及優(yōu)先預測模式索引計算部605取得對象預測模式和優(yōu)先預測模式列表mpmlist,算出優(yōu)先預測模式判定標志mpmflag和優(yōu)先預測模式索引mpmindex(步驟s1702),對優(yōu)先預測模式判定標志mpmflag進行編碼(步驟s1703)。優(yōu)先預測模式判定標志、優(yōu)先預測模式索引計算步驟的詳細情況與圖7的s702一樣,故省略說明。
優(yōu)先預測模式判定部609判定優(yōu)先預測模式判定標志mpmflag(步驟s1704)。
若優(yōu)先預測模式判定標志mpmflag為true,則優(yōu)先預測模式索引編碼部606對優(yōu)先預測模式索引mpmindex進行編碼(步驟s1705),結(jié)束處理。在本實施例中,總是將優(yōu)先預測模式列表尺寸mpmlistsize設(shè)定為2,故省略實施例1的圖7中的優(yōu)先預測模式列表尺寸mpmlistsize判定步驟(步驟s705)。
若優(yōu)先預測模式判定標志mpmflag為false,則非優(yōu)先預測模式索引計算部607算出非優(yōu)先預測模式索引remmodeindex(步驟s1706),進而非優(yōu)先預測模式索引編碼部608進行所算出的非優(yōu)先預測模式remmodeindex的編碼(步驟s1707)。關(guān)于非優(yōu)先預測模式索引計算步驟,與圖7的步驟s707是一樣的,故省略說明。對于非優(yōu)先預測模式編碼步驟的詳細情況,將在后面說明。
[優(yōu)先預測模式列表生成步驟]
參照圖19的流程圖說明圖17的步驟s701的參照幀內(nèi)預測模式?jīng)Q定步驟的詳細情況。
優(yōu)先預測模式列表生成部602從幀內(nèi)預測模式存儲器601取得相鄰塊的幀內(nèi)預測模式refmodea和refmodeb,并比較refmodea和refmodeb(步驟s1901)。
若refmodea與refmodeb相等,則設(shè)定mpmlist[0]=refmodea(步驟s1902)。判定refmodea是否為平均值模式(步驟s1903),若refmodea是平均值模式,則設(shè)定mpmlist[1]=0(步驟s1904)。若refmodea非平均值模式,則設(shè)定mpmlist[1]=2(步驟s1905)。如圖2的標號201、202所參照的那樣,0表示垂直方向預測模式、2表示平均值模式。mpmlist[1]必須是與mpmlist[0]不同值的模式。在本實施例中,當refmodea非平均值模式時,將mpmlist[1]設(shè)定成平均值模式,但當refmodea為平均值模式時,若對mpmlist[1]設(shè)定平均值模式,則mpmlist[1]與mpmlist[0]將變得相同。對mpmlist[1]設(shè)定的預測模式的候選必須至少在2個以上。在本實施例中,對mpmlist[1]設(shè)定的值是預先決定的,不因refmodea、refmodeb及編碼過程而變動,但例如也可以如在步驟s1904中設(shè)定mpmlist[1]=1(水平方向預測模式)那樣,使預先決定的值為不同的值。此處所設(shè)定的值優(yōu)選是一般發(fā)生頻率較高的預測模式。進而設(shè)定mpmlistsize=2(步驟s1407),進入圖17的步驟s1702。
若refmodea與refmodeb不同,則設(shè)定mpmlist[0]=min(refmodea,refmodeb),mpmlist[1]=max(refmodea,refmodeb)(步驟s1906),進而設(shè)定mpmlistsize=2(步驟s1907),進入圖17的步驟s1702。
[非優(yōu)先預測模式索引編碼步驟]
參照圖20的流程圖說明圖17的步驟s1707的非優(yōu)先預測模式索引編碼步驟的詳細情況。
非優(yōu)先預測模式索引編碼部608判定對象塊尺寸(步驟s2001)。
在對象塊為4×4塊時,定義了18模式的幀內(nèi)預測。在上述的非優(yōu)先預測模式索引計算步驟中,優(yōu)先預測模式的數(shù)量為2,remmodeindex被變換成[0,15]的任一值。用4比特足夠以固定長度來表現(xiàn)remmodeindex,故對remmodeindex進行4比特的固定長度編碼(步驟s2002),結(jié)束處理。
在對象塊為8×8塊或16×16塊時,定義了34模式的幀內(nèi)預測。在上述的非優(yōu)先預測模式索引計算步驟中,優(yōu)先預測模式的數(shù)量為2,故remmodeindex被變換成[0,31]的任一值。用5比特足夠以固定長度表現(xiàn)remmodeindex,故對remmodeindex進行5比特的固定長度編碼(步驟s2003),結(jié)束處理。
在第1實施例中,根據(jù)優(yōu)先預測模式的數(shù)量,非優(yōu)先預測模式的數(shù)量會變動,故將導致適用非優(yōu)先預測模式的可變長度編碼所引起的處理復雜化、或幀內(nèi)預測模式的候選數(shù)減少所引起的編碼效率下降。在第2實施例中,保證了優(yōu)先預測模式的數(shù)量為2,故不會出現(xiàn)幀內(nèi)預測模式的候選數(shù)的減少,能總是對非優(yōu)先預測模式索引進行固定長度編碼,能在確保簡便的編碼步驟的情況下,實現(xiàn)進一步的編碼效率提高。
[解碼步驟]
說明本發(fā)明實施方式的幀內(nèi)預測模式的解碼方法的第2實施例。第2實施例中的幀內(nèi)預測模式解碼部803的構(gòu)成與圖9所示的第1實施例是一樣的,但優(yōu)先預測模式列表生成部902、優(yōu)先預測模式索引解碼部904、及非優(yōu)先預測模式索引解碼部906的詳細動作與第1實施例是不同的。以下參照圖21的流程圖說明幀內(nèi)預測模式的解碼步驟。
優(yōu)先預測模式列表生成部902從幀內(nèi)預測模式存儲器901取得相鄰塊的幀內(nèi)預測模式,并生成優(yōu)先預測模式列表mpmlist,決定優(yōu)先預測模式列表的尺寸mpmlistsize(步驟s2101)。在第2實施例中,以優(yōu)先預測模式列表尺寸mpmlistsize總是為2的方式生成優(yōu)先預測模式列表mpmlist,在這一點上與第1實施例不同。優(yōu)先預測模式列表生成步驟同圖6的優(yōu)先預測模式列表生成部602中的優(yōu)先預測模式列表生成步驟一樣,遵從圖19的流程圖所示的步驟,故省略詳細說明。
優(yōu)先預測模式判定標志解碼部903從編碼序列讀入1比特,解碼優(yōu)先預測模式判定標志mpmflag(步驟s2102),并判定優(yōu)先預測模式判定標志mpmflag(步驟s2103)。
若優(yōu)先預測模式判定標志mpmflag為true,則優(yōu)先預測模式索引解碼部904從編碼序列再讀入1比特,解碼優(yōu)先預測模式索引mpmindex(步驟s2104)。進而,優(yōu)先預測模式計算部905使優(yōu)先預測模式列表mpmlist的第mpmindex個要素mpmlist[mpmindex]為對象預測模式currmodeindex(步驟s2105),結(jié)束處理。在第2實施例中,將優(yōu)先預測模式列表尺寸mpmlistsize總是設(shè)定為2,故省略第1實施例的圖10中的優(yōu)先預測模式列表尺寸mpmlistsize判定步驟(步驟s1004)。
若優(yōu)先預測模式判定標志mpmflag為false,則非優(yōu)先預測模式索引解碼部906解碼非優(yōu)先預測模式索引remmodeindex(步驟s2106),進而,非優(yōu)先預測模式計算部907基于算出的remmodeindex算出對象預測模式currmodeindex(步驟s2107)。將對象預測模式currmodeindex保存在幀內(nèi)預測模式存儲器901中,結(jié)束處理。關(guān)于非優(yōu)先預測模式索引的解碼步驟,將在后面說明。關(guān)于對象預測模式計算步驟,與圖10的步驟s1009是一樣的,故省略說明。
[非優(yōu)先預測模式索引解碼步驟]
參照圖22的流程圖說明圖21的步驟s2106的非優(yōu)先預測模式索引解碼步驟的詳細情況。
非優(yōu)先預測模式計算部907判定對象塊尺寸(步驟s2201)。
在對象塊為4×4塊時,進行4比特的固定長度解碼,作為remmodeindex(步驟s2202),結(jié)束非優(yōu)先預測模式索引解碼步驟,進入圖21的步驟s2107。
在對象塊為8×8塊或16×16塊時,進行5比特的固定長度解碼,作為remmodeindex(步驟s2203),結(jié)束非優(yōu)先預測模式索引解碼步驟,進入圖21的步驟s2107。
圖24是由本實施例的編碼裝置輸出、并在解碼裝置中被解釋的編碼流的幀內(nèi)預測模式的編碼句法。
(第3實施例)
在第3實施例中,僅優(yōu)先預測模式列表生成步驟與第2實施例不同,故僅說明優(yōu)先預測模式列表生成步驟,省略其它說明。
[優(yōu)先預測模式列表生成步驟]
參照圖25的流程圖說明圖17的步驟s701的參照幀內(nèi)預測模式?jīng)Q定步驟的詳細情況。
優(yōu)先預測模式列表生成部602從幀內(nèi)預測模式存儲器601取得相鄰塊的幀內(nèi)預測模式refmodea和refmodeb,并比較refmodea和refmodeb(步驟s2501)。
若refmodea與refmodeb相等,則設(shè)定mpmlist[0]=refmodea(步驟s2502)。判定refmodea是否為平均值模式(步驟s2503),若refmodea為平均值模式,則設(shè)定mpmlist[1]=0(步驟s2504)。若refmodea為平均值模式,通過參照表來對mpmlist[1]設(shè)定與refmodea在預測方向上相鄰的預測模式中的模式索引較小的預測模式(步驟s2505)。圖26是針對圖2的標號201的幀內(nèi)預測模式的、相鄰預測模式參照表的一例。與預測模式0相鄰的預測模式為11和12,將其中值較小的11設(shè)定為預測模式0的相鄰模式。進而設(shè)定mpmlistsize=2(步驟s2507),進入圖17的步驟s1702。
若refmodea與refmodeb不同,則設(shè)定mpmlist[0]=min(refmodea,refmodeb),mpmlist[1]=max(refmodea,refmodeb)(步驟s2506),進而設(shè)定mpmlistsize=2(步驟s2507),進入圖17的步驟s1702。
在第3實施例中,refmodea與refmodeb相等、且并非平均值模式時的mpmlist[1]的設(shè)定方法與第2實施例不同。在第2實施例中,在refmodea與refmodeb相等,且并非平均值模式時,對mpmlist[1]唯一地分配模式0。在第3實施例中,在refmodea與refmodeb相等、且并非平均值模式時,對mpmlist[1]分配與refmodea相鄰的模式。由于期待與refmodea相鄰的模式的發(fā)生頻率較高,故優(yōu)先預測模式列表生成步驟的運算量與第2實施例相比會增加,但能生成更有效的優(yōu)先預測模式列表,能提高編碼效率。
通過以上所述的第2和第3實施例,具有以下這樣的作用效果。
(1)在利用2個優(yōu)先預測模式的編碼構(gòu)成中,在參照預測模式相同的情況下,也將不同的預測模式加入優(yōu)先預測模式,從而實現(xiàn)優(yōu)先預測模式總為2個(固定)那樣的編碼構(gòu)成。由此,能消除依賴于優(yōu)先預測模式的數(shù)量的處理的分支,能使處理簡略化、削減電路規(guī)模。
(2)在參照預測模式相同基礎(chǔ)上的、不同的預測模式下,適用不依賴于編碼處理過程的預先設(shè)定的模式。作為追加候選,采用水平方向預測/垂直方向預測/平均值預測等平均的發(fā)生頻率較高的預測模式。由此,能低負荷地實現(xiàn)將不同的預測模式設(shè)定為優(yōu)先預測模式的處理,并能平均地確保優(yōu)良的預測精度。
(3)對于參照預測模式相同基礎(chǔ)上的、不同的預測模式,也能采用與參照預測模式相鄰的預測模式。與(2)的情況相比,負荷會增加,但能將更優(yōu)秀的預測模式設(shè)定為優(yōu)先預測模式,能提高編碼效率。
以上所述的實施方式的圖像編碼裝置和圖像解碼裝置具有以下的作用效果。
(1)從多個幀內(nèi)預測模式設(shè)定多個優(yōu)先預測模式。與僅用一個來表現(xiàn)優(yōu)先預測模式的構(gòu)成相比,用較短的碼語言能表現(xiàn)的優(yōu)先預測模式的數(shù)量增加,并且能對各優(yōu)先預測模式分配符合更現(xiàn)實的概率模型的碼長度,故能削減幀內(nèi)預測模式的發(fā)生碼量。
(2)對于參照幀內(nèi)預測模式相同的情況,也默認地決定另一個優(yōu)先預測模式。不論參照幀內(nèi)預測模式是否相同,都總能生成固定長度的優(yōu)先幀內(nèi)預測模式列表,故能消除編碼/解碼處理中的優(yōu)先幀內(nèi)預測模式列表生成處理的分支,使處理簡略化。進而,由于非優(yōu)先幀內(nèi)預測模式列表為固定長度,故能使編碼/解碼的結(jié)構(gòu)簡單化,能謀求電路規(guī)模的縮小。
(3)對于默認地決定的另一個優(yōu)先預測模式,采用參照預測模式、及不依賴于之前的編碼/解碼過程地預先設(shè)定的幀內(nèi)預測模式,從而能抑制另一個優(yōu)先預測模式計算所導致的負荷的增加。對于此處使用的另一個優(yōu)先預測模式,采用一般發(fā)生頻率較高的預測模式、例如垂直方向/水平方向/平均值成分預測模式,從而能抑制編碼效率的下降。
以上所述的實施方式的動圖像編碼裝置所輸出的動圖像的編碼流為能根據(jù)在實施方式中使用的編碼方法來解碼而具有特定的數(shù)據(jù)格式,與動圖像編碼裝置對應的動圖像解碼裝置能解碼該特定的數(shù)據(jù)格式的編碼流。
為在動圖像編碼裝置與動圖像解碼裝置之間收發(fā)編碼流而使用有線或無線的網(wǎng)絡(luò)時,可以將編碼流變換成適合通信路徑的傳送方式的數(shù)據(jù)格式來進行傳送。此時,設(shè)置將動圖像編碼裝置輸出的編碼流變換成適合通信路徑的傳送方式的數(shù)據(jù)格式的編碼數(shù)據(jù)后發(fā)送于網(wǎng)絡(luò)的動圖像發(fā)送裝置、和從網(wǎng)絡(luò)接收編碼數(shù)據(jù)后復原成編碼流、提供給動圖像解碼裝置的動圖像接收裝置。
動圖像發(fā)送裝置包括用于緩存動圖像編碼裝置輸出的編碼流的存儲器、和對編碼流進行打包的包處理部、以及介由網(wǎng)絡(luò)發(fā)生被打包后的編碼數(shù)據(jù)的發(fā)送部。動圖像接收裝置包括介由網(wǎng)絡(luò)接收被打包了的編碼數(shù)據(jù)的接收部、用于緩存所接收到的編碼數(shù)據(jù)的存儲器、以及對編碼數(shù)據(jù)進行包處理而生成編碼流后提供給動圖像解碼裝置的包處理部。
以上的編碼及解碼的相關(guān)處理當然能作為使用了硬件的傳送、存儲、接收裝置來實現(xiàn),也可以通過存儲于rom(只讀存儲器)或閃速存儲器等中的固件、計算機等的軟件來實現(xiàn)。能將該固件程序、軟件程序記錄到計算機等可讀取的記錄介質(zhì)中來提供,也能通過有線或無線的網(wǎng)絡(luò)從服務器提供,還能作為地面波或衛(wèi)星數(shù)字廣播的數(shù)據(jù)廣播來提供。
以上基于實施方式說明了本發(fā)明。實施方式僅是例示,本領(lǐng)域技術(shù)人員當理解其各構(gòu)成要素和各處理過程的組合可以有各種各樣的變形例,并且這樣的變形例也包含在本發(fā)明的范圍內(nèi)。
〔標號說明〕
501減法部、502正交變換.量化部、503逆量化.逆變換部、504加法部、505解碼圖像存儲器、506幀內(nèi)預測部、507紋理信息編碼部、508幀內(nèi)預測模式編碼部、509幀內(nèi)預測模式選擇部、601幀內(nèi)預測模式存儲器、602優(yōu)先預測模式列表生成部、603優(yōu)先預測模式判定標志計算部、604優(yōu)先預測模式判定標志編碼部、605優(yōu)先預測模式索引計算部、606優(yōu)先預測模式索引編碼部、607非優(yōu)先預測模式索引計算部、608非優(yōu)先預測模式索引編碼部、609優(yōu)先預測模式判定部、801紋理信息解碼部、802逆量化.逆變換部、803幀內(nèi)預測模式解碼部、804加法部、805解碼圖像存儲器、806幀內(nèi)預測部、901幀內(nèi)預測模式存儲器、902優(yōu)先預測模式列表生成部、903優(yōu)先預測模式判定標志解碼部、904優(yōu)先預測模式索引解碼部、905優(yōu)先預測模式計算部、906非優(yōu)先預測模式索引解碼部、907非優(yōu)先預測模式計算部。
〔工業(yè)可利用性〕
本發(fā)明能適用于圖像編碼及解碼技術(shù),特別適用于畫面內(nèi)編碼及解碼技術(shù)。