TW201717623A - 幀內預測及幀內模式寫碼 - Google Patents

幀內預測及幀內模式寫碼 Download PDF

Info

Publication number
TW201717623A
TW201717623A TW105119224A TW105119224A TW201717623A TW 201717623 A TW201717623 A TW 201717623A TW 105119224 A TW105119224 A TW 105119224A TW 105119224 A TW105119224 A TW 105119224A TW 201717623 A TW201717623 A TW 201717623A
Authority
TW
Taiwan
Prior art keywords
frame prediction
mpm index
intra
mpm
video
Prior art date
Application number
TW105119224A
Other languages
English (en)
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 TW201717623A publication Critical patent/TW201717623A/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/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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/18Methods 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 set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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
    • 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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

本發明提供一種裝置,該裝置包括一或多個處理器,其經組態以導出用於框內預測一視訊資料區塊之M個最可能模式(MPM)。解碼指示一MPM索引抑或一非MPM索引用以指示該複數個框內預測模式中用於框內預測該視訊資料區塊之一選定框內預測模式的一語法元素。該一或多個處理器經組態以使得基於該MPM索引指示該選定框內預測模式,該一或多個處理器解碼該非MPM索引。若該非MPM索引滿足一準則,則該非MPM索引在位元串流中編碼為短於□log2N□個位元之一碼字,且否則在該位元串流中編碼為具有□log2N□個位元之一固定長度碼。該一或多個處理器基於該選定框內預測模式而重建構該區塊。

Description

