WO2020145798A1 - Procédé et appareil de codage vidéo utilisant un fanion de saut de transformée - Google Patents

Procédé et appareil de codage vidéo utilisant un fanion de saut de transformée Download PDF

Info

Publication number
WO2020145798A1
WO2020145798A1 PCT/KR2020/000626 KR2020000626W WO2020145798A1 WO 2020145798 A1 WO2020145798 A1 WO 2020145798A1 KR 2020000626 W KR2020000626 W KR 2020000626W WO 2020145798 A1 WO2020145798 A1 WO 2020145798A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
mts
transform
size
allowed
Prior art date
Application number
PCT/KR2020/000626
Other languages
English (en)
Korean (ko)
Inventor
유선미
최정아
김승환
허진
남정학
최장원
이령
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2020145798A1 publication Critical patent/WO2020145798A1/fr

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • This document relates to a video coding technique, and more particularly, to a video coding method and apparatus using a transform skip flag in a video coding system.
  • a high-efficiency image compression technique is required to effectively transmit, store, and reproduce high-resolution, high-quality image information.
  • the technical problem of this document is to provide a method and apparatus for improving image coding efficiency.
  • Another technical task of this document is to provide a method and apparatus for increasing the efficiency of residual coding.
  • Another technical task of this document is to provide a method and apparatus for increasing the efficiency of residual coding depending on whether transform skip is applied.
  • Another technical problem of this document is to provide a method and apparatus for increasing the efficiency of residual coding by variably setting the maximum transform skip size.
  • an image decoding method performed by a decoding apparatus includes obtaining prediction mode information and residual related information from a bitstream, performing prediction based on the prediction mode information to derive prediction samples of a current block, and based on the residual related information Deriving residual samples of the block and generating reconstructed samples of the current block based on the predicted samples and the residual samples, and based on the size of the current block and the maximum transform skip size.
  • the residual related information includes a transform skip flag, the transform skip flag indicates whether transform skip is applied to the current block, and the maximum transform skip size is variably derived based on high level syntax. .
  • a decoding apparatus for performing image decoding.
  • the decoding apparatus obtains prediction mode information and residual related information from a bitstream, an entropy decoding unit, a prediction unit that performs prediction based on the prediction mode information to derive prediction samples of the current block, and the residual related information.
  • a residual processor for deriving residual samples of the current block based on the result, and an adder for generating reconstructed samples of the current block based on the prediction samples and the residual samples, and converting the size and maximum of the current block
  • the residual related information includes a transform skip flag based on a skip size, the transform skip flag indicates whether transform skip is applied to the current block, and the maximum transform skip size is variable based on a high level syntax. It is characterized by being derived.
  • a video encoding method performed by an encoding device comprises performing prediction on a current block to derive prediction samples, deriving residual samples for the current block, prediction mode information on the prediction, and residual related information on the residual samples. And encoding the image information including, wherein the residual related information includes a transform skip flag based on the size of the current block and the maximum transform skip size, and the transform skip flag skips transform in the current block. Indicates whether or not is applied, and the maximum transform skip size is variably indicated based on high level syntax.
  • a video encoding apparatus performs prediction on a current block to derive prediction samples, a residual processing unit to derive residual samples for the current block, prediction mode information on the prediction, and the residual samples And an entropy encoding unit for encoding image information including residual related information, wherein the residual related information includes a transform skip flag based on the size of the current block and a maximum transform skip size, and the transform skip flag is the It indicates whether transform skip is applied to the current block, and the maximum transform skip size is variably indicated based on high level syntax.
  • a computer-readable digital storage medium is characterized by storing image information that causes the decoding method to be performed.
  • a computer-readable digital storage medium is characterized in that image information generated by the encoding method is stored.
  • the efficiency of residual coding can be improved by using a conversion skip flag.
  • the maximum transform skip size can be variably set to improve the efficiency of residual coding.
  • coding efficiency can be improved by efficiently transmitting a residual signal represented by a pixel domain having characteristics different from that of a general transform domain.
  • FIG. 1 schematically shows an example of a video/image coding system to which the present document can be applied.
  • FIG. 2 is a diagram schematically illustrating a configuration of a video/video encoding apparatus to which the present 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. 5 shows an example of a second inverse transform unit and a first inverse transform unit.
  • FIG. 6 is an example of an inverse transform method based on transform-related parameters.
  • FIG. 8 is a block diagram of a CABAC encoding system according to an embodiment.
  • FIG. 9 is a diagram illustrating an example of transform coefficients in a 4x4 block.
  • FIG. 10 is a diagram illustrating a residual signal decoding unit according to an embodiment of the present document.
  • FIG. 11 is a diagram illustrating a conversion skip flag parsing decision unit according to an embodiment of the present document.
  • FIG. 12 is a flowchart illustrating a method of coding a conversion skip flag according to an embodiment of the present document.
  • FIG. 13 and 14 schematically show an example of a video/video encoding method and related components according to embodiment(s) of this document.
  • 15 and 16 schematically show an example of a video/video encoding method and related components according to embodiment(s) of this document.
  • FIG. 17 schematically shows a structure of a content streaming system.
  • each component in the drawings described in this document is independently shown for convenience of description of different characteristic functions, and does not mean that each component is implemented with separate hardware or separate software.
  • two or more components of each component may be combined to form a single component, or one component may be divided into a plurality of components.
  • Embodiments in which each component is integrated and/or separated are also included in the scope of this document as long as they do not depart from the nature of this document.
  • FIG. 1 schematically shows an example of a video/image coding system to which the present document can be applied.
  • a video/image coding system may include a first device (source device) and a second device (receiving device).
  • the source device may transmit the encoded video/image information or data to a receiving device through a digital storage medium or network in the form of a file or streaming.
  • 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 apparatus, and a renderer.
  • the encoding device may be referred to as a video/video encoding device, and the decoding device may be referred to as a video/video decoding device.
  • the transmitter can 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 capture, synthesis, or generation process of the video/image.
  • the video source may include a video/image capture device and/or a video/image generation 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 capture process may be replaced by a process in which related data is generated.
  • the encoding device can 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/image information) may be output in the form of a bitstream.
  • the transmitting unit may transmit the encoded video/video information or data output in the form of a bitstream to a receiving unit of a receiving device through a digital storage medium or a network in a file or streaming format.
  • the digital storage media may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, 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 deliver it to a decoding device.
  • the decoding apparatus may decode a video/image by performing a series of procedures such as inverse quantization, inverse transformation, and prediction corresponding to the operation of the encoding apparatus.
  • the renderer can render the decoded video/image.
  • the rendered video/image may be displayed through the display unit.
  • VVC versatile video coding
  • EVC essential video coding
  • AV1 AOMedia Video 1
  • AVS2 2nd generation of audio video coding standard
  • next-generation video/ It can be applied to the method disclosed in the video coding standard (ex. H.267 or H.268, etc.).
  • 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.
  • the slice/tile may include one or more coding tree units (CTUs).
  • CTUs coding tree units
  • One picture may be composed of one or more slices/tiles.
  • One picture may be composed of one or more tile groups.
  • One tile group may include one or more tiles.
  • the brick may represent a rectangular region of CTU rows within a tile in a picture. Tiles can be partitioned into multiple bricks, and each brick can be composed of one or more CTU rows in the tile (A tile may be partitioned into multiple bricks, each of which consisting of one or more CTU rows within the tile ).
  • a tile that is not partitioned into multiple bricks may be also referred to as a brick.
  • a brick scan can indicate a specific sequential ordering of CTUs partitioning a picture, the CTUs can be aligned with a CTU raster scan within a brick, and the bricks in a tile can be aligned sequentially with a raster scan of the bricks of the tile.
  • A, and tiles in a picture can be sequentially aligned with a raster scan of the tiles of the picture
  • a brick scan is a specific sequential ordering of CTUs partitioning a picture in which the CTUs are ordered consecutively in CTU raster scan in a brick , bricks within a tile are ordered consecutively in a raster scan of the bricks of the tile, and tiles in a picture are ordered consecutively in a raster scan of the tiles of the picture).
  • a tile is a rectangular region of CTUs within a particular tile column and a particular tile row in a picture.
  • the tile column is a rectangular area of CTUs, the rectangular area has a height equal to the height of the picture, and the width can be specified by syntax elements in a picture parameter set (The tile column is a rectangular region of CTUs having a height equal to the height of the picture and a width specified by syntax elements in the picture parameter set).
  • the tile row is a rectangular region of CTUs, the rectangular region has a width specified by syntax elements in a picture parameter set, and the height can be the same as the height of the picture (The tile row is a rectangular region of CTUs having a height specified by syntax elements in the picture parameter set and a width equal to the width of the picture).
  • a tile scan can indicate a specific sequential ordering of CTUs partitioning a picture, the CTUs can be successively aligned with a CTU raster scan in a tile, and the tiles in a picture can be successively aligned with a raster scan of the tiles of the picture.
  • a tile scan is a specific sequential ordering of CTUs partitioning a picture in which the CTUs are ordered consecutively in CTU raster scan in a tile whereas tiles in a picture are ordered consecutively in a raster scan of the tiles of the picture).
  • a slice may include an integer number of bricks of a picture, and the integer number of bricks may be included in one NAL unit (A slice includes an integer number of bricks of a picture that may be exclusively contained in a single NAL unit). A slice may consist of either a number of complete tiles or only a consecutive sequence of complete bricks of one tile ).
  • Tile groups and slices are used interchangeably in this document. For example, the tile group/tile group header in this document may be referred to as a slice/slice header.
  • a pixel or a pel may mean a minimum unit constituting one picture (or image). Also, as a term corresponding to a pixel,'sample' may be used.
  • the sample may generally represent a pixel or a pixel value, may represent only a pixel/pixel value of a luma component, or may represent only a pixel/pixel value of a chroma component.
  • the unit may represent a basic unit of image processing.
  • the unit may include at least one of a specific region of a picture and information related to the region.
  • 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 area in some cases.
  • the MxN block may include samples (or sample arrays) of M columns and N rows or a set (or array) of transform coefficients.
  • the video encoding device may include a video encoding device.
  • the encoding apparatus 200 includes an image partitioner 210, a predictor 220, a residual processor 230, and an entropy encoder 240. It may be configured to include an adder (250), a filtering unit (filter, 260) and a memory (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, a dequantizer 234, and an inverse transformer 235.
  • the residual processing unit 230 may further include a subtractor 231.
  • the adder 250 may be referred to as a reconstructor or a recontructged block generator.
  • the above-described image segmentation unit 210, prediction unit 220, residual processing unit 230, entropy encoding unit 240, adding unit 250, and filtering unit 260 may include one or more hardware components (for example, it may be configured by an encoder chipset or processor).
  • the memory 270 may include a decoded picture buffer (DPB), or may be configured by a digital storage medium.
  • the hardware component may further include a memory 270 as an internal/external component.
  • the image division 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 called a coding unit (CU).
  • the coding unit is recursively divided according to a quad-tree binary-tree ternary-tree (QTBTTT) 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 ternary structure may be applied later.
  • a 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 split.
  • the maximum coding unit may be directly used as the final coding unit based on coding efficiency according to image characteristics, or the coding unit may be recursively divided into coding units having a lower depth than optimal if necessary.
  • the coding unit of the size of can be used as the final coding unit.
  • the coding procedure may include procedures such as prediction, transformation, and reconstruction, which will be 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 partitioned or partitioned from the above-described final coding unit, respectively.
  • the prediction unit may be a unit of sample prediction
  • the transformation unit may be a unit for deriving a transform coefficient and/or a unit for deriving a residual signal from the transform coefficient.
  • the unit may be used interchangeably with terms such as a block or area in some cases.
  • the MxN block may represent samples of M columns and N rows or a set of transform coefficients.
  • the sample may generally represent a pixel or a pixel value, and may indicate only a pixel/pixel value of a luma component or only a pixel/pixel value of a saturation component.
  • the sample may be used as a term for one picture (or image) corresponding to a pixel or pel.
  • the encoding device 200 subtracts a prediction signal (a predicted block, a prediction sample array) output from the inter prediction unit 221 or the intra prediction unit 222 from the input image signal (original block, original sample array).
  • a signal residual signal, residual block, residual sample array
  • the prediction unit 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 prediction unit may determine whether intra prediction or inter prediction is applied in units of the current block or CU. As described later in the description of each prediction mode, the prediction unit may generate various information about prediction, such as prediction mode information, and transmit it to the entropy encoding unit 240.
  • the prediction information 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 neighborhood of the current block or may be located apart depending on a 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 depending on the degree of detail 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 a prediction mode applied to neighboring blocks.
  • the inter prediction unit 221 may derive the 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 the correlation of motion information between a neighboring block and a 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 present in the current picture and a temporal neighboring block present 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 name such as a collocated reference block or a CUCU, and a reference picture including the temporal neighboring block may be called a collocated picture (colPic). It might be.
  • 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 the motion vector and/or reference picture index of the current block. Can be created. Inter prediction may be performed based on various prediction modes. For example, in the case of the skip mode and the merge mode, the inter prediction unit 221 may use motion information of neighboring blocks as motion information of the current block.
  • the residual signal may not be transmitted.
  • the motion vector of the current block is obtained by using the motion vector of the neighboring block as a motion vector predictor and signaling a motion vector difference. I can order.
  • the prediction unit 220 may generate a prediction signal based on various prediction methods described below.
  • the prediction unit may apply intra prediction or inter prediction as well as intra prediction and inter prediction at the same time for prediction for one block. This can be called combined inter and intra prediction (CIIP).
  • the prediction unit may be based on an intra block copy (IBC) prediction mode or a palette mode for prediction of a block.
  • the IBC prediction mode or palette mode may be used for content video/video coding such as a game, such as screen content coding (SCC).
  • SCC screen content coding
  • IBC basically performs prediction in the current picture, but may be performed similarly to inter prediction in that a reference block is derived in the current picture. That is, the IBC can use at least one of the inter prediction techniques described in this document.
  • the palette mode can be regarded as an example of intra coding or intra prediction. When the palette mode is applied, a sample value in a picture may be signaled based on information on the palette table and palette index.
  • the prediction signal generated by the prediction unit 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. For example, at least one of a DCT (Discrete Cosine Transform), DST (Discrete Sine Transform), KLT (Karhunen-Loeve Transform), GBT (Graph-Based Transform), or CNT (Conditionally Non-linear Transform) It can contain.
  • GBT means a transformation obtained from this graph when it is said that the relationship information between pixels is graphically represented.
  • CNT means a transform obtained by generating a prediction signal using all previously reconstructed pixels and based on it.
  • the transform process may be applied to pixel blocks having the same size of a square, or may be applied to blocks of variable sizes other than squares.
  • the quantization unit 233 quantizes the transform coefficients and transmits them to the entropy encoding unit 240, and the entropy encoding unit 240 encodes a quantized signal (information about quantized transform coefficients) and outputs it as a bitstream. have. Information about the quantized transform coefficients may be called residual information.
  • the quantization unit 233 may rearrange block-type quantized transform coefficients into a one-dimensional vector form based on a coefficient scan order, and quantize the quantized transform coefficients based on the one-dimensional vector form. Information regarding transform coefficients may be generated.
  • the entropy encoding unit 240 may perform various encoding methods, such as exponential Golomb (CAVLC), context-adaptive variable length coding (CAVLC), and context-adaptive binary arithmetic coding (CABAC).
  • CAVLC exponential Golomb
  • CAVLC context-adaptive variable length coding
  • CABAC context-adaptive binary arithmetic coding
  • the entropy encoding unit 240 may encode information necessary for video/image reconstruction (eg, a value of syntax elements, etc.) together with the quantized transform coefficients together or separately.
  • the encoded information (ex. encoded video/video information) may be transmitted or stored in units of network abstraction layer (NAL) units in the form of a bitstream.
  • NAL network abstraction layer
  • the video/video information may further include information regarding 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.
  • information and/or syntax elements transmitted/signaled from an encoding device to a decoding device may be included in video/video information.
  • the video/video information may be encoded through the above-described encoding procedure and included in the bitstream.
  • the bitstream can be transmitted over a network or stored on 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, SSD.
  • the signal output from the entropy encoding unit 240 may be configured as an internal/external element of the encoding device 200 by a transmitting unit (not shown) and/or a storing unit (not shown) for storing, or the transmitting 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 adder 155 adds the reconstructed residual signal to the predicted signal output from the inter predictor 221 or the intra predictor 222, so that the reconstructed signal (restored picture, reconstructed block, reconstructed sample array) Can be generated. If there is no residual for the block to be processed, such as when the skip mode is applied, the predicted block may be used as a reconstructed block.
  • the adder 250 may be called a restoration unit or a restoration block generation unit.
  • the generated reconstructed signal may be used for intra prediction of a next processing target block in a current picture, or may be used for inter prediction of a next picture through filtering as described below.
  • 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 generate a modified restoration picture by applying various filtering methods to the restoration picture, and the modified restoration picture may be a DPB of the memory 270, specifically, the memory 270. Can be stored in.
  • the various filtering methods may include, for example, deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, and the like.
  • the filtering unit 260 may generate various pieces of information regarding filtering as described later in the description of each filtering method, and transmit them to the entropy encoding unit 240.
  • the filtering information may be encoded by the entropy encoding unit 240 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 221.
  • inter prediction When the inter prediction is applied through the encoding apparatus, prediction mismatch between the encoding apparatus 100 and the decoding apparatus can be avoided, and encoding efficiency can be improved.
  • the memory 270 DPB may store the modified reconstructed picture for use 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 has already been reconstructed.
  • the stored motion information may be transmitted to the inter prediction unit 221 to be used as motion information of a spatial neighboring block or motion information of a temporal neighboring block.
  • the memory 270 may store reconstructed samples of blocks reconstructed in the current picture, and may transmit the reconstructed samples 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 prediction unit (predictor, 330), an adder (340), and a filtering unit (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 adding unit 340, and the filtering unit 350 described above may include one hardware component (eg, a decoder chipset or processor) according to an embodiment. ).
  • the memory 360 may include a decoded picture buffer (DPB), or may be configured by a digital storage medium.
  • the hardware component may further include a memory 360 as an internal/external component.
  • the decoding apparatus 300 may restore an image corresponding to a process in which the video/image information is processed in the encoding apparatus of FIG. 2.
  • the decoding apparatus 300 may derive units/blocks based on block partitioning related information obtained from the bitstream.
  • the decoding apparatus 300 may perform decoding using a processing unit applied in the encoding apparatus.
  • the processing unit of decoding may be, for example, a coding unit, and the coding unit may be divided along a quad tree structure, a binary tree structure and/or a ternary tree structure from a coding tree unit or a largest coding unit.
  • One or more transform units can be derived from the coding unit. Then, the decoded video signal decoded and output through the decoding device 300 may be reproduced through the reproduction device.
  • the decoding apparatus 300 may receive the 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/image information) necessary for image reconstruction (or picture reconstruction).
  • the video/video information may further include information regarding 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 decode a picture further based on the information on the parameter set and/or the general restriction information.
  • Signaling/receiving 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 quantizes a value of a syntax element required for image reconstruction and a transform coefficient for residual.
  • a coding method such as exponential Golomb coding, CAVLC, or CABAC
  • the CABAC entropy decoding method receives bins corresponding to each syntax element in a bitstream, and decodes syntax element information to be decoded and decoding information of neighboring and decoding target blocks or symbol/bin information decoded in the previous step.
  • the context model is determined by using, and the probability of occurrence of the bin is predicted according to the determined context model, and arithmetic decoding of the bin is performed to generate a symbol corresponding to the value of each syntax element. have.
  • the CABAC entropy decoding method may update the context model using the decoded symbol/bin information for the next symbol/bin context model after determining the context model.
  • prediction information is provided to a prediction unit (inter prediction unit 332 and intra prediction unit 331), and the entropy decoding unit 310 performs entropy decoding.
  • the dual value, that is, quantized transform coefficients and related parameter information may be input to the residual processing unit 320.
  • the residual processor 320 may derive a residual signal (residual block, residual samples, residual sample array). Also, information related to filtering among information decoded by the entropy decoding unit 310 may be provided to the filtering unit 350. Meanwhile, a receiving unit (not shown) receiving a signal output from the encoding device may be further configured as an internal/external element of the decoding device 300, or the receiving unit may be a component of the entropy decoding unit 310.
  • the decoding device may be called a video/picture/picture decoding device, and the decoding device may be classified into an information decoder (video/picture/picture information decoder) and a sample decoder (video/picture/picture sample decoder). It might be.
  • the information decoder may include the entropy decoding unit 310, and the sample decoder may include the inverse quantization unit 321, an inverse transformation unit 322, an addition unit 340, a filtering unit 350, and a memory 360 ), at least one of an inter prediction unit 332 and an intra prediction unit 331.
  • the inverse quantization unit 321 may inverse quantize the quantized transform coefficients to output transform coefficients.
  • the inverse quantization unit 321 may rearrange the quantized transform coefficients in a two-dimensional block form. In this case, the reordering may be performed based on the coefficient scan order performed by the encoding device.
  • the inverse quantization unit 321 may perform inverse quantization on the 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 inversely transforms the transform coefficients to obtain a residual signal (residual block, residual sample array).
  • 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 is applied to the current block or inter prediction is applied based on the information on the prediction output from the entropy decoding unit 310, and may determine a specific intra/inter prediction mode.
  • the prediction unit 320 may generate a prediction signal based on various prediction methods described below.
  • the prediction unit may apply intra prediction or inter prediction as well as intra prediction and inter prediction at the same time for prediction for one block. This can be called combined inter and intra prediction (CIIP).
  • the prediction unit may be based on an intra block copy (IBC) prediction mode or a palette mode for prediction of a block.
  • the IBC prediction mode or palette mode may be used for content video/video coding such as a game, such as screen content coding (SCC).
  • SCC screen content coding
  • IBC basically performs prediction in the current picture, but may be performed similarly to inter prediction in that a reference block is derived in the current picture. That is, the IBC can use at least one of the inter prediction techniques described in this document.
  • the palette mode can be regarded as an example of intra coding or intra prediction. When the palette mode is applied, information on the palette table and palette index may be signaled by being included in the video/image information.
  • the intra prediction unit 331 may predict the current block by referring to samples in the current picture.
  • the referenced samples may be located in the neighborhood of the current block or may be located apart depending on a prediction mode.
  • prediction modes may include a plurality of non-directional modes and a plurality of directional modes.
  • the intra prediction unit 331 may determine a prediction mode applied to the current block using a prediction mode applied to neighboring blocks.
  • the inter prediction unit 332 may derive the predicted block for the current block based on the reference block (reference sample array) specified by the motion vector on the reference picture.
  • motion information may be predicted in units of blocks, subblocks, or samples based on the correlation of motion information between a neighboring block and a 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 present in the current picture and a temporal neighboring block present in the reference picture.
  • the inter prediction unit 332 may construct a motion information candidate list based on neighboring blocks, and derive a motion vector and/or 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 information on the prediction may include information indicating a mode of inter-prediction for the current block.
  • the adder 340 reconstructs the obtained residual signal by adding it to the predicted signal (predicted block, predicted sample array) output from the predictor (including the inter predictor 332 and/or the intra predictor 331) A signal (restored picture, reconstructed block, reconstructed sample array) can be generated. If there is no residual for the block to be processed, such as when the skip mode is applied, the predicted block may be used as a reconstructed block.
  • the adding unit 340 may be called a restoration unit or a restoration block generation unit.
  • the generated reconstructed signal may be used for intra prediction of a next processing target block in a current picture, may be output through filtering as described below, or may be used for inter prediction of a 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 generate a modified reconstructed picture by applying various filtering methods to the reconstructed picture, and the modified reconstructed picture may be a DPB of the memory 360, specifically, 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 (corrected) reconstructed picture stored in the DPB of the memory 360 may be used as a reference picture in the inter prediction unit 332.
  • 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 has already been reconstructed.
  • the stored motion information may be transmitted to the inter prediction unit 260 for use as motion information of a spatial neighboring block or motion information of a temporal neighboring block.
  • the memory 360 may store reconstructed samples of blocks reconstructed in the current picture, and may transmit the reconstructed samples to the intra prediction unit 331.
  • the embodiments described in the filtering unit 260, the inter prediction unit 221, and the intra prediction unit 222 of the encoding device 200 are respectively the filtering unit 350 and the inter prediction of the decoding device 300.
  • the unit 332 and the intra prediction unit 331 may be applied to the same or corresponding.
  • a predicted block including prediction samples for a current block which is a block to be coded
  • the predicted block includes prediction samples in a spatial domain (or pixel domain).
  • the predicted block is derived equally from an encoding device and a 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 itself of the original block. Signaling to the device can improve video coding efficiency.
  • the decoding apparatus may derive a residual block including residual samples based on the residual information, generate a reconstruction block including reconstruction samples by combining the residual block and the predicted block, and generate reconstruction blocks. It is possible to generate a reconstructed picture that includes.
  • the residual information may be generated through a transform and quantization procedure.
  • the encoding apparatus derives a residual block between the original block and the predicted block, and performs transformation procedures on residual samples (residual sample array) included in the residual block to derive transformation coefficients. And, by performing a quantization procedure on the transform coefficients, the quantized transform coefficients are derived to signal related residual information (via a bitstream) to a decoding apparatus.
  • the residual information may include information such as value information of the quantized transform coefficients, position information, a transform technique, a transform kernel, and quantization parameters.
  • the decoding apparatus may perform an inverse quantization/inverse transformation 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 can also dequantize/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 the quantized/inverse transform.
  • the encoding apparatus may derive a bitstream from information transformed and quantized through entropy encoding
  • the decoding apparatus may derive transformed and quantized information from the bitstream through entropy decoding.
  • the inverse quantization unit and the inverse conversion unit will be described, and the conversion unit and the quantization unit may perform the same operation as the inverse quantization unit and the inverse conversion unit.
  • the inverse quantization unit and the inverse transformation unit may be represented by a nutritional and inverse transformation unit
  • the transformation unit and the quantization unit may be represented by a transformation and quantization unit.
  • MTS Multiple Transform Selection
  • AMT Adaptive Mutliple Transform
  • EMT Explicit Multiple Transform
  • mts_idx can also be expressed as AMT_idx, EMT_idx, AMT_TU_idx EMT_TU_idx, transform index or transform combination index, etc. It is not limited.
  • the inverse quantization and inverse transform unit 400 includes an inverse quantization unit 410, an inverse secondary transform unit 420, and an inverse primary transform unit 430. It can contain.
  • the inverse quantization unit 410 may perform inverse quantization on an entropy-decoded signal (or quantized transform coefficient) using quantization step size information to obtain a transform coefficient, and the second inverse transform unit At 420, a second inverse transform may be performed on the transform coefficient.
  • the primary inverse transform unit 430 may perform a primary inverse transform on the second inverse transformed signal or block (or transform coefficient), and a residual signal decoded through the primary inverse transform may be obtained.
  • the secondary inverse transform may represent an inverse transform of the secondary transform
  • the primary inverse transform may indicate an inverse transform of the primary transform.
  • a transform combination may be configured for each transform configuration group divided by at least one of a prediction mode, a block size, or a block shape, and the primary inverse transform unit 430 ) Can perform the inverse transform based on the transform combination constructed by this document. Also, embodiments described later in this document may be applied.
  • FIG. 5 shows an example of a second inverse transform unit and a first inverse transform unit.
  • a second inverse transform determining unit (or an element for determining whether to apply a second inverse transform) 510 and a second inverse transform determining unit (or determining a second inverse transform) Element) 520, a secondary inverse transform unit 530 and a primary inverse transform unit 540 may be used.
  • the second inverse transform unit 420 of FIG. 4 may be the same as the second inverse transform unit 530 of FIG. 5, and the second inverse transform determining unit 510 and the second inverse transform determining unit 520 of FIG. )
  • the second inverse transform unit 530 but may be changed according to expression, but is not limited thereto.
  • the primary inverse transform unit 430 of FIG. 4 may be the same as the primary inverse transform unit 540 of FIG. 5, but may be changed according to expression, and thus is not limited thereto.
  • the second inverse transform application determining unit 510 may determine whether to apply the second inverse transform.
  • the second inverse transform may be NSST or RST.
  • the second inverse transform application determining unit 510 may determine whether to apply the second inverse transform based on the second transform flag received from the encoding device.
  • the second inverse transform applying unit 510 may determine whether to apply the second inverse transform based on the transform coefficient of the residual block.
  • the second inverse transform determining unit 520 may determine a second inverse transform. At this time, the secondary inverse transform determining unit 520 may determine the secondary inverse transform applied to the current block based on the NSST (or RST) transform set designated according to the intra prediction mode.
  • a secondary transform determining method may be determined depending on a primary transform determining method.
  • Various combinations of first-order and second-order transforms may be determined according to the intra prediction mode.
  • the secondary inverse transform determining unit 520 may determine an area to which the secondary inverse transform is applied based on the size of the current block.
  • the second inverse transform unit 530 may perform a second inverse transform on the inverse quantized residual block by using the determined second inverse transform.
  • the primary inverse transform unit 540 may perform a primary inverse transform on the secondary inverse transformed residual block.
  • the primary transform may be referred to as a core transform.
  • the primary inverse transform unit 540 may perform the primary transform using the above-described MTS.
  • the primary inverse transform unit 540 may determine whether MTS is applied to the current block.
  • the primary inverse transform unit 540 may configure the MTS candidate based on the intra prediction mode of the current block. In addition, the primary inverse transform unit 540 may determine a primary transform applied to the current block by using an mts_idx syntax element indicating a specific MTS among the configured MTS candidates.
  • FIG. 6 is an example of an inverse transform method based on transform-related parameters.
  • an embodiment may acquire a sps_mts_intra_enabled_flag syntax element or a sps_mts_inter_enabled_flag syntax element (S600).
  • the sps_mts_intra_enabled_flag syntax element may indicate information about whether the tu_mts_flag syntax element is included in the residual coding syntax of the intra coding unit.
  • the tu_mts_flag syntax element may not be included in the residual coding syntax of the intra coding unit, and when the sps_mts_intra_enabled_flag syntax element is 1, the tu_mts_flag syntax element of the intra coding unit element coding unit Can be included in the coding syntax.
  • the sps_mts_inter_enabled_flag syntax element may indicate information about whether the tu_mts_flag syntax element is included in the residual coding syntax of the inter coding unit. For example, if the value of the sps_mts_inter_enabled_flag syntax element is 0, the tu_mts_flag syntax element may not be included in the residual coding syntax of the inter coding unit, and if the value of the sps_mts_inter_enabled_flag syntax element is 1, the tu_mts_flag syntax element is the inter coding unit Can be included in the residual coding syntax of.
  • the tu_mts_flag syntax element may indicate whether multiple transform selection (MTS) is applied to a residual sample of a luma transform block.
  • MTS multiple transform selection
  • a tu_mts_flag syntax element may be obtained based on the sps_mts_intra_enabled_flag syntax element or the sps_mts_inter_enabled_flag syntax element (S610). For example, if the value of the sps_mts_intra_enabled_flag syntax element or the sps_mts_inter_enabled_flag syntax element is 1, an embodiment may acquire a tu_mts_flag syntax element.
  • the MTS may not be applied to the residual sample of the luma transform block, and when the value of the tu_mts_flag syntax element is 1, the MTS is applied to the residual sample of the luma transform block. Can be applied.
  • an mts_idx syntax element may be obtained based on the tu_mts_flag syntax element (S620).
  • the mts_idx syntax element may indicate information about which transform kernel is applied to luma residual samples according to horizontal and/or vertical directions of a current (luma) transform block. For example, when the value of the tu_mts_flag syntax element is 1, an embodiment may acquire the mts_idx syntax element. Alternatively, if the value of the tu_mts_flag syntax element is 0, one embodiment may not be able to obtain the mts_idx syntax element.
  • One embodiment may derive a transformation kernel corresponding to the mts_idx syntax element (S630). Alternatively, an embodiment may derive a transform kernel based on the mts_idx syntax element.
  • At least one of the embodiments of the present document may be applied to the tu_mts_flag syntax element and/or the mts_idx syntax element.
  • the tu_mts_flag syntax element may be included in the residual coding syntax based on the sps_mts_intra_enabled_flag syntax element or sps_mts_inter_enabled_flag syntax element, and the mts_idx syntax element may be included in the conversion unit syntax based on the tu_mts_flag syntax element.
  • the sps_mts_intra_enabled_flag syntax element may be represented by a sps_explicit_mts_intra_enabled_flag syntax element
  • the sps_mts_inter_enabled_flag syntax element may be represented by a sps_explicit_mts_inter_enabled_flag syntax element.
  • the tu_mts_flag syntax element may be omitted, and the mts_idx syntax element may be included in the coding unit syntax based on the sps_explicit_mts_intra_enabled_flag syntax element or sps_explicit_mts_inter_enabled_flag syntax element.
  • the transform kernel corresponding to the mts_idx syntax element may be defined by being divided into horizontal transform and vertical transform.
  • a horizontal transformation and a vertical transformation may be divided into a transformation kernel determined based on the mts_idx syntax element.
  • different transformation kernels may be applied to the horizontal transformation and the vertical transformation, but the same transformation kernel may also be applied, and thus is not limited thereto.
  • information on the transform kernel applied to the horizontal transform and the vertical transform determined based on the mts_idx syntax element may be as shown in Table 1 or Table 2.
  • One embodiment may perform inverse transformation on the basis of the transform kernel (S640).
  • the inverse transform can be represented as a transform, or it can indicate the inverse of the transform.
  • a transform size may be checked (S710 ).
  • the transform size (nTbS) may be a variable indicating the horizontal sample size of scaled transform coefficients.
  • the converted kernel type (trType) may be checked (S720).
  • the conversion kernel type (trType) may be a variable indicating the type of the conversion kernel, and various embodiments of the present document may be applied.
  • the transform kernel type may indicate trTypeHor or trTypeVer described in FIG. 6.
  • One embodiment may perform the transformation matrix multiplication based on at least one of a transform size (nTbS) or a transform kernel type (trType) (S730). For example, a specific operation may be applied based on the conversion kernel type (trType). Or, for example, a predetermined transformation matrix may be applied based on the transformation size (nTbS) and the transformation kernel type (trType).
  • nTbS transform size
  • trType transform kernel type
  • a transform sample may be derived based on the transform matrix multiplication (S740).
  • the encoding device/decoding device may perform the above-described inverse conversion process, and the encoding device may also perform the conversion process that is the inverse of the above-described inverse conversion process.
  • CABAC 8 is a block diagram of a CABAC encoding system according to an embodiment, and shows a block diagram of context-adaptive binary arithmetic coding (CABAC) for coding a single syntax element.
  • CABAC context-adaptive binary arithmetic coding
  • the encoding process of CABAC first converts the input signal to a binary value through binarization when the input signal is a syntax element rather than a binary value. If the input signal is already a binary value, it can be input to a bypass, that is, a coding engine, without going through binarization.
  • each binary 0 or 1 constituting the binary value may be referred to as a bin. For example, if the binary string after binarization is 110, each of 1, 1, and 0 is called a bin.
  • the bean(s) for one syntax element may indicate the value of the corresponding syntax element.
  • Binary bins can be input into a regular coding engine or a bypass coding engine.
  • the regular coding engine may assign a model to a context reflecting a probability value for the bean, and code the bean based on the assigned context model.
  • the probability model for the bin can be updated.
  • the bypass coding engine omits the procedure of estimating the probability of the input bin and the procedure of updating the probability model applied to the bin after coding. Instead of assigning context, we apply a uniform probability distribution to code the input bins to speed up coding. The bins coded in this way are called bypass bins.
  • Entropy encoding can determine whether to perform coding through a regular coding engine, or to perform coding through a bypass coding engine, and switch coding paths. Entropy decoding performs the same process as entropy encoding in reverse order.
  • the (quantized) transformation coefficients syntax elements such as transform_skip_flag, last_sig_coeff_x_prefix, last_sig_coeff_y_prefix, last_sig_coeff_x_suffix, last_sig_coeff_y_suffix, coded_sub_block_flag, sig_coeff_flag, abs_level_gt1_flag, par_level_flag, abs_level_gt3_flag, abs_remainder, dec_abs_level, coeff_sign_flag and / or mts_idx (syntax elements) may be encoded and/or decoded.
  • syntax elements included in residual-related information or residual-related information may be represented as Tables 3 to 5.
  • residual coding information included in residual related information or syntax elements included in residual coding syntax may be represented as Tables 3 to 5.
  • Tables 3 to 5 may represent one syntax in succession.
  • the residual related information may include residual coding information (or syntax elements included in syntax in residual coding) or transformation unit information (or syntax elements included in transformation unit syntax), and the register
  • the dual coding information can be represented as shown in Tables 6 to 9, and the conversion unit information can be represented as shown in Table 10 or Table 11.
  • Tables 6 to 9 may represent one syntax consecutively.
  • the syntax element transform_skip_flag indicates whether transformation is omitted in an associated block.
  • the associated block may be a coding block (CB) or a transform block (TB).
  • CB and TB can be mixed.
  • residual samples are derived for CB, and (quantized) transform coefficients can be derived through transformation and quantization of the residual samples, through the residual coding procedure.
  • Information for example, syntax elements
  • the quantized transform coefficients can simply be called transform coefficients.
  • the size of the CB may be equal to the size of the TB, and in this case, the target block to be transformed (and quantized) and residual coded may be called CB or TB.
  • the target block to be transformed (and quantized) and residual coded may be called TB.
  • syntax elements related to residual coding are described as being signaled in units of a transform block (TB), but as an example, the TB may be mixed with the coding block (CB) as described above.
  • the syntax element transform_skip_flag is shown as signaled in the residual coding syntax, but this is an example, and the syntax element transform_skip_flag may be signaled in the transform unit syntax as shown in Tables 10 or 11.
  • the residual coding syntax and the conversion unit syntax may be collectively referred to as the residual (related) information.
  • the syntax element transform_skip_flag may be signaled only for the luma component (Luma component block) (see Table 10).
  • the residual related information may include the transform skip flag (transform_skip_flag) for the luminance component block.
  • the residual related information does not include the transform skip flag for the color difference component block. That is, the residual related information may include the transform skip flag for the luminance component block, and may not include the transform skip flag for the chrominance component block. In other words, in this case, the transform skip flag for the chrominance component block is not explicitly signaled, and the value of the transform skip flag for the chrominance component block may be derived/inferred to 0.
  • the syntax element transform_skip_flag may be signaled for a luminance component (luminance component block) and a color difference component (color difference component block), respectively (see Table 11).
  • (x, y) position information coding of the last non-zero transform coefficient in the transform block based on the syntax elements last_sig_coeff_x_prefix, last_sig_coeff_y_prefix, last_sig_coeff_x_suffix and last_sig_coeff_y_suffix can do.
  • the syntax element last_sig_coeff_x_prefix represents the prefix of the column position of the last significant coefficient in the scan order in the transform block
  • last_sig_coeff_y_prefix is in the transform block
  • the prefix of the row position of the last significant coefficient in the scan order, and the syntax element last_sig_coeff_x_suffix is in the scan order in the transform block Represents the suffix of the column position of the last significant coefficient of
  • the syntax element last_sig_coeff_y_suffix is the last effective coefficient in the scanning order in the transform block It represents the suffix of the row position of (significant coefficient).
  • the effective coefficient may represent the non-zero coefficient.
  • the scan order may be a diagonal upward scan order.
  • the scan order may be a horizontal scan order or a vertical scan order.
  • the scan order may be determined based on whether intra/inter prediction is applied to a target block (CB, or CB including TB) and/or a specific intra/inter prediction mode.
  • a 1-bit syntax element coded_sub_block_flag for each 4x4 sub-block may be used to indicate whether a non-zero coefficient exists in the current sub-block.
  • the sub-blocks may be used interchangeably with CG (Coefficient Group).
  • the coding process for the current subblock can be ended. Conversely, if the value of the syntax element coded_sub_block_flag is 1, the coding process for the syntax element sig_coeff_flag can be continuously performed.
  • the coding of the syntax element coded_sub_block_flag is unnecessary because coding for the syntax element coded_sub_block_flag is unnecessary for the subblock containing the last non-zero coefficient, and the subblock containing DC information of the transform block has a high probability of including the nonzero coefficient. And it can be assumed that the value is 1.
  • the syntax element sig_coeff_flag having a binary value may be coded in the reversed order.
  • a 1-bit syntax element sig_coeff_flag can be coded for each coefficient according to a scan order. If the value of the transform coefficient at the current scan position is not 0, the value of the syntax element sig_coeff_flag may be 1.
  • the coding process for the sub-block may be omitted because the syntax element sig_coeff_flag need not be coded for the last non-zero coefficient.
  • Level information coding can be performed only when the syntax element sig_coeff_flag is 1, and four syntax elements can be used in the level information coding process. More specifically, each syntax element sig_coeff_flag[xC][yC] may indicate whether the level (value) of the corresponding transform coefficient at each transform coefficient position (xC, yC) in the current TB is non-zero. have. In one embodiment, the syntax element sig_coeff_flag may correspond to an example of a valid coefficient flag indicating whether the quantized transform coefficient is a non-zero valid coefficient.
  • the remaining level value after coding for the syntax element sig_coeff_flag may be equal to Equation 1 below. That is, the syntax element remAbsLevel indicating the level value to be coded may be equal to Equation 1 below.
  • coeff may mean an actual transform coefficient value.
  • abs_level_gt1_flag may indicate whether remAbsLevel' at the corresponding scanning position n is greater than 1.
  • the absolute value of the coefficient of the corresponding position may be 1.
  • the level value remAbsLevel to be coded afterwards may be equal to Equation 2 below.
  • the least significant coefficient (LSB) value of remAbsLevel described in Equation 2 may be coded as in Equation 3 below.
  • the syntax element par_level_flag[n] may indicate parity of the transform coefficient level (value) at the scanning position n.
  • the transform coefficient level value remAbsLevel to be coded can be updated as shown in Equation 4 below.
  • the syntax element abs_level_gt3_flag may indicate whether remAbsLevel' at the corresponding scanning position n is greater than 3. Coding of the syntax element abs_remainder can be performed only when the syntax element abs_level_gt3_flag is 1. Summarizing the relationship between the actual conversion coefficient value coeff and each syntax element may be as shown in Equation 5 below, and Table 12 below may show examples related to Equation 5. Finally, the sign of each coefficient can be coded using the syntax element coeff_sign_flag, which is a 1-bit symbol.
  • may indicate the transform coefficient level (value), or may be expressed as AbsLevel for the transform coefficient.
  • the par_level_flag represents an example of a parity level flag for parity of a transform coefficient level for the quantized transform coefficient
  • the abs_level_gt1_flag indicates whether a transform coefficient level or a level (value) to be coded is greater than a first threshold
  • abs_level_gt3_flag may represent an example of a second transform coefficient level flag as to whether the transform coefficient level or a level (value) to be coded is greater than a second threshold.
  • FIG. 9 is a diagram illustrating an example of transform coefficients in a 4x4 block.
  • the 4x4 block of FIG. 9 may represent an example of quantized coefficients.
  • the block illustrated in FIG. 9 may be a 4x4 transform block or a 4x4 subblock of 8x8, 16x16, 32x32, and 64x64 transform blocks.
  • the 4x4 block of FIG. 9 may represent a luminance block or a color difference block. Coding results for the inverse diagonally scanned coefficients of FIG. 9 may be, for example, shown in Table 13.
  • scan_pos may indicate the position of the coefficient according to the inverse diagonal scan.
  • scan_pos 15 may indicate the coefficient of the lower right corner that is scanned first in the 4x4 block
  • scan_pos 0 may indicate the coefficient of the upper left corner that is scanned last. Meanwhile, in one embodiment, the scan_pos may be referred to as a scan position.
  • scan_pos 0 may be referred to as scan position 0.
  • CABAC provides high performance, but has a disadvantage that throughput performance is poor. This is due to CABAC's regular coding engine, which shows high data dependency because it uses the updated probability state and range through coding of the previous bin, and it can take a lot of time to read the probability interval and determine the current state. . This can solve the throughput problem of CABAC by limiting the number of context-coded bins.
  • the sum of bins used to express the syntax elements sig_coeff_flag, abs_level_gt1_flag, and par_level_flag as shown in Tables 3 to 5 or Tables 6 to 9 is 4x4 subblocks according to the size of the subblocks, 28 or 2x2 subblocks It may be limited to 6 (remBinsPass1), and the number of context coded bins of the syntax element abs_level_gt3_flag may be limited to 4 when 4x4 subblocks and 2 (remBinsPass2) when 2x2 subblocks.
  • the remaining coefficients can be binarized without using CABAC to perform bypass coding.
  • an embodiment of the present document may propose a unified transform type signaling method.
  • information on whether MTS is applied may be represented by a tu_mts_flag syntax element, and information on a transform kernel to be applied may be represented by an mts_idx syntax element.
  • the tu_mts_flag syntax element may be included in the transform unit syntax
  • the mts_idx syntax element may be included in the residual coding syntax, for example, as shown in Tables 14 and 15.
  • an embodiment of the present document is integrated conversion type signaling, and may indicate information on whether MTS is applied and information on the applied conversion kernel with only one information.
  • the one piece of information may be represented as information about the unified conversion type, or may be represented as a tu_mts_idx syntax element.
  • the tu_mts_flag syntax element and the mts_idx syntax element may be omitted.
  • the tu_mts_idx syntax element may be included in the conversion unit syntax, and may be represented as shown in Table 16, for example.
  • MTS flag (or tu_mts_flag syntax element) is parsed first, followed by a Transform Skip (TS) flag (or tranform_skip_flag syntax element) followed by a fixed length coding with two bins for the MTS index (or mts_idx syntax element)
  • a tu_mts_idx syntax element which is a new joint syntax element using truncated unary (TU) binarization, may be used according to an embodiment of the present document.
  • Bin 1 may indicate the TS, the second MTS, and all of the following MTS indexes.
  • the semantics and binarization of the tu_mts_idx syntax element may be represented as Table 17 or Table 18.
  • an embodiment of the present document may propose a residual coding method for transform skip.
  • the following items can be modified to adapt residual coding to statistics and signal characteristics of a transform skip level representing a quantized prediction residual (spatial domain).
  • the first sub-block to be processed may be the right-most sub-block in the transform block.
  • Sub-block CBFs The sub-block CBF signaling having the coded_sub_block_flag syntax element for TS may be modified as follows due to the absence of the last valid scanning position signaling.
  • the invalid sequence described above may still occur locally within the transform block.
  • the last valid scanning position can be removed as described above, and the coded_sub_block_flag syntax element can be coded for all sub-blocks.
  • the coded_sub_block_flag syntax element for a sub-block (upper left sub-block) covering the DC frequency position may be represented as a special case.
  • the coded_sub_block_flag syntax element for the corresponding sub-block is not signaled and can always be inferred as 1.
  • the DC sub-block is inferred that the value of the coded_sub_block_flag syntax element for the sub-block is 1, but may include only 0/invalid level.
  • the sig_coeff_flag syntax element for the first position (0, 0) may not be signaled instead of the value of all other sig_coeff_flag syntax elements in the DC sub-block being 0,
  • the context model index can be calculated as the sum of the coded_sub_block_flag syntax element on the right and the coded_sub_block_flag syntax element on the right instead of the current sub-block, and the logical disjunction of the two.
  • Context modeling of the sig_coeff_flag syntax element The local template of the context modeling of the sig_coeff_flag syntax element can be modified to include the right peripheral (NB 0 ) and lower peripheral (NB 1 ) of the current scanning position.
  • the context model offset may be the number of valid peripheral positions sig_coeff_flag[NB 0 ] + sig_coeff_flag[NB 1 ]. Accordingly, selection of different context sets according to the diagonal d in the current transform block can be eliminated. This can result in a set of three context models and a single context model for coding the sig_coeff_flag syntax element.
  • a single context model may be used for the abs_level_gt1_flag syntax element and par_level_flag syntax element.
  • Coding of the abs_remainder syntax element the empirical distribution of transform skip residual absolute levels is generally still suitable for a laplacian or geometric distribution, but a larger inverse than the transform coefficient absolute levels There may be an insultarity. In particular, the variance within the window of continuous realization may be higher for residual absolute levels. Due to this, the binarization and context modeling of the abs_remainder syntax element can be modified as follows.
  • the template for deriving the rice parameter may be modified. That is, only the left and bottom peripheries of the current scanning position can be considered similarly to the local template for context modeling of the sig_coeff_flag syntax element.
  • Context modeling of the coeff_sign_flag syntax element the global empirical distribution is almost uniformly distributed due to the fact that the instability and prediction residual in the sequence of codes are frequently biased. Even in the case, the codes can be coded using context models. A single dedicated context model can be used to code the code, and the code can be parsed after the sig_coeff_flag syntax element to keep all context coded bins together.
  • CCBs context coded bins
  • the transmission of the first scanning pass that is, the sig_coeff_flag syntax element, abs_level_gt1_flag syntax element, and par_level_flag syntax element may not be changed.
  • the limit on the maximum number of context coded bins (CCBs) per sample may be removed and may be processed differently.
  • the reduction of CCBs can be guaranteed by specifying the mode as CCB < k as invalid.
  • k may be a positive integer.
  • k for the normal level coding mode may be 2, but is not limited thereto. This limitation may correspond to a reduction in quantization space.
  • transform skip residual coding syntax may be represented as Table 20.
  • FIG. 10 is a diagram illustrating a residual signal decoding unit according to an example of this document.
  • the residual signal of the pixel domain that has not undergone transformation is different from the residual signal and characteristics of the general transform domain (the distribution of the residual signal, the absolute level of each residual signal, etc.), the following description will be applied to one embodiment of this document. Accordingly, a residual signal coding method for efficiently transmitting such a signal to a decoding apparatus is proposed.
  • a residual flag and a bitstream may be input to the residual signal decoding unit 1000 to indicate whether a transform is applied to a corresponding transform block or not.
  • a (decoded) residual signal can be output.
  • the conversion availability flag may be indicated by a conversion availability flag, a conversion skip availability flag, or a syntax element transform_skip_flag.
  • the coded binarization code may be input to the residual signal decoding unit 1000 through a binarization process.
  • the residual signal decoding unit 1000 may be included in the entropy decoding unit of the decoding apparatus.
  • the flag indicating whether the conversion is applied is distinguished from the bitstream for convenience of description, but the flag indicating whether the conversion is applied may be included in the bitstream.
  • the information on the transform coefficients may include, for example, information (or syntax elements) shown in Tables 3 to 5 or Tables 6 to 9.
  • the conversion skip flag may be transmitted in units of a conversion block, for example, in Tables 3 to 5, the conversion skip flag is limited to a specific block size (conditions for parsing transform_skip_flag are included only when the size of the conversion block is 4x4 or less) ), in one embodiment, the size of a block for determining whether or not to skip the conversion flag can be variously configured.
  • the size of log2TbWidth and log2TbHeight may be determined by the variables wN and hN, and wN and hN may have one of the following values, for example, shown in Equation (6).
  • syntax elements to which wN and hN having values according to Equation 6 can be applied may be represented as Table 21.
  • wN and hN may each have a value of 5, in which case the conversion skip flag may be signaled for a block having a width less than or equal to 32 and a height less than or equal to 32.
  • wN and hN may each have a value of 6, in which case the conversion skip flag may be signaled for a block having a width less than or equal to 64 and a height less than or equal to 64.
  • wN and hN may have a value of 2, 3, 4, 5 or 6 as shown in Equation 6, may have the same value as each other, or may have different values.
  • the width and height of a block in which a conversion skip flag may be signaled may be determined based on the values of wN and hN.
  • a method of decoding the residual signal may be determined according to the conversion skip flag.
  • 11 is a diagram illustrating a conversion skip flag parsing decision unit according to an example of this document.
  • an embodiment may first deliver whether to apply a transform of a corresponding block before coding the residual signal.
  • a transform process including a complicated calculation process is omitted, and a residual signal in a pixel domain (spatial domain) can be transmitted to a decoder.
  • Residual signals in the pixel domain that have not undergone transformation have different characteristics and characteristics (residual signal distribution, absolute level of each residual signal, etc.) from the general transform domain, so residual signal encoding for efficiently delivering these signals to the decoder I suggest a method.
  • the conversion skip flag may be transmitted in units of a conversion block, for example, signaling of the conversion skip flag is limited to a specific block size (conditions for parsing transform_skip_flag are included only when the size of the conversion block is 4x4 or less), but one implementation
  • the condition for determining whether to skip the conversion skip flag may be defined as the number of pixels or samples in the block, not information about the width or height of the block. That is, it can be defined as using a product of log2TbWidth and log2TbHeight among conditions used to parse a transform skip flag (eg, syntax element transform_skip_flag).
  • the conversion skip flag may be parsed based on a product of a block width (eg, log2TbWidth) and a height (eg, log2TbHeight).
  • whether or not the conversion skip flag is parsed may be determined according to a value obtained by multiplying the block width (eg, log2TbWidth) and height (eg, log2TbHeight).
  • log2TbWidth and log2TbHeight may have one of the following values shown in Equation 7.
  • blocks of various shapes are determined based on the width and height of the block. Flag (not parsed) in the exclude block.
  • log2TbWidth and log2TbHeight are both defined as 2
  • only blocks of 2x4, 4x2, and 4x4 can be included in the conversion excluded block, but when controlled by the number of samples, blocks with 16 or fewer samples in the block exclude conversion Since it is included in the block, blocks of 2x8 and 8x2 as well as the blocks of 2x4, 4x2 and 4x4 may be included in the block excluding conversion.
  • the method of decoding the residual signal may be determined according to the conversion skip flag, and according to the above-described embodiment, signals having different statistical characteristics are efficiently processed, thereby reducing complexity in the entropy decoding process and improving coding efficiency. Can.
  • the transform skip flag parsing determiner 1100 For example, as shown in FIG. 11, information on whether to allow transform skip in advanced grammar, block size information, and whether to apply MTS (Multiple Transform Selection) are input to the transform skip flag parsing determiner 1100. Can be, and a conversion skip flag can be output.
  • the conversion skip flag parsing determining unit may input information about whether to allow conversion skip in advanced grammar and block size information, and a conversion skip flag may be output based on the information. That is, the conversion skip flag may be output (or parsed) based on the block size information when conversion skip is allowed according to information on whether conversion skip is allowed in the advanced grammar.
  • the above-described information may be included in a bitstream or syntax.
  • the transform skip flag parsing determining unit 1100 may be included in the entropy decoding unit of the decoding apparatus. For example, a method in which the conversion skip flag is determined based on the above-described information may be as follows.
  • FIG. 12 is a flowchart illustrating a method of coding a conversion skip flag according to an embodiment of the present document.
  • conversion skip in high level syntax is enabled (S1200). For example, it may be determined whether transformation skip in the advanced grammar is allowed based on information on whether or not transformation skip in the advanced grammar is allowed (eg, transform_skip_enabled_flag syntax element). For example, the information on whether to allow the transform skip (eg, transform_skip_enabled_flag syntax element) may be signaled in a sequence parameter set (SPS). Alternatively, the information on whether or not the conversion skip is allowed may be signaled by being included in the SPS syntax. Alternatively, the information on whether or not the conversion skip is allowed may be signaled in a picture parameter set (PPS) or included in a PPS syntax, but is not limited thereto.
  • SPS sequence parameter set
  • PPS picture parameter set
  • the fact that the conversion skip in the advanced grammar is allowed may indicate that the conversion skip is allowed in a slice/block referring to the advanced grammar. Whether or not transform skip is substantially applied to a block in which the transform skip is allowed may be determined based on the aforementioned transform skip flag.
  • the conversion skip in the advanced grammar when the conversion skip in the advanced grammar is allowed, it may be determined whether a value of the cu_mts_flag syntax element in syntax is 0 (S1210). For example, it may be determined whether the value of the cu_mts_flag syntax element is 0 based on information on whether multiple transform selection (MTS) is allowed. Alternatively, the information on whether the MTS is allowed may be determined based on the sps_mts_enabled_flag syntax element.
  • MTS multiple transform selection
  • the value of the cu_mts_flag syntax element when the value of the cu_mts_flag syntax element is 0, it may be determined whether the product of log2TbWidth and log2TbHeight is less than or equal to a threshold (S1220). Alternatively, it may be determined whether a value obtained by multiplying a log value having a base 2 of the width of the current block and a log value having a base 2 of the height of the current block is less than the threshold. Alternatively, it may be determined whether a value multiplied by the width and height of the current block is smaller than a threshold. For example, it may be determined whether the product of log2TbWidth and log2TbHeight is less than or equal to a threshold based on the block size information.
  • the block size information may include information about the width and height of the current block. Alternatively, the block size information may include information about a log value having a base 2 of the width and height of the current block.
  • a value of a transform skip flag (or transform_skip_flag syntax element) may be determined as 1 (S1230).
  • the conversion skip flag having a value of 1 may be parsed.
  • a value of a transform skip flag (or transform_skip_flag syntax element) may be determined to be 0.
  • a flag indicating whether to skip conversion having a value of 0 may be parsed.
  • the conversion skip flag may not be parsed.
  • the value of the determined conversion skip flag may be changed according to a setting or condition, for example. That is, the conversion skip flag may indicate information that conversion skip is applied to the current block when the product of log2TbWidth and log2TbHeight is less than or equal to a threshold. Alternatively, the current block may be included in the non-conversion block based on the conversion skip flag, and the conversion may not be applied.
  • a flag for transform skip (or transform_skip_flag syntax element) The value of may be determined as 0 (S1240). Alternatively, a flag indicating whether to skip conversion having a value of 0 may be parsed. Or, the conversion skip flag may not be parsed.
  • the conversion skip flag ( Alternatively, the value of transform_skip_flag syntax element) may be determined as 1. Alternatively, the conversion skip flag having a value of 1 may be parsed. In other words, the value of the determined conversion skip flag may be changed according to a setting or condition, for example.
  • conversion skip flag does not allow conversion skip in advanced grammar
  • the value of the cu_mts_flag syntax element is not 0, when the product of log2TbWidth and log2TbHeight is greater than a threshold
  • conversion skip is applied to the current block Information.
  • the current block may not be included in the non-conversion block based on the conversion skip flag, and a conversion may be applied.
  • the cu_mts_flag syntax element may be represented by the MTS tu_mts_flag syntax element or the mts_flag element, and based on the sps_mts_enabled_flag syntax element, the sps_mts_intra_enabled_flag syntax element (or sps_explicit_mts_in_sp_syntax_stable_syntax_stable_syntax_stable_flag It may be signaled).
  • another embodiment of the present document proposes a method of defining a transform skip size when using a transform kernel index including transform information.
  • Blocks that have not been transformed (or transform coded) have different characteristics of residual data from blocks that have been transformed in general, so an efficient residual data coding method for blocks that have not been transformed may be required.
  • the conversion flag indicating whether conversion is performed may be transmitted in a transform block or a transform unit, and the size of the transform block is not limited in this document. For example, if the conversion flag is 1, residual (data) coding (for example, Table 20 and residual coding for conversion skip) proposed in this document may be performed, and the conversion flag is 0 In this case, residual coding such as Table 3 to Table 5 or Table 6 to Table 9 may be performed.
  • the conversion flag may include a transform_skip_flag syntax element included in a residual coding syntax or a transformation unit syntax.
  • a residual coding method for skipping transform
  • residual coding in which transformation is not performed based on the transform skip residual coding may be performed according to an if(!transform_skip_flag) condition.
  • residual coding in which transformation is performed based on residual_coding syntax according to an if(!transform_skip_flag) condition may be performed.
  • residual coding excluding the coeff_sign_flag syntax element below the coded_sub_block_flag syntax element may follow some or all of the residual coding method (for skipping transform) proposed in one embodiment of the present document.
  • the unified transform type signaling method proposed in an embodiment of the present document may be performed, and in this case, when the value of the tu_mts_idx syntax element is 1 (or the tu_mts_idx syntax element is a target block) In the case where information indicates that the transformation is not applied), the residual coding method (for skipping the transformation) proposed in the embodiment of the present document may be performed.
  • the value of the tu_mts_idx syntax element is 0 (or when the value of the tu_mts_idx syntax element is a value other than 1)
  • residual coding or residual_coding syntax as shown in Tables 3 to 5 or Tables 6 to 9 is used.
  • Residual coding on which transformation is performed may be performed.
  • the conversion flag or transform_skip_flag syntax element
  • the transform index in Tables 3 to 5
  • mts_idx syntax element may be omitted.
  • the tu_mts_idx syntax element having a value of 0 indicates that the transformation is not applied (or skipping transformation) to the target block
  • a residual coding method for skipping transforms
  • residual coding in which transformation is performed based on residual_coding syntax as shown in Tables 3 to 5 or Tables 6 to 9 may be performed.
  • the conversion flag (or transform_skip_flag syntax element) and/or the transform index (or mts_idx syntax element) may be omitted.
  • the binarization for the transform flag (or transform_skip_flag syntax element) or transform index (or mts_idx syntax element) is an example.
  • MTS & TS enabled, MTS enabled and TS enabled may be defined differently.
  • the size at which the conversion skip is defined (or the size at which the conversion skip is possible) may be defined differently depending on whether the value of mts_enabled is 0 or 1.
  • the size in which conversion skip is possible may be defined based on MTS enabled (or information on whether MTS is allowed).
  • MTS enabled may indicate information about whether MTS is allowed, and may be derived based on the sps_mts_enabled_flag syntax element. For example, a value of MTS enabled of 1 may indicate that the value of the sps_mts_enabled_flag syntax element is 1. Alternatively, a value of 1 for MTS enabled may indicate information that MTS is allowed. Alternatively, a value of 0 for MTS enabled may indicate that the value of the sps_mts_enabled_flag syntax element is 0. Alternatively, a value of 0 for MTS enabled may indicate information that MTS is not allowed.
  • the size of transform skip (or the size of a block capable of transform skip) may be dependent on the allowed MTS. For example, if the size of the MTS is allowed at 32 or less (or the MTS is allowed only when the block size is 32 or less), the conversion skip can be defined for a block having a size of 32 or less.
  • the encoding device and the decoding device may use a predetermined or predetermined maximum size.
  • TS enabled may be defined according to the maximum size.
  • the encoding device and the decoding device may be defined to use transform skip for blocks having a side length less than or equal to 8.
  • the value of TS enabled is defined as 0 for a block with a length of one side of which is greater than 8, so the binarization table of Table 17 or Table 18 can be effectively applied.
  • the maximum size information of the transform skip block (or transform skip is possible) may be indicated using the maximum number of samples instead of the maximum length of one side of the block.
  • a maximum size of transform skip (or a block capable of transform skip) may be defined separately from the size of MTS (or the size of a block in which MTS is allowed).
  • information on the size of transform skip may be signaled to define the size of the MTS (or the size of a block in which MTS is allowed).
  • it may be transmitted from the encoding device to the decoding device. For example, if the size of the MTS is allowed below 32 (or if the MTS is allowed only if the block size is below 32), a flag as to whether or not the size of the MTS is followed (or the size of the block where the MTS is allowed).
  • the maximum size of the MTS (or the maximum size of the block where the MTS is allowed) is not followed, information for allowing the maximum size of the transform skip (or the block capable of the conversion skip) to 16 may be signaled. have.
  • the maximum size information of the transform skip block (or transform skip is possible) may be indicated using the maximum number of samples instead of the maximum size of one side of the block.
  • the encoding device and the decoding device may use a predetermined or predetermined maximum size.
  • the encoding device and the decoding device may be defined to use transform skip for a block having a side length less than or equal to 8.
  • the maximum size information of the transform skip block may be indicated using the maximum number of samples instead of the maximum size of one side of the block.
  • the maximum size information of the transform skip may be transmitted.
  • information to allow a maximum size of a transform skip (or a block capable of transform skip) to 16 may be signaled using high level syntax.
  • the maximum size information of the transform skip block may be indicated using the maximum number of samples instead of the maximum size of one side of the block.
  • the tu_mts_idx syntax element may be encoded/decoded based on the CABAC described above.
  • the bin string of the tu_mts_idx syntax element may include bins as shown in Table 17 or Table 18, for example. At least one of the bins of the empty string of the tu_mts_idx syntax element may be coded (or regular coded) based on context information (or context model).
  • a context index representing a context model for each of the regular coded bins may be derived based on context index increase and decrease and context index offset.
  • the context index may be represented by ctxIdx
  • the context index increment may be represented by ctxInc
  • the context index offset may be represented by ctxIdxOffset.
  • ctxIdx may be derived by adding ctxInc and ctxIdxOffset.
  • ctxInc may be derived differently for each bin as shown in Table 19 above.
  • the ctxIdxOffset may indicate the lowest value of the ctxIdx or, for example, a context index may be determined based on cqtDepth (coded quad-tree depth) as shown in Table 19. Or, for example, the context index may be determined according to the size of the block, the ratio of the width to the height of the block, whether the block is intra or inter predicted, whether or not to skip the transform around.
  • the context model of index 0 can be used, and if it is greater than or equal to 8x8, the context model of index 1 can be used.
  • the context model at index 0 can be used, and if the width of the block is greater than the block height, the context model at index 1 can be used. If the height is greater than the width of the block, the context model at index 2 can be used.
  • the context index determined based on the width and height of the block may be as shown in Table 22 below.
  • the context model of index 0 when the prediction mode of the current block is the intra mode, the context model of index 0 may be used, and in the inter mode, the context model of index 1 may be used.
  • the tu_mts_idx syntax element may be coded using a context model according to the index determined as described above. Since the context model and the number of models can be variously defined based on probability and distribution, this document is not limited to the number of specific context models and context models.
  • the index may indicate a context index
  • index 0 may indicate that a ctxIdx value is
  • index 1 may indicate that a ctxIdx value is 1.
  • the minimum value of the ctxIdx may be represented by an initial value (initValue) of the ctxIdx, and the initial value of the ctxIdx may be determined based on a context table.
  • the initial value of the ctxIdx may be determined using the context table and an initial type (initType).
  • the initial type can be determined in advance.
  • the initial type may be determined by signaling related information.
  • the initial type may be signaled by initial type information (eg, cabac_init_flag syntax element or cabac_init_idx syntax element).
  • the bins of the bin string of the tu_mts_idx syntax element may be context-based coded (or regular coded) based on a context model for each bin.
  • the context model may be derived by adding ctxInc and ctxIdxOffset.
  • the ctxInc may be determined differently for each bin.
  • the encoding device may derive the value of the tu_mts_idx syntax element, derive binarization bins corresponding to the value through a binarization procedure, and derive a context model for each of the bins to encode the bins have.
  • a bit string having a length equal to or shorter than the length of the bins may be output according to arithmetic coding based on the context model.
  • the decoding apparatus may derive candidate bin strings through the binarization procedure for the tu_mts_idx syntax element, sequentially parse bits for the tu_mts_idx syntax element from a bitstream, and decode bins for the tu_mts_idx syntax element have.
  • the decoding device may derive a context model for each of the bins to decode the bins. It may be determined whether the decoded bins correspond to one of the candidate bin strings. When the decoded bins correspond to one of the candidate bin strings, the decoding apparatus may derive a value indicated by the corresponding bin string as the value of the tu_mts_idx syntax element. If the decoded bins do not correspond to one of the candidate bin strings, the decoding apparatus may further parse the bit and repeat the above-described procedure.
  • a tu_mts_idx syntax element in coding a tu_mts_idx syntax element, at least one of a block size, a block width-height ratio, whether a block is intra or inter predicted, or whether a neighbor transform is skipped or the like is coded. Based on this, ctxInc and/or ctxIdx may be determined differently, and in this case, a different context model may be adaptively applied to bins of the same bin index (binIdx) without signaling additional information.
  • first context information may be derived for the i-th bin for the first block in the current picture
  • second context information may be derived for the same i-th bin for the second block in the current picture
  • i may correspond to an empty index, for example, as shown in Table 19 or Table 22 above, may represent one of 0 to 4.
  • the context information may include context index or context model information.
  • the tu_mts_idx syntax element may be included in the conversion unit syntax and signaled as shown in Table 23.
  • the tu_mts_idx syntax element may be represented as information on an MTS index, may be represented as an mts_idx syntax element, or may be included in a coding unit syntax as shown in Table 23, and may be signaled.
  • FIG. 13 and 14 schematically show an example of a video/video encoding method and related components according to embodiment(s) of this document.
  • the method disclosed in FIG. 13 may be performed by the encoding device disclosed in FIG. 2. Specifically, for example, S1300 of FIG. 13 may be performed by the prediction unit 220 of the encoding apparatus in FIG. 14, and S1310 of FIG. 13 may be performed by the residual processing unit 230 of the encoding apparatus in FIG. 14. S1320 of FIG. 13 may be performed by the entropy encoding unit 240 of the encoding apparatus in FIG. 14.
  • the method disclosed in FIG. 13 may include the embodiments described above in this document.
  • the encoding device may derive prediction samples by performing prediction on a current block (S1300).
  • the encoding apparatus may derive prediction samples by performing prediction on the current block, and may derive information on a prediction mode in which prediction is performed.
  • the prediction mode may be an intra prediction mode or an inter prediction mode.
  • the encoding apparatus may derive the prediction samples based on samples around a current block.
  • the prediction mode is an inter prediction mode
  • the encoding device may derive the prediction samples based on reference samples in a reference picture of the current block.
  • the encoding device may derive residual samples for the current block (S1310).
  • the encoding apparatus may derive residual samples (or residual blocks) for the current block based on original samples and prediction samples (or predicted blocks) for the current block.
  • residual samples may be represented as a residual sample array.
  • the encoding apparatus may generate reconstructed samples of the current block based on the prediction samples and the residual samples.
  • the encoding apparatus may generate reconstructed samples (or reconstructed blocks) by adding residual samples (or residual blocks) to the predicted samples (or predicted blocks).
  • the encoding apparatus may encode image information including prediction mode information for the prediction and residual related information for the residual samples (S1320).
  • the encoding device may generate prediction mode information based on the prediction mode, and the image information may include the prediction mode information. That is, when the current block performs prediction through the intra prediction mode, prediction mode information may include information about the intra prediction mode, and when the current block performs prediction through the inter prediction mode, the prediction mode The information may include information regarding the inter prediction mode.
  • the encoding device may generate residual related information including information about the residual samples (or residual sample array), and the image information may include residual related information.
  • Information about residual samples or residual-related information may include information about transform coefficients of the residual samples.
  • the residual related information may include residual coding information (or residual coding syntax).
  • the residual related information may include conversion unit information (or conversion unit syntax).
  • the residual related information may include residual coding information and transform unit information.
  • the residual-related information may include the conversion skip flag based on the size of the current block and the maximum conversion skip size.
  • the transform skip flag may indicate whether transform skip is applied to the current block.
  • the transform skip flag may be represented by a transform_skip_flag syntax element. For example, when the value of the transform_skip_flag syntax element is 0, transform skip may be applied to the current block, and if 1, transform skip may not be applied to the current block. Alternatively, if a value of the transform_skip_flag syntax element is 1 according to a setting, transform skip may be applied to the current block, and if 0, transform skip may not be applied to the current block.
  • the size of the current block may indicate the width of the current block and/or the height of the current block.
  • the maximum transform skip size may indicate a maximum size of a block in which transform skip (TS) is allowed.
  • the maximum transform skip size may be represented by MaxTsSize.
  • the residual related information may include the transform skip flag.
  • the maximum transform skip size may be variably represented based on high level syntax.
  • the high-level syntax may be a network abstraction layer (NAL) unit syntax, a sequence parameter set (SPS) syntax, a picture parameter set (PSP) syntax, or a slice header syntax.
  • the high level syntax may be encoded (entropy) and signaled as bitstream or video information.
  • the high-level syntax may include information on whether multiple tranform selection (MTS) is allowed or information on whether TS is allowed. Alternatively, information on whether MTS is allowed or information on whether the TS is allowed may be included in the SPS syntax.
  • MTS multiple tranform selection
  • information on whether the MTS is allowed may be represented by a sps_mts_enabled_flag syntax element.
  • the information on whether the MTS is allowed may include a sps_mts_intra_enabled_flag syntax element or a sps_mts_inter_enabled_flag syntax element.
  • the sps_mts_intra_enabled_flag syntax element or sps_mts_inter_enabled_flag syntax element may be included in the SPS syntax based on the sps_mts_enabled_flag syntax element.
  • the sps_mts_intra_enabled_flag syntax element may be represented by a sps_explicit_mts_intra_enabled_flag syntax element
  • the sps_mts_inter_enabled_flag syntax element may be represented by a sps_explicit_mts_inter_enabled_flag syntax element.
  • information on whether the MTS is allowed may be represented as MTS enabled information.
  • MTS enabled 1 or the value of the sps_mts_enabled_flag syntax element is 1.
  • the value of the sps_mts_enabled_flag syntax element is 1, and the value of the sps_explicit_mts_intra_enabled_flag syntax element or sps_explicit_mts_inter_enabled_flag syntax element may be represented as 1.
  • MTS enabled 0 or the value of the sps_mts_enabled_flag syntax element is 0.
  • the value of the sps_mts_enabled_flag syntax element is 1, and the value of the sps_explicit_mts_intra_enabled_flag syntax element or sps_explicit_mts_inter_enabled_flag syntax element may be represented as 0.
  • the value may indicate information corresponding to the value in reverse.
  • information on whether the TS is allowed may be represented by TS enabled information or a sps_transform_skip_enabled_flag syntax element.
  • information on whether the TS is allowed may be represented as TS enabled information.
  • TS enabled 1 or the value of the sps_transform_skip_enabled_flag syntax element is 1.
  • TS enabled 0 or the value of the sps_transform_skip_enabled_flag syntax element is 0.
  • the value may indicate information corresponding to the value in reverse.
  • the maximum transform skip size may be represented as one of candidate sizes including 8, 16, and 32 based on the high level syntax.
  • candidate sizes may further include 4.
  • the transform skip size may be derived based on information on whether MTS is allowed.
  • the maximum transform skip size may be represented as one of candidate sizes including 8, 16, or 32 based on information on whether MTS is allowed.
  • the transform skip size may be indicated based on information on whether the MTS included in the high level syntax is allowed.
  • information on the transform skip size may be included in the high-level syntax, and the transform skip size may be indicated based on the information on the transform skip size.
  • the information about the transform skip size may include information on whether the MTS is allowed as information capable of deriving the transform skip size.
  • the maximum transform skip size may be determined based on the size of the MTS. That is, when the information on whether the MTS is allowed indicates information that the MTS is allowed, the maximum transform skip size may be determined based on the size of the MTS. In other words, the maximum transform skip size may be dependent on the MTS.
  • the size of the MTS may indicate the maximum size of a block in which MTS is allowed. For example, when the size of the MTS is 32 or less, conversion skip can be allowed for a block of size 32 or less.
  • the maximum conversion skip size may be determined as a preset size. That is, when the information on whether the MTS is allowed indicates that the MTS is allowed, the maximum transform skip size may be determined as a preset size. For example, when the preset size is 8, the maximum conversion skip size may be determined as the preset size 8.
  • the high level syntax may include information on the maximum conversion skip size, and the maximum conversion skip size is It can be indicated based on the information on the maximum transform skip size. That is, when the information on whether the MTS is allowed indicates that the MTS is allowed, the high level syntax may separately include information on the maximum conversion skip size, and the maximum conversion skip size may be the maximum conversion skip size. It can be indicated based on information about the skip size. Or, for example, if the information on whether the MTS is allowed indicates that the MTS is allowed, the high-level syntax may include information on whether the maximum transform skip size is indicated based on the size of the MTS. have.
  • the high-level syntax is related to the maximum transform skip size.
  • Information may be included.
  • Information on the maximum transform skip size may be included in SPS syntax or PPS syntax. For example, when the information on the maximum transform skip size included in the high-level syntax indicates information on 32, the maximum transform skip size may be represented as 32 based on the information on the maximum transform skip size. Alternatively, when the maximum conversion skip size is determined as 32, information on the maximum conversion skip size included in the high-level syntax may be represented as information about 32.
  • the maximum conversion skip size may be determined as a preset size. That is, when the information on whether the MTS is allowed indicates information that the MTS is not allowed, the maximum conversion skip size may be determined as a preset size. For example, when the preset size is 8, the maximum conversion skip size may be determined as the preset size 8.
  • the high level syntax may include information on the maximum conversion skip size, and the maximum conversion skip size May be based on the information on the maximum transform skip size. That is, when the information on whether the MTS is allowed indicates that the MTS is not allowed, the high level syntax may separately include information on the maximum conversion skip size, and the maximum conversion skip size may be the maximum. It can be indicated based on information about the transform skip size.
  • Information on the maximum transform skip size may be included in SPS syntax or PPS syntax. For example, when the information on the maximum transform skip size included in the high-level syntax indicates information on 32, the maximum transform skip size may be represented as 32 based on the information on the maximum transform skip size. Alternatively, when the maximum conversion skip size is determined as 32, information on the maximum conversion skip size included in the high-level syntax may be represented as information about 32.
  • the residual-related information may include MTS index information regarding a transformation type applied to the current block.
  • MTS index information may be represented by a tu_mts_idx syntax element or an mts_idx syntax element.
  • MTS index information may be included in a transform unit syntax or a coding unit syntax.
  • MTS index information may indicate information on a transform type or transform skip applied to the current block.
  • the MTS index information may indicate information about a transform type or transform skip applied to the current block based on information on whether the MTS is allowed and/or whether the transform skip is allowed.
  • the information indicated by the MTS index information may be indicated based on the bin of the empty string for the MTS index information.
  • the information indicated by the MTS index information may be indicated based on the value of the context index of the bin.
  • the information indicated by the MTS index information may be indicated based on the context index value of the first bin of the empty string.
  • the context index (ctxIdx) may be expressed based on the context index increment (ctxInc) and the context index offset (ctxIdxOffset).
  • the value of the context index of the first bin for the MTS index information may be indicated based on information on whether the MTS is allowed, information on whether the conversion skip is allowed, and the size of the current block.
  • the value of the context index of the first bin for the MTS index information may be represented based on Table 19 or Table 22.
  • the value of the context index is the It can be represented by comparing the width of the current block and the height of the current block. That is, when the information on whether the MTS is allowed indicates information that the MTS is allowed, and the information on whether the TS is allowed indicates information that the TS is allowed, the width of the current block and the height of the current block Can be compared. Alternatively, when the width of the current block and the height of the current block are the same, the value of the context index may be represented as 0. Alternatively, when the width of the current block is greater than the height of the current block, the value of the context index may be represented by 1, and when the width of the current block is less than the height of the current block, the value of the context index is 2 Can be represented as
  • the value of the context index may be indicated based on information on whether the MTS is allowed, which indicates that the MTS is allowed, and coded quad-tree depth (cqtDepth). That is, when the information on whether the MTS is allowed indicates information that the MTS is allowed, the value of the context index may be indicated based on cqtDepth.
  • the value of the context index may be represented by adding 1 to the value of cqtDepth, and may be represented by 1, 2, 3, 4, 5, or 6.
  • the value of the context index may be represented by comparing the width of the current block and the height of the current block. . That is, when the information on whether the TS is allowed indicates that the TS is allowed, it may be represented by comparing the width of the current block and the height of the current block. Alternatively, when the width of the current block and the height of the current block are the same, the value of the context index may be represented as 0. Alternatively, when the width of the current block is greater than the height of the current block, the value of the context index may be represented by 1, and when the width of the current block is less than the height of the current block, the value of the context index is 2 Can be represented as
  • the value of the context index may indicate ctxInc and/or ctxIdx based on at least one of a block size, a block width-height ratio, whether a block is intra or inter predicted, and whether or not a neighbor transform is skipped.
  • a context model based on at least one of a block size, a block width-height ratio, whether a block is intra or inter predicted, and whether or not a neighbor transform is skipped may be defined, and based on this, a context index value may be represented . For example, information about a transform type or a transform skip for the current block may be obtained based on the context index or context model.
  • residual related information may or may not include the conversion skip flag as described above.
  • residual samples of the current block may indicate that the residual samples are derived without conversion, and a residual signal (or a residual related to the current block) Information) can be signaled on the pixel domain (spatial domain) without conversion.
  • residual samples of the current block may indicate that transformation is performed and derived, and a residual signal (or a residual related to the current block) Information) may be signaled on the transform domain by performing the transform.
  • the encoding apparatus may generate a bitstream by encoding video information including all or part of the above-described information (or syntax elements). Or, it can be output in the form of a bitstream.
  • the bitstream may be transmitted to a decoding device through a network or storage medium.
  • the bitstream can be stored on a computer-readable storage medium.
  • the bitstream may be represented by video information or video information.
  • 15 and 16 schematically show an example of a video/video decoding method and related components according to embodiment(s) of the present document.
  • the method disclosed in FIG. 15 may be performed by the decoding apparatus disclosed in FIG. 3. Specifically, for example, S1500 of FIG. 15 may be performed by the entropy decoding unit 310 of the decoding apparatus in FIG. 16, and S1510 of FIG. 15 may be performed by the prediction unit 330 of the decoding apparatus in FIG. 16. 15, S1520 of FIG. 15 may be performed by the residual processing unit 320 of the decoding apparatus in FIG. 16, and S1530 of FIG. 15 may be performed by the adding unit 340 of the decoding apparatus in FIG. Can be.
  • the method disclosed in FIG. 15 may include the embodiments described above in this document.
  • the decoding apparatus may obtain prediction mode information and residual related information from a bitstream (S1500). Alternatively, the decoding apparatus (entropy) decodes the bitstream to obtain prediction mode information or residual related information.
  • the prediction mode information may include information about the prediction mode of the current block.
  • the prediction mode information may include information about intra prediction mode or inter prediction mode.
  • the residual related information may include residual coding information (or residual coding syntax).
  • the residual related information may include conversion unit information (or conversion unit syntax).
  • the residual related information may include residual coding information and transform unit information.
  • the residual-related information may include the conversion skip flag based on the size of the current block and the maximum conversion skip size.
  • the transform skip flag may indicate whether transform skip is applied to the current block.
  • the transform skip flag may be represented by a transform_skip_flag syntax element. For example, when the value of the transform_skip_flag syntax element is 0, transform skip may be applied to the current block, and if 1, transform skip may not be applied to the current block. Alternatively, if the value of the transform_skip_flag syntax element is 1 according to a setting, transform skip may be applied to the current block, and if 0, transform skip may not be applied to the current block.
  • the size of the current block may indicate the width of the current block and/or the height of the current block.
  • the maximum transform skip size may indicate a maximum size of a block in which transform skip (TS) is allowed.
  • the maximum transform skip size may be represented by MaxTsSize.
  • the residual related information may include the transform skip flag.
  • the maximum transform skip size may be variably derived based on high level syntax.
  • the high-level syntax may be a network abstraction layer (NAL) unit syntax, a sequence parameter set (SPS) syntax, a picture parameter set (PSP) syntax, or a slice header syntax.
  • the high level syntax can be obtained from the bitstream.
  • the high-level syntax can be obtained by (entropy) decoding the bitstream.
  • the high-level syntax may include information on whether multiple tranform selection (MTS) is allowed or information on whether TS is allowed.
  • MTS multiple tranform selection
  • information on whether MTS is allowed or information on whether the TS is allowed may be included in the SPS syntax.
  • information on whether the MTS is allowed may be represented by a sps_mts_enabled_flag syntax element.
  • the information on whether the MTS is allowed may include a sps_mts_intra_enabled_flag syntax element or a sps_mts_inter_enabled_flag syntax element.
  • the sps_mts_intra_enabled_flag syntax element or sps_mts_inter_enabled_flag syntax element may be included in the SPS syntax based on the sps_mts_enabled_flag syntax element.
  • the sps_mts_intra_enabled_flag syntax element may be represented by a sps_explicit_mts_intra_enabled_flag syntax element
  • the sps_mts_inter_enabled_flag syntax element may be represented by a sps_explicit_mts_inter_enabled_flag syntax element.
  • information on whether the MTS is allowed may be represented as MTS enabled information.
  • MTS enabled 1 or the value of the sps_mts_enabled_flag syntax element is 1.
  • the value of the sps_mts_enabled_flag syntax element is 1, and the value of the sps_explicit_mts_intra_enabled_flag syntax element or sps_explicit_mts_inter_enabled_flag syntax element may be represented as 1.
  • MTS enabled 0 or the value of the sps_mts_enabled_flag syntax element is 0.
  • the value of the sps_mts_enabled_flag syntax element is 1, and the value of the sps_explicit_mts_intra_enabled_flag syntax element or sps_explicit_mts_inter_enabled_flag syntax element may be represented as 0.
  • the value may indicate information corresponding to the value in reverse.
  • information on whether the TS is allowed may be represented by TS enabled information or a sps_transform_skip_enabled_flag syntax element.
  • information on whether the TS is allowed may be represented as TS enabled information.
  • TS enabled 1 or the value of the sps_transform_skip_enabled_flag syntax element is 1.
  • TS enabled 0 or the value of the sps_transform_skip_enabled_flag syntax element is 0.
  • the value may indicate information corresponding to the value in reverse.
  • the maximum transform skip size may be derived from one of candidate sizes including 8 and 16 and 32 based on the high level syntax.
  • candidate sizes may further include 4.
  • the transform skip size may be derived based on information on whether MTS is allowed.
  • the maximum transform skip size may be derived from one of candidate sizes including 8, 16 or 32 based on information on whether MTS is allowed.
  • the transform skip size may be derived based on information on whether the MTS included in the high level syntax is allowed.
  • information on the transform skip size may be included in the high level syntax, and the transform skip size may be derived based on the information on the transform skip size.
  • the information about the transform skip size may include information on whether the MTS is allowed as information capable of deriving the transform skip size.
  • the maximum transform skip size may be derived based on the size of the MTS. That is, when the information on whether the MTS is allowed indicates information that the MTS is allowed, the maximum transform skip size may be derived based on the size of the MTS. In other words, the maximum transform skip size may be dependent on the MTS.
  • the size of the MTS may indicate the maximum size of a block in which MTS is allowed. For example, when the size of the MTS is 32 or less, conversion skip can be allowed for a block of size 32 or less.
  • the maximum transform skip size may be derived as a preset size. That is, when the information on whether the MTS is allowed indicates information that the MTS is allowed, the maximum transform skip size may be derived to a predetermined size. For example, when the preset size is 8, the maximum transform skip size may be derived as the preset size 8.
  • the high level syntax may include information on the maximum conversion skip size, and the maximum conversion skip size is It may be derived based on the information on the maximum transform skip size. That is, when the information on whether the MTS is allowed indicates that the MTS is allowed, the high level syntax may separately include information on the maximum conversion skip size, and the maximum conversion skip size may be the maximum conversion skip size. It can be derived based on information about the skip size. Or, for example, when the information on whether the MTS is allowed indicates that the MTS is allowed, the high-level syntax may include information on whether the maximum transform skip size is derived based on the size of the MTS. Can.
  • the high-level syntax is based on the maximum transform skip size.
  • Information on the maximum transform skip size may be included in SPS syntax or PPS syntax. For example, when the information on the maximum transform skip size included in the high-level syntax indicates 32, the maximum transform skip size may be derived as 32 based on the information on the maximum transform skip size.
  • the maximum transform skip size may be derived as a preset size. That is, when the information on whether the MTS is allowed indicates information that the MTS is not allowed, the maximum transform skip size may be derived to a predetermined size. For example, when the preset size is 8, the maximum transform skip size may be derived as the preset size 8.
  • the high level syntax may include information on the maximum conversion skip size, and the maximum conversion skip size Can be derived based on the information on the maximum transform skip size. That is, when the information on whether the MTS is allowed indicates that the MTS is not allowed, the high level syntax may separately include information on the maximum conversion skip size, and the maximum conversion skip size may be the maximum. It can be derived based on information about the transform skip size.
  • Information on the maximum transform skip size may be included in SPS syntax or PPS syntax. For example, when the information on the maximum transform skip size included in the high-level syntax indicates 32, the maximum transform skip size may be derived as 32 based on the information on the maximum transform skip size.
  • the residual-related information may include MTS index information regarding a transformation type applied to the current block.
  • MTS index information may be represented by a tu_mts_idx syntax element or an mts_idx syntax element.
  • MTS index information may be included in a transform unit syntax or a coding unit syntax.
  • MTS index information may indicate information on a transform type or transform skip applied to the current block.
  • the MTS index information may indicate information about a transform type or transform skip applied to the current block based on information on whether the MTS is allowed and/or whether the transform skip is allowed.
  • the information indicated by the MTS index information may be derived based on the bin of the empty string for the MTS index information.
  • the information indicated by the MTS index information may be derived based on the value of the context index of the bin.
  • the information indicated by the MTS index information may be derived based on the context index value of the first bin of the empty string.
  • the context index (ctxIdx) may be derived based on the context index increment (ctxInc) and the context index offset (ctxIdxOffset).
  • the value of the context index of the first bin for the MTS index information may be derived based on information on whether the MTS is allowed, information on whether the conversion skip is allowed, and the size of the current block.
  • the value of the context index of the first bin for the MTS index information may be derived based on Table 19 or Table 22.
  • the value of the context index is the It can be derived by comparing the width of the current block and the height of the current block. That is, when the information on whether the MTS is allowed indicates information that the MTS is allowed, and the information on whether the TS is allowed indicates information that the TS is allowed, the width of the current block and the height of the current block It can be derived by comparing. Alternatively, when the width of the current block and the height of the current block are the same, the value of the context index may be derived as 0.
  • the value of the context index when the width of the current block is greater than the height of the current block, the value of the context index may be derived as 1, and when the width of the current block is less than the height of the current block, the value of the context index is It can be derived as 2.
  • a value of the context index may be derived based on information on whether the MTS is allowed, which indicates that the MTS is allowed, and coded quad-tree depth (cqtDepth). That is, when the information on whether the MTS is allowed indicates that the MTS is allowed, a value of the context index may be derived based on cqtDepth.
  • the value of the context index may be derived by adding 1 to the value of cqtDepth, and may be derived as 1, 2, 3, 4, 5, or 6.
  • the value of the context index may be derived by comparing the width of the current block and the height of the current block. have. That is, when the information on whether the TS is allowed indicates that the TS is allowed, it may be derived by comparing the width of the current block and the height of the current block. Alternatively, when the width of the current block and the height of the current block are the same, the value of the context index may be derived as 0.
  • the value of the context index when the width of the current block is greater than the height of the current block, the value of the context index may be derived as 1, and when the width of the current block is less than the height of the current block, the value of the context index is It can be derived as 2.
  • the value of the context index may determine ctxInc and/or ctxIdx based on at least one of a block size, a block width-height ratio, whether a block is intra or inter predicted, and whether or not a neighbor transform is skipped.
  • a context model based on at least one of a block size, a block width-height ratio, whether a block is intra or inter-predicted, and whether or not a neighbor transform is skipped can be defined, and based on this, a context index value can be derived.
  • information about a transform type or a transform skip for the current block may be obtained based on the context index or context model.
  • the decoding apparatus may derive prediction samples of the current block by performing prediction based on the prediction mode information (S1510).
  • the decoding apparatus may derive the prediction mode of the current block based on the prediction mode information.
  • the prediction mode information may include information on an intra prediction mode or information on an inter prediction mode, and based on this, the prediction mode of the current block may be derived as an intra prediction mode or an inter prediction mode.
  • the decoding apparatus may derive prediction samples of the current block based on the prediction mode. For example, when the prediction mode is an intra prediction mode, the decoding apparatus may derive the prediction samples based on samples around the current block. Alternatively, when the prediction mode is an inter prediction mode, the decoding apparatus may derive the prediction samples based on reference samples in a reference picture of the current block.
  • the decoding apparatus may derive residual samples of the current block based on the residual related information (S1520).
  • the residual-related information may include information about transform coefficients for the residual samples.
  • the residual related information may include the conversion skip flag.
  • the residual signal (or information about the residual) for the current block may be signaled on the pixel domain (spatial domain) without transformation.
  • the residual signal (or information about the residual) for the current block may be converted and signaled on the transform domain.
  • the decoding apparatus may derive residual samples based on the residual signal signaled by the transformation or the transformation is performed.
  • the decoding apparatus may generate reconstructed samples of the current block based on the prediction samples and the residual samples (S1530). Alternatively, the decoding apparatus may derive a reconstructed block or reconstructed picture based on the reconstructed samples. As described above, the decoding apparatus may apply deblocking filtering and/or in-loop filtering procedures, such as SAO procedures, to the reconstructed picture to improve subjective/objective image quality, if necessary.
  • deblocking filtering and/or in-loop filtering procedures such as SAO procedures
  • the decoding device may decode the bitstream to obtain image information including all or part of the above-described information (or syntax elements).
  • the bitstream may be stored in a computer-readable digital storage medium, which may cause the above-described decoding method to be performed.
  • the bitstream may be represented by video information or video information.
  • the above-described method according to the present document may be implemented in software form, and the encoding device and/or the decoding device according to the present document may perform image processing of, for example, a TV, computer, smartphone, set-top box, display device, etc. Device.
  • the above-described method may be implemented as a module (process, function, etc.) performing the above-described function.
  • Modules are stored in memory and can be executed by a processor.
  • the memory may be internal or external to the processor, and may be connected to the processor by various well-known means.
  • the processor may include an application-specific integrated circuit (ASIC), other chipsets, logic circuits, and/or data processing devices.
  • the memory may include read-only memory (ROM), random access memory (RAM), flash memory, memory cards, storage media and/or other storage devices.
  • FIG. 17 schematically shows a structure of a content streaming system.
  • the embodiments described in this document may be implemented and implemented on a processor, microprocessor, controller, or chip.
  • the functional units shown in each figure may be implemented and implemented on a computer, processor, microprocessor, controller, or chip.
  • the decoding device and encoding device to which the present document is applied include multimedia broadcast transmission/reception devices, mobile communication terminals, home cinema video devices, digital cinema video devices, surveillance cameras, video communication devices, real-time communication devices such as video communication, mobile streaming Devices, storage media, camcorders, video on demand (VoD) service providing devices, over the top video (OTT video) devices, Internet streaming service providing devices, 3D (3D) video devices, video telephony video devices, and medical video devices And may be used to process video signals or data signals.
  • the 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).
  • the processing method to which the present 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 this document can 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 Disc (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 via the Internet).
  • bitstream generated by the encoding method may be stored in a computer-readable recording medium or transmitted through a wired or wireless communication network.
  • the embodiments of the present document may be implemented as a computer program product using program codes, and the program codes may be executed on a computer by the embodiments of the present document.
  • the program code can be stored on a computer readable carrier.
  • the content streaming system to which this document is applied may include an encoding server, a streaming server, a web server, a media storage, a user device, and a multimedia input device.
  • the encoding server serves to compress a content input from multimedia input devices such as a smartphone, a camera, and a camcorder into digital data to generate a bitstream and transmit it to the streaming server.
  • multimedia input devices such as a smart phone, a camera, and a camcorder directly generate a bitstream
  • the encoding server may be omitted.
  • the bitstream may be generated by an encoding method or a bitstream generation method to which the present document is applied, and the streaming server may temporarily store the bitstream in the process of 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 to inform the user of the service.
  • the web server delivers 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, in which 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 terminal for digital broadcasting, a personal digital assistants (PDA), a portable multimedia player (PMP), navigation, a slate PC, Tablet PCs, ultrabooks, wearable devices (e.g., smartwatches, smart glasses, head mounted displays (HMDs)), digital TVs, desktops Computers, digital signage, and the like.
  • PDA personal digital assistants
  • PMP portable multimedia player
  • HMDs head mounted displays
  • Each server in the content streaming system can be operated as a distributed server, and in this case, data received from each server can be distributed.

