Image encoding / decoding method and apparatus, and recording medium on which bitstream is stored

By dividing blocks into multiple areas and weighting prediction values based on neighboring block information, the method enhances GPM efficiency for high-resolution images, reducing transmission and storage costs.

WO2026038914A1PCT designated stage Publication Date: 2026-02-19INTELLECTUAL DISCOVERY CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2025/012406
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-11-15
Filing Date
2025-08-14
Publication Date
2026-02-19

AI Technical Summary

Technical Problem

Existing image compression techniques, such as Geometric Partitioning Mode (GPM), are limited in predicting large blocks and require improved efficiency for high-resolution and high-quality images, leading to increased transmission and storage costs.

Method used

The method involves deriving a GPM dividing line to divide a current block into multiple partition areas, determining prediction modes for each area, and generating a prediction block by weighting prediction values, using information from neighboring blocks and bitstreams to enhance encoding/decoding efficiency.

Benefits of technology

This approach improves encoding/decoding efficiency by allowing for more effective prediction and reduced data transmission/storage costs for high-resolution images.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2025012406_19022026_PF_FP_ABST
    Figure KR2025012406_19022026_PF_FP_ABST
Patent Text Reader

Abstract

The present invention relates to an image encoding / decoding method and apparatus. The image decoding method according to the present invention comprises the steps of: deriving a geometric partitioning mode (GPM) division line; dividing the current block into a plurality of partition areas on the basis of the GPM division line; determining prediction modes for the respective partition areas; and performing a weighted sum of prediction values for the plurality of partition areas derived on the basis of each of the determined prediction modes, so as to generate a prediction block of the current block, wherein the GPM division line can be one straight line connected to a GPM division line of a neighboring block adjacent to the current block.
Need to check novelty before this filing date? Find Prior Art

Description

Video encoding / decoding method, device, and recording medium storing bitstream

[0001] The present invention relates to a video encoding / decoding method, device, and recording medium storing a bitstream. Specifically, the present invention relates to a video encoding / decoding method, device, and recording medium storing a bitstream based on an enhanced GPM (Geometric Partitioning Mode).

[0002] Recently, the demand for high-resolution, high-quality images, such as HD (High Definition) and UHD (Ultra High Definition) images, is increasing across various application fields. As image data becomes higher in resolution and quality, the relative amount of data increases compared to conventional image data. Therefore, transmitting image data using existing media such as wired or wireless broadband lines or storing it using existing storage media leads to increased transmission and storage costs. To address these issues arising as image data becomes higher in resolution and quality, highly efficient image encoding / decoding technologies for higher-resolution and higher-quality images are required.

[0003] Among image compression techniques, Geometric Partitioning Mode (GPM) is a prediction-related technique. GPM divides the image into two regions using a single straight line and performs unidirectional inter-prediction on each region. However, GPM is designed to predict only two regions with a single dividing line. This results in poor prediction performance for large blocks. Furthermore, its application is limited to a certain size, limiting its potential for performance improvement.

[0004] The present invention aims to provide a video encoding / decoding method and device that performs improved GPM to improve encoding / decoding efficiency.

[0005] In addition, it is an object of the present invention to provide a recording medium storing a bitstream generated by an image decoding method or device according to the present invention.

[0006] An image decoding method according to one embodiment of the present invention includes the steps of: deriving a GPM (Geometric Partitioning Mode) dividing line; dividing a current block into a plurality of partition areas based on the GPM dividing line; determining a prediction mode for each of the plurality of partition areas; and generating a prediction block of the current block by weighting prediction values ​​for the plurality of partition areas derived based on the determined prediction modes, wherein the GPM dividing line may be a single straight line connected to a GPM dividing line of a neighboring block adjacent to the current block.

[0007] In the above image decoding method, the GPM dividing line can be derived based on the GPM dividing line of the neighboring block.

[0008] In the above image decoding method, the neighboring block can be indicated by GPM reference block information obtained from a bitstream.

[0009] In the above image decoding method, the GPM dividing line can be derived in units of GPM group blocks including the current block.

[0010] In the above image decoding method, the GPM dividing line may include a plurality of dividing lines.

[0011] In the above image decoding method, the GPM dividing line can be derived based on GPM dividing line information for a GPM group block obtained from a bitstream.

[0012] In the above image decoding method, the GPM division line information for the GPM group block may include division angle information and distance information based on the center of the GPM group block.

[0013] In the above image decoding method, the GPM division line information for the GPM group block may include division angle information and distance information based on the center of any one block within the GPM group block.

[0014] In the above image decoding method, the current block may be in IBC (Intra Block Copy) mode.

[0015] In the above image decoding method, the prediction mode can be determined as one of intra mode, inter mode, and IBC (Intra Block Copy) mode.

[0016] In the above image decoding method, when the prediction mode is IBC mode, a block vector candidate can be derived based on the GPM division line.

[0017] In the above image decoding method, when the prediction mode is an intra mode, a detailed intra mode can be derived based on the GPM division line.

[0018] A video encoding method according to one embodiment of the present invention includes the steps of: deriving a GPM (Geometric Partitioning Mode) dividing line; dividing a current block into a plurality of partition areas based on the GPM dividing line; determining a prediction mode for each of the plurality of partition areas; and generating a prediction block of the current block by weighting prediction values ​​for the plurality of partition areas derived based on the determined prediction modes, wherein the GPM dividing line may be a single straight line connected to a GPM dividing line of a neighboring block adjacent to the current block.

[0019] A non-transitory computer-readable recording medium according to one embodiment of the present invention stores a bitstream generated by the image encoding method.

[0020] A transmission method according to one embodiment of the present invention transmits a bitstream generated by the image encoding method.

[0021] The present invention can improve the encoding / decoding efficiency of an image by providing an improved GPM.

[0022] According to the present invention, a video encoding / decoding method and device with improved encoding / decoding efficiency can be provided.

[0023] In addition, according to the present invention, a recording medium storing a bitstream generated by an image encoding method or device according to the present invention can be provided.

[0024] In addition, according to the present invention, a recording medium storing a bitstream received and decoded by an image decoding device according to the present invention and used for image restoration can be provided.

[0025] FIG. 1 is a block diagram showing an image encoding device according to one embodiment of the present invention.

[0026] FIG. 2 is a block diagram showing an image decoding device according to one embodiment of the present invention.

[0027] FIG. 3 is a flowchart illustrating a GPM process according to one embodiment of the present invention.

[0028] FIG. 4 is a drawing showing a two-part GPM according to one embodiment of the present invention.

[0029] FIG. 5 is a drawing showing a three-part GPM according to one embodiment of the present invention.

[0030] FIGS. 6 and 7 are drawings for explaining a GPM applied to a non-square block according to one embodiment of the present invention.

[0031] FIG. 8 and FIG. 9 illustrate a process by which an encoder determines the division of a GPM according to an embodiment of the present invention.

[0032] FIG. 10 is a diagram for explaining the division of GPM at a picture boundary according to one embodiment of the present invention.

[0033] Figure 11 is a table of GPM division line information according to one embodiment of the present invention.

[0034] FIG. 12 is a drawing for explaining a signaling method of a GPM division line index when the first GPM division line and the second GPM division line are symmetrical in a three-part GPM according to one embodiment of the present invention.

[0035] FIG. 13 is a drawing for explaining a GPM group block according to one embodiment of the present invention.

[0036] FIG. 14 is a drawing for explaining a GPM group block of a non-square shape according to one embodiment of the present invention.

[0037] FIG. 15 and FIG. 16 are drawings for explaining a method for deriving GPM division line information according to one embodiment of the present invention.

[0038] FIG. 17 is a diagram for explaining a prediction method of IBC mode and intra mode in a two-part GPM according to one embodiment of the present invention.

[0039] FIG. 18 is a diagram for explaining a prediction method of IBC mode and intra mode in a 3-partition GPM according to an embodiment of the present invention.

[0040] FIG. 19 is a diagram for explaining a method for deriving a block vector candidate by tracking whether IBC encoding is performed according to an embodiment of the present invention.

[0041] FIG. 20 is a diagram for explaining a method for deriving a block vector candidate by tracking whether GPM-IBC encoding is performed according to an embodiment of the present invention.

[0042] FIG. 21 is a diagram illustrating a method for determining GPM weights based on multiple mixed regions according to one embodiment of the present invention.

[0043] Figure 22 is a flowchart for explaining an image decoding method according to one embodiment of the present invention.

[0044]

[0045] The present invention is susceptible to various modifications and embodiments. Specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, but rather to encompass all modifications, equivalents, and alternatives falling within the spirit and technical scope of the present invention.

[0046] In the present invention, terms such as first, second, etc. may be used to describe various components, but the components should not be limited by these terms. These terms are used solely to distinguish one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term "and / or" includes a combination of multiple related described items or any of multiple related described items.

[0047] When a component of the present invention is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that other components may also be present in between. Conversely, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that no other components are present in between.

[0048] The components shown in the embodiments of the present invention are independently depicted to represent different characteristic functions, and do not mean that each component is composed of separate hardware or a single software component. That is, each component is listed and included as a separate component for convenience of explanation, and at least two components among each component may be combined to form a single component, or a single component may be divided into multiple components to perform a function, and such integrated and separate embodiments of each component are also included in the scope of the present invention as long as they do not deviate from the essence of the present invention.

[0049] Some components of the present invention may not be essential components that perform essential functions of the present invention, but may be optional components merely for performance enhancement. The present invention may be implemented by including only components essential to realizing the essence of the present invention, excluding components used solely for performance enhancement. A structure that includes only essential components, excluding optional components used solely for performance enhancement, is also within the scope of the present invention.

[0050] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In describing the embodiments of this specification, if it is determined that a detailed description of a related known configuration or function may obscure the gist of this specification, the detailed description will be omitted. The same reference numerals will be used for identical components in the drawings, and duplicate descriptions of identical components will be omitted.

[0051] Hereinafter, the terms “movie” and “video” may be used interchangeably and have the same meaning.

[0052] Hereinafter, the target image may be an encoding target image, which is the target of encoding, and / or a decoding target image, which is the target of decoding. Furthermore, the target image may be an input image input to an encoding device, or an input image input to a decoding device. Here, the target image may have the same meaning as the current image.

[0053] Hereinafter, the terms “image”, “picture”, “frame” and “screen” may be used interchangeably and have the same meaning.

[0054] Hereinafter, the target block may be an encoding target block that is the target of encoding and / or a decoding target block that is the target of decoding. Furthermore, the target block may be a current block that is the target of current encoding and / or decoding. For example, the terms "target block" and "current block" may be used interchangeably and have the same meaning.