幀內預測及幀內模式寫碼
本申請案主張2015年6月18日申請之美國臨時申請案第62/181,744號及2015年7月14日申請之美國臨時專利申請案第62/192,310號之權利,該等申請案中之每一者的全部內容以引用之方式併入本文中。
本發明係關於視訊編碼及解碼。
數位視訊能力可併入至廣泛範圍之裝置中,包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、平板電腦、電子書閱讀器、數位攝影機、數位記錄裝置、數位媒體播放器、視訊遊戲裝置、視訊遊戲控制台、蜂巢式或衛星無線電電話、所謂的「智慧型手機」、視訊電話會議裝置、視訊串流裝置及其類似者。數位視訊裝置實施視訊壓縮技術,諸如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分進階視訊寫碼(AVC)定義之標準、高效率視訊寫碼(HEVC)標準及此等標準之擴展中所描述的技術。視訊裝置可藉由實施此等視訊壓縮技術而更有效地傳輸、接收、編碼、解碼及/或儲存數位視訊資訊。
視訊壓縮技術執行空間(圖像內)預測及/或時間(圖像間)預測以減少或移除視訊序列中固有之冗餘。對於基於區塊之視訊寫碼,可將視 訊截塊(亦即,視訊圖框或視訊圖框之一部分)分割為視訊區塊。可使用相對於同一圖像中之相鄰區塊中之參考樣本的空間預測來編碼圖像之經框內寫碼(I)截塊中的視訊區塊。圖像之經框間寫碼(P或B)截塊中之視訊區塊可使用相對於同一圖像中之相鄰區塊中的參考樣本的空間預測或相對於其他參考圖像中之參考樣本的時間預測。圖像可被稱作圖框,且參考圖像可被稱作參考圖框。
空間或時間預測產生待寫碼之區塊之預測性區塊。殘差資料表示待寫碼之原始區塊與預測性區塊之間的像素差。經框間寫碼區塊係根據指向形成預測性區塊之參考樣本之區塊的運動向量來編碼,且殘餘資料指示經寫碼區塊與預測性區塊之間的差。經框內寫碼區塊係根據框內寫碼模式及殘餘資料來編碼。為進行進一步壓縮,可將殘餘資料自像素域變換至變換域,從而產生可接著進行量化之殘餘係數。可掃描最初配置成二維陣列之經量化係數以便產生係數的一維向量,且可應用熵寫碼以達成甚至更多壓縮。
一般而言,本發明描述可用於進階視訊編碼解碼器之上下文中的用於框內預測及框內預測模式寫碼之技術,諸如高效率視訊寫碼(HEVC)標準之擴展或下一代視訊寫碼標準。
在一個實例中,本發明描述一種編碼視訊資料區塊之方法,其可包括:自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個最可能模式(MPM),其中M大於3;編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素;基於語法元素指示非MPM索引用以指示選定框內預測模式而編碼非MPM索引,其中若非MPM索引滿足準則,則非MPM索引在位元串流中編碼為短於log2 N 個位元之碼字,且否則編碼為具有log2 N 個位元之固定長度碼,其中存在非 MPM索引之總計N個可用值;及基於選定框內預測模式而編碼視訊資料區塊。
在另一實例中,本發明描述一種解碼視訊資料區塊之方法,其可包括:自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM,其中M大於3;解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素,其中MPM索引指示M個MPM中之哪一者為選定框內預測模式,且其中非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式;基於MPM索引指示選定框內預測模式而解碼非MPM索引,其中若非MPM索引滿足準則,則非MPM索引在位元串流中編碼為短於log2 N 個位元之碼字,且否則在位元串流中編碼為具有log2 N 個位元之固定長度碼,其中存在非MPM索引之總計N個可用值;及基於選定框內預測模式而重建構視訊資料區塊。
在另一實例中,本發明描述一種用於編碼視訊資料之裝置,其可包括:記憶體,其經組態以儲存視訊資料;及一或多個處理器,其經組態以進行以下操作:自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM,其中M大於3;編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素;基於語法元素指示非MPM索引用以指示選定框內預測模式而編碼非MPM索引,其中若非MPM索引滿足準則,則非MPM索引在位元串流中編碼為短於log2 N 個位元之碼字,且否則編碼為具有log2 N 個位元之固定長度碼,其中存在非MPM索引之總計N個可用值;及基於選定框內預測模式而編碼視訊資料區塊。
在另一實例中,本發明描述一種用於解碼視訊資料之裝置,其 可包括:記憶體,其經組態以儲存視訊資料;及一或多個處理器,其經組態以進行以下操作:自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM,其中M大於3;解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素,其中MPM索引指示M個MPM中之哪一者為選定框內預測模式,且其中非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式;基於MPM索引指示選定框內預測模式而解碼非MPM索引,其中若非MPM索引滿足準則,則非MPM索引在位元串流中編碼為短於log2 N 個位元之碼字,且否則在位元串流中編碼為具有log2 N 個位元之固定長度碼,其中存在非MPM索引之總計N個可用值;及基於選定框內預測模式而重建構視訊資料區塊。
在另一實例中,本發明描述一種用於寫碼視訊資料區塊之視訊寫碼裝置,該視訊寫碼裝置包含:用於自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM的構件,其中M大於3;用於寫碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素的構件;用於基於語法元素指示非MPM索引用以指示選定框內預測模式而寫碼非MPM索引的構件,其中若非MPM索引滿足準則,則非MPM索引在位元串流中編碼為短於log2 N 個位元之碼字,且否則編碼為具有log2 N 個位元之固定長度碼,其中存在非MPM索引之總計N個可用值;及用於基於選定框內預測模式而寫碼視訊資料區塊的構件。
在另一實例中,本發明描述一種電腦可讀媒體,其儲存在由一或多個處理器執行時使該一或多個處理器進行以下操作的指令:自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM,其中M大於3;寫碼指示MPM索引抑或非MPM索引用以指示複數個框 內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素;基於語法元素指示非MPM索引用以指示選定框內預測模式而寫碼非MPM索引,其中若非MPM索引滿足準則,則非MPM索引在位元串流中編碼為短於log2 N 個位元之碼字,且否則編碼為具有log2 N 個位元之固定長度碼,其中存在非MPM索引之總計N個可用值;及基於選定框內預測模式而寫碼視訊資料區塊。
在以下隨附圖式及描述中闡述一或多個實例之細節。其他特徵、目標及優點將自該描述及圖式以及申請專利範圍顯而易見。
10‧‧‧視訊寫碼系統
12‧‧‧源裝置
14‧‧‧目的地裝置
16‧‧‧頻道
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧輸出介面
28‧‧‧輸入介面
30‧‧‧視訊解碼器
32‧‧‧顯示裝置
40‧‧‧影像區塊
42‧‧‧選定預測方向
50‧‧‧右上方經重建構樣本TR
52‧‧‧左下方經重建構樣本BL
54‧‧‧經重建構樣本
56‧‧‧經重建構樣本
60‧‧‧預測方向
62‧‧‧樣本
100‧‧‧預測處理單元
101‧‧‧視訊資料記憶體
102‧‧‧殘餘產生單元
104‧‧‧變換處理單元
106‧‧‧量化單元
108‧‧‧反量化單元
110‧‧‧反變換處理單元
112‧‧‧重建構單元
114‧‧‧濾波器單元
116‧‧‧經解碼圖像緩衝器
118‧‧‧熵編碼單元
120‧‧‧框間預測處理單元
122‧‧‧運動估計(ME)單元
124‧‧‧運動補償(MC)單元
126‧‧‧框內預測處理單元
150‧‧‧熵解碼單元
151‧‧‧視訊資料記憶體
152‧‧‧預測處理單元
154‧‧‧反量化單元
156‧‧‧反變換處理單元
158‧‧‧重建構單元
160‧‧‧濾波器單元
162‧‧‧經解碼圖像緩衝器
164‧‧‧運動補償單元
166‧‧‧框內預測處理單元
200‧‧‧步驟
202‧‧‧步驟
204‧‧‧步驟
206‧‧‧步驟
220‧‧‧步驟
222‧‧‧步驟
224‧‧‧步驟
226‧‧‧步驟
300‧‧‧步驟
302‧‧‧步驟
304‧‧‧步驟
306‧‧‧步驟
308‧‧‧步驟
310‧‧‧步驟
350‧‧‧步驟
352‧‧‧步驟
354‧‧‧步驟
356‧‧‧步驟
358‧‧‧步驟
360‧‧‧步驟
400‧‧‧步驟
402‧‧‧步驟
404‧‧‧步驟
406‧‧‧步驟
450‧‧‧步驟
452‧‧‧步驟
454‧‧‧步驟
456‧‧‧步驟
600‧‧‧步驟
602‧‧‧步驟
604‧‧‧步驟
606‧‧‧步驟
650‧‧‧步驟
652‧‧‧步驟
654‧‧‧步驟
656‧‧‧步驟
700‧‧‧步驟
702‧‧‧步驟
750‧‧‧步驟
752‧‧‧步驟
800‧‧‧步驟
802‧‧‧步驟
804‧‧‧步驟
850‧‧‧步驟
852‧‧‧步驟
854‧‧‧步驟
圖1為說明可利用本發明中所描述之技術的實例視訊寫碼系統的方塊圖。
圖2為說明框內預測視訊資料區塊之實例的概念圖。
圖3為說明框內預測模式及對應模式索引之實例的概念圖。
圖4為說明用於根據平面框內預測模式產生視訊資料區塊之預測樣本之實例技術的概念圖。
圖5為說明用於根據角度框內預測模式產生視訊資料區塊之預測樣本之實例技術的概念圖。
圖6為說明可實施本發明中所描述之技術的實例視訊編碼器的方塊圖。
圖7為說明可實施本發明中所描述之技術的實例視訊解碼器的方塊圖。
圖8為說明根據本發明之技術的框內預測模式及對應模式索引之實例的概念圖。
圖9為說明根據本發明之技術之實例框內預測角度的概念圖。
圖10為說明根據本發明之技術的編碼視訊資料之方法的流程圖。
圖11為說明根據本發明之技術的解碼視訊資料之方法的流程圖。
圖12為說明根據本發明之技術的編碼視訊資料之方法的流程圖。
圖13為說明根據本發明之技術的解碼視訊資料之方法的流程圖。
圖14為說明根據本發明之技術的編碼視訊資料之方法的流程圖。
圖15為說明根據本發明之技術的解碼視訊資料之方法的流程圖。
圖16為說明根據本發明之技術的編碼視訊資料之方法的流程圖。
圖17為說明根據本發明之技術的解碼視訊資料之方法的流程圖。
圖18為說明根據本發明之技術的編碼視訊資料之方法的流程圖。
圖19為說明根據本發明之技術的解碼視訊資料之方法的流程圖。
圖20為說明根據本發明之技術的編碼視訊資料之方法的流程圖。
圖21為說明根據本發明之技術的解碼視訊資料之方法的流程圖。
一般而言,本發明描述可用於進階視訊編碼解碼器之上下文中的用於框內預測及框內預測模式寫碼之技術,諸如HEVC標準之擴展或下一代視訊寫碼標準。舉例而言,本發明描述用於導出、選擇及/或發信用於框內預測之最可能模式(MPM)的技術。本發明中所描述之 實例亦包括用於使用增加數目個角度模式之框內預測的技術。用於使用增加數目個角度模式之框內預測的技術可包括用於應用N分接頭框內內插濾波器之技術,其中N大於2。本發明亦描述每區塊可允許多個框內預測方向(例如,用於區塊之子區塊的各別方向)的技術,其可能不需要多個框內預測模式之額外發信。
框內預測及框內模式寫碼為可用於進階視訊編碼解碼器之上下文中的技術,諸如高效率視訊寫碼(HEVC)標準之擴展或下一代視訊寫碼標準。
在HEVC中之框內模式寫碼中,對於每一框內預測單元(PU),發信選定框內預測模式。為選擇框內預測模式,首先識別被假定為具有實際上被選擇之較高機率的三個框內模式,即,最可能模式(MPM)。在HEVC中,存在用於框內預測明度區塊之35個模式,包括平面框內預測模式、DC框內預測模式及分別與角度框內預測模式相關聯之33個不同預測方向。
HEVC中之現存框內預測設計的35個固定預測角度對於俘獲非常靈活之邊緣方向分佈可為低效的。然而,應用更多預測角度可導致非所要的編碼器複雜度增加。舉例而言,基於HEVC參考軟體而直接擴展至65個預測角度可能需要大致加倍數目個SATD檢查。此外,使用HEVC中之三個MPM之當前框內模式寫碼的效率可受限制,此係因為其可能無法準確地對應於所有可用框內預測模式之實際機率分佈。
本發明描述可補救HEVC中之此等缺陷中之一或多者的技術。舉例而言,根據本發明之一些技術,視訊寫碼器可導出三個以上MPM。在一些此等實例中,視訊寫碼器可使用上下文模型化以用於解碼指示MPM中之哪一者為當前PU之選定MPM的MPM索引之一或多個二進位。在視訊寫碼器導出三個以上MPM之一些實例中,在MPM當中,視訊寫碼器可定義左方相鄰行之代表性框內預測模式且將左方 相鄰行之代表性框內預測模式用作左方相鄰行之MPM,及/或定義上方相鄰列之代表性框內預測模式且將上方相鄰列之代表性框內預測模式用作上方相鄰列之MPM。此外,在視訊寫碼器導出三個以上MPM之一些實例中,視訊寫碼器可基於與已在MPM當中之角度模式的類似性而選擇一或多個額外角度MPM。在此實例中,類似性係基於框內預測模式索引差或框內預測角度差中之至少一者而判定。此外,在本發明之一些實例技術中,若非MPM索引滿足準則,則非MPM索引可在位元串流中經編碼為短於log2 N 個位元之碼字,且否則,經編碼為具有log2 N 個位元之固定長度碼,其中存在非MPM索引之總計N個可用值。
在視訊寫碼器可使用33個以上角度框內預測模式之本發明之一些實例中,視訊寫碼器可對相鄰經重建構樣本使用內插濾波器,其中內插具有1/32像元準確度。在本發明之一些實例中,視訊寫碼器可藉由將N分接頭框內內插濾波器應用於相鄰經重建構樣本以在經判定分數位置處內插值而計算各別樣本之值,其中N大於2。
圖1為說明可利用本發明之技術的實例視訊寫碼系統10之方塊圖。如本文中所使用,術語「視訊寫碼器」大體上指視訊編碼器及視訊解碼器兩者。在本發明中,術語「視訊寫碼」或「寫碼」可大體上指視訊編碼或視訊解碼。
如圖1中所展示,視訊寫碼系統10包括源裝置12及目的地裝置14。源裝置12產生經編碼視訊資料。因此,源裝置12可被稱作視訊編碼裝置或視訊編碼設備。目的地裝置14可解碼由源裝置12所產生的經編碼視訊資料。因此,目的地裝置14可被稱作視訊解碼裝置或視訊解碼設備。源裝置12及目的地裝置14可為視訊寫碼裝置或視訊寫碼設備之實例。源裝置12及目的地裝置14可包含廣泛範圍的裝置,包括桌上型電腦、行動計算裝置、筆記型(例如,膝上型)電腦、平板電腦、機 上盒、諸如所謂的「智慧型」手機之電話手機、電視、攝影機、顯示裝置、數位媒體播放器、視訊遊戲控制台、車載電腦(in-car computer)或其類似者。
目的地裝置14可經由頻道16自源裝置12接收經編碼視訊資料。頻道16可包含能夠將經編碼視訊資料自源裝置12移動至目的地裝置14之一或多個媒體或裝置。在一些實例中,頻道16可包含使源裝置12能夠將經編碼視訊資料直接即時地傳輸至目的地裝置14的一或多個通信媒體。在此實例中,源裝置12可根據通信標準(諸如,無線通信協定)調變經編碼視訊資料,且可將經調變視訊資料傳輸至目的地裝置14。一或多個通信媒體可包括無線及/或有線通信媒體,諸如射頻(RF)頻譜或一或多個實體傳輸線。一或多個通信媒體可形成基於封包之網路(諸如,區域網路、廣域網路或全球網路(例如,網際網路))的部分。一或多個通信媒體可包括路由器、交換器、基地台,或促進自源裝置12至目的地裝置14之通信的其他裝備。
在一些實例中,頻道16可包括儲存由源裝置12所產生之經編碼視訊資料的儲存媒體。在此實例中,目的地裝置14可(例如)經由磁碟存取或卡存取而存取儲存媒體。儲存媒體可包括多種本端存取式資料儲存媒體,諸如藍光光碟、DVD、CD-ROM、快閃記憶體,或用於儲存經編碼視訊資料之其他合適的數位儲存媒體。
在一些實例中,頻道16可包括儲存由源裝置12所產生之經編碼視訊資料的檔案伺服器或另一中間儲存裝置。在此實例中,目的地裝置14可經由串流或下載而存取儲存於檔案伺服器或其他中間儲存裝置處之經編碼視訊資料。檔案伺服器可為能夠儲存經編碼視訊資料且將經編碼視訊資料傳輸至目的地裝置14之類型之伺服器。實例檔案伺服器包括網頁伺服器(例如,用於網站)、檔案傳送協定(FTP)伺服器、網路附接儲存(NAS)裝置及本端磁碟機。
目的地裝置14可經由標準資料連接(諸如,網際網路連接)來存取經編碼視訊資料。資料連接之實例類型可包括無線頻道(例如,Wi-Fi連接)、有線連接(例如,數位用戶線(DSL)、纜線數據機等),或適合於存取儲存於檔案伺服器上之經編碼視訊資料的兩者的組合。經編碼視訊資料自檔案伺服器之傳輸可為串流傳輸、下載傳輸或兩者之組合。
本發明之技術並不限於無線應用程式或設定。該等技術可應用於支援多種多媒體應用(諸如,(例如)經由網際網路之空中電視廣播、有線電視傳輸、衛星電視傳輸、串流視訊傳輸)之視訊寫碼、供儲存於資料儲存媒體上之數位視訊的編碼、儲存於資料儲存媒體上之數位視訊的解碼,或其他應用。在一些實例中,視訊寫碼系統10可經組態以支援單向或雙向視訊傳輸以支援諸如視訊串流、視訊播放、視訊廣播及/或視訊電話之應用。
圖1僅為實例,且本發明之技術可應用於未必包括編碼裝置與解碼裝置之間的任何資料通信的視訊寫碼設定(例如,視訊編碼或視訊解碼)。在其他實例中,資料係自本端記憶體擷取,經由網路串流傳輸,或經過類似處理。視訊編碼裝置可編碼資料且將資料儲存至記憶體,及/或視訊解碼裝置可自記憶體擷取資料且解碼資料。在許多實例中,藉由彼此不通信但簡單地將資料編碼至記憶體及/或自記憶體擷取並解碼資料之裝置來執行編碼及解碼。
在圖1之實例中,源裝置12包括視訊源18、視訊編碼器20及輸出介面22。在一些實例中,輸出介面22可包括調變器/解調變器(數據機)及/或傳輸器。視訊源18可包括視訊俘獲裝置(例如,視訊攝影機)、含有先前所俘獲之視訊資料的視訊封存檔、用以自視訊內容提供者接收視訊資料之視訊饋入介面,及/或用於產生視訊資料之電腦圖形系統,或視訊資料之此等源的組合。
視訊編碼器20可編碼來自視訊源18之視訊資料。在一些實例中,源裝置12經由輸出介面22直接將經編碼視訊資料傳輸至目的地裝置14。在其他實例中,經編碼視訊資料亦可儲存於儲存媒體或檔案伺服器上,以稍後供目的地裝置14存取以用於解碼及/或播放。
在圖1之實例中,目的地裝置14包括輸入介面28、視訊解碼器30及顯示裝置32。在一些實例中,輸入介面28包括接收器及/或數據機。輸入介面28可經由頻道16接收經編碼視訊資料。視訊解碼器30可解碼經編碼視訊資料。顯示裝置32可顯示經解碼視訊資料。顯示裝置32可與目的地裝置14整合或可在目的地裝置外部。顯示裝置32可包含多種顯示裝置,諸如液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示裝置。
視訊編碼器20及視訊解碼器30各自可實施為多種合適電路中的任一者,諸如一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、硬體或其任何組合。若該等技術以軟體部分地實施,則裝置可將用於軟體之指令儲存於合適的非暫時性電腦可讀儲存媒體中,且可使用一或多個處理器以硬體執行該等指令從而執行本發明之技術。前述各者(包括硬體、軟體、硬體與軟體之組合等)中之任一者可被視為一或多個處理器。視訊編碼器20及視訊解碼器30中之每一者可包括於一或多個編碼器或解碼器中,編碼器或解碼器中之任一者可整合為各別裝置中的組合式編碼器/解碼器(編碼解碼器)之部分。包括視訊編碼器20及/或視訊解碼器30之設備可包含積體電路、微處理器及/或無線通信裝置,諸如蜂巢式電話。
源裝置12之視訊源18可包括視訊俘獲裝置(諸如,視訊攝影機)、含有先前所俘獲之視訊的視訊封存檔及/或用以自視訊內容提供者接收視訊之視訊饋入介面。作為另一替代例,視訊源18可產生基於電腦 圖形之資料作為源視訊,或實況視訊、存檔視訊及電腦產生之視訊的組合。在一些狀況下,若視訊源18為視訊攝影機,則源裝置12及目的地裝置14可形成所謂的攝影機電話或視訊電話。然而,如上文所提及,本發明中所描述之技術一般可適用於視訊寫碼,且可適用於無線及/或有線應用。在每一狀況下,所俘獲、所預先俘獲或電腦產生之視訊可藉由視訊編碼器20編碼。經編碼視訊資訊可接著藉由輸出介面22輸出至頻道16上。
本發明中所描述之許多技術可由視訊編碼器20及視訊解碼器30兩者執行。因此,為易於解釋,可關於視訊寫碼器來描述該等技術,該視訊寫碼器可為視訊編碼器及/或視訊解碼器,諸如視訊編碼器20及視訊解碼器30。本發明可大體上指視訊編碼器20將某些資訊「發信」至諸如視訊解碼器30之另一裝置。術語「發信」可大體上指用以解碼經壓縮視訊資料之語法元素及/或其他資料之通信。此通信可即時地或近乎即時地發生。替代地,可歷時時間跨度而發生此通信,諸如當在編碼時,將經編碼位元串流中之語法元素儲存至電腦可讀儲存媒體時,可發生此通信,接著,在儲存至此媒體之後可由解碼裝置在任何時間擷取該等語法元素。
視訊寫碼標準包括ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262或ISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual及ITU-T H.264(亦稱為ISO/IEC MPEG-4 AVC),包括其可調式視訊寫碼(SVC)及多視圖視訊寫碼(MVC)擴展。此外,高效率視訊寫碼(HEVC)最近已由ITU-T視訊寫碼專家組(VCEG)及ISO/IEC動畫專家組(MPEG)的視訊寫碼聯合協作小組(JCT-VC)開發。HEVC規格之草案可獲自:http://phenix.int-evry.fr/jct/doc_end_user/documents/14_Vienna/wg11/JCTVC-N1003-v1.zip,(下文中,「JCTVC-N1003」)。
在HEVC及其他視訊寫碼規格中,視訊序列通常包括一系列圖 像。圖像亦可被稱作「圖框」。圖像可包括三個樣本陣列,指示為SL、SCb及SCr。SL為明度樣本之二維陣列(亦即,區塊)。SCb為Cb彩度樣本(chrominance sample)之二維陣列。SCr為Cr彩度樣本之二維陣列。彩度樣本在本文中亦可被稱作「色度(chroma)」樣本。在其他情況下,圖像可為單色的,且可僅包括明度樣本陣列。
為產生圖像之經編碼表示,視訊編碼器20可產生寫碼樹型單元(CTU)之集合。CTU中之每一者可包含明度樣本之寫碼樹型區塊、色度樣本之兩個對應寫碼樹型區塊及用以寫碼該等寫碼樹型區塊之樣本的語法結構。在單色圖像或具有三個單獨色彩平面之圖像中,CTU可包含單一寫碼樹型區塊及用以寫碼該寫碼樹型區塊之樣本的語法結構。寫碼樹型區塊可為樣本之N×N區塊。CTU亦可被稱作「樹型區塊」或「最大寫碼單元」(LCU)。HEVC之CTU可廣泛地類似於諸如H.264/AVC之其他標準之巨集區塊。然而,CTU未必限於特定大小,且可包括一或多個寫碼單元(CU)。截塊可包括以光柵掃描次序連續定序之整數數目個CTU。舉例而言,截塊可為含於同一存取單元內的一個獨立截塊分段及先於下一獨立截塊分段(若存在)之所有後續相依截塊片段(若存在)中的整數數目個CTU。
為產生經寫碼CTU,視訊編碼器20可對CTU之寫碼樹型區塊遞迴地執行四分樹分割,以將寫碼樹型區塊劃分成寫碼區塊,因此命名為「寫碼樹型單元」。寫碼區塊為樣本之NxN區塊。CU可包含具有明度樣本陣列、Cb樣本陣列及Cr樣本陣列之圖像的明明度樣本之寫碼區塊及色度樣本之兩個對應寫碼區塊,以及用以寫碼該等寫碼區塊之樣本的語法結構。在單色圖像或具有三個單獨色彩平面之圖像中,CU可包含單一寫碼區塊及用以寫碼該寫碼區塊之樣本的語法結構。
視訊編碼器20可將CU之寫碼區塊分割為一或多個預測區塊。預測區塊為供應用相同預測之樣本的矩形(亦即,正方形或非正方形)區 塊。CU之預測單元(PU)可包含明度樣本之預測區塊、色度樣本之兩個對應預測區塊及用以預測該等預測區塊之語法結構。在單色圖像或具有三個單獨色彩平面之圖像中,PU可包含單一預測區塊及用以預測該預測區塊的語法結構。視訊編碼器20可產生CU之每一PU的明度、Cb及Cr預測區塊之預測性明度、Cb及Cr區塊。
視訊編碼器20可使用框內預測或框間預測來產生PU之預測性區塊。若視訊編碼器20使用框內預測產生PU之預測性區塊,則視訊編碼器20可基於與PU相關聯之圖像之經解碼樣本而產生PU之預測性區塊。
若視訊編碼器20使用框間預測來產生PU之預測性區塊,則視訊編碼器20可基於不同於相關聯於PU之圖像的一或多個圖像之經解碼樣本而產生PU之預測性區塊。框間預測可為單向框間預測(亦即,單向預測)或雙向框間預測(亦即,雙向預測)。為執行單向預測或雙向預測,視訊編碼器20可產生當前截塊之第一參考圖像清單(RefPicList0)及第二參考圖像清單(RefPicList1)。參考圖像清單中之每一者可包括一或多個參考圖像。當使用單向預測時,視訊編碼器20可搜尋RefPicList0及RefPicList1中之任一者或兩者中的參考圖像,以判定參考圖像內之參考位置。此外,當使用單向預測時,視訊編碼器20可至少部分地基於對應於參考位置之樣本而產生PU之預測性樣本區塊。此外,當使用單向預測時,視訊編碼器20可產生指示PU之預測區塊與參考位置之間的空間位移之單一運動向量。為指示PU之預測區塊與參考位置之間的空間位移,運動向量可包括指定PU之預測區塊與參考位置之間的水平位移之水平分量,且可包括指定PU之預測區塊與參考位置之間的垂直位移之垂直分量。
當使用雙向預測來編碼PU時,視訊編碼器20可判定RefPicList0中之參考圖像中的第一參考位置,及RefPicList1中之參考圖像中的第 二參考位置。視訊編碼器20可接著至少部分地基於對應於第一參考位置及第二參考位置之樣本而產生PU之預測性區塊。此外,當使用雙向預測來編碼PU時,視訊編碼器20可產生指示PU之樣本區塊與第一參考位置之間的空間位移之第一運動向量,及指示PU之預測區塊與第二參考位置之間的空間位移之第二運動向量。
通常,B圖像之第一參考圖像清單或第二參考圖像清單(例如,RefPicList0或RefPicList1)的參考圖像清單建構包括兩個步驟:參考圖像清單初始化及參考圖像清單重定序(修改)。參考圖像清單初始化為顯式機制,其基於POC(圖像次序計數,其與圖像之顯示次序對準)次序值而將參考圖像記憶體(亦稱為經解碼圖像緩衝器)中之參考圖像置入清單中。參考圖像清單重定序機制可將在參考圖像清單初始化期間置於清單中之圖像的位置修改為任何新位置,或甚至在圖像不屬於初始化清單的情況下仍將參考圖像記憶體中之任何參考圖像置於任何位置中。可將參考圖像清單重定序(修改)之後的一些圖像置於清單中之更進一步的位置中。然而,若圖像之位置超過清單之作用中參考圖像的數目,則並不將該圖像視為最終參考圖像清單之條目。可在每一清單之截塊標頭中發信作用中參考圖像之數目。在建構參考圖像清單(即,RefPicList0及RefPicList1,若可用)之後,至參考圖像清單之參考索引可用以識別包括於參考圖像清單中之任何參考圖像。
視訊編碼器20可使用框內預測模式編碼來編碼某些視訊資料區塊,且提供指示用以編碼區塊之選定框內預測模式的資訊。視訊編碼器20可使用框內預測模式來框內預測編碼任何類型之圖框或截塊(例如,I圖框或I截塊,外加P圖框或P截塊及B圖框或B截塊)的區塊。當視訊編碼器20判定區塊應經框內預測模式編碼時,視訊編碼器20可執行速率-失真分析以選擇最適當的框內預測模式。框內預測模式亦可被稱作「框內模式」。舉例而言,視訊編碼器20可計算一或多個框內 預測模式之速率-失真值,且選擇該等模式中具有可接受速率-失真特性的一個模式。
在一些實例中,視訊編碼器20可經組態以基於上下文而開始以最可能模式分析對框內預測模式之選擇。在一些實例中,當最可能模式實現合適的速率-失真特性時,視訊編碼器20可選擇該最可能模式。在其他實例中,視訊編碼器20無需以最可能模式開始選擇程序。
在視訊編碼器20產生CU之一或多個PU的預測性區塊(例如,預測性明度區塊、Cb區塊及Cr區塊)之後,視訊編碼器20可產生CU之明度殘餘區塊。殘餘區塊中之每一樣本可指示預測性區塊中之樣本與原始寫碼區塊中之對應樣本之間的差。CU之明度殘餘區塊中的每一樣本指示CU之預測性明度區塊中之一者中的明度樣本與CU之原始明度寫碼區塊中的對應樣本之間的差。此外,視訊編碼器20可產生CU之Cb殘餘區塊。CU之Cb殘餘區塊中的每一樣本可指示CU之預測性Cb區塊中之一者中的Cb樣本與CU之原始Cb寫碼區塊中的對應樣本之間的差。視訊編碼器20亦可產生CU之Cr殘餘區塊。CU之Cr殘餘區塊中之每一樣本可指示CU之預測性Cr區塊中之一者中的Cr樣本與CU之原始Cr寫碼區塊中的對應樣本之間的差。
此外,視訊編碼器20可使用四分樹分割以將CU之明度殘餘區塊、Cb殘餘區塊及Cr殘餘區塊分解成一或多個明度變換區塊、Cb變換區塊及Cr變換區塊。變換區塊為供應用相同變換的樣本之矩形(例如,正方形或非正方形)區塊。CU之變換單元(TU)可包含明度樣本之變換區塊、色度樣本之兩個對應變換區塊及用以變換該等變換區塊樣本之語法結構。因此,CU之每一TU可與明度變換區塊、Cb變換區塊及Cr變換區塊相關聯。與TU相關聯之明度變換區塊可為CU之明度殘餘區塊之子區塊。Cb變換區塊可為CU之Cb殘餘區塊的子區塊。Cr變換區塊可為CU之Cr殘餘區塊的子區塊。在單色圖像或具有三個單獨 色彩平面之圖像中,TU可包含單一變換區塊及用以變換該變換區塊之樣本的語法結構。
視訊編碼器20可將一或多個變換應用於TU之明度變換區塊,以產生TU之明度係數區塊。係數區塊可為變換係數之二維陣列。變換係數可為純量。視訊編碼器20可將一或多個變換應用於TU之Cb變換區塊,以產生TU之Cb係數區塊。視訊編碼器20可將一或多個變換應用於TU之Cr變換區塊,以產生TU之Cr係數區塊。
在產生係數區塊(例如,明度係數區塊、Cb係數區塊或Cr係數區塊)之後,視訊編碼器20可量化係數區塊。量化大體上指變換係數經量化以可能減少用以表示變換係數的資料之量從而提供進一步壓縮的程序。
因此,在進行框內預測性或框間預測性寫碼以產生預測性資料及殘餘資料之後,且在進行任何變換(諸如,用於H.264/AVC中之4×4或8×8整數變換,或離散餘弦變換DCT)以產生變換係數之後,可執行變換係數之量化。量化大體上指變換係數經量化以可能減少用以表示係數的資料之量的程序。量化程序可減少與一些或所有係數相關聯之位元深度。舉例而言,可在量化期間將n位元值降值捨位至m位元值,其中n大於m
在視訊編碼器20量化係數區塊之後,視訊編碼器20可熵編碼指示經量化變換係數之語法元素。舉例而言,視訊編碼器20可對指示經量化變換係數之語法元素執行上下文自適應性二進位算術寫碼(CABAC)。舉例而言,在量化之後,可(例如)根據內容自適應性可變長度寫碼(CAVLC)、CABAC或另一熵寫碼方法執行對經量化資料之熵寫碼。經組態以用於熵寫碼之處理單元或另一處理單元可執行其他處理功能,諸如經量化係數之零延行長度寫碼及/或諸如以下各者之語法資訊的產生:寫碼區塊型樣(CBP)值、巨集區塊類型、寫碼模 式、經寫碼單元之最大巨集區塊大小(諸如,圖框、截塊、巨集區塊或序列)或其類似者。
視訊編碼器20亦可經組態以判定區塊之編碼上下文。上下文可基於諸如以下各者的區塊之各種特性而判定:區塊之大小,其可依據像素尺寸而判定;預測單元(PU)類型,諸如在HEVC之實例中,2N×2N、N×2N、2N×N、N×N;短距離框內預測(SDIP)類型,諸如2N×N/2、N/2×2N、2N×1、1×2N;在H.264之實例中的巨集區塊類型;區塊之寫碼單元(CU)深度;或視訊資料區塊之大小的其他量測。在一些實例中,視訊編碼器20可基於框內預測模式中之任一者或全部如何用於上方相鄰區塊、左方相鄰區塊、左上方相鄰區塊、右上方相鄰區塊或其他相鄰區塊而判定上下文。在一些實例中,視訊編碼器20基於一或多個區塊之框內預測模式以及正經編碼之當前區塊的大小資訊兩者而判定上下文。
視訊編碼器20可輸出包括形成經寫碼圖像及相關聯資料之表示之位元序列的位元串流。位元串流可包含網路抽象層(NAL)單元的序列。NAL單元為含有NAL單元中的資料之類型之指示及含有彼資料的呈按需要穿插有仿真阻止位元之原始位元組序列有效負載(RBSP)之形式的位元組之語法結構。NAL單元中之每一者包括NAL單元標頭且囊封RBSP。NAL單元標頭可包括指示NAL單元類型碼之語法元素。藉由NAL單元之NAL單元標頭指定的NAL單元類型碼指示NAL單元之類型。RBSP可為含有囊封於NAL單元內之整數數目個位元組的語法結構。在一些情況下,RBSP包括零個位元。
不同類型之NAL單元可囊封不同類型之RBSP。舉例而言,第一類型之NAL單元可囊封圖像參數集(PPS)之RBSP,第二類型之NAL單元可囊封經寫碼截塊之RBSP,第三類型之NAL單元可囊封SEI訊息之RBSP,等等。囊封視訊寫碼資料之RBSP(與參數集及SEI訊息之 RBSP相對)的NAL單元可被稱作視訊寫碼層(VCL)NAL單元。含有參數集(例如,視訊參數集(VPS)、序列參數集(SPS)、圖像參數集(PPS)等)之NAL單元可被稱作參數集NAL單元。
視訊解碼器30可接收由視訊編碼器20產生之位元串流。此外,視訊解碼器30可剖析位元串流以自該位元串流獲得語法元素。視訊解碼器30可至少部分地基於自位元串流獲得之語法元素而重建構視訊資料之圖像。重建構視訊資料之程序可與由視訊編碼器20執行之程序大體上互逆。舉例而言,視訊解碼器30可使用PU之運動向量來判定當前CU之PU的預測性區塊。此外,視訊解碼器30可反量化與當前CU之TU相關聯的係數區塊。視訊解碼器30可對係數區塊執行反變換以重建構與當前CU之TU相關聯的變換區塊。視訊解碼器30可藉由將當前CU之PU的預測性區塊之樣本加至當前CU之TU的變換區塊之對應樣本而重建構當前CU之寫碼區塊。藉由重建構圖像之每一CU的寫碼區塊,視訊解碼器30可重建構圖像。
因此,在本發明之一些實例中,視訊解碼器30可最終(例如)自輸入介面28接收經編碼視訊資料。根據本發明之一些技術,視訊解碼器30可接收表示用以編碼視訊資料區塊之框內預測模式的碼字或其他語法。視訊解碼器30可經組態而以大體上類似於視訊編碼器20之方式判定區塊之寫碼上下文。
如上文所提及,位元串流之特定NAL單元可包括VPS、SPS及PPS。在一些實例中,VPS為包含應用於零個或多個完整經寫碼視訊序列(CVS)之語法元素的語法結構。在一些實例中,SPS為含有應用於零或多個完整CVS之語法元素的語法結構。SPS可包括識別在SPS處於作用中時在作用中的VPS之語法元素。因此,VPS之語法元素可比SPS之語法元素更一般地適用。在一些實例中,PPS為含有應用於如藉由在每一截塊片段標頭中找到之語法元素判定之零或多個完整經 寫碼圖像的語法元素的語法結構。
參數集(例如,VPS、SPS、PPS等)可含有直接或間接地自截塊之截塊標頭參考的識別符。在一些實例中,截塊標頭為獨立截塊片段之截塊片段標頭,該獨立截塊片段為當前截塊片段或在解碼次序上先於當前相依截塊片段之最近獨立截塊片段。在此等實例中,截塊片段標頭為在圖像塊掃描中連續定序且含於單一NAL單元中的整數數目個寫碼樹型單元。參考程序被稱為「啟動」。因此,當視訊解碼器30正解碼特定截塊時,由該特定截塊之截塊標頭中之語法元素直接或間接參考的參數集據稱為「經啟動」。取決於參數集類型,啟動可基於每一圖像或基於每一序列而發生。舉例而言,截塊之截塊標頭可包括識別PPS之語法元素。因此,當視訊寫碼器寫碼截塊時,可啟動PPS。此外,PPS可包括識別SPS之語法元素。因此,當識別SPS之PPS經啟動時,可啟動SPS。SPS可包括識別VPS之語法元素。因此,當識別VPS之SPS經啟動時,啟動VPS。
如上文簡要提到,視訊編碼器20可使用CABAC編碼來編碼語法元素。為了將CABAC編碼應用於語法元素,視訊編碼器20可對語法元素進行二進位化以形成被稱作「二進位(bin)」的一系列一或多個位元。此外,視訊編碼器20可識別寫碼上下文。寫碼上下文可識別寫碼具有特定值之二進位的機率。舉例而言,寫碼上下文可指示寫碼0值二進位的0.7機率,及寫碼1值二進位的0.3機率。在識別寫碼上下文之後,視訊編碼器20可將間隔劃分成下部子間隔及上部子間隔。該等子間隔中之一者可與值0相關聯且另一子間隔可與值1相關聯。該等子間隔之寬度可與由經識別寫碼上下文針對相關聯值所指示之機率成比例。若語法元素之二進位具有與下部子間隔相關聯之值,則經編碼值可等於下部子間隔之下邊界。若語法元素之同一二進位具有與上部子間隔相關聯之值,則經編碼值可等於上部子間隔之下邊界。為了編碼 語法元素之下一個二進位,視訊編碼器20可重複此等步驟,其中間隔為與經編碼位元之值相關聯的子間隔。當視訊編碼器20針對下一個二進位重複此等步驟時,視訊編碼器20可使用基於由經識別寫碼上下文所指示之機率及經編碼之二進位之實際值的經修改機率。在一些實例中,當視訊編碼器20針對下一二進位重複此等步驟時,視訊編碼器20可選擇另一寫碼上下文。
當視訊解碼器30對語法元素執行CABAC解碼時,視訊解碼器30可識別寫碼上下文。視訊解碼器30可接著將間隔劃分成下部子間隔及上部子間隔。該等子間隔中之一者可與值0相關聯且另一子間隔可與值1相關聯。該等子間隔之寬度可與由經識別寫碼上下文針對相關聯值所指示之機率成比例。若經編碼值在下部子間隔內,則視訊解碼器30可解碼具有與下部子間隔相關聯之值的二進位。若經編碼值在上部子間隔內,則視訊解碼器30可解碼具有與上部子間隔相關聯之值的二進位。為解碼語法元素之下一個二進位,視訊解碼器30可重複此等步驟,其中間隔為含有經編碼值之子間隔。當視訊解碼器30針對下一個二進位重複此等步驟時,視訊解碼器30可使用基於由經識別寫碼上下文所指示之機率及經解碼二進位的經修改機率。視訊解碼器30可接著對二進位進行解二進位化以恢復語法元素。
視訊編碼器20可使用旁路CABAC寫碼來編碼一些二進位而非對所有語法元素執行常規CABAC編碼。相比於對二進位執行常規CABAC寫碼,對二進位執行旁路CABAC寫碼在計算上可花費較少。此外,執行旁路CABAC寫碼可允許較高的並行化度及輸送量。使用旁路CABAC寫碼而編碼之二進位可被稱作「旁路二進位」。將旁路二進位分組在一起可使視訊編碼器20及視訊解碼器30之輸送量增加。旁路CABAC寫碼引擎可能夠在單一循環中寫碼若干二進位,而常規CABAC寫碼引擎可能夠在一循環中寫碼僅單一二進位。旁路CABAC 寫碼引擎可更簡單,此係因為旁路CABAC寫碼引擎不選擇上下文且可針對兩個符號(0及1)採用½之機率。因此,在旁路CABAC寫碼中,間隔係直接分裂成兩半。
圖2為說明框內預測視訊資料區塊之實例的概念圖。對於框內預測,使用空間上相鄰之經重建構影像樣本來預測視訊資料區塊(例如,PU)。圖2中展示影像區塊40(例如,16×16影像區塊)之框內預測的典型實例。在框內預測之情況下,藉由沿選定預測方向(如由箭頭42所指示)之上方及左方相鄰經重建構樣本(參考樣本)而預測影像區塊40。
圖3為說明框內預測模式及對應模式索引之實例的概念圖。在HEVC中,如圖3中所指示,存在用於框內預測明度區塊之35個模式,包括平面模式(亦即,平面框內預測模式)、DC模式及33個角度模式(亦即,角度框內預測模式)。如定義於HEVC中之35個框內預測模式如下表而經索引化:
圖4為說明用於根據平面框內預測模式產生視訊資料區塊之預測樣本之實例技術的概念圖。平面模式通常為最常使用之框內預測模式。為執行對N×N區塊之平面預測,如圖4中所說明,針對位於(x,y)處之每一樣本pxy,藉由雙線性濾波器使用四個特定相鄰經重建構樣本(亦即,參考樣本)而計算預測值。四個參考樣本包括右上方經重建構樣本TR(50)、左下方經重建構樣本BL(52)及位於當前樣本之同一行(rx,-1)及列(r-1,y)處之兩個經重建構樣本(54、56),如圖4中所說明。平面模式可公式化為:pxy=(N-x-1).L+(N-y-1).T+x.TR+y.BL。在 此公式中,N為區塊之高度及寬度。
對於DC模式,簡單地用相鄰經重建構樣本之平均值填充預測區塊。舉例而言,為使用DC框內預測模式產生PU之預測性區塊,視訊寫碼器可將PU之預測性區塊的每一樣本設定為等於相鄰經重建構樣本之平均值。一般而言,應用平面框內預測模式及DC框內預測模式兩者以用於模型化平穩地變化及恆定的影像區。
HEVC指定其角度框內預測模式之33個不同預測方向。對於每一給定角度框內預測,可(例如)根據圖3識別框內預測方向。在圖3之實例中,框內預測模式10對應於純水平預測方向,且框內預測模式26對應於純垂直預測方向。
給定特定框內預測方向,對於預測區塊之每一樣本,首先沿預測方向將每一樣本之座標(x,y)投影至相鄰經重建構樣本之列/行,如圖3中之實例中所展示。假設(x,y)經投影至兩個相鄰經重建構樣本L與R之間的分數位置α,則使用兩分接頭雙線性內插濾波器計算(x,y)之預測值,如下公式化:pxy=(1-α).L+α.R。為避免浮點運算,在HEVC中,實際上使用如pxy=((32-a).L+a.R+16)>>5的整數算術來近似前述計算,其中a為等於32*α之整數。
對於HEVC中之框內模式寫碼,針對每一框內PU,發信選定框內預測模式。為發信選定框內預測模式,首先識別假定為具有實際上被選擇之較高機率的三個框內預測模式,即,最可能模式(MPM)。在HEVC中,如下導出MPM,標記為candModeList[x],x=0、1、2。
首先,如下根據JCTVC-N1003之子條款8.4.2導出左方相鄰模式(candIntraPredModeA)及上方相鄰模式(candIntraPredModeB):至此程序之輸入為相對於當前圖像之左上方明度樣本指定當前明度預測區塊之左上方樣本的明度位置(xPb,yPb)。
1. 將相鄰位置(xNbA,yNbA)及(xNbB,yNbB)設定為分別等於 (xPb-1,yPb)及(xPb,yPb-1)。
2. 對於由A或B替代之X,如下導出變數candIntraPredModeX:
- 如子條款6.4.1中指定之z掃描次序中的區塊之可用性導出程序係以設定為等於(xPb,yPb)之位置(xCurr,yCurr)及設定為等於(xNbX,yNbX)之相鄰位置(xNbY,yNbY)作為輸入而調用,且輸出經指派給availableX。
- 如下導出候選框內預測模式candIntraPredModeX:
- 若availableX等於假,則將candIntraPredModeX設定為等於INTRA_DC。
- 否則,若CuPredMode[xNbX][yNbX]不等於MODE_INTRA或pcm_flag[xNbX][yNbX]等於1,則將candIntraPredModeX設定為等於INTRA_DC,
- 否則,若X等於B且yPb-1小於((yPb>>CtbLog2SizeY)<<CtbLog2SizeY),則將candIntraPredModeB設定為等於INTRA_DC。
- 否則,將candIntraPredModeX設定為等於IntraPredModeY[xNbX][yNbX]。
因此,若當前PU之明度預測區塊之左上方樣本左方的相鄰樣本不可用,若不使用框內預測來預測當前PU之明度預測區塊之左上方樣本左方的相鄰樣本,或若當前PU之明度預測區塊之左上方樣本左方的相鄰樣本係使用脈碼調變(PCM)編碼,則將candIntraPredModeA設定為DC框內預測模式。否則,將candIntraPredModeA設定為預測區塊含有當前PU之明度預測區塊之左上方樣本左方的相鄰樣本的PU之框內預測模式。類似地,若PU之明度預測區塊之左上方樣本上方的相鄰樣本不可用,若不使用框內預測來預測當前PU之明度預測區塊之左上方樣本上方的相鄰樣本,若當前PU之明度預測區塊之左上方 樣本上方的相鄰樣本係使用PCM編碼,或若當前PU之明度預測區塊之左上方樣本上方的相鄰樣本在與當前PU不同之寫碼樹型區塊中,則將candIntraPredModeB設定為DC框內預測模式。否則,將candIntraPredModeB設定為預測區塊含有當前PU之明度預測區塊之左上方樣本上方的相鄰樣本的PU之明度框內預測模式(亦即,IntraPredModeY[xNbX][yNbX])。
接著,在JCTVC-N1003之子條款8.4.2中,使用所導出的左方相鄰模式(candIntraPredModeA)及上方相鄰模式(candIntraPredModeB),如下導出三個MPM:
3. 如下導出candModeList[x],其中x=0..2:
- 若candIntraPredModeB等於candIntraPredModeA,則以下情形適用:
- 若candIntraPredModeA小於2(亦即,等於INTRA_PLANAR或INTRA_DC),則如下導出candModeList[x],其中x=0..2:candModeList[0]=INTRA_PLANAR (8-15)
candModeList[1]=INTRA_DC (8-16)
candModeList[2]=INTRA_ANGULAR26 (8-17)
- 否則,如下導出candModeList[x],其中x=0..2:candModeList[0]=candIntraPredModeA (8-18)
candModeList[1]=2+((candIntraPredModeA+29)% 32) (8-19)
candModeList[2]=2+((camdIntraPredModeA-2+1)% 32) (8-20)
- 否則(candIntraPredModeB不等於candIntraPredModeA),以下情形適用:
- 如下導出candModeList[0]及candModeList[1]:candModeList[0]=candIntraPredModeA (8-21)
candModeList[1]=candIntraPredModeB (8-22)
- 若candModeList[0]及candModeList[1]兩者皆不等於 INTRA_PLANAR,則將candModeList[2]設定為等於INTRA_PLANAR,
- 否則,若candModeList[0]及candModeList[1]兩者皆不等於INTRA_DC,則將candModeList[2]設定為等於INTRA_DC,
- 否則,將candModeList[2]設定為等於INTRA_ANGULAR26。
在決定三個MPM之後,在JCTVC-N1003之子條款8.4.2中,對於每一PU,首先發信一位元旗標prev_intra_luma_pred_flag[xPb][yPb]以指示當前PU之選定框內模式是否與三個MPM中之一者相同。
- 若prev_intra_luma_pred_flag[xPb][yPb]發信為1,亦即,選擇3個MPM中之一者用於寫碼當前PU,則進一步發信指示選擇哪一MPM用於寫碼當前PU之索引mpm_idx(可等於0、1或2)。使用截斷一元碼對mpm_idx進行二進位化,且不使用上下文模型化而旁路寫碼mpm_idx
- 否則(prev_intra_luma_pred_flag[xPb][yPb]發信為0),亦即,非MPM用於當前PU,則進一步發信指示選擇哪一非MPM用於當前PU之索引rem_intra_luma_pred_mode[xPb][yPb]。rem_intra_luma_pred_mode[xPb][yPb]之值可為0、1、......、31,且固定長度(5個位元)二進位化供旁路寫碼使用。
如先前所論述,視訊編碼器20選擇當前PU之框內預測模式。選擇PU之框內預測模式的程序可被稱作編碼器側框內模式決策。當選擇當前PU之框內預測模式時,視訊編碼器20可選擇針對當前PU判定之三個MPM中之一者或非MPM框內預測模式中之一者。若視訊編碼 器20選擇當前PU之三個MPM中之一者作為當前PU之框內預測模式,則視訊編碼器20可在位元串流中發信當前PU之MPM索引。在JCTVC-N1003中,在座標(x,y)處具有左上方明度樣本之PU的MPM索引經指示為mpm_ind[x][y]。否則,若視訊編碼器20並不選擇當前PU之三個MPM中之一者作為當前PU之框內預測模式,則視訊編碼器20可在位元串流中發信當前PU之非MPM索引。在JCTVC-N1003中,在座標(x,y)處具有左上方明度樣本之PU的非MPM索引經指示為rem_intra_pred_mode[x][y]。此外,視訊編碼器20在位元串流中發信指示針對當前PU發信MPM索引抑或非MPM索引之語法元素。在JCTVC-N1003中,在座標(x,y)處具有左上方明度樣本之PU的此語法元素經指示為prev_intra_luma_pred_flag[x][y]。
在JCTVC-N1003中,MPM索引可僅具有三個可能的不同值,而非MPM索引可具有更多可能值。因此,相比發信非MPM索引,可需要較少位元來發信MPM索引。
為儘可能高效地選擇當前PU之框內預測模式,在HEVC參考軟體(被稱作「HM」)之設計中,已整合若干快速框內模式決策方法。HM參考軟體可自https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/tags/HM-14.0/下載。
由於存在明度區塊之多達35個可用框內預測模式,因此基於全速率-失真最佳化之編碼器模式決策對於實務實施可能耗費過大。在HM之最新版本中,框內模式決策作為兩個階段執行。在第一階段中,首先使用通常被稱為「絕對變換差和」(SATD)之耗費小得多的成本準則粗略地決定N個框內模式候選者清單。N的值取決於區塊大小,且HM中之預設設定為:對於4×4及8×8大小,N等於8,且對於16×16及更大區塊大小,N等於3。此後,左方及上方相鄰模式,亦即,candIntraPredModeA或candIntraPredModeA及candIntraPredModeB 兩者(若candIntraPredModeA不等於candIntraPredModeA)在尚未包括之情況下被附加至框內模式候選者清單。在第二階段中,將框內模式候選者清單體送至耗費大的速率-失真成本計算程序,且決定當前PU之最終的最好框內預測模式。在使用此兩階段框內模式決策程序之情況下,跳過針對大部分框內預測模式之耗費大的速率-失真成本計算,且仍選擇最好框內預測模式而無過多寫碼效能降低懲罰。
在Matsuo等人之「Improved intra angular prediction by DCT-based interpolation filte」(信號處理會議(EUSIPCO)2012年第20屆歐洲會議記錄,第1568至1572頁。IEEE,2012年)中,提議針對4×4及8×8區塊大小應用基於DCT之4分接頭內插濾波器,且當應用4分接頭濾波器時亦斷開框內平滑濾波器,針對大於或等於16×16之區塊大小,應用2分接頭雙線性內插濾波器。在2011年12月6日申請的Maani、Ehsan之美國專利申請案13/312,946「Interpolation filter for intra prediction of HEVC」中,可在框內平滑濾波器斷開時使用4分接頭內插濾波器,而4分接頭內插濾波器可基於CUBIC內插程序、基於DCT之內插程序或厄米特(Hermite)內插程序而獲得。在M.Guo、X.Guo及S.Lei之「Improved Intra Mode Coding」(ITU-T SG16 WP3及ISO/IEC JTC1/SC29/WG11之視訊寫碼聯合協作小組(JCT-VC),第4次會議:韓國大邱,2011年1月20至28日)中,框內模式之二進位化係根據其相鄰區塊之模式而自預定義寫碼樹之集合自適應性地選擇。
可存在與用於(例如)根據HEVC標準寫碼視訊資料之現存框內預測技術相關聯的數個問題。舉例而言,HEVC中之現存框內預測設計的35個固定預測角度對於俘獲非常靈活之邊緣方向分佈可為低效的。然而,應用更多預測角度可導致非所要的編碼器複雜度增加。舉例而言,相對於HEVC中之現存框內預測設計的35個固定預測角度,基於HEVC參考軟體而直接擴展至65個預測角度可能需要大致加倍數目個 SATD檢查。另外,(例如)使用HEVC中之三個MPM之當前框內模式寫碼的效率可受限制,此係因為其可能無法準確地對應於所有可用框內預測模式之實際機率分佈。換言之,在HEVC中針對特定PU判定之三個MPM實際上可能並非將最可能用於特定PU之框內預測模式。
本發明之技術可解決與用於(例如)根據HEVC標準寫碼視訊資料之現存框內預測技術相關聯的上文所識別之問題,以及在框內預測及視訊寫碼以及壓縮之技術領域中的其他問題。可個別地應用以下詳細列舉之方法。替代地,可應用其任何組合。
根據本發明之一些技術,三個以上MPM可用於發信框內預測模式。舉例而言,由M指示之MPM數目的典型實例可為4、5或6。使用額外MPM可減小使用非MPM索引發信PU之框內預測模式的機率。因為相比非MPM索引,MPM索引通常係使用較少位元表示,所以使用額外MPM可增加減小位元串流大小。
在三個以上MPM用於發信PU之框內預測模式的一些實例中,視訊編碼器20可使用諸如CABAC之熵編碼程序編碼MPM索引,且視訊解碼器30可使用諸如CABAC之熵解碼程序解碼MPM索引。PU之MPM索引可為識別MPM中之哪一者為PU之框內預測模式的數值。作為使用熵編碼程序編碼索引的部分,視訊編碼器20可對MPM索引進行二進位化。換言之,視訊編碼器20可將MPM索引轉換成二進位碼。在不同實例中,視訊編碼器20可使用各種二進位化方法將MPM索引轉換成二進位碼。舉例而言,視訊寫碼器可使用以下各者中之至少一者對MPM索引進行二進位化:固定截斷一元碼或固定霍夫曼(Huffman)碼。此外,在一些實例中,當寫碼MPM索引時,二進位化方法可為固定截斷一元碼或固定霍夫曼碼,或基於經寫碼相鄰框內模式而決定。舉例而言,視訊寫碼器可基於用以寫碼一或多個相鄰區塊之框內預測模式而判定二進位化方法。舉例而言,對於PU之MPM索引,視 訊寫碼器可基於用以寫碼鄰近於PU之一或多個相鄰區塊的框內預測模式而判定二進位化方法。在對MPM索引進行二進位化之後,視訊編碼器20可CABAC編碼經二進位化MPM索引,且將經CABAC編碼之經二進位化MPM索引包括於位元串流中。作為解碼MPM索引的部分,視訊解碼器30可自位元串流獲得經CABAC編碼之經二進位化MPM索引,將CABAC解碼應用於經CABAC編碼之經二進位化MPM索引以恢復經二進位化MPM索引,且對MPM索引進行解二進位化以恢復MPM索引。在本發明中,片語「MPM索引之二進位」可指經二進位化MPM索引之二進位。
在本發明之一些實例中,當寫碼(例如,CABAC寫碼)MPM索引之一或多個二進位時,視訊編碼器20及視訊解碼器30可使用上下文模型化。換言之,對於MPM索引之一或多個二進位中的每一各別二進位,視訊編碼器20及視訊解碼器30可選擇各別二進位之各別寫碼上下文。視訊編碼器20及視訊解碼器30可使用各別二進位之各別寫碼上下文來寫碼各別二進位。舉例而言,當寫碼MPM索引時,可使用上下文模型化來寫碼前N個或選定N個經寫碼二進位,而使用經寫碼相鄰框內預測模式來決定上下文索引。舉例而言,對於當前圖像中之PU的MPM索引,視訊寫碼器可基於用以寫碼當前圖像中鄰近於PU之一或多個相鄰PU的框內預測模式而判定上下文索引。在此實例中,N為整數。在一些各種實例中,N可等於1、2或3。因此,在一些實例中,一或多個經上下文模型化二進位由MPM索引之第一二進位組成。在其他實例中,一或多個經上下文模型化二進位由MPM索引之選定N個二進位組成,其中N設定為等於M-K,其中K為預定義數目。
在視訊編碼器20及視訊解碼器30在寫碼當前PU之MPM索引的一或多個二進位時使用上下文模型化的一個實例中,上下文索引取決於左方及上方相鄰框內預測模式之狀況。在此實例之狀況0中,左方框 內預測模式及上方框內預測模式相同,且該等框內預測模式兩者皆非DC或平面。在此實例之狀況1中,左方相鄰框內預測模式及上方相鄰框內預測模式相同,且該等框內預測模式中之至少一者為DC或平面。在此實例之狀況2中,左方相鄰框內預測模式及上方相鄰框內預測模式不同且兩者皆非平面。在此實例之狀況3中,左方相鄰框內預測模式及上方相鄰框內預測模式不同,且該等框內預測模式中之至少一者為平面。左方相鄰框內預測模式及上方相鄰框內預測模式可為當前PU左方及上方之PU的框內預測模式。在此實例中,視訊編碼器20及視訊解碼器30可基於預定義映射表而計算上下文索引,該預定義映射表自狀況索引(例如,狀況0、狀況1、狀況2或狀況3)映射至上下文索引編號。換言之,視訊寫碼器可使用狀況索引至上下文索引映射表以自狀況索引判定上下文索引。上下文索引編號可識別預定義寫碼上下文之集合中的預定義寫碼上下文。
因此,在此實例中,當視訊寫碼器選擇MPM索引之經上下文模型化二進位的上下文索引時,若用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式相同且用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式兩者皆非DC或平面,則視訊寫碼器可選擇第一上下文索引。此外,在此實例中,若用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式相同且用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式中之至少一者為DC或平面,則視訊寫碼器可選擇第二上下文索引。在此實例中,若用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式不同且用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式兩者皆非平面,則視訊寫碼器可選擇第三上下文索引。在此實例中,若用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式不同且用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式中之至少一者為DC或平面,則視訊寫碼器可選擇第四上下文索引。
在一些實例中,針對不同二進位使用不同的狀況索引至上下文索引映射表。舉例而言,諸如視訊編碼器20或視訊解碼器30之視訊寫碼器可針對MPM索引之二進位0使用第一狀況索引至上下文索引映射表,針對MPM索引之二進位1使用第二狀況索引至上下文索引映射表,針對MPM索引之二進位2使用第三狀況索引至上下文索引映射表,等等。此實例之不同狀況索引至上下文索引映射表可將不同上下文指派至上文所描述之狀況(例如,狀況0、狀況1、狀況2及狀況3)。舉例而言,描述於先前段落中之映射可適用於MPM索引之第一二進位,但對於MPM索引之第二二進位,視訊寫碼器可進行以下操作:若用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式相同且用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式兩者皆非DC或平面,則選擇第二上下文索引;若用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式相同且用以解碼左方相鄰區塊及上方相鄰區塊之框內預測模式中之至少一者為DC或平面,則選擇第三上下文索引;等等。
在視訊編碼器20及視訊解碼器30在寫碼當前PU之MPM索引的一或多個二進位時使用上下文模型化的一些實例中,僅應用一個上下文用於寫碼前N個或選定N個二進位中之每一者,且上下文可不取決於相鄰框內預測模式。舉例而言,在此等實例中,視訊編碼器20及視訊解碼器30對MPM索引執行寫碼上下文選擇程序一次,且並不針對MPM索引之後續二進位重複寫碼上下文選擇程序。換言之,視訊寫碼器可針對MPM索引之一或多個經上下文模型化二進位選擇共同上下文索引。
如上文所提及,在一些實例中,視訊編碼器20及視訊解碼器30可在寫碼MPM索引之N個經寫碼二進位時使用上下文模型化。在一個此實例中,N設定為等於(M-K),其中K為預定義數目且M為MPM之數 目。舉例而言,K可等於1、2或3。
因此,在以上實例中,視訊編碼器20可自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM。在此實例中,M大於3。此外,編碼指示最可能模式索引抑或非最可能模式索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素。MPM索引指示M個MPM中之哪一者為選定框內預測模式,非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。基於MPM索引或非MPM索引中之所指示者為MPM索引,視訊編碼器20可針對MPM索引之一或多個經上下文模型化二進位中之每一者基於用以解碼一或多個相鄰區塊之框內預測模式而選擇經上下文模型化二進位之上下文索引。視訊編碼器20可基於選定框內預測模式而編碼視訊資料區塊。
在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。在此實例中,為編碼指示MPM索引抑或非MPM索引用以指示選定框內預測模式之語法元素,視訊編碼器20可編碼指示MPM索引(例如,mpm_idx)抑或非MPM索引(例如,rem_intra_luma_pred_mode)用以指示複數個框內預測模式中用於框內預測PU之選定框內預測模式的語法元素(例如,prev_intra_luma_pred_flag)。視訊編碼器20可針對MPM索引之一或多個經上下文模型化二進位中之每一者而使用經上下文模型化二進位之選定上下文索引以執行經上下文模型化二進位之CABAC編碼。此外,作為基於選定框內預測模式而編碼視訊資料區塊的部分,視訊編碼器20可基於當前PU之選定框內預測模式而產生當前PU之預測性區塊。視訊編碼器20可產生表示當前CU與預測性區塊之間的像素差的殘餘資料。在此實例中,視訊編碼器20可輸出包括形成經寫碼圖像及 相關聯資料之表示之位元序列的位元串流,經寫碼圖像包括當前圖像。
類似地,在一些實例中,視訊解碼器30可自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM。在此實例中,M大於3。此外,視訊解碼器30可解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素。MPM索引指示M個MPM中之哪一者為選定框內預測模式,且非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。基於MPM索引或非MPM索引中之所指示者為MPM索引,視訊解碼器30可針對MPM索引之一或多個經上下文模型化二進位中之每一者基於用以解碼一或多個相鄰區塊之框內預測模式而選擇經上下文模型化二進位之上下文索引。此外,視訊解碼器30可基於選定框內預測模式而重建構視訊資料區塊。
舉例而言,在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。在此實例中,為解碼指示MPM索引抑或非MPM索引用以指示選定框內預測模式之語法元素,視訊解碼器30可自位元串流解碼指示MPM索引(例如,mpm_idx)抑或非MPM索引(例如,rem_intra_luma_pred_mode)用以指示複數個框內預測模式中用於框內預測當前PU之選定框內預測模式的語法元素(例如,prev_intra_luma_pred_flag)。在此實例中,對於MPM索引之一或多個經上下文模型化二進位中之每一者,視訊解碼器30可使用經上下文模型化二進位之選定上下文索引以執行MPM索引之經上下文模型化二進位的CABAC解碼。此外,作為基於選定框內預測模式而重建構視訊資料區塊的部分,視訊解碼器30可使用選定框內預測模式產生當前PU之預測性區塊。在此實例中,視訊解碼器30可藉由將CU之PU的預 測性區塊之樣本加至當前CU之TU的變換區塊之對應樣本而使用殘餘值重建構當前CU。在此實例中,視訊解碼器30可接收包括形成經寫碼圖像及相關聯資料之表示之位元序列的位元串流,經寫碼圖像包括當前圖像。
如上文所簡要論述,使用在HEVC中指定之三個MPM之框內預測模式寫碼的效率可受限制,此係因為在HEVC中指定之三個MPM時常無法準確地對應於所有可用框內預測模式之實際機率分佈。舉例而言,PU之框內預測模式為特定非MPM框內預測模式的機率可大於PU之框內預測模式為在HEVC中指定之三個MPM中之任一者的機率。
因此,根據本發明之一些實例,當導出MPM時,針對左方(上方)相鄰行(或列)定義代表性框內預測模式,且將該代表性框內預測模式用作來自左方(或上方)相鄰行之MPM候選者。舉例而言,視訊寫碼器可定義左方相鄰行之代表性框內預測模式,且將左方相鄰行之代表性框內預測模式用作MPM候選者。除在HEVC中針對左方相鄰區塊定義之MPM外或代替在HEVC中針對左方相鄰區塊定義之MPM(candIntraPredModeA),視訊寫碼器亦可將左方相鄰行之代表性模式用作MPM候選者。此外,視訊寫碼器可定義上方相鄰列之代表性框內預測模式,且將上方相鄰列之代表性模式用作MPM候選者。除在HEVC中針對上方相鄰區塊定義之MPM外或代替在HEVC中針對上方相鄰區塊定義之MPM(candIntraPredModeB),視訊寫碼器亦可將上方相鄰列之代表性模式用作MPM候選者。
左方相鄰行可包括在圖像中緊接在含有圖像之CU的當前PU之當前樣本的樣本行左方的樣本行。舉例而言,左方相鄰行可包括緊接在當前PU左方之每一樣本(或由每一樣本組成)。上方相鄰列可包括在圖像中緊接在含有圖像之CU的當前PU之當前樣本的樣本列上方的樣本列。舉例而言,上方相鄰列可包括緊接在當前PU上方之每一樣本(或 由每一樣本組成)。
舉例而言,作為編碼視訊資料的部分,視訊編碼器20可部分地藉由自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM而編碼視訊資料區塊。在一些實例中,M大於3。在此實例中,MPM可包括左方相鄰行之MPM及上方相鄰列之MPM。在一些實例中,視訊編碼器20定義左方相鄰行之代表性框內預測模式,且將左方相鄰行之代表性框內預測模式用作左方相鄰行之MPM。在一些實例中,視訊編碼器20定義上方相鄰列之代表性框內預測模式,且將上方相鄰列之代表性框內預測模式用作上方相鄰列之MPM。
此外,視訊編碼器20可編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素,且編碼MPM索引或非MPM索引中之所指示者。舉例而言,視訊編碼器20可將指示prev_intra_luma_pred_flag語法元素之資料包括於位元串流中,該語法元素指示位元串流是否包括指示mpm_index或rem_intra_luma_pred_mode語法元素之資料。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示框內預測模式中除M個MPM外之哪一者為選定框內預測模式。視訊編碼器20基於選定框內預測模式而編碼視訊資料區塊。
在此實例中,視訊資料區塊為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。為基於選定框內預測模式而編碼視訊資料區塊,視訊編碼器20可部分地藉由使用選定框內預測模式產生當前PU之預測性區塊而重建構視訊資料區塊。此外,視訊編碼器20可藉由將CU之PU的預測性區塊之樣本加至當前CU之TU的變換區塊之對應樣本而使用殘餘值重建構當前CU。
在選擇待用於框內預測(用於寫碼視訊資料)之框內預測模式的類 似實例中,視訊解碼器30可部分地藉由自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM而解碼視訊資料區塊。在此實例中,M可大於3。MPM可包括左方相鄰行之MPM及上方相鄰列之MPM。在一些實例中,視訊解碼器30定義左方相鄰行之代表性框內預測模式,且將左方相鄰行之代表性框內預測模式用作左方相鄰行之MPM。在一些實例中,視訊解碼器30定義上方相鄰列之代表性框內預測模式,且將上方相鄰列之代表性框內預測模式用作上方相鄰列之MPM。
此外,視訊解碼器30可解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素,且解碼最可能模式索引或非最可能模式索引中之所指示者。舉例而言,視訊解碼器30可自位元串流獲得prev_intra_pred_flag。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。
視訊解碼器30可接著基於所得選定框內預測模式而重建構視訊區塊。在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。在此實例中,作為基於所得選定框內預測模式而重建構視訊區塊的部分,視訊解碼器30可使用選定框內預測模式產生視訊區塊之預測性區塊。舉例而言,視訊區塊可為CU,且視訊解碼器30可使用選定框內預測模式產生CU之PU的預測性區塊。此外,視訊解碼器30可藉由將預測性區塊之樣本加至視訊區塊之對應殘餘樣本而重建構視訊區塊之至少一些樣本。舉例而言,視訊區塊可為CU,且視訊解碼器30可將預測性區塊之樣本加至CU之TU的一或多個變換區塊中之對應殘餘樣本。
在各種實例中,視訊寫碼器可以不同方式判定代表性框內預測模式。在一個實例中,代表性框內預測模式係依據由相鄰區塊使用之所有框內預測模式而定義。舉例而言,以最小PU大小(例如,4)為單位對實際上使用的左方(或上方)相鄰行(或列)之框內預測模式的數目進行計數,且將最常使用的一者定義為代表性框內預測模式。因此,在以上實例中,視訊編碼器20及視訊解碼器30可基於左方相鄰行之最頻繁框內預測模式而定義左方相鄰行之代表性框內預測模式,且基於上方相鄰列之最頻繁框內預測模式而定義上方相鄰行之代表性框內預測模式。
替代地,該計數係基於當前區塊之PU大小。舉例而言,視訊寫碼器可基於以下各者中之至少一者而判定相鄰區塊之最頻繁框內預測模式:(i)最小預測單元大小,或(ii)視訊資料區塊之預測單元大小。在一個實例中,替代基於最小PU大小(例如,4×4)之單位進行計數,不同單位大小可用於當前區塊之不同PU大小。舉例而言,若當前區塊之PU大小為64×64,則該計數係基於8×8 PU大小或16×16 PU大小而非最小PU大小(4×4)。
在一些實例中,代表性框內預測模式可定義為由左方(或上方)相鄰行(或列)中之選定相鄰區塊使用的框內預測模式中之一者。舉例而言,位於並非最左(最上)或最右(最下)者之左方(右方)相鄰行(列)之中間位置處的樣本(或等於最小PU大小之區塊)的框內預測模式定義為左方(或上方)相鄰模式之代表性框內預測模式。此外,在以上實例中,可基於最小預測單元大小或視訊資料區塊之預測單元大小中之至少一者而判定相鄰區塊之最頻繁框內預測模式。在另一實例中,視訊編碼器20及視訊解碼器30可將左方相鄰行之代表性框內預測模式用作由左方相鄰行中之選定相鄰區塊使用的框內預測模式,且可將上方相鄰列之代表性框內預測模式定義為由上方相鄰列中之選定相鄰區塊使用的 框內預測模式。
如上文所提及,本發明之特定實例考慮M個MPM,其中M大於3。因此,根據本發明之此等實例,視訊編碼器20可自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM。換言之,視訊編碼器20可自複數個框內預測模式當中導出用於框內預測視訊資料之當前圖像的CU之PU的M個MPM。在此實例中,M大於3。在此實例中,M小於複數個框內預測模式中之框內預測模式的總數。此外,在此實例中,視訊編碼器20可編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素。在此實例中,視訊編碼器20可編碼MPM索引或非MPM索引中之所指示者。MPM索引指示M個MPM中之哪一者為選定框內預測模式,且非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。視訊編碼器20可基於選定框內預測模式而編碼視訊資料區塊。
在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。在此實例中,視訊編碼器20可編碼指示MPM索引抑或非MPM索引用以指示選定框內預測模式之語法元素,視訊編碼器20可編碼指示MPM索引(例如,mpm_idx)抑或非MPM索引(例如,rem_intra_luma_pred_mode)用以指示複數個框內預測模式中用於框內預測PU之選定框內預測模式的語法元素(例如,prev_intra_luma_pred_flag)。此外,作為基於選定框內預測模式而編碼視訊資料區塊的部分,視訊編碼器20可基於當前PU之選定框內預測模式而產生當前PU之預測性區塊。視訊編碼器20可產生表示當前CU與預測性區塊之間的像素差的殘餘資料。在此實例中,視訊編碼器20可輸出包括形成經寫碼圖像及相關聯資料之表示之位元序列的位 元串流,經寫碼圖像包括當前圖像。
此外,根據本發明之此等實例,視訊解碼器30可自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM。在此實例中,M大於3。M可小於複數個框內預測模式中之框內預測模式的總數。此外,在此實例中,視訊解碼器30可解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素。在此實例中,視訊解碼器30可解碼MPM索引或非MPM索引中之所指示者。視訊解碼器30可基於選定框內預測模式而重建構視訊資料區塊。
舉例而言,在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。在此實例中,為解碼指示MPM索引抑或非MPM索引用以指示選定框內預測模式之語法元素,視訊解碼器30可自位元串流解碼指示MPM索引(例如,mpm_idx)抑或非MPM索引(例如,rem_intra_luma_pred_mode)用以指示複數個框內預測模式中用於框內預測當前PU之選定框內預測模式的語法元素(例如,prev_intra_luma_pred_flag)。此外,作為基於選定框內預測模式而重建構視訊資料區塊的部分,視訊解碼器30可使用選定框內預測模式產生當前PU之預測性區塊。在此實例中,視訊解碼器30可藉由將CU之PU的預測性區塊之樣本加至當前CU之TU的變換區塊之對應樣本而使用殘餘值重建構當前CU。在此實例中,視訊解碼器30可接收包括形成經寫碼圖像及相關聯資料之表示之位元序列的位元串流,經寫碼圖像包括當前圖像。
在一些實例中,當決定M(M>3)個MPM時,HEVC中定義之原始的三個MPM維持於M個MPM中,且添加額外(M-3個)框內預測模式。舉例而言,在一些實例中,可選擇額外三個框內預測模式使得平面及 DC模式始終包括於MPM中。換言之,導出M個MPM之程序可包含將平面模式及DC模式包括於M個MPM當中。
替代地,在一些實例中,可選擇額外(M-3個)框內預測模式使得平面、DC、垂直(亦即,INTRA_ANGULAR26)及/或水平(亦即,INTRA_ANGULAR10)及/或對角(亦即,INTRA_ANGULAR18)模式始終包括於MPM中。換言之,導出M個MPM之程序可包含將平面模式、DC模式以及垂直模式、水平模式或對角模式中之至少一者包括於M個MPM當中。
在一些實例中,可自最接近已包括於前三個MPM中之角度模式的角度模式中選擇額外(M-3個)框內預測模式。在此實例中,術語「最接近」係藉由框內預測模式索引之差或框內預測模式索引之差的絕對值或框內預測角度之差而量測。舉例而言,在此實例中,作為導出M個MPM的部分,視訊寫碼器(例如,視訊編碼器20或視訊解碼器30)可導出三個MPM,其中三個MPM包括至少一個角度模式。此外,在此實例中,視訊寫碼器可基於與至少角度模式之類似性而選擇一或多個額外角度MPM。在此實例中,類似性係基於框內預測模式索引差或框內預測角度差中之至少一者而判定。
根據本發明之一些實例,為了減少用於寫碼索引值之位元的數目,可在寫碼非MPM索引時包括用以寫碼索引值之位元的數目之某些變化。因此,諸如視訊編碼器20及視訊解碼器30之視訊寫碼器可判定MPM索引抑或非MPM索引正用以指示複數個框內預測模式中之選定框內預測模式,且當識別到非MPM索引時,取決於是否滿足一或多個準則,使用固定長度碼表示非MPM索引抑或使用可變長度碼表示非MPM索引。在各種實例中,視訊寫碼器可以不同方式判定各種準則。舉例而言,若非MPM索引為複數個框內預測模式之前預定數目個非MPM索引中的一者,則準則可滿足。在一些實例中,若非 MPM索引為後預定數目個非MPM索引中之一者,則準則滿足。在一些實例中,若非MPM索引為預定數目個選定非MPM索引中之一者,則準則滿足。
因此,根據本發明之一個實例,視訊編碼器20可自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個最可能模式。在此實例中,M可大於3。此外,視訊編碼器20可編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素。此外,在此實例中,視訊編碼器20可基於語法元素指示非MPM索引用以指示選定框內預測模式而編碼非MPM索引。在此實例中,若非MPM索引滿足準則,則非MPM索引可在位元串流中編碼為短於log2 N 個位元之碼字,且否則編碼為具有log2 N 個位元之固定長度碼。在此實例中,可存在非MPM索引之總計N個可用值。此外,視訊編碼器20可基於選定框內預測模式而編碼視訊資料區塊。在本發明中,表示升值捨位運算。
在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式可為當前CU之當前PU的選定框內預測模式。此外,在此實例中,為編碼指示MPM索引抑或非MPM索引用以指示選定框內預測模式之語法元素,視訊編碼器20可將指示語法元素(例如,prev_intra_luma_pred_flag)之資料包括於位元串流中,該語法元素指示MPM索引(例如,mpm_idx)抑或非MPM索引(例如,rem_intra_luma_pred_mode)用以指示複數個框內預測模式中用於當前PU之選定框內預測模式。此外,在一些此等實例中,為基於選定框內預測模式而編碼視訊資料區塊,視訊編碼器20可使用選定框內預測模式產生PU之預測性區塊,且視訊編碼器20可產生表示當前CU與預測性區塊之間的像素差的殘餘資料。在一些實例中,視訊編碼器20可變換及量化殘餘資料,且將表示所得經量化變換係數之經 熵編碼語法元素包括於位元串流中。
在一個實例中,若非MPM索引為複數個框內預測模式之前預定數目個非MPM索引中的一者,則準則可滿足。舉例而言,對於非MPM模式,編碼器及解碼器兩者可將索引值指派至可用非MPM模式中之每一者。藉由經解碼索引值,解碼器將知曉哪一非MPM模式經發信。在一個實例中,當非MPM索引為前M個索引值中之一者時,非MPM索引可在0~(M-1)之範圍內。在另一實例中,若非MPM索引為後預定數目個非MPM索引中之一者,則準則可滿足。在另一實例中,若非MPM索引為預定數目個選定非MPM索引中的一者,則準則可滿足。
在類似實例中,視訊解碼器30可自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM。在此實例中,M可大於3。此外,在此實例中,視訊解碼器30可解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素。如前所述,MPM索引指示M個最可能模式中之哪一者為選定框內預測模式,且非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。此外,在此實例中,基於MPM索引指示選定框內預測模式,視訊解碼器30可解碼非MPM索引。在此實例中,若非MPM索引滿足準則,則非MPM索引可在位元串流中編碼為短於log2 N 個位元之碼字,且否則在位元串流中編碼為具有log2 N 個位元之固定長度碼。在此實例中,存在非MPM索引之總計N個可用值。視訊解碼器30可基於選定框內預測模式而重建構視訊資料區塊。
在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式可為當前CU之當前PU的選定框內預測模式。此外,在此實例中,為解碼指示MPM索引抑或非 MPM索引用以指示用於框內預測當前PU之選定框內預測模式之語法元素,視訊解碼器30可自位元串流解碼或以其他方式獲得指示MPM索引(例如,mpm_idx)抑或非MPM索引(例如,rem_intra_luma_pred_mode)用以指示當前PU之選定框內預測模式的語法元素(例如,prev_intra_luma_pred_flag)。此外,在一些實例中,作為基於選定框內預測模式而重建構視訊資料區塊的部分,視訊解碼器30可使用選定框內預測模式產生當前PU之預測性區塊。在此等實例中,視訊解碼器30可藉由將CU之PU的預測性區塊之樣本加至當前CU之TU的變換區塊之對應樣本而使用殘餘值重建構當前CU。
在一個實例中,若非MPM索引為複數個框內預測模式之前預定數目個非MPM索引中的一者,則準則可滿足。舉例而言,準則可為:非MPM索引為複數個框內預測模式之前X個非MPM索引中之一者,X為整數。在另一實例中,若非MPM索引為後預定數目個非MPM索引中之一者,則準則可滿足。舉例而言,準則可為:非MPM索引為複數個框內預測模式之後X個非MPM索引中之一者,X為整數。在另一實例中,若非MPM索引為預定數目個選定非MPM索引中的一者,則準則可滿足。舉例而言,準則可為:非MPM索引為複數個框內預測模式之X個選定非MPM索引中之一者,X為整數。
因此,當寫碼非MPM索引(除前M個或後M個或選定M個外之所有可用N個非MPM索引)時,可使用具有log2 N 個位元之固定長度碼來寫碼索引值,而使用短於log2 N 個位元之碼字來發信M個索引值。在此實例中,M可等於或可不等於MPM之數目。替代地,使用具有log2 N 個位元之固定長度碼來寫碼所有可用N個非MPM索引。
替代地,在一些實例中,首先藉由上下文模型化而發信指示非MPM索引是否參考水平或垂直模式之一位元旗標,接著進一步發信進一步指定選擇了哪一非MPM之索引。因此,在此實例中,視訊編 碼器20可基於語法元素(例如,prev_intra_luma_pred_flag)指示非MPM索引(例如,rem_intra_luma_pred_mode)用以指示視訊資料區塊之選定框內預測模式而編碼指示非MPM索引是否參考水平模式或垂直模式中之一者的語法元素。類似地,視訊解碼器30可基於語法元素(例如,prev_intra_luma_pred_flag)指示使用非MPM索引而自位元串流解碼指示非MPM索引是否參考水平模式或垂直模式中之一者的第二語法元素。
在一些實例中,當三個以上MPM用於發信框內預測模式時,在編碼器模式決策期間,對於每一PU,將前K(K>=2)個MPM插入至待利用位元率-失真最佳化檢查中之候選框內預測模式清單中。K的值可取決於左方相鄰框內預測模式IntraModeL與上方相鄰框內預測模式IntraModeA是否相同。舉例而言,K=(IntraModeL==IntraModeA)?2:3。換言之,在此實例中,若IntraModeL等於IntraModeA,則將K設定為等於2,否則設定為等於3。
在一些實例中,MPM之數目可取決於CU或PU大小。舉例而言,MPM之數目對於較大CU或PU大小可較大。替代地,在一些實例中,可在序列參數集、圖像參數集或截塊標頭中發信MPM之數目。
根據本發明之一些實例,諸如視訊編碼器20及視訊解碼器30之視訊寫碼器可使用33個以上角度框內預測模式。舉例而言,視訊寫碼器可使用65個角度模式。在此實例中,65個預測角度(方向)可經定義使得以1/32像元(像素)準確度執行內插。如上文所論述,當使用角度框內預測模式編碼PU時,視訊寫碼器可藉由沿與角度框內預測模式相關聯之預測方向投影PU之預測性區塊的樣本之座標而判定兩個經重建構相鄰樣本之間的分數位置。當以1/32像元準確度執行內插時,在兩個鄰近經重建構相鄰像素之間定義31個等距位置,且視訊寫碼器將經判定分數位置設定為經重建構相鄰像素或31個位置中之最接近 者。使用有限數目個位置而非實數線可簡化執行內插計算中所涉及之處理。如上文所簡要描述,不管33個以上角度框內預測模式可用而使用1/32像元準確度執行內插可提高準確度,同時將複雜度等級保持為相同。詳言之,為以提高之準確度執行內插,將需要設計增加數目個不同內插濾波器且將其儲存於編碼器及解碼器兩者處。因此,例如,藉由避免需要提高內插準確度,視訊寫碼器之複雜度(仍利用僅32個不同內插濾波器)在使用1/32像元內插的情況下可保持相同。
因此,在使用33個以上角度框內預測模式(例如,使用65個角度框內預測模組)且以1/32像元準確度執行內插的以上實例中,作為編碼視訊資料區塊的部分,視訊編碼器20可編碼指示來自包括33個以上角度框內預測模式之複數個框內預測模式當中用於視訊資料區塊之選定框內預測模式的語法資訊(例如,mpm_idx或rem_intra_luma_pred_mode)。在此實例中,角度框內預測模式經定義使得以1/32像元準確度執行內插。此外,在此實例中,視訊編碼器20可基於選定框內預測模式而編碼視訊資料區塊。
在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。此外,在此實例中,作為編碼視訊資料區塊的部分,視訊編碼器20可針對當前PU之預測性區塊的每一各別樣本判定當前圖像之兩個相鄰經重建構樣本之間的分數位置。圖5為說明用於根據角度框內預測模式產生視訊資料區塊之預測樣本之實例技術的概念圖。舉例而言,在圖5之實例中,視訊編碼器20可判定相鄰樣本L與R之間的分數位置α。兩個相鄰經重建構樣本與當前PU相鄰。視訊編碼器20可藉由沿與選定框內預測模式相關聯之預測方向將各別樣本之座標投影至含有兩個相鄰經重建構樣本之相鄰經重建構樣本列或行而判定分數位置。舉例而言,在圖5之實例中,線60展示與選定框內預測 模式相關聯之預測方向,且(x,y)為各別樣本62之座標。在此實例中,視訊編碼器20可使用內插濾波器計算各別樣本之預測值,該內插濾波器使用兩個相鄰經重建構樣本之值在經判定分數位置處內插值。此內插係以1/32像元準確度進行。另外,在此實例中,作為編碼視訊資料區塊的部分,視訊編碼器20可產生表示當前區塊與預測性區塊之間的像素差的殘餘資料。視訊編碼器20可變換及量化殘餘資料,且將表示所得經量化變換係數之經熵編碼語法元素包括於位元串流中。
類似地,在一個實例中,視訊解碼器30可解碼指示複數個框內預測模式當中用於視訊資料區塊之選定框內預測模式的語法資訊(例如,mpm_idx或rem_intra_luma_pred_mode)。在此實例中,複數個框內預測模式包括33個以上角度框內預測模式。角度框內預測模式可經定義使得以1/32像元準確度執行內插。視訊解碼器30可基於選定框內預測模式而重建構視訊資料區塊。
因此,在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式可為當前CU之當前PU的選定框內預測模式。作為重建構視訊資料區塊的部分,針對當前PU之預測性區塊的每一各別樣本,視訊解碼器30可藉由沿與選定框內預測模式相關聯之預測方向將各別樣本之座標投影至含有當前圖像之兩個相鄰經重建構樣本之相鄰經重建構樣本列或行而判定兩個相鄰經重建構樣本之間的分數位置。另外,視訊解碼器30可使用內插濾波器計算各別樣本之預測值,該內插濾波器使用兩個相鄰經重建構樣本之值在經判定分數位置處內插值。在此實例中,此內插係以1/32像元準確度進行。視訊解碼器30可藉由將CU之PU的預測性區塊之樣本加至當前CU之TU的變換區塊之對應樣本而使用殘餘值重建構當前CU之寫碼區塊。
在以上實例中,視訊編碼器20及視訊解碼器30可使用33個以上 角度框內預測模式。舉例而言,複數個角度框內預測模式可包括65個角度框內預測模式。此外,在以上實例中,內插濾波器可為兩分接頭雙線性內插濾波器。在一些此等實例中,將內插濾波器公式化為:pxy=(1-α).L+α.R
其中pxy為各別樣本之經計算值,L及R為兩個經重建構相鄰樣本之值,且α為經判定分數位置。
如上文所指示,根據本發明之一些實例,視訊寫碼器可使用33個以上角度框內預測模式。在一個此實例中,對於每一PU,限制僅N個角度模式可供使用,該等角度模式係使用左方及上方相鄰區塊之經寫碼資訊而自所有可用角度模式自適應性地選擇。舉例而言,在此實例中,當編碼圖像之區塊(例如,PU)時,禁止(亦即,限制)視訊編碼器20選擇特定角度框內預測模式。在此實例中,不管特定角度框內預測模式可供視訊編碼器20用於編碼同一圖像之其他區塊且不管特定角度框內預測模式相比允許視訊編碼器20用於編碼區塊之角度框內預測模式可提供較好壓縮效能的事實,可禁止視訊編碼器20選擇特定角度框內預測模式。
因此,在僅N個角度框內預測模式可供使用之實例中,視訊編碼器20及視訊解碼器30可基於用以解碼一或多個相鄰區塊之框內預測模式而自複數個角度框內預測模式當中選擇N個角度框內預測模式之子集。在此實例中,指示當前PU之選定框內預測模式的語法資訊可包含指示選定框內預測模式之索引。在此實例中,索引為由log2 N 個位元組成之固定長度碼。在此實例中,N可為各種整數,諸如33。
在一些實例中,總體框內預測模式之數目取決於CU或PU大小。舉例而言,視訊寫碼器(例如,視訊編碼器20或視訊解碼器30)可基於CU大小或PU大小中之至少一者而判定複數個框內預測模式中之框內預測模式的總數。舉例而言,若CU大小或PU大小小於特定臨限值, 則僅具有小於特定數目之索引值的角度框內預測模式可用。在一些實例中,可在SPS、PPS或截塊標頭中發信框內預測模式之總數。
如上文所論述,視訊編碼器20及視訊解碼器30可將內插濾波器應用於經重建構相鄰樣本以判定預測性區塊中之樣本的值。根據本發明之一些技術,可應用N分接頭框內內插濾波器,其中N大於2。舉例而言,N可為3及4。當諸如視訊編碼器20或視訊解碼器30之視訊寫碼器使用N分接頭框內內插濾波器以判定預測性區塊中之樣本的值時,視訊寫碼器可基於N個經重建構相鄰樣本之值而計算該值。使用N分接頭(N>2)內插可優於現存2分接頭內插,此係因為其可藉由在內插期間包括更多參考樣本(N個參考樣本)而提供更準確的內插結果。在統計上,使用更多參考樣本將引入較好內插準確度與較高複雜度。N分接頭框內內插濾波器可包括辛克(sinc)內插濾波器、高斯(Gaussian)內插濾波器及使用影像相關模型導出之內插濾波器。辛克濾波器移除高於給定截止頻率之所有頻率分量而不影響低頻,且具有線性相位回應。因此,N分接頭內插濾波器可包含辛克內插濾波器、高斯內插濾波器及使用影像相關模型導出之內插濾波器中的至少一者。
以此方式,視訊編碼器20可編碼指示複數個框內預測模式當中用於視訊資料區塊之選定框內預測模式的語法資訊。舉例而言,視訊編碼器20可在位元串流中發信當前PU之mpm_idx或rem_intra_luma_pred_mode語法元素。此外,視訊編碼器20可根據選定框內預測模式而將N分接頭框內內插濾波器應用於視訊資料區塊之相鄰經重建構樣本,其中N大於2。視訊編碼器20可應用N分接頭框內內插濾波器以判定可對應於全像元相鄰經重建構樣本之間的位置的經濾波的相鄰經重建構樣本。視訊編碼器20可根據選定框內預測模式基於經濾波的相鄰經重建構樣本而編碼視訊資料區塊。舉例而言,視訊編碼器20可使用經濾波的相鄰經重建構樣本產生預測性區塊,且基於 預測性區塊而產生視訊資料區塊之殘餘資料。
在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。此外,在此實例中,針對當前PU之預測區塊的每一各別樣本,視訊編碼器20可藉由沿與選定框內預測模式相關聯之預測方向將各別樣本之座標投影至含有兩個相鄰經重建構樣本之相鄰經重建構樣本列或行而判定相鄰經重建構樣本集合中之兩個相鄰經重建構樣本之間的分數位置。相鄰經重建構樣本集合包括當前圖像中在當前PU上方及左方之經重建構樣本。此外,視訊編碼器20可藉由將N分接頭框內內插濾波器應用於相鄰經重建構樣本以在經判定分數位置處內插值而計算各別樣本之值,其中N大於2。作為基於經濾波的相鄰經重建構樣本而編碼視訊資料區塊的部分,視訊編碼器20可產生表示當前CU與預測性區塊之間的像素差的殘餘資料。視訊編碼器20可變換及量化殘餘資料,且將表示所得經量化變換係數之經熵編碼語法元素包括於位元串流中。
類似地,視訊解碼器30可解碼指示複數個框內預測模式當中用於視訊資料區塊之選定框內預測模式的語法資訊。舉例而言,視訊解碼器30可自位元串流獲得mpm_idx或rem_intra_luma_pred_mode語法元素。此外,視訊解碼器30可根據選定框內預測模式而將N分接頭框內內插濾波器應用於視訊資料區塊之相鄰經重建構樣本,其中N大於2。此外,視訊解碼器30可根據選定框內預測模式基於經濾波的相鄰經重建構樣本而重建構視訊資料區塊。
在此實例中,視訊資料區塊可為視訊資料之當前圖像中的當前CU,且視訊資料區塊之選定框內預測模式為當前CU之當前PU的選定框內預測模式。在此實例中,針對當前PU之預測性區塊的每一各別樣本,視訊解碼器30可藉由沿與選定框內預測模式相關聯之預測方向 將各別樣本之座標投影至含有兩個相鄰經重建構樣本之相鄰經重建構樣本列或行而判定相鄰經重建構樣本集合中之兩個相鄰經重建構樣本之間的分數位置。相鄰經重建構樣本集合包括當前圖像中在當前PU上方及左方之經重建構樣本。視訊解碼器30可藉由將N分接頭框內內插濾波器應用於相鄰經重建構樣本以在經判定分數位置處內插值而計算各別樣本之預測值,其中N大於2。在此實例中,作為重建構視訊資料區塊(例如,當前CU)的部分,視訊解碼器30可藉由將CU之PU的預測性區塊之樣本加至當前CU之TU的變換區塊之對應樣本而使用殘餘值重建構當前CU之寫碼區塊。
當使用影像相關模型導出內插濾波器時,可應用基於廣義高斯函數之影像相關函數,且進一步使用最小均方估計導出用於每一分數位置之內插函數。舉例而言,當使用影像相關模型導出內插濾波器時,假定影像相關模型為R(i,i)=ρx |i|.ρy |j|,其中i及j指示兩個影像樣本之間在水平及垂直軸線上的距離,ρx為在水平方向上之影像相關因子,ρy為在垂直方向上之影像相關因子,ρx及ρy兩者可在[0,1]之範圍內,意謂較大影像距離輸出較小相關度。在另一實例中,假定存在四個樣本a、b、c及d,且待內插分數樣本e。為導出所要內插濾波器[f0,f1,f2,f3],內插程序[a,b,c,d] * [f0 f1,f2,f3]T=[e]可重寫為A * F=E,其中A=[a,b,c,d]、F=[f0 f1,f2,f3]T且E=[e]。根據最小均方估計,最佳濾波器F為F*=(AT*A)-1*ATE,且「(AT*A)-1*ATE」可由所假定的影像相關模型判定。因此,在使用影像相關模型之情況下,可使用最小均方估計導出用於每一分數樣本之內插濾波器。
因此,在視訊寫碼器使用影像相關模型導出框內內插濾波器之一些實例中,視訊寫碼器可基於廣義高斯函數而應用影像相關函數。另外,視訊寫碼器可使用最小均方估計導出用於每一分數位置之內插函數。
在一些實例中,當視訊寫碼器應用高斯內插濾波器時,控制濾波器之平滑強度的參數可取決於區塊大小而變化。因此,在此等實例中,框內內插濾波器可包含高斯內插濾波器,且控制高斯內插濾波器之平滑強度的參數基於區塊大小而變化。舉例而言,高斯內插濾波器可公式化為:,其中G(x,σ),x指示分數位置且σ控制平滑強度。因此,較大σ值產生具有增加之平滑強度的高斯內插濾波器。
此外,在一些實例中,視訊寫碼器可選擇將應用之內插濾波器。在此等實例中,濾波器之選擇可取決於區塊大小及區塊內之相對樣本位置。因此,在此等實例中,視訊寫碼器可基於區塊大小或區塊內之相對樣本位置中的至少一者而選擇框內內插濾波器。舉例而言,假定已設計一組不同的內插濾波器,即,f1、f2、......fy,則不同內插濾波器可用於當前區塊內之不同像素位置。舉例而言,內插濾波器f1可用於當前區塊內之前兩列像素,且內插濾波器f2可用於剩餘列像素。
不同內插濾波器可用於框內預測單一區塊,且可顯式地發信或自包括經重建構樣本值及框內預測模式之相鄰經解碼資訊導出內插濾波器之選擇。因此,在此等實例中,視訊寫碼器可基於相鄰區塊之經重建構樣本值或框內預測模式中的至少一者而選擇框內內插濾波器。舉例而言,假定已設計一組不同的內插濾波器,即,f1、f2、......fy,則不同內插濾波器可用於不同框內預測模式。舉例而言,內插濾波器f1可用於對角框內預測模式,且內插濾波器f2可用於垂直框內預測模式。
根據本發明之一些實例,多個框內預測方向可允許用於一個PU而無需多個框內預測模式之額外發信。舉例而言,視訊解碼器30可解 碼指示複數個框內預測模式當中用於視訊資料區塊(例如,PU)之選定框內預測模式的語法資訊。此外,視訊解碼器30可在不解碼指示額外框內預測模式之額外語法資訊的情況下判定區塊之一或多個額外框內預測模式。在此實例中,視訊解碼器30可根據選定框內預測模式及一或多個額外框內預測模式而重建構視訊資料區塊。舉例而言,視訊解碼器30可基於含有區塊之CU之殘餘資料以及基於選定框內預測模式及一或多個額外框內預測模式產生之區塊的預測性區塊而重建構CU。
在多個框內預測方向允許用於一個PU而無需多個框內預測模式之額外發信的一些實例中,PU包含複數個子區塊且PU內之每一子區塊可具有其自身的框內預測模式。在此實例中,PU內之子區塊為4×4區塊。以此方式,在一個實例中,作為上文所提及的判定視訊資料區塊之一或多個額外框內預測模式的部分,視訊解碼器30可在不解碼指示額外框內預測模式之額外語法資訊的情況下針對視訊資料區塊之複數個子區塊中之每一者判定各別框內預測模式。此外,在此實例中,作為重建構視訊資料區塊的部分,視訊解碼器30可根據各別經判定框內預測模式重建構子區塊。
此外,在一些實例中,可導出一個子區塊之框內預測方向作為最接近的上方或左方參考區塊之框內預測模式。以此方式,作為針對視訊資料區塊之複數個子區塊中之每一者判定各別框內預測模式的部分,視訊解碼器30可導出子區塊中之至少一者的各別框內預測模式作為最接近的上方或左方參考區塊之框內預測模式。在一些實例中,對於當前PU之每一子區塊,預測為來自上方參考列及左方參考行中之最接近區塊的兩個預測方向之加權和。以此方式,作為針對視訊資料區塊之複數個子區塊中之每一者判定各別框內預測模式的部分,視訊解碼器30可基於上方參考區塊及左方參考區塊中之一者或兩者而導出 子區塊中之至少一者的各別框內預測模式。
類似地,作為編碼視訊資料的程序之部分,視訊編碼器20可編碼指示複數個框內預測模式當中用於視訊資料區塊(例如,PU)之選定框內預測模式的語法資訊。視訊編碼器20可在不編碼指示額外框內預測模式之額外語法資訊的情況下判定視訊資料區塊之一或多個額外框內預測模式。視訊編碼器20可根據選定框內預測模式及一或多個額外框內預測模式而編碼視訊資料區塊。在一些實例中,作為判定視訊資料區塊之一或多個額外框內預測模式的部分,視訊編碼器20可在不編碼指示額外框內預測模式之額外語法資訊的情況下針對視訊資料區塊之複數個子區塊中之每一者判定各別框內預測模式,且作為編碼視訊資料區塊的部分,視訊編碼器20可根據各別經判定框內預測模式而編碼子區塊。在一些實例中,作為針對視訊資料區塊之複數個子區塊中之每一者判定各別框內預測模式的部分,視訊編碼器20可導出子區塊中之至少一者的各別框內預測模式作為最接近的上方或左方參考區塊之框內預測模式。在一些實例中,作為針對視訊資料區塊之複數個子區塊中之每一者判定各別框內預測模式的部分,視訊編碼器20可基於上方參考區塊及左方參考區塊中之一者或兩者而導出子區塊中之至少一者的各別框內預測模式。
如上文所提及,視訊編碼器20可執行決定為PU選擇哪一框內預測模式之程序。因為針對HEVC中之所有35個可用框內預測模式執行全速率-失真最佳化程序在一些情況下可為不切實際的,所以視訊編碼器20可藉由使用「絕對變換差和」(SATD)準則檢查框內預測模式而判定N個框內預測模式之清單。當如在本發明之一些實例中的狀況,35個以上框內預測模式可用時,甚至使用SATD準則檢查框內預測模式仍可變得過於耗時或資源密集的。
因此,根據本發明之實例,為減少(例如,大大減少)在視訊編碼 器20處針對框內角度預測之SATD檢查的數目,提議K級SATD檢查方案。在此實例中,K大於2。在此實例中,對於SATD檢查之每一級,可依據SATD成本檢查來自框內預測角度之預定義子集的選定數目個框內預測模式。舉例而言,在SATD檢查之第一級中,視訊編碼器20可依據SATD成本檢查來自框內預測模式之預定義子集的框內預測角度中之每一者,且可決定最好的N個框內預測模式。在此實例中,取決於區塊大小,N為預定義恆定值。此後,對於SATD檢查之每一剩餘級,視訊編碼器20僅檢查就預測角度差而言接近在先前級中依據SATD成本決定之最好的N個框內預測模式的框內預測角度,且視訊編碼器20針對下一級決定最好的N個框內預測模式。
在一個實例中,當應用所提議的65個角度模式時,視訊編碼器20應用兩級SATD檢查方案以決定在編碼器側將依據更高效成本準則(例如,速率-失真(R-D)成本)進一步檢驗框內預測模式中之哪一者。在第一級中,視訊編碼器20依據SATD成本僅檢查如HEVC中所定義之原始35個框內預測模式,包括平面、DC及33個角度模式,接著決定最好的N個(N可與HEVC參考軟體中所使用相同)框內預測模式。在第二級中,視訊編碼器20進一步依據SATD成本僅檢查為最好的N個角度模式之直接相鄰者(角度模式索引±1)(亦即,鄰近於該等角度模式)的框內角度模式。視訊編碼器20可決定進一步依據R-D成本檢查最終最好的N個框內預測模式。
因此,在一些實例中,視訊編碼器20可根據框內預測模式之第一子集中之每一者判定編碼視訊資料區塊之各別SATD成本。另外,視訊編碼器20可基於框內預測模式之第一子集的經判定SATD成本而判定框內預測模式之第二子集。視訊編碼器20可根據框內預測模式之第二子集中之每一者判定編碼視訊資料區塊之各別SATD成本。此外,視訊編碼器20可基於框內預測模式之第一子集及第二子集的經判 定SATD成本而選擇框內預測模式中之一者。視訊編碼器20可根據框內預測模式中之選定者編碼視訊資料區塊。
在此實例中,作為基於框內預測模式之第一子集的經判定SATD成本判定框內預測模式之第二子集的部分,視訊編碼器20可識別框內預測模式之第一子集中具有經判定SATD成本中之最低N個成本的N個框內預測模式。視訊編碼器20可將框內預測角度接近於所識別N個框內預測模式之框內預測角度的框內預測模式包括於框內預測模式之第二子集中。作為將框內預測角度接近於所識別N個框內預測模式之框內預測角度的框內預測模式包括於框內預測模式之第二子集中的部分,視訊編碼器20可將框內預測角度鄰近於所識別N個框內預測模式之框內預測角度的框內預測模式包括於框內預測模式之第二子集中。
此外,在一些實例中,作為基於框內預測模式之第一子集及第二子集的經判定SATD成本而選擇框內預測模式中之一者的部分,視訊編碼器20可識別框內預測模式之第一子集及第二子集中具有經判定SATD成本中之最低N個成本的N個框內預測模式。在此實例中,視訊編碼器20可針對所識別N個框內預測模式中之每一者判定各別速率-失真成本。此外,在此實例中,視訊編碼器20可基於經判定速率-失真成本而選擇所識別N個框內預測模式中之一者。
在關於SATD檢查之本發明的實例中,N的值取決於視訊資料區塊之區塊大小。此外,在一些此等實例中,框內預測模式之第一子集可包括平面框內預測模式、DC框內預測模式及33個角度預測模式。
在關於SATD檢查之本發明的一些實例中,框內預測模式之第一子集及第二子集包含框內預測模式之K個子集中的第一者及第二者,且K大於或等於2。在此等實例中,對於框內預測模式之K個子集中的每一當前子集,視訊編碼器20可根據框內預測模式之當前子集中的每一框內預測模式而判定編碼視訊資料區塊之各別SATD成本。另外, 視訊編碼器20可基於框內預測模式之當前子集的經判定SATD成本而判定框內預測模式之K個子集中的下一子集。
圖6為說明可實施本發明之技術的實例視訊編碼器20之方塊圖。出於解釋之目的而提供圖6,且不應將該圖視為對如本發明中所廣泛例示及描述之技術的限制。本發明之技術可適用於多種寫碼標準或方法中之任一者。
在圖6之實例中,視訊編碼器20包括預測處理單元100、視訊資料記憶體101、殘餘產生單元102、變換處理單元104、量化單元106、反量化單元108、反變換處理單元110、重建構單元112、濾波器單元114、經解碼圖像緩衝器116及熵編碼單元118。預測處理單元100包括框間預測處理單元120及框內預測處理單元126。框間預測處理單元120包括運動估計(ME)單元122及運動補償(MC)單元124。在其他實例中,視訊編碼器20可包括更多、更少或不同功能組件。
視訊資料記憶體101可儲存待由視訊編碼器20之組件編碼的視訊資料。可(例如)自視訊源18獲得儲存於視訊資料記憶體101中之視訊資料。經解碼圖像緩衝器116可為儲存用於由視訊編碼器20在(例如)以框內或框間寫碼模式編碼視訊資料時使用之參考視訊資料的參考圖像記憶體。視訊資料記憶體101及經解碼圖像緩衝器116可由多種記憶體裝置中之任一者形成,諸如動態隨機存取記憶體(DRAM),包括同步DRAM(SDRAM)、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其他類型之記憶體裝置。可藉由相同記憶體裝置或單獨記憶體裝置來提供視訊資料記憶體101及經解碼圖像緩衝器116。
視訊編碼器20可接收視訊資料。視訊編碼器20可編碼視訊資料之圖像之截塊中的每一CTU。CTU中之每一者可與相等大小之明度寫碼樹型區塊(CTB)及圖像之對應CTB相關聯。作為編碼CTU的部分,預測處理單元100可執行四分樹分割以將CTU之CTB劃分成逐漸較小 的區塊。該等較小區塊可為CU之寫碼區塊。舉例而言,預測處理單元100可將與CTU相關聯的CTB分割成四個相等大小的子區塊,將子區塊中之一或多者分割成四個相等大小的子子區塊,等等。
視訊編碼器20可編碼CTU之CU以產生該等CU之經編碼的表示(亦即,經寫碼CU)。作為編碼CU的部分,預測處理單元100可分割與CU之一或多個PU中的CU相關聯之寫碼區塊。因此,每一PU可與明度預測區塊及對應的色度預測區塊相關聯。視訊編碼器20及視訊解碼器30可支援具有各種大小之PU。如上文所指示,CU之大小可指CU之明度寫碼區塊的大小且PU之大小可指PU之明度預測區塊的大小。假定特定CU之大小為2N×2N,則視訊編碼器20及視訊解碼器30可支援用於框內預測的2N×2N或N×N之PU大小,及用於框間預測的2N×2N、2N×N、N×2N、N×N或類似大小之對稱PU大小。視訊編碼器20及視訊解碼器30亦可支援用於框間預測的2N×nU、2N×nD、nL×2N及nR×2N之PU大小的非對稱分割。
框間預測處理單元120可藉由對CU之每一PU執行框間預測而產生PU之預測性資料。PU之預測性資料可包括PU之預測性區塊及PU之運動資訊。框內預測處理單元126可藉由對PU執行框內預測而產生PU之預測性資料。PU之預測性資料可包括PU之預測性區塊及各種語法元素。框內預測處理單元126可對I截塊、P截塊及B截塊中之PU執行框內預測。
為對PU執行框內預測,框內預測處理單元126可使用多個框內預測模式以產生PU之預測性區塊的多個集合。當使用特定框內預測模式執行框內預測時,框內預測處理單元126可使用來自相鄰區塊之樣本的特定集合產生PU之預測性區塊。假定對於PU、CU及CTU採用自左向右、自上而下的編碼次序,則鄰近區塊可在PU之預測區塊的上方、右上方、左上方或左方。框內預測處理單元126可使用各種數目 個框內預測模式,例如,DC、平面或方向/角度預測模式,如本文中所描述。在一些實例中,框內預測模式之數目可取決於PU之預測區塊的大小。
預測處理單元100可自由框間預測處理單元120產生的PU之預測性資料或由框內預測處理單元126產生的PU之預測性資料當中選擇CU之PU的預測性資料。在一些實例中,預測處理單元100基於數個預測性資料集合之速率/失真量度而選擇CU之PU的預測性資料。選定預測性資料之預測性區塊在本文中可被稱作選定預測性區塊。
殘餘產生單元102可基於CU之明度寫碼區塊、Cb寫碼區塊及Cr寫碼區塊及CU之PU的選定預測性明度區塊、預測性Cb區塊及預測性Cr區塊而產生CU之明度殘餘區塊、Cb殘餘區塊及Cr殘餘區塊。舉例而言,殘餘產生單元102可產生CU之殘餘區塊,使得殘餘區塊中之每一樣本的值等於CU之寫碼區塊中的樣本與CU之PU之對應選定預測性樣本區塊中的對應樣本之間的差。
變換處理單元104可執行四分樹分割以將CU之殘餘區塊分割成與CU之TU相關聯的變換區塊。因此,TU可與明度變換區塊及兩個對應色度變換區塊相關聯。CU之TU之明度及色度變換區塊的大小及位置可基於或可不基於CU之PU之預測區塊的大小及位置。
變換處理單元104可藉由將一或多個變換應用於TU之變換區塊而產生CU之每一TU的變換係數區塊。變換處理單元104可將各種變換應用至與TU相關聯的變換區塊。舉例而言,變換處理單元104可將離散餘弦變換(DCT)、定向變換或概念上類似之變換應用於變換區塊。在一些實例中,變換處理單元104並不將變換應用於變換區塊。在此等實例中,變換區塊可被視為變換係數區塊。
量化單元106可量化係數區塊中之變換係數。量化程序可減少與變換係數中之一些或全部相關聯的位元深度。舉例而言,n位元變換 係數可在量化期間被降值捨位至m位元變換係數,其中n大於m。量化單位106可基於與CU相關聯之量化參數(QP)值量化與CU之TU相關聯之係數區塊。視訊編碼器20可藉由調整與CU相關聯之QP值來調整應用於與CU相關聯之係數區塊的量化程度。量化可引入資訊之損失,因此經量化變換係數可具有比原始變換係數低之精確度。
反量化單元108及反變換處理單元110可分別將反量化及反變換應用於係數區塊,以自係數區塊重建構殘餘區塊。重建構單元112可將經重建構之殘餘區塊加至來自由預測處理單元100所產生之一或多個預測性區塊的對應樣本,以產生與TU相關聯的經重建變換區塊。藉由以此方式重建構CU之每一TU的變換區塊,視訊編碼器20可重建構CU之寫碼區塊。
濾波器單元114可執行一或多個解區塊操作以減少與CU相關聯之寫碼區塊中的區塊假影。在濾波器單元114對經重建構寫碼區塊執行一或多個解區塊操作之後,經解碼圖像緩衝器116可儲存經重建構寫碼區塊。框間預測處理單元120可使用含有經重建構寫碼區塊之參考圖像,以對其他圖像之PU執行框間預測。此外,框內預測處理單元126可使用經解碼圖像緩衝器116中之經重建構寫碼區塊,以對處於與CU相同之圖像中的其他PU執行框內預測。
熵編碼單元118可自視訊編碼器20之其他功能組件接收資料。舉例而言,熵編碼單元118可自量化單元106接收係數區塊,且可自預測處理單元100接收語法元素。熵編碼單元118可對資料執行一或多個熵編碼操作以產生經熵編碼資料。舉例而言,熵編碼單元118可對資料執行上下文自適應性可變長度寫碼(CAVLC)操作、CABAC操作、可變至可變(V2V)長度寫碼操作、基於語法之上下文自適應性二進位算術寫碼(SBAC)操作、機率區間分割熵(PIPE)寫碼操作、指數哥倫布(Exponential-Golomb)編碼操作或另一類型之熵編碼操作。視訊編碼 器20可輸出包括由熵編碼單元118所產生之經熵編碼資料的位元串流。
視訊編碼器20為經組態以執行本發明中描述之技術中的任一者的視訊編碼器的實例。根據本發明之一或多種技術,視訊編碼器20內之一或多個單元可執行本文中所描述之技術作為視訊編碼程序的部分。舉例而言,框內預測處理單元126及/或熵編碼單元118可經組態以執行本文中所描述之技術作為視訊編碼程序的部分。在一些實例中,框內預測處理單元126可經組態以執行本文中所描述之用於導出或選擇用於框內預測之框內預測模式及/或MPM的技術、使用增加數目個MPM及/或角度模式之技術,及用於應用N分接頭框內內插濾波器之技術,其中N大於2。框內預測處理單元126可經組態以執行本文中所描述之用於每區塊允許多個框內預測方向(例如,用於區塊之子區塊的各別方向)的技術,其可能不需要多個框內預測模式之額外發信。
框內預測處理單元126可將諸如用於框內預測之選定框內預測模式及/或MPM索引的語法資訊提供至熵編碼單元118。框內預測處理單元126及/或熵編碼單元118可經組態以實施本文中所描述之用於在經編碼視訊位元串流中編碼或發信關於框內預測之語法資訊(例如,用於框內預測之選定框內預測模式及/或MPM索引)的技術,該經編碼視訊位元串流可由視訊解碼器30解碼。
圖7為說明經組態以實施本發明之技術之實例視訊解碼器30的方塊圖。出於解釋之目的而提供圖7,且其並不限制如本發明中所廣泛例示及描述之技術。本發明之技術可適用於多種寫碼標準或方法。
在圖7之實例中,視訊解碼器30包括熵解碼單元150、視訊資料記憶體151、預測處理單元152、反量化單元154、反變換處理單元156、重建構單元158、濾波器單元160,及經解碼圖像緩衝器162。預 測處理單元152包括運動補償單元164及框內預測處理單元166。在其他實例中,視訊解碼器30可包括更多、更少或不同功能組件。
視訊資料記憶體151可儲存待由視訊解碼器30之組件解碼的視訊資料,諸如經編碼視訊位元串流。可(例如)電腦可讀媒體16(例如,自本端視訊源(諸如,攝影機))經由視訊資料之有線或無線網路通信或藉由存取實體資料儲存媒體而獲得儲存於視訊資料記憶體151中之視訊資料。視訊資料記憶體151可形成儲存來自經編碼視訊位元串流之經編碼視訊資料的經寫碼圖像緩衝器(CPB)。經解碼圖像緩衝器162可為儲存用於視訊解碼器30(例如)以框內寫碼或框間寫碼模式解碼視訊資料之參考視訊資料的參考圖像記憶體。視訊資料記憶體151及經解碼圖像緩衝器162可由多種記憶體裝置中之任一者形成,諸如動態隨機存取記憶體(DRAM),包括同步DRAM(SDRAM)、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其他類型之記憶體裝置。可藉由相同記憶體裝置或單獨記憶體裝置來提供視訊資料記憶體151及經解碼圖像緩衝器162。
由視訊資料記憶體151形成之經寫碼圖像緩衝器(CPB)可接收並儲存位元串流之經編碼視訊資料(例如,NAL單元)。熵解碼單元150可自由視訊資料記憶體151形成之CPB接收NAL單元,且剖析NAL單元以自位元串流獲得語法元素。熵解碼單元150可熵解碼NAL單元中之經熵編碼語法元素。預測處理單元152、反量化單元154、反變換處理單元156、重建構單元158及濾波器單元160可基於自位元串流提取之語法元素而產生經解碼視訊資料。
位元串流之NAL單元可包括經寫碼截塊NAL單元。作為解碼位元串流之部分,熵解碼單元150可自經寫碼截塊NAL單元提取語法元素且熵解碼該等語法元素。經寫碼截塊中之每一者可包括截塊標頭及截塊資料。截塊標頭可含有關於截塊之語法元素。
除解碼來自位元串流之語法元素之外,視訊解碼器30可對CU執行解碼操作。藉由對CU執行解碼操作,視訊解碼器30可重建構CU之寫碼區塊。
作為對CU執行解碼操作之部分,反量化單元154可反量化(亦即,解量化)與CU之TU相關聯的係數區塊。反量化單元154可使用與TU之CU相關聯的QP值來判定反量化單元154應用之量化程度及(同樣地)反量化程度。亦即,可藉由調整在量化變換係數時使用之QP值來控制壓縮比,亦即,用以表示原始序列及壓縮序列之位元數目之比率。壓縮比亦可取決於所使用的熵寫碼之方法。
在反量化單元154反量化係數區塊之後,反變換處理單元156可將一或多個反變換應用於係數區塊以便產生與TU相關聯之殘餘區塊。舉例而言,反變換處理單元156可將反DCT、反整數變換、反卡忽南-拉維(Karhunen-Loeve)變換(KLT)、反旋轉變換、反定向變換或另一反變換應用於係數區塊。
若使用框內預測來編碼PU,則框內預測處理單元166可執行框內預測以產生PU之預測性區塊。框內預測處理單元166可使用框內預測模式以基於空間相鄰區塊之經重建構樣本值而產生PU之預測性明度區塊、Cb區塊及Cr區塊。框內預測處理單元166可基於自位元串流解碼之一或多個語法元素而判定PU之框內預測模式。
預測處理單元152可基於自位元串流提取之語法元素而建構第一參考圖像清單(RefPicList0)及第二參考圖像清單(RefPicList1)。此外,若使用框間預測來編碼PU,則熵解碼單元150可獲得PU之運動資訊。運動補償單元164可基於PU之運動資訊而判定PU之一或多個參考區。運動補償單元164可基於在PU之一或多個參考區塊處的樣本而產生PU之預測性明度區塊、Cb區塊及Cr區塊。
重建構單元158可使用來自與CU之TU相關聯之明度變換區塊、 Cb變換區塊及Cr變換區塊以及CU之PU之預測性明度區塊、Cb區塊及Cr區塊(亦即,可適用之框內預測資料或框間預測資料)的殘餘值來重建構CU之明度寫碼區塊、Cb寫碼區塊及Cr寫碼區塊。舉例而言,重建構單元158可將明度變換區塊、Cb變換區塊及Cr變換區塊之樣本加至預測性明度區塊、Cb區塊及Cr區塊之對應樣本,以重建構CU之明度寫碼區塊、Cb寫碼區塊及Cr寫碼區塊。
濾波器單元160可執行解區塊操作以減少與CU之明度寫碼區塊、Cb寫碼區塊及Cr寫碼區塊相關聯的區塊假影。視訊解碼器30可將CU之明度寫碼區塊、Cb寫碼區塊及Cr寫碼區塊儲存於經解碼圖像緩衝器162中。經解碼圖像緩衝器162可提供參考圖像以用於後續運動補償、框內預測及在顯示裝置(諸如,圖1之顯示裝置32)上的呈現。舉例而言,視訊解碼器30可基於經解碼圖像緩衝器162中之明度區塊、Cb區塊及Cr區塊對其他CU之PU執行框內預測或框間預測操作。以此方式,視訊解碼器30可自位元串流提取大量明度係數區塊之變換係數層級、反量化變換係數層級、將變換應用於變換係數層級以產生變換區塊、至少部分基於變換區塊產生寫碼區塊及輸出寫碼區塊以供顯示。
視訊解碼器30為經組態以執行本發明中所描述之技術中的任一者的視訊解碼器的實例。根據本發明之一或多種技術,視訊解碼器30內之一或多個單元可執行本文中所描述之技術作為視訊解碼程序的部分。舉例而言,框內預測處理單元166及/或熵解碼單元150可經組態以執行本文中所描述之技術作為視訊解碼程序的部分。在一些實例中,框內預測處理單元166可經組態以執行本文中所描述之用於導出或選擇用於框內預測之框內預測模式及/或MPM的技術、使用增加數目個MPM及/或角度模式之技術,及用於應用N分接頭框內內插濾波器之技術,其中N大於2。框內預測處理單元166可經組態以執行本文 中所描述之用於每區塊允許多個框內預測方向(例如,用於區塊之子區塊的各別方向)的技術,其可能不需要多個框內預測模式之額外發信。
框內預測處理單元166可自熵解碼單元150接收語法資訊,諸如用於框內預測之選定框內預測模式及/或MPM索引。框內預測處理單元166及/或熵解碼單元150可經組態以實施本文中所描述之用於自經編碼視訊位元串流解碼關於框內預測之語法資訊(例如,用於框內預測之選定框內預測模式及/或MPM)的技術。
在以下子部分中,提供本發明之特定技術的實例實施。實務上,實例之任何部分之任何組合可被用作新實例。實例實施係以對JCTVC-N1003之編輯的形式展示。在下文中,添加至JCTVC-N1003之文字展示於標籤<ins>與</ins>之間,「ins」為「插入」之縮寫。自JCTVC-N1003刪除之文字展示於標籤<dlt>與</dlt>之間,「dlt」為「刪除」之縮寫。
上文描述視訊編碼器20及視訊解碼器30使用三個以上MPM來發信PU之框內預測模式的若干實例。在一些此等實例中,視訊編碼器20及視訊解碼器30使用CABAC寫碼來編碼及解碼MPM索引。作為CABAC編碼的部分,視訊編碼器20將二進位化程序應用於MPM索引以將MPM索引轉換成二進位碼,且視訊解碼器30對該二進位碼進行解二進位化以恢復MPM索引。根據本發明之技術,如下表9-32所展示,使用截斷賴斯(Rice)二進位化程序(TR)對MPM索引(mpm_idx)進行二進位化,且輸入參數cMax自2改變至5以適應MPM索引之較大值。JCTVC-N1003之第9.3.3.2章描述截斷賴斯二進位化程序之實施。
此外,如上文所描述,視訊編碼器20及視訊解碼器30可在寫碼(例如,CABAC寫碼)MPM索引之一或多個二進位時使用上下文模型化。在JCTVC-N1003中,經二進位化MPM索引(亦即,mpm_idx)由三個二進位組成。然而,在本發明中,在具有較大數目個MPM之情況下,經二進位化MPM索引可包括五個或五個以上二進位。如在JCTVC-N1003之子條款9.3.4.2.1中所指定,變數ctxInc係藉由表9-37中之對應條目指定,且當在表9-37中針對binIdx列出一個以上值時,進一步在括弧中所給出之子條款中指定用於彼binIdx之ctxInc的指派程序。如進一步在JCTVC-N1003之子條款9.3.4.2.1.中所描述,ctxInc用以判定ctxIdx之值,ctxIdx為寫碼上下文之索引。如在下表9-37之編輯版本中所展示,可使用寫碼上下文(使用以下附加子條款9.3.4.x.x之上下文模型化方法選擇)來寫碼MPM索引之前三個二進位,且可使用旁路寫碼來寫碼MPM索引之剩餘二進位。
<ins>9.3.3.x 用於rem_intra_luma_pred_mode之二進位化程序
至此程序之輸入為對語法元素rem_intra_luma_pred_mode之二進位化的請求。
此程序之輸出為語法元素之二進位化。
- 若rem_intra_luma_pred_mode等於28,則二進位化字串為「111」;
- 否則,二進位化為具有5個二進位之固定長度碼。
9.3.4.x.x 用於語法元素mpm_idx之ctxInc的導出程序
至此程序之輸入為左方相鄰區塊之框內模式candIntraPredModeA及上方相鄰區塊之框內模式candIntraPredModeB。
此程序之輸出為變數ctxInc。
如下使用當前位置(xS,yS)、在掃描次序上語法元素coded_sub_block_flag之兩個先前經解碼二進位及變換區塊大小log2TrafoSize來導出變數csbfCtx:
- 當candIntraPredModeA等於candIntraPredModeB時,如下導出 ctxInc ctxInc=candIntraPredModeA>1?0:1
- 否則ctxInc=(candIntraPredModeA && candIntraPredModeB)?2:3</ins>
根據本發明之一些實例,定義三個以上MPM。以下文字描述JCTVC-N1003之實例改變以實施六個MPM。
8.4.2 用於明度框內預測模式之導出程序
至此程序之輸入為相對於當前圖像<ins>預測區塊大小nPbS</ins>之左上方明度樣本指定當前明度預測區塊之左上方樣本的明度位置(xPb,yPb)。
在此程序中,導出明度框內預測模式IntraPredModeY[xPb][yPb]。
表8-1指定用於框內預測模式之值及相關聯名稱。
標記為0..34之IntraPredModeY[xPb][yPb]表示如為本發明之圖8的圖8-1中所說明的預測之方向。
藉由以下有序步驟導出IntraPredModeY[xPb][yPb]:
4. 將相鄰位置(xNbA,yNbA)及(xNbB,yNbB)設定為分別等於(xPb-1,yPb)及(xPb,yPb-1)。
5. 對於由A或B替代之X,如下導出變數candIntraPredModeX:
<ins>
- 將candIntraPredModeX初始化為INTRA_DC。
- 將框內模式使用量之計數初始化為0: cntIntraPredModeX[i]=0,i=0、1、......、34
- 將框內模式使用量之最大計數初始化為0:cntMaxIntraPredModeX=0;
- 對於x=0..nT-1,以下情形適用
- (xCurr,yCurr)=(X==A)?(xNbA+x,yNbA)?(xNbA,yNbA+x)
- 如子條款6.4.1中指定之z掃描次序中的區塊之可用性導出程序係以設定為等於(xPb,yPb)之位置(xCurr,yCurr)及設定為等於(xNbX,yNbX)之相鄰位置(xNbY,yNbY)作為輸入而調用,且輸出經指派給availableX。
- 若availableX等於真且CuPredMode[xNbX][yNbX]等於MODE_INTRA,則以下情形適用:
- cntIntraPredModeX[CuPredMode[xCurr][yCurr]]++
- 若cntIntraPredModeX[CuPredMode[xCurr][yCurr]]>cntMaxIntraPredModeX,則以下情形適用:
- cntMaxIntraPredModeX=cntIntraPredModeX[CuPredMode[xCurr][yCurr]];
- candIdtraPredModeX=CuPredMode[xCurr][yCurr]</ins>
<dlt>
- 如子條款6.4.1中指定之z掃描次序中的區塊之可用性導出程序係以設定為等於(xPb,yPb)之位置(xCurr,yCurr)及設定為等於(xNbX,yNbX)之相鄰位置(xNbY,yNbY)作為輸入而調用,且輸出經指派給availableX。
- 如下導出候選框內預測模式candIntraPredModeX:
- 若availableX等於假,則將candIntraPredModeX設定為 等於INTRA_DC。
- 否則,若CuPredMode[xNbX][yNbX]不等於MODE_INTRA或pcm_flag[xNbX][yNbX]等於1,則將candIntraPredModeX設定為等於INTRA_DC,
- 否則,若X等於B且yPb-1小於((yPb>>CtbLog2SizeY)<<CtbLog2SizeY),則將candIntraPredModeB設定為等於INTRA_DC。
- 否則,將candIntraPredModeX設定為等於IntraPredModeY[xNbX][yNbX]。</dlt>
6. 如下導出candModeList[x],其中x=0..<dlt>2</dlt><ins>5</ins>:
- <ins>將idxPlanar設定為0,將idxDC設定為1;</ins>
- 若candIntraPredModeB等於candIntraPredModeA,則以下情形適用:
- 若candIntraPredModeA小於2(亦即,等於INTRA_PLANAR或INTRA_DC),則如下導出candModeList[x],其中x=0..<dlt>2</dlt><ins>5</ins>:candModeList[0]=INTRA_PLANAR (8-15)
candModeList[1]=INTRA_DC (8-16)
candModeList[2]=INTRA_ANGULAR26 (8-17)
<ins>candModeList[3]=INTRA_ANGULAR10 (8-17)
candModeList[4]=INTRA_ANGULAR2 (8-17)
candModeList[5]=INTRA_ANGULAR18 (8-17)</ins>
- 否則,如下導出candModeList[x],其中x=0..5:candModeList[0]=candIntraPredModeA (8-18)
<dlt>candModeList[2]=2+((candIntraPredModeA+29)% 32) (8-19)
candModeList[2]=2+((candIntraPredModeA-2+1)% 32) (8-20)</dlt>
<ins>candModeList[1]=INTRA_PLANAR (8-20)
candModeList[2]=2+((candIntraPredModeA-1)% 32) (8-19)
candModeList[3]=2+((candIntraPredModeA+29)% 32) (8-20)
candModeList[4]=2+((candModeList[2]-1)% 32) (8-20)
candModeList[5]=INTRA_DC (8-20)
idxPlanar=1
idxDC=5</ins>
- 否則(candIntraPredModeB不等於candIntraPredModeA),以下情形適用:
- 如下導出candModeList[0]及candModeList[1]:candModeList[0]=candIntraPredModeA (8-21)
candModeList[1]=candIntraPredModeB (8-22)
- 若candModeList[0]及candModeList[1]兩者皆不等於INTRA_PLANAR,則將candModeList[2]設定為等於INTRA_PLANAR,<ins>且以下情形適用:
- maxDir=max(candModeList[0],candModeList[1])
- minDir=min(candModeList[0],candModeList[1])
- idxPlanar=2
- 若candModeList[0]及candModeList[1]中之任一者等於INTRA_DC,則以下情形適用:candModeList[3]=2+((maxDir+29)% 32) (8-21)
candModeList[4]=2+((maxDir-1)% 32) (8-22)
candModeList[5]=2+((candModeList[4]-1)% 32) (8-22)
idxDC=(candModeList[0]==INTRA_DC)?0:1
- 否則,candModeList[3]=INTRA_DC (8-21)
candModeList[4]=2+((maxDir-1)% 32) (8-22)
- 若candModeList[4]等於minDir,則candModeList[4]++ candModeList[5]=2+((candModeList[4]+29)% 32) (8-22)
- 若candModeList[5]等於maxDir,則candModeList[5]--
- 若candModeList[5]等於candModeList[4],則candModeList[5]=minDir+1
idxDC=3</ins>
- 否則,若candModeList[0]及candModeList[1]兩者皆不等於INTRA_DC,則將candModeList[2]設定為等於INTRA_DC,<ins>且以下情形適用:candModeList[3]=2+((candIntraPredModeA+29)% 32)
candModeList[4]=2+((candIntraPredModeA-1)% 32)
candModeList[5]=2+((candModeList[4]-1)% 32)
idxPlanar=(candModeList[0]==INTRA_PLANAR)?0:1
idxDC=2</ins>
- 否則,將candModeList[2]設定為等於INTRA_ANGULAR26,以下情形適用:<ins>candModeList[3]=INTRA_ANGULAR10
candModeList[4]=INTRA_ANGULAR2
candModeList[5]=INTRA_ANGULAR18
idxPlanar=(candModeList[0]==INTRA_PLANAR)?0:1
idxDC=1-idxPlanar</ins>
7. 藉由應用以下程序導出IntraPredModeY[xPb][yPb]:
- 若prev_intra_luma_pred_flag[xPb][yPb]等於1,則將 IntraPredModeY[xPb][yPb]設定為等於candModeList[mpm_idx]。
- 否則,藉由應用以下有序步驟導出IntraPredModeY[xPb][yPb]:
1)如以下有序步驟修改陣列candModeList[x],x=0...<dlt>2</dlt><ins>5</ins>:
i. candModeList[idxPlanar]=candModeList[0]
ii. candModeList[idxDC]=candModeList[1]
iii. candModeList[0]=INTRA_PLANAR
iv. candModeList[1]=INTRA_DC</ins>
v. 當candModeList[<dlt>0</dlt><ins>2</ins>]大於candModeList[<dlt>1</dlt><ins>3</ins>]時,如下調換兩個值:(candModeList[<dlt>0</dlt><ins>2</ins>],candModeList[<dlt>1</dlt><ins>3</ins>])=Swap(candModeList[<dlt>0</dlt><ins>2</ins>],candModeList[<dlt>1</dlt><ins>3</ins>]) (8-23)
vi. 當candModeList[<dlt>0</dlt><ins>2</ins>]大於candModeList[<dlt>2</dlt><ins>4</ins>]時,如下調換兩個值:(candModeList[<dlt>0</dlt><ins>2</ins>],candModeList[<dlt>2</dlt><ins>4</ins>])=Swap(candModeList[<dlt>0</dlt><ins>2</ins>],candModeList[<dlt>2</dlt><ins>4</ins>]) (8-24)
vii. <ins>當candModeList[2]大於candModeList[5]時,如下調換兩個值: (candModeList[2],candModeList[5])=Swap(candModeList[2],candModeList[5])</ins>
viii. 當candModeList[<dlt>1</dlt><ins>3</ins>]大於candModeList[<dlt>2</dlt><ins>4</ins>]時,如下調換兩個值:(candModeList[<dlt>1</delete><ins>3</ins>],candModeList[<dlt>2</dlt><ins>4</ins>])=Swap(candModeList[<dlt>1</dlt><ins>3</ins>],candModeList[<dlt>2</dlt><ins>4</ins>]) (8-25)
ix. <ins>當candModeList[3]大於candModeList[5]時,如下調換兩個值:(candModeList[3],candModeList[5])=Swap(candModeList[3],candModeList[5])
x. 當candModeList[4]大於candModeList[5]時,如下調換兩個值:(candModeList[4],candModeList[5])=Swap(candModeList[4],candModeList[5])</ins>
2)藉由以下有序步驟導出IntraPredModeY[xPb][yPb]:
i. 將IntraPredModeY[xPb][yPb]設定為等於rem_intra_luma_pred_mode[xPb][yPb]。
ii. 對於i等於0至<dlt>2</dlt><ins>5</ins>(包括0及<dlt>2</dlt><ins>5</ins>),當IntraPredModeY[xPb][yPb]大於或等於candModeList[i]時,將IntraPredModeY[xPb][yPb]之值遞增1。
在上文所展示之JCTVC-N1003的子條款8.4.2之實例改編版本 中,用於當前PU之MPM的導出程序包括左方相鄰行之代表性框內預測模式(candIntraPredModeA)及上方相鄰列之代表性框內預測模式(candIntraPredModeB)的導出程序。在此實例中,左方相鄰行對應於樣本(xNbA,yNbA+x),其中x=x..nPbs,且上方相鄰列對應於樣本(xNbA+x,yNbA),其中x=0..nPbs,其中nPbs為當前PU之預測區塊的寬度及高度。
此外,在上文所展示之JCTVC-N1003的子條款8.4.2之實例改編版本中,若candIntraPredModeA與candIntraPredModeB相同且candIntraPredModeA為平面或DC,則MPM候選者之清單(亦即,candModeList)始終包括平面、DC、垂直(亦即,INTRA_ANGULAR26)、水平(亦即,INTRA_ANGULAR10)及對角(亦即,INTRA_ANGULAR18)框內預測模式。然而,在此實例中,若candIntraPredModeA並非平面且並非DC,則MPM候選者之清單包括candIntraPredModeA、平面框內預測、最接近candIntraPredModeA之三個角度框內預測模式及DC框內預測模式。最接近candIntraPredModeA之三個角度框內預測模式被計算為:2+((candIntraPredModeA-1)% 32),(2+((candIntraPredModeA+29)% 32)且2+((candModeList[2]-1)% 32)
在以上公式中,%指示取模運算。
類似地,在上文所展示之JCTVC-N1003的子條款8.4.2之實例改編版本中,若candIntraPredModeA不等於candIntraPredModeB,視訊寫碼器可將使用展示於JCTVC-N1003之子條款8.4.2的實例改編版本中之包括取模運算的公式判定為最接近candIntraPredModeA或candIntraPredModeB的其他角度框內預測模式包括於MPM候選者之清單中。
如上文所描述,在本發明之一些實例中,視訊編碼器20及視訊解碼器30可使用33個以上角度框內預測模式。以下文字描述JCTVC-N1003之實例改變以實施65個角度框內預測模式。
8.4.4.2.6 在INTRA_ANGULAR2..INTRA_ANGULAR34之範圍內的框內預測模式之規格
至此程序之輸入為:
- 框內預測模式predModeIntra,
- 相鄰樣本p[x][y],其中x=-1,y=-1..nTbS * 2-1且x=0..nTbS * 2-1,y=-1,
- 指定變換區塊大小之變數nTbS,
- 指定當前區塊之色彩分量的變數cIdx。
此程序之輸出為預測樣本predSamples[x][y],其中x,y=0..nTbS-1。
為本發明之圖9的圖8-2說明總計33個框內角度,且表8-4指定predModeIntra與角度參數intraPredAngle之間的映射表。
</dlt>
</ins>
表8-5進一步指定predModeIntra與反角度參數invAngle之間的映射表。
如下導出預測樣本predSamples[x][y]的值,其中x,y=0..nTbS-1:
- 若predModeIntra等於或大於18,則以下有序步驟適用:
1. 如下指定參考樣本陣列ref[x]:
- 以下情形適用:ref[x]=p[-1+x][-1],其中x=0..nTbS (8-47)
- 若intraPredAngle小於0,則如下擴展主參考樣本陣列:
- 當(nTbS * intraPredAngle)>>5小於-1時,ref[x]=p[-1][-1+((x * invAngle+128)>>8)],其中x=-1..(nTbS * intraPredAngle)>>5 (8-48)
- 否則,ref[x]=p[-1+x][-1],其中x=nTbS+1..2 * nTbS (8-49)
2. 如下導出預測樣本predSamples[x][y]的值,其中x,y=0..nTbS-1:
a. 如下導出索引變數iIdx及乘法因子iFact: iIdx=((y+1) * intraPredAngle)>>5 (8-50)
iFact=((y+1) * intraPredAngle)& 31 (8-51)
b. 取決於iFact之值,以下情形適用:
- 若iFact不等於0,則如下導出預測樣本predSamples[x][y]的值:predSanples[x][y]=((32-iFact) * ref[x+iIdx+1]+iFact * ref[x+iIdx+2]+16)>>5 (8-52)
- 否則,如下導出預測樣本predSamples[x][y]的值:predSamples[x][y]=ref[x+iIdx+1] (8-53)
c. 當predModeIntra等於26(垂直),cIdx等於0且nTbS小於32時,應用以下濾波,其中x=0,y=0..nTbS-1:predSamples[x][y]=Clip1Y(p[x][-1]+((p[-1][y]-p[-1][-1])>>1)) (8-54)
- 否則(predModeIntra小於18),則以下有序步驟適用:
1. 如下指定參考樣本陣列ref[x]:
- 以下情形適用:ref[x]=p[-1][-1+x],其中x=0..nTbS (8-55)
- 若intraPredAngle小於0,則如下擴展主參考樣本陣列:
- 當(nTbS * intraPredAngle)>>5小於-1時,ref[x]=p[-1+((x * invAngle+128)>>8)][-1],其中x=-1..(nTbS * intraPredAngle)>>5 (8-56)
- 否則,ref[x]=p[-1][-1+x],其中x=nTbS+1..2 * nTbS (8-57)
2. 如下導出預測樣本predSamples[x][y]的值,其中x,y=0..nTbS-1:
a. 如下導出索引變數iIdx及乘法因子iFact: iIdx=((x+1) * intraPredAngle)>>5 (8-58)
iFact=((x+1) * intraPredAngle)& 31 (8-59)
b. 取決於iFact之值,以下情形適用:
- 若iFact不等於0,則如下導出預測樣本predSamples[x][y]的值:predSamples[x][y]=((32-iFact) * ref[y+iIdx+1]+iFact * ref[y+iIdx+2]+16)>>5 (8-60)
- 否則,如下導出預測樣本predSamples[x][y]的值:predSamples[x][y]=ref[y+iIdx+1] (8-61)
c. 當predModeIntra等於10(水平),cIdx等於0且nTbS小於32時,應用以下濾波,其中x=0..nTbS-1,y=0:predSamples[x][y]=Clip1Y(p[-1][y]+((p[x][-1]-p[-1][-1])>>1)) (8-62)
表8-5進一步指定predModeIntra與反角度參數invAngle之間的映射表。
如下導出預測樣本predSamples[x][y]的值,其中x,y=0..nTbS-1:
- 若predModeIntra等於或大於18,則以下有序步驟適用:
......
7.4.9.11 殘餘寫碼語義
對於框內預測,使用不同掃描次序。變數scanIdx指定使用哪一掃描次序,其中scanIdx等於0指定右上對角掃描次序,scanIdx等於1 指定水平掃描次序,且scanIdx等於2指定垂直掃描次序。如下導出scanIdx的值:
- 若CuPredMode[x0][y0]等於MODE_INTRA且以下條件中之一或多者為真,則
- log2TrafoSize等於2。
- log2TrafoSize等於3且cIdx等於0。
如下導出predModeIntra:
- 若cIdx等於0,則將predModeIntra設定為等於IntraPredModeY[x0][y0]。
- 否則,將predModeIntra設定為等於IntraPredModeC。
如下導出scanIdx:
- 若predModeIntra在<dlt>6</dlt><ins>10</ins>至<dlt>14</dlt><ins>26</ins>之範圍(包括<dlt>6</dlt><ins>10</ins>及<dlt>14</dlt><ins>26</ins>)內,則將scanIdx設定為等於2。
- 否則,若predModeIntra在<dlt>22</dlt><ins>42</ins>至<dlt>30</dlt><ins>58</ins>之範圍(包括<dlt>22</dlt><ins>42</ins>及<dlt>30</dlt><ins>58</ins>)內,則將scanIdx設定為等於1。
- 否則,將scanIdx設定為等於0。
- 否則,將scanIdx設定為等於0。
8.4.4.2.3 相鄰樣本之濾波程序
至此程序之輸入為:
- 相鄰樣本p[x][y],其中x=-1,y=-1..nTbS * 2-1且x=0..nTbS * 2-1,y=-1,
- 指定變換區塊大小之變數nTbS。
此程序之輸出為經濾波樣本pF[x][y],其中x=-1,y=-1..nTbS * 2-1且x=0..nTbS * 2-1,y=-1。
如下導出變數filterFlag:
- 若以下條件中之一或多者為真,則將filterFlag設定為等於0:
- predModeIntna等於INTRA_DC。
- nTbS等於4。
- 否則,以下情形適用:
- 將變數minDistVefHof設定為等於Min(Abs(predModeIntra-26),Abs(predModeIntra-10))。
- 在表8-3中指定變數intraHorVerDistThres[nTbS]。
- 如下導出變數filterFlag:
- 若minDistVerHor大於intraHorVerDistThfes[nTbS],則將filterFlag設定為等於1。
- 否則,將filterFlag設定為等於0。
7.4.9.11 殘餘寫碼語義
對於框內預測,使用不同掃描次序。變數scanIdx指定使用哪一掃描次序,其中scanIdx等於0指定右上對角掃描次序,scanIdx等於1指定水平掃描次序,且scanIdx等於2指定垂直掃描次序。如下導出scanIdx的值:
- 若CuPredMode[x0][y0]等於MODE_INTRA且以下條件中之一或多者為真,則
- log2TrafoSize等於2。
- log2TrafoSize等於3且cIdx等於0。
如下導出predModeIntra:
- 若cIdx等於0,則將predModeIntra設定為等於IntraPredModeY[x0][y0]。
- 否則,將predModeIntra設定為等於IntraPredModeC。
如下導出scanIdx:
- 若predModeIntra在<dlt>6</dlt><ins>10</ins>至<dlt>14</dlt><ins>26</ins>之範圍(包括<dlt>6</dlt><ins>10</ins>及<dlt>14</dlt><ins>26</ins>)內,則將scanIdx設定為等於2。
- 否則,若predModeIntra在<dlt>22</dlt><ins>42</ins>至<dlt>30</dlt><ins>58</ins>之範圍(包括<dlt>22</dlt><ins>42</ins>及<dlt>30</dlt><ins>58</ins>)內,則將scanIdx設定為等於1。
- 否則,將scanIdx設定為等於0。
- 否則,將scanIdx設定為等於0。
8.4.4.2.3 相鄰樣本之濾波程序
至此程序之輸入為:
- 相鄰樣本p[x][y],其中x=-1,y=-1..nTbS * 2-1且x=0..nTbS * 2-1,y=-1,
- 指定變換區塊大小之變數nTbS。
此程序之輸出為經濾波樣本pF[x][y],其中x=-1,y=-1..nTbS * 2-1且x=0..nTbS * 2-1,y=-1。
如下導出變數filterFlag:
- 若以下條件中之一或多者為真,則將filterFlag設定為等於0:
- predModeIntra等於INTRA_DC。
- nTbS等於4。
- 否則,以下情形適用:
- 將變數minDistVerHor設定為等於Min(Abs(predModeIntra-26),Abs(predModeIntra-10))。
- 在表8-3中指定變數intraHorVerDistThres[nTbS]。
- 如下導出變數filterFlag:
- 若minDistVerHor大於intraHorVerDistThres[nTbS],則將filterFlag設定為等於1。
- 否則,將filterFlag設定為等於0。
當filterFlag等於1時,以下情形適用:
...
如上文所描述,根據本發明之一些技術,視訊編碼器20及視訊解碼器30可應用N分接頭框內內插濾波器。以下文字描述JCTVC-N1003之實例改變以實施4分接頭框內內插濾波器之應用。
<ins>x.x.x 框內內插濾波器係數初始化程序</ins>
此程序之輸出為陣列filterCubic[sFrac][pos]。陣列索引sFrac指定在0至31之範圍內的分數位置,pos指定用於第pos個樣本之濾波器係數。如下導出陣列filterCubic及filterGaussian:
8.4.4.2.6 在INTRA_ANGULAR2..INTRA_ANGULAR34之範圍內的框內預測模式之規格
至此程序之輸入為:
- 框內預測模式predModeIntra,
- 相鄰樣本p[x][y],其中x=-1,y=-1..nTbS * 2-1且x=0..nTbS * 2-1,y=-1,
- 指定變換區塊大小之變數nTbS,
- 指定當前區塊之色彩分量的變數cIdx。
此程序之輸出為預測樣本predSamples[x][y],其中x,y=0..nTbS-1。
...
如下導出預測樣本predSamples[x][y]的值,其中x,y=0..nTbS-1:
- 若predModeIntra等於或大於18,則以下有序步驟適用:
3. 如下指定參考樣本陣列ref[x]:
- 以下情形適用:ref[x]=p[-1+x][-1],其中x=0..nTbS (8-47)
- 若intraPredAngle小於0,則如下擴展主參考樣本陣列:
- 當(nTbS * intraPredAngle)>>5小於-1時,ref[x]=p[-1][-1+((x * invAngle+128)>>8)],其中x=-1..(nTbS * intraPredAngle)>>5 (8-48)
- 否則, ref[x]=p[-1+x][-1],其中x=nTbS+1..2 * nTbS (8-49)
4. 如下導出預測樣本predSamples[x][y]的值,其中x,y=0..nTbS-1:
a. 如下導出索引變數iIdx及乘法因子iFact:iIdx=((y+1) * intraPredAngle)>>5 (8-50)
iFact=((y+1) * intraPredAngle)& 31 (8-51)
b. 取決於iFact之值,以下情形適用:
- 若iFact不等於0,則如下導出預測樣本predSamples[x][y]的值:<dlt>predSamples[x][y]=((32-iFact) * ref[x+iIdx+1]+iFact * ref[x+iIdx+2]+16)>>5 (8-52)</dlt>
<ins>For p=0,..,3,pF[p]=(cIdx==0 && nTbS<=8)?
filterCubic[iFact][p]:filterGaussian[iFact][p]
P[1]=ref[x+iIdx+1]
P[2]=ref[x+iIdx+2]
P[0]=(x==0)?ref[x+iIdx+1]:ref[x+iIdx]
P[3]=(x==nTbS-1)?ref[x+iIdx+2]:ref[x+iIdx+3]
predSamples[x][y]=(pF[0] * P[0]+pF[1] * P[1]+pF[2] * P[2]+pF[3] * P[3]+128)>>8 (8-52)</ins>
- 否則,如下導出預測樣本predSamples[x][y]的值:predSamples[x][y]=ref[x+iIdx+1] (8-53)
c. 當predModeIntra等於26(垂直),cIdx等於0且nTbS小於32時,應用以下濾波,其中x=0,y=0..nTbS-1:predSamples[x][y]=Clip1Y(p[x][-1]+((p[-1][y]-p[-1][-1])>>1)) (8-54)
- 否則(predModeIntra小於18),則以下有序步驟適用:
3. 如下指定參考樣本陣列ref[x]:
- 以下情形適用:ref[x]=p[-1][-1+x],其中x=0..nTbS (8-55)
- 若intraPredAngle小於0,則如下擴展主參考樣本陣列:
- 當(nTbS * intraPredAngle)>>5小於-1時,ref[x]=p[-1+((x * invAngle+128)>>8)][-1],其中x=-1..(nTbS * intraPredAngle)>>5 (8-56)
- 否則,ref[x]=p[-1][-1+x],其中x=nTbS+1..2 * nTbS (8-57)
4. 如下導出預測樣本predSamples[x][y]的值,其中x,y=0..nTbS-1:
d. 如下導出索引變數iIdx及乘法因子iFact:iIdx=((x+1) * intraPredAngle)>>5 (8-58)
iFact=((x+1) * intraPredAngle)& 31 (8-59)
e. 取決於iFact之值,以下情形適用:
- 若iFact不等於0,則如下導出預測樣本predSamples[x][y]的值:predSamples[x][y]=((32-iFact) * ref[y+iIdx+1]+iFact * ref[y+iIdx+2]+16)>>5 (8-60)
- 否則,如下導出預測樣本predSamples[x][y]的值:predSamples[x][y]=ref[y+iIdx+1] (8-61)
f. 當predModeIntra等於10(水平),cIdx等於0且nTbS小於32時,應用以下濾波,其中x=0..nTbS-1,y=0:predSamples[x][y]=Clip1Y(p[-1][y]+((p[x][-1]-p[-1][-1])>>1)) (8-62)
圖10為說明根據本發明之技術的編碼視訊資料之方法的流程圖。參考一般視訊編碼器來描述圖10。一般視訊編碼器可(例如)對應於視訊編碼器20,但本發明之技術不限於任何特定類型之視訊編碼器。視訊編碼器自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM(200)。在一個實例中,M可大於3。視訊編碼器編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素(202)。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。基於MPM索引或非MPM索引中之所指示者為MPM索引,視訊編碼器針對MPM索引之一或多個經上下文模型化二進位中之每一者基於用以解碼一或多個相鄰區塊之框內預測模式而選擇經上下文模型化二進位之上下文索引(204)。視訊編碼器基於選定框內預測模式而編碼視訊資料區塊(206)。
圖11為說明根據本發明之技術的解碼視訊資料之方法的流程圖。參考一般視訊解碼器來描述圖11。一般視訊解碼器可(例如)對應於視訊解碼器30,但本發明之技術不限於任何特定類型之視訊解碼器。視訊解碼器自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM(220)。在一個實例中,M可大於3。視訊解碼器編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素(222)。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。基於MPM索引或非MPM索引中之所指示者為MPM索引,視訊解碼器針對MPM索引之一或多個經上下文模型化二進位中之每一者基於用以解碼一或多個相鄰區塊之框內預測模式而選擇經上下文模型化二進位 之上下文索引(224)。視訊解碼器基於選定框內預測模式而重建構視訊資料區塊(226)。
圖12為說明根據本發明之技術的編碼視訊資料之方法的流程圖。參考一般視訊編碼器來描述圖12。一般視訊編碼器可(例如)對應於視訊編碼器20,但本發明之技術不限於任何特定類型之視訊編碼器。視訊編碼器自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM(300)。在一個實例中,M可大於3,且MPM可包括左方相鄰行之MPM及上方相鄰列之MPM。在一個實例中,M個MPM可藉由以下步驟中之至少一者導出:(i)定義左方相鄰行之代表性框內預測模式且將左方相鄰行之代表性框內預測模式用作左方相鄰行之MPM(302),或(ii)定義上方相鄰列之代表性框內預測模式且將上方相鄰列之代表性框內預測模式用作上方相鄰列之MPM(304)。
視訊編碼器可編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素(306)。另外,視訊編碼器可編碼MPM索引或非MPM索引中之所指示者(308)。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。視訊編碼器可基於選定框內預測模式而編碼視訊資料區塊(310)。
圖13為說明根據本發明之技術的解碼視訊資料之方法的流程圖。參考一般視訊解碼器來描述圖13。一般視訊解碼器可(例如)對應於視訊解碼器30,但本發明之技術不限於任何特定類型之視訊解碼器。視訊解碼器自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM(350)。在一個實例中,M可大於3,且MPM可包括左方相鄰行之MPM及上方相鄰列之MPM。M個最可能模式可藉由以下步驟中之至少一者導出:(i)定義左方相鄰行之代表性框內預測模式 且將左方相鄰行之代表性框內預測模式用作左方相鄰行之MPM(352),或(ii)定義上方相鄰列之代表性框內預測模式且將上方相鄰列之代表性框內預測模式用作上方相鄰列之MPM(354)。
視訊解碼器可解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素(356)。另外,視訊解碼器可解碼MPM索引或非MPM索引中之所指示者(358)。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。視訊解碼器可基於選定框內預測模式而編碼視訊資料區塊(360)。
圖14為說明根據本發明之技術的編碼視訊資料之方法的流程圖。參考一般視訊編碼器來描述圖14。一般視訊編碼器可(例如)對應於視訊編碼器20,但本發明之技術不限於任何特定類型之視訊編碼器。視訊編碼器自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM(400)。在一個實例中,M可大於3。視訊編碼器編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素(402)。在圖12之實例中,MPM索引指示M個MPM中之哪一者為選定框內預測模式。此外,非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。基於MPM索引指示選定框內預測模式,視訊編碼器編碼非MPM索引(404)。在圖14之實例中,若非MPM索引滿足準則,則非MPM索引在位元串流中編碼為短於log2 N]個位元之碼字,且否則在位元串流中編碼為具有log2 N 個位元之固定長度碼。在圖14之實例中,存在非MPM索引之總計N個可用值。視訊編碼器基於選定框內預測模式而編碼視訊資料區塊(406)。
圖15為說明根據本發明之技術的解碼視訊資料之方法的流程 圖。參考一般視訊解碼器來描述圖15。一般視訊解碼器可(例如)對應於視訊解碼器30,但本發明之技術不限於任何特定類型之視訊解碼器。視訊解碼器自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM(450)。在一個實例中,M可大於3。視訊解碼器解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素(452)。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。基於MPM索引指示選定框內預測模式,視訊解碼器解碼非MPM索引(454)。在圖15之實例中,若非MPM索引滿足準則,則非MPM索引在位元串流中編碼為短於log2 N 個位元之碼字,且否則在位元串流中編碼為具有log2 N 個位元之固定長度碼。在圖15之實例中,存在非MPM索引之總計N個可用值。此外,在圖15之實例中,視訊解碼器基於選定框內預測模式而重建構視訊資料區塊(456)。
圖16為說明根據本發明之技術的編碼視訊資料之方法的流程圖。參考一般視訊編碼器來描述圖16。一般視訊編碼器可(例如)對應於視訊編碼器20,但本發明之技術不限於任何特定類型之視訊編碼器。視訊編碼器自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM(600)。在圖16之實例中,M大於3。視訊編碼器編碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素(602)。視訊編碼器編碼MPM索引或非MPM索引中之所指示者(604)。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式。視訊編碼器基於選定框內預測模式而編碼視訊資料區塊(606)。
圖17為說明根據本發明之技術的解碼視訊資料之方法的流程 圖。參考一般視訊解碼器來描述圖17。一般視訊解碼器可(例如)對應於視訊解碼器30,但本發明之技術不限於任何特定類型之視訊解碼器。視訊解碼器自複數個框內預測模式當中導出用於框內預測視訊資料區塊之M個MPM(650)。在圖17之實例中,M大於3。視訊解碼器解碼指示MPM索引抑或非MPM索引用以指示複數個框內預測模式中用於框內預測視訊資料區塊之選定框內預測模式的語法元素(652)。視訊解碼器解碼MPM索引或非MPM索引中之所指示者(654)。MPM索引指示M個MPM中之哪一者為選定框內預測模式。非MPM索引指示複數個框內預測模式中除M個MPM外之哪一者為選定框內預測模式(654)。視訊解碼器基於選定框內預測模式而重建構視訊資料區塊(656)。
圖18為說明根據本發明之技術的編碼視訊資料之方法的流程圖。參考一般視訊編碼器來描述圖18。一般視訊編碼器可(例如)對應於視訊編碼器20,但本發明之技術不限於任何特定類型之視訊編碼器。視訊編碼器編碼指示複數個框內預測模式當中用於視訊資料區塊之選定框內預測模式的語法資訊(700)。在一個實例中,複數個框內預測模式可包括33個以上角度框內預測模式。角度框內預測模式可經定義使得以1/32像元準確度執行內插。視訊編碼器基於選定框內預測模式而編碼視訊資料區塊(702)。
圖19為說明根據本發明之技術的解碼視訊資料之方法的流程圖。參考一般視訊解碼器來描述圖19。一般視訊解碼器可(例如)對應於視訊解碼器30,但本發明之技術不限於任何特定類型之視訊解碼器。視訊解碼器解碼指示複數個框內預測模式當中用於視訊資料區塊之選定框內預測模式的語法資訊(750)。在一個實例中,複數個框內預測模式可包括33個以上角度框內預測模式,角度框內預測模式可經定義使得以1/32像元準確度執行內插。視訊解碼器可基於選定框內預 測模式而重建構視訊資料區塊(752)。
圖20為說明根據本發明之技術的編碼視訊資料之方法的流程圖。參考一般視訊編碼器來描述圖20。一般視訊編碼器可(例如)對應於視訊編碼器20,但本發明之技術不限於任何特定類型之視訊編碼器。視訊編碼器編碼指示複數個框內預測模式當中用於視訊資料區塊之選定框內預測模式的語法資訊(800)。視訊編碼器根據選定框內預測模式將N分接頭框內內插濾波器應用於視訊資料區塊之相鄰經重建構樣本(802)。在一個實例中,N可大於2。視訊編碼器可根據選定框內預測模式基於經濾波的相鄰經重建構樣本而編碼視訊資料區塊(804)。
圖21為說明根據本發明之技術的解碼視訊資料之方法的流程圖。參考一般視訊解碼器來描述圖21。一般視訊解碼器可(例如)對應於視訊解碼器30,但本發明之技術不限於任何特定類型之視訊解碼器。視訊解碼器解碼指示複數個框內預測模式當中用於視訊資料區塊之選定框內預測模式的語法資訊(850)。視訊解碼器根據選定框內預測模式將 N 分接頭框內內插濾波器應用於視訊資料區塊之相鄰經重建構樣本(852)。在一個實例中,N可大於2。視訊解碼器可根據選定框內預測模式基於經濾波的相鄰經重建構樣本而重建構視訊資料區塊(854)。
在一或多個實例中,所描述之功能可以硬體、軟體、韌體或其任何組合實施。若以軟體實施,則該等功能可作為一或多個指令或程式碼而儲存於電腦可讀媒體上或經由電腦可讀媒體進行傳輸,且藉由基於硬體之處理單元執行。電腦可讀媒體可包括電腦可讀儲存媒體,其對應於有形媒體(諸如,資料儲存媒體),或包括有助於將電腦程式自一處傳送至另一處(例如,根據通信協定)的任何媒體之通信媒體。以此方式,電腦可讀媒體大體上可對應於(1)非暫時性的有形電腦可 讀儲存媒體,或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或多個電腦或一或多個處理器存取以擷取用於實施本發明中所描述之技術的指令、程式碼及/或資料結構的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
藉由實例而非限制,此類電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存裝置、磁碟儲存裝置或其他磁性儲存裝置、快閃記憶體或可用於儲存呈指令或資料結構形式之所要程式碼且可由電腦存取的任何其他媒體。又,任何連接被適當地稱為電腦可讀媒體。舉例而言,若使用同軸纜線、光纖纜線、雙絞線、數位用戶線(DSL)或無線技術(諸如,紅外線、無線電及微波)而自網站、伺服器或其他遠端源傳輸指令,則同軸纜線、光纖纜線、雙絞線、DSL或無線技術(諸如,紅外線、無線電及微波)包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、載波、信號或其他暫時性媒體,而是有關於非暫時性有形儲存媒體。如本文中所使用,磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位影音光碟(DVD)、軟碟及藍光光碟,其中磁碟通常以磁性方式再現資料,而光碟使用雷射以光學方式再現資料。以上各者之組合亦應包括於電腦可讀媒體之範疇內。
可由諸如一或多個數位信號處理器(DSP)、一般用途微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效積體或離散邏輯電路之一或多個處理器來執行指令。因此,如本文中所使用之術語「處理器」可指上述結構或適合於實施本文中所描述之技術的任何其他結構中之任一者。此外,在一些態樣中,本文中所描述之功能性可提供於經組態用於編碼及解碼之專用硬體及/或軟體模組內,或併入組合式編碼解碼器中。又,該等技術可完全實施於一或多個電路或邏輯元件中。
本發明之技術可實施於廣泛多種裝置或設備中,該等裝置或設備包括無線手機、積體電路(IC)或IC之集合(例如,晶片組)。本發明中描述各種組件、模組或單元以強調經組態以執行所揭示技術之裝置的功能態樣,但未必要求由不同硬體單元來實現。確切而言,如上文所描述,可將各種單元組合於編碼解碼器硬體單元中,或藉由互操作性硬體單元(包括如上文所描述之一或多個處理器)之集合結合合適之軟體及/或韌體來提供該等單元。
已描述各種實例。此等及其他實例係在以下申請專利範圍之範疇內。
450‧‧‧步驟
452‧‧‧步驟
454‧‧‧步驟
456‧‧‧步驟

