TW201517599A - 內部運動補償延伸 - Google Patents

內部運動補償延伸 Download PDF

Info

Publication number
TW201517599A
TW201517599A TW103124046A TW103124046A TW201517599A TW 201517599 A TW201517599 A TW 201517599A TW 103124046 A TW103124046 A TW 103124046A TW 103124046 A TW103124046 A TW 103124046A TW 201517599 A TW201517599 A TW 201517599A
Authority
TW
Taiwan
Prior art keywords
offset vector
video
component
current block
block
Prior art date
Application number
TW103124046A
Other languages
English (en)
Inventor
Chao Pang
Rojals Joel Sole
Marta Karczewicz
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW201517599A publication Critical patent/TW201517599A/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

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

Abstract

一種包含一或多個處理器之視訊寫碼器判定該視訊資料之一當前區塊係使用一內部運動補償(IMC)模式編碼,其中該當前區塊在一視訊圖框中;判定該視訊資料之該當前區塊之一第一色彩分量的一偏移向量;在該視訊圖框中使用該偏移向量來定位該第一色彩分量之一參考區塊;回應於該偏移向量指向視訊資料之該當前區塊之一第二色彩分量的一子像素位置來修改該偏移向量以產生一經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之一參考區塊;及基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊來寫碼該當前區塊。

Description