[0055] Hereinafter, the terms "block" and "unit" may be used interchangeably and have the same meaning. Alternatively, "block" may refer to a specific unit.

[0056] Hereinafter, a specific signal may be a signal representing a specific block. For example, the original signal may be a signal representing a target block. The prediction signal may be a signal representing a predicted block. The residual signal may be a signal representing a residual block.

[0057]

[0058] FIG. 1 is a block diagram showing an image encoding device according to an embodiment of the present invention.

[0059] Referring to FIG. 1, an image encoding device (100) may include an image segmentation unit (101), an intra-screen prediction unit (102), an inter-screen prediction unit (103), a subtraction unit (104), a transformation unit (105), a quantization unit (106), an entropy encoding unit (107), an inverse quantization unit (108), an inverse transformation unit (109), an addition unit (110), a filter unit (111), and a memory (112).

[0060] Each component shown in Fig. 1 is independently depicted to indicate different characteristic functions in the video encoding device, and does not mean that each component is composed of separate hardware or a single software component. That is, each component is listed and included as a separate component for convenience of explanation, and at least two components among each component may be combined to form a single component, or one component may be divided into multiple components to perform a function, and such integrated and separate embodiments of each component are also included in the scope of the present invention as long as they do not deviate from the essence of the present invention.

[0061] Additionally, some components may not be essential components that perform essential functions of the present invention, but may be optional components merely used to enhance performance. The present invention may be implemented by including only components essential to implementing the essence of the present invention, excluding components used solely for performance enhancement. A structure that includes only essential components, excluding optional components used solely for performance enhancement, is also within the scope of the present invention.

[0062] The image segmentation unit (100) can segment an input image into at least one block. At this time, the input image can have various shapes and sizes such as a picture, a slice, a tile, a segment, a tile group, etc. The block can mean a coding unit (CU), a prediction unit (PU), or a transformation unit (TU). The segmentation can be performed based on at least one of a quadtree, a binary tree, and a ternary tree. A quadtree is a method of dividing an upper block into four sub-blocks each having a width and height half that of the upper block. A binary tree is a method of dividing an upper block into two sub-blocks each having a width or height half that of the upper block. A ternary tree is a method of dividing an upper block into three sub-blocks.

[0063] The prediction unit (102, 103) may include an inter-prediction unit (103) that performs inter-prediction and an intra-prediction unit (102) that performs intra-prediction. It may be determined whether to use inter-prediction or intra-prediction for a prediction unit, and specific information (e.g., intra-prediction mode, motion vector, reference picture, etc.) according to each prediction method may be determined. At this time, the processing unit where the prediction is performed and the processing unit where the prediction method and specific contents are determined may be different. For example, the prediction method and prediction mode may be determined for a prediction unit, and the prediction may be performed for a transformation unit.

[0064] The residual value (residual block) between the generated prediction block and the original block can be input to the transformation unit (105). In addition, the prediction mode information, motion vector information, etc. used for prediction can be encoded together with the residual value by the entropy encoding unit (107) and transmitted to the decoder. When using a specific encoding mode, it is also possible to encode the original block as is and transmit it to the decoder without generating the prediction block through the prediction unit (102, 103).

[0065] The intra-prediction unit (102) can generate a prediction block based on reference pixel information surrounding the current block, which is pixel information within the current picture. If the prediction mode of a block surrounding the current block on which intra prediction is to be performed is inter prediction, the reference pixel included in the surrounding block to which inter prediction is applied can be replaced with a reference pixel within another block surrounding which intra prediction is applied. That is, if the reference pixel is not available, the unavailable reference pixel information can be used by replacing it with at least one reference pixel among the available reference pixels. For intra prediction, a plurality of reference pixel lines can be available. If a plurality of reference pixel lines are available, information regarding which reference pixel line to refer to can be signaled.

[0066] In intra prediction, the prediction mode can have a directional prediction mode that uses reference pixel information according to the prediction direction, and a non-directional mode that does not use directional information when performing prediction. The mode for predicting luminance information and the mode for predicting chrominance information can be different, and the intra prediction mode information used to predict luminance information or the predicted luminance signal information can be utilized to predict chrominance information.

[0067] For prediction blocks generated by intra prediction, additional filtering may be performed. The additional filtering may be performed based on the prediction mode within the screen, the size and shape of the block, and / or the location of pixels within the prediction block.

[0068] The inter-screen prediction unit (103) generates a prediction block using the previously restored reference image and motion information stored in the memory (112). The motion information may include, for example, a motion vector, a reference picture index, a list 1 prediction flag, a list 0 prediction flag, etc.

[0069] A residual block containing residual value information, which is the difference value between the prediction unit generated in the prediction unit (102, 103) and the original block of the prediction unit, can be generated. The generated residual block can be input to the transformation unit (130) and transformed.

[0070] The inter-screen prediction unit (103) can derive a prediction block based on information about at least one picture from among the previous or subsequent pictures of the current picture. Furthermore, the prediction block of the current block can also be derived based on information about a portion of the current picture in which encoding has been completed. The inter-screen prediction unit (103) according to one embodiment of the present invention can include a reference picture interpolation unit, a motion prediction unit, and a motion compensation unit.

[0071] The reference picture interpolation unit can receive reference picture information from the memory (112) and generate pixel information below an integer pixel from the reference picture.

[0072] The motion prediction unit can perform motion prediction based on a reference picture interpolated by the reference picture interpolation unit. The motion prediction unit can predict the prediction block of the current block by using different motion prediction methods. Various motion prediction methods can be used, such as the Skip method, the Merge method, and the Advanced Motion Vector Prediction (AMVP) method.

[0073] The subtraction unit (104) subtracts the block to be currently encoded from the prediction block generated from the intra-screen prediction unit (102) or inter-screen prediction unit (103) to generate a residual block of the current block.

[0074] In the transformation unit (105), a residual block including residual data can be transformed using a transformation method such as DCT, DST, KLT (Karhunen Loeve Transform), etc. At this time, the transformation method can be determined based on the prediction method (inter or intra prediction) of the prediction unit used to generate the residual block, the intra prediction mode, and the size and / or shape of the transformation unit.

[0075] The quantization unit (106) can quantize the values ​​converted to the frequency domain by the transformation unit (105). The quantization coefficients can vary depending on the block or the importance of the image. The values ​​produced by the quantization unit (106) can be provided to the inverse quantization unit (108) and the entropy encoding unit (107).

[0076] The above-described transformation unit (105) and / or quantization unit (106) may be optionally included in the image encoding device (100). That is, the image encoding device (100) may encode the residual block by performing at least one of transformation or quantization on the residual data of the residual block, or by skipping both transformation and quantization. Even if neither transformation nor quantization is performed in the image encoding device (100), or neither transformation nor quantization is performed, a block that enters the input of the entropy encoding unit (107) is typically referred to as a transformation block. The entropy encoding unit (107) entropy-encodes the input data. Entropy encoding may use various encoding methods, such as, for example, Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC).

[0077] The entropy encoding unit (107) can encode various information such as coefficient information of a transform block, block type information, prediction mode information, division unit information, prediction unit information, transmission unit information, motion vector information, reference frame information, block interpolation information, and filtering information. The coefficients of a transform block can be encoded in units of sub-blocks within the transform block.

[0078] The inverse quantization unit (108) and the inverse transformation unit (109) inversely quantize the values ​​quantized in the quantization unit (106) and inversely transform the values ​​transformed in the transformation unit (105). The residual values ​​generated in the inverse quantization unit (108) and the inverse transformation unit (109) can be combined with the prediction units predicted through the motion estimation unit, motion compensation unit, and intra-screen prediction unit (102) included in the prediction units (102, 103) to generate a reconstructed block. The addition unit (110) adds the prediction blocks generated in the prediction units (102, 103) and the residual blocks generated through the inverse transformation unit (109) to generate a reconstructed block.

[0079] The filter unit (111) may include at least one of a deblocking filter, an offset correction unit, and an ALF (Adaptive Loop Filter).

[0080] A deblocking filter can remove block distortion caused by boundaries between blocks in a restored picture.

[0081] The offset correction unit can correct the offset from the original image on a pixel basis for the image on which deblocking has been performed.

[0082] ALF (Adaptive Loop Filtering) can be performed based on the value compared between the filtered restored image and the original image.

[0083] The memory (112) can store a restoration block or picture produced through the filter unit (111), and the stored restoration block or picture can be provided to the prediction unit (102, 103) when performing inter-screen prediction.

[0084]

[0085] Next, an image decoding device according to an embodiment of the present invention will be described with reference to the drawings. Fig. 2 is a block diagram illustrating an image decoding device (200) according to an embodiment of the present invention.

[0086] Referring to FIG. 2, the image decoding device (200) may include an entropy decoding unit (201), an inverse quantization unit (202), an inverse transformation unit (203), an addition unit (204), a filter unit (205), a memory (206), and a prediction unit (207, 208).

[0087] When an image bitstream generated by an image encoding device (100) is input to an image decoding device (200), the input bitstream can be decoded according to a process opposite to the process performed in the image encoding device (100).

[0088] The entropy decoding unit (201) can perform entropy decoding in a procedure opposite to that of the entropy encoding unit (107) of the video encoding device (100). For example, various methods such as Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC) can be applied in response to the method performed in the video encoder.

[0089] The inverse quantization unit (202) performs inverse quantization on a quantized transform block to generate a transform block. It operates substantially the same as the inverse quantization unit (108) of Fig. 1.

[0090] The inverse transform unit (203) performs an inverse transform on the transform block to generate a residual block. At this time, the transform method can be determined based on information regarding the prediction method (inter or intra prediction), the size and / or shape of the block, the intra prediction mode, etc. It operates substantially the same as the inverse transform unit (109) of FIG. 1.

[0091] The addition unit (204) adds the prediction block generated from the intra-screen prediction unit (207) or inter-screen prediction unit (208) and the residual block generated through the inverse transformation unit (203) to generate a restored block. It operates substantially the same as the addition unit (110) of Fig. 1.

[0092] The filter unit (205) reduces various types of noise occurring in restored blocks.

[0093] The filter unit (205) may include a deblocking filter, an offset correction unit, and an ALF.

[0094] Information on whether a deblocking filter has been applied to a corresponding block or picture from a video encoding device (100) and, if a deblocking filter has been applied, information on whether a strong filter or a weak filter has been applied can be provided. The deblocking filter of the video decoding device (200) can receive information related to the deblocking filter provided from the video encoding device (100) and perform deblocking filtering on the corresponding block in the video decoding device (200).

