TW202139716A - 在視訊解碼中共享的信號傳遞約束和序列參數集 - Google Patents

在視訊解碼中共享的信號傳遞約束和序列參數集 Download PDF

Info

Publication number
TW202139716A
TW202139716A TW110106456A TW110106456A TW202139716A TW 202139716 A TW202139716 A TW 202139716A TW 110106456 A TW110106456 A TW 110106456A TW 110106456 A TW110106456 A TW 110106456A TW 202139716 A TW202139716 A TW 202139716A
Authority
TW
Taiwan
Prior art keywords
image
syntax element
decoding
video
independent
Prior art date
Application number
TW110106456A
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 TW202139716A publication Critical patent/TW202139716A/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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

Landscapes

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

Abstract

一種示例性設備包括被配置為儲存視訊資料的記憶體以及在電路系統中實現並通訊地耦接到該記憶體的一或多個處理器。該一或多個處理器被配置為決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP),並決定圖像的所有層是否獨立。基於該圖像是IRAP並且圖像的所有層是獨立的,該一或多個處理器被配置為決定指示在圖像中不允許訊框間條帶的第一語法元素的值,並且在不使用訊框間條帶預測的情況下對圖像進行解碼。

Description

在視訊解碼中共享的信號傳遞約束和序列參數集
本專利申請案主張於2020年2月24日提出申請的美國臨時申請案第62/980,873的權利,其全部內容經由引用合併於本文。
本案係關於視訊編碼和視訊解碼。
數位視訊功能可以被併入到各種設備中,包括數位電視、數位直接廣播系統、無線廣播系統、個人數位助理(PDA)、可攜式或桌上型電腦、平板電腦、電子書閱讀器、數位相機、數位記錄設備、數位媒體播放機、視訊遊戲設備、視訊遊戲機、蜂巢或衛星無線電電話、所謂的「智慧型電話」、視訊電話會議設備、視訊串流設備等。數位視訊設備實施視訊解碼技術,諸如在以下各項所定義的標準中描述的彼等技術:MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4,高級視訊解碼(AVC)第10部分、ITU-T H.265/高效視訊解碼(HEVC)以及此類標準的擴展。經由實現此種視訊解碼技術,視訊設備可以更有效地傳輸、接收、編碼、解碼及/或儲存數位視訊資訊。
視訊解碼技術包括空間(圖像內)預測及/或時間(圖像間)預測,以減少或消除視訊序列中固有的冗餘。對於基於區塊的視訊解碼,可以將視訊條帶(slice)(例如,視訊圖像或視訊圖像的一部分)分割為視訊區塊,該等視訊區塊亦可以稱為解碼樹單元(CTU)、解碼單元(CU)及/或解碼節點。相對於同一圖像中相鄰區塊中的參考取樣,使用空間預測對圖像的訊框內解碼(I)條帶中的視訊區塊進行編碼。圖像的訊框間解碼(P或B)條帶中的視訊區塊可使用相對於同一圖像中相鄰區塊中參考取樣的空間預測,或相對於其他參考圖像中參考取樣的時間預測。圖像可以被稱為訊框,並且參考圖像可以被稱為參考訊框。
整體上,本案描述了用於視訊解碼中的信號傳遞的技術,並且具體地,是用於減小信號傳遞頻寬的技術,包括經由不對不必要的語法元素進行信號傳遞傳輸及/或經由視訊解碼中的序列參數集(SPS)共享來減少信號傳遞頻寬的技術。
在一個實例中,一種方法包括以下步驟:決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP),決定該圖像的所有層是否獨立,基於該圖像為IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值,並在不使用訊框間條帶預測的情況下對該圖像進行解碼。如本文中所用,訊框間條帶預測是使用視訊資料的另一條帶對視訊資料的一個條帶的預測。
在另一個實例中,一種設備包括被配置為儲存視訊資料的記憶體;及在電路系統中實現並通訊地耦接到記憶體的一或多個處理器,該一或多個處理器被配置為:決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP);決定該圖像的所有層是否獨立;基於該圖像為IRAP且該圖像的所有層是獨立的,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值;並且在不使用訊框間條帶預測的情況下對該圖像進行解碼。
在另一實例中,一種編碼有指令的電腦可讀取儲存媒體,該等指令在被執行時使一或多個處理器決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP),決定該圖像的所有層是否獨立,基於該圖像為IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值,並在不使用訊框間條帶預測的情況下對該圖像進行解碼。
在另一實例中,一種設備包括用於決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP)的構件,用於決定該圖像的所有層是否獨立的構件,用於基於該圖像為IRAP並且該圖像的所有層是獨立的來決定指示在該圖像中不允許訊框間條帶的第一語法元素的值的構件,以及用於在不使用訊框間條帶預測的情況下對該圖像進行解碼的構件。用於執行本案的任一方法的至少一個構件。
一或多個實例的細節在附圖和以下描述中闡述。根據說明書、附圖和申請專利範圍,其他特徵、目的和優點將是顯而易見的。
在某些視訊標準草案中,諸如VVC草案8,當視訊資料層是獨立的層(例如,該層不是訊框間預測的)時,存在約束,亦即若網路抽象層(NAL)單元類型是暫態解碼器刷新(IDR)或乾淨隨機存取(CRA),條帶類型應為I條帶。但是,圖像頭部中有標誌ph_inter_slice_allowed_flag,用於指示訊框間相關語法元素的存在,或者換言之,條帶類型可以是P條帶還是B條帶。對於當針對獨立層的圖像中NAL單元類型為IDR或CRA時的情況,此圖像頭部標誌不是約束。因此,不必要的語法元素可以被編碼、用信號傳遞傳輸和解析,從而浪費了信號傳遞管理負擔。根據本案的技術,可以添加約束,亦即若圖像是IDR圖像或CRA圖像,則對於獨立層,ph_inter_slice_allowed_flag可以等於0。以此種方式,當圖像是IDR圖像或CRA圖像並且所有層是獨立的並且視訊解碼器可以推斷出ph_inter_slice_allowed_flag的值為0時,視訊編碼器可以避免用信號傳遞傳輸ph_inter_slice_allowed_flag。
另外,在某些視訊標準草案中,存在約束,該等約束在實施時基於另一語法元素的值來控制語法元素的值。例如,在VVC草案8中,語法元素inter_layer_ref_pics_present_flag的語義包含約束,亦即「當vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]等於1時,inter_layer_ref_pics_present_flag的值應等於0」。此情形意味著,若實現VVC草案8的視訊編碼器未對於層使用層間預測(例如,該層是獨立的),則該層的序列參數集(SPS)的inter_layer_ref_pics_present_flag等於0。此約束可避免視訊編碼器和視訊解碼器在獨立層和依賴層之間共享SPS。在此種約束下,例如,若存在獨立層和依賴層(例如,一個層依賴於另一層進行預測),則視訊編碼器200會用信號傳遞傳輸兩個SPS,每個層一個,即使兩個SPS之間的唯一區別是inter_layer_ref_pics_present_flag的值。根據VVC草案8,可以序列用信號傳遞傳輸的SPS總數限制為16。因此,在此種情況下(如VVC草案8中的情況)不允許共享SPS可能會導致可在序列中解碼的層數減少,以及信號傳遞頻寬增加。
根據本案的技術,視訊編碼器或視訊解碼器可分別用信號傳遞傳輸或解析用於具有相同參考圖像結構的獨立層和依賴層的共享SPS,但是僅添加用於依賴層的層間參考圖像。該技術的優點在於,可以在獨立和依賴層之間共享SPS和參考圖像結構(例如,ref_pic_list_struct),從而降低了信號傳遞中的管理負擔,並且亦可以產生對較大數量的層進行解碼的能力。
圖1是圖示可執行本案的技術的示例性視訊編碼和解碼系統100的方塊圖。本案的技術通常針對解碼(編碼及/或解碼)視訊資料。通常,視訊資料包括用於處理視訊的任何資料。因此,視訊資料可以包括原始的、未編碼的視訊、編碼的視訊、解碼的(例如,重建的)視訊以及視訊中繼資料,諸如信號傳遞資料。
如圖1中所示,在該實例中,系統100包括源設備102,其提供要由目的設備116解碼和顯示的編碼視訊資料。特別地,源設備102經由電腦可讀取媒體110將視訊資料提供給目的設備116。源設備102和目的設備116可以包含多種設備中的任何一種,包括桌上型電腦、筆記型電腦(亦即膝上型電腦)、平板電腦、機上盒、廣播接收器設備、諸如智慧手機的電話手持機(行動設備)、電視、照相機、顯示設備、數位媒體播放機、視訊遊戲機、視訊串流設備等。在某些情況下,源設備102和目的設備116可以被配備用於無線通訊,並且因此可以被稱為無線通訊設備。
在圖1的實例中,源設備102包括視訊源104、記憶體106、視訊編碼器200和輸出介面108。目的設備116包括輸入介面122、視訊解碼器300、記憶體120和顯示設備118。根據本案,源設備102的視訊編碼器200和目的設備116的視訊解碼器300可以被配置為在視訊解碼中應用用於SPS共享的技術。因此,源設備102表示視訊編碼設備的實例,而目的設備116表示視訊解碼設備的實例。在其他實例中,源設備和目的設備可以包括其他元件或佈置。例如,源設備102可以從諸如外部相機的外部視訊源接收視訊資料。同樣,目的設備116可以與外部顯示設備對接,而不是包括整合顯示設備。
如圖1所示的系統100僅是一個實例。通常,任何數位視訊編碼及/或解碼設備皆可以執行用於SPS共享的技術。源設備102和目的設備116僅僅是此類解碼設備的實例,其中源設備102產生解碼視訊資料以傳輸到目的設備116。本案將「解碼」設備稱為執行資料的解碼(編碼及/或解碼)的設備。因此,視訊編碼器200和視訊解碼器300表示解碼設備的實例,具體地,分別表示視訊編碼器和視訊解碼器。在某些實例中,源設備102和目的設備116可以以基本上對稱的方式操作,使得源設備102和目的設備116之每一者包括視訊編碼和解碼用元件。因此,系統100可以支援源設備102和目的設備116之間的單向或雙向視訊傳輸,例如,用於視訊串流、視訊重播、視訊廣播或視訊電話。
通常,視訊源104表示視訊資料(亦即,原始的、未編碼的視訊資料)的源,並且向視訊編碼器200提供視訊資料的連續序列圖像(亦稱為「訊框」),視訊編碼器200對針對該等圖像的資料進行編碼。源設備102的視訊源104可以包括諸如攝像機的視訊擷取設備,包含先前擷取的原始視訊的視訊存檔及/或從視訊內容提供者接收視訊的視訊饋送介面。作為另一替代,視訊源104可以產生基於電腦圖形的資料作為源視訊,或者是即時視訊、存檔視訊和電腦產生的視訊的組合。在每種情況下,視訊編碼器200對擷取的、預擷取的或電腦產生的視訊資料進行編碼。視訊編碼器200可以將圖像從接收到的次序(有時稱為「顯示次序」)重新排列為用於解碼的解碼次序。視訊編碼器200可以產生包括編碼的視訊資料的位元串流。隨後,源設備102可以經由輸出介面108將編碼的視訊資料輸出到電腦可讀取媒體110上,以經由例如目的設備116的輸入介面122進行接收及/或取得。
源設備102的記憶體106和目的設備116的記憶體120表示通用記憶體。在某些實例中,記憶體106、120可以儲存原始視訊資料,例如來自視訊源104的原始視訊和來自視訊解碼器300的原始的、解碼後的視訊資料。附加地或替代地,記憶體106、120可以儲存分別可由例如視訊編碼器200和視訊解碼器300執行的軟體指令。儘管在該實例中,記憶體106和記憶體120與視訊編碼器200和視訊解碼器300分開圖示,但是應當理解,視訊編碼器200和視訊解碼器300亦可以包括用於功能上相似或等效的目的的內部記憶體。此外,記憶體106、120可以儲存例如從視訊編碼器200輸出並輸入到視訊解碼器300的編碼視訊資料。在某些實例中,記憶體106、120的部分可被分配為一或多個視訊緩衝器,例如,以儲存原始的、解碼的及/或編碼的視訊資料。
電腦可讀取媒體110可以表示能夠將編碼的視訊資料從源設備102傳輸到目的設備116的任何類型的媒體或設備。在一個實例中,電腦可讀取媒體110表示一種通訊媒體,其使源設備102能夠例如經由射頻網路或基於電腦的網路將編碼的視訊資料直接即時地傳輸至目的設備116。根據諸如無線通訊協定的通訊標準,輸出介面108可以對包括編碼的視訊資料的傳輸信號進行解調,並且輸入介面122可以對所接收的傳輸信號進行解調。通訊媒體可以包含任何無線或有線通訊媒體,諸如射頻(RF)頻譜或一或多條實體傳輸線。通訊媒體可以形成諸如區域網路、廣域網路或諸如網際網路之類的全球網路的基於封包的網路的一部分。通訊媒體可以包括路由器、交換機、基地站或任何其他有助於從源設備102到目的設備116的通訊的設備。
在某些實例中,源設備102可以將編碼的資料從輸出介面108輸出到儲存設備112。類似地,目的設備116可以經由輸入介面122存取來自儲存設備112的編碼資料。儲存設備112可以包括各種分散式或本端存取的資料儲存媒體中的任何一種,諸如硬碟、藍光光碟、DVD、CD-ROM、快閃記憶體、揮發性或非揮發性記憶體或任何其他合適的用於儲存編碼視訊資料的數位儲存媒體。
在某些實例中,源設備102可以將編碼的視訊資料輸出到檔案伺服器114或可以儲存由源設備102產生的編碼的視訊資料的另一個中間儲存設備。目的設備116可以經由串流或下載來從檔案伺服器114存取儲存的視訊資料。檔案伺服器114可以是能夠儲存編碼的視訊資料並將該編碼的視訊資料傳輸到目的設備116的任何類型的伺服器設備。檔案伺服器114可以表示網路伺服器(例如,用於網站)、檔案傳送協定(FTP)伺服器、內容傳遞網路設備或網路附加儲存(NAS)設備。目的設備116可以經由包括網際網路連接的任何標準資料連接來存取來自檔案伺服器114的編碼視訊資料。該連接可能包括適合存取儲存在檔案伺服器114上的編碼視訊資料的無線通道(例如,Wi-Fi連接)、有線連接(例如,數位用戶線(DSL)、纜線數據機等)或二者的組合。檔案伺服器114和輸入介面122可以配置為根據串流傳輸協定、下載傳輸協定或其組合來操作。
輸出介面108和輸入介面122可以表示無線傳輸器/接收器、數據機、有線網路元件(例如,乙太網路卡)、根據各種IEEE 802.11標準中的任何一種進行操作的無線通訊元件,或者其他實體元件。在輸出介面108和輸入介面122包含無線元件的實例中,輸出介面108和輸入介面122可以配置為根據諸如4G、4G-LTE(長期進化)、LTE高級、5G等的蜂巢通訊標準傳送資料,例如編碼視訊資料。在輸出介面108包含無線傳輸器的某些實例中,輸出介面108和輸入介面122可配置為根據其他無線標準,諸如IEEE 802.11規範、IEEE 802.15規範(例如ZigBee )、藍芽 標準等來傳送資料,諸如編碼視訊資料。在某些實例中,源設備102及/或目的設備116可以包括各自的晶片上系統(SoC)元件。例如,源設備102可以包括SoC元件,用於執行歸因於視訊編碼器200及/或輸出介面108的功能,並且目的設備116可以包括SoC元件,用於執行歸因於視訊解碼器300及/或輸入介面122的功能。
本案的技術可以應用於支援各種多媒體應用中的任何一種的視訊解碼,諸如空中電視廣播、有線電視傳輸、衛星電視傳輸、網際網路串流視訊傳輸,諸如HTTP上的動態自我調整串流(DASH)、編碼到資料儲存媒體上的數位視訊、儲存在資料儲存媒體上的數位視訊的解碼或其他應用。
目的設備116的輸入介面122從電腦可讀取媒體110(例如,通訊媒體、儲存設備112、檔案伺服器114等)接收編碼的視訊位元串流。編碼的視訊位元串流可以包括由視訊編碼器200定義的信號傳遞資訊,其亦由視訊解碼器300使用,諸如具有描述視訊區塊或其他解碼單元(例如,條帶、圖像、圖像群組、序列等)的特性及/或處理的值的語法元素。顯示設備118將解碼後的視訊資料的解碼後的圖像顯示給使用者。顯示設備118可以表示多種顯示設備中的任何一種,諸如陰極射線管(CRT)、液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另外類型的顯示設備。
儘管未在圖1中顯示,但在某些實例中,視訊編碼器200和視訊解碼器300可以分別與音訊編碼器及/或音訊解碼器整合在一起,並且可以包括適當的MUX-DEMUX單元或其他硬體及/或軟體,以用於在共用資料串流中處理包括音訊和視訊在內的多工串流。若適用,MUX-DEMUX單元可以符合ITU H.223多工器協定或其他協定,諸如使用者資料包通訊協定(UDP)。
視訊編碼器200和視訊解碼器300可各自實現為各種合適的編碼器及/或解碼器電路系統中的任何一種,諸如一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、現場可程式設計閘陣列(FPGA)、離散邏輯、軟體、硬體、韌體或其任何組合。當技術部分地以軟體實現時,設備可將用於軟體的指令儲存在合適的非暫時性電腦可讀取媒體中,並使用一或多個處理器以硬體方式執行指令以執行本案的技術。視訊編碼器200和視訊解碼器300之每一者可以被包括在一或多個編碼器或解碼器中,其中的任一個可以被整合為相應設備中的組合編碼器/解碼器(CODEC)的一部分。包括視訊編碼器200及/或視訊解碼器300的設備可以包含積體電路、微處理器及/或無線通訊設備,諸如蜂巢式電話。
視訊編碼器200和視訊解碼器300可以根據視訊解碼標準來操作,諸如ITU-T H.265,亦稱為高效視訊解碼(HEVC)或其擴展,諸如多視圖及/或可縮放視訊編碼擴展。或者,視訊編碼器200和視訊解碼器300可以根據諸如ITU-T H.266的其他專有或工業標準,亦稱為通用視訊解碼(VVC)來操作。Bross等人在「多功能視訊解碼(草案8)」中描述了VVC標準的最新草案,ITU-T SG 16 WP 3和ISO/IEC JTC 1/SC 29/WG 11聯合視訊專家組(JVET)第17次會議:布魯塞爾,BE,2020年1月7日至17日,JVET-Q2001-vC(以下簡稱「VVC草案8」)。然而,本案的技術不限於任何特定的解碼標準。
通常,視訊編碼器200和視訊解碼器300可以執行圖像的基於區塊的解碼。術語「區塊」通常是指包括要被處理(例如,編碼、解碼或以其他方式在編碼及/或解碼程序中使用)的資料的結構。例如,區塊可以包括亮度及/或色度資料的取樣的二維矩陣。通常,視訊編碼器200和視訊解碼器300可以對以YUV(例如,Y、Cb、Cr)格式表示的視訊資料進行解碼。亦即,不是解碼圖像的取樣的紅色、綠色和藍色(RGB)資料,而是視訊編碼器200和視訊解碼器300可以對亮度和色度分量進行解碼,其中色度分量可以包括紅色調和藍色調色度分量。在某些實例中,視訊編碼器200在編碼之前將接收到的RGB格式的資料轉換成YUV表示,並且視訊解碼器300將YUV表示轉換成RGB格式。或者,預處理和後處理單元(未圖示)可以執行該等轉換。
本案通常可以代表圖像的解碼(例如,編碼和解碼)以包括對圖像的資料進行編碼或解碼的程序。類似地,本案可涉及對圖像的區塊的解碼以包括對針對區塊的資料進行編碼或解碼的程序,例如,預測及/或殘差解碼。編碼的視訊位元串流通常包括用於語法元素的一系列值,該等值表示解碼決策(例如,解碼模式)以及圖像到區塊的分割。因此,對解碼圖像或區塊的引用通常應理解為用於形成圖像或區塊的語法元素的解碼值。
HEVC定義了各種區塊,包括解碼單元(CU)、預測單元(PU)和變換單元(TU)。根據HEVC,視訊解碼器(諸如視訊編碼器200)根據四叉樹結構將解碼樹單元(CTU)分割為CU。亦即,視訊編碼器將CTU和CU分割為四個相等的、不重疊的正方形,並且四叉樹的每個節點具有零個或四個子節點。沒有子節點的節點可以被稱為「葉節點」,並且此種葉節點的CU可以包括一或多個PU及/或一或多個TU。視訊編碼器可亦分割PU和TU。例如,在HEVC中,殘差四叉樹(RQT)表示TU的分割。在HEVC中,PU表示訊框間預測資料,而TU表示殘差資料。訊框內預測的CU包括訊框內預測資訊,諸如訊框內模式指示。
作為另一實例,視訊編碼器200和視訊解碼器300可以被配置為根據VVC操作。根據VVC,視訊解碼器(諸如視訊編碼器200)將圖像分割為複數個解碼樹單元(CTU)。視訊編碼器200可根據樹結構(諸如四叉樹-二叉樹(QTBT)結構或多類型樹(MTT)結構)對CTU進行分割。QTBT結構消除了多種分割類型的概念,諸如HEVC的CU、PU和TU之間的區分。QTBT結構包括兩個級別:根據四叉樹分割來分割的第一級別,以及根據二叉樹分割來分割的第二級別。QTBT結構的根節點對應於CTU。二叉樹的葉節點對應於解碼單元(CU)。
在MTT分割結構中,可以使用四叉樹(QT)分割、二叉樹(BT)分割以及一或多個類型的三叉樹(TT)(亦稱為三元樹(TT))分割來對區塊進行分割。三叉或三元樹分割是將一個區塊分離為三個子區塊的分割。在某些實例中,三叉或三元樹分割將一個區塊劃分為三個子區塊,而不經由中心劃分原始區塊。MTT中的分割類型(例如,QT、BT和TT)可以是對稱的亦可以是不對稱的。
在某些實例中,視訊編碼器200和視訊解碼器300可以使用單個QTBT或MTT結構來表示亮度和色度分量中的每一個,而在其他實例中,視訊編碼器200和視訊解碼器300可以使用兩個或更多個QTBT或MTT結構,諸如用於亮度分量的一個QTBT/MTT結構和用於兩個色度分量的另一個QTBT/MTT結構(或兩個QTBT/MTT結構用於各自的色度分量)。
視訊編碼器200和視訊解碼器300可以被配置為對每個HEVC使用四叉樹分割、QTBT分割、MTT分割或其他分割結構。為了解釋的目的,相對於QTBT分割提供了本案的技術的描述。然而應理解,本案的技術亦可應用於配置為使用四叉樹分割或其他類型的分割的視訊解碼器。
可以以各種方式將區塊(例如,CTU或CU)分類在圖像中。作為一個實例,磚塊可以指圖像中特定片內的CTU行的矩形區域。片可以是圖像中的特定片列和特定片行內的CTU的矩形區域。片列是指CTU的矩形區域,其具有等於圖像的高度的高度和由語法元素指定的寬度(例如,諸如在圖像參數集中的寬度)。片行是指CTU的矩形區域,其具有由語法元素指定的高度(例如,諸如在圖像參數集中)並且其寬度等於圖像的寬度。
在某些實例中,可將片分割成多個磚塊,每個磚塊可在片內包括一或多個CTU行。沒有分割為多個磚塊的片亦可以稱為磚塊。但是,作為片的真實子集的磚塊不能稱為片。
圖像中的磚塊亦可以條帶排列。條帶可以是圖像的整數個磚塊,該等磚塊可以專有地包含在單個網路抽象層(NAL)單元中。在某些實例中,條帶包括多個完整片或僅一個片的完整磚塊的連續序列。
本案可互換地在垂直和水平維度態樣使用「N×N」和「N乘N」來代表區塊(諸如CU或其他視訊區塊)的取樣維度,例如16×16取樣或16乘16取樣。通常,16x16 CU在垂直方向上將有16個取樣(y=16)且在水平方向上將有16個取樣(x=16)。同樣地,N×N的CU通常在垂直方向上具有N個取樣且在水平方向上具有N個取樣,其中N表示非負整數值。CU中的取樣可以按行和列排列。此外,CU在水平方向上不必具有與垂直方向上相同數量的取樣。舉例而言,CU可包含N×M個取樣,其中M不一定等於N。
視訊編碼器200對針對表示預測及/或殘差資訊以及其他資訊的CU的視訊資料進行編碼。預測資訊指示將如何預測CU以便形成用於CU的預測區塊。殘差資訊通常表示編碼之前的CU的取樣與預測區塊之間的逐取樣差異。
為了預測CU,視訊編碼器200通常可經由訊框間預測或訊框內預測來形成用於CU的預測區塊。訊框間預測通常是指根據先前解碼的圖像的資料來預測CU,而訊框內預測通常是指根據同一圖像的先前解碼的資料來預測CU。為了執行訊框間預測,視訊編碼器200可使用一或多個運動向量來產生預測區塊。視訊編碼器200通常可進行運動搜尋以例如在CU與參考區塊之間的差異態樣標識與CU緊密匹配的參考區塊。視訊編碼器200可使用絕對差之和(SAD)、平方差之和(SSD)、平均絕對差(MAD)、均方差(MSD)或其他此類差值計算來計算差值度量以決定是否參考區塊緊密匹配當前CU。在某些實例中,視訊編碼器200可使用單向預測或雙向預測來預測當前CU。
VVC的某些實例亦提供了仿射運動補償模式,可以將其視為訊框間預測模式。在仿射運動補償模式中,視訊編碼器200可以決定表示非平移運動的兩個或更多個運動向量,諸如放大或縮小、旋轉、透視運動或其他不規則運動類型。
為了執行訊框內預測,視訊編碼器200可選擇訊框內預測模式以產生預測區塊。VVC的某些實例提供了67種訊框內預測模式,包括各種定向模式以及平面模式和DC模式。通常,視訊編碼器200選擇訊框內預測模式,其描述當前區塊(例如,CU的區塊)的、根據其來預測當前區塊的取樣的相鄰取樣。假設視訊編碼器200以光柵掃瞄次序(從左到右、從上到下)解碼CTU和CU,則此種取樣通常可以在與當前區塊相同的圖像中的當前區塊的上方、上方和左側,或者左側。
視訊編碼器200對表示用於當前區塊的預測模式的資料進行編碼。例如,對於訊框間預測模式,視訊編碼器200可對表示使用各種可用訊框間預測模式中的何者的資料以及對應模式的運動資訊進行編碼。例如,對於單向或雙向訊框間預測,視訊編碼器200可以使用高級運動向量預測(AMVP)或合併模式來對運動向量進行編碼。視訊編碼器200可使用類似模式來對仿射運動補償模式的運動向量進行編碼。
在諸如區塊的訊框內預測或訊框間預測之類的預測之後,視訊編碼器200可計算用於該區塊的殘差資料。殘差資料(諸如殘差區塊)表示該區塊與使用相應預測模式形成的針對該區塊的預測區塊之間的逐取樣差異。視訊編碼器200可將一或多個變換應用於殘差區塊,以在變換域而非取樣域中產生經變換的資料。例如,視訊編碼器200可將離散餘弦變換(DCT)、整數變換、小波變換或概念上類似的變換應用於殘差視訊資料。另外,視訊編碼器200可在第一變換之後應用次級變換,諸如依賴模式的不可分離的次級變換(MDNSST)、依賴信號的變換、卡魯甯-洛伊夫變換(KLT)等。視訊編碼器200在應用一或多個變換之後產生變換係數。
如前述,在進行任何變換以產生變換係數之後,視訊編碼器200可執行變換係數的量化。量化通常是指對變換係數進行量化以可能減少用於表示變換係數的資料量,從而提供進一步壓縮的程序。經由執行量化程序,視訊編碼器200可減小與某些或所有變換係數相關聯的位元深度。舉例而言,視訊編碼器200可在量化期間將n 位元值捨入為m 位元值,其中n 大於m 。在某些實例中,為了執行量化,視訊編碼器200可執行待量化的值的按位元右移。
在量化之後,視訊編碼器200可掃瞄變換係數,從而從包括量化的變換係數的二維矩陣產生一維向量。可以將掃瞄設計為將較高能量(並且因此頻率較低)的變換係數放在向量的前面,並將較低能量(並且因此頻率較高)的變換係數放在向量的後面。在某些實例中,視訊編碼器200可利用預定義的掃瞄次序來掃瞄經量化的變換係數以產生序列化的向量,且接著對向量的量化的變換係數進行熵編碼。在其他實例中,視訊編碼器200可以執行自我調整掃瞄。在掃瞄量化的變換係數以形成一維向量之後,視訊編碼器200可以例如根據上下文自我調整二進位算術解碼(CABAC)對一維向量進行熵編碼。視訊編碼器200亦可對語法元素的值進行熵編碼,其描述與編碼視訊資料相關聯的中繼資料,以供視訊解碼器300在解碼視訊資料時使用。
為了執行CABAC,視訊編碼器200可將上下文模型內的上下文指派給要傳輸的符號。上下文可以關於例如符號的相鄰值是否為零值。概率決定可以基於指派給符號的上下文。
視訊編碼器200亦可以例如在圖像頭部、區塊頭部、條帶頭部中向視訊解碼器300產生語法資料,諸如基於區塊的語法資料、基於圖像的語法資料和基於序列的語法資料,或其他語法資料,諸如序列參數集(SPS)、圖像參數集(PPS)或視訊參數集(VPS)。視訊解碼器300可類似地解碼此類語法資料以決定如何解碼對應的視訊資料。
以此方式,視訊編碼器200可產生包含經編碼視訊資料的位元串流,例如,描述將圖像分割成區塊(例如,CU)以及用於區塊的預測及/或殘差資訊的語法元素。最終,視訊解碼器300可以接收位元串流並對編碼視訊資料進行解碼。
通常,視訊解碼器300執行與視訊編碼器200執行的相反程序,以解碼位元串流的編碼視訊資料。舉例而言,視訊解碼器300可使用CABAC以與視訊編碼器200的CABAC編碼程序實質上相似的方式(儘管相反)來解碼位元串流的針對語法元素的值。語法元素可以定義用於將圖像分割為CTU的分割資訊,並且根據諸如QTBT結構的對應分割結構來分割每個CTU,以定義CTU的CU。語法元素可亦定義針對視訊資料的區塊(例如,CU)的預測和殘差資訊。
殘差資訊可以由例如量化的變換係數表示。視訊解碼器300可對區塊的量化的變換係數進行逆量化和逆變換以再現針對該區塊的殘差區塊。視訊解碼器300使用用信號傳遞傳輸的預測模式(訊框內或訊框間預測)和相關的預測資訊(例如,用於訊框間預測的運動資訊)來形成用於該區塊的預測區塊。視訊解碼器300隨後可以(在逐取樣的基礎上)組合預測區塊和殘差區塊以再現原始區塊。視訊解碼器300可執行附加處理,諸如執行解區塊程序以減少沿著區塊的邊界的視覺偽影。
根據本案的技術,一種方法包括以下步驟:決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP),決定該圖像的所有層是否獨立,基於該圖像為IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值,以及在不使用訊框間條帶預測的情況下對該圖像進行解碼。
根據本案的技術,一種設備包括被配置為儲存視訊資料的記憶體;及在電路系統中實現並通訊地耦接到記憶體的一或多個處理器,該一或多個處理器配置為:決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP);決定該圖像的所有層是否獨立;基於該圖像為IRAP且該圖像的所有層均獨立,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值;及在不使用訊框間條帶預測的情況下對該圖像進行解碼。
根據本案的技術,一種編碼有指令的電腦可讀取儲存媒體,該等指令在被執行時使一或多個處理器:決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP),決定該圖像的所有層是否獨立,基於該圖像為IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值,以及在不使用訊框間條帶預測的情況下對該圖像進行解碼。
根據本案的技術,一種設備包括用於決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP)的構件,用於決定該圖像的所有層是否獨立的構件,用於基於該圖像為IRAP並且該圖像的所有層是獨立的來決定指示在該圖像中不允許訊框間條帶的第一語法元素的值的構件,以及用於在不使用訊框間條帶預測的情況下對該圖像進行解碼的構件。用於執行本案的任一方法的至少一個構件。
本案通常可以代表「用信號傳遞傳輸」某些資訊,諸如語法元素。術語「用信號傳遞傳輸」通常可以代表語法元素的值及/或用於解碼編碼視訊資料的其他資料的通訊。亦即,視訊編碼器200可在位元串流中用信號傳遞傳輸用於語法元素的值。通常,用信號傳遞傳輸指在位元串流中產生值。如前述,源設備102可以基本上即時地或不即時地將位元串流傳輸到目的設備116,諸如在將語法元素儲存到儲存設備112以供稍後由目的設備116取得時可能發生。
圖2A和圖2B是圖示示例性四叉樹二叉樹(QTBT)結構130以及對應的解碼樹單元(CTU)132的概念圖。實線表示四叉樹分離,虛線表示二叉樹分離。在二叉樹的每個分離(亦即非葉)節點中,用信號傳輸一個標誌以指示使用何種分離類型(亦即,水平或垂直),其中在該實例中,0表示水平分離,而1表示垂直分離。對於四叉樹分離,由於四叉樹節點將區塊水平和垂直分離為尺寸相等的4個子區塊,因此無需指示分離類型。因此,視訊編碼器200可以編碼而視訊解碼器300可以解碼針對QTBT結構130的區域樹級(亦即,實線)的語法元素(諸如分離資訊)和針對QTBT結構130的預測樹級(亦即,虛線)的語法元素(諸如分離資訊)。視訊編碼器200可以編碼而視訊解碼器300可以解碼針對由QTBT結構130的終端葉節點表示的CU的視訊資料,諸如預測和變換資料。
通常,圖2B的CTU 132可以與定義與第一和第二級別處的QTBT結構130的節點相對應的區塊的尺寸的參數相關聯。該等參數可以包括CTU尺寸(表示取樣中CTU 132的尺寸)、最小四叉樹尺寸(MinQTSize,表示允許的最小四叉樹葉節點尺寸)、最大二叉樹尺寸(MaxBTSize,表示允許的最大二叉樹根節點尺寸)、最大二叉樹深度(MaxBTDepth,表示允許的最大二叉樹深度)和最小二叉樹尺寸(MinBTSize,表示允許的最小二叉樹葉節點尺寸)。
對應於CTU的QTBT結構的根節點可以在QTBT結構的第一級具有四個子節點,每個子節點可以根據四叉樹分割來分割。亦即,第一級的節點是葉節點(沒有子節點)或具有四個子節點。QTBT結構130的實例表示此種節點,該等節點包括具有用於分支的實線的父節點和子節點。若第一級的節點不大於最大允許的二叉樹根節點尺寸(MaxBTSize),則可以經由相應的二叉樹亦對節點進行分割。可以反覆運算一個節點的二叉樹分離,直到分離產生的節點達到最小允許的二叉樹葉節點尺寸(MinBTSize)或最大允許的二叉樹深度(MaxBTDepth)。QTBT結構130的實例將此種節點表示為具有用於分支的虛線。二叉樹葉節點被稱為解碼單元(CU),其用於預測(例如,圖像內或圖像間預測)和變換,而無需任何進一步分割。如前述,CU亦可以被稱為「視訊區塊」或「區塊」。
在QTBT分割結構的一個實例中,CTU尺寸被設置為128x128(亮度取樣和兩個對應的64x64色度取樣),MinQTSize被設置為16x16,MaxBTSize被設置為64x64,MinBTSize(對於寬度和高度二者)被設置為4,並且MaxBTDepth被設置為4。首先將四叉樹分割應用於CTU,以產生四叉樹葉節點。四叉樹葉節點可以具有從16x16(亦即MinQTSize)到128x128(亦即CTU尺寸)的尺寸。若四叉樹葉節點為128x128,則四叉樹葉節點將不會被二叉樹亦分離,因為其尺寸超過了MaxBTSize(在此實例中為64x64)。否則,四叉樹葉節點將被二叉樹進一步分割。因此,四叉樹葉節點亦是二叉樹的根節點,並且具有為0的二叉樹深度。當二叉樹深度達到MaxBTDepth(在此實例中為4)時,不允許進一步分離。當二叉樹節點的寬度等於MinBTSize(在此實例中為4)時,表示不允許進一步垂直分離。類似地,具有等於MinBTSize的高度的二叉樹節點意味著對於該二叉樹節點不允許進一步水平分離。如前述,將二叉樹的葉節點稱為CU,並且根據預測和變換對其進行進一步處理而無需進一步分割。
圖3是圖示可執行本案的技術的示例性視訊編碼器200的方塊圖。提供圖3是為了解釋的目的,並且不應被認為是對本案中廣泛例示和描述的技術的限制。為了解釋的目的,本案描述了根據VVC(正在開發的ITU-T H.266)和HEVC(ITU-T H.265)的技術的視訊編碼器200。然而,本案的技術可以由被配置為其他視訊解碼標準的視訊編碼設備來執行。
在圖3的實例中,視訊編碼器200包括視訊資料記憶體230、模式選擇單元202、殘差產生單元204、變換處理單元206、量化單元208、逆量化單元210、逆變換處理單元212、重建單元214、濾波單元216、解碼圖像緩衝器(DPB)218,以及熵編碼單元220。視訊資料記憶體230、模式選擇單元202、殘差產生單元204、變換處理單元206、量化單元208、逆量化單元210、逆變換處理單元212、重建單元214、濾波單元216、DPB 218,以及熵編碼單元220中的任一或全部可以在一或多個處理器或處理電路系統中實現。例如,視訊編碼器200的單元可以被實現為一或多個電路或邏輯元件,作為硬體電路系統的一部分,或者被實現為FPGA的處理器、ASIC的一部分。此外,視訊編碼器200可包括附加的或替代的處理器或處理電路系統,以執行該等和其他功能。
視訊資料記憶體230可以儲存要由視訊編碼器200的元件編碼的視訊資料。視訊編碼器200可以從例如視訊源104(圖1)接收儲存在視訊資料記憶體230中的視訊資料。DPB 218可以用作參考圖像記憶體,其儲存參考視訊資料,以供在由視訊編碼器200預測後續視訊資料中使用。視訊資料記憶體230和DPB 218可以由多種記憶體設備中的任何一種構成,諸如動態隨機存取記憶體(DRAM),包括同步DRAM(SDRAM)、磁阻RAM(MRAM)、電阻性RAM(RRAM)或其他記憶體設備的類型。視訊資料記憶體230和DPB 218可以由相同的記憶體設備或分離的記憶體設備提供。在各種實例中,視訊資料記憶體230可以與視訊編碼器200的其他元件在晶片上,如圖所示,或者相對於彼等元件在晶片外。
在本案中,對視訊資料記憶體230的引用不應被解釋為限於視訊編碼器200內部的記憶體,除非如此具體地描述,或者視訊編碼器200外部的記憶體,除非如此具體地描述。而是,對視訊資料記憶體230的引用應被理解為儲存視訊編碼器200所接收的用於編碼的視訊資料(例如,用於將要編碼的當前區塊的視訊資料)的參考記憶體。圖1的記憶體106亦可提供來自視訊編碼器200的各個單元的輸出的臨時儲存。
圖3的各個單元被圖示以幫助理解由視訊編碼器200執行的操作。該等單元可以被實現為固定功能電路、可程式設計電路或其組合。固定功能電路指提供特定功能並預先設置可以被執行的操作的電路。可程式設計電路指可以被程式設計以執行各種任務並且在可以執行的操作中提供靈活功能的電路。例如,可程式設計電路可以執行使可程式設計電路以由軟體或韌體的指令所定義的方式進行操作的軟體或韌體。固定功能電路可以執行軟體指令(例如,以接收參數或輸出參數),但是固定功能電路執行的操作類型通常是不可變的。在某些實例中,一或多個單元可以是不同的電路區塊(固定功能或可程式設計的),並且在某些實例中,一或多個單元可以是積體電路。
視訊編碼器200可以包括算術邏輯單位(ALU)、基本功能單元(EFU)、數位電路、類比電路及/或由可程式設計電路形成的可程式設計核心。在使用由可程式設計電路執行的軟體執行視訊編碼器200的操作的實例中,記憶體106(圖1)可以儲存視訊編碼器200接收和執行的軟體的指令(例如,目標代碼),或者視訊編碼器200內的另一記憶體(未圖示)可以儲存此種指令。
視訊資料記憶體230被配置為儲存接收到的視訊資料。視訊編碼器200可以從視訊資料記憶體230取得視訊資料的圖像,並將視訊資料提供給殘差產生單元204和模式選擇單元202。視訊資料記憶體230中的視訊資料可以是將被編碼的原始視訊資料。
模式選擇單元202包括運動估計單元222、運動補償單元224和訊框內預測單元226。模式選擇單元202可以包括附加功能單元,以根據其他預測模式來執行視訊預測。作為實例,模式選擇單元202可以包括調色板單元、區塊內複製單元(其可以是運動估計單元222及/或運動補償單元224的一部分)、仿射單元、線性模型(LM)單元,或類似的單元。
模式選擇單元202通常協調多個編碼傳遞(passes),以測試編碼參數的組合以及對於此種組合的結果速率失真值。編碼參數可以包括CTU到CU的分割、用於CU的預測模式、用於CU的殘差資料的變換類型、用於CU的殘差資料的量化參數等。模式選擇單元202可以最終選擇具有比其他測試的組合更好的速率失真值的編碼參數的組合。
視訊編碼器200可將從視訊資料記憶體230取得到的圖像分割為一系列CTU,並將一或多個CTU封裝在條帶內。模式選擇單元202可以根據樹結構,諸如上述HEVC的QTBT結構或四叉樹結構,來分割圖像的CTU。如前述,視訊編碼器200可經由根據樹結構分割CTU來形成一或多個CU。此種CU亦通常可以被稱為「視訊區塊」或「區塊」。
通常,模式選擇單元202亦控制其元件(例如,運動估計單元222、運動補償單元224和訊框內預測單元226)以產生用於當前區塊(例如,當前CU,或在HEVC中,PU和TU的重疊部分)的預測區塊。對於當前區塊的訊框間預測,運動估計單元222可以執行運動搜尋以標識一或多個參考圖像(例如,被儲存在DPB 218中的一或多個先前解碼的圖像)中的一或多個緊密匹配的參考區塊。具體地,運動估計單元222可以例如根據絕對差之和(SAD)、平方差之和(SSD)、平均絕對差(MAD)、均方差(MSD)等來計算表示潛在參考區塊與當前區塊的相似程度的值。運動估計單元222通常可使用當前區塊與所考慮的參考區塊之間的逐取樣差異來執行該等計算。運動估計單元222可標識具有由該等計算產生的最小值的參考區塊,其指示與當前區塊最接近地匹配的參考區塊。
運動估計單元222可形成一或多個運動向量(MV),其定義參考圖像中的參考區塊相對於當前圖像中的當前區塊的位置的位置。隨後,運動估計單元222可以將運動向量提供給運動補償單元224。例如,對於單向訊框間預測,運動估計單元222可以提供單個運動向量,而對於雙向訊框間預測,運動估計單元222可以提供兩個運動向量。隨後,運動補償單元224可以使用運動向量來產生預測區塊。例如,運動補償單元224可以使用運動向量來取得參考區塊的資料。作為另一實例,若運動向量具有分數取樣精度,則運動補償單元224可以根據一或多個內插濾波器對預測區塊的值進行內插。此外,對於雙向訊框間預測,運動補償單元224可取得由相應運動向量標識的兩個參考區塊的資料,並例如經由逐取樣平均或加權平均來組合所取得的資料。
作為另一實例,對於訊框內預測或訊框內預測解碼,訊框內預測單元226可以根據與當前區塊相鄰的取樣來產生預測區塊。例如,對於定向模式,訊框內預測單元226通常可以在數學上組合相鄰取樣的值,並在當前區塊上沿定義的方向填充該等計算出的值,以產生預測區塊。作為另一實例,對於DC模式,訊框內預測單元226可以計算當前區塊的相鄰取樣的平均值,並且產生預測區塊以包括針對預測區塊的每個取樣的所得平均。
在某些實例中,根據本案的技術,模式選擇單元202可以決定視訊資料的圖像是否是IRAP,並且決定該圖像的所有層是否獨立。模式選擇單元202亦可以基於該圖像是IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值及/或在不使用訊框間條帶預測的情況下對該圖像進行編碼。
模式選擇單元202將預測區塊提供給殘差產生單元204。殘差產生單元204從視訊資料記憶體230接收當前區塊的原始的、未編碼版本,並從模式選擇單元202接收預測區塊。殘差產生單元204計算當前區塊和預測區塊之間的逐取樣差異。所得的逐取樣差異定義了針對當前區塊的殘差區塊。在某些實例中,殘差產生單元204亦可決定殘差區塊中的取樣值之間的差以使用殘差差分脈衝代碼調制(RDPCM)來產生殘差區塊。在某些實例中,可以使用執行二進位減法的一或多個減法器電路來形成殘差產生單元204。
在模式選擇單元202將CU分割為PU的實例中,每個PU可與亮度預測單元和對應的色度預測單元相關聯。視訊編碼器200和視訊解碼器300可以支援具有各種尺寸的PU。如前述,CU的尺寸可以指CU的亮度解碼區塊的尺寸,而PU的尺寸可以指PU的亮度預測單元的尺寸。假設特定CU的尺寸為2Nx2N,則視訊編碼器200可支援用於訊框內預測的2Nx2N或NxN的PU尺寸,以及用於訊框間預測的2Nx2N、2NxN、Nx2N、NxN或類似的對稱PU尺寸。視訊編碼器200和視訊解碼器300亦可針對用於訊框間預測的2NxnU、2NxnD、nLx2N和nRx2N的PU尺寸支援非對稱分割。
在模式選擇單元202不將CU進一步分割成PU的實例中,每個CU可與亮度解碼區塊和對應的色度解碼區塊相關聯。如前述,CU的尺寸可以指CU的亮度解碼區塊的尺寸。視訊編碼器200和視訊解碼器300可以支援2N×2N、2N×N或N×2N的CU尺寸。
對於諸如區塊內複製模式解碼、仿射模式解碼和線性模型(LM)模式解碼之類的其他視訊解碼技術,作為某些實例,模式選擇單元202經由與解碼技術相關聯的各個單元,為正在編碼的當前區塊產生預測區塊。在某些實例中,諸如調色板模式解碼,模式選擇單元202可以不產生預測區塊,而是產生指示基於所選調色板重建區塊的方式的語法元素。在此種模式中,模式選擇單元202可以將該等語法元素提供給熵編碼單元220以進行編碼。
如前述,殘差產生單元204接收針對當前區塊和對應的預測區塊的視訊資料。殘差產生單元204隨後為當前區塊產生殘差區塊。為了產生殘差區塊,殘差產生單元204計算預測區塊和當前區塊之間的逐取樣差。
變換處理單元206將一或多個變換應用於殘差區塊以產生變換係數的區塊(在本文中稱為「變換係數區塊」)。變換處理單元206可以將各種變換應用於殘差區塊以形成變換係數區塊。例如,變換處理單元206可以將離散餘弦變換(DCT)、方向變換、卡魯甯-洛伊夫變換(KLT)或概念上類似的變換應用於殘差區塊。在某些實例中,變換處理單元206可以對殘差區塊執行多個變換,例如初級變換和次級變換,諸如旋轉變換。在某些實例中,變換處理單元206不將變換應用於殘差區塊。
量化單元208可以量化變換係數區塊中的變換係數,以產生量化的變換係數區塊。量化單元208可以根據與當前區塊相關聯的量化參數(QP)值來對變換係數區塊的變換係數進行量化。視訊編碼器200(例如,經由模式選擇單元202)可經由調整與CU相關聯的QP值來調整應用於與當前區塊相關聯的變換係數區塊的量化程度。量化可能會導致資訊丟失,並因此量化後的變換係數的精度可能會比變換處理單元206產生的原始變換係數的精度低。
逆量化單元210和逆變換處理單元212可以分別對量化的變換係數區塊應用逆量化和逆變換,以從變換係數區塊重建殘差區塊。重建單元214可以基於重建的殘差區塊和由模式選擇單元202產生的預測區塊來產生與當前區塊相對應的重建區塊(儘管可能具有某種程度的失真)。例如,重建單元214可將重建的殘差區塊的取樣與來自由模式選擇單元202產生的預測區塊的對應取樣相加,以產生重建區塊。
濾波單元216可對重建區塊執行一或多個濾波操作。例如,濾波單元216可執行解區塊操作以減少沿著CU的邊緣的區塊狀偽影。在某些實例中,可以跳過濾波單元216的操作。
視訊編碼器200將重建區塊儲存在DPB 218中。例如,在不需要濾波單元216的操作的實例中,重建單元214可以將重建區塊儲存到DPB 218。在需要濾波單元216的操作的實例中,濾波單元216可以將濾波後的重建區塊儲存到DPB 218。運動估計單元222和運動補償單元224可從DPB 218取得參考圖像,其是由重建(並且可能濾波的)區塊形成的,以對隨後編碼的圖像的區塊進行訊框間預測。另外,訊框內預測單元226可使用當前圖像的DPB 218中的重建區塊來對當前圖像中的其他區塊進行訊框內預測。
通常,熵編碼單元220可以對從視訊編碼器200的其他功能元件接收的語法元素進行熵編碼。例如,熵編碼單元220可以對來自量化單元208的量化的變換係數區塊進行熵編碼。作為另一實例,熵編碼單元220可以對來自模式選擇單元202的預測語法元素(例如,用於訊框間預測的運動資訊或用於訊框內預測的訊框內模式資訊)進行熵編碼。熵編碼單元220可以對作為視訊資料的另一實例的語法元素執行一或多個熵編碼操作,以產生熵編碼的資料。例如,熵編碼單元220可以對資料執行上下文自我調整可變長度解碼(CAVLC)操作、CABAC操作、可變到可變(V2V)長度解碼操作、基於語法的上下文自我調整二進位算術解碼(SBAC)操作、概率間隔分割熵(PIPE)解碼操作、指數哥倫布編碼操作,或另一種熵編碼操作。在某些實例中,熵編碼單元220可以在語法元素未被熵編碼的旁通模式下操作。
視訊編碼器200可輸出包括重建條帶或圖像的區塊所需的熵編碼語法元素的位元串流。具體地,熵編碼單元220可以輸出位元串流。
關於區塊描述了上述操作。此種描述應該被理解為是針對亮度解碼區塊及/或色度解碼區塊的操作。如前述,在某些實例中,亮度解碼區塊和色度解碼區塊是CU的亮度和色度分量。在某些實例中,亮度解碼區塊和色度解碼區塊是PU的亮度和色度分量。
在某些實例中,不必針對色度解碼區塊重複針對亮度解碼區塊執行的操作。作為一個實例,不需要重複用於標識用於亮度解碼區塊的運動向量(MV)和參考圖像的操作來標識用於色度區塊的MV和參考圖像。而是,可以縮放用於亮度解碼區塊的MV以決定用於色度區塊的MV,並且參考圖像可以是相同的。作為另一實例,對於亮度解碼區塊和色度解碼區塊,訊框內預測程序可以是相同的。
視訊編碼器200表示被配置為編碼視訊資料的設備的實例,其包括被配置為儲存視訊資料的記憶體和在電路系統中實現並通訊地耦接到記憶體的一或多個處理器,該一或多個處理器配置為:決定視訊資料的圖像是否是訊框內隨機存取圖像(IRAP);決定該圖像的所有層是否獨立;基於該圖像是IRAP且該圖像的所有層均獨立,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值;並且在不使用訊框間條帶預測的情況下對該圖像進行編碼。
圖4是圖示可執行本案的技術的示例性視訊解碼器300的方塊圖。提供圖4是為了解釋的目的,並且不應被認為是對本案中廣泛例示和描述的技術的限制。為了解釋的目的,本案描述了根據VVC(正在開發的ITU-T H.266)和HEVC(ITU-T H.265)的技術的視訊解碼器300。然而,本案的技術可以由被配置為其他視訊解碼標準的視訊解碼設備來執行。
在圖4的實例中,視訊解碼器300包括解碼圖像緩衝(CPB)記憶體320、熵解碼單元302、預測處理單元304、逆量化單元306、逆變換處理單元308、重建單元310、濾波單元312和解碼圖像緩衝器(DPB)314。CPB記憶體320、熵解碼單元302、預測處理單元304、逆量化單元306、逆變換處理單元308、重建單元310、濾波單元312和DPB 314中的任一或全部可以在一或多個處理器或處理電路系統中實現。例如,視訊解碼器300的單元可以被實現為一或多個電路或邏輯元件,作為硬體電路系統的一部分,或者作為FPGA的處理器、ASIC的一部分。此外,視訊解碼器300可包括附加的或替代的處理器或處理電路系統,以執行該等和其他功能。
預測處理單元304包括運動補償單元316和訊框內預測單元318。預測處理單元304可以包括附加單元,以根據其他預測模式來執行預測。作為實例,預測處理單元304可以包括調色板單元、區塊內複製單元(其可以形成運動補償單元316的一部分)、仿射單元、線性模型(LM)單元,或類似的單元。在其他實例中,視訊解碼器300可以包括更多、更少或不同的功能元件。
CPB記憶體320可以儲存將由視訊解碼器300的元件解碼的視訊資料,諸如編碼的視訊位元串流。可以例如從電腦可讀取媒體110(圖1)獲得儲存在CPB記憶體320中的視訊資料。CPB記憶體320可包括儲存來自編碼視訊位元串流的編碼視訊資料(例如,語法元素)的CPB。而且,CPB記憶體320可以儲存除了解碼圖像的語法元素之外的視訊資料,諸如表示來自視訊解碼器300的各個單元的輸出的臨時資料。DPB 314通常儲存解碼的圖像,視訊解碼器300可以將該等經解碼的圖像輸出及/或在解碼編碼視訊位元串流的後續資料或圖像時用作參考視訊資料。CPB記憶體320和DPB 314可以由多種記憶體設備中的任何一種形成,諸如包括SDRAM、MRAM、RRAM的DRAM,或其他類型的記憶體設備。CPB記憶體320和DPB 314可以由相同的記憶體設備或分離的記憶體設備提供。在各種實例中,CPB記憶體320可以與視訊解碼器300的其他元件在晶片上,或者相對於彼等元件在晶片外。
附加地或替代地,在某些實例中,視訊解碼器300可以從記憶體120(圖1)取得解碼的視訊資料。亦即,記憶體120可以如上文與CPB記憶體320論述的一般儲存資料。同樣,當視訊解碼器300的某些或全部功能在要由視訊解碼器300的處理電路系統執行的軟體中實現時,記憶體120可以儲存要由視訊解碼器300執行的指令。
圖4中的各個單元被圖示以幫助理解由視訊解碼器300執行的操作。該等單元可以被實現為固定功能電路、可程式設計電路或其組合。類似於圖3,固定功能電路指提供特定功能並預先設置可以執行的操作的電路。可程式設計電路指可以被程式設計以執行各種任務並且在可以執行的操作中提供靈活功能的電路。例如,可程式設計電路可以執行使可程式設計電路以軟體或韌體的指令所定義的方式進行操作的軟體或韌體。固定功能電路可以執行軟體指令(例如,以接收參數或輸出參數),但是固定功能電路執行的操作類型通常是不可變的。在某些實例中,一或多個單元可以是不同的電路區塊(固定功能或可程式設計),並且在某些實例中,一或多個單元可以是積體電路。
視訊解碼器300可以包括ALU、EFU、數位電路、類比電路及/或由可程式設計電路形成的可程式設計核心。在視訊解碼器300的操作由在可程式設計電路上執行的軟體執行的實例中,晶片上或晶片外記憶體可以儲存視訊解碼器300接收並執行的軟體的指令(例如,目標代碼)。
熵解碼單元302可從CPB接收編碼視訊資料,並對視訊資料進行熵解碼以再現語法元素。預測處理單元304、逆量化單元306、逆變換處理單元308、重建單元310和濾波單元312可以基於從位元串流提取的語法元素來產生解碼視訊資料。
通常,視訊解碼器300在逐區塊的基礎上重建圖像。視訊解碼器300可單獨地對每個區塊執行重建操作(其中當前正在重建(亦即,被解碼)的區塊可被稱為「當前區塊」)。
熵解碼單元302可熵解碼定義量化的變換係數區塊的量化的變換係數的語法元素以及諸如量化參數(QP)及/或變換模式指示的變換資訊。逆量化單元306可以使用與量化的變換係數區塊相關聯的QP來決定量化度,並且同樣地,決定逆量化度以供逆量化單元306應用。逆量化單元306可以例如執行按位元左移運算以對量化的變換係數進行逆量化。逆量化單元306可以由此形成包括變換係數的變換係數區塊。
在逆量化單元306形成變換係數區塊之後,逆變換處理單元308可以將一或多個逆變換應用於變換係數區塊以產生與當前區塊相關聯的殘差區塊。例如,逆變換處理單元308可以將逆DCT、逆整數變換、逆卡魯甯-洛伊夫變換(KLT)、逆旋轉變換、逆方向變換或另一逆變換應用於變換係數區塊。
此外,預測處理單元304根據由熵解碼單元302熵解碼的預測資訊語法元素來產生預測區塊。例如,若預測資訊語法元素指示當前區塊是訊框間預測的,則運動補償單元316可以產生預測區塊。在此種情況下,預測資訊語法元素可以指示DPB 314中的從其取得參考區塊的參考圖像,以及標識參考區塊在參考圖像中的位置相對於當前區塊在當前圖像中的位置的運動向量。運動補償單元316通常可以以與關於運動補償單元224(圖3)所描述的方式基本上相似的方式來執行訊框間預測程序。
在某些實例中,根據本案的技術,預測處理單元304可以決定視訊資料的圖像是否是IRAP,並且決定該圖像的所有層是否獨立。預測處理單元304亦可以基於該圖像是IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值及/或在不使用訊框間條帶預測的情況下對該圖像進行編碼。
作為另一實例,若預測資訊語法元素指示當前區塊是訊框內預測的,則訊框內預測單元318可以根據由預測資訊語法元素指示的訊框內預測模式來產生預測區塊。再次,訊框內預測單元318通常可以以與關於訊框內預測單元226(圖3)所描述的方式基本上相似的方式來執行訊框內預測程序。訊框內預測單元318可以從DPB 314取得針對當前區塊的相鄰取樣的資料。
重建單元310可以使用預測區塊和殘差區塊來重建當前區塊。例如,重建單元310可將殘差區塊的取樣與預測區塊的對應取樣相加以重建當前區塊。
濾波單元312可對重建區塊執行一或多個濾波操作。例如,濾波單元312可執行解區塊操作以減少沿著重建區塊的邊緣的區塊狀偽影。不必在所有實例中皆執行濾波單元312的操作。
視訊解碼器300可將重建區塊儲存在DPB 314中。例如,在不執行濾波單元312的操作的實例中,重建單元310可以將重建區塊儲存到DPB 314。在執行濾波單元312的操作的實例中,濾波單元312可以將濾波後的重建區塊儲存到DPB 314。如前述,DPB 314可以向預測處理單元304提供參考資訊,諸如用於訊框內預測的當前圖像以及用於後續運動補償的先前解碼的圖像的取樣。此外,視訊解碼器300可以從DPB 314輸出解碼的圖像(例如,解碼的視訊),以便隨後在諸如圖1的顯示設備118的顯示設備上呈現。
以此種方式,視訊解碼器300表示視訊解碼設備的實例,其包括配置為儲存視訊資料的記憶體和在電路系統中實現並通訊地耦接到記憶體的一或多個處理器,該一或多個處理器配置為:決定視訊資料的圖像是否是訊框內隨機存取圖像(IRAP);決定該圖像的所有層是否獨立;基於該圖像為IRAP且該圖像的所有層均獨立,決定指示在該圖像中不允許訊框間條帶的第一語法元素的值;並且在不使用訊框間條帶預測的情況下對該圖像進行解碼。
如前述,本案描述了用於節省信號傳遞頻寬的技術,包括用於不用信號傳遞傳輸不必要的語法元素並且用於使得能夠在視訊編碼器200和視訊解碼器300之間共享SPS的技術。例如,VVC草案8描述了SPS,其包含視訊編碼器200可在位元串流中用信號傳遞傳輸且視訊解碼器300可解析的轉碼器參數。SPS可以包括是否使用層間預測的指示,並且可選地,包括參考圖像列表信號傳遞。以下是VVC草案8的兩個摘錄: inter_layer_ref_pics_present_flag等於0表示沒有ILRP [層間參考圖像]用於CLVS [解碼層視訊序列]中的任何解碼圖像的訊框間預測。inter_layer_ref_pic_flag等於1表示ILRP可用於CLVS中一或多個解碼圖像的訊框間預測。當sps_video_parameter_set_id等於0時,推斷inter_layer_ref_pics_present_flag的值等於0。當vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]等於1時,inter_layer_ref_pics_present_flag的值應等於0。 inter_layer_ref_pic_flag [listIdx] [rplsIdx] [i]等於1表示ref_pic_list_struct(listIdx,rplsIdx)語法結構中的第i個條目是ILRP條目。inter_layer_ref_pic_flag [listIdx] [rplsIdx] [i]等於0表示ref_pic_list_struct(listIdx,rplsIdx)語法結構中的第i個條目不是ILRP條目。當不存在時,推斷inter_layer_ref_pic_flag [listIdx] [rplsIdx] [i]的值等於0。
視訊編碼器200可以用信號傳遞傳輸在視訊參數集(VPS)中的指示層是否是獨立的層的語法元素,並且視訊解碼器300可解析該語法元素。以下是有關此類語法元素的VVC草案8的摘錄。
vps_independent_layer_flag [i]等於1表示索引為i的層不使用層間預測。vps_independent_layer_flag [i]等於0表示索引為i的層可以使用層間預測,並且針對在0到i-1包含端點的範圍內的j的語法元素vps_direct_ref_layer_flag [i] [j]在VPS中存在。當不存在時,推斷vps_independent_layer_flag [i]的值等於1。
在VVC草案8中,inter_layer_ref_pics_present_flag的語義(如前述)包含約束,亦即「當vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]等於1時,inter_layer_ref_pics_present_flag的值應等於0」。因此,根據VVC草案8,當視訊編碼器200對一個層不使用層間預測時,例如該層是獨立的,則該層的SPS具有等於0的inter_layer_ref_pics_present_flag。
此約束阻止視訊編碼器200或視訊解碼器300在獨立層和依賴層之間共享SPS。例如,若CLVS中存在獨立的和依賴的,則即使兩個SPS之間的唯一差異是inter_layer_ref_pics_present_flag的值,視訊編碼器200亦可以用信號傳遞傳輸兩個SPS,每個層一個。可以在序列中用信號傳遞傳輸的SPS總數限制為16,因此不允許共享SPS(如VVC草案8中的情況)可能會導致可解碼的層數減少,以及信號傳遞頻寬的增加。
本案包括可以解決前述問題的技術。該等技術可以單獨使用或以任何組合使用。下文作為VVC草案8中的更改提供了本案技術的實例。
根據本案的技術,可以消除對於獨立層的inter_layer_ref_pics_present_flag應等於0的約束。VVC草案8中建議的更改標記如下:刪除的開始用<DELETE>標記,並且刪除的結束用</DELETE>標記。 inter_layer_ref_pics_present_flag等於0表示沒有ILRP用於CLVS中任何解碼圖像的訊框間預測。inter_layer_ref_pic_flag等於1表示ILRP可用於CLVS中一或多個解碼圖像的訊框間預測。當sps_video_parameter_set_id等於0時,推斷inter_layer_ref_pics_present_flag的值等於0。<DELETE>當vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]等於1時,inter_layer_ref_pics_present_flag的值應等於0。</DELETE>
由於獨立層可以不具有層間預測,所以視訊編碼器200或視訊解碼器300可以不將層間參考圖像添加到參考圖像列表,即使此種圖像的存在由(例如,在SPS中用信號傳遞傳輸的)inter_layer_ref_pics_present_flag等於1和參考層指示。為了避免將層間參考圖像添加到用於獨立層的參考圖像列表中,視訊編碼器200或視訊解碼器300可以在參考圖像列表匯出程序中檢查層是獨立的或非依賴的條件,並且僅為依賴層添加層間參考圖像。
在一個實例中,此種條件可以是vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]是否等於0。例如,根據本案的技術,對VVC草案8的更改標記如下:更改的開始用<CHANGE>標記,並且更改的結束用</CHANGE>標記。
參考圖像列表RefPicList[0]和RefPicList[1],參考圖像縮放比率RefPicScale[i][j][0]和RefPicScale[i][j][1],並且參考圖像縮放標誌RprConstraintsActive[0][j]和RprConstraintsActive[1][j]匯出如下: for( i = 0; i < 2; i++ ) { for( j = 0, k = 0, pocBase = PicOrderCntVal; j < num_ref_entries[ i ][ RplsIdx[ i ] ]; j++) { if( !inter_layer_ref_pic_flag[ i ][ RplsIdx[ i ] ][ j ] ) { if( st_ref_pic_flag[ i ][ RplsIdx[ i ] ][ j ] ) { RefPicPocList[ i ][ j ] = pocBase - DeltaPocValSt[ i ][ RplsIdx[ i ] ][ j ] if(DPB中有一個與當前圖像具有相同nuh_layer_id的參考圖像picA 並且PicOrderCntVal等於RefPicPocList[ i ][ j ] ) RefPicList[ i ][ j ] = picA else RefPicList[ i ][ j ]=「無參考圖像」                 (203) pocBase = RefPicPocList[ i ][ j ] } else { if( !delta_poc_msb_cycle_lt[ i ][ k ] ) { if(DPB中有一個與當前圖像具有相同nuh_layer_id的參考圖像picA並且 PicOrderCntVal & ( MaxPicOrderCntLsb-1 )等於PocLsbLt[ i ][ k ] ) RefPicList[ i ][ j ] = picA else RefPicList[ i ][ j ]=「無參考圖像」 RefPicLtPocList[ i ][ j ] = PocLsbLt[ i ][ k ] } else { if(DPB中有一個與當前圖像具有相同nuh_layer_id的參考圖像picA並且 PicOrderCntVal等於FullPocLt[ i ][ k ] ) RefPicList[ i ][ j ] = picA else RefPicList[ i ][ j ]=「無參考圖像」 RefPicLtPocList[ i ][ j ] = FullPocLt[ i ][ k ] } k++ } }else <CHANGE> if( !vps_independent_layer_flag[ GeneralLayerIdx[ nuh_layer_id ] ] ) </CHANGE> { layerIdx = DirectRefLayerIdx[ GeneralLayerIdx[ nuh_layer_id ] ][ ilrp_idx[ i ][ RplsIdx ][j]] refPicLayerId = vps_layer_id[ layerIdx ] if(DPB中有一個具有等於refPicLayerId的nuh_layer_id以及與當前圖像相同的PicOrderCntVal的參考圖像picA) RefPicList[ i ][ j ] = picA else RefPicList[ i ][ j ]=「無參考圖像」 } fRefWidth被設置為等於參考圖像RefPicList[ i ][ j ]的PicOutputWidthL fRefHeight被設置為等於參考圖像RefPicList[ i ][ j ]的PicOutputHeightL refPicWidth、refPicHeight、refScalingWinLeftOffset、refScalingWinRightOffset、refScalingWinTopOffset以及refScalingWinBottomOffset被設置為分別等於 參考圖像RefPicList[ i ][ j ]的pic_width_in_luma_samples、 pic_height_in_luma_samples、scaling_win_left_offset、scaling_win_right_offset、 scaling_win_top_offset以及scaling_win_bottom_offset的值 RefPicScale[ i ][ j ][ 0 ] = ( ( fRefWidth << 14 ) + ( PicOutputWidthL >> 1 ) ) / PicOutputWidthL RefPicScale[ i ][ j ][ 1 ] = ( ( fRefHeight << 14 ) + ( PicOutputHeightL >> 1 ) ) / PicOutputHeightL RprConstraintsActive[ i ][ j ] = (pic_width_in_luma_samples != refPicWidth | | pic_height_in_luma_samples != refPicHeight | | scaling_win_left_offset != refScalingWinLeftOffset | | scaling_win_right_offset != refScalingWinRightOffset | | scaling_win_top_offset != refScalingWinTopOffset | | scaling_win_bottom_offset != refScalingWinBottomOffset ) } }
以此種方式,視訊編碼器200或視訊解碼器300可分別用信號傳遞傳輸或解析具有相同參考圖像結構的、用於獨立和依賴層的共享SPS,但是僅給依賴層添加層間參考圖像。該技術的優點在於,可以在獨立和依賴層之間共享SPS和參考圖像結構(例如,ref_pic_list_struct),從而降低了信號傳遞中的管理負擔。
視訊編碼器200可基於該結構是否包含層間參考圖像來有條件地在參考圖像結構內用信號傳遞傳輸inter_layer_ref_pic_flag。inter_layer_ref_pic_flag可以指示參考圖像是否是層間參考圖像。在VVC草案8中,可以基於inter_layer_ref_pics_present_flag執行此條件檢查。然而,根據本案的技術,與SPS的一部分相同的參考圖像結構可以用於獨立層。為了避免視訊編碼器200用信號傳遞傳輸inter_layer_ref_pic_flag標誌將等於0(指示參考圖像不是層間參考圖像),本案的技術可以用檢查層是否是獨立層或不是獨立層來代替VVC草案8中的條件檢查。
在一個實例中,視訊編碼器200可將附加的引數interLayerRefPicsPresentFlag添加到ref_pic_list_struct,以指示參考圖像列表結構是否包含層間參考圖像。在下文的實例中,更改的開始標記為<CHANGE>,更改的結束標記為</CHANGE>,刪除的開始標記為<DELETE>,並且刪除的結束標記為</DELETE>。
ref_pic_list_struct( listIdx, rplsIdx <CHANGE>, interLayerRefPicsPresentFlag </CHANGE>) { 描述符
   num_ref_entries[ listIdx ][ rplsIdx ] ue(v)
   if( long_term_ref_pics_flag )  
   ltrp_in_header_flag[ listIdx ][ rplsIdx ] u(1)
   for( i = 0, j = 0; i < num_ref_entries[ listIdx ][ rplsIdx ]; i++) {  
     <CHANGE>if( interLayerRefPicsPresentFlag </CHANGE> <DELETE>inter_layer_ref_pics_present_flag</DELETE> <CHANGE> ) </CHANGE>  
   inter_layer_ref_pic_flag[ listIdx ][ rplsIdx ][ i ] u(1)
     if( !inter_layer_ref_pic_flag[ listIdx ][ rplsIdx ][ i ] ) {  
        if( long_term_ref_pics_flag )  
   st_ref_pic_flag[ listIdx ][ rplsIdx ][ i ] u(1)
        if( st_ref_pic_flag[ listIdx ][ rplsIdx ][ i ] ) {  
   abs_delta_poc_st[ listIdx ][ rplsIdx ][ i ] ue(v)
           if( AbsDeltaPocSt[ listIdx ][ rplsIdx ][ i ] > 0 )  
   strp_entry_sign_flag[ listIdx ][ rplsIdx ][ i ] u(1)
        } else if( !ltrp_in_header_flag[ listIdx ][ rplsIdx ] )  
   rpls_poc_lsb_lt[ listIdx ][ rplsIdx ][ j++ ] u(v)
     } else  
   ilrp_idx[ listIdx ][ rplsIdx ][ i ] ue(v)
   }  
}  
當視訊編碼器200在SPS中用信號傳遞傳輸ref_pic_list_struct時,視訊編碼器200可以將添加的引數設置為等於SPS是否包含層間參考圖像的指示。例如,視訊編碼器200可以將添加的引數設置為等於inter_layer_ref_pics_present_flag。在一個實例中,如下所示,對VVC草案8的更改的開始標記為<CHANGE>,並且更改的結束標記為</CHANGE>。
seq_parameter_set_rbsp( ) { 描述符
   … u(4)
   inter_layer_ref_pics_present_flag u(1)
   sps_idr_rpl_present_flag u(1)
   rpl1_same_as_rpl0_flag u(1)
   for( i = 0; i < !rpl1_same_as_rpl0_flag ? 2 : 1; i++ ) {  
     num_ref_pic_lists_in_sps[ i ] ue(v)
     for( j = 0; j < num_ref_pic_lists_in_sps[ i ]; j++)  
        ref_pic_list_struct( i, j, <CHANGE> inter_layer_ref_pics_present_flag </CHANGE>)  
   }  
 
}  
當視訊編碼器200在圖像或條帶頭部中用信號傳遞傳輸參考圖像列表ref_pic_lists時,視訊編碼器200可以將添加的引數interLayerRefPicsPresentFlag設置為等於vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]],如下所示。VVC草案8的更改的開始標記為<CHANGE>,更改的結束標記為</CHANGE>。
ref_pic_lists( ) { 描述符
   for( i = 0; i < 2; i++ ) {  
     if( num_ref_pic_lists_in_sps[ i ] > 0  &&              ( i  = =  0  | |  ( i  = =  1  &&  rpl1_idx_present_flag ) ) )  
        rpl_sps_flag[ i ] u(1)
     if( rpl_sps_flag[ i ] ) {  
        if( num_ref_pic_lists_in_sps[ i ] > 1  &&                 ( i  = =  0  | |  ( i  = =  1  &&  rpl1_idx_present_flag ) ) )  
           rpl_idx[ i ] u(v)
     } else  
        ref_pic_list_struct( i, num_ref_pic_lists_in_sps[ i ],                         <CHANGE> vps_independent_layer_flag[ GeneralLayerIdx[ nuh_layer_id ] ] </CHANGE>)  
     for( j = 0; j < NumLtrpEntries[ i ][ RplsIdx[ i ] ]; j++ ) {  
        if( ltrp_in_header_flag[ i ][ RplsIdx[ i ] ] )  
           poc_lsb_lt[ i ][ j ] u(v)
   delta_poc_msb_present_flag[ i ][ j ] u(1)
        if( delta_poc_msb_present_flag[ i ][ j ] )  
   delta_poc_msb_cycle_lt[ i ][ j ] ue(v)
     }  
   }  
}  
現在論述針對條帶類型的約束。在VVC草案8中,當層是獨立層時,存在以下約束:當網路抽象層(NAL)單元類型是暫態解碼器刷新(IDR)或乾淨隨機存取(CRA)時,條帶類型應為I條帶。VVC草案8表述此約束如下: 當nal_unit_type的值在IDR_W_RADL到CRA_NUT(含)的範圍內,並且vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]等於1時,slice_type應等於2。
但是,圖像頭部中有一個標誌ph_inter_slice_allowed_flag,用於指示訊框間相關語法元素的存在,或者換言之,條帶類型可以是P條帶還是B條帶。對於當獨立層的圖像中NAL單元類型為IDR或CRA時的情形,此標誌不是約束。VVC草案8的摘錄如下所示: ph_inter_slice_allowed_flag等於0表示圖像的所有解碼條帶具有等於2的slice_type。ph_inter_slice_allowed_flag等於1表示圖像中可能存在或不存在具有等於0或1的slice_type的一或多個解碼條帶。
根據本案的技術,可以添加約束,亦即若圖像是IDR或CRA,則對於獨立層,ph_inter_slice_allowed_flag可以等於0。例如,對於IDR或CRA圖像中的獨立層,視訊編碼器200可將ph_inter_slice_allowed_flag設置為等於0。
在一個實例中,可以利用檢查層是否是獨立層的條件,例如,vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]的值等於1。換言之,若視訊編碼器200將vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]設置為等於1,則該層可以是獨立層,並且視訊解碼器300可以經由解析vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]來決定該層是否是獨立層。
在一個實例中,為了決定圖像是IDR圖像還是CRA圖像,視訊解碼器300可以決定由視訊編碼器200在圖像頭部中用信號傳遞傳輸的標誌gdr_or_irap_pic_flag的值是否等於1。GDR圖像是逐步解碼刷新圖像,而IRAP是訊框內隨機存取圖像。另外,視訊解碼器300可以決定GDR圖像標誌gdr_pic_flag的值是否等於0。 ph_inter_slice_allowed_flag等於0表示圖像的所有解碼條帶具有等於2的slice_type。ph_inter_slice_allowed_flag等於1表示圖像中可能存在或不存在具有等於0或1的slice_type的一或多個解碼條帶。 gdr_or_irap_pic_flag等於1表示當前圖像是GDR或IRAP圖像。gdr_or_irap_pic_flag等於0表示當前圖像可能是或可能不是GDR或IRAP圖像。 gdr_pic_flag等於1表示與PH關聯的圖像是GDR圖像。gdr_pic_flag等於0表示與PH關聯的圖像不是GDR圖像。若不存在,推斷gdr_pic_flag的值等於0。當gdr_enabled_flag等於0時,gdr_pic_flag的值應等於0。
在一個實例中,約束可以表示如下,其中對VVC草案8的更改從<CHANGE>開始並以</CHANGE>結尾: <CHANGE>當gdr_or_irap_pic_flag等於1,且gdr_pic_flag等於0,並且vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]等於1時,ph_inter_slice_allowed_flag應等於0。</CHANGE>
在另一實例中,根據本案的技術,可以對ph_inter_slice_allowed_flag信號傳遞設置條件,使得視訊編碼器200可以不對針對獨立層的IDR和CRA圖像用信號傳遞傳輸ph_inter_slice_allowed_flag,例如可以以gdr_or_irap_pic_flag、gdr_pic_flag和vps_independent_layer_flag[ GeneralLayerIdx[ nuh_layer_id ] ]語法元素來對信號傳遞設置條件。
在一個實例中,條件可以被表述為如下,其中對VVC草案8的更改從<CHANGE>開始並以</CHANGE>結尾:
picture_header_structure( ) { 描述符
   gdr_or_irap_pic_flag u(1)
   if( gdr_or_irap_pic_flag )  
     gdr_pic_flag u(1)
   <CHANGE> if( !gdr_or_irap_pic_flag  | |  gdr_pic_flag  | |                        !vps_independent_layer_flag[ GeneralLayerIdx[ nuh_layer_id ] ] ) </CHANGE>  
     ph_inter_slice_allowed_flag u(1)
   if( ph_inter_slice_allowed_flag )  
     ph_intra_slice_allowed_flag u(1)
在某些實例中,可將推斷規則添加到ph_inter_slice_allowed_flag,當不存在ph_inter_slice_allowed_flag時,視訊解碼器300可推斷ph_inter_slice_allowed_flag的值等於0。
圖5是圖示本案的示例性信號傳遞技術的流程圖。視訊編碼器200或視訊解碼器300可以決定視訊資料的圖像是否是IRAP(330)。例如,視訊編碼器200可執行多個編碼傳遞以測試編碼器參數的不同組合,且可決定將圖像編碼為IRAP。在某些實例中,視訊編碼器200可以決定指示圖像是GDR圖像或IRAP之一的第二語法元素(例如,gdr_or_irap_pic_flag)的值,決定指示圖像不是GDR圖像的第三語法元素(例如,gdr_pic_flag)的值,並且在位元串流中用信號傳遞傳輸第二語法元素和第三語法元素。例如,作為決定視訊資料的圖像是否為IRAP的一部分,視訊解碼器300可以決定第二語法元素(例如,gdr_or_irap_pic_flag)的值是否指示該圖像為逐步解碼刷新GDR圖像或IRAP之一,並決定第三語法元素(例如gdr_pic_flag)的值是否指示該圖像不是GDR圖像,以決定圖像是否被編碼為IRAP。例如,當gdr_or_irap_pic_flag的值等於1並且gdr_pic_flag的值等於0時,視訊解碼器300可以決定圖像被編碼為IRAP。
視訊編碼器200或視訊解碼器300可以決定圖像的所有層是否獨立(332)。例如,視訊編碼器200可執行多個編碼傳遞以測試編碼器參數的不同組合,且可決定在所有層均獨立的情況下對圖像進行編碼。例如,視訊編碼器200可決定指示所有層是否獨立的第四語法元素(例如,vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]])的值,並在位元串流中用信號傳遞傳輸第四語法元素。在某些實例中,作為決定圖像的所有層是否獨立的一部分,視訊解碼器300可以決定指示圖像的所有層是否獨立的第四語法元素的值。例如,視訊解碼器300可解析指示編碼圖像的所有層是否獨立的第四語法元素(例如,vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]])以決定所有層是否獨立。例如,當vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]等於1時,視訊解碼器300可決定圖像的所有層是獨立的。
基於圖像為IRAP並且圖像的所有層均獨立,視訊編碼器200或視訊解碼器300可以決定指示在圖像中不允許訊框間條帶的第一語法元素的值(334)。例如,視訊編碼器200可以決定指示是否允許訊框間條帶預測(例如,使用另一條帶來預測一個條帶)的第一語法元素(例如,ph_inter_slice_allowed_flag)的值,並且在某些實例中,基於圖像是IRAP並且圖像的所有層是獨立的用信號傳遞傳輸第一語法元素(例如,ph_inter_slice_allowed_flag)。在某些實例中,視訊編碼器200可以避免在位元串流中用信號傳遞傳輸第一語法元素。舉例而言,視訊解碼器300可解析第一語法元素(例如,ph_inter_slice_allowed_flag)以決定指示在圖像中不允許訊框間條帶的第一語法元素(例如,ph_inter_slice_allowed_flag)的值。在另一實例中,作為決定第一語法元素的值的一部分,視訊解碼器300可以推斷第一語法元素的值。例如,當視訊編碼器200沒有用信號傳遞傳輸第一語法元素時,視訊解碼器300可基於圖像為IRAP且圖像中的所有層是獨立的來推斷指示是否允許訊框間條帶預測的第一語法元素的值。視訊編碼器200或視訊解碼器300可在不使用訊框間條帶預測的情況下對圖像進行解碼(336)。例如,視訊編碼器200或視訊解碼器300可避免對圖像使用訊框間條帶預測。
在某些實例中,第一語法元素在圖像頭部中。在某些實例中,IRAP是IDR圖像或CRA圖像。在某些實例中,第四語法元素在VPS中。
圖6是圖示用於對當前區塊進行編碼的示例性方法的流程圖。當前區塊可以包含當前CU。儘管關於視訊編碼器200(圖1和圖3)進行了描述,但是應當理解,其他設備可以被配置為執行與圖6的方法類似的方法。
在該實例中,視訊編碼器200最初預測當前區塊(350)。例如,視訊編碼器200可形成針對當前區塊的預測區塊。例如,在形成預測區塊期間,視訊編碼器200可決定視訊資料的圖像是否為IRAP,並決定圖像的所有層是否獨立。視訊編碼器200亦可基於圖像是IRAP且圖像的所有層是獨立的,決定指示圖像中不允許訊框間條帶的第一語法元素的值及/或在不使用訊框間條帶預測的情況下對圖像進行編碼。視訊編碼器200可計算針對當前區塊的殘差區塊(352)。為了計算殘差區塊,視訊編碼器200可計算原始的、未編碼區塊與用於當前區塊的預測區塊之間的差。隨後,視訊編碼器200可變換殘差區塊並量化該殘差區塊的變換係數(354)。接下來,視訊編碼器200可以掃瞄殘差區塊的量化的變換係數(356)。在掃瞄期間或在掃瞄之後,視訊編碼器200可對變換係數進行熵編碼(358)。例如,視訊編碼器200可以使用CAVLC或CABAC對變換係數進行編碼。視訊編碼器200隨後可輸出區塊的熵編碼資料(360)。
圖7是圖示用於解碼視訊資料的當前區塊的示例性方法的流程圖。當前區塊可以包含當前CU。儘管關於視訊解碼器300(圖1和圖4)進行了描述,但是應當理解,其他設備可以被配置為執行與圖7的方法類似的方法。
視訊解碼器300可接收針對當前區塊的熵編碼資料,諸如用於對應於當前區塊的殘差區塊的變換係數的熵編碼的預測資訊和熵編碼的資料(370)。視訊解碼器300可熵解碼經熵編碼的資料以決定針對當前區塊的預測資訊並再現殘差區塊的變換係數(372)。視訊解碼器300可例如使用如用於當前區塊的、由預測資訊指示的訊框內或訊框間預測模式來預測當前區塊(374),以計算對於用於當前區塊的預測區塊。例如,在預測區塊期間,視訊解碼器300可決定視訊資料的圖像是否為IRAP,並決定圖像的所有層是否獨立。視訊解碼器300亦可以基於圖像是IRAP並且圖像的所有層是獨立的,決定指示在圖像中不允許訊框間條帶的第一語法元素的值及/或在不使用訊框間條帶預測的情況下對圖像進行解碼。隨後視訊解碼器300可對再現的變換係數進行逆掃瞄(376),以建立量化的變換係數的區塊。隨後視訊解碼器300可對變換係數進行逆量化和逆變換以產生殘差區塊(378)。視訊解碼器300可經由組合預測區塊和殘差區塊來最終解碼當前區塊(380)。
本案包括以下實例。
第1A條。一種對視訊資料進行解碼的方法,該方法包括以下步驟:決定視訊資料的第一層是否是依賴層;決定視訊資料的第二層是否是依賴層;決定序列參數集(SPS);並且基於SPS對第一層和第二層進行解碼,其中第一層或第二層中的一個是獨立層,並且第一層或第二層中的一個是依賴層。
第2A條。根據條款1A之方法,亦包括以下步驟:不將層間參考圖像添加到用於獨立層的參考圖像列表中。
第3A條。根據條款1A-2A中任一項之方法,亦包括以下步驟:將層間參考圖像添加到用於依賴層的參考圖像列表中。
第4A條。根據條款1A-3A中任一項之方法,其中決定視訊資料的第一層是否為依賴層包括決定vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]是否等於0。
第5A條。根據條款1A-4A中任一項之方法,其中決定SPS包括將inter_layer_ref_pics_present_flag設置為等於1。
第6A條。根據條款1A-5A中任一項之方法,亦包括以下步驟:向ref_pic_list_struct添加標誌,該標誌指示參考圖像列表結構是否包括層間參考圖像。
第7A條。根據條款6A之方法,其中標誌是inter_layer_ref_pics_present_flag。
第8A條。根據條款6A之方法,亦包括以下步驟:決定是否在圖像或條帶頭部中用信號傳遞傳輸參考圖像列表;並基於在圖像或條帶頭部中用信號傳遞傳輸的參考圖像列表,將標誌設置為等於vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]。
第9A條。一種對視訊資料進行解碼的方法,該方法包括以下步驟:決定視訊資料的層是否獨立;決定視訊資料的圖像是暫態解碼器刷新(IDR)圖像還是乾淨隨機存取(CRA)圖像;基於該層是獨立的並且該圖像是IDR圖像或CRA圖像,將ph_inter_slice_allowed_flag設置為等於0;並且根據ph_inter_slice_allowed_flag對視訊資料進行解碼。
第10A條。根據條款9A之方法,其中決定視訊資料的層是否獨立包括決定vps_independent_layer_flag [GeneralLayerIdx [nuh_layer_id]]是否等於1。
第11A條。根據條款9A-10A中任一項之方法,其中決定視訊資料的圖像是IDR圖像還是CRA圖像包括決定gdr_or_irap_pic_flag是否等於1以及gdr_pic_flag是否等於0。
第12A條。根據條款9A-11A中任一項之方法,其中基於視訊資料的層是獨立的並且視訊資料的圖像是IDR圖像或CRA圖像,不在位元串流中用信號傳遞傳輸ph_inter_slice_allowed_flag。
第13A條。根據條款12A之方法,亦包括以下步驟:當不在位元串流中用信號傳遞傳輸ph_inter_slice_allowed_flag時,推斷ph_inter_slice_allowed_flag等於0。
第14A條。根據條款1A-13A中任一項之方法,其中解碼包括解碼。
第15A條。根據條款1A-13A中任一項之方法,其中解碼包括編碼。
第16A條。一種用於對視訊資料進行解碼的設備,該設備包括一或多個用於執行條款1A-15A中任一項之方法的構件。
第17A條。根據條款16A之設備,其中一或多個構件包括以電路系統實現的一或多個處理器。
第18A條。根據條款16A-17A中任一項之設備,亦包括用於儲存視訊資料的記憶體。
第19A條。根據條款16A-18A中任一項之設備,亦包括配置為顯示解碼後的視訊資料的顯示器。
第20A條。根據條款16A-19A中任一項之設備,其中該設備包括相機、電腦、行動設備、廣播接收器設備或機上盒中的一或多個。
第21A條。根據條款16A-20A中任一項之設備,其中該設備包括視訊解碼器。
第22A條。根據條款16A-21A中任一項之設備,其中該設備包括視訊編碼器。
第23A條。一種其上儲存有指令的電腦可讀取儲存媒體,該等指令在被執行時使一或多個處理器執行條款1A-13A中任一項的方法。
第24A條。一種用於對視訊資料進行編碼的設備,該設備包括:用於決定視訊資料的第一層是否為依賴層的構件;用於決定視訊資料的第二層是否為依賴層的構件;用於決定序列參數集(SPS)的構件;及用於基於SPS對第一層和第二層進行解碼的構件,其中第一層或第二層中的一個是獨立層,並且第一層或第二層中的一個是依賴層。
第25A條。一種用於對視訊資料進行編碼的設備,該設備包括:用於決定視訊資料的層是否獨立的構件;用於決定視訊資料的圖像是暫態解碼器刷新(IDR)圖像還是乾淨隨機存取(CRA)圖像的構件;用於基於該層是獨立的並且該圖像是IDR圖像或CRA圖像,將ph_inter_slice_allowed_flag設置為等於0的構件;及用於基於ph_inter_slice_allowed_flag對視訊資料進行解碼的構件。
第1B條。一種對視訊資料進行解碼的方法,該方法包括以下步驟:決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP);決定圖像的所有層是否獨立;基於圖像為IRAP並且圖像的所有層是獨立的,決定指示在圖像中不允許訊框間條帶的第一語法元素的值;並且在不使用訊框間條帶預測的情況下對圖像進行解碼。
第2B條。根據條款1B之方法,其中第一語法元素在圖像頭部中。
第3B條。根據條款1B或2B之方法,其中IRAP是暫態解碼器刷新(IDR)圖像或乾淨隨機存取(CRA)圖像。
第4B條。根據條款1B-3B的任意組合之方法,其中解碼包括解碼,並且其中決定視訊資料的圖像是否為IRAP包括:決定第二語法元素的值是否指示該圖像為逐步解碼刷新(GDR)圖像或暫態隨機存取圖像(IRAP)之一;並且決定第三語法元素的值是否指示該圖像不是GDR圖像。
第5B條。根據條款1B-4B之任意組合之方法,其中解碼包括解碼,並且其中決定圖像的所有層是否獨立包括:決定指示該圖像的所有層是否獨立的第四語法元素的值。
第6B條。根據條款5B之方法,其中第四語法元素在視訊參數集中。
第7B條。根據條款1B-6B的任意組合之方法,其中解碼包括解碼,並且其中決定第一語法元素的值包括推斷第一語法元素的值。
第8B條。根據條款1B-3B的任意組合之方法,其中解碼包括編碼,並且其中該方法亦包括以下步驟:決定指示圖像是逐步解碼刷新(GDR)圖像或IRAP之一的第二語法元素的值;決定指示該圖像不是GDR圖像的第三語法元素的值;並且在位元串流中用信號傳遞傳輸第二語法元素和第三語法元素。
第9B條。根據條款1B-3B和8B的任意組合之方法,其中解碼包括編碼,並且其中該方法亦包括以下步驟:決定指示所有層獨立的第四語法元素的值;並且在位元串流中用信號傳遞傳輸第四語法元素。
第10B條。根據條款1B-3B和8B-9B的任意組合之方法,其中解碼包括編碼,並且其中該方法亦包括以下步驟:避免在位元串流中用信號傳遞傳輸第一語法元素。
第11B條。一種用於對視訊資料進行解碼的設備,該設備包括:配置為儲存視訊資料的記憶體;及在電路系統中實現並通訊地耦接到記憶體的一或多個處理器,該一或多個處理器配置為:決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP);決定圖像的所有層是否獨立;基於圖像為IRAP並且圖像的所有層是獨立的,決定指示在圖像中不允許訊框間條帶的第一語法元素的值;並且在不使用訊框間條帶預測的情況下對圖像進行解碼。
第12B條。根據條款11B之設備,其中第一語法元素在圖像頭部中。
第13B條。根據條款11B或12B之設備,其中IRAP是暫態解碼器刷新(IDR)圖像或乾淨隨機存取(CRA)圖像。
第14B條。根據條款11B-13B的任意組合之設備,其中解碼包括解碼,並且其中作為決定視訊資料的圖像是否為IRAP的一部分,一或多個處理器配置為:決定第二語法元素的值是否指示該圖像是逐步解碼刷新(GDR)圖像或IRAP之一;並且決定第三語法元素的值是否指示該圖像不是GDR圖像。
第15B條。根據條款11B-14B的任意組合之設備,其中解碼包括解碼,並且其中作為決定圖像的所有層是否獨立的一部分,一或多個處理器配置為:決定指示是否圖像的所有層獨立的第四語法元素的值。
第16B條。根據條款15B之設備,其中第四語法元素在視訊參數集中。
第17B條。根據條款11B-16B的任意組合之設備,其中解碼包括解碼,並且其中作為決定第一語法元素的值的一部分,一或多個處理器被配置為推斷第一語法元素的值。
第18B條。根據條款11B-13B的任意組合之設備,其中解碼包括編碼,並且其中一或多個處理器亦被配置為:決定指示該圖像是逐步解碼刷新(GDR)圖像或IRAP之一的第二語法元素的值;決定指示該圖像不是GDR圖像的第三語法元素的值;並且在位元串流中用信號傳遞傳輸第二語法元素和第三語法元素。
第19B條。根據條款11B-13B和18B的任意組合之設備,其中解碼包括編碼,並且其中一或多個處理器亦被配置為:決定指示所有層獨立的第四語法元素的值;並且在位元串流中用信號傳遞傳輸第四語法元素。
第20B條。根據條款11B-13B和18B-19B的任意組合之設備,其中解碼包括編碼,並且其中一或多個處理器亦被配置為:避免在位元串流中用信號傳遞傳輸第一語法元素。
第21B條。根據一種包括指令的非暫時性電腦可讀取媒體,該等指令在被執行時使一或多個處理器執行以下操作:決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP);決定圖像的所有層是否獨立;基於圖像為IRAP並且圖像的所有層是獨立的,決定指示在圖像中不允許訊框間條帶的第一語法元素的值;並且在不使用訊框間條帶預測的情況下對圖像進行解碼。
第22B條。一種用於對視訊資料進行解碼的設備,該設備包括:用於決定視訊資料的圖像是否為訊框內隨機存取圖像(IRAP)的構件;用於決定圖像的所有層是否獨立的構件;用於基於圖像為IRAP並且圖像的所有層是獨立的,決定指示在圖像中不允許訊框間條帶的第一語法元素的值的構件;及用於在不使用訊框間條帶預測的情況下對圖像進行解碼的構件。
應當認識到,根據該實例,本文中描述的任何技術的某些動作或事件可以以不同的順序執行,可以一起添加、合併或省略(例如,並非所有描述的動作或事件對於技術的實踐皆是必需的)。此外,在某些實例中,動作或事件可以例如經由多執行緒處理、中斷處理或多個處理器併發地而不是順序地執行。
在一或多個實例中,可以以硬體、軟體、韌體或其任意組合來實現所描述的功能。若以軟體實現,則該等功能可以作為電腦可讀取媒體上的一或多個指令或代碼儲存在電腦可讀取媒體上或經由電腦可讀取媒體傳輸,並由基於硬體的處理單元執行。電腦可讀取媒體可以包括電腦可讀取儲存媒體,其對應於諸如資料儲存媒體之類的有形媒體,或者包括例如根據通訊協定促進電腦程式從一個地方傳送到另一個地方的任何媒體的通訊媒體。以此種方式,電腦可讀取媒體通常可對應於(1)非暫時性的有形電腦可讀取儲存媒體或(2)諸如信號或載波的通訊媒體。資料儲存媒體可以是可由一或多個電腦或一或多個處理器存取的任何可用媒體,以取得用於實現本案中描述的技術的指令、代碼及/或資料結構。電腦程式產品可以包括電腦可讀取媒體。
作為實例而非限制,此種電腦可讀取儲存媒體可以包括RAM、ROM、EEPROM、CD-ROM或其他光碟儲存、磁碟儲存或其他磁儲存設備、快閃記憶體,或任何其他可用於以指令或資料結構的形式儲存所需程式碼並可由電腦存取的媒體。任何連接亦被正當地稱為電腦可讀取媒體。例如,若使用同軸電纜、光纖電纜、雙絞線、數位用戶線(DSL)或無線技術(諸如紅外、無線電和微波)從網站、伺服器或其他遠端源傳輸指令,則同軸電纜、光纖電纜、雙絞線、DSL或無線技術(諸如紅外、無線電和微波)皆包括在媒體的定義中。然而應當理解,電腦可讀取儲存媒體和資料儲存媒體不包括連接、載波、信號或其他暫時性媒體,而是指向非暫時性的有形儲存媒體。如本文所用,磁碟和光碟包括壓縮光碟(CD)、鐳射光碟、光碟、數位多功能光碟(DVD)、軟碟和藍光光碟,其中磁碟通常對資料進行磁再現,而光碟通常經由鐳射對資料進行光再現。上述的組合亦應包括在電腦可讀取媒體的範疇內。
指令可由一或多個處理器執行,諸如一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、現場可程式設計閘陣列(FPGA)或其他等效整合或離散邏輯電路系統。因此,如本文所使用的術語「處理器」和「處理電路系統」可指上述結構中的任何一個或適合於實現本文所描述的技術的任何其他結構。另外,在某些態樣中,本文所描述的功能性可在配置用於編碼和解碼的專用硬體及/或軟體模組內提供,或併入組合轉碼器中。該等技術亦可全部實施於一或多個電路或邏輯元件中。
本案的技術可以在多種設備或裝置中實現,包括無線手持機、積體電路(IC)或一組IC(例如,晶片組)。在本案中描述了各種元件、模組或單元,以強調配置為執行所揭示的技術的設備的功能態樣,但不一定需要由不同的硬體單元實現。而是如前述,各種單元可以組合在轉碼器硬體單元中,或者由交互操作硬體單元的集合(包括如前述的一或多個處理器)結合合適的軟體及/或韌體來提供。
已描述各種實例。該等和其他實例在所附申請專利範圍的範疇內。
100:視訊編碼和解碼系統 102:源設備 104:視訊源 106:記憶體 108:輸出介面 110:電腦可讀取媒體 112:儲存設備 114:檔案伺服器 116:目的設備 118:顯示設備 120:記憶體 122:輸入介面 130:四叉樹二叉樹(QTBT)結構 132:解碼樹單元(CTU) 200:視訊編碼器 202:模式選擇單元 204:殘差產生單元 206:變換處理單元 208:量化單元 210:逆量化單元 212:逆變換處理單元 214:重建單元 216:濾波單元 218:DPB 220:熵編碼單元 222:運動估計單元 224:運動補償單元 226:訊框內預測單元 230:視訊資料記憶體 300:視訊解碼器 302:熵解碼單元 304:預測處理單元 306:逆量化單元 308:逆變換處理單元 310:重建單元 312:濾波單元 314:解碼圖像緩衝器(DPB) 316:運動補償單元 318:訊框內預測單元 320:CPB記憶體 330:步驟 332:步驟 334:步驟 336:步驟 350:步驟 352:步驟 354:步驟 356:步驟 358:步驟 360:步驟 370:步驟 372:步驟 374:步驟 376:步驟 378:步驟 380:步驟
圖1是圖示可執行本案的技術的示例性視訊編碼和解碼系統的方塊圖。
圖2A和圖2B是圖示示例性四叉樹二叉樹(QTBT)結構以及對應的解碼樹單元(CTU)的概念圖。
圖3是圖示可執行本案的技術的示例性視訊編碼器的方塊圖。
圖4是圖示可執行本案的技術的示例性視訊解碼器的方塊圖。
圖5是圖示本案的示例性信號傳遞技術的流程圖。
圖6是圖示視訊編碼的實例的流程圖。
圖7是圖示視訊解碼的實例的流程圖。
國內寄存資訊(請依寄存機構、日期、號碼順序註記) 無 國外寄存資訊(請依寄存國家、機構、日期、號碼順序註記) 無
330:步驟
332:步驟
334:步驟
336:步驟

