Image decoding method, image encoding method and transmission method

The image decoding and encoding method enhances compression efficiency by predicting second color component blocks using first color component blocks with adaptive resizing and reference sample determination, addressing the challenge of high-resolution image data volume and cost.

JP2025170083APending Publication Date: 2025-11-14LX SEMICON CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2025150457
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2016-10-04
Filing Date
2025-09-10
Publication Date
2025-11-14

AI Technical Summary

Technical Problem

The increasing demand for high-resolution and high-quality images leads to a significant increase in data volume, resulting in higher transmission and storage costs, necessitating more efficient image encoding and decoding technologies.

Method used

An image decoding and encoding method that utilizes intra-frame prediction by deriving and applying prediction parameters to predict second color component blocks using first color component blocks, with adaptive resizing and reference sample determination based on block size and shape, boundary alignment, and correlation analysis.

Benefits of technology

Improves compression efficiency in image decoding and encoding, reducing data volume and associated costs while maintaining image quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025170083000001_ABST
    Figure 2025170083000001_ABST
Patent Text Reader

Abstract

To enhance compression efficiency.SOLUTION: An image decoding method includes the steps of: deriving an intra prediction mode of a current block; deriving a reference sample for intra prediction of a current block; and generating a prediction block by executing intra prediction on a current block based on the intra prediction mode and the reference sample. In the step of deriving an intra prediction mode of the current block, a color difference intra prediction model of the current block that is a color difference block is derived. A color difference intra prediction mode of the current block is derived using a luminance intra prediction mode of a corresponding luminance block corresponding to a predetermined position of the current block, the predetermined position being equal to the center position of the current block.SELECTED DRAWING: Figure 8
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an image decoding method, an image coding method, and a recording medium. Specifically, the present invention relates to an image decoding method and an image coding method using intra-frame prediction, and a recording medium storing a bitstream generated by the image coding method (or device) of the present invention. [Background technology]

[0002] Recently, demand for high-resolution, high-quality images, such as HD (High Definition) images and UHD (Ultra High Definition) images, is increasing in various application fields. As image data becomes higher in resolution and quality, the amount of data increases relatively compared to conventional image data. Therefore, when image data is transmitted over conventional media such as wired or wireless broadband lines or stored using conventional storage media, transmission and storage costs increase. To solve the problems that arise with the increase in resolution and quality of image data, highly efficient image encoding / decoding technologies for images with higher resolution and quality are required.

[0003] There are various image compression techniques, such as inter-frame (inter) prediction techniques that predict pixel values ​​contained in a current picture from pictures before or after the current picture, intra-frame (intra) prediction techniques that predict pixel values ​​contained in a current picture using pixel information within the current picture, transformation and quantization techniques that compress the energy of residual signals, and entropy coding techniques that assign short codes to values ​​that occur frequently and long codes to values ​​that occur less frequently. Using these image compression techniques, image data can be effectively compressed and transmitted or stored. Summary of the Invention [Problem to be solved by the invention]

[0004] An object of the present invention is to provide an image decoding method and an image coding method with improved compression efficiency.

[0005] Another object of the present invention is to provide an image decoding method and an image coding method using intra prediction with improved compression efficiency.

[0006] Another object of the present invention is to provide a recording medium that stores a bitstream generated by the image coding method of the present invention. [Means for solving the problem]

[0007] An image decoding method according to the present invention for predicting a second color component block using a first color component block may include a step of deriving prediction parameters using the first color component block, and a step of predicting the second color component block using the derived prediction parameters.

[0008] In the image decoding method according to the present invention, the first color component block may be a luminance block, and the second color component block may be a chrominance block.

[0009] The image decoding method of the present invention may further include a step of determining whether to predict the second color component block using the first color component block based on the size or shape of the second color component block.

[0010] The image decoding method according to the present invention may further include the step of reconstructing the first color component block based on the size of the first color component block and the size of the second color component block.

[0011] In the image decoding method of the present invention, when the size of the first color component block is larger than the size of the second color component block, the step of reconstructing the first color component block may include a step of downsampling the first color component block.

[0012] In the image decoding method of the present invention, when the size of the first color component block is smaller than the size of the second color component block, the step of reconstructing the first color component block may include a step of upsampling the first color component block.

[0013] In the image decoding method of the present invention, the step of reconstructing the first color component block may be performed based on whether the boundary of the first color component block or the boundary of the second color component block corresponds to the boundary of a predetermined image region.

[0014] In the image decoding method according to the present invention, the predetermined image region may be at least one of a picture, a slice, a tile, a CTU, and a CU.

[0015] In the image decoding method of the present invention, when the boundary of the first color component block or the boundary of the second color component block corresponds to the boundary of a predetermined image area, the number of upper reference sample lines and the number of left reference sample lines used to reconstruct the first color component block may be different from each other.

[0016] In the image decoding method according to the present invention, the reference samples used for reconstructing the first color component block can be determined based on the intra prediction mode of the first color component block.

[0017] In the image decoding method according to the present invention, the reference samples used for reconstructing the first color component block can be determined based on quantization parameters of neighboring blocks of the first color component block.

[0018] In the image decoding method of the present invention, when the first color component block is square and the second color component block is rectangular, the reference samples used to construct the first color component block may be reference samples in the vicinity of the square first color component block.

[0019] In the image decoding method according to the present invention, the step of deriving the prediction parameters may be performed using at least one of reference samples of the first color component block and reference samples of the second color component block.

[0020] In the image decoding method according to the present invention, the reference samples used to derive the prediction parameters can be determined based on an intra prediction mode of the first color component block.

[0021] In the image decoding method according to the present invention, the reference samples used to derive the prediction parameters can be determined based on the size or shape of the first color component block or the second color component block.

[0022] In the image decoding method according to the present invention, the step of deriving the prediction parameters may be performed based on at least one of the correlation, variation, average value, and distribution between the reference samples of the first color component block and the reference samples of the second color component block.

[0023] In an image decoding device according to the present invention, the image decoding device includes an intra-screen prediction unit that predicts a second color component block using a first color component block, and the intra-screen prediction unit can derive prediction parameters using the first color component block and predict the second color component block using the derived prediction parameters.

[0024] An image encoding method according to the present invention for predicting a second color component block using a first color component block may include a step of deriving prediction parameters using the first color component block, and a step of predicting the second color component block using the derived prediction parameters.

[0025] In an image encoding device according to the present invention, which includes an intra-screen prediction unit that predicts a second color component block using a first color component block, the intra-screen prediction unit can derive prediction parameters using the first color component block and predict the second color component block using the derived prediction parameters.

[0026] The recording medium according to the present invention can store a bitstream generated by the image coding method according to the present invention. [Effects of the Invention]

[0027] According to the present invention, it is possible to provide an image decoding method and an image coding method with improved compression efficiency.

[0028] Furthermore, according to the present invention, it is possible to provide an image decoding method and an image coding method using intra prediction with improved compression efficiency.

[0029] Furthermore, according to the present invention, a bitstream generated by the image decoding method of the present invention is A recording medium on which the information is stored can be provided. [Brief explanation of the drawings]

[0030] [Figure 1] 1 is a block diagram showing a configuration of an embodiment of an encoding device to which the present invention is applied. [Figure 2] 1 is a block diagram showing a configuration of an embodiment of a decoding device to which the present invention is applied. [Figure 3] FIG. 2 is a schematic diagram showing an image division structure when encoding and decoding an image. [Figure 4] FIG. 10 is a diagram for explaining an embodiment of intra-screen prediction processing. [Figure 5] FIG. 1 is a diagram for explaining intra-screen prediction according to the present invention. [Figure 6] FIG. 10 is an exemplary diagram illustrating the relationship between a luminance block and a chrominance block. [Figure 7] 10A and 10B are diagrams illustrating DC prediction according to the size and / or shape of a current block. [Figure 8] 10A and 10B are diagrams for explaining inter-color component intra-screen prediction execution processing; [Figure 9] FIG. 10 is an exemplary diagram for explaining the reconstruction of color component blocks. [Figure 10] FIG. 10 is a diagram illustrating an embodiment in which reconstruction is performed using multiple upper and / or left reference sample lines. [Figure 11] 10 is an exemplary diagram illustrating reference samples used for reconstruction depending on the intra prediction mode or coding parameters of a corresponding block. FIG. [Figure 12] 10 is an exemplary diagram illustrating a reconstructed block corresponding to the first color component when the second color component prediction target block is 4x4. FIG. [Figure 13] 4A and 4B are diagrams for explaining samples of a first color component and samples of a second color component. DETAILED DESCRIPTION OF THE INVENTION

[0031] Because the present invention is susceptible to various modifications and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this does not limit the present invention to the specific embodiments, but rather encompasses all modifications, equivalents, and alternatives within the spirit and technical scope of the present invention. In the drawings, like reference numerals indicate the same or similar functions throughout the various aspects. The shape and size of elements in the drawings may be exaggerated for clarity. The detailed description of exemplary embodiments below refers to the accompanying drawings, which show specific embodiments by way of example. These embodiments are described in sufficient detail to enable those skilled in the art to practice the embodiments. It should be understood that various embodiments, although different from one another, are not necessarily mutually exclusive. For example, specific shapes, structures, and characteristics described herein in connection with one embodiment can be implemented in various embodiments without departing from the spirit and scope of the present invention. It should also be understood that the location or arrangement of individual components within each disclosed embodiment can be changed without departing from the spirit and scope of the embodiment. Accordingly, the following detailed description is not to be taken in a limiting sense, and the scope of the exemplary embodiments is limited only by the appended claims, if properly recited, and to the full scope of equivalents to which those claims are entitled.

[0032] In the present invention, the terms "first," "second," etc. may be used to describe various elements, but these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first element can be called a second element, and similarly, a second element can be called a first element, without departing from the scope of the present invention. The term "and / or" includes a combination of multiple related listed items or any of multiple related listed items.

