WO2012128453A1 - 영상 부호화/복호화 방법 및 장치 - Google Patents

영상 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
WO2012128453A1
WO2012128453A1 PCT/KR2011/010224 KR2011010224W WO2012128453A1 WO 2012128453 A1 WO2012128453 A1 WO 2012128453A1 KR 2011010224 W KR2011010224 W KR 2011010224W WO 2012128453 A1 WO2012128453 A1 WO 2012128453A1
Authority
WO
WIPO (PCT)
Prior art keywords
prediction mode
chroma
prediction
mode
index
Prior art date
Application number
PCT/KR2011/010224
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 WO2012128453A1 publication Critical patent/WO2012128453A1/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/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/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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present invention relates to image processing, and more particularly, to an image encoding / decoding method and apparatus.
  • 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.
  • the transmission cost and the storage cost are increased. High efficiency image compression techniques can be used to solve these problems.
  • Image compression technology includes an inter prediction technique for predicting pixel values included in a current picture from before and / or after a current picture, and for predicting pixel values included in a current picture by using pixel information in the current picture.
  • An object of the present invention is to provide an image encoding method and apparatus capable of improving image encoding / decoding efficiency.
  • Another object of the present invention is to provide an image decoding method and apparatus capable of improving image encoding / decoding efficiency.
  • Another technical problem of the present invention is to provide a method and apparatus for transmitting chroma prediction mode information capable of improving image encoding / decoding efficiency.
  • Another technical problem of the present invention is to provide a method and apparatus for deriving a chroma prediction mode capable of improving image encoding / decoding efficiency.
  • An embodiment of the present invention is an image decoding method based on a prediction unit to which a short distance intra prediction (SDIP) is applied.
  • the method includes generating a chroma prediction mode candidate list by assigning an index corresponding to a codeword to chroma prediction mode candidates and using the generated chroma prediction mode candidate list and chroma prediction mode index information transmitted from an encoder. Deriving a chroma prediction mode of the chroma prediction mode candidate list, wherein the chroma prediction mode candidate list is a set of chroma prediction mode candidates each having an index assigned thereto, and the chroma prediction mode index information includes candidates included in the chroma prediction mode candidate list.
  • SDIP short distance intra prediction
  • Luma component prediction unit Includes prediction modes.
  • the lowest index may be allocated to the LM mode.
  • the number of chroma prediction mode candidates included in the chroma prediction mode candidate list may be limited to a predetermined fixed number.
  • the predetermined fixed number may be five or six.
  • the chroma prediction mode candidate list may include only the LM mode and the luma prediction mode.
  • the highest index may be allocated to the LM mode.
  • a prediction mode candidate list by allocating an index corresponding to the codeword to the chroma prediction mode candidate, assigning an index lower than the LM mode to some prediction modes among the prediction modes included in the luma prediction mode.
  • An index higher than the LM mode may be allocated to the remaining prediction modes among the prediction modes included in the luma prediction mode.
  • the index may be allocated to the LM mode based on flag information transmitted from the encoder.
  • the luma prediction mode may include only some of the prediction modes of the plurality of luma component prediction units corresponding to the chroma component prediction unit.
  • the luma prediction mode may include sub-sampled prediction modes corresponding to each of the prediction modes of the plurality of luma component prediction units corresponding to the chroma component prediction unit.
  • Another embodiment of the present invention is an image decoding apparatus based on a prediction unit to which a short distance intra prediction (SDIP) is applied.
  • SDIP short distance intra prediction
  • the apparatus generates an chroma prediction mode candidate list by assigning an entropy decoder for entropy decoding chroma prediction mode index information transmitted from an encoder and an index corresponding to a codeword to the chroma prediction mode candidates, and generating the chroma prediction mode candidate.
  • An intra prediction unit for deriving a chroma prediction mode of a current block using a list and the entropy decoded chroma prediction mode index information, and performing intra prediction on a chroma component of the current block using the derived chroma prediction mode
  • the chroma prediction mode candidate list is a set of chroma prediction mode candidates to which an index is assigned, respectively, and the chroma prediction mode index information corresponds to a chroma prediction mode of the current block among candidates included in the chroma prediction mode candidate list.
  • the chroma prediction mode candidate list includes an LM mode and a luma prediction mode
  • the luma prediction mode includes prediction modes of a plurality of luma component prediction units corresponding to the chroma component prediction unit.
  • Another embodiment of the present invention is a method of deriving a chroma prediction mode based on a prediction unit to which a short distance intra prediction (SDIP) is applied.
  • the method includes generating a chroma prediction mode candidate list by assigning an index corresponding to a codeword to chroma prediction mode candidates and using the generated chroma prediction mode candidate list and chroma prediction mode index information transmitted from an encoder. Deriving a chroma prediction mode of the chroma prediction mode candidate list, wherein the chroma prediction mode candidate list is a set of chroma prediction mode candidates each having an index assigned thereto, and the chroma prediction mode index information includes candidates included in the chroma prediction mode candidate list.
  • SDIP short distance intra prediction
  • Luma component prediction unit Includes prediction modes.
  • the lowest index may be allocated to the LM mode.
  • the number of chroma prediction mode candidates included in the chroma prediction mode candidate list may be limited to a predetermined fixed number.
  • the predetermined fixed number may be five or six.
  • the index may be allocated to the LM mode based on flag information transmitted from the encoder.
  • the luma prediction mode may include only some of the prediction modes of the plurality of luma component prediction units corresponding to the chroma component prediction unit.
  • the luma prediction mode may include sub-sampled prediction modes corresponding to each of the prediction modes of the plurality of luma component prediction units corresponding to the chroma component prediction unit.
  • image encoding / decoding efficiency can be improved.
  • the image decoding method According to the image decoding method according to the present invention, the image encoding / decoding efficiency can be improved.
  • image encoding / decoding efficiency may be improved.
  • image encoding / decoding efficiency may be improved.
  • FIG. 1 is a block diagram schematically illustrating an image encoding apparatus according to an embodiment of the present invention.
  • FIG. 2 is a conceptual diagram schematically illustrating a prediction unit according to an embodiment of the present invention.
  • FIG. 3 is a block diagram schematically illustrating an image decoding apparatus according to an embodiment of the present invention.
  • FIG. 4 is a conceptual diagram schematically illustrating a prediction unit of an image decoding apparatus according to an embodiment of the present invention.
  • FIG. 5 is a conceptual diagram schematically illustrating an embodiment of a prediction unit used for intra prediction.
  • FIG. 6 is a conceptual diagram schematically illustrating an embodiment of a method of generating a chroma prediction mode candidate in SDIP.
  • FIG. 7 is a conceptual diagram schematically illustrating an embodiment of a method for generating a chroma prediction mode candidate when SDIP and LM mode are used at the same time.
  • FIG. 8 is a conceptual diagram schematically illustrating an embodiment of an index allocation method for a chroma prediction mode candidate.
  • FIG. 9 is a conceptual diagram schematically illustrating another embodiment of an index allocation method for chroma prediction mode candidates.
  • FIG. 10 is a flowchart illustrating an embodiment of a method for transmitting chroma prediction mode information when SDIP and LM modes are used at the same time.
  • FIG. 11 is a flowchart illustrating an embodiment of a chroma prediction mode derivation method when SDIP and LM modes are used simultaneously.
  • FIG. 12 is a flowchart schematically illustrating another embodiment of a method of generating a chroma prediction mode candidate when SDIP and LM modes are used at the same time.
  • FIG. 13 is a conceptual diagram schematically illustrating a method of deriving a final luma prediction mode through a mapping process.
  • each of the components in the drawings described in the present invention are shown independently for the convenience of the description of the different characteristic functions in the image encoding / decoding apparatus, each component is implemented by separate hardware or separate software It does not mean to be.
  • 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.
  • the components may not be essential components for performing essential functions in the present invention, but may be optional components for improving performance.
  • the present invention can be implemented including only the components essential for implementing the essentials of the present invention except for the components used for improving performance, and the structure including only the essential components except for the optional components used for improving performance. Also included within the scope of the present invention.
  • the image encoding apparatus 100 may include a picture splitter 105, a predictor 110, a transformer 115, a quantizer 120, a realigner 125, and an entropy encoder 130. , An inverse quantization unit 135, an inverse transform unit 140, a filter unit 145, and a memory 150.
  • the picture dividing unit 105 may divide the input picture into at least one processing unit.
  • the processing unit may be a prediction unit (PU), a transform unit (TU), or a coding unit (CU).
  • the predictor 110 may include an inter predictor that performs inter prediction and an intra predictor that performs intra prediction.
  • the prediction unit 110 may generate a prediction block by performing prediction on the processing unit of the picture in the picture division unit 105.
  • the processing unit of the picture in the prediction unit 110 may be a coding unit, a transformation unit, or a prediction unit.
  • the processing unit in which the prediction is performed may differ from the processing unit in which the prediction method and the details are determined.
  • the method of prediction and the prediction mode are determined in units of prediction units, and the performance of prediction may be performed in units of transform units.
  • the residual value (residual block) between the generated prediction block and the original block may be input to the converter 115.
  • prediction mode information and motion vector information used for prediction may be encoded by the entropy encoder 130 together with the residual value and transmitted to the decoder.
  • the transform unit 115 performs a transform on the residual block in transform units and generates transform coefficients.
  • the transform unit in the transform unit 115 may be a transform unit and may have a quad tree structure. In this case, the size of the transform unit may be determined within a range of a predetermined maximum and minimum size.
  • the transform unit 115 may transform the residual block using a discrete cosine transform (DCT) and / or a discrete sine transform (DST).
  • DCT discrete cosine transform
  • DST discrete sine transform
  • the quantization unit 120 may generate quantization coefficients by quantizing the residual values transformed by the transformation unit 115.
  • the value calculated by the quantization unit 120 may be provided to the inverse quantization unit 135 and the reordering unit 125.
  • the reordering unit 125 rearranges the quantization coefficients provided from the quantization unit 120. By rearranging the quantization coefficients, the efficiency of encoding in the entropy encoder 130 may be increased.
  • the reordering unit 125 may rearrange the quantization coefficients in the form of a two-dimensional block into a one-dimensional vector form through a coefficient scanning method.
  • the reordering unit 125 may increase the entropy coding efficiency of the entropy encoder 130 by changing the order of coefficient scanning based on probabilistic statistics of coefficients transmitted from the quantization unit.
  • the entropy encoder 130 may perform entropy encoding on the quantized coefficients rearranged by the reordering unit 125.
  • the entropy encoder 130 may include quantization coefficient information, block type information, prediction mode information, division unit information, prediction unit information, transmission unit information, and motion vector of the coding unit received from the reordering unit 125 and the prediction unit 110.
  • Various information such as information, reference picture information, interpolation information of a block, and filtering information can be encoded.
  • Entropy encoding may use encoding methods such as Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC).
  • the entropy encoder 130 may store a table for performing entropy coding, such as a variable length coding (VLC) table, and the entropy encoder 130. ) May perform entropy encoding using the stored VLC table.
  • VLC variable length coding
  • the entropy encoder 130 converts a symbol into a bin and binarizes the symbol, and then performs an arithmetic encoding on the bin according to the occurrence probability of the bin to generate a bitstream. You can also create
  • a low value index and a corresponding short codeword are assigned to a symbol having a high probability of occurrence, and a high value index is assigned to a symbol having a low probability of occurrence.
  • Corresponding long codewords may be assigned. Accordingly, the bit amount of the symbols to be encoded may be reduced, and image compression performance may be improved by entropy encoding.
  • the inverse quantization unit 135 may inverse quantize the quantized values in the quantization unit 120, and the inverse transformer 140 may inversely transform the inverse quantized values in the inverse quantization unit 135.
  • the residual value generated by the inverse quantization unit 135 and the inverse transformer 140 may be combined with the prediction block predicted by the prediction unit 110 to generate a reconstructed block.
  • the filter unit 145 may apply a deblocking filter and / or an adaptive loop filter (ALF) to the reconstructed picture.
  • ALF adaptive loop filter
  • the deblocking filter may remove block distortion generated at the boundary between blocks in the reconstructed picture.
  • the adaptive loop filter may perform filtering based on a value obtained by comparing a reconstructed image with an original image after the block is filtered through a deblocking filter. ALF may be performed only when high efficiency is applied.
  • the filter unit 145 may not apply filtering to the reconstructed block used for inter prediction.
  • the memory 150 may store the reconstructed block or the picture calculated by the filter unit 145.
  • the reconstructed block or picture stored in the memory 150 may be provided to the predictor 110 that performs inter prediction.
  • a coding unit is a unit in which coding / decoding of a picture is performed and may be divided with a depth based on a quad tree structure.
  • the coding unit may have various sizes, such as 64x64, 32x32, 16x16, and 8x8.
  • the encoder may transmit information about a largest coding unit (LCU) and a minimum coding unit (SCU) to the decoder.
  • Information (depth information) regarding the number of splittable times together with information about the maximum coding unit and / or the minimum coding unit may be transmitted to the decoder.
  • Information on whether the coding unit is split based on the quad tree structure may be transmitted from the encoder to the decoder through flag information such as a split flag.
  • the predictor 200 may include an inter predictor 210 and an intra predictor 220.
  • the inter prediction unit 210 may generate a prediction block by performing prediction based on information of at least one picture of a previous picture or a subsequent picture of the current picture.
  • the intra predictor 220 may generate a prediction block by performing prediction based on pixel information in the current picture.
  • the inter prediction unit 210 may select a reference picture with respect to the prediction unit and select a reference block having the same size as the prediction unit in integer pixel sample units. Subsequently, the inter prediction unit 210 is most similar to the current prediction unit in sub-integer sample units such as 1/2 pixel sample unit and 1/4 pixel sample unit, so that the residual signal is minimized and the size of the motion vector to be encoded is also minimized. Can generate a predictive block.
  • the motion vector may be expressed in units of integer pixels or less, for example, in units of 1/4 pixels for luma pixels and in units of 1/8 pixels for chroma pixels.
  • Information about the index and the motion vector of the reference picture selected by the inter prediction unit 210 may be encoded and transmitted to the decoder.
  • the image decoder 300 includes an entropy decoder 310, a reordering unit 315, an inverse quantizer 320, an inverse transformer 325, a predictor 330, and a filter 335. And a memory 340.
  • the input bit stream may be decoded according to a procedure in which image information is processed by the image encoder.
  • the entropy decoding unit 310 may perform entropy decoding on the input bitstream, and the entropy decoding method is similar to the entropy encoding method described above.
  • VLC variable length coding
  • the entropy decoder 310 may also be identical to the VLC table used in the encoder. Entropy decoding can be performed by implementing a VLC table. Even when CABAC is used to perform entropy encoding in the image encoder, the entropy decoder 310 may perform entropy decoding using CABAC correspondingly.
  • a low value index and a corresponding short codeword are assigned to a symbol having a high probability of occurrence, and a high value index is assigned to a symbol having a low probability of occurrence.
  • Corresponding long codewords may be assigned. Accordingly, the bit amount of the symbols to be encoded may be reduced, and image compression performance may be improved by entropy encoding.
  • Information for generating a prediction block among the information decoded by the entropy decoder 310 may be provided to the predictor 330, and a residual value of which entropy decoding is performed by the entropy decoder may be input to the reordering unit 315.
  • the reordering unit 315 may reorder the bit stream deentropy decoded by the entropy decoding unit 310 based on a method of reordering the image encoder.
  • the reordering unit 315 may reorder the coefficients expressed in the form of a one-dimensional vector by restoring the coefficients in the form of a two-dimensional block.
  • the reordering unit 315 may be realigned by receiving information related to coefficient scanning performed by the encoder and performing reverse scanning based on the scanning order performed by the corresponding encoder.
  • the inverse quantization unit 320 may perform inverse quantization based on the quantization parameter provided by the encoder and the coefficient values of the rearranged block.
  • the inverse transform unit 325 may perform inverse DCT and / or inverse DST on DCT and DST performed by the transform unit of the encoder with respect to the quantization result performed by the image encoder.
  • the inverse transform may be performed based on a transmission unit determined by the encoder or a division unit of an image.
  • the DCT and / or DST may be selectively performed according to a plurality of pieces of information, such as a prediction method, a size and a prediction direction of the current block, and the inverse transformer 325 of the decoder is performed by the transformer of the encoder.
  • Inverse transformation may be performed based on the transformation information.
  • the prediction unit 330 may generate the prediction block based on the prediction block generation related information provided by the entropy decoding unit 310 and the previously decoded block and / or picture information provided by the memory 340.
  • the reconstruction block may be generated using the prediction block generated by the predictor 330 and the residual block provided by the inverse transform unit 325.
  • the reconstructed block and / or picture may be provided to the filter unit 335.
  • the filter unit 335 may apply deblocking filtering, sample adaptive offset (SAO), and / or adaptive loop filtering (ALF) to the reconstructed block and / or picture.
  • deblocking filtering sample adaptive offset (SAO)
  • ALF adaptive loop filtering
  • the memory 340 may store the reconstructed picture or block to use as a reference picture or reference block, and may provide the reconstructed picture to the output unit.
  • FIG. 4 is a conceptual diagram schematically illustrating a prediction unit of an image decoding apparatus according to an embodiment of the present invention.
  • the predictor 400 may include an intra predictor 410 and an inter predictor 420.
  • the intra prediction unit 410 may generate a prediction block based on pixel information in the current picture when the prediction mode for the corresponding prediction unit is an intra prediction mode (intra prediction mode).
  • the inter prediction unit 420 may include information necessary for inter prediction of the current prediction unit provided by the image encoder, eg, a motion vector, Inter-prediction of the current prediction unit may be performed based on information included in at least one of a previous picture or a subsequent picture of the current picture including the current prediction unit by using information about the reference picture index.
  • the motion information may be derived in response to the skip flag, the merge flag, and the like of the coding unit received from the encoder.
  • a "picture” or a “picture” can represent the same meaning as a “picture” according to the configuration or expression of the invention, the “picture” may be described as a “picture” or a “picture”.
  • inter prediction and inter prediction have the same meaning
  • intra prediction and intra prediction have the same meaning.
  • FIG. 5 is a conceptual diagram schematically illustrating an embodiment of a prediction unit used for intra prediction.
  • One coding unit may be divided into a plurality of prediction units.
  • a prediction mode may be determined in units of prediction units, and prediction may be performed in units of prediction units.
  • a prediction mode may be determined in units of prediction units, and intra prediction may be performed in units of transform units.
  • a prediction unit may have a size of 2N ⁇ 2N or N ⁇ N (N is an integer).
  • N is an integer
  • a N ⁇ N size prediction unit may be determined to be applied only to a minimum size coding unit or may be determined to be applied only to intra prediction.
  • a 64x64 size prediction unit may exist for a 64x64 size coding unit
  • a 32x32 size prediction unit may exist for a 32x32 size coding unit.
  • a 16x16 sized prediction unit may exist for a 16x16 sized coding unit
  • an 8x8 and / or 4x4 sized prediction unit may exist for an 8x8 sized coding unit.
  • the prediction unit used for intra prediction may have the form of a rectangle as well as a square.
  • the prediction unit may be a (1/4) hNx2N sized block in which a hNx2N sized block is divided again, and a 2Nx (1/4) hN sized block in which a 2NxhN sized block is divided again. It may be.
  • Intra prediction when a rectangular prediction unit is used as shown in 520 and 530 of FIG. 5 may be referred to as short distance intra prediction (SDIP).
  • SDIP short distance intra prediction
  • 8x32 and / or 32x8 size prediction units may exist for 32x32 size coding units, and 4x16 and / or 16x4 size prediction units may exist for 16x16 size coding units. There may be 2x8 and / or 8x2 prediction units for an 8x8 coding unit.
  • SDIP may not be applied to a 64x64 coding unit, and a 1x16 and / or 16x1 prediction unit may be additionally provided for a 16x16 coding unit.
  • each prediction unit having a rectangular shape obtained by dividing one square encoding unit may have an independent intra prediction mode.
  • each prediction mode may have one of the mode values assigned to the Unified Directional Intra (UDI) mode.
  • UDI Unified Directional Intra
  • each prediction unit in which one square coding unit is divided into four may have an independent intra prediction mode.
  • each of the prediction units in which one square coding unit is divided into four and the prediction units in four is further allowed to have the same prediction mode.
  • the intra predictor may generate a prediction block for the current block by performing prediction based on pixel information in the current picture. For example, the intra predictor may predict pixel values in the current block by using pixels in the reconstructed block located at the top, left, top left and / or top right with respect to the current block.
  • vertical, horizontal, DC, planar, and angular modes may be used according to the position and / or prediction method of reference pixels used for pixel value prediction of the current block. There may be.
  • the prediction may be performed in the vertical direction using the pixel values of the adjacent blocks
  • the prediction block may be generated by an average of pixel values in the current block.
  • the angular mode prediction may be performed according to a predetermined angle and / or direction for each mode.
  • a predetermined prediction direction and prediction mode value may be used for intra prediction, and the number of intra prediction modes used for intra prediction may vary depending on the size of the current block.
  • the prediction mode for the luma component may be encoded using the prediction mode of the neighboring block adjacent to the current block.
  • Most Probable Mode MPM
  • MPM Most Probable Mode
  • chroma prediction mode candidates When performing intra prediction on the chroma mode, prediction may be performed in one prediction mode among the chroma prediction mode candidates.
  • the chroma prediction mode candidate may include five candidates of LM, vertical, horizontal, DC, and DM modes.
  • the chroma prediction mode candidate may include six candidates of LM, vertical, horizontal, DC, vertical-8, and DM modes.
  • the chroma prediction mode candidate may include six candidates of DM, LM, planner, vertical, horizontal, and DC modes. At this time, if the prediction mode indicated by the DM mode is the same as one of the planner, vertical, horizontal, or DC modes, the vertical + 8 mode is chroma instead of the same prediction mode as the prediction mode indicated by the DM mode.
  • the chroma prediction mode candidate is not limited to the above embodiment and may vary depending on implementation and / or need.
  • the LM mode is a prediction mode in which the prediction value of the chroma component pixel is determined from the pixels of the neighboring block adjacent to the current block and the reconstructed luma component pixels of the current block
  • the DM mode is the prediction mode of the chroma component as it is. Prediction mode used as.
  • the prediction mode information of the chroma component When the prediction mode information of the chroma component is transmitted, information on whether the prediction value is used as the prediction mode of the current block, unlike the luma component, may not be transmitted. Since the chroma component and the luma component in the current block are correlated with each other, the prediction mode of the chroma component may be encoded using the prediction mode of the corresponding luma component.
  • Table 1 schematically shows an embodiment of the relationship between the luma component prediction mode and the chroma component prediction mode.
  • n / a is a mode that has not been used to avoid duplication with cases handled in DM mode.
  • the prediction mode of the luma component is 0 and the prediction mode index of the chroma component is 2, the corresponding value in Table 1 is 1. Therefore, at this time, the prediction may be performed in the prediction mode having the mode value of 1 with respect to the chroma component of the current block. If the prediction mode having the mode value of 1 is the horizontal mode, the prediction may be performed in the horizontal mode on the chroma component of the current block.
  • Table 2 schematically shows another embodiment of the relationship between the luma component prediction mode and the chroma component prediction mode.
  • n / a is a mode that has not been used to avoid duplication with cases handled in DM mode.
  • the prediction mode of the luma component is 0 and the prediction mode index of the chroma component is 2, the corresponding value in Table 1 is 1. Therefore, at this time, the prediction may be performed in the prediction mode having the mode value of 1 with respect to the chroma component of the current block. If the prediction mode having the mode value of 1 is the vertical mode, the prediction may be performed in the vertical mode on the chroma component of the current block.
  • a mode value of 0 may indicate a vertical mode
  • a mode value 1 indicates a horizontal mode
  • a mode value 2 indicates a DC mode
  • a mode value 3 indicates a vertical-8 mode
  • a mode value 35 indicates an LM mode.
  • mode value 0 may represent a planner mode
  • mode value 1 may be a vertical mode
  • mode value 2 may be a horizontal mode
  • mode value 3 may be a DC mode
  • mode value 35 may be an LM mode.
  • the relationship between the luma component prediction mode and the chroma component prediction mode is not limited to the embodiments of Tables 1 and 2 and may vary depending on implementation and / or needs.
  • the encoder may generate a bit stream by performing code entropy encoding by assigning a codeword to a chroma component prediction mode index according to a luma component prediction mode.
  • the coder may reduce the amount of bits transmitted to the decoder by varying the length of the codewords allocated to the chroma component prediction mode indexes according to the prediction mode of the luma component.
  • the decoder may derive the actual prediction mode used for intra prediction on the chroma component of the current block from the received codeword information and luma component prediction mode information.
  • FIG. 6 is a conceptual diagram schematically illustrating an embodiment of a method of generating a chroma prediction mode candidate in SDIP.
  • the LM mode is not used for the chroma component, and the number of chroma prediction mode candidates is limited to five.
  • each prediction unit in a rectangular form in which one square block is divided in the SDIP may have an independent intra prediction mode.
  • the prediction unit of the chroma component may be one square unit, and only one prediction mode may be assigned to the prediction unit of the chroma component.
  • the four luma component prediction units obtained by dividing one square coding unit may have independent prediction modes, and thus each other in one coding unit There may be four other luma component prediction modes.
  • the prediction unit of the chroma component corresponding to the luma component of the one coding unit may be one square prediction unit, and one chroma component prediction mode may exist in one chroma component prediction unit.
  • the prediction mode of the luma component may be used as the prediction mode of the chroma component as it is, but when the SDIP is used, the prediction mode of the luma component that may be used as the prediction mode of the chroma component is It can be up to four. In this case, the chroma component prediction mode may be difficult to be determined by the method shown in the embodiment of Table 1 above. Therefore, a chroma prediction mode candidate may be generated according to a method described below.
  • prediction mode values used in each of four luma component prediction units may be listed in ascending order. Following prediction mode values used in each prediction unit, prediction mode values from 0 to 3 may be listed in ascending order. At this time, in one embodiment, 0 may be a mode value of a vertical mode, 1 of a horizontal mode, 2 of a DC mode, and 3 of a vertical-8 mode. In another embodiment, 0 may be a planar mode, 1 may be a vertical mode, 2 may be a horizontal mode, and 3 may be a mode value of a DC mode. By selecting five prediction modes from the front in the list configured in this manner, a chroma prediction mode candidate can be generated.
  • prediction mode values used in each of four luma component prediction units may be listed in ascending order.
  • prediction mode values from 0 to 3 may be arranged in ascending order after the prediction mode values used in each prediction unit.
  • the overlapped prediction modes may be eliminated.
  • the prediction mode value 0 is a prediction mode value used in the luma component prediction unit
  • the prediction mode values listed next to the prediction mode values used in each prediction unit may start from 1.
  • prediction may be performed in one prediction mode among the chroma prediction mode candidates.
  • the method for generating a chroma prediction mode candidate according to the embodiment of FIG. 6 may be applied to a case where an NxN prediction unit is used in some cases. This is because up to four prediction modes used for luma component intra prediction may exist within a coding unit in which an N ⁇ N prediction unit is used.
  • the chroma prediction mode candidate generation method according to the embodiment of FIG. 6 may be applied even when an 8x8 coding unit is split into a 4x4 prediction unit.
  • the SDIP and the LM mode may be used together for intra prediction on the chroma component.
  • the SDIP and LM modes are separated and may be used independently instead of simultaneously using each other. SDIP and LM modes can also be combined and used simultaneously.
  • the LM mode may not be used for the coding unit in which the SDIP is used.
  • the LM mode may also be applied only to prediction units of 2N ⁇ 2N or N ⁇ N size in which SDIP is not used.
  • FIG. 7 is a conceptual diagram schematically illustrating an embodiment of a method for generating a chroma prediction mode candidate when SDIP and LM mode are used at the same time.
  • the prediction mode used in each luma component prediction unit to which SDIP is applied is called a luma prediction mode.
  • a luma prediction mode, an LM mode, a UDI mode corresponding to a mode value of 0 to 3, and / or a combination of the above modes may be used to generate a chroma prediction mode candidate.
  • the number of luma prediction modes corresponding to chroma components in one coding unit may be plural.
  • 0 may be a mode value of a vertical mode, 1 of a horizontal mode, 2 of a DC mode, and 3 of a vertical-8 mode.
  • 0 may be a planner mode
  • 1 may be a vertical mode
  • 2 may be a horizontal mode
  • 3 may be a mode value of a DC mode.
  • the chroma prediction mode candidate may include all of the luma prediction mode, the LM mode, and the UDI mode corresponding to the mode values of 0 to 3.
  • the amount of bits transmitted from the encoder to the decoder may be large. Therefore, in order to reduce the amount of information to be transmitted, a method of limiting the maximum number of prediction modes that can be included in the chroma prediction mode candidate or selectively selecting only a portion of the LM, horizontal, DC, and vertical-8 modes as the chroma prediction mode candidate May be provided.
  • the maximum number of chroma prediction mode candidates allowed including the luma prediction mode, the LM mode, the vertical mode, the horizontal mode, the DC mode, and the vertical-8 mode may be limited to five or six.
  • the LM mode may be used only if the number of prediction mode candidates, including luma prediction mode, vertical mode, horizontal mode, DC mode, vertical-8 mode, is less than five or only less than six.
  • the chroma prediction mode candidate may be generated only by the combination of the luma prediction mode and the LM mode.
  • the number of chroma prediction mode candidates may be five when prediction units of size hNx2N are used and the luma prediction mode values for each prediction unit are all different.
  • a chroma prediction mode candidate may be generated by a combination of the above methods.
  • FIG. 7 illustrates an embodiment of a method of generating a chroma prediction mode candidate when the maximum number of chroma prediction mode candidates is limited to six among the above embodiments.
  • the maximum number of chroma prediction mode candidates may be limited to six.
  • luma prediction modes used in each prediction unit are 5, 7, 9, and 10. Therefore, prediction mode values of 5, 7, 9, and 10 may be listed in ascending order.
  • the LM modes may be listed after 5, 7, 9, and 10, and the mode values 0, 1, 2, and 3 may be listed in ascending order after the LM mode.
  • the encoder and the decoder may store a table for performing entropy encoding such as a VLC table, and the encoder and the decoder may perform entropy encoding using the stored VLC table.
  • the encoder and the decoder may generate a bitstream by performing arithmetic encoding on the basis of the occurrence probability after binarizing the symbol.
  • a symbol having a high occurrence probability is assigned a low value index and a corresponding short codeword, and a symbol having a low occurrence probability is assigned a high value index and a corresponding long codeword. Can be. Therefore, the bit amount of the symbols to be encoded may be reduced.
  • the coding efficiency may be improved by assigning shorter codewords to the prediction mode with a higher frequency of occurrence.
  • a lower index may be mapped to a shorter codeword, so in this case a lower index may be assigned to a more frequent prediction mode.
  • the generated chroma prediction mode candidate may be assigned a codeword variably according to the frequency of occurrence.
  • Table 3 shows an embodiment of a codeword allocation method according to the number and index of chroma prediction mode candidates.
  • the codeword allocated to the current prediction mode may be '01'.
  • the codeword allocated to the current prediction mode may be '01'.
  • the current prediction mode may be estimated as it is.
  • Table 4 shows another embodiment of a codeword allocation method according to the number and indexes of chroma prediction mode candidates.
  • the codeword allocated to the current prediction mode may be '10'.
  • the codeword allocated to the current prediction mode may be inferred as it is.
  • an index may also be assigned to the LM mode. Since lower indices may be mapped to shorter codewords, if the chroma prediction mode candidates are listed in ascending order of the index assigned to each candidate, the index and / or codeword information assigned to the LM mode is determined by the chroma prediction mode candidates. It can also be viewed as information about the location of the LM mode.
  • Information on whether the LM mode is applied may be transmitted from the encoder to the decoder through a separate flag.
  • index information allocated to the LM mode and / or information about the location of the LM mode may be transmitted from the encoder to the decoder.
  • the LM mode may always be assigned a certain fixed index.
  • the position of the LM mode may be fixed to a specific position within the chroma prediction mode candidate.
  • the LM mode may always be assigned the lowest index and / or shortest codeword.
  • the LM mode may always be assigned the highest index and / or longest codeword.
  • the LM mode may always be assigned the second lowest index and / or second shortest codeword. A specific embodiment in the case where the lowest index is allocated to the LM mode will be described later.
  • the index assigned to the LM mode may be selectively determined according to the value of the luma prediction mode.
  • the position of the LM mode may be selectively determined according to the value of the luma prediction mode.
  • some indexes may be assigned lower indexes than the LM mode and others may be assigned higher indexes than the LM mode.
  • a mode value of a candidate to which an index lower than the LM mode is allocated among candidates obtained from the luma prediction mode is set to 0, 1, and 2.
  • the order of the chroma prediction mode candidates may be 0, 2, LM, 10, 17 in the ascending order of the index assigned to each candidate.
  • 8 is a conceptual diagram schematically illustrating an embodiment of an index allocation method for a chroma prediction mode candidate. 8 illustrates an index allocation method when SDIP and LM modes are used at the same time.
  • a, b, c, and d represent mode values of the luma prediction mode.
  • chroma prediction mode candidates are listed in descending order of index.
  • the lowest index may be assigned to chroma prediction mode candidates obtained from the luma prediction mode.
  • the number of luma prediction modes in the SDIP may be plural, for example, four. When the number of luma prediction modes is four, four indexes of 0, 1, 2, and 3 may be allocated to chroma prediction mode candidates obtained from the luma prediction mode. The next lower index may be assigned to the LM mode. The remaining indices may be assigned to the prediction mode having the mode values of 0 to 2 in low order.
  • the number of chroma prediction mode candidates may be limited to six, so a prediction mode to which indexes 0 to 5 are assigned may be used for chroma component intra prediction.
  • a lower index may be allocated to the luma prediction mode than the LM mode. That is, shorter codewords may be assigned to the luma prediction mode. In the LM mode, a relatively long codeword may be assigned.
  • 9 is a conceptual diagram schematically illustrating another embodiment of an index allocation method for chroma prediction mode candidates. 9 illustrates an index allocation method when SDIP and LM modes are used at the same time.
  • a, b, c, and d represent mode values of the luma prediction mode.
  • chroma prediction mode candidates are listed in descending order of index.
  • the lowest index (eg, 0) may be assigned to the LM mode.
  • the next lower index may be assigned to the chroma prediction mode candidates obtained from the luma prediction mode.
  • the number of luma prediction modes in the SDIP may be plural, for example, four. When the number of luma prediction modes is four, four indices of 1, 2, 3, and 4 may be allocated to chroma prediction mode candidates obtained from the luma prediction mode. The remaining indices may be assigned to the prediction mode having the mode values of 0 to 2 in low order.
  • the number of chroma prediction mode candidates may be limited to six, so a prediction mode to which indexes 0 to 5 are assigned may be used for chroma component intra prediction.
  • a lower index may be allocated to the LM mode than the luma prediction mode. That is, shorter codewords can be assigned to the LM mode.
  • each luma prediction mode occurrence probability may be lower than an LM mode occurrence probability. Therefore, coding efficiency can be improved by allocating shorter codewords to the LM mode.
  • An input for the processing may include a position of a current block and a size of a current coding unit in a current picture, and the output is an intra prediction mode for a current chroma component. This can be represented as follows.
  • the chroma prediction mode is derived by the following table 5 and 6 as an example of the relationship between the luma component prediction mode and the chroma component prediction mode. Can be.
  • the table according to the embodiment of Table 5 is used when the LM mode is applied, and the table according to the embodiment of Table 6 may be used when the LM mode is not applied.
  • Whether the LM mode is applied may be indicated by a flag sent from the encoder, and in one embodiment, the flag may be chroma_pred_from_luma_enabled_flag.
  • 34 may indicate an LM mode, 0 may be a vertical mode, 1 may be a horizontal mode, and 2 may be a DC mode.
  • the relationship between the luma component prediction mode and the chroma component prediction mode is not limited to the embodiments of Tables 5 and 6 described above, and may vary according to implementation and / or needs.
  • the chroma prediction mode may be derived by following Tables 7 and 8.
  • the table according to the embodiment of Table 7 is used when the LM mode is applied, and the table according to the embodiment of Table 8 may be used when the LM mode is not applied. Whether the LM mode is applied may be indicated by a flag sent from the encoder, and in one embodiment, the flag may be chroma_pred_from_luma_enabled_flag. Also in the embodiments of Tables 7 and 8, for example, LM is LM mode, 0 is planar mode, 1 is vertical mode, 2 is horizontal mode, 3 is DC mode, 7 is vertical + 8 8) It can indicate a mode.
  • the decoder may derive the chroma prediction mode through the relationship between the chroma component prediction mode and the luma component prediction mode shown in Tables 7 and 8. This can be represented as follows.
  • intra_chroma_pred_mode may be a prediction mode index of the chroma component
  • IntraPredMode may be a prediction mode of the luma component.
  • the decoder When the size of the current prediction unit is 2NxhN or hNx2N, that is, when SDIP is applied, the decoder generates a separate chroma prediction mode candidate without using Table 7 and / or Table 8 above, and assigns an index to the generated candidate. Can be.
  • the decoder may specify the position or size of each prediction unit, which may be represented as follows.
  • the decoder can assign the lowest index to the LM mode, which can be represented as follows.
  • the decoder may search for a luma prediction mode used in the current coding unit, which may be represented as follows.
  • the decoder may assign the lowest index after the index assigned to the LM mode to the luma prediction mode.
  • the remaining indices may also be assigned to the prediction modes of 0 to 3 in low order under conditions not overlapping with the luma prediction mode. In this case, when all six indexes are not allocated, the remaining indexes may be allocated to the prediction mode of seven. This can be represented as follows.
  • the decoder may derive the chroma prediction mode based on the prediction mode index information of the chroma component transmitted from the encoder.
  • the prediction mode index information of the chroma component may be, for example, intra_chroma_pred_mode. This can be represented as follows.
  • Table 9 below is a simulation result showing the BD-rate measured as a result of the experiment using the index allocation method according to the embodiment of FIG.
  • Y is a luma component
  • U and V are two chroma components.
  • the encoding time and the decoding time may represent complexity for performing encoding and decoding.
  • the experiments were performed in intra mode and were performed in High Efficiency (HE) configuration and Low Complexity (LC) configuration, respectively.
  • HE High Efficiency
  • LC Low Complexity
  • the BD-rate for chroma components is reduced on average in HE and LC to improve coding efficiency.
  • the complexity may be maintained without increasing the complexity.
  • FIG. 10 is a flowchart illustrating an embodiment of a method for transmitting chroma prediction mode information when SDIP and LM modes are used at the same time.
  • the encoder generates a chroma prediction mode candidate for the current coding unit (S1010).
  • a method of generating a chroma prediction mode candidate is as described above in the embodiment of FIG. 7.
  • the maximum number of chroma prediction mode candidates may be limited to five or six.
  • a chroma prediction mode candidate may be generated with only a combination of luma prediction mode and LM mode.
  • the chroma prediction mode candidates may be generated by the aforementioned various methods.
  • the encoder generates a chroma prediction mode candidate list by assigning an index corresponding to the codeword to the generated chroma prediction mode candidates (S1020).
  • the chroma prediction mode candidate list may mean a set of chroma prediction mode candidates to which an index is assigned.
  • the encoder can improve coding efficiency by assigning a low index and / or a short codeword to a prediction mode with a high probability of occurrence.
  • the index allocation method is as described above in the embodiments of Tables 3 to 9, 8 and 9.
  • the encoder After determining the chroma prediction mode of the current block, the encoder transmits information about an index assigned to the same candidate as the chroma prediction mode of the current block among candidates included in the chroma prediction mode candidate list (S1030).
  • the information about the index assigned to the same chroma prediction mode candidate as the chroma prediction mode of the current block is referred to as chroma prediction mode index information.
  • FIG. 11 is a flowchart illustrating an embodiment of a chroma prediction mode derivation method when SDIP and LM modes are used simultaneously.
  • the decoder generates a chroma prediction mode candidate for the current coding unit (S1110).
  • a method of generating a chroma prediction mode candidate is as described above in the embodiment of FIG. 7.
  • the decoder generates a chroma prediction mode candidate list by assigning an index corresponding to the codeword to the generated chroma prediction mode candidate (S1120).
  • the chroma prediction mode candidate list may mean a set of chroma prediction mode candidates to which an index is assigned.
  • the decoder may assign an index to the chroma prediction mode candidate in the same manner as the encoder.
  • the index allocation method is as described above in the embodiments of Tables 3 to 9, 8 and 9.
  • the decoder derives a chroma prediction mode using the chroma prediction mode candidate list and the chroma prediction mode index information transmitted from the encoder (S1130).
  • FIG. 12 is a flowchart schematically illustrating another embodiment of a method of generating a chroma prediction mode candidate when SDIP and LM modes are used at the same time.
  • all luma prediction modes included in the current coding unit may be used as candidates when generating a chroma prediction mode candidate.
  • a method of reducing the number of final luma prediction modes used for generating chroma prediction mode candidates may be provided.
  • the encoder and the decoder derive a final luma prediction mode used as a chroma prediction mode candidate (S1210).
  • the encoder and the decoder may use only some prediction modes of the luma prediction modes included in the current coding unit to generate the chroma prediction mode candidates.
  • the encoder and the decoder may use the luma prediction mode of the first prediction unit among the prediction units to which SDIP is applied in the current coding unit, for generating the chroma prediction mode candidate.
  • the encoder and the decoder may use the luma prediction mode of the last prediction unit among the prediction units to which the SDIP is applied in the current coding unit, for generating the chroma prediction mode candidate.
  • the encoder and the decoder may use the prediction mode assigned the lowest index among the luma prediction modes to generate the chroma prediction mode candidates, and select the plurality of prediction modes in the order of the lowest indexes to generate the chroma prediction mode candidates. Can also be used. Prediction modes that are assigned low indexes can generally be more frequent.
  • the encoder and the decoder may select only the luma prediction mode of two or more prediction units among the prediction units included in the current coding unit, and use the same to generate a chroma prediction mode candidate.
  • the size of the prediction unit may be 2NxhN, hNx2N, 2Nx (1/4) hN, (1/4) hNx2N, and the like.
  • the encoder and the decoder may apply a separate mapping process to the luma prediction mode to reduce the number of final luma prediction modes used for generating a chroma prediction mode candidate.
  • a method of deriving the final luma prediction mode through the mapping process will be described later in the embodiment of FIG. 13.
  • the encoder and the decoder generate a chroma prediction mode candidate using the derived final luma prediction mode (S1220).
  • FIG. 13 is a conceptual diagram schematically illustrating a method of deriving a final luma prediction mode through a mapping process.
  • the number of final luma prediction modes used for generating a chroma prediction mode candidate may be reduced through the mapping process.
  • a prediction mode having one representative value may be used for generating a chroma prediction mode candidate.
  • the representative value may be a mode value of the prediction mode to which the lowest index among the prediction modes having similar angles is assigned.
  • the representative value may be a mode value of the prediction mode to which the highest index among the prediction modes having similar angles is assigned.
  • the representative value may be a mode value of a prediction mode to which an index corresponding to a median value among prediction modes having similar angles is assigned.
  • the representative value may be a mode value of one of the sub-sampled prediction modes after all the prediction modes that the prediction unit may have in the intra mode are sub-sampled according to an angle.
  • a prediction mode that a prediction unit may have in an intra mode may include prediction modes having various angles.
  • the prediction modes having the A, B, and C angles may be subsampled and mapped to the prediction modes having all of the C angles. Therefore, when the prediction unit has a luma prediction mode of A angle, B angle, or C angle, the prediction mode of C angle may be used for generating a chroma prediction mode candidate.
  • the methods for determining the above-described chroma prediction mode candidates are the current block and / or It can be selectively applied according to the size of the coding unit.
  • the coding unit may be recursively split from the LCU based on a quad tree structure. Therefore, the above-described methods of determining the chroma prediction mode candidate may be selectively applied according to the split count information indicating how many times the current coding unit is split from the LCU.
  • a method of reducing the number of final luma prediction modes used for generating chroma prediction mode candidates may be used by applying a mapping process according to the embodiment of FIG. 13. .
  • a prediction mode having one representative value may be used for generating a chroma prediction mode candidate. Specific examples of representative values used at this time are omitted.
  • SDIP may not be applied when the current coding unit is an LCU. If SDIP is not applied, prediction units of 2NxhN, hNx2N, 2Nx (1/4) hN, and (1/4) hNx2N sizes may not be used.
  • the prediction mode of the chroma component may be determined as one of LM, vertical, horizontal, DC, and DM modes, and prediction of one of LM, vertical, horizontal, vertical-8, DC, and DM modes. The mode may be determined.
  • the prediction mode of the chroma component may be determined as one of the prediction modes of the DM, LM, planner, vertical, horizontal, and DC modes. At this time, if the prediction mode indicated by the DM mode is the same as one of the planner, vertical, horizontal, or DC modes, the vertical + 8 mode is used instead of the same prediction mode as the prediction mode indicated by the DM mode. It may be.

