Image decoding method, image coding method and non-traient computer readable recording medium
Patent Information
- Application Number
- BR122025019491
- Authority / Receiving Office
- BR · BR
- Patent Type
- Patents
- Current Assignee / Owner
- Publication Date
- 2026-09-15
Smart Images

Figure 00000093_0000 
Figure 00000094_0000 
Figure 00000095_0000
Description
1 / 89 IMAGE DECODING METHOD, IMAGE ENCODING METHOD AND NON-TRANSIENTIAL COMPUTER-READABLE RECORDING MEDIUM (Divided from BR112021004326-8) TECHNICAL FIELD
[001] This disclosure relates to a method and device for encoding / decoding images. FUNDAMENTALS OF THE TECHNIQUE
[002] As the Internet and mobile devices became available and information and communication technologies were developed, the use of multimedia data increased rapidly. Consequently, the need to improve the performance and efficiency of an image processing system increased considerably to perform a variety of services or tasks through image prediction in all types of systems, but the research and development results that could respond to this atmosphere were not sufficient.
[003] As such, in the image encoding and device and decoding method of a traditional technology, it is necessary to improve the performance for image processing, especially for image encoding or image decoding. DISCLOSURE TECHNICAL PROBLEM
[004] One objective of the present disclosure is to provide a method and a device for deriving an intraprediction mode according to a color component.
[005] One objective of this disclosure is to provide a method and a device for setting up a reference pixel for intraprediction.
[006] One objective of the present disclosure is to provide an image encoding / decoding method and a device for modifying intraprediction with an arbitrary pixel. Petition 870250082332, dated 12 / 09 / 2025, page 11 / 123 2 / 89 TECHNICAL SOLUTION
[007] An image encoding / decoding method and device according to the present disclosure can determine an intraprediction mode of a target block, generate a prediction block of the target block based on the intraprediction mode, and modify the prediction block.
[008] In an image encoding / decoding method and device according to the present disclosure, an intraprediction mode of the target block can be determined as a mode in a group of candidate prediction modes according to the target block state information.
[009] In an image encoding / decoding method and device according to the present disclosure, when the color component of the target block is a luma component, a group of candidate prediction modes consisting of a directional mode and a non-directional mode can be referenced and when the color component of the target block is a chroma component, a group of candidate prediction modes in which at least one of a directional mode, a non-directional mode, a color mode or a color copy mode is supported can be referenced.
[0010] In an image encoding / decoding method and device according to the present disclosure, the group of prediction mode candidates can be classified into a plurality of categories, considering the maximum number or priority of a prediction mode that is capable of being included in each category.
[0011] In an image encoding / decoding method and device according to the present disclosure, the group of candidate prediction modes can be classified into a first category including a non-directional mode and a directional mode and a second category including a color copy mode. Petition 870250082332, dated 12 / 09 / 2025, page 12 / 123 3 / 89
[0012] In an image encoding / decoding method and device according to the present disclosure, the first piece of information specifying any one of a plurality of categories can be obtained and the second piece of information specifying an intraprediction mode of the target block in a category according to the first piece of information can be obtained.
[0013] In an image encoding / decoding method and device according to the present disclosure, an intraprediction mode of the target block can be determined from the specified category based on the first information and the second information.
[0014] In an image encoding / decoding method and device according to the present disclosure, the second piece of information may not be obtained when only one prediction mode is included in the category according to the first piece of information.
[0015] In an image encoding / decoding method and device according to the present disclosure, the construction of a reference pixel used for intraprediction may be further included, but the reference pixel may belong to all or part of plural reference pixel lines supported in a decoding apparatus.
[0016] In an image encoding / decoding method and device according to the present disclosure, implementing at least one of a weighted filter or an interpolation filter for the constructed reference pixel may also be included.
[0017] In an image encoding / decoding method and device according to the present disclosure, the modification of the prediction block can be selectively performed based on predetermined encoding information, and the encoding information may include Petition 870250082332, dated 12 / 09 / 2025, page 13 / 123 4 / 89 at least one of an image type, a color component, state information, an encoding mode, an intraprediction mode, whether intraprediction in sub-block units is applied, or a reference pixel line. ADVANTAGEOUS EFFECTS
[0018] According to the present disclosure, a mode of intraprediction can be effectively derived.
[0019] According to the present disclosure, the efficiency of intraprediction can be improved by the selective use of a reference pixel line and predetermined filtering.
[0020] According to this disclosure, intraprediction accuracy and coding performance can be improved by modifying a prediction block. DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 is a conceptual diagram of an image encoding and decoding system according to an embodiment of the present disclosure.
[0022] Figure 2 is a component block diagram of an image encoding device according to an embodiment of the present disclosure.
[0023] Figure 3 is a component block diagram of an image decoding device according to an embodiment of the present disclosure.
[0024] Figure 4 is an exemplary diagram showing various partition forms that can be obtained in the block partition unit of the present disclosure.
[0025] Figure 5 is an exemplary diagram showing a mode of intraprediction prediction according to an embodiment of the present disclosure.
[0026] Figure 6 is an arrangement diagram of a target block and an adjacent block according to an embodiment of the present disclosure.
[0027] Figure 7 is a flowchart showing the method of Petition 870250082332, dated 12 / 09 / 2025, p. 14 / 123 5 / 89 Intraprediction modification according to a modality of the present disclosure.
[0028] Figure 8 is a pixel arrangement diagram of a target block and an adjacent block according to an embodiment of the present disclosure.
[0029] Figures 9A and 9B are exemplary diagrams in a modification method based on multiple reference pixel lines according to an embodiment of the present disclosure.
[0030] Figure 10 is a flowchart showing the intraprediction modification method according to an embodiment of the present disclosure.
[0031] Figures 11A, 11B, 11C, 11D and 11E are exemplary diagrams on an arbitrary pixel used to modify a prediction pixel according to an embodiment of the present disclosure.
[0032] Figures 12A, 12B, 12C, 12D, 12E and 12F are exemplary diagrams in which the modification is performed based on an arbitrary pixel according to an embodiment of the present disclosure. BEST WAY
[0033] An image encoding / decoding method and device according to the present disclosure can determine an intraprediction mode of a target block, generate a prediction block of the target block based on the intraprediction mode, and modify the prediction block.
[0034] In an image encoding / decoding method and device according to the present disclosure, an intraprediction mode of the target block can be determined as a mode within a group of candidate prediction modes according to target block state information.
[0035] In an image encoding / decoding method and device according to the present disclosure, when the color component of the target block is a Petition 870250082332, dated 12 / 09 / 2025, page 15 / 123 6 / 89 luma component, a group of prediction mode candidates consisting of a directional mode and a non-directional mode can be referenced, and when the target block color component is a chroma component, a group of prediction mode candidates in which at least one of a directional mode, a non-directional mode, a color mode, or a color copy mode is supported can be referenced.
[0036] In an image encoding / decoding method and device according to the present disclosure, the group of candidate prediction modes can be classified into a plurality of categories, considering a maximum number or priority of prediction modes that can be included in each category.
[0037] In an image encoding / decoding method and device according to the present disclosure, the group of candidate prediction modes can be classified into a first category including a non-directional mode and a directional mode and a second category including a color copy mode.
[0038] In an image encoding / decoding method and device according to the present disclosure, the first piece of information specifying any of the plurality of categories can be obtained and the second piece of information specifying an intraprediction mode of the target block in the category according to the first piece of information can be obtained.
[0039] In an image encoding / decoding method and device according to the present disclosure, an intraprediction mode of the target block can be determined from the specified category based on the first information and the second information.
[0040] In an image encoding / decoding method and device according to the present disclosure, the second piece of information may not be obtained when Petition 870250082332, dated 12 / 09 / 2025, page 16 / 123 7 / 89 only one prediction mode is included in the category according to the first piece of information.
[0041] In an image encoding / decoding method and device according to the present disclosure, the configuration of a reference pixel used for intraprediction may still be included, but the reference pixel may belong to all or part of a plurality of reference pixel lines supported in a decoding apparatus.
[0042] In an image encoding / decoding method and device according to the present disclosure, implementing at least one of a weighted filter or an interpolation filter for the configured reference pixel may also be included.
[0043] In an image encoding / decoding method and device according to the present disclosure, the modification of the prediction block can be selectively performed based on predetermined encoding information, and the encoding information can include at least one of an image type, a color component, state information, an encoding mode, an intraprediction mode, whether intraprediction in a sub-block unit is applied, or a reference pixel line. METHOD OF INVENTION
[0044] The present invention can be altered and modified in various ways and illustrated with reference to different exemplary embodiments, some of which will be described and shown in the drawings. However, these embodiments are not intended to limit the invention, but are interpreted as including all modifications, equivalents and substitutions that belong to the spirit and technical scope of the invention. Similar reference numbers in the drawings refer to similar elements throughout. Petition 870250082332, dated 12 / 09 / 2025, p. 17 / 123 8 / 89
[0045] Although the terms first, second, etc. may be used to describe various elements, these elements should not be limited by these terms. These terms are used only to distinguish one element from another element. For example, a first element may be called a second element and a second element may be called a first element in the same way, without departing from the teachings of the present invention. The term and / or includes any and all combinations of a plurality of associated listed items.
[0046] It will be understood that when an element is referred to as being connected to or coupled to another element, the element may be directly connected to or coupled to another element or intervening elements. Conversely, when an element is referred to as being directly connected to or directly coupled to another element, there are no intervening elements present.
[0047] The terminology used in this document is intended to describe particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms a, an and the are intended to include plural forms as well, unless the context clearly indicates otherwise. It will further be understood that the terms include and / or have, when used in this descriptive report, specify the presence of declared features, integers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof.
[0048] Unless defined otherwise, all terms used in this document, including technical or scientific terms, mean the same as generally understood by those with common skills in the art to which this disclosure relates. Terms that are generally used and Petition 870250082332, dated 12 / 09 / 2025, page 18 / 123 9 / 89 definitions in a dictionary should be interpreted as having the same contextual meaning as a related technology and, unless clearly defined in this disclosure, they are not to be interpreted as being ideal or overly formal.
[0049] Generally, one or more color spaces can be configured according to an image's color format. One or more images with a given size or one or more images with a different size can be configured according to the color format. In one example, in a YCbCr color configuration, a color format such as 4:4:4, 4:2:2, 4:2:0, Monochrome (configured only with Y), etc. may be compatible. In one example, for YCbCr 4:2:0, 1 luma component (in this example, Y) and 2 chroma components (in this example, Cb / Cr) can be configured, and in this case, a configuration ratio of one chroma component and one luma component may have an aspect ratio of 1:2. In another example, for 4:4:4, it may have the same ratio. When configured with one or more color spaces, as in the example above, an image can be partitioned into each color space.
[0050] Since an image can be classified as I, P, B, etc. according to an image type (e.g., an image type, a slice type, a part group type, a part type, a brick type, etc.), an I image type can mean an image that is self-encoded without using a reference image, a P image type can mean an image that is encoded using a reference image but only allows direct prediction, and a B image type can mean an image that is encoded using a reference image and allows direct / inverse prediction, but a portion of the above types can be combined according to an encoding definition (combining P and B) or an image type in another configuration can be supported.
[0051] A variety of information Petition 870250082332, dated 12 / 09 / 2025, page 19 / 123 The 10 / 89 encoded / decoded information generated in this disclosure may be explicitly or implicitly processed. In this respect, it can be understood that explicit processing generates encoded / decoded information in a sequence, a slice, a group of parts, a piece, a brick, a block, a sub-block, etc., to store it in a bitstream and analyzes the related information in the same unit as an encoder in a decoder to reconstruct it into decoded information. In this case, it can be understood that implicit processing processes encoded / decoded information in the same process, rule, etc., in an encoder and a decoder.
[0052] Figure 1 is a conceptual diagram of an image encoding and decoding system according to an embodiment of the present disclosure.
[0053] With reference to Figure 1, an image encoding device 105 and decoding device 100 may be a user terminal, such as a personal computer (PC), a notebook, a personal digital assistant (PDA), a portable multimedia player (PMP), a PlayStation Portable (PSP), a wireless communication terminal, a smartphone or TV, etc., or a server terminal, such as an application server, a service server, etc., and may include various devices equipped with a communication device, such as a communication modem, etc., for communication with various instruments or a wired and wireless communication network, a memory (120, 125) for storing all kinds of programs and data for inter or intra prediction to encode or decode an image, or a processor (110, 115) for program operation and control by running the same, etc.
[0054] Furthermore, an image encoded in a bitstream by an image encoding device 105 can be transmitted to an image decoding device 100 Petition 870250082332, dated 12 / 09 / 2025, page 20 / 123 11 / 89 via a wired and wireless communication network, etc., such as the Internet, a wireless local area network, a wireless LAN, a Wibro network, or a mobile radio communication network, etc., or through various communication interfaces, such as a cable or a universal serial bus, etc., in real-time or non-real-time and decoded in an image decoding device 100. And it can be reconstructed into an image and reproduced. Furthermore, an image encoded into a bitstream by an image encoding device 105 can be transmitted to an image decoding device 100 from an image encoding device 105 via a computer-readable recording medium.
[0055] The image encoding device and the image decoding device mentioned above may be separate devices, respectively, but may be made as an image encoding / decoding device according to an embodiment. In this case, some configurations of an image encoding device may be incorporated to include at least the same structure or perform at least the same function as some configurations of an image decoding device as a substantially identical technical element.
[0056] Consequently, in a detailed explanation of the following technical elements and their operating principles, etc., an overlapping explanation of the corresponding technical elements will be omitted. Furthermore, since an image decoding device corresponds to a computing device that applies an image encoding method implemented in an image encoding device for decoding, an image encoding device will primarily be described as follows.
[0057] A computing device may include memory that stores a program or a software module that Petition 870250082332, dated 12 / 09 / 2025, page 21 / 123 12 / 89 incorporates an image encoding method and / or an image decoding method and a processor that is connected to a memory to execute a program. In this case, an image encoding device can be referred to as an encoder and an image decoding device can be referred to as a decoder, respectively.
[0058] Figure 2 is a component block diagram of an image encoding device according to an embodiment of the present disclosure.
[0059] With reference to Figure 2, an image coding device 20 may include a prediction unit 200, a subtraction unit 205, a transform unit 210, a quantization unit 215, a dequantization unit 220, an inverse transform unit 225, an addition unit 230, a filter unit 235, an image coding buffer 240 and an entropy coding unit 245.
[0060] A 200 prediction unit can be incorporated using a prediction module, a software module, and can generate a prediction block in an intraprediction method or an interprediction method for a block that will be encoded. A 200 prediction unit can generate a prediction block by predicting a target block that is currently to be encoded in an image. In other words, a 200 prediction unit can generate a prediction block with the predicted pixel value of each pixel generated by predicting the pixel value of each pixel in a target block that is to be encoded in an image according to intraprediction or interprediction. Furthermore, a 200 prediction unit can cause an encoding unit to encode information in a prediction mode by transmitting information necessary to generate a prediction block, such as information in a prediction mode, such as an intraprediction mode or an interprediction mode to an encoding unit. In this case, a... Petition 870250082332, dated 12 / 09 / 2025, page 22 / 123 13 / 89 The processing unit in which the prediction is performed and the processing unit in which a prediction method and a specific content are determined can be defined according to a coding definition. For example, a prediction method, a prediction mode, etc. can be determined in a prediction unit, and the prediction can be performed in a transform unit.
[0061] In an interprediction unit, it can be divided into a temporal prediction and a spatial prediction based on a reference image. For a temporal prediction, it can be a prediction method to find a movement in an image that is temporally different from a current image, and for a spatial prediction, it can be a prediction method to find a movement in a current image (a coded region, a predefined region adjacent to a target block) that is temporally equal to a current image. It can be integrated and managed by a list of reference images or it can be managed by splitting a coding mode.
[0062] Furthermore, in an interprediction unit, it can be divided into a translational motion model and a non-translational motion model according to a motion prediction method. For a translational motion model, a prediction can be made considering only parallel translation, and for a non-translational motion model, a prediction can be made considering a motion such as rotation, distance, magnification / reduction, etc., as well as parallel translation. When a one-way prediction is assumed, a translational motion model may need one motion vector, but a non-translational motion model may need one or more motion information (e.g., one motion vector + rotation angle / scale factor, more than 2 motion vectors, etc. The following assumes the use of more than 2 motion vectors). For Petition 870250082332, dated 12 / 09 / 2025, page 23 / 123 14 / 89 In a non-translational motion model, each motion vector can be information applied to the predefined position of a target block, such as the upper left vertex, the upper right vertex, the lower left vertex, etc. of a target block, and can obtain the position of a target block region to be predicted by a corresponding motion vector in a pixel unit or a sub-block unit (an integer greater than 2 such as 4x4, 8x8). For a unit of interprediction, some processes described later according to the motion model can be commonly applied, and some processes can be applied separately.
[0063] An interprediction unit may include a reference image construction unit, a motion prediction unit, a motion compensation unit, a motion information determination unit, and a motion information encoding unit. A reference image construction unit may include an image encoded before or after a current image in a list of reference images (L0, L1). It may obtain a prediction block from a reference image included in the list of reference images and may be included in at least one of the lists of reference images as a current image is set with a reference image according to an encoding definition.
[0064] In an interprediction unit, a reference image construction unit may include a reference image interpolation unit and perform an interpolation process to a decimal pixel according to the interpolation precision. For example, an 8-lead DCT-based interpolation filter may be applied to a luma component and a 4-lead DCT-based interpolation filter may be applied to a chroma component.
[0065] In an interprediction unit, a unit of Petition 870250082332, dated 12 / 09 / 2025, page 24 / 123 15 / 89 Motion prediction is a process of searching for a block with a high correlation to a target block using a reference image and can use a variety of methods such as FBMA (full-search-based block matching algorithm), TSS (three-step search), etc. and a motion compensation unit means a process of obtaining a prediction block by a motion prediction process.
[0066] In an interprediction mode, a motion information determination unit can perform a process to select the ideal motion information from a target block, and the motion information can be encoded by a motion information encoding mode, such as a jump mode, a merge mode, a competition mode, etc. The mode can be configured by combining the supported modes according to a motion model, and a jump mode (translation), a jump mode (non-translation), a merge mode (translation), a merge mode (non-translation), a competition mode (translation), and a competition mode (non-translation) can be an example of this. Some of the modes can be included in a candidate group according to an encoding definition.
[0067] The motion information encoding mode can obtain a prediction value for the motion information (a motion vector, a reference image, a prediction direction, etc.) of a target block in at least one candidate block, and when two or more candidate blocks are supported, ideal candidate selection information can be generated. In a jump mode (without residual signal) and a merge mode (with a residual signal), the prediction value can be used as the motion information of a target block, and in a competition mode, the motion information of a target block and difference value information with the prediction value can be generated. Petition 870250082332, dated 12 / 09 / 2025, page 25 / 123 16 / 89
[0068] A group of candidates for the motion information prediction value of a target block can be configured adaptively and variably according to a motion information encoding mode. The motion information of a block spatially adjacent to a target block (e.g., a left block, a top block, a top left block, a top right block, a bottom left block, etc.) can be included in a candidate group, the motion information of a block temporarily adjacent to a target block (e.g., a left block, a right block, a top block, a bottom block, a top left block, a top right block, a bottom left block, a bottom right block, etc.) including a block <central>In another image responding to or corresponding to a target block) can be included in a candidate group, and mixed motion information from a spatial candidate and a temporal candidate (e.g., information obtained by averaging, centering, etc., more than 2 candidates through the motion information of a spatially adjacent block and the motion information of a temporally adjacent block. Motion information can be obtained at a target block unit or at a block subunit for a target block) can be included in a candidate group.
[0069] There may be a priority for configuring a group of candidates for motion information prediction value. The order included in a candidate group configuration can be determined according to priority, and a candidate group can be configured when the number of candidate groups (determined according to a motion information encoding mode) is reached according to priority. In this case, priority can be determined by the order of motion information from a spatially adjacent block, the motion information from a Petition 870250082332, dated 12 / 09 / 2025, page 26 / 123 17 / 89 block temporarily adjacent and mixed motion information of a spatial candidate and a temporal candidate, but it can also be modified.
[0070] For example, between spatially adjacent blocks, it can be included in a group of candidates in the order of left block - top - top right - bottom left - top left, etc. and for temporally adjacent blocks, it can be included in a group of candidates in the order of bottom right block - middle - bottom right, etc.
[0071] A 205 subtraction unit can generate a residual block by subtracting a prediction block from a target block. In other words, a 205 subtraction unit can generate a residual block, a block-shaped residual signal, by calculating the difference between a pixel value for each pixel of a target block to be encoded and a predicted pixel value for each pixel of a prediction block generated in a prediction unit. Furthermore, a 205 subtraction unit can generate a residual block in a unit, except for a block unit obtained in a block partition unit described later.
[0072] A transform unit 210 can transform a signal belonging to a spatial domain into a signal belonging to a frequency domain, and a signal obtained in a transform process is referred to as a transformed coefficient. For example, a transform block with a transformed coefficient can be obtained by transforming a residual block having a residual signal transmitted from a subtraction unit, and an input signal is determined according to a coding definition, which is not limited to a residual signal.
[0073] A transform unit can transform a residual block using a transform method, such as Hadamard Transform, DST-Based Transform (Discrete Sine Transform), DCT-Based Transform Petition 870250082332, dated 12 / 09 / 2025, page 27 / 123 18 / 89 (Discrete Cosine Transform), etc., and various improved and modified transform methods thereof may be used without being limited to them.
[0074] At least one transform method among the transform methods can be supported and at least one detailed transform method in each transform method can be supported. In this case, the detailed transform method can be a transform method in which a part of a basis vector is configured differently in each transform method.
[0075] For example, for DCT, more than 1 detailed transform method between DCT-1 and DCT-8 can be supported, and for DST, more than 1 detailed transform method between DST-1 and DST-8 can be supported. A group of transform method candidates can be configured by configuring a part of the detailed transform method. In one example, DCT-2, DCT-8, and DST-7 can be configured as a group of transform method candidates to perform the transform.
[0076] The transformation can be performed in the horizontal / vertical direction. For example, the pixel value of a spatial domain can be transformed into a frequency domain by performing a total of two-dimensional transformations, one-dimensional transformation in a horizontal direction with the DCT-2 transform method and one-dimensional transformation in a vertical direction with the DST-7 transform method.
[0077] The transform can be performed using a fixed transform method or by adaptively selecting a transform method according to an encoding definition. In this case, for an adaptive case, a transform method can be selected using an explicit or implicit method. For an explicit case, each transform method selection information or transform method set selection information applied to a horizontal direction and Petition 870250082332, dated 12 / 09 / 2025, page 28 / 123 19 / 89 vertical can be generated in a unit of a block, etc. For an implicit case, an encoding definition can be defined according to an image type (I / P / B), a color component, a block size / shape / position, an intraprediction mode, etc., and consequently, a predetermined transformation method can be selected.
[0078] Furthermore, some transforms may be omitted according to an encoding definition. In other words, this means that more than one of the horizontal / vertical units may be explicitly or implicitly omitted.
[0079] In addition, a transform unit can transmit information needed to generate a transform block to an encoding unit to encode and store information in a bit stream to transmit it to a decoder, and the decoding unit of a decoder can analyze information for this purpose to use it in a reverse transform process.
[0080] A quantization unit 215 can quantize an input signal and, in this case, a signal obtained in a quantization process is referred to as a quantized coefficient. For example, a quantization block with a quantized coefficient can be obtained by quantizing a residual block with a residual transformed coefficient transmitted from a transform unit and an input signal is determined according to a coding definition, which is not limited to a residual transformed coefficient.
[0081] A quantization unit can quantize a transformed residual block using a quantization method, such as Uniform Dead Zone Threshold Quantization, Weighted Matrix Quantization, etc., and various improved and modified quantization methods thereof can be used without being limited to them. Petition 870250082332, dated 12 / 09 / 2025, page 29 / 123 20 / 89
[0082] A quantization process can be omitted according to an encoding definition. For example, a quantization process can be omitted (including an inverse process) according to an encoding definition (e.g., a quantization parameter is 0, i.e., lossless compression environment). In another example, a quantization process can be omitted when the compression performance via quantization is not shown according to the characteristics of an image. In this case, a region where a quantization process is omitted between the quantization blocks (M x N) can be all or part of the regions (M / 2 x N / 2, M x N / 2, M / 2 x N, etc.) and quantization omission selection information can be determined implicitly or explicitly.
[0083] A quantization unit can transmit information needed to generate a quantization block to an encoding unit to encode and store information in a bit stream to transmit it to a decoder, and the decoding unit of a decoder can analyze the information in this way to use it for a dequantization process.
[0084] In the example above, it was described under the assumption that the residual block is transformed and quantized by the transform unit and the quantization unit, but the residual block with a transformed coefficient can be generated by transforming the residual signal of the residual block and the quantization process may not be performed, only a quantization process may be performed without transforming the residual signal of the residual block into a transformed coefficient, and both the transform process and the quantization process may not be performed. This can be determined according to a coding definition.
[0085] A dequantization unit of 200 dequantizes a residual block quantized by a quantization unit of 215. In Petition 870250082332, dated 12 / 09 / 2025, page 30 / 123 21 / 89 In other words, a dequantization unit 220 generates a residual block having a frequency coefficient dequantizing a quantized frequency coefficient column.
[0086] An inverse transform unit 225 inversely transforms a dequantized residual block by a dequantization unit 220. In other words, an inverse transform unit 225 generates a residual block that has a pixel value by inversely transforming the frequency coefficients of a dequantized residual block, i.e., a reconstructed residual block. In this case, an inverse transform unit 225 can perform the inverse transform by inversely using a transform method used in a transform unit 210.
[0087] An addition unit 230 reconstructs a target block by adding a predicted prediction block in a prediction unit 200 and a residual block reconstructed by an inverse transform unit 225. The reconstructed target block can be stored as a reference image (or a reference block) in an encoding image buffer 240 and can be used as a reference image when encoding the next block of a target block, another block, or another image in the future.
[0088] A 235 filter unit may include one or more post-processing filter processes, such as an unblocking filter, SAO (Sample Adaptive Shift), ALF (Adaptive Loop Filter), etc. An unblocking filter can remove block distortion that is generated at the boundary between blocks in a reconstructed image. ALF can perform filtering based on a value obtained by comparing a reconstructed image after a block has been filtered through an unblocking filter with an original image. SAO can reconstruct an offset difference with an original image by one pixel unit for a residual block on which an unblocking filter is applied. This post-processing filter can be applied to Petition 870250082332, dated 12 / 09 / 2025, page 31 / 123 22 / 89 a reconstructed image or block.
[0089] A 240-encoding image buffer can store a block or a reconstructed image in a 235-filter unit. A reconstructed block or image stored in a 240-encoding image buffer can be provided to a 200-prediction unit performing intraprediction or interprediction.
[0090] An entropy coding unit 245 scans a quantized frequency coefficient column generated according to various scanning methods to generate a quantized coefficient column and encodes and outputs it using an entropy coding method, etc. A scanning pattern can be defined as one of several patterns such as a zigzag, a diagonal line, a raster, etc. Furthermore, encoding data, including encoding information transmitted from each building unit, can be generated and sent in a bitstream.
[0091] Figure 3 is a component block diagram of an image decoding device according to an embodiment of the present disclosure.
[0092] With reference to Figure 3, an image decoding device 30 can be configured including an entropy decoding unit 305, a prediction unit 310, a dequantization unit 315, an inverse transform unit 320, an adder-subtractor 325, a filter 330 and a decoding image buffer 335.
[0093] In addition, a 310 prediction unit can be configured including an intraprediction module and an interprediction module.
[0094] First, when an image bitstream transmitted from an image encoding device 20 is received, it can be transmitted to an entropy decoding unit 305. Petition 870250082332, dated 12 / 09 / 2025, page 32 / 123 23 / 89
[0095] An entropy decoding unit 305 can decode decoding data including quantized coefficients by decoding a bit stream and decoding information transmitted to each building unit.
[0096] A prediction unit 310 can generate a prediction block based on data transmitted from an entropy decoding unit 305. In this case, based on a reference image stored in a decoded image buffer 335, a list of reference images can be configured using a standard configuration method.
[0097] An interprediction unit may include a reference image construction unit, a motion compensation unit, and a motion information decoding unit, and some may perform the same process as an encoder and some may perform a reverse derivation process.
[0098] A dequantization unit 315 can dequantize quantized transformed coefficients that are transmitted in a bit stream and decoded in an entropy decoding unit 305.
[0099] An inverse transform unit 320 can generate a residual block by applying inverse DCT, inverse integer transform, or similar inverse transform methods to a transformed coefficient.
[00100] In this case, a dequantization unit 315 and an inverse transform unit 320 can be incorporated in various ways while inversely performing a process carried out in the transform unit 210 and the quantization unit 215 of the image encoding device 20 described above. For example, the inverse transform and the same process shared with a transform unit 210 and a quantization unit 215 can be used, and a transform and dequantization process can be inversely performed with information Petition 870250082332, dated 12 / 09 / 2025, page 33 / 123 24 / 89 about a transform and quantization process in an image encoding device 20 (e.g., a transform size, a transform shape, a quantization type, etc.).
[00101] A residual block after a dequantization and inverse transform process can be added to a prediction block derived by a prediction unit 310 to generate a reconstructed image block. Such addition can be performed by an adder-subtractor 325.
[00102] A 330 filter can apply an unlocking filter to a reconstructed image block to remove a blocking phenomenon, if necessary, and additionally use other loop filters to improve image quality before and after the decoding process.
[00103] A constructed and filtered image block can be stored in a decoding image buffer 335.
[00104] Although not shown in a drawing, a block partition unit may be additionally included in an image encoding / decoding device.
[00105] It can be divided into blocks with various units and sizes by a block partitioning unit. A base coding unit (or the maximum coding unit. Coding tree unit. CTU) can mean a base (or initial) unit for prediction, transformation, quantization, etc. in an image coding process. In this case, a base coding unit can be configured with one luma base coding block (or, the maximum coding block. Coding tree block. CTB) and two base chroma coding blocks according to a color format (in this example, YCbCr) and the size of each block can be determined according to a color format. And a coding block (CB) can be obtained according to a partitioning process. A coding block can be understood as a unit that is not Petition 870250082332, dated 12 / 09 / 2025, page 34 / 123 25 / 89 partitioned into more encoding blocks according to a fixed boundary and can be defined as an initial unit for partitioning into a lower unit. In the present disclosure, a block can be understood as a broad concept that includes a variety of shapes, such as a triangle, a circle, etc., without being limited to a square shape.
[00106] It should be understood that the contents mentioned below are directed to a color component, but can be altered and applied to another color component in proportion to a ratio according to a color format (for example, for YCbCr 4:2:0, the aspect ratio of a luma component and a chroma component is 2:1). Furthermore, it should be understood that block partitioning dependent on another color component (for example, in the case of being dependent on a result of the block partitioning of Y in Cb / Cr) may be possible, but block partitioning independent of each color component may also be possible. Additionally, a common block partitioning configuration (considering the ratio to a length ratio) can be used, but it is necessary to consider and understand that a separate block partitioning configuration is used according to a color component.
[00107] In a block partitioning unit, a block can be described as M x N, and the maximum and minimum values of each block can be obtained within a range. For example, when the maximum value of a block is defined as 256x256 and the minimum value of a block is defined as 4x4, a block of 2mx2n (in this example, men are integers from 2 to 8), a block of size 2mx2m (in this example, men are integers from 2 to 128), or a block of size mxn (in this example, men are integers from 4 to 256) can be obtained. In this case, men can be identical or non-identical, and one or more ranges where a block for the maximum value, minimum value, etc., is supported can be generated.
[00108] For example, information about the maximum size, Petition 870250082332, dated 12 / 09 / 2025, page 35 / 123 26 / 89 The minimum size, etc. of a block can be generated, and information about the maximum size, minimum size, etc. of a block in some partition configurations can be generated. In this case, the former may be range information about the maximum and minimum sizes that can be generated in an image, and the latter may be information about the maximum and minimum sizes that can be generated according to some partition configurations. In this case, the partition configurations can be defined by an image type (I / P / B), a color component (YCbCr, etc.), a block type (encoding / prediction / transform / quantization, etc.), a partition type (index or type), a partition method (QT, BT, TT, etc. in a tree method, SI2, SI3, SI4, etc. in an index method), etc.
[00109] Furthermore, there may be a limit on the aspect ratio (a block shape) that a block can have, and a limit value condition for it can be defined. In this case, only a block below / under an arbitrary limit value (k) can be supported, ek can be defined according to an aspect ratio such as A / B (A is a value greater than or equal to the width or height, B is the remaining value) and can be a real number greater than 1, such as 1.5, 2, 3, 4, etc. As in the example above, a limit condition on a block shape in an image can be supported, or one or more limit conditions can be supported according to a partition configuration.
[00110] In summary, whether a block partition is supported can be determined by the range and condition mentioned above, the partition configuration mentioned later, etc. For example, when a block condition that a candidate (a child block) according to the partition of a block (a parent block) is supported, the corresponding partition may be supported, and otherwise, the corresponding partition may not be supported.
[00111] A block partition unit can be Petition 870250082332, dated 12 / 09 / 2025, page 36 / 123 27 / 89 is configured to be related to each construction unit for an image encoding device and decoding device, through which the size and shape of a block can be determined. In this case, a defined block can be defined differently according to a construction unit, and a prediction block for a prediction unit, a transform block for a transform unit, a quantization block for a quantization unit, etc., can correspond to it. But, a block unit according to another construction unit can be additionally defined without being limited to this. The present disclosure mainly describes a case where the input and output are rectangular in each construction unit, but input / output in other shapes (e.g., a right triangle, etc.) may be possible in some construction units.
[00112] The size and shape of an initial (or starting) block in a block partitioning unit can be determined by a higher unit. The initial block can be partitioned into a smaller block, and when the ideal size and shape according to the block partitioning are determined, that block can be designated as an initial block in a lower unit. In this case, a higher unit can be an encoding block, and a lower unit can be a prediction block or a transform block, but they are not limited to the same and can be modified in various ways. As in the example above, when an initial block in a lower unit is determined, a partitioning process to find the ideal size and shape can be performed as a higher unit.
[00113] In summary, a block partitioning unit can partition a base encoding block (or the maximum encoding block) into at least one encoding block, and an encoding block can be partitioned into at least one block. Petition 870250082332, dated 12 / 09 / 2025, page 37 / 123 28 / 89 of prediction / transform block / quantization block. Furthermore, a prediction block can be partitioned into at least one transform block / quantization block, and a transform block can be partitioned into at least one quantization block. In this case, some blocks may have a dependent (i.e., defined by an upper unit and a lower unit) or independent relationship with another block. In one example, a prediction block might be an upper unit for a transform block or an independent unit of a transform block, and various relationship configurations may be possible depending on a block type.
[00114] According to a definition of encoding, whether a higher unit and a lower unit are combined can be determined. In this case, combining units means that an encoding process in a lower unit (e.g., a prediction unit, a transform unit, an inverse transform unit, etc.) is performed by a block in a higher unit (size and shape) without partitioning from a higher unit to a lower unit. In other words, it can mean that a partitioning process in a plurality of units is shared and the partitioning information is generated in one unit of them (e.g., a higher unit).
[00115] In one example, (when a coding block is combined with a prediction block and a transform block), a prediction, transform, and inverse transform process can be performed in one coding block.
[00116] In one example, (when a coding block is combined with a prediction block), a prediction process can be performed on a coding block and a transform and inverse transform process can be performed on a transform block that is identical to or smaller than a coding block. Petition 870250082332, dated 12 / 09 / 2025, page 38 / 123 29 / 89
[00117] In one example, (when a coding block is combined with a transform block), a prediction process can be performed on a prediction block identical to or smaller than a coding block, and a transform and inverse transform process can be performed on a coding block.
[00118] In one example, (when a prediction block is combined with a transform block), a prediction process can be performed in a prediction block identical to or smaller than a coding block, and a transform and inverse transform process can be performed in a prediction block.
[00119] In one example, (when the combination is not performed in any block), a prediction process can be performed in a prediction block identical to or smaller than a coding block, and a transform and inverse transform process can be performed in a transform block identical to or smaller than a coding block.
[00120] The example above described a variety of cases in a coding, prediction, and transformation block, but is not limited to them.
[00121] For combinations between units, a fixed configuration can be supported in an image, or an adaptive configuration can be supported considering various encoding elements. In this case, the encoding elements can include an image type, a color component, an encoding mode (Intra / Inter), a partition configuration, a block size / shape / position, an aspect ratio, prediction-related information (e.g., an intraprediction mode, an interprediction mode, etc.), transform-related information (e.g., transform method selection information, etc.), quantization-related information (e.g., quantization region selection information, encoding information). Petition 870250082332, dated 12 / 09 / 2025, page 39 / 123 30 / 89 quantized transformed coefficient, etc.), etc.
[00122] As described above, when a block with the ideal size and shape is found, mode information for it (e.g., partition information, etc.) can be generated. The mode information can be stored in a bitstream with information generated in a building unit to which a block belongs (e.g., prediction-related information, transform-related information, etc.) and transmitted to a decoder and can be analyzed in the same unit in a decoder and used in an image decoding process.
[00123] Next, a partitioning method will be described and for the sake of clarity, it is assumed that an initial block has a square shape, but as it can be applied equally or similarly even when an initial block has a rectangular shape, it is not limited to that.
[00124] A block partition unit can support several partition types. For example, it can support a tree-based partition or an index-based partition, and other methods may be supported. A tree-based partition can determine a partition format with various types of information (e.g., whether it should be partitioned, a tree type, a partition direction, etc.), and an index-based partition can determine a partition format with predetermined index information.
[00125] Figure 4 is an exemplary diagram showing various partition forms that can be obtained in the block partition unit of the present disclosure.
[00126] In this example, it is assumed that a partition shape like Figure 4 is obtained by performing a partition (or process), but it can also be obtained by a plurality of partition moves without being limited to the same. Furthermore, an additional partition shape not shown in Figure 4 may Petition 870250082332, dated 12 / 09 / 2025, page 40 / 123 31 / 89 is possible. (Tree-based partitioning)
[00127] In the tree-based partitioning of this disclosure, Square Tree (QT), Binary Tree (BT), Ternary Tree (TT), etc. can be supported. When one tree method is supported, it can be referred to as a single tree partition, and when more than two tree methods are supported, it can be referred to as a multiple tree partition.
[00128] QT means a method (n) in which a block is divided into two, respectively (i.e., 4 divisions) in a horizontal and vertical direction, BT means a method (bag) in which a block is divided into two in a horizontal or vertical direction and TT means a method (ham) in which a block is divided into three in a horizontal or vertical direction.
[00129] In this case, QT can support a 4-division method (o, p) by limiting a partition direction to a horizontal and a vertical direction. Additionally, BT can support only one method (b, c) with a uniform size or only one method (dag) with a non-uniform size, or it can mix and support two methods. Furthermore, TT can support only one method (h, j, k, m) with an arrangement where the partition is slanted in a specific direction (1:1:2, 2:1:1, etc. from left to right or top to bottom), or it can support only one method (i, l) of being arranged in the center (1:2:1, etc.), or it can mix and support two methods. Additionally, it is also possible to support a method (q) where a partition direction is divided into four, respectively (i.e., 16 divisions) in a horizontal and a vertical direction.
[00130] Among the tree methods, it is possible to support a partitioning method z(b, d, e, h, i, j, o) only in a horizontal partitioning direction, or to support a partitioning method z(c, f, g, k, l, m, p) only in the vertical direction, or to mix and support both methods. In this case, z can be an integer. Petition 870250082332, dated 12 / 09 / 2025, p. 41 / 123 32 / 89 is greater than 2, like 2, 3, and 4.
[00131] In the present disclosure, it is described on the assumption that QT supports n, BT supports b and TT supports ie l.
[00132] According to a coding definition, one or more tree partitioning methods may be supported. For example, QT may be supported, QT / BT may be supported, or QT / BT / TT may be supported.
[00133] The example above is for a case where the base tree partition is QT and BT and TT are included in an additional partition method according to whether other trees are supported, but several modifications may be possible. In this case, information about whether other trees are supported (bt_enabled_flag, tt_enabled_flag, bt_tt_enabled_flag, etc. It can have a value of 0 or 1 and for 0, it is not supported and for 1, it is supported.) can be determined implicitly according to an encoding definition or can be explicitly determined in a unit of a sequence, an image, a slice, a group of parts, a part, a brick, etc.
[00134] Information about whether to partition (tree_part_flag or qt_part_flag, bt_part_flag, tt_part_flag, bt_tt_part_flag. Can have a value of 0 or 1, and for 0, it is not partitioned and for 1, it is partitioned.) can be included in the partition information. Additionally, according to a partition method (BT and TT), information about a partition direction (dir_part_flag or bt_dir_part_flag, tt_dir_part_flag, bt_tt_dir_part_flag. Can have a value of 0 or 1, and for 0, <width / horizontal> and for 1, <height / vertical>) can be added, which can be generated when the partition is performed.
[00135] When a plurality of tree partitions is supported, partition information can be configured in several ways. The following will describe, assuming a case where partition information is configured at a depth level (i.e., supported partition depth is...). Petition 870250082332, dated 12 / 09 / 2025, page 42 / 123 33 / 89 defined as greater than 1, and a recursive partition may be possible, but this is for the sake of explanation.
[00136] In an example (1), confirm the information about the possibility of partitioning. In this case, when the partition is not performed, the partition is terminated.
[00137] When partitioning is performed, confirm the selection information for a partition type (e.g., tree_idx. For 0, QT, for 1, BT, and for 2, TT). In this case, additionally confirm the partition direction information according to the selected partition type and proceed to the next step. (If additional partitioning is possible because the partition depth does not reach the maximum, start again from the beginning, and when partitioning is impossible, the partition will be terminated).
[00138] In example (2), confirm the information about whether any tree method (QT) performs the partition and proceed to the next step. In this case, when the partition is not performed, confirm the information about whether any tree method (BT) performs the partition. In this case, the partition is not performed, confirm the information about whether any tree method (TT) performs the partition. In this case, when the partition is not performed, the partition is terminated.
[00139] When any tree method (QT) performs the partition, proceed to the next step. Also, when any tree method (BT) performs the partition, confirm the partition direction information and proceed to the next step. Also, when any tree partition method (TT) performs the partition, confirm the partition direction information and proceed to the next step.
[00140] In example (3), confirm the information about whether some tree method (QT) performs partitioning. In this case, when partitioning is not performed, confirm the information about whether some tree methods (BT and TT) perform partitioning. In this Petition 870250082332, dated 12 / 09 / 2025, page 43 / 123 34 / 89 case, when the partition is not performed, the partition is terminated.
[00141] When any tree method (QT) performs the partition, proceed to the next step. Also, when some tree methods (BT and TT) perform the partition, confirm the partition direction information and proceed to the next step.
[00142] The example above may be a case where the priority of a tree partition exists (examples No. 2 and 3) or does not exist (example No. 1), but it can be modified in various ways. Furthermore, a case where the partition in a current step is not related to a partition result in a previous step is described in the example above, but the partition in a current step can also be defined as dependent on a partition result in a previous step.
[00143] For example, in the case of examples No. 1 to 3, when the partitioning of some tree method (QT) is performed in a previous step to proceed to a current step, the partitioning of the same tree method (QT) can also be supported in a current step.
[00144] On the other hand, when the partitioning of some tree method (QT) is not performed in a previous step and the partitioning of some tree methods (BT or TT) is performed to proceed to a current step, the partitioning of some tree methods (BT and TT) excluding the partitioning of some tree method (QT) can also be configured to be supported in a subsequent step, including a current step.
[00145] The above case means that the supported tree configuration for block partitioning can be adaptive, which means that the partition information configuration mentioned above can also be configured differently. (It is assumed that an example described later is example No. 3). In other words, in the example above, when the partitioning of some tree method (QT) is not performed in a Petition 870250082332, dated 12 / 09 / 2025, page 44 / 123 35 / 89 previous step, the partitioning process can be performed in a current step without considering any tree method (QT). Furthermore, partition information in a related tree method (e.g., information about whether to partition, partition direction information, etc.) is not considered. In this example <qt>Information about whether to partition can be removed and configured.
[00146] The example above is a case for adaptive partition information configuration in a case where block partitioning is allowed (e.g., a block size is within a range between the maximum and minimum values, the partition depth of each tree method does not reach the maximum depth).<profundidade permitida> , etc.) and adaptive partition information configuration may be possible even when the block partition is limited (e.g., a block size is not within a range between the maximum and minimum values, the partition depth of each tree method reaches the maximum depth, etc.).
[00147] As mentioned above, a tree-based partition in the present disclosure can be performed with a recursive method. For example, when the partition flag of a coding block where the partition depth is k is 0, the coding of a coding block is performed in a coding block where the partition depth is k; when the partition flag of a coding block where the partition depth is k is 1, the coding of a coding block is performed in N subcoding blocks where the partition depth is k + 1 according to a partitioning method (in this case, N is an integer greater than 2, such as 2, 3, 4).
[00148] The subcoding block can be defined as a (k + 1) encoding block and partitioned into a (k + 2) subcoding block in the above process and such partitioning method Petition 870250082332, dated 12 / 09 / 2025, page 45 / 123 36 / 89 hierarchical can be determined according to a partition configuration such as a partition range, allowed partition depth, etc.
[00149] In this case, a bitstream structure to represent partition information can be selected from one or more scanning methods. For example, a bitstream for partition information can be configured based on the partition depth order or a bitstream for partition information can be configured based on whether there is a partition or not.
[00150] For example, if it is based on partition depth order, it is a method of obtaining partition information at a subsequent level depth after obtaining partition information at a current level depth based on a first block, and if it is based on whether there is a partition, it means a method of preferably obtaining additional partition information in a partitioned block based on a first block, and another additional scanning method may be considered.
[00151] The maximum block size or minimum block size may have a common configuration regardless of a tree type (or all trees), or it may have a separate configuration according to each tree, or it may have a configuration common to more than two trees. In this case, the maximum block size may be set to be identical to or smaller than the maximum encoding block. If the maximum block size according to a first predetermined tree is not identical to the maximum encoding block, partitioning is implicitly performed using a second predetermined tree method until the maximum block size of the first tree is reached.
[00152] And, common partition depth can be supported independently of a tree type or separate partition depth can be supported according to each tree. Petition 870250082332, dated 12 / 09 / 2025, page 46 / 123 37 / 89 or a common partition depth for more than two trees may be supported. Alternatively, the partition depth may be supported for some trees and the partition depth may not be supported for others.
[00153] An explicit syntax element for configuration information can be supported and some configuration information can be determined implicitly. (Index-based partitioning)
[00154] In the index-based partitioning of this disclosure, a CSI (Constant Split Index) method, a VSI (Variable Split Index) method, etc. can be supported.
[00155] A CSI method can be a method in which k subblocks are obtained by partitioning in a predetermined direction, where k can be an integer greater than 2, such as 2, 3, 4. In detail, it can be a partitioning method for configuration in which the size and shape of a subblock are determined based on the value k, regardless of the size and shape of a block. In this case, for a predetermined direction, one or two or more directions among a horizontal direction, a vertical direction, and a diagonal direction (top left -> bottom right direction or bottom left -> top right direction, etc.) can be combined.
[00156] The index-based CSI partitioning method of this disclosure may include a candidate that is partitioned in z in either a horizontal or vertical direction. In this case, z may be an integer greater than 2, such as 2, 3, 4, and one of the widths or heights of each subblock may be the same, and the other may be the same or different. The aspect ratio of the subblock may be A1:A2:...:AZ, and A1 to AZ may be an integer greater than 1, such as 1, 2, 3.
[00157] Furthermore, a candidate that is partitioned into x Petition 870250082332, dated 12 / 09 / 2025, p. 47 / 123 38 / 89 and y, respectively, in a horizontal and vertical direction can be included. In this case, x and y can be an integer greater than 1, such as 1, 2, 3, 4, but when x and y are both 1 (because a already exists), it can be bounded. Figure 4 showed a case where the ratio of the width or height of each subblock is the same, but a candidate including a different case can be included.
[00158] Furthermore, a candidate that is partitioned in w in a direction between some diagonal direction (upper left -> lower right direction) or some diagonal direction (lower left -> upper right direction) can be included and w can be an integer greater than 2, such as 2, 3.
[00159] With reference to Figure 4, it can be classified into a symmetric partition form (b) and an asymmetric partition form (d, e) according to the length ratio of each sub-block and can be classified into a partition form (k, m) inclined in a specific direction and a partition form (k) arranged in the center. A partition form can be defined by a variety of encoding elements including the shape of a sub-block, etc., as well as the length ratio of a sub-block, and a supported partition form can be implicitly or explicitly determined according to an encoding definition. Therefore, a group of candidates in an index-based partitioning method can be determined based on a supported partition form.
[00160] On the other hand, a VSI method can be a method in which more than one sub-block is obtained by partitioning in a predetermined direction as the width (w) or height (h) of a sub-block is fixed and weh can be an integer greater than 1, such as 1, 2, 4, 8, etc. In detail, it can be a partitioning method for configuration in which the number of sub-blocks is determined based on the size and shape of a block and the value w or n. Petition 870250082332, dated 12 / 09 / 2025, page 48 / 123 39 / 89
[00161] The index-based VSI partitioning method of this disclosure may include a partitioned candidate fixing one of the widths or heights of a sub-block. Alternatively, it may include a partitioned candidate fixing both the width and height of a sub-block. Because the width or height of a sub-block is fixed, uniform partitioning in the horizontal or vertical direction may be permitted, but is not limited to it.
[00162] When a block is M x N before partitioning and the width of a sub-block is fixed (w) or the height is fixed (h) or both the width and height are fixed (w, h), the number of sub-blocks that are obtained can be (M * N) / w, (M * N) / h, (M * N) / w / h, respectively.
[00163] According to one coding definition, only the CSI method can be supported, only the VSI method can be supported, or both methods can be supported, and information about a supported method can be implicitly or explicitly determined.
[00164] In the present disclosure, it is described on the assumption that a CSI method is supported.
[00165] According to one encoding definition, a candidate group can be configured by including two or more candidates among the index partitions.
[00166] For example, a group of candidates, such as {a, b, c}, {a, b, c, n}, {aag, n} can be set up, which may be a case where a block shape that is predicted to be generated considerably based on general statistical features, such as a block shape that is partitioned into two (2) in the horizontal or vertical direction or partitioned into two (2) in the horizontal or vertical direction, respectively, is set up as a group of candidates.
[00167] Alternatively, a group of candidates, such as {a, b}, {a, o}, {a, b, o} or {a, c}, {a, p}, {a, c, p}, can be configured, which includes a candidate that is partitioned into two Petition 870250082332, dated 12 / 09 / 2025, p. 49 / 123 40 / 89 (2) and four (4), respectively, in a horizontal and vertical direction. It may be a case where a block shape that is expected to be considerably partitioned in a specific direction is configured as a candidate group.
[00168] Alternatively, a candidate group, such as {a, o, p} or {a, n, q}, can be configured, which may be a case where a block shape that is expected to be considerably partitioned into a smaller size than a block before partitioning is configured as a candidate group.
[00169] Alternatively, a candidate group such as {a, r, s} can be set up, which may be a case where a non-square partition shape is set up as a candidate group based on a judgment that the optimal partition result that can be obtained in a rectangular shape by another method (a tree method) is in a block before the partition is obtained.
[00170] As in the example above, multiple candidate group configurations may be possible and more than one candidate group configuration may be supported considering a variety of coding elements.
[00171] When the candidate group configuration is complete, several partition information settings may be possible.
[00172] For example, index selection information can be generated in a candidate group that is configured to include a non-partitioned candidate (a) and a partitioned candidate (bas).
[00173] Alternatively, information showing whether it should be partitioned (whether a partitioning method is used or not) can be generated, and index selection information can be generated in a candidate group that is configured with a candidate (bas) that is partitioned when partitioning is performed (if not Petition 870250082332, dated 12 / 09 / 2025, page 50 / 123 41 / 89 a) .
[00174] Various partition information configurations, excluding the description above, may be possible and, except for information showing whether there is a partition, a binary bit may be assigned to the index of each candidate in a candidate group through various methods such as fixed-length binarization, variable-length binarization, etc. When the number of candidate groups is 2, a bit of 1 may be assigned to the index selection information and when the number of candidate groups is greater than 3, a bit of 1 or more may be assigned to the index selection information.
[00175] Unlike a tree-based partitioning method, an index-based partitioning method can be a selective configuration method of a partition shape that is expected to be considerably generated in a group of candidates. [0017 6] And, as the number of bits to display index information can increase according to the number of supported candidate groups, it may be a suitable method for a mono hierarchical partition (e.g., partition depth is limited to 0), not a tree-based hierarchical partition (recursive partition). In other words, it may be a method that supports a partition movement and that may not additionally partition a sub-block obtained by index-based partitioning.
[00177] In this case, it may mean that further partitioning into a smaller block of the same type is impossible (for example, an encoding block obtained by an index partitioning method may not be further partitioned into an encoding block), but further partitioning into a block of a different type may also be defined as impossible (for example, partitioning from an encoding block not only into an encoding block but also into a prediction block is impossible). Petition 870250082332, dated 12 / 09 / 2025, page 51 / 123 42 / 89 impossible). Of course, it is not limited to the example above and an example for another modification may be possible.
[00178] Next, a case will be described in which a block partition configuration is determined based on a block type between encoding elements.
[00179] First, a coding block can be obtained in a partitioning process. In this case, for a partitioning process, a tree-based partitioning method can be used, and a result of a partitioning form, such as a (no division), n (QT), b, c (BT), i, l (TT), etc. in Figure 4, can come according to a tree type. According to a coding definition, each tree type can be combined in various ways, such as QT / QT + BT / QT + BT + TT, etc.
[00180] The example mentioned below shows a process in which a prediction block and a transform block are finally partitioned based on a coding block obtained in the process and assumes a case where a prediction, transform and inverse transform process are performed based on each partitioned size.
[00181] In example (1), a prediction process can be performed when a prediction block is defined with the same size as a coding block and a transform and inverse transform process can be performed when a transform block is defined with the same size as a coding block (or a prediction block). Since a prediction block and a transform block are defined based on a coding block, there is no partition information that is generated separately.
[00182] In an example (2), a prediction process can be performed when a prediction block is defined with the same size as a coding block. For a transform block, a transform block can be obtained in a partitioning process based on a coding block (or a Petition 870250082332, dated 12 / 09 / 2025, page 52 / 123 43 / 89 prediction block) and a transform and inverse transform process can be performed based on a obtained size.
[00183] In this case, a tree-based partitioning method can be used for a partitioning process and a result of a partitioning form, such as a (no division), b, c (BT), i, l (TT), n (QT), etc. in Figure 4 can come according to a tree type. According to an encoding definition, each tree type can be combined in various ways, such as QT / BT / QT + BT / QT + BT + TT, etc.
[00184] In this case, an index-based partitioning method can be used for a partitioning process, and a result of a partitioning form, such as a (no division), b, c, d, etc. in Figure 4, can come according to an index type. According to an encoding definition, a variety of candidate group configurations, such as {a, b, c}, {a, b, c, d}, etc., may be possible.
[00185] In an example (3), for a prediction block, a prediction block can be obtained in a partitioning process based on an encoding block and a prediction process can be performed based on a obtained size. A transform block can be defined with the same size as an encoding block to perform a transform and inverse transform process. This example can correspond to a case where a prediction block and a transform block have a mutually independent relationship.
[00186] In this case, an index-based partitioning method can be used in a partitioning process, and a result of a partition form, such as a (no division), bag, n, r, s, etc. in Figure 4, can come according to an index type. According to an encoding definition, a variety of candidate group configurations, such as {a, b, c, n}, {aag, n}, {a, r, s}, etc., may be possible.
[00187] In an example (4), for a prediction block, a Petition 870250082332, dated 12 / 09 / 2025, page 53 / 123 44 / 89 A prediction block can be obtained in a partitioning process based on an encoding block, and a prediction process can be performed based on a obtained size. A transform block can be defined with the same size as a prediction block to perform a transform and inverse transform process. This example could be a case where a transform block is defined with the same size as a obtained prediction block or vice versa (for example, a prediction block is defined with the same size as a transform block).
[00188] In this case, a tree-based partitioning method can be used in a partitioning process, and a partition shape, such as a (no split), b, c (BT), n (QT), etc. in Figure 4, can be generated according to a tree type. According to a coding definition, each tree type can be combined in various ways, such as QT / BT / QT + BT, etc.
[00189] In this case, an index-based partitioning method can be used in a partitioning process, and a partition shape, such as a (no division), b, c, n, o, p, etc. in Figure 4, can be generated according to an index type. According to an encoding definition, various candidate group configurations, such as {a, b}, {a, c}, {a, n}, {a, o}, {a, p}, {a, b, c}, {a, o, p}, {a, b, c, n}, {a, b, c, n, p}, etc., may be possible. Furthermore, a candidate group can be configured by a VSI method alone or by mixing a VSI method with the CSI method among index-based partitioning methods.
[00190] In an example (5), for a prediction block, a prediction block can be obtained in a partitioning process based on an encoding block and a prediction process can be performed based on a obtained size. Furthermore, for a transform block, a prediction block can be obtained in a partitioning process based on an encoding block and a Petition 870250082332, dated 12 / 09 / 2025, page 54 / 123 45 / 89 The transform and inverse transform process can be performed based on a given size. This example could be a case where a prediction block and a transform block are partitioned respectively based on a coding block.
[00191] In this case, a tree-based partitioning method and an index-based partitioning method can be used in one partitioning process, and a candidate group can be configured in the same way or similarly to example No. 4.
[00192] Although the example above describes some cases that can be generated according to whether a partitioning process for each block type is shared, etc., it is not limited to this and an example for various modifications may be possible. Furthermore, a block partitioning configuration can be determined by considering various encoding elements as well as a block type.
[00193] In this case, an encoding element can include an image type (I / P / B), a color component (YCbCr), a block size / shape / position, a block aspect ratio, a block type (the encoding block, a prediction block, a transform block, a quantization block, etc.), a partition state, an encoding mode (Intra / Inter), prediction-related information (an intraprediction mode, an interprediction mode, etc.), transform-related information (transform method selection information, etc.), quantization-related information (quantization region selection information, quantized transform coefficient encoding information, etc.), etc.
[00194] Figure 5 is an exemplary diagram showing a mode of intraprediction prediction according to an embodiment of the present disclosure.
[00195] With reference to Figure 5, 95 prediction modes Petition 870250082332, dated 12 / 09 / 2025, p. 55 / 123 46 / 89 can be supported for intraprediction, and among them, 93 prediction modes are directional and 2 prediction modes are non-directional (DC, Planar). In this case, a directional mode can be classified by a slope (e.g., dy / dx) or degree of angle information.
[00196] A non-directional mode can be a method that performs prediction by a method such as averaging, interpolation, etc. of a reference pixel adjacent to a block, and a directional mode can be a method that performs prediction by a method such as extrapolation, interpolation, etc. of a reference pixel adjacent to a block.
[00197] A directional mode can have a vertical direction (top -> bottom / bottom -> top), horizontal (left -> right / right -> left), diagonal A (top left -> bottom right / bottom right -> top left), diagonal B (top right -> bottom left / bottom left -> top right), etc.
[00198] Generally, when encoding is performed by a raster scan, etc., there may be a block adjacent to a left, top, top left, top right, bottom left direction and a non-directional mode taking it as a reference pixel or a starting point or for prediction or a prediction mode in the vertical (top -> bottom), horizontal (left -> right), diagonal A (top left -> bottom right), diagonal B-1 (top right -> bottom left), diagonal B-2 (bottom left -> top right) direction may be supported. When another scan, except a raster scan, is supported, a directional mode may be defined differently.
[00199] For example, when a left block is available and a right block is not available, a horizontal mode can perform prediction by extrapolation in one direction (right -> left). Alternatively, when a block Petition 870250082332, dated 12 / 09 / 2025, p. 56 / 123 47 / 89 left and one right block are available; prediction can be performed by extrapolation in a predetermined direction (left -> right or right -> left) or prediction can be performed by interpolation of both blocks. In the present disclosure, encoding is performed according to the raster or scan order described under the assumption that a reference pixel is positioned in a left, top, top left, top right, bottom left direction.
[00200] Furthermore, a reconstructed block from another color space encoded using color space correlation can be used for the prediction of a target block, and a prediction mode supporting it can be included. For example, for a chroma component, the prediction block of a target block can be generated using the reconstructed block of a luma component corresponding to a target block. In other words, a prediction block can be generated based on a reconstructed block, considering the correlation between color spaces, and can be included as an intraprediction mode for a chroma component.
[00201] A chroma component may have the same candidate group as the prediction mode candidate group of a luma component, or some modes between the prediction mode candidate groups of a luma component and an additional prediction mode in a chroma component (a color copy mode, a color mode) may be included in a prediction mode candidate group. In this case, for a color copy mode, it may be a prediction mode related to a method of obtaining data to generate a prediction block of a region positioned in another color space, and for a color mode, it may be a prediction mode related to a method for obtaining a prediction mode of a region positioned in another color space. For a color copy mode and a color mode, the men modes (m, n are a Petition 870250082332, dated 12 / 09 / 2025, page 57 / 123 48 / 89 integers (such as 0, 1, 2, 3 or more) can be supported, respectively.
[00202] When color copy mode 1 is supported, a predetermined data acquisition method for generating a prediction block can be defined in advance, and when two or more color copy modes are supported, a data acquisition method for generating a prediction block can be sorted (e.g., a referenced position to obtain correlation, etc. <1> left, <2> superior, <3> left + upper region, etc.) and supported.
[00203] When color mode 1 is supported, a predetermined position for obtaining a prediction mode can be defined in advance, and when two or more color modes are supported, a plurality of positions (e.g., <1> center, <2> top left, <3> top right, <4> bottom left, <5> bottom right, etc. for a corresponding block) to obtain a prediction mode that can be supported.
[00204] All or part of the prediction modes described in the example above may be included in the candidate prediction mode group for a luma component or a chroma component, and other additional modes may be included in a candidate prediction mode group.
[00205] The prediction mode can mean all candidates for a supported intraprediction mode, and a prediction mode candidate group can be configured with all or part of them. In this case, the prediction mode candidate group can be configured according to the size, shape (aspect ratio), etc. of a block.
[00206] For example, the number of candidate groups in the prediction mode can be determined based on a block size. In this case, a block size can be sorted into one of more than two intervals divided based on one or Petition 870250082332, dated 12 / 09 / 2025, page 58 / 123 49 / 89 plus predetermined threshold sizes (A x B, C x D, etc.) and can be determined as one of 11, 35, 67, etc. and a plurality of candidate group numbers according to the sorted range or if a color copy mode, a color mode, etc. are supported and the number can be determined. In this case, the threshold size can be shown as width (W), height (H), W x H, etc. and W and H can be an integer greater than 2, such as 4, 8, 16, 32, 64, etc.
[00207] Alternatively, according to the shape of a block (or the aspect ratio of a block), the configuration of a candidate group for prediction mode can be determined. In this case, the aspect ratio of a block can be classified as one of two or more ranges divided based on one or more predetermined threshold values, and according to the classified range, the configuration of a candidate group can be determined. In this case, the threshold value can be shown as W / H (or H / W), etc., and can have an integer value above 1, such as 1, 2, 4, 8, 16, etc., or a decimal value between 0 and 1, such as 1, 1 / 2, 1 / 4, 1 / 8, 1 / 16, etc.
[00208] The intraprediction of the present disclosure assumes a case where 95 prediction modes as in Figure 5 can be supported for a directional and non-directional mode, and a color mode and a color copy mode can be supported. Furthermore, it is assumed that for the candidate group of a luma component prediction mode, 67 directional and non-directional modes are supported, and for the candidate group of a chroma component prediction mode, a total of 8, 4 directional and non-directional modes, 1 color mode, and 3 color copy modes are supported, but are not limited to these. A predetermined pattern for configuration may be present to select a mode included in a prediction mode candidate group, except for the assumption.
[00209] The following shows an example for the configuration Petition 870250082332, dated 12 / 09 / 2025, page 59 / 123 50 / 89 of a group of candidates in a prediction mode based on the aspect ratio of a block. [Table 1] Ratio mode predictor (inc) mode predictor (exc) 16 67 ~ 80 2 ~ 15 8 67 ~ 78 2 ~ 13 4 67 ~ 76 2 ~ 11 2 67 ~ 72 2 ~ 7 1 1 / 2 -6 ~ -1 61 ~ 6 6 1 / 4 -10 ~ -1 57 ~ 66 1 / 8 -12 ~ -1 55 ~ 66 1 / 16 -14 ~ -1 53 ~ 6 6
[00210] The table is defined based on a case where a prediction mode of No. 0 and 1 and a prediction mode of No. 2 to 66 are included in a group of candidate prediction modes when it has a square block shape. With a prediction mode added to or excluded from the group of candidate prediction modes (excluding a non-directional mode) of a square block when it has a rectangular block shape, a candidate configuration shown in the table may be possible, which may be an example defined on the assumption that it is favorable in terms of prediction accuracy to configure a prediction mode more widely in the longer block than in the shorter one, but vice versa may be possible.
[00211] A reference pixel used for intraprediction can be configured in a reference pixel construction unit. In this case, a reference pixel can be managed in temporary memory (e.g., Array. A first, second array, etc.) and can be generated and removed in each intraprediction process, and the size of a temporary memory can be determined according to the configuration of a reference pixel. Petition 870250082332, dated 12 / 09 / 2025, pages 60 / 123 51 / 89
[00212] It is described on the assumption that a left, top, top left, top right and bottom left block are used for intraprediction based on a target block, but it is not limited to this and the group of candidate blocks from another configuration can be used for intraprediction.
[00213] For example, the candidate group of a neighboring block for the reference pixel can be an example of a case where a raster or Z scan is followed and according to the supported scan order, some of the candidate groups can be removed or configured by including another block candidate group (e.g., additional configuration with a bottom right block, bottom right, etc.).
[00214] On the other hand, a pixel adjacent to a target block can be classified into at least one reference pixel layer and can be classified into ref_0, the pixel most adjacent to a target block {pixels whose pixel value difference with the boundary pixel of a target block is 1. p (-1, -1) ~ p (2m-1, -1), p (-1,0) ~ p (-1,2n-1)}, ref_1, the next adjacent pixel {pixel whose pixel value difference with the boundary pixel of a target block is 2. p (-2, -2) ~ p (2m, -2), p (-2, -1) ~ p (-2,2n)}, ref_2, the next adjacent pixel {pixel whose pixel value difference with the boundary pixel of a target block is 3. p (-3, -3) ~ p (2m + 1, -3), p (3, -2) ~ p (-3,2n + 1)}, etc. In other words, a reference pixel can be classified into a plurality of reference pixel layers according to a pixel distance adjacent to the boundary pixel of a target block.
[00215] The reference pixel lines supported in this document can be greater than N, and N can be an integer, such as 1, 2, 3, 4, or more. In this case, they are generally included in a candidate reference pixel line group sequentially starting from the reference pixel line closest to a target block, but it is not limited to this. For example, if N is 3, the candidate group can be configured Petition 870250082332, dated 12 / 09 / 2025, pp. 61 / 123 52 / 89 sequentially as<ref_0, ref_1, ref_2> Or the candidate group can also be configured by excluding a non-sequential reference pixel line, such as<ref_0, ref_1, ref_3> , < ref_0, ref_2, ref_3>, < ref_1, ref_2, ref_3> or is more adjacent.
[00216] Prediction can be performed using all reference pixel lines in the candidate group or using some reference pixel lines (more than one).
[00217] For example, according to one encoding definition, one of a plurality of reference pixel lines can be selected to perform intraprediction using the corresponding reference pixel line. Alternatively, two or more of a plurality of reference pixel lines can be selected to perform intraprediction using the corresponding reference pixel line (e.g., applying a weighted average, etc. to each reference pixel line data).
[00218] In this case, the selection of a reference pixel line can be determined implicitly or explicitly. For example, for an implicit case, it means that it is determined according to an encoding definition defined by more than one or two combinations between elements, such as an image type, a color component, a block size / shape / position, etc. Furthermore, for an explicit case, it means that the information about the selection of a reference pixel line can be generated in a block unit, etc.
[00219] This disclosure primarily describes a case where intraprediction is performed using the most adjacent reference pixel line. However, a referenced reference pixel line for prediction can be considered one of the main coding elements in this disclosure. In other words, an intraprediction configuration can be determined independently of a pixel line. Petition 870250082332, dated 12 / 09 / 2025, page 62 / 123 53 / 89 is the selected reference, but an intraprediction setting for it can be determined.
[00220] The intraprediction reference pixel construction unit in this disclosure may include a reference pixel generation unit, a reference pixel interpolation unit, a reference pixel filter unit, etc., and may be configured to include all or part of the configurations.
[00221] In a reference pixel construction unit, an available reference pixel and an unavailable reference pixel can be classified by confirming availability for a reference pixel. In this case, a reference pixel is considered unavailable when at least one of the following conditions is met.
[00222] For example, it can be considered unavailable when at least one of the following conditions is met: it is positioned outside an image boundary, it does not belong to the same partition unit as a target block (for example, a unit that cannot be referenced to another, such as a slice, a part, etc. But when even a unit like a slice or a part, etc. can be referenced to another, they are excluded, even though they are not the same partition unit), and encoding is not completed. In other words, it can be considered available when any of these conditions are not met.
[00223] Furthermore, the use of a reference pixel may be limited by an encoding definition. For example, although considered available under certain conditions, the use of a reference pixel may be limited according to the implementation of constrained intraprediction (e.g., constrained_intra_pred_flag). Constrained intraprediction may be implemented to prohibit a reconstructed block that is referenced from another image to prevent error propagation caused Petition 870250082332, dated 12 / 09 / 2025, page 63 / 123 54 / 89 due to external factors, including the communication environment, etc., cannot be used as a reference pixel.
[00224] When constrained interprediction is disabled (for example, for image type I. Or image type P or B, constrained_intra_pred_flag = 0), all candidate reference pixel blocks may be available.
[00225] Alternatively, when constrained intraprediction is enabled (for example, for a P or B image type, constrained_intra_pred_flag = 1), it is assumed under the condition to judge whether a candidate reference pixel block is used according to an encoding mode (Mode_Intra, Mode_InterD, Mode_InterC), but the conditions can be determined according to several other encoding elements.
[00226] In this case, Mode_Intra, Mode_Inter_D, Mode_Inter_C can mean intraprediction, interprediction that is referenced in another image (block matching, etc.) and interprediction that is referenced in a current image respectively, and the setting in which in the case of Mode_Intra, the reference is possible, and in the case of Mode_Inter, the reference is not possible, can be general, but is not limited to that.
[00227] Since a reference pixel is composed of more than one block, it can be classified into three cases as<todos disponíveis> ,<alguns disponíveis> and<todos indisponíveis> after verifying the possibility of the reference pixel. In other cases, except for one case<todos disponíveis> A reference pixel at a position in an unavailable candidate block can be filled or generated.
[00228] When a candidate reference pixel block is available, a pixel at the corresponding position can be included in the reference pixel memory of a target block. In this case, the pixel data can be copied as is or can be included in a reference pixel memory in a process, such as a reference pixel filtering, a Petition 870250082332, dated 12 / 09 / 2025, p. 64 / 123 55 / 89 reference pixel interpolation, etc. Furthermore, when a candidate reference pixel block is unavailable, a pixel obtained in a reference pixel generation process can be included in the reference pixel memory of a target block.
[00229] The following shows an example in which a reference pixel at an unavailable block position is generated using various methods.
[00230] For example, a reference pixel can be generated using an arbitrary pixel value. In this case, an arbitrary pixel value can be a pixel value (e.g., the minimum value, the maximum value, the center value, etc. in a range of a pixel value) that belongs to a range of a pixel value (e.g., a range of a pixel value based on bit depth or according to the pixel distribution in a corresponding image). In detail, it can be an example that is applied when all candidate reference pixel blocks are unavailable.
[00231] Alternatively, a reference pixel can be generated from a region where an image is encoded. In detail, a reference pixel can be generated from at least one available block adjacent to an unavailable block. In this case, at least one of the methods, such as extrapolation, interpolation, copy, etc., can be used.
[00232] For the example above, a reference pixel may target a region that is adjacent centered around a target block and may be considered to include a region (a region obtaining prediction data or a region adjacent to it) corresponding to a target block in another color space that is referenced in some prediction modes (e.g., a color copy mode, etc.).
[00233] After the reference pixel configuration is complete, a reference pixel filtering or a Petition 870250082332, dated 12 / 09 / 2025, pages 65 / 123 56 / 89 reference pixel interpolation can be performed. For example, only reference pixel filtering can be performed, only reference pixel interpolation can be performed, or both reference pixel filtering and reference pixel interpolation can be performed. Reference pixel filtering can be performed before or after reference pixel interpolation, and it can also be performed in combination with reference pixel interpolation at the same time.
[00234] Reference pixel filtering can be a process that is performed to reduce the remaining degradation in a reference pixel. Reference pixel filtering can be one of a plurality of filters that can be classified by defining the length and coefficient of various filter derivations, such as [1,2,1] / 4, [2, 3, 6, 3, 2] / 16, etc. Furthermore, a plurality of filters can be achieved by varying a filter type.
[00235] Whether reference pixel filtering is performed can be determined explicitly or whether reference pixel filtering is performed can be determined implicitly according to an encoding definition. In this case, an encoding definition can be defined based on the state information (a block size, shape, position, etc.) of a target block, an image type (I / P / B), a color component (Y / Cb / Cr), reference pixel line selection information, whether intraprediction on a sub-block unit is applied, an intraprediction mode, etc.
[00236] Reference pixel interpolation may not be performed in a prediction mode that refers to only one pixel in an integer unit, and reference pixel interpolation may be performed in a prediction mode that refers to one pixel in a decimal unit.
[00237] The position of a pixel (i.e., what unit Petition 870250082332, dated 12 / 09 / 2025, pp. 66 / 123 57 / 89 decimal is interpolated) where the interpolation performed can be determined according to a prediction mode (e.g., direction for a prediction mode, Dy / dx, etc.) and the position of a reference pixel and a prediction pixel. In this case, a filter can be applied independently of the precision of a decimal unit, or one of a plurality of filters (e.g., assuming a filter that an equation used to determine a filter coefficient or the length of a filter derivation is divided) can be applied by being selected in a decimal unit.
[00238] The first might be an example where a pixel in a whole unit is used as input for interpolation of a pixel in a decimal unit, and the latter might be an example where an input pixel varies by step (e.g., for a 1 / 2 unit, using a whole pixel. For a 1 / 4 unit, using a whole pixel and a 1 / 2 unit pixel, etc.), but it is not limited to this and is described based on the foregoing in the present disclosure.
[00239] Fixed filtering or adaptive filtering can be performed for reference pixel interpolation, which can be determined according to an encoding definition. In this case, the encoding definition can be defined based on the state information of a target block, an image type, a color component, reference pixel line selection information, whether intraprediction in a subblock unit is applied, an intraprediction mode, etc.
[00240] Fixed filtering can perform reference pixel interpolation using one filter, and adaptive filtering can perform reference pixel interpolation using one of a plurality of filters.
[00241] In this case, for adaptive filtering, one of a plurality of filters can be determined implicitly or explicitly according to an encoding definition. In this Petition 870250082332, dated 12 / 09 / 2025, page 67 / 123 58 / 89 In this case, a filter type can be configured after more than one has been selected from a 4-lead DCT-IF filter, a 4-lead cubic filter, a 4-lead Gaussian filter, a 6-lead Wiener filter, an 8-lead Kalman filter, etc., and a group of supported filter candidates can also be defined differently according to a color component (e.g., some filter types are the same or different, and the length of a filter lead is short or long, etc.).
[00242] A prediction block can be generated according to at least one prediction mode in a prediction block generation unit, and a reference pixel can be used based on the prediction mode. In this case, a reference pixel can be used for a method such as extrapolation, etc. according to a prediction mode, and can be used for a method such as interpolation, DC, or copy, etc.
[00243] A process for selecting the optimal mode among a plurality of candidate prediction mode groups is performed in a prediction mode determination unit. Generally, the optimal mode in terms of encoding cost can be determined using block distortion (e.g., distortion of a target block and a reconstructed block. Distortion. SAD (Sum of Absolute Difference), SSD (Sum of Squared Difference), etc.) and the distortion rate that the amount of bits generated according to a corresponding mode is considered. A prediction block generated based on a prediction mode determined in the process can be transmitted to a subtraction unit and an addition unit.
[00244] A prediction mode selected in a prediction mode determination unit can be encoded in a prediction mode encoding unit. In a group of prediction mode candidates, the index information corresponding to the prediction mode can be encoded or the Petition 870250082332, dated 12 / 09 / 2025, pp. 68 / 123 59 / 89 prediction mode can be used to encode information within it. The former can be a method applied to a luma component and the latter can be a method applied to a chroma component, but it is not limited to that.
[00245] When a prediction mode is predicted and coded, it can be classified into a plurality of categories (K. K is an integer, such as 2, 3, 4, or more) and managed. For example, when it is classified into 2 categories, one category might consist of a prediction mode that is predicted to be identical to the prediction mode of a target block, and the other category might consist of a prediction that is unlikely to be identical to a prediction mode. In other words, another category might consist of a prediction mode that was not selected as a mode that is predicted to be identical to the prediction mode of a target block.
[00246] The example above is a case where a prediction mode is classified into 2 categories and can be further classified into more categories. When it is classified into 3 categories, a first category may consist of a prediction mode that is predicted to be very likely identical to the prediction mode of a target block, a second category may consist of a prediction mode that is predicted to be likely identical to the prediction mode of a target block, and a third category may consist of a prediction mode that is likely not identical to the prediction mode of a target block. In other words, the second category may consist of a prediction mode that is predicted to be identical to the prediction mode of a target block among the prediction modes that do not belong to the first category, and the third category may consist of a prediction mode that does not belong to the first and second categories.
[00247] For another example of classifying categories, they can be classified according to a prediction method. For example, they can be classified by a method of Petition 870250082332, dated 12 / 09 / 2025, page 69 / 123 60 / 89 prediction according to extrapolation, a prediction method according to interpolation / averaging, a prediction method according to copying, etc. In this case, a prediction method according to extrapolation can mean a directional mode, a prediction method according to interpolation / averaging can mean a non-directional mode, a prediction method according to copying can be classified as a color copying mode, and various other classifications may be possible. As a color mode derives a prediction mode in another color space, it can be differentiated from directional or non-directional mode, but for convenience of explanation, it is assumed to be classified as a directional / non-directional mode.
[00248] When classified into 2 categories according to a prediction method, the first category may consist of a directional / non-directional mode and the second category may consist of a color copy mode. Alternatively, the first category may consist of a directional mode and the second category may consist of a non-directional mode. The former may be applied to the intraprediction of a chroma component and the latter may be applied to the intraprediction of a luma component. In the part described below, it is assumed that when a color copy mode is included, it may be applied to the intraprediction mode of a chroma component, but it should be understood that even when a color copy mode is not included, it is not applied only to the intraprediction mode of a luma component.
[00249] When classified into 3 categories, the first category may consist of a directional mode, the second category may consist of a non-directional mode, and the third category may consist of a color copy mode. Alternatively, the first category may consist of a predetermined mode (e.g., a vertical, horizontal, diagonal A mode, etc.) among the directional modes, the second category Petition 870250082332, dated 12 / 09 / 2025, pp. 70 / 123 61 / 89 can consist of a predetermined mode (e.g., a diagonal B mode, etc.) among the directional modes, and the third category can consist of a color copy mode. In this case, a diagonal A mode can consist of a diagonal mode using only an integer pixel in the prediction, and a diagonal B mode can consist of a diagonal mode using an integer pixel and a decimal pixel in the prediction, but it is not limited to this.
[00250] The description above is an example for configuring a category and can be classified according to various predetermined patterns, without being limited to them. Furthermore, a plurality of predetermined patterns can be combined and applied to configuring a category.
[00251] When a prediction mode is classified into a plurality of categories, selection information regarding which category the prediction mode of a target block is generated in, and candidate selection information in each category, can be generated. When a candidate in a category is 1, the candidate selection information can be omitted. It may be possible to configure various syntax elements in the category selection and candidate selection within the category. A case where 3 categories are supported is then assumed.
[00252] * A syntax element in category selection is supported.
[00253] The value of a supported syntax element for category selection in this example can have a value from 0 to 2 (a value above 1). In one example, for the first to third categories, binarization to which one bit <0> , <10> , <11> Assigning a category may be possible. In other words, a syntax element for category selection may be supported and may be configured in a type where index assignment and binarization for each category are applied.
[00254] * A plurality of syntax elements in category selection is supported. Petition 870250082332, dated 12 / 09 / 2025, pp. 71 / 123 62 / 89
[00255] The value of a supported syntax element for category selection in this example can have a value of 0 or 1 (also a value above 1).
[00256] In one example, for a syntax element (a first syntax element), <0> It can be assigned to the first category and the second category and <1> It can be assigned to the third category. In this case, when the syntax element has a value of <0> , another syntax element (a second syntax element) in the subcategory selection that selects one from the first category, and the second category may be supported, and for the corresponding syntax element, <0> , <1> They can be assigned to the first category and the second category.
[00257] In one example, for a syntax element (a first syntax element), <0> It can be assigned to the first category and <1> It can be assigned to the second category and the third category. In this case, when the syntax element has a value of <1> , another syntax element (a second syntax element) in the subcategory selection that selects one from the second category, and the third category may be supported, and for the corresponding syntax element, <0> , <1> It can be assigned to the second category and the third category.
[00258] The example above is an example of setting up a syntax element for category selection, and various modifications and settings may be possible.
[00259] Each category above can include at least one prediction mode. The number of prediction modes from the first to the third category can be a, b, c, and a can be less than or equal to a, b, and c, and b can be less than or equal to c. In this example, it is assumed that a is an integer between 1 ~ 5, b is an integer between 3 ~ 8, and c is the number that subtracts the number of a and b from the number of candidate prediction mode groups. Variable-length binarization or fixed-length binarization, such as truncated Rice binarization, truncated binary binarization, Petition 870250082332, dated 12 / 09 / 2025, p. 72 / 123 63 / 89 binarization of k-th Exp-Golomb, etc., can be applied to a prediction mode that belongs to the category.
[00260] In the example mentioned below, it is described on the assumption that the configuration and definition of a category are fixed, but an adaptive configuration may be possible according to various coding elements (e.g., the number of categories, the configuration of related flags, etc.). In this case, the coding elements can be defined based on a color component (luma / chroma), the state information of a block (e.g., a block size, shape, aspect ratio, position, etc.), an image type (I / P / B), whether intraprediction in a sub-block unit is applied, reference pixel line selection information, etc. In one example, based on the coding information, the number of categories can be determined as either 2 or 3.
[00261] Next, an example will be described in which a prediction mode is classified into a plurality of categories (3) based on the probability of matching a prediction mode and a prediction mode is coded based on category selection information and candidate selection information in a category. But, an example in which patterns for category classification according to a prediction method are combined for category configuration may be possible. Furthermore, when the second category between the first category and the second category is excluded or the explanation in the first category and the second category is integrated, the explanation configured with 2 categories may be derived, so that the detailed explanation is omitted.
[00262] Figure 6 is an arrangement diagram of a target block and an adjacent block according to an embodiment of the present disclosure.
[00263] A target block may have a high correlation with a block adjacent to it, and may not only perform prediction Petition 870250082332, dated 12 / 09 / 2025, p. 73 / 123 64 / 89 using an adjacent reference pixel, but also using the prediction mode of an adjacent block to predict the prediction mode of a target block. Consequently, the prediction mode of a block adjacent to a target block can be selected as a candidate included in the first or second category. In this case, all or part of the prediction modes of a left, top, top left, top right, and bottom left block for a target block can be considered as a candidate included in a category (previous). In an example, (left / top), (left / top / top right), (left / top / bottom left), (left / top / top left / bottom right / top left), etc. can be considered.
[00264] When the prediction mode of an adjacent block is considered as a candidate included in a category, at least one prediction mode can be selected from a block in each direction. For example, for a left block, one can be selected from L0 to L3 and for a top block, one can be selected from U0 to U3.
[00265] A sub-block at a specific position (e.g., a left block is L3, a top block is U3) for selecting a prediction mode can be defined by considering a case where an adjacent block in a predetermined direction (in this example, a top left block) is partitioned into a plurality of sub-blocks. When a prediction mode for a block at the corresponding position is not available (e.g., when the corresponding block is not encoded, when it is at a position that cannot be referenced, when an encoding mode <intra inter>It is different, etc.), a prediction mode cannot be selected in a block in the corresponding direction.
[00266] Alternatively, a priority for selecting a prediction mode (a sub-block) can be supported (by Petition 870250082332, dated 12 / 09 / 2025, pp. 74 / 123 65 / 89 example, L3 -> L0 -> L1 -> L2, etc.) and, consequently, the prediction mode of an available sub-block with a previous priority can be selected as a prediction mode in the corresponding direction. When the prediction mode of a sub-block in all positions is not available, a prediction mode may not be selected in a block in the corresponding direction.
[00267] And, a priority to include a prediction mode obtained from a block in each direction in a category can be supported. For example, configurations such as left -> top -> top right -> bottom left -> top left, left -> top -> bottom left -> top right -> top left, top -> left -> bottom left -> top right -> top left, etc. may be possible and are not limited to them.
[00268] Many prediction modes are included in a group of prediction mode candidates, but there may be many prediction modes that are commonly generated among them. For example, an edge in a vertical and horizontal direction may be a common image feature, and many planar regions, such as a background, may be found. Consequently, a predetermined prediction mode that is predicted to be generated considerably may be selected as a candidate included in the first or second category.
[00269] A non-directional Planar prediction mode (No. 0), DC mode (No. 1), and a horizontal (No. 18), vertical (No. 50), and diagonal (No. 2, No. 34, No. 66, etc.) mode can be a target for a candidate of a predefined prediction mode that is expected to be generated considerably. A priority for including the prediction mode in a category can be supported. For example, configurations such as Planar -> DC -> Ver -> Hor, etc. are possible and are not limited to this.
[00270] When all or part of the prediction modes of an adjacent block are unavailable, it may be replaced and Petition 870250082332, dated 12 / 09 / 2025, pp. 75 / 123 66 / 89 populated with more than one of the predefined prediction modes (e.g., Planar, DC, etc.).
[00271] In the description above, the prediction mode of an adjacent block of a target block and a predefined prediction mode are referred to as a prediction mode that is considered for category configuration. However, when there are many candidate groups of prediction modes, it can be difficult to effectively predict the prediction mode of a target block with the above configuration. In one example, when the difference is generated by 1, 2 in a directional mode (based on a prediction mode in Figure 5), the prediction may fail with the above configuration.
[00272] For this purpose, a derived prediction mode based on the prediction mode of an adjacent block and a predefined prediction mode can be considered to configure a group of category candidates. In an example, a k-spacing prediction mode based on the prediction mode (in this example, a directional mode) can be considered as a derived prediction mode and can be selected as a candidate included in the first or second category. In this case, k can be an integer, such as 1, 2, 3, 4, or more.
[00273] In this case, when it is assumed that a prediction mode based on the prediction mode of an adjacent block or a predefined prediction mode is Z, there may be a priority for a derived prediction mode, such as Z - 1, Z + 1, Z - 2. In this example, it is assumed that a priority is determined in the order of an absolute value, such as 1, 2, and (an absolute value) code <-> is followed by code <+>, but it is not limited to this. In other words, this means that the distance information to populate the derived prediction mode may not start from 1 (e.g., an integer such as 4, 8, 12, etc.). And, the distance k of a derived prediction mode based on the prediction mode of an adjacent block and a predefined prediction mode may be identical or non-identical. Petition 870250082332, dated 12 / 09 / 2025, pp. 76 / 123 67 / 89
[00274] Furthermore, when it is assumed that a prediction mode based on the prediction mode of an adjacent block or a predefined prediction mode is X, Y, there may be a priority for a derived prediction mode, such as X - 1, X + 1, Y - 1, Y + 1 or X - 1, Y - 1, X + 1, Y + 1. In this example, it is assumed that X has priority over Y, and a code <-> and a code <+> alternating with each other or the other code (a positive number in this example) is derived after a code (a negative number in this example) is entirely derived (based on an absolute value), but is not limited to that.
[00275] Furthermore, a plurality of modes (X, Y in this example) can be used as a base mode for a derived mode, or a predetermined mode from them (i.e., one of X, Y) can be used as a base mode. It can be classified according to a predetermined pattern and can be determined based on the position of a obtained block (e.g., a mode of any specific block between a left block and a top block is defined as a base mode), the shape of a target block (e.g., a mode of a top block between a left block and a top block in the case of a horizontally long rectangular shape, and a mode of a left block in the case of a vertically long rectangular shape is defined as a base mode. Or, vice versa, etc.), and the tilt information of a prediction mode (e.g., a mode is more tilted in a specific direction).<esquerda ou direita, superior ou inferior> based on a vertical or horizontal mode (defined as base mode).
[00276] In summary, a prediction mode derived from a predefined prediction mode, the prediction mode of an adjacent block, and a previous prediction mode can be included in one category (previous).
[00277] Each category can include at least one prediction mode of a predefined prediction mode, the prediction mode of an adjacent block, and a derived prediction mode, and is referred to Petition 870250082332, dated 12 / 09 / 2025, pp. 77 / 123 68 / 89 as Group_A, Group_B and Group_C, respectively, for convenience of explanation.
[00278] For example, Group_A can be configured in a first category, Group_A, Group_B and Group_C can be configured in a second category, and other modes (it could be Group_C, in this case) can be configured in a third category.
[00279] Alternatively, Group_B can be configured in a first category, Group_A, Group_B and Group_C can be configured in a second category and other modes can be configured in a third category.
[00280] Alternatively, Group_A and Group_B can be configured in a first category, Group_A, Group_B and Group_C can be configured in a second category, and other modes can be configured in a third category.
[00281] The example above is an example of mode configuration according to category classification, and for Group_A and Group_B included in a plurality of categories, it can be understood that other modes not configured in a previous category are configured in a subsequent category. Furthermore, mode configuration by multiple classification categories may be possible without limitation to the example above.
[00282] Next, it is assumed that the priority of a prediction mode for category configuration is supported and when a mode is configured as many non-subordinate categories (e.g., the first category) according to the priority of a category (e.g., 1 - 2 - 3 category order), the remaining modes are configured in a subordinate category (e.g., the second category, the third category, etc.).
[00283] In the example mentioned below, it is assumed that a priority is Planar (assuming that index No. 0 is assigned) -> L -> A -> DC -><L - 1> -><L + 1> -> <a-1> -> <a + 1>-> <L - 2> -> <L + 2> -> <a-2> -> < / a-2> <a + 2>-> View -> Hours -><Ver - 4> Petition 870250082332, dated 12 / 09 / 2025, pp. 78 / 123 69 / 89 -><Ver + 4> -><Hor - 4> -><Hor + 4> , etc. is compatible.
[00284] For example, when the number of a prediction mode in the first category is 1, a prediction mode belonging to Group_A can be Planar (index No. 0) and as the number of prediction modes increases, Group_A can be configured with prediction modes.
[00285] Furthermore, when the number of a prediction mode in the second category is 1, a prediction mode belonging to Group_B can be from the next prediction mode (No. M + 1 index) of a prediction mode finally configured in the first category (index No. m) and as the number of prediction modes increases, Group_B can be configured with subordinate prediction modes.
[00286] In addition, for the third category, Group_C can be configured with the remaining prediction modes from the next prediction mode (index No. n + 1) of a prediction mode (index No. n) finally configured in the second category.
[00287] The number of prediction modes in the first to third category (in this example, when the candidate prediction mode groups are 67) can be defined in several ways, such as (1, 5, 61), (2, 4, 61), (4, 8, 55), etc., and can be determined based on the number of candidate prediction mode groups.
[00288] In the example above, a predefined prediction mode can be a mode that is fixedly supported regardless of a coding environment, and a derived prediction mode can be obtained by taking a prediction mode that already exists in a group of candidates as a base mode.
[00289] On the other hand, there may be a case where it is difficult to obtain the prediction mode of an adjacent block according to the state of an adjacent block (for example, a partition unit boundary, whether encoded or not, an encoding mode, etc.). In this case, the state of an adjacent block Petition 870250082332, dated 12 / 09 / 2025, p. 79 / 123 70 / 89 can be classified into (1) a case where all adjacent blocks are unavailable, (2) a case where some of the adjacent blocks are unavailable, and (3) a case where all adjacent blocks are available, and an example in priority can be described assuming a case where all adjacent blocks are available.
[00290] Furthermore, the prediction mode of an adjacent block can be obtained from two or more blocks, and an example in priority can be described by assuming a case where the prediction mode of each block is not overlapping.
[00291] Furthermore, an example in priority can be described by assuming a case where the prediction mode of an adjacent block is not overlapped with a predefined prediction mode.
[00292] A priority for the category configuration can be adaptively adjusted considering the elements above. For example, an index corresponding to the prediction mode of an adjacent block can be removed from the priority, and an index in a mode derived by taking the prediction mode of an adjacent block as a base mode can also be removed. This can commonly be applied both to a case where the prediction mode of an adjacent block is a directional mode and a case where the prediction mode of an adjacent block is a non-directional mode.
[00293] Furthermore, when the prediction mode of an adjacent block is overlapped, an index corresponding to another overlapping prediction mode and an index in a derived mode may be removed. Alternatively, a plurality of priorities considering the elements may be supported and a category may be configured accordingly.
[00294] In the intraprediction of this disclosure, it is described that some of the supported prediction modes can be configured as a group of prediction mode candidates. This may mean that each separate prediction mode (by Petition 870250082332, dated 12 / 09 / 2025, pages 80 / 123 71 / 89 example, a directional mode) can be supported according to the state information of a target block (e.g., block size, shape, etc.).
[00295] For prediction mode coding, unifying it into a common prediction mode candidate group configuration can precede coding. For example, it can be unified into a prediction mode candidate group configuration within a predetermined range for prediction mode coding, and based on that, prediction mode coding can be performed. In this case, the predetermined range can be configured with a prediction mode corresponding to No. 0 to No. 66 in Figure 5, but is not limited to them.
[00296] In unification, mapping within the predetermined range can be performed and can be performed based on the direction of a prediction mode. In one example, for a prediction mode outside the predetermined range, mapping (e.g., in the case of an edge direction being the same, etc. In other words, a case is included where a starting point for prediction and a prediction direction are different, but an edge direction is the same) can be performed by a prediction mode with a characteristic similar to the corresponding prediction mode, and several other methods can be supported.
[00297] The prediction-related information generated in the process can be transmitted to an encoding unit and stored in a bitstream.
[00298] In the explanation above, a unit in which intraprediction is performed is referred to as a target block. In this case, the target block can be defined as an assortment of block units according to a block configuration.
[00299] In one example, when a coding block is the same unit as a prediction block and a transform block (that is, when a coding block is immediately defined as a prediction block or a transform block) Petition 870250082332, dated 12 / 09 / 2025, pp. 81 / 123 72 / 89 transform), the intraprediction target block for defining the reference pixel region, reference pixel configuration (reference pixel filtering / reference pixel interpolation), prediction mode candidate group configuration, prediction performance, prediction mode encoding, etc. can be selected as an encoding block.
[00300] In one example, when a coding block is a unit that may or may not be the same as a prediction block and a transform block (i.e., a coding block may be partitioned into two or more sub-blocks)<blocos de predição ou blocos de transformada> The intraprediction target block can be defined as one of a coding block, a prediction block, and a transform block.
[00301] For example, a coding block can be defined as a target block for (prediction mode coding, prediction mode candidate group setting / reference pixel setting), etc. and a prediction block or a transform block can be defined as a target block for (reference pixel region setting / prediction performance), etc.
[00302] Alternatively, a coding block can be defined as a target block for (prediction mode coding / prediction mode candidate group setting), etc., and a prediction block or a transform block can be defined as a target block for (reference pixel region setting / reference pixel setting / prediction performance), etc.
[00303] In summary, a target block can be defined as one of a coding block, a prediction block, and a transform block, and the detailed configuration target block unit can be determined according to a coding definition.
[00304] In an image decoding method according Petition 870250082332, dated 12 / 09 / 2025, page 82 / 123 73 / 89 with an embodiment of the present disclosure, intraprediction can be configured as follows. Intraprediction in a prediction unit can include decoding a prediction mode, setting a reference pixel, and generating a prediction block. Furthermore, an image decoding device can be configured to include a prediction mode decoding unit, a reference pixel construction unit, and a prediction block generation unit that incorporates prediction mode decoding, reference pixel setting, and prediction block generation. A portion of the processes mentioned above can be omitted or another process can be added, and they can be changed in a different order than that presented above.
[00305] Since the reference pixel construction unit and prediction block generation unit of an image decoding device play the same role as the corresponding configuration of an image encoding device, the detailed description is omitted and a prediction mode decoding unit can be implemented inversely using a method used in a prediction mode encoding unit.
[00306] Figure 7 is a flowchart showing the intraprediction modification method according to an embodiment of the present disclosure.
[00307] With reference to Figure 7, the intraprediction mode of a target block can be determined (S700) and a prediction block can be generated (S710) based on an intraprediction mode. The definition of a prediction block modification can be determined (S720) and the modification of a prediction block can be performed (S730).
[00308] The intraprediction of a target block can be selected from a group of candidate prediction modes obtained based on the state information of a target block and a mode of Petition 870250082332, dated 12 / 09 / 2025, page 83 / 123 74 / 89 their prediction can be determined.
[00309] A luma component can refer to a group of prediction mode candidates configured with a directional mode and a non-directional mode, and a chroma component can refer to a group of prediction mode candidates where a color mode or a color copy mode is supported by a directional mode and a non-directional mode.
[00310] In this case, it can be classified into a directional mode / a non-directional mode / a color copy mode according to a prediction method, and each method can use extrapolation, interpolation, or averaging, copying, but is not limited to these, and other modifications may be possible. In one example, according to a reference pixel region definition, interpolation (bidirectional prediction) as well as extrapolation can be supported in a directional mode.
[00311] In summary, according to each prediction method, a reference region for intraprediction can be defined differently, and for extrapolation, at least one of a block in the left, top, top left, top right, and bottom left directions of a target block can be defined as a reference region, and for interpolation, at least one of a block in the right, bottom, and bottom right directions of a target block can be defined as a reference region, in addition to extrapolation. In this case, when an adjacent region is not encoded, it can be derived from one or more pixels in an encoded and filled region. Furthermore, for copying, a block corresponding to a target block in another color space can be defined as a reference region.
[00312] Based on data in the reference region and an intraprediction mode, a prediction mode can be generated.
[00313] Modification of a prediction block can be performed to reduce discontinuous boundary features with an adjacent block in a prediction block generated accordingly. Petition 870250082332, dated 12 / 09 / 2025, page 84 / 123 75 / 89 with a predetermined prediction mode. However, modification based on an image characteristic can cause a reverse effect, so it is necessary to perform the modification considering various encoding elements.
[00314] To support the modification of a prediction block, the related information can be generated explicitly or determined implicitly. And, even if it is determined that it supports modification in a higher unit, such as a sequence, an image, etc., the definition of modification of a target block can be defined based on an image type, a color component, the state information of a target block, an encoding mode, an intraprediction mode, whether intraprediction in a sub-block unit is applied, reference pixel line selection information, etc. Furthermore, definition information related to the modification (e.g., a flag indicating whether modification in a block unit is performed, weight information applied to the modification, etc.) can be explicitly generated in a lower unit (e.g., for the previous information, a block, a sub-block, etc.).) or a higher-level unit (for example, for the latest information, a sequence, an image, a slice, a part, etc.).
[00315] The modification definition can be configured by including whether the modification is performed, the number, position, weight, etc. of a reference pixel used for modification, etc. Although the modification is performed, the modification can be performed for all or part of the pixels in a target block. For example, when a target block is mxn, the modification can be performed for 1 to (mxn) pixels.
[00316] In this case, if the modification (in a pixel unit) is applied, (when the modification is performed) the number (1 ~ 5), position, weight, etc. of reference pixels used for modification, etc. can be defined based on the position of a Petition 870250082332, dated 12 / 09 / 2025, page 85 / 123 76 / 89 pixels in a block, as well as in the modification definition.
[00317] In this case, an intraprediction mode that the modification is supported can be determined according to whether it belongs to a predetermined prediction mode group. For example, the prediction mode group can be configured between a Planar, DC, Horizontal, Vertical, and Diagonal mode (e.g., a top-right directional mode, a bottom-right directional mode, a bottom-left directional mode, etc., modes No. 2, 34, 66 in Figure 5) and a color copy mode. Alternatively, it can be configured by additionally including a prediction mode derived from the prediction mode group (e.g., a k-spaced mode based on a directional mode. In this case, k is an integer whose absolute value is 1, 2, 3, 4, or more).
[00318] A target block that is supported for modification can be smaller than or equal to a predetermined first threshold size. In this case, the first threshold size can mean the maximum size a target block can have.
[00319] In addition, a block that the modification is supported may be larger than or equal to a second predetermined threshold size. In this case, the second threshold size may mean the minimum size that a target block can have.
[00320] In this case, the first threshold size and the second threshold size can be shown as width (W), height (H), W x H, W * H, etc., and W and H can be an integer, such as 4, 8, 16, 32, or more. In this case, the first threshold size can be greater than or equal to the second threshold size.
[00321] Figure 8 is a pixel arrangement diagram of a target block and an adjacent block according to an embodiment of the present disclosure.
[00322] With reference to Figure 8, it is composed of one pixel (a ~ p) in a target block, one pixel (A ~ Q) in an adjacent block. Petition 870250082332, dated 12 / 09 / 2025, pp. 86 / 123 77 / 89 which is encoded and a pixel (aa ~ ii) in an adjacent block that is not encoded. In this case, the modification can be performed on a pixel in a target block and a pixel in an adjacent block can be referenced for modification.
[00323] In this case, a reference pixel in an adjacent block can be one of the values that are obtained after a reference pixel preprocessing process (e.g., a reference pixel filtering) is not performed or is performed. It can be determined in a block unit or pixel unit.
[00324] The following represents an equation that a modified pixel is obtained after the modification is applied to a prediction pixel: Z = (z * w0) + (a * w1) + (b * w2) + (c * w3)
[00325] In this case, ze Z mean a prediction pixel and a modified pixel, respectively, aac means a reference pixel used for modification, and w0 to W3 means a weight applied to the modification. Depending on the number of reference pixels used for modification, the reference pixel and weight can be determined. In this case, a value considering normalization including 0 can be assigned to a weight.
[00326] According to the prediction mode of a target block, the position and number of reference pixels can be determined.
[00327] For example, when the prediction mode of a target block is a Planar mode, DC, vertical, horizontal, a, b, c can be defined as a top-left reference pixel outside a target block (e.g., <-1, -1>), a reference pixel at the top of a target block responding to or matching the x-component of a target pixel (e.g.,<x, -1> ) and a reference pixel on the left of a target block responding to or matching a y-component of a target pixel (e.g., <-1, y>). Petition 870250082332, dated 12 / 09 / 2025, p. 87 / 123 78 / 89
[00328] In this case, for a Planar, DC mode, a weight can be assigned to w2 and w3 to reflect a reference pixel gradient at the top left of a target block. This can be an example (e.g., w1 is 0) in a weight definition based on how much it changes from a reference pixel corresponding to an x and y component of a target pixel.
[00329] In this case, for a vertical mode, a weight with a negative code can be assigned to w0 and a weight with a positive code (i.e., an inverse code) can be assigned to w3 to reflect a reference pixel gradient corresponding to a prediction direction. This could be an example (e.g., w2 is 0) in a weight definition based on how much a reference pixel corresponding to a y-component of a target pixel changes from a top-left reference pixel. For a horizontal mode, related explanation can be derived in a vertical mode, therefore the detailed explanation is omitted.
[00330] Alternatively, when the prediction mode of a target block is a diagonal mode, a, b, c can be defined as a top-left reference pixel outside a target block, a reference pixel (e.g.,<x + y + 1, -1> ) responding to or corresponding to a starting point in the prediction direction of a target block and a reference pixel (e.g., <-1, x + y + 1>) responding to or corresponding to an opposite side of a starting point in the prediction direction of a target block. In this case, when the reference pixel is not obtained in a whole unit (i.e., when interpolation is required in a decimal unit), it can be defined by either a method that obtains it by being replaced by an adjacent reference pixel or a method that obtains it by being interpolated through an adjacent reference pixel on both sides.
[00331] In this case, for a diagonal mode in an upper right direction, a weight can be assigned to w3 to reflect Petition 870250082332, dated 12 / 09 / 2025, pages 88 / 123 79 / 89 is the gradient of a reference pixel positioned at an initial point in a prediction direction and positioned on the opposite side. It can be an example (e.g., w1 and w2 are 0) in a weight definition based on how much it changes from a reference pixel in a prediction direction to a target pixel. For a diagonal mode in a lower-left direction, the related explanation can be derived from the mode, therefore the detailed explanation is omitted.
[00332] Figures 9A and 9B are exemplary diagrams in a modification method based on multiple reference pixel lines according to an embodiment of the present disclosure.
[00333] The example mentioned later may be a configuration that can be supported separately from a configuration where a reference pixel line that will be used for intraprediction is selected from the aforementioned plural reference pixel lines and will be described based on, but it can also be applied to an intercombined configuration.
[00334] With reference to Figure 9A, it represents an example of modification in a horizontal or vertical mode. In detail, it can be an example in a case where a reference pixel in two or more reference pixel lines is used for modification.
[00335] When the prediction mode of a target block is a vertical mode, the accuracy of the modification can be improved by additionally defining a* as a reference pixel. Alternatively, a** can be obtained by applying a weighted average aaea* to apply it to the modification equation mentioned above.
[00336] Since block partitioning may not be performed to have a boundary that precisely divides image features, it may be for the same reason as using a reference pixel adjacent to a target block as a prediction pixel. Petition 870250082332, dated 12 / 09 / 2025, pp. 89 / 123 80 / 89
[00337] When the prediction mode of a target block is a horizontal mode, the accuracy of the modification can be improved by additionally defining b* as a reference pixel for beb**, which can be obtained by applying a weighted average to beb* to apply it to the modification equation mentioned above.
[00338] With reference to Figure 9B, it represents an example of modification in a diagonal mode. In detail, it can be an example in a case where a reference pixel in two or more reference pixel lines is used for modification.
[00339] When the prediction mode of a target block is a lower left direction, the accuracy of the modification can be improved by additionally defining a* as a reference pixel for a at a prediction starting point or a** can be obtained by applying a weighted average aea* to apply it to the modification equation mentioned above.
[00340] Furthermore, the accuracy of the modification can be improved by additionally defining b* as a reference pixel for b at a position opposite to a prediction start point, or b** can be obtained by applying a weighted average abeb* to apply it to the modification equation mentioned above.
[00341] For a diagonal mode, a reference pixel is obtained based on one or more reference pixels at a prediction start point or at a position opposite to a start point. In this case, the reference pixel can be selected for a pixel in a direction of a prediction mode.
[00342] In the example above, when a reference pixel in multiple reference pixel lines is used for modification, whether support can be determined based on an image type, a color component, the state information of a target block, an intraprediction mode, whether an intraprediction mode in a sub-block unit is applied, reference pixel line selection information, etc.
[00343] Figure 10 is a flowchart showing the method of Petition 870250082332, dated 12 / 09 / 2025, pp. 90 / 123 81 / 89 intraprediction modification according to a modality of the present disclosure.
[00344] With reference to Figure 10, an arbitrary pixel for the modification of a target block can be obtained (S900), a modification definition can be determined based on a target block and an intraprediction mode (S910), and the modification of a prediction block can be performed (S920).
[00345] For the modification of a prediction block, a block adjacent to a target block can be configured while being tilted in a specific direction (for example, in an upper left direction), which is generated by the encoding order according to a raster scan or Z scan method.
[00346] In addition to performing prediction and modification for a reference pixel tilted in a specific direction, the accuracy of the prediction can be improved by using data in a region where encoding is not complete. For this, a process of obtaining an arbitrary pixel can be performed. In this case, the number of arbitrary pixels can be an integer, such as 1, 2, or more.
[00347] For example, an arbitrary pixel used for modifying a target block can be determined between pixels aa to ii in Figure 8. In detail, a pixel that belongs to a region where encoding has not yet been completed between blocks adjacent to a target block can be defined as an arbitrary pixel.
[00348] Alternatively, it can be determined between the aap pixels in Figure 8. In detail, since a target block also belongs to a pixel that is not yet encoded, it can be included in a selected target as an arbitrary pixel.
[00349] Figures 11A, 11B, 11C, 11D and 11E are exemplary diagrams on an arbitrary pixel used to modify a prediction pixel according to an embodiment of the present disclosure. Petition 870250082332, dated 12 / 09 / 2025, pp. 91 / 123 82 / 89
[00350] With reference to Figures 11A, 11B, 11C, 11D and 11E, exemplary diagrams are shown wherein for Figure 11A, a lower right pixel in a target block, for Figure 11B, a lower right pixel outside a target block, for Figure 11C, a lower left pixel outside a target block, for Figure 11D, a lower pixel outside a target block and for Figure 11E, a right pixel outside a target block is determined as an arbitrary pixel (X, X1, X2).
[00351] If the modification is performed using an arbitrary pixel, the related information can be generated explicitly or determined implicitly. And, even if the use of an arbitrary pixel is determined in a higher unit, such as a sequence, an image, etc., a configuration for an arbitrary pixel can be defined based on an image type, a color component, the state information of a target block, an encoding mode, an intraprediction mode, whether intraprediction in a sub-block unit is applied, reference pixel line selection information, etc. In addition, definition information related to an arbitrary pixel (e.g., a flag indicating whether the modification is performed using an arbitrary pixel in a block unit, etc.) can be generated explicitly.
[00352] An arbitrary pixel definition can be configured by including whether an arbitrary pixel is used (i.e., whether an arbitrary pixel is used for modification), the number, position, etc. of an arbitrary pixel, etc.
[00353] In this case, an intraprediction mode performing modification using an arbitrary pixel can be determined according to whether it belongs to a predetermined prediction mode group. For example, between a planar, DC, horizontal, vertical, diagonal mode (e.g., a top right directional mode, a bottom right directional mode, a bottom left directional mode, etc. mode No. 2, 34, 66 in Figure Petition 870250082332, dated 12 / 09 / 2025, pages 92 / 123 83 / 89 5) and a color copy mode, the prediction group can be configured. Alternatively, it can be configured by additionally including a prediction mode (for example, a k-spaced mode based on a directional mode. In this case, k is an integer whose absolute value is 1, 2, 3, 4 or more) derived in the prediction mode group.
[00354] A target block whose modification is performed using an arbitrary pixel can be less than or equal to a first predetermined threshold size, and the first threshold size can mean the maximum size a target block can have. Alternatively, it can be greater than or equal to a second predetermined threshold size, and the second threshold size can mean the minimum size a target block can have. In this case, the threshold size can be shown as width (W), height (H), WxH, W*H, etc., and W and H can be an integer, such as 4, 8, 16, 32 or more, and the first threshold size can be greater than or equal to the second threshold size.
[00355] In the explanation above, it can be understood that a modification definition that is mentioned by means of a previous modality belongs to or is combined with a lower configuration, so that an overlapping explanation is omitted. In the example mentioned below, it is assumed that an arbitrary pixel is defined as Figure 11A.
[00356] Since the position of an arbitrary pixel is a region that is not yet encoded, a pixel value at a corresponding position can be obtained by various methods.
[00357] For example, data about the position of an arbitrary pixel can be explicitly encoded. A pixel value at a corresponding position can be encoded as is (e.g., based on bit depth) or a value obtained by a predetermined division value (e.g., quantization. A quantized value is used for modification) can be encoded. Petition 870250082332, dated 12 / 09 / 2025, pages 93 / 123 84 / 89
[00358] Alternatively, two or more candidate data values at the position of an arbitrary pixel can be obtained in an encoded region adjacent to a target block and can be encoded by setting index information for the same. In an example, when a total of 2 candidates are supported as a pixel value at the position of an arbitrary pixel is 67, a first candidate value obtained in a region adjacent to a target block (e.g., a top region) is 70 and a second candidate value obtained in a region adjacent to a target block (e.g., a left region) is 85, candidate value selection information (e.g., the first candidate value is selected. A 1-bit flag) can be encoded. In this case, obtaining the candidate value can be mentioned in the example mentioned below. The candidate value can be supported as an integer, such as 2, 3, 4 or more.
[00359] For the example above, it may be a case where information about the data at an arbitrary pixel position is explicitly encoded and the data at an arbitrary pixel position can be obtained implicitly.
[00360] For example, it can be obtained from a reference pixel at a predetermined position or a reference pixel responding to or corresponding to the position of an arbitrary pixel. As an example for a predetermined position, it can be obtained from a reference pixel (A, E, M in Figure 8) at an upper left, top left position outside of a target block and a reference pixel at a position (upper right, lower left) based on the width or height of a target block (I, Q in Figure 8) can be obtained at the position.
[00361] Furthermore, as an example for a reference pixel corresponding to the position of an arbitrary pixel, it can be obtained from a reference pixel corresponding to Petition 870250082332, dated 12 / 09 / 2025, pp. 94 / 123 85 / 89 x or y component of an arbitrary pixel (for example,<x, -1> , <-1, y>,<x + y + 1, -1> , <-1, x + y + 1>, etc.).
[00362] The data value of a reference pixel among the reference pixels at the position can only be obtained as a data value at the position of an arbitrary pixel, or a derived value based on two or more reference pixels can be obtained as a data value at the position of an arbitrary pixel.
[00363] For example, a reference pixel at a predefined position among a plurality of reference pixels used for the position of an arbitrary pixel can be obtained as a data value at the position of an arbitrary pixel. Alternatively, a value obtained in a predetermined process (e.g., the maximum value, the minimum value, a central value, etc.) among a plurality of reference pixels can be obtained as a data value at the position of an arbitrary pixel. Alternatively, a value obtained in a predetermined process (e.g., a weighted average, etc.) among a plurality of reference pixels can be obtained as a data value at the position of an arbitrary pixel.
[00364] The following describes a method for obtaining a data value at the position of an arbitrary pixel based on a plurality of reference pixels. It is assumed that A, E, M in Figure 8 are used as a reference pixel and in the example mentioned below, they are referred to as x, y, z. [Table 2] Candidate 0 1 2 3 4 5 6 Pixel value xyzy + z - xz + (y - x) / 2 y + (zx) / 2 (y + z) / 2
[00365] Candidates No. 0 to 2 in the table signify a case where a reference pixel at a predetermined position is obtained as a data value at the position of an arbitrary pixel. Candidates No. 3 to 6 signify a case for obtaining data at the position of an arbitrary pixel reflecting the gradient of a block. Petition 870250082332, dated 12 / 09 / 2025, pages 95 / 123 86 / 89 target. In detail, it may correspond to a case where the gradient of a target block is obtained based on a reference pixel at a predefined position.
[00366] It should be understood that the example may be an example for an equation derived from a plurality of pixels on the assumption that a target block has a square shape and can be changed and applied according to the aspect ratio of a block. Furthermore, a data value at the position of an arbitrary pixel can be obtained in various ways, without being limited to the example.
[00367] Figures 12A, 12B, 12C, 12D, 12E and 12F are exemplary diagrams in which the modification is performed based on an arbitrary pixel according to an embodiment of the present disclosure.
[00368] With reference to Figure 12A, it represents an interpolation process with an arbitrary pixel and a reference pixel corresponding to an upper block, and represents a process in which the modification is performed using a reference pixel in the left, right, top, top left, and top right directions of a target block obtained from the same.
[00369] The process can be applied when the modification is performed by reflecting the gradient of a reference pixel in a left and right direction when the prediction mode of a target block is a vertical mode. It may differ from an existing case where the modification is performed based on the gradient of a reference pixel in the left direction.
[00370] With reference to Figure 12C, it represents an interpolation process with an arbitrary pixel and a reference pixel corresponding to a left block, and represents a process in which the modification is performed using a reference pixel in the top, bottom, left, top left, and bottom left directions of a target block obtained from Petition 870250082332, dated 12 / 09 / 2025, pp. 96 / 123 87 / 89 same.
[00371] The process can be applied when the modification is performed by reflecting the gradient of a reference pixel in an upward and downward direction when the prediction mode of a target block is a horizontal mode. It may differ from an existing case where the modification is performed based on the gradient of a reference pixel in an upward direction.
[00372] With reference to Figure 12E, it represents an interpolation process with an arbitrary pixel and a reference pixel corresponding to a left and top block, and represents a process in which the modification is performed using a reference pixel in the top, bottom, left, right, top left, top right, bottom left and bottom right direction of a target block obtained from the same.
[00373] What follows represents an equation where a modified pixel is obtained by applying modification to a prediction pixel. In this case, a reference pixel can be configured differently from a previous equation where an arbitrary pixel or a reference pixel obtained based on an arbitrary pixel is included. Z = (z * w0) + (a * w1) + (b * w2) + (c * w3) + (d * w4) + (e * w5)
[00374] In this case, ze Z mean a prediction pixel and a modified pixel, respectively, aae mean a reference pixel used for the modification, and w0 to w5 mean a weight applied to the modification. Depending on the number of reference pixels used for modification, the reference pixel and the weight can be determined. In this case, a value considering normalization including 0 can be assigned to a weight.
[00375] According to the prediction mode of a target block, the position and number of reference pixels can be determined and several cases such as Figures 12A, 12B, 12C, 12D, 12E and 12F may be possible. As another explanation in a Petition 870250082332, dated 12 / 09 / 2025, pp. 97 / 123 88 / 89 The definition of modification can be derived in part with respect to a previous equation; the detailed explanation is omitted.
[00376] A case in which the modification is performed in intraprediction has been described through various modalities. In this case, it was described only in the case where the modification is performed after obtaining a prediction block, but it may be possible to perform the modification after it is reflected in an intraprediction process (i.e., a process of generating a prediction block).
[00377] Furthermore, flag information generated in a modification process can be encoded / decoded in a separate configuration from an intraprediction mode, but a configuration combined with or dependent on an intraprediction mode may be possible. In other words, it should be understood that it is not limited to an additional or subsequent part after an intraprediction process.
[00378] The methods according to the present disclosure may be recorded on a computer-readable medium after being incorporated in the form of a program instruction that can be performed by a variety of computer means. A computer-readable medium may include a program instruction, a data file, a data structure, etc., alone or in combination. A program instruction recorded on a computer-readable medium may be specially designed and configured for the present disclosure or may be made available after being disclosed to a person skilled in computer software.
[00379] An example of a computer-readable medium might include a hardware device, such as ROM, RAM, Flash memory, etc., that is specially configured to store and execute a program instruction. An example of a program instruction might include high-level language code that can be executed by a computer with an interpreter, etc., Petition 870250082332, dated 12 / 09 / 2025, pages 98 / 123 89 / 89 in addition to a machine language code that is made by a compiler. The hardware device mentioned above can be configured to operate as at least one software module to perform the movement of the present disclosure and vice versa.
[00380] In addition, the aforementioned method or device may be incorporated after all or part of such configurations or functions are combined or separated.
[00381] Although described above with reference to the desirable embodiment of the present disclosure, a person skilled in the relevant field of technology may understand that the present disclosure may be modified in various ways and altered within a range that is not beyond the idea and region of the present disclosure as set forth in the following claim. INDUSTRIAL APPLICABILITY
[00382] This disclosure can be used to encode / decode a video signal. Petition 870250082332, dated 12 / 09 / 2025, pp. 99 / 123 < / a-1> < / intra> < / qt> < / central>
Claims
1 / 3 CLAIMS 1. Image decoding method with a decoding apparatus, characterized in that it comprises: determining an intraprediction mode of a target block; generating a prediction block of the target block based on the intraprediction mode; and modifying the prediction block, wherein the intraprediction mode of the target block is determined as a mode within a group of candidate prediction modes according to the state information of the target block, and wherein when the color component of the target block is a chroma component, the candidate prediction mode group comprises a directional mode, a non-directional mode, a color mode and a copy mode.
2. Method according to claim 1, characterized in that when a color component of the target block is a luma component, the group of prediction mode candidates comprises the directional mode and the non-directional mode.
3. Method, according to claim 2, characterized in that the group of prediction mode candidates is classified into a plurality of categories by considering a maximum number or priority of a prediction mode that is capable of being included in each category.
4. Method, according to claim 2, characterized in that the group of prediction mode candidates is classified into a first category including non-directional mode and directional mode and a second category including color copy mode.
5. Method, according to claim 3, characterized in that it further comprises: obtaining first information by specifying any one of the plurality of categories; and obtaining second information by specifying the mode of intraprediction of the target block in the category according to the first information, wherein the mode of intraprediction of the target block is determined from the category specified based on the first information and the second information.
6. Method, according to claim 5, characterized in that the second piece of information ceases to be obtained when only one prediction mode is included in the category according to the first piece of information.
7. A method according to claim 1, characterized in that it further comprises constructing a reference pixel used for intraprediction, wherein the reference pixel belongs to all or part of a plurality of reference pixel lines supported on a decoding apparatus.
8. Method according to claim 7, characterized in that it further comprises performing at least one of a weighted filter or an interpolation filter for the constructed reference pixel.
9. A method according to claim 1, characterized in that the modification of the prediction block is performed selectively based on predetermined encoding information, wherein the encoding information includes at least one of an image type, a color component, state information, an encoding mode, an intraprediction mode, whether intraprediction in sub-block units is applied, or a reference pixel line.
10. Image coding method with a coding apparatus, characterized in that it comprises: determining an intraprediction mode of a target block; generating a prediction block of the target block based on the intraprediction mode; and Petition 870250082332, dated 12 / 09 / 2025, page 101 / 123 3 / 3 modifying the prediction block, wherein the intraprediction mode of the target block is determined as a mode within a group of candidate prediction modes according to the state information of the target block, and wherein when the color component of the target block is a chroma component, the candidate prediction mode group comprises a directional mode, a non-directional mode, a color mode and a copy mode.
11. Non-transient computer-readable recording medium, characterized in that it stores a bitstream that is generated by an image encoding method, the method comprising: determining an intraprediction mode of a target block; generating a prediction block of the target block based on the intraprediction mode; and modifying the prediction block, wherein the intraprediction mode of the target block is determined as a mode within a group of candidate prediction modes according to the state information of the target block, and wherein when the color component of the target block is a chroma component, the candidate prediction mode group comprises a directional mode, a non-directional mode, a color mode, and a copy mode. Petition 870250082332, dated 12 / 09 / 2025, pp. 102 / 123