[0033] When a component of the present invention is said to be "coupled" or "connected" to another component, it should be understood that the component may be directly coupled or connected to the other component, but that there may be other components between them. In contrast, when a component is said to be "directly coupled" or "directly connected" to another component, it should be understood that there are no other components between them.

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

[0035] The terms used in the present invention are merely used to describe specific embodiments and do not limit the present invention. A singular expression includes a plural expression unless the context clearly dictates otherwise. In the present invention, terms such as "comprise" or "have" specify the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, and should be understood not to preclude the presence or additional possibility of one or more other features, numbers, steps, operations, components, parts, or combinations thereof. In other words, in the present invention, a description that a specific configuration "comprises" does not exclude configurations other than the specified configuration, but means that additional configurations may be included within the scope of the implementation of the present invention or the technical idea of ​​the present invention.

[0036] Some components of the present invention may not be essential components that perform essential functions in the present invention, but may be optional components simply for improving performance. The present invention can be realized by including only components that are essential for realizing the essence of the present invention, excluding components used simply for improving performance, and a structure including only essential components excluding optional components used simply for improving performance is also included in the scope of the present invention.

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

[0038] In the following, an image may refer to a picture constituting a video, or may refer to the video itself. For example, "encoding and / or decoding an image" may mean "encoding and / or decoding a video" or "encoding and / or decoding one of the images constituting a video." Here, a picture may have the same meaning as an image.

[0039] Terminology Encoder: A device that performs encoding. Decoder: A device that performs decoding. Block: An MxN array of Samples.

[0040] Here, M and N are positive integers, and a block generally refers to a two-dimensional sample array. A block may refer to a unit. A current block may refer to a block to be coded during coding, or a block to be decoded during decoding. The current block may be at least one of a coding block, a prediction block, a residual block, and a transform block.

[0041] Sample: The basic unit that makes up a block. Bit depth (B d ) from 0 to 2 depending on Bd It can be expressed as a value up to -1. In the present invention, the term "sample" can be used synonymously with "picture element" or "pixel."

[0042] Unit: A unit refers to a unit of image encoding and decoding. In image encoding and decoding, a unit may be a region into which an image is divided. Alternatively, when an image is divided into smaller units for encoding or decoding, a unit may refer to the divided units. In image encoding and decoding, a predefined process may be performed on each unit. A unit may be further divided into sub-units having a smaller size than the unit. Depending on the function, a unit may refer to a block, macroblock, coding tree unit, coding tree block, coding unit, coding block, prediction unit, prediction block, residual unit, residual block, transform unit, transform block, etc. Furthermore, a unit may refer to a luma component block, a corresponding chroma component block, and syntax elements for each block in order to distinguish it from a block. The unit may have various sizes and shapes, and in particular, the shape of the unit may include geometric shapes that can be expressed two-dimensionally, such as a rectangle, a square, a trapezoid, a triangle, a pentagon, etc. Furthermore, the unit information may include at least one of a unit type indicating a coding unit, a prediction unit, a residual unit, a transform unit, etc., a unit size, a unit depth, an encoding and decoding order of the unit, etc.

[0043] Coding tree unit: Consists of two chrominance (Cb, Cr) coding tree blocks related to one luminance (Y) coding tree block. It can also refer to the block and its corresponding syntax elements. Each coding tree unit can be divided using one or more partitioning methods, such as a quad tree or a binary tree, to form subunits such as a coding unit, a prediction unit, and a transform unit. This term can be used to refer to pixel blocks, which are processing units in image decoding / encoding processes, such as dividing an input image.

[0044] Coding Tree Block: A term that can be used to refer to any of the Y coding tree block, Cb coding tree block, and Cr coding tree block.

[0045] Neighbor block: refers to a block adjacent to a current block. The block adjacent to the current block may refer to a block whose boundary abuts the current block or a block within a predetermined distance from the current block. The neighbor block may refer to a block adjacent to a vertex of the current block. Here, the block adjacent to a vertex of the current block may be a block vertically adjacent to a neighbor block horizontally adjacent to the current block, or a block horizontally adjacent to a neighbor block vertically adjacent to the current block. The neighbor block may also refer to a reconstructed neighbor block.

[0046] Reconstructed Neighbor Block: A reconstructed neighbor block refers to a neighboring block that has already been coded or decoded spatially / temporally near a current block. In this case, the reconstructed neighbor block may refer to a reconstructed neighboring unit. The reconstructed spatial neighbor block may be a block in the current picture that has already been reconstructed through coding and / or decoding. The reconstructed temporal neighbor block may be a reconstructed block or its neighboring block at the same position as the current block of the current picture in a reference picture.

[0047] Unit depth: It means the degree to which a unit is divided. In a tree structure, the root node has the shallowest depth and the leaf node has the deepest depth. When a unit is expressed in a tree structure, the level at which the unit exists can mean the unit depth.

[0048] Bitstream: A string of bits containing coded image information.

[0049] Parameter Set: This corresponds to header information among structures in a bitstream. A parameter set may include at least one of a video parameter set, a sequence parameter set, a picture parameter set, and an adaptation parameter set. A parameter set may also include slice header and tile header information.

[0050] Parsing: This can refer to entropy decoding a bitstream to determine the values ​​of syntax elements, or it can refer to entropy decoding itself.

[0051] Symbol: This symbol can refer to at least one of a syntax element of a unit to be coded / decoded, a coding parameter, a value of a transform coefficient, etc. Also, a symbol can refer to an object of entropy coding or a result of entropy decoding.

[0052] Prediction Unit: A basic unit used for performing prediction such as inter prediction, intra prediction, inter compensation, intra compensation, motion compensation, etc. One prediction unit may be divided into multiple smaller partitions or sub-prediction units.

[0053] Prediction Unit Partition: This may refer to the shape in which a prediction unit is divided.

[0054] Transform unit: A basic unit used for encoding / decoding residual signals, such as transform, inverse transform, quantization, inverse quantization, and transform coefficient encoding / decoding. One transform unit can be divided into multiple smaller transform units.

[0055] FIG. 1 is a block diagram showing the configuration of an embodiment of an encoding device to which the present invention is applied. The encoding device 100 may be an encoder, a video encoding device, or an image encoding device. A video may include one or more images. The encoding device 100 may sequentially encode one or more images.

[0056] Referring to FIG. 1, the encoding device 100 may include a motion prediction unit 111, a motion compensation unit 112, an intra prediction unit 120, a switch 115, a subtractor 125, a transform unit 130, a quantization unit 140, an entropy encoding unit 150, an inverse quantization unit 160, an inverse transform unit 170, an adder 175, a filter unit 180, and a reference picture buffer 190.

[0057] The encoding device 100 may perform encoding on an input image in intra mode and / or inter mode. The encoding device 100 may also generate a bitstream through encoding of the input image and output the generated bitstream. The generated bitstream may be stored in a computer-readable recording medium or streamed via a wired / wireless transmission medium. When an intramode is used as a prediction mode, the switch 115 may switch to intra. When an intermode is used as a prediction mode, the switch 115 may switch to inter. Here, the intramode may refer to an intra-frame prediction mode, and the intermode may refer to an inter-frame prediction mode. The encoding device 100 may generate a prediction block for an input block of the input image. After the prediction block is generated, the encoding device 100 may encode a residual between the input block and the prediction block. The input image may also be referred to as a current image currently being encoded. The input block may also be referred to as a current block currently being encoded or a block to be encoded.

[0058] When the prediction mode is the intra mode, the intra prediction unit 120 may also use pixel values ​​of previously coded / decoded blocks adjacent to the current block as reference pixels. The intra prediction unit 120 may perform spatial prediction using the reference pixels and generate prediction samples for the input block through the spatial prediction. Here, intra prediction may refer to intra-frame prediction.

[0059] When the prediction mode is inter mode, the motion prediction unit 111 can search for an area in a reference image that best matches the input block in the motion prediction process, and can derive a motion vector using the searched area. The reference image can be stored in the reference picture buffer 190.

[0060] The motion compensation unit 112 may generate a prediction block by performing motion compensation using a motion vector. Here, inter prediction may refer to inter prediction or motion compensation.

[0061] The subtractor 125 may generate a residual block using the difference between the input block and the predicted block. The residual block may also be referred to as a residual signal. The residual signal may refer to the difference between the original signal and the predicted signal. The residual signal may also be a signal generated by transforming, quantizing, or transforming and quantizing the difference between the original signal and the predicted signal. The residual block may be a block-based residual signal.

[0062] The transform unit 130 may perform a transform on the residual block to generate transform coefficients and output the transform coefficients. Here, the transform coefficients may be coefficient values ​​generated by performing a transform on the residual block. When a transform skip mode is applied, the transform unit 130 may skip transforming the residual block.

[0063] By applying quantization to the transform coefficients or residual signal, quantized levels can be generated, which may also be referred to as transform coefficients in the following embodiments.

[0064] The quantization unit 140 may generate quantized levels by quantizing the transform coefficients or the residual signal based on the quantization parameter, and may output the quantized levels. In this case, the quantization unit 140 may quantize the transform coefficients using a quantization matrix.

[0065] The entropy coding unit 150 may generate a bitstream by performing entropy coding based on a probability distribution on values ​​calculated by the quantization unit 140 or coding parameter values ​​calculated in the coding process, and may output the bitstream. The entropy coding unit 150 may perform entropy coding on information related to pixels of an image and information for decoding the image. For example, the information for decoding the image may include syntax elements.

[0066] When entropy coding is applied, fewer bits are assigned to symbols with higher occurrence probabilities and more bits are assigned to symbols with lower occurrence probabilities to represent the symbols, thereby reducing the size of the bit string for the symbol to be coded. The entropy coding unit 150 can use coding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), and context-adaptive binary arithmetic coding (CABAC) for entropy coding. For example, the entropy coding unit 150 can perform entropy coding using a variable length coding / code (VLC) table. The entropy coding unit 150 can also derive a binarization method for the target symbol and a probability model for the target symbol / bin, and then perform arithmetic coding using the derived binarization method, probability model, and context model.