Landscapes

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

Abstract

SDIP가 적용된 예측 유닛을 기반으로 하는 영상 복호화 방법이 제공된다. 본 발명에 따른 영상 복호화 방법은 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보들에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계 및 생성된 크로마 예측 모드 후보 리스트 및 부호화기로부터 전송된 크로마 예측 모드 인덱스 정보를 이용하여 현재 블록의 크로마 예측 모드를 도출하는 단계를 포함한다. 본 발명에 따르면, 영상 부호화/복호화 효율이 향상된다.

Description

영상 부호화/복호화 방법 및 장치
본 발명은 영상 처리에 관한 것으로서, 보다 상세하게는 영상 부호화/복호화 방법 및 장치에 관한 것이다.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 전송되는 정보량 또는 비트량이 증가하기 때문에 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 데이터를 전송하거나 기존의 저장 매체를 이용해 영상 데이터를 저장하는 경우, 전송 비용과 저장 비용이 증가된다. 이러한 문제들을 해결하기 위해서 고효율의 영상 압축 기술들이 이용될 수 있다.
영상 압축 기술에는 현재 픽쳐의 이전 및/또는 이후 픽쳐로부터 현재 픽쳐에 포함된 픽셀값을 예측하는 인터 예측(inter prediction) 기술, 현재 픽쳐 내의 픽셀 정보를 이용하여 현재 픽쳐에 포함된 픽셀값을 예측하는 인트라 예측(intra prediction) 기술, 출현 빈도가 높은 값에 짧은 부호를 할당하고 출현 빈도가 낮은 값에 긴 부호를 할당하는 엔트로피 부호화 기술 등 다양한 기술이 존재한다. 이러한 영상 압축 기술을 이용해 영상 데이터가 효과적으로 압축되어 전송 또는 저장될 수 있다.
본 발명의 기술적 과제는 영상 부호화/복호화 효율을 향상시킬 수 있는 영상 부호화 방법 및 장치를 제공함에 있다.
본 발명의 다른 기술적 과제는 영상 부호화/복호화 효율을 향상시킬 수 있는 영상 복호화 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 기술적 과제는 영상 부호화/복호화 효율을 향상시킬 수 있는 크로마 예측 모드 정보 전송 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 기술적 과제는 영상 부호화/복호화 효율을 향상시킬 수 있는 크로마 예측 모드 도출 방법 및 장치를 제공함에 있다.
본 발명의 일 실시 형태는 SDIP(Short Distance Intra Prediction)가 적용된 예측 유닛을 기반으로 하는 영상 복호화 방법이다. 상기 방법은 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보들에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계 및 상기 생성된 크로마 예측 모드 후보 리스트 및 부호화기로부터 전송된 크로마 예측 모드 인덱스 정보를 이용하여 현재 블록의 크로마 예측 모드를 도출하는 단계를 포함하고, 상기 크로마 예측 모드 후보 리스트는 각각에 인덱스가 할당된 크로마 예측 모드 후보의 세트이고, 상기 크로마 예측 모드 인덱스 정보는 상기 크로마 예측 모드 후보 리스트에 포함된 후보들 중 상기 현재 블록의 크로마 예측 모드와 동일한 후보에 할당된 인덱스에 관한 정보이고, 상기 크로마 예측 모드 후보 리스트는 LM 모드 및 루마 예측 모드를 포함하고, 상기 루마 예측 모드는 크로마 성분 예측 유닛에 대응하는 복수의 루마 성분 예측 유닛들의 예측 모드들을 포함한다.
상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는, 상기 LM 모드에 가장 낮은 인덱스를 할당할 수 있다.
상기 크로마 예측 모드 후보 리스트에 포함된 상기 크로마 예측 모드 후보들의 개수는 소정의 고정된 개수로 제한될 수 있다.
상기 소정의 고정된 개수는 5 또는 6일 수 있다.
상기 크로마 예측 모드 후보 리스트는 상기 LM 모드 및 상기 루마 예측 모드만을 포함할 수 있다.
상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는, 상기 LM 모드에 가장 높은 인덱스를 할당할 수 있다.
상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는, 상기 루마 예측 모드에 포함된 예측 모드들 중 일부 예측 모드에 LM 모드보다 낮은 인덱스를 할당하고, 상기 루마 예측 모드에 포함된 예측 모드들 중 나머지 예측 모드에 LM 모드보다 높은 인덱스를 할당할 수 있다.
상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는, 부호화기로부터 전송된 플래그(flag) 정보에 기초하여 LM 모드에 인덱스를 할당할 수 있다.
상기 루마 예측 모드는 상기 크로마 성분 예측 유닛에 대응하는 상기 복수의 루마 성분 예측 유닛들의 예측 모드들 중 일부만을 포함할 수 있다.
상기 루마 예측 모드는, 상기 크로마 성분 예측 유닛에 대응하는 상기 복수의 루마 성분 예측 유닛들의 예측 모드들 각각에 대응되는, 서브 샘플링(sub-sampling)된 예측 모드들을 포함할 수 있다.
본 발명의 다른 실시 형태는 SDIP(Short Distance Intra Prediction)가 적용된 예측 유닛을 기반으로 하는 영상 복호화 장치이다. 상기 장치는 부호화기로부터 전송된 크로마 예측 모드 인덱스 정보를 엔트로피 복호화하는 엔트로피 복호화부 및 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보들에 할당하여 크로마 예측 모드 후보 리스트를 생성하고, 상기 생성된 크로마 예측 모드 후보 리스트 및 상기 엔트로피 복호화된 크로마 예측 모드 인덱스 정보를 이용하여 현재 블록의 크로마 예측 모드를 도출하고, 상기 도출된 크로마 예측 모드를 이용하여 상기 현재 블록의 크로마 성분에 대한 인트라 예측을 수행하는 인트라 예측부를 포함하고, 상기 크로마 예측 모드 후보 리스트는 각각에 인덱스가 할당된 크로마 예측 모드 후보의 세트이고, 상기 크로마 예측 모드 인덱스 정보는 상기 크로마 예측 모드 후보 리스트에 포함된 후보들 중 상기 현재 블록의 크로마 예측 모드와 동일한 후보에 할당된 인덱스에 관한 정보이고, 상기 크로마 예측 모드 후보 리스트는 LM 모드 및 루마 예측 모드를 포함하고, 상기 루마 예측 모드는 크로마 성분 예측 유닛에 대응하는 복수의 루마 성분 예측 유닛들의 예측 모드들을 포함한다.
본 발명의 또 다른 실시 형태는 SDIP(Short Distance Intra Prediction)가 적용된 예측 유닛을 기반으로 하는 크로마 예측 모드 도출 방법이다. 상기 방법은 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보들에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계 및 상기 생성된 크로마 예측 모드 후보 리스트 및 부호화기로부터 전송된 크로마 예측 모드 인덱스 정보를 이용하여 현재 블록의 크로마 예측 모드를 도출하는 단계를 포함하고, 상기 크로마 예측 모드 후보 리스트는 각각에 인덱스가 할당된 크로마 예측 모드 후보의 세트이고, 상기 크로마 예측 모드 인덱스 정보는 상기 크로마 예측 모드 후보 리스트에 포함된 후보들 중 상기 현재 블록의 크로마 예측 모드와 동일한 후보에 할당된 인덱스에 관한 정보이고, 상기 크로마 예측 모드 후보 리스트는 LM 모드 및 루마 예측 모드를 포함하고, 상기 루마 예측 모드는 크로마 성분 예측 유닛에 대응하는 복수의 루마 성분 예측 유닛들의 예측 모드들을 포함한다.
상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는, 상기 LM 모드에 가장 낮은 인덱스를 할당할 수 있다.
상기 크로마 예측 모드 후보 리스트에 포함된 상기 크로마 예측 모드 후보들의 개수는 소정의 고정된 개수로 제한될 수 있다.
상기 소정의 고정된 개수는 5 또는 6일 수 있다.
상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는, 부호화기로부터 전송된 플래그(flag) 정보에 기초하여 LM 모드에 인덱스를 할당할 수 있다.
상기 루마 예측 모드는 상기 크로마 성분 예측 유닛에 대응하는 상기 복수의 루마 성분 예측 유닛들의 예측 모드들 중 일부만을 포함할 수 있다.
상기 루마 예측 모드는, 상기 크로마 성분 예측 유닛에 대응하는 상기 복수의 루마 성분 예측 유닛들의 예측 모드들 각각에 대응되는, 서브 샘플링(sub-sampling)된 예측 모드들을 포함할 수 있다.
본 발명에 따른 영상 부호화 방법에 의하면, 영상 부호화/복호화 효율이 향상될 수 있다.
본 발명에 따른 영상 복호화 방법에 의하면, 영상 부호화/복호화 효율이 향상될 수 있다.
본 발명에 따른 크로마 예측 모드 정보 전송 방법에 의하면, 영상 부호화/복호화 효율이 향상될 수 있다.
본 발명에 따른 크로마 예측 모드 도출 방법에 의하면, 영상 부호화/복호화 효율이 향상될 수 있다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 개략적으로 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 예측부를 개략적으로 도시한 개념도이다.
도 3은 본 발명의 일 실시예에 따른 영상 복호화 장치를 개략적으로 나타낸 블록도이다.
도 4는 본 발명의 일 실시예에 따른 영상 복호화 장치의 예측부를 개략적으로 나타낸 개념도이다.
도 5는 인트라 예측에 사용되는 예측 유닛의 실시예를 개략적으로 나타내는 개념도이다.
도 6은 SDIP에서의 크로마 예측 모드 후보 생성 방법의 일 실시예를 개략적으로 나타내는 개념도이다.
도 7은 SDIP와 LM 모드가 동시에 사용되는 경우 크로마 예측 모드 후보 생성 방법의 일 실시예를 개략적으로 나타내는 개념도이다.
도 8은 크로마 예측 모드 후보에 대한 인덱스 할당 방법의 일 실시예를 개략적으로 나타내는 개념도이다.
도 9는 크로마 예측 모드 후보에 대한 인덱스 할당 방법의 다른 실시예를 개략적으로 나타내는 개념도이다.
도 10은 SDIP와 LM 모드가 동시에 사용되는 경우의 크로마 예측 모드 정보 전송 방법의 일 실시예를 나타내는 흐름도이다.
도 11은 SDIP와 LM 모드가 동시에 사용되는 경우의 크로마 예측 모드 도출 방법의 일 실시예를 나타내는 흐름도이다.
도 12는 SDIP와 LM 모드가 동시에 사용되는 경우 크로마 예측 모드 후보 생성 방법의 다른 실시예를 개략적으로 나타내는 흐름도이다.
도 13은 매핑 과정을 통한 최종 루마 예측 모드의 도출 방법을 개략적으로 나타내는 개념도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니다. 본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
한편, 본 발명에서 설명되는 도면상의 각 구성들은 영상 부호화/복호화 장치에서 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리 범위에 포함된다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성 요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 개략적으로 도시한 블록도이다. 도 1을 참조하면, 영상 부호화 장치(100)는 픽쳐 분할부(105), 예측부(110), 변환부(115), 양자화부(120), 재정렬부(125), 엔트로피 부호화부(130), 역양자화부(135), 역변환부(140), 필터부(145) 및 메모리(150)를 포함한다.
픽쳐 분할부(105)는 입력된 픽쳐를 적어도 하나의 처리 단위로 분할할 수 있다. 이때, 처리 단위는 예측 유닛(Prediction Unit: PU)일 수도 있고, 변환 유닛(Transform Unit: TU)일 수도 있으며, 부호화 유닛(Coding Unit: CU)일 수도 있다.
예측부(110)는 후술하는 바와 같이, 인터 예측을 수행하는 인터 예측부와 인트라 예측을 수행하는 인트라 예측부를 포함할 수 있다. 예측부(110)는, 픽쳐 분할부(105)에서의 픽쳐의 처리 단위에 대하여 예측을 수행하여 예측 블록을 생성할 수 있다. 예측부(110)에서 픽쳐의 처리 단위는 부호화 유닛일 수도 있고, 변환 유닛일 수도 있고, 예측 유닛일 수도 있다. 또한, 해당 처리 단위에 대하여 실시되는 예측이 인터 예측인지 인트라 예측인지를 결정하고, 각 예측 방법의 구체적인 내용(예컨대, 예측 모드 등)를 정할 수 있다. 이때, 예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 다를 수 있다. 예컨대, 예측의 방법과 예측 모드 등은 예측 유닛 단위로 결정되고, 예측의 수행은 변환 유닛 단위로 수행될 수도 있다. 생성된 예측 블록과 원본 블록 사이의 잔차값(잔차 블록: residual block)은 변환부(115)로 입력될 수 있다. 또한, 예측을 위해 사용한 예측 모드 정보, 움직임 벡터(motion vector) 정보 등은 잔차값과 함께 엔트로피 부호화부(130)에서 부호화되어 복호화기에 전달될 수 있다.
변환부(115)는 변환 단위로 잔차 블록에 대한 변환을 수행하고 변환 계수를 생성한다. 변환부(115)에서의 변환 단위는 변환 유닛일 수 있으며, 쿼드 트리(quad tree) 구조를 가질 수 있다. 이때, 변환 단위의 크기는 소정의 최대 및 최소 크기의 범위 내에서 정해질 수 있다. 변환부(115)는 잔차 블록을 DCT(Discrete Cosine Transform) 및/또는 DST(Discrete Sine Transform)를 이용하여 변환할 수 있다.
양자화부(120)는 변환부(115)에서 변환된 잔차값들을 양자화하여 양자화 계수를 생성할 수 있다. 양자화부(120)에서 산출된 값은 역양자화부(135)와 재정렬부(125)에 제공될 수 있다.
재정렬부(125)는 양자화부(120)로부터 제공된 양자화 계수를 재정렬한다. 양자화 계수를 재정렬함으로써 엔트로피 부호화부(130)에서의 부호화의 효율을 높일 수 있다. 재정렬부(125)는 계수 스캐닝(Coefficient Scanning) 방법을 통해 2차원 블록 형태의 양자화 계수들을 1차원의 벡터 형태로 재정렬할 수 있다. 재정렬부(125)에서는 양자화부에서 전송된 계수들의 확률적인 통계를 기반으로 계수 스캔닝의 순서를 변경함으로써 엔트로피 부호화부(130)에서의 엔트로피 부호화 효율을 높일 수도 있다.
엔트로피 부호화부(130)는 재정렬부(125)에 의해 재정렬된 양자화 계수들에 대한 엔트로피 부호화를 수행할 수 있다. 엔트로피 부호화부(130)는 재정렬부(125) 및 예측부(110)로부터 전달받은 부호화 유닛의 양자화 계수 정보 및 블록 타입 정보, 예측 모드 정보, 분할 단위 정보, 예측 유닛 정보 및 전송 단위 정보, 움직임 벡터 정보, 참조 픽쳐 정보, 블록의 보간 정보, 필터링 정보 등 다양한 정보를 부호화할 수 있다.
엔트로피 부호화에는 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법들이 사용될 수 있다. 예를 들어, 엔트로피 부호화부(130)에는 가변길이 부호화(VLC: Variable Length Coding, 이하 ‘VLC’라 함.) 테이블과 같은 엔트로피 부호화를 수행하기 위한 테이블이 저장될 수 있고, 엔트로피 부호화부(130)는 저장된 VLC 테이블을 이용하여 엔트로피 부호화를 수행할 수 있다. 또한 다른 예로서 CABAC 엔트로피 부호화 방법에서, 엔트로피 부호화부(130)는 심볼을 이진화하여 빈(bin)으로 변환한 후 빈의 발생 확률에 따라 빈에 대한 산술 부호화(arithmetic encoding)를 수행하여 비트스트림을 생성할 수도 있다.
엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼(symbol)에 낮은 값의 인덱스(index) 및 이에 대응하는 짧은 코드워드(codeword)가 할당되고, 낮은 발생 확률을 갖는 심볼에 높은 값의 인덱스 및 이에 대응하는 긴 코드워드가 할당될 수 있다. 따라서 부호화 대상 심볼들에 대한 비트량이 감소될 수 있고, 엔트로피 부호화에 의해 영상 압축 성능이 향상될 수 있다.
역양자화부(135)는 양자화부(120)에서 양자화된 값들을 역양자화하고, 역변환부(140)는 역양자화부(135)에서 역양자화된 값들을 역변환할 수 있다. 역양자화부(135) 및 역변환부(140)에서 생성된 잔차값(Residual)은 예측부(110)에서 예측된 예측 블록과 합쳐져 복원 블록(Reconstructed Block)이 생성될 수 있다.
필터부(145)는 디블록킹 필터 및/또는 ALF(Adaptive Loop Filter)를 복원된 픽쳐에 적용할 수 있다.
디블록킹 필터는 복원된 픽쳐에서 블록 간의 경계에 생긴 블록 왜곡을 제거할 수 있다. ALF(Adaptive Loop Filter)는, 디블록킹 필터를 통해 블록이 필터링된 후 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. ALF는 고효율을 적용하는 경우에만 수행될 수도 있다.
한편, 인터 예측에 사용되는 복원 블록에 대해서 필터부(145)는 필터링을 적용하지 않을 수 있다.
메모리(150)는 필터부(145)를 통해 산출된 복원 블록 또는 픽쳐를 저장할 수 있다. 메모리(150)에 저장된 복원 블록 또는 픽쳐는 인터 예측을 수행하는 예측부(110)에 제공될 수 있다.
부호화 유닛(Coding Unit: CU)은 픽쳐의 부호화/복호화가 수행되는 단위로서, 쿼드 트리 구조(Quad Tree Structure)를 기반으로 깊이(Depth)를 가지며 분할될 수 있다. 부호화 유닛은 64x64, 32x32, 16x16, 8x8 등의 여러 크기를 가질 수 있다.
부호화기는 최대 부호화 유닛(Largest Coding Unit: LCU)과 최소 부호화 유닛(Smallest Coding Unit: SCU)에 관한 정보를 복호화기에 전송할 수도 있다. 최대 부호화 유닛 및/또는 최소 부호화 유닛에 관한 정보와 함께 분할 가능한 회수에 관한 정보(깊이 정보)가 복호화기에 전송될 수 있다. 부호화 유닛이 쿼드 트리 구조를 기반으로 분할되는지에 관한 정보는 분할 플래그(Split Flag)와 같은 플래그 정보를 통해 부호화기로부터 복호화기로 전달될 수 있다.

