Image decoding method and apparatus relying on intra prediction in image coding system
By generating reference samples from neighboring blocks and performing intra prediction, the method improves video coding efficiency, addressing the high data volume challenge in high-resolution images and reducing transmission and storage costs.
Patent Information
- Application Number
- JP2025166504
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2016-10-11
- Filing Date
- 2025-10-02
- Publication Date
- 2025-12-05
AI Technical Summary
The increasing demand for high-resolution, high-quality images leads to higher transmission and storage costs due to increased data volume, necessitating improved video coding efficiency.
A method and apparatus for video decoding that generates reference samples based on a plurality of neighboring samples of a current block and performs intra prediction using these samples to improve prediction accuracy.
Enhances coding efficiency by improving prediction accuracy for current blocks through the use of derived reference samples, thereby optimizing video transmission and storage costs.
Smart Images

Figure 2025178481000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to video coding technology, and more particularly to a method and apparatus for video decoding using intra prediction in a video coding system. [Background technology]
[0002] Recently, the demand for high-resolution, high-quality images such as HD (High Definition) images and UHD (Ultra High Definition) images has been increasing in various fields. As the resolution and quality of image data increases, the amount of information or bits to be transmitted increases relatively compared to conventional image data. Therefore, when transmitting image data using a medium such as a conventional wired or wireless broadband line or storing image data using a conventional storage medium, transmission costs and storage costs increase.
[0003] This necessitates the development of highly efficient video compression techniques for effectively transmitting, storing, and playing back high-resolution, high-quality video information. Summary of the Invention [Problem to be solved by the invention]
[0004] SUMMARY OF THE INVENTION A technical object of the present invention is to provide a method and apparatus for improving video coding efficiency.
[0005] Another technical object of the present invention is to provide a method and apparatus for generating a reference sample based on a plurality of neighboring samples of a current block and performing intra prediction based on the reference sample. [Means for solving the problem]
[0006] According to an embodiment of the present invention, there is provided an image decoding method performed by a decoding device, the method including: deriving an intra prediction mode for a current block; deriving a plurality of rows of upper peripheral samples and a plurality of columns of left peripheral samples for the current block; deriving a row of upper reference samples based on the upper peripheral samples; deriving a column of left reference samples based on the left peripheral samples; and generating a predicted sample for the current block using at least one of the upper reference samples and the left reference sample according to the intra prediction mode.
[0007] According to another embodiment of the present invention, there is provided a decoding device for decoding an image, including: an entropy decoding unit that obtains prediction information for a current block; and a prediction unit that derives an intra prediction mode for the current block, derives a plurality of rows of upper peripheral samples and a plurality of columns of left peripheral samples for the current block, derives a row of upper reference samples based on the upper peripheral samples, derives a column of left reference samples based on the left peripheral samples, and generates predicted samples for the current block using at least one of the upper reference samples and the left reference samples according to the intra prediction mode.
[0008] According to yet another embodiment of the present invention, there is provided a video encoding method performed by an encoding apparatus, the method including: determining an intra prediction mode for a current block; deriving a plurality of rows of upper peripheral samples and a plurality of columns of left peripheral samples for the current block; deriving a row of upper reference samples based on the upper peripheral samples; deriving a column of left reference samples based on the left peripheral samples; generating prediction samples for the current block using at least one of the upper reference samples and the left reference samples according to the intra prediction mode; and generating, encoding, and outputting prediction information for the current block.
[0009] According to yet another embodiment of the present invention, there is provided a video encoding apparatus, including: a prediction unit that determines an intra prediction mode for a current block, derives a plurality of rows of upper peripheral samples and a plurality of columns of left peripheral samples for the current block, derives a row of upper reference samples based on the upper peripheral samples, derives a column of left reference samples based on the left peripheral samples, and generates prediction samples for the current block using at least one of the upper reference samples and the left reference samples according to the intra prediction mode, and an entropy encoding unit that generates, encodes, and outputs prediction information for the current block. [Effects of the Invention]
[0010] According to the present invention, a reference sample for a current block can be derived based on a plurality of surrounding samples, and intra prediction can be performed based on the reference sample to improve prediction accuracy for the current block, thereby improving overall coding efficiency.
[0011] According to the present invention, a reference sample can be derived based on a plurality of surrounding samples located in the prediction direction of an intra prediction mode for a current block, and intra prediction can be performed based on the reference sample to improve prediction accuracy for the current block, thereby improving overall coding efficiency.
[0012] According to the present invention, weighted values for a plurality of surrounding samples can be derived, and reference samples can be derived based on the weighted values and the surrounding samples. Intra prediction can be performed based on the reference samples to improve prediction accuracy for the current block, thereby improving overall coding efficiency. [Brief explanation of the drawings]
[0013] [Figure 1] 1 is a diagram illustrating a configuration of a video encoding device to which the present invention can be applied. [Figure 2] 1 is a diagram illustrating a configuration of a video decoding device to which the present invention can be applied. [Figure 3] 10 illustrates an example of left and top surrounding samples used for intra prediction of a current block. [Figure 4] An example of deriving a reference sample based on multiple neighboring samples for a current block will be described. [Figure 5] An example of deriving a reference sample based on multiple neighboring samples for a current block will be described. [Figure 6] An example of generating upper reference samples for a current block based on upper surrounding samples including additionally generated upper surrounding samples will be described below. [Figure 7] 10 shows an example of deriving surrounding samples located at fractional sample positions. [Figure 8] An example of generating upper reference samples for a current block based on upper surrounding samples including additionally generated upper surrounding samples will be described below. [Figure 9] An example of classifying intra prediction modes according to prediction directions will be described below. [Figure 10] An example of generating upper reference samples for a current block based on upper surrounding samples including additionally generated upper surrounding samples will be described below. [Figure 11] 1 illustrates a video encoding method by an encoding device according to the present invention; [Figure 12] 2 illustrates a video decoding method by a decoding device according to the present invention; DETAILED DESCRIPTION OF THE INVENTION
[0014] The present invention is susceptible to various modifications and embodiments, and specific embodiments will be illustrated in the drawings and described in detail. However, this is not intended to limit the present invention to the specific embodiments. The terms used in this specification are used merely to describe specific embodiments and are not intended to limit the technical scope of the present invention. The singular expressions include the plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprise" or "have" are intended to specify the presence of a feature, number, step, operation, component, part, or combination thereof described in the specification, and should not be understood as precluding the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
[0015] Meanwhile, each component in the drawings described herein is illustrated independently for the convenience of explaining the different characteristic functions of the video encoding / decoding device, and does not mean that each component is implemented by separate hardware or software. For example, two or more components may be combined to form a single component, or a single component may be divided into multiple components. Embodiments in which each component is integrated and / or separated are also within the scope of the present invention as long as they do not deviate from the essence of the present invention.
[0016] Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings. In the following, the same reference numerals are used to refer to the same components in the drawings, and redundant description of the same components will be omitted.
[0017] In this specification, a picture generally refers to a unit representing one image in a specific time period, and a slice is a unit constituting a part of a picture in coding. One picture may be composed of multiple slices, and pictures and slices may be used interchangeably as needed.
[0018] A pixel or pel is the smallest unit that makes up a picture (or image). The term 'sample' can also be used to indicate the value of a specific pixel. A sample can generally indicate the value of a pixel, or it can indicate only the pixel value of the luma component, or only the pixel value of the chroma component.
[0019] A unit refers to a basic unit of image processing. A unit may include at least one of a specific region of a picture and information related to the region. The term unit may be used interchangeably with terms such as block or area. In general, an M×N block may refer to a set of samples or transform coefficients consisting of M columns and N rows.
[0020] FIG. 1 is a diagram for explaining the schematic configuration of a video encoding device to which the present invention can be applied.
[0021] 1, the video encoding apparatus 100 may include a picture partitioning unit 105, a prediction unit 110, a subtraction unit 115, a transform unit 120, a quantization unit 125, a realignment unit 130, an entropy encoding unit 135, a residual processing unit 140, an addition unit 150, a filter unit 155, and a memory 160. The residual processing unit 140 may include an inverse quantization unit 141 and an inverse transform unit 142.
[0022] The picture division unit 105 can divide an input picture into at least one processing unit.
[0023] For example, the processing unit may be referred to as a coding unit (CU). In this case, the coding units may be recursively divided from the largest coding unit (LCU) according to a quad-tree binary-tree (QTBT) structure. For example, one coding unit may be divided into multiple coding units of deeper depths based on a quad-tree structure and / or a binary tree structure. In this case, for example, the quad-tree structure may be applied first, followed by the binary tree structure. Alternatively, the binary tree structure may be applied first. The coding procedure according to the present invention may be performed based on the final coding unit that is not further divided. In this case, based on coding efficiency according to image characteristics, the largest coding unit may be used directly as the final coding unit, or the coding unit may be recursively divided into coding units of lower depths as needed, and the coding unit with the optimal size may be used as the final coding unit. Here, the coding procedure may include prediction, transformation, restoration, and other procedures, which will be described later.
[0024] As another example, the processing unit may include a coding unit (CU), a prediction unit (PU), or a transform unit (TU). The coding units may be split into coding units of deeper depths starting from the largest coding unit (LCU) along a quadtree structure. In this case, based on coding efficiency according to image characteristics, the largest coding unit may be used directly as the final coding unit, or the coding unit may be recursively split into coding units of lower depths as needed, and the coding unit with the optimal size may be used as the final coding unit. When a smallest coding unit (SCU) is set, the coding unit cannot be split into coding units smaller than the smallest coding unit. Here, the final coding unit refers to a coding unit that serves as a base for partitioning or dividing into prediction units or transform units. The prediction unit is a unit partitioned from the coding unit and may be a unit of sample prediction. In this case, the prediction unit may be divided into sub-blocks. The transform unit may be divided from the coding unit along a quadtree structure and may be a unit that derives transform coefficients and / or a unit that derives a residual signal from the transform coefficients. Hereinafter, the coding unit may be referred to as a coding block (CB), the prediction unit may be referred to as a prediction block (PB), and the transform unit may be referred to as a transform block (TB). A prediction block or a prediction unit may refer to a specific region in a block form within a picture and may include an array of prediction samples.A transform block or transform unit may also refer to a specific region in block form within a picture, and may include an array of transform coefficients or residual samples.
[0025] The prediction unit 110 performs prediction on a current block to be processed (hereinafter, referred to as a current block) and generates a prediction block including prediction samples for the current block. The prediction unit 110 performs prediction on a coding block, a transform block, or a prediction block.
[0026] The prediction unit 110 may determine whether intra prediction or inter prediction is applied to the current block. For example, the prediction unit 110 may determine whether intra prediction or inter prediction is applied to the current block on a CU basis.
[0027] In the case of intra prediction, the prediction unit 110 may derive a prediction sample for a current block based on a reference sample outside the current block within a picture to which the current block belongs (hereinafter, the current picture). In this case, the prediction unit 110 may (i) derive a prediction sample based on an average or interpolation of neighboring reference samples of the current block, or (ii) derive the prediction sample based on a reference sample located in a specific (prediction) direction relative to the prediction sample among the neighboring reference samples of the current block. (i) may be referred to as a non-directional mode or a non-angular mode, and (ii) may be referred to as a directional mode or an angular mode. Prediction modes in intra prediction may include, for example, 33 directional prediction modes and at least two or more non-directional modes. Non-directional modes may include a DC prediction mode and a planar mode. The prediction unit 110 may also determine a prediction mode to be applied to the current block using prediction modes applied to neighboring blocks.
[0028] In the case of inter prediction, the predictor 110 may derive a predicted sample for the current block based on a sample identified by a motion vector on a reference picture. The predictor 110 may derive a predicted sample for the current block by applying any one of a skip mode, a merge mode, and a motion vector prediction (MVP) mode. In the skip mode and the merge mode, the predictor 110 may use motion information of a neighboring block as motion information of the current block. In the skip mode, unlike the merge mode, the difference (residual) between the predicted sample and the original sample is not transmitted. In the MVP mode, the motion vector of the current block may be derived by using the motion vector of the neighboring block as a motion vector predictor.
[0029] In the case of inter prediction, neighboring blocks can include spatial neighboring blocks existing in the current picture and temporal neighboring blocks existing in a reference picture. The reference picture including the temporal neighboring blocks can also be called a collocated picture (colPic). Motion information can include a motion vector and a reference picture index. Information such as prediction mode information and motion information can be (entropy) encoded and output in the form of a bitstream.
[0030] When motion information of temporally neighboring blocks is used in skip mode and merge mode, the top picture on the reference picture list may be used as the reference picture. Reference pictures included in the reference picture list may be sorted based on the difference in POC (Picture Order Count) between the current picture and the corresponding reference picture. POC corresponds to the display order of pictures and can be distinguished from the coding order.
[0031] The subtractor 115 generates residual samples, which are the difference between the original samples and the predicted samples. When skip mode is applied, as described above, residual samples may not be generated.
[0032] The transform unit 120 transforms residual samples in units of transform blocks to generate transform coefficients. The transform unit 120 may perform the transform according to the size of the corresponding transform block and a prediction mode applied to a coding block or a prediction block spatially overlapping with the corresponding transform block. For example, if intra prediction is applied to the coding block or the prediction block overlapping with the transform block and the transform block is a 4x4 residual array, the residual samples may be transformed using a Discrete Sine Transform (DST) transform kernel; otherwise, the residual samples may be transformed using a Discrete Cosine Transform (DCT) transform kernel.
[0033] The quantization unit 125 can quantize the transform coefficients to generate quantized transform coefficients.
[0034] The rearrangement unit 130 rearranges the quantized transform coefficients. The rearrangement unit 130 can rearrange the quantized transform coefficients in block form into one-dimensional vector form through a coefficient scanning method. Here, the rearrangement unit 130 has been described as a separate component, but the rearrangement unit 130 may be part of the quantization unit 125.
[0035] The entropy encoding unit 135 may perform entropy encoding on the quantized transform coefficients. The entropy encoding may include encoding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), context-adaptive binary arithmetic coding (CABAC), etc. The entropy encoding unit 135 may also encode information required for video reconstruction (e.g., syntax element values, etc.) together with or separately from the quantized transform coefficients. The entropy encoded information may be transmitted or stored in the form of a bitstream in units of network abstraction layer (NAL) units.
[0036] The inverse quantization unit 141 inversely quantizes the values quantized by the quantization unit 125 (quantized transformation coefficients), and the inverse transform unit 142 inversely transforms the values inversely quantized by the inverse quantization unit 141 to generate residual samples.
[0037] The adder 150 reconstructs a picture by combining residual samples and prediction samples. The residual samples and prediction samples may be added in block units to generate reconstructed blocks. Although the adder 150 has been described as a separate component, it may be included as part of the prediction unit 110. Meanwhile, the adder 150 may also be referred to as a reconstruction unit or a reconstructed block generation unit.
[0038] The filter unit 155 may apply a deblocking filter and / or a sample adaptive offset to the reconstructed picture. Through the deblocking filtering and / or the sample adaptive offset, artifacts at block boundaries in the reconstructed picture and distortions in the quantization process may be corrected. The sample adaptive offset may be applied in units of samples and may be applied after the deblocking filtering process is completed. The filter unit 155 may also apply an adaptive loop filter (ALF) to the reconstructed picture. The ALF may be applied to the reconstructed picture after the deblocking filter and / or the sample adaptive offset have been applied.
[0039] The memory 160 may store a reconstructed picture (a decoded picture) or information necessary for encoding / decoding. Here, the reconstructed picture may be a reconstructed picture that has undergone a filtering procedure by the filter unit 155. The stored reconstructed picture may be used as a reference picture for (inter) prediction of another picture. For example, the memory 160 may store (reference) pictures used for inter prediction. In this case, the pictures used for inter prediction may be specified by a reference picture set or a reference picture list.
[0040] FIG. 2 is a diagram illustrating the configuration of a video decoding device to which the present invention can be applied.
[0041] 2, the video decoding device 200 may include an entropy decoding unit 210, a residual processing unit 220, a prediction unit 230, an addition unit 240, a filter unit 250, and a memory 260. Here, the residual processing unit 220 may include a realignment unit 221, an inverse quantization unit 222, and an inverse transform unit 223.
[0042] When a bitstream containing video information is input, the video decoding device 200 can restore the video in accordance with the process by which the video information was processed in the video encoding device.
[0043] For example, the video decoding device 200 may perform video decoding using a processing unit applied in a video encoding device. Accordingly, a processing unit block for video decoding may be a coding unit, for example, or a coding unit, a prediction unit, or a transform unit, for example. The coding unit may be divided from the largest coding unit according to a quadtree structure and / or a binary tree structure.
[0044] A prediction unit and a transform unit may also be used in some cases. In this case, a prediction block may be a block derived or partitioned from a coding unit and may be a unit of sample prediction. In this case, the prediction unit may be divided into sub-blocks. A transform unit may be divided from a coding unit according to a quadtree structure and may be a unit that derives transform coefficients or a unit that derives a residual signal from the transform coefficients.
[0045] The entropy decoding unit 210 may parse the bitstream and output information necessary for video or picture reconstruction. For example, the entropy decoding unit 210 may decode information in the bitstream based on a coding method such as Exponential-Golomb coding, CAVLC, or CABAC, and output values of syntax elements necessary for video reconstruction and quantized values of transform coefficients for residuals.
[0046] More specifically, the CABAC entropy decoding method receives bins corresponding to each syntax element from a bitstream, determines a context model using information on the syntax element to be decoded and decode information on the surrounding and target blocks or information on symbols / bins decoded in previous steps, predicts the occurrence probability of the bins according to the determined context model, and performs arithmetic decoding of the bins to generate symbols corresponding to the values of each syntax element. In this case, the CABAC entropy decoding method can update the context model using information on the decoded symbols / bins for the context model of the next symbol / bin after determining the context model.
[0047] Among the information decoded in the entropy decoding unit 210, information regarding prediction is provided to the prediction unit 230, and the residual values entropy decoded in the entropy decoding unit 210, i.e., the quantized transform coefficients, can be input to the reordering unit 221.
[0048] The rearrangement unit 221 can rearrange the quantized transform coefficients in a two-dimensional block format. The rearrangement unit 221 can perform rearrangement in accordance with coefficient scanning performed in the encoding device. Although the rearrangement unit 221 has been described as a separate component, the rearrangement unit 221 can be a part of the inverse quantization unit 222.
[0049] The inverse quantization unit 222 may inversely quantize the quantized transform coefficients based on the (inverse) quantization parameter and output the transform coefficients. In this case, information for deriving the quantization parameter may be signaled from the encoding apparatus.
[0050] The inverse transform unit 223 can inversely transform the transform coefficients to derive residual samples.
[0051] The prediction unit 230 may perform prediction on a current block and generate a prediction block including prediction samples for the current block. The prediction unit 230 performs prediction on a coding block, a transform block, or a prediction block.
[0052] The prediction unit 230 may determine whether to apply intra prediction or inter prediction. In this case, the unit for determining whether to apply intra prediction or inter prediction differs from the unit for generating predicted samples. In addition, the unit for generating predicted samples differs between inter prediction and intra prediction. For example, whether to apply inter prediction or intra prediction may be determined on a CU basis. Furthermore, for example, in inter prediction, a prediction mode may be determined on a PU basis to generate predicted samples, and in intra prediction, a prediction mode may be determined on a PU basis to generate predicted samples on a TU basis.
[0053] In the case of intra prediction, the prediction unit 230 may derive a prediction sample for the current block based on neighboring reference samples in the current picture. The prediction unit 230 may derive a prediction sample for the current block by applying a directional mode or a non-directional mode based on the neighboring reference samples of the current block. In this case, the prediction mode to be applied to the current block may be determined using the intra prediction mode of the neighboring block.
[0054] In the case of inter prediction, the predictor 230 may derive a prediction sample for the current block based on a sample identified on the reference picture by a motion vector on the reference picture. The predictor 230 may derive a prediction sample for the current block by applying any one of a skip mode, a merge mode, and an MVP mode. In this case, motion information required for inter prediction of the current block provided from the video encoding device, such as information on a motion vector, a reference picture index, etc., may be acquired or induced based on the information on the prediction.
[0055] In the skip mode and merge mode, motion information of neighboring blocks can be used as motion information of the current block, and the neighboring blocks can include spatial and temporal neighboring blocks.
[0056] The prediction unit 230 constructs a merge candidate list using motion information of available neighboring blocks and can use information indicated by a merge index on the merge candidate list as the motion vector of the current block. The merge index can be signaled from the encoding device. The motion information can include a motion vector and a reference picture. When motion information of temporal neighboring blocks is used in skip mode and merge mode, the top picture on the reference picture list can be used as the reference picture.
[0057] In skip mode, unlike merge mode, the difference (residual) between the predicted sample and the original sample is not transmitted.
[0058] In the MVP mode, the motion vector of the current block can be derived using the motion vectors of neighboring blocks as a motion vector predictor, where the neighboring blocks can include spatial and temporal neighboring blocks.
[0059] For example, when a merge mode is applied, a merge candidate list may be generated using the motion vectors of the reconstructed spatial neighboring blocks and / or the motion vector corresponding to the Col block, which is a temporal neighboring block. In the merge mode, the motion vector of a candidate block selected in the merge candidate list is used as the motion vector of the current block. The prediction information may include a merge index indicating a candidate block having an optimal motion vector selected from the candidate blocks included in the merge candidate list. In this case, the prediction unit 230 may derive the motion vector of the current block using the merge index.
[0060] As another example, when a Motion Vector Prediction (MVP) mode is applied, a motion vector predictor candidate list may be generated using the motion vectors of the reconstructed spatially surrounding blocks and / or the motion vector corresponding to the Col block, which is a temporally surrounding block. That is, the motion vectors of the reconstructed spatially surrounding blocks and / or the motion vector corresponding to the Col block, which is a temporally surrounding block, may be used as motion vector candidates. The prediction information may include a predicted motion vector index indicating an optimal motion vector selected from the motion vector candidates included in the list. In this case, the prediction unit 230 may select a predicted motion vector for the current block from the motion vector candidates included in the motion vector candidate list using the motion vector index. A prediction unit of the encoding device may obtain a motion vector difference (MVD) between the motion vector of the current block and the motion vector predictor, encode it, and output it in the form of a bitstream. That is, the MVD may be obtained by subtracting the motion vector predictor from the motion vector of the current block. In this case, the predictor 230 may obtain a motion vector difference included in the prediction information and derive the motion vector of the current block by adding the motion vector difference and the motion vector prediction. The predictor may also obtain or derive a reference picture index indicating a reference picture from the prediction information.
[0061] The adder 240 may reconstruct a current block or a current picture by adding residual samples and predicted samples. The adder 240 may also reconstruct a current picture by adding residual samples and predicted samples on a block-by-block basis. When skip mode is applied, residuals are not transmitted, so predicted samples may become reconstructed samples. Although the adder 240 has been described as a separate component, the adder 240 may be part of the prediction unit 230. Meanwhile, the adder 240 may also be referred to as a reconstruction unit or a reconstructed block generation unit.
[0062] The filter unit 250 may apply deblocking filtering, sample adaptive offset, and / or ALF to the reconstructed picture. In this case, the sample adaptive offset may be applied in sample units or may be applied after deblocking filtering. The ALF may be applied after deblocking filtering and / or sample adaptive offset.
[0063] The memory 260 may store a reconstructed picture (decoded picture) or information required for decoding. Here, a reconstructed picture may be a reconstructed picture that has undergone a filtering procedure by the filter unit 250. For example, the memory 260 may store pictures used for inter prediction. In this case, the pictures used for inter prediction may be specified by a reference picture set or a reference picture list. The reconstructed picture may be used as a reference picture for another picture. The memory 260 may also output the reconstructed pictures in an output order.
[0064] As described above, when intra prediction is performed on a current block, the intra prediction is performed based on surrounding samples that have already been encoded / decoded at the time of decoding the current block. That is, the predicted samples of the current block may be reconstructed using the left and upper surrounding samples of the current block that have already been reconstructed. Hereinafter, the left and upper surrounding samples are shown in FIG. 3.
[0065] FIG. 3 illustrates the left and upper peripheral samples used in intra prediction of the current block. When intra prediction is performed on the current block, an intra prediction mode for the current block can be derived, and a predicted sample for the current block can be generated using at least one of the left and upper peripheral samples according to the intra prediction mode. Here, the intra prediction modes can include, for example, two non-directional intra prediction modes and 33 directional intra prediction modes. Here, the intra prediction modes numbered 0 to 1 are the non-directional intra prediction modes, the intra prediction mode numbered 0 indicates an intra planar mode, and the intra prediction mode numbered 1 indicates an intra DC mode. The remaining intra prediction modes numbered 2 to 34 are directional intra prediction modes, each having a prediction direction. The directional intra prediction modes may be referred to as intra angular modes. A predicted sample value of a current sample of a current block can be derived based on the intra prediction mode for the current block.
[0066] For example, when the intra prediction mode for the current block is one of the directional intra modes, a value of a neighboring sample located in a prediction direction of the intra prediction mode for the current block based on the current sample in the current block may be derived as a predicted sample value of the current sample. If a neighboring sample in integer sample units is not located in the prediction direction based on the current sample, a sample in fractional sample units may be derived at a corresponding prediction direction position based on interpolation of neighboring samples in integer sample units located around the corresponding prediction direction, and the sample value in fractional sample units may be derived as a predicted sample value of the current sample.
[0067] Meanwhile, when a predicted sample for the current block is generated using at least one of the left and upper neighboring samples as described above, the prediction accuracy may decrease as the distance between the predicted sample and the neighboring samples increases. Furthermore, since the predicted sample is generated by referring to only neighboring samples in one row or column, if samples adjacent to the current block contain noise information, the prediction accuracy for the current block may decrease significantly, resulting in a decrease in overall coding efficiency. Therefore, in order to improve the prediction accuracy of intra prediction and improve coding efficiency, the present invention proposes a method of generating reference samples based on multiple left and upper neighboring samples, i.e., multiple columns of left neighboring samples and multiple rows of upper neighboring samples, and performing intra prediction based on the generated reference samples. Meanwhile, in the following embodiment, a method of generating one left reference sample (or upper reference sample) based on four left neighboring samples (or upper neighboring samples) will be described, but the left reference sample (or upper reference sample) may be generated using any N (N>1) left neighboring samples (or upper neighboring samples).
[0068] 4 is a diagram illustrating an example of deriving reference samples based on a plurality of neighboring samples for a current block. Referring to FIG. 4, when the size of the current block is N×N, 2N upper reference samples may be generated based on upper neighboring samples within a 2N×4 area, and 2N left reference samples may be generated based on left neighboring samples within a 4×2N area. Specifically, one upper reference sample located in a specific column may be generated based on four upper neighboring samples located in the specific column among the upper neighboring samples, and one left reference sample located in a specific row may be generated based on four left neighboring samples located in the specific row among the left neighboring samples. For example, an average value of sample values of four upper neighboring samples located in an x-column among the upper neighboring samples may be derived as the sample value of the upper reference sample in the x-column. Also, an average value of sample values of four left neighboring samples located in a y-column among the left neighboring samples may be derived as the sample value of the left reference sample in the y-column.
[0069] Meanwhile, as described above, the same weights {1 / 4, 1 / 4, 1 / 4, 1 / 4} may be assigned to the neighboring samples used to generate the reference samples. That is, the weights for the neighboring samples for generating the reference samples may be the same, 1 / 4, but prediction accuracy may decrease in proportion to the distance between the current block to be encoded and the neighboring samples. Therefore, when the four upper neighboring samples are represented from bottom to top as the upper neighboring sample of the first row, the upper neighboring sample of the second row, the upper neighboring sample of the third row, and the upper neighboring sample of the fourth row, the weight of the upper neighboring sample of the first row may be assigned as 1 / 2, the weight of the upper neighboring sample of the second row may be assigned as 1 / 4, and the weight of the upper neighboring sample of the third row and the upper neighboring sample of the fourth row may be assigned as 1 / 8. As a result, among the upper neighboring samples, samples closer to the current block are used with a greater weight to generate the upper reference sample. In addition, when the four left peripheral samples are represented from right to left as the left peripheral sample of the first column, the left peripheral sample of the second column, the left peripheral sample of the third column, and the left peripheral sample of the fourth column, the weighted value of the left peripheral sample of the first column can be assigned as 1 / 2, the weighted value of the left peripheral sample of the second column as 1 / 4, and the weighted values of the left peripheral sample of the third column and the left peripheral sample of the fourth column as 1 / 8.
[0070] As another example, the weights of the upper peripheral samples in the first row and the upper peripheral samples in the second row may be assigned as 2 / 5, and the weights of the upper peripheral samples in the third row and the upper peripheral samples in the fourth row may be assigned as 1 / 10. Furthermore, the weights of the left peripheral samples in the first column may be assigned as 1 / 2, the weights of the left peripheral samples in the second column may be assigned as 1 / 4, and the weights of the left peripheral samples in the third column and the left peripheral samples in the fourth column may be assigned as 1 / 8.
[0071] In addition, there may be various methods for assigning weights to each neighboring sample other than the above examples. For example, the weights of each neighboring sample may be assigned according to the distance between each neighboring sample and the current block, the size of the current block, or the quantization parameter (QP) of the current block. Alternatively, the weights of each neighboring sample may be assigned based on various criteria. The top reference sample may be derived based on the weights assigned to the top neighboring sample and the upper neighboring sample, respectively. The left reference sample may be derived based on the weights assigned to the left neighboring sample and the left neighboring sample, respectively. Furthermore, the top reference sample or the left reference sample may be derived based on the following equation:
[0072]
number
[0073] Here, D' denotes the upper reference sample (or left reference sample), w1 denotes the weighted value of the upper peripheral sample of the first row (or the left peripheral sample of the first column), w2 denotes the weighted value of the upper peripheral sample of the second row (or the left peripheral sample of the second column), w3 denotes the weighted value of the upper peripheral sample of the third row (or the left peripheral sample of the third column), and w4 denotes the weighted value of the upper peripheral sample of the fourth row (or the left peripheral sample of the fourth column). Also, D denotes the upper peripheral sample of the first row (or the left peripheral sample of the first column), C denotes the upper peripheral sample of the second row (or the left peripheral sample of the second column), B denotes the upper peripheral sample of the third row (or the left peripheral sample of the third column), and A denotes the upper peripheral sample of the fourth row (or the left peripheral sample of the fourth column).
[0074] Meanwhile, as described above, the reference sample of the current block can be derived based on 2N surrounding samples of multiple columns or rows, but the reference sample can be derived based on more than 2N surrounding samples of multiple columns or rows depending on the prediction direction of the current block.
[0075] 5 is a diagram illustrating an example of deriving a reference sample based on a plurality of neighboring samples for a current block, where an intra prediction mode of the current block may be derived, and a prediction direction according to the intra prediction mode may be derived. Reference samples of the current block may be generated based on neighboring samples located in the prediction direction. In this case, as shown in FIG. 5, the prediction direction of the current block is from the upper right to the lower left, and upper neighboring samples located in an additional area 510 shown in FIG. 5 may be required for predicting the current block. That is, L upper neighboring samples along with 2N upper neighboring samples located in the first row may be required for predicting the current block. Also, M upper neighboring samples along with 2N upper neighboring samples located in the fourth row may be required for predicting the current block. Therefore, neighboring samples located in the additional area 510 may be generated, and reference samples of the current block may be generated based on neighboring samples located in the prediction direction of the current block among the neighboring samples including the additional area 510. The samples located in the additional area 510 may be generated by padding sample values of the rightmost upper neighboring samples among the upper neighboring samples of each row. That is, the sample values of the samples located in the additional area 510 may be derived identically to the sample values of the rightmost upper neighboring samples among the upper neighboring samples of each row. Meanwhile, although an example of generating samples located in the additional region for the left peripheral samples is not shown, the samples located in the additional region for the left peripheral samples may be generated similarly to the example of generating samples located in the additional region 510. Specifically, the samples located in the additional region for the left peripheral samples may be generated by padding the sample value of the bottom left peripheral sample among the left peripheral samples in each column.
[0076] Meanwhile, when upper neighboring samples including the upper neighboring samples of the additional region 510 are derived, upper reference samples of the current block can be generated based on the upper neighboring samples. An embodiment of generating the upper reference samples is shown below in the drawings.
[0077] 6 is a diagram illustrating an example of generating upper reference samples for the current block based on upper neighboring samples including additionally generated upper neighboring samples. (b) of FIG. 6 illustrates the positions of newly generated upper reference samples. In this case, the upper neighboring samples at positions corresponding to the prediction direction of the current block at the positions of the upper reference samples 610 are used to generate the upper reference samples 610. For example, as shown in (a) of FIG. 6, upper neighboring samples A, B, C, and D, which are the upper neighboring samples at positions corresponding to the prediction direction of the current block at the positions of the upper reference samples 610, are used to generate the upper reference samples 610. If the positions of upper peripheral sample A, upper peripheral sample B, upper peripheral sample C, and upper peripheral sample D are all integer sample positions, i.e., if upper peripheral sample A, upper peripheral sample B, upper peripheral sample C, and upper peripheral sample D are all integer samples, upper reference sample 610 is generated based on the sample values of upper peripheral sample A, upper peripheral sample B, upper peripheral sample C, and upper peripheral sample D. Similarly, left peripheral samples located in the prediction direction of the current block can be derived based on the positions of the left reference samples, and left reference samples are generated based on the left peripheral samples.
[0078] On the other hand, if there is a position among the positions of upper peripheral sample A, upper peripheral sample B, upper peripheral sample C, and upper peripheral sample D that is not an integer sample position, i.e., if there is a fractional sample among the positions of upper peripheral sample A, upper peripheral sample B, upper peripheral sample C, and upper peripheral sample D, the fractional sample can be derived as shown in the following figure.
[0079] 7 is a diagram illustrating an example of deriving the neighboring sample located at a fractional sample position. As shown in FIG. 7, the sample value of neighboring sample X of a fractional sample is generated by linearly interpolating the sample values of integer samples D1 and D2 adjacent to the left and right of the neighboring sample. That is, if upper neighboring sample A, upper neighboring sample B, upper neighboring sample C, or upper neighboring sample D is the fractional sample, the fractional sample can be derived based on the upper neighboring sample at the integer sample position adjacent to the fractional sample. The fractional sample can be derived based on the following equation:
[0080]
number
[0081] Here, X is the fractional sample, D1 is the integer sample adjacent to the left of the fractional sample, D2 is the integer sample adjacent to the right of the fractional sample, d1 is the distance between D2 and X, and d2 is the distance between D1 and X.
[0082] The values of the upper neighboring samples for generating the upper reference samples may be derived using the above method. When the upper neighboring samples at the integer sample positions or the fractional sample positions are derived, the upper reference samples may be generated based on the upper neighboring samples. The upper reference samples may be generated by assigning the same weight to each upper reference sample, as described above. Alternatively, weights may be assigned to each upper reference sample in consideration of the distance between the current block and each upper reference sample, and the upper reference samples may be generated based on each upper reference sample and the weight. Alternatively, weights may be assigned to each upper reference sample based on various criteria, such as the size or QP of the current block, and the upper reference samples may be generated based on each upper reference sample and the weight. The upper reference samples may also be generated by substituting the weights assigned to the upper neighboring samples and the upper neighboring samples into Equation 1 above. Furthermore, if the fractional sample exists among the left neighboring samples, the fractional sample can be derived in a similar manner as described above, and the left reference sample can be derived based on the fractional sample.
[0083] Meanwhile, when a reference sample is generated based on neighboring samples located in the prediction direction of the current block, the same weights {1 / 4, 1 / 4, 1 / 4, 1 / 4} may be assigned to the neighboring samples used to generate the reference sample as described above, or the weights of the neighboring samples may be assigned according to the distance between the neighboring samples and the current block. Alternatively, the weights of the neighboring samples may be assigned according to the size of the current block or the quantization parameter (QP) of the current block. Alternatively, the weights of the neighboring samples may be assigned based on various criteria. The upper reference sample may be derived based on the weights assigned to the upper and lower neighboring samples, respectively. The left reference sample may be derived based on the weights assigned to the left and upper neighboring samples, respectively.
[0084] On the other hand, as described above, when the reference sample is derived based on 2N neighboring samples of multiple columns or rows according to the prediction direction of the current block and the neighboring samples included in the additional area, the samples located in the additional area can be generated by padding as described above, but if the neighboring samples located in the additional area have already been restored, the restored neighboring samples of the additional area can be used, and if the neighboring samples located in the additional area are not restored, the neighboring samples can be generated by padding as described above.
[0085] FIG. 8 illustrates an example of generating upper reference samples for the current block based on upper-side neighboring samples, including additionally generated upper-side neighboring samples. As described above, the intra prediction mode for the current block may be derived, and the reference samples for the current block may be generated based on neighboring samples located in the prediction direction. In this case, as shown in (a) of FIG. 8, the prediction direction of the current block may be from the upper right to the lower left, and upper-side neighboring samples located in an additional area 810 shown in (a) of FIG. 8 may be required for predicting the current block. If the upper-side neighboring samples included in the additional area 810 have already been reconstructed, the reconstructed upper-side neighboring samples are used to generate the upper reference samples. On the other hand, as shown in (b) of FIG. 8, if the upper-side neighboring samples located in the additional area 820 have not been reconstructed, the samples located in the additional area 820 are generated by padding the sample values of the rightmost upper-side neighboring samples among the upper-side neighboring samples in each row. That is, the sample values of the samples located in the additional area 820 may be derived to be the same as the sample values of the rightmost upper-side neighboring samples among the upper-side neighboring samples in each row. Although the drawing does not show an additional region for the left peripheral samples, the left peripheral samples included in the additional region for the left peripheral samples can be derived in a manner similar to the method for deriving the upper peripheral samples included in the additional region 810 described above.
[0086] Meanwhile, the above-described embodiment for generating the reference sample is selected based on the prediction direction of the current block, that is, the reference sample of the current block may be generated in different ways depending on the intra prediction mode.
[0087] 9 is a diagram illustrating an example of classifying intra prediction modes according to prediction directions. Referring to FIG. 9, the intra prediction modes are classified into four regions according to the prediction direction. As shown in FIG. 9, the intra prediction modes may be included in region A, region B, region C, or region D according to the prediction direction. Specifically, for example, intra prediction modes Nos. 2 to 9 may be included in region A, intra prediction modes Nos. 10 to 17 may be included in region B, intra prediction modes Nos. 18 to 26 may be included in region C, and intra prediction modes Nos. 27 to 34 may be included in region D. A method for deriving reference samples for the current block is determined based on the intra prediction mode applied to the current block.
[0088] For example, when an intra prediction mode included in the D region is applied to the current block, the reference sample of the current block may be derived by the method shown in Figure 8. That is, 2N upper peripheral samples of a plurality of rows of the current block and upper peripheral samples of an additional region may be generated, and the upper reference sample of the current block may be generated based on a peripheral sample located in a prediction direction at the position of the upper reference sample of the current block among the 2N upper peripheral samples of the plurality of rows and the upper peripheral sample of the additional region. If the upper peripheral sample of the additional region has already been reconstructed, the reconstructed upper peripheral sample is used to generate the reference sample of the current block. If the upper peripheral sample of the additional region has not been reconstructed, the reference sample is generated by padding a sample value of the rightmost upper peripheral sample among the 2N upper peripheral samples of each row.
[0089] As another example, when an intra prediction mode included in the C region is applied to the current block, reference samples of the current block are generated as shown in FIG. 10, which will be described later.
[0090] 10 is a diagram illustrating an example of generating upper reference samples of the current block based on upper peripheral samples including additionally generated upper peripheral samples. When an upper reference sample D' shown in FIG. 10(b) is generated, D' is generated based on upper peripheral samples A, B, C, and D at positions corresponding to the prediction direction of the current block at the position of D' shown in FIG. 10(a). If the positions of the upper peripheral samples A, B, C, and D are all integer sample positions, i.e., if A, B, C, and D are all integer samples, D' is generated based on the sample values of A, B, C, and D. If a sample at a fractional sample position exists among the positions of the upper peripheral samples A, B, C, and D, i.e., if a fractional sample exists among A, B, C, and D, the fractional sample may be generated by linearly interpolating sample values of integer samples adjacent to the fractional sample on the left and right, as described above, and D' may be generated based on the generated fractional sample. 10(a), H' is generated based on upper-side peripheral samples E, F, G, and H at positions corresponding to the prediction direction of the current block. If the positions of the upper-side peripheral samples E, F, G, and H are all integer sample positions, i.e., if E, F, G, and H are all integer samples, H' may be generated based on sample values of E, F, G, and H. If a sample at a fractional sample position exists among the positions of the upper-side peripheral samples E, F, G, and H, i.e., if a fractional sample exists among E, F, G, and H, the fractional sample may be generated by linearly interpolating sample values of integer samples adjacent to the left and right of the fractional sample, as described above, and H' may be generated based on the generated fractional sample.
[0091] Meanwhile, when an intra prediction mode included in region B is applied to the current block, reference samples of the current block may be generated using the same method as the method of deriving reference samples of the current block when the intra prediction mode included in region C is applied to the current block. Also, when an intra prediction mode included in region A is applied to the current block, reference samples of the current block may be generated using the same method as the method of deriving reference samples of the current block when the intra prediction mode included in region D is applied to the current block.
[0092] Figure 11 is a diagram illustrating a video encoding method by an encoding device according to the present invention. The method disclosed in Figure 11 can be performed by the encoding device disclosed in Figure 1. Specifically, for example, steps S1100 to S1140 in Figure 11 can be performed by a prediction unit of the encoding device, and step S1150 can be performed by an entropy encoding unit of the encoding device.
[0093] The encoding apparatus determines an intra prediction mode for a current block (S1100). The encoding apparatus may perform various intra prediction modes and derive an intra prediction mode having an optimal RD cost as the intra prediction mode for the current block. The intra prediction mode may be one of two non-directional prediction modes and 33 directional prediction modes. As described above, the two non-directional prediction modes may include an intra DC mode and an intra planar mode.
[0094] The encoding apparatus derives a plurality of rows of upper peripheral samples and a plurality of columns of left peripheral samples for the current block (S1110). The encoding apparatus may derive a plurality of rows of upper peripheral samples for the current block. For example, the encoding apparatus may derive four rows of upper peripheral samples for the current block. Also, for example, if the size of the current block is NxN, the encoding apparatus may derive 2N upper peripheral samples for each of the plurality of rows. The 2N upper peripheral samples for each row may be referred to as first upper peripheral samples.
[0095] Meanwhile, as will be described later, an upper reference sample may be derived based on a specific upper neighboring sample derived based on the position of the upper reference sample and the prediction direction of the intra prediction mode for the current block, in which case, an upper neighboring sample other than the first upper neighboring sample is used to derive the upper reference sample according to the prediction direction of the current block.
[0096] For example, when the size of the current block is NxN, the number of upper peripheral samples in the n-th row among the plurality of rows of upper peripheral samples may be greater than 2N. As another example, when the n-th row is the first row, the number of upper peripheral samples in the n-th row may be 2N, and the number of upper peripheral samples in the n+1-th row may be greater than 2N. Also, the number of upper peripheral samples in the n-th row among the plurality of rows of upper peripheral samples for the current block may be less than the number of upper peripheral samples in the n+1-th row. Specifically, the number of upper peripheral samples in the n+1-th row may be greater than 2N, and the 2Nth and subsequent upper peripheral samples among the n+1-th row may be derived by padding the 2Nth and subsequent upper peripheral samples among the n+1-th row. Alternatively, if reconstructed samples corresponding to the 2Nth and subsequent upper peripheral samples among the n+1-th row are generated before the predicted samples for the current block are generated, the reconstructed samples may be derived as the 2Nth and subsequent upper peripheral samples.
[0097] As another example, when the size of the current block is NxN, the encoding apparatus may derive second upper peripheral samples for each row based on a prediction direction of the current block. Here, the second upper peripheral samples refer to upper peripheral samples other than the first upper peripheral sample for each row. The number of second upper peripheral samples for each row is determined based on the prediction direction. The second upper peripheral samples for each row may be derived by padding a second upper peripheral sample located at the rightmost position among the first upper peripheral samples for each row. Alternatively, if a reconstructed sample for the second upper peripheral sample is generated before a predicted sample for the current block is generated, the reconstructed sample may be derived as the second upper peripheral sample. If a reconstructed sample for the second upper peripheral sample is not generated before the predicted sample for the current block is generated, the second upper peripheral sample for each row may be derived by padding a second upper peripheral sample located at the rightmost position among the first upper peripheral samples for each row.
[0098] As another example, the encoding apparatus may derive multiple columns of left-side peripheral samples for the current block. For example, the encoding apparatus may derive four columns of left-side peripheral samples for the current block. For example, if the size of the current block is NxN, the encoding apparatus may derive 2N left-side peripheral samples for each of the multiple columns. The 2N left-side peripheral samples for each column may be referred to as first left-side peripheral samples.
[0099] Meanwhile, as will be described later, a left reference sample may be derived based on a specific left peripheral sample derived based on the position of the left reference sample and the prediction direction of the intra prediction mode for the current block, in which case a left peripheral sample other than the first left peripheral sample is used to derive the left reference sample depending on the prediction direction of the current block.
[0100] For example, when the size of the current block is NxN, the number of left peripheral samples in the nth column among the left peripheral samples in the plurality of columns may be greater than 2N. As another example, when the nth column is the first column, the number of left peripheral samples in the nth column may be 2N, and the number of left peripheral samples in the n+1th column may be greater than 2N. Also, the number of left peripheral samples in the nth column among the plurality of columns of left peripheral samples for the current block may be less than the number of left peripheral samples in the n+1th column. Specifically, the number of left peripheral samples in the n+1th column may be greater than 2N, and the 2Nth and subsequent left peripheral samples among the left peripheral samples in the n+1th column may be derived by padding the 2Nth left peripheral sample among the left peripheral samples in the n+1th column. Alternatively, if reconstructed samples corresponding to the 2Nth and subsequent left peripheral samples among the left peripheral samples in the n+1th column are generated before the predicted samples for the current block are generated, the reconstructed samples may be derived as the 2Nth and subsequent left peripheral samples.
[0101] As another example, when the size of the current block is NxN, the encoding apparatus may derive second left peripheral samples for each column based on a prediction direction of the current block. Here, the second left peripheral samples refer to left peripheral samples other than the first left peripheral sample for each row. The number of second left peripheral samples for each column is determined based on the prediction direction. The second left peripheral samples for each column may be derived by padding the second left peripheral samples located at the bottom among the first left peripheral samples for each column. Alternatively, if a reconstructed sample for the second left peripheral sample is generated before a predicted sample for the current block is generated, the reconstructed sample may be derived as the second left peripheral sample. If a reconstructed sample for the second left peripheral sample is not generated before the predicted sample for the current block is generated, the second left peripheral sample for each column may be derived by padding the second left peripheral sample located at the bottom among the first left peripheral samples for each column.
[0102] The encoding apparatus derives one row of upper reference samples based on the upper surrounding samples (S1120). The encoding apparatus may derive one row of the upper reference samples based on the plurality of rows of the upper surrounding samples.
[0103] For example, an upper reference sample located in column x among the upper reference samples may be derived based on an upper peripheral sample located in column x among the upper peripheral samples. In this case, an average value of the sample values of the upper peripheral samples located in column x may be derived as the sample value of the upper reference sample located in column x. Furthermore, a weight value for the upper peripheral sample located in column x may be derived, and the upper reference sample located in column x may be derived based on the weight value and the upper peripheral sample located in column x. When the weight value for the upper peripheral sample located in column x is derived, the upper reference sample may be derived according to Equation 1 above.
[0104] Meanwhile, for example, the weights may be derived based on the distance between the upper peripheral samples and the upper reference samples located in the x-column. That is, the weights for the corresponding upper peripheral samples among the upper peripheral samples located in the x-column may be derived based on the distance between the corresponding upper peripheral sample and the upper reference sample. For example, the weights for the corresponding upper peripheral samples may be inversely proportional to the distance between the corresponding upper peripheral sample and the upper reference sample. Specifically, when four rows of upper peripheral samples are derived, the weights for the upper peripheral samples may be derived as 1 / 2, 1 / 4, 1 / 8, and 1 / 8 from bottom to top. Alternatively, the weights for the upper peripheral samples may be derived as 2 / 5, 2 / 5, 1 / 10, and 1 / 10 from bottom to top.
[0105] As another example, the weights may be derived based on the size or quantization parameter (QP) of the current block. Furthermore, the weights may be derived based on various criteria.
[0106] As another example, a first upper reference sample among the upper reference samples may be derived based on a specific upper peripheral sample derived based on the position of the first upper reference sample and the prediction direction of the current block. Specifically, a specific upper peripheral sample located in the prediction direction of the current block may be derived based on the position of the upper reference sample, and the upper reference sample may be derived based on the specific upper peripheral sample. In this case, an average value of sample values of the specific upper peripheral sample may be derived as the sample value of the first upper reference sample. Also, a weighted value for the specific upper peripheral sample may be derived, and the first upper reference sample may be derived based on the weighted value and the specific upper peripheral sample. When the weighted value for the specific upper peripheral sample is derived, the first upper reference sample may be derived based on Equation 1 above.
[0107] Meanwhile, for example, the weight value may be derived based on the distance between the specific upper peripheral sample and the first upper reference sample. That is, the weight value for a specific upper peripheral sample among the specific upper peripheral samples may be derived based on the distance between the specific upper peripheral sample and the first upper reference sample, for example, the weight value of the specific upper peripheral sample may be inversely proportional to the distance between the specific upper peripheral sample and the first upper reference sample.
[0108] As another example, the weights may be derived based on the size or quantization parameter (QP) of the current block. Furthermore, the weights may be derived based on various criteria.
[0109] Meanwhile, if the specific upper peripheral sample derived based on the prediction direction of the current block includes an upper peripheral sample that is a fractional sample, the sample value of the upper peripheral sample that is a fractional sample may be derived by linear interpolation between sample values of integer samples adjacent to the left and right of the upper peripheral sample that is a fractional sample. For example, the sample value of the upper peripheral sample that is a fractional sample may be derived according to Equation 2 above.
[0110] Meanwhile, a method for deriving the upper reference sample is determined based on the intra prediction mode of the current block. For example, if the intra prediction mode of the current block has a larger prediction angle than the vertical mode, i.e., if the intra prediction mode of the current block is one of the 27th to 34th intra prediction modes, the corresponding upper reference sample of the upper reference sample may be derived based on a specific upper neighboring sample located in the prediction direction of the current block based on the position of the corresponding upper reference sample. Here, the vertical mode may correspond to the 26th intra prediction mode. Also, if the intra prediction mode of the current block has a smaller prediction angle than or the same as the vertical mode, i.e., if the intra prediction mode of the current block is one of the 18th to 26th intra prediction modes, the corresponding upper reference sample of the upper reference sample may be derived based on an upper neighboring sample located in the same column as the corresponding upper reference sample.
[0111] The encoding apparatus derives one column of left reference samples based on the left surrounding samples (S1130). The encoding apparatus may derive one column of the left reference samples based on the plurality of columns of the left surrounding samples.
[0112] For example, a left reference sample located in row y among the left reference samples may be derived based on a left peripheral sample located in row y among the left peripheral samples. In this case, an average value of the sample values of the left peripheral samples located in row y may be derived as the sample value of the left reference sample located in row y. Also, a weight for the left peripheral sample located in row y may be derived, and the left reference sample located in row y may be derived based on the weight and the left peripheral sample located in row y. When the weight for the left peripheral sample located in row y is derived, the left reference sample may be derived according to Equation 1 above.
[0113] Meanwhile, for example, the weights may be derived based on the distance between the left peripheral sample and the left reference sample located in the yth row. That is, the weights for the corresponding left peripheral samples among the left peripheral samples located in the yth row may be derived based on the distance between the corresponding left peripheral sample and the left reference sample. For example, the weights for the corresponding left peripheral samples may be inversely proportional to the distance between the corresponding left peripheral sample and the left reference sample. Specifically, when four columns of left peripheral samples are derived, the weights for the left peripheral samples may be derived as 1 / 2, 1 / 4, 1 / 8, and 1 / 8 from right to left. Alternatively, the weights for the left peripheral samples may be derived as 2 / 5, 2 / 5, 1 / 10, and 1 / 10 from right to left.
[0114] As another example, the weights may be derived based on the size or quantization parameter (QP) of the current block. Furthermore, the weights may be derived based on various criteria.
[0115] As another example, a first left reference sample among the left reference samples may be derived based on a specific left peripheral sample derived based on the position of the first left reference sample and the prediction direction of the current block. Specifically, a specific left peripheral sample located in the prediction direction of the current block may be derived based on the position of the left reference sample, and the left reference sample may be derived based on the specific left peripheral sample. In this case, an average value of sample values of the specific left peripheral samples may be derived as the sample value of the first left reference sample. Also, a weighted value for the specific left peripheral sample may be derived, and the first left reference sample may be derived based on the weighted value and the specific left peripheral sample. When the weighted value for the specific left peripheral sample is derived, the first left reference sample may be derived based on Equation 1 above.
[0116] Meanwhile, for example, the weight value may be derived based on the distance between the specific left peripheral sample and the first left reference sample, that is, the weight value for a specific left peripheral sample among the specific left peripheral samples may be derived based on the distance between the specific left peripheral sample and the first left reference sample, for example, the weight value for the specific left peripheral sample may be inversely proportional to the distance between the specific left peripheral sample and the first left reference sample.
[0117] As another example, the weights may be derived based on the size or quantization parameter (QP) of the current block. Furthermore, the weights may be derived based on various criteria.
[0118] Meanwhile, if the specific left peripheral sample derived based on the prediction direction of the current block includes a left peripheral sample that is a fractional sample, the sample value of the left peripheral sample that is a fractional sample may be derived by linear interpolation between sample values of integer samples adjacent to the left and right of the left peripheral sample that is a fractional sample. For example, the sample value of the left peripheral sample that is a fractional sample may be derived according to Equation 2 above.
[0119] Meanwhile, a method for deriving the left reference sample is determined based on the intra prediction mode of the current block. For example, if the intra prediction mode of the current block has a larger prediction angle than the horizontal mode, i.e., if the intra prediction mode of the current block is one of the 2nd to 9th intra prediction modes, the corresponding left reference sample of the left reference sample may be derived based on a specific left peripheral sample located in the prediction direction of the current block based on the position of the corresponding left reference sample. Here, the horizontal mode may correspond to the 10th intra prediction mode. Also, if the intra prediction mode of the current block has a smaller prediction angle than or the same as the horizontal mode, i.e., if the intra prediction mode of the current block is one of the 10th to 17th intra prediction modes, the corresponding left reference sample of the left reference sample may be derived based on a left peripheral sample located in the same row as the corresponding left reference sample.
[0120] The encoding apparatus generates a prediction sample for the current block using at least one of the top reference sample and the left reference sample according to the intra prediction mode (S1140). The encoding apparatus may generate the prediction sample based on the top reference sample or the left reference sample located in the prediction direction of the intra prediction mode based on the position of the prediction sample.
[0121] The encoding apparatus generates, encodes, and outputs prediction information for the current block (S1150). The encoding apparatus may encode information about an intra-prediction mode for the current block and output the encoded information in the form of a bitstream. The encoding apparatus may generate, encode, and output information about an intra-prediction mode indicating the intra-prediction mode in the form of a bitstream. The information about the intra-prediction mode may include information directly indicating the intra-prediction mode for the current block, or may include information indicating one candidate from an intra-prediction mode candidate list derived based on the intra-prediction mode of a block to the left or above the current block.
[0122] Figure 12 is a diagram illustrating a video decoding method by a decoding device according to the present invention. The method disclosed in Figure 12 is performed by the decoding device disclosed in Figure 2. Specifically, for example, steps S1200 to S1240 in Figure 12 are performed by a prediction unit of the decoding device.
[0123] A decoding apparatus derives an intra-prediction mode for a current block (S1200). The decoding apparatus may obtain prediction information for the current block via a bitstream. The prediction information may include information directly indicating the intra-prediction mode for the current block, or may include information indicating one candidate from an intra-prediction mode candidate list derived based on the intra-prediction mode of a block to the left or above the current block. The decoding apparatus may derive the intra-prediction mode for the current block based on the obtained prediction information. The intra-prediction mode may be one of two non-directional prediction modes and 33 directional prediction modes. As described above, the two non-directional prediction modes may include an intra-DC mode and an intra-planar mode.
[0124] The decoding apparatus derives a plurality of rows of upper peripheral samples and a plurality of columns of left peripheral samples for the current block (S1210). The decoding apparatus may derive a plurality of rows of upper peripheral samples for the current block. For example, the decoding apparatus may derive four rows of upper peripheral samples for the current block. For example, if the size of the current block is NxN, the decoding apparatus may derive 2N upper-side peripheral samples for each of the plurality of rows, which may be referred to as first upper-side peripheral samples.
[0125] Meanwhile, as will be described later, an upper reference sample may be derived based on a specific upper neighboring sample derived based on the position of the upper reference sample and the prediction direction of the intra prediction mode for the current block, in which case, an upper neighboring sample other than the first upper neighboring sample is used to derive the upper reference sample according to the prediction direction of the current block.
[0126] For example, when the size of the current block is NxN, the number of upper peripheral samples in the n-th row among the plurality of rows of upper peripheral samples may be greater than 2N. As another example, when the n-th row is the first row, the number of upper peripheral samples in the n-th row may be 2N, and the number of upper peripheral samples in the n+1-th row may be greater than 2N. Also, the number of upper peripheral samples in the n-th row among the plurality of rows of upper peripheral samples for the current block may be less than the number of upper peripheral samples in the n+1-th row. Specifically, the number of upper peripheral samples in the n+1-th row may be greater than 2N, and the 2Nth and subsequent upper peripheral samples among the n+1-th row may be derived by padding the 2Nth and subsequent upper peripheral samples among the n+1-th row. Alternatively, if reconstructed samples corresponding to the 2Nth and subsequent upper peripheral samples among the n+1-th row are generated before the predicted samples for the current block are generated, the reconstructed samples may be derived as the 2Nth and subsequent upper peripheral samples.
[0127] As another example, when the size of the current block is NxN, the decoding apparatus may derive second upper peripheral samples for each row based on a prediction direction of the current block. Here, the second upper peripheral samples refer to upper peripheral samples for each row other than the first upper peripheral sample. The number of second upper peripheral samples for each row is determined based on the prediction direction. The second upper peripheral samples for each row may be derived by padding a rightmost first upper peripheral sample among the first upper peripheral samples for each row. Alternatively, if a reconstructed sample for the second upper peripheral sample is generated before a predicted sample for the current block is generated, the reconstructed sample may be derived as the second upper peripheral sample. If a reconstructed sample for the second upper peripheral sample is not generated before the predicted sample for the current block is generated, the second upper peripheral sample for each row may be derived by padding a rightmost first upper peripheral sample among the first upper peripheral samples for each row.
[0128] As another example, the decoding apparatus may derive multiple columns of left-side peripheral samples for the current block. For example, the decoding apparatus may derive four columns of left-side peripheral samples for the current block. For example, if the size of the current block is NxN, the decoding apparatus may derive 2N left-side peripheral samples for each of the multiple columns. The 2N left-side peripheral samples for each column may be referred to as first left-side peripheral samples.
[0129] Meanwhile, as will be described later, a left reference sample may be derived based on a specific left peripheral sample derived based on the position of the left reference sample and the prediction direction of the intra prediction mode for the current block, in which case a left peripheral sample other than the first left peripheral sample is used to derive the left reference sample depending on the prediction direction of the current block.
[0130] For example, when the size of the current block is NxN, the number of left peripheral samples in the nth column among the left peripheral samples in the plurality of columns may be greater than 2N. As another example, when the nth column is the first column, the number of left peripheral samples in the nth column may be 2N, and the number of left peripheral samples in the n+1th column may be greater than 2N. Also, the number of left peripheral samples in the nth column among the plurality of columns of left peripheral samples for the current block may be less than the number of left peripheral samples in the n+1th column. Specifically, the number of left peripheral samples in the n+1th column may be greater than 2N, and the 2Nth and subsequent left peripheral samples among the left peripheral samples in the n+1th column may be derived by padding the 2Nth left peripheral sample among the left peripheral samples in the n+1th column. Alternatively, if reconstructed samples corresponding to the 2Nth and subsequent left peripheral samples among the left peripheral samples in the n+1th column are generated before the predicted samples for the current block are generated, the reconstructed samples may be derived as the 2Nth and subsequent left peripheral samples.
[0131] As another example, when the size of the current block is NxN, the decoding apparatus may derive second left peripheral samples for each column based on a prediction direction of the current block. The number of second left peripheral samples for each column is determined based on the prediction direction. The second left peripheral samples for each column may be derived by padding the lowermost first left peripheral sample among the first left peripheral samples for each column. Alternatively, if a reconstructed sample for the second left peripheral sample is generated before a predicted sample for the current block is generated, the reconstructed sample may be derived as the second left peripheral sample. If a reconstructed sample for the second left peripheral sample is not generated before the predicted sample for the current block is generated, the second left peripheral sample for each column may be derived by padding the lowermost first left peripheral sample among the first left peripheral samples for each column.
[0132] The decoding apparatus derives one row of upper reference samples based on the upper surrounding samples (S1220). The decoding apparatus may derive one row of the upper reference samples based on the plurality of rows of the upper surrounding samples.
[0133] For example, an upper reference sample located in column x among the upper reference samples may be derived based on an upper peripheral sample located in column x among the upper peripheral samples. In this case, an average value of the sample values of the upper peripheral samples located in column x may be derived as the sample value of the upper reference sample located in column x. Furthermore, a weight value for the upper peripheral sample located in column x may be derived, and the upper reference sample located in column x may be derived based on the weight value and the upper peripheral sample located in column x. When the weight value for the upper peripheral sample located in column x is derived, the upper reference sample may be derived according to Equation 1 above.
[0134] Meanwhile, for example, the weights may be derived based on the distance between the upper peripheral samples and the upper reference samples located in the x-column. That is, the weights for the corresponding upper peripheral samples among the upper peripheral samples located in the x-column may be derived based on the distance between the corresponding upper peripheral sample and the upper reference sample. For example, the weights for the corresponding upper peripheral samples may be inversely proportional to the distance between the corresponding upper peripheral sample and the upper reference sample. Specifically, when four rows of upper peripheral samples are derived, the weights for the upper peripheral samples may be derived as 1 / 2, 1 / 4, 1 / 8, and 1 / 8 from bottom to top. Alternatively, the weights for the upper peripheral samples may be derived as 2 / 5, 2 / 5, 1 / 10, and 1 / 10 from bottom to top.
[0135] As another example, the weights may be derived based on the size or quantization parameter (QP) of the current block. Furthermore, the weights may be derived based on various criteria.
[0136] As another example, a first upper reference sample among the upper reference samples may be derived based on a specific upper neighboring sample derived based on the position of the first upper reference sample and the prediction direction of the current block. Specifically, a specific upper neighboring sample located in the prediction direction of the current block may be derived based on the position of the upper reference sample, and the upper reference sample may be derived based on the specific upper neighboring sample. In this case, an average value of sample values of the specific upper neighboring samples may be derived as the sample value of the first upper reference sample. Also, a weighted value for the specific upper neighboring sample may be derived, and the first upper reference sample may be derived based on the weighted value and the specific upper neighboring sample. When the weighted value for the specific upper neighboring sample is derived, the first upper reference sample may be derived based on Equation 1 above.
[0137] Meanwhile, for example, the weight value may be derived based on the distance between the specific upper peripheral sample and the first upper reference sample. That is, the weight value for a specific upper peripheral sample among the specific upper peripheral samples may be derived based on the distance between the specific upper peripheral sample and the first upper reference sample, for example, the weight value of the specific upper peripheral sample may be inversely proportional to the distance between the specific upper peripheral sample and the first upper reference sample.
[0138] As another example, the weights may be derived based on the size or quantization parameter (QP) of the current block. Furthermore, the weights may be derived based on various criteria.
[0139] Meanwhile, if the specific upper peripheral sample derived based on the prediction direction of the current block includes an upper peripheral sample that is a fractional sample, the sample value of the upper peripheral sample that is a fractional sample may be derived by linear interpolation between sample values of integer samples adjacent to the left and right of the upper peripheral sample that is a fractional sample. For example, the sample value of the upper peripheral sample that is a fractional sample may be derived according to Equation 2 above.
[0140] Meanwhile, a method for deriving the upper reference sample is determined based on the intra prediction mode of the current block. For example, if the intra prediction mode of the current block has a larger prediction angle than the vertical mode, i.e., if the intra prediction mode of the current block is one of the 27th to 34th intra prediction modes, the corresponding upper reference sample of the upper reference sample may be derived based on a specific upper neighboring sample located in the prediction direction of the current block based on the position of the corresponding upper reference sample. Here, the vertical mode may correspond to the 26th intra prediction mode. Also, if the intra prediction mode of the current block has a smaller prediction angle than or the same as the vertical mode, i.e., if the intra prediction mode of the current block is one of the 18th to 26th intra prediction modes, the corresponding upper reference sample of the upper reference sample may be derived based on an upper neighboring sample located in the same column as the corresponding upper reference sample.
[0141] The decoding apparatus derives one column of left reference samples based on the left surrounding samples (S1230). The decoding apparatus may derive one column of the left reference samples based on the plurality of columns of the left surrounding samples.
[0142] For example, a left reference sample located in row y among the left reference samples may be derived based on a left peripheral sample located in row y among the left peripheral samples. In this case, an average value of the sample values of the left peripheral samples located in row y may be derived as the sample value of the left reference sample located in row y. Also, a weight for the left peripheral sample located in row y may be derived, and the left reference sample located in row y may be derived based on the weight and the left peripheral sample located in row y. When the weight for the left peripheral sample located in row y is derived, the left reference sample may be derived according to Equation 1 above.
[0143] Meanwhile, for example, the weights may be derived based on the distance between the left peripheral sample and the left reference sample located in the yth row. That is, the weights for the corresponding left peripheral samples among the left peripheral samples located in the yth row may be derived based on the distance between the corresponding left peripheral sample and the left reference sample. For example, the weights for the corresponding left peripheral samples may be inversely proportional to the distance between the corresponding left peripheral sample and the left reference sample. Specifically, when four columns of left peripheral samples are derived, the weights for the left peripheral samples may be derived as 1 / 2, 1 / 4, 1 / 8, and 1 / 8 from right to left. Alternatively, the weights for the left peripheral samples may be derived as 2 / 5, 2 / 5, 1 / 10, and 1 / 10 from right to left.
[0144] As another example, the weights may be derived based on the size or quantization parameter (QP) of the current block. Furthermore, the weights may be derived based on various criteria.
[0145] As another example, a first left reference sample among the left reference samples may be derived based on a specific left peripheral sample derived based on the position of the first left reference sample and the prediction direction of the current block. Specifically, a specific left peripheral sample located in the prediction direction of the current block may be derived based on the position of the left reference sample, and the left reference sample may be derived based on the specific left peripheral sample. In this case, an average value of sample values of the specific left peripheral samples may be derived as the sample value of the first left reference sample. Also, a weighted value for the specific left peripheral sample may be derived, and the first left reference sample may be derived based on the weighted value and the specific left peripheral sample. When the weighted value for the specific left peripheral sample is derived, the first left reference sample may be derived based on Equation 1 above.
[0146] Meanwhile, for example, the weight value may be derived based on the distance between the specific left peripheral sample and the first left reference sample, that is, the weight value for a specific left peripheral sample among the specific left peripheral samples may be derived based on the distance between the specific left peripheral sample and the first left reference sample, for example, the weight value for the specific left peripheral sample may be inversely proportional to the distance between the specific left peripheral sample and the first left reference sample.
[0147] As another example, the weights may be derived based on the size or quantization parameter (QP) of the current block. Furthermore, the weights may be derived based on various criteria.
[0148] Meanwhile, if the specific left peripheral sample derived based on the prediction direction of the current block includes a left peripheral sample that is a fractional sample, the sample value of the left peripheral sample that is a fractional sample may be derived by linear interpolation between sample values of integer samples adjacent to the left and right of the left peripheral sample that is a fractional sample. For example, the sample value of the left peripheral sample that is a fractional sample may be derived according to Equation 2 above.
[0149] Meanwhile, a method for deriving the left reference sample is determined based on the intra prediction mode of the current block. For example, if the intra prediction mode of the current block has a larger prediction angle than the horizontal mode, i.e., if the intra prediction mode of the current block is one of the 2nd to 9th intra prediction modes, the corresponding left reference sample of the left reference sample may be derived based on a specific left neighboring sample located in the prediction direction of the current block based on the position of the corresponding left reference sample. Here, the horizontal mode may correspond to the 10th intra prediction mode. Also, if the intra prediction mode of the current block has a smaller prediction angle than or the same as the horizontal mode, i.e., if the intra prediction mode of the current block is one of the 10th to 17th intra prediction modes, the corresponding left reference sample of the left reference sample may be derived based on a left neighboring sample located in the same row as the corresponding left reference sample.
[0150] The decoding apparatus generates a prediction sample for the current block using at least one of the top reference sample and the left reference sample according to the intra prediction mode (S1240). The decoding apparatus may generate the prediction sample based on the top reference sample or the left reference sample located in the prediction direction of the intra prediction mode based on the position of the prediction sample.
[0151] Meanwhile, although not shown, the decoding device may directly use the predicted sample as a reconstructed sample depending on the prediction mode, or may generate a reconstructed sample by adding a residual sample to the predicted sample. If a residual sample exists for the current block, the decoding device may receive information about the residual for the current block, and the information about the residual may be included in the information about the block. The information about the residual may include transform coefficients related to the residual sample. The decoding device may derive the residual sample (or a residual sample array) for the current block based on the residual information. The decoding device may generate a reconstructed sample based on the predicted sample and the residual sample, and may derive a reconstructed block or a reconstructed picture based on the reconstructed sample. As described above, the decoding device may then apply an in-loop filtering procedure, such as deblocking filtering and / or an SAO procedure, to the reconstructed picture to improve subjective / objective image quality as needed.
[0152] According to the present invention described above, a reference sample for a current block can be derived based on a plurality of surrounding samples, and intra prediction can be performed based on the reference sample to improve prediction accuracy for the current block, thereby improving overall coding efficiency.
[0153] In addition, according to the present invention, reference samples can be derived based on a plurality of surrounding samples located in the prediction direction of the intra prediction mode for the current block, and intra prediction can be performed based on the reference samples to improve the prediction accuracy for the current block, thereby improving overall coding efficiency.
[0154] Furthermore, according to the present invention, weighted values for a plurality of surrounding samples can be derived, and reference samples can be derived based on the weighted values and the surrounding samples. Intra prediction can be performed based on the reference samples to improve prediction accuracy for the current block, thereby improving overall coding efficiency.
[0155] In the above-described embodiments, the method is described based on a flowchart as a series of steps or blocks, but the present invention is not limited to the order of steps, and any procedure can occur in a different order or simultaneously with other steps as described above. Furthermore, those skilled in the art will understand that the steps depicted in the flowchart are not exclusive, and other steps may be included, or one or more steps of the flowchart may be removed without affecting the scope of the present invention.
[0156] The above-described method according to the present invention can be implemented in software form, and the encoding device and / or decoding device according to the present invention can be included in a device that performs video processing, such as a TV, a computer, a smartphone, a set-top box, or a display device.
[0157] When an embodiment of the present invention is implemented in software, the above-described methods may be implemented by modules (processes, functions, etc.) that perform the above-described functions. The modules may be stored in memory and executed by a processor. The memory may be internal or external to the processor and may be connected to the processor by various well-known means. The processor may include an application-specific integrated circuit (ASIC), other chipsets, logic circuits, and / or data processing devices. The memory may include read-only memory (ROM), random access memory (RAM), flash memory, memory cards, storage media, and / or other storage devices.
Claims
1. 1. A method of decoding video performed by a decoding device, comprising: deriving an intra prediction mode of the current block from the prediction mode information; deriving neighboring samples of the current block, including upper and left neighboring samples of the current block; generating a predicted sample of the current block based on the intra prediction mode of the current block and the surrounding samples; the upper neighboring samples include upper neighboring samples of an n-th row located upward from the top row of the current block; the left-side neighboring samples include left-side neighboring samples of an n-th column located leftward from the leftmost column of the current block; n is greater than 1, Based on the size of the current block being N×N, the number of the upper neighboring samples in the nth row is greater than 2N, where N is a positive integer; A video decoding method, in which the sample value of an additional upper peripheral sample located to the right of the 2Nth upper peripheral sample among the upper peripheral samples in the nth row is derived to be equal to the sample value of the 2Nth upper peripheral sample without determining whether the additional upper peripheral sample is located at an unavailable sample position.
2. 1. A method of encoding video performed by an encoding device, comprising: deriving an intra prediction mode of the current block from the prediction mode information; deriving neighboring samples of the current block, including upper and left neighboring samples of the current block; generating a predicted sample of the current block based on the intra prediction mode of the current block and the surrounding samples; encoding prediction information of the current block; the upper neighboring samples include upper neighboring samples of an n-th row located upward from the top row of the current block; the left-side neighboring samples include left-side neighboring samples of an n-th column located leftward from the leftmost column of the current block; n is greater than 1, Based on the size of the current block being N×N, the number of the upper neighboring samples in the nth row is greater than 2N, where N is a positive integer; a sample value of an additional upper peripheral sample located to the right of the 2Nth upper peripheral sample among the upper peripheral samples in the nth row is derived to be equal to the sample value of the 2Nth upper peripheral sample without determining whether the additional upper peripheral sample is located at an unavailable sample position.
3. In a method of transmitting data for video, obtaining a bitstream for the video, wherein the bitstream is generated based on deriving an intra prediction mode of a current block from prediction mode information, deriving peripheral samples of the current block including upper and left peripheral samples of the current block, generating prediction samples of the current block based on the intra prediction mode of the current block and the peripheral samples, and encoding the prediction information of the current block; transmitting the data including the bitstream; the upper neighboring samples include upper neighboring samples of an n-th row located upward from the top row of the current block; the left-side neighboring samples include left-side neighboring samples of an n-th column located leftward from the leftmost column of the current block; n is greater than 1, Based on the size of the current block being N×N, the number of the upper neighboring samples in the nth row is greater than 2N, where N is a positive integer; A data transmission method in which the sample value of an additional upper peripheral sample located to the right of the 2Nth upper peripheral sample among the upper peripheral samples in the nth row is derived to be equal to the sample value of the 2Nth upper peripheral sample without determining whether the additional upper peripheral sample is located at an unavailable sample position.
Citation Information
Patent Citations
Moving image encoding apparatus, moving image decoding apparatus, moving image encoding method, moving image decoding method, and program
JP2008271371A
Video signal processing method and apparatus
JP2010538520A
Image processing apparatus and image processing method
JP2013141187A
Video decoding method and apparatus using intra prediction in a video coding system
JP7074913B2
Spatial prediction with increased number of possible coding modes
WO2014005930A1