[0067] The entropy coding unit 150 can convert two-dimensional block-shaped coefficients into one-dimensional vector form through a transform coefficient scanning method in order to code the transform coefficient levels.

[0068] Coding parameters can include not only information (flags, indexes, etc.) that is coded by an encoder and signaled to a decoder, like syntax elements, but also information derived during the coding or decoding process, and can refer to information required when coding or decoding an image. For example, block size, block depth, block division information, unit size, unit depth, unit division information, quadtree division flag, binary tree division flag, binary tree division direction, intra prediction mode, intra prediction direction, reference sample filtering method, prediction block boundary filtering method, filter tap, filter coefficient, inter prediction mode, motion information, motion vector, reference image index, inter prediction direction, inter prediction indicator, reference image list, motion vector predictor, motion vector candidate list, whether motion merge mode is used, motion merge candidate, motion merge candidate list, whether skip mode is used, type of interpolation filter, motion vector size, precision of motion vector representation, transform type, transform size, information on whether additional (secondary) transform is used, information on whether residual signal is present, coded block pattern, coded block flag The coding parameters may include at least one value or a combination form of information regarding the luminance signal or the color difference signal, such as a quantization matrix, a quantization flag (CBF), a quantization parameter, a quantization matrix, in-loop filter information, information regarding whether an in-loop filter is applied, in-loop filter coefficients, a binarization / de-binarization method, a context model, a context bin, a bypass bin, a transform coefficient, a transform coefficient level, a transform coefficient level scanning method, an image display / output order, a slice identification information, a slice type, a slice division information, a tile identification information, a tile type, a tile division information, a picture type, a bit depth, and information regarding the luminance signal or the color difference signal.

[0069] Here, signaling a flag or index can mean that an encoder entropy encodes the corresponding flag or index and includes it in a bitstream, and a decoder entropy decodes the corresponding flag or index from the bitstream.

[0070] When the encoding device 100 performs encoding using inter prediction, the encoded current image can be used as a reference image for other images to be processed later. Thus, the encoding device 100 can further reconstruct or decode the encoded current image and store the reconstructed or decoded image as a reference image.

[0071] The quantized levels may be dequantized by the inverse quantization unit 160 and inverse transformed by the inverse transform unit 170. The inverse quantized and / or inverse transformed coefficients may be combined with a prediction block via an adder 175. A reconstructed block may be generated by combining the inverse quantized and inverse transformed coefficients with the prediction block. Here, the inverse quantized and / or inverse transformed coefficients refer to coefficients that have undergone at least one of inverse quantization and inverse transformation, and may refer to a reconstructed residual block.

[0072] The reconstructed block may pass through a filter unit 180. The filter unit 180 may apply at least one of a deblocking filter, a sample adaptive offset (SAO), an adaptive loop filter (ALF), etc. to the reconstructed block or the reconstructed image. The filter unit 180 is also referred to as an in-loop filter.

[0073] The deblocking filter can remove block artifacts that occur at boundaries between blocks. To determine whether to perform the deblocking filter, it can be determined whether to apply the deblocking filter to the current block based on pixels included in several columns or rows included in the block. When applying the deblocking filter to a block, different filters can be applied depending on the required deblocking filtering strength.

[0074] To compensate for encoding errors using sample adaptive offset, an appropriate offset value can be added to pixel values. Sample adaptive offset can correct the offset between a deblocked image and an original image on a pixel-by-pixel basis. A method of dividing the pixels included in an image into a certain number of regions, determining the region to be offset, and applying the offset to the corresponding region, or a method of applying the offset by considering edge information of each pixel, can be used.

[0075] The adaptive loop filter can perform filtering based on a value obtained by comparing a reconstructed image with an original image. After dividing pixels included in an image into predetermined groups, a filter to be applied to each group can be determined, and differential filtering can be performed for each group. Information related to whether to apply an adaptive loop filter can be signaled for each coding unit (CU), and the shape and filter coefficients of the adaptive loop filter applied can vary depending on each block.

[0076] The reconstructed block or image that has passed through the filter unit 180 can be stored in a reference picture buffer 190. Fig. 2 is a block diagram showing the configuration of an embodiment of a decoding device to which the present invention is applied.

[0077] The decoding device 200 may be a decoder, a video decoding device or an image decoding device. Referring to FIG. 2, the decoding device 200 may include an entropy decoding unit 210, an inverse quantization unit 220, an inverse transform unit 230, an intra prediction unit 240, a motion compensation unit 250, an adder 255, a filter unit 260, and a reference picture buffer 270.

[0078] The decoding device 200 may receive a bitstream output from the encoding device 100. The decoding device 100 may receive a bitstream stored in a computer-readable recording medium or a bitstream streamed via a wired / wireless transmission medium. The decoding device 200 may perform decoding on the bitstream in an intra mode or an inter mode. The decoding device 200 may also generate a reconstructed image or a decoded image through decoding and output the reconstructed image or the decoded image.

[0079] If the prediction mode used for decoding is an intra mode, the switch can switch to intra. If the prediction mode used for decoding is an inter mode, the switch can switch to inter.

[0080] The decoding device 200 can decode an input bitstream, obtain a reconstructed residual block, and generate a prediction block. When the reconstructed residual block and the prediction block are obtained, the decoding device 200 can generate a reconstructed block to be decoded by adding the reconstructed residual block and the prediction block. The block to be decoded may be referred to as a current block.

[0081] The entropy decoder 210 generates symbols by performing entropy decoding based on a probability distribution on the bitstream. The generated symbols may include symbols in the form of quantized levels. Here, the entropy decoding method may be the inverse process of the entropy encoding method described above.

[0082] The entropy decoder 210 can convert one-dimensional vector form coefficients into two-dimensional block form coefficients according to a transform coefficient scanning method in order to decode the transform coefficient levels.

[0083] The quantized levels can be inversely quantized by the inverse quantization unit 220 and inversely transformed by the inverse transform unit 230. The quantized levels are the result of inverse quantization or inverse transformation and can be generated as reconstructed residual blocks. In this case, the inverse quantization unit 220 can apply a quantization matrix to the quantized levels.

[0084] When intra mode is used, the intra prediction unit 240 can generate a predicted block by performing spatial prediction using pixel values ​​of already decoded blocks that are neighboring the block to be decoded.

[0085] When inter mode is used, the motion compensation unit 250 can generate a prediction block by performing motion compensation using a motion vector and a reference image stored in the reference picture buffer 270.

[0086] The adder 255 may add the reconstructed residual block and the prediction block to generate a reconstructed block. The filter unit 260 may apply at least one of a deblocking filter, a sample adaptive offset, and an adaptive loop filter to the reconstructed block or image. The filter unit 260 may output the reconstructed image. The reconstructed block or image may be stored in the reference picture buffer 270 and used for inter prediction.

[0087] 3 is a schematic diagram showing an image division structure when encoding and decoding an image, and shows an embodiment in which one unit is divided into multiple sub-units.

[0088] In order to efficiently divide an image, a coding unit (CU) can be used in encoding and decoding. The coding unit can be used as a basic unit for image encoding / decoding. Furthermore, the coding unit can be used as a unit for distinguishing between intra-frame mode and inter-frame mode when encoding / decoding an image. The coding unit may be a basic unit used for prediction, transform, quantization, inverse transform, inverse quantization, or encoding / decoding of transform coefficients.

[0089] Referring to FIG. 3, an image 300 is sequentially divided into largest coding units (LCUs), and a division structure is determined for each LCU. Here, LCU can be used interchangeably with coding tree unit (CTU). Division of a unit may refer to division of blocks corresponding to the unit. Block division information may include information about the depth of the unit. The depth information may indicate the number of times and / or the degree to which the unit is divided. One unit may be hierarchically divided using depth information based on a tree structure. Each divided subunit may have depth information. Depth information is information indicating the size of a CU and may be stored for each CU.

[0090] The partition structure may refer to the distribution of coding units (CUs) within the LCU 310. This distribution may be determined by whether or not to partition one CU into multiple CUs (a positive integer equal to or greater than 2, including 2, 4, 8, 16, etc.). The width and height of a CU generated by partitioning may be half the width and half the height of the CU before partitioning, respectively, or may be smaller than the width and height of the CU before partitioning depending on the number of partitions. A CU may be recursively partitioned into multiple CUs. CU partitioning may be performed recursively up to a predetermined depth or a predetermined size. For example, the depth of an LCU may be 0, and the depth of a smallest coding unit (SCU) may be a predefined maximum depth. Here, as described above, an LCU may be a coding unit with the largest coding unit size, and an SCU may be a coding unit with the smallest coding unit size. Partitioning begins with the LCU 310, and the depth of the CU increases by 1 each time the width and / or height of the CU decreases due to partitioning.

[0091] In addition, information regarding whether a CU is divided can be expressed by division information of the CU. The division information can be 1-bit information. All CUs except for SCUs can include division information. For example, if the value of the division information is a first value, the CU may not be divided, and if the value of the division information is a second value, the CU may be divided.

[0092] Referring to FIG. 3, an LCU with a depth of 0 may be 64x64 pixels. 0 may be the minimum depth. An SCU with a depth of 3 may be 8x8 pixels. 3 may be the maximum depth. CUs of 32x32 blocks and 16x16 blocks may be represented by depths of 1 and 2, respectively.

[0093] For example, when one coding unit is divided into four coding units, the width and height of the four divided coding units may be half the size of the width and height of the coding unit before division. As an example, when a coding unit of 32x32 size is divided into four coding units, each of the four divided coding units may have a size of 16x16. When one coding unit is divided into four coding units, it can be said that the coding unit is divided into a quad-tree.

[0094] For example, when one coding unit is divided into two coding units, the width or height of the two divided coding units may be half the size of the width or height of the coding unit before division. As an example, when a 32x32 coding unit is vertically divided into two coding units, each of the divided coding units may have a size of 16x32. When one coding unit is divided into two coding units, it can be said that the coding units are divided into a binary tree. LCU32 in Figure 3 is an example of an LCU to which both quadtree division and binary tree division are applied.