Landscapes

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

Abstract

La présente invention concerne un procédé de décodage vidéo comprenant les étapes suivantes : obtention d'informations de mode de prédiction et d'informations associées résiduelles à partir d'un flux binaire ; réalisation d'une prédiction sur la base des informations de mode de prédiction pour dériver des échantillons de prédiction d'un bloc actuel ; dérivation d'échantillons résiduels du bloc actuel sur la base des informations associées résiduelles ; et génération d'échantillons reconstruits du bloc actuel sur la base des échantillons de prédiction et des échantillons résiduels. Les informations associées résiduelles comprennent un fanion de saut de transformée sur la base d'une taille du bloc actuelle et d'une taille de saut de transformée maximale, le fanion de saut de transformée indiquant si un saut de transformée est appliqué au bloc actuel et la taille de saut de transformée maximale étant dérivée de manière variable sur la base d'une syntaxe de haut niveau.
PCT/KR2020/000626 2019-01-13 2020-01-13 Procédé et appareil de codage vidéo utilisant un fanion de saut de transformée WO2020145798A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962791861P 2019-01-13 2019-01-13
US62/791,861 2019-01-13

Publications (1)

Publication Number Publication Date
WO2020145798A1 true WO2020145798A1 (fr) 2020-07-16

Family

ID=71520297

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/000626 WO2020145798A1 (fr) 2019-01-13 2020-01-13 Procédé et appareil de codage vidéo utilisant un fanion de saut de transformée

