Image encoding / decoding method and apparatus, and recording medium having bitstream stored therein
Geometric segmentation and weighted sum prediction of video blocks improve encoding/decoding efficiency for high-resolution and stereoscopic video, addressing the challenges of existing compression technologies.
Patent Information
- Application Number
- PCT/KR2025/012149
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-08-12
- Filing Date
- 2025-08-12
- Publication Date
- 2026-02-19
AI Technical Summary
Existing video compression technologies struggle to efficiently encode and decode high-resolution and stereoscopic video content, particularly in dividing and predicting blocks for accurate compression.
The method involves geometric segmentation of current blocks into sub-regions, generating prediction blocks through weighted sums of sub-region prediction blocks, and constructing intra prediction mode candidates for each sub-region, with options for inter- and intra-prediction methods.
This approach enhances compression performance by enabling more accurate prediction and improved encoding/decoding efficiency for high-resolution and stereoscopic video content.
Smart Images

Figure KR2025012149_19022026_PF_FP_ABST
Abstract
Description
Video encoding / decoding method and device, and recording medium storing bitstream
[0001] The present invention relates to an encoder and a decoder, and more particularly, to a method and device for encoding and decoding for generating a prediction block of a current block.
[0002] The market demand for high-resolution video is growing, necessitating technologies capable of efficiently compressing high-resolution images. To address this market need, the ISO / IEC's Moving Picture Expert Group (MPEG) and the ITU-T's Video Coding Expert Group (VCEG) jointly formed the Joint Collaborative Team on Video Coding (JCT-VC), which completed development of the HEVC (High Efficiency Video Coding) video compression standard in January 2013 and has been actively conducting research and development on next-generation compression standards.
[0003] Technologies applied to video compression can broadly include intra-prediction, inter-prediction, transform, quantization, entropy coding, and / or in-loop filters. Meanwhile, as demand for high-resolution video increases, so does the demand for stereoscopic video content as a new video service. Accordingly, active discussions are underway on video compression technologies to effectively provide high-resolution and ultra-high-resolution stereoscopic video content.
[0004] The present disclosure seeks to provide a method and device for deriving geometric segmentation information of a current block when geometric segmentation-based prediction is performed on the current block.
[0005] The present disclosure seeks to provide a method and device for dividing a current block into a plurality of sub-regions.
[0006] The present disclosure provides a method and apparatus for constructing a list of intra prediction mode candidates used for prediction of multiple sub-regions of a current block.
[0007] The present disclosure provides a method and device for generating a prediction block of a current block by weighting prediction blocks of each of a plurality of sub-regions of the current block.
[0008] The present disclosure provides a method and device for determining a region in which a weighted sum of prediction blocks of each of a plurality of sub-regions is performed.
[0009] The present disclosure seeks to provide a method and device for generating a prediction block of a current block when geometric segmentation-based prediction is not performed on the current block.
[0010] The image decoding method and device according to the present disclosure can determine whether to perform geometric segmentation-based prediction for a current block, generate a prediction block of the current block based on the determination, and reconstruct the current block based on the prediction block.
[0011] In the image decoding method and device according to the present disclosure, when geometric segmentation-based prediction is performed on the current block, the prediction block of the current block can be generated based on deriving geometric segmentation control information of the current block and dividing the current block into a plurality of sub-regions based on the geometric segmentation control information. Here, the geometric segmentation control information can include at least one of geometric segmentation information and segmentation region information.
[0012] In the image decoding method and device according to the present disclosure, the geometric segmentation information may include at least one of angle information or offset information of a geometric segmentation line, and the segmentation area information may include information for setting the plurality of sub-areas based on the geometric segmentation line.
[0013] The video decoding method and device according to the present disclosure can configure a list of intra prediction mode candidates used for prediction of the plurality of sub-regions. Here, the list of intra prediction mode candidates can include at least one of a fixed prediction mode, a spatial adjacent prediction mode, or a spatial non-adjacent prediction mode.
[0014] In the image decoding method and device according to the present disclosure, the fixed prediction mode may include at least one of a directional prediction mode perpendicular to a geometric segmentation line derived based on the geometric segmentation information, a directional prediction mode horizontal to the geometric segmentation line, a PAETH mode, or a smooth mode.
[0015] In the image decoding method and device according to the present disclosure, the spatial adjacent prediction mode or the spatial non-adjacent prediction mode can be determined based on at least one of the width or height of the current block.
[0016] The video decoding method and device according to the present disclosure can generate a prediction block for each of the plurality of sub-regions based on the intra prediction mode candidate list, and can weight-sum the prediction blocks based on weighted sum information to generate a prediction block of the current block. Here, the weighted sum information can include at least one of information about the region where the weighted sum is performed or a weight.
[0017] In the image decoding method and device according to the present disclosure, the area where the weighted sum is performed can be determined based on at least one of the size of the current block, a geometric division line derived based on the geometric division information, or the plurality of sub-areas set based on the division area information.
[0018] In the image decoding method and device according to the present disclosure, the area where the weighted sum is performed can be determined based on the result of comparing the size of the current block with a predetermined size, and the size of the current block can mean at least one of the width, height, or aspect ratio of the width and height of the current block. Here, the predetermined size can be a size of 16 in width and 16 in height.
[0019] In the video decoding method and device according to the present disclosure, when geometric segmentation-based prediction is not performed on the current block, the current block can be generated based on deriving a first intra prediction mode and a second intra prediction mode of the current block, generating a first prediction block and a second prediction block based on the first intra prediction mode and the second intra prediction mode, and generating a prediction block of the current block by weighting the first prediction block and the second prediction block.
[0020] In the image decoding method and device according to the present disclosure, the first intra prediction mode may be any one of a DC mode, a vertical mode, a horizontal mode, a smooth mode, a mode having a directionality of 45 degrees, or a mode having a directionality of 135 degrees, and the second intra prediction mode may be derived based on the first intra prediction mode.
[0021] In the video decoding method and device according to the present disclosure, the weight for the weighted sum may include at least one of a first weight applied to the first prediction block or a second weight applied to the second prediction block, and the weight may be derived based on the first intra prediction mode.
[0022] The video encoding method and device according to the present disclosure can determine whether to perform geometric segmentation-based prediction for a current block, generate a prediction block of the current block based on the determination, and derive a residual block of the current block based on the prediction block.
[0023] A computer-readable storage medium according to the present disclosure can store a bitstream encoded by the image encoding method.
[0024] The bitstream transmission method and device according to the present disclosure can transmit a bitstream generated by the image encoding method.
[0025] According to the present disclosure, by generating a prediction block of a current block through a weighted sum of prediction blocks generated based on a plurality of sub-regions divided based on geometric division information, more efficient prediction becomes possible, thereby improving the compression performance of a decoder / encoder.
[0026] According to the present disclosure, by constructing a list of intra prediction mode candidates used for prediction of multiple sub-regions of a current block, more accurate prediction becomes possible, thereby improving the compression performance of a decoder / encoder.
[0027] According to the present disclosure, by dividing a current block into a plurality of sub-regions based on geometric segmentation information or segmentation area information, more accurate prediction is possible, thereby improving the compression performance of a decoder / encoder.
[0028] FIG. 1 is a block diagram showing an image encoding device according to the present disclosure.
[0029] FIG. 2 is a block diagram showing an image decoding device according to the present disclosure.
[0030] FIG. 3 is a flowchart illustrating a method for generating and restoring a prediction block of a current block according to the present disclosure.
[0031] FIG. 4 is a drawing showing an example of the angle and offset of a geometric division line according to the present disclosure.
[0032] FIG. 5 is a diagram showing an example of a sub-region of a current block according to the present disclosure.
[0033] FIG. 6 is a diagram illustrating an example of a surrounding reference block used to construct an intra prediction mode candidate list used for prediction of multiple sub-regions according to the present disclosure.
[0034] FIG. 7 and FIG. 8 are diagrams showing an example of an area in which weighted summation according to the present disclosure is performed.
[0035] Figure 9 is a diagram showing an example of weights used in weighted summation performed when geometric segmentation-based prediction is not performed.
[0036] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings attached to this specification so that those skilled in the art can easily implement the present invention. However, the present invention may be implemented in various different forms and is not limited to the embodiments described herein. In addition, in the drawings, parts irrelevant to the description have been omitted to clearly explain the present invention, and similar parts have been designated with similar reference numerals throughout the specification.
[0037] Throughout this specification, when a part is said to be 'connected' to another part, this includes not only cases where they are directly connected, but also cases where they are electrically connected with another element in between.
[0038] Additionally, whenever a part throughout this specification is said to "include" a component, this does not mean that other components are excluded, but rather that other components may be included, unless specifically stated otherwise.
[0039] Additionally, while terms such as "first," "second," etc. may be used to describe various components, these components should not be limited by these terms. These terms are used solely to distinguish one component from another.
[0040] Additionally, in the embodiments of the devices and methods described herein, some components of the devices or some steps of the methods may be omitted. Furthermore, the order of some components of the devices or some steps of the methods may be changed. Furthermore, other components or other steps may be inserted into some components of the devices or some steps of the methods.
[0041] The components shown in the embodiments of the present invention are depicted independently to represent different characteristic functions, and this does not mean that each component is composed of separate hardware or a single software component. That is, each component is described by listing each component for convenience of explanation, and at least two of the components may be combined to form a single component, or a single component may be divided into multiple components to perform a function. 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.
[0042] First, the terms used in this application are briefly explained as follows.
[0043] The decoding device (Video Decoding Apparatus) described below may be a device included in a server terminal such as a civilian security camera, a civilian security system, a military security camera, a military security system, a personal computer (PC), a laptop computer, a portable multimedia player (PMP), a wireless communication terminal, a smart phone, a TV application server, a service server, etc., and may refer to various devices including user terminals such as various devices, communication devices such as a communication modem for communicating with a wired or wireless communication network, a memory for storing various programs and data for decoding a video or predicting between or within a screen for decoding, and a microprocessor for executing a program for calculation and control.
[0044] In addition, an image encoded into a bitstream by an encoder can be transmitted to an image decoding device through wired or wireless communication networks such as the Internet, a local area network, a wireless LAN, a WiBro network, a mobile communication network, etc. in real time or non-real time, or through various communication interfaces such as a cable or a universal serial bus (USB), and can be decoded, restored into an image, and played back. Alternatively, the bitstream generated by the encoder can be stored in memory. The memory can include both volatile memory and non-volatile memory. In this specification, the memory can be expressed as a recording medium that stores a bitstream.
[0045] Typically, a video may be composed of a series of pictures, and each picture may be divided into coding units such as blocks. In addition, those skilled in the art to which this embodiment pertains will understand that the term "picture" described below may be replaced with other terms having equivalent meanings, such as "image" or "frame." In addition, those skilled in the art to which this embodiment pertains will understand that the term "coding unit" may be replaced with other terms having equivalent meanings, such as "unit block" or "block."
[0046] Hereinafter, embodiments of the present invention will be described in more detail with reference to the attached drawings. In describing the present invention, duplicate descriptions of identical components will be omitted.
[0047] Fig. 1 is a block diagram illustrating a video encoding device according to the present invention. Referring to Fig. 1, a conventional video encoding device (100) may include a picture segmentation unit (110), a prediction unit (120, 125), a transformation unit (130), a quantization unit (135), a rearrangement unit (160), an entropy encoding unit (165), an inverse quantization unit (140), an inverse transformation unit (145), a filter unit (150), and a memory (155).
[0048] The picture segmentation unit (110) can segment the input picture into at least one processing unit. At this time, the processing unit may be a prediction unit (PU), a transform unit (TU), or a coding unit (CU). In the following embodiments of the present invention, the coding unit may be used to mean a unit that performs encoding or a unit that performs decoding.
[0049] A prediction unit may be divided into at least one square or rectangular shape of the same size within a single coding unit, or may be divided such that one prediction unit among the divided prediction units within a single coding unit has a different shape and / or size from another prediction unit. When a prediction unit that performs intra prediction based on a coding unit is generated and is not the minimum coding unit, intra prediction can be performed without being divided into a plurality of NxN prediction units.
[0050] The prediction unit (120, 125) may include an inter prediction unit (120) that performs inter prediction or inter-screen prediction, and an intra prediction unit (125) that performs intra prediction or intra-screen prediction. It may determine whether to use inter prediction or intra prediction for a prediction unit, and determine specific information (e.g., intra prediction mode, motion vector, reference picture, etc.) according to each prediction method. A residual value (residual block) between the generated prediction block and the original block may be input to the transformation unit (130). In addition, prediction mode information, motion vector information, etc. used for prediction may be encoded together with the residual value by the entropy encoding unit (165) and transmitted to the decoder. However, when the motion information derivation technique on the decoder side according to the present invention is applied, the encoder does not generate the prediction mode information, motion vector information, etc., and therefore the corresponding information is not transmitted to the decoder. On the other hand, it is possible to signal and transmit information indicating that motion information is to be derived and used from the decoder side and information about the technique used to derive the motion information from the encoder.
[0051] The inter prediction unit (120) may predict a prediction unit based on information of at least one picture among the previous or subsequent pictures of the current picture, and in some cases, may predict a prediction unit based on information of a portion of an encoded region within the current picture. The inter prediction unit (120) may include a reference picture interpolation unit, a motion prediction unit, and a motion compensation unit.
[0052] The reference picture interpolation unit can receive reference picture information from the memory (155) and generate pixel information less than an integer pixel from the reference picture. In the case of luminance pixels, a DCT-based 8-tap interpolation filter with different filter coefficients can be used to generate pixel information less than an integer pixel in units of 1 / 4 pixels. In the case of a chrominance signal, a DCT-based 4-tap interpolation filter with different filter coefficients can be used to generate pixel information less than an integer pixel in units of 1 / 8 pixels.
[0053] The motion prediction unit can perform motion prediction based on a reference picture interpolated by the reference picture interpolation unit. Various methods such as FBMA (Full search-based Block Matching Algorithm), TSS (Three Step Search), and NTS (New Three-Step Search Algorithm) can be used to derive a motion vector. The motion vector can have a motion vector value in units of 1 / 2 or 1 / 4 pixels based on the interpolated pixels. The motion prediction unit can predict the current prediction unit by using different motion prediction methods. Various methods such as the Skip method, the Merge method, the Advanced Motion Vector Prediction (AMVP) method, and the Intra Block Copy method can be used as the motion prediction method. In addition, when applying the motion information derivation technique on the decoder side according to the present invention, a template matching method and a bilateral matching method utilizing a motion trajectory can be applied as methods performed in the motion prediction unit.
[0054] The intra prediction unit (125) can generate a prediction unit based on reference pixel information surrounding the current block, which is pixel information within the current picture. If the surrounding block of the current prediction unit is a block on which inter prediction has been performed and the reference pixel is a pixel on which inter prediction has been performed, the reference pixel included in the block on which inter prediction has been performed can be replaced and used with reference pixel information of the surrounding block on which intra prediction has been performed. That is, if the reference pixel is not available, the unavailable reference pixel information can be replaced and used with at least one reference pixel among the available reference pixels.
[0055] Additionally, a residual block containing residual value information, which is the difference between the prediction unit that performed the prediction based on the prediction unit generated in the prediction unit (120, 125) and the original block of the prediction unit, can be generated. The generated residual block can be input to the transformation unit (130).
[0056] In the transformation unit (130), the residual block including the residual value information of the prediction unit generated through the original block and the prediction unit (120, 125) can be transformed using a transformation method such as DCT (Discrete Cosine Transform), DST (Discrete Sine Transform), or KLT. Whether to apply DCT, DST, or KLT to transform the residual block can be determined based on the intra prediction mode information of the prediction unit used to generate the residual block.
[0057] The quantization unit (135) can quantize values converted to the frequency domain by the transformation unit (130). The quantization coefficients can vary depending on the block or the importance of the image. The values produced by the quantization unit (135) can be provided to the dequantization unit (140) and the reordering unit (160).
[0058] The rearrangement unit (160) can perform rearrangement of coefficient values for quantized residual values.
[0059] The rearrangement unit (160) can change a two-dimensional block-shaped coefficient into a one-dimensional vector form through a coefficient scanning method. For example, the rearrangement unit (160) can change the two-dimensional block-shaped coefficient into a one-dimensional vector form by scanning from the DC coefficient to the coefficient of the high-frequency region using a zig-zag scan method. Depending on the size of the transformation unit and the intra prediction mode, a vertical scan that scans the two-dimensional block-shaped coefficient in the column direction or a horizontal scan that scans the two-dimensional block-shaped coefficient in the row direction may be used instead of the zig-zag scan. That is, depending on the size of the transformation unit and the intra prediction mode, it is possible to determine which scan method among the zig-zag scan, the vertical scan, and the horizontal scan is to be used.
[0060] The entropy encoding unit (165) can perform entropy encoding based on the values produced by the rearrangement unit (160). Entropy encoding can use various encoding methods such as, for example, Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC). In this regard, the entropy encoding unit (165) can encode residual value coefficient information of an encoding unit from the rearrangement unit (160) and the prediction units (120, 125). In addition, according to the present invention, it is possible to signal and transmit information indicating that motion information is derived and used from the decoder side and information on a technique used to derive motion information.
[0061] The inverse quantization unit (140) and the inverse transformation unit (145) inversely quantize the values quantized in the quantization unit (135) and inversely transform the values transformed in the transformation unit (130). The residual values generated in the inverse quantization unit (140) and the inverse transformation unit (145) can be combined with the predicted prediction units predicted through the motion estimation unit, motion compensation unit, and intra prediction unit included in the prediction unit (120, 125) to generate a reconstructed block.
[0062] The filter unit (150) may include at least one of a deblocking filter, an offset correction unit, and an ALF (Adaptive Loop Filter). The deblocking filter may remove block distortion caused by boundaries between blocks in a restored picture. The offset correction unit may correct the offset from the original image on a pixel-by-pixel basis for the image on which deblocking has been performed. In order to perform offset correction for a specific picture, a method may be used in which the pixels included in the image are divided into a certain number of regions, the regions to be offset are determined, and the offset is applied to the regions, or the offset is applied by considering edge information of each pixel. The ALF (Adaptive Loop Filtering) may be performed based on a value obtained by comparing the filtered restored image with the original image. After dividing the pixels included in the image into a predetermined group, one filter to be applied to the group is determined, and filtering may be performed differentially for each group.
[0063] The memory (155) can store a restored block or picture produced through the filter unit (150), and the stored restored block or picture can be provided to the prediction unit (120, 125) when performing inter prediction.
[0064] Figure 2 is a block diagram illustrating an image decoding device according to the present invention. Referring to Figure 2, an image decoder (200) may include an entropy decoding unit (210), a rearrangement unit (215), an inverse quantization unit (220), an inverse transformation unit (225), a prediction unit (230, 235), a filter unit (240), and a memory (245).
[0065] When a video bitstream is input to a video encoder, the input bitstream can be decoded in the opposite procedure to that of the video encoder.
[0066] The entropy decoding unit (210) can perform entropy decoding in a procedure opposite to that of the entropy encoding unit of the video encoder. 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.
[0067] The entropy decoding unit (210) can decode information related to intra prediction and inter prediction performed in the encoder.
[0068] The reordering unit (215) can perform reordering based on the method by which the bitstream entropy-decoded by the entropy decoding unit (210) is reordered by the encoding unit. The coefficients expressed in the form of a one-dimensional vector can be reordered by restoring them back to coefficients in the form of a two-dimensional block.
[0069] The inverse quantization unit (220) can perform inverse quantization based on the quantization parameters provided by the encoder and the coefficient values of the rearranged block.
[0070] The inverse transform unit (225) can perform inverse transform, i.e., inverse DCT, inverse DST, and inverse KLT, on the transforms performed by the transform unit, i.e., DCT, DST, and KLT, on the quantization result performed by the image encoder. The inverse transform can be performed based on the transmission unit determined by the image encoder. In the inverse transform unit (225) of the image decoder, a transform technique (e.g., DCT, DST, KLT) can be selectively performed according to a plurality of pieces of information, such as a prediction method, the size of the current block, and the prediction direction.
[0071] The prediction unit (230, 235) can generate a prediction block based on prediction block generation related information provided from the entropy decoding unit (210) and previously decoded block or picture information provided from the memory (245).
[0072] As described above, when performing intra prediction or intra-screen prediction in the same manner as the operation in the video encoder, if the size of the prediction unit and the size of the transformation unit are the same, intra prediction for the prediction unit is performed based on the pixels on the left side of the prediction unit, the pixels on the upper left side, and the pixels on the upper side. However, when performing intra prediction, if the size of the prediction unit and the size of the transformation unit are different, intra prediction can be performed using reference pixels based on the transformation unit. In addition, intra prediction using NxN division only for the minimum coding unit can be used.
[0073] The prediction unit (230, 235) may include a prediction unit determination unit, an inter prediction unit, and an intra prediction unit. The prediction unit determination unit may receive various information such as prediction unit information input from the entropy decoding unit (210), 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. On the other hand, if the encoder (100) does not transmit motion prediction-related information for the inter prediction, but instead transmits information indicating that motion information is to be derived and used on the decoder side and information on a technique used to derive motion information, the prediction unit determination unit determines whether the inter prediction unit (23) performs prediction based on the information transmitted from the encoder (100).
[0074] The inter prediction unit (230) can perform inter prediction on the current prediction unit based on information included in at least one picture among the previous picture or the next picture of the current picture including the current prediction unit, using information necessary for inter prediction of the current prediction unit provided by the video encoder. In order to perform inter prediction, it can be determined based on the coding unit whether the motion prediction method of the prediction unit included in the corresponding coding unit is one of Skip Mode, Merge Mode, AMVP Mode, and Intra Block Copy Mode. Alternatively, the inter prediction unit (230) can perform inter prediction by deriving motion information on its own from information provided by the video encoder that instructs the decoder to use the motion information and information on a technique used to derive the motion information.
[0075] The intra prediction unit (235) can generate a prediction block based on pixel information in the current picture. If the prediction unit is a prediction unit that has performed intra prediction, intra prediction can be performed based on intra prediction mode information of the prediction unit provided by the image encoder. The intra prediction unit (235) can include an AIS (Adaptive Intra Smoothing) filter, a reference pixel interpolation unit, and a DC filter. The AIS filter is a part that performs filtering on the reference pixels of the current block, and can determine and apply whether to apply the filter according to the prediction mode of the current prediction unit. AIS filtering can be performed on the reference pixels of the current block using the prediction mode and AIS filter information of the prediction unit provided by the image encoder. If the prediction mode of the current block is a mode that does not perform AIS filtering, the AIS filter may not be applied.
[0076] The reference pixel interpolation unit can interpolate the reference pixel to generate a reference pixel of a pixel unit less than an integer value 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. 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.
[0077] The restored block or picture may be provided to a filter unit (240). The filter unit (240) may include a deblocking filter, an offset correction unit, and an ALF.
[0078] Information about whether a deblocking filter has been applied to a corresponding block or picture can be received from the video encoder, and if a deblocking filter has been applied, information about whether a strong or weak filter has been applied. The deblocking filter of the video decoder can receive information related to the deblocking filter provided by the video encoder, and the video decoder can perform deblocking filtering on the corresponding block.
[0079] 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 information on the offset value. ALF can be applied to the encoding unit based on information on whether ALF is applied and ALF coefficient information provided from the encoder. This ALF information can be provided by being included in a specific parameter set.
[0080] The memory (245) can store a restored picture or block so that it can be used as a reference picture or reference block, and can also provide the restored picture to an output unit.
[0081] The method for generating a prediction block of the current block will be examined with reference to Fig. 3.
[0082] When geometric segmentation-based prediction is performed on the current block, a method for dividing the current block into multiple sub-regions will be described with reference to FIGS. 4 and 5.
[0083] The method for constructing a list of intra prediction mode candidates used for prediction of multiple sub-regions will be examined with reference to Fig. 6.
[0084] The region where the weighted sum of the prediction blocks of each of the multiple sub-regions is performed will be examined with reference to FIGS. 7 and 8.
[0085] When geometric segmentation-based prediction is not performed on the current block, a method for generating a prediction block of the current block will be described with reference to FIG. 9.
[0086] FIG. 3 is a flowchart illustrating a method for generating a prediction block of a current block according to the present disclosure.
[0087] Referring to FIG. 3, it can be determined whether geometric segmentation-based prediction is performed on the current block (S300).
[0088] For example, a flag may be signaled to indicate whether geometric segmentation-based prediction is performed on the current block. Alternatively, based on the width and height of the current block, the signaling of the flag may be omitted and it may be determined whether geometric segmentation-based prediction is performed. For example, if at least one of the width or the height of the current block is less than or equal to 8, or if the aspect ratio of the width and height of the current block is greater than L, the signaling of the flag may be omitted and it may be determined that geometric segmentation-based prediction is not performed. Here, L may be either a fixed value or an adaptively determined value. In this case, if L is a fixed value, L may be 8.
[0089] When geometric segmentation-based prediction is performed on the current block, geometric segmentation control information may be derived to segment the current block into multiple sub-regions. Here, the geometric segmentation control information may include at least one of geometric segmentation information and segmentation region information.
[0090] FIG. 4 is a diagram illustrating examples of angles and offsets of geometric dividing lines according to the present disclosure. The example in FIG. 4 illustrates ten angles (angle, φ0 to φ9) and four offsets (offset, 0. ρ0, ρ1, ρ2).
[0091] The geometric segmentation information according to the present disclosure may include at least one of angle information or offset information of a geometric segmentation line. For example, the angle and offset of the geometric segmentation line may be defined as a pair in a pre-defined table, and the position of the geometric segmentation line that segments the current block may be determined according to the angle and offset pair selected based on the signaled index. As another example, the angle information and offset information of the geometric segmentation line may be signaled separately, and the position of the geometric segmentation line may be determined based on the angle and offset information. For example, the angle information may be obtained by classifying N angle candidates into M sets, and then signaling the set index and the angle index within the set identified based on the index. In addition, the offset information may be signaled as offset information (index) within a range (e.g., 3 to 4) determined based on the angle information. Here, N may be 20, and M may be 4.
[0092] The geometric dividing lines available for the current block may be limited based on at least one of the width, height, or aspect ratio of the width and height of the current block.
[0093] FIG. 5 is a diagram showing examples of sub-regions of a current block according to the present disclosure. FIG. 5(a) is a diagram showing an example of a division method in which a band-shaped region with a width of P centered on a geometric division line is set as a first region, and the remaining region within the current block, excluding the first region, is set as a second region. FIG. 5(b) is a diagram showing an example of a division method in which one region of a current block divided in two based on a geometric division line is set as a first region, and the remaining region is set as a second region.
[0094] Referring to FIG. 5, a plurality of sub-regions within the current block may be set according to the segmentation area information of the current block. For example, as illustrated in FIG. 5(a), if a band-shaped area with a width P centered on a geometric segmentation line is set as one of the sub-regions, the segmentation area information may include a value of a variable P. At this time, the variable P may be explicitly signaled, or may be derived based on at least one of the width, height, aspect ratio of the width and height of the current block, or geometric segmentation information. For example, P may be derived as P_sm when the size of the current block is smaller than or equal to a predetermined size, and as P_lg when it is larger than the predetermined size. Here, the predetermined size may be a value that is adaptively determined. For example, the predetermined size may be 16x16, and in this case, P_sm may have a value smaller than P_lg.
[0095] That is, based on the partition area information and geometric partition information, a method for partitioning the current block into multiple sub-areas can be determined. At this time, the partition area information may be signaled in the form of a flag.
[0096] Referring to FIG. 3, a prediction block of the current block can be generated based on whether geometric segmentation-based prediction is performed on the current block (S310).
[0097] If it is determined that geometric segmentation-based prediction is to be performed on the current block, i.e., if the current block is divided into multiple sub-regions, a prediction block (prediction signal) may be generated for each sub-region. At this time, all sub-regions may be predicted based on an inter-prediction method (method 1), all sub-regions may be predicted based on an intra-prediction method (method 2), or some sub-regions may be predicted based on an inter-prediction method and the remaining sub-regions may be predicted based on an intra-prediction method (method 3).
[0098] When a sub-region is predicted based on the inter prediction method of the method 1 or method 3, the inter prediction method may include warp motion-based prediction, translation MV (motion vector)-based prediction, or IBC (intra block copy) prediction. The warp motion model may also be referred to as an affine motion model. In addition, the translation MV-based prediction may be a prediction method that assigns one motion vector to a current block and determines a reference block within a reference picture based on the motion vector. In this case, the motion vector may be signaled or derived based on motion information of a spatial or temporal adjacent block, and may also be corrected based on a signaled difference value.
[0099] IBC prediction may be a method of predicting a current block by copying sample values from a previously reconstructed block within the same picture as the current block. The prediction may be performed based on a block vector, and the block vector may be determined based on a block vector candidate list and a signaled index constructed according to a position or search order defined identically in the encoder and decoder. In addition, the determined block vector may be corrected through a template matching process in the template region of the current block.
[0100] If the current block is a chrominance component block and the IBC prediction method is applied, and if the luminance component block corresponding to the position of the current block is restored, a block vector or a block vector candidate of the current block can be derived based on the luminance component block. For example, if the block division structure between the luminance component block and the chrominance component block is the same, the block vector of the luminance component block can be utilized as the block vector or a block vector candidate of the current block through scaling according to the color format of the input image (e.g., 4:4:4 or 4:2:0, etc.).
[0101] As another example, if the block division structure is different, a block vector at a specific location within the luminance component block may be included as a block vector or a block vector candidate of the current block through scaling according to the color format. In this case, the specific location may be a location defined identically in the encoder and decoder or a location searched according to a pre-defined order.
[0102] When a sub-region is predicted based on the intra prediction method of the above method 2 or method 3, a list of intra prediction mode candidates can be constructed to determine an intra prediction mode that can be used for prediction of the sub-region.
[0103] For example, the intra prediction mode candidate list may include at least one of a fixed prediction mode, a prediction mode of a reference block spatially adjacent to the current block (hereinafter, a spatial adjacent prediction mode), or a prediction mode of a reference block spatially non-adjacent to the current block (hereinafter, a spatial non-adjacent prediction mode). In this case, the intra prediction mode candidate list may be composed in the order of the fixed prediction mode, the spatial adjacent prediction mode, and the spatial non-adjacent prediction mode. In addition, when composing the intra prediction mode candidate list, overlapping prediction modes may not be added.
[0104] A fixed prediction mode may be determined based on geometric segmentation information of the current block. For example, the fixed prediction mode may include at least one of a prediction mode having a direction perpendicular to a geometric segmentation line determined based on geometric segmentation information, a prediction mode having a direction horizontal to the geometric segmentation line, a PAETH mode, or a smooth mode. The mode having a direction perpendicular and horizontal to the geometric segmentation line may be a mode predefined in the encoder and decoder based on the geometric segmentation line.
[0105] Here, the PAETH mode may be a mode that derives a prediction value of the current pixel based on a reference sample located above the position of the current sample, a reference sample located on the left, and a reference sample located at the upper left of the current block. In addition, the smooth mode may be a mode that uses the average of prediction values generated based on the smooth vertical mode and the smooth horizontal mode as the prediction value of the current pixel, and the smooth vertical mode may be a mode that generates a prediction value of the current pixel through distance-based weighted interpolation using a reference sample located above the position of the current sample and a reference sample located at the lower left, and the smooth horizontal mode may be a mode that generates a prediction value of the current pixel through distance-based weighted interpolation using a reference sample located on the left and a reference sample located at the upper right of the position of the current sample.
[0106] FIG. 6 is a diagram illustrating an example of a surrounding reference block used to construct an intra prediction mode candidate list used for prediction of multiple sub-regions according to the present disclosure.
[0107] Referring to FIG. 6, a spatial adjacent prediction mode or a spatial non-adjacent prediction mode that can be included in an intra prediction mode candidate list can be derived by searching for reference blocks surrounding the current block. For example, adjacent or non-adjacent pre-restored reference blocks located to the left or above the current block can be searched for, and the prediction mode of the corresponding reference block can be included in the intra prediction mode candidate list. In this case, the positions of the reference blocks to be searched for can be pre-defined in the encoder and decoder.
[0108] For example, referring to FIG. 6, the reference block spatially adjacent to the current block to be searched may include at least one of a reference block neighboring to the left of the lower left sample of the current block (block 1 in FIG. 6), a reference block neighboring to the bottom of block 1 (block 5 in FIG. 6), a block neighboring to the top of the upper right sample of the current block (block 2 in FIG. 6), a reference block neighboring to the right of block 2 (block 6 in FIG. 6), a reference block neighboring to the left of the upper left sample of the current block (block 3 in FIG. 6), a reference block neighboring to the top of block 3 (block 7 in FIG. 6), or a reference block neighboring to the top of the upper left sample of the current block (block 4 in FIG. 6). Furthermore, a reference block adjacent to the left side of the current block and located at the lower half of the vertical length of the current block (block 8 in FIG. 6), or a reference block adjacent to the upper side of the current block and located at the right half of the horizontal length of the current block (block 9 in FIG. 6) may be included in the search target.
[0109] Also, referring to FIG. 6, the reference block that is spatially non-adjacent to the current block to be searched may include at least one of a reference block located at a distance q to the left of block 3 (block 11 in FIG. 6), a reference block adjacent to the left of block 11 (block 14 in FIG. 6), and a reference block adjacent to the left of block 14 (block 17 in FIG. 6). Similarly, at least one of reference blocks located at a distance q to the left of block 1 or block 8 (blocks 10 and 12 in FIG. 6, respectively) or reference blocks located around them (blocks 13, 15, 16, and 18 in FIG. 6, respectively) may be included in the search target. Here, q may be an integer greater than or equal to 0.
[0110] However, the spatially adjacent / non-adjacent reference blocks illustrated in FIG. 6 are only examples of search target reference blocks for constructing an intra prediction mode candidate list, and other spatially adjacent / non-adjacent reference blocks not illustrated in FIG. 6 may also be included in the search target.
[0111] Meanwhile, reference blocks to be searched may be restricted based on the width or height of the current block. For example, blocks 8, 9, 12, 15, and 18 in FIG. 6 may be excluded from the search target depending on the width or height of the current block. More specifically, if the height of the current block is less than or equal to 8, at least one reference block among blocks 8, 12, 15, and 18 may be excluded from the search target. Additionally, if the width of the current block is less than or equal to 8, a search for block 9 may not be performed.
[0112] In the process of searching for a reference block for constructing the intra prediction mode candidate list described above, if a mode that already exists in the list is searched, the reference block at that location may be excluded from the process of constructing the list.
[0113] After constructing a list of intra prediction mode candidates based on a fixed prediction mode, a spatial adjacent prediction mode, or a spatial non-adjacent prediction mode according to the present disclosure, intra prediction modes not included in the list can be added to the list in a pre-defined order between the encoder and the decoder.
[0114] After the intra prediction mode candidate list is constructed, the intra prediction mode to be used in the prediction process of each sub-region can be determined based on the signaled index information.
[0115] After the intra prediction mode of each sub-region is determined based on the above index information, weighted sum information for generating a prediction block of the current block can be derived. The weighted sum information can include at least one of information on the region where the weighted sum is performed or a weight used in the weighted sum, in the process of generating a prediction block of the current block by weighting the prediction blocks (prediction signals) generated based on the intra prediction mode of each sub-region.
[0116] Information about the region where the above weighted sum is performed can be signaled in the form of an index. Here, the region where the above weighted sum is performed can be a region fixed in units of sequence, slice, etc.
[0117] Depending on the width and height of the current block, the area where the weighted sum is performed, indicated by the index, may vary. For example, the weighted sum performance area index may have a value from 0 to 4, and if both the width and height of the current block are 32 or greater and the index is 4, an area as wide as 8 samples centered on the geometric dividing line may be an area where the weighted sum is performed. Alternatively, if both the width and height of the current block are less than 32 and the index is 4, an area as wide as 6 samples centered on the geometric dividing line may be an area where the weighted sum is performed.
[0118] FIG. 7 and FIG. 8 are diagrams showing an example of an area in which weighted summation according to the present disclosure is performed.
[0119] Referring to FIG. 7 (a) and FIG. 7 (b), when the current block is divided into a first region in the shape of a band with a width of P centered on a geometric division line and a second region, which is the remaining region, based on the information on the divided region of the current block, a weighted sum may be performed on two adjacent boundary surfaces of the first region and the second region. The region on which the weighted sum is performed may include at least one of a first weighted sum region in the shape of a band with a width of t to the left and u to the right centered on one of the two boundary surfaces, or a second weighted sum region in the shape of a band with a width of s to the left and r to the right centered on the other boundary surface. Here, r, s, t, and u may be the same value. In addition, the values of r, s, t, and u may be included in the weighted sum information and signaled.
[0120] Referring to FIG. 8 (a) and FIG. 8 (b), when the current block is divided into a first region, which is one of the regions divided based on a geometric division line, and a second region, which is the remaining region, based on the division region information of the current block, a weighted sum may be performed at a single boundary surface where the first region and the second region are adjacent. The region where the weighted sum is performed may include a band-shaped region having a width of w to the left and v to the right with the boundary surface as the center. Here, w and v may be the same value. In addition, the values of w and v may be included in the weighted sum information and signaled.
[0121] On the other hand, the weighted summation execution area index may be omitted from signaling depending on the information about the partitioned area. For example, as shown in Fig. 5 (a), if the current block is partitioned into a band-shaped area with a width of P centered on a geometric partitioning line and the remaining area, the signaling of the weighted summation execution area index may be omitted, and weighted summation may be performed based on information about a pre-defined, fixed weighted summation execution area.
[0122] As another example, information about the area where the weighted sum is performed may be derived implicitly, without signaling the index. In this case, the area where the weighted sum is performed may be derived based on at least one of the size of the current block or the aspect ratio of the width and height. For example, the area where the weighted sum is performed may be derived as W_sm if the size of the current block is smaller than or equal to a predetermined size, and as W_lg if the size of the current block is larger than the predetermined size. Here, the predetermined size may be a value that is determined adaptively. For example, the predetermined size may be 16x16, and in this case, W_sm may have a value smaller than W_lg.
[0123] The weights used in the weighted sum may differ depending on the location of the sample within the current block. The weights may be determined based on at least one of a geometric dividing line or an area where weighted summation is performed. At this time, the area where weighted summation is performed may be determined based on the size of the current block as described above. For example, the weights may have a value between 0 and 32, and the weight of a sample through which the geometric dividing line passes may be 16. In addition, the weights may be determined according to the distance between the geometric dividing line and the sample within the current block. At this time, for samples within an area where weighted summation is not performed, a prediction signal generated according to a prediction mode derived for each sub-area may be used without any special correction. Accordingly, a weight matrix (W) including weights determined for each sample location within the current block B f) can be derived. The predicted block (P) of the current block according to the weighted sum performed based on the above weight matrix G (i,j)) can be generated as shown in the following mathematical expression 1.
[0124]
[0125] In mathematical expression 1, P0 and P1 may represent prediction signals of the first region and the second region, which are sub-regions within the current block, respectively. In addition, w may be determined based on the range of values that the weight can have. More specifically, the range of values that the weight can have is from 0 to 2. n If -1, the above w can be n. For example, if the range of values that the weight can have is 0 to 32, w can be 5.
[0126] According to one embodiment of the present disclosure, the geometric segmentation information described above and the intra prediction mode that can be used for prediction of each sub-region can be signaled through a single index. The geometric segmentation information can include information about a geometric segmentation line. More specifically, in order to signal the geometric segmentation information and the intra prediction mode of each sub-region through a single index, a reordering process including a combination process between the geometric segmentation information and the intra prediction mode of each sub-region can be performed.
[0127] For example, a plurality of combinations can be generated by combining geometric segmentation line candidates applicable to the current block and intra prediction mode candidates for each sub-region, and prediction for the template region of the current block can be performed based on each combination, and a template cost for each prediction result can be calculated. Here, the intra prediction mode candidate for each sub-region can be derived from the intra prediction mode candidate list, and the prediction for the template region can be performed using a reference line of the template region. In addition, the template region of the current block is a region composed of pre-restored samples located around the current block, and may have an L-shape in which regions adjacent to the left and top of the current block are combined, and may be set in at least one direction of the left or top, and may not be set in the other direction. At this time, the number of rows or columns of reference samples included in the template region may be 2 or more. The above template cost can be calculated as at least one of MSE (Mean Squared Error), SAD (Sum of Absolute Difference), or SATD (Sum of Absolute Transformed Difference) between the pre-reconstructed sample and the prediction result within the template region.
[0128] More specifically, prediction for a template region can be performed in such a way that, when the template region is divided into a first template region and a second template region based on a geometric dividing line of the current block, each of the first template region and the second template region is independently predicted based on an intra prediction mode derived from an intra prediction mode candidate list. Thereafter, by applying any one of the template cost calculation methods described above, a template cost between the prediction result for each region and the pre-restored sample within the template region can be calculated, and the combinations can be sorted based on the template cost.
[0129] When aligning the geometric segmentation line and the intra prediction mode combination for each sub-region of the current block, the calculation method of the template cost may differ depending on whether weighted sum is performed at the boundary between the first template region and the second template region. For example, if weighted sum is not performed at the boundary, the template cost between the prediction result and the pre-reconstructed sample for each of the first template region and the second template region may be independently calculated. The template cost of the entire template region may be derived based on the template cost for each region, and the derived template cost for the entire region may be used as the template cost for each combination.
[0130] As another example, when weighted summation is performed on the above boundary, the template cost between the predicted result and the reconstructed sample for the region where weighted summation was performed can be excluded from the template cost calculation for the entire template region. More specifically, the template cost is calculated only for the remaining regions excluding the region where weighted summation was performed, thereby yielding the overall template cost for each combination.
[0131] As another example, if the area where weighted sum is performed between the first template area and the second template area is determined based on signaled weighted sum information rather than a pre-defined area, template cost calculation may be omitted only within a predetermined fixed area among the areas where weighted sum is performed. That is, the remaining area excluding the predetermined fixed area among the entire area where weighted sum is performed may be included in the overall template cost calculation process for each combination. Alternatively, the template cost may be calculated only within a predetermined fixed area among the areas where weighted sum is performed determined based on the signaled weighted sum information, and template cost calculation may be omitted for the remaining areas excluding the predetermined fixed area.
[0132] A reordering process can be performed based on the geometric segmentation information and the template costs for multiple combinations of intra-prediction modes for each sub-region. For example, the combination with the lowest template cost derived from a comparison of the template costs for each combination can be used when generating the prediction block for the current block. Alternatively, the top N combinations derived from a comparison of the template costs for each combination can be determined as candidates, and one of the candidate combinations can be signaled in the form of an index.
[0133] Here, the value of N may be determined based on the width and height of the current block. For example, if both the width and height of the current block are less than or equal to 16, N may be 16, and if both the width and height of the current block are greater than 16, N may be 32.
[0134] According to another embodiment of the present disclosure, after the geometric segmentation information described above is signaled, an intra prediction mode that can be used for prediction of each sub-region can be signaled via a single index. More specifically, a geometric segmentation line can be derived based on the signaled geometric segmentation information first, and a plurality of template costs can be calculated based on the geometric segmentation line and a combination of intra prediction modes for each of the plurality of sub-regions. Thereafter, a method for calculating a plurality of template costs and a comparison between the template costs can be used to reorder a plurality of intra prediction mode combinations, and one of them can be signaled in the form of an index, as described in the previous embodiment, so a redundant description thereof will be omitted here.
[0135] If geometric segmentation-based prediction is not performed on the current block, a plurality of intra prediction modes may be derived, a plurality of prediction blocks may be generated based on each of the derived intra prediction modes, and a prediction block of the current block may be generated based on the plurality of prediction blocks. At this time, the plurality of intra prediction modes may include a first intra prediction mode or a second intra prediction mode.
[0136] For example, the first intra prediction mode and the second intra prediction mode can each be derived through independent signaling.
[0137] As another example, the first intra prediction mode can be any one of the DC mode, the vertical mode, the horizontal mode, the smooth mode, the D45 mode (a mode with a 45 degree orientation), or the D135 mode (a mode with a 135 degree orientation). In this case, the second intra prediction mode can be derived based on the first intra prediction mode.
[0138] For example, when the first intra prediction mode is the DC mode, the second intra prediction mode may be any one of the vertical mode, the horizontal mode, the smooth mode, the D45 mode, and the D135 mode, and an index indicating this may be signaled. Alternatively, when the first intra prediction mode is any one of the vertical mode, the horizontal mode, the D45 mode, and the D135 mode, the second intra prediction mode may be derived as a directional prediction mode (e.g., the D(45 + delta[i]) mode) determined by adding delta[i] to the index of the first intra prediction mode. In this case, delta[i] may be signaled in the form of an index. Alternatively, when the first intra prediction mode is the smooth mode, the second intra prediction mode may be any one of the vertical mode, the horizontal mode, the D45 mode, the D135 mode, the smooth vertical mode, and the smooth horizontal mode, and an index indicating this may be signaled.
[0139] After the first intra prediction mode and the second intra prediction mode are derived for the current block, a first prediction block and a second prediction block can be generated based on each prediction mode. Thereafter, weights are applied to each of the two prediction blocks and a weighted sum is performed, thereby generating a prediction block of the current block. At this time, the weights can include at least one of a first weight applied to the first prediction block or a second weight applied to the second prediction block.
[0140] The ratio of the first weight and the second weight may be 1:1. Alternatively, the weight may be determined based on at least one of the first intra prediction mode or the second intra prediction mode.
[0141] Figure 9 is a diagram showing an example of weights used in weighted summation performed when geometric segmentation-based prediction is not performed.
[0142] Referring to FIG. 9, the weight may be determined based on the first intra prediction mode. At this time, the width and height of the current block may be 8. For example, if the first intra prediction mode is a directional mode, a higher weight may be applied to a sample located closer to a reference line used as a reference when generating the first prediction block. More specifically, a higher weight may be applied to samples located within a predetermined distance from the reference line inversely proportional to the distance from the reference line. In other words, a lower weight may be applied to samples located within the first prediction block located at a predetermined distance or more from the reference line. In addition, a weight of a pre-defined ratio may be applied. Here, the predetermined distance may be a distance of 4 samples. In addition, the pre-defined ratio may include at least one of a case where the ratio of the first weight to the second weight is 1:3 or 2:2.
[0143] Additionally, referring to FIG. 9, the same weights may be applied when the first prediction block is generated based on smooth mode and when the first prediction block is generated based on D135 mode. Furthermore, when the first prediction block is generated based on DC mode, the ratio of the first weight to the second weight may be 1:1.
[0144] When the current block is a chrominance component block and the current block is predicted based on an intra prediction technique, a prediction block of the current block can be generated by modeling a relationship between a pre-restored chrominance component reference block around the current block and a pre-restored luminance component reference block around a luminance component block corresponding to a position of the current block using at least one of a linear model and a nonlinear model.
[0145] Referring to FIG. 3, the current block can be restored based on the predicted block of the current block (S320).
[0146] The current block can be reconstructed based on the generated prediction block and the residual block of the current block. Here, the residual block can be generated by applying at least one of inverse quantization or inverse transformation to transform coefficients obtained from the bitstream.
[0147] The encoding method and device according to the present disclosure can determine whether to perform geometric segmentation-based prediction on a current block and generate a prediction block of the current block based on the determination of whether to perform the geometric segmentation-based prediction or the method of generating the prediction block of the current block are as described in FIG. 3.
[0148] The encoding method and device according to the present disclosure can derive a residual block based on the prediction block. Furthermore, at least one of transformation and quantization can be performed on the residual block, thereby deriving the transform coefficients of the current block. Furthermore, the transform coefficients can be encoded.
[0149] The various embodiments of the present disclosure are not intended to list all possible combinations but rather to illustrate representative aspects of the present disclosure, and the matters described in the various embodiments may be applied independently or in combinations of two or more.
[0150] Additionally, various embodiments of the present disclosure may be implemented by hardware, firmware, software, or a combination thereof. In the case of hardware implementation, the embodiments may be implemented by one or more ASICs (Application Specific Integrated Circuits), DSPs (Digital Signal Processors), DSPDs (Digital Signal Processing Devices), PLDs (Programmable Logic Devices), FPGAs (Field Programmable Gate Arrays), general processors, controllers, microcontrollers, microprocessors, etc.
[0151] The scope of the present disclosure includes software or machine-executable instructions (e.g., operating systems, applications, firmware, programs, etc.) that cause operations according to the methods of various embodiments to be executed on a device or a computer, and a non-transitory computer-readable medium having such software or instructions stored thereon and executable on the device or computer.
[0152] The present disclosure can be industrially utilized in the fields of methods, devices, and recording media for video encoding / decoding.
Claims
1. A step of determining whether to perform geometric segmentation-based prediction for the current block; generating a prediction block of the current block based on the above decision; and An image decoding method, comprising a step of restoring the current block based on the predicted block.
2. In paragraph 1, When geometric segmentation-based prediction is performed on the current block, the step of generating a prediction block of the current block includes: A step of deriving geometric segmentation control information of the current block; and A step of dividing the current block into a plurality of sub-regions based on the geometric division control information, An image decoding method, wherein the geometric segmentation control information includes at least one of geometric segmentation information and segmentation area information.
3. In paragraph 2, The above geometric segmentation information includes at least one of angle information or offset information of the geometric segmentation line, An image decoding method, wherein the above-mentioned segmentation area information includes information for setting the plurality of sub-areas based on the geometric segmentation line.
4. In paragraph 2, Further comprising a step of constructing a list of intra prediction mode candidates used for prediction of the plurality of sub-regions, A method for decoding an image, wherein the intra prediction mode candidate list includes at least one of a fixed prediction mode, a spatial adjacent prediction mode, or a spatial non-adjacent prediction mode.
5. In paragraph 4, An image decoding method, wherein the fixed prediction mode includes at least one of a directional prediction mode perpendicular to a geometric segmentation line derived based on the geometric segmentation information, a directional prediction mode horizontal to the geometric segmentation line, a PAETH mode, or a smooth mode.
6. In paragraph 4, A method for decoding an image, wherein the spatial adjacent prediction mode or the spatial non-adjacent prediction mode is determined based on at least one of the width or height of the current block.
7. In paragraph 4, A step of generating a prediction block of each of the plurality of sub-regions based on the intra prediction mode candidate list; and Further comprising a step of generating a prediction block of the current block by weighting the prediction blocks based on weighted sum information, A method for decoding an image, wherein the weighted sum information includes at least one of information about an area in which the weighted sum is performed or a weight.
8. In paragraph 7, A method for decoding an image, wherein the area where the weighted sum is performed is determined based on at least one of the size of the current block, a geometric division line derived based on the geometric division information, or the plurality of sub-areas set based on the division area information.
9. In paragraph 7, The area where the above weighted sum is performed is determined based on the comparison result between the size of the current block and a predetermined size, The size of the current block means at least one of the width, height, or aspect ratio of the width and height of the current block, A method for decoding an image, wherein the above-mentioned size is 16 in width and 16 in height.
10. In paragraph 1, If geometric segmentation-based prediction is not performed for the current block, the step of generating a prediction block of the current block comprises: A step of deriving a first intra prediction mode and a second intra prediction mode of the current block; A step of generating a first prediction block and a second prediction block based on the first intra prediction mode and the second intra prediction mode; and An image decoding method, comprising a step of generating a prediction block of the current block by weighting the first prediction block and the second prediction block.
11. In paragraph 10, The above first intra prediction mode is any one of a DC mode, a vertical mode, a horizontal mode, a smooth mode, a mode with a directionality of 45 degrees, or a mode with a directionality of 135 degrees, A method for decoding an image, wherein the second intra prediction mode is derived based on the first intra prediction mode.
12. In paragraph 10, The weight for the weighted sum includes at least one of a first weight applied to the first prediction block or a second weight applied to the second prediction block, A method for decoding an image, wherein the above weights are derived based on the first intra prediction mode.
13. A step of determining whether to perform geometric segmentation-based prediction for the current block; generating a prediction block of the current block based on the above decision; and An image encoding method, comprising a step of deriving a residual block of the current block based on the prediction block.
14. A computer-readable storage medium for storing a bitstream generated by the image encoding method according to Article 13.
15. A method for transmitting a bitstream generated by a video encoding method according to Article 13.
Citation Information
Patent Citations
Valve body device, beverage machine, beverage machine control method and related equipment
KR1020250015718A
Ether solvent-based electrolyte and lithium metal battery comprising the same
KR1020260001267A
Fuel cell stack structure and fuel cell system having the fuel cell stack structure
KR102680450B1
Operating method of server unifying needs of users related to product purchases and generating purchase information for joint purchases of products matching the unified needs, thereby performing transactions between sellers and buyers
KR102792901B1
Method, device, and medium for video processing
US20240137529A1