[0095] FIG. 4 is a diagram for explaining an embodiment of the intra-screen prediction process. The intra prediction mode may be a non-directional mode or a directional mode. The non-directional mode may be a DC mode or a planar mode, and the directional mode may be a prediction mode having a specific direction or angle. The intra prediction mode may be expressed by at least one of a mode number, a mode value, a mode number, and a mode angle. The number of intra prediction modes may be one or more, i.e., M, including the non-directional and directional modes.

[0096] The number of intra prediction modes may be fixed at N regardless of the block size. Alternatively, the number of intra prediction modes may vary depending on the block size and / or the type of color component. For example, the larger the block size, the more intra prediction modes there may be. Alternatively, the number of intra prediction modes for a luma component block may be greater than the number of intra prediction modes for a chrominance component block.

[0097] A step of checking whether samples included in neighboring blocks reconstructed for intra-predicting the current block can be used as reference samples for the current block may be performed. If there is a sample that cannot be used as a reference sample for the current block, at least one sample value among the samples included in the reconstructed neighboring blocks may be copied and / or interpolated to replace the sample value of the sample that cannot be used as a reference sample, and then the sample value may be used as a reference sample for the current block.

[0098] A filter may be applied to at least one of the reference samples or the predicted samples based on at least one of an intra prediction mode and a size of the current block during intra prediction.

[0099] In the planar mode, when generating a predicted block of a current block, a sample value of the predicted sample can be generated using a weighted sum of reference samples above and to the left of the current block and reference samples to the upper right and lower left of the current block based on the position of the sample to be predicted within the predicted block. In the DC mode, when generating a predicted block of the current block, an average value of reference samples above and to the left of the current block can be used. In the directional mode, a predicted block can be generated using reference samples above, to the left, above, to the upper right, and / or below, left of the current block. Real-number-based interpolation can also be performed to generate predicted sample values.

[0100] The intra prediction mode of the current block may be predicted from the intra prediction mode of a block neighboring the current block and then entropy coded / decoded. If the intra prediction modes of the current block and the neighboring block are the same, information indicating that the intra prediction modes of the current block and the neighboring block are the same may be signaled using predetermined flag information. Furthermore, indicator information for the intra prediction mode that is the same as the intra prediction mode of the current block among the intra prediction modes of a plurality of neighboring blocks may be signaled. If the intra prediction modes of the current block and the neighboring block are different from each other, entropy coding / decoding may be performed based on the intra prediction mode of the neighboring block, and intra prediction mode information of the current block may be entropy coded / decoded.

[0101] FIG. 5 is a diagram for explaining intra-frame prediction according to the present invention. The intra prediction for the current block may include an intra prediction mode derivation step (S510), a reference sample construction step (S520), and / or an intra prediction execution step (S530).

[0102] In step S510, an intra prediction mode of the current block can be derived. The intra prediction mode of the current block can be derived by using the intra prediction mode of a neighboring block, entropy encoding / decoding the intra prediction mode of the current block from a bitstream, using coding parameters of the neighboring block, or using the intra prediction mode of a color component. According to the method of using the intra prediction mode of a neighboring block, the intra prediction mode of the current block can be derived using at least one of the intra prediction mode of the neighboring block, a combination of one or more intra prediction modes of the neighboring blocks, and an intra prediction mode derived using one or more MPMs.

[0103] In step S520, at least one of reference sample selection and reference sample filtering is performed to construct the reference sample.

[0104] In step S530, intra-frame prediction may be performed by performing at least one of non-directional prediction, directional prediction, position information-based prediction, and inter-color component prediction. When the directional prediction is performed, predictions having different directions may be performed for each predetermined unit including one or more samples of the current block. The predetermined unit may be, for example, at least one of a single sample, a sample group, a line, and a block. The inter-color component prediction may include reconstructing color component blocks, deriving prediction parameters, and / or performing inter-color component prediction. In step S530, filtering of the prediction samples may be further performed.

[0105] One or more reconstructed neighboring blocks can be used to derive the intra prediction mode of the current block. The position of the reconstructed neighboring block may be a predefined fixed position or a position derived through encoding / decoding. Hereinafter, encoding / decoding may refer to entropy encoding and decoding. For example, when the coordinates of the upper left corner sample of a WxH-sized current block are (0,0), the neighboring block may be at least one of blocks adjacent to the coordinates (-1,H-1), (W-1,-1), (W,-1), (-1,H), and (-1,-1), and neighboring blocks of the current block. In this case, W and H may represent the width W and height H of the current block or the number of samples.

[0106] The intra prediction mode of an available neighboring block may be replaced with a predetermined intra prediction mode. The predetermined intra prediction mode may be, for example, DC mode, planar mode, vertical mode, horizontal mode, and / or diagonal mode. For example, if a neighboring block is located outside the boundary of at least one predetermined unit among a picture, a slice, a tile, a coding tree unit (CTU), etc., or is inter-predicted or coded in PCM mode, the neighboring block may be determined to be unavailable. Alternatively, if the neighboring block is unavailable, the intra prediction mode of the unavailable neighboring block may not be replaced, and the unavailable neighboring block may not be used.

[0107] The intra prediction mode of the current block may be derived using the intra prediction modes of neighboring blocks at a predetermined position or a statistic of the intra prediction modes of two or more neighboring blocks. In this specification, the statistic may refer to at least one of an average value, a maximum value, a minimum value, a mode value, a median value, a weighted average value, and an interpolated value.

[0108] Alternatively, the intra prediction mode of the current block may be derived based on the size of a neighboring block. For example, the intra prediction mode of a neighboring block having a relatively large size may be derived as the intra prediction mode of the current block. Alternatively, a statistical value may be calculated by assigning a relatively large weight to the intra prediction mode of a block having a relatively large size.

[0109] Alternatively, whether the intra prediction mode of a neighboring block is directional may be taken into consideration. For example, if the intra prediction mode of a neighboring block is non-directional, the non-directional mode may be derived as the intra prediction mode of the current block. Alternatively, the intra prediction mode of the current block may be derived using the intra prediction modes of other neighboring blocks excluding the non-directional mode.

[0110] To derive the intra prediction mode of the current block, one or more Most Probable Mode (MPM) lists may be constructed using the intra prediction modes of neighboring blocks. The number N of candidate modes included in the MPM list may be fixed or determined based on the size and / or shape of the current block. The MPM list may be constructed so that there are no overlapping modes. If the number of available candidate modes is less than N, a predetermined candidate mode from the available candidate modes, for example, a mode obtained by adding or subtracting a predetermined offset from a directional mode, may be added to the one or more MPM lists. Alternatively, at least one of a horizontal mode, a vertical mode, a 45-degree mode, a 135-degree mode, a 225-degree mode, and a non-directional mode may be added to the MPM list. The predetermined offset may be 1, 2, 3, 4, or a positive integer.

[0111] The MPM list may be configured in a predetermined order based on the positions of neighboring blocks. For example, the predetermined order may be the order of blocks adjacent to the left, top, bottom-left corner, top-right corner, and top-left corner of the current block. The non-directional mode may be included in any position in the MPM list. For example, it may be added next to the intra-frame prediction modes of the left and top neighboring blocks.

[0112] In another embodiment, the intra prediction mode of the current block may be derived using the intra prediction mode derived using the MPM list and the intra prediction mode of a neighboring block. For example, when the intra prediction mode derived using the MPM list is Pred_mpm, Pred_mpm may be modified using the intra prediction mode of the neighboring block. For example, if Pred_mpm is greater than the intra prediction mode of the neighboring block (or a statistic of two or more intra prediction modes), Pred_mpm may be increased by n; otherwise, Pred_mpm may be decreased by n. In this case, n may be a predetermined integer such as +1, +2, +3, 0, −1, −2, or −3. The intra prediction mode of the current block may be derived from the modified Pred_mpm. Alternatively, if at least one of Pred_mpm and the intra prediction modes of the neighboring blocks is a non-directional mode, the intra prediction mode of the current block may be derived as the non-directional mode. Alternatively, conversely, the intra prediction mode of the current block may be derived as a directional mode.

[0113] As another embodiment of deriving an intra prediction mode, the intra prediction mode of the current block may be derived using the intra prediction mode of another color component. For example, if the current block is a chrominance block, the intra prediction mode of a luma block corresponding to the chrominance block may be used. The corresponding luma block may be one or more. The corresponding luma block may be determined based on at least one of the size, shape, and / or coding parameters of the chrominance block. Alternatively, the corresponding luma block may be determined based on at least one of the size, shape, and / or coding parameters of the luma block.

[0114] A luma block corresponding to a chroma block may include multiple partitions. Some or all of the multiple partitions may have different intra-frame prediction modes. The intra-frame prediction mode of the chroma block may be derived based on some or all of the multiple partitions in the corresponding luma block. In this case, some partitions may be selectively used based on a comparison of block size, shape, depth information, etc. between the chroma block and the luma block (all or some of the multiple partitions). A partition at a position in the luma block corresponding to a predetermined position in the chroma block may be selectively used. The predetermined position may refer to a corner sample (e.g., the upper left sample) or a central sample position of the chroma block.

[0115] The method for deriving an inter-color component intra prediction mode according to the present invention is not limited to using the intra prediction mode of the corresponding luminance block. For example, the intra prediction mode of the chrominance block may be derived by using or sharing at least one of the mpm_idx and MPM list of the corresponding luminance block.

[0116] FIG. 6 is an exemplary diagram for explaining the relationship between the luminance block and the chrominance block. In the example shown in FIG. 6, the ratio between the color components is 4:2:0, and the luma block corresponding to the chroma block can be at least one of A, B, C, and D.