Country Status (1)

Country Link
WO (1) WO2020145798A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220303535A1 (en) * 2019-06-20 2022-09-22 InterDigial VC Holdings France, SAS Lossless mode for versatile video coding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170104646A (ko) * 2012-09-28 2017-09-15 캐논 가부시끼가이샤 코딩 유닛의 변환 유닛들을 인코딩 및 디코딩하기 위한 방법, 장치 및 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170104646A (ko) * 2012-09-28 2017-09-15 캐논 가부시끼가이샤 코딩 유닛의 변환 유닛들을 인코딩 및 디코딩하기 위한 방법, 장치 및 시스템

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BROSS, B. ET AL.: "Non-CE8: Unified Transform Type Signalling and Residual Coding for Transform Skip", JVET-M0464-V3. JOINT VIDEO EXPERTS TEAM (JVET) OF LTU-TSG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11. 13TH MEETING, 12 January 2019 (2019-01-12), Marrakech, MA, pages 1 - 13 *
BROSS, BENJAMIN ET AL.: "Versatile Video Coding (Draft 3", JVET-L1001-V7. JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC I/SC 29/WG 11. 12TH MEETING, 20 December 2018 (2018-12-20), Macao, pages 1 - 215 *
TSUKUBA, TAKESHI ET AL.: "Non-CE6: On transform skip for larger block. JVET-M0072-v2", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11. 13TH MEETING, 2 January 2019 (2019-01-02), Marrakech, MA, pages 1 - 9 *
ZHAO, XIN ET AL.: "CE6 related: Unification of Transform Skip mode and MTS", JVET-M0501-V2. JOINT VIDEO EXPERTS TEAM (JVET) OFITU-T SG 16 WP 3 AND ISO/TEC JTC 1/SC 29/WG 11. 13TH MEETING, 5 January 2019 (2019-01-05), Marrakech, MA, pages 1 - 5 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220303535A1 (en) * 2019-06-20 2022-09-22 InterDigial VC Holdings France, SAS Lossless mode for versatile video coding
US12010309B2 (en) * 2019-06-20 2024-06-11 Interdigital Ce Patent Holdings, Sas Lossless mode for versatile video coding