도 2는 본 발명의 일 실시예에 따른 예측부를 개략적으로 도시한 개념도이다. 도 2를 참조하면 예측부(200)는 인터 예측부(210) 및 인트라 예측부(220) 를 포함할 수 있다.
인터 예측부(210)는 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐의 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다. 또한, 인트라 예측부(220)는 현재 픽쳐 내의 픽셀 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다.
인터 예측부(210)는 예측 유닛에 대하여, 참조 픽쳐를 선택하고 예측 유닛과 동일한 크기의 참조 블록을 정수 픽셀 샘플 단위로 선택할 수 있다. 이어서, 인터 예측부(210)는 1/2 픽셀 샘플 단위와 1/4 픽셀 샘플 단위와 같이 정수 이하 샘플 단위로 현재 예측 유닛과 가장 유사하여 잔차 신호가 최소화되며 부호화되는 움직임 벡터 크기 역시 최소가 될 수 있는 예측 블록을 생성할 수 있다. 이때, 움직임 벡터는 정수 픽셀 이하의 단위로 표현될 수 있으며, 예컨대 루마 픽셀에 대해서는 1/4 픽셀 단위로, 크로마 픽셀에 대해서는 1/8 픽셀 단위로 표현될 수 있다.
인터 예측부(210)가 선택한 참조 픽쳐의 인덱스와 움직임 벡터에 관한 정보는 부호화되어 복호화기에 전달될 수 있다.