[0117] In the example shown in Fig. 6, the intra prediction mode of the chrominance block can be derived using the intra prediction mode of the luma block A corresponding to the upper left position (0,0) in the chrominance block, or the intra prediction mode of the luma block D corresponding to the central sample position (nS / 2,nS / 2) in the chrominance block. The predetermined position in the chrominance block is not limited to (0,0) and (nS / 2,nS / 2). For example, the predetermined position can be the position of the upper right, lower left, and / or lower right corner sample in the chrominance block.

[0118] The predetermined position can be selected according to the shape of the chrominance block. For example, if the chrominance block is square, the predetermined position can be the center sample position. For example, if the chrominance block is rectangular, the predetermined position can be the upper left sample position. In the above example, the predetermined positions when the chrominance block is square and when it is rectangular can be reversed.

[0119] In another embodiment, the intra prediction mode of the chrominance block may be derived using statistics of one or more intra prediction modes in a luminance block corresponding to the size of the chrominance block.

[0120] In the example shown in Figure 6, for example, a mode corresponding to the average of the intra-frame prediction modes of luminance blocks A and D, or a mode corresponding to the average of the intra-frame prediction modes of A, B, C, and D in the luminance block corresponding to the size of the chrominance block, can be derived as the intra-frame prediction mode of the chrominance block.

[0121] If there are multiple available intra prediction modes for the luma block, all or some of them can be selected. The selection can be based on a predetermined position within the chroma block or on the size, shape, and / or depth of the chroma block and / or luma block. The selected intra prediction mode for the luma block can be used to derive the intra prediction mode for the chroma block.

[0122] For example, by comparing the size of luminance block A corresponding to the upper left sample position (0,0) in the chrominance block with the size of luminance block D corresponding to the central sample position (nS / 2, nS / 2) in the chrominance block, the intra-frame prediction mode of luminance block D, which is relatively larger, can be used to derive the intra-frame prediction mode of the chrominance block.

[0123] Alternatively, if a luminance block corresponding to a predetermined position within a chrominance block is larger than or equal to the chrominance block, the intra-frame prediction mode of the chrominance block can be derived using the intra-frame prediction mode of the corresponding luminance block.

[0124] Alternatively, if the size of the chrominance block falls within a predetermined range, the intra-frame prediction mode of the chrominance block can be derived using the intra-frame prediction mode of the luminance block corresponding to the upper left sample position (0,0) within the chrominance block.

[0125] Alternatively, if the size of the chrominance block falls within a predetermined range, the sizes of the luminance blocks corresponding to predetermined positions (0,0) and (nS / 2,nS / 2) within the chrominance block can be compared, and the intra-frame prediction mode of the larger block can be used to derive the intra-frame prediction mode of the chrominance block.

[0126] The predetermined range can be derived based on at least one of information signaled via the bitstream, information regarding the size (and / or depth) of the block (chrominance block and / or luminance block), and information predefined in the encoder / decoder.

[0127] Alternatively, if the chrominance block is rectangular, the intra prediction mode of the chrominance block can be derived using the intra prediction mode of the luminance block corresponding to the central sample position (nS / 2, nS / 2) within the chrominance block.

[0128] Alternatively, among the multiple partitions in the luma block, a partition having the same shape as the chroma block can be used. For example, if the chroma block is square or non-square, among the multiple partitions in the luma block, a square or non-square partition can be used.

[0129] 6, deriving the intra prediction mode of the chrominance block using the intra prediction mode of the luminance block includes the case where the intra prediction mode of the luminance block is used as the intra prediction mode of the chrominance block as is. Furthermore, the use of the intra prediction mode of the luminance block is not limited, and information used when deriving the intra prediction mode of the luminance block, including the mpm_idx and MPM list of the luminance block, may be used.

[0130] Alternatively, the MPM list for the chrominance block may be constructed using the intra prediction mode of the luminance block corresponding to the predetermined position. In this case, mpm_idx information for the chrominance block may be coded and signaled. The MPM list for the chrominance block may be constructed in the same manner as the MPM list for the luminance block. However, the MPM candidates for the chrominance block may include the intra prediction modes of neighboring chrominance blocks and / or the intra prediction mode of the corresponding luminance block.

[0131] When the MPM flag is 0, a secondary MPM list including one or more intra prediction modes can be constructed, and the intra prediction mode of the current block can be derived using the secondary MPM index (2nd_mpm_idx). In this case, a secondary indicator (e.g., secondary MPM flag) indicating whether the intra prediction mode of the current block is included in the secondary MPM list can be coded / decoded. The secondary MPM list can be constructed using the intra prediction modes of neighboring blocks, similar to the primary MPM list. In this case, the intra prediction modes included in the primary MPM list may not be included in the secondary MPM list. The number of MPM lists is not limited to one or two, and N MPM lists can be used.

[0132] If the intra prediction mode of the current block is not included in any of the MPM lists, the luma component intra prediction mode of the current block can be coded / decoded, and the chroma component intra prediction mode can be derived or coded / decoded based on the corresponding luma component intra prediction mode.

[0133] When the current block is divided into a plurality of sub-blocks, at least one of the above-described methods can be applied to derive an intra prediction mode for each of the divided sub-blocks.

[0134] The size and / or shape of the sub-blocks may be a predetermined size and / or shape (e.g., 4x4) or may be determined according to the size and / or shape of the current block. Alternatively, the size of the sub-blocks may be determined based on whether neighboring blocks of the current block are divided or based on the intra-frame prediction modes of the neighboring blocks of the current block. For example, the current block may be divided based on a boundary where the intra-frame prediction modes of the neighboring blocks are different from each other. Alternatively, the current block may be divided based on whether the neighboring blocks are intra-frame coded blocks or inter-frame coded blocks.

[0135] An indicator (e.g., NDIP_flag) indicating that the intra prediction mode of a current block is derived using the intra prediction mode of a neighboring block can be coded / decoded. The indicator can be coded / decoded for at least one unit of the current block or sub-block. In this case, the indicator can be coded / decoded only if the size of the current block or sub-block falls within a predetermined size or a predetermined size range.

[0136] The determination of whether the size of the current block corresponds to the predetermined size may be made based on the width or height of the current block. For example, if the width or height is a divisible length, it may be determined that the size of the current block corresponds to the predetermined size.

[0137] When a current block is divided into a plurality of sub-blocks, the intra prediction modes of the plurality of sub-blocks may be derived in a zigzag order or in parallel. The intra prediction modes of the sub-blocks may be derived using at least one of the methods for deriving the intra prediction mode of the current block. In this case, neighboring blocks of the current block may be used as neighboring blocks of each sub-block. Alternatively, sub-blocks within the current block may be used as neighboring blocks of each sub-block.

[0138] The intra prediction mode of the sub-blocks belonging to the current block may be derived using the average value of the intra prediction mode of the current block and the intra prediction modes of the adjacent blocks to the left and above the (0,0) position sample of each sub-block. For example, if the intra prediction mode of the current block is greater than the average value, half of the average value may be subtracted from the derived intra prediction mode, and if it is less than or equal to the average value, half of the average value may be added.

[0139] Information about intra prediction may be signaled via at least one of a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), an adaptation parameter set (APS), a slice header, and a tile header. For blocks smaller than a predetermined size, at least one of the information about intra prediction may not be signaled. In this case, information about intra prediction of a previously coded / decoded block (e.g., a higher block) may be used.

[0140] Based on the derived intra prediction mode, reference samples for intra prediction can be constructed. In the following description, a current block may refer to a prediction block or a sub-block having a size / shape smaller than that of the prediction block. The reference samples can be constructed using one or more reconstructed samples or a combination of samples neighboring the current block. Filtering can also be applied to the constructed reference samples.

[0141] The number and / or position of reconstructed sample lines used to construct a reference sample may vary depending on the position of the current block within the coding tree block. Each reconstructed sample on multiple reconstructed sample lines can be used as a reference sample as is. Alternatively, a predetermined filter can be applied to the reconstructed sample, and the reference sample can be generated using the filtered reconstructed sample. The reconstructed samples to which the filter is applied may belong to the same reconstructed sample line or different reconstructed sample lines.

[0142] The reconstructed reference sample can be represented as ref[m,n], and a neighboring reconstructed sample or a sample obtained by filtering the reconstructed sample can be represented as rec[m,n]. Here, m or n can be a predetermined integer value indicating the position of the sample. If the position of the upper-left sample in the current block is (0,0), the position of the upper-left reference sample of the current block can be set to (-1,-1).

[0143] The availability of neighboring reconstructed samples for constructing the reference sample can be determined. If the neighboring reconstructed samples are located outside at least one of a picture, slice, tile, and CTU, they can be determined to be unavailable. Or, if constrained intra prediction is performed on the current block, if the neighboring reconstructed samples are located in an inter-coded / decoded block, they can be determined to be unavailable.

[0144] If the nearby reconstructed samples are determined to be unavailable, the unavailable samples can be replaced with nearby available reconstructed samples. For example, starting from the bottom left sample, the unavailable samples can be filled with adjacent available samples. Alternatively, the unavailable samples can be filled with a combination of available samples. For example, the average value of the available samples on either side of the unavailable sample can be used to fill the unavailable sample.

[0145] Alternatively, unavailable samples can be filled using information on available reference samples. In this case, unavailable samples can be filled with an arbitrary value instead of the value of adjacent available samples. The arbitrary value may be the average value of available sample values, or a value taking into account the gradient of available sample values. Alternatively, both the average value and the gradient may be used. The gradient may be determined based on the difference value between adjacent available samples. Alternatively, it may be determined based on the difference value between the average value and the available sample value. In addition to the average value, a maximum value, minimum value, median value, or a weighted sum using an arbitrary weight may be used. The arbitrary weight may be determined based on the distance between the available sample and the unavailable sample.

[0146] These methods can be applied to both the top and left reference samples, or only to any direction, and can also be applied when multiple reconstructed sample lines are used to construct the reference sample line of the current block.

[0147] It may determine whether to apply filtering to the constructed one or more reference samples based on at least one of an intra prediction mode of the current block or a size / shape of the block. If filtering is applied, the type of filter may vary depending on at least one of the intra prediction mode, size, and shape of the current block.