Claims (22)

  1. 一種對視訊資料進行解碼的方法,該方法包括以下步驟: 決定該視訊資料的一圖像是否為一訊框內隨機存取圖像(IRAP); 決定該圖像的所有層是否獨立; 基於該圖像為一IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許一訊框間條帶的一第一語法元素的一值;及 在不使用訊框間條帶預測的情況下對該圖像進行解碼。
  2. 根據請求項1之方法,其中該第一語法元素在一圖像頭部中。
  3. 根據請求項1之方法,其中該IRAP是一暫態解碼器刷新(IDR)圖像或一乾淨隨機存取(CRA)圖像。
  4. 根據請求項1之方法,其中解碼包括解碼,並且其中決定該視訊資料的一圖像是否為一IRAP之步驟包括以下步驟: 決定一第二語法元素的一值是否指示該圖像是一逐步解碼刷新(GDR)圖像或一暫態隨機存取圖像(IRAP)之一;及 決定一第三語法元素的一值是否指示該圖像不是該GDR圖像。
  5. 根據請求項1之方法,其中解碼包括解碼,並且其中決定該圖像的所有層是否獨立之步驟包括以下步驟: 決定指示該圖像的所有層是否獨立的一第四語法元素的一值。
  6. 根據請求項5之方法,其中該第四語法元素在一視訊參數集中。
  7. 根據請求項1之方法,其中解碼包括解碼,並且其中決定該第一語法元素的該值之步驟包括以下步驟:推斷該第一語法元素的該值。
  8. 根據請求項1之方法,其中解碼包括編碼,並且其中該方法亦包括以下步驟: 決定指示該圖像是一逐步解碼刷新(GDR)圖像或一IRAP之一的一第二語法元素的一值; 決定指示該圖像不是一GDR圖像的一第三語法元素的一值;及 在一位元串流中用信號傳遞傳輸該第二語法元素和該第三語法元素。
  9. 根據請求項1之方法,其中解碼包括編碼,並且其中該方法亦包括以下步驟: 決定指示該圖像的所有層是獨立的一第四語法元素的一值;及 在一位元串流中用信號傳遞傳輸該第四語法元素。
  10. 根據請求項1之方法,其中解碼包括編碼,並且其中該方法亦包括以下步驟: 避免在一位元串流中用信號傳遞傳輸該第一語法元素。
  11. 一種用於對視訊資料進行解碼的設備,該設備包括: 被配置為儲存該視訊資料的記憶體;及 在電路系統中實現並通訊地耦接到該記憶體的一或多個處理器,該一或多個處理器被配置為: 決定該視訊資料的一圖像是否為一訊框內隨機存取圖像(IRAP); 決定該圖像的所有層是否獨立; 基於該圖像為一IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許一訊框間條帶的一第一語法元素的一值;及 在不使用訊框間條帶預測的情況下對該圖像進行解碼。
  12. 根據請求項11之設備,其中該第一語法元素在一圖像頭部中。
  13. 根據請求項11之設備,其中該IRAP是一暫態解碼器刷新(IDR)圖像或一乾淨隨機存取(CRA)圖像。
  14. 根據請求項11之設備,其中解碼包括解碼,並且其中作為決定該視訊資料的一圖像是否為一IRAP的一部分,該一或多個處理器被配置為: 決定一第二語法元素的一值是否指示該圖像是一逐步解碼刷新(GDR)圖像或一IRAP之一;及 決定一第三語法元素的一值是否指示該圖像不是一GDR圖像。
  15. 根據請求項11之設備,其中解碼包括解碼,並且其中作為決定該圖像的所有層是否獨立的一部分,該一或多個處理器被配置為: 決定指示該圖像的所有層是否獨立的一第四語法元素的一值。
  16. 根據請求項15之設備,其中該第四語法元素在一視訊參數集中。
  17. 根據請求項11之設備,其中解碼包括解碼,並且其中作為決定該第一語法元素的該值的一部分,該一或多個處理器被配置為推斷該第一語法元素的該值。
  18. 根據請求項11之設備,其中解碼包括編碼,並且其中該一或多個處理器亦被配置為: 決定指示該圖像是一逐步解碼刷新(GDR)圖像或一IRAP之一的一第二語法元素的一值; 決定指示該圖像不是一GDR圖像的一第三語法元素的一值;及 在一位元串流中用信號傳遞傳輸該第二語法元素和該第三語法元素。
  19. 根據請求項11之設備,其中解碼包括編碼,並且其中該一或多個處理器亦被配置為: 決定指示該圖像的所有層是獨立的一第四語法元素的一值;及 在一位元串流中用信號傳遞傳輸該第四語法元素。
  20. 根據請求項11之設備,其中解碼包括編碼,並且其中該一或多個處理器亦被配置為: 避免在一位元串流中用信號傳遞傳輸該第一語法元素。
  21. 一種包括指令的非暫時性電腦可讀取媒體,其在被執行時使一或多個處理器執行以下操作: 決定視訊資料的一圖像是否為一訊框內隨機存取圖像(IRAP); 決定該圖像的所有層是否獨立; 基於該圖像為一IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許一訊框間條帶的一第一語法元素的一值;及 在不使用訊框間條帶預測的情況下對該圖像進行解碼。
  22. 一種用於對視訊資料進行解碼的設備,該設備包括: 用於決定該視訊資料的一圖像是否為一訊框內隨機存取圖像(IRAP)的構件; 用於決定該圖像的所有層是否獨立的構件; 用於基於該圖像為一IRAP並且該圖像的所有層是獨立的,決定指示在該圖像中不允許一訊框間條帶的一第一語法元素的一值的構件;及 用於在不使用訊框間條帶預測的情況下對該圖像進行解碼的構件。