[0095] The offset correction unit can perform offset correction on the restored image based on the type of offset correction applied to the image during encoding and offset value information.

[0096] ALF can be applied to an encoding unit based on information on whether ALF is applied, ALF coefficient information, etc. provided from a video encoding device (100). This ALF information can be provided by being included in a specific parameter set. The filter unit (205) operates substantially the same as the filter unit (111) of FIG. 1.

[0097] The memory (206) stores the restoration block generated by the addition unit (204). It operates substantially the same as the memory (112) of FIG. 1.

[0098] The prediction unit (207, 208) can generate a prediction block based on the prediction block generation related information provided by the entropy decoding unit (201) and the previously decoded block or picture information provided by the memory (206).

[0099] The prediction unit (207, 208) may include an intra-screen prediction unit (207) and an inter-screen prediction unit (208). Although not separately illustrated, the prediction unit (207, 208) may further include a prediction unit determination unit. The prediction unit determination unit may receive various information such as prediction unit information input from the entropy decoding unit (201), prediction mode information of an intra-prediction method, and motion prediction-related information of an inter-prediction method, and may distinguish a prediction unit from a current encoding unit and determine whether the prediction unit performs inter-prediction or intra-prediction. The inter-screen prediction unit (208) may perform inter-screen prediction on the current prediction unit based on information included in at least one of a previous picture or a subsequent picture of the current picture including the current prediction unit, using information necessary for inter-prediction of the current prediction unit provided from the video encoding device (100). Alternatively, inter-screen prediction can be performed based on information from some previously reconstructed region within the current picture containing the current prediction unit.

[0100] In order to perform inter-screen prediction, it is possible to determine whether the motion prediction method of the prediction unit included in the encoding unit is Skip Mode, Merge Mode, or AMVP Mode based on the encoding unit.

[0101] The on-screen prediction unit (207) generates a prediction block using pixels located around the block to be encoded and previously restored. If multiple reference pixel lines are available, it is possible to identify which reference pixel line to refer to based on information provided by the image encoding device (100).

[0102] The reference pixel interpolation unit of the prediction unit (207) within the screen can interpolate the reference pixel to generate a reference pixel at a fractional unit position when the prediction mode of the prediction unit is a prediction unit that performs intra prediction based on the pixel value interpolated from the reference pixel. The generated reference pixel at the fractional unit position can be used as a prediction pixel of a pixel within the current block. When the prediction mode of the current prediction unit is a prediction mode that generates a prediction block without interpolating the reference pixel, the reference pixel may not be interpolated. The DC filter can generate a prediction block through filtering when the prediction mode of the current block is the DC mode.

[0103] As mentioned above, additional filtering can be performed on the prediction blocks generated by intra prediction.

[0104] The on-screen prediction unit (207) operates substantially the same as the on-screen prediction unit (102) of FIG. 1.

[0105] The inter-screen prediction unit (208) generates an inter-screen prediction block using reference pictures and motion information stored in the memory (206). The inter-screen prediction unit (208) operates substantially the same as the inter-screen prediction unit (103) of FIG. 1.

[0106]

[0107] Hereinafter, various embodiments of the present invention will be described in more detail with reference to the drawings.

[0108] In the present invention, the Geometric Partitioning Mode (hereinafter referred to as GPM) refers to a mode in which a current block is divided into multiple regions of a geometric shape and prediction is performed for each region.

[0109]

[0110] FIG. 3 is a flowchart illustrating a GPM process according to one embodiment of the present invention.

[0111] Referring to FIG. 3, the GPM process may be composed of a partitioning step (S310) for dividing the current block into multiple partition areas, a prediction step (S320) for performing prediction for each of the multiple partition areas, and a blending step (S330) for generating a prediction block of the current block by weighting the prediction values ​​of the multiple partition areas. Each step of the GPM process will be described in detail below.

[0112]

[0113] -Split stage-

[0114] According to one embodiment of the present invention, the GPM partitioning step may partition the current block into N+1 partition areas using N partition lines. Here, N may be an integer greater than or equal to 2. Specifically, the GPM partitioning step may determine a partition type and derive GPM partition lines based on the determined partition type to partition the current block.

[0115] The GPM partition type according to a temporary example of the present invention can be determined based on the size of the current block. The GPM partition type can be any one of 2 partitions, 3 partitions, ... M partitions (M is a positive integer greater than or equal to 2).

[0116] Meanwhile, the GPM partition type can be determined based on the combination of prediction modes for each partition, and can be one of 2-partition, 3-partition, ... M-partition depending on the number of partitions (M is a positive integer greater than or equal to 2). That is, the GPM partition type can correspond to a combination of prediction modes or the number of partitions.

[0117] For example, the prediction mode combination of the GPM partition type of the current block, in the case of two partitions, can be determined as any one of Inter-Inter, Inter-Intra, Inter-IBC, Intra-Inter, Intra-Intra, Intra-IBC, IBC-Inter, IBC-Intra, and IBC-IBC. These GPM partition types can be limited to a specific type depending on the size of the current block. For example, the intra-inter and inter-intra partition types can be applied only when the size of the current block is 8x8 or more and 64x64 or less. In addition, in the case of intra-intra, the prediction mode for each type can be separately configured and processed as SGPM (Spatial Geometry Partition Mode) described later.

[0118] As an example according to the number of split partitions, if the size of the current block is 8x8 or more and 64x64 or less, the GPM split type may be determined as 2-partitioned. That is, if the size of the current block is 8x8 or more and 64x64 or less, only one GPM splitting line information may be limited to be included in the bitstream. Here, the GPM splitting line information includes additional information for deriving a straight line, which may be directly signaled through the bitstream. In addition, the GPM splitting line information may be included in a GPM splitting mode candidate list configured according to a combination of prediction modes of the GPM splitting type. That is, index information indicating a splitting line mapped to the GPM splitting mode candidate list may be signaled through the bitstream in a manner that the bitstream includes the index information.

[0119] And, if the size of the current block is greater than 64x64 and less than or equal to 128x128, the GPM division type can be determined as 3-division or 2-division. That is, if the size of the current block is greater than 64x64 and less than or equal to 128x128, the bitstream can be limited to including no more than 2 GPM division line information.

[0120] Here, the GPM dividing line information may be composed of dividing angle information and distance information indicating the vertical distance from the center point of the current block as information for deriving the dividing line. The GPM dividing line information may be information in the form of an index indicating a plurality of predefined dividing angle information and distance information sets. In addition, the GPM dividing line information may be information in the form of an index indicating a specific dividing line mapped to a GPM dividing mode candidate list.

[0121] Meanwhile, the GPM partition type can be determined based on the signaled GPM partition type information.

[0122]

[0123] FIG. 4 is a drawing showing a two-part GPM according to one embodiment of the present invention.

[0124] Referring to Fig. 4, when the GPM partition type is two-partition, one GPM partition line information (GPM_idx, 400) is signaled to derive the GPM partition line, and the current block can be partitioned into a first partition area (410) and a second partition area (420) according to the GPM partition line. In addition, according to the prediction mode combination identification based on the GPM partition type, the first prediction mode (411) can be applied to the first partition area (410), and the second prediction mode (421) can be applied to the second partition area (420), so that prediction can be performed.

[0125] Meanwhile, according to the identification of a combination of prediction modes based on the GPM partition type, the current block can be divided into a first partition area (410) and a second partition area (420), and the first prediction mode (411) can be applied to the first partition area (410) and the second prediction mode (421) can be applied to the second partition area (420) to perform prediction.

[0126] FIG. 5 is a drawing showing a three-part GPM according to one embodiment of the present invention.

[0127] Referring to FIG. 5, when the GPM partition type is 3-partition, two pieces of first GPM partition line information (GPM_idx1, 500) and second GPM partition line information (GPM_idx2, 501) are signaled to derive the first GPM partition line and the second GPM partition line, and the current block can be partitioned into a first partition area (510), a second partition area (520), and a third partition area (530) according to the first GPM partition line and the second GPM partition line. Prediction can be performed by applying a first prediction mode (511) to the first partition area (510), a second prediction mode (521) to the second partition area (520), and a third prediction mode (531) to the third partition area (530), respectively.

[0128] Meanwhile, according to the identification of the combination of prediction modes based on the GPM partition type, the current block can be divided into a first partition area (510), a second partition area (520), and a third partition area (530), and prediction can be performed by applying a first prediction mode (511) to the first partition area (510), a second prediction mode (521) to the second partition area (520), and a third prediction mode (531) to the third partition area (530).

[0129]

[0130] GPM according to one embodiment of the present invention can be applied not only to square but also to non-square blocks.

[0131] FIGS. 6 and 7 are drawings for explaining a GPM applied to a non-square block according to one embodiment of the present invention.

[0132] Figure 6 shows the division form of a two-part GPM applied to a non-square block (2N x N, N x 2N), and Figure 7 shows the division form of a three-part GPM applied to a non-square block (2N x N, N x 2N).

[0133]

[0134] FIG. 8 and FIG. 9 illustrate a process by which an encoder determines the division of a GPM according to an embodiment of the present invention.

[0135] The encoder can determine the GPM split type and split line based on the Rate-Distortion Optimization (RDO) process. For example, the encoder can first determine the first GPM split line based on encoding efficiency. Then, the encoder can determine the second GPM split line by comparing the second GPM split line candidates based on the encoding efficiency prediction for the remaining region.

[0136] As shown in FIGS. 8 and 9, the encoder can determine a first partition area (810, 910) using one straight line (L1) and determine a second partition area candidate (820, 920) using another straight line. In addition, the encoder can perform an RDO process by performing intra prediction or inter prediction on each partition area.

[0137] The above RDO process can set a first partition area (810, 910) by adjusting the division angle of the first GPM division line (L1) and the vertical distance from the center point, and perform a process of finding a second GPM division line within the remaining area using second GPM division line candidates (L2 Cand. 1, L2 Cand. 2, L2 Cand. 3, L2 Cand. 4), which are other arbitrary straight lines corresponding to the first GPM division line (L1).

[0138] Meanwhile, the encoder can determine the first GPM dividing line and the second GPM dividing line such that the first GPM dividing line and the second GPM dividing line do not overlap each other.

[0139]

[0140] According to one embodiment of the present invention, GPM segmentation may be restricted for blocks located at picture boundaries. Specifically, for blocks located at picture boundaries, GPM segmentation may be applied in a restricted manner based on the block size or the location of the boundary where the block is located.