[0148] Based on the derived intra prediction mode and reference samples, intra prediction can be performed on the current block.

[0149] In the DC mode, the average value of one or more of the constructed reference samples can be used. In this case, filtering can be applied to one or more predicted samples located at the boundary of the current block. DC prediction can be performed differently based on at least one of the size and shape of the current block. For example, the range of reference samples used in the DC mode can be determined based on the size and / or shape of the current block.

[0150] FIG. 7 is a diagram illustrating DC prediction according to the size and / or shape of the current block. As shown in FIG. 7(a), if the current block is square, DC prediction can be performed using the average value of the reference samples above and to the left of the current block.

[0151] If the current block is non-square, neighboring samples on the left or top side of the current block can be selectively used. For example, as shown in (b) of Figure 7, if the current block is rectangular, DC prediction can be performed using the average value of neighboring reference samples in the larger of the horizontal and vertical directions of the current block.

[0152] Alternatively, if the size of the current block is a predetermined size or falls within a predetermined range, a predetermined sample may be selected from reference samples above or to the left of the current block, and DC prediction may be performed using the average value of the selected samples. The predetermined size may represent a predetermined fixed size NxM in the encoder / decoder. N and M are integers greater than 0, and N and M may be the same or different from each other. The predetermined range may represent a threshold value for selecting a reference sample for the current block. The threshold value may be realized as at least one of a minimum value and a maximum value. The minimum value and / or the minimum value may be a fixed value predetermined in the encoder / decoder, or a variable value coded and signaled by the encoder.

[0153] As mentioned above, the average value of one or more reference samples can be used for DC prediction. To calculate the average value, division by the number of reference samples can be performed. n In the case of a non-square block, if all the reference samples on the upper and left sides are used, the number of reference samples becomes 2. n In this case, a shift operation cannot be used instead of a division operation. n By using reference samples, the division can be replaced by a shift operation.

[0154] In the planar mode, a weighted sum can be used that takes into account the distance from the one or more constructed reference samples depending on the position of the intra-frame prediction target sample of the current block.

[0155] In the directional mode, one or more reference samples existing on or near a predetermined angle line at the position of the sample to be predicted within the picture can be used.

[0156] In the case of a position information-based intra prediction mode, a reconstructed sample block generated based on encoded / decoded or derived position information can be used as the intra prediction block of the current block, or the decoder can search for and derive a reconstructed sample block to be used as the intra prediction block of the current block.

[0157] Intra prediction for the chrominance signals can be performed using the reconstructed luminance signal of the current block, and intra prediction for the other chrominance signal Cr can also be performed using one reconstructed chrominance signal Cb or a residual signal of Cb of the current block.

[0158] Intra prediction may be performed by combining one or more of the prediction methods. For example, an intra prediction block for a current block may be constructed by a weighted sum of a block predicted using a predetermined non-directional intra prediction mode and a block predicted using a predetermined directional intra prediction mode. In this case, the weight may be applied differently depending on at least one of the intra prediction mode of the current block, the block size, and the sample position. Alternatively, in the case of a chrominance block, an intra prediction block for the chrominance block may be constructed by a weighted sum of a block predicted using a predetermined intra prediction mode and a block predicted using a reconstructed signal of a luma block. In this case, the predetermined intra prediction mode may be, for example, one of the modes used to derive the intra prediction mode for the chrominance block. In the case of a chrominance block, whether the final prediction block is constructed using the weighted sum of two prediction blocks as described above may be signaled by coded information.

[0159] In the case of a directional mode, the constructed reference samples may be reconstructed based on the directional prediction mode. For example, if the directional prediction mode is a mode in which all reference samples present on the left and upper sides are used, a one-dimensional array may be constructed for the left or upper reference samples. Alternatively, the left reference samples may be shifted to construct the upper reference samples, or the upper reference samples may be constructed using a weighted sum of one or more left reference samples.

[0160] Different directional intra predictions may be performed on a predetermined sample group unit of the current block, which may be a block, a sub-block, a line, or a single sample.

[0161] According to an embodiment of the present invention, inter-color component intra prediction may be performed. FIG. 8 is a diagram illustrating a process of performing inter-color component intra prediction. The inter-color component intra prediction may include a color component block reconstruction step (S810), a prediction parameter derivation step (S820), and / or an inter-color component prediction execution step (S830). The color component may refer to at least one of a luma signal, a chroma signal, Red, Green, Blue, Y, Cb, and Cr. Prediction of the first color component may be performed using at least one of a second color component, a third color component, and a fourth color component. In this case, the color component signal used for prediction may be at least one of an original signal, a reconstructed signal, a residual signal, and a prediction signal.

[0162] When performing intra prediction on a second-color component target block, at least one sample of a sample of a first-color component corresponding block corresponding to the target block and / or a sample of a neighboring block of the corresponding block can be used. For example, when performing intra prediction on a color difference component block Cb or Cr, a reconstructed luma component block Y corresponding to the color difference component block can be used. Or, when performing intra prediction on a Cr component block, a Cb component block can be used. Or, when performing intra prediction on a fourth color component block, at least one combination of a first color component block, a second color component block, and a third color component block corresponding to the block can be used.

[0163] Whether to perform inter-color component intra prediction may be determined based on at least one of the size and shape of the current target block. For example, if the size of the target block is equal to the CTU size, equal to or greater than a predetermined size, or falls within a predetermined size range, inter-color component intra prediction may be performed on the target block. Alternatively, if the shape of the target block is a predetermined shape, inter-color component intra prediction may be performed on the target block. The predetermined shape may be a square. In this case, if the target block is rectangular, inter-color component intra prediction may not be performed. If the predetermined shape is rectangular, the above-described embodiment may operate inversely.

[0164] Alternatively, whether to perform inter-color component intra prediction may be determined based on at least one coding parameter of a corresponding block corresponding to the block to be predicted and a neighboring block of the corresponding block. For example, if the corresponding block is inter-predicted under a CIP (Constrained Intra Prediction) environment, inter-color component intra prediction may not be performed. Alternatively, if the intra prediction mode of the corresponding block corresponds to a predetermined mode, inter-color component intra prediction may be performed. Alternatively, whether to perform inter-color component intra prediction may be determined based on at least one of CBF information of the corresponding block and the neighboring block. The coding parameter is not limited to the prediction mode of the block, and the various parameters described above that can be used for encoding / decoding may be used.

[0165] The color component block reconstruction step of step S810 will now be described. When predicting a second color component block using a first color component block, the first color component block may be reconstructed. For example, if the color space of an image is YCbCr and the ratio between color components is 4:4:4, 4:2:2, or 4:2:0, the sizes of the color component blocks may differ. Therefore, when predicting a second color component block using first color component blocks of different sizes, the first color component block may be reconstructed to make the sizes of the two blocks the same. In this case, the reconstructed block may include at least one of samples of the corresponding block of the first color component and samples of neighboring blocks. FIG. 9 is an example diagram illustrating the reconstruction of color component blocks.

[0166] In (a) of Figure 9, p1[x,y] may represent a sample at the (x,y) position of the first color component block, and in (b) of Figure 9, p1'[x,y] may represent a sample at the (x,y) position of the block reconstructed from the first color component block.

[0167] If the size of a first color component block is larger than the size of a second color component block, the first color component block may be down-sampled to reconstruct it into a block of the same size as the second color component block. The down-sampling may be performed by applying an N-tap filter to one or more samples (N is an integer greater than or equal to 1). In this case, at least one of Equations 1 to 5 below may be used. If multiple down-sampling methods are selectively used, the encoder may select one down-sampling method as a predetermined method. For example, the encoder may select a down-sampling method having the best effect. The selected down-sampling method may be coded and signaled to the decoder. The signaled information may be index information indicating the down-sampling method.

[0168] [Formula 1] p1'[x, y] = (p1[2x, 2y] + p1[2x, 2y+1] + 1) >> 1 [Formula 2] p1'[x, y] = (p1[2x+1, 2y] + p1[2x+1, 2y+1] + 1) >> 1 [Formula 3] p1'[x, y]= (p1[2x-1, 2y] + 2 x p1[2x, 2y] + p1[2x+1, 2y] + 2) >> 2 [Formula 4] p1'[x, y] = (p1[2x-1, 2y+1] + 2 * p1[2x, 2y+1] + p1[2x+1, 2y+1] + 2) >> 2 [Formula 5] p1'[x, y] = (p1[2x-1, 2y] + 2 * p1[2x, 2y] + p1[2x+1, 2y] + p1[2x-1, 2y+1] + 2 * p1[2x, 2y+1] + p1[2x+1, 2y+1] + 4) >> 3

[0169] The method of downsampling using two or more samples is not limited to the embodiments of Equations 1 to 5. For example, the two or more samples that can be used to calculate the downsampled value p1'[x,y] can be selected from p1[2x,2y] and its neighboring samples. The neighboring samples can be selected from p1[2x-1,2y-1], p[2x-1,2y], p1[2x-1,2y+1], p1[2x,2y-1], p1[2x,2y+1], p1[2x+1,2y-1], p1[2x+1,2y], and p1[2x+1,2y+1]. Downsampling can be performed by calculating an average or weighted average using two or more samples.

[0170] Alternatively, the downsampling may be performed by selecting a specific sample from one or more samples, using at least one of the following Equations 6 to 9: [Formula 6] p1'[x, y] = p1[2x, 2y] [Formula 7] p1'[x, y] = p1[2x, 2y+1] [Formula 8] p1'[x, y] = p1[2x+1, 2y] [Formula 9] p1'[x, y] = p1[2x+1, 2y+1]

[0171] If the size of the first color component block is smaller than the size of the second color component block, the first color component block can be up-sampled and reconstructed into a block of the same size as the second color component block, using the following Equation 10: [Formula 10] p1'[2x, 2y] = p1[x,y], p1'[2x+1, 2y] = (p1[x, y] + p1[x+1, y]+1)>>1, p1'[2x, 2y+1] = (p1[x, y] + p1[x, y+1]+1)>>1, p1'[2x+1, 2y+1] = (p1[x+1, y] + p1[x, y+1]+1) >> 1

