TW201408076A - 在視訊寫碼中用於量化轉換係數之正負號隱藏技術 - Google Patents
在視訊寫碼中用於量化轉換係數之正負號隱藏技術 Download PDFInfo
- Publication number
- TW201408076A TW201408076A TW102123370A TW102123370A TW201408076A TW 201408076 A TW201408076 A TW 201408076A TW 102123370 A TW102123370 A TW 102123370A TW 102123370 A TW102123370 A TW 102123370A TW 201408076 A TW201408076 A TW 201408076A
- Authority
- TW
- Taiwan
- Prior art keywords
- sdh
- coefficient
- block
- conversion
- conversion block
- Prior art date
Links
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/48—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
-
- 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/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- 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/18—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 a set of transform coefficients
-
- 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/46—Embedding additional information in the video signal during the compression process
- H04N19/467—Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一種視訊寫碼器,其在寫碼殘餘資料時獨立於判定是否針對亮度轉換區塊之係數群組執行SDH而判定是否針對一色度轉換區塊之一係數群組執行SDH。
Description
本申請案主張2012年6月28日申請之美國臨時申請案第61/665,788號及2012年12月28日申請之美國臨時申請案第61/747,143號的權利,該等臨時申請案兩者之全部內容之全文係據此以引用方式併入。
本發明係關於視訊寫碼,且更特定而言,係關於用於寫碼轉換係數之技術。
數位視訊能力可併入至廣泛範圍之器件中,該等器件包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、數位相機、數位記錄器件、數位媒體播放器、視訊遊戲器件、視訊遊戲主控台、蜂巢式或衛星無線電電話、視訊電話會議器件及其類似者。數位視訊器件實施視訊壓縮技術,諸如,由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分之進階視訊寫碼(AVC)、目前在開發中之高效率視訊寫碼(HEVC)標準定義之標準及此類標準之延伸中描述的視訊壓縮技術,以更有效率地傳輸、接收及儲存數位視訊資訊。
視訊壓縮技術包括空間預測及/或時間預測以縮減或移除為視訊序列所固有之冗餘。對於以區塊為基礎之視訊寫碼,可將一視訊圖框
或圖塊(slice)分割成若干區塊。或者,視訊圖框可被稱為圖像。可進一步分割每一區塊。經框內寫碼(I)圖框或圖塊中之區塊係使用關於該同一圖框或圖塊中之相鄰區塊中之參考樣本的空間預測予以編碼。經框間寫碼(P或B)圖框或圖塊中之區塊可使用關於該同一圖框或圖塊中之相鄰區塊中之參考樣本的空間預測或關於其他參考圖框中之參考樣本的時間預測。空間預測或時間預測引起用於待寫碼區塊之預測性區塊。殘餘資料表示原始待寫碼區塊(亦即,經寫碼區塊)與預測性區塊之間的像素差。
經框間寫碼區塊係根據指向形成預測性區塊之參考樣本區塊之運動向量及指示經寫碼區塊與預測性區塊之間的差之殘餘資料予以編碼。經框內寫碼區塊係根據框內寫碼模式及殘餘資料予以編碼。出於進一步壓縮起見,可將殘餘資料自像素域轉換至轉換域,從而引起殘餘轉換係數,該等殘餘轉換係數接著可被量化。可以特定次序掃描最初以二維陣列而配置之量化轉換係數以產生一維轉換係數向量以用於熵寫碼。
大體上,本發明描述用於寫碼視訊資料之技術。詳言之,本發明描述用於在視訊寫碼程序中寫碼關於與殘餘視訊資料相關聯之轉換係數之正負號資料的技術。
在一實例中,用於解碼視訊資料之方法包括:接收一轉換係數區塊;判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組;判定一色度轉換區塊中之色度轉換係數之複數個係數群組,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用正負號資料隱藏(SDH);及獨立於該判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而判定是否針對該色度轉換區塊之該等係數群
組中之一係數群組啟用SDH。
在另一實例中,一種用於編碼視訊資料之方法包括:產生一轉換係數區塊;判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組;判定一色度轉換區塊中之色度轉換係數之複數個係數群組,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;傳訊是否針對該亮度轉換區塊之該等係數群組中之一係數群組執行正負號資料隱藏(SDH);及獨立於判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而傳訊是否針對該色度轉換區塊之該等係數群組中之一係數群組執行SDH。
在另一實例中,一種用於寫碼視訊資料之器件包括一視訊寫碼器,其經組態以:處理一轉換係數區塊;判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組;判定一色度轉換區塊中之色度轉換係數之複數個係數群組,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用正負號資料隱藏(SDH);且獨立於該判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
在另一實例中,一種用於寫碼視訊資料之裝置包括:用於寫碼一轉換係數區塊的構件;用於判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組的構件;用於判定一色度轉換區塊中之色度轉換係數之複數個係數群組的構件,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;用於判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用正負號資料隱藏(SDH)的構件;及用於獨立於判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH的構件。
在另一實例中,一種電腦可讀儲存媒體儲存指令,該等指令在執行時使一或多個處理器:寫碼一轉換係數區塊;判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組;判定一色度轉換區塊中之色度轉換係數之複數個係數群組,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用正負號資料隱藏(SDH);且獨立於判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
隨附圖式及以下描述中陳述一或多個實例之細節。其他特徵、目標及優勢將自該描述及該等圖式以及自申請專利範圍變得顯而易見。
10‧‧‧視訊編碼及解碼系統
12‧‧‧源器件
14‧‧‧目的地器件
16‧‧‧通信頻道
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧調變器/解調變器/數據機
24‧‧‧傳輸器
26‧‧‧接收器
28‧‧‧數據機
29‧‧‧反向Z字形型樣
30‧‧‧視訊解碼器
31‧‧‧反向垂直型樣
32‧‧‧顯示器件
33‧‧‧反向水平型樣
34‧‧‧儲存媒體
35‧‧‧反向對角型樣
36‧‧‧檔案伺服器
36A‧‧‧子區塊
36B‧‧‧子區塊
36C‧‧‧子區塊
36D‧‧‧子區塊
38‧‧‧轉換區塊
40‧‧‧模式選擇單元
42‧‧‧運動估計單元
44‧‧‧運動補償單元
46‧‧‧框內預測處理單元
50‧‧‧求和器
52‧‧‧轉換處理單元
54‧‧‧量化單元
56‧‧‧熵編碼單元
58‧‧‧反量化單元
60‧‧‧反轉換處理單元
62‧‧‧求和器
64‧‧‧參考圖框緩衝器
70‧‧‧熵解碼單元
72‧‧‧運動補償單元
74‧‧‧框內預測處理單元
76‧‧‧反量化單元
78‧‧‧反轉換處理單元
80‧‧‧求和器
82‧‧‧參考圖框緩衝器
100‧‧‧區塊/係數群組
CG0‧‧‧係數群組
CG1‧‧‧係數群組
CG2‧‧‧係數群組
CG3‧‧‧係數群組
CG4‧‧‧係數群組
CG5‧‧‧係數群組
CG6‧‧‧係數群組
CG7‧‧‧係數群組
CG8‧‧‧係數群組
CG9‧‧‧係數群組
CG10‧‧‧係數群組
CG11‧‧‧係數群組
CG12‧‧‧係數群組
CG13‧‧‧係數群組
CG14‧‧‧係數群組
CG15‧‧‧係數群組
CU‧‧‧寫碼單元
LCU‧‧‧最大寫碼單元
PU‧‧‧預測單元
SCU‧‧‧最小寫碼單元
TU‧‧‧轉換單元
圖1為說明實例視訊編碼及解碼系統之方塊圖。
圖2為展示用於轉換係數寫碼之實例反向掃描次序的概念圖。
圖3為展示實例以子區塊為基礎之對角掃描的概念圖。
圖4為展示轉換係數之4×4係數群組之實例反向對角掃描的概念圖。
圖5為展示轉換係數之4×4係數群組之實例前向對角掃描的概念圖。
圖6為展示含有多個係數群組之實例轉換單元的概念圖。
圖7為說明實例視訊編碼器之方塊圖。
圖8為說明實例視訊解碼器之方塊圖。
圖9為展示根據本發明之技術之實例視訊編碼方法的流程圖。
圖10為展示根據本發明之技術之實例視訊解碼方法的流程圖。
圖11為展示根據本發明之技術之實例視訊編碼方法的流程圖。
圖12為展示根據本發明之技術之實例視訊解碼方法的流程圖。
大體上,本發明描述用於寫碼視訊資料之技術。詳言之,本發明描述用於在視訊編碼及/或解碼程序中寫碼轉換係數之正負號資料之技術。
如下文將更詳細地所論述,轉換係數之寫碼可包括分離地寫碼轉換係數之絕對值及轉換係數之正負號(亦即,加或減)兩者。隨著寫碼正負號資料表示大量經寫碼位元串流,已開發用以將用於一些轉換係數之正負號之值「隱藏」於其他經傳訊資料內的技術。一種此類技術被稱為正負號資料隱藏(SDH)。
SDH為一種尚未改進之新技術。因而,已觀測到若干初始缺點。作為一實例,SDH針對視訊解碼器引入關聯計算複雜性且針對視訊編碼器甚至更是如此。因此,若此額外複雜性未引起明顯效能增益,則可較佳的是避免此額外複雜性。因此,本發明建議與視訊資料之色度分量分離地針對視訊資料之亮度分量停用及啟用SDH。在一實例中,可改變圖像參數集(PPS)處之傳訊以併入用於色度分量之SDH旗標(例如,被稱為「sign_data_hiding_chroma_flag」之語法元素)及用於亮度分量之SDH旗標(例如,被稱為「sign_data_hiding_luma_flag」之語法元素)。因此,根據本發明之技術,使用兩個旗標以代替單一SDH旗標,使得可獨立地啟用亮度SDH及色度SDH,因此在亮度SDH增加效率而色度SDH未增加效率的情形中改良整體寫碼效率。本發明所描述之傳訊並不限於PPS,且可實施於經寫碼視訊位元串流之其他部分中,諸如,實施於序列參數集(SPS)、調適參數集(APS)、視訊參數集(VPS)、區塊語法中或別處。
語法元素「sign_data_hiding_luma_flag」經設定為等於0可指定出針對亮度分量停用正負號位元隱藏。語法元素「sign_data_hiding_luma_flag」經設定為等於1可指定出針對亮度分
量啟用正負號位元隱藏。相似地,語法元素「sign_data_hiding_chroma_flag」經設定為等於0可指定出針對色度分量停用正負號位元隱藏,且語法元素「sign_data_hiding_flag」經設定為等於1可指定出針對色度分量啟用正負號位元隱藏。如下文將更詳細地所解釋,語法元素「sign_data_hiding_chroma_flag」及「sign_data_hiding_luma_flag」用來針對轉換區塊群組之所有轉換區塊(諸如,與SPS相關聯之所有轉換區塊)啟用或停用SDH。當啟用SDH時,對於轉換區塊群組內之每一係數群組,進行一分離判定以判定彼特定係數群組是否實施SDH。因此,即使在啟用SDH之例子中,一些係數群組仍可不使用SDH予以寫碼。
本發明之技術可另外應用於具有很少殘餘資料之其他分量,比如,3-D視訊寫碼中之深度分量或可調式視訊寫碼中之一些基礎及增強層視訊資料。儘管本發明之技術引入新語法元素,但本發明之技術可藉由針對視訊資料之一些分量(例如,色度分量、深度分量,等等)選擇性地啟用SDH而實際上引起傳訊附加項之整體縮減。
圖1為說明實例視訊編碼及解碼系統10之方塊圖,該系統可經組態以利用根據本發明之實例的用於寫碼轉換係數之正負號資料之技術。如圖1所示,系統10包括源器件12,該源器件經由通信頻道16將經編碼視訊傳輸至目的地器件14。經編碼視訊資料亦可儲存於儲存媒體34或檔案伺服器36上,且視需要可由目的地器件14存取。當儲存至儲存媒體或檔案伺服器時,視訊編碼器20可將經寫碼視訊資料提供至另一器件,諸如,網路介面、緊密光碟(CD)、藍光或數位視訊光碟(DVD)燒錄機或壓印設施器件,或其他器件,以用於將經寫碼視訊資料儲存至儲存媒體。同樣地,與視訊解碼器30分離之器件(諸如,網路介面、CD或DVD讀取器,或其類似者)可自儲存媒體擷取經寫碼視訊資料且將經擷取資料提供至視訊解碼器30。
源器件12及目的地器件14可包含各種各樣之器件中任一者,該等器件包括桌上型電腦、筆記型(亦即,膝上型)電腦、平板電腦、機上盒、諸如所謂智慧型手機之電話手機、電視、相機、顯示器件、數位媒體播放器、視訊遊戲主控台或其類似者。在許多狀況下,此類器件可經裝備用於無線通信。因此,通信頻道16可包含適合於傳輸經編碼視訊資料之無線頻道、有線頻道,或無線頻道及有線頻道之組合。相似地,檔案伺服器36可由目的地器件14經由包括網際網路連接之任何標準資料連接而存取。此標準資料連接可包括適合於存取儲存於檔案伺服器上之經編碼視訊資料的無線頻道(例如,Wi-Fi連接)、有線連接(例如,DSL、纜線數據機,等等),或此兩者之組合。
根據本發明之實例,用於寫碼轉換係數之正負號資料之技術可應用於視訊寫碼以支援多種多媒體應用中任一者,諸如,空中電視廣播、有線電視傳輸、衛星電視傳輸、串流視訊傳輸(例如,經由網際網路)、用於儲存於資料儲存媒體上之數位視訊之編碼、儲存於資料儲存媒體上之數位視訊之解碼,或其他應用。在一些實例中,系統10可經組態以支援單向或雙向視訊傳輸以支援諸如視訊串流、視訊播放、視訊廣播及/或視訊電話之應用。
在圖1之實例中,源器件12包括視訊源18、視訊編碼器20、調變器/解調變器22及傳輸器24。在源器件12中,視訊源18可包括一源,諸如,諸如視訊攝影機之視訊俘獲器件、含有經先前俘獲視訊之視訊封存檔、用以自視訊內容提供者接收視訊之視訊饋送介面,及/或用於產生電腦圖形資料作為源視訊之電腦圖形系統,或此類源之組合。作為一實例,若視訊源18為視訊攝影機,則源器件12及目的地器件14可形成可提供於智慧型手機或平板電腦內之所謂攝影機電話或視訊電話。然而,本發明所描述之技術大體上可適用於視訊寫碼,且可應用於無線及/或有線應用,或經編碼視訊資料儲存於本端磁碟上之應
用。
經俘獲、經預俘獲或經電腦產生視訊可由視訊編碼器20編碼。經編碼視訊資訊可由數據機22根據諸如有線或無線通信協定之通信標準而調變,且經由傳輸器24傳輸至目的地器件14。數據機22可包括經設計用於信號調變之各種混頻器、濾波器、放大器或其他組件。傳輸器24可包括經設計用於傳輸資料之電路,該等電路包括放大器、濾波器,及(在無線通信之狀況下)一或多個天線。
由視訊編碼器20編碼之經俘獲、經預俘獲或經電腦產生視訊亦可儲存至儲存媒體34或檔案伺服器36上以供稍後消耗。儲存媒體34可包括藍光光碟、DVD、CD-ROM、快閃記憶體,或用於儲存經編碼視訊之任何其他合適數位儲存媒體。儲存於儲存媒體34上之經編碼視訊接著可由目的地器件14存取以用於解碼及播放。儘管圖1中未圖示,但在一些實例中,儲存媒體34及/或檔案伺服器36可儲存傳輸器24之輸出。
檔案伺服器36可為能夠儲存經編碼視訊且將彼經編碼視訊傳輸至目的地器件14的任何類型之伺服器。實例檔案伺服器包括網頁伺服器(例如,用於網站)、FTP伺服器、網路附接儲存(NAS)器件或本端磁碟機,或能夠儲存經編碼視訊資料且將其傳輸至目的地器件的任何其他類型之器件。經編碼視訊資料自檔案伺服器36之傳輸可為串流傳輸、下載傳輸,或此兩者組合。檔案伺服器36可由目的地器件14經由包括網際網路連接之任何標準資料連接而存取。此標準資料連接可包括適合於存取儲存於檔案伺服器上之經編碼視訊資料的無線頻道(例如,Wi-Fi連接)、有線連接(例如,DSL、纜線數據機、乙太網路、USB,等等),或此兩者之組合。
在圖1之實例中,目的地器件14包括接收器26、數據機28、視訊解碼器30及顯示器件32。目的地器件14之接收器26經由頻道16接收資
訊,且數據機28解調變該資訊以產生用於視訊解碼器30之經解調變位元串流。經由頻道16傳送之資訊可包括由視訊編碼器20產生之多種語法資訊以供視訊解碼器30用來解碼視訊資料。此類語法亦可與儲存於儲存媒體34或檔案伺服器36上之經編碼視訊資料一起予以包括。視訊編碼器20及視訊解碼器30中每一者可形成能夠編碼或解碼視訊資料之各別編碼器-解碼器(CODEC)之部分。
顯示器件32可與目的地器件14整合或在目的地器件14外部。在一些實例中,目的地器件14可包括整合式顯示器件,且亦經組態以與外部顯示器件介接。在其他實例中,目的地器件14可為顯示器件。大體上,顯示器件32向使用者顯示經解碼視訊資料,且可包含多種顯示器件中任一者,諸如,液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示器件。
在圖1之實例中,通信頻道16可包含任何無線或有線通信媒體,諸如,射頻(RF)頻譜或一或多個實體傳輸線,或無線媒體及有線媒體之任何組合。通信頻道16可形成諸如區域網路、廣域網路或諸如網際網路之全域網路的以封包為基礎之網路之部分。通信頻道16通常表示用於將視訊資料自源器件12傳輸至目的地器件14之任何合適通信媒體,或不同通信媒體之集合,包括有線媒體或無線媒體之任何合適組合。通信頻道16可包括路由器、交換器、基地台,或可有用於促進自源器件12至目的地器件14之通信之任何其他設備。
視訊編碼器20及視訊解碼器30可根據一視訊壓縮標準而操作,諸如,目前由ITU-T視訊寫碼專家團體(VCEG)及ISO/IEC動畫專家團體(MPEG)之視訊寫碼聯合協作小組(JCT-VC)開發之高效率視訊寫碼(HEVC)標準。ITU-T SG16 WP3及ISO/IEC JTC1/SC29/WG11之視訊寫碼聯合協作小組(JCT-VC)於2012年10月10日至19日在中國上海市召開之第11次會議上Bross等人之「High efficiency video coding(HEVC)
text specification draft 9」的文件JCTVC-K1003v13中描述HEVC標準之最近草稿,被稱為「HEVC工作草稿9」或「WD9」,自2013年6月27日起,其可自http://phenix.int-evry.fr/jct/doc_end_user/documents/11_Shanghai/wg11/JCTVC-K1003-v13.zip下載而得。HEVC WD9之全部內容係據此以引用方式併入本文中。HEVC標準之開發正在進行中,且ITU-T SG16 WP3及ISO/IEC JTC1/SC29/WG11之視訊寫碼聯合協作小組(JCT-VC)於2013年4月在韓國仁川市召開之第13次會議上Bross等人之「Editors' proposed corrections to HEVC version 1」中描述近期HEVC標準之較新草稿,稱為「HEVC工作草稿10」或「HEVC WD10」,自2013年6月27日起,其可得自http://phenix.int-evry.fr/jct/doc_end_user/documents/13_Incheon/wg11/JCTVC-M0432-v3.zip,其全部內容係據此以引用方式併入。
或者,視訊編碼器20及視訊解碼器30可根據其他專屬或工業標準而操作,諸如,ITU-T H.264標準,或者被稱作MPEG4第10部分之進階視訊寫碼(AVC),或此類標準之延伸。然而,本發明之技術並不限於任何特定寫碼標準。其他實例包括MPEG-2及ITU-T H.263。
儘管圖1中未圖示,但在一些態樣中,視訊編碼器20及視訊解碼器30各自可與一音訊編碼器及解碼器整合,且可包括適當MUX-DEMUX單元或其他硬體及軟體以處置共同資料串流或分離資料串流中之音訊及視訊兩者之編碼。適用時,在一些實例中,MUX-DEMUX單元可符合ITU H.223多工器協定,或諸如使用者資料報協定(UDP)之其他協定。
視訊編碼器20及視訊解碼器30各自可被實施為多種合適編碼器電路中任一者,諸如,一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、軟體、硬體、韌體或其任何組合。當該等技術係部分地以軟體予以實
施時,一器件可將用於該軟體之指令儲存於合適非暫時性電腦可讀媒體中,且以硬體使用一或多個處理器來執行該等指令以執行本發明之技術。視訊編碼器20及視訊解碼器30中每一者可包括於一或多個編碼器或解碼器中,該一或多個編碼器或解碼器中任一者可被整合為各別器件中之組合式編碼器/解碼器(CODEC)之部分。
視訊編碼器20可實施本發明之技術中任一者或全部以用於在視訊寫碼程序中寫碼轉換係數。同樣地,視訊解碼器30可實施此等技術中任一者或全部以用於在視訊寫碼程序中寫碼轉換係數。如本發明所描述,視訊寫碼器可指代視訊編碼器或視訊解碼器。相似地,視訊寫碼單元可指代視訊編碼器或視訊解碼器。同樣地,視訊寫碼可指代視訊編碼或視訊解碼。
數位視訊器件實施視訊壓縮技術以更有效率地編碼及解碼數位視訊資訊。視訊壓縮可應用空間(圖框內)預測技術及/或時間(圖框間)預測技術以縮減或移除為視訊序列所固有之冗餘。
JCT-VC正致力於開發HEVC標準,例如,如上文所論述之HEVC WD9所描述。HEVC標準化努力係基於視訊寫碼器件之演進模型,其被稱作HEVC測試模型(HM)。該HM推測視訊寫碼器件相對於根據(例如)ITU-T H.264/AVC之現有器件的若干額外能力。舉例而言,H.264提供九個框內預測編碼模式,而HM可提供多達三十三個框內預測編碼模式。以下章節將更詳細地論述HM之某些態樣。
對於根據當前在開發中之HEVC標準之視訊寫碼,一視訊圖框可被分割成若干寫碼單元。寫碼單元(CU)通常指代充當基本單元之影像區域,其中出於視訊壓縮起見而將各種寫碼工具應用於該基本單元。CU通常具有被表示為Y之亮度分量,及被表示為U及V之兩個色度分量。取決於視訊取樣格式,在樣本之數目方面,U分量及V分量之大小可相同於或不同於Y分量之大小。
CU通常為正方形,且可被視為相似於所謂巨集區塊,例如,在諸如ITU-T H.264之其他視訊寫碼標準下。本申請案中將出於說明之目的而描述根據開發中HEVC標準之目前建議態樣中之一些的寫碼。然而,本發明所描述之技術可有用於其他視訊寫碼程序,諸如,根據H.264或其他標準或專屬視訊寫碼程序而定義之視訊寫碼程序。
根據HM,CU可包括一或多個預測單元(PU)及/或一或多個轉換單元(TU)。位元串流內之語法資料可定義最大寫碼單元(LCU),該LCU在像素之數目方面為最大CU。大體上,CU具有相似於H.264之巨集區塊之目的的目的,惟CU不具有大小差別除外。因此,一CU可被分裂成若干子CU。大體上,本發明中對CU之參考可指代圖像之最大寫碼單元或LCU之子CU。一LCU可被分裂成若干子CU,且每一子CU可被進一步分裂成若干子CU。用於位元串流之語法資料可定義LCU可被分裂之最大次數,被稱作CU深度。因此,位元串流亦可定義最小寫碼單元(SCU)。本發明亦使用術語「區塊」或「部分」以指代CU、PU或TU中任一者。大體上,「部分」可指代視訊圖框之任何子集。
LCU可與四元樹資料結構相關聯。大體上,四元樹資料結構包括每CU一個節點,其中根節點對應於LCU。若將一CU分裂成四個子CU,則對應於該CU之節點包括四個葉節點,該四個葉節點中每一者對應於該等子CU中之一者。四元樹資料結構之每一節點可提供用於對應CU之語法資料。舉例而言,四元樹中之節點可包括分裂旗標,從而指示對應於該節點之CU是否被分裂成若干子CU。用於CU之語法元素可被遞歸地定義,且可取決於CU是否被分裂成若干子CU。若一CU未被進一步分裂,則該CU被稱作葉CU。在本發明中,葉CU之4個子CU亦將被稱作葉CU,但不存在原始葉CU之顯式分裂。舉例而言,若處於16×16大小之CU未被進一步分裂,則四個8×8子CU亦將被稱作
葉CU,但16×16 CU決不被分裂。
葉CU可包括一或多個預測單元(PU)。大體上,PU表示對應CU之全部或部分,且可包括用於擷取用於PU之參考樣本之資料。舉例而言,當PU被框間模式編碼時,PU可包括定義用於PU之運動向量之資料。舉例而言,定義該運動向量之資料可描述該運動向量之水平分量、該運動向量之垂直分量、用於該運動向量之解析度(例如,四分之一像素精確度或八分之一像素精確度)、該運動向量所指向之參考圖框,及/或用於該運動向量之參考清單(例如,清單0或清單1)。舉例而言,用於定義PU之葉CU之資料亦可描述CU被分割成一或多個PU之分割。分割模式可取決於CU未被寫碼、被框內預測模式編碼抑或被框間預測模式編碼而不同。對於框內寫碼,可與下文所描述之葉轉換單元相同地對待PU。
新興HEVC標準允許根據轉換單元(TU)之轉換,該等轉換對於不同CU可不同。TU通常係基於針對經分割LCU而定義之給定CU內的PU之大小予以定大小,但可並非總是此狀況。TU通常具有相同於或小於PU之大小的大小。在一些實例中,可使用被稱為「殘餘四元樹」(residual quad tree,RQT)之四元樹結構將對應於CU之殘餘樣本再分成較小單元。RQT之葉節點可被稱作轉換單元(TU)。可轉換與TU相關聯之像素差值以產生可被量化之轉換係數。一TU包括一亮度轉換區塊及兩個色度轉換區塊。因而,實際上,應用於TU的下文所論述之任何寫碼程序可應用於亮度轉換區塊及色度轉換區塊。
大體上,PU指代與預測程序有關之資料。舉例而言,當PU被框內模式編碼時,PU可包括描述用於PU之框內預測模式之資料。作為另一實例,當PU被框間模式編碼時,PU可包括定義用於PU之運動向量之資料。
大體上,TU用於轉換程序及量化程序。具有一或多個PU之給定
CU亦可包括一或多個轉換單元(TU)。在預測之後,視訊編碼器20可自由寫碼節點根據PU而識別之視訊區塊計算殘餘值。接著更新寫碼節點以參考殘餘值而非原始視訊區塊。殘餘值包含像素差值,該等像素差值可被轉換成轉換係數、被量化且使用該等轉換及TU中指定之其他轉換資訊予以掃描,以產生用於熵寫碼之串行化轉換係數。可再次更新寫碼節點以參考此等串行化轉換係數。本發明通常使用術語「視訊區塊」以指代CU之寫碼節點。在一些特定狀況下,本發明亦可使用術語「視訊區塊」以指代包括寫碼節點以及PU及TU之樹區塊,亦即,LCU或CU。
一視訊序列通常包括一系列視訊圖框或圖像。一圖像群組(GOP)通常包含該等視訊圖像中之一系列一或多個視訊圖像。GOP可在該GOP之標頭中、在該等圖像中之一或多者之標頭中或在別處包括描述包括於該GOP中之圖像之數目的語法資料。圖像之每一圖塊可包括描述用於各別圖塊之編碼模式之圖塊語法資料。視訊編碼器20通常對個別視訊圖塊內之視訊區塊進行操作,以便編碼視訊資料。視訊區塊可對應於CU內之寫碼節點。視訊區塊可具有固定大小或變化大小,且其大小可根據指定寫碼標準而不同。
為了寫碼一區塊(例如,視訊資料之預測單元),首先導出用於該區塊之預測子。可經由框內(I)預測(亦即,空間預測)抑或框間(P或B)預測(亦即,時間預測)導出預測子,亦被稱作預測性區塊。因此,一些預測單元可使用關於同一圖框(或圖塊)中之相鄰參考區塊中之參考樣本的空間預測予以框內寫碼(I),且其他預測單元可關於其他經先前寫碼圖框(或圖塊)中之參考樣本區塊予以單向地框間寫碼(P)或雙向地框間寫碼(B)。在每一狀況下,參考樣本可用以形成用於待寫碼區塊之預測性區塊。
在識別預測性區塊後,即判定原始視訊資料區塊中之像素與原
始視訊資料區塊之預測性區塊中之像素之間的差。此差可被稱作預測殘餘資料,且指示待寫碼區塊中之像素值與經選擇以表示經寫碼區塊之預測性區塊中之像素值之間的像素差。為了達成較好壓縮,可(例如)使用離散餘弦轉換(DCT)、整數轉換、卡忽南-拉維(Karhunen-Loeve,K-L)轉換或另一轉換來轉換預測殘餘資料以產生轉換係數。
轉換區塊中之殘餘資料可以存放於空間像素域中之二維(2D)像素差值陣列而配置。一轉換將殘餘像素值變換成轉換域(諸如,頻域)中之二維轉換係數陣列。
出於進一步壓縮起見,可在熵寫碼之前使轉換係數量化。熵寫碼器接著將諸如上下文調適性可變長度寫碼(CAVLC)、上下文調適性二進位算術寫碼(CABAC)、機率區間分割熵寫碼(PIPE)或其類似者之熵寫碼應用於量化轉換係數。在一些實例中,視訊編碼器20可利用預定義掃描次序以掃描量化轉換係數,以產生可被熵編碼之串行化向量。在其他實例中,視訊編碼器20可執行調適性掃描。在掃描量化轉換係數以形成一維向量之後,視訊編碼器20可熵編碼該一維向量,視訊編碼器20亦可熵編碼與經編碼視訊資料相關聯之語法元素,以供視訊解碼器30用來解碼該視訊資料。
本發明為用於上下文調適性二進位算術寫碼(CABAC)熵寫碼器或諸如機率區間分割熵寫碼(PIPE)或相關寫碼器之其他熵寫碼器的相關技術。算術寫碼為具有高寫碼效率之許多壓縮演算法中使用之熵寫碼形式,此係因為其能夠將符號映射至非整數長度碼字。算術寫碼演算法之實例為H.264/AVC中使用的以上下文為基礎之二進位算術寫碼(CABAC)。
大體上,使用CABAC之熵寫碼資料符號涉及以下步驟中之一或多者:
(1)二進位化:若待寫碼符號為非二進位值,則將該符號映射至
所謂「二進位(bin)」之序列。每一二進位可具有值「0」或「1」。
(2)上下文指派:將每一二進位(在規則模式下)指派至一上下文。上下文模型基於可用於二進位之資訊(諸如,經先前編碼符號之值或二進位數)而判定如何計算用於給定二進位之上下文。
(3)二進位編碼:用算術編碼器來編碼二進位。為了編碼二進位,算術編碼器需要二進位之值之機率作為輸入,亦即,二進位之值等於「0」之機率及二進位之值等於「1」之機率。每一上下文之(估計)機率係由被稱作「上下文狀態(context state)」之整數值表示。每一上下文具有一狀態範圍,且因此,該狀態範圍(亦即,估計機率)對於指派至一個上下文之二進位相同,且在若干上下文之間不同。
(4)狀態更新:基於二進位之實際經寫碼值而更新用於選定上下文之機率(狀態)(例如,若二進位值為「1」,則「1」之機率會增加)。
應注意,機率區間分割熵寫碼(PIPE)使用相似於算術寫碼之原理的原理,且因此亦可利用本發明之技術。
H.264/AVC及HEVC中之CABAC使用若干狀態,且每一狀態隱式地與一機率有關。存在CABAC之變體,其中直接地使用符號(「0」或「1」)之機率,亦即,機率(或其整數版本)為狀態。舉例而言,以下各者中描述CABAC之一些變體:2010年4月在德國德勒斯登市召開之第1次JCT-VC會議上之「Description of video coding technology proposal by France Telecom,NTT,NTT DOCOMO,Panasonic and Technicolor」的JCTVC-A114,在下文中被稱為「JCTVC-A114」:及2011年7月在意大利托里諾市召開之第6次JCT-VC會議上A.Alshin及E.Alshina之「Multi-parameter probability update for CABAC」的JCTVC-F254,在下文中被稱為「JCTVC-F254」。
為了熵寫碼量化轉換係數區塊,通常執行掃描程序,使得根據特定掃描次序將區塊中之二維(2D)量化轉換係數陣列重新配置成有序
一維(1D)轉換係數陣列(亦即,向量)。接著將熵寫碼應用於轉換係數向量。轉換單元中之量化轉換係數之掃描使用於熵寫碼器之2D轉換係數陣列串行化。可產生有效值映像(significance map)以指示有效(亦即,非零)係數之位置。可應用掃描以掃描有效(亦即,非零)係數之層級,及/或寫碼有效係數之正負號。
在HEVC標準中,首先針對轉換區塊寫碼有效轉換(亦即,有效值映像)之位置資訊,以指示掃描次序中的最後非零係數之位置。針對每一係數以反向掃描次序寫碼有效值映像及層級資訊(係數之絕對值及正負號)。
當前,在HEVC中存在三種不同掃描:子區塊對角掃描、子區塊水平掃描,及子區塊垂直掃描。圖2展示用於轉換係數區塊之反向掃描次序之實例。應注意,反向對角型樣35、反向Z字形型樣29、反向垂直型樣31及反向水平型樣33中每一者自轉換區塊之右下角落中的較高頻率係數進行至轉換區塊之左上角落中的較低頻率係數。
子區塊對角掃描、子區塊水平掃描及子區塊垂直掃描應用於4×4轉換區塊及8×8轉換區塊。以子區塊為基礎之對角掃描用於當前HEVC測試模型中之16×16轉換區塊及32×32轉換區塊中。在以子區塊為基礎之掃描中,掃描較大轉換區塊之一個4×4子區塊,此後進行至較大轉換區塊內之另一4×4子區塊。在其他實例中,「子區塊」可由根據所使用之掃描次序之數個經連續掃描係數組成。舉例而言,「子區塊」可由沿著對角掃描次序之16個經連續掃描係數組成。
圖3描繪8×8轉換區塊上的以子區塊為基礎之掃描之實例。8×8轉換區塊38由四個4×4子區塊(36A、36B、36C、36D)組成。如圖3所示,在掃描子區塊36C中之轉換係數之前掃描子區塊36D中之轉換係數。該掃描接著自子區塊36C進行至子區塊36B,且最後進行至子區塊36A。圖3描繪每一子區塊中之反向對角掃描次序;然而,可使用
任何掃描次序(例如,水平、垂直、Z字形,等等)。在其他實例中,在每一子區塊內使用前向掃描次序。
在新興HEVC標準中,可將係數分組成厚塊(chunk)或子集,有時亦被稱作係數群組(CG)。針對每一子集寫碼轉換係數之有效值映像及層級資訊(絕對值及正負號)。在一實例中,一子集由沿著掃描次序(例如,前向或反向對角、水平或垂直掃描次序)之16個連續係數組成。在另一實例中,將較大轉換區塊內之轉換係數之4×4子區塊(或子集)看作一子集。以下符號經寫碼及傳訊以表示子集內之係數層級資訊。在一實例中,所有符號係以反向掃描次序予以編碼。應注意,以下符號可被稱作「旗標」。應注意,本發明所論述之「旗標」中任一者無需限於二進位符號,而亦可被實施為多個位元語法元素。
significant_coeff_flag(縮寫為sigMapFlag) :此旗標指示CG中之每一係數之有效值。絕對值為1或更大之係數被視為有效。作為一實例,sigMapFlag值0指示出係數不有效,而值1指示出係數有效。此旗標通常可被稱作有效值旗標。
coeff_abs_level_greater1_flag(縮寫為gr1Flag) :此旗標指示係數之絕對值對於任何非零係數(亦即,sigMapFlag為1之係數)是否大於1。作為一實例,gr1Flag值0指示出係數不具有大於1之絕對值,而gr1Flag值1指示出係數確實具有大於1之絕對值。此旗標通常可被稱作大於1旗標。
coeff_abs_level_greater2_flag(縮寫為gr2Flag) :此旗標指示係數之絕對值對於絕對值大於1之任何係數(亦即,gr1Flag為1之係數)是否大於2。作為一實例,gr2Flag值0指示出係數不具有大於2之絕對值,而gr2Flag值1指示出係數確實具有大於2之絕對值。此旗標通常可被稱作大於2旗標。
coeff_sign_flag(縮寫為signFlag) :此旗標指示用於任何非零係數
(亦即,sigMapFlag為1之係數)之正負號資訊。舉例而言,用於此旗標之0指示正號,而1指示負號。
coeff_abs_level_remaining(縮寫為levelRem) :此語法元素指示剩餘係數之絕對層級值。舉例而言,對於此旗標,針對絕對值大於2之每一係數(亦即,gr2Flag為1之係數)寫碼係數之絕對值減3(abs(level)-3)。
圖4展示4×4區塊100中之量化係數之實例。區塊100可為4×4轉換區塊,或可為8×8、16×16或32×32轉換區塊中之4×4子區塊(子集)。表1中概述以反向掃描次序而掃描的用於圖4所示之係數之經編碼符號。在表1中,scan_pos指代沿著圖4所示之反向對角掃描的係數之位置。scan_pos 15為所掃描之第一係數,且位於區塊100之右下角落中。scan_pos 15處之量化係數具有絕對值0。scan_pos 0為所掃描之最後係數,且位於區塊100之左上角落中。scan_pos 0處之量化係數具有絕對值10。在使用4×4轉換區塊或較大轉換區塊中之最後4×4子區塊的狀況下,由於知道最後非零係數之位置,故無需寫碼前四個sigMapFlag。亦即,sigMapFlag之寫碼可開始於最後非零係數(在此實例中,scan_pos 11處之係數)。在一些例子中,亦可知道第一非零之位置,因此,可另外不傳訊用於scan_pos 11之SigMapFlag。
在此等符號當中,sigMapFlag、gr1Flag及gr2Flag之二進位係用調適性上下文模型予以編碼。signFlag以及levelRem之二進位化二進位係經由具有固定等機率模型之旁路模式(例如,指數葛洛姆碼
(exponential Golomb code))予以編碼。
每一非零係數(亦即,signFlag)之正負號係在旁路模式下予以編碼。旁路模式可提供用於等機率且不相關之符號(例如,signFlag)之更有效率寫碼。正負號旗標(coeff_sign_flag或signFlag)通常表示經壓縮位元串流之實質比例(取決於組態為大約15%至20%)。難以直接地壓縮此資訊。然而,針對HEVC之一些建議提供用以縮減經寫碼正負號之數目之技術。此類技術之實例有時被稱為正負號資料隱藏(SDH)。
以下各者中描述SDH技術:ITU-T SG16 WP3及ISO/IEC JTC1/SC29/WG11之視訊寫碼聯合協作小組(JCT-VC)於2011年11月21日至30日在瑞士日內瓦市召開之第7次會議上G.Clare等人之「Sign Data Hiding」(在下文中為JCTVC-G271);及ITU-T SG16 WP3及ISO/IEC JTC1/SC29/WG11之視訊寫碼聯合協作小組(JCT-VC)於2012年2月1日至10日在美國加利福尼亞州聖約瑟市召開之第8次會議上X.Yu等人之「Multiple Sign Bits Hiding」(在下文中為JCTVC-H0481)。自2013年4月8日起,JCTVC-G271可於http://phenix.int-evry.fr/jct/doc_end_user/current_document.php?id=3528處下載而得。自2013年4月8日起,JCTVC-H0481可於http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=4787處下載而得。JCTVC-G271及JCTVC-H0481兩者係以引用方式併入本文中。
如上文所論述,HEVC標準當前藉由遍及每一CG執行五個掃描遍次(scan pass)而指定自殘餘資料產生之寫碼轉換係數。如上文所論述,CG可被定義為掃描次序中之16個係數之集合,且其通常為4×4係數之子區塊。該等掃描遍次中之一者寫碼CG中之有效係數之正負號(亦即,coeff_sign_flags)。
當使用SDH時,且取決於某一準則,視訊編碼器20可經組態以不
編碼第一非零係數之signFlag。取而代之,使用預定義慣例(例如,偶數對應於加(「+」)號,且奇數同位對應於減(「-」)號)將第一非零係數之正負號值內嵌於CG中之轉換係數之層級之總和的同位中。
在SDH之上下文中,「第一」非零係數為朝向CG之左上角落(亦即,較低頻率係數)的前向掃描次序中之第一係數。圖5展示運用前向對角掃描次序之CG 100之實例。在每一係數「點(dot)」下方之大粗體數字為轉換係數之層級。在每一點上方之小數字表示掃描次序中之轉換係數之位置。在圖5之實例中,前向對角掃描次序中之最後非零係數出現於位置11處。第一非零係數在位置0處,其中層級值為10。
在針對HEVC之當前建議中,用以判定是否使用SDH程序之準則為CG之第一非零係數與最後非零係數之間的距離(在掃描次序中)。若此距離大於固定臨限值,則使用SDH。
在使用SDH程序之狀況下,若CG中之層級之總和的同位匹配於已被隱藏之正負號(例如,第一非零係數之正負號),則在視訊編碼器20處無需額外處理,且儲存一個資訊位元。若CG中之層級之總和的同位不匹配於已被隱藏之正負號,則視訊編碼器20經組態以改變CG中之量化轉換係數中之一者的值,使得該同位匹配於該正負號。通常,視訊編碼器20將僅僅自轉換係數中之一者之值加上或減去1。哪一轉換係數值待改變為編碼器選擇,且由實施者負責修改哪一轉換係數及如何修改轉換係數。較佳的是進行最少影響經編碼位元串流之位元率-失真效能之改變。
在視訊解碼器30處,若符合用於執行SDH程序之準則,則不解碼每一CG之第一非零係數之正負號。取而代之,僅僅自CG中之轉換係數之層級之總和的同位推斷正負號。因而,若基於準則而針對CG啟用SDH,則視訊解碼器30經組態以判定CG中之轉換係數之層級之總和的同位,以判定針對CG中之第一非零轉換係數未寫碼(亦即,基本
上「隱藏」)之正負號值。
大體上,在本發明之上下文中,在視訊編碼程序中執行SDH程序(例如,由視訊編碼器20)涉及不編碼或「隱藏」一或多個轉換係數之正負號值。亦即,代替編碼signFlag,可自轉換係數之其他特徵(例如,層級之總和之同位)導出signFlag之值。同樣地,在視訊解碼程序中執行SDH程序(例如,由視訊解碼器30)涉及解碼或「取消隱藏」一或多個轉換係數之正負號值。
為了以更正式之方式呈現,使absSum為CG中之量化係數之層級的絕對值之總和。分別使firstNZPosInCG及lastNZPosInCG為CG中之前向掃描次序中之第一非零(有效)係數及最後非零(有效)係數。在如下情況下,正負號隱藏於CG中,隱藏於CG中之係數之總和的同位中:lastNZPosInCG-firstNZPosInCG>=T1,其中T1為臨限值。可簡單地藉由下式導出該同位:parity=(absSum & 0x1),其中&為按位元AND運算。亦即,若absSum為奇數,則同位為1,且若absSum為偶數,則同位為0。接著,若隱藏正負號之條件為真,則視訊解碼器30不以掃描次序解碼用於CG之第一係數之正負號。取而代之,視訊解碼器自同位導出正負號,如下:若同位=1(偶數),則第一係數為負
若同位=0(奇數),則第一係數為正
SDH為一種尚未改進之新技術。因而,已觀測到若干初始缺點。首先,用以判定是否使用SDH程序之準則為CG中之第一有效係數與最後有效係數之間的掃描次序中之距離。此情形要求儲存兩個變數以作出決策,且對視訊編碼器20及視訊解碼器30增加複雜性。另外,當前建議僅指定隱藏每CG一個正負號,因此限制潛在益處。鑒於此等
缺點,本發明建議用以改良SDH之若干特徵(尤其是關於效能/複雜性取捨)之技術。
在針對SDH之當前建議中,用以判定是否應用SDH之準則要求針對每一CG保持兩個變數:CG之第一非零係數及最後非零係數(分別為firstNZPosInCG及lastNZPosInCG)之位置。要求視訊解碼器30在解碼時保持追蹤兩個變數相比於保持僅一個變數會花費較多成本。本發明建議使用每CG單一變數以判定是否應用SDH(亦即,以執行正負號資料隱藏程序)。
在本發明之一實例中,用於判定是否應用SDH之單一變數僅取決於CG中之最後非零係數相對於某預定義臨限值T1之位置:lastNZPosInCG>=T1
亦即,視訊編碼器20及視訊解碼器30將基於lastNZPosInCG與臨限值之比較而判定是否執行SDH程序。詳言之,若lastNZPosInCG>=T1,則視訊編碼器20或視訊解碼器30將執行SDH程序。
此單一變數較簡單,且已展示為具有相同於先前針對SDH而建議之兩個變數準則的位元率-失真效能。變數lastNZPosInCG為前向掃描次序中CG內之最後非零係數之掃描位置。彼意謂lastNZPosInCG之值介於0與CG中之係數之數目減1之間。舉例而言,對於4×4 CG,lastNZPosInCG之掃描位置值可介於0與15之間。T1可經選擇為任何值。測試已展示出,對於16係數CG,T1之值4或5在經組態以根據HEVC而解碼視訊之視訊解碼器中良好地起作用。
作為本發明之另一實例,用於判定是否應用SDH之單一變數僅取決於CG中之非零係數數目相對於某預定義臨限值之數目:numNZCoeffsInCG>=T1
其中numNZCoeffsInCG表示當前CG中之非零(有效)係數之數目。亦即,視訊編碼器20及視訊解碼器30將基於numNZCoeffsInCG與臨限
值之比較而判定是否執行SDH程序。詳言之,若numNZCoeffsInCG>=T1,則將應用SDH程序。再次,可使用T1之任何值。測試已展示出,對於16係數CG,T1之值2、3或4在經組態以根據HEVC而解碼視訊之視訊解碼器中良好地起作用。
在本發明之另一實例中,用於判定是否應用SDH之單一變數為CG中之係數之絕對值的總和(absSum)。亦即,若absSum>=T1,則應用SDH。因而,視訊編碼器20及視訊解碼器30將基於absSum與臨限值之比較而判定是否執行SDH程序。再次,可使用T1之任何值。測試已展示出,對於16係數CG,T1之值2在經組態以根據HEVC而解碼視訊之視訊解碼器中良好地起作用。
在另一實例中,可應用先前準則之組合以用於判定是否應用SDH。舉例而言,可針對單一CG應用兩個或兩個以上準則。在另一實例中,針對每一CG使用單一變數,但TU、圖塊或圖框中之不同CG可使用不同準則。
在本發明之另一實例中,根據前向掃描次序,可藉由組態視訊編碼器20及視訊解碼器30以隱藏CG中之最後非零係數而實現較好寫碼效能,而非隱藏CG中之第一非零係數之正負號。再次,在此上下文中,最後非零係數係相對於前向掃描次序予以指定。對量化係數之統計特性之研究已得出如下結論:根據位元率-失真觀點,隱藏掃描次序中之第一非零係數之正負號並非最佳。取而代之,可藉由隱藏最後非零係數之正負號而達成改良型位元率-失真取捨。
因此,在一實例中,本發明建議隱藏前向掃描次序中CG之最後係數之正負號。此技術可與關於使用單一變數以判定是否應用SDH的上文所論述之技術中任一者一起加以應用。在此方面,上文所描述之單一變數技術中任一者亦可與隱藏CG之第一非零係數或任何其他非零係數之SDH程序一起加以使用。
藉由隱藏CG之最後非零係數,向視訊編碼器(例如,視訊編碼器20)之開發者給出較多自由度來變更CG中處於較低頻率(亦即,朝向CG之左上角落)之係數之量化層級,其中值較可能為非零或接近於經量化為非零。因此,可達成額外寫碼增益。
為了進一步改良SDH之效能,本發明進一步建議隱藏CG中之兩個或兩個以上係數之正負號。作為一實例,若隱藏兩個正負號,則用以隱藏第二正負號之變數可為:lastNZPosInCG>=T2
因此,根據以上實例,若lastNZPosInCG<T1,則不隱藏正負號;若T1<=lastNZPosInCG<T2,則隱藏僅一個正負號;且若lastNZPosInCG>=T2,則隱藏兩個正負號。當然,若使用此變數,則僅於存在至少兩個非零係數時才可隱藏兩個正負號。因此,額外檢查將係必要的。亦即,視訊編碼器20及視訊解碼器30將判定非零係數之數目是否大於1,以便隱藏第二正負號。
相似地,代替比較lastNZPosInCG與第二臨限值以判定是否隱藏第二正負號,可使用變數之當前版本(亦即,第一非零係數與最後非零係數之間的距離)以判定是否隱藏第二正負號:lastNZPosInCG-firstNZPosInCG>=T2
在一實例中,在視訊編碼器20及視訊解碼器30判定針對兩個正負號執行SDH程序之狀況下,本發明建議隱藏前向掃描次序中之前兩個非零係數之正負號。在第二實例中,隱藏掃描次序中之第一非零係數及最後非零係數之正負號。此情形亦係可能的,此係因為:若隱藏兩個正負號,則必定存在至少兩個非零係數。即使存在僅兩個非零係數,根據定義,該兩個非零係數亦將為掃描次序中之第一非零係數及最後非零係數。在另一實例中,隱藏CG中掃描次序中之最後兩個係數之正負號。
在另一實例中,用以判定是否隱藏第二正負號之變數可為:numNZCoeffsInCG>=T2。
在運用此變數的情況下,若numNZCoeffsInCG<T1,則不隱藏正負號;若T1<=numNZCoeffsInCG<T2,則隱藏僅一個正負號;且若numNZCoeffsInCG>=T2,則隱藏兩個正負號。
在隱藏兩個正負號之狀況下,由於同位可僅表示兩個狀況(0或1),故CG中之係數之層級之總和的同位不足以隱藏2個位元(亦即,兩個正負號值)。兩個正負號值需要2個資訊位元(0/1用於一個正負號,且0/1用於另一正負號)。因此,用以隱藏正負號之另一方式係必要的。
在一實例中,第一正負號隱藏於層級之絕對值之總和的同位中(測試absSum & 0×1)。第二正負號隱藏於(absSum>>1)之同位中,其中>>為右移位運算。此情形等效於執行檢查(absSum& 0×2)。
在另一實施例中,第一正負號隱藏於掃描次序中的CG之第一部分之係數之層級的同位中(例如,CG之前八個係數值),且第二正負號隱藏於係數之第二部分之同位中(例如,CG之另外八個係數值)。CG之部分中之劃分可固定(藉由CG中之非零係數之數目判定),或取決於第一非零係數及最後非零係數之位置。
在另一實例中,在SDH程序中待隱藏之第一正負號隱藏於位於用偶數加索引之掃描位置中之係數之層級的同位中,且在SDH程序中待隱藏之第二正負號隱藏於位於具有奇數索引之掃描位置中之係數之層級的同位中,或反之亦然。
在各種實例中,可簡單地延伸上文所描述之所有方法(第二個正負號隱藏變數及正負號隱藏方案)以藉由添加額外臨限值而隱藏兩個以上正負號旗標。
視訊編碼器20可經組態以傳訊序列參數集(SPS)、圖像參數集
(PPS)、調適參數集(APS)及/或圖塊標頭中之一或多者中之語法元素,以指示是否針對序列或針對當前圖像/圖塊隱藏第二正負號。亦可傳訊額外語法元素,以指示用於隱藏每CG第二正負號之臨限值,或上文所描述之任何其他臨限值。
如上文所提及,用於應用SDH之當前建議使用要求針對每一CG保持兩個變數之準則:CG之第一非零及最後非零(分別為firstNZPosInCG及lastNZPosInCG)。在解碼時保持追蹤兩個變數相比於保持僅一個變數或不保持變數會花費較多成本。
因而,在另一實例中,本發明建議判定SDH程序是否被執行為每TU(或轉換區塊)僅一次,此係與每CG一次相對。
在一實例中,本發明建議用以判定是否針對TU(或轉換區塊)中之CG執行SDH程序之單一變數為前向掃描次序中TU(或轉換區塊)中之最後有效係數(lastNZPosInTU)相比於某臨限值之位置。舉例而言,若最後位置為:lastNZPosInTU>=4,則針對含有最後非零係數之CG中之一個係數隱藏正負號。否則,正負號值不隱藏於彼CG中。
在一實例中,語法元素lastNZPosInTU指代掃描次序中TU之最後係數相對於最後CG之第一元素在掃描次序中之位置的位置。換言之,lastNZPosInTU具有值0至15(亦即,CG之大小),而非自0至TU之大小。語法元素lastNZPosInTU為TU中之最後非零係數,其為HEVC已經要求在位元串流中被傳訊之資訊。lastNZPosInTU值之值係相對於具有最後係數之CG之開頭予以量測。因而,lastNZPosInTU之值將相似於或相同於lastNZPosInCG。
正負號值總是隱藏於位於含有最後有效係數之CG之前的每一CG中。語法元素lastNZPosInTU為前向掃描次序中TU中之最後非零係
數,其為已經在HEVC順應式位元串流中被指定及傳訊之資訊。臨限值可為任何值。測試已展示出,值4良好地起作用。因而,此變數僅被測試為每TU(或轉換區塊)一次,且具有最後係數之CG可根據此變數而隱藏至少一正負號,且自最後至第一(在前向CG掃描次序中)之所有其他CG隱藏至少一正負號。
圖6為展示經劃分成多個CG之實例TU 110的概念圖。在此實例中,TU 110為含有16個4×4 CG之16×16 TU。該等CG被標記為0至15,從而指明其在前向對角掃描次序中之位置。作為一實例,假定TU 110中之最後非零係數(lastNZPosInTU)之位置出現於CG11中。若CG11中之最後非零係數之位置大於臨限值(例如,4),則至少一正負號隱藏於CG11中。另外,針對位於CG 11之前的每一CG(亦即,CG0至CG10)應用SDH。
藉由檢查每TU僅一個變數以判定是否應用SDH,無需追蹤CG中之第一非零係數及最後非零係數。又,無需判定是否針對每一CG應用SDH。因此,可用此等技術來極大地簡化HEVC SDH演算法,而同時,亦可達成用於TU中之多個CG之SDH的位元率-失真益處。
實際上,將一TU劃分成掃描次序中之多個非重疊連續係數集合。接著,針對所有集合(亦即,CG)自動地隱藏至少一正負號值,惟針對含有TU中之最後非零係數之CG除外。對於此最後CG,檢查單一變數,且根據該變數,應用或不應用SDH。在此狀況下之選定變數為已經可用於位元串流中之資訊(亦即,TU中之最後有效係數之位置,其參考/減去CG中之第一係數在掃描次序中之位置),因此,不必針對該變數計算額外資料。然而,應注意,用於判定針對含有最後有效係數之CG之SDH應用的其他準則亦將適用。
以下語法表(表2)展示在使用判定SDH應用為每轉換區塊一次之技術時對HEVC語法之修改之實例。粗體語法元素係與此實例中使用
之新變數有關。應注意,在CG迴圈外,條件檢查發生為每TU僅一次。
由於量化值可自其原始值改變以符合正負號隱藏約束,故SDH固有地為有損耗技術。因此,可不需要在將執行無損耗寫碼之情形中應用SDH。
針對HEVC之建議包括使用旗標以指示無損耗寫碼(例如,cu_transquant_bypass_flag)。此旗標使視訊解碼器30跳過轉換及量化以達成無損耗寫碼。在彼狀況下,亦應停用SDH。為了達到彼目的,可如下修改以上條件:將signHidden=((numCoeff-1)-(numLastSubset<<4)>=sign_hiding_threshold?1:0改變至signHidden=((numCoeff-1)-(numLastSubset<<4)>=sign_hiding_threshold &&!cu_transquant_bypass_flag)?1:0。又,將signHidden=1改變至signHidden=!cu_transquant_bypass_flag?1:0。
如上文所提及,SDH針對視訊解碼器引入關聯計算複雜性且針對視訊編碼器甚至更是如此。因此,若此額外複雜性未引起明顯效能增益,則較佳的是避免此額外複雜性。
本發明建議以相同於上文所描述之亮度狀況的意義但針對色度傳訊參數sign_hiding_threshold_chroma。舉例而言,色度值可更具限制性,亦即,為使準則應用於針對色度分量之較少狀況中的值。接著,在上文所描述之實例中,可重新命名語法元素「sign_hiding_threshold」,例如,「sign_hiding_threshold_luma」。
本發明亦建議針對視訊資料之色度分量停用SDH。又,本發明之技術可另外應用於具有很少殘餘資料之其他分量,比如,3-D視訊寫碼中之深度分量或可調式視訊寫碼中之一些基礎及增強層視訊資料。
在以下表3所示之一實例中,改變圖像參數集(PPS)層級處之傳訊以併入用於色度分量之正負號資料隱藏旗標。接著,使用兩個旗標以代替單一sign_data_hiding_flag:語法元素「sign_data_hiding_luma_flag」經設定為等於0指定出針對亮度分量停用正負號位元隱藏。語法元素「sign_data_hiding_luma_flag」經設定為等於1指定出針對亮度分量啟用正負號位元隱藏。語法元素「sign_data_hiding_chroma_flag」經設定為等於0指定出針對色度分量停用正負號位元隱藏。sign_data_hiding_chroma_flag經設定為等於1指定出針對色度分量啟用正負號位元隱藏。
上文在表3中以斜體展示關於HEVC WD9之改變。因此,可修改殘餘寫碼/解碼程序以檢查此等旗標之值,以便取決於特定轉換區塊之色彩分量而針對該區塊應用或不應用SDH。以下表4展示用於SDH
之程序之相關部分,且以斜體展示對考慮本發明所描述之兩個SDH旗標而所要申請之改變。
在以上實例中,語法元素「sign_data_hiding_chroma_flag」同時地針對兩個色度分量啟用SDH。根據本發明之技術,亦可分離地針對該等色度分量啟用及停用SDH。舉例而言,一個旗標可啟用/停用Cb分量,且一不同旗標可啟用/停用Cr分量。在此狀況下,語法表及語義將如在以上實例中一樣,但代替上文所示之單一「sign_data_hiding_chroma_flag」語法元素,將存在兩個語法元素,例如,「sign_data_hiding_cb_flag」語法元素及「sign_data_hiding_cr_flag」語法元素。兩個色度分量中之此分裂可應用於本發明所描述之各種技術中任一者。
根據本發明之另一技術,為了在PPS中儲存一位元,可能取決於sign_data_hiding_flag而有條件地寫碼色度旗標,如以下表5中(應注意,此表及剩餘表中未醒目提示改變)。
用於表5之實例之語義如下。語法元素「sign_data_hiding_flag」經設定為等於0指定出停用正負號位元隱藏。語法元素
「sign_data_hiding_flag」經設定為等於1指定出啟用正負號位元隱藏。語法元素「sign_data_hiding_chroma_flag」經設定為等於0指定出針對色度分量停用正負號位元隱藏。語法元素「sign_data_hiding_flag」經設定為等於1指定出針對色度分量啟用正負號位元隱藏。若不存在,則假定語法元素「sign_data_hiding_chroma_flag」為0。亦即,若未應用SDH(針對亮度),則決不針對色度應用SDH。
此特定技術限制編碼器之靈活性。具體而言,在針對色度分量啟用SDH而針對亮度分量停用SDH的情況下,該特定技術不允許編碼器寫碼轉換單元。然而,在許多或大多數寫碼情境中,此特定組合可不提供良好效率/複雜性取捨,因此使合理的是不允許編碼器使用該特定組合。
如上文所描述,可存在用以啟用SDH之旗標,且接著存在特定地用於亮度分量及色度分量的啟用SDH之兩個相依旗標,如表6所示。
相似地,在SPS中可存在針對序列啟用SDH之旗標(sps_sign_data_hiding_flag),接著,可使PPS處之條件適應於用於亮度分量及色度分量兩者之此旗標,如以下表6所示。
根據本發明之另一技術,取決於視訊序列被寫碼之色度格式(例如,4:2:0、4:2:2、4:4:4、單色,等等)而可能不傳訊色度旗標。亦即,若格式為單色(無色彩),則可無需發送用於色度分量(其根本不被
寫碼)之旗標。
出於解釋之簡單性起見,以上實例通常將語法元素展示為PPS之部分,但上文所描述之各種旗標可添加至若干傳訊層級中任一者,諸如,處於序列參數集(SPS)、圖像參數集(PPS)、調適性參數集(APS)、圖塊標頭、CU、PU、TU,等等。
如先前所提及,對量化係數之統計特性之研究得出如下結論:在一些寫碼情境中,隱藏色度分量之正負號不會帶來很多效能改良。原因為:當存在很少殘差至不存在殘差時,SDH效能較差。大體上,色度具有最小殘餘資料,此係因為色度內容傾向於極平滑,且預測通常良好地起作用。因此,本發明之技術包括針對色度完全地或部分地停用SDH。
圖7為說明視訊編碼器20之實例的方塊圖,該視訊編碼器可使用如本發明所描述的用於寫碼轉換係數之技術。將出於說明之目的而在HEVC寫碼之上下文中描述視訊編碼器20,但本發明並不限於可能需要掃描轉換係數之其他寫碼標準或方法。視訊編碼器20可執行視訊圖框內之CU之框內寫碼及框間寫碼。框內寫碼依賴於空間預測以縮減或移除給定視訊圖框內之視訊資料中之空間冗餘。框間寫碼依賴於時間預測以縮減或移除視訊序列之當前圖框與經先前寫碼圖框之間的時間冗餘。框內模式(I模式)可指代若干以空間為基礎之視訊壓縮模式中任一者。諸如單向預測(P模式)或雙向預測(B模式)之框間模式可指代若干以時間為基礎之視訊壓縮模式中任一者。
如圖7所示,視訊編碼器20接收待編碼視訊圖框內之當前視訊區塊。在圖7之實例中,視訊編碼器20包括運動補償單元44、運動估計單元42、框內預測處理單元46、參考圖框緩衝器64、求和器50、轉換處理單元52、量化單元54,及熵編碼單元56。圖7所說明之轉換處理單元52為將實際轉換或轉換組合應用於殘餘資料區塊且不會與亦可被
稱作CU之轉換單元(TU)之轉換係數區塊混淆的單元。出於視訊區塊重新建構起見,視訊編碼器20亦包括反量化單元58、反轉換處理單元60及求和器62。亦可包括解區塊濾波器(圖7中未圖示)以濾波區塊邊界,以自經重新建構視訊移除方塊效應假影。視需要,解區塊濾波器通常將濾波求和器62之輸出。
在編碼程序期間,視訊編碼器20接收待寫碼視訊圖框或圖塊。該圖框或圖塊可被劃分成多個視訊區塊,例如,最大寫碼單元(LCU)。運動估計單元42及運動補償單元44執行經接收視訊區塊相對於一或多個參考圖框中之一或多個區塊的框間預測性寫碼以提供時間壓縮。框內預測處理單元46可執行經接收視訊區塊相對於與待寫碼區塊相同之圖框或圖塊中之一或多個相鄰區塊的框內預測性寫碼以提供空間壓縮。
模式選擇單元40可選擇寫碼模式(框內或框間)中之一者,例如,基於用於每一模式之誤差(亦即,失真)結果,且將所得經框內預測區塊或經框間預測區塊(例如,預測單元(PU))提供至求和器50以產生殘餘區塊資料,且提供至求和器62以重新建構經編碼區塊以供參考圖框中使用。求和器62組合經預測區塊與用於該區塊的來自反轉換處理單元60之反量化之經反轉換資料以重新建構經編碼區塊,如下文更詳細地所描述。一些視訊圖框可被指明為I圖框,其中I圖框中之所有區塊係在框內預測模式下予以編碼。在一些狀況下,框內預測處理單元46可執行P圖框或B圖框中之區塊之框內預測編碼,例如,當由運動估計單元42執行之運動搜尋未引起該區塊之充分預測時。
運動估計單元42及運動補償單元44可高度地整合,但出於概念目的而被分離地說明。運動估計(或運動搜尋)為產生運動向量之程序,該等運動向量估計用於視訊區塊之運動。舉例而言,運動向量可指示當前圖框中之預測單元相對於參考圖框之參考樣本的位移。運動
估計單元42藉由比較經框間寫碼圖框之預測單元與儲存於參考圖框緩衝器64中之參考圖框之參考樣本而計算用於該預測單元之運動向量。參考樣本可為被發現在像素差方面接近地匹配於包括正被寫碼之PU的CU之部分的區塊,該像素差可藉由絕對差總和(SAD)、平方差總和(SSD)或其他差度量予以判定。參考樣本可出現於參考圖框或參考圖塊內之任何地方,且未必出現於參考圖框或圖塊之區塊(例如,寫碼單元)邊界處。在一些實例中,參考樣本可出現於分率像素位置處。
運動估計單元42將經計算運動向量發送至熵編碼單元56及運動補償單元44。由運動向量識別的參考圖框之部分可被稱作參考樣本。運動補償單元44可(例如)藉由擷取由用於PU之運動向量識別之參考樣本而計算用於當前CU之預測單元之預測值。
作為由運動估計單元42及運動補償單元44執行之框間預測之替代例,框內預測處理單元46可框內預測經接收區塊。框內預測處理單元46可相對於相鄰的經先前寫碼區塊(例如,在當前區塊上方、右上方、左上方或左方之區塊,此係假定用於區塊之由左至右、由頂至底之編碼次序)來預測經接收區塊。框內預測處理單元46可經組態有多種不同框內預測模式。舉例而言,框內預測處理單元46可經組態有基於正被編碼之CU之大小的某一數目個方向性預測模式,例如,三十四個方向性預測模式。
框內預測處理單元46可藉由(例如)計算用於各種框內預測模式之誤差值且選擇得到最低誤差值之模式而選擇框內預測模式。方向性預測模式可包括用於組合空間相鄰像素之值且將該等組合式值應用於PU中之一或多個像素位置的功能。一旦已計算用於PU中之所有像素位置之值,框內預測處理單元46就可基於PU與待編碼之經接收區塊之間的像素差而計算用於預測模式之誤差值。框內預測處理單元46可繼續測試框內預測模式直至探索到得到可接受誤差值之框內預測模式
為止。接著,框內預測處理單元46可將PU發送至求和器50。
視訊編碼器20藉由自正被寫碼之原始視訊區塊減去由運動補償單元44或框內預測處理單元46計算之預測資料而形成殘餘區塊。求和器50表示執行此減法運算之組件。殘餘區塊可對應於像素差值之二維矩陣,其中殘餘區塊中之值的數目相同於對應於殘餘區塊的PU中之像素的數目。殘餘區塊中之值可對應於PU及原始待寫碼區塊中之同置型像素之值之間的差,亦即,誤差。取決於經寫碼區塊之類型,該等差可為色度差或亮度差。
轉換處理單元52可自殘餘區塊形成一或多個轉換單元(TU)。轉換處理單元52自複數個轉換當中選擇一轉換。可基於諸如區塊大小、寫碼模式或其類似者之一或多個寫碼特性而選擇該轉換。接著,轉換處理單元52將選定轉換應用於TU,從而產生包含二維轉換係數陣列之視訊區塊。
轉換處理單元52可將所得轉換係數發送至量化單元54。接著,量化單元54可使轉換係數量化。接著,熵編碼單元56可根據掃描模式而執行矩陣中之量化轉換係數之掃描。本發明將熵編碼單元56描述為執行該掃描。然而,應理解,在其他實例中,諸如量化單元54之其他處理單元可執行該掃描。
一旦轉換係數被掃描成一維陣列,熵編碼單元56就可將諸如CABAC、以語法為基礎之上下文調適性二進位算術寫碼(SBAC)、機率區間分割熵(PIPE)或另一熵寫碼方法的熵寫碼應用於該等係數。
為了執行CABAC,熵編碼單元56可選擇上下文模型以應用於某一上下文以編碼待傳輸符號。舉例而言,該上下文可關於相鄰值是否為非零。熵編碼單元56亦可熵編碼語法元素,諸如,表示選定轉換之信號。
熵編碼單元56可經進一步組態以根據上文所描述的本發明之技
術而執行正負號資料隱藏程序。下文將參看圖9來描述本發明之技術可如何用熵編碼單元56予以實施之額外細節。
在由熵編碼單元56進行之熵寫碼之後,可將所得經編碼視訊傳輸至諸如視訊解碼器30之另一器件或進行封存以供稍後傳輸或擷取。
在一些狀況下,除了熵寫碼以外,視訊編碼器20之熵編碼單元56或另一單元可經組態以亦執行其他寫碼功能。舉例而言,熵編碼單元56可經組態以判定用於CU及PU之經寫碼區塊型樣(CBP)值。又,在一些狀況下,熵編碼單元56可執行係數之延行長度寫碼。
反量化單元58及反轉換處理單元60分別應用反量化及反轉換,以在像素域中重新建構殘餘區塊,例如,以供稍後用作參考區塊。運動補償單元44可藉由將殘餘區塊添加至參考圖框緩衝器64之圖框中之一者的預測性區塊而計算參考區塊。運動補償單元44亦可將一或多個內插濾波器應用於經重新建構殘餘區塊以計算次整數像素值以供運動估計中使用。求和器62將經重新建構殘餘區塊添加至由運動補償單元44產生之經運動補償預測區塊,以產生經重新建構視訊區塊以供儲存於參考圖框緩衝器64中。經重新建構視訊區塊可由運動估計單元42及運動補償單元44用作參考區塊以框間寫碼後續視訊圖框中之區塊。
圖8為說明視訊解碼器30之實例的方塊圖,該視訊解碼器根據本發明所描述之轉換係數寫碼技術而解碼經編碼視訊序列。在圖8之實例中,視訊解碼器30包括熵解碼單元70、運動補償單元72、框內預測處理單元74、反量化單元76、反轉換處理單元78、參考圖框緩衝器82及求和器80。在一些實例中,視訊解碼器30可執行與關於視訊編碼器20(參見圖7)所描述之編碼遍次大體上互逆的解碼遍次。
熵解碼單元70對經編碼位元串流執行熵解碼程序以擷取一維轉換係數陣列。所使用之熵解碼程序取決於由視訊編碼器20使用之熵寫碼(例如,CABAC)。由編碼器使用之熵寫碼程序可在經編碼位元串流
中予以傳訊或可為預定程序。熵解碼單元70可經進一步組態以根據上文所描述的本發明之技術而執行正負號資料隱藏程序。下文將參看圖10來描述本發明之技術可如何用熵解碼單元70予以實施之額外細節。
在一些實例中,熵解碼單元70(或反量化單元76)可使用與由視訊編碼器20之熵編碼單元56(或量化單元54)使用之掃描模式成鏡像的掃描來掃描經接收值。儘管係數之掃描可在反量化單元76中執行,但掃描將出於說明之目的而被描述為由熵解碼單元70執行。另外,儘管出於說明之簡易性而被展示為分離功能單元,但視訊解碼器30之熵解碼單元70、反量化單元76及其他單元之結構及功能性可彼此高度地整合。
反量化單元76反量化(亦即,解量化)提供於位元串流中且由熵解碼單元70解碼之量化轉換係數。反量化程序可包括習知程序,例如,相似於針對HEVC所建議或由H.264解碼標準定義之程序。反量化程序可包括使用由視訊編碼器20針對CU所計算之量化參數QP以判定量化度,且同樣地判定應被應用之反量化度。反量化單元76可在轉換係數自一維陣列被變換至二維陣列之前抑或之後使該等係數反量化。
反轉換處理單元78將反轉換應用於反量化轉換係數。在一些實例中,反轉換處理單元78可基於來自視訊編碼器20之傳訊或藉由自諸如區塊大小、寫碼模式或其類似者之一或多個寫碼特性推斷轉換而判定反轉換。在一些實例中,反轉換處理單元78可基於用於包括當前區塊之LCU的四元樹之根節點處的經傳訊轉換而判定待應用於當前區塊之轉換。或者,可在用於LCU四元樹中之葉節點CU的TU四元樹之根處傳訊該轉換。在一些實例中,反轉換處理單元78可應用級聯式反轉換,其中反轉換處理單元78將兩個或兩個以上反轉換應用於正被解碼之當前區塊之轉換係數。
框內預測處理單元74可基於經傳訊框內預測模式及來自當前圖
框之經先前解碼區塊之資料而產生用於當前圖框之當前區塊之預測資料。
運動補償單元72可自經編碼位元串流擷取運動向量、運動預測方向及參考索引。參考預測方向指示框間預測模式為單向(例如,P圖框)抑或雙向(B圖框)。參考索引指示候選運動向量所基於之參考圖框。
基於經擷取運動預測方向、參考圖框索引及運動向量,運動補償單元產生用於當前部分之經運動補償區塊。此等經運動補償區塊基本上重新建立用以產生殘餘資料之預測性區塊。
運動補償單元72可產生經運動補償區塊,從而可能地基於內插濾波器而執行內插。用於待以子像素精確度用於運動估計之內插濾波器之識別符可包括於語法元素中。運動補償單元72可在視訊區塊之編碼期間使用如由視訊編碼器20使用之內插濾波器以計算用於參考區塊之次整數像素之經內插值。運動補償單元72可根據經接收語法資訊而判定由視訊編碼器20使用之內插濾波器,且使用該等內插濾波器以產生預測性區塊。
另外,在HEVC實例中,運動補償單元72及框內預測處理單元74可使用語法資訊(例如,由四元樹提供)中之一些以判定用以編碼經編碼視訊序列之圖框之LCU的大小。運動補償單元72及框內預測處理單元74亦可使用語法資訊以判定分裂資訊,該分裂資訊描述如何分裂經編碼視訊序列之圖框之每一CU(且同樣地描述如何分裂子CU)。語法資訊亦可包括指示每一分裂如何被編碼之模式(例如,框內預測或框間預測,及(對於框內預測)框內預測編碼模式)、用於每一經框間編碼PU之一或多個參考圖框(及/或含有用於該等參考圖框之識別符之參考清單),及用以解碼經編碼視訊序列之其他資訊。
求和器80組合殘餘區塊與由運動補償單元72或框內預測處理單
元74產生之對應預測區塊以形成經解碼區塊。視需要,亦可應用解區塊濾波器以濾波經解碼區塊,以便移除方塊效應假影。接著將經解碼視訊區塊儲存於參考圖框緩衝器82中,參考圖框緩衝器82提供參考區塊以用於後續運動補償,且亦產生經解碼視訊以用於呈現於顯示器件(諸如,圖1之顯示器件32)上。
圖9為展示根據本發明之技術之實例視訊編碼方法的流程圖。圖9之技術可由視訊編碼器20之一或多個硬體單元進行。在一實例中,熵編碼單元56可執行與正負號資料隱藏有關之技術中之一些。
最初,視訊編碼器20可經組態以產生轉換係數區塊(910)。熵編碼單元56可經組態以基於與臨限值比較之單一變數而判定是否針對轉換係數區塊中之至少一轉換係數執行正負號資料隱藏程序(920)。熵編碼單元56可經進一步組態以基於是否執行正負號資料隱藏程序之判定而編碼用於區塊之正負號資訊(930)。
在一實例中,轉換係數區塊為係數群組。在此實例中,單一變數可為係數群組中之最後非零係數之位置,其中係數群組中之最後非零係數係相對於前向掃描次序予以定義。在另一實例中,單一變數為係數群組中之非零係數之數目。在又一實例中,單一變數為係數群組中之非零轉換係數之絕對值的總和。
在另一實例中,轉換係數區塊為轉換區塊。在此實例中,單一變數為轉換區塊中係數群組中之最後非零係數之位置,其中該係數群組含有轉換區塊中之最後非零係數。
在轉換係數區塊為轉換區塊之實例中,熵編碼單元56可經進一步組態以判定含有最後非零係數的轉換區塊之係數群組、基於單一變數而對含有最後非零係數之係數群組中之至少一轉換係數執行正負號資料隱藏程序,且對用於轉換區塊中在掃描次序上位於含有最後非零係數之係數群組之後的所有其他係數群組之至少一轉換係數執行正負
號資料隱藏程序。
正負號資料隱藏程序可由熵編碼單元56以若干方式而執行。在一實例中,熵編碼單元56可經組態以對區塊中之第一非零係數執行正負號資料隱藏程序。在另一實例中,熵編碼單元56可經組態以對區塊中之最後非零係數執行正負號資料隱藏程序。
在又一實例中,熵編碼單元56可經組態以對區塊中之兩個或兩個以上非零係數執行正負號資料隱藏程序。兩個或兩個以上非零係數包括區塊中沿著掃描次序之前兩個非零係數。在另一實例中,兩個或兩個以上非零係數包括區塊中沿著掃描次序之第一非零係數及最後非零係數。
在一實例中,當隱藏兩個正負號值時,熵編碼單元56可經組態以編碼區塊中轉換係數之層級之絕對值中的第一轉換係數之正負號,且編碼經右移位1之區塊中轉換係數之層級之絕對值中的第二轉換係數之正負號。在另一實例中,熵編碼單元56可經組態以編碼區塊中第一係數群組中之轉換係數之層級之同位中的第一轉換係數之正負號,且編碼區塊中第二係數群組中之轉換係數之層級之同位中的第二轉換係數之正負號。
圖10為展示根據本發明之技術之實例視訊解碼方法的流程圖。圖10之技術可由視訊解碼器30之一或多個硬體單元進行。在一實例中,熵解碼單元70可執行與正負號資料隱藏有關之技術中之一些。
最初,視訊解碼器30可經組態以判定轉換係數區塊(1010)。熵解碼單元70可經組態以基於與臨限值比較之單一變數而判定是否針對轉換係數區塊中之至少一轉換係數執行正負號資料隱藏程序(1020)。熵解碼單元70可經進一步組態以基於是否執行正負號資料隱藏程序之判定而解碼用於區塊之正負號資訊(1030)。
在一實例中,轉換係數區塊為係數群組。在此實例中,單一變
數可為係數群組中之最後非零係數之位置,其中係數群組中之最後非零係數係相對於前向掃描次序予以定義。在另一實例中,單一變數為係數群組中之非零係數之數目。在又一實例中,單一變數為係數群組中之非零轉換係數之絕對值的總和。
在另一實例中,轉換係數區塊為轉換區塊。在此實例中,單一變數為轉換區塊中係數群組中之最後非零係數之位置,其中該係數群組含有轉換區塊中之最後非零係數。
在轉換係數區塊為轉換區塊之實例中,熵解碼單元70可經進一步組態以判定含有最後非零係數的轉換區塊之係數群組、基於單一變數而對含有最後非零係數之係數群組中之至少一轉換係數執行正負號資料隱藏程序,且對用於轉換區塊中在掃描次序上位於含有最後非零係數之係數群組之後的所有其他係數群組之至少一轉換係數執行正負號資料隱藏程序。
正負號資料隱藏程序可由熵解碼單元70以若干方式而執行。在一實例中,熵解碼單元70可經組態以對區塊中之第一非零係數執行正負號資料隱藏程序。在另一實例中,熵解碼單元70可經組態以對區塊中之最後非零係數執行正負號資料隱藏程序。
在又一實例中,熵解碼單元70可經組態以對區塊中之兩個或兩個以上非零係數執行正負號資料隱藏程序。兩個或兩個以上非零係數包括區塊中沿著掃描次序之前兩個非零係數。在另一實例中,兩個或兩個以上非零係數包括區塊中沿著掃描次序之第一非零係數及最後非零係數。
在一實例中,當針對兩個正負號值執行SDH時,熵解碼單元70可經組態以解碼區塊中轉換係數之層級之絕對值中的第一轉換係數之正負號,且解碼經右移位1之區塊中轉換係數之層級之絕對值中的第二轉換係數之正負號。在另一實例中,熵解碼單元70可經組態以解碼區
塊中第一係數群組中之轉換係數之層級之同位中的第一轉換係數之正負號,且解碼區塊中第二係數群組中之轉換係數之層級之同位中的第二轉換係數之正負號。
圖11為展示根據本發明之技術之實例視訊編碼方法的流程圖。圖11之技術可由視訊編碼器20之一或多個硬體單元進行。在一實例中,熵編碼單元56可執行與正負號資料隱藏有關之技術中之一些。
最初,視訊編碼器20可經組態以產生轉換係數區塊(1110)。視訊編碼器20可判定亮度轉換區塊中之亮度轉換係數之複數個係數群組(1120)。視訊編碼器20亦可判定色度轉換區塊中之色度轉換係數之複數個係數群組(1130)。亮度轉換區塊及色度轉換區塊可屬於共同轉換單元。視訊編碼器20可產生指示是否針對亮度轉換區塊啟用SDH之第一語法元素,且產生指示是否針對色度轉換區塊啟用SDH之第二語法元素。產生指示是否針對色度轉換區塊啟用SDH之第二語法元素可取決於用於包含亮度轉換區塊之視訊序列之色彩格式,或色度子取樣格式。
視訊編碼器20可產生第一語法元素及第二語法元素以供包括於諸如SPS之參數集中。在一些組態中,視訊編碼器20可產生指示是否針對複數個轉換單元啟用SDH之第三語法元素。視訊編碼器20可產生第三語法元素以供包括於諸如SPS之第二參數集中,該第二參數集相比於該參數集為較高層級參數集。
視訊編碼器20可判定是否針對亮度轉換區塊之係數群組中之一係數群組啟用正負號資料隱藏(SDH)(1140)。視訊編碼器20可判定是否針對色度轉換區塊之係數群組中之一係數群組啟用SDH(1150)。以此方式,視訊編碼器可獨立於判定是否針對色度轉換區塊之係數群組執行SDH而判定是否針對亮度轉換區塊之係數群組執行SDH。因此,舉例而言,視訊編碼器20可使用SDH來寫碼亮度轉換區塊之係數群組
中之一係數群組,且不使用SDH來寫碼色度轉換區塊之係數群組中之一係數群組。相似地,視訊編碼器20亦可不使用SDH來寫碼亮度轉換區塊之係數群組中之一係數群組,且可使用SDH來寫碼色度轉換區塊之係數群組中之一係數群組。
在上文所描述之技術之一些實例中,視訊編碼器20可產生指示是否針對色度轉換區塊之Cb分量啟用SDH之第一語法元素,且產生指示是否針對色度轉換區塊之Cr分量啟用SDH之第二語法元素。在上文所描述之技術之一些實例中,指示是否針對色度轉換區塊啟用SDH之第二語法元素可取決於指示是否針對亮度轉換區塊啟用SDH之第一語法元素之值。
圖12為展示根據本發明之技術之實例視訊解碼方法的流程圖。圖12之技術可由視訊解碼器30之一或多個硬體單元進行。在一實例中,熵解碼單元70可執行與正負號資料隱藏有關之技術中之一些。
最初,視訊解碼器30可經組態以接收轉換係數區塊(1210)。視訊解碼器30可判定亮度轉換區塊中之亮度轉換係數之複數個係數群組(1220)。視訊解碼器30亦可判定色度轉換區塊中之色度轉換係數之複數個係數群組(1230)。亮度轉換區塊及色度轉換區塊可屬於共同轉換單元。視訊解碼器30可藉由接收指示是否針對亮度轉換區塊啟用SDH之第一語法元素而判定是否針對亮度轉換區塊之係數群組中之一係數群組啟用SDH,且藉由接收指示是否針對色度轉換區塊啟用SDH之第二語法元素而判定是否針對色度轉換區塊之係數群組中之一係數群組執行SDH。接收指示是否針對色度轉換區塊啟用SDH之第二語法元素可取決於用於包含亮度轉換區塊之視訊序列之色彩格式,或色度子取樣格式。
視訊解碼器30可在諸如SPS之參數集中接收第一語法元素及第二語法元素。在一些組態中,視訊解碼器30可接收指示是否針對複數個
轉換單元啟用SDH之第三語法元素。視訊解碼器可在諸如SPS之第二參數集中接收第三語法元素,該第二參數集相比於該參數集為較高層級參數集。
視訊解碼器30可判定是否針對亮度轉換區塊之係數群組中之一係數群組啟用SDH(1240)。視訊解碼器30可判定是否針對色度轉換區塊之係數群組中之一係數群組啟用SDH(1250)。以此方式,視訊解碼器30可獨立於判定是否針對色度轉換區塊之係數群組啟用SDH而判定是否針對亮度轉換區塊之係數群組啟用SDH。因此,舉例而言,視訊解碼器30可針對亮度轉換區塊之係數群組中之一係數群組執行SDH,且不針對色度轉換區塊之係數群組中之一係數群組執行SDH。相似地,視訊解碼器30亦可不針對亮度轉換區塊之係數群組中之一係數群組執行SDH,且針對色度轉換區塊之係數群組中之一係數群組執行SDH。
在上文所描述之技術之一些實例中,當判定是否針對色度轉換區塊之係數群組中之一係數群組執行SDH時,視訊解碼器30可接收指示是否針對色度轉換區塊之Cb分量啟用SDH之第一語法元素,且接收指示是否針對色度轉換區塊之Cr分量啟用SDH之第二語法元素。在上文所描述之技術之一些實例中,指示是否針對色度轉換區塊啟用SDH之第二語法元素可取決於指示是否針對亮度轉換區塊啟用SDH之第一語法元素之值。
在一或多個實例中,所描述功能可以硬體、軟體、韌體或其任何組合予以實施。若以軟體予以實施,則該等功能可作為一或多個指令或程式碼而儲存於電腦可讀媒體上或經由電腦可讀媒體進行傳輸,且由以硬體為基礎之處理單元執行。電腦可讀媒體可包括對應於諸如資料儲存媒體之有形媒體的電腦可讀儲存媒體,或包括(例如)根據通信協定而促進電腦程式自一處至另一處之傳送之任何媒體的通信媒
體。以此方式,電腦可讀媒體通常可對應於(1)為非暫時性之有形電腦可讀儲存媒體,或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或多個電腦或一或多個處理器存取以擷取指令、程式碼及/或資料結構以用於實施本發明所描述之技術的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
作為實例而非限制,此類電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器件、磁碟儲存器件或其他磁性儲存器件、快閃記憶體,或可用以儲存呈指令或資料結構之形式之所要程式碼且可由電腦存取的任何其他媒體。又,任何連接可被適當地稱為電腦可讀媒體。舉例而言,若使用同軸纜線、光纜、雙絞線、數位用戶線(DSL)或諸如紅外線、無線電及微波之無線技術而自網站、伺服器或其他遠端源傳輸指令,則同軸纜線、光纜、雙絞線、DSL或諸如紅外線、無線電及微波之無線技術包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、載波、信號或其他暫時性媒體,而是有關於非暫時性有形儲存媒體。如本文所使用,磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位影音光碟(DVD)、軟性磁碟及藍光光碟,其中磁碟通常以磁性方式再生資料,而光碟藉由雷射以光學方式再生資料。以上各者之組合亦應包括於電腦可讀媒體之範疇內。
指令可由諸如一或多個數位信號處理器(DSP)、一般用途微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效整合式或離散邏輯電路之一或多個處理器執行。因此,如本文所使用,術語「處理器」可指代上述結構或適於實施本文所描述之技術之任何其他結構中任一者。另外,在一些態樣中,本文所描述之功能性可提供於經組態用於編碼及解碼之專用硬體及/或軟體模組內,或併入於組合式編解碼器中。又,該等技術可完全地實施於一或多個電
路或邏輯元件中。
本發明之技術可實施於各種各樣之器件或裝置中,該等器件或裝置包括無線手機、積體電路(IC)或IC集合(例如,晶片組)。本發明中描述各種組件、模組或單元以強調經組態以執行所揭示技術之器件之功能態樣,但未必要求藉由不同硬體單元而實現。實情為,如上文所描述,各種單元可組合於編解碼器硬體單元中,或由互操作性硬體單元(包括如上文所描述之一或多個處理器)之集合結合合適軟體及/或韌體而提供。
已描述各種實例。此等實例及其他實例係在以下申請專利範圍之範疇內。
Claims (48)
- 一種用於解碼視訊資料之方法,該方法包含:接收一轉換係數區塊;判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組;判定一色度轉換區塊中之色度轉換係數之複數個係數群組,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用正負號資料隱藏(SDH);及獨立於該判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項1之方法,其中:判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH包含:接收指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素;且判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH包含:接收指示是否針對該色度轉換區塊啟用SDH之一第二語法元素。
- 如請求項2之方法,其中接收指示是否針對該色度轉換區塊啟用SDH之該第二語法元素取決於用於包含該亮度轉換區塊之一視訊序列之一色彩格式。
- 如請求項1之方法,其中在一參數集中接收該第一語法元素及該第二語法元素。
- 如請求項4之方法,其進一步包含:接收指示是否針對複數個轉換單元啟用SDH之一第三語法元 素,其中在相比於該參數集為一較高層級參數集之一第二參數集中接收該第三語法元素。
- 如請求項5之方法,其中該參數集為一圖像參數集(PPS),且該第二參數集為一序列參數集(SPS)。
- 如請求項1之方法,其中判定是否針對該色度轉換區塊之該等係數群組中之該係數群組啟用SDH包含:接收指示是否針對該色度轉換區塊之一Cb分量啟用SDH之一第一語法元素;及接收指示是否針對該色度轉換區塊之一Cr分量啟用SDH之一第二語法元素。
- 如請求項1之方法,其進一步包含:判定針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH;及判定針對該色度轉換區塊之該等係數群組中之一係數群組停用SDH。
- 如請求項1之方法,其進一步包含:判定針對該亮度轉換區塊之該等係數群組中之一係數群組停用SDH;及判定針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項1之方法,其中判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH包含:接收指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素;且該方法進一步包含:回應於該第一語法元素指示啟用SDH,接收指示是否針對該色度轉換區塊啟用SDH之一第二語法元素。
- 如請求項1之方法,其進一步包含:基於與一第一臨限值比較之一第一單一變數而判定是否針對 該轉換係數區塊中之至少一亮度轉換係數執行一SDH程序;基於與一第二臨限值比較之一第二單一變數而判定是否針對該轉換係數區塊中之至少一色度轉換係數執行該SDH程序;及基於是否針對該至少一亮度轉換係數執行該SDH程序之該判定且基於是否針對該至少一亮度轉換係數執行該SDH程序之該判定而解碼用於該區塊之正負號資訊。
- 一種用於編碼視訊資料之方法,該方法包含:產生一轉換係數區塊;判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組;判定一色度轉換區塊中之色度轉換係數之複數個係數群組,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;傳訊是否針對該亮度轉換區塊之該等係數群組中之一係數群組執行正負號資料隱藏(SDH);及獨立於判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而傳訊是否針對該色度轉換區塊之該等係數群組中之一係數群組執行SDH。
- 如請求項12之方法,其中:傳訊是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH包含:產生指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素;且傳訊是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH包含:產生指示是否針對該色度轉換區塊啟用SDH之一第二語法元素。
- 如請求項13之方法,其中產生指示是否針對該色度轉換區塊啟用SDH之該第二語法元素取決於用於包含該亮度轉換區塊之一視訊序列之一色彩格式。
- 如請求項12之方法,其中產生該第一語法元素及該第二語法元素以供包括於一參數集中。
- 如請求項15之方法,其進一步包含:產生指示是否針對複數個轉換單元啟用SDH之一第三語法元素,其中在相比於該參數集為一較高層級參數集之一第二參數集中接收該第三語法元素。
- 如請求項16之方法,其中該參數集為一圖像參數集(PPS),且該第二參數集為一序列參數集(SPS)。
- 如請求項12之方法,其中傳訊是否針對該色度轉換區塊之該等係數群組中之該係數群組啟用SDH包含:產生指示是否針對該色度轉換區塊之一Cb分量啟用SDH之一第一語法元素;及產生指示是否針對該色度轉換區塊之一Cr分量啟用SDH之一第二語法元素。
- 如請求項12之方法,其進一步包含:傳訊針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH;及傳訊針對該色度轉換區塊之該等係數群組中之一係數群組停用SDH。
- 如請求項12之方法,其進一步包含:傳訊針對該亮度轉換區塊之該等係數群組中之一係數群組停用SDH;及傳訊針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項12之方法,其中傳訊是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH包含:產生指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素;且該方法進一步包含: 回應於該第一語法元素指示啟用SDH,產生指示是否針對該色度轉換區塊啟用SDH之一第二語法元素。
- 如請求項12之方法,其進一步包含:基於與一第一臨限值比較之一第一單一變數而判定是否針對該轉換係數區塊中之至少一亮度轉換係數執行一SDH程序;基於與一第二臨限值比較之一第二單一變數而判定是否針對該轉換係數區塊中之至少一色度轉換係數執行該SDH程序;及基於是否針對該至少一亮度轉換係數執行該SDH程序之該判定且基於是否針對該至少一亮度轉換係數執行該SDH程序之該判定而解碼用於該區塊之正負號資訊。
- 一種用於寫碼視訊資料之器件,該器件包含:一視訊寫碼器,其經組態以:處理一轉換係數區塊;判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組;判定一色度轉換區塊中之色度轉換係數之複數個係數群組,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用正負號資料隱藏(SDH);且獨立於該判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項23之器件,其中該視訊寫碼器經組態以:藉由寫碼指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素而判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH;且藉由寫碼指示是否針對該色度轉換區塊啟用SDH之一第二語法元素而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項24之器件,其中該視訊寫碼器經進一步組態以寫碼指 示是否針對該色度轉換區塊啟用SDH之該第二語法元素取決於用於包含該亮度轉換區塊之一視訊序列之一色彩格式。
- 如請求項23之器件,其中在一參數集中寫碼該第一語法元素及該第二語法元素。
- 如請求項26之器件,其中該視訊寫碼器經進一步組態以寫碼指示是否針對複數個轉換單元啟用SDH之一第三語法元素,其中在相比於該參數集為一較高層級參數集之一第二參數集中寫碼該第三語法元素。
- 如請求項27之器件,其中該參數集為一圖像參數集(PPS),且該第二參數集為一序列參數集(SPS)。
- 如請求項23之器件,其中該視訊寫碼器經進一步組態以:藉由寫碼指示是否針對該色度轉換區塊之一Cb分量啟用SDH之一第一語法元素且寫碼指示是否針對該色度轉換區塊之一Cr分量啟用SDH之一第二語法元素而判定是否針對該色度轉換區塊之該等係數群組中之該係數群組啟用SDH。
- 如請求項23之器件,其中該視訊寫碼器經進一步組態以:判定針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH;且判定針對該色度轉換區塊之該等係數群組中之一係數群組停用SDH。
- 如請求項23之器件,其中該視訊寫碼器經進一步組態以:判定針對該亮度轉換區塊之該等係數群組中之一係數群組停用SDH;且判定針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項23之器件,其中該視訊寫碼器經進一步組態以:藉由寫碼指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素而判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組 啟用SDH;且回應於該第一語法元素指示啟用SDH而寫碼指示是否針對該色度轉換區塊啟用SDH之一第二語法元素。
- 如請求項23之器件,其中該視訊寫碼器經進一步組態以:基於與一第一臨限值比較之一第一單一變數而判定是否針對該轉換係數區塊中之至少一亮度轉換係數執行一SDH程序;基於與一第二臨限值比較之一第二單一變數而判定是否針對該轉換係數區塊中之至少一色度轉換係數執行該SDH程序;且基於是否針對該至少一亮度轉換係數執行該SDH程序之該判定且基於是否針對該至少一亮度轉換係數執行該SDH程序之該判定而寫碼用於該區塊之正負號資訊。
- 如請求項23之器件,其中該視訊寫碼器包含一視訊解碼器。
- 如請求項23之器件,其中該視訊寫碼器包含一視訊編碼器。
- 如請求項23之器件,其中該器件包含以下各者中至少一者:一積體電路;一微處理器;及一無線通信器件,其包含一視訊解碼器。
- 一種用於寫碼視訊資料之裝置,該裝置包含:用於寫碼一轉換係數區塊的構件;用於判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組的構件;用於判定一色度轉換區塊中之色度轉換係數之複數個係數群組的構件,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;用於判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用正負號資料隱藏(SDH)的構件;及用於獨立於判定是否針對該亮度轉換區塊之該等係數群組中 之該係數群組啟用SDH而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH的構件。
- 如請求項37之裝置,其中:用於判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH的該構件包含:用於寫碼指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素的構件;且用於判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH的該構件包含:用於寫碼指示是否針對該色度轉換區塊啟用SDH之一第二語法元素的構件。
- 如請求項37之裝置,其中用於判定是否針對該色度轉換區塊之該等係數群組中之該係數群組啟用SDH的該構件包含:用於寫碼指示是否針對該色度轉換區塊之一Cb分量啟用SDH之一第一語法元素且寫碼指示是否針對該色度轉換區塊之一Cr分量啟用SDH之一第二語法元素的構件。
- 如請求項37之裝置,其進一步包含:用於判定針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH的構件;及用於判定針對該色度轉換區塊之該等係數群組中之一係數群組停用SDH的構件。
- 如請求項37之裝置,其進一步包含:用於判定針對該亮度轉換區塊之該等係數群組中之一係數群組停用SDH的構件;及用於判定針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH的構件。
- 如請求項37之裝置,其中用於判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH的該構件包含:用於寫碼 指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素的構件;且該方法進一步包含:用於回應於該第一語法元素指示啟用SDH而寫碼指示是否針對該色度轉換區塊啟用SDH之一第二語法元素的構件。
- 一種電腦可讀儲存媒體,其儲存指令,該等指令在執行時使一或多個處理器:寫碼一轉換係數區塊;判定一亮度轉換區塊中之亮度轉換係數之複數個係數群組;判定一色度轉換區塊中之色度轉換係數之複數個係數群組,其中該亮度轉換區塊及該色度轉換區塊屬於一共同轉換單元;判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用正負號資料隱藏(SDH);及獨立於判定是否針對該亮度轉換區塊之該等係數群組中之該係數群組啟用SDH而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項43之電腦可讀儲存媒體,其中該一或多個處理器藉由寫碼指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素而判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH,且藉由寫碼指示是否針對該色度轉換區塊啟用SDH之一第二語法元素而判定是否針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項43之電腦可讀儲存媒體,其中該一或多個處理器藉由寫碼指示是否針對該色度轉換區塊之一Cb分量啟用SDH之一第一語法元素且寫碼指示是否針對該色度轉換區塊之一Cr分量啟用SDH之一第二語法元素而判定是否針對該色度轉換區塊之該等係數群組中之該係數群組啟用SDH。
- 如請求項43之電腦可讀儲存媒體,其進一步儲存指令,該等指令在執行時使該一或多個處理器判定針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH,且判定針對該色度轉換區塊之該等係數群組中之一係數群組停用SDH。
- 如請求項43之電腦可讀儲存媒體,其進一步儲存指令,該等指令在執行時使該一或多個處理器判定針對該亮度轉換區塊之該等係數群組中之一係數群組停用SDH,且判定針對該色度轉換區塊之該等係數群組中之一係數群組啟用SDH。
- 如請求項43之電腦可讀儲存媒體,其中該一或多個處理器藉由寫碼指示是否針對該亮度轉換區塊啟用SDH之一第一語法元素而判定是否針對該亮度轉換區塊之該等係數群組中之一係數群組啟用SDH;且其中該電腦可讀儲存媒體進一步儲存指令,該等指令使該一或多個處理器回應於該第一語法元素指示啟用SDH而寫碼指示是否針對該色度轉換區塊啟用SDH之一第二語法元素。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261665788P | 2012-06-28 | 2012-06-28 | |
US201261747143P | 2012-12-28 | 2012-12-28 | |
US13/929,556 US20140003530A1 (en) | 2012-06-28 | 2013-06-27 | Sign hiding techniques for quantized transform coefficients in video coding |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201408076A true TW201408076A (zh) | 2014-02-16 |
Family
ID=49778150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102123370A TW201408076A (zh) | 2012-06-28 | 2013-06-28 | 在視訊寫碼中用於量化轉換係數之正負號隱藏技術 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20140003530A1 (zh) |
TW (1) | TW201408076A (zh) |
WO (1) | WO2014005092A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI822131B (zh) * | 2018-03-29 | 2023-11-11 | 弗勞恩霍夫爾協會 | 轉換係數區塊寫碼技術 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9313498B2 (en) | 2012-04-16 | 2016-04-12 | Qualcomm Incorporated | Sign hiding techniques for quantized transform coefficients in video coding |
US9648350B2 (en) | 2013-07-22 | 2017-05-09 | Texas Instruments Incorporated | Method and apparatus for decoding a progressive JPEG image |
CN105684442B (zh) * | 2013-07-23 | 2020-02-21 | 英迪股份有限公司 | 用于编码/解码图像的方法 |
US9998739B2 (en) * | 2015-03-06 | 2018-06-12 | Qualcomm Incorporated | Optimization for encoding video data using non-square partitions |
US10362310B2 (en) * | 2015-10-21 | 2019-07-23 | Qualcomm Incorporated | Entropy coding techniques for display stream compression (DSC) of non-4:4:4 chroma sub-sampling |
US10440399B2 (en) | 2015-11-13 | 2019-10-08 | Qualcomm Incorporated | Coding sign information of video data |
US11805256B2 (en) * | 2017-07-31 | 2023-10-31 | Electronics And Telecommunications Research Institute | Image encoding/decoding method and device, and recording medium storing bitstream |
US11483575B2 (en) * | 2018-08-24 | 2022-10-25 | Hfi Innovation Inc. | Coding transform coefficients with throughput constraints |
KR20200034645A (ko) | 2018-09-21 | 2020-03-31 | 주식회사 엑스리스 | 영상 신호 부호화/복호화 방법 및 이를 위한 장치 |
US11006150B2 (en) | 2018-09-24 | 2021-05-11 | Tencent America LLC | Method and apparatus for video coding |
US11012701B2 (en) * | 2019-02-22 | 2021-05-18 | Tencent America LLC | Residual coding for transform skip mode and block differential pulse-code modulation |
WO2020233664A1 (en) * | 2019-05-22 | 2020-11-26 | Beijing Bytedance Network Technology Co., Ltd. | Sub-block based use of transform skip mode |
US12041270B2 (en) * | 2019-06-24 | 2024-07-16 | Alibaba Group Holding Limited | Transform-skip residual coding of video data |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2010076856A1 (ja) * | 2009-01-05 | 2012-06-21 | 株式会社東芝 | 動画像符号化方法及び動画像復号化方法 |
US8537200B2 (en) * | 2009-10-23 | 2013-09-17 | Qualcomm Incorporated | Depth map generation techniques for conversion of 2D video data to 3D video data |
-
2013
- 2013-06-27 US US13/929,556 patent/US20140003530A1/en not_active Abandoned
- 2013-06-28 TW TW102123370A patent/TW201408076A/zh unknown
- 2013-06-28 WO PCT/US2013/048716 patent/WO2014005092A1/en active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI822131B (zh) * | 2018-03-29 | 2023-11-11 | 弗勞恩霍夫爾協會 | 轉換係數區塊寫碼技術 |
Also Published As
Publication number | Publication date |
---|---|
WO2014005092A1 (en) | 2014-01-03 |
US20140003530A1 (en) | 2014-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI745522B (zh) | 用於時間延展性支持之修改適應性迴路濾波器時間預測 | |
JP6162150B2 (ja) | ビデオコーディング用の残差4分木(rqt)コーディング | |
US9699472B2 (en) | Restriction of prediction units in B slices to uni-directional inter prediction | |
TWI657692B (zh) | 於視訊寫碼程序中用於係數層級寫碼之萊斯(rice)參數初始化 | |
JP6594903B2 (ja) | パレットベースのビデオコーディングにおけるエスケープサンプルのコーディング | |
JP5922244B2 (ja) | ビデオコーディングにおいて適応ループフィルタとマージされたサンプル適応オフセット | |
JP6266605B2 (ja) | 映像コーディングにおけるロスレスコーディングモード及びパルスコード変調(pcm)モードのシグナリングの統一 | |
JP6144333B2 (ja) | レートひずみ最適量子化におけるレベル決定 | |
JP5847958B2 (ja) | コンテキスト適応型バイナリ算術コード化のためのコンテキスト削減 | |
JP6174123B2 (ja) | ビデオコーディングにおける量子化パラメータ(qp)コーディング | |
KR102010097B1 (ko) | 일원화된 병합 모드 및 적응적 모션 벡터 예측 모드 후보 선택 | |
TW201408076A (zh) | 在視訊寫碼中用於量化轉換係數之正負號隱藏技術 | |
JP6553181B2 (ja) | パレットモードコーディングのための方法 | |
JP2018537908A (ja) | ビデオデータの符号情報をコーディングすること | |
TWI558179B (zh) | 對視訊寫碼發信長期參考圖像 | |
US11330297B2 (en) | Methods incorporating extensions to copy-above mode for palette mode coding | |
JP2017519447A (ja) | ビデオコーディングのためのイントラブロックコピーブロックベクトルシグナリング | |
TW201342925A (zh) | 用於上下文自適應性二進位算術寫碼之係數位準寫碼之輸貫量改良 | |
TW201352004A (zh) | 轉換係數寫碼 | |
KR20160016861A (ko) | 잔차 차동 펄스 코드 변조 (dpcm) 확장들 및 변환 스킵, 회전 및 스캔들과의 조화 | |
KR20140130466A (ko) | B 슬라이스에서의 예측 유닛의 단방향성 인터 예측으로의 제한 | |
WO2013158629A1 (en) | Sign hiding techniques for quantized transform coefficients in video coding | |
JP2015529065A (ja) | スケーラブルビデオコーディングおよび3dビデオコーディングのための多重仮説動き補償 | |
TWI558174B (zh) | 用於寫碼視訊資訊之裝置、方法及非暫時性電腦可讀媒體 | |
JP6067750B2 (ja) | 並列動き推定範囲サイズの暗黙的導出 |