[0141] FIG. 10 is a diagram for explaining the division of GPM at a picture boundary according to one embodiment of the present invention.

[0142] Referring to Fig. 10, when the size of a block located at a picture boundary is N x 2N or 2N x N (1010, 1020), the 3-partition GPM is limited and only the 2-partition GPM can be applied (1011, 1012, 1021, 1022). In addition, when the size of a block located at a picture boundary is N x N (1030), the GPM may not be applied (1031). Here, N represents an arbitrary positive integer.

[0143] For another example, GPM may not be applied to blocks located at the bottom right picture boundary. Furthermore, for blocks located at the bottom or right picture boundary, 3-part GPM is restricted and only 2-part GPM may be applied.

[0144] As described above, the complexity of the encoder and decoder can be improved by restrictively applying GPM to blocks located at the picture boundary.

[0145]

[0146] As described above, the segmentation line information of the GPM can be composed of segmentation angle information and distance information, and can be signaled as information in the form of an index indicating a plurality of predefined sets of segmentation angle information and distance information.

[0147] Figure 11 is a table of GPM division line information according to one embodiment of the present invention.

[0148] Referring to Fig. 11, the GPM partition line information table defines a GPM partition line index (GPM_Partition_idx) corresponding to a set of partition angle indices (Angle_idx) and distance indices (Distance_idx). Specifically, the partition angle index (Angle_idx) is a variable used to derive the angle of the partition line, and the distance index (Distance_idx) may be a variable that can derive a pixel-based distance from the center of the current block by referencing a predefined distance table.

[0149] For a 2-partition GPM, signaling of one GPM split line index is required, and for a 3-partition GPM, signaling of two GPM split line indices is required.

[0150] According to one embodiment, two GPM partition line indices (GPM_Partition_idx_1, GPM_Partition_idx_2) may be signaled for a 3-partition GPM, respectively.

[0151] In another embodiment, for a 3-partition GPM, either one of the first GPM partition line index (GPM_Partition_idx_1) or the second GPM partition line index (GPM_Partition_idx_2) may be signaled first, and then the difference value between the remaining GPM partition line index and the signaled GPM partition line index may be signaled. For example, if the first GPM partition line index (GPM_Partition_idx_1) and the second GPM partition line index (GPM_Partition_idx_2) are (10, 12), the first GPM partition line index (GPM_Partition_idx_1) and the difference value (10, 2) may be signaled.

[0152] In another embodiment, for a 3-partition GPM, only one of the first GPM partition line index (GPM_Partition_idx_1) and the second GPM partition line index (GPM_Partition_idx_2) may be signaled. In this case, the remaining GPM partition line indices may be derived based on the signaled GPM partition line indices, and information indicating the derivation of the GPM partition line indices may be signaled separately.

[0153] FIG. 12 is a drawing for explaining a signaling method of a GPM division line index when the first GPM division line and the second GPM division line are symmetrical in a three-part GPM according to one embodiment of the present invention.

[0154] Referring to Fig. 12, when the first GPM partition line (L1) and the second GPM partition line (L2) are symmetrical, the encoder may signal only the first GPM partition line index (GPM_Partition_idx_1) for the first GPM partition line (L1) indicating the first partition area (1210) while signaling the partition area symmetry flag. In this case, when the partition area symmetry flag is confirmed, the decoder may derive the first GPM partition line (L1) from the first GPM partition line index (GPM_Partition_idx_1) and derive the second GPM partition line (L2) which is a symmetrical position within the current block with respect to the first GPM partition line (L1).

[0155]

[0156] The GPM dividing line according to one embodiment of the present invention can be applied to a plurality of blocks as well as one block.

[0157] When a dividing line reflecting a straight or curved shape spans multiple blocks, there may be a correlation between the blocks, and furthermore, it may be desirable to form a single straight line. Furthermore, for picture blocks that constitute screen content where IBC is effectively utilized, it may be efficient to divide multiple blocks simultaneously by such a single straight line.

[0158] Therefore, in the case described above, it may be advantageous for improving coding efficiency to signal GPM division line information indicating a larger size GPM division line for each GPM group block by forming a GPM group block including two or more blocks rather than signaling GPM division line information for each individual block.

[0159] FIG. 13 is a drawing for explaining a GPM group block according to one embodiment of the present invention.

[0160] Referring to FIG. 13, there is a GPM group block (1310) composed of four blocks including the current block (1300), and two GPM division lines can be shared for the GPM group block (1310). In this case, one GPM division line of the GPM group block (1310) can divide three blocks, so that the division of the GPM can be performed efficiently.

[0161] Meanwhile, two GPM dividing lines for the GPM group block (1310) of FIG. 13 can be derived by signaling first GPM dividing line information and second GPM dividing line information. Here, the GPM dividing line information for the GPM group block can include a dividing angle index (Angle_idx) and a distance index (Distance_idx) based on the midpoint of the GPM group block, and can be information in the form of an index indicating a set of dividing angle indices and distance indices in a table for GPM dividing line information such as FIG. 11.

[0162] In Fig. 13, a square-shaped GPM group block consisting of 4 blocks is described, but this is only one embodiment, and a square-shaped GPM group block consisting of 9 blocks, a square-shaped GPM group block consisting of 16 blocks, or 2 N It can be a GPM group block in a square shape consisting of blocks of N, where N can be a positive integer greater than or equal to 2.

[0163] Meanwhile, if the current block is a coding block, the GPM group block may be a coding tree block or a sub picture of the current block.

[0164] Meanwhile, GPM group block activation information indicating activation of a GPM group block and GPM split line information for the GPM group block can be signaled in at least one unit among a sequence, a picture, a subpicture, a slice, a tile group, a tile, and an encoding tree block.

[0165] FIG. 14 is a drawing for explaining a GPM group block of a non-square shape according to one embodiment of the present invention.

[0166] Referring to Fig. 14, the GPM group block (1410) composed of four blocks including the current block (1400) may have a non-square shape. In this case, the GPM division line of the GPM group block (1410) can divide the four blocks into eight partition areas, thereby efficiently performing the division of the GPM.

[0167] Meanwhile, the GPM dividing line for the GPM group block of FIG. 14 can be derived by signaling GPM dividing line information for one block within the GPM group block and extending it to the entire GPM group block. Specifically, the GPM dividing line information can include a dividing angle index (Angle_idx) and a distance index (Distance_idx) based on the midpoint of one block within the GPM group block. Accordingly, the dividing line of one block within the GPM group block can be derived using the GPM dividing line information, and the GPM dividing line of the GPM group block can be derived by extending the derived dividing line to the entire GPM group block.

[0168] Meanwhile, if the current block is a coding block, the GPM group block may be a slice of the current block.

[0169] Meanwhile, GPM group block activation information indicating activation of a GPM group block and GPM split line information for the GPM group block can be signaled in at least one unit among a sequence, a picture, a subpicture, a slice, a tile group, a tile, and an encoding tree block.

[0170]

[0171] According to one embodiment of the present invention, to improve the efficiency of GPM segmentation mode prediction and segmentation line information signaling, the GPM segmentation line of the current block may be derived based on the GPM segmentation line of a neighboring block. Specifically, the GPM segmentation line of the current block may be derived by extending the GPM segmentation line of a neighboring block adjacent to the current block.

[0172] Similarly, the GPM partition line of a specific neighboring block can also be derived by extending the GPM partition line of the current block. For example, a template-based GPM partition mode partition line that crosses both the neighboring reference template block and the current block can be derived by extending a pre-prepared GPM candidate mode partition line to determine the GPM partition line of the current block.

[0173] In addition, the GPM segmentation line derived by extending the GPM segmentation line of the current block or neighboring blocks can also be used in a template matching-based GPM segmentation process for pre-sorting a list of GPM segmentation mode candidates according to template matching cost. The template matching-based GPM segmentation includes a prediction-based process that uses a template composed of previously encoded / decoded neighboring pixels to find a reference template with the smallest matching cost within a preset search area, and uses the corresponding reference block as a prediction block neighboring the current block to determine the GPM segmentation mode.

[0174] More specifically, for example, in a template matching-based GPM partitioning mode, an extended partitioning line that crosses the current block and the adjacent reference template block can be derived by extending the edge, which is the GPM partitioning line of the current block, to the template reference template block. Accordingly, a plurality of extended partitioning lines can be determined corresponding to the GPM partitioning mode candidates of the current block, and a template matching cost considering the extended partitioning line for each GPM partitioning mode candidate can be calculated.

[0175] For example, a list of 64 GPM partition mode candidates can be predetermined based on 64 reference templates corresponding to extended partition lines, and a list reordering based on template matching cost calculations can be processed to form a list of 32 optimal GPM partition mode candidates. Based on the reordering, the 32 most cost-effective GPM partition modes among the GPM partition mode candidate lists can be determined as available GPM partition modes.

[0176] Accordingly, when GPM segmentation based on template matching is processed, information indicating the GPM segmentation mode can be signaled through a GPM candidate selection index corresponding to 32 available GPM segmentation modes produced by template matching-based alignment processing using the aforementioned reference template and the extension segmentation line of the current block. This GPM candidate selection index can be converted into a Golomb-Rice code-based index indicating a position within the 32 lists for transmission efficiency.

[0177] For example, signaling information at the coding unit level may include a template matching-based GPM partitioning mode flag indicating whether the current coding unit is in the general GPM mode or a coding unit to which the template matching-based GPM partitioning mode is applied. If the template matching-based GPM partitioning mode flag is true, a list of available GPM partitioning mode candidates may be determined by the GPM partitioning mode candidate list construction and sorting process based on the above-described extended partitioning line, and a GPM partitioning mode of the current coding unit may be selected based on a GPM candidate selection index from the determined list of available GPM partitioning mode candidates.

[0178] FIG. 15 and FIG. 16 are drawings for explaining a method for deriving GPM division line information according to one embodiment of the present invention.

[0179] Referring to FIG. 15, the GPM dividing line of the current block (1500) can be derived based on the GPM dividing line of the left neighboring block (1510) adjacent to the left of the current block (1500). Specifically, when the GPM reference block information indicates the left neighboring block (1510), the GPM dividing line information of the current block (1500) can be derived based on the GPM dividing line information of the left neighboring block (1510).

[0180] In addition, by extending the GPM candidate dividing line of the current block (1500), a template-based GPM segmentation mode dividing line that crosses the left neighboring block (1510), which is a reference template adjacent to the left side of the current block (1500), can be derived. Specifically, when the GPM segmentation mode candidate reference template indicates the left neighboring block (1510), a template-based GPM segmentation mode dividing line corresponding to the current block (1500) and the left neighboring block (1510) can be derived based on the GPM candidate dividing line information of the current block (1500). For example, the template-based GPM segmentation mode dividing line can be obtained by extending the GPM candidate dividing line of the current block (1500).