[0172] In performing the reconstruction process, a filter may be applied to one or more samples, for example, one or more samples included in at least one of the first color component corresponding block, a neighboring block of the corresponding block, the second color component target block, and a neighboring block of the target block.

[0173] In the reference sample construction step, an indicator corresponding to a predetermined line among a plurality of reference sample lines may be signaled, and in the reconstruction process, reconstruction may be performed using the predetermined line corresponding to the signaled indicator.

[0174] In performing the reconstruction process, if at least one of the boundaries of the second-color component target block and the corresponding first-color component corresponding block corresponds to the boundary of a predetermined region, different reference samples may be selected for reconstruction. In this case, the number of reference sample lines on the upper side may be different from the number of reference sample lines on the left side. The predetermined region may be, for example, at least one of a picture, a slice, a tile, a CTU, and a CU.

[0175] For example, if the upper boundary of the first color component corresponding block corresponds to the boundary of the predetermined region, reconstruction may be performed using only the left reference sample without using the upper reference sample. If the left boundary of the first color component corresponding block corresponds to the boundary of the predetermined region, reconstruction may be performed using only the upper reference sample without using the left reference sample. Alternatively, N upper reference sample lines and M left reference sample lines may be used, where N may be smaller than M. For example, if the upper boundary corresponds to the boundary of the predetermined region, N may be 1, and if the left boundary corresponds to the boundary of the predetermined region, M may be 1.

[0176] Alternatively, reconstruction can be performed using N upper reference sample lines and / or M left reference sample lines of the first color component corresponding block, regardless of whether they fall on the boundary of the specified area.

[0177] FIG. 10 is a diagram illustrating an embodiment in which reconstruction is performed using multiple upper and / or left reference sample lines.

[0178] As shown in FIG. 10(a), reconstruction can be performed using four upper reference sample lines and four left reference sample lines.

[0179] For example, when the upper or left boundary of the first color component corresponding block corresponds to the boundary of the predetermined region, the number of upper and left reference sample lines used for reconstruction may be different from each other. For example, as shown in (b) to (d) of Figure 10, two upper reference sample lines and four left reference sample lines may be used, or one upper reference sample line and three left reference sample lines may be used, or one upper reference sample line and two left reference sample lines may be used.

[0180] The number of reference sample lines used is not limited to the above example, and N upper reference sample lines and M left reference sample lines may be used. N and M may be the same or different. If the upper and left boundaries all correspond to the boundaries of the predetermined area, N and M may be the same, for example, 1. Alternatively, under the same conditions, N may be set to be smaller than M. This is because more resources (memory) are required to store the upper reference sample lines than the left reference sample lines.

[0181] Alternatively, as shown in FIG. 10(e), reconstruction can be performed using one or more reference samples that do not deviate from the horizontal and vertical widths of the block corresponding to the first color component.

[0182] When performing the reconstruction, the reference sample reconstruction of the first color component corresponding block can be performed differently depending on at least one of the size, shape, and encoding parameters of at least one of the first color component corresponding block and its neighboring blocks, and the second color component target block and its neighboring blocks.

[0183] For example, among the first color component corresponding blocks or neighboring blocks, the reference samples can be reconstructed using samples of blocks in intra-picture coding mode, without using samples of blocks in inter-picture coding mode.

[0184] FIG. 11 is an exemplary diagram illustrating reference samples used for reconstruction depending on the intra prediction mode or coding parameters of a corresponding block. The reconstruction of the reference samples of the first color component block can be performed differently depending on the intra prediction mode of the first color component corresponding block. For example, if the intra prediction mode of the corresponding block is a non-directional mode such as DC mode or planar mode, or a directional mode using both an upper reference sample and a left reference sample, reconstruction can be performed using at least one of the reference samples located on the upper and left sides, as shown in (a) of FIG. 11. Alternatively, if the intra prediction mode of the corresponding block is a directional mode using an upper reference sample and an upper right reference sample, reconstruction can be performed using at least one of the reference samples located on the upper and upper right sides, as shown in (b) of FIG. 11. Alternatively, if the intra prediction mode of the corresponding block is a directional mode using left and lower left reference samples, reconstruction can be performed using at least one of the reference samples located on the left and lower left sides, as shown in (c) of FIG. 11.

[0185] Alternatively, the reference samples of the first color component corresponding block may be reconstructed differently depending on the quantization parameter of at least one of the first color component corresponding block and the neighboring blocks. For example, as shown in (d) of FIG. 11, the reconstructed reference samples may be used for the reference samples of the upper block, which has a relatively small quantization parameter value (QP) of the neighboring block.

[0186] Alternatively, if the shape of the second color component target block is rectangular, reconstruction can be performed using reference samples in the vicinity of the square first color component corresponding block.

[0187] Alternatively, if the second-color component target block is divided into two blocks (e.g., two 16x8 blocks) and the first-color component corresponding block is, for example, a 32x16 block, reconstruction can be performed using reference samples in the vicinity of the 32x32 block. In this case, the reference samples in the vicinity of the reconstructed 32x32 block can be shared as reference samples for the first-color component block corresponding to the second 16x8 block located below among the second-color component corresponding blocks.

[0188] The prediction parameter derivation step S820 will now be described. The prediction parameters may be derived using at least one of a reference sample of the reconstructed block corresponding to the first color component and a reference sample of the block to be predicted for the second color component. Hereinafter, the first color component and the first color component block may refer to the reconstructed first color component and the reconstructed first color component block.

[0189] 12 is a diagram illustrating an example of a reconstructed first-color component corresponding block when the second-color component prediction target block is 4x4, and there may be N reference sample lines.

[0190] As shown in FIG. 12(a), the prediction parameters can be derived using reference samples above and to the left of the reconstructed first color component corresponding block or the second color component prediction target block.

[0191] For example, the prediction parameters can be derived by adaptively using the reconstructed first-color component reference samples based on the intra-prediction mode of the first-color component block, and the second-color component reference samples can also be adaptively used based on the intra-prediction mode of the first-color component block.

[0192] If the intra-screen prediction mode of the first color component corresponding block is a non-directional mode such as DC mode or Planar mode, or a directional mode that uses both an upper reference sample and a left reference sample, the upper and left reference samples of the first color component corresponding block can be used, as shown in (a) of Figure 12.

[0193] When the intra-screen prediction mode of the first color component corresponding block is a directional mode using an upper reference sample, the upper reference sample of the first color component corresponding block can be used, as shown in (b) or (c) of Figure 12.

[0194] When the intra-screen prediction mode of the first color component corresponding block is a directional mode using a left reference sample, the left reference sample of the first color component corresponding block can be used, as shown in (d) or (e) of Figure 12.

[0195] Alternatively, when the intra prediction mode of the block corresponding to the first color component is a directional mode, the reference sample used for prediction for each mode can be used as the reference sample for the first color component. For example, when the intra prediction mode is a vertical mode, the reference sample shown in (b) of FIG. 12 can be used. When the intra prediction mode is a horizontal mode, the reference sample shown in (d) of FIG. 12 can be used. When the intra prediction mode is a right-up diagonal mode, the reference sample shown in (c) of FIG. 12 can be used. When the intra prediction mode is a left-down diagonal mode, the reference sample shown in (e) of FIG. 12 can be used. When the intra prediction mode is a mode between the vertical mode and the right-up diagonal mode, the reference sample shown in (f) of FIG. 12 can be used. When the intra prediction mode is a directional mode corresponding to a 45-degree diagonal, at least one of the reference samples on the upper right or lower left side can be used, as shown in (g) of FIG. 12. The reference samples used according to the intra prediction mode can be stored in the form of a look-up table.

[0196] The derivation of the prediction parameters may be performed adaptively using reference samples of the first or second color component depending on the size and / or shape of the first and / or second color component blocks.

[0197] For example, if the size of the second-color component target block is 64x64, 32, 16, or 8 reference samples from the upper or left reference samples of the first or second color component block can be used. As described above, if the size of the second-color component target block corresponds to a predetermined size, the reference samples of the first or second color component block can be adaptively used. The predetermined size is not limited to 64x64 and may be signaled via a bitstream or derived based on coding parameters of the current block and neighboring blocks.

[0198] Alternatively, if the shape of the second-color component target block is rectangular, the adjacent reference sample in the longer horizontal or vertical direction can be used. For example, if the shape of the target block is 32x8, the upper reference sample of the first or second-color component block can be used.

[0199] Alternatively, if the shape of the second color component target block is rectangular, a square block of reference samples can be used, for example, if the shape of the target block is 32x8, a reference sample located in the vicinity of a 32x32 block can be used.

[0200] The prediction parameters may be derived using the reference samples of the reconstructed first color component block and the reference samples of the reconstructed second color component block. The prediction parameters may be derived based on at least one of correlation, variation, average value, and distribution between the reference samples of the color components. In this case, at least one of least squares (LS) and least mean squares (LMS) may be used.

[0201] When the prediction parameters are derived using the LMS method, the prediction parameters may be at least one of a, b, alpha, and beta. The prediction parameters that minimize the error between the first color component reference sample and the second color component reference sample can be derived using Equation 11 below.

number

[0202] In the above formula 11, p2 n indicates the second color component reference sample, and p1' n may denote the reference sample of the reconstructed first color component, N may denote the horizontal or vertical number of reference samples used, and a and b may denote prediction parameters.

[0203] In this case, the relevance between the reference samples can be calculated using the following Equation 12.

number

[0204] In Equation 12, BitDepth may represent bit depth. p1' may represent a reconstructed first color component sample, and p2 may represent a second color component sample. Figure 13 is a diagram illustrating the first color component sample and the second color component sample.

[0205] When deriving prediction parameters, if there are regions where no reference samples exist, the prediction parameters can be derived using only the reference samples that exist.

