WO2018131838A1 - 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치 - Google Patents

영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치 Download PDF

Info

Publication number
WO2018131838A1
WO2018131838A1 PCT/KR2018/000246 KR2018000246W WO2018131838A1 WO 2018131838 A1 WO2018131838 A1 WO 2018131838A1 KR 2018000246 W KR2018000246 W KR 2018000246W WO 2018131838 A1 WO2018131838 A1 WO 2018131838A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
intra prediction
current chroma
chroma block
samples
Prior art date
Application number
PCT/KR2018/000246
Other languages
English (en)
French (fr)
Inventor
유선미
허진
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2018131838A1 publication Critical patent/WO2018131838A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

Definitions

  • the present invention relates to an image coding technique, and more particularly, to an image decoding method and apparatus according to intra prediction in an image coding system.
  • the demand for high resolution and high quality images such as high definition (HD) images and ultra high definition (UHD) images is increasing in various fields.
  • the higher the resolution and the higher quality of the image data the more information or bit rate is transmitted than the existing image data. Therefore, the image data can be transmitted by using a medium such as a conventional wired / wireless broadband line or by using a conventional storage medium. In the case of storage, the transmission cost and the storage cost are increased.
  • a high efficiency image compression technique is required to effectively transmit, store, and reproduce high resolution, high quality image information.
  • An object of the present invention is to provide a method and apparatus for improving image coding efficiency.
  • Another object of the present invention is to provide an intra prediction method and apparatus for performing based on a corresponding block of a current chroma block and another component.
  • Another object of the present invention is to provide a prediction method and apparatus for deriving an intra prediction mode based on a corresponding block of a current chroma block and another component.
  • an image decoding method performed by a decoding apparatus.
  • the method derives linear model parameters for the current chroma block based on the surrounding samples of the current chroma block and the corresponding luma block, based on the reconstruction samples of the linear model parameters and the corresponding luma block.
  • Generating a temporary prediction block of the current chroma block deriving an intra prediction mode of the current chroma block among a plurality of candidate intra prediction modes for the current chroma block based on the temporary prediction block, and the current And deriving a candidate prediction block generated based on the intra prediction mode of the chroma block as a prediction block for the current chroma block.
  • a decoding apparatus for performing image decoding.
  • the decoding apparatus derives linear model parameters for the current chroma block based on an entropy decoding unit for obtaining prediction information on the current chroma block, and surrounding samples of the current chroma block and surrounding samples of the corresponding luma block.
  • a temporary prediction block of the current chroma block based on linear model parameters and reconstructed samples of the corresponding luma block, and based on the temporary prediction block, the current one of a plurality of candidate intra prediction modes for the current chroma block
  • a prediction unit for deriving an intra prediction mode of the chroma block and deriving a candidate prediction block generated based on the intra prediction mode of the current chroma block as a prediction block for the current chroma block.
  • a video encoding method performed by an encoding apparatus derives linear model parameters for the current chroma block based on the surrounding samples of the current chroma block and the corresponding luma block, based on the reconstruction samples of the linear model parameters and the corresponding luma block.
  • Generating a temporary prediction block of the current chroma block deriving an intra prediction mode of the current chroma block among a plurality of candidate intra prediction modes for the current chroma block based on the temporary prediction block, the current chroma Deriving a candidate prediction block generated based on the intra prediction mode of the block as a prediction block for the current chroma block, and generating, encoding, and outputting prediction information about the current chroma block. It is done.
  • a video encoding apparatus derives linear model parameters for the current chroma block based on the surrounding samples of the current chroma block and the corresponding luma block, and based on the reconstructed samples of the linear model parameters and the corresponding luma block.
  • Generate a temporary prediction block of the current chroma block derive an intra prediction mode of the current chroma block among a plurality of candidate intra prediction modes for the current chroma block based on the temporary prediction block, And a prediction unit for deriving a candidate prediction block generated based on the intra prediction mode as a prediction block for the current chroma block, and an entropy encoding unit for generating, encoding, and outputting prediction information about the current chroma block. It is done.
  • an intra prediction mode of the current chroma block may be derived using a component different from the current chroma block, and prediction may be performed based on neighboring samples of the current chroma block, thus not including noise of the other component. Since the prediction block of the current chroma block can be generated, the prediction accuracy of the current chroma block can be improved, thereby improving the overall coding efficiency.
  • the intra prediction mode minimized in the distortion oligo of the intra prediction modes can be selected as the intra prediction mode of the current chroma block without transmitting information indicating the intra prediction mode of the current chroma block.
  • the amount of bits for prediction of the current chroma block can be reduced, and the overall coding efficiency can be improved.
  • FIG. 1 is a diagram schematically illustrating a configuration of a video encoding apparatus to which the present invention may be applied.
  • FIG. 2 is a diagram schematically illustrating a configuration of a video decoding apparatus to which the present invention may be applied.
  • 3 exemplarily shows the left side samples and the top side samples used for intra prediction of the current block.
  • 4 exemplarily shows intra directional modes of 65 prediction directions.
  • 5 exemplarily shows neighboring samples of the current chroma block and neighboring samples of the corresponding luma block used to derive a relationship between the corresponding luma block and the current chroma block.
  • FIG. 6 illustrates an example of selecting an intra prediction mode of the current chroma block based on a temporary prediction block among a plurality of candidate intra prediction modes in a decoding apparatus.
  • FIG. 7 schematically illustrates a video encoding method by an encoding device according to the present invention.
  • FIG. 8 schematically illustrates a video decoding method by a decoding apparatus according to the present invention.
  • each configuration in the drawings described in the present invention are shown independently for the convenience of description of the different characteristic functions, it does not mean that each configuration is implemented by separate hardware or separate software.
  • two or more of each configuration may be combined to form one configuration, or one configuration may be divided into a plurality of configurations.
  • Embodiments in which each configuration is integrated and / or separated are also included in the scope of the present invention without departing from the spirit of the present invention.
  • a picture generally refers to a unit representing one image of a specific time zone
  • a slice is a unit constituting a part of a picture in coding.
  • One picture may be composed of a plurality of slices, and if necessary, the picture and the slice may be mixed with each other.
  • a pixel or a pel may refer to a minimum unit constituting one picture (or image). Also, 'sample' may be used as a term corresponding to a pixel.
  • a sample may generally represent a pixel or a value of a pixel, and may only represent pixel / pixel values of the luma component, or only pixel / pixel values of the chroma component.
  • a unit represents the basic unit of image processing.
  • the unit may include at least one of a specific region of the picture and information related to the region.
  • the unit may be used interchangeably with terms such as block or area in some cases.
  • an M ⁇ N block may represent a set of samples or transform coefficients composed of M columns and N rows.
  • FIG. 1 is a diagram schematically illustrating a configuration of a video encoding apparatus to which the present invention may be applied.
  • the video encoding apparatus 100 may include a picture splitter 105, a predictor 110, a residual processor 120, an entropy encoder 130, an adder 140, and a filter 150. ) And memory 160.
  • the residual processing unit 120 may include a subtraction unit 121, a conversion unit 122, a quantization unit 123, a reordering unit 124, an inverse quantization unit 125, and an inverse conversion unit 126.
  • the picture divider 105 may divide the input picture into at least one processing unit.
  • the processing unit may be called a coding unit (CU).
  • the coding unit may be recursively split from the largest coding unit (LCU) according to a quad-tree binary-tree (QTBT) structure.
  • LCU largest coding unit
  • QTBT quad-tree binary-tree
  • one coding unit may be divided into a plurality of coding units of a deeper depth based on a quad tree structure and / or a binary tree structure.
  • the quad tree structure may be applied first and the binary tree structure may be applied later.
  • 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 no longer split.
  • the maximum coding unit may be used as the final coding unit immediately based on coding efficiency according to the image characteristic, or if necessary, the coding unit is recursively divided into coding units of lower depths and optimized.
  • a coding unit of size may be used as the final coding unit.
  • the coding procedure may include a procedure of prediction, transform, and reconstruction, which will be described later.
  • the processing unit may include a coding unit (CU) prediction unit (PU) or a transform unit (TU).
  • the coding unit may be split from the largest coding unit (LCU) into coding units of deeper depths along the quad tree structure.
  • LCU largest coding unit
  • the maximum coding unit may be used as the final coding unit immediately based on coding efficiency according to the image characteristic, or if necessary, the coding unit is recursively divided into coding units of lower depths and optimized.
  • a coding unit of size may be used as the final coding unit. If a smallest coding unit (SCU) is set, the coding unit may not be split into smaller coding units than the minimum coding unit.
  • the final coding unit refers to a coding unit that is the basis of partitioning or partitioning into a prediction unit or a transform unit.
  • the prediction unit is a unit partitioning 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 along the quad tree structure from the coding unit, and may be a unit for deriving a transform coefficient and / or a unit for deriving a residual signal from the transform coefficient.
  • a coding unit may be called a coding block (CB)
  • a prediction unit is a prediction block (PB)
  • a transform unit may be called a transform block (TB).
  • a prediction block or prediction unit may mean a specific area in the form of a block within a picture, and may include an array of prediction samples.
  • a transform block or a transform unit may mean a specific area in a block form within a picture, and may include an array of transform coefficients or residual samples.
  • the prediction unit 110 may perform a prediction on a block to be processed (hereinafter, referred to as a current block) and generate a predicted block including prediction samples of the current block.
  • the unit of prediction performed by the prediction unit 110 may be a coding block, a transform block, or a prediction block.
  • the prediction unit 110 may determine whether intra prediction or inter prediction is applied to the current block. As an example, the prediction unit 110 may determine whether intra prediction or inter prediction is applied on a CU basis.
  • the prediction unit 110 may derive a prediction sample for the current block based on reference samples outside the current block in the picture to which the current block belongs (hereinafter, referred to as the current picture). In this case, the prediction unit 110 may (i) derive the prediction sample based on the average or interpolation of neighboring reference samples of the current block, and (ii) the neighbor reference of the current block.
  • the prediction sample may be derived based on a reference sample present in a specific (prediction) direction with respect to the prediction sample among the samples. In case of (i), it may be called non-directional mode or non-angle mode, and in case of (ii), it may be called directional mode or angular mode.
  • the prediction mode may have, for example, 33 directional prediction modes and at least two non-directional modes.
  • the non-directional mode may include a DC prediction mode and a planner mode (Planar mode).
  • the prediction unit 110 may determine the prediction mode applied to the current block by using the prediction mode applied to the neighboring block.
  • the prediction unit 110 may derive the prediction sample for the current block based on the sample specified by the motion vector on the reference picture.
  • the prediction unit 110 may apply one of a skip mode, a merge mode, and a motion vector prediction (MVP) mode to derive a prediction sample for the current block.
  • the prediction unit 110 may use the motion information of the neighboring block as the motion information of the current block.
  • the skip mode unlike the merge mode, the difference (residual) between the prediction sample and the original sample is not transmitted.
  • the MVP mode the motion vector of the current block may be derived using the motion vector of the neighboring block as a motion vector predictor.
  • the neighboring block may include a spatial neighboring block existing in the current picture and a temporal neighboring block present in the reference picture.
  • a reference picture including the temporal neighboring block may be called a collocated picture (colPic).
  • the motion information may include a motion vector and a reference picture index.
  • Information such as prediction mode information and motion information may be encoded (entropy) and output in the form of a bitstream.
  • the highest picture on the reference picture list may be used as the reference picture.
  • Reference pictures included in a reference picture list may be sorted based on a difference in a picture order count (POC) between a current picture and a corresponding reference picture.
  • POC picture order count
  • the subtraction unit 121 generates a residual sample which is a difference between the original sample and the prediction sample.
  • residual samples may not be generated as described above.
  • the transform unit 122 generates transform coefficients by transforming the residual sample in units of transform blocks.
  • the transform unit 122 may perform the transform according to the size of the transform block and the prediction mode applied to the coding block or the prediction block that spatially overlaps the transform block. For example, if intra prediction is applied to the coding block or the prediction block that overlaps the transform block, and the transform block is a 4 ⁇ 4 residual array, the residual sample is configured to perform a discrete sine transform (DST) transform kernel.
  • the residual sample may be transformed using a discrete cosine transform (DCT) transform kernel.
  • DST discrete sine transform
  • DCT discrete cosine transform
  • the quantization unit 123 may quantize the transform coefficients to generate quantized transform coefficients.
  • the reordering unit 124 rearranges the quantized transform coefficients.
  • the reordering unit 124 may reorder the quantized transform coefficients in the form of a block into a one-dimensional vector form through a coefficient scanning method. Although the reordering unit 124 has been described in a separate configuration, the reordering unit 124 may be part of the quantization unit 123.
  • the entropy encoding unit 130 may perform entropy encoding on the quantized transform coefficients.
  • Entropy encoding may include, for example, encoding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), context-adaptive binary arithmetic coding (CABAC), and the like.
  • the entropy encoding unit 130 may encode information necessary for video reconstruction other than the quantized transform coefficient (for example, a value of a syntax element) together or separately. Entropy encoded information may be transmitted or stored in units of network abstraction layer (NAL) units in the form of bitstreams.
  • NAL network abstraction layer
  • the inverse quantization unit 125 inverse quantizes the quantized values (quantized transform coefficients) in the quantization unit 123, and the inverse transformer 126 inverse transforms the inverse quantized values in the inverse quantization unit 125 to obtain a residual sample.
  • the adder 140 reconstructs the picture by combining the residual sample and the predictive sample.
  • the residual sample and the predictive sample may be added in units of blocks to generate a reconstructed block.
  • the adder 140 may be part of the predictor 110.
  • the adder 140 may be called a restoration unit or a restoration block generation unit.
  • the filter unit 150 may apply a deblocking filter and / or a sample adaptive offset to the reconstructed picture. Through deblocking filtering and / or sample adaptive offset, the artifacts of the block boundaries in the reconstructed picture or the distortion in the quantization process can be corrected.
  • the sample adaptive offset may be applied on a sample basis and may be applied after the process of deblocking filtering is completed.
  • the filter unit 150 may apply an adaptive loop filter (ALF) to the reconstructed picture. ALF may be applied to the reconstructed picture after the deblocking filter and / or sample adaptive offset is applied.
  • ALF adaptive loop filter
  • the memory 160 may store reconstructed pictures (decoded pictures) or information necessary for encoding / decoding.
  • the reconstructed picture may be a reconstructed picture after the filtering process is completed by the filter unit 150.
  • the stored reconstructed picture may be used as a reference picture for (inter) prediction of another picture.
  • the memory 160 may store (reference) pictures used for inter prediction.
  • pictures used for inter prediction may be designated by a reference picture set or a reference picture list.
  • FIG. 2 is a diagram schematically illustrating a configuration of a video decoding apparatus to which the present invention may be applied.
  • the video decoding apparatus 200 may include an entropy decoding unit 210, a residual processor 220, a predictor 230, an adder 240, a filter 250, and a memory 260. It may include.
  • the residual processor 220 may include a rearrangement unit 221, an inverse quantization unit 222, and an inverse transform unit 223.
  • the video decoding apparatus 200 may restore video in response to a process in which video information is processed in the video encoding apparatus.
  • the video decoding apparatus 200 may perform video decoding using a processing unit applied in the video encoding apparatus.
  • the processing unit block of video decoding may be, for example, a coding unit, and in another example, a coding unit, a prediction unit, or a transform unit.
  • the coding unit may be split along the quad tree structure and / or binary tree structure from the largest coding unit.
  • the prediction unit and the transform unit may be further used in some cases, in which case the prediction block is a block derived or partitioned from the coding unit and may be a unit of sample prediction. At this point, the prediction unit may be divided into subblocks.
  • the transform unit may be divided along the quad tree structure from the coding unit, and may be a unit for deriving a transform coefficient or a unit for deriving a residual signal from the transform coefficient.
  • the entropy decoding unit 210 may parse the bitstream and output information necessary for video reconstruction or picture reconstruction. For example, the entropy decoding unit 210 decodes information in a bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, quantized values of syntax elements necessary for video reconstruction, and residual coefficients. Can be output.
  • a coding method such as exponential Golomb coding, CAVLC, or CABAC, quantized values of syntax elements necessary for video reconstruction, and residual coefficients. Can be output.
  • the CABAC entropy decoding method receives a bin corresponding to each syntax element in a bitstream, and decodes syntax element information and decoding information of neighboring and decoding target blocks or information of symbols / bins decoded in a previous step.
  • the context model may be determined using the context model, the probability of occurrence of a bin may be predicted according to the determined context model, and arithmetic decoding of the bin may be performed to generate a symbol corresponding to the value of each syntax element. have.
  • the CABAC entropy decoding method may update the context model by using the information of the decoded symbol / bin for the context model of the next symbol / bean after determining the context model.
  • the information related to the prediction among the information decoded by the entropy decoding unit 210 is provided to the prediction unit 230, and the residual value on which the entropy decoding has been performed by the entropy decoding unit 210, that is, the quantized transform coefficient, is used as a reordering unit ( 221 may be input.
  • the reordering unit 221 may rearrange the quantized transform coefficients in a two-dimensional block form.
  • the reordering unit 221 may perform reordering in response to coefficient scanning performed by the encoding apparatus.
  • the rearrangement unit 221 has been described in a separate configuration, but the rearrangement unit 221 may be part of the inverse quantization unit 222.
  • the inverse quantization unit 222 may dequantize the quantized transform coefficients based on the (inverse) quantization parameter and output the transform coefficients.
  • information for deriving a quantization parameter may be signaled from the encoding apparatus.
  • the inverse transform unit 223 may inversely transform transform coefficients to derive residual samples.
  • the prediction unit 230 may perform prediction on the current block and generate a predicted block including prediction samples for the current block.
  • the unit of prediction performed by the prediction unit 230 may be a coding block, a transform block, or a prediction block.
  • the prediction unit 230 may determine whether to apply intra prediction or inter prediction based on the information about the prediction.
  • a unit for determining which of intra prediction and inter prediction is to be applied and a unit for generating a prediction sample may be different.
  • the unit for generating a prediction sample in inter prediction and intra prediction may also be different.
  • whether to apply inter prediction or intra prediction may be determined in units of CUs.
  • a prediction mode may be determined and a prediction sample may be generated in PU units
  • intra prediction a prediction mode may be determined in PU units and a prediction sample may be generated in TU units.
  • the prediction unit 230 may derive the prediction sample for the current block based on the neighbor reference samples in the current picture.
  • the prediction unit 230 may derive the prediction sample for the current block by applying the directional mode or the non-directional mode based on the neighbor reference samples of the current block.
  • the prediction mode to be applied to the current block may be determined using the intra prediction mode of the neighboring block.
  • the prediction unit 230 may derive the prediction sample for the current block based on the sample specified on the reference picture by the motion vector on the reference picture.
  • the prediction unit 230 may apply any one of a skip mode, a merge mode, and an MVP mode to derive a prediction sample for the current block.
  • motion information required for inter prediction of the current block provided by the video encoding apparatus for example, information about a motion vector, a reference picture index, and the like may be obtained or derived based on the prediction information.
  • the motion information of the neighboring block may be used as the motion information of the current block.
  • the neighboring block may include a spatial neighboring block and a temporal neighboring block.
  • the prediction unit 230 may construct a merge candidate list using motion information of available neighboring blocks, and may use information indicated by the merge index on the merge candidate list as a motion vector of the current block.
  • the merge index may be signaled from the encoding device.
  • the motion information may include a motion vector and a reference picture.
  • the difference (residual) between the prediction sample and the original sample is not transmitted.
  • the motion vector of the current block may be derived using the motion vector of the neighboring block as a motion vector predictor.
  • the neighboring block may include a spatial neighboring block and a temporal neighboring block.
  • a merge candidate list may be generated by using a motion vector of a reconstructed spatial neighboring block and / or a motion vector corresponding to a Col block, which is a temporal neighboring block.
  • the motion vector of the candidate block selected from the merge candidate list is used as the motion vector of the current block.
  • the information about the prediction may include a merge index indicating a candidate block having an optimal motion vector selected from candidate blocks included in the merge candidate list.
  • the prediction unit 230 may derive the motion vector of the current block by using the merge index.
  • a motion vector predictor candidate list may be generated using a motion vector of a reconstructed spatial neighboring block and / or a motion vector corresponding to a Col block which is a temporal neighboring block.
  • the prediction information may include a prediction motion vector index indicating an optimal motion vector selected from the motion vector candidates included in the list.
  • the prediction unit 230 may select the predicted motion vector of the current block from the motion vector candidates included in the motion vector candidate list using the motion vector index.
  • the prediction unit of the encoding apparatus may obtain a motion vector difference (MVD) between the motion vector of the current block and the motion vector predictor, and may encode the output vector in a bitstream form. That is, MVD may be obtained by subtracting the motion vector predictor from the motion vector of the current block.
  • the prediction unit 230 may obtain a motion vector difference included in the information about the prediction, and derive the motion vector of the current block by adding the motion vector difference and the motion vector predictor.
  • the prediction unit may also obtain or derive a reference picture index or the like indicating a reference picture from the information about the prediction.
  • the adder 240 may reconstruct the current block or the current picture by adding the residual sample and the predictive sample.
  • the adder 240 may reconstruct the current picture by adding the residual sample and the predictive sample in block units. Since the residual is not transmitted when the skip mode is applied, the prediction sample may be a reconstruction sample.
  • the adder 240 has been described in a separate configuration, the adder 240 may be part of the predictor 230. On the other hand, the adder 240 may be called a restoration unit or a restoration block generation unit.
  • the filter unit 250 may apply the deblocking filtering sample adaptive offset, and / or ALF to the reconstructed picture.
  • the sample adaptive offset may be applied in units of samples and may be applied after deblocking filtering.
  • ALF may be applied after deblocking filtering and / or sample adaptive offset.
  • the memory 260 may store reconstructed pictures (decoded pictures) or information necessary for decoding.
  • the reconstructed picture may be a reconstructed picture after the filtering process is completed by the filter unit 250.
  • the memory 260 may store pictures used for inter prediction.
  • pictures used for inter prediction may be designated by a reference picture set or a reference picture list.
  • the reconstructed picture can be used as a reference picture for another picture.
  • the memory 260 may output the reconstructed picture in an output order.
  • the prediction when prediction is performed on the current block, the prediction may be performed based on an intra prediction mode.
  • the intra prediction may be performed based on neighboring samples that have already been encoded / decoded at the decoding time of the current block. That is, the predictive sample of the current block may be reconstructed using the left neighboring samples and the upper neighboring samples of the current block that have already been reconstructed.
  • the left peripheral samples and the upper peripheral samples may be represented as shown in FIG. 3.
  • an intra prediction mode for the current block may be derived, and the current block using at least one of the left neighboring samples and the upper neighboring samples according to the intra prediction mode.
  • a prediction sample for can be generated.
  • the intra prediction mode may include two non-directional intra prediction modes and 33 directional intra prediction modes.
  • the non-directional intra prediction modes may include a planar intra prediction mode and a DC intra prediction mode, and the directional intra prediction modes may include 2 to 34 intra prediction modes.
  • the planner intra prediction mode may be called a planner mode, and the DC intra prediction mode may be called a DC mode.
  • the intra prediction mode 10 may be a horizontal intra prediction mode or a horizontal mode
  • the intra intra prediction mode 26 may be a vertical intra prediction mode or a vertical mode.
  • the prediction direction of angular intra mode) can be expressed in degrees.
  • the relative angle corresponding to each intra prediction mode may be expressed based on the horizontal reference angle 0 ° corresponding to the intra prediction mode 10, and the vertical reference angle corresponding to the intra prediction mode 26 reference 0 °.
  • the relative angle corresponding to each intra prediction mode can be expressed.
  • the intra prediction mode may include two non-directional intra prediction modes and 65 directional intra prediction modes.
  • the non-directional intra prediction modes may include a planar intra prediction mode and a DC intra prediction mode, and the directional intra prediction modes may include 2 to 66 intra prediction modes.
  • 4 exemplarily shows intra directional modes of 65 prediction directions.
  • an intra prediction mode having horizontal directionality and an intra prediction mode having vertical directionality may be distinguished from the intra prediction mode 34 having a left upper diagonal prediction direction.
  • H and V in FIG. 4 mean horizontal directionality and vertical directionality, respectively, and numbers of -32 to 32 represent displacements of 1/32 units on a sample grid position.
  • Intra prediction modes 2 to 33 have horizontal orientation, and intra prediction modes 34 to 66 have vertical orientation.
  • Intra prediction mode 18 and intra prediction mode 50 respectively indicate a horizontal intra prediction mode and a vertical intra prediction mode, and based on this, an angular intra prediction mode is used.
  • the prediction direction can be expressed in degrees.
  • the relative angle corresponding to each intra prediction mode may be expressed based on the horizontal reference angle 0 ° corresponding to the 18th intra prediction mode, and the vertical reference angle corresponding to the 50th intra prediction mode may be expressed as 0 °.
  • the relative angle corresponding to each intra prediction mode can be expressed.
  • a luma component or a chroma component different from the chroma component of the current block that has been decoded and reconstructed may be used for intra prediction on the chroma component of the current block.
  • the chroma Cb component and the chroma Cr component are decoded in the following order.
  • the encoding / decoding information of the luma component may be used.
  • the color format of the input image is a 4: 2: 0 color format
  • the luma component since the luma component has four times as much data as each chroma component, the luma component may be down sampled according to each chroma component.
  • the down sampled luma component may be used for intra prediction of each chroma component.
  • the chroma component of the current block may be represented as a current chroma block
  • a luma component corresponding to the chroma component may be represented as a corresponding luma block.
  • FIG. 5 exemplarily shows neighboring samples of the current chroma block and neighboring samples of the corresponding luma block used to derive a relationship between the corresponding luma block and the current chroma block.
  • neighboring samples of the corresponding luma block corresponding to neighboring samples of the current chroma block may be derived.
  • Peripheral samples of the current chroma block may include left peripheral samples, upper left peripheral samples, and upper peripheral samples of the current chroma block.
  • the left peripheral samples are p [-1] [0] P [-1] [N-1]
  • the upper left peripheral sample is p [-1] [-1]
  • the upper peripheral samples are p [0] [-1] to p [M-1] [- 1] can be.
  • a linear model of the corresponding luma block and the current chroma block may be derived based on the surrounding samples of the corresponding luma block and the surrounding samples of the current chroma block. Prediction samples of the chroma block may be derived based on reconstructed samples of the luma block.
  • the linear model may be represented by a relation between the corresponding luma block and the current chroma block. In other words, the relation is derived based on the neighbor samples of the corresponding luma block and the neighbor samples of the current chroma block, and the prediction samples of the current chroma block are derived based on the relation and the reconstructed samples of the luma block.
  • the intra prediction mode using the correlation between the current chroma block and the corresponding luma block corresponding to the current chroma block may be referred to as a linear model (LM) mode.
  • the parameters of the relational expression may be derived based on the neighboring samples of the current chroma block and the neighboring samples of the corresponding luma block corresponding to the neighboring samples of the current chroma block.
  • the parameters of the relation may include coefficients and offsets of the relation. That is, coefficients and offsets of the relation may be derived based on the neighbor samples of the current chroma block and the neighbor samples of the corresponding luma block. The coefficient may be called a scaling factor.
  • the relational expression derived based on the neighboring samples of the current chroma block and the corresponding luma block may be expressed as the following equation.
  • Ref cb may be a neighboring sample of the current chroma block
  • Ref Y may be a neighboring sample of the corresponding luma block
  • may be a coefficient of the relational expression
  • may represent an offset of the relational expression
  • the parameters ⁇ and ⁇ are calculated by using a least squares method in which the neighboring samples of the current chroma block and the neighboring samples of the corresponding luma block are most similar.
  • peripheral samples of the corresponding luma block may be downsampled and used.
  • the ⁇ and ⁇ can be derived based on the following equation.
  • Equation 2 a difference between both sides of Equation 2 may be regarded as an error E, and the coding apparatus may obtain parameters ⁇ and ⁇ satisfying a condition for minimizing the error.
  • Equation 2 Since the parameters ⁇ and ⁇ to be obtained in Equation 2 are values that minimize errors on both sides, the equation for obtaining the parameters may be expressed as follows.
  • E ( ⁇ , ⁇ ) represents ⁇ and ⁇ values for minimizing errors, where i represents indexing of each sample and ⁇ (lambda) represents a control parameter.
  • the lambda can be predetermined or can be derived based on the surrounding samples of the corresponding luma block, for example.
  • may be set to 0 so that the rear end of Equation 3 may be omitted. The same applies to the equations described below.
  • Equation 3 can be summarized as follows.
  • Equation 4 the parameters ⁇ and ⁇ may be derived as follows.
  • N represents a normalization parameter.
  • N is Can be derived from a part.
  • N may be determined based on the size of the current chroma block.
  • reconstructed samples of the corresponding luma blocks may be applied to the parameters to derive prediction samples of the current chroma block.
  • the relation to which the reconstructed samples of the corresponding luma block are applied may be expressed as the following equation.
  • rec Y '(i, j) is a reconstructed sample of (i, j) coordinates of the corresponding luma block
  • ⁇ Is the coefficient and ⁇ may represent the offset.
  • the rec Y '(i, j) may represent a down-sampled reconstructed sample of the corresponding luma block.
  • the parameter ⁇ and the parameter ⁇ of the relational expression representing the linear model are neighboring samples used for intra prediction of the current luma block and neighboring samples of the current chroma block and neighboring samples of the luma block.
  • intra prediction of the above-described method can be utilized only by transmitting information indicating whether prediction using a linear model is performed on the current chroma block.
  • the embodiment shows a method of predicting the chroma Cb component by using the correlation between the luma component and the chroma Cb component, but based on the correlation between the luma component and the chroma Cb component as well as other components, the intra prediction is performed.
  • intra prediction may be performed by various modeling techniques for defining relationships between components as well as the above-described linear model.
  • the color format of the input image is not limited to the YCbCr 4: 2: 0 color format, and the color format of the input image is a color format capable of conversion between components, the above-described prediction method may be applied. .
  • the color format of the input image is the same color format as the amount of information of all components, such as the RGB color format or the YCbCr 4: 4: 4 color format
  • down-sampling for the luma component may be omitted.
  • a relation between the current chroma block and the corresponding luma block is derived, and a predicted block generated based on reconstruction samples of the relation and the corresponding luma block.
  • block may be derived as a prediction block of the current chroma block, but a prediction block generated based on the relational expression and reconstructed samples of the corresponding luma block and a prediction block generated through a plurality of prediction modes are optimally predicted.
  • a method of deriving an intra prediction mode in which a block is generated as an intra prediction mode of the current chroma block may be proposed.
  • the temporary prediction block described later may represent a prediction block generated based on the relational expression and reconstructed samples of the corresponding luma block.
  • neighboring samples of the current chroma block may be derived, and a temporary prediction block of the current chroma block may be generated based on the neighboring samples, or as described above, neighboring samples of the current chroma block. And a temporary prediction block of the current chroma block may be generated based on a relationship derived from the neighboring samples of the corresponding luma block.
  • candidate prediction blocks of the current chroma block may be generated based on a plurality of candidate intra prediction modes, and a candidate having the least error with the reconstructed block of the luma component among the candidate prediction blocks, that is, the temporary prediction block.
  • the candidate intra prediction mode in which the prediction block is generated may be derived as the intra prediction mode of the current chroma block.
  • the temporary prediction block may be generated by various modeling techniques that define not only the above-described linear model but also relationships between components.
  • the color format of the input image is not limited to the YCbCr 4: 2: 0 color format, and if the color format of the input image is a color format capable of conversion between components, the above-described prediction method is used.
  • Temporary prediction blocks may be generated.
  • the color format of the input image is the same color format as the amount of information of all components, such as the RGB color format or the YCbCr 4: 4: 4 color format, down-sampling for the luma component may be omitted. have.
  • the temporary prediction block is generated based on a relation between the current chroma block and the corresponding luma block, and the intra prediction mode of the current chroma block is derived based on the temporary prediction block.
  • the method may always be applied to the current chroma block if there is a restored corresponding chroma block corresponding to the current chroma block or a restored corresponding chroma block of a chroma component different from the current chroma block.
  • information indicating whether the above-described method is applied in a coding block unit, a slice unit, a picture unit, or a sequence unit may be transmitted, and based on the information, Whether the above-described method is applied to the chroma block can be determined.
  • the type and number of the candidate intra prediction modes for the prediction blocks compared to the temporary prediction block may be mutually promised between the encoding apparatus and the decoding apparatus. That is, the plurality of candidate intra prediction modes may be derived from a plurality of preset intra prediction modes.
  • the encoding apparatus may transmit information indicating the plurality of candidate intra prediction modes to the decoding apparatus.
  • the information representing the plurality of candidate intra prediction modes may be transmitted at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or a block level. Can be.
  • the information indicating the plurality of candidate intra prediction modes may be transmitted by an additional information transmission grammar except for the above-described parameter sets.
  • the prediction block of the current chroma block is generated based on the LM mode described above, the prediction block of the current chroma block is generated based on the reconstructed corresponding luma block, so that a noise portion may be included.
  • an intra prediction mode of the current chroma block may be derived based on the temporary prediction block derived based on the LM mode, and neighboring reference samples of the current chroma block are derived according to the derived intra prediction mode. Since the prediction block of the current chroma block can be generated based on this, the noise portion is not included therein, and thus the prediction accuracy of the current chroma block can be improved.
  • the above-described method may be applied, that is, whether a method of deriving a temporary prediction block based on the LM mode and deriving an intra prediction mode of the current chroma block based on the derived temporary prediction block is indicated.
  • the prediction of the current chroma block may be performed based on various intra prediction modes only by transmission of flag information, and the intra prediction mode minimized from the perspective of distortion among the intra prediction modes is intra prediction of the current chroma block. As a mode can be selected, the effect of improving the prediction accuracy of the current chroma block can be obtained.
  • the above-described method may be added by being defined as a new intra prediction mode, or may replace the existing intra prediction mode.
  • the decoding apparatus may determine whether there is a decoded corresponding block having a component different from that of the current chroma block (S600). For example, when the current chroma block is a block of chroma Cb components, the decoding apparatus may determine whether a corresponding luma block of the decoded luma component or a corresponding chroma block of the chroma Cr component exists.
  • the decoding apparatus may determine whether a corresponding luma block of the decoded luma component or a corresponding chroma block of the chroma Cb component exists. On the other hand, when there is no decoded corresponding block of a component different from the component of the current chroma block, a method of deriving an intra prediction mode of the current chroma block based on the temporary prediction block described above in intra prediction of the current chroma block. May not apply.
  • the decoding apparatus parses a flag indicating whether to derive an intra prediction mode of the current chroma block based on a model for the current chroma block ( parsing) (S605).
  • the decoding apparatus may determine whether the value of the flag is 1 (S610).
  • the model for the current chroma block represents the relationship between the current chroma block and the corresponding block, and the model may represent a linear model or a model other than the linear model.
  • the flag may indicate that the intra prediction mode of the current chroma block is derived based on the model of the current chroma block.
  • the flag When the value of the flag is 0, the flag is It may represent that the intra prediction mode of the current chroma block is not derived based on the model for the current chroma block. That is, the decoding apparatus generates the temporary prediction block based on a relation between the corresponding block and the current chroma block based on the value of the flag (ie, linear model parameters of the current chroma block). The intra prediction mode of the current chroma block may be selected based on the temporary prediction block. When the value of the flag is 0, a method of deriving an intra prediction mode of the current chroma block based on the temporary prediction block described above for intra prediction of the current chroma block may not be applied.
  • the decoding apparatus may derive neighboring samples of the current chroma block and / or derive neighboring samples of the corresponding block and a model of the current chroma block and the corresponding block (S615).
  • the neighboring samples of the corresponding block and the model of the current chroma block and the corresponding block may be converted (S620).
  • the decoding apparatus may downsample the neighboring samples of the corresponding block, wherein the decoding apparatus may represent the model based on the downsampled neighboring samples of the corresponding block and the neighboring samples of the current chroma block.
  • Parameters may be derived, and the parameters may be applied to a reconstruction sample of the corresponding block to derive a temporary prediction block of the current chroma block.
  • the temporary prediction block may be derived based on Equation 7 described above.
  • the decoding apparatus may derive a temporary prediction block by performing intra prediction based on neighboring samples of the current chroma block.
  • the model may be a linear model.
  • the decoding apparatus may set the maximum distortion value as the minimum distortion (S625).
  • MINDIST of FIG. 6 may represent the minimum distortion.
  • the maximum distortion value may be a preset value.
  • the decoding apparatus may set the maximum value of the encoding prediction mode number (S630).
  • the decoding apparatus may derive intra prediction modes to compare based on the temporary prediction block, and may compare intra prediction modes having a number less than or equal to the maximum value and an intra prediction mode having a number less than or equal to the maximum value.
  • intra prediction mode of the current chroma block may be determined. That is, intra prediction modes having a number greater than the maximum value may not be included in intra prediction modes compared based on the temporary prediction block.
  • the maximum value may be a predetermined value or may be derived based on information indicating the received maximum value.
  • the information indicating the maximum value may be transmitted at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or a block level.
  • the decoding apparatus may determine whether the mode number of the current intra prediction mode of the current chroma block is equal to or less than the maximum value (S635). If the mode number of the current intra prediction mode is less than or equal to the maximum value, the decoding apparatus may generate a prediction block by performing prediction based on the current intra prediction mode (S640).
  • the decoding apparatus may calculate a distortion of the prediction block generated based on the current intra prediction mode (S645), and determine whether the distortion of the prediction block generated based on the current intra prediction mode is smaller than the minimum distortion.
  • the decoding apparatus may calculate a distortion of the prediction block generated based on the current intra prediction mode, and determine whether the distortion is smaller than the minimum distortion.
  • CURDIST of FIG. 6 may represent distortion of the prediction block generated based on the current intra prediction mode.
  • the distortion of the prediction block may indicate a degree of distortion between the prediction block and the temporary prediction block. That is, the distortion of the prediction block may indicate a degree of difference from the temporary prediction block of the prediction block.
  • the decoding apparatus may determine the intra prediction mode of the mode number by adding 1 to the mode number of the current intra prediction mode.
  • the decoding apparatus may set the current intra prediction mode to an optimal intra prediction mode for the current chroma block (S655).
  • the decoding apparatus may set the distortion of the prediction block generated based on the current intra prediction mode as the minimum distortion (S660).
  • the decoding apparatus may determine the intra prediction mode of the mode number by adding 1 to the mode number of the current intra prediction mode (S665). In this way, the decoding apparatus may compare a plurality of predetermined candidate intra prediction modes or a plurality of candidate intra prediction modes derived based on the transmitted information in order of mode number, and an intra block in which a prediction block having a minimum distortion is generated.
  • a prediction mode may be derived as the intra prediction mode of the current chroma block.
  • FIG. 7 schematically illustrates a video encoding method by an encoding device according to the present invention.
  • the method disclosed in FIG. 7 may be performed by the encoding apparatus disclosed in FIG. 1.
  • S700 to S730 of FIG. 7 may be performed by the prediction unit of the encoding apparatus
  • S740 may be performed by the entropy encoding unit of the encoding apparatus.
  • the encoding apparatus derives linear model parameters for the current chroma block based on the neighbor samples of the current chroma block and the corresponding samples of the corresponding luma block (S700).
  • the encoding apparatus may derive the peripheral samples of the current chroma block and the peripheral samples of the corresponding block.
  • the corresponding block may be a corresponding luma block of luma components or a corresponding chroma block of chroma components other than the chroma component of the current chroma block.
  • the corresponding block when the chroma component of the current chroma block is a chroma Cb component, the corresponding block may be a corresponding luma block of a luma component or a corresponding chroma block of a chroma Cr component.
  • the corresponding block when the chroma component of the current chroma block is a chroma Cr component, the corresponding block may be a corresponding luma block of the luma component or a corresponding chroma block of the chroma Cb component.
  • the corresponding luma block or the corresponding chroma block may be a block already encoded at the encoding time of the current chroma block.
  • a corresponding luma block is described, but may be performed by the method for the corresponding chroma block.
  • the peripheral samples of the current chroma block may include left peripheral samples, upper left peripheral samples, and upper peripheral samples of the current chroma block, wherein the peripheral samples of the corresponding luma block are selected from the current chroma block.
  • the peripheral samples of the corresponding luma block corresponding to the peripheral samples may be represented.
  • the left peripheral samples are p [-1] [0] to p [-1] [N-1]
  • the upper left peripheral sample is p [-1] [-1]
  • the upper peripheral samples are p [0] [-1] to p [M-1] [-1 ] Can be.
  • an area including the peripheral samples of the current chroma block for deriving the linear model parameters may be represented as a template of the current chroma block.
  • the template of the current chroma block is p [-1. ] [0] to p [-1] [N-1], p [-1] [-1], p [0] [-1] to p [M-1] [-1]
  • an area including the peripheral samples of the corresponding luma block corresponding to the peripheral samples of the current chroma block may be represented as a template of the corresponding luma block.
  • the encoding apparatus may derive linear model parameters for the current chroma block based on the peripheral samples of the current chroma block and the peripheral samples of the corresponding luma block. That is, the encoding apparatus may derive linear model parameters for the current chroma block based on the template of the current chroma block and the template of the corresponding luma block. Specifically, a relation between the current chroma block and the corresponding luma block may be derived based on the neighbor samples of the current chroma block and the corresponding luma block, wherein the relation is the current chroma block and the corresponding luma. It may be an equation representing a model between blocks.
  • the relational expression may be an equation representing a linear model of the current chroma block and the corresponding luma block, or may be an equation representing a model other than the linear model.
  • the linear model parameters may include coefficients and offsets of the linear model. The parameters may be derived based on Equations 5 and 6 described above.
  • the encoding apparatus may generate a flag indicating whether an intra prediction mode of the current chroma block is derived based on a linear model. It may be determined whether an intra prediction mode of the current chroma block is derived among the plurality of candidate intra prediction modes based on a linear model according to the value of the flag. That is, it may be determined whether to derive the parameters based on the flag. For example, when the value of the flag is 1, the linear model parameters may be derived based on the neighbor samples of the current chroma block and the neighbor samples of the corresponding luma block, and the value of the flag is 0. In this case, the linear model parameters may not be derived.
  • the flag may be transmitted at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or at a block level.
  • the encoding apparatus generates a temporary prediction block of the current chroma block based on the linear model parameters and the reconstructed samples of the corresponding luma block (S710).
  • the encoding apparatus may generate the temporary prediction block of the current chroma block based on the linear model parameters and the reconstructed samples of the corresponding luma block.
  • the linear model parameters may include a coefficient and an offset. The coefficient may be called a scaling factor.
  • the encoding apparatus may generate temporary prediction samples of the current chroma block, that is, the temporary prediction block by substituting the reconstructed samples of the corresponding luma block into a relation representing the linear model. That is, the encoding apparatus may generate the temporary prediction samples (ie, the temporary prediction block) by adding the offset to a value obtained by multiplying the reconstructed samples of the corresponding luma block by the coefficient.
  • the sample of the temporary prediction block may be derived by adding the offset to a value obtained by multiplying the coefficient by the reconstruction sample of the corresponding luma block.
  • the temporary prediction block may be derived based on Equation 7 described above.
  • the encoding apparatus derives an intra prediction mode of the current chroma block among a plurality of candidate intra prediction modes for the current chroma block based on the temporary prediction block (S720).
  • the encoding apparatus may derive the intra prediction mode of the current chroma block among the plurality of candidate intra prediction modes for the current chroma block based on the temporary prediction block.
  • the encoding apparatus may generate candidate prediction blocks of the current chroma block by performing prediction on the current chroma block based on the plurality of candidate intra prediction modes, and among the candidate prediction blocks.
  • An intra prediction mode for the candidate prediction block most similar to the block may be derived as the intra prediction mode of the current chroma block.
  • the encoding apparatus may derive the candidate prediction block generated based on the intra prediction mode of the current chroma block as the prediction block for the current chroma block.
  • the encoding apparatus may generate candidate prediction blocks of the current chroma block using the neighboring samples of the current chroma block according to each of the plurality of candidate intra prediction modes.
  • the neighboring samples used to generate candidate prediction blocks of the current chroma block may include left neighboring samples, upper left neighboring samples, and upper neighboring samples of the current chroma block, and the size of the current chroma block is MxN.
  • the left peripheral samples are p [-1] [0] to p [-1] [M + N-1]
  • the upper left peripheral sample may be p [-1] [-1]
  • the upper peripheral sample may be p [0] [-1] to p [M + N-1] [-1].
  • the peripheral samples used to generate candidate prediction blocks of the current chroma block include peripheral samples not included in the peripheral samples of the current chroma block (the template of the current chroma block) for deriving the linear model parameters. can do.
  • the encoding apparatus may derive the distortion of each of the generated candidate prediction blocks with the temporary prediction block, and derive a candidate intra prediction mode for the candidate prediction block having the smallest distortion as the intra prediction mode of the current chroma block. can do.
  • the distortion of the candidate prediction block with the temporary prediction block may indicate a degree of difference between the candidate prediction block and the temporary prediction block.
  • a plurality of candidate intra prediction modes for the current chroma block may be preset.
  • the encoding apparatus may generate information indicating the plurality of candidate intra prediction modes for the current chroma block.
  • the information indicating the plurality of candidate intra prediction modes may include information indicating a maximum value among mode numbers of the plurality of candidate intra prediction modes. When the maximum value is n, the plurality of candidate intra prediction modes may be derived from intra prediction mode 1 to intra prediction mode n.
  • the information indicating the plurality of candidate intra prediction modes may include information indicating a maximum value among mode numbers of the plurality of candidate intra prediction modes and information indicating the number of the candidate intra prediction modes.
  • the plurality of candidate intra prediction modes may be derived from n-m + 1 intra prediction mode to n intra prediction mode.
  • the information indicating the plurality of candidate intra prediction modes may be transmitted at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or a block level.
  • the encoding apparatus derives the candidate prediction block generated based on the intra prediction mode of the current chroma block as a prediction block for the current chroma block (S730).
  • the encoding apparatus may derive a candidate prediction block of the current chroma block generated using neighboring samples of the current chroma block as the prediction block for the current chroma block according to the intra prediction mode.
  • 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 planner mode. Alternatively, the intra prediction mode may be one of two non-directional intra prediction modes and 65 directional intra prediction modes. As described above, the two non-directional prediction modes may include an intra DC mode and an intra planner mode.
  • the 65 directional intra prediction modes may include vertical directional intra prediction modes and horizontal directional intra prediction modes.
  • the vertical directional intra prediction modes may include intra prediction mode 34 to intra intra prediction mode
  • the horizontal directional intra prediction modes may include intra prediction mode 2 to intra prediction mode 33.
  • the encoding apparatus generates, encodes, and outputs prediction information about the current chroma block (S740).
  • the encoding apparatus may encode the prediction information on the current chroma block and output the encoded information in the form of a bitstream.
  • the prediction information may include information indicating the plurality of candidate intra prediction modes for the current chroma block.
  • the information indicating the plurality of candidate intra prediction modes may include information indicating a maximum value among mode numbers of the plurality of candidate intra prediction modes.
  • the information indicating the plurality of candidate intra prediction modes may include information indicating a maximum value among mode numbers of the plurality of candidate intra prediction modes and information indicating the number of the candidate intra prediction modes.
  • the information indicating the plurality of candidate intra prediction modes may be transmitted at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or a block level.
  • the prediction information may include a flag indicating whether an intra prediction mode of the current chroma block is derived based on the linear model.
  • the flag may be transmitted at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or at a block level.
  • FIG. 8 schematically illustrates a video decoding method by a decoding apparatus according to the present invention.
  • the method disclosed in FIG. 8 may be performed by the decoding apparatus disclosed in FIG. 2.
  • S800 to S830 of FIG. 8 may be performed by the prediction unit of the decoding apparatus.
  • the decoding apparatus derives linear model parameters for the current chroma block based on the neighbor samples of the current chroma block and the corresponding samples of the corresponding luma block (S800).
  • the decoding apparatus may derive the peripheral samples of the current chroma block and the peripheral samples of the corresponding block.
  • the corresponding block may be a corresponding luma block of luma components or a corresponding chroma block of chroma components other than the chroma component of the current chroma block.
  • the corresponding block when the chroma component of the current chroma block is a chroma Cb component, the corresponding block may be a corresponding luma block of a luma component or a corresponding chroma block of a chroma Cr component.
  • the corresponding block when the chroma component of the current chroma block is a chroma Cr component, the corresponding block may be a corresponding luma block of the luma component or a corresponding chroma block of the chroma Cb component.
  • the corresponding luma block or the corresponding chroma block may be a block already decoded at the decoding time of the current chroma block.
  • a corresponding luma block is described, but may be performed by the method for the corresponding chroma block.
  • the peripheral samples of the current chroma block may include left peripheral samples, upper left peripheral samples, and upper peripheral samples of the current chroma block, wherein the peripheral samples of the corresponding luma block are selected from the current chroma block.
  • the peripheral samples of the corresponding luma block corresponding to the peripheral samples may be represented.
  • the left peripheral samples are p [-1] [0] to p [-1] [N-1]
  • the upper left peripheral sample is p [-1] [-1]
  • the upper peripheral samples are p [0] [-1] to p [M-1] [-1 ] Can be.
  • an area including the peripheral samples of the current chroma block for deriving the linear model parameters may be represented as a template of the current chroma block.
  • the template of the current chroma block is p [-1. ] [0] to p [-1] [N-1], p [-1] [-1], p [0] [-1] to p [M-1] [-1] Can be represented.
  • an area including the peripheral samples of the corresponding luma block corresponding to the peripheral samples of the current chroma block may be represented as a template of the corresponding luma block.
  • the decoding apparatus may derive linear model parameters for the current chroma block based on the neighbor samples of the current chroma block and the neighbor samples of the corresponding luma block. That is, the decoding apparatus may derive linear model parameters for the current chroma block based on the template of the current chroma block and the template of the corresponding luma block.
  • a relation between the current chroma block and the corresponding luma block may be derived based on the neighbor samples of the current chroma block and the corresponding luma block, wherein the relation is the current chroma block and the corresponding luma. It may be an equation representing a model between blocks.
  • the relational expression may be an equation representing a linear model of the current chroma block and the corresponding luma block, or may be an equation representing a model other than the linear model.
  • the linear model parameters may include coefficients and offsets of the linear model. The parameters may be derived based on Equations 5 and 6 described above.
  • a flag indicating whether an intra prediction mode of the current chroma block is derived based on a linear model through a bitstream may be obtained. It may be determined whether an intra prediction mode of the current chroma block is derived among the plurality of candidate intra prediction modes based on a linear model according to the value of the flag.
  • the decoding apparatus may generate the temporary prediction block based on the flag, and determine whether to derive an intra prediction mode of the current chroma block among the plurality of candidate intra prediction modes based on the temporary prediction block. That is, the decoding apparatus may determine whether to derive the parameters based on the flag.
  • the parameters of the relation may be derived based on the neighbor samples of the current chroma block and the neighbor samples of the corresponding luma block, and the value of the flag is 0. If, the parameters of the relation may not be derived.
  • the flag may be received at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or at a block level.
  • the decoding apparatus generates a temporary prediction block of the current chroma block based on the linear model parameters and the reconstructed samples of the corresponding luma block (S810).
  • the decoding apparatus may generate the temporary prediction block of the current chroma block based on the linear model parameters and the reconstructed samples of the corresponding luma block.
  • the linear model parameters may include a coefficient and an offset.
  • the coefficient may be called a scaling factor.
  • the decoding apparatus may generate temporary prediction samples of the current chroma block, that is, the temporary prediction block by substituting the reconstructed samples of the corresponding luma block into a relation representing the linear model.
  • the decoding apparatus may generate the temporary prediction samples (ie, the temporary prediction block) by adding the offset to a value obtained by multiplying the reconstructed samples of the corresponding luma block by the coefficient.
  • the sample of the temporary prediction block may be derived by adding the offset to a value obtained by multiplying the coefficient by the reconstruction sample of the corresponding luma block.
  • the temporary prediction block may be derived based on Equation 7 described above.
  • the decoding apparatus derives an intra prediction mode of the current chroma block among a plurality of candidate intra prediction modes for the current chroma block based on the temporary prediction block (S820).
  • the decoding apparatus may derive the intra prediction mode of the current chroma block among the plurality of candidate intra prediction modes for the current chroma block based on the temporary prediction block.
  • the decoding apparatus may generate candidate prediction blocks of the current chroma block by performing prediction on the current chroma block based on the plurality of candidate intra prediction modes, and among the candidate prediction blocks.
  • a candidate intra prediction mode for the candidate prediction block most similar to the block may be derived as the intra prediction mode of the current chroma block.
  • the decoding apparatus may generate candidate prediction blocks of the current chroma block using neighboring samples of the current chroma block according to each of the plurality of candidate intra prediction modes. Meanwhile, the neighboring samples used to generate candidate prediction blocks of the current chroma block may include left neighboring samples, upper left neighboring samples, and upper neighboring samples of the current chroma block, and the size of the current chroma block is MxN.
  • the left peripheral samples are p [-1] [0] to p [-1] [M + N-1]
  • the upper left peripheral sample may be p [-1] [-1]
  • the upper peripheral sample may be p [0] [-1] to p [M + N-1] [-1].
  • the peripheral samples used to generate candidate prediction blocks of the current chroma block include peripheral samples not included in the peripheral samples of the current chroma block (the template of the current chroma block) for deriving the linear model parameters. can do.
  • the decoding apparatus may derive the distortion of each of the generated candidate prediction blocks with the temporary prediction block, and derive a candidate intra prediction mode for the candidate prediction block having the smallest distortion as the intra prediction mode of the current chroma block. can do.
  • the distortion of the candidate prediction block with the temporary prediction block may indicate a degree of difference between the candidate prediction block and the temporary prediction block.
  • a plurality of candidate intra prediction modes for the current chroma block may be preset.
  • the plurality of candidate intra prediction modes for the current chroma block may be derived based on information indicating the plurality of candidate intra prediction modes for the current chroma block.
  • the decoding apparatus may obtain information indicating the plurality of candidate intra prediction modes for the current chroma block through the bitstream, and based on the information indicating the plurality of candidate intra prediction modes, the current chroma.
  • the plurality of candidate intra prediction modes for a block may be derived.
  • the information indicating the plurality of candidate intra prediction modes may include information indicating a maximum value among mode numbers of the plurality of candidate intra prediction modes.
  • the plurality of candidate intra prediction modes may be derived from intra prediction mode 1 to intra prediction mode m.
  • the information indicating the plurality of candidate intra prediction modes may include information indicating a maximum value among mode numbers of the plurality of candidate intra prediction modes and information indicating the number of the candidate intra prediction modes.
  • the plurality of candidate intra prediction modes may be derived from m-n + 1 intra prediction mode to m intra prediction mode.
  • Information indicating the plurality of candidate intra prediction modes may be received at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or a block level.
  • the decoding apparatus derives a candidate prediction block generated based on the intra prediction mode of the current chroma block as a prediction block for the current chroma block (S830).
  • the decoding apparatus may derive a candidate prediction block of the current chroma block generated using neighboring samples of the current chroma block as a prediction block for the current chroma block according to the intra prediction mode.
  • 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 planner mode. Alternatively, the intra prediction mode may be one of two non-directional intra prediction modes and 65 directional intra prediction modes. As described above, the two non-directional prediction modes may include an intra DC mode and an intra planner mode.
  • the 65 directional intra prediction modes may include vertical directional intra prediction modes and horizontal directional intra prediction modes.
  • the vertical directional intra prediction modes may include intra prediction mode 34 to intra intra prediction mode
  • the horizontal directional intra prediction modes may include intra prediction mode 2 to intra prediction mode 33.
  • the decoding apparatus may directly use a prediction sample as a reconstruction sample according to a prediction mode, or generate a reconstruction sample by adding a residual sample to the prediction sample.
  • the decoding apparatus may receive information about the residual for the target block, and the information about the residual may be included in the information about the reconstructed sample.
  • the information about the residual may include transform coefficients regarding the residual sample.
  • the decoding apparatus may derive the residual sample (or residual sample array) for the target block based on the residual information.
  • the decoding apparatus may generate a reconstructed sample based on the prediction sample and the residual sample, and may derive a reconstructed block or a reconstructed picture based on the reconstructed sample.
  • the decoding apparatus may apply an in-loop filtering procedure, such as a deblocking filtering and / or SAO procedure, to the reconstructed picture in order to improve subjective / objective picture quality as necessary.
  • the decoding apparatus may receive prediction information on the current chroma block and entropy decode through the bitstream.
  • the prediction information may include information indicating the plurality of candidate intra prediction modes for the current chroma block.
  • the information indicating the plurality of candidate intra prediction modes may include information indicating a maximum value among mode numbers of the plurality of candidate intra prediction modes.
  • the information indicating the plurality of candidate intra prediction modes may include information indicating a maximum value among mode numbers of the plurality of candidate intra prediction modes and information indicating the number of the candidate intra prediction modes.
  • Information indicating the plurality of candidate intra prediction modes may be received at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or a block level.
  • the prediction information may include a flag indicating whether an intra prediction mode of the current chroma block is derived based on a linear model.
  • the flag may be received at a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, or at a block level.
  • an intra prediction mode of the current chroma block may be derived using components different from the current chroma block, and prediction may be performed based on neighboring samples of the current chroma block to include noise of the other components.
  • the prediction block of the current chroma block can be generated, thereby improving the prediction accuracy of the current chroma block, thereby improving the overall coding efficiency.
  • an intra prediction mode minimized in terms of distortion among intra prediction modes without transmission of information indicating an intra prediction mode of a current chroma block may be selected as an intra prediction mode of the current chroma block.
  • the amount of bits for prediction of the current chroma block can be reduced, and the overall coding efficiency can be improved.
  • the above-described method according to the present invention may be implemented in software, and the encoding device and / or the decoding device according to the present invention may perform image processing of, for example, a TV, a computer, a smartphone, a set-top box, a display device, and the like. It can be included in the device.
  • the above-described method may be implemented as a module (process, function, etc.) for performing the above-described function.
  • the module may be stored in memory and executed by a processor.
  • the memory may be internal or external to the processor and may be coupled to the processor by various well known means.
  • the processor may include application-specific integrated circuits (ASICs), other chipsets, logic circuits, and / or data processing devices.
  • the memory may include read-only memory (ROM), random access memory (RAM), flash memory, memory card, storage medium and / or other storage device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명에 따른 디코딩 장치에 의하여 수행되는 영상 디코딩 방법은 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출하는 단계, 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성하는 단계, 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는 단계, 및 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출하는 단계를 포함하는 것을 특징으로 한다.