內部運動補償延伸 本申請案主張以下各者之權利:
2013年7月12日申請之美國臨時申請案第61/845,832號;及2013年7月16日申請之美國臨時申請案第61/846,976號,該等申請案中之每一者的全部內容以引用之方式併入本文中。
本發明係關於視訊寫碼,且更特定言之,係關於基於其他視訊區塊之對視訊區塊的預測。
數位視訊能力可併入至廣泛範圍之器件中,該等器件包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、平板型電腦、電子書讀取器、數位攝影機、數位記錄器件、數位媒體播放器、視訊遊戲器件、視訊遊戲控制台、蜂巢式或衛星無線電電話、所謂的「智慧型電話」、視訊電傳會議器件、視訊串流器件及其類似者。數位視訊器件實施視訊壓縮技術,諸如描述於由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分(進階視訊寫碼(AVC))定義之標準、目前在開發中的高效率視訊寫碼(HEVC)標準及此等標準之延伸中的視訊壓縮技術。視訊器件可藉由實施此等視訊壓縮技術來較有效率地傳輸、接收、編碼、解碼及/或儲存數位視訊資訊。
視訊壓縮技術執行空間(圖像內)預測及/或時間(圖像間)預測以減 小或移除視訊序列中所固有之冗餘。對於基於區塊之視訊寫碼,可將視訊切片(亦即,視訊圖框或視訊圖框之一部分)分割成視訊區塊(其亦可稱為樹型區塊)、寫碼單元(CU)及/或寫碼節點。可使用相對於同一圖像中之相鄰區塊中之參考樣本的空間預測來編碼圖像之框內寫碼(I)切片中的視訊區塊。圖像之框間寫碼(P或B)切片中之視訊區塊可使用相對於同一圖像中之相鄰區塊中之參考樣本的空間預測或相對於其他參考圖像中之參考樣本的時間預測。圖像可被稱為圖框,且參考圖像可被稱為參考圖框。
空間或時間預測引起用於待寫碼之區塊之預測性區塊。殘餘資料表示待寫碼之原始區塊與預測性區塊之間的像素差。根據指向形成預測性區塊之參考樣本之區塊的運動向量及指示經寫碼區塊與預測性區塊之間的差之殘餘資料來編碼框間寫碼區塊。根據框內寫碼模式及殘餘資料來編碼框內寫碼區塊。為進行進一步壓縮,可將殘餘資料自像素域變換至變換域,從而引起殘餘變換係數,可接著量化該等殘餘變換係數。可掃描最初配置成二維陣列之經量化之變換係數以便產生變換係數之一維向量,且可應用熵寫碼以達成甚至更多壓縮。
本發明介紹與內部模式補償(IMC)寫碼有關之技術。在IMC寫碼中,視訊編碼器在與正寫碼之區塊相同之圖框或圖像中搜尋一預測性區塊(如在框內預測模式中),但視訊編碼器搜尋一較寬廣之搜尋區而並非僅相鄰之列及行(如在框間預測模式中)。視訊解碼器藉由定位由視訊編碼器判定之相同預測性區塊來解碼該區塊。
根據一個實例,一種解碼視訊資料之方法包括:判定該視訊資料之當前區塊係使用內部運動補償(IMC)模式編碼,其中該當前區塊在一視訊圖框中;判定該視訊資料之當前區塊之第一色彩分量的偏移向量;在該視訊圖框中使用該偏移向量來定位該第一色彩分量之參考 區塊;回應於該偏移向量指向視訊資料之當前區塊之第二色彩分量的子像素位置來修改該偏移向量以產生經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之參考區塊;及基於該第一色彩分量之參考區塊及該第二色彩分量之參考區塊來解碼該當前區塊。
根據另一實例,一種編碼視訊資料之方法包括:判定視訊資料之當前區塊將使用內部運動補償(IMC)模式編碼;判定該視訊資料之當前區塊之第一色彩分量的偏移向量;在該視訊圖框中使用該偏移向量來定位該第一色彩分量之參考區塊;回應於該偏移向量指向視訊資料之當前區塊之第二色彩分量的子像素位置來修改該偏移向量以產生經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之參考區塊;及產生供包括於視訊資料之經編碼位元串流中的識別該偏移向量之一或多個語法元素。
根據另一實例,一種執行視訊寫碼之裝置包括:一記憶體,其儲存視訊資料;及包含一或多個處理器之一視訊寫碼器,該一或多個處理器經組態以:判定該視訊資料之當前區塊係使用內部運動補償(IMC)模式編碼,其中該當前區塊在一視訊圖框中;判定該視訊資料之當前區塊之第一色彩分量的偏移向量;在該視訊圖框中使用該偏移向量來定位該第一色彩分量之參考區塊;回應於該偏移向量指向視訊資料之當前區塊之第二色彩分量的子像素位置來修改該偏移向量以產生經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之參考區塊;及基於該第一色彩分量之參考區塊及該第二色彩分量之參考區塊來寫碼該當前區塊。
根據另一實例,一種執行視訊寫碼之裝置包括:用於判定該視訊資料之當前區塊係使用內部運動補償(IMC)模式編碼之構件,其中該當前區塊在一視訊圖框中;用於判定該視訊資料之當前區塊之第一 色彩分量之偏移向量之構件;用於在該視訊圖框中使用該偏移向量來定位該第一色彩分量之參考區塊之構件;用於回應於該偏移向量指向視訊資料之當前區塊之第二色彩分量的子像素位置來修改該偏移向量以產生經修改偏移向量之構件;用於在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之參考區塊之構件;及用於基於該第一色彩分量之參考區塊及該第二色彩分量之參考區塊來寫碼該當前區塊之構件。
根據另一實例,一種電腦可讀媒體儲存指令,該等指令在由一或多個處理器執行時使該一或多個處理器:判定該視訊資料之當前區塊係使用內部運動補償(IMC)模式編碼,其中該當前區塊在一視訊圖框中;判定該視訊資料之當前區塊之第一色彩分量的偏移向量;在該視訊圖框中使用該偏移向量來定位該第一色彩分量之參考區塊;回應於該偏移向量指向視訊資料之當前區塊之第二色彩分量的子像素位置來修改該偏移向量以產生經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之參考區塊;及基於該第一色彩分量之參考區塊及該第二色彩分量之參考區塊來寫碼該當前區塊。
一或多個實例之細節陳述於隨附圖式及以下描述中。其他特徵、目標及優勢將自該描述及該等圖式以及自申請專利範圍顯而易見。
10‧‧‧視訊編碼及解碼系統
12‧‧‧源器件
14‧‧‧目的地器件
16‧‧‧鏈路
17‧‧‧儲存器件
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧輸出介面
27‧‧‧後處理實體
28‧‧‧輸入介面
29‧‧‧網路實體
30‧‧‧視訊解碼器
32‧‧‧顯示器件
33‧‧‧視訊資料記憶體
35‧‧‧分割單元
41‧‧‧預測處理單元
42‧‧‧運動估計單元
44‧‧‧運動補償單元
46‧‧‧框內預測處理單元
50‧‧‧求和器
52‧‧‧變換處理單元
54‧‧‧量化單元
56‧‧‧熵編碼單元
58‧‧‧反量化單元
60‧‧‧反變換處理單元
62‧‧‧求和器
63‧‧‧濾波單元
64‧‧‧解碼圖像緩衝器
78‧‧‧視訊資料記憶體
80‧‧‧熵解碼單元
81‧‧‧預測處理單元
82‧‧‧運動補償單元
84‧‧‧框內預測處理單元
86‧‧‧反量化單元
88‧‧‧反變換處理單元
90‧‧‧求和器
91‧‧‧濾波器單元
92‧‧‧解碼圖像緩衝器
102‧‧‧當前區塊
103‧‧‧當前圖像
104‧‧‧預測性視訊區塊
106‧‧‧二維向量
108‧‧‧預期區域
110‧‧‧垂直位移分量
112‧‧‧水平位移分量
圖1為說明可利用本發明中所描述之技術之實例視訊編碼及解碼系統的方塊圖。
圖2A至圖2C為說明視訊資料之不同樣本格式的概念圖。
圖3為說明根據4:2:0樣本格式而被格式化之16×16寫碼單元的概念圖。
圖4為說明根據4:2:2樣本格式而被格式化之16×16寫碼單元的概 念圖。
圖5展示內部運動補償(IMC)模式之概念說明。
圖6為說明可實施本發明中所描述之技術之實例視訊編碼器的方塊圖。
圖7為說明可實施本發明中所描述之技術之實例視訊解碼器的方塊圖。
圖8為展示根據本發明之技術的一種寫碼視訊資料之方法之實例的流程圖。
各種視訊寫碼標準(包括新近開發之高效率視訊寫碼(HEVC)標準)包括用於視訊區塊之預測性寫碼模式,其中當前正寫碼之區塊係基於視訊資料之業已寫碼區塊加以預測。在框內預測模式中,當前區塊係基於在與該當前區塊相同之圖像中的一或多個先前寫碼之相鄰區塊加以預測,而在框間預測模式中,當前區塊係基於一不同圖像中之業已寫碼區塊加以預測。在框間預測模式中,有時將判定待用作預測性區塊的先前寫碼圖框之區塊的過程稱為運動估計,運動估計係大體由視訊編碼器執行,且有時將識別及擷取一預測性區塊之過程稱為運動補償,運動補償係由視訊編碼器與視訊解碼器兩者執行。
視訊編碼器通常藉由使用多個寫碼情境寫碼視訊且識別產生所要速率-失真取捨之寫碼情境來判定如何寫碼一視訊資料序列。當針對一特定視訊區塊來測試框內預測寫碼情境時,視訊編碼器通常測試相鄰像素列(亦即,緊接於正寫碼之區塊上面的像素列)且測試相鄰像素行(亦即,緊接於正寫碼之區塊左邊的像素行)。相比之下,當測試框間預測情境時,視訊編碼器通常在一大得多的搜尋區中識別候選預測性區塊,其中該搜尋區對應於在視訊資料之先前寫碼圖框中的視訊區塊。
然而,已發現,對於某些類型之視訊影像(諸如,包括文字、符號或重複性型樣之視訊影像)而言,可藉由使用內部運動補償(IMC)模式來達成關於框內預測及框間預測之寫碼增益,該IMC模式有時亦稱為內部區塊複製(IBC)模式。在本發明中,術語IMC模式及IBC模式可互換。例如,最初使用術語IMC模式,但後來IMC模式被修改為IBC模式。在IMC模式中,視訊編碼器在與正寫碼之區塊相同之圖框或圖像中搜尋一預測性區塊(如在框內預測模式中),但視訊編碼器搜尋一較寬廣之搜尋區而並非僅相鄰之列及行(如在框間預測模式中)。
在IMC模式中,視訊編碼器可判定一偏移向量(有時亦稱為運動向量或區塊向量),以用於識別在與正預測之區塊相同之圖框或圖像內的預測性區塊。舉例而言,該偏移向量包括x分量及y分量,其中x分量識別正預測之視訊區塊與預測性區塊之間的水平位移,且其中y分量識別正預測之視訊區塊與預測性區塊之間的垂直位移。視訊編碼器在經編碼位元串流中發信所判定之偏移向量使得視訊解碼器在解碼該經編碼位元串流時可識別由視訊編碼器選擇之預測性區塊。
本發明介紹可改良IMC寫碼之效能及/或簡化利用IMC寫碼模式之系統之系統設計的技術。根據一種技術,用以發信運動向量之分量(諸如,x分量或y分量)的碼字之長度可取決於用於IMC寫碼模式之搜尋區域的大小及/或包括正預測之區塊之寫碼樹型單元的大小。以此方式,固定長度之碼字可用以發信偏移向量之分量,但固定長度之碼字的長度可取決於情境。舉例而言,固定長度之碼字的長度可針對x分量及y分量而不同。藉由在一些寫碼情境中使用較小固定長度之碼字,可減少與發信IMC寫碼模式之偏移向量相關聯的位元附加項。
根據本發明之技術之另一態樣,視訊寫碼器可判定正以IMC模式寫碼之視訊資料區塊的偏移向量(例如,用於第一色彩分量),且若該偏移向量指向子像素位置(例如,用於第一色彩分量抑或第二色彩分 量),則可修改該偏移向量以指向整數像素位置或指向較不精確之子像素位置。如下文將予以更詳細解釋,針對第一色彩分量所判定之偏移向量在被用以定位一用於第二色彩分量之預測性區塊之前可能需要加以縮放。即使原始偏移向量指向第一色彩分量之整數像素位置,經縮放之偏移向量仍可指向第二色彩分量之子像素位置。在其他實例中,經縮放之偏移向量可針對第二偏移向量指向精度比偏移向量針對第一色彩分量所指向高的像素位置。
根據本發明之技術,偏移向量及/或經修改偏移向量可經捨位以指向整數像素位置或指向較不精確之像素位置。指向整數像素位置可消除需要執行內插濾波,而指向較不精確之子像素位置可相對於被用於較精確之子像素位置的內插濾波器來降低內插濾波器之複雜度。避免內插濾波或使用較不複雜之內插濾波器可潛在地降低用於實施IMC寫碼模式之總複雜度(亦即,記憶體使用、操作數目等)。
根據本發明之技術之另一態樣,可將用於IMC寫碼模式之最大寫碼單元(CU)大小設定至小於最大CTU大小之大小。因此,可僅針對大小與用於IMC寫碼之最大CU大小相同或小於用於IMC寫碼之最大CU大小的CU來執行IMC寫碼。在一些實施中,具有小於最大CTU大小的用於IMC寫碼之最大CU大小可為編碼器側最佳化使得藉由針對大於用於IMC寫碼之最大CU大小的視訊資料區塊而不評估IMC寫碼情境來增加編碼視訊資料之速度。在此實施中,用於IMC寫碼之最大CU大小可能無需發信至視訊解碼器或無需藉由視訊解碼器來判定。在其他實施中,視訊編碼器可明確地抑或隱含地將用於IMC寫碼之最大CU大小發信至視訊解碼器。
根據本發明之技術之另一態樣,用於每一CU之運動向量寫碼方法可取決於CU大小、CU位置及CTU大小中之一或多者。如本發明中所使用,運動向量寫碼方法可參考用以寫碼運動向量之碼字之長度, 但其亦可參考運動向量是使用固定長度碼還是可變長度碼寫碼,或參考用於寫碼運動向量之某種其他方法。CU位置可指代CU在視訊資料圖框內之位置,但CU位置亦可指代CU在CTU內之位置。舉例而言,與位於CTU頂部之CU相比,位於CTU之右下角中的CU可潛在地需要較長運動向量以識別一預測性區塊。因此,用以寫碼右下CTU之運動向量的碼字可長於用以寫碼定位於CTU頂部之CTU之運動向量的碼字。根據此態樣,具有不同大小或位於不同位置或處於不同CTU大小之CU的碼長可為不同的。應注意,mv寫碼中之其他過程亦可取決於CU大小、CU位置亦及/或CTU大小(諸如,算術碼之碼類型或上下文模型)。
圖1為說明可利用本發明中所描述之技術之實例視訊編碼及解碼系統10的方塊圖。如圖1中所示,系統10包括源器件12,該源器件產生稍後待由目的地器件14解碼之經編碼視訊資料。源器件12及目的地器件14可包含廣泛範圍之器件中之任一者,包括桌上型電腦、筆記型(亦即,膝上型)電腦、平板型電腦、機上盒、電話手機(諸如,所謂「智慧型」電話)、所謂「智慧型」板、電視、攝影機、顯示器件、數位媒體播放器、視訊遊戲控制台、視訊串流器件或其類似者。在一些狀況下,源器件12及目的地器件14可經裝備以進行無線通信。
目的地器件14可經由鏈路16來接收待解碼之經編碼視訊資料。鏈路16可包含能夠將經編碼視訊資料自源器件12移至目的地器件14的任何類型之媒體或器件。在一個實例中,鏈路16可包含一用以使得源器件12能夠將經編碼視訊資料直接即時傳輸至目的地器件14之通信媒體。可根據通信標準(諸如,無線通信協定)來調變經編碼視訊資料,且將經編碼視訊資料傳輸至目的地器件14。通信媒體可包含任何無線或有線通信媒體(諸如,射頻(RF)頻譜或一或多個實體傳輸線)。通信媒體可形成基於封包之網路(諸如,區域網路、廣域網路或諸如網際 網路之全域網路)的部分。通信媒體可包括路由器、交換器、基地台,或可對促進自源器件12至目的地器件14之通信有用的任何其他設備。
替代地,可將經編碼資料自輸出介面22輸出至儲存器件17。類似地,可藉由輸入介面自儲存器件17來存取經編碼資料。儲存器件17可包括多種分散式或本機存取之資料儲存媒體(諸如,硬碟、藍光光碟、DVD、CD-ROM、快閃記憶體、揮發性或非揮發性記憶體,或用於儲存經編碼視訊資料之任何其他合適數位儲存媒體)中之任一者。在另外之實例中,儲存器件17可對應於可保持由源器件12產生之經編碼視訊的檔案伺服器或另一中間儲存器件。目的地器件14可經由串流或下載自儲存器件17存取所儲存之視訊資料。檔案伺服器可為能夠儲存經編碼視訊資料且將彼經編碼視訊資料傳輸至目的地器件14之任何類型之伺服器。實例檔案伺服器包括web伺服器(例如,用於網站)、FTP伺服器、網路附加儲存(NAS)器件或本端磁碟機。目的地器件14可經由任何標準資料連接(包括網際網路連接)來存取經編碼視訊資料。此資料連接可包括適合於存取儲存於檔案伺服器上之經編碼視訊資料的無線頻道(例如,Wi-Fi連接)、有線連接(例如,DSL、纜線數據機,等等),或兩者之組合。經編碼視訊資料自儲存器件17之傳輸可為串流傳輸、下載傳輸或兩者之組合。
本發明之技術未必限於無線應用或設定。該等技術可應用於支援多種多媒體應用(諸如,(例如)經由網際網路之空中電視廣播、有線電視傳輸、衛星電視傳輸、串流視訊傳輸)中之任一者之視訊寫碼、供儲存於資料儲存媒體上之數位視訊之編碼、儲存於資料儲存媒體上之數位視訊之解碼,或其他應用。在一些實例中,系統10可經組態成支援單向或雙向視訊傳輸以支援諸如視訊串流、視訊播放、視訊廣播及/或視訊電話之應用。
在圖1之實例中,源器件12包括視訊源18、視訊編碼器20及輸出介面22。在一些狀況下,輸出介面22可包括調變器/解調變器(數據機)及/或傳輸器。在源器件12中,視訊源18可包括諸如視訊俘獲器件(例如,視訊攝影機、含有先前俘獲之視訊的視訊封存檔、用以自視訊內容提供者接收視訊之視訊饋入介面)之源,及/或用於產生電腦圖形資料以作為源視訊之電腦圖形系統之源,或此等源之組合。作為一個實例,若視訊源18為視訊攝影機,則源器件12與目的地器件14可形成所謂的攝影機電話或視訊電話。然而,本發明中所描述之技術一般而言可適用於視訊寫碼,且可應用於無線及/或有線應用。
經俘獲、經預先俘獲或經電腦產生之視訊可由視訊編碼器20來編碼。可經由源器件12之輸出介面22將經編碼視訊資料直接傳輸至目的地器件14。亦可(或替代地)將經編碼視訊資料儲存至儲存器件17上以供稍後由目的地器件14或其他器件存取以用於解碼及/或播放。
目的地器件14包括輸入介面28、視訊解碼器30及顯示器件32。在一些狀況下,輸入介面28可包括接收器及/或數據機。目的地器件14之輸入介面28經由鏈路16來接收經編碼視訊資料。經由鏈路16傳達或在儲存器件17上提供之經編碼視訊資料可包括由視訊編碼器20產生之多種語法元素,其供視訊解碼器(諸如,視訊解碼器30)用於解碼該視訊資料。可將此等語法元素與在通信媒體上傳輸、儲存於儲存媒體上或儲存於檔案伺服器上之經編碼視訊資料包括在一起。
顯示器件32可與目的地器件14整合或在目的地器件14外部。在一些實例中,目的地器件14可包括整合式顯示器件且亦經組態以與外部顯示器件建立介面連接。在其他實例中,目的地器件14可為顯示器件。一般而言,顯示器件32向使用者顯示經解碼視訊資料,且可包含多種顯示器件中之任一者(諸如,液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示器件)。
視訊編碼器20及視訊解碼器30可根據一視訊壓縮標準(諸如,高效視訊寫碼(HEVC)標準)進行操作,且可遵照HEVC測試模型(HM)。HEVC標準之工作草案(稱為「HEVC工作草案10」或「HEVC WD10」)係描述於Bross等人之「Editors' proposed corrections to HEVC version 1」(ITU-T SG16 WP3及ISO/IEC JTC1/SC29/WG11之視訊寫碼聯合協作小組(JCT-VC),第13次會議,2013年4月,KR,Incheon)中。本發明中所描述之技術亦可根據當前正在開發中之HEVC標準延伸來操作。
替代地或另外,視訊編碼器20及視訊解碼器30可根據其他專屬或工業標準(諸如,ITU-T H.264標準,替代地稱作MPEG-4,第10部分,進階視訊寫碼(AVC))或此等標準之延伸而操作。然而,本發明之技術並不限於任何特定編碼標準。視訊壓縮標準之其他實例包括MPEG-2及ITU-T H.263。
雖然未展示於圖1中,但在一些態樣中,視訊編碼器20及視訊解碼器30可各自與音訊編碼器及解碼器整合,且可包括適當MUX-DEMUX單元或其他硬體及軟體以處置共同資料流或分開之資料流中之音訊與視訊兩者的編碼。若適用,則在一些實例中,MUX-DEMUX單元可遵照ITU H.223多工器協定或諸如使用者資料報協定(UDP)之其他協定。
視訊編碼器20及視訊解碼器30可各自實施為多種合適編碼器電路中之任一者(諸如,一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、軟體、硬體、韌體或其任何組合)。當該等技術部分地在軟體中實施時,器件可將用於軟體之指令儲存於合適之非暫時性電腦可讀媒體中,且在硬體中使用一或多個處理器來執行該等指令以執行本發明之技術。視訊編碼器20及視訊解碼器30中之每一者可包括於一或多個編 碼器或解碼器中,該一或多個編碼器或解碼器中之任一者可經整合為一各別器件中之組合式編碼器/解碼器(編解碼器(CODEC))的部分。
JCT-VC開發了HEVC標準。HEVC標準化努力係基於視訊寫碼器件之演進模型(稱為HEVC測試模型(HM))。HM根據(例如)ITU-T H.264/AVC假設視訊寫碼器件相對於現有器件之若干額外能力。舉例而言,H.264提供九個框內預測編碼模式,而HM可提供多達三十三個框內預測編碼模式。
一般而言,HM之工作模型描述視訊圖框或圖像可劃分成包括亮度樣本與色度樣本兩者之樹型區塊或最大寫碼單元(LCU)序列。樹型區塊具有與H.264標準之巨集區塊之目的類似的目的。一切片包括按寫碼次序之諸多連續樹型區塊。一視訊圖框或圖像可分割成一或多個切片。每一樹型區塊可根據四分樹而分裂成若干寫碼單元(CU)。舉例而言,樹型區塊(作為四分樹之根節點)可分裂成四個子節點,且每一子節點可又為父節點且分裂成另外四個子節點。最後未分裂之子節點(作為四分樹之葉節點)包含一寫碼節點(亦即,經寫碼視訊區塊)。與經寫碼位元串流相關聯之語法資料可定義樹型區塊可分裂之最大次數,且亦可定義寫碼節點之最小大小。
在HEVC中,CU被定義為基本寫碼單元。在HEVC中,一圖框首先劃分成諸多方形單元(稱作CTU(寫碼樹型單元))。假設CTU大小為2N×2N。每一CTU可劃分成4個N×N CU,且每一CU可進一步劃分成4個(N/2)×(N/2)單元。區塊分裂可以相同方式而繼續直至其達到預定義之最大分裂水平或所允許之最小CU大小。CTU之大小、進一步將CTU分裂成CU之水平及CU之最小大小在編碼組態中加以定義,且將被發送至視訊解碼器30或可為視訊編碼器20與視訊解碼器30兩者所知。
CU包括一寫碼節點及與該寫碼節點相關聯之若干預測單元(PU) 及變換單元(TU)。CU之大小對應於寫碼節點之大小,且形狀必須為正方形。CU之大小可在自8×8像素直至具有最大64×64像素或大於64×64像素之樹型區塊大小的範圍內。每一CU可含有一或多個PU及一或多個TU。與CU相關聯之語法資料可描述(例如)CU至一或多個PU之分割。分割模式可在CU係經跳過或直接模式編碼、經框內預測模式編碼抑或經框間預測模式編碼之間而不同。PU之形狀可分割成非正方形。與CU相關聯之語法資料亦可描述(例如)CU根據四分樹至一或多個TU之分割。TU之形狀可為正方形或非正方形。
HEVC標準允許根據TU進行變換,該等變換對於不同CU而言可為不同的。通常基於在針對已分割LCU所定義之給定CU內的PU之大小來對TU設定大小,儘管可能並非總是此狀況。TU通常為與PU相同之大小或小於PU。在一些實例中,可使用已知為「殘餘四分樹」(RQT)之四分樹結構將對應於CU之殘餘樣本再分成若干較小單元。可將RQT之葉節點稱為變換單元(TU)。與TU相關聯之像素差值可經變換以產生可加以量化之變換係數。
一般而言,PU包括與預測過程有關之資料。舉例而言,當將該PU以框內模式編碼時,該PU可包括描述該PU之框內預測模式的資料。作為另一實例,當將該PU以框間模式編碼時,該PU可包括定義該PU之運動向量的資料。定義PU之運動向量的資料可描述(例如)運動向量之水平分量、運動向量之垂直分量、運動向量之解析度(例如,四分之一像素精度或八分之一像素精度)、運動向量所指向之參考圖像,及/或運動向量之參考圖像清單(例如,清單0、清單1或清單C)。
一般而言,TU被用於變換過程及量化過程。一具有一或多個PU之給定CU亦可包括一或多個變換單元(TU)。在預測之後,視訊編碼器20可計算對應於PU之殘餘值。該等殘餘值包含像素差值,該等像 素差值可經變換成使用TU加以量化及掃描以產生串行化變換係數以用於熵寫碼的變換係數。本發明通常使用術語「視訊區塊」來指代CU之寫碼節點。在一些特定狀況下,本發明亦可使用術語「視訊區塊」來指代包括一寫碼節點及若干PU及TU的樹型區塊(亦即,LCU或CU)。
視訊序列通常包括一系列視訊圖框或圖像。圖像群組(GOP)大體包含一系列視訊圖像中之一或多者。GOP可包括在GOP之標頭、圖像中之一或多者之標頭或別處的語法資料,該語法資料描述包括於GOP中之圖像的數目。圖像之每一切片可包括描述用於該各別切片之編碼模式的切片語法資料。視訊編碼器20通常對個別視訊切片內之視訊區塊進行操作以便編碼視訊資料。視訊區塊可對應於CU內之寫碼節點。視訊區塊可具有固定或變化之大小,且可根據指定之寫碼標準而在大小方面不同。
作為一實例,HM支援以各種PU大小進行之預測。假定特定CU之大小為2N×2N,則HM支援以2N×2N或N×N之PU大小進行之框內預測,及以2N×2N、2N×N、N×2N或N×N之對稱PU大小進行之框間預測。HM亦支援以2N×nU、2N×nD、nL×2N及nR×2N之PU大小進行之框間預測的不對稱分割。在不對稱分割中,CU之一個方向未分割,而另一方向分割成25%及75%。CU之對應於25%分割之部分係由「n」繼之以「上」、「下」、「左」或「右」之指示來指示。因此,舉例而言,「2N×nU」指代水平上以頂部之2N×0.5N PU及底部之2N×1.5N PU分割之2N×2N CU。
在本發明中,「N×N」與「N乘N」可互換地使用以指代視訊區塊在垂直尺寸與水平尺寸方面之像素尺寸,例如,16×16像素或16乘16像素。一般而言,16×16區塊在垂直方向上將具有16個像素(y=16)且在水平方向上將具有16個像素(x=16)。同樣地,N×N區塊大體在垂 直方向上具有N個像素且在水平方向上具有N個像素,其中N表示非負整數值。可按列及行來配置區塊中之像素。此外,區塊未必需要在水平方向上與在垂直方向上具有相同數目個像素。舉例而言,區塊可包含N×M像素,其中M未必等於N。
因此,根據HEVC,一CU可包括一或多個預測單元(PU)及/或一或多個變換單元(TU)。本發明亦使用術語「區塊」、「分區」或「部分」來指代CU、PU或TU中之任一者。一般而言,「部分」可指代視訊圖框之任何子集。另外,本發明通常使用術語「視訊區塊」來指代CU之寫碼節點。在一些特定狀況下,本發明亦可使用術語「視訊區塊」來指代包括一寫碼節點及若干PU及TU之樹型區塊(亦即,LCU或CU)。因此,視訊區塊可對應於CU內之寫碼節點且視訊區塊可具有固定或變化之大小,且可根據指定之寫碼標準而在大小方面不同。
視訊取樣格式(其亦可稱為色度格式)可相對於CU中所包括之亮度樣本的數目來定義CU中所包括之色度樣本的數目。取決於色度分量之視訊取樣格式,U分量及V分量之大小(就樣本數目而言)可與Y分量之大小相同或不同。在HEVC標準中,相對於亮度分量來定義一被稱作chroma_format_idc之值以指示色度分量之不同取樣格式。在HEVC中,在SPS中發信chroma_format_idc。表1說明chroma_format_idc之值與關聯之色度格式之間的關係。
在表1中,變量SubWidthC及SubHeightC可用以指示亮度分量之樣本數目與每一色度分量之樣本數目之間的水平取樣速率比及垂直取樣速率比。在表1中所描述之色度格式中,兩個色度分量具有相同之 取樣速率。因此,在4:2:0取樣中,兩個色度陣列中之每一者具有亮度陣列之一半高度及一半寬度,而在4:2:2取樣中,兩個色度陣列中之每一者具有亮度陣列之相同高度及一半寬度。在4:4:4取樣中,兩個色度陣列中之每一者可具有與亮度陣列相同之高度及寬度,或在一些例子中,三個色平面可皆被分開地處理為單色取樣圖像。
在表1之實例中,對於4:2:0格式而言,亮度分量之取樣速率針對水平方向與垂直方向兩者而為色度分量之取樣速率的兩倍。結果,對於根據4:2:0格式而被格式化之寫碼單元而言,亮度分量之樣本陣列的寬度及高度為色度分量之每一樣本陣列之寬度及高度的兩倍。類似地,對於根據4:2:2格式而被格式化之寫碼單元而言,亮度分量之樣本陣列的寬度為每一色度分量之樣本陣列之寬度的兩倍,但亮度分量之樣本陣列的高度等於每一色度分量之樣本陣列的高度。對於根據4:4:4格式而被格式化之寫碼單元而言,亮度分量之樣本陣列具有與每一色度分量之樣本陣列相同的寬度及高度。應注意,除YUV色空間之外,還可根據RGB空間色彩來定義視訊資料。以此方式,本文中所描述之色度格式可適用於YUV抑或RGB色空間。RGB色度格式通常經取樣使得紅色樣本之數目、綠色樣本之數目及藍色樣本之數目相等。因此,如本文中所使用之術語「4:4:4色度格式」可指代YUV色空間抑或RGB色空間,其中對於所有色彩分量而言樣本之數目係相等的。
圖2A至圖2C為說明視訊資料之不同樣本格式的概念圖。圖2A為說明4:2:0樣本格式之概念圖。如圖2A中所說明,對於4:2:0樣本格式而言,色度分量為亮度分量之大小的四分之一。因此,對於根據4:2:0樣本格式而被格式化之CU而言,針對色度分量之每一樣本而存在四個亮度樣本。圖2B為說明4:2:2樣本格式之概念圖。如圖2B中所說明,對於4:2:2樣本格式而言,色度分量為亮度分量之大小的二分之一。因此,對於根據4:2:2樣本格式而被格式化之CU而言,針對色度 分量之每一樣本而存在兩個亮度樣本。圖2C為說明4:4:4樣本格式之概念圖。如圖2C中所說明,對於4:4:4樣本格式而言,色度分量為與亮度分量相同之大小。因此,對於根據4:4:4樣本格式而被格式化之CU而言,針對色度分量之每一樣本而存在一個亮度樣本。
圖3為說明根據4:2:0樣本格式而被格式化之16×16寫碼單元之實例的概念圖。圖3說明色度樣本相對於CU內之亮度樣本的相對位置。如上文所描述,CU係通常根據水平亮度樣本及垂直亮度樣本之數目加以定義。因此,如圖3中所說明,根據4:2:0樣本格式而被格式化之16×16 CU包括亮度分量之16×16樣本及每一色度分量之8×8樣本。另外,如上文所描述,一CU可分割成較小CU。舉例而言,圖3中所說明之CU可分割成四個8×8 CU,其中每一8×8 CU包括亮度分量之8×8樣本及每一色度分量之4×4樣本。
圖4為說明根據4:2:2樣本格式而被格式化之16×16寫碼單元之實例的概念圖。圖4說明色度樣本相對於CU內之亮度樣本的相對位置。如上文所描述,CU係通常根據水平亮度樣本及垂直亮度樣本之數目加以定義。因此,如圖4中所說明,根據4:2:2樣本格式而被格式化之16×16 CU包括亮度分量之16×16樣本及每一色度分量之8×16樣本。另外,如上文所描述,一CU可分割成較小CU。舉例而言,圖4中所說明之CU可分割成四個8×8 CU,其中每一CU包括亮度分量之8×8樣本及每一色度分量之4×8樣本。
在使用CU之PU進行框內預測性或框間預測性寫碼之後,視訊編碼器20可計算CU之TU的殘餘資料。PU可包含空間域(亦稱為像素域)中之像素資料,且TU可包含在將變換(例如,離散餘弦變換(DCT)、整數變換、小波變換或概念上類似之變換)應用於殘餘視訊資料之後的變換域中之係數。該殘餘資料可對應於未經編碼圖像之像素與對應於PU之預測值之間的像素差。視訊編碼器20可形成包括CU之殘餘資 料的TU,且接著變換該等TU以產生CU之變換係數。
在進行任何變換以產生變換係數之後,視訊編碼器20可執行對該等變換係數之量化。量化大體指代將變換係數量化以可能地減少用以表示該等係數之資料之量從而提供進一步壓縮的過程。量化過程可減小與該等係數中之一些或所有相關聯的位元深度。舉例而言,可在量化期間將n位元值降值捨位至m位元值,其中n大於m。
在一些實例中,視訊編碼器20可利用預定義掃描次序來掃描經量化之變換係數以產生可加以熵編碼之串行化向量。在其他實例中,視訊編碼器20可執行自適應性掃描。在掃描該等經量化之變換係數以形成一維向量之後,視訊編碼器20可熵編碼該一維向量(例如,根據上下文自適應性可變長度寫碼(CAVLC)、上下文自適應性二進位算術寫碼(CABAC)、基於語法之上下文自適應性二進位算術寫碼(SBAC)、機率間隔分割熵(PIPE)寫碼或另一熵編碼方法)。視訊編碼器20亦可熵編碼與經編碼視訊資料相關聯之語法元素以供由視訊解碼器30用於解碼視訊資料。
為執行CABAC,視訊編碼器20可將上下文模型內之上下文指派給待傳輸之符號。該上下文可能係關於(例如)符號之相鄰值是否為非零。為執行CAVLC,視訊編碼器20可選擇用於待傳輸之符號的可變長度碼。可將VLC中之碼字建構成使得相對較短碼對應於更有可能的符號,而較長碼對應於較不可能的符號。以此方式,相對於(例如)針對待傳輸之每一符號使用相等長度碼字,使用VLC可達成位元節省。機率判定可基於指派給符號之上下文而進行。
根據本發明之一個實例技術,視訊解碼器30可使用IMC模式來解碼視訊資料之當前區塊。視訊解碼器30可針對視訊資料之當前區塊來判定用以發信偏移向量之分量的碼字之長度且基於該碼字之長度來寫碼該偏移向量。正寫碼之偏移向量之分量可為x分量抑或y分量,且用 以發信一個分量之碼字之長度可不同於用以發信x分量及y分量中之另一者之第二碼字之長度。
舉例而言,視訊解碼器30可藉由基於用以針對視訊資料之當前區塊執行IMC的搜尋區域之大小判定碼字之長度來判定用以發信偏移向量之分量的碼字之長度。舉例而言,可基於以下各者中之一或多者來判定區域之大小:當前區塊之像素與搜尋區域之頂邊界之間的距離、當前區塊之像素與搜尋區域之左邊界之間的距離、當前區塊之像素與搜尋區域之右邊界之間的距離。
另外或替代地,視訊解碼器30可基於以下各者中之一或多者、基於當前區塊之大小來判定用以發信偏移向量之分量的碼字之長度:包含當前區塊之寫碼樹型單元的大小、當前區塊在寫碼樹型單元(CTU)中之位置或當前區塊在視訊資料圖框中的位置。
根據本發明之另一實例技術,視訊解碼器30可使用IMC模式來解碼視訊資料之當前區塊。視訊解碼器30可針對視訊資料之當前區塊來判定一偏移向量(例如,當前區塊之亮度分量的偏移向量,視訊編碼器20針對該偏移向量來發信視訊解碼器30所用來判定該偏移向量之資訊),且回應於該偏移向量指向子像素位置(例如,回應於該偏移向量指向色度樣本內之子像素位置)來修改該偏移向量以產生一用於定位當前區塊之色度分量之參考區塊的經修改偏移向量。舉例而言,經修改偏移向量可指向整數像素位置或指向一為精度低於子像素位置之位置的像素位置。
根據本發明之另一實例技術,視訊解碼器30可針對視訊資料之當前區塊來判定最大CTU大小。視訊解碼器30可針對視訊資料之當前區塊來判定用於IMC模式之最大CU大小。用於IMC模式之最大CU大小可小於最大CTU大小。視訊解碼器30可基於用於IMC模式之最大CU大小來寫碼視訊資料之當前區塊。舉例而言,基於用於IMC模式之最 大CU大小來寫碼視訊資料之當前區塊可包括以下各者中之一或多者:回應於視訊資料之當前區塊的大小係大於用於IMC模式之最大CU大小而在IMC模式中不寫碼視訊資料之當前區塊;或回應於視訊資料之當前區塊的大小係小於或等於用於IMC模式之最大CU大小而在IMC模式中寫碼視訊資料之當前區塊。舉例而言,用於IMC模式之最大CU大小可在經編碼視訊位元串流中加以發信或基於業已寫碼之視訊資料的統計加以判定。
根據本發明之另一實例技術,視訊解碼器30可使用IMC模式來寫碼視訊資料之當前區塊。基於當前區塊之大小、當前區塊之位置及包含當前區塊之CTU之大小中的一或多者,視訊解碼器30可針對視訊資料之當前區塊來判定用於寫碼偏移向量之寫碼方法且基於所判定之寫碼方法來寫碼該偏移向量。舉例而言,用於寫碼偏移向量之寫碼方法可包括固定長度寫碼、可變長度寫碼、算術寫碼及基於上下文之寫碼中的一者或以上各者之組合。舉例而言,當前區塊之位置可為在CTU內之位置或在視訊資料圖框內之位置。
圖5展示內部運動補償(IMC)模式之概念說明。如上文所註釋,IMC模式係與內部區塊複製(IBC)模式相同。舉例而言,視訊編碼器20及視訊解碼器30可經組態以使用IMC模式來編碼及解碼視訊資料區塊。許多應用(諸如,遠端桌上型電腦、遠端遊戲、無線顯示器、汽車信息娛樂片、雲計算等)在人們日常生活中正變得常規化,且可藉由使用IMC模式來改良在寫碼此內容時之寫碼效率。圖1之系統10可表示經組態以執行此等應用中之任一者的器件。此等應用中之視訊內容常常為自然內容、文字、人工圖形等之組合。在視訊圖框之文字及人工圖形區域中,常常存在重複之型樣(諸如,字符、圖示、符號等)。如上文所介紹,IMC為使得能夠移除此種冗餘且潛在地改良如JCT-VC M0350中所報告之框內寫碼效率的專用技術。如圖5中所說 明,對於使用IMC之寫碼單元(CU)而言,自同一圖框中之業已重建構之區域獲得預測信號。最後,編碼偏移向量(其指示自當前CU移位之預測信號的位置)連同殘餘信號。
例如,圖5說明根據一根據本發明之技術的用於自同一圖像內之視訊資料之預測性區塊來框內預測視訊資料區塊之模式(例如,根據一根據本發明之技術的內部MC模式)的用於預測當前圖像103內之視訊資料之當前區塊102的實例技術。圖5說明當前圖像103內之視訊資料之預測性區塊104。視訊寫碼器(例如,視訊編碼器20及/或視訊解碼器30)可根據一根據本發明之技術的內部MC模式來使用預測性視訊區塊104以預測當前視訊區塊102。
視訊編碼器20自視訊資料之先前重建構之區塊的集合來選擇預測性視訊區塊104以用於預測當前視訊區塊102。視訊編碼器20藉由以下步驟來重建構視訊資料區塊:反量化及反變換亦包括於經編碼視訊位元串流中之視訊資料,且對所得殘餘區塊與用以預測視訊資料之經重建構區塊的預測性區塊求和。在圖5之實例中,圖像103內之預期區域108(其亦可稱為「預期區」或「光柵區」)包括先前重建構之視訊區塊的集合。視訊編碼器20可以多種方式來定義圖像103內之預期區域108,如下文予以更詳細描述。視訊編碼器20可基於對預測及寫碼當前視訊區塊102之相對效率及準確度的分析(基於預期區域108內之各種視訊區塊)而自預期區域108中之視訊區塊之中來選擇待預測當前視訊區塊102之預測性視訊區塊104。
視訊編碼器20判定二維向量106,該二維向量表示預測性視訊區塊104相對於當前視訊區塊102之位置或位移。二維向量106(其為偏移向量之實例)包括水平位移分量112及垂直位移分量110,該水平位移分量及該垂直位移分量分別表示預測性視訊區塊104相對於當前視訊區塊102之水平位移及垂直位移。視訊編碼器20可包括識別或定義 經編碼視訊位元串流中之二維向量106(例如,定義水平位移分量112及垂直位移分量110)的一或多個語法元素。視訊解碼器30可解碼該一或多個語法元素以判定二維向量106,且使用所判定之向量來識別用於當前視訊區塊102之預測性視訊區塊104。
在一些實例中,二維向量106之解析度可為整數像素(例如,被約束為具有整數像素解析度)。在此等實例中,水平位移分量112及垂直位移分量110之解析度將為整數像素。在此等實例中,視訊編碼器20及視訊解碼器30無需內插預測性視訊區塊104之像素值以判定用於當前視訊區塊102之預測值。
在其他實例中,水平位移分量112及垂直位移分量110中之一者或兩者的解析度可為子像素。舉例而言,分量112及110中之一者可具有整數像素解析度,而另一者具有子像素解析度。在一些實例中,水平位移分量112與垂直位移分量110兩者之解析度可為子像素,但水平位移分量112及垂直位移分量110可具有不同解析度。
在一些實例中,視訊寫碼器(例如,視訊編碼器20及/或視訊解碼器30)基於特定水平(例如,區塊水平、切片水平或圖像水平調適)來調適水平位移分量112及垂直位移分量110之解析度。舉例而言,視訊編碼器20可在切片層級處(例如,在切片標頭中)發信一旗標,該旗標指示水平位移分量112及垂直位移分量110之解析度是否為整數像素解析度。若旗標指示水平位移分量112及垂直位移分量110之解析度非為整數像素解析度,則視訊解碼器30可推斷解析度為子像素解析度。在一些實例中,可針對視訊資料之每一切片或其他單元來傳輸一或多個語法元素(其未必為旗標)以指示水平位移分量112及/或垂直位移分量110之集體或個別解析度。
在再其他實例中,代替旗標或語法元素的做法係,視訊編碼器20可基於解析度上下文資訊來設定水平位移分量112及/或垂直位移分 量110之解析度,且視訊解碼器30可自解析度上下文資訊來推斷水平位移分量112及/或垂直位移分量110之解析度。作為實例,對於包括當前視訊區塊102之圖像或圖像序列而言,解析度上下文資訊可包括色空間(例如,YUV、RGB或其類似者)、特定色彩格式(例如,4:4:4、4:2:2、4:2:0或其類似者)、圖框大小、圖框速率或量化參數(QP)。在至少一些實例中,視訊寫碼器可基於與先前寫碼之圖框或圖像有關的資訊來判定水平位移分量112及/或垂直位移分量110之解析度。以此方式,水平位移分量112之解析度及垂直位移分量110之解析度可加以預定義、發信,可自其他輔助資訊(例如,解析度上下文資訊)加以推斷,或可基於業已寫碼之圖框。
當前視訊區塊102可為CU或CU之PU。在一些實例中,視訊寫碼器(例如,視訊編碼器20及/或視訊解碼器30)可將一根據IMC加以預測之CU分裂成諸多PU。在此等實例中,視訊寫碼器可針對該CU之PU中之每一者來判定各別(例如,不同)二維向量106。舉例而言,視訊寫碼器可將一2N×2N CU分裂成兩個2N×N PU、兩個N×2N PU或四個N×N PU。作為其他實例,視訊寫碼器可將一2N×2N CU分裂成((N/2)×N+(3N/2)×N)PU、((3N/2)×N+(N/2)×N)PU、(N×(N/2)+N×(3N/2))PU、(N×(3N/2)+N×(N/2))PU、四個(N/2)×2N PU或四個2N×(N/2)PU。在一些實例中,視訊寫碼器可使用2N×2N PU來預測2N×2N CU。
當前視訊區塊102包括亮度視訊區塊(例如,亮度分量)及對應於該亮度視訊區塊之色度視訊區塊(例如,色度分量)。在一些實例中,視訊編碼器20可僅將定義亮度視訊區塊之二維向量106的一或多個語法元素編碼至經編碼視訊位元串流中。在此等實例中,視訊解碼器30可基於針對亮度區塊所發信之二維向量來導出對應於該亮度區塊之一或多個色度區塊中之每一者的二維向量106。在本發明中所描述之技 術中,在該一或多個色度區塊之二維向量的導出中,若亮度區塊之二維向量指向色度樣本內之子像素位置,則視訊解碼器30可修改亮度區塊之二維向量。
取決於色彩格式(例如,色彩取樣格式或色度取樣格式),視訊寫碼器可相對於亮度視訊區塊來向下取樣對應之色度視訊區塊。色彩格式4:4:4不包括向下取樣,其意謂色度區塊在水平方向及垂直方向上包括與亮度區塊相同數目之樣本。色彩格式4:2:2在水平方向上被向下取樣,其意謂在水平方向上色度區塊中之樣本相對於亮度區塊而少一半。色彩格式4:2:0在水平方向及垂直方向上被向下取樣,其意謂在水平方向及垂直方向上色度區塊中之樣本相對於亮度區塊而少一半。
在其中視訊寫碼器基於對應之亮度區塊之向量106來判定色度視訊區塊之向量106的實例中,視訊寫碼器可能需要修改亮度向量。舉例而言,若亮度向量106具有整數解析度(其中水平位移分量112及/或垂直位移分量110為像素之奇數數目且色彩格式為4:2:2或4:2:0),則經轉換之亮度向量可能不指向對應之色度區塊中的整數像素位置。在此等實例中,視訊寫碼器可縮放亮度向量以供用作一用以預測對應之色度區塊的色度向量。
圖5展示正以IMC模式寫碼之當前CU。可自搜尋區域獲得一用於當前CU之預測性區塊。搜尋區域包括來自與當前CU相同之圖框的業已寫碼區塊。假定(例如)正以光柵掃描次序(亦即,左-右及頂-底)寫碼圖框,該圖框之業已寫碼區塊對應於位於當前CU之左邊及上面的區塊,如圖5中所示。在一些實例中,搜尋區域可包括圖框中之所有業已寫碼區塊,而在其他實例中,搜尋區域可包括少於全部之業已寫碼區塊。圖5中之偏移向量(有時稱為運動向量或預測向量)識別當前CU之左上像素與預測性區塊(在圖5中被標記為預測信號)之左上像素之間的差。因此,當當前CU係以IMC模式寫碼時,藉由在經編碼視 訊位元串流中發信偏移向量,視訊解碼器可識別用於當前CU之預測性區塊。
根據本發明之技術之各種態樣,用於IMC之運動向量(稱為偏移向量)為2D向量(Vx,Vy),其中Vx指示水平方向(亦即,x方向)上之位移且Vy指示垂直方向(亦即,y方向)上之位移。可取決於CTU大小來編碼偏移向量分量Vi(i可為x或y)。舉例而言,Vi之碼長及/或二值化方法可針對不同CTU大小而不同。舉例而言,若CTU大小為64×64,則可使用6位元固定長度碼。其他方面,若CTU大小為32×32,則可使用5位元固定長度碼。
此外,偏移向量之寫碼亦可取決於搜尋區域面積。不同搜尋區域大小或形狀可導致用於偏移向量之不同寫碼方法。舉例而言,偏移向量之寫碼可取決於搜尋區域之長度及寬度中之一者或兩者。舉例而言,搜尋區域之大小可對應於當前區塊之像素與搜尋區域之頂邊界、搜尋區域之左邊界及/或搜尋區域之右邊界之間的距離。舉例而言,搜尋區域之大小可取決於在切片或圖框內之區塊位置。舉例而言,位於圖框左上處之區塊可具有小於位於圖框右下處之區塊的搜尋區域。
另外,以上相依性可延伸至僅一個偏移向量分量(亦即,僅x分量或僅y分量)或延伸至兩個偏移向量分量。又,兩個分量可具有不同二值化。例如,水平MV可具有6位元固定長度碼,而垂直MV可具有5位元固定長度碼,因為搜尋區含有左CTU,但可能不前往上面之CTU(以便需要用於上面資料之線緩衝器)。
根據本發明之技術之其他態樣,偏移向量分量Vi(i可為x或y)之解析度可為整數像素解析度或子像素解析度。當子像素解析度被用於某一色彩分量(例如,Y/U/V、R/G/B)之偏移向量時,使用內插濾波器以在子像素位置處產生值。
根據該等技術之此等態樣,對於任何色彩分量而言(例如,對於 亮度或色度區塊而言),當對應之偏移向量的解析度為子像素時,可將該等偏移向量之解析度轉換至整數像素位置或較不精確之子像素位置。在整數像素位置之狀況下,可無需內插濾波器,而在較不精確之子像素位置的狀況下,可使用較簡單之內插濾波器(例如,與針對較高精度之子像素位置所需之內插濾波器相比而較簡單)。根據本發明,整數像素位置為精度小於半像素位置之位置。半像素位置為精度小於四分之一像素位置之位置,等等。
舉例而言,在4:2:0狀況下,當亮度MV(亦即,亮度偏移向量)為奇數數目(例如,x及/或y分量為奇數數目)時,那麼色度MV(亦即,色度偏移向量)具有子像素精度且需要內插濾波器。然而,在本發明中所描述之技術中,色度MV(亦即,色度偏移向量)將被捨位至整數位置以避免使用內插濾波器。偏移向量可經升值捨位或降值捨位。換言之,視訊編碼器20可將當前區塊之亮度區塊的偏移向量發信至視訊解碼器30。視訊解碼器30可判定將此偏移向量(曾經被縮放或其他方面)用作當前區塊之色度區塊的偏移向量是否將導致該偏移向量指向包括當前區塊之當前圖像之色度樣本內的子像素位置。若該偏移向量指向色度樣本內之子像素位置,則視訊解碼器30可修改該偏移向量以產生一指向色度樣本中之整數像素位置或色度樣本中之精度低於子像素位置之位置的經修改偏移向量。此方法在提供類似效能時可能需要較少記憶體頻寬及較少數目之操作(無濾波)。
根據本發明之技術之各種態樣,用於IMC之最大CU大小可不同於CTU大小。例如,當CTU大小為64×64時,可將用於IMC之最大CU大小可被設定至16×16。在一些實例中,此限制可適用於視訊編碼器20與視訊解碼器30兩者,或僅適用於視訊編碼器20。
當將此種技術應用於視訊編碼器20與視訊解碼器30兩者時,用於IMC之最大CU大小可取決於CTU大小或自先前圖框收集之統計。此 外,可在各種層級處(諸如,圖像參數集(PPS)、序列參數集(SPS)、LCU標頭或在某一其他層級處)在位元串流中發信最大CU大小資訊。當將此技術應用於視訊編碼器20與視訊解碼器30兩者時,可將大於所限制之CU大小的CU預設地設定至非內部MC CU,且可能不需要額外發信。
圖6為說明可實施本發明中所描述之技術之實例視訊編碼器20的方塊圖。視訊編碼器20可經組態以將視訊輸出至後處理實體27。後處理實體27意欲表示一可處理來自視訊編碼器20之經編碼視訊資料的視訊實體之實例(諸如,MANE或編接/編輯器件)。在一些例子中,後處理實體27可為網路實體之實例。在一些視訊編碼系統中,後處理實體27及視訊編碼器20可為分開之器件之部分,而在其他例子中,可藉由包含視訊編碼器20之同一實體來執行關於後處理實體27所描述之功能性。在一些實例中,後處理實體27為圖1之儲存器件17之實例。
視訊編碼器20可執行視訊切片內之視訊區塊的框內寫碼、框間寫碼及IMC寫碼。框內寫碼依賴於空間預測以減小或移除給定視訊圖框或圖像內之視訊中的空間冗餘。框間寫碼依賴於時間預測以減小或移除視訊序列之鄰近圖框或圖像內之視訊中的時間冗餘。框內模式(I模式)可指代若干基於空間之壓縮模式中的任一者。框間模式(諸如,單向預測(P模式)或雙向預測(B模式))可指代若干基於時間之壓縮模式中的任一者。如上文所描述,IMC寫碼模式可自視訊資料圖框移除空間冗餘,但不同於傳統之框內模式,IMC寫碼模式可用以在圖框內之較大搜尋區中定位預測性區塊且參考具有偏移向量之預測性區塊,而非依賴於框內預測寫碼模式。
在圖6之實例中,視訊編碼器20包括視訊資料記憶體33、分割單元35、預測處理單元41、濾波單元63、解碼圖像緩衝器64、求和器50、變換處理單元52、量化單元54及熵編碼單元56。預測處理單元41 包括運動估計單元42、運動補償單元44及框內預測處理單元46。為達成視訊區塊重建構,視訊編碼器20亦包括反量化單元58、反變換處理單元60及求和器62。濾波器單元63意欲表示一或多個迴路濾波器(諸如,解區塊濾波器、自適應性迴路濾波器(ALF)及樣本自適應性偏移(SAO)濾波器)。雖然圖6中將濾波器單元63展示為迴路中濾波器,但在其他組態中,可將濾波器單元63實施為迴路後濾波器。
視訊資料記憶體33可儲存待由視訊編碼器20之組件編碼的視訊資料。舉例而言,可自視訊源18獲得儲存於視訊資料記憶體33中之視訊資料。解碼圖像緩衝器64可為一儲存供由視訊編碼器20用於編碼視訊資料(例如,在框內寫碼模式、框間寫碼模式或IMC寫碼模式中)之參考視訊資料的參考圖像記憶體。視訊資料記憶體33及解碼圖像緩衝器64可藉由多種記憶體器件中之任一者形成,諸如動態隨機存取記憶體(DRAM)(包括同步DRAM(SDRAM))、磁阻RAM(MRAM)、電阻式RAM(RRAM)或其他類型之記憶體器件。可由同一記憶體器件或分開之記憶體器件來提供視訊資料記憶體33及解碼圖像緩衝器64。在各種實例中,視訊資料記憶體33可與視訊編碼器20之其他組件一起在晶片上,或相對於彼等組件而在晶片外。
如圖6中所示,視訊編碼器20接收視訊資料且將視訊資料儲存於視訊資料記憶體33中。分割單元35將資料分割成視訊區塊。此分割亦可包括分割成切片、圖案塊或其他較大單元以及視訊區塊分割(例如,根據LCU及CU之四分樹結構)。視訊編碼器20大體說明編碼在一待編碼之視訊切片內之視訊區塊的組件。該切片可劃分成多個視訊區塊(及可能地劃分成被稱為圖案塊之視訊區塊集合)。預測處理單元41可基於錯誤結果(例如,寫碼速率及失真水平)而針對當前視訊區塊來選擇複數個可能寫碼模式中之一者(諸如,複數個框內寫碼模式中之一者、複數個框間寫碼模式中之一者或複數個IMC寫碼模式中之一 者)。預測處理單元41可將所得框內寫碼區塊、框間寫碼區塊或IMC寫碼區塊提供至求和器50以產生殘餘區塊資料及提供至求和器62以重建構供用作參考圖像之經編碼區塊。
預測處理單元41內之框內預測處理單元46可相對於在與待寫碼之當前區塊相同之圖框或切片中的一或多個相鄰區塊來執行當前視訊區塊之框內預測性寫碼以提供空間壓縮。預測處理單元41內之運動估計單元42及運動補償單元44可相對於在一或多個參考圖像中之一或多個預測性區塊來執行當前視訊區塊之框間預測性寫碼以提供時間壓縮。預測處理單元41內之運動估計單元42及運動補償單元44亦可相對於在同一圖像中之一或多個預測性區塊來執行當前視訊區塊之IMC寫碼以提供空間壓縮。
運動估計單元42可經組態以根據視訊序列之預定型樣來判定用於視訊切片之框間預測模式或IMC模式。預定型樣可將序列中之視訊切片指定為P切片、B切片或GPB切片。運動估計單元42及運動補償單元44可高度整合,但為概念目的而分開地予以說明。由運動估計單元42執行之運動估計為產生運動向量之過程,運動向量估計視訊區塊之運動。運動向量(例如)可指示當前視訊圖框或圖像內之視訊區塊之PU相對於參考圖像內之預測性區塊的位移。在IMC寫碼之狀況下,運動向量(其可在IMC中稱為偏移向量)可指示當前視訊圖框或圖像內之視訊區塊之PU相對於當前視訊圖框內之預測性區塊的位移。
預測性區塊為被發現與待寫碼之區塊之PU在像素差方面緊密匹配的區塊,可藉由絕對差總和(SAD)、平方差總和(SSD)或其他差量度來判定像素差。在一些實例中,視訊編碼器20可計算儲存於解碼圖像緩衝器64中之參考圖像之子整數像素位置的值。舉例而言,視訊編碼器20可內插參考圖像之四分之一像素位置、八分之一像素位置或其他分率像素位置的值。因此,運動估計單元42可關於全像素位置及分 率像素位置來執行運動搜尋且輸出具有分率像素精度之運動向量。
運動估計單元42藉由比較PU之位置與參考圖像之預測性區塊之位置來計算框間寫碼切片中之視訊區塊之PU的運動向量。可自第一參考圖像清單(清單0)或第二參考圖像清單(清單1)選擇參考圖像,該等清單中之每一者識別儲存於解碼圖像緩衝器64中之一或多個參考圖像。運動估計單元42將所計算之運動向量發送至熵編碼單元56及運動補償單元44。
根據本發明之一些技術,當使用IMC模式來寫碼視訊區塊時,運動估計單元42可判定該視訊區塊之亮度分量的運動向量或偏移向量,且基於該亮度分量之偏移向量來判定該視訊區塊之色度分量的偏移向量。在另一實例中,當使用IMC模式來寫碼視訊區塊時,運動估計單元42可判定該視訊區塊之色度分量的運動向量或偏移向量,且基於該色度分量之偏移向量來判定該視訊區塊之亮度分量的偏移向量。因此,視訊編碼器20可在位元串流中僅發信一個偏移向量,可自該一個偏移向量來判定視訊區塊之色度分量與亮度分量兩者的偏移向量。
由運動補償單元44執行之運動補償可涉及基於藉由運動估計判定之運動向量來提取或產生預測性區塊,從而可能執行至子像素精度之內插。內插濾波可自已知之像素樣本產生額外像素樣本,因此潛在地增加可用以寫碼視訊區塊之候選預測性區塊的數目。在接收到當前視訊區塊之PU的運動向量後,運動補償單元44即可在參考圖像清單中之一者中或在IMC寫碼之狀況下在正寫碼之圖像內定位該運動向量所指向之預測性區塊。視訊編碼器20藉由自正寫碼之當前視訊區塊的像素值減去預測性區塊之像素值來形成殘餘視訊區塊,從而形成像素差值。像素差值形成區塊之殘餘資料,且可包括亮度差分量與色度差分量兩者。求和器50表示執行此減法運算之(多個)組件。運動補償單元44亦可產生與視訊區塊及視訊切片相關聯的語法元素以供由視訊解 碼器30用於解碼視訊切片之視訊區塊。
框內預測處理單元46可框內預測當前區塊,以作為由運動估計單元42及運動補償單元44執行之框間預測及IMC的替代例,如上文所描述。詳言之,框內預測處理單元46可判定待用以編碼當前區塊之框內預測模式。在一些實例中,框內預測處理單元46可(例如)在分開之編碼遍次期間使用各種框內預測模式來編碼當前區塊,且框內預測處理單元46(或在一些實例中,模式選擇單元40)可自所測試之模式選擇待使用之適當框內預測模式。舉例而言,框內預測處理單元46可使用針對各種所測試之框內預測模式的速率-失真分析來計算速率-失真值,且在所測試之模式之中選擇具有最佳速率-失真特性之框內預測模式。速率-失真分析大體判定經編碼區塊與經編碼以產生經編碼區塊之原始的未經編碼區塊之間的失真(或誤差)之量,以及用以產生經編碼區塊之位元率(亦即,位元數目)。框內預測處理單元46可自各種經編碼區塊之失真及速率來計算比率以判定哪一框內預測模式展現區塊之最佳速率-失真值。
在任何狀況下,在選擇用於一區塊之框內預測模式之後,框內預測處理單元46可將指示用於該區塊之所選框內預測模式的資訊提供至熵編碼單元56。熵編碼單元56可根據本發明之技術來熵編碼指示所選框內預測模式之資訊。視訊編碼器20可在所傳輸之位元串流中包括以下各者:組態資料,其可包括複數個框內預測模式索引表及複數個經修改之框內預測模式索引表(亦稱為碼字映射表);各種區塊之編碼上下文的定義;及待用於該等上下文中之每一者的最有可能之框內預測模式、框內預測模式索引表及經修改之框內預測模式索引表的指示。
在預測處理單元41經由框間預測、框內預測或IMC來產生用於當前視訊區塊之預測性區塊之後,視訊編碼器20藉由自當前視訊區塊減 去預測性區塊來形成殘餘視訊區塊。殘餘區塊中之殘餘視訊資料可包括於一或多個TU中且應用至變換處理單元52。變換處理單元52使用變換(諸如,離散餘弦變換(DCT)或概念上類似之變換)來將殘餘視訊資料變換成殘餘變換係數。變換處理單元52可將殘餘視訊資料自像素域轉換至變換域(諸如,頻域)。
變換處理單元52可將所得之變換係數發送至量化單元54。量化單元54量化該等變換係數以進一步減小位元率。該量化過程可減小與該等係數中之一些或所有相關聯的位元深度。可藉由調整量化參數來修改量化程度。在一些實例中,量化單元54可接著執行對包括經量化之變換係數之矩陣的掃描。替代地,熵編碼單元56可執行該掃描。
在量化之後,熵編碼單元56熵編碼經量化之變換係數。舉例而言,熵編碼單元56可執行上下文自適應性可變長度寫碼(CAVLC)、上下文自使用性二進位算術寫碼(CABAC)、基於語法之上下文自適應性二進位算術寫碼(SBAC)、機率間隔分割熵(PIPE)寫碼或另一熵編碼方法或技術。在由熵編碼單元56進行熵編碼之後,可將經編碼位元串流傳輸至視訊解碼器30,或存檔以供稍後傳輸或由視訊解碼器30擷取。熵編碼單元56亦可熵編碼正寫碼之當前視訊切片的運動向量及其他語法元素。
反量化單元58及反變換處理單元60分別應用反量化及反變換,以在像素域中重建構殘餘區塊供稍後用作參考圖像之參考區塊。運動補償單元44可藉由將殘餘區塊與在參考圖像清單中之一者內的參考圖像中之一者之預測性區塊相加來計算參考區塊。運動補償單元44亦可將一或多個內插濾波器應用於經重建構之殘餘區塊,以計算供用於運動估計中之子整數像素值。內插濾波可自已知之像素樣本產生額外像素樣本,因此潛在地增加可用以寫碼視訊區塊之候選預測性區塊的數目。求和器62將經重建構之殘餘區塊與由運動補償單元44產生的經運 動補償之預測區塊相加以產生供儲存於解碼圖像緩衝器64中之參考區塊。可由運動估計單元42及運動補償單元44將該參考區塊用作參考區塊以框間預測一隨後視訊圖框或圖像中之區塊。
以此方式,圖6之視訊編碼器20表示經組態以執行以下步驟之視訊編碼器之實例:使用IMC模式來寫碼視訊資料之當前區塊;針對視訊資料之當前區塊來判定用以發信偏移向量之分量的碼字之長度;及基於該碼字之長度來寫碼該偏移向量。舉例而言,視訊編碼器20可基於一用以針對視訊資料之當前區塊執行IMC的搜尋區域之大小及/或基於包括當前區塊之CTU之大小來判定用以發信該分量之碼字之長度。
視訊編碼器20亦表示經組態以執行以下步驟之視訊編碼器之實例:使用IMC模式來寫碼視訊資料之當前區塊;針對視訊資料之當前區塊來判定當前區塊之亮度分量的偏移向量;及回應於該偏移向量指向包括當前區塊之當前圖像之色度樣本內的子像素位置來修改該偏移向量以產生當前區塊之色度區塊的經修改偏移向量。舉例而言,經修改偏移向量可指向色度樣本中之整數像素位置或指向色度樣本中之一為精度低於子像素位置之位置的像素位置。
視訊編碼器20亦表示經組態以執行以下步驟之視訊編碼器之實例:針對視訊資料之當前區塊來判定最大CTU大小且針對視訊資料之當前區塊來判定用於IMC模式之最大CU大小,使得用於IMC模式之最大CU大小係小於最大CTU大小;及基於用於IMC模式之最大CU大小來寫碼視訊資料之當前區塊。在一些實施中,視訊編碼器20可將用於IMC模式之最大CU大小的指示發信至視訊解碼器,而在其他組態中,視訊編碼器20可不將用於IMC模式之最大CU大小的指示發信至視訊解碼器。
視訊編碼器20亦表示經組態以執行以下步驟之視訊編碼器之實 例:使用IMC模式來寫碼視訊資料之當前區塊;基於當前區塊之大小、當前區塊之位置及包含當前區塊之寫碼樹型單元(CTU)之大小中的一或多者而針對視訊資料之當前區塊來判定用於寫碼偏移向量之寫碼方法;及基於該寫碼方法來寫碼該偏移向量。舉例而言,該寫碼方法可為固定長度寫碼、可變長度寫碼、算術寫碼、基於上下文之寫碼或用於寫碼視訊資料之任何其他類型之寫碼方法中的任一者。當前區塊之位置可指代在CTU內之位置或可指代當前區塊在視訊資料圖框內之位置。
圖7為說明可實施本發明中所描述之技術之實例視訊解碼器30的方塊圖。在圖7之實例中,視訊解碼器30包括視訊資料記憶體78、熵解碼單元80、預測處理單元81、反量化單元86、反變換處理單元88、求和器90、濾波器單元91及解碼圖像緩衝器92。預測處理單元81包括運動補償單元82及框內預測處理單元84。在一些實例中,視訊解碼器30可執行大體與關於來自圖6之視訊編碼器20所描述之編碼遍次互反的解碼遍次。
在解碼過程期間,視訊解碼器30自視訊編碼器20接收視訊資料(例如,一表示經編碼視訊切片之視訊區塊及關聯之語法元素的經編碼視訊位元串流)。視訊解碼器30可自網路實體29接收視訊資料且將該視訊資料儲存於視訊資料記憶體78中。視訊資料記憶體78可儲存待由視訊解碼器30之組件解碼的視訊資料(諸如,經編碼視訊位元串流)。舉例而言,可經由視訊資料之有線或無線網路通信而自儲存器件17(例如,自諸如攝影機之局部視訊源)或藉由存取實體資料儲存媒體來獲得儲存於視訊資料記憶體78中之視訊資料。視訊資料記憶體78可形成一儲存來自經編碼視訊位元串流之經編碼視訊資料的寫碼圖像緩衝器。因此,雖然在圖7中加以分開地展示,但可藉由同一記憶體器件或分開之記憶體器件來提供視訊資料記憶體78及解碼圖像緩衝器 92。視訊資料記憶體78及解碼圖像緩衝器92可藉由多種記憶體器件中之任一者形成,諸如動態隨機存取記憶體(DRAM)(包括同步DRAM(SDRAM))、磁阻RAM(MRAM)、電阻性RAM(RRAM)或其他類型之記憶體器件。在各種實例中,視訊資料記憶體78可與視訊解碼器30之其他組件一起在晶片上,或相對於彼等組件而在晶片外。
舉例而言,網路實體29可為經組態以實施上文所描述之技術中之一或多者的伺服器、MANE、視訊編輯器/編接器或其他此器件。網路實體29可包括或可不包括視訊編碼器(諸如,視訊編碼器20)。可在網路實體29將經編碼視訊位元串流傳輸至視訊解碼器30之前藉由網路實體29來實施本發明中所描述之一些技術。在一些視訊解碼系統中,網路實體29及視訊解碼器30可為分開之器件之部分,而在其他例子中,可藉由包含視訊解碼器30之同一器件來執行關於網路實體29所描述之功能性。在一些狀況下,網路實體29可為圖1之儲存器件17之實例。
視訊解碼器30之熵解碼單元80熵解碼位元串流以產生經量化之係數、運動向量及其他語法元素。熵解碼單元80將運動向量及其他語法元素轉遞至預測處理單元81。視訊解碼器30可在視訊切片層級及/或視訊區塊層級處接收語法元素。
當視訊切片經寫碼為框內寫碼(I)切片時,預測處理單元81之框內預測處理單元84可基於所發信之框內預測模式及來自當前圖框或圖像之先前解碼區塊的資料而產生當前視訊切片之視訊區塊的預測資料。當視訊圖框經寫碼為框間寫碼(亦即,B、P或GPB)切片時或當區塊經IMC寫碼時,預測處理單元81之運動補償單元82基於自熵解碼單元80接收之運動向量及其他語法元素來產生用於當前視訊切片之視訊區塊的預測性區塊。為達成框間預測,可自參考圖像清單中之一者內的參考圖像中之一者來產生該等預測性區塊。視訊解碼器30可基於儲 存於解碼圖像緩衝器92中之參考圖像使用預設建構技術來建構參考圖框清單(清單0及清單1)。為達成IMC寫碼,可自與正預測之區塊相同的圖像來產生預測性區塊。
運動補償單元82藉由剖析運動向量及其他語法元素來判定當前視訊切片之視訊區塊的預測資訊,且使用該預測資訊來產生用於正經解碼之當前視訊區塊的預測性區塊。舉例而言,運動補償單元82使用一些所接收之語法元素來判定用以寫碼視訊切片之視訊區塊的預測模式(例如,框內預測或框間預測)、框間預測切片類型(例如,B切片、P切片或GPB切片)、切片之參考圖像列表中之一或多者的建構資訊、切片之每一框間編碼視訊區塊的運動向量、切片之每一框間寫碼視訊區塊的框間預測狀態,及用以解碼當前視訊切片中之視訊區塊的其他資訊。
運動補償單元82亦可基於內插濾波器執行內插。運動補償單元82可使用如由視訊編碼器20在視訊區塊之編碼期間使用的內插濾波器,以計算參考區塊之子整數像素的內插值。在此狀況下,運動補償單元82可自接收之語法元素來判定由視訊編碼器20使用之內插濾波器且使用該等內插濾波器來產生預測性區塊。
根據本發明之一些技術,當使用IMC模式來寫碼視訊區塊時,運動補償單元82可判定該視訊區塊之亮度分量的運動向量或偏移向量,且基於該亮度分量之運動向量來判定該視訊區塊之色度分量的運動向量。在另一實例中,當使用IMC模式來寫碼視訊區塊時,運動補償單元82可判定該視訊區塊之色度分量的運動向量或偏移向量,且基於該色度分量之運動向量來判定該視訊區塊之亮度分量的運動向量。因此,視訊解碼器30可在位元串流中僅接收一個偏移向量,可自該一個偏移向量來判定視訊區塊之色度分量與亮度分量兩者之偏移向量。
當使用IMC模式來解碼視訊區塊時,舉例而言,運動補償單元82 可修改亮度分量之運動向量(稱為IMC模式之偏移向量)以判定色度分量之偏移向量。舉例而言,運動補償單元82可基於視訊區塊之取樣格式及基於偏移向量所指向之子像素位置的精度來修改亮度區塊之偏移向量之x分量及y分量中的一者或兩者。舉例而言,若視訊區塊係使用4:2:2取樣格式寫碼,則運動補償單元82可僅修改亮度偏移向量之x分量而非y分量以判定色度分量之偏移向量。如可自圖4所見,在4:2:2取樣格式中,色度區塊及亮度區塊在垂直方向上具有相同數目之樣本,因此使對y分量之修改變得潛在地不需要。運動補償單元82可僅在當亮度偏移向量被用於定位色度預測性區塊時的情況下才修改該亮度偏移向量,該亮度偏移向量指向無色度樣本之位置(例如,在包括當前區塊之當前圖像之色度樣本中的子像素位置處)。若亮度偏移向量在被用以定位色度預測性區塊時指向其中存在色度樣本之位置,則運動補償單元82可不修改該亮度偏移向量。
在另一實例中,若視訊區塊係使用4:2:0取樣格式寫碼,則運動補償單元82可修改亮度偏移向量之x分量及y分量中之任一者或兩者以判定色度分量之偏移向量。如可自圖3所見,在4:2:0取樣格式中,色度區塊及亮度區塊在垂直方向與水平方向兩者上具有不同數目之樣本。運動補償單元82可僅在當亮度偏移向量被用於定位色度預測性區塊時的情況下才修改該亮度偏移向量,該亮度偏移向量指向無色度樣本之位置(例如,在包括當前區塊之當前圖像之色度樣本中的子像素位置處)。若亮度偏移向量在被用以定位色度預測性區塊時指向其中存在色度樣本之位置,則運動補償單元82可不修改該亮度偏移向量。
運動補償單元82可修改亮度偏移向量以產生經修改運動向量(亦稱為經修改偏移向量)。運動補償單元82可修改亮度偏移向量,該亮度偏移向量在被用以定位色度預測性區塊時指向子像素位置使得用於色度區塊之經修改偏移向量指向較低解析度之子像素位置或指向整數 像素位置。作為一個實例,指向1/8像素位置之亮度偏移向量可經修改以指向1/4像素位置,指向1/4像素位置之亮度偏移向量可經修改以指向1/2像素位置等。在其他實例中,運動補償單元82可修改亮度偏移向量使得經修改偏移向量總是指向整數像素位置以用於定位色度參考區塊。修改亮度偏移向量以指向較低解析度之子像素位置或指向整數像素位置可消除需要某種內插濾波及/或降低任何所需之內插濾波的複雜度。
參看圖3及圖4且假定左上樣本被定位於位置(0,0)處,視訊區塊具有位於奇數與偶數x兩種位置及奇數與偶數y兩種位置處的亮度樣本。在4:4:4取樣格式中,視訊區塊亦具有位於奇數與偶數x兩種位置及奇數與偶數y兩種位置處的色度樣本。因此,對於4:4:4取樣格式而言,運動補償單元可將同一偏移向量用於定位亮度預測性區塊與色度預測性區塊兩者。對於4:2:2取樣格式而言,如圖4中所示,視訊區塊具有位於奇數與偶數y兩種位置處但僅位於偶數x位置處的色度樣本。因此,對於4:2:2取樣格式而言,若亮度偏移向量指向奇數x位置,則運動補償單元82可修改該亮度偏移向量之x分量以產生一指向偶數x位置之經修改偏移向量使得可將該經修改偏移向量用於定位當前區塊之色度區塊的參考色度區塊而無需內插。舉例而言,運動補償單元82可藉由升值捨位抑或降值捨位至最近之偶數x位置來修改x分量(亦即,改變x分量使得其指向最近之左x位置抑或最近之右x位置)。若亮度偏移向量業已指向偶數x位置,則不必進行修改。
對於4:2:0取樣格式而言,如圖3中所示,視訊區塊具有僅位於偶數y位置處及僅位於偶數x位置處的色度樣本。因此,對於4:2:0取樣格式而言,若亮度偏移向量指向奇數x位置或奇數y位置,則運動補償單元82可修改該亮度偏移向量之x分量或y分量以產生一指向偶數x位置之經修改偏移向量使得可將該經修改偏移向量用於定位當前區塊之色 度區塊的參考色度區塊而無需內插。舉例而言,運動補償單元82可藉由升值捨位抑或降值捨位至最近之偶數x位置來修改x分量(亦即,改變x分量使得其指向最近之左x位置抑或最近之右x位置)。舉例而言,運動補償單元82可藉由升值捨位抑或降值捨位至最近之偶數y位置來修改y分量(亦即,改變y分量使得其指向最近之上y位置抑或最近之下y位置)。若亮度偏移向量業已指向偶數x位置及偶數y位置,則不必進行修改。
反量化單元86將位元串流中所提供且由熵解碼單元80解碼的經量化之變換係數反量化(亦即,解量化)。反量化過程可包括針對視訊切片中之每一視訊區塊而使用由視訊編碼器20計算之量化參數,以判定量化程度及(同樣)應應用之反量化的程度。反變換處理單元88將反變換(例如,反DCT、反整數變換或概念上類似之反變換過程)應用於變換係數以便在像素域中產生殘餘區塊。
在運動補償單元82基於運動向量及其他語法元素而產生用於當前視訊區塊之預測性區塊之後,視訊解碼器30藉由對來自反變換處理單元88之殘餘區塊與由運動補償單元82產生之對應預測性區塊求和而形成經解碼視訊區塊。求和器90表示執行此加法運算之(多個)組件。若想要,亦可使用迴路濾波器(在寫碼迴路中抑或在寫碼迴路之後)來使像素轉變平滑,或在其他方面改良視訊品質。濾波器單元91意欲表示一或多個迴路濾波器(諸如,解區塊濾波器、自適應性迴路濾波器(ALF)及樣本自適應性偏移(SAO)濾波器)。雖然圖7中將濾波器單元91展示為迴路中濾波器,但在其他組態中,可將濾波器單元91實施為迴路後濾波器。一給定圖框或圖像中之經解碼視訊區塊接著被儲存於解碼圖像緩衝器92中,該解碼圖像緩衝器儲存用於隨後之運動補償的參考圖像。解碼圖像緩衝器92可為亦儲存供稍後呈現於顯示器件(諸如,圖1之顯示器件32)上之經解碼視訊的記憶體之部分,或可與此記 憶體分開。
以此方式,圖7之視訊解碼器30表示經組態以執行以下步驟之視訊解碼器之實例:使用IMC模式來寫碼視訊資料之當前區塊;針對視訊資料之當前區塊來判定用以發信偏移向量之分量的碼字之長度;及基於該碼字之長度來寫碼該偏移向量。舉例而言,視訊解碼器30可解碼當前區塊及接收碼字。舉例而言,偏移向量之分量可為x分量或y分量。根據本發明之技術之一個態樣,用於x分量之碼字之長度可不同於用於y分量之碼字之長度。
舉例而言,視訊解碼器30可藉由基於用以針對視訊資料之當前區塊執行IMC的搜尋區域之大小判定碼字之長度來判定用以發信偏移向量之分量的碼字之長度。舉例而言,搜尋區域之大小可包括:當前區塊之像素與搜尋區域之頂邊界之間的距離、當前區塊之像素與搜尋區域之左邊界之間的距離,及/或當前區塊之像素與搜尋區域之右邊界之間的距離。替代地或另外,視訊解碼器30可藉由以下步驟來判定用以發信偏移向量之分量的碼字之長度:基於包含當前區塊之寫碼樹型單元的大小來判定碼字之長度、基於當前區塊在CTU中之位置來判定碼字之長度、基於當前區塊在視訊資料圖框中之位置來判定碼字之長度,及/或基於當前區塊之大小來判定碼字之長度。
視訊解碼器30亦表示經組態以執行以下步驟之視訊解碼器之實例:使用IMC模式來寫碼視訊資料之當前區塊;針對視訊資料之當前區塊來判定偏移向量;及回應於該偏移向量指向子像素位置來修改該偏移向量以產生經修改偏移向量。舉例而言,該經修改偏移向量可指向整數像素位置或指向較低精度之子像素位置。
視訊解碼器30亦表示經組態以執行以下步驟之視訊解碼器之實例:針對視訊資料之當前區塊來判定最大CTU大小且針對視訊資料之當前區塊來判定用於IMC模式之最大CU大小,使得用於IMC模式之最 大CU大小係小於最大CTU大小。視訊解碼器30可基於用於IMC模式之最大CU大小來寫碼視訊資料之當前區塊。舉例而言,視訊解碼器30可經組態以回應於視訊資料之當前區塊的大小係大於用於IMC模式之最大CU大小而在IMC模式中不寫碼視訊資料之當前區塊及/或回應於視訊資料之當前區塊的大小係小於或等於用於IMC模式之最大CU大小而在IMC模式中寫碼視訊資料之當前區塊。舉例而言,視訊解碼器30可在視訊資料中接收一發信用於IMC模式之最大CU大小的語法元素。替代地,視訊解碼器30可基於業已寫碼之視訊資料的統計來判定用於IMC模式之最大CU大小。
視訊解碼器30亦表示經組態以執行以下步驟之視訊解碼器之實例:使用IMC模式來寫碼視訊資料之當前區塊;基於當前區塊之大小、當前區塊之位置及包含當前區塊之寫碼樹型單元(CTU)之大小中的一或多者而針對視訊資料之當前區塊來判定用於寫碼偏移向量之寫碼方法;及基於該寫碼方法來寫碼該偏移向量。舉例而言,該寫碼方法可為固定長度寫碼、可變長度寫碼、算術寫碼、基於上下文之寫碼或用於寫碼視訊資料之任何其他類型之寫碼方法中的任一者。當前區塊之位置可指代在CTU內之位置或可指代當前區塊在視訊資料圖框內之位置。
圖8為展示根據本發明之技術的一種寫碼(例如,編碼或解碼)視訊資料之方法之實例的流程圖。將參考一般視訊寫碼器來描述圖8之技術。舉例而言,雖然亦可藉由其他類型之視訊編碼器及解碼器來執行該等技術,但一般視訊寫碼器可對應於上文所描述之視訊編碼器20或視訊解碼器30。舉例而言,可藉由視訊解碼器來執行圖8之技術以作為產生供顯示之經解碼視訊的部分。舉例而言,可藉由視訊編碼器來執行圖8之技術以作為編碼視訊資料的部分。舉例而言,視訊編碼器可解碼經編碼視訊資料以產生供用於編碼其他圖框之參考圖框。
根據圖8之技術,視訊寫碼器判定一視訊圖框中之視訊資料之當前區塊係使用IMC模式寫碼(180)。舉例而言,當前區塊可以4:4:4取樣格式、4:2:0取樣格式或4:2:2取樣格式寫碼。舉例而言,視訊解碼器可藉由在經編碼位元串流中接收一指示當前區塊之寫碼模式的語法元素來判定當前區塊係使用IMC模式寫碼。舉例而言,視訊編碼器可判定當前區塊應使用IMC模式寫碼以作為測試多個模式以判定待用以編碼當前區塊之寫碼模式的部分。
根據圖8之實例,視訊寫碼器判定視訊資料之當前區塊之第一色彩分量的偏移向量(182)。舉例而言,視訊解碼器可基於在經編碼位元串流中所接收之語法元素來判定偏移向量,而視訊編碼器可判定該偏移向量以作為搜尋待用以編碼當前區塊之參考區塊的部分。舉例而言,第一色彩分量可為亮度分量抑或色度分量。視訊寫碼器在視訊圖框中使用該偏移向量來定位第一色彩分量之參考區塊(184)。
根據圖8之實例,視訊寫碼器回應於該偏移向量指向子像素位置來修改該偏移向量以產生經修改偏移向量(186)。視訊寫碼器可修改該偏移向量以指向整數像素位置或指向為精度低於子像素位置之位置的一位置。就此而言,修改偏移向量可包括並非僅僅縮放偏移向量。舉例而言,視訊寫碼器可縮放該偏移向量,且回應於經縮放偏移向量指向子像素位置,亦可捨位該偏移向量以指向較不精確之子像素位置或指向整數像素位置。回應於偏移向量指向色度參考區塊之子像素位置,視訊寫碼器可修改該偏移向量以產生指向色度參考區塊之整數像素位置的一經修改偏移向量。在當前區塊係使用4:2:2取樣格式寫碼之一些實例中,視訊寫碼器可藉由修改偏移向量之x分量來修改該偏移向量以產生經修改偏移向量。在當前區塊係使用4:2:0取樣格式寫碼之一些實例中,視訊寫碼器可藉由修改偏移向量之x分量、y分量或x分量與y分量兩者來修改該偏移向量以產生經修改偏移向量。
視訊寫碼器在視訊資料圖框中使用經修改偏移向量來定位第二色彩分量之參考區塊(188)。在一些實例中,視訊寫碼器可判定當前區塊之亮度分量的偏移向量,且使用經修改偏移向量來定位色度參考區塊。
視訊寫碼器可執行圖8之技術以作為寫碼視訊資料之當前區塊的部分。舉例而言,視訊編碼器可藉由產生供包括於視訊資料之經編碼位元串流中的識別偏移向量之一或多個語法元素來寫碼視訊資料之當前區塊。舉例而言,視訊解碼器可藉由基於第一色彩分量之參考區塊及第二色彩分量之參考區塊解碼當前區塊來寫碼當前區塊。
在一或多個實例中,所描述之功能可以硬體、軟體、韌體或其任何組合來實施。若以軟體中實施,則功能可作為一或多個指令或程式碼而儲存於電腦可讀媒體上或經由電腦可讀媒體而傳輸,且由基於硬體之處理單元執行。電腦可讀媒體可包括電腦可讀儲存媒體(其對應於諸如資料儲存媒體之有形媒體)或通信媒體,通信媒體包括(例如)根據通信協定促進電腦程式自一處傳送至另一處之任何媒體。以此方式,電腦可讀媒體大體可對應於(1)非暫時性的有形電腦可讀儲存媒體,或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或多個電腦或一或多個處理器存取以擷取指令、程式碼及/或資料結構以用於實施本發明中所描述之技術的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
藉由實例而非限制,此等電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器件、磁碟儲存器件或其他磁性儲存器件,快閃記憶體,或可用以儲存呈指令或資料結構之形式之所要程式碼且可藉由電腦存取的任何其他媒體。又,將任何連接適當地稱為電腦可讀媒體。舉例而言,若使用同軸電纜、光纜、雙絞線、數位用戶線(DSL)或無線技術(諸如,紅外線、無線電及微波)而 自網站、伺服器或其他遠端源傳輸指令,則同軸電纜、光纜、雙絞線、DSL或無線技術(諸如,紅外線、無線電及微波)包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、載波、信號或其他暫時性媒體,而是有關非暫時性有形儲存媒體。如本文中所使用,磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位影音光碟(DVD)、軟性磁碟及藍光光碟,其中磁碟通常以磁性方式再生資料,而光碟藉由雷射以光學方式再生資料。以上各物之組合亦應包括於電腦可讀媒體之範疇內。
可藉由諸如一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效積體或離散邏輯電路之一或多個處理器來執行指令。因此,如本文中所使用之術語「處理器」可指代上述結構或適於實施本文中所描述之技術的任何其他結構中之任一者。另外,在一些態樣中,可將本文中所描述之功能性提供於經組態用於編碼及解碼之專用硬體及/或軟體模組內,或併入於組合式編解碼器中。又,該等技術可完全實施於一或多個電路或邏輯元件中。
本發明之技術可以廣泛多種器件或裝置予以實施,該等器件或裝置包括無線手機、積體電路(IC)或IC集合(例如,晶片集)。在本發明中描述各種組件、模組或單元以強調經組態以執行所揭示技術之器件之功能態樣,但未必需要藉由不同硬體單元予以實現。相反地,如上文所描述,可將各種單元組合於編解碼器硬體單元中,或藉由互操作性硬體單元(包括如上文所描述之一或多個處理器)之集合而結合合適軟體及/或韌體來提供該等單元。
已描述各種實例。此等及其他實例係在以下申請專利範圍之範疇內。