[0181] Referring to FIG. 16, the GPM dividing line of the current block (1600) can be derived based on the GPM dividing line of the left neighboring block (1610) adjacent to the top of the current block (1600). Specifically, when the GPM reference block information indicates the top neighboring block, the GPM dividing line information of the current block (1600) can be derived based on the GPM dividing line information of the left neighboring block (1610).

[0182] In addition, by extending the GPM candidate dividing line of the current block (1600), a template-based GPM segmentation mode dividing line that crosses the upper neighboring block (1610), which is a reference template adjacent to the upper side of the current block (1600), can be derived. Specifically, when the GPM segmentation mode candidate reference template indicates the upper neighboring block (1610), a template-based GPM segmentation mode dividing line corresponding to the current block (1500) and the upper neighboring block (1610) can be derived based on the GPM candidate dividing line information of the current block (1600). For example, the template-based GPM segmentation mode dividing line can be obtained by extending the GPM candidate dividing line of the current block (1600).

[0183] Specifically, when deriving the GPM dividing line of the current block (1600), the straight line function for the GPM dividing line of the current block can be derived based on the straight line function (f=Ax+b) for the GPM dividing line of the neighboring block and the center position of the neighboring block.

[0184] For this processing, the signaling information of the current block may include a GPM application flag indicating whether GPM is applied and a GPM reference block flag (e.g., GPM_Left_flag or GPM_Top_flag) indicating the derivation of a GPM dividing line from a neighboring block, and may not include separate GPM dividing line information. Accordingly, the GPM dividing line of a previously decoded reference block can be used as is using only a simple flag, without performing GPM dividing line information identification and GPM dividing line decoding for the current block.

[0185] Meanwhile, when deriving a template-based GPM candidate mode dividing line, a straight-line function for a template-based GPM partitioning mode dividing line crossing the current block and the reference template block can be derived based on a straight-line function (f=Ax+b) for the GPM candidate mode dividing line of the current block and the center position of the reference template block. Then, as a template matching cost based on the template-based GPM partitioning mode dividing line is derived, an available GPM partitioning mode candidate list can be determined, and the GPM partitioning mode of the current block can be finally determined based on index signaling corresponding to the available GPM partitioning mode candidate list.

[0186] For this processing, the signaling information of the current block may include a template-based GPM application flag indicating whether template-based GPM is applied, a selection index corresponding to a list of available GPM partitioning mode candidates, and may not include separate GPM partitioning line information. Accordingly, the optimal GPM partitioning line for the current block can be determined based on template matching, and signaling can be performed using only a simple index without performing separate GPM partitioning line information identification and GPM partitioning line decoding.

[0187] Meanwhile, the weight-based blending processing for the GPM mixed area in the prediction step described later can be limited so that the area is processed only for the partition of the current block area excluding the template area including the entire extended division line.

[0188]

[0189] Meanwhile, the embodiments related to GPM division line sharing described in FIGS. 13 to 16 may be applied to blocks smaller or larger than a specific block size. Alternatively, they may be applied only to IBC coding blocks.

[0190]

[0191] - Prediction stage -

[0192] The prediction step of the GPM according to one embodiment of the present invention can perform prediction on multiple partitioned areas. Specifically, the prediction step of the GPM can determine a prediction mode for each partition area and perform prediction on each partition area based on the determined prediction mode.

[0193] The prediction mode applied to the GPM according to one embodiment of the present invention may be an Inter mode, an Intra mode, an Intra Block Copy (IBC) mode, and an Intra Template Matching (IntraTMP) mode.

[0194] Here, the detailed modes of the inter mode that can be applied to the GPM may be at least one of the unidirectional prediction mode, the bidirectional prediction mode, the merge mode, the AMVP mode, the SbTMVP (Sub-block based TMVP) mode, the PROF (Prediction Refinement with Optical Flow) mode, the LIC (Local Illumination Compensation) mode, the MMVD (Merged with MVD) mode, the BDOF (Bi-directional Optical Flow), the DMVR (Decoder-side Motion Vector Refinement) mode, the CIIP (Combined Inter and Intra Prediction) mode, the Affine mode, and the TM (Template Matching) mode.

[0195] In addition, the detailed modes of the intra mode that can be applied to the GPM may be at least one of the Directional intra mode, DC mode, Planar mode, Directional Planar mode, Position Dependent Prediction Combination (PDPC) mode, Intra Sub-Partitions (ISP) mode, Multiple-Reference Line (MRL), Matrix-weighted Intra Prediction (MIP) mode, Decoder-side Intra Mode Derivation (DIMD) mode, and Template-based Intra Mode Derivation (TIMD) mode.

[0196] Meanwhile, IntraTMP mode is a prediction technique that uses surrounding templates to find a reference template with the smallest matching cost within a preset search area, and uses the corresponding reference block as the prediction block of the current block.

[0197]

[0198] In the prediction step of GPM according to one embodiment of the present invention, a prediction mode can be determined for each partition area.

[0199] In one embodiment, information about the prediction mode may be signaled for each partition region, thereby determining the prediction mode. For example, in the case of a 3-partition GPM, information about the first prediction mode may be signaled for the first partition region, information about the second prediction mode for the second partition region, and information about the third prediction mode for the third partition region.

[0200] In another embodiment, the prediction mode for a predefined partition area may be fixed, and only the prediction mode information for the remaining partition areas may be signaled. For example, in the case of a 3-partition GPM, the prediction mode of a second partition area located between the first and third partition areas may be fixed to an inter mode, and only the first prediction mode information for the first partition area and the third prediction mode information for the third partition area may be signaled.

[0201] According to another embodiment, the prediction mode of each partition region may be determined based on the slice mode of the current block. For example, if the slice mode of the current block is I-slice mode, the prediction mode of the partition region may be determined as either Intra mode or Intra block copy mode. In addition, if the slice mode of the current block is P-slice mode or B-slice mode, the prediction mode of the partition region may be determined as either Inter mode, Intra mode, IBC mode, and IntraTMP mode.

[0202]

[0203] IBC mode is a prediction mode that finds the block most similar to the current block in the current picture through block matching (BM), finds a block vector indicating its spatial location, compares the pixels in the corresponding block with the current block, and encodes and transmits only the difference value. This is evaluated as an effective prediction technique for images such as screen content. However, since the existing IBC does not consider the segmentation information of the GPM, the following embodiment proposes a more efficient IBC encoding that utilizes the segmentation information of the GPM.

[0204] In a case where the prediction mode is determined to be IBC mode in the prediction step of the GPM according to an embodiment of the present invention, a block vector candidate list can be constructed by deriving block vector candidates. In this case, the IBC index (ibc_idx) can be signaled to determine the block vector to be applied to the corresponding partition area from the block vector candidate list.

[0205] Meanwhile, in the prediction stage of GPM, the derivation of block vector candidates in IBC mode can be performed as follows.

[0206] According to one embodiment of the present invention, a block vector candidate may be composed of a block vector of a neighboring block corresponding to the GPM division direction of the current block among neighboring neighboring blocks of the current block. Here, the neighboring neighboring block may be one of the blocks previously decoded based on the current block, and may be set as an upper left, upper right, upper, or left block. Specifically, a block vector referencing a division area of ​​a neighboring block divided identically or similarly to the division direction of the GPM division line, i.e., by an extension line or a related line of a GPM division line, may be composed as a block vector candidate. However, the extension lines or related lines of the GPM division lines do not necessarily need to be connected to each other, and the present invention may be applied even when there is only a mutual correlation between the GPM division lines. Furthermore, even when there is no mutual correlation between the GPM division lines, the division area of ​​another neighboring block may be referenced depending on whether encoding efficiency is improved.

[0207]

[0208] In the case where the prediction mode is determined as an intra mode in the prediction step of the GPM according to an embodiment of the present invention, a detailed intra mode may be determined based on the splitting angle of the GPM splitting line. For example, the detailed intra mode may be determined as any one of a Parallel mode in the same direction as the splitting angle of the GPM splitting line, a Perpendicular mode perpendicular to the splitting angle, a Planar mode, and a specific direction mode derived by calculation based on at least one of a Vertical direction, a Horizontal direction, and a splitting angle.

[0209] Meanwhile, the mode that performs GPM prediction in intra mode can be defined as SGPM (Spatial Geometric Partitioning Mode). When the prediction mode is determined as SGPM, a list of SGPM candidates can be constructed, each consisting of multiple SGPM candidates. Here, an SGPM candidate can represent a combination of a partitioning mode representing a GPM partition line and a detailed intra mode.

[0210] In this case, SGPM candidate information (e.g., SGPM_cand_idx) may be signaled to indicate which SGPM candidate among the SGPM candidate list is to be applied to the current block.

[0211] Additionally, in the SGPM mode, the detailed intra mode can be at least one of the block vectors of the Parallel mode, which is in the same direction as the splitting angle of the GPM splitting line, the Perpendicular mode, which is perpendicular to the splitting angle, the Planar mode, and the Vertical mode, the Horizontal mode, the DIMD or TIMD-based intra mode, and the IBC mode.

[0212]

[0213] FIG. 17 is a diagram for explaining a prediction method of IBC mode and intra mode in a two-part GPM according to one embodiment of the present invention.

[0214] Referring to FIG. 17, the current block (1700) can be divided into a first partition area (C1) and a second partition area (C2) according to a dividing line.

[0215] Here, if the prediction mode of the first partition area (C1) is determined as the IBC mode, the block vector candidate of the first partition area (C1) may include a block vector referencing the partition area R1 of the first reference block (1710), which is a surrounding block divided at the same or similar division angle (Partition_angle) of the GPM division line, as a block vector candidate of the first partition area (C1). In addition, in configuring the block vector candidate list, the block vector referencing R1 may be set to have a relatively high priority among the block vector candidates of the first partition area (C1).

[0216] Alternatively, if the prediction mode of the first partition area (C1) is determined as the IBC mode, the block vector candidate of the first partition area (C1) can be derived based on the partition area (R1) of the first reference block (1710), which is a GPM-encoded neighboring block among the neighboring blocks of the current block (1700).

[0217] Meanwhile, when the prediction mode of the first partition area (C1) is determined as the intra mode, based on the partition angle (Partition_angle) of the GPM partition line, one of the following modes can be selected to perform intra prediction: Parallel_mode (A) corresponding to the same direction as the partition line according to the partition angle, Perpendicular mode (B) corresponding to the direction perpendicular to the partition line, a specific direction mode (C) derived by calculation from the horizontal direction, the vertical direction, and the partition angle, or Planar mode.