도 3은 본 발명의 일 실시예에 따른 영상 복호화 장치를 개략적으로 나타낸 블록도이다. 도 3을 참조하면, 영상 복호화기(300)는 엔트로피 복호화부(310), 재정렬부(315), 역양자화부(320), 역변환부(325), 예측부(330), 필터부(335) 및 메모리(340)를 포함할 수 있다.
영상 부호화기에 영상 비트 스트림이 입력된 경우, 입력된 비트 스트림은 영상 부호화기에서 영상 정보가 처리된 절차에 따라서 복호화될 수 있다.
엔트로피 복호화부(310)는 입력된 비트스트림에 대하여 엔트로피 복호화를 수행할 수 있으며, 엔트로피 복호화 방법은 상술한 엔트로피 부호화 방법과 유사하다. 예컨대, 영상 부호화기에서 엔트로피 부호화를 수행하기 위해 CAVLC 등의 가변 길이 부호화(VLC: Variable Length Coding, 이하 ‘VLC’ 라 함)가 사용된 경우에는 엔트로피 복호화부(310)도 부호화기에서 사용한 VLC 테이블과 동일한 VLC 테이블을 구현하여 엔트로피 복호화를 수행할 수 있다. 영상 부호화기에서 엔트로피 부호화를 수행하기 위해, CABAC이 이용된 경우에도, 엔트로피 복호화부(310)는 이에 대응하여 CABAC을 이용한 엔트로피 복호화를 수행할 수 있다.
엔트로피 복호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼(symbol)에 낮은 값의 인덱스(index) 및 이에 대응하는 짧은 코드워드(codeword)가 할당되고, 낮은 발생 확률을 갖는 심볼에 높은 값의 인덱스 및 이에 대응하는 긴 코드워드가 할당될 수 있다. 따라서 부호화 대상 심볼들에 대한 비트량이 감소될 수 있고, 엔트로피 부호화에 의해 영상 압축 성능이 향상될 수 있다.
엔트로피 복호화부(310)에서 복호화된 정보 중 예측 블록을 생성하기 위한 정보는 예측부(330)로 제공되고 엔트로피 복호화부에서 엔트로피 복호화가 수행된 잔차값은 재정렬부(315)로 입력될 수 있다.
재정렬부(315)는, 엔트로피 복호화부(310)에서 엔트로피 복호화된 비트 스트림을 영상 부호화기에서 재정렬한 방법을 기초로 재정렬할 수 있다. 재정렬부(315)는 1차원 벡터 형태로 표현된 계수들을 다시 2차원의 블록 형태의 계수로 복원하여 재정렬할 수 있다. 재정렬부(315)는 부호화기에서 수행된 계수 스캐닝에 관련된 정보를 제공받고 해당 부호화부에서 수행된 스캐닝 순서에 기초하여 역으로 스캐닝하는 방법을 통해 재정렬을 수행할 수 있다.
역양자화부(320)는 부호화기에서 제공된 양자화 파라미터와 재정렬된 블록의 계수값을 기초로 역양자화를 수행할 수 있다.
역변환부(325)는, 영상 부호화기에서 수행된 양자화 결과에 대해 부호화기의 변환부가 수행한 DCT 및 DST에 대해, 역DCT 및/또는 역DST를 수행할 수 있다. 역변환은 부호화기에서 결정된 전송 단위 또는 영상의 분할 단위를 기초로 수행될 수 있다. 부호화기의 변환부에서 DCT 및/또는 DST는 예측 방법, 현재 블록의 크기 및 예측 방향 등 복수의 정보에 따라 선택적으로 수행될 수 있고, 복호화기의 역변환부(325)는 부호화기의 변환부에서 수행된 변환 정보를 기초로 역변환을 수행할 수 있다.
예측부(330)는 엔트로피 복호화부(310)에서 제공된 예측 블록 생성 관련 정보와 메모리(340)에서 제공된 이전에 복호화된 블록 및/또는 픽쳐 정보를 기초로 예측 블록을 생성할 수 있다. 복원 블록은 예측부(330)에서 생성된 예측 블록과 역변환부(325)에서 제공된 잔차 블록을 이용해 생성될 수 있다.
복원된 블록 및/또는 픽쳐는 필터부(335)로 제공될 수 있다. 필터부(335)는 복원된 블록 및/또는 픽쳐에 디블록킹 필터링, SAO(Sample Adaptive Offset) 및/또는 적응적 루프 필터링(ALF) 등을 적용할 수 있다.
메모리(340)는 복원된 픽쳐 또는 블록을 저장하여 참조 픽쳐 또는 참조 블록으로 사용할 수 있도록 할 수 있고 또한 복원된 픽쳐를 출력부로 제공할 수 있다.
도 4는 본 발명의 일 실시예에 따른 영상 복호화 장치의 예측부를 개략적으로 나타낸 개념도이다.
도 4를 참조하면, 예측부(400)는 인트라 예측부(410) 및 인터 예측부(420)를 포함할 수 있다.
인트라 예측부(410)는 해당 예측 유닛에 대한 예측 모드가 인트라 예측(intra prediction) 모드(화면 내 예측 모드)인 경우에, 현재 픽쳐 내의 픽셀 정보를 기초로 예측 블록을 생성할 수 있다.
인터 예측부(420)는 해당 예측 유닛에 대한 예측 모드가 인터 예측(inter prediction) 모드(화면 간 예측 모드)인 경우에, 영상 부호화기에서 제공된 현재 예측 유닛의 인터 예측에 필요한 정보, 예컨대 움직임 벡터, 참조 픽쳐 인덱스 등에 관한 정보를 이용해 현재 예측 유닛이 포함된 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐에 포함된 정보를 기초로 현재 예측 유닛에 대한 인터 예측을 수행할 수 있다.
이때, 움직임 정보는, 부호화기로부터 수신되는 부호화 유닛의 스킵 플래그, 머지 플래그 등이 확인된 경우, 이에 대응하여 유도될 수 있다.
이하, 발명의 구성 또는 표현에 따라 “영상” 또는 “화면”이 “픽쳐”와 같은 의미를 나타낼 수 있는 경우,“픽쳐”는 “영상” 또는 “화면”으로 기술될 수 있다. 또한 인터 예측(inter prediction)과 화면 간 예측은 동일한 의미를 가지며, 인트라 예측(intra prediction)과 화면 내 예측은 동일한 의미를 가진다.