Claims (30)

  1. 一種解碼一視訊資料區塊之方法,該方法包含:自複數個框內預測模式當中導出用於框內預測該視訊資料區塊之M個最可能模式(MPM),其中M大於3;解碼指示一MPM索引抑或一非MPM索引用以指示該複數個框內預測模式中用於框內預測該視訊資料區塊之一選定框內預測模式的一語法元素,其中該MPM索引指示該M個MPM中之哪一者為該選定框內預測模式,且其中該非MPM索引指示該複數個框內預測模式中除該M個MPM外之哪一者為該選定框內預測模式;基於該MPM索引指示該選定框內預測模式而解碼該非MPM索引,其中若該非MPM索引滿足一準則,則該非MPM索引在位元串流中編碼為短於log2 N 個位元之一碼字,且否則在該位元串流中編碼為具有log2 N 個位元之一固定長度碼,其中存在該非MPM索引之總計N個可用值;及基於該選定框內預測模式而重建構該視訊資料區塊。
  2. 如請求項1之方法,其中:該視訊資料區塊為該視訊資料之一當前圖像中的一當前寫碼單元(CU),該視訊資料區塊之該選定框內預測模式為該當前CU之一當前預測單元(PU)的一選定框內預測模式,且重建構該視訊資料區塊包含:使用該選定框內預測模式產生該當前PU之一預測性區塊;及藉由將該CU之PU的該等預測性區塊之樣本加至該當前CU之變換單元(TU)的變換區塊之對應樣本而使用殘餘值重建構 該當前CU。
  3. 如請求項1之方法,其中該準則為該非MPM索引為該複數個框內預測模式中之前X個非MPM索引中的一者,X為一整數。
  4. 如請求項1之方法,其中該準則為該非MPM索引為該複數個框內預測模式中之後X個非MPM索引中的一者,X為一整數。
  5. 如請求項1之方法,其中該準則為該非MPM索引為該複數個框內預測模式中之X個選定非MPM索引中的一者,X為一整數。
  6. 如請求項1之方法,其中該語法元素為一第一語法元素,該方法進一步包含:自該位元串流基於該第一語法元素指示一非MPM索引被使用而解碼指示該非MPM索引是否參考一水平模式或一垂直模式中之一者的一第二語法元素。
  7. 如請求項1之方法,其中M取決於以下各者中之一者:一寫碼單元大小及一預測單元大小。
  8. 一種編碼一視訊資料區塊之方法,該方法包含:自複數個框內預測模式當中導出用於框內預測該視訊資料區塊之M個最可能模式(MPM),其中M大於3;編碼指示一MPM索引抑或一非MPM索引用以指示該複數個框內預測模式中用於框內預測該視訊資料區塊之一選定框內預測模式的一語法元素;基於該語法元素指示該非MPM索引用以指示該選定框內預測模式而編碼該非MPM索引,其中若該非MPM索引滿足一準則,則該非MPM索引在位元串流中編碼為短於log2 N 個位元之一碼字,且否則編碼為具有log2 N 個位元之一固定長度碼,其中存在該非MPM索引之總計N個可用值;及基於該選定框內預測模式而編碼該視訊資料區塊。
  9. 如請求項8之方法,其中:該視訊資料區塊為該視訊資料之一當前圖像中的一當前寫碼單元(CU),該視訊資料區塊之該選定框內預測模式為該當前CU之一當前預測單元(PU)的一選定框內預測模式,且編碼該視訊資料區塊包含:使用該選定框內預測模式產生該PU之一預測性區塊;及產生表示該當前CU與該預測性區塊之間的像素差的殘餘資料。
  10. 如請求項8之方法,其中該準則為該非MPM索引為該複數個框內預測模式中之前X個非MPM索引中的一者,X為一整數。
  11. 如請求項8之方法,其中該準則為該非MPM索引為該複數個框內預測模式中之後X個非MPM索引中的一者,X為一整數。
  12. 如請求項8之方法,其中該準則為該非MPM索引為該複數個框內預測模式中之X個選定非MPM索引中的一者,X為一整數。
  13. 如請求項8之方法,其中該語法元素為一第一語法元素,該方法進一步包含:基於該第一語法元素指示該非MPM索引用以指示該視訊資料區塊之該選定框內預測模式而編碼指示該非MPM索引是否參考一水平模式或一垂直模式中之一者的一第二語法元素。
  14. 如請求項8之方法,其中M取決於以下各者中之一者:一寫碼單元大小及一預測單元大小。
  15. 一種用於解碼一視訊資料區塊之裝置,該裝置包含:一記憶體,其經組態以儲存該視訊資料;及一或多個處理器,其經組態以進行以下操作:自複數個框內預測模式當中導出用於框內預測該視訊資料 區塊之M個最可能模式(MPM),其中M大於3;解碼指示一MPM索引抑或一非MPM索引用以指示該複數個框內預測模式中用於框內預測該視訊資料區塊之一選定框內預測模式的一語法元素,其中該MPM索引指示該M個MPM中之哪一者為該選定框內預測模式,且其中該非MPM索引指示該複數個框內預測模式中除該M個MPM外之哪一者為該選定框內預測模式;基於該MPM索引指示該選定框內預測模式而解碼該非MPM索引,其中若該非MPM索引滿足一準則,則該非MPM索引在位元串流中編碼為短於log2 N 個位元之一碼字,且否則在該位元串流中編碼為具有log2 N 個位元之一固定長度碼,其中存在該非MPM索引之總計N個可用值;及基於該選定框內預測模式而重建構該視訊資料區塊。
  16. 如請求項15之裝置,其中:該視訊資料區塊為該視訊資料之一當前圖像中的一當前寫碼單元(CU),該視訊資料區塊之該選定框內預測模式為該當前CU之一當前預測單元(PU)的一選定框內預測模式,且該一或多個處理器經組態以使得作為重建構該視訊資料區塊的部分,該一或多個處理器進行以下操作:使用該選定框內預測模式產生該當前PU之一預測性區塊;及藉由將該CU之PU的該等預測性區塊之樣本加至該當前CU之變換單元(TU)的變換區塊之對應樣本而使用殘餘值重建構該當前CU。
  17. 如請求項15之裝置,其中該準則為該非MPM索引為該複數個框內預測模式中之前X個非MPM索引中的一者,X為一整數。
  18. 如請求項15之裝置,其中該準則為該非MPM索引為該複數個框內預測模式中之後X個非MPM索引中的一者,X為一整數。
  19. 如請求項15之裝置,其中該準則為該非MPM索引為該複數個框內預測模式中之X個選定非MPM索引中的一者,X為一整數。
  20. 如請求項15之裝置,其中該語法元素為一第一語法元素,該一或多個處理器經進一步組態以進行以下操作:自該位元串流基於該第一語法元素指示一非MPM索引被使用而解碼指示該非MPM索引是否參考一水平模式或一垂直模式中之一者的一第二語法元素。
  21. 如請求項15之裝置,其中M取決於以下各者中之一者:一寫碼單元大小及一預測單元大小。
  22. 一種用於編碼一視訊資料區塊之裝置,該裝置包含:一記憶體,其經組態以儲存該視訊資料;及一或多個處理器,其經組態以進行以下操作:自複數個框內預測模式當中導出用於框內預測該視訊資料區塊之M個最可能模式(MPM),其中M大於3;編碼指示一MPM索引抑或一非MPM索引用以指示該複數個框內預測模式中用於框內預測該視訊資料區塊之一選定框內預測模式的一語法元素;基於該語法元素指示該非MPM索引用以指示該選定框內預測模式而編碼該非MPM索引,其中若該非MPM索引滿足一準則,則該非MPM索引在位元串流中編碼為短於log2 N 個位元之一碼字,且否則編碼為具有log2 N 個位元之一固定長度碼,其中存在該非MPM索引之總計N個可用值;及基於該選定框內預測模式而編碼該視訊資料區塊。
  23. 如請求項22之裝置,其中: 該視訊資料區塊為該視訊資料之一當前圖像中的一當前寫碼單元(CU),該視訊資料區塊之該選定框內預測模式為該當前CU之一當前預測單元(PU)的一選定框內預測模式,且該一或多個處理器經組態以使得作為編碼該視訊資料區塊的部分,該一或多個處理器進行以下操作:使用該選定框內預測模式產生該PU之一預測性區塊;及產生表示該當前CU與該預測性區塊之間的像素差的殘餘資料。
  24. 如請求項22之裝置,其中該準則為該非MPM索引為該複數個框內預測模式中之前X個非MPM索引中的一者,X為一整數。
  25. 如請求項22之裝置,其中該準則為該非MPM索引為該複數個框內預測模式中之後X個非MPM索引中的一者,X為一整數。
  26. 如請求項22之裝置,其中該準則為該非MPM索引為該複數個框內預測模式中之X個選定非MPM索引中的一者,X為一整數。
  27. 如請求項22之裝置,其中該語法元素為一第一語法元素,該一或多個處理器經進一步組態以進行以下操作:基於該第一語法元素指示該非MPM索引用以指示該視訊資料區塊之該選定框內預測模式而編碼指示該非MPM索引是否參考一水平模式或一垂直模式中之一者的一第二語法元素。
  28. 如請求項22之裝置,其中M取決於以下各者中之一者:一寫碼單元大小及一預測單元大小。
  29. 一種用於寫碼一視訊資料區塊之視訊寫碼裝置,其包含:用於自複數個框內預測模式當中導出用於框內預測該視訊資料區塊之M個最可能模式(MPM)的構件,其中M大於3;用於寫碼指示一MPM索引抑或一非MPM索引用以指示該複數 個框內預測模式中用於框內預測該視訊資料區塊之一選定框內預測模式的一語法元素的構件;用於基於該語法元素指示該非MPM索引用以指示該選定框內預測模式而寫碼該非MPM索引的構件,其中若該非MPM索引滿足一準則,則該非MPM索引在位元串流中編碼為短於log2 N 個位元之一碼字,且否則編碼為具有log2 N 個位元之一固定長度碼,其中存在該非MPM索引之總計N個可用值;及用於基於該選定框內預測模式而寫碼該視訊資料區塊的構件。
  30. 一種電腦可讀媒體,其儲存在由一或多個處理器執行時使該一或多個處理器進行以下操作的指令:自複數個框內預測模式當中導出用於框內預測一視訊資料區塊之M個最可能模式(MPM),其中M大於3;寫碼指示一MPM索引抑或一非MPM索引用以指示該複數個框內預測模式中用於框內預測該視訊資料區塊之一選定框內預測模式的一語法元素;基於該語法元素指示該非MPM索引用以指示該選定框內預測模式而寫碼該非MPM索引,其中若該非MPM索引滿足一準則,則該非MPM索引在位元串流中編碼為短於log2 N 個位元之一碼字,且否則編碼為具有log2 N 個位元之一固定長度碼,其中存在該非MPM索引之總計N個可用值;及基於該選定框內預測模式而寫碼該視訊資料區塊。