Claims (55)

  1. 一種解碼視訊資料之方法,該方法包含:判定該視訊資料之一當前區塊係使用一內部運動補償(IMC)模式編碼,其中該當前區塊在一視訊圖框中;判定該視訊資料之該當前區塊之一第一色彩分量的一偏移向量;在該視訊圖框中使用該偏移向量來定位該第一色彩分量之一參考區塊;回應於該偏移向量指向視訊資料之該當前區塊之一第二色彩分量的一子像素位置來修改該偏移向量以產生一經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之一參考區塊;及基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊來解碼該當前區塊。
  2. 如請求項1之方法,其中該第一色彩分量包含該當前區塊之一亮度分量且該第二色彩分量包含該當前區塊之一色度分量。
  3. 如請求項1之方法,其中該經修改偏移向量指向一整數像素位置。
  4. 如請求項1之方法,其中該經修改偏移向量指向為精度低於該子像素位置之一位置的一像素位置。
  5. 如請求項1之方法,其中該當前區塊係使用一4:2:0取樣格式寫碼。
  6. 如請求項1之方法,其中該當前區塊係使用一4:2:2取樣格式寫碼。
  7. 如請求項1之方法,其中修改該偏移向量包含回應於該偏移向量指向一色度樣本陣列之一子像素位置來修改該偏移向量以產生指向該色度樣本陣列之一整數像素位置的一經修改偏移向量。
  8. 如請求項1之方法,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:2取樣格式寫碼,且其中修改該偏移向量以產生該經修改偏移向量包含修改該x分量。
  9. 如請求項1之方法,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:0取樣格式寫碼,且其中修改該偏移向量以產生該經修改偏移向量包含修改該y分量。
  10. 如請求項9之方法,其中修改該偏移向量以產生該經修改偏移向量進一步包含修改該x分量。
  11. 一種編碼視訊資料之方法,該方法包含:判定視訊資料之一當前區塊將使用一內部運動補償(IMC)模式編碼;判定該視訊資料之該當前區塊之一第一色彩分量的一偏移向量;在該視訊圖框中使用該偏移向量來定位該第一色彩分量之一參考區塊;回應於該偏移向量指向視訊資料之該當前區塊之一第二色彩分量的一子像素位置來修改該偏移向量以產生一經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之一參考區塊;及產生供包括於視訊資料之一經編碼位元串流中的識別該偏移向量之一或多個語法元素。
  12. 如請求項11之方法,其中該第一色彩分量包含該當前區塊之一亮度分量且該第二色彩分量包含該當前區塊之一色度分量。
  13. 如請求項11之方法,其中該經修改偏移向量指向一整數像素位置。
  14. 如請求項11之方法,其中該經修改偏移向量指向為精度低於該子像素位置之一位置的一像素位置。
  15. 如請求項11之方法,其中該當前區塊係使用一4:2:0取樣格式寫碼。
  16. 如請求項11之方法,其中該當前區塊係使用一4:2:2取樣格式寫碼。
  17. 如請求項11之方法,其中修改該偏移向量包含回應於該偏移向量指向一色度樣本陣列之一子像素位置來修改該偏移向量以產生指向該色度樣本陣列之一整數像素位置的一經修改偏移向量。
  18. 如請求項11之方法,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:2取樣格式寫碼,且其中修改該偏移向量以產生該經修改偏移向量包含修改該偏移向量之該x分量。
  19. 如請求項11之方法,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:0取樣格式寫碼,且其中修改該偏移向量以產生該經修改偏移向量包含修改該偏移向量之該y分量。
  20. 如請求項19之方法,其中修改該偏移向量以產生該經修改偏移向量進一步包含修改該偏移向量之該x分量。
  21. 一種執行視訊寫碼之裝置,該裝置包含:一記憶體,其儲存視訊資料;及 一視訊寫碼器,其包含一或多個處理器,該一或多個處理器經組態以:判定該視訊資料之一當前區塊係使用一內部運動補償(IMC)模式編碼,其中該當前區塊在一視訊圖框中;判定該視訊資料之該當前區塊之一第一色彩分量的一偏移向量;在該視訊圖框中使用該偏移向量來定位該第一色彩分量之一參考區塊;回應於該偏移向量指向視訊資料之該當前區塊之一第二色彩分量的一子像素位置來修改該偏移向量以產生一經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之一參考區塊;及基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊來寫碼該當前區塊。
  22. 如請求項21之裝置,其中該第一色彩分量包含該當前區塊之一亮度分量且該第二色彩分量包含該當前區塊之一色度分量。
  23. 如請求項21之裝置,其中該經修改偏移向量指向一整數像素位置。
  24. 如請求項21之裝置,其中該經修改偏移向量指向為精度低於該子像素位置之一位置的一像素位置。
  25. 如請求項21之裝置,其中該當前區塊係使用一4:2:0取樣格式寫碼。
  26. 如請求項21之裝置,其中該當前區塊係使用一4:2:2取樣格式寫碼。
  27. 如請求項21之裝置,其中該視訊寫碼器藉由回應於該偏移向量 指向一色度樣本陣列之一子像素位置來修改該偏移向量以產生指向該色度樣本陣列之一整數像素位置的一經修改偏移向量來修改該偏移向量。
  28. 如請求項21之裝置,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:2取樣格式寫碼,且其中該視訊寫碼器藉由修改該x分量來修改該偏移向量以產生該經修改偏移向量。
  29. 如請求項21之裝置,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:0取樣格式寫碼,且其中該視訊寫碼器藉由修改該y分量來修改該偏移向量以產生該經修改偏移向量。
  30. 如請求項29之裝置,其中修改該偏移向量以產生該經修改偏移向量進一步包含修改該x分量。
  31. 如請求項21之裝置,其中該視訊寫碼器包含一視訊解碼器,且其中該視訊寫碼器經進一步組態以藉由基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊解碼該當前區塊來基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊而寫碼該當前區塊。
  32. 如請求項21之裝置,其中該視訊寫碼器包含一視訊編碼器,且其中該視訊寫碼器經進一步組態以藉由產生供包括於視訊資料之一經編碼位元串流中的識別該偏移向量之一或多個語法元素來基於該參考區塊而寫碼該當前區塊。
  33. 如請求項29之裝置,其中該裝置包含以下各者中之至少一者:一積體電路;一微處理器;及一無線通信器件。
  34. 一種執行視訊寫碼之裝置,該裝置包含:用於判定該視訊資料之一當前區塊係使用一內部運動補償(IMC)模式編碼之構件,其中該當前區塊在一視訊圖框中;用於判定該視訊資料之該當前區塊之一第一色彩分量之一偏移向量之構件;用於在該視訊圖框中使用該偏移向量來定位該第一色彩分量之一參考區塊之構件;用於回應於該偏移向量指向視訊資料之該當前區塊之一第二色彩分量的一子像素位置來修改該偏移向量以產生一經修改偏移向量之構件;用於在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之一參考區塊之構件;及用於基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊來寫碼該當前區塊之構件。
  35. 如請求項34之裝置,其中該第一色彩分量包含該當前區塊之一亮度分量且該第二色彩分量包含該當前區塊之一色度分量。
  36. 如請求項34之裝置,其中該經修改偏移向量指向一整數像素位置。
  37. 如請求項34之裝置,其中該經修改偏移向量指向為精度低於該子像素位置之一位置的一像素位置。
  38. 如請求項34之裝置,其中該當前區塊係使用一4:2:0取樣格式寫碼。
  39. 如請求項34之裝置,其中該當前區塊係使用一4:2:2取樣格式寫碼。
  40. 如請求項34之裝置,其中用於修改該偏移向量之該構件包含用於回應於該偏移向量指向一色度樣本陣列之一子像素位置來修 改該偏移向量以產生指向該色度樣本陣列之一整數像素位置之一經修改偏移向量之構件。
  41. 如請求項34之裝置,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:2取樣格式寫碼,且其中修改該偏移向量以產生該經修改偏移向量包含修改該x分量。
  42. 如請求項34之裝置,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:0取樣格式寫碼,且其中用於修改該偏移向量以產生該經修改偏移向量之該構件包含用於修改該y分量之構件。
  43. 如請求項42之裝置,其中用於修改該偏移向量以產生該經修改偏移向量之該構件進一步包含用於修改該x分量之構件。
  44. 如請求項34之裝置,其中該裝置包含一視訊解碼器,且其中該視訊解碼器經進一步組態以藉由基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊解碼該當前區塊來基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊而寫碼該當前區塊。
  45. 如請求項34之裝置,其中該裝置包含一視訊編碼器,且其中該視訊編碼器經進一步組態以藉由產生供包括於視訊資料之一經編碼位元串流中的識別該偏移向量之一或多個語法元素來基於該參考區塊而寫碼該當前區塊。
  46. 一種儲存指令之電腦可讀媒體,該等指令在由一或多個處理器執行時使該一或多個處理器:判定該視訊資料之一當前區塊係使用一內部運動補償(IMC)模式編碼,其中該當前區塊在一視訊圖框中;判定該視訊資料之該當前區塊之一第一色彩分量的一偏移向量; 在該視訊圖框中使用該偏移向量來定位該第一色彩分量之一參考區塊;回應於該偏移向量指向視訊資料之該當前區塊之一第二色彩分量的一子像素位置來修改該偏移向量以產生一經修改偏移向量;在該視訊圖框中使用該經修改偏移向量來定位該第二色彩分量之一參考區塊;及基於該第一色彩分量之該參考區塊及該第二色彩分量之該參考區塊來寫碼該當前區塊。
  47. 如請求項46之電腦可讀儲存媒體,其中該第一色彩分量包含該當前區塊之一亮度分量且該第二色彩分量包含該當前區塊之一色度分量。
  48. 如請求項46之電腦可讀儲存媒體,其中該經修改偏移向量指向一整數像素位置。
  49. 如請求項46之電腦可讀儲存媒體,其中該經修改偏移向量指向為精度低於該子像素位置之一位置的一像素位置。
  50. 如請求項46之電腦可讀儲存媒體,其中該當前區塊係使用一4:2:0取樣格式寫碼。
  51. 如請求項46之電腦可讀儲存媒體,其中該當前區塊係使用一4:2:2取樣格式寫碼。
  52. 如請求項46之電腦可讀儲存媒體,其中該一或多個處理器藉由回應於該偏移向量指向一色度樣本陣列之一子像素位置來修改該偏移向量以產生指向該色度樣本陣列之一整數像素位置的一經修改偏移向量來修改該偏移向量。
  53. 如請求項46之電腦可讀儲存媒體,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:2取樣格式寫碼,且 其中該一或多個處理器藉由修改該x分量來修改該偏移向量以產生該經修改偏移向量。
  54. 如請求項53之電腦可讀儲存媒體,其中該偏移向量包含一x分量及一y分量,且其中該當前區塊係使用一4:2:0取樣格式寫碼,且其中該一或多個處理器藉由修改該y分量來修改該偏移向量以產生該經修改偏移向量。
  55. 如請求項54之電腦可讀儲存媒體,其中該一或多個處理器藉由修改該x分量來進一步修改該偏移向量以產生該經修改偏移向量。