TW110106456A 2020-02-24 2021-02-24 在視訊解碼中共享的信號傳遞約束和序列參數集 TW202139716A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202062980873P 2020-02-24 2020-02-24
US62/980,873 2020-02-24
US17/182,583 2021-02-23
US17/182,583 US11330305B2 (en) 2020-02-24 2021-02-23 Signaling constraints and sequence parameter set sharing in video coding

Publications (1)

Publication Number Publication Date
TW202139716A true TW202139716A (zh) 2021-10-16

Family

ID=77365490

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110106456A TW202139716A (zh) 2020-02-24 2021-02-24 在視訊解碼中共享的信號傳遞約束和序列參數集

Country Status (7)

Country Link
US (1) US11330305B2 (zh)
EP (1) EP4111690A1 (zh)
KR (1) KR20220119763A (zh)
CN (1) CN115104306B (zh)
BR (1) BR112022016023A2 (zh)
TW (1) TW202139716A (zh)
WO (1) WO2021173695A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021201664A1 (ko) * 2020-04-03 2021-10-07 엘지전자 주식회사 Gdr 또는 irap 픽처에 대한 가용 슬라이스 타입 정보에 기반하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9161039B2 (en) * 2012-09-24 2015-10-13 Qualcomm Incorporated Bitstream properties in video coding
US9491457B2 (en) * 2012-09-28 2016-11-08 Qualcomm Incorporated Signaling of regions of interest and gradual decoding refresh in video coding
US10212437B2 (en) * 2013-07-18 2019-02-19 Qualcomm Incorporated Device and method for scalable coding of video information
JP6465863B2 (ja) * 2014-03-14 2019-02-06 シャープ株式会社 画像復号装置、画像復号方法及び記録媒体
US10327002B2 (en) * 2014-06-19 2019-06-18 Qualcomm Incorporated Systems and methods for intra-block copy
WO2016108188A1 (en) * 2014-12-31 2016-07-07 Nokia Technologies Oy Inter-layer prediction for scalable video coding and decoding
US11109069B2 (en) * 2019-09-20 2021-08-31 Tencent America LLC Signaling of scalability parameters in video bitstream
US11758193B2 (en) * 2019-11-04 2023-09-12 Hfi Innovation Inc. Signaling high-level information in video and image coding

