WO2020256345A1 - 영상 코딩 시스템에서 변환 커널 세트에 관한 정보에 대한 컨텍스트 코딩 - Google Patents
영상 코딩 시스템에서 변환 커널 세트에 관한 정보에 대한 컨텍스트 코딩 Download PDFInfo
- Publication number
- WO2020256345A1 WO2020256345A1 PCT/KR2020/007598 KR2020007598W WO2020256345A1 WO 2020256345 A1 WO2020256345 A1 WO 2020256345A1 KR 2020007598 W KR2020007598 W KR 2020007598W WO 2020256345 A1 WO2020256345 A1 WO 2020256345A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- transform
- bin
- context
- transform kernel
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 176
- 244000046052 Phaseolus vulgaris Species 0.000 claims 24
- 235000010627 Phaseolus vulgaris Nutrition 0.000 claims 22
- 235000005489 dwarf bean Nutrition 0.000 claims 2
- 230000009466 transformation Effects 0.000 description 83
- 238000001914 filtration Methods 0.000 description 46
- 239000011159 matrix material Substances 0.000 description 44
- 238000013139 quantization Methods 0.000 description 31
- 239000000523 sample Substances 0.000 description 26
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 23
- 230000008569 process Effects 0.000 description 17
- 238000006243 chemical reaction Methods 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 10
- 230000011664 signaling Effects 0.000 description 9
- 230000003044 adaptive effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000001965 increasing effect Effects 0.000 description 8
- 230000002123 temporal effect Effects 0.000 description 7
- 241000023320 Luma <angiosperm> Species 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 6
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 241000209094 Oryza Species 0.000 description 4
- 235000007164 Oryza sativa Nutrition 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 235000009566 rice Nutrition 0.000 description 4
- 238000000844 transformation Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 230000001939 inductive effect Effects 0.000 description 2
- 239000013074 reference sample Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000010454 slate Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 230000000007 visual 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/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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- 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/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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/18—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/184—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 bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Definitions
- This document relates to video coding technology, and more particularly, to context coding for information on a transform kernel set in a video coding system.
- VR Virtual Reality
- AR Artificial Realtiy
- high-efficiency video/video compression technology is required in order to effectively compress, transmit, store, and reproduce information of high-resolution, high-quality video/video having various characteristics as described above.
- a method and apparatus for increasing video/video coding efficiency is provided.
- a method and apparatus for coding information on a transform kernel set in image coding are provided.
- a method and apparatus for context coding/bypass coding for information on a transform kernel set in an image coding system are provided.
- a method and apparatus for signaling information on a transform kernel set in which context coding/bypass coding is performed are provided.
- a method and apparatus for signaling information indicating a transform kernel set to be applied to a current block among a plurality of transform kernel sets are provided.
- a method and apparatus for context coding or bypass coding for bins for information on a transform kernel set are provided.
- a video/video decoding method performed by a decoding apparatus is provided.
- a decoding apparatus for performing video/video decoding is provided.
- a video/video encoding method performed by an encoding device is provided.
- an encoding device that performs video/video encoding.
- a computer-readable digital storage medium in which encoded video/image information generated according to the video/image encoding method disclosed in at least one of the embodiments of the present document is stored is provided.
- encoded information causing to perform the video/image decoding method disclosed in at least one of the embodiments of the present document by a decoding device or a computer-readable digital storing encoded video/image information Provide a storage medium.
- the complexity of the coding system can be reduced by efficiently coding information on the transform kernel set.
- FIG. 1 schematically shows an example of a video/video coding system to which this document can be applied.
- FIG. 2 is a diagram schematically illustrating a configuration of a video/video encoding apparatus to which this document can be applied.
- FIG. 3 is a diagram schematically illustrating a configuration of a video/video decoding apparatus to which the present document can be applied.
- FIG. 4 schematically shows a picture encoding method according to an embodiment of the present document.
- FIG. 5 schematically shows a picture decoding method according to an embodiment of the present document.
- CABAC context-adaptive binary arithmetic coding
- 9 exemplarily shows intra directional modes of 65 prediction directions.
- FIG 10 and 11 are diagrams for explaining an RST according to an embodiment of the present document.
- FIG. 12 and 13 schematically illustrate an example of a video/video encoding method and related components according to the embodiment(s) of the present document.
- FIG. 16 shows an example of a content streaming system to which embodiments disclosed in this document can be applied.
- each of the components in the drawings described in this document is independently illustrated for convenience of description of different characteristic functions, and does not mean that each component is implemented as separate hardware or separate software.
- two or more of the configurations may be combined to form one configuration, or one configuration may be divided into a plurality of configurations.
- Embodiments in which each configuration is integrated and/or separated are also included in the scope of the rights of this document, unless departing from the essence of this document.
- video may mean a set of images over time.
- a picture generally refers to a unit representing one image in a specific time period, and a slice/tile is a unit constituting a part of a picture in coding.
- a slice/tile may include one or more coding tree units (CTU).
- CTU coding tree units
- One picture may be composed of one or more slices/tiles.
- One picture may consist of one or more tile groups.
- One tile group may include one or more tiles.
- a pixel or pel may mean a minimum unit constituting one picture (or image).
- sample' may be used as a term corresponding to a pixel.
- a sample may generally represent a pixel or a value of a pixel, may represent only a pixel/pixel value of a luma component, or may represent only a pixel/pixel value of a chroma component.
- the sample may mean a pixel value in the spatial domain, and when such a pixel value is converted to the frequency domain, it may mean a transform coefficient in the frequency domain.
- a unit may represent a basic unit of image processing.
- the unit may include at least one of a specific area of a picture and information related to the corresponding area.
- One unit may include one luma block and two chroma (ex. cb, cr) blocks.
- the unit may be used interchangeably with terms such as a block or an area depending on the case.
- the MxN block may include samples (or sample arrays) consisting of M columns and N rows, or a set (or array) of transform coefficients.
- VVC Very Video Coding
- HEVC High Efficiency Video Coding
- EMC essential video coding
- At least one of A and B may mean “only A”, “only B”, or “both A and B”.
- the expression “at least one of A or B” or “at least one of A and/or B” means “at least one A and B (at least one of A and B)" can be interpreted the same.
- At least one of A, B and C means “only A", “only B", “only C", or "A, B and C May mean any combination of A, B and C”.
- at least one of A, B or C at least one of A, B or C
- at least one of A, B and/or C at least one of A, B and/or C
- parentheses used in the present specification may mean “for example”. Specifically, when indicated as “prediction (intra prediction)", “intra prediction” may be proposed as an example of “prediction”. In other words, “prediction” in the present specification is not limited to “intra prediction”, and “intra prediction” may be suggested as an example of “prediction”. In addition, even when displayed as “prediction (ie, intra prediction)", “intra prediction” may be proposed as an example of "prediction”.
- FIG. 1 schematically shows an example of a video/video coding system to which this document can be applied.
- a video/image coding system may include a source device and a reception device.
- the source device may transmit the encoded video/image information or data in a file or streaming form to the receiving device through a digital storage medium or a network.
- the source device may include a video source, an encoding device, and a transmission unit.
- the receiving device may include a receiving unit, a decoding device, and a renderer.
- the encoding device may be referred to as a video/image encoding device, and the decoding device may be referred to as a video/image decoding device.
- the transmitter may be included in the encoding device.
- the receiver may be included in the decoding device.
- the renderer may include a display unit, and the display unit may be configured as a separate device or an external component.
- the video source may acquire a video/image through a process of capturing, synthesizing, or generating a video/image.
- the video source may include a video/image capturing device and/or a video/image generating device.
- the video/image capture device may include, for example, one or more cameras, a video/image archive including previously captured video/images, and the like.
- the video/image generating device may include, for example, a computer, a tablet and a smartphone, and may (electronically) generate a video/image.
- a virtual video/image may be generated through a computer or the like, and in this case, a video/image capturing process may be substituted as a process of generating related data.
- the encoding device may encode the input video/video.
- the encoding apparatus may perform a series of procedures such as prediction, transformation, and quantization for compression and coding efficiency.
- the encoded data (encoded video/video information) may be output in the form of a bitstream.
- the transmission unit may transmit the encoded video/video information or data output in the form of a bitstream to the reception unit of the receiving device through a digital storage medium or a network in a file or streaming form.
- Digital storage media may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, and SSD.
- the transmission unit may include an element for generating a media file through a predetermined file format, and may include an element for transmission through a broadcast/communication network.
- the receiver may receive/extract the bitstream and transmit it to the decoding device.
- the decoding device may decode the video/image by performing a series of procedures such as inverse quantization, inverse transformation, and prediction corresponding to the operation of the encoding device.
- the renderer can render the decoded video/video.
- the rendered video/image may be displayed through the display unit.
- the video encoding device may include an image encoding device.
- the encoding device 200 includes an image partitioner 210, a predictor 220, a residual processor 230, an entropy encoder 240, and It may be configured to include an adder 250, a filter 260, and a memory 270.
- the prediction unit 220 may include an inter prediction unit 221 and an intra prediction unit 222.
- the residual processing unit 230 may include a transform unit 232, a quantizer 233, an inverse quantizer 234, and an inverse transformer 235.
- the residual processing unit 230 may further include a subtractor 231.
- the addition unit 250 may be referred to as a reconstructor or a recontructged block generator.
- the image segmentation unit 210, the prediction unit 220, the residual processing unit 230, the entropy encoding unit 240, the addition unit 250, and the filtering unit 260 described above may include one or more hardware components (for example, it may be configured by an encoder chipset or a processor).
- the memory 270 may include a decoded picture buffer (DPB), and may be configured by a digital storage medium.
- the hardware component may further include the memory 270 as an internal/external component.
- the image segmentation unit 210 may divide an input image (or picture, frame) input to the encoding apparatus 200 into one or more processing units.
- the processing unit may be referred to as a coding unit (CU).
- the coding unit is recursively divided according to the QTBTTT (Quad-tree binary-tree ternary-tree) structure from a coding tree unit (CTU) or a largest coding unit (LCU).
- QTBTTT Quad-tree binary-tree ternary-tree
- CTU coding tree unit
- LCU largest coding unit
- one coding unit may be divided into a plurality of coding units of a deeper depth based on a quad tree structure, a binary tree structure, and/or a ternary structure.
- a quad tree structure may be applied first, and a binary tree structure and/or a ternary structure may be applied later.
- the binary tree structure may be applied first.
- the coding procedure according to this document may be performed based on the final coding unit that is no longer divided. In this case, based on the coding efficiency according to the image characteristics, the maximum coding unit can be directly used as the final coding unit, or if necessary, the coding unit is recursively divided into coding units of lower depth to be optimal. A coding unit of the size of may be used as the final coding unit.
- the coding procedure may include a procedure such as prediction, transformation, and restoration described later.
- the processing unit may further include a prediction unit (PU) or a transform unit (TU).
- the prediction unit and the transform unit may be divided or partitioned from the above-described final coding unit, respectively.
- the prediction unit may be a unit of sample prediction
- the transform unit may be a unit for inducing a transform coefficient and/or a unit for inducing a residual signal from the transform coefficient.
- the unit may be used interchangeably with terms such as a block or an area depending on the case.
- the MxN block may represent a set of samples or transform coefficients consisting of M columns and N rows.
- a sample may represent a pixel or a value of a pixel, may represent only a pixel/pixel value of a luminance component, or may represent only a pixel/pixel value of a saturation component.
- a sample may be used as a term corresponding to one picture (or image) as a pixel or pel.
- the subtraction unit 231 subtracts the prediction signal (predicted block, prediction samples, or prediction sample array) output from the prediction unit 220 from the input image signal (original block, original samples, or original sample array) to make a residual.
- a signal residual block, residual samples, or residual sample array
- the prediction unit 220 may perform prediction on a block to be processed (hereinafter referred to as a current block) and generate a predicted block including prediction samples for the current block.
- the predictor 220 may determine whether intra prediction or inter prediction is applied in units of a current block or CU.
- the prediction unit may generate various information related to prediction, such as prediction mode information, as described later in the description of each prediction mode, and transmit it to the entropy encoding unit 240.
- the information on prediction may be encoded by the entropy encoding unit 240 and output in the form of a bitstream.
- the intra prediction unit 222 may predict the current block by referring to samples in the current picture.
- the referenced samples may be located in the vicinity of the current block or may be located apart according to the prediction mode.
- prediction modes may include a plurality of non-directional modes and a plurality of directional modes.
- the non-directional mode may include, for example, a DC mode and a planar mode (Planar mode).
- the directional mode may include, for example, 33 directional prediction modes or 65 directional prediction modes according to a detailed degree of the prediction direction. However, this is an example, and more or less directional prediction modes may be used depending on the setting.
- the intra prediction unit 222 may determine a prediction mode applied to the current block by using the prediction mode applied to the neighboring block.
- the inter prediction unit 221 may derive a predicted block for the current block based on a reference block (reference sample array) specified by a motion vector on the reference picture.
- motion information may be predicted in units of blocks, subblocks, or samples based on correlation between motion information between neighboring blocks and the current block.
- the motion information may include a motion vector and a reference picture index.
- the motion information may further include inter prediction direction (L0 prediction, L1 prediction, Bi prediction, etc.) information.
- the neighboring block may include a spatial neighboring block existing in the current picture and a temporal neighboring block existing in the reference picture.
- the reference picture including the reference block and the reference picture including the temporal neighboring block may be the same or different.
- the temporal neighboring block may be called a collocated reference block, a co-located CU (colCU), and the like, and a reference picture including the temporal neighboring block may be referred to as a collocated picture (colPic).
- the inter prediction unit 221 constructs a motion information candidate list based on neighboring blocks, and provides information indicating which candidate is used to derive a motion vector and/or a reference picture index of the current block. Can be generated. Inter prediction may be performed based on various prediction modes.
- the inter prediction unit 221 may use motion information of a neighboring block as motion information of a current block.
- a residual signal may not be transmitted.
- MVP motion vector prediction
- the motion vector of the current block is calculated by using the motion vector of the neighboring block as a motion vector predictor and signaling a motion vector difference. I can instruct.
- the prediction unit 220 may generate a prediction signal based on various prediction methods to be described later.
- the prediction unit may apply intra prediction or inter prediction for prediction of one block, as well as simultaneously apply intra prediction and inter prediction. This can be called combined inter and intra prediction (CIIP).
- the prediction unit may perform intra block copy (IBC) to predict a block.
- the intra block copy may be used for content image/video coding such as a game, for example, screen content coding (SCC).
- SCC screen content coding
- IBC basically performs prediction in the current picture, but can be performed similarly to inter prediction in that it derives a reference block in the current picture. That is, the IBC may use at least one of the inter prediction techniques described in this document.
- the prediction signal generated by the inter prediction unit 221 and/or the intra prediction unit 222 may be used to generate a reconstructed signal or may be used to generate a residual signal.
- the transform unit 232 may generate transform coefficients by applying a transform technique to the residual signal.
- the transformation technique may include Discrete Cosine Transform (DCT), Discrete Sine Transform (DST), Graph-Based Transform (GBT), or Conditionally Non-linear Transform (CNT).
- DCT Discrete Cosine Transform
- DST Discrete Sine Transform
- GBT Graph-Based Transform
- CNT Conditionally Non-linear Transform
- GBT refers to the transformation obtained from this graph when the relationship information between pixels is expressed in a graph.
- CNT refers to a transformation obtained based on generating a prediction signal using all previously reconstructed pixels.
- the conversion process may be applied to a pixel block having the same size of a square, or may be applied to a block of variable size other than
- the quantization unit 233 quantizes the transform coefficients and transmits it to the entropy encoding unit 240, and the entropy encoding unit 240 encodes the quantized signal (information on quantized transform coefficients) and outputs it as a bitstream. have.
- the information on the quantized transform coefficients may be called residual information.
- the quantization unit 233 may rearrange the quantized transform coefficients in the form of blocks into a one-dimensional vector form based on a coefficient scan order, and the quantized transform coefficients in the form of the one-dimensional vector It is also possible to generate information about transform coefficients.
- the entropy encoding unit 240 may perform various encoding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), and context-adaptive binary arithmetic coding (CABAC).
- the entropy encoding unit 240 may encode together or separately information necessary for video/image reconstruction (eg, values of syntax elements) in addition to quantized transform coefficients.
- the encoded information (eg, encoded video/video information) may be transmitted or stored in a bitstream format in units of network abstraction layer (NAL) units.
- the video/video information may further include information on various parameter sets, such as an adaptation parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS).
- the video/video information may further include general constraint information.
- Signaling/transmitted information and/or syntax elements described later in this document may be encoded through the above-described encoding procedure and included in the bitstream.
- the bitstream may be transmitted through a network or may be stored in a digital storage medium.
- the network may include a broadcasting network and/or a communication network
- the digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, and SSD.
- a transmission unit for transmitting and/or a storage unit (not shown) for storing may be configured as an internal/external element of the encoding apparatus 200, or the transmission unit It may be included in the entropy encoding unit 240.
- the quantized transform coefficients output from the quantization unit 233 may be used to generate a prediction signal.
- a residual signal residual block or residual samples
- the addition unit 250 may generate a reconstructed signal (a reconstructed picture, a reconstructed block, reconstructed samples, or a reconstructed sample array) by adding the reconstructed residual signal to the prediction signal output from the prediction unit 220 .
- the predicted block may be used as a reconstructed block.
- the generated reconstructed signal may be used for intra prediction of the next processing target block in the current picture, and may be used for inter prediction of the next picture through filtering as described later.
- LMCS luma mapping with chroma scaling
- the filtering unit 260 may improve subjective/objective image quality by applying filtering to the reconstructed signal.
- the filtering unit 260 may apply various filtering methods to the reconstructed picture to generate a modified reconstructed picture, and the modified reconstructed picture may be converted to the memory 270, specifically, the DPB of the memory 270. Can be saved on.
- the various filtering methods may include, for example, deblocking filtering, sample adaptive offset (SAO), adaptive loop filter, bilateral filter, and the like.
- the filtering unit 260 may generate a variety of filtering information and transmit it to the entropy encoding unit 290 as described later in the description of each filtering method.
- the filtering information may be encoded by the entropy encoding unit 290 and output in the form of a bitstream.
- the modified reconstructed picture transmitted to the memory 270 may be used as a reference picture in the inter prediction unit 280.
- the encoding device may avoid prediction mismatch between the encoding device 200 and the decoding device, and may improve encoding efficiency.
- the DPB of the memory 270 may store the modified reconstructed picture to be used as a reference picture in the inter prediction unit 221.
- the memory 270 may store motion information of a block from which motion information in a current picture is derived (or encoded) and/or motion information of blocks in a picture that have already been reconstructed.
- the stored motion information may be transferred to the inter prediction unit 221 in order to be used as motion information of spatial neighboring blocks or motion information of temporal neighboring blocks.
- the memory 270 may store reconstructed samples of reconstructed blocks in the current picture, and may be transmitted to the intra prediction unit 222.
- FIG. 3 is a diagram schematically illustrating a configuration of a video/video decoding apparatus to which the present document can be applied.
- the decoding apparatus 300 includes an entropy decoder 310, a residual processor 320, a predictor 330, an adder 340, and a filtering unit. It may be configured to include (filter, 350) and memory (memoery) 360.
- the prediction unit 330 may include an inter prediction unit 331 and an intra prediction unit 332.
- the residual processing unit 320 may include a dequantizer 321 and an inverse transformer 321.
- the entropy decoding unit 310, the residual processing unit 320, the prediction unit 330, the addition unit 340, and the filtering unit 350 described above are one hardware component (for example, a decoder chipset or a processor). ) Can be configured.
- the memory 360 may include a decoded picture buffer (DPB), and may be configured by a digital storage medium.
- the hardware component may further include the memory 360 as an internal/external component.
- the decoding apparatus 300 may reconstruct an image in response to a process in which the video/image information is processed by the encoding apparatus of FIG. 2. For example, the decoding apparatus 300 may derive units/blocks based on block division related information obtained from the bitstream.
- the decoding device 300 may perform decoding using a processing unit applied in the encoding device.
- the processing unit of decoding may be, for example, a coding unit, and the coding unit may be divided from a coding tree unit or a maximum coding unit along a quad tree structure, a binary tree structure and/or a ternary tree structure.
- One or more transform units may be derived from the coding unit.
- the reconstructed image signal decoded and output through the decoding device 300 may be reproduced through the playback device.
- the decoding apparatus 300 may receive a signal output from the encoding apparatus of FIG. 2 in the form of a bitstream, and the received signal may be decoded through the entropy decoding unit 310.
- the entropy decoding unit 310 may parse the bitstream to derive information (eg, video/video information) necessary for image restoration (or picture restoration).
- the video/video information may further include information on various parameter sets, such as an adaptation parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS).
- the video/video information may further include general constraint information.
- the decoding apparatus may further decode the picture based on the information on the parameter set and/or the general restriction information.
- Signaled/received information and/or syntax elements described later in this document may be decoded through the decoding procedure and obtained from the bitstream.
- the entropy decoding unit 310 decodes information in a bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, and a value of a syntax element required for image restoration, a quantized value of a transform coefficient related to a residual. Can be printed.
- the CABAC entropy decoding method receives a bin corresponding to each syntax element in a bitstream, and includes information on a syntax element to be decoded and information on a neighboring and decoding target block or information on a symbol/bin decoded in a previous step.
- a context model is determined using the context model, and a symbol corresponding to the value of each syntax element can be generated by performing arithmetic decoding of the bin by predicting the probability of occurrence of a bin according to the determined context model.
- the CABAC entropy decoding method may update the context model using information of the decoded symbol/bin for the context model of the next symbol/bin after the context model is determined.
- information on prediction is provided to the prediction unit 330, and information on the residual on which entropy decoding is performed by the entropy decoding unit 310, that is, quantized transform coefficients, and Related parameter information may be input to the inverse quantization unit 321.
- information about filtering among information decoded by the entropy decoding unit 310 may be provided to the filtering unit 350.
- a receiver (not shown) for receiving a signal output from the encoding device may be further configured as an inner/outer element of the decoding device 300, or the receiver may be a component of the entropy decoding unit 310.
- the decoding apparatus according to this document may be called a video/video/picture decoding apparatus, and the decoding apparatus can be divided into an information decoder (video/video/picture information decoder) and a sample decoder (video/video/picture sample decoder). May be.
- the information decoder may include the entropy decoding unit 310, and the sample decoder includes the inverse quantization unit 321, an inverse transform unit 322, a prediction unit 330, an addition unit 340, and a filtering unit ( 350) and at least one of the memory 360 may be included.
- the inverse quantization unit 321 may inverse quantize the quantized transform coefficients and output transform coefficients.
- the inverse quantization unit 321 may rearrange the quantized transform coefficients in a two-dimensional block shape. In this case, the rearrangement may be performed based on the coefficient scan order performed by the encoding device.
- the inverse quantization unit 321 may perform inverse quantization on quantized transform coefficients by using a quantization parameter (for example, quantization step size information) and obtain transform coefficients.
- a quantization parameter for example, quantization step size information
- the inverse transform unit 322 obtains a residual signal (residual block, residual sample array) by inverse transforming the transform coefficients.
- the prediction unit may perform prediction on the current block and generate a predicted block including prediction samples for the current block.
- the prediction unit may determine whether intra prediction or inter prediction is applied to the current block based on the information about the prediction output from the entropy decoding unit 310, and may determine a specific intra/inter prediction mode.
- the prediction unit may generate a prediction signal based on various prediction methods to be described later. For example, the prediction unit may apply intra prediction or inter prediction for prediction of one block, as well as simultaneously apply intra prediction and inter prediction. This can be called combined inter and intra prediction (CIIP).
- the prediction unit may perform intra block copy (IBC) to predict a block.
- the intra block copy may be used for content image/video coding such as a game, for example, screen content coding (SCC).
- SCC screen content coding
- IBC basically performs prediction in the current picture, but can be performed similarly to inter prediction in that it derives a reference block in the current picture. That is, the IBC may use at least one of the inter prediction techniques described in this document.
- the intra prediction unit 332 may predict the current block by referring to samples in the current picture.
- the referenced samples may be located in the vicinity of the current block or may be located apart according to the prediction mode.
- prediction modes may include a plurality of non-directional modes and a plurality of directional modes.
- the intra prediction unit 332 may determine a prediction mode applied to the current block by using the prediction mode applied to the neighboring block.
- the inter prediction unit 331 may derive a predicted block for the current block based on a reference block (reference sample array) specified by a motion vector on the reference picture.
- motion information may be predicted in units of blocks, subblocks, or samples based on correlation between motion information between neighboring blocks and the current block.
- the motion information may include a motion vector and a reference picture index.
- the motion information may further include inter prediction direction (L0 prediction, L1 prediction, Bi prediction, etc.) information.
- the neighboring block may include a spatial neighboring block existing in the current picture and a temporal neighboring block existing in the reference picture.
- the inter prediction unit 331 may construct a motion information candidate list based on neighboring blocks, and derive a motion vector and/or a reference picture index of the current block based on the received candidate selection information.
- Inter prediction may be performed based on various prediction modes, and the information about the prediction may include information indicating a mode of inter prediction for the current block.
- the addition unit 340 adds the obtained residual signal to the prediction signal (predicted block, prediction sample array) output from the prediction unit 330 to generate a reconstructed signal (restored picture, reconstructed block, reconstructed sample array). I can. When there is no residual for a block to be processed, such as when the skip mode is applied, the predicted block may be used as a reconstructed block.
- the addition unit 340 may be referred to as a restoration unit or a restoration block generation unit.
- the generated reconstructed signal may be used for intra prediction of the next processing target block in the current picture, may be output through filtering as described later, or may be used for inter prediction of the next picture.
- LMCS luma mapping with chroma scaling
- the filtering unit 350 may improve subjective/objective image quality by applying filtering to the reconstructed signal.
- the filtering unit 350 may apply various filtering methods to the reconstructed picture to generate a modified reconstructed picture, and the modified reconstructed picture may be converted to the memory 60, specifically, the DPB of the memory 360. Can be transferred to.
- the various filtering methods may include, for example, deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, and the like.
- the (modified) reconstructed picture stored in the DPB of the memory 360 may be used as a reference picture in the inter prediction unit 331.
- the memory 360 may store motion information of a block from which motion information in a current picture is derived (or decoded) and/or motion information of blocks in a picture that have already been reconstructed.
- the stored motion information may be transmitted to the inter prediction unit 331 to be used as motion information of spatial neighboring blocks or motion information of temporal neighboring blocks.
- the memory 360 may store reconstructed samples of reconstructed blocks in the current picture, and may be transmitted to the intra prediction unit 332.
- the embodiments described in the prediction unit 330, the inverse quantization unit 321, the inverse transform unit 322, and the filtering unit 350 of the decoding apparatus 300 are each a prediction unit ( 220), the inverse quantization unit 234, the inverse transform unit 235, and the filtering unit 260 may be applied in the same or corresponding manner.
- a predicted block including prediction samples for a current block as a coding target block may be generated.
- the predicted block includes prediction samples in the spatial domain (or pixel domain).
- the predicted block is derived equally from the encoding device and the decoding device, and the encoding device decodes information (residual information) about the residual between the original block and the predicted block, not the original sample value of the original block itself.
- Video coding efficiency can be improved by signaling to the device.
- the decoding apparatus may derive a residual block including residual samples based on the residual information, and generate a reconstructed block including reconstructed samples by summing the residual block and the predicted block. A reconstructed picture to be included can be generated.
- the residual information may be generated through transformation and quantization procedures.
- the encoding apparatus derives a residual block between the original block and the predicted block, and derives transform coefficients by performing a transformation procedure on residual samples (residual sample array) included in the residual block. And, by performing a quantization procedure on the transform coefficients, quantized transform coefficients may be derived, and related residual information may be signaled to a decoding apparatus (via a bitstream).
- the residual information may include information such as value information of the quantized transform coefficients, position information, a transform technique, a transform kernel, and a quantization parameter.
- the decoding apparatus may perform an inverse quantization/inverse transform procedure based on the residual information and derive residual samples (or residual blocks).
- the decoding apparatus may generate a reconstructed picture based on the predicted block and the residual block.
- the encoding apparatus may also inverse quantize/inverse transform quantized transform coefficients for reference for inter prediction of a picture to derive a residual block, and generate a reconstructed picture based on this.
- pictures constituting the video/video may be encoded/decoded according to a series of decoding orders.
- a picture order corresponding to an output order of a decoded picture may be set differently from the decoding order, and based on this, not only forward prediction but also backward prediction may be performed during inter prediction.
- FIG. 4 schematically shows a picture encoding method according to an embodiment of the present document.
- S400 may be performed by the prediction unit of the above-described encoding apparatus, S410 may be performed by the residual processing unit, and S420 may be performed by the entropy encoding unit.
- S400 may include the inter/intra prediction procedure described in this document, S410 may include the residual processing procedure described in this document, and S420 may include the information encoding procedure described in this document. .
- the picture encoding procedure is not only a procedure of encoding information for picture restoration (ex. prediction information, residual information, partitioning information, etc.) and outputting it in the form of a bitstream, as well as a reconstructed picture for the current picture.
- a procedure of generating and applying in-loop filtering to a reconstructed picture may be included.
- the encoding apparatus may derive (modified) residual samples from the quantized transform coefficients through the inverse quantization unit and the inverse transform unit, and generate a reconstructed picture based on the prediction samples output of S400 and the (modified) residual samples. Can be generated.
- the reconstructed picture generated in this way may be the same as the reconstructed picture generated by the above-described decoding apparatus.
- a modified reconstructed picture can be generated through an in-loop filtering procedure for the reconstructed picture, which can be stored in a decoded picture buffer or a memory, and, as in the case of a decoding device, in the inter prediction procedure when encoding a picture later It can be used as a reference picture. As described above, in some cases, some or all of the in-loop filtering procedure may be omitted.
- (in-loop) filtering-related information may be encoded by an entropy encoding unit and output in the form of a bitstream, and the decoding device is the same as the encoding device based on the filtering-related information.
- the in-loop filtering procedure can be performed.
- noise generated during video/video coding such as blocking artifacts and ringing artifacts can be reduced, and subjective/objective visual quality can be improved.
- the encoding device and the decoding device can derive the same prediction result, increase the reliability of picture coding, and reduce the amount of data to be transmitted for picture coding. Can be reduced.
- a reconstructed block may be generated based on intra prediction/inter prediction for each block, and a reconstructed picture including the reconstructed blocks may be generated.
- the current picture/slice/tile group is an I picture/slice/tile group
- blocks included in the current picture/slice/tile group may be reconstructed based only on intra prediction.
- the current picture/slice/tile group is a P or B picture/slice/tile group
- blocks included in the current picture/slice/tile group may be reconstructed based on intra prediction or inter prediction.
- inter prediction may be applied to some blocks in the current picture/slice/tile group, and intra prediction may be applied to the remaining blocks.
- the color component of a picture may include a luma component and a chroma component, and unless explicitly limited in this document, the methods and embodiments proposed in this document may be applied to the luma component and the chroma component.
- FIG. 5 schematically shows a picture decoding method according to an embodiment of the present document.
- S500 may be performed by an entropy decoding unit of the above-described decoding apparatus, S510 may be performed by a prediction unit, S520 may be performed by a residual processing unit, and S530 may be performed by an adder, S540 may be performed by the filtering unit.
- S500 may include the information decoding procedure described in this document, S510 may include the inter/intra prediction procedure described in this document, S520 may include the residual processing procedure described in this document, , S530 may include the block/picture restoration procedure described in this document, and S540 may include the in-loop filtering procedure described in this document.
- a picture decoding procedure is schematically a procedure for obtaining image/video information (through decoding) from a bitstream (S500), a picture restoration procedure (S510 to S530), and an in-loop filtering procedure for a reconstructed picture (S540).
- the picture reconstruction procedure is based on prediction samples and residual samples obtained through inter/intra prediction (S510) and residual processing (S520, inverse quantization and inverse transformation of quantized transform coefficients) described in this document. Can be done.
- a modified reconstructed picture may be generated through an in-loop filtering procedure for a reconstructed picture generated through the picture restoration procedure, and the modified reconstructed picture may be output as a decoded picture.
- the in-loop filtering procedure includes a deblocking filtering procedure, a sample adaptive offset (SAO) procedure, an adaptive loop filter (ALF) procedure, and/or a bi-lateral filter procedure, as described above.
- the deblocking filtering procedure may be sequentially applied, or all of them may be sequentially applied.
- SAO sample adaptive offset
- ALF adaptive loop filter
- bi-lateral filter procedure may be sequentially applied, or all of them may be sequentially applied.
- SAO sample adaptive offset
- ALF adaptive loop filter
- bi-lateral filter procedure may be sequentially applied.
- the SAO procedure may be performed after the deblocking filtering procedure is applied to the reconstructed picture.
- the ALF procedure may be performed. This can likewise be done in the encoding device.
- CABAC context-adaptive binary arithmetic coding
- the encoding device may convert the input signal into a binary value by binarizing the value of the input signal.
- the input signal is already a binary value (that is, when the value of the input signal is a binary value)
- binarization is not performed and the input signal may be used as it is.
- each binary number 0 or 1 constituting the binary value may be referred to as a bin.
- each of 1, 1, and 0 may be represented as one bin.
- the bin(s) for one syntax element may represent a value of the syntax element.
- Such binarization may be based on various binarization methods such as a Truncated Rice binarization process or a fixed-length binarization process, and a binarization method for a target syntax element may be predefined.
- the binarization procedure may be performed by a binarization unit in an entropy encoding unit.
- the binarized bins of the syntax element may be input to a regular coding engine or a bypass coding engine.
- the regular coding engine of the encoding device may allocate a context model that reflects a probability value to the corresponding bin, and encode the corresponding bin based on the allocated context model.
- the regular coding engine of the encoding device may update the context model for the corresponding bin after coding for each bin. Bins coded as described above may be referred to as context-coded bins.
- binarized bins of the syntax element when binarized bins of the syntax element are input to the bypass coding engine, they may be coded as follows.
- the bypass coding engine of the encoding device may omit a procedure for estimating a probability for an input bin and a procedure for updating a probability model applied to the bin after coding.
- the encoding device may code an input bin by applying a uniform probability distribution instead of allocating a context model, thereby improving encoding speed. Bins coded as described above may be referred to as bypass bins.
- Entropy decoding may refer to a process of performing the same process as the above-described entropy encoding in reverse order.
- the decoding device may decode the encoded image/video information.
- the image/video information may include partitioning related information, prediction related information (ex.inter/intra prediction classification information, intra prediction mode information, inter prediction mode information, etc.), residual information or in-loop filtering related information, and the like. , Or various syntax elements related thereto.
- the entropy coding may be performed in units of syntax elements.
- the decoding apparatus may perform binarization on target syntax elements.
- the binarization may be based on various binarization methods such as a Truncated Rice binarization process or a fixed-length binarization process, and a binarization method for a target syntax element may be predefined.
- the decoding apparatus may derive available empty strings (empty string candidates) for available values of target syntax elements through the binarization procedure.
- the binarization procedure may be performed by a binarization unit in an entropy decoding unit.
- the decoding apparatus may sequentially decode or parse the bin strings for the target syntax elements from the input bit(s) in the bitstream, and compare the derived bin strings with the available bin strings for the corresponding syntax elements. If the derived empty string is the same as one of the available empty strings, a value corresponding to the corresponding empty string is derived as a value of the corresponding syntax element. If not, it is possible to perform the above-described procedure again after further parsing the next bit in the bitstream. Through this process, the corresponding information can be signaled using variable length bits without using a start bit or an end bit for specific information (or a specific syntax element) in the bitstream. Through this, relatively fewer bits can be allocated to a low value, and overall coding efficiency can be improved.
- the decoding apparatus may decode each bin in the bin string from a bitstream based on an entropy coding technique such as CABAC or CAVLC based on a context model or a bypass.
- an entropy coding technique such as CABAC or CAVLC based on a context model or a bypass.
- the decoding apparatus may receive a bin corresponding to the syntax element through a bitstream, and decoding information of the syntax element and the decoding target block or neighboring block or decoding in a previous step
- a context model can be determined using information of the symbol/bin, and arithmetic decoding of bins is performed by predicting the probability of occurrence of the received bin according to the determined context model. You can derive the value of the syntax element.
- the context model of the next decoded bin may be updated based on the determined context model.
- the context model may be allocated and updated for each context coded (regularly coded) bin, and the context model may be indicated based on a context index (ctxIdx) or a context index increment (ctxInc).
- ctxIdx may be derived based on ctxInc.
- ctxIdx representing a context model for each of the regularly coded bins may be derived as a sum of ctxInc and a context index offset (ctxIdxOffset).
- the ctxInc may be derived differently for each bin.
- the ctxIdxOffset may be expressed as the lowest value of the ctxIdx.
- the ctxIdxOffset may generally be a value used to distinguish context models for other syntax elements, and a context model for one syntax element may be classified or derived based on ctxInc.
- Entropy decoding may perform the same process as entropy encoding in reverse order.
- the decoding apparatus may receive a bin corresponding to the syntax element through a bitstream, and may decode the input bin by applying a uniform probability distribution. .
- the decoding apparatus may omit the procedure of deriving the context model of the syntax element and the procedure of updating the context model applied to the bin after decoding.
- the transform unit may correspond to the transform unit in the encoding apparatus of FIG. 2 described above, and the inverse transform unit may correspond to the inverse transform unit in the encoding apparatus of FIG. 2 or the inverse transform unit in the decoding apparatus of FIG. have.
- the transform unit may derive (first-order) transform coefficients by performing a first-order transform based on residual samples (residual sample array) in the residual block (S710).
- This primary transform may be referred to as a core transform.
- the first-order transform may be based on multiple transform selection (MTS), and when multiple transforms are applied as the first-order transform, it may be referred to as a multiple core transform.
- MTS multiple transform selection
- multiple core transformations are DCT (Discrete Cosine Transform) type 2 (DCT-II), DST (Discrete Sine Transform) type 7 (DST-VII), DCT type 8 (DCT-VIII) and/or DST type 1 (DST-I) may be additionally used to indicate a conversion method. That is, the multi-core transform is performed by using a residual signal (or a residual block) in the spatial domain based on a plurality of transform kernels selected from among the DCT type 2, the DST type 7, the DCT type 8, and the DST type 1.
- a transform method of transforming into transform coefficients (or first-order transform coefficients) of may be represented.
- the first-order transform coefficients may be referred to as temporary transform coefficients at the transform unit side.
- transformation coefficients may be generated by applying a transformation from a spatial domain to a frequency domain for a residual signal (or a residual block) based on DCT type 2.
- Transformation into a domain may be applied to generate transform coefficients (or first order transform coefficients).
- DCT type 2, DST type 7, DCT type 8, and DST type 1 may be referred to as a transform type, a transform kernel, or a transform core.
- a vertical transformation kernel and/or a horizontal transformation kernel for a target block may be selected from among the transformation kernels, and a vertical transformation for the target block is performed based on the vertical transformation kernel.
- the horizontal transformation may be performed on the target block based on the horizontal transformation kernel.
- the horizontal transformation may represent transformation of horizontal components of the target block
- the vertical transformation may represent transformation of vertical components of the target block.
- the vertical transform kernel/horizontal transform kernel may be adaptively determined based on a prediction mode and/or a transform index of a target block (CU or subblock) including a residual block.
- an MTS index may be encoded to indicate any one of a plurality of transform kernel sets, and MTS index information may be signaled to the decoding device.
- the MTS index may be represented by a tu_mts_idx syntax element or an mts_idx syntax element.
- the conversion kernel set according to the MTS index can be represented as shown in the following table.
- the transform unit may derive corrected (second-order) transform coefficients by performing a second-order transform based on the (first-order) transform coefficients (S720).
- the first-order transform is a transform from a spatial domain to a frequency domain
- the second-order transform may represent transforming into a more compressive expression using a correlation existing between (first-order) transform coefficients. .
- the second-order transform may include a non-separable transform.
- the second transform may be referred to as a non-separable secondary transform (NSST) or a mode-dependent non-separable secondary transform (MDNSST).
- the non-separated quadratic transform is a second-order transform of the (first-order) transform coefficients derived through the first-order transform based on a non-separable transform matrix, and modified transform coefficients for a residual signal. It may represent a transform that produces (or quadratic transform coefficients).
- the transformation can be applied at once without separating vertical transformation and horizontal transformation (or independently applying horizontal transformation and vertical transformation) to the (first-order) transformation coefficients based on the non-separated transformation matrix. .
- the non-separated quadratic transform does not separate the vertical and horizontal components of the (first-order) transform coefficients, and for example, two-dimensional signals (transform coefficients) are in a specific direction (eg, row-first). ) Direction or column-first direction), and then generating the modified transform coefficients (or quadratic transform coefficients) based on the non-separated transform matrix. I can.
- the row-first direction may indicate that the MxN blocks are arranged in a row according to the order of the first row, the second row, ..., and the Nth row
- the column-first direction (or order) May indicate that the MxN blocks are arranged in a row according to the order of the first column, the second column, ..., the M-th column.
- M and N may represent the width (W) and height (H) of the block, respectively, and both may be positive integers.
- the non-separated quadratic transform may be applied to a top-left area of a block (hereinafter, referred to as transform coefficient block) composed of (first-order) transform coefficients.
- transform coefficient block composed of (first-order) transform coefficients.
- an 8x8 non-separated quadratic transform may be applied to the upper left 8x8 region of the transform coefficient block.
- the 4x4 non-separated quadratic transform is It can be applied to the min(8, W) x min(8, H) area of the upper left of the transform coefficient block.
- the embodiment is not limited thereto, and for example, even if only the condition that the width (W) or the height (H) of the transform coefficient block is equal to or greater than 4 is satisfied, the 4x4 non-separated quadratic transform is performed at the upper left of the transform coefficient block min It can also be applied to the (8, W) x min(8, H) area.
- the non-separated quadratic transformation may be performed as follows.
- the 4x4 input block X may be represented as follows.
- the vector form of X may be represented as follows.
- Equation 2 May represent a vector X, and may be represented by rearranging the 2D block of X of Equation 1 into a 1D vector according to a row-first order.
- the second-order non-separated transform can be calculated as follows.
- T may represent a 16x16 (non-separated) transform matrix.
- HyGT Hypercube-Givens Transform
- a transformation kernel (or transformation core, transformation type) may be selected as mode dependent.
- the mode may include an intra prediction mode and/or an inter prediction mode.
- the non-separated quadratic transform may be performed based on an 8x8 transform or a 4x4 transform determined based on the width (W) and height (H) of the transform coefficient block.
- the 8x8 transform may represent a transform that can be applied to an 8x8 area included in a corresponding transform coefficient block when both W and H are equal to or greater than 8, and the 8x8 area is the upper left corner of the corresponding transform coefficient block. It can be an 8x8 area.
- the 4x4 transform can represent a transform that can be applied to a 4x4 area included in the corresponding transform coefficient block when both W and H are equal to or greater than 4, and the 4x4 area is inside the corresponding transform coefficient block. It may be a 4x4 area at the top left of the.
- an 8x8 transform kernel matrix may be a 64x64/16x64 matrix
- a 4x4 transform kernel matrix may be a 16x16/8x16 matrix.
- two non-separated quadratic transform kernels per transform set for non-separated quadratic transform may be configured for both 8x8 transform and 4x4 transform, and the transform set may be four. . That is, four transform sets may be configured for an 8x8 transform, and four transform sets may be configured for a 4x4 transform. In this case, two 8x8 transform kernels may be included in each of the four transform sets for the 8x8 transform, and two 4x4 transform kernels may be included in the four transform sets for the 4x4 transform.
- the size of the transform, the number of the set, and the number of transform kernels in the set may be a size other than 8x8 or 4x4 as an example, or n sets may be configured, and k transform kernels in each set May be included.
- n and k may each be a positive integer.
- the transform set may be referred to as an NSST set
- the transform kernel in the NSST set may be referred to as an NSST kernel.
- the selection of a specific set among the transform sets may be performed based on an intra prediction mode of a target block (CU or subblock).
- one of k transformation kernels in the specific set may be selected through a non-separated quadratic transformation index.
- the encoding device may derive a non-separated quadratic transformation index indicating a specific transformation kernel based on a rate-distortion (RD) check, and may signal the non-separated quadratic transformation index to the decoding device.
- the decoding apparatus may select one of k transform kernels in a specific set based on the non-separated quadratic transform index.
- an NSST index having a value of 0 may represent the first non-separated quadratic transformation kernel
- an NSST index having a value of 1 may represent the second non-separated quadratic transformation kernel
- a value of 2 The branch NSST index may represent the third non-separated quadratic transformation kernel.
- an NSST index having a value of 0 may indicate that the first non-separated quadratic transform is not applied to the target block
- an NSST index having a value of 1 to 3 may indicate the three transform kernels.
- the transform unit may perform the non-separated quadratic transform based on the selected transform kernels and obtain modified (quaternary) transform coefficients.
- the modified transform coefficients may be derived as quantized transform coefficients through a quantization unit as described above, and may be encoded and transmitted to a signaling and inverse quantization/inverse transform unit in an encoding device.
- the (first-order) transform coefficients which are the outputs of the first-order (separate) transform, can be derived as quantized transform coefficients through the quantization unit as described above, and are encoded. It may be transmitted to a decoding device to an inverse quantization/inverse transform unit in a signaling and encoding device.
- the inverse transform unit may perform a series of procedures in the reverse order of the procedure performed by the above-described transform unit.
- the inverse transform unit receives (inverse quantized) transform coefficients, performs a second-order (inverse) transform to derive (first-order) transform coefficients (S850), and first-order (inverse) for the (first-order) transform coefficients
- a residual block (residual samples) may be obtained by performing transformation (S860).
- the first-order transform coefficients may be referred to as transform coefficients modified by the inverse transform unit.
- the encoding apparatus and/or the decoding apparatus may generate a reconstructed block based on the residual block and the predicted block, and generate a reconstructed picture based on the residual block.
- the decoding apparatus may further include a second-order inverse transform determining unit (or an element determining whether to apply a second-order inverse transform) and a second-order inverse transform determining unit (or a second-order inverse transform determining element).
- the determining unit whether to apply the second-order inverse transform may determine whether to apply the second-order inverse transform.
- the second-order inverse transform may be NSST or RST, and the second-order inverse transform application determining unit may determine whether to apply the second-order inverse transform based on the second-order transform flag parsed or obtained from the bitstream.
- the determining unit whether to apply the second-order inverse transform may determine whether to apply the second-order inverse transform based on a transform coefficient of the residual block.
- the second-order inverse transform determiner may determine a second-order inverse transform.
- the second-order inverse transform determiner may determine the second-order inverse transform applied to the current block based on the NSST (or RST) transform set specified according to the intra prediction mode.
- a second-order transform determination method may be determined depending on the first-order transform determination method.
- various combinations of a first-order transform and a second-order transform may be determined according to the intra prediction mode.
- the second-order inverse transform determiner may determine a region to which the second-order inverse transform is applied based on the size of the current block.
- a residual block (residual samples) may be obtained by receiving the (inverse quantized) transform coefficients and performing the first-order (separation) inverse transform.
- the encoding apparatus and/or the decoding apparatus may generate a reconstructed block based on the residual block and the predicted block, and generate a reconstructed picture based on the residual block.
- a reduced secondary transform (RST) with a reduced size of a transform matrix (kernel) can be applied from the concept of NSST in order to reduce the amount of computation and memory required for the non-separated quadratic transform.
- RST may mean (simplified) transform performed on residual samples for a target block based on a transform matrix whose size is reduced according to a simplification factor.
- the amount of computation required for conversion may be reduced due to a reduction in the size of the conversion matrix. That is, the RST can be used to solve an issue of computational complexity that occurs during transformation or non-separation transformation of a large block.
- RST refers to various terms such as reduced transform, reduced secondary transform, reduction transform, simplified transform, or simple transform. May be referred to, and the name to which the RST may be referred to is not limited to the listed examples.
- RST since RST is mainly performed in a low frequency region including a non-zero coefficient in a transform block, it may be referred to as LFNST (Low-Frequency Non-Separable Transform).
- the inverse transform unit 235 of the encoding device 200 and the inverse transform unit 322 of the decoding device 300 are transformed based on the inverse RST of the transform coefficients.
- the inverse first-order transform refers to the inverse transform of the first-order transform applied to the residual.
- deriving a transform coefficient based on a transform may mean deriving a transform coefficient by applying a corresponding transform.
- the intra prediction mode may include two non-directinoal or non-angular intra prediction modes and 65 directional or angular intra prediction modes.
- the non-directional intra prediction modes may include a planar intra prediction mode of No. 0 and a DC intra prediction mode of No. 1, and the directional intra prediction modes may include 65 intra prediction modes of Nos. 2 to 66.
- the embodiment according to this document may be applied even when the number of intra prediction modes is different.
- the intra prediction mode 67 may be further used, and the intra prediction mode 67 may represent a linear model (LM) mode.
- LM linear model
- 9 exemplarily shows intra-directional modes of 65 prediction directions.
- an intra prediction mode having horizontal directionality and an intra prediction mode having vertical directionality can be distinguished based on an intra prediction mode 34 having an upward left diagonal prediction direction.
- H and V in FIG. 5 may mean horizontal and vertical directions, respectively, and a number of -32 to 32 may represent a displacement of 1/32 units on a sample grid position. This may represent an offset to the mode index value.
- intra prediction modes 2 to 33 may have horizontal directionality
- intra prediction modes 34 to 66 may have vertical directionality
- the 34th intra prediction mode can be considered to be neither horizontal nor vertical, strictly speaking, but it can be classified as belonging to horizontal directionality from the viewpoint of determining a transform set of a quadratic transform. This is because the input data is transposed and used for the vertical direction mode symmetrical around the 34th intra prediction mode, and the input data alignment method for the horizontal mode is used for the 34th intra prediction mode.
- transposing the input data may mean that a row becomes a column and a column becomes a row for the 2D block data MxN to form NxM data.
- the 18th intra prediction mode and the 50th intra prediction mode may represent a horizontal intra prediction mode and a vertical intra prediction mode, respectively, and the 2nd intra prediction mode is a left reference pixel. Since it predicts in the upward-right direction with ⁇ , it can be called as an upward-right diagonal (diagonal) intra prediction mode.
- the 34th intra prediction mode can be called a downward-right diagonal intra prediction mode
- the 66th intra prediction mode may be called a downward-left diagonal intra prediction mode have.
- FIG 10 and 11 are diagrams for explaining an RST according to an embodiment of the present document.
- FIG. 10 may be a diagram for explaining that a forward reduced transform is applied
- FIG. 7 may be a diagram for explaining that an inverse reduced transform is applied.
- the target block may represent a current block, a residual block, or a transform block on which coding is performed.
- N and R may each be a positive integer, and R may be smaller than N.
- N may mean the square of the length of one side of the block to which the transform is applied or the total number of transform coefficients corresponding to the block to which the transform is applied, and the simplification factor may mean an R/N value.
- the simplification factor may be referred to in various terms such as a reduced factor, a reduction factor, a simplified factor, or a simple factor.
- R may be referred to as a reduced coefficient, but in some cases, a simplification factor may mean R.
- the simplification factor may mean an N/R value.
- the simplification factor or the reduced coefficient may be signaled through the bitstream, but is not limited thereto.
- a predefined value for a simplification factor or a reduced coefficient may be stored in each encoding device 200 and the decoding device 300, and in this case, the simplification factor or the reduced coefficient may not be separately signaled. have.
- the size (RxN) of the simplified transform matrix may be smaller than the size (NxN) of a conventional transform matrix, and may be defined as the following equation.
- the matrix T in the reduced transform block illustrated in FIG. 10 may represent the matrix T RxN of Equation 4. As shown in FIG. 10, when the simplified transform matrix T RxN is multiplied with respect to residual samples for the target block, transform coefficients for the target block may be derived.
- the RST according to FIG. 10 is a matrix as shown in Equation 5 below. It can be expressed as an operation. In this case, memory and multiplication operations can be reduced to approximately 1/4 by a simplification factor.
- a matrix operation can be understood as an operation to obtain a column vector by multiplying a matrix and a column vector by placing a matrix on the left side of the column vector.
- r 1 to r 64 may represent residual samples for the target block. Or, for example, it may be a transform coefficient generated by applying a first-order transform. Transform coefficients c i for the target block may be derived based on the operation result of Equation (5).
- transform coefficients c 1 to c 16 for the target block may be derived. If a transform matrix with a size of 64x64 (NxN) is multiplied by residual samples of a size of 64x1 (Nx1) because a regular transform rather than RST is applied, the transform coefficients for the target block are 64 (N). Is derived, but only 16 transform coefficients (R) are derived for the target block because RST is applied. Transmission between the encoding device 200 and the decoding device 300 because the total number of transform coefficients for the target block is reduced from N to R, and the amount of data transmitted by the encoding device 200 to the decoding device 300 is reduced. Efficiency can be increased.
- the size of the normal transform matrix is 64x64 (NxN), but the size of the simplified transform matrix is reduced to 16x64 (RxN), so when performing RST compared to when performing normal transformation Memory usage can be reduced by an R/N ratio.
- the use of the simplified transform matrix can reduce the number of multiplication operations by an R/N ratio (RxN).
- the transform unit 232 of the encoding apparatus 200 may derive transform coefficients for the target block by performing a first-order transform and an RST-based second-order transform on residual samples for the target block. These transform coefficients may be transmitted to the inverse transform unit of the decoding device 300, and the inverse transform unit 322 of the decoding device 300 derives the modified transform coefficients based on the inverse reduced secondary transform (RST) of the transform coefficients. Then, residual samples for the target block may be derived based on the inverse linear transform of the modified transform coefficients.
- RST inverse reduced secondary transform
- the size of the inverse RST matrix T NxR is NxR that is smaller than the size NxN of a conventional inverse transform matrix, and may be in a transpose relationship with the simplified transform matrix T RxN shown in Equation 4.
- the matrix T t in the reduced inverse transform block shown in FIG. 11 may represent the inverse RST matrix T RxN T.
- the superscript T may represent a transpose.
- Station RxN RST matrix T T may be expressed as (T RxN) T NxR.
- modified transform coefficients for the target block may be derived by multiplying transform coefficients for the target block by the inverse RST matrix T RxN T.
- an inverse RST may be applied as an inverse linear transformation.
- residual samples for the target block may be derived when the transform coefficients for the target block are multiplied by the inverse RST matrix T RxN T.
- RST according to FIG. 7 is as shown in Equation 6 below. It can be expressed as a matrix operation.
- Equation 6 c 1 to c 16 may represent transform coefficients for the target block. Based on the operation result of Equation 6, modified transform coefficients for the target block or r j representing residual samples for the target block may be derived. That is, r 1 to r N indicating modified transform coefficients for the target block or residual samples for the target block may be derived.
- the size of the typical inverse transform matrix is 64x64 (NxN), but the size of the simplified inverse transform matrix is reduced to 64x16 (NxR).
- Memory usage can be reduced by R/N ratio.
- the use of the simplified inverse transform matrix can reduce the number of multiplication operations by an R/N ratio (NxR).
- the 8x8 RST may be applied according to the transform set. Since one transform set is composed of two or three transform kernels according to an intra prediction mode, it may be configured to select one of a maximum of four transforms including a case where a quadratic transform is not applied. When the quadratic transformation is not applied, the transformation can be regarded as the identity matrix applied. Assuming that an index of 0, 1, 2, or 3 is assigned to each of the four transformations (for example, index 0 can be allocated as an identity matrix, that is, when quadratic transformation is not applied), NSST index A transform to be applied may be designated by signaling a syntax element of, for each transform coefficient block.
- 8x8 NSST can be designated for an 8x8 upper left block through the NSST index
- 8x8 RST can be designated in the RST configuration.
- 8x8 NSST and 8x8 RST may represent transformations that can be applied to an 8x8 region included in a corresponding transform coefficient block when both W and H of the target block to be transformed are equal to or greater than 8, and the 8x8 region It may be an upper left 8x8 area inside the corresponding transform coefficient block.
- 4x4 NSST and 4x4 RST may represent transformations that can be applied to a 4x4 region included in a corresponding transform coefficient block when both W and H of the target block are equal to or greater than 4, and the 4x4 region May be the upper left 4x4 area inside the corresponding transform coefficient block.
- the encoding device is based on various coding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), or context-adaptive binary arithmetic coding (CABAC).
- the bitstream can be derived by encoding quantized values of the related transform coefficients.
- the decoding apparatus may decode the bitstream based on various coding methods such as exponential Golomb coding, CAVLC, CABAC, and the like to derive a value of a syntax element required for image restoration or quantized values of a transform coefficient related to a residual. .
- an embodiment of this document may propose a scheme for signaling the MTS index.
- the MTS index may represent any one of a plurality of transform kernel sets, as described above, the MTS index is encoded and the MTS index information may be signaled to the decoding device, and the decoding device decodes the MTS index information.
- An MTS index may be obtained, and a transform kernel set to be applied may be determined based on the MTS index.
- the MTS index may be represented by a tu_mts_idx syntax element or an mts_idx syntax element.
- the MTS index may be binarized using the Rice-Golmb parameter 0th order, but may be binarized based on Truncated Rice.
- the input parameter cMax may have a value of 4, and cRiceParam may have a value of 0.
- the encoding apparatus binarizes the MTS index to derive the bin(s) for the MTS index, encodes the derived bin(s) to derive the MTS index information (bit(s) for the MTS index, and The index information can be signaled to the decoding device.
- the decoding device decodes the MTS index information to derive bin(s) for the MTS index, and bin(s) for the derived MTS index and the candidate bin for the MTS index ( S) can be compared to derive the MTS index.
- the MTS index (eg, tu_mts_idx syntax element or mts_idx syntax element) may be context coded based on the context model or context index for all bins.
- a context index increment (ctxInc) for context coding of an MTS index or ctxInc according to an empty position may be allocated or determined as shown in Table 2.
- the context model may be selected according to the bin location.
- ctxInc for bin 0 (the first bin) may be allocated based on cqtDepth.
- cqtDepth may represent a quad-tree depth for the current block, and may be derived as one of 0 to 5. That is, ctxInc for the 0th bin may be allocated as one of 0 to 5 according to cqtDepth.
- ctxInc for bin 1 (bin 2) may be allocated 6
- ctxInc for bin 2 (bin 3) may be allocated 7
- bin 3 (bin 4) ctxInc may be assigned 8. That is, bins 0 to 3 may be assigned ctxInc of different values.
- different ctxInc values may represent different context models, and in this case, there may be nine context models for coding the MTS index.
- the MTS index (eg, tu_mts_idx syntax element or mts_idx syntax element) may be bypass coded for all bins as shown in Table 3. In this case, there may be 0 context models for coding the MTS index.
- the MTS index (eg, tu_mts_idx syntax element or mts_idx syntax element) may be context coded based on the context model or context index for the 0th bin (the first bin) as shown in Table 4, and the rest It may be bypass coded for bins. That is, 0 may be assigned to ctxInc for bin 0 (the first bin). In this case, there may be one context model for coding the MTS index.
- the MTS index (e.g., tu_mts_idx syntax element or mts_idx syntax element) is the context model or context index for bin 0 (the first bin) and bin 1 (the second bin) as shown in Table 5. It may be context coded based, and may be bypass coded for the remaining bins. That is, 0 may be allocated to ctxInc for bin 0 (first bin), and 1 may be allocated to ctxInc for bin 1 (second bin). In this case, there may be two context models for coding the MTS index.
- tu_mts_idx syntax element or mts_idx syntax element is the context model or context index for bin 0 (the first bin) and bin 1 (the second bin) as shown in Table 5. It may be context coded based, and may be bypass coded for the remaining bins. That is, 0 may be allocated to ctxInc for bin 0 (first bin), and 1 may be allocated to ctx
- the MTS index (eg, tu_mts_idx syntax element or mts_idx syntax element) may be context coded based on the context model or context index for all bins, as shown in Table 6, and 1 ctxInc for each bin Can be assigned. That is, 0 may be allocated to ctxInc for bin 0 (first bin), and 1 may be allocated to ctxInc for bin 1 (second bin). 2 may be allocated to ctxInc for bin 2 (third bin), and 2 may be allocated for ctxInc for bin 3 (fourth bin). In this case, there may be four context models for coding the MTS index.
- 0 may be allocated to ctxInc for bin 0 (first bin)
- 1 may be allocated to ctxInc for bin 1 (second bin).
- 2 may be allocated to ctxInc for bin 2 (third bin)
- 2 may be allocated for ctxInc for bin 3 (fourth bin).
- the initial value and/or the size of the multiple windows may be variable based on the occurrence statistics for the location of each bin.
- FIG. 12 and 13 schematically illustrate an example of a video/video encoding method and related components according to the embodiment(s) of the present document.
- the method disclosed in FIG. 12 may be performed by the encoding apparatus disclosed in FIG. 2 or 10.
- S1200 of FIG. 12 may be performed by the prediction unit 220 of the encoding apparatus of FIG. 13, and S1210 and S1220 of FIG. 12 are the residual processing unit 230 of the encoding apparatus of FIG.
- S1230 of FIG. 12 may be performed by the entropy encoding unit 240 of the encoding apparatus of FIG. 13.
- prediction samples or prediction-related information may be derived by the prediction unit 220 of the encoding device in FIG. 13, and the original sample may be derived by the residual processing unit 230 of the encoding device.
- Residual information may be derived from fields or prediction samples, and a bitstream may be generated from residual information or prediction related information by the entropy encoding unit 240 of the encoding apparatus.
- the method disclosed in FIG. 12 may include the embodiments described above in this document.
- the encoding apparatus generates prediction samples by performing prediction on a current block, and generates prediction mode information based on the prediction samples (S1200). For example, the encoding apparatus may perform intra prediction or inter prediction on a current block in consideration of a rate distortion (RD) cost, and may generate prediction related information including prediction mode/type information.
- RD rate distortion
- the encoding apparatus generates residual samples for the current block based on the prediction samples (S1210).
- the encoding apparatus may derive residual samples based on the predicted samples and the original samples.
- the residual samples may represent a difference between the original samples and the predicted samples.
- the encoding apparatus derives transform coefficients for the current block based on the residual samples, and generates information about a transform kernel set and residual information based on the transform coefficients (S1220).
- the encoding apparatus may derive the transform coefficients by performing transform on the residual samples.
- the conversion may be performed based on the conversion kernel or the conversion kernel set.
- the transformation kernel set may include a horizontal direction transformation kernel and a vertical direction transformation kernel.
- the encoding apparatus may derive transform coefficients by performing a first-order transform on residual samples.
- the encoding apparatus may derive temporary transform coefficients by performing a first-order transform on residual samples, and may derive the transform coefficients by performing a quadratic transform on the temporary transform coefficients.
- transformation performed based on the transformation kernel set may represent a first order transformation.
- the MTS index may represent a transform kernel set applied to the current block (transform coefficients of) among transform kernel set candidates.
- the MTS index may be represented by a tu_mts_idx syntax element or an mts_idx syntax element.
- the transformation kernel set may include a horizontal direction transformation kernel and a vertical direction transformation kernel.
- the horizontal direction transformation kernel may be represented by trTypeHor
- the vertical direction transformation kernel may be represented by trTypeVer.
- the values of trTypeHor and trTypeVer may be indicated by the horizontal direction transformation kernel and the vertical direction transformation kernel applied to the current block (transform coefficients of), and the MTS index is 0 to 4 by the values of trTypeHor and trTypeVer. It may be represented as one of the inclusion candidates.
- the MTS index when the MTS index is 0, it may represent that both trTypeHor and trTypeVer are 0. Alternatively, when the MTS index is 1, it may represent that both trTypeHor and trTypeVer are 1. Alternatively, when the MTS index is 2, it may indicate that trTypeHor is 2 and trTypeVer is 1. When the MTS index is 3, it may indicate that trTypeHor is 1 and trTypeVer is 1. Alternatively, when the MTS index is 4, it may represent that both trTypeHor and trTypeVer are 2.
- each of the transform kernel to be applied in the horizontal direction and the transform kernel to be applied in the vertical direction may be represented as one of candidates including DCT2, DST7 and DCT8 based on the MTS index.
- the MTS index may be indicated based on the bins of the empty string of the MTS index.
- the MTS index may be binarized and represented as an empty string (bins of) of the MTS index, and the bin string (bins of) of the MTS index may be entropy encoded.
- At least one bin among bins of the bin string of the MTS index may be represented based on context coding.
- context coding may be performed based on a value of a context index increase or decrease (ctxInc).
- context coding may be performed based on a context index (ctxIdx) or a context model.
- the context index may be expressed based on a value of increasing or decreasing the context index.
- the context index may be indicated based on a value of increasing or decreasing a context index and a context index offset (ctxIdxOffset).
- all bins of an empty string of an MTS index may be represented based on context coding.
- ctxInc for the first bin or bin 0 of bins of the bin string of the MTS index may be represented based on cqtDepth.
- cqtDepth may represent a quad-tree depth for the current block, and may be represented by one of 0 to 5.
- ctxInc for the second bin or bin 1 (bin 1) may be represented by 6
- ctxInc for the third bin or bin 2 (bin 2) may be represented by 7
- the fourth bin or CtxInc for bin 3 may be represented by 8.
- ctxInc for the first bin or bin 0 among bins of the empty string of the MTS index may be represented as 0, and ctxInc for the second bin or bin 1 (bin 1) is 1, ctxInc for the third bin or 2 bin 2 may be represented as 2, and ctxInc for the 4th bin or 3 bin 3 may be represented as 3. .
- the number of context index increment values that can be used for context coding of the first bin among the bin string bins may be one.
- the context coding may be performed based on at least one context model, the number of context models for context coding of a first bin among the bin strings is one, and the number of context models for context coding of the first bin is one.
- the context model may be expressed based on an increase or decrease in the context index of the first bin.
- some of the bins of the empty string of the MTS index may be represented based on context coding, and the rest may be represented based on bypass coding.
- ctxInc for the first bin or bin 0 among bins of the bin string of the MTS index may be represented as 0, and the remaining bins may be represented based on bypass coding.
- ctxInc for the first bin or bin 0 among bins of the empty string of the MTS index may be represented as 0, and ctxInc for the second bin or bin 1 (bin 1) is It may be represented by 1, and the remaining bins may be represented based on bypass coding.
- the number of context index increment values that can be used for context coding of the first bin among the bin string bins may be one.
- the context coding may be performed based on at least one context model, the number of context models for context coding of a first bin among the bin strings is one, and the number of context models for context coding of the first bin is one.
- the context model may be expressed based on an increase or decrease in the context index of the first bin.
- all bins of the bin string of the MTS index may be indicated based on bypass coding.
- bypass coding may indicate that context coding is performed based on a uniform probability distribution, and coding efficiency may be improved by omitting a context coding update procedure.
- the residual information may indicate information used to derive residual samples.
- the encoding apparatus may perform quantization on the transform coefficients, and the residual information may include information about residual samples, information related to transformation, and/or information related to quantization.
- the residual information may include information on quantized transform coefficients.
- the encoding apparatus encodes video information including prediction mode information, information on a transform kernel set, and residual information (S1230).
- the image information may further include prediction related information, and the prediction mode information may be included in the prediction related information.
- the encoding device may generate a bitstream by encoding image information.
- the bitstream may also be referred to as encoded (video) information.
- the encoding apparatus may generate reconstructed samples based on the residual samples and the prediction samples. Also, a reconstructed block and a reconstructed picture may be derived based on the reconstructed samples.
- the encoding apparatus may generate a bitstream or encoded information by encoding image information including all or part of the above-described information (or syntax elements). Alternatively, it can be output in the form of a bitstream.
- the bitstream or encoded information may be transmitted to a decoding device through a network or a storage medium.
- the bitstream or the encoded information may be stored in a computer-readable storage medium, and the bitstream or the encoded information may be generated by the above-described video encoding method.
- the method disclosed in FIG. 14 may be performed by the decoding apparatus disclosed in FIG. 3 or 15.
- S1400 of FIG. 14 may be performed by the entropy decoding unit 310 of the decoding apparatus in FIG. 15, and S1410 of FIG. 14 is performed by the prediction unit 330 of the decoding apparatus in FIG. 15.
- S1420 of FIG. 14 may be performed by the residual processing unit 320 of the decoding device in FIG. 15, and S1430 of FIG. 14 may be performed by the adding unit 340 of the decoding device in FIG. 15 Can be.
- prediction related information or residual information may be derived from the bitstream by the entropy decoding unit 310 of the decoding device in FIG.
- Residual samples may be derived from residual information according to, and prediction samples may be derived from prediction-related information by the prediction unit 330 of the decoding device, and residual samples may be derived from the addition unit 340 of the decoding device.
- a reconstructed block or a reconstructed picture may be derived from dual samples or prediction samples.
- the method disclosed in FIG. 14 may include the embodiments described above in this document.
- the decoding apparatus acquires prediction mode information, information on a transform kernel set, and residual information from a bitstream (S1400).
- the decoding apparatus may parse or decode a bitstream to obtain prediction related information, information about a transform kernel set, and/or residual information.
- the prediction related information may include prediction mode/type information.
- the bitstream may be referred to as encoded (video) information.
- the MTS index may indicate a transform kernel set to be applied to the current block among transform kernel set candidates.
- the MTS index may be represented by a tu_mts_idx syntax element or an mts_idx syntax element.
- the transform kernel set may include a transform kernel to be applied to the current block in a horizontal direction and a transform kernel to be applied to the current block in a vertical direction.
- a transform kernel to be applied in the horizontal direction may be represented by trTypeHor
- a transform kernel to be applied in the vertical direction may be represented by trTypeVer.
- the MTS index may be derived as one of candidates including 0 to 4, and trTypeHor and trTypeVer may be derived as one of 0 to 2, respectively, according to the MTS index.
- both trTypeHor and trTypeVer may be 0.
- both trTypeHor and trTypeVer may be 1.
- trTypeHor may be 2
- trTypeVer may be 1.
- the MTS index is 3
- trTypeHor may be 1
- trTypeVer may be 1.
- both trTypeHor and trTypeVer may be 2.
- a value of trTypeHor or trTypeVer may indicate a conversion kernel, 0 may indicate DCT2, 1 may indicate DST7, and 2 may indicate DCT8. That is, each of the transform kernel to be applied in the horizontal direction and the transform kernel to be applied in the vertical direction may be derived as one of candidates including DCT2, DST7 and DCT8 based on the MTS index.
- the MTS index may be derived based on the bins of the empty string of the MTS index.
- the MTS index information may be entropy decoded and derived as a binarized MTS index, and the binarized MTS index may be represented as an empty string (bins of) of the MTS index.
- At least one bin among bins of the bin string of the MTS index may be derived based on context coding.
- context coding may be performed based on a value of a context index increase or decrease (ctxInc).
- context coding may be performed based on a context index (ctxIdx) or a context model.
- the context index may be derived based on an increase or decrease in the context index.
- the context index may be derived based on the context index increase/decrease value and the context index offset (ctxIdxOffset).
- all bins of the bin string of the MTS index may be derived based on context coding.
- ctxInc for the first bin or bin 0 among bins of the bin string of the MTS index may be allocated based on cqtDepth.
- cqtDepth may represent a quad-tree depth for the current block, and may be derived as one of 0 to 5.
- ctxInc for the second bin or bin 1 (bin 1) may be assigned 6
- ctxInc for the third bin or bin 2 (bin 2) may be assigned 7
- the fourth bin or 8 may be assigned as ctxInc for bin 3 (bin 3).
- ctxInc for the first bin or bin 0 (bin 0) among the bins of the empty string of the MTS index may be assigned 0, and ctxInc for the second bin or bin 1 (bin 1) is 1 may be allocated, ctxInc for the third bin or 2 bin 2 may be allocated 2, and ctxInc for the fourth bin or 3 bin 3 may be allocated 3 .
- the number of context index increment values that can be used for context coding of the first bin among the bin string bins may be one.
- the context coding may be performed based on at least one context model, the number of context models for context coding of a first bin among the bin strings is one, and the number of context models for context coding of the first bin is one.
- the context model may be derived based on an increase or decrease in the context index of the first bin.
- some of the bins of the bin string of the MTS index may be derived based on context coding, and the rest may be derived based on bypass coding.
- 0 may be assigned to ctxInc for the first bin or bin 0 of the bin strings of the MTS index, and the remaining bins may be derived based on bypass coding.
- ctxInc for the first bin or bin 0 (bin 0) among the bins of the empty string of the MTS index may be assigned 0, and ctxInc for the second bin or bin 1 (bin 1) is 1 can be assigned, and the remaining bins can be derived based on bypass coding.
- the number of context index increment values that can be used for context coding of the first bin among the bin string bins may be one.
- the context coding may be performed based on at least one context model, the number of context models for context coding of a first bin among the bin strings is one, and the number of context models for context coding of the first bin is one.
- the context model may be derived based on an increase or decrease in the context index of the first bin.
- all bins of the bin string of the MTS index may be derived based on bypass coding.
- bypass coding may indicate that context coding is performed based on a uniform probability distribution, and coding efficiency may be improved by omitting a context coding update procedure.
- the residual information may indicate information used to derive residual samples, and may include information about residual samples, information related to inverse transformation, and/or information related to inverse quantization.
- the residual information may include information on quantized transform coefficients.
- the decoding apparatus generates prediction samples for the current block based on the prediction mode information (S1410). For example, the decoding apparatus may generate prediction samples of the current block based on prediction related information including prediction mode/type information about the current block. Alternatively, the decoding apparatus may generate prediction samples by performing intra prediction or inter prediction based on the prediction related information.
- the decoding apparatus generates residual samples for the current block based on the residual information (S1420). For example, the decoding apparatus may derive transform coefficients for the current block based on the residual information, and may generate residual samples of the current block based on information about the transform kernel set and the transform coefficients. For example, the decoding apparatus may derive quantized transform coefficients for the current block based on the information on the quantized transform coefficients included in residual information. For example, the decoding apparatus may derive transform coefficients for the current block by performing inverse quantization on the quantized transform coefficients.
- the residual samples may be generated based on a transform kernel set indicated by the transform coefficients and the MTS index. That is, the decoding apparatus may generate the residual samples from the transform coefficients through inverse transform using the transform kernel set indicated by the MTS index.
- the inverse transform using the transform kernel set indicated by the MTS index may be included in the first-order inverse transform.
- the decoding apparatus may use not only a first-order inverse transform but also a second-order inverse transform when generating residual samples from transform coefficients. In this case, the decoding apparatus may derive modified transform coefficients by performing a second-order inverse transform on the transform coefficients, and may generate the residual samples by performing a first-order inverse transform on the modified transform coefficients.
- the decoding apparatus generates reconstructed samples of the current block based on the prediction samples and the residual samples (S1430). Also, for example, the decoding apparatus may derive a reconstructed block or a reconstructed picture based on the reconstructed samples.
- the decoding apparatus may obtain image information including all or part of the above-described information (or syntax elements) by decoding the bitstream or the encoded information.
- the bitstream or encoded information may be stored in a computer-readable storage medium, and may cause the above-described decoding method to be performed.
- the method according to the embodiments of the present document described above may be implemented in the form of software, and the encoding device and/or the decoding device according to the present document is, for example, an image such as a TV, computer, smartphone, set-top box, It may be included in the device that performs the processing.
- the above-described method may be implemented as a module (process, function, etc.) performing the above-described functions.
- the modules are stored in memory and can be executed by the processor.
- the memory may be inside or outside the processor, and may be connected to the processor by various well-known means.
- the processor may include an application-specific integrated circuit (ASIC), another chipset, a logic circuit, and/or a data processing device.
- the memory may include read-only memory (ROM), random access memory (RAM), flash memory, memory card, storage medium, and/or other storage device. That is, the embodiments described in this document may be implemented and performed on a processor, microprocessor, controller, or chip.
- the functional units illustrated in each drawing may be implemented and executed on a computer, processor, microprocessor, controller, or chip. In this case, information for implementation (ex. information on instructions) or an algorithm may be stored in a digital storage medium.
- the decoding device and the encoding device to which the embodiment(s) of the present document is applied include a multimedia broadcasting transmission/reception device, a mobile communication terminal, a home cinema video device, a digital cinema video device, a surveillance camera, a video chat device, and a video communication device.
- Real-time communication device mobile streaming device, storage medium, camcorder, video-on-demand (VoD) service provider, OTT video (over the top video) device, internet streaming service provider, 3D (3D) video device, virtual reality (VR) ) Device, AR (argumente reality) device, video telephony video device, vehicle terminal (ex.
- an OTT video (Over the top video) device may include a game console, a Blu-ray player, an Internet-connected TV, a home theater system, a smartphone, a tablet PC, and a digital video recorder (DVR).
- a game console may include a game console, a Blu-ray player, an Internet-connected TV, a home theater system, a smartphone, a tablet PC, and a digital video recorder (DVR).
- DVR digital video recorder
- the processing method to which the embodiment(s) of this document is applied may be produced in the form of a program executed by a computer, and may be stored in a computer-readable recording medium.
- Multimedia data having a data structure according to the embodiment(s) of this document may also be stored in a computer-readable recording medium.
- the computer-readable recording medium includes all kinds of storage devices and distributed storage devices in which computer-readable data is stored.
- the computer-readable recording medium includes, for example, Blu-ray disk (BD), universal serial bus (USB), ROM, PROM, EPROM, EEPROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical It may include a data storage device.
- the computer-readable recording medium includes media implemented in the form of a carrier wave (for example, transmission through the Internet).
- the bitstream generated by the encoding method may be stored in a computer-readable recording medium or transmitted through a wired or wireless communication network.
- embodiment(s) of this document may be implemented as a computer program product by program code, and the program code may be executed in a computer according to the embodiment(s) of this document.
- the program code may be stored on a carrier readable by a computer.
- FIG. 16 shows an example of a content streaming system to which embodiments disclosed in this document can be applied.
- a content streaming system to which embodiments of the present document are applied may largely include an encoding server, a streaming server, a web server, a media storage device, a user device, and a multimedia input device.
- the encoding server serves to generate a bitstream by compressing content input from multimedia input devices such as smartphones, cameras, camcorders, etc. into digital data, and transmits it to the streaming server.
- multimedia input devices such as smartphones, cameras, camcorders, etc. directly generate bitstreams
- the encoding server may be omitted.
- the bitstream may be generated by an encoding method or a bitstream generation method to which the embodiments of the present document are applied, and the streaming server may temporarily store the bitstream while transmitting or receiving the bitstream.
- the streaming server transmits multimedia data to a user device based on a user request through a web server, and the web server serves as an intermediary for notifying the user of a service.
- the web server transmits it to the streaming server, and the streaming server transmits multimedia data to the user.
- the content streaming system may include a separate control server, and in this case, the control server serves to control commands/responses between devices in the content streaming system.
- the streaming server may receive content from a media storage and/or encoding server. For example, when content is received from the encoding server, the content may be received in real time. In this case, in order to provide a smooth streaming service, the streaming server may store the bitstream for a predetermined time.
- Examples of the user device include a mobile phone, a smart phone, a laptop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), a navigation system, a slate PC, and Tablet PC, ultrabook, wearable device, for example, smartwatch, smart glass, head mounted display (HMD)), digital TV, desktop There may be computers, digital signage, etc.
- PDA personal digital assistant
- PMP portable multimedia player
- HMD head mounted display
- TV desktop
- desktop There may be computers, digital signage, etc.
- Each server in the content streaming system may be operated as a distributed server, and in this case, data received from each server may be distributedly processed.
- the claims set forth herein may be combined in a variety of ways.
- the technical features of the method claims of the present specification may be combined to be implemented as a device, and the technical features of the device claims of the present specification may be combined to be implemented by a method.
- the technical characteristics of the method claim of the present specification and the technical characteristics of the device claim may be combined to be implemented as a device, and the technical characteristics of the method claim of the present specification and the technical characteristics of the device claim may be combined to be implemented by a method.
Abstract
Description
Claims (15)
- 디코딩 장치에 의하여 수행되는 영상 디코딩 방법에 있어서,비트스트림으로부터 예측 모드 정보, 변환 커널 세트에 관한 정보 및 레지듀얼 정보를 획득하는 단계;상기 예측 모드 정보를 기반으로 현재 블록에 대한 예측 샘플들을 생성하는 단계;상기 레지듀얼 정보를 기반으로 현재 블록에 대한 레지듀얼 샘플들을 생성하는 단계; 및상기 예측 샘플들 및 상기 레지듀얼 샘플들을 기반으로 상기 현재 블록의 복원 샘플들을 생성하는 단계를 포함하고,상기 레지듀얼 샘플들은 상기 변환 커널 세트에 관한 정보 및 상기 현재 블록에 대한 변환 계수들을 기반으로 생성되고,상기 변환 계수들은 상기 레지듀얼 정보를 기반으로 도출되고,상기 변환 커널 세트에 관한 정보는 변환 커널 세트 후보들 중 상기 현재 블록에 적용할 변환 커널 세트를 나타내고,상기 변환 커널 세트에 관한 정보의 빈 스트링의 빈들 중 적어도 하나의 빈은 컨텍스트 코딩을 기반으로 도출되고,상기 컨텍스트 코딩은 적어도 하나의 컨텍스트 모델을 기반으로 수행되고,상기 빈 스트링의 빈들 중 첫 번째 빈의 컨텍스트 코딩을 위한 컨텍스트 모델의 개수는 한 개이고, 상기 첫 번째 빈의 컨텍스트 코딩을 위한 상기 컨텍스트 모델은 상기 첫 번째 빈의 컨텍스트 인덱스 증감의 값을 기반으로 도출되는 것을 특징으로 하는, 영상 디코딩 방법.
- 청구항 1에 있어서,상기 빈 스트링의 빈들 중 첫 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 0이고, 상기 빈 스트링의 빈들 중 두 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 1이고, 상기 빈 스트링의 빈들 중 세 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 2이고, 상기 빈 스트링의 빈들 중 네 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 3인 것을 특징으로 하는, 영상 디코딩 방법.
- 청구항 1에 있어서,상기 빈 스트링의 빈들 중 첫 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 0이고, 상기 빈 스트링의 빈들 중 두 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 1이고,상기 빈 스트링의 빈들 중 나머지 빈들은 바이패스 코딩을 기반으로 도출되는 것을 특징으로 하는, 영상 디코딩 방법.
- 청구항 1에 있어서,상기 빈 스트링의 빈들 중 첫 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 0이고,상기 빈 스트링의 빈들 중 나머지 빈들은 바이패스 코딩을 기반으로 도출되는 것을 특징으로 하는, 영상 디코딩 방법.
- 청구항 1에 있어서,상기 변환 커널 세트는 상기 현재 블록에 수평 방향으로 적용할 변환 커널 및 상기 현재 블록에 수직 방향으로 적용할 변환 커널을 포함하는 것을 특징으로 하는, 영상 디코딩 방법.
- 청구항 1에 있어서,상기 수평 방향으로 적용할 변환 커널 및 상기 수직 방향으로 적용할 변환 커널 각각은 상기 변환 커널 세트에 관한 정보를 기반으로 DCT2, DST7 및 DCT8을 포함하는 후보들 중 하나로 도출되는 것을 특징으로 하는, 영상 디코딩 방법.
- 청구항 1에 있어서,상기 변환 커널 세트에 관한 정보는 0 내지 4를 포함하는 후보들 중 하나로 도출되고,상기 변환 커널 세트에 관한 정보는 상기 변환 커널 세트에 관한 정보의 빈 스트링의 빈들을 기반으로 도출되는 것을 특징으로 하는, 영상 디코딩 방법.
- 인코딩 장치에 의하여 수행되는 영상 인코딩 방법에 있어서,현재 블록에 대하여 예측을 수행하여 예측 샘플들을 생성하고, 상기 예측 샘플들을 기반으로 예측 모드 정보를 생성하는 단계;상기 예측 샘플들을 기반으로 상기 현재 블록에 대한 레지듀얼 샘플들을 생성하는 단계;상기 레지듀얼 샘플들을 기반으로 상기 현재 블록에 대한 변환 계수들을 도출하고, 상기 변환 계수들을 기반으로 변환 커널 세트에 관한 정보 및 레지듀얼 정보를 생성하는 단계; 및상기 예측 모드 정보, 상기 변환 커널 세트에 관한 정보 및 상기 레지듀얼 정보를 포함하는 영상 정보를 인코딩하는 단계를 포함하고,상기 변환 커널 세트에 관한 정보는 변환 커널 세트 후보들 중 상기 현재 블록에 적용할 변환 커널 세트를 나타내고,상기 변환 커널 세트에 관한 정보의 빈 스트링의 빈들 중 적어도 하나의 빈은 컨텍스트 코딩을 기반으로 나타내어지고,상기 컨텍스트 코딩은 적어도 하나의 컨텍스트 모델을 기반으로 수행되고,상기 빈 스트링의 빈들 중 첫 번째 빈의 컨텍스트 코딩을 위한 컨텍스트 모델의 개수는 한 개이고, 상기 첫 번째 빈의 컨텍스트 코딩을 위한 상기 컨텍스트 모델은 상기 첫 번째 빈의 컨텍스트 인덱스 증감의 값을 기반으로 나타내어지는 것을 특징으로 하는, 영상 인코딩 방법.
- 청구항 8에 있어서,상기 빈 스트링의 빈들 중 첫 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 0이고, 상기 빈 스트링의 빈들 중 두 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 1이고, 상기 빈 스트링의 빈들 중 세 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 2이고, 상기 빈 스트링의 빈들 중 네 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 3인 것을 특징으로 하는, 영상 인코딩 방법.
- 청구항 8에 있어서,상기 빈 스트링의 빈들 중 첫 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 0이고, 상기 빈 스트링의 빈들 중 두 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 1이고,상기 빈 스트링의 빈들 중 나머지 빈들은 바이패스 코딩을 기반으로 나타내어지는 것을 특징으로 하는, 영상 인코딩 방법.
- 청구항 8에 있어서,상기 빈 스트링의 빈들 중 첫 번째 빈에 대한 컨텍스트 인덱스 증감의 값은 0이고,상기 빈 스트링의 빈들 중 나머지 빈들은 바이패스 코딩을 기반으로 나타내어지는 것을 특징으로 하는, 영상 인코딩 방법.
- 청구항 8에 있어서,상기 변환 커널 세트는 상기 현재 블록에 수평 방향으로 적용할 변환 커널 및 상기 현재 블록에 수직 방향으로 적용할 변환 커널을 포함하는 것을 특징으로 하는, 영상 인코딩 방법.
- 청구항 8에 있어서,상기 수평 방향으로 적용할 변환 커널 및 상기 수직 방향으로 적용할 변환 커널 각각은 상기 변환 커널 세트에 관한 정보를 기반으로 DCT2, DST7 및 DCT8을 포함하는 후보들 중 하나로 나타내어지는 것을 특징으로 하는, 영상 인코딩 방법.
- 청구항 8에 있어서,상기 변환 커널 세트에 관한 정보는 0 내지 4를 포함하는 후보들 중 하나로 나타내어지고,상기 변환 커널 세트에 관한 정보는 상기 변환 커널 세트에 관한 정보의 빈 스트링의 빈들을 기반으로 나타내어지는 것을 특징으로 하는, 영상 인코딩 방법.
- 디코딩 장치가 영상 디코딩 방법을 수행하도록 야기하는 인코딩된 정보를 저장하는 컴퓨터 판독 가능한 디지털 저장 매체에 있어서, 상기 영상 디코딩 방법은:상기 인코딩된 정보로부터 예측 모드 정보, 변환 커널 세트에 관한 정보 및 레지듀얼 정보를 획득하는 단계;상기 예측 모드 정보를 기반으로 현재 블록에 대한 예측 샘플들을 생성하는 단계;상기 레지듀얼 정보를 기반으로 현재 블록에 대한 레지듀얼 샘플들을 생성하는 단계; 및상기 예측 샘플들 및 상기 레지듀얼 샘플들을 기반으로 상기 현재 블록의 복원 샘플들을 생성하는 단계를 포함하고,상기 레지듀얼 샘플들은 상기 변환 커널 세트에 관한 정보 및 상기 현재 블록에 대한 변환 계수들을 기반으로 생성되고,상기 변환 계수들은 상기 레지듀얼 정보를 기반으로 도출되고,상기 변환 커널 세트에 관한 정보는 변환 커널 세트 후보들 중 상기 현재 블록에 적용할 변환 커널 세트를 나타내고,상기 변환 커널 세트에 관한 정보의 빈 스트링의 빈들 중 적어도 하나의 빈은 컨텍스트 코딩을 기반으로 도출되고,상기 컨텍스트 코딩은 적어도 하나의 컨텍스트 모델을 기반으로 수행되고,상기 빈 스트링의 빈들 중 첫 번째 빈의 컨텍스트 코딩을 위한 컨텍스트 모델의 개수는 한 개이고, 상기 첫 번째 빈의 컨텍스트 코딩을 위한 상기 컨텍스트 모델은 상기 첫 번째 빈의 컨텍스트 인덱스 증감의 값을 기반으로 도출되는 것을 특징으로 하는, 컴퓨터 판독 가능한 디지털 저장 매체.
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
MX2021016158A MX2021016158A (es) | 2019-06-19 | 2020-06-11 | Codificacion de contexto para informacion sobre el conjunto de nucleo de transformacion en el sistema de codificacion de imagen. |
BR112021025530A BR112021025530A2 (pt) | 2019-06-19 | 2020-06-11 | Codificação por contexto para informações sobre conjunto de núcleo de transformada em sistema de codificação de imagem |
JP2021575522A JP7302036B2 (ja) | 2019-06-19 | 2020-06-11 | 画像コーディングシステムにおいて変換カーネルセットに関する情報に対するコンテキストコーディング |
CN202080052337.0A CN114128267A (zh) | 2019-06-19 | 2020-06-11 | 图像编译系统中用于关于变换核集的信息的上下文编译 |
EP20826288.1A EP3989561A4 (en) | 2019-06-19 | 2020-06-11 | CONTEXT CODING FOR INFORMATION ON A SET OF TRANSFORMATION KERNELS IN AN IMAGE CODING SYSTEM |
KR1020217041548A KR20220000404A (ko) | 2019-06-19 | 2020-06-11 | 영상 코딩 시스템에서 변환 커널 세트에 관한 정보에 대한 컨텍스트 코딩 |
US17/555,837 US11622114B2 (en) | 2019-06-19 | 2021-12-20 | Context coding for information on transform kernel set in image coding system |
US18/117,774 US20230209061A1 (en) | 2019-06-19 | 2023-03-06 | Context coding for information on transform kernel set in image coding system |
JP2023101793A JP7476402B2 (ja) | 2019-06-19 | 2023-06-21 | 画像コーディングシステムにおいて変換カーネルセットに関する情報に対するコンテキストコーディング |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962863815P | 2019-06-19 | 2019-06-19 | |
US62/863,815 | 2019-06-19 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/555,837 Continuation US11622114B2 (en) | 2019-06-19 | 2021-12-20 | Context coding for information on transform kernel set in image coding system |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020256345A1 true WO2020256345A1 (ko) | 2020-12-24 |
Family
ID=74037360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2020/007598 WO2020256345A1 (ko) | 2019-06-19 | 2020-06-11 | 영상 코딩 시스템에서 변환 커널 세트에 관한 정보에 대한 컨텍스트 코딩 |
Country Status (8)
Country | Link |
---|---|
US (2) | US11622114B2 (ko) |
EP (1) | EP3989561A4 (ko) |
JP (1) | JP7302036B2 (ko) |
KR (1) | KR20220000404A (ko) |
CN (1) | CN114128267A (ko) |
BR (1) | BR112021025530A2 (ko) |
MX (1) | MX2021016158A (ko) |
WO (1) | WO2020256345A1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3989561A4 (en) * | 2019-06-19 | 2023-05-24 | LG Electronics Inc. | CONTEXT CODING FOR INFORMATION ON A SET OF TRANSFORMATION KERNELS IN AN IMAGE CODING SYSTEM |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190003950A (ko) * | 2016-05-03 | 2019-01-10 | 퀄컴 인코포레이티드 | 2차 변환 인덱스 이진화 |
WO2019009618A1 (ko) * | 2017-07-04 | 2019-01-10 | 삼성전자 주식회사 | 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치 |
KR101973568B1 (ko) * | 2010-09-30 | 2019-04-30 | 한국전자통신연구원 | 영상 변환 부호화/복호화 방법 및 장치 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100717055B1 (ko) * | 2005-11-18 | 2007-05-10 | 삼성전자주식회사 | Cabac 복호기에서 복수의 이진 값들을 파이프라인방식에 의하여 복호화하는 방법 및 이를 위한 복호화 장치 |
US20140092985A1 (en) * | 2012-09-28 | 2014-04-03 | Sharp Laboratories Of America, Inc. | Content initialization for enhancement layer coding |
KR20230130772A (ko) * | 2016-02-12 | 2023-09-12 | 삼성전자주식회사 | 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치 |
RU2733096C2 (ru) * | 2016-05-13 | 2020-09-29 | Сони Корпорейшн | Устройство и способ обработки изображения |
KR20240010541A (ko) * | 2017-07-04 | 2024-01-23 | 삼성전자주식회사 | 다중 코어 변환에 의한 비디오 복호화 방법 및 장치, 다중 코어 변환에 의한 비디오 부호화 방법 및 장치 |
JP2020053924A (ja) | 2018-09-28 | 2020-04-02 | シャープ株式会社 | 動画像符号化装置、動画像復号装置 |
EP3989561A4 (en) * | 2019-06-19 | 2023-05-24 | LG Electronics Inc. | CONTEXT CODING FOR INFORMATION ON A SET OF TRANSFORMATION KERNELS IN AN IMAGE CODING SYSTEM |
-
2020
- 2020-06-11 EP EP20826288.1A patent/EP3989561A4/en active Pending
- 2020-06-11 KR KR1020217041548A patent/KR20220000404A/ko unknown
- 2020-06-11 CN CN202080052337.0A patent/CN114128267A/zh active Pending
- 2020-06-11 WO PCT/KR2020/007598 patent/WO2020256345A1/ko active Application Filing
- 2020-06-11 JP JP2021575522A patent/JP7302036B2/ja active Active
- 2020-06-11 MX MX2021016158A patent/MX2021016158A/es unknown
- 2020-06-11 BR BR112021025530A patent/BR112021025530A2/pt unknown
-
2021
- 2021-12-20 US US17/555,837 patent/US11622114B2/en active Active
-
2023
- 2023-03-06 US US18/117,774 patent/US20230209061A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101973568B1 (ko) * | 2010-09-30 | 2019-04-30 | 한국전자통신연구원 | 영상 변환 부호화/복호화 방법 및 장치 |
KR20190003950A (ko) * | 2016-05-03 | 2019-01-10 | 퀄컴 인코포레이티드 | 2차 변환 인덱스 이진화 |
WO2019009618A1 (ko) * | 2017-07-04 | 2019-01-10 | 삼성전자 주식회사 | 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치 |
Non-Patent Citations (2)
Title |
---|
CHRISTOPHER HOLLMANN: "CE-6 related: Transform Simplification", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, JVET-M0366-V5, 13TH MEETING, 15 January 2019 (2019-01-15), Marrakech, MA, XP030210923, Retrieved from the Internet <URL:http://phenix.it-sudparis.eu/jvet/doc_end_user/current_document.php?id=5173> [retrieved on 20200828] * |
JANI LAINEMA: "CE6: 2-mode MTS (CE6-2.1", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, JVET-N0053, 14TH MEETING, 12 March 2019 (2019-03-12), Geneva, CH, XP030202617, Retrieved from the Internet <URL:http://phenix.it-sudparis.eu/jvet/doc_end_user/current_document.php?id=5773> [retrieved on 20200828] * |
Also Published As
Publication number | Publication date |
---|---|
US20230209061A1 (en) | 2023-06-29 |
JP2023112079A (ja) | 2023-08-10 |
JP7302036B2 (ja) | 2023-07-03 |
KR20220000404A (ko) | 2022-01-03 |
US11622114B2 (en) | 2023-04-04 |
BR112021025530A2 (pt) | 2022-02-01 |
MX2021016158A (es) | 2022-03-04 |
US20220191500A1 (en) | 2022-06-16 |
EP3989561A4 (en) | 2023-05-24 |
CN114128267A (zh) | 2022-03-01 |
JP2022538031A (ja) | 2022-08-31 |
EP3989561A1 (en) | 2022-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020071830A1 (ko) | 히스토리 기반 움직임 정보를 이용한 영상 코딩 방법 및 그 장치 | |
WO2020246849A1 (ko) | 변환에 기반한 영상 코딩 방법 및 그 장치 | |
WO2020218793A1 (ko) | Bdpcm에 기반한 영상 코딩 방법 및 그 장치 | |
WO2020256344A1 (ko) | 영상 코딩에서 변환 커널 세트를 나타내는 정보의 시그널링 | |
WO2020197236A1 (ko) | 서브 픽처 핸들링 구조 기반 영상 또는 비디오 코딩 | |
WO2020171632A1 (ko) | Mpm 리스트 기반 인트라 예측 방법 및 장치 | |
WO2021040400A1 (ko) | 팔레트 모드 기반 영상 또는 비디오 코딩 | |
WO2020149630A1 (ko) | 영상 코딩 시스템에서 cclm 예측 기반 영상 디코딩 방법 및 그 장치 | |
WO2020116961A1 (ko) | 이차 변환에 기반한 영상 코딩 방법 및 그 장치 | |
WO2021096057A1 (ko) | 비디오 또는 영상 코딩 시스템에서의 엔트리 포인트 관련 정보에 기반한 영상 코딩 방법 | |
WO2020256346A1 (ko) | 변환 커널 세트에 관한 정보에 대한 코딩 | |
WO2020145604A1 (ko) | Mpm 리스트를 사용하는 인트라 예측 기반 영상 코딩 방법 및 장치 | |
WO2020071832A1 (ko) | 변환 계수 코딩 방법 및 그 장치 | |
WO2020235960A1 (ko) | Bdpcm 에 대한 영상 디코딩 방법 및 그 장치 | |
WO2020197274A1 (ko) | 변환에 기반한 영상 코딩 방법 및 그 장치 | |
WO2021034161A1 (ko) | 인트라 예측 장치 및 방법 | |
WO2021118293A1 (ko) | 필터링 기반 영상 코딩 장치 및 방법 | |
WO2020180043A1 (ko) | Lmcs에 기반한 영상 코딩 방법 및 그 장치 | |
WO2020185039A1 (ko) | 레지듀얼 코딩 방법 및 장치 | |
WO2020145620A1 (ko) | Mpm 리스트를 사용하는 인트라 예측 기반 영상 코딩 방법 및 장치 | |
WO2020141856A1 (ko) | 영상 코딩 시스템에서 레지듀얼 정보를 사용하는 영상 디코딩 방법 및 그 장치 | |
WO2020197031A1 (ko) | 영상 코딩 시스템에서 다중 참조 라인 기반의 인트라 예측 방법 및 장치 | |
WO2020256345A1 (ko) | 영상 코딩 시스템에서 변환 커널 세트에 관한 정보에 대한 컨텍스트 코딩 | |
WO2021034160A1 (ko) | 매트릭스 인트라 예측 기반 영상 코딩 장치 및 방법 | |
WO2021201463A1 (ko) | 인루프 필터링 기반 영상 코딩 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20826288 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021575522 Country of ref document: JP Kind code of ref document: A Ref document number: 20217041548 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 122023004414 Country of ref document: BR |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112021025530 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 2020826288 Country of ref document: EP Effective date: 20220119 |
|
ENP | Entry into the national phase |
Ref document number: 112021025530 Country of ref document: BR Kind code of ref document: A2 Effective date: 20211217 |