使用樹形結構的編碼/解碼方法和裝置的製作方法
2023-05-17 00:21:06 2
專利名稱:使用樹形結構的編碼/解碼方法和裝置的製作方法
技術領域:
本公開涉及使用樹形結構的編碼/解碼方法和裝置。更具體地,本公開涉及用於通過在對各種圖像信息的編碼和對產生的編碼的數據的解碼過程中使用樹形結構來提高編碼效率並且進而提高視頻壓縮效率的方法和裝置。
背景技術:
本部分中的陳述僅提供了與本公開相關的背景信息,並且可能不構成現有技術目前的視頻數據壓縮技術包括H. 261、H. 263、MPEG-2、MPEG-4等。在對圖像進行編碼時,現有的視頻壓縮技術將各個圖像劃分為固定尺寸的宏塊,這些宏塊由具有亮度分量的矩形的16X16個像素區域和具有色度分量的矩形的8X8個像素區域組成。對所有這些亮度分量和色度分量進行空間或者時間預測,並且產生的預測殘差在最終被壓縮之前經歷變換、量化和熵編碼。編碼裝置利用H. 264/AVC壓縮標準將每個宏塊細分為16X 16、8X8和4X4的較小尺寸的塊以執行幀內預測編碼,其中在4種預測模式中的一種模式中處理16X 16像素塊,並且在9種預測模式中的一種模式中處理8X8像素塊和4X4像素塊。對於幀間預測編碼,可以先將各個宏塊劃分為像素尺寸16X16、16X8、8X16、8X8、8X4、4X8和4X4的塊。以8X8或者4X4像素塊為單位執行變換,並且變換係數的量化使用標量量化。按照這種方式,期望幀內預測編碼或者幀間預測編碼過程中的視頻編碼裝置不僅編碼目標圖像,而且還編碼用於幀內預測和幀間預測的各種信息。另外,壓縮諸如4KX2K視頻的高解析度視頻具有顯著的必要性,但是還沒有開發出可以有效地壓縮大容量的高解析度視頻的這樣的技木。而且,隨著視頻大小增加以及用於編碼大容量視頻的分割的単位増大,進行幀內預測編碼和幀間預測編碼需要更多的信息,使得視頻壓縮效率降低。因此,需要開發能夠提高編碼效率和視頻壓縮效率的技木。
發明內容
技術問題為了解決上述問題並且滿足所開發的技術的需要,本公開主要試圖通過在對各種圖像信息的編碼以及對產生的編碼的數據的解碼過程中使用樹形結構來提高編碼效率並且進而提高視頻壓縮效率。發明概要本公開的ー個實施方式提供了一種用於對要編碼的圖像信息進行編碼的編碼裝置,該編碼裝置包括樹形編碼器,其用於將具有圖像信息的預定區域分為多個組,通過將分組的區域內要編碼的信息的最小值或者最大值確定為與分組的區域有關的信息來生成一直到最高層的每ー層的節點值,並且將每ー層的節點值與上層的節點值之間的差值或者每ー層的節點值與基於預設標準確定的值之間的差值編碼;以及附加信息編碼器,其用於編碼附加信息,所述附加信息包括與最大層數有關的信息、與要分組的區域的數量有關的信息以及與每ー層的節點值是由下層的節點值之中的最小值還是最大值確定的有關的信肩、O本公開的另ー實施方式提供了一種用於解碼比特流以重構信息的解碼裝置,該解碼裝置包括附加信息解碼器,其用於解碼所述比特流以重構附加信息,所述附加信息包括與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與每ー層的節點值是由下層的節點值之中的最小值還是最大值確定的有關的信息;以及樹形解碼器,其用於通過使用所述附加信息來解碼所述比特流以重構每ー層的節點值與上層的節點值之間的差值或者每ー層的節點值與基於預設標準確定的值之間的差值,將重構的差值與上層的節點值相加以重構每ー層的節點值,並且重構最低層的節點值作為要解碼的信息。本公開的又ー實施方式提供了一種用於對要編碼的圖像信息進行編碼的編碼裝置,該編碼裝置包括樹形編碼器,其用於對具有所述圖像信息的預定區域中具有相同信息的區域進行分組,並且編碼節點值和指示每ー層的節點是否被劃分的標記中的一個或多個;以及附加信息編碼器,其用於編碼附加信息,所述附加信息包括與最大層數有關的信息 以及與由最低層的各個節點指示的區域的尺寸有關的信息。本公開的又ー實施方式提供了一種用於解碼比特流以重構信息的解碼裝置,該解碼裝置包括附加信息解碼器,其用於解碼比特流以重構附加信息,所述附加信息包括與最大層數有關的信息以及與由最低層的各個節點指示的區域的尺寸有關的信息;以及樹形解碼器,其用於基於所述附加信息來解碼所述比特流,以重構指示從最高層到最低層的每一層的節點是否被劃分的標記,並且通過根據重構的標記重構各個層的節點的節點值來重構所述信息。本公開的又ー實施方式提供了ー種用於通過使用樹形結構來編碼圖像信息的編碼方法,該編碼方法包括形成樹形結構,其中每ー層包括至少ー個節點,並且所述節點被劃分為或者不被劃分為下層的節點;將用於指示所述節點是否被劃分為所述下層的節點的標記編碼;以及編碼附加信息,所述附加信息包括與最大層數有關的信息以及與由最低層的各個節點指示的區域的尺寸有關的信息。本公開的又ー實施方式提供了ー種用於通過使用樹形結構來重構圖像信息的解碼方法,該解碼方法包括重構附加信息,所述附加信息包括與構成所述樹形結構的最大層數有關的信息以及與由最低層的各個節點指示的區域的尺寸有關的信息;以及基於所述附加信息,重構指示每ー層中包括的各個節點是否被劃分的標記,並且根據重構的標記來重構每ー層的節點的節點值。有益效果根據如上所述的本公開,通過在對各種圖像信息的編碼以及對產生的編碼數據的解碼過程中使用樹形結構,可以提高編碼效率並且進而提高視頻壓縮效率。
圖I是示意性地示出根據本公開的第一實施方式的使用樹形結構的編碼裝置的框圖;圖2是示出根據本公開的第一實施方式的要使用樹形結構編碼的信息的示例圖;圖3是示出根據本公開的第一實施方式的與在每層處確定的區域有關的信息的標籤樹的示例性示圖;圖4是示出根據本公開的第一實施方式的使用樹形結構編碼的比特的示例性示圖;圖5是示出根據本公開的第一實施方式的使用樹形結構的編碼方法的流程圖;圖6是示意性地示出根據本公開的第一實施方式的使用樹形結構的解碼方法的框圖;圖7是示出根據本公開的第一實施方式的使用樹形結構的解碼方法的流程圖;圖8是示意性地示出根據本公開的第二實施方式的使用樹形結構的編碼裝置的框圖; 圖9是示出根據本公開的第二實施方式的樹形結構的示例性示圖;圖10是示出根據本公開的第二實施方式的表示為樹形結構的信息編碼結果的示例性示圖;圖11是示出根據本公開的第二實施方式的用於將節點劃分為下層的另一方案的示例性示圖;圖12和圖13是示出當按照不同方案來分發與區域有關的信息時的分組的示例性示圖;圖14是示出根據本公開的第二實施方式的使用樹形結構的編碼方法的流程圖;圖15是示意性地示出根據本公開的第二實施方式的使用樹形結構的解碼裝置的框圖;以及圖16是示出根據本公開的第二實施方式的使用樹形結構的解碼方法的流程圖。
具體實施例方式下面將參考附圖詳細描述根據本公開的實施方式的使用樹形結構的編碼/解碼方法和裝置。根據本公開的實施方式,在對要編碼的圖像信息的編碼和對產生的編碼數據的解碼中,通過使用樹形結構來提高編碼效率。根據本公開的實施方式,要編碼的信息可以是與圖像信號有關的信息或者是用於對圖像信號進行編碼的各種信息,諸如可變尺寸宏塊的宏塊尺寸和宏塊類型信息、指示用於預測和變換的子塊的尺寸和類型的分區信息、幀內預測信息、運動矢量、運動矢量預測方向、最優運動矢量預測候選、任意尺寸區域的最優內插濾波器、圖像增強濾波器的使用與否、參考圖片索引、量化矩陣索引、最優運動矢量精度和變換尺寸信息、圖像像素信息、編碼塊信息或者指示預定塊內是否存在零以外的變換係數的係數信息。另外,預定區域可以是可變尺寸的宏塊,或者可以是各種像素尺寸的塊,諸如64X64的像素塊、32 X 32的像素塊、16 X 16的像素塊、16 X 32的像素塊或者4X16的像素塊。另外,預定區域可以是各種類型和尺寸的區域,諸如確定運動矢量所根據的塊。根據本公開的實施方式,編碼和解碼可以應用於熵編碼和熵解碼,但是不限於此,並且還可以應用於各種其他編碼和解碼。圖I是示意性地示出根據本公開的第一實施方式的使用樹形結構的編碼裝置的框圖。
根據本公開的第一實施方式的使用樹形結構的編碼裝置100可以包括樹形編碼器110和附加信息編碼器120。樹形編碼器110將具有要編碼的圖像信息的預定區域分為多個組,通過將分組的區域內要編碼的信息的最小值或者最大值確定為與分組的區域有關的信息來生成一直到最高層的每ー層的節點值,並且對每ー層的節點值與上層的節點值之間的差值或者每ー層的節點值與基於預設標準而確定的值之間的差值進行編碼。術語「每ー層的節點值」表示與每ー層的分組的區域有關的信息的值。例如,最低層的節點值可以是與預定區域有關的信息的值。最低層的上層的節點值可以是與按預定區域分組的區域有關的信息的值。與分組區域有關的信息的值可以由與分組區域內包括的預定區域有關的信息的值之中的最小值或最大值來決定。此外,由預設的標準決定的值可以是前一區域或相鄰區域之中到目前為止在區域中具有最高發生概率的值,但是並不限於此,並且可以是由各種標準決定的值。在這種情況下,樹形編碼器110可以通過使用諸如一元碼、截斷一元碼和指數哥 倫布(Exp-Golomb)碼的各種ニ進位編碼方法對每ー層的節點值與上層的節點值之間的差值進行編碼。另外,在通過使用諸如一元碼、截斷一元碼和指數哥倫布(Exp-Golomb)碼的各種ニ進位編碼方法對每ー層的節點值與上層的節點值之間的差值進行ニ值化之後,樹形編碼器110可以通過基於相鄰層或者上層的節點值確定用於對要編碼的層的節點值進行編碼的概率模型,或者通過在每ー層改變概率模型來執行ニ進位算數編碼。另外,如果每ー層的節點值由下層的節點值中的最小值確定,則樹形編碼器110跳過對具有最大節點值的層以下的層的節點值的編碼。也就是說,在每ー層的節點值由下層的節點值中的最小值決定的情況下,如果某ー層的某個節點值是要編碼的信息的最大值,則樹形編碼器110對相應層的節點值進行編碼,並且跳過對更下層的節點值的編碼,假設下層的節點值具有相同值。另ー方面,在每ー層的節點值由下層的節點值中的最大值確定的情況下,樹形編碼器110跳過對具有最小節點值的層以下的層的節點值的編碼。也就是說,在每ー層的節點值由下層的節點值中的最大值決定的情況下,如果某ー層的某個節點值是要編碼的信息所能夠具有的最小值,則樹形編碼器110對相應層的節點值進行編碼,並且跳過對更下層的節點值的編碼,假設下層的所有節點值具有相同值。另外,為了根據要編碼的信息的發生概率來執行編碼,樹形編碼器110可以通過改變分配給要編碼的信息的編號(code number),根據發生概率來分配小編號或者大編號。在這種情況下,可以通過使用各種發生概率(諸如,與預定的相鄰區域有關的信息的發生概率或者與包括要編碼的信息的整個或者部分區域內到目前為止已編碼的區域有關的信息的發生概率)來計算要編碼的信息的發生概率。在樹形編碼器110對最高層的節點值進行編碼的情況下,由於不存在最高層的上層,因此樹形編碼器110可以將最高層的上層的節點值設置為預定值,並且可以對最高層的節點值與所設置的預定值之間的差值進行編碼。在這種情況下,被設置為最高層的上層的節點值的預定值可以通過各種值來設置,諸如,在包括要編碼的信息的整個區域或者部分區域中到目前為止在被編碼時具有最高發生概率的值、預設值和與預定的相鄰區域有關的信息的值中具有最高發生概率的值。根據本公開的第一實施方式,附加信息編碼器120對附加信息進行編碼,附加信息用於利用樹形結構對與預定區域有關的信息進行編碼。附加信息可以是與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與每ー層的節點值是由下層的節點值中的最小值還是最大值確定的有關的信息。編碼的附加信息可以包括在預定編碼單位的頭部中,諸如序列頭部、圖片頭部或者比特流的片段頭部。下面將參照圖2至圖4詳細描述通過使用樹形結構對要編碼的信息進行編碼的過程。圖2是示出根據本公開的第一實施方式的要使用樹形結構來編碼的信息以及分配給各個信息的編號的示例性示圖。在幀間預測的情況下,當圖像宏塊是64X 64像素塊並且被劃分為8X16的像素子塊時,在圖2中例示了在每個8X16像素子塊處確定的運動矢量精度。在這種情況下,要編碼的信息是預定區域的運動矢量精度,並且預定區域是8 X 16像素子塊。 編碼可以通過使用要編碼的數據的未改變值(untouched value)來實現,並且還可以通過向要編碼的數據分配編號來實現。根據數據的發生概率,可以按照各種方式修改用於分配編號的方法。圖2的實施方式示出了分別向1/2精度、1/4精度和1/8精度分配編號1、2和3的示例。根據本公開的第一實施方式的編碼裝置100可以通過在每ー層重複以下過程來確定每ー層的節點值,即,如圖2中示出的向運動矢量分配編號,如圖3中所示的將預定數量的預定區域進行分組以便使用樹形結構來編碼,並且基於分組區域內包括的信息來確定與分組區域有關的信息。圖3是示出根據本公開的第一實施方式的與在每ー層確定的區域有關的信息的標籤樹的示例性示圖。為了如圖2所示使用樹形結構來編碼要編碼的信息,視頻編碼裝置100通過在每一層直至最高層重複以下過程來確定圖3中所示的樹形結構,即,分組4個8X 16像素子塊,並且利用各個分組區域內包括的信息的最小值來確定與該分組區域有關的信息。此後,視頻編碼裝置100編碼附加信息,附加信息用於基於該樹形結構來編碼信息。附加信息可以是與樹形結構中的最大層數有關的信息、與最低層的區域的尺寸有關的信息以及關於與每一層分組的區域的信息是由與低層的區域有關的信息中的最小值還是最大值確定的信息。代替與最低層的區域的尺寸有關的信息,可以將要分組的區域的數量有關的信息包括在附加信息中並繼而進行編碼。在圖3中,作為附加信息,樹形結構中的最大層數是4,最低層的區域的尺寸是8X 16像素,並且與每ー層的分組區域有關的信息是與低層的區域有關的信息的最小值。在這種情況下,代替將最低層的區域的尺寸作為附加信息進行編碼,可以將要分組的區域的數量「4」作為編碼信息來編碼。參照圖3,由於分配給第3層的前4個區域的編號的最小值是指示1/2精度的編號1,所以與第2層的第一區域有關的信息的值是指示1/2精度的編號I。按照這種方式,如圖3所示的樹形結構通過以下步驟來確定對從第3層到第0層的每ー層的區域進行分組,並且將與分組的區域內包括的區域有關的信息中的最小值確定為與分組的區域有關的信息的值。如果確定了如圖3中所示的樹形結構,則編碼裝置100生成從上層到下層的代碼比特(code bit),並且編碼所生成的代碼比持。另外,由於編碼裝置100知道要編碼的信息的最大值,所以編碼裝置100可以通過使用截斷一元碼來生成ニ進位比特(binary bit)。
在這種情況下,用於編碼每ー層的節點的方法編碼與上層節點值的差值,並且用於編碼該差值的方法編碼與該差值一祥多的ニ進位比特「0」,並且在末尾處編碼ニ進位比持「I」。如果要編碼的當前節點的值與上層節點的值之間不存在差異,則編碼ニ進位比特「I」。更具體地,用於編碼每個節點值的方法通過使用ニ進位比特「0」和「 I 」來編碼要編碼的當前節點的值與上層節點的值之間的差值,以下情況(I)至(3)除外。僅編碼與差值一祥多的ニ進位比特「0」,並且在末尾處編碼ニ進位比特「I」。如果要編碼的當前節點的值與上層節點的值之間不存在差異,則編碼ニ進位比特「I」。相反,可以編碼與差值ー樣多的ニ進位比特「1」,並且如果要編碼的當前節點的值與上層節點的值之間不存在差異,則可以編碼ニ進位比特「O」。(I)在對每個節點值進行編碼時,在上層節點的值是要編碼的數據所能夠具有的 最大值的情況下,不編碼下層節點,因為下層節點無法具有比上層節點更大的值。也就是說,所有的下層節點具有與上層節點的編號相同的值。(2)在對差值進行編碼時,在當前節點的值是要編碼的數據的值或者是編號可以具有的最大值的情況下,編碼數量與上層節點的差值相同的ニ進位比特「0」,並且在其末端不編碼指示對當前節點的編碼的終止的ニ進位比特「I」。例如,如果要編碼的數據所能夠具有的最大值是3,並且上層節點的值是1,則編碼ニ進位比特「00」,並且要編碼的當前節點的值是3。(3)在對具有相同的上層節點的各個節點之中的最後ー個節點的值進行編碼吋,在除了該最後一個節點以外的其它節點的值大於上層節點的值的情況下,不編碼最後ー個節點的值。在對最高層節點的值進行編碼時,通過使用上述ニ進位比特0或者1,將與要編碼的數據的值或者編號所能夠具有的最大值的差值編碼。另外,用於對最高層節點的值進行編碼的另ー種方法可以編碼與編號或者具有最高發生概率的數據的差值。圖4是示出根據本公開的第一實施方式的通過使用樹形結構而編碼的圖2的運動矢量精度的比特的示例性示圖。圖4示出了通過使用樹形結構和相應的區域來編碼與圖2的區域有關的信息而生成的比持。下面將參照圖4描述通過使用圖3的樹形結構來編碼與圖2的區域有關的信息的過程。在以下編碼過程中,節點值意味著編號。在區域(0,0)的情況下,作為最高層的第0層不存在上層。假設1/2精度具有最高發生概率,將上層的節點值設置為I (1/2精度)。因此,最高層的節點值與其上層層的節點值之間的差值是O。如果表述為ニ進位比特串,則0變為I。因為第I層中的區域(0,0)的節點值是I (1/2精度),並且上層的節點值是I (1/2精度),所以其間的差值是O。如果表述為ニ進位比特串,則0變為I。因為第2層中的區域(0,0)的節點值是I (1/2精度),並且上層的節點值是I (1/2精度),所以其間的差值是O。如果表述為ニ進位比特串,則0變為I。因為第3層中的區域(0,0)的節點值是I (1/2精度),並且上層的節點值是I (1/2精度),所以其間的差值是O。如果表述為ニ進位比特串,則0變為I。因此,通過將與圖I中所示的區域之中的區域(0,0)有關的信息編碼而獲得的ニ進位比特串是1111。在區域(0,I)的情況下,因為在將區域(0,0)的節點值編碼的過程中已經編碼了第O層、第I層和第2層的節點值,所以不編碼第O層、第I層和第2層的節點值,而僅編碼第3層的節點值。因為第3層中的區域(O,I)的節點值是2 (1/4精度),並且其上層的節點值是I (1/2精度),所以編號之間的差值是I。如果表示為ニ進位比特串,則I變為01。因此,通過編碼與圖2中所示的區域之中的區域(0,I)有關的信息而獲得的ニ進位比特串是01。在區域(0,4)的情況下,因為在將區域(0,0)編碼的過程中已經編碼了第0層的節點值,所以不編碼第0層的節點值,而僅編碼第I層、第2層和第3層的節點值。因為第I層中的區域(0,I)的節點值是I (1/2精度),並且其上層的節點值是I (1/2精度),所以編號之間的差值是I。如果表示為ニ進位比特串,則I變為01。因為第2層中的區域(0,2)的節點值是2 (1/4精度),並且其上層的節點值是2 (1/4精度),所以編號之間的差值是O。如果表示為ニ進位比特串,則0變為I。因為第3層中的區域(0,4)的節點值是2 (1/4精度),並且其上層的節點值是2(1/4精度),所以編號之間的差值是O。如果表示為ニ進位比特串,則0變為I。因此,通過編碼與圖I中所示的區域之中的區域(0,4)有關的信息而獲得的ニ進位比特串是0111。在區域(2,0)的情況下,因為已經編碼了第0層和第I層的節點值,所以不編碼第0層和第I層的編碼值,並且僅編碼第2層和第3層的節點值。因為第2層中的區域(1,0)的節點值是3 (1/8精度),並且上層的節點值是I (1/2精度),所以編號之間的差值是最大值2,並且相應的節點值是3 (1/8精度)。因此,由截斷一元碼生成的ニ進位比特串是00。因為最大值出現,所以不編碼相應節點的下層的節點值。同樣地,在區域(2,6)的情況下,因為已經編碼了第0層和第2層的節點值,所以不編碼第0層和第I層的節點值,並且僅編碼第2層和第3層的節點值。因為第2層中的區域(0,I)的節點值是3 (1/8精度),並且上層的節點值是2 (1/4精度),所以它們之間的差值是1,並且相應的節點值是3 (1/8精度)。因此,通過截斷一元碼生成的ニ進位比特串 是O。在這種情況下,因為最大值出現,所以不編碼下層的節點值。在執行算術編碼的情況下,編碼裝置100通過使用ニ進位比特串或與相鄰區域有關的信息來生成概率模型,並且對生成的ニ進位比特串執行算木編碼。在不執行算木編碼的情況下,編碼裝置100將生成的ニ進位比特串插入到比特流中。以這種方式,通過使用樹形結構來編碼圖2中示例性示出的信息,生成了比特流。雖然圖2至圖4示出了向1/2精度、1/4精度和1/8精度分配編號1、2和3,並且接著編碼的示例,但是可以通過使用與相鄰區域有關的信息或者已編碼的信息的發生概率向不同的精度分配不同的編號。圖5是示出根據本公開的第一實施方式的使用樹形結構的編碼方法的流程圖。對於根據本公開的第一實施方式的使用樹形結構的編碼方法,編碼裝置100將具有要編碼的圖像信息的預定區域分為多個組,並且通過將分組的區域內要編碼的信息的最小值或者最大值確定為與分組的區域有關的信息來生成直至最高層的每ー層的節點值(步驟S510)。編碼裝置100將每ー層的節點值與上層的節點值之間的差值編碼(步驟S520)。編碼裝置100編碼附加信息,附加信息包括與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與每ー層的節點值是由下層的節點值中的最小值還是最大值確定的有關的信息(步驟S530)。
編碼裝置100並非必須執行步驟S530,並且可以根據實現方案或者必要性而可選地執行步驟S530。例如,在編碼裝置100和解碼裝置(下文描述)相互知道與最大層數有關的信息、 與最低層的區域的尺寸有關的信息以及與每ー層的節點值是由下層的節點值中的最小值還是最大值確定的有關的信息中的ー個或更多個的情況下,編碼裝置100可以不編碼已相互知道的信息,而僅編碼相互不知道的信息。如果在協商和建立過程中已相互知道所有信息,則編碼裝置100可以不編碼附加信息。在步驟S530,編碼裝置100可以將與要分組的區域的數量有關的信息而不是與最低層的區域的尺寸有關的信息插入到編碼信息中,並且編碼該編碼信息。這是因為如果確定了最大層數,則也可以確定用於確定要分組的區域的數量的最低層的區域的尺寸。在步驟S520,編碼裝置100可以通過使用ニ進位編碼來編碼差值,或者通過使用ニ進位編碼來編碼差值並接著改變概率模型從而執行ニ進位算木編碼。在這種情況下,概率模型可以基於相鄰層或者上層的節點值來確定,或者可以在每ー層不同地改變。在步驟S520,在每ー層的節點值是由下層的節點值中的最小值來確定的情況下,編碼裝置100可以跳過對具有最大節點值的節點的更下層的節點值的編碼。在由下層的節點值中的最大值來確定每ー層的節點值的情況下,編碼裝置100可以跳過對具有最小節點值的層以下的層的節點值的編碼。在步驟S520,編碼裝置100可以改變分配給要編碼的信息的編號,以便根據要編碼的信息的發生概率來執行編碼。在步驟S520,在編碼裝置編碼最高層的節點值的情況下,編碼裝置100可以將最高層的上層的節點值設置為預定值,並且對最高層的節點值與所設置的預定值之間的差值進行編碼。圖6是示意性地示出根據本公開的第一實施方式的使用樹形結構的解碼裝置的框圖。根據本公開的第一實施方式的使用樹形結構的解碼裝置600可以包括附加信息解碼器610和樹形解碼器620。附加信息解碼器610解碼比特流以重構附加信息,附加信息包括與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與是每ー層的節點值由下層的節點值中的最小值還是最大值來確定的有關的信息。樹形解碼器620使用解碼後的附加信息來重構樹形結構,並且重構每ー層的節點值與其上層的節點值之間的差值或者每ー層的節點值與由預設標準確定的值之間的差值。在這種情況下,附加信息解碼器610通過從比特流的頭部中提取具有編碼的附加信息的數據並且接著解碼提取出的數據來重構附加信息。比特流的頭部可以是宏塊頭部、切片頭部、圖片頭部或者序列頭部。由預設標準確定的值可以是在先前的區域或相鄰的區域中到目前為止已解碼的區域中具有最高發生概率的值,但是不限於此,並且可以是由各種標準確定的值。附加信息解碼器610並非必須包括在解碼裝置600中,並且可以根據實現方案或者必要性而可選地包括在其中。例如,在編碼裝置100和解碼裝置600相互知道與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與是每ー層的節點值由下層的節點值中的最小值還是最大值確定的有關的信息的情況下,編碼裝置100可以不編碼附加信息,並且相應地,解碼裝置600可以通過使用預設附加信息來重構樹形結構,無需通過解碼比特流來重構附加信息。樹形解碼器620通過使用附加信息來解碼比特流,以重構每ー層的節點值與上層的節點值之間的差值或者每ー層的節點值與由預設標準確定的值之間的差值。樹形解碼器620通過將重構的差值與上層的節點值相加來重構每ー層的節點值。樹形解碼器620將最低層的節點值重構為要解碼的信息。也就是說,樹形解碼器620通過使用預設的或者由附加信息解碼器610重構的附加信息來重構增強的樹形結構。樹形解碼器620基於增強的樹形結構來解碼比特流,以重構每ー層的節點值與上層的節點值之間的差值。樹形解碼器620通過將重構的差值與上層的節點值相加來重構每ー層的節點值。在這種情況下,樹形解碼器620可以通過使用多種ニ進位解碼方法(諸如,一元碼、截斷一元碼和指數哥倫布碼)來解碼比特流,以重構每ー層的節點值與上層的節點值之間的差值。另外,在通過使用各種ニ進位解碼方法(諸如,一元碼、截斷一元碼和指數哥倫布碼)解碼比特流之後,樹形解碼器620可以通過基於相鄰層或上層的節點值確定要解碼的層的概率模型來執行ニ進位算木解碼。另外,樹形解碼器620可以通過差別地改變每ー層的概率模型來執行對比特流的算木解碼。 在基於附加信息而識別出編碼裝置100確定下層的節點值中的最小值為每ー層的節點值的情況下,樹形解碼器620跳過對具有最大節點值的層以下的層的節點值的解碼,假設下層的所有節點值具有相同的值。另ー方面,在基於附加信息識別了編碼裝置100確定下層的節點值中的最大值為每ー層的節點值的情況下,樹形解碼器620跳過對具有最小節點值的層以下的層的節點值的解碼,假設下層的所有節點值具有相同的值。樹形解碼器620可以根據要解碼的信息的發生概率而差別地改變編號。也就是說,樹形解碼器620可以根據要解碼的信息的發生概率而分配小編號或者大編號。要解碼的信息的發生概率可以通過使用多種方法來計算,諸如與預定的相鄰區域有關的信息的發生概率,或者在具有要解碼的信息的區域之前已被解碼和重構的信息的發生概率。在樹形解碼器620重構最高層的節點值與其上層的節點值之間的差值的情況下,假定由於最高層的上層不存在而具有預定值,樹形解碼器620僅重構差值。在這種情況下,預定值可以是以下值之中的任一個在到目前為止解碼出的具有最高發生概率的值、預設值、與預定的相鄰區域有關的信息的值之中的具有最高發生概率的值等。下面將參照圖2至圖4來詳細描述根據本公開的第一實施方式的通過使用樹形結構來解碼比特流以重構信息的過程。解碼裝置600從比特流的圖片頭部、切片頭部或者宏塊頭部中提取出具有編碼的附加信息的數據,並且通過解碼提取出的數據來重構附加信息。另外,解碼裝置600可以使用預設的附加信息。附加信息可以包括與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與每ー層的節點值是由下層的節點值中的最小值還是最大值確定的有關的信息。解碼裝置600可以通過使用附加信息中的與最大層數有關的信息以及與最低層的區域的尺寸有關的信息來重構如圖3所示的樹形結構。在這種情況下,解碼裝置600可以通過使用要分組的區域的數量有關的信息而不是與最低層的區域的尺寸有關的信息來重構樹形結構。另外,解碼裝置600可以通過使用與最低層的區域的尺寸有關的信息以及與要分組的區域的數量有關的信息二者來重構樹形結構。如果重構了如圖3所示的樹形結構,則解碼裝置600使用重構的樹形結構來解碼比特流,在比特流中編碼了每ー層的節點值與上層的節點值之間的差值,如以上參照圖4所述。因為解碼裝置600已知道要解碼的信息的最大值,所以解碼裝置600通過使用截斷一元碼來解碼ニ進位比特串。在這種情況下,可以假設1/2精度、1/4精度和1/8精度的編號分別是1、2和3。可以根據各個精度的發生概率而差別地改變各個精度的編號。如果解碼裝置600執行ニ進位比特串的算木解碼,則解碼裝置600通過使用與相鄰區域有關的信息或者ニ進位比特串來生成概率模型,並且通過下比特流的算木解碼來生成ニ進位比特流。如果解碼裝置不執行ニ進位比特串的算木解碼,則解碼裝置600通過解碼比特流而生成ニ進位比特串。參照圖4,在區域(0,0)的情況下,最高層第0層沒有上層。假設上層的節點值具有1/2精度(最高發生概率),如果解碼了ニ進位比特串1,則最高層的節點值與其上層的節點值之間的差值是O。在第I層中,如果解碼了ニ進位比特串1,則與其上層的節點值的差
值是O。在第2層中,如果解碼了ニ進位比特串1,則與其上層的節點值的差值是O。在第3層中,如果解碼了ニ進位比特串1,則與其上層的節點值的差值是O。如果將每一層的節點值與每一層的節點值和其上層的節點值之間的差值相加,則每ー層的節點值是1,即,1/2精度。因此,區域(0,0)的重構的信息是1/2精度。在區域(0,I)的情況下,因為在重構與區域(0,0)有關的信息的過程中已經解碼了第0層、第I層和第2層,所以不對它們執行額外解碼。在第3層中,如果解碼了ニ進位比特串01,則與其上層的節點值的差值是I。因此,區域(0,I)的重構的信息是2,意味著1/4精度。在區域(2,0)的情況下,因為在重構與區域(0,0)有關的信息的過程中已解碼了第0層和第I層,所以不對它們執行額外解碼。在第2層中,因為上層的節點值是I (1/2精度),所以可以知道與上層的節點值的差值是最大值,即,2。因此,如果通過截斷一元碼解碼ニ進位比特串00,則區域(2,0)的重構的信息是1/8精度。同樣地,在區域(2,6)的情況下,因為第2層的上層是1/4精度,所以可以知道差值的最大值是I。如果通過截斷一元碼解碼ニ進位比特流0,則與上層的差值是1,並且區域(2,6)的重構的信息是1/8精度。在這種情況下,因為出現了最大值,所以不解碼下層的節點值,並且將該節點值確定為1/8精度。在上述示例中,在假設向1/2精度、1/4精度和1/8精度分別分配了編號1、2和3的情況下執行解碼。然而,通過使用與相鄰區域有關的信息或者被解碼並重構的信息的發生概率,可以差別地改變各個精度的編號。圖7是示出根據本公開的第一實施方式的使用樹形結構的解碼方法的流程圖。對於根據本公開的第一實施方式的使用樹形結構的解碼方法,解碼裝置600解碼比特流以重構附加信息(步驟S710)。也就是說,解碼裝置600從比特流的預定編碼單元的頭部(諸如,圖片頭部、切片頭部或者宏塊頭部)中提取出具有編碼的附加信息的數據,並且通過解碼提取出的數據來重構附加信息。附加信息可以包括與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與每ー層的節點值是通過下層的節點值中的最小值還是最大值確定的有關的信息。解碼裝置600並非必須執行步驟S710,而是可以根據實現方案或者必要性而可選地執行步驟S710。例如,在編碼裝置100和解碼裝置600相互協商地預設包括在附加信息中的所有信息片的情況下,編碼裝置100可以不編碼附加信息,並且相應地,解碼裝置600可以通過使用預設的附加信息來解碼比特流。在包括在附加信息中的信息僅部分是由編碼裝置100與解碼裝置600之間的預先安排而設置的情況下,編碼裝置100可以僅編碼相互不知道的信息,並且解碼裝置600可以解碼比特流以僅重構相互不知道的信息。重構的信息和預設的其他信息可以用於解碼。解碼裝置600可以解碼比特流以重構每ー層的節點值與上層的節點值之間的差值(步驟S720)。也就是說,解碼裝置600通過使用在步驟S710重構的附加信息或者預設的附加信息來重構增強的樹形結構,並且通過使用重構的增強的樹形結構來解碼比特流從而重構每ー層的節點值與上層的節點值之間的差值。解碼裝置600通過將重構的差值與上層的節點值相加來重構每ー層的節點值(步驟S730),並且重構最低層的節點值作為要解碼的信息(步驟S740)。在步驟S720,解碼裝置600可以通過使用ニ進位解碼方法解碼比特流來重構每ー·層的節點值,或者可以通過使用ニ進位解碼方法解碼比特流並接著改變概率模型執行ニ進·制算木解碼來重構每ー層的節點值。概率模型可以基於相鄰層或者上層的節點值來確定,或者可以在每ー層不同地改變。在步驟S720,解碼裝置600可以改變分配給要解碼的信息的編號,以便根據要解碼的信息的發生概率來解碼。在步驟S730,在識別出每ー層的節點值是由下層的節點值中的最小值確定的情況下,解碼裝置600可以使用最大值來重構具有最大節點值的層以下的層的所有節點值。在步驟S730,在識別出每ー層的節點值是由下層的節點值中的最大值確定的情況下,解碼裝置600可以使用最小值來重構具有最小節點值的層以下的層的所有節點值。在步驟S730,在解碼最高層的節點值時,解碼裝置600可以通過將最高層的上層的節點值設置為預定值來重構最高層的節點值。如上所述,根據本公開的第一實施方式,通過使用樹形結構來有效率地編碼要編碼的圖像信息,可以提高壓縮效率。圖8是示意性地示出根據本公開的第二實施方式的使用樹形結構的編碼裝置的框圖。根據本公開的第二實施方式的使用樹形結構的編碼裝置800可以包括樹形編碼器810和附加信息編碼器820,二者都用於可變尺寸的塊。用於可變尺寸的塊的樹形編碼器810對具有要編碼的圖像信息的預定區域之中具有相同信息的區域進行分組,並且將節點值和指示每ー層的節點是否被劃分的標記中的ー個或多個編碼。用於可變尺寸的塊的附加信息編碼器820編碼附加信息,附加信息包括與根據第ニ實施方式的樹形結構中的最大層數有關的信息以及與由最低層的每個節點指示的區域的尺寸有關的信息。編碼的附加信息被包括在比特流的頭部中。比特流的頭部可以是序列頭部、圖片頭部、切片頭部、宏塊頭部等。以下將參照圖9和圖10詳細描述通過使用樹形結構來編碼要編碼的信息的過程。圖9是示出根據本公開的第二實施方式的樹形結構的示例性示圖。
圖9A示出了單個圖片內具有要編碼的信息的區域。在圖9A中,每個區域可以是16X16像素宏塊。在每個區域內指示的A、B和C表示各個區域中要編碼的信息。此類信息可以是運動矢量精度,但是不限於此,並且可以是各種信息,諸如分區類型信息、幀內預測模式或者係數信息。在第二實施方式中,雖然假設每個區域是16X16像素宏塊,但是區域也可以是各種塊,諸如64 X 64像素塊、32 X 32像素塊、16 X 32像素塊、16 X 16像素塊、16X8像素塊、8 X 8像素塊、8 X 4像素塊、4X 8像素塊或者4X4像素塊。另外,各個區域可以具有不同的尺寸。圖9B示出了圖9A中所示的區域之中多組具有相同信息的區域。圖9C示出了與圖9B所示分組的區域有關的信息的樹形結構。在圖9C中,由最低節點指示的區域是16X16宏塊,並且樹形結構中的最大層數是4。因此,對此類附加信息進行編碼並且將其包括在相關區域的頭部中。圖10是示出根據本公開的第二實施方式的表示為樹形結構的信息編碼結果的示例性示圖。
如果編碼圖9C中所示的樹形結構的信息,則可以獲得如圖10所示的最終比特流。節點是否被劃分為下層的節點由單個比特來編碼。例如,比特值『I』表示當前節點被劃分為下層的節點,並且比特值『0』表示當前節點不被劃分為下層的節點。在最低層的節點的情況下,不對節點是否被劃分為下層的節點進行編碼,而是將最低層的節點的節點值編碼。在圖9C中,因為第0層的節點被劃分為下層的節點,所以使用比特值『I』來編碼第0層的該個節點。因為劃分出的第I層的第一節點的節點值是A,並且該第一節點不再被劃分為下層的節點,所以使用比特值『0』來編碼第一節點,並且編碼節點值A。因為第I層的第二節點被劃分為下層的節點,所以第二節點使用比特值『I』來編碼。因為第I層的第三節點不被劃分為下層的節點,所說第三節點使用比特值『0』來編碼,並且編碼節點值B。因為第I層的最後第四節點被劃分為下層的節點,所以最後第四節點使用比特值『I』編碼。按照相同的方式,編碼第2層的各個節點。在第3層中,在頭部中,最大層數被指定為4。因此,由於可以知道不再有下層的節點,所以僅編碼每個節點值。雖然為了方便起見使用A、B和C來指示各節點值,但是也可以將各節點值表示為ニ進位比持。另外,圖9的示例僅示出了兩種情況第一情況,節點被劃分為下層的節點;以及第ニ情況,節點不被劃分為下層的節點。在該實施方式中,在節點被劃分為下層的節點的情況下,節點劃分為4個節點。參照圖9,節點劃分為下層的4個節點意味著與將與當前層的節點相對應的區域劃分為4個相等的子區域。另選地,如圖11所示,可以按照多種形式將節點劃分為下層的節點。例如,可以不將節點劃分為下層的節點。可以按照兩個水平劃分區域的形式將節點劃分為下層的節點。可以按照兩個垂直劃分區域的形式將節點劃分為下層的節點。可以按照四個區域的形式將節點劃分為下層的節點。在這種情況下,可以將指示四種劃分類型的信息發送到解碼裝置。如果分組的區域不大,則編碼裝置800可以通過編碼指示上層的節點被劃分為特定層的節點的標記來減少用於指示存在下層的節點的比特的數量。例如,在比特流的頭部中指定最大層數為4並且要編碼的信息如圖12所示分布的情況下,圖12中所示的區域可以通過如圖13所示那樣對具有相同信息的區域進行分組來表示。在這種情況下,編碼裝置800可以將指示最高層的節點被劃分為第2層或者第3層的節點的標記編碼。因此,可以減少指示上層的節點被劃分為下層的節點的標記的數量,從而減少了比特的數量。圖14是示出根據本公開的第二實施方式的使用樹形結構的編碼方法的流程圖。對於根據本公開的第二實施方式的使用樹形結構的編碼方法,編碼裝置800對具有要編碼的預定區域之中具有相同信息的區域進行分組,並且將節點值和指示每ー層的各個節點是否被劃分的標記中的一個或多個編碼(步驟S1410),並且將附加信息編碼,附加信息包括與最大層數有關的信息以及與由最低層的每個節點所指示的區域的尺寸有關的信息(步驟S1420)。在步驟S1410,如果節點被劃分,則編碼裝置800可以編碼指示節點的劃分的標記。也就是說,編碼裝置800可以確定每ー層的節點是否被劃分。如果節點被劃分,則編碼裝置800可以僅編碼指示相應節點被劃分為下層的節點的標記,而不編碼相應的節點值。
在步驟S1410,如果節點沒有被劃分,則編碼裝置800可以編碼節點的節點值和指示節點沒有被劃分的標記。也就是說,編碼裝置800可以確定每ー層的節點是否被劃分。如果節點沒有被劃分,則編碼裝置800可以編碼相應節點的節點值以及指示相應節點沒有被劃分為下層的節點的標記。術語「節點的節點值」是指節點所擁有的信息。如果將具有相同信息的區域分組為單個節點,則所述相同信息是節點值。在步驟S1410,如果節點是最低層的節點,則編碼裝置800可以僅編碼相應節點的節點值。也就是說,編碼裝置800可以在確定每ー層的節點是否被劃分之前,確定要編碼的節點是否是最低層。如果相應節點是最低層,則編碼裝置800可以僅編碼相應節點的節點值,而不編碼指示相應節點是否被劃分的標記。在步驟S1420,編碼裝置800可以將具有編碼的附加信息的數據插入到比特流的頭部中。比特流的頭部可以是各種編碼単位的頭部,諸如序列頭部、圖片頭部、切片頭部或者宏塊頭部。在步驟S1410,在編碼指示節點被劃分的標記之後,編碼裝置800可以編碼指示節點被直接劃分為一個或多個下層的節點的標記。也就是說,在編碼指示節點是否被劃分的標記之後,如果相應節點被劃分為下層的節點,則編碼裝置可以編碼指示相應節點被再分為下面ー層的標記,並且還可以編碼指示相應節點被劃分為下面兩個或者更多個層的節點的標記。圖15是示意性地示出根據本公開的第二實施方式的使用樹形結構的解碼裝置的框圖。根據本公開的第二實施方式的使用樹形結構的解碼裝置1500可以包括附加信息解碼器1510和樹形解碼器1520,二者都用於可變尺寸的塊。用於可變尺寸的塊的附加信息解碼器1510解碼比特流以重構附加信息,附加信息包括與最大層數有關的信息以及與由最低層的每個節點指示的區域的尺寸有關的信息。用於可變尺寸的塊的樹形解碼器1520使用重構的附加信息來重構樹形結構。在這種情況下,用於可變尺寸的塊的附加信息解碼器1510從比特流的頭部中提取出具有編碼的附加信息的數據,並且解碼提取出的數據以重構附加信息。比特流的頭部可以是宏塊頭部、切片頭部、圖片頭部、序列頭部等。然而,用於可變尺寸的塊的附加信息解碼器1510並非必須包括在解碼裝置1500中,而是可以根據實現方案或者必要性而可選地包括。例如,在編碼裝置800和解碼裝置1500預先相互協商了最大層數和由最低層的每個節點指示的區域的尺寸的情況下,編碼裝置800可以不編碼附加信息。因此,解碼裝置1500也可以不通過解碼比特流而重構附加信息,而是可以通過使用預設附加信息來重構樹形結構。用於可變尺寸的塊的樹形解碼器1520基於附加信息來解碼比特流,以重構指示從最高層到最低層的每一層的節點是否被劃分的標記,並且通過根據重構的標記重構每ー層的節點的節點值來重構信息。也就是說,用於可變尺寸的塊的樹形解碼器1520基於由用於可變尺寸的塊的附加信息解碼器1510重構的附加信息或者預設的附加信息來解碼比特流。用於可變尺寸的塊的樹形解碼器1520確定從最高層到最低層的每一層的節點是否被劃分。如果沒有被劃分,則用於可變尺寸的塊的樹形解碼器1520通過重構節點的節點值來重構樹形結構,並且基於重構的樹形結構來重構要解碼的信息。將參照圖9和圖10提供有關於根據本公開的第二實施方式的由解碼裝置1500通過使用樹形結構來解碼比特流從而重構信息的過程的描述。
解碼裝置1500從比特流的宏塊頭部、切片頭部、圖片頭部或者序列頭部中提取出編碼的附加信息,並且解碼提取出的附加信息以重構附加信息。附加信息包括與樹形結構中的最大層數有關的信息以及與由最低層的每個節點指示的區域的尺寸有關的信息。解碼裝置1500從比特流中提取比特串,諸如圖10的最終比持。接著,如上所述,解碼裝置1500基於重構的附加信息和提取的比特串來重構樹形結構,如圖10示意性所示。例如,解碼裝置1500順序地讀取從比特流中提取出的最終比特的比特串的比特值,並且重構指示從最高層到最低層的每一層的節點是否被劃分為下層的節點的標記。如果重構的標記指示節點沒有被劃分為下層的節點,則解碼裝置1500讀取下ー比特串,並且重構相應節點的節點值。重構的節點值是要解碼的信息。另外,如果重構的標記指示節點被劃分為下層的節點,則解碼裝置1500讀取下一比特值,並且重構指示下一節點或者下一 層後的下一節點是否被劃分為下層的節點的標記。按照這種方式,解碼裝置1500順序地讀取比特串,並且重構信息一直到至最低層。同時,對於最低層的節點,解碼裝置1500不重構指示節點是否被劃分的標記,並且僅重構各個節點的節點值。在節點被劃分為下層的節點的情況下,節點被劃分為4個節點,如圖9示意性所示。參照圖9,節點被劃分為下層的4個節點意味著與當前層的節點相對應的區域被劃分為4個相等的子區域。另選地,如圖11中所示,可以按照多種形式將節點劃分為下層的節點。例如,可以不將節點劃分為下層的節點。可以按照兩個水平劃分區域的形式將節點劃分為下層的節點,可以按照兩個垂直劃分區域的形式將節點劃分為下層的節點。可以按照四個區域的形式將節點劃分為下層的節點。在這種情況下,從編碼裝置向解碼裝置1500發送指示四種劃分類型的信息。按照這種方式,解碼裝置1500通過從最高層到最低層重構信息來重構如圖9C中所示的樹形結構,並且基於重構的樹形結構來重構與圖9B和圖9A所示的各個區域有關的信息。如果通過從比特流的比特串中提取數據並且解碼所提取的數據而重構的標記指示特定層的節點被直接劃分為下面兩層或更下面的層的節點,則解碼裝置1500跳過對所指示的層之間的層的解碼,並且解碼相應節點的節點值和指示被指出的下層的節點是否被劃分的標記中的ー個或多個。
圖16是示出根據本公開的第二實施方式的使用樹形結構的解碼方法的流程圖。關於根據本公開的第二實施方式的使用樹形結構的解碼方法,解碼裝置1500解碼比特流以重構附加信息,附加信息包括與最大層數有關的信息以及與由最低層的每個節點指示的區域的尺寸有關的信息(步驟S1610)。解碼裝置1500基於附加信息解碼從比特流中提取的比特串,以重構指示從最高層到最低層的每一層的節點是否被劃分的標記,並且通過根據重構的標記重構每ー層的節點的節點值來重構信息(步驟S1620)。在步驟S1620,如果標記指示節點沒有被劃分為下層的節點,則解碼裝置150可以重構該節點的節點值。也就是說,解碼裝置1500重構指示每ー層的節點是否被劃分的標記,如果重構的標記指示相應節點的節點被劃分為下層的節點,則解碼下ー節點,並且在重構的標記指示相應節點的節點沒有被劃分為下層的節點時僅重構相應節點的節點值。在節點被劃分為下層的節點的情況下,節點被劃分為4個節點,如圖9示例性示出的。另選地,如圖11所示,可以按照各種形式將節點劃分為下層的節點。例如,可以不將節 點劃分為下層的節點。可以按照兩個水平劃分區域的形式將節點劃分為下層的節點。可以按照兩個垂直劃分區域的形式將節點劃分為下層的節點。可以按照四個區域的形式將節點劃分為下層的節點。在這種情況下,向解碼裝置1500發送指示四種劃分類型的信息。在步驟S1620,解碼裝置1500可以僅重構最低層的各個節點的節點值。也就是說,在重構用於指示每ー層的節點是否被劃分的標記和/或節點的節點值的過程中,解碼裝置1500預先確定要解碼的節點是否包括在最低層中。如果要解碼的節點包括在最低層中,則解碼裝置1500僅重構相應節點的節點值,而不重構指示相應節點是否被劃分的標記。在根據本公開的實施方式的使用樹形結構的編碼/解碼方法中,要編碼和解碼的信息不限於實施方式中提出的數據,而是可以應用於以下提出的各種信息的編碼和解碼。要編碼的信息可以包括與圖像信號有關的信息或者用於編碼圖像信號的各種信息,諸如宏塊尺寸和宏塊類型信息、指示用於預測和變換的子塊的尺寸和類型的宏塊分區信息、幀內預測信息、運動矢量、運動矢量預測方向、最優運動矢量預測候選、任意尺寸的區域的最優內插濾波器、圖像增強濾波器的使用與否、參考圖片索引、量化矩陣索引、最優運動矢量精度和變換尺寸信息、圖像像素信息、編碼塊信息或者指示預定塊內是否存在零以外的變換係數的係數信息。在本公開的實施方式中,宏塊具有可變尺寸作為視頻編碼和解碼的默認單位。根據本公開的實施方式,可以通過使用樹形結構來編碼宏塊尺寸信息。為此,根據本公開的實施方式的編碼裝置生成與宏塊的最大尺寸和最小尺寸有關的信息、與構成樹的最大層數有關的信息以及宏塊劃分分區標記,並且向解碼裝置發送生成的信息。可以將與宏塊的最大尺寸與最小尺寸有關的信息以及與構成樹的最大層數有關的信息包括在比特流中,作為序列、圖片組(G0P)、圖片、切片等的頭部信息。如圖9或者圖11所示,宏塊劃分標記可以通過使用樹形結構來編碼,並且可以包括在編碼單位的頭部中。換言之,根據本公開的實施方式的使用樹形結構而編碼和解碼的信息是上述宏塊劃分標記。可以利用分開確定的水平尺寸和垂直尺寸來設置宏塊的最大尺寸和最小尺寸,以允許使用任意尺寸的宏塊。另外,要編碼的宏塊的最大尺寸和最小尺寸可以被分配以實際尺寸,或者可以發送放大率以指示將預定尺寸放大或縮小特定倍數。為了編碼放大比率以用於通過將預定尺寸乘以特定倍數(被選擇為16)來生成最大宏塊尺寸,編碼了 Iog2 (選定的MB尺寸/16)的值。例如,如果宏塊尺寸是16X16,則編碼O。如果宏塊尺寸是32X32,則編碼I。另外,可以分開編碼水平尺寸和垂直尺寸的比率。另選地,在通過上述方法編碼最大宏塊尺寸值之後,通過使用指示最大宏塊尺寸與最小宏塊尺寸的比率的Iog2 (最大宏塊尺寸/最小宏塊尺寸)的值,可以編碼宏塊的最小尺寸值。相反,在通過上述方法編碼最小塊尺寸之後,通過使用Iog2 (最大宏塊尺寸/最小宏塊尺寸)的值,可以編碼最大宏塊尺寸值。 另外,根據本公開的實施方式,可以使用根據本公開的樹形結構來編碼和解碼宏塊分區信息。宏塊分區信息可以包括與用於預測和/或變換的子塊的最大尺寸 和最小尺寸有關的信息、與構成樹的最大層數有關的信息以及宏塊分區劃分標記,作為與用於預測和/或變換的子塊(也就是說,宏塊分區)的尺寸和/或類型相關的信息。根據本公開的實施方式的編碼裝置向解碼裝置發送宏塊分區信息。可以以整個圖片序列、G0P、圖片或者切片為單位確定用於預測和/或變換的子塊的最大尺寸和最小尺寸。可以將與用於預測和/或變換的子塊的最大尺寸和最小尺寸有關的信息以及與構成樹的最大層數有關的信息包括在比特流中,作為序列、G0P、圖片或者切片的頭部信息。另ー方面,通過使用根據本公開的實施方式的樹形結構,可以編碼宏塊分區信息之中的宏塊分區劃分標記。宏塊分區劃分標記可以包括在與編碼單位相對應的宏塊的頭部中或者宏塊分區的頭部中。另外,針對用於預測和/或變換的子塊尺寸,也就是說,預測和/或變換尺寸信息,可以分開地設置最大尺寸和最小預測的水平尺寸和垂直尺寸和/或變換尺寸。因此,可以使用具有任意尺寸的預測和/或變換。另外,可用的預測和/或變換的最大尺寸和最小尺寸可以被分配以實際尺寸,或者可以發送放大率以用於指示將預定尺寸放大或者縮小特定倍數。為了編碼放大比率以用於通過將預定尺寸乘以特定倍數(其被選擇為4)來生成最大預測和/或變換尺寸,編碼Iog2 (選擇的預測和/或變換/4)的值。例如,如果預測和/或變換尺寸是4X4,則編碼O。如果預測和/或變換尺寸事8X8,則編碼I。另外,可以分開地編碼水平尺寸和垂直尺寸的比率。另選地,在通過上述方法編碼最大預測和/或變換尺寸的值之後,通過使用指示最大預測和/或變換尺寸與最小預測和/或變換尺寸的比率的Iog2 (最大預測和/或變換尺寸/最小預測和/或變換尺寸)的值,可以編碼最小預測和/或變換尺寸的值。相反,在通過上述方法編碼最小預測和/或變換尺寸的值之後,通過使用Iog2(最大預測和/或變換尺寸/最小預測和/或變換尺寸)的值,可以編碼最大預測和/或變換尺寸的值。指示預定塊內是否存在非零的變換係數的編碼塊信息可以是I比特標記,該I比特標記指示用於預測或者變換而劃分的子塊內是否存在非零的變換係數。在這種情況下,可以針對亮度分量(Y)塊和色度分量(U,V)塊編碼不同的標記。對於亮度和色度分量(Y,U,V)的三個塊,可以由單個標記指示非零的變換係數是否存在。另選地,在編碼指示三個分量(Y,U,V)的所有塊內是否存在非零的變換係數的標記之後,可以在存在非零的變換係數時僅編碼變換類型,並且繼而可以分別編碼指示各個色度分量的子塊內是否存在非零的變換係數的標記。
根據本公開的上述實施方式,樹形編碼器通過對具有要編碼的圖像信息的區域之中具有相同信息的區域進行分組而生成要編碼的圖像信息的樹形結構。然而,這僅是生成樹形結構的ー個示例,並且對於本領域技術人員明顯的是,可以按照多種方式生成樹形結構。例如,通過將參考塊(例如,最大尺寸的宏塊)反覆劃分為較小尺寸的子塊,可以確定正在作為編碼/解碼單位的宏塊的尺寸或者用於預測或者變換的子塊的尺寸。換言之,通過將參考塊劃分為多個第一子塊,將第一子塊再分為較小尺寸的第二子塊,或者不對第一子塊進行再劃分,可以將用於預測或者變換的各種尺寸的宏塊或者子塊包括在單個圖片中。在這種情況下,是否將塊劃分為子塊可以由劃分標記指示。按照這種方式,宏塊尺寸信息(即,宏塊劃分標記)或者用於預測或者變換的子塊尺寸信息(即,宏塊分區劃分標記)具有如圖9B或者圖9C所示的樹形結構。雖然已經出於例示的目的而描述了本公開的示例性實施方式,但是本領域技術人員將理解,在不脫離本公開的本質特徵的情況下,各種修改、添加和替換都是可能的。因此,本公開的示例性方面不是為了限制性的目的而描述的。因此,本公開的範圍不由以上方面限定,而是由權利要求及其等同物限定。
エ業實用性如上所述,本公開對於編碼和解碼圖像的視頻壓縮處理中的應用是非常有用的,能夠通過在對多種圖像信息的編碼和對產生的編碼的數據的解碼中使用樹形結構而提高編碼效率,並且進而提高視頻壓縮效率。相關申請的交叉引用在適當的情況下,本申請按照35 U.S. C § 119(a)的規定要求於2009年12月10日在韓國提交的專利申請No. 10-2009-0122500和於2010年12月10日在韓國提交的專利申請No. 10-2010-0126315的優先權,在此通過引用方式併入其全部內容。另外,該非臨時申請要求基於韓國專利申請以相同的理由要求在除美國以外的其他國家的優先權,在此通過引用併入其全部內容。
權利要求
1.一種用於對圖像信息進行編碼的編碼裝置,該編碼裝置包括 樹形編碼器,其用於將具有所述圖像信息的預定區域分成多個組,通過將分組的區域內要編碼的信息的最小值或者最大值確定為與分組的區域有關的信息來生成一直到最高層的每ー層的節點值,並且對每ー層的節點值與上層的節點值之間的差值或者每ー層的節點值與基於預設標準確定的值之間的差值進行編碼;以及 附加信息編碼器,其用於對附加信息進行編碼,所述附加信息包括與最大層數有關的信息、與要分組的區域的數量有關的信息以及與每ー層的節點值是由下層的節點值中的最小值還是最大值確定的有關的信息。
2.一種用於對比特流進行解碼以重構信息的解碼裝置,該解碼裝置包括 附加信息解碼器,其用於對所述比特流進行解碼以重構附加信息,所述附加信息包括與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與每ー層的節點值是由下層的節點值中的最小值還是最大值確定的有關的信息;以及 樹形解碼器,其用於使用所述附加信息來對所述比特流進行解碼以對每ー層的節點值與上層的節點值之間的差值或者每ー層的節點值與基於預設標準確定的值之間的差值進行重構,將重構的差值與所述上層的節點值相加以重構每ー層的節點值,並且重構最低層的節點值作為要解碼的信息。
3.一種用於對圖像信息進行編碼的編碼裝置,該編碼裝置包括 樹形編碼器,其用於對具有所述圖像信息的預定區域中具有相同信息的區域進行分組,並且對節點值和指示每ー層的節點是否被劃分的標記中的一個或更多個進行編碼;以及 附加信息編碼器,其用於對附加信息進行編碼,所述附加信息包括與最大層數有關的信息以及與由最低層的各個節點指示的區域的尺寸有關的信息。
4.一種用於對比特流進行解碼以重構信息的解碼裝置,該解碼裝置包括 附加信息解碼器,其用於對所述比特流進行解碼以重構附加信息,所述附加信息包括與最大層數有關的信息以及與由最低層的各個節點指示的區域的尺寸有關的信息;以及 樹形解碼器,其用於基於所述附加信息來對所述比特流進行解碼以對指示從最高層到最低層的每一層的節點是否被劃分的標記進行重構,並且通過根據重構的標記對每ー層的節點的節點值進行重構來重構所述信息。
5.一種用於對圖像信息進行編碼的編碼方法,該方法包括 將具有所述圖像信息的預定區域分為多個組,並且通過將分組的區域內要編碼的信息的最小值或者最大值確定為與分組的區域有關的信息來生成一直到最高層的每一層的節點值;以及 對每ー層的節點值與上層的節點值之間的差值或者每ー層的節點值與基於預設標準確定的值之間的差值進行編碼。
6.根據權利要求5所述的編碼方法,該方法還包括對附加信息進行編碼,所述附加信息包括與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與每ー層的節點值是由下層的節點值中的最小值還是最大值確定的有關的信息。
7.根據權利要求5所述的編碼方法,該方法還包括對附加信息進行編碼,所述附加信息包括與最大層數有關的信息、與要分組的區域的數量有關的信息以及與每ー層的節點值是由下層的節點值中的最小值還是最大值確定的有關的信息。
8.根據權利要求5所述的編碼方法,其中對所述差值進行編碼的步驟通過利用ニ進位編碼來對所述差值進行編碼,或者通過在利用ニ進位編碼對所述差值進行編碼之後改變概率模型來執行ニ進位算術編碼。
9.根據權利要求8所述的編碼方法,其中所述概率模型基於相鄰層或者上層的節點值來確定,或者在每ー層差別地改變所述概率模型。
10.根據權利要求5所述的編碼方法,其中如果每ー層的節點值由下層的節點值之中的最小值確定,則對所述差值進行編碼的步驟跳過對具有最大節點值的層以下的層的節點值進行的編碼。
11.根據權利要求5所述的編碼方法,其中如果每ー層的節點值由下層的節點值之中的最大值確定,則對所述差值進行編碼的步驟跳過對具有最小節點值的層以下的層的節點值進行的編碼。
12.根據權利要求5所述的編碼方法,其中對所述差值進行編碼的步驟改變分配給要編碼的信息的編號,以根據要編碼的信息的發生概率來進行編碼。
13.根據權利要求5所述的編碼方法,其中在對最高層的節點值進行編碼時,編碼所述差值的步驟將所述最高層的上層的節點值設置為預定值,並且對所述最高層的節點值與設置的預定值之間的差值進行編碼。
14.一種用於對比特流進行解碼以重構信息的解碼方法,該解碼方法包括 對所述比特流進行解碼以對每ー層的節點值與上層的節點值之間的差值或者每ー層的節點值與基於預設標準確定的值之間的差值進行重構; 通過將重構的差值與所述上層的節點值或基於所述預設標準確定的值相加,重構每ー層的節點值;以及 將最低層的節點值重構為要解碼的信息。
15.根據權利要求14所述的解碼方法,該方法還包括對所述比特流進行解碼以對附加信息進行重構,所述附加信息包括與最大層數有關的信息、與最低層的區域的尺寸有關的信息以及與每ー層的節點值是由下層的節點值之中的最小值還是最大值確定的有關的信息。
16.根據權利要求14所述的解碼方法,其中對所述差值進行重構的步驟通過利用ニ進位解碼對所述比特流進行解碼來重構所述差值,或者通過在利用所述ニ進位解碼對所述比特流進行解碼之後改變概率模型來執行ニ進位算木編碼以對所述差值進行重構。
17.根據權利要求16所述的解碼方法,其中所述概率模型是基於相鄰層或者上層的節點值來確定的,或者在每ー層差別地改變所述概率模型。
18.根據權利要求14所述的解碼方法,其中對所述差值進行重構的步驟改變分配給要解碼的信息的碼編號,以根據要解碼的信息的發生概率來進行解碼。
19.根據權利要求14所述的解碼方法,其中如果每ー層的節點值被識別為由下層的節點值之中的最小值確定,則對每ー層的節點值進行重構的步驟按照最大值來重構具有最大節點值的層以下的層的所有節點值。
20.根據權利要求14所述的解碼方法,其中如果每ー層的節點值被識別為由下層的節點值之中的最大值確定,則對每ー層的節點值進行重構的步驟按照最小值來重構具有最小節點值的層以下的層的所有節點值。
21.根據權利要求14所述的解碼方法,其中在對最高層的節點值進行解碼時,對所述每ー層的節點值進行重構的步驟將最高層的上層的節點值設置為預定值,並且對所述最高層的節點值進行重構。
22.一種用於使用樹形結構來對圖像信息進行編碼的編碼方法,該編碼方法包括 形成樹形結構,其中每ー層包括至少ー個節點,並且所述節點被劃分為或者不被劃分為下層的節點; 對用於指示所述節點是否被劃分為所述下層的節點的標記進行編碼;以及將附加信息編碼為編碼的附加信息,所述附加信息包括與最大層數有關的信息以及與由最低層的各個節點指示的區域的尺寸有關的信息。
23.根據權利要求22所述的編碼方法,其中如果所述節點被劃分為所述下層的節點,則與所述節點相對應的圖像區域被劃分為具有相等尺寸的四個子區域。
24.根據權利要求22所述的編碼方法,該方法還包括如果所述節點沒有被劃分,則對所述節點的節點值進行編碼。
25.根據權利要求22所述的編碼方法,其中如果所述節點是最低層的節點,則不對用於指示所述節點的劃分與否的標記進行編碼,並且僅對所述節點的節點值進行編碼。
26.根據權利要求22所述的編碼方法,其中編碼的附加信息被包括在序列頭部中。
27.根據權利要求22所述的編碼方法,其中所述圖像信息是指示圖像塊內是否存在非零的變換係數的信息。
28.一種用於使用樹形結構來對圖像信息進行重構的解碼方法,該解碼方法包括 對附加信息進行重構,所述附加信息包括與構成所述樹形結構的最大層數有關的信息以及與由最低層的各個節點指示的區域的尺寸有關的信息;以及 基於所述附加信息對指示每ー層中包括的各個節點是否被劃分的標記進行重構,並且根據重構的標記來對每ー層的節點的節點值進行重構。
29.根據權利要求28所述的解碼方法,其中如果所述節點被劃分為下層的節點,則與所述節點相對應的圖像區域被劃分為具有相等尺寸的四個子區域。
30.根據權利要求28所述的解碼方法,其中如果所述標記指示所述節點沒有被劃分,則對所述節點值進行重構的步驟對在包括所述標記的層中一起包括的節點的節點值進行重構。
31.根據權利要求28所述的解碼方法,其中如果節點是最低層的節點,則不將指示劃分與否的標記包括在比特流中。
32.根據權利要求28所述的解碼方法,其中所述附加信息包括在序列頭部中。
33.根據權利要求28所述的解碼方法,其中所述圖像信息是指示圖像塊內是否存在非零的變換係數的信息。
全文摘要
本發明涉及一種使用樹形結構的編碼/解碼方法和裝置。本發明提供一種編碼關於圖像的信息的方法,該方法包括以下步驟將具有圖像信息的預定區域分成多個組,確定分組區域內要編碼的信息的最小值或最大值,所述信息與分組區域有關,並且產生一直到最高層的多個層中的每一層的節點值;以及編碼每一層的節點值與上層的節點值之間的差值或者每一層的節點值與根據預設基準確定的值之間的差值。根據本發明,使用樹形結構編碼與圖像有關的各種信息並且將編碼的數據解碼,由此提高編碼效率和圖像壓縮效率。
文檔編號H04N7/26GK102771125SQ201080063636
公開日2012年11月7日 申請日期2010年12月10日 優先權日2009年12月10日
發明者全炳宇, 崔栽燻, 文柱禧, 李圭珉, 李英烈, 林晶娟, 金東元, 金守年, 金海光, 韓鍾基 申請人:Sk電信有限公司