TW202416714A - Intra prediction mode improvements based on available reference samples - Google Patents
Intra prediction mode improvements based on available reference samples Download PDFInfo
- Publication number
- TW202416714A TW202416714A TW112137033A TW112137033A TW202416714A TW 202416714 A TW202416714 A TW 202416714A TW 112137033 A TW112137033 A TW 112137033A TW 112137033 A TW112137033 A TW 112137033A TW 202416714 A TW202416714 A TW 202416714A
- Authority
- TW
- Taiwan
- Prior art keywords
- intra
- frame prediction
- block
- modes
- reference samples
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 63
- 230000004044 response Effects 0.000 claims description 15
- 230000011218 segmentation Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 abstract description 20
- 230000011664 signaling Effects 0.000 abstract description 18
- 230000008859 change Effects 0.000 abstract description 4
- 239000000523 sample Substances 0.000 description 26
- 238000004891 communication Methods 0.000 description 23
- 241000023320 Luma <angiosperm> Species 0.000 description 22
- 230000015654 memory Effects 0.000 description 22
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 22
- 238000012545 processing Methods 0.000 description 16
- 239000013074 reference sample Substances 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000013139 quantization Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000003709 image segmentation Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 2
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Magnetic Resonance Imaging Apparatus (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本發明實施例大致上係關於一種用於視訊編碼及解碼中之幀內預測的方法及設備。Embodiments of the present invention generally relate to a method and apparatus for intra-frame prediction in video encoding and decoding.
為達成高壓縮效率,影像及視訊編碼方案通常採用預測及轉換,以利用視訊內容中之空間及時間冗餘。一般而言,幀內或幀間預測係用以利用幀內或幀間圖像相關性,接著將原始區塊與預測區塊之間的差異(通常表示為預測誤差或預測殘量)進行轉換、量化、及熵編碼。為了重建視訊,將壓縮資料藉由對應於熵編碼、量化、轉換、及預測的逆程序而解碼。To achieve high compression efficiency, image and video coding schemes usually use prediction and transformation to exploit spatial and temporal redundancy in video content. In general, intra-frame or inter-frame prediction is used to exploit intra-frame or inter-frame image correlation, and then the difference between the original block and the predicted block (usually expressed as prediction error or prediction residue) is transformed, quantized, and entropy encoded. To reconstruct the video, the compressed data is decoded by the inverse process corresponding to entropy coding, quantization, transformation, and prediction.
根據一實施例,提出一種視訊解碼方法,其包含:針對在一圖像中待經解碼之一區塊,識別一或多個參考樣本的可用性;回應於該一或多個參考樣本的該可用性而獲得該區塊之一組幀內預測模式;從該組幀內預測模式中獲得一幀內預測模式;及基於該區塊之該幀內預測模式,執行待經解碼之該區塊的幀內預測,以形成用於該區塊的一預測區塊。According to one embodiment, a video decoding method is proposed, which includes: identifying the availability of one or more reference samples for a block to be decoded in an image; obtaining an intra-frame prediction mode for the block in response to the availability of the one or more reference samples; obtaining an intra-frame prediction mode from the intra-frame prediction mode; and performing intra-frame prediction of the block to be decoded based on the intra-frame prediction mode of the block to form a prediction block for the block.
根據另一實施例,提出一種視訊編碼方法,其包含:針對在一圖像中待經編碼之一區塊,識別一或多個參考樣本的可用性;回應於該一或多個參考樣本的該可用性而獲得該區塊之一組幀內預測模式;從該組幀內預測模式中選擇一幀內預測模式;及基於該區塊之該幀內預測模式,執行待經編碼之該區塊的幀內預測,以形成用於該區塊的一預測區塊。According to another embodiment, a video coding method is proposed, which includes: identifying the availability of one or more reference samples for a block to be encoded in an image; obtaining a set of intra-frame prediction modes for the block in response to the availability of the one or more reference samples; selecting an intra-frame prediction mode from the set of intra-frame prediction modes; and performing intra-frame prediction of the block to be encoded based on the intra-frame prediction mode of the block to form a prediction block for the block.
根據另一實施例,提出一種用於視訊解碼之設備,其包含一或多個處理器,其中該一或多個處理器經組態以:針對在一圖像中待經解碼之一區塊,識別一或多個參考樣本的可用性;回應於該一或多個參考樣本的該可用性而獲得該區塊之一組幀內預測模式;從該組幀內預測模式中獲得一幀內預測模式;及基於該區塊之該幀內預測模式,執行待經解碼之該區塊的幀內預測,以形成用於該區塊的一預測區塊。According to another embodiment, a device for video decoding is provided, which includes one or more processors, wherein the one or more processors are configured to: identify the availability of one or more reference samples for a block to be decoded in an image; obtain an intra-frame prediction mode for the block in response to the availability of the one or more reference samples; obtain an intra-frame prediction mode from the intra-frame prediction mode; and perform intra-frame prediction of the block to be decoded based on the intra-frame prediction mode of the block to form a prediction block for the block.
根據另一實施例,提出一種用於視訊編碼之設備,其包含一或多個處理器,其中該一或多個處理器經組態以:針對在一圖像中待經編碼之一區塊,識別一或多個參考樣本的可用性;回應於該一或多個參考樣本的該可用性而獲得該區塊之一組幀內預測模式;從該組幀內預測模式中選擇一幀內預測模式;及基於該區塊之該幀內預測模式,執行待經編碼之該區塊的幀內預測,以形成用於該區塊的一預測區塊。According to another embodiment, a device for video encoding is proposed, which includes one or more processors, wherein the one or more processors are configured to: identify the availability of one or more reference samples for a block to be encoded in an image; obtain a group of intra-frame prediction modes for the block in response to the availability of the one or more reference samples; select an intra-frame prediction mode from the group of intra-frame prediction modes; and perform intra-frame prediction of the block to be encoded based on the intra-frame prediction mode of the block to form a prediction block for the block.
一或多個實施例亦提供一種包含指令之電腦程式,該等指令在由一或多個處理器執行時使該一或多個處理器執行根據本文中所描述之實施例中之任一者的編碼方法或解碼方法。本實施例中之一或多者亦提供一種電腦可讀儲存媒體,其具有儲存於其上用於根據本文所述之方法而視訊編碼或解碼之指令。One or more embodiments also provide a computer program comprising instructions that, when executed by one or more processors, cause the one or more processors to perform an encoding method or a decoding method according to any of the embodiments described herein. One or more of the embodiments also provide a computer-readable storage medium having stored thereon instructions for video encoding or decoding according to the methods described herein.
一或多個實施例亦提供一種電腦可讀儲存媒體,其具有儲存於其上根據上述方法產生之視訊資料。一或多個實施例亦提供一種用於傳輸或接收根據本文所述之方法產生之視訊資料的方法及設備。One or more embodiments also provide a computer-readable storage medium having video data generated according to the above method stored thereon. One or more embodiments also provide a method and apparatus for transmitting or receiving video data generated according to the method described herein.
圖1繪示其中可實施各種態樣及實施例的系統之實例的方塊圖。系統100可體現為包括下文所描述的各種組件,並經組態以執行描述於本申請案中之態樣的一或多者的裝置。此類裝置的實例包括,但不限於,各種電子裝置,諸如個人電腦、膝上型電腦、智慧型手機、平板電腦、數位多媒體機上盒、數位電視接收器、個人視訊記錄系統、連接式家用電器、及伺服器。系統100的元件可單一地或組合地體現在單一積體電路、多個IC、及/或離散組件中。例如,在至少一個實施例中,系統100的處理及編碼器/解碼器元件跨多個IC及/或離散組件分布。在各種實施例中,系統100經由例如通訊匯流排或通過專用輸入埠及/或輸出埠通訊地耦接至其他系統或其他電子裝置。在各種實施例中,系統100經組態以實施描述於本申請案中之態樣的一或多者。FIG. 1 is a block diagram showing an example of a system in which various aspects and embodiments may be implemented. System 100 may be embodied as a device including various components described below and configured to execute one or more of the aspects described in the present application. Examples of such devices include, but are not limited to, various electronic devices, such as personal computers, laptops, smart phones, tablet computers, digital multimedia set-top boxes, digital television receivers, personal video recording systems, connected home appliances, and servers. The components of system 100 may be embodied singly or in combination in a single integrated circuit, multiple ICs, and/or discrete components. For example, in at least one embodiment, the processing and encoder/decoder components of system 100 are distributed across multiple ICs and/or discrete components. In various embodiments, the system 100 is communicatively coupled to other systems or other electronic devices via, for example, a communication bus or through dedicated input ports and/or output ports. In various embodiments, the system 100 is configured to implement one or more of the aspects described in the present application.
系統100包括至少一個處理器110,該處理器經組態以執行載入至其中之用於實施例如描述於本申請案中的各種態樣的指令。處理器110可包括嵌入式記憶體、輸入輸出介面、及所屬技術領域中已知的各種其他電路系統。系統100包括至少一個記憶體120(例如,揮發性記憶體裝置及/或非揮發性記憶體裝置)。系統100包括儲存裝置140,該儲存裝置可包括非揮發性記憶體及/或揮發性記憶體,包括但不限於EEPROM、ROM、PROM、RAM、DRAM、SRAM、快閃記憶體、磁碟驅動機、及/或光碟驅動機。作為非限制性實例,儲存裝置140可包括內部儲存裝置、附接儲存裝置、及/或網路可存取儲存裝置。System 100 includes at least one processor 110 configured to execute instructions loaded therein for implementing various aspects, such as those described in the present application. Processor 110 may include embedded memory, input/output interfaces, and various other circuit systems known in the art. System 100 includes at least one memory 120 (e.g., a volatile memory device and/or a non-volatile memory device). System 100 includes a storage device 140, which may include non-volatile memory and/or volatile memory, including but not limited to EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash memory, disk drive, and/or optical disk drive. As non-limiting examples, storage device 140 may include internal storage devices, attached storage devices, and/or network accessible storage devices.
系統100包括編碼器/解碼器模組130,該編碼器/解碼器模組經組態以例如處理資料以提供經編碼視訊或經解碼視訊,且編碼器/解碼器模組130可包括其自有的處理器及記憶體。編碼器/解碼器模組130表示可包括在裝置中以執行編碼及/或解碼功能的(多個)模組。如已知的,裝置可包括編碼及解碼模組的一或二者。額外地,如所屬技術領域中具有通常知識者所已知的,可將編碼器/解碼器模組130實施為系統100的分開元件,或可併入處理器110內作為硬體與軟體的組合。The system 100 includes a codec module 130 that is configured to, for example, process data to provide encoded video or decoded video, and the codec module 130 may include its own processor and memory. The codec module 130 represents a module(s) that may be included in a device to perform encoding and/or decoding functions. As is known, a device may include one or both encoding and decoding modules. Additionally, as known to those of ordinary skill in the art, the codec module 130 may be implemented as a separate component of the system 100, or may be incorporated into the processor 110 as a combination of hardware and software.
待載入至處理器110或編碼器/解碼器130上以執行描述於本申請案中的各種態樣的程式碼可儲存在儲存裝置140中,且隨後載入至記憶體120上以用於處理器110執行。根據各種實施例,處理器110、記憶體120、儲存裝置140、及編碼器/解碼器模組130的一或多者可在描述於本申請案中的程序的執行期間儲存各種項目的一或多者。此類經儲存項目可包括但不限於來自方程式、公式、操作、及操作邏輯之處理的輸入視訊、經解碼視訊或經解碼視訊的部分、位元流、矩陣、變數、及中間或最終結果。Program code to be loaded onto the processor 110 or the encoder/decoder 130 to execute various aspects described in the present application may be stored in the storage device 140 and subsequently loaded onto the memory 120 for execution by the processor 110. According to various embodiments, one or more of the processor 110, the memory 120, the storage device 140, and the encoder/decoder module 130 may store one or more of various items during execution of the procedures described in the present application. Such stored items may include, but are not limited to, input video, decoded video or portions of decoded video, bit streams, matrices, variables, and intermediate or final results from the processing of equations, formulas, operations, and operational logic.
在數個實施例中,處理器110及/或編碼器/解碼器模組130內側的記憶體係用以儲存指令,並為編碼或解碼期間所需的處理提供工作記憶體。然而,在其他實施例中,處理裝置(例如,處理裝置可係處理器110或編碼器/解碼器模組130的任一者)外部的記憶體係用於此等功能的一或多者。外部記憶體可係記憶體120及/或儲存裝置140,例如動態揮發性記憶體及/或非揮發性快閃記憶體。在數個實施例中,外部非揮發性快閃記憶體係用以儲存電視機的作業系統。在至少一個實施例中,快速外部動態揮發性記憶體(諸如RAM)係使用為用於視訊編碼及解碼操作的工作記憶體,諸如用於MPEG-2、HEVC、或VVC。In some embodiments, memory inside the processor 110 and/or the encoder/decoder module 130 is used to store instructions and provide working memory for processing required during encoding or decoding. However, in other embodiments, memory external to the processing device (e.g., the processing device can be either the processor 110 or the encoder/decoder module 130) is used for one or more of these functions. The external memory can be the memory 120 and/or the storage device 140, such as dynamic volatile memory and/or non-volatile flash memory. In some embodiments, the external non-volatile flash memory is used to store the operating system of the television. In at least one embodiment, fast external dynamic volatile memory (such as RAM) is used as working memory for video encoding and decoding operations, such as for MPEG-2, HEVC, or VVC.
至系統100之元件的輸入可通過如方塊105中所指示的各種輸入裝置提供。此類輸入裝置包括但不限於(i)射頻(RF)部分,其接收例如由廣播器透過空氣傳輸的RF信號、(ii)複合輸入端子、(iii) USB輸入端子、及/或(iv) HDMI輸入端子。Input to the components of system 100 may be provided by various input devices as indicated in block 105. Such input devices include, but are not limited to, (i) a radio frequency (RF) section that receives RF signals transmitted through the air, such as by a broadcaster, (ii) a composite input terminal, (iii) a USB input terminal, and/or (iv) an HDMI input terminal.
在各種實施例中,方塊105的輸入裝置具有如所屬技術領域中已知的關聯各別輸入處理元件。例如,RF部分可與適用於(i)選擇所欲頻率(亦稱為選擇信號或將信號頻帶限制至頻帶)、(ii)降頻轉換經選擇信號、(iii)再次頻帶限制至更窄的頻帶以選擇(例如)在某些實施例中可稱為通道的信號頻帶、(iv)解調變經降頻轉換及經頻帶限制的信號、(v)執行錯誤校正、及(vi)解多工以選擇所欲的資料封包串流的元件關聯。各種實施例的RF部分包括一或多個元件以執行此等功能,例如頻率選擇器、信號選擇器、頻帶限制器、通道選擇器、濾波器、降頻轉換器、解調變器、錯誤校正器、及解多工器。RF部分可包括執行各種此等功能(包括例如將經接收信號降頻轉換至較低頻率(例如,中間頻率或近基頻頻率)或至基頻)的調諧器。在一個機上盒實施例中,RF部分及其關聯輸入處理元件接收透過有線(例如,纜線)媒體傳輸的RF信號,並藉由濾波、降頻轉換、及再次濾波至所欲頻帶來執行頻率選擇。各種實施例重新配置上述(及其他)元件的順序、移除此等元件中的一些者、及/或加入執行類似或不同功能的其他元件。加入元件可包括將元件插入在現有元件之間,例如插入放大器及類比轉數位轉換器。在各種實施例中,RF部分包括天線。In various embodiments, the input device of block 105 has associated respective input processing elements as are known in the art. For example, the RF portion may be associated with elements adapted to (i) select a desired frequency (also referred to as selecting a signal or band-limiting a signal to a frequency band), (ii) down-convert the selected signal, (iii) again band-limit to a narrower frequency band to select a signal band which may be referred to as a channel in some embodiments, (iv) demodulate the down-converted and band-limited signal, (v) perform error correction, and (vi) demultiplex to select a desired data packet stream. The RF portion of various embodiments includes one or more components to perform such functions, such as frequency selectors, signal selectors, band limiters, channel selectors, filters, down-converters, demodulators, error correctors, and demultiplexers. The RF portion may include a tuner that performs various such functions, including, for example, down-converting a received signal to a lower frequency (e.g., an intermediate frequency or a near-baseband frequency) or to a baseband. In one set-top box embodiment, the RF portion and its associated input processing elements receive RF signals transmitted through a wired (e.g., cable) medium and perform frequency selection by filtering, down-converting, and filtering again to a desired frequency band. Various embodiments reconfigure the order of the above (and other) components, remove some of these components, and/or add other components that perform similar or different functions. Adding components may include inserting components between existing components, such as inserting an amplifier and an analog-to-digital converter. In various embodiments, the RF portion includes an antenna.
額外地,USB及/或HDMI端子可包括用於跨USB及/或HDMI連接將系統100連接至其他電子裝置的各別介面處理器。應理解輸入處理的各種態樣(例如,里德-所羅門(Reed-Solomon)錯誤校正)可依需要實施在例如分開的輸入處理IC內或處理器110內。類似地,USB或HDMI介面處理的態樣可依需要實施在分開的介面IC內或在處理器110內。將經解調變、經錯誤校正、及經解多工的串流提供至各種處理元件,包括例如處理器110及編碼器/解碼器130,其與記憶體及儲存元件組合操作以依需要處理資料流,以供用於呈現在一輸出裝置上。Additionally, the USB and/or HDMI terminals may include respective interface processors for connecting the system 100 to other electronic devices across the USB and/or HDMI connections. It will be appreciated that various aspects of input processing (e.g., Reed-Solomon error correction) may be implemented, for example, in a separate input processing IC or in the processor 110 as desired. Similarly, aspects of USB or HDMI interface processing may be implemented, for example, in a separate interface IC or in the processor 110 as desired. The demodulated, error corrected, and demultiplexed stream is provided to various processing elements, including, for example, the processor 110 and the encoder/decoder 130, which operate in combination with memory and storage elements to process the data stream as desired for presentation on an output device.
系統100的各種元件可提供於整合外殼內,在整合外殼內,各種元件可使用合適的連接配置115(例如,如所屬技術領域中已知的內部匯流排,包括I2C匯流排、佈線、及印刷電路板)於之間互連並傳輸資料。The various components of system 100 may be provided within an integrated housing, within which the various components may interconnect and transmit data therebetween using a suitable connection arrangement 115 (e.g., an internal bus as known in the art, including an I2C bus, wiring, and a printed circuit board).
系統100包括通訊介面150,該通訊介面實現經由通訊通道190與其他裝置的通訊。通訊介面150可包括但不限於經組態以透過通訊通道190傳輸及接收資料的收發器。通訊介面150可包括但不限於數據機或網路卡,且通訊通道190可實施在例如有線及/或無線媒體內。The system 100 includes a communication interface 150 that enables communication with other devices via a communication channel 190. The communication interface 150 may include, but is not limited to, a transceiver configured to transmit and receive data via the communication channel 190. The communication interface 150 may include, but is not limited to, a modem or a network card, and the communication channel 190 may be implemented in, for example, wired and/or wireless media.
在各種實施例中,資料係使用Wi-Fi網路(諸如IEEE 802.11)串流至系統100。此等實施例的Wi-Fi信號係透過經調適用於Wi-Fi通訊的通訊通道190及通訊介面150接收。此等實施例的通訊通道190一般連接至提供對外部網路(包括網際網路)之存取以用於允許串流應用及其他過頂(over-the-top)通訊的存取點或路由器。其他實施例使用透過輸入方塊105的HDMI連接遞送資料的機上盒將經串流資料提供至系統100。又其他實施例使用輸入方塊105的RF連接將經串流資料提供至系統100。In various embodiments, data is streamed to the system 100 using a Wi-Fi network (such as IEEE 802.11). The Wi-Fi signals of these embodiments are received via a communication channel 190 and a communication interface 150 adapted for Wi-Fi communication. The communication channel 190 of these embodiments is generally connected to an access point or router that provides access to an external network (including the Internet) for allowing streaming applications and other over-the-top communications. Other embodiments use a set-top box that delivers data via an HDMI connection of the input block 105 to provide the streamed data to the system 100. Still other embodiments use an RF connection of the input block 105 to provide the streamed data to the system 100.
系統100可將輸出信號提供至各種輸出裝置,包括顯示器165、揚聲器175、及其他週邊裝置185。在實施例的各種實例中,其他週邊裝置185包括獨立DVR、光碟機、立體聲系統、照明系統、及基於系統100的輸出提供功能的其他裝置的一或多者。在各種實施例中,控制信號使用傳訊(諸如AV.Link、CEC、或以需要或不需要使用者介入的方式實現裝置對裝置控制的其他通訊協定)在系統100與顯示器165、揚聲器175、或其他週邊裝置185之間傳達。輸出裝置可經由通過各別介面160、170、及180的專用連接通訊地耦接至系統100。替代地,輸出裝置可經由通訊介面150使用通訊通道190連接至系統100。顯示器165及揚聲器175可與電子裝置(例如電視機)中的系統100的其他組件整合在單一單元中。在各種實施例中,顯示器介面160包括顯示驅動器,例如時序控制器(T Con)晶片。The system 100 can provide output signals to various output devices, including a display 165, speakers 175, and other peripheral devices 185. In various examples of embodiments, the other peripheral devices 185 include one or more of a stand-alone DVR, an optical disc player, a stereo system, a lighting system, and other devices that provide functionality based on the output of the system 100. In various embodiments, control signals are communicated between the system 100 and the display 165, speakers 175, or other peripheral devices 185 using communications such as AV.Link, CEC, or other communications protocols that enable device-to-device control with or without user intervention. The output devices can be communicatively coupled to the system 100 via dedicated connections through respective interfaces 160, 170, and 180. Alternatively, the output device may be connected to the system 100 via the communication interface 150 using the communication channel 190. The display 165 and the speaker 175 may be integrated into a single unit with other components of the system 100 in an electronic device (e.g., a television). In various embodiments, the display interface 160 includes a display driver, such as a timing controller (T Con) chip.
例如,若輸入105的RF部分係分開的機上盒的部件,顯示器165及揚聲器175可替代地與其他組件的一或多者分開。在顯示器165及揚聲器175係外部組件的各種實施例中,輸出信號可經由專用輸出連接(包括例如HDMI埠、USB埠、或COMP輸出)提供。For example, if the RF portion of input 105 is part of a separate set-top box, the display 165 and speakers 175 may alternatively be separate from one or more of the other components. In various embodiments where the display 165 and speakers 175 are external components, the output signals may be provided via dedicated output connections (including, for example, an HDMI port, a USB port, or a COMP output).
圖2繪示例示性視訊編碼器200,諸如VVC(多功能視訊编碼(Versatile Video Coding))編碼器。圖2亦可繪示對VVC標準做出改善的編碼器或採用類似於VVC之技術的編碼器。FIG2 illustrates an exemplary video encoder 200, such as a VVC (Versatile Video Coding) encoder. FIG2 may also illustrate an encoder that improves the VVC standard or an encoder that uses techniques similar to VVC.
本申請案中,用語「經重建(reconstructed)」及「經解碼(decoded)」可互換地使用、用語「經編碼(encoded)」及「經編碼(coded)」可互換地使用、用語「影像(image)」、「圖像(picture)」、及「訊框(frame)」可互換地使用。通常,但非必要,用語「經重建(reconstructed)」係用於編碼器側處,而「經編碼(encoded)」係用於解碼器側處。In this application, the terms "reconstructed" and "decoded" are used interchangeably, the terms "encoded" and "coded" are used interchangeably, and the terms "image", "picture", and "frame" are used interchangeably. Usually, but not necessarily, the term "reconstructed" is used at the encoder side, and "encoded" is used at the decoder side.
在編碼前,視訊序列可完成預編碼處理(201)例如將顏色轉換施加至輸入顏色圖像(例如,從RGB 4:4:4轉換成YCbCr 4:2:0),或執行輸入圖像分量的重新映射以得到對壓縮更有彈性的信號分布(例如,使用顏色分量的一者的直方圖等化)。後設資料可與預處理關聯,並附加至位元流。Prior to encoding, the video sequence may undergo pre-encoding processing (201) such as applying a color conversion to the input color image (e.g., from RGB 4:4:4 to YCbCr 4:2:0), or performing a remapping of the input image components to obtain a signal distribution that is more resilient to compression (e.g., using histogram equalization of one of the color components). Metadata may be associated with the pre-processing and appended to the bitstream.
在編碼器200中,圖像係藉由如下文描述的編碼器元件編碼。待編碼圖像係以例如CU(編碼單元(coding unit))為單位分割(202)及處理。各單元係使用例如幀內或幀間模式任一者編碼。當單元以幀內模式編碼時,其執行幀內預測(260)。在幀間模式中,執行運動評估(275)及補償(270)。編碼器決定(205)將幀內或幀間模式的哪一者用於編碼該單元,並藉由例如預測模式旗標指示幀內/幀間決策。預測殘量係例如藉由從原始影像區塊減去(210)經預測區塊而計算。In a coder 200, an image is encoded by coder elements as described below. The image to be encoded is divided (202) and processed in units such as CUs (coding units). Each unit is encoded using, for example, either intra or inter mode. When a unit is encoded in intra mode, it performs intra prediction (260). In inter mode, motion estimation (275) and compensation (270) are performed. The coder decides (205) which of the intra or inter modes is to be used for encoding the unit and indicates the intra/inter decision by, for example, a prediction mode flag. The prediction residual is calculated, for example, by subtracting (210) the predicted block from the original image block.
接著轉換(225)及量化(230)預測殘量。將量化轉換係數以及運動向量及其他語法元素(諸如圖像分割資訊)熵編碼(245)以輸出位元流。作為非限制性實例,可使用基於上下文之適應性二進位算術編碼(context-based adaptive binary arithmetic coding, CABAC)將語法元素編碼至位元流中。The prediction residual is then transformed (225) and quantized (230). The quantized transform coefficients, along with motion vectors and other syntax elements (such as image segmentation information), are entropy encoded (245) to output a bitstream. As a non-limiting example, context-based adaptive binary arithmetic coding (CABAC) can be used to encode the syntax elements into the bitstream.
編碼器可跳過轉換,並將量化直接施加至未轉換的殘餘信號。編碼器可略過轉換及量化二者,亦即殘量係在未施加轉換或量化程序的狀況下直接編碼。The encoder can skip the conversion and apply quantization directly to the unconverted residual signal. The encoder can skip both the conversion and quantization, that is, the residue is directly encoded without applying a conversion or quantization process.
編碼器解碼經編碼區塊以提供用於進一步預測的參考。將量化轉換係數解量化(240)及逆轉換(250)以解碼預測殘量。組合(255)經解碼預測殘量及預測區塊,重建影像區塊。將迴路內濾波器(in-loop filter) 265施用至重建圖像,以執行例如解塊/SAO(樣本適應性偏移(Sample Adaptive Offset))/ALF(適應性迴路濾波器(Adaptive Loop Filter))濾波以降低編碼假影。將經濾波影像儲存在參考圖像緩衝器(280)中。The encoder decodes the encoded block to provide a reference for further prediction. The quantized transform coefficients are dequantized (240) and inverse transformed (250) to decode the prediction residue. The decoded prediction residue and the prediction block are combined (255) to reconstruct the image block. An in-loop filter 265 is applied to the reconstructed image to perform, for example, deblocking/SAO (Sample Adaptive Offset)/ALF (Adaptive Loop Filter) filtering to reduce coding artifacts. The filtered image is stored in a reference image buffer (280).
圖3繪示實例視訊解碼器300的方塊圖。在解碼器300中,位元流係藉由如下文描述的解碼器元件解碼。視訊解碼器300大致執行與圖2中所描述之編碼階段互逆的解碼階段。編碼器200通常亦執行視訊解碼作為編碼視訊資料的部分。FIG3 shows a block diagram of an example video decoder 300. In decoder 300, a bit stream is decoded by decoder elements as described below. Video decoder 300 generally performs a decoding phase that is the inverse of the encoding phase described in FIG2. Encoder 200 also typically performs video decoding as part of encoding video data.
具體而言,解碼器的輸入包括可由視訊編碼器200產生的視訊位元流。位元流首先經熵解碼330以獲得轉換係數、預測模式、運動向量、及其他經編碼資訊。圖像分割資訊指示該圖像係如何分割的。解碼器因此可根據經解碼圖像分割資訊劃分(335)圖像。將轉換係數解量化(340)及逆轉換(350)以解碼預測殘量。組合(355)經解碼預測殘量及預測區塊,重建影像區塊。經預測區塊可從幀內預測(360)或運動補償預測(亦即,幀間預測)(375)獲得(370)。將迴路內濾波器(365)施用至經重建影像。將經濾波影像儲存在參考圖像緩衝器(380)處。應注意,對於給定圖像,解碼器300側上的參考圖像緩衝器380的內容與用於相同圖像之編碼器200側上的參考圖像緩衝器280的內容相同。Specifically, the input to the decoder includes a video bitstream that may be generated by the video encoder 200. The bitstream is first entropy decoded 330 to obtain transform coefficients, prediction modes, motion vectors, and other encoded information. The image segmentation information indicates how the image is segmented. The decoder can therefore divide (335) the image based on the decoded image segmentation information. The transform coefficients are dequantized (340) and inversely transformed (350) to decode the prediction residual. The decoded prediction residual and the prediction block are combined (355) to reconstruct the image block. The predicted block can be obtained (370) from intra-frame prediction (360) or motion compensated prediction (i.e., inter-frame prediction) (375). An in-loop filter (365) is applied to the reconstructed image. The filtered image is stored at a reference image buffer (380). It should be noted that for a given image, the contents of the reference image buffer 380 on the decoder 300 side are identical to the contents of the reference image buffer 280 on the encoder 200 side for the same image.
經解碼圖像可進一步完成後解碼處理(385),例如顏色逆轉換(例如,從YCbCr 4:2:0至RGB 4:4:4的轉換)或執行在預編碼處理(201)中執行之重新映射處理之相反的逆重新映射。後解碼處理可使用在預編碼處理中衍生並在位元流中傳訊的後設資料。 幀內預測及參考樣本取代 The decoded image may be further subjected to post-decoding processing (385), such as color inversion (e.g., conversion from YCbCr 4:2:0 to RGB 4:4:4) or performing an inverse remapping of the remapping process performed in the pre-coding process (201). The post-decoding process may use metadata derived in the pre-coding process and signaled in the bitstream. Intra-frame prediction and reference sample substitution
HEVC及VVC中之幀內預測程序由三個步驟組成: • 參考樣本產生; • 幀內樣本預測;及 • 預測樣本的後處理。 The intra-frame prediction process in HEVC and VVC consists of three steps: • reference sample generation; • intra-frame sample prediction; and • post-processing of the predicted samples.
參考樣本產生程序繪示於圖4中。共座標(x,y)處的像素值係由P(x,y)指示。參考樣本ref[]亦已知為L形。對於大小NxN的預測單元(prediction unit, PU),上方的一列(2N + 2*refIdx)經解碼樣本係由先前重建的上方及右上方像素形成。類似地,左方之一行(2N + 2*refIdx)樣本係由經重建的左方及左下方像素形成。在VVC中,參考線及樣本行可在與目前區塊相隔多於一個樣本的距離(d = refIdx)處,如圖4所描繪。傳訊索引「mrlIdx」,以指示應使用「d」的何值。The reference sample generation process is illustrated in FIG4 . The pixel value at common coordinates (x, y) is denoted by P(x, y). The reference sample ref[] is also known to be L-shaped. For a prediction unit (PU) of size NxN, the top row of (2N + 2*refIdx) decoded samples is formed by previously reconstructed top and top-right pixels. Similarly, the left row of (2N + 2*refIdx) samples is formed by reconstructed left and bottom-left pixels. In VVC, reference lines and sample rows can be at a distance of more than one sample (d = refIdx) from the current block, as depicted in FIG4 . The signaling index “mrlIdx” is used to indicate what value of “d” should be used.
亦使用在左上方位置處的隅角像素來填滿上方列與左行參考之間的間隙。在圖5A及圖5B中,虛線區域對應於圖像之不可用區域(例如,超出邊界或尚未重建),且以點線表示缺失參考樣本。如圖6所示,若在上方或左方的一些樣本不可用(610),因為對應的CU不在相同切片中,或目前CU位於訊框邊界處(例如,如圖5A所示),或在四元樹分裂(quadtree split)之後目前CU位於右下方處(如圖5B所示),則執行稱為參考樣本取代的方法,其中缺失樣本係以順時鐘與逆時鐘方向從可用樣本複製(630)。該等複製樣本亦稱為「填充參考樣本(padded reference sample)」,且當將重建樣本用作參考樣本時,其等亦稱為「非填充參考樣本(non-padded reference sample)」。Corner pixels at the upper left position are also used to fill in the gaps between the upper row and left row references. In FIGS. 5A and 5B , the dashed areas correspond to unavailable areas of the image (e.g., beyond the border or not yet reconstructed), and missing reference samples are represented by dotted lines. As shown in FIG. 6 , if some samples at the top or left are unavailable ( 610 ) because the corresponding CU is not in the same slice, or the current CU is at the frame boundary (e.g., as shown in FIG. 5A ), or the current CU is at the bottom right after a quadtree split (as shown in FIG. 5B ), a method called reference sample replacement is performed, in which the missing samples are copied from available samples in a clockwise and counterclockwise direction ( 630 ). Such replicated samples are also referred to as “padded reference samples”, and when the reconstructed samples are used as reference samples, they are also referred to as “non-padded reference samples”.
若重建的上方/左方參考樣本可用,則將重建的參考樣本複製(620)至參考樣本緩衝器。在參考樣本取代程序之後,執行幀內樣本預測(640)。接著,取決於目前CU大小及預測模式,使用指定濾波器來濾波參考樣本。If reconstructed top/left reference samples are available, the reconstructed reference samples are copied (620) to the reference sample buffer. After the reference sample replacement process, intra-frame sample prediction is performed (640). Then, depending on the current CU size and prediction mode, the reference samples are filtered using a specified filter.
幀內樣本預測包含基於參考樣本預測目標CU之像素。存在不同的預測模式。平面及DC預測模式用以預測平滑且逐漸改變之區域,其中角度(定義為在順時鐘方向上自45度至−135度之角度)預測模式用以擷取不同方向結構。對於方形區塊,HEVC支援33個方向預測模式,其索引編號係2至34。此等預測模式對應於不同預測方向,如圖7A中所繪示。圖中的數字表示與對應方向相關聯的預測模式索引。模式2至17指示水平預測(H-26至H+32),而模式18至34指示垂直預測(V-32至V+32)。Intra-frame sample prediction involves predicting the pixels of the target CU based on reference samples. There are different prediction modes. Planar and DC prediction modes are used to predict smooth and gradually changing areas, where angular (defined as angles from 45 degrees to −135 degrees in the clockwise direction) prediction modes are used to capture different directional structures. For square blocks, HEVC supports 33 directional prediction modes, which are indexed from 2 to 34. These prediction modes correspond to different prediction directions, as shown in Figure 7A. The numbers in the figure represent the prediction mode index associated with the corresponding direction. Modes 2 to 17 indicate horizontal prediction (H-26 to H+32), while modes 18 to 34 indicate vertical prediction (V-32 to V+32).
在VVC中,存在65個角度預測模式,其等對應於在HEVC中定義之33個角度方向,且另32個方向各自對應於在相鄰對之中間的方向,如圖7B所繪示。對於方形區塊,小於34的模式指示水平預測,大於34的模式指示垂直預測。In VVC, there are 65 angular prediction modes, which correspond to the 33 angular directions defined in HEVC, and the other 32 directions each correspond to the direction in the middle of the adjacent pair, as shown in Figure 7B. For a square block, a mode less than 34 indicates horizontal prediction, and a mode greater than 34 indicates vertical prediction.
如上文所提及,角度方向可區分為垂直或水平。如圖7C所繪示,水平方向上的預測模式僅使用左方參考樣本,或一些左方及一些上方參考樣本。類似地,垂直方向上的預測模式僅使用上方參考樣本,或一些上方及一些左方參考樣本。水平正方向僅使用左方參考樣本以用於預測。類似地,垂直正方向僅使用上方參考樣本以用於預測。負水平及垂直方向使用左方及上方兩者的參考樣本以用於預測。As mentioned above, the angular direction can be distinguished as vertical or horizontal. As shown in Figure 7C, the prediction mode in the horizontal direction uses only the left reference samples, or some left and some top reference samples. Similarly, the prediction mode in the vertical direction uses only the top reference samples, or some top and some left reference samples. The positive horizontal direction uses only the left reference samples for prediction. Similarly, the positive vertical direction uses only the top reference samples for prediction. Negative horizontal and vertical directions use reference samples from both the left and top for prediction.
在VVC中,對於非方形區塊,未允許的常規方向幀內預測模式係以廣角幀內預測模式取代,如圖8A、圖8B、及圖8C所繪示。表1列出用於不同縱橫比的經置換幀內模式及經添加廣角模式。應注意,在表1中包括32之區塊比,但實際上不能使用,因為分割不允許W/H=32或H/W=32。在圖9中,虛線指示廣角幀內預測模式(Wide Angle Intra Prediction Mode, WAIP)。注意到,在ECM中,將圖9中呈現之索引-1至-14重新映射以變成從1至-12,使得角度模式索引是連續的。模式-15(經重新映射至-13)及模式81亦不存在於圖9中,因為沒有可使用其等之區塊大小,但該等模式由參考軟體處理。
表1
對於給定角度預測模式,將參考陣列上之預測器樣本沿著目標PU內之對應方向複製。一些預測器樣本可具有整數位置,在此情況下,其等與對應的參考樣本匹配;其他預測器之位置將具有分數部分,該等分數部分指示其等之位置將落在兩個參考樣本之間。在後一種情況下,使用最接近的參考樣本來內插預測器樣本(預測樣本的後處理)。在HEVC中,執行兩個最接近參考樣本之線性內插,以計算預測器樣本值。在VVC中,為了內插預測器樣本,使用取決於幀內模式方向而選擇的4抽頭濾波器fT[]。For a given angular prediction mode, the predictor samples on the reference array are copied along the corresponding direction within the target PU. Some predictor samples may have integer positions, in which case they match the corresponding reference samples; other predictor positions will have fractional parts indicating that their positions will fall between two reference samples. In the latter case, the closest reference samples are used to interpolate the predictor samples (post-processing of the prediction samples). In HEVC, linear interpolation of the two closest reference samples is performed to calculate the predictor sample values. In VVC, to interpolate the predictor samples, a 4-tap filter fT[] is used, which is selected depending on the intra-frame mode direction.
除了方向模式之外,DC模式以L形樣本的平均(除了使用較長側的參考樣本的平均之矩形CU之外)填滿預測,且平面模式在空間上內插參考樣本,如圖10所繪示。 幀內預測模式編碼 In addition to the directional mode, the DC mode fills the prediction with the average of L-shaped samples (except for the rectangular CU which uses the average of the longer side reference samples), and the planar mode spatially interpolates the reference samples as shown in Figure 10. Intra-frame prediction mode coding
由於存在多個可用幀內預測模式,因此解碼器需要模式資訊以形成用於經幀內編碼CU的預測。編碼器使用一或多個最有可能模式(Most Probable Mode, MPM)組來編碼模式資訊。例如,ECM-5.0(增強型壓縮模型5.0)使用第一MPM列表(具有6個MPM)及次要MPM列表(具有16個MPM)。該第一MPM列表係藉由基於在該目前亮度編碼區塊之後所使用之幀內預測模式索引依序添加候選內預測模式索引而建構,其中第一MPM索引被保留用於平面模式。所添加之相鄰索引係左鄰、上方者、左下方、右上方、及左上方。Since there are multiple available intra prediction modes, the decoder needs mode information to form a prediction for an intra-coded CU. The encoder encodes the mode information using one or more Most Probable Mode (MPM) groups. For example, ECM-5.0 (Enhanced Compression Model 5.0) uses a first MPM list (with 6 MPMs) and a secondary MPM list (with 16 MPMs). The first MPM list is constructed by adding candidate intra prediction mode indices in sequence based on the intra prediction mode index used after the current brightness coding block, where the first MPM index is reserved for planar mode. The neighboring indices added are left neighbor, above, bottom left, top right, and top left.
次要MPM列表係藉由以下來建構:首先添加目前亮度編碼區塊之第一及第二DIMD(解碼器側幀內模式衍生(Decoder-side Intra Mode Derivation))模式之索引;接著以無冗餘模式索引存在於MPM列表中(既不存在於主要MPM列表中,亦不存在於次要列表中)之方式添加第一角度MPM之遞增及遞減索引(mpm[1]+1、mpm[1]-1、mpm[1]+2、mpm[1]-2、mpm[1]+3、mpm[1]-3、mpm[1]+4、mpm[1]-4、mpm[2]+1、mpm[2]-1、mpm[2]+2、mpm[2]-2、mpm[2]+3、mpm[2]-3、mpm[2]+4、mpm[2]-4等)。若經選擇幀內預測模式不屬於第一及次要MPM列表,則使用用於45個符號之截斷二進位編碼來編碼剩餘的幀內預測模式(Intra Prediction Mode, IPM)。The secondary MPM list is constructed by first adding the indices of the first and second DIMD (Decoder-side Intra Mode Derivation) modes of the current luma coding block; then adding the increasing and decreasing indices of the first angle MPM (mpm[1]+1, mpm[1]-1, mpm[1]+2, mpm[1]-2, mpm[1]+3, mpm[1]-3, mpm[1]+4, mpm[1]-4, mpm[2]+1, mpm[2]-1, mpm[2]+2, mpm[2]-2, mpm[2]+3, mpm[2]-3, mpm[2]+4, mpm[2]-4, etc.) in such a way that no redundant mode indices exist in the MPM list (neither in the primary MPM list nor in the secondary list). If the selected intra prediction mode does not belong to the first and secondary MPM lists, the remaining intra prediction modes (IPM) are encoded using truncated binary coding for 45 symbols.
在一個實施例中,建議修改幀內預測程序,使得不僅基於區塊縱橫比,但亦基於參考樣本之可用性而選擇廣角幀內預測模式。因此,通常將多半使用填充參考樣本的IPM將不被允許,而通常不被允許但實際上將使用非填充參考樣本的IPM則將被允許。接著修改傳訊,以使用該等改變。此可如此進行:藉由將使用此變化之上下文添加至經CABAC編碼的位元(bin),或者當模式總數目與原始67個索引不同時,藉由改變碼以處理經添加模式或經移除模式。In one embodiment, it is proposed to modify the intra-frame prediction process so that the wide-angle intra-frame prediction mode is selected not only based on the block aspect ratio, but also based on the availability of reference samples. Therefore, IPMs that would normally use mostly padded reference samples will not be allowed, while IPMs that would normally not be allowed but would actually use non-padded reference samples will be allowed. The signaling is then modified to use these changes. This can be done by adding a context that uses this change to the CABAC encoded bits (bins), or by changing the code to handle added modes or removed modes when the total number of modes is different from the original 67 indices.
亦修改幀內模式之傳播,以傳播更準確的模式值,並處理相鄰幀內模式或其180°之對應者皆不可用於目前區塊的情況。 基於相鄰參考樣本之可用性而選擇可用幀內模式 The propagation of intra-frame modes is also modified to propagate more accurate mode values and to handle the case where neither the neighboring intra-frame modes nor their 180° counterparts are available for the current block. Available intra-frame modes are selected based on the availability of neighboring reference samples .
圖11根據一實施例繪示哪些樣本被測試可用性,以知道哪些IPM使用填充參考樣本。實線(1110, 1115)指示ECM-6.0針對具有W/H比為4之PU所使用的角度IPM(模式12至76)。虛線(1120, 1125)指示ECM-6.0針對具有W/H比為2之PU所使用的模式(模式8至72)。點線(1130, 1135)指示ECM-6.0針對具有W/H比為1之PU所使用的模式(模式2至66)。FIG. 11 illustrates which samples are tested for availability to know which IPMs use fill reference samples according to one embodiment. Solid lines (1110, 1115) indicate the angle IPMs (modes 12 to 76) used by ECM-6.0 for a PU with a W/H ratio of 4. Dashed lines (1120, 1125) indicate the modes (modes 8 to 72) used by ECM-6.0 for a PU with a W/H ratio of 2. Dotted lines (1130, 1135) indicate the modes (modes 2 to 66) used by ECM-6.0 for a PU with a W/H ratio of 1.
如圖11所繪示,若一組模式希望僅使用可用參考樣本以用於幀內預測,則可能要判定用於特定區塊寬度/高度比的此組模式需要哪些樣本可用。例如,如圖11所示,若參考樣本A不可用(則A之左側的樣本可能亦不可用),則模式73至76中之至少一個模式(亦即,用於W/H = 4但不用於W/H < 4的模式)將使用至少一個填充樣本。若參考樣本B不可用(則A與B之間的所有樣本皆不可用),則所有模式73至76將使用至少一個填充參考樣本。As shown in FIG11 , if a set of modes wishes to use only available reference samples for intra-frame prediction, it may be necessary to determine which samples are required to be available for this set of modes for a particular block width/height ratio. For example, as shown in FIG11 , if reference sample A is not available (then the samples to the left of A may also not be available), at least one mode among modes 73 to 76 (i.e., the mode for W/H = 4 but not for W/H < 4) will use at least one padding sample. If reference sample B is not available (then all samples between A and B are not available), all modes 73 to 76 will use at least one padding reference sample.
當用於一幀內預測模式的參考樣本被判定為不可用時,吾人可決定移除此幀內預測模式,因為該預測將具有較差品質。此外,若用於此等幀內預測模式的參考樣本皆可用時,吾人可檢查是否吾人可添加回一些其他幀內預測模式。應注意,吾人所提出添加回之一些幀內預測模式係WAIP所移除的模式。但由於此等幀內預測模式使用重建參考樣本(而非填充參考樣本),故預測品質仍可更好。例如,如圖11所繪示,若X可用(則X上方的所有參考樣本可用),則模式8至11(亦即,用於W/H = 2但不用於W/H > 2的模式)將使用非填充參考樣本,且可經添加。若Y可用(則Y上方的所有參考樣本可用),則模式2至7(亦即,用於W/H = 1但不用於W/H > 1的模式)將使用非填充參考樣本,且可經添加。請注意,吾人可在不添加回其他幀內預測模式之情況下執行幀內模式移除,或在不移除幀內模式之情況下添加一些幀內預測模式。When the reference samples used for an intra-frame prediction mode are determined to be unavailable, we can decide to remove this intra-frame prediction mode because the prediction will have poor quality. In addition, if the reference samples used for these intra-frame prediction modes are all available, we can check whether we can add back some other intra-frame prediction modes. It should be noted that some of the intra-frame prediction modes we propose to add back are modes removed by WAIP. But because these intra-frame prediction modes use reconstructed reference samples (rather than filled reference samples), the prediction quality can still be better. For example, as shown in Figure 11, if X is available (then all reference samples above X are available), then modes 8 to 11 (i.e., modes used for W/H = 2 but not for W/H > 2) will use non-filled reference samples and can be added. If Y is available (then all reference samples above Y are available), then modes 2 to 7 (i.e., modes for W/H = 1 but not for W/H > 1) will use non-filled reference samples and can be added. Note that we can perform intra-frame mode removal without adding back other intra-frame prediction modes, or add some intra-frame prediction modes without removing intra-frame modes.
吾人亦可使用表1中列出的幀內預測模式,以用於移除/添加幀內預測模式。在一個實施例中,所允許之模式係基於經設計用於另一區塊大小的一組模式。例如,取決於可用相鄰參考樣本,方形區塊可使用經設計用於W/H = 2的模式,如表1所示。此處應注意,在所得組幀內模式中之一些幀內模式可仍使用填充參考樣本,但一般比原始組幀內預測模式使用較少的填充樣本。在下文中,詳細描述若干實例。We can also use the intra-frame prediction modes listed in Table 1 for removing/adding intra-frame prediction modes. In one embodiment, the allowed modes are based on a set of modes designed for another block size. For example, depending on the available adjacent reference samples, a square block may use a mode designed for W/H = 2, as shown in Table 1. It should be noted here that some of the intra-frame modes in the resulting intra-frame patterns may still use padding reference samples, but generally use fewer padding samples than the original intra-frame prediction mode. In the following, several examples are described in detail.
使ref[0; 0]成為要編碼/解碼的PU之左上方樣本的位置,使D成為mrlIdx給定之參考線的距離,且使W及H成為目前PU之寬度及高度。 - 若W > H, ○ 若從ref[-1-D; -1-D]上至ref[2*W+W*D/H-1; -1-D]的上方樣本可用(亦即,非填充樣本),則可使用針對縱橫比W/H界定之該組模式,例如,如表1中所描述之在ECM-6.0中使用的模式[E001]; ○ 否則(若該等樣本中之至少一者不可用),若從ref[-1-D; -1-D]上至ref[-1-D; H+W/2 +H*D/(W/2)- 1]的所有左側樣本可用,則可使用針對縱橫比(W/2)/H界定之該組模式。否則,(若該等左側樣本中之至少一者亦不可用),則可使用針對縱橫比W/H所界定之該組模式。[E002] - 否則,若W < H, ○ 若從ref[-1-D; -1-D]上至ref[-1-D; 2*H+H*D/W-1]的左方樣本可用(亦即,非填充樣本),則可使用針對縱橫比W/H界定之該組模式,例如,在ECM-6.0中使用的模式。[E003] ○ 否則(若該等樣本中之至少一者不可用),若從ref[-1-D; -1-D]上至ref[W+H/2+W*D/(H/2)-1;-1-D]的所有上方樣本可用,則可使用針對縱橫比W/(H/2)界定之該組模式。否則,(若該等上方樣本中之至少一者亦不可用),則可使用針對縱橫比W/H所界定之該組模式[E004]。 Let ref[0; 0] be the position of the top left sample of the PU to be encoded/decoded, let D be the distance of the reference line given by mrlIdx, and let W and H be the width and height of the current PU. - If W > H, ○ If the upper samples from ref[-1-D; -1-D] up to ref[2*W+W*D/H-1; -1-D] are available (i.e., non-filling samples), the set of patterns defined for aspect ratio W/H can be used, for example, pattern [E001] used in ECM-6.0 as described in Table 1; ○ Otherwise (if at least one of these samples is not available), if all left samples from ref[-1-D; -1-D] up to ref[-1-D; H+W/2 +H*D/(W/2)- 1] are available, the set of patterns defined for aspect ratio (W/2)/H can be used. Otherwise, (if at least one of these left samples is also not available), the set of patterns defined for aspect ratio W/H can be used. [E002] - Otherwise, if W < H, ○ If the left samples from ref[-1-D; -1-D] up to ref[-1-D; 2*H+H*D/W-1] are available (i.e., non-filling samples), the set of patterns defined for aspect ratio W/H can be used, for example, the pattern used in ECM-6.0. [E003] ○ Otherwise (if at least one of these samples is not available), if all upper samples from ref[-1-D; -1-D] up to ref[W+H/2+W*D/(H/2)-1;-1-D] are available, the set of patterns defined for aspect ratio W/(H/2) can be used. Otherwise (if at least one of the upper samples is also unavailable), the set of modes defined for the aspect ratio W/H can be used [E004].
E001及E003中之條件檢查所有樣本是否可用於WAIP模式。若至少一個樣本不可用,則基於後續條件,可能不使用常規ECM模式(亦即,如表1中所定義之模式)。在一些實施例中,此第一條件為更保守,且只有當其使用之樣本皆不可用時,才不使用常規ECM模式。在此類實施例中,E001被寫為: ○ 若從ref[W+W/2+(W/2)*D/H; -1-D]上至ref[2*W-1+W*D/H; -1-D]的至少一個上方樣本可用(亦即,非填充樣本),則可使用針對縱橫比W/H界定之該組模式。 E003被寫為 ○ 若從ref[-1-D; H+H/2+(H/2)*D/W]上至ref[-1-D; 2*H-1+H*D/W]的至少一個左方樣本可用(亦即,非填充樣本),則可使用針對縱橫比W/H界定之該組模式。 The conditions in E001 and E003 check if all samples are available for WAIP mode. If at least one sample is not available, then based on the subsequent conditions, the conventional ECM mode (i.e., the mode defined in Table 1) may not be used. In some embodiments, this first condition is more conservative and only does not use the conventional ECM mode if none of the samples it uses are available. In such embodiments, E001 is written as: ○ If at least one upper sample from ref[W+W/2+(W/2)*D/H; -1-D] up to ref[2*W-1+W*D/H; -1-D] is available (i.e., non-filling sample), then the set of modes defined for the aspect ratio W/H may be used. E003 is written as ○ If at least one left sample from ref[-1-D; H+H/2+(H/2)*D/W] up to ref[-1-D; 2*H-1+H*D/W] is available (i.e., non-filling sample), then the set of modes defined for aspect ratio W/H can be used.
條件E002及E004檢查樣本是否可用於通常不與ECM使用之模式,且只有當所有樣本可用時,才會添加該等模式。在一些實施例中,放寬此條件,且若樣本中之至少一者可用,則添加該等模式。在此類實施例中,E002被寫為: ○ 否則,若從ref[-1-D; 2*H+H*D/W]上至ref[-1-D; H+W/2 +H*D/(W/2)- 1]的至少一個左側樣本可用,則可使用針對縱橫比(W/2)/H界定之該組模式。否則,(若該等樣本皆不可用),則可使用針對縱橫比W/H界定之該組模式。 E004被寫為 ○ 否則,若從ref[2*W+W*D/H; -1-D]上至ref[W+H/2-1+W*D/(H/2);-1-D]的至少一個上方樣本可用,則可使用針對縱橫比W/(H/2)界定之該組模式。否則,(若該等樣本皆不可用),則可使用針對縱橫比W/H界定之該組模式。 Conditions E002 and E004 check if samples are available for modes that are not normally used with ECM, and only if all samples are available, the modes are added. In some embodiments, this condition is relaxed, and if at least one of the samples is available, the modes are added. In such embodiments, E002 is written as: ○ Otherwise, if at least one left sample from ref[-1-D; 2*H+H*D/W] up to ref[-1-D; H+W/2 +H*D/(W/2)- 1] is available, the set of modes defined for aspect ratio (W/2)/H may be used. Otherwise, (if none of the samples are available), the set of modes defined for aspect ratio W/H may be used. E004 is written as ○ Otherwise, if at least one upper sample from ref[2*W+W*D/H; -1-D] up to ref[W+H/2-1+W*D/(H/2);-1-D] is available, then the set of patterns defined for aspect ratio W/(H/2) can be used. Otherwise, (if none of these samples are available), then the set of patterns defined for aspect ratio W/H can be used.
一些實施例使用該等條件之組合。一些實施例使用不同條件,取決於(但不限於)區塊大小、序列大小、QP、或相鄰資訊。Some embodiments use a combination of these conditions. Some embodiments use different conditions depending on (but not limited to) block size, sequence size, QP, or neighbor information.
在一些實施例中,添加更多模式。在此類實施例中,當用於W/H之該組ECM模式由用於(W/2)/H(resp. W/(H/2))之該組模式置換時,則以當作區塊的寬度係W/2(resp. 高度係H/2)的方式再次執行測試E001至E004。若選擇一新組模式,則此可再次執行,直到較佳的是不改變要使用的該組模式為止。In some embodiments, more patterns are added. In such embodiments, when the set of ECM patterns for W/H is replaced by the set of patterns for (W/2)/H (resp. W/(H/2)), then tests E001 to E004 are performed again as if the width of the block is W/2 (resp. the height is H/2). If a new set of patterns is selected, this can be performed again until it is preferred not to change the set of patterns to be used.
在一些實施例中,用於建構MPM列表的相鄰CU之現有可用性檢查可用以判定是否應添加模式。例如,在位置1及2處實行對於參考樣本之可用性的測試,接著在位置3及4實行該等測試,如圖19中所描述。在此情況下,條件[E001]至[E004]不取決於W是否大於H。在一實例中,將添加更多模式且不移除任何模式,當不需要傳訊時,此可特別有用,例如,若該等模式係添加以用於TIMD或DIMD。In some embodiments, an existing availability check of neighboring CUs used to construct the MPM list can be used to determine whether a mode should be added. For example, a test for the availability of reference samples is performed at positions 1 and 2, followed by those tests at positions 3 and 4, as described in FIG. 19 . In this case, conditions [E001] to [E004] do not depend on whether W is greater than H. In one example, more modes will be added and no modes will be removed, which can be particularly useful when no signaling is required, for example, if the modes are added for use with TIMD or DIMD.
在一個實例中,若從ref[-1; -1]上至ref[W; -1]的上方樣本可用(亦即,上至位置1的非填充樣本),則除了已允許用於此CU之模式以外,可使用如表1中所描述針對縱橫比2*W/H界定之所有模式。若上方樣本ref[2*W; -1]亦可用(亦即,非填充樣本),則除了已允許用於此CU之模式以外,亦可使用如表1中所描述針對縱橫比4*W/H界定之所有模式。若從ref[-1; -1]上至ref[-1; H]的左方樣本可用(亦即,上至位置2的非填充樣本),則除了已允許用於此CU之模式以外,可使用如表1中所描述針對縱橫比W/(H*2)界定之所有模式。 若上方樣本ref[-1; 2*H]亦可用(亦即,非填充樣本),則除了已允許用於此CU之模式以外,亦可使用如表1中所描述針對縱橫比W/(H*4)界定之所有模式。 幀內模式的傳訊 In one example, if the upper sample from ref[-1; -1] up to ref[W; -1] is available (i.e., non-padded sample up to position 1), then all modes defined as described in Table 1 for aspect ratio 2*W/H may be used in addition to the modes already allowed for this CU. If the upper sample ref[2*W; -1] is also available (i.e., non-padded sample), then all modes defined as described in Table 1 for aspect ratio 4*W/H may be used in addition to the modes already allowed for this CU. If the left sample from ref[-1; -1] up to ref[-1; H] is available (i.e., non-padded sample up to position 2), then all modes defined as described in Table 1 for aspect ratio W/(H*2) may be used in addition to the modes already allowed for this CU. If the upper sample ref[-1; 2*H] is also available (i.e., non-padding sample), then in addition to the modes already allowed for this CU, all modes defined for aspect ratio W/(H*4) as described in Table 1 may be used. Signaling of intra-frame modes
在一些實施例中,將可用IPM的數目一直維持在67,其具有固定數目之65個角度IPM。在此類實施例中,不需要傳訊改變。在其他實施例中,可修改用於與幀內模式傳訊相關聯的語法元素之經CABAC編碼的位元(bin)的上下文(例如,主要MPM旗標、次要MPM旗標、或第一MPM索引旗標),以考慮可用模式。例如,取決於下列條件,將選擇三個上下文模型索引中之一者: 1) 使用之IPM與目前在ECM-6.0中之者相同。在具有W/H = 1之PU上,例如,彼等將是角度模式2至66以及平面及DC。 2) 使用之IPM改變,以使用通常可用於具有較大W/H比之模式的IPM。在具有W/H = 1之PU上,例如,此將意指使用自I至I + 64之角度模式(其中I > 2)以及平面及DC。 3) 使用之IPM改變,以使用通常可用於具有較小W/H比之模式的IPM。在具有W/H = 1之PU上,例如,此將意指使用自I至I + 64之角度模式(其中I < 2)以及平面及DC。 In some embodiments, the number of available IPMs is maintained at 67, with a fixed number of 65 angular IPMs. In such embodiments, no signaling change is required. In other embodiments, the context of CABAC-encoded bins for syntax elements associated with intra-frame mode signaling (e.g., primary MPM flag, secondary MPM flag, or first MPM index flag) may be modified to take into account available modes. For example, one of three context model indices will be selected depending on the following conditions: 1) The IPMs used are the same as those currently in ECM-6.0. On a PU with W/H = 1, for example, those would be angular modes 2 to 66 as well as planar and DC. 2) The IPMs used are changed to use IPMs that are typically available for modes with larger W/H ratios. On a PU with W/H = 1, for example, this would mean using angular modes from I to I + 64 (where I > 2) as well as planar and DC. 3) The used IPM is changed to use an IPM that is normally available for modes with smaller W/H ratios. On a PU with W/H = 1, for example, this would mean using angular modes from I to I + 64 (where I < 2) as well as planar and DC.
在一些實施例中,根據VTM規格文字中之表128,旗標intra_luma_mpm_flag(其用以指定用於目前亮度CB中之幀內模式是否在MPM列表中)具有如下語法改變:
上下文模型初始化如下,如VTM規格文字中之表70所定義。
表70 –針對intra_luma_mp_flag之ctxIdx的initValue及shiftIdx的規格
在一些實施例中,可取決於下列條件而定義三個上下文: 1) 使用之IPM與目前在ECM-6.0中之者相同。在具有W/H = 1之PU上,例如,彼等將是角度模式2至66以及平面及DC。 2) 使用之IPM改變,以使用通常可用於具有較大abs(log2(W/H))比之模式的IPM。在具有W/H ≥ 1之PU上(resp. W/H ≤ 1),此將意指使用自I至I + 64之角度模式(其中I > J(resp. I < J),J係通常可用於此PU上之最小角度模式)以及平面及DC。 3) 使用之IPM改變,以使用通常可用於具有較大abs(log2(W/H))比之模式的IPM。在具有W/H > 1之PU上(resp. W/H < 1),此將意指使用自I至I+64之角度模式(其中I < J(resp. I > J),J係通常可用於此PU上之最小角度模式)以及平面及DC。 In some embodiments, three contexts may be defined depending on the following conditions: 1) The IPMs used are the same as those currently in ECM-6.0. On a PU with W/H = 1, for example, they would be angle modes 2 to 66 as well as planar and DC. 2) The IPMs used are changed to use an IPM that is typically available for modes with larger abs(log2(W/H)) ratios. On a PU with W/H ≥ 1 (resp. W/H ≤ 1), this would mean using angle modes from I to I + 64 (where I > J (resp. I < J), J being the smallest angle mode typically available on this PU) as well as planar and DC. 3) The IPMs used are changed to use an IPM that is typically available for modes with larger abs(log2(W/H)) ratios. On a PU with W/H > 1 (resp. W/H < 1), this would mean using angle modes from I to I+64 (where I < J (resp. I > J), J being the smallest angle mode typically available on this PU) as well as planar and DC.
在一些實施例中,可將先前提及的規則減少至僅使用2個CABAC上下文(亦即,取決於該等模式是否改變)。在一些實施例中,該等規則可與其他資訊(諸如但不限於PU大小、序列大小、QP、所用之預測工具)組合。In some embodiments, the previously mentioned rules may be reduced to using only 2 CABAC contexts (i.e., depending on whether the modes are changed). In some embodiments, the rules may be combined with other information such as, but not limited to, PU size, sequence size, QP, prediction tool used.
在一些實施例中,可用模式的數目隨PU改變而有所不同,且因此傳訊會變化以考慮不同數目的模式。在一個實施例中,第一MPM列表及次要MPM列表保持要用以編碼之其原始數目的旗標,且使用用於N-22個符號之截斷二進位編碼來編碼剩餘的IPM,其中N係用於此PU之可用模式的數目(其中N = 45意指使用如在ECM-6.0中之相同傳訊,N > 45意指比在ECM-6.0中有更多可用模式,且N < 45意指比在ECM-6.0中有更少可用模式)。In some embodiments, the number of available modes varies from PU to PU, and therefore the signaling changes to account for the different number of modes. In one embodiment, the first MPM list and the secondary MPM list keep the flags of their original number to be encoded, and the remaining IPMs are encoded using truncated binary encoding for N-22 symbols, where N is the number of available modes for this PU (where N = 45 means using the same signaling as in ECM-6.0, N > 45 means there are more available modes than in ECM-6.0, and N < 45 means there are fewer available modes than in ECM-6.0).
在一些實施例中,對於IPM之可用性的限制係限於TIMD(基於模板之幀內模式衍生(Template-based Intra Mode Derivation))及/或DIMD及/或其他解碼器側工具,以避免需要傳訊之任何變化。在此類實施例中,TIMD搜尋(resp. DIMD搜尋,及/或其他解碼器側工具)可限於被視為可用的IPM。In some embodiments, the availability of IPMs is limited to TIMD (Template-based Intra Mode Derivation) and/or DIMD and/or other decoder-side tools to avoid any changes that need to be signaled. In such embodiments, TIMD searches (resp. DIMD searches, and/or other decoder-side tools) may be limited to IPMs that are considered available.
在TIMD可使用額外廣角度之實施例中,僅添加模式之子集以減少搜尋之複雜度增加。額外模式可包括在搜尋之第一部分中,例如,如下文所描述。In embodiments where the TIMD can use an extra wide angle, only a subset of patterns are added to reduce the increase in complexity of the search. The extra patterns can be included in the first part of the search, for example, as described below.
使用用於131個模式之TIMD之值(例如,來自表1,自8至72之針對W/H=2的角度模式,其對應於minOrg =13且maxOrg=141),使W及H成為要編碼的區塊之寬度及高度,使minOrg及maxOrg成為可用於目前區塊之最小及最高角度幀內模式值,且使newMin及newMax成為可用於目前區塊之新的最小及最高角度幀內模式值,例如,其等係從E001至E004判定(例如,若所有相鄰樣本可用於具有W/H=2之區塊,則按照表1添加自-4至7之模式及自73至78之模式,意指使用用於131個模式之TIMD之值,newMin =-9且newMax=153)。以N(例如,N=5)之步階大小,從newMin+1開始上至newMax,若模式不在minOrg與maxOrg之間,則將其添加至TIMD搜尋之第一部分;否則,不添加該模式。Using the values of TIMD for 131 modes (e.g., from Table 1, angular modes from 8 to 72 for W/H=2, which correspond to minOrg = 13 and maxOrg = 141), let W and H be the width and height of the block to be encoded, let minOrg and maxOrg be the minimum and maximum angular intra-frame mode values available for the current block, and let newMin and newMax be the new minimum and maximum angular intra-frame mode values available for the current block, for example, which are determined from E001 to E004 (e.g., if all neighboring samples are available for blocks with W/H=2, then add modes from -4 to 7 and modes from 73 to 78 according to Table 1, which means using the values of TIMD for 131 modes, newMin = -9 and newMax = 153). With a step size of N (e.g., N=5), starting from newMin+1 up to newMax, if the pattern is not between minOrg and maxOrg, it is added to the first part of the TIMD search; otherwise, the pattern is not added.
亦可選擇總是將特定模式添加至搜尋。舉例而言,可選擇總是將newMin+1、orgMin-1、orgMax+1、及newMax+1添加至搜尋之第一部分。該等模式可係在搜尋中添加的唯一者,以減少設計的複雜度;或者其可經添加在已添加之模式之上,以最大化壓縮增益。TIMD搜索之第二部分(精細化部分)可如在ECM中進行。You can also choose to always add certain patterns to the search. For example, you can choose to always add newMin+1, orgMin-1, orgMax+1, and newMax+1 to the first part of the search. These patterns can be the only ones added in the search to reduce the complexity of the design; or they can be added on top of patterns that have already been added to maximize compression gains. The second part of the TIMD search (the refinement part) can be done as in ECM.
在一些實施例中,在解碼IPM索引之前,若發現一些額外模式可用,則將額外旗標解碼以指示是否使用允許用於目前區塊大小的原始67個模式,或是否使用N個額外模式之一者。若使用N個額外模式之一者,則使用用於N個符號之截斷二進位編碼來解碼一額外索引。 幀內方向的傳播 In some embodiments, before decoding the IPM index, if some additional modes are found to be available, an additional flag is decoded to indicate whether to use the original 67 modes allowed for the current block size, or whether to use one of the N additional modes. If one of the N additional modes is used, an additional index is decoded using truncated binary coding for N symbols. Propagation in the Intra-Frame Direction
在ECM中,若左側之相鄰區塊具有W/H = 2且使用角度模式67以用於預測,則用以建構目前區塊之MPM列表的模式索引係2。然而,若目前亮度區塊係正方形,則索引2對應於角度模式2。因此,使用相鄰模式之模式索引以建構目前區塊之MPM列表可導致在MPM列表中添加實際上不會使用的模式,且因此不應被視為「最有可能」用以解碼目前亮度編碼區塊。此外,在ECM中,各索引可對應於兩個不同角度模式(例如,索引2係角度模式2或角度模式67,索引3係角度模式3或角度模式68等),但兩種不同模式並非180°相對。In ECM, if the neighboring block to the left has W/H = 2 and uses angle mode 67 for prediction, then the mode index used to construct the MPM list for the current block is 2. However, if the current luma block is square, then index 2 corresponds to angle mode 2. Therefore, using the mode index of the neighboring mode to construct the MPM list for the current block may result in adding modes to the MPM list that will not actually be used, and therefore should not be considered the "most likely" to be used to decode the current luma coded block. In addition, in ECM, each index may correspond to two different angle modes (e.g., index 2 is angle mode 2 or angle mode 67, index 3 is angle mode 3 or angle mode 68, etc.), but the two different modes are not 180° opposite.
兩種模式180°相對意謂其等預測相同的方向紋理(角度模式2及66皆預測45°的方向),但從不同的參考(角度模式2從左下方至右上方預測,而角度模式66從右上方至左下方預測)來預測。The two modes are 180° relative meaning that they predict the same directional texture (angle mode 2 and 66 both predict a 45° direction), but from different references (angle mode 2 predicts from lower left to upper right, while angle mode 66 predicts from upper right to lower left).
在一些實施例中,MPM列表之建立係由相鄰區塊所使用之實際模式而非使用之索引來進行。例如,當建構MPM列表及相鄰模式不可用時,模式由在180°下的對應模式取代,亦即,若模式IPM係在34以下,則模式由IPM + 64取代,否則模式由IPM - 64取代。在ECM上至ECM-6.0中,此總是可能的,因為總是存在180°角度模式的跨度。In some embodiments, the MPM list is built from the actual mode used by the neighboring blocks instead of the index used. For example, when building the MPM list and the neighboring mode is not available, the mode is replaced by the corresponding mode at 180°, that is, if the mode IPM is below 34, the mode is replaced by IPM + 64, otherwise the mode is replaced by IPM - 64. In ECM up to ECM-6.0, this is always possible because there is always a span of 180° angle modes.
在移除一些模式但不添加其他模式的編碼器或解碼器(例如在一些前述實施例中描述的編碼器或解碼器)中,情況可能並非如此。若在MPM列表建構期間,則應添加在目前亮度CB中不可用的模式,該模式由最接近之可用模式取代。在一些實施例中,選擇總是具有65個角度模式之跨度的模式,以確保任何角度皆可用,且總是可能以其180°之對應者來取代模式。 超出廣角幀內模式之外 This may not be the case in an encoder or decoder that removes some modes but does not add others (such as the encoders or decoders described in some of the aforementioned embodiments). If during MPM list construction a mode that is not available in the current luma CB should be added, it is replaced by the closest available mode. In some embodiments, a mode is chosen that always has a span of 65 angular modes to ensure that any angle is available and it is always possible to replace a mode with its 180° counterpart. Beyond wide-angle in-frame modes
基於相鄰經解碼參考樣本之可用性而選擇可用幀內預測模式可延伸至不再涉及表1之規則。此意指,針對給定 區塊,取決於其相鄰經解碼參考樣本之可用性,其用於其有效比率W/H之可用幀內預測模式組(參見表1)將不再由與其有效比率W/H接近之寬度與高度比相關聯的不同可用幀內預測模式組取代。替代地,對於給定 區塊的相鄰經解碼參考樣本之給定可用性,可移除給定數目之幀內預測模式。 The selection of available intra-frame prediction modes based on the availability of neighboring decoded reference samples can be extended to no longer involve the rules in Table 1. This means that for a given block, depending on the availability of its neighboring decoded reference samples, its available intra-frame prediction mode set for its effective ratio W/H (see Table 1) will no longer be replaced by a different available intra-frame prediction mode set associated with a width-to-height ratio close to its effective ratio W/H. Given the availability of neighboring decoded reference samples for a block, a given number of intra-frame prediction modes can be removed.
例如,可能地抑制幀內預測模式之規則可係如下。對於給定 區塊,若位於其右上側的 個經解碼參考樣本皆不可用,則最後 個正垂直幀內預測模式不被允許(例如, )。「最後」 個正垂直幀內預測模式係指具有相對於垂直軸之最大角度絕對值的 個正垂直幀內預測模式。根據ECM命名法,「最後」 個正垂直幀內預測模式係指具有最大索引的 個正垂直幀內預測模式。若位於左下側的H個經解碼參考樣本皆不可用,則前 個正水平幀內預測模式不被允許(例如, )。「前」 個正水平幀內預測模式係指具有相對於垂直軸之最大角度絕對值的 個正水平幀內預測模式。根據ECM命名法,「前」 個正水平幀內預測模式係指具有最小索引的 個正水平幀內預測模式。在廣角幀內預測之情況下,此等索引可採用負值。 For example, the rule that may suppress the intra-frame prediction mode may be as follows. block, if it is located on the upper right side If all decoded reference samples are unavailable, the last Positive vertical intraframe prediction modes are not allowed (e.g. )."finally" A positive vertical intra-frame prediction mode is one with the maximum absolute value of the angle relative to the vertical axis. positive vertical intra-frame prediction mode. According to ECM nomenclature, the "last" The positive vertical intra-frame prediction mode is the one with the largest index If the H decoded reference samples at the lower left are not available, the previous Positive horizontal intraframe prediction modes are not allowed (e.g. )."forward" A positive horizontal intra-frame prediction mode is one with the maximum absolute value of the angle relative to the vertical axis. According to ECM nomenclature, "front" The positive horizontal intra-frame prediction mode is the one with the smallest index positive horizontal intra-frame prediction mode. In case of wide-angle intra-frame prediction, these indices can take negative values.
作為一實例,在給定 亮度編碼區塊(CB)屬於在ECM-5.0中之一幀內切片之情況下,此規則可繪示在圖12中。對於在ECM-5.0中之一幀內切片內的此給定亮度CB (1201),從(1201)之分割歷史識別不允許的幀內預測模式。此處,W=16且H=8。索引0、1、2、及3指示用於編碼/解碼屬於從所考慮的亮度CTB之QT分裂產生的第一64×64亮度CB (1200)的前四個亮度CB之順序。 As an example, in a given In the case of a luma coding block (CB) belonging to an intra slice in ECM-5.0, this rule can be illustrated in FIG. 12. For this given luma CB (1201) within an intra slice in ECM-5.0, the disallowed intra prediction mode is identified from the segmentation history of (1201). Here, W=16 and H=8. The indices 0, 1, 2, and 3 indicate the order for encoding/decoding the first four luma CBs belonging to the first 64×64 luma CB (1200) generated from the QT splitting of the luma CTB under consideration.
在此實例中,必須注意到,對於此給定 亮度CB,在編碼時間下,在將其母亮度編碼樹區塊(Coding Tree Block, CTB)之分割的任何位元寫入至位元流之前(亦即,在將與其母亮度CTB內之幀內預測相關聯的任何位元寫入之前),可完全指定其相鄰經解碼參考樣本之可用性。對於此給定 亮度CB,在解碼時間下,在從位元流讀取其母亮度CTB之分割的位元之後(亦即,在讀取與此母亮度CTB內之幀內預測相關聯的任何位元之前),即可完全指定其相鄰經解碼參考樣本之可用性。在以下實例中,在ECM-5.0中,將CTU大小設定成 (如在VVC中),以得到可與其在VVC中之版本更加相當的實例。 In this example, it must be noted that for this given A luma CB can fully specify the availability of its neighboring decoded reference samples at coding time before any bits of the partition of its parent luma Coding Tree Block (CTB) are written to the bitstream (i.e., before any bits associated with intra-frame prediction within its parent luma CTB are written). A luma CB can fully specify the availability of its neighboring decoded reference samples at decoding time after reading the bits of its parent luma CTB segmentation from the bitstream (i.e., before reading any bits associated with intraframe prediction within this parent luma CTB). In the following example, in ECM-5.0, the CTU size is set to (as in VVC) to obtain an instance that is more equivalent to its version in VVC.
在編碼器側上,將給定 亮度CTB經由四元樹(Quad-Tree, QT)分裂成四個 亮度CB。例如,考慮第一 亮度CB (1200)。使吾人藉由(typeSplit, idxChild)來特徵化在給定深度下之分裂,「typeSplit」係指{四元樹(QT)、二元樹水平(Binary-Tree Horizontal, BT_H)、二元樹垂直(Binary-Tree Vertical, BT_V)、三元樹水平(Ternary-Tree Horizontal, TT_H)、三元樹垂直(TT_V)}中的分裂類型,且「idxChild」表示由此分裂所產生的所考慮子CB之編碼順序的索引。接著,所考慮亮度CB (1201)之分割完全由其分裂樹{(QT, 0),(QT, 0),(BT_V, 1),(TT_H, 2)}描述,如圖12A所示。從此分裂樹看出,在(1201)之右上側的 個經解碼參考皆不可用且在(1201)之左下側的 個經解碼參考樣本皆不可用的事實變得明顯。 On the encoder side, the given The brightness CTB is split into four parts by a quad-tree (QT). Brightness CB. For example, consider the first Luma CB (1200). Let us characterize the split at a given depth by (typeSplit, idxChild), "typeSplit" refers to the type of split in {Quad Tree (QT), Binary-Tree Horizontal (BT_H), Binary-Tree Vertical (BT_V), Ternary-Tree Horizontal (TT_H), Ternary-Tree Vertical (TT_V)}, and "idxChild" represents the index of the coding order of the considered child CB resulting from this split. Then, the partition of the considered luma CB (1201) is completely described by its split tree {(QT, 0), (QT, 0), (BT_V, 1), (TT_H, 2)}, as shown in Figure 12A. From this split tree, we can see that the The decoded references are not available and the It becomes apparent that none of the decoded reference samples are available.
不可用經解碼參考樣本之此等兩個部分係概括為圖12B中的(1202)。例如,此可藉由分別附接至(1201)之在0處的旗標「is_above_right_full」及在0處的旗標「is_below_left_full」來指示。最後 個正垂直幀內預測模式不被允許,(1204)及(1203)分別表示在此組不允許模式中之最小索引的幀內預測模式之方向及最大索引的幀內預測模式之方向。前 個正水平幀內預測模式不被允許,(1205)及(1206)分別表示在此組不允許模式中之最小索引的幀內預測模式之方向及最大索引的幀內預測模式之方向,如圖12C所示。 These two parts of unavailable decoded reference samples are summarized as (1202) in Figure 12B. For example, this can be indicated by the flags "is_above_right_full" at 0 and "is_below_left_full" at 0 attached to (1201), respectively. The positive vertical intra-frame prediction mode is not allowed, (1204) and (1203) respectively represent the direction of the intra-frame prediction mode with the smallest index and the direction of the intra-frame prediction mode with the largest index in this set of not allowed modes. A positive horizontal intra-frame prediction mode is not allowed, (1205) and (1206) respectively represent the direction of the intra-frame prediction mode with the smallest index and the direction of the intra-frame prediction mode with the largest index in this set of not allowed modes, as shown in FIG. 12C.
最後,經選擇以預測的幀內預測模式之索引的傳訊(1201)經調適以考慮經移除幀內預測模式。舉例而言,若經選擇幀內預測模式並非基於模板之幀內預測(Template-based Intra Prediction, TMP)、解碼器側幀內模式衍生(DIMD)、基於模板之幀內模式衍生(TIMD)、或基於矩陣之幀內預測(Matrix-based Intra Prediction, MIP)模式,未使用MRL,且並非MPM,則其索引係以碼長度N - - 來進行截斷二進位編碼。應注意,由於ECM-5.0含有67個常規幀內預測模式(65個方向、平面、及DC)、6個主要MPM、及16個次要MPM,因此並非MPM之一常規幀內預測模式之索引可具有N = 45個可能性。 Finally, the signaling (1201) of the index of the intra prediction mode selected for prediction is adapted to account for the removed intra prediction mode. For example, if the selected intra prediction mode is not a template-based intra prediction (TMP), decoder-side intra mode derivative (DIMD), template-based intra mode derivative (TIMD), or matrix-based intra prediction (MIP) mode, does not use MRL, and is not an MPM, then its index is expressed in code length N - - It should be noted that since ECM-5.0 contains 67 conventional intra-frame prediction modes (65 directions, planes, and DC), 6 primary MPMs, and 16 secondary MPMs, the index of a conventional intra-frame prediction mode that is not one of the MPMs can have N = 45 possibilities.
在解碼器側上的程序遵循在編碼器側上的程序,除了經選擇以預測的幀內預測模式之索引的傳訊(1201)以外。鑒於上述實例,若經選擇幀內預測模式並非TMP、DIMD、TIMD、或MIP模式,未使用MRL,且並非MPM,則其索引係以用於45 - - 個可能符號之截斷二進位碼來解碼。 The procedure on the decoder side follows the procedure on the encoder side, except that the index of the intra prediction mode selected for prediction is signaled (1201). In view of the above example, if the selected intra prediction mode is not TMP, DIMD, TIMD, or MIP mode, MRL is not used, and it is not MPM, then its index is used for 45- - The binary code is decoded by truncating the possible symbols.
在給定 亮度編碼區塊(CB)屬於在ECM-5.0中之一幀內切片之情況下,此實施例之另一實例可描繪在圖13中。對於在ECM-5.0中之一幀內切片內的給定 亮度CB (1301),從(1301)之分割歷史識別不允許的幀內預測模式。此處,W=8且H=16。索引0至7指示用於編碼/解碼屬於從所考慮的亮度CTB之QT分裂產生的第一64×64亮度CB (1300)的前八個亮度CB之順序。 In given In the case where the luma coding block (CB) belongs to an intra-slice in ECM-5.0, another example of this embodiment can be illustrated in FIG. 13. For a given CB in an intra-slice in ECM-5.0 Luma CB (1301), identifying disallowed intra prediction modes from the segmentation history of (1301). Here, W=8 and H=16. Indices 0 to 7 indicate the order for encoding/decoding the first eight luma CBs belonging to the first 64×64 luma CB (1300) generated from the QT splitting of the luma CTB under consideration.
在編碼器側上,將給定 亮度CTB經由QT分裂成4個 亮度CB。例如,考慮第一 亮度CB (1300)。所考慮亮度CB (1301)之分割完全由其分裂樹{(QT, 0),(QT, 1),(BT_H, 1),(BT_V, 0),(BT_V, 1)}指定,如圖13A所示。 On the encoder side, the given The brightness CTB is split into 4 parts by QT Brightness CB. For example, consider the first Luminance CB (1300). The partition of the considered luminance CB (1301) is completely specified by its splitting tree {(QT, 0), (QT, 1), (BT_H, 1), (BT_V, 0), (BT_V, 1)}, as shown in Figure 13A.
從此分裂樹看出,在(1301)之右上側的W個經解碼參考皆可用且在(1301)之左下側的H個經解碼參考樣本皆不可用的事實可直接推斷得出,如圖13B中之(1302)所示。例如,此可藉由分別附接至(1301)之在1處的旗標「is_above_right_full」及在0處的旗標「is_below_left_full」來指示。前 個正水平幀內預測模式不被允許,(1303)及(1304)分別表示在此組不允許模式中之最小索引的幀內預測模式之方向及最大索引的幀內預測模式之方向,如圖13C所示。最後,經選擇以預測的幀內預測模式之索引的傳訊(1301)經調適以考慮經移除幀內預測模式。例如,若經選擇幀內預測模式並非TMP、DIMD、TIMD、或MIP模式,未使用MRL,且並非MPM,則其索引係以用於45 - 個可能符號之截斷二進位碼來編碼。 From this splitting tree, the fact that the W decoded references to the upper right of (1301) are all available and the H decoded reference samples to the lower left of (1301) are all unavailable can be directly inferred, as shown in (1302) in Figure 13B. For example, this can be indicated by the flags "is_above_right_full" at 1 and "is_below_left_full" at 0 attached to (1301), respectively. positive horizontal intra-frame prediction modes are not allowed, (1303) and (1304) represent the direction of the smallest indexed intra-frame prediction mode and the direction of the largest indexed intra-frame prediction mode in this set of disallowed modes, respectively, as shown in FIG. 13C. Finally, the signaling (1301) of the index of the intra-frame prediction mode selected for prediction is adapted to account for the removed intra-frame prediction mode. For example, if the selected intra-frame prediction mode is not a TMP, DIMD, TIMD, or MIP mode, MRL is not used, and it is not an MPM, then its index is used for 45 - The possible symbols are encoded as truncated binary codes.
在解碼器側上的程序遵循在編碼器側上的程序,除了經選擇以預測的幀內模式之索引的傳訊(1301)以外。鑒於上述實例,若經選擇幀內預測模式並非TMP、DIMD、TIMD、或MIP模式,未使用MRL,且並非MPM,則其索引係以用於45 - 個可能符號之截斷二進位碼來解碼。 The procedure on the decoder side follows that on the encoder side, except that the index of the intra-frame mode selected for prediction is signaled (1301). In view of the above example, if the selected intra-frame prediction mode is not TMP, DIMD, TIMD, or MIP mode, MRL is not used, and it is not MPM, then its index is used for 45- The binary code is decoded by truncating the possible symbols.
上述實例可針對另一通道/切片中之任何其他區塊來調適。此外,可直接修改用於取決於目前區塊的相鄰經解碼參考樣本之可用性而抑制幀內預測模式的規則。例如,此規則可變成「對於給定 區塊,若位於其右上側的最右 個經解碼參考樣本皆不可用,則最後 個正垂直幀內預測模式不被允許。若位於左下側的最下 個經解碼參考樣本皆不可用,則前 個正水平幀內預測模式不被允許。 The above example can be adapted for any other block in another channel/slice. Furthermore, the rule for suppressing intra-frame prediction mode depending on the availability of neighboring decoded reference samples for the current block can be modified directly. For example, this rule can become "for a given Block, if located at the rightmost If all decoded reference samples are unavailable, the last A positive vertical in-frame prediction mode is not allowed. If it is located at the bottom left If all decoded reference samples are unavailable, the previous Positive horizontal intraframe prediction mode is not allowed.
對於給定 區塊,遵循此實施例之在編碼器側上編碼經選擇幀內預測模式之索引的工作流程可由圖14概述。在此實施例中,該規則(其指示一給定區塊的相鄰參考樣本之可用性與針對該給定區塊移除哪些幀內預測模式之間的條件關係)係在編碼器側處已知。具體而言,針對目前區塊,編碼器從目前區塊之分割歷史識別(1410)不可用參考樣本。例如,對於{(QT, 0),(QT, 0),(BT_V, 1),(TT_H, 2)}之分割歷史,在圖12中,is_above_right_full =偽且is_below_left_full =偽。基於經識別不可用參考樣本及關於移除幀內預測模式的規則,編碼器移除(1420)一些幀內預測模式(此等幀內預測模式不可用於目前區塊)。例如,對於is_above_right_full =偽且is_below_left_full =偽,最後 個正垂直幀內預測模式及前 個正水平幀內預測模式在圖12中不被允許。 For a given Block, the workflow of encoding the index of the selected intra prediction mode on the encoder side following this embodiment can be summarized by Figure 14. In this embodiment, the rule (which indicates the conditional relationship between the availability of neighboring reference samples for a given block and which intra prediction modes to remove for the given block) is known on the encoder side. Specifically, for the current block, the encoder identifies (1410) unavailable reference samples from the segmentation history of the current block. For example, for the segmentation history of {(QT, 0), (QT, 0), (BT_V, 1), (TT_H, 2)}, in Figure 12, is_above_right_full = false and is_below_left_full = false. Based on the identification of unavailable reference samples and the rules for removing intra-frame prediction modes, the encoder removes (1420) some intra-frame prediction modes that are not applicable to the current block. For example, for is_above_right_full = False and is_below_left_full = False, the last Positive vertical frame prediction mode and front A positive horizontal intra-frame prediction mode is not allowed in Figure 12.
考慮經移除模式,編碼器調適(1430)經選擇以預測目前區塊的幀內預測模式之索引的傳訊。一般而言,可用幀內預測模式的總數目係藉由減少經移除幀內預測模式的量而調整。例如,若經選擇幀內預測模式並非TMP、DIMD、TIMD、或MIP模式,未使用MRL,且並非MPM,則在圖12中其索引係以碼長度45 - 來進行截斷二進位編碼。接著,將經編碼索引寫入(1440)至位元流中。 Taking into account the removed modes, the encoder adapts (1430) the signaling of the index of the intraframe prediction mode selected to predict the current block. In general, the total number of available intraframe prediction modes is adjusted by reducing the amount of removed intraframe prediction modes. For example, if the selected intraframe prediction mode is not a TMP, DIMD, TIMD, or MIP mode, MRL is not used, and it is not MPM, then in FIG. 12 its index is expressed in code length 45. - The coded index is then written (1440) into the bitstream.
對於此 區塊,遵循此實施例之在解碼器側上解碼經選擇幀內預測模式之索引的工作流程可在圖15中概述。解碼器側處的步驟(1510, 1520, 1530, 1540)對應於編碼器側處者。 For this Block, the workflow of decoding the index of the selected intra-frame prediction mode on the decoder side following this embodiment can be summarized in Figure 15. The steps (1510, 1520, 1530, 1540) at the decoder side correspond to those at the encoder side.
這兩個圖式繪示僅單一區塊的工作流程。當考慮多個區塊時,圖14及圖15中之步驟的順序取決於所關注之編解碼器。These two figures show the workflow for only a single block. When multiple blocks are considered, the order of the steps in Figures 14 and 15 depends on the codec concerned.
在圖12至圖15中,對於給定 區塊,從此區塊之分割歷史識別不可用經解碼參考樣本。在其他實施例中,可使用搜尋目前區塊周圍的經解碼區塊的函數來識別經解碼參考樣本的不可用性。 In Figures 12 to 15, for a given Block, from the segmentation history of this block, unavailable decoded reference samples are identified. In other embodiments, a function that searches for decoded blocks around the current block can be used to identify the unavailability of decoded reference samples.
例如,如圖16所示,對於在ECM-5.0中之一幀內切片中的給定 CB (1602),函數「getCURestricted」採用像素位置「pos」(例如「posAR」(1603)或「posBL」(1604))、給定 CB (1602)之編碼單元(CU)「curCu」、及(1602)之通道類型「chType」,以將指標返回至含有位於「pos」之像素的經解碼CB。若位於「pos」的像素不屬於任何CB或其屬於尚未經解碼之CB,則「getCURestricted」可返回指標NULL,例如,C++中的「nullptr」。在圖16中,CB (1600)、(1601)、及(1602)係產生自處於編碼/解碼之目前狀態下的最後兩個分裂的BT_V及BT_H。舉例而言,在圖16中,因為「posAR」屬於尚未解碼之CB,因此「getCURestricted(posAR, curCu, chType)」返回「nullptr」。 For example, as shown in FIG. 16, for a given CB (1602), function "getCURestricted" takes a pixel position "pos" (e.g., "posAR" (1603) or "posBL" (1604)), a given The coding unit (CU) "curCu" of CB (1602), and the channel type "chType" of (1602) are used to return a pointer to the decoded CB containing the pixel at "pos". If the pixel at "pos" does not belong to any CB or it belongs to a CB that has not yet been decoded, "getCURestricted" may return a pointer NULL, for example, "nullptr" in C++. In FIG. 16 , CBs (1600), (1601), and (1602) are generated from the last two split BT_V and BT_H in the current state of encoding/decoding. For example, in FIG. 16 , because "posAR" belongs to a CB that has not yet been decoded, "getCURestricted(posAR, curCu, chType)" returns "nullptr".
對於給定 區塊,遵循此實施例之在編碼器側上編碼經選擇幀內預測模式之索引的工作流程可由圖17概述。具體而言,針對目前區塊,編碼器從目前區塊之分割歷史識別(1710)不可用參考樣本。例如,在圖16中,若getCURestricted(posAR, curCu, chType) = nullptr,則is_above_right_full =偽;若getCURestricted(posBL, curCu, chType) = nullptr,則is_below_left_full =偽。基於經識別不可用參考樣本及關於移除幀內預測模式的規則,編碼器移除(1720)一些幀內預測模式(此等幀內預測模式不可用於目前區塊)。例如,對於is_above_right_full =偽且is_below_left_full =偽,最後 個正垂直幀內預測模式及前 個正水平幀內預測模式不被允許。 For a given Block, the workflow of encoding the index of the selected intra-frame prediction mode on the encoder side according to this embodiment can be summarized by FIG. 17. Specifically, for the current block, the encoder identifies (1710) unavailable reference samples from the segmentation history of the current block. For example, in FIG. 16, if getCURestricted(posAR, curCu, chType) = nullptr, then is_above_right_full = false; if getCURestricted(posBL, curCu, chType) = nullptr, then is_below_left_full = false. Based on the identification of unavailable reference samples and the rules for removing intra-frame prediction modes, the encoder removes (1720) some intra-frame prediction modes (these intra-frame prediction modes are not available for the current block). For example, for is_above_right_full = False and is_below_left_full = False, then Positive vertical frame prediction mode and front Positive horizontal intraframe prediction mode is not allowed.
考慮經移除模式,編碼器調適(1730)經選擇以預測目前區塊的幀內預測模式之索引的傳訊。例如,若經選擇幀內預測模式並非TMP、DIMD、TIMD、或MIP模式,未使用MRL,且並非MPM,則其索引係以碼長度45- - 來進行截斷二進位編碼。接著,將經編碼索引寫入(1740)至位元流中。 Taking into account the removed mode, the encoder adapts (1730) the signaling of the index of the intra-frame prediction mode selected to predict the current block. For example, if the selected intra-frame prediction mode is not TMP, DIMD, TIMD, or MIP mode, MRL is not used, and it is not MPM, then its index is expressed in code length 45- - The coded index is then written (1740) into the bitstream.
對於此 區塊,遵循此實施例之在解碼器側上解碼經選擇幀內預測模式之索引的工作流程可在圖18中概述。解碼器側處的步驟(1810,1820,1830,1840)對應於編碼器側處者。 For this Block, the workflow of decoding the index of the selected intra-frame prediction mode on the decoder side following this embodiment can be summarized in Figure 18. The steps (1810, 1820, 1830, 1840) on the decoder side correspond to those on the encoder side.
在另一實施例中,對於一給定區塊,取代取決於其相鄰經解碼參考樣本之可用性而移除給定數目之幀內預測模式,可重新排序其MPM列表,使得針對密集使用不可用經解碼參考樣本以用於預測且其索引在此MPM列表內的一些幀內預測模式,將其索引移動朝向此MPM列表之末端。將其索引被移動朝向給定區塊之MPM列表之末端的該等幀內預測模式視為相對較不可能被選擇作為預測給定區塊的幀內預測模式。In another embodiment, for a given block, instead of removing a given number of intra-frame prediction modes depending on the availability of its neighboring decoded reference samples, its MPM list may be reordered so that for some intra-frame prediction modes that intensively use unavailable decoded reference samples for prediction and whose indexes are in this MPM list, their indices are moved towards the end of this MPM list. Those intra-frame prediction modes whose indices are moved towards the end of the MPM list of the given block are considered to be relatively less likely to be selected as intra-frame prediction modes for predicting the given block.
在ECM-5.0中之一幀內切片中的目前 亮度CB之一實施例係描繪於圖19中。具體而言,圖19顯示在針對目前的給定 亮度CB下之此亮度CB的22個MPM之通用列表的建立。MPM之通用列表中的前6個MPM對應於主要MPM列表,而MPM之通用列表中之最後16個MPM產生次要MPM列表。 In ECM-5.0, the current An example of brightness CB is shown in FIG19. Specifically, FIG19 shows that for a given Creation of a common list of 22 MPMs for this luminance CB under the luminance CB. The first 6 MPMs in the common list of MPMs correspond to the primary MPM list, and the last 16 MPMs in the common list of MPMs generate the secondary MPM list.
在圖19中,首先將平面模式添加至MPM之通用列表中(1900)。接著,將選擇用以預測左方、上方、左下方、右上方、以及左上方的亮度CB的幀內預測模式之索引添加至MPM之通用列表(1901至1905)。接著,將用於目前亮度CB之經由DIMD衍生獲得的兩個幀內預測模式之索引添加至MPM之通用列表(1906,1907)。接著,若目前第二MPM既不是平面也不是DC,則將其八個相鄰角度幀內預測模式之索引放入MPM之通用列表中(1908)。接著,若目前第三MPM既不是平面也不是DC,則將其八個相鄰角度幀內預測模式之索引放入MPM之通用列表中(1909)。In Figure 19, the plane mode is first added to the general list of MPM (1900). Then, the index of the intra-frame prediction mode selected for predicting the left, top, bottom left, top right, and top left brightness CB is added to the general list of MPM (1901 to 1905). Then, the index of the two intra-frame prediction modes derived from DIMD for the current brightness CB is added to the general list of MPM (1906, 1907). Then, if the current second MPM is neither plane nor DC, the index of its eight adjacent angle intra-frame prediction modes is placed in the general list of MPM (1908). Then, if the current third MPM is neither plane nor DC, the index of its eight adjacent angle intra-frame prediction modes is placed in the general list of MPM (1909).
在根據(1910)可能地添加更多角度幀內預測模式之索引之後,將預設模式之索引插入至MPM之通用列表中(1911),以達到22個MPM。應注意,上述插入中之各者適用於MPM之通用列表中不存在冗餘的條件下。此意謂,對於將插入至MPM之通用列表中的目前幀內預測之索引,若此索引已存在於此列表中,則跳過插入。After possibly adding the indices of more angular intra-frame prediction modes according to (1910), the index of the default mode is inserted into the general list of MPMs (1911) to reach 22 MPMs. It should be noted that each of the above insertions applies under the condition that there are no redundancies in the general list of MPMs. This means that for the index of the current intra-frame prediction to be inserted into the general list of MPMs, if this index already exists in this list, the insertion is skipped.
圖20繪示根據一實施例之相同目前亮度CB的22個MPM之通用列表的建立。在圖20中,針對目前 亮度CB的22個MPM之通用列表的建立遵循圖19中之工作流程,除了可引入重新排序之外。例如,函數 可將待放入MPM之通用列表中的候選幀內預測模式之索引採用作為第一引數(argument),且將經保留模式索引之陣列「res」採用作為第二引數。接著,若在取決於目前 亮度CB的經解碼參考樣本之可用性之條件下,候選幀內預測模式係「有效的」,則 可將候選幀內預測模式之索引放入MPM之通用列表中。否則, 可將此幀內預測模式之索引添加至「res」。 FIG. 20 illustrates the creation of a generic list of 22 MPMs for the same current brightness CB according to an embodiment. The creation of a generic list of 22 MPMs for the luminance CB follows the workflow in Figure 19, except that a reordering may be introduced. For example, the function The index of the candidate intra-frame prediction mode to be put into the general list of MPMs may be used as the first argument, and the array "res" of reserved mode indices may be used as the second argument. Conditional on the availability of decoded reference samples of luminance CB, the candidate intra-frame prediction model is "valid", then The index of the candidate intra-frame prediction mode can be put into the general list of MPM. Otherwise, The index of the prediction mode within this frame can be added to "res".
首先將平面模式添加至MPM之通用列表中(2000)。接著,在經由f定義之有效性之條件下,將選擇用以預測左方、上方、左下方、右上方、以及左上方的亮度CB的幀內預測模式之索引添加至MPM之通用列表(2001至2005)。接著,將儲存在「res」中之所有幀內預測模式索引添加至MPM之通用列表(2006)。接著,將用於目前亮度CB之經由DIMD衍生獲得的兩個幀內預測模式之索引添加至MPM之通用列表(2007,2008)。最後步驟(2009)、(2010)、(2011)及(2012)分別遵循圖19中之(1908)、(1909)、(1910)及(1911)。First, the planar mode is added to the general list of MPM (2000). Then, under the validity condition defined by f, the index of the intra-frame prediction mode selected for predicting the left, top, bottom left, top right, and top left brightness CB is added to the general list of MPM (2001 to 2005). Then, all intra-frame prediction mode indices stored in "res" are added to the general list of MPM (2006). Then, the indices of the two intra-frame prediction modes derived from DIMD for the current brightness CB are added to the general list of MPM (2007, 2008). The last steps (2009), (2010), (2011) and (2012) follow (1908), (1909), (1910) and (1911) in Figure 19 respectively.
在另一實施例中, 可適用於(或不適用於)將可能地經添加至目前亮度CB的MPM之通用列表的任何候選幀內預測模式之索引。此外,將儲存在「res」中之所有幀內預測模式索引放入目前亮度CB的MPM之通用列表中的步驟可發生在建立MPM之通用列表期間的任何時間。 In another embodiment, The index of any candidate intra-frame prediction mode that may be applied (or not applied) to be possibly added to the general list of MPMs for the current brightness CB. Furthermore, the step of placing all intra-frame prediction mode indices stored in "res" into the general list of MPMs for the current brightness CB may occur at any time during the creation of the general list of MPMs.
舉例而言,在圖21中所繪示之一實施例中,在可能地將用於目前亮度CB之經由DIMD衍生獲得的兩個幀內預測模式之索引放入MPM之通用列表中(2106, 2107)之後,發生儲存在「res」中之所有幀內預測模式的添加(2108)。For example, in one embodiment shown in FIG. 21 , after possibly placing the indices of two intra-frame prediction modes derived from DIMD for the current brightness CB into the general list of the MPM ( 2106 , 2107 ), the addition of all intra-frame prediction modes stored in “res” occurs ( 2108 ).
舉例而言,在圖22所示之另一實施例中,在經由 定義之有效性之條件下,在可能地將用於目前亮度CB之經由DIMD衍生獲得的兩個幀內預測模式之索引放入MPM之通用列表中(2206, 2207)之後,發生儲存在「res」中之所有幀內預測模式的添加(2208)。 For example, in another embodiment shown in FIG. 22, Under the conditions of defined validity, the addition of all intra-frame prediction modes stored in "res" occurs (2208), after possibly placing the indices of the two intra-frame prediction modes derived from the DIMD for the current brightness CB into the general list of the MPM (2206, 2207).
在一個實施例中,針對經通過作為第一引數的幀內預測模式之索引的由 定義的有效性之條件可係:若位於目前 區塊之右上側的 個經解碼參考樣本皆不可用,則最後 個正垂直幀內預測模式係無效的(例如, )。若位於目前 區塊之左下側的H個經解碼參考樣本皆不可用,則前 個正水平幀內預測模式係無效的(例如, )。 In one embodiment, for a frame indexed by an intra-frame prediction mode as the first argument, The validity conditions defined can be: if the Upper right side of the block If all decoded reference samples are unavailable, the last The positive vertical intraframe prediction mode is invalid (for example, ). If you are currently If the H decoded reference samples on the lower left side of the block are not available, then The positive level intraframe prediction model is invalid (e.g. ).
在另一實施例中,針對經通過作為第一引數的幀內預測模式之索引的由 定義的有效性之條件可係:若位於目前 區塊之其右上側的最右 經解碼參考樣本皆不可用,則最後 個正垂直幀內預測模式係無效的(例如, )。若位於於目前 區塊之左下側的最下 個經解碼參考樣本皆不可用,則前 個正水平幀內預測模式係無效的(例如, )。 In another embodiment, for a frame indexed by an intra-frame prediction mode as a first argument, The validity conditions defined can be: if the The rightmost upper right corner of the block If all decoded reference samples are unavailable, then the last The positive vertical intraframe prediction mode is invalid (for example, ). If you are currently The lowest one on the lower left side of the block If all decoded reference samples are unavailable, the previous The positive level intraframe prediction model is invalid (e.g. ).
在又另一實施例中,針對經通過作為第一引數的幀內預測模式之索引的由 定義的有效性之條件可係:若位於目前 區塊之上方(包括左上方、上方、及右上方)上的經解碼參考樣本不可用,則最後 個垂直幀內預測模式係無效的(例如, )。若位於目前 區塊之左側(包括左上方、左方、及左下方)上的經解碼參考樣本皆不可用,則前 個水平幀內預測模式係無效的(例如, )。 In yet another embodiment, for a frame indexed by an intra-frame prediction mode as a first argument, The validity conditions defined can be: if the If the decoded reference samples above the block (including the upper left, top, and top right) are not available, the last The vertical intraframe prediction mode is invalid (for example, ). If you are currently If the decoded reference samples on the left side of the block (including the upper left, left, and lower left) are not available, then The horizontal intraframe prediction model is invalid (for example, ).
在又另一實施例中,針對經通過作為第一引數的幀內預測模式之索引的由 定義的有效性之條件可係取決於目前 區塊的經解碼參考樣本之不同可用性狀態的若干條件之組成。作為一實例,若位於目前區塊之上方(包括左上方、上方、及右上方)的經解碼參考樣本皆不可用,則最後 個垂直幀內預測模式係無效的(例如, )。否則,檢查以下條件。若位於目前區塊之右上側的 個經解碼參考樣本皆不可用,則最後 個正垂直幀內預測模式係無效的(例如, )。作為另一實例,若位於目前區塊之左側(包括左上方、左方、及左下方)上的經解碼參考樣本皆不可用,則前 個水平幀內預測模式係無效的(例如, )。否則,檢查以下條件。若位於目前區塊之左下側的 個經解碼參考樣本皆不可用,則前 個正水平幀內預測模式係無效的(例如, )。 In yet another embodiment, for a frame indexed by an intra-frame prediction mode as a first argument, The validity of the definition may depend on the current The composition of several conditions for different availability states of decoded reference samples of a block. As an example, if the decoded reference samples above (including the upper left, above, and upper right) the current block are all unavailable, then the last The vertical intraframe prediction mode is invalid (for example, ). Otherwise, check the following condition. If the If all decoded reference samples are unavailable, the last The positive vertical intraframe prediction mode is invalid (for example, As another example, if the decoded reference samples on the left side (including the upper left, left, and lower left) of the current block are all unavailable, then the previous The horizontal intraframe prediction model is invalid (for example, ). Otherwise, check the following condition. If the If all decoded reference samples are unavailable, the previous The positive level intraframe prediction model is invalid (e.g. ).
於本文中描述各種方法,且該等方法之各者包含用於實現所描述之方法的一或多個步驟或動作。除非方法的適當操作需要特定順序的步驟或動作,可修改或組合特定步驟及/或動作的順序及/或用途。額外地,諸如「第一(first)」、「第二(second)」等的用語可使用在各種實施例中,以修飾元件、組件、步驟、操作等,例如「第一解碼(first decoding)」及「第二解碼(second decoding)」。除非具體要求,此類用語的使用並不意味對經修飾操作的排序。所以在此實例中,第一解碼不需要在第二解碼之前執行,並可例如在第二解碼之前、期間、或與其重疊的時間期間中發生。Various methods are described herein, and each of the methods includes one or more steps or actions for implementing the described method. Unless proper operation of the method requires a specific order of steps or actions, the order and/or use of specific steps and/or actions may be modified or combined. Additionally, terms such as "first," "second," and the like may be used in various embodiments to modify elements, components, steps, operations, and the like, such as "first decoding" and "second decoding." Unless specifically required, the use of such terms does not imply an ordering of the modified operations. So in this example, the first decoding need not be performed before the second decoding, and may, for example, occur before, during, or during a time period overlapping with the second decoding.
描述於本申請案中的各種方法及其他態樣可用以修改模組,例如圖2及圖3所示之視訊編碼器200及解碼器300的幀內預測模組(260, 360)。此外,本態樣不限於ECM、VVC、或HEVC,且可例如施用至其他標準及建議、及任何此類標準及建議之延伸。除非以其他方式指示或在技術上排除,描述於本申請案中的態樣可個別或組合地使用。The various methods and other aspects described in this application may be used to modify modules, such as the intra-frame prediction module (260, 360) of the video encoder 200 and decoder 300 shown in FIG. 2 and FIG. 3. In addition, the present aspects are not limited to ECM, VVC, or HEVC, and may be applied, for example, to other standards and recommendations, and any extensions of such standards and recommendations. Unless otherwise indicated or technically excluded, the aspects described in this application may be used individually or in combination.
本申請案中使用各種數值。特定值例如多種目的,且所描述之態樣不限於此等特定值。Various numerical values are used in this application. Specific values are used for various purposes, and the described embodiments are not limited to these specific values.
各種實施方案涉及解碼。如本申請案中所使用的,「解碼(decoding)」可涵蓋例如在經接收經編碼序列上執行以產生適合顯示器的最終輸出之程序的全部或部分。在各種實施例中,此類程序包括一般藉由解碼器執行之程序(例如,熵解碼、逆量化、逆轉換、及差分解碼)的一或多者。不論片語「解碼程序(decoding process)」是否意圖具體地係指操作的子集或大致係指更廣泛者,解碼程序將基於特定描述的上下文而係清楚的並據信可係所屬技術領域中具有通常知識者良好地理解的。Various embodiments relate to decoding. As used in this application, "decoding" may encompass all or part of a process performed, for example, on a received encoded sequence to produce a final output suitable for a display. In various embodiments, such a process includes one or more of the processes typically performed by a decoder (e.g., entropy decoding, inverse quantization, inverse transform, and differential decoding). Regardless of whether the phrase "decoding process" is intended to refer specifically to a subset of operations or more generally, the decoding process will be clear based on the context of the particular description and is believed to be well understood by one of ordinary skill in the art.
各種實施方案涉及編碼。以類似於上述關於「解碼」的討論之方式,在本申請案中所使用的「編碼」可涵蓋例如在輸入視訊序列上執行以產生經編碼位元流的程序之全部或部分。Various embodiments involve encoding. In a manner similar to the above discussion of "decoding", "encoding" as used in this application may cover all or part of the process performed on an input video sequence to produce an encoded bit stream, for example.
描述於本文中的實施方案及態樣可以例如方法或程序、設備、軟體程式、資料流、或信號實施。即使僅在單一形式的實施方案的上下文中討論(例如,僅作為方法討論),所討論之特徵的實施方案亦可以其他形式實施(例如,設備或程式)。設備可以例如適當硬體、軟體、及韌體實施。方法可在例如處理器設備(例如處理器)中實施,該處理器大致係指處理裝置,包括例如電腦、微處理器、積體電路、或可程式化邏輯裝置。處理器亦包括通訊裝置,例如電腦、蜂巢式電話、可攜式/個人數位助理(「PDA」)、及促進終端使用者之間的資訊的通訊的其他裝置。The embodiments and aspects described herein may be implemented, for example, as methods or procedures, apparatus, software programs, data flows, or signals. Even if discussed only in the context of a single form of an embodiment (e.g., discussed only as a method), the embodiments of the features discussed may also be implemented in other forms (e.g., apparatus or program). An apparatus may be implemented, for example, in appropriate hardware, software, and firmware. A method may be implemented, for example, in a processor device (e.g., a processor), which generally refers to a processing device, including, for example, a computer, a microprocessor, an integrated circuit, or a programmable logic device. A processor also includes a communication device, such as a computer, a cellular phone, a portable/personal digital assistant ("PDA"), and other devices that facilitate the communication of information between end users.
對「一個實施例(one embodiment)」或「一實施例(an embodiment)」或「一個實施方案(one implementation)」、或「一實施方案(an implementation)」以及其等的其他變化的參考意指相關於該實施例描述的特定特徵、結構、特性等係包括在至少一個實施例中。因此,片語「在一個實施例中(in one embodiment)」或「在一實施例中(in an embodiment)」或「在一個實施方案中(in one implementation)」、或「在一實施方案中(in an implementation)」的出現,以及在遍及本申請案各處出現的任何其他變化不必須全部參考至相同的實施例。Reference to "one embodiment" or "an embodiment" or "one implementation" or "an implementation" and other variations thereof means that a particular feature, structure, characteristic, etc. described in connection with that embodiment is included in at least one embodiment. Thus, the appearance of the phrase "in one embodiment" or "in an embodiment" or "in one implementation" or "in an implementation" and any other variations appearing throughout this application are not necessarily all references to the same embodiment.
額外地,此申請案可與「判定」各項資訊相關。判定資訊可包括例如評估資訊、計算資訊、預測資訊、或從記憶體檢索資訊的一或多者。Additionally, the application may be associated with "determining" various information. Determining information may include, for example, one or more of evaluating information, calculating information, predicting information, or retrieving information from memory.
進一步地,此申請案可與「存取」各項資訊相關。存取資訊可包括例如接收資訊、檢索資訊(例如,從記憶體)、儲存資訊、移動資訊、複製資訊、計算資訊、判定資訊、預測資訊、或評估資訊的一或多者。Further, the application may be related to "accessing" various information. Accessing information may include, for example, one or more of receiving information, retrieving information (e.g., from memory), storing information, moving information, copying information, calculating information, determining information, predicting information, or evaluating information.
額外地,此申請案可與「接收」各項資訊相關。意圖使接收與「存取(accessing)」般成為廣泛用語。接收資訊可包括例如存取資訊或檢索資訊(例如,從記憶體)的一或多者。進一步地,在操作期間(例如儲存資訊、處理資訊、傳輸資訊、移動資訊、複製資訊、抹除資訊、計算資訊、判定資訊、預測資訊、或評估資訊)一般以某種方式或另一者涉及「接收(receiving)」。Additionally, this application may be related to "receiving" various items of information. Receiving is intended to be a broad term, as is "accessing." Receiving information may include, for example, one or more of accessing information or retrieving information (e.g., from memory). Further, during operations such as storing information, processing information, transmitting information, moving information, copying information, erasing information, calculating information, determining information, predicting information, or evaluating information, generally involves "receiving" in some way or another.
應理解下列「/」、「及/或(and/or)」、及「中之至少一者(at least one of)」在例如「A/B」、「A及/或B (A and/or B)」、及「A及B中之至少一者(at least one of A and B)」之情形中的使用意圖涵蓋僅選擇第一列出選項(A)、或僅選擇第二列出選項(B)、或選擇二個選項(A及B)。作為進一步實例,在「A、B、及/或C (A, B, and/or C)」及「A、B、及C中之至少一者(at least one of A, B, and C)」的情形中,此類片語意圖涵蓋僅選擇第一列出選項(A)、或僅選擇第二列出選項(B)、或僅選擇第三列出選項(C)、或僅選擇第一及第二列出選項(A及B)、或僅選擇第一及第三列出選項(A及C)、或僅選擇第二及第三列出選項(B及C)、或選擇所有三個選項(A及B及C)。此可針對所列出般的許多項目延伸,如對所屬及相關技術領域中具有通常知識者係清楚的。It should be understood that the use of “/”, “and/or”, and “at least one of” in situations such as “A/B”, “A and/or B”, and “at least one of A and B” is intended to cover selecting only the first listed option (A), or only the second listed option (B), or selecting both options (A and B). As a further example, in the case of "A, B, and/or C" and "at least one of A, B, and C", such phrases are intended to cover selecting only the first listed option (A), or only the second listed option (B), or only the third listed option (C), or only the first and second listed options (A and B), or only the first and third listed options (A and C), or only the second and third listed options (B and C), or all three options (A and B and C). This can be extended to as many items as listed, as is clear to one of ordinary skill in the art.
再者,如本文中所使用的,用詞「傳訊(signal)」尤其係指將某物指示給對應解碼器。例如,在某些實施例中,編碼器傳訊用於解量化的量化矩陣。以此方式,在一實施例中,在編碼器側及解碼器側兩者使用相同參數。因此,舉例來說,一編碼器可傳輸(明確傳訊)一特定參數至解碼器,使得解碼器可使用相同的特定參數。相反地,若解碼器已具有該特定參數以及其他參數,則可使用傳訊而不傳輸(隱式傳訊),以僅允許解碼器知道並選擇特定參數。藉由避免傳輸任何實際功能,在各種實施例中實現位元節省。應理解傳訊可以各種方式達成。例如,在各種實施例中,將一或多個語法元素、旗標等用以將資訊傳訊至對應解碼器。雖然前文係關於用詞「傳訊(signal)」的動詞形式,但用詞「信號(signal)」在本文中亦可使用為名詞。Furthermore, as used herein, the term "signal" refers in particular to indicating something to a corresponding decoder. For example, in some embodiments, the encoder signals a quantization matrix for dequantization. In this way, in one embodiment, the same parameters are used on both the encoder side and the decoder side. Thus, for example, a encoder may transmit (explicitly signal) a specific parameter to a decoder so that the decoder can use the same specific parameter. Conversely, if the decoder already has the specific parameter as well as other parameters, signaling may be used without transmitting (implicitly signaling) to allow only the decoder to know and select the specific parameter. Bit savings are achieved in various embodiments by avoiding transmitting any actual functionality. It should be understood that signaling can be achieved in various ways. For example, in various embodiments, one or more syntax elements, flags, etc. are used to signal information to a corresponding decoder. Although the foregoing is about the verb form of the word "signal", the word "signal" may also be used as a noun in this article.
如所屬技術領域中具有通常知識者所將顯而易見的,實施方案可產生經格式化以運載可例如儲存或傳輸之資訊的各種信號。該資訊可包括例如用於執行方法的指令、或由所描述的實施方案的一者產生的資料。例如,可將信號格式化以運載所描述實施例的位元流。此一信號可格式化成例如電磁波(例如,使用光譜的射頻部分)或基頻信號。格式化可包括例如編碼資料流及調變具有經編碼資料流的載波。該信號所攜載的資訊可係例如類比或數位資訊。如已知的,該信號可透過各種不同的有線或鏈路傳輸。該信號可儲存在處理器可讀媒體上。As will be apparent to one of ordinary skill in the art, embodiments may generate various signals formatted to carry information that may, for example, be stored or transmitted. The information may include, for example, instructions for executing a method, or data generated by one of the described embodiments. For example, a signal may be formatted to carry a bit stream of the described embodiments. Such a signal may be formatted, for example, as an electromagnetic wave (e.g., using the radio frequency portion of the optical spectrum) or a baseband signal. Formatting may include, for example, encoding a data stream and modulating a carrier with the encoded data stream. The information carried by the signal may be, for example, analog or digital information. As is known, the signal may be transmitted via a variety of different wires or links. The signal may be stored on a processor-readable medium.
100:系統 105:方塊 110:處理器 115:連接配置 120:記憶體 130:編碼器/解碼器模組;編碼器/解碼器 140:儲存裝置 150:通訊介面 160:介面;顯示器介面 170,180:介面 165:顯示器 175:揚聲器 185:週邊裝置 190:通訊通道 200:視訊編碼器;編碼器 201:預編碼處理 202:分割 205:決定 210:減去 225:轉換 230:量化 240:解量化 245:熵編碼 250:逆轉換 255:組合 260:幀內預測;幀內預測模組 265:迴路內濾波器 270:補償 275:運動評估 280:參考圖像緩衝器 300:視訊解碼器;解碼器 335:劃分 340:解量化 350:逆轉換 355:組合 360:幀內預測;幀內預測模組 365:迴路內濾波器 370:獲得 375:運動補償預測 380:參考圖像緩衝器 385:後解碼處理 610,620,630,640:步驟 1200:第一64×64亮度CB 1201:亮度CB;所考慮亮度CB 1202:不可用經解碼參考樣本之此等兩個部分 1203:最大索引的幀內預測模式之方向 1204:最小索引的幀內預測模式之方向 1205:最小索引的幀內預測模式之方向 1206:最大索引的幀內預測模式之方向 1300:第一64×64亮度CB 1301:W×H亮度CB;所考慮亮度CB 1303:最小索引的幀內預測模式之方向 1304:最大索引的幀內預測模式之方向 1410,1420,1430,1440:步驟 1510,1520,1530,1540:步驟 1600,1601:CB 1602:W×H CB;CB 1710,1720,1730,1740:步驟 1810,1820,1830,1840:步驟 1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911:步驟 2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012:步驟 2106,2107,2108:步驟 2206,2207,2208:步驟 100: system 105: block 110: processor 115: connection configuration 120: memory 130: encoder/decoder module; encoder/decoder 140: storage device 150: communication interface 160: interface; display interface 170,180: interface 165: display 175: speaker 185: peripheral device 190: communication channel 200: video encoder; encoder 201: pre-coding process 202: segmentation 205: decision 210: subtraction 225: conversion 230: quantization 240: dequantization 245: entropy coding 250: inverse conversion 255: combination 260: intra-frame prediction; intra-frame prediction module 265: in-loop filter 270: compensation 275: motion estimation 280: reference image buffer 300: video decoder; decoder 335: segmentation 340: dequantization 350: inverse conversion 355: combination 360: intra-frame prediction; intra-frame prediction module 365: in-loop filter 370: acquisition 375: motion compensation prediction 380: reference image buffer 385: post-decoding processing 610,620,630,640: steps 1200: First 64×64 luminance CB 1201: Luminance CB; Considered luminance CB 1202: These two parts of the decoded reference sample cannot be used 1203: Direction of the intra-frame prediction mode of the maximum index 1204: Direction of the intra-frame prediction mode of the minimum index 1205: Direction of the intra-frame prediction mode of the minimum index 1206: Direction of the intra-frame prediction mode of the maximum index 1300: First 64×64 luminance CB 1301: W×H luminance CB; Considered luminance CB 1303: Direction of the intra-frame prediction mode of the minimum index 1304: Direction of the intra-frame prediction mode of the maximum index 1410,1420,1430,1440: Steps 1510,1520,1530,1540: steps 1600,1601: CB 1602: W×H CB;CB 1710,1720,1730,1740: steps 1810,1820,1830,1840: steps 1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911: steps 2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012: steps 2106,2107,2108: Steps 2206,2207,2208: Steps
[圖1]繪示可實施本實施例之態樣的系統的方塊圖。 [圖2]繪示視訊編碼器之實施例的方塊圖。 [圖3]繪示視訊解碼器之實施例的方塊圖。 [圖4]繪示用於幀內預測的參考樣本。 [圖5A]及[圖5B]繪示幀內預測的參考樣本取代。 [圖6]繪示幀內預測的參考樣本取代的程序。 [圖7A]繪示HEVC中之幀內預測方向,[圖7B]繪示VVC中之幀內預測方向,且[圖7C]繪示水平與垂直、正與負的幀內預測模式。 [圖8A]、[圖8B]及[圖8C]繪示廣角幀內預測。 [圖9]繪示VVC中之所有可用幀內預測方向。 [圖10]繪示平面模式。 [圖11]繪示用於縱橫比W/H=4之PU上之各幀內預測模式(IPM)的參考樣本。 [圖12A]繪示幀內切片內的CB,[圖12B]繪示不可用參考樣本,且[圖12C]繪示經移除幀內預測模式。 [圖13A]繪示幀內切片內的另一CB,[圖13B]繪示不可用參考樣本,且[圖13C]繪示經移除幀內預測模式。 [圖14]繪示根據一實施例之傳訊經選擇以預測在編碼器側上之目前WxH區塊的幀內預測模式之索引的工作流程。 [圖15]繪示根據一實施例之解碼經選擇以預測在解碼器側上之目前WxH區塊的幀內預測模式之索引的工作流程。 [圖16]繪示使用針對目前區塊周圍的經解碼區塊的搜尋來識別目前區塊周圍的不可用經解碼參考樣本。 [圖17]繪示根據另一實施例之傳訊經選擇以預測在編碼器側上之目前WxH區塊的幀內預測模式之索引的工作流程。 [圖18]繪示根據另一實施例之解碼經選擇以預測在解碼器側上之目前WxH區塊的幀內預測模式之索引的工作流程。 [圖19]繪示針對ECM中之目前亮度CB的22個MPM之通用列表的建立。 [圖20]繪示根據一實施例之針對ECM中之目前亮度CB的22個MPM之通用列表的經修改建立。 [圖21]繪示根據另一實施例之針對ECM中之目前亮度CB的22個MPM之通用列表的經修改建立。 [圖22]繪示根據另一實施例之針對ECM中之目前亮度CB的22個MPM之通用列表的經修改建立。 [FIG. 1] shows a block diagram of a system in which the present embodiment can be implemented. [FIG. 2] shows a block diagram of an embodiment of a video encoder. [FIG. 3] shows a block diagram of an embodiment of a video decoder. [FIG. 4] shows reference samples for intra-frame prediction. [FIG. 5A] and [FIG. 5B] show reference sample replacement for intra-frame prediction. [FIG. 6] shows a procedure for reference sample replacement for intra-frame prediction. [FIG. 7A] shows intra-frame prediction directions in HEVC, [FIG. 7B] shows intra-frame prediction directions in VVC, and [FIG. 7C] shows horizontal and vertical, positive and negative intra-frame prediction modes. [FIG. 8A], [FIG. 8B], and [FIG. 8C] show wide-angle intra-frame prediction. [FIG. 9] illustrates all available intra prediction directions in VVC. [FIG. 10] illustrates planar mode. [FIG. 11] illustrates reference samples for each intra prediction mode (IPM) on a PU with aspect ratio W/H=4. [FIG. 12A] illustrates a CB in an intra slice, [FIG. 12B] illustrates unavailable reference samples, and [FIG. 12C] illustrates a removed intra prediction mode. [FIG. 13A] illustrates another CB in an intra slice, [FIG. 13B] illustrates unavailable reference samples, and [FIG. 13C] illustrates a removed intra prediction mode. [FIG. 14] illustrates a workflow for signaling an index of an intra prediction mode selected to predict a current WxH block on the encoder side according to an embodiment. [FIG. 15] illustrates a workflow for decoding an index of an intra-frame prediction mode selected to predict a current WxH block on a decoder side according to one embodiment. [FIG. 16] illustrates identifying unavailable decoded reference samples around the current block using a search for decoded blocks around the current block. [FIG. 17] illustrates a workflow for signaling an index of an intra-frame prediction mode selected to predict a current WxH block on an encoder side according to another embodiment. [FIG. 18] illustrates a workflow for decoding an index of an intra-frame prediction mode selected to predict a current WxH block on a decoder side according to another embodiment. [FIG. 19] illustrates the creation of a generic list of 22 MPMs for a current luma CB in an ECM. [FIG. 20] illustrates a modified creation of a generic list of 22 MPMs for the current brightness CB in an ECM according to one embodiment. [FIG. 21] illustrates a modified creation of a generic list of 22 MPMs for the current brightness CB in an ECM according to another embodiment. [FIG. 22] illustrates a modified creation of a generic list of 22 MPMs for the current brightness CB in an ECM according to another embodiment.
100:系統 100:System
105:方塊 105: Block
110:處理器 110: Processor
115:連接配置 115: Connection configuration
120:記憶體 120: Memory
130:編碼器/解碼器模組;編碼器/解碼器 130: Encoder/decoder module; encoder/decoder
140:儲存裝置 140: Storage device
150:通訊介面 150: Communication interface
160:介面;顯示器介面 160:Interface; Display interface
170,180:介面 170,180: Interface
165:顯示器 165: Display
175:揚聲器 175: Speaker
185:週邊裝置 185: Peripheral devices
190:通訊通道 190: Communication channel
Claims (22)
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP22306523 | 2022-10-11 | ||
EP22306523.6 | 2022-10-11 | ||
EP22306799 | 2022-12-07 | ||
EP22306799.2 | 2022-12-07 | ||
EP23305496.4 | 2023-04-05 | ||
EP23305496 | 2023-04-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202416714A true TW202416714A (en) | 2024-04-16 |
Family
ID=88188771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112137033A TW202416714A (en) | 2022-10-11 | 2023-09-27 | Intra prediction mode improvements based on available reference samples |
Country Status (2)
Country | Link |
---|---|
TW (1) | TW202416714A (en) |
WO (1) | WO2024078867A1 (en) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10404980B1 (en) * | 2018-07-10 | 2019-09-03 | Tencent America LLC | Intra prediction with wide angle mode in video coding |
-
2023
- 2023-09-26 WO PCT/EP2023/076616 patent/WO2024078867A1/en unknown
- 2023-09-27 TW TW112137033A patent/TW202416714A/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024078867A1 (en) | 2024-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7488256B2 (en) | Simplifying coding modes based on adjacent sample-dependent parametric models | |
WO2020092535A1 (en) | Multi-reference line intra prediction and most probable mode | |
AU2023208181A1 (en) | Generalized bi-prediction and weighted prediction | |
WO2020210443A1 (en) | Wide angle intra prediction with sub-partitions | |
WO2021058383A1 (en) | Method and apparatus using homogeneous syntax with coding tools | |
JP7520853B2 (en) | Flexible allocation of regular bins in residual coding for video coding | |
KR20220157455A (en) | Methods and devices for image encoding and decoding | |
WO2020086248A1 (en) | Method and device for picture encoding and decoding | |
CN112335240B (en) | Multiple reference intra prediction using variable weights | |
EP3925225A1 (en) | Intra prediction mode extension | |
EP3641311A1 (en) | Encoding and decoding methods and apparatus | |
CN117616750A (en) | Template-based intra mode derivation | |
CN115769587A (en) | Method and apparatus for finely controlling image encoding and decoding processes | |
KR20220024716A (en) | Single-index quantization matrix design for video encoding and decoding | |
TW202416714A (en) | Intra prediction mode improvements based on available reference samples | |
US20230336721A1 (en) | Combining abt with vvc sub-block-based coding tools | |
WO2021058277A1 (en) | Video encoding and decoding using block area based quantization matrices | |
WO2024002699A1 (en) | Intra sub-partition improvements | |
WO2023194104A1 (en) | Temporal intra mode prediction | |
KR20230174244A (en) | VVC canonical and encoder-side adaptations for ABT | |
EP4014490A1 (en) | Quantization matrix prediction for video encoding and decoding | |
EP3994883A1 (en) | Chroma format dependent quantization matrices for video encoding and decoding | |
EP4070547A1 (en) | Scaling process for joint chroma coded blocks | |
EP3997876A1 (en) | Luma to chroma quantization parameter table signaling | |
CN118476230A (en) | Chroma format adaptation |