도 5는 인트라 예측에 사용되는 예측 유닛의 실시예를 개략적으로 나타내는 개념도이다.
하나의 부호화 유닛은 복수 개의 예측 유닛으로 분할될 수 있다. 인트라 예측이 수행되는 경우에는 예측 유닛 단위로 예측 모드가 결정되어 예측 유닛 단위로 예측이 수행될 수 있다. 이 때, 예측 유닛 단위로 예측 모드가 정해지고 변환 유닛 단위로 인트라 예측이 수행될 수도 있다.
도 5의 510을 참조하면, 인트라 예측의 경우에 예측 유닛은 2N×2N 또는 N×N (N은 정수)의 크기일 수 있다. 이때, N×N 크기의 예측 유닛이 특정된 경우, 예컨대 N×N 크기의 예측 유닛은 최소 크기 부호화 유닛에 대해서만 적용되도록 정해지거나 인트라 예측에 대해서만 적용되도록 정해질 수도 있다. 예를 들어, 64x64 크기의 부호화 유닛에 대해 64x64 크기의 예측 유닛이 존재할 수 있고, 32x32 크기의 부호화 유닛에 대해 32x32 크기의 예측 유닛이 존재할 수 있다. 또한 16x16 크기의 부호화 유닛에 대해 16x16 크기의 예측 유닛이 존재할 수 있고, 8x8 크기의 부호화 유닛에 대해 8x8 및/또는 4x4 크기의 예측 유닛이 존재할 수 있다.
인트라 예측에 사용되는 예측 유닛은 정방형뿐만 아니라 직사각형의 형태를 가질 수도 있다. 도 5의 520을 참조하면, 예측 유닛의 크기는 hNx2N 또는 2NxhN(h=1/2)일 수 있다. 도 5의 530을 참조하면, 예측 유닛은 hNx2N 크기의 블록이 재차 분할된 (1/4)hNx2N 크기의 블록일 수 있으며, 2NxhN 크기의 블록이 재차 분할된 2Nx(1/4)hN 크기의 블록일 수도 있다. 도 5의 520, 530에서와 같이 직사각형 형태의 예측 유닛이 사용되는 경우의 인트라 예측은 SDIP(Short Distance Intra Prediction)로 불릴 수 있다.
예를 들어 SDIP가 적용되는 경우 32x32 크기의 부호화 유닛에 대해 8x32 및/또는 32x8 크기의 예측 유닛이 존재할 수 있고, 16x16 크기의 부호화 유닛에 대해 4x16 및/또는 16x4 크기의 예측 유닛이 존재할 수 있고, 8x8 크기의 부호화 유닛에 대해 2x8 및/또는 8x2 크기의 예측 유닛이 존재할 수 있다. 또한 일 실시예로 64x64 크기의 부호화 유닛에 대해서는 SDIP가 적용되지 않을 수 있으며, 16x16 크기의 부호화 유닛에 대해서는 추가로 1x16 및/또는 16x1 크기의 예측 유닛이 존재할 수 있다.
이 때, 하나의 정방형의 부호화 유닛이 분할된 직사각형 형태의 각각의 예측 유닛은 독립적인 인트라 예측 모드(intra prediction mode)를 가질 수 있다. 여기서, 각각의 예측 모드는 UDI(Unified Directional Intra) 모드에 부여된 모드값들 중 하나의 값을 가질 수 있다. UDI 모드에는 예를 들어 최대 34, 35 또는 36개의 인트라 예측 모드가 존재할 수 있으므로, 각각의 예측 유닛은 최대 34, 35 또는 36개의 모드 중 하나의 모드를 가질 수 있다.
또한 예측 유닛에 따라 독립적인 인트라 예측 모드를 갖는지 여부가 다르게 정해질 수 있다. 예를 들어, 도 5의 520에서와 같이 하나의 정방형의 부호화 유닛이 4개로 분할된 각각의 예측 유닛은 독립적인 인트라 예측 모드를 가질 수 있다. 도 5의 530에서와 같이 하나의 정방형 부호화 유닛이 4개로 분할된 예측 유닛이 다시 4개로 분할된 각각의 예측 유닛들은 서로 동일한 예측 모드를 가지는 것만이 허용될 수도 있다.

도 2 및 도 4의 실시예에서 상술한 바와 같이, 인트라 예측부는 현재 픽쳐 내의 픽셀 정보를 기초로 예측을 수행하여 현재 블록에 대한 예측 블록을 생성할 수 있다. 예를 들어, 인트라 예측부는 현재 블록을 중심으로, 상단, 좌측, 좌측 상단 및/또는 우측 상단에 위치한 복원된 블록 내의 픽셀들을 이용하여 현재 블록 내의 픽셀값을 예측할 수 있다.
인트라 예측 모드에는, 현재 블록의 픽셀값 예측에 사용되는 참조 픽셀들의 위치 및/또는 예측 방식 등에 따라, 수직(vertical), 수평(horizontal), DC, 플래너(planar), 앵귤러(angular) 모드 등이 있을 수 있다. 수직 모드에서는 인접 블록의 픽셀값을 사용하여 수직 방향으로 예측이 수행되고, 수평 모드에서는 인접 블록의 픽셀값을 사용하여 수평 방향으로 예측이 수행될 수 있다. 또한 DC 모드에서는 현재 블록 내의 픽셀값들의 평균에 의해 예측 블록이 생성될 수 있다. 앵귤러 모드에서는 각각의 모드에 대해 미리 정해진 각도 및/또는 방향에 따라 예측이 수행될 수 있다. 인트라 예측을 위하여 미리 정해진 예측 방향 및 예측 모드값이 사용될 수도 있으며, 인트라 예측에 사용되는 인트라 예측 모드의 수는 현재 블록의 크기에 따라서 달라질 수 있다.
예측 모드 정보의 전송 효율을 높이기 위해, 루마 성분에 대한 예측 모드는 현재 블록에 인접한 주변 블록의 예측 모드를 이용하여 부호화될 수 있다. 이 때, 현재 블록에 대한 예측값으로 MPM(Most Probable Mode)이 이용될 수도 있으며, 부호화기는 예측값이 현재 블록의 예측 모드로 사용되는지 여부에 대한 정보를 복호화기로 전송할 수 있다.

루마 성분과 달리, 크로마 성분에 대해서는 더 제한된 개수의 예측 모드가 허용될 수 있다. 이하, 크로마 성분에 대해 허용되는 제한된 개수의 예측 모드를 크로마 예측 모드 후보(chroma prediction mode candidate)라 한다. 크로마 모드에 대한 인트라 예측을 수행하는 경우에는, 상기 크로마 예측 모드 후보들 중 하나의 예측 모드에서 예측이 수행될 수 있다.
일 실시예로 크로마 예측 모드 후보에는 수직(vertical), 수평(horizontal), DC, 수직-8(vertical-8), DM 모드의 다섯 개의 후보가 있을 수 있다. 다른 실시예로 크로마 예측 모드 후보에는 LM, 수직, 수평, DC, DM 모드의 다섯 개의 후보가 있을 수 있다. 또 다른 실시예로 크로마 예측 모드 후보에는 LM, 수직, 수평, DC, 수직-8, DM 모드(Derived mode)의 여섯 개의 후보가 있을 수 있다. 또 다른 실시예로 크로마 예측 모드 후보에는 DM, LM, 플래너, 수직, 수평, DC 모드의 여섯 개의 후보가 있을 수 있다. 이 때, DM 모드에 의해 지시되는 예측 모드가 플래너, 수직, 수평, DC 모드 중 하나와 동일하면, DM 모드에 의해 지시되는 예측 모드와 동일한 예측 모드 대신 수직+8(vertical+8) 모드가 크로마 예측 모드 후보로 사용될 수도 있다. 크로마 예측 모드 후보는 상기 실시예에 한정되지 않고, 구현 및/또는 필요에 따라 달라질 수 있다. 여기서, LM 모드는 현재 블록에 인접한 주변 블록의 픽셀 및 현재 블록의 복원된 루마 성분 픽셀로부터 크로마 성분 픽셀의 예측값이 결정되는 예측 모드이고, DM 모드는 루마 성분의 예측 모드가 그대로 크로마 성분의 예측 모드로 사용되는 예측 모드이다.

크로마 성분의 예측 모드 정보 전송시에는 루마 성분과 달리, 예측값이 현재 블록의 예측 모드로 사용되는지 여부에 대한 정보가 전송되지 않을 수 있다. 현재 블록 내의 크로마 성분과 루마 성분은 서로 상관성을 가지므로, 크로마 성분의 예측 모드는 대응하는 루마 성분의 예측 모드를 이용하여 부호화될 수 있다.
다음 표 1은 루마 성분 예측 모드와 크로마 성분 예측 모드 간 관계의 일 실시예를 개략적으로 나타낸다. 표 상단의 0, 1, 2, X(3<=X<34)는 루마 성분의 예측 모드를 나타낸다. n/a는 DM 모드에서 처리되는 케이스와의 중복을 피하기 위해 사용되지 않도록 처리된 모드이다.
[표 1]
Figure PCTKR2011010224-appb-I000001

표 1을 참조하면, 예를 들어 루마 성분의 예측 모드가 0이고, 크로마 성분의 예측 모드 인덱스가 2일 때, 표 1에서 대응되는 값은 1이다. 따라서 이 때, 현재 블록의 크로마 성분에 대해서는 1의 모드값을 갖는 예측 모드로 예측이 수행될 수 있다. 만일, 1의 모드값을 갖는 예측 모드가 수평(horizontal) 모드라면, 현재 블록의 크로마 성분에 대해서는 수평 모드로 예측이 수행될 수 있다.
다음 표 2는 루마 성분 예측 모드와 크로마 성분 예측 모드 간 관계의 다른 실시예를 개략적으로 나타낸다. 표 상단의 0, 1, 2, 3, X(4<=X<35)는 루마 성분의 예측 모드를 나타낸다. n/a는 DM 모드에서 처리되는 케이스와의 중복을 피하기 위해 사용되지 않도록 처리된 모드이다.
[표 2]
Figure PCTKR2011010224-appb-I000002

표 2를 참조하면, 예를 들어 루마 성분의 예측 모드가 0이고, 크로마 성분의 예측 모드 인덱스가 2일 때, 표 1에서 대응되는 값은 1이다. 따라서 이 때, 현재 블록의 크로마 성분에 대해서는 1의 모드값을 갖는 예측 모드로 예측이 수행될 수 있다. 만일, 1의 모드값을 갖는 예측 모드가 수직(vertical) 모드라면, 현재 블록의 크로마 성분에 대해서는 수직 모드로 예측이 수행될 수 있다.
일 실시예로, 표 2에서 0의 모드값은 수직 모드, 모드값 1은 수평 모드, 모드값 2는 DC 모드, 모드값 3은 수직-8 모드, 모드값 35는 LM 모드를 나타낼 수 있다. 다른 실시예로, 표 2에서 모드값 0은 플래너 모드, 모드값 1은 수직 모드, 모드값 2는 수평 모드, 모드값 3은 DC 모드, 모드값 35는 LM 모드를 나타낼 수 있다.
루마 성분 예측 모드와 크로마 성분 예측 모드 간의 관계는 표 1 및 표 2의 실시예에 한정되는 것이 아니고, 구현 및/또는 필요에 따라 달라질 수 있다.