Description

영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치
본 발명은 영상 코딩 기술에 관한 것으로서 보다 상세하게는 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치에 관한 것이다.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 전송되는 정보량 또는 비트량이 증가하기 때문에 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 데이터를 전송하거나 기존의 저장 매체를 이용해 영상 데이터를 저장하는 경우, 전송 비용과 저장 비용이 증가된다.
이에 따라, 고해상도, 고품질 영상의 정보를 효과적으로 전송하거나 저장하고, 재생하기 위해 고효율의 영상 압축 기술이 요구된다.
본 발명의 기술적 과제는 영상 코딩 효율을 높이는 방법 및 장치를 제공함에 있다.
본 발명의 다른 기술적 과제는 현재 크로마 블록과 다른 성분의 대응 블록을 기반으로 수행하는 인트라 예측 방법 및 장치를 제공함에 있다.
본 발명의 다른 기술적 과제는 현재 크로마 블록과 다른 성분의 대응 블록을 기반으로 인트라 예측 모드를 도출하는 예측 방법 및 장치를 제공함에 있다.
본 발명의 일 실시예에 따르면, 디코딩 장치에 의하여 수행되는 영상 디코딩 방법이 제공된다. 상기 방법은 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출하는 단계, 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성하는 단계, 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는 단계, 및 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 다른 일 실시예에 따르면, 영상 디코딩을 수행하는 디코딩 장치가 제공된다. 상기 디코딩 장치는 현재 크로마 블록에 대한 예측 정보를 획득하는 엔트로피 디코딩부, 및 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출하고, 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성하고, 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하고, 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출하는 예측부를 포함하는 것을 특징으로 한다.
본 발명의 또 다른 일 실시예에 따르면, 인코딩 장치에 의하여 수행되는 비디오 인코딩 방법을 제공한다. 상기 방법은 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출하는 단계, 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성하는 단계, 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는 단계, 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출하는 단계, 및 상기 현재 크로마 블록에 대한 예측 정보를 생성하고 인코딩하여 출력하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 또 다른 일 실시예에 따르면, 비디오 인코딩 장치를 제공한다. 상기 인코딩 장치는 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출하고, 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성하고, 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하고, 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출하는 예측부, 및 상기 현재 크로마 블록에 대한 예측 정보를 생성하고 인코딩하여 출력하는 엔트로피 인코딩부를 포함하는 것을 특징으로 한다.
본 발명에 따르면 현재 크로마 블록과 다른 성분을 이용하여 상기 현재 크로마 블록의 인트라 예측 모드를 도출하되, 상기 현재 크로마 블록의 주변 샘플들을 기반으로 예측을 수행할 수 있어 상기 다른 성분의 노이즈를 포함하지 않고 상기 현재 크로마 블록의 예측 블록을 생성할 수 있는바, 상기 현재 크로마 블록의 예측 정확도를 향상시킬 수 있고, 이를 통하여 전반적인 코딩 효율을 향상시킬 수 있다.
본 발명에 따르면 현재 크로마 블록의 인트라 예측 모드를 나타내는 정보의 전송없이 인트라 예측 모드들 중 왜곡(distortion) 과점에서 최소화된 인트라 예측 모드가 상기 현재 크로마 블록의 인트라 예측 모드로 선택될 수 있는바, 상기 현재 크로마 블록의 예측에 대한 비트량을 줄일 수 있고, 전반적인 코딩 효율을 향상시킬 수 있다.
도 1은 본 발명이 적용될 수 있는 비디오 인코딩 장치의 구성을 개략적으로 설명하는 도면이다.
도 2는 본 발명이 적용될 수 있는 비디오 디코딩 장치의 구성을 개략적으로 설명하는 도면이다.
도 3은 상기 현재 블록의 인트라 예측에 사용되는 상기 좌측 주변 샘플들 및 상측 주변 샘플들을 예시적으로 나타낸다.
도 4는 65개의 예측 방향의 인트라 방향성 모드들을 예시적으로 나타낸다.
도 5는 상기 대응 루마 블록과 상기 현재 크로마 블록과의 관계식을 도출하는데 사용되는 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 주변 샘플들을 예시적으로 나타낸다.
도 6은 디코딩 장치에서 복수의 후보 인트라 예측 모드들 중 임시 예측 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 선택하는 일 예를 나타낸다.
도 7은 본 발명에 따른 인코딩 장치에 의한 비디오 인코딩 방법을 개략적으로 나타낸다.
도 8은 본 발명에 따른 디코딩 장치에 의한 비디오 디코딩 방법을 개략적으로 나타낸다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정 실시예에 한정하려고 하는 것이 아니다. 본 명세서에서 상용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서 "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 도는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
한편, 본 발명에서 설명되는 도면상의 각 구성들은 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성 요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다.
본 명세서에서 픽처(picture)는 일반적으로 특정 시간대의 하나의 영상을 나타내는 단위를 의미하며, 슬라이스(slice)는 코딩에 있어서 픽처의 일부를 구성하는 단위이다. 하나의 픽처는 복수의 슬라이스로 구성될 수 있으며, 필요에 따라서 픽처 및 슬라이스는 서로 혼용되어 사용될 수 있다.
픽셀(pixel) 또는 펠(pel)은 하나의 픽처(또는 영상)을 구성하는 최소의 단위를 의미할 수 있다. 또한, 픽셀에 대응하는 용어로서 '샘플(sample)'이 사용될 수 있다. 샘플은 일반적으로 픽셀 또는 픽셀의 값을 나타낼 수 있으며, 휘도(luma) 성분의 픽셀/픽셀값만을 나타낼 수도 있고, 채도(chroma) 성분의 픽셀/픽셀 값만을 나타낼 수도 있다.
유닛(unit)은 영상 처리의 기본 단위를 나타낸다. 유닛은 픽처의 특정 영역 및 해당 영역에 관련된 정보 중 적어도 하나를 포함할 수 있다. 유닛은 경우에 따라서 블록(block) 또는 영역(area) 등의 용어와 혼용하여 사용될 수 있다. 일반적인 경우, MxN 블록은 M개의 열과 N개의 행으로 이루어진 샘플들 또는 변환 계수(transform coefficient)들의 집합을 나타낼 수 있다.
도 1은 본 발명이 적용될 수 있는 비디오 인코딩 장치의 구성을 개략적으로 설명하는 도면이다.
도 1을 참조하면, 비디오 인코딩 장치(100)는 픽처 분할부(105), 예측부(110), 레지듀얼 처리부(120), 엔트로피 인코딩부(130), 가산부(140), 필터부(150) 및 메모리(160)을 포함할 수 있다. 레지듀얼 처리부(120)는 감산부(121), 변환부(122), 양자화부(123), 재정렬부(124), 역양자화부(125) 및 역변환부(126)를 포함할 수 있다.
픽처 분할부(105)는 입력된 픽처를 적어도 하나의 처리 유닛(processing unit)으로 분할할 수 있다.
일 예로, 처리 유닛은 코딩 유닛(coding unit, CU)이라고 불릴 수 있다. 이 경우 코딩 유닛은 최대 코딩 유닛(largest coding unit, LCU)으로부터 QTBT (Quad-tree binary-tree) 구조에 따라 재귀적으로(recursively) 분할될 수 있다. 예를 들어, 하나의 코딩 유닛은 쿼드 트리 구조 및/또는 바이너리 트리 구조를 기반으로 하위(deeper) 뎁스의 복수의 코딩 유닛들로 분할될 수 있다. 이 경우 예를 들어 쿼드 트리 구조가 먼저 적용되고 바이너리 트리 구조가 나중에 적용될 수 있다. 또는 바이너리 트리 구조가 먼저 적용될 수도 있다. 더 이상 분할되지 않는 최종 코딩 유닛을 기반으로 본 발명에 따른 코딩 절차가 수행될 수 있다. 이 경우 영상 특성에 따른 코딩 효율 등을 기반으로, 최대 코딩 유닛이 바로 최종 코딩 유닛으로 사용될 수 있고, 또는 필요에 따라 코딩 유닛은 재귀적으로(recursively) 보다 하위 뎁스의 코딩 유닛들로 분할되어 최적의 사이즈의 코딩 유닛이 최종 코딩 유닛으로 사용될 수 있다. 여기서 코딩 절차라 함은 후술하는 예측, 변환, 및 복원 등의 절차를 포함할 수 있다.
다른 예로, 처리 유닛은 코딩 유닛(coding unit, CU) 예측 유닛(prediction unit, PU) 또는 변환 유닛(transform unit, TU)을 포함할 수도 있다. 코딩 유닛은 최대 코딩 유닛(largest coding unit, LCU)으로부터 쿼드 트리 구조를 따라서 하위(deeper) 뎁스의 코딩 유닛들로 분할(split)될 수 있다. 이 경우 영상 특성에 따른 코딩 효율 등을 기반으로, 최대 코딩 유닛이 바로 최종 코딩 유닛으로 사용될 수 있고, 또는 필요에 따라 코딩 유닛은 재귀적으로(recursively) 보다 하위 뎁스의 코딩 유닛들로 분할되어 최적의 사이즈의 코딩 유닛이 최종 코딩 유닛으로 사용될 수 있다. 최소 코딩 유닛(smallest coding unit, SCU)이 설정된 경우 코딩 유닛은 최소 코딩 유닛보다 더 작은 코딩 유닛으로 분할될 수 없다. 여기서 최종 코딩 유닛이라 함은 예측 유닛 또는 변환 유닛으로 파티셔닝 또는 분할되는 기반이 되는 코딩 유닛을 의미한다. 예측 유닛은 코딩 유닛으로부터 파티셔닝(partitioning)되는 유닛으로서, 샘플 예측의 유닛일 수 있다. 이 때, 예측 유닛은 서브 블록(sub block)으로 나뉠 수도 있다. 변환 유닛은 코딩 유닛으로부터 쿼드 트리 구조를 따라서 분할 될 수 있으며, 변환 계수를 유도하는 유닛 및/또는 변환 계수로부터 레지듀얼 신호(residual signal)를 유도하는 유닛일 수 있다. 이하, 코딩 유닛은 코딩 블록(coding block, CB), 예측 유닛은 예측 블록(prediction block, PB), 변환 유닛은 변환 블록(transform block, TB) 으로 불릴 수 있다. 예측 블록 또는 예측 유닛은 픽처 내에서 블록 형태의 특정 영역을 의미할 수 있고, 예측 샘플의 어레이(array)를 포함할 수 있다. 또한, 변환 블록 또는 변환 유닛은 픽처 내에서 블록 형태의 특정 영역을 의미할 수 있고, 변환 계수 또는 레지듀얼 샘플의 어레이를 포함할 수 있다.
예측부(110)는 처리 대상 블록(이하, 현재 블록이라 함)에 대한 예측을 수행하고, 상기 현재 블록에 대한 예측 샘플들을 포함하는 예측된 블록(predicted block)을 생성할 수 있다. 예측부(110)에서 수행되는 예측의 단위는 코딩 블록일 수 있고, 변환 블록일 수도 있고, 예측 블록일 수도 있다.
예측부(110)는 현재 블록에 인트라 예측이 적용되는지 인터 예측이 적용되는지를 결정할 수 있다. 일 예로, 예측부(110)는 CU 단위로 인트라 예측 또는 인터 예측이 적용되는지를 결정할 수 있다.
인트라 예측의 경우에, 예측부(110)는 현재 블록이 속하는 픽처(이하, 현재 픽처) 내의 현재 블록 외부의 참조 샘플을 기반으로 현재 블록에 대한 예측 샘플을 유도할 수 있다. 이 때, 예측부(110)는 (i) 현재 블록의 주변(neighboring) 참조 샘플들의 평균(average) 혹은 인터폴레이션(interpolation)을 기반으로 예측 샘플을 유도할 수 있고, (ii) 현재 블록의 주변 참조 샘플들 중 예측 샘플에 대하여 특정 (예측) 방향에 존재하는 참조 샘플을 기반으로 상기 예측 샘플을 유도할 수도 있다. (i)의 경우는 비방향성 모드 또는 비각도 모드, (ii)의 경우는 방향성(directional) 모드 또는 각도(angular) 모드라고 불릴 수 있다. 인트라 예측에서 예측 모드는 예를 들어 33개의 방향성 예측 모드와 적어도 2개 이상의 비방향성 모드를 가질 수 있다. 비방향성 모드는 DC 예측 모드 및 플래너 모드(Planar 모드)를 포함할 수 있다. 예측부(110)는 주변 블록에 적용된 예측 모드를 이용하여, 현재 블록에 적용되는 예측 모드를 결정할 수도 있다.
인터 예측의 경우에, 예측부(110)는 참조 픽처 상에서 움직임 벡터에 의해 특정되는 샘플을 기반으로, 현재 블록에 대한 예측 샘플을 유도할 수 있다. 예측부(110)는 스킵(skip) 모드, 머지(merge) 모드, 및 MVP(motion vector prediction) 모드 중 어느 하나를 적용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다. 스킵 모드와 머지 모드의 경우에, 예측부(110)는 주변 블록의 움직임 정보를 현재 블록의 움직임 정보로 이용할 수 있다. 스킵 모드의 경우, 머지 모드와 달리 예측 샘플과 원본 샘플 사이의 차(레지듀얼)가 전송되지 않는다. MVP 모드의 경우, 주변 블록의 움직임 벡터를 움직임 벡터 예측자(Motion Vector Predictor)로 이용하여 현재 블록의 움직임 벡터 예측자로 이용하여 현재 블록의 움직임 벡터를 유도할 수 있다.
인터 예측의 경우에, 주변 블록은 현재 픽처 내에 존재하는 공간적 주변 블록(spatial neighboring block)과 참조 픽처(reference picture)에 존재하는 시간적 주변 블록(temporal neighboring block)을 포함할 수 있다. 상기 시간적 주변 블록을 포함하는 참조 픽처는 동일 위치 픽처(collocated picture, colPic)라고 불릴 수도 있다. 움직임 정보(motion information)는 움직임 벡터와 참조 픽처 인덱스를 포함할 수 있다. 예측 모드 정보와 움직임 정보 등의 정보는 (엔트로피) 인코딩되어 비트스트림 형태로 출력될 수 있다.
스킵 모드와 머지 모드에서 시간적 주변 블록의 움직임 정보가 이용되는 경우에, 참조 픽처 리스트(reference picture list) 상의 최상위 픽처가 참조 픽처로서 이용될 수도 있다. 참조 픽처 리스트(Picture Order Count)에 포함되는 참조 픽처들은 현재 픽처와 해당 참조 픽처 간의 POC(Picture order count) 차이 기반으로 정렬될 수 있다. POC는 픽처의 디스플레이 순서에 대응하며, 코딩 순서와 구분될 수 있다.
감산부(121)는 원본 샘플과 예측 샘플 간의 차이인 레지듀얼 샘플을 생성한다. 스킵 모드가 적용되는 경우에는, 상술한 바와 같이 레지듀얼 샘플을 생성하지 않을 수 있다.
변환부(122)는 변환 블록 단위로 레지듀얼 샘플을 변환하여 변환 계수(transform coefficient)를 생성한다. 변환부(122)는 해당 변환 블록의 사이즈와, 해당 변환 블록과 공간적으로 겹치는 코딩 블록 또는 예측 블록에 적용된 예측 모드에 따라서 변환을 수행할 수 있다. 예컨대, 상기 변환 블록과 겹치는 상기 코딩 블록 또는 상기 예측 블록에 인트라 예측이 적용되었고, 상기 변환 블록이 4×4의 레지듀얼 어레이(array)라면, 레지듀얼 샘플은 DST(Discrete Sine Transform) 변환 커널을 이용하여 변환되고, 그 외의 경우라면 레지듀얼 샘플은 DCT(Discrete Cosine Transform) 변환 커널을 이용하여 변환할 수 있다.
양자화부(123)는 변환 계수들을 양자화하여, 양자화된 변환 계수를 생성할 수 있다.
재정렬부(124)는 양자화된 변환 계수를 재정렬한다. 재정렬부(124)는 계수들 스캐닝(scanning) 방법을 통해 블록 형태의 양자화된 변환 계수들을 1차원 벡터 형태로 재정렬할 수 있다. 여기서 재정렬부(124)는 별도의 구성으로 설명하였으나, 재정렬부(124)는 양자화부(123)의 일부일 수 있다.
엔트로피 인코딩부(130)는 양자화된 변환 계수들에 대한 엔트로피 인코딩을 수행할 수 있다. 엔트로피 인코딩은 예를 들어 지수 골롬(exponential Golomb), CAVLC(context-adaptive variable length coding), CABAC(context-adaptive binary arithmetic coding) 등과 같은 인코딩 방법을 포함할 수 있다. 엔트로피 인코딩부(130)는 양자화된 변환 계수 외 비디오 복원에 필요한 정보들(예컨대 신택스 요소(syntax element)의 값 등)을 함께 또는 별도로 인코딩할 수도 있다. 엔트로피 인코딩된 정보들은 비트스트림 형태로 NAL(network abstraction layer) 유닛 단위로 전송 또는 저장될 수 있다.
역양자화부(125)는 양자화부(123)에서 양자화된 값(양자화된 변환 계수)들을 역양자화하고, 역변환부(126)는 역양자화부(125)에서 역양자화된 값들을 역변환하여 레지듀얼 샘플을 생성한다.
가산부(140)는 레지듀얼 샘플과 예측 샘플을 합쳐서 픽처를 복원한다. 레지듀얼 샘플과 예측 샘플은 블록 단위로 더해져서 복원 블록이 생성될 수 있다. 여기서 가산부(140)는 별도의 구성으로 설명하였으나, 가산부(140)는 예측부(110)의 일부일 수 있다. 한편, 가산부(140)는 복원부 또는 복원 블록 생성부로 불릴 수도 있다.
복원된 픽처(reconstructed picture)에 대하여 필터부(150)는 디블록킹 필터 및/또는 샘플 적응적 오프셋(sample adaptive offset)을 적용할 수 있다. 디블록킹 필터링 및/또는 샘플 적응적 오프셋을 통해, 복원 픽처 내 블록 경계의 아티팩트나 양자화 과정에서의 왜곡이 보정될 수 있다. 샘플 적응적 오프셋은 샘플 단위로 적용될 수 있으며, 디블록킹 필터링의 과정이 완료된 후 적용될 수 있다. 필터부(150)는 ALF(Adaptive Loop Filter)를 복원된 픽처에 적용할 수도 있다. ALF는 디블록킹 필터 및/또는 샘플 적응적 오프셋이 적용된 후의 복원된 픽처에 대하여 적용될 수 있다.
메모리(160)는 복원 픽처(디코딩된 픽처) 또는 인코딩/디코딩에 필요한 정보를 저장할 수 있다. 여기서 복원 픽처는 상기 필터부(150)에 의하여 필터링 절차가 완료된 복원 픽처일 수 있다. 상기 저장된 복원 픽처는 다른 픽처의 (인터) 예측을 위한 참조 픽처로 활용될 수 있다. 예컨대, 메모리(160)는 인터 예측에 사용되는 (참조) 픽처들을 저장할 수 있다. 이 때, 인터 예측에 사용되는 픽처들은 참조 픽처 세트(reference picture set) 혹은 참조 픽처 리스트(reference picture list)에 의해 지정될 수 있다.
도 2는 본 발명이 적용될 수 있는 비디오 디코딩 장치의 구성을 개략적으로 설명하는 도면이다.
도 2를 참조하면, 비디오 디코딩 장치(200)는 엔트로피 디코딩부(210), 레지듀얼 처리부(220), 예측부(230), 가산부(240), 필터부(250) 및 메모리(260)을 포함할 수 있다. 여기서 레지듀얼 처리부(220)는 재정렬부(221), 역양자화부(222), 역변환부(223)을 포함할 수 있다.
비디오 정보를 포함하는 비트스트림이 입력되면, 비디오 디코딩 장치(200)는 비디오 인코딩 장치에서 비디오 정보가 처리된 프로세스에 대응하여 비디오를 복원할 수 있다.
예컨대, 비디오 디코딩 장치(200)는 비디오 인코딩 장치에서 적용된 처리 유닛을 이용하여 비디오 디코딩을 수행할 수 있다. 따라서 비디오 디코딩의 처리 유닛 블록은 일 예로 코딩 유닛일 수 있고, 다른 예로 코딩 유닛, 예측 유닛 또는 변환 유닛일 수 있다. 코딩 유닛은 최대 코딩 유닛으로부터 쿼드 트리 구조 및/또는 바이너리 트리 구조를 따라서 분할될 수 있다.
예측 유닛 및 변환 유닛이 경우에 따라 더 사용될 수 있으며, 이 경우 예측 블록은 코딩 유닛으로부터 도출 또는 파티셔닝되는 블록으로서, 샘플 예측의 유닛일 수 있다. 이 때, 예측 유닛은 서브 블록으로 나뉠 수도 있다. 변환 유닛은 코딩 유닛으로부터 쿼드 트리 구조를 따라서 분할 될 수 있으며, 변환 계수를 유도하는 유닛 또는 변환 계수로부터 레지듀얼 신호를 유도하는 유닛일 수 있다.
엔트로피 디코딩부(210)는 비트스트림을 파싱하여 비디오 복원 또는 픽처 복원에 필요한 정보를 출력할 수 있다. 예컨대, 엔트로피 디코딩부(210)는 지수 골롬 부호화, CAVLC 또는 CABAC 등의 코딩 방법을 기초로 비트스트림 내 정보를 디코딩하고, 비디오 복원에 필요한 신택스 엘리먼트의 값, 레지듀얼에 관한 변환 계수의 양자화된 값 들을 출력할 수 있다.
보다 상세하게, CABAC 엔트로피 디코딩 방법은, 비트스트림에서 각 구문 요소에 해당하는 빈을 수신하고, 디코딩 대상 구문 요소 정보와 주변 및 디코딩 대상 블록의 디코딩 정보 혹은 이전 단계에서 디코딩된 심볼/빈의 정보를 이용하여 문맥(context) 모델을 결정하고, 결정된 문맥 모델에 따라 빈(bin)의 발생 확률을 예측하여 빈의 산술 디코딩(arithmetic decoding)를 수행하여 각 구문 요소의 값에 해당하는 심볼을 생성할 수 있다. 이때, CABAC 엔트로피 디코딩 방법은 문맥 모델 결정 후 다음 심볼/빈의 문맥 모델을 위해 디코딩된 심볼/빈의 정보를 이용하여 문맥 모델을 업데이트할 수 있다.
엔트로피 디코딩부(210)에서 디코딩된 정보 중 예측에 관한 정보는 예측부(230)로 제공되고, 엔트로피 디코딩부(210)에서 엔트로피 디코딩이 수행된 레지듀얼 값, 즉 양자화된 변환 계수는 재정렬부(221)로 입력될 수 있다.
재정렬부(221)는 양자화되어 있는 변환 계수들을 2차원의 블록 형태로 재정렬할 수 있다. 재정렬부(221)는 인코딩 장치에서 수행된 계수 스캐닝에 대응하여 재정렬을 수행할 수 있다. 여기서 재정렬부(221)는 별도의 구성으로 설명하였으나, 재정렬부(221)는 역양자화부(222)의 일부일 수 있다.
역양자화부(222)는 양자화되어 있는 변환 계수들을 (역)양자화 파라미터를 기반으로 역양자화하여 변환 계수를 출력할 수 있다. 이 때, 양자화 파라미터를 유도하기 위한 정보는 인코딩 장치로부터 시그널링될 수 있다.
역변환부(223)는 변환 계수들을 역변환하여 레지듀얼 샘플들을 유도할 수 있다.
예측부(230)는 현재 블록에 대한 예측을 수행하고, 상기 현재 블록에 대한 예측 샘플들을 포함하는 예측된 블록(predicted block)을 생성할 수 있다. 예측부(230)에서 수행되는 예측의 단위는 코딩 블록일 수도 있고, 변환 블록일 수도 있고, 예측 블록일 수도 있다.
예측부(230)는 상기 예측에 관한 정보를 기반으로 인트라 예측을 적용할 것인지 인터 예측을 적용할 것인지를 결정할 수 있다. 이 때, 인트라 예측과 인터 예측 중 어느 것을 적용할 것인지를 결정하는 단위와 예측 샘플을 생성하는 단위는 상이할 수 있다. 아울러, 인터 예측과 인트라 예측에 있어서 예측 샘플을 생성하는 단위 또한 상이할 수 있다. 예를 들어, 인터 예측과 인트라 예측 중 어느 것을 적용할 것인지는 CU 단위로 결정할 수 있다. 또한 예를 들어, 인터 예측에 있어서 PU 단위로 예측 모드를 결정하고 예측 샘플을 생성할 수 있고, 인트라 예측에 있어서 PU 단위로 예측 모드를 결정하고 TU 단위로 예측 샘플을 생성할 수도 있다.
인트라 예측의 경우에, 예측부(230)는 현재 픽처 내의 주변 참조 샘플을 기반으로 현재 블록에 대한 예측 샘플을 유도할 수 있다. 예측부(230)는 현재 블록의 주변 참조 샘플을 기반으로 방향성 모드 또는 비방향성 모드를 적용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다. 이 때, 주변 블록의 인트라 예측 모드를 이용하여 현재 블록에 적용할 예측 모드가 결정될 수도 있다.
인터 예측의 경우에, 예측부(230)는 참조 픽처 상에서 움직임 벡터에 의해 참조 픽처 상에서 특정되는 샘플을 기반으로 현재 블록에 대한 예측 샘플을 유도할 수 있다. 예측부(230)는 스킵(skip) 모드, 머지(merge) 모드 및 MVP 모드 중 어느 하나를 적용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다. 이때, 비디오 인코딩 장치에서 제공된 현재 블록의 인터 예측에 필요한 움직임 정보, 예컨대 움직임 벡터, 참조 픽처 인덱스 등에 관한 정보는 상기 예측에 관한 정보를 기반으로 획득 또는 유도될 수 있다
스킵 모드와 머지 모드의 경우에, 주변 블록의 움직임 정보가 현재 블록의 움직임 정보로 이용될 수 있다. 이 때, 주변 블록은 공간적 주변 블록과 시간적 주변 블록을 포함할 수 있다.
예측부(230)는 가용한 주변 블록의 움직임 정보로 머지 후보 리스트를 구성하고, 머지 인덱스가 머지 후보 리스트 상에서 지시하는 정보를 현재 블록의 움직임 벡터로 사용할 수 있다. 머지 인덱스는 인코딩 장치로부터 시그널링될 수 있다. 움직임 정보는 움직임 벡터와 참조 픽처를 포함할 수 있다.
스킵 모드의 경우, 머지 모드와 달리 예측 샘플과 원본 샘플 사이의 차이(레지듀얼)이 전송되지 않는다.
MVP 모드의 경우, 주변 블록의 움직임 벡터를 움직임 벡터 예측자(motion vector predictor)로 이용하여 현재 블록의 움직임 벡터가 유도될 수 있다. 이 때, 주변 블록은 공간적 주변 블록과 시간적 주변 블록을 포함할 수 있다.
일 예로, 머지 모드가 적용되는 경우, 복원된 공간적 주변 블록의 움직임 벡터 및/또는 시간적 주변 블록인 Col 블록에 대응하는 움직임 벡터를 이용하여, 머지 후보 리스트가 생성될 수 있다. 머지 모드에서는 머지 후보 리스트에서 선택된 후보 블록의 움직임 벡터가 현재 블록의 움직임 벡터로 사용된다. 상기 예측에 관한 정보는 상기 머지 후보 리스트에 포함된 후보 블록들 중에서 선택된 최적의 움직임 벡터를 갖는 후보 블록을 지시하는 머지 인덱스를 포함할 수 있다. 이 때, 예측부(230)는 상기 머지 인덱스를 이용하여, 현재 블록의 움직임 벡터를 도출할 수 있다.
다른 예로, MVP(Motion Vector Prediction) 모드가 적용되는 경우, 복원된 공간적 주변 블록의 움직임 벡터 및/또는 시간적 주변 블록인 Col 블록에 대응하는 움직임 벡터를 이용하여, 움직임 벡터 예측자 후보 리스트가 생성될 수 있다. 즉, 복원된 공간적 주변 블록의 움직임 벡터 및/또는 시간적 주변 블록인 Col 블록에 대응하는 움직임 벡터는 움직임 벡터 후보로 사용될 수 있다. 상기 예측에 관한 정보는 상기 리스트에 포함된 움직임 벡터 후보 중에서 선택된 최적의 움직임 벡터를 지시하는 예측 움직임 벡터 인덱스를 포함할 수 있다. 이 때, 예측부(230)는 상기 움직임 벡터 인덱스를 이용하여, 움직임 벡터 후보 리스트에 포함된 움직임 벡터 후보 중에서, 현재 블록의 예측 움직임 벡터를 선택할 수 있다. 인코딩 장치의 예측부는 현재 블록의 움직임 벡터와 움직임 벡터 예측자 간의 움직임 벡터 차분(MVD)을 구할 수 있고, 이를 인코딩하여 비트스트림 형태로 출력할 수 있다. 즉, MVD는 현재 블록의 움직임 벡터에서 상기 움직임 벡터 예측자를 뺀 값으로 구해질 수 있다. 이 때, 예측부(230)는 상기 예측에 관한 정보에 포함된 움직임 벡터 차분을 획득하고, 상기 움직임 벡터 차분과 상기 움직임 벡터 예측자의 가산을 통해 현재 블록의 상기 움직임 벡터를 도출할 수 있다. 예측부는 또한 참조 픽처를 지시하는 참조 픽처 인덱스 등을 상기 예측에 관한 정보로부터 획득 또는 유도할 수 있다.
가산부(240)는 레지듀얼 샘플과 예측 샘플을 더하여 현재 블록 혹은 현재 픽처를 복원할 수 있다. 가산부(240)는 레지듀얼 샘플과 예측 샘플을 블록 단위로 더하여 현재 픽처를 복원할 수도 있다. 스킵 모드가 적용된 경우에는 레지듀얼이 전송되지 않으므로, 예측 샘플이 복원 샘플이 될 수 있다. 여기서는 가산부(240)를 별도의 구성으로 설명하였으나, 가산부(240)는 예측부(230)의 일부일 수도 있다. 한편, 가산부(240)는 복원부 또는 복원 블록 생성부로 불릴 수도 있다.
필터부(250)는 복원된 픽처에 디블록킹 필터링 샘플 적응적 오프셋, 및/또는 ALF 등을 적용할 수 있다. 이 때, 샘플 적응적 오프셋은 샘플 단위로 적용될 수 있으며, 디블록킹 필터링 이후 적용될 수도 있다. ALF는 디블록킹 필터링 및/또는 샘플 적응적 오프셋 이후 적용될 수도 있다.
메모리(260)는 복원 픽처(디코딩된 픽처) 또는 디코딩에 필요한 정보를 저장할 수 있다. 여기서 복원 픽처는 상기 필터부(250)에 의하여 필터링 절차가 완료된 복원 픽처일 수 있다. 예컨대, 메모리(260)는 인터 예측에 사용되는 픽처들을 저장할 수 있다. 이 때, 인터 예측에 사용되는 픽처들은 참조 픽처 세트 혹은 참조 픽처 리스트에 의해 지정될 수도 있다. 복원된 픽처는 다른 픽처에 대한 참조 픽처로서 이용될 수 있다. 또한, 메모리(260)는 복원된 픽처를 출력 순서에 따라서 출력할 수도 있다.
상술한 내용과 같이 현재 블록에 예측이 수행되는 경우, 인트라 예측 모드를 기반으로 상기 예측이 수행될 수 있다. 예를 들어, 상기 현재 블록의 디코딩 시점에 이미 인코딩/디코딩이 수행된 주변 샘플을 기반으로 상기 인트라 예측이 수행될 수 있다. 즉, 상기 현재 블록의 예측 샘플은 이미 복원된 상기 현재 블록의 좌측 주변 샘플들 및 상측 주변 샘플들을 사용하여 복원될 수 있다. 상기 좌측 주변 샘플들 및 상기 상측 주변 샘플들은 다음 도 3과 같이 나타낼 수 있다.
도 3은 상기 현재 블록의 인트라 예측에 사용되는 상기 좌측 주변 샘플들 및 상측 주변 샘플들을 예시적으로 나타낸다. 상기 현재 블록에 인트라 예측이 수행되는 경우, 상기 현재 블록에 대한 인트라 예측 모드가 도출될 수 있고, 상기 인트라 예측 모드에 따라 상기 좌측 주변 샘플들 및 상측 주변 샘플들 중 적어도 하나를 이용하여 상기 현재 블록에 대한 예측 샘플이 생성될 수 있다. 여기서, 인트라 예측 모드는 2개의 비방향성 인트라 예측 모드들과 33개의 방향성 인트라 예측 모드들을 포함할 수 있다. 상기 비방향성 인트라 예측 모드들은 플래너(planar) 인트라 예측 모드 및 DC 인트라 예측 모드를 포함할 수 있고, 상기 방향성 인트라 예측 모드들은 2번 내지 34번 인트라 예측 모드들을 포함할 수 있다. 상기 플래너 인트라 예측 모드는 플래너 모드라고 불릴 수 있고, 상기 DC 인트라 예측 모드는 DC 모드라고 불릴 수 있다. 또한, 10번 인트라 예측 모드는 수평 인트라 예측 모드(horizontal intra prediction mode) 또는 수평 모드, 26번 인트라 예측 모드는 수직 인트라 예측 모드(vertical intra prediction mode) 또는 수직 모드를 나타내며 이를 기준으로 방향성 인트라 모드(angular intra mode)의 예측 방향을 각도로 표현할 수 있다. 다시 말하자면, 10번 인트라 예측 모드에 대응하는 수평기준각도 0˚를 기준으로 하여 각 인트라 예측 모드에 대응하는 상대적 각도를 표현할 수 있고, 26번 인트라 예측 모드에 대응하는 수직기준각도 0˚를 기준으로 하여 각 인트라 예측 모드에 대응하는 상대적 각도를 표현할 수 있다.
또한, 고화질의 비디오에 대한 수요가 늘어나고 있고, 이에 따른 비디오 코덱의 효율을 높이기 위해 방향성 인트라 예측 방향의 수가 65개로 증가할 수 있다. 즉, 인트라 예측 모드는 2개의 비방향성 인트라 예측 모드들과 65개의 방향성 인트라 예측 모드들을 포함할 수 있다. 상기 비방향성 인트라 예측 모드들은 플래너(planar) 인트라 예측 모드 및 DC 인트라 예측 모드를 포함할 수 있고, 상기 방향성 인트라 예측 모드들은 2번 내지 66번 인트라 예측 모드들을 포함할 수 있다.
도 4는 65개의 예측 방향의 인트라 방향성 모드들을 예시적으로 나타낸다.
도 4를 참조하면, 좌상 대각 예측 방향을 갖는 34번 인트라 예측 모드를 중심으로 수평 방향성(horizontal directionality)을 갖는 인트라 예측 모드와 수직 방향성(vertical directionality)을 갖는 인트라 예측 모드를 구분할 수 있다. 도 4의 H와 V는 각각 수평 방향성과 수직 방향성을 의미하며, -32 ~ 32의 숫자는 샘플 그리드 포지션(sample grid position) 상에서 1/32 단위의 변위를 나타낸다. 2번 내지 33번 인트라 예측 모드는 수평 방향성, 34번 내지 66번 인트라 예측 모드는 수직 방향성을 갖는다. 18번 인트라 예측 모드와 50번 인트라 예측 모드는 각각 수평 인트라 예측 모드(horizontal intra prediction mode), 수직 인트라 예측 모드(vertical intra prediction mode)를 나타내며 이를 기준으로 방향성 인트라 예측 모드(angular intra prediction mode)의 예측 방향을 각도로 표현할 수 있다. 다시 말하자면, 18번 인트라 예측 모드에 대응하는 수평기준각도 0˚를 기준으로 하여 각 인트라 예측 모드에 대응하는 상대적 각도를 표현할 수 있고, 50번 인트라 예측 모드에 대응하는 수직기준각도 0˚를 기준으로 하여 각 인트라 예측 모드에 대응하는 상대적 각도를 표현할 수 있다.
한편, 상기 현재 블록의 크로마 성분에 대하여 인트라 예측이 수행되는 경우, 이미 디코딩되어 복원된 상기 현재 블록의 루마 성분 또는 상기 크로마 성분과 다른 크로마 성분이 상기 현재 블록의 크로마 성분에 대한 인트라 예측에 사용될 수 있다.
예를 들어, 입력 영상의 컬러 포맷(colour format)이 YCbCr 4:2:0 컬러 포맷이고, 루마 성분에 대한 인코딩/디코딩 과정이 완료된 경우, 다음 순서로 크로마 Cb 성분, 크로마 Cr 성분이 디코딩 되는 과정에서 상기 루마 성분의 인코딩/디코딩 정보가 사용될 수 있다. 상기 입력 영상의 컬러 포맷이 4:2:0 컬러 포맷인 경우, 상기 루마 성분이 각 크로마 성분보다 4배 많은 데이터를 가지고 있으므로, 상기 루마 성분은 각 크로마 성분에 맞춰 다운 샘플링(down sampling)될 수 있고, 상기 다운 샘플링된 루마 성분이 상기 각 크로마 성분의 인트라 예측에 사용될 수 있다. 여기서, 상기 현재 블록의 상기 크로마 성분은 현재 크로마 블록이라고 나타낼 수 있고, 상기 크로마 성분에 대응하는 루마 성분은 대응 루마 블록이라고 나타낼 수 있다.
구체적으로, 상기 대응 루마 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측을 수행하는 방법은 후술하는 바와 같을 수 있다.
도 5는 상기 대응 루마 블록과 상기 현재 크로마 블록과의 관계식을 도출하는데 사용되는 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 주변 샘플들을 예시적으로 나타낸다. 도 5를 참조하면 상기 현재 크로마 블록의 주변 샘플들과 대응하는 상기 대응 루마 블록의 주변 샘플들이 도출될 수 있다. 상기 현재 크로마 블록의 주변 샘플들은 상기 현재 크로마 블록의 좌측 주변 샘플들, 좌상측 주변 샘플 및 상측 주변 샘플들을 포함할 수 있다. 여기서, 상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플의 x성분이 0 및 y성분이 0인 경우, 상기 좌측 주변 샘플들은 p[-1][0] 내지 p[-1][N-1], 상기 좌상측 주변 샘플은 p[-1][-1], 상기 상측 주변 샘플들은 p[0][-1] 내지 p[M-1][-1] 일 수 있다.
이 경우, 상기 대응 루마 블록의 주변 샘플들 및 상기 현재 크로마 블록의 주변 샘플들을 기반으로 상기 대응 루마 블록과 상기 현재 크로마 블록과의 선형 모델(linear model)이 도출될 수 있고, 상기 선형 모델 및 상기 루마 블록의 복원 샘플들을 기반으로 상기 크로마 블록의 예측 샘플들이 도출될 수 있다. 상기 선형 모델은 상기 대응 루마 블록과 상기 현재 크로마 블록과의 관계식으로 나타낼 수 있다. 다시 말해, 상기 대응 루마 블록의 주변 샘플들 및 상기 현재 크로마 블록의 주변 샘플들을 기반으로 상기 관계식을 도출하고, 상기 관계식 및 상기 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 예측 샘플들이 도출될 수 있는바, 상술한 바와 같이 상기 현재 크로마 블록과 상기 현재 크로마 블록에 대응하는 상기 대응 루마 블록과의 상관성(correlation)을 이용한 인트라 예측 모드는 LM(linear model) 모드라고 나타낼 수 있다. 구체적으로, 상기 현재 크로마 블록의 주변 샘플들 및 상기 현재 크로마 블록의 주변 샘플들에 대응하는 상기 대응 루마 블록의 주변 샘플들을 기반으로 상기 관계식의 파라미터들이 도출될 수 있다. 상기 관계식의 파라미터들은 상기 관계식의 계수(coefficient)와 오프셋(offset)을 포함할 수 있다. 즉, 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 주변 샘플들을 기반으로 상기 관계식의 계수 및 오프셋이 도출될 수 있다. 상기 계수는 스케일링 펙터(scaling factor)라고 불릴 수도 있다. 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 주변 샘플들을 기반으로 도출되는 상기 관계식은 다음의 수학식과 같이 나타낼 수 있다.
Figure PCTKR2018000246-appb-M000001
여기서, Refcb 는 상기 현재 크로마 블록의 주변 샘플, RefY 는 상기 대응 루마 블록의 주변 샘플, α는 상기 관계식의 계수, β는 상기 관계식의 오프셋을 나타낼 수 있다.
구체적으로, 상기 파라미터인 상기 α 및 β는 현재 크로마 블록의 주변 샘플들과 상기 대응 루마 블록의 주변 샘플들이 가장 유사해지는 값을 최소자승법을 이용하여 계산한다. 이 경우 상기 대응 루마 블록의 주변 샘플들은 다운샘플링되어 사용될 수 있다.
예를 들어, 상기 α 및 상기 β는 다음과 같은 수학식을 기반으로 도출될 수 있다.
Figure PCTKR2018000246-appb-M000002
여기서, 상기 파라미터들인 α 및 β는 각각 상기 계수 및 상기 오프셋을 나타내며, Refcb 는 상기 현재 크로마 블록의 (다운샘플링된) 주변 샘플, RefY 는 상기 대응 루마 블록의 주변 샘플을 나타낸다. 상기 파라미터 도출 과정에서는 상기 수학식 2의 양 변의 차이를 에러(E)로 볼 수 있으며, 코딩 장치는 상기 에러를 최소화 시켜주는 조건을 만족하는 파라미터들 α 및 β를 구할 수 있다.
상기 수학식 2에서 구하고자 하는 파라미터들 α 및 β는 결국 양변의 에러를 최소화 하는 값이므로, 상기 파라미터들을 구하기 위한 수학식은 다음과 같이 나타내어질 수 있다.
Figure PCTKR2018000246-appb-M000003
여기서, E(α, β)는 에러를 최소화하는 α 및 β값을 나타내며, 여기서 i는 각 샘플의 인덱싱, λ(람다)는 제어 파라미터(control parameter)를 나타낸다. 상기 λ는 미리 정해질 수 있고, 또는 예를 들어, 상기 대응 루마 블록의 주변 샘플을 기반으로 도출될 수 있다. 일 예로,
Figure PCTKR2018000246-appb-I000001
와 같이 도출될 수 있고, 다른 예로 λ가 0으로 설정되어 상기 수학식 3의 후단은 생략될 수도 있다. 이는 후술하는 수학식들에서도 마찬가지이다.
상기 수학식 3를 정리하면 다음과 같이 나타낼 수 있다.
Figure PCTKR2018000246-appb-M000004
상기 수학식 4를 기반으로 상기 파라미터들 α 및 β는 다음과 같이 도출될 수 있다.
Figure PCTKR2018000246-appb-M000006
상기 수학식 5에서 N은 정규화 파라미터(normalization parameter)를 나타낸다. 여기서 N은 상기 수학식 4의
Figure PCTKR2018000246-appb-I000002
부분으로부터 도출될 수 있다. 예를 들어, N은 상기 현재 크로마 블록의 사이즈를 기반으로 결정될 수 있다.
상술한 내용과 같이 상기 계수 α 및 상기 오프셋 β 가 도출된 경우, 상기 파라미터들이 상기 대응 루마 블록의 복원 샘플이 적용되어 상기 현재 크로마 블록의 예측 샘플이 도출될 수 있다. 상기 대응 루마 블록의 복원 샘플들이 적용된 상기 관계식은 다음의 수학식과 같이 나타낼 수 있다.
Figure PCTKR2018000246-appb-M000007
여기서, predcb(i,j)는 상기 현재 크로마 블록의 (i,j) 좌표의 예측 샘플, recY'(i,j)는 상기 대응 루마 블록의 (i,j) 좌표의 복원 샘플, α는 상기 계수, β는 상기 오프셋을 나타낼 수 있다. 한편, 상기 recY'(i,j)는 상기 대응 루마 블록의 다운 샘플링(down-sampled)된 복원 샘플을 나타낼 수 있다.
한편, 상술한 내용과 같이 상기 선형 모델을 나타내는 관계식의 파라미터 α 및 파라미터 β 는 상기 현재 루마 블록의 인트라 예측에 사용되는 주변 샘플들 및 상기 현재 크로마 블록의 주변 샘플들 및 상기 루마 블록의 주변 샘플들로부터 도출될 수 있는바, 상기 현재 크로마 블록에 선형 모델을 사용한 예측이 수행되는지 여부를 나타내는 정보가 전송되는 것만으로 상술한 방법의 인트라 예측이 활용될 수 있다.
한편, 실시예에서는 루마 성분과 크로마 Cb 성분과의 상관성을 이용하여 상기 크로마 Cb 성분의 예측을 수행하는 방법을 나타내고 있으나, 상기 루마 성분과 크로마 Cb 성분뿐만 아니라 다른 성분들 간의 상관성을 기반으로 인트라 예측이 수행될 수 있다. 또한, 상술한 선형 모델뿐만 아니라 성분들 간의 관계를 정의하는 다양한 모델링 기법에 의해 인트라 예측이 수행될 수 있다. 또한, 입력 영상의 컬러 포맷이 YCbCr 4:2:0 컬러 포맷인 경우에 국한되지 않고, 상기 입력 영상의 컬러 포맷이 각 성분간의 변환(conversion)이 가능한 컬러 포맷이면 상술한 예측 방법이 적용될 수 있다. 특히, 입력 영상의 컬러 포맷이 RGB 컬러 포맷이나 YCbCr 4:4:4 컬러 포맷과 같이 모든 성분의 정보의 양이 동일한 컬러 포맷인 경우, 루마 성분에 대한 다운 샘플링(Down-sampling)은 생략될 수 있다.
한편, 상술한 내용과 같이 상기 현재 크로마 블록의 예측을 위하여 상기 현재 크로마 블록과 상기 대응 루마 블록과의 관계식이 도출되고, 상기 관계식 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 생성된 예측 블록(predicted block)이 상기 현재 크로마 블록의 예측 블록으로 도출될 수 있지만, 상기 관계식 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 생성된 예측 블록과 복수의 예측 모드들을 통하여 생성된 예측 블록들을 비교하여 최적의 예측 블록이 생성되는 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 도출하는 방법이 제안될 수 있다. 한편, 후술하는 임시 예측 블록은 상기 관계식 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 생성된 예측 블록을 나타낼 수 있다.
구체적으로, 상기 현재 크로마 블록의 주변 샘플들이 도출될 수 있고, 상기 주변 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록이 생성될 수 있고, 또는, 상술한 내용과 같이 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 주변 샘플들로부터 도출된 관계식을 기반으로 상기 현재 크로마 블록의 임시 예측 블록이 생성될 수 있다. 이 경우, 복수의 후보 인트라 예측 모드들을 기반으로 상기 현재 크로마 블록의 후보 예측 블록들이 생성될 수 있고, 상기 후보 예측 블록들 중 루마 성분의 복원 블록, 즉, 상기 임시 예측 블록과 가장 오차가 적은 후보 예측 블록이 생성되는 후보 인트라 예측 모드는 상기 현재 크로마 블록의 인트라 예측 모드로 도출될 수 있다.
한편, 상술한 선형 모델뿐만 아니라 성분들 간의 관계를 정의하는 다양한 모델링 기법에 의해 상기 임시 예측 블록이 생성될 수도 있다. 또한, 입력 영상의 컬러 포맷이 YCbCr 4:2:0 컬러 포맷인 경우에 국한되지 않고, 상기 입력 영상의 컬러 포맷이 각 성분간의 변환(conversion)이 가능한 컬러 포맷이면 상술한 예측 방법을 기반으로 상기 임시 예측 블록이 생성될 수 있다. 특히, 입력 영상의 컬러 포맷이 RGB 컬러 포맷이나 YCbCr 4:4:4 컬러 포맷과 같이 모든 성분의 정보의 양이 동일한 컬러 포맷인 경우, 루마 성분에 대한 다운 샘플링(Down-sampling)은 생략될 수 있다.
한편, 상술한 방법의 적용 여부, 즉, 상기 현재 크로마 블록과 상기 대응 루마 블록과의 관계식을 기반으로 상기 임시 예측 블록을 생성하고 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는 방법은 상기 현재 크로마 블록과 대응하는 복원된 상기 대응 루마 블록 또는 상기 현재 크로마 블록과 다른 크로마 성분의 복원된 대응 크로마 블록이 존재하면 항상 상기 현재 크로마 블록에 대하여 적용될 수 있다. 또는, 코딩 블록(coding block) 단위, 슬라이스(slice) 단위, 픽처(picture) 단위 또는 시퀀스(sequence) 단위로 상술한 방법의 적용 여부를 나타내는 정보가 전송될 수 있고, 상기 정보를 기반으로 상기 현재 크로마 블록에 대한 상술한 방법의 적용 여부가 판단될 수 있다.
한편, 상기 임시 예측 블록과 비교되는 예측 블록들에 대한 상기 복수의 후보 인트라 예측 모드들의 종류 및 개수는 인코딩 장치와 디코딩 장치 사이의 상호 약속되어 있을 수 있다. 즉, 상기 복수의 후보 인트라 예측 모드들은 기설정된 복수의 인트라 예측 모드들로 도출될 수 있다. 또는, 인코딩 장치는 디코딩 장치로 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 전송할 수 있다. 예를 들어, 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨로 전송될 수 있다. 또는 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상술한 파라미터 셋들을 제외한 부가 정보 전송 문법에 의하여 전송될 수 있다.
한편, 상술한 LM 모드를 기반으로 상기 현재 크로마 블록의 예측 블록이 생성되는 경우, 상기 현재 크로마 블록의 예측 블록은 복원된 상기 대응 루마 블록에 기반하여 생성되므로 노이즈(noise) 부분이 포함될 수 있으나, 상술한 방법에 따르면 상기 LM 모드를 기반으로 도출된 임시 예측 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드가 도출될 수 있고, 상기 도출된 인트라 예측 모드에 따라 상기 현재 크로마 블록의 주변 참조 샘플들을 기반으로 상기 현재 크로마 블록의 예측 블록이 생성될 수 있으므로, 이에 상기 노이즈 부분이 포함되지 않아 상기 현재 크로마 블록의 예측 정확도가 향상될 수 있다. 또한, 상술한 방법의 적용 여부, 즉, 상기 LM 모드를 기반으로 임시 예측 블록을 도출하고, 상기 도출된 임시 예측 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는 방법의 적용 여부를 나타내는 플래그 정보의 전송만으로 다양한 인트라 예측 모드들을 기반으로 상기 현재 크로마 블록에 대한 예측이 수행될 수 있고, 상기 인트라 예측 모드들 중 왜곡(distortion) 관점에서 최소화된 인트라 예측 모드가 상기 현재 크로마 블록의 인트라 예측 모드로 선택될 수 있는바, 이를 통하여 상기 현재 크로마 블록의 예측 정확도가 향상되는 효과를 얻을 수 있다. 한편, 상술한 방법은 새로운 인트라 예측 모드로 정의되어 추가될 있고, 또는, 기존의 인트라 예측 모드를 대체할 수도 있다.
도 6은 디코딩 장치에서 복수의 후보 인트라 예측 모드들 중 임시 예측 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 선택하는 일 예를 나타낸다. 도 6을 참조하면 디코딩 장치는 상기 현재 크로마 블록의 성분과 다른 성분의 디코딩된 대응 블록이 존재하는지 판단할 수 있다(S600). 예를 들어, 상기 현재 크로마 블록이 크로마 Cb 성분의 블록인 경우, 디코딩 장치는 디코딩된 루마 성분의 대응 루마 블록 또는 크로마 Cr 성분의 대응 크로마 블록이 존재하는지 판단할 수 있다. 또는, 상기 현재 크로마 블록이 크로마 Cr 성분의 블록인 경우, 디코딩 장치는 디코딩된 루마 성분의 대응 루마 블록 또는 크로마 Cb 성분의 대응 크로마 블록이 존재하는지 판단할 수 있다. 한편, 상기 현재 크로마 블록의 성분과 다른 성분의 디코딩된 대응 블록이 존재하지 않는 경우, 상기 현재 크로마 블록의 인트라 예측에 상술한 임시 예측 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는 방법은 적용되지 않을 수 있다.
상기 현재 크로마 블록의 성분과 다른 성분의 디코딩된 대응 블록이 존재하는 경우, 디코딩 장치는 상기 현재 크로마 블록에 대한 모델을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부를 나타내는 플래그를 파싱(parsing)할 수 있다(S605). 또한, 디코딩 장치는 상기 플래그의 값이 1인지 판단할 수 있다(S610). 여기서, 상기 현재 크로마 블록에 대한 모델은 상기 현재 크로마 블록과 상기 대응 블록과의 관계를 나타내는 것으로, 상기 모델은 선형 모델을 나타낼 수 있고, 선형 모델 이외의 모델을 나타낼 수도 있다. 상기 플래그의 값이 1인 경우, 상기 플래그는 상기 현재 크로마 블록에 대한 모델을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출함을 나타낼 수 있고, 상기 플래그의 값이 0인 경우, 상기 플래그는 상기 현재 크로마 블록에 대한 모델을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하지 않음을 나타낼 수 있다. 즉, 디코딩 장치는 상기 플래그의 값을 기반으로 상기 대응 블록과 상기 현재 크로마 블록과의 관계식(즉, 예를 들어, 상기 현재 크로마 블록의 선형 모델 파라미터들)을 기반으로 상기 임시 예측 블록을 생성하고, 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 선택할지 여부를 결정할 수 있다. 상기 플래그의 값이 0인 경우, 상기 현재 크로마 블록의 인트라 예측에 상술한 임시 예측 블록을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는 방법은 적용되지 않을 수 있다.
상기 플래그의 값이 1인 경우, 디코딩 장치는 상기 현재 크로마 블록의 주변 샘플들을 도출 및/또는 상기 대응 블록의 주변 샘플들 및 상기 현재 크로마 블록과 상기 대응 블록과의 모델을 도출할 수 있고(S615), 상기 대응 블록의 주변 샘플들 및 상기 현재 크로마 블록과 상기 대응 블록과의 모델이 도출된 경우, 상기 대응 블록의 주변 샘플들을 변환(convert)할 수 있다(S620). 상기 모델이 도출된 경우, 디코딩 장치는 상기 대응 블록의 주변 샘플들을 다운샘플링할 수 있고, 다운샘플링된 상기 대응 블록의 주변 샘플들 및 상기 현재 크로마 블록의 주변 샘플들을 기반으로 상기 모델을 나타내는 관계식의 파라미터들을 도출할 수 있고, 상기 파라미터들을 상기 대응 블록의 복원 샘플에 적용하여 상기 현재 크로마 블록의 임시 예측 블록을 도출할 수 있다. 상기 임시 예측 블록은 상술한 수학식 7을 기반으로 도출될 수 있다. 한편, 상기 모델이 도출되지 않은 경우, 디코딩 장치는 상기 현재 크로마 블록의 주변 샘플들을 기반으로 인트라 예측을 수행하여 임시 예측 블록을 도출할 수 있다. 여기서, 상기 모델은 선형 모델(linear model)일 수 있다.
디코딩 장치는 디스토션(distortion) 최대값을 최소 디스토션으로 설정할 수 있다(S625). 도 6의 MINDIST는 상기 최소 디스토션을 나타낼 수 있다. 상기 디스토션 최대값은 기설정된 값일 수 있다.
디코딩 장치는 인코딩 예측 모드 번호의 최대값을 설정할 수 있다(S630). 디코딩 장치는 상기 임시 예측 블록을 기반으로 비교할 인트라 예측 모드들을 도출할 수 있는바, 상기 최대값과 같거나 작은 번호의 인트라 예측 모드들을 비교할 수 있고, 상기 최대값과 같거나 작은 번호의 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다. 즉, 상기 최대값보다 큰 번호의 인트라 예측 모드들은 상기 임시 예측 블록을 기반으로 비교되는 인트라 예측 모드들에 포함되지 않을 수 있다. 한편, 상기 최대값은 기설정된 값일 수 있고, 또는, 수신된 상기 최대값을 나타내는 정보를 기반으로 도출될 수도 있다. 상기 최대값을 나타내는 정보는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 전송될 수 있다.
상기 최대값이 설정된 경우, 디코딩 장치는 현재 크로마 블록의 현재 인트라 예측 모드의 모드 번호가 상기 최대값 이하인지 판단할 수 있다(S635). 상기 현재 인트라 예측 모드의 모드 번호가 상기 최대값 이하인 경우, 디코딩 장치는 상기 현재 인트라 예측 모드를 기반으로 예측을 수행하여 예측 블록을 생성할 수 있다(S640).
디코딩 장치는 상기 현재 인트라 예측 모드를 기반으로 생성된 상기 예측 블록의 디스토션을 계산할 수 있고(S645), 상기 현재 인트라 예측 모드를 기반으로 생성된 상기 예측 블록의 디스토션이 상기 최소 디스토션보다 작은지 판단할 수 있다(S650). 디코딩 장치는 상기 현재 인트라 예측 모드를 기반으로 생성된 상기 예측 블록의 디스토션을 계산할 수 있고, 상기 디스토션이 상기 최소 디스토션보다 작은지 판단할 수 있다. 여기서, 도 6의 CURDIST는 상기 현재 인트라 예측 모드를 기반으로 생성된 상기 예측 블록의 디스토션을 나타낼 수 있다. 또한, 상기 예측 블록의 디스토션은 상기 예측 블록과 상기 임시 예측 블록 사이의 디스토션 정도를 나타낼 수 있다. 즉, 상기 예측 블록의 디스토션은 상기 예측 블록의 상기 임시 예측 블록과의 차이 정도를 나타낼 수 있다. 상기 예측 블록의 디스토션이 상기 최소 디스토션보다 작지 않은 경우, 디코딩 장치는 상기 현재 인트라 예측 모드의 모드 번호에 1을 더한 모드 번호의 인트라 예측 모드에 대한 판단을 수행할 수 있다.
상기 예측 블록의 디스토션이 상기 최소 디스토션보다 작은 경우, 디코딩 장치는 상기 현재 인트라 예측 모드를 상기 현재 크로마 블록에 대한 최적의 인트라 예측 모드로 설정할 수 있다(S655). 또한, 디코딩 장치는 상기 현재 인트라 예측 모드를 기반으로 생성된 상기 예측 블록의 디스토션을 최소 디스토션으로 설정할 수 있다(S660). 다음으로, 디코딩 장치는 상기 현재 인트라 예측 모드의 모드 번호에 1을 더한 모드 번호의 인트라 예측 모드에 대한 판단을 수행할 수 있다(S665). 이를 통하여, 디코딩 장치는 기설정된 복수의 후보 인트라 예측 모드들, 또는 전송된 정보를 기반으로 도출된 복수의 후보 인트라 예측 모드들을 모드 번호 순으로 비교할 수 있고, 최소 디스토션을 갖는 예측 블록이 생성되는 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 도출할 수 있다.
도 7은 본 발명에 따른 인코딩 장치에 의한 비디오 인코딩 방법을 개략적으로 나타낸다. 도 7에서 개시된 방법은 도 1에서 개시된 인코딩 장치에 의하여 수행될 수 있다. 구체적으로 예를 들어, 도 7의 S700 내지 S730은 상기 인코딩 장치의 예측부에 의하여 수행될 수 있고, S740은 상기 인코딩 장치의 엔트로피 인코딩부에 의하여 수행될 수 있다.
인코딩 장치는 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출한다(S700). 인코딩 장치는 상기 현재 크로마 블록의 상기 주변 샘플들 및 상기 대응 블록의 상기 주변 샘플들을 도출할 수 있다. 상기 대응 블록은 루마 성분의 대응 루마 블록 또는 상기 현재 크로마 블록의 크로마 성분 이외의 크로마 성분의 대응 크로마 블록일 수 있다. 예를 들어, 상기 현재 크로마 블록의 크로마 성분이 크로마 Cb 성분인 경우, 상기 대응 블록은 루마 성분의 대응 루마 블록 또는 크로마 Cr 성분의 대응 크로마 블록일 수 있다. 또는, 상기 현재 크로마 블록의 크로마 성분이 크로마 Cr 성분인 경우, 상기 대응 블록은 루마 성분의 대응 루마 블록 또는 크로마 Cb 성분의 대응 크로마 블록일 수 있다. 이 경우, 상기 대응 루마 블록 또는 상기 대응 크로마 블록은 상기 현재 크로마 블록의 인코딩 시점에 이미 인코딩된 블록일 수 있다. 후술하는 실시예에서는 대응 루마 블록에 대하여 설명하고 있으나, 상기 대응 크로마 블록에 대한 방법으로 수행될 수도 있다.
또한, 상기 현재 크로마 블록의 상기 주변 샘플들은 상기 현재 크로마 블록의 좌측 주변 샘플들, 좌상측 주변 샘플 및 상측 주변 샘플들을 포함할 수 있고, 상기 대응 루마 블록의 상기 주변 샘플들은 상기 현재 크로마 블록의 상기 주변 샘플들과 대응하는 상기 대응 루마 블록의 상기 주변 샘플들을 나타낼 수 있다. 상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플 포지션의 x성분이 0 및 y성분이 0인 경우, 상기 좌측 주변 샘플들은 p[-1][0] 내지 p[-1][N-1], 상기 좌상측 주변 샘플은 p[-1][-1], 상기 상측 주변 샘플들은 p[0][-1] 내지 p[M-1][-1] 일 수 있다. 한편, 상기 선형 모델 파라미터들을 도출하기 위한 상기 현재 크로마 블록의 상기 주변 샘플들을 포함하는 영역은 상기 현재 크로마 블록의 템플릿(template)이라고 나타낼 수 있다. 다시 말해, 상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플 포지션의 x성분이 0 및 y성분이 0인 경우, 상기 현재 크로마 블록의 템플릿은 p[-1][0] 내지 p[-1][N-1], p[-1][-1], p[0][-1] 내지 p[M-1][-1] 을 포함하는 영역으로 나타낼 수 있다. 또한, 상기 현재 크로마 블록의 상기 주변 샘플들과 대응하는 상기 대응 루마 블록의 상기 주변 샘플들을 포함하는 영역은 상기 대응 루마 블록의 템플릿(template)이라고 나타낼 수 있다.
인코딩 장치는 상기 현재 크로마 블록의 상기 주변 샘플들 및 상기 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출할 수 있다. 즉, 인코딩 장치는 상기 현재 크로마 블록의 템플릿 및 상기 대응 루마 블록의 템플릿을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출할 수 있다. 구체적으로, 상기 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록과 상기 대응 루마 블록 간 관계식이 도출될 수 있는바, 상기 관계식은 상기 현재 크로마 블록과 상기 대응 루마 블록 사이의 모델을 나타내는 수학식일 수 있다. 예를 들어, 상기 관계식은 상기 현재 크로마 블록과 상기 대응 루마 블록과의 선형 모델(linear model)을 나타내는 수학식일 수 있고, 상기 선형 모델 이외의 모델을 나타내는 수학식일 수도 있다. 상기 선형 모델 파라미터들은 상기 선형 모델의 계수(coefficient) 및 오프셋(offset)을 포함할 수 있다. 상기 파라미터들은 상술한 수학식 5 및 수학식 6을 기반으로 도출될 수 있다.
한편, 인코딩 장치는 선형 모델을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부를 나타내는 플래그를 생성할 수 있다. 상기 플래그의 값에 따라 선형 모델을 기반으로 상기 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부가 판단될 수 있다. 즉, 상기 플래그를 기반으로 상기 파라미터들을 도출하는지 여부가 판단될 수 있다. 예를 들어, 상기 플래그의 값이 1인 경우, 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 상기 주변 샘플들을 기반으로 상기 선형 모델 파라미터들이 도출될 수 있고, 상기 플래그의 값이 0인 경우, 상기 선형 모델 파라미터들이 도출되지 않을 수 있다. 상기 플래그는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 전송될 수 있다.
인코딩 장치는 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성한다(S710). 인코딩 장치는 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 상기 임시 예측 블록을 생성할 수 있다. 상기 선형 모델 파라미터들은 계수(coefficient)와 오프셋(offset)을 포함할 수 있다. 상기 계수는 스케일링 펙터(scaling factor)라고 불릴 수도 있다.
예를 들어, 인코딩 장치는 상기 대응 루마 블록의 복원 샘플들을 상기 선형 모델을 나타내는 관계식에 대입하여 상기 현재 크로마 블록의 임시 예측 샘플들, 즉, 상기 임시 예측 블록을 생성할 수 있다. 즉, 인코딩 장치는 상기 대응 루마 블록의 복원 샘플들에 상기 계수를 곱한 값에 상기 오프셋을 더하여 상기 임시 예측 샘플들(즉, 상기 임시 예측 블록)을 생성할 수 있다. 다시 말해, 상기 임시 예측 블록의 샘플은 상기 대응 루마 블록의 복원 샘플에 상기 계수를 곱한 값에 상기 오프셋을 더하여 도출될 수 있다. 상기 임시 예측 블록은 상술한 수학식 7을 기반으로 도출될 수 있다.
인코딩 장치는 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출한다(S720). 인코딩 장치는 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 상기 인트라 예측 모드를 도출할 수 있다.
예를 들어, 인코딩 장치는 상기 복수의 후보 인트라 예측 모드들을 기반으로 상기 현재 크로마 블록에 대한 예측을 수행하여 상기 현재 크로마 블록의 후보 예측 블록들을 생성할 수 있고, 상기 후보 예측 블록들 중 상기 임시 예측 블록과 가장 유사한 후보 예측 블록에 대한 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 도출할 수 있다. 이 경우, 인코딩 장치는 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출할 수 있다. 구체적으로, 인코딩 장치는 상기 복수의 후보 인트라 예측 모드들 각각에 따라 상기 현재 크로마 블록의 상기 주변 샘플들을 이용하여 상기 현재 크로마 블록의 후보 예측 블록들을 생성할 수 있다. 한편, 상기 현재 크로마 블록의 후보 예측 블록들의 생성에 이용되는 상기 주변 샘플들은 상기 현재 크로마 블록의 좌측 주변 샘플들, 좌상측 주변 샘플, 상측 주변 샘플들을 포함할 있고, 상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플 포지션의 x성분이 0 및 y성분이 0인 경우, 상기 좌측 주변 샘플들은 p[-1][0] 내지 p[-1][M+N-1], 상기 좌상측 주변 샘플은 p[-1][-1], 상기 상측 주변 샘플들은 p[0][-1] 내지 p[M+N-1][-1] 일 수 있다. 즉, 상기 현재 크로마 블록의 후보 예측 블록들의 생성에 이용되는 주변 샘플들은 상기 선형 모델 파라미터들을 도출하기 위한 상기 현재 크로마 블록의 주변 샘플들(상기 현재 크로마 블록의 템플릿)에 포함되지 않은 주변 샘플들을 포함할 수 있다.
다음으로 인코딩 장치는 생성된 후보 예측 블록들 각각의 상기 임시 예측 블록과의 디스토션을 도출할 수 있고, 디스토션이 가장 작은 후보 예측 블록에 대한 후보 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 도출할 수 있다. 여기서, 후보 예측 블록의 상기 임시 예측 블록과의 디스토션은 상기 후보 예측 블록과 상기 임시 예측 블록의 차이 정도를 나타낼 수 있다.
한편, 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들은 기설정될 수 있다. 또한, 인코딩 장치는 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 생성할 수 있다. 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보를 포함할 수 있다. 상기 최대값이 n인 경우, 상기 복수의 후보 인트라 예측 모드들은 1번 인트라 예측 모드 내지 n번 인트라 예측 모드로 도출될 수 있다. 또는, 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보 및 상기 복수의 후보 인트라 예측 모드들의 수를 나타내는 정보를 포함할 수 있다. 상기 최대값이 n이고, 상기 복수의 후보 인트라 예측 모드들의 수는 m 인 경우, 상기 복수의 후보 인트라 예측 모드들은 n-m+1번 인트라 예측 모드 내지 n번 인트라 예측 모드로 도출될 수 있다. 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 전송될 수 있다.
인코딩 장치는 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출한다(S730). 인코딩 장치는 상기 인트라 예측 모드에 따라 상기 현재 크로마 블록의 주변 샘플들을 이용하여 생성된 상기 현재 크로마 블록의 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출할 수 있다. 상기 인트라 예측 모드는 2개의 비방향성 예측 모드들과 33개의 방향성 예측 모드들 중 하나일 수 있다. 상기 2개의 비방향성 예측 모드들은 인트라 DC 모드 및 인트라 플래너 모드를 포함할 수 있음은 상술한 바와 같다. 또는 상기 인트라 예측 모드는 2개의 비방향성 인트라 예측 모드들과 65개의 방향성 인트라 예측 모드들 중 하나일 수 있다. 상기 2개의 비방향성 예측 모드들은 인트라 DC 모드 및 인트라 플래너 모드를 포함할 수 있음은 상술한 바와 같다. 또한, 상기 65개의 방향성 인트라 예측 모드들은 수직 방향성 인트라 예측 모드들과 수평 방향성 인트라 예측 모드들을 포함할 수 있다. 상기 수직 방향성 인트라 예측 모드들은 34번 인트라 예측 모드 내지 66번 인트라 예측 모드를 포함할 수 있고, 상기 수평 방향성 인트라 예측 모드들은 2번 인트라 예측 모드 내지 33번 인트라 예측 모드를 포함할 수 있다.
인코딩 장치는 상기 현재 크로마 블록에 대한 예측 정보를 생성하고 인코딩하여 출력한다(S740). 인코딩 장치는 상기 현재 크로마 블록에 대한 예측 정보를 인코딩하여 비트스트림 형태로 출력할 수 있다. 상기 예측 정보는 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 포함할 수 있다. 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보를 포함할 수 있다. 또는, 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보 및 상기 복수의 후보 인트라 예측 모드들의 수를 나타내는 정보를 포함할 수 있다. 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 전송될 수도 있다.
또한, 상기 예측 정보는 상기 선형 모델을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부를 나타내는 플래그를 포함할 수 있다. 상기 플래그는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 전송될 수도 있다.
도 8은 본 발명에 따른 디코딩 장치에 의한 비디오 디코딩 방법을 개략적으로 나타낸다. 도 8에서 개시된 방법은 도 2에서 개시된 디코딩 장치에 의하여 수행될 수 있다. 구체적으로 예를 들어, 도 8의 S800 내지 S830은 상기 디코딩 장치의 예측부에 의하여 수행될 수 있다.
디코딩 장치는 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델(linear model) 파라미터들을 도출한다(S800). 디코딩 장치는 상기 현재 크로마 블록의 상기 주변 샘플들 및 상기 대응 블록의 상기 주변 샘플들을 도출할 수 있다. 상기 대응 블록은 루마 성분의 대응 루마 블록 또는 상기 현재 크로마 블록의 크로마 성분 이외의 크로마 성분의 대응 크로마 블록일 수 있다. 예를 들어, 상기 현재 크로마 블록의 크로마 성분이 크로마 Cb 성분인 경우, 상기 대응 블록은 루마 성분의 대응 루마 블록 또는 크로마 Cr 성분의 대응 크로마 블록일 수 있다. 또는, 상기 현재 크로마 블록의 크로마 성분이 크로마 Cr 성분인 경우, 상기 대응 블록은 루마 성분의 대응 루마 블록 또는 크로마 Cb 성분의 대응 크로마 블록일 수 있다. 이 경우, 상기 대응 루마 블록 또는 상기 대응 크로마 블록은 상기 현재 크로마 블록의 디코딩 시점에 이미 디코딩된 블록일 수 있다. 후술하는 실시예에서는 대응 루마 블록에 대하여 설명하고 있으나, 상기 대응 크로마 블록에 대한 방법으로 수행될 수도 있다.
또한, 상기 현재 크로마 블록의 상기 주변 샘플들은 상기 현재 크로마 블록의 좌측 주변 샘플들, 좌상측 주변 샘플 및 상측 주변 샘플들을 포함할 수 있고, 상기 대응 루마 블록의 상기 주변 샘플들은 상기 현재 크로마 블록의 상기 주변 샘플들과 대응하는 상기 대응 루마 블록의 상기 주변 샘플들을 나타낼 수 있다. 상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플 포지션의 x성분이 0 및 y성분이 0인 경우, 상기 좌측 주변 샘플들은 p[-1][0] 내지 p[-1][N-1], 상기 좌상측 주변 샘플은 p[-1][-1], 상기 상측 주변 샘플들은 p[0][-1] 내지 p[M-1][-1] 일 수 있다. 한편, 상기 선형 모델 파라미터들을 도출하기 위한 상기 현재 크로마 블록의 상기 주변 샘플들을 포함하는 영역은 상기 현재 크로마 블록의 템플릿(template)이라고 나타낼 수 있다. 다시 말해, 상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플 포지션의 x성분이 0 및 y성분이 0인 경우, 상기 현재 크로마 블록의 템플릿은 p[-1][0] 내지 p[-1][N-1], p[-1][-1], p[0][-1] 내지 p[M-1][-1] 을 포함하는 영역으로 나타낼 수 있다. 또한, 상기 현재 크로마 블록의 상기 주변 샘플들과 대응하는 상기 대응 루마 블록의 상기 주변 샘플들을 포함하는 영역은 상기 대응 루마 블록의 템플릿(template)이라고 나타낼 수 있다. 디코딩 장치는 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출할 수 있다. 즉, 디코딩 장치는 상기 현재 크로마 블록의 템플릿 및 상기 대응 루마 블록의 템플릿을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터들을 도출할 수 있다. 구체적으로, 상기 현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록과 상기 대응 루마 블록 간 관계식이 도출될 수 있는바, 상기 관계식은 상기 현재 크로마 블록과 상기 대응 루마 블록 사이의 모델을 나타내는 수학식일 수 있다. 예를 들어, 상기 관계식은 상기 현재 크로마 블록과 상기 대응 루마 블록과의 선형 모델(linear model)을 나타내는 수학식일 수 있고, 상기 선형 모델 이외의 모델을 나타내는 수학식일 수도 있다. 상기 선형 모델 파라미터들은 상기 선형 모델의 계수(coefficient) 및 오프셋(offset)을 포함할 수 있다. 상기 파라미터들은 상술한 수학식 5 및 수학식 6을 기반으로 도출될 수 있다.
한편, 비트스트림을 통하여 선형 모델을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부를 나타내는 플래그가 획득될 수 있다. 상기 플래그의 값에 따라 선형 모델을 기반으로 상기 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부가 판단될 수 있다. 디코딩 장치는 상기 플래그를 기반으로 상기 임시 예측 블록을 생성하고, 상기 임시 예측 블록을 기반으로 상기 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부를 판단할 수 있다. 즉, 디코딩 장치는 상기 플래그를 기반으로 상기 파라미터들을 도출하는지 여부를 판단할 수 있다. 예를 들어, 상기 플래그의 값이 1인 경우, 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 상기 주변 샘플들을 기반으로 상기 관계식의 상기 파라미터들이 도출될 수 있고, 상기 플래그의 값이 0인 경우, 상기 관계식의 상기 파라미터들이 도출되지 않을 수 있다. 상기 플래그는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 수신될 수 있다.
디코딩 장치는 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성한다(S810). 디코딩 장치는 상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 상기 임시 예측 블록을 생성할 수 있다. 상기 선형 모델 파라미터들은 계수(coefficient)와 오프셋(offset)을 포함할 수 있다. 상기 계수는 스케일링 펙터(scaling factor)라고 불릴 수도 있다. 예를 들어, 디코딩 장치는 상기 대응 루마 블록의 복원 샘플들을 상기 선형 모델을 나타내는 관계식에 대입하여 상기 현재 크로마 블록의 임시 예측 샘플들, 즉, 상기 임시 예측 블록을 생성할 수 있다. 즉, 디코딩 장치는 상기 대응 루마 블록의 복원 샘플들에 상기 계수를 곱한 값에 상기 오프셋을 더하여 상기 임시 예측 샘플들(즉, 상기 임시 예측 블록)을 생성할 수 있다. 다시 말해, 상기 임시 예측 블록의 샘플은 상기 대응 루마 블록의 복원 샘플에 상기 계수를 곱한 값에 상기 오프셋을 더하여 도출될 수 있다. 상기 임시 예측 블록은 상술한 수학식 7을 기반으로 도출될 수 있다.
디코딩 장치는 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출한다(S820). 디코딩 장치는 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 상기 인트라 예측 모드를 도출할 수 있다.
예를 들어, 디코딩 장치는 상기 복수의 후보 인트라 예측 모드들을 기반으로 상기 현재 크로마 블록에 대한 예측을 수행하여 상기 현재 크로마 블록의 후보 예측 블록들을 생성할 수 있고, 상기 후보 예측 블록들 중 상기 임시 예측 블록과 가장 유사한 후보 예측 블록에 대한 후보 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 도출할 수 있다. 구체적으로, 디코딩 장치는 상기 복수의 후보 인트라 예측 모드들 각각에 따라 상기 현재 크로마 블록의 주변 샘플들을 이용하여 상기 현재 크로마 블록의 후보 예측 블록들을 생성할 수 있다. 한편, 상기 현재 크로마 블록의 후보 예측 블록들의 생성에 이용되는 상기 주변 샘플들은 상기 현재 크로마 블록의 좌측 주변 샘플들, 좌상측 주변 샘플, 상측 주변 샘플들을 포함할 있고, 상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플 포지션의 x성분이 0 및 y성분이 0인 경우, 상기 좌측 주변 샘플들은 p[-1][0] 내지 p[-1][M+N-1], 상기 좌상측 주변 샘플은 p[-1][-1], 상기 상측 주변 샘플들은 p[0][-1] 내지 p[M+N-1][-1] 일 수 있다. 즉, 상기 현재 크로마 블록의 후보 예측 블록들의 생성에 이용되는 주변 샘플들은 상기 선형 모델 파라미터들을 도출하기 위한 상기 현재 크로마 블록의 주변 샘플들(상기 현재 크로마 블록의 템플릿)에 포함되지 않은 주변 샘플들을 포함할 수 있다.
다음으로 디코딩 장치는 생성된 후보 예측 블록들 각각의 상기 임시 예측 블록과의 디스토션을 도출할 수 있고, 디스토션이 가장 작은 후보 예측 블록에 대한 후보 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 도출할 수 있다. 여기서, 후보 예측 블록의 상기 임시 예측 블록과의 디스토션은 상기 후보 예측 블록과 상기 임시 예측 블록의 차이 정도를 나타낼 수 있다.
한편, 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들은 기설정될 수 있다. 또는 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들은 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 기반으로 도출될 수 있다. 예를 들어, 디코딩 장치는 상기 비트스트림을 통하여 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 획득할 수 있고, 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 기반으로 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 도출할 수 있다. 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보를 포함할 수 있다. 상기 최대값이 m인 경우, 상기 복수의 후보 인트라 예측 모드들은 1번 인트라 예측 모드 내지 m번 인트라 예측 모드로 도출될 수 있다. 또는, 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보 및 상기 복수의 후보 인트라 예측 모드들의 수를 나타내는 정보를 포함할 수 있다. 상기 최대값이 m이고, 상기 복수의 후보 인트라 예측 모드들의 수는 n 인 경우, 상기 복수의 후보 인트라 예측 모드들은 m-n+1번 인트라 예측 모드 내지 m번 인트라 예측 모드로 도출될 수 있다. 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 수신될 수 있다.
디코딩 장치는 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출한다(S830). 디코딩 장치는 상기 인트라 예측 모드에 따라 상기 현재 크로마 블록의 주변 샘플들을 이용하여 생성된 상기 현재 크로마 블록의 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출할 수 있다. 상기 인트라 예측 모드는 2개의 비방향성 예측 모드들과 33개의 방향성 예측 모드들 중 하나일 수 있다. 상기 2개의 비방향성 예측 모드들은 인트라 DC 모드 및 인트라 플래너 모드를 포함할 수 있음은 상술한 바와 같다. 또는 상기 인트라 예측 모드는 2개의 비방향성 인트라 예측 모드들과 65개의 방향성 인트라 예측 모드들 중 하나일 수 있다. 상기 2개의 비방향성 예측 모드들은 인트라 DC 모드 및 인트라 플래너 모드를 포함할 수 있음은 상술한 바와 같다. 또한, 상기 65개의 방향성 인트라 예측 모드들은 수직 방향성 인트라 예측 모드들과 수평 방향성 인트라 예측 모드들을 포함할 수 있다. 상기 수직 방향성 인트라 예측 모드들은 34번 인트라 예측 모드 내지 66번 인트라 예측 모드를 포함할 수 있고, 상기 수평 방향성 인트라 예측 모드들은 2번 인트라 예측 모드 내지 33번 인트라 예측 모드를 포함할 수 있다.
한편, 비록 도면에서 도시되지는 않았으나 디코딩 장치는 예측 모드에 따라 예측 샘플을 바로 복원 샘플로 이용할 수도 있고, 또는 상기 예측 샘플에 레지듀얼 샘플을 더하여 복원 샘플을 생성할 수도 있다. 디코딩 장치는 상기 대상 블록에 대한 레지듀얼 샘플이 존재하는 경우, 상기 대상 블록에 대한 레지듀얼에 관한 정보를 수신할 수 있고, 상기 레지듀얼에 관한 정보는 상기 복원 샘플에 대한 정보에 포함될 수 있다. 상기 레지듀얼에 관한 정보는 상기 레지듀얼 샘플에 관한 변환 계수를 포함할 수 있다. 디코딩 장치는 상기 레지듀얼 정보를 기반으로 상기 대상 블록에 대한 상기 레지듀얼 샘플(또는 레지듀얼 샘플 어레이)을 도출할 수 있다. 디코딩 장치는 상기 예측 샘플과 상기 레지듀얼 샘플을 기반으로 복원 샘플을 생성할 수 있고, 상기 복원 샘플을 기반으로 복원 블록 또는 복원 픽처를 도출할 수 있다. 이후 디코딩 장치는 필요에 따라 주관적/객관적 화질을 향상시키기 위하여 디블록킹 필터링 및/또는 SAO 절차와 같은 인루프 필터링 절차를 상기 복원 픽처에 적용할 수 있음은 상술한 바와 같다.
또한, 디코딩 장치는 비트스트림을 통하여 상기 현재 크로마 블록에 대한 예측 정보를 수신할 수 있고, 엔트로피 디코딩할 수 있다. 상기 예측 정보는 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 포함할 수 있다. 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보를 포함할 수 있다. 또는, 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보 및 상기 복수의 후보 인트라 예측 모드들의 수를 나타내는 정보를 포함할 수 있다. 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 수신될 수 있다.
또한, 상기 예측 정보는 선형 모델을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부를 나타내는 플래그를 포함할 수 있다. 상기 플래그는 VPS(video parameter set), SPS(sequence parameter set), PPS(picture parameter set), 슬라이스 세그먼트 헤더(slice segment header), 또는 블록 레벨에서 수신될 수 있다.
상술한 본 발명에 따르면 현재 크로마 블록과 다른 성분을 이용하여 상기 현재 크로마 블록의 인트라 예측 모드를 도출하되, 상기 현재 크로마 블록의 주변 샘플들을 기반으로 예측을 수행할 수 있어 상기 다른 성분의 노이즈를 포함하지 않고 상기 현재 크로마 블록의 예측 블록을 생성할 수 있는바, 상기 현재 크로마 블록의 예측 정확도가 향상시킬 수 있고, 이를 통하여 전반적인 코딩 효율을 향상시킬 수 있다.
또한, 본 발명에 따르면 현재 크로마 블록의 인트라 예측 모드를 나타내는 정보의 전송없이 인트라 예측 모드들 중 왜곡(distortion) 관점에서 최소화된 인트라 예측 모드가 상기 현재 크로마 블록의 인트라 예측 모드로 선택될 수 있는바, 상기 현재 크로마 블록의 예측에 대한 비트량을 줄일 수 있고, 전반적인 코딩 효율을 향상시킬 수 있다.
상술한 실시예에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당업자라면 순서도에 나타내어진 단계들이 배타적이지 않고, 다른 단계가 포함되거나 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.
상술한 본 발명에 따른 방법은 소프트웨어 형태로 구현될 수 있으며, 본 발명에 따른 인코딩 장치 및/또는 디코딩 장치는 예를 들어 TV, 컴퓨터, 스마트폰, 셋톱박스, 디스플레이 장치 등의 영상 처리를 수행하는 장치에 포함될 수 있다.
본 발명에서 실시예들이 소프트웨어로 구현될 때, 상술한 방법은 상술한 기능을 수행하는 모듈(과정, 기능 등)로 구현될 수 있다. 모듈은 메모리에 저장되고, 프로세서에 의해 실행될 수 있다. 메모리는 프로세서 내부 또는 외부에 있을 수 있고, 잘 알려진 다양한 수단으로 프로세서와 연결될 수 있다. 프로세서는 ASIC(application-specific integrated circuit), 다른 칩셋, 논리 회로 및/또는 데이터 처리 장치를 포함할 수 있다. 메모리는 ROM(read-only memory), RAM(random access memory), 플래쉬 메모리, 메모리 카드, 저장 매체 및/또는 다른 저장 장치를 포함할 수 있다.