Similar Documents

Publication Publication Date Title
WO2020149648A1 (fr) Procédé et dispositif de codage d'images utilisant un drapeau de saut de transformation
WO2020009556A1 (fr) Procédé et dispositif de codage d'image à base de transformée
WO2020046091A1 (fr) Procédé de codage d'image basé sur une sélection d'une transformée multiple et dispositif associé
WO2020171592A1 (fr) Procédé de décodage vidéo à l'aide d'informations résiduelles dans un système de codage vidéo, et dispositif associé
WO2020213944A1 (fr) Transformation pour une intra-prédiction basée sur une matrice dans un codage d'image
WO2020213946A1 (fr) Codage d'image utilisant un indice de transformée
WO2020213945A1 (fr) Transformée dans un codage d'image basé sur une prédiction intra
WO2020116961A1 (fr) Procédé de codage d'image basé sur une une transformée secondaire et dispositif associé
WO2021172912A1 (fr) Procédé et appareil pour décoder une imagerie se rapportant au masquage de données de signe
WO2021096172A1 (fr) Procédé de codage d'image basé sur une transformée, et dispositif associé
WO2021040487A1 (fr) Procédé de décodage d'image pour codage de données résiduelles dans un système de codage d'image, et appareil associé
WO2020197274A1 (fr) Procédé de codage d'image basé sur des transformations et dispositif associé
WO2020145795A1 (fr) Procédé de décodage d'image à l'aide d'informations résiduelles dans un système de codage d'image et dispositif associé
WO2021040319A1 (fr) Procédé et appareil pour dériver un paramètre rice dans un système de codage vidéo/image
WO2021066618A1 (fr) Codage d'image ou de vidéo basé sur la signalisation d'informations liées au saut de transformée et au codage de palette
WO2021040492A1 (fr) Procédé et dispositif permettant de coder un coefficient de transformée dans un système de codage vidéo/image
WO2021006700A1 (fr) Procédé de décodage d'image faisant appel à un fanion servant à un procédé de codage résiduel dans un système de codage d'image, et dispositif associé
WO2020256482A1 (fr) Procédé de codage d'image basé sur une transformée et dispositif associé
WO2020130581A1 (fr) Procédé permettant de coder une image sur la base d'une transformée secondaire et dispositif associé
WO2020145798A1 (fr) Procédé et appareil de codage vidéo utilisant un fanion de saut de transformée
WO2021158048A1 (fr) Procédé de décodage d'image associé à la signalisation d'un drapeau indiquant si tsrc est disponible, et dispositif associé
WO2021040407A1 (fr) Procédé de décodage d'une vidéo au moyen d'un codage de données résiduelles dans un système de codage de vidéo, et dispositif associé
WO2021034100A1 (fr) Procédé de décodage d'image utilisant un codage sans perte dans un système de codage d'image et appareil associé
WO2020149594A1 (fr) Procédé de décodage d'image permettant de coder des informations résiduelles sur la base de la mise à zéro haute fréquence dans un système de codage d'image, et dispositif associé
WO2021040488A1 (fr) Codage d'image ou de vidéo basé sur une binarisation d'échappement en mode palette

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: 20739104

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20739104

Country of ref document: EP

Kind code of ref document: A1