부호화기는 루마 성분의 예측 모드에 따라 크로마 성분 예측 모드 인덱스에 코드워드를 할당하여 엔트로피 부호화를 수행함으로써 비트 스트림을 생성할 수 있다. 이 때, 부호화기는 루마 성분의 예측 모드에 따라 크로마 성분 예측 모드 인덱스에 할당되는 코드워드의 길이를 달리함으로써 복호화기로 전송되는 비트량을 감소시킬 수 있다. 복호화기는, 수신된 상기 코드워드 정보와 루마 성분 예측 모드 정보로부터, 현재 블록의 크로마 성분에 대한 인트라 예측에 사용되는 실제 예측 모드를 도출할 수 있다.

도 6은 SDIP에서의 크로마 예측 모드 후보 생성 방법의 일 실시예를 개략적으로 나타내는 개념도이다. 도 6의 실시예에서는 크로마 성분에 대해 LM 모드가 사용되지 않고, 크로마 예측 모드 후보의 수는 5개로 제한된다고 가정한다.
도 5의 실시예에서 상술한 바와 같이, SDIP에서 하나의 정방형 블록이 분할된 직사각형 형태의 각각의 예측 유닛은 독립적인 인트라 예측 모드(intra prediction mode)를 가질 수 있다. 그러나, SDIP가 적용되는 경우에도 크로마 성분의 예측 유닛은 하나의 정방형 유닛일 수 있고, 크로마 성분의 예측 유닛에는 하나의 예측 모드만이 할당될 수 있다.
예를 들어, 루마 성분에 대한 예측 유닛의 크기가 hNx2N일 때, 하나의 정방형의 부호화 유닛이 분할된 4개의 루마 성분 예측 유닛은 각각 독립적인 예측 모드를 가질 수 있고, 따라서 하나의 부호화 유닛 내에 서로 다른 4개의 루마 성분 예측 모드가 존재할 수 있다. 그러나 상기 하나의 부호화 유닛의 루마 성분에 대응하는 크로마 성분의 예측 유닛은 하나의 정방형 예측 유닛이고, 하나의 크로마 성분 예측 유닛에는 1개의 크로마 성분 예측 모드가 존재할 수 있다.
SDIP가 사용되는 경우, 즉 2NxhN, hNx2N, 2Nx(1/4)hN 및/또는 (1/4)hNx2N 크기의 루마 성분 예측 유닛이 사용되는 경우에는, 하나의 부호화 유닛에 대해 복수 개의 루마 성분 예측 모드가 존재할 수 있다. 상술한 표 1의 실시예에 따른 DM 모드에서는 루마 성분의 예측 모드가 그대로 크로마 성분의 예측 모드로 사용될 수 있으나, SDIP가 사용되는 경우에 크로마 성분의 예측 모드로 사용할 수 있는 루마 성분의 예측 모드는 최대 4개일 수 있다. 이 때 크로마 성분 예측 모드는, 상술한 표 1의 실시예에 나타난 방법으로 결정되기 어려울 수 있다. 따라서 후술하는 방법에 따라 크로마 예측 모드 후보가 생성될 수 있다.
도 6의 610을 참조하면, 4개의 각 루마 성분 예측 유닛에서 사용된 예측 모드값이 오름차순으로 나열될 수 있다. 각 예측 유닛에서 사용된 예측 모드값에 이어서 0부터 3까지의 예측 모드값이 오름차순으로 나열될 수 있다. 이 때, 일 실시예로 0은 수직(vertical) 모드, 1은 수평(horizontal) 모드, 2는 DC 모드, 3은 수직-8(vertical-8) 모드의 모드값일 수 있다. 다른 실시예로, 0은 플래너(planar) 모드, 1은 수직 모드, 2는 수평 모드, 3은 DC 모드의 모드값일 수 있다. 이러한 방법으로 구성된 리스트 내에서 앞에서부터 5개의 예측 모드를 선택함으로써, 크로마 예측 모드 후보가 생성될 수 있다.
도 6의 620을 참조하면, 610에서와 유사하게 4개의 각 루마 성분 예측 유닛에서 사용된 예측 모드값이 오름차순으로 나열될 수 있다. 그리고 각 예측 유닛에서 사용된 예측 모드값에 이어서 0부터 3까지의 예측 모드값이 오름차순으로 나열될 수 있다. 상기 과정에서 중복되는 예측 모드는 제거될 수 있다. 예를 들어, 도 6의 620에서 예측 모드값 0은 루마 성분 예측 유닛에서 사용되는 예측 모드값이므로, 각 예측 유닛에서 사용된 예측 모드값에 이어서 나열되는 예측 모드값은 1부터 시작될 수 있다. 이러한 방법으로 구성된 리스트 내에서 앞에서부터 5개의 예측 모드를 선택함으로써, 크로마 예측 모드 후보가 생성될 수 있다.
크로마 모드에 대한 인트라 예측을 수행하는 경우에는, 상기 크로마 예측 모드 후보들 중 하나의 예측 모드에서 예측이 수행될 수 있다.
한편, 도 6의 실시예에 따른 크로마 예측 모드 후보 생성 방법은 경우에 따라 NxN 예측 유닛이 사용되는 경우에도 적용될 수 있다. 이는 NxN 예측 유닛이 사용되는 부호화 유닛 내에도 루마 성분 인트라 예측에 사용되는 예측 모드가 4개까지 존재할 수 있기 때문이다. 예를 들어, 도 6의 실시예에 따른 크로마 예측 모드 후보 생성 방법은 8x8 크기의 부호화 유닛이 4x4 크기의 예측 유닛으로 분할되는 경우에도 적용될 수 있다.

상술한 도 6의 실시예에서는 LM 모드가 사용되지 않는 경우에 대해 서술되고 있으나, 크로마 성분에 대한 인트라 예측시에 SDIP와 LM 모드가 함께 사용될 수도 있다. 이 때, SDIP와 LM 모드가 분리되어 서로 동시에 사용되지 않고 독립적으로 사용될 수 있다. 또한 SDIP와 LM 모드가 결합되어 동시에 사용될 수도 있다.
SDIP와 LM 모드가 분리되어 독립적으로 사용되는 경우, SDIP가 사용되는 부호화 유닛에 대해서는 LM 모드가 사용되지 않을 수 있다. 또한 LM 모드는 SDIP가 사용되지 않는 2Nx2N 또는 NxN 크기의 예측 유닛에만 적용될 수도 있다.

도 7은 SDIP와 LM 모드가 동시에 사용되는 경우 크로마 예측 모드 후보 생성 방법의 일 실시예를 개략적으로 나타내는 개념도이다. 이하, SDIP가 적용된 각각의 루마 성분 예측 유닛에서 사용되는 예측 모드는 루마 예측 모드라 한다.
SDIP와 LM 모드가 동시에 사용되는 경우, 크로마 예측 모드 후보를 생성하기 위해서, 루마 예측 모드, LM 모드, 0 내지 3의 모드값에 해당되는 UDI 모드 및/또는 상기 모드들의 조합 등이 사용될 수 있다. 이 때, 하나의 부호화 유닛 내에 복수 개의 직사각형 예측 유닛이 존재할 수 있고 각각의 예측 유닛은 독립적인 예측 모드값을 가질 수 있으므로, 하나의 부호화 유닛 내에서 크로마 성분에 대응하는 루마 예측 모드의 수는 복수 개일 수 있다. 또한, 일 실시예로 0은 수직(vertical) 모드, 1은 수평(horizontal) 모드, 2는 DC 모드, 3은 수직-8(vertical-8) 모드의 모드값일 수 있다. 다른 실시예로 0은 플래너 모드, 1은 수직 모드, 2는 수평 모드, 3은 DC 모드의 모드값일 수도 있다.
일 실시예로, 크로마 예측 모드 후보는 루마 예측 모드, LM 모드 및 0 내지 3의 모드값에 해당되는 UDI 모드를 모두 포함할 수 있다. 그러나, 이 경우 최대 8개의 예측 모드 후보가 존재할 수 있으므로, 부호화기에서 복호화기로 전송되는 비트량이 클 수 있다. 따라서 전송되는 정보량을 감소시키기 위해, 크로마 예측 모드 후보에 포함될 수 있는 예측 모드의 최대 개수를 제한하는 방법 또는 상술한 LM, 수직, 수평, DC, 수직-8 모드 중에서 일부만을 선택적으로 크로마 예측 모드 후보로 선택하는 방법 등이 제공될 수 있다.
예를 들어 루마 예측 모드, LM 모드, 수직 모드, 수평 모드, DC 모드, 수직-8 모드를 포함하여 허용되는 최대 크로마 예측 모드 후보 개수가 5개 또는 6개로 제한될 수 있다. 다른 예로서, 루마 예측 모드, 수직 모드, 수평 모드, DC 모드, 수직-8 모드를 포함한 예측 모드 후보의 수가 5보다 작은 경우에만 또는 6보다 작은 경우에만 LM 모드가 사용될 수도 있다. 또 다른 예로서, 루마 예측 모드 및 LM 모드의 조합만으로 크로마 예측 모드 후보가 생성될 수도 있다. 일 실시예로, hNx2N 크기의 예측 유닛이 사용되고 각각의 예측 유닛에 대한 루마 예측 모드값이 모두 다른 경우에 크로마 예측 모드 후보의 수는 5개일 수 있다. 또 다른 예로서, 상술한 방법들의 조합에 의해 크로마 예측 모드 후보가 생성될 수도 있다.
도 7은 상기 실시예들 중 최대 크로마 예측 모드 후보 개수가 6개로 제한되는 경우의 크로마 예측 모드 후보 생성 방법의 실시예를 도시한다.
도 7의 실시예를 참조하면, 크로마 예측 모드 후보의 최대 개수는 6개로 제한될 수 있다. 또한 각 예측 유닛에서 사용되는 루마 예측 모드는 5, 7, 9, 10이다. 따라서 5, 7, 9, 10의 예측 모드값이 오름차순으로 나열될 수 있다. 5, 7, 9, 10 다음에 LM 모드가 나열되고, LM 모드 다음에 0, 1, 2, 3의 모드값이 오름차순으로 나열될 수 있다. 이러한 방법으로 구성된 리스트 내에서 앞에서부터 6개의 예측 모드를 선택함으로써, 크로마 예측 모드 후보가 생성될 수 있다. 크로마 모드에 대한 인트라 예측을 수행하는 경우에는, 상기 크로마 예측 모드 후보들 중 하나의 예측 모드에서 예측이 수행될 수 있다.

도 1 및 도 3에서 상술한 바와 같이, 부호화기 및 복호화기에는 VLC 테이블과 같은 엔트로피 부호화를 수행하기 위한 테이블이 저장될 수 있고, 부호화기 및 복호화기는 저장된 VLC 테이블을 이용하여 엔트로피 부호화를 수행할 수 있다. 또한 CABAC 엔트로피 부호화 방법에서, 부호화기 및 복호화기는 심볼을 이진화한 후 발생 확률에 따라 산술 부호화를 수행하여 비트스트림을 생성할 수도 있다.
엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼에 낮은 값의 인덱스 및 이에 대응하는 짧은 코드워드가 할당되고, 낮은 발생 확률을 갖는 심볼에 높은 값의 인덱스 및 이에 대응하는 긴 코드워드가 할당될 수 있다. 따라서 부호화 대상 심볼들에 대한 비트량이 감소될 수 있다.
크로마 예측 모드 후보가 생성되면, 발생 빈도가 더 높은 예측 모드에 더 짧은 코드워드가 할당됨으로써 부호화 효율이 향상될 수 있다. 일반적으로 더 짧은 코드워드에 더 낮은 인덱스가 매핑될 수 있으므로, 이 경우에 발생 빈도가 더 높은 예측 모드에 더 낮은 인덱스가 할당될 수 있다.

생성된 크로마 예측 모드 후보에는 발생 빈도에 따라 가변적으로 코드워드가 할당될 수 있다. 다음 표 3은 크로마 예측 모드 후보의 수 및 인덱스에 따른 코드워드 할당 방법의 일 실시예를 나타낸다.
[표 3]
Figure PCTKR2011010224-appb-I000003

표 3을 참조하면, 예를 들어 크로마 예측 모드 후보의 수가 4이고 현재 예측 모드에 할당된 인덱스가 1일 때 현재 예측 모드에 할당되는 코드워드는 ‘01’이 될 수 있다. 또한 크로마 예측 모드 후보의 수가 1이고 현재 예측 모드에 할당된 인덱스가 0일 때에는, 현재 예측 모드에 별도의 코드워드가 할당되지 않을 수 있다. 이 때에는 현재 예측 모드가 그대로 추정될 수 있다.
다음 표 4는 크로마 예측 모드 후보의 수 및 인덱스에 따른 코드워드 할당 방법의 다른 실시예를 나타낸다.
[표 4]
Figure PCTKR2011010224-appb-I000004

표 4를 참조하면, 예를 들어 크로마 예측 모드 후보의 수가 4이고 현재 예측 모드에 할당된 인덱스가 1일 때 현재 예측 모드에 할당되는 코드워드는 ‘10’이 될 수 있다. 또한 크로마 예측 모드 후보의 수가 1이고 현재 예측 모드에 할당된 인덱스가 0일 때에는, 현재 예측 모드에 별도의 코드워드가 할당되지 않을 수 있다. 이 때에는 현재 예측 모드가 그대로 추정(infer)될 수 있다.

크로마 예측 모드 후보가 생성되면, LM 모드에도 인덱스가 할당될 수 있다. 더 낮은 인덱스가 더 짧은 코드워드에 매핑될 수 있으므로, 크로마 예측 모드 후보들이 각 후보에 할당된 인덱스의 오름차순으로 나열된 경우, LM 모드에 할당된 인덱스 및/또는 코드워드 정보는 크로마 예측 모드 후보에서의 LM 모드의 위치에 관한 정보로도 볼 수 있다.
LM 모드의 적용 여부에 관한 정보는 별도의 플래그(flag)를 통해 부호화기에서 복호화기로 전송될 수 있다. 또한 LM 모드에 할당된 인덱스 정보 및/또는 LM 모드의 위치에 관한 정보가 부호화기에서 복호화기로 전송될 수도 있다.
또한, LM 모드에는 항상 소정의 고정된 인덱스가 할당될 수도 있다. 이 때, LM 모드의 위치는 크로마 예측 모드 후보 내의 특정 위치로 고정될 수 있다. 예를 들어, LM 모드에는 항상 가장 낮은 인덱스 및/또는 가장 짧은 코드워드가 할당될 수 있다. 다른 예로서, LM 모드에는 항상 가장 높은 인덱스 및/또는 가장 긴 코드워드가 할당될 수 있다. 또 다른 예로서, LM 모드에는 항상 두 번째로 낮은 인덱스 및/또는 두 번째로 짧은 코드워드가 할당될 수도 있다. LM 모드에 가장 낮은 인덱스가 할당되는 경우의 구체적인 실시예는 후술한다.
또한, LM 모드에 할당되는 인덱스는 루마 예측 모드의 값에 따라 선택적으로 결정될 수도 있다. 이 때, LM 모드의 위치는 루마 예측 모드의 값에 따라 선택적으로 결정될 수 있다. 일 실시예로, 루마 예측 모드로부터 얻어진 크로마 예측 모드 후보들 중, 일부에는 LM 모드보다 낮은 인덱스가 할당되고 나머지에는 LM 모드보다 높은 인덱스가 할당될 수 있다. 예를 들어, 루마 예측 모드로부터 얻어진 후보들 중 LM 모드보다 낮은 인덱스가 할당되는 후보의 모드값이 0, 1, 2로 설정된 경우를 가정한다. 이 때, 루마 예측 모드의 모드값들이 2, 0, 10, 17일 때, 크로마 예측 모드 후보의 순서는 각 후보에 할당된 인덱스의 오름차순으로 0, 2, LM, 10, 17일 수 있다.

