本申請基于專利法實施細則第42條提出,是申請日為2011年12月15日、申請?zhí)枮?01180061785.8的發(fā)明專利申請“圖像預測編碼方法、圖像預測編碼裝置、圖像預測編碼程序、圖像預測解碼方法、圖像預測解碼裝置及圖像預測解碼程序”的分案申請。
本發(fā)明的實施方式涉及圖像預測解碼裝置及方法,尤其涉及使用畫面內的信號進行預測解碼的裝置/方法。
背景技術:
為了高效地進行靜態(tài)圖像或動態(tài)圖像數(shù)據(jù)的傳輸和蓄積,采用了壓縮編碼技術。對于動態(tài)圖像,mpeg-1~4或h.261~h.264的方式得到了廣泛應用。
在這些編碼方式中,將作為編碼對象的圖像分割為多個塊來進行編碼及解碼處理。在mpeg4或h.264中,為了進一步提高編碼效率,在畫面內的預測編碼中,使用位于和對象塊相同的畫面內的相鄰的已再現(xiàn)的圖像信號(將被壓縮的圖像數(shù)據(jù)復原后的信號)生成預測信號,對從對象塊的信號中減去該預測信號后得到的差分信號進行編碼。在畫面間的預測編碼中,參照位于和對象塊不同的畫面內的其它已再現(xiàn)的圖像信號,進行運動的校正,由此生成預測信號,并對從對象塊的信號中減去所生成的預測信號后得到的差分信號進行編碼。
具體地講,在h.264的畫面內預測編碼中采用如下方法:沿預定的方向對與作為編碼對象的塊相鄰的已再現(xiàn)的像素值進行外插而生成預測信號。圖13是用于說明在h.264中使用的畫面內預測方法的示意圖。在圖13(a)中,塊1302是對象塊,由與該對象塊的邊界相鄰的像素a~m(1301)構成的像素組是相鄰區(qū)域,而且是在過去的處理中已經被再現(xiàn)的圖像信號。在這種情況下,將位于對象塊1302正上方的相鄰像素(a~d)向下復制而生成預測信號。另外,在圖13(b)中,將位于對象塊1304左側的已再現(xiàn)像素(i~l)向右復制而生成預測信號。關于生成預測信號的具體方法例如記載于專利文獻1中。對于這樣利用圖13的(a)~(i)所示的方法生成的9個預測信號,分別獲取它們與對象塊的像素信號之間的差分,將差分值最小的預測信號作為最佳的預測方法。這些外插方法能夠按照圖14所示進行匯總。圖14中的箭頭表示將已再現(xiàn)的像素拉伸的方向,在各個方向上記述的編號表示各個預測模式的識別碼。另外,按照周圍已再現(xiàn)的像素的平均進行預測的識別碼是2,在圖14中表示為dc。該識別碼也稱為與畫面內預測方法有關的識別信息或者模式信息,或者簡稱為預測模式。
需要將被實施畫面內預測的塊的預測模式發(fā)送給發(fā)送側。此時,以在與對象塊的上側相鄰的塊和與左側相鄰的塊各自具有的畫面內預測模式為參考,對對象塊的畫面內預測模式進行編碼。即,將與上側相鄰的塊和與左側相鄰的塊的畫面內預測模式進行比較,將值較小的畫面內預測模式確定為參照模式信息(最可靠模式(mostprobablemode))。以該參照模式信息為基礎對對象塊的畫面內預測模式進行編碼。
具體地講,對表示對象塊的畫面內預測模式是否與參照模式信息相同的符號(symbol)進行編碼。在該符號為1時,對象塊的畫面內預測模式與參照模式信息相同。在該符號為0時,對與對象塊的畫面內預測模式有關的信息進行編碼。但是,在表示對象塊的畫面內預測模式的編號大于參照模式信息的編號的情況下,在將表示對象塊的畫面內預測模式的編號減1后進行編碼。
在再現(xiàn)側,在被實施畫面內預測的對象塊中,首先對所述符號進行解碼。在該符號為1時,意味著對象塊的畫面內預測模式與參照模式信息相同。在該符號為0時,對與畫面內預測模式有關的信息進行解碼。但是,在被解碼后的預測模式的編號與參照模式信息相同或者比其大的情況下,在將其加1后作為對象塊的畫面內預測模式。
現(xiàn)有技術文獻
專利文獻
專利文獻1:美國專利公報第6765964號
技術實現(xiàn)要素:
發(fā)明要解決的問題
另外,已知有通過設計比現(xiàn)有技術多的畫面內預測模式來提高畫面內預測的精度。即,在圖14所示的9個模式的基礎上,具有從中間的角度(方向)對預測信號進行外插的選擇肢的模式比較有效。
可是,通過增加預測方法,存在用于確定基于現(xiàn)有技術的畫面內預測方法的識別信息(預測模式)的編碼效率降低的問題。
其原因在于,由于畫面內預測模式的數(shù)量增加,導致在統(tǒng)計上對象塊的預測模式與參照模式信息(最可靠模式)一致的概率降低。除此之外,由于畫面內預測模式的數(shù)量增多,與參照模式信息不一致時的預測模式自身的編碼也需要更多的比特數(shù)。
本發(fā)明的一個方面的目的在于,提供這樣的方法、裝置來解決上述問題,當在畫面內預測信號生成的方法中設計了更多的預測模式的情況下,高效地對用于識別對象塊的畫面內預測方法的模式信息進行編碼。另外,本發(fā)明的另一個方面的目的在于,提供高效地對已編碼的模式信息進行解碼的方法、裝置。
用于解決問題的手段
為了達到上述目的,本發(fā)明的一個方面的一種圖像預測解碼裝置,其包括:輸入單元,其輸入包含殘差信號和編碼信息的壓縮圖像數(shù)據(jù),其中所述殘差信號是通過將圖像分割成多個塊,對對象塊進行預測編碼而生成的,所述編碼信息是與表示所述對象塊的預測信號的生成方法的預測模式相關的信息;復原單元,其從所述壓縮圖像數(shù)據(jù)中提取所述對象塊的殘差信號,將其復原成再現(xiàn)殘差信號;預測模式解碼單元,其將與所述預測模式相關的編碼信息復原,生成所述預測模式;預測信號生成單元,其根據(jù)所述預測模式生成所述對象塊的預測信號;圖像復原單元,其通過將所述預測信號與所述再現(xiàn)殘差信號相加,來將所述對象塊的像素信號復原;存儲單元,其將復原后的所述像素信號作為再現(xiàn)像素信號進行存儲,所述預測模式解碼單元生成候選預測模式列表,所述候選預測模式列表包含與所述對象塊相鄰的多個已再現(xiàn)塊的預測模式作為成分,對表示所述候選預測模式列表中是否包含與所述對象塊的所述預測模式相應的成分的標志進行解碼,在所述標志表示存在相應的成分的情況下,進一步對指示所述候選預測模式列表中包含的相應的成分的索引進行解碼,將所述索引所指示的成分作為所述對象塊的所述預測模式,在所述標志表示不存在相應的成分的情況下,進一步對rem模式進行解碼,將所述rem模式復原為數(shù)值作為固定長度碼,將復原后的該數(shù)值映射為所述預測模式的識別號碼,作為對象塊的畫面內預測模式。
另外,本發(fā)明的另一個方面的一種由圖像預測解碼裝置執(zhí)行的圖像預測解碼方法,包括:輸入步驟,輸入包含殘差信號和編碼信息的壓縮圖像數(shù)據(jù),其中所述殘差信號是通過將圖像分割成多個塊,對對象塊進行預測編碼而生成的,所述編碼信息是與表示所述對象塊的預測信號的生成方法的預測模式相關的信息;復原步驟,從所述壓縮圖像數(shù)據(jù)中提取所述對象塊的殘差信號,將其復原成再現(xiàn)殘差信號;預測模式解碼步驟,將與所述預測模式相關的編碼信息復原,生成所述預測模式;預測信號生成步驟,根據(jù)所述預測模式生成所述對象塊的預測信號;圖像復原步驟,通過將所述預測信號與所述再現(xiàn)殘差信號相加,來將所述對象塊的像素信號復原;存儲步驟,將復原后的所述像素信號作為再現(xiàn)像素信號進行存儲,所述預測模式解碼步驟包括如下的子步驟:生成候選預測模式列表,所述候選預測模式列表包含與所述對象塊相鄰的多個已再現(xiàn)塊的預測模式作為成分,對表示所述候選預測模式列表中是否包含與所述對象塊的所述預測模式相應的成分的標志進行解碼,在所述標志表示存在相應的成分的情況下,進一步對指示所述候選預測模式列表中包含的相應的成分的索引進行解碼,將所述索引所指示的成分作為所述對象塊的所述預測模式,在所述標志表示不存在相應的成分的情況下,進一步對rem模式進行解碼,將所述rem模式復原為數(shù)值作為固定長度碼,將復原后的該數(shù)值映射為所述預測模式的識別號碼,作為對象塊的畫面內預測模式。
發(fā)明效果
根據(jù)本發(fā)明的各個方面及實施方式,在以比現(xiàn)有技術多的畫面內預測模式進行畫面內預測的圖像預測編碼方法中,在對對象塊的預測模式信息進行編碼時,準備由多個預測模式構成的候選預測模式列表,對其中與對象塊的預測模式一致的成分的識別符進行編碼,因而與對象塊的預測模式一致的成分的出現(xiàn)概率提高,能夠以更少的比特數(shù)對預測模式信息進行編碼。換言之,過去只有一個“最可靠模式”,而在本發(fā)明的各個方面及實施方式中準備了多個“最可靠模式”,因而具有與對象塊的預測模式一致的“最可靠模式”的出現(xiàn)概率提高的效果。
另外,當在候選預測模式列表中不存在對象塊的預測模式的情況下,對對象塊的預測模式本身進行編碼,但是去除包含于候選預測模式列表中的多個預測模式,按照剩余的預測模式重新分配識別碼來使用,因而能夠以更小的數(shù)值表示對象塊的預測模式,由此以更短的比特長度進行編碼。
即,根據(jù)本發(fā)明的各個方面及實施方式,在以比現(xiàn)有技術多的畫面內預測模式進行畫面內預測的情況下,具有能夠高效地對與預測模式有關的信息進行編碼的效果。
附圖說明
圖1是示出本發(fā)明的實施方式的圖像預測編碼裝置的框圖。
圖2是示出與在本發(fā)明的實施方式的圖像預測編碼裝置中使用的畫面內預測模式對應的像素外插方向的示意圖。
圖3是示出本發(fā)明的實施方式的畫面內預測模式編碼器的處理的流程圖。
圖4是示出用于說明本發(fā)明的實施方式的畫面內預測模式的編碼處理的示例的示意圖。
圖5是示出本發(fā)明的實施方式的畫面內預測模式編碼器的處理(圖3)中的rem模式編號的生成處理(步驟360)的流程圖。
圖6是用于說明本發(fā)明的實施方式的畫面內預測模式編碼器的處理(圖3)中的rem模式編號的生成處理的示意圖。
圖7是示出本發(fā)明的實施方式的圖像預測解碼裝置的框圖。
圖8是示出本發(fā)明的實施方式的畫面內預測模式解碼器的處理的流程圖。
圖9是示出本發(fā)明的實施方式的畫面內預測模式解碼器的處理(圖8)中的對象塊的預測模式的生成處理(步驟860)的流程圖。
圖10是用于說明在候選預測模式為2的情況下的、本發(fā)明的實施方式的畫面內預測模式編碼方法的處理的示意圖。
圖11是示出用于執(zhí)行記錄在記錄介質中的程序的計算機的硬件結構的圖。
圖12是用于執(zhí)行記錄在記錄介質中的程序的計算機的立體圖。
圖13是示出現(xiàn)有技術的生成對象塊的預測信號的方法的示意圖。
圖14是將現(xiàn)有技術的生成對象塊的預測信號的多個方法匯總為一個方法時的示意圖。
圖15是示出圖像預測編碼程序的模塊的框圖。
圖16是示出圖像預測解碼程序的模塊的框圖。
具體實施方式
下面,使用圖1~圖12對本發(fā)明的實施方式進行說明。
圖1是示出本發(fā)明的實施方式的圖像預測編碼裝置的框圖。圖像預測編碼裝置具有輸入端子101、塊分割器102、畫面間預測信號生成方法確定器103、畫面間預測信號生成器104、畫面內預測信號生成方法確定器105、畫面內預測信號生成器106、切換開關109、減法器110、變換器111、量化器112、逆量化器113、逆變換器114、加法器115、幀存儲器116、畫面內預測模式編碼器117、熵編碼器118和輸出端子119。
下面,說明如上所述構成的圖像預測編碼裝置的動作。由多張圖像構成的動態(tài)圖像的信號被輸入到輸入端子101。由塊分割器102將作為編碼對象的圖像分割為多個區(qū)域。在本發(fā)明的實施方式中是分割為由8×8像素構成的塊,但也可以分割為除此之外的塊的大小或者形狀。然后,對于作為編碼處理的對象的區(qū)域(下面,稱為“對象塊”),生成預測信號。在本發(fā)明的實施方式中采用畫面間預測和畫面內預測這兩種預測方法。
在畫面間預測中,將顯示時間與對象圖像不同且在過去被編碼后又被復原的再現(xiàn)圖像作為參照圖像,從該參照圖像求出用于提供相對于對象塊的誤差為最小的預測信號的運動信息。并且,也可以根據(jù)情況對對象塊進行再分割,對被再分割后的小區(qū)域確定畫面間預測方法。在這種情況下,從各種分割方法中確定相對于對象塊整體效率最好的分割方法及對應的運動信息。在本發(fā)明的實施方式中,該處理由畫面間預測信號生成方法確定器103進行,對象塊經由線路l102被輸入,參照圖像經由線路l119被輸入。關于參照圖像,采用過去被編碼后又被復原的多個圖像作為參照圖像。詳細情況與現(xiàn)有技術即mpeg-2、4和h.264中的任意一種方法相同。這樣確定的運動信息和小區(qū)域的分割方法經由線路l104被發(fā)送給畫面間預測信號生成器104。并且,這些信息經由線路l103被發(fā)送給熵編碼器118進行編碼,然后從輸出端子119發(fā)送出去。在畫面間預測信號生成器104中,根據(jù)小區(qū)域的分割方法和與各個小區(qū)域對應的運動信息,從幀存儲器116(經由線路l119)取得參照信號并生成預測信號。這樣生成的畫面間預測信號經由端子107被發(fā)送給下一個處理單元。
在畫面內預測中,使用在與對象塊相同的畫面內相鄰的已再現(xiàn)的像素值,生成畫面內預測信號。關于生成畫面內預測信號的方法,由畫面內預測信號生成方法確定器105確定。關于畫面內預測信號生成方法確定器105的處理將在后面進行說明。與這樣確定的畫面內預測方法有關的信息(預測模式)經由線路l106被發(fā)送給畫面內預測信號生成器106。并且,與這些畫面內預測方法有關的信息(預測模式)經由線路l105被發(fā)送給畫面內預測模式編碼器117。關于畫面內預測模式編碼器117的處理將在后面進行說明。其處理結果被發(fā)送給熵編碼器118進行編碼,然后從輸出端子119發(fā)送出去。在畫面內預測信號生成器106中,根據(jù)與預測方法有關的信息,從幀存儲器116(經由線路l116)取得位于相同的畫面內的相鄰的已再現(xiàn)的像素信號,并按照預定的方法生成預測信號。這樣生成的畫面內預測信號經由端子108被發(fā)送給下一個處理單元。
針對如上所述求出的畫面間預測信號和畫面內預測信號,通過切換開關109選擇誤差最小的預測信號,并發(fā)送給減法器110。但是,對于第一張圖像不存在過去的圖像,因而所有對象塊按照畫面內預測進行處理。在這種情況下,在處理該圖像時,開關109始終連接端子108。另外,下述的畫面內預測方法和畫面內預測模式編碼方法也能夠應用于靜態(tài)圖像的編碼及解碼。
由減法器110從對象塊的信號(經由線路l102)減去預測信號(經由線路l109),并生成殘差信號。由變換器111對該殘差信號進行離散余弦變換,由量化器112對其各個系數(shù)進行量化。最后,由熵編碼器118對被量化后的變換系數(shù)進行編碼,并與有關預測方法的信息(預測模式)等一起從輸出端子119發(fā)送出去。
為了對后續(xù)的對象塊進行畫面內預測或者畫面間預測,需要對被壓縮后的對象塊的信號進行逆向處理將其復原。即,由逆量化器113對被量化后的變換系數(shù)進行逆量化,然后由逆變換器114進行逆離散余弦變換,將殘差信號復原。由加法器115將被復原后的殘差信號和從線路l109發(fā)送的預測信號相加,將對象塊的像素信號再現(xiàn)并存儲在幀存儲器116中。
下面,對在本發(fā)明的實施方式中采用的畫面內預測信號生成方法確定器105進行說明。圖2是示出與在本發(fā)明的實施方式中采用的畫面內預測模式對應的像素外插方向的示意圖。在本實施方式中,按照合計16種方法生成畫面內預測信號。圖2中的編號表示用于識別畫面內預測方法的識別碼,被稱為預測模式信息或者單位預測模式。對于各個預測模式(0號~15號),在圖2的箭頭所示的方向上外插與對象塊相鄰的已再現(xiàn)的像素信號,并生成畫面內預測信號。有關預測模式0~8的具體外插方法在圖13中示出,計算方法記載于專利文獻1中。對于預測模式9~15也一樣,對周圍的已再現(xiàn)像素信號進行線性插值,將在箭頭方向上被插值的值復制,由此生成畫面內預測信號。在本實施方式中采用16種畫面內預測方法,但在采用除此以外的個數(shù)的預測模式或生成預測信號的方法的情況下,也能夠應用本發(fā)明的實施方式的預測模式的編碼及解碼方法。
在畫面內預測信號生成方法確定器105中,根據(jù)這16個預測模式生成16個畫面內預測信號,對于各個畫面內預測信號,求出與經由線路l102發(fā)送的對象塊的像素信號之間的差分。將提供最小的差分值的預測模式確定為對象塊的畫面內預測模式。
如上所述,針對對象塊(通過開關109)選擇畫面內預測和畫面間預測任意一方,在選擇了畫面內預測的情況下,對象塊的畫面內預測模式由畫面內預測模式編碼器117進行處理。在本發(fā)明的實施方式的畫面內預測模式的編碼方法中,需要采用過去已編碼的塊的畫面內預測模式(識別碼),為了存儲過去已編碼的塊的畫面內預測模式(識別碼),因而畫面內預測模式編碼器117具有存儲用存儲器(未圖示)。
圖3是示出本發(fā)明的實施方式的畫面內預測模式編碼器117的處理的流程圖。在步驟310,首先,生成候選預測模式的列表。作為該列表的成分,采用位于對象塊周圍的已再現(xiàn)的多個塊的預測模式。在本實施方式中,圖4所示的與對象塊400相鄰的周圍已再現(xiàn)的塊410~450保有的預測模式成為候選預測模式列表的成分。圖6的(a)是候選預測模式列表的一例,各方格中的數(shù)值表示與各個周圍塊(410~450)對應的預測模式的識別碼。在該示例中,周圍塊(410~450)具有彼此不同的預測模式,但是當相同的預測模式出現(xiàn)時,將該預測模式作為一個成分進行處理。例如,在塊410和420具有相同的預測模式的情況下,候選預測模式列表的成分的個數(shù)不是5個而是4個。即,存在候選預測模式列表的成分的數(shù)量最大是5最小是1的情況。尤其是在對與對象塊相鄰的周圍塊進行畫面“間”預測的情況下,不存在畫面內預測的模式。在本實施方式中,將模式2(dc預測)作為候選預測模式列表的唯一的成分。另外,在圖6的(a)中,按照候選預測模式列表的成分的值從小到大的順序進行排列,但也可以按照從大到小的順序構成候選預測模式列表。另外,畫面內預測模式編碼器117預先在前述存儲用存儲器中保存當前對象塊的預測模式,以便構成對后續(xù)塊的預測模式進行編碼時的候選預測模式列表。
然后,在步驟320,將對象塊的畫面內預測模式和候選預測模式列表的各個成分進行比較,確認是否具有一致的成分。
當在候選預測模式列表中發(fā)現(xiàn)對象塊的畫面內預測模式的情況下,進入步驟330。在此,編碼為“1”。該“1”表示對象塊的畫面內預測模式包含在候選預測模式列表中。然后,對與對象塊的預測模式一致的位于候選預測模式列表中的成分的識別符(索引)進行編碼(步驟340)。在本實施方式中,從圖6的(a)的左側起對各方格中的索引分別分配0、1、2、3、4,在對象塊的預測模式為“8”時,對作為索引的2進行編碼。按照一元碼(unary碼)對這些索引進行編碼。即,對(0、1、2、3、4)分配各個碼(0、01、001、0001、00001)。另外,也可以將最大索引的碼的最后比特舍去。即,“4”的碼“00001”可以設為“0000”。另外,作為其它方法,也可以按照固定長碼進行編碼。在這種情況下,也可以根據(jù)候選預測模式列表的尺寸(成分的個數(shù))改變固定碼的碼長。例如,在候選預測模式列表的尺寸是4時按照2比特進行編碼,在尺寸是2時按照1比特進行編碼?;诤蜻x預測模式列表的尺寸(成分的個數(shù))的索引編碼比較高效。
在步驟320,當在候選預測模式列表中沒有對象塊的畫面內預測模式的情況下,進入到步驟350。在此,編碼為“0”。該“0”表示對象塊的畫面內預測模式未包含于候選預測模式列表中。在這種情況下,需要對對象塊的預測模式進行編碼。在本實施方式中,將對象塊的預測模式設為“rem模式”進行編碼。由于已知在候選預測模式列表中沒有對象塊的預測模式,因而不是對預測模式的基礎的識別碼進行編碼,而是對去除了位于候選預測模式列表中的各個成分后的、對剩余的預測模式重新分配的識別碼進行編碼。使用圖6進行說明。圖6(a)表示候選預測模式列表的各個成分,不存在對應于對象塊的預測模式的成分。在此,去除這些預測模式后的剩余的預測模式如圖6(b)所示。從該圖6的(b)的左側起對各方格分別分配0、1、2、3、4……,其結果如圖6的(c)所示。例如,當對象塊的預測模式為“9”時,不是對“9”進行編碼,由于圖6的(b)中的“9”在圖6的(c)中被分配了“6”,因而將“6”作為rem模式進行編碼。即,能夠以更小的數(shù)值即較少的比特數(shù)對相同對象塊的預測模式進行編碼。這樣分配預測模式的識別碼是在圖3中的步驟360進行的。
圖5表示步驟360的另一種實施方法。在步驟510,代入所確定的對象塊的畫面內預測模式的識別碼作為rem模式。在步驟520,將在候選預測模式列表中尚未被用于比較的成分中編號最大的成分設為x。在步驟530,比較rem模式與x。在rem模式大于x時,在步驟540中將rem模式的值減1。在步驟550中確認候選預測列表中是否存在未比較的成分,在存在未比較的成分時返回到步驟520,在沒有時結束。
作為圖5所示處理的變形,在步驟520中將最小的成分設為x,在步驟530中,即使是“對象塊的畫面內預測模式≦x?”也能夠得到相同的結果。在這種情況下,如果“對象塊的畫面內預測模式≦x?”為否定,即馬上結束。
在步驟370中對這樣生成的rem模式的值進行編碼。在本實施方式中使用定長碼進行編碼,但也可以按照可變長碼進行編碼。這些碼長度還可以依據(jù)于候選預測模式列表的補集的成分的個數(shù)。
在本實施方式中,對候選預測模式列表的尺寸s(成分的個數(shù))最大為5的情況進行了說明,然而s可以是任意的數(shù)值。但是,編碼裝置和解碼裝置需要按照相同方法生成該列表。在按照圖4的對象塊400的上側(420)和左側(440)的塊的預測模式來生成候選預測模式列表的情況下,s=2。在這種情況下,候選預測模式列表有兩種。在對周圍兩個塊都實施畫面內預測時,列表的成分為2,在僅對周圍的一個塊實施畫面內預測時,列表的成分為1。在列表成分為1時如圖10(a)所示,在列表成分為2時如圖10(b)所示。
圖10(a)中的節(jié)點80表示在候選預測模式列表中是否具有與對象塊的預測模式一致的預測模式。在沒有一致的預測模式時,對rem模式進行編碼(82)。在有一致的預測模式時(81),由于在列表中只有一個成分,因而不需要對索引進行編碼。圖10(b)也一樣,在列表中沒有一致的預測模式時,對rem模式進行編碼(94)。在有一致的預測模式時(91),由于具有兩個成分,因而對表示與第1候選或第2候選一致的索引進行編碼。
下面,對本發(fā)明的實施方式的圖像預測解碼方法進行說明。圖7是示出本發(fā)明的實施方式的圖像預測解碼裝置的框圖。圖像預測解碼裝置具有輸入端子700、數(shù)據(jù)分析器701、逆量化器702、逆變換器703、加法器704、預測信號生成器705、幀存儲器706、畫面內預測模式復原器707和輸出端子708。
下面說明如上所述構成的圖像預測解碼裝置的動作。從輸入端子700輸入按照上述的方法進行了壓縮編碼后的壓縮數(shù)據(jù)。在該壓縮數(shù)據(jù)中包含對將圖像分割為多個塊后的對象塊進行預測及編碼得到的殘差信號、和與預測方法有關的模式信息。數(shù)據(jù)分析器701從壓縮數(shù)據(jù)中提取出對象塊的殘差信號、與預測方法有關的信息、和量化參數(shù),對于畫面間預測還提取運動信息,對于被實施畫面內預測的塊,還提取與上述畫面內預測模式有關的編碼信息。對象塊的殘差信號和量化參數(shù)(經由線路l701)被發(fā)送給逆量化器702進行逆量化處理。其結果由逆變換器703進行逆離散余弦變換。
在數(shù)據(jù)分析器701判定為對象塊被實施了畫面間預測的情況下,經由線路l709將運動信息發(fā)送給預測信號生成器705。在此,根據(jù)該運動信息,由幀存儲器706從過去已再現(xiàn)的圖像中取得預測信號。另一方面,在數(shù)據(jù)分析器701判定為對象塊被實施了畫面內預測的情況下,經由線路l710將與畫面內預測有關的模式信息發(fā)送給畫面內預測模式復原器707,將畫面內預測模式復原并發(fā)送給預測信號生成器705。預測信號生成器705根據(jù)該畫面內預測模式,從幀存儲器706取得位于相同畫面內的過去已再現(xiàn)的像素信號而生成預測信號。關于畫面內預測信號的具體生成方法已經在圖2中說明。關于畫面內預測模式復原器707的詳細情況在后面進行說明。
由預測信號生成器705生成的預測信號經由線路l705,通過加法器704與被復原后的殘差信號相加,再現(xiàn)對象塊的像素信號。被再現(xiàn)的圖像經由線路l704進行輸出,同時經由線路l708被存儲在幀存儲器706中。
下面,對本實施方式的畫面內預測模式復原器707的處理進行說明。畫面內預測模式復原器707的輸出是對象塊的畫面內預測模式的識別碼,其經由線路l707被輸出,并且由于在復原后續(xù)的塊的預測模式時需要,因而被存儲在位于畫面內預測模式復原器707中的存儲器(未圖示)中。
圖8是示出本發(fā)明的實施方式的畫面內預測模式解碼器的處理的流程圖。在步驟810首先生成候選預測模式的列表。作為該列表的成分,使用圖4所示的位于對象塊400周圍的已再現(xiàn)的多個塊(410~450)的預測模式。具體說明與圖3的步驟301相同。編碼裝置和解碼裝置需要全部按照相同的方法生成該候選預測模式列表。
然后,在步驟820中,對一個比特進行解碼。在這一個比特是由數(shù)據(jù)分析器701經由線路l710進行傳輸?shù)那闆r下,實際的解碼處理由數(shù)據(jù)分析器701進行。利用這一個比特表示對象塊的畫面內預測模式是否包含于候選預測模式列表中。在此,在步驟830中,核對這一個比特是否為“1”。在是“1”時進入到步驟840。在不是“1”時進入到步驟850。
在步驟840中,由于對象塊的畫面內預測模式包含于候選預測模式列表中,因而還對識別符(索引)進行解碼,該識別符表示位于候選預測模式列表中的哪個成分是對象塊的畫面內預測模式。由該索引指示的候選預測模式列表的成分成為對象塊的預測模式。例如,在索引是“2”時,從圖6的(a)中的左側起第3個方格中的模式識別碼“8”為對象塊的預測模式。在本實施方式中,將該索引解碼為一元碼(unary碼)。作為其它方法,在根據(jù)候選預測模式列表的尺寸(成分的個數(shù))而采用索引的比特長度固定的編碼方法的情況下,需要將候選預測模式列表的尺寸(成分的個數(shù))發(fā)送給數(shù)據(jù)分析器701(線路l711)。
在步驟850中,由于對象塊的畫面內預測模式未包含于候選預測模式列表中,因而對rem模式的值進行解碼。在本實施方式中是復原為作為定長碼的數(shù)值。(如在圖5中說明的那樣)該rem模式的值與實際的預測模式的識別碼不同,因而在步驟860中重新映射為實際的識別碼,然后作為對象塊的畫面內預測模式。
圖9示出從rem模式返回到實際的預測模式的識別碼的一個實施方法。在步驟910中,將解碼后的rem模式的值代入pred模式中。該pred模式是用于對象塊的畫面內預測模式的變量。
在步驟920,將在候選預測模式列表中尚未被用于比較的成分中編號最小的成分設為x。在步驟930中,比較pred模式與x。在pred模式大于或者等于x的情況下,在步驟940中將pred模式的值加1。在步驟950中確認候選預測列表中是否存在未比較的成分,當存在未比較的成分時返回到步驟920,當不存在時結束。對結束后的pred模式提供對象塊的預測模式的實際識別碼。
也有取代圖9所示的處理的如下方法:按照圖6的(b)所示生成圖6的(a)的補集,將從左側數(shù)起第n+1(n=rem模式的值)個成分作為對象塊的預測模式。
另外,在圖7中將畫面內預測模式復原器707記述為獨立的功能單元,但也可以設于數(shù)據(jù)分析器701中。在這種情況下,線路l710直接連接預測信號生成器705,向預測信號生成器705發(fā)送畫面內預測模式。
在上述實施方式中說明了有關畫面內預測的預測模式信息的編碼處理,但對于畫面間預測也能夠應用相同的編碼及解碼方法。對于畫面間預測時的與預測模式有關的信息,也可以使用候選預測模式列表進行編碼及解碼。在這種情況下,在候選預測模式列表中,將周圍已再現(xiàn)的塊具有的畫面間預測模式的信息作為成分。另外,同樣也可以對畫面間預測時的運動信息進行編碼及解碼。在這種情況下,在候選預測模式列表中,將周圍已再現(xiàn)的塊具有的運動信息作為成分。
將用于使計算機執(zhí)行本發(fā)明的實施方式的圖像預測編碼方法的圖像預測編碼程序存儲在記錄介質中進行提供。并且,將用于使計算機執(zhí)行本發(fā)明的實施方式的圖像預測解碼方法的圖像預測解碼程序存儲在記錄介質中進行提供。關于記錄介質可以例舉出軟盤、cd-rom、dvd或者rom等記錄介質或者半導體存儲器等。
圖15是示出能夠執(zhí)行圖像預測編碼方法的圖像預測編碼程序的模塊的框圖。圖像預測編碼程序p100具有區(qū)域分割模塊p101、預測信號生成模塊p102、殘差信號生成模塊p103、信號編碼模塊p104、預測模式編碼模塊p105和存儲模塊p106。通過由計算機執(zhí)行上述各個模塊而實現(xiàn)的功能與上述圖像預測編碼裝置的功能相同。另外,圖16是示出能夠執(zhí)行圖像預測解碼方法的圖像預測解碼程序的模塊的框圖。圖像預測解碼程序p200具有輸入模塊p201、復原模塊p202、預測模式解碼模塊p203、預測信號生成模塊p204、圖像復原模塊p205和存儲模塊p206。通過由計算機執(zhí)行上述各個模塊而實現(xiàn)的功能,與上述的圖像預測解碼裝置的功能相同。這樣構成的圖像預測編碼程序p100、圖像預測解碼程序p200被存儲在記錄介質中,以便由后述的計算機執(zhí)行。
圖11是示出用于執(zhí)行被記錄在記錄介質中的程序的計算機的硬件結構的圖,圖12是用于執(zhí)行記錄在記錄介質中的程序的計算機的立體圖。作為計算機包括具備cpu的進行基于軟件的處理和控制的dvd播放器、機頂盒、便攜電話等。
如圖11所示,計算機30具有軟盤驅動裝置、cd-rom驅動裝置、dvd驅動裝置等的讀取裝置12,使操作系統(tǒng)常駐的作業(yè)用存儲器(ram)14,存儲被保存在記錄介質10中的程序的存儲器16,被稱為顯示器的顯示裝置18,作為輸入裝置的鼠標20和鍵盤22,用于進行數(shù)據(jù)等的收發(fā)的通信裝置24,以及控制程序的執(zhí)行的cpu26。在存儲了圖像預測編碼程序p100的記錄介質10被插入到讀取裝置12中后,計算機30能夠從讀取裝置12訪問被存儲在記錄介質10中的圖像預測編碼程序p100,能夠通過該圖像預測編碼程序p100作為本發(fā)明的實施方式的圖像預測編碼裝置進行工作。另外,在存儲了圖像預測解碼程序p200的記錄介質10被插入到讀取裝置12中后,計算機30能夠從讀取裝置12訪問被存儲在記錄介質10中的圖像預測解碼程序p200,能夠通過該圖像預測解碼程序p200作為本發(fā)明的實施方式的圖像預測解碼裝置進行工作。
標號說明
101輸入端子;102塊分割器;103畫面間預測信號生成方法確定器;104畫面間預測信號生成器;105畫面內預測信號生成方法確定器;106畫面內預測信號生成器;109切換開關;110減法器;111變換器;112量化器;113逆量化器;114逆變換器;115加法器;116幀存儲器;117畫面內預測模式編碼器;118熵編碼器;119輸出端子;700輸入端子;701數(shù)據(jù)分析器;702逆量化器;703逆變換器;704加法器;705預測信號生成器;706幀存儲器;707畫面內預測模式復原器;708輸出端子。