Claims (15)

  1. 디코딩 장치에 의하여 수행되는 영상 디코딩 방법에 있어서,
    현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터(parameter)들을 도출하는 단계;
    상기 선형 모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성하는 단계;
    상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는 단계; 및
    상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출하는 단계를 포함하는 것을 특징으로 하는 영상 디코딩 방법.
  2. 제1항에 있어서,
    상기 현재 크로마 블록의 주변 샘플들은 상기 현재 크로마 블록의 좌측 주변 샘플들, 좌상측 주변 샘플 및 상측 주변 샘플들을 포함하고,
    상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플 포지션의 x성분이 0 및 y성분이 0인 경우, 상기 좌측 주변 샘플들은 p[-1][0] 내지 p[-1][N-1], 상기 좌상측 주변 샘플은 p[-1][-1], 상기 상측 주변 샘플들은 p[0][-1] 내지 p[M-1][-1]인 것을 특징으로 하는 하는 영상 디코딩 방법.
  3. 제1항에 있어서,
    상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들은 기설정된 것을 특징으로 하는 영상 디코딩 방법.
  4. 제1항에 있어서,
    비트스트림을 통하여 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 획득하는 단계; 및
    상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 기반으로 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 도출하는 단계를 포함하는 것을 특징으로 하는 영상 디코딩 방법.
  5. 제4항에 있어서,
    상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 슬라이스 세그먼트 헤더 레벨 또는 코딩 블록 레벨에서 수신되는 것을 특징으로 하는 영상 디코딩 방법.
  6. 제4항에 있어서,
    상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보 및 상기 복수의 후보 인트라 예측 모드들의 수를 나타내는 정보를 포함하고,
    상기 최대값이 m이고, 상기 복수의 후보 인트라 예측 모드들의 수는 n 인 경우, 상기 복수의 후보 인트라 예측 모드들은 m-n+1번 인트라 예측 모드 내지 m번 인트라 예측 모드로 도출되는 것을 특징으로 하는 영상 디코딩 방법.
  7. 제1항에 있어서,
    상기 임시 예측 블록을 기반으로 상기 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 상기 인트라 예측 모드를 도출하는 단계는,
    상기 복수의 후보 인트라 예측 모드들을 기반으로 상기 현재 크로마 블록에 대한 예측을 수행하여 후보 예측 블록들을 생성하는 단계; 및
    상기 후보 예측 블록들 중 상기 임시 예측 블록과 가장 유사한 후보 예측 블록에 대한 후보 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 도출하는 단계를 포함하는 것을 특징으로 하는 영상 디코딩 방법.
  8. 제1항에 있어서,
    상기 파라미터들은 계수(coefficient) 및 오프셋(offset)을 포함하고,
    상기 파라미터들은 다음의 수학식을 기반으로 도출되고,
    Figure PCTKR2018000246-appb-I000003
    여기서, Refcb 는 상기 현재 크로마 블록의 상기 주변 샘플들, RefY 는 상기 대응 루마 블록의 상기 주변 샘플들, α는 상기 계수, β는 상기 오프셋을 나타내는 것을 특징으로 하는 영상 디코딩 방법.
  9. 제8항에 있어서,
    상기 임시 예측 블록의 샘플은 상기 대응 루마 블록의 복원 샘플에 상기 계수를 곱한 값에 상기 오프셋을 더하여 도출되는 것을 특징으로 하는 영상 디코딩 방법.
  10. 제1항에 있어서,
    비트스트림을 통하여 선형 모델을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 도출하는지 여부를 나타내는 플래그가 획득되고,
    상기 플래그의 값이 1인 경우, 상기 현재 크로마 블록의 주변 샘플들 및 상기 대응 루마 블록의 상기 주변 샘플들을 기반으로 상기 선형 모델 파라미터들이 도출되는 것을 특징으로 하는 영상 디코딩 방법
  11. 영상 디코딩을 수행하는 디코딩 장치에 있어서,
    현재 크로마 블록에 대한 예측 정보를 획득하는 엔트로피 디코딩부; 및
    현재 크로마 블록의 주변 샘플들 및 대응 루마 블록의 주변 샘플들을 기반으로 상기 현재 크로마 블록에 대한 선형 모델 파라미터(parameter)들을 도출하고, 상기 선형모델 파라미터들 및 상기 대응 루마 블록의 복원 샘플들을 기반으로 상기 현재 크로마 블록의 임시 예측 블록을 생성하고, 상기 임시 예측 블록을 기반으로 상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들 중 상기 현재 크로마 블록의 인트라 예측 모드를 도출하고, 상기 현재 크로마 블록의 상기 인트라 예측 모드를 기반으로 생성된 후보 예측 블록을 상기 현재 크로마 블록에 대한 예측 블록으로 도출하는 예측부를 포함하는 디코딩 장치.
  12. 제11항에 있어서,
    상기 현재 크로마 블록의 주변 샘플들은 상기 현재 크로마 블록의 좌측 주변 샘플들, 좌상측 주변 샘플 및 상측 주변 샘플들을 포함하고,
    상기 현재 크로마 블록의 사이즈가 MxN이고, 상기 현재 크로마 블록의 좌상단(top-left) 샘플 포지션의 x성분이 0 및 y성분이 0인 경우, 상기 좌측 주변 샘플들은 p[-1][0] 내지 p[-1][N-1], 상기 좌상측 주변 샘플은 p[-1][-1], 상기 상측 주변 샘플들은 p[0][-1] 내지 p[M-1][-1]인 것을 특징으로 하는 디코딩 장치.
  13. 제11항에 있어서,
    상기 현재 크로마 블록에 대한 복수의 후보 인트라 예측 모드들은 기설정된 것을 특징으로 하는 디코딩 장치.
  14. 제11항에 있어서,
    상기 현재 크로마 블록에 대한 예측 정보는 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 포함하고,
    상기 예측부는 상기 복수의 후보 인트라 예측 모드들을 나타내는 정보를 기반으로 상기 현재 크로마 블록에 대한 상기 복수의 후보 인트라 예측 모드들을 도출하는 것을 특징으로 하는 디코딩 장치.
  15. 제14항에 있어서,
    상기 복수의 후보 인트라 예측 모드들을 나타내는 정보는 상기 복수의 후보 인트라 예측 모드들의 모드 번호들 중 최대값을 나타내는 정보 및 상기 복수의 후보 인트라 예측 모드들의 수를 나타내는 정보를 포함하고,
    상기 최대값이 m이고, 상기 복수의 후보 인트라 예측 모드들의 수는 n 인 경우, 상기 복수의 후보 인트라 예측 모드들은 m-n+1번 인트라 예측 모드 내지 m번 인트라 예측 모드로 도출되는 것을 특징으로 하는 디코딩 장치.