도 8은 크로마 예측 모드 후보에 대한 인덱스 할당 방법의 일 실시예를 개략적으로 나타내는 개념도이다. 도 8의 실시예는 SDIP와 LM 모드가 동시에 사용되는 경우의 인덱스 할당 방법을 도시한다. 도 8의 실시예에서 a, b, c, d는 루마 예측 모드의 모드값을 나타낸다.
도 8을 참조하면, 크로마 예측 모드 후보들은 인덱스가 낮은 순서로 나열된다. 가장 낮은 인덱스는 루마 예측 모드로부터 얻어진 크로마 예측 모드 후보들에 할당될 수 있다. SDIP에서 루마 예측 모드의 개수는 복수개일 수 있으며, 예를 들어 4개일 수 있다. 루마 예측 모드의 개수가 4개인 경우에는 0, 1, 2, 3 네 개의 인덱스가 루마 예측 모드로부터 얻어진 크로마 예측 모드 후보들에 할당될 수 있다. 그 다음으로 낮은 인덱스는 LM 모드에 할당될 수 있다. 남은 인덱스들은 낮은 순서대로 모드값이 0 내지 2인 예측 모드에 할당될 수 있다. 크로마 예측 모드 후보의 개수는 6개로 제한될 수 있으며, 따라서 인덱스 0 내지 5가 할당된 예측 모드가 크로마 성분 인트라 예측에 사용될 수 있다.
상술한 방법에 의하면 루마 예측 모드에 LM 모드보다 더 낮은 인덱스가 할당될 수 있다. 즉, 루마 예측 모드에 더 짧은 코드워드가 할당될 수 있다. LM 모드에는 상대적으로 긴 코드워드가 할당될 수 있다.

도 9는 크로마 예측 모드 후보에 대한 인덱스 할당 방법의 다른 실시예를 개략적으로 나타내는 개념도이다. 도 9의 실시예는 SDIP와 LM 모드가 동시에 사용되는 경우의 인덱스 할당 방법을 도시한다. 도 9의 실시예에서 a, b, c, d는 루마 예측 모드의 모드값을 나타낸다.
도 9를 참조하면, 크로마 예측 모드 후보들은 인덱스가 낮은 순서로 나열된다. 도 9의 실시예에서 가장 낮은 인덱스(예를 들어, 0)는 LM 모드에 할당될 수 있다. 그 다음으로 낮은 인덱스는 루마 예측 모드로부터 얻어진 크로마 예측 모드 후보들에 할당될 수 있다. SDIP에서 루마 예측 모드의 개수는 복수개일 수 있으며, 예를 들어 4개일 수 있다. 루마 예측 모드의 개수가 4개인 경우에는 1, 2, 3, 4 네 개의 인덱스가 루마 예측 모드로부터 얻어진 크로마 예측 모드 후보들에 할당될 수 있다. 남은 인덱스들은 낮은 순서대로 모드값이 0 내지 2인 예측 모드에 할당될 수 있다. 크로마 예측 모드 후보의 개수는 6개로 제한될 수 있으며, 따라서 인덱스 0 내지 5가 할당된 예측 모드가 크로마 성분 인트라 예측에 사용될 수 있다.
상술한 방법에 의하면 LM 모드에 루마 예측 모드보다 더 낮은 인덱스가 할당될 수 있다. 즉, LM 모드에 더 짧은 코드워드가 할당될 수 있다. SDIP에서는 하나의 부호화 유닛 내에 4개의 루마 예측 모드가 존재할 수 있으므로, 각각의 루마 예측 모드 발생 확률은 LM 모드 발생 확률보다 낮을 수 있다. 따라서, LM 모드에 더 짧은 코드워드를 할당함으로써 부호화 효율이 향상될 수 있다.
이하, 복호화기 입장에서 도 9의 실시예에 따른 크로마 예측 모드 후보 생성, 인덱스 할당 및 크로마 예측 모드 도출 과정의 일 실시예가 서술된다.
상기 처리를 위한 입력에는 현재 픽쳐 내에서 현재 블록의 위치 및 현재 부호화 유닛의 크기 등이 있을 수 있으며, 출력은 현재 크로마 성분에 대한 인트라 예측 모드이다. 이는 다음과 같이 나타내어질 수 있다.

Figure PCTKR2011010224-appb-I000005

현재 예측 유닛의 크기가 2Nx2N 또는 NxN일 때, 즉 SDIP가 적용되지 않을 때에는, 루마 성분 예측 모드와 크로마 성분 예측 모드 간 관계의 일 실시예로서, 다음 표 5 및 표 6에 의해 크로마 예측 모드가 도출될 수 있다.
[표 5]
Figure PCTKR2011010224-appb-I000006

[표 6]
Figure PCTKR2011010224-appb-I000007

표 5의 실시예에 따른 테이블은 LM 모드가 적용되는 경우에 사용되고, 표 6의 실시예에 따른 테이블은 LM 모드가 적용되지 않는 경우에 사용될 수 있다. LM 모드가 적용되는지 여부는 부호화기로부터 전송된 플래그에 의해 지시될 수 있으며, 일 실시예로 상기 플래그는 chroma_pred_from_luma_enabled_flag일 수 있다. 또한 표 5 및 표 6의 실시예에서, 예를 들어 34는 LM 모드, 0은 수직 모드, 1은 수평 모드, 2는 DC 모드를 나타낼 수 있다.
루마 성분 예측 모드와 크로마 성분 예측 모드 간 관계는 상술한 표 5 및 표 6의 실시예에 한정되는 것이 아니고, 구현 및/또는 필요에 따라 달라질 수 있다. 예를 들어 SDIP가 적용되지 않을 때, 루마 성분 예측 모드와 크로마 성분 예측 모드 간 관계의 다른 실시예로서, 다음 표 7 및 표 8에 의해 크로마 예측 모드가 도출될 수도 있다.
[표 7]
Figure PCTKR2011010224-appb-I000008

[표 8]
Figure PCTKR2011010224-appb-I000009

표 7의 실시예에 따른 테이블은 LM 모드가 적용되는 경우에 사용되고, 표 8의 실시예에 따른 테이블은 LM 모드가 적용되지 않는 경우에 사용될 수 있다. LM 모드가 적용되는지 여부는 부호화기로부터 전송된 플래그에 의해 지시될 수 있으며, 일 실시예로 상기 플래그는 chroma_pred_from_luma_enabled_flag일 수 있다. 또한 표 7 및 표 8의 실시예에서, 예를 들어 LM은 LM 모드, 0은 플래너(planar) 모드, 1은 수직 모드, 2는 수평 모드, 3은 DC 모드, 7은 수직+8(vertical+8) 모드를 나타낼 수 있다.
이하, 실시예들은 편의상 표 7 및 표 8에 나타난 실시예를 기반으로 서술된다.
복호화기는 표 7 및 표 8에 나타난 크로마 성분 예측 모드 및 루마 성분 예측 모드간의 관계를 통해 크로마 예측 모드를 도출할 수 있다. 이는 다음과 같이 나타내어질 수 있다.

Figure PCTKR2011010224-appb-I000010

여기서, Table 8-3 및 Table 8-4는 각각 표 7 및 표 8에 대응될 수 있다. 또한, intra_chroma_pred_mode는 크로마 성분의 예측 모드 인덱스, IntraPredMode는 루마 성분의 예측 모드일 수 있다.
현재 예측 유닛의 크기가 2NxhN 또는 hNx2N일 때, 즉 SDIP가 적용될 때, 복호화기는 상기 표 7 및/또는 표 8을 사용하지 않고 별도의 크로마 예측 모드 후보를 생성하고, 생성된 후보에 인덱스를 할당할 수 있다.
이를 위해, 복호화기는 각각의 예측 유닛의 위치 또는 크기를 특정할 수 있으며, 이는 다음과 같이 나타내어질 수 있다.

Figure PCTKR2011010224-appb-I000011

복호화기는 LM 모드에 가장 낮은 인덱스를 할당할 수 있으며, 이는 다음과 같이 나타내어질 수 있다.

Figure PCTKR2011010224-appb-I000012

복호화기는 현재 부호화 유닛에서 사용되는 루마 예측 모드를 탐색할 수 있으며, 이는 다음과 같이 나타내어질 수 있다.

Figure PCTKR2011010224-appb-I000013

복호화기는 LM 모드에 할당된 인덱스 다음으로 낮은 인덱스를 루마 예측 모드에 할당할 수 있다. 나머지 인덱스들도 루마 예측 모드와 중복되지 않는 조건하에서 낮은 순서대로 0 내지 3의 예측 모드에 할당될 수 있다. 이 때, 6개의 인덱스가 모두 할당되지 않은 경우, 나머지 인덱스는 7의 예측 모드에 할당될 수 있다. 이는 다음과 같이 나타내어질 수 있다.

Figure PCTKR2011010224-appb-I000014

복호화기는 부호화기로부터 전송된 크로마 성분의 예측 모드 인덱스 정보를 기초로 크로마 예측 모드를 도출할 수 있다. 상기 크로마 성분의 예측 모드 인덱스 정보는 예를 들어, intra_chroma_pred_mode일 수 있다. 이는 다음과 같이 나타내어질 수 있다.

Figure PCTKR2011010224-appb-I000015

다음 표 9는 도 9의 실시예에 따른 인덱스 할당 방법을 이용한 실험 결과 측정된 BD-레이트를 나타내는 시뮬레이션 결과이다. Y는 루마 성분, U, V는 두 개의 크로마 성분을 의미한다. 부호화 시간 및 복호화 시간은 부호화 및 복호화 수행에 대한 복잡도를 나타낼 수 있다.
[표 9]
Figure PCTKR2011010224-appb-I000016

실험은 인트라 모드에서 수행되었고, 고효율(HE: High Efficiency, 이하 ‘HE’라 한다.) 구성 및 저복잡도(LC: Low Complexity, 이하 ‘LC’라 한다.) 구성에서 각각 수행되었다.
표 9를 참조하면, HE 및 LC에서 크로마 성분에 대한 BD-rate가 모두 평균적으로 감소되어 부호화 효율이 향상됨이 확인될 수 있다. 또한 HE 및 LC에서 부호화 시간 및 복호화 시간이 모두 증가되지 않았으므로, 복잡도(complexity)가 증가되지 않고 유지될 수 있다.

도 10은 SDIP와 LM 모드가 동시에 사용되는 경우의 크로마 예측 모드 정보 전송 방법의 일 실시예를 나타내는 흐름도이다.
도 10을 참조하면, 부호화기는 현재 부호화 유닛에 대한 크로마 예측 모드 후보를 생성한다(S1010). 크로마 예측 모드 후보의 생성 방법은 도 7의 실시예에서 상술한 바와 같다.
예를 들어, 최대 크로마 예측 모드 후보 개수가 5개 또는 6개로 제한될 수 있다. 다른 예로서, 루마 예측 모드 및 LM 모드의 조합만으로 크로마 예측 모드 후보가 생성될 수도 있다. 이외에도 상술한 다양한 방법에 의해 크로마 예측 모드 후보가 생성될 수 있다.
부호화기는 생성된 크로마 예측 모드 후보에, 코드워드에 대응하는 인덱스를 할당하여 크로마 예측 모드 후보 리스트를 생성한다(S1020). 여기서, 크로마 예측 모드 후보 리스트는 각각에 인덱스가 할당된 크로마 예측 모드 후보의 세트를 의미할 수 있다. 부호화기는 발생 확률이 높은 예측 모드에 낮은 인덱스 및/또는 짧은 코드워드를 할당함으로써, 부호화 효율을 향상시킬 수 있다. 인덱스 할당 방법은 표 3 내지 표 9, 도 8, 도 9의 실시예에서 상술한 바와 같다.
부호화기는 현재 블록의 크로마 예측 모드를 결정한 후, 상기 크로마 예측 모드 후보 리스트에 포함된 후보들 중 현재 블록의 크로마 예측 모드와 동일한 후보에 할당된 인덱스에 관한 정보를 복호화기로 전송한다(S1030). 이하, 현재 블록의 크로마 예측 모드와 동일한 크로마 예측 모드 후보에 할당된 인덱스에 관한 정보는 크로마 예측 모드 인덱스 정보라 한다.

도 11은 SDIP와 LM 모드가 동시에 사용되는 경우의 크로마 예측 모드 도출 방법의 일 실시예를 나타내는 흐름도이다.
도 11을 참조하면, 복호화기는 현재 부호화 유닛에 대한 크로마 예측 모드 후보를 생성한다(S1110). 크로마 예측 모드 후보의 생성 방법은 도 7의 실시예에서 상술한 바와 같다.
복호화기는 생성된 크로마 예측 모드 후보에, 코드워드에 대응하는 인덱스를 할당하여 크로마 예측 모드 후보 리스트를 생성한다(S1120). 여기서, 크로마 예측 모드 후보 리스트는 각각에 인덱스가 할당된 크로마 예측 모드 후보의 세트를 의미할 수 있다. 복호화기는, 부호화기와 동일한 방법으로, 크로마 예측 모드 후보에 인덱스를 할당할 수 있다. 인덱스 할당 방법은 표 3 내지 표 9, 도 8, 도 9의 실시예에서 상술한 바와 같다.
복호화기는 상기 크로마 예측 모드 후보 리스트 및 부호화기로부터 전송된 크로마 예측 모드 인덱스 정보를 이용하여 크로마 예측 모드를 도출한다(S1130).

도 12는 SDIP와 LM 모드가 동시에 사용되는 경우 크로마 예측 모드 후보 생성 방법의 다른 실시예를 개략적으로 나타내는 흐름도이다.
상술한 실시예들에서는 크로마 예측 모드 후보 생성시, 현재 부호화 유닛에 포함된 모든 루마 예측 모드가 후보로 사용될 수 있다. 그러나, 부호화기로부터 복호화기로 전송되는 정보량을 감소시키기 위해, 크로마 예측 모드 후보 생성에 사용되는 최종 루마 예측 모드의 수를 감소시키는 방법이 제공될 수 있다.
도 12를 참조하면, 부호화기 및 복호화기는 크로마 예측 모드 후보로 사용되는 최종 루마 예측 모드를 도출한다(S1210).
일 실시예로 부호화기 및 복호화기는 현재 부호화 유닛에 포함된 루마 예측 모드 중 일부 예측 모드만을 크로마 예측 모드 후보 생성에 사용할 수 있다.
예를 들어, 부호화기 및 복호화기는 현재 부호화 유닛 내에서 SDIP가 적용된 예측 유닛들 중 첫 번째 예측 유닛이 갖는 루마 예측 모드를 크로마 예측 모드 후보 생성에 사용할 수 있다. 다른 예로서, 부호화기 및 복호화기는 현재 부호화 유닛 내에서 SDIP가 적용된 예측 유닛들 중 마지막 예측 유닛이 갖는 루마 예측 모드를 크로마 예측 모드 후보 생성에 사용할 수도 있다.
또 다른 예로, 부호화기 및 복호화기는 루마 예측 모드들 중 가장 낮은 인덱스가 할당된 예측 모드를 크로마 예측 모드 후보 생성에 사용할 수 있고, 인덱스가 낮은 순서로 복수의 예측 모드를 선택하여 크로마 예측 모드 후보 생성에 사용할 수도 있다. 낮은 인덱스가 할당된 예측 모드는 일반적으로 발생 빈도가 높을 수 있다.
또 다른 예로, 부호화기 및 복호화기는 현재 부호화 유닛에 포함된 예측 유닛들 중 2 이상의 예측 유닛이 동일하게 갖는 루마 예측 모드만을 선택하여 크로마 예측 모드 후보 생성에 사용할 수도 있다. SDIP가 적용되는 경우에, 상기 예측 유닛의 크기는 2NxhN, hNx2N, 2Nx(1/4)hN, (1/4)hNx2N 등일 수 있다.
다른 실시예로 부호화기 및 복호화기는 루마 예측 모드에 대해 별도의 매핑(mapping) 과정을 적용하여 크로마 예측 모드 후보 생성에 사용되는 최종 루마 예측 모드의 수를 감소시킬 수 있다. 상기 매핑 과정을 통한 최종 루마 예측 모드의 도출 방법은 도 13의 실시예에서 후술한다.
다시 도 12를 참조하면, 부호화기 및 복호화기는 도출된 최종 루마 예측 모드를 이용하여 크로마 예측 모드 후보를 생성한다(S1220).

