Method and apparatus for intra prediction based on MPM list
By adopting an in -frame prediction method based on the MPM list in the image compilation, the problem of low intra -frame prediction efficiency in the existing technology is solved, and more efficient image/video compression and lower transmission and storage costs are achieved.
Patent Information
- Application Number
- CN202411370931.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2019-03-26
- Filing Date
- 2020-03-23
- Publication Date
- 2025-01-28
AI Technical Summary
The prior art is difficult to effectively improve the efficiency of intra prediction in image compilation, especially when processing high resolution and high quality images/videos, resulting in increased transmission and storage costs.
Adopt an in -frame prediction method based on the most likely mode (MPM) list, and to identify the in -frame prediction mode for the current block by extracting the MPM logo information, multi -reference line (MRL) index information, and graphic logo from the bittios. And generate predicted samples to build restructuring pictures.
Improve the compression efficiency of images/videos, reduce the cost of transmission and storage, and improve the efficiency of intra -frame prediction.
Smart Images

Figure CN119383359A_ABST
Abstract
Description
[0001] This application is a divisional application of a patent application with application number 202080031450.0 (PCT / KR2020 / 003920), which was submitted to the China Patent Office on October 26, 2021, with an international application date of March 23, 2020, and the invention name is “Intra-frame prediction method and device based on MPM list”. Technical Field
[0002] The present disclosure relates to an image coding technology, and more particularly, to an intra prediction method and a device thereof based on a most probable mode (MPM) list in an image coding system. Background Art
[0003] Recently, there is an increasing demand for high-resolution, high-quality images / videos such as 4K or 8K ultra-high definition (UHD) images / videos in various fields. As the image / video resolution or quality becomes higher, relatively more information or bits are transmitted compared to conventional image / video data. Therefore, if the image / video data is transmitted via a medium such as an existing wired / wireless broadband line or is stored in a conventional storage medium, the cost of transmission and storage is easily increased.
[0004] In addition, there is growing interest and demand for virtual reality (VR) and artificial reality (AR) content and immersive media such as holograms; and there is also growing broadcasting of images / videos that exhibit image / video characteristics different from actual images / videos (e.g., game images / videos).
[0005] Therefore, highly efficient image / video compression technology is required to effectively compress and transmit, store, or play high-resolution, high-quality images / videos showing various characteristics as described above. Summary of the invention
[0006] Technical issues
[0007] The present disclosure will provide a method and apparatus for improving image coding efficiency.
[0008] The present disclosure will also provide a method and apparatus for improving the efficiency of intra prediction.
[0009] The present disclosure will also provide a method and apparatus for performing intra prediction based on an MPM list for a current block.
[0010] The present disclosure will also provide a method and apparatus for performing MPM list-based intra prediction based on multiple reference line (MRL) index information of at least one reference sample line for intra prediction of a current block.
[0011] The present disclosure will also provide a method and apparatus for performing MPM list based intra prediction based on planar (PLANAR) flag information regarding whether an intra prediction mode for a current block is determined as a planar mode.
[0012] The present disclosure will also provide a method and apparatus for determining whether to signal plane flag information based on MRL index information.
[0013] The present disclosure will also provide a method and device for constructing an MPM list for a current block.
[0014] The present disclosure will also provide a method and apparatus for determining a value of a context index for a bin associated with plane flag information based on whether an intra sub-partitioning (ISP) mode is applied to a current block.
[0015] Technical Solution
[0016] According to an embodiment of the present disclosure, an image decoding method performed by a decoding device is provided. The method includes: obtaining intra-frame prediction information from a bitstream, the intra-frame prediction information including MPM flag information related to whether to derive an intra-frame prediction mode for the current block based on a most probable mode (MPM) candidate for the current block, multi-reference line (MRL) index information of at least one reference sample line for intra-frame prediction of the current block, and at least one of plane (PLANAR) flag information related to whether to determine the intra-frame prediction mode for the current block as a plane mode; checking the MPM flag information; checking the MRL index information based on the case where the value of the MPM flag information indicates the check of the MRL index information; checking the plane flag information based on the case where the value of the MRL index information is 0; deriving the intra-frame prediction mode for the current block based on the check of the plane flag information; deriving the prediction sample of the current block based on the intra-frame prediction mode for the current block; and generating a reconstructed picture based on the prediction sample.
[0017] In an embodiment, deriving the intra prediction mode for the current block may include: deriving the intra prediction mode for the current block as the planar mode based on a case where the plane flag information indicates that the intra prediction mode for the current block is derived as the planar mode.
[0018] In an embodiment, the intra-frame prediction information may further include MPM index information associated with one of the MPM candidates for the current block from which the planar mode has been excluded, wherein deriving the intra-frame prediction mode for the current block may include: based on the plane flag information indicating that the intra-frame prediction mode for the current block is not derived as the planar mode, checking the MPM index information, and deriving the intra-frame prediction mode for the current block based on the result of checking the MPM index information.
[0019] In an embodiment, the number of MPM candidates for the current block from which the planar mode has been excluded may be five.
[0020] In an embodiment, the intra prediction mode for the current block may be derived based on the MPM candidates for the current block from which the planar mode has been excluded and based on a case where the value of the MRL index information indicates non-zero.
[0021] In an embodiment, the value of the plane marker information can be derived based on the context model for the bin associated with the plane marker information, the context model for the bin associated with the plane marker information can be derived based on the context index increment (ctxInc), based on the case where the bin index of the bin can be 0, the context index increment for the bin associated with the plane marker information is selected from two candidates, the two candidates may include 0 and 1, the context model for the case where the context index increment is 0 may be different from the context model for the case where the context index increment is 1, the value of the context index increment for the bin associated with the plane marker information may be one of two different integers, and the two different integers may be 0 and 1.
[0022] In an embodiment, a value of a context index increment for a bin associated with plane flag information may be based on whether an intra sub-partitioning (ISP) mode is applied to the current block.
[0023] In an embodiment, the value of the context index increment may be determined to be 1 based on a determination that the ISP mode is applied to the current block, and the value of the context index increment may be determined to be 0 based on a determination that the ISP mode is not applied to the current block.
[0024] According to another embodiment of the present disclosure, a decoding device for performing image decoding is provided. The decoding device includes: an entropy decoder, which obtains intra-frame prediction information from a bitstream, the intra-frame prediction information including MPM flag information related to whether to derive an intra-frame prediction mode for the current block based on a most probable mode (MPM) candidate for the current block, multi-reference line (MRL) index information of at least one reference sample line for intra-frame prediction of the current block, and plane (PLANAR) flag information related to whether to determine the intra-frame prediction mode for the current block as a plane mode, checks the MPM flag information, checks the MRL index information based on the value of the MPM flag information and the check result associated with the check of the MRL index information, and checks the plane flag information based on the check result that the value of the MRL index information is 0; a predictor, which derives the intra-frame prediction mode for the current block based on the check of the plane flag information, and derives the prediction sample of the current block based on the intra-frame prediction mode for the current block; and an adder, which generates a reconstructed picture based on the prediction sample.
[0025] In an embodiment, the intra prediction information may further include MPM index information associated with one of the MPM candidates for the current block from which the plane mode has been excluded, wherein the number of MPM candidates for the current block from which the plane mode has been excluded may be five. The entropy decoder may check the MPM index information based on a check result that the value of the plane flag information is associated with not deriving the intra prediction mode for the current block as the plane mode. The predictor may derive the intra prediction mode for the current block based on a result of checking the MPM index information.
[0026] In an embodiment, the predictor may derive the intra prediction mode for the current block based on the MPM candidates for the current block from which the planar mode has been excluded and based on a checking result that the value of the MRL index information is not zero.
[0027] In an embodiment, the value of the context index increment for the bin associated with the plane flag information may be one of two different integers, which may be 0 and 1, and the value of the context index increment for the bin associated with the plane flag information may be based on whether an intra sub-partitioning (ISP) mode is applied to the current block.
[0028] In an embodiment, the value of the context index increment may be determined to be 1 based on a determination that the ISP mode is applied to the current block, and the value of the context index increment may be determined to be 0 based on a determination that the ISP mode is not applied to the current block.
[0029] According to another embodiment of the present disclosure, there is provided an image encoding method performed by an encoding device. The image encoding method includes: deriving an intra-frame prediction mode for a current block; generating MPM flag information related to whether to encode the intra-frame prediction mode based on an MPM candidate for the current block; generating MRL index information based on the MPM flag information indicating that the MRL index information is associated with multiple reference line (MRL) index information of at least one reference sample line for intra-frame prediction of the current block; generating plane flag information related to whether the derived intra-frame prediction mode for the current block is a plane (PLANAR) mode based on a check result that the value of the MRL index information is 0; and encoding image information including at least one of the MPM flag information, the MRL index information, and the plane flag information.
[0030] In an embodiment, the image encoding method may further include: based on the determination that the value of the plane flag information is associated with the intra-frame prediction mode for the current block is not derived as the plane mode, deriving MPM index information associated with one of the MPM candidates for the current block from which the plane mode has been excluded.
[0031] In an embodiment, the number of MPM candidates for the current block from which the planar mode has been excluded may be five.
[0032] In an embodiment, the image encoding method may include deriving an intra prediction mode for the current block based on a checking result that the planar mode has been excluded from the MPM candidates for the current block and the value of the base MRL index information is not zero.
[0033] In an embodiment, the value of the context index for the bin associated with the plane flag information may be one of two different integers, and the two different integers may be 0 and 1.
[0034] In an embodiment, the value of the context index increment for the bin associated with the plane flag information may be based on whether the ISP mode is applied to the current block.
[0035] In an embodiment, the value of the context index increment may be determined to be 1 based on a determination that the ISP mode is applied to the current block, and the value of the context index increment may be determined to be 0 based on a determination that the ISP mode is not applied to the current block.
[0036] According to another embodiment of the present disclosure, a coding device for performing image coding is provided. The coding device includes: a predictor that derives an intra-frame prediction mode for a current block; and an entropy encoder that generates MPM flag information related to whether to encode the intra-frame prediction mode based on the MPM candidate for the current block, derives MRL index information based on a determination that a value of the MPM flag information is associated with multi-reference line (MRL) index information of at least one reference sample line for intra-frame prediction of the current block, derives plane flag information related to whether the derived intra-frame prediction mode for the current block is a planar (PLANAR) mode based on a check result that the value of the MRL index information is 0, and encodes image information including at least one of the MPM flag information, the MRL index information, and the plane flag information.
[0037] The image encoding apparatus according to an embodiment may derive MPM index information associated with one of the MPM candidates for the current block from which the planar mode has been excluded, based on a case where the plane flag information indicates that the intra prediction mode for the current block is not derived as the planar mode.
[0038] In an embodiment, the number of MPM candidates for the current block from which the planar mode has been excluded may be five.
[0039] The image encoding apparatus according to an embodiment may derive an intra prediction mode for the current block based on the MPM candidates for the current block from which the planar mode has been excluded and based on the case where the value of the MRL index information indicates non-zero.
[0040] In an embodiment, the value of the plane flag information can be derived based on the context model for the bin associated with the plane flag information, and the context model for the bin associated with the plane flag information can be derived based on the context index increment (ctxInc). The context index increment for the bin associated with the plane flag information can be selected from two candidates based on the case where the bin index of the bin can be 0. The candidates may include 0 and 1, and the context model for the case where the context index increment is 0 may be different from the context model for the case where the context index increment is 1. The value of the context index increment for the bin associated with the plane flag information may be one of two different integers, and the two different integers may be 0 and 1.
[0041] In an embodiment, the value of the context index increment for the bin associated with the plane flag information may be based on whether the ISP mode is applied to the current block.
[0042] In an embodiment, the value of the context index increment may be determined to be 1 based on a determination that the ISP mode is applied to the current block, and the value of the context index increment may be determined to be 0 based on a determination that the ISP mode is not applied to the current block.
[0043] According to still another embodiment of the present disclosure, a decoder-readable storage medium is provided, which stores information about instructions for causing a video decoding device to perform a decoding method according to some embodiments.
[0044] According to another embodiment of the present disclosure, a decoder-readable storage medium is provided, which stores information about instructions for causing a video decoding device to perform a decoding method according to an embodiment. The decoding method according to the embodiment includes: obtaining intra-frame prediction information from a bitstream, the intra-frame prediction information including MPM flag information related to whether to derive an intra-frame prediction mode for the current block based on a most probable mode (MPM) candidate for the current block, multi-reference line (MRL) index information of at least one reference sample line for intra-frame prediction of the current block, and at least one of plane flag information related to whether to determine the intra-frame prediction mode for the current block as a plane mode; checking the MPM flag information; checking the MRL index information based on a check result associated with a value of the MPM flag information and a check on the MRL index information; checking the plane flag information based on a check result that the value of the MRL index information is 0; deriving an intra-frame prediction mode for the current block based on the check on the plane flag information; deriving a prediction sample for the current block based on the intra-frame prediction mode for the current block; and generating a reconstructed picture based on the prediction sample.
[0045] In an embodiment, the intra prediction information may further include MPM index information associated with one of the MPM candidates for the current block from which the plane mode has been excluded, wherein the number of the MPM candidates for the current block from which the plane mode has been excluded may be five. Deriving the intra prediction mode for the current block may include checking the MPM index information based on a check result that the value of the plane flag information is associated with not deriving the intra prediction mode for the current block as the plane mode, and deriving the intra prediction mode for the current block based on a result of checking the MPM index information.
[0046] The decoding method according to an embodiment may include deriving an intra prediction mode for the current block based on MPM candidates for the current block from which the planar mode has been excluded and based on a case where a value of the MRL index information indicates non-zero.
[0047] In an embodiment, the value of the plane flag information may be derived based on a context model for a bin associated with the plane flag information, the context model for the bin associated with the plane flag information may be derived based on a context index increment (ctxInc), and the context index increment for the bin associated with the plane flag information may be selected from two candidates based on the case where the bin index of the bin may be 0. The candidates may include 0 and 1, and the context model for the case where the context index increment is 0 may be different from the context model for the case where the context index increment is 1. The value of the context index increment for the bin associated with the plane flag information may be one of two different integers, and the two different integers may be 0 and 1. The value of the context index increment for the bin associated with the plane flag information may be based on whether an intra sub-partitioning (ISP) mode is applied to the current block.
[0048] In an embodiment, the value of the context index increment may be determined as 1 based on a determination that the ISP mode is applied to the current block. The value of the context index increment may be determined as 0 based on a determination that the ISP mode is not applied to the current block.
[0049] Effects of the Invention
[0050] According to the present disclosure, the overall image / video compression efficiency may be improved.
[0051] According to the present disclosure, intra prediction efficiency can be improved.
[0052] According to the present disclosure, intra prediction can be efficiently performed based on the MPM list.
[0053] According to the present disclosure, the efficiency of intra prediction based on the MPM list may be improved based on MRL index information of at least one reference sample line used for intra prediction of the current block.
[0054] According to the present disclosure, the efficiency of intra prediction based on the MPM list may be improved based on plane flag information regarding whether an intra prediction mode for a current block is determined as a plane mode.
[0055] According to the present disclosure, image coding efficiency may be improved by determining whether to signal plane flag information based on MRL index information.
[0056] According to the present disclosure, an MPM list for the current block may be efficiently constructed.
[0057] According to the present disclosure, a value of a context index for a bin associated with plane flag information may be determined based on whether the ISP mode is applied to a current block. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] Figure 1 An example of a video / image coding system to which the present disclosure can be applied is schematically illustrated.
[0059] Figure 2 is a diagram schematically illustrating a configuration of a video / image encoding device to which the present disclosure can be applied.
[0060] Figure 3 is a diagram for schematically illustrating a configuration of a video / image decoding device to which the present disclosure can be applied.
[0061] Figure 4a and Figure 4b are diagrams illustrating an example of an image encoding method performed by an encoding device according to an embodiment and an example of an image decoding method performed by a decoding device according to an embodiment.
[0062] Figure 5 is a flowchart illustrating an intra prediction method according to an embodiment.
[0063] Figure 6 is a diagram illustrating an example of a directional intra prediction mode.
[0064] Figure 7 It is a diagram for explaining the construction of an MPM list according to an embodiment.
[0065] Figure 8 It is a diagram for explaining the construction of an MPM list according to another embodiment.
[0066] Fig. 9 is a flowchart illustrating an MPM prediction method according to an embodiment.
[0067] Fig.10 is a flow chart illustrating an MPM prediction method according to another embodiment.
[0068] Fig.11 is a flowchart illustrating the operation of an encoding device according to an embodiment.
[0069] Fig.12 is a block diagram showing the configuration of an encoding device according to an embodiment.
[0070] Fig.13 is a flowchart illustrating the operation of a decoding device according to an embodiment.
[0071] Fig.14 is a block diagram showing the configuration of a decoding device according to an embodiment.
[0072] Fig.15 represents an example of a content streaming system to which the disclosure herein may be applied. DETAILED DESCRIPTION
[0073] The present disclosure can be modified in various forms, and its specific embodiments will be described and illustrated in the accompanying drawings. However, these embodiments are not intended to limit the present disclosure. The terms used in the following description are only used to describe specific embodiments and are not intended to limit the present disclosure. Singular expressions include plural expressions as long as they are not clearly understood differently. Terms such as "including" and "having" are intended to indicate the presence of features, quantities, steps, operations, elements, components, or combinations thereof used in the following description, so it should be understood that the possibility of the presence or addition of one or more different features, quantities, steps, operations, elements, components, or combinations thereof is not excluded.
[0074] In addition, the various configurations of the drawings described in the present disclosure are independent diagrams for illustrating functions as different features from each other, and do not mean that the various configurations are implemented by different hardware or different software from each other. For example, two or more configurations in a configuration can be combined to form one configuration, and one configuration can also be divided into multiple configurations. Without departing from the gist of the present disclosure, embodiments in which the configurations are combined and / or separated are included within the scope of the present disclosure.
[0075] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In addition, like reference numerals are used throughout the drawings to indicate like elements, and the same description of like elements will be omitted.
[0076] Figure 1 An example of a video / image coding system to which the present disclosure can be applied is illustrated.
[0077] This article relates to video / image coding. For example, the methods / implementations disclosed herein may be applied to methods disclosed in the Versatile Video Coding (VVC), the Essential Video Coding (EVC) standard, the AOMedia Video1 (AV1) standard, the 2nd generation Audio Video Coding standard (AVS2), or the next generation video / image coding standard (e.g., H.267, H.268, etc.).
[0078] Various embodiments of video / image coding are proposed herein, and unless otherwise specified, the embodiments described above may also be performed in combination with each other.
[0079] In this article, video may refer to a series of images over time. A picture generally refers to a unit representing an image at a specific time frame, and a slice / tile refers to a unit that constitutes a part of a picture when coding. A slice / tile may include one or more coding tree units (CTUs). A picture may be composed of one or more slices / tiles. A picture may be composed of one or more tile groups. A tile group may include one or more tiles. A tile may represent a rectangular area of a CTU row within a tile in a picture (a tile may represent a rectangular area of a CTU row within a tile in a picture). A tile may be partitioned into multiple tiles, each of which may be constructed with one or more CTU rows within a tile (a tile may be partitioned into multiple tiles, each of which may be composed of one or more CTU rows within a tile). A tile that is not partitioned into multiple tiles may also be referred to as a tile. A tile scan may represent a specific sequential ordering of CTUs of a partitioned picture, wherein CTUs may be ordered in a CTU raster scan within a tile, and tiles within a tile may be ordered continuously in a raster scan of tiles of the tile, and tiles in a picture may be ordered continuously in a raster scan of tiles of the tile (a tile scan is a specific sequential ordering of CTUs of a partitioned picture, wherein CTUs may be ordered continuously in a CTU raster scan within a tile, tiles within a tile may be ordered continuously in a raster scan of tiles of the tile, and tiles in a picture may be ordered continuously in a raster scan of tiles of the picture). A tile is a rectangular area of a CTU within a specific tile column and a specific tile column (a tile is a rectangular area of a CTU within a specific tile column and a specific tile row in a picture). A tile column is a rectangular area of a CTU whose height is equal to the height of the picture and whose width may be specified by a syntax element in a picture parameter set (a tile column is a rectangular area of a CTU whose height is equal to the height of the picture and whose width is specified by a syntax element in a picture parameter set). A tile row is a rectangular area of CTUs whose width is specified by a syntax element in a picture parameter set and whose height may be equal to the height of the picture (a tile row is a rectangular area of CTUs whose height is specified by a syntax element in a picture parameter set and whose width is equal to the width of the picture). A tile scan may represent a specific sequential ordering of CTUs that partition a picture, and the CTUs may be ordered contiguously in a raster scan of CTUs in tiles, while tiles in a picture may be ordered contiguously in a raster scan of tiles of a picture (a tile scan is a specific sequential ordering of CTUs that partition a picture, where CTUs may be ordered contiguously in a raster scan of CTUs in tiles, while tiles in a picture may be ordered contiguously in a raster scan of tiles of a picture). A slice may include an integer number of tiles of a picture, and may include an integer number of tiles in a single NAL unit (a slice includes an integer number of tiles of a picture that may be exclusively included in a single NAL unit).A slice may be constructed from multiple complete tiles, or may be a continuous sequence of complete tiles of one tile (a slice may consist of multiple complete tiles or a continuous sequence of complete tiles of only one tile). In this document, tile group and slice may be used instead of each other. For example, in this document, a tile group / tile group header may be referred to as a slice / slice header.
[0080] A pixel or a picture element (pel) may refer to the smallest unit constituting a picture (or image). In addition, a "sample" may be used as a term corresponding to a pixel. A sample may generally represent a pixel or a value of a pixel, and may represent a pixel / pixel value of only a luminance component or a pixel / pixel value of only a chrominance component.
[0081] A unit may represent a basic unit of image processing. A unit may include at least one of a specific area of a picture and information related to the area. A unit may include a luminance block and two chrominance (e.g., cb, cr) blocks. In some cases, a unit may be used interchangeably with terms such as a block or an area. In general, an M×N block may include a set (or array) of samples (or sample arrays) or transform coefficients of M columns and N rows.
[0082] In the present disclosure, the terms " / " and "," should be interpreted as indicating "and / or". For example, the expression "A / B" may mean "A and / or B". In addition, "A, B" may mean "A and / or B". In addition, "A / B / C" may mean "at least one of A, B, and / or C". In addition, "A / B / C" may mean "at least one of A, B, and / or C".
[0083] Furthermore, in this document, the term "or" should be interpreted as indicating "and / or". For example, the expression "A or B" may include 1) only A, 2) only B, and / or 3) both A and B. In other words, the term "or" in this disclosure should be interpreted as indicating "additionally or alternatively."
[0084] Reference Figure 1 The video / image coding system may include a source device and a receiving device. The source device may transmit the encoded video / image information or data in the form of a file or stream to the receiving device via a digital storage medium or a network.
[0085] The source device may include a video source, an encoding device, and a transmitter. The receiving device may include a receiver, a decoding device, and a renderer. The encoding device may be referred to as a video / image encoding device, and the decoding device may be referred to as a video / image decoding device. The transmitter may be included in the encoding device. The receiver may be included in the decoding device. The renderer may include a display, and the display may be configured as a separate device or an external component.
[0086] The video source may acquire the video / image by capturing, synthesizing or generating a video / image process. The video source may include a video / image capturing device, and / or a video / image generating device. For example, the video / image capturing device may include one or more cameras, a video / image archive including previously captured videos / images, etc. For example, the video / image generating device may include a computer, a tablet computer, and a smart phone, and may generate the video / image (electronically). For example, a virtual video / image may be generated by a computer, etc. In this case, the video / image capturing process may be replaced by a process that generates relevant data.
[0087] The encoding device can encode the input video / image. For compression and coding efficiency, the encoding device can perform a series of processes such as prediction, transformation and quantization. The encoded data (encoded video / image information) can be output in the form of a bit stream.
[0088] The transmitter may transmit the encoded image / image information or data output in the form of a bit stream to a receiver of a receiving device in the form of a file or stream via a digital storage medium or a network. The digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, etc. The transmitter may include an element for generating a media file in a predetermined file format, and may include an element for transmission via a broadcast / communication network. The receiver may receive / extract a bit stream and transmit the received bit stream to a decoding device.
[0089] The decoding device may decode a video / image by performing a series of processes corresponding to the operations of the encoding device, such as dequantization, inverse transformation, and prediction.
[0090] The renderer may render the decoded video / image. The rendered video / image may be displayed through a display.
[0091] Figure 2 is a diagram schematically illustrating a configuration of a video / image encoding device to which the present disclosure can be applied. Hereinafter, what is referred to as a video encoding device may include an image encoding device.
[0092] Reference Figure 2, the encoding device 200 includes an image segmenter 210, a predictor 220, a residual processor 230 and an entropy encoder 240, an adder 250, a filter 260 and a memory 270. The predictor 220 may include an inter-frame predictor 221 and an intra-frame predictor 222. The residual processor 230 may include a transformer 232, a quantizer 233, a dequantizer 234 and an inverse transformer 235. The residual processor 230 may also include a subtractor 231. The adder 250 may be referred to as a reconstructor or a reconstructed block generator. According to an embodiment, the image segmenter 210, the predictor 220, the residual processor 230, the entropy encoder 240, the adder 250 and the filter 260 may be configured by at least one hardware component (e.g., an encoder chipset or processor). In addition, the memory 270 may include a decoded picture buffer (DPB), or may be configured by a digital storage medium. The hardware component may also include the memory 270 as an internal / external component.
[0093] The image divider 210 may divide the input image (or picture, frame) input to the encoding device 200 into one or more processing units. For example, the processing unit may be referred to as a coding unit (CU). In this case, the coding unit may be recursively divided from a coding tree unit (CTU) or a maximum coding unit (LCU) according to a quadtree binary tree ternary tree (QTBTTT) structure. For example, one coding unit may be divided into a plurality of coding units of a deeper depth based on a quadtree structure, a binary tree structure, and / or a ternary tree structure. In this case, for example, the quadtree structure is first applied, and / or the binary tree structure and / or the ternary tree structure may be applied later. Alternatively, the binary tree structure may also be applied first. The coding process according to the present disclosure may be performed based on the final coding unit that is no longer divided. In this case, based on the coding efficiency according to image features, etc., the maximum coding unit may be directly used as the final coding unit, or, if necessary, the coding unit may be recursively divided into coding units of a deeper depth so that a coding unit with an optimal size may be used as the final coding unit. Here, the coding process may include processes such as prediction, transformation, and reconstruction to be described later. As another example, the processing unit may further include a prediction unit (PU) or a transformation unit (TU). In this case, each of the prediction unit and the transformation unit may be split or partitioned from the aforementioned final coding unit. The prediction unit may be a unit of sample prediction, and the transformation unit may be a unit for deriving a transformation coefficient and / or a unit for deriving a residual signal from a transformation coefficient.
[0094] In some cases, a unit may be used interchangeably with terms such as a block or region. In general, an M×N block may represent a set of samples or transform coefficients consisting of M columns and N rows. A sample may generally represent a pixel or a pixel value, and may represent only a pixel / pixel value of a luminance component or only a pixel / pixel value of a chrominance component. A sample may be used as a term corresponding to one picture (or image) of a pixel or a pixel element.
[0095] In the encoding device 200, a prediction signal (prediction block, prediction sample array) output from the inter predictor 221 or the intra predictor 222 is subtracted from an input image signal (original block, original sample array) to generate a residual signal (residual block, residual sample array), and the generated residual signal is sent to the transformer 232. In this case, as shown, a unit that subtracts a prediction signal (prediction block, prediction sample array) from an input image signal (original block, original sample array) in the encoder 200 may be referred to as a subtractor 231. The predictor may perform prediction on a block to be processed (hereinafter, referred to as a current block) and generate a prediction block including prediction samples of the current block. The predictor may determine whether intra prediction or inter prediction is applied based on the current block or CU. As described later in the description of each prediction mode, the predictor may generate various types of information related to prediction (e.g., prediction mode information) and send the generated information to the entropy encoder 240. Information about the prediction may be encoded in the entropy encoder 240 and output in the form of a bitstream.
[0096] The intra-frame predictor 222 may predict the current block with reference to samples in the current picture. Depending on the prediction mode, the referenced samples may be located near the current block or may be spaced apart. In intra-frame prediction, the prediction mode may include multiple non-directional modes and multiple directional modes. For example, the non-directional mode may include a DC mode and a plane mode. For example, depending on the level of detail of the prediction direction, the directional mode may include 33 directional prediction modes or 65 directional prediction modes. However, this is only an example, and more or fewer directional prediction modes may be used depending on the settings. The intra-frame predictor 222 may use the prediction mode applied to the neighboring blocks to determine the prediction mode applied to the current block.
[0097] The inter-frame predictor 221 may derive a prediction block of the current block based on a reference block (reference sample array) specified by a motion vector on a reference picture. Here, in order to reduce the amount of motion information sent in the inter-frame prediction mode, the motion information may be predicted in units of blocks, sub-blocks, or samples based on the correlation of motion information between neighboring blocks and the current block. The motion information may include a motion vector and a reference picture index. The motion information may also include inter-frame prediction direction (L0 prediction, L1 prediction, Bi prediction, etc.) information. In the case of inter-frame prediction, the neighboring blocks may include spatial neighboring blocks present in the current picture and temporal neighboring blocks 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 referred to as a collocated reference block, a collocated CU (colCU), etc., and the reference picture including the temporal neighboring block may be referred to as a collocated picture (colPic). For example, the inter-frame predictor 221 may configure a motion information candidate list based on the neighboring blocks and generate information indicating which candidate is used to derive the motion vector and / or reference picture index of the current block. Inter-frame prediction may be performed based on various prediction modes. For example, in the case of skip mode and merge mode, the inter-frame predictor 221 may use the motion information of the neighboring block as the motion information of the current block. In skip mode, unlike merge mode, a residual signal may not be transmitted. The motion vector prediction (MVP) mode may indicate the motion vector of the current block by using the motion vector of the neighboring block as a motion vector predictor and signaling the motion vector difference.
[0098] The predictor 220 may generate a prediction signal based on various prediction methods described below. For example, the predictor may not only apply intra prediction or inter prediction to predict a block, but also apply both intra prediction and inter prediction at the same time. This may be referred to as combined inter and intra prediction (CIIP). In addition, the predictor may predict a block based on an intra block copy (IBC) prediction mode or a palette mode. The IBC prediction mode or the palette mode may be used for content image / video coding of games, etc., such as screen content coding (SCC). IBC basically performs prediction in the current picture, but may be performed similarly to inter prediction so that a reference block is derived in the current picture. That is, IBC may use at least one inter prediction technique described herein. The palette mode may be considered as an example of intra coding or intra prediction. When the palette mode is applied, the sample values within the picture may be signaled based on information about the palette table and the palette index.
[0099] The prediction signal generated by the predictor (including the inter-frame predictor 221 and / or the intra-frame predictor 222) can be used to generate a reconstruction signal or to generate a residual signal. The transformer 232 can generate a transform coefficient by applying a transform technique to the residual signal. For example, the transform technique may include at least one of a discrete cosine transform (DCT), a discrete sine transform (DST), a Karhunen–Loève transform (KLT), a graph-based transform (GBT), or a conditional nonlinear transform (CNT). Here, when the relationship information between pixels is represented by a graph, GBT means a transform obtained from a graph. CNT refers to a transform generated based on a prediction signal generated using all previously reconstructed pixels. In addition, the transform process can be applied to square pixel blocks of the same size or to blocks of variable sizes other than square.
[0100] The quantizer 233 may quantize the transform coefficients and send them to the entropy encoder 240, and the entropy encoder 240 may encode the quantized signal (information about the quantized transform coefficients) and output a bitstream. The information about the quantized transform coefficients may be referred to as residual information. The quantizer 233 may rearrange the block type quantized transform coefficients into a one-dimensional vector form based on the coefficient scanning order, and generate information about the quantized transform coefficients based on the quantized transform coefficients in the one-dimensional vector form. Information about the transform coefficients may be generated. The entropy encoder 240 may perform various encoding methods such as exponential Golomb coding, context adaptive variable length coding (CAVLC), context adaptive binary arithmetic coding (CABAC), etc. The entropy encoder 240 may encode information required for video / image reconstruction other than the quantized transform coefficients (e.g., the value of a syntax element, etc.) together or separately. The encoded information (e.g., encoded video / image information) may be transmitted or stored in units of NAL (Network Abstraction Layer) in the form of a bitstream. The video / image information may also include information about various parameter sets, such as an adaptive parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS). In addition, the video / image information may also include general constraint information. In this article, information and / or syntax elements sent / signaled to a decoding device from an encoding device may be included in the video / image information. The video / image information may be encoded by the above-mentioned encoding process and included in a bitstream. The bitstream may be sent via a network or may be stored in a digital storage medium. The network may include a broadcast network and / or a communication network, and the digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, etc. A transmitter (not shown) that sends a signal output from the entropy encoder 240 and / or a storage unit (not shown) that stores the signal may be included as an internal / external element of the encoding device 200, and alternatively, the transmitter may be included in the entropy encoder 240.
[0101] The quantized transform coefficients output from the quantizer 233 can be used to generate a prediction signal. For example, the residual signal (residual block or residual sample) can be reconstructed by applying dequantization and inverse transformation to the quantized transform coefficients via the dequantizer 234 and the inverse transformer 235. The adder 250 adds the reconstructed residual signal to the prediction signal output from the inter-frame predictor 221 or the intra-frame predictor 222 to generate a reconstructed signal (reconstructed picture, reconstructed block, reconstructed sample array). If there is no residual in the block to be processed (for example, when the skip mode is applied), the prediction block can be used as a reconstructed block. The adder 250 may be referred to as a reconstructor or a reconstructed block generator. As described below, the generated reconstructed signal can be used for intra-frame prediction of the next block to be processed in the current picture and can be used for inter-frame prediction of the next picture by filtering.
[0102] Furthermore, luma mapping and chroma scaling (LMCS) may be applied during picture encoding and / or reconstruction.
[0103] The filter 260 can improve the subjective / objective image quality by applying filtering to the reconstructed signal. For example, the filter 260 can generate a modified reconstructed picture by applying various filtering methods to the reconstructed picture and store the modified reconstructed picture in the memory 270 (specifically, the DPB of the memory 270). For example, various filtering methods may include deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, etc. The filter 260 can generate various types of information related to filtering and send the generated information to the entropy encoder 240, as described later in the description of each filtering method. The information related to filtering can be encoded by the entropy encoder 240 and output in the form of a bitstream.
[0104] The modified reconstructed picture transmitted to the memory 270 may be used as a reference picture in the inter predictor 221. When inter prediction is applied by the encoding apparatus, prediction mismatch between the encoding apparatus 200 and the decoding apparatus may be avoided and coding efficiency may be improved.
[0105] The DPB of the memory 270 DPB may store a modified reconstructed picture used as a reference picture in the inter-frame predictor 221. The memory 270 may store motion information of a block from which motion information in the current picture is derived (or encoded) and / or motion information of a reconstructed block in the picture. The stored motion information may be sent to the inter-frame predictor 221 and used as motion information of a spatial neighboring block or motion information of a temporal neighboring block. The memory 270 may store a reconstructed sample of a reconstructed block in the current picture and may transmit the reconstructed sample to the intra-frame predictor 222.
[0106] Figure 3 : is a diagram for schematically explaining the configuration of a video / image decoding device to which the present disclosure is applied.
[0107] Reference Figure 3 , the decoding device 300 may include an entropy decoder 310, a residual processor 320, a predictor 330, an adder 340, a filter 350, and a memory 360. The predictor 330 may include an inter-frame predictor 331 and an intra-frame predictor 332. The residual processor 320 may include a dequantizer 321 and an inverse transformer 321. According to an embodiment, the entropy decoding 310, the residual processor 320, the predictor 330, the adder 340, and the filter 350 may be configured by a hardware component (e.g., a decoder chipset or a processor). In addition, the memory 360 may include a decoded picture buffer (DPB) or may be configured by a digital storage medium. The hardware component may also include a memory 360 as an internal / external component.
[0108] When a bit stream including video / image information is input, the decoding device 300 can reconstruct the bit stream corresponding to the bit stream in the video / image format. Figure 2 The image corresponding to the processing of the video / image information in the encoding device. For example, the decoding device 300 may derive the unit / block based on the block segmentation related information obtained from the bitstream. The decoding device 300 may use a processor applied in the encoding device to perform decoding. Therefore, for example, the decoding processor may be a coding unit, and the coding unit may be divided from the coding tree unit or the maximum coding unit according to a quadtree structure, a binary tree structure and / or a ternary tree structure. One or more transform units may be derived from the coding unit. The reconstructed image signal decoded and output by the decoding device 300 may be reproduced by a reproduction device.
[0109] The decoding device 300 may receive Figure 2The received signal may be decoded by the entropy decoder 310. For example, the entropy decoder 310 may parse the bitstream to derive information (e.g., video / image information) required for image reconstruction (or picture reconstruction). The video / image information may also include information about various parameter sets, such as an adaptive parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS). In addition, the video / image information may also include general constraint information. The decoding device may also decode the picture based on the information about the parameter set and / or the general constraint information. The information and / or syntax elements signaled / received described later herein may be decoded and obtained from the bitstream by a decoding process. For example, the entropy decoder 310 may decode the information in the bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, and output the syntax elements required for image reconstruction and the quantized values of the transform coefficients of the residual. More specifically, the CABAC entropy decoding method may receive bins (binary bits) corresponding to each syntax element in the bitstream, use the decoded target syntax element information, the decoded information of the decoded target block, or the information of the symbol / bin decoded in the previous stage to determine the context model, and perform arithmetic decoding on the bin by predicting the probability of the bin appearing according to the determined context model, and generate symbols corresponding to the values of each syntax element. In this case, the CABAC entropy decoding method may update the context model by using the decoded symbol / bin information for the context model of the next symbol / bin after determining the context model. Information related to prediction among the information decoded by the entropy decoder 310 may be provided to the predictor (inter-frame predictor 332 and intra-frame predictor 331), and the residual value (ie, quantized transform coefficients and related parameter information) performed entropy decoding in the entropy decoder 310 may be input to the residual processor 320. The residual processor 320 may derive a residual signal (residual block, residual sample, residual sample array). In addition, information about filtering among the information decoded by the entropy decoder 310 may be provided to the filter 350. In addition, a receiver (not shown) for receiving a signal output from the encoding device may also be configured as an internal / external element of the decoding device 300, or the receiver may be a component of the entropy decoder 310. In addition, the decoding device according to this document may be referred to as a video / image / picture decoding device, and the decoding device may be classified into an information decoder (video / image / picture information decoder) and a sample decoder (video / image / picture sample decoder). The information decoder may include the entropy decoder 310, and the sample decoder may include at least one of the dequantizer 321, the inverse transformer 322, the adder 340, the filter 350, the memory 360, the inter-frame predictor 332, and the intra-frame predictor 331.
[0110] The dequantizer 321 may dequantize the quantized transform coefficient and output the transform coefficient. The dequantizer 321 may rearrange the quantized transform coefficient in a two-dimensional block form. In this case, the rearrangement may be performed based on a coefficient scanning order performed in the encoding device. The dequantizer 321 may perform dequantization on the quantized transform coefficient using a quantization parameter (e.g., quantization step size information) and obtain the transform coefficient.
[0111] The inverse transformer 322 inversely transforms the transform coefficients to obtain a residual signal (residual block, residual sample array).
[0112] The predictor 330 may perform prediction on the current block and generate a prediction block including prediction samples of the current block. The predictor may determine whether to apply intra prediction or inter prediction to the current block based on information on prediction output from the entropy decoder 310 and may determine a specific intra / inter prediction mode.
[0113] The predictor may generate a prediction signal based on various prediction methods described below. For example, the predictor may not only apply intra prediction or inter prediction to predict a block, but may also apply intra prediction and inter prediction at the same time. This may be referred to as combined inter and intra prediction (CIIP). In addition, the predictor may predict a block based on an intra block copy (IBC) prediction mode or a palette mode. The IBC prediction mode or the palette mode may be used for content image / video coding of games, etc., such as screen content coding (SCC). IBC basically performs prediction in the current picture, but may be performed similarly to inter prediction so that a reference block is derived in the current picture. That is, IBC may use at least one inter prediction technique described herein. The palette mode may be considered as an example of intra coding or intra prediction. When the palette mode is applied, the sample values within the picture may be signaled based on information about the palette table and the palette index. The intra predictor 331 may predict the current block with reference to the samples in the current picture. Depending on the prediction mode, the referenced samples may be located near the current block or may be spaced apart. In intra prediction, the prediction mode may include a plurality of non-directional modes and a plurality of directional modes. The intra predictor 331 may determine a prediction mode applied to a current block using prediction modes applied to neighboring blocks.
[0114] The intra-frame predictor 331 may predict the current block with reference to samples in the current picture. Depending on the prediction mode, the referenced samples may be located near the current block or may be spaced apart. In intra-frame prediction, the prediction mode may include a plurality of non-directional modes and a plurality of directional modes. The intra-frame predictor 331 may use the prediction mode applied to the neighboring blocks to determine the prediction mode applied to the current block.
[0115] The inter-frame predictor 332 may derive a prediction block of the current block based on a reference block (reference sample array) specified by a motion vector on a reference picture. In this case, in order to reduce the amount of motion information sent in the inter-frame prediction mode, the motion information may be predicted in units of blocks, sub-blocks, or samples based on the correlation of motion information between neighboring blocks and the current block. The motion information may include a motion vector and a reference picture index. The motion information may also include inter-frame prediction direction (L0 prediction, L1 prediction, Bi prediction, etc.) information. In the case of inter-frame prediction, the neighboring blocks may include spatial neighboring blocks present in the current picture and temporal neighboring blocks present in the reference picture. For example, the inter-frame predictor 332 may configure a motion information candidate list based on neighboring blocks and derive a motion vector and / or a reference picture index of the current block based on the received candidate selection information. Inter-frame prediction may be performed based on various prediction modes, and information about the prediction may include information indicating the inter-frame prediction mode of the current block.
[0116] The adder 340 can generate a reconstructed signal (reconstructed picture, reconstructed block, reconstructed sample array) by adding the obtained residual signal to the prediction signal (prediction block, prediction sample array) output from the predictor (including the inter-frame predictor 332 and / or the intra-frame predictor 331). If there is no residual in the block to be processed, for example, when the skip mode is applied, the prediction block can be used as the reconstructed block.
[0117] The adder 340 may be referred to as a reconstructor or a reconstructed block generator. The generated reconstructed signal may be used for intra prediction of the next block to be processed in the current picture, may be output through filtering as described below, or may be used for inter prediction of the next picture.
[0118] In addition, luma mapping and chroma scaling (LMCS) may be applied in the picture decoding process.
[0119] The filter 350 can improve the subjective / objective image quality by applying filtering to the reconstructed signal. For example, the filter 350 can generate a modified reconstructed picture by applying various filtering methods to the reconstructed picture and store the modified reconstructed picture in the memory 360 (specifically, the DPB of the memory 360). For example, the various filtering methods may include deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, etc.
[0120] The (modified) reconstructed picture stored in the DPB of the memory 360 may be used as a reference picture in the inter-frame predictor 332. The memory 360 may store the motion information of the block from which the motion information in the current picture is derived (or decoded) and / or the motion information of the reconstructed block in the picture. The stored motion information may be sent to the inter-frame predictor 260 to be used as the motion information of the spatial neighboring block or the motion information of the temporal neighboring block. The memory 360 may store the reconstructed samples of the reconstructed block in the current picture and transmit the reconstructed samples to the intra-frame predictor 331.
[0121] In the present disclosure, the embodiments described in the filter 260, the inter-frame predictor 221, and the intra-frame predictor 222 of the encoding device 200 may be the same as or respectively applied to the filter 350, the inter-frame predictor 332, and the intra-frame predictor 331 of the decoding device 300. This may also be applied to the unit 332 and the intra-frame predictor 331.
[0122] As described above, when performing video coding, prediction is performed to enhance compression efficiency. A prediction block including prediction samples of a current block (ie, a target coding block) may be generated by prediction. In this case, the prediction block includes prediction samples in a spatial domain (or a pixel domain). The prediction block is derived identically in the encoding device and the decoding device. The encoding device may enhance image coding efficiency by notifying the decoding device with a signal of information (residual information) about the residual between the original block (rather than the original sample value of the original block itself) and the prediction block. The decoding device may derive a residual block including residual samples based on the residual information, may generate a reconstructed block including reconstructed samples by adding the residual block to the prediction block, and may generate a reconstructed picture including the reconstructed block.
[0123] The residual information may be generated by a transform process and a quantization process. For example, the encoding device may derive a residual block between the original block and the prediction block, may derive a transform coefficient by performing a transform process on a residual sample (residual sample array) included in the residual block, may derive a quantized transform coefficient by performing a quantization process on the transform coefficient, and may signal the relevant residual information (through a bitstream) to the decoding device. In this case, the residual information may include information such as value information, position information, a transform scheme, a transform core, and a quantization parameter of the quantized transform coefficient. The decoding device may perform a dequantization / inverse transform process based on the residual information and may derive a residual sample (or residual block). The decoding device may generate a reconstructed picture based on the prediction block and the residual block. In addition, the encoding device may derive a residual block by dequantizing / inverse transforming the quantized transform coefficient for reference to inter-frame prediction of subsequent pictures, and may generate a reconstructed picture.
[0124] Figure 4a and Figure 4bare diagrams illustrating an example of an image encoding method performed by an encoding device according to an embodiment and an example of an image decoding method performed by a decoding device according to an embodiment.
[0125] Figure 4a An example of an image encoding method performed by a video encoding device is shown. Figure 4a , the image encoding method may include block partitioning, intra / inter prediction, transformation, quantization, and entropy coding processes. For example, the current picture may be partitioned into a plurality of blocks, a prediction block of the current block may be generated by intra / inter prediction, and a residual block of the current block may be generated by subtracting an input block and a prediction block of the current block. Thereafter, a coefficient block, i.e., a transformation coefficient of the current block, may be generated by transforming the residual block. The transformation coefficient may be quantized and entropy encoded and stored in a bitstream.
[0126] Figure 4b An example of an image decoding method performed by a decoding device is shown in FIG. Figure 4b , the image decoding method may include entropy decoding, inverse quantization, inverse transformation and intra / inter prediction processes. For example, the decoding device may perform the inverse process of the encoding method. Specifically, the quantized transform coefficients may be obtained by entropy decoding the bit stream, and the coefficient block of the current block, i.e., the transform coefficients, may be obtained by the inverse quantization process of the quantized transform coefficients. The residual block of the current block may be derived by inverse transformation of the transform coefficients, and the reconstructed block of the current block may be derived by adding the prediction block and the residual block of the current block derived by intra / inter prediction.
[0127] Figure 5 is a flowchart illustrating an intra prediction method according to an embodiment.
[0128] like Figure 5 As shown, the intra prediction method according to the embodiment may include the following three steps. That is, the intra prediction method according to the embodiment may include a reference sample construction step, a sample prediction step and a post-filtering step. In the sample prediction step, the intra prediction method according to the embodiment may use known neighboring reference samples and intra prediction modes to perform prediction on unknown samples.
[0129] Figure 6 is a diagram illustrating an example of a directional intra prediction mode.
[0130] When intra prediction is applied to the current block, the encoding device and / or decoding device according to the embodiment may derive an intra prediction mode for the current block, and derive a prediction sample of the current block based on the intra prediction mode. That is, the encoding device and / or decoding device may derive a prediction sample of the current block by enabling a directional intra prediction mode or a non-directional intra prediction mode based on a neighboring reference sample of the current block.
[0131] In an example, the intra prediction mode may include two non-directional (or non-angle) intra prediction modes and 65 directional (or angle) intra prediction modes. The non-directional intra prediction mode may include a plane intra prediction mode numbered 0 and a DC intra prediction mode numbered 1, and the directional intra prediction mode may include 65 intra prediction modes between the intra prediction mode numbered 2 and the intra prediction mode numbered 66. Intra prediction based on 65 directional intra prediction modes may be applied to blocks of all sizes and may be applied to both luminance components and chrominance components. However, this is only an example, and the configuration of the intra prediction mode may be different.
[0132] Alternatively, the intra prediction mode may include two non-directional intra prediction modes and 129 directional intra prediction modes. The non-directional intra prediction mode may include a plane intra prediction mode and a DC intra prediction mode, and the directional intra prediction mode may include intra prediction modes No. 2 to No. 130.
[0133] Meanwhile, in addition to the above-mentioned intra prediction mode, the intra prediction mode may further include a cross-component linear model (CCLM) mode for chroma samples. The CCLM mode may be classified into LT_CCLM, L_CCLM, and T_CCLM depending on whether the left sample, the upper sample, or both are considered to derive the LM parameters, and may be applied only to the chroma component.
[0134] The intra prediction modes may be indexed, for example, as shown in Table 1 below.
[0135] [Table 1]
[0136]
[0137] Meanwhile, the intra prediction type (or additional intra prediction mode, etc.) may include at least one of the above-mentioned LIP, PDPC, MRL, and ISP. The intra prediction type may be indicated based on the intra prediction type information, and the intra prediction type information may be implemented in various forms. In one example, the intra prediction type information may include intra prediction type index information indicating one of the intra prediction types. In another example, the intra prediction type information may include at least one of the following: reference sample line information (e.g., intra_luma_ref_idx) related to whether MRL is applied to the current block and which reference sample line is used if applied, ISP flag information (e.g., intra_subpartitions_split_flag) related to whether ISP is applied to the current block, flag information related to whether PDCP is applied, or flag information related to whether LIP is applied.
[0138] Reference Figure 6, an intra prediction mode having a horizontal directivity and an intra prediction mode having a vertical directivity can be distinguished around the number 34 intra prediction mode having a left-upward diagonal prediction direction. Figure 6 The H and V of respectively mean horizontal and vertical directivities, and the numbers -32 to 32 indicate displacements in units of 1 / 32 on the sample grid position. Intra-prediction modes numbered 2 to 33 have horizontal directivities, and intra-prediction modes numbered 34 to 66 have vertical directivities. Intra-prediction mode numbered 18 and intra-prediction mode numbered 50 may be horizontal intra-prediction modes and vertical intra-prediction modes, respectively; intra-prediction mode numbered 2 may be referred to as a left-down diagonal intra-prediction mode; intra-prediction mode numbered 34 may be referred to as a left-up diagonal intra-prediction mode; and intra-prediction mode numbered 66 may be referred to as a right-up diagonal intra-prediction mode.
[0139] Typically, when an image is divided into blocks, the current block and the neighboring blocks to be coded have similar image characteristics. Therefore, it is highly likely that the current block and the neighboring blocks have the same or similar intra-prediction modes. Therefore, the encoder can use the intra-prediction mode of the neighboring blocks to encode the intra-prediction mode of the current block.
[0140] More specifically, the decoding apparatus may derive a most probable mode (MPM) list based on the intra prediction mode of the neighboring blocks (e.g., the left neighboring block and / or the upper neighboring block) of the current block and the additional candidate mode, and may select one of the MPM candidates in the derived MPM list based on the received MPM index, or may select one of the remaining intra prediction modes not included in the MPM candidates based on the remaining intra prediction mode information. The MPM list may be referred to as an intra prediction mode candidate list or may be represented as candModeList.
[0141] When a neighboring block is intra-coded, the encoding device (or encoder) may check or derive the prediction mode of the neighboring block. For example, the prediction mode of the current block may be determined based on the prediction mode of the left neighboring block and the prediction mode of the upper neighboring block, and in this case, the prediction mode of the corresponding neighboring block may be determined as the most probable mode (MPM). The determination of the MPM may be expressed as an enumeration of MPM (most probable mode) candidates (or MPM list).
[0142] The encoding device may check whether the prediction mode of the left neighboring block is the same as the prediction mode of the upper neighboring block. The initial MPM list may be formed by performing a pruning process on the intra prediction modes of the two neighboring blocks.
[0143] If the prediction mode of the left neighboring block and the prediction mode of the upper neighboring block are different, the first MPM can be set to the prediction mode of the left neighboring block, the second MPM can be set to the prediction mode of the upper neighboring block, and the third MPM can be set to any one of the intra-frame plane mode, intra-frame DC mode and intra-frame vertical mode (No. 50 intra-frame prediction mode). Specifically, if the intra-frame prediction modes of the two neighboring blocks are different from each other, the two intra-frame prediction modes can be set to MPM, and one of the default intra-frame modes after the pruning check according to the MPM can be added to the MPM list. Here, the default intra-frame mode may include an intra-frame plane mode, an intra-frame DC mode and / or an intra-frame vertical mode (No. 50 intra-frame prediction mode).
[0144] In an example, the MPM list may include 3 MPM candidates, 5 candidates, or 6 MPM candidates. As an example, the MPM list may include candidates derived based on the intra-frame prediction mode of the neighboring block, the derived intra-frame prediction mode, and / or the default intra-frame prediction mode. The encoding device / decoding device may search the neighboring blocks of the current block in a specific order, and may derive the intra-frame prediction mode of the neighboring block as the MPM candidate in the derived order. For example, the neighboring blocks may include a left neighboring block, an upper neighboring block, a lower left neighboring block, an upper right neighboring block, and an upper left neighboring block.
[0145] In one example, an MPM list including three MPM candidates may be constructed, and the three MPM candidates may be derived based on the intra prediction modes of the neighboring blocks F and G. The MPM prediction method for the neighboring blocks of the current block based on the neighboring blocks F and G may be, for example, as follows: Figure 7 shown.
[0146] Figure 7 It is a diagram for explaining the construction of an MPM list according to an embodiment.
[0147] Reference Figure 7 , the neighboring blocks of the current block may include neighboring block A, neighboring block B, neighboring block C, neighboring block D, neighboring block E, neighboring block F and / or neighboring block G.
[0148] Neighboring block A may represent a neighboring block located to the upper left of an upper left sample position of a current block; neighboring block B may represent a neighboring block located above an upper right sample position of a current block; neighboring block C may represent a neighboring block located to the upper right of an upper right sample position of a current block; neighboring block D may represent a neighboring block located to the left of a lower left sample position of a current block; neighboring block E may represent a neighboring block located to the lower left of a lower left sample position of a current block; neighboring block G may represent a neighboring block located above an upper left sample position of a current block; and neighboring block F may represent a neighboring block located to the left of an upper left sample position of a current block.
[0149] Additionally, for example, when the size of the current block is WxH and the x component of the upper left sample position of the current block is 0 and its y component is 0, then neighboring block A is a block including the sample at coordinates (-1, -1); neighboring block B is a block including the sample at coordinates (W-1, -1); neighboring block C is a block including the sample at coordinates (W, -1); neighboring block D is a block including the sample at coordinates (-1, H-1); neighboring block E is a block including the sample at coordinates (-1, H); neighboring block F is a block including the sample at coordinates (-1, 0); and neighboring block G is a block including the sample at coordinates (0, -1).
[0150] In an embodiment, three MPM candidates may be derived based on the intra prediction mode of the neighboring block F and the intra prediction mode of the neighboring block G. For example, the intra prediction mode of the neighboring block F and the intra prediction mode of the neighboring block G may be derived. Meanwhile, the intra prediction mode of the neighboring block F or the intra prediction mode of the neighboring block G may be derived as a DC intra prediction mode in the following three cases. That is, if the neighboring block F or the neighboring block G is not available, if the neighboring block F or the neighboring block G is not coded in an intra prediction mode (if the neighboring block F or the neighboring block G is not an intra coding block), or if the neighboring block F or the neighboring block G deviates from the current coding tree unit, the intra prediction mode of the neighboring block F or the intra prediction mode of the neighboring block G may be derived as a DC intra prediction mode.
[0151] If the intra prediction mode of the neighboring block F or the intra prediction mode of the neighboring block G is determined, three MPM candidates may be derived based on, for example, Table 2 below.
[0152] [Table 2]
[0153]
[0154] Table 2 may exemplarily show pseudo code for constructing an MPM list.
[0155] Referring to Table 2, it can be determined whether the intra prediction mode of the neighboring block F and the intra prediction mode of the neighboring block G are the same.
[0156] If the intra prediction mode of the neighboring block F is the same as the intra prediction mode of the neighboring block G, and the mode number of the intra prediction mode of the neighboring block F is less than 2, the MPM list of the current block can be derived as MPM list 1 (MPM list1). That is, if the intra prediction mode of the neighboring block F is the same as the intra prediction mode of the neighboring block G, and the intra prediction mode of the neighboring block F is the intra prediction mode numbered 0 or the intra prediction mode numbered 1, the MPM list of the current block can be derived as MPM list 1. Here, the MPM list 1 may be an MPM list constructed with MPM candidates {F, F-1, F+1}. F may indicate the intra prediction mode of the neighboring block F, and F-1 may indicate an intra prediction mode whose mode number is a value obtained by subtracting 1 from the mode number of the intra prediction mode of the neighboring block F, and F+1 may indicate an intra prediction mode whose mode number is a value obtained by adding 1 to the mode number of the intra prediction mode of the neighboring block F. For example, if the intra prediction mode of the neighboring block F is the No. N intra prediction mode, the MPM list 1 may be constructed with an MPM list including the No. N intra prediction mode, the No. N-1 intra prediction mode, and the No. N+1 intra prediction mode as MPM candidates.
[0157] In addition, if the intra prediction mode of the neighboring block F is the same as the intra prediction mode of the neighboring block G, and the mode number of the intra prediction mode of the neighboring block F is not less than 2, the MPM list of the current block can be derived as MPM list 2.
[0158] Additionally, if the intra prediction mode of the neighboring block F and the intra prediction mode of the neighboring block G are not the same, and the intra prediction mode of the neighboring block F and the intra prediction mode of the neighboring block G are not planar intra prediction modes, the MPM list of the current block can be exported as MPM list 3.
[0159] Additionally, if the intra-frame prediction mode of the neighboring block F and the intra-frame prediction mode of the neighboring block G are not the same, and the sum of the mode number of the intra-frame prediction mode of the neighboring block F and the mode number of the intra-frame prediction mode of the neighboring block G is less than 2, the MPM list of the current block can be exported as MPM list 4.
[0160] Additionally, if the intra-frame prediction mode of the neighboring block F and the intra-frame prediction mode of the neighboring block G are not the same, and at least one of the intra-frame prediction mode of the neighboring block F and the intra-frame prediction mode of the neighboring block G is a planar intra-frame prediction mode, and the sum of the mode number of the intra-frame prediction mode of the neighboring block F and the mode number of the intra-frame prediction mode of the neighboring block G is not less than 2, then the MPM list of the current block can be exported as MPM list 5.
[0161] At the same time, as the number of intra prediction modes increases, the number of MPM candidates needs to increase. Therefore, the number of MPM candidates may be different according to the number of intra prediction modes. In general, as the number of intra prediction modes increases, the number of MPM candidates may increase. However, it is not always the case that the number of MPM candidates increases as the number of intra prediction modes increases. For example, when there are 35 intra prediction modes or when there are 67 intra prediction modes, various numbers of MPM candidates such as 3, 4, 5 or 6 may exist according to the design.
[0162] For example, the encoder / decoder may construct an MPM list including 6 MPMs. To construct the MPM list, the default intra mode, the neighboring intra mode, and the derived intra mode may be considered.
[0163] In an example, for the neighboring intra mode, two neighboring blocks may be considered, namely, the left neighboring block A and the upper neighboring block B. In order to generate an MPM list including 6 MPMs, an initialized default MPM list based on the following Table 3 may be considered.
[0164] [Table 3]
[0165]
[0166] In another example, the order of constructing the six MPM candidates may be in the order of neighboring block D, neighboring block B, plane intra prediction mode, DC intra prediction mode, neighboring block E, neighboring block C, and neighboring block A. That is, the intra prediction mode of neighboring block D, the intra prediction mode of neighboring block B, the plane intra prediction mode, the DC intra prediction mode, the intra prediction mode of neighboring block E, the intra prediction mode of neighboring block C, and the intra prediction mode of block A may be derived as MPM candidates in this order, and if it is the same as an already derived intra prediction mode, it may not be derived as an MPM candidate.
[0167] Additionally, when the MPM list does not include the maximum number of MPM candidates, that is, when the number of derived MPM candidates is less than the maximum number of candidates, the directional intra prediction mode and the predefined default intra prediction mode adjacent to the derived MPM candidate can be considered as MPM candidates, and the pruning check process can be performed together. Here, the directional intra prediction mode adjacent to the MPM candidate can indicate an intra prediction mode whose mode number is adjacent to the mode number of the MPM candidate. Although the above-mentioned neighboring block search and continuous pruning check have the advantage of saving bit transmission rate, it may increase the number of hardware operation cycles for MPM list construction for each block. The worst case scenario may be that a 3840x2160 4K image is divided into 4x4 size blocks for intra prediction, and the increased hardware operation cycle for each 4x4 size block may be considered to be important for throughput. On the other hand, when the intra prediction mode of the neighboring block is known by the neighboring block encoded by the inter prediction of the current block, the intra prediction mode of the neighboring block can be used to construct the MPM list.
[0168] As described above, in general, the current block and the neighboring blocks to be coded may have similar image characteristics, and therefore, since the probability that the current block and the neighboring blocks have the same or similar intra-frame prediction modes is high, the MPM list of the current block may be determined in order to derive the intra-frame prediction mode applied to the current block. However, if 67 intra-frame prediction modes are used for intra-frame prediction, the MPM list including 3 MPM candidates may not be sufficient to indicate the diversity of multiple intra-frame prediction modes. In addition, the method of constructing a 6MPM list including a neighboring block search and a pruning check process may be disadvantageous in terms of complexity and throughput. In the present disclosure, various methods for deriving an intra-frame prediction mode for a current block based on MPM prediction will be described later.
[0169] Figure 8 It is a diagram for explaining the construction of an MPM list according to another embodiment.
[0170] Reference Figure 8 In an embodiment, A as the left neighboring block (which may be represented as LEFT) and B as the upper neighboring block (which may be represented as ABOVE) may be used to generate an MPM list as in Table 4 below. The algorithm is as follows. Non-MPM coding may be based on truncated binary code.
[0171] [Table 4]
[0172]
[0173] Fig. 9 is a flowchart illustrating an MPM prediction method according to an embodiment.
[0174] In the present disclosure, specific terms or sentences are used to define specific information or concepts. For example, in the luma intra coding process, a specific intra prediction mode that can be determined as the intra prediction mode for the current block without MPM index information is called a "valid mode", and an index indicating one of the MPM candidates included in the MPM list is called an "MPM index", and a flag indicating whether luma intra coding is applied is called a "unified MPM flag", and when MPM prediction is not applied, the remaining intra prediction modes other than the MPM candidates are called "non-MPM modes". However, "significant mode" may be replaced with various terms such as significant_mode, default mode, candidate mode, etc., and "MPM index" may be replaced with probable_mode_index, mpm_idx, intra_luma_mpm_idx, etc., and "unified MPM flag" may be replaced with unified_probable_mode_flag, MPM flag, intra_luma_mpm_flag, etc., and "non-MPM mode" may be replaced with various terms such as non-MPM mode, non_probable_mode, residual intra prediction mode, and MPM residual prediction mode. Therefore, when interpreting specific terms or sentences used to define specific information or concepts herein throughout the specification, an interpretation limited to the name should not be made, but the terms need to be interpreted in consideration of various operations, functions, and effects according to what the terms are intended to express.
[0175] In one example, the active mode may be an intra-planar (PLANAR) mode.
[0176] In an embodiment, unified luma intra coding and signaling may be performed. In luma intra coding, at least one valid luma intra mode may be first signaled, and then an MPM list may be constructed based on the remaining intra modes so that the best mode may be selected from among the MPM candidates included in the MPM list.
[0177] First, it may be determined whether to use MRL or ISP. When MRL or ISP is used, the value of unified_probable_mode_flag may be determined to be 1. If MRL or ISP is not used, unified_probable_mode_flag may be parsed.
[0178] If the value of unified_probable_mode_flag is 0, non_probable_mode_index may be parsed. If the value of unified_probable_mode_flag is 1, significant_mode_flag may be parsed. If the value of significant_mode_flag is 1, the intra prediction mode for the current block may be determined as a valid mode (e.g., intra plane mode), and if the value of significant_mode_flag is 0, probable_mode_index may be parsed.
[0179] Fig.10 is a flow chart illustrating an MPM prediction method according to another embodiment.
[0180] exist Fig.10 In the present invention, intra prediction performed based on a unified method (or algorithm) regardless of whether MRL (multi-reference line)-based intra prediction is applied or ISP (intra sub-partitioning)-based prediction is applied is referred to as "unified luma intra mode coding". However, "unified luma intra mode coding" may be replaced with various terms such as unified luma intra mode, unified intra prediction, unified MPM, unified MPM prediction, unified_probable_mode, unified intra coding, unified luma intra coding, etc.
[0181] A detailed method for deriving a unified luma intra mode according to an embodiment is as follows.
[0182] First, unified_probable_mode_flag may be parsed. If the value of unified_probable_mode_flag is 0, non_probable_mode_index may be parsed, and if it is 1, significant_mode_flag may be parsed. If the value of significant_mode_flag is 1, the intra prediction mode for the current block may be determined as a valid mode (e.g., intra plane mode), and if the value of significant_mode_flag is 0, probable_mode_index may be parsed.
[0183] Alternatively, a specific method for deriving a unified intra-frame brightness pattern according to an embodiment may be shown in Table 5 below.
[0184] [Table 5]
[0185]
[0186]
[0187] A method for constructing an MPM list according to an embodiment is proposed. An MPM pattern list of length k may be constructed. In an example, k may be 5, and 5 conditions may be used when constructing 5 different MPM lists. Figure 7 The block B may be marked with A, and the block D may be marked with L. For example, the MPM list construction method according to this embodiment may be as shown in Table 6 below.
[0188] [Table 6]
[0189]
[0190]
[0191]
[0192] Meanwhile, the embodiments are not limited to performing unified luma intra coding only when a unified MPM flag having a value of 1 is signaled. For example, a decoding device according to an embodiment may perform unified luma intra coding without signaling a unified MPM flag.
[0193] In an embodiment, unified intra prediction signaling and intra mode signaling may be combined with MPM list construction, and a non-MPM list may be constructed. This embodiment may be based on the coding unit syntax of Table 7 below.
[0194] [Table 7]
[0195]
[0196] The compilation unit syntax of Table 7 may be based on, for example, the semantics of the following Table 8.
[0197] [Table 8]
[0198]
[0199] In an example, the decoding process of a coding unit coded in an intra prediction mode may be based on the algorithm (or specification) of Table 9 below.
[0200] [Table 9]
[0201]
[0202]
[0203]
[0204] In an example, the process of deriving the luma intra prediction mode may be based on the algorithm (or specification) of Table 10 below.
[0205] [Table 10]
[0206]
[0207]
[0208]
[0209]
[0210] In an example, the decoding process of the intra block may be based on the algorithm (or specification) of Table 11 below.
[0211] [Table 11]
[0212]
[0213] In an example, intra sample prediction may be based on the algorithm (or specification) of Table 12 below.
[0214] [Table 12]
[0215]
[0216]
[0217] In an example, the intra plane mode, the intra DC mode, etc. may be based on the algorithm (or specification) of Table 13 below.
[0218] [Table 13]
[0219]
[0220]
[0221] In an example, the transformation process of scaling the transformation coefficients may be based on the algorithm (or specification) of Table 14 below.
[0222] [Table 14]
[0223]
[0224]
[0225]
[0226] In an example, an example of assigning ctxInc to a syntax element including a context-coded bin may be based on the following Table 15.
[0227] [Table 15]
[0228]
[0229]
[0230] The embodiment proposes a method for performing unified MPM prediction and a method for encoding and / or signaling information about the relevant intra prediction mode. In addition, the embodiment proposes a method for deriving a transform kernel. According to the embodiment, the coding unit syntax written in Tables 16 to 24 may be constructed / encoded and signaled to the decoding device, and the decoding device may derive the intra prediction mode for the current block (CU) based on the coding unit syntax and the MPM list.
[0231] For example, according to this embodiment, the planar mode may be included in the MPM list as a candidate mode, and if the value of the MPM flag is 1, the planar flag (intra_planar_flag) may be first signaled and indicate whether the planar mode is used as the intra prediction mode of the current block. If the value of the planar flag is 0, the MPM index (intra_luma_mpm_idx) is signaled, and through this, one of the remaining MPM candidates other than the planar mode may be indicated. In this case, in the example, the MPM list including the remaining candidates other than the planar mode may be referred to as a modified MPM list.
[0232] If the total number of MPM candidates including the plane mode is 6, the total number of candidates in the modified MPM list from which the plane mode has been excluded may be 5, and in this case, the value of the MPM index may be between 0 and 4. In other words, the maximum value of the MPM index may be set to 4. In this case, the maximum value of the MPM index may be expressed as the cMAX of the MPM index. The bin of the plane flag may be regularly coded based on the context model as will be described later in Tables 16 to 24, and the value of ctxInc for indicating the context model may be variably determined as will be described later in Tables 16 to 24 according to the following: i) using only one specific value (e.g., 0), or ii) being able to be variably derived based on the availability of the left neighboring block and / or the upper neighboring block and the value of the plane flag (if available), or iii) whether MRL or ISP is applied. In addition, according to this embodiment, the transform kernel (vertical transform kernel / horizontal transform kernel) for the current block may be derived based on the size of the current block and / or the intra prediction type / mode. For example, if ISP is not applied to the current block or is unavailable, as will be described later in Tables 16 to 24 below, the transform kernel (vertical transform kernel / horizontal transform kernel) may be derived as a value of 1 or 0 by further referring to the size of the current block.
[0233] According to this embodiment, when MRL intra prediction is applied (that is, when the MRL index is greater than 0), the plane mode or DC mode can be applied to the current block, and even when ISP intra prediction is applied, the plane mode or DC mode can be applied to the current block. Therefore, the MPM list can be constructed based on unified MPM prediction regardless of whether MRL, ISP, etc. are applied. Tables 16 to 24 are as follows, and those skilled in the art will easily understand the details of Tables 16 to 24.
[0234] Table 16 below shows an example of the compilation unit syntax.
[0235] [Table 16]
[0236]
[0237] The compilation unit syntax of Table 16 may be based on, for example, the semantics of the following Table 17.
[0238] [Table 17]
[0239]
[0240] In an example, the decoding process of a coding unit coded in an intra prediction mode may be based on the algorithm (or specification) of Table 18 below.
[0241] [Table 18]
[0242]
[0243]
[0244]
[0245] In an example, the process of deriving the luma intra prediction mode may be based on the algorithm (or specification) of Table 19 below.
[0246] [Table 19]
[0247]
[0248]
[0249]
[0250]
[0251] In an example, the decoding process of the intra-block may be based on the algorithm (or specification) of Table 20 below.
[0252] [Table 20]
[0253]
[0254] In an example, intra sample prediction may be based on the algorithm (or specification) of Table 21 below.
[0255] [Table 21]
[0256]
[0257]
[0258] In an example, the intra plane mode, intra DC mode, etc. may be based on the algorithm (or specification) of Table 22 below.
[0259] [Table 22]
[0260]
[0261]
[0262] In an example, the transformation process of scaling the transformation coefficients may be based on the algorithm (or specification) of Table 23 below.
[0263] [Table 23]
[0264]
[0265]
[0266]
[0267] In an example, an example of assigning ctxInc to a syntax element including a context-coded bin may be based on the following Table 24.
[0268] [Table 24]
[0269]
[0270] The embodiment proposes a method for performing unified MPM prediction and a method for encoding and / or signaling information about the relevant intra prediction mode. In addition, the embodiment proposes a method for deriving a transform kernel. According to the embodiment, the coding unit syntax written in Tables 16 to 24 may be constructed / encoded and signaled to the decoding device, and the decoding device may derive the intra prediction mode for the current block (CU) based on the coding unit syntax and the MPM list.
[0271] For example, according to this embodiment, the planar mode may be included in the MPM list as a candidate mode, and if the value of the MPM flag is 1, the planar flag (intra_planar_flag) may be first signaled and indicate whether the planar mode is used as the intra prediction mode of the current block. If the value of the planar flag is 0, the MPM index (intra_luma_mpm_idx) is signaled, and through this, one of the remaining MPM candidates other than the planar mode may be indicated. In this case, in the example, the MPM list including the remaining candidates other than the planar mode may be referred to as a modified MPM list.
[0272] If the total number of MPM candidates including the plane mode is 6, the total number of candidates in the modified MPM list from which the plane mode has been excluded may be 5, and in this case, the value of the MPM index may be between 0 and 4. In other words, the maximum value of the MPM index may be set to 4. In this case, the maximum value of the MPM index may be expressed as the cMAX of the MPM index. The bin of the plane flag may be conventionally coded based on the context model as will be described later in Tables 25 to 33, and the value of ctxInc for indicating the context model may be variably determined as will be described later in Tables 25 to 33 according to the following: i) using only one specific value (e.g., 0), or ii) being able to be variably derived based on the availability of the left neighboring block and / or the upper neighboring block and the value of the plane flag (if available), or iii) whether MRL or ISP is applied. In addition, according to this embodiment, the transform kernel (vertical transform kernel / horizontal transform kernel) for the current block may be derived based on the size of the current block and / or the intra prediction type / mode. For example, if ISP is not applied to the current block or is unavailable, as will be described later in Tables 25 to 33 below, the transform kernel (vertical transform kernel / horizontal transform kernel) may be derived as a value of 1 or 0 by further referring to the size of the current block.
[0273] According to this embodiment, the MPM list can be constructed based on unified MPM prediction regardless of whether MRL, ISP, etc. are applied. Tables 25 to 33 are as follows, and those skilled in the art will easily understand the details of Tables 25 to 33.
[0274] The following Table 25 shows an example of the compilation unit syntax.
[0275] [Table 25]
[0276]
[0277] The compilation unit syntax of Table 25 may be based on, for example, the semantics of the following Table 26.
[0278] [Table 26]
[0279]
[0280] In an example, the decoding process of the coding unit coded in the intra prediction mode may be based on the algorithm (or specification) of Table 27 below.
[0281] [Table 27]
[0282]
[0283]
[0284]
[0285] In an example, the process of deriving the luma intra prediction mode may be based on the algorithm (or specification) of Table 28 below.
[0286] [Table 28]
[0287]
[0288]
[0289]
[0290]
[0291] In an example, the decoding process of the intra-block may be based on the algorithm (or specification) of Table 29 below.
[0292] [Table 29]
[0293]
[0294] In an example, intra sample prediction may be based on the algorithm (or specification) of Table 30 below.
[0295] [Table 30]
[0296]
[0297]
[0298] In an example, the intra plane mode, intra DC mode, etc. may be based on the algorithm (or specification) of Table 31 below.
[0299] [Table 31]
[0300]
[0301]
[0302] In an example, the transformation process of scaling the transformation coefficients may be based on the algorithm (or specification) of Table 32 below.
[0303] [Table 32]
[0304]
[0305]
[0306]
[0307] In an example, an example of assigning ctxInc to syntax elements including context-coded bins may be based on the following Table 33.
[0308] [Table 33]
[0309]
[0310] Referring to Table 25, it can be confirmed that intra_planar_flag is checked based on a check result that a value of intra_luma_ref_idx is 0. intra_luma_ref_idx may indicate an example of a multi-reference line (MRL) index, and intra_planar_flag may indicate an example of a planar flag.
[0311] Referring to Table 27, it can be confirmed that the value of the context index (ctxInc or ctxIdx) for the bin associated with intra_planar_flag is 0 or 1. That is, it can be confirmed that the value of the context index for the bin associated with intra_planar_flag can be one of two different integers.
[0312] Referring to Table 33, it can be confirmed that the context index for the bin associated with intra_planar_flag is based on the value of intra_subpartitions_mode_flag. intra_subpartitions_mode_flag may be an example of an intra subpartitioning (ISP) flag regarding whether an ISP mode is applied to a current block.
[0313] Fig.11 is a flowchart showing the operation of an encoding device according to an embodiment, and Fig.12 is a block diagram showing the configuration of an encoding device according to an embodiment.
[0314] according to Fig.11 and Fig.12 The encoding device can perform the same Fig.13 and Fig.14Therefore, it will be explained later in Fig.13 and Fig.14 The operation of the decoding device described in can be similarly applied to Fig.11 and Fig.12 encoding device.
[0315] Fig.11 Each step disclosed in can be represented by Figure 2 The encoding device 200 disclosed in FIG. 4 is executed. In addition, the operations according to S1100 to S1120 are based on the above Fig.10 Therefore, some of the contents described in the above will be omitted or briefly described. Figure 2 Figure 4 to Fig.10 Description of the specific content that is repeated in the content described.
[0316] like Fig.11 As shown, the encoding device according to the embodiment may include a predictor 220 and an entropy encoder 240. However, in some cases, Fig.11 All components shown may not be necessary components of the encoding device, and the encoding device may be composed of more than Fig.11 The components shown may be implemented with more or fewer components.
[0317] In the encoding apparatus according to the embodiment, the predictor 220 and the entropy encoder 240 may be implemented by separate chips, or at least two or more components may be implemented by a single chip.
[0318] The encoding apparatus according to an embodiment may derive an intra prediction mode for a current block (S1100). More specifically, the predictor 220 of the encoding apparatus may derive an intra prediction mode for a current block.
[0319] According to an embodiment, the encoding device can generate at least one of MPM flag information related to whether to encode the intra-frame prediction mode based on the MPM candidate for the current block, multi-reference line (MRL) index information of at least one reference sample line for intra-frame prediction of the current block, and plane flag information related to whether the derived intra-frame prediction mode for the current block is a plane mode (S1110).
[0320] For example, the encoding device may generate MPM flag information related to whether to encode an intra-frame prediction mode based on an MPM candidate for a current block, and the encoding device may generate MRL index information based on a situation in which the MPM flag information indicates that the MPM flag information is associated with multi-reference line (MRL) index information of at least one reference sample line for intra-frame prediction of the current block, and the encoding device may generate plane flag information related to whether the derived intra-frame prediction mode for the current block is a PLANAR mode based on a check result that a value of the MRL index information is 0.
[0321] The encoding device according to the embodiment may encode the image information including at least one of the MPM flag information, the MRL index information, and the plane flag information (S1120). More specifically, the entropy encoder 240 of the encoding device may encode the image information including at least one of the MPM flag information, the MRL index information, and the plane flag information.
[0322] According to an embodiment, the encoding device can derive MPM index information associated with one of the MPM candidates for the current block from which the plane mode has been excluded, based on the case where the value of the plane flag information indicates that the intra prediction mode for the current block is not derived as the plane mode.
[0323] In an embodiment, the number of MPM candidates for the current block from which the planar mode has been excluded may be five.
[0324] In an embodiment, the encoding apparatus may derive the intra prediction mode for the current block based on the MPM candidates for the current block from which the planar mode has been excluded and based on the case where the value of the MRL index information indicates non-zero.
[0325] In an embodiment, the value of the plane flag information can be derived based on the context model for the bin associated with the plane flag information, and the context model for the bin associated with the plane flag information can be derived based on the context index increment (ctxInc), and the context index increment for the bin associated with the plane flag information can be selected from two candidates based on the case where the bin index of the bin is 0, and these candidates may include 0 and 1, and the context model for the case where the context index increment is 0 may be different from the context model for the case where the context index increment is 1, and the value of the context index increment for the bin associated with the plane flag information may be one of two different integers, which may be 0 and 1.
[0326] In an embodiment, the value of the context index increment for the bin associated with the plane flag information may be based on whether the ISP mode is applied to the current block.
[0327] In an embodiment, the value of the context index increment may be determined to be 1 based on a determination that the ISP mode is applied to the current block, and the value of the context index increment may be determined to be 0 based on a determination that the ISP mode is not applied to the current block.
[0328] according to Fig.11 and Fig.12 The encoding device and the operation method of the encoding device can:
[0329] An intra-frame prediction mode for a current block is derived (S1100), and based on the intra-frame prediction mode, at least one of MPM flag information related to whether to encode the intra-frame prediction mode based on the MPM candidate for the current block, multi-reference line (MRL) index information of at least one reference sample line for intra-frame prediction of the current block, and plane flag information related to whether the derived intra-frame prediction mode for the current block is a planar (PLANAR) mode is generated (S1110), and image information including at least one of the MPM flag information, the MRL index information, and the plane flag information is encoded (S1120).
[0330] That is, according to the present disclosure, the efficiency of intra-frame prediction based on the MPM list can be improved based on the plane flag information related to whether the intra-frame prediction mode for the current block is determined to be a plane mode. Alternatively, according to the present disclosure, the image coding efficiency can be improved by determining whether to signal the plane flag information based on the MRL index information. Alternatively, according to the present disclosure, the MPM list for the current block can be efficiently constructed. Alternatively, according to the present disclosure, the value of the context index for the bin associated with the plane flag information can be determined based on whether the ISP mode is applied to the current block.
[0331] Fig.13 is a flowchart showing the operation of a decoding device according to an embodiment, and Fig.14 is a block diagram showing the configuration of a decoding device according to an embodiment.
[0332] Fig.13 Each step disclosed in can be represented by Figure 3 Therefore, the description of specific contents that overlap with the above contents will be omitted or briefly made.
[0333] like Fig.14 As shown, the decoding device according to the embodiment may include an entropy decoder 310, a predictor 330 and an adder 340. However, in some cases, Fig.14 All components shown may not be necessary components of the decoding device, and the decoding device may be composed of Fig.14 The components shown may be implemented with more or fewer components.
[0334] In the decoding device according to the embodiment, the entropy decoder 310, the predictor 330, and the adder 340 may be implemented by separate chips, or at least two or more components may be implemented by a single chip.
[0335] According to an embodiment, the decoding device may obtain intra prediction information from a bitstream, the intra prediction information including at least one of MPM flag information related to whether an intra prediction mode for a current block is derived based on a most probable mode (MPM) candidate for the current block, multi-reference line (MRL) index information of at least one reference sample line for intra prediction of the current block, and plane (PLANAR) flag information related to whether the intra prediction mode for the current block is determined as a plane mode (S1300). More specifically, the entropy decoder 310 of the decoding device may obtain intra prediction information from a bitstream, the intra prediction information including at least one of MPM flag information related to whether an intra prediction mode for a current block is derived based on an MPM candidate for the current block, multi-reference line (MRL) index information of at least one reference sample line for intra prediction of the current block, and plane flag information related to whether the intra prediction mode for the current block is determined as a plane mode.
[0336] In an example, intra prediction information may be included in the coding unit syntax.
[0337] In an example, the MPM flag information may be represented as intra_luma_mpm_flag; the MRL index information may be represented as intra_luma_ref_idx; and the plane flag information may be represented as intra_luma_not_planar_flag. When the value of intra_luma_not_planar_flag is 1, the intra prediction mode for the current block may be determined to be not a planar mode, and when the value of intra_luma_not_planar_flag is 0, the intra prediction mode for the current block may be determined to be a planar mode.
[0338] In another example, the plane flag information may be represented as intra_luma_planar_flag or intra_planar_flag. When the value of intra_luma_planar_flag is 1, the intra prediction mode for the current block may be determined as the planar mode, and when the value of intra_luma_planar_flag is 0, the intra prediction mode for the current block may be determined as not the planar mode.
[0339] The decoding device according to the embodiment may check the MPM flag information (S1310). More specifically, the entropy decoder 310 of the decoding device may check the MPM flag information. In other words, the decoding device may decode or parse the MPM flag information.
[0340] The decoding device according to the embodiment may check the MRL index information based on the fact that the MPM flag information indicates the check of the MRL index information (S1320). More specifically, the entropy decoder 310 of the decoding device may check the MRL index information based on the check result associated with the value of the MPM flag information and the check of the MRL index information.
[0341] In an example, the decoding device may determine that the value of the MPM flag information is associated with checking the MRL index information based on the determination that the value of the MPM flag information is 1. That is, the decoding device may check the MRL index information based on the determination that the value of the MPM flag information is 1.
[0342] The decoding device according to the embodiment may check the plane flag information based on the case where the value of the MRL index information is 0 (S1330). More specifically, the entropy decoder 310 of the decoding device may check the plane flag information based on the check result that the value of the MRL index information is 0.
[0343] In one example, the decoding apparatus may determine that multiple reference lines (MRL) are not used for intra prediction of the current block based on a check result that a value of the MRL index information is 0.
[0344] The decoding device according to the embodiment may derive the intra prediction mode for the current block based on the check of the plane flag information (S1340). More specifically, the predictor 330 of the decoding device may derive the intra prediction mode for the current block based on the check of the plane flag information.
[0345] The decoding device according to the embodiment may derive a prediction sample of the current block based on the intra prediction mode for the current block (S1350). More specifically, the predictor 330 of the decoding device may derive a prediction sample of the current block based on the intra prediction mode for the current block.
[0346] The decoding device according to the embodiment may generate a reconstructed picture based on the prediction sample (S1360). More specifically, the adder 340 of the decoding device may generate a reconstructed picture based on the prediction sample.
[0347] According to the decoding device of the embodiment, when deriving the intra prediction mode for the current block, the intra prediction mode for the current block may be derived as the plane mode based on the plane flag information indicating that the intra prediction mode for the current block is derived as the plane mode. In the example, the decoding device may derive the intra prediction mode for the current block as the plane mode based on the result of checking that the value of intra_luma_not_planar_flag is 0.
[0348] In an embodiment, the intra prediction information further includes MPM index information associated with one of the MPM candidates for the current block from which the planar mode has been excluded, and the decoding device according to the embodiment, when deriving the intra prediction mode for the current block, may check the MPM index information based on a case indicating that the intra prediction mode for the current block is not derived as the planar mode, and derive the intra prediction mode for the current block based on a result of checking the MPM index information. In an example, the decoding device may check the MPM index information based on a check result that the value of intra_luma_not_planar_flag is 1.
[0349] In an embodiment, the number of MPM candidates for the current block from which the planar mode has been excluded may be five. In an example, the MPM candidates may include first to fifth MPM candidates. The first MPM candidate may be associated with MPM index 0; the second MPM candidate may be associated with MPM index 1; the third MPM candidate may be associated with MPM index 2; and the fourth MPM candidate may be associated with MPM index 3.
[0350] The decoding apparatus according to an embodiment may derive an intra prediction mode for the current block based on the MPM candidates for the current block from which the planar mode has been excluded and based on a case where the value of the MRL index information indicates non-zero.
[0351] In an embodiment, the value of the plane flag information may be derived based on the context model for the bin associated with the plane flag information, and the context model for the bin associated with the plane flag information may be derived based on the context index increment (ctxInc), and the context index increment for the bin associated with the plane flag information may be selected from two candidates based on the case where the bin index of the bin is 0, and these candidates may include 0 and 1, and the context model for the case where the context index increment is 0 may be different from the context model for the case where the context index increment is 1, and the value of the context index increment for the bin associated with the plane flag information may be one of two different integers. In the example, the value of the context index increment for the bin associated with intra_luma_not_planar_flag may be one of two different integers. Here, the context index increment may mean ctxInc.
[0352] In an embodiment, the two different integers may be 0 and 1. That is, the value of the context index increment for the bin associated with the plane flag information may be 0 or 1.
[0353] In an embodiment, the value of the context index increment for the bin associated with the plane flag information may be based on whether the intra subpartitioning (ISP) mode is applied to the current block. In an example, the value of the context index increment for the bin associated with the plane flag information may be based on the value of the ISP flag related to whether the ISP mode is applied to the current block. The ISP flag may be expressed, for example, as intra_subpartitions_mode_flag.
[0354] In an embodiment, the value of the context index increment may be determined as 1 based on a determination that the ISP mode is applied to the current block, and the value of the context index increment may be determined as 0 based on a determination that the ISP mode is not applied to the current block. In an example, the value of the context index increment may be determined as 1 based on a determination that the value of intra_subpartitions_mode_flag is 1, and the value of the context index increment may be determined as 0 based on a determination that the value of intra_subpartitions_mode_flag is 0.
[0355] according to Fig.13 and Fig.14The decoding device and the operation method of the decoding device disclosed in the disclosure are that the decoding device can obtain intra-frame prediction information from a bitstream, the intra-frame prediction information including MPM flag information related to whether to derive an intra-frame prediction mode for the current block based on the MPM candidate for the current block, MRL index information of at least one reference sample line for intra-frame prediction of the current block, and at least one of plane (PLANAR) flag information related to whether to determine the intra-frame prediction mode for the current block as a plane mode (S1300), check the MPM flag information (S1310), check the MRL index information based on the case where the value of the MPM flag information indicates the check of the MRL index information (S1320), check the plane flag information based on the case where the value of the MRL index information is 0 (S1330), derive the intra-frame prediction mode for the current block based on the check of the plane flag information (S1340), derive the prediction sample of the current block based on the intra-frame prediction mode for the current block (S1350), and generate a reconstructed picture based on the prediction sample (S1360).
[0356] That is, according to the present disclosure, the efficiency of intra-frame prediction based on the MPM list can be improved based on the plane flag information related to whether the intra-frame prediction mode for the current block is determined to be a plane mode. Alternatively, according to the present disclosure, the image coding efficiency can be improved by determining whether to signal the plane flag information based on the MRL index information. Alternatively, according to the present disclosure, the MPM list for the current block can be efficiently constructed. Alternatively, according to the present disclosure, the value of the context index for the bin associated with the plane flag information can be determined based on whether the ISP mode is applied to the current block.
[0357] Although the method has been described based on the flowcharts that list the steps and boxes in order in the above embodiments, the steps of the present disclosure are not limited to a certain order, and a certain step may be performed in a different step or in a different order from the above steps or simultaneously. In addition, it should be understood by those of ordinary skill in the art that the steps of the flowchart are not exclusive, and another step may be included therein, or one or more steps of the flowchart may be deleted without affecting the scope of the present disclosure.
[0358] The aforementioned method according to the present disclosure may be in the form of software, and the encoding device and / or decoding device according to the present disclosure may be included in a device for performing image processing such as a TV, a computer, a smart phone, a set-top box, a display device, and the like.
[0359] When the embodiments are implemented in software in the present disclosure, the aforementioned methods can be implemented using modules (processes, functions, etc.) that perform the aforementioned functions. The modules can be stored in a memory and executed by a processor. The memory can be arranged inside or outside the processor and connected to the processor using various 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 a read-only memory (ROM), a random access memory (RAM), a flash memory, a memory card, a storage medium, and / or other storage devices. That is, the embodiments described herein can be implemented and executed on a processor, a microprocessor, a controller, or a chip. For example, the functional units shown in the various figures can be implemented and executed on a computer, a processor, a microprocessor, a controller, or a chip. In this case, information (e.g., information about instructions) or algorithms for implementation can be stored in a digital storage medium.
[0360] In addition, the decoding device and encoding device to which the present disclosure is applied may be included in the following: a multimedia broadcast transceiver, a mobile communication terminal, a home theater video device, a digital theater video device, a surveillance camera, a video chat device, and a real-time communication device such as a video communication, a mobile streaming device, a storage medium, a camera, a video on demand (VoD) service provider, an over-the-top (OTT) video device, an Internet streaming service provider, a 3D video device, a virtual reality (VR) device, an augmented reality (AR) device, an image phone video device, a vehicle terminal (e.g., a vehicle (including an autonomous vehicle) terminal, an aircraft terminal, or a ship terminal) and a medical video device, etc., and may be used to process image signals or data. For example, an OTT video device may include a game console, a Blu-ray player, a TV connected to the Internet, a home theater system, a smart phone, a tablet PC, and a digital video recorder (DVR), etc.
[0361] In addition, the processing method of the present disclosure can be generated in the form of a program executed by a computer and can be stored in a computer-readable recording medium. Multimedia data with a data structure according to the present disclosure can also be stored in a computer-readable recording medium. Computer-readable recording media include all kinds of storage devices and distributed storage devices in which computer-readable data is stored. Computer-readable recording media may include, for example, Blu-ray discs (BD), universal serial buses (USB), ROMs, PROMs, EPROMs, EEPROMs, RAMs, CD-ROMs, magnetic tapes, floppy disks, and optical data storage devices. Computer-readable recording media also include media embodied in the form of carrier waves (e.g., transmission via the Internet). In addition, the bit stream generated by the encoding method can be stored in a computer-readable recording medium or sent via a wired or wireless communication network.
[0362] In addition, the embodiments of the present disclosure may be embodied as a computer program product based on program codes, and the program codes may be executed on a computer according to the embodiments of the present disclosure. The program codes may be stored on a computer readable carrier.
[0363] Fig.15 represents an example of a content streaming system to which the disclosure herein may be applied.
[0364] Reference Fig.15 A content streaming system to which the embodiments of the present disclosure are applied may generally include an encoding server, a streaming server, a network server, a media storage device, a user device, and a multimedia input device.
[0365] The encoding server is used to compress the content input from the multimedia input device such as a smart phone, a camera, a camcorder, etc. into digital data to generate a bit stream and send it to the streaming server. As another example, in the case where the multimedia input device such as a smart phone, a camera, a camcorder, etc. directly generates a bit stream, the encoding server can be omitted.
[0366] The bitstream may be generated by applying the encoding method or the bitstream generation method of the embodiment of the present disclosure, and the streaming server may temporarily store the bitstream during the process of sending or receiving the bitstream.
[0367] The streaming server sends multimedia data to the user device based on the user's request through the network server, which acts as a tool to inform the user of what services are available. When the user requests the service the user wants, the network server transfers the request to the streaming server, and the streaming server sends the multimedia data to the user. In this regard, the content streaming system may include a separate control server, and in this case, the control server is used to control the commands / responses between the various devices in the content streaming system.
[0368] The streaming server may receive content from a media storage device and / or an encoding server. For example, in the case where the content is received from the encoding server, the content may be received in real time. In this case, the streaming server may store the bitstream for a predetermined period of time to smoothly provide a streaming service.
[0369] For example, user devices may include mobile phones, smart phones, laptop computers, digital broadcast terminals, personal digital assistants (PDAs), portable multimedia players (PMPs), navigation, tablet PCs, tablet PCs, ultrabooks, wearable devices (e.g., watch-type terminals (smart watches), glasses-type terminals (smart glasses), head-mounted displays (HMDs)), digital TVs, desktop computers, digital signage, etc.
[0370] Each server in the content streaming system may be operated as a distributed server, and in this case, data received by each server may be processed in a distributed manner.
Claims
1. An image decoding device, comprising: Memory; as well as at least one processor connected to the memory, the at least one processor being configured to: Obtaining, from a bitstream, MPM flag information related to whether to derive an intra prediction mode for a current block based on a most probable mode (MPM) candidate for the current block and multi-reference line (MRL) index information of at least one reference sample line for intra prediction of the current block; Check the value of the MPM flag information; Based on the value of the MPM flag information being equal to 1, checking the value of the MRL index information; Based on the value of the MRL index information being equal to 0, obtaining from the bitstream plane flag information indicating whether the intra prediction mode for the current block is a plane mode; deriving the intra prediction mode for the current block based on the value of the plane flag information; deriving prediction samples for the current block based on the intra prediction mode for the current block; and Based on the prediction samples, a reconstructed picture is generated.
2. The image decoding device according to claim 1, wherein: Based on the value of the plane flag information indicating that the intra prediction mode for the current block is the plane mode, the intra prediction mode for the current block is derived as the plane mode.
3. The image decoding device according to claim 1, wherein: The at least one processor is further configured to: obtaining, from the bitstream, MPM index information about one of the MPM candidates for the current block from which the planar mode has been excluded, wherein, based on the value of the plane flag information indicating that the intra prediction mode for the current block is not the plane mode, the MPM index information is obtained from the bitstream, and Wherein, based on the value of the MPM index information, the intra-frame prediction mode for the current block is derived.
4. The image decoding device according to claim 3, wherein: The number of the MPM candidates for the current block from which the planar mode has been excluded is five.
5. The image decoding device according to claim 1, wherein: Based on the value of the MRL index information not being equal to 0, the at least one processor is further configured to obtain MPM index information from the bitstream without obtaining the plane flag information, wherein the MPM index information is related to one of the MPM candidates for the current block from which the planar mode has been excluded, and Wherein, the intra prediction mode for the current block is derived based on the MPM candidates from which the planar mode has been excluded and the value of the MPM index information.
6. The image decoding device according to claim 1, wherein: The at least one processor is further configured to: obtaining intra sub-partition mode flag information for the current block from the bitstream, wherein the value of the plane flag information is derived based on a context model for a bin associated with the plane flag information, wherein the context model for the bin associated with the plane flag information is derived based on a context index increment (ctxInc), and The value of the context index increment is determined based on the value of the intra-frame sub-partition mode flag information.
7. The image decoding device according to claim 6, wherein: Based on the value of the intra sub-partition mode flag information being equal to 0, the value of the context index increment is determined to be 1, and Wherein, based on the value of the intra-frame sub-partition mode flag information being equal to 1, the value of the context index increment is determined to be 0.
8. An image encoding device, comprising: Memory; as well as at least one processor connected to the memory, the at least one processor being configured to: derive the intra prediction mode for the current block, generating multi-reference line (MRL) index information of at least one reference sample line for intra prediction of the current block, generating a most probable mode (MPM) flag information related to whether to derive the intra prediction mode for the current block based on a most probable mode (MPM) candidate for the current block, Check the value of the MPM flag information, Based on the value of the MPM flag information being equal to 1, checking the value of the MRL index information, generating plane flag information indicating whether the intra prediction mode for the current block is a plane mode based on the value of the MRL index information being equal to 0, and Image information including at least one of the MPM flag information, the MRL index information, and the plane flag information is encoded.
9. The image encoding device according to claim 8, wherein: Based on the value of the plane flag information indicating that the intra prediction mode for the current block is not the planar mode, the at least one processor is further configured to generate MPM index information related to one of the MPM candidates for the current block from which the planar mode has been excluded.
10. The image encoding device according to claim 9, wherein: The number of the MPM candidates for the current block from which the planar mode has been excluded is five.
11. The image encoding device according to claim 8, wherein: Based on the value of the MRL index information not being equal to 0, the at least one processor is further configured to generate the MPM index information without generating the plane flag information, wherein the MPM index information is related to one of the MPM candidates for the current block from which the planar mode has been excluded, and Wherein, the intra prediction mode for the current block is represented based on the MPM candidates from which the planar mode has been excluded and the MPM index information.
12. The image encoding device according to claim 8, wherein: The at least one processor is further configured to: generating intra sub-partition mode flag information for the current block, wherein the value of the plane flag information is represented based on a context model for a bin associated with the plane flag information, wherein the context model for the bin associated with the plane flag information is derived based on a context index increment (ctxInc), and The value of the context index increment is determined based on the value of the intra-frame sub-partition mode flag information.
13. The image encoding device according to claim 12, wherein: Based on the value of the intra sub-partition mode flag information being equal to 0, the value of the context index increment is determined to be 1, and Wherein, based on the value of the intra-frame sub-partition mode flag information being equal to 1, the value of the context index increment is determined to be 0.
14. A device for transmitting data related to an image, comprising: at least one processor configured to obtain a bitstream for the image, wherein the bitstream is generated by performing the following steps: deriving an intra prediction mode for a current block, generating multi-reference line (MRL) index information of at least one reference sample line for intra prediction of the current block, generating MPM flag information related to whether to derive the intra prediction mode for the current block based on a most probable mode (MPM) candidate for the current block, checking a value of the MPM flag information, and based on the value of the MPM flag information being equal to 1, checking a value of the MRL index information, and based on the value of the MRL index information being equal to 0, generating plane flag information indicating whether the intra prediction mode for the current block is a plane mode, and encoding image information, the image information comprising at least one of the MPM flag information, the MRL index information, or the plane flag information; and A transmitter is configured to transmit the data including the bit stream.