TW105119224A 2015-06-18 2016-06-17 幀內預測及幀內模式寫碼 TW201717623A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562181744P 2015-06-18 2015-06-18
US201562192310P 2015-07-14 2015-07-14
US15/184,067 US20160373742A1 (en) 2015-06-18 2016-06-16 Intra prediction and intra mode coding

Publications (1)

Publication Number Publication Date
TW201717623A true TW201717623A (zh) 2017-05-16

Family

ID=56204079

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105119224A TW201717623A (zh) 2015-06-18 2016-06-17 幀內預測及幀內模式寫碼

Country Status (10)

Country Link
US (1) US20160373742A1 (zh)
EP (1) EP3311567B1 (zh)
JP (1) JP6770001B2 (zh)
KR (1) KR102231810B1 (zh)
CN (1) CN107750455B (zh)
AU (1) AU2016278978A1 (zh)
ES (1) ES2832607T3 (zh)
HU (1) HUE051893T2 (zh)
TW (1) TW201717623A (zh)
WO (1) WO2016205699A1 (zh)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11463689B2 (en) 2015-06-18 2022-10-04 Qualcomm Incorporated Intra prediction and intra mode coding
US10841593B2 (en) 2015-06-18 2020-11-17 Qualcomm Incorporated Intra prediction and intra mode coding
US10142627B2 (en) 2015-06-18 2018-11-27 Qualcomm Incorporated Intra prediction and intra mode coding
US11233990B2 (en) * 2016-02-08 2022-01-25 Sharp Kabushiki Kaisha Systems and methods for intra prediction coding
CN113810713B (zh) * 2016-04-29 2024-05-10 世宗大学校产学协力团 用于对图像信号进行编码和解码的方法和装置
FI3552393T3 (fi) * 2016-12-23 2023-05-19 Huawei Tech Co Ltd Koodauslaite laajennussuunnatun intra-ennustustilan signaloimiseksi suunnattujen intra-ennustustilojen joukossa
CN110089113B (zh) * 2017-01-02 2023-10-20 Lx 半导体科技有限公司 图像编码/解码方法、设备以及用于存储比特流的记录介质
EP3399754A1 (en) * 2017-05-04 2018-11-07 Thomson Licensing Method and apparatus for most probable mode (mpm) reordering for intra prediction
US10742975B2 (en) * 2017-05-09 2020-08-11 Futurewei Technologies, Inc. Intra-prediction with multiple reference lines
CN117319643A (zh) * 2017-05-17 2023-12-29 株式会社Kt 用于解码视频的方法和用于编码视频的方法
EP3410722A1 (en) 2017-05-31 2018-12-05 Thomson Licensing Method and apparatus for low-complexity bi-directional intra prediction in video encoding and decoding
JP7147145B2 (ja) * 2017-09-26 2022-10-05 富士通株式会社 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
KR102391834B1 (ko) * 2017-11-17 2022-04-27 에프쥐 이노베이션 컴퍼니 리미티드 조정된 인트라 모드 목록에 기초한 비디오 데이터를 코딩하기 위한 디바이스 및 방법
US10841578B2 (en) * 2018-02-12 2020-11-17 Tencent America LLC Method and apparatus for using an intra prediction coding tool for intra prediction of non-square blocks in video compression
US10652534B2 (en) * 2018-03-08 2020-05-12 Tencent America LLC Methods and apparatus for directional intra prediction in video compression
KR102618498B1 (ko) * 2018-03-08 2023-12-27 삼성전자주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
CN116614644A (zh) 2018-03-27 2023-08-18 株式会社Kt 对图像进行解码或编码的方法以及图像数据的传送方法
EP3777169B1 (en) * 2018-03-28 2023-05-03 Fg Innovation Company Limited Device and method for decoding video data in multiple reference line prediction
US10785479B2 (en) 2018-03-30 2020-09-22 Hulu, LLC Intra prediction mode signaling for video coding
US11277644B2 (en) 2018-07-02 2022-03-15 Qualcomm Incorporated Combining mode dependent intra smoothing (MDIS) with intra interpolation filter switching
US10630979B2 (en) * 2018-07-16 2020-04-21 Tencent America LLC Reference sample padding and filtering for intra prediction in video compression
US11509890B2 (en) * 2018-07-24 2022-11-22 Hfi Innovation Inc. Methods and apparatus for entropy coding and decoding aspects of video data
US11483575B2 (en) * 2018-08-24 2022-10-25 Hfi Innovation Inc. Coding transform coefficients with throughput constraints
US11394965B2 (en) * 2018-09-11 2022-07-19 Lg Electronics Inc. Method for processing image on basis of intra prediction mode, and device therefor
US20200099927A1 (en) * 2018-09-24 2020-03-26 Qualcomm Incorporated Most probable modes (mpms) construction
EP3629579A1 (en) * 2018-09-27 2020-04-01 Ateme Method for image processing and apparatus for implementing the same
EP3866468A4 (en) * 2018-10-12 2022-07-27 Wilus Institute of Standards and Technology Inc. VIDEO SIGNAL PROCESSING METHOD AND APPARATUS USING MULTI-ASSUMPTION PREDICTION
US11303885B2 (en) 2018-10-25 2022-04-12 Qualcomm Incorporated Wide-angle intra prediction smoothing and interpolation
WO2020102000A1 (en) * 2018-11-14 2020-05-22 Interdigital Vc Holdings, Inc. Adaptation of selection of most probable mode candidates depending on block shape
MX2021006390A (es) 2018-11-29 2021-09-10 Huawei Tech Co Ltd Codificador, decodificador y métodos correspondientes de la construcción de lista de modo más probable para bloques con predicción de multihipótesis.
US11032551B2 (en) * 2018-12-04 2021-06-08 Tencent America LLC Simplified most probable mode list generation scheme
CN113261291A (zh) * 2018-12-22 2021-08-13 北京字节跳动网络技术有限公司 基于多个参数的两步交叉分量预测模式
EP3829167A4 (en) 2018-12-25 2021-08-11 Guangdong Oppo Mobile Telecommunications Corp., Ltd. DECODING PREDICTION METHOD AND APPARATUS, AND COMPUTER STORAGE MEDIUM
CN111435993B (zh) * 2019-01-14 2022-08-26 华为技术有限公司 视频编码器、视频解码器及相应方法
KR20210100741A (ko) * 2019-02-21 2021-08-17 엘지전자 주식회사 영상 코딩 시스템에서 인트라 예측을 사용하는 영상 디코딩 방법 및 그 장치
BR112021018554A2 (pt) * 2019-03-23 2021-11-30 Huawei Tech Co Ltd Codificador, decodificador e métodos correspondentes para predição intra
AU2020256658A1 (en) 2019-04-12 2021-10-28 Beijing Bytedance Network Technology Co., Ltd. Most probable mode list construction for matrix-based intra prediction
CN117499656A (zh) 2019-04-16 2024-02-02 北京字节跳动网络技术有限公司 帧内编解码模式下的矩阵推导
US20220201286A1 (en) * 2019-04-25 2022-06-23 Mediatek Inc. Method and Apparatus of Encoding or Decoding with Mode Dependent Intra Smoothing Filter in Intra Prediction
WO2020215338A1 (zh) * 2019-04-26 2020-10-29 深圳市大疆创新科技有限公司 视频编解码的方法和装置
KR20220002318A (ko) 2019-05-01 2022-01-06 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 필터링을 이용한 행렬 기반 인트라 예측
CN117097912A (zh) 2019-05-01 2023-11-21 北京字节跳动网络技术有限公司 基于矩阵的帧内预测的上下文编码
WO2020228761A1 (en) * 2019-05-14 2020-11-19 Beijing Bytedance Network Technology Co., Ltd. Filter selection for intra video coding
JP2022533190A (ja) 2019-05-22 2022-07-21 北京字節跳動網絡技術有限公司 アップサンプリングを使用した行列ベースのイントラ予測
CN114051735A (zh) 2019-05-31 2022-02-15 北京字节跳动网络技术有限公司 基于矩阵的帧内预测中的一步下采样过程
CN117768652A (zh) 2019-06-05 2024-03-26 北京字节跳动网络技术有限公司 视频处理方法、装置、介质、以及存储比特流的方法
JP2022536967A (ja) * 2019-06-21 2022-08-22 ヴィド スケール インコーポレイテッド オプティカルフローによる動き補償のための精度精緻化
CN114270825A (zh) 2019-08-19 2022-04-01 北京字节跳动网络技术有限公司 基于计数器的帧内预测模式的初始化
CN114342408A (zh) * 2019-08-26 2022-04-12 北京字节跳动网络技术有限公司 视频编码中帧内编码模式的扩展
KR20220082847A (ko) 2019-10-28 2022-06-17 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 색상 성분에 기초한 신택스 시그널링 및 파싱
WO2021110568A1 (en) * 2019-12-05 2021-06-10 Interdigital Vc Holdings France, Sas Intra sub partitions for video encoding and decoding combined with multiple transform selection, matrix weighted intra prediction or multi-reference-line intra prediction
CN111741299B (zh) * 2020-07-09 2022-03-25 腾讯科技(深圳)有限公司 帧内预测模式的选择方法、装置、设备及存储介质
CN113691809A (zh) * 2021-07-07 2021-11-23 浙江大华技术股份有限公司 帧内预测方法及编、解码方法、电子设备及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101585565B1 (ko) * 2011-06-17 2016-01-14 미디어텍 인크. 인트라 예측 모드의 코딩을 위한 방법 및 장치
US9762900B2 (en) * 2011-06-17 2017-09-12 Lg Electronics Inc. Method and apparatus for encoding/decoding video in intra prediction mode
US10070126B2 (en) * 2011-06-28 2018-09-04 Hfi Innovation Inc. Method and apparatus of intra mode coding
CN102857750B (zh) * 2011-07-01 2015-05-06 华为技术有限公司 帧内预测编解码处理方法、装置和系统
US9363511B2 (en) * 2011-09-13 2016-06-07 Mediatek Singapore Pte. Ltd. Method and apparatus for Intra mode coding in HEVC
US9769479B2 (en) * 2011-10-24 2017-09-19 Infobridge Pte. Ltd. Image decoding apparatus
US9154796B2 (en) * 2011-11-04 2015-10-06 Qualcomm Incorporated Intra-mode video coding