[0218] Next, the prediction mode of the second partition area (C2) is determined so that prediction can be performed.

[0219] When the prediction mode of the second partition area (C2) is determined as the intra mode, based on the partition angle (Partition_angle) of the GPM partition line, one of the following modes can be selected to perform intra prediction: Parallel_mode (A') corresponding to the same direction as the partition line according to the partition angle, Perpendicular mode (B') corresponding to the direction perpendicular to the partition line, a specific direction mode (C') derived by calculation from the horizontal direction, the vertical direction, and the partition angle, or Planar mode.

[0220] Meanwhile, if the prediction mode of the second partition area (C2) is determined as the IBC mode, a block vector candidate of the second partition area (C2) may include a block vector referencing the partition area R2 of the first reference block (1710), which is a surrounding block divided at the same or similar division angle (Partition_angle) of the GPM division line, as a block vector candidate of the second partition area (C2). In addition, in configuring the block vector candidate list, the block vector referencing R2 may be set to have a relatively high priority among the block vector candidates of the second partition area (C2).

[0221] As described in the above figure 17, by considering the division direction by GPM, efficient encoding and decoding that reflects the characteristics of the division line that divides multiple blocks in an image while passing through them becomes possible.

[0222]

[0223] FIG. 18 is a diagram for explaining a prediction method of IBC mode and intra mode in a 3-partition GPM according to an embodiment of the present invention.

[0224] Referring to FIG. 18, the current block (1800) can be divided into a first partition area (C1), a second partition area (C2), and a third partition area (C3) according to a dividing line.

[0225] Here, if the prediction mode of the first partition area (C1) is determined as the IBC mode, the block vector candidate of the first partition area (C1) may include a block vector referencing the partition area R1 of the first reference block (1810), which is a surrounding block divided at the same or similar division angle (Partition_angle) of the GPM division line, as a block vector candidate of the first partition area (C1). In addition, in configuring the block vector candidate list, the block vector referencing R1 may be set to have a relatively high priority among the block vector candidates of the first partition area (C1).

[0226] Alternatively, if the prediction mode of the first partition area (C1) is determined as the IBC mode, the block vector candidate of the first partition area (C1) can be derived based on the partition area (R1) of the first reference block (1810), which is a GPM-encoded neighboring block among the neighboring blocks of the current block (1800).

[0227] Meanwhile, when the prediction mode of the first partition area (C1) is determined as the intra mode, based on the partition angle (Partition_angle) of the GPM partition line, one of the following modes can be selected to perform intra prediction: Parallel_mode (A) corresponding to the same direction as the partition line according to the partition angle, Perpendicular mode (B) corresponding to the direction perpendicular to the partition line, a specific direction mode (C) derived by calculation from the horizontal direction, the vertical direction, and the partition angle, or Planar mode.

[0228] Next, the prediction mode of the second partition area (C2) is determined so that prediction can be performed.

[0229] If the prediction mode of the second partition area (C2) is determined as the intra mode, based on the partition angle (Partition_angle) of the GPM partition line, one of the following modes may be selected to perform intra prediction: Parallel_mode (A') corresponding to the same direction as the partition line according to the partition angle, Perpendicular mode (B') corresponding to the direction perpendicular to the partition line, a specific direction mode (C') derived by calculation from the horizontal direction, the vertical direction, and the partition angle, or Planar mode. Here, if prediction is performed in the C' or B' direction prediction mode for the second reference block (1820) rather than A', which is the direction parallel to the partition line for the second partition area (C2), encoding efficiency may be reduced depending on the characteristics of the image. In this case, a restriction condition may be set to automatically select the A' direction prediction mode rather than B' or C', or the operation may be restricted to perform decoding through a separate IBC mode or IntraTMP mode.

[0230] Meanwhile, if the prediction mode of the second partition area (C2) is determined as the IBC mode, a block vector candidate of the second partition area (C2) may include a block vector referencing the partition area R2 of the first reference block (1810), which is a surrounding block divided at the same or similar division angle (Partition_angle) of the GPM division line, as a block vector candidate of the first partition area (C2). In addition, in configuring the block vector candidate list, the block vector referencing R2 may be set to have a relatively high priority among the block vector candidates of the second partition area (C2).

[0231] Next, the prediction mode of the third partition area (C3) is determined so that prediction can be performed.

[0232] If the prediction mode of the third partition area (C3) is determined as the intra mode, based on the partition angle (Partition_angle) of the GPM partition line, one of the Parallel_mode (A'') corresponding to the same direction as the partition line according to the partition angle, the specific direction mode (C'') derived by calculating from the horizontal direction, the vertical direction, and the partition angle, or the Planar mode may be selected to perform intra prediction. Meanwhile, the detailed intra mode indicating the area that has not yet been encoded / decoded may have limited selection. Therefore, the Perpendicular mode corresponding to the direction perpendicular to the partition line may not be selected in the third partition area (C3).

[0233] Meanwhile, if the prediction mode of the third partition area (C3) is determined as the IBC mode, a block vector candidate of the third partition area (C3) may include a block vector referencing the partition area R3 of the first reference block (1810), which is a surrounding block that is divided identically or similarly to the partition angle (Partition_angle) of the GPM partition line, as a block vector candidate of the third partition area (C3). In addition, in configuring the block vector candidate list, the block vector referencing R3 may be set to have a relatively high priority among the block vector candidates of the third partition area (C3).

[0234] As described in the above figure 18, by considering the division direction by GPM, efficient encoding and decoding that reflects the characteristics of the division line that divides multiple blocks in an image while passing through them becomes possible.

[0235] Meanwhile, in Fig. 18, the C2 and C3 regions divided into multiple parts by the GPM may be restricted to perform encoding and decoding in a prediction mode identical to the prediction mode for the partition region of C1, or in a restricted prediction mode derived from the prediction mode for the partition region of C1. In this case, the first prediction mode for at least one partition region (C1) among the multiple-divided GPM regions may be signaled, and the prediction modes of the other partition regions (C2 and C3) may be derived in the same or restricted form from the signaled first prediction mode.

[0236]

[0237] FIG. 19 is a diagram for explaining a method for deriving a block vector candidate by tracking whether IBC encoding is performed according to an embodiment of the present invention.

[0238] Referring to Figure 19, the first partition area (1) of the current block (1900) st If the prediction mode of Partition) is determined to be IBC mode, the first partition area (1 st A block vector candidate of a partition may be composed of a first block vector (BV1) derived from a neighboring block (1901) of a predefined position of a current block (1900), a second block vector (BV2) derived from the first block (1910) when the first block (1910) indicated by the first block vector (BV1) is encoded with IBC, and a third block vector (BV3) indicating the second block (1920) indicated by the first block vector (BV1). In FIG. 19, the neighboring block (1901) of the predefined position is described as a block adjacent to the left of the current block (1900), but may be set to any one of the blocks adjacent to the lower left, upper left, upper, and upper right.

[0239] Meanwhile, the IBC tracking mode flag may be separately signaled to indicate the activation of a method for deriving block vector candidates by tracking whether IBC encoding is performed, as shown in FIG. 19.

[0240] Meanwhile, the method of deriving block vector candidates by tracking whether IBC encoding is performed, as shown in FIG. 19, can be limited to the current picture, current tile, current subpicture, or current slice. In other words, block vector candidates can be derived by tracking whether IBC encoding is performed only in a limited area.

[0241] Meanwhile, a method of deriving a block vector candidate by tracking whether IBC encoding is performed, as in Fig. 19, may be limited to tracking N or fewer times. Here, N may be a positive integer and a value predefined in the encoder and decoder.

[0242]

[0243] FIG. 20 is a diagram illustrating a method for deriving block vector candidates by tracking whether GPM-IBC encoding is performed according to an embodiment of the present invention. Here, GPM-IBC may mean an IBC prediction mode in GPM.

[0244] Referring to Figure 20, the first partition area (1) of the current block (2000) st If the prediction mode of Partition) is determined to be IBC mode, the first partition area (1 stA block vector candidate of a partition may be composed of a first block vector (BV1) derived from a neighboring block (2001) of a predefined position of a current block (2000), a second block vector (BV2) derived from a first partition area of ​​the first block (2010) when the first block (2010) indicated by the first block vector (BV1) is encoded with GPM-IBC, and a third block vector (BV3) indicating a second block (2020) indicated by the second block vector (BV2). In FIG. 20, the neighboring block (2001) of the predefined position is described as a block adjacent to the left of the current block (2000), but may be set to any one of the blocks adjacent to the lower left, upper left, upper, and upper right.

[0245] Meanwhile, the IBC tracking mode flag may be separately signaled to indicate the activation of a method for deriving block vector candidates by tracking whether GPM-IBC encoding is performed, as shown in FIG. 20.

[0246] Meanwhile, the method of deriving block vector candidates by tracking whether GPM-IBC encoding is performed, as shown in FIG. 20, can be limited to the current picture, current tile, current subpicture, or current slice. In other words, block vector candidates can be derived by tracking whether GPM-IBC encoding is performed only in a limited area.

[0247] Meanwhile, the method of deriving block vector candidates by tracking whether IBC encoding is performed, as in Fig. 20, may be limited to tracking N or fewer times. Here, N may be a positive integer and a value predefined in the encoder and decoder.

[0248] Meanwhile, FIG. 20 illustrates an embodiment in which the current block (2000) is divided by a 3-partition GPM, but the block vector candidate derivation method according to the embodiment can be equally applied even in the case in which the current block (2000) is divided by a 2-partition GPM or another division mode.

[0249]

[0250] -Blending stage-

[0251] According to one embodiment of the present invention, the blending step of the GPM can generate a prediction block of the current block by weighting the prediction values ​​of multiple partition regions. Specifically, the weights used in the blending step of the GPM can be determined based on the distance from the dividing line.

[0252] For a two-part GPM, weights based on one dividing line are determined and weighted summation can be performed.

[0253] In the case of a 3-partition GPM, weights may be determined for each of the two dividing lines. Specifically, a first weight based on the first GPM dividing line and a second weight based on the second GPM dividing line may be determined, and a weighted sum may be performed.

[0254] Meanwhile, the weights used in the blending step of the GPM according to one embodiment of the present invention may be determined based on the blending region. Here, the size of the blending region may be determined based on the block size or may be determined by signaling blending region information.

[0255] FIG. 21 is a diagram illustrating a method for determining GPM weights based on multiple mixed regions according to one embodiment of the present invention.

[0256] Figure 21 shows the weight W0 for the first mixed region (-τ ~ τ) and the weight W1 for the second mixed region (-2τ ~ 2τ) in a two-partition GPM. Here, W0 is the weight for the first partition region, and the weight W1 for the second partition region can be determined by subtracting W0 from the maximum weight value. In Figure 21, the maximum weight value is set to 32.

[0257] In a three-part GPM according to one embodiment of the present invention, a first mixed region for a first GPM dividing line and a second mixed region for a second GPM dividing line are determined, and a first weight for the first mixed region and a second weight for the second mixed region are determined to perform weighted summation. Here, the first mixed region and the second mixed region may be determined to have the same size. Alternatively, separate mixed region information may be signaled so that the first mixed region and the second mixed region may be determined to have different sizes.

[0258] Meanwhile, in one embodiment of the present invention, the current block may correspond to a partitioning type based on a combination of prediction modes in which all of a plurality of partition areas are determined as intra prediction modes, which may be defined as SGPM (Spatial Geometric Partitioning Mode). When the prediction mode is determined as SGPM, the encoder or decoder may construct an SGPM candidate list composed of a plurality of SGPM candidates and select an optimal SGPM candidate representing a partitioning line from among them. Here, the SGPM candidate may represent a combination of a partitioning mode representing a SGPM partitioning line and a detailed intra mode.

[0259] In SGPM mode, a list of SGPM candidates is constructed, and each candidate in the SGPM candidate list can be constructed by combining at least one partitioning mode and two or more intra prediction modes. At this time, SGPM candidate index information (e.g., SGPM_cand_idx) is signaled, and the SGPM candidate index information can indicate an SGPM candidate corresponding to a GPM partitioning line to be applied to the current block among the SGPM candidate list.

[0260] In one embodiment, the candidate list may generate a total of 16 candidates, and each candidate may be composed of a combination of one partition mode and two corresponding intra prediction modes, whereby the possible partition modes may be limited to 26 and the intra modes may be limited to 9.

[0261] Additionally, the candidate list in SGPM mode can be sorted in the most appropriate order based on template-based SAD (Sum of Absolute Difference) calculation.

[0262] In addition, in the SGPM mode, the detailed intra mode of each segmented region may be at least one of a Parallel mode in the same direction as the segmentation angle of the GPM segmentation line, a Perpendicular mode in the same direction as the segmentation angle, a Planar mode, a Vertical mode, a Horizontal mode, a TIMD-based intra mode, and a block vector of an IBC mode. In addition, a list of intra prediction mode candidates may be constructed for each segmented region.

[0263]

[0264] In another embodiment according to the present invention, an applicable SGPM mode may be applied depending on the partition type and block size. In the case of the SGPM mode of the 2 partition types, 4<=width<=64, 4<=height<=64, width <height*8, height<width*8 및 width*height> =32 may be limited to the applicable block size. Furthermore, in the case of SGPM mode of 3-partition type, the applicable block size may be limited to 8<=width<=128, 8<=height<=128, and width*height>=128.

[0265] Alternatively, in another embodiment, the SGPM mode partitioning may be limitedly determined for blocks located at picture boundaries. For example, whether SGPM is applied to a block located at the picture boundary may be limitedly determined based on the size of the current block described above.

[0266] According to another embodiment of the present invention, whether to apply the SGPM mode can be determined based on the SGPM mode flag included in the SPS, PPS, or Slice header. In addition, the PPS can include a blending flag that can determine whether to blend at the boundary between two divided regions, and the blending region can have its range determined according to a predetermined distance (distance from the dividing line) defined based on the division boundary. In addition, the predetermined distance can be adjusted or changed according to the block size, and blending between divided regions can be processed in the blending region with a weight according to the distance reflected.

[0267] In another embodiment, the blending parameters can be adjusted depending on the size of the current block, whether the picture boundary is located, or the splitting direction of the block. For example, if the block size is less than a certain size and the splitting mode is horizontal or vertical splitting, blending itself can be disabled, and if the block size is less than a certain size and the splitting mode is neither horizontal nor vertical splitting, the blending region range (distance from the splitting boundary) can be fixed to a specific value to limit blending to a limited range. A separate GPM prediction mode or GPM restriction flag indicating such blending restriction can be separately designated and signaled. This can suppress the phenomenon of prediction accuracy reduction due to excessive blending in cases where pixels are sharp and edges are distinct, such as in a screen content image.

[0268]

[0269] According to another embodiment of the present invention, the current block can be encoded in a GPM mode based on intra-inter prediction, where at least one of the plurality of partition regions is in an intra prediction mode and the other is in an inter prediction mode.

[0270] If the current block is in the GPM mode based on intra-inter prediction, the encoder can signal the intra-inter prediction GPM mode flag in units of coding units to indicate whether to encode, and the decoder can determine the prediction mode of the current block as the GPM mode based on intra-inter prediction by decoding the flag in units of coding units. In addition, if the current block is determined to be in the GPM mode based on intra-inter prediction, the decoder can combine the intra-prediction mode candidates and the inter-prediction mode candidates for each of the divided partitions to construct a list of intra-inter prediction mode candidate pairs.

[0271] To construct a list of prediction mode candidates based on each candidate pair, integer blending weight matrices W0 and W1 can be derived based on the template region located around the current block. At this time, W0(x, y) can be calculated as W0(x, y) = ax + by + c, and W1(x, y) can be set to 1 - W0(x, y). Here, variables a, b, and c can be determined as optimized parameters through a regression equation that minimizes the Mean Square Error (MSE).

[0272] The derived candidate pair list is sorted according to template cost. Consequently, only the index of the final selected pair is signaled, allowing one of the intra-inter prediction mode candidate pairs to be identified as the intra-inter prediction mode of the current block. The intra-prediction partition can be restored according to the intra-prediction process. For the inter-prediction partition, Overlapped Block Motion Compensation (OBMC) and Luma Mapping with Chroma Scaling (LMCS) can be applied after motion compensation, and the final prediction block is generated by a weighted sum using W0 and W1.

[0273] When the LMCS feature is enabled, when calculating the regression equation that determines the parameters of the integer blending weight matrix, the intra-prediction samples exist in the LMCS domain, the inter-prediction samples exist in the original domain, and the reconstructed samples are mapped back to the original domain, so a domain mismatch may occur between the derivation of the blending matrix and the final sample blending.

[0274] According to one embodiment of the present invention, by performing the derivation of a regression-based blending weight matrix and the generation of a final prediction block in the same domain, distortion due to mismatch between domains that may occur during the prediction process can be prevented. To this end, either a method of performing both regression equation calculation and prediction sample blending in the reconstructed pixel domain or a method of performing both in the LMCS (Luma Mapping with Chroma Scaling) domain can be selectively applied, and one of the methods can be determined by transmitting a separate encoding condition or a separate flag.

[0275] When the template matching-based GPM segmentation mode is applied, the blending process can only be performed in the region of the current block excluding the template region containing the entire extended segmentation line.

[0276]

[0277] Fig. 22 is a flowchart illustrating an image decoding method according to an embodiment of the present invention. The image decoding method of Fig. 22 can be performed by a decoder.

[0278] The decoder can derive a GPM dividing line (S2210). Here, the GPM dividing line may be a single straight line connecting the GPM dividing line of the current block and the adjacent neighboring block.

[0279] According to one embodiment, the GPM dividing line may be derived based on the GPM dividing line of the neighboring block. Specifically, the neighboring block may be indicated by GPM reference block information obtained from the bitstream. The method of deriving the GPM dividing line based on the GPM dividing line of the neighboring block has been described in detail with reference to FIGS. 15 and 16, and thus a redundant description thereof will be omitted.

[0280] According to another embodiment, the GPM dividing line may be derived in units of GPM group blocks including the current block. Specifically, the GPM dividing line may be derived based on GPM dividing line information for the GPM group block obtained from the bitstream.

[0281] The GPM segmentation line information for the above GPM group block may include segmentation angle information and distance information based on the midpoint of the GPM group block, or segmentation angle information and distance information based on the midpoint of any block within the GPM group block. The method for deriving a GPM segmentation line based on signaled GPM segmentation line information has been described in detail with reference to FIGS. 13 and 14, and thus a redundant description thereof will be omitted.

[0282] Meanwhile, the GPM dividing line may include multiple dividing lines.

[0283] Meanwhile, the current block may be in IBC (Intra Block Copy) mode. That is, when the current block is in IBC mode, the GPM dividing line may be a single straight line connecting the GPM dividing line of a neighboring block adjacent to the current block.

[0284] Meanwhile, the GPM division line can be derived based on a list of GPM division mode candidates sorted according to the template matching cost of the GPM division mode candidates.

[0285] Specifically, the template matching cost of a GPM partition mode candidate is calculated based on a GPM candidate partition line corresponding to the GPM partition mode candidate, and the GPM candidate partition line may be a single straight line extending to the area of ​​the neighboring block.

[0286] And, the decoder can divide the current block into multiple partition areas based on the GPM dividing line (S2220).

[0287] In addition, the decoder can determine a prediction mode for each of the multiple partition areas (S2230). Specifically, the prediction mode can be determined as any one of the intra mode, inter mode, and IBC (Intra Block Copy) mode.

[0288] Meanwhile, if the above prediction mode is IBC mode, a block vector candidate can be derived based on the GPM dividing line. The derivation of the block vector candidate has been described in detail with reference to FIGS. 17 to 20, and thus a redundant description will be omitted.

[0289] Meanwhile, if the prediction mode is an intra mode, a detailed intra mode can be derived based on the GPM dividing line. Specifically, the detailed intra mode can be determined as any one of a Parallel mode in the same direction as the dividing angle of the GPM dividing line, a Perpendicular mode perpendicular to the dividing angle, a Planar mode, and a specific directional mode derived by calculation based on at least one of a Vertical direction, a Horizontal direction, and a dividing angle.

[0290] And, the decoder can generate a prediction block of the current block by weighting the prediction values ​​for a plurality of partition areas derived based on each determined prediction mode (S2240).

[0291]

[0292] Figure 23 is a flowchart illustrating an image decoding method according to another embodiment of the present invention. The image decoding method of Figure 23 can be performed by a decoder.

[0293] The decoder can determine the GPM split type (S2310). Here, the GPM split type can be determined as either a two-partition type or a three-partition type.

[0294] According to one embodiment, the GPM partition type may be determined based on the size of the current block. Specifically, the GPM partition type may be determined as a 2-partition type when the size of the current block is within a predefined range. Here, the predefined range may be a range of 8x8 or more and 64x64 or less.

[0295] Additionally, the GPM segmentation type may be determined based on whether it is adjacent to a picture boundary. The determination of the GPM segmentation type based on whether it is adjacent to a picture boundary has been described in detail with reference to FIG. 10, and thus a redundant description thereof will be omitted.

[0296] And, the decoder can divide the current block into multiple partition areas according to the GPM division type (S2320). Specifically, step S2320 can include the step of signaling GPM division line information according to the division type and the step of dividing the current block into multiple partition areas based on the GPM division line information. Here, the GPM division line information can indicate a division line set composed of division angle information and distance information. The table including multiple division line sets has been described above with reference to FIG. 11, and thus a redundant description thereof will be omitted.

[0297] According to one embodiment, when the above-mentioned division type is a three-division type, first GPM division line information and second GPM division line information may be signaled.

[0298] According to another embodiment, when the division type is a three-division type, the first GPM division line information and the difference value between the first GPM division line information and the second GPM division line information may be signaled.

[0299] According to another embodiment, when the above-mentioned partition type is a three-partition type, first GPM partition line information and partition area symmetry information may be signaled. In this case, the first GPM partition line and the second GPM partition line may be determined based on the first GPM partition line information.

[0300] In addition, the decoder can determine a prediction mode for each of the multiple partition areas (S2330). Specifically, the prediction mode can be determined as any one of the intra mode, inter mode, and IBC (Intra Block Copy) mode.

[0301] Meanwhile, if the above prediction mode is IBC mode, a block vector candidate can be derived based on the GPM dividing line. The derivation of the block vector candidate has been described in detail with reference to FIGS. 17 to 20, and thus a redundant description will be omitted.

[0302] Meanwhile, if the prediction mode is an intra mode, a detailed intra mode can be derived based on the GPM dividing line. Specifically, the detailed intra mode can be determined as any one of a Parallel mode in the same direction as the dividing angle of the GPM dividing line, a Perpendicular mode perpendicular to the dividing angle, a Planar mode, and a specific directional mode derived by calculation based on at least one of a Vertical direction, a Horizontal direction, and a dividing angle.

[0303] And, the decoder can generate a prediction block of the current block by weighting the prediction values ​​for a plurality of partition areas derived based on each determined prediction mode (S2340).

[0304]

[0305] According to an embodiment of the present invention, a decoder can determine a GPM prediction mode according to separate signaling information or encoding information. Whether a current block is encoded in a GPM mode based on an intra-inter prediction mode can be signaled through at least one of a flag per Sequence Parameter Set (SPS) unit or a flag per CU unit. In addition, whether to apply a GPM mode based on an intra-inter prediction mode can be selectively determined depending on which slice type (e.g., I, B, P) a block encoded in a GPM mode based on an intra-inter prediction mode is.

[0306] Meanwhile, considering the efficiency and complexity of video compression, it is possible to determine whether to apply the GPM mode based on the intra-inter prediction mode or the range of the segmentation mode. For example, if the quantization parameter (QP) is greater than a threshold (e.g., QP > 37) or the current block, slice, or picture is coded in the low delay mode, the GPM mode based on the intra-inter prediction mode may be disabled or some segmentation modes may be restricted.

[0307]

[0308] The current block can be encoded or decoded according to the above GPM process. In addition, the bitstream generated by the encoder according to the above GPM process can be stored on a recording medium or transmitted externally.

[0309] Specifically, a bitstream can be generated by a video encoding method to which an embodiment of the present invention is applied, and a streaming server can temporarily store the bitstream during the process of transmitting or receiving the bitstream.

[0310]

[0311] According to one embodiment of the present invention, a GPM can improve encoding and decoding performance by enabling the division of adjacent multiple blocks using a GPM division line that has already been decrypted.

[0312] In addition, the GPM according to one embodiment of the present invention can optimize encoding and decoding performance according to each image characteristic by enabling limited sharing of GPM division lines according to GPM group block or GPM reference block information.

[0313] In addition, the GPM according to one embodiment of the present invention can improve subjective image quality during encoding and decoding by applying various prediction modes to each partition area and performing adaptive processing and signaling accordingly.

[0314] In addition, the GPM according to one embodiment of the present invention can improve encoding and decoding performance by conditionally applying two or more division lines to enable three or more divisions.

[0315] In addition, the GPM according to one embodiment of the present invention can optimize encoding and decoding performance according to each image characteristic by allowing the number of division lines to be applied in a limited manner according to block size conditions.

[0316]

[0317] The above embodiments can be performed in the same or corresponding manner in the encoder and decoder. The order of applying the above embodiments can be the same in the encoder and decoder, or they can be performed in the encoder in the reverse order of the decoder.

[0318] The above embodiments can be performed for each of the luminance and chrominance signals, and the above embodiments can be performed equally for the luminance and chrominance signals.

[0319] The embodiments of the present invention described above may be implemented in the form of program commands that can be executed through various computer components and recorded on a computer-readable recording medium. The computer-readable recording medium may include program commands, data files, data structures, etc., either singly or in combination. The program commands recorded on the computer-readable recording medium may be those specially designed and configured for the present invention or may be those known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and hardware devices specially configured to store and execute program commands, such as ROMs, RAMs, and flash memories. Examples of program commands include not only machine language codes generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter, etc. The hardware devices may be configured to operate as one or more software modules to perform processing according to the present invention, and vice versa.

[0320] Although the present invention has been described above with specific details such as specific components and limited examples and drawings, these are provided only to help a more general understanding of the present invention, and the present invention is not limited to the above examples, and those with ordinary knowledge in the technical field to which the present invention pertains can make various modifications and variations from this description.

[0321] Therefore, the idea of ​​the present invention should not be limited to the embodiments described above, and all things that are modified equally or equivalently to the following claims as well as the claims are considered to fall within the scope of the idea of ​​the present invention.

[0322]

[0323]

[0324] The present invention can be used in a video encoding device, a video decoding device, a recording medium storing a bitstream, and a bitstream transmission device.

Claims

1. Step of deriving GPM (Geometric Partitioning Mode) division line; A step of dividing the current block into multiple partition areas based on the above GPM dividing line; a step of determining a prediction mode for each of the plurality of partition areas; and A step of generating a prediction block of the current block by weighting the prediction values ​​for the plurality of partition areas derived based on the above-determined prediction modes, An image decoding method, characterized in that the above GPM dividing line is a single straight line connecting the GPM dividing line of a neighboring block adjacent to the current block.

2. In paragraph 1, An image decoding method, characterized in that the above GPM dividing line is derived based on the GPM dividing line of the neighboring block.

3. In paragraph 2, An image decoding method, characterized in that the above neighboring block is indicated by GPM reference block information obtained from a bitstream.

4. In paragraph 1, An image decoding method characterized in that the above GPM dividing line is derived in units of GPM group blocks including the current block.

5. In paragraph 4, An image decoding method, characterized in that the above GPM dividing line includes a plurality of dividing lines.

6. In paragraph 4, An image decoding method, characterized in that the above GPM division line is derived based on GPM division line information for a GPM group block obtained from a bitstream.

7. In paragraph 6, An image decoding method, characterized in that the GPM division line information for the above GPM group block includes division angle information and distance information based on the center of the above GPM group block.

8. In paragraph 6, An image decoding method, characterized in that the GPM division line information for the above GPM group block includes division angle information and distance information based on the center of any one block within the above GPM group block.

9. In paragraph 1, An image decoding method characterized in that the current block is in IBC (Intra Block Copy) mode.

10. In paragraph 1, An image decoding method, characterized in that the above prediction mode is determined as one of intra mode, inter mode, and IBC mode.

11. In paragraph 10, An image decoding method characterized in that a block vector candidate is derived based on a GPM division line when the above prediction mode is IBC mode.

12. In paragraph 10, An image decoding method characterized in that, when the above prediction mode is an intra mode, a detailed intra mode is derived based on a GPM division line.

13. In paragraph 1, An image decoding method, characterized in that the above GPM division line is derived based on a list of GPM division mode candidates sorted according to the template matching cost of the GPM division mode candidates.

14. In paragraph 13, The template matching cost of the above GPM division mode candidate is calculated based on the GPM candidate division line corresponding to the GPM division mode candidate, An image decoding method, characterized in that the above GPM candidate dividing line is a single straight line extending to the area of ​​the neighboring block.

15. GPM (Geometric Partitioning Mode) step of deriving a division line; A step of dividing the current block into multiple partition areas based on the above GPM dividing line; a step of determining a prediction mode for each of the plurality of partition areas; and A step of generating a prediction block of the current block by weighting the prediction values ​​for the plurality of partition areas derived based on the above-determined prediction modes, An image encoding method, characterized in that the above GPM dividing line is a single straight line connecting the GPM dividing line of a neighboring block adjacent to the current block.

16. In a computer-readable recording medium storing a bitstream generated by a video encoding method, The above image encoding method is, Step of deriving a GPM (Geometric Partitioning Mode) dividing line; A step of dividing the current block into multiple partition areas based on the above GPM dividing line; a step of determining a prediction mode for each of the plurality of partition areas; and A step of generating a prediction block of the current block by weighting the prediction values ​​for the plurality of partition areas derived based on the above-determined prediction modes, A recording medium characterized in that the above GPM dividing line is a single straight line connecting the GPM dividing line of a neighboring block adjacent to the current block.

17. A transmission method for transmitting a bitstream generated by a video encoding method, A step of encoding an image based on the above image encoding method; and A step of transmitting a bitstream including the encoded image, The above image encoding method is, Step of deriving a GPM (Geometric Partitioning Mode) dividing line; A step of dividing the current block into multiple partition areas based on the above GPM dividing line; a step of determining a prediction mode for each of the plurality of partition areas; and A step of generating a prediction block of the current block by weighting the prediction values ​​for the plurality of partition areas derived based on the above-determined prediction modes, A transmission method characterized in that the above GPM dividing line is a single straight line connecting the GPM dividing line of a neighboring block adjacent to the current block.

Citation Information

Patent Citations

  • Methods and apparatus for adaptive geometric partitioning for video decoding

    KR101526914B1

  • Methods and apparatus for video encoding and decoding geometrically partitioned super blocks

    KR101579394B1

  • Anode for secondary battery, manufacturing method thereof, and lithium secondary battery including the same

    KR1020260033254A

  • Method for calculating facial muscle symmetry index and its system

    KR1020260035408A

  • KR20240170502A