TW103124046A 2013-07-12 2014-07-11 內部運動補償延伸 TW201517599A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361845832P 2013-07-12 2013-07-12
US201361846976P 2013-07-16 2013-07-16
US14/328,498 US20150016533A1 (en) 2013-07-12 2014-07-10 Intra motion compensation extensions

Publications (1)

Publication Number Publication Date
TW201517599A true TW201517599A (zh) 2015-05-01

Family

ID=52277087

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103124046A TW201517599A (zh) 2013-07-12 2014-07-11 內部運動補償延伸

Country Status (8)

Country Link
US (1) US20150016533A1 (zh)
EP (1) EP3020194A1 (zh)
JP (1) JP2016527789A (zh)
KR (1) KR20160031496A (zh)
CN (1) CN105359532A (zh)
CA (1) CA2913804A1 (zh)
TW (1) TW201517599A (zh)
WO (1) WO2015006692A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10015515B2 (en) 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
CA2925183C (en) 2013-10-14 2020-03-10 Microsoft Technology Licensing, Llc Features of base color index map mode for video and image coding and decoding
EP3058736B1 (en) 2013-10-14 2019-02-27 Microsoft Technology Licensing, LLC Encoder-side options for intra block copy prediction mode for video and image coding
KR102257269B1 (ko) 2013-10-14 2021-05-26 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 비디오 및 이미지 코딩 및 디코딩을 위한 인트라 블록 카피 예측 모드의 피쳐
JP6355744B2 (ja) 2014-01-03 2018-07-11 マイクロソフト テクノロジー ライセンシング,エルエルシー ビデオ及び画像符号化/デコーディングにおけるブロックベクトル予測
US9883197B2 (en) 2014-01-09 2018-01-30 Qualcomm Incorporated Intra prediction of chroma blocks using the same vector
US11284103B2 (en) 2014-01-17 2022-03-22 Microsoft Technology Licensing, Llc Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning
US10542274B2 (en) 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
US10432928B2 (en) 2014-03-21 2019-10-01 Qualcomm Incorporated Using a current picture as a reference for video coding
EP3158734A4 (en) 2014-06-19 2017-04-26 Microsoft Technology Licensing, LLC Unified intra block copy and inter prediction modes
CN105392008B (zh) * 2014-08-22 2018-09-25 中兴通讯股份有限公司 一种预测编、解码方法和相应的编、解码器和电子设备
CA2959682C (en) * 2014-09-30 2022-12-06 Microsoft Technology Licensing, Llc Rules for intra-picture prediction modes when wavefront parallel processing is enabled
KR102390073B1 (ko) * 2015-06-08 2022-04-25 브이아이디 스케일, 인크. 스크린 콘텐츠 코딩을 위한 인트라 블록 카피 모드
WO2016197314A1 (en) 2015-06-09 2016-12-15 Microsoft Technology Licensing, Llc Robust encoding/decoding of escape-coded pixels in palette mode
US10404992B2 (en) * 2015-07-27 2019-09-03 Qualcomm Incorporated Methods and systems of restricting bi-prediction in video coding
US10805635B1 (en) * 2016-03-22 2020-10-13 NGCodec Inc. Apparatus and method for coding tree unit bit size limit management
US10812791B2 (en) * 2016-09-16 2020-10-20 Qualcomm Incorporated Offset vector identification of temporal motion vector predictor
EP3301915A1 (en) * 2016-09-30 2018-04-04 Thomson Licensing Method and apparatus for omnidirectional video coding with adaptive intra most probable modes
US10897617B2 (en) * 2018-07-24 2021-01-19 Qualcomm Incorporated Rounding of motion vectors for adaptive motion vector difference resolution and increased motion vector storage precision in video coding
US11265579B2 (en) * 2018-08-01 2022-03-01 Comcast Cable Communications, Llc Systems, methods, and apparatuses for video processing
WO2020125628A1 (en) * 2018-12-17 2020-06-25 Beijing Bytedance Network Technology Co., Ltd. Shape dependent interpolation filter
CN113678453B (zh) 2019-04-12 2024-05-14 北京字节跳动网络技术有限公司 基于矩阵的帧内预测的上下文确定
JP2022535726A (ja) 2019-05-31 2022-08-10 北京字節跳動網絡技術有限公司 行列ベースイントラ予測における制約されたアップサンプリングプロセス
US11303909B2 (en) * 2019-09-18 2022-04-12 Qualcomm Incorporated Scaling ratio and output full resolution picture in video coding

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9172972B2 (en) * 2011-01-05 2015-10-27 Qualcomm Incorporated Low complexity interpolation filtering with adaptive tap size