Also Published As

Publication number Publication date
EP3311567A1 (en) 2018-04-25
KR20180019564A (ko) 2018-02-26
KR102231810B1 (ko) 2021-03-24
CN107750455B (zh) 2020-08-18
WO2016205699A1 (en) 2016-12-22
JP6770001B2 (ja) 2020-10-14
AU2016278978A1 (en) 2017-11-30
HUE051893T2 (hu) 2021-03-29
CN107750455A (zh) 2018-03-02
EP3311567B1 (en) 2020-08-19
US20160373742A1 (en) 2016-12-22
ES2832607T3 (es) 2021-06-10
JP2018523373A (ja) 2018-08-16

Similar Documents

Publication Publication Date Title
JP7033179B2 (ja) イントラ予測およびイントラモードコーディング
CN107771393B (zh) 帧内预测及帧内模式译码
CN107736022B (zh) 帧内预测及帧内模式译码
CN107743705B (zh) 译码视频数据的方法和装置及非暂时性计算机可读媒体
CN107750457B (zh) 用于译码视频数据块的方法和装置及计算机可读存储介质
TW201717623A (zh) 幀內預測及幀內模式寫碼
US20170085891A1 (en) Restriction of escape pixel signaled values in palette mode video coding
CN113940069A (zh) 用于视频译码中的低频不可分离变换的变换和最后有效系数位置信令
CN114128286A (zh) 视频编解码中的环绕运动补偿
TW201517599A (zh) 內部運動補償延伸
TW202123705A (zh) 低頻不可分離變換(lfnst)訊號傳遞
US11368715B2 (en) Block-based delta pulse code modulation for video coding
TW202044833A (zh) 使用不同色度格式之三角預測單元模式中之視訊寫碼
CN115462072A (zh) 视频译码中的高级去块滤波(dbf)、自适应环路滤波(alf)和采样自适应偏移(sao)控制以及自适应参数集(aps)数量约束
CN114982240A (zh) 用于视频译码的多重变换集信令
JP2022552173A (ja) ビデオコーディングのための変換スキップにおける残差値のためのコーディング方式をシグナリングすること
TW202106026A (zh) 用於基於區塊差量脈衝碼調變(bdpcm)模式之最大允許區塊尺寸
CN114450947A (zh) 用于无损以及混合无损和有损视频编解码的模式相关块分割
TW202126039A (zh) 用於視訊解碼的參數集訊號傳遞