PCT/KR2018/000246 2017-01-11 2018-01-05 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치 WO2018131838A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762445210P 2017-01-11 2017-01-11
US62/445,210 2017-01-11

Publications (1)

Publication Number Publication Date
WO2018131838A1 true WO2018131838A1 (ko) 2018-07-19

Family

ID=62840472

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/000246 WO2018131838A1 (ko) 2017-01-11 2018-01-05 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치

Country Status (1)

Country Link
WO (1) WO2018131838A1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113273213A (zh) * 2018-12-31 2021-08-17 韩国电子通信研究院 图像编码/解码方法和设备以及存储比特流的记录介质
CN113396584A (zh) * 2018-12-07 2021-09-14 弗劳恩霍夫应用研究促进协会 用于增强交叉分量线性模型参数的计算的稳健性的编码器、解码器和方法
WO2023197190A1 (zh) * 2022-04-12 2023-10-19 Oppo广东移动通信有限公司 编解码方法、装置、编码设备、解码设备以及存储介质
CN113273213B (zh) * 2018-12-31 2024-07-02 韩国电子通信研究院 图像编码/解码方法和设备以及存储比特流的记录介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012044126A2 (ko) * 2010-10-01 2012-04-05 삼성전자 주식회사 영상의 인트라 예측 방법 및 장치
US20130336591A1 (en) * 2011-03-06 2013-12-19 Lg Electronics Inc. Intra prediction method of chrominance block using luminance sample, and apparatus using same
US20150124881A1 (en) * 2010-04-05 2015-05-07 Samsung Electronics Co., Ltd. Determining intra prediction mode of image coding unit and image decoding unit
WO2016072777A1 (ko) * 2014-11-06 2016-05-12 삼성전자 주식회사 인트라 결합 예측 부호화, 복호화 방법 및 장치
WO2016115981A1 (en) * 2015-01-22 2016-07-28 Mediatek Singapore Pte. Ltd. Method of video coding for chroma components

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150124881A1 (en) * 2010-04-05 2015-05-07 Samsung Electronics Co., Ltd. Determining intra prediction mode of image coding unit and image decoding unit
WO2012044126A2 (ko) * 2010-10-01 2012-04-05 삼성전자 주식회사 영상의 인트라 예측 방법 및 장치
US20130336591A1 (en) * 2011-03-06 2013-12-19 Lg Electronics Inc. Intra prediction method of chrominance block using luminance sample, and apparatus using same
WO2016072777A1 (ko) * 2014-11-06 2016-05-12 삼성전자 주식회사 인트라 결합 예측 부호화, 복호화 방법 및 장치
WO2016115981A1 (en) * 2015-01-22 2016-07-28 Mediatek Singapore Pte. Ltd. Method of video coding for chroma components

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113396584A (zh) * 2018-12-07 2021-09-14 弗劳恩霍夫应用研究促进协会 用于增强交叉分量线性模型参数的计算的稳健性的编码器、解码器和方法
CN113273213A (zh) * 2018-12-31 2021-08-17 韩国电子通信研究院 图像编码/解码方法和设备以及存储比特流的记录介质
CN113273213B (zh) * 2018-12-31 2024-07-02 韩国电子通信研究院 图像编码/解码方法和设备以及存储比特流的记录介质
WO2023197190A1 (zh) * 2022-04-12 2023-10-19 Oppo广东移动通信有限公司 编解码方法、装置、编码设备、解码设备以及存储介质

