TW202127872A - 圖片編碼的裝置和方法 - Google Patents

圖片編碼的裝置和方法 Download PDF

Info

Publication number
TW202127872A
TW202127872A TW110109990A TW110109990A TW202127872A TW 202127872 A TW202127872 A TW 202127872A TW 110109990 A TW110109990 A TW 110109990A TW 110109990 A TW110109990 A TW 110109990A TW 202127872 A TW202127872 A TW 202127872A
Authority
TW
Taiwan
Prior art keywords
block
division
sub
picture
blocks
Prior art date
Application number
TW110109990A
Other languages
English (en)
Other versions
TWI830012B (zh
Inventor
亞當 威格斯基
凡勒利 喬治
托比亞斯 希歷
傑基 瑪
傑斯 布萊登堡
山帝亞哥 德盧山賀那丹
海哥 斯瓦爾
德凡 馬波
湯馬士 韋根
Original Assignee
弗勞恩霍夫爾協會
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 弗勞恩霍夫爾協會 filed Critical 弗勞恩霍夫爾協會
Publication of TW202127872A publication Critical patent/TW202127872A/zh
Application granted granted Critical
Publication of TWI830012B publication Critical patent/TWI830012B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一種基於區塊的解碼器,用於以編碼單位從一資料流解碼一圖片,該基於區塊的解碼器被配置為:藉由遞歸雙分割將該圖片的一圖片區塊劃分為該編碼區塊,並根該據資料流中的分割信息控制該遞歸雙分割;設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片的一預定分割級別的一預定子區塊分割成一後續分割級別的該對兒子子區塊,取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊分割為該預定的子區塊和另一個子區塊。

Description

圖片編碼的裝置和方法
本揭露的實施例涉及一種解碼器和用於解碼的一種方法以及一種編碼器和用於編碼圖片的該相應方法。該解碼和該編碼係使用分割(partitioning)來執行。
根據一第一觀點,應用一所謂的雙分割以將一區塊分割為子區塊。根據一第二觀點,一分割信息係用於對子區塊執行該雙分割。根據一第三觀點,基於經由上下文自適應熵編碼的解碼語法元素來執行子區塊的該分割。根據一第四觀點,藉由支持至少兩種模式的一裝置或方法來執行該分割。根據一第五觀點,基於分割比的一縮減列表來執行該分割,其中該第五觀點尤其涉及該縮減處理。
在最先進的視頻編碼中,例如ITU-T H.265|MPEG H HEVC視頻編碼標準(參考文獻[1]),一視頻序列的該圖片以一某種順序被編碼,其被稱為編碼順序。圖片的該編碼順序可以與該擷取和顯示順序不同。
對於該實際編碼,每個視頻圖片被分割為區塊。一區塊包括一特定顏色分量的一矩形區域的該樣本。對應於該相同矩形圖片區域的所有顏色分量的該區塊的該實體以及該相關聯的語法一起通常被稱為單元。取決於該區塊分割的目的,在ITU-T H.265|MPEG H HEVC中,它在編碼樹單元(CTU、Coding Tree Units)、編碼單元(CU、Coding Units)、預測單元(PU、Prediction Units)和變換單元(TU、Transform Units)之間進行區分。該相關聯的樣本區塊分別稱為編碼樹區塊(CTB、Coding Tree Blocks)、編碼區塊(CB、Coding Blocks)、預測區塊(PB、Prediction Blocks)和變換區塊(TB、Transform Blocks)。
通常,一視頻圖片最初被分割為固定大小的單元(即,對於所有顏色分量的對齊的固定大小的區塊)。在ITU-T H.265|MPEG H HEVC中,這些單元被稱為編碼樹單元(CTU)。它們的大小(在亮度樣本中)在該序列參數集(SPS、Sequence Parameter Set)中被傳輸,該序列參數集包含對一整個編碼視頻序列(包括一瞬時解碼刷新(IDR、Instantaneous Decoding Refresh)圖片和所有後續圖片(但不包括)下一個IDR圖片)的有效的高級別語法元素。在ITU-T H.265|MPEG H HEVC中,該CTU大小可在64x64、32x32和16x16亮度樣本之間選擇。請注意,一個CTU的該寬度和高度兩者均表示為2的一整數冪。包含在一個CTU中的樣本的該亮度和色度區塊稱為編碼樹區塊(CTB、Coding Tree Blocks)。為了進行編碼模式選擇、預測和該預測殘差的變換編碼的目的,可以將該固定大小的CTU自適應地分成較小的單元和區塊。
一圖片可以由一個或多個切片組成。一個切片表示CTU的一集合。一個切片與一個切片類型(例如,I、P或B切片)相關聯,該切片類型決定所支持的編碼模式的該集合。此外,諸如運動向量預測和圖片內預測的幾種類型的預測僅在一切片內的區塊之間被支持。
可以以多種方式執行對編碼單元和變換單元的該分割。例如,在現有技術中有以下分割方法。
在該最先進的視頻編碼標準ITU-T H.265|MPEG H HEVC(參考文獻[1])中,編碼單元和變換單元/變換區塊的該分割遵循一簡單的四叉樹(QT、Quadtree)概念。一正方形區塊可以分成該相同大小的四個正方形區塊,得到的區塊可以進一步分成該相同大小的四個正方形區塊等。對於預測單元,該標準還支持將一正方形區塊分成兩個非正方形區塊(相同大小或不同大小)。但是,該分割得到的非正方形方塊不能被進一步分割。在ITU-T H.264|MPEG-4 AVC (參考文獻[2])中已經支持將一正方形區塊分成兩個非正方形區塊的類似的一單層分割。
雖然該四叉樹分割非常簡單,但它的缺點是通常只能藉由將一大區塊分成許多較小的區塊來合理地近似一物體或運動邊界。這潛在地增加了用於發信號通知該預測參數(例如運動參數)的該位元率以及用於該預測誤差信號的該變換編碼的該位元率。為了提高該編碼效率的該目標,該聯合勘探測試模型(Joint Exploration Test Model)(參考文獻[3])指定了一種組合的四叉樹/二叉樹(QTBT、Quadtree/Binary tree)方法。在該方法中,預測單元(PU)和變換單元(TU)總是與編碼單元(CU)對齊;因此,基本上只有一種區塊類型。首先使用傳統的該四叉樹方法分割一個CTU。然後,可以藉由一二叉樹(BT)結構進一步分割該四叉樹葉節點。對於二進制分割,支持兩種分割類型:一水平分割,其將NxM區塊水平分割為兩個Nx(M/2)區塊,以及一垂直分割,其將NxN區塊垂直分割為兩個(N/2)xM區塊。可以繼續二進制分割,直到達到一最小區塊寬度/區塊高度或一執行最大數量的(二進制)分割。該所得到的區塊用於編碼模式信令、幀內圖片預測、幀間圖片預測和變換編碼。
參考文獻[4]中建議進一步擴展QTBT概念,其中為該二叉樹部分引入了兩種進一步的分割模式:一水平三重分割和一垂直三重分割。在該水平三重分割中,一個NxM區塊被分成三個區塊:一個Nx(M/4)、一個Nx(M/2)和一個Nx(M/4)區塊(從上到下)。該垂直三重分割將一個NxM區塊垂直分割成一個(N/4)xM、一個(N/2)xM和一個(N/4)xM區塊(從左到右/從第一到第二)。
在參考文獻[5]中提出了QTBT的另一個增強。在該提議中,除了該對稱的二進制分割,引入了將一個NxM區塊分成大小為Nx(M/4)和Nx(3M/4)以及(N/4)xM和(3N/4)xM的兩個子區塊的非對稱二進制分割。
本揭露的較佳實施例係隨後參照附圖描述。
從現有技術出發,本發明的一個目的是在效率方面改進該分割,特別是考慮到隨後的編碼。
該目的藉由獨立請求項的主題解決。這裡,將討論藉由使用一動態方法共同提高該效率的五個觀點。
第一個觀點
根據本申請的一第一個觀點,藉由使用多級別二進制分割分區並以一某種方式發信號通知該多級別分割分區,在從編碼器到解碼器的信令開銷方面,使圖片分割成區塊更有效率,使得一某個當前區塊的一某個分割級別的一個二進制分割的一分割方向以依賴於用於該前一分割級別的該父親區塊的該分割方向的一方式被設置,當前區塊已經藉由該前面的分割級別的一個二進制分割所導出。該設置可以取決於該分割信息和該父親區塊的分割方向。換句話說,該分割信息可以相對於該父親區塊的分割方向發信號通知該分割方向,反之,該父親區塊的分割方向也可能已由該分割信息發出信號-其係相對於該祖父區塊的該分割方向或絕對(獨立於此)。
該觀點的實施例提供了一基於區塊的解碼器10,用於以編碼區塊16為單位從一資料流14解碼一圖片12,其被配置為: 藉由遞歸雙分割將該圖片12的一圖片區塊18劃分為該編碼區塊16,並根據該資料流14中的分割信息控制該遞歸雙分割;以及 設置一第一分割線(例如,圖1的左上四分之一中的編碼單元1和編碼單元2之間的線)的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊16的一預定分割級別(級別2,級別0分配給區塊16)的一預定子區塊(圖1中的左上四分之一)分割成一對具有一後續分割級別(級別3)的兒子子區塊(編碼單元1和編碼單元2),取決於一第二分割線(圖1的左上和左下四分之一的線)的一第二分割線方向,沿著該第二分割線將該圖片區塊16的一個前一分割級別(級別1)的一祖父子區塊(圖1的左半部分;注意,該術語「祖父子區塊」應被理解為足夠寬廣以覆蓋該圖片區塊18本身)分割成該預定子區塊(左上四分之一)和另一個子區塊(左下四分之一)。
根據一實施例,該基於區塊的解碼器可以被配置為支持多種編碼模式(例如,幀間(例如,時間)或幀內(例如,空間)預測),並且以該編碼區塊為單位從該資料流導出一編碼模式,其用於解碼來自該資料流的該圖片(比較圖15中的模式選擇器)。
根據一實施例,該基於區塊的解碼器可以被配置為支持多種編碼模式,其中每種編碼模式具有與其相關聯的一個或多個編碼參數(例如,運動向量,並且也可以是用於幀間預測和幀內預測模式的參考圖片索引,例如,用於幀內預測的定向外推、DC和/或類似物)的一編碼模式特定集合,其使用該相應的編碼模式控制該圖片的一解碼,並且該基於區塊的解碼器被配置為以該編碼區塊為單位從該資料流導出用於從該資料流解碼該圖片的一個或多個編碼參數的該編碼模式特定集合,藉由從每個解碼單元的該數據流導出與該編碼模式相關聯的一個或多個編碼參數的該編碼模式特定集合,該編碼模式用信號通知用於該數據流中的相應編碼區塊16(比較圖15中的預測器)。
根據一個實施例,該基於區塊的解碼器可以是一預測解碼器,並且被配置為以頻譜變換的形式從該資料流導出一頻譜域中的該圖片的一預測殘差(參見圖15中的變換區塊),所述頻譜變換表示係以該編碼區塊16為單位的該預測殘差的一分段頻譜變換(例如,對於每個編碼區塊16,該預測殘差將在編碼器側被單獨地進行頻譜分解,以便為一個編碼單元獲得一個變換(例如DCT),並且逆變換將用於校正對應於該編碼區塊的該區域的該預測信號)。
根據一個實施例,該基於區塊的解碼器可以被配置為將該圖片12預分割成樹根區塊18的一陣列,並相對於樹根區塊18的該陣列的每個陣列執行該圖片區塊18的分割(如示例性地在圖14中描繪),或者將該圖片12預分割成樹根區塊18的一陣列,根據該分割信息,使該樹根區塊經歷一單獨的分割(例如,對於每個樹根區塊18可單獨發信號的四分割,其可能但不僅是遞歸地),以便將樹根區塊的該陣列細分為預分割樹葉區塊(在同一樹根區塊18中可能大小不同)並相對於每個預分割樹葉區塊執行該圖片區塊的該分割(該替代方案未在圖14中示出;於此,圖14中的每個區塊18可以單獨地預先細分為預分割樹葉區塊,然後從區塊18進行遞歸雙分割;作為一個從旁註解,應當注意,甚至該編碼區塊16也可以藉由一些其他類型的分割從遞該歸雙分割的該樹葉區塊中而被導出)。
根據一實施例,該基於區塊的解碼器可以被配置為藉由根據該分割信息修改(例如,在採用相同或採用垂直之間進行選擇)該第一分割線方向以取決於該第二分割線方向和該分割信息(例如,perpend_split_flag或parallel_split_flag)來設置該第一分割線方向,以獲得一修改的分割線方向並將該第二分割線方向設置為等於該修改後的分割線方向。
根據一個實施例,該基於區塊的解碼器可以被配置為根據由該分割信息(例如,perpend_split_flag或parallel_split_flag和split_ratio _...旗標)發信號通知的一個二元決策樹(例如,圖13中的20;於此,該樹20的每個節點示例性地不僅僅包括分割的一決定或者沒有分割(no-split),但也指示分割線方向加分割比)來控制該遞歸雙分割,該分割信息指示(不一定明確地為每個節點單獨進行,因為一些決策可能經由一般規則發出信號,例如在該適應集中列出的那些......)該圖片區塊的一分割或不分割(或者比剛才說的更多),該父親區塊藉由該遞歸雙分割被分割成該父親區塊的所有中間子區塊,並且所有樹葉區塊不被該遞歸雙分割所分割。
根據一個實施例,該基於區塊的解碼器可以被配置為控制屬於分割級別(例如,可能是所有分割級別,或者可能只是其子集)的一第一預定集合的該圖片區塊的每個子區塊的該遞歸雙分割,該第一預定集合取決於該分割信息(例如,藉由split_ratio _...)而相對於一分割線的一位置,該相應的子區塊藉由該遞歸雙分割沿著該分割線橫向於該分割線的一分割線方向被分割(換句話說,相對於橫向於該分割線方向測量的分割比)。
根據一個實施例,該基於區塊的解碼器可以被配置為控制屬於分割級別(例如,可能是所有分割級別,或者可能只是其子集)的一第一預定集合的該圖片區塊的每個子區塊的該遞歸雙分割,該第一預定集合取決於該分割信息(例如perpend_split_flag或parallel_split_flag和split_ratio _...旗標)而相對於一分割線的一分割線方向,藉由該遞歸雙分割沿著該分割線來分割相應的子區塊,其取決於該分割信息及一分割線的一分割線方向,沿其該相應中間區塊的父親區塊被分割。
根據該基於區塊的解碼器的一實施例,該第二分割線方向是水平的或垂直的,並且該基於區塊的解碼器被配置為根據該分割信息將該第一分割線方向設置為垂直於或平行於該第二分割線方向。
根據一個實施例,該基於區塊的解碼器可以被配置為在分割該圖片區塊時,根據該分割信息,決定將該圖片區塊分割為一對第一分割級別子區塊,或讓該圖片區塊未被分割,和如果該圖片的該圖片區塊被分割為該對第一分割級別子區塊,則根據該分割信息,將該對第一分割級別子區塊的一第一個第一分割級別子區塊分割成一對第二分割級別子區塊,或者讓該第一個第一分割級別子區塊未被分割,並且沿著具有一第三分割線方向的一第三分割線執行該圖片區塊的該分割,並且設置一第四分割線的一第四分割線方向,沿此該第一個第一分割級別子區塊取決於該第三分割線方向被分割。
根據一個實施例,該基於區塊的解碼器可以被配置為:如果該圖片的該圖片區塊被分割為該對第一分割級別子區塊,則根據該分割信息(即對於第一次分割,該方向是信號通知的)設置該第三個分割方向,從該資料流導出由該分割信息獲得的一第一分割旗標,和如果該第一分割旗標具有一第一旗標狀態,則將該第二分割方向設置為垂直於該第一個分割方向、並沿著該第二分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和如果該第一分割旗標具有一第二個旗標狀態,則使該第一個第一分割級別子區塊保持未分割(例如,對於後續級別的該分割,該方向僅僅垂直於先前的分割級別父親區塊)。這裡,如果該圖片的該圖片區塊被分割為該對第一分割級別子區塊,該基於區塊的解碼器可以從該資料流導出該分割信息包含的一第一分割旗標(例如 perpend_split_flag),和如果該第一分割旗標具有一第一旗標狀態,則將該第四分割方向設置為垂直於該第三個分割方向、並沿著該第四分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和如果該第一分割旗標具有一第二個旗標狀態,從該資料流導出由該分割信息包含的一第二分割旗標(例如parallel_split_flag),和如果該第二分割旗標具有一第一旗標狀態,則將該第四分割方向設置為平行於該第三個分割方向、並沿著該第四分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和如果該第二分割旗標具有一第二個旗標狀態,則使該第一個第一分割級別子區塊保持未分割。
根據一個實施例,該基於區塊的解碼器可以被配置為在分割該圖片區塊時,根據該分割信息,決定將該祖父子區塊分割成包括該預定子區塊的一對子區塊,或者讓該祖父子區塊未被分割,和如果該祖父子區塊被分割為該對子區塊,則根據該分割信息,將該對子區塊的該預定子區塊分割成一對兒子子區塊,或者讓該預定子區塊未被分割,並且沿著具有該第二分割線方向的該第二分割線執行分割該祖父子區塊,並且設置該第一分割線的該第一分割線方向,沿著該第一分割線分割該預定子區塊,取決於該第二個分割線方向。
根據一個實施例,該基於區塊的解碼器可以被配置為從該資料流導出該分割信息包含的一第一分割旗標(例如perpend_split_flag),和如果該第一分割旗標具有一第一旗標狀態,則將該第一分割線方向設置為垂直於該第二個分割線方向(在圖18中分離左上和左下四分之一)、並沿著該第一分割線將該預定子區塊(圖1左上角)分割成該對兒子子區塊(編碼單元1和編碼單元2),和如果該第一分割旗標具有一第二個旗標狀態,從該資料流導出由該分割信息包含的一第二分割旗標(例如parallel_split_flag),和如果該第二分割旗標具有一第一旗標狀態,則將該第一分割線方向設置為平行於該第二個分割線方向、並沿著該第一分割線將該預定子區塊分割成該對兒子子區塊(編碼單元1, 編碼單元2)和如果該第二分割旗標具有一第二個旗標狀態,則使該預定子區塊保持未分割(例如,以便成為編碼單位之一)。此處,該基於區塊的解碼器可以從該資料流導出由該分割信息包含的一第三分割旗標(例如perpend_split_flag),和如果該第三分割旗標具有該第一旗標狀態,則將該第五分割線的一第五分割線方向設置為垂直於該第二個分割線方向、並沿著一第五分割線(圖1中未顯示)將該對子區塊的另一子區塊(圖1左下角)分割成一另一對兒子子區塊,和如果該第三分割旗標具有該第二個旗標狀態,從該資料流導出該分割信息包含的一第四分割旗標(例如parallel_split_flag),和如果該第四分割旗標具有該第一旗標狀態,則將該第五分割線方向設置為平行於該第二個分割線方向、並沿著該第五分割線將該另一個子區塊分割成該另一對兒子子區塊,和如果該第二分割旗標具有該第二個旗標狀態,則使該另一個子區塊保持未分割。
可選地或另外地,該基於區塊的解碼器可以被配置為,如果該預定的子區塊被分成該對兒子子區塊,從該資料流導出由該分割信息包含的一第六分割旗標(例如perpend_split_flag),和如果該第六分割旗標具有該第一旗標狀態,則將該第七分割線的一第七分割線方向設置為垂直於該第一個分割線方向、並沿著一第七分割線將該對兒子子區塊的一第一兒子子區塊(編碼單元1)分割成一對孫子子區塊(未在圖1中描繪),和如果該第六分割旗標具有該第二旗標狀態,從該資料流導出由該分割信息包含的一第七分割旗標(例如parallel_split_flag),和如果該第七分割旗標具有該第一旗標狀態,則將該第七分割線方向設置為平行於該第一個分割線方向、並沿著該第七分割線將該第一兒子子區塊分割成該對孫子子區塊,和如果該第七分割旗標具有該第二個旗標狀態,則使該第一兒子子區塊保持未分割。
可選地或另外地,該基於區塊的解碼器被配置為,如果該預定的子區塊被分割成該對兒子子區塊(與第二分割線方向垂直或平行),從該分割信息導出一分割比(split_ratio_...),指示垂直於該第一分割線方向的該預定子區塊的寬度被分割的比率。
根據一個實施例,該基於區塊的解碼器可以支持一支持分割比的集合(例如集合A),用於沿著與該第二分割線方向垂直的該第一分割線分割該預定的子區塊,並且被配置為根據一個或多個規則從支持分割比的該集合中排除支持的分割比,獲得支持分割比的一縮減集合,並推斷該第一分割旗標具有該第二旗標狀態,並且如果該縮減集合的一基數為零則跳過其推導(換句話說,縮減的集合A是空的,或者,換句話說,集合A的所有成員都不可用)。
根據一個實施例,該基於區塊的解碼器可以支持一支持分割比的另一集合,用於沿著與該第二分割線方向平行的該第一分割線分割該預定的子區塊,並且被配置為根據一個或多個規則從支持分割比的該另一集合中排除支持的分割比,獲得支持分割比的一另一縮減集合,並推斷該第二分割旗標具有該第二旗標狀態,並且如果該另一縮減集合的一基數為零則跳過其推導。
這裡,該一個或多個規則中的一個可以取決於垂直於該第一分割線的該預定子區塊的該寬度,來排除所支持的分割比。可選地或另外地,該一個或多個規則中的一個規則根據垂直於該第一分割線的該預定子區塊的該寬度來排除所支持的分割比,以這樣的一方式排除支持的分割比,其將該寬度分成兩個兒子子區塊的寬度,以(測量的)樣本為單位,不是一預定整數(其可能是4,8或任何其他整數)的一整數倍。可選地或另外地,該一個或多個規則中的一個可以取決於垂直於該第一分割線的該預定子區塊的該寬度來排除支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分成兩個兒子子區塊,其中至少一個太小而不能完全封閉(不同地說,在沒有穿過該兒子子區塊的邊界的情況下係無法形容,而將允許寬鬆的記載文字(loose inscription))至少一個預定的最小尺寸區塊(例如,兩個,例如8x4和4x8)中的一集合的至少一個。可選地或另外地,該一個或多個規則中的一個可以取決於垂直於該第一分割線的該預定子區塊的該寬度,來排除所支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分割成兩個兒子子區塊,其中至少一個具有一寬高比(例如,水平寬度至垂直寬度、較短至較長寬度、垂直至水平寬度)在一可允許的寬高比範圍之外(例如寬高比被排除,其自身或其自身之倒數值超過某個閥值外)。可替代地或另外地,該一個或多個規則中的一個可以取決於垂直於該第一分割線的該預定子區塊的該寬度以排除支持的分割比,以這樣的一方式排除支持分割比的一預定子集合,其取決於該預定子區塊所屬的該遞歸雙分割的該分割級別(換句話說,可以根據當前子區塊的分割級別預先縮減集合A)。替代地或另外地,該一個或多個規則中的一個規則根據該圖片區塊的一個或多個其他子區塊(例如,對應於圖7a和7b和7c中的節點A的區塊)的一另一分割線的一另一分割方向以及一另一分割比來排除所支持的分割比,從其經由該遞歸雙分割獲得該預定子區塊(例如,對應於圖7a和7b中的節點B的區塊和對應於圖7c中的節點C的塊),其係藉由沿著該另一分割線和/或該圖片區塊的一個或多個甚至另一子區塊(例如,在圖7c對應於節點B的區塊)的一另一分割線的一甚至另一分割方向以及一甚至另一分割比,來分割該一個或多個另一子區塊,該圖片區塊藉由從一個或多個其他子區塊中的任何一個進行該遞歸雙分割而被獲得,從其該預定子區塊也藉由該遞歸雙分割被獲得。
另一實施例提供了一種用於以編碼區塊16為單位從一資料流14解碼一圖片12的方法,包括: -    藉由遞歸雙分割將該圖片12的一圖片區塊18分割為該編碼區塊16,並根據該資料流14中的分割信息控制該遞歸雙分割;以及 -    設置一第一分割線(例如,圖1左上角的編碼單元1和編碼單元2之間的線)的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊16的一預定分割級別(級別2,級別0分配給區塊16)的一預定子區塊(圖1左上角)分割成一後續分割級別(級別3)的一對兒子子區塊(編碼單元1,編碼單元2),取決於一第二分割線(分隔圖1的左上和左下四分之一的線)的一第二分割線方向,沿著該第二分割線將該圖片區塊16的一個先前分割級別(級別1)的一祖父子區塊(圖1的左半部分;注意術語「祖父子區塊」應被理解為足夠寬以覆蓋圖片區塊18本身)分割為該預定的子區塊(左上角)和另一個子區塊(左下角)。該方法可以是計算機實現的。因此,實施例提供了相應的計算機程式。
另一實施例提供了一種基於區塊的編碼器,用於以編碼區塊16為單位將一圖片12編碼為一資料流14,其被配置為:藉由遞歸雙分割將該圖片12的一圖片區塊18分割為該編碼區塊16,並根據分割信息控制(例如,以考慮速率/失真優化的一方式選擇分割信息)該遞歸雙分割並將該分割信息插入該資料流14;設置一第一分割線(例如,圖1左上角的編碼單元1和編碼單元2之間的線)的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊16的一預定分割級別(級別2,級別0分配給區塊16)的一預定子區塊(圖1左上角)分割成一後續分割級別(級別3)的一對兒子子區塊(編碼單元1,編碼單元2),取決於一第二分割線(分隔圖1的左上和左下四分之一的線)的一第二分割線方向,沿著該第二分割線將該圖片區塊16的一個先前分割級別(級別1)的一祖父子區塊(圖1的左半部分;注意術語「祖父子區塊」應被理解為足夠寬以覆蓋圖片區塊18本身)分成該預定的子區塊(左上角)和另一個子區塊(左下角)。
另一實施例提供了一種用於以編碼區塊16為單位將一圖片12編碼成一資料流14的該相應方法,包括: -    藉由遞歸雙分割將該圖片12的一圖片區塊18分割為該編碼區塊16,並根據分割信息控制(例如,以考慮速率/失真優化的一方式選擇分割信息)該遞歸雙分割並將該分割信息插入該資料流14;以及 -    設置一第一分割線(例如,圖1左上角的編碼單元1和編碼單元2之間的線)的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊16的一預定分割級別(級別2,級別0分配給區塊16)的一預定子區塊(圖1左上角)分割成一後續分割級別(級別3)的一對兒子子區塊(編碼單元1,編碼單元2),取決於一第二分割線(分隔圖1的左上和左下四分之一的線)的一第二分割線方向,沿著該第二分割線將該圖片區塊16的一個先前分割級別(級別1)的一祖父子區塊(圖1的左半部分;注意術語「祖父子區塊」應被理解為足夠寬以覆蓋圖片區塊18本身)分成該預定的子區塊(左上角)和另一個子區塊(左下角)。該方法也可以是計算機實現的。
第二個觀點
根據本申請的一第二觀點,藉由允許從支持分割比的一集合中的一選擇,使圖片分割成區塊更有效率。可以根據一個或多個規則將該支持集合簡化為一縮減集合,以便根據想法去除不允許或不合理的支持的分割比,從而減少必要的分割信息的該數量。
該觀點2的實施例提供了一基於區塊的解碼器10,用於以編碼區塊16為單位從一資料流14解碼一圖片12,其被配置為藉由遞歸雙分割將該圖片12的一圖片區塊18分割為該編碼區塊16,並根據該資料流14中的分割信息控制該遞歸雙分割,其中該遞歸雙分割的該控制包括控制相對於該圖片區塊18的一預定子區塊(例如,圖1中的任何區塊對應於圖2中的任何節點,因此包括區塊18本身,但也包括藉由分割獲得的部分)的該雙分割,並依據 -  是否該預定子區塊要被分割或者將其保留為不分割, -  一分割線的一分割線方向(例如水平或垂直),在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,和/或 -  一分割比,在其中垂直於該分割線的該圖片區塊的該預定子區塊的一寬度被該分割線穿過; 其中,該基於區塊的解碼器支持一支持分割比的集合(例如集合A),用於分割該預定的子區塊,並且被配置為用於沿著具有一預定分割線方向的一分割線的該預定子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比,以獲得支持分割比的一縮減集合,其中,該基於區塊的解碼器被配置為根據支持分割比的該縮減集合,來控制相對於該圖片區塊的該預定子區塊的該雙分割。
根據一實施例,該解碼器可以被配置為根據該縮減集合(例如,就該各個子區塊的該分割信息所包含的語法元素的數量而言,即從其中讀取的語法元素的數量,或者就位元流域中的平均位元數而言,例如在熵編碼之後;另見下一段的例子)的一基數,減少用於控制相對於該圖片區塊的該預定子區塊的該遞歸雙分割的該分割信息的一片段。
根據一實施例,該解碼器可以被配置為在解析該分割信息的該片段時,跳過指示該預定子區塊是要分割還是不要分割的一旗標(例如perpend_split_flag或parallel_split_flag或ver_split_flag或hor_split_flag),或者如果該縮減集合是空的則指示該分割線的該分割方向的一旗標(例如perpend_split_flag或parallel_split_flag或ver_split_flag或hor_split_flag),和/或在解析該分割信息的該片段時,如果該縮減集合的該基數為1,則跳過指示該分割線的該分割比的一索引(例如旗標的一集合,例如split_ratio _...),和/或在對該索引進行熵解碼時,改變該索引的可能值的一域以專門地參考該縮減集合,或者針對所支持的該縮減集合的支持分割比與所支持分割比的該集合相比,花費更短的字碼長度。
根據一實施例,該一個或多個規則中的該一個可以取決於垂直於該預定分割方向的該預定子區塊的該寬度,來排除所支持的分割比(例如,在圖1的區塊18的情況下寬度垂直測量為128,或者在對應於節點F的區塊的情況下寬度水平測量為24,該節點F是分割為編碼單元3和編碼單元4)。
根據一個實施例,該一個或多個規則中的該一個可以取決於垂直於該預定分割方向的該預定子區塊的該寬度來排除支持的分割比,以這樣的一方式排除支持的分割比,其將該寬度分成兩個兒子子區塊的寬度,在樣本中不是一預定整數的一整數倍(比較上述)。
根據一個實施例,該一個或多個規則中的該一個可以取決於垂直於該預定分割方向的該預定子區塊的該寬度以排除支持的分割比,以這樣的一方式排除支持的分割比,其將該寬度分成兩個兒子子區塊的寬度在樣本中彼此是一整數倍。
根據一個實施例,該一個或多個規則中的該一個可以取決於垂直於該預定分割方向的該預定子區塊的該寬度來排除支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分成兩個兒子子區塊,其中至少一個太小而不能完全包圍至少一個預定的最小尺寸區塊中的至少一個的一集合(比較上述)。
根據一個實施例,該一個或多個規則中的該一個規則根據垂直於該預定分割方向的該預定子區塊的該寬度來排除支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分成兩個兒子子區塊,其中至少一個超過一預定寬高比(比較上述)。
根據一個實施例,該一個或多個規則中的該一個規則可以根據於垂直於該預定分割方向的該預定子區塊的該寬度來排除支持的分割比,以這樣的一方式排除支持分割比的一預定子集合,其取決於該預定子區塊所屬的該遞歸雙分割的該分割級別(比較上述)。
根據一實施例,該一個或多個規則中的該一個規則可以根據該圖片區塊的一個或多個其他子區塊的一另一分割線的一另一分割方向以及一另一分割比來排除所支持的分割比,從其經由該遞歸雙分割獲得該預定子區塊,其係藉由沿著該另一分割線分割一個或多個另外的子區塊(比較上述)。
根據一個實施例,該解碼器可以被配置為取決於支持分割比的該縮減集合,其係藉由該分割信息向該縮減集合發送信號以限制支持分割比,俾來控制相對於該圖片區塊的該預定子區塊的該雙分割,並且該一個或多個規則中的一個排除支持的分割比,以便減少該分割信息的多個冗餘設置的一數量(例如,導致該圖片區塊的該相同分割的設置的該數量,例如,如圖13中所示一個)。
根據一個實施例,支持分割比的該集合可以是不可約分分數的一集合:
Figure 02_image001
, 其中
Figure 02_image003
,使得每對分割比
Figure 02_image005
Figure 02_image007
,與
Figure 02_image009
表示互補的非對稱分割,並且其中,如果對於
Figure 02_image011
Figure 02_image013
,則
Figure 02_image015
Figure 02_image017
,並且其中每個支持的分割比表示一寬度的一比率,其係 一左和右兒子子區塊中的一個是由沿著具有該預定分割方向的一分割線以相對於(例如除以)該預定子區塊的該寬度的該分割比來分割該預定子區塊所產生的,如果該預定的分割方向是垂直的,兩者測量都垂直於該分割方向,以及 一上和下兒子子區塊中的一個是由於沿著具有該預定分割方向的一分割線以相對於該預定子區塊的該寬度的該分割比來分割該預定子區塊所產生的,如果該預定的分割方向是水平的,兩者測量都垂直於該分割方向。
根據一個實施例,該一個或多個規則中的該一個可以排除,如果該預定的分割方向平行於一分割線的該分割方向,沿此該預定子區塊的該父親子區塊被分割,並且如果該預定子區塊的一寬度是該父親子區塊的寬度的
Figure 02_image019
倍,則
Figure 02_image019
是該父塊的分割比例(例如,該預定子區塊是該分子所涉及的子區塊),支持分割比
Figure 02_image021
,其中該父親區塊(例如該子區塊其實際上寬度將是該父親子區塊的寬度的(1-
Figure 02_image019
)倍)被分割成該另一個區塊的一分割比
Figure 02_image023
,並且在該支持分割比(這樣該預定的子區塊的寬度將是父親子區塊的寬度的
Figure 02_image025
倍,而該另一個子區塊的寬度將是該父親子區塊的寬度的(1-
Figure 02_image025
)倍)的該集合中該父親子區塊的一分割比
Figure 02_image025
Figure 02_image027
Figure 02_image029
,和/或如果該預定的分割方向平行於一分割線的該分割方向,沿此該預定子區塊的該父親子區塊被分割,並且如果該預定的子區塊具有一寬度
Figure 02_image031
該父親子區塊寬度的
Figure 02_image033
倍,
Figure 02_image025
是該父親區塊的分割比例,支持分割比
Figure 02_image023
,其中該父親區塊被分割成該另一個區塊的一分割比
Figure 02_image021
,並且在支持分割比的該集合中該父親子區塊的一分割比
Figure 02_image019
,其中
Figure 02_image027
Figure 02_image029
根據一實施例,該一個或多個規則中的該一個排除一支持的分割比,如果該預定的分割方向垂直於一分割線的該分割方向,沿此該預定子區塊的該父親子區塊被分割,並且與該另一個子區塊平行,其係該父親子區塊分割成的,即
Figure 02_image035
的一個
Figure 02_image021
,其中
Figure 02_image037
是該另一個區塊的該分割比。
根據一個實施例,根據該觀點的該解碼器還可以根據觀點一進行該分割,即 藉由遞歸雙分割將該圖片12的一圖片區塊18分割為該編碼區塊16,並根據該資料流14中的分割信息控制該遞歸雙分割,以及 設置一第一分割線(例如,圖1左上角的編碼單元1和編碼單元2之間的線)的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊16的一預定分割級別(級別2,級別0分配給區塊16)的一預定子區塊(圖1左上角)分割成一後續分割級別(級別3)的一對兒子子區塊(編碼單元1,編碼單元2),取決於一第二分割線(分隔圖1的左上和左下四分之一的線)的一第二分割線方向,沿著該第二分割線將該圖片區塊16的一個先前分割級別(級別1)的一祖父子區塊(圖1的左半部分;注意術語「祖父子區塊」應被理解為足夠寬以覆蓋圖片區塊18本身)分成該預定的子區塊(左上角)和另一個子區塊(左下角)。
一個實施例提供了一種用於以編碼區塊16為單位從一資料流14解碼一圖片12的方法,包括: -    藉由遞歸雙分割將該圖片12的一圖片區塊18分割為該編碼區塊16,並根據該資料流14中的分割信息控制該遞歸雙分割,其中該遞歸雙分割的該控制包括根據該圖片區塊18的一預定子區塊(例如,圖1中對應於圖2中的任何節點的任何區塊,因此包括區塊18本身,但也包括藉由分割獲得的其中的一部分)控制該雙分割,並依據: 是否該預定子區塊要被分割或者將其保留為不分割, 一分割線的一分割線方向(例如水平或垂直),在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,和/或 一分割比,在其中垂直於該分割線的該圖片區塊的該預定子區塊的一寬度被該分割線穿過; -    支持一支持分割比的集合(集合A),用於分割該預定的子區塊,並且被配置為針對沿著具有一預定分割線方向的一分割線的該預定子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比,獲得支持分割比的一縮減集合, -    根據支持分割比的該縮減集合,來控制相對於該圖片區塊的該預定子區塊的該雙分割。
根據一個實施例,該方法可以使用一計算機或CPU來執行。因此,一實施例提供了相應的計算機程式。
一實施例提供了一種基於區塊的編碼器,用於以編碼區塊16為單位將一圖片12編碼為一資料流14,被配置為藉由遞歸雙分割將該圖片12的一圖片區塊18分割為該編碼區塊16,並根據分割信息控制該遞歸雙分割並將該分割信息插入該資料流14,其中該遞歸雙分割的該控制包括控制相對於該圖片區塊18的一預定子區塊(例如,圖1中對應於圖2中任何節點的任何區塊,因此包括區塊18本身,但也包括藉由分割獲得的部分)的該雙分割,並依據是否該預定子區塊要被分割或者將其保留為不分割;一分割線的一分割線方向(例如水平或垂直),在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割;以及一分割比,在其中垂直於該分割線的該圖片區塊的該預定子區塊的一寬度被該分割線穿過。此處,該基於區塊的編碼器支持一支持分割比的集合(例如集合A),用於分割該預定的子區塊,並且被配置為針對沿著具有一預定分割線方向的一分割線的該預定子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比,獲得支持分割比的一縮減集合。另外,該基於區塊的邊碼器被配置為根據支持分割比的該縮減集合,來控制相對於該圖片區塊的該預定子區塊的該雙分割。
該基於區塊的編碼器可以被配置為以一種方式控制相對於該圖片區塊的該預定子區塊的該雙分割,這取決於所支持的分割比的該縮減集合,使得在該資料流中的該分割信息取決於支持的分割比的該縮減集合。
另一實施例提供了一種用於以編碼區塊16為單位將一圖片12編碼成一資料流14的方法,其被配置為 -    藉由遞歸雙分割將該圖片12的一圖片區塊18分割為該編碼區塊16,並根據分割信息控制該遞歸雙分割並將該分割信息插入該資料流14,其中該遞歸雙分割的該控制包括控制相對於該圖片區塊18的一預定子區塊(例如,圖1中的任何區塊對應於圖2中的任何節點,因此包括區塊18本身,但也包括藉由分割獲得的部分)的該雙分割,並依據是否該預定子區塊要被分割或者將其保留為不分割,一分割線的一分割線方向(例如水平或垂直),在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,以及一分割比,在其中垂直於該分割線的該圖片區塊的該預定子區塊的一寬度被該分割線穿過; - 支持一支持分割比的集合(集合A),係用於分割該預定的子區塊,並且被配置為針對沿著具有一預定分割線方向的一分割線的該預定子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比,獲得支持分割比的一縮減集合, -    根據支持分割比的該縮減集合,來控制相對於該圖片區塊的該預定子區塊的該雙分割。
根據一個實施例,該方法可以使用一計算機或CPU來執行。因此,一實施例提供了相應的計算機程式。
注意,只要該雙分割的基於分割信息之控制保持不變,可以在編碼器一側完成一些「排除規則」,這些規則在解碼器一側不被檢查或模擬,其使用該相同的排除規則集合。
第三個觀點
根據本申請的一第三觀點,圖片劃分成區塊-可以是遞歸雙分割或任何其他遞歸多分割-會經由以下方式更有效地呈現:上下文自適應地熵解碼使用依賴於一個或多個相鄰編碼區塊的一大小的一上下文來控制一預定圖片區塊的一預定子區塊的一分割的一個或多個語法元素,其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
該第三觀點的一實施例提供了一基於區塊的解碼器10,用於以編碼區塊16為單位從一資料流14解碼一圖片12,其被配置為經由遞歸分割沿著一編碼次序將該圖片12的一個或多個圖片區塊18分割為該編碼區塊16,並根據該資料流中的分割信息控制該遞歸分割,並且來自該分割信息的上下文自適應地熵解碼使用依賴於一個或多個相鄰編碼區塊(例如A1、A2、B1和B2)的一大小(比較「面積」)的一上下文來控制一預定圖片區塊的一預定子區塊的一分割的一個或多個語法元素(例如split_ratio _...),其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
根據一個實施例,該基於區塊的解碼器可以被配置為將該圖片預分割成圖片區塊的一陣列,並且其中該編碼順序以一光柵掃描順序(raster scan order)遍歷該圖片區塊。
根據一個實施例,在每個圖片區塊內,該編碼順序遵循一深度優先或廣度優先的遍歷順序。
根據一個實施例,其中該一個或多個語法元素控制關於一預定子區塊的該遞歸雙分割,並根據: 是否該預定子區塊要被分割或者將其保留為不分割, 一分割線的一分割方向,在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,和 一分割比,在其中該圖片區塊的該預定子區塊的一寬度,垂直於該寬度,其被該分割線穿過。
根據一實施例,該一個或多個語法元素中的該一個在一分割比方面控制相對於一預定子區塊的該遞歸雙分割,在該分割比下,該圖片區塊的該預定子區塊的一寬度,垂直於該寬度,其被一分割線穿過,在該分割線處,該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,並且其中該一個語法元素的該上下文取決於相鄰編碼區塊的該大小,在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的該相鄰編碼區塊。
根據一實施例,該解碼器可以另外包括根據觀點1和/或觀點2的一解碼器。
另一實施例提供了一種用於以編碼區塊16為單位從一資料流14解碼一圖片12的方法,包括: -    經由遞歸分割沿著一編碼次序將該圖片12的一個或多個圖片區塊18分割為該編碼區塊16,並根據該資料流中的分割信息控制該遞歸分割, -    來自該分割信息的上下文自適應地熵解碼使用依賴於一個或多個相鄰編碼區塊(例如A1、A2、B1和B2)的一大小(比較「面積」)的一上下文來控制一預定圖片區塊的一預定子區塊的一分割的一個或多個語法元素(例如split_ratio _...),其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
可以使用具有用於執行方法的一程式代碼的一計算機程式來執行該方法。
另一實施例提供了一種用於以編碼區塊16為單位從一資料流14編碼一圖片12的方法,其被配置為經由遞歸分割沿著一編碼次序將該圖片12的一個或多個圖片區塊18分割為該編碼區塊16,並根據分割信息控制該遞歸分割並將該分割信息插入該資料流,並且上下文自適應熵編碼將一個或多個語法元素(例如split_ratio _...)編碼成該分割信息,該語法元素使用取決於一個或多個相鄰編碼區塊(例如A1、A2、B1和B2)的一大小(比較「面積」)的一上下文來控制一預定圖片區塊的一預定子區塊的一分割,其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
另一實施例提供了一種用於以編碼區塊16為單位從一資料流14編碼一圖片12的相應方法,包括: -    經由遞歸分割沿著一編碼次序將該圖片12的一個或多個圖片區塊18分割為該編碼區塊16,並根據分割信息控制該遞歸分割並將該分割信息插入該資料流,並且 -    上下文自適應熵編碼將一個或多個語法元素(例如split_ratio _...)編碼成該分割信息,該語法元素使用取決於一個或多個相鄰編碼區塊(例如A1、A2、B1和B2)的一大小(比較「面積」)的一上下文來控制一預定圖片區塊的一預定子區塊的一分割,其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
根據一個實施例,該方法可以使用一計算機或CPU來執行。因此,一實施例提供了相應的計算機程式。
第四個觀點
根據本申請的一第四個觀點,經由支持至少兩種模式,在這兩種模式之間一切換是可行的,並且在執行該分割的自由度方面不同,圖片劃分成區塊-可以是遞歸雙分割或任何其他遞歸多分割-將更有效地呈現。檔次和級別可以與不同的模式相關聯,反之,不同的模式又可以由上述「適應集合」來定義。可以以整個視頻、圖片序列、圖片、切片為單位或甚至以單個圖片區塊為單位來選擇「適應集合」。可以經由收集大資料來「學習」該(或一些)適應集合,並將其分發給該解碼器和編碼器。
根據該觀點4的一實施例,其提供了一種基於區塊的解碼器,用於以編碼區塊為單位對來自一資料流的一圖片進行解碼,該解碼器被配置為經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸分割。該基於區塊的解碼器支持至少兩種模式,在這兩種模式之間該基於區塊的解碼器是可切換的,並且在執行該分割的自由度方面不同。
根據一實施例,該基於區塊的解碼器被配置為使得該至少兩種模式在以下一個或多個方面不同: 一最小區塊大小,其必須適合每個編碼區塊, 一最大分割樹深度, 在一當前圖片區塊的一當前子區塊的一分割之後的一最大分割樹深度,其中該分割沿著一分割線,其係垂直於一父親區塊的一分割線,該當前子區塊是該父親區塊的子區塊, 一當前圖片的子區塊的一最大區塊大小,其中允許非對稱分割, 由一當前圖片區塊的一當前子區塊的一分割所產生的兒子子區塊的一最大寬高比, 由一當前圖片區塊的一當前子區塊的一分割所產生的兒子子區塊的一最小寬高比, 一當前圖片區塊(例如超出一某個圖片邊界的那些)的預設分割,其根據該分割信息以從該遞歸雙分割的一開始, 用於分割一當前圖片區塊的一當前子區塊的支持分割比的一集合(例如集合A組); 沿著具有一預定分割方向的一分割線的一當前子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比。
根據一實施例,該基於區塊的解碼器可以被配置為根據以下中的一個或多個在該至少兩個模式之間切換: 該資料流中的信令, 到目前為止使用的模式的一歷史(例如,在解碼期間形成使用模式的一統計資料), 一空間預測器(例如,編碼模式、預測參數和/或用於相鄰編碼/預測區塊的分割信息), 一當前圖片區塊超出一外部或內部圖片邊界的一擴展程度。
根據一實施例,該基於區塊的解碼器可以被配置為以下列單元為單位,而在至少兩個模式之間切換: 一個圖片序列, 一圖片的樹根區塊, 圖片區塊(可能是樹根區塊)。
根據實施例,該觀點4的該解碼器可以另外包括根據觀點1、2和/或3的一解碼器。
另一實施例提供了一種用於以編碼區塊為單位從一資料流解碼一圖片的方法,包括:藉由遞歸分割將該圖片的一個或多個圖片區塊沿一編碼順序分割為該編碼區塊,並根據在該資料流中的分割信息控制該遞歸分割,並且支持至少兩種模式或在至少兩種模式之間切換(在執行該分割的自由度方面不同)。
根據一個實施例,該方法可以使用一計算機或CPU來執行。因此,一實施例提供了相應的計算機程式。
另一實施例提供了基於區塊的編碼器,用於以編碼區塊為單位對來自一資料流的一圖片進行編碼,被配置為藉由遞歸分割將該圖片的一個或多個圖片區塊沿著一編碼順序分割為該編碼區塊,同時根據分割信息控制該遞歸分割並將該分割信息插入到該資料流中,其中該基於區塊的編碼器支持至少兩種模式,在這兩種模式之間該基於區塊的編碼器是可切換的,並且在執行該分割的自由度方面不同。
另一實施例提供了用於以編碼區塊為單位對來自一資料流的一圖片進行編碼的方法,包括:藉由遞歸分割將該圖片的一個或多個圖片區塊沿一編碼順序分割為該編碼區塊,並根據分割信息控制該遞歸分割,並且將分割信息插入該資料流中,並支持至少兩種在執行該分割的自由度方面不同的模式。
根據一個實施例,該方法可以使用一計算機或CPU來執行。
第五個觀點
根據本申請的一第五個觀點,經由使用分割比的一集合使一分割比的該編碼顯現更有效率,所述分割比的集合包括例如相等分割和不對稱分割對(相互為倒數的比率),減少該集合並且使用一相應縮減的(或修剪的)二叉樹作為二值化方案,以用於二值化/和去二值化一索引到該縮減列表中。
觀點5的一實施例提供了一解碼器(例如,可能在圖15的該提取器內的一模塊),用於解碼指向來自一資料流的一分割比的一索引,該解碼器被配置為藉由根據一個或多個規則去除分割比來減少分割比的一基本列表30,以便獲得分割比的一縮減列表32,其中該基本列表30對應於一個二叉樹34的樹葉42、37,其與該基本列表30的相應分割比相關聯,並且該縮減列表32對應於由該二叉樹34產生的一個縮減二叉樹50,其係經由從樹葉42、37到主根節點44,移除該二叉樹34中其該子節點不屬於該縮減列表32的每個節點40、38,並且代替具有僅一個未移除的子節點的該二叉樹34的每個節點,將該未移除的子節點直接附加到該二叉樹34的該節點,其相應中間節點係該節點的子節點,其中,該縮減二叉樹50的左邊(第一個)分支(在圖5和6中示例性地分配為“0”)與一第一個二元決策(bin)值相關聯,而該縮減二叉樹50的右邊(第二個)分支(在圖5和6中示例性地分配為“1”)與一第二個二元決策(bin)值相關聯,並且該縮減列表32的每個分割比與一個二元決策值序列相關聯的,其對應於與該分支相關聯的二元決策(bin)值的一個序列,該分支在該縮減二叉樹50中從該縮減二叉樹50的一主根節點52導向與相應的分割比相關聯的該縮減二叉樹50的一樹葉54,針對對應於一個或多個二元決策(例如,由各個split_ratio _...旗標形成)的一序列的一個二元決策字串(例如,由split_ratio _...旗標形成)進行熵解碼,從該縮減二叉樹50的該主根節點52開始,遍歷該縮減二叉樹50到該縮減二叉樹的樹葉54之一,該二元決策(bin)字串的每個二元決策(bin)對應於由一個或多個二元決策(bin)的該序列所遍歷的該縮減二叉樹50的該節點的一個;使用該縮減二叉樹作為一個二值化方案,對該二元決策(bin)字串進行去二值化,以便獲得該索引。
根據一實施例,該基本列表30是不可約分分數一的列表
Figure 02_image039
, 其中
Figure 02_image003
,使得每對分割比
Figure 02_image005
Figure 02_image007
,與
Figure 02_image009
Figure 02_image005
Figure 02_image007
表示互補的非對稱分割,並且其中,如果對於
Figure 02_image011
Figure 02_image013
,則
Figure 02_image015
Figure 02_image017
,並且該二叉樹34由具有2n個樹葉37的一個部分樹36組成,所有樹葉37藉由該部分樹36的n-1個中間節點40連接到該部分樹36的一樹根38,該部分樹36並且從左到右對應於該基本列表30的第二到第(2n+1)個成員,一個分離樹葉42對應於分割比1/2,該分離樹葉42藉由一第一分支46連接到一主根節點44,該部分樹的該根節點藉由一另一個分支48連接到該主根節點。
根據一實施例,該解碼器可以被配置為針對一個或多個二元決策(bin)的該序列的至少一個二元決策(bin)子集合執行該上下文自適應熵解碼,以及以一種方式決定該熵解碼的一個上下文,使得該上下文的該決定不同於該二元決策(bin)子集合的該二元決策(bin)。
根據一實施例,該解碼器可以被配置為針對該二元決策(bin)字串的至少一個預定二元決策(bin)執行執行該上下文自適應熵解碼,並且被配置為,根據該二叉樹34中的一位置(例如,分割級別)決定用於對該預定二元決策(bin)進行該熵解碼的一上下文,其中對應於該預定二元決策(bin)的該縮減二叉樹52的該節點源於該二叉樹34的該縮減(坦率地說,例如它在二叉樹34中的先前分割級別計數,而不是在該縮減樹50中的該分割級別)。
根據一個實施例,該索引指向的該分割比用於一遞歸雙分割的分割。此處,該解碼器被配置為針對一個或多個二元決策(bin)的該序列的至少一個二元決策(bin)子集合執行該上下文自適應熵解碼,並且針對該二元決策(bin)子集合的每一個二元決策(bin),決定該熵解碼的一個上下文,其根據與一區塊(18)的一空間鄰域相關聯的編碼參數(例如,編碼模式、預測參數和/或用於編區碼/解碼區塊中的區塊的分割信息),從上下文的一集合中選擇相應二元決策(bin)的該上下文,該區塊(18)係該遞歸雙分割的分割所涉及的。
根據一個實施例,該選擇發生的上下文的該集合係對於該二元決策(bin)子集合的至少兩個二元決策(bin)次子集合而言是不同的(例如,上下文的相互不同集合被用於該二元決策)。
根據一實施例,該解碼器可以被配置為對於至少一個該二元決策(bin)子集合,藉由根據該區塊的該空間鄰域中的雙分割樹葉區塊的一大小(例如面積),從上下文該集合中選擇該至少一個二元決策(bin)的該上下文,來決定用於該熵解碼的該上下文,該區塊係該遞歸雙分割的分割所涉及的。
根據一個實施例,該解碼器可以被配置為在該遞歸雙分割的分割所涉及的該區塊的該空間鄰域中定位雙分割樹葉區塊,取決於該遞歸雙分割的分割以一種方式涉及的區塊的一分割線方向,使得在該空間鄰域中的該區塊沿著該分割線方向而鄰近於該遞歸雙分割的分割所涉及的該區塊,並且關於該分割線方向彼此橫向相鄰(例如,在垂直分割的情況下為A1和A2,以及水平分割的情況下為B1和B2)。
根據實施例,該解碼器可以另外是根據觀點1、2、3和/或4的一解碼器。
一實施例提供了一種用於解碼指向來自一資料流的一分割比的一索引的方法,包括: -    藉由根據一個或多個規則去除分割比來減少分割比的一基本列表30,以便獲得分割比的一縮減列表32,其中該基本列表30對應於一個二叉樹34的樹葉42、37,其與該基本列表30的相應分割比相關聯,並且該縮減列表32對應於由該二叉樹34產生的一個縮減二叉樹50, -    其經由從樹葉42、37到主根節點44,移除該二叉樹34中其該子節點不屬於該縮減列表32的每個節點40、38,並且 -    代替具有僅一個未移除的子節點的該二叉樹34的每個節點,將該未移除的子節點直接附加到該二叉樹34的該節點,其相應中間節點係該節點的子節點, -    其中,該縮減二叉樹50的左邊分支(在圖5和6中示例性地分配為“0”)與一第一個二元決策(bin)值相關聯,而該縮減二叉樹50的右邊分支(在圖5和6中示例性地分配為“1”)與一第二個二元決策(bin)值相關聯,並且該縮減列表32的每個分割比與一個bin值序列相關聯的,其對應於與該分支相關聯的二元決策(bin)值的一個序列,該分支在該縮減二叉樹50中從該縮減二叉樹50的一主根節點52導向與相應的分割比相關聯的一樹葉54, -    針對對應於一個或多個二元決策(例如,由各個split_ratio _...旗標形成)的一序列的一個二元決策字串(例如,由split_ratio _...旗標形成)進行熵解碼,從該縮減二叉樹50的該主根節點52開始,遍歷該縮減二叉樹50到該縮減二叉樹的樹葉54之一,該二元決策(bin)字串的每個二元決策(bin)對應於由一個或多個二元決策(bin)的該序列所遍歷的該縮減二叉樹50的該節點的一個; -    使用該縮減二叉樹作為一個二值化方案,對該二元決策(bin)字串進行去二值化,以便獲得該索引。
根據一個實施例,該方法可以使用一計算機或CPU來執行。
另一個實施例提供了一種編碼器,用於將指向一分割比的一索引編碼一成資料流,其被配置為藉由根據一個或多個規則去除分割比來減少分割比的一基本列表30,以便獲得分割比的一縮減列表32,其中該基本列表30對應於一個二叉樹34的樹葉42、37,其與該基本列表30的相應分割比相關聯,並且該縮減列表32對應於由該二叉樹34產生的一個縮減二叉樹50,經由從樹葉42、37到主根節點44,移除該二叉樹34中其該子節點都被移除的每個節點40、38,並且代替具有僅一個未移除的子節點的該二叉樹34的每個節點,將該未移除的子節點直接附加到該二叉樹34的該節點,其相應中間節點係該節點的子節點。此處,該縮減二叉樹50的左邊分支(在圖5和6中示例性地分配為“0”)與一第一個二元決策(bin)值相關聯,並且該縮減二叉樹50的右邊分支(在圖5和6中示例性地分配為“1”)與一第二個二元決策(bin)值相關聯,並且該縮減列表32的每個分割比與一個二元決策值序列相關聯的,其對應於與該分支相關聯的二元決策(bin)值的一個序列,該分支在該縮減二叉樹50中從該縮減二叉樹50的一主根節點52導向與相應的分割比相關聯的一樹葉54。此外,該解碼器被配置為使用該縮減二叉樹作為一個二值化方案將該索引二值化為一個二元決策(bin)字串,該二元決策(bin)字串對應於一個或多個二元決策(bin)(例如,由各個split_ratio _...旗標形成)的一序列,從該主樹根開始,遍歷該縮減二叉樹50到該縮減二叉樹樹葉54中的一個,其中該二元決策(bin)字串的每個二元決策(bin)對應於由一個或多個二元決策(bin)的該序列所遍歷的該縮減二叉樹50的該節點的一個;並且對該二元決策(bin)字串進行熵編碼(例如,由split_ratio _...旗標形成)。
另一實施例提供了一種用於將指向一分割比的一索引編碼為一資料流的方法,包括: -    藉由根據一個或多個規則去除分割比來減少分割比的一基本列表30,以便獲得分割比的一縮減列表32,其中該基本列表30對應於一個二叉樹34的樹葉42、37,其與該基本列表30的相應分割比相關聯,並且該縮減列表32對應於由該二叉樹34產生的一個縮減二叉樹50, o 其經由從樹葉42、37到主根節點44,移除該二叉樹34中其該子節點都被移除的每個節點40、38,並且 o 代替具有僅一個未移除的子節點的該二叉樹34的每個節點,將該未移除的子節點直接附加到該二叉樹34的該節點,其相應中間節點係該節點的子節點, 該縮減二叉樹50的左邊分支(在圖5和6中示例性地分配為“0”)與一第一個二元決策(bin)值相關聯,並且該縮減二叉樹50的右邊分支(在圖5和6中示例性地分配為“1”)與一第二個二元決策(bin)值相關聯,並且該縮減列表32的每個分割比與一個bin值序列相關聯的,其對應於與該分支相關聯的二元決策(bin)值的一個序列,該分支在該縮減二叉樹50中從該縮減二叉樹50的一主根節點52導向與相應的分割比相關聯的一樹葉54, -    使用該縮減二叉樹作為一個二值化方案將該索引二值化為一個二元決策(bin)字串,該二元決策(bin)字串對應於一個或多個二元決策(bin)(例如,由各個split_ratio _...旗標形成)的一序列,從該主樹根開始,遍歷該縮減二叉樹50到該縮減二叉樹樹葉54中的一個,其中該二元決策(bin)字串的每個二元決策(bin)對應於由一個或多個二元決策(bin)的該序列所遍歷的該縮減二叉樹50的該節點的一個; -    對該二元決策(bin)字串進行熵編碼(例如,由split_ratio _...旗標形成)。
根據一個實施例,該方法可以使用一計算機或CPU來執行。因此,一實施例提供了相應的計算機程式。
本發明的有利方面是附屬請求項的主題。以下參考附圖來描述較佳實施例,而非限制的方式顯示,其中相同的參考標號表示相似的元件。
在討論本揭露的實施例之前,將討論本揭露的一些技術背景:
一個編碼樹單元(Coding Tree Unit、CTU)可以分成多個編碼單元(Coding Unit、CU)。一編碼單元是選擇一編碼模式(例如,幀內或幀間編碼)的該實體。將一個CTU分解為一個或多個CU由一四叉樹(Quadtree 、QT)指定並作為該位元流的一部分發送。在該CTU語法中,稱為split_cu_flag的一第一二元決策(binary decision、bin)係被發送,其發信號通知該整個CTU是否形成一單個CU(即,該CTU未被分解成多個CU)或者該CTU是否被分割為四個相等大小的正方形單位。如果該CTU被分割,則對於每個得到的單元,一另一個split_cu_flag被發送,其指示相應的單元是否被進一步分割為四個相等大小的正方形單元。該多級別分割將繼續,直到對於每個單元被發信號通知該單元未被進一步分割或達到一最小CU尺寸。如果一單元具有該最小CU大小,則split_cu_flag不被發送,但是其被推斷為該單元不被進一步分割。在ITU-T H.265|MPEG H HEVC中,在該序列參數集(SPS、Sequence Parameter Set)中用信號通知該最小允許CU大小;它的範圍可以從CTU的該大小到8x8亮度樣本(並且對於寬度和高度,總是呈現一個2的整數冪的正方形)。該描述的分割的該結果單元是該編碼單元(CU),為此一編碼模式和相關參數被選擇和發送。請注意,該分割表示一四叉樹(QT)結構。
每個得到的CU與一編碼模式相關聯,該編碼模式在該編碼器側被選擇並作為該位元流的一部分而被發送。在ITU-T H.265|MPEG H HEVC中,該二元決策split_cu_flag指定將一個CTU分割成一個或多個CU,其使用基於上下文的自適應二元算術編碼(CABAC、Context-based Adaptive Binary Arithmetic Coding)進行編碼。一個CTU的CU以該所謂的z掃描順序處理。這意味著,一個分割所產生的該四個區塊以光柵掃描順序處理;如果任何區塊被進一步分割,則在處理較高分割級別的下一個區塊之前處理相應的四個區塊(包括所被包括的較小區塊)。
如果一個CU以一幀內編碼模式被編碼,則一幀內預測模式用於該亮度信號,並且如果該視頻信號包括色度分量,則用於該色度信號的另一幀內預測模式被發送。在ITU-T H.265|MPEG H HEVC中,如果該CU大小等於該最小CU大小(如在該序列參數集中用信號通知),則該亮度編碼區塊也可以被分割成四個大小相等的區塊,在這種情況下,針對這些區塊中的每一個,一個個別的亮度幀內預測模式被發送。該分割由一個二元語法元素part_mode指示。該實際的幀內預測和編碼是基於變換區塊所完成的。
出於變換編碼的目的,一個CU可以被分割為多個變換區塊。類似於將一個CTU分割成CU,到變換區塊的該細分使用一四叉樹語法而被傳輸。該四叉樹的該根由該編碼單元形成。該編碼單元的該語法包括一個稱為split_transform_flag的二元決策,其指定該編碼單元CU的該亮度分量是否由單個亮度變換區塊組成或者其是否被分割成四個大小相等的方塊。在後一種情況下,對於每個該得到的亮度區塊,另一個split_transform_flag被發送,以指定是否進一步分割相應的區塊。繼續該四叉樹分割,直到對於每個得到的亮度區塊,其被發信號通知該區塊未被進一步分割或者該區塊達到一最小變換區塊大小(在該序列參數集中指示)。對於編碼四個亮度幀內預測模式的幀內編碼的編碼單元CU,該第一split_transform_flag(在CU級別)不被發送,但是其被推斷該亮度編碼區塊被分割成四個亮度區塊。該色度區塊的該分割基本上遵循該共同定位的亮度區塊的該分割,即,對於每個亮度區塊,該相關聯的色度區塊覆蓋該相同的圖片區域。該亮度區塊和覆蓋該相同圖片區域的該相關色度區塊形成一變換單元。然而,在ITU-T H.265|MPEG H HEVC標準中有一個例外:如果得到的色度區塊小於該最小變換塊大小(如該序列參數集中所指定的),則僅該亮度區塊被分割。在ITU-T H.265|MPEG H HEVC中,該二進制語法元素split_transform_flag使用CABAC而被編碼。一變換區塊(TB)是應用一單個二維(2d)變換以對該預測殘差信號進行編碼的該實體。注意ITU-T H.265|MPEG H HEVC中的所有變換區塊是正方形區塊,該區塊的該寬度和該高度係以2的整數冪來表示。
以z掃描順序處理一幀內編碼的編碼單元CU的該變換單元(Transform Unit、TU)(參見上文)。對於每個變換區塊(亮度或色度),首先使用相同顏色分量的已重建的相鄰樣本來生成一預測信號。用於生成預測信號的該演算法由該幀內預測模式所決定。使用變換編碼發送該所得到的預測誤差/殘差信號。一個二維變換將被應用於該相應的殘差樣本區塊,對該所得到的變換係數進行量化(通常使用均勻重建量化器),並且對該所得到的量化索引(也稱為變換係數級別)進行熵編碼。在ITU-T H.265|MPEG H HEVC中的該熵編碼係使用基於上下文的自適應二進制算術編碼(CABAC、Context-based Adaptive Binary Arithmetic Coding)的該概念。
幀間編碼的編碼單元CU可以被分割成多個預測單元(PU、Prediction Units)。一預測單元PU是一亮度的該實體,並且對於彩色視頻,是兩個相關聯的色度區塊(覆蓋該相同的圖片區域),其中使用一單組預測參數。一編碼單元CU可以被編碼為一單個預測單元PU,或者它可以被分割成兩個非正方形或四個正方形的預測單元PU。僅當該編碼單元CU具有在該序列參數集中被指定的該最小編碼單元CU大小時,才支持後者(四個正方形預測單元PU)。該所選擇的分割由該語法元素part_mode所指示。在ITU-T H.265|MPEG H HEVC支持總共8種模式,用於將一編碼單元CU分割為預測單元PU。一個NxN編碼單元CU可以分割為: • 一單個NxN預測單元PU; • 兩個(N/2)xN預測單元PU; • 兩個Nx(N/2)預測單元PU; • 一單個(3N/4)xN預測單元PU(左)和一單個(N/4)xN預測單元PU(右); • 一單個(N/4)xN預測單元PU(左)和一單個(3N/4)xN預測單元PU(右); • 一單個Nx(3N/4)預測單元PU(上)和一單個Nx(N/4)預測單元PU(下); • 一單個Nx(N/4)預測單元PU(上)和一單個Nx(3N/4)預測單元PU(下); • 四個(N/2)x(N/2)預測單元PU。
該不對稱分割僅支持大於或等於16x16亮度樣本的編碼單元CU。在ITU-T H.265|MPEG H HEVC中支持的該最小預測單元PU尺寸是8x4和4x8。
對於每個預測單元PU,一組單獨的運動參數被發送。每組運動參數包括運動假設的該數量(在ITU-T H.265|MPEG H HEVC中的一個或兩個),並且對於每個運動假設,包括該參考圖片(經由一參考圖片索引以指示到參考圖片的一列表中)和該相關的運動向量。首先,一個merge_flag被發送,其指示該運動參數是否基於已編碼的運動參數而被完全導出、或者該運動參數是否被發送。如果該merge_flag等於1,則運動參數集合候選的一列表被導出,其通常包括已經編碼的空間相鄰區塊的運動參數集合、以及從時間上共同定位的區塊所導出的一個或多個運動參數集合。該所使用的運動參數集合係由語法元素merge_idx所指示,其指定運動參數集合的該候選列表的一索引。如果merge_flag等於0,則將該運動參數作為該位元流的一部分發送。第一語法元素(ITU-T H.265|MPEG H HEVC中的inter_pred_idc)指定運動假設的該數量。在ITU-T H.265|MPEG H HEVC中,支持一個或兩個運動假設。對於每個運動假設,該所使用的參考圖片係經由一參考圖片索引所指示,該參考圖片索引係表示一索引至一參考圖片列表。在ITU-T H.265|MPEG H HEVC中,P型切片有一個參考圖片列表,B型切片有兩個參考圖片列表,其被稱為列表0(list 0)和列表1(list 1)。對於每個切片,該參考圖片列表係基於切片標頭語法元素而被構造。每個參考圖片列表以一指定順序包含一個或多個已編碼圖片(其存儲在解碼圖片緩衝器中)。在B型切片中,該語法元素inter_pred_idc不僅指示單一假設預測或雙向預測,而且對於單一假設預測,其另外指示列表0還是列表1被使用。對於雙向預測,該第一運動假設係參考列表0,該第二運動假設係參考列表1。對於每個運動假設,除了該參考圖片索引之外,一相關聯的運動向量作為位元流的一部分被發送。該運動向量是差分編碼的。給定該已編碼的參考圖片索引,運動向量預測候選者的一列表被導出。它可以包括(可能縮放的)相鄰預測單元PU的運動向量、以及時間上在前(依據在編碼順序方面)、空間上共同定位的區塊的縮放運動向量。該實際選擇的運動向量預測器經由一索引而用信號通知該運動向量預測器列表。最後,該預測單元PU的該實際運動向量與該所選擇的運動向量預測值之間的該差異被發送。在單個假設預測中,一個預測單元PU的該預測信號由該所選擇的重建參考圖片中的一移位區塊所形成,其中相對於當前預測單元PU的該位移係由該運動向量指定。注意,該位移通常以子樣本精度而被指定(在ITU-T H.265|MPEG H HEVC中,該運動向量具有一個四分之一亮度樣本的一精度)。對於非整數運動向量,該預測信號係經由內插重建的參考圖片(通常使用可分離的有限脈衝響應濾波器FIR)而被生成。具有多假設預測的預測單元PU的該最終預測信號,係由用於該個別運動假設的該預測信號的加權和所形成。注意,一預測單元PU的亮度和色度區塊共享相同的運動參數集。
用於一圖片間編碼的編碼單元CU的該預測信號係由其包含的預測單元PU的該預測信號所組成。用於一編碼單元的亮度和色度區塊的該預測誤差信號(也稱為殘差信號)藉由變換編碼而被發送。為此目的,一編碼單元CU的亮度殘差樣本的該區塊以及色度殘差樣本的該區塊(如果存在)被分割為變換區塊。分割成變換區塊與上述的圖片內編碼的編碼單元CU相同。經由一四叉樹語法指示一編碼單元CU劃分為變換區塊的該分割,其也稱為殘餘四叉樹(RQT、Residual Quadtree)。使用變換編碼對該得到的變換區塊進行編碼:將一個二維(2d)變換應用於該殘差樣本區塊,對該得到的變換係數進行量化,並且對該得到的變換係數級別(量化索引)進行熵編碼。在P型切片和B型切片中,在該編碼單元CU語法的該開始處,一個skip_flag被發送。如果該旗標等於1,則表示該對應的編碼單元CU由以合併模式編碼的一單個預測單元組成(即,推斷merge_flag等於1)並且所有變換係數等於零(即,該重建信號等於該預測信號)。在這種情況下,除了該skip_flag之外,僅該merge_idx被發送。如果skip_flag等於0,則用信號通知該預測模式(幀間或幀內),接著是上述的語法特徵。
在ITU-T H.265|MPEG H HEVC中,所有低級別語法元素係使用基於上下文的自適應二進制算術編碼(CABAC)進行編碼。非二進制語法元素首先被二進制化,即,它們被映射到一系列二元決策,其也被稱為二元決策(bin)。然後,使用二進制算術編碼器對每個二元決策(bin)(包括二進制語法元素)進行編碼。該算術編碼引擎有兩種模式。在一種模式中,即所謂的旁路模式(bypass mode),使用具有
Figure 02_image041
的一非自適應二進制機率模型對該二元決策(bin)進行編碼。在另一種模式中,即該所謂的常規模式,針對每個二元決策(bin)選擇一個自適應二進制機率模型;在對相應的二元決策(bin)進行編碼之後,使用該二元決策(bin)的該實際值來更新該二進制機率模型。該熵編碼器維持一定數量的二進制機率模型。該所選擇的機率模型取決於該語法元素和該二元決策(bin)的數量(對於非二進制語法元素)。它還可以取決於已經編碼的語法元素或二元決策(bin)。二元機率模型的該選擇也稱為上下文建模。
ITU-T H.265|MPEG H HEVC的該語法為編碼一樣本區塊(例如一編碼樹單元)提供了多種可能性。該編碼器必須選擇該分割(分割為CU、PU和TU)、該編碼模式和相關參數(諸如幀內預測模式和運動參數)、以及變換係數級別(量化索引)。該所選擇的編碼參數決定該重建品質以及在該位元流內的表示該編碼參數所需的該位元數量。現代編碼演算法通常基於拉格朗日(Lagrangian)位元分配。
雖然該所採用的編碼演算法決定該生成的位元流的該速率-失真效率,但一編解碼器的該最大可實現編碼效率由該支持的語法特徵所決定,例如該編碼模式集合、該分割選項、該支持的幀內預測模式等等。
該最重要的語法功能之一是該支持的分割選項。一方面,一靈活分割允許將用於預測和變換編碼的該區塊大小適配到該視頻信號。但另一方面,該分割作為該位元流的一部分必須被傳輸。因此,用於提供附加分割選項的預測和變換編碼的該增益必須超過該額外的信令開銷。由於這個原因,最先進的視頻編碼標準僅支持非常簡單的分割概念,例如四叉樹分割。
在本揭露中,基於廣義二叉樹的一分割概念被描述。它提供了比傳統分割概念(例如該四叉樹方法)更靈活的方法,用於使用於預測和變換編碼的該區塊係適應於要被編碼的該視頻信號。並且由於用於發送該所選分割的該語法仍然非常簡單,因此預測和變換編碼中的該增益通常超過該額外的信令開銷。因此,該通用分割概念能夠提高一視頻編解碼器的該可實現編碼效率。
該所描述的分割概念可以被用於分割關於編碼模式信令、圖片內預測、圖片間預測、變換編碼或其任何組合的一區塊。它可以完全取代傳統的分割概念,也可以與其他分割概念結合使用,例如一四叉樹分割。
本揭露中呈現的該廣義二進制分割代表所有提到的分割方法QT(四叉樹)、QTBT(四叉樹/二叉樹)、具有附加三重分割的QTBT、以及具有額外的不對稱分割成大小為1/4和3/4的子區塊的QTBT的一超集合。它的特點是語法簡單,能夠更好地適配該區塊大小到對象和運動邊界,從而提高一編碼效率。
可與本揭露結合使用的實體,特別是對於該編碼(編碼和解碼)將參考圖16至20進行討論。下面,保持作為本揭露所有觀點的焦點的該分割/二進制分割將被討論。
廣義二元分割
下面描述使用廣義二叉樹的視頻編碼方法。一種使用廣義二進制分割的一視頻編碼方法被提出。該所呈現的廣義二進制分割可以應用於視頻編碼中所需的所有區塊分割。特別地,它可以應用於將區塊分割為編碼單元CU(用於發信號通知該編碼模式)、預測單元PU(用於發信號通知諸如運動參數的預測參數)、或變換單元TU(用於該殘差信號的變換編碼)。在本揭露的一較佳實施例中,該編碼模式的該信令、預測參數的該信令和該變換編碼被應用於該相同的區塊(即,這樣的一區塊表示一CU、PU和TU),以及該廣義二進制分割用於指定一固定大小的區塊的對應分割為編碼單元(也代表PU和TU)。然而,也可以使用該廣義二進制分割來指定該分割成編碼單元CU,而該得到的編碼單元CU可以進一步分割成預測單元PU和/或變換單元TU(使用該廣義二進制分割或任何其他分割概念)。
在另一觀點,該廣義二進制分割可以分別應用於顏色分量和輔助分量,例如α通道或深度遮罩。或者,可以將通用二進制分割應用於那些分量的群組。例如,結合在諸如YUV420或YUV422的常見幀格式中所使用的次採樣色度分量,可以使用兩個不同的分割樹:一個用於分割該亮度分量,另一個用於分割該色度分量。在另一範例中,將不同的分割(不同於亮度和色度分量的分割)應用於輔助分量(諸如α混合資料或深度圖)可能是有用的。
此外,該廣義二進制分割可以與任何其他分割組合。例如,可以在一第一級別上使用該四叉樹分割(或任何其他分割概念),並且該所得到的區塊可以使用該廣義二進制分割來進一步分割。或者,經由該廣義二進制分割獲得的區塊可以使用任何其他分割概念進一步分割。
在不失一般性的情況下,對於以下描述,我們假設使用廣義二進制分割的該概念來分割固定大小的區塊(諸如CTU)。該分割結構可以被表示為一個二進制分割樹(以下也稱為「分割樹」)。每個節點表示具有一分割方向(水平或垂直)和一分割比(這是該第一個產生的區塊的該寬度(或高度)與該原始區塊的該寬度(或高度)的該比率)的一個二進制分割。
在本揭露的一個較佳實施例中(比較A1),相對於該先前的分割方向(即,該下一個較高(先前)級別上的該相應分割)對該分割方向進行編碼(比較A6)。這意味著一分割被編碼為「平行」或「垂直」分割,它總是轉換為一個「垂直」(分割寬度)或「一個水平」分割(分割高度)。如果我們假設當前區塊是藉由一水平分割(在最後(前一個)分割級別)獲得的,那麼,如果發信號通知一個「並行分割」,則該當前區塊再次水平分割成兩個子區塊,並且如果發出一個「垂直分割」信號,將該當前區塊垂直分割成兩個子區塊(比較A7)。如果該最後一級別分割是一垂直分割,則該「平行分割」指定一垂直分割,該「垂直分割」指定一水平分割。由於在該最高級別(即,對於根級區塊)沒有發信號通知先前的分割,因此必須藉由約定來定義該最後的分割級別是否被推斷為表示一水平分割或一垂直分割。
除了該分割方向之外,一個二元分割的特徵在於該分割比(比較A8)。該分割比指定該第一個得到的子區塊(從頂部/左側)的該大小(樣本數)和該被分割的區塊的該比率。注意,由於一區塊總是被分割成兩個子區塊,因此該分割比還指定該區塊寬度的比率(對於垂直分割)或該區塊高度的比率(對於水平區塊)。該分割樹的該樹葉節點表示正被編碼的該實際單元(由一亮度樣本區塊以及,對於非單色視頻,由共同定位的色度樣本區塊組成)。這些單元在下面將被稱為編碼單元,其特徵在於它們的位置和大小,這可以從該分割樹推斷出來。可以在該分割結構的該樹葉級別應用編碼(比較A2)、預測(比較A3)和變換編碼(比較A4)。還可以將該廣義二進制分割應用於一單個顏色分量或顏色分量的一子集合(例如,兩個色度分量)。分割比為1/2的一垂直分割是可以在大多數配置中使用該最小位數(或二元決策(bin))發信號的該分割,並且在下文中將稱為「默認分割」。
在本揭露的一特定實施例中,從該分割樹的該根區塊(可以是CTU)開始,如下用信號通知該分割。在不失一般性的情況下,我們定義該根區塊的該最後一個分割(不是由實際分割產生)被認為是垂直分割。但請注意,它也可以定義為水平分割。首先一個二元決策perpend_split_flag被編碼,其指示一個垂直分割是否被應用。如果perpend_split_flag等於1並且最後一次分割(即,產生當前區塊的該分割)是水平分割,則將一個垂直分割應用於該當前區塊。果perpend_split_flag等於1並且最後一個分割是垂直分割(使用我們上面定義的約定,這包括我們當前區塊是該根區塊的情況),這表示應用了一個水平分割。
如果perpend_split_flag等於0,另一個二元決策parallel_split_flag則被發送。如果parallel_split_flag等於1且該最後一個分割是水平分割,該當前區塊則再次水平分割。如果parallel_split_flag等於1並且該最後一個分割是一個垂直分割(或者藉由我們的約定推斷為垂直分割),則垂直分割該當前區塊。如果parallel_split_flag等於0,則該當前區塊不被進一步分割,即它未被分割,而是表示一個樹葉區塊(相當於「無分割」信令)並且變為一個編碼區塊。如果高級別語法限制(例如,對該最小區塊寬度或區塊高度的限制或對該最大分割級別的限制)阻止一個水平或垂直分割,則不發送該相應的二元決策,但可以在該解碼器側推斷。例如,如果該最後分割是一個垂直分割並且該當前區塊的該寬度等於該最小支持的區塊寬度,則不傳輸該二元決策parallel_split_flag(其指示該當前區塊是否再次垂直分割),而是推斷為等於0。
如果由高級別參數指示,則可以推斷出二元決策perpend_split_flag和parallel_split_flag中的任一個或兩者,其可以在PPS(圖片參數集)、SPS(序列參數集)或切片標頭(比較A19和A20)中用信號通知。用於發信號通知該分割方向的一個二元決策樹如圖4所示。如果要應用一個水平分割,則該分割尺寸M被定義為該要分割的區塊的該垂直邊緣的該長度(因為該分割將引入一個新的水平邊緣)。對於一個垂直分割,該分割尺寸M是該要分割的區塊的該水平邊緣的該長度。
在本揭露的一特定實施例中,僅編碼該perpend_split_flag。因此,該分割樣型由交替的水平和垂直分割組成。給定一個特定的區塊,該區塊不是不進一步分割,就是使用垂直於該先前分割方向(在較高級別)的一分割方向進行分割。可以對該根區塊進一個行例外處理(不存在先前的分割);對於該根區塊,可以明確地指示是應用一個水平分割還是一個垂直分割(或者該區塊是否完全不分割)(比較A12 + A5)。
在本揭露的另一個實施例中,使用二元決策hor_split_flag(指示該區塊是否被水平分割)和ver_split_flag(指示該區塊是否被垂直分割)來編碼該分割方向。這些旗標可以按任何順序編碼;僅當該第一旗標指示在該相應方向上沒有分割時才發送該第二旗標。在本揭露的一另一實施例中,使用一個split_flag和一個split_direction_flag對該分割和該分割方向進行編碼,其中該split_flag指示該當前區塊是否被分割,該split_direction_flag指示該分割是否被應用在水平或垂直方向上。在一個變型中,該split_direction_flag指示該分割是否被應用在與該最後一次分割垂直的方向上或在與該最後一次分割相同的方向上。
注意,該以下描述(關於該分割比的信令)聚焦於使用該perpend_split_flag和parallel_split_flag的該較佳實施例,但是它也可以與該分割方向的任何其他信令一起使用,例如,(hor_split_flag和ver_split_flag)或者(split_flag和split_direction_flag)。
在本揭露的一較佳實施例中,使用基於上下文的自適應算術編碼(如H.265|MPEG-H HEVC中的CABAC)對該分割旗標進行編碼。
如果該分割方向的該信令(使用任何該上述方法)指示該當前區塊被分割(對於該較佳實施例,這意味著perpend_split_flag或parallel_split_flag等於1或被推斷為等於1),除了該分割方向之外,一分割比還被編碼(比較18a)。如果可以使用該視頻編碼框架對該所得到的子區塊進行編碼(例如,必須具有一適當的變換大小),則針對每個區塊大小可以任意選擇可能的分割比的該集合。該分割比可以被編碼為一集合的一元素以及經由該分子和該分母的二值化(在前一種情況下,該集合必須被預定義)。在本揭露的一較佳實施例中,基於一個二元決策樹(根據該可用的分割比進行自適應樹修剪)對該分割比進行編碼,如下面將更詳細地描述的。在本揭露的另一個實施例中,該分割比可以被編碼為可用分割比的一有序列表的一索引。可以使用任何二值化方案將該索引映射到一系列二元決策。
在本揭露的一較佳實施例中,該總體分割比集合定義為:{1/2, 1/4, 3/4, 3/8, 5/8, 1/3, 2/3, 1/5, 2/5, 3/5, 4/5}。對於每個實際分割,分割比的該可用集合代表該總體集合的一個子集合。針對一特定區塊和一特定分割方向的該子集合可以由該當前區塊的該大小和/或先前分割的該序列而決定。如果某些該比率對一於特定分割大小為不可用(例如,因為對變換或預測大小的限制、或最小區塊大小阻止這些分割比、或因為該分割將導致冗餘分割),為了降低位元率,則相應的信令旗標不發送。特別地,如果只有一個分割比可用,則可以推斷出該比率信令的所有二元決策(bin)並且不發送(例如,對於該區塊大小大於該最大區塊大小的一非默認分割,)。對於一分割方向,如果不能應用任何分割比(例如,由於高級別參數強制執行的禁令),則可以將該分割方向的該信令推斷為假。
該二進制分割將被遞歸地應用,直到沒有進一步的分割被推斷或被發信號通知。亦即,如果一區塊被分成兩個子區塊,則對於每個所得的子區塊,對由一分割方向和一分割比所組成的另一個分割進行編碼(其中可以基於語法約束推斷出一些或所有相應的二元決策)。該程序將繼續,直到信號通知(或推斷)沒有區塊被進一步分割為止。
在本揭露的一較佳實施例中,該廣義二進制分割概念用於將固定大小的區塊(例如CTU)分割成編碼單元,其也表示預測單元和變換單元。對於每個得到的區塊,一編碼模式和相關的預測參數(例如幀內預測模式或運動參數)被發送,並且該等區塊也用於該殘差信號的變換編碼。在另一實施例中,該所得到的區塊被用作編碼區塊(即,針對用信號通知該編碼模式),但是該編碼區塊可以進一步分割為預測和/或變換區塊(使用該廣義二進制分割概念或任何其他分割方法)。
控制廣義二進制分割的該行為的該高級別參數可以包括一最小區塊大小(例如,由一最小塊寬度和一最小塊高度來指定,或由一最小數量的樣本來指定)、一最大分割樹深度、一第一個非默認分割後的一最大分割樹深度、一非默認分割的一最大區塊大小、該結果區塊的最大和最小允許寬高比、以及有關該適用分割比的約束。可以在一圖片參數集(PPS、Picture Parameter Set)、一序列參數集(SPS、Sequence Parameter Set)、切片標頭或任何其他高級別語法結構中用信號通知該高級別參數。為了減少發送該高級別參數所需的該位元數,可以為該高級別參數定義邊界和特定域。例如,該最大寬高比可以被定義為大於4的2的冪次,因此顯著減少了可能的選項的該數量。或者可以將該最小寬高比定義為該最大寬高比的倒數,反之亦然,在這種情況下,僅需要發送該最小或最大寬高比。
在本揭露的一較佳實施例中,使用基於上下文的自適應算術編碼(CABAC)對該分割方向和該分割比進行編碼。亦即,這些參數被編碼為具有自適應二進制機率模型的一系列二元決策(該二元決策的一子集合也可以用非自適應機率模型編碼)。可以基於相鄰區塊的大小來選擇用於該分割決策的該所使用的二進制機率模型。該基本假設是小區塊經常出現在其他小區塊的鄰域中(即,在一視頻圖片的精細分割區域中)。這個或一類似的假設也可以用於對該分割比編碼的該上下文進行建模。注意,非對稱分割導致一較小和一較大的區塊,並且較小的區塊可能傾向於位於其他小區塊的鄰域中。
由於使用一通用二進制分割框架可以生成該複雜樣型,因此可以使用多個分割樹以生成一些最終分割樣型。為了減少這種現象(並且最小化用信號通知一特定區塊分割所需的位元數量),在本揭露的一較佳實施例中,該語法禁止某些分割組合。這可以藉由禁止將一些樹樣型引入該分割樹來實現。使用該實際的「垂直」/「水平」或該方向「平行」/「垂直」分割方向語義來定義一個樹樣型,其可能是混合的。一個樹樣型還包括分割比。如果一分割方向、分割比或分割方向和分割比的一組合將導致一個禁止樣型發生,則將其推斷為假並且不發送該相應的二元決策,而是在該解碼器側推斷。注意,該編碼器和解碼器兩者都必須知道該禁止的樹樣型(或禁止的分割組合)。
為了防止冗餘的分割表示,可以使用簡單的規則來識別這樣的分割,如下面將示例性地描述的。
對可用分割比的約束
下面呈現用於防止冗餘分割表示和約束允許分割方向和分割比的本揭露的一較佳實施例。它應該說明所討論的揭露的可能實施方式,並且應以示例性而非限制性的方式理解。
如圖1所示,使用本實施例中描述的該裝置對一個128x128區塊(例如,尺寸為128x128的一個CTU)進行一特定的部分分割。描述該所示拓撲的該分割樹如圖2所示。圖3說明了在特定節點使用哪些分割方向和比率。
在以下描述中,我們聚焦(不失一般性)在限制在一給定分割方向的分割比的該集合。原則上,對於一給定的區塊大小(寬度和高度)以及導致該當前區塊的一給定系列的分割,藉由從可用分割比的一總體集合中移除禁止的分割,以導出分割比的一允許集合。在該得到的分割比集合為空的情況下,該相應的分割方向係完全禁止,並且相應的該分割方向旗標(即,perpend_split_flag或parallel_split_flag或任何其他對應的二元決策不被編碼,但推斷為等於0)。
作為一個範例,在本揭露的一較佳實施例中,分割比的該總體集合由下式給出:
Figure 02_image043
。                                                    (1)
對於一般情況,我們可以假設所有分割比a/b都是不可約的分數(分子和分母是互質的)。除了具有分割比1/2的對稱分割之外,在分割比的該總體集合中還包括幾個非對稱分割比。在本揭露的一較佳實施例中,如果包括具有分割比a/b的一非對稱分割,則還包括該分割比(b-a)/b。兩個分割產生相同的子區塊大小,但是對於其中一個分割,該較大的子區塊表示該左/頂部分,而對於另一個分割,較大的子區塊表示該要分割的區塊的該右/底部分。
非對稱分割的該集合
Figure 02_image045
可以表示為:
Figure 02_image047
,                                          (2) 具有該約束
Figure 02_image003
每對分割比
Figure 02_image005
Figure 02_image007
,其中
Figure 02_image009
,表示兩個互補的非對稱分割,這導致兩個相同大小但不同順序的子區塊。注意,對於
Figure 02_image049
,可以有
Figure 02_image051
,只要
Figure 02_image053
Figure 02_image055
(參見公式(1)中的集合,其中我們有
Figure 02_image057
)。如果不支持對稱分割(比率為1/2),則分割比的該總體集合等於非對稱分割的該總體集合,
Figure 02_image059
。在本揭露的一個較佳實施例中,該對稱分割包括在分割比的該總體集合中,在這種情況下我們具有
Figure 02_image061
。                                                                    (3)
標準 1 :區塊大小的粒度 (granularity)
用於減小潛在分割比的該集合的一第一標準與該得到的區塊寬度或高度有關。很明顯,該區塊寬度(和區塊高度)必須是整數,因為不能用具有分數個樣本的區塊來編碼區塊。通常,有利的是每個子區塊的該寬度/高度表示一某個粒度
Figure 02_image063
的一整數倍,其中
Figure 02_image065
表示自然數的該集合。在本揭露的一個較佳實施方案中,我們設定
Figure 02_image067
。儘管對於區塊寬度和區塊高度具有該相同的粒度是合理的,但也可以對水平和垂直區塊尺寸使用不同的粒度。
因此,僅當該分割尺寸M(即,該要被分割的區塊的該寬度(對於垂直分割)或高度(對於水平分割))滿足以下等式時,才支持具有分割比a/b的一分割:
Figure 02_image069
,                                                                 (4)
Figure 02_image071
。                                                              (5)
作為一個例子,我們考慮公式(1)中給出的分割比的該總體集合,並假設
Figure 02_image067
的一粒度。對於
Figure 02_image073
的該分割大小,可用分割的該集合減少到該集合
Figure 02_image075
。對於
Figure 02_image077
的一分割大小,可用分割的該集合減少到該集合
Figure 02_image079
。並且,作為最後一個示例,對於
Figure 02_image081
的分割大小,可用分割的該集合被減少到該集合
Figure 02_image083
標準 2 :區塊尺寸,分割深度和寬高比
除了該粒度之外,可用分割的該集合可以經由一最小區塊大小來約束。這意味著,如果一分割會導致一區塊大小小於一最小區塊大小,則禁止並將其從可用分割的該列表中刪除。該最小區塊大小可以經由一最小區塊寬度和一最小區塊高度來指定,或者可以經由一最小數量的樣本來指定。例如,在一粒度為
Figure 02_image067
且一最小區塊大小為32個樣本的情況下,該支持的最小區塊大小將為8x4和4x8,這樣的一配置無法藉由單獨指定一最小區塊寬度和一最小區塊高度來實現。
另一個可能的約束是該最小和最大寬高比。如果一分割將導致具有大於最大寬高比或小於最小寬高比的一寬高比(區塊寬度)/(區塊高度)的任何子區塊,則從該可用分割集合中移除該相應的分割。如前所述,該最小寬高比可以設置為等於該最大寬高比的該倒數。舉一個例子,該最大寬高比可以設置為8。
一個進一步的約束可以限制該最大分割深度。該分割深度表示該二元分割樹結構的該深度。或者換句話說,對於一特定區塊,該分割深度表示從該根區塊到達該當前區塊所需的該分割數目。如果一當前區塊的分割深度已經等於該最大分割深度,則不允許進一步分割。舉一個例子,該最大分割深度可以設置為3。
還可以引入約束,使得對於該第一分割級別(直到一某個深度),或者對於大於一特定值的所有分割級別,僅能被對稱分割。在這種情況下,對於相應的分割,分割比沒有被傳輸(但是該比率被推斷為等於1/2)。
控制該最小區塊大小、該最小和最大寬高比、該最大分割深度和/或限制使用非對稱分割的值的參數較佳地以一高級別語法結構發送,類似於該序列參數集、該圖片參數集、或H.265|MPEG H HEVC的切片標頭。
標準 3 :冗餘並行分割
沒有進一步的限制,該廣義二進制分割通常導致某些分割的冗餘表示。為了避免這種冗餘,需要引入額外的限制。請注意,該語法中的冗餘會使指定該分割的該代碼效率降低,應該避免。另外,如果在該編碼演算法中測試冗餘分割,則會不必要地增加該複雜性。
針對在公式(1)中給出的分割比的該總體集合的限制的一示例性集合係總結在表1中。每個限制對應於三個佈局(a, b, c)之一,即一個二進制分割樹的子集合;這些佈局如圖7所示。
作為一第一個觀點,我們專注於連續並行分割中的冗餘。作為一範例,我們考慮一個16x16區塊,如圖11所示。如果首先使用水平方向上3/4的分割比對該區塊進行分割,則在該相同方向上以1/3的分割比進一步分割該所得到的子區塊中的第一個(參見圖11中的「樹A」),我們獲得一個16x4、一個16x8和一個16x4區塊(按此順序)。如果該第一次分割在水平方向上使用1/4的一分割比並且所得到的區塊中的該第二個區塊(在相同方向上)的一分割比為2/3,則獲得完全相同的分割(參見在圖11中「樹B」)。
考慮將一第一個分割
Figure 02_image085
應用於一區塊然後將一分割
Figure 02_image021
應用於第一個子區塊的該情況。因此,我們得到三個區塊,區塊大小為
Figure 02_image087
Figure 02_image089
Figure 02_image091
,其中
Figure 02_image093
是該分割大小,即該區原始區塊的區塊尺寸。現在,如果我們應用一第一次分割
Figure 02_image025
然後將該第二個子區塊用該同一方向上的一分割
Figure 02_image023
分割,我們產生三個具有尺寸的區塊
Figure 02_image095
Figure 02_image097
Figure 02_image099
。只要有可能產生該相同的區塊尺寸
Figure 02_image101
Figure 02_image103
、並且
Figure 02_image105
,並且有兩個平行的分割
Figure 02_image019
Figure 02_image107
應用於第一個子區塊)以及兩個平行的分割
Figure 02_image025
Figure 02_image109
應用於第二個子區塊),其中一個該組合
Figure 02_image111
Figure 02_image113
應該被禁止。每當
Figure 02_image027
Figure 02_image115
時,情況總是如此。決定哪種組合被禁止可以(例如)取決於哪個冗餘組合需要一較少數量的二元決策來用信號通知該分割。
對於公式(1)中給出分割比的該總體集合,表1的該第一部分指定了禁止並行分割的一範例。對該第一子區塊禁止的該並行分割由「佈局a)」標記,並且對該第二子區塊禁止的該並行分割由「佈局b)」標記。注意,也可以經由僅禁止針對該第一子區塊的分割、或者僅禁止針對該第二子區塊的分割,或者經由使用針對該第一子區塊和第二子區塊的禁止分割的另一組合來去除連續並行分割的該冗餘。
標準 4 :冗餘垂直分割
除冗餘並行分割外,還有冗餘垂直分割。假設我們具有首先在水平方向上使用分割比
Figure 02_image019
分割的一區塊,然後使用分割比
Figure 02_image021
在垂直方向上分割所得到的兩個子區塊(參見圖12a)。如果首先使用分割比
Figure 02_image021
在垂直方向上分割該原始區塊,然後使用分割比
Figure 02_image019
在水平方向上分割所得到的兩個子區塊,則獲得該相同的分割(參見圖12b)。
然而,請注意,儘管兩個討論選項的該結果分割相同,但該相應的編碼選項可能不同。該原因是該子區塊的該編碼順序不同。通常,該編碼順序以如下方式定義:對於每個分割,對該第一子區塊(頂部或左側子區塊)或該第一子區塊中包含的所有區塊係在該第二子區塊(底部或右側子區塊)或該第二子區塊中包含的所有區塊之前進行編碼。因此,如果我們首先對每個子區塊應用一垂直分割然後一水平分割,則將按該以下順序傳輸該四個結果區塊:左上角、左下角、右上角、右下角(參見圖12b)。與此相反,如果我們首先應用該水平分割然後將該垂直分割應用於兩個子區塊,我們獲得該編碼順序:左上角、右上角、左下角、右下角(見圖12a)。由於該所得子區塊的該不同編碼順序,用於圖片內預測、運動向量預測、合併候選者的推導等的該方法可能產生不同的結果,因此,該不同的分割可能導致該原始區塊的不同表示。
儘管如此,所描述的該冗餘垂直分割通常仍然非常相似,因此禁止這些分割實際上可以提高編碼效率。取決於該實際編解碼器和該所採用的編碼演算法,由於不考慮兩個該所描述的編碼選項而導致的編碼效率的損失,可能被經由使用較短的字碼用於用信號通知分割而獲得的位元率節省所抵消。此外,如果該編碼器評估兩個選項,則只能經由考慮兩種分割方式來獲得一潛在的增益,這會增加該編碼複雜度。因此,總結的說,它取決於該實際的編碼選項和該應用程序是否較佳的在該語法中允許兩個選項。在本揭露的一較佳實施例中,禁止所描述的該冗餘垂直分割。在本揭露的另一個實施例中,在該語法中支持該潛在的冗餘。並且在另一實施例中,該位元流包含一語法元素,其指示該語法是允許還是禁止冗餘垂直分割。在該後一種情況下,該實際使用的分割比語法係取決於一相應語法元素的該值。指示是允許還是禁止冗餘垂直分割的該語法元素可以作為任何高級別語法結構的一部分而被發送,例如SPS、PPS或切片標頭。該語法元素也可以作為該低級別語法的一部分而被傳輸,例如該CTU語法或該CU語法。
如果禁止冗餘垂直分割(按照慣例或由一高級別語法元素指示),則必須定義禁止該兩種變體中的哪一種以及支持該變體中的哪一種。該決定可能取決於哪種變體需要較少的二元決策以用於編碼、或哪種變體最可能提供更好的幀內預測信號或運動向量預測器等。對於公式(1)中給出分割比的該總體集合的該例子,表1給出了指定禁止冗餘分割的一範例。該禁止的垂直分割標有「佈局c)」。它們必須以下列方式解釋。如果一給定的區塊在一特定方向上以分割比A(該表中的「A比率」)被分割,並且該所得到的子區塊中的該第一個在垂直方向上以分割比B(該表中的「B比率」)被分割,然後,該第二子區塊(即該原始區塊的該第二子區塊)不能在垂直方向(垂直於該原始區塊的分割)上以分割比C(該表中的「C比率」)分割。注意,該分割比B總是與該分割比C相同。因此,換句話說,如果一區塊在方向
Figure 02_image117
上以分割比
Figure 02_image119
分割並且該第一個所得子區塊在垂直方向(垂直於
Figure 02_image117
)上以分割比
Figure 02_image121
分割,如果在該表中指示,則該垂直分割(垂直於
Figure 02_image117
)具有分割比
Figure 02_image123
從該第二子區塊(具有方向
Figure 02_image117
和比率
Figure 02_image119
的該分割)的該可用分割的集合中移除。如上所述,表1中規定的該慣例必須被視為一個特定的例子。還有其他可能性來實現非常類似的冗餘分割的禁止。
圖7係顯示三個不同的分割樹模式,如果滿足該節點A、B和C的特定分割方向和比率,則禁止這三種分割樹模式。在表1中,列出了在所述實施例中禁止的所有配置。可以使用一不同的分割樹樣型精確複製由這些樣型生成的該本地拓撲。注意,該禁止是根據該最不浪費分割來選擇的。在這種特殊情況下,A比率3/4和B比率2/3的佈局a)產生與A比率1/2和B比率1/2的佈局b)該相同的樣型。然而,該前者是被禁止的,而該後者是允許的,因為1/2在信令中較不浪費(當使用下面描述的該信令方案時)。 1- 禁止分割的範例
佈局 A-方向 A-比率 B-方向 B-比率 C-方向 C-比率
a) * 2/3 parallel 1/2 - -
a) * 3/4 parallel 1/3 - -
a) * 3/4 parallel 2/3 - -
a) * 3/5 parallel 1/3 - -
a) * 3/5 parallel 2/3 - -
a) * 2/5 parallel 1/2 - -
a) * 4/5 parallel 1/2 - -
a) * 5/8 parallel 4/5 - -
a) * 5/8 parallel 3/5 - -
b) * 1/4 parallel 1/3 - -
b) * 3/5 parallel 1/2    
b) * 3/8 parallel 1/5 - -
c) * 1/4 perpendicular 1/2 perpendicular 1/2
c) * 3/4 perpendicular 1/2 perpendicular 1/2
c) * 1/3 perpendicular 1/2 perpendicular 1/2
c) * 2/3 perpendicular 1/2 perpendicular 1/2
c) * 1/5 perpendicular 1/2 perpendicular 1/2
c) * 2/5 perpendicular 1/2 perpendicular 1/2
c) * 3/5 perpendicular 1/2 perpendicular 1/2
c) * 4/5 perpendicular 1/2 perpendicular 1/2
c) * 3/4 perpendicular 1/4 perpendicular 1/4
c) * 1/3 perpendicular 1/4 perpendicular 1/4
c) * 2/3 perpendicular 1/4 perpendicular 1/4
c) * 1/5 perpendicular 1/4 perpendicular 1/4
c) * 2/5 perpendicular 1/4 perpendicular 1/4
c) * 3/5 perpendicular 1/4 perpendicular 1/4
c) * 4/5 perpendicular 1/4 perpendicular 1/4
c) * 1/3 perpendicular 3/4 perpendicular 3/4
c) * 2/3 perpendicular 3/4 perpendicular 3/4
c) * 1/5 perpendicular 3/4 perpendicular 3/4
c) * 2/5 perpendicular 3/4 perpendicular 3/4
c) * 3/5 perpendicular 3/4 perpendicular 3/4
c) * 4/5 perpendicular 3/4 perpendicular 3/4
c) * 2/3 perpendicular 1/3 perpendicular 1/3
c) * 1/5 perpendicular 1/3 perpendicular 1/3
c) * 2/5 perpendicular 1/3 perpendicular 1/3
c) * 3/5 perpendicular 1/3 perpendicular 1/3
c) * 4/5 perpendicular 1/3 perpendicular 1/3
c) * 1/5 perpendicular 2/3 perpendicular 2/3
c) * 2/5 perpendicular 2/3 perpendicular 2/3
c) * 3/5 perpendicular 2/3 perpendicular 2/3
c) * 4/5 perpendicular 2/3 perpendicular 2/3
c) * 2/5 perpendicular 1/5 perpendicular 1/5
c) * 3/5 perpendicular 1/5 perpendicular 1/5
c) * 4/5 perpendicular 1/5 perpendicular 1/5
c) * 3/5 perpendicular 2/5 perpendicular 2/5
c) * 4/5 perpendicular 2/5 perpendicular 2/5
c) * 4/5 perpendicular 3/5 Perpendicular 3/5
parallel:平行、perpendicular:垂直
潛在的額外限制
可以進一步約束一當前區塊的該可用分割,以便防止額外的冗餘或者為了獲得一更受限制的分割概念。下面列出了一些重要的例子:
1. 高階冗餘
除了上述連續平行和連續垂直分割中的冗餘之外,當考慮更多分割順序時可能存在更多冗餘。例如一範例,考慮位置(0,0)處的一個16x16區塊以及該以下兩種分割方式(根據表1中的該規則,這兩種方式都不被禁止)。 方法A: (1)具有比例1/4的垂直分割應用於位置(0,0)的16×16區塊 (2)具有比率1/2的水平分割應用於位置(0,0)的4×16區塊 (3)具有比例2/3的垂直分割應用於位置(4,0)的12×16區塊 (4)具有比率1/2的水平分割應用於位置(4,0)的8×16區塊 方法B: (1)具有比例3/4的垂直分割應用於位置(0,0)的16x16塊 (2)具有比率1/2的水平分割應用於位置(0,0)的12x16塊 (3)具有比例1/3的垂直分割應用於位置(0,0)的12x8塊 (4)具有比例1/3的垂直分割應用於位置(0,8)的12x8塊
如圖13所示,兩種方法產生以下分割為5個子區塊:位置(0,0)處的4×8區塊、位置(4,0)處的8×8區塊、位置(0,8)處的4×8區塊、位置(4,8)處的8×8區塊、和位置(12,0)處的4×16區塊。與上面討論的該冗餘垂直分割類似,兩種方法的該編碼順序通常是不同的(在圖13中,該編碼順序由該結果區塊內的該數字表示),因此兩種分割方式實際上代表不同的編碼模式。這種更高階的冗餘可以被禁止,或者可以藉由語法而允許它們。
2. 分割鏈的限制
為了將該分割限制為選定的分割樣型,限制一系列分割可能是有益的。舉一個簡單的例子,考慮分割
Figure 02_image125
的該總體集合。限制分割系列的一範例如下:只要不違反其他條件(例如,一最小區塊大小),則始終允許對稱分割1/2。但是只有在該第一個子區塊的該相同方向上跟隨一個1/3分割時,才允許該3/4分割。如果當前區塊表示在該相同方向上一先前3/4分割的該第一個子區塊,才允許該1/3分割。這樣的一配置/語法實際上將導致與QTBT相同的分割方案以及額外的三重分割(三重分割是將一區塊分成三個子區塊的分割,大小為1/4、1/2、1/4,參見最先進的技術(文獻[4]))。
然而,為了實現對該可用分割的一某個限制,引入約束的可能性更多。
在本揭露的一個特定實施例中,僅允許這樣的分割鏈,這導致所有得到的區塊具有一寬度
Figure 02_image127
和一高度
Figure 02_image129
的分割,其表示2的整數冪(即,
Figure 02_image131
,n∈N和
Figure 02_image133
Figure 02_image135
)。為了保持該信令有效率,相應的約束可以直接被包括在該語法中。其可以使用表格或任何其他方式指定它們。
3. 平衡限制
在分割限制的該設計中,可以有益的一個觀點是禁止分割的該幾何平衡。在本揭露的一個較佳實施例中,該分割的集合由
Figure 02_image137
給出。例如,如果該分割的限制旨在設計高度和寬度為2的整數冪的區塊,那麼可以從該分割集合中移除1/4或者3/4,並且順序地將2/3或1/3移除,因為一強制序列1/4後跟著2/3給出與3/4然後是1/3該相同的分割。假設3/4和1/3被移除,2/3必須跟隨在一個1/4分割之後(如上一節所示),然後為了保持一幾何平衡3/8被移除而不是5/8。此外,由於1/3被移除,第二部分必須被分成2/3,導致在7/8位置的分割,這是僅僅使用
Figure 02_image139
無法表示的。另一方面,如果移除1/4和2/3,則接下來移除5/8。請注意,3/8將在該第一部分上使用1/3分割,這導致在1/8位置的分割,僅使用
Figure 02_image139
無法表示。這種限制的該平衡減少了分割模式的該數量,但保持了分割的該多樣化。不對稱分割的該集合的該減少之目的是使得之前不對稱分割的該區域不應該再次不對稱地分分割。該原理可以用其他用語來解釋,作為避免一維/點狀的冗餘的概念。語法中禁止使用此分割選項。該結果可以是該可能的分割集合包括以交替方式(例如,左和右)「定位」的分割,使得該第二分割近似於先前分割的該鏡像版本。
4. 樹適應集
除了由於冗餘分支的該消除以及寬高比限制引入的約束而導致的該樹修改之外,對該默認的通用二進制分割樹的進行進一步修改可以在一樹自適應集合中被總結,該樹自適應集合可以藉由發送相應的語法元素來隱式或顯式地被活化。一樹自適應集合可以定義樹葉節點或分支的一特定集合、或一規則的集合以選擇從該默認樹添加和/或移除的樹葉節點或分支。一明確地用信號通知樹自適應集合的該觀點可以包括一樹自適應集合的該使用的該信令和/或一索引的該信令、從樹自適應集合的一預定記錄中選擇一樹自適應集合、使用嵌入在任何高級別語法結構中的可變或固定長度代碼。隱式信令的範圍可以從導出附加樹自適應集合的該使用、以及藉由評估在任何高級別語法結構中和/或在CTU級別或以下的編碼語法元素來從一記錄中選擇一樹自適應合。一個觀點可以將特定的檔次和級別語法元素鏈接到特定的樹自適應集合,以便限制複雜性或消除不支持的區塊寬度、區塊高度或區塊長寬比,這可能與某些檔次-級別組合不兼容。此外,可以根據假設的本地要求,從該時間或空間鄰域的語法元素導出一樹自適應集合,限制或擴展該默認樹。
在本揭露的一較佳實施例中,一隱式樹自適應集合可以由一圖片、圖塊或形狀邊界處的一區塊的異常形狀而被活化。這可能還包括一般應用限制的該覆寫,如寬高比限制。注意,在圖片或圖塊邊界處,一編碼樹單元通常具有一不同的區塊大小。例如,假設一高清圖片為1920x1080亮度樣本,一個CTU大小為128x128亮度樣本。然後,該圖片底部的該CTU僅具有128x56亮度樣本的大小。這裡,儘管該CTU最初仍被認為由128x128亮度樣本組成,但可以推斷出一隱式分割。作為一範例,可以推斷出具有分割比1/2的一水平分割和該第一子區塊的分割比7/8的一隨後水平分割,這導致一個128x56區塊;該剩餘區塊僅包含該圖片外部樣本的,其係未編碼。除了推斷隱式分割之外,用於發送該分割比的該二元決策樹還可以在一圖片或圖塊邊界上調整。例如,對於一邊界處的該區塊,分割引入的在圖片外的一區塊邊界可以被消除。這個概念也可以與隱式分割結合使用。例如,當一區塊不完全位於該圖片/圖塊區域內,但可以推斷出該區塊是垂直的(在右邊界處)或水平的(在底部邊界處)分割,但是為了傳輸該分割比,在該圖片/區塊區域外引入一區塊邊界的所有分割都會從該相應的二元決策樹中消除(即,用於發信號通知該分割比的該樹中的該相應二元決策被推斷為等於0或1)。
限制該二進制分割語法的高級別語法元素
在本揭露的一較佳實施例中,高級別語法包括語法元素,該編碼器藉由該語法元素告知該解碼器該二進制分割樹的該實際配置。在某些應用中,該編碼器複雜性僅允許評估該語法支持的該分割選項的一子集合。為了不發送始終具有相同值的二元決策,該編碼器向該解碼器發信號通知該分割選項的哪個子集合被使用。該高級別語法元素在一個或多個高級別語法結構中被傳輸,例如該序列參數集(SPS:對一編碼視頻序列內的所有圖片有效)、該圖片參數集(PPS:對一個或多個圖片有效)、該切片標頭(對切片有效)等。
限制該可用的分割選項的該高級別語法元素可以包含以下一個或多個參數: • 一最小區塊大小(例如,由一最小區塊寬度和一最小區塊高度指定,或由一最小樣本數量指定); • 一最大分割樹深度; • 一第一次非默認分割後的一最大分割樹深度(即,該分割比不等於1/2的該第一次分割後的該樹深度受限); • 一非默認分割的一最大區塊大小(即,如果該區塊大小大於或等於一給定大小,則僅支持一比率不等於1/2的分割); • 一非默認分割的一最小區塊大小(即,如果該區塊大小小於或等於一給定大小,則僅支持一比率不等於1/2的分割); • 允許的最大和最小寬高比; • 指示該分割比的一子集合的一參數(即,僅支持包括在該指定子集合中的分割比); • 一個參數,表示只支持垂直分割,可能針對區塊大小的一限制集合(即,該第一個分割或該前N個分割除外); • 約束一系列分割的一參數(見上文); • 一個參數,指定是否允許冗餘垂直分割(或通常,導致相同的分區的分割,但對所得區子區塊具有不同的編碼順序)。
該參數可以被包含在多個高級別語法結構中。例如,在該SPS中指定的全局參數可以被該PPS中指定的參數所覆蓋。
分割比的編碼
圖5係顯示一示例性分割大小為64的信令圖(假設沒有進一步的限制)。為了避免過時二元決策的傳輸,可以採用用於修剪該二元決策樹的一特殊演算法。本揭露的一特定實施例使用一特殊演算法來修剪該信令樹(圖5中示出了一完整決策樹的範例)。該概念基本上使用該相同的二元決策樹來用信號通知所有分割比,但是在實際編碼任何二元決策(bin)之前,基於該分割比的該可用性來修剪該樹。或者換句話說,基於該分割比的該可用性所推斷為等於0或1的二元決策不被發送,而是在該解碼器側推斷。
因此,從該完整二元決策樹開始,該信令樹的輸出(該樹的樹葉節點)根據它們的可用性進行標記,其中可以根據上述該規則的任何組合導出該可用性(包括最小區塊大小、區塊粒度、最小和最大寬高比、冗餘並行分割、冗餘垂直分割等)。每個節點都包含有關該上下文模型的一信息,該信息用於使用CABAC引擎對該特定二元決策(bin)進行編碼。
該減少(或修剪)演算法如下減少決策樹。最初,假設用於發信號通知該分割比的該二元決策樹的所有節點都是可用的。然後,根據該相應分割比的該可用性將該樹的該樹葉節點標記為可用或不可用(其根據任何規則導出,例如,規則或上面指定的規則的一子集合)。然後,根據以該下兩個規則從該底部到該頂部修剪該決策樹: (1)如果一節點沒有可用的子節點(即,兩個子節點都被標記為不可用),則該節點被標記為不可用(即,它最終從該決策樹中移除)。(2)如果一個節點只有一個可用子節點,則該節點將被替換為該子節點(該子節點在決策樹中向上移動一級)。作為該所描述的樹修剪演算法的結果,獲得一新的二元決策樹。該樹的每個非樹葉節點具有兩個可用子節點,並且每個樹葉節點表示一個可用的分割比。注意,該獲得的二叉樹可以表示該原始的完整決策樹或一較小的二元決策樹。
在圖6中,其係顯示縮減的信令決策樹的三個範例(對於圖5的該完整決策樹)。在圖中 6a),呈現了沒有可能結果{3/8, 5/8}的一簡化樹的一個範例。在圖6b)中,該結果{1/4}不可用。在圖6c)中,比率{1/2, 3/8, 1/4}不可用。藉由比較在圖6中的該樹與在圖5中該完整樹,可以觀察到哪些節點被消除以及哪些節點被保留(該節點由一上下文模型id標記,其可以用於編碼該特定決策)。
在圖5、圖8和圖9中,其呈現用於對不同分割尺寸的該分割比進行編碼的二元決策樹。在本揭露的一較佳實施例中,使用自適應二進制機率模型對該二元決策進行算術編碼。該機率模型的該選擇可取決於該以下任何一種(或其組合): •  決策樹中的節點; •  二進制分割樹的當前深度; •  分割方向; •  空間相鄰區塊中的分割方向; •  空間相鄰區塊中的區塊大小; •  時間相鄰區塊中分割方向; •  時間相鄰區塊中的區塊大小。
在本揭露的一較佳實施例中,機率模型集合(也稱為上下文模型集合)到二元決策節點的分配不針對縮減決策樹進行修改。這意味著,對於每個二元決策,使用該相同的上下文模型集合(其中基於附加參數選擇一機率模型),而不管該二元決策是否被編碼為該完整決策樹的一部分或任何形式的縮減決策樹。
在一特定實施例中,一非默認分割之後的一樹的該深度被限制。因此,一第一個非默認分割意味著完成稀缺分割,並且該最後幾個可用深度將用於微調該區塊邊緣。將該推理轉換為本揭露,用“ctx0”和“ctx1”(在圖5和6中)標記的二元決策的機率模型的選擇係基於該分割樹的該當前深度,但是機率模型的不同集合是用於“ctx0”和“ctx1”。用“ctx2”、“ctx3”、“ctx5”、“ctx7”以及“ctx8”(圖5、圖8、圖9)標記的該二元決策都使用相同的機率模型進行編碼;對於每個決策樹,基於該分割樹的該當前深度和該相鄰區塊的該大小來選擇該機率模型。如果一細分區塊在一端具有小的相鄰區塊而在另一端具有大的相鄰區塊,則假設由當前細分產生的該區塊的該較小者將被放置在與其他小區塊相鄰的該側。標記為“ctx6”的該二元決策的該機率模型是基於相鄰區塊的大小有多大變化來選擇的(如果它們變化很大,則假設1/5或4/5比率可能較有可能,因為它們導致區域差異較大的細分)。一特定實施例可以如下定義該上下文模型。一分割區域如圖10所示。鄰居訪問的該錨點名為A1、A2、B1和B2。該區域假定是具有一特定深度
Figure 02_image141
的一分割樹中的一特定節點的一特殊表示。在該節點的路徑上,首先
Figure 02_image143
分割是默認分割,因此模擬深度為
Figure 02_image145
的一四叉樹。對於決策“ctx0”和“ctx1”的編碼,機率
Figure 02_image147
Figure 02_image149
被選擇。對於決策ctx2”、“ctx3”、“ctx5”、“ctx6”、“ctx7”以及“ctx8”的編碼,該鄰居被檢查(該鄰居被定義為根據圖10錨定在該分割塊處的該單元)。如果該分割方向是水平的,則
Figure 02_image151
是錨B1處的該鄰居,
Figure 02_image153
是錨B2處的該鄰居。如果該分割方向是垂直的,則
Figure 02_image151
是錨A1處的該鄰居,
Figure 02_image153
是錨A2處的該鄰居。該相鄰區塊具有一特定區域
Figure 02_image155
Figure 02_image157
。如果
Figure 02_image155
等於
Figure 02_image157
,則將該上下文偏移
Figure 02_image159
定義為1。如果
Figure 02_image155
大於
Figure 02_image157
,則
Figure 02_image159
定義為0。在所有其他情況下,它被定義為2。上下文“ctx6”的機率被定義為
Figure 02_image161
。還定義了
Figure 02_image163
。對於該其他上下文,機率定義如下:
Figure 02_image165
在另一實施例中,用於對該二元決策進行編碼的該二進制機率模型的該選擇係基於以下該假設:與在一已解碼的圖片的所謂並置CTU的一對應分割樹相比,在一圖片中的一特定CTU的一分割樹是相似的結構化的。在不失一般性的情況下,一並置CTU可以被定義為當使用從該當前CTU的位置和大小(例如CTU的中心位置)所導出的該坐標來存取一給定參考圖片中的一CTU時獲得的CTU。從該所獲得的並置CTU,可以使用分割深度或CTU維度或兩者,或者該並置CU的任何其他語法元素來選擇用於發信號通知分割決策的機率模型(在圖4中)。獨立地,來自該所獲得的並置CTU、分割深度或CTU維度或兩者的語法元素、或來自該所獲得的並置CU的任何其他語法元素可用於選擇用於發信號分割比決策的機率模型(在圖5至圖9中)。
在另一實施例中,來自該所獲得的並置CTU、分割深度或CTU維度或兩者的語法元素或任何其他語法元素可用於在沒有附加信令的情況下推斷一個或所有二進制分割決策(在圖4中)。獨立地,來自該所獲得的並置CTU、分割深度或CTU維度或兩者的語法元素、或來自該所獲得的並置CU的任何其他語法元素可用於推斷一個、任何或所有分割比決策(在圖5至圖9中)。
通常,該分割決策取決於分割的該可用性。由於若干狀態相關原因,一分割可能無法使用。例如,在(1)中定義的該特定實施例中,對於寬度和高度小於32的所有區塊,對於該尺寸,可以使用一垂直3/8分割。
8 12 16 20 24 28 32
8 F F F F F F F
12 F F F F F F F
16 F F F F F F F
20 F F F F F F F
24 F F F F F F F
28 F F F F F F F
32 T T T T T T T
其中F表示假,即不可用,T表示真,即可用。高度用行表示,寬度用列表示。然而,此表的該值可能會更改,具體取決於深度大小等其他因素。例如,在以下場景中可以禁止寬度大小為32的該整個分割可用性。如果非對稱分割的該最大深度設置為3且該CTU大小為128,則一系列不對稱分割導致該子區塊分割大小: 128x128->96x128->96x96->24x96->24x32, 藉由該特定子區塊上的3/4->3/4->3/4->3/4獲得,防止沿該寬度32的另一不對稱分割3/8。
對於該相同的特定實施例的另一個分割範例是該表
8 12 16 20 24 28 32
8 F F F F F F F
12 F F F F F F F
16 T T T T T T F
20 F F F F F F F
24 F F F F F F F
28 F F F F F F F
32 T T T T T T T
對於沿該垂直方向1/4分割。例如,如果對該寬高比的約束設置為8,則禁止四分之一分割可能是這種情況。編碼樹語法
coding_tree( x0, y0, cbSizeX, cbSizeY, ctDepth ) { 描述子
     if( x0 + cbSizeX <= pic_width_in_luma_samples &&           y0 + cbSizeY <= pic_height_in_luma_samples &&           (cbSizeX > MinCbSizeX && cbSizeY > MinCbSizeY )  
          split_mode( x0, y0, cbSizeX, cbSizeY )  
     if( cu_qp_delta_enabled_flag && floor( log2[cbSizeX] ) >= Log2MinCuQpDeltaSize &&           floor( log2[cbSizeY] ) >= Log2MinCuQpDeltaSize && ) {  
          IsCuQpDeltaCoded = 0  
          CuQpDeltaVal = 0  
     }  
     if( SplitFlag[ x0 ][ y0 ] ) {  
          x1 = x0 + SplitOffsetX  
          y1 = y0 + SplitOffsetY  
          coding_tree( x0, y0, SplitOffsetX, SplitOffsetY, ctDepth + 1 )  
          coding_tree( x1, y1, cbSizeX – SplitOffsetX, cbSizeY – SplitOffsetY, ctDepth + 1 )  
     } else  
          coding_unit( x0, y0, cbSizeX, cbSizeY )  
}  
分割模式語法
split_mode( x0, y0, cbSizeX, cbSizeY ) { 描述子
     if( PerpendicularSplitAvailable[ cbSizeX ][ cbSizeY ] )  
         split_perpendicular_flag [ x0 ][ y0 ] ae(v)
     if( !split_perpendicular_flag[ x0 ][ y0 ] && ParallelSplitAvailable[ cbSizeX ][ cbSizeY ] )  
         split_parallel_flag [ x0 ][ y0 ] ae(v)
     if( split_perpendicular_flag[ x0 ][ y0 ] || split_parallel_flag[ x0 ][ y0 ] ) {  
         split_symmetrical_flag [ x0 ][ y0 ] ae(v)
          SplitFlag[ x0 ][ y0 ] = 1  
   
          if( !split_symmetrical_flag[ x0 ][ y0 ] ) {  
              if( SplitRatioDiv4Available[ cbSizeX ][ cbSizeY ] &&                    SplitRatioDiv8Available[ cbSizeX ][ cbSizeY ] ) {  
                  split_ratio_div4_flag [ x0 ][ y0 ] ae(v)
              }  
              else if( SplitRatioDiv4Available[ cbSizeX ][ cbSizeY ] )  
                   split_ratio_div4_flag[ x0 ][ y0 ] = 1 ae(v)
              else  
                   split_ratio_div4_flag[ x0 ][ y0 ] = 0  
   
              if( split_ratio_div4_flag[ x0 ][ y0 ] ) {  
                   if( IsSplitRatioDiv4OffsetCoded )  
                       split_ratio_div4_offset [ x0 ][ y0 ] ae(v)
              }  
              else {  
                   if( IsSplitRatioDiv8OffsetCoded )  
                       split_ratio_div8_offset [ x0 ][ y0 ] ae(v)
              }  
          }  
     }  
}  
諸如SplitRatioDiv4Available、SplitRatioDiv8Available、IsSplitRatioDiv4OffsetCoded、IsSplitRatioDiv8OffsetCoded之類的該分割決策變量的該值受制於之前舉例說明的該可用性限制,特別是該其他高級別語法元素,例如最小區塊大小和最大樹深度,在本文提出的描述中給出。
編碼器操作
在一典型的現代視頻編碼器中,多種編碼模式之間的該決定係基於一拉格朗日函數J=D+λ⋅R的一最小化,其中對於一給定模式,D是該原始區塊和重構區塊之間的一失真度量(例如,該平方和差異(SSD、Sum of Squared Differences)),R表示在該給定模式(包括用於分割的位元、諸如幀內預測模式或運動參數的輔助信息、以及該變換係數的量化索引)下發送區塊所需的位元數(或其估計值)。這種拉格朗日方法也可用於決定不同的分割模式。為了獲得最佳決策,使用一深度優先方法進行編碼是很重要。這意味著為了計算一某個分割模式的該速率-失真成本J,必須考慮每個子區塊(包括進一步分割)的該最佳速率失真成本。這可以藉由使用一深度優先方法來確保。針對一某種分割模式的該成本計算如下。首先決定該第一子區塊的該成本。此時,決定包括所有可能的分割模式的該第一子區塊的該最佳編碼模式(在速率-失真意義上)。給定該第一子區塊的該最佳編碼模式,決定該第二子區塊的該最佳編碼模式(同樣,必須考慮潛在的分割)。一分割模式的該速率-失真成本J是子區塊的該速率-失真成本的該總和。這個概念可以使用一遞歸函數實現,類似於以下(簡化)虛擬代碼:
function rd_cost( block )  {  best_mode = “no split”  min_cost = distortion( block ) + lambda * rate( block )    for( split_mode ) // loop over all split modes  {  cost = rd_cost( first_subblock( split_mode ) )  + rd_cost( second_subblock( split_mode ) )  if( cost < min_cost )  {  best_mode = split_mode  min_cost = cost  }  }  return min_cost  }
請注意,一編碼器不需要評估語法中支持的所有編碼選項。為了降低編碼器複雜度,僅測試該最可能的分割模式並跳過對分割不太可能的模式的評估通常是有益的。最值得注意的是,該第一次非默認分割後一樹的該最大深度是一個非常重要的參數,用於平衡該預期的rd性能和運行時間。一允許非默認分割的該最大區塊大小可用於限制對具有大區塊的分割的該測試,此時更小的區塊更可能(例如,對於內部切片)。此外,在一編碼器中測試的該最大寬高比可以小於語法支持的最大寬高比(相應地,測試的該最小寬高比可以大於語法支持的該最小寬高比)。
除了冗餘的該縮減之外,可以結合不改變信令的其他啟發式規則以加速分割決策過程。例如,在該rd搜索期間,可以排除沿一個方向的一完整分割集合,如果該相應的對稱分割與垂直方向上的該對稱分割相比沒有改善。這尤其意味著在嘗試兩個對稱分割之後一區塊不會進一步分割,並且不會導致一個rd成本小於用於編碼區塊而沒有任何分割的rd成本。該語法越支持不對稱的分割,啟發式規則越多,加速編碼過程。可以對所得到的分割方案的寬高比設置另一個約束(如果將其實現為僅編碼器優化,則這將對信令沒有影響)。
主要觀點
從該上述原理開始,本揭露有五個主要觀點。
根據一第一觀點,該解碼器10(參見圖14)被配置為將該資料流14的該圖片12分割為區塊18。這裡,執行一遞歸雙分割。使用分割信息控制該分割。對於該分割,設置一第一分割線16s的一第一分割線方向。沿著該第一分割線16s1,一預定子區塊16a,這裡是該圖片區塊16的左上四分之一,藉由該遞歸雙分割分成一對兒子子區塊編碼單元1和編碼單元2。這些子區塊編碼單元1和編碼單元2形成後續的分割級別3,而該子區塊16a由分割級別1和2形成,假設級別0被分配給區塊16/18。
該分割線16s的該設置是根據一第二分割線16s2的一第二分割線方向來執行的,沿著該第二分割線16s2將該圖片區塊16的該先前分割等級1的一祖父子區塊分割成該預定的子區塊並且在另一個子區塊中。
這裡,該祖父子區塊指的是圖片區塊16/18的一左半部分。然而,在該級別0的不同地設置情況下,該祖父子區塊也可以被理解為該整個圖片區塊16或18本身,因為必須考慮與前一個或後一個分割級別(參見圖2)的該關係。
根據一第二觀點的另一實施例,其提供了一種用於從該資料流14解碼該圖片12的一解碼器,該解碼器被配置為藉由該遞歸雙分割在解碼區塊16中執行圖片12的圖片區塊18(參見圖1)的該分割。這藉由使用該資料流14中的一分割信息來控制,使得一預定子區塊,例如,16a或對應於圖2中的任何節點的另一區塊(即,區塊18本身或其部分)被分割,考慮到: -  是否要分割該預定子區塊(例如,16a)或者使其保持未分割,和/或 -  一分割線的一分割線方向(例如,一水平或垂直分割線方向)和/或 -  一分流比率。
根據一第三觀點,該解碼器10藉由該控制分割的一個或多個語法元素的上下文自適應熵解碼來執行圖片分割。這裡,該資料流14的一上下文被使用。應注意,該上下文可以例如取決於一個或多個相鄰編碼區塊的一大小。
根據一第四觀點,該解碼器10可以被配置為以該解碼器10可以切換的至少兩種不同模式執行該分割。這兩種模式彼此不同,例如,可能有以下目的: -  必須適合每個編碼區塊的最小區塊大小, -  最大分割樹深度, -  在一當前圖片區塊的一當前子區塊的一分割之後的最大分割樹深度,其中該分割沿著一分割線,其係垂直於一父親區塊的一分割線, -  允許非對稱分割的一當前圖片的一子區塊的一最大區塊大小, -  由一當前圖片區塊的一當前子區塊的一分割產生的一兒子子區塊的最大/最小寬高比, -  等等。
根據一第五觀點,該解碼器10可以執行該分割。這裡,該解碼器10被配置為藉由根據一個或多個規則去除分割比來減少分割比的一基本列表(參見圖5和6的附圖標記30),以便獲得分割比的一縮減列表32。
該基本列表30對應於橋型的一個二叉樹34樹葉42、37,其與該基本列表30的該分割比之一相關聯。該縮減列表32對應於藉由從樹葉42、37到主根節點44的移除而由該二叉樹34所得的一縮減二叉樹50。該二叉樹34的每個節點40、38具有屬於該縮減列表32的子節點。之後,以代替僅具有一個未移除的子節點的該二叉樹34的每個節點,使得該未移除的子節點直接附加到該二叉樹34的該節點,其相應中間節點係該節點的子節點。
該縮減二叉樹50的該左邊(例如,該第一個)分支(在圖5和6中示例性地分配為“0”)與一第一個二元決策(bin)值相關聯,而該右邊(該第二個)分支(在圖5和6中示例性地分配為“1”)與一第二個二元決策(bin)值相關聯。該縮減列表32的每個分割比與一個bin值序列相關聯的,其對應於與該分支相關聯的一個二元決策(bin)值的序列,該分支在該縮減二叉樹50中從該縮減二叉樹50的一主根節點52導向與相應的分割比相關聯的一樹葉54。之後,執行與一個或多個bin值的一序列對應的一個bin字串的一個熵編碼。
儘管在上述觀點內,該方法主要在一解碼器或一解碼方法的上下文中討論,但應注意,該原理對於一編碼器和一編碼方法也是有效的。
其他觀點
用於將區塊劃分為編碼單元、預測單元、變換單元等的該通用二進制分割框架可以影響一視頻編解碼器的其他部分。以下描述了這些觀點中的一些。
1. 變換編碼的適應性
所描述的具有廣義二進制分割的分區通常導致區塊寬度和區塊高度表示不是為2的整數冪。在最先進的視頻編解碼器(HEVC (文獻[1])或JEM (文獻[3]))中,這樣的變換大小是不支持。因此,需要對該變換編碼進行一些修改。需要修改/擴展該變換係數級別(量化索引)的變換以及熵編碼。
雖然最先進的視頻編解碼器通常僅指定2的次冪的變換大小,但是該通用框架要求指定額外的變換大小。
另一觀點涉及在一變換區塊中的該最後非零變換係數的一編碼。在HEVC中,藉由發送該最後的非零變換係數的該x坐標和該y坐標來指示該最後的非零變換係數的該位置。該相應的熵代碼被設計,以針對對於寬度和高度均表示2的整數冪的區塊。該下表係摘自ITU-T H.265|ISO / IEC 23008-2建議書;粗體標記部分指定語法元素last_sig_coeff_x_prefix、last_sig_coeff_y_prefix、last_sig_coeff_x_suffix、last_sig_coeff_y_suffix的二值化處理,其指定在一變換區塊中的該最後非零變換係數的該位置。
residual_coding( ) transform_skip_flag[ ][ ][ ] FL cMax = 1
last_sig_coeff_x_prefix TR cMax = ( log2TrafoSize << 1 ) 1 , cRiceParam = 0
last_sig_coeff_y_prefix TR cMax = ( log2TrafoSize << 1 ) 1 , cRiceParam = 0
last_sig_coeff_x_suffix FL cMax = ( 1 << ( ( last_sig_coeff_x_prefix >> 1 )  1  )    1  )
last_sig_coeff_y_suffix FL cMax = ( 1 << ( ( last_sig_coeff_y_prefix >> 1 )  1  )    1  )
coded_sub_block_flag[ ][ ] FL cMax = 1
sig_coeff_flag[ ][ ] FL cMax = 1
coeff_abs_level_greater1_flag[ ] FL cMax = 1
coeff_abs_level_greater2_flag[ ] FL cMax = 1
coeff_abs_level_remaining[ ] 9.3.3.9 current subblock scan index i, baseLevel
coeff_sign_flag[ ] FL cMax = 1
在本揭露的一特定實施例中,語法元素last_sig_coeff_x_prefix、last_sig_coeff_y_prefix、last_sig_coeff_x_suffix、last_sig_coeff_y_suffix的該二值化被修改如下: 版本1。
 
residual_coding( ) transform_skip_flag[ ][ ][ ] FL cMax = 1
last_sig_coeff_x_prefix TR cMaxX = ( ceil( log2( TrafoSizeX ) ) << 1 ) 1 , cRiceParam = 0
last_sig_coeff_y_prefix TR cMaxY = ( ceil( log2( TrafoSizeY ) ) << 1 ) 1 , cRiceParam = 0
last_sig_coeff_x_suffix FL cMaxX = ( 1 << ( ( last_sig_coeff_x_prefix >> 1 )  1  )    1  )
last_sig_coeff_y_suffix FL cMaxY = ( 1 << ( ( last_sig_coeff_y_prefix >> 1 )  1  )    1  )
coded_sub_block_flag[ ][ ] FL cMax = 1
sig_coeff_flag[ ][ ] FL cMax = 1
coeff_abs_level_greater1_flag[ ] FL cMax = 1
coeff_abs_level_greater2_flag[ ] FL cMax = 1
coeff_abs_level_remaining[ ] 9.3.3.9 current subblock scan index i, baseLevel
coeff_sign_flag[ ] FL cMax = 1
版本2:請注意,該後綴cMax值的該更正僅適用於TrafoSize 10,20,40等(3/8-5/8分割)。
 
residual_coding( ) transform_skip_flag[ ][ ][ ] FL cMax = 1
last_sig_coeff_x_prefix TR cMaxPrefixX = floor( ( log2( TrafoSizeX ) * 2 ) - 0.5 ) , cRiceParam = 0
last_sig_coeff_y_prefix TR cMaxPrefixY = floor( ( log2( TrafoSizeY ) * 2 ) - 0.5 ) , cRiceParam = 0
last_sig_coeff_x_suffix FL cMaxX = ( 1 << ( ( last_sig_coeff_x_prefix >> 1 )  1  )    1  ) cMax = cMax – ( ( ( floor( log2( TrafoSizeX ) ) >> 2 ) & TrafoSizeX ) && ( last_sig_coeff_x_prefix == cMaxPrefixX ) ) ? 1 : 0
last_sig_coeff_y_suffix FL cMaxY = ( 1 << ( ( last_sig_coeff_y_prefix >> 1 )  1  )    1  ) cMax = cMax – ( ( ( floor( log2( TrafoSizeY ) ) >> 2 ) & TrafoSizeY ) && ( last_sig_coeff_y_prefix == cMaxPrefixY ) ) ? 1 : 0
coded_sub_block_flag[ ][ ] FL cMax = 1
sig_coeff_flag[ ][ ] FL cMax = 1
coeff_abs_level_greater1_flag[ ] FL cMax = 1
coeff_abs_level_greater2_flag[ ] FL cMax = 1
coeff_abs_level_remaining[ ] 9.3.3.9 current subblock scan index i, baseLevel
coeff_sign_flag[ ] FL cMax = 1
這導致該以下二值化表。 版本1的代碼表(對於Trafosize的選定值):
Coordinate value TrafoSize=6 TrafoSize=10 TrafoSize=12 TrafoSize=20 TrafoSize=24
0 0 0 0 0 0
1 10 10 10 10 10
2 110 110 110 110 110
3 1110 1110 1110 1110 1110
4 11110 0 11110 0 11110 0 11110  0 11110  0
5 11110 1 11110 1 11110 1 11110  1 11110  1
6   111110 0 111110 0 111110  0 111110  0
7   111110 1 111110 1 111110  1 111110  1
8   1111110 00 1111110 00 1111110 00 1111110 00
9   1111110 01 1111110 01 1111110 01 1111110 01
10     1111110 10 1111110 10 1111110 10
11     1111110 11 1111110 11 1111110 11
12       11111110 00 11111110 00
13       11111110 01 11111110 01
14       11111110 10 11111110 10
15       11111110 11 11111110 11
16       111111110 000 111111110 000
17       111111110 001 111111110 001
18       111111110 010 111111110 010
19       111111110 011 111111110 011
20         111111110 100
21         111111110 101
22         111111110 110
23         111111110 111
版本2的代碼表(對於Trafosize的選定值):
Coordinate value TrafoSize=6 TrafoSize=10 TrafoSize=12 TrafoSize=20 TrafoSize=24
0 0 0 0 0 0
1 10 10 10 10 10
2 110 110 110 110 110
3 1110 1110 1110 1110 1110
4 1111 0 11110 0 11110 0 11110  0 11110  0
5 1111 1 11110 1 11110 1 11110  1 11110  1
6   111110 0 111110 0 111110 0 111110 0
7   111110 1 111110 1 111110 1 111110 1
8   111111 0 111111 00 1111110 00 1111110 00
9   111111 1 111111 01 1111110 01 1111110 01
10     111111 10 1111110 10 1111110 10
11     111111 11 1111110 11 1111110 11
12       11111110 00 11111110 00
13       11111110 01 11111110 01
14       11111110 10 11111110 10
15       11111110 11 11111110 11
16       11111111 00 11111111 000
17       11111111 01 11111111 001
18       11111111 10 11111111 010
19       11111111 11 11111111 011
20         11111111 100
21         11111111 101
22         11111111 110
23         11111111 111
TrafoSize的該二值化代碼等於一個2的整數冪不會改變。請注意,版本1包括冗餘(某些代碼的不必要的二元決策(bin)),而版本2的該代字碼表不包括冗餘的二元決策(bin)。
2. 變換用於幀內預測模式的運動搜索 / 評估
與前一節一致,該新的分割結構需要各種新的變換,其中Hadamard變換矩陣用於預測殘差。通常,該Hadamard變換被用作一DCT的非常簡單的一近似。在典型的編碼演算法中,絕對Hadamard係數之該和例如用作該子樣本運動搜索中的速率-失真度量或幀內預測模式的該預選擇。
對於具有可用分割比{1/2, 1/4, 3/4, 3/8, 5/8, 1/3, 2/3, 1/5, 4/5, 2/5, 3/5 }的該特定實施例,如果該最大CTU大小為128,則出現該新的亮度區塊尺寸96、80、48、40、24、20和12。該相應的Hadamard矩陣並非都是明確構造的。事實上,使用Paley的有限場域構造,構造大小為20和12的Hadamard矩陣就足夠了。其他尺寸由Kronecker產品構建,因為Hadamard矩陣的Kronecker產品會再次是Hadamard矩陣。藉由Kronecker產品構造其他矩陣的該優點在於,不必完整構造一完全的大尺寸Hadamard矩陣。例如,代替應用一個80x80的Hadamard矩陣,對於各個子區塊使用一個已知的4x4 Hadamard矩陣就足夠了。對於該最後一部分,子區塊的該總和是相對於該20x20 Hadamard矩陣中給出的正確符號完成的。所有其他尺寸都可以使用該新的20x20或12x12 Hadamard變換以一相同的方式構建。
3. 合併候選者的推導
由於更複雜的區塊分割(與現有技術的分割方法相比),一特定區塊(分割樹的樹葉)的鄰居的該數量和拓撲可以不同。相鄰區塊的編碼參數例如被用於導出合併候選者、運動向量預測候選者或最可能的幀內預測模式。結合該廣義分割框架,對針對在該相鄰區塊中選擇候選者的該現有技術策略的一調整(參見HEVC)可以導致一改進的編碼效率。該最先進的策略通常隱含地假設區塊具有一正方形形狀。但是藉由該廣義分割概念,該區塊寬度可以比該區塊高度大得多,反之亦然。在那種情況下,沿著該長區塊邊緣而不是沿著該短區塊邊緣考慮更多候選區塊可能是較佳的。這可以包括但不限於:沿著一區塊的該邊緣掃描所有鄰居(例如,找到從該相鄰曲塊導出的一度量的一極值或一均值);定義附加的相鄰錨點(例如,在掃描合併候選者的該情況下,在一區塊的該左邊邊緣和上邊邊緣的該中間添加錨點)。
圖16係顯示用於將由一圖片序列120組成的一視頻110預測編碼成一資料流140的一裝置。為此,使用逐塊預測編碼。此外,示例性地使用基於變換的殘差編碼。使用參考標記100指示該裝置或編碼器。圖16係顯示一相應的解碼器200,即,被配置為預測性地解碼由來自該資料流140的圖片區塊中的圖片120’所組成的該視頻110’的一裝置200,這裡也是示例性地使用基於變換的殘差解碼,其中撇號已被用於指示分別由解碼器200重建的圖片120’和視頻110’,在由該預測殘差信號的一量化引入的編碼損失方面,其偏離最初由裝置100編碼的圖片120。圖16和圖17示例性地使用基於變換的預測殘差編碼,但是本申請的實施例不限於這種預測殘差編碼。對於關於圖16和17描述的其他細節也是如此,這將在下文中概述。
該編碼器100被配置為對該預測殘差信號進行空間到頻譜變換,並將如此獲得的該預測殘差信號編碼到該資料流140中。同樣地,該解碼器200被配置為對來自該資料流14的該預測殘差信號進行解碼,並對如此獲得的該預測殘差信號進行頻譜-空間變換。
在內部,該編碼器100可以包括一預測殘差信號形成器220,其產生一預測殘差240,以便測量一預測信號260與該原始信號(即視頻110或一當前圖片120)的一偏差。該預測殘差信號形成器220例如可以是一減法器,其從該原始信號(即當前圖片120)中減去該預測信號。該編碼器100然後更包括一變換器280,其使該預測殘差信號240經歷一空間到頻譜變換,以獲得一頻譜域預測殘差信號240’,其然後由一量化器320進行量化,該編碼器100也包括該量化器320。如此該量化的預測殘差信號240’’被編碼到位元流140中。至此,編碼器100可以可選地包括一熵編碼器340,其對經過變換和量化的該預測殘差信號進行熵編碼而至資料流140。該預測殘差260由編碼器100的一預測級360基於被解碼至資料流140並且可從資料流140解碼的預測殘差信號240’’來生成。為此,如圖16所示,該預測級360可以在其內部包括一去量化器380,去量化器380對預測殘差信號240’’進行去量化,以便獲得對應於信號240’的頻譜域預測殘差信號240’’’,該頻譜域預測殘差信號240’’’除了量化損失之外,接著是一逆變換器400,其使後面的預測殘差信號240’’’經歷一逆變換,即一頻譜到空間變換,以獲得預測殘差信號240’’’’,其中,除了量化損失之外,其對應於該原始預測殘差信號240。然後,該預測級360的一組合器420重新組合,例如藉由相加該預測信號260和該預測殘差信號240’’’’,以便獲得一重建信號460,即該原始信號120的一重建。重建信號46可以對應於信號120’。
然後,預測級360的一預測模塊440藉由使用例如空間預測,即幀內預測和/或時間預測(即幀間預測),基於信號460生成該預測信號260。以下描述這方面的細節。
同樣地,解碼器200可以在其內部由對應於預測級360並且以對應於預測級360的一方式互連的組件組成。具體地,解碼器200的熵解碼器500可以對來自資料流的該量化的頻譜域預測殘差信號240’’進行熵解碼,因此,去量化器520、逆變換器540、組合器560和預測模塊580以上述關於預測級360的模塊的方式互連和協作,基於預測殘差信號240’’以恢復該重建信號,使得,如圖17所示,組合器560的該輸出產生該重建信號,即該視頻110’或其一當前圖片120’。
雖然上面沒有具體描述,但是很容易清楚的是,該編碼器100可以根據一些優化方案設置一些編碼參數,包括例如預測模式、運動參數等,該優化方案例如以優化某些速率和失真的一方式之相關準則,即編碼成本,和/或使用一些速率控制。如下面更詳細描述的,編碼器100和解碼器200以及相應的模塊440、580分別支持不同的預測模式,例如幀內編碼模式和幀間編碼模式,其形成一種原始預測模式的集合或池,基於該原始預測模式,圖片區塊的預測以下面更詳細描述的方式組成。編碼器和解碼器在這些預測合成之間切換的該粒度可以分別對應於將圖片120和120’分為區塊的一細分。注意,這些區塊中的一些可以是僅被幀內編碼的區塊,並且一些區塊可以是僅被幀間編碼的區塊,並且可選地,甚至另外的區塊可以是使用幀內編碼和幀間編碼兩者獲得的區塊,但是細節被設置在下文中。根據幀內編碼模式,基於該相應區塊的一空間已編碼/解碼鄰域以獲得一區塊的一預測信號。可以存在多個幀內編碼子模式,在其中,類似於,表示一種幀內預測參數。可以存在定向或角度幀內編碼子模式,根據該幀內編碼子模式,藉由特定於該對應定向幀內編碼子模式的一特定方向推斷該鄰域的該樣本值,將該相應區塊的該預測信號被填充到該相應區塊中。例如,該幀內編碼子模式還可以包括一個或多個其他子模式,一例如DC編碼模式,根據該子模式,該相應區塊的該預測信號將一DC值分配給該相應區塊內的所有樣本,和/或一平面幀內編碼模式,根據該平面幀內編碼模式,該相應區塊的該預測信號被近似或決定為由該相應區塊的該樣本位置上的一個二維線性函數描述的一樣本值的空間分佈,其具有在該相鄰樣本的基礎上導出由該二維線性函數定義的該平面的傾斜和偏移。與此相比,根據幀間預測模式,可以例如藉由在時間上預測該區塊內部來獲得一區塊的一預測信號。對於一幀間預測模式的參數化,可以在該資料流內用信號通知運動向量,該運動向量指示該視頻110的一先前編碼圖片的該部分的該空間位移,在該部分處該對先前編碼/解碼的圖片進行採樣,以便獲得該相應區塊的該預測信號。這意味著,除了由資料流140包括的該殘留信號編碼之外,諸如表示該量化的頻譜域預測殘差信號240’’的該熵編碼的變換係數級別,資料流140可以在其中編碼用於分配區塊預測模式的預測相關參數、該分配的預測模式的預測參數(例如幀間預測模式的運動參數)、並且可選地使用該所分配的預測模式和預測參數來控制用於該區塊的該最終預測信號的一合成的其他參數,將在下面更詳細地概述。另外,該資料流可以包括分別控制和發信號通知圖片120和120’細分成區塊的參數。該解碼器200使用這些參數以與該編碼器相同的方式細分該圖片,以將相同的預測模式和參數分配給區塊,並執行該相同的預測以產生該相同的預測信號。
圖18係顯示在一方面的重建信號(即重建圖片120’)與在另一方面的該資料流中用信號通知的該預測殘差信號240’’’’和該預測信號260的該組合之間的關係。如上所述,該組合可以是一加法。該預測信號260在圖18中係顯示為該圖片區域的一細分為不同大小的區塊800,儘管這僅是一範例。該細分可以是任何細分,例如將該圖片區域規則的細分為區塊的列和行,或者將圖片120的一多樹細分俾成為不同大小的樹葉區塊,例如一四叉樹細分等,其中一混合在圖18中被顯示,其中該圖片區域首先被細分為樹根區塊的列和行,然後根據一遞歸的多樹細分進一步細分,以產生區塊800。
圖18中的該預測殘差信號240’’’’也被顯示為該圖片區域細分為區塊840。這些區塊可以被稱為變換區塊,以便將其與該編碼區塊800區分開。實際上,圖18示出了編碼器100和解碼器200可以分別使用圖片120和圖片120’的兩個不同細分,以分成區塊,即,一個細分為編碼區塊800,另一個細分為區塊840。兩個細分可以是相同的,即每個區塊80可以同時形成變換區塊840,反之亦然,但是圖18係顯示例如細分的情況,一細分為變換區塊840形成該細分到區塊800的一擴展,使得兩個區塊800之間的任何邊界覆蓋兩個區塊840之間的一邊界,或者可另外地說,每個區塊800或者與變換區塊840中的一個重合或者與變換區塊840的一個集群重合。然而,也可以彼此獨立地決定或選擇細分,使得變換區塊840可以替代地跨越區塊800之間的塊邊界。就該細分為變換區塊840而言,類似的陳述因此與關於該細分為區塊800的那些相似,即該區塊840可以是將圖片區域規則細分為區塊的該結果,以列和行排列,該圖片區域的遞歸多樹細分的該結果、或其組合或任何其他種類的分割。另外,應注意,區塊800和840不限於正方形、矩形或任何其他形狀。此外,將一當前圖片120細分為形成該預測信號的區塊800,以及將一當前圖片120細分為該編碼預測殘差的區塊840,可能不是用於編碼/解碼的唯一細分。這些細分來自執行預測信號決定和殘差編碼的一粒度,但是首先,該殘差編碼可以替代地在沒有細分的情況下完成,其次,在除了這些細分之外的其他粒度,編碼器和解碼器可以設置某些編碼參數,其中可能包括一些上述參數,例如預測參數、預測信號組成控制信號等。
圖18係顯示該預測信號260和該預測殘差信號240’’’’的該組合而直接產生該重建信號120’。然而,應該注意,根據諸如從其他視圖或從其他編碼層獲得的預測信號的替代實施例,可以將多於一個預測信號260與該預測殘差信號240’’’’組合以產生圖片120’,例如,在具有單獨DPB的一單獨預測循環中對其進行編碼/解碼。
在圖4中,該變換區塊840應具有以下含義。變換器280和逆變換器540以這些變換區塊840為單位執行它們的變換。例如,許多編解碼器對所有變換區塊840使用某種DST或DCT。一些編解碼器允許跳過該變換,以便對於一些變換區塊840,該預測殘差信號直接在該空間域中被編碼。然而,根據下面描述的實施例,編碼器100和解碼器200以支持多個變換這樣的一方式配置。例如,編碼器100和解碼器200支持的變換可以包括: ○ DCT-II(或DCT-III),其中DCT代表離散餘弦變換 ○ DST-IV,其中DST代表離散正弦變換 ○ DCT-IV ○ DST-VII ○ 身份轉換(IT)
當然,雖然變換器280將支持這些變換的所有該正向變換版本,但是該解碼器200或逆變換器540將支持其相應的反向或反向版本: ○ 逆DCT-II(或逆DCT-III) ○ 逆DST-IV ○ DCT-IV ○ 逆DST-VII ○ 身份轉換(IT)
在任何情況下,應該注意,所支持的變換集合可以僅包括一個變換,例如一個頻譜到空間或空間到頻譜變換。
如上所述,已經呈現了圖16-18以作為一範例,其中可以實現下面進一步描述的該合成預測概念,以便形成根據本申請的視頻編碼器和解碼器的特定示例。就此而言,圖16和18的該視頻編碼器和解碼器分別表示下面描述的該視頻編碼器和解碼器的可能實現。如下面將更詳細地概述的,當具有該隨後解釋的根據本申請的用於圖16和圖17的該視頻編碼器和解碼器的組合預測的實施例時,圖16的該視頻編碼器和圖17的該視頻解碼器,至少作為一個選項,支持以下面更詳細描述的該方式以處理區塊800,或甚至構成一當前圖片120的所有區塊。因此,下文中描述的該實施例尤其涉及一視頻編碼器,其等於圖16的該編碼器100,其以下面更詳細描述的方式處理區塊800,並且該相同方式適用於圖18的該解碼器,因此,表示根據一實施例的一視頻解碼器的一範例,其中以下面更詳細描述的方式處理區塊800。然而,圖16和17僅是具體範例。然而,根據本申請的實施例的一視頻編碼器可以使用下面更詳細描述的概念來執行基於區塊的編碼,並且與圖16的該編碼器不同,例如,其中該細分為區塊800係與圖18中示例的方式不相同的方式被執行,或者該編碼器不使用變換預測殘差編碼來編碼該預測殘差,例如直接在空間域中。同樣地,根據本申請的實施例的視頻解碼器可以使用下面進一步概述的該合成預測編碼概念從資料流140執行解碼,但是例如可以與圖17的解碼器200不相同,的區別在於細分圖片120’為區塊係與關於圖180描述的方式不同的方式,和/或該方式不從變換域中的該資料流140導出預測殘差,但是例如在空間域中導出預測殘差。
特別地,關於該區塊細分為區塊800,應注意,其可以以關於圖18概述的方式或以不同的方式完成相同的操作。如果存在的話,一細分為變換區塊也可以如關於圖18所描述的那樣或以不同的方式進行。具體地,一方面該細分為區塊而另一方面細分為其他區塊,例如變換區塊,可以藉由分別將圖片120細分為這些區塊,其可以彼此獨立地完成,或以一相關的方式完成。例如,一個細分(例如細分為變換區塊)可以形成如上所述的該另一個細分的一擴展,或者兩個細分可以形成一共同主細分的個別擴展,例如,將該圖片細分為如關於圖18所描述的樹根區塊的一陣列。並且這種可能性也適用於下面將提到的其他子圖片粒度,例如關於某些預測參數的定義、預測模式、貢獻權重等。不同的細分可以用於這些實體中的不同實體,並且可以彼此獨立地定義,部分獨立或作為彼此的擴展。
話雖如此,以下描述集中於編碼器和解碼器處的預測區塊800。該目的是使用具有有限記憶體存取頻寬的多假設來提高視頻的該編碼效率。
在一特定實施例中,在一給定區域上的預測假設的該平均數量是有限的。該區域可以是例如一固定數量的(相鄰)區塊、一切片、一圖片、一圖片組或一整個視頻序列。例如,如果該限制將等於3並且該區域將是一圖片,則圖片的一半可能使用四個預測假設,而另一半使用兩個預測假設。也就是說,如圖19所示,對於該預測區塊800,即該視頻的一預定部分內的幀間預測區塊,使用四個區塊840,即四個預測假設被使用。然後,為了保持預測假設的該決定的平均數量為三,需要對其他預測區塊使用兩個預測假設。在這種情況下,還可以給出預測假設的該數量的一最大值,例如,四個預測假設是該最大值。
每個幀間預測區塊的預測假設的該數量,即該平均數量,可以根據在該預定部分內的先前處理的幀間預測區塊的多個預測假設以及該預定標準,其被插入到該資料流信息中或者一當前處理的幀間預測區塊的預測假設的數量上。
基於該預定部分內的該先前處理的幀間預測區塊的預測假設的該數量以及該預定標準,將該信息編碼到該資料流中,決定一允許的數量間隔,並且使用該允許的數量間隔的一個二值化,將該信息編碼到該資料流中。此外,該允許數量間隔的一最大值越低,該預定部分內的該先前處理的幀間預測區塊的預測假設的該數量越大,並且該允許的數量間隔的該二值化具有更低的一平均字碼長度,該允許的數量間隔的該最大值越低。藉由如上所述的方式進行,可以提高該解碼效率。
在一另一特定實施例中,預測假設的該數量取決於該區塊大小或幾何形狀而受到限制。眾所周知,對於較小的區塊,每個預測假設的該相對預測記憶體存取開銷較高。因此,經由允許一較小數量的假設用於較小的區塊,並且一較大數量的假設用於較大的區塊,因此該總體最壞情況的記憶體存取頻寬可以保持恆定。也就是說,假設的該數量是經由根據該預定的幀間預測區塊的該大小或幾何比較針對假設的該數量N的一上限來決定。作為一範例,如圖20所示,僅考慮一單個顏色通道(例如,亮度),在一個(k+1)抽頭插值濾波器的情況下,相對預測記憶體存取開銷m的一期望最大,一區塊寬度w和高度h,假設的該數量N必須滿足以下公式: N ≤(m*w*h)/((w+kx)*(h+ky))。
藉由使用上述公式決定的該數量N指示針對在該預定部分內的該預定幀間預測區塊的預測假設的一最大數量,即,該數量係相對於該預定幀間預測區塊的可信號通知之假設數量的一上限。
針對每個幀間預測區塊的預測假設的該數量可以被插入到該資料流信息中,或者基於該預定幀間預測區塊的該大小或該幾何形狀,決定一允許的數量間隔,以及使用該允許的數量間隔的二值化,將信息編碼到該資料流中。關於該預測假設的該數量的該信息可以指示該允許的數量間隔的一最大值越低,該預定的幀間預測區塊的該大小越小,並且該允許的數量間隔的該二值化具有一平均字碼長度,其係越低,該允許的數量間隔的該最大值越低。另外,該信息可以指示假設的該數量越大,該預定的幀間預測的區塊越大。藉由如上所述的方式進行,改善了在解碼器的解碼效率。
在一另一特定實施例中,不同的內插濾波器用於該預測假設的不同子集合。例如,對於該第一和第二(單/雙預測)預測假設,可以使用比該後續假設一更長的插值濾波器。經由這樣做,該後續假設的該相對預測記憶體存取開銷將減少。在一較長插值濾波器用於一較少數量的該預測假設的情況下,則一較短插值濾波器用於一較大數量的該預測假設。換句話說,該預測假設的該數量與該插值濾波器的該大小之間的依賴性是單調的。
在一另一特定實施例中,不同的運動向量精度用於該預測假設的不同子集合。例如,該第一和第二(單/雙預測)預測假設可以使用四分之一像素運動向量精度,而該隨後的假設使用全像素精度。因此,該後續假設的該相對預測存記憶體存取開銷將等於每個假設一個。在這種情況下,該預測假設的數量越大,使用的該運動向量精度越粗,即該預測假設的該數量與該運動向量精度之間的該關係是單調的。
儘管已經在一裝置的該上下文中描述了一些觀點,但是顯然這些觀點也表示該對應方法的一描述,其中一區塊或設備對應於一方法步驟或一方法步驟的一特徵。類似地,在一方法步驟的該上下文中描述的觀點還表示一對應裝置的一對應區塊或項目或特徵的一描述。一些或所有該方法步驟可以由(或使用)一硬體設備執行,例如一微處理器、一可編程計算機或一電子電路。在一些實施例中,一些或多個該最重要的方法步驟可以由這樣的一裝置執行。
本揭露的編碼信號可以存儲在一數位存儲媒體上,或者可以在諸如一無線傳輸媒體的一傳輸媒體或諸如網際網路的一有線傳輸媒體上傳輸。
根據某些實現要求,本揭露的實施例可以用硬體或軟體實現。該實現可以使用一數位存儲媒體來執行,例如一軟性磁碟、一DVD、一藍光、一CD、一ROM、一PROM、一EPROM、一EEPROM或一FLASH記憶體,其上存儲有電子可讀取控制信號,它們配合(或者能夠與)一可編程計算機系統協作,以便執行該相應的方法。因此該數位存儲媒體可以是計算機可讀的。
根據本揭露的一些實施例,其包括具有一電子可讀取控制信號的一資料載體,其能夠與一可編程計算機系統協作,從而執行本文所述的該方法之一。
通常,本揭露的實施例可以實現為具有一程式編碼的一計算機程式產品,該程式編碼可操作用於在該計算機程式產品在一計算機上運行時執行這些方法之一。該程式編碼可以例如存儲在一機器可讀載體上。
其他實施例包括用於執行存儲在一機器可讀載體上的本文所述方法之一的該計算機程式。
換句話說,本揭露方法的一實施例因此是具有一程式編碼的一計算機程式,當該計算機程式在一計算機上運行時,該程式編碼用於執行本文所述的該方法之一。
因此,本揭露方法的一另一實施例是一資料載體(或一數位存儲媒體、或一計算機可讀媒體),其包括記錄在其上的用於執行本文所述方法之一的該計算機程式。該資料載體、該數位存儲媒體或該記錄媒體通常是有形的和/或非過渡的。
因此,本揭露方法的一另一實施例是表示用於執行本文所述方法之一的計算機程式的一資料串流或一信號序列。該資料串流或該信號序列可以例如被配置為經由一資料通信連接傳輸,例如經由該網際網路。
一另一實施例包括一處理裝置,例如一計算機或一可編程邏輯設備,其被配置為或適於執行本文所述的該方法之一。
一另一實施例包括一計算機,其上安裝有用於執行本文所述方法之一的該計算機程式。
根據本揭露的一另一實施例包括一種裝置或一系統,其被配置為將用於執行本文所述方法之一的一計算機程式傳送(例如,電子地或光學地)到一接收器。該接收器可以是例如一計算機、一移動設備、一記憶體設備等。該裝置或系統可以例如包括用於將計算機程式傳送到該接收器的一檔案伺服器。
在一些實施例中,一可編輯邏輯器件(例如一現場可編輯閘陣列)可用於執行本文所述方法的一些或全部該功能。在一些實施例中一該現場可編輯閘陣列可以與一微處理器協作,以便執行本文描述的方法之一。通常,該方法較佳地由任何硬體設備執行。
在一些實施例中揭示一種基於區塊的解碼器,用於以編碼區塊為單位從一資料流解碼一圖片,其被配置為:藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸雙分割﹔以及設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊的一預定分割級別的一預定子區塊分割成一後續分割級別的一對兒子子區塊(child sub-blocks),取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊(grandfather sub-block)分成該預定的子區塊和另一個子區塊。
在一些實施例中揭示一種基於區塊的解碼器,其進一步被配置為支持多種編碼模式,並以該編碼區塊為單位從該資料流導出一編碼模式,其用於從該資料流解碼該圖片。
在一些實施例中揭示一種基於區塊的解碼器,其進一步被配置為支持多種編碼模式,其中每種編碼模式具有與其相關聯的一個或多個編碼參數的一編碼模式特定集合,其使用該相應的編碼模式控制該圖片的一解碼,並且該基於區塊的解碼器被配置為以該編碼區塊為單位從該資料流導出用於解碼該圖片的一個或多個編碼參數的該編碼模式特定集合,藉由從每個解碼單元的該資料流導出與編碼模式相關聯的一個或多個編碼參數的該編碼模式特定集合,信號發送的該編碼模式用於該資料流中的該相應編碼區塊。
在一些實施例中揭示一種基於區塊的解碼器,其作為一預測解碼器並且被配置為以頻譜變換的形式從該資料流導出一頻譜域中的該圖片的一預測殘差,所述頻譜變換表示以該編碼區塊為單位的該預測殘差的一分段頻譜變換。
在一些實施例中揭示一種基於區塊的解碼器,其被配置為:將該圖片預分割成樹根區塊的一陣列,並相對於樹根區塊的該陣列的每個陣列執行該圖片區塊的分割。
在一些實施例中揭示一種基於區塊的解碼器,其被配置為:將該圖片預分割成樹根區塊的一陣列,根據該分割信息,使該樹根區塊經歷一單獨的分割,以便將樹根區塊的該陣列細分為預分割樹葉區塊並相對於每個預分割樹葉區塊執行該圖片區塊的該分割。
在一些實施例中揭示一種基於區塊的解碼器,其被配置為取決於該第二分割線方向和該分割信息來設置該第一分割線方向,其係藉由根據該分割信息修改該第一分割線方向,以獲得一修改的分割線方向並將該第二分割線方向設置為等於該修改後的分割線方向。
在一些實施例中揭示一種基於區塊的解碼器,被配置為根據由該分割信息發信號通知的一個二元決策樹來控制該遞歸雙分割,該分割信息指示該圖片區塊的一分割或不分割,該父親區塊藉由該遞歸雙分割被分割成該父親區塊的所有中間子區塊,並且所有樹葉區塊不被該遞歸雙分割所分割。
在一些實施例中揭示一種基於區塊的解碼器,其被配置為控制屬於分割級別的一第一預定集合的該圖片區塊的每個子區塊的該遞歸雙分割,該第一預定集合相對於一分割線的一位置,該相應的子區塊藉由該遞歸雙分割沿著該分割線橫向於該分割線的一分割線方向被分割。
在一些實施例中揭示一種基於區塊的解碼器,其被被配置為控制屬於分割級別的一第一預定集合的該圖片區塊的每個子區塊的該遞歸雙分割,該第一預定集合取決於該分割信息而相對於一分割線的一分割線方向,藉由該遞歸雙分割沿著該分割線來分割該相應的子區塊,其取決於該分割信息及一分割線的一分割線方向,沿其該相應中間區塊的一父親區塊被分割。
在一些實施例中揭示一種基於區塊的解碼器,其中,該第二分割線方向是水平的或垂直的,並且該基於區塊的解碼器被配置為根據該分割信息將該第一分割線方向設置為垂直於或平行於該第二分割線方向。
在一些實施例中揭示一種基於區塊的解碼器,被配置為在分割該圖片區塊時,根據該分割信息,決定將該圖片區塊分割成一對第一分割級別子區塊,或者讓該圖片區塊未被分割,和如果該圖片的該圖片區塊被分割為該對第一分割級別子區塊,則根據該分割信息,將該對第一分割級別子區塊的一第一個第一分割級別子區塊分割成一對第二分割級別子區塊,或者讓該第一個第一分割級別子區塊未被分割,沿著具有一第三分割線方向的一第三分割線執行該圖片區塊的該分割,並且設置一第四分割線的一第四分割線方向,沿著該第四分割線分割該第一個第一分割級別子區塊,其取決於該第三個分割線方向。
在一些實施例中揭示一種基於區塊的解碼器,其被配置為,如果該圖片的該圖片區塊被分割成該對第一分割級別子區塊,根據該分割信息設置該第三個分割方向,以及從該資料流導出由該分割信息獲得的一第一分割旗標,和如果該第一分割旗標具有一第一旗標狀態,則將該第二分割方向設置為垂直於該第一個分割方向、並沿著該第二分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和如果該第一分割旗標具有一第二個旗標狀態,則使該第一個第一分割級別子區塊保持未分割。
在一些實施例中揭示一種基於區塊的解碼器,其被配置為,如果該圖片的該圖片區塊被分割成該對第一分割級別子區塊,從該資料流導出該分割信息包含的一第一分割旗標,和如果該第一分割旗標具有一第一旗標狀態,則將該第四分割方向設置為垂直於該第三個分割方向、並沿著該第四分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和如果該第一分割旗標具有一第二個旗標狀態,從該資料流導出由該分割信息包含的一第二分割旗標,和如果該第二分割旗標具有一第一旗標狀態,則將該第四分割方向設置為平行於該第三個分割方向、並沿著該第四分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和如果該第二分割旗標具有一第二個旗標狀態,則使該第一個第一分割級別子區塊保持未分割。
在一些實施例中揭示一種基於區塊的解碼器,被配置為在分割該圖片區塊時根據該分割信息,決定將該祖父子區塊分割成包括該預定子區塊的一對子區塊,或者讓該祖父子區塊未被分割,和如果該祖父子區塊被分割為該對子區塊,則根據該分割信息,將該對子區塊的該預定子區塊分割成一對兒子子區塊,或者讓該預定子區塊未被分割,沿著具有該第二分割線方向的該第二分割線執行該祖父子區塊的該分割,並且設置該第一分割線的該第一分割線方向,沿著該第一分割線分割該預定子區塊,其取決於該第二個分割線方向。
在一些實施例中揭示一種基於區塊的解碼器,被配置為:從該資料流導出該分割信息包含的一第一分割旗標,和如果該第一分割旗標具有一第一旗標狀態,則將該第一分割方向設置為垂直於該第二個分割方向、並沿著該第一分割線將該預定子區塊分割成該對兒子子區塊,和如果該第一分割旗標具有一第二個旗標狀態,從該資料流導出由該分割信息包含的一第二分割旗標,和如果該第二分割旗標具有一第一旗標狀態,則將該第一分割線方向設置為平行於該第二個分割線方向、並沿著該第一分割線將該預定子區塊分割成該對兒子子區塊,和如果該第二分割旗標具有一第二個旗標狀態,則使該預定子區塊保持未分割。
在一些實施例中揭示一種基於區塊的解碼器,被配置為:從該資料流導出由該分割信息包含的一第三分割旗標,和如果該第三分割旗標具有該第一旗標狀態,則將該第五分割線的一第五分割線方向設置為垂直於該第二個分割線方向、並沿著一第五分割線將該對子區塊的另一子區塊分割成一另一對兒子子區塊,和如果該第三分割旗標具有該第二個旗標狀態,從該資料流導出該分割信息包含的一第四分割旗標,和如果該第四分割旗標具有該第一旗標狀態,則將該第五分割線方向設置為平行於該第二個分割線方向、並沿著該第五分割線將該另一個子區塊分割成該另一對兒子子區塊,和如果該第二分割旗標具有該第二個旗標狀態,則使該另一個子區塊保持未分割。
在一些實施例中揭示一種基於區塊的解碼器,被配置為:如果該預定的子區塊被分成該對兒子子區塊,從該資料流導出由該分割信息包含的一第六分割旗標,和如果該第六分割旗標具有該第一旗標狀態,則將該第七分割線的一第七分割線方向設置為垂直於該第一個分割線方向、並沿著一第七分割線將該對兒子子區塊的一第一兒子子區塊分割成一對孫子子區塊(grandchild sub-blocks),和如果該第六分割旗標具有該第二旗標狀態,從該資料流導出由該分割信息包含的一第七分割旗標,和如果該第七分割旗標具有該第一旗標狀態,則將該第七分割線方向設置為平行於該第一個分割線方向、並沿著該第七分割線將該第一兒子子區塊分割成該對孫子子區塊,和如果該第七分割旗標具有該第二個旗標狀態,則使該第一兒子子區塊保持未分割。
在一些實施例中揭示一種基於區塊的解碼器,被配置為:如果該預定的子區塊被分割成該對兒子子區塊,從該分割信息導出一分割比,指示垂直於該第一分割線方向的該預定子區塊的寬度被分割的比率。
在一些實施例中揭示一種基於區塊的解碼器,其中,該基於區塊的解碼器支持一支持分割比的集合,用於沿著與該第二分割線方向垂直的該第一分割線分割該預定的子區塊,並且被配置為根據一個或多個規則從支持分割比的該集合中排除支持的分割比,獲得支持分割比的一縮減集合,並推斷該第一分割旗標具有該第二旗標狀態,並且如果該縮減集合的一基數為零則跳過其推導。
在一些實施例中揭示一種基於區塊的解碼器,其中,該基於區塊的解碼器支持一支持分割比的另一集合,用於沿著與該第二分割線方向平行的該第一分割線分割該預定的子區塊,並且被配置為根據一個或多個規則從支持分割比的該另一集合中排除支持的分割比,以獲得支持分割比的一另一縮減集合,並推斷該第二分割旗標具有該第二旗標狀態,並且如果該另一縮減集合的一基數為零則跳過其推導。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個取決於垂直於該第一分割線的該預定子區塊的該寬度,來排除支持的分割比。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個規則根據垂直於該第一分割線的該預定子區塊的該寬度排除所支持的分割比,以這樣的一方式排除支持的分割比,其將該寬度分成兩個兒子子區塊的寬度,在樣本中不是一預定整數的一整數倍。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個規則根據垂直於該第一分割線的該預定子區塊的該寬度排除所支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分成兩個兒子子區塊,其中至少一個太小而不能完全包圍至少一個預定的最小尺寸區塊中的一集合的至少一個。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個可以取決於垂直於該第一分割線的該預定子區塊的該寬度,來排除所支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分割成兩個兒子子區塊,其中至少一個具有在一可允許的寬高比範圍之外的一寬高比。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個取決於垂直於該第一分割線的該預定子區塊的該寬度以排除支持的分割比,以這樣的一方式排除支持分割比的一預定子集合,其取決於該預定子區塊所屬的該遞歸雙分割的該分割級別。
在一些實施例中揭示一種基於區塊解碼器,其中,該一個或多個規則中的一個規則根據該圖片區塊的一個或多個其他子區塊的一另一分割線的一另一分割方向以及一另一分割比來排除所支持的分割比,從其經由該遞歸雙分獲得該預定子區塊,其係藉由沿著該另一分割線和/或該圖片區塊的一個或多個甚至另一子區塊的一另一分割線的一甚至另一分割方向以及一甚至另一分割比,來分割該一個或多個另一子區塊,其係藉由從一個或多個其他子區塊中的任何一個進行該遞歸雙分割而被獲得的,從其該預定子區塊也藉由該遞歸雙分割而被獲得。
一種用於以編碼區塊為單位從一資料流解碼一圖片的方法,包括:藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸雙分割﹔以及設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊的一預定分割級別的一預定子區塊分割成一後續分割級別的一對兒子子區塊,取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊分割成該預定的子區塊和另一個子區塊。
一種計算機程式,具有用於在一計算機上運行時執行根據前述之方法的一程式代碼。
一種基於區塊的編碼器,用於以編碼以區塊為單位將一圖片編碼為一資料流,其被配置為:藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸雙分割並將該分割信息插入該資料流;設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊的一預定分割級別的一預定子區塊分割成一後續分割級別的一對兒子子區塊,取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊分成該預定的子區塊和另一個子區塊。
一種用於以編碼區塊為單位將一圖片編碼成一資料流的方法,包括:藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸雙分割並將該分割信息插入該資料流;設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊的一預定分割級別的一預定子區塊分割成一後續分割級別的一對兒子子區塊,取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊分成該預定的子區塊和另一個子區塊。
一種計算機程式,具有用於在計算機上運行時執行前述之方法的程式代碼。
一種基於區塊的解碼器,用於以編碼區塊為單位從一資料流解碼一圖片,被配置為:藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸雙分割,其中該遞歸雙分割的該控制包括控制相對於該圖片區塊的一預定子區塊的該雙分割,並依據是否該預定子區塊要被分割或者將其保留為不分割,一分割線的一分割線方向,在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,和/或一分割比,在其中垂直於該分割線的該圖片區塊的該預定子區塊的一寬度被該分割線穿過;其中,該基於區塊的解碼器支持一支持分割比的集合,用於分割該預定的子區塊,並且被配置為針對沿著具有一預定分割線方向的一分割線的該預定子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比,以獲得支持分割比的一縮減集合, 其中,該基於區塊的解碼器被配置為根據支持分割比的該縮減集合,來控制相對於該圖片區塊的該預定子區塊的該雙分割。在一些實施例中揭示一種基於區塊的解碼器,被配置為根據該縮減集合的一基數,減少用於控制相對於該圖片區塊的該預定子區塊的該遞歸雙分割的該分割信息的一片段。
在一些實施例中揭示一種基於區塊的解碼器,其被配置為在解析該分割信息的該片段時,跳過指示該預定子區塊是要分割還是不要分割的一旗標、或者如果該縮減集合是空的話則指示該分割線的該分割方向的一旗標,和/或在解析該分割信息的該片段時,如果該縮減集合的該基數為1,則跳過指示該分割線的該分割比的一索引,和/或在對該索引進行熵解碼時,改變該索引的可能值的一域以專門地參考該縮減集合,或者針對該縮減集合的支持的分割比與所支持的分割比的該集合相比,花費更短的字碼長度。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個取決於垂直於該預定分割方向的該預定子區塊的該寬度,以排除支持的分割比。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個規則根據垂直於該預定分割方向的該預定子區塊的該寬度以排除支持的分割比,以這樣的一方式排除支持的分割比,其將該寬度分成兩個兒子子區塊的寬度,在樣本中不是一預定整數的一整數倍。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個規則根據垂直於該預定分割方向的該預定子區塊的該寬度來排除支持的分割比,以這樣的一方式排除支持的分割比,其將該寬度分成兩個兒子子區塊的寬度,在樣本中彼此是一整數倍。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個規則根據垂直於該預定分割方向的該預定子區塊的該寬度來排除支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分成兩個兒子子區塊,其中至少一個太小而不能完全包圍至少一個預定的最小尺寸區塊中的至少一個的一集合。
在一些實施例中揭示一種基於區塊的解碼器(10), 其中,該一個或多個規則中的一個規則根據垂直於該預定分割方向的該預定子區塊的該寬度來排除支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分成兩個兒子子區塊,其中至少一個超過一預定寬高比。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個規則根據垂直於該預定分割方向的該預定子區塊的該寬度來排除所支持的分割比,以這樣的一方式排除支持分割比的一預定子集合,其取決於該預定子區塊所屬的該遞歸雙分割的該分割級別。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則之一根據該圖片區塊的一個或多個其他子區塊的一另一分割線的一另一分割方向以及一另一分割比來排除所支持的分割比,從其經由該遞歸雙分割獲得該預定子區塊,其係藉由沿著該另一分割線分割一個或多個另外的子區塊。
在一些實施例中揭示一種基於區塊的解碼器,其被配置為取決於支持分割比的該縮減集合,其係藉由該分割信息向該縮減集合發送信號以限制支持分割比,俾來控制相對於該圖片區塊的該預定子區塊的該雙分割,並且該一個或多個規則的一個排除支持的分割比,以便減少該分割信息的多個冗餘設置的一數量。
在一些實施例中揭示一種基於區塊的解碼器,其中,支持分割比的該集合是不可約分分數的一集合
Figure 02_image001
, 其中
Figure 02_image003
,使得每對分割比
Figure 02_image005
Figure 02_image007
Figure 02_image009
表示互補的非對稱分割,並且其中,如果對於
Figure 02_image011
Figure 02_image013
,則
Figure 02_image015
Figure 02_image017
,並且其中每個支持的分割比表示一寬度的一比率一第一和第二兒子子區塊中的一個是由沿著具有該預定分割方向的一分割線以相對於該預定子區塊的該寬度的該分割比來分割該預定子區塊所產生的,如果該預定的分割方向是垂直的,兩者測量都垂直於該分割方向,以及一上和下兒子子區塊中的一個是由於沿著具有該預定分割方向的一分割線以相對於該預定子區塊的該寬度的該分割比來分割該預定子區塊所產生的,如果該預定的分割方向是水平的,兩者測量都垂直於該分割方向。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個排除如果該預定的分割方向平行於一分割線的該分割方向,沿此該預定子區塊的該父親子區塊(parent sub-block)被分割,並且如果該預定的子區塊具有一寬度為該父親子區塊寬度的
Figure 02_image019
倍,
Figure 02_image019
是該父親子區塊的分割比例,支持分割比
Figure 02_image021
,其中該父親區塊被分割成該另一個區塊的一分割比
Figure 02_image023
,並且在支持分割比的該集合中該父親子區塊的一分割比
Figure 02_image025
Figure 02_image027
Figure 02_image167
,和/或如果該預定的分割方向平行於一分割線的該分割方向,沿此該預定子區塊的該父親子區塊被分割,並且如果該預定的子區塊具有一寬度
Figure 02_image169
該父親子區塊寬度的
Figure 02_image033
倍,
Figure 02_image025
是該父親區塊的分割比例,支持分割比
Figure 02_image023
,其中該父親區塊被分割成該另一個區塊的一分割比
Figure 02_image021
,並且在支持分割比的該集合中該父親子區塊的一分割比
Figure 02_image019
Figure 02_image027
Figure 02_image167
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個規則中的一個排除一支持的分割比如果該預定的分割方向垂直於一分割線的該分割方向,沿此該預定子區塊的該父親子區塊被分割,並且與該另一個子區塊平行,其係該父親子區塊分割成的,即
Figure 02_image035
的一個
Figure 02_image021
,其中
Figure 02_image037
是該另一個區塊的該分割比。
在一些實施例中揭示一種基於區塊的解碼器,其中,該解碼器如前述。
在一些實施例中揭示一種用於以編碼區塊為單位從一資料流解碼一圖片的方法,包括:藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸雙分割,其中該遞歸雙分割的該控制包括根據該圖片區塊的一預定子區塊控制該雙分割,並依據是否該預定子區塊要被分割或者將其保留為不分割,一分割線的一分割線方向,在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,和/或一分割比,在其中垂直於該分割線的該圖片區塊的該預定子區塊的一寬度被該分割線穿過;支持一支持分割比的集合,用於分割該預定的子區塊,並且被配置為針對沿著具有一預定分割線方向的一分割線的該預定子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比,獲得支持分割比的一縮減集合,根據支持分割比的該縮減集合,來控制相對於該圖片區塊的該預定子區塊的該雙分割。
在一些實施例中揭示一種計算機程式,具有用於在一計算機上運行時執行前述之一方法的一程式代碼。
在一些實施例中揭示一種基於區塊的編碼器,用於以編碼區塊為單位將一圖片編碼成一資料流,其被配置為:藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸雙分割並將該分割信息插入該資料流,其中該遞歸雙分割的該控制包括根據該圖片區塊的一預定子區塊控制該雙分割,並依據是否該預定子區塊要被分割或者將其保留為不分割,一分割線的一分割線方向,在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,以及一分割比,在其中垂直於該分割線的該圖片區塊的該預定子區塊的一寬度被該分割線穿過;其中,該基於區塊的編碼器支持一支持分割比的集合,用於分割該預定的子區塊,並且被配置為針對沿著具有一預定分割線方向的一分割線的該預定子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比,以獲得支持分割比的一縮減集合,其中,該基於區塊的編碼器被配置為根據支持分割比的該縮減集合,來控制相對於該圖片區塊的該預定子區塊的該雙分割。
在一些實施例中揭示一種基於區塊的編碼器,其中,該基於區塊的編碼器被配置為以一種方式根據支持分割比的該縮減集合來控制關於該圖片區塊的該預定子區塊的該雙分割,以便該資料流中的該分割信息取決於支持分割比的該縮減集合。
在一些實施例中揭示一種用於以編碼區塊為單位將一圖片編碼成一資料流的方法,被配置為藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸雙分割並將該分割信息插入該資料流,其中該遞歸雙分割的該控制包括控制相對於該圖片區塊的一預定子區塊的該雙分割,並依據是否該預定子區塊要被分割或者將其保留為不分割,一分割線的一分割線方向,在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,和一分割比,在其中垂直於該分割線的該圖片區塊的該預定子區塊的一寬度被該分割線穿過;支持一支持分割比的集合,用於分割該預定的子區塊,並且被配置為針對沿著具有一預定分割線方向的一分割線的該預定子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比,獲得支持分割比的一縮減集合,根據支持分割比的該縮減集合,來控制相對於該圖片區塊的該預定子區塊的該雙分割。
在一些實施例中揭示一種計算機程式,具有一程式代碼,用於在一計算機上運行時執行前述之一方法。
在一些實施例中揭示一種基於區塊的解碼器,用於以編碼區塊為單位從一資料流解碼一圖片,被配置為經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸分割,從來自該分割信息的上下文自適應地熵解碼使用依賴於一個或多個相鄰編碼區塊的一大小的一上下文來控制一預定圖片區塊的一預定子區塊的一分割的一個或多個語法元素,其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
在一些實施例中揭示一種基於區塊的解碼器,被配置為:將該圖片預分割成圖片區塊的一陣列,和其中該編碼順序以一光柵掃描順序(raster scan order)遍歷該圖片區塊。
在一些實施例中揭示一種該基於區塊的解碼器,其中,在每個圖片區塊內,該編碼順序遵循一深度優先或廣度優先的遍歷順序。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個語法元素控制關於一預定子區塊的該遞歸雙分割,並根據是否該預定子區塊要被分割或者將其保留為不分割,一分割線的一分割方向,在其中該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,和一分割比,在其中該圖片區塊的該預定子區塊的一寬度,垂直於該寬度,其被該分割線穿過。
在一些實施例中揭示一種基於區塊的解碼器,其中,該一個或多個語法元素中的一個在一分割比方面控制相對於一預定子區塊的該遞歸雙分割,在該分割比下,該圖片區塊的該預定子區塊的一寬度,垂直於該寬度,且其被一分割線穿過,在該分割線處,該圖片區塊的該預定子區塊將藉由該遞歸雙分割來分割,並且其中該一個語法元素的該上下文取決於相鄰編碼區塊的該大小,在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的該相鄰編碼區塊。
在一些實施例中揭示一種基於區塊的解碼器,其中,該解碼器如前述。
在一些實施例中揭示一種基於區塊的解碼器,其中,該解碼器如前述。
在一些實施例中揭示一種用於以編碼區塊為單位從一資料流解碼一圖片的方法,包括:經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸分割,和從來自該分割信息的上下文自適應地熵解碼使用依賴於一個或多個相鄰編碼區塊的一大小的一上下文來控制一預定圖片區塊的一預定子區塊的一分割的一個或多個語法元素,其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
在一些實施例中揭示一種計算機程式,具有用於在一計算機上運行時執行前述之一方法的一程式代碼。
在一些實施例中揭示一種基於區塊的編碼器,用於以編碼區塊為單位從一資料流編碼一圖片,被配置為:經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸分割並將該分割信息插入該資料流,上下文自適應熵編碼將一個或多個語法元素編碼成該分割信息,該語法元素使用取決於一個或多個相鄰編碼區塊的一大小的一上下文來控制一預定圖片區塊的一預定子區塊的一分割,其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
在一些實施例中揭示一種用於以編碼區塊為單位從一資料流編碼一圖片的方法,包括:經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸分割並將該分割信息插入該資料流,上下文自適應熵編碼將一個或多個語法元素編碼成該分割信息,該語法元素使用取決於一個或多個相鄰編碼區塊的一大小的一上下文來控制一預定圖片區塊的一預定子區塊的一分割,其中在該預定子區塊的一鄰域中,以該編碼順序將該圖片分割為該預定子區塊的一個或多個相鄰編碼區塊。
在一些實施例中揭示一種計算機程式,具有用於在一計算機上運行時執行前述之一方法的一程式代碼。
在一些實施例中揭示一種基於區塊的解碼器,用於以編碼區塊為單位從一資料流解碼一圖片,被配置為:經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸分割,其中該基於區塊的解碼器支持至少兩種模式,在這兩種模式之間,該基於區塊的解碼器是可切換的,並且在執行該分割的自由度方面不同。
在一些實施例中揭示一種基於區塊的解碼器,其中,該基於區塊的解碼器)被配置為使得該至少兩種模式在以下有一個或多個中不同:一最小區塊大小,其必須適合每個編碼區塊,一最大分割樹深度,在一當前圖片區塊的一當前子區塊的一分割之後的一最大分割樹深度,其中該分割沿著一分割線,其係垂直於一父親區塊的一分割線的,該當前子子區塊(sub-subblock)是該父親區塊的子區塊,一當前圖片的子區塊的一最大區塊大小,其中允許非對稱分割,由一當前圖片區塊的一當前子區塊的一分割所產生的兒子子區塊的一最大寬高比,由一當前圖片區塊的一當前子區塊的一分割所產生的兒子子區塊的一最小寬高比,一當前圖片區塊的預設分割,其根據該分割信息以從該遞歸雙分割的一開始,用於分割一當前圖片區塊的一當前子區塊的支持分割比的一集合;沿著具有一預定分割方向的一分割線的一當前子區塊的一分割,而根據一個或多個規則從支持分割比的該集合中排除支持的分割比。
在一些實施例中揭示一種基於區塊的解碼器,其中,該基於區塊的解碼器被配置為在該至少兩個模式之間切換,其根據一個或多個該資料流中的信令,到目前為止使用的模式的一歷史,一空間預測器,一當前圖片區塊超出一外部或內部圖片邊界的一擴展程度。
在一些實施例中揭示一種基於區塊的解碼器,其中,該基於區塊的解碼器被配置為以下列單元為單位,而在至少兩個模式之間切換,一個圖片序列,一圖片的樹根區塊,圖片區塊。
在一些實施例中揭示一種基於區塊的解碼器,其中,該基於區塊的解碼器如前述。
在一些實施例中揭示一種基於區塊的解碼器,另外根據前述。
在一些實施例中揭示一種基於區塊的解碼器,另外根據前述。
在一些實施例中揭示一種用於以編碼區塊為單位從一資料流解碼一圖片的方法,被配置為經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸分割,其中該基於區塊的解碼器支持至少兩種模式,在這兩種模式之間,該基於區塊的解碼器是可切換的,並且在執行該分割的自由度方面不同。
在一些實施例中揭示一種計算機程式,具有用於在一計算機上運行時執行前述之一方法的一程式代碼。
在一些實施例中揭示一種基於區塊的編碼器,用於以編碼區塊為單位從一資料流編碼一圖片,被配置為:經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸分割並將該分割信息插入該資料流,其中該基於區塊的編碼器支持至少兩種模式,在這兩種模式之間,該基於區塊的編碼器是可切換的,並且在執行該分割的自由度方面不同。
在一些實施例中揭示一種用於以編碼區塊為單位從一資料流編碼一圖片的方法,包括:經由遞歸分割沿著一編碼次序將該圖片的一個或多個圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸分割並將該分割信息插入該資料流,支持在執行該分割的自由度方面不同的至少兩種模式。
在一些實施例中揭示一種計算機程式,具有用於在一計算機上運行時執行前述之一方法的一程式代碼。
在一些實施例中揭示一種用於解碼指向來自一資料流的一分割比的一索引的解碼器,其被配置為藉由根據一個或多個規則去除分割比來減少分割比的一基本列表,以便獲得分割比的一縮減列表,其中該基本列表對應於一個二叉樹樹葉,其與該基本列表的相應分割比相關聯,並且該縮減列表對應於由該二叉樹產生的一個縮減二叉樹,其經由從樹葉到主根節點,移除該二叉樹中其該子節點不屬於該縮減列表的每個節點,並且為代替具有僅一個未移除的子節點的該二叉樹的每個節點,將該未移除的子節點直接附加到該二叉樹的該節點,相應中間節點係該節點的子節點,其中,該縮減二叉樹的第一分支與一第一個二元決策(bin)值相關聯,並且該縮減二叉樹的第二分支與一第二個二元決策值相關聯,並且該縮減列表的每個分割比與一個bin值序列相關聯的,其對應於與該分支相關聯的一個二元決策值的序列,該分支在該縮減二叉樹中從該縮減二叉樹的一主根節點導向與該相應的分割比相關聯的該縮減二叉樹的一樹葉,針對對應於一個或多個二元決策的一序列的一個二元決策字串進行熵解碼,從該縮減二叉樹的該主根節點開始,遍歷該縮減二叉樹到該縮減二叉樹的樹葉之一,該二元決策字串的每個二元決策對應於由一個或多個二元決策的該序列所遍歷的該縮減二叉樹的該節點的一個;使用該縮減二叉樹作為一個二值化方案,對該二元決策字串進行去二值化,以便獲得該索引。
在一些實施例中揭示一種解碼器,其中,該基本列表是不可縮減分數的一列表
Figure 02_image171
, 其中
Figure 02_image003
,使得每對分割比
Figure 02_image005
Figure 02_image007
,與
Figure 02_image009
Figure 02_image005
Figure 02_image007
表示互補的非對稱分割,並且其中,如果對於
Figure 02_image011
Figure 02_image013
,則
Figure 02_image015
Figure 02_image017
,並且該二叉樹由具有2n個樹葉的一個部分樹組成,所有樹葉藉由n-1個中間節點連接到該部分樹的一樹根,該部分樹並且從第一到第二對應於該基本列表的第二到第(2n+1)個成員,一個分離樹葉對應於分割比1/2,該分離樹葉藉由一第一分支連接到一主根節點,該部分樹的該根節點藉由一另一個分支連接到該主根節點。
在一些實施例中揭示一種解碼器,其被配置為針對一個或多個二元決策的該序列的至少一個二元決策子集合執行該上下文自適應熵解碼,以及以一種方式決定該熵解碼的一個上下文,使得該上下文的該決定不同於該二元決策子集合的該二元決策中。
在一些實施例中揭示一種解碼器,其被配置為針對該二元決策字串的至少一個預定二元決策執行執行該上下文自適應熵解碼,並且被配置為:根據該二叉樹中的一位置決定用於對該預定二元決策進行該熵解碼的一上下文,其中對應於該預定二元決策的該縮減二叉樹的該節點源於該二叉樹的該縮減。
在一些實施例中揭示一種解碼器,其中,該索引指向的該分割比用於一遞歸雙分割的分割,並且該解碼器被配置為針對一個或多個二元決策的該序列的至少一個二元決策子集合執行該上下文自適應熵解碼,並且藉由根據與一區塊的一空間鄰域相關聯的編碼參數,從上下文的一集合中選擇相應二元決策的該上下文,為該二元決策子集合的每個二元決策決定用於熵解碼的一上下文,該區塊係該歸雙分割的分割所涉及的。
在一些實施例中揭示一種解碼器,其中,該選擇發生的上下文的該集合係對於該二元決策子集合的至少兩個二元決策次子集合(sub-subsets)而言是不同的。
在一些實施例中揭示一種解碼器,其被配置為:對於至少一個該二元決策子集合,藉由根據該區塊的該空間鄰域中的雙分割樹葉區塊的一大小,從上下文該集合中選擇該至少一個二元決策的該上下文,來決定用於該熵解碼的該上下文,該區塊係該遞歸雙分割的分割所涉及的。
在一些實施例中揭示一種解碼器,其被配置為在該遞歸雙分割的分割所涉及的該區塊的該空間鄰域中定位雙分割樹葉區塊,取決於該遞歸雙分割的分割以一種方式涉及的區塊的一分割線方向,使得在該空間鄰域中的該區塊沿著分割線方向而鄰近於該遞歸雙分割的分割涉及的該區塊,並且相對於該分割線方向彼此橫向相鄰。
在一些實施例中揭示一種解碼器,其中,該解碼器另外根據前述。
在一些實施例中揭示一種解碼器,其中,該解碼器另外根據前述。
在一些實施例中揭示一種解碼器,其中,該解碼器另外根據前述。
在一些實施例中揭示一種解碼器,其中,該解碼器另外根據前述。
在一些實施例中揭示一種用於一從資料流解碼指向一分割比的一索引的方法,被配置為:藉由根據一個或多個規則去除分割比來減少分割比的一基本列表,以便獲得分割比的一縮減列表,其中該基本列表對應於一個二叉樹樹葉,其與該基本列表的相應分割比相關聯,並且該縮減列表對應於由該二叉樹產生的一個縮減二叉樹,其經由從樹葉主根節點,移除該二叉樹中其該子節點不屬於該縮減列表的每個節點,並且為代替具有僅一個未移除的子節點的該二叉樹的每個節點,將該未移除的子節點直接附加到該二叉樹的該節點,相應中間節點係該節點的子節點,其中,該縮減二叉樹的第一分支與一第一個二元決策值相關聯,並且該縮減二叉樹的第二分支與一第二個二元決策值相關聯,並且該縮減列表的每個分割比與一個二元決策值序列係相關聯的,其對應於與該分支相關聯的一個二元決策值的序列,該分支在該縮減二叉樹中從該縮減二叉樹的一主根節點導向與相應的分割比相關聯的該縮減二叉樹的一樹葉,針對對應於一個或多個二元決策的一序列的一個二元決策字串進行熵解碼,從該縮減二叉樹的該主根節點開始,遍歷該縮減二叉樹到該縮減二叉樹的樹葉之一,該二元決策字串的每個二元決策對應於由一個或多個二元決策的該序列所遍歷的該縮減二叉樹的該節點的一個;使用該縮減二叉樹作為一個二值化方案,對該二元決策字串進行去二值化,以便獲得該索引。
在一些實施例中揭示一種計算機程式,具有一程式代碼,用於在一計算機上運行時執行前述之一方法。
在一些實施例中揭示一種用於將指向一分割比的一索引編碼成一資料流的編碼器,被配置為:藉由根據一個或多個規則去除分割比來減少分割比的一基本列表,以便獲得分割比的一縮減列表,其中該基本列表對應於一個二叉樹樹葉,其與該基本列表的相應分割比相關聯,並且該縮減列表對應於由該二叉樹產生的一個縮減二叉樹,其經由從樹葉到主根節點,移除該二叉樹中其該子節點都被移除的每個節點,並且為代替具有僅一個未移除的子節點的該二叉樹的每個節點,將該未移除的子節點直接附加到該二叉樹的該節點,相應中間節點係該節點的子節點,其中,該縮減二叉樹的第一分支與一第一個二元決策值相關聯,並且該縮減二叉樹的第二分支與一第二個二元決策值相關聯,並且該縮減列表的每個分割比與一個二元決策值序列相關聯的,其對應於與該分支相關聯的一個二元決策值的序列,該分支在該縮減二叉樹中從該縮減二叉樹的一主根節點導向與相應的分割比相關聯的該縮減二叉樹的一樹葉,使用該縮減二叉樹作為一個二值化方案將該索引二值化為一個二元決策字串,該二元決策字串對應於一個或多個二元決策的一序列,從該主樹根開始,遍歷該縮減二叉樹到該縮減二叉樹樹葉中的一個,其中該二元決策字串的每個二元決策對應於由一個或多個二元決策的該序列所遍歷的該縮減二叉樹的該節點的一個;對該二元決策字串進行熵編碼。
在一些實施例中揭示一種用於將指向一分割比的一索引編碼成一資料流的方法,包括:藉由根據一個或多個規則去除分割比來減少分割比的一基本列表,以便獲得分割比的一縮減列表,其中該基本列表對應於一個二叉樹樹葉,其與該基本列表的相應分割比相關聯,並且該縮減列表對應於由該二叉樹產生的一個縮減二叉樹,其經由從樹葉到主根節點,移除該二叉樹中其該子節點都被移除的每個節點,並且為代替具有僅一個未移除的子節點的該二叉樹的每個節點,將該未移除的子節點直接附加到該二叉樹的該節點,相應中間節點係該節點的子節點,其中,該縮減二叉樹的第一分支與一第一個二元決策值相關聯,並且該縮減二叉樹的第二分支與一第二個二元決策值相關聯,並且該縮減列表的每個分割比與一個二元決策值序列相關聯,其對應於與該分支相關聯的一個二元決策值的序列,該分支在該縮減二叉樹中從該縮減二叉樹的一主根節點導向與相應的分割比相關聯的該縮減二叉樹的一樹葉,使用該縮減二叉樹作為一個二值化方案將該索引二值化為一個二元決策字串,該二元決策字串對應於一個或多個二元決策的一序列,從該主樹根開始,遍歷該縮減二叉樹到該縮減二叉樹樹葉中的一個,其中該二元決策字串的每個二元決策對應於由一個或多個二元決策的該序列所遍歷的該縮減二叉樹的該節點的一個;對該二元決策字串進行熵編碼。
在一些實施例中揭示一種計算機程式,具有一程式代碼,用於在一計算機上運行時執行根據前述之一方法。
上述實施例僅代表了本揭露該原理的一說明。應理解,本領域其他技術人員將理解本文所述的佈置和細節的任何修改和變化。上述實施例僅係為了方便說明而舉例而已,本揭露所主張之權利範圍自應以申請專利範圍該為準,而非僅限於上述實施例。
參考文獻 [1]    ITU-T and ISO/IEC. High efficiency video coding. ITU-T Recommendation H.265 | ISO/IEC 23008‑10 (HEVC), edition 1, 2013; edition 2, 2014. [2]    ITU-T and ISO/IEC. Advanced video coding for audiovisual services. ITU-T Recommendation H.264 | ISO/IEC 14406-10 (AVC), edition 1, 2003. [3]    J. Chen, E. Alshina, G.J. Sullivan, J.-R. Ohm, J. Boyce, Algorithm Description of Joint Exploration Test Model 6 (JEM 6), JVET, doc. JVET-F1001, April 2017. [4]    X. Li, H.-C. Chuang, J. Chen, M. Karczewicz, L. Zhang, X. Zhao, A. Said, Multi-Type-Tree, JVET, doc. JVET-D0117, Oct. 2016. [5]    F. Le Léannec, T. Poirier, F. Urban, Asymmetric Coding Units in QTBT, JVET, doc. JVET-D0064, Oct. 2016.
14:資料流 10:基於區塊的解碼器 12:圖片 18:圖片區塊 16:編碼區塊 16a:預定子區塊 16s1:第一分割線 16s2:第二分割線 44:主根節點 34:二叉樹 42、37:樹葉 30:基本列表 32:縮減列表 50:縮減二叉樹 46:第一分支 48:另一個分支 36:部分樹 38:樹根 40、38:節點 54:樹葉 20:二元決策樹 100:編碼器 110:視頻 120:圖片 140:資料流 220:預測殘差信號形成器 240:預測殘差信號 240’:頻譜域預測殘差信號 280:變換器 320:量化器 240’’:量化的預測殘差信號 340:熵編碼器 360:預測級 380:去量化器 240’’’:頻譜域預測殘差信號 240’’’’:預測殘差信號 400:逆變換器 420:組合器 460:重建信號 440:預測模塊 260:預測信號 200:解碼器 500:熵解碼器 520:去量化器 540:逆變換器 560:組合器 580:預測模塊 110’:視頻 120’:圖片 800、840、840a、860:區塊
圖1係顯示根據本申請的實施例的128x128 CTU的一示例性分割。 圖2係顯示根據實施例在圖1中描述該拓撲的該分割樹。 圖3係顯示根據實施例在圖2(包括區塊大小和用於細分由該分割方向和該分割比描述的一特定節點的該分割)中的該分割樹的非樹葉節點的一描述。 圖4係顯示根據實施例的分割方向的信令。 圖5係顯示根據實施例的一特定區塊大小的該分割比的示例性信令。 圖6係顯示根據實施例的來自圖5(對於不是所有分割比都可用的情況)的減少的信令。 圖7係顯示根據實施例的用於定義禁止的分割樹模式的三個模板佈局。 圖8係顯示根據實施例的用於發信號通知該分割比的一簡單二元決策樹的示例性上下文建模。 圖9係顯示根據實施例的用於發信號通知該分割比的另一二元決策樹的示例性上下文建模。 圖10係顯示根據實施例的相鄰區塊的位置。 圖11係顯示根據實施例的冗餘並行分割的一範例。 圖12係顯示根據實施例的冗餘垂直分割的一範例。 圖13係顯示根據實施例的高階冗餘的一範例。 圖14係顯示根據一基本實施例的示例性的一解碼器。 圖15係顯示根據一增強實施例的示例性的一解碼器。 圖16係顯示用於預測編碼一視頻的一裝置的一方塊圖,作為一視頻解碼器的一範例,其中一組合的預測概念。 圖17係顯示用於預測解碼一視頻的一裝置的一方塊圖,作為一視頻解碼器的一範例。 圖18係顯示圖示說明一預測殘差信號、一預測信號和一重構信號之間的一關係的一範例的一示意圖。 圖19係顯示用於限制在一給定區域上的預測假設的該平均數量的一範例的一示意圖。 圖20係顯示用於根據該區塊大小或幾何形狀來定義預測假設的該數量的一示意性範例。
14:資料流
10:基於區塊的解碼器
12:圖片
18:圖片區塊

Claims (32)

  1. 一種基於區塊的解碼器,用於以編碼區塊為單位從一資料流解碼一圖片,其被配置為: 藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸雙分割﹔以及 設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊的一預定分割級別的一預定子區塊分割成一後續分割級別的一對兒子子區塊(child sub-blocks),取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊(grandfather sub-block)分成該預定的子區塊和另一個子區塊。
  2. 如申請專利範圍第1項之該基於區塊的解碼器,其進一步被配置為支持多種編碼模式,並以該編碼區塊為單位從該資料流導出一編碼模式,其用於從該資料流解碼該圖片。
  3. 如申請專利範圍第1項之該基於區塊的解碼器,其進一步被配置為支持多種編碼模式,其中每種編碼模式具有與其相關聯的一個或多個編碼參數的一編碼模式特定集合,其使用該相應的編碼模式控制該圖片的一解碼,並且該基於區塊的解碼器被配置為以該編碼區塊為單位從該資料流導出用於解碼該圖片的一個或多個編碼參數的該編碼模式特定集合,藉由從每個解碼單元的該資料流導出與編碼模式相關聯的一個或多個編碼參數的該編碼模式特定集合,信號發送的該編碼模式用於該資料流中的該相應編碼區塊。
  4. 如申請專利範圍第1項之該基於區塊的解碼器,其作為一預測解碼器並且被配置為以頻譜變換的形式從該資料流導出一頻譜域中的該圖片的一預測殘差,所述頻譜變換表示以該編碼區塊為單位的該預測殘差的一分段頻譜變換。
  5. 如申請專利範圍第1項之該基於區塊的解碼器,其被配置為: 將該圖片預分割成樹根區塊的一陣列,並相對於樹根區塊的該陣列的每個陣列執行該圖片區塊的分割。
  6. 如申請專利範圍第1項之該基於區塊的解碼器,其被配置為: 將該圖片預分割成樹根區塊的一陣列,根據該分割信息,使該樹根區塊經歷一單獨的分割,以便將樹根區塊的該陣列細分為預分割樹葉區塊並相對於每個預分割樹葉區塊執行該圖片區塊的該分割。
  7. 如申請專利範圍第1項之該基於區塊的解碼器,其被配置為取決於該第二分割線方向和該分割信息來設置該第一分割線方向,其係藉由根據該分割信息修改該第一分割線方向,以獲得一修改的分割線方向並將該第二分割線方向設置為等於該修改後的分割線方向。
  8. 如申請專利範圍第1項之該基於區塊的解碼器,被配置為根據由該分割信息發信號通知的一個二元決策樹來控制該遞歸雙分割,該分割信息指示該圖片區塊的一分割或不分割,該父親區塊藉由該遞歸雙分割被分割成該父親區塊的所有中間子區塊,並且所有樹葉區塊不被該遞歸雙分割所分割。
  9. 如申請專利範圍第1項之該基於區塊的解碼器,其被配置為控制屬於分割級別的一第一預定集合的該圖片區塊的每個子區塊的該遞歸雙分割,該第一預定集合相對於一分割線的一位置,該相應的子區塊藉由該遞歸雙分割沿著該分割線橫向於該分割線的一分割線方向被分割。
  10. 如申請專利範圍第1項之該基於區塊的解碼器,其被被配置為控制屬於分割級別的一第一預定集合的該圖片區塊的每個子區塊的該遞歸雙分割,該第一預定集合取決於該分割信息而相對於一分割線的一分割線方向,藉由該遞歸雙分割沿著該分割線來分割該相應的子區塊,其取決於該分割信息及一分割線的一分割線方向,沿其該相應中間區塊的一父親區塊被分割。
  11. 如申請專利範圍第1項之該基於區塊的解碼器,其中,該第二分割線方向是水平的或垂直的,並且該基於區塊的解碼器被配置為根據該分割信息將該第一分割線方向設置為垂直於或平行於該第二分割線方向。
  12. 如申請專利範圍第1項之該基於區塊的解碼器,被配置為在分割該圖片區塊時, 根據該分割信息,決定 將該圖片區塊分割成一對第一分割級別子區塊,或者 讓該圖片區塊未被分割,和 如果該圖片的該圖片區塊被分割為該對第一分割級別子區塊,則根據該分割信息, 將該對第一分割級別子區塊的一第一個第一分割級別子區塊分割成一對第二分割級別子區塊,或者 讓該第一個第一分割級別子區塊未被分割, 沿著具有一第三分割線方向的一第三分割線執行該圖片區塊的該分割,並且設置一第四分割線的一第四分割線方向,沿著該第四分割線分割該第一個第一分割級別子區塊,其取決於該第三個分割線方向。
  13. 如申請專利範圍第12項之該基於區塊的解碼器,其被配置為, 如果該圖片的該圖片區塊被分割成該對第一分割級別子區塊, 根據該分割信息設置該第三個分割方向,以及 從該資料流導出由該分割信息獲得的一第一分割旗標,和 如果該第一分割旗標具有一第一旗標狀態,則將該第二分割方向設置為垂直於該第一個分割方向、並沿著該第二分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和 如果該第一分割旗標具有一第二個旗標狀態,則使該第一個第一分割級別子區塊保持未分割。
  14. 如申請專利範圍第12項之該基於區塊的解碼器,其被配置為, 如果該圖片的該圖片區塊被分割成該對第一分割級別子區塊, 從該資料流導出該分割信息包含的一第一分割旗標,和 如果該第一分割旗標具有一第一旗標狀態,則將該第四分割方向設置為垂直於該第三個分割方向、並沿著該第四分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和 如果該第一分割旗標具有一第二個旗標狀態, 從該資料流導出由該分割信息包含的一第二分割旗標,和 如果該第二分割旗標具有一第一旗標狀態,則將該第四分割方向設置為平行於該第三個分割方向、並沿著該第四分割線將該第一個第一分割級別子區塊分割成該對第二分割級別子區塊,和 如果該第二分割旗標具有一第二個旗標狀態,則使該第一個第一分割級別子區塊保持未分割。
  15. 如申請專利範圍第1項之該基於區塊的解碼器,被配置為在分割該圖片區塊時 根據該分割信息,決定 將該祖父子區塊分割成包括該預定子區塊的一對子區塊,或者 讓該祖父子區塊未被分割,和 如果該祖父子區塊被分割為該對子區塊,則根據該分割信息, 將該對子區塊的該預定子區塊分割成一對兒子子區塊,或者 讓該預定子區塊未被分割, 沿著具有該第二分割線方向的該第二分割線執行該祖父子區塊的該分割,並且設置該第一分割線的該第一分割線方向,沿著該第一分割線分割該預定子區塊,其取決於該第二個分割線方向。
  16. 如申請專利範圍第1項之該基於區塊的解碼器,被配置為: 從該資料流導出該分割信息包含的一第一分割旗標,和 如果該第一分割旗標具有一第一旗標狀態,則將該第一分割方向設置為垂直於該第二個分割方向、並沿著該第一分割線將該預定子區塊分割成該對兒子子區塊,和 如果該第一分割旗標具有一第二個旗標狀態, 從該資料流導出由該分割信息包含的一第二分割旗標,和 如果該第二分割旗標具有一第一旗標狀態,則將該第一分割線方向設置為平行於該第二個分割線方向、並沿著該第一分割線將該預定子區塊分割成該對兒子子區塊,和 如果該第二分割旗標具有一第二個旗標狀態,則使該預定子區塊保持未分割。
  17. 如申請專利範圍第16項之該基於區塊的解碼器,被配置為: 從該資料流導出由該分割信息包含的一第三分割旗標,和 如果該第三分割旗標具有該第一旗標狀態,則將該第五分割線的一第五分割線方向設置為垂直於該第二個分割線方向、並沿著一第五分割線將該對子區塊的另一子區塊分割成一另一對兒子子區塊,和 如果該第三分割旗標具有該第二個旗標狀態, 從該資料流導出該分割信息包含的一第四分割旗標,和 如果該第四分割旗標具有該第一旗標狀態,則將該第五分割線方向設置為平行於該第二個分割線方向、並沿著該第五分割線將該另一個子區塊分割成該另一對兒子子區塊,和 如果該第二分割旗標具有該第二個旗標狀態,則使該另一個子區塊保持未分割。
  18. 如申請專利範圍第16項之該基於區塊的解碼器,被配置為: 如果該預定的子區塊被分成該對兒子子區塊, 從該資料流導出由該分割信息包含的一第六分割旗標,和 如果該第六分割旗標具有該第一旗標狀態,則將該第七分割線的一第七分割線方向設置為垂直於該第一個分割線方向、並沿著一第七分割線將該對兒子子區塊的一第一兒子子區塊分割成一對孫子子區塊(grandchild sub-blocks),和 如果該第六分割旗標具有該第二旗標狀態, 從該資料流導出由該分割信息包含的一第七分割旗標,和 如果該第七分割旗標具有該第一旗標狀態,則將該第七分割線方向設置為平行於該第一個分割線方向、並沿著該第七分割線將該第一兒子子區塊分割成該對孫子子區塊,和 如果該第七分割旗標具有該第二個旗標狀態,則使該第一兒子子區塊保持未分割。
  19. 如申請專利範圍第16項之該基於區塊的解碼器,被配置為: 如果該預定的子區塊被分割成該對兒子子區塊, 從該分割信息導出一分割比,指示垂直於該第一分割線方向的該預定子區塊的寬度被分割的比率。
  20. 如申請專利範圍第1項之該基於區塊的解碼器,其中,該基於區塊的解碼器支持一支持分割比的集合,用於沿著與該第二分割線方向垂直的該第一分割線分割該預定的子區塊,並且被配置為根據一個或多個規則從支持分割比的該集合中排除支持的分割比,獲得支持分割比的一縮減集合,並推斷該第一分割旗標具有該第二旗標狀態,並且如果該縮減集合的一基數為零則跳過其推導。
  21. 如申請專利範圍第1項之該基於區塊的解碼器,其中,該基於區塊的解碼器支持一支持分割比的另一集合,用於沿著與該第二分割線方向平行的該第一分割線分割該預定的子區塊,並且被配置為根據一個或多個規則從支持分割比的該另一集合中排除支持的分割比,以獲得支持分割比的一另一縮減集合,並推斷該第二分割旗標具有該第二旗標狀態,並且如果該另一縮減集合的一基數為零則跳過其推導。
  22. 如申請專利範圍第20項之該基於區塊的解碼器,其中,該一個或多個規則中的一個取決於垂直於該第一分割線的該預定子區塊的該寬度,來排除支持的分割比。
  23. 如申請專利範圍第20項之該基於區塊的解碼器,其中,該一個或多個規則中的一個規則根據垂直於該第一分割線的該預定子區塊的該寬度排除所支持的分割比,以這樣的一方式排除支持的分割比,其將該寬度分成兩個兒子子區塊的寬度,在樣本中不是一預定整數的一整數倍。
  24. 如申請專利範圍第20項之該基於區塊的解碼器,其中,該一個或多個規則中的一個規則根據垂直於該第一分割線的該預定子區塊的該寬度排除所支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分成兩個兒子子區塊,其中至少一個太小而不能完全包圍至少一個預定的最小尺寸區塊中的一集合的至少一個。
  25. 如申請專利範圍第20項之該基於區塊的解碼器,其中,該一個或多個規則中的一個可以取決於垂直於該第一分割線的該預定子區塊的該寬度,來排除所支持的分割比,以這樣的一方式排除支持的分割比,其將該預定的子區塊分割成兩個兒子子區塊,其中至少一個具有在一可允許的寬高比範圍之外的一寬高比。
  26. 如申請專利範圍第20項之該基於區塊的解碼器,其中,該一個或多個規則中的一個取決於垂直於該第一分割線的該預定子區塊的該寬度以排除支持的分割比,以這樣的一方式排除支持分割比的一預定子集合,其取決於該預定子區塊所屬的該遞歸雙分割的該分割級別。
  27. 如申請專利範圍第20項之該基於區塊解碼器,其中,該一個或多個規則中的一個規則根據該圖片區塊(18)的一個或多個其他子區塊的一另一分割線的一另一分割方向以及一另一分割比來排除所支持的分割比,從其經由該遞歸雙分獲得該預定子區塊,其係藉由沿著該另一分割線和/或該圖片區塊的一個或多個甚至另一子區塊的一另一分割線的一甚至另一分割方向以及一甚至另一分割比,來分割該一個或多個另一子區塊,其係藉由從一個或多個其他子區塊中的任何一個進行該遞歸雙分割而被獲得的,從其該預定子區塊也藉由該遞歸雙分割而被獲得。
  28. 一種用於以編碼區塊為單位從一資料流解碼一圖片的方法,包括: 藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據該資料流中的分割信息控制該遞歸雙分割﹔以及 設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊的一預定分割級別的一預定子區塊分割成一後續分割級別的一對兒子子區塊,取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊分割成該預定的子區塊和另一個子區塊。
  29. 一種計算機程式,具有用於在一計算機上運行時執行根據專利範圍第28項所述之方法的一程式代碼。
  30. 一種基於區塊的編碼器,用於以編碼以區塊為單位將一圖片編碼為一資料流,其被配置為: 藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸雙分割並將該分割信息插入該資料流; 設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊的一預定分割級別的一預定子區塊分割成一後續分割級別的一對兒子子區塊,取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊分成該預定的子區塊和另一個子區塊。
  31. 一種用於以編碼區塊為單位將一圖片編碼成一資料流的方法,包括: 藉由遞歸雙分割將該圖片的一圖片區塊分割為該編碼區塊,並根據分割信息控制該遞歸雙分割並將該分割信息插入該資料流; 設置一第一分割線的一第一分割線方向,藉由該遞歸雙分割沿著該第一分割線將該圖片區塊的一預定分割級別的一預定子區塊分割成一後續分割級別的一對兒子子區塊,取決於一第二分割線的一第二分割線方向,沿著該第二分割線將該圖片區塊的一個先前分割級別的一祖父子區塊分成該預定的子區塊和另一個子區塊。
  32. 一種計算機程式,具有用於在計算機上運行時執行根據專利範圍第31項所述之方法的程式代碼。
TW110109990A 2017-07-19 2018-07-19 圖片編碼的裝置和方法 TWI830012B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP17182209 2017-07-19
EPEP17182209.1 2017-07-19

Publications (2)

Publication Number Publication Date
TW202127872A true TW202127872A (zh) 2021-07-16
TWI830012B TWI830012B (zh) 2024-01-21

Family

ID=59631540

Family Applications (2)

Application Number Title Priority Date Filing Date
TW110109990A TWI830012B (zh) 2017-07-19 2018-07-19 圖片編碼的裝置和方法
TW107125006A TWI725328B (zh) 2017-07-19 2018-07-19 圖片編碼的裝置和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW107125006A TWI725328B (zh) 2017-07-19 2018-07-19 圖片編碼的裝置和方法

Country Status (3)

Country Link
EP (1) EP3656127A1 (zh)
TW (2) TWI830012B (zh)
WO (1) WO2019016287A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113273197A (zh) * 2019-02-03 2021-08-17 北京字节跳动网络技术有限公司 视频块分割模式的信令通知
EP3939261A1 (en) * 2019-03-12 2022-01-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Implementation efficient partition-based intra coding concept
GB2585017A (en) * 2019-06-24 2020-12-30 Canon Kk Video coding and decoding
KR20220047853A (ko) * 2019-08-23 2022-04-19 에이치에프아이 이노베이션 인크. 분할 제약을 갖는 소형 크기 코딩 단위의 분할 방법 및 장치
CN111757108B (zh) * 2020-07-01 2023-03-24 格兰菲智能科技有限公司 集成电路及递归划分解码区块的方法
CN114979655A (zh) * 2021-02-21 2022-08-30 腾讯科技(深圳)有限公司 视频编解码方法、装置、计算机可读介质及电子设备
CN114885164B (zh) * 2022-07-12 2022-09-30 深圳比特微电子科技有限公司 确定帧内预测模式的方法、装置及电子设备和存储介质

Also Published As

Publication number Publication date
TW201919397A (zh) 2019-05-16
WO2019016287A1 (en) 2019-01-24
TWI725328B (zh) 2021-04-21
TWI830012B (zh) 2024-01-21
EP3656127A1 (en) 2020-05-27

Similar Documents

Publication Publication Date Title
TWI725328B (zh) 圖片編碼的裝置和方法
US11677940B2 (en) Method and device for encoding/decoding image, and recording medium having stored bitstream
TWI635743B (zh) 用於圖像和視訊編碼的基於模板的圖框內預測的方法和裝置
TWI767105B (zh) 基於分區之框內寫碼技術
CN110463201B (zh) 使用参考块的预测方法和装置
CN110719481B (zh) 跨分量编码信息导出
KR102583569B1 (ko) 영상 신호 부호화/복호화 방법 및 장치
CN110393011B (zh) 用于视频编解码中具有帧内方向预测模式的内含帧内编解码工具设定的方法和装置
JP2023179552A (ja) ブロック分割及びブロック統合をサポートする画像符号化
KR20180121402A (ko) 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN116366843A (zh) 使用样点滤波的图像编码/解码方法和设备
CN112106364B (zh) 使用参考样本的视频信号处理方法及设备
TW202007158A (zh) 分區框內寫碼技術
CN110839161B (zh) 扩展四叉树分割的边界处理
US11843774B2 (en) Apparatus and method for encoding and decoding a picture using picture boundary handling
WO2019185815A1 (en) Partitioning concepts for block-based picture coding
KR20230144124A (ko) 경계 강제 파티션에 대한 개선
TWI738167B (zh) 圖像編碼及解碼技術
TW202042555A (zh) 高效率基於分區的框內編碼概念之實現
JP2024050875A (ja) サンプルブロックの変換済み表現についてのコーディングコンセプト