도 13은 매핑 과정을 통한 최종 루마 예측 모드의 도출 방법을 개략적으로 나타내는 개념도이다.
도 12의 실시예에서 상술한 바와 같이, 매핑 과정을 통해 크로마 예측 모드 후보 생성에 사용되는 최종 루마 예측 모드의 수가 감소될 수 있다.
예를 들어, 현재 부호화 유닛의 예측 유닛이 갖는 루마 예측 모드들 중 유사한 각도를 갖는 예측 모드들에 대해서는, 하나의 대표값을 갖는 예측 모드만이 크로마 예측 모드 후보 생성에 사용될 수 있다.
이 때, 상기 대표값은 유사한 각도를 갖는 예측 모드들 중 가장 낮은 인덱스가 할당된 예측 모드의 모드값일 수 있다. 또한 상기 대표값은 유사한 각도를 갖는 예측 모드들 중 가장 높은 인덱스가 할당된 예측 모드의 모드값일 수도 있다. 또한 상기 대표값은 유사한 각도를 갖는 예측 모드들 중 중간값에 해당하는 인덱스가 할당된 예측 모드의 모드값일 수도 있다.
또한 상기 대표값은, 인트라 모드에서 예측 유닛이 가질 수 있는 전체 예측 모드들이 각도에 따라 서브 샘플링(sub-sampling)된 후, 서브 샘플링된 예측 모드 중 하나의 모드가 갖는 모드값일 수 있다.
도 13을 참조하면, 인트라 모드에서 예측 유닛이 가질 수 있는 예측 모드에는 다양한 각도를 갖는 예측 모드들이 있을 수 있다. 이 때, A 각도, B 각도 및 C 각도를 갖는 예측 모드들은 서브 샘플링되어, 모두 C 각도를 갖는 예측 모드에 매핑(mapping)될 수 있다. 따라서, 예측 유닛이 A각도, B 각도 또는 C 각도의 루마 예측 모드를 갖는 경우에는 C 각도의 예측 모드가 크로마 예측 모드 후보 생성에 사용될 수 있다.

SDIP가 사용되는 경우, 즉 2NxhN, hNx2N, 2Nx(1/4)hN, (1/4)hNx2N 크기의 예측 유닛이 사용되는 경우, 상술한 크로마 예측 모드 후보를 결정하는 방법들은 현재 블록 및/또는 부호화 유닛의 크기에 따라 선택적으로 적용될 수 있다. 상기 부호화 유닛은 쿼드 트리 구조(Quad Tree Structure)를 기반으로 LCU로부터 반복적(recursive)으로 분할될 수 있다. 따라서, 상술한 크로마 예측 모드 후보를 결정하는 방법들은, 현재 부호화 유닛이 LCU로부터 몇 번 분할되었는지 여부를 지시하는 분할 횟수 정보에 따라 선택적으로 적용될 수도 있다.
예를 들어, 현재 부호화 유닛이 SCU인 경우에만, 도 13의 실시예에 따라 매핑(mapping) 과정을 적용하여 크로마 예측 모드 후보 생성에 사용되는 최종 루마 예측 모드의 수를 감소시키는 방법이 사용될 수 있다. 이 때, 도 13의 실시예에서 상술한 바와 같이 루마 예측 모드들 중 유사한 각도를 갖는 예측 모드들에 대해서는, 하나의 대표값을 갖는 예측 모드만이 크로마 예측 모드 후보 생성에 사용될 수도 있다. 이 때 사용되는 대표값의 구체적인 실시예는 생략한다.
또한 예를 들어, 현재 부호화 유닛이 LCU인 경우에는 SDIP가 적용되지 않을 수 있다. SDIP가 적용되지 않는 경우에는 2NxhN, hNx2N, 2Nx(1/4)hN, (1/4)hNx2N 크기의 예측 유닛이 사용되지 않을 수 있다. 이 때, 예를 들어 크로마 성분의 예측 모드는 LM, 수직, 수평, DC, DM 모드 중 하나의 예측 모드로 결정될 수 있고, LM, 수직, 수평, 수직-8, DC, DM 모드 중 하나의 예측 모드로 결정될 수도 있다. 다른 예로서, 크로마 성분의 예측 모드는 DM, LM, 플래너, 수직, 수평, DC 모드 중 하나의 예측 모드로 결정될 수도 있다. 이 때, DM 모드에 의해 지시되는 예측 모드가 플래너, 수직, 수평, DC 모드 중 하나와 동일한 경우, DM 모드에 의해 지시되는 예측 모드와 동일한 예측 모드 대신 수직+8(vertical+8) 모드가 사용될 수도 있다.

상술한 실시예에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당업자라면 순서도에 나타낸 단계들이 배타적이지 않고, 다른 단계가 포함되거나 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.
상술한 실시예는 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능합을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.

Claims (18)

  1. SDIP(Short Distance Intra Prediction)가 적용된 예측 유닛을 기반으로 하는 영상 복호화 방법으로서,
    코드워드에 대응하는 인덱스를 크로마 예측 모드 후보들에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계; 및
    상기 생성된 크로마 예측 모드 후보 리스트 및 부호화기로부터 전송된 크로마 예측 모드 인덱스 정보를 이용하여 현재 블록의 크로마 예측 모드를 도출하는 단계를 포함하고,
    상기 크로마 예측 모드 후보 리스트는 각각에 인덱스가 할당된 크로마 예측 모드 후보의 세트이고, 상기 크로마 예측 모드 인덱스 정보는 상기 크로마 예측 모드 후보 리스트에 포함된 후보들 중 상기 현재 블록의 크로마 예측 모드와 동일한 후보에 할당된 인덱스에 관한 정보이고,
    상기 크로마 예측 모드 후보 리스트는 LM 모드 및 루마 예측 모드를 포함하고, 상기 루마 예측 모드는 크로마 성분 예측 유닛에 대응하는 복수의 루마 성분 예측 유닛들의 예측 모드들을 포함하는 영상 복호화 방법.
  2. 청구항 1에 있어서, 상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는,
    상기 LM 모드에 가장 낮은 인덱스를 할당하는 영상 복호화 방법.
  3. 청구항 2에 있어서, 상기 크로마 예측 모드 후보 리스트에 포함된 상기 크로마 예측 모드 후보들의 개수는 소정의 고정된 개수로 제한되는 영상 복호화 방법.
  4. 청구항 3에 있어서, 상기 소정의 고정된 개수는 5 또는 6인 영상 복호화 방법.
  5. 청구항 2에 있어서, 상기 크로마 예측 모드 후보 리스트는 상기 LM 모드 및 상기 루마 예측 모드만을 포함하는 영상 복호화 방법.
  6. 청구항 1에 있어서, 상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는,
    상기 LM 모드에 가장 높은 인덱스를 할당하는 영상 복호화 방법
  7. 청구항 1에 있어서, 상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는,
    상기 루마 예측 모드에 포함된 예측 모드들 중 일부 예측 모드에 LM 모드보다 낮은 인덱스를 할당하고, 상기 루마 예측 모드에 포함된 예측 모드들 중 나머지 예측 모드에 LM 모드보다 높은 인덱스를 할당하는 영상 복호화 방법.
  8. 청구항 1에 있어서, 상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는,
    부호화기로부터 전송된 플래그(flag) 정보에 기초하여 LM 모드에 인덱스를 할당하는 영상 복호화 방법.
  9. 청구항 1에 있어서, 상기 루마 예측 모드는 상기 크로마 성분 예측 유닛에 대응하는 상기 복수의 루마 성분 예측 유닛들의 예측 모드들 중 일부만을 포함하는 영상 복호화 방법.
  10. 청구항 1에 있어서, 상기 루마 예측 모드는, 상기 크로마 성분 예측 유닛에 대응하는 상기 복수의 루마 성분 예측 유닛들의 예측 모드들 각각에 대응되는, 서브 샘플링(sub-sampling)된 예측 모드들을 포함하는 영상 복호화 방법.
  11. SDIP(Short Distance Intra Prediction)가 적용된 예측 유닛을 기반으로 하는 영상 복호화 장치로서,
    부호화기로부터 전송된 크로마 예측 모드 인덱스 정보를 엔트로피 복호화하는 엔트로피 복호화부; 및
    코드워드에 대응하는 인덱스를 크로마 예측 모드 후보들에 할당하여 크로마 예측 모드 후보 리스트를 생성하고, 상기 생성된 크로마 예측 모드 후보 리스트 및 상기 엔트로피 복호화된 크로마 예측 모드 인덱스 정보를 이용하여 현재 블록의 크로마 예측 모드를 도출하고, 상기 도출된 크로마 예측 모드를 이용하여 상기 현재 블록의 크로마 성분에 대한 인트라 예측을 수행하는 인트라 예측부를 포함하고,
    상기 크로마 예측 모드 후보 리스트는 각각에 인덱스가 할당된 크로마 예측 모드 후보의 세트이고, 상기 크로마 예측 모드 인덱스 정보는 상기 크로마 예측 모드 후보 리스트에 포함된 후보들 중 상기 현재 블록의 크로마 예측 모드와 동일한 후보에 할당된 인덱스에 관한 정보이고,
    상기 크로마 예측 모드 후보 리스트는 LM 모드 및 루마 예측 모드를 포함하고, 상기 루마 예측 모드는 크로마 성분 예측 유닛에 대응하는 복수의 루마 성분 예측 유닛들의 예측 모드들을 포함하는 영상 복호화 장치.
  12. SDIP(Short Distance Intra Prediction)가 적용된 예측 유닛을 기반으로 하는 크로마 예측 모드 도출 방법으로서,
    코드워드에 대응하는 인덱스를 크로마 예측 모드 후보들에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계; 및
    상기 생성된 크로마 예측 모드 후보 리스트 및 부호화기로부터 전송된 크로마 예측 모드 인덱스 정보를 이용하여 현재 블록의 크로마 예측 모드를 도출하는 단계를 포함하고,
    상기 크로마 예측 모드 후보 리스트는 각각에 인덱스가 할당된 크로마 예측 모드 후보의 세트이고, 상기 크로마 예측 모드 인덱스 정보는 상기 크로마 예측 모드 후보 리스트에 포함된 후보들 중 상기 현재 블록의 크로마 예측 모드와 동일한 후보에 할당된 인덱스에 관한 정보이고,
    상기 크로마 예측 모드 후보 리스트는 LM 모드 및 루마 예측 모드를 포함하고, 상기 루마 예측 모드는 크로마 성분 예측 유닛에 대응하는 복수의 루마 성분 예측 유닛들의 예측 모드들을 포함하는 크로마 예측 모드 도출 방법.
  13. 청구항 12에 있어서, 상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는,
    상기 LM 모드에 가장 낮은 인덱스를 할당하는 크로마 예측 모드 도출 방법.
  14. 청구항 13에 있어서, 상기 크로마 예측 모드 후보 리스트에 포함된 상기 크로마 예측 모드 후보들의 개수는 소정의 고정된 개수로 제한되는 크로마 예측 모드 도출 방법.
  15. 청구항 14에 있어서, 상기 소정의 고정된 개수는 5 또는 6인 크로마 예측 모드 도출 방법.
  16. 청구항 12에 있어서, 상기 코드워드에 대응하는 인덱스를 크로마 예측 모드 후보에 할당하여 크로마 예측 모드 후보 리스트를 생성하는 단계에서는,
    부호화기로부터 전송된 플래그(flag) 정보에 기초하여 LM 모드에 인덱스를 할당하는 크로마 예측 모드 도출 방법.
  17. 청구항 12에 있어서, 상기 루마 예측 모드는 상기 크로마 성분 예측 유닛에 대응하는 상기 복수의 루마 성분 예측 유닛들의 예측 모드들 중 일부만을 포함하는 크로마 예측 모드 도출 방법.
  18. 청구항 12에 있어서, 상기 루마 예측 모드는, 상기 크로마 성분 예측 유닛에 대응하는 상기 복수의 루마 성분 예측 유닛들의 예측 모드들 각각에 대응되는, 서브 샘플링(sub-sampling)된 예측 모드들을 포함하는 크로마 예측 모드 도출 방법.
PCT/KR2011/010224 2011-03-21 2011-12-28 영상 부호화/복호화 방법 및 장치 WO2012128453A1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201161454588P 2011-03-21 2011-03-21
US61/454,588 2011-03-21
US201161470504P 2011-04-01 2011-04-01
US61/470,504 2011-04-01
US201161506653P 2011-07-12 2011-07-12
US61/506,653 2011-07-12

Publications (1)

Publication Number Publication Date
WO2012128453A1 true WO2012128453A1 (ko) 2012-09-27

Family

ID=46879564

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2011/010224 WO2012128453A1 (ko) 2011-03-21 2011-12-28 영상 부호화/복호화 방법 및 장치

Country Status (1)

Country Link
WO (1) WO2012128453A1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016115981A1 (en) * 2015-01-22 2016-07-28 Mediatek Singapore Pte. Ltd. Method of video coding for chroma components
WO2017091023A1 (ko) * 2015-11-24 2017-06-01 삼성전자 주식회사 비디오 복호화 방법 및 장치, 그 부호화 방법 및 장치
WO2017091007A1 (ko) * 2015-11-24 2017-06-01 삼성전자 주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2018174357A1 (ko) * 2017-03-22 2018-09-27 엘지전자 주식회사 영상 코딩 시스템에서 영상 디코딩 방법 및 장치
WO2019098464A1 (ko) * 2017-11-14 2019-05-23 삼성전자 주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
CN110166785A (zh) * 2018-07-25 2019-08-23 腾讯科技(深圳)有限公司 帧内预测方法和装置、以及存储介质和电子装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060121651A (ko) * 2003-07-18 2006-11-29 소니 가부시끼 가이샤 화상 정보 부호화 장치 및 방법, 및 화상 정보 복호 장치및 방법
KR20100036284A (ko) * 2007-01-12 2010-04-07 미쓰비시덴키 가부시키가이샤 동화상 부호화 장치, 동화상 부호화 방법, 동화상 복호 장치 및 동화상 복호 방법
KR20110003414A (ko) * 2009-07-04 2011-01-12 에스케이 텔레콤주식회사 영상 부호화/복호화 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060121651A (ko) * 2003-07-18 2006-11-29 소니 가부시끼 가이샤 화상 정보 부호화 장치 및 방법, 및 화상 정보 복호 장치및 방법
KR20100036284A (ko) * 2007-01-12 2010-04-07 미쓰비시덴키 가부시키가이샤 동화상 부호화 장치, 동화상 부호화 방법, 동화상 복호 장치 및 동화상 복호 방법
KR20110003414A (ko) * 2009-07-04 2011-01-12 에스케이 텔레콤주식회사 영상 부호화/복호화 방법 및 장치

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016115981A1 (en) * 2015-01-22 2016-07-28 Mediatek Singapore Pte. Ltd. Method of video coding for chroma components
US10321140B2 (en) 2015-01-22 2019-06-11 Mediatek Singapore Pte. Ltd. Method of video coding for chroma components
WO2017091023A1 (ko) * 2015-11-24 2017-06-01 삼성전자 주식회사 비디오 복호화 방법 및 장치, 그 부호화 방법 및 장치
WO2017091007A1 (ko) * 2015-11-24 2017-06-01 삼성전자 주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2018174357A1 (ko) * 2017-03-22 2018-09-27 엘지전자 주식회사 영상 코딩 시스템에서 영상 디코딩 방법 및 장치
WO2019098464A1 (ko) * 2017-11-14 2019-05-23 삼성전자 주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
CN110166785A (zh) * 2018-07-25 2019-08-23 腾讯科技(深圳)有限公司 帧内预测方法和装置、以及存储介质和电子装置
CN110166785B (zh) * 2018-07-25 2022-09-13 腾讯科技(深圳)有限公司 帧内预测方法和装置、以及存储介质和电子装置

Similar Documents

Publication Publication Date Title
US11924441B2 (en) Method and device for intra prediction
US10841622B2 (en) Entropy encoding method, entropy decoding method, and apparatus using same
KR101857110B1 (ko) 영상 부호화/복호화 방법 및 그 장치
KR101425772B1 (ko) 영상 부호화 및 복호화 방법과 이를 이용한 장치
WO2013058520A1 (ko) 인트라 예측 방법 및 그 장치
WO2012173315A1 (ko) 인트라 예측 모드 부호화/복호화 방법 및 장치
WO2013058473A1 (ko) 화면 내 예측 모드에 기초한 적응적인 변환 방법 및 이러한 방법을 사용하는 장치
WO2012138032A1 (ko) 영상 정보 부호화 방법 및 복호화 방법
WO2012128453A1 (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: 11861600

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: 11861600

Country of ref document: EP

Kind code of ref document: A1