[0206] One or more of the prediction parameters can be derived. For example, a first prediction parameter can be derived from a reference sample whose value used to derive the prediction parameters satisfies a specific condition. Also, a second prediction parameter can be derived from a reference sample whose value does not satisfy the specific condition. The specific condition can be met when the value of the reference sample is smaller than a statistical value (e.g., average value) of the reference sample.

[0207] According to another embodiment of the present invention, the prediction parameters are not derived using reference samples, and default parameters are used. The default parameters may be predefined in the encoder and decoder. For example, the prediction parameters a and b may be 1 and 0, respectively.

[0208] Alternatively, if prediction parameters are derived, the derived prediction parameters can be encoded / decoded.

[0209] When performing inter-color component prediction between Y, Cb, and Cr, prediction parameters for predicting Cb and Cr can be derived from Y. Alternatively, prediction parameters for predicting Cr can be derived from Cb. Alternatively, prediction parameters for predicting Cr are not derived, and prediction parameters derived from Y can be used to predict Cb.

[0210] The inter-color component prediction execution step of step S830 will be described below. As described above, once the prediction parameters are derived, inter-color component intra prediction can be performed using at least one of the derived prediction parameters.

[0211] For example, prediction for the second color component target block can be performed by applying the derived prediction parameters to the reconstructed signal of the first color component using the following Equation 13.

number

[0212] In Equation 13, p2[x,y] may be a predicted block of the second color component target block, and p1'[x,y] may be a first color component block or a reconstructed first color component block.

[0213] Alternatively, prediction for the second color component target block can be performed by applying the derived prediction parameters to the reconstructed residual signal of the first color component using Equation 14 below.

number

[0214] In Equation 14, p1'_residual may represent a residual signal of the first color component, and p2_pred may represent a signal predicted by performing intra prediction on the target block of the second color component.

[0215] If the derived prediction parameters are one or more, the one or more prediction parameters may be applied to the reconstructed samples of the first color component. For example, if the reconstructed samples of the first color component satisfy a specific condition, a first prediction parameter derived from a reference sample satisfying the specific condition may be applied to perform inter-color component intra prediction. Alternatively, if the reconstructed samples of the first color component do not satisfy the specific condition, a second prediction parameter derived from a reference sample not satisfying the specific condition may be applied to perform inter-color component intra prediction. The specific condition may be when a value of a reference sample is smaller than a statistical value (e.g., an average value) of the reference samples of the first color component.

[0216] The inter-color component prediction method may also be applied to an inter prediction mode. For example, when performing inter prediction on a current block, inter prediction may be performed on a first color component and inter-color component prediction may be performed on a second color component. For example, the first color component may be a luma component, and the second color component may be a chroma component. The inter-color component prediction may be adaptively performed according to an encoding parameter of the first color component. For example, whether to perform the inter-color component prediction may be determined based on CBF information of the first color component. The CBF information may be information indicating the presence or absence of a residual signal. That is, if the CBF of the first color component is 1, inter-color component prediction may be performed on the second color component. If the CBF of the first color component is 0, the inter-color component prediction may be performed without performing inter-color component prediction on the second color component. Alternatively, a flag indicating whether to perform the inter-color component prediction may be signaled.

[0217] These embodiments may be implemented in a similar manner in the encoder and decoder. The order in which these embodiments are applied may be different between the encoder and the decoder, or the order in which the embodiments are applied may be the same between the encoder and the decoder.

[0218] The above embodiment can be performed for each of the luminance and color difference signals, and the above embodiment can be performed for each of the luminance and color difference signals in the same manner.

[0219] The shape of the blocks to which the above-described embodiments of the present invention are applied can be square or non-square.

[0220] The above-described embodiments of the present invention may be applied depending on the size of at least one of a coding block, a prediction block, a transform block, a block, a current block, a coding unit, a prediction unit, a transform unit, a unit, and a current unit. The size here may be defined as a minimum size and / or a maximum size for applying these embodiments, or as a fixed size for applying the embodiments. Furthermore, these embodiments may be applied to a first size, such as the first embodiment, and to a second size, such as the second embodiment. That is, these embodiments may be applied in combination depending on the size. Furthermore, the above-described embodiments of the present invention may be applied only when the block size is equal to or greater than the minimum size and equal to or less than the maximum size. That is, these embodiments may be applied only when the block size falls within a certain range.

[0221] For example, the above embodiment is applicable only when the size of the current block is 8x8 or larger. For example, the above embodiment is applicable only when the size of the current block is 4x4. For example, the above embodiment is applicable only when the size of the current block is 16x16 or smaller. For example, the above embodiment is applicable only when the size of the current block is 16x16 or larger and 64x64 or smaller.

[0222] The above-described embodiments of the present invention can be applied according to a temporal layer. A separate identifier is signaled to identify a temporal layer to which the embodiments are applicable, and the embodiments can be applied to the temporal layer identified by the corresponding identifier. The identifier may be defined as the lowest and / or highest layer to which the embodiments are applicable, or may be defined as indicating a specific layer to which the embodiments are applied. Alternatively, a fixed temporal layer to which the embodiments are applied may be defined.

[0223] For example, the above embodiment is applicable only when the temporal layer of the current image is the lowest layer, for example, the above embodiment is applicable only when the temporal layer identifier of the current image is 1 or greater, or for example, the above embodiment is applicable only when the temporal layer of the current image is the highest layer.

[0224] The slice types to which the above-described embodiments of the present invention are applied are defined, and the embodiments of the present invention can be applied according to the slice types.

[0225] In the above-described embodiments, the methods are described based on flowcharts with a series of steps or units, but the present invention is not limited to the order of these steps, and some steps may occur in a different order or simultaneously with other steps than those described above. Furthermore, those skilled in the art will understand that the steps shown in the flowcharts are not exclusive, and other steps may be included, or one or more steps in the flowcharts may be deleted without affecting the scope of the present invention.

[0226] The above-described embodiments include examples of various aspects. It is not possible to describe all possible combinations for illustrating the various aspects, but a person skilled in the art will recognize that other combinations are possible. Therefore, it can be said that the present invention includes all various alterations, modifications, and variations that fall within the scope of the following claims.

[0227] The above-described embodiments of the present invention may be embodied in the form of program instructions that can be executed by various computer components and stored on a computer-readable storage medium. The computer-readable storage medium may include, alone or in combination, program instructions, data files, data structures, and the like. The program instructions stored on the computer-readable storage medium may be those specially designed and constructed for the present invention, or those well known and available to those skilled in the computer software arts. Examples of computer-readable storage media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include not only machine language code produced by a compiler, but also high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices may be configured to operate as one or more software modules to perform the processes of the present invention, or vice versa.

[0228] Although the present invention has been described above using specific details such as specific components, limited embodiments, and drawings, these are provided merely to facilitate a more general understanding of the present invention, and the present invention is not limited to these embodiments. Those skilled in the art will be able to make various modifications and variations from such descriptions.

[0229] Therefore, the concept of the present invention should not be limited to the above-described embodiments, but should be considered to fall within the scope of the concept of the present invention, including not only the scope of the claims described below, but also all modifications equivalent to or similar to the scope of the claims. [Industrial Applicability]

[0230] The present invention can be used to encode / decode images.

Claims

1. deriving an intra prediction mode for the current block; deriving reference samples for intra prediction for the current block; generating a predicted block by performing intra prediction on a current block based on the intra prediction mode and the reference sample; Including, In the step of deriving an intra prediction mode of the current block, a chrominance intra prediction mode of the current block, which is a chrominance block, is derived; a chrominance intra prediction mode of the current block is derived using a luma intra prediction mode of a corresponding luma block corresponding to a predetermined position of the current block; the predetermined position is equal to the center position of the current block; Image decoding method.

2. the center position of the current block is determined based on the width or height of the current block; The image decoding method according to claim 1 .

3. The predetermined position is derived to be equal to the center position of the current block based on whether the size of the current block falls within a specific range. The image decoding method according to claim 2 .

4. the information about the specific range is determined based on the block depth of the current block; The image decoding method according to claim 3 .

5. information about the particular range is signaled through a bitstream; The image decoding method according to claim 3 .

6. deriving an intra prediction mode for the current block; deriving reference samples for intra prediction of the current block; generating a predicted block by performing intra prediction on the current block based on the intra prediction mode and the reference sample; Including, In the step of deriving the intra prediction mode of the current block, a chrominance intra prediction mode of the current block is derived, the current block being a chrominance block; a chrominance intra prediction mode of the current block is derived using a luma intra prediction mode of a corresponding luma block corresponding to a predetermined position of the current block; the predetermined position is equal to the center position of the current block; Image encoding method.

7. the center position of the current block is determined based on the width or height of the current block; The image encoding method according to claim 6.

8. The predetermined position is derived to be equal to the center position of the current block based on whether the size of the current block falls within a specific range. The image encoding method according to claim 7 .

9. 1. A method of transmitting image data, comprising obtaining a bitstream of coded image information generated by an image coding method, the method comprising: The image encoding method includes: deriving an intra prediction mode for the current block; deriving reference samples for intra prediction of the current block; generating a predicted block by performing intra prediction on the current block based on the intra prediction mode and the reference sample; transmitting image data including the bitstream; Including, When deriving an intra prediction mode of the current block, a chrominance intra prediction mode of the current block, which is a chrominance block, is derived; a chrominance intra prediction mode of the current block is derived using a luma intra prediction mode of a corresponding luma block corresponding to a predetermined position of the current block; the predetermined position is equal to the center position of the current block; Transmission method.

Citation Information

Patent Citations

  • Method and apparatus for processing video data

    US20110255591A1

  • Method and Apparatus of Improved Intra Prediction Mode Coding

    US20120177112A1

  • Using LUMA information for chroma prediction with separate LUMA-chroma framework in video coding

    WO2017165391A1

  • Intra video coding using a decoupled tree structure

    WO2018035127A1