Also Published As

Publication number Publication date
US20150016533A1 (en) 2015-01-15
EP3020194A1 (en) 2016-05-18
CN105359532A (zh) 2016-02-24
KR20160031496A (ko) 2016-03-22
CA2913804A1 (en) 2015-01-15
JP2016527789A (ja) 2016-09-08
WO2015006692A1 (en) 2015-01-15

Similar Documents

Publication Publication Date Title
JP7368414B2 (ja) 画像予測方法および装置
TWI782904B (zh) 合併用於視訊寫碼之用於多類別區塊之濾波器
TWI719053B (zh) 內區塊複製合併模式及不可用內區塊複製參考區域之填充
JP6378433B2 (ja) イントラbcとインター予測の統合のためのamvpおよびマージ候補リスト導出
US9948949B2 (en) Intra block copy block vector signaling for video coding
TW201517599A (zh) 內部運動補償延伸
KR102051718B1 (ko) 병렬 프로세싱을 위한 인트라 블록 복사 예측 제한들
RU2584498C2 (ru) Видеокодирование интра-режима
TWI520583B (zh) 用於解碼及編碼視訊資料之方法、器件及電腦可讀儲存媒體
TWI532364B (zh) 在變換跳躍模式中寫碼重要係數資訊
TW201817236A (zh) 用於視頻寫碼之線性模型色度內預測
TWI520584B (zh) 用信號發送用於一葉層級編碼單元之子集的轉換係數的語法元素
CN113940069A (zh) 用于视频译码中的低频不可分离变换的变换和最后有效系数位置信令
TW201729595A (zh) 針對視訊寫碼使用與位置相關之預測組合之改良視訊幀內預測
TWI527440B (zh) 在視訊寫碼中針對高效率視訊寫碼(hevc)延伸之多層之低複雜度支援
TW201720150A (zh) 用於視訊寫碼之調色板預測初始化及合併
TW201633787A (zh) 寫碼樹單元級可適性迴路濾波器
TW201804794A (zh) 過濾資訊之發信號
TW201342920A (zh) 在視訊寫碼中用於色度分量之變換單位分割
TW201444350A (zh) 方形區塊預測
TW201352004A (zh) 轉換係數寫碼
TW201635798A (zh) 用於大的寫碼樹單元之內容
CN112514386A (zh) 网格编解码量化系数编解码
TWI843809B (zh) 用於視訊寫碼中具有運動向量差之合併模式之信令傳輸
RU2804871C2 (ru) Способ и устройство предсказания изображений