TWI714548B - 用於視訊寫碼之調色盤索引分組 - Google Patents

用於視訊寫碼之調色盤索引分組 Download PDF

Info

Publication number
TWI714548B
TWI714548B TW105102961A TW105102961A TWI714548B TW I714548 B TWI714548 B TW I714548B TW 105102961 A TW105102961 A TW 105102961A TW 105102961 A TW105102961 A TW 105102961A TW I714548 B TWI714548 B TW I714548B
Authority
TW
Taiwan
Prior art keywords
syntax element
palette
encoded
mode
video
Prior art date
Application number
TW105102961A
Other languages
English (en)
Other versions
TW201644273A (zh
Inventor
馬塔 卡茲維克茲
溥偉
瑞珍 雷克斯曼 喬許
法迪姆 塞瑞金
Original Assignee
美商高通公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商高通公司 filed Critical 美商高通公司
Publication of TW201644273A publication Critical patent/TW201644273A/zh
Application granted granted Critical
Publication of TWI714548B publication Critical patent/TWI714548B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/117Filters, e.g. for pre-processing or post-processing
    • 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/124Quantisation
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/93Run-length coding

Landscapes

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

Abstract

在一實例中,一種解碼視訊資料之方法可包括接收一圖像之一經調色盤模式編碼之視訊資料區塊。該方法可包括接收用於該經調色盤模式編碼之視訊資料區塊之經編碼調色盤模式資訊。該經編碼調色盤模式資訊可包括一第一語法元素之複數個例項及不同於該第一語法元素之複數個語法元素。該方法可包括在使用上下文模式解碼不同於該第一語法元素之該複數個語法元素之前使用旁路模式解碼該第一語法元素之該複數個例項。該方法可包括在使用旁路模式解碼該第一語法元素之該複數個例項之後使用上下文模式解碼不同於該第一語法元素之該複數個語法元素。

Description

用於視訊寫碼之調色盤索引分組
本申請案主張2015年1月30日申請的美國臨時專利申請案第62/110,302號之權益,該申請案之全部內容特此以引用之方式併入本文中。
本發明係關於編碼及解碼內容,且更特定而言係關於根據基於調色盤之寫碼模式編碼及解碼內容。
數位視訊能力可併入至廣泛範圍之器件中,包含數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、平板電腦、電子書閱讀器、數位攝影機、數位記錄器件、數位媒體播放器、視訊遊戲器件、視訊遊戲控制台、蜂巢式或衛星無線電電話、所謂的「智慧型電話」、視訊電話會議器件、視訊串流器件及其類似者。數位視訊器件實施視訊壓縮技術,諸如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4、第10部分進階視訊寫碼(AVC)、ITU-T H.265、高效率視訊寫碼(HEVC)所界定的標準及此等標準之擴展中所描述的彼等技術。視訊器件藉由實施此等視訊壓縮技術可較有效地傳輸、接收、編碼、解碼及/或儲存數位視訊資訊。
視訊壓縮技術執行空間(圖像內)預測及/或時間(圖像間)預測來減少或移除視訊序列中固有的冗餘。對於基於區塊之視訊寫碼,可將視 訊圖塊(亦即,視訊圖框或視訊圖框之一部分)分割成視訊區塊。使用關於同一圖像中之相鄰區塊中之參考樣本的空間預測來編碼圖像之經框內寫碼(I)之圖塊中的視訊區塊。圖像之經框間寫碼(P或B)圖塊中的視訊區塊可使用關於同一圖像中之相鄰區塊中之參考樣本的空間預測或關於其他參考圖像中之參考樣本的時間預測。圖像可被稱作圖框,且參考圖像可被稱作參考圖框。
空間或時間預測產生待寫碼之區塊之預測性區塊。殘餘資料表示待寫碼之原始區塊與預測性區塊之間的像素差。根據指向形成預測性區塊之參考樣本之區塊的運動向量來編碼框間寫碼區塊,且殘餘資料指示經寫碼區塊與預測性區塊之間的差異。根據框內寫碼模式及殘餘資料來編碼框內寫碼區塊。為了進一步壓縮,可將殘餘資料自像素域變換至變換域,從而產生殘餘係數,接著可對殘餘係數進行量化。最初配置成二維陣列之經量化係數可經掃描以便產生係數的一維向量,且可應用熵寫碼以達成甚至更多壓縮。
可使用調色盤模式編碼並解碼諸如影像之內容。大體而言,調色盤模式為涉及使用調色盤表示內容的技術。內容可經編碼以使得由包括對應於調色盤之值的索引映射來表示內容。可解碼索引映射以重建構內容。
本發明之技術係關於基於調色盤之內容寫碼。舉例而言,在基於調色盤之內容寫碼中,內容寫碼器(例如,諸如視訊編碼器或視訊解碼器的內容寫碼器)可形成作為色彩表的「調色盤」以用於表示特定區域(例如,給定區塊)之視訊資料。基於調色盤之內容寫碼可(例如)尤其可用於具有相對較小數目之色彩之視訊資料之寫碼區域。內容寫碼器可針對像素中之一或多者而寫碼使像素與表示像素之色彩之調色盤中的條目相關之調色盤索引(例如,索引值)而非寫碼實際像素 值(或其殘差)。本發明中描述之技術可包括用於信號傳送基於調色盤之寫碼模式、傳輸調色盤、導出調色盤、導出非傳輸語法元素之值、傳輸基於調色盤之寫碼映射及其他語法元素、預測調色盤條目、調色盤索引之寫碼延行、熵寫碼調色盤資訊及各種其他調色盤寫碼技術中之一或多者之各種組合的技術。
在一項實例中,本發明描述解碼視訊資料之方法,其包含自經編碼視訊位元串流接收圖像之經調色盤模式編碼之視訊資料區塊;自經編碼視訊位元串流接收用於經調色盤模式編碼之視訊資料區塊之經編碼調色盤模式資訊,其中經編碼調色盤模式資訊包括第一語法元素之複數個例項及不同於第一語法元素之複數個語法元素;在使用上下文模式解碼不同於第一語法元素之複數個語法元素之前使用旁路模式解碼第一語法元素之複數個例項;在使用旁路模式解碼第一語法元素之複數個例項之後使用上下文模式解碼不同於第一語法元素之複數個語法元素;及使用第一語法元素之經解碼之複數個例項及不同於第一語法元素之經解碼之複數個語法元素來解碼經調色盤模式編碼之視訊資料區塊。
在另一實例中,本發明描述用於解碼視訊資料之器件,該器件包含經組態以儲存視訊資料之記憶體;及與記憶體通信之視訊解碼器,該視訊解碼器經組態以:自經編碼視訊位元串流接收圖像之經調色盤模式編碼之視訊資料區塊;自經編碼視訊位元串流接收用於經調色盤模式編碼之視訊資料區塊之經編碼調色盤模式資訊,其中經編碼調色盤模式資訊包括第一語法元素之複數個例項及不同於第一語法元素之複數個語法元素;在使用上下文模式解碼不同於第一語法元素之複數個語法元素之前使用旁路模式解碼第一語法元素之複數個例項;在使用旁路模式解碼第一語法元素之複數個例項之後使用上下文模式解碼不同於第一語法元素之複數個語法元素;及使用第一語法元素之 經解碼之複數個例項及不同於第一語法元素之經解碼之複數個語法元素來解碼經調色盤模式編碼之視訊資料區塊。
在另一實例中,本發明描述其上儲存有指令之非暫時性電腦可讀儲存媒體,該等指令在執行時使得一或多個處理器自經編碼視訊位元串流接收圖像之經調色盤模式編碼之視訊資料區塊;自經編碼視訊位元串流接收用於經調色盤模式編碼之視訊資料區塊之經編碼調色盤模式資訊,其中經編碼調色盤模式資訊包括第一語法元素之複數個例項及不同於第一語法元素之複數個語法元素;在使用上下文模式解碼不同於第一語法元素之複數個語法元素之前使用旁路模式解碼第一語法元素之複數個例項;在使用旁路模式解碼第一語法元素之複數個例項之後使用上下文模式解碼不同於第一語法元素之複數個語法元素;及使用第一語法元素之經解碼之複數個例項及不同於第一語法元素之經解碼之複數個語法元素來解碼經調色盤模式編碼之視訊資料區塊。
在另一實例中,本發明描述編碼視訊資料之方法,該方法包含判定視訊資料區塊將以調色盤模式經寫碼;使用調色盤模式將視訊資料區塊編碼成經編碼位元串流,其中使用調色盤模式編碼視訊資料區塊包含:產生用於視訊資料區塊之調色盤模式資訊,其中調色盤模式資訊包括第一語法元素之複數個例項及不同於第一語法元素之複數個語法元素;在使用上下文模式將不同於第一語法元素之複數個語法元素編碼成經編碼位元串流之前使用旁路模式將第一語法元素之複數個例項編碼成經編碼位元串流;及在使用旁路模式將第一語法元素之複數個例項編碼成經編碼位元串流之後使用上下文模式將不同於第一語法元素之複數個語法元素編碼成經編碼位元串流。
在另一實例中,本發明描述用於編碼視訊資料之器件,該器件包含經組態以儲存視訊資料之記憶體;及與該記憶體通信之視訊編碼器,該視訊編碼器經組態以:判定儲存於記憶體中之視訊資料之區塊 將以調色盤模式經編碼;使用調色盤模式將視訊資料區塊編碼成經編碼位元串流,其中經組態以使用調色盤模式編碼視訊資料區塊之視訊編碼器包含經組態以進行以下各者之視訊編碼器:產生用於視訊資料區塊之調色盤模式資訊,其中調色盤模式資訊包括第一語法元素之複數個例項及不同於第一語法元素之複數個語法元素;在使用上下文模式將不同於第一語法元素之複數個語法元素編碼成經編碼位元串流之前使用旁路模式將第一語法元素之複數個例項編碼成經編碼位元串流;及在使用旁路模式將第一語法元素之複數個例項編碼成經編碼位元串流之後使用上下文模式將不同於第一語法元素之複數個語法元素編碼成經編碼位元串流。
下文在隨附圖式及描述中闡述本發明之一或多個實例的細節。本發明之其他特徵、目標及優勢將自描述及圖式及申請專利範圍顯而易見。
10‧‧‧視訊寫碼系統
12‧‧‧源器件
14‧‧‧目的地器件
16‧‧‧頻道
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧輸出介面
28‧‧‧輸入介面
30‧‧‧視訊解碼器
32‧‧‧顯示器件
100‧‧‧區塊編碼單元
101‧‧‧視訊資料記憶體
102‧‧‧殘餘產生單元
104‧‧‧變換處理單元
106‧‧‧量化單元
108‧‧‧逆量化單元
110‧‧‧逆變換處理單元
112‧‧‧重建構單元
114‧‧‧濾波器單元
116‧‧‧經解碼圖像緩衝器
118‧‧‧熵編碼單元
120‧‧‧框間預測處理單元
122‧‧‧基於調色盤之編碼單元
126‧‧‧框內預測處理單元
150‧‧‧熵解碼單元
151‧‧‧視訊資料記憶體
152‧‧‧區塊解碼單元
154‧‧‧逆量化單元
156‧‧‧逆變換處理單元
158‧‧‧重建構單元
160‧‧‧濾波器單元
162‧‧‧經解碼圖像緩衝器
164‧‧‧運動補償單元
165‧‧‧基於調色盤之解碼單元
166‧‧‧框內預測處理單元
178‧‧‧圖像
180‧‧‧第一PAL CU
184‧‧‧第一調色盤/索引
188‧‧‧第二PAL CU
192‧‧‧第二調色盤/索引
196‧‧‧區塊
200‧‧‧區塊
202‧‧‧條目
204‧‧‧條目
206‧‧‧條目
208‧‧‧條目
210‧‧‧條目
212‧‧‧條目
216‧‧‧向量
240‧‧‧索引區塊/映射/索引映射
244‧‧‧調色盤
280‧‧‧虛線
800‧‧‧區塊
802‧‧‧區塊
804‧‧‧區塊
806‧‧‧區塊
808‧‧‧區塊
900‧‧‧區塊
902‧‧‧區塊
904‧‧‧區塊
906‧‧‧區塊
908‧‧‧區塊
圖1為繪示可利用本發明中所描述之技術的實例視訊寫碼系統的方塊圖。
圖2為繪示可執行本發明中所描述的技術的實例視訊編碼器的方塊圖。
圖3為繪示可執行本發明中所描述的技術的實例視訊解碼器的方塊圖。
圖4為繪示符合本發明之技術的判定用於基於調色盤之視訊寫碼之調色盤條目之實例的概念圖。
圖5為繪示符合本發明之技術的判定至用於像素之區塊的調色盤之索引之實例的概念圖。
圖6為繪示符合本發明之技術的判定最大上方拷貝延行長度、假定光柵掃描次序之實例的概念圖。
圖7為說明用於調色盤模式之語法元素之寫碼次序之變化的表。
圖8為繪示符合本發明之用於基於調色盤之視訊寫碼之技術的用於解碼視訊資料之實例處理程序的流程圖。
圖9為繪示符合本發明之用於基於調色盤之視訊寫碼之技術的用於編碼視訊資料之實例處理程序的流程圖。
本發明之態樣係針對用於內容寫碼(例如,視訊寫碼)之技術。特定而言,本發明描述用於內容資料(例如,視訊資料)之基於調色盤之寫碼的技術及用於調色盤寫碼資訊之基於上下文之適應性二進位算術寫碼(CABAC)的技術。在本發明之各種實例中,如下文更詳細地描述,本發明之技術可針對以調色盤模式預測或寫碼區塊以改良寫碼效率及/或降低編解碼器複雜度之處理程序。舉例而言,本發明描述關於調色盤索引分組(諸如進階之調色盤索引分組)之技術。
在(例如,如D.Marpe、H.Schwarz及T.Wiegand,IEEE Trans.Cir.& Sys.Video Tech.,「H.264/AVC視訊壓縮標準中之基於上下文之適應性二進位算術寫碼」編號2003年7月7日,卷13中所描述的)CABAC處理程序中,存在兩個模式:(1)旁路模式及(2)上下文模式。在旁路模式中,不存在上下文更新處理程序。因此,旁路模式可藉由採用硬體或ISA位準平行度實現比基於上下文之模式更高的資料輸貫量。旁路模式之此益處隨著可經一起處理之旁路二進位數之數目的增大而變得更大。
在當前調色盤模式寫碼設計中,如R.Joshi及J.Xu的「高效視訊寫碼(HEVC)螢幕內容寫碼:草案2」JCTVC-S1005中所描述的,在螢幕內容寫碼中,palette_index_idcpalette_escape_val之語法元素經CABAC旁路模式寫碼且與經CABAC上下文模式寫碼之其他語法元素(諸如,palette_run_msb_id_plus1)交錯。本發明描述將經旁路模式 寫碼之語法元素分組在一起的技術。如本文所使用,「經旁路模式寫碼」及「經上下文模式寫碼」分別可與「經旁路寫碼」及「經上下文寫碼」互換。
如本文所使用,術語「內容」之例項可改變成術語「視訊」,且術語「視訊」之例項可改變成術語「內容」。無論術語「內容」或「視訊」是被用作形容詞、名詞抑或詞類之其他部分,情況皆如此。舉例而言,對「內容寫碼器」之參考亦包括對「視訊寫碼器」之參考,且對「視訊寫碼器」之參考亦包括對「內容寫碼器」之參考。類似地,對「內容」之參考亦包括對「視訊」之參考,且對「視訊」之參考亦包括對「內容」之參考。
如本文所使用,「內容」指代任何類型之內容。舉例而言,「內容」可指代視訊、螢幕內容、影像、任何圖形內容、任何可顯示內容或與其相對應之任何資料(例如,視訊資料、螢幕內容資料、影像資料、圖形內容資料、可顯示內容資料及其類似者)。
如本文所使用,術語「視訊」可指代螢幕內容、可移動內容、可以序列呈現的複數個影像或與其相對應之任何資料(例如,螢幕內容資料、可移動內容資料、視訊資料、影像資料及其類似者)。
如本文所使用,術語「影像」可指代單個影像、一或多個影像、對應於視訊之複數個影像中之一或多個影像、不對應於視訊之複數個影像中之一或多個影像、對應於視訊之複數個影像(例如,對應於視訊之全部影像或對應於視訊之不到全部影像)、單個影像之子部分、單個影像之複數個子部分、對應於複數個影像之複數個子部分、一或多個圖形基元、影像資料、圖形資料及其類似者。
在傳統視訊寫碼中,假定影像為連續色調且在空間上平滑。基於此等假定,已開發諸如基於區塊之變換、濾波及其他寫碼工具的各種工具,且此等工具已針對天然內容視訊展示出良好效能。然而,在 類似遠端桌上型電腦、協同工作及無線顯示器之應用中,電腦產生之螢幕內容可為待壓縮之主要內容。此類型之螢幕內容往往會具有離散色調、陡線及高對比度物件邊界。可不再應用連續色調及平滑度之假定,且因此傳統視訊寫碼技術可在壓縮內容(例如,螢幕內容)方面效率低下。
在基於調色盤之視訊寫碼之一項實例中,視訊編碼器可藉由判定用於區塊之調色盤(例如,明確地寫碼調色盤、預測調色盤或其組合),定位調色盤中之條目以表示一或多個像素之值,及使用指示用於表示區塊之像素值之調色盤中的條目之索引值來編碼調色盤及區塊兩者而編碼視訊資料區塊。在一些實例中,視訊編碼器可在經編碼位元串流中信號傳遞調色盤及/或索引值。繼而,視訊解碼器可自經編碼位元串流獲得用於區塊之調色盤,以及用於該區塊之個別像素的索引值。視訊解碼器可使像素之索引值與調色盤之條目相關以重建構區塊之各種像素值。
舉例而言,可假定視訊資料之特定區域具有相對較小數目之色彩。視訊寫碼器(例如,視訊編碼器或視訊解碼器)可寫碼(例如,編碼或解碼)所謂的「調色盤」以表示特定區域之視訊資料。調色盤可表達為表示特定區域(例如,給定區塊)之視訊資料之色彩或像素值之索引(例如,表)。視訊寫碼器可寫碼索引,該索引使一或多個像素值與調色盤中之適當值相關。每一像素可與調色盤中表示像素之色彩的條目相關聯。舉例而言,調色盤可包括給定區塊中之最主要像素值。在一些情況下,最主要像素值可包括在該區塊內最頻繁地出現之一或多個像素值。另外,在一些情況下,視訊寫碼器可應用臨限值以判定是否應將像素值包括作為該區塊中之最主要像素值中之一者。根據基於調色盤之寫碼的各種態樣,視訊寫碼器可對指示當前區塊的像素值中之一或多者的索引值進行寫碼,而不是針對視訊資料之當前區塊對實 際像素值或其殘餘部分進行寫碼。在基於調色盤之寫碼的情況下,索引值指示調色盤中被用於表示當前區塊之個別像素值之各別條目。以上描述意欲提供基於調色盤之視訊寫碼之概述。
基於調色盤之寫碼可特別適合於螢幕產生之內容寫碼或其中一或多個傳統寫碼工具效率低下之其他內容。用於視訊資料之基於調色盤寫碼的技術可與一或多個其他寫碼技術(諸如用於框間或框內預測性寫碼之技術)一起使用。舉例而言,如下文更詳細地描述,編碼器或解碼器或組合式編碼器解碼器(編解碼器)可經組態以執行框間及框內預測性寫碼,以及基於調色盤之寫碼。
在一些實例中,基於調色盤之寫碼技術可經組態以與一或多個視訊寫碼標準一起使用。舉例而言,高效率視訊寫碼(HEVC)為由ITU-T視訊寫碼專家組(VCEG)及ISO/IEC運動圖像專家組(MPEG)之視訊寫碼聯合合作小組(JCT-VC)開發的新的視訊寫碼標準。定案之HEVC標準文件於2013年4月由國際電信聯合會(ITU)之電信標準化部門公開為「ITU-T H.265,SERIES H:AUDIOVISUAL AND MULTIMEDIA SYSTEMS Infrastructure of audiovisual services-Coding of moving video-High efficiency video coding」。
為了提供螢幕產生內容之更有效寫碼,JCT-VC將開發延伸至HEVC標準(被稱作HEVC螢幕內容寫碼(SCC)標準)。被稱作「HEVC SCC草案2」或「WD2」之HEVC SCC標準的新工作草案描述於R.Joshi及J.Xu之文獻JCTVC-S1005「HEVC螢幕內容寫碼草案文字2」(ITU-T SG 16 WP 3及ISO/IEC JTC 1/SC 29/WG 11之關於視訊寫碼之聯合合作小組(JCT-VC),第19次會議:法國,Strasbourg,2014年10月17-24日)。
就HEVC框架而言,作為實例,基於調色盤之寫碼技術可經組態以用作寫碼單元(CU)模式。在其他實例中,基於調色盤之寫碼技術可 經組態以用作HEVC之框架中的預測單元(PU)模式。因此,在CU模式之上下文中描述的所有以下所揭示之處理程序可另外或替代地適用於PU。然而,此等基於HEVC之實例不應被視為約束或限制本文中所描述的基於調色盤之寫碼技術,因而,此等技術可經應用以獨立地或作為其他現有或尚待開發之系統/標準之部分工作。在此等情況下,用於調色盤寫碼之單元可為方形區塊、矩形區塊或甚至非矩形形狀之區域。
在一些實例中,調色盤可由一或多個CU、PU或資料之任何區域(例如,資料之任何區塊)導出。舉例而言,調色盤可包含(及可由以下者組成):當前CU中之最主要像素值,其中針對此特定實例,CU為資料之區域。將調色盤之大小及元件首先自視訊編碼器傳輸至視訊解碼器。可使用相鄰CU(例如,上方及/或左方之經寫碼CU)中之調色盤之大小及/或元件來直接寫碼或預測性地寫碼調色盤之大小及/或元件。此後,根據特定掃描次序基於調色盤來編碼CU中之像素值。對於CU中之每一像素位置,旗標(例如,palette_flag或escape_flag)可首先被傳輸以指示像素值是否包括於調色盤中。針對映射至調色盤中之條目的彼等像素值,針對CU中之給定像素位置信號傳遞與彼條目相關聯之調色盤索引。對於調色盤中並不存在之彼等像素值,特殊索引可指派給像素且實際像素值(可能以經量化形式)可經傳輸以用於CU中之給定像素位置,而非發送旗標(例如,palette_flag或escape_flag)。此等像素被稱作「逸出像素」。可使用任何現有熵寫碼方法(諸如,固定長度寫碼,一元寫碼等)來寫碼逸出像素。在一些實例中,本文所描述之一或多個技術可利用諸如palette_flag或escape_flag之旗標。在其他實例中,本文所描述之一或多個技術可不利用諸如palette_flag或escape_flag之旗標。
視訊資料區塊中之樣本可使用水平光柵掃描次序或其他掃描次 序進行處理(例如,掃描)。舉例而言,視訊編碼器可藉由使用水平光柵掃描次序掃描調色盤索引而將調色盤索引之二維區塊轉換成一維陣列。同樣,視訊解碼器可使用水平光柵掃描次序重建構調色盤索引之區塊。因此,本發明可將先前樣本稱作按掃描次序在區塊中當前經寫碼之樣本之前的樣本。應瞭解,除水平光柵掃描以外之掃描(諸如,垂直光柵掃描次序)亦可為可適用的。以上實例以及本發明中闡述之其他實例意欲提供對基於調色盤之視訊寫碼之概述。
圖1為繪示可利用本發明之技術之實例視訊寫碼系統10的方塊圖。如本文所使用,術語「視訊寫碼器」大體上係指視訊編碼器及視訊解碼器兩者。在本發明中,術語「視訊寫碼」或「寫碼」一般可指視訊編碼或視訊解碼。視訊寫碼系統10之視訊編碼器20及視訊解碼器30表示可經組態以執行根據本發明中描述之各種實例的用於基於調色盤之視訊寫碼及熵寫碼(例如,CABAC)之器件之實例。舉例而言,視訊編碼器20及視訊解碼器30可經組態以使用基於調色盤之寫碼或非基於調色盤之寫碼選擇地寫碼視訊資料之各種區塊,諸如HEVC寫碼中之CU或PU。非基於調色盤之寫碼模式可指代各種框間預測性時間寫碼模式或框內預測性空間寫碼模式,諸如由HEVC標準指定之各種寫碼模式。
如圖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、電纜數據機等),或兩者的組合。經編碼視訊資料自檔案伺服器之傳輸可為串流傳輸、下載傳輸或兩者之組合。
源器件12及目的地器件14可經組態以符合本發明執行基於調色盤之寫碼及熵寫碼(例如,CABAC)。然而,本發明用於基於調色盤之寫碼或CABAC之技術不限於無線應用或設定。該等技術可適用於(例如)經由網際網路支援多種多媒體應用(諸如空中電視廣播、有線電視傳輸、衛星電視傳輸、串流視訊傳輸)之視訊寫碼、用於儲存於資料儲存媒體上之視訊資料之編碼、儲存於資料儲存媒體上之視訊資料之解碼,或其他應用。在一些實例中,視訊寫碼系統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整合或在目的地器件14外部。一般而言,顯示器件32顯示經解碼視訊資料。顯示器件32可包含各種顯示器件,諸如液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器,或另一類型之顯示器件。
本發明通常可指代視訊編碼器20將某些資訊「信號傳遞」或「傳輸」至另一器件,諸如,視訊解碼器30。術語「信號傳遞」或「傳輸」可大體上指代用於解碼經壓縮視訊資料之語法元素及/或其他資料的通信。此通信可即時地或近即時地發生。替代地,可歷時一時間跨度而發生此通信,諸如此通信可在編碼時間處將語法元素以經編碼位元串流儲存至電腦可讀儲存媒體時發生,該等語法元素隨後可由解碼器件在儲存於此媒體之後的任何時間進行擷取。因此,雖然視訊解碼器30可被稱作「接收」某些資訊,但資訊之接收未必即時或接近即時發生且可在儲存之後在某一時間自媒體擷取。
視訊編碼器20及視訊解碼器30各自可實施為多種合適電路中之任一者,諸如一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、硬體或其任何組合。若部分地以軟體來實施技術,則器件可將用於軟體之指令儲存於合適的非暫時性電腦可讀儲存媒體中,且可使用一或多個處理 器在硬體中執行該等指令以執行本發明之技術。可將上述內容(包括硬體、軟體、硬體與軟體之組合等)中之任一者視為一或多個處理器。視訊編碼器20及視訊解碼器30中之每一者可包括於一或多個編碼器或解碼器中,編碼器或解碼器中之任一者可在各別器件中整合為組合式編碼器/解碼器(編解碼器(CODEC))的部分。
在一些實例中,視訊編碼器20及視訊解碼器30根據諸如上文所提及之HEVC標準且在HEVC標準中描述之視訊壓縮標準操作。除了基本HEVC標準之外,正持續努力產生用於HEVC之可擴充視訊寫碼、多視圖視訊寫碼及3D寫碼擴展。另外,可提供基於調色盤之寫碼模式(例如,如本發明中所描述)以用於擴展HEVC標準。在一些實例中,本發明中針對基於調色盤之寫碼而描述的技術可適用於經組態以根據其他視訊寫碼標準操作之編碼器及解碼器。因此,出於實例之目的而描述用於HEVC編解碼器中之寫碼單元(CU)或預測單元(PU)之寫碼的基於調色盤之寫碼模式的應用。
在HEVC及其他視訊寫碼標準中,視訊序列通常包含一系列圖像。圖像亦可被稱作「圖框」。圖像可包含三個樣本陣列,標示為SL、SCb及SCr。SL為明度樣本之二維陣列(亦即,區塊)。SCb為Cb彩度樣本之二維陣列。SCr為Cr彩度樣本之二維陣列。彩度樣本在本文中亦可被稱作「色度」樣本。在其他情況下,圖像可為單色的,且可僅包含明度樣本陣列。
為產生圖像之經編碼表示,視訊編碼器20可產生寫碼樹型單元(CTU)之集合。CTU中之每一者可為明度樣本之寫碼樹型區塊、色度樣本之兩個對應寫碼樹型區塊,及用以對該寫碼樹型區塊之樣本進行寫碼的語法結構。寫碼樹型區塊可為樣本之N×N區塊。CTU亦可被稱作「樹型區塊」或「最大寫碼單元」(LCU)。HEVC之CTU可廣泛地類似於諸如H.264/AVC的其他標準之巨集區塊。然而,CTU未必限於 特定大小且可包括一或多個寫碼單元(CU)。圖塊可包括在光柵掃描中連續排序之整數數目個CTU。經寫碼圖塊可包含圖塊標頭及圖塊資料。圖塊之圖塊標頭可為包括提供關於圖塊之資訊之語法元素的語法結構。圖塊資料可包括圖塊之經寫碼CTU。
本發明可使用術語「視訊單元」或「視訊區塊」或「區塊」以指代一或多個樣本區塊及用於對樣本之該一或多個區塊之樣本進行寫碼的語法結構。視訊單元或區塊之實例類型可包括CTU、CU、PU、變換單元(TU)、巨集區塊、巨集區塊分區等等。在一些情形中,PU之論述可與巨集區塊或巨集區塊分區之論述互換。
為產生經寫碼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之PU之預測性區塊中的樣本與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之係數區塊。係數區塊可為變換係數之二維陣列。變換係數可為純量。舉例而言,視訊編碼器20可將一或多個變換應用於TU之明度變換區塊以產生TU之明度係數區塊。視訊編碼器20可將一或多個變換應用於TU之Cb變換區塊以產生TU之Cb係數區塊。視訊編碼器20可將一或多個變換應用至TU之Cr變換區塊以產生TU之Cr係數區塊。
在產生係數區塊(例如,明度係數區塊、Cb係數區塊或Cr係數區塊)之後,視訊編碼器20可量化該係數區塊。量化通常指代對變換係數進行量化以可能減少用以表示變換係數的資料之量,從而提供進一步壓縮之處理程序。在視訊編碼器20量化係數區塊之後,視訊編碼器20可熵編碼指示經量化之變換係數之語法元素。舉例而言,視訊編碼器20可對指示經量化變換係數之語法元素執行上下文適應性二進位算術寫碼(CABAC)。
就CABAC而言,作為實例,視訊編碼器20及視訊解碼器30可選擇機率模型(亦被稱作上下文模型)以基於上下文對與視訊資料之區塊相關聯之符號進行寫碼。舉例而言,上下文模型(Ctx)可為應用於選擇複數個不同上下文中之一者的索引或差量,該等上下文中之每一者可對應於特定機率模型。因此,不同機率模型通常針對每一上下文來定義。在編碼或解碼二進位之後,機率模型基於二進位之值經進一步更新以反映對二進位的最新機率評估。舉例而言,機率模型可作為有限狀態機中之狀態得以維持。每一特定狀態可對應於特定可能性值。對應於機率模型之更新的下一狀態可取決於當前二進位(例如,當前經寫碼之二進位)之值。因此,機率模型之選擇可受先前經寫碼二進位之值的影響,因為該等值至少部分指示二進位具有給定值之機率。上文所描述之上下文寫碼程序可通常被稱作上下文適應性寫碼模式。
因此,視訊編碼器20可使用機率模型對目標符號進行編碼。同樣地,視訊解碼器30可使用機率模型剖析目標符號。在一些情況下,視訊編碼器20可使用上下文適應性寫碼與非上下文適應性寫碼之組合來寫碼語法元素。舉例而言,視訊編碼器20可藉由選擇對上下文操作以對一些二進位進行寫碼的機率模型或「上下文模型」來二進位進行上下文寫碼。對比而言,對於其他二進位,視訊編碼器20可藉由當寫碼二進位時繞過或省略常規算術寫碼程序而對二進位進行旁路寫碼。在此等實例中,視訊編碼器20可使用固定機率模型來對二進位進行旁路寫碼。亦即,經旁路寫碼之二進位不包括上下文或機率更新。
視訊編碼器20可輸出包含經熵編碼之語法元素的位元串流。位元串流亦可包括未經熵編碼之語法元素。該位元串流可包括形成經寫碼圖像及相關聯資料之表示的位元之序列。位元串流可包含網路抽象層(NAL)單元之序列。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單元。
視訊解碼器30可接收由視訊編碼器20產生之位元串流。此外,視訊解碼器30可剖析位元串流以自位元串流解碼語法元素。視訊解碼器30可至少部分基於自位元串流解碼之語法元素而重建構視訊資料之 圖像。重建構視訊資料之處理程序可大體上與由視訊編碼器20執行之處理程序互逆。舉例而言,視訊解碼器30可使用PU之MV來判定當前CU之經框間預測PU的預測性區塊。同樣地,視訊解碼器30可產生當前CU之PU的經框內預測區塊。另外,視訊解碼器30可對與當前CU之TU相關聯的變換係數區塊進行逆量化。視訊解碼器30可對變換係數區塊執行逆變換,以重建構與當前CU之TU相關聯的變換區塊。視訊解碼器30可藉由將當前CU之PU的預測性區塊之樣本添加至自當前CU之TU之變換區塊的逆量化及逆變換所獲得的對應殘餘值來重建構當前CU之寫碼區塊。藉由重建構圖像之每一CU的寫碼區塊,視訊解碼器30可重建構圖像。
在一些實例中,視訊編碼器20及視訊解碼器30可經組態以執行基於調色盤之寫碼。舉例而言,在基於調色盤之寫碼中,視訊編碼器20及視訊解碼器30可將所謂的調色盤寫碼為表示特定區域(例如,給定區塊)之視訊資料的色彩或像素值的表,而非執行上文所描述之框內預測或框間預測寫碼技術。以此方式,視訊寫碼器可對當前區塊之像素值中之一或多者的索引值進行寫碼,而非對視訊資料之當前區塊的實際像素值或其殘差進行寫碼,其中該等索引值指示調色盤中用於表示當前區塊之像素值的條目。
舉例而言,視訊編碼器20可藉由判定用於區塊之調色盤、定位調色盤中之條目以表示每一像素之值及對調色盤及像素的使像素值與調色盤相關的索引值進行編碼而對視訊資料之區塊進行編碼。視訊解碼器30可自經編碼位元串流獲得用於區塊之調色盤,以及區塊之像素的索引值。視訊解碼器30可將個別像素之索引值與調色盤之條目匹配以重建構區塊之像素值。在與個別像素相關聯之索引值不匹配區塊之對應調色盤之任何索引值的情況下,出於基於調色盤之寫碼的目的,視訊解碼器30可將此像素識別為逸出像素。
如下文更詳細地描述,基於調色盤之寫碼之基本構想為:對於待寫碼之視訊資料之給定區塊,視訊編碼器20可導出包括當前區塊中之最主要像素值的調色盤。舉例而言,調色盤可指經判定或假定為當前CU之主要及/或代表之數個像素值。視訊編碼器20可首先將調色盤的大小和元件傳輸至視訊解碼器30。另外,視訊編碼器20可根據特定掃描次序對給定區塊中之像素值進行編碼。對於包括於給定區塊中之每一像素,視訊編碼器20可信號傳遞將像素值映射至調色盤中之對應條目的索引值。若像素值並不包括於調色盤中(亦即,不存在指定經調色盤寫碼之區塊之特定像素值的調色盤條目),則該像素被定義為「逸出像素」。根據基於調色盤之寫碼,視訊編碼器20可編碼且信號傳遞經保留以用於逸出像素之索引值。在一些實例中,視訊編碼器20亦可編碼及信號傳遞包括於給定區塊中之逸出像素之像素值(或其經量化版本)。舉例而言,視訊解碼器30可經組態以基於變形度量(例如,MSE,SAD及其類似者)判定像素值是否匹配或以其他方式接近調色盤條目。
一旦接收到由視訊編碼器20信號傳遞的經編碼視訊位元串流,視訊解碼器30可首先基於自視訊編碼器20所接收之資訊判定調色盤。視訊解碼器30可接著將與給定塊中之像素位置相關聯的所接收到的索引值映射到調色盤的條目,以重建構給定區塊之像素值。在一些情況下,視訊解碼器30可判定經調色盤寫碼區塊之像素為逸出像素,諸如,藉由判定像素藉由經保留以用於逸出像素之索引值而經調色盤寫碼。在視訊解碼器30識別經調色盤寫碼區塊中之逸出像素的情況下,視訊解碼器30可接收包括於給定區塊中之逸出像素的像素值(或其經量化版本)。視訊解碼器30可藉由將個別像素值映射至對應調色盤條目且藉由使用像素值(或其經量化版本)而重建構經調色盤寫碼區塊,以重建構包括於經調色盤寫碼區塊中之任何逸出像素。
如上文所陳述,在實例調色盤寫碼模式中,調色盤可包括由索引編號之條目。每一條目可表示色彩分量值或強度(例如,在諸如YCbCr、RGB、YUV、CMYK或其他格式之色彩間隙中),該等值或強度可用作區塊之預測因子或經最終重建構之區塊樣本。如標準提交文件JCTVC-Q0094(Wei Pu等人,「AHG10:Suggested Software for Palette Coding based on RExt6.0」JCTVC-Q0094,西班牙巴倫西亞市,2014年3月27日至2014年4月4日)中所描述,調色盤可包括自預測因子調色盤所拷貝之條目。預測因子調色盤可包括來自先前使用調色盤模式寫碼之區塊或來自其他經重建構之樣本的調色盤條目。對於預測因子調色盤中之每一條目,發送二進位旗標以指示條目是否被拷貝到當前調色盤(由旗標=1指示)。此被稱作二進位調色盤預測向量。另外,當前調色盤可包含經明確信號傳遞之新條目(例如,由經明確信號傳遞之新條目組成)。亦可信號傳遞新條目之數目。
作為另一實例,在調色盤模式中,調色盤可包括由表示色彩分量值之索引編號之條目,該等色彩分量值可被用作區塊樣本之預測因子或經最終重建構之區塊樣本。調色盤中之每一條目可含有(例如)一個明度分量(例如,明度值)、兩個色度分量(例如,兩個色度值)或三個色彩分量(例如,RGB、YUV等)。先前經解碼之調色盤條目可儲存於清單中。舉例而言,此清單可用於預測在當前調色盤模式CU中之調色盤條目。二進位預測向量可以位元串流經信號傳遞以指示清單中之哪些條目再用於當前調色盤中。在一些實例中,延行長度寫碼可用於壓縮二進位調色盤預測因子。舉例而言,可使用0階指數哥倫布碼(Exp-Golomb code)來對延行長度值進行寫碼。
在本發明中,將假定每一調色盤條目指定樣本之所有色彩分量之值。然而,本發明之概念適用於使用每一色彩分量之獨立調色盤及/或獨立調色盤條目。又,假定使用水平光柵掃描次序處理區塊中之 樣本。然而,諸如垂直光柵掃描次序之其他掃描亦可適用。如上文所提及,調色盤可含有經預測調色盤條目((例如)自用於對前述區塊進行寫碼之調色盤預測的)及對當前區塊具專一性且明確地經信號傳遞之新條目。編碼器及解碼器可知曉經預測及新調色盤條目之數目且其總和可指示區塊中之總調色盤大小。
如上文所引用之JCTVC-Q0094之實例中所提出的,使用調色盤寫碼之區塊中之每一樣本可屬於三個模式中之一者,如下文所闡述:
●逸出模式。在此模式中,樣本值並未作為調色盤條目包括至調色盤中,且對於所有色彩分量,明確地信號傳遞經量化之樣本值。該情形類似於新調色盤條目之信號傳遞,儘管對於新調色盤條目,並不將色彩分量值量化。
●CopyAbove模式(亦被稱作CopyFromTop模式)。在此模式中,自位於樣本之區塊中之當前樣本正上方之樣本拷貝當前樣本之調色盤條目索引。在其他實例中,對於上方拷貝模式,視訊資料區塊可經轉置以使得區塊上方之樣本實際上為區塊左邊之樣本。
●值模式(亦被稱作索引模式)。在此模式中,明確地信號傳遞調色盤條目索引之值。
如本文所描述,調色盤條目索引可被稱作調色盤索引或簡稱為索引。此等術語可互換地使用以描述本發明之技術。另外,如下文更詳細地描述,調色盤索引可具有一或多個相關聯之色彩或強度值。舉例而言,調色盤索引可具有與像素之單一色彩或強度分量(例如,RGB資料之紅色分量、YUV資料之Y分量,或其類似者)相關聯的單一相關聯之色彩或強度值。在另一實例中,調色盤索引可具有多個相關聯之色彩或強度值。在一些情況下,可應用基於調色盤之視訊寫碼來對單色視訊進行寫碼。因此,「色彩值」大體上可指用以產生像素值之任何色彩或非彩色分量。
延行值可指示使用相同的調色盤寫碼模式寫碼之調色盤索引之延行。舉例而言,關於值模式,視訊寫碼器(例如,視訊編碼器20或視訊解碼器30)可對索引值及指示掃描次序中具有相同索引值且使用調色盤索引進行寫碼之多個連續後續樣本的延行值進行寫碼。關於CopyAbove模式,視訊寫碼器可對當前樣本值之索引值與上方相鄰樣本之索引值相同(例如,定位於該樣本上方之樣本當前在區塊中經寫碼)之指示及指示掃描次序中亦自上方相鄰樣本拷貝索引值之多個連續後續樣本的延行值進行寫碼。因此,在上述實例中,調色盤索引值之延行係指具有相同值之調色盤值的延行或自上方相鄰樣本拷貝之索引值的延行。
因此,延行可針對給定模式指定屬於相同模式的後續樣本之數目。在一些情況下,信號傳遞索引值及延行值可與延行長度寫碼相似。在出於說明之目的的實例中,對應於視訊資料區塊之索引區塊之連續調色盤索引值的字串可為0,2,2,2,2,5。每一索引值對應於視訊資料區塊中之樣本。在此實例中,視訊寫碼器可使用值模式對第二樣本(例如,「2」之第一調色盤索引值)進行寫碼。在對2之索引值進行寫碼之後,視訊寫碼器可對3之延行進行寫碼,該延行指示三個後續樣本亦具有相同的2之調色盤索引值。以類似方式,在使用CopyAbove模式對索引進行寫碼之後對四個調色盤索引之延行進行寫碼可指示:自當前經寫碼之樣本位置上方之列中的對應調色盤索引值拷貝總共五個調色盤索引。
使用調色盤,視訊編碼器20及/或視訊解碼器30可經組態以將樣本之區塊(例如,視訊資料之區塊)寫碼成索引區塊,其中索引區塊為包括映射至一或多個調色盤條目之索引值及在一些實例中之一或多個逸出像素值的區塊。視訊編碼器20可經組態以對索引區塊進行熵編碼以壓縮索引區塊。類似地,視訊解碼器30可經組態以對經編碼索引區 塊進行熵解碼以產生索引區塊,視訊解碼器30可自該索引區塊產生樣本之區塊(例如,由編碼器20編碼之視訊資料區塊)。舉例而言,基於延行長度之熵寫碼可用於壓縮與解壓縮索引區塊。在一些實例中,視訊編碼器20及視訊解碼器30可經組態以分別使用CABAC來對索引區塊進行熵編碼及解碼。
為將CABAC寫碼應用於資訊(例如,語法元素、諸如索引區塊之索引值之索引區塊或其他資訊),視訊寫碼器(例如,視訊編碼器20及視訊解碼器30)可對資訊執行二進位化。二進位化指代將資訊轉換成一系列一個或多個位元的處理程序。一或多個位元之每個系列可被稱為「二進位」。二進位化為無損處理程序且可包括以下寫碼技術中之一個或組合:固定長度寫碼、一元寫碼、截短之一元寫碼、截短之萊斯(Rice)寫碼、哥倫布寫碼、指數哥倫布寫碼、哥倫布-萊斯寫碼、哥倫布寫碼之任一形式、萊斯寫碼之任一形式及熵寫碼之任一形式。舉例而言,二進位化可包括使用8位固定長度技術將整數值5表示成00000101,或者使用一元寫碼技術將整數值5表示成11110。
在二進位化之後,視訊寫碼器可識別寫碼上下文。寫碼上下文可識別寫碼具有特定值之二進位數的機率。舉例而言,寫碼上下文可指示對0值二進位進行寫碼的0.7機率,以及對1值二進位進行寫碼的0.3機率。在識別寫碼上下文之後,視訊寫碼器可基於上下文算術地寫碼二進位,此已知為上下文模式寫碼。使用CABAC上下文模式寫碼而寫碼之二進位可被稱作「上下文二進位」。
此外,視訊寫碼器(例如,視訊編碼器20及視訊解碼器30)可使用旁路CABAC寫碼(例如,旁路模式寫碼)來寫碼一些二進位,而非對所有二進位執行上下文模式寫碼。旁路模式寫碼指代不使用適應性上下文(例如,寫碼上下文)而算術地寫碼二進位的處理程序。亦即,旁路寫碼引擎不選擇上下文,並且可假設兩個符號(0和1)的機率皆為0.5。 雖然旁路模式寫碼的頻寬效率可不如上下文模式寫碼,但是在對二進位執行旁路模式寫碼而非對二進位執行上下文模式寫碼時可能在計算方面成本較低。此外,執行旁路模式寫碼可允許較高的並行化度及輸貫量。使用旁路模式寫碼而寫碼之二進位可被稱作「旁路二進位」。
視訊編碼器20及視訊解碼器30可經組態具有CABAC寫碼器(例如,分別為CABAC編碼器及CABAC解碼器)。CABAC寫碼器可包括用以執行CABAC上下文模式寫碼之上下文模式寫碼引擎及用以執行旁路模式寫碼之旁路模式寫碼引擎。若二進位經上下文模式寫碼,則上下文模式寫碼引擎用於對此二進位進行寫碼。上下文模式寫碼引擎可需要兩個以上處理週期來對單個二進位進行寫碼。然而,由於恰當的管線設計,上下文模式寫碼引擎可僅需要n+M週期以對n個二進位進行編碼,其中M為起始管線之額外負荷。M通常大於0。
在CABAC寫碼處理程序開始時(亦即,自旁路模式至上下文模式之每次轉換且反之亦然),引入管線額外負荷。若二進位經旁路模式寫碼,則旁路模式寫碼引擎用於對此二進位進行寫碼。旁路模式寫碼引擎可預計僅需要一個週期來對n位元資訊進行,其中n可大於一。因此,若旁路二進位及上下文二進位之集合內之所有旁路二進位經一起寫碼且該集合內之所有上下文二進位經一起寫碼,則對旁路二進位及上下文二進位之集合進行寫碼之週期之總數可減少。特定而言,在轉變至上下文模式寫碼之前或之後將旁路二進位一起寫碼可節省重新啟動上下文模式寫碼引擎所需要之額外負荷。舉例而言,當分別使用調色盤模式對視訊資料區塊進行編碼或解碼時,視訊編碼器20及視訊解碼器30可經組態以在旁路模式至上下文模式之間切換。在另一實例中,視訊編碼器20及視訊解碼器30可經組態以減少當使用調色盤模式對視訊資料區塊進行編碼或解碼時編碼或解碼處理程序在旁路模式至上下文模式之間切換之次數。
本發明中描述之技術可包括用於信號傳遞基於調色盤之視訊寫碼模式,傳輸調色盤,導出調色盤,信號傳遞掃描次序,導出掃描次序,及傳輸基於調色盤之視訊寫碼映射及其他語法元素中之一或多者之各種組合的技術。舉例而言,本發明之技術可針對熵寫碼調色盤資訊。在一些實例中,本發明之技術可尤其用於提高寫碼效率並降低與基於調色盤之視訊寫碼相關聯之寫碼低效率。因此,如下文更詳細描述,在一些情況下,當使用調色盤模式寫碼視訊資料時,本發明之技術可改良效率及改良位元速率。
如上文所描述,在螢幕內容寫碼中之當前調色盤模式設計中,palette_index_idcpalette_escape_val之語法元素經CABAC旁路寫碼,且與經CABAC上下文寫碼之其他語法元素(例如,palette_run_msb_id_plus1)交錯。然而,將經旁路寫碼之資訊(例如,語法元素)分組在一起可為有益的,此可改良寫碼效率及/或降低編解碼器複雜度。
例如如JCTVC-S1005中所定義,palette_index_idc之語法元素可為對表示為currentPaletteEntries之陣列之索引的指示。palette_index_idc的值可在0到(adjustedIndexMax-1)(包含性)的範圍內。例如如JCTVC-S1005中所定義,palette_escape_val之語法元素可指定分量之經量化逸出經寫碼樣本值。例如如JCTVC-S1005中所定義,palette_run_msb_id_plus1減1可指定paletteRun之二進位表示中之最高有效位元的索引。例如如JCTVC-S1005中所定義,當palette_run_type_flag等於COPY_ABOVE_MODE時,可變paletteRun可指定具有與上述列中位置相同之調色盤索引之連續位置減1之數目,或當palette_run_type_flag等於COPY_INDEX_MODE時指定具有相同調色盤索引之連續位置減1之數目。關於palette_index_idcpalette_escape_valpalette_run_msb_id_plus1、currentPaletteEntries、 adjustedIndexMax及paletteRun之額外細節可見於JCTVC-S1005中。
在一些實例中,本發明描述在調色盤索引區塊寫碼部分之前面分組所有語法元素palette_index_idc以改良CABAC輸貫量之方法。舉例而言,視訊編碼器20可經組態以在調色盤索引區塊寫碼部分前面編碼所有語法元素palette_index_idc。舉例而言,視訊編碼器20可經組態以在對待經上下文模式編碼之語法元素進行編碼之前對所有語法元素palette_index_idc進行編碼。類似地,視訊解碼器30可經組態以在調色盤索引區塊寫碼部分前面對所有語法元素palette_index_idc進行解碼。舉例而言,視訊解碼器30可經組態以在對經上下文模式編碼之語法元素進行解碼之前對所有語法元素palette_index_idc進行解碼。
作為另一實例,視訊編碼器20可經組態以在調色盤索引區塊寫碼部分前面對所有語法元素palette_index_idc進行旁路模式編碼,以使得在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行編碼之前對所有語法元素palette_index_idc進行編碼。類似地,視訊解碼器30可經組態以在區塊之調色盤索引區塊寫碼部分前面對區塊之所有語法元素palette_index_idc進行解碼,以使得在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行解碼之前對所有語法元素palette_index_idc進行解碼。
關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素
作為另一實例,實例視訊編碼器20可經組態以在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行上下文編碼之前對所有語法元素palette_index_idc進行編碼。類似地,視訊解碼器30可經組態 以在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行上下文解碼之前對所有語法元素palette_index_idc進行解碼。
作為另一實例,視訊編碼器20可經組態以在對待經上下文模式編碼之語法元素進行編碼之前對調色盤區塊寫碼部分內之所有語法元素palette_index_idc進行編碼。類似地,視訊解碼器30可經組態以在解碼經上下文模式編碼之語法元素之前解碼調色盤區塊寫碼部分內之所有語法元素palette_index_idc。作為另一實例,視訊編碼器20可經組態以在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行上下文編碼之前對調色盤區塊寫碼部分內之所有語法元素palette_index_idc進行編碼。類似地,視訊解碼器30可經組態以在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行上下文解碼之前對調色盤區塊寫碼部分內之所有語法元素palette_index_idc進行解碼。
大體而言,視訊編碼器20及視訊解碼器30可經組態以使以分別使用上下文模式編碼或解碼語法元素之旁路模式而編碼或解碼palette_index_idc不交錯。舉例而言,視訊編碼器20及視訊解碼器30可經組態以使以分別使用上下文模式編碼或解碼關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素之旁路模式而編碼或解碼palette_index_idc不交錯。作為另一實例,視訊編碼器20可經組態以在對需要上下文模式之語法元素進行上下文編碼之前對palette_index_idc語法元素之所有例項進行旁路編碼。類似地,視訊解碼器30可經組態以在對需要上下文模式之語法元素進行上下文解碼 之前對palette_index_idc語法元素之所有例項進行旁路解碼。作為另一實例,視訊編碼器20可經組態以在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行上下文編碼之前對語法元素palette_index_idc之所有例項進行旁路編碼。類似地,視訊解碼器30可經組態以在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行上下文解碼之前對palette_index_idc語法元素之所有例項進行旁路解碼。
視訊編碼器20及視訊解碼器30亦可分別編碼及解碼表示palette_index_idc之出現次數的值。視訊編碼器20及視訊解碼器30可使用表示palette_index_idc之出現次數之值以分別編碼或解碼語法元素palette_index_idc中之每一者。本發明中描述之技術亦可消除調色盤延行長度相關之語法元素之冗餘,且消除palette_run_type_flagpalette_index_idc之冗餘。
在一些實例中,本發明描述在區塊(例如,PU或CU)之調色盤索引區塊寫碼部分前面分組所有語法元素palette_escape_val以改良CABAC輸貫量之方法。舉例而言,視訊編碼器20可經組態以在區塊之調色盤索引區塊寫碼部分前面編碼所有語法元素palette_escape_val。舉例而言,視訊編碼器20可經組態以在調色盤索引區塊寫碼部分前面對所有語法元素palette_escape_val進行旁路模式編碼以使得在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行編碼之前對所有語法元素palette_escape_val進行編碼。類似地,視訊解碼器30可經組態以在區塊之調色盤索引區塊寫碼部分前面對區塊之所有語法元素palette_escape_val進行解碼以使得在對關於調色盤延 行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行解碼之前對所有語法元素palette_escape_val進行解碼。作為另一實例,視訊編碼器20可經組態以在對待經上下文模式編碼之語法元素進行編碼之前對所有語法元素palette_escape_val進行編碼。舉例而言,視訊編碼器20可經組態以在對關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素進行上下文編碼之前對所有語法元素palette_escape_val進行編碼。類似地,視訊解碼器30可經組態以在區塊之調色盤索引區塊寫碼部分前面對所有語法元素palette_escape_val進行解碼。舉例而言,視訊解碼器30可經組態以在對區塊中之經上下文模式編碼之語法元素進行解碼之前對所有語法元素palette_escape_val進行解碼。
作為另一實例,視訊編碼器20可經組態以在對待經上下文模式編碼之語法元素進行編碼之前對區塊之調色盤區塊寫碼部分內之所有語法元素palette_escape_val進行編碼。類似地,視訊解碼器30可經組態以在對區塊之經上下文模式編碼之語法元素進行解碼之前對區塊之調色盤區塊寫碼部分內之所有語法元素palette_escape_val進行解碼。
大體而言,視訊編碼器20及視訊解碼器30可經組態以使以分別針對區塊使用上下文模式編碼或解碼語法元素之旁路模式而編碼或解碼區塊(例如,PU或CU)之palette_escape_val不交錯。舉例而言,視訊編碼器20及視訊解碼器30可經組態以使以分別使用上下文模式編碼或解碼關於調色盤延行類型(例如,CopyAbove模式或索引模式)及/或延行長度(例如,palette_run_msb_id_plus1)之語法元素之旁路模式而編碼或解碼palette_escape_val不交錯。作為另一實例,視訊編碼器20可經組態以在對需要上下文模式之語法元素進行上下文編碼之前對區塊之palette_escape_val語法元素之所有例項進行旁路編碼。類似地, 視訊解碼器30可經組態以在對需要區塊之上下文模式之語法元素進行上下文解碼之前對區塊(例如,PU或CU)之palette_escape_val語法元素之所有例項進行旁路解碼。
視訊編碼器20及視訊解碼器30亦可分別對表示區塊之palette_escape_val之出現次數的值進行編碼及解碼。視訊編碼器20及視訊解碼器30可使用表示palette_escape_val之出現次數之值以分別對區塊之語法元素palette_escape_val中之每一者進行編碼或解碼。本發明中描述之技術可減小區塊之palette_index_idc之動態範圍,此可產生改良之寫碼效率。
可以任何組合或與彼此獨立而結合彼此從而利用本文所描述之技術、態樣及/或實例。舉例而言,視訊編碼器20及視訊解碼器30可經組態以執行本文所描述之技術、態樣及/或實例中之一或多者之任一個或任何合適的組合。
在一些實例中,如上文所描述,為改良CABAC輸貫量,視訊寫碼器(例如,視訊編碼器20)可經組態以分組語法元素palette_index_idc之所有出現。舉例而言,視訊寫碼器(例如,視訊編碼器20)可經組態以在當前區塊之索引寫碼部分前面分組當前區塊(例如,PU或CU)中之語法元素palette_index_idc之所有出現。類似地,如上文所描述,視訊解碼器(例如,視訊解碼器30)可經組態以解碼所有語法元素palette_index_idc。圖7說明其中視訊編碼器20可經組態以(例如)關於R.Joshi及J.Xu「高效率視訊寫碼(HEVC)螢幕內容寫碼:草案2」JCTVC-S1005,7.3.3.8部分,在索引寫碼區塊前面分組當前區塊(例如,CU)中之語法元素palette_index_idc之所有出現的一個實例。本發明之此態樣被稱作態樣1。具體而言,圖7說明將語法元素palette_index_idc之例項重新定位於索引寫碼區塊前面(亦可被稱作調色盤區塊寫碼部分或索引寫碼區塊之前面)之視訊編碼器20的實例。 藉由重新定位所說明之語法元素palette_index_idc之所說明之例項,視訊編碼器20可經組態以藉由使用旁路模式語法元素palette_index_idc之所有例項進行寫碼及切換至上下文模式以對在索引寫碼區塊中之語法元素palette_index_idc之所有實例經旁路模式編碼之後發生之調色盤資訊進行寫碼從而改良CABAC輸貫量。
根據JCTVC-S1005之揭示,將以旁路模式寫碼palette_index_idc之一個例項,隨後將以上下文模式寫碼關於調色盤延行類型之語法元素之一個例項及palette_run_msb_id_plus1之一個例項,且該程序將重複while(scanPos<nCbS*nCbS),意謂視訊編碼器將在旁路模式寫碼與上下文模式寫碼之間來回切換,因為待使用旁路模式寫碼之語法元素未被分組在一起。此在圖7中被描繪,其中橢圓在「while(scanPos<nCbS * nCbS)」之循環正下方(亦即,橢圓不包括展示關於調色盤延行類型之語法元素使用上下文模式經編碼之資訊),圍繞隨之而來的palette_index_idc語法元素之if語句的方塊在「while(scanPos<nCbS*nCbS)」之循環及後續偽寫碼之下。然而,如上文所描述,圖7亦描繪本發明之態樣1,此為將語法元素palette_index_idc之一或多個例項分組(亦可被稱作重新定位)至(例如)索引寫碼區塊前面。藉由重新定位待使用旁路模式編碼之一或多個語法元素(例如,或其他調色盤資訊),視訊編碼器(例如,視訊編碼器20)可藉由減少視訊編碼器或視訊解碼器必須在旁路模式編碼與上下文模式編碼之間切換的次數而增加熵寫碼之輸貫量。類似地,藉由以此方式重新定位一或多個語法元素,視訊解碼器(例如,視訊解碼器30)之輸貫量可增大,因為視訊解碼器必須在旁路模式解碼與上下文模式解碼之間切換之次數減少。在本發明中描述之技術的一些實例中,在palette_run_msb_id_plus1之例項將以上下文模式來寫碼之前將以旁路模式寫碼palette_index_idc語法元素之所有例項。
在一些實例中,視訊編碼器20可經組態以使用稱為(例如)num_palette_index之語法元素信號傳遞語法元素palette_index_idc之出現次數(例如,例項)。舉例而言,視訊編碼器20可以位元串流信號傳遞num_palette_index之值,其中該值表示語法元素palette_index_idc之出現次數。在一些實例中,視訊編碼器20可經組態以不信號傳遞如palette_index_idc之索引值。在此等實例中,視訊解碼器30可經組態以推斷索引值。舉例而言,可以num_palette_index計數palette_index_idc之發生,該計數可等於延行類型(例如,COPY_INDEX_MODE)在特定區塊中發生之次數。即使當推斷延行類型(例如,COPY_INDEX_MODE)或推斷palette_index_idc時,其仍計入num_palette_index。如本文所使用,在一些實例中,經剖析、解碼或保持待解碼之多個索引之參考可指代與模式或索引是否被推斷無關之COPY_INDEX_MODE之數目。視訊解碼器30可經組態以藉由(例如)解碼來自位元串流之對應於num_palette_index語法元素之經編碼值而判定語法元素palette_index_idc之出現次數(例如,例項)。本發明之此態樣被稱作態樣2。視訊編碼器20和視訊解碼器30可經組態以使用態樣2或不使用態樣2實施態樣1。在語法方面,根據一些實例,態樣2可被定義為:
Figure 105102961-A0202-12-0034-1
在一些實例中,僅當可變indexMax大於1時,視訊編碼器20及視訊解碼器30可經組態以實施(例如,藉由啟用)態樣1及態樣2。本發明之此態樣被稱作態樣3。可變indexMax可指定調色盤索引具有之用於當前寫碼單元之不同值之數目。在一些實例中,indexMax可指代(調色盤大小+palette_escape_val_present_flag)之數量。
在一些實例中,當以下情況時可禁用態樣1及態樣2:(a)當前區塊中不存在逸出像素(亦即palette_escape_val_present_flag==0)且調色盤大小小於2;或(b)當前區塊中可存在至少一個逸出像素(亦即,palette_escape_val_present_flag==1)且調色盤大小等於0。在其他實例中,僅當可變indexMax大於2時,視訊編碼器20及視訊解碼器30可經組態以實施(例如,藉由啟用)態樣1及態樣2。類似地,在其中indexMax等於(調色盤大小+palette_escape_val_present_flag)之實例中,當indexMax大於1時可啟用(例如,實施)態樣1及態樣2。舉例而言,若調色盤大小為0且palette_escape_val_present_flag為1,則區塊中之所有像素為逸出像素;及,由此已經已知索引。作為另一實例,若palette_escape_val_present_flag為0且調色盤大小為1,則,又,每一像素具有索引0;及,由此可不必要信號傳遞索引。
在一些實例中,視訊編碼器20可經組態以實施態樣1及態樣2以使得語法元素palette_run_type_flag[xC][yC]之最末發生(例如,實例)藉由視訊編碼器20在調色盤索引區塊寫碼部分前面被信號傳遞。本發明之此態樣被稱作態樣4。具體而言,根據一些實例,如下文,可藉由添加新的語法元素palette_last_run_type_flag來更新語法表:
Figure 105102961-A0202-12-0035-2
視訊解碼器30可經組態以藉由(例如)解碼來自位元串流之經編碼palette_last_run_type_flag語法元素來判定語法元素palette_run_type_flag[xC][yC]之最末發生(例如,例項)。palette_last_run_type_flag之語法元素可在(例如)CABAC中之經旁路模式寫碼或經上下文模式寫碼。在其中palette_last_run_type_flag語 法元素經上下文模式寫碼之實例中,palette_last_run_type_flag語法元素可與palette_run_type_flag[xC][yC]共用相同上下文,或palette_last_run_type_flag語法元素可具有獨立於palette_run_type_flag[xC][yC]之上下文之其自身上下文。
在一些實例中,視訊解碼器30可經組態以解碼語法元素palette_index_idc,以使得針對palette_index_idc語法元素之第一發生(例如,實例)禁用動態範圍調節處理程序。本發明之此態樣被稱作態樣5。具體而言,使用與JCTVC-S1005部分7.4.9.6中指定之adjustedIndexMax可變的導出程序極類似之處理程序。出於對比之目的,JCTVC-S1005描述可變adjustedIndexMax可如下導出:adjustedIndexMax=indexMax if(scanPos>0) adjustedIndexMax-=1
然而,根據本發明之態樣5,可變adjustIndexMax可如下文所闡述而導出。舉例而言,對於每一區塊,在剖析之前,可變isFirstIndex經初始化為1。在一些實例中,可變adjustedIndexMax可如下導出:adjustedIndexMax=indexMax palette_index_idc if(isFirstIndex){ adjustedIndexMax-=isFirstIndex isFirstIndex=0 }
在一些實例中,在剖析及解碼paletteRun之前,視訊解碼器30可經組態以檢查一或多個條件。本發明之此態樣被稱作態樣6。例如由JCTVC-S1005中所揭示,當palette_run_type_flag等於COPY_ABOVE_MODE時,可變paletteRun可指定具有與上述列中位 置相同之調色盤索引之連續位置減1之數目,或當palette_run_type_flag等於COPY_INDEX_MODE時指定具有相同調色盤索引之連續位置減1之數目。
參考視訊解碼器30可經組態以檢查之一或多個條件,若視訊解碼器30判定滿足該等條件中之一或多者,則視訊解碼器30可經組態以針對關於當前paletteRun(亦即,palette_run_msb_id_plus1palette_run_refinement_bits)之語法元素旁路剖析及解碼處理程序。在此實例中,視訊解碼器30可經組態以隨著運行至當前區塊之末端(亦即,等於maxPaletteRun)隱含地推導當前paletteRun。與態樣6相關之一或多個條件之清單包含:(i)等於num_palette_index之經剖析/經解碼palette_index_idc語法元素之數目;或,可替代地,可定義可變paletteIndicesLeft等於num_palette_index減所接收之索引之數目,且使用該定義,可陳述此條件為paletteIndicesLeft等於零;及/或(ii)當前調色盤延行類型palette_run_type_flag[xC][yC]等於最末調色盤延行類型palette_last_run_type_flag
在一些實例中,若不同時滿足上文針對態樣6所闡述之條件(i)及(ii),則視訊編碼器20可經組態以將調色盤延行長度寫碼至位元串流中。本發明之此態樣被稱作態樣7。在其他實例中,若不同時滿足上文針對態樣6所闡述之條件(i)及(ii),則視訊編碼器20可經組態以將調色盤延行長度寫碼至位元串流中。根據當前草案說明書JCTVC-S1005,需要指定最大可達成延行長度之參數為輸入,其中參數等於maxPaletteRun=nCbS*nCbS-scanPos-1。然而,根據本發明,視訊編碼器20可經組態以將指定最大可達成延行長度之參數減小至maxPaletteRun=nCbS*nCbS-scanPos-1-paletteIndicesLeft以改良寫碼效率。如本文所使用,nCbS指定當前區塊之大小。
在一些實例中,若區塊並不在調色盤共享模式中(亦即, palette_share_flag[x0][y0]==0),則可施加規範性約束條件於需要其從未信號傳遞具有未使用條目之調色盤的視訊編碼器20上。本發明之此態樣被稱作態樣8。
在一些實例中,對於不使用調色盤共用之調色盤模式,當滿足以下條件中之一或多者時:其中num_palette_index等於indexMax之條件1及其中paletteIndicesLeft==1之條件2,視訊解碼器30可經組態以旁路對語法元素palette_index_idc之當前發生(例如,例項)之解碼。在此等實例中,視訊解碼器30可經組態以將語法元素palette_index_idc之當前發生之值隱含地推導為調色盤中之索引,但已在解碼處理程序期間出現於索引映射中(例如,直到此點未在解碼處理程序中出現於索引圖中)。本發明之此態樣被稱作態樣9。
視訊解碼器30可經組態以導出上文針對態樣9所闡述之語法元素palette_index_idc之當前發生的值,因為條件1需要0與(indexMax-1)之間的每一索引(包括性地)經信號傳遞且僅信號傳遞一次。因此,在第一(indexMax-1)索引值被信號傳遞之後,視訊解碼器30可經組態以導出最末索引值為0與(indexMax-1)之間的數目,該值已在當前索引映射圖之解碼處理程序期間出現。
在一些實例中,當滿足以下條件中之一者或兩者時,視訊解碼器30可經組態以旁路對語法元素palette_run_type_flag[xC][yC]之當前發生(例如,例項)之解碼:條件1,其中paletteIndicesLeft等於0,及條件2,其中當前像素處於掃描次序中之區塊之最末位置。在此等實例中,視訊解碼器30可經組態以隱含地導出語法元素palette_run_type_flag[xC][yC]之當前發生的值。舉例而言,當滿足條件1時,palette_run_type_flag[xC][yC]視訊解碼器30可經組態以導出語法元素palette_run_type_flag[xC][yC]之當前發生之值為COPY_ABOVE_MODE。作為另一實例,當滿足條件1時,若 paletteIndicesLeft>0,則palette_run_type_flag[xC][yC]視訊解碼器30可經組態以導出語法元素palette_run_type_flag[xC][yC]之當前發生之值為COPY_INDEX_MODE,且若paletteIndicesLeft=0,則導出為COPY_ABOVE_MODE。本發明之此態樣被稱作態樣10。
如本文中所描述,視訊編碼器20及視訊解碼器30可經組態以判定何時滿足條件。舉例而言,關於態樣10,視訊解碼器30可經組態以判定是否滿足條件1。類似地,視訊解碼器30可經組態以判定是否滿足條件2。回應於判定滿足條件1或條件2,如上文所闡述,視訊解碼器30可經組態以導出語法元素palette_run_type_flag[xC][yC]之當前發生之值。
在一些實例中,視訊編碼器20及視訊解碼器30可經組態以使用任一哥倫布碼族分別對num_palette_index語法元素進行編碼或解碼。舉例而言,視訊編碼器20及視訊解碼器30可經組態以使用(例如)哥倫布萊斯碼、指數哥倫布碼、截短萊斯碼、一元碼或哥倫布萊斯碼與指數哥倫布碼之串聯來分別對num_palette_index語法元素進行編碼或解碼。本發明之此態樣被稱作態樣11。
在其他實例中,視訊編碼器20及視訊解碼器30可經組態以使用任一哥倫布碼族中之任一截短版本來分別對num_palette_index語法元素進行編碼或解碼。舉例而言,視訊編碼器20及視訊解碼器30可經組態以使用(例如)截短哥倫布萊斯碼、截短指數哥倫布碼、截短截短萊斯碼、截短一元碼或截短萊斯碼與指數哥倫布碼之串聯(諸如,用於寫碼coeff_abs_level_remaining語法元素之程式碼)來分別對num_palette_index語法元素進行編碼或解碼。本發明之此態樣被稱作態樣12。
在一些實例中,與態樣11或態樣12相關之任意哥倫布參數取決於CU大小、indexMax、調色盤大小及/或palette_escape_val_present_flag。 該相依性可表達為等式或查找表。在一些實例中,視訊編碼器20可經組態以信號傳遞查找表或等式中之參數,以使得其由(例如)SPS/PPS/圖塊標頭中之視訊解碼器30所接收。可替代地或另外,可根據逐塊基礎適應性地更新參數。本發明之此態樣被稱作態樣13。在一些實例中,哥倫布參數cRiceParam可取決於indexMax、調色盤大小及/或palette_escape_val_present_flag。哥倫布參數cRiceParam可自區塊至區塊而改變。
在一些實例中,視訊編碼器20可經組態以藉由信號傳遞num_palette_index之值與差量值之間的差異而預測性地編碼num_palette_index,該值可由稱為(例如)numPaletteIndexCoded之語法元素來表達。本發明之此態樣被稱作態樣14。舉例而言,視訊編碼器20可經組態以藉由信號傳遞numPaletteIndexCoded之值而預測性地編碼num_palette_index,其中numPaletteIndexCoded=num_palette_index-IndexOffsetValue。類似地,視訊解碼器30可經組態以藉由(例如)判定來自位元串流之numPaletteIndexCoded之值而預測性地解碼num_palette_index。因為numPaletteIndexCoded=num_palette_index-IndexOffsetValue,視訊解碼器30可經組態以基於所判定的numPaletteIndexCoded之值及IndexOffsetValue之值而判定num_palette_index之值。
在一些實例中,可變IndexOffsetValue可為常數。舉例而言,IndexOffsetValue可等於調色盤共用模式之X之常數值或可等於非調色盤共用模式之Y之常數值,其中X及Y為整數。在一些實例中,X及Y可相同(例如,X等於Y,諸如等於1)。在其他實例中,X及Y可不同(例如,X不等於Y)。舉例而言,當使用調色盤共用模式時IndexOffsetValue可等於9,且當使用非共用模式時IndexOffsetValue可等於33。在一些實例中,可變IndexOffsetValue可取決於語法元素 palette_share_flag[x0][y0]。在其他實例中,可變IndexOffsetValue可取決於可變indexMax。舉例而言,IndexOffsetValue可等於indexMax。在一些實例中,視訊編碼器20可經組態以信號傳遞SPS/PPS/圖塊標頭中之IndexOffsetValue。可替代地或另外地,可變IndexOffsetValue可經適應性地逐塊更新,意謂對應於可變IndexOffsetValue之值可經適應性地逐塊更新。
在一些實例中,視訊編碼器20及視訊解碼器30可經組態以分別編碼或解碼可使用任意哥倫布碼族或任意截短哥倫布族(諸如哥倫布萊斯碼與指數哥倫布碼之串聯)寫碼之numPaletteIndexCoded。舉例而言,當IndexOffsetValue等於1時,numPaletteIndexCoded等於num_palette_index-1。
在一些實例中,視訊編碼器20及視訊解碼器30可經組態以使用任意哥倫布碼族分別編碼或解碼numPaletteIndexCoded。舉例而言,視訊編碼器20及視訊解碼器30可經組態以使用(例如)哥倫布萊斯碼、指數哥倫布碼、截短萊斯碼、一元碼或哥倫布萊斯碼與指數哥倫布碼之串聯來分別編碼或解碼numPaletteIndexCoded。
在其他實例中,視訊編碼器20及視訊解碼器30可經組態以使用任意哥倫布碼族之任意截短版本來分別編碼或解碼numPaletteIndexCoded。舉例而言,視訊編碼器20及視訊解碼器30可經組態以使用(例如)截短哥倫布萊斯碼、截短指數哥倫布碼、截短截短萊斯碼、截短一元碼或截短萊斯碼與指數哥倫布碼之串聯(諸如,用於寫碼coeff_abs_level_remaining語法元素之程式碼)來分別編碼或解碼numPaletteIndexCoded。
為寫碼numPaletteIndexCoded,視訊編碼器20可經組態以判定numPaletteIndexCoded之正負號。視訊編碼器20可經組態以信號傳遞指示numPaletteIndexCoded之值為負值與否(例如,經判定正負號為正 的抑或負的)的旗標。本發明之此態樣被稱作態樣15。在一些實例中,視訊編碼器20可經組態以信號傳遞旗標,且隨後信號傳遞numPaletteIndexCoded之值。在其他實例中,視訊編碼器20可經組態以信號傳遞numPaletteIndexCoded之值,且隨後信號傳遞旗標。視訊編碼器20可經組態以使用旁路模式或上下文模式編碼旗標。若經上下文寫碼,則上下文可取決於CU大小、indexMax、調色盤大小及/或palette_escape_val_present_flag
如上文所描述,視訊編碼器20可經組態以根據一些實例判定numPaletteIndexCoded之正負號。若所判定numPaletteIndexCoded之正負號為負的,則視訊編碼器20可經組態以將(1-numPaletteIndexCoded)之值編碼至位元串流中。若所判定numPaletteIndexCoded之正負號為正的,則視訊編碼器20可經組態以將numPaletteIndexCoded之值編碼至位元串流中。視訊編碼器20可經組態以使用取決於(例如)numPaletteIndexCoded之正負號、CU大小、indexMax、調色盤大小及/或palette_escape_val_present_flag的不同哥倫布碼參數來編碼(1-numPaletteIndexCoded)之值或numPaletteIndexCoded)值。
在一些實例中,視訊編碼器20可經組態以使用映射操作來表示numPaletteIndexCoded之負部,此可除態樣15外還可替代態樣15。本發明之此態樣被稱作態樣16。舉例而言,可引入映射間隔,且其被定義為可變mapInterval。視訊編碼器20可經組態以使用可變mapInterval將numPaletteIndexCoded之負值映射至同等隔開之等於:mapInterval×(-numPaletteIndexCoded)-1之正值。numPaletteIndexCoded之相對應正值可因此移位以適應由經映射負值所獲得之位置。
舉例而言,若mapInterval=2,且numPaletteIndexCoded係選自 {-3,-2,-1,0,1,2,3},則該映射可如下文表I中所說明。在此實例中,視訊編碼器20可經組態以使用表I中之經映射值來編碼numPaletteIndexCode之值。舉例而言,視訊編碼器20可經組態以將經映射值熵編碼成二進位形式。
Figure 105102961-A0202-12-0043-3
在一些實例中,視訊編碼器20可經組態以使用關於態樣16所描述之映射操作來表示numPaletteIndexCoded之負部。視訊編碼器20亦可經組態以移除當實施態樣16時可出現之一或多個冗餘。本發明之此態樣被稱作態樣17。舉例而言,numPaletteIndexCoded之負值之數目可在A={-1,-2,...,-IndexOffsetValue+1}範圍內。作為另一實例,numPaletteIndexCode之負值之數目可在A={-1,-2,...,-IndexOffsetValue+1,IndexOffsetValue}範圍內。在這些實例中之任一者中,經映射值僅需要保留負numPaletteIndexCoded值之(IndexOffsetValue-1)或IndexOffsetValue位置。舉例而言,若mapInterval=2,且numPaletteIndexCoded係選自{-3,-2,-1,0,1,2,3,4,5,6,7,8},則該映射可如下文表II中所說明。在此實例中,視訊編碼器20可經組態以使用表II中之經映射值來編碼numPaletteIndexCode之值。舉例而言,視訊編碼器20可經組態以將經映射值熵編碼成二進位形式。
Figure 105102961-A0202-12-0044-4
如上文表II中所展示,視訊編碼器20可經組態以編碼對應於numPaletteIndexCode之值的經映射值,以使得numPaletteIndexCode之負值與正值在某一值之後不交錯。舉例而言,在上文表II之實例中,不存在經由以numPaletteIndexCoded之值3開始之經映射值之numPaletteIndexCoded之正值與負值的交錯(亦即,numPaletteIndexCoded之正值3-8映射至經映射值6-11)。
如上文所描述,視訊編碼器20亦可經組態以移除當實施態樣16時可出現之一或多個冗餘。不同於上文所描述之冗餘實例之另一冗餘實例包括:由於num_palette_index以當前區塊中之像素之總數為上限,numPaletteIndexCoded亦有上限。因此,在以正碼字之所有機率分配位置之後,負值可經映射至以下位置而不交錯。舉例而言,若mapInterval=2,且numPaletteIndexCoded係選自{-5,-4,-3,-2,-1,0,1,2,3},則該映射可如下文表III中所說明。在此實例中,視訊編碼器20可經組態以使用表III中之經映射值來編碼numPaletteIndexCode之值。舉例而言,視訊編碼器20可經組態以將經映射值熵編碼成二進位形式。
Figure 105102961-A0202-12-0045-5
如上文表III中所展示,視訊編碼器20可經組態以編碼對應於numPaletteIndexCode之值的經映射值,以使得numPaletteIndexCode之負值與正值在某一值之後不交錯。舉例而言,在上文表III之實例中,不存在經由以numPaletteIndexCoded之值4開始之經映射值之numPaletteIndexCoded之正值與負值的交錯(亦即,numPaletteIndexCoded之負值-4及-5映射至經映射值7及8)。
在一些實例中,視訊編碼器20可經組態以進一步解耦調色盤索引與調色盤延行之間的關係。本發明之此態樣被稱作態樣18。舉例而言,視訊編碼器20可經組態以使得調色盤延行寫碼之上下文取決於前述調色盤延行長度或取決於前述延行之palette_run_msb_id_plus1、indexMax及/或CU大小,而不是允許調色盤延行寫碼之上下文取決於經剖析或經解碼索引。
在一些實例中,為進一步分組旁路二進位,視訊編碼器20可經組態以如下信號傳遞調色盤延行類型(亦即palette_run_type_flag[xC][yC])之前信號傳遞調色盤區塊中之逸出索引之數目以及逸出值。本發明之此態樣被稱作態樣19。斜體部分說明相對於JCT-VC S1005之前述版本的變化,且加粗部分以及右行中之「ae(v)」指示語法元素之信號傳遞。
Figure 105102961-A0202-12-0045-6
Figure 105102961-A0202-12-0046-7
在上文之實例中,escape_idc_coding()由信號傳遞逸出索引之數目及對應於每一逸出索引之逸出值構成。若palette_escape_val_present_flag為0或若indexMax等於0,則可不信號傳遞調色盤區塊中之逸出索引之數目。在前者情形中,逸出索引之數目經推斷為0,且不信號傳遞逸出值。在indexMax等於0之後者情形中,當palette_escape_val_present_flag等於1且信號傳遞逸出值時,逸出索引之數目經推斷等於區塊大小,或當palette_escape_val_present_flag等於0時逸出索引之數目經推斷為零。
在一些實例中,視訊編碼器20可經組態以使用哥倫布碼族信號傳遞逸出索引之數目。本發明之此態樣被稱作態樣20。舉例而言,視訊編碼器20可經組態以使用(例如)哥倫布萊斯碼、指數哥倫布碼、截短萊斯碼、一元碼或哥倫布萊斯碼與指數哥倫布碼之串聯來信號傳遞逸出索引之數目。以上碼之截短版本可與等於區塊大小之最大集合一起使用。
在一些實例中,提出對palette_escape_val_present_flag實施規範性限制,當palette_escape_val_present_flag等於0時,當前區塊中不存在逸出像素。本發明之此態樣被稱作態樣21。當palette_escape_val_present_flag等於1時,當前區塊中存在至少一個逸出像素。由於此限制,在escape_idc_coding()中,可寫碼逸出索引減1之數目,而不是逸出索引之數目以改良寫碼效率。在彼情況下,截短哥倫布碼族之最大值可因此經調整至(blockSize-1)。
在一些實例中,當在寫碼索引圖區塊之前信號傳遞逸出索引之數目時且當已經寫碼所有逸出索引時,則indexMax可減小1。此外,若indexMax變成1,則索引、延行及模式寫碼經終止,因為可推斷所有剩餘樣本之索引。本發明之此態樣被稱作態樣22。作為態樣22之一個實例,假定調色盤大小等於1且palette_escape_val_present_flag等於1。通常,可能的索引值為0及1,其中1用於逸出樣本。在態樣22下,視訊編碼器20可經組態以信號傳遞逸出值/樣本之數目。隨後,當信號傳遞索引且遇到最末逸出值/樣本時,視訊編碼器20及/或視訊解碼器30兩者可經組態以推斷(例如,判定)不再存在逸出值/樣本。由此,視訊編碼器20及/或視訊解碼器30可經組態以判定自最末逸出值/樣本至區塊之末端可產生之僅有的索引值為0,意謂視訊編碼器20可經組態以不將模式、索引值及/或延行值自最末逸出值/樣本信號傳遞至區塊之末端。
在一些實例中,escape_idc_coding()與indices_idc_coding()組合使用。本發明之此態樣被稱作態樣23。在一項實例中,可在信號傳遞索引之數目之前信號傳遞逸出索引之數目。在此情形下,僅需要以indices_idc_coding()信號傳遞非逸出索引之數目。在一項實例中,可在信號傳遞索引之數目之後信號傳遞逸出索引之數目。在此情形下,截短哥倫布碼族之最大值可因此經調整至num_palette_index
視訊編碼器20及/或視訊解碼器30可經組態以根據本發明中描述之技術來操作。大體而言,視訊編碼器20及/或視訊解碼器30可經組,態以判定當前區塊以調色盤模式來寫碼,對第一語法元素之複數個例項進行旁路模式寫碼以用於重建構當前區塊,且在對第一語法元素之複數個例項進行旁路模式寫碼之後,對第二語法元素之複數個例項進行上下文模式解碼以用於重建構當前區塊。
圖2為繪示可實施本發明之技術的實例視訊編碼器20的方塊圖。出於解釋之目的而提供圖2,且不應將其視為對如本發明中廣泛例示及描述之技術的限制。出於解釋的目的,本發明在HEVC寫碼及例如HEVC之SCC擴展之上下文中描述視訊編碼器20。然而,本發明之技術可適用於其他寫碼標準或方法。
視訊編碼器20表示根據本發明中描述之各種實例之可經組態以執行用於基於調色盤之寫碼及熵寫碼(例如,CABAC)之技術的器件之實例。
在圖2之實例中,視訊編碼器20包括區塊編碼單元100、視訊資料記憶體101、殘餘產生單元102、變換處理單元104、量化單元106、逆量化單元108、逆變換處理單元110、重建構單元112、濾波器單元114、經解碼圖像緩衝器116及熵編碼單元118。區塊編碼單元100包括框間預測處理單元120及框內預測處理單元126。框間預測處理單元120包括運動估計單元及運動補償單元(未展示)。視訊編碼器20亦包括經組態以執行本發明中所描述之基於調色盤之寫碼技術之各種態樣的基於調色盤之編碼單元122。在其他實例中,視訊編碼器20可包括更多、更少或不同功能性組件。
視訊資料記憶體101可儲存待由視訊編碼器20之組件編碼的視訊資料。可(例如)自視訊源18獲得儲存於視訊資料記憶體101中之視訊資料。經解碼圖像緩衝器116可為參考圖像記憶體,其儲存參考視訊 資料以供視訊編碼器20(例如)以框內或框間寫碼模式)編碼視訊資料時使用。視訊資料記憶體101及經解碼圖像緩衝器116可由多種記憶體器件中之任一者形成,諸如,動態隨機存取記憶體(DRAM)(包括同步DRAM(SDRAM))、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其他類型之記憶體器件。可由同一記憶體器件或獨立記憶體器件提供視訊資料記憶體101及經解碼圖像緩衝器116。在各種實例中,視訊資料記憶體101可與視訊編碼器20之其他組件一起在晶片上,或相對於彼等組件在晶片外。
視訊編碼器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之運動資訊。取決於PU是在I圖塊中、P圖塊中抑或B圖塊中,框間預測單元121可針對CU之PU執行不同操作。在I圖塊中,所有PU經框內預測。因此,若PU在I圖塊中,則框間預測單元121不對PU執行框間預測。因此,對於I模式中編碼的區塊,經預測區塊係使用空間預測自同一圖框內的先前經編碼之相鄰區塊而形成。
若PU係在P圖塊中,則框間預測處理單元120之運動估計單元可在PU之參考區域的參考圖像清單(例如,「RefPicList0」)中搜尋參考圖像。PU之參考區域可為參考圖像內含有最緊密地對應於PU之樣本區塊的樣本區塊之區域。框間預測處理單元120之運動估計單元可產生參考索引,該參考索引指示含有PU之參考區域之參考圖像在RefPicList0中的位置。另外,運動估計單元可產生指示PU之寫碼區塊與相關聯於參考區域之參考位置之間的空間移位的MV。舉例而言,MV可為提供自當前經解碼圖像中之座標至參考圖像中之座標之偏移的二維向量。運動估計單元可將參考索引及MV輸出為PU之運動資訊。框間預測處理單元120之運動補償單元可基於在由PU之運動向量指示之參考位置處的實際或內插樣本而產生PU之預測性區塊。
若PU在B圖塊中,則運動估計單元可針對PU執行單向預測或雙向預測。為針對PU執行單向預測,運動估計單元可針對PU之參考區域搜尋RefPicList0或第二參考圖像清單(「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之預測性區塊。
根據本發明之各種實例,視訊編碼器20可經組態以執行基於調色盤之寫碼。關於HEVC構架,作為一實例,基於調色盤之寫碼技術可經組態以在CU層級使用。在其他實例中,基於調色盤之視訊寫碼技術可經組態以在PU層級使用。在其他實例中,基於調色盤之寫碼技術可經組態以在子預測單元(子PU)層級(例如,預測單元之子區塊)使用。因此,本文中(貫穿本發明)所描述的在CU層級之上下文中的所有所揭示之處理程序可另外地或替代性地應用於PU層級或子PU層級。然而,此等基於HEVC之實例不應被視為約束或限制本文中所描述之基於調色盤之視訊寫碼技術,因此等技術可適用於獨立地或作為其他現有或尚待開發之系統/標準之部分而工作。在此等情況下,用於調色盤寫碼之單元可為方形區塊、矩形區塊或甚至非矩形形狀之區域。
當(例如)針對CU或PU選擇基於調色盤之編碼模式時,基於調色盤之編碼單元122(例如)可執行基於調色盤之解碼。舉例而言,基於調色盤之編碼單元122可經組態以產生具有指示像素值之條目的調色盤,選擇調色盤中之像素值以表示視訊資料區塊中的至少一些位置之 像素值,及信號傳遞使視訊資料區塊之位置中之至少一些與調色盤中分別對應於所選擇像素值之條目相關聯的資訊。儘管將各種功能描述為藉由基於調色盤之編碼單元122執行,但此等功能中之一些或全部可藉由其他處理單元或不同處理單元之組合執行。
根據本發明之態樣,基於調色盤之編碼單元122可經組態以執行本文中所描述的用於調色盤寫碼之技術的任何組合。
框內預測處理單元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相關聯之寫碼區塊中的區塊假影。濾波器單元114可執行其他濾波操作,包含樣本適應性偏移(SAO)濾波及/或適應性迴路濾波(adaptive loop filtering;ALF)。經解碼圖像緩衝器116可在濾波器單元114對經重建構寫碼區塊執行一或多個解區塊操作之後,儲存經重建構寫碼區塊。框間預測處理單元120可使用含有經重建構之寫碼區塊之參考圖像來對其他圖像之PU執行框間預測。另外,框內預測處理單元126可使用經解碼圖像緩衝器116中之經重建構寫碼區塊來對與CU相同之圖像中的其他PU執行框內預測。
熵編碼單元118可自視訊編碼器20之其他功能性組件接收資料。舉例而言,熵編碼單元118可自量化單元106接收係數區塊,且可自區塊編碼單元100接收語法元素。熵編碼單元118可對資料執行一或多個熵編碼操作,以產生經熵編碼資料。舉例而言,熵編碼單元118可對資料執行上下文適應性寫碼操作(諸如,CABAC操作)、上下文適應性可變長度寫碼(CAVLC)操作、可變至可變(variable-to-variable;V2V)長度寫碼操作、基於語法的上下文適應性二進位算術寫碼(SBAC)操作、機率區間分割熵(PIPE)寫碼操作、指數哥倫布編碼操作或另一類型之熵編碼操作。視訊編碼器20可輸出包括由熵編碼單元118產生之經熵編碼資料的位元串流。舉例而言,位元串流可包括表示用於CU之RQT的資料。
在一些實例中,殘餘寫碼並不與調色盤寫碼一起執行。因此,當使用調色盤寫碼模式寫碼時,視訊編碼器20可不執行變換或量化。另外,視訊編碼器20可對單獨使用調色盤寫碼模式自殘餘資料產生的 資料進行熵編碼。
根據本發明之技術中之一或多者,視訊編碼器20,且具體言之基於調色盤之編碼單元122,可執行經預測視訊區塊的基於調色盤之視訊寫碼。如上文所描述,由視訊編碼器20產生之調色盤可明確地經編碼並發送至視訊解碼器30,自先前調色盤條目預測,自先前像素值預測,或其組合。
根據本發明之一或多個技術,視訊編碼器20可經組態以判定以調色盤模式寫碼當前區塊,對第一語法元素之複數個例項進行旁路模式編碼以用於重建構當前區塊,且對第一語法元素之複數個例項進行旁路模式編碼之後,(例如)使用CABAC寫碼處理程序對第二語法元素之複數個例項進行上下文模式編碼以用於重建構當前區塊。視訊編碼器20可經組態以(例如)使用CABAC寫碼處理程序之旁路模式來對第一語法元素之複數個例項中之任意兩個例項進行旁路模式編碼,而不與第二語法元素之複數個例項中之任一例項之上下文模式編碼交錯。在一項實例中,第一語法元素包含palette_index_idc語法元素或palette_escape_val語法元素中之一者,且第二語法元素包含palette_run_msb_id_plus1語法元素。視訊編碼器20可經組態以在用於當前區塊之索引區塊寫碼部分前面對第一語法元素之複數個例項進行旁路編碼。
視訊編碼器20可經組態以編碼指示第一語法元素之例項之數目之第三語法元素,其中對第一語法元素之複數個例項進行旁路模式編碼包含基於第三語法元素對第一語法元素之複數個例項進行旁路模式編碼。視訊編碼器20可使用哥倫布萊斯碼、指數哥倫布碼、截短萊斯碼、一元碼或哥倫布萊斯碼與指數哥倫布碼之串聯或前述碼中之任一者的截短版本來編碼第三語法元素。
圖3為繪示可經組態以執行本發明之技術之實例視訊解碼器30的 方塊圖。出於解釋之目的而提供圖3,且其並不限制如本發明中廣泛例示及描述之技術。出於解釋之目的,本發明在HEVC寫碼之上下文中描述視訊解碼器30。然而,本發明之技術可適用於其他寫碼標準或方法。
上文關於編碼器20所描述之調色盤寫碼之細節在此關於解碼器30不作重複,但應理解,解碼器30可相對於本文關於編碼器20所描述之任何編碼處理程序而執行互逆解碼處理程序。
視訊解碼器30表示根據本發明中描述之各種實例之可經組態以執行用於基於調色盤之寫碼及熵寫碼(例如,CABAC)之技術的器件之實例。
在圖3之實例中,視訊解碼器30包括熵解碼單元150、視訊資料記憶體151、區塊解碼單元152、逆量化單元154、逆變換處理單元156、重建構單元158、濾波器單元160,及經解碼圖像緩衝器162。區塊解碼單元152包括運動補償單元164及框內預測處理單元166。視訊解碼器30亦包括基於調色盤之解碼單元165,其經組態以執行本發明中所描述之基於調色盤之寫碼技術之各種態樣。在其他實例中,視訊解碼器30可包括更多、更少或不同功能性組件。
視訊資料記憶體151可儲存待由視訊解碼器30之組件解碼的視訊資料,諸如經編碼視訊位元串流。可(例如)自電腦可讀媒體16(例如,自本端視訊源(諸如,攝影機))經由視訊資料之有線或無線網路通信或者藉由存取實體資料儲存媒體而獲得儲存於視訊資料記憶體151中之視訊資料。視訊資料記憶體151可形成儲存來自經編碼視訊位元串流之經編碼視訊資料的經寫碼圖像緩衝器(CPB)。經解碼圖像緩衝器162可為儲存用於藉由視訊解碼器30解碼視訊資料(例如,以框內或框間寫碼模式)時使用之參考視訊資料的參考圖像記憶體。視訊資料記憶體151及經解碼圖像緩衝器162可由多種記憶體器件中之任一者形 成,諸如,動態隨機存取記憶體(DRAM)(包括同步DRAM(SDRAM))、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其他類型之記憶體器件。可藉由相同記憶體器件或獨立記憶體器件來提供視訊資料記憶體151及經解碼圖像緩衝器162。在各種實例中,視訊資料記憶體151可與視訊解碼器30之其他組件一起在晶片上,或相對於彼等組件在晶片外。
可由視訊資料記憶體151提供之經寫碼圖像緩衝器(CPB)可接收並儲存位元串流之經編碼視訊資料(例如,NAL單元)。熵解碼單元150可自CPB接收經編碼視訊資料(例如,NAL單元)並剖析NAL單元以解碼語法元素。熵解碼單元150可對該等NAL單元中之經熵編碼語法元素進行熵解碼。區塊解碼單元152、逆量化單元154、逆變換處理單元156、重建構單元158及濾波器單元160可基於自位元串流提取之語法元素而產生經解碼視訊資料。
視訊解碼器30可經組態以執行與本文中所描述之視訊編碼器20之彼處理程序大體上互逆的處理程序。類似地,視訊編碼器20可經組態以執行與本文中描述之視訊解碼器30之彼處理程序大體上互逆的處理程序。舉例而言,視訊解碼器30可經組態以解碼位元串流中之經編碼語法元素的揭示內容同樣必定揭示視訊編碼器20可經組態以將語法元素編碼至位元串流中。
作為另一實例,熵解碼單元150可經組態以執行與本文中所描述之熵編碼單元118之彼處理程序大體上互逆的處理程序。根據本發明之態樣,熵解碼單元150可經組態以對藉由熵編碼單元118產生之任何碼字進行熵解碼。舉例而言,熵解碼單元150可經組態以對均勻的及不均勻第k階截短指數哥倫布(TEGk)編碼之值(諸如用於CU之二進位調色盤預測向量及/或調色盤映射)進行熵解碼。作為另一實例,熵解碼單元150可經組態以熵解碼第k階指數哥倫布(EGk)碼字、第k階截短 指數哥倫布(TEGk)碼字、第k階不均勻之截短指數哥倫布(TEGk)碼字或其任何組合。
位元串流之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執行框內預測操作或框間預測操作。
根據本發明之各種實例,視訊解碼器30可經組態以執行基於調色盤之寫碼。當選定基於調色盤之解碼模式(例如)以用於CU或PU時,基於調色盤之解碼單元165(例如)可執行基於調色盤之解碼。舉例而言,基於調色盤之解碼單元165可經組態以產生具有指示像素值之條目的調色盤,接收使視訊資料區塊中之至少一些像素位置與調色 盤中之條目相關聯的資訊,基於資訊選擇調色盤中之像素值,及基於調色盤中之選定像素值重建構區塊之像素值。儘管各種功能經描述為藉由基於調色盤之解碼單元165執行,但此等功能中之一些或全部可藉由其他處理單元或不同處理單元之組合來執行。
基於調色盤之解碼單元165可接收調色盤寫碼模式資訊,並在調色盤寫碼模式資訊指示調色盤寫碼模式適用於區塊時執行上述操作。在調色盤寫碼模式資訊指示調色盤寫碼模式不適用於區塊時,或在其他模式資訊指示不同模式之使用時,基於調色盤之解碼單元165使用非基於調色盤之寫碼模式(例如,HEVC框間預測寫碼模式或HEVC框內預測寫碼模式)解碼視訊資料區塊。視訊資料之區塊可為(例如)根據HEVC寫碼處理程序產生之CU或PU。基於調色盤之寫碼模式可包含複數個不同基於調色盤之寫碼模式中的一者,或可存在單一基於調色盤之寫碼模式。
根據本發明之態樣,基於調色盤之解碼單元165可經組態以執行本文中所描述的用於調色盤寫碼之技術的任何組合。上文關於編碼器20所描述之調色盤寫碼之細節在此關於解碼器30不重複,但應理解,解碼器30可相對於本文關於編碼器20所描述之任何基於調色盤之編碼處理程序而執行互逆的基於調色盤之解碼處理程序。
視訊解碼器30可經組態以判定當前區塊以調色盤模式經寫碼,對第一語法元素之複數個例項進行旁路模式解碼以用於(例如)使用CABAC寫碼處理程序之旁路模式來重建構當前區塊,且在對第一語法元素之複數個例項進行旁路模式解碼之後,對第二語法元素之複數個例項進行上下文模式解碼以用於(例如)使用CABAC寫碼程序重建構當前區塊。視訊解碼器30可對第一語法元素之複數個例項中之任何兩個例項進行旁路模式解碼,而不與第二語法元素之複數個例項中之任一個例項的上下文模式解碼相交錯。在一些實例中,第一語法元素包 含palette_index_idc語法元素或palette_escape_val語法元素中之一者,且第二語法元素包含palette_run_msb_id_plus1語法元素。視訊解碼器30可在用於當前區塊之索引區塊寫碼部分前面對第一語法元素之複數個例項進行旁路解碼。
視訊解碼器30可解碼指示第一語法元素之例項之數目之第三語法元素,其中對第一語法元素之複數個例項進行旁路模式解碼包含基於第三語法元素對第一語法元素之複數個例項進行旁路模式解碼。視訊解碼器30可使用哥倫布萊斯碼、指數哥倫布碼、截短萊斯碼、一元碼或哥倫布萊斯碼與指數哥倫布碼之串聯或前述碼中之任一者的截短版本來解碼第三語法元素。
圖4為繪示符合本發明之技術的判定用於寫碼視訊資料之調色盤的實例之概念圖。圖4之實例包括具有與第一調色盤184相關聯的第一PAL(調色盤)寫碼單元(CU)180及與第二調色盤192相關聯之第二PAL CU 188的圖像178。如下文將較詳細描述且根據本發明之技術,第二調色盤192係基於第一調色盤184。圖像178亦包括藉由框內預測寫碼模式寫碼之區塊196及藉由框間預測寫碼模式寫碼之區塊200。
出於解釋之目的,在視訊編碼器20(圖1及圖2)及視訊解碼器30(圖1及圖3)之上下文中並關於HEVC視訊寫碼標準描述圖4之技術。然而,應理解本發明之技術不限於此方式,且可藉由其他視訊寫碼處理器及/或器件應用於其他視訊寫碼處理程序及/或標準中。
大體而言,調色盤指代對於當前經寫碼之CU(在圖4之實例中為CU 188)而言為主要的及/或代表性的多個像素值。第一調色盤184(亦可被稱作索引184)及第二調色盤192(亦可被稱作索引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之表示僅為一個實例且不意欲為限制性的。
在圖4之實例中,第一調色盤184包括分別具有條目索引值1、條目索引值2及條目索引值3的三個條目202至206。第一調色盤184使得索引值(例如,第一調色盤184之左行中展示之值)與像素值相關。舉例而言,如圖4中所展示,第一調色盤184中之一者使索引值1、2及3分別與像素值A、B及C相關。如本文中所描述,視訊寫碼器(諸如,視訊編碼器20或視訊解碼器30)可使用基於調色盤之寫碼對使用索引1至3(亦可表達為索引值1至3)之區塊之像素進行寫碼,而不是寫碼第一CU 180之實際像素值。亦即,對於第一CU 180之每一像素位置,視訊編碼器20可編碼用於像素之索引值,其中索引值與第一調色盤184中之一或多者中的像素值相關聯。視訊解碼器30可自位元串流獲得索引值並使用索引值及第一調色盤184中之一或多者重建構像素值。因此,第一調色盤184係藉由視訊編碼器20在經編碼視訊資料位元串流中傳輸以供視訊解碼器30在基於調色盤之解碼時使用。
在一些實例中,視訊編碼器20及視訊解碼器30可基於第一調色盤184來判定第二調色盤192。舉例而言,視訊編碼器20及/或視訊解碼器30可定位判定預測性調色盤(在此實例中,第一調色盤184)所依據的一或多個區塊。在一些實例(諸如圖4中所繪示之實例)中,視訊 編碼器20及/或視訊解碼器30可在判定第二CU 188之預測性調色盤時定位先前經寫碼之CU,諸如左側相鄰CU(第一CU 180)。
在圖4之實例中,第二調色盤192包括分別具有條目索引值1、條目索引值2及條目索引值3的三個條目208至212。第二調色盤192使索引值(例如,第一調色盤192之左行中展示之值)與像素值相關。舉例而言,如圖4中所展示,第二調色盤192中之一者使索引值1、2及3分別與像素值A、B及D相關。在此實例中,視訊編碼器20可寫碼指示第一調色盤184之哪些條目包括於第二調色盤192中的一或多個語法元素。在圖4之實例中,一或多個語法元素作為向量216說明。向量216具有多個相關聯二進位(或位元),其中每一二進位指示與彼二進位相關聯之調色盤預測因子是否用於預測當前調色盤之條目。舉例而言,向量216指示第一調色盤184中的前兩個條目(202及204)包括於第二調色盤192中(向量216中之值「1」),而第一調色盤184中之第三條目不包括於第二調色盤192中(向量216中之值「0」)。在圖4之實例中,向量為布林(Boolean)向量。
在一些實例中,視訊編碼器20及視訊解碼器30可在執行調色盤預測時判定調色盤預測因子清單(其亦可被稱作調色盤預測因子表)。調色盤預測因子清單可包括來自用以預測用於寫碼當前區塊之調色盤之一或多個條目之一或多個相鄰區塊的調色盤的條目。視訊編碼器20及視訊解碼器30可以相同方式來建構清單。視訊編碼器20及視訊解碼器30可寫碼資料(諸如向量216)以指示調色盤預測因子清單之哪些條目將包括於用於寫碼當前區塊之調色盤中。
圖5為繪示符合本發明之技術的判定至用於像素之區塊的調色盤之索引之實例的概念圖。舉例而言,圖5包括索引區塊240(亦可被稱作映射240或索引映射240),該索引區塊包括使與索引值相關聯之像素之各別位置相關於調色盤244之條目的索引值(例如,索引值1、2及 3)。
雖然索引區塊240在圖5之實例中說明為包括每一像素位置之索引值,但應理解在其他實例中,並非全部像素位置可與使像素值與調色盤244之條目相關的索引值相關聯。亦即,如上文所提到,在一些實例中,若像素值並不包括於調色盤244中,則視訊編碼器20可編碼(且視訊解碼器30可自經編碼位元串流獲得)用於索引區塊240中之位置之實際像素值(或其經量化版本)之指示。
在一些實例中,視訊編碼器20及視訊解碼器30可經組態以寫碼指示哪些像素位置與哪些索引值相關聯的額外映射。舉例而言,假定索引區塊240中之(i,j)條目對應於CU之(i,j)位置。視訊編碼器20可編碼用於指示條目是否具有相關聯索引值之索引區塊(亦即,每一像素位置)之每一條目的一或多個語法元素。舉例而言,視訊編碼器20可編碼具有值為一之旗標以指示在CU中之(i,j)位置處之像素值為調色盤244中之值中之一者。
在此實例中,視訊編碼器20亦可編碼調色盤(圖5之實例中展示為244)。在調色盤244包括單個條目及相關聯像素值之情況下,視訊編碼器20可跳過索引值之信號傳遞。視訊編碼器20可編碼具有零值之旗標以指示在CU中之(i,j)位置處的像素值並非調色盤244中之值中的一者。在此實例中,視訊編碼器20亦可編碼像素值之指示以供視訊解碼器30用於重構像素值。在一些情況下,可以有損方式寫碼像素值。
CU之一個位置中的像素之值可提供CU之其他位置中的一或多個其他像素之值的指示。舉例而言,可存在CU之相鄰像素位置將具有相同像素值或可映射至相同索引值(在有損寫碼情況下,其中一個以上像素值可映射至單個索引值)的相對高機率。
因此,視訊編碼器20可編碼指示按給定掃描次序之具有相同像素值或索引值的多個連續像素或索引值的一或多個語法元素。如上文 所提到,相同值像素或索引值之字串可在本文中稱為延行。在出於說明之目的之實例中,若按給定掃描次序之兩個連續像素或索引具有不同值,則延行等於零。若按給定掃描次序之兩個連續像素或索引具有相同值但按掃描次序之第三像素或索引具有不同值,則延行等於一。對於具有相同值之三個連續索引或像素,延行為二,等等。視訊解碼器30可自經編碼之位元串流獲得指示延行的語法元素,並可使用資料以判定具有相同像素或索引值的連續位置之數目。
在根據本發明之技術的一些實例中,熵編碼單元118及熵解碼單元150可經組態以對索引區塊240進行熵寫碼。舉例而言,熵編碼單元118及熵解碼單元150可經組態以對延行長度(例如,延行長度值或延行長度碼)及/或與調色盤模式中之索引區塊相關之二進位調色盤預測向量進行熵寫碼。
圖6為符合本發明之技術的繪示判定最大上方拷貝延行長度、假定光柵掃描次序之實例的概念圖。在圖6之實例中,若由虛線280涵蓋之像素中無一者經寫碼為逸出樣本,則最大可能延行長度為35(亦即,無陰影之像素位置的數目)。若在虛線280內之像素中之一或多者經寫碼為逸出樣本,假定標記為逸出像素(具有「X」之像素位置)之像素為在虛線280內之在掃描次序中的第一逸出像素,則最大可能經寫碼之上方拷貝延行長度為五。
在一些實例中,視訊解碼器30可僅針對在虛線280內之像素判定延行模式(例如,其中像素經寫碼之調色盤模式)。因此,在最差之情況下,視訊解碼器30為BlockWidth-1像素做出判定。在一些實例中,視訊解碼器30可經組態以實施關於像素(為其檢查延行模式)之最大數目的某些限制。舉例而言,若像素與當前像素處於相同之列,則視訊解碼器30可僅檢查在虛線280內之像素。視訊解碼器30可推斷在虛線280內之所有其他像素未經寫碼為逸出樣品。圖6中之實例假定光柵掃 描次序。然而,該等技術可應用於其他掃描次序,諸如垂直、水平橫移,及垂直橫移。
根據本發明之實例,若當前延行模式為『上方拷貝』,則用於當前像素之延行長度之上下文可取決於相對於當前像素之上方相鄰像素之索引的索引值。在此實例中,若相對於當前像素之上方相鄰像素在當前CU之外側,則視訊解碼器假定相對應的索引等於預定義常數k。在一些實例中,k=0。
在熵寫碼期間,熵編碼器或解碼器可將待編碼或解碼之符號之位元安置為一或多個二進位。二進位可指示符號之值是否等於零。熵寫碼器或熵解碼器可使用二進位之值來調整熵寫碼處理程序。在一些實例中,熵編碼器或熵解碼器亦可使用二進位來指示值是否大於特定值,例如,大於零、大於一,等等。
在一些實例中,若當前模式為『上方拷貝』,則延行長度碼字之第一二進位基於相對於當前樣本(例如,像素)之上方相鄰樣本(例如,像素)是否等於0而選擇兩個候選CABAC上下文中之一者。
作為另一實例,若當前模式為『先前複本』,則延行長度碼字之第一二進位基於索引值是否等於0、等於1、等於2或大於2來選擇四個候選CABAC上下文中之一者。
圖8為繪示符合本發明之技術之用於解碼視訊資料之實例處理程序的流程圖。出於說明之目的,通常將圖8之處理程序描述為由視訊解碼器30執行,但多種其他處理器亦可執行圖8中所展示之程序。在一些實例中,區塊解碼單元152、基於調色盤之解碼單元165及/或熵解碼單元150可執行圖8中展示的一或多個處理程序。
在圖8之實例中,視訊解碼器30可經組態以自經編碼視訊位元串流接收圖像之經調色盤模式編碼之視訊資料區塊(800)。視訊解碼器30可經組態以自經編碼視訊位元串流接收用於經調色盤模式編碼之視 訊資料區塊的經編碼調色盤模式資訊(802)。在一些實例中,經編碼調色盤模式資訊可包括第一語法元素之複數個實例及不同於第一語法元素之複數個語法元素。舉例而言,第一語法元素可包括palette_index_idc或palette_escape_val,且不同於第一語法元素之複數個語法元素可包括palette_run_msb_id_plus1語法元素。作為另一實例,第一語法元素可為對調色盤條目之陣列之索引的指示,或第一語法元素可指定用於對應於逸出樣本之色彩分量的經量化之逸出經寫碼樣本值。不同於第一語法元素之複數個語法元素可包括指定表示延行長度之變數之二進位表示中之最高有效位元之索引的語法元素及指定延行類型模式之語法元素。
作為另一實例,不同於第一語法元素之複數個語法元素可為不同於第一語法元素之任何語法元素及所有語法元素。如本文中關於一些實例所描述,不同於第一語法元素之複數個語法元素亦可不同於第二語法元素、第三語法元素及/或第四語法元素。在此等實例中,不同於第一語法元素、第二語法元素、第三語法元素及第四語法元素之複數個語法元素可為不同於第一語法元素、第二語法元素、第三語法元素及/或第四語法元素之任何語法元素及所有語法元素。在一些實例中,不同於第一語法元素之複數個語法元素可為不被旁路模式解碼及/或不被旁路模式解碼的任何語法元素及所有語法元素。
視訊解碼器30可經組態以在使用上下文模式解碼不同於第一語法元素之複數個語法元素之前使用旁路模式(例如,CABAC寫碼處理程序之旁路模式)解碼第一語法元素之複數個例項(804)。視訊解碼器30可經組態以在使用旁路模式解碼第一語法元素之複數個例項之後使用上下文模式(例如,常規CABAC模式(而不是旁路模式))來解碼不同於第一語法元素之複數個語法元素(806)。在一些實例中,第一語法元素之複數個例項包括用於經調色盤模式編碼之視訊資料區塊的第一 語法元素之所有例項。在此等實例中,在解碼任何後續資料(諸如,不同於第一語法元素之複數個語法元素)之前使用旁路模式解碼第一語法元素之所有例項。以其他方式陳述,視訊解碼器30可經組態以在使用旁路模式解碼用於經調色盤模式編碼之視訊資料區塊的第一語法元素之所有例項之後使用上下文模式解碼不同於第一語法元素之複數個語法元素。
視訊解碼器30可經組態以使用第一語法元素之經解碼之複數個例項及不同於第一語法元素之經解碼之複數個語法元素來解碼經調色盤模式編碼之視訊資料區塊(808)。在一些實例中,第一語法元素之複數個例項被分組在一起,以使得當解碼經調色盤模式編碼之視訊資料區塊時在旁路模式與上下文模式之間的切換減少。
在一些實例中,經編碼調色盤模式資訊可包括指示第一語法元素之實例之數目(例如,指示存在多少第一語法元素之例項用於經調色盤模式編碼之視訊資料區塊)之第二語法元素。不同於第一語法元素之複數個語法元素亦可不同於第二語法元素。在此等實例中,視訊解碼器30可經組態以在解碼不同於第一語法元素及第二語法元素之複數個語法元素之前使用旁路模式解碼第二語法元素。在一些實例中,無第二語法元素之例項在用於經調色盤模式編碼之視訊資料區塊的第一語法元素之任何兩個例項之間交錯。在一些實例中,視訊解碼器30可經組態以在解碼等於由第二語法元素指示之數目的第一語法元素之多個例項之後,判定在經編碼視訊位元串流中在第一語法元素之例項之數目之後的後續資料對應於不同於第一語法元素及第二語法元素之複數個語法元素。在一些實例中,視訊解碼器30可經組態以使用截短萊斯碼與指數哥倫布碼之串聯來解碼第二語法元素。
在一些實例中,經編碼調色盤模式資訊可包括第三語法元素及第四語法元素。在此等實例中,視訊解碼器30可經組態以解碼第三語 法元素從而判定對應於第三語法元素的值指示經調色盤模式編碼之視訊資料區塊是否包括逸出像素。視訊解碼器30可經組態以解碼第四語法元素從而判定對應於第四語法元素的值指示調色盤大小。視訊解碼器30可經組態以在使用旁路模式解碼第一語法元素及第二語法元素之複數個例項之後,基於所判定之分別對應於第三語法元素及第四語法元素之值使用上下文模式解碼不同於第一語法元素及第二語法元素之複數個語法元素。
在一些實例中,經編碼調色盤模式資訊可包括另一語法元素,且視訊解碼器30可經組態以解碼此其他語法元素以判定對應於此其他語法元素的值,此其他語法元素指定調色盤索引針對經調色盤模式編碼之視訊資料區塊所具有的不同值之數目。視訊解碼器30可經組態以在使用旁路模式解碼第一語法元素及第二語法元素之複數個例項之後基於對應於此其他語法元素之所判定之值使用上下文模式解碼不同於第一語法元素及第二語法元素之複數個語法元素。
在一些實例中,經編碼調色盤模式資訊可包括另一語法元素,且視訊解碼器30可經組態以解碼此其他語法元素以判定對應於此其他語法元素之值指示用於經調色盤模式編碼之視訊資料區塊之palette_run_type_flag[xC][yC]之語法元素之最末例項。
在一些實例中,視訊解碼器30可經組態以判定經編碼視訊資料區塊具有一或多個逸出樣本。在此等實例中,視訊解碼器30可經組態以解碼經編碼視訊資料區塊中之一或多個逸出樣本中之最末逸出樣本。視訊解碼器30可經組態以推斷適用於經編碼視訊資料區塊之在最末逸出樣本之後的樣本之索引值。視訊解碼器30可經組態以使用用於最末逸出樣本之後的樣本之每一樣本的所推斷索引值來解碼經編碼視訊資料區塊之最末逸出樣本之後的樣本。
在一些實例中,視訊解碼器30可經組態以判定所接收之調色盤 索引之數目。在此等實例中,視訊解碼器30可經組態以基於所接收之調色盤索引之數目及第一語法元素之例項之數目而判定剩餘調色盤索引之數目。視訊解碼器30可經組態以基於所接收之調色盤索引之數目及第一語法元素之例項之數目而判定用於經編碼視訊資料區塊之最大可能延行值。在一些實例中,視訊解碼器30可經組態以根據nCbS * nCbS-scanPos-1-paletteIndicesLeft判定用於經編碼視訊資料區塊之最大可能延行值,其中nCbS指定經編碼視訊資料區塊之大小,scanPos指定掃描位置,且paletteIndicesLeft指定剩餘調色盤索引之數目。
圖9為繪示符合本發明之技術的用於編碼視訊資料之實例處理程序的流程圖。出於說明之目的,通常將圖9之處理程序描述為由視訊編碼器20執行,但多種其他處理器亦可執行圖9中所展示之處理程序。在一些實例中,區塊編碼單元100、基於調色盤之編碼單元122及/或熵編碼單元118可執行圖9中展示的一或多個處理程序。
在圖9之實例中,視訊編碼器20可經組態以判定視訊資料區塊將以調色盤模式編碼(900)。視訊編碼器20可經組態以使用調色盤模式將視訊資料區塊編碼成經編碼位元串流(902)。在一些實例中,視訊編碼器20可經組態以產生用於視訊資料區塊之調色盤模式資訊(904)。調色盤模式資訊可包括第一語法元素之複數個實例及不同於第一語法元素之複數個語法元素。舉例而言,第一語法元素可包括palette_index_idc或palette_escape_val,且不同於第一語法元素之複數個語法元素可包括palette_run_msb_id_plus1語法元素。作為另一實例,第一語法元素可為對調色盤條目之陣列之索引的指示,或第一語法元素可指定用於對應於逸出樣本之色彩分量的經量化之逸出經寫碼樣本值。不同於第一語法元素之複數個語法元素可包括指定表示延行長度之變數之二進位表示中之最高有效位元之索引的語法元素及指定延行類型模式之語法元素。
作為另一實例,不同於第一語法元素之複數個語法元素可為不同於第一語法元素之任何語法元素及所有語法元素。如本文中關於一些實例所描述,不同於第一語法元素之複數個語法元素亦可不同於第二語法元素、第三語法元素及/或第四語法元素。在此等實例中,不同於第一語法元素、第二語法元素、第三語法元素及第四語法元素之複數個語法元素可為不同於第一語法元素、第二語法元素、第三語法元素及/或第四語法元素之任何語法元素及所有語法元素。在一些實例中,不同於第一語法元素之複數個語法元素可為不被旁路模式編碼及/或不被旁路模式編碼之任何語法元素及所有語法元素。
視訊編碼器20可經組態以在使用上下文模式將不同於第一語法元素之複數個語法元素編碼成經編碼位元串流之前使用旁路模式(例如,CABAC寫碼處理程序之旁路模式)來將第一語法元素之複數個例項編碼成經編碼位元串流(906)。視訊編碼器20可經組態以在使用旁路模式將第一語法元素之複數個例項編碼成經編碼位元串流之後使用上下文模式(例如,常規的基於CABAC上下文之模式)將不同於第一語法元素之複數個語法元素編碼成經編碼位元串流(908)。在一些實例中,第一語法元素之複數個例項被分組在一起,以使得當編碼經調色盤模式編碼之視訊資料區塊時在旁路模式與上下文模式之間的切換減少。
在一些實例中,第一語法元素之複數個實例包括用於視訊資料區塊之第一語法元素之所有例項。在此等實例中,在編碼任何後續資料(諸如,不同於第一語法元素之複數個語法元素)之前使用旁路模式編碼第一語法元素之所有例項。以其他方式陳述,視訊編碼器20可經組態以在使用旁路模式編碼用於視訊資料區塊之第一語法元素之所有例項之後使用上下文模式編碼不同於第一語法元素之複數個語法元素。
在一些實例中,調色盤模式資訊可包括指示第一語法元素之例項之數目的第二語法元素(例如,指示存在用於視訊資料區塊之第一語法元素之例項之數目)。不同於第一語法元素之複數個語法元素亦可不同於第二語法元素。在此等實例中,視訊編碼器20可經組態以在編碼不同於第一語法元素及第二語法元素之複數個語法元素之前使用旁路模式將第二語法元素編碼成經編碼位元串流。在一些實例中,視訊編碼器20可經組態以編碼第一語法元素之複數個例項,以使得無第二語法元素之例項在用於經編碼位元串流中之經調色盤模式編碼之視訊資料區塊的第一語法元素之任何兩個例項之間交錯。在一些實例中,視訊編碼器20可經組態以在經編碼位元串流中之第一語法元素之經編碼之複數個例項之後將第二語法元素編碼成經編碼位元串流。舉例而言,視訊編碼器20可經組態以首先編碼第一語法元素之所有例項,且隨後將第二語法元素編碼成經編碼位元串流。在一些實例中,視訊編碼器20可經組態以使用截短萊斯碼與指數哥倫布碼之串聯來編碼第二語法元素。
在一些實例中,調色盤模式資訊可包括第三語法元素及第四語法元素。在此等實例中,視訊編碼器20可經組態以將對應於第三語法元素的值編碼成經編碼位元串流,該第三語法元素指示視訊資料區塊是否包括逸出像素。視訊編碼器20可經組態以使對應於第四語法元素之指示調色盤大小之值成為經編碼位元串流。在一些實例中,調色盤模式資訊可包括另一語法元素,且視訊編碼器20可經組態以將對應於指定調色盤索引針對視訊資料區塊所具有之不同值之數目之此其他語法元素的值編碼成經編碼位元串流。
在一些實例中,經編碼調色盤模式資訊可包括另一語法元素,且視訊編碼器20可經組態以編碼對應於此其他語法元素的值,此其他語法元素指示用於視訊資料區塊之palette_run_type_flag[xC][yC]之語 法元素之最末例項。
在一些實例中,視訊編碼器20可經組態以編碼視訊資料區塊中之一或多個逸出樣本中的最末逸出樣本。在此等實例中,視訊編碼器20可經組態以推斷適用於之視訊資料區塊之在最末逸出樣本之後的樣本之索引值。視訊編碼器20可經組態以使用用於最末逸出樣本之後的樣本中之每一樣本的所推斷索引值來編碼視訊資料區塊之在最末逸出樣本之後的樣本。
應理解,本文所描述之所有技術可單獨地或以組合方式使用。舉例而言,視訊編碼器20及/或其一或多個組件及視訊解碼器30及/或其一或多個組件可以任何組合執行本發明中所描述之技術。
應認識到,取決於實例,本文中所描述之技術中之任一者的某些動作或事件可以不同序列執行、可添加、合併或完全省略(例如,並非所有所描述動作或事件對於該等技術之實踐係必要的)。此外,在某些實例中,可(例如)經由多執行緒處理、中斷處理或多個處理器同時而非依序執行動作或事件。另外,儘管出於清晰之目的,本發明之某些態樣被描述為由單一模組或單元執行,但應理解,本發明之技術可藉由與視訊寫碼器相關聯之單元或模組之組合來執行。
出於說明之目的,已關於發展中HEVC標準而描述本發明之某些態樣。然而,本發明中所描述之技術可適用於其他視訊寫碼處理程序,包括尚未開發之其他標準或專屬視訊寫碼處理程序。
上文所描述之技術可藉由視訊編碼器20(圖1及圖2)及/或視訊解碼器30(圖1及圖3)執行,兩者通常可稱作視訊寫碼器。同樣地,視訊寫碼在適用時可指代視訊編碼或視訊解碼。
根據本發明,術語「或」可解譯為「及/或」,其中上下文並不以其他方式指示。另外,雖然諸如「一或多個」或「至少一個」或其類似者之片語可已被用於本文中所揭示之一些特徵(但並非其他者);並 未使用此語言之特徵可解釋為具有暗示上下文並不以其他方式指示的此含義。
雖然在上文所描述技術的各種態樣之特定組合,但提供此等組合僅為了說明本發明中描述的技術之實例。因此,本發明之技術不應限於此等實例組合且可涵蓋本發明中描述之技術的各種態樣之任何可設想組合。
在一或多個實例中,所描述功能可以硬體、軟體、韌體或其任何組合來實施。若以軟體實施,則該等功能可作為一或多個指令或碼而儲存於電腦可讀媒體上或經由電腦可讀媒體傳輸,且由基於硬體之處理單元執行。電腦可讀媒體可包括電腦可讀儲存媒體(其對應於有形媒體(諸如資料儲存媒體)),或包括有助於(例如)根據通信協定將電腦程式自一處傳送至另一處的任何媒體之通信媒體。以此方式,電腦可讀媒體大體可對應於(1)非暫時性之有形電腦可讀儲存媒體,或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或多個電腦或一或多個處理器存取以擷取用於實施本發明中所描述之技術的指令、程式碼及/或資料結構的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
借助於實例而非限制,此電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器件、磁碟儲存器件或其他磁性儲存器件、快閃記憶體,或可用以儲存呈指令或資料結構形式之所要程式碼且可由電腦存取的任何其他媒體。又,將任何連接恰當地稱為電腦可讀媒體。舉例而言,若使用同軸纜線、光纖纜線、雙絞線、數位用戶線(DSL)或諸如紅外線、無線電及微波之無線技術自網站、伺服器或其他遠端源傳輸指令,則同軸纜線、光纖纜線、雙絞線、DSL或諸如紅外線、無線電及微波之無線技術包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、 載波、信號或其他暫時性媒體,而實際上有關於非暫時性有形儲存媒體。如本文所使用之磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位多功能光碟(DVD)、軟性磁碟及藍光光碟,其中磁碟通常以磁性方式再生資料,而光碟用雷射以光學方式再生資料。以上各物之組合亦應包括於電腦可讀媒體之範疇內。
可藉由一或多個處理器來執行指令,該一或多個處理器諸如一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)或其他等效的整合或離散邏輯電路。因此,如本文中所使用之術語「處理器」可指前述結構或適於實施本文中所描述之技術的任何其他結構中之任一者。另外,在一些態樣中,可在經組態用於編碼及解碼之專用硬體及/或軟體模組內提供本文中所描述之功能性,或將本文中所描述之功能性併入於組合式編解碼器中。又,該等技術可完全實施於一或多個電路或邏輯元件中。
本發明之技術可以多種器件或裝置予以實施,該等器件或裝置包括無線手機、積體電路(IC)或IC之集合(例如,晶片組)。本發明中描述各種組件、模組或單元以強調經組態以執行所揭示技術之器件的功能性態樣,但未必要求由不同硬體單元來實現。實情為,如上文所描述,各種單元可組合於編解碼器硬體單元中,或結合合適軟體及/或韌體藉由互操作性硬體單元(包括如上所述之一或多個處理器)之集合來提供。
本文中已描述各種實例。涵蓋所描述之系統、操作、功能或實例之任何組合。此等及其他實例處於以下申請專利範圍之範疇內。
800‧‧‧區塊
802‧‧‧區塊
804‧‧‧區塊
806‧‧‧區塊
808‧‧‧區塊

Claims (42)

  1. 一種解碼視訊資料之方法,該方法包含:自一經編碼視訊位元串流接收一圖像之一經調色盤模式編碼之視訊資料區塊;自該經編碼視訊位元串流接收用於該經調色盤模式編碼之視訊資料區塊之經編碼調色盤模式資訊,其中該經編碼調色盤模式資訊包括一第一語法元素之複數個例項及不同於該第一語法元素之複數個語法元素,其中該第一語法元素為對調色盤條目之一陣列之一索引的一指示或指定用於對應於一逸出樣本之一色彩分量的一經量化之逸出經寫碼樣本值,且其中不同於該第一語法元素之該複數個語法元素包括指定表示延行長度之一變數之一二進位表示中之一最高有效位元之一索引的一語法元素及指定一延行類型模式之一語法元素;在剖析不同於自該經編碼視訊位元串流之該第一語法元素之該複數個語法元素之前剖析自該經編碼視訊位元串流之該第一語法元素之該複數個例項;在剖析自該經編碼視訊位元串流之該第一語法元素之該複數個例項之後剖析不同於自該經編碼視訊位元串流之該第一語法元素之該複數個語法元素;使用一基於上下文之適應性二進位算術寫碼旁路模式解碼該第一語法元素之該複數個例項;使用一基於上下文之適應性二進位算術寫碼上下文模式解碼不同於該第一語法元素之該複數個語法元素;及使用該第一語法元素之該經解碼之複數個例項及不同於該第一語法元素之該經解碼之複數個語法元素來解碼該經調色盤模 式編碼之視訊資料區塊。
  2. 如請求項1之方法,其中該第一語法元素之該複數個例項包括用於該經調色盤模式編碼之視訊資料區塊的該第一語法元素之所有例項。
  3. 如請求項1之方法,其中該第一語法元素為表示該調色盤之一個別調色盤條目之一索引的一palette_index_idc語法元素或表示一經保留以用於逸出樣本之索引值的一palette_escape_val語法元素,該等逸出樣本係由色彩資訊表示而非由該調色盤之該等調色盤例項之任一者表示,且其中不同於該第一語法元素之該複數個語法元素包括指示該調色盤之該等調色盤索引之一子集之一延行長度的一palette_run_msb_id_plus1語法元素。
  4. 如請求項1之方法,其中在表示該經調色盤模式編碼之區塊之資料的一開始時該第一語法元素之該複數個例項被分組在一起,以使得相對於重建構該經調色盤模式編碼之區塊自使用該旁路模式解碼至使用該上下文模式上下文模式解碼的切換正好發生一次。
  5. 如請求項1之方法,其中該經編碼調色盤模式資訊包括指示在表示該經編碼視訊位元串流中之該經調色盤模式編碼之區塊之資料中之該第一語法元素之例項之一數目的一第二語法元素,其中不同於該第一語法元素之該複數個語法元素也不同於該第二語法元素,且其中該方法進一步包含:在剖析不同於自該經編碼視訊位元串流之該第一語法元素及該第二語法元素之該複數個語法元素之前剖析自該經編碼視訊位元串流之該第二語法元素;及使用該基於上下文之適應性二進位算術寫碼旁路模式解碼該第二語法元素。
  6. 如請求項5之方法,其中在用於該經調色盤模式編碼之視訊資料區塊的該第一語法元素之任何兩個例項之間無該第二語法元素之例項交錯。
  7. 如請求項5之方法,其進一步包含:在解碼等於由該第二語法元素指示之該數目的該第一語法元素之例項之一數目之後判定在該經編碼視訊位元串流中之在該第一語法元素之例項之該數目之後的後續資料對應於不同於該第一語法元素及該第二語法元素之該複數個語法元素。
  8. 如請求項5之方法,其中該經編碼調色盤模式資訊包括一第三語法元素及一第四語法元素,其中該方法進一步包含:解碼該第三語法元素以判定對應於該第三語法元素之一值指示該經調色盤模式編碼之視訊資料區塊是否包括一逸出樣本;解碼該第四語法元素以判定對應於該第四語法元素之一值指示調色盤大小;及基於分別對應於該第三語法元素及該第四語法元素之該所判定之值使用該基於上下文之適應性二進位算術寫碼上下文模式來解碼不同於該第一語法元素及該第二語法元素之該複數個語法元素。
  9. 如請求項5之方法,其中該經編碼調色盤模式資訊包括一第三語法元素,其中該方法進一步包含:解碼該第三語法元素以判定對應於該第三語法元素之一值,該第三語法元素指定一調色盤索引針對該經調色盤模式編碼之視訊資料區塊所具有之不同值之一數目;及基於對應於該第三語法元素之該所判定之值使用該基於上下文之適應性二進位算術寫碼上下文模式解碼不同於該第一語法元素及該第二語法元素之該複數個語法元素。
  10. 如請求項5之方法,其中該經編碼調色盤模式資訊包括一第三語法元素,其中該方法進一步包含:解碼該第三語法元素以判定對應於該第三語法元素之一值指示用於該經調色盤模式編碼之視訊資料區塊之palette_run_type_flag[xC][yC]之一語法元素的一最末例項。
  11. 如請求項5之方法,其進一步包含:使用截短萊斯碼與指數哥倫布碼之一串聯來解碼該第二語法元素。
  12. 如請求項5之方法,其進一步包含:判定所接收之調色盤索引之一數目;基於所接收之調色盤索引之該數目及該第一語法元素之例項之該數目判定剩餘調色盤索引之一數目;及基於所接收之調色盤索引之該數目及該第一語法元素之例項之該數目判定用於表示延行長度之該變數之一值等於用於該經調色盤模式編碼之視訊資料區塊之一最大可能延行值。
  13. 如請求項12之方法,其中用於該經調色盤模式編碼之視訊資料區塊之該最大可能延行值等於:nCbS*nCbS-scanPos-1-paletteIndicesLeft,其中nCbS指定該經調色盤模式編碼之視訊資料區塊之一大小,其中scanPos指定一掃描位置,且其中paletteIndicesLeft指定剩餘調色盤索引之該數目。
  14. 如請求項1之方法,其進一步包含:判定該經調色盤模式編碼之視訊資料區塊具有一或多個逸出樣本;解碼該經調色盤模式編碼之視訊資料區塊中之該一或多個逸出樣本中的一最末逸出樣本;推斷適用於該經調色盤模式編碼之視訊資料區塊之該最末逸 出樣本之後的樣本的一索引值;及使用在該最末逸出樣本之後的該等樣本中之每一樣本之該所推斷索引值來解碼該經調色盤模式編碼之視訊資料區塊之在該最末逸出樣本之後的該等樣本。
  15. 一種用於解碼視訊資料之器件,該器件包含:經組態以儲存該視訊資料之一記憶體;及與該記憶體通信之一視訊解碼器,該視訊解碼器經組態以:自該記憶體接收一圖像之一經調色盤模式編碼之視訊資料區塊;接收用於該經調色盤模式編碼之視訊資料區塊的經編碼調色盤模式資訊,其中該經編碼調色盤模式資訊包括一第一語法元素之複數個例項及不同於該第一語法元素之複數個語法元素,其中該第一語法元素為對調色盤條目之一陣列之一索引的一指示或指定用於對應於一逸出樣本之一色彩分量的一經量化之逸出經寫碼樣本值,且其中不同於該第一語法元素之該複數個語法元素包括指定表示延行長度之一變數之一二進位表示中之一最高有效位元之一索引的一語法元素及指定一延行類型模式之一語法元素;在剖析不同於自該經編碼調色盤模式資訊之該第一語法元素之該複數個語法元素之前剖析自該經編碼調色盤模式資訊之該第一語法元素之該複數個例項;在剖析自該經編碼調色盤模式資訊之該第一語法元素之該複數個例項之後剖析不同於自該經編碼調色盤模式資訊之該第一語法元素之該複數個語法元素;使用一基於上下文之適應性二進位算術寫碼旁路模式解碼該第一語法元素之該複數個例項; 使用一基於上下文之適應性二進位算術寫碼上下文模式解碼不同於該第一語法元素之該複數個語法元素;及使用該第一語法元素之該經解碼之複數個例項及不同於該第一語法元素之該經解碼之複數個語法元素來解碼該經調色盤模式編碼之視訊資料區塊。
  16. 如請求項15之器件,其中該第一語法元素之該複數個例項包括用於該經調色盤模式編碼之視訊資料區塊的該第一語法元素之所有例項。
  17. 如請求項15之器件,其中該第一語法元素為palette_index_idc或palette_escape_val,且其中不同於該第一語法元素之該複數個語法元素包括一palette_run_msb_id_plus1語法元素。
  18. 如請求項15之器件,其中該第一語法元素之該複數個例項被分組在一起,以使得當解碼該經調色盤模式編碼之視訊資料區塊時在該基於上下文之適應性二進位算術寫碼旁路模式與該基於上下文之適應性二進位算術寫碼上下文模式之間的切換減少。
  19. 如請求項15之器件,其中該經編碼調色盤模式資訊包括指示該第一語法元素之例項之一數目的一第二語法元素,其中不同於該第一語法元素之該複數個語法元素也不同於該第二語法元素,且其中該視訊解碼器經進一步組態以:在剖析不同於自該經編碼調色盤模式資訊之該第一語法元素及該第二語法元素之該複數個語法元素之前剖析自該經編碼調色盤模式資訊之該第二語法元素;及使用該基於上下文之適應性二進位算術寫碼旁路模式解碼該第二語法元素。
  20. 如請求項19之器件,其中在用於該經調色盤模式編碼之視訊資料之區塊的該第一語法元素之任何兩個例項之間無該第二語法 元素之例項交錯。
  21. 如請求項19之器件,其中該視訊解碼器經進一步組態以在解碼等於由該第二語法元素指示之該數目的該第一語法元素之例項之一數目之後判定在該經編碼視訊位元串流中之在該第一語法元素之例項之該數目之後的後續資料對應於不同於該第一語法元素及該第二語法元素之該複數個語法元素。
  22. 如請求項19之器件,其中該經編碼調色盤模式資訊包括一第三語法元素及一第四語法元素,其中該視訊解碼器經進一步組態以:解碼該第三語法元素以判定對應於該第三語法元素之一值指示該經調色盤模式編碼之視訊資料之區塊是否包括一逸出樣本;解碼該第四語法元素以判定對應於該第四語法元素之一值指示調色盤大小;及基於分別對應於該第三語法元素及該第四語法元素之該所判定之值使用該基於上下文之適應性二進位算術寫碼上下文模式來解碼不同於該第一語法元素及該第二語法元素之該複數個語法元素。
  23. 如請求項19之器件,其中該經編碼調色盤模式資訊包括一第三語法元素,其中該視訊解碼器經進一步組態以:解碼該第三語法元素以判定對應於該第三語法元素之一值,該第三語法元素指定一調色盤索引針對該經調色盤模式編碼之視訊資料區塊所具有之不同值之一數目;及基於對應於該第三語法元素之該所判定之值使用該基於上下文之適應性二進位算術寫碼上下文模式解碼不同於該第一語法元素及該第二語法元素之該複數個語法元素。
  24. 如請求項19之器件,其中該經編碼調色盤模式資訊包括一第三語法元素,其中該視訊解碼器經進一步組態以:解碼該第三語法元素以判定對應於該第三語法元素之一值指示用於視訊資料之該經調色盤模式編碼區塊之palette_run_type_flag[xC][yC]之一語法元素的一最末例項。
  25. 如請求項19之器件,其中該視訊解碼器經進一步組態以:使用截短萊斯碼與指數哥倫布碼之一串聯來解碼該第二語法元素。
  26. 如請求項19之器件,其中該視訊解碼器經進一步組態以:判定所接收之調色盤索引之一數目;基於所接收之調色盤索引之該數目及該第一語法元素之例項之該數目判定剩餘調色盤索引之一數目;及基於所接收之調色盤索引之該數目及該第一語法元素之例項之該數目判定用於表示延行長度之該變數之一值等於用於該經調色盤模式編碼之視訊資料區塊之一最大可能延行值。
  27. 如請求項26之器件,其中用於該經調色盤模式編碼之視訊資料區塊之該最大可能延行值等於:nCbS*nCbS-scanPos-1-paletteIndicesLeft,其中nCbS指定該經調色盤模式編碼之視訊資料區塊之一大小,scanPos指定掃描位置,且paletteIndicesLeft指定剩餘調色盤索引之該數目。
  28. 如請求項15之器件,其中該視訊解碼器經進一步組態以:判定該經調色盤模式編碼之視訊資料區塊具有一或多個逸出樣本;解碼該經調色盤模式編碼之視訊資料區塊中之該一或多個逸出樣本中的一最末逸出樣本;推斷適用於該經調色盤模式編碼之視訊資料區塊之該最末逸 出樣本之後的樣本的一索引值;及使用在該最末逸出樣本之後的該等樣本中之每一樣本之該所推斷索引值來解碼該經編碼之視訊資料區塊之在該最末逸出樣本之後的該等樣本。
  29. 一種非暫時性電腦可讀儲存媒體,其中儲存有指令,該等指令在執行時使得一或多個處理器:自一記憶體接收一圖像之一經調色盤模式編碼之視訊資料區塊;接收用於該經調色盤模式編碼之視訊資料區塊的經編碼調色盤模式資訊,其中該經編碼調色盤模式資訊包括一第一語法元素之複數個例項及不同於該第一語法元素之複數個語法元素,其中該第一語法元素為對調色盤條目之一陣列之一索引的一指示或指定用於對應於一逸出樣本之一色彩分量的一經量化之逸出經寫碼樣本值,且其中不同於該第一語法元素之該複數個語法元素包括指定表示延行長度之一變數之一二進位表示中之一最高有效位元之一索引的一語法元素及指定一延行類型模式之一語法元素;在剖析不同於自該經編碼調色盤模式資訊之該第一語法元素之該複數個語法元素之前剖析自該經編碼調色盤模式資訊之該第一語法元素之該複數個例項;在剖析自該經編碼調色盤模式資訊之該第一語法元素之該複數個例項之後剖析不同於自該經編碼調色盤模式資訊之該第一語法元素之該複數個語法元素;在使用一基於上下文之適應性二進位算術寫碼旁路模式解碼該第一語法元素之該複數個例項;在使用旁路模式解碼該第一語法元素之該複數個例項之後使 用一基於上下文之適應性二進位算術寫碼上下文模式解碼不同於該第一語法元素之該複數個語法元素;及使用該第一語法元素之該經解碼之複數個例項及不同於該第一語法元素之該經解碼之複數個語法元素來解碼該經調色盤模式編碼之視訊資料區塊。
  30. 一種編碼視訊資料之方法,該方法包含:判定一視訊資料區塊將以調色盤模式經寫碼;使用調色盤模式將該視訊資料區塊編碼成一經編碼位元串流,其中使用調色盤模式編碼該視訊資料區塊包含:產生用於該視訊資料區塊之調色盤模式資訊,其中該調色盤模式資訊包括一第一語法元素之複數個例項及不同於該第一語法元素之複數個語法元素,其中該第一語法元素為對調色盤條目之一陣列之一索引的一指示或指定用於對應於一逸出樣本之一色彩分量的一經量化之逸出經寫碼樣本值,且其中不同於該第一語法元素之該複數個語法元素包括指定表示延行長度之一變數之一二進位表示中之一最高有效位元之一索引的一語法元素及指定一延行類型模式之一語法元素;在使用一基於上下文之適應性二進位算術寫碼上下文模式將不同於該第一語法元素之該複數個語法元素編碼成該經編碼位元串流之前使用一基於上下文之適應性二進位算術寫碼旁路模式將該第一語法元素之該複數個例項編碼成該經編碼位元串流;及在使用該基於上下文之適應性二進位算術寫碼旁路模式將該第一語法元素之該複數個例項編碼成該經編碼位元串流之後使用該基於上下文之適應性二進位算術寫碼上下文模式將不同於該第一語法元素之該複數個語法元素編碼成該經編碼位元串 流。
  31. 如請求項30之方法,其中該第一語法元素之該複數個例項包括用於該視訊資料區塊之該第一語法元素的所有例項。
  32. 如請求項30之方法,其中該第一語法元素為palette_index_idc或palette_escape_val,且其中不同於該第一語法元素之該複數個語法元素包括一palette_run_msb_id_plus1語法元素。
  33. 如請求項30之方法,其中該第一語法元素之該複數個例項被分組在一起,以使得當編碼該經調色盤模式編碼之視訊資料區塊時在該基於上下文之適應性二進位算術寫碼旁路模式與該基於上下文之適應性二進位算術寫碼上下文模式之間的切換減少。
  34. 如請求項30之方法,其中該調色盤模式資訊包括指示該第一語法元素之例項之一數目的一第二語法元素,其中不同於該第一語法元素之該複數個語法元素不同於該第二語法元素,且其中該方法進一步包含:在不同於該第一語法元素及該第二語法元素之該複數個語法元素之該編碼之前使用該基於上下文之適應性二進位算術寫碼旁路模式將該第二語法元素編碼成該經編碼位元串流。
  35. 如請求項34之方法,其中在用於該視訊資料區塊之該第一語法元素之任何兩個例項之間無該第二語法元素之例項交錯。
  36. 如請求項34之方法,其進一步包含:在該經編碼位元串流中之該第一語法元素之該經編碼之複數個例項之後將該第二語法元素編碼成該經編碼位元串流。
  37. 如請求項34之方法,其中該調色盤模式資訊包括一第三語法元素及一第四語法元素,其中該方法進一步包含:將對應於該第三語法元素之指示該視訊資料區塊是否包括一逸出樣本之一值編碼成該經編碼位元串流;及 將對應於該第四語法元素之指示調色盤大小之一值編碼成該經編碼位元串流。
  38. 如請求項34之方法,其中該調色盤模式資訊包括一第三語法元素,其中該方法進一步包含:將對應於該第三語法元素之一值編碼成該經編碼位元串流,該第三語法元素指定一調色盤索引針對該視訊資料區塊所具有之不同值之一數目。
  39. 如請求項34之方法,其中該調色盤模式資訊包括一第三語法元素,其中該方法進一步包含:編碼對應於該第三語法元素之指示用於該視訊資料區塊之palette_run_type_flag[xC][yC]之一語法元素之一最末例項的一值。
  40. 如請求項34之方法,其進一步包含:使用截短萊斯碼與指數哥倫布碼之一串聯來編碼該第二語法元素。
  41. 如請求項30之方法,其進一步包含:編碼該視訊資料區塊中之該一或多個逸出樣本中的一最末逸出樣本;推斷適用於該視訊資料區塊之該最末逸出樣本之後的樣本的一索引值;及使用在該最末逸出樣本之後的該等樣本中之每一樣本之該所推斷索引值來編碼該視訊資料區塊之在該最末逸出樣本之後的該等樣本。
  42. 一種用於編碼視訊資料之器件,該器件包含:經組態以儲存該視訊資料之一記憶體;及與該記憶體通信之一視訊編碼器,該視訊編碼器經組態以: 判定儲存於該記憶體中之一視訊資料區塊將以調色盤模式經編碼;使用調色盤模式將該視訊資料區塊編碼成一經編碼位元串流,其中經組態以使用調色盤模式編碼該視訊資料區塊之該視訊編碼器包含經組態以進行以下各者之該視訊編碼器:產生用於該視訊資料區塊之調色盤模式資訊,其中該調色盤模式資訊包括一第一語法元素之複數個例項及不同於該第一語法元素之複數個語法元素,其中該第一語法元素為對調色盤條目之一陣列之一索引的一指示或指定用於對應於一逸出樣本之一色彩分量的一經量化之逸出經寫碼樣本值,且其中不同於該第一語法元素之該複數個語法元素包括指定表示延行長度之一變數之一二進位表示中之一最高有效位元之一索引的一語法元素及指定一延行類型模式之一語法元素;在使用一基於上下文之適應性二進位算術寫碼上下文模式將不同於該第一語法元素之該複數個語法元素編碼成該經編碼位元串流之前使用一基於上下文之適應性二進位算術寫碼旁路模式將該第一語法元素之該複數個例項編碼成該經編碼位元串流;及在使用該基於上下文之適應性二進位算術寫碼旁路模式將該第一語法元素之該複數個例項編碼成該經編碼位元串流之後使用該基於上下文之適應性二進位算術寫碼上下文模式將不同於該第一語法元素之該複數個語法元素編碼成該經編碼位元串流。
TW105102961A 2015-01-30 2016-01-29 用於視訊寫碼之調色盤索引分組 TWI714548B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562110302P 2015-01-30 2015-01-30
US62/110,302 2015-01-30
US15/009,477 US9942551B2 (en) 2015-01-30 2016-01-28 Palette index grouping for video coding
US15/009,477 2016-01-28

Publications (2)

Publication Number Publication Date
TW201644273A TW201644273A (zh) 2016-12-16
TWI714548B true TWI714548B (zh) 2021-01-01

Family

ID=55361980

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105102961A TWI714548B (zh) 2015-01-30 2016-01-29 用於視訊寫碼之調色盤索引分組

Country Status (21)

Country Link
US (1) US9942551B2 (zh)
EP (1) EP3251367A1 (zh)
JP (1) JP6782704B2 (zh)
KR (1) KR102465026B1 (zh)
CN (1) CN107211138B (zh)
AU (1) AU2016211327B2 (zh)
CA (1) CA2972617C (zh)
CL (1) CL2017001892A1 (zh)
CO (1) CO2017007499A2 (zh)
EA (1) EA035306B1 (zh)
IL (1) IL253009B (zh)
MX (1) MX369884B (zh)
MY (1) MY183211A (zh)
NZ (1) NZ732997A (zh)
PH (1) PH12017501183A1 (zh)
SA (1) SA517382015B1 (zh)
SG (1) SG11201704982TA (zh)
TN (1) TN2017000310A1 (zh)
TW (1) TWI714548B (zh)
WO (1) WO2016123488A1 (zh)
ZA (1) ZA201705084B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2513111A (en) 2013-04-08 2014-10-22 Sony Corp Data encoding and decoding
US10469870B2 (en) 2014-09-26 2019-11-05 Kt Corporation Method and apparatus for predicting and restoring a video signal using palette entry
KR102470832B1 (ko) 2014-10-20 2022-11-28 주식회사 케이티 비디오 신호 처리 방법 및 장치
SG10202002209TA (en) * 2014-12-19 2020-04-29 Hfi Innovation Inc Methods of palette based prediction for non-444 color format in video and image coding
CN107211143B (zh) 2015-01-15 2020-08-18 株式会社Kt 用于处理视频信号的方法和设备
CN107211153B (zh) 2015-01-29 2020-10-02 株式会社Kt 用于处理视频信号的方法和设备
KR102422484B1 (ko) 2015-01-29 2022-07-20 주식회사 케이티 비디오 신호 처리 방법 및 장치
EP3282706A4 (en) * 2015-04-02 2019-01-30 KT Corporation METHOD AND APPARATUS FOR PROCESSING VIDEO SIGNAL
CN111818344B (zh) * 2015-04-08 2022-05-24 寰发股份有限公司 视频编解码中调色板模式上下文编解码和二值化的方法
US20180213222A1 (en) * 2015-05-27 2018-07-26 Kt Corporation Method and device for processing video signal
US10148977B2 (en) * 2015-06-16 2018-12-04 Futurewei Technologies, Inc. Advanced coding techniques for high efficiency video coding (HEVC) screen content coding (SCC) extensions
US10129558B2 (en) * 2015-09-21 2018-11-13 Qualcomm Incorporated Supplement enhancement information (SEI) messages for high dynamic range and wide color gamut video coding
US10244249B2 (en) 2015-09-21 2019-03-26 Qualcomm Incorporated Fixed point implementation of range adjustment of components in video coding
US11202101B2 (en) * 2019-03-13 2021-12-14 Qualcomm Incorporated Grouped coding for palette syntax in video coding
US11418790B2 (en) * 2019-06-28 2022-08-16 Qualcomm Incorporated Arithmetic coding with selective adaptation for video coding
US11627327B2 (en) * 2019-08-05 2023-04-11 Qualcomm Incorporated Palette and prediction mode signaling
CN114342408A (zh) * 2019-08-26 2022-04-12 北京字节跳动网络技术有限公司 视频编码中帧内编码模式的扩展
CN114930833A (zh) * 2019-10-10 2022-08-19 北京达佳互联信息技术有限公司 使用调色板模式的视频编解码的方法和装置
EP4052464A4 (en) * 2019-11-01 2023-02-15 Beijing Dajia Internet Information Technology Co., Ltd. METHOD AND DEVICE FOR REMAINDER AND COEFFICIENT ENCODING
US11451801B2 (en) * 2019-12-26 2022-09-20 Alibaba Group Holding Limited Methods for coding video data in palette mode
CN117528122A (zh) * 2020-03-27 2024-02-06 北京达佳互联信息技术有限公司 对视频进行解码的方法、电子装置、存储介质和程序产品
US11770535B2 (en) * 2021-02-19 2023-09-26 Samsung Display Co., Ltd. Systems and methods for joint color channel entropy encoding with positive reconstruction error

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8085844B2 (en) * 2003-09-07 2011-12-27 Microsoft Corporation Signaling reference frame distances
US20060126744A1 (en) * 2004-12-10 2006-06-15 Liang Peng Two pass architecture for H.264 CABAC decoding process
CN100466739C (zh) * 2005-10-12 2009-03-04 华为技术有限公司 Cabac解码系统及方法
US7626521B2 (en) * 2006-06-08 2009-12-01 Via Technologies, Inc. Decoding control of computational core of programmable graphics processing unit
CN102148980A (zh) * 2010-02-04 2011-08-10 成都市世嘉电子实业有限公司 高吞吐率cabac解码器设计方法
CN107529708B (zh) * 2011-06-16 2019-05-07 Ge视频压缩有限责任公司 解码器、编码器、解码和编码视频的方法及存储介质
WO2013106987A1 (en) * 2012-01-16 2013-07-25 Mediatek Singapore Pte. Ltd. Methods and apparatuses of bypass coding and reducing contexts for some syntax elements
US9332259B2 (en) * 2012-01-18 2016-05-03 Qualcomm Incorporated Indication of use of wavefront parallel processing in video coding
US9538172B2 (en) * 2012-04-11 2017-01-03 Qualcomm Incorporated Grouping bypass coded syntax elements in video coding
US9264706B2 (en) * 2012-04-11 2016-02-16 Qualcomm Incorporated Bypass bins for reference index coding in video coding
EP3139616A1 (en) * 2012-05-29 2017-03-08 HFI Innovation Inc. Method and apparatus for coding of sample adaptive offset information
HUE037047T2 (hu) * 2012-06-11 2018-08-28 Samsung Electronics Co Ltd Eljárás színes komponens szerinti SAO paramétert megosztó videók kódolására
EP3050294A4 (en) * 2013-09-27 2017-08-09 Qualcomm Incorporated Residual coding for depth intra prediction modes
US10542271B2 (en) * 2013-12-27 2020-01-21 Hfi Innovation Inc. Method and apparatus for major color index map coding
CA2935559C (en) * 2014-01-02 2018-11-20 Vid Scale, Inc. Two-dimensional palette coding for screen content coding
KR101845462B1 (ko) * 2014-03-14 2018-04-04 브이아이디 스케일, 인크. 스크린 콘텐츠 코딩을 위한 팔레트 코딩
US10750198B2 (en) * 2014-05-22 2020-08-18 Qualcomm Incorporated Maximum palette parameters in palette-based video coding
US10264285B2 (en) * 2014-05-22 2019-04-16 Qualcomm Incorporated Coding runs in palette-based video coding
US10038915B2 (en) * 2014-05-22 2018-07-31 Qualcomm Incorporated Escape sample coding in palette-based video coding
US9900617B2 (en) * 2014-06-20 2018-02-20 Qualcomm Incorporated Single color palette mode in video coding
US9544607B2 (en) * 2014-08-25 2017-01-10 Hfi Innovation Inc. Method of palette index signaling for image and video coding
US20160100177A1 (en) * 2014-10-06 2016-04-07 Qualcomm Incorporated Non-uniform exponential-golomb codes for palette mode coding
US9986248B2 (en) * 2015-01-29 2018-05-29 Qualcomm Incorporated Palette mode coding for video coding
US10205968B2 (en) * 2015-02-13 2019-02-12 Mediatek Inc. Method and apparatus for palette index coding in video and image compression
US10448058B2 (en) * 2015-05-21 2019-10-15 Qualcomm Incorporated Grouping palette index at the end and index coding using palette size and run value

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"Description of screen content coding technology proposal by Qualcomm" Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/th Meeting: Valencia, ES, 27 March – 4 April 2014 Vivienne Sze ET AL, "High Efficiency Video Coding (HEVC) : Algorithms and Architectures", Springer International Publishing, (20140101), ISBN 978-3-319-06894-7 "High Efficiency Video Coding (HEVC) Screen Content Coding: Draft 2" Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 18th Meeting: Sapporo, JP, 30 June – 9 July 2014 *
"Description of screen content coding technology proposal by Qualcomm" Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 17th Meeting: Valencia, ES, 27 March – 4 April 2014
"High Efficiency Video Coding (HEVC) Screen Content Coding: Draft 2" Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 18th Meeting: Sapporo, JP, 30 June – 9 July 2014
Vivienne Sze ET AL, "High Efficiency Video Coding (HEVC) : Algorithms and Architectures", Springer International Publishing, (20140101), ISBN 978-3-319-06894-7

Also Published As

Publication number Publication date
TW201644273A (zh) 2016-12-16
CN107211138B (zh) 2020-05-08
KR20170110084A (ko) 2017-10-10
CA2972617C (en) 2019-12-31
TN2017000310A1 (en) 2019-01-16
JP6782704B2 (ja) 2020-11-11
CA2972617A1 (en) 2016-08-04
SA517382015B1 (ar) 2020-10-26
CO2017007499A2 (es) 2017-10-10
EP3251367A1 (en) 2017-12-06
PH12017501183A1 (en) 2017-12-18
US20160227217A1 (en) 2016-08-04
SG11201704982TA (en) 2017-08-30
EA035306B1 (ru) 2020-05-27
WO2016123488A1 (en) 2016-08-04
MY183211A (en) 2021-02-18
AU2016211327B2 (en) 2020-03-12
KR102465026B1 (ko) 2022-11-08
ZA201705084B (en) 2019-01-30
US9942551B2 (en) 2018-04-10
AU2016211327A1 (en) 2017-07-13
CL2017001892A1 (es) 2018-02-23
EA201791503A1 (ru) 2018-01-31
JP2018507615A (ja) 2018-03-15
IL253009B (en) 2018-11-29
BR112017016371A2 (pt) 2018-03-27
NZ732997A (en) 2022-07-01
CN107211138A (zh) 2017-09-26
IL253009A0 (en) 2017-08-31
MX369884B (es) 2019-11-25
MX2017009735A (es) 2017-11-17

Similar Documents

Publication Publication Date Title
TWI714548B (zh) 用於視訊寫碼之調色盤索引分組
US10097842B2 (en) Restriction of escape pixel signaled values in palette mode video coding
TWI705697B (zh) 在視訊寫碼中調色板區塊大小之限制
US10362333B2 (en) Color index coding for palette-based video coding
US11146788B2 (en) Grouping palette bypass bins for video coding
TWI689197B (zh) 用於次取樣格式之調色模式
TWI693822B (zh) 基於調色板之視訊寫碼中之最大調色板參數
US9838662B2 (en) Harmonization of cross-component prediction and adaptive color transform in video coding
JP6541682B2 (ja) ビデオコーディングのためのランレングスコードを用いるパレット予測子シグナリング
TWI718101B (zh) 調色盤模式編碼及解碼設計
TWI666918B (zh) 決定在視訊寫碼中之調色板寫碼區塊的調色板大小、調色板單元及過濾
TWI670971B (zh) 基於調色板之視訊寫碼中之逃脫樣本寫碼
US10097837B2 (en) Palette run hiding in palette-based video coding
JP2018507612A (ja) ビデオコーディングのためのパレットモードコーディング
US20160094851A1 (en) Parsing dependency reduction for palette index coding
US10178395B2 (en) Explicit signaling of escape sample positions in palette coding mode for video coding
US20160227254A1 (en) Coding palette run in palette-based video coding
TW202126040A (zh) 用於視訊編碼的簡化的調色板預測器更新
US20160150234A1 (en) Palette mode coding