Also Published As

Publication number Publication date
US11330305B2 (en) 2022-05-10
WO2021173695A1 (en) 2021-09-02
KR20220119763A (ko) 2022-08-30
CN115104306B (zh) 2023-05-30
EP4111690A1 (en) 2023-01-04
CN115104306A (zh) 2022-09-23
BR112022016023A2 (pt) 2022-10-11
US20210266601A1 (en) 2021-08-26

Similar Documents

Publication Publication Date Title
CN113940069A (zh) 用于视频译码中的低频不可分离变换的变换和最后有效系数位置信令
TW202143717A (zh) 視頻譯碼中的亮度映射與色度縮放(lmcs)
TW202110189A (zh) 用於視訊寫碼的環繞運動補償
TW202115977A (zh) 用於視訊編碼的跨分量自我調整迴路濾波
US20210235124A1 (en) Decoded picture buffer (dpb) parameter signaling for video coding
TW202123705A (zh) 低頻不可分離變換(lfnst)訊號傳遞
US11659207B2 (en) General constraints of syntax elements for video coding
CN115486066A (zh) 在视频编解码中的独立子图片信令通知
TW202041003A (zh) 用於視訊資料之框間-框內預測模式
TW202131676A (zh) 視訊編碼中針對參考圖片重取樣的環繞偏移
TW202139715A (zh) 視訊譯碼中的參考圖片列表和共位圖片訊號傳遞
TW202127893A (zh) 用於視頻編碼中的參考圖片重採樣的參考圖片縮放比
TW202133621A (zh) 支援有損解碼和無損解碼兩者的殘差解碼
TW202143711A (zh) 用於具有混合網路抽象層(nal)單元類型的視訊的高階語法
TW202139696A (zh) 在進行視訊解碼時對區塊的色度變換跳過和聯合色度解碼賦能
TW202127882A (zh) 視訊編解碼中的層間參考圖像傳訊
TW202141988A (zh) 用於視訊譯碼中的變換跳過區塊的高級約束
TW202143735A (zh) 用於視訊資料的語法元素的訊號傳遞
CN115398921A (zh) 确定是否对在切片报头中的视频数据的图片的图片报头数据进行译码
TW202133615A (zh) 基於色度變換跳過的用於色度的lfnst信號傳遞
TW202143722A (zh) 在視訊解碼中的經解碼視訊序列起點存取單元
TW202131696A (zh) 用於視訊編碼中的一般變換係數的基於方程的萊斯參數推導
TW202127874A (zh) 用於視訊編碼中的自我調整色彩變換的qp 偏移的靈活訊號傳遞
TW202029753A (zh) 用於視訊寫碼之廣角框內預測
TW202139716A (zh) 在視訊解碼中共享的信號傳遞約束和序列參數集