TW201844004A - 用於轉換係數寫碼之內容脈絡模型建立 - Google Patents

用於轉換係數寫碼之內容脈絡模型建立 Download PDF

Info

Publication number
TW201844004A
TW201844004A TW107115627A TW107115627A TW201844004A TW 201844004 A TW201844004 A TW 201844004A TW 107115627 A TW107115627 A TW 107115627A TW 107115627 A TW107115627 A TW 107115627A TW 201844004 A TW201844004 A TW 201844004A
Authority
TW
Taiwan
Prior art keywords
block
video
syntax element
value
coding
Prior art date
Application number
TW107115627A
Other languages
English (en)
Inventor
章立
胡南
錢威俊
馬塔 卡茲維克茲
Original Assignee
美商高通公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商高通公司 filed Critical 美商高通公司
Publication of TW201844004A publication Critical patent/TW201844004A/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • 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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

本發明提供一種用於寫碼視訊資料之裝置,其經組態以執行以下操作:基於視訊資料之一當前區塊的已寫碼資訊判定一第一語法元素之一內容脈絡,其中該第一語法元素的一值指示是否存在與視訊資料之該當前區塊相關聯之至少一個非零變換係數級別;及基於該經判定內容脈絡寫碼該第一語法元素。

Description

用於轉換係數寫碼之內容脈絡模型建立
本發明係關於視訊編碼及視訊解碼。
數位視訊能力可併入至廣泛範圍之裝置中,該等裝置包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、平板電腦、電子書閱讀器、數位攝影機、數位記錄裝置、數位媒體播放器、視訊遊戲裝置、視訊遊戲控制台、蜂巢式或衛星無線電電話(所謂的「智慧型電話」)、視訊電話會議裝置、視訊串流裝置及其類似者。數位視訊裝置實施視訊壓縮技術,諸如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分、進階視訊寫碼(AVC)、ITU-T H.265、高效率視訊寫碼(HEVC)所定義的標準及此等標準之擴展中所描述的彼等視訊壓縮技術。視訊裝置可藉由實施此等視訊壓縮技術而更高效地傳輸、接收、編碼、解碼及/或儲存數位視訊資訊。
視訊壓縮技術執行空間(圖像內)預測及/或時間(圖像間)預測以減少或移除視訊序列中固有之冗餘。對於基於區塊之視訊寫碼,可將視訊圖塊(亦即,視訊圖框或視訊圖框之一部分)分割成視訊區塊,其亦可被稱作樹型區塊、寫碼單元(CU)及/或寫碼節點。使用相對於同一圖像中之相鄰區塊中之參考樣本的空間預測來編碼圖像之經框內寫碼(I)圖塊中的視訊區塊。圖像之經框間寫碼(P或B)圖塊中之視訊區塊可使用相對於同一圖像中之相鄰區塊中之參考樣本的空間預測或相對於其他參考圖像中之參考樣本的時間預測。圖像可被稱作圖框,且參考圖像可被稱作參考圖框。
空間或時間預測導致用於待寫碼區塊之預測性區塊。殘餘資料表示待寫碼之原始區塊與預測性區塊之間的像素差。經框間寫碼區塊係根據指向形成預測性區塊之參考樣本之區塊的運動向量來編碼,且殘餘資料指示經寫碼區塊與預測性區塊之間的差。經框內寫碼區塊係根據框內寫碼模式及殘餘資料來編碼。為了進一步壓縮,可將殘餘資料自像素域變換至變換域,從而導致可接著進行量化之殘餘變換係數。可掃描最初配置成二維陣列之經量化變換係數以便產生變換係數之一維向量,且可應用熵寫碼以達成甚至較多壓縮。
本發明描述與視訊編解碼器中之內容脈絡模型建立相關的技術,且更特定言之,描述用於基於已寫碼資訊選擇用於語法元素之內容脈絡的技術。本發明之技術可(例如)用以針對內容脈絡適應性二進位算術寫碼(CABAC)或其他內容脈絡適應性寫碼方法執行內容脈絡模型建立。
根據一個實例,一種用於寫碼視訊資料之方法包括基於用於視訊資料之一當前區塊的已寫碼資訊判定一第一語法元素之一內容脈絡,其中該第一語法元素之一值指示是否存在與視訊資料之該當前區塊相關聯之至少一個非零變換係數級別;及基於該經判定內容脈絡寫碼該第一語法元素。
根據另一實例,一種用於寫碼視訊資料之裝置包括一記憶體;及一或多個處理器,其經組態以基於視訊資料之一當前區塊的已寫碼資訊判定一第一語法元素之一內容脈絡,其中該第一語法元素的一值指示是否存在與視訊資料之該當前區塊相關聯之至少一個非零變換係數級別;及基於該經判定內容脈絡寫碼該第一語法元素。
根據另一實例用於寫碼視訊資料之設備包括用於基於用於視訊資料之一當前區塊的已寫碼資訊判定一第一語法元素之一內容脈絡,其中該第一語法元素之一值指示是否存在與視訊資料之該當前區塊相關聯之至少一個非零變換係數級別的構件;及用於基於該經判定內容脈絡寫碼該第一語法元素的構件。
根據另一實例,電腦可讀儲存媒體儲存在執行時使得一或多個處理器執行以下操作之指令:基於視訊資料之一當前區塊的已寫碼資訊判定一第一語法元素之一內容脈絡,其中該第一語法元素的一值指示是否存在與視訊資料之該當前區塊相關聯之至少一個非零變換係數級別;及基於該經判定內容脈絡寫碼該第一語法元素。
在附圖及以下描述中闡述本發明的一或多個實例的細節。其他特徵、目標及優勢自描述、圖式及申請專利範圍將係顯而易見的。
本申請案主張2017年5月8日申請之美國臨時專利申請案第62/503,218號之權益,該申請案之全部內容特此以引用之方式併入。
本發明描述與視訊編解碼器中之內容脈絡模型建立相關的技術,且更特定言之,描述用於基於已寫碼資訊選擇用於語法元素之內容脈絡的技術。本發明之技術可(例如)用以針對內容脈絡適應性二進位算術寫碼(CABAC)或其他內容脈絡適應性寫碼方法執行內容脈絡模型建立。本發明之技術可應用於諸如高效視訊寫碼(HEVC)之現存視訊編解碼器中之任一者,或可為用於諸如HEVC之後續標準或HEVC之擴展的未來視訊寫碼標準的高效率寫碼方法。
本發明中之各種技術可參考寫碼進行描述,該寫碼意欲為可指代編碼或解碼任一者的通用術語。同樣,術語「寫碼器」可指代編碼器或解碼器任一者。除非另外明確地陳述,否則不應假定關於視訊編碼器或視訊解碼器描述之技術不可藉由視訊編碼器或視訊解碼器中之另一者執行。舉例而言,在許多情況下,視訊解碼器執行與視訊編碼器相同或有時互逆之寫碼技術以便解碼經編碼視訊資料。在許多情況下,視訊編碼器亦包括視訊解碼迴路,及因此視訊編碼器執行作為編碼視訊資料之部分的視訊解碼。因此,除非另有說明,否則本發明中關於視訊解碼器描述之技術亦可藉由視訊編碼器執行,且反之亦然。
本發明亦可使用諸如當前層、當前區塊、當前圖像、當前圖塊等之術語。在本發明之情形中,術語當前意欲識別相較於(例如)經先前寫碼層、區塊、圖像及圖塊或尚待寫碼之區塊、圖像及圖塊的當前正被寫碼之層、區塊、圖像、圖塊等。
圖1為說明可利用本發明中描述之技術之實例視訊編碼及解碼系統10的方塊圖,該等技術包括用於以框內預測模式編碼及解碼區塊的技術。如圖1中所展示,系統10包括源裝置12,其產生稍後待由目的地裝置14解碼之經編碼視訊資料。源裝置12及目的地裝置14可為廣泛範圍之裝置中之任一者,包括桌上型電腦、筆記型電腦(亦即,膝上型電腦)、平板電腦、機上盒、諸如所謂的「智慧型」手機之電話手持機、所謂的「智慧型」板、電視、攝影機、顯示裝置、數位媒體播放器、視訊遊戲控制台、視訊串流裝置或其類似者。在一些狀況下,源裝置12及目的地裝置14可能經裝備以用於無線通信。
目的地裝置14可經由鏈路16接收待解碼的經編碼視訊資料。鏈路16可為能夠將經編碼視訊資料自源裝置12移動至目的地裝置14的任何類型之媒體或裝置。在一個實例中,鏈路16可為使源裝置12能夠即時將經編碼視訊資料直接傳輸至目的地裝置14之通信媒體。可根據諸如無線通信協定之通信標準調變經編碼視訊資料,且將經編碼視訊資料傳輸至目的地裝置14。通信媒體可包括任何無線或有線通信媒體,諸如射頻(RF)頻譜或一或多個實體傳輸線。通信媒體可形成基於封包之網路之部分,基於封包之網路諸如區域網路、廣域網路或諸如網際網路之全域網路。通信媒體可包括路由器、交換器、基地台或可用於促進自源裝置12至目的地裝置14的通信之任何其他裝備。
替代性地,可將經編碼資料自輸出介面22輸出至儲存裝置17。類似地,可藉由輸入介面自儲存裝置17存取經編碼資料。儲存裝置17可包括多種分佈式或本端存取式資料儲存媒體中之任一者,諸如,硬碟機、藍光光碟、DVD、CD-ROM、快閃記憶體、揮發性或非揮發性記憶體或用於儲存經編碼視訊資料之任何其他適合數位儲存媒體。在另一實例中,儲存裝置17可對應於可保持由源裝置12產生的經編碼視訊之一檔案伺服器或另一中間儲存裝置。目的地裝置14可經由串流傳輸或下載而自儲存裝置17存取所儲存之視訊資料。檔案伺服器可為能夠儲存經編碼視訊資料並將彼經編碼視訊資料傳輸至目的地裝置14之任何類型的伺服器。實例檔案伺服器包括網頁伺服器(例如,用於網站)、FTP伺服器、網路附接儲存(NAS)裝置及本端磁碟機。目的地裝置14可經由任何標準資料連接(包括網際網路連接)而存取經編碼視訊資料。此可包括無線通道(例如,Wi-Fi連接)、有線連接(例如,DSL、電纜數據機等)或適合於存取儲存於檔案伺服器上之經編碼視訊資料的兩者之組合。經編碼視訊資料自儲存裝置17之傳輸可為串流傳輸、下載傳輸或兩者之組合。
本發明之技術不必限於無線應用或設定。該等技術可應用於支援多種多媒體應用中之任一者的視訊寫碼,該等應用諸如,空中電視廣播、有線電視傳輸、衛星電視傳輸、(例如)經由網際網路之串流視訊傳輸、用於儲存於資料儲存媒體上之數位視訊的編碼、儲存於資料儲存媒體上之數位視訊的解碼或其他應用。在一些實例中,系統10可經組態以支援單向或雙向視訊傳輸從而支援諸如視訊串流、視訊播放、視訊廣播及/或視訊電話之應用。
在圖1之實例中,源裝置12包括視訊源18、視訊編碼器20及輸出介面22。在一些狀況下,輸出介面22可包括調變器/解調器(數據機)及/或傳輸器。在源裝置12中,視訊源18可包括諸如視訊俘獲裝置(例如,視訊攝影機)、含有先前所俘獲視訊之視訊存檔、用以自視訊內容提供者接收視訊的視訊饋入介面,及/或用於將電腦圖形資料產生為源視訊的電腦圖形系統之源,或此等源之一組合。作為一項實例,若視訊源18為視訊攝影機,則源裝置12及目的地裝置14可形成所謂的攝影機電話或視訊電話。然而,本發明中所描述之技術一般而言可適用於視訊寫碼,且可應用於無線及/或有線應用。
經俘獲、預先俘獲或電腦產生之視訊可由視訊編碼器20編碼。可經由源裝置12之輸出介面22將經編碼視訊資料直接傳輸至目的地裝置14。經編碼視訊資料亦可(或替代地)儲存至儲存裝置17上用於稍後由目的地裝置14或其他裝置存取,用於解碼及/或播放。
目的地裝置14包括輸入介面28、視訊解碼器30及顯示裝置34。在一些狀況下,輸入介面28可包括接收器及/或數據機。目的地裝置14之輸入介面28經由鏈路16接收經編碼視訊資料。經由鏈路16傳達或在儲存裝置17上所提供之經編碼視訊資料可包括由視訊編碼器20所產生之多種語法元素,其供諸如視訊解碼器30之視訊解碼器在解碼該視訊資料時使用。傳輸於通信媒體上、儲存於儲存媒體上,或儲存於檔案伺服器之經編碼視訊資料內可包括此等語法元素。
顯示裝置34可與目的地裝置14整合或在該目的地裝置的外部。在一些實例中,目的地裝置14可包括整合式顯示裝置且亦經組態以與外部顯示裝置介接。在其他實例中,目的地裝置14可為顯示裝置。大體而言,顯示裝置34將經解碼視訊資料顯示至使用者,且可為多種顯示裝置中之任一者,諸如液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示裝置。
視訊編碼器20及視訊解碼器30可根據諸如HEVC之視訊壓縮標準操作。亦被稱作ITU-T H.265之HEVC(包括其範圍擴展,多視圖擴展(MV-HEVC)及可調式擴展(SHVC))最近藉由ITU-T視訊寫碼專家組(VCEG)及ISO/IEC動畫專家組(MPEG)之視訊寫碼聯合協作小組(JCT-VC)以及3D視訊寫碼擴展研發聯合協作小組(JCT-3V)進行開發。在下文中被稱作HEVC之HEVC標準經識別為建議ITU-T H.265,2016年12月的高效視訊寫碼,移動視訊之寫碼-視聽服務之基礎架構的H系列:視聽及多媒體系統。最新HEVC草案規範可自以下獲得:http://phenix.int-evry.fr/jct/doc_end_user/documents/14_Vienna/wg11/ JCTVC-N1003-v1.zip。包括若干擴展之最新HEVC草案可自以下獲得:http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=10481。
替代或另外地,視訊編碼器20及視訊解碼器30可根據其他未來或現存專屬或行業標準(諸如ITU-T H.264標準,亦被稱作MPEG-4,第10部分,進階視訊寫碼(AVC))或此等標準之擴展而操作。然而,本發明之技術受限於不限於任何特定寫碼標準。視訊壓縮標準之其他實例包括ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262或ISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual及ITU-T H.264 (亦稱為ISO/IEC MPEG-4 AVC),包括其可調式視訊寫碼(SVC)及多視圖視訊寫碼(MVC)擴展。視訊寫碼標準亦包括專屬視訊編解碼器(諸如VP8、VP9、VP10),及藉由其他組織(例如,開放媒體聯盟)開發的視訊編解碼器。
ITU-T VCEG (Q6/16)及ISO/IEC MPEG (JTC 1/SC 29/WG 11)現正研究對於將具有可能超過當前HEVC標準(包括其當前擴展及針對螢幕內容寫碼及高動態範圍寫碼的近期擴展)之壓縮能力的壓縮能力之未來視訊寫碼技術標準化的可能性。該等群組正共同致力於聯合合作工作(被稱為聯合視訊探索小組(JVET))中之此探索活動,以評估由此領域中之專家建議的壓縮技術設計。JVET第一次會議於2015年10月19日至21日期間召開。JVET參考軟體之最新版本(亦即,聯合探索模型5(JEM 5))可自以下進行下載:https://jvet.hhi.fraunhofer.de/svn/ svn_HMJEMSoftware/tags/HM-16.6-JEM-5.0/。JEM5之演算法描述可被稱為JVET-E1001。
本發明預期,源裝置12之視訊編碼器20可經組態以根據此等當前或未來標準中之任一者編碼視訊資料。類似地,大體上亦預期,目的地裝置14之視訊解碼器30可經組態以根據此等當前或未來標準中之任一者解碼視訊資料。本發明之一些技術可利用HEVC術語進行描述以便於解釋。然而,此等技術無需受限於HEVC,而實際上經明確構想,此等技術可適用於諸如HEVC之後續標準的未來標準。
儘管圖1中未展示,但在一些態樣中,視訊編碼器20及視訊解碼器30可各自與音訊編碼器及解碼器整合,且可包括適當MUX-DEMUX單元,或其他硬體及軟體以處置共同資料串流或單獨資料串流中之音訊及視訊兩者的編碼。若適用,則在一些實例中,MUX-DEMUX單元可符合ITU H.223多工器協定或其他協定(諸如,使用者資料報協定(UDP))。
視訊編碼器20及視訊解碼器30各自可實施為多種合適編碼器電路中之任一者,諸如,一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、軟體、硬體、韌體或其任何組合。當該等技術部分以軟體實施時,裝置可將用於軟體之指令儲存於適合的非暫時性電腦可讀媒體中,且使用一或多個處理器在硬體中執行該等指令,以執行本發明之技術。視訊編碼器20及視訊解碼器30中之每一者可包括在一或多個編碼器或解碼器中,編碼器或解碼器中之任一者可整合為各別裝置中之組合式編碼器/解碼器(編解碼器)之部分。
如以上文介紹,JCT-VC最近已定案HEVC標準之開發。在HEVC及其他視訊寫碼規範中,視訊序列通常包括一系列圖像。圖像亦可被稱為「圖框」。圖像可包括三個樣本陣列,指示為SL 、SCb 及SCr 。SL 為明度樣本之二維陣列(即,區塊)。SCb 為Cb色訊樣本之二維陣列。SCr 為Cr色度樣本之二維陣列。色訊樣本亦可在本文中被稱作「色度(chroma)」樣本。在其他情況下,圖像可為單色的,且可僅包括明度樣本陣列。
為了產生圖像之經編碼表示,視訊編碼器20可產生寫碼樹型單元(CTU)之集合。該等CTU中之每一者可包括明度樣本之寫碼樹型區塊(CTB)、色度樣本之兩個對應寫碼樹型區塊,及用於寫碼寫碼樹型區塊之樣本的語法結構。在單色圖像或具有三個單獨色彩平面之圖像中,CTU可包括單一寫碼樹型區塊及用於寫碼該寫碼樹型區塊之樣本的語法結構。寫碼樹型區塊可為樣本之N×N區塊。CTU亦可被稱作「樹型區塊」或「最大寫碼單元」 (LCU)。HEVC之CTU可廣泛地類似於諸如H.264/AVC之其他標準之巨集區塊。然而,CTU未必限於特定大小,且可包括一或多個寫碼單元(CU)。圖塊可包括按光柵掃描次序連續地定序之整數數目個CTU。
為產生經寫碼的CTU,視訊編碼器20可對CTU之寫碼樹型區塊遞迴地執行四分樹分割,以將寫碼樹型區塊劃分成寫碼區塊,因此命名為「寫碼樹型單元」。寫碼區塊可為樣本之N×N區塊。CU可包括具有明度樣本陣列、Cb樣本陣列及Cr樣本陣列之圖像的明度樣本之寫碼區塊及色度樣本之兩個對應寫碼區塊,及用於寫碼該等寫碼區塊之樣本的語法結構。在單色圖像或具有三個單獨色彩平面之圖像中,CU可包含單個寫碼區塊及用於寫碼該寫碼區塊之樣本的語法結構。
視訊編碼器20可將CU之寫碼區塊分割成一或多個預測區塊。預測區塊為供應用相同預測的樣本之矩形(亦即,正方形或非正方形)區塊。CU之預測單元(PU)可包括明度樣本之預測區塊、色度樣本之兩個對應預測區塊及用以預測該預測區塊之語法結構。在單色圖像或包含三個單獨色彩平面之圖像中,PU可包括單一預測區塊及用於對該預測區塊進行預測之語法結構。視訊編碼器20可針對CU之每一PU的明度預測區塊、Cb預測區塊及Cr預測區塊產生預測性明度區塊、預測性Cb區塊及預測性Cr區塊。
視訊編碼器20可使用框內預測或框間預測來產生PU之預測性區塊。若視訊編碼器20使用框內預測產生PU之預測性區塊,則視訊編碼器20可基於與PU相關聯之圖像之經解碼樣本產生PU之預測性區塊。若視訊編碼器20使用框間預測以產生PU之預測性區塊,則視訊編碼器20可基於不同於與PU相關聯之圖像的一或多個圖像之經解碼樣本,產生PU之預測性區塊。
在視訊編碼器20產生CU之一或多個PU的預測性明度區塊、預測性Cb區塊及預測性Cr區塊之後,視訊編碼器20可產生CU之明度殘餘區塊。CU之明度殘餘區塊中之每一樣本指示CU之預測性明度區塊中之一者中的明度樣本與CU之原始明度寫碼區塊中的對應樣本之間的差異。另外,視訊編碼器20可產生用於CU之Cb殘餘區塊。CU之Cb殘餘區塊中的每一樣本可指示CU之預測性Cb區塊中之中一者中的Cb樣本與CU之原始Cb寫碼區塊中之對應樣本之間的差異。視訊編碼器20亦可產生CU之Cr殘餘區塊。CU之Cr殘餘區塊中之每一樣本可指示CU之預測性Cr區塊之中之一者中的Cr樣本與CU之原始Cr寫碼區塊中之對應樣本之間的差異。
此外,視訊編碼器20可使用四分樹分割以將CU之明度殘餘區塊、Cb殘餘區塊及Cr殘餘區塊分解為一或多個明度變換區塊、Cb變換區塊及Cr變換區塊。變換區塊為應用相同變換之樣本的矩形(亦即,正方形或非正方形)區塊。CU之變換單元(TU)可包括明度樣本之一變換區塊、色度樣本之兩個對應變換區塊及用以變換該變換區塊樣本之語法結構。因此,一CU之每一TU可與一明度變換區塊、一Cb變換區塊及一Cr變換區塊相關聯。與該TU相關聯之明度變換區塊可為CU之明度殘餘區塊之一子區塊。該Cb變換區塊可為CU之Cb殘餘區塊之一子區塊。該Cr變換區塊可為CU之Cr殘餘區塊的一子區塊。在單色圖像或具有三個單獨色彩平面之圖像中,一TU可包括一單個變換區塊及用以變換該變換區塊之樣本的語法結構。
視訊編碼器20可將一或多個變換應用於一TU之一明度變換區塊以產生該TU之一明度係數區塊。一係數區塊可為變換係數之一個二維陣列。一變換係數可為一純量。視訊編碼器20可將一或多個變換應用至一TU之一Cb變換區塊以產生該TU之一Cb係數區塊。視訊編碼器20可將一或多個變換應用於一TU之一Cr變換區塊,以產生該TU之一Cr係數區塊。
在產生一係數區塊(例如,一明度係數區塊、一Cb係數區塊或一Cr係數區塊)之後,視訊編碼器20可將該係數區塊量化。量化大體上係指將變換係數量化以可能地減少用以表示變換係數之資料之量從而提供進一步壓縮的程序。在視訊編碼器20量化一係數區塊之後,視訊編碼器20可對指示經量化變換係數之語法元素進行熵編碼。舉例而言,視訊編碼器20可對指示經量化變換係數之該等語法元素執行CABAC。
視訊編碼器20可輸出包括形成經寫碼圖像及相關聯資料之一表示的一位元序列之一位元串流。該位元串流可包括網路抽象層(NAL)單元之一序列。一NAL單元為含有NAL單元中的資料之類型之一指示及含有彼資料的呈按需要穿插有仿真阻止位元之原始位元組序列有效負載(RBSP)之形式的位元組之一語法結構。該等NAL單元中之每一者包括一NAL單元標頭,且囊封一RBSP。該NAL單元標頭可包含指示一NAL單元類型碼之一語法元素。藉由一NAL單元之NAL單元標頭指定的NAL單元類型碼指示該NAL單元之類型。一RBSP可為含有囊封在一NAL單元內的整數數目個位元組之語法結構。在一些情況下一RBSP包括零個位元。
不同類型之NAL單元可囊封不同類型之RBSP。舉例而言,一第一類型之NAL單元可囊封一圖像參數集(PPS)之一RBSP,一第二類型之NAL單元可囊封一經寫碼截塊之一RBSP,一第三類型之NAL單元可囊封SEI訊息之一RBSP,等等。囊封視訊寫碼資料之RBSP (與參數集合及SEI訊息之RBSP相對)的NAL單元可被稱作視訊寫碼層(VCL) NAL單元。
視訊解碼器30可接收由視訊編碼器20產生之位元串流。此外,視訊解碼器30可剖析位元串流以自該位元串流獲得語法元素。視訊解碼器30可至少部分基於自位元串流獲得之語法元素而重建構視訊資料之圖像。重建構視訊資料之程序可大體上與由視訊編碼器20執行之程序互逆。另外,視訊解碼器30可反量化與當前CU之TU相關聯的係數區塊。視訊解碼器30可對係數區塊執行反變換以重建構與當前CU之TU相關聯的變換區塊。視訊解碼器30可藉由將當前CU之PU的預測性區塊之樣本添加至當前CU之TU的變換區塊之對應樣本來重建構當前CU之寫碼區塊。藉由重建構圖像之各CU的寫碼區塊,視訊解碼器30可重建構圖像。
如上文介紹,在HEVC中,圖塊中之最大寫碼單元可被稱作CTB。CTB含有四分樹,該四分樹之節點為寫碼單元。CTB之大小可介於HEVC主規範中之16×16至64×64的範圍中(儘管技術上可支援8×8 CTB大小)。但一CU可與一CTB具有相同大小,且小至8×8。每一寫碼單元係運用一個模式寫碼。當CU經框間寫碼時,CU可進一步分割成2或4個PU,或在無進一步分割的情況下變為僅僅一個PU。當兩個PU存在於一個CU中時,兩個PU可分別為一半大小的矩形或具有CU之¼或¾大小的兩個矩形大小。
當CU經框間寫碼時,針對每一PU提供運動資訊之一個集合。另外,每一PU係運用唯一框間預測模式來寫碼以導出運動資訊集合。
PU為藉由分割CU界定的區域,在該區域上應用相同預測。一般而言,PU形狀並不限於正方形,以便促進分割匹配圖像中之真實物件之邊界的形狀。
圖2展示用於經框間寫碼CU之8分割區模式的實例。每一CU取決於分割區模式而含有一個、兩個或四個PU。圖2說明可用於界定用於經框間寫碼之CU之PU的八個分割區模式。PART_2N×2N及PART_N×N分割區模式用於經框內寫碼之CU。僅僅當對應CU大小等於最小CU大小時才允許分割區模式PART_N×N。
現將描述用於經框間預測之預測單元的合併旗標。經框間預測之預測單元之合併旗標等於1指定運動資訊(運動向量及參考索引)與一個候選者相同。在此狀況下,在位元串流中僅僅發信候選者索引,而非實際運動資訊。
下文展示的HEVC標準之表7.3.8.6展示預測單元語法之實例。7.3.8.6 預測單元語法
現將描述TU及變換樹型結構之態樣。每一CU對應於一個變換樹,其為四分樹,其葉片為變換單元。
變換單元(TU)為由CU之四分樹分割界定的正方形區域,其共用相同變換及量化程序。圖3中說明CU內的多個TU之四分樹結構。
圖3展示CU內之變換樹型結構的實例。在圖3之實例中,TU形狀始終為正方形,且可採取自32×32降至4×4樣本的大小。最大四分樹深度係可調整的且在圖塊標頭語法中指定。對於框間CU,TU可大於PU,亦即TU可含有PU邊界。然而,TU無法與經框內寫碼CU之PU邊界交叉。
等於1之t_root_cbf指定transform_tree語法結構對於當前寫碼單元存在。等於0之rqt_root_cbf指定transform_tree語法結構對於當前寫碼單元並不存在。當rqt_root_cbf不存在時,推斷其值為等於1。
當rqt_root_cbf等於0時,變換樹僅僅含有一個節點,意謂該節點並不進一步***且split_transform_flag等於0。另外,當rqt_root_cbf等於0時,無需對CU執行變換。具有等於1之split_transform_flag的變換樹內的節點進一步***成四個節點。變換樹之葉片具有等於0之split_transform_flag。
為簡單起見,若變換單元或變換樹對應於並不具有變換之區塊,則變換樹或變換單元因為變換之層次自身仍存在而仍被視為變換樹或變換單元。通常,變換得以跳過之區塊位於變換單元內。
現將描述TU之經寫碼區塊旗標(cbf)的態樣。等於1之變換單元的cbf指定變換單元含有不等於0之一或多個變換係數級別。等於0之變換單元的cbf之值指定變換單元之所有變換係數級別為0。cbf之值係針對變換單元之每一分量進行設定,亦即,cbf之值分別針對明度、cb及cr分量進行設定。
下文HEVC標準之表7.3.8.5展示CU語法之實例。7.3.8.5 寫碼單元語法
下文HEVC標準之表7.3.8.8展示變換樹語法之實例。7.3.8.8 變換樹語法
HEVC標準之章節7.4.9.8如下描述變換樹語義: split_transform_flag[x0][y0][trafoDepth]指定區塊出於變換寫碼之目的被***成具有一半水平大小及一半垂直大小的四個區塊。陣列索引x0、y0指定所考慮區塊之左上明度樣本關於圖像之左上明度樣本之位置(x0,y0)。陣列索引trafoDepth出於變換寫碼之目的指定寫碼區塊至區塊之當前細分層級。對於對應於寫碼區塊之區塊,trafoDepth等於0。 變數interSplitFlag如下予以導出: -若max_transform_hierarchy_depth_inter等於0,且CuPredMode[x0][y0]等於MODE_INTER,且PartMode不等於PART_2Nx2N且trafoDepth等於0,則interSplitFlag被設定為等於1。 -否則,interSplitFlag被設定為等於0。 當split_transform_flag[x0][y0][trafoDepth]並不存在時,推斷如下: -若以下條件中之一或多者為真,則split_transform_flag[x0][y0][trafoDepth]之值推斷為等於1: -log2TrafoSize大於MaxTbLog2SizeY。 -IntraSplitFlag等於1且trafoDepth等於0。 -interSplitFlag等於1。 -否則,split_transform_flag[x0][y0][trafoDepth]之值推斷為等於0。 cbf_luma[x0][y0][trafoDepth]等於1指定明度變換區塊含有不等於0的一或多個變換係數級別。陣列索引x0、y0指定所考慮變換區塊之左上明度樣本關於圖像之左上明度樣本之位置(x0,y0)。陣列索引trafoDepth出於變換寫碼之目的指定寫碼區塊至區塊之當前細分層級。對於對應於寫碼區塊之區塊,trafoDepth等於0。當cbf_luma[x0][y0][trafoDepth]並不存在時,其推斷為等於1。
cbf_cb[x0][y0][trafoDepth]等於1指定Cb變換區塊含有不等於0的一或多個變換係數級別。陣列索引x0,y0指定所考慮變換區塊之左上位置(x0,y0)。陣列索引trafoDepth出於變換寫碼之目的指定寫碼區塊至區塊之當前細分層級。對於對應於寫碼區塊之區塊,trafoDepth等於0。當cbf_cb[x0][y0][trafoDepth]並不存在時,其推斷為等於0。 cbf_cr[x0][y0][trafoDepth]等於1指定Cr變換區塊含有不等於0的一或多個變換係數級別。陣列索引x0,y0指定所考慮變換區塊之左上位置(x0,y0)。陣列索引trafoDepth出於變換寫碼之目的指定寫碼區塊至區塊之當前細分層級。對於對應於寫碼區塊之區塊,trafoDepth等於0。當cbf_cr[x0][y0][trafoDepth]並不存在時,其推斷為等於0。
下文表9-4展示初始化程序中的內容脈絡索引(ctxIdx)與每一initializationType之語法元素的關聯性。 9-4
下文表9-21展示cbf_luma之ctxIdx的initValue之值的實例。 9-21
下文表9-22展示cbf_cb及cbf_cr之ctxIdx的initValue之值的實例。 9-22
現將描述內容脈絡模型建立之態樣。可使用超過1個內容脈絡寫碼cbf。更特定言之,變換深度可用以選擇內容脈絡索引。下表中可見詳細資訊。更特定言之,cbf_luma之選擇取決於變換深度(亦即,trafoDepth)是否等於0,而cbf_cb及cbf_cr之選擇取決於變換深度。在HEVC中,變換深度可為自0至3;因此,可使用4個內容脈絡寫碼cbf_cb及cbf_cr。
下文表9-48展示內容脈絡索引遞增(ctxInc)至具有經內容脈絡寫碼之二進位的語法元素之指派。 9-48
JEM軟體中採用如2016年6月H.Huang、K.Zhang、Y.-W.Huang、S.Lei的「EE2.1:Quadtree plus binary tree structure integration with JEM tools」JVET-C0024中所描述的QTBT結構,其全部內容併入本文中。在QTBT結構中,寫碼樹型區塊(CTB)首先由四分樹結構分割。四分樹葉片節點藉由二元樹結構進一步分割。二元樹葉節點(亦即,寫碼區塊(CB))在無進一步分割的情況下用於預測及變換。對於P及B圖塊,一個寫碼樹型單元(CTU)中之明度及色度CTB共用同一QTBT結構。對於I圖塊,明度CTB藉由QTBT結構分割成CB,且兩個色度CTB藉由另一QTBT結構分割成色度CB。
CTU(或用於I圖塊之CTB)(其為四分樹之根節點)首先藉由四分樹分割,其中一個節點之四分樹***可經重複直至節點到達最小允許四分樹葉節點大小(MinQTSize)為止。若四分樹葉節點大小不大於最大允許二元樹根節點大小(MaxBTSize),則四分樹葉節點可藉由二元樹進一步分割。一個節點之二元樹分割可被迭代直至節點到達最小允許二元樹葉節點大小(MinBTSize)或最大允許二元樹深度(MaxBTDepth)為止。二元樹葉節點(亦即CU(或用於I圖塊之CB))將在無進一步分割的情況下用於預測(例如,圖像內或圖像間預測)及變換。亦即,在QTBT結構中,CU/PU/TU之概念經對準且三者始終相同。
在二元樹***中存在兩種***類型:對稱水平***及對稱垂直***。
在QTBT分割結構之一個實例中,CTU大小經設定為128×128(明度樣本及對應64×64 Cb/Cr樣本),MinQTSize經設定為16×16,MaxBTSize經設定為64×64,MinBTSize(對於寬度及高度兩者)經設定為4,且MaxBTDepth經設定為4。四分樹分割首先應用於CTU以產生四分樹葉節點。四分樹葉節點可具有自16×16(亦即,MinQTSize)至128×128(亦即,CTU大小)之大小。若葉四分樹節點為128×128,則葉四分樹現在不由二元樹進一步***,此係由於大小超過MaxBTSize(亦即,64×64)。否則,葉四分樹節點將藉由二元樹進一步分割。因此,四分樹葉節點亦為二元樹之根節點,且其二元樹深度被定義為0。二元樹型深度到達MaxBTDepth(亦即,4)意指無進一步***。二元樹節點具有等於MinBTSize(亦即,4)之寬度意指無進一步水平***。類似地,具有等於MinBTSize之高度的二元樹節點意指不進一步垂直***。二元樹之葉節點(亦即CU)在無更進一步分割之情況下藉由預測及變換進一步處理。
圖4A說明藉由使用QTBT進行的區塊分割之實例,且圖4B說明對應樹型結構。實線指示四分樹***,且點線指示二元樹***。在二元樹之每一***(亦即,非葉)節點中,一個旗標經發信以指示使用哪一***類型(亦即,水平或垂直),其中0指示水平***且1指示垂直***。對於四分樹***,因為區塊始終水平地且垂直地***為具有相等大小之4個子區塊,所以無需指示***類型。
圖4A說明使用QTBT分割技術分割的區塊150 (例如,CTB)之實例。如圖4A中所示,使用QTBT分割技術,穿過每一區塊之中心對稱地***所得區塊中的每一者。圖4B說明對應於圖4A之區塊分割的樹型結構。圖4B中之實線指示四分樹***,且點線指示二元樹***。在一個實例中,在二元樹之每一***(亦即,非葉)節點中,語法元素(例如,旗標)經發信以指示執行的***之類型(例如,水平或垂直),其中0指示水平***且1指示垂直***。對於四分樹***,由於四分樹***始終將區塊水平地且垂直地***成具有相等大小之4個子區塊,因此無需指示***類型。
如圖4B中所示,在節點170處,使用QT分割將區塊150***成圖4A中所示之四個區塊151、152、153及154。區塊154並不進一步***,且因此為葉節點。在節點172處,使用BT分割將區塊151進一步***成兩個區塊。如圖4B中所示,節點172係以1標記,指示垂直***。因而,節點172處的***產生區塊157以及包括區塊155及156兩者的區塊。區塊155及156係在節點174處藉由進一步垂直***而產生。在節點176處,使用BT分割將區塊152進一步***成兩個區塊158及159。
在節點178處,使用QT分割將區塊153***成4個相等大小區塊。區塊163及區塊166係自此QT分割而產生且不進一步***。在節點180處,使用垂直二元樹***首先***左上方區塊,從而產生區塊160及右垂直區塊。接著使用水平二元樹***將右垂直區塊***成區塊161及區塊162。在節點184處使用水平二元樹***將在節點178處用四分樹***產生的右下方區塊***成區塊164及165。
對於I圖塊,提議明度色度分離之區塊分割結構。一個CTU之明度分量(亦即,明度CTB)藉由QTBT結構分割成明度CB,且彼CTU之兩個色度分量(亦即,兩個色度CTB)藉由另一QTBT結構分割成色度CB。
對於P圖塊及B圖塊,用於明度及色度之區塊分割結構經共用。亦即,一個CTU(包括明度及色度兩者)藉由一個QTBT結構分割成CU。
現將描述用於QTBT中之cbf的內容脈絡模型建立。在QTBT中,cbf之內容脈絡模型建立仍取決於變換深度。然而,變換大小始終等於QTBT中之CU/PU大小,亦即,變換深度始終設定成0。因此,僅僅將一個內容脈絡用於一個圖塊類型以供寫碼cbf_luma;且使用另一內容脈絡一起寫碼cbf_cb及cbf_cr。在JEM中,僅僅將一個內容脈絡用於寫碼合併旗標。
JEM中之內容脈絡模型建立之設計可具有一些潛在問題。作為一個實例,一個內容脈絡可能無法在不同模式下俘獲cbf分佈之不同特性。根據脫機統計,針對經框內寫碼明度區塊,cbf等於1的可能性通常高於針對用相同量化參數寫碼之視訊區塊的經框間寫碼明度區塊的情況。作為潛在問題之另一實例,當前未利用cbf與其他語法元素之間的關係。
本發明描述可解決上文問題的技術。可組合本發明之技術中之一些。另外,所提議之技術可能不會受限於TU始終等於對應CU/PU(例如,在大小及形狀方面)的寫碼結構。
根據本發明之技術,視訊編碼器20及視訊解碼器30可執行取決於經寫碼資訊之語法元素的內容脈絡模型建立,該語法元素指示區塊(例如,HEVC規範中之cbf_luma/cbf_cb/cbf_cr)中是否存在至少一個非零變換係數級別。經寫碼資訊可(例如)被定義為寫碼模式,例如,經框內寫碼模式或經框間寫碼模式。因此,使用框內或框間模式進行寫碼之圖塊/圖像內的區塊可利用不同內容脈絡來寫碼語法元素。另外地或替代性地,經寫碼資訊可被定義為區塊大小。出於實例之目的,可假定,變換區塊大小表示為W*H,其中W指示變換區塊之寬度且H指示變換區塊之高度。在一個實例中,經寫碼資訊可被定義為log2(W)+log2(H)或W*H或min(W,H)或max(W,H)。另外地或替代性地,經寫碼資訊可被定義為變換區塊之形狀,例如正方形或非正方形;或被定義為變換類型。可應用相同內容脈絡模型建立方法來針對不同彩色分量選擇內容脈絡,但可針對不同彩色分量分離該等內容脈絡。
根據本發明之其他技術,視訊編碼器20及視訊解碼器30可使用相鄰區塊之變換係數級別資訊來寫碼當前區塊之一些語法元素。若相鄰區塊具有少數非零經量化係數,則當前區塊可能為穩定區域(亦即,歸因於低殘餘能量而易於預測的區域),該區域可指示低空間差異或低時間差異。在一個實例中,視訊編碼器20及視訊解碼器30可使用相鄰區塊之cbf值來選擇用於寫碼合併旗標之內容脈絡。在另一實例中,視訊編碼器20及視訊解碼器30可使用相鄰區塊之cbf值來選擇用於預測模式之內容脈絡。在一個實例中,相鄰區塊為鄰近於當前圖塊/圖像塊/圖像內之當前區塊的彼等區塊。在一個實例中,相鄰區塊可為參考圖像中之同置區塊,或鄰近同置區塊之相鄰區塊。
現將描述取決於經寫碼模式之cbf之內容脈絡模型建立的實例。根據本發明之技術,相較於使用類似編號的上表,下表已修改。 9-4- 初始化程序中 ctxIdx 與每一 initializationType 之語法元素的關聯性 9-21- 用於 cbf_luma ctxIdx initValue 之值 9-22- 用於 cbf_cb cbf_cr ctxIdx initValue 之值
視訊編碼器20及視訊解碼器30可執行如下文更詳細地描述之內容脈絡模型建立。可使用超過1個內容脈絡寫碼cbf。更特定言之,變換深度可用以選擇內容脈絡索引。下表中展示詳細實例資訊。
cbf_luma之選擇取決於變換深度(亦即,trafoDepth)是否等於0,而cbf_cb及cbf_cr之選擇取決於變換深度。在HEVC中,變換深度可為自0至3;因此,可使用4個內容脈絡寫碼cbf_cb及cbf_cr。
下文表9-48展示如基於本發明之技術所更新的,ctxInc至具有經內容脈絡寫碼之二進位的語法元素之指派的實例。 9-48
視訊編碼器20及視訊解碼器30可針對合併旗標執行內容脈絡模型建立。可使用多於一個內容脈絡寫碼合併旗標。根據一個實例,可利用來自兩個相鄰(左側及頂部)明度區塊的cbf。 ctxInc = cbf_top + cbf_left
視訊編碼器20及視訊解碼器30可針對取決於TU大小之cbf執行內容脈絡模型建立。相較於大區塊,小區塊更易於預測。因而,小區塊更可能具有較少非零經量化係數。cbf之內容脈絡模型建立可視TU大小而定。
分別藉由W及H指示TU之寬度及高度。在一個實例中,表9-48可經改進為: 9- 48 -ctxInc 至具有經 內容脈絡寫碼二進位之語法元素的指派
圖5為說明可實施本發明中描述之技術的實例視訊編碼器20之方塊圖。視訊編碼器20可執行視頻圖塊內的視訊區塊之框內及框間寫碼。框內寫碼依賴於空間預測以減小或移除給定視訊圖框或圖像內之視訊的空間冗餘。框間寫碼依賴於時間預測以減小或移除視訊序列之鄰近圖框或圖像內之視訊中的時間冗餘。框內預測模式(I模式)可指若干基於空間之壓縮模式中之任一者。
在圖5之實例中,視訊編碼器20包括視訊資料記憶體40、預測處理單元41、經解碼圖像緩衝器(DPB) 64、求和器50、變換處理單元52、量化單元54及熵編碼單元56。預測處理單元41包括分割單元35、運動估計單元42、運動補償單元44、框內BC單元48及框內預測處理單元46。為了視訊區塊重新建構,視訊編碼器20亦包括反量化單元58、反變換處理單元60及求和器62。迴路內濾波器(未經描繪)可定位於求和器62與DPB 64之間。
在各種實例中,視訊編碼器20之固定及/或可程式化硬體單元可經指派任務以執行本發明之技術。又,在一些實例中,本發明之技術可在圖5中所示之視訊編碼器20之所說明的固定或可程式化硬體單元中之一或多者中被劃分,但其他裝置亦可執行本發明之技術。
視訊資料記憶體40可儲存待由視訊編碼器20之組件編碼的視訊資料。可(例如)自視訊源18獲得儲存於視訊資料記憶體40中之視訊資料。DPB 64為緩衝器,其儲存以供藉由視訊編碼器20用於編碼視訊資料的參考視訊資料(例如,在框內或框間寫碼模式中,亦被稱作框內或框間預測寫碼模式)。視訊資料記憶體40及DPB 64可由諸如動態隨機存取記憶體(DRAM)之多種記憶體裝置中之任一者形成,包括同步DRAM (SDRAM)、磁阻式RAM (MRAM)、電阻式RAM (RRAM)或其他類型之記憶體裝置。視訊資料記憶體40及DPB 64可由同一記憶體裝置或單獨記憶體裝置提供。在各種實例中,視訊資料記憶體40可與視訊編碼器20之其他組件一起在晶片上,或相對於彼等組件在晶片外。
如圖5中所示,視訊編碼器20接收視訊資料,且分割單元35將資料分割成視訊區塊。此分割亦可包括分割成圖塊、圖像塊或其他較大單元,以及(例如)根據LCU和CU之四分樹結構的視訊區塊分割。視訊編碼器20大體上說明編碼待編碼視訊圖塊內之視訊區塊的組件。圖塊可劃分成多個視訊區塊(且可能劃分成被稱作圖像塊之視訊區塊集合)。預測處理單元41可基於誤差結果(例如,寫碼速率及失真程度)針對當前視訊區塊選擇複數個可能寫碼模式中之一者,諸如複數個框內寫碼模式中之一者或複數個框間寫碼模式中之一者。預測處理單元41可將所得經框內或框間寫碼區塊提供至求和器50以產生殘餘區塊資料並提供至求和器62以重建構經編碼區塊以用於用作參考圖像。
預測處理單元41內之框內預測處理單元46可執行當前視訊區塊相對於與待寫碼之當前區塊相同之圖框或圖塊中的一或多個相鄰區塊之框內預測性寫碼以提供空間壓縮。預測處理單元41內之運動估計單元42及運動補償單元44執行當前視訊區塊相對於一或多個參考圖像中之一或多個預測性區塊之框間預測性寫碼,以提供時間壓縮。
運動估計單元42可經組態以根據視訊序列之預定圖案來判定用於視訊圖塊之框間預測模式。預定圖案可將序列中之視訊圖塊指定為P圖塊或B圖塊。運動估計單元42及運動補償單元44可高度整合,但出於概念目的而單獨說明。由運動估計單元42執行之運動估計為產生運動向量之處理,該等運動向量估計視訊區塊之運動。舉例而言,運動向量可指示將當前視訊圖框或圖像內之視訊區塊的PU相對於參考圖像內之預測性區塊的移位。
儘管視訊編碼器20展示為具有框內BC單元48,但本發明之技術可由並非使用框內BC模式編碼視訊資料之視訊編碼器執行。此等視訊編碼器可(例如)僅僅在框內及框間模式中編碼視訊區塊,或可使用本發明中未描述之其他模式,諸如調色盤模式。框內BC單元48可以類似於運動估計單元42判定運動向量來進行框間預測的方式判定用於框內BC寫碼之向量(例如,區塊向量),或可利用運動估計單元42判定該區塊向量。
預測性區塊為就像素差而言被發現緊密地匹配待寫碼的視訊區塊之PU之區塊,該像素差可由絕對差和(SAD)、平方差和(SSD)或其他差度量判定。在一些實例中,視訊編碼器20可計算儲存於DPB 64中之參考圖像的子整數像素位置的值。舉例而言,視訊編碼器20可內插該參考圖像之四分之一像素位置、八分之一像素位置或其他分數像素位置之值。因此,運動估計單元42可執行關於全像素位置及分數像素位置之運動搜尋且輸出具有分數像素精確度之運動向量。
運動估計單元42藉由比較PU之位置與參考圖像之預測性區塊的位置而計算經框間寫碼圖塊中之視訊區塊的PU的運動向量。參考圖像可選自第一參考圖像清單(清單0)或第二參考圖像清單(清單1),參考圖像清單中之每一者識別儲存於DPB 64中之一或多個參考圖像。運動估計單元42將所計算運動向量發送至熵編碼單元56及運動補償單元44。
在一些實例中,框內BC單元48可以類似於上文關於運動估計單元42及運動補償單元44所描述的方式產生向量並提取預測性區塊,但其中預測性區塊與當前區塊在同一圖像或圖框中,且相較於運動向量,該等向量被稱作區塊向量。在其他實例中,框內BC單元48可整體或部分地使用運動估計單元42及運動補償單元44以根據本文所描述之技術執行用於框內BC預測之此功能。在任一狀況下,對於框內BC,預測性區塊可為就像素差而言被發現緊密地匹配待寫碼的區塊之區塊,該像素差可由絕對差和(SAD)、平方差和(SSD)或其他差度量判定,且該區塊之識別可包括計算子整數像素位置之值。
由運動補償單元44執行之運動補償可涉及基於由運動估計(可能執行內插至子像素精確度)判定之運動向量而提取或產生預測性區塊。在接收當前視訊區塊之PU的運動向量之後,運動補償單元44可在參考圖像清單中之一者中定位運動向量所指向之預測性區塊。視訊編碼器20藉由自正經寫碼之當前視訊區塊的像素值減去預測性區塊之像素值來形成殘餘視訊區塊,從而形成像素差值。像素差值形成用於區塊之殘餘資料,且可包括明度及色度差分量兩者。求和器50表示執行此減法運算之一或多個組件。運動補償單元44亦可產生與視訊區塊及視訊圖塊相關聯之語法元素以供視訊解碼器30用於在解碼視訊圖塊之視訊區塊時使用。
無論預測性視訊區塊係來自根據框內BC預測之相同圖像或根據框間預測之不同圖像,視訊編碼器20可藉由自經寫碼當前視訊區塊之像素值減去預測性區塊之像素值從而形成像素差值來形成殘餘視訊區塊。像素差值形成區塊之殘餘資料,且可包括明度分量差及色度分量差兩者。求和器50表示執行此減法運算之一或多個組件。框內BC單元48及/或運動補償單元44亦可產生與視訊區塊及視訊圖塊相關聯之語法元素以供由視訊解碼器(諸如視訊解碼器30)用於解碼視訊圖塊之視訊區塊。該等語法元素可包括(例如)定義用以識別預測性區塊之向量的語法元素、指示預測模式之任何旗標,或關於本發明之技術描述的任何其他語法。
框內預測處理單元46可對當前區塊進行框內預測,作為由運動估計單元42及運動補償單元44執行之框間預測或由框內BC單元48執行之框內BC預測的替代方案,如上文所描述。特定言之,框內預測處理單元46可判定包括框內BC模式之框內預測模式,以用以編碼當前區塊。在一些實例中,框內預測處理單元46可(例如)在單獨編碼歷程期間使用各種框內預測模式來編碼當前區塊,且框內預測處理單元46 (或在一些實例中為模式選擇單元)可自所測試模式選擇用以使用之適當框內預測模式。作為判定框內預測模式之部分,框內預測處理單元46可根據本發明之技術建構MPM候選者清單。框內預測處理單元46可選擇MPM候選者清單中之框內預測模式或並非位於MPM候選者清單中之非最可能模式作為用於特定區塊之框內預測模式。
舉例而言,框內預測處理單元46可使用針對各種所測試框內預測模式之速率-失真分析來計算速率-失真值,且在所測試模式間選擇具有最佳速率-失真特性之框內預測模式。速率-失真分析大體上判定經編碼區塊與原始未經編碼區塊(其經編碼以產生經編碼區塊)之間的失真(或誤差)量,以及用以產生經編碼區塊之位元速率(亦即,位元之數目)。框內預測處理單元46可自各種經編碼區塊之失真及速率計算比率以判定哪種框內預測模式展現該區塊之最佳速率-失真值。
在任何狀況下,在選擇用於區塊之框內預測模式之後,框內預測處理單元46可將指示用於區塊之所選擇框內預測模式之資訊提供至熵編碼單元56。熵編碼單元56可根據本發明之技術編碼指示所選擇框內預測模式之資訊。對於使用框內預測模式進行編碼之區塊,熵編碼單元56可(例如)選擇用於編碼指示實際框內預測模式是否為MPM候選者清單中之模式的資訊之一或多個內容脈絡。
在預測處理單元41經由框間預測或框內預測產生當前視訊區塊之預測性區塊之後,視訊編碼器20藉由自當前視訊區塊減去預測性區塊而形成殘餘視訊區塊。殘餘區塊中之殘餘視訊資料可包括於一或多個TU中且被應用於變換處理單元52。變換處理單元52使用諸如離散餘弦變換(DCT)或概念上類似變換之變換將殘餘視訊資料變換成殘餘變換係數。變換處理單元52可將殘餘視訊資料自像素域轉換至變換域(諸如,頻域)。
變換處理單元52可將所得變換係數發送至量化單元54。量化單元54量化變換係數以進一步減少位元速率。量化程序可減小與係數中之一些或所有相關聯的位元深度。可藉由調整量化參數來修改量化程度。在一些實例中,量化單元54可接著執行對包括經量化變換係數之矩陣的掃描。替代性地,熵編碼單元56可執行掃描。
在量化之後,熵編碼單元56對經量化變換係數進行熵編碼。熵編碼單元56亦可熵編碼各種語法元素。舉例而言,熵編碼單元56可執行CABAC、內容脈絡適應性可變長度寫碼(CAVLC)、基於語法之內容脈絡適應性二進位算術寫碼(SBAC)、概率區間分割熵(PIPE)寫碼或另一熵編碼方法或技術。在由熵編碼單元56熵編碼之後,經編碼位元串流可被傳輸至視訊解碼器30,或經存檔以供視訊解碼器30稍後傳輸或擷取。熵編碼單元56亦可熵編碼當前正寫碼之視訊圖塊的運動向量及其他語法元素。
反量化單元58及反變換處理單元60分別應用反量化及反變換以重建構像素域中之殘餘區塊,以供稍後用作用於其他視訊區塊之預測的參考區塊。運動補償單元44及/或框內BC單元48可藉由將殘餘區塊添加至參考圖像清單中之一者內的參考圖像中之一者之預測性區塊來計算參考區塊。運動補償單元44及/或框內BC單元48亦可將一或多個內插濾波器應用於經重建構殘餘區塊以計算供運動估計使用之子整數像素值。
求和器62將經重建構殘餘區塊添加至由運動補償單元44產生之運動補償預測區塊以產生參考區塊以用於儲存於DPB 64中。參考區塊可由框內BC單元48、運動估計單元42及運動補償單元44用作用以框間預測後續視訊圖框或圖像中之區塊的參考區塊。
圖6為說明可實施本發明中所描述之技術的實例視訊解碼器30之方塊圖。在圖6之實例中,視訊解碼器30包括視訊資料記憶體79、熵解碼單元80、預測處理單元81、反量化單元86、反變換處理單元88、求和器90及DPB 92。預測處理單元81包括框內BC單元85、運動補償單元82及框內預測處理單元84。在一些實例中,視訊解碼器30可執行與關於來自圖5之視訊編碼器20所描述之編碼歷程大體上互逆的解碼歷程。
視訊資料記憶體79可儲存待由視訊解碼器30之組件解碼的視訊資料,諸如經編碼視訊位元串流。可(例如)自儲存裝置32、自本端視訊源(諸如,攝影機)經由視訊資料之有線或無線網路通信或藉由存取實體資料儲存媒體而獲得儲存於視訊資料記憶體79中之視訊資料。視訊資料記憶體79可形成儲存來自經編碼視訊位元串流之經編碼視訊資料的經寫碼圖像緩衝器(CPB)。DPB 92儲存以供藉由視訊解碼器30用於解碼視訊資料之參考視訊資料(例如,在框內或框間寫碼模式中,亦被稱作框內或框間預測寫碼模式)。視訊資料記憶體79及DPB 92可藉由諸如DRAM的多種記憶體裝置中之任一者形成,其包括SDRAM、MRAM、RRAM或其他類型之記憶體裝置。視訊資料記憶體79及DPB 92可由同一記憶體裝置或單獨記憶體裝置提供。在各種實例中,視訊資料記憶體79可與視訊解碼器30之其他組件一起在晶片上,或相對於彼等組件而言在晶片外。
在解碼程序期間,視訊解碼器30自視訊編碼器20接收表示經編碼視訊圖塊的視訊區塊及相關聯語法元素之經編碼視訊位元串流。視訊解碼器30之熵解碼單元80熵解碼位元串流以產生經量化係數、運動向量及其他語法元素。熵解碼單元80將運動向量及其他語法元素轉遞至預測處理單元81。視訊解碼器30可在視訊圖塊層級及/或視訊區塊層級接收語法元素。
當視訊圖塊經寫碼為經框內寫碼(I)圖塊或用於其他類型之圖塊中的經框內寫碼區塊時,預測處理單元81之框內預測處理單元84可基於經發信框內預測模式及來自當前訊框或圖像之經先前解碼區塊的資料,產生用於當前視訊圖塊之視訊區塊的預測資料。框內預測處理單元84可經組態以實施本發明的用於執行框內預測之技術。更特定言之,框內預測處理單元84可經組態以根據本文中描述之MPM候選者清單建構技術產生MPM候選者清單。當視訊圖框經寫碼為經框間寫碼(亦即,B或P)圖塊時,預測處理單元81之運動補償單元82基於運動向量及自熵解碼單元80接收之其他語法元素產生用於當前視訊圖塊之視訊區塊的預測性區塊。預測性區塊可自參考圖像清單中之一者內的參考圖像中之一者產生。視訊解碼器30可基於儲存於DPB 92中之參考圖像使用預設建構技術來建構參考圖框清單、清單0及清單1。
在其他實例中,當視訊區塊根據本文中所描述之框內BC模式進行寫碼時,預測處理單元81之框內BC單元85基於區塊向量及自熵解碼單元80接收之其他語法元素產生用於當前視訊區塊的預測性區塊。預測性區塊可位於與由視訊編碼器20定義且自DPB 92擷取的當前視訊區塊相同的圖像內的經重建構區域內。儘管視訊解碼器30展示為具有框內BC單元85,但本發明之技術可由並非使用框內BC模式解碼視訊資料的視訊解碼器執行。此等視訊解碼器可(例如)僅僅在框內及框間模式中解碼視訊區塊,或可使用本發明中未描述之其他模式,諸如調色盤模式。
運動補償單元82及/或框內BC單元85可藉由剖析運動向量及其他語法元素來判定用於當前視訊圖塊之一視訊區塊的預測資訊,且使用該預測資訊來針對正經解碼的當前視訊區塊產生預測性區塊。舉例而言,運動補償單元82使用一些所接收之語法元素以判定用於寫碼視訊圖塊之視訊區塊之一預測模式(例如,框內預測或框間預測)、一框間預測圖塊類型(例如,B圖塊或P圖塊)、圖塊之參考圖像清單中之一或多者之建構資訊、圖塊之每一經框間編碼視訊區塊之運動向量、圖塊之每一經框間寫碼視訊區塊之框間預測狀態,及用以解碼當前視訊圖塊中之視訊區塊的其他資訊。
類似地,框內BC單元85可使用一些所接收語法元素中 (例如,一旗標)來判定當前視訊區塊係使用框內BC模式進行預測,指示圖像中之那些視訊區塊係位於經重建構區域內且應儲存於DPB 92中的建構資訊、圖塊之每一經框內BC預測視訊區塊的區塊向量、圖塊之每一經框內BC預測視訊區塊的框內BC預測狀態,及用以對當前視訊圖塊中之視訊區塊進行解碼的其他資訊。
運動補償單元82亦可執行基於內插濾波器之內插。運動補償單元82可使用如由視訊編碼器20在視訊區塊之編碼期間使用的內插濾波器,以計算參考區塊之子整數像素的內插值。在此狀況下,運動補償單元82可自所接收之語法元素判定由視訊編碼器20所使用之內插濾波器並使用該等內插濾波器以產生預測性區塊。視訊解碼器30可經組態以解碼在合併模式及/或AMVP模式中進行寫碼之區塊,在此狀況下,預測處理單元81可經組態以組裝藉由視訊編碼器20組裝的相同候選清單。
反量化單元86反量化(亦即,解量化)位元串流中所提供且由熵解碼單元80解碼的經量化變換係數。反量化程序可包括使用由視訊編碼器20針對視訊圖塊中之每一視訊區塊計算的一量化參數,以判定一量化程度及同樣地應被應用之一反量化程度。反變換處理單元88將一反變換(例如,一反DCT、一反整數變換或概念上類似的一反變換程序)應用於變換係數,以便產生像素域中之殘餘區塊。
在運動補償單元82或框內BC單元85基於向量及其他語法元素用於產生當前視訊區塊之預測性區塊之後,視訊解碼器30藉由將來自反變換處理單元88之殘餘區塊與由運動補償單元82及框內BC單元85所產生之對應預測性區塊求和,而形成經解碼視訊區塊。求和器90表示執行此求和運算以產生經重建構視訊區塊的一或多個組件。
求和器90表示可執行此求和運算之一或多個組件。迴路內濾波器(未經描繪)可定位於求和器90與DPB 92之間。給定圖框或圖像中之經解碼視訊區塊隨後儲存於DPB 92中,該DPB儲存用於後續運動補償之參考圖像。DPB 92或遠離DPB 92之記憶體裝置亦可儲存經解碼視訊,以供稍後呈現於諸如圖1之顯示裝置34的顯示裝置上。
圖7A及7B展示位元子n 處的CABAC程序之實例。在圖7A之實例100中,在位元子n,位元子2處的範圍包括在給定某一內容脈絡狀態(σ)的情況下藉由最不可能符號(LPS)之機率(pσ )給定的RangeMPS及RangeLPS。實例100展示在位元子n之值等於最可能符號(MPS)時的位元子n+1下的範圍之更新。在此實例中,低點保持相同,但在位元子n+1處之範圍的值縮小至在位元子n處之RangeMPS的值。圖7B之實例102展示當位元子n之值不等於MPS (亦即,等於LPS)時在位元子n+1處之範圍的更新。在此實例中,低點移動至在位元子n處之RangeLPS的較低範圍值。另外,在位元子n+1處之範圍之值縮小至在位元子n處的RangeLPS之值。
在HEVC視訊寫碼程序之一個實例中,範圍用9個位元表示,且低點用10個位元表示。存在以充足精確度維持範圍及低點值之再歸一化程序。再歸一化出現在每當範圍小於256時。因此,在再歸一化之後範圍始終等於或大於256。取決於範圍及低點之值,二進位算術寫碼器(BAC)將「0,」或「1,」輸出至位元串流,或更新內部變數(被稱作BO:位元突出)以保持未來輸出。圖8展示取決於範圍之BAC輸出的實例。舉例而言,當範圍及低點高於特定臨限值(例如,512)時,將「1」輸出至位元串流。當範圍及低點低於特定臨限值(例如,512)時,將「0」輸出至位元串流。當範圍及低點在某些臨限值之間時,不輸出任何值至位元串流。替代地,遞增BO值且編碼下一位元子。
在H.264/AVC之CABAC內容脈絡模型及HEVC之一些實例中,存在128個狀態。存在可自0至63之64個可能的LPS機率(由狀態σ表示)。每一MPS可為零或一。因此,128個狀態為64個狀態機率乘以MPS之2個可能值(0或1)。因此,狀態可用7個位元編索引。
為減少導出LPS範圍(rangeLPSσ )之計算,針對所有狀況之結果可經預先計算且儲存為查找表中的近似值。因此,可在無任何乘法運算之情況下藉由使用簡單表查找來獲得LPS範圍。對於一些裝置或應用而言避免乘法運算可為至關重要的,此係由於此操作可引起多種硬體架構中之顯著潛時。
可使用4行預先計算之LPS範圍表而非乘法運算。將範圍劃分為四個片段。可由問題(range>>6)&3 導出片段索引。實際上,片段索引係藉由自實際範圍移位及丟棄位元來導出。以下表1展示可能範圍及其對應索引。 1- 範圍索引
LPS範圍表接著具有64個條目(每一機率狀態有一者)乘以4 (每一範圍索引有一者)。每一條目為LPS範圍,亦即,將範圍乘以LPS機率之值。以下表2中展示此表之部分的實例。表2描繪機率狀態9至12。在HEVC之一個提議中,機率狀態範圍可為0至63。 2-RangeLPS
在每一片段(亦即,範圍值)中,每一機率狀態σ 之LPS範圍為預定義的。換言之,機率狀態σ 之LPS範圍經量化為四個值(亦即,每一範圍索引有一個值)。在給定點處使用之特定的LPS範圍取決於範圍屬於哪一片段。表中所使用之可能的LPS範圍之數目為表行數(亦即,可能的LPS範圍值之數目)與LPS範圍精確度之間的折衷。大體而言,更多行產生LPS範圍值之更少量化錯誤,且亦增加對用以儲存表之更多記憶體的需求。更少行增加量化錯誤,且亦減少需要用以儲存表之記憶體。
如上文所述,每一LPS機率狀態具有對應機率。每一狀態之機率p如下予以導出: pσ = a pσ -1 其中狀態σ為自0至63。常量a表示每一內容脈絡狀態之間的機率改變的量。在一個實例中,a=0.9493,或更精確而言,a=(0.01875/0.5)1/63 。在狀態σ=0下,機率等於0.5(亦即,p0 =1/2)。亦即,在內容脈絡狀態0下,LPS及MPS具有等同的可能性。每一相繼狀態下的機率藉由將先前狀態與a相乘來導出。因而,在內容脈絡狀態a=1下LPS出現之機率為p0 *0.9493(0.5*0.9493=.47465)。因而,隨著狀態a之索引增大,LPS出現之機率下降。
CABAC係適應性的,此係因為機率狀態經更新以便遵循信號統計(亦即,經先前寫碼位元子之值)。更新程序係如下。對於給定機率狀態,更新取決於狀態索引及經識別為LPS或MPS之經編碼符號的值。作為更新程序之結果,新的機率狀態經導出,其由潛在經修改LPS機率估計及(必要時)經修改MPS值構成。
倘若位元子值等於MPS,則給定狀態索引可增加1。此用於除當MPS出現在狀態索引62處時之外的所有狀態,其中LPS機率已處於其最小值(或等效地,達至最大MPS機率)。在此狀況下,狀態索引62保持固定,直至LPS可見或最末位元子值經編碼(狀態63用於最末位元子值之特殊狀況)。當LPS出現時,藉由以特定量遞減狀態索引來改變狀態索引,如下方方程式中所展示。此規則應用於具有以下異常之LPS每次出現時。假定已在具有索引σ=0之狀態處編碼LPS,該索引對應於等機率狀況,則狀態索引保持固定,但將切換MPS值使得LPS及MPS之值將被互換。在所有其他狀況下,不管哪一符號已經編碼,MPS值將未更改。用於LPS機率的變換規則之導出基於以下的給定LPS機率pold 及其經更新對應物pnew 之間的關係:pnew =max(a pold , p62 ),若MPS出現 pnew =(1-a)+a pold ,若LPS出現
關於CABAC中的機率估計程序之實際實施,值得注意的是,所有變換規則可藉由各自具有6位元無符號整數值之63個條目的至多兩個表實現。在一些實例中,可藉由單一表TransIdxLPS判定狀態變換,該表在已觀測到LPS之狀況下針對給定狀態索引σ判定新的經更新狀態索引TransIdxLPS [σ]。可藉由使狀態索引僅(飽和)增加固定值1,得到經更新狀態索引min(σ+1, 62),從而獲得MPS驅動變換。以下表3為部分TransIdxLPS表之實例。 3-TransIdxLPS
先前BAC方法(例如,H.264/AVC中所用之BAC方法)的一個問題為表RangeLPS及TransIdxLPS經調諧用於低解析度視訊(亦即,共用中間格式(CIF)及四分之一CIF (QCIF)視訊)。目前,大量視訊內容係高清晰度(HD),且在一些狀況下,高於HD。HD或高於HD解析度的視訊內容具有不同於用以開發H.264/AVC的10年前的QCIF序列的不同統計。
因而,來自H.264/AVC的表RangeLPS及TransIdxLPS可以太快速的方式導致狀態之間的適應。亦即,機率狀態之間的尤其在LPS出現時的變換可能會對於更光滑、更高解析度的HD視訊內容而言太好。因此,根據習知技術使用的概率模型對於HD及額外HD內容而言不那麼精確。另外,由於HD視訊內容包括更大範圍像素值,因此H.264/AVC表不包括足夠條目來考慮可存在於HD內容中之更多極端值。
因而,需要RangeLPS及TransIdxLPS表進行修改,以考慮此新內容之特性。此亦意指BAC在至少兩個態樣中應係不同的。一個差異在於BAC程序應使用允許較慢適應程序的表。另一差異在於BAC程序應考慮更多極端狀況(亦即,偏斜概率)。
當前RangeLPS及TransIdxLPS表可藉由僅包括更多機率狀態及範圍進行修改來達成此等目標。然而,此解決方案導致表之大小實質上增大。可使用相比當前使用之參數a更接近1的參數a (例如,a=0.9493)來達成較慢適應。然而,使用較大a值導致概率較緩慢地傾向於0,且因而,需要更多狀態。另外,為達成較慢適應,此在最低可能機率比當前使用之最低機率低的多的情況下可為有益的。因而,可能需要甚至更到狀態來達至彼極低機率值。
鑒於上述問題,本發明提議修改BAC之技術,以便在於實際層級下保持表大小(例如,RangeLPS及TransIdxLPS表)的同時達到較慢適應及更偏斜概率。換言之,本發明描述技術以在使用具有相對較小大小之表的同時獲得較慢適應及較極端概率(亦即,更接近0及1之概率)。
本發明中所描述之技術可使用更多機率狀態,例如,相比使用H.264/AVC或HEVC的BAC中所使用之更多機率狀態。在此狀況下,TransIdxLPS表可獲得較慢適應及較低概率。在一個實例中,本發明中所描述之技術可使用128個機率狀態而非64個。此將表TransIdxLPS增大64個條目(亦即,128個條目而非64個)。此增大允許較慢適應及較低最小機率。作為一個實例,藉由設定參數a=0.9689,連續概率之間的差會變得較小。另外,最低最小機率降至0.009,其約為H.264/AVC狀況的一半(亦即,0.01875)。其他數目個狀態及a值亦係可能的,然而大體而言,狀態之數目可增大,且a之值可相比H.264/AVC狀況的a=0.9493更接近1。
可經修改以改良HD或額外HD寫碼的另一參數為參數p0 。p0 之值總體上指示LPS的最大機率。考慮此可能性的原因為具有較低p0 意謂最小機率亦減小。在習知BAC程序中,p0 之值被設定成0.5。本發明提議允許p0 之其他值。在MPS/LPS交換出現時,具有低於0.5的p0 之其他值允許在狀態0下的更光滑變換。在一個實例中,p0 可等於0.493,但亦可使用許多其他實例。
通常,每一機率狀態在RangeLPS表中具有其自身條目。表大小可表示為: #機率狀態×#經量化範圍索引 其在HEVC之一些提議中為64×4=256個位元。由於狀態之數目在本發明之實例中將增大(在上文實例中加倍),因此RangeLPS表大小可為128×4=512個位元組。然而,為避免RangeLPS表大小之此增大,本發明進一步提議將機率狀態索引映射至較低大小(亦即,若干索引),以索引RangeLPS大小。換言之,本發明提議將狀態變換程序自範圍計算程序解耦。此意謂,在當前實例中,存在狀態至範圍計算之映射。視訊編碼器20及/或視訊解碼器30可經組態以將指示經判定機率狀態之索引映射至複數個分群索引中之一者(例如,用於RangeLPS表之分群索引),其中分群索引中之至少一者表示複數個機率狀態中的至少兩者。因而,RangeLPS表(或其他BAC表)可相比機率狀態使用較少索引。
在本發明之一個實例中,機率狀態數目可除以二以產生新索引來用作RangeLPS表之條目。在此狀況下,128個機率狀態降低至64個條目。因此,RangeLPS表可保持為如H.264/AVC中所用的當前大小。因此,代替使用機率狀態σ來索引範圍LPS表中之條目,本發明中所描述之技術使用(σ>>1),亦即,狀態σ除以二且捨入為較低整數以供用作至RangeLPS表之分群索引。若RangeLPS表需要針對給定實施較小,或若狀態之數目較大(例如,256個機率狀態),則可使用較大數目來除。在此內容脈絡中,每一分群索引表示兩個機率狀態。在本發明之其他實例中,分群索引可表示兩個或兩個以上機率狀態。
自最佳熵視角,藉由使用除法或右位元移位運算將用於RangeLPS表之狀態分組可為有益的,但可能不會始終為最佳技術。最佳分組可視若干因數而定,包括狀態之數目及參數a以及其他者。最合乎需要(及可能最佳)的分組可能並非為類似位元移位運算之簡單運算。大體而言,分組可使用一表來描述,其自總數目個機率狀態進入數目經減少之機率狀態(亦即,分群狀態)。在另一實例中,本發明提議使用此種表。此方法將以額外記憶體為代價增強效能(相較於除法或右移位)。因而,此實例為記憶體與效能之間的平衡,其有利於線性映射實例的較佳效能(亦即,除法或右移位)。
因此,儘管可使用機率狀態至RangeLPS表中之條目的線性映射,但可能需要提供非線性映射。舉例而言,機率狀態可根據對數映射進行映射。在一些實例中,對數映射可使用分段線性映射技術達成。大體而言,此映射可使用諸如預計算映射表之一表來定義。
大體而言,在一些實例中,本發明中所描述之技術可藉由用於熵寫碼視訊資料之方法或裝置執行。該方法可包括在二進位算術寫碼程序中判定符號之機率狀態,其中該機率狀態可為複數個機率狀態中之一者;及將指示經判定機率狀態之索引映射至複數個分群索引中之一者,其中分群索引中之至少一者表示複數個機率狀態中的至少兩者,且其中分群索引中之每一者指向表中之最低機率符號的範圍。
在一些實例中,機率狀態之數目可大於64。舉例而言,機率狀態之數目可為128。在一些實例中,用作至RangeLPS表之輸入的分群索引之數目為64。特定言之,機率狀態之數目可為128,且用作至RangeLPS表之輸入的分群索引之數目可為64。符號可(例如)根據基於機率狀態索引之表或根據基於索引之數學運算,基於分群索引進行寫碼。經判定機率狀態根據一表或根據數學運算映射至複數個索引中之一者。映射可為線性或非線性的。舉例而言,映射可根據除以二操作來執行。在一些實例中,映射可為對數映射。在一些實例中,分段線性映射可用以定義對數映射。在一些實例中,用於LPS的最大機率之值p0 可小於0.5。
本發明中所描述之技術可(例如)在視訊編碼器、視訊解碼器或組合式視訊編碼器解碼器(編解碼器)內執行。特定而言,此等技術可在視訊編碼器之熵編碼單元及/或視訊解碼器之熵解碼單元中執行。該等技術可(例如)在CABAC程序內執行,其可經組態以支援視訊寫碼(諸如根據HEVC標準之態樣的視訊寫碼)。熵編碼及解碼單元可以互逆或反向方式應用寫碼程序(例如)以編碼或解碼多種視訊資料中之任一者,該視訊資料諸如與殘餘視訊資料相關聯之經量化變換係數、運動向量資訊、語法元素及可有利於視訊編碼及/或視訊解碼程序之其他類型資訊。
圖9為根據本發明之技術的可經組態以執行CABAC之實例熵編碼單元56之方塊圖。將語法元素118輸入至熵編碼單元56中。若語法元素已為二進位值語法元素(亦即,僅僅具有值0及1之語法元素),則可跳過二進位化之步長。若語法元素為非二進位值語法元素(例如,用多個位元表示之語法元素,諸如變換係數級別),則非二進位值語法元素藉由二進位化器120進行二進位化。二進位化器120執行非二進位值語法元素至二進位決策序列之映射。此等二進位決策通常被稱作「位元子」。舉例而言,對於變換係數級別,可將級別之值分解為連續位元子,每一位元子指示係數級別之絕對值是否大於某一值。舉例而言,位元子0 (有時被稱作有效旗標)指示變換係數級別之絕對值是否大於0。位元子1指示變換係數級別之絕對值是否大於1,等等。可針對每一非二進位值語法元素產生唯一映射。
由二進位化器120產生之每一位元子饋入至熵編碼單元56之二進位算術寫碼側。即,對於預定非二進位值語法元素集合,每一位元子類型(例如,位元子0)在下一位元子類型(例如,位元子1)之前經寫碼。可以常規模式或旁路模式執行寫碼。在旁路模式中,旁路寫碼引擎126使用固定機率模型(例如,使用哥倫布萊斯或指數哥倫布寫碼)執行算術寫碼。旁路模式通常用於更可預測語法元素。
以常規模式進行寫碼涉及執行CABAC。在給定經先前寫碼位元子之值則位元子之值之機率為可預測的情況下,規律模式CABAC用於寫碼位元子值。由內容脈絡模型建立器122判定為LPS之位元子的機率。內容脈絡模型建立器122輸出位元子值及內容脈絡模型(例如,機率狀態σ)。內容脈絡模型可為用於一連串位元子之初始內容脈絡模型,或可基於經先前寫碼位元子之經寫碼值而判定。如上文所述,內容脈絡模型建立器可基於經先前寫碼位元子為MPS抑或LPS而更新狀態。
在藉由內容脈絡模型建立器122判定內容脈絡模型及機率狀態σ之後,常規寫碼引擎124對位元子值執行BAC。根據本發明之技術,常規寫碼引擎124使用包括超過64個機率狀態σ之TransIdxLPS表130執行BAC。在一個實例中,機率狀態之數目為128。TransIdxLPS用以在先前位元子(位元子n)為LPS時判定哪個機率狀態用於下一位元子(位元子n+1)。常規寫碼引擎124亦可在給定特定機率狀態σ的情況下使用RangeLPS表128來判定LPS之範圍值。然而,根據本發明之技術,將機率狀態索引σ映射至分群索引以供用於RangeLPS表中,而非使用TransIdxLPS表130之所有可能的機率狀態σ。亦即,至RangeLPS表128之每一索引可表示機率狀態之總數目中之兩者或兩者以上。機率狀態索引σ至分群索引之映射可為線性的(例如,藉由除以二),或可為非線性的(例如,對數函數或映射表)。
在本發明之其他實例中,相繼機率狀態之間的差異可藉由將參數a設定為大於0.9493而變得較小。在一個實例中,a=0.9689。在本發明之另一實例中,LPS出現之最高機率(p0 )可被設定成低於0.5。在一個實例中,p0 可等於0.493。
根據本發明之一或多種技術,相較於在二進位算術寫碼程序中使用用以更新機率狀態的相同變數值(例如,視窗大小、比例因子(a)及機率更新速度中之一或多者),熵編碼單元56可將不同的變數值用於不同內容脈絡模型及/或不同語法元素。舉例而言,熵編碼單元56可針對複數個內容脈絡模型中之一內容脈絡模型判定在二進位算術寫碼程序中用於更新機率狀態之變數的值,且基於所判定之值更新機率狀態。
返回至圖4,在一些狀況下,熵編碼單元56或視訊編碼器20之另一單元可經組態以執行除熵寫碼之外的其他寫碼功能。舉例而言,熵編碼單元56可經組態以判定用於CU及PU之寫碼區塊型樣(CBP)值。又,在一些狀況下,熵編碼單元56可執行係數之延行長度寫碼。另外,熵編碼單元56或其他處理單元亦可寫碼其他資料,諸如量化矩陣之值。
如上文所論述,反量化單元58及反變換處理單元60分別應用反量化及反變換以重建構像素域中之殘餘區塊,例如以供稍後用作參考區塊。運動補償單元44可藉由將殘餘區塊添加至DPB 64之圖框中之一者的預測性區塊來計算參考區塊。運動補償單元44亦可將一或多個內插濾波器應用至經重建構殘餘區塊,以計算子整數像素值以用於運動估計中。求和器62將經重建構殘餘區塊添加至由運動補償單元44產生之經運動補償的預測區塊,以產生經重建構之視訊區塊以用於儲存於DPB 64中。經重建構視訊區塊可由運動估計單元42及運動補償單元44用作一參考區塊以框間寫碼後續視訊圖框中之區塊。
圖10為根據本發明之技術的可經組態以執行CABAC之實例熵解碼單元80的方塊圖。圖10之熵解碼單元80以與圖5中所描述之熵編碼單元56之彼方式互逆的方式執行CABAC。將來自位元串流218之經寫碼位元輸入至熵解碼單元80中。基於經寫碼位元是使用旁路模式抑或常規模式經熵寫碼而將該等經寫碼位元饋入至內容脈絡模型建立器220或旁路寫碼引擎222。若經寫碼位元以旁路模式寫碼,則旁路解碼引擎222可(例如)使用哥倫布萊斯或指數哥倫布解碼以擷取非二進位語法元素之二進位值語法元素或位元子。
若經寫碼位元以常規模式寫碼,則內容脈絡模型建立器220可判定經寫碼位元之機率模型,且常規解碼引擎224可解碼該等經寫碼位元以產生非二進位值語法元素之位元子(或語法元素自身(在語法元素為二進位值時)。在藉由內容脈絡模型化器220判定內容脈絡模型及機率狀態σ之後,常規解碼引擎224對位元子值執行BAC。根據本發明之技術,常規解碼引擎224使用包括超過64個機率狀態σ之TransIdxLPS表228執行BAC。在一個實例中,機率狀態之數目為128,但可定義符合本發明之技術的其他數目個機率狀態。TransIdxLPS表228用以在先前位元子(位元子n)為LPS時判定哪個機率狀態用於下一位元子(位元子n+1)。常規解碼引擎224亦可在給定特定機率狀態σ的情況下使用RangeLPS表226來判定LPS之範圍值。然而,根據本發明之技術,將機率狀態索引σ映射至分群索引以供用於RangeLPS表226中,而非使用TransIdxLPS表228之所有可能的機率狀態σ。亦即,至RangeLPS表226之每一索引可表示機率狀態之總數目中之兩者或兩者以上。機率狀態索引σ至分群索引之映射可為線性的(例如,藉由除以二),或可為非線性的(例如,對數函數或映射表)。
在本發明之其他實例中,相繼機率狀態之間的差異可藉由將參數a設定為大於0.9493而變得較小。在一個實例中,a=0.9689。在本發明之另一實例中,LPS出現之最高機率(p0 )可被設定成低於0.5。在一個實例中,p0 可等於0.493。
在藉由常規解碼引擎224解碼位元子之後,反向二進位化器230可執行反向映射以將位元子反向轉換為非二進位值語法元素之值。
圖11為說明本發明中描述之實例視訊編碼技術的流程圖。圖11之技術將參考諸如(但不限於)視訊編碼器20或視訊解碼器30的通用視訊寫碼器進行描述。在圖11之實例中,視訊寫碼器基於當前區塊之已寫碼資訊判定指示是否存在與當前區塊相關聯之至少一個非零變換係數級別的第一語法元素的內容脈絡(250)。
已寫碼資訊可(例如)包括區塊之寫碼模式之一或多者,諸如區塊使用框內寫碼模式抑或框間寫碼模式進行寫碼。區塊可包括一明度區塊,且第一語法元素之值可指示是否存在與明度區塊相關聯之至少一個非零變換係數級別。區塊可包括一色度區塊,且第一語法元素之值可指示是否存在與色度區塊相關聯之至少一個非零變換係數級別。在一些實例中,區塊可包括一色度區塊及一明度區塊,且第一語法元素之值可指示是否存在與色度區塊或明度區塊中之至少一者相關聯的至少一個非零變換係數級別。在一些實例中,已寫碼資訊可包括區塊之大小或形狀。
視訊寫碼器基於該經判定內容脈絡寫碼第一語法元素(252)。為基於該經判定內容脈絡寫碼第一語法元素,視訊寫碼器可(例如)對第一語法元素執行CABAC操作。在視訊寫碼器為視訊編碼器的實例中,作為基於該經判定內容脈絡寫碼第一語法元素之部分,視訊編碼器可輸出包括第一語法元素的經編碼視訊資料之位元串流。在視訊寫碼器為視訊解碼器的實例中,作為基於該經判定內容脈絡寫碼第一語法元素之部分,視訊解碼器可接收包括第一語法元素的經編碼視訊資料之位元串流,且判定第一語法元素之值。
在一些實例中,視訊寫碼器可基於第一語法元素之值判定用於第二區塊之合併旗標的內容脈絡。第二區塊可(例如)為第一區塊之相鄰區塊,且在第一區塊之後進行寫碼。
圖12為說明本發明中描述之實例視訊編碼技術的流程圖。圖12之技術將參考諸如(但不限於)視訊編碼器20或視訊解碼器30的通用視訊寫碼器進行描述。在圖12之實例中,視訊寫碼器寫碼指示是否存在與視訊資料之第一區塊相關聯之至少一個非零變換係數級別的第一語法元素(260)。
視訊寫碼器基於第一語法元素之值判定指示用於第二區塊之寫碼模式資訊的第二語法元素之內容脈絡(262)。視訊寫碼器可(例如)自至少兩個可用內容脈絡判定指示用於第二區塊之寫碼模式資訊的第二語法元素之內容脈絡。第二語法元素可(例如)為用於第二區塊之合併旗標或指示第二區塊之預測模式的語法元素。在一些實例中,第一區塊及第二區塊可為空間上相鄰區塊。在一些實例中,第一區塊可位於參考圖像中,且第二區塊可位於當前圖像中,且第一區塊可相對於第二區塊同置。在一些實例中,第一區塊可位於參考圖像中,且第二區塊可位於當前圖像中,且第一區塊可與關於第二區塊同置之一區塊相鄰。第一區塊及第二區塊可兩者均為明度區塊或為色度區塊。
視訊基於該經判定內容脈絡寫碼第二語法元素(264)。為基於該經判定內容脈絡寫碼第二語法元素,視訊寫碼器可(例如)對第二語法元素執行CABAC操作。在視訊寫碼器為視訊編碼器的實例中,作為基於該經判定內容脈絡寫碼第二語法元素之部分,視訊編碼器可輸出包括第二語法元素的經編碼視訊資料之位元串流。在視訊寫碼器為視訊解碼器的實例中,作為基於該經判定內容脈絡寫碼第一語法元素之部分,視訊解碼器可接收包括第二語法元素的經編碼視訊資料之位元串流,且判定第二語法元素之值。
在一或多個實例中,所描述功能可以硬體、軟體、韌體或其任何組合來實施。若以軟體實施,則該等功能可作為一或多個指令或碼而在一電腦可讀媒體上儲存或傳輸,且由基於硬體之處理單元執行。電腦可讀媒體可包括電腦可讀儲存媒體(其對應於諸如資料儲存媒體之有形媒體)或通信媒體,該通信媒體包括(例如)根據通信協定促進電腦程式自一處傳送至另一處的任何媒體。以此方式,電腦可讀媒體大體可對應於(1)為非暫時性的有形電腦可讀儲存媒體,或(2)通信媒體,諸如,信號或載波。資料儲存媒體可為可藉由一或多個電腦或一或多個處理器存取以擷取指令、程式碼及/或資料結構以用於實施本發明所描述之技術的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
以實例說明而非限制,此等電腦可讀儲存媒體可包括RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器、磁碟儲存器或其他磁性儲存裝置、快閃記憶體或可用以儲存呈指令或資料結構形式之所要程式碼且可藉由電腦存取的任何其他媒體中之一或多者。而且,任何連接被恰當地稱為電腦可讀媒體。舉例而言,若使用同軸纜線、光纖纜線、雙絞線、數位用戶線(DSL)或諸如紅外線、無線電及微波之無線技術,自網站、伺服器或其他遠端源來傳輸指令,則同軸纜線、光纖纜線、雙絞線、DSL或諸如紅外線、無線電及微波之無線技術包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、載波、信號或其他暫時性媒體,而實情為係關於非暫時性有形儲存媒體。如本文中所使用,磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位影音光碟(DVD)、軟碟及藍光光碟,其中磁碟通常以磁性方式再生資料,而光碟藉由雷射以光學方式再生資料。以上各者的組合亦應包括於電腦可讀媒體之範疇內。
可由一或多個處理器執行指令,該一或多個處理器諸如一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效之整合或離散邏輯電路。因此,如本文中所使用之術語「處理器」可指上述結構或適合於實施本文中所描述之技術的任何其他結構中之任一者。另外,在一些態樣中,本文所描述之功能可經提供於經組態以供編碼及解碼或併入於經組合編碼解碼器中之專用硬體及/或軟體模組內。此外,該等技術可完全實施於一或多個電路或邏輯元件中。
本發明之技術可實施於廣泛多種裝置或設備中,包括無線手持機、積體電路(IC)或IC集合(例如,晶片組)。在本發明中描述各種組件、模組或單元以強調經組態以執行所揭示技術之裝置的功能態樣,但未必要求由不同硬體單元來實現。確切地說,如上文所描述,可將各種單元組合於編解碼器硬體單元中,或藉由互操作性硬體單元(包括如上文所描述之一或多個處理器)之集合而結合合適軟體及/或韌體來提供該等單元。
各種實例已予以描述。此等及其他實例在以下申請專利範圍之範疇內。
10‧‧‧實例視訊編碼及解碼系統
12‧‧‧源裝置
14‧‧‧目的地裝置
16‧‧‧鏈路
17‧‧‧儲存裝置
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧輸出介面
28‧‧‧輸入介面
30‧‧‧視訊解碼器
34‧‧‧顯示裝置
35‧‧‧分割單元
40‧‧‧視訊資料記憶體
41‧‧‧預測處理單元
42‧‧‧運動估計單元
44‧‧‧運動補償單元
46‧‧‧框內預測處理單元
48‧‧‧框內BC單元
50‧‧‧求和器
52‧‧‧變換處理單元
54‧‧‧量化單元
56‧‧‧熵編碼單元
58‧‧‧反量化單元
60‧‧‧反變換處理單元
62‧‧‧求和器
64‧‧‧經解碼圖像緩衝器(DPB)
79‧‧‧視訊資料記憶體
80‧‧‧熵解碼單元
81‧‧‧預測處理單元
82‧‧‧運動補償單元
84‧‧‧框內預測處理單元
85‧‧‧框內BC單元
86‧‧‧反量化單元
88‧‧‧反變換處理單元
90‧‧‧求和器
92‧‧‧經解碼圖像緩衝器(DPB)
100‧‧‧實例
102‧‧‧實例
118‧‧‧語法元素
120‧‧‧二進位化器
122‧‧‧內容脈絡模型建立器
124‧‧‧常規寫碼引擎
126‧‧‧旁路寫碼引擎
128‧‧‧RangeLPS表
130‧‧‧TransIdxLPS表
150‧‧‧區塊
151‧‧‧區塊
152‧‧‧區塊
153‧‧‧區塊
154‧‧‧區塊
155‧‧‧區塊
156‧‧‧區塊
157‧‧‧區塊
158‧‧‧區塊
159‧‧‧區塊
160‧‧‧區塊
161‧‧‧區塊
162‧‧‧區塊
163‧‧‧區塊
164‧‧‧區塊
165‧‧‧區塊
166‧‧‧區塊
170‧‧‧節點
172‧‧‧節點
174‧‧‧節點
176‧‧‧節點
178‧‧‧節點
180‧‧‧節點
182‧‧‧節點
184‧‧‧節點
218‧‧‧位元串流
220‧‧‧內容脈絡模型建立器
222‧‧‧旁路寫碼引擎/旁路解碼引擎
226‧‧‧RangeLPS表
228‧‧‧TransIdxLPS表
230‧‧‧反向二進位化器
250‧‧‧步驟
252‧‧‧步驟
260‧‧‧步驟
262‧‧‧步驟
264‧‧‧步驟
圖1為說明可利用本發明中描述之技術之實例視訊編碼及解碼系統的方塊圖。
圖2展示用於經框間寫碼CU之8分割區模式的實例。
圖3展示CU內之變換樹型結構的實例。
圖4A為說明使用四分樹二元樹(QTBT)結構之區塊分割之實例的概念圖。
圖4B為說明對應於使用圖4A之QTBT結構進行區塊分割的實例樹型結構之概念圖。
圖5為說明可實施本發明中描述之技術的實例視訊編碼器之方塊圖。
圖6為說明可實施本發明中所描述之技術的實例視訊解碼器的方塊圖。
圖7A及7B為說明二進位算術寫碼中之範圍更新程序的概念圖。
圖8為說明二進位算術寫碼中之輸出程序的概念圖。
圖9為說明視訊編碼器中之內容脈絡適應性二進位算術編碼(CABAC)寫碼器的方塊圖。
圖10為說明視訊解碼器中之CABAC寫碼器的方塊圖。
圖11為說明根據本發明中所描述之技術的寫碼視訊資料之實例方法的流程圖。
圖12為說明根據本發明中所描述之技術的寫碼視訊資料之實例方法的流程圖。

Claims (20)

  1. 一種寫碼視訊資料之方法,該方法包含; 基於用於視訊資料之一當前區塊的已寫碼資訊判定一第一語法元素之一內容脈絡,其中該第一語法元素之一值指示是否存在與視訊資料之該當前區塊相關聯之至少一個非零變換係數級別; 基於該經判定內容脈絡寫碼該第一語法元素。
  2. 如請求項1之方法,其中該已寫碼資訊包含該區塊之一寫碼模式。
  3. 如請求項2之方法,其中該寫碼模式包含一框內寫碼模式或一框間寫碼模式中之一者。
  4. 如請求項1之方法,其中該區塊包含一明度區塊,且其中該第一語法元素之該值指示是否存在與該明度區塊相關聯之至少一個非零變換係數級別。
  5. 如請求項1之方法,其中該區塊包含一色度區塊,且其中該第一語法元素之該值指示是否存在與該色度區塊相關聯之至少一個非零變換係數級別。
  6. 如請求項1之方法,其中該區塊包含一色度區塊及一明度區塊,且其中該第一語法元素之該值指示是否存在與該色度區塊或該明度區塊中之至少一者相關聯之至少一個非零變換係數級別。
  7. 如請求項1之方法,其中視訊資料之該區塊包含一第一區塊,該方法進一步包含: 基於該第一語法元素之該值判定用於一第二區塊之一合併旗標的一內容脈絡,其中該第二區塊為該第一區塊之一相鄰區塊且在該第一區塊之後進行寫碼。
  8. 如請求項1之方法,其中基於該經判定內容脈絡寫碼該第一語法元素包含對該第一語法元素執行一內容脈絡適應性二進位算術寫碼(CABAC)操作。
  9. 如請求項1之方法,其中寫碼包含編碼,且其中基於該經判定內容脈絡寫碼該第一語法元素包含輸出包含該第一語法元素的經編碼視訊資料之一位元串流。
  10. 如請求項1之方法,其中寫碼包含解碼,且其中基於該經判定內容脈絡寫碼該第一語法元素包含接收包含該第一語法元素的經編碼視訊資料之一位元串流及判定該第一語法元素之該值。
  11. 一種用於寫碼視訊資料之裝置,該裝置包含:一記憶體;及一或多個處理器,其經組態以執行以下操作: 基於視訊資料之一當前區塊的已寫碼資訊判定一第一語法元素之一內容脈絡,其中該第一語法元素的一值指示是否存在與視訊資料之該當前區塊相關聯之至少一個非零變換係數級別;基於該經判定內容脈絡寫碼該第一語法元素。
  12. 如請求項11之裝置,其中該已寫碼資訊包含該區塊之一寫碼模式。
  13. 如請求項12之裝置,其中該寫碼模式包含一框內寫碼模式或一框間寫碼模式中之一者。
  14. 如請求項11之裝置,其中該區塊包含一明度區塊,且其中該第一語法元素之該值指示是否存在與該明度區塊相關聯之至少一個非零變換係數級別。
  15. 如請求項11之裝置,其中該區塊包含一色度區塊,且其中該第一語法元素之該值指示是否存在與該色度區塊相關聯之至少一個非零變換係數級別。
  16. 如請求項11之裝置,其中該區塊包含一色度區塊及一明度區塊,且其中該第一語法元素之該值指示是否存在與該色度區塊或該明度區塊中之至少一者相關聯之至少一個非零變換係數級別。
  17. 如請求項11之裝置,其中視訊資料之該區塊包含一第一區塊,且其中該一或多個處理器經進一步組態以執行以下操作: 基於該第一語法元素之該值判定用於一第二區塊之一合併旗標的一內容脈絡,其中該第二區塊為該第一區塊之一相鄰區塊且在該第一區塊之後進行寫碼。
  18. 如請求項11之裝置,其中為基於該經判定內容脈絡寫碼該第一語法元素,該一或多個處理器經組態以對該第一語法元素執行一內容脈絡適應性二進位算術寫碼(CABAC)操作。
  19. 如請求項11之裝置,其中該裝置包含一視訊編碼器,且其中為基於該經判定內容脈絡寫碼該第一語法元素,該一或多個處理器經進一步組態以輸出包含該第一語法元素的經編碼視訊資料之一位元串流。
  20. 如請求項11之裝置,其中裝置包含一視訊解碼器,且其中為基於該經判定內容脈絡寫碼該第一語法元素,該一或多個處理器經進一步組態以接收包含該第一語法元素的經編碼視訊資料之一位元串流及判定該第一語法元素之該值。
TW107115627A 2017-05-08 2018-05-08 用於轉換係數寫碼之內容脈絡模型建立 TW201844004A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762503218P 2017-05-08 2017-05-08
US62/503,218 2017-05-08
US15/973,327 US10560723B2 (en) 2017-05-08 2018-05-07 Context modeling for transform coefficient coding
US15/973,327 2018-05-07

Publications (1)

Publication Number Publication Date
TW201844004A true TW201844004A (zh) 2018-12-16

Family

ID=64015084

Family Applications (2)

Application Number Title Priority Date Filing Date
TW107115628A TW201844005A (zh) 2017-05-08 2018-05-08 用於轉換係數寫碼之內容脈絡模型建立
TW107115627A TW201844004A (zh) 2017-05-08 2018-05-08 用於轉換係數寫碼之內容脈絡模型建立

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW107115628A TW201844005A (zh) 2017-05-08 2018-05-08 用於轉換係數寫碼之內容脈絡模型建立

Country Status (3)

Country Link
US (2) US10560723B2 (zh)
TW (2) TW201844005A (zh)
WO (2) WO2018208803A1 (zh)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10560723B2 (en) 2017-05-08 2020-02-11 Qualcomm Incorporated Context modeling for transform coefficient coding
US10558459B2 (en) 2017-05-12 2020-02-11 International Business Machines Corporation Approach to summarize code usage
EP3503557A1 (en) * 2017-12-22 2019-06-26 Thomson Licensing Method and apparatus for video encoding and decoding based on context switching
WO2019151280A1 (ja) 2018-01-30 2019-08-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
US10771781B2 (en) * 2018-03-12 2020-09-08 Electronics And Telecommunications Research Institute Method and apparatus for deriving intra prediction mode
US10645396B2 (en) * 2018-06-04 2020-05-05 Tencent America LLC Method and apparatus for implicit transform splitting
GB2589221B (en) 2018-06-19 2023-03-22 Beijing Bytedance Network Tech Co Ltd Mode dependent MVD precision set
EP3811612A1 (en) * 2018-06-21 2021-04-28 Telefonaktiebolaget LM Ericsson (publ) Tile partitions with sub-tiles in video coding
EP3811613A2 (en) 2018-06-21 2021-04-28 Telefonaktiebolaget LM Ericsson (publ) Flexible tile partitions
CN112703738B (zh) * 2018-08-03 2024-07-16 V-诺瓦国际有限公司 针对信号增强编码的上采样
WO2020048466A1 (en) * 2018-09-03 2020-03-12 Huawei Technologies Co., Ltd. Relation between partition constraint elements
WO2020058886A1 (en) 2018-09-19 2020-03-26 Beijing Bytedance Network Technology Co., Ltd. Fast algorithms for adaptive motion vector resolution in affine mode
US10848763B2 (en) 2018-11-14 2020-11-24 Tencent America LLC Method and apparatus for improved context design for prediction mode and coded block flag (CBF)
KR20210107733A (ko) * 2019-01-18 2021-09-01 주식회사 윌러스표준기술연구소 모션 보상을 이용한 비디오 신호 처리 방법 및 장치
CN113412623A (zh) * 2019-01-31 2021-09-17 北京字节跳动网络技术有限公司 记录仿射模式自适应运动矢量分辨率的上下文
WO2020189971A1 (ko) * 2019-03-15 2020-09-24 엘지전자 주식회사 영상 코딩 시스템에서 변환 스킵 플래그를 이용한 영상 디코딩 방법 및 그 장치
EP4277269A3 (en) * 2019-03-23 2024-03-06 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods for intra prediction
EP3935836A4 (en) 2019-04-12 2022-06-08 Beijing Bytedance Network Technology Co., Ltd. INTRA PREDICTION CALCULATION BASED ON A MATRIX
CN117097912A (zh) * 2019-05-01 2023-11-21 北京字节跳动网络技术有限公司 基于矩阵的帧内预测的上下文编码
CN117560489A (zh) 2019-05-14 2024-02-13 北京字节跳动网络技术有限公司 用于残差编解码的上下文建模
US11109041B2 (en) * 2019-05-16 2021-08-31 Tencent America LLC Method and apparatus for video coding
WO2020239017A1 (en) 2019-05-31 2020-12-03 Beijing Bytedance Network Technology Co., Ltd. One-step downsampling process in matrix-based intra prediction
WO2020244610A1 (en) 2019-06-05 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Context determination for matrix-based intra prediction
CN113966611B (zh) * 2019-06-09 2023-12-15 北京字节跳动网络技术有限公司 视频编解码中的重要系数信令
CN112073729B (zh) * 2019-06-11 2024-04-05 北京三星通信技术研究有限公司 模型更新方法、装置、电子设备及计算机可读存储介质
CN113632471B (zh) * 2019-08-23 2024-02-27 腾讯美国有限责任公司 视频编解码的方法和装置
CN114450963A (zh) * 2019-09-18 2022-05-06 松下电器(美国)知识产权公司 用于视频编码的***和方法
US11375223B2 (en) * 2019-09-20 2022-06-28 Tencent America LLC Method for signaling output layer set with sub-picture
US11330526B2 (en) * 2020-05-29 2022-05-10 TriSpace Technologies (OPC) Pvt. Ltd. System and method for optimizing power consumption in video communications in mobile devices
US20220400275A1 (en) * 2021-06-10 2022-12-15 Tencent America LLC Zero Residual Flag Coding
US20240129507A1 (en) * 2022-10-14 2024-04-18 Tencent America LLC Cabac context model grouping

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3009633B2 (ja) 1997-04-03 2000-02-14 コナミ株式会社 画像装置、画像表示方法および記録媒体
US7379608B2 (en) 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
EP2264622A3 (en) 2004-12-31 2011-12-21 Nokia Corp. Provision of target specific information
US8320453B2 (en) 2005-07-08 2012-11-27 Lg Electronics Inc. Method for modeling coding information of a video signal to compress/decompress the information
WO2007069618A1 (ja) 2005-12-12 2007-06-21 Ssd Company Limited 練磨方法、練磨装置、及び、コーディネーショントレーニング方法
KR101606834B1 (ko) 2008-07-10 2016-03-29 삼성전자주식회사 움직임과 사용자의 조작을 이용하는 입력장치 및 이에적용되는 입력방법
US20100188397A1 (en) 2009-01-28 2010-07-29 Apple Inc. Three dimensional navigation using deterministic movement of an electronic device
US8942282B2 (en) 2010-04-12 2015-01-27 Qualcomm Incorporated Variable length coding of coded block pattern (CBP) in video compression
TWI666882B (zh) * 2010-04-13 2019-07-21 美商Ge影像壓縮有限公司 在樣本陣列多元樹細分中之繼承技術
US8913662B2 (en) 2011-01-06 2014-12-16 Qualcomm Incorporated Indicating intra-prediction mode selection for video coding using CABAC
MY167090A (en) * 2011-06-30 2018-08-10 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
WO2013109026A1 (ko) 2012-01-18 2013-07-25 엘지전자 주식회사 엔트로피 부호화/복호화 방법 및 그 장치
US9467701B2 (en) * 2012-04-05 2016-10-11 Qualcomm Incorporated Coded block flag coding
US9264706B2 (en) 2012-04-11 2016-02-16 Qualcomm Incorporated Bypass bins for reference index coding in video coding
US9584802B2 (en) 2012-04-13 2017-02-28 Texas Instruments Incorporated Reducing context coded and bypass coded bins to improve context adaptive binary arithmetic coding (CABAC) throughput
DK3361733T3 (da) * 2012-07-02 2020-01-20 Samsung Electronics Co Ltd Entropikodning af en video og entropiafkodning af en video
US10560723B2 (en) 2017-05-08 2020-02-11 Qualcomm Incorporated Context modeling for transform coefficient coding

Also Published As

Publication number Publication date
WO2018208817A1 (en) 2018-11-15
US20180324464A1 (en) 2018-11-08
US20180324463A1 (en) 2018-11-08
TW201844005A (zh) 2018-12-16
WO2018208803A1 (en) 2018-11-15
US10560723B2 (en) 2020-02-11
US10609414B2 (en) 2020-03-31

Similar Documents

Publication Publication Date Title
US10609414B2 (en) Context modeling for transform coefficient coding
TWI775754B (zh) 幀內預測模式之基於鄰近的發信號
US11431968B2 (en) Variable number of intra modes for video coding
US20220094969A1 (en) Image prediction method and apparatus
US9699472B2 (en) Restriction of prediction units in B slices to uni-directional inter prediction
JP6246920B2 (ja) パレットベースのビデオコーディングにおけるパレット予測
TWI657692B (zh) 於視訊寫碼程序中用於係數層級寫碼之萊斯(rice)參數初始化
TWI666916B (zh) 在一視訊寫碼處理中之係數階寫碼
JP6158422B2 (ja) アラインされていないirapピクチャを含み得るマルチレイヤビットストリームのクロスレイヤpocアラインメント
JP2018532319A (ja) パレットモードビデオコーディングにおけるエスケープピクセルシグナリング値の制限
CN112514386B (zh) 网格编解码量化系数编解码
JP2018524906A (ja) イントラブロックコピーモードでの参照ピクチャリスト構成
JP2017523685A (ja) イントラブロックコピーイングのためのブロックベクトルコーディング
CN112789858B (zh) 帧内预测方法及设备
TW202126040A (zh) 用於視訊編碼的簡化的調色板預測器更新
JP2017535134A (ja) ビデオコーディングのためのパレットコーディングモードにおけるエスケープサンプル場所の明示的なシグナリング
CN117499670A (zh) 一种视频图像预测方法及装置
JP2023554264A (ja) 高ビット深度ビデオコーディング用のriceパラメータ導出のための低複雑度履歴の使用
JP2024500663A (ja) ビデオコーディングにおける最確モードリスト構築のためのデコーダ側イントラモード導出
TW201921938A (zh) 具有在用於視訊寫碼之隨機存取組態中之未來參考訊框之可調適圖像群組結構
JP2023544046A (ja) 高ビット深度ビデオコーディングのためのライスパラメータ値の適応的な導出
TW202041009A (zh) 用於轉換跳過模式之係數寫碼