Similar Documents

Publication Publication Date Title
WO2018062921A1 (ko) 영상 코딩 시스템에서 블록 분할 및 인트라 예측 방법 및 장치
WO2018174402A1 (ko) 영상 코딩 시스템에서 변환 방법 및 그 장치
WO2017052000A1 (ko) 영상 코딩 시스템에서 움직임 벡터 정제 기반 인터 예측 방법 및 장치
WO2017043786A1 (ko) 비디오 코딩 시스템에서 인트라 예측 방법 및 장치
WO2017034331A1 (ko) 영상 코딩 시스템에서 크로마 샘플 인트라 예측 방법 및 장치
WO2017069419A1 (ko) 비디오 코딩 시스템에서 인트라 예측 방법 및 장치
WO2018056603A1 (ko) 영상 코딩 시스템에서 조도 보상 기반 인터 예측 방법 및 장치
WO2016204360A1 (ko) 영상 코딩 시스템에서 조도 보상에 기반한 블록 예측 방법 및 장치
WO2016200043A1 (ko) 비디오 코딩 시스템에서 가상 참조 픽처 기반 인터 예측 방법 및 장치
WO2018062702A1 (ko) 영상 코딩 시스템에서 인트라 예측 방법 및 장치
WO2019198997A1 (ko) 인트라 예측에 기반한 영상 코딩 방법 및 그 장치
WO2018070632A1 (ko) 영상 코딩 시스템에서 영상 디코딩 방법 및 장치
WO2019112071A1 (ko) 영상 코딩 시스템에서 크로마 성분의 효율적 변환에 기반한 영상 디코딩 방법 및 장치
WO2018174357A1 (ko) 영상 코딩 시스템에서 영상 디코딩 방법 및 장치
WO2018056602A1 (ko) 영상 코딩 시스템에서 인터 예측 방법 및 장치
WO2019194500A1 (ko) 인트라 예측에 기반한 영상 코딩 방법 및 그 장치
WO2019194507A1 (ko) 어파인 움직임 예측에 기반한 영상 코딩 방법 및 그 장치
WO2018212430A1 (ko) 영상 코딩 시스템에서 주파수 도메인 필터링 방법 및 그 장치
WO2018066791A1 (ko) 영상 코딩 시스템에서 영상 디코딩 방법 및 장치
WO2018062699A1 (ko) 영상 코딩 시스템에서 영상 디코딩 방법 및 장치
WO2018128223A1 (ko) 영상 코딩 시스템에서 인터 예측 방법 및 장치
WO2018070661A1 (ko) 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치
WO2018084344A1 (ko) 영상 코딩 시스템에서 영상 디코딩 방법 및 장치
WO2022114742A1 (ko) 비디오 부호화 및 복호화를 위한 장치 및 방법
WO2019212230A1 (ko) 영상 코딩 시스템에서 블록 사이즈에 따른 변환을 사용하는 영상 디코딩 방법 및 그 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18739343

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18739343

Country of ref document: EP

Kind code of ref document: A1