TW201603563A - 用於視訊寫碼之具有執行長度碼之調色盤預測器信令 - Google Patents
用於視訊寫碼之具有執行長度碼之調色盤預測器信令 Download PDFInfo
- Publication number
- TW201603563A TW201603563A TW104109599A TW104109599A TW201603563A TW 201603563 A TW201603563 A TW 201603563A TW 104109599 A TW104109599 A TW 104109599A TW 104109599 A TW104109599 A TW 104109599A TW 201603563 A TW201603563 A TW 201603563A
- Authority
- TW
- Taiwan
- Prior art keywords
- palette
- video
- prediction vector
- binary prediction
- execution length
- Prior art date
Links
- 230000011664 signaling Effects 0.000 title description 32
- 239000013598 vector Substances 0.000 claims abstract description 337
- 238000000034 method Methods 0.000 claims abstract description 250
- 238000003860 storage Methods 0.000 claims description 22
- 238000004891 communication Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 description 58
- 239000000523 sample Substances 0.000 description 43
- 241000023320 Luma <angiosperm> Species 0.000 description 37
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 37
- 230000005540 biological transmission Effects 0.000 description 28
- 238000007906 compression Methods 0.000 description 27
- 230000006835 compression Effects 0.000 description 26
- 238000013139 quantization Methods 0.000 description 24
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 21
- 238000010586 diagram Methods 0.000 description 16
- 238000013507 mapping Methods 0.000 description 16
- 238000012546 transfer Methods 0.000 description 15
- 238000005516 engineering process Methods 0.000 description 8
- 239000012634 fragment Substances 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000009795 derivation Methods 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 238000000638 solvent extraction Methods 0.000 description 5
- 238000005192 partition Methods 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 241000209094 Oryza Species 0.000 description 3
- 235000007164 Oryza sativa Nutrition 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000006837 decompression Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000013074 reference sample Substances 0.000 description 3
- 235000009566 rice Nutrition 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004040 coloring Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012432 intermediate storage Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000001568 sexual effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241000985610 Forpus Species 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/93—Run-length coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
- H04N19/27—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding involving both synthetic and natural picture components, e.g. synthetic natural hybrid coding [SNHC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
Abstract
本發明描述用於對用於預測用於基於調色盤之視訊寫碼之一調色盤的一二進位預測向量進行編碼的技術。在一個實例中,一種解碼視訊之方法包含:接收用於視訊資料之一當前區塊之一經編碼二進位預測向量;使用一執行長度解碼技術來解碼該經編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
Description
本申請案主張以下各者之權利:2014年3月25日申請之美國臨時申請案第61/970,257號;2014年4月17日申請之美國臨時申請案第61/981,105號;2014年5月23日申請之美國臨時申請案第62/002,668號;2014年6月20日申請之美國臨時申請案第62/015,327號;2014年6月27日申請之美國臨時申請案第62/018,461號;及2014年8月24日申請之美國臨時申請案第62/041,119號,該等申請案中之每一者的全部內容係以引用的方式併入本文中。
本發明係關於視訊編碼及解碼。
數位視訊能力可併入至廣泛範圍之器件中,包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、平板電腦、電子書閱讀器、數位攝影機、數位記錄器件、數位媒體播放器、視訊遊戲器件、視訊遊戲控制台、蜂巢式或衛星無線電電話(所謂的「智慧型電話」)、視訊電話會議器件、視訊串流器件及其類似者。數位視訊器件實施視訊壓縮技術,諸如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分進階視訊寫碼(AVC)所定義之標準、目前正在開發之高效率視訊寫碼(HEVC)標準及
此等標準之擴展中所描述的彼等視訊壓縮技術。視訊器件可藉由實施此等視訊壓縮技術而更有效地傳輸、接收、編碼、解碼及/或儲存數位視訊資訊。
視訊壓縮技術執行空間(圖像內)預測及/或時間(圖像間)預測以減少或移除視訊序列中固有之冗餘。對於基於區塊之視訊寫碼,可將視訊片段(亦即,視訊圖框或視訊圖框之一部分)分割成視訊區塊。圖像之經框內寫碼(i)片段中之視訊區塊可使用相對於同一圖像中之相鄰區塊中之參考樣本的空間預測來編碼。圖像之經框間寫碼(P或B)片段中之視訊區塊可使用相對於同一圖像中之相鄰區塊中之參考樣本的空間預測或相對於其他參考圖像中之參考樣本的時間預測。圖像可被稱作圖框,且參考圖像可被稱作參考圖框。
空間或時間預測產生用於待寫碼之區塊的預測性區塊。殘餘資料表示待寫碼之原始區塊與預測性區塊之間的像素差。經框間寫碼區塊係根據指向形成預測性區塊之參考樣品之區塊的運動向量來編碼,且殘餘資料指示經寫碼區塊與預測性區塊之間的差。經框內寫碼區塊係根據框內寫碼模式及殘餘資料來編碼。為了進一步壓縮,可將殘餘資料自像素域變換至變換域,從而產生接著可經量化之殘餘係數。最初配置成二維陣列的經量化係數可經掃描以便產生係數的一維向量,且熵寫碼可應用以達成甚至更多壓縮。
本發明係關於視訊編碼及解碼技術。詳言之,本發明描述用於利用基於調色盤之寫碼模式編碼及解碼視訊資料之技術。在基於調色盤之寫碼模式中,視訊資料之區塊的像素值可相對於相關聯於視訊資料之區塊之色彩值之調色盤而寫碼。色彩值之調色盤可藉由視訊編碼器來判定且可含有對於特定區塊而言最常見之色彩值。視訊編碼器可將色彩值之調色盤中之索引指派給視訊資料之區塊中之每一像素,且
將此索引發信至視訊解碼器。視訊解碼器可接著使用調色盤中之索引來判定將什麼色彩值用於區塊中之特定像素。
除了發信調色盤中之索引之外,視訊編碼器亦可在經編碼視訊位元串流中傳輸調色盤本身。用於傳輸調色盤之技術可包括明確發信調色盤值,以及根據來自一或多個先前經寫碼區塊之調色盤輸入項預測用於當前區塊之調色盤輸入項。本發明描述用於發信指示來自視訊資料之先前經寫碼區塊之哪些調色盤輸入項可重複用於視訊資料之當前區塊的一或多個語法元素(例如,二進位預測向量)之技術。本發明進一步描述用於編碼及解碼二進位預測向量之技術。
在本發明之一個實例中,一種解碼視訊資料之方法包含:接收用於視訊資料之一當前區塊之一經編碼二進位預測向量;使用一執行長度解碼技術來解碼該經編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
在本發明之另一實例中,一種編碼視訊資料之方法包含:產生用於視訊資料之該當前區塊之一調色盤;產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量,該二進位預測向量包含指示先前所用調色盤輸入項是否將重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;使用一執行長度編碼技術來編碼該二進位預測向量;及使用該調色盤來編碼視訊資料之該當前區塊。
在本發明之另一實例中,一種經組態以解碼視訊資料之裝置包含:經組態以儲存該視訊資料之一記憶體;及與該記憶體通信之一視訊解碼器,該視訊解碼器經組態以:接收用於該視訊資料之一當前區塊之一經編碼二進位預測向量;使用一執行長度解碼技術來解碼該經
編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
在本發明之另一實例中,一種經組態以編碼視訊資料之裝置包含:經組態以儲存該視訊資料之一記憶體;與該記憶體通信之一視訊編碼器,該視訊編碼器經組態以:產生用於該視訊資料之一當前區塊之一調色盤;產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;使用一執行長度編碼技術來編碼該二進位預測向量;及使用該調色盤來編碼視訊資料之該當前區塊。
在本發明之另一實例中,一種經組態以解碼視訊資料之裝置包含:用於接收用於視訊資料之一當前區塊之一經編碼二進位預測向量的構件;用於使用一執行長度解碼技術來解碼該經編碼二進位預測向量的構件;用於基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤的構件,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及用於使用該調色盤來解碼視訊資料之該當前區塊的構件。
在本發明之另一實例中,一種經組態以編碼視訊資料之裝置包含:用於產生用於視訊資料之該當前區塊之一調色盤的構件;用於產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量的構件,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;用於使用一執行長度編碼技術來編碼該二進位預測向量的構件;及用於使用該調色盤來編碼視訊資料之該當前區塊的構件。
在另一實例中,本發明描述一種儲存指令之電腦可讀儲存媒體,該等指令在執行時使經組態以解碼視訊資料之一器件之一或多個處理器進行以下操作:接收用於該視訊資料之一當前區塊之一經編碼二進位預測向量;使用一執行長度解碼技術來解碼該經編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
在另一實例中,本發明描述一種儲存指令之電腦可讀儲存媒體,該等指令在執行時使經組態以編碼視訊資料之一器件之一或多個處理器進行以下操作:產生用於該視訊資料之一當前區塊之一調色盤;產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;使用一執行長度編碼技術來編碼該二進位預測向量;及使用該調色盤來編碼視訊資料之該當前區塊。
在以下隨附圖式及描述中闡述一或多個實例之細節。其他特徵、目標及優點將自該描述及附圖以及申請專利範圍而顯而易見。
10‧‧‧視訊寫碼系統
12‧‧‧源器件
14‧‧‧目的地器件
16‧‧‧頻道
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧輸出介面
28‧‧‧輸入解碼
30‧‧‧視訊解碼器
32‧‧‧顯示器件
100‧‧‧預測處理單元
102‧‧‧殘餘產生單元
104‧‧‧變換處理單元
106‧‧‧量化單元
108‧‧‧反量化單元
110‧‧‧反變換處理單元
112‧‧‧重建構單元
114‧‧‧濾波器單元
116‧‧‧經解碼圖像緩衝器(DPB)
118‧‧‧熵編碼單元
119‧‧‧視訊記憶體
120‧‧‧框間預測處理單元
122‧‧‧基於調色盤之編碼單元
126‧‧‧框內預測處理單元
150‧‧‧熵解碼單元
152‧‧‧預測處理單元
154‧‧‧反量化單元
156‧‧‧反變換處理單元
158‧‧‧重建構單元
160‧‧‧濾波器單元
162‧‧‧經解碼圖像緩衝器(DPB)
163‧‧‧視訊記憶體
164‧‧‧運動補償單元
165‧‧‧基於調色盤之解碼單元
166‧‧‧框內預測處理單元
178‧‧‧圖像
180‧‧‧第一寫碼單元(CU)
184‧‧‧第一調色盤
188‧‧‧第二寫碼單元(CU)
192‧‧‧第二調色盤
196‧‧‧區塊
200‧‧‧區塊
202‧‧‧輸入項
203‧‧‧調色盤產生單元
204‧‧‧映射單元
204‧‧‧輸入項
206‧‧‧二進位預測向量產生單元
206‧‧‧輸入項
208‧‧‧輸入項
209‧‧‧二進位預測向量壓縮單元
210‧‧‧預測器調色盤緩衝器
210‧‧‧輸入項
212‧‧‧像素值
212‧‧‧輸入項
214‧‧‧映射
215‧‧‧經編碼二進位預測向量
216‧‧‧向量
220‧‧‧當前調色盤
302‧‧‧映射單元
304‧‧‧調色盤產生單元
306‧‧‧二進位預測向量解壓縮單元
310‧‧‧預測器調色盤緩衝器
312‧‧‧映射
314‧‧‧經解碼視訊資料
316‧‧‧經編碼二進位預測向量
圖1為說明可實施本發明中所描述之技術之實例視訊寫碼系統的方塊圖。
圖2為說明可實施本發明中所描述之技術之實例視訊編碼器的方塊圖。
圖3為說明可實施本發明中所描述之技術之實例視訊解碼器的方塊圖。
圖4為說明圖2之視訊編碼器之實例基於調色盤之編碼單元的方
塊圖。
圖5為說明根據本發明之技術之實例調色盤預測技術的概念圖。
圖6為說明根據本發明之技術之實例二進位預測向量編碼技術的概念圖。
圖7為說明圖3之視訊編碼器之實例基於調色盤之解碼單元的方塊圖。
圖8為說明本發明之實例編碼方法的流程圖。
圖9為說明本發明之實例解碼方法的流程圖。
圖10為說明符合本發明之技術的判定用於基於調色盤之視訊寫碼之調色盤輸入項之實例的概念圖。
本發明包括用於視訊寫碼及壓縮之技術。詳言之,本發明描述用於視訊資料之基於調色盤之寫碼的技術。在傳統視訊寫碼中,影像經假定為連續色調且在空間上平滑。基於此等假定,已開發出各種工具,諸如基於區塊之變換、濾波等,且此等工具已展示針對天然內容視訊之良好效能。
然而,在類似遠端桌上型、合作工作及無線顯示器之應用中,電腦產生之螢幕內容(例如,文字或電腦圖形)可為待壓縮之主內容。此類型之內容傾向於具有離散色調及特徵尖銳線,及高對比度目標邊界。連續色調及平滑度之假定可不再適用於螢幕內容,且因此,傳統視訊寫碼技術可不為壓縮包括螢幕內容之視訊資料的有效方式。
基於調色盤之寫碼技術可特別適合於螢幕產生內容寫碼。舉例而言,假定視訊資料之特定區域具有相對較小數目之色彩。視訊寫碼器(例如,視訊編碼器或視訊解碼器)可將所謂的「調色盤」形成為用於表示特定區域(例如,給定區塊)之視訊資料的色彩表。每一像素可與調色盤中表示像素之色彩的輸入項相關聯。舉例而言,視訊寫碼器
可寫碼使像素值與調色盤中之適當值關聯的索引。
用於視訊資料之基於調色盤之寫碼的技術可與一或多個其他寫碼技術(諸如用於框間或框內預測性寫碼之技術)一起使用。舉例而言,如下文將較詳細描述,編碼器或解碼器或組合之編碼器解碼器(編解碼器)可經組態以執行框間或框內預測性寫碼,以及基於調色盤之寫碼。
在一些實例中,基於調色盤之寫碼技術可經組態以與一或多個視訊寫碼標準一起使用。一些實例視訊寫碼標準包括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)一起使用。HEVC係由ITU-T視訊寫碼專家組(VCEG)及ISO/IEC動畫專家組(MPEG)的關於視訊寫碼之聯合合作小組(JCT-VC)開發的新視訊寫碼標準。
最近,HEVC之設計已由ITU-T視訊寫碼專家組(VCEG)及ISO/IEC動畫專家組(MPEG)的關於視訊寫碼之聯合合作小組(JCT-VC)定案。下文被稱作HEVC版本1之最新HEVC規範係描述於「ITU-T H.265(V1)」中,該文件自2015年3月24起可自http://www.itu.int/ITU-T/recommendations/rec.aspx?rec=11885&lang=en獲得。文件ITU-T H.265,H系列:視聽及多媒體系統,視聽服務之基礎結構-移動視訊之寫碼(SERIES H:AUDIOVISUAL AND MULTIMEDIA SYSTEMS,Infrastructure of Audiovisual Services-Coding of Moving Video),「高效率視訊寫碼」(2013年4月)亦描述HEVC標準。下文被稱作RExt的範圍擴展之新規則描述於自2015年3月24日其可自http://www.itu.int/ITU-T/recommendations/rec.aspx?rec=12296&lang=en獲得之「ITU-T H.265
(V2)」中。
當使用實例基於調色盤之寫碼技術時,視訊編碼器可藉由以下操作來編碼視訊資料之區塊:判定用於區塊之調色盤(例如,明確地寫碼調色盤、預測調色盤或其組合)、查找調色盤中之輸入項以表示每一像素之值及用使像素值與調色盤關聯的用於像素之索引值來編碼區塊。視訊解碼器可自經編碼位元流獲得用於區塊之調色盤,以及用於區塊之像素的索引值。視訊解碼器可使像素之索引值與調色盤之輸入項關聯以重建構區塊之像素值。以上實例意欲提供基於調色盤之寫碼的一般描述。
除了將索引值發信至調色盤中之外,視訊編碼器亦可在經編碼視訊位元串流中傳輸調色盤本身。用於傳輸調色盤之技術可包括明確發信調色盤值,以及根據來自一或多個先前經寫碼區塊之調色盤輸入項預測用於當前區塊之調色盤輸入項。調色盤預測技術可包括語法元素串(例如,二進位預測向量),其中二進位預測向量中之每一語法元素之值指示來自視訊資料之先前經寫碼區塊的調色盤輸入項是否可重複用於視訊資料之當前區塊。此等二進位預測向量對於大的調色盤尺寸而言及/或對於儲存大量調色盤輸入項以用於調色盤預測程序中之可能使用的情況而言可能較長。大的二進位預測向量可導致不可接受的位元速率位準。鑒於此等缺點,本發明描述用於在調色盤預測程序中編碼及解碼二進位預測向量之技術。
圖1為說明可利用本發明之技術之實例視訊寫碼系統10的方塊圖。如本文中所使用,術語「視訊寫碼器」大體上係指視訊編碼器及視訊解碼器兩者。在本發明中,術語「視訊寫碼」或「寫碼」可大體上係指視訊編碼或視訊解碼。視訊寫碼系統10之視訊編碼器20及視訊解碼器30表示可經組態以執行根據本發明中所描述之各種實例的用於基於調色盤之視訊寫碼之技術的器件之實例。舉例而言,視訊編碼器
20及視訊解碼器30可經組態以使用基於調色盤之寫碼或非基於調色盤之寫碼來選擇性地寫碼視訊資料之各種區塊,諸如高效率視訊寫碼(HEVC)標準中之CU或PU。非基於調色盤之寫碼模式可指各種框間預測性時間寫碼模式或框內預測性空間寫碼模式,諸如藉由HEVC版本1指定之各種寫碼模式。
如圖1所示,視訊寫碼系統10包括源器件12及目的地器件14。源器件12產生經編碼視訊資料。因此,源器件12可被稱作視訊編碼器件或視訊編碼裝置。目的地器件14可解碼由源器件12產生的經編碼視訊資料。因此,目的地器件14可被稱作視訊解碼器件或視訊解碼裝置。源器件12及目的地器件14可為視訊寫碼器件或視訊寫碼裝置之實例。源器件12、目的地器件14或兩者之各種實施可包括一或多個處理器及耦接至該一或多個處理器之記憶體。記憶體可包括(但不限於)RAM、ROM、EEPROM、快閃記憶體,或可用以儲存指令或資料結構之形式之所要程式碼且可由電腦存取的任何其他媒體,如本文中所描述。
源器件12及目的地器件14可包含廣泛範圍之器件,包括桌上型電腦、行動計算器件、筆記型(例如,膝上型)電腦、平板電腦、機上盒、諸如所謂的「智慧型」電話之手持電話、電視、攝影機、顯示器件、數位媒體播放器、視訊遊戲控制台、車載電腦(in-car computer)或其類似者。
目的地器件14可經由頻道16自源器件12接收經編碼視訊資料。頻道16可包含能夠將經編碼視訊資料自源器件12移動至目的地器件14的一或多個媒體或器件。在一個實例中,頻道16可包含使源器件12能夠即時地將經編碼視訊資料直接傳輸至目的地器件14的一或多個通信媒體。在此實例中,源器件12可根據通信標準(諸如,無線通信協定)來調變經編碼視訊資料,且可將經調變視訊資料傳輸至目的地器件14。一或多個通信媒體可包括無線及/或有線通信媒體,諸如射頻
(RF)頻譜或一或多個實體傳輸線。一或多個通信媒體可形成基於封包之網路(諸如區域網路、廣域網路或全球網路(例如,網際網路))的部分。一或多個通信媒體可包括路由器、交換器、基地台,或促進自源器件12至目的地器件14之通信的其他設備。
在另一實例中,頻道16可包括儲存由源器件12產生之經編碼視訊資料的儲存媒體。在此實例中,目的地器件14可例如經由磁碟存取或卡存取來存取儲存媒體。儲存媒體可包括多種局部存取之資料儲存媒體,諸如Blu-ray碟片、DVD、CD-ROM、快閃記憶體,或用於儲存經編碼視訊資料的其他合適數位儲存媒體。
在另一實例中,頻道16可包括儲存由源器件12產生之經編碼視訊資料的檔案伺服器或另一中間儲存器件。在此實例中,目的地器件14可經由串流傳輸或下載來存取儲存於檔案伺服器或另一中間儲存器件處的經編碼視訊資料。檔案伺服器可為能夠儲存經編碼視訊資料且將經編碼視訊資料傳輸至目的地器件14之類型的伺服器。實例檔案伺服器包括web伺服器(例如,用於網站)、檔案傳送協定(FTP)伺服器、網路附加儲存(NAS)器件、HTTP串流伺服器及本端磁碟機。
目的地器件14可經由標準資料連接(諸如,網際網路連接)來存取經編碼視訊資料。資料連接之實例類型可包括無線頻道(例如,Wi-Fi連接)、有線連接(例如,DSL、電纜數據機等),或適於存取儲存於檔案伺服器上之經編碼視訊資料的兩者之組合。經編碼視訊資料自檔案伺服器的傳輸可為串流傳輸、下載傳輸或兩者之組合。
用於視訊寫碼中的基於調色盤之寫碼模式的本發明之技術不限於無線應用或設定。該等技術可應用於支援多種多媒體應用之視訊寫碼,諸如空中電視廣播、有線電視傳輸、衛星電視傳輸、串流視訊傳輸,例如經由網際網路編碼儲存於資料儲存媒體上的視訊資料、解碼儲存於資料儲存媒體上的視訊資料,或其他應用。在一些實例中,視
訊寫碼系統10可經組態以支援單向或雙向視訊傳輸以支援諸如視訊串流、視訊播放、視訊廣播及/或視訊電話之應用。
圖1中所說明之視訊寫碼系統10僅為實例,且本發明之技術可應用於未必包括編碼器件與解碼器件之間的任何資料通信的視訊寫碼設定(例如,視訊編碼或視訊解碼)。在其他實例中,資料係自區域記憶體擷取、經由網路串流或經過類似處理。視訊編碼器件可編碼資料且將資料儲存至記憶體,及/或視訊解碼器件可自記憶體擷取資料且解碼資料。在許多實例中,編碼及解碼係藉由彼此不通信而簡單地將資料編碼至記憶體及/或自記憶體擷取資料並解碼資料的器件來執行。
在圖1之實例中,源器件12包括視訊源18、視訊編碼器20及輸出介面22。在一些實例中,輸出介面22可包括調變器/解調器(數據機)及/或傳輸器。視訊源18可包括例如視訊攝影機之視訊擷取器件、含有先前所擷取之視訊資料的視訊封存檔、用以自視訊內容提供者接收視訊資料的視訊饋入介面,及/或用於產生視訊資料的電腦圖形系統,或視訊資料之此等源的組合。
視訊編碼器20可編碼來自視訊源18之視訊資料。在一些實例中,源器件12經由輸出介面22而將經編碼視訊資料直接傳輸至目的地器件14。在其他實例中,經編碼視訊資料亦可儲存至儲存媒體或檔案伺服器上,以稍後由目的地器件14存取以用於解碼及/或播放。
在圖1之實例中,目的地器件14包括輸入介面28、視訊解碼器30及顯示器件32。在一些實例中,輸入介面28包括接收器及/或數據機。輸入介面28可經由頻道16來接收經編碼視訊資料。顯示器件32可與目的地器件14整合或可在該目的地器件外。大體而言,顯示器件32顯示經解碼視訊資料。顯示器件32可包含多種顯示器件,諸如液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示器件。
視訊編碼器20及視訊解碼器30各自可實施為多種合適電路中之任一者,諸如一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、硬體或其任何組合。若該等技術部分地以軟體來實施,則器件可將用於軟體之指令儲存於合適的非暫時性電腦可讀儲存媒體中,且可在硬體中使用一或多個處理器來執行該等指令以執行本發明之技術。可將上述內容(包括硬體、軟體、硬體與軟體之組合等)中之任一者視為一或多個處理器。視訊編碼器20及視訊解碼器30中之每一者可包括於一或多個編碼器或解碼器中,編碼器或解碼器中之任一者可整合為各別器件中的組合式編碼器/解碼器(編碼解碼器)之部分。
本發明可大體上指視訊編碼器20將某一資訊「發信」或「傳輸」至另一器件,諸如視訊解碼器30。術語「發信」或「傳輸」可大體上指用以解碼壓縮視訊資料之語法元素及/或其他資料的傳達。此傳達可即時地或近即時地發生。替代地,可歷時時間跨度發生此通信,諸如此通信可在當編碼時在經編碼位元串流中將語法元素儲存至電腦可讀儲存媒體時發生,接著,在儲存至此媒體之後可由解碼器件在任何時間擷取該等語法元素。
在一些實例中,視訊編碼器20及視訊解碼器30根據視訊壓縮標準(諸如上文提及且在HEVC版本1中描述之HEVC標準)操作。除了基本HEVC標準之外,存在持續努力產生用於HEVC之可調式視訊寫碼、多視圖視訊寫碼及3D寫碼擴展。另外,可提供基於調色盤之寫碼模式(例如,如本發明中所描述)以用於擴展HEVC標準。在一些實例中,本發明中所描述的用於基於調色盤之寫碼的技術可應用於經組態以根據其他視訊寫碼標準或未來標準操作的編碼器及解碼器。因此,HEVC編解碼器中用於寫碼單元(CU)或預測單元(PU)之寫碼的基於調色板之寫碼模式的應用係為了實例之目的而描述。
在各種實例中,本發明中所描述之技術可包括基於調色盤之寫碼中的用於判定、預測及/或發信調色盤之各種組合的技術。如下文將較描述,該等技術可包括判定調色盤預測器、產生二進位預測向量及編碼/解碼二進位預測向量的任何組合。儘管出於說明及清晰目的可個別地描述某些實例,本發明涵蓋本文中所描述的用於基於調色盤之寫碼的技術之任何組合。
如下文參看圖4至圖9將更詳細解釋,視訊編碼器20可經組態以:產生用於該視訊資料之一當前區塊之一調色盤;產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量,該二進位預測向量包含指示先前所用調色盤輸入項(亦即,用於先前經寫碼區塊之調色盤中之輸入項)是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;使用一執行長度編碼技術來編碼該二進位預測向量;及使用該調色盤來編碼視訊資料之該當前區塊。同樣地,視訊解碼器30可經組態以:接收用於該視訊資料之一當前區塊之一經編碼二進位預測向量;使用一執行長度解碼技術來解碼該經編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
在HEVC及其他視訊寫碼標準中,視訊序列通常包括一系列圖像。圖像亦可被稱作「圖框」。圖像可包括表示為SL、SCb及SCr之三個樣本陣列。SL為明度樣本之二維陣列(亦即,區塊)。SCb為Cb色度樣本之二維陣列。SCr為Cr色度樣本之二維陣列。色度(Chrominance)樣本在本文中亦可被稱作「色度(chroma)」樣本。在其他情況下,圖像可為單色的且可僅包括明度樣本陣列。
為產生圖像之經編碼表示,視訊編碼器20可產生寫碼樹型單元
(CTU)之集合。CTU中之每一者可為明度樣本之寫碼樹型區塊、色度樣本之兩個對應寫碼樹型區塊,及用以寫碼寫碼樹型區塊之樣本的語法結構。寫碼樹型區塊可為樣本之N×N區塊。CTU亦可被稱作「樹型區塊」或「最大寫碼單元」(LCU)。HEVC之CTU可廣泛地類似於諸如H.264/AVC的其他標準之巨集區塊。然而,CTU未必限於特定大小且可包括一或多個寫碼單元(CU)。片段可包括在光柵掃描中連續排序之整數數目個CTU。
為產生經寫碼CTU,視訊編碼器20可對CTU之寫碼樹型區塊遞迴地執行四分樹分割,以將寫碼樹型區塊劃分成寫碼區塊,之後命名為「寫碼樹型單元」。寫碼區塊為樣本之N×N區塊。CU可為具有明度樣本陣列、Cb樣本陣列及Cr樣本陣列之圖像的明度樣本之寫碼區塊,及色度樣本之兩個對應寫碼區塊,及用以寫碼該等寫碼區塊之樣本的語法結構。視訊編碼器20可將CU之寫碼區塊分割成一或多個預測區塊。預測區塊可為經應用相同預測的樣本之矩形(亦即,正方形或非正方形)區塊。CU之預測單元(PU)可為圖像之明度樣本之預測區塊,圖像之色度樣本之兩個對應預測區塊,及用以對預測區塊樣本進行預測的語法結構。視訊編碼器20可產生CU之每一PU之明度預測區塊、Cb預測區塊及Cr預測區塊的預測性明度區塊、Cb區塊及Cr區塊。
視訊編碼器20可使用框內預測或框間預測來產生PU之預測性區塊。若視訊編碼器20使用框內預測產生PU之預測性區塊,則視訊編碼器20可基於與PU相關聯之圖像之經解碼樣本產生PU之預測性區塊。
若視訊編碼器20使用框間預測來產生PU之預測性區塊,則視訊編碼器20可基於不同於相關聯於PU之圖像的一或多個圖像之經解碼樣本而產生PU之預測性區塊。視訊編碼器20可使用單向預測或雙向預測來產生PU之預測性區塊。當視訊編碼器20使用單向預測來產生
PU之預測性區塊時,PU可具有單一運動向量(MV)。當視訊編碼器20使用雙向預測來產生PU之預測性區塊時,PU可具有兩個MV。
在視訊編碼器20產生CU之一或多個PU的一或多個預測性區塊(例如,預測性明度區塊、Cb區塊及Cr區塊)之後,視訊編碼器20可產生CU之殘餘區塊。殘餘區塊中之每一樣本可指示CU之預測性區塊中之一者中的樣本與CU之寫碼區塊中之對應樣本之間的不同。舉例而言,視訊編碼器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殘餘區塊的子區塊。
視訊編碼器20可將一或多個變換應用於TU之變換區塊以產生用於TU之係數區塊。係數區塊可為變換係數之二維陣列。變換係數可為純量。舉例而言,視訊編碼器20可將一或多個變換應用於TU之明
度變換區塊以產生用於TU之明度係數區塊。視訊編碼器20可將一或多個變換應用於TU之Cb變換區塊以產生用於TU之Cb係數區塊。視訊編碼器20可將一或多個變換應用於TU之Cr變換區塊以產生用於TU之Cr係數區塊。
在產生係數區塊((例如,明度係數區塊、Cb係數區塊或Cr係數區塊)之後,視訊編碼器20可量化係數區塊。量化通常指變換係數經量化以可能減少用以表示變換係數的資料之量從而提供進一步壓縮之過程。在視訊編碼器20量化係數區塊之後,視訊編碼器20可熵編碼指示經量化變換係數之語法元素。舉例而言,視訊編碼器20可對指示經量化變換係數之語法元素執行上下文自適應性二進位算術寫碼(CABAC)。視訊編碼器20可在位元串流中輸出經熵編碼之語法元素。
為了將CABAC編碼應用於語法元素,視訊編碼器可將語法元素二進位化以形成被稱為「二進位數(bin)」的一系列一或多個位元。另外,視訊編碼器可識別寫碼上下文。寫碼上下文可識別寫碼具有特定值之二進位數的機率。舉例而言,寫碼上下文可指示對0值二進位數進行寫碼的0.7機率,以及對1值二進位數進行寫碼的0.3機率。在識別寫碼上下文之後,視訊編碼器20可將間隔劃分成下部子間隔及上部子間隔。該等子間隔中之一者可與值0相關聯且另一子間隔可與值1相關聯。該等子間隔之寬度可與由經識別的寫碼上下文關於相關聯值所指示之機率成正比。若語法元素之二進位數具有與下部子間隔相關聯之值,則經編碼值可等於下部子間隔之下邊界。若語法元素之同一二進位數具有與上部子間隔相關聯之值,則經編碼值可等於上部子間隔之下邊界。為了編碼語法元素之下一個二進位數,視訊編碼器可重複此等步驟,其中間隔為與經編碼位元之值相關聯的子間隔。當視訊編碼器20針對下一個二進位數重複此等步驟時,視訊編碼器可使用基於由經識別的寫碼上下文指示之機率及經編碼之二進位數之實際值的經修
改機率。
當視訊解碼器30對語法元素執行CABAC解碼時,視訊解碼器可識別寫碼上下文。視訊解碼器可接著將間隔劃分成下部子間隔及上部子間隔。該等子間隔中之一者可與值0相關聯且另一子間隔可與值1相關聯。該等子間隔之寬度可與由經識別的寫碼上下文關於相關聯值所指示之機率成正比。若經編碼值在下部子間隔內,則視訊解碼器可解碼具有與下部子間隔相關聯之值的二進位數。若經編碼值在上部子間隔內,則視訊解碼器可解碼具有與上部子間隔相關聯之值的二進位數。為了解碼語法元素之下一個二進位數,視訊解碼器可重複此等步驟,其中間隔為含有經編碼值之子間隔。當視訊解碼器針對下一個二進位數重複此等步驟時,視訊解碼器可使用基於由經識別的寫碼上下文指示之機率及經解碼二進位數的經修改機率。視訊解碼器可接著對二進位數去二進位化以恢復語法元素。
並非對所有語法元素執行常規CABAC編碼,視訊編碼器可使用旁路CABAC寫碼來編碼一些語法元素(例如,二進位數)。相比於對二進位數執行常規CABAC寫碼,對二進位數執行旁路CABAC寫碼在計算上可花費較少。此外,執行旁路CABAC寫碼可允許較高的並行化度及輸送量。使用旁路CABAC寫碼編碼之二進位數可被稱作「旁路二進位數」。將旁路二進位數分組在一起可使視訊編碼器及視訊解碼器之輸送量增加。旁路寫碼引擎可能夠在一單一循環中寫碼若干二進位數,而常規CABAC寫碼引擎可能夠在一循環中寫碼僅單一二進位數。旁路CABAC寫碼引擎可更簡單,因為旁路CABAC寫碼引擎不選擇上下文且可針對兩個符號(0及1)採用½之機率。因此,在旁路CABAC寫碼中,間隔係直接分裂成兩半。
視訊編碼器20可輸出包括經熵編碼之語法元素的位元串流。該位元串流可包括形成經寫碼圖像及相關聯資料之表示的位元之序列。
換言之,該位元串流可包含視訊資料之經寫碼表示。該位元串流可包含網路抽象層(NAL)單元之序列。該等NAL單元中之每一者包括NAL單元標頭且囊封原始位元組序列酬載(RBSP)。NAL單元標頭可包括指示NAL單元類型碼之語法元素。由NAL單元之NAL單元標頭指定的NAL單元類型碼指示單元之類型。RBSP可為含有囊封在NAL單元內的整數數目個位元組之語法結構。在一些情況下,RBSP包括零位元。
不同類型之NAL單元可囊封不同類型之RBSP。舉例而言,第一類型之NAL單元可囊封圖像參數集合(PPS)之RBSP,第二類型之NAL單元可囊封經寫碼片段之RBSP,第三類型之NAL單元可囊封SEI之RBSP等。囊封視訊寫碼資料之RBSP(相反於參數集及SEI訊息之RBSP)的NAL單元可被稱作視訊編碼層(VCL)NAL單元。
視訊解碼器30可接收由視訊編碼器20產生之位元串流。另外,視訊解碼器30可剖析位元串流以解碼來自位元串流之語法元素。視訊解碼器30可至少部分基於自位元串流解碼之語法元素來重建構視訊資料之圖像。用以重建構視訊資料之程序可與由視訊編碼器20執行之程序大體上互逆。舉例而言,視訊解碼器30可使用PU之運動向量來判定當前CU之PU的預測性區塊。另外,視訊解碼器30可反量化與當前CU之TU相關聯的變換係數區塊。視訊解碼器30可對變換係數區塊執行反變換以重建構與當前CU之TU相關聯的變換區塊。視訊解碼器30可藉由將當前CU之PU的預測性區塊之樣本添加至當前CU之TU的變換區塊之對應樣本來重建構當前CU之寫碼區塊。藉由重建構圖像之每一CU的寫碼區塊,視訊解碼器30可重建構圖像。
如上所述,本文中所描述之技術可應用於視訊資料的基於調色盤之寫碼。基於調色盤之寫碼可大體上包括以下技術中之一或多者。利用基於調色盤之視訊寫碼,視訊寫碼器(例如,視訊編碼器20及/或
視訊解碼器30)可將所謂的「調色盤」形成為用於表示特定區域(例如,給定區塊)之視訊資料的色彩表。每一像素可與調色盤中表示像素之色彩的輸入項相關聯。舉例而言,視訊編碼器20及/或視訊解碼器30可寫碼將像素值與調色盤中之適當值關聯的索引。
就HEVC構架而言,作為實例,基於調色盤之寫碼技術可經組態以用作寫碼單元(CU)模式。在其他實例中,基於調色盤之寫碼技術可經組態以用作HEVC之構架中的PU模式。因此,在CU模式之上下文中描述的所有隨後揭示之程序可另外或替代地應用於PU。然而,此等基於HEVC之實例不應被視為約束或限制本文中所描述的基於調色盤之寫碼技術,因而,此等技術可適用於獨立地或作為其他現有或尚待開發之系統/標準之部分而工作。在此等情況下,用於調色盤寫碼之單元可為正方形區塊、矩形區塊或甚至非矩形形狀之區域。
X.Guo及A.Saxena之文件「RCE4:Summary report of HEVC Range Extension Core Experiments 4(RCE4)on palette coding for screen content」(JCTVC-P0035,San Jose,US,9-17 Jan.2014)描述基於調色盤之模式的兩個測試結果,該等結果經報告達成顯著的Bjontegaard失真率(BD率)減小,尤其對於螢幕內容。在下文簡要概述該兩種方法。
在一個實例方法中,如例如X.Guo、Y.Lu及S.Li之文件「RCE4:Test 1.Major-color-based screen content coding」(JCTVC-P0108,San Jose,US,9-17 Jan.2014)中所描述,基於直方圖之演算法被用以將像素分類。詳言之,直方圖中的最重要的N個峰值被選為用於寫碼之主要色彩。接近主要色彩之像素值將量化至主要色彩。不屬於任何主要色彩集合之其他像素為忽略像素(escape pixel),該等忽略像素亦在寫碼之前經量化。針對無損寫碼,不使用量化。
藉由使用分類,寫碼單元(CU)之像素可轉換成色彩索引。此
後,寫碼主要色彩編號(major colour number)及值。接著,如下所述地寫碼色彩索引。
●對於每一像素行,發信旗標以指示寫碼模式。存在三種模式:水平模式、垂直模式及普通模式。
○若模式為水平模式,則整個行共用相同色彩索引。在此情況下,傳輸色彩索引。
○若模式為垂直模式,則整個行與上一行相同。在此情況下,無傳輸。當前行複製上一行之色彩索引。
○若模式為普通模式,則針對每一像素位置發信旗標以指示其是否與左部像素及上部像素中之一者相同。若不相同,則傳輸索引本身。
另外,若像素為忽略像素,則傳輸像素值。
在另一實例方法中,如例如L.Guo、W.Pu、M.Karczewicz、J.Sole、R.Joshi及F.Zou之文件「RCE4:Results of Test 2 on Palette Mode for Screen Content Coding」(JCTVC-P0198,San Jose,US,9-17 Jan.2014)中所描述,包括基於調色盤之寫碼模式以作為CU模式。第二方法之編碼程序可包括以下各者:
●調色盤的傳輸:使用逐輸入項預測方案而基於左邊CU(在左邊相鄰目前經寫碼之CU的CU)之調色盤編碼當前調色盤。此後,傳輸調色盤之非預測輸入項。
●像素值的傳輸:使用以下三個模式以光柵掃描次序編碼CU中之像素:
○「執行模式」:首先發信調色盤索引,繼而發信「palette_run」(M)。隨後的M個調色盤索引與首先發信之經發信調色盤索引相同。
○「上方複製模式」:傳輸值「copy_run」(N)以指示隨後的N個
調色盤索引對應地與其上方相鄰者相同。
○「像素模式」:首先傳輸預測旗標。旗標值等於1指示傳輸使用經重建構之頂部相鄰像素作為預測器的預測殘餘。若此旗標之值等於0,則在無預測之情況下傳輸像素值。
調色盤可組成經調色盤寫碼之區塊(例如,CU)之位元之相對重要部分。因此,視訊寫碼器可基於先前經寫碼之調色盤來預測調色盤之一或多個輸入項(例如,如上文關於「調色盤的傳輸」所提及)。
在一些實例中,視訊寫碼器可在預測調色盤輸入項時產生調色盤預測器清單。舉例而言,C.Gisquet、G.Laroche及P.Onno之文件「AhG10:Palette predictor stuffing」(JCTVC-Q0063)揭示用於判定調色盤預測器之一個實例程序。在一些實例中,視訊寫碼器可使用布林向量來指示調色盤預測器清單中之每一項目是否用於(或不用於)預測用於目前經寫碼之區塊的調色盤中之一或多個輸入項。
在一些實例中,調色盤預測器清單中之所有該等項目係自先前經寫碼調色盤(例如,用先前經寫碼區塊寫碼之調色盤)導出。然而,此等調色盤在空間上可遠離當前CU,此可使調色盤相關性相對較弱。一般而言,擴充調色盤預測器表可能有幫助(例如,可提供更準確之預測器,此可產生效率增益)。然而,判定及使用相對較大之調色盤預測器表產生相對較長之布林向量。
在調色盤寫碼之一個實例中,視訊編碼器20可產生語法元素,諸如指示基於調色盤之寫碼模式是否被用於視訊圖框之特定區域的旗標「PLT_Mode_flag」。舉例而言,PLT_Mode_flag可在視訊圖框之片段層級、CU層級、PU層級或任何其他層級產生。舉例而言,視訊編碼器20可在CU層級產生PLT_Mode_flag且在經編碼視訊位元串流中發信PLT_Mode_flag。視訊解碼器30可接著在解碼經編碼視訊位元串流時剖析PLT_Mode_flag。在此實例中,等於1的此PLT_Mode_flag之值
指定當前CU係使用調色盤模式編碼。在此情況下,視訊解碼器30可應用基於調色盤之寫碼模式以解碼CU。在一些實例中,語法元素可指示用於CU的複數個不同調色盤模式中之一者。
在此實例中,等於0的此PLT_Mode_flag之值指定當前CU係使用除調色盤模式外之模式編碼。舉例而言,可使用多種框間預測性、框內預測性或其他寫碼模式中之任一者。當PLT_Mode_flag之值為0時,可傳輸另一資訊以發信哪個特定模式被用於編碼各別CU,其中此特定模式通常可為HEVC寫碼模式。為了實例目的而描述PLT_Mode_flag之使用。然而,在其他實例中,諸如多位元碼之其他語法元素可用以指示基於調色盤之寫碼模式是否將用於CU(或PU,在其他實例中),或指示將使用複數個模式中之哪些模式。
PLT_Mode_flag或其他語法元素亦可在較高層級傳輸。舉例而言,PLT_Mode_flag可在片段層級傳輸。在此情況下,等於1的旗標之值暗示片段中之所有CU將使用調色盤模式進行編碼(此意謂無模式資訊(例如,關於調色盤模式或其他模式)需要在CU層級傳輸)。類似地,此旗標可在圖像參數集合(PPS)、序列參數集(SPS)或視訊參數集(VPS)層級發信。又,旗標可在指定針對特定圖像、片段等是否啟用或停用調色盤模式的此等層級中之一層級發送,而PLT_Mode_flag指示基於調色盤之寫碼模式是否被用於每一CU。在此情況下,若在片段、PPS、SPS或VPS層級發送之旗標或其他語法元素指示停用調色盤寫碼模式,則在一些實例中,可能不需要針對每一CU發信PLT_Mode_flag。替代地,若在片段、PPS、SPS或VPS層級發送之旗標或其他語法元素指示啟用調色盤寫碼模式,則可進一步發信PLT_Mode_flag以指示針對每一CU是否將使用基於調色盤之寫碼模式。再次,如上文所提及,應用此等技術以用於指示CU的基於調色盤之寫碼可另外或替代地用以指示PU的基於調色盤之寫碼。
諸如PLT_Mode_flag之旗標亦可或替代地有條件地傳輸或推斷。用於傳輸PLT_Mode_flag或推斷該旗標之條件可為實例如下中之一或多者:CU之大小、圖框類型、色彩空間、色彩分量、圖框大小、圖框速率、可調式視訊寫碼中之層id或多視圖寫碼中之視圖id。
現將論述用於產生及傳輸調色盤之技術。視訊編碼器20可經組態以產生並發信一或多個語法元素及值,該一或多個語法元素及值可由視訊解碼器30使用以建構及/或重建構由視訊編碼器20用來編碼特定層級之視訊圖框(例如,CU)的調色盤。在一些實例中,視訊編碼器20可指示或以其他方式發信用於每一CU之調色盤。在其他實例中,視訊編碼器20可指示或以其他方式發信可在若干CU間共用的調色盤。
調色盤之大小(例如,就所包括之像素值的數目而言)可為固定值或可由視訊編碼器20在經編碼視訊位元串流中發信。視訊解碼器30可接收並解碼來自經編碼視訊位元串流之調色盤大小的指示。發信對於不同分量可為單獨的,或可針對所有分量發信單一大小。不同分量可為(例如)明度分量及色度分量。發信可使用一元碼或截尾一元碼(例如,以調色盤大小之最大極限截尾之碼)。亦可使用指數-哥倫布(Exponential-Golomb)碼或萊斯-哥倫布(Rice-Golomb)碼。在一些實例中,大小之發信可以如下方式進行:在發信調色盤中之輸入項之後,發信「stop」旗標。等於1的此旗標之值指定當前輸入項為調色盤中之最後一個輸入項;等於0的此旗標之值指定調色盤中存在更多輸入項。若已建構之調色盤擊中調色盤大小之最大極限,則「停止」旗標可不由編碼器傳輸。在一些實例中,調色盤之大小亦可基於旁側資訊來有條件地傳輸或推斷,其方式與上文針對「旗標PLT_Mode_flag的傳輸」所描述之方式相同。
調色盤可針對CU中之每一色彩分量而單獨地傳輸。舉例而言,
可存在用於此CU之Y分量的調色盤、用於此CU之U分量的另一調色盤及用於此CU之V分量的又一調色盤。對於Y調色盤,輸入項可(假定)為此CU中之代表性Y值。該情況同樣適用於U分量及V分量。可針對CU中之所有色彩分量傳輸調色盤亦係可能的。在此實例中,調色盤中之第i個輸入項為三元組(Yi,Ui,Vi)。在此情況下,調色盤包括用於分量中之每一者的值。
調色盤之預測係上文所述之「調色盤的傳輸」之替代方法。在一些實例中,調色盤預測技術可結合調色盤發信技術使用。亦即,視訊編碼器20可經組態以發信可由視訊解碼器30使用以預測總數個調色盤輸入項之一部分的語法元素。另外,視訊編碼器20可經組態以明確地發信調色盤輸入項之另一部分。
在調色盤預測方法之一個實例中,對於每一CU,傳輸一個旗標「pred_palette_flag」。等於1的此旗標之值指定將自過去資料預測用於當前CU之調色盤,且因此不需要傳輸調色盤。等於0的此旗標之值意謂需要傳輸當前CU之調色盤。旗標對於不同色彩分量可為單獨的(例如,因此針對YUV視訊中之CU需要傳輸3個旗標),或可針對所有色彩分量發信單一旗標。舉例而言,單一旗標可指示針對所有分量是否傳輸調色板或是否將預測用於所有分量之調色板。
在一些實例中,預測可以如下方式執行。若預測旗標值等於1,則對於當前CU,視訊編碼器20複製已編碼之相鄰CU中之一或多者的調色盤。已編碼之相鄰CU的調色盤可能已傳輸或預測。舉例而言,複製的相鄰CU可為左邊的相鄰CU。在左邊CU之調色盤不可用的情況下(如在左邊CU並非使用調色盤模式編碼或當前CU在圖像之第一行的情況下),調色盤之複本可來自當前CU上方的CU。複製的調色盤亦可為許多相鄰CU之調色盤的組合。舉例而言,可應用一或多個式子、函數、規則或其類似者以基於複數個相鄰CU中之一者或組合的調色盤
來產生調色盤。
亦可能可建構一候選物清單,且藉由視訊編碼器20傳輸一索引以指示候選CU,當前CU自其複製調色盤。視訊解碼器30可建構相同的候選物清單,且接著使用該索引來選擇對應CU之調色盤以供當前CU使用。舉例而言,該候選物清單可包括相對於片段或圖像內的待寫碼之當前CU在上方的一個CU及在左邊的一個CU。在此實例中,可發信旗標或其他語法元素以指示候選物選擇。舉例而言,等於0的傳輸旗標意謂複本來自左邊CU,且等於1的傳輸旗標意謂複本來自頂部CU。視訊解碼器30選擇自對應相鄰CU複製之調色盤且複製該調色盤以供在解碼當前CU時使用。預測亦可使用當前CU之因果性相鄰者中之最頻繁樣本值來導出。
調色盤之預測亦可為逐輸入項的。對於調色盤中之每一輸入項,視訊編碼器20產生並發信旗標。用於給定輸入項的等於1的旗標之值指定預測值(例如,來自如左邊CU之選定候選CU的對應輸入項)被用作此輸入項之值。等於0的旗標之值指定:此輸入項並非預測的且其值將自視訊編碼器20傳輸至視訊解碼器30,例如,在由視訊編碼器20編碼之位元串流中發信以供稍後由視訊解碼器30解碼。
調色盤被用以預測當前CU之調色盤或用於建構候選物之規則的候選CU的「pred_palette_flag」之值亦可基於旁側資訊以與如上文所描述的用於「旗標PLT_Mode_flag的傳輸」之方式相同的方式有條件地傳輸或推斷。
接下來,視訊編碼器20可產生並發信指示什麼各別調色盤輸入項與CU中之每一像素相關聯的映射。映射中之第i個輸入項對應於CU中之第i個位置。等於1的第i個輸入項之值指定CU中之此第i個位置處之像素值係調色盤中之值中的一者,且進一步傳輸調色盤索引,使得視訊解碼器30可重建構該像素值(倘若調色盤中僅存在一個輸入項,
可跳過調色盤索引之傳輸)。等於0的第i個輸入項之值指定CU中之第i個位置處之像素值不在調色盤中,且因此,該像素值將被明確地傳輸至視訊解碼器30。
若CU中之一個位置處之像素值係調色盤中之值,則觀察到,存在CU中之相鄰位置具有相同像素值的高機率。因此,在編碼用於一位置之調色盤索引(假定j,其對應於像素值 s )之後,視訊編碼器20可傳輸語法元素「run」以指示在掃描達到不同像素值之前CU中具有相同像素值 s 之連續值的數目。舉例而言,若緊接的下一個像素值具有不同於 s 之值,則傳輸run=0。若下一個像素值為 s ,但其後之像素值並非 s ,則run=1。
在不傳輸「run」(例如,隱含執行導出(Implicit Run Derivation))的情況下,「run」之值可為常數(例如,4、8、16等),或「run」之值亦可取決於旁側資訊。舉例而言,「run」之值可取決於區塊大小,例如,「run」等於當前區塊之寬度,或當前區塊之高度,或當前區塊之半寬度(或半高度),或區塊之寬度及高度的分數,或區塊之高度/寬度的倍數。「run」之值亦可取決於QP、框架類型、色彩分量、色彩格式(例如,444、422、420)及/或色彩空間(例如,YUV、RGB)。「run」之值亦可取決於掃描方向。在其他實例中,「run」之值可取決於其他類型之旁側資訊。「run」之值亦可使用高階語法(例如,PPS、SPS)來發信。
在一些實例中,可能不需要傳輸映射。「run」可僅在某些位置處開始。舉例而言,「run」可僅在每一列開始處或在每隔N個列開始處開始。開始位置對於不同掃描方向可以不同。舉例而言,若使用垂直掃描,則「run」可僅在每一行開始處或在每隔N個行開始處開始。開始位置可取決於旁側資訊。舉例而言,開始位置可為每一列或每一行之中點,或每一列/行之1/n、2/n、…(n-1)/n(亦即,分數)處。開始位
置亦可取決於QP、框架類型、色彩分量、色彩格式(例如,444、422、420)及/或色彩空間(例如,YUV、RGB)。在其他實例中,「run」之開始位置可取決於其他類型之旁側資訊。開始位置亦可使用高階語法(例如,PPS、SPS等)來發信。
亦可能的,組合隱含開始位置導出與隱含執行導出。舉例而言,「run」等於兩個相鄰開始位置之間的距離。在開始點係每個列之開始(亦即,第一位置)的情況下,「run」之長度為列。
掃描方向可為垂直或水平的。有可能,針對每一CU傳輸旗標以指示掃描方向。旗標可針對每一分量分開地傳輸,或可傳輸單一旗標且所指示掃描方向適用於所有色彩分量。亦可能使用其他掃描方向,如45度或135度。掃描階數可為固定的或可以如上文針對「旗標PLT_Mode_flag的傳輸」所描述之相同方式取決於旁側資訊。
在上文,解釋如何傳輸調色盤。上述實例之替代例為在運作中建構調色盤。在此情況下,在CU開始處,調色盤中不存在輸入項,且當視訊編碼器20針對CU中之位置發信像素之新值時,將此等值包括於調色盤中。亦即,視訊編碼器20在像素值針對CU中之位置產生及傳輸時將像素值添加至調色盤。接著,CU中的具有相同值之稍後位置可引用調色盤中之像素值(例如,利用索引值),而非使視訊編碼器20傳輸該等像素值。類似地,當視訊解碼器30接收用於CU中之位置的(例如,藉由編碼器發信之)新像素值時,新像素值包括藉由視訊解碼器30建構之調色盤中之像素值。當CU中之稍後位置具有已添加至調色盤之像素值時,視訊解碼器30可接收諸如索引值的資訊,該等索引值識別調色盤中之對應像素值以用於重建構CU中之像素值。
若達到最大調色盤大小(例如,當在運作中動態地建構調色盤時),則編碼器及解碼器共用相同機制來移除調色盤之輸入項。一種方法為移除調色盤(FIFO佇列)中之最舊輸入項。另一方法為移除調色
盤中之最少使用輸入項。另一方法為對兩種方法(調色盤中之時間及使用頻率)加權以決定待替換之輸入項。作為一個實例,若將一像素值輸入項自調色盤移除,且該像素值再次出現在調色盤中之稍後位置處,則編碼器可傳輸該像素值而非將輸入項包含於調色盤中。另外或替代地,有可能,此像素值在已移除之後可重新鍵入至調色盤中,例如,當編碼器及解碼器掃描CU中之位置時。
本發明亦考慮組合初始調色盤發信與調色盤之運作中導出。在一個實例中,初始調色盤可用像素之寫碼來更新。舉例而言,在傳輸初始調色盤後,視訊編碼器20即可將值添加至初始調色盤或在掃描CU中之額外位置之像素值時改變初始調色盤中之值。同樣地,在接收初始調色盤後,視訊解碼器30即可將值添加至初始調色盤或在掃描CU中之額外位置之像素值時改變初始調色盤中之值。類似地,編碼器可發信當前CU是否使用整個調色盤之傳輸,或運作中調色盤產生,或初始調色盤之傳輸與初始調色盤藉由運作中導出之更新的組合。在一些實例中,初始調色盤可為最大調色盤大小之完整調色盤(在此情況下,初始調色盤中之值可改變)或減小大小之調色盤(在此情況下,將值添加至初始調色盤,且視情況改變初始調色盤中之值)。
在上文,描述如何藉由識別像素值來傳輸映射。映射之傳輸可與上文所述之方法一起可藉由發信行複製來進行。在一個實例中,行複製係藉由視訊編碼器20發信,以使得用於輸入項之像素值等於上方之行(或在左邊之行中,若掃描係垂直的)的輸入項之像素值。接著,可發信「run」的自該行複製之輸入項。又,可指示該行係複製自何處;為此目的可緩衝上方的若干行。舉例而言,儲存先前四個列,且用截短的一元碼或其他碼來發信哪個列被複製,接著,可發信該列有多少輸入項被複製(亦即,「run」)。因此,在一些實例中,用於輸入項之像素值可經發信等於當前列的直接上方之一列或兩個或兩個以上
列中之輸入項之像素值。
在不發信「run」的情況下,「run」之值可為常數/固定的或可使用上文所述之方法取決於旁側資訊(且由解碼器導出)。
亦可能的,可能不需要傳輸映射。舉例而言,「run」可僅在某些位置處開始。開始位置可固定或可取決於旁側資訊(且藉由解碼器導出),因此可跳過開始位置之發信。實情為,可應用上文所述之一或多個該等技術。亦可使用與上文所述相同之方法來組合隱含開始位置導出及隱含執行導出。
若使用映射傳輸之兩種方法,則旗標可指示像素係自調色盤抑或自先前行獲得,且接著索引指示調色盤或列中之輸入項且最後指示「run」。
圖2為說明可實施本發明之調色盤寫碼技術的實例視訊編碼器20的方塊圖。出於解釋之目的而提供圖2,且不應將該圖視為對如本發明中所廣泛例示及描述之技術的限制。出於解釋之目的,本發明在HEVC寫碼之上下文中描述視訊編碼器20。然而,本發明之技術可適用於其他寫碼標準或方法。
視訊編碼器20表示可經組態以根據本發明中所描述之各種實例執行用於基於調色盤之視訊寫碼之技術的器件之實例。舉例而言,視訊編碼器20可經組態以使用基於調色盤之寫碼或非基於調色盤之寫碼而選擇性地寫碼視訊資料之不同區塊(諸如,HEVC寫碼中之CU或PU)。
在圖2之實例中,視訊編碼器20包括預測處理單元100、殘餘產生單元102、變換處理單元104、量化單元106、反量化單元108、反變換處理單元110、重建構單元112、濾波器單元114、經解碼圖像緩衝器(DPB)116、視訊記憶體119及熵編碼單元118。預測處理單元100包括框間預測處理單元120及框內預測處理單元126。框間預測處理單元
120包括運動估計單元及運動補償單元(未圖示)。視訊編碼器20亦包括經組態以執行本發明中所描述的基於調色盤之寫碼技術之各種態樣的基於調色盤之編碼單元122。在其他實例中,視訊編碼器20可包括較多、較少或不同功能之組件。
如下文參看圖4至圖9將更詳細地解釋,視訊編碼器20的基於調色盤之編碼單元122可經組態以:產生用於該視訊資料之一當前區塊之一調色盤;產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;使用一執行長度編碼技術來編碼該二進位預測向量;及使用該調色盤來編碼視訊資料之該當前區塊。
視訊編碼器20可接收視訊資料。視訊編碼器20可編碼視訊資料之圖像之片段中的每一CTU。CTU中之每一者可與圖像的相等大小之明度寫碼樹型區塊(CTB)及對應CTB相關聯。作為編碼CTU之部分,預測處理單位100可執行四分樹分割以將CTU之CTB劃分成逐漸較小的區塊。該等較小區塊可為CU之寫碼區塊。舉例而言,預測處理單元100可將與CTU相關聯之CTB分割成四個相等大小之子區塊,將該等子區塊中之一或多者分割成四個相等大小之子子區塊,等等。
如圖2所示,視訊記憶體119接收用於編碼視訊圖框內之當前視訊區塊的視訊資料。視訊記憶體119可儲存將由視訊編碼器20之組件編碼的視訊資料(例如,經組態以儲存視訊資料)。儲存於視訊記憶體119中之視訊資料可(例如)自圖1之視訊源18獲得。DPB 116係儲存供藉由視訊編碼器20編碼視訊資料(例如,在亦被稱作框內或框間預測寫碼模式之框內或框間寫碼模式中)時使用之參考視訊資料的DPB之一個實例。視訊記憶體119及DPB 116可由多種記憶體器件中之任一者形成,諸如動態隨機存取記憶體(DRAM)(包括同步
DRAM(SDRAM))、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其他類型之記憶體器件。視訊記憶體119及DPB 116可由同一記憶體器件或單獨的記憶體器件提供。在各種實例中,視訊記憶體119可與視訊編碼器20之其他組件一起在晶片上,或相對於彼等組件在晶片外。
視訊編碼器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之運動資訊。取決於PU係在I片段中、P片段中抑或B片段中,框間預測單元121可針對CU之PU執行不同操作。在I片段中,所有PU經框內預測。因此,若PU在I片段中,則框間預測單元121不對PU執行框間預測。因此,對於I模式中編碼的區塊,經預測區塊係使用空間預測自同一圖框內的先前經編碼之相鄰區塊而形成。
若PU在P片段中,則框間預測處理單元120之運動估計單元可在用於PU之參考區域的參考圖像之清單(例如,「RefPicList0」)中搜尋參考圖像。用於PU之參考區域可為參考圖像內的含有最緊密地對應於PU之樣本區塊的樣本區塊之區域。運動估計單元可產生指示含有
用於PU之參考區域之參考圖像的RefPicList0中之位置的參考索引。另外,運動估計單元可產生指示PU之寫碼區塊與相關聯於參考區域之參考位置之間的空間移位的MV。舉例而言,MV可為提供自當前經解碼圖像中之座標至參考圖像中之座標的偏移的二維向量。運動估計單元可將參考索引及MV輸出為PU之運動資訊。框間預測處理單元120之運動補償單元可基於由PU之運動向量指示之參考位置處的實際或內插樣本而產生PU之預測性區塊。
若PU在B片段中,則運動估計單元可針對PU執行單向預測或雙向預測。為針對PU執行單向預測,運動估計單元可搜尋RefPicList0之參考圖像,或用於PU之參考區域的第二參考圖像清單(「RefPicList1」)。運動估計單元可將以下各者輸出為PU之運動資訊:指示含有參考區域之參考圖像的RefPicList0或RefPicList1中之位置的參考索引,指示PU之預測區塊與相關聯於參考區域之參考位置之間的空間移位的MV,及指示參考圖像在RefPicList0抑或在RefPicList1中的一或多個預測方向指示符。框間預測處理單元120之運動補償單元可至少部分地基於由PU之運動向量指示之參考區域處的實際或內插樣本而產生PU之預測性區塊。
為針對PU執行雙向框間預測,運動估計單元可在用於PU之參考區域的RefPicList0中搜尋參考圖像,且亦可在用於PU之另一參考區域的RefPicList1中搜尋參考圖像。運動估計單元可產生指示含有參考區域之參考圖像的RefPicList0及RefPicList1中之位置的參考圖像索引。另外,運動估計單元可產生指示與參考區域相關聯之參考位置與PU之樣本區塊之間的空間移位的MV。PU之運動資訊可包括PU之參考索引及MV。運動補償單元可至少部分地基於由PU之運動向量指示之參考位置處之實際或內插樣本而產生PU之預測性區塊。
框內預測處理單元126可藉由對PU執行框內預測而產生用於PU之
預測性資料。用於PU之預測性資料可包括用於PU之預測性區塊及各種語法元素。框內預測處理單元126可對I片段中、P片段及B片段中之PU執行框內預測。
為對PU執行框內預測,框內預測處理單元126可使用多個框內預測模式,以產生用於PU之預測性資料的多個集合。框內預測處理單元126可使用來自相鄰PU之樣本區塊的樣本來產生用於PU之預測性區塊。對於PU、CU及CTU,假定自左至右自上而下之編碼次序,則相鄰PU可在PU上方、右上方、左上方或左邊。框內預測處理單元126可使用各種數目之框內預測模式,例如,33個定向框內預測模式。在一些實例中,框內預測模式之數目可取決於相關聯於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的預測區塊之大小及位置。被稱為「殘餘四分樹」(RQT)的四分樹結構可包括對應於區域中之每一者的節點。CU之TU可對應於RQT之葉節點。
變換處理單元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相關聯之寫碼區塊中的區塊假影。經解碼圖像緩衝器116可在濾波器單元114對經重建構之寫碼區塊執行一或多個解區塊操作之後儲存經重建構之寫碼區塊。框間預測處理單元120可使用含有經重建構之寫碼區塊之參
考圖像,以對其他圖像之PU執行框間預測。另外,框內預測處理單元126可使用經解碼圖像緩衝器116中的經重建構之寫碼區塊,以對與CU相同之圖像中的其他PU執行框內預測。
熵編碼單元118可自視訊編碼器20之其他功能組件接收資料。舉例而言,熵編碼單元118可自量化單元106接收係數區塊,且可自預測處理單元100接收語法元素。熵編碼單元118可對資料執行一或多個熵編碼操作,以產生經熵編碼資料。舉例而言,熵編碼單元118可對資料執行上下文自適應性可變長度寫碼(CAVLC)操作、CABAC操作、可變至可變(V2V)長度寫碼操作、基於語法的上下文自適應性二進位算術寫碼(SBAC)操作、機率區間分割熵(PIPE)寫碼操作、指數-哥倫布編碼操作或另一類型之熵編碼操作。視訊編碼器20可輸出包括由熵編碼單元118產生之經熵編碼資料的位元串流。舉例而言,位元串流可包括表示用於CU之RQT的資料。
圖3為說明經組態以實施本發明之技術的實例視訊解碼器30的方塊圖。出於解釋之目的而提供圖3,且該圖並不限制如本發明中所廣泛例示及描述之技術。出於解釋之目的,本發明在HEVC寫碼之上下文中描述視訊解碼器30。然而,本發明之技術可適用於其他寫碼標準或方法。
在圖3之實例中,視訊解碼器30包括熵解碼單元150、預測處理單元152、反量化單元154、反變換處理單元156、重建構單元158、濾波器單元160、視訊記憶體163及經解碼圖像緩衝器(DPB)162。預測處理單元152包括運動補償單元164及框內預測處理單元166。視訊解碼器30亦包括經組態以執行本發明中所描述的基於調色盤之寫碼技術之各種態樣的基於調色盤之解碼單元165。在其他實例中,視訊解碼器30可包括較多、較少或不同功能之組件。
如下文參看圖4至圖9將更詳細地解釋,視訊解碼器30的基於調
色盤之解碼單元165可經組態以:接收用於該視訊資料之一當前區塊的一經編碼二進位預測向量(例如,利用執行長度編碼進行編碼的二進位預測向量);使用一執行長度解碼技術來解碼該經編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
經寫碼圖像緩衝器(CPB)(例如,視訊記憶體163)可接收並儲存位元串流之經編碼視訊資料(例如,NAL單元)。熵解碼單元150可自CPB接收經編碼視訊資料(例如,NAL單元)且剖析該等NAL單元以解碼語法元素。熵解碼單元150可對該等NAL單元中之經熵編碼語法元素進行熵解碼。預測處理單元152、反量化單元154、反變換處理單元156、重建構單元158及濾波器單元160可基於自位元串流提取之語法元素而產生經解碼視訊資料。
如圖3所示,視訊記憶體163接收用於解碼視訊圖框內之當前視訊區塊的視訊資料。視訊記憶體163可儲存將由視訊解碼器30之組件解碼的視訊資料(例如,經組態以儲存視訊資料)。儲存於視訊記憶體163中之視訊資料可(例如)自藉由視訊編碼器20產生之經編碼視訊位元串流獲得。DPB 162係儲存供藉由視訊解碼器30解碼視訊資料(例如,在亦被稱作框內或框間預測寫碼模式之框內或框間寫碼模式中)時使用之參考視訊資料的DPB之一個實例。視訊記憶體163及DPB 162可由多種記憶體器件中之任一者形成,諸如動態隨機存取記憶體(DRAM)(包括同步DRAM(SDRAM))、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其他類型之記憶體器件。視訊記憶體163及DPB 162可由同一記憶體器件或單獨的記憶體器件提供。在各種實例中,視訊記憶體163可與視訊解碼器30之其他組件一起在晶片上,或相對於彼等
組件在晶片外。
位元串流之NAL單元可包括經寫碼片段NAL單元。作為解碼位元串流之部分,熵解碼單元150可自經寫碼片段NAL單元提取語法元素且對該等語法元素進行熵解碼。該等經寫碼片段中之每一者可包括片段標頭及片段資料。片段標頭可含有關於片段之語法元素。片段標頭中之語法元素可包括識別與含有片段之圖像相關聯之PPS的語法元素。
除了對來自位元串流之語法元素進行解碼之外,視訊解碼器30可對未分割CU執行重建構操作。為了對未分割CU執行重建構操作,視訊解碼器30可對CU之每一TU執行重建構操作。藉由針對CU之每一TU執行重構操作,視訊解碼器30可重建構CU之殘餘區塊。
作為對CU之TU執行重建構操作之部分,反量化單元154可對相關聯於TU之係數區塊進行反量化(亦即,解量化)。反量化單元154可使用與TU之CU相關聯之QP值來判定量化程度且同樣地判定反量化單元154應用的反量化程度。亦即,壓縮比(亦即,用以表示原始序列及壓縮序列的位元之數目之比)可藉由調整當量化變換係數時所使用的QP之值來控制。壓縮比亦可取決於所使用的熵寫碼之方法。
在反量化單元154對係數區塊進行反量化之後,反變換處理單元156可將一或多個反變換應用於係數區塊以便產生與TU相關聯之殘餘區塊。舉例而言,反變換處理單元156可將反DCT、反整數變換、反Karhunen-Loeve變換(KLT)、反旋轉變換、反定向變換或另一反變換應用於係數區塊。
若PU係使用框內預測來編碼,則框內預測處理單元166可執行框內預測以產生用於PU之預測性區塊。框內預測處理單元166可使用框內預測模式以基於空間相鄰之PU之預測區塊而產生用於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執行框內預測或框間預測操作。
圖4為更詳細地展示視訊編碼器20的基於調色盤之編碼單元122的方塊圖。基於調色盤之編碼單元122可經組態以執行用於編碼二進位預測向量的本發明之實例技術中之一或多者。
如上所述,基於調色盤之編碼單元122可經組態以利用基於調色
盤之編碼模式來編碼視訊資料之區塊(例如,CU或PU)。在基於調色盤之編碼模式中,調色盤可包括藉由索引編號且表示可用以指示像素值之色彩分量值(例如,RGB、YUV等)或強度的輸入項。調色盤產生單元203可經組態以接收用於視訊資料之當前區塊的像素值212且產生用於視訊資料之當前區塊的色彩值之調色盤。調色盤產生單元203可使用用於產生視訊資料之當前區塊的調色盤的任何技術,包括上文所論述的基於直方圖之技術。調色盤產生單元203可經組態以產生任何大小之調色盤。在一個實例中,調色盤產生單元203可經組態以產生32個調色盤輸入項,其中每一調色盤輸入項包括像素之Y、Cr及Cb分量的像素值。在前一實例中,假定每一調色盤輸入項指定一樣本(像素)之所有色彩分量之值。然而,本文件中所描述之概念可適用於針對每一色彩分量使用單獨調色盤。
一旦調色盤藉由調色盤產生單元203產生,映射單元204即可產生用於視訊資料之當前區塊的映射,該映射指示視訊資料之當前區塊中的特定像素是否可表示為藉由調色盤產生單元203產生之調色盤中的輸入項。映射單元204可產生包括指示每一像素如何使用(或不使用)來自調色盤之輸入項之語法元素的映射214。若在調色盤中未發現用於視訊資料之當前區塊中之像素的值,且因此該值無法用索引表示至調色盤中,則映射單元204可明確地傳輸用於特定像素之像素值。在一些實例中,映射單元204可根據在調色盤中發現之輸入項中之一者來預測顯式像素值。在一些其他實例中,映射單元204可將像素量化且傳輸經量化值。
除了發信指示用於區塊中之像素中之每一者的色彩值之語法元素之外,基於調色盤之編碼單元122亦可經組態以信號將用於視訊資料之當前區塊的調色盤。根據本發明之技術,基於調色盤之編碼單元122可經組態以使用調色盤預測技術來減少經發信以指示用於視訊資
料之特定區塊之調色盤之值的資料之量。
作為調色盤預測之一個實例,如JCTVC-Q0094(其自2014年6月20日起可自http://phenix.int-evry.fr/jct/doc_end_user/documents/17_Valencia/wg11/JCTVC-Q0094-v1.zip得到)中所描述,調色盤可包括自預測器調色盤複製之輸入項。預測器調色盤可包括來自使用調色盤模式之先前經寫碼區塊或來自其他經重建構之樣本的調色盤輸入項。如圖4所示,基於調色盤之編碼單元122可包括預測器調色盤緩衝器210。預測器調色盤緩衝器210可經組態以儲存來自先前經編碼區塊的先前所用調色盤輸入項的數目。作為一個實例,預測器調色盤緩衝器210可組態為預定大小的先進先出(FIFO)緩衝器。預測器調色盤緩衝器210可具有任何大小。在一個實例中,預測器調色盤緩衝器210包括高達64個先前所用調色盤輸入項。
在一些實例中,基於調色盤之編碼單元122可經組態以精簡預測器調色盤緩衝器210中之輸入項以使得預測器調色盤緩衝器210中之所有調色盤輸入項係唯一的。亦即,對於將添加至預測器調色盤緩衝器210之每一新調色盤輸入項,基於調色盤之編碼單元122可經組態以首先檢查沒有其他相同輸入項已儲存於預測器調色盤緩衝器210中。若不存在相同輸入項,則將新調色盤輸入項添加至預測器調色盤緩衝器210。若新輸入項係現有輸入項之重複,則將新調色盤輸入項添加至預測器調色盤緩衝器210且自預測器調色盤緩衝器210移除重複輸入項。
基於調色盤之編碼單元122可包括二進位預測向量產生單元206,該二進位預測向量產生單元經組態以針對藉由調色盤產生單元203產生的用於視訊資料之當前區塊的調色盤中之每一輸入項產生並發信二進位旗標,指示預測器調色盤緩衝器210中之調色盤輸入項是否被複製(或被重複使用)以用於用於視訊資料之當前區塊的調色盤中
之輸入項中之一者(例如,藉由旗標=1來指示)。亦即,二進位預測器向量中的具有值1之旗標指示預測器調色盤緩衝器210中之對應輸入項被重複用於用於當前區塊之調色盤,而二進位預測向量中的具有值0之旗標指示預測器調色盤緩衝器210中之對應輸入項未重複用於用於當前區塊之調色盤。另外,基於調色盤之編碼單元122可經組態以明確地發信用於無法自預測器調色盤緩衝器210中之輸入項複製之當前調色盤的一些值。亦可發信新輸入項之數目。
在2014年3月25日申請之美國臨時申請案第61/970,257號、2014年4月17日申請之美國臨時申請案第61/981,105號及2014年5月23日申請之美國臨時申請案第62/002,668號中,提議基於二進位樹的發信方法及基於結束位置的發信方法以用於寫碼調色盤二進位預測器向量。在2014年5月23日申請之美國臨時申請案第62/002,741號中,提議基於群組的發信方法。本發明提議用於產生、編碼及解碼二進位預測向量之額外技術。
本文中所描述之一些實例係關於用以寫碼調色盤預測向量以改良寫碼效率之方法。舉例而言,假定藉由二進位預測向量產生單元206產生之二進位預測向量藉由下式表示: b =[b 0,b 1,…,b N-1],N 0,b i {0,1},0 i<N
在上面的等式中,b i {0,1},0i<N指示預測旗標(亦被稱為二進位旗標或二進位預測旗標)。若N=0,則b=Φ(亦即,b為空向量),不需要發信該向量。因此,在以下描述中,可假定N>0。
圖5展示預測器調色盤緩衝器210及當前調色盤220的一個實例。如圖5中可見,當前調色盤220重複使用來自預測器調色盤緩衝器210的與輸入項索引1、2、5及9相關聯之像素值。因而,藉由圖4之二進位預測向量產生單元206產生的二進位預測器向量將為 b =[110010001000]。如此實例中可見,二進位預測向量 b 包括對應於預
測器調色盤緩衝器210中之第1、第2、第5及第9索引的具有值1之旗標。亦即,預測器調色盤緩衝器210中之第1、第2、第5及第9輸入項係重複用於當前調色盤220之僅有輸入項。對於當前調色盤220中之輸入項索引5至8,基於調色盤之編碼單元122可經組態以在經編碼視訊位元串流中發信調色盤輸入項值(例如,使用顯式發信或或另一預測技術)。
根據本發明之一或多個技術,視訊編碼器20可經組態以編碼或大體上編碼二進位預測器向量 b 以便減少在經編碼視訊位元串流中發信調色盤所需的資料之量。如圖4所示,二進位預測向量壓縮單元209可經組態以產生並發信經編碼二進位預測向量215。然而,應理解,本發明之二進位預測向量壓縮技術可實施於視訊編碼器20之其他結構(包括熵編碼單元118)中。
在本發明之一個實例中,二進位預測向量壓縮單元209可經組態以使用基於執行長度之編碼技術來編碼二進位預測向量。舉例而言,二進位預測向量壓縮單元209可經組態以藉由使用指數-哥倫布碼發信二進位預測向量中之「1」之間的連續「0」之數目來編碼二進位預測向量。作為實例,再次假定 b =[110010001000]。在此實例中,如圖6所示,二進位預測向量(亦即, b )可表達為:「零個連續0」-「1」-「零個連續0」-「1」-「兩個連續0」-「1」-「三個連續0」-「1」及「四個連續0」。因為已知b i {0,1},所以除最後的「連續0」群組外,每一「連續0」群組必須繼之以「1」。因此,二進位預測向量壓縮單元209可使用基於零的執行長度寫碼技術將二進位預測向量 b 表示為「零個連續0」-「零個連續0」-「兩個連續0」-「三個連續0」-「四個連續0」,此可表達為執行長度序列「0-0-2-3-4」。
根據與基於執行長度之發信相關的本發明之一或多個實例,為了寫碼執行長度序列,可使用哥倫布-萊斯碼、任何階之指數-哥倫布
碼、截短的指數-哥倫布碼、截短的萊斯碼或任何其他二進位化(包括截短的二進位化)。在一個實例中,二進位預測向量壓縮單元209使用0階指數-哥倫布碼作為執行長度寫碼技術。
對於截短的二進位化,視「1」在二進位向量中之位置及二進位向量大小而定,最大符號(maxsymbol)可為「run」之最大可能值,此係因為,在移動至二進位向量之末尾後,最大可能執行值即視向量內之位置而自向量大小減少至0。舉例而言,最大符號可為二進位向量長度或二進位向量長度減去對「run」進行計數所在的「1」的位置。換言之,最大符號為自二進位向量之末尾量測的剩餘長度。對於具有特定大小(例如,13)之二進位向量 b 的以上實例,可用截短的二進位化「0[13]-0[12]-2[11]-3[8]-4[4]」來寫碼執行長度序列「0-0-2-3-4」,其中最大符號提供於方括號中。
又,在一些實例中,二進位化可取決於元素(0或1)在二進位向量中之位置或索引。作為特定實例,若位置小於某一臨限值,則使用一個類型之二進位化;否則,應用另一類型之二進位化。在一些實例中,二進位化類型可為不同的二進位化碼,或具有不同階數之相同碼家族,諸如指數-哥倫布碼。
在一個實例中,臨限值可為來自先前區塊或先前經調色盤寫碼之區塊的調色盤長度。在另一實例中,臨限值可固定為某一預設值或針對區塊、片段、圖像或在別處發信。將認識到,對應技術可視情況用以定義CABAC上下文以寫碼執行值。另外,基於調色盤之編碼單元122可經組態以在經發信「1」元素之數目(亦即,來自預測器調色盤緩衝器210的經指示為被重複用於當前調色盤220的調色盤輸入項之數目)達到最大可能數目時停止執行長度發信。在一些實例中,最大可能數目為最大可能調色盤大小。
本發明之一些實例係關於指示二進位預測向量 b 之執行長度序列
的結束位置寫碼。在本發明之一或多個實例中,二進位預測向量壓縮單元209可經組態以使用保留執行長度 L 寫碼二進位預測向量之結束位置來編碼二進位預測向量 b 。在一個實例中,使用 L =1作為保留執行長度。在視訊編碼器20處,若執行長度等於或大於 L ,則二進位預測向量壓縮單元209經組態以將1加至執行長度。若實際的執行長度小於 L ,則二進位預測向量壓縮單元209經組態以按原樣發信執行長度。二進位預測向量壓縮單元209可利用保留執行長度 L 來發信結束位置執行長度。
同樣地,在視訊解碼器30處,若執行長度之經解碼值大於 L ,則自實際的執行長度減去1。若經解碼值或執行長度小於 L ,則使用經解碼值作為實際的執行長度。若經解碼值等於 L ,則二進位預測向量 b 中之剩餘位置全部為0。因此,若經解碼值等於 L ,則不再需要執行發信。
使用與上文相同之實例(亦即, b =[110010001000])且假定 L =1,二進位預測向量壓縮單元209經組態以將圖6之執行長度序列「0-0-2-3-4」發信為「0-0-3-4-1」。接著,應用以上規則,視訊解碼器30可經組態以將執行長度序列恢復為「0-0-2-3-end」。亦即,將0之第一執行長度值解碼為0且將0之下一個執行長度序列解碼為0,此係因為0執行長度序列均小於 L =1的保留執行長度值。下一個執行長度序列為3,且因此,視訊解碼器30將經組態以自3之值減去1而獲得2,因為3之接收值大於 L =1的保留執行長度值。同樣地,視訊解碼器30將經組態以自4之接收值減去1以獲得3用於下一個執行長度序列,因為4之接收值大於 L =1的保留執行長度值。最終,最後的接收執行長度值1等於 L =1的保留執行長度值。因此,視訊解碼器30可判定沒有其他值「1」存在於二進位預測向量中。
在本發明之另一實例中,二進位預測向量壓縮單元209可經組態
以在二進位預測向量中之「1」的總數(亦即,來自預測器調色盤緩衝器210的重複使用之調色盤輸入項之指示的數目)小於最大可能調色盤大小時僅應用結束位置寫碼。若二進位預測向量中之「1」的總數等於最大可能調色盤大小,則二進位預測向量壓縮單元209可經組態以繞過最後執行長度之發信。
在以上實例中,若視訊解碼器30判定最大可能調色盤大小為4,則「0-0-2-3」之執行長度序列(或根據上文所述的保留執行長度規則的執行長度序列0-0-3-4)可足以恢復二進位預測向量 b 。在一些實例中,最大可能調色盤大小可為預定的。因此,最大可能調色盤大小可預先由視訊編碼器20及視訊解碼器30判定。在其他實例中,最大可能調色盤大小可由視訊編碼器20在經編碼視訊位元串流中發信。發信最大可能調色盤大小可使用本文中所描述的任何合適習知資料通信技術或任何合適資料通信技術執行。
在本發明之另一實例中,二進位預測向量壓縮單元209可經組態以僅在執行長度序列中之最後執行長度並非0時應用結束位置寫碼技術。若執行長度序列中之最後執行長度為0,則可繞過結束位置編碼。此表述等效於當二進位預測向量 b 中之最後旗標等於1時。在此情況下,可繞過結束位置寫碼。舉例而言,若 b =[100000000001],則執行長度序列為「0-10-0」。執行長度序列「0-10」(或根據上文所述的保留執行長度規定之經發信值序列0-11)可足以恢復二進位預測向量 b 。另外,結束位置可在不發信任何run以指示二進位預測向量 b 為零向量之情況下發信,此意謂未預測調色盤輸入項。
在一些實例中,替代使用固定值L來發信剩餘二進位旗標為0,可使用L之最小值及二進位預測器向量之大小來指示結束位置。此係因為「run」之值始終小於二進位預測器向量之大小。
圖7為展示視訊解碼器30的基於調色盤之解碼單元165之實例的
方塊圖。基於調色盤之解碼單元165可經組態而以與圖4的基於調色盤之編碼單元122互逆的方式執行。基於調色盤之解碼單元165可經組態以接收映射312,該映射針對當前區塊中之每一像素指示調色盤之輸入項是否將用於當前區塊中之像素。另外,映射312可進一步指示什麼調色盤輸入項將待給定像素。映射單元302可使用映射312及藉由調色盤產生單元304產生之調色盤來解碼視訊資料之當前的以產生經解碼視訊資料314。
根據本發明之技術,基於調色盤之解碼單元165亦可接收經編碼二進位預測向量316。如上文所論述,二進位預測向量316可使用一執行長度寫碼技術進行編碼,該執行長度寫碼技術來編碼指示二進位預測向量中之「run」之零值的執行長度序列。二進位預測向量解壓縮單元306可經組態以使用上文參看圖4至圖6所描述之執行長度寫碼技術的任何組合來解碼經編碼二進位預測向量。一旦二進位預測向量由二進位預測向量解壓縮單元306恢復,調色盤產生單元304即可基於二進位預測向量及儲存於預測器調色盤緩衝器310中的先前所用調色盤輸入項而產生用於視訊資料之當前區塊的調色盤。基於調色盤之解碼單元165可經組態以將先前所用調色盤輸入項儲存於預測器調色盤緩衝器310中,其方式與基於調色盤之編碼單元122將先前所用調色盤輸入項儲存於預測器調色盤緩衝器210的方式相同。
圖8為說明本發明之實例編碼方法的流程圖。圖8之技術可藉由視訊編碼器20之一或多個結構組件(包括基於調色盤之編碼單元122)來實施。在本發明之一個實例中,基於調色盤之編碼單元122可經組態以產生用於視訊資料之該當前區塊之一調色盤(800),及產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量(802)。二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項。基於調色盤之編碼單元
122可經進一步組態以使用一執行長度編碼技術來編碼該二進位預測向量(804),及使用該調色盤來編碼視訊資料之該當前區塊(806)。在一個實例中,該執行長度編碼技術包含寫碼零之一執行長度。
在本發明之一個實例中,基於調色盤之編碼單元122可經組態以使用一指數-哥倫布編碼技術來編碼二進位預測向量。在一個實例中,該指數哥倫布編碼技術為一0階指數-哥倫布編碼技術。
在本發明之另一實例中,基於調色盤之編碼單元122可經組態以使用該執行長度編碼技術及一保留執行長度值L來編碼該二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置。在一個實例中,該保留執行長度值L為1。
在本發明之另一實例中,基於調色盤之編碼單元122可經組態以使用該執行長度編碼技術、一保留執行長度值L及一最大調色盤大小來編碼該二進位預測向量。該保留執行長度值L指示該二進位預測向量之一結束位置。在此實例中,若該二進位預測向量中指示先前所用調色盤輸入項被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項之一總數等於該最大調色盤大小,則不使用該保留執行長度值L。
在本發明之另一實例中,基於調色盤之編碼單元122可經組態以使用該執行長度編碼技術及一保留執行長度值L來編碼該二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置。在此實例中,若該經編碼二進位預測向量中之一最後執行長度不指示零之一執行長度,則不使用該保留執行長度值L。
在本發明之另一實例中,基於調色盤之編碼單元122可經組態以將用於視訊資料之一或多個先前經編碼區塊的先前所用調色盤輸入項儲存於緩衝器中。基於調色盤之編碼單元122可經進一步組態以移除儲存於該緩衝器中的該等先前所用調色盤輸入項之重複輸入項。在本
發明之另一實例中,用於視訊資料之該一或多個先前經編碼區塊之該等先前所用調色盤輸入項包含用於視訊資料之該當前區塊上方之一行像素的先前所用調色盤輸入項及用於視訊資料之該當前區塊左邊之一行像素的先前所用調色盤輸入項。
圖9為說明本發明之實例解碼方法的流程圖。圖9之技術可藉由視訊解碼器30之一或多個結構組件(包括基於調色盤之解碼單元165)來實施。
在本發明之一個實例中,基於調色盤之解碼單元165可經組態以接收用於視訊資料之一當前區塊的一經編碼二進位預測向量(900),及使用一執行長度解碼技術來解碼該經編碼二進位預測向量(902)。在一個實例中,該執行長度解碼技術包含寫碼零之一執行長度。基於調色盤之解碼單元165可經進一步組態以基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤(904)。二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之當前區塊之調色盤的輸入項。基於調色盤之解碼單元165可經進一步組態以使用該調色盤來解碼視訊資料之該當前區塊(906)。
在本發明之另一實例中,基於調色盤之解碼單元165可經進一步組態以使用一指數-哥倫布解碼技術來解碼該經編碼二進位預測向量。在一個實例中,該指數哥倫布解碼技術為一0階指數-哥倫布解碼技術。
在本發明之另一實例中,基於調色盤之解碼單元165可經進一步組態以使用該執行長度解碼技術及一保留執行長度值L來解碼該經編碼二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置。在一個實例中,該保留執行長度值L為1。
在本發明之另一實例中,基於調色盤之解碼單元165可經進一步組態以使用該執行長度解碼技術、一保留執行長度值L及一最大調色
盤大小來解碼該經編碼二進位預測向量。該保留執行長度值L指示該二進位預測向量之一結束位置。若該二進位預測向量中指示先前所用調色盤輸入項被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項之一總數等於該最大調色盤大小,則不使用該保留執行長度值L。
在本發明之另一實例中,基於調色盤之解碼單元165可經進一步組態以使用該執行長度解碼技術及一保留執行長度值L來解碼該經編碼二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置。若該經編碼二進位預測向量中之一最後執行長度不指示零之一執行長度,則不使用該保留執行長度值L。
在本發明之另一實例中,基於調色盤之解碼單元165可經進一步組態以將先前所用調色盤輸入項自一緩衝器複製至該調色盤中,該等先前所用調色盤輸入項藉由該二進位預測向量指示為重複用於該調色盤,及在經複製用於該調色盤的先前所用調色盤輸入項之數目小於一最大調色盤大小的情況下接收額外調色盤輸入項。
在本發明之另一實例中,基於調色盤之解碼單元165可經進一步組態以將用於視訊資料之一或多個先前經解碼區塊之先前所用調色盤輸入項儲存於該緩衝器中。基於調色盤之解碼單元165可經進一步組態以移除儲存於該緩衝器中的該等先前所用調色盤輸入項之重複輸入項。在一個實例中,用於視訊資料之該一或多個先前經解碼區塊之該等先前所用調色盤輸入項包含用於視訊資料之該當前區塊上方之一行像素的先前所用調色盤輸入項及用於視訊資料之該當前區塊左邊之一行像素的先前所用調色盤輸入項。
以下部分描述本發明之額外實例技術。在第一實例中,視訊編碼器20可經組態以首先使用哥倫布-萊斯碼、指數-哥倫布碼或截短萊斯碼或其組合發信二進位預測向量b中的一之總數(「‘num-of-one’」)
(亦即,來自預測器調色盤緩衝器210的重複使用調色盤輸入項之數目)。接著,一旦經解碼非零二進位預測旗標之數目達到經發信「num-of-one」,視訊解碼器30即可判定二進位預測向量b中之剩餘旗標為0且此等旗標之發信將被視訊編碼器20繞過。換言之,在此第一實例中,可繞過上述的結束位置寫碼程序。在此情況下,發信實際的執行長度。在此實例中,不需要對執行長度值之向上調整。
在第二實例中,如上所述,僅寫碼二進位預測向量中之零值之執行長度。作為替代技術,執行長度寫碼可包括(例如,允許)二進位預測向量中之零值之執行長度及/或二進位預測向量中之一值之執行長度兩者。初始執行可預定義為「一之執行長度」(或「零之執行長度」)。接著,視訊編碼器20可交替零之run及一之run的寫碼。
舉例而言,使用與上文相同之實例(亦即, b =[110010001000])且假定第一執行為「一之執行長度」, b =[1100100010000]可表達為:「Run=2」-「Run=2」-「Run=1」-「Run=3」-「Run=1」-「Run=4」
然而,已知「零執行」必須繼之以「一執行」且反之亦然;因此,以上表達式可簡化為:「Run=2」-「Run=1」-「Run=0」-「Run=2」-「Run=0」-「Run=3」
此可將執行長度序列表達為「210203」。可使用哥倫布-萊斯寫碼、指數-哥倫布寫碼或截短萊斯寫碼來寫碼此序列。「零執行」及「一執行」可具有哥倫布-萊斯碼、指數-哥倫布碼或截短萊斯碼之不同參數。若使用普通二進位數來編碼「零執行」及「一執行」,則可將不同上下文用於「零執行」及「一執行」。在此實例中亦可應用本發明中別處所描述之結束位置寫碼技術。
另外,視訊編碼器20可經組態以在經發信「1」元素之數目達到最大可能數目(其可為最大可能調色盤大小)時停止執行長度發信。
在第三實例中,可直接發信b0(二進位預測向量 b 中之第一元素),使得視訊解碼器30可基於解碼b0值來判定第一執行係「零執行」或「一執行」。
在第四實例中,視訊編碼器20可經組態以使用第一寫碼技術來編碼二進位預測向量中的前M個旗標(亦即,[b0,b1,…,bM-1]),且使用第二寫碼技術來寫碼其餘旗標(亦即,[bM,bM+1,…,bN-1])。第二寫碼技術為上文所指定的基於執行長度之方法。在一個實例中,M=4。第一寫碼技術可為任何合適的習知寫碼技術。在一些實例中,第一寫碼技術可為基於非執行長度寫碼之方法。在其他實例中,第一及第二寫碼技術均可為基於執行長度之寫碼技術,但第一寫碼技術及第二寫碼技術可彼此不同。
在用於兩種二進位元素的基於執行長度之發信的實例中,如上文所提及,視訊編碼器20可經組態以發信用於二進位預測向量b之「0」或「1」之執行長度m。然而,在針對兩種二進位元素發信執行長度的情況下,可組合該兩個技術。此可藉由以下步驟來實現:(1)開始,選擇bin值,例如,bin=0;(2)發信用於bin元素之執行長度,(3)若bin等於1,則發信最後旗標,其指示等於1之bin是否為二進位向量中之最後「1」元素。舉例而言,等於1之last指示其為最後的「1」,且等於0之情況指示其他。若last等於1,則停止發信二進位向量元素且退出;(4)交換bin值(亦即,bin=1-bin)且轉至上面的步驟(2)。
若第一bin值經選擇為0,則可能需要指示當二進位向量為零時的情況。本發明可將指示二進位向量是否為零之旗標稱作zero_flag。舉例而言,可使用執行長度發信之開始處的單獨旗標。單獨旗標可等於1,此指示二進位向量為零。在此情況下,在zero_flag之後不存在執行長度發信。若zero_flag為0,則發信執行長度值。若選取第一bin等
於1,則可能不需要發信此zero_flag,因為等於1之bin具有指示發信之結束的last_flag。
在實例中,上文所討論之基本演算法可使用以下清單中之技術中之一或多者來進一步改良。清單中之每一項目在此清單之後的以下描述中可被稱作「經改良項目」。
1. bin選擇可固定至0或1,或為自適應性的(亦即,針對各種區塊不同)。舉例而言,可藉由識別哪個元素最頻繁或哪個第一元素在先前經寫碼區塊中最頻繁而基於先前區塊來選取(亦即,選擇)bin。替代地,bin可針對每個區塊發信,或可針對區塊之群組(例如,針對每一圖塊或在片段標頭中)發信。替代地,bin可根據視訊序列(例如,圖像參數集合(PPS)、序列參數集(SPS)、視訊參數集(VPS)或在別處中之至少一個)中之圖像而發信。
2.若二進位向量元素「1」(針對其發信此最後旗標)係二進位向量 b 中之最後元素,則可不發信last旗標。
3.在處理二進位向量中之第一元素之後,經發信執行長度值可為實際執行長度值減1,因為若該元素並非最後元素,則已知該元素繼之以至少一個另一二進位元素。
4.若二進位向量中之最後「1」元素之執行長度值在前具有「0」元素,則可不發信二進位向量中之最後「1」元素之執行長度值,此係因為若「0」執行長度值在二進位向量中之最後元素之前停止,則已知此元素為「1」且此元素為向量中之最後「1」元素。
5.替代地,為了zero_flag發信,二進位向量中之最後「1」元素之執行長度值可包括至第一執行長度值中(在為此指派特定值之情況下)。舉例而言,若第一執行長度值為零,則二進位向量為零且此後不存在其他發信。對於非零二進位向量,第一經發信執行長度值需要在彼特定值(在此實例中,0)之後增加1以避免不明確性。
6.在(例如)針對每一旗標可指派單獨上下文之情況下,zero_flag及last_flag可為經上下文自適應性二進位算術寫碼(CABAC)上下文寫碼的。上下文可取決於區塊大小、片段類型等。
7.考慮執行長度值不能大於二進位向量大小,可使用各種二進位化方法(諸如一元碼、哥倫布-萊斯碼或指數-哥倫布或該等碼之截短版本)來寫碼執行長度值。
8.執行長度發信可在經發信「1」元素之數目已達到最大可能數目(其可表示最大可能調色盤大小)時停止。
對於具有二進位預測向量 b ={11001110100001}之實例,上文所述之基本演算法產生:[0]0-2(0)-2-3(0)-1-1(0)-4-1(1)。開始時,將bin設定成0,且將第一執行長度發信至該二進位數且第一執行長度在此實例中為0,接著在每個「-」處,將bin交換為1-bin。經發信的最後旗標將在括號中指示。在方括號中的為zero-flag。對於實例,以下為經改良演算法之結果:1-1(0)-1-2(0)-0-0(0)-3。
在第一元素處理反映歸因於上文之項目#5之執行長度值1之後,其他執行長度值將如上文之經改良項目#3中所提地減小1。刪除線指示不發信用於上文#2中所提及的向量中之最後「1」的最後旗標,且不存在針對上文#4中所建議之最後「1」元素的執行長度值發信。
對於另一實例: b ={11001110100011},實例經改良演算法產生下式:1-1(0)-1-2(0)-0-0(0)-3-1。
一些實例方法可使用指數-哥倫布碼來寫碼調色盤模式索引區塊寫碼中之上方複製執行、左邊複製執行或兩者的長度。舉例而言,使用指數-哥倫布碼來寫碼執行長度之方法亦可將指數-哥倫布碼應用於寫碼調色盤模式索引區塊寫碼中之上方複製執行、左邊複製執行或兩者的長度。在另一實例中,在發信「大於0」、「大於1」及「大於2」旗標之後,第二階哥倫布-萊斯碼可用以在(例如,執行長度-3)>=0之
情況下寫碼剩餘值(例如,執行長度-3)。
在一些實例中,「大於0」、「大於1」及「大於2」旗標可分別用以指示執行長度「大於0」、「大於1」或「大於2」。執行長度可使用經執行長度寫碼之二進位預測向量來寫碼。
根據本發明之一些額外實例,視訊寫碼器(例如,視訊編碼器20或視訊解碼器30)可判定一或多個新調色盤預測器。根據本發明之此等額外實例,視訊寫碼器可判定用於發信調色盤預測器之新布林向量。此等及其他技術將(例如)在下文關於圖10更詳細地描述。
圖10為說明符合本發明之技術的判定用於寫碼視訊資料之調色盤之實例的概念圖。圖10之實例包括具有使用調色盤模式(PAL)寫碼的與第一調色盤184相關聯之第一寫碼單元(CU)180及與第二調色盤192相關聯之第二CU 188的圖像178。如下文將較詳細描述且根據本發明之技術,第二調色盤192係基於第一調色盤184。圖像178亦包括藉由框內預測寫碼模式寫碼的區塊196及藉由框間預測寫碼模式寫碼的區塊200。
出於解釋之目的,在藉由視訊編碼器20(圖1及圖2)及視訊解碼器30(圖1及圖3)執行之上下文中且關於HEVC視訊寫碼標準來描述圖10之技術。然而,應理解,本發明之技術不限於此方式,且可藉由其他視訊寫碼處理器及/或器件在其他視訊寫碼程序及/或標準中應用。
大體而言,調色盤係指對於當前正被寫碼的CU(在圖10之實例中,CU 188)而言為主要及/或代表性的許多像素值。第一調色盤184及第二調色盤192經展示為包括多個調色盤。在一些實例中,根據本發明之態樣,視訊寫碼器(諸如視訊編碼器20或視訊解碼器30)可針對CU之每一色彩分量單獨地寫碼調色盤。舉例而言,視訊編碼器20可編碼用於CU之明度(Y)分量之調色盤、用於CU之色度(U)分量之另一調色盤及用於CU之色度(V)分量之又一調色盤。在此實例中,Y調色
盤之輸入項可表示CU之像素的Y值,U調色盤之輸入項可表示CU之像素的U值,且V調色盤之輸入項可表示CU之像素的V值。
在其他實例中,視訊編碼器20可編碼用於CU之全部色彩分量的單一調色盤。在此實例中,視訊編碼器20可編碼具有為三重值(包括Yi、Ui及Vi)之第i個輸入項的調色板。在此情況下,調色盤包括用於像素之分量中之每一者的值。因此,作為具有多個個別調色盤之調色盤集合的調色板184及192之表示僅為一個實例且不意欲為限制性的。
在圖10之實例中,第一調色盤184包括分別具有輸入項索引值1、輸入項索引值2及輸入項索引值3的三個輸入項202至206。輸入項202至206分別將索引值與包括像素值A、像素值B及像素值C之像素值關聯。如本文中所描述,替代寫碼第一CU 180之實際像素值,視訊寫碼器(諸如視訊編碼器20或視訊解碼器30)可使用基於調色盤之寫碼,以使用索引值1至3來寫碼區塊之像素。亦即,對於第一CU 180之每一像素位置,視訊編碼器20可編碼用於像素之索引值,其中索引值與第一調色盤184中之一或多者中的像素值相關聯。視訊解碼器30可自位元串流獲得該等索引值且使用該等索引值及第一調色盤184中之一或多者來重建構像素值。因此,第一調色盤184係藉由視訊編碼器20在經編碼視訊資料位元串流中傳輸以供視訊解碼器30在基於調色盤之解碼時使用。
在一些實例中,視訊編碼器20及視訊解碼器30可基於第一調色盤184來判定第二調色盤192。舉例而言,視訊編碼器20及/或視訊解碼器30可定位判定預測性調色盤(在此實例中,第一調色盤184)所依據的一或多個區塊。在一些實例(諸如圖10中所說明之實例)中,視訊編碼器20及/或視訊解碼器30可在判定用於第二CU 188之預測性調色盤時定位先前經寫碼之CU(諸如左相鄰CU(第一CU 180))。
在圖10之實例中,第二調色盤192包括分別具有輸入項索引值
1、輸入項索引值2及輸入項索引值3的三個輸入項208至212。輸入項208至212分別將索引值與包括像素值A、像素值B及像素值D之像素值相關。在此實例中,視訊編碼器20可寫碼指示第一調色盤184之哪些輸入項包括於第二調色盤192中的一或多個語法元素。在圖10之實例中,將該一或多個語法元素說明為向量216(例如,二進位預測向量)。向量216具有許多相關聯二進位數(或位元),每一二進位數指示與彼二進位數相關聯之調色盤預測器是否用以預測當前調色盤之輸入項。舉例而言,向量216指示第一調色盤184的前兩個輸入項(202及204)包括於第二調色盤192中(向量216中之值「1」),而第一調色盤184之第三輸入項不包括於第二調色盤192中(向量216中之值「0」)。在圖10之實例中,向量為布林(Boolean)向量。
在一些實例中,視訊編碼器20及視訊解碼器30可在執行調色盤預測時判定調色盤預測器清單(其亦可被稱作調色盤預測器表)。調色盤預測器清單可包括來自用以預測用於寫碼當前區塊之調色盤之一或多個輸入項之一或多個相鄰區塊的調色盤的輸入項。視訊編碼器20及視訊解碼器30可以相同方式來建構清單。視訊編碼器20及視訊解碼器30可寫碼資料(諸如向量216)以至少調色盤預測器清單之哪些輸入項將包括於用於寫碼當前區塊之調色盤中。
C.Gisquet、G.Laroche及P.Onno之文件「AhG10:Palette predictor stuffing」(JCTVC-Q0063)揭示用於判定調色盤預測器清單之一個實例程序。在一些實例中,如上文所指出,視訊編碼器20或視訊解碼器30可使用布林向量(諸如向量216)來指示調色盤預測器清單中之每一項目是否用於(未用於)預測用於目前正在寫碼之區塊的調色盤中之一或多個輸入項。
在一些實例中,調色盤預測器清單中之所有該等項目係自先前經寫碼調色盤(例如,用先前經寫碼區塊寫碼之調色盤)導出。然而,
此等調色盤在空間上可遠離當前CU,此可使調色盤相關性相對較弱。一般而言,擴充調色盤預測器表(或清單)可能有幫助(例如,可提供更準確之預測器,此可產生效率增益)。然而,判定及使用相對較大之調色盤預測器表(或輕度)產生相對較長之布林向量。
在各種實例中,本發明中所描述之技術可包括基於調色盤之寫碼中的用於判定、預測及/或發信調色盤之各種組合的技術。該等技術可包括以下各者之任何組合:判定調色盤預測器、將預測器添加至預測器之候選物清單、自預測器之候選物清單精簡預測器、寫碼候選預測器之使用的指示或本文中所描述之任何其他技術。儘管出於說明及清晰目的可個別地描述某些實例,本發明涵蓋本文中所描述的用於基於調色盤之寫碼的技術之任何組合。
根據本發明之一些態樣,視訊寫碼器(諸如視訊編碼器20或視訊解碼器30)可判定一或多個新調色盤預測器。舉例而言,本發明之某些技術包括判定一或多個空間調色盤預測器。在實例中,若當前CU上方之CU(被稱作「上方CU」或「上部CU」且在圖10之實例中展示為經框內寫碼之CU 196)使用基於調色盤之寫碼,則來自上部CU之調色盤作為用於當前CU(第二CU 188)之調色盤預測器有效。亦即,上部CU之輸入項中之每一者可包括於調色盤預測器清單(例如,其可與指示哪些輸入項被用作預測器之向量相關聯)中以用於預測當前調色盤。
然而,若上方CU係不同CTU之部分,則將來自上方CU之調色盤用於預測可需要額外儲存。舉例而言,對於經框間預測區塊,視訊寫碼器可必須存取記憶體(例如,視訊寫碼器之外部記憶體)、重建構像素值(此可產生潛時)。然而,在一些實例中,視訊寫碼器可考慮與經框內預測區塊相關聯之經重建構樣本,在此表示為參考樣本。此等經重建構樣本可局部地儲存且可供視訊編碼器20及視訊解碼器30使用。
在實例中,根據本發明之態樣,將參考樣本添加至調色盤預測器清單。舉例而言,空間相鄰區塊(其可經調色盤寫碼或經框內寫碼)之像素值可經識別為候選調色盤預測器且與向量相關聯(如上文所指出)。在一些實例中,可僅使用參考樣本之一子集。舉例而言,若調色盤預測器清單已包括來自特定CU(諸如左相鄰CU(第一CU 180))之調色盤,則來自彼CU之樣本可不包括於調色盤預測清單中。此外,在一些實例中,視訊寫碼器可應用精簡程序以移除清單中之重複調色盤預測器,代價為視訊編碼器20且尤其視訊解碼器30之附加複雜度。此等新調色盤預測器可插入於預測器清單之開始處或該清單之結尾處。在其他實例中,該等新調色盤預測器(例如,空間調色盤預測器)可根據某一規則(諸如預測器清單大小、CU大小或類似者)適應性地插入至清單中。
在其他實例中,任何其他經重建構像素(諸如,在當前CU左邊的行中之任何CU中之像素)亦可添加至調色盤預測器清單。
以此方式,視訊編碼器20及/或視訊解碼器30可判定用於預測用於視訊資料之當前區塊的調色盤之一或多個輸入項的一或多個空間調色盤預測器(其中該一或多個輸入項中之每一輸入項指示像素值),且寫碼指示該一或多個調色盤預測器之每一各別調色盤預測器是否用以預測用於視訊資料之當前區塊的調色盤之輸入項的一或多個語法元素。
根據本發明之其他態樣,視訊寫碼器(諸如視訊編碼器20或視訊解碼器30)可判定用於發信調色盤預測器之新布林向量。在一些實例中,本發明之技術可用以編碼用於調色盤預測之布林向量。
舉例而言,根據本發明之態樣,視訊編碼器20或視訊解碼器30可判定用於調色盤預測之二進位樹。在用於說明目的之實例中,令表示調色盤預測器之使用的0-1布林向量由N來表示。為有效地編碼此向
量,使用二進位樹。具體言之,將向量N分割成若干相連區域,其中每一區域含有一個或一個以上向量元素。發信一個位元以指示區域內之所有元素是否為零。若區域並不全部為零,則以相同方式將該區域進一步分裂成子區域。
分割可根據給定規則停止。舉例而言,一個規則可為「若區域大小小於臨限值,則分割程序停止」。當分割停止時,若區域大小大於一,且該區域含有非零元素,則在位元串流中發信該區域中之每一元素。在此情況下,假定區域大小為X,若前X-1個元素全部為零,則最後元素必須為1,使得最後元素可不包括於位元串流中。
在另一實例中,當分割程序停止且區域大小大於一但小於第二臨限值時,視訊寫碼器可跳過一個位元之發信以指示彼區域中之所有元素是否為零。實情為,對於區域中之每一元素,視訊寫碼器可發信一個位元以指示各別元素係零或1。
在另一實例中,並非二進位樹,可使用在每一節點具有兩個以上分支的樹。又,在一些實例中,可繞過自樹之根開始的前若干個層級之編碼。在此等實例中,該等值可隱含地假定為1。
根據本發明之態樣,在發信個別輸入項係0或1之前,可在位元串流中明確地寫碼來自調色盤預測器清單的最後非零輸入項(亦即,布林向量中之最後1)之位置。在此情況下,在位元串流中不發信自最後位置(包括最後位置)至布林向量之末尾的元素。在另一實例中,在位元串流中亦可明確地發信用於預測之第一調色盤預測器的位置(亦即,布林向量中之第一個1)。
根據本發明之態樣,可在位元串流中明確地寫碼所使用的來自調色盤預測器清單之輸入項的數目。舉例而言,本發明之技術包括發信上文所討論之布林向量中之一(「1」)的數目。在一些實例中,視訊編碼器20可最初發信布林向量中之(「1」)的數目(TotalOnes)。視訊
編碼器20可接著依序發信(或以某一其他方式發信)布林向量中之每一項目(0或1),直至經發信1之數目等於TotalOnes。
同樣地,視訊解碼器30可首先解碼包括於接收之布林向量中之一之數目的指示。視訊解碼器30可接著解碼接收之向量之每一元素,直至視訊解碼器30已解碼匹配所指示的「1」之數目的向量中之「1」之數目。在一些實例中,逐項目發信(例如,針對向量之元素)可自向量之開始依序。在其他實例中,可根據某一其他掃描次序來發信向量之元素。在另外其他實例中,逐項目發信可使用執行長度寫碼技術。
在一些實例中,當最初發信布林向量中之一之數目(例如,在布林向量之前在位元串流中發信TotalOnes)時,可使用CABAC對布林向量中之每一語法元素(例如,旗標)進行上下文寫碼。在一些情況下,可使用多個上下文。在一些實例中,可對布林向量之所有語法元素進行上下文寫碼。在其他實例中,可僅對布林向量之語法元素之一子集進行上下文寫碼。
根據本發明之態樣,用於布林向量之語法元素的上下文可取決於布林向量內之語法元素(例如,二進位旗標)的位置及最初所發信的一之經發信數目(TotalOnes)。在用於說明目的之實例中,若((位置>3)&&((位置/2+1)>TotalOnes)),則視訊寫碼器(諸如視訊編碼器20或視訊解碼器30)可使用第一上下文;否則(當條件不為真時),視訊寫碼器可使用另一上下文,其中位置指示語法元素之相對位置係在布林向量中寫碼。在此情況下,視訊寫碼器將兩個上下文用於寫碼布林向量中之語法元素(例如,二進位旗標),且基於布林向量中之特定語法元素之相對位置而選擇用於布林向量之特定語法元素的上下文。在另一實例中,視訊寫碼器可在條件((位置>3)&&((位置/4+1)>=TotalOnes))為真之情況下使用一個上下文且在該條件不為真之情況下使用另一上下文。亦可使用用於判定上下文之其他條件。
在以上實例中,用於布林向量之特定語法元素的CABAC上下文取決於語法元素之相對位置及布林向量中之一的總數(TotalOnes)。在其他實例中,並非取決於位置及TotalOnes,視訊寫碼器可基於所寫碼之語法元素之相對位置及迄今為止已發信的一之總數(例如,在寫碼布林向量中之語法元素之前已出現的一之總數)來判定用於語法元素之上下文。在另外其他實例中,視訊寫碼器可使用上述條件之任何組合來判定用於對布林向量之語法元素進行CABAC寫碼的上下文。
根據本發明之態樣,調色盤大小係由編碼器發信且由解碼器接收。舉例而言,可發信調色盤中之輸入項之數目以指示調色盤之大小。在一些實例中,視訊編碼器20最初可發信調色盤大小(PLTSize)。視訊編碼器20可接著發信布林向量中之每一項目(0或1),直至經發信1之數目等於PLTSize。視訊解碼器30可接收調色盤大小之指示,且可繼續加至調色盤(例如,使用藉由向量識別之調色盤預測器),直至調色盤中之輸入項之數目達到經發信調色盤大小。
在一些實例中,視訊編碼器20最初可發信調色盤大小(PLTSize)。視訊編碼器20可接著發信未預測調色盤項目之數目(nonPredPLTSize)。視訊編碼器20可接著發信布林向量中之每一項目(0或1),直至經發信「1」之數目等於調色盤大小與未預測調色盤項目之數目之差(PLTSize-nonPredPLTSize)。在一些實例中,視訊解碼器30可接收調色盤大小及調色盤中的未使用調色盤預測器預測之輸入項之數目(例如,向量之「0」之數目)的指示。視訊解碼器30亦可接收指示調色盤預測器將包括於調色盤中的向量(例如,上文所述之布林向量)。視訊解碼器30可接著解碼向量中之每一項目,直至「1」之數目等於調色盤大小與未預測調色盤項目之數目之差(PLTSize-nonPredPLTSize)。
以此方式,在一個實例中,視訊編碼器20及/或視訊解碼器30可
判定用於預測用於視訊資料之當前區塊的調色盤之一或多個輸入項的一或多個調色盤預測器(其中該一或多個輸入項之每一輸入項指示像素值),判定具有複數個二進位數之向量(其中向量之每一二進位數指示該一或多個調色盤預測器之各別調色盤預測器是否用以預測用於視訊資料之當前區塊的調色盤後之輸入項),將向量分割成一或多個區域,且基於該分割來判定向量之二進位數之一或多個值。
雖然上文所述的圖10之技術係在CU(HEVC)之上下文中描述,應理解,該等技術亦可應用於預測單元(PU)或其他視訊寫碼程序及/或標準中。
將認識到,取決於實例,本文中所描述之技術中之任一者的某些動作或事件可以一不同序列執行、可添加、合併或完全省略(例如,對於實踐該等技術而言並非所有所描述動作或事件皆為必要的)。此外,在某些實例中,動作或事件可同時執行(例如,經由多執行緒處理、中斷處理或多個處理器)而非依序執行。此外,雖然為了清晰起見,本發明之某些態樣被描述為藉由單一模組或單元執行,但應理解,本發明之技術可藉由與視訊寫碼器相關聯之單元或模組之組合來執行。
出於說明目的,已關於開發中HEVC標準而描述本發明之某些態樣。然而,本發明中所描述之技術可適用於其他視訊寫碼過程,包括尚未開發之其他標準或專屬視訊寫碼過程。
上文所述之技術可藉由視訊編碼器20(圖1及圖2)及/或視訊解碼器30(圖1及圖3)執行,其兩者可大體上被稱作視訊寫碼器。同樣地,如適用,視訊寫碼可指視訊編碼或視訊解碼。
本發明中所描述之技術可包括用於調色盤寫碼之一或多個不同態樣之各種組合的技術。
在一或多個實例中,所描述功能可以硬體、軟體、韌體或其任
何組合來實施。若以軟體實施,則該等功能可作為一或多個指令或碼而在電腦可讀媒體上儲存或傳輸且由基於硬體之處理單元來執行。電腦可讀媒體可包括電腦可讀儲存媒體(其對應於諸如資料儲存媒體之有形媒體)或通信媒體,通信媒體包括(例如)根據通信協定促進電腦程式自一處傳送至另一處的任何媒體。以此方式,電腦可讀媒體大體上可對應於(1)非暫時性的有形電腦可讀儲存媒體或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或多個電腦或一或多個處理器存取以擷取用於實施本發明中所描述之技術的指令、碼及/或資料結構的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
借助於實例而非限制,此等電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存、磁碟儲存或其他磁性儲存器件、快閃記憶體,或可用以儲存呈指令或資料結構形式之所要程式碼且可由電腦存取的任何其他媒體。又,任何連接被適當地稱為電腦可讀媒體。舉例而言,若使用同軸纜線、光纖纜線、雙絞線、數位用戶線(DSL)或諸如紅外線、無線電及微波之無線技術自網站、伺服器或其他遠端源傳輸指令,則同軸纜線、光纖纜線、雙絞線、DSL或諸如紅外線、無線電及微波之無線技術包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、載波、信號或其他短暫性媒體,而實際上有關於非短暫性有形儲存媒體。如本文中所使用,磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位多功能光碟(DVD)、軟性磁碟及Blu-ray光碟,其中磁碟通常以磁性方式再現資料,而光碟用雷射以光學方式再現資料。以上各者之組合亦應包括於電腦可讀媒體之範疇內。
指令可由一或多個處理器執行,該一或多個處理器諸如一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)或其他等效的整合或離散邏輯電
路。因此,如本文中所使用的術語「處理器」可指上述結構或適合於實施本文中所描述之技術之任何其他結構中的任一者。另外,在一些態樣中,本文中所述之功能性可提供於經組態用於編碼及解碼的專用硬體及/或軟體模組內,或併入於組合式編碼解碼器中。又,該等技術可完全實施於一或多個電路或邏輯元件中。
本發明之技術可在廣泛多種器件或裝置中實施,該等器件或裝置包括無線手機、積體電路(IC)或一組IC(例如,晶片組)。在本發明中描述各種組件、模組或單元以強調經組態以執行所揭示技術之器件的功能態樣,但未必需要藉由不同硬體單元來實現。實情為,如上所述,各種單元可組合於編碼解碼器硬體單元中,或結合合適軟體及/或韌體藉由互操作性硬體單元(包括如上所述之一或多個處理器)之集合來提供。
已描述各種實例。此等及其他實例在以下申請專利範圍之範疇內。以上方法可個別地或組合地使用。
122‧‧‧基於調色盤之編碼單元
203‧‧‧調色盤產生單元
204‧‧‧映射單元
206‧‧‧二進位預測向量產生單元
209‧‧‧二進位預測向量壓縮單元
210‧‧‧預測器調色盤緩衝器
212‧‧‧像素值
214‧‧‧映射
215‧‧‧經編碼二進位預測向量
Claims (52)
- 一種解碼視訊資料之方法,該方法包含:接收用於視訊資料之一當前區塊之一經編碼二進位預測向量;使用一執行長度解碼技術來解碼該經編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
- 如請求項1之方法,其中解碼該經編碼二進位預測向量包含使用一指數-哥倫布解碼技術來解碼該經編碼二進位預測向量。
- 如請求項2之方法,其中該指數哥倫布解碼技術為一0階指數-哥倫布解碼技術。
- 如請求項1之方法,其中解碼該經編碼二進位預測向量包含:使用該執行長度解碼技術及一保留執行長度值L來解碼該經編碼二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置。
- 如請求項4之方法,其中該保留執行長度值L為1。
- 如請求項1之方法,其中解碼該經編碼二進位預測向量包含:使用該執行長度解碼技術、一保留執行長度值L及一最大調色盤大小來解碼該經編碼二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置,其中若該二進位預測向量中指示先前所用調色盤輸入項被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項之一總數等於該最大調色盤大小, 則不使用該保留執行長度值L。
- 如請求項1之方法,其中解碼該經編碼二進位預測向量包含:使用該執行長度解碼技術及一保留執行長度值L來解碼該經編碼二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置,其中若該經編碼二進位預測向量中之一最後執行長度不指示零之一執行長度,則不使用該保留執行長度值L。
- 如請求項1之方法,其中基於該二進位預測向量產生用於視訊資料之該當前區塊之該調色盤包含:將先前所用調色盤輸入項自一緩衝器複製至該調色盤中,該等先前所用調色盤輸入項藉由該二進位預測向量指示為重複用於該調色盤;及在經複製用於該調色盤的先前所用調色盤輸入項之數目小於一最大調色盤大小的情況下接收額外調色盤輸入項。
- 如請求項8之方法,其進一步包含:將用於視訊資料之一或多個先前經解碼區塊之該等先前所用調色盤輸入項儲存於該緩衝器中。
- 如請求項9之方法,其進一步包含:移除儲存於該緩衝器中的該等先前所用調色盤輸入項之重複輸入項。
- 如請求項9之方法,其中用於視訊資料之該一或多個先前經解碼區塊之該等先前所用調色盤輸入項包含用於視訊資料之該當前區塊上方之一行像素的先前所用調色盤輸入項及用於視訊資料之該當前區塊左邊之一行像素的先前所用調色盤輸入項。
- 如請求項1之方法,其中該執行長度解碼技術包含寫碼零之一執行長度。
- 一種編碼視訊資料之方法,該方法包含: 產生用於視訊資料之該當前區塊之一調色盤;產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;使用一執行長度編碼技術來編碼該二進位預測向量;及使用該調色盤來編碼視訊資料之該當前區塊。
- 如請求項13之方法,其中編碼該二進位預測向量包含使用一指數-哥倫布編碼技術來編碼該二進位預測向量。
- 如請求項14之方法,其中該指數哥倫布編碼技術為一0階指數-哥倫布編碼技術。
- 如請求項13之方法,其中編碼該二進位預測向量包含:使用該執行長度編碼技術及一保留執行長度值L來編碼該二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置。
- 如請求項16之方法,其中該保留執行長度值L為1。
- 如請求項13之方法,其中編碼該二進位預測向量包含:使用該執行長度編碼技術、一保留執行長度值L及一最大調色盤大小來編碼該二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置,其中若該二進位預測向量中指示先前所用調色盤輸入項被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項之一總數等於該最大調色盤大小,則不使用該保留執行長度值L。
- 如請求項13之方法,其中編碼該二進位預測向量包含:使用該執行長度編碼技術及一保留執行長度值L來編碼該二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結 束位置,其中若該經編碼二進位預測向量中之一最後執行長度不指示零之一執行長度,則不使用該保留執行長度值L。
- 如請求項13之方法,其進一步包含:將用於視訊資料之一或多個先前經編碼區塊之該等先前所用調色盤輸入項儲存於該緩衝器中。
- 如請求項20之方法,其進一步包含:移除儲存於該緩衝器中的該等先前所用調色盤輸入項之重複輸入項。
- 如請求項20之方法,其中用於視訊資料之該一或多個先前經編碼區塊之該等先前所用調色盤輸入項包含用於視訊資料之該當前區塊上方之一行像素的先前所用調色盤輸入項及用於視訊資料之該當前區塊左邊之一行像素的先前所用調色盤輸入項。
- 如請求項13之方法,其中該執行長度編碼技術包含寫碼零之一執行長度。
- 一種經組態以解碼視訊資料之裝置,該裝置包含:經組態以儲存該視訊資料之一記憶體;及與該記憶體通信之一視訊解碼器,該視訊解碼器經組態以:接收用於該視訊資料之一當前區塊之一經編碼二進位預測向量;使用一執行長度解碼技術來解碼該經編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
- 如請求項24之裝置,其中為了解碼該經編碼二進位預測向量,該視訊解碼器經進一步組態以:使用一指數-哥倫布解碼技術來解碼該經編碼二進位預測向量。
- 如請求項25之裝置,其中該指數哥倫布解碼技術為一0階指數-哥倫布解碼技術。
- 如請求項24之裝置,其中為了解碼該經編碼二進位預測向量,該視訊解碼器經進一步組態以:使用該執行長度解碼技術及一保留執行長度值L來解碼該經編碼二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置。
- 如請求項27之裝置,其中該保留執行長度值L為1。
- 如請求項24之裝置,其中為了解碼該經編碼二進位預測向量,該視訊解碼器經進一步組態以:使用該執行長度解碼技術、一保留執行長度值L及一最大調色盤大小來解碼該經編碼二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置,其中若該二進位預測向量中指示先前所用調色盤輸入項被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項之一總數等於該最大調色盤大小,則不使用該保留執行長度值L。
- 如請求項24之裝置,其中為了解碼該經編碼二進位預測向量,該視訊解碼器經進一步組態以:使用該執行長度解碼技術及一保留執行長度值L來解碼該經編碼二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置,其中若該經編碼二進位預測向量中之一最後執行長度不指示零之一執行長度,則不使用該保留執行長度值L。
- 如請求項24之裝置,其中為了基於該二進位預測向量產生用於視訊資料之該當前區塊之該調色盤,該視訊解碼器經進一步組態以:將先前所用調色盤輸入項自一緩衝器複製至該調色盤中,該等先前所用調色盤輸入項藉由該二進位預測向量指示為重複用於該調色盤;及在經複製用於該調色盤的先前所用調色盤輸入項之數目小於一最大調色盤大小的情況下接收額外調色盤輸入項。
- 如請求項31之裝置,其中該視訊解碼器經進一步組態以:將用於視訊資料之一或多個先前經解碼區塊之該等先前所用調色盤輸入項儲存於該緩衝器中。
- 如請求項32之裝置,其中該視訊解碼器經進一步組態以:移除儲存於該緩衝器中的該等先前所用調色盤輸入項之重複輸入項。
- 如請求項32之裝置,其中用於視訊資料之該一或多個先前經解碼區塊之該等先前所用調色盤輸入項包含用於視訊資料之該當前區塊上方之一行像素的先前所用調色盤輸入項及用於視訊資料之該當前區塊左邊之一行像素的先前所用調色盤輸入項。
- 如請求項24之裝置,其中該執行長度解碼技術包含寫碼零之一執行長度。
- 如請求項24之裝置,其進一步包含:一顯示器,其經組態以顯示包括該視訊資料之該經解碼當前區塊之一圖像。
- 一種經組態以編碼視訊資料之裝置,該裝置包含:經組態以儲存該視訊資料之一記憶體;及與該記憶體通信之一視訊編碼器,該視訊編碼器經組態以: 產生用於該視訊資料之一當前區塊之一調色盤;產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;使用一執行長度編碼技術來編碼該二進位預測向量;及使用該調色盤來編碼視訊資料之該當前區塊。
- 如請求項37之裝置,其中為了編碼該二進位預測向量,該視訊編碼器經進一步組態以:使用一指數-哥倫布編碼技術來編碼該二進位預測向量。
- 如請求項38之裝置,其中該指數哥倫布編碼技術為一0階指數-哥倫布編碼技術。
- 如請求項37之裝置,其中為了編碼該二進位預測向量,該視訊編碼器經進一步組態以:使用該執行長度編碼技術及一保留執行長度值L來編碼該二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置。
- 如請求項40之裝置,其中該保留執行長度值L為1。
- 如請求項37之裝置,其中為了編碼該二進位預測向量,該視訊編碼器經進一步組態以:使用該執行長度編碼技術、一保留執行長度值L及一最大調色盤大小來編碼該二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置,其中若該二進位預測向量中指示先前所用調色盤輸入項被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項之一總數等於該最大調色盤大小,則不使用該保留執行長度值L。
- 如請求項37之裝置,其中為了編碼該二進位預測向量,該視訊編碼器經進一步組態以:使用該執行長度編碼技術及一保留執行長度值L來編碼該二進位預測向量,該保留執行長度值L指示該二進位預測向量之一結束位置,其中若該經編碼二進位預測向量中之一最後執行長度不指示零之一執行長度,則不使用該保留執行長度值L。
- 如請求項37之裝置,其中該視訊編碼器經進一步組態以:將用於視訊資料之一或多個先前經編碼區塊之該等先前所用調色盤輸入項儲存於該緩衝器中。
- 如請求項44之裝置,其中該視訊編碼器經進一步組態以:移除儲存於該緩衝器中的該等先前所用調色盤輸入項之重複輸入項。
- 如請求項44之裝置,其中用於視訊資料之該一或多個先前經編碼區塊之該等先前所用調色盤輸入項包含用於視訊資料之該當前區塊上方之一行像素的先前所用調色盤輸入項及用於視訊資料之該當前區塊左邊之一行像素的先前所用調色盤輸入項。
- 如請求項37之裝置,其中該執行長度編碼技術包含寫碼零之一執行長度。
- 如請求項37之裝置,其進一步包含:經組態以擷取該視訊資料之一攝影機。
- 一種經組態以解碼視訊資料之裝置,該裝置包含:用於接收用於視訊資料之一當前區塊之一經編碼二進位預測向量的構件;用於使用一執行長度解碼技術來解碼該經編碼二進位預測向量的構件;用於基於該二進位預測向量產生用於視訊資料之該當前區塊 之一調色盤的構件,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及用於使用該調色盤來解碼視訊資料之該當前區塊的構件。
- 一種經組態以編碼視訊資料之裝置,該裝置包含:用於產生用於視訊資料之該當前區塊之一調色盤的構件;用於產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量的構件,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;用於使用一執行長度編碼技術來編碼該二進位預測向量的構件;及用於使用該調色盤來編碼視訊資料之該當前區塊的構件。
- 一種儲存指令之電腦可讀儲存媒體,該等指令在執行時使經組態以解碼視訊資料之一器件之一或多個處理器進行以下操作:接收用於該視訊資料之一當前區塊之一經編碼二進位預測向量;使用一執行長度解碼技術來解碼該經編碼二進位預測向量;基於該二進位預測向量產生用於視訊資料之該當前區塊之一調色盤,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;及使用該調色盤來解碼視訊資料之該當前區塊。
- 一種儲存指令之電腦可讀儲存媒體,該等指令在執行時使經組態以編碼視訊資料之一器件之一或多個處理器進行以下操作:產生用於該視訊資料之一當前區塊之一調色盤; 產生用於用於視訊資料之該當前區塊之該調色盤的一二進位預測向量,該二進位預測向量包含指示先前所用調色盤輸入項是否被重複用於用於視訊資料之該當前區塊之該調色盤的輸入項;使用一執行長度編碼技術來編碼該二進位預測向量;及使用該調色盤來編碼視訊資料之該當前區塊。
Applications Claiming Priority (14)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201461970257P | 2014-03-25 | 2014-03-25 | |
| US61/970,257 | 2014-03-25 | ||
| US201461981105P | 2014-04-17 | 2014-04-17 | |
| US61/981,105 | 2014-04-17 | ||
| US201462002668P | 2014-05-23 | 2014-05-23 | |
| US62/002,668 | 2014-05-23 | ||
| US201462015327P | 2014-06-20 | 2014-06-20 | |
| US62/015,327 | 2014-06-20 | ||
| US201462018461P | 2014-06-27 | 2014-06-27 | |
| US62/018,461 | 2014-06-27 | ||
| US201462041119P | 2014-08-24 | 2014-08-24 | |
| US62/041,119 | 2014-08-24 | ||
| US14/667,411 | 2015-03-24 | ||
| US14/667,411 US10362336B2 (en) | 2014-03-25 | 2015-03-24 | Palette predictor signaling with run length code for video coding |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW201603563A true TW201603563A (zh) | 2016-01-16 |
| TWI666920B TWI666920B (zh) | 2019-07-21 |
Family
ID=54192248
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW104109599A TWI666920B (zh) | 2014-03-25 | 2015-03-25 | 用於視訊寫碼之具有執行長度碼之調色盤預測器信令 |
Country Status (11)
| Country | Link |
|---|---|
| US (1) | US10362336B2 (zh) |
| EP (1) | EP3123719B1 (zh) |
| JP (1) | JP6541682B2 (zh) |
| KR (1) | KR102344232B1 (zh) |
| CN (1) | CN106105207B (zh) |
| BR (1) | BR112016022261B1 (zh) |
| ES (1) | ES2750957T3 (zh) |
| HU (1) | HUE047030T2 (zh) |
| MX (1) | MX368488B (zh) |
| TW (1) | TWI666920B (zh) |
| WO (1) | WO2015148652A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10225556B2 (en) | 2015-06-08 | 2019-03-05 | Industrial Technology Research Institute | Method and apparatus of encoding or decoding coding units of a video content in a palette coding mode using an adaptive palette predictor |
Families Citing this family (31)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP4124034B1 (en) * | 2010-12-22 | 2023-08-23 | LG Electronics Inc. | Intra prediction in video coding |
| JPWO2013046504A1 (ja) * | 2011-09-29 | 2015-03-26 | パナソニックIpマネジメント株式会社 | 算術復号装置、画像復号装置、および算術復号方法 |
| US9491461B2 (en) * | 2012-09-27 | 2016-11-08 | Qualcomm Incorporated | Scalable extensions to HEVC and temporal motion vector prediction |
| US10750198B2 (en) | 2014-05-22 | 2020-08-18 | Qualcomm Incorporated | Maximum palette parameters in palette-based video coding |
| US10038915B2 (en) | 2014-05-22 | 2018-07-31 | Qualcomm Incorporated | Escape sample coding in palette-based video coding |
| US10264285B2 (en) | 2014-05-22 | 2019-04-16 | Qualcomm Incorporated | Coding runs in palette-based video coding |
| US10021418B2 (en) * | 2014-06-19 | 2018-07-10 | Hfi Innovation Inc. | Method and apparatus of candidate generation for single sample mode in video coding |
| US9900617B2 (en) | 2014-06-20 | 2018-02-20 | Qualcomm Incorporated | Single color palette mode in video coding |
| KR20160037111A (ko) * | 2014-09-26 | 2016-04-05 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
| US9596479B2 (en) * | 2014-10-07 | 2017-03-14 | Hfi Innovation Inc. | Method of pulse-code modulation and palette coding for video coding |
| US10097837B2 (en) | 2014-10-10 | 2018-10-09 | Qualcomm Incorporated | Palette run hiding in palette-based video coding |
| KR102470832B1 (ko) * | 2014-10-20 | 2022-11-28 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
| CN107211143B (zh) * | 2015-01-15 | 2020-08-18 | 株式会社Kt | 用于处理视频信号的方法和设备 |
| JP6122516B2 (ja) * | 2015-01-28 | 2017-04-26 | 財團法人工業技術研究院Industrial Technology Research Institute | エンコーディング方法及びエンコーダ |
| US10477244B2 (en) * | 2015-01-29 | 2019-11-12 | Kt Corporation | Method and apparatus for predicting and restoring a video signal using palette entry and palette mode |
| CN107409224B (zh) * | 2015-01-29 | 2020-09-08 | 株式会社Kt | 用于处理视频信号的方法和设备 |
| US9986248B2 (en) | 2015-01-29 | 2018-05-29 | Qualcomm Incorporated | Palette mode coding for video coding |
| US9729885B2 (en) * | 2015-02-11 | 2017-08-08 | Futurewei Technologies, Inc. | Apparatus and method for compressing color index map |
| US10484713B2 (en) * | 2015-04-02 | 2019-11-19 | Kt Corporation | Method and device for predicting and restoring a video signal using palette entry and palette escape mode |
| CN107810637B (zh) * | 2015-05-27 | 2022-02-15 | 株式会社Kt | 用于处理视频信号的方法和设备 |
| GB2539486B (en) * | 2015-06-18 | 2019-07-31 | Gurulogic Microsystems Oy | Encoder, decoder and method employing palette compression |
| GB2542858A (en) * | 2015-10-02 | 2017-04-05 | Canon Kk | Encoder optimizations for palette encoding of content with subsampled colour component |
| CN106851294B (zh) * | 2017-01-03 | 2018-08-14 | 西安万像电子科技有限公司 | 图像的压缩方法和装置及其文字块的压缩方法和装置 |
| US11178427B2 (en) * | 2019-02-08 | 2021-11-16 | Qualcomm Incorporated | Dynamic sub-partition intra prediction for video coding |
| CN117336514A (zh) | 2019-02-24 | 2024-01-02 | 北京字节跳动网络技术有限公司 | 调色板模式使用指示的独立编解码 |
| US11019332B2 (en) * | 2019-03-29 | 2021-05-25 | Qualcomm Incorporated | Chroma intra prediction in video coding |
| US11109041B2 (en) * | 2019-05-16 | 2021-08-31 | Tencent America LLC | Method and apparatus for video coding |
| CN114175662B (zh) | 2019-07-20 | 2023-11-24 | 北京字节跳动网络技术有限公司 | 调色板模式使用指示的条件相关编解码 |
| CN117221536A (zh) * | 2019-07-23 | 2023-12-12 | 北京字节跳动网络技术有限公司 | 调色板模式编解码的模式确定 |
| CN114208174B (zh) | 2019-07-29 | 2023-11-28 | 北京字节跳动网络技术有限公司 | 预测过程中的调色板模式编解码 |
| KR20220057544A (ko) | 2019-09-12 | 2022-05-09 | 바이트댄스 아이엔씨 | 비디오 코딩에서 팔레트 예측자 사용 |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7162080B2 (en) | 2001-02-23 | 2007-01-09 | Zoran Corporation | Graphic image re-encoding and distribution system and method |
| US8848789B2 (en) | 2006-03-27 | 2014-09-30 | Qualcomm Incorporated | Method and system for coding and decoding information associated with video compression |
| US8619853B2 (en) * | 2007-06-15 | 2013-12-31 | Qualcomm Incorporated | Separable directional transforms |
| US8634456B2 (en) * | 2008-10-03 | 2014-01-21 | Qualcomm Incorporated | Video coding with large macroblocks |
| GB0917417D0 (en) | 2009-10-05 | 2009-11-18 | Mitsubishi Elec R&D Ct Europe | Multimedia signature coding and decoding |
| US8879632B2 (en) | 2010-02-18 | 2014-11-04 | Qualcomm Incorporated | Fixed point implementation for geometric motion partitioning |
| CN102845062B (zh) * | 2010-04-12 | 2015-04-29 | 高通股份有限公司 | 用于几何运动分割的定点实施方案 |
| US8483500B2 (en) * | 2010-09-02 | 2013-07-09 | Sony Corporation | Run length coding with context model for image compression using sparse dictionaries |
| US9654777B2 (en) | 2013-04-05 | 2017-05-16 | Qualcomm Incorporated | Determining palette indices in palette-based video coding |
| US9558567B2 (en) | 2013-07-12 | 2017-01-31 | Qualcomm Incorporated | Palette prediction in palette-based video coding |
| WO2015113510A1 (en) * | 2014-01-29 | 2015-08-06 | Mediatek Inc. | Method and apparatus for adaptive motion vector precision |
| US9826242B2 (en) | 2014-03-14 | 2017-11-21 | Qualcomm Incorporated | Palette-based video coding |
| US20150264348A1 (en) | 2014-03-17 | 2015-09-17 | Qualcomm Incorporated | Dictionary coding of video content |
-
2015
- 2015-03-24 US US14/667,411 patent/US10362336B2/en active Active
- 2015-03-25 HU HUE15715588A patent/HUE047030T2/hu unknown
- 2015-03-25 ES ES15715588T patent/ES2750957T3/es active Active
- 2015-03-25 TW TW104109599A patent/TWI666920B/zh active
- 2015-03-25 MX MX2016012051A patent/MX368488B/es active IP Right Grant
- 2015-03-25 WO PCT/US2015/022468 patent/WO2015148652A1/en not_active Ceased
- 2015-03-25 KR KR1020167027491A patent/KR102344232B1/ko active Active
- 2015-03-25 JP JP2016558209A patent/JP6541682B2/ja active Active
- 2015-03-25 EP EP15715588.8A patent/EP3123719B1/en active Active
- 2015-03-25 CN CN201580013634.3A patent/CN106105207B/zh active Active
- 2015-03-25 BR BR112016022261-0A patent/BR112016022261B1/pt active IP Right Grant
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10225556B2 (en) | 2015-06-08 | 2019-03-05 | Industrial Technology Research Institute | Method and apparatus of encoding or decoding coding units of a video content in a palette coding mode using an adaptive palette predictor |
Also Published As
| Publication number | Publication date |
|---|---|
| CN106105207B (zh) | 2019-12-20 |
| BR112016022261B1 (pt) | 2023-12-12 |
| MX2016012051A (es) | 2017-01-19 |
| KR20160136338A (ko) | 2016-11-29 |
| EP3123719A1 (en) | 2017-02-01 |
| MX368488B (es) | 2019-10-04 |
| BR112016022261A2 (pt) | 2017-08-15 |
| ES2750957T3 (es) | 2020-03-30 |
| TWI666920B (zh) | 2019-07-21 |
| US10362336B2 (en) | 2019-07-23 |
| WO2015148652A1 (en) | 2015-10-01 |
| EP3123719B1 (en) | 2019-07-24 |
| KR102344232B1 (ko) | 2021-12-27 |
| JP6541682B2 (ja) | 2019-07-10 |
| US20150281728A1 (en) | 2015-10-01 |
| HUE047030T2 (hu) | 2020-04-28 |
| CN106105207A (zh) | 2016-11-09 |
| BR112016022261A8 (pt) | 2021-07-13 |
| JP2017513369A (ja) | 2017-05-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI666920B (zh) | 用於視訊寫碼之具有執行長度碼之調色盤預測器信令 | |
| TWI665912B (zh) | 用於視訊寫碼之調色板模式寫碼 | |
| US10097842B2 (en) | Restriction of escape pixel signaled values in palette mode video coding | |
| TWI693822B (zh) | 基於調色板之視訊寫碼中之最大調色板參數 | |
| TWI669944B (zh) | 基於調色板之視訊寫碼中之寫碼行程 | |
| TWI666918B (zh) | 決定在視訊寫碼中之調色板寫碼區塊的調色板大小、調色板單元及過濾 | |
| TWI689197B (zh) | 用於次取樣格式之調色模式 | |
| JP6594903B2 (ja) | パレットベースのビデオコーディングにおけるエスケープサンプルのコーディング | |
| US20160373745A1 (en) | Grouping palette bypass bins for video coding | |
| US10178395B2 (en) | Explicit signaling of escape sample positions in palette coding mode for video coding | |
| TW201720150A (zh) | 用於視訊寫碼之調色板預測初始化及合併 | |
| CN112514386A (zh) | 网格编解码量化系数编解码 | |
| TW201633782A (zh) | 用於調色板寫碼之寫碼逃脫像素 | |
| TW201635798A (zh) | 用於大的寫碼樹單元之內容 | |
| TW201644273A (zh) | 用於視訊寫碼之調色盤索引分組 | |
| CN106537916A (zh) | 调色盘模式编码及解码设计 | |
| TW201639364A (zh) | 在視訊寫碼中調色板區塊大小之限制 | |
| WO2016057504A1 (en) | Non-uniform exponential-golomb codes for palette mode coding | |
| CN114503590A (zh) | 用信号发送针对变换跳过中的残差值的译码方案以进行视频译码 | |
| US9961351B2 (en) | Palette mode coding | |
| HK40068685A (zh) | 用信号发送针对变换跳过中的残差值的译码方案以进行视频译码 |