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

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

Info

Publication number
WO2014010943A1
WO2014010943A1 PCT/KR2013/006144 KR2013006144W WO2014010943A1 WO 2014010943 A1 WO2014010943 A1 WO 2014010943A1 KR 2013006144 W KR2013006144 W KR 2013006144W WO 2014010943 A1 WO2014010943 A1 WO 2014010943A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
prediction
sample
mode
target block
Prior art date
Application number
PCT/KR2013/006144
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 한국전자통신연구원
Priority claimed from KR1020130080797A external-priority patent/KR20140008503A/ko
Publication of WO2014010943A1 publication Critical patent/WO2014010943A1/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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Definitions

  • the present invention relates to image encoding and decoding, and more particularly, to image encoding and decoding based on scalable video coding (SVC).
  • SVC scalable video coding
  • the supporting performance is also diversified by device.
  • the network in which information is transmitted is also diversified not only in the external structure such as wired and wireless networks, but also in functions such as the type of information to be transmitted, the amount and speed of information.
  • the user selects a terminal and a network to be used according to a desired function, and the spectrum of terminals and networks provided to the user by the enterprise is also diversified.
  • Ultra High Definition which has more than four times the resolution of HDTV
  • the demand for technology for compressing and processing higher resolution and higher quality images is increasing.
  • an inter prediction technique for predicting a pixel value included in a current picture from a previous and / or subsequent picture in time, another pixel included in the current picture using pixel information in the current picture
  • An intra prediction technique for predicting a value an entropy encoding technique for allocating a short sign to a high frequency symbol and a long code to a low frequency symbol may be used.
  • the quality, size, frame, etc. of the supported images need to be diversified accordingly.
  • the present invention provides an image encoding / decoding method and apparatus capable of improving encoding / decoding efficiency.
  • the present invention provides a method and apparatus for increasing compression efficiency in scalable video encoding / decoding.
  • the present invention provides a method and apparatus for predicting an image of a current layer using information of another layer in scalable video encoding / decoding.
  • an image decoding method may include determining an intra prediction mode by deriving an MPM list of a prediction target block of an enhancement layer, deriving a reference sample for prediction of the prediction target block, and the intra prediction mode. And deriving a prediction sample of the prediction target block by performing intra prediction on the prediction target block based on the reference sample.
  • the reference sample may include at least one of a neighboring block adjacent to the prediction target block, a corresponding block of a base layer corresponding to the prediction target block, a neighboring block adjacent to the corresponding block, and any specific block of the lower layer. Can be derived from a sample in a block of.
  • an image decoding apparatus for decoding an image derives an MPM list for a prediction target block of an enhancement layer to determine an intra prediction mode, derives a reference sample for prediction of the prediction target block, and calculates the intra prediction mode and the reference.
  • an intra prediction unit configured to derive a prediction sample of the prediction target block by performing intra prediction on the prediction target block based on a sample.
  • the reference sample may include at least one of a neighboring block adjacent to the prediction target block, a corresponding block of a base layer corresponding to the prediction target block, a neighboring block adjacent to the corresponding block, and any specific block of the lower layer. Can be derived from a sample in a block of.
  • a video encoding method may include determining an intra prediction mode by deriving an MPM list of a prediction target block of an enhancement layer, deriving a reference sample for prediction of the prediction target block, and the intra prediction mode. And deriving a prediction sample of the prediction target block by performing intra prediction on the prediction target block based on the reference sample.
  • the reference sample may include at least one of a neighboring block adjacent to the prediction target block, a corresponding block of a base layer corresponding to the prediction target block, a neighboring block adjacent to the corresponding block, and any specific block of the lower layer. Can be derived from a sample in a block of.
  • an image encoding apparatus derives an MPM list of a prediction target block of an enhancement layer to determine an intra prediction mode, derives a reference sample for prediction of the prediction target block, the intra prediction mode and the And an intra prediction unit configured to derive a prediction sample of the prediction target block by performing intra prediction on the prediction target block based on a reference sample.
  • the reference sample may include at least one of a neighboring block adjacent to the prediction target block, a corresponding block of a base layer corresponding to the prediction target block, a neighboring block adjacent to the corresponding block, and any specific block of the lower layer. Can be derived from a sample in a block of.
  • reference and coding parameter information that cannot be used are derived from a lower layer to improve prediction and encoding / decoding efficiency.
  • FIG. 1 is a block diagram illustrating a configuration of an image encoding apparatus according to an embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment of the present invention.
  • FIG. 3 is a conceptual diagram schematically illustrating an example of a scalable video coding structure using multiple layers to which the present invention can be applied.
  • FIG. 4 is a diagram illustrating an example of an intra prediction mode.
  • FIG. 5 is a diagram illustrating a prediction target block and a neighboring block.
  • FIG. 6 is a flowchart schematically illustrating an image decoding method using intra prediction according to an embodiment of the present invention.
  • FIG. 7 is a diagram illustrating an example of a neighboring block used to derive an MPM list according to an embodiment of the present invention.
  • FIG. 8 is a flowchart schematically illustrating a method of deriving a reference sample according to an embodiment of the present invention.
  • FIG. 9 is a diagram illustrating a padding method of a reference sample according to an embodiment of the present invention.
  • FIG. 10 is a conceptual diagram illustrating an example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • FIG. 11 is a conceptual diagram for explaining another example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • FIG. 12 is a conceptual diagram for explaining another example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • FIG. 13 is a conceptual diagram illustrating another example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • FIG. 14 is a conceptual diagram for explaining another example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • 15 is a flowchart schematically illustrating an image encoding method using intra prediction according to an embodiment of the present invention.
  • first and second may be used to describe various configurations, but the configurations are not limited by the terms. The terms are used to distinguish one configuration from another.
  • first configuration may be referred to as the second configuration, and similarly, the second configuration may also be referred to as the first configuration.
  • each component shown in the embodiments of the present invention are independently shown to represent different characteristic functions, and do not mean that each component is made of separate hardware or one software component unit.
  • each component is listed as a component for convenience of description, and at least two of the components may form one component, or one component may be divided into a plurality of components to perform a function.
  • the integrated and separated embodiments of each component 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 in the scope of the present invention.
  • FIG. 1 is a block diagram illustrating a configuration of an image encoding apparatus according to an embodiment of the present invention.
  • a scalable video encoding / decoding method or apparatus may be implemented by extension of a general video encoding / decoding method or apparatus that does not provide scalability, and the block diagram of FIG. An embodiment of an image encoding apparatus that may be the basis of a flexible video encoding apparatus is illustrated.
  • the image encoding apparatus 100 may include a motion predictor 111, a motion compensator 112, an intra predictor 120, a switch 115, a subtractor 125, a transformer 130, A quantization unit 140, an entropy encoding unit 150, an inverse quantization unit 160, an inverse transform unit 170, an adder 175, a filter unit 180, and a reference picture buffer 190 are included.
  • the image encoding apparatus 100 may encode an input image in an intra mode or an inter mode and output a bitstream.
  • the switch 115 may be switched to intra, and in the inter mode, the switch 115 may be switched to inter.
  • Intra prediction means intra prediction and inter prediction means inter prediction.
  • the image encoding apparatus 100 may generate a prediction block for an input block of an input image and then encode a residual between the input block and the prediction block. In this case, the input image may mean an original picture.
  • the intra predictor 120 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already encoded / decoded around the current block.
  • the motion predictor 111 may obtain a motion vector by searching for a region that best matches an input block in the reference image stored in the reference picture buffer 190 during the motion prediction process.
  • the motion compensator 112 may generate a prediction block by performing motion compensation using the motion vector.
  • the motion vector is a two-dimensional vector used for inter prediction, and may indicate an offset between the current encoding / decoding target image and the reference image.
  • the subtractor 125 may generate a residual block by the difference between the input block and the generated prediction block.
  • the transform unit 130 may output a transform coefficient by performing a transform on the residual block.
  • the transform coefficient may mean a coefficient value generated by performing transform on the residual block and / or the residual signal.
  • a quantized transform coefficient level generated by applying quantization to a transform coefficient may also be referred to as a transform coefficient.
  • the quantization unit 140 may quantize the input transform coefficient according to a quantization parameter or a quantization parameter, and output a quantized coefficient. Quantized coefficients may be referred to as quantized transform coefficient levels. In this case, the quantization unit 140 may quantize the input transform coefficients using the quantization matrix.
  • the entropy encoder 150 may output a bitstream by performing entropy encoding based on values calculated by the quantization unit 140 or encoding parameter values calculated in the encoding process.
  • entropy encoding When entropy encoding is applied, a small number of bits are assigned to a symbol having a high probability of occurrence and a large number of bits are assigned to a symbol having a low probability of occurrence, thereby representing bits for encoding symbols. The size of the heat can be reduced. Therefore, compression performance of image encoding may be increased through entropy encoding.
  • the entropy encoder 150 may use an encoding method such as Exponential-Golomb, Context-Adaptive Variable Length Coding (CAVLC), or Context-Adaptive Binary Arithmetic Coding (CABAC) for entropy encoding.
  • an encoding method such as Exponential-Golomb, Context-Adaptive Variable Length Coding (CAVLC), or Context-Adaptive Binary Arithmetic Coding (CABAC) for entropy encoding.
  • the image encoding apparatus 100 Since the image encoding apparatus 100 according to the embodiment of FIG. 1 performs inter prediction encoding, that is, inter prediction encoding, the currently encoded image needs to be decoded and stored to be used as a reference image. Accordingly, the quantized coefficients are inversely quantized by the inverse quantizer 160 and inversely transformed by the inverse transformer 170. The inverse quantized and inverse transformed coefficients are added to the prediction block through the adder 175 and a reconstructed block is generated.
  • the reconstruction block passes through the filter unit 180, and the filter unit 180 applies at least one or more of a deblocking filter, a sample adaptive offset (SAO), and an adaptive loop filter (ALF) to the reconstructed block or reconstructed picture. can do.
  • the filter unit 180 may be referred to as an adaptive in-loop filter.
  • the deblocking filter can remove block distortion generated at the boundary between blocks.
  • SAO can add an appropriate offset to the pixel value to compensate for coding errors.
  • the ALF may perform filtering based on a value obtained by comparing the reconstructed image with the original image.
  • the reconstructed block that has passed through the filter unit 180 may be stored in the reference picture buffer 190.
  • FIG. 2 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment of the present invention.
  • the scalable video encoding / decoding method or apparatus may be implemented by extension of a general video encoding / decoding method or apparatus that does not provide scalability, and the block diagram of FIG. 2 is scalable.
  • An embodiment of an image decoding apparatus that may be the basis of a video decoding apparatus.
  • the image decoding apparatus 200 may include an entropy decoder 210, an inverse quantizer 220, an inverse transformer 230, an intra predictor 240, a motion compensator 250, and an adder 255. ), A filter unit 260 and a reference picture buffer 270.
  • the image decoding apparatus 200 may receive a bitstream output from the encoder and perform decoding in an intra mode or an inter mode, and output a reconstructed image, that is, a reconstructed image.
  • the switch In the intra mode, the switch may be switched to intra, and in the inter mode, the switch may be switched to inter.
  • the image decoding apparatus 200 may obtain a reconstructed residual block from the received bitstream, generate a prediction block, and then add the reconstructed residual block and the prediction block to generate a reconstructed block, that is, a reconstruction block. .
  • the entropy decoder 210 may entropy decode the input bitstream according to a probability distribution to generate symbols including symbols in the form of quantized coefficients.
  • the quantized coefficients are inversely quantized by the inverse quantizer 220 and inversely transformed by the inverse transformer 230, and as a result of the inverse quantization / inverse transformation of the quantized coefficients, a reconstructed residual block may be generated.
  • the inverse quantization unit 220 may apply a quantization matrix to the quantized coefficients.
  • the intra predictor 240 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already decoded around the current block.
  • the motion compensator 250 may generate a predictive block by performing motion compensation using the reference vector stored in the motion vector and the reference picture buffer 270.
  • the residual block and the prediction block may be added through the adder 255, and the added block may pass through the filter unit 260.
  • the filter unit 260 may apply at least one or more of the deblocking filter, SAO, and ALF to the reconstructed block or the reconstructed picture.
  • the filter unit 260 may output a reconstructed image, that is, a reconstructed image.
  • the reconstructed picture may be stored in the reference picture buffer 270 and used for inter prediction.
  • FIG. 3 is a conceptual diagram schematically illustrating an example of a scalable video coding structure using multiple layers to which the present invention can be applied.
  • a GOP Group of Picture
  • FIG. 3 a GOP (Group of Picture) represents a picture group, that is, a group of pictures.
  • a transmission medium In order to transmit image data, a transmission medium is required, and its performance varies depending on the transmission medium according to various network environments.
  • a scalable video coding method may be provided for application to such various transmission media or network environments.
  • a video coding method that supports scalability removes redundancy between layers by using texture information, motion information, and residual signals between layers.
  • a coding method that improves encoding and decoding performance may provide various scalability in terms of spatial, temporal, and image quality (or quality) according to peripheral conditions such as transmission bit rate, transmission error rate, and system resources. have.
  • Scalable video coding may be performed using multiple layers structure to provide a bitstream applicable to various network situations.
  • the scalable video coding structure may include a base layer that compresses and processes image data using a general image decoding method, and compresses the image data using both the decoding information of the base layer and a general image decoding method. May include an enhancement layer for processing.
  • the layer is an image and a bit divided based on spatial (eg, image size), temporal (eg, decoding order, image output order, frame rate), image quality, complexity, and the like.
  • the base layer may mean a reference layer, a base layer, or a lower layer
  • the enhancement layer may mean an enhancement layer or an upper layer.
  • the plurality of layers may have a dependency between each other.
  • the base layer may be defined as a standard definition (SD), a frame rate of 15 Hz, and a 1 Mbps bit rate
  • the first enhancement layer may be a high definition (HD), a frame rate of 30 Hz, and a 3.9 Mbps bit rate
  • the second enhancement layer may be defined as 4K-UHD (ultra high definition), a frame rate of 60 Hz, and a bit rate of 27.2 Mbps.
  • the format, frame rate, bit rate, etc. are exemplary and may be determined differently as necessary.
  • the number of hierarchies used is not limited to this embodiment and may be determined differently according to a situation. For example, if the transmission bandwidth is 4 Mbps, the frame rate of the first enhancement layer HD may be reduced and transmitted at 15 Hz or less.
  • the scalable video coding method can provide temporal, spatial and image quality scalability by the method described above in the embodiment of FIG. 3.
  • scalable video coding has the same meaning as scalable video encoding in terms of encoding and scalable video decoding in terms of decoding.
  • FIG. 4 is a diagram illustrating an example of an intra prediction mode.
  • Intra prediction may be performed based on an intra prediction mode (or intra prediction mode) of the prediction target block.
  • the intra prediction mode may include a directional mode and a non-directional mode according to a direction and / or a prediction method in which reference samples (reference pixels) used to predict a sample value (pixel value) of a prediction target block are located.
  • the intra prediction mode may include a fixed number (eg, 35) modes regardless of the size of the prediction block.
  • the number of prediction modes may differ depending on whether the color component of the prediction block is a luma signal or a chroma signal in the intra prediction mode.
  • the 'intra_ FromLuma' mode illustrated in FIG. 4 may be a specific mode that predicts a color difference signal from a luminance signal.
  • FIG 4 shows 33 directional prediction modes and at least two non-directional prediction modes (eg, DC mode and planar mode).
  • the non-directional prediction mode may include a DC mode and a planar mode.
  • the DC mode may use one fixed value as a prediction value of the samples in the prediction target block.
  • one fixed value in DC mode may be derived by an average of sample values located around the prediction target block.
  • vertical interpolation and horizontal interpolation may be performed using samples vertically adjacent to the prediction target block and samples horizontally adjacent, and the average thereof may be used as a prediction value of the samples in the prediction target block.
  • the directional prediction mode is a mode indicating a direction in which the reference sample is located, and may indicate a corresponding direction by an angle between the prediction target sample and the reference sample in the prediction target block.
  • the directional prediction mode may be called an angular mode, and may include a vertical mode, a horizontal mode, and the like.
  • a sample value vertically adjacent to the block to be predicted may be used as a predicted value of the sample in the block to be predicted.
  • the horizontal mode a sample value horizontally adjacent to the block to be predicted may be used as the predicted value of the sample in the block to be predicted. It is available.
  • the other Angular modes except for the vertical mode and the horizontal mode may derive the prediction value of the sample in the prediction target block by using reference samples positioned at predetermined angles and / or directions for each mode.
  • the intra prediction mode may be assigned a predetermined prediction mode number according to a predetermined angle and / or a prediction direction.
  • the mode number assigned to the planar mode may be 0, and the mode number assigned to the DC mode may be 1.
  • the mode number assigned to the vertical mode may be 26, and the mode number assigned to the horizontal mode may be 10.
  • the other Angular modes except for the vertical and horizontal modes may be assigned different mode numbers according to the angle and / or the prediction direction of the intra prediction mode.
  • the prediction direction of the intra prediction mode and the mode number assigned to the intra prediction mode shown in FIG. 4 are one example, and the present invention is not limited thereto. If necessary, the prediction direction and the prediction mode number of the intra prediction mode can be changed. In addition, the number (type) of intra prediction modes may be changed and applied as necessary.
  • the intra prediction mode for the prediction target block may be transmitted as a value indicating the mode itself, information for predicting the prediction mode value of the prediction target block may be transmitted to increase transmission efficiency.
  • a prediction value for the prediction mode of the prediction target block may be derived using the prediction mode of the reconstructed neighboring block adjacent to the prediction target block. Can be. Prediction modes used as prediction values for the prediction mode of the prediction target block are referred to as an optimal mode (MPM).
  • MPM optimal mode
  • the prediction target block means a prediction block (PB) or a prediction unit (PU) in which a current prediction is performed.
  • the prediction block may be divided into a plurality of partitions.
  • each of the plurality of partitions may be a unit in which prediction is performed.
  • the prediction block may be divided into 2Nx2N and NxN partition type prediction blocks, and the prediction blocks may be squares having sizes of 4x4, 8x8, 16x16, 32x32, and 64x64.
  • the inter prediction mode it can be divided into prediction blocks of 2Nx2N, 2NxN, Nx2N, NxN, 2NxnU, 2NxnD, nLx2N, nRx2N partition types, and the prediction blocks are squares having sizes of 4x4, 8x8, 16x16, 32x32, 64x64, etc. Or it may be a rectangle having a size of 2x8, 4x8, 2x16, 4x16, 8x16.
  • the prediction block may be at least one of a coding block (CB), a prediction block (PB), and a transform block (TB).
  • the processing unit in which the prediction is performed and the processing unit in which the prediction method and the specific content are determined may be different from each other.
  • the prediction mode may be determined for each prediction unit, and prediction may be performed.
  • the prediction mode may be determined for each prediction unit, and the prediction may be performed for each transform unit.
  • each partition in which the prediction block is divided may also be referred to as a prediction block.
  • Intra picture encoding / decoding may use sample values or encoding parameters of the reconstructed neighboring blocks.
  • the reconstructed neighboring block is a block that is already encoded or decoded and reconstructed and may be a block adjacent to the prediction target block.
  • the encoding parameter may be an encoding mode (intra mode or inter mode), an intra prediction mode, an inter prediction mode, a block size, a quantization parameter (QP), a coded block flag (CBF), or the like.
  • FIG. 5 is a diagram illustrating a prediction target block and a neighboring block.
  • the prediction target block EE may be predicted based on an intra prediction mode to predict a sample value of the prediction target block EE.
  • intra prediction on the prediction target block EE may be performed using samples of the reconstructed neighboring block adjacent to the prediction target block EE.
  • the reconstructed neighboring block may be a block that is already encoded or decoded and reconstructed.
  • the reconstructed neighboring block includes an upper left block EA adjacent to the upper left side of the prediction target block EE and an upper end adjacent to the top of the prediction target block EE according to the encoding / decoding order.
  • upper right block EC near the upper right side of the prediction target block EE
  • left block ED near the left side of the prediction target block EE
  • prediction target There may be a bottom left block EG adjacent to the bottom left of the block EE.
  • reference samples used for intra prediction of the prediction target block EE may be derived from samples in the reconstructed neighboring blocks EA, EB, EC, ED, and EG.
  • the reference sample may be a sample 510 (hereinafter, upper left sample) in the upper left block (EA), samples 512 (hereinafter, upper samples) in the upper block EB, and an upper right block (EC). ) Samples 514 (hereinafter, upper right samples), Samples 516 (hereinafter, left samples) in the left block ED, Samples 518 (hereafter, in the lower left block EG) Bottom left samples).
  • Each of the prediction target block EE and the reconstructed neighboring blocks EA, EB, EC, ED, and EG shown in FIG. 5 may be divided into blocks of smaller size, and even in this case, reconstruction adjacent to each divided block.
  • Intra encoding / decoding may be performed by using samples or encoding parameters of the neighboring block.
  • prediction of the prediction target block is performed using reference samples and encoding parameters derived from the reconstructed neighboring blocks.
  • blocks (right block and lower block) located on the right and the bottom of the prediction target block or the prediction target block are blocks that are not yet encoded / decoded
  • information about the blocks does not exist.
  • reference samples and encoding parameters used for intra prediction on the prediction target block may be derived from blocks that are encoded / decoded (blocks located at the top and left of the prediction target block) before the prediction target block in the encoding / decoding order. Can be. In this case, the prediction error tends to increase toward the right or the bottom of the prediction target block.
  • an encoded / decoded block (upper and left block)
  • a method of predicting using all information about uncoded / decoded blocks (prediction target block, right side and bottom block).
  • information about sample values and encoding parameters of unencoded / decoded blocks may be derived from other layers (eg, base layers or lower layers) that have already been restored. Can be. Therefore, according to the present invention, the encoding and decoding efficiency can be improved by minimizing the prediction error.
  • the current layer may be a layer to which a target block to be currently encoded / decoded belongs and may refer to a higher layer or an enhancement layer.
  • the lower layer may mean one or more layers that are relatively below the current layer, and may refer to the base layer.
  • FIG. 6 is a flowchart schematically illustrating an image decoding method using intra prediction according to an embodiment of the present invention.
  • the method of FIG. 6 may be performed by the decoding apparatus of FIG. 2 described above. More specifically, it may be performed by the intra predictor of FIG. 2 described above.
  • the decoding apparatus determines an intra prediction mode by deriving an optimal mode list (hereinafter, referred to as MPM) for a prediction target block of a current layer (eg, an upper layer or an enhancement layer) (S600).
  • MPM an optimal mode list
  • the decoding apparatus includes a neighboring block adjacent to the prediction target block of the current layer, a corresponding block of a lower layer (eg, a base layer) corresponding to the prediction target block, a neighboring block adjacent to a corresponding block of the lower layer, and any specific block of the lower layer.
  • MPM list may be generated using a candidate mode derived from at least one of the blocks.
  • the candidate mode may be an intra prediction mode of at least one of a neighboring block of the prediction target block, a corresponding block, a neighboring block of the corresponding block, and a specific block, or may be any specific intra prediction mode.
  • the MPM list may include a predetermined number of candidate modes (eg, 2, 3, 4, etc.).
  • the order in the MPM list of the candidate mode may be determined according to a predetermined priority.
  • candidate modes may be derived and added to the MPM list in order of neighboring blocks to be predicted, corresponding blocks, neighboring blocks of the corresponding blocks, and any particular block. A specific embodiment of the method of deriving the MPM list will be described later with reference to FIG. 7.
  • the decoding apparatus may derive the intra prediction mode of the prediction target block based on the MPM list. In this case, at least one of the MPM flag, the MPM index, and the remaining mode information received from the encoder may be used.
  • the MPM flag is information indicating whether or not the same candidate mode as the intra prediction mode of the prediction target block exists in the MPM list.
  • the MPM flag may be prev_intra_luma_pred_flag. If the same candidate mode as the intra prediction mode of the prediction target block exists in the MPM list, the value of the MPM flag (prev_intra_luma_pred_flag) may be 1, and otherwise, the value of the MPM flag (prev_intra_luma_pred_flag) may be zero.
  • the MPM index is an index indicating which intra prediction mode of the prediction target block is the same as any of the candidate modes in the MPM list.
  • the MPM index may be mpm_idx.
  • the decoding apparatus may determine the candidate mode in the MPM list indicated by the MPM index as the intra prediction mode of the prediction target block.
  • the remaining intra prediction mode or remaining mode is information indicating a prediction mode of a prediction target block derived using an intra prediction mode except for candidate modes in the MPM list.
  • the encoder may rearrange the remaining intra prediction modes except for the candidate modes in the MPM list in the order of the mode number, and determine the intra prediction mode of the prediction target block as the residual mode based on the mode numbers of the rearranged prediction modes.
  • the decoder may determine the prediction mode indicated by the residual mode as the intra prediction mode of the prediction target block based on the remaining intra prediction modes except for the candidate modes in the MPM list.
  • the residual mode may be represented, for example, as rem_intra_luma_pred_mode.
  • the decoding apparatus parses the MPM index mpm_idx to predict a candidate mode indicated by the MPM index mpm_idx among candidate modes included in the MPM list.
  • the intra prediction mode of the block may be determined.
  • the decoding device parses the residual mode (rem_intra_luma_pred_mode) and indicates a mode indicated by the residual mode (rem_intra_luma_pred_mode) among the remaining prediction modes except for candidate modes included in the MPM list. May be determined as the intra prediction mode of the prediction target block.
  • the decoding apparatus derives a reference sample for prediction of the prediction target block (S610).
  • the reference sample is one of a neighboring block adjacent to the prediction target block of the current layer, a corresponding block of a lower layer (eg, a base layer) corresponding to the prediction target block, a neighboring block adjacent to a corresponding block of the lower layer, and any specific block of the lower layer. It may be derived from at least one sample (s) in the block. A specific embodiment of a method of deriving a reference sample will be described later with reference to FIGS. 8 and 9.
  • the decoding apparatus generates intra prediction samples of the prediction target block by performing intra prediction on the prediction target block based on the derived intra prediction mode and the reference sample (S620).
  • prediction is performed by using right or bottom samples as well as top or left samples, thereby improving prediction efficiency by reducing prediction errors.
  • prediction may be performed by applying reference samples used according to the direction of the intra prediction mode, or parameters such as a positive angle and a negative angle may be adjusted according to the prediction direction. It may be adjusted to use reference samples. Specific embodiments of a method of performing intra prediction using a reference sample according to the intra prediction mode will be described later.
  • the neighboring block of the predicted block is a block reconstructed in the current picture including the predicted block (block that has been encoded or decoded), for example, the upper left block, upper block, upper right block, and left block. It may be a lower left block.
  • Corresponding blocks and neighboring blocks of the lower layer are blocks reconstructed (coded or decoded blocks) within the lower layer corresponding to the current picture, and neighboring blocks of the lower layer are the upper left block, the upper block, It may be an upper right block, a left block, a right block, a lower left block, a lower block, or a lower right block.
  • Any particular block of the lower layer may be a picture included in the picture of the lower layer corresponding to the current picture or any specific picture of the lower layer, and may be a reconstructed block (block in which encoding or decoding is completed).
  • scaling the corresponding block and the neighboring block of the lower layer can be used.
  • the block size of the upper layer is 2 times or 1.5 times larger than the block size of the lower layer
  • the block (or picture) of the lower layer may be up-sampled and used.
  • the corresponding block of the lower layer may be a block in a picture of the lower layer that is co-located with the block to be predicted in the current picture of the upper layer.
  • the picture of the lower layer may be a picture corresponding to the current picture of the upper layer.
  • the corresponding block of the lower layer may be a specific block in the slice / picture / tile of the lower layer.
  • the encoder may signal the position of the specific block and inform the decoder, or the specific block may be found by the method promised by the encoder and the decoder.
  • the encoder and the decoder may use one or more samples belonging to the upper left block, the upper block, the upper right block, the left block, and the lower left block in the picture of the lower layer, as in the template matching method.
  • the same method of locating similar samples can be performed.
  • FIG. 7 is a diagram illustrating an example of a neighboring block used to derive an MPM list according to an embodiment of the present invention.
  • FIG. 7A illustrates a prediction target block and a neighboring block of a current layer (eg, an upper layer or an enhancement layer)
  • FIG. 7B illustrates a lower layer corresponding to the prediction target block of a current layer (eg, FIG. 7A).
  • the corresponding block of the base layer and neighboring blocks are shown.
  • the corresponding block and the neighboring block of the lower layer illustrated in FIG. 7B may be upsampled to fit the sizes of the prediction target block and the neighboring block of the upper layer.
  • a neighboring block adjacent to the prediction target block EE may be a block that is already encoded or decoded.
  • neighboring blocks adjacent to the prediction target block EE may be an upper left block EA, an upper block EB, an upper right block EC, a left block ED, or a lower left block EG. have.
  • the corresponding block BE is a block of a lower layer corresponding to the prediction target block EE, and neighboring blocks adjacent to the target block EE and the corresponding block BE have already been encoded or It may be a decoded and reconstructed block.
  • the neighboring blocks adjacent to the corresponding block BE include the upper left block BA, the upper block BB, the upper right block BC, the left block BD, the right block BF, and the lower left block. (BG), lower block BH, lower right block BI.
  • the decoding apparatus may generate an MPM list to derive an intra prediction mode for the prediction target block (EE) of the current layer.
  • the MPM list may include a predetermined number of candidate modes (eg, 2, 3, 4, etc.).
  • candidate modes include the neighboring blocks (EA, EB, EC, ED, EG) of the upper layer, the corresponding block (BE), the neighboring blocks (BA, BB, BC, BD, BF, BG, BH, BI) of the lower layer and the lower layer. It may be an intra prediction mode derived from at least one of any block of the layer.
  • the decoding apparatus may intra-predict at least one of an upper left block (EA), an upper block (EB), an upper right block (EC), a left block (ED), and a lower left block (EG) of an upper layer.
  • the mode may be derived as a candidate mode, and the derived at least one candidate mode may be added to the MPM list.
  • the prediction mode of the upper block EB and the prediction mode of the left block ED may be added to the MPM list.
  • the decoding apparatus may derive the intra prediction mode of the corresponding block BE to the candidate mode and add the derived candidate mode to the MPM list.
  • the decoding apparatus includes the upper left block BA, the upper block BB, the upper right block BC, the left block BD, the right block BF, the lower left block BG, and the lower block BH of the lower layer.
  • the intra prediction mode of at least one block among the lower right blocks BI may be derived as a candidate mode, and the derived at least one candidate mode may be added to the MPM list.
  • the prediction mode of the right block BF and the prediction mode of the lower block BH may be added to the MPM list.
  • the decoding apparatus may derive the intra prediction mode of any specific block of the lower layer to the candidate mode and add it to the MPM list.
  • any particular block may be a picture of a lower layer corresponding to the current picture including the prediction target block or a block included in any specific picture of the lower layer, and a reconstructed block (block in which encoding or decoding is completed). Can be.
  • the MPM list generated by the above method may be filled using a specific prediction mode.
  • the order of deriving the candidate mode and adding the MPM list may be in accordance with a predetermined priority. For example, when the number of candidate modes of the MPM list is three, the MPM list is derived by deriving at least one candidate mode from at least one block among the neighboring blocks EA, EB, EC, ED, and EG of the upper layer. Can be. If the MPM list does not include three candidate modes, the candidate mode may be derived from the corresponding block BE to populate the MPM list.
  • At least one candidate mode is derived from at least one block among neighboring blocks (BA, BB, BC, BD, BF, BG, BH, BI) of the lower layer.
  • the mode can be derived to populate the MPM list.
  • the above-described method of deriving the MPM list according to the embodiment of the present invention is performed by the decoding apparatus, the same may be applied to the encoding apparatus.
  • FIG. 8 is a flowchart schematically illustrating a method of deriving a reference sample according to an embodiment of the present invention.
  • the decoding apparatus determines whether availability of a reference sample for intra prediction of a prediction target block of a current layer (eg, an upper layer or an enhancement layer) is performed (S800).
  • a current layer eg, an upper layer or an enhancement layer
  • the reference sample may include a neighboring block adjacent to the prediction target block of the current layer, a corresponding block of a lower layer (eg, a base layer) corresponding to the prediction target block, a neighboring block adjacent to a corresponding block of the lower layer, and a lower layer. May be derived from sample (s) in at least one block of any particular block of.
  • any particular block may be a picture included in a picture of a lower layer corresponding to a current picture including a prediction target block or in any particular picture of a lower layer.
  • reference samples that may be derived from the neighboring blocks EA, EB, EC, ED, and EG of the current layer include the upper left sample 710 and the upper samples 712. At least one of the upper right samples 714, the left samples 716, and the lower left samples 718. Reference samples that may be derived from the corresponding block BE of the lower layer may be reconstructed samples in the corresponding block BE.
  • the reference sample which may be derived from the neighboring blocks (BA, BB, BC, BD, BF, BG, BH, BI) of the lower layer, includes the upper left sample 730, the upper samples 732, and the upper right samples ( 734, the left samples 736, the right samples 744, the bottom left samples 738, the bottom samples 740, and the bottom right samples 742.
  • the reference sample that may be derived from any particular block of the lower layer may be reconstructed samples within any particular block.
  • the decoding apparatus may use the reference samples derived from at least one of the above-described blocks (EA, EB, EC, ED, EG, BE, BA, BB, BC, BD, BF, BG, BH, BI). Can be determined.
  • the block containing the reference sample is not encoded or decoded, or a picture, slice, tile, entropy slice, wavefront parallel processing (WPP) If present outside the boundary of the back, the reference sample may be determined to be unavailable.
  • the reference sample may be determined to be unavailable when a block including a reference sample is a block encoded in an inter mode under an environment in which constrained intra prediction (CIP) is used.
  • CIP constrained intra prediction
  • the decoding apparatus performs a padding process of filling the unavailable reference samples with at least one of the available reference samples (S810).
  • the unavailable reference sample may be filled using the available reference sample of the upper layer or the reference sample available in the lower layer.
  • the value of the unavailable reference sample may be replaced with the value of the available reference sample.
  • the top samples, top left samples, top right samples, left samples, right samples, bottom samples, bottom left samples, bottom right samples adjacent to the predicted block may be replaced with available reference samples. have.
  • the decoding apparatus applies filtering to the reference samples (S820).
  • the reference samples may be reference samples determined as usable reference samples in step S800 and usable reference samples derived by the padding process.
  • a filter may be applied to at least one of the reference samples.
  • the filter may be a three tap filter having a filter coefficient of [1/4, 2/4, 1/4], for example.
  • the filtered value of the lower right sample may be derived as shown in Equation 1 below. have.
  • pE [x, y] means a sample value at position (x, y)
  • Filtered_pE [x, y] means a value to which filtering is applied to a sample at position (x, y).
  • filtering When filtering is applied to the reference samples, whether to apply filtering to the reference sample may be determined according to the intra prediction mode of the prediction target block. For example, filtering may be applied to a reference sample in a specific intra prediction mode, and filtering may not be applied to a reference sample in a remaining prediction mode except a specific intra prediction mode. Alternatively, whether or not filtering is applied to the reference sample according to the intra prediction mode of the prediction target block may be determined in advance.
  • whether to apply filtering to the reference sample may be determined according to the size of the prediction target block. For example, the filtering may be applied to the reference sample if the specific block size, and the filtering may not be applied to the reference sample if the remaining block size except the specific block size. Alternatively, whether or not filtering is applied to the reference sample according to the size of the prediction target block may be determined in advance.
  • whether to apply filtering to the reference sample may be determined according to color components of the prediction target block. For example, if the color component is a luma signal, filtering may be applied to the reference sample. If the color component is a chroma signal, the filtering may not be applied to the reference sample.
  • whether to apply filtering to the reference sample may be determined according to the hierarchy of the reference sample. For example, filtering may be applied when the reference sample belongs to a higher layer, and filtering may not be applied when the reference sample is a sample taken from a lower layer. Alternatively, if the reference sample belongs to a higher layer, filtering may not be applied. If the reference sample is a sample taken from a lower layer, filtering may be applied.
  • FIG. 9 is a diagram illustrating a padding method of a reference sample according to an embodiment of the present invention.
  • FIG. 9A illustrates reference blocks located around the prediction target block of the current layer (eg, the upper layer or the enhancement layer), and FIG. 9B corresponds to the prediction target block of the current layer.
  • Corresponding blocks of a lower layer (eg, base layer) and reference samples located around them are shown.
  • the corresponding block of the lower layer illustrated in FIG. 9B may be a block scaled (upsampled) to match the size of the upper layer.
  • the prediction target block EE of the current layer is an 8 ⁇ 8 size block, and the coordinates of the uppermost left samples in the prediction target block EE and the corresponding block BE are (0, 0).
  • the sample value at position (x, y) of the upper layer is represented by pE [x, y]
  • the sample value at position (x, y) of the lower layer is represented by pB [x, y].
  • the unusable reference samples may be used. Can be filled with a sample.
  • the unavailable reference samples 914, 916, 920, 922, 924 are available reference samples 910, 912, 918 of the current layer, samples in the target block BE, reference samples of the lower layer. 930, 932, 934, 936, 938, 940, 942, 944, can be filled using samples in any block of the lower layer.
  • a padding process of replacing the unavailable reference sample values 914, 916, 920, 922, and 924 with usable sample values will be described as an example.
  • the unavailable reference samples of the current layer may be filled using the available reference samples of the current layer.
  • Unavailable top right samples 914 of the current layer may be filled with one of the available top samples 912 of the current layer, as shown in Equation 2 below.
  • Unavailable bottom samples 920 of the current layer may be filled with one of the available bottom left samples 918 of the current layer, as shown in Equation 3 below.
  • the unusable bottom samples 920 of the current layer may be filled in one-to-one correspondence with the available bottom left samples 918 of the current layer as shown in Equation 4 below.
  • the unavailable reference sample of the current layer may be filled using boundary samples located at the boundary in the corresponding block of the lower layer. For example, if the bottom samples of the current layer are unavailable reference samples, the bottom samples may be filled with the boundary samples located at the bottom of the corresponding block. In addition, if the top, left, and right samples of the current layer are unavailable reference samples, the top, left, and rightmost boundary samples in the corresponding block may be filled with each unavailable reference sample.
  • Unavailable left samples 916 of the current layer may be filled with the leftmost samples 950 in the corresponding block BE of the lower layer, as shown in Equation 5 below.
  • the unavailable right samples 924 of the current layer may be filled with the samples 952 located at the rightmost side in the corresponding block BE of the lower layer, as shown in Equation 6 below.
  • the unavailable upper right samples 914 of the current layer may be filled in one-to-one correspondence with the samples 952 located at the rightmost side in the corresponding block BE of the lower layer, as shown in Equation 7 below.
  • the unavailable reference samples of the current layer may be filled using available reference samples located around the target block of the lower layer. For example, one may fill with available reference samples of a lower layer corresponding to unavailable reference samples of the current layer.
  • Unavailable left samples 916 of the current layer may be filled with samples of the lower layer (left samples, 936) of the location corresponding to the unavailable left samples 916, as shown in Equation 8 below.
  • the unavailable right samples 924 of the current layer may be filled with the samples of the lower layer (right samples, 944) at the location corresponding to the unavailable right samples 924, as shown in Equation 9 below.
  • the unusable bottom samples 920 of the current layer may be filled with samples of the lower layer (bottom samples, 940) at a location corresponding to the unusable bottom samples 920, as shown in Equation 10 below.
  • the unavailable reference samples 914, 916, 920, 922, 924 of the current layer may be filled with at least one of the samples in any particular block of the lower layer.
  • Any particular block of the lower layer may be a picture of the lower layer corresponding to the current picture including the prediction target block (EE) or a block included in any specific picture of the lower layer, and the reconstructed block (encoding or decoding Completed block).
  • EE prediction target block
  • reconstructed block encoding or decoding Completed block
  • Embodiments in which the above-described unusable reference samples are filled with usable reference samples are just examples, and the present invention is not limited thereto and may be modified in various forms.
  • intra prediction of a block to be predicted may be performed using the reference samples derived as described above.
  • reference samples used for prediction may be determined according to the prediction direction and the prediction method of the intra prediction mode derived using the MPM list for the prediction target block.
  • embodiments of a method for performing prediction on a block to be predicted using a reference sample according to an intra prediction mode will be described with reference to FIGS. 10 to 14.
  • FIG. 10 is a conceptual diagram illustrating an example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • the decoding apparatus may perform prediction on a prediction target block using at least one of reference samples located around the prediction target block.
  • reference samples located around the prediction target block.
  • right samples and / or bottom samples can be used as reference samples.
  • the reference samples are samples usable for intra prediction as described above, and may be samples to which filtering is applied.
  • the decoding apparatus when the intra prediction mode is mode number 15 as illustrated in FIG. 4, the decoding apparatus performs prediction on a prediction target block using right samples or lower samples as reference samples as illustrated in FIG. 10.
  • the prediction samples of the prediction target block may be derived.
  • FIG. 11 is a conceptual diagram for explaining another example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • the decoding apparatus may perform prediction on a prediction target block using at least one of reference samples located around the prediction target block.
  • reference samples located around the prediction target block.
  • the bottom samples and / or right samples together with the top samples and / or left samples may be used as reference samples.
  • the reference samples are samples usable for intra prediction as described above, and may be samples to which filtering is applied.
  • the decoding apparatus when the intra prediction mode is mode number 33 as shown in FIG. 4, the decoding apparatus performs prediction on the prediction target block using the upper samples or the right samples as the reference samples as shown in FIG. 11.
  • the prediction samples of the prediction target block may be derived.
  • FIG. 12 is a conceptual diagram for explaining another example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • the decoding apparatus derives a first prediction sample value of a prediction target block by performing prediction on a prediction target block by using upper samples and / or left samples as reference samples, and calculates lower samples and / or Alternatively, the second prediction sample value of the prediction target block may be derived by performing prediction on the prediction target block using the right samples as reference samples.
  • the decoding apparatus may determine a weighted sum of the first prediction sample value and the second prediction sample value as the final prediction sample value for the prediction target block.
  • the reference samples are samples usable for intra prediction as described above, and may be samples to which filtering is applied.
  • the decoding apparatus may predict the object derived using the upper samples or the left samples as the reference samples as shown in FIG.
  • a weighted sum is calculated for the first prediction samples of the block and the second prediction samples of the prediction target block derived using the right samples or the bottom samples as reference samples, as shown in FIG.
  • Final prediction samples of the prediction target block may be derived.
  • coefficients for the first prediction samples and the second prediction samples for the weighted sum are [1/2, 1/2], [1/4, 3/4], [3/4, 1/4] And the like. This may be represented as in Equation (11).
  • a and b are coefficients for weighted sum of the first prediction sample value and the second prediction sample value.
  • a and b may be 1/2 when the coefficient for weighted sum is [1/2, 1/2] and a when b for the weighted sum is [1/4, 3/4] May be 1/4 and b may be 3/4.
  • boundary samples in the prediction target block (samples located on the leftmost side in the prediction target block, located on the rightmost side according to an embodiment of the present invention). Predictions may be performed on the samples, the samples located at the top, and the samples located at the bottom.
  • the decoding apparatus may increase correlation with left reference samples or right reference samples located in the periphery of the prediction target block.
  • the difference between the left reference samples or the right reference samples may be reflected in the boundary samples in the prediction target block.
  • the predicted sample value of the leftmost boundary samples in the prediction target block reflecting the difference between the reference samples may be calculated as in Equation 12 below, and the reference sample The predicted sample value of the rightmost boundary samples in the prediction target block reflecting the difference between the two may be calculated as in Equation 13 below.
  • the predicted sample value is predSamples, and the horizontal or vertical size of the block is nS. ‘Clip’ may be a clipping operation to bring a sample value into a specific range.
  • the decoding apparatus associates with the upper reference samples or the lower reference samples located in the periphery of the prediction target block.
  • the difference between the upper reference samples or the lower reference samples may be reflected in the boundary samples in the prediction target block.
  • the difference between the reference samples may be reflected in the same manner as in Equation 12 and Equation 13 applied in the vertical mode described above with respect to the uppermost boundary samples in the prediction target block or the lowest boundary samples in the prediction target block. In this case, it may be determined whether the difference between the reference samples for the boundary samples in the prediction target block is reflected in the prediction according to the color component.
  • prediction may be performed by reflecting a difference between reference samples for boundary samples in the prediction target block.
  • prediction may be performed on the boundary samples in the prediction target block without reflecting the difference between the reference samples.
  • FIG. 13 is a conceptual diagram illustrating another example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • the decoding apparatus may perform prediction on the prediction target block using at least one of reference samples located around the prediction target block.
  • reference samples are samples usable for intra prediction as described above, and may be samples to which filtering is applied.
  • the decoding apparatus may determine an average value of one or more samples among the top samples, the left samples, the bottom samples, and the right samples.
  • the prediction may be performed on the prediction target block.
  • embodiments of deriving a prediction sample value of a prediction target block for a DC mode using upper, left, bottom, and right reference samples will be described.
  • the prediction sample value is DCVal
  • the horizontal or vertical size of the prediction target block is nS.
  • an average value for upper and left reference samples, or an average value for right and lower reference samples may be derived as a predicted sample value of a prediction target block, and may be calculated by Equation 14 below.
  • an average value of the upper, left, lower, and right reference samples may be derived as the predicted sample value of the prediction target block, and may be calculated by Equation 15 below.
  • an average value of predetermined sampled reference samples among the reference samples may be derived as the predicted sample value of the prediction target block.
  • prediction may be performed using reference samples having an even or odd coordinate value of x or y. This can be calculated by the following equation (16).
  • Boundary samples in the prediction target block having the predicted prediction sample value DCVal as described above samples at the leftmost, samples at the rightmost, samples at the top, and at the bottom
  • continuity with the reference samples may be low, so that filtering on boundary samples may be applied using the reference samples.
  • a filter having a coefficient such as [1/4, 3/4] or [1/4, 2/4, 1/4], etc. for boundary samples and reference samples neighboring the boundary samples may be used. Applicable If the final predicted prediction sample value is called predSamples, the filtering for the boundary samples may be expressed as in Equations 17 to 24 below.
  • the final prediction sample value predSamples to which the filtering is applied to the leftmost uppermost boundary sample 1310 in the prediction target block may be calculated by Equation 17 below.
  • the final predicted sample value predSamples to which the filtering is applied to the boundary sample 1312 located at the rightmost top end in the predicted block may be calculated by Equation 18 below.
  • the final predicted sample value predSamples to which the filtering is applied to the boundary sample 1314 located at the bottom rightmost bottom in the predicted block may be calculated by Equation 19 below.
  • the final predicted sample value predSamples to which the filtering is applied to the boundary sample 1316 located at the lowest leftmost end in the prediction target block may be calculated by the following equation (20).
  • the final prediction sample value predSamples to which the filtering is applied to the boundary samples 1320 positioned at the top of the prediction target block may be calculated by Equation 21 below.
  • the uppermost boundary samples 1320 may be samples except for the leftmost uppermost boundary sample 1310 and the rightmost uppermost boundary sample 1312.
  • the final prediction sample value predSamples to which the filtering is applied to the leftmost boundary samples 1322 in the prediction target block may be calculated by Equation 22 below.
  • the leftmost boundary samples 1322 may be samples other than the leftmost uppermost boundary sample 1310 and the leftmost lowermost boundary sample 1316.
  • the final prediction sample value predSamples to which the filtering is applied to the boundary samples 1324 located at the rightmost side in the prediction target block may be calculated by Equation 23 below.
  • the rightmost boundary samples 1324 may be samples except for the rightmost topmost boundary sample 1312 and the rightmost bottommost sample.
  • the final predicted sample value predSamples to which the filtering is applied to the boundary samples 1326 positioned at the bottom of the predicted block may be calculated by Equation 24 below.
  • the lowermost boundary samples 1326 may be samples other than the boundary sample 1316 located at the leftmost bottom and the boundary sample 1314 located at the bottom right.
  • FIG. 14 is a conceptual diagram for explaining another example of a method of deriving a prediction sample using a reference sample according to an embodiment of the present invention.
  • the decoding apparatus may perform prediction on the prediction target block using at least one of reference samples located around the prediction target block.
  • reference samples located around the prediction target block.
  • the bottom samples and / or right samples together with the top samples and / or left samples may be used as reference samples.
  • the reference samples are samples usable for intra prediction as described above, and may be samples to which filtering is applied.
  • the decoding apparatus uses the weighted sum of the top samples, the left samples, the bottom samples, and the right samples to predict. Prediction on the block may be performed.
  • the predicted sample value of the predicted block predicted by the weighted sum of the reference samples may be calculated as in Equation 25 or Equation 26 below.
  • the predicted sample value of the predicted prediction target block is predSamples, and the horizontal or vertical size of the prediction target block is nS.
  • Boundary samples in the prediction target block predicted in the planner mode as described above samples at the leftmost, samples at the rightmost, samples at the top, and samples at the bottom
  • continuity with the reference samples may be small, so that filtering on boundary samples may be applied using the reference samples.
  • filtering on the boundary samples may be applied in the same manner as the filtering method applied to the boundary samples when the prediction is performed in the above-described DC mode.
  • filtering it may be determined whether filtering is to be applied to the predicted sample value predSamples of the boundary samples in the predicted block according to the color component. For example, when the color component is the luminance block, filtering may be applied to the boundary samples in the prediction block, and when the color component is the chrominance block, the filtering may not be applied to the boundary samples in the prediction block. .
  • the lower samples or the right samples are used as reference samples, or the lower layer corresponds to the corresponding layer.
  • the samples of the block may be used to perform prediction on the prediction target block of the current layer.
  • a prediction parameter is obtained using reference samples of the current layer or neighboring samples of a corresponding block of a lower layer, and the prediction parameter is used as a luminance block of the current layer.
  • prediction may be performed by applying the luminance block and the chrominance block to the corresponding block of the lower layer.
  • the corresponding block and the neighboring blocks of the lower layer may be blocks before the upsampling process.
  • a corresponding block of a lower layer may be used as a predicted prediction block (prediction samples) of the prediction target block of the current layer.
  • the corresponding block BE of the lower layer itself may be the predicted prediction block of the prediction target block EE.
  • the predicted predictive sample value is predSamples
  • the sample value of the corresponding block BE of the lower layer is pB
  • the horizontal or vertical size of the block is nS
  • the predicted sample value of the predicted block (EE) is It can be calculated as Equation 27 below.
  • the boundary samples in the prediction target block EE predicted using the sample values of the corresponding block BE of the lower layer may be applied to the samples located at the top and the samples located at the bottom.
  • the reference sample exists only at the top and left side of the prediction target block EE
  • boundary samples located at the boundary between the top and left reference sample topmost prediction samples in the prediction target block EE, leftmost
  • Filtering may be applied to the prediction samples.
  • filtering may be applied to boundary samples positioned at the boundary with each reference sample.
  • filtering on the boundary samples may be applied in the same manner as the filtering method applied to the boundary samples when the prediction is performed in the above-described DC mode.
  • intra prediction on the prediction target block of the current layer uses one or more of the right samples, the bottom samples, and the bottom right samples as the reference samples, indicating whether to use the corresponding reference samples.
  • Information can be signaled.
  • the information indicating whether to use one or more samples among right samples, bottom samples, and bottom right samples may use the all_boundary_intra_pred_flag flag. If all_boundary_intra_pred_flag is transmitted as 1, it may indicate that one or more samples among right samples, bottom samples, and bottom right samples are used as reference samples in intra prediction of the prediction target block.
  • all_boundary_intra_pred_flag is transmitted as 0, it may indicate that one or more samples among right samples, bottom samples, and bottom right samples are not used as reference samples in intra prediction of the prediction target block. In this case, this may mean that conventional conventional intra prediction is performed.
  • the information (all_boundary_intra_pred_flag) indicating whether one or more samples of the right samples, the bottom samples, and the bottom right samples are used as reference samples may include a sequence parameter set (SPS), a picture parameter set (PPS), and an adaptation parameter set (APS). It may be stored and transmitted in a slice header, or the like, or may be transmitted in units of a coding unit (CU), a prediction unit (PU), and a transform unit (TU).
  • SPS sequence parameter set
  • PPS picture parameter set
  • APS adaptation parameter set
  • whether intra prediction of the prediction target block of the current layer uses one or more samples among the right samples, the bottom samples, and the bottom right sample as the reference samples, intra prediction of the prediction target block. It can be determined according to the mode, block size, or color component.
  • one or more of the right samples, the bottom samples, and the bottom right samples may be used as reference samples only for a specific intra prediction mode, and the right samples, bottom samples, and bottom right only for blocks of a certain size or more.
  • One or more of the samples may be used as the reference sample.
  • the color component is a luminance block
  • one or more samples among right samples, bottom samples, and bottom right samples may be used as reference samples, and when the color component is a chrominance block, right samples, bottom samples, and bottom right samples.
  • One or more of the samples may not be used as the reference sample.
  • FIG. 15 is a flowchart schematically illustrating an image encoding method using intra prediction according to an embodiment of the present invention.
  • the method of FIG. 15 may be performed by the encoding apparatus of FIG. 1 described above. More specifically, the intra prediction unit of FIG. 1 may be performed.
  • the encoding apparatus derives an MPM list of a prediction target block of a current layer (eg, an upper layer or an enhancement layer) and determines an intra prediction mode (S1500).
  • a current layer e.g, an upper layer or an enhancement layer
  • the encoding apparatus includes a neighboring block adjacent to the prediction target block of the current layer, a corresponding block of a lower layer (eg, a base layer) corresponding to the prediction target block, a neighboring block adjacent to a corresponding block of the lower layer and any specific block of the lower layer.
  • MPM list may be generated using a candidate mode derived from at least one of the blocks.
  • the candidate mode may be an intra prediction mode of at least one of a neighboring block of the prediction target block, a corresponding block, a neighboring block of the corresponding block, and any specific block, or may be any specific intra prediction mode.
  • the MPM list may include a predetermined number of candidate modes (eg, 2, 3, 4, etc.). The order in the MPM list of the candidate mode may be determined according to a predetermined priority. For example, candidate modes may be derived and added to the MPM list in order of neighboring blocks to be predicted, corresponding blocks, neighboring blocks of the corresponding blocks, and any particular block. Since a specific embodiment of the method for deriving the MPM list has been described above, a description thereof will be omitted.
  • the encoding apparatus may derive information about the intra prediction mode of the prediction target block based on the MPM list.
  • the information about the intra prediction mode may be at least one of information about an MPM flag, an MPM index, and a residual mode.
  • the encoding apparatus may encode the derived MPM flag, the MPM index, and the information about the residual mode, and transmit the encoded information to the decoding apparatus.
  • the MPM flag is information indicating whether or not the same candidate mode as the intra prediction mode of the prediction target block exists in the MPM list.
  • the MPM index is an index indicating which intra prediction mode of the prediction target block is the same as any of the candidate modes in the MPM list.
  • the residual mode is information indicating the prediction mode of the prediction target block derived using the intra prediction mode except the candidate modes in the MPM list.
  • the encoding apparatus may derive and encode information on the MPM flag according to whether the same candidate mode as the intra prediction mode of the prediction target block exists in the derived MPM list. For example, if the same candidate mode as the intra prediction mode of the prediction target block is present in the MPM list, the MPM flag (prev_intra_luma_pred_flag) may be set to 1, otherwise the MPM flag (prev_intra_luma_pred_flag) may be set to 0.
  • the encoding apparatus may derive and encode information about the MPM index (mpm_idx).
  • the MPM index may be encoded with an index value for the same candidate mode as the intra prediction mode of the prediction target block in the MPM list.
  • the encoding apparatus may derive and encode the residual mode (rem_intra_luma_pred_mode). For example, the encoding apparatus may rearrange the remaining intra prediction modes except for the candidate modes in the MPM list in order of the mode number, and derive the intra prediction mode of the prediction target block to the remaining mode based on the mode numbers of the rearranged prediction modes.
  • the encoding apparatus derives a reference sample for prediction of the prediction target block (S1510).
  • the reference sample is one of a neighboring block adjacent to the prediction target block of the current layer, a corresponding block of a lower layer (eg, a base layer) corresponding to the prediction target block, a neighboring block adjacent to a corresponding block of the lower layer, and any specific block of the lower layer. It may be derived from at least one sample (s) in the block. Since a specific embodiment of the method for deriving a reference sample has been described above, a description thereof will be omitted.
  • the encoding apparatus generates prediction samples of the prediction target block by performing intra prediction on the prediction target block based on the intra prediction mode and the reference sample (S1520).
  • prediction is performed by using right or bottom samples as well as top or left samples, thereby improving prediction efficiency by reducing prediction errors.
  • the methods are described based on a flowchart as a series of steps or blocks, but the present invention is not limited to the order of steps, and certain steps may occur in a different order or at the same time than other steps described above. Can be. Also, one of ordinary skill in the art appreciates that the steps shown in the flowcharts are not exclusive, that other steps may be included, or that one or more steps in the flowcharts may be deleted without affecting the scope of the present invention. I can understand.

Abstract

영상 부호화/복호화 방법 및 장치가 개시된다. 상기 영상 복호화 방법은 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하는 단계, 상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하는 단계 및 상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 단계를 포함한다.

Description

영상 부호화/복호화 방법 및 장치
본 발명은 영상 부호화 및 복호화에 관한 것으로, 보다 상세하게는 스케일러블 비디오 코딩(Scalable Video Coding; SVC)을 기반으로 하는 영상 부호화 및 복호화에 관한 것이다.
최근 멀티미디어(multimedia) 환경이 구축되면서, 다양한 단말과 네트워크가 이용되고 있으며, 이에 따른 사용자 요구도 다변화하고 있다.
예컨대, 단말의 성능과 컴퓨팅 능력(computing capability)가 다양해짐에 따라서 지원하는 성능도 기기별로 다양해지고 있다. 또한 정보가 전송되는 네트워크 역시 유무선 네트워크와 같은 외형적인 구조뿐만 아니라, 전송하는 정보의 형태, 정보량과 속도 등 기능별로도 다양해지고 있다. 사용자는 원하는 기능에 따라서 사용할 단말과 네트워크를 선택하며, 또한 기업이 사용자에게 제공하는 단말과 네트워크의 스펙트럼도 다양해지고 있다.
이와 관련하여, 최근 HD(High Definition) 해상도를 가지는 방송이 국내뿐만 아니라 세계적으로 확대되어 서비스되면서, 많은 사용자들이 고해상도, 고화질의 영상에 익숙해지고 있다. 이에 따라서 많은 영상 서비스 관련 기관들이 차세대 영상 기기에 대한 개발에 많은 노력을 하고 있다.
또한 HDTV와 더불어 HDTV의 4배 이상의 해상도를 가지는 UHD(Ultra High Definition)에 대한 관심이 증대되면서 보다 높은 해상도, 고화질의 영상을 압축하여 처리하는 기술에 대한 요구는 더 높아지고 있다.
영상을 압축하여 처리하기 위해, 시간적으로 이전 및/또는 이후의 픽처로부터 현재 픽처에 포함된 화소값을 예측하는 인터(inter) 예측 기술, 현재 픽처 내의 화소 정보를 이용하여 현재 픽처에 포함된 다른 화소값을 예측하는 인트라(intra) 예측 기술, 출현 빈도가 높은 심볼(symbol)에 짧은 부호를 할당하고 출현 빈도가 낮은 심볼에 긴 부호를 할당하는 엔트로피 인코딩 기술 등이 사용될 수 있다.
상술한 바와 같이, 지원하는 기능이 상이한 각 단말과 네트워크 그리고 다변화된 사용자의 요구를 고려할 때, 지원되는 영상의 품질, 크기, 프레임 등도 이에 따라 다변화될 필요가 있다.
이와 같이, 이종의 통신망과 다양한 기능 및 종류의 단말로 인해, 영상의 화질, 해상도, 크기, 프레임 율 등을 다양하게 지원하는 스케일러빌리티(scalability)는 비디오 포맷의 중요한 기능이 되고 있다.
따라서, 고효율의 비디오 부호화 방법을 기반으로 다양한 환경에서 사용자가 요구하는 서비스를 제공하기 위해 시간, 공간, 화질 등의 측면에서 효율적인 비디오 부호화와 복호화가 가능하도록 스케일러빌리티 기능을 제공하는 것이 필요하다.
본 발명은 부호화/복호화 효율을 향상시킬 수 있는 영상 부호화/복호화 방법 및 장치를 제공한다.
본 발명은 스케일러블 비디오 인코딩/디코딩에서 압축 효율을 높이는 방법 및 장치를 제공한다.
본 발명은 스케일러블 비디오 인코딩/디코딩에서 다른 계층의 정보를 이용하여 현재 계층의 영상을 예측하는 방법 및 장치를 제공한다.
본 발명의 일 양태에 따르면, 영상 복호화 방법이 제공된다. 상기 영상 복호화 방법은, 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하는 단계, 상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하는 단계 및 상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 단계를 포함한다.
상기 참조 샘플은, 상기 예측 대상 블록에 인접한 주변 블록, 상기 예측 대상 블록에 대응하는 하위 계층(base layer)의 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플로부터 도출될 수 있다.
본 발명의 다른 양태에 따르면, 영상 복호화 장치가 제공된다. 상기 영상 복호화 장치는 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하고, 상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하고, 상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 인트라 예측부를 포함한다.
상기 참조 샘플은, 상기 예측 대상 블록에 인접한 주변 블록, 상기 예측 대상 블록에 대응하는 하위 계층(base layer)의 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플로부터 도출될 수 있다.
본 발명의 또 다른 양태에 따르면, 영상 부호화 방법이 제공된다. 상기 영상 부호화 방법은, 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하는 단계, 상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하는 단계 및 상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 단계를 포함한다.
상기 참조 샘플은, 상기 예측 대상 블록에 인접한 주변 블록, 상기 예측 대상 블록에 대응하는 하위 계층(base layer)의 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플로부터 도출될 수 있다.
본 발명의 또 다른 양태에 따르면, 영상 부호화 장치가 제공된다. 상기 영상 부호화 장치는, 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하고, 상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하고, 상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 인트라 예측부를 포함한다.
상기 참조 샘플은, 상기 예측 대상 블록에 인접한 주변 블록, 상기 예측 대상 블록에 대응하는 하위 계층(base layer)의 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플로부터 도출될 수 있다.
상위 계층에서 부호화/복호화 대상 블록에 대한 인트라 예측 시, 사용할 수 없는 참조 샘플 또는 부호화 파라미터 정보를 하위 계층으로부터 유도하여 사용함으로써, 예측 및 부호화/복호화 효율을 향상시킬 수 있다.
도 1은 발명이 적용되는 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 2는 본 발명이 적용되는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 3은 본 발명이 적용될 수 있는 복수 계층을 이용한 스케일러블 비디오 코딩 구조의 일예를 개략적으로 나타내는 개념도이다.
도 4는 인트라 예측 모드의 일예를 도시한 도면이다.
도 5는 예측 대상 블록과 주변 블록을 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 인트라 예측을 이용한 영상 복호화 방법을 개략적으로 나타내는 순서도이다.
도 7은 본 발명의 일 실시예에 따른 MPM 리스트를 도출하기 위해 사용되는 주변 블록의 일예를 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 참조 샘플을 도출하는 방법을 개략적으로 나타내는 순서도이다.
도 9는 본 발명의 일 실시예에 따른 참조 샘플의 패딩 방법을 설명하기 위해 도시된 도면이다.
도 10은 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 일예를 설명하기 위한 개념도이다.
도 11은 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 다른 예를 설명하기 위한 개념도이다.
도 12는 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 또 다른 예를 설명하기 위한 개념도이다.
도 13은 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 또 다른 예를 설명하기 위한 개념도이다.
도 14는 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 또 다른 예를 설명하기 위한 개념도이다.
도 15는 본 발명의 일 실시예에 따른 인트라 예측을 이용한 영상 부호화 방법을 개략적으로 나타내는 순서도이다.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 해당 설명을 생략할 수도 있다.
본 명세서에서 어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있는 것을 의미할 수도 있고, 중간에 다른 구성 요소가 존재하는 것을 의미할 수도 있다. 아울러, 본 명세서에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
제1, 제2 등의 용어는 다양한 구성들을 설명하는데 사용될 수 있지만, 상기 구성들은 상기 용어에 의해 한정되지 않는다. 상기 용어들은 하나의 구성을 다른 구성으로부터 구별하는 목적으로 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성은 제2 구성으로 명명될 수 있고, 유사하게 제2 구성도 제1 구성으로 명명될 수 있다.
또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성 단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 하나의 구성부를 이루거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있다. 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
도 1은 발명이 적용되는 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
스케일러블(scalable) 비디오 부호화/복호화 방법 또는 장치는, 스케일러빌리티(scalability)를 제공하지 않는 일반적인 영상 부호화/복호화 방법 또는 장치의 확장(extension)에 의해 구현될 수 있으며, 도 1의 블록도는 스케일러블 비디오 부호화 장치의 기초가 될 수 있는 영상 부호화 장치의 일 실시예를 나타낸다.
도 1을 참조하면, 영상 부호화 장치(100)는 움직임 예측부(111), 움직임 보상부(112), 인트라 예측부(120), 스위치(115), 감산기(125), 변환부(130), 양자화부(140), 엔트로피 부호화부(150), 역양자화부(160), 역변환부(170), 가산기(175), 필터부(180) 및 참조 픽처 버퍼(190)를 포함한다.
영상 부호화 장치(100)는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 부호화를 수행하고 비트스트림을 출력할 수 있다. 인트라 모드인 경우 스위치(115)가 인트라로 전환되고, 인터 모드인 경우 스위치(115)가 인터로 전환될 수 있다. 인트라 예측은 화면 내 예측, 인터 예측은 화면 간 예측을 의미한다. 영상 부호화 장치(100)는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분(residual)을 부호화할 수 있다. 이때, 입력 영상은 원 영상(original picture)를 의미할 수 있다.
인트라 모드인 경우, 인트라 예측부(120)는 현재 블록 주변의 이미 부호화/복호화된 블록의 픽셀값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다.
인터 모드인 경우, 움직임 예측부(111)는, 움직임 예측 과정에서 참조 픽처 버퍼(190)에 저장되어 있는 참조 영상에서 입력 블록과 가장 매치가 잘 되는 영역을 찾아 움직임 벡터를 구할 수 있다. 움직임 보상부(112)는 움직임 벡터를 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다. 여기서, 움직임 벡터는 인터 예측에 사용되는 2차원 벡터이며, 현재 부호화/복호화 대상 영상과 참조 영상 사이의 오프셋을 나타낼 수 있다.
감산기(125)는 입력 블록과 생성된 예측 블록의 차분에 의해 잔차 블록(residual block)을 생성할 수 있다.
변환부(130)는 잔차 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 여기서, 변환 계수는 잔차 블록 및/또는 잔차 신호에 대한 변환을 수행함으로써 생성된 계수 값을 의미할 수 있다. 이하, 본 명세서에서는 변환 계수에 양자화가 적용되어 생성된, 양자화된 변환 계수 레벨(transform coefficient level)도 변환 계수로 불릴 수 있다.
양자화부(140)는 입력된 변환 계수를 양자화 파라미터(quantization parameter, 또는 양자화 매개변수)에 따라 양자화하여 양자화된 계수(quantized coefficient)를 출력할 수 있다. 양자화된 계수는 양자화된 변환 계수 레벨(quantized transform coefficient level)로 불릴 수도 있다. 이때, 양자화부(140)에서는 양자화 행렬을 사용하여 입력된 변환 계수를 양자화할 수 있다.
엔트로피 부호화부(150)는, 양자화부(140)에서 산출된 값들 또는 부호화 과정에서 산출된 부호화 파라미터 값 등을 기초로 엔트로피 부호화를 수행하여 비트스트림(bitstream)을 출력할 수 있다. 엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼(symbol)에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 부호화 대상 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 부호화를 통해서 영상 부호화의 압축 성능이 높아질 수 있다. 엔트로피 부호화부(150)는 엔트로피 부호화를 위해 지수-골롬(Exponential-Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법을 사용할 수 있다.
도 1의 실시예에 따른 영상 부호화 장치(100)는 인터 예측 부호화, 즉 화면 간 예측 부호화를 수행하므로, 현재 부호화된 영상은 참조 영상으로 사용되기 위해 복호화되어 저장될 필요가 있다. 따라서 양자화된 계수는 역양자화부(160)에서 역양자화되고 역변환부(170)에서 역변환된다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록(Reconstructed Block)이 생성된다.
복원 블록은 필터부(180)를 거치고, 필터부(180)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 중 적어도 하나 이상을 복원 블록 또는 복원 픽처에 적용할 수 있다. 필터부(180)는 적응적 인루프(in-loop) 필터로 불릴 수도 있다. 디블록킹 필터는 블록 간의 경계에 생긴 블록 왜곡을 제거할 수 있다. SAO는 코딩 에러를 보상하기 위해 픽셀값에 적정 오프셋(offset) 값을 더해줄 수 있다. ALF는 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. 필터부(180)를 거친 복원 블록은 참조 픽처 버퍼(190)에 저장될 수 있다.
도 2는 본 발명이 적용되는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 1에서 상술한 바와 같이, 스케일러블 비디오 부호화/복호화 방법 또는 장치는, 스케일러빌리티를 제공하지 않는 일반적인 영상 부호화/복호화 방법 또는 장치의 확장에 의해 구현될 수 있으며, 도 2의 블록도는 스케일러블 비디오 복호화 장치의 기초가 될 수 있는 영상 복호화 장치의 일 실시예를 나타낸다.
도 2를 참조하면, 영상 복호화 장치(200)는 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 가산기(255), 필터부(260) 및 참조 픽처 버퍼(270)를 포함한다.
영상 복호화 장치(200)는 부호화기에서 출력된 비트스트림을 입력 받아 인트라 모드 또는 인터 모드로 복호화를 수행하고 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 인트라 모드인 경우 스위치가 인트라로 전환되고, 인터 모드인 경우 스위치가 인터로 전환될 수 있다.
영상 복호화 장치(200)는 입력 받은 비트스트림으로부터 복원된 잔차 블록(reconstructed residual block)을 얻고 예측 블록을 생성한 후 복원된 잔차 블록과 예측 블록을 더하여 재구성된 블록, 즉 복원 블록을 생성할 수 있다.
엔트로피 복호화부(210)는, 입력된 비트스트림을 확률 분포에 따라 엔트로피 복호화하여, 양자화된 계수(quantized coefficient) 형태의 심볼을 포함한 심볼들을 생성할 수 있다.
엔트로피 복호화 방법이 적용되는 경우, 높은 발생 확률을 갖는 심볼에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 각 심볼들에 대한 비트열의 크기가 감소될 수 있다.
양자화된 계수는 역양자화부(220)에서 역양자화되고 역변환부(230)에서 역변환되며, 양자화된 계수가 역양자화/역변환 된 결과, 복원된 잔차 블록이 생성될 수 있다. 이때, 역양자화부(220)에서는 양자화된 계수에 양자화 행렬을 적용할 수 있다.
인트라 모드인 경우, 인트라 예측부(240)는 현재 블록 주변의 이미 복호화된 블록의 픽셀값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다. 인터 모드인 경우, 움직임 보상부(250)는 움직임 벡터 및 참조 픽처 버퍼(270)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다.
잔차 블록과 예측 블록은 가산기(255)를 통해 더해지고, 더해진 블록은 필터부(260)를 거칠 수 있다. 필터부(260)는 디블록킹 필터, SAO, ALF 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 필터부(260)는 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 복원 영상은 참조 픽처 버퍼(270)에 저장되어 인터 예측에 사용될 수 있다.
도 3은 본 발명이 적용될 수 있는 복수 계층을 이용한 스케일러블 비디오 코딩 구조의 일예를 개략적으로 나타내는 개념도이다. 도 3에서 GOP(Group of Picture)는 픽처군 즉, 픽처의 그룹을 나타낸다.
영상 데이터를 전송하기 위해서는 전송 매체가 필요하며, 그 성능은 다양한 네트워크 환경에 따라 전송 매체별로 차이가 있다. 이러한 다양한 전송 매체 또는 네트워크 환경에의 적용을 위해 스케일러블 비디오 코딩 방법이 제공될 수 있다.
스케일러빌러티를 지원하는 비디오 코딩 방법(이하, ‘스케일러블 코딩’혹은 ‘스케일러블 비디오 코딩’이라 함)은 계층(layer) 간의 텍스쳐 정보, 움직임 정보, 잔여 신호 등을 활용하여 계층 간 중복성을 제거하여 인코딩 및 디코딩 성능을 높이는 코딩 방법이다. 스케일러블 비디오 코딩 방법은, 전송 비트율, 전송 에러율, 시스템 자원 등의 주변 조건에 따라, 공간적(spatial), 시간적(temporal), 화질적(혹은 품질적, quality) 관점에서 다양한 스케일러빌리티를 제공할 수 있다.
스케일러블 비디오 코딩은, 다양한 네트워크 상황에 적용 가능한 비트스트림을 제공할 수 있도록, 복수 계층(multiple layers) 구조를 사용하여 수행될 수 있다. 예를 들어 스케일러블 비디오 코딩 구조는, 일반적인 영상 디코딩 방법을 이용하여 영상 데이터를 압축하여 처리하는 기본 계층을 포함할 수 있고, 기본 계층의 디코딩 정보 및 일반적인 영상 디코딩 방법을 함께 사용하여 영상 데이터를 압축 처리하는 향상 계층을 포함할 수 있다.
여기서, 계층(layer)은 공간(spatial, 예를 들어, 영상 크기), 시간(temporal, 예를 들어, 디코딩 순서, 영상 출력 순서, 프레임 레이트), 화질, 복잡도 등을 기준으로 구분되는 영상 및 비트스트림(bitstream)의 집합을 의미한다. 또한 기본 계층은 참조 계층, 베이스 레이어(Base layer) 또는 하위 계층(lower layer)을 의미할 수 있고, 향상 계층은 인핸스먼트 레이어(Enhancement layer) 또는 상위 계층(higher layer)을 의미할 수 있다. 또한 복수의 계층들은 서로 간에 종속성을 가질 수도 있다.
도 3을 참조하면, 예를 들어 기본 계층은 SD(standard definition), 15Hz의 프레임율, 1Mbps 비트율로 정의될 수 있고, 제1 향상 계층은 HD(high definition), 30Hz의 프레임율, 3.9Mbps 비트율로 정의될 수 있으며, 제2 향상 계층은 4K-UHD (ultra high definition), 60Hz의 프레임율, 27.2Mbps 비트율로 정의될 수 있다.
상기 포맷(format), 프레임율, 비트율 등은 하나의 실시예로서, 필요에 따라 달리 정해질 수 있다. 또한 사용되는 계층의 수도 본 실시예에 한정되지 않고 상황에 따라 달리 정해질 수 있다. 예를 들어, 전송 대역폭이 4Mbps라면 상기 제1 향상계층 HD의 프레임 레이트를 줄여서 15Hz 이하로 전송할 수 있다.
스케일러블 비디오 코딩 방법은 상기 도 3의 실시예에서 상술한 방법에 의해 시간적, 공간적, 화질적 스케일러빌리티를 제공할 수 있다.
본 명세서에서 스케일러블 비디오 코딩은 인코딩 관점에서는 스케일러블 비디오 인코딩, 디코딩 관점에서는 스케일러블 비디오 디코딩과 동일한 의미를 가진다.
도 4는 인트라 예측 모드의 일예를 도시한 도면이다.
인트라 예측(혹은 화면내 예측)은 예측 대상 블록의 인트라 예측 모드(혹은 화면내 예측 모드)를 기반으로 수행될 수 있다. 인트라 예측 모드는 예측 대상 블록의 샘플 값(픽셀 값)을 예측하는데 사용되는 참조 샘플들(참조 픽셀들)이 위치한 방향 및/또는 예측 방식에 따라 방향성 모드와 비방향성 모드를 포함할 수 있다. 이때, 인트라 예측 모드는 예측 블록의 크기에 관계없이 고정된 개수(예컨대, 35개)의 모드를 포함할 수 있다. 혹은, 인트라 예측 모드는 예측 블록의 색 성분(color component)이 휘도(luma) 신호인지 색차(chroma) 신호인지에 따라 예측 모드의 개수가 다를 수 있다. 예컨대, 도 4에 도시된 ‘intra_ FromLuma’ 모드는 휘도 신호로부터 색차 신호를 예측하는 특정 모드일 수 있다.
도 4에는 33개의 방향성 예측 모드와 적어도 두 개의 비방향성 예측 모드(예컨대, DC 모드, Planar 모드)가 도시되어 있다.
비방향성 예측 모드는 DC 모드와 Planar 모드를 포함할 수 있다. DC 모드는 고정된 하나의 값을 예측 대상 블록 내 샘플들의 예측 값으로 이용할 수 있다. 일예로, DC 모드에서 고정된 하나의 값은 예측 대상 블록의 주변에 위치한 샘플 값들의 평균에 의해 유도될 수 있다. Planar 모드는 예측 대상 블록에 수직으로 인접한 샘플과 수평으로 인접한 샘플을 이용하여 수직 방향 보간 및 수평 방향 보간을 수행하고, 이들의 평균값을 예측 대상 블록 내 샘플들의 예측 값으로 이용할 수 있다.
방향성 예측 모드는 참조 샘플이 위치한 방향을 나타내는 모드로, 예측 대상 블록 내 예측 대상 샘플과 참조 샘플 간의 각도로 해당 방향을 나타낼 수 있다. 방향성 예측 모드는 Angular 모드로 불릴 수 있으며, 수직 모드, 수평 모드 등을 포함할 수 있다. 수직 모드는 예측 대상 블록에 수직 방향으로 인접한 샘플 값을 예측 대상 블록 내 샘플의 예측 값으로 이용할 수 있으며, 수평 모드는 예측 대상 블록에 수평 방향으로 인접한 샘플 값을 예측 대상 블록 내 샘플의 예측 값으로 이용할 수 있다. 그리고, 수직 모드와 수평 모드를 제외한 나머지 Angular 모드는 각각의 모드에 대해 미리 정해진 각도 및/또는 방향에 위치하는 참조 샘플을 이용하여 예측 대상 블록 내 샘플의 예측 값을 도출할 수 있다.
일예로, 도 4에 도시된 바와 같이 인트라 예측 모드는 소정의 각도 및/또는 예측 방향에 따라 소정의 예측 모드 번호가 할당될 수 있다. Planar 모드에 할당되는 모드 번호는 0이고, DC 모드에 할당되는 모드 번호는 1일 수 있다. 또한, 수직 모드에 할당되는 모드 번호는 26이고, 수평 모드에 할당되는 모드 번호는 10일 수 있다. 그리고, 수직 및 수평 모드를 제외한 나머지 Angular 모드들은 인트라 예측 모드의 각도 및/또는 예측 방향에 따라 서로 다른 모드 번호가 할당될 수 있다.
도 4에 도시된 인트라 예측 모드의 예측 방향 및 인트라 예측 모드에 할당된 모드 번호는 하나의 예시이며, 본 발명이 이에 한정되어 적용되는 것은 아니다. 필요에 따라서 인트라 예측 모드의 예측 방향 및 예측 모드 번호는 변경 가능하다. 또한, 인트라 예측 모드의 개수(종류)도 필요에 따라서 변경하여 적용될 수 있다.
한편, 예측 대상 블록에 대한 인트라 예측 모드는 그 모드를 나타내는 값 자체로 전송될 수도 있으나, 전송 효율을 높이기 위해서 예측 대상 블록의 예측 모드 값을 예측한 정보를 전송할 수도 있다.
예측 대상 블록의 예측 모드는 복원된 주변 블록의 예측 모드와 동일할 확률이 높으므로, 예측 대상 블록에 인접한 복원된 주변 블록의 예측 모드를 이용하여 예측 대상 블록의 예측 모드에 대한 예측 값을 유도할 수 있다. 이러한 예측 대상 블록의 예측 모드에 대한 예측 값으로 사용되는 예측 모드들은 최적 모드(MPM; Most Probable Mode)라 한다.
본 명세서에서 예측 대상 블록이라 함은 현재 예측이 수행되는 예측 블록(PB: Prediction Block) 혹은 예측 유닛(PU: Prediction Unit)을 의미한다. 예측 블록은 복수의 파티션(partition)으로 분할될 수 있다. 예측 블록이 복수의 파티션으로 분할된 경우, 복수의 파티션 각각이 예측이 수행되는 단위일 수 있다.
예를 들어, 인트라 예측 모드일 경우, 2Nx2N, NxN 파티션 타입의 예측 블록으로 분할될 수 있으며, 예측 블록은 4x4, 8x8, 16x16, 32x32, 64x64 등의 크기를 가지는 정사각형일 수 있다. 인터 예측 모드일 경우, 2Nx2N, 2NxN, Nx2N, NxN, 2NxnU, 2NxnD, nLx2N, nRx2N 파티션 타입의 예측 블록으로 분할될 수 있으며, 예측 블록은 4x4, 8x8, 16x16, 32x32, 64x64 등의 크기를 가지는 정사각형 혹은 2x8, 4x8, 2x16, 4x16, 8x16 등의 크기를 가지는 직사각형일 수 있다.
예측 블록은 부호화 블록(CB: Coding Block), 예측 블록(PB: Prediction Block), 변환 블록(TB: Transform Block) 중 적어도 하나의 크기일 수 있다. 또한, 예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 서로 다를 수도 있다. 예컨대, 예측 유닛마다 예측 모드가 정해져서 예측이 수행될 수도 있고, 예측 유닛마다 예측 모드가 정해지고 변환 유닛마다 예측이 수행될 수도 있다. 이하, 본 발명의 실시예에서는 예측 블록이 분할된 각각의 파티션도 예측 블록으로 지칭할 수 있다.
화면내 부호화/복호화(혹은 인트라 부호화/복호화)는 복원된 주변 블록의 샘플 값 또는 부호화 파라미터를 이용할 수 있다. 여기서, 복원된 주변 블록은 이미 부호화 또는 복호화되어 복원된 블록으로서, 예측 대상 블록에 인접한 블록일 수 있다. 부호화 파라미터는 부호화 모드(인트라 모드 또는 인터 모드), 인트라 예측 모드, 인터 예측 모드, 블록 크기, 양자화 파라미터(QP; Quantization Parameter), CBF(Coded Block Flag) 등 일 수 있다.
도 5는 예측 대상 블록과 주변 블록을 도시한 도면이다.
도 5를 참조하면, 예측 대상 블록(EE)은 예측 대상 블록(EE)의 샘플 값을 예측하기 위해 인트라 예측 모드를 기반으로 예측이 수행될 수 있다. 이때, 예측 대상 블록(EE)에 인접한 복원된 주변 블록의 샘플들을 이용하여 예측 대상 블록(EE)에 대한 인트라 예측이 수행될 수 있다.
복원된 주변 블록은 이미 부호화 또는 복호화되어 복원된 블록일 수 있다. 예를 들어, 복원된 주변 블록은 부호화/복호화 순서에 따라, 예측 대상 블록(EE)의 상단 좌측에 인접한 상단 좌측(above left) 블록(EA), 예측 대상 블록(EE)의 상단에 인접한 상단(above) 블록(EB), 예측 대상 블록(EE)의 상단 우측에 인접한 상단 우측(above right) 블록(EC), 예측 대상 블록(EE)의 좌측에 인접한 좌측(left) 블록(ED), 예측 대상 블록(EE)의 하단 좌측에 인접한 하단 좌측(bottom left) 블록(EG) 등이 있을 수 있다.
이때, 복원된 주변 블록(EA, EB, EC, ED, EG) 내의 샘플들로부터 예측 대상 블록(EE)의 인트라 예측에 사용되는 참조 샘플들이 유도될 수 있다. 예를 들어, 참조 샘플은 상단 좌측 블록(EA) 내 샘플(510)(이하, 상단 좌측 샘플), 상단 블록(EB) 내 샘플들(512)(이하, 상단 샘플들), 상단 우측 블록(EC) 내 샘플들(514)(이하, 상단 우측 샘플들), 좌측 블록(ED) 내 샘플들(516)(이하, 좌측 샘플들), 하단 좌측 블록(EG) 내 샘플들(518)(이하, 하단 좌측 샘플들)일 수 있다.
도 5에 도시된 예측 대상 블록(EE)과 복원된 주변 블록(EA, EB, EC, ED, EG) 각각은 보다 작은 크기의 블록으로 분할될 수 있으며, 이러한 경우에도 각 분할된 블록에 인접한 복원된 주변 블록의 샘플들 또는 부호화 파라미터를 이용하여 인트라 부호화/복호화를 수행할 수 있다.
도 5에서 상술한 바와 같이, 예측 대상 블록에 대한 인트라 예측을 수행할 때, 복원된 주변 블록으로부터 유도된 참조 샘플과 부호화 파라미터를 이용하여 예측 대상 블록의 예측을 수행한다. 이때, 예측 대상 블록 또는 예측 대상 블록의 우측 및 하단에 위치하는 블록들(우측 블록, 하단 블록)은 아직 부호화/복호화되지 않은 블록이기 때문에, 그 블록들에 대한 정보(샘플 값, 부호화 파라미터 등)는 존재하지 않는다. 따라서, 예측 대상 블록에 대한 인트라 예측 시 사용되는 참조 샘플 및 부호화 파라미터는 부호화/복호화 순서 상 예측 대상 블록 이전에 부호화/복호화된 블록들(예측 대상 블록의 상단 및 좌측에 위치하는 블록)로부터 유도될 수 있다. 이러한 경우, 예측 대상 블록의 오른쪽 또는 아래쪽으로 갈수록 예측 오차가 커지는 경향이 있다.
상술한 문제점을 해결하기 위해서, 본 발명에서는 스케일러블 비디오 코딩에서 현재 계층(인핸스먼트 레이어 혹은 상위 계층)의 예측 대상 블록에 대한 인트라 예측을 수행할 때, 부호화/복호화된 블록(상단 및 좌측 블록) 및 부호화/복호화되지 않은 블록(예측 대상 블록, 우측 및 하단 블록)에 대한 정보를 모두 이용하여 예측하는 방법을 제공한다. 예를 들어, 부호화/복호화되지 않은 블록(예측 대상 블록, 우측 및 하단 블록)의 샘플 값 및 부호화 파라미터에 대한 정보는 이미 복원이 완료된 다른 계층(예컨대, 베이스 레이어 혹은 하위 계층)으로부터 유도하여 참조 할 수 있다. 따라서, 본 발명에 의하면 예측 오차를 최소화하여 부호화 및 복호화 효율을 향상시킬 수 있다.
이하, 본 명세서에서 현재 계층은 현재 부호화/복호화 하고자 하는 대상 블록이 속한 계층일 수 있고, 상위 계층 혹은 인핸스먼트 레이어를 지칭할 수 있다. 하위 계층은 상대적으로 현재 계층 아래에 있는 하나 이상의 계층을 의미할 수 있으며, 베이스 레이어를 지칭할 수 있다.
도 6은 본 발명의 일 실시예에 따른 인트라 예측을 이용한 영상 복호화 방법을 개략적으로 나타내는 순서도이다. 도 6의 방법은 상술한 도 2의 복호화 장치에서 수행될 수 있다. 보다 구체적으로는 상술한 도 2의 인트라 예측부에서 수행될 수 있다.
도 6을 참조하면, 복호화 장치는 현재 계층(예컨대, 상위 계층 혹은 인핸스먼트 레이어)의 예측 대상 블록에 대한 최적 모드(이하, MPM이라 함) 리스트를 도출하여 인트라 예측 모드를 결정한다(S600).
복호화 장치는, 현재 계층의 예측 대상 블록에 인접한 주변 블록, 예측 대상 블록에 대응하는 하위 계층(예컨대, 베이스 레이어)의 대응 블록, 하위 계층의 대응 블록에 인접한 주변 블록 및 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록으로부터 유도된 후보 모드를 이용하여 MPM 리스트를 생성할 수 있다.
후보 모드는 상기 예측 대상 블록의 주변 블록, 대응 블록, 대응 블록의 주변 블록 및 특정 블록 중 적어도 하나의 블록의 인트라 예측 모드이거나 혹은 임의의 특정 인트라 예측 모드일 수 있다.
MPM 리스트는 소정의 개수(예컨대, 2개, 3개, 4개 등)의 후보 모드를 포함할 수 있다. 후보 모드의 MPM 리스트 내 순서는 미리 정해진 우선 순위에 따라 결정될 수 있다. 예컨대, 예측 대상의 주변 블록, 대응 블록, 대응 블록의 주변 블록, 임의의 특정 블록 순으로 후보 모드를 유도하여 MPM 리스트에 추가할 수 있다. MPM 리스트를 도출하는 방법의 구체적인 실시예는 도 7을 참조하여 후술하기로 한다.
복호화 장치는 MPM 리스트를 기반으로 예측 대상 블록의 인트라 예측 모드를 유도할 수 있다. 이때, 부호화기로부터 수신한 MPM 플래그, MPM 인덱스, 잔여 모드에 관한 정보 중 적어도 하나를 이용할 수 있다.
여기서, MPM 플래그는 MPM 리스트 내에 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는지 여부를 지시하는 정보이다. 예컨대, MPM 플래그는 prev_intra_luma_pred_flag일 수 있다. 만일 MPM 리스트 내에 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는 경우 MPM 플래그(prev_intra_luma_pred_flag) 값은 1일 수 있고, 그렇지 않은 경우 MPM 플래그(prev_intra_luma_pred_flag) 값은 0일 수 있다.
MPM 인덱스는 예측 대상 블록의 인트라 예측 모드가 MPM 리스트 내의 후보 모드들 중 어느 후보 모드와 동일한지를 지시하는 인덱스이다. 예컨대, MPM 인덱스는 mpm_idx일 수 있다. 복호화 장치는 MPM 인덱스가 지시하는 MPM 리스트 내의 후보 모드를 예측 대상 블록의 인트라 예측 모드로 결정할 수 있다.
잔여 모드(remaining intra prediction mode, 혹은 remaining mode)는 MPM 리스트 내의 후보 모드들을 제외한 인트라 예측 모드를 이용하여 유도된 예측 대상 블록의 예측 모드를 지시하는 정보이다. 예컨대, 부호화기에서는 MPM 리스트 내의 후보 모드들을 제외한 나머지 인트라 예측 모드들을 모드 번호 순으로 재정렬하고, 재정렬된 예측 모드의 모드 번호를 기반으로 유도된 예측 대상 블록의 인트라 예측 모드를 잔여 모드로 결정할 수 있다. 복호화기에서는 MPM 리스트 내의 후보 모드들을 제외한 나머지 인트라 예측 모드들을 기반으로 잔여 모드가 지시하는 예측 모드를 예측 대상 블록의 인트라 예측 모드로 결정할 수 있다. 잔여 모드는 예컨대 rem_intra_luma_pred_mode로 나타내어질 수 있다.
일예로, 복호화 장치는 MPM 플래그(prev_intra_luma_pred_flag)를 파싱한 값이 1인 경우, MPM 인덱스(mpm_idx)를 파싱하여 MPM 리스트에 포함된 후보 모드들 중 MPM 인덱스(mpm_idx)가 지시하는 후보 모드를 예측 대상 블록의 인트라 예측 모드로 결정할 수 있다. 반면, 복호화 장치는 MPM 플래그(prev_intra_luma_pred_flag)를 파싱한 값이 0인 경우, 잔여 모드(rem_intra_luma_pred_mode)를 파싱하여 MPM 리스트에 포함된 후보 모드들을 제외한 나머지 예측 모드들 중에서 잔여 모드(rem_intra_luma_pred_mode)가 지시하는 모드를 예측 대상 블록의 인트라 예측 모드로 결정할 수 있다.
복호화 장치는 예측 대상 블록의 예측을 위한 참조 샘플을 도출한다(S610).
참조 샘플은 현재 계층의 예측 대상 블록에 인접한 주변 블록, 예측 대상 블록에 대응하는 하위 계층(예컨대, 베이스 레이어)의 대응 블록, 하위 계층의 대응 블록에 인접한 주변 블록 및 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플(들)로부터 유도될 수 있다. 참조 샘플을 도출하는 방법의 구체적인 실시예는 도 8 및 도 9를 참조하여 후술하기로 한다.
복호화 장치는 상기 도출된 인트라 예측 모드 및 참조 샘플을 기반으로 예측 대상 블록에 대한 인트라 예측을 수행함으로써, 예측 대상 블록의 예측 샘플들을 생성한다(S620).
본 발명에 따른 인트라 예측 시에는 상단 또는 좌측 샘플들뿐만 아니라 우측 또는 하단 샘플들을 이용하여 예측을 수행함으로써, 예측 오차를 줄여서 예측 효율을 향상시킬 수 있다. 이때, 기존의 인트라 예측 방법과 동일하게 인트라 예측 모드의 방향에 따라 사용되는 참조 샘플들을 적용하여 예측할 수 있고, 또는 예측 방향에 맞게 양의 각도(angle), 음의 각도(invAngle) 등의 파라미터를 조정하여 참조 샘플들을 사용할 수도 있다. 인트라 예측 모드에 따라 참조 샘플을 이용하여 인트라 예측을 수행하는 방법의 구체적인 실시예들은 후술하기로 한다.
본 발명의 실시예에서 예측 대상 블록의 주변 블록은 예측 대상 블록을 포함하는 현재 픽처 내에서 복원된 블록(부호화 혹은 복호화가 완료된 블록)이며, 예컨대 상단 좌측 블록, 상단 블록, 상단 우측 블록, 좌측 블록, 하단 좌측 블록일 수 있다. 하위 계층의 대응 블록 및 주변 블록은 현재 픽처에 대응하는 하위 계층의 픽처 내에서 복원된 블록(부호화 혹은 복호화가 완료된 블록)들이며, 하위 계층의 주변 블록은 대응 블록에 인접한 상단 좌측 블록, 상단 블록, 상단 우측 블록, 좌측 블록, 우측 블록, 하단 좌측 블록, 하단 블록, 하단 우측 블록일 수 있다. 하위 계층의 임의의 특정 블록은 현재 픽처에 대응하는 하위 계층의 픽처 또는 하위 계층의 임의의 특정 픽처에 포함되는 블록일 수 있으며, 복원된 블록(부호화 혹은 복호화가 완료된 블록)일 수 있다.
이때, 상위 계층과 하위 계층의 해상도가 다른 경우, 즉 하위 계층의 대응 블록 및 주변 블록의 크기가 상위 계층의 예측 대상 블록 및 주변 블록의 크기와 다른 경우, 하위 계층의 대응 블록과 주변 블록을 스케일링하여 사용할 수 있다. 예를 들어, 상위 계층의 블록 크기가 하위 계층의 블록 크기보다 2배 또는 1.5배 큰 경우, 하위 계층의 블록(혹은 픽처)을 업 샘플링(up-sampling)하여 사용할 수 있다.
또한, 하위 계층의 대응 블록은, 상위 계층의 현재 픽처 내에서 예측 대상 블록과 동일한 위치(co-located)에 있는 하위 계층의 픽처 내 블록일 수 있다. 이때, 하위 계층의 픽처는 상위 계층의 현재 픽처와 대응하는 픽처일 수 있다. 또는, 하위 계층의 대응 블록은, 하위 계층의 슬라이스/픽처/타일 내의 특정 블록일 수 있다. 이때, 부호화기에서 특정 블록의 위치를 시그널링하여 복호화기에 알려줄 수 있으며, 혹은 부호화기와 복호화기에서 약속된 방법으로 특정 블록을 찾을 수도 있다. 예를 들어, 부호화기 및 복호화기에서는 템플릿 매칭(Template matching) 방법과 같이, 상단 좌측 블록, 상단 블록, 상단 우측 블록, 좌측 블록, 하단 좌측 블록에 속하는 하나 이상의 샘플을 이용하여 하위 계층의 픽처 내에서 유사한 샘플들의 위치를 찾는 방법을 동일하게 수행할 수 있다.
도 7은 본 발명의 일 실시예에 따른 MPM 리스트를 도출하기 위해 사용되는 주변 블록의 일예를 도시한 도면이다.
도 7의 (a)는 현재 계층(예컨대, 상위 계층 혹은 인핸스먼트 레이어)의 예측 대상 블록과 주변 블록을 도시하였고, 도 7의 (b)는 현재 계층의 예측 대상 블록에 대응하는 하위 계층(예컨대, 베이스 레이어)의 대응 블록과 주변 블록을 도시하였다. 이때, 도 7의 (b)에 도시된 하위 계층의 대응 블록 및 주변 블록은 상위 계층의 예측 대상 블록 및 주변 블록의 크기에 맞게 업 샘플링된 블록일 수 있다.
도 7의 (a)를 참조하면, 예측 대상 블록(EE)에 인접한 주변 블록은 이미 부호화 또는 복호화되어 복원된 블록일 수 있다. 예를 들어, 예측 대상 블록(EE)에 인접한 주변 블록은, 상단 좌측 블록(EA), 상단 블록(EB), 상단 우측 블록(EC), 좌측 블록(ED), 하단 좌측 블록(EG)일 수 있다.
도 7의 (b)를 참조하면, 대응 블록(BE)은 예측 대상 블록(EE)에 대응하는 하위 계층의 블록이고, 대상 블록(EE) 및 대응 블록(BE)에 인접한 주변 블록은 이미 부호화 또는 복호화되어 복원된 블록일 수 있다. 예를 들어, 대응 블록(BE)에 인접한 주변 블록은, 상단 좌측 블록(BA), 상단 블록(BB), 상단 우측 블록(BC), 좌측 블록(BD), 우측 블록(BF), 하단 좌측 블록(BG), 하단 블록(BH), 하단 우측 블록(BI)일 수 있다.
도 7을 참조하여 본 발명의 일 실시예에 따른 MPM 리스트를 도출하는 방법을 설명한다. 복호화 장치는 현재 계층의 예측 대상 블록(EE)에 대한 인트라 예측 모드를 유도하기 위해서, MPM 리스트를 생성할 수 있다.
상술한 바와 같이, MPM 리스트는 소정의 개수(예컨대, 2개, 3개, 4개 등)의 후보 모드를 포함할 수 있다. 후보 모드는 상위 계층의 주변 블록(EA, EB, EC, ED, EG), 대응 블록(BE), 하위 계층의 주변 블록(BA, BB, BC, BD, BF, BG, BH, BI) 및 하위 계층의 임의의 블록 중 적어도 하나의 블록으로부터 유도된 인트라 예측 모드일 수 있다.
예를 들어, 복호화 장치는 상위 계층의 상단 좌측 블록(EA), 상단 블록(EB), 상단 우측 블록(EC), 좌측 블록(ED), 하단 좌측 블록(EG) 중에서 적어도 하나의 블록의 인트라 예측 모드를 후보 모드로 유도하고, 유도된 적어도 하나의 후보 모드를 MPM 리스트에 추가할 수 있다. 예컨대, 상단 블록(EB)의 예측 모드와 좌측 블록(ED)의 예측 모드를 MPM 리스트에 추가할 수 있다.
복호화 장치는 대응 블록(BE)의 인트라 예측 모드를 후보 모드로 유도하고, 유도된 후보 모드를 MPM 리스트에 추가할 수 있다.
복호화 장치는 하위 계층의 상단 좌측 블록(BA), 상단 블록(BB), 상단 우측 블록(BC), 좌측 블록(BD), 우측 블록(BF), 하단 좌측 블록(BG), 하단 블록(BH), 하단 우측 블록(BI) 중에서 적어도 하나의 블록의 인트라 예측 모드를 후보 모드로 유도하고, 유도된 적어도 하나의 후보 모드를 MPM 리스트에 추가할 수 있다. 예컨대, 우측 블록(BF)의 예측 모드와 하단 블록(BH)의 예측 모드를 MPM 리스트에 추가할 수 있다.
복호화 장치는 하위 계층의 임의의 특정 블록의 인트라 예측 모드를 후보 모드로 유도하여 MPM 리스트에 추가할 수 있다. 여기서, 임의의 특정 블록은, 예측 대상 블록을 포함하는 현재 픽처에 대응하는 하위 계층의 픽처 또는 하위 계층의 임의의 특정 픽처에 포함되는 블록일 수 있으며, 복원된 블록(부호화 혹은 복호화가 완료된 블록)일 수 있다.
상기와 같은 방법으로 생성된 MPM 리스트가 정해진 소정의 개수의 후보 모드를 포함하지 못하는 경우, 특정 예측 모드를 이용하여 MPM 리스트를 채울 수 있다.
상술한 바와 같이 MPM 리스트를 도출하는 과정에서, 후보 모드를 유도하여 MPM 리스트에 추가하는 순서는 미리 정해진 우선 순위에 따를 수 있다. 예를 들어, MPM 리스트의 후보 모드의 개수가 3개인 경우, 상위 계층의 주변 블록(EA, EB, EC, ED, EG) 중 적어도 하나의 블록으로부터 적어도 하나의 후보 모드를 유도하여 MPM 리스트를 채울 수 있다. 만일, MPM 리스트가 3개의 후보 모드를 포함하지 않으면, 대응 블록(BE)으로부터 후보 모드를 유도하여 MPM 리스트를 채울 수 있다. 상기 과정 후에도 MPM 리스트가 3개의 후보 모드를 포함하지 않으면, 하위 계층의 주변 블록(BA, BB, BC, BD, BF, BG, BH, BI) 중 적어도 하나의 블록으로부터 적어도 하나의 후보 모드를 유도하여 MPM 리스트를 채울 수 있다. 또는, 대응 블록(BE), 상위 계층의 주변 블록(EA, EB, EC, ED, EG), 하위 계층의 주변 블록(BA, BB, BC, BD, BF, BG, BH, BI) 순으로 후보 모드를 유도하여 MPM 리스트를 채울 수 있다.
상술한 본 발명의 일 실시예에 따른 MPM 리스트를 도출하는 방법이 복호화 장치에서 수행되는 것으로 설명하였으나, 이는 부호화 장치에서도 동일하게 적용될 수 있다.
도 8은 본 발명의 일 실시예에 따른 참조 샘플을 도출하는 방법을 개략적으로 나타내는 순서도이다.
도 8을 참조하면, 복호화 장치는 현재 계층(예컨대, 상위 계층 혹은 인핸스먼트 레이어)의 예측 대상 블록의 인트라 예측을 위한 참조 샘플의 사용 가능성(availability) 여부를 판단한다(S800).
참조 샘플은, 상술한 바와 같이, 현재 계층의 예측 대상 블록에 인접한 주변 블록, 예측 대상 블록에 대응하는 하위 계층(예컨대, 베이스 레이어)의 대응 블록, 하위 계층의 대응 블록에 인접한 주변 블록 및 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플(들)로부터 유도될 수 있다.
여기서, 임의의 특정 블록은, 예측 대상 블록을 포함하는 현재 픽처에 대응하는 하위 계층의 픽처 또는 하위 계층의 임의의 특정 픽처에 포함되는 블록일 수 있다.
예를 들어, 도 7을 참조하여 설명하면, 현재 계층의 주변 블록(EA, EB, EC, ED, EG)으로부터 유도될 수 있는 참조 샘플은, 상단 좌측 샘플(710), 상단 샘플들(712), 상단 우측 샘플들(714), 좌측 샘플들(716), 하단 좌측 샘플들(718) 중 적어도 하나일 수 있다. 하위 계층의 대응 블록(BE)으로부터 유도될 수 있는 참조 샘플은 대응 블록(BE) 내의 복원된 샘플들일 수 있다. 하위 계층의 주변 블록(BA, BB, BC, BD, BF, BG, BH, BI)으로부터 유도될 수 있는 참조 샘플은, 상단 좌측 샘플(730), 상단 샘플들(732), 상단 우측 샘플들(734), 좌측 샘플들(736), 우측 샘플들(744), 하단 좌측 샘플들(738), 하단 샘플들(740), 하단 우측 샘플(742) 중 적어도 하나일 수 있다. 하위 계층의 임의의 특정 블록으로부터 유도될 수 있는 참조 샘플은 임의의 특정 블록 내의 복원된 샘플들일 수 있다.
이때, 복호화 장치는 상술한 블록들(EA, EB, EC, ED, EG, BE, BA, BB, BC, BD, BF, BG, BH, BI) 중 적어도 하나로부터 유도된 참조 샘플들의 사용 가능성 여부를 결정할 수 있다.
예를 들어, 참조 샘플을 포함하는 블록이 부호화 혹은 복호화되지 않았거나, 또는 픽처(picture), 슬라이스(slice), 타일(tile), 엔트로피 슬라이스(entropy slice), 웨이브프론트(WPP: Wavefront parallel processing) 등의 경계 밖에 존재하는 경우, 참조 샘플은 사용 불가능한 것으로 결정될 수 있다. 또는, CIP(constrained intra prediction)가 사용된 환경 하에서 참조 샘플을 포함하는 블록이 인터 모드로 부호화된 블록인 경우, 참조 샘플은 사용 불가능한 것으로 결정될 수 있다.
참조 샘플이 사용 불가능한 참조 샘플인 경우, 복호화 장치는 사용 불가능한 참조 샘플들을 사용 가능한 참조 샘플들 중 적어도 하나의 샘플로 채우는 패딩(padding) 과정을 수행한다(S810).
예를 들어, 상위 계층의 참조 샘플들 중 사용 불가능한 참조 샘플이 존재하면, 상기 사용 불가능한 참조 샘플은 상위 계층의 사용 가능한 참조 샘플 또는 하위 계층에서 사용 가능한 참조 샘플을 이용하여 채울 수 있다. 예컨대, 사용 불가능한 참조 샘플의 값은 사용 가능한 참조 샘플의 값으로 대체될 수 있다.
이러한 사용 불가능한 참조 샘플에 대해 패딩을 수행함으로써, 예측 대상 블록의 인트라 예측을 위한 참조 샘플들을 사용 가능한 참조 샘플들로 대체할 수 있다. 예컨대, 예측 대상 블록에 인접한 상단 샘플들, 상단 좌측 샘플, 상단 우측 샘플들, 좌측 샘플들, 우측 샘플들, 하단 샘플들, 하단 좌측 샘플들, 하단 우측 샘플이 사용 가능한 참조 샘플들로 대체될 수 있다.
복호화 장치는 참조 샘플들에 대해 필터링을 적용한다(S820).
이때, 참조 샘플들은 단계 S800에 의해 사용 가능한 참조 샘플로 결정된 참조 샘플 및 패딩 과정에 의해 도출된 사용 가능한 참조 샘플일 수 있다.
예를 들어, 예측 대상 블록에 대한 참조 샘플로 예측 대상 블록에 인접한 상단 샘플들, 상단 좌측 샘플, 상단 우측 샘플들, 좌측 샘플들, 우측 샘플들, 하단 샘플들, 하단 좌측 샘플들, 하단 우측 샘플이 유도된 경우, 상기 참조 샘플들 중 적어도 하나의 샘플에 대해 필터를 적용할 수 있다. 이때, 필터는 필터 계수가 예컨대 [1/4, 2/4, 1/4]를 갖는 3 탭(tap) 필터일 수 있다.
일예로, 하단 우측 샘플에 대해 [1/4, 2/4, 1/4] 필터 계수를 갖는 3 탭 필터를 적용할 경우, 아래 수학식 1과 같이 하단 우측 샘플의 필터링된 값이 도출될 수 있다.
수학식 1
Figure PCTKR2013006144-appb-M000001
여기서, pE[x, y]는 (x, y) 위치의 샘플 값을 의미하며, Filtered_pE[x, y]는 (x, y) 위치의 샘플에 대해 필터링을 적용한 값을 의미한다.
참조 샘플들에 필터링을 적용할 때, 예측 대상 블록의 인트라 예측 모드에 따라 참조 샘플에 대한 필터링 적용 여부를 결정할 수 있다. 예를 들어, 특정 인트라 예측 모드이면 참조 샘플에 대해 필터링을 적용하고, 특정 인트라 예측 모드를 제외한 나머지 예측 모드이면 참조 샘플에 대해 필터링을 적용하지 않을 수 있다. 또는, 예측 대상 블록의 인트라 예측 모드에 따른 참조 샘플에 대한 필터링 적용 여부를 테이블화하여 미리 정해둘 수 있다.
또는, 참조 샘플들에 필터링을 적용할 때, 예측 대상 블록의 크기에 따라 참조 샘플에 대한 필터링 적용 여부를 결정할 수 있다. 예를 들어, 특정 블록 크기이면 참조 샘플에 대해 필터링을 적용하고, 특정 블록 크기를 제외한 나머지 블록 크기이면 참조 샘플에 대해 필터링을 적용하지 않을 수 있다. 또는, 예측 대상 블록의 크기에 따른 참조 샘플에 대한 필터링 적용 여부를 테이블화하여 미리 정해둘 수 있다.
또는, 참조 샘플들에 필터링을 적용할 때, 예측 대상 블록의 색 성분(color components)에 따라 참조 샘플에 대한 필터링 적용 여부를 결정할 수 있다. 예를 들어, 색 성분이 휘도(luma) 신호이면 참조 샘플에 대해 필터링을 적용하고, 색 성분이 색차(chroma) 신호이면 참조 샘플에 대해 필터링을 적용하지 않을 수 있다.
또는, 참조 샘플들에 필터링을 적용할 때, 참조 샘플의 계층에 따라 참조 샘플에 대한 필터링 적용 여부를 결정할 수 있다. 예를 들어, 참조 샘플이 상위 계층에 속한 경우 필터링을 적용하고, 참조 샘플이 하위 계층으로부터 가져온 샘플인 경우 필터링을 적용하지 않을 수 있다. 또는, 이와 반대로 참조 샘플이 상위 계층에 속한 경우 필터링을 적용하지 않고, 참조 샘플이 하위 계층으로부터 가져온 샘플인 경우 필터링을 적용할 수 있다.
상술한 본 발명의 일 실시예에 따른 참조 샘플을 도출하는 방법이 복호화 장치에서 수행되는 것으로 설명하였으나, 이는 부호화 장치에서도 동일하게 적용될 수 있다.
도 9는 본 발명의 일 실시예에 따른 참조 샘플의 패딩 방법을 설명하기 위해 도시된 도면이다.
도 9의 (a)는 현재 계층(예컨대, 상위 계층 혹은 인핸스먼트 레이어)의 예측 대상 블록과 그 주변에 위치한 참조 샘플들을 도시하였고, 도 9의 (b)는 현재 계층의 예측 대상 블록에 대응하는 하위 계층(예컨대, 베이스 레이어)의 대응 블록과 그 주변에 위치한 참조 샘플들을 도시하였다. 이때, 도 9의 (b)에 도시된 하위 계층의 대응 블록은 상위 계층의 크기에 맞게 스케일링(업 샘플링)된 블록일 수 있다.
도 9를 참조하면, 현재 계층의 예측 대상 블록(EE)이 8x8 크기 블록이고, 예측 대상 블록(EE) 및 대응 블록(BE) 내의 최상단 좌측 샘플의 좌표가 (0, 0)이라고 하자. 그리고 상위 계층의 (x, y) 위치의 샘플 값은 pE[x, y]로 나타내고, 하위 계층의 (x, y) 위치의 샘플 값은 pB[x, y]로 나타낸다.
이때, 예측 대상 블록(EE)의 주변에 위치한 참조 샘플들 중 음영이 칠해진 부분의 참조 샘플(914, 916, 920, 922, 924)이 사용 불가능한 참조 샘플인 경우, 사용 불가능한 참조 샘플은 사용 가능한 참조 샘플로 채워질 수 있다.
예를 들어, 사용 불가능한 참조 샘플(914, 916, 920, 922, 924)은 현재 계층의 사용 가능한 참조 샘플(910, 912, 918), 대상 블록(BE) 내의 샘플들, 하위 계층의 참조 샘플들(930, 932, 934, 936, 938, 940, 942, 944), 하위 계층의 임의의 블록 내 샘플들을 이용하여 채울 수 있다. 이하, 사용 불가능한 참조 샘플(914, 916, 920, 922, 924) 값을 사용 가능한 샘플 값으로 대체하는 패딩 과정을 예를 들어 설명한다.
일예로, 현재 계층의 사용 불가능한 참조 샘플은 현재 계층의 사용 가능한 참조 샘플들을 이용하여 채워질 수 있다.
현재 계층의 사용 불가능한 상단 우측 샘플들(914)은 다음 수학식 2와 같이 현재 계층의 사용 가능한 상단 샘플들(912) 중 하나의 샘플로 채워질 수 있다.
수학식 2
Figure PCTKR2013006144-appb-M000002
현재 계층의 사용 불가능한 하단 샘플들(920)은 다음 수학식 3과 같이 현재 계층의 사용 가능한 하단 좌측 샘플들(918) 중 하나의 샘플로 채워질 수 있다.
수학식 3
Figure PCTKR2013006144-appb-M000003
현재 계층의 사용 불가능한 하단 샘플들(920)은 다음 수학식 4와 같이 현재 계층의 사용 가능한 하단 좌측 샘플들(918)과 일대일 대응하여 채워질 수 있다.
수학식 4
Figure PCTKR2013006144-appb-M000004
다른 예로, 현재 계층의 사용 불가능한 참조 샘플은 하위 계층의 대응 블록 내 경계에 위치한 경계 샘플들을 이용하여 채워질 수 있다. 예컨대, 현재 계층의 하단 샘플들이 사용 불가능한 참조 샘플이면, 하단 샘플들은 대응 블록 내 최하단에 위치한 경계 샘플들로 채워질 수 있다. 이외 현재 계층의 상단, 좌측, 우측 샘플들이 사용 불가능한 참조 샘플이면, 각 사용 불가능한 참조 샘플에 대해서도 대응 블록 내 최상단, 가장 좌측, 가장 우측에 위치한 경계 샘플들로 채울 수 있다.
현재 계층의 사용 불가능한 좌측 샘플들(916)은 다음 수학식 5와 같이 하위 계층의 대응 블록(BE) 내 가장 좌측에 위치한 샘플들(950)로 채워질 수 있다.
수학식 5
Figure PCTKR2013006144-appb-M000005
현재 계층의 사용 불가능한 우측 샘플들(924)은 다음 수학식 6과 같이 하위 계층의 대응 블록(BE) 내 가장 우측에 위치한 샘플들(952)로 채워질 수 있다.
수학식 6
Figure PCTKR2013006144-appb-M000006
현재 계층의 사용 불가능한 상단 우측 샘플들(914)은 다음 수학식 7과 같이 하위 계층의 대응 블록(BE) 내 가장 우측에 위치한 샘플들(952)과 일대일 대응하여 채워질 수 있다.
수학식 7
Figure PCTKR2013006144-appb-M000007
또 다른 예로, 현재 계층의 사용 불가능한 참조 샘플은 하위 계층의 대상 블록의 주변에 위치한 사용 가능한 참조 샘플들을 이용하여 채워질 수 있다. 예컨대, 현재 계층의 사용 불가능한 참조 샘플에 대응하는 하위 계층의 사용 가능한 참조 샘플로 채울 수 있다.
현재 계층의 사용 불가능한 좌측 샘플들(916)은 다음 수학식 8과 같이 사용 불가능한 좌측 샘플들(916)과 대응하는 위치의 하위 계층의 샘플들(좌측 샘플들, 936)로 채워질 수 있다.
수학식 8
Figure PCTKR2013006144-appb-M000008
현재 계층의 사용 불가능한 우측 샘플들(924)은 다음 수학식 9와 같이 사용 불가능한 우측 샘플들(924)과 대응하는 위치의 하위 계층의 샘플들(우측 샘플들, 944)로 채워질 수 있다.
수학식 9
Figure PCTKR2013006144-appb-M000009
현재 계층의 사용 불가능한 하단 샘플들(920)은 다음 수학식 10과 같이 사용 불가능한 하단 샘플들(920)과 대응하는 위치의 하위 계층의 샘플들(하단 샘플들, 940)로 채워질 수 있다.
수학식 10
Figure PCTKR2013006144-appb-M000010
현재 계층의 사용 불가능한 참조 샘플(914, 916, 920, 922, 924)은 하위 계층의 임의의 특정 블록 내 샘플들 중 적어도 하나로 채워질 수 있다. 하위 계층의 임의의 특정 블록은 예측 대상 블록(EE)를 포함하는 현재 픽처에 대응하는 하위 계층의 픽처 또는 하위 계층의 임의의 특정 픽처에 포함되는 블록일 수 있으며, 복원된 블록(부호화 혹은 복호화가 완료된 블록)일 수 있다.
상술한 사용 불가능한 참조 샘플을 사용 가능한 참조 샘플로 채우는 실시예들은 하나의 예시로서, 본 발명이 이에 한정되는 것은 아니며 다양한 형태로 변형 가능하다.
한편, 상술한 바와 같이 도출된 참조 샘플들을 이용하여 예측 대상 블록의 인트라 예측을 수행할 수 있다. 이때, 예측 대상 블록에 대한 MPM 리스트를 이용하여 유도된 인트라 예측 모드의 예측 방향 및 예측 방식에 따라 예측 시 사용되는 참조 샘플들이 결정될 수 있다. 이하, 도 10 내지 도 14를 참조하여 인트라 예측 모드에 따라 참조 샘플을 이용하여 예측 대상 블록에 대한 예측을 수행하는 방법의 실시예들을 설명한다.
도 10은 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 일예를 설명하기 위한 개념도이다.
도 10을 참조하면, 복호화 장치는 예측 대상 블록의 주변에 위치한 참조 샘플들 중 적어도 하나를 이용하여 예측 대상 블록에 대한 예측을 수행할 수 있다. 예컨대, 우측 샘플들 및/또는 하단 샘플들을 참조 샘플로 이용할 수 있다. 이때, 참조 샘플들은 상술한 바와 같이 인트라 예측을 위해 사용 가능한 샘플들이며, 필터링이 적용된 샘플들일 수 있다.
일예로, 인트라 예측 모드가 도 4에 도시된 바와 같은 모드 번호 15인 경우, 복호화 장치는 도 10에 도시된 바와 같이 우측 샘플들 또는 하단 샘플들을 참조 샘플로 이용하여 예측 대상 블록에 대한 예측을 수행하고, 예측 대상 블록의 예측 샘플들을 도출할 수 있다.
도 11은 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 다른 예를 설명하기 위한 개념도이다.
도 11을 참조하면, 복호화 장치는 예측 대상 블록의 주변에 위치한 참조 샘플들 중 적어도 하나를 이용하여 예측 대상 블록에 대한 예측을 수행할 수 있다. 예컨대, 상단 샘플들 및/또는 좌측 샘플들과 함께 하단 샘플들 및/또는 우측 샘플들을 참조 샘플로 이용할 수 있다. 이때, 참조 샘플들은 상술한 바와 같이 인트라 예측을 위해 사용 가능한 샘플들이며, 필터링이 적용된 샘플들일 수 있다.
일예로, 인트라 예측 모드가 도 4에 도시된 바와 같은 모드 번호 33인 경우, 복호화 장치는 도 11에 도시된 바와 같이 상단 샘플들 또는 우측 샘플들을 참조 샘플로 이용하여 예측 대상 블록에 대한 예측을 수행하고, 예측 대상 블록의 예측 샘플들을 도출할 수 있다.
도 12는 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 또 다른 예를 설명하기 위한 개념도이다.
도 12를 참조하면, 복호화 장치는 상단 샘플들 및/또는 좌측 샘플들을 참조 샘플로 이용하여 예측 대상 블록에 대한 예측을 수행함으로써 예측 대상 블록의 제1 예측 샘플 값을 도출하고, 하단 샘플들 및/또는 우측 샘플들을 참조 샘플로 이용하여 예측 대상 블록에 대한 예측을 수행함으로써 예측 대상 블록의 제2 예측 샘플 값을 도출할 수 있다. 그리고 복호화 장치는 제1 예측 샘플 값과 제2 예측 샘플 값의 가중합을 예측 대상 블록에 대한 최종 예측 샘플 값으로 결정할 수 있다.
여기서, 참조 샘플들은 상술한 바와 같이 인트라 예측을 위해 사용 가능한 샘플들이며, 필터링이 적용된 샘플들일 수 있다.
일예로, 인트라 예측 모드가 도 4에 도시된 바와 같은 모드 번호 21인 경우, 복호화 장치는 도 12의 (a)에 도시된 바와 같이 상단 샘플들 또는 좌측 샘플들을 참조 샘플로 이용하여 도출된 예측 대상 블록의 제1 예측 샘플들과, 도 12의 (b)에 도시된 바와 같이 우측 샘플들 또는 하단 샘플들을 참조 샘플로 이용하여 도출된 예측 대상 블록의 제2 예측 샘플들에 대해 가중합을 계산하여 예측 대상 블록의 최종 예측 샘플들을 도출할 수 있다. 이때, 가중합을 위한 제1 예측 샘플들과 제2 예측 샘플들에 대한 계수는 [1/2, 1/2], [1/4, 3/4], [3/4, 1/4] 등일 수 있다. 이는 수학식 11과 같이 나타내어질 수 있다.
수학식 11
Figure PCTKR2013006144-appb-M000011
여기서, a와 b는 제1 예측 샘플 값과 제2 예측 샘플 값에 대한 가중합을 위한 계수이다. 예를 들어, 가중합을 위한 계수가 [1/2, 1/2]일 경우 a와 b는 1/2일 수 있고, 가중합을 위한 계수가 [1/4, 3/4]일 경우 a는 1/4, b는 3/4일 수 있다.
한편, 예측 대상 블록의 인트라 예측 모드가 수평 모드 또는 수직 모드인 경우, 본 발명의 일 실시예에 따르면 예측 대상 블록 내 경계 샘플들(예측 대상 블록 내 가장 좌측에 위치하는 샘플들, 가장 우측에 위치하는 샘플들, 최상단에 위치하는 샘플들, 최하단에 위치하는 샘플들)에 대해 예측을 달리 수행할 수 있다.
예를 들어, 인트라 예측 모드가 도 4에 도시된 바와 같은 모드 번호 26(수직 모드)인 경우, 복호화 장치는 예측 대상 블록의 주변에 위치한 좌측 참조 샘플들 또는 우측 참조 샘플들과의 연관성을 높이기 위해 좌측 참조 샘플들 또는 우측 참조 샘플들 간의 차이를 예측 대상 블록 내 경계 샘플들에 반영할 수 있다.
일례로, 하단 참조 샘플들을 이용하여 예측하는 수직 모드일 경우, 참조 샘플들 간의 차이를 반영한 예측 대상 블록 내 가장 좌측 경계 샘플들의 예측된 샘플 값은 아래 수학식 12와 같이 계산될 수 있고, 참조 샘플들 간의 차이를 반영한 예측 대상 블록 내 가장 우측 경계 샘플들의 예측된 샘플 값은 아래 수학식 13과 같이 계산될 수 있다. 여기서, 예측된 샘플 값은 predSamples이고, 블록의 가로 또는 세로의 크기는 nS이다. ‘Clip’은 샘플 값을 특정 범위 안에 들어오게 하기 위한 클리핑(clipping) 연산일 수 있다.
수학식 12
Figure PCTKR2013006144-appb-M000012
수학식 13
Figure PCTKR2013006144-appb-M000013
상기와 같은 방법으로, 인트라 예측 모드가 도 4에 도시된 바와 같은 모드 번호 10(수평 모드)인 경우, 복호화 장치는 예측 대상 블록의 주변에 위치한 상단 참조 샘플들 또는 하단 참조 샘플들과의 연관성을 높이기 위해 상단 참조 샘플들 또는 하단 참조 샘플들 간의 차이를 예측 대상 블록 내 경계 샘플들에 반영할 수 있다. 예측 대상 블록 내 최상단 경계 샘플들 혹은 예측 대상 블록 내 최하단 경계 샘플들에 대해 상술한 수직 모드 시에 적용된 수학식 12 및 수학식 13에서와 같은 방법으로 참조 샘플들 간의 차이를 반영할 수 있다. 이때, 색 성분에 따라 예측 대상 블록 내 경계 샘플들에 대해 참조 샘플들 간의 차이를 예측 시 반영할지 여부를 결정할 수 있다. 예컨대, 색 성분이 휘도 블록인 경우, 예측 대상 블록 내 경계 샘플들에 대해 참조 샘플들 간의 차이를 반영하여 예측을 수행할 수 있다. 색 성분이 색차 블록인 경우, 예측 대상 블록 내 경계 샘플들에 대해 참조 샘플들 간의 차이를 반영하지 않고 예측을 수행할 수 있다.
도 13은 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 또 다른 예를 설명하기 위한 개념도이다.
도 13을 참조하면, 예측 대상 블록의 인트라 예측 모드가 DC 모드인 경우, 복호화 장치는 예측 대상 블록의 주변에 위치한 참조 샘플들 중 적어도 하나를 이용하여 예측 대상 블록에 대한 예측을 수행할 수 있다. 예컨대, 상단 샘플들 및/또는 좌측 샘플들과 함께 하단 샘플들 및/또는 우측 샘플들을 참조 샘플로 이용할 수 있다. 이때, 참조 샘플들은 상술한 바와 같이 인트라 예측을 위해 사용 가능한 샘플들이며, 필터링이 적용된 샘플들일 수 있다.
예를 들어, 인트라 예측 모드가 도 4에 도시된 바와 같은 모드 번호 1(DC 모드)인 경우, 복호화 장치는 상단 샘플들, 좌측 샘플들, 하단 샘플들, 우측 샘플들 중 하나 이상의 샘플의 평균값을 이용하여 예측 대상 블록에 대한 예측을 수행할 수 있다. 이하, 상단, 좌측, 하단, 우측 참조 샘플들을 이용하여 DC 모드에 대한 예측 대상 블록의 예측 샘플 값을 도출하는 실시예들에 대해 설명한다. 여기서, 예측 샘플 값은 DCVal이고, 예측 대상 블록의 가로 또는 세로의 크기는 nS이다.
일예로, 상단 및 좌측 참조 샘플들에 대한 평균값, 또는 우측과 하단 참조 샘플들에 대한 평균값을 예측 대상 블록의 예측 샘플 값으로 도출할 수 있으며, 다음 수학식 14에 의해 계산될 수 있다.
수학식 14
Figure PCTKR2013006144-appb-M000014
다른 예로, 상단, 좌측, 하단, 우측 참조 샘플들에 대한 평균값을 예측 대상 블록의 예측 샘플 값으로 도출할 수 있으며, 다음 수학식 15에 의해 계산될 수 있다.
수학식 15
Figure PCTKR2013006144-appb-M000015
또 다른 예로, 참조 샘플들 중 소정의 샘플링된 참조 샘플들에 대한 평균값을 예측 대상 블록의 예측 샘플 값으로 도출할 수 있다. 예를 들어, x 또는 y의 좌표 값이 짝수 또는 홀수인 참조 샘플들을 이용하여 예측을 수행할 수 있다. 이는 다음 수학식 16에 의해 계산될 수 있다.
수학식 16
Figure PCTKR2013006144-appb-M000016
상기와 같이 예측된 예측 샘플 값(DCVal)을 가지는 예측 대상 블록 내 경계 샘플들(예측 대상 블록 내 가장 좌측에 위치하는 샘플들, 가장 우측에 위치하는 샘플들, 최상단에 위치하는 샘플들, 최하단에 위치하는 샘플들)의 경우, 참조 샘플들과의 연속성이 적을 수 있으므로 참조 샘플들을 이용하여 경계 샘플들에 대한 필터링을 적용할 수 있다.
예를 들어, 경계 샘플들과 상기 경계 샘플들과 이웃하는 참조 샘플들에 대해 [1/4, 3/4] 또는 [1/4, 2/4, 1/4] 등의 계수를 갖는 필터를 적용할 수 있다. 최종 예측된 예측 샘플 값을 predSamples라고 하면, 경계 샘플에 대한 필터링은 다음 수학식 17 내지 24와 같이 나타내어질 수 있다.
예측 대상 블록 내 가장 좌측 최상단 경계 샘플(1310)에 대해 필터링이 적용된 최종 예측 샘플 값(predSamples)은 다음 수학식 17에 의해 계산될 수 있다.
수학식 17
Figure PCTKR2013006144-appb-M000017
예측 대상 블록 내 가장 우측 최상단에 위치하는 경계 샘플(1312)에 대해 필터링이 적용된 최종 예측 샘플 값(predSamples)은 다음 수학식 18에 의해 계산될 수 있다.
수학식 18
Figure PCTKR2013006144-appb-M000018
예측 대상 블록 내 가장 우측 최하단에 위치하는 경계 샘플(1314)에 대해 필터링이 적용된 최종 예측 샘플 값(predSamples)은 다음 수학식 19에 의해 계산될 수 있다.
수학식 19
Figure PCTKR2013006144-appb-M000019
예측 대상 블록 내 가장 좌측 최하단에 위치하는 경계 샘플(1316)에 대해 필터링이 적용된 최종 예측 샘플 값(predSamples)은 다음 수학식 20에 의해 계산될 수 있다.
수학식 20
Figure PCTKR2013006144-appb-M000020
예측 대상 블록 내 최상단에 위치하는 경계 샘플들(1320)에 대해 필터링이 적용된 최종 예측 샘플 값(predSamples)은 다음 수학식 21에 의해 계산될 수 있다. 이때, 최상단에 위치하는 경계 샘플들(1320)은 가장 좌측 최상단 경계 샘플(1310)과 가장 우측 최상단에 위치하는 경계 샘플(1312)을 제외한 샘플들일 수 있다.
수학식 21
Figure PCTKR2013006144-appb-M000021
예측 대상 블록 내 가장 좌측에 위치하는 경계 샘플들(1322)에 대해 필터링이 적용된 최종 예측 샘플 값(predSamples)은 다음 수학식 22에 의해 계산될 수 있다. 이때, 가장 좌측에 위치하는 경계 샘플들(1322)은 가장 좌측 최상단 경계 샘플(1310)과 가장 좌측 최하단에 위치하는 경계 샘플(1316)을 제외한 샘플들일 수 있다.
수학식 22
Figure PCTKR2013006144-appb-M000022
예측 대상 블록 내 가장 우측에 위치하는 경계 샘플들(1324)에 대해 필터링이 적용된 최종 예측 샘플 값(predSamples)은 다음 수학식 23에 의해 계산될 수 있다. 이때, 가장 우측에 위치하는 경계 샘플들(1324)은 가장 우측 최상단에 위치하는 경계 샘플(1312)과 가장 우측 최하단에 위치하는 경계 샘플(1314)을 제외한 샘플들일 수 있다.
수학식 23
Figure PCTKR2013006144-appb-M000023
예측 대상 블록 내 최하단에 위치하는 경계 샘플들(1326)에 대해 필터링이 적용된 최종 예측 샘플 값(predSamples)은 다음 수학식 24에 의해 계산될 수 있다. 이때, 최하단에 위치하는 경계 샘플들(1326)은 가장 좌측 최하단에 위치하는 경계 샘플(1316)과 가장 우측 최하단에 위치하는 경계 샘플(1314)을 제외한 샘플들일 수 있다.
수학식 24
Figure PCTKR2013006144-appb-M000024
이때, 색 성분에 따라 예측 대상 블록 내 경계 샘플들의 예측 샘플 값(DCVal)에 필터링을 적용할지 여부를 결정할 수 있다. 예를 들어, 색 성분이 휘도 블록인 경우 예측 대상 블록 내 경계 샘플들에 대해 필터링을 적용할 수 있고,색 성분이 색차 블록인 경우 예측 대상 블록 내 경계 샘플들에 대해 필터링을 적용하지 않을 수 있다.
도 14는 본 발명의 일 실시예에 따른 참조 샘플을 이용하여 예측 샘플을 도출하는 방법의 또 다른 예를 설명하기 위한 개념도이다.
도 14를 참조하면, 예측 대상 블록의 인트라 예측 모드가 플래너(Planar) 모드인 경우, 복호화 장치는 예측 대상 블록의 주변에 위치한 참조 샘플들 중 적어도 하나를 이용하여 예측 대상 블록에 대한 예측을 수행할 수 있다. 예컨대, 상단 샘플들 및/또는 좌측 샘플들과 함께 하단 샘플들 및/또는 우측 샘플들을 참조 샘플로 이용할 수 있다. 이때, 참조 샘플들은 상술한 바와 같이 인트라 예측을 위해 사용 가능한 샘플들이며, 필터링이 적용된 샘플들일 수 있다.
예를 들어, 인트라 예측 모드가 도 4에 도시된 바와 같은 모드 번호 0(Planar 모드)인 경우, 복호화 장치는 상단 샘플들, 좌측 샘플들, 하단 샘플들, 우측 샘플들의 가중합을 이용하여 예측 대상 블록에 대한 예측을 수행할 수 있다. 이러한 참조 샘플들의 가중합으로 예측된 예측 대상 블록의 예측 샘플 값은 다음 수학식 25 또는 수학식 26과 같이 계산될 수 있다. 여기서, 예측된 예측 대상 블록의 예측 샘플 값이 predSamples이고, 예측 대상 블록의 가로 또는 세로의 크기가 nS이다.
수학식 25
Figure PCTKR2013006144-appb-M000025
수학식 26
Figure PCTKR2013006144-appb-M000026
상기와 같이 플래너 모드로 예측된 예측 대상 블록 내 경계 샘플들(예측 대상 블록 내 가장 좌측에 위치하는 샘플들, 가장 우측에 위치하는 샘플들, 최상단에 위치하는 샘플들, 최하단에 위치하는 샘플들)의 경우, 참조 샘플들과의 연속성이 적을 수 있으므로 참조 샘플들을 이용하여 경계 샘플들에 대한 필터링을 적용할 수 있다. 이때, 경계 샘플들에 대한 필터링은 상술한 DC 모드로 예측 시 경계 샘플들에 대해 적용된 필터링 방법과 동일하게 적용될 수 있다.
또한, 색 성분에 따라 예측 대상 블록 내 경계 샘플들의 예측 샘플 값(predSamples)에 필터링을 적용할지 여부를 결정할 수 있다. 예를 들어, 색 성분이 휘도 블록인 경우 예측 대상 블록 내 경계 샘플들에 대해 필터링을 적용할 수 있고, 색 성분이 색차 블록인 경우 예측 대상 블록 내 경계 샘플들에 대해 필터링을 적용하지 않을 수 있다.
한편, 예측 대상 블록의 인트라 예측 모드가 LM 모드(도 4에 도시된 ‘Intra_FromLuma’)인 경우, 본 발명의 일 실시예에 따르면 하단 샘플들 또는 우측 샘플들을 참조 샘플로 이용하거나, 하위 계층의 대응 블록의 샘플들을 이용하여 현재 계층의 예측 대상 블록에 대한 예측을 수행할 수 있다.
예를 들어, 현재 계층의 예측 대상 블록에 대한 색차 블록의 예측 시, 현재 계층의 참조 샘플들 또는 하위 계층의 대응 블록의 주변 샘플들을 이용하여 예측 파라미터를 구하고, 상기 예측 파라미터를 현재 계층의 휘도 블록 또는 하위 계층의 대응 블록에 대한 휘도 블록 및 색차 블록에 적용하여 예측을 수행할 수 있다. 이때 사용되는 하위 계층의 대응 블록 및 주변 블록은 업샘플링 과정을 거치기 전 블록일 수 있다.
또한, 본 발명에 따르면, 예측 대상 블록의 인트라 예측 시, 하위 계층의 대응 블록을 현재 계층의 예측 대상 블록의 예측된 예측 블록(예측 샘플들)으로 사용할 수 있다.
예를 들어, 도 9에 도시된 현재 계층의 예측 대상 블록(EE)에 대한 인트라 예측을 수행할 때, 하위 계층의 대응 블록(BE) 자체가 예측 대상 블록(EE)의 예측된 예측 블록일 수 있다. 여기서, 예측된 예측 샘플 값이 predSamples이고, 하위 계층의 대응 블록(BE)의 샘플 값이 pB이고, 블록의 가로 또는 세로의 크기가 nS라고 할 때, 예측 대상 블록(EE)의 예측 샘플 값은 다음 수학식 27과 같이 계산될 수 있다.
수학식 27
Figure PCTKR2013006144-appb-M000027
상기와 같이 하위 계층의 대응 블록(BE)의 샘플 값을 이용하여 예측된 예측 대상 블록(EE) 내 경계 샘플들(예측 대상 블록 내 가장 좌측에 위치하는 샘플들, 가장 우측에 위치하는 샘플들, 최상단에 위치하는 샘플들, 최하단에 위치하는 샘플들)에 대해 필터링을 적용할 수 있다. 예를 들어, 참조 샘플이 예측 대상 블록(EE)의 상단과 좌측에만 존재하는 경우, 상단과 좌측 참조 샘플과의 경계에 위치한 경계 샘플들(예측 대상 블록(EE) 내의 최상단 예측 샘플들, 가장 좌측 예측 샘플들)에 대하여 필터링을 적용할 수 있다. 또는, 참조 샘플이 예측 대상 블록(EE)의 상단, 좌측, 우측, 하단에 모두 존재하는 경우, 각 참조 샘플과의 경계에 위치한 경계 샘플들에 대하여 필터링을 적용할 수 있다.
이때, 경계 샘플들에 대한 필터링은 상술한 DC 모드로 예측 시 경계 샘플들에 대해 적용된 필터링 방법과 동일하게 적용될 수 있다.
본 발명의 실시예에 따라 현재 계층의 예측 대상 블록에 대한 인트라 예측 시 참조 샘플로 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 사용하는 경우, 해당 참조 샘플의 사용 여부를 지시하는 정보를 시그널링할 수 있다. 예를 들어, 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 참조 샘플로 사용하는지 여부를 지시하는 정보는 all_boundary_intra_pred_flag 플래그를 이용할 수 있다. 만일 all_boundary_intra_pred_flag가 1로 전송된 경우, 예측 대상 블록의 인트라 예측 시 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 참조 샘플로 사용함을 지시할 수 있다. 그렇지 않고 all_boundary_intra_pred_flag가 0으로 전송된 경우, 예측 대상 블록의 인트라 예측 시 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 참조 샘플로 사용하지 않음을 지시할 수 있다. 이 경우 기존의 통상적인 인트라 예측을 수행함을 의미할 수 있다.
우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 참조 샘플로 사용하는지 여부를 지시하는 정보(all_boundary_intra_pred_flag)는 SPS(sequence parameter set), PPS(picture parameter set), APS(adaptation parameter set), 슬라이스 헤더(Slice header) 등에 저장되어 전송될 수 있고, 또는 CU(coding unit), PU(prediction unit), TU(transform unit) 단위로 전송될 수 있다.
또한, 본 발명의 실시예에 따라 현재 계층의 예측 대상 블록에 대한 인트라 예측 시 참조 샘플로 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 사용하는지 여부는, 예측 대상 블록의 인트라 예측 모드, 블록 크기, 또는 색 성분에 따라 결정될 수 있다.
예를 들어, 특정 인트라 예측 모드의 경우에만 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 참조 샘플로 사용할 수 있고, 특정 크기 이상의 블록에 대해서만 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 참조 샘플로 사용할 수 있다. 또는, 색 성분이 휘도 블록인 경우 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 참조 샘플로 사용할 수 있고, 색 성분이 색차 블록인 경우 우측 샘플들, 하단 샘플들, 하단 우측 샘플 중 하나 이상의 샘플을 참조 샘플로 사용하지 않을 수 있다.
상술한 본 발명의 실시예에 따른 참조 샘플을 이용하여 예측 대상 블록에 대한 예측을 수행하는 방법이 복호화 장치에서 수행되는 것으로 설명하였으나, 이는 부호화 장치에서도 동일하게 적용될 수 있다.
도 15는 본 발명의 일 실시예에 따른 인트라 예측을 이용한 영상 부호화 방법을 개략적으로 나타내는 순서도이다. 도 15의 방법은 상술한 도 1의 부호화 장치에서 수행될 수 있다. 보다 구체적으로는 상술한 도 1의 인트라 예측부에서 수행될 수 있다.
도 15를 참조하면, 부호화 장치는 현재 계층(예컨대, 상위 계층 혹은 인핸스먼트 레이어)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정한다(S1500).
부호화 장치는, 현재 계층의 예측 대상 블록에 인접한 주변 블록, 예측 대상 블록에 대응하는 하위 계층(예컨대, 베이스 레이어)의 대응 블록, 하위 계층의 대응 블록에 인접한 주변 블록 및 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록으로부터 유도된 후보 모드를 이용하여 MPM 리스트를 생성할 수 있다.
상술한 바와 같이, 후보 모드는 상기 예측 대상 블록의 주변 블록, 대응 블록, 대응 블록의 주변 블록 및 임의의 특정 블록 중 적어도 하나의 블록의 인트라 예측 모드이거나 혹은 임의의 특정 인트라 예측 모드일 수 있다. MPM 리스트는 소정의 개수(예컨대, 2개, 3개, 4개 등)의 후보 모드를 포함할 수 있다. 후보 모드의 MPM 리스트 내 순서는 미리 정해진 우선 순위에 따라 결정될 수 있다. 예컨대, 예측 대상의 주변 블록, 대응 블록, 대응 블록의 주변 블록, 임의의 특정 블록 순으로 후보 모드를 유도하여 MPM 리스트에 추가할 수 있다. MPM 리스트를 도출하는 방법의 구체적인 실시예는 상술한 바 있으므로, 본 실시예에서는 설명을 생략하기로 한다.
부호화 장치는 MPM 리스트를 기반으로 예측 대상 블록의 인트라 예측 모드에 관한 정보를 도출할 수 있다. 인트라 예측 모드에 관한 정보는 MPM 플래그, MPM 인덱스, 잔여 모드에 관한 정보 중 적어도 하나일 수 있다. 이때, 부호화 장치는 도출된 MPM 플래그, MPM 인덱스, 잔여 모드에 관한 정보를 부호화하여 복호화 장치로 전송할 수 있다.
상술한 바와 같이, MPM 플래그는 MPM 리스트 내에 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는지 여부를 지시하는 정보이다. MPM 인덱스는 예측 대상 블록의 인트라 예측 모드가 MPM 리스트 내의 후보 모드들 중 어느 후보 모드와 동일한지를 지시하는 인덱스이다. 잔여 모드는 MPM 리스트 내의 후보 모드들을 제외한 인트라 예측 모드를 이용하여 유도된 예측 대상 블록의 예측 모드를 지시하는 정보이다.
부호화 장치는 도출된 MPM 리스트 내에 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는지 여부에 따라 MPM 플래그에 대한 정보를 유도하여 부호화할 수 있다. 예컨대, MPM 리스트 내에 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는 경우 MPM 플래그(prev_intra_luma_pred_flag) 값을 1로 설정할 수 있고, 그렇지 않은 경우 MPM 플래그(prev_intra_luma_pred_flag) 값을 0으로 설정할 수 있다.
MPM 리스트 내에 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는 경우(prev_intra_luma_pred_flag 값이 1인 경우), 부호화 장치는 MPM 인덱스(mpm_idx)에 대한 정보를 유도하여 부호화할 수 있다. 이때, MPM 인덱스는 MPM 리스트 내에서 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드에 대한 인덱스 값으로 부호화될 수 있다.
MPM 리스트 내에 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하지 않는 경우(prev_intra_luma_pred_flag 값이 0인 경우), 부호화 장치는 잔여 모드(rem_intra_luma_pred_mode)를 유도하여 부호화할 수 있다. 예컨대, 부호화 장치에서는 MPM 리스트 내의 후보 모드들을 제외한 나머지 인트라 예측 모드들을 모드 번호 순으로 재정렬하고, 재정렬된 예측 모드의 모드 번호를 기반으로 예측 대상 블록의 인트라 예측 모드를 잔여 모드로 유도할 수 있다.
부호화 장치는 예측 대상 블록의 예측을 위한 참조 샘플을 도출한다(S1510).
참조 샘플은 현재 계층의 예측 대상 블록에 인접한 주변 블록, 예측 대상 블록에 대응하는 하위 계층(예컨대, 베이스 레이어)의 대응 블록, 하위 계층의 대응 블록에 인접한 주변 블록 및 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플(들)로부터 유도될 수 있다. 참조 샘플을 도출하는 방법의 구체적인 실시예는 상술한 바 있으므로, 본 실시예에서는 설명을 생략하기로 한다.
부호화 장치는 인트라 예측 모드 및 참조 샘플을 기반으로 예측 대상 블록에 대한 인트라 예측을 수행함으로써, 예측 대상 블록의 예측 샘플들을 생성한다(S1520).
본 발명에 따른 인트라 예측 시에는 상단 또는 좌측 샘플들뿐만 아니라 우측 또는 하단 샘플들을 이용하여 예측을 수행함으로써, 예측 오차를 줄여서 예측 효율을 향상시킬 수 있다.
인트라 예측 모드 및 참조 샘플을 기반으로 예측 대상 블록에 대한 인트라 예측을 수행하는 방법의 구체적인 실시예는 상술한 바 있으므로, 본 실시예에서는 설명을 생략하기로 한다.
상술한 실시예들에서, 방법들은 일련의 단계 또는 블록으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호범위는 특허청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (33)

  1. 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하는 단계;
    상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하는 단계; 및
    상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 단계를 포함하며,
    상기 참조 샘플은, 상기 예측 대상 블록에 인접한 주변 블록, 상기 예측 대상 블록에 대응하는 하위 계층(base layer)의 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플로부터 도출되는 것을 특징으로 하는 영상 복호화 방법.
  2. 제1항에 있어서,
    상기 참조 샘플을 도출하는 단계는,
    상기 참조 샘플이 사용 가능한지(available) 여부를 결정하는 단계;
    상기 참조 샘플이 사용 가능하지 않은 참조 샘플인 경우, 상기 사용 가능하지 않은 참조 샘플을 사용 가능한 참조 샘플로 채우는(padding) 단계; 및
    상기 참조 샘플에 대해 필터링을 수행하는 단계를 포함하며,
    상기 사용 가능한 참조 샘플로 채우는 단계에서는,
    상기 사용 가능하지 않은 참조 샘플이 상기 예측 대상 블록에 인접한 주변 블록 중 적어도 하나의 블록 내 샘플인 경우, 상기 사용 가능하지 않은 참조 샘플은,
    상기 예측 대상 블록에 인접한 주변 블록 내 샘플, 상기 대응 블록 내에서 경계에 위치한 경계 샘플, 상기 대응 블록에 인접한 주변 블록 내 샘플, 및 상기 하위 계층의 임의의 특정 블록 내 샘플 중 적어도 하나의 사용 가능한 참조 샘플을 이용하여 채워지는 것을 특징으로 하는 영상 복호화 방법.
  3. 제2항에 있어서,
    상기 필터링을 수행하는 단계에서는,
    상기 예측 대상 블록의 인트라 예측 모드, 상기 예측 대상 블록의 크기, 상기 예측 대상 블록의 색 성분(color components) 및 상기 참조 샘플이 속한 계층 중 적어도 하나를 이용하여 상기 참조 샘플에 대한 필터링 수행 여부를 결정하는 것을 특징으로 하는 영상 복호화 방법.
  4. 제1항에 있어서,
    상기 인트라 예측 모드를 결정하는 단계는,
    상기 예측 대상 블록에 인접한 주변 블록, 상기 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록으로부터 유도된 후보 모드를 이용하여 상기 MPM 리스트를 도출하는 단계; 및
    상기 MPM 리스트 내 상기 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는지 여부를 지시하는 MPM 플래그를 기반으로 상기 예측 대상 블록의 인트라 예측 모드를 결정하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법.
  5. 제4항에 있어서,
    상기 예측 대상 블록의 인트라 예측 모드를 결정하는 단계에서는,
    상기 MPM 플래그가 상기 MPM 리스트 내 상기 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는 것으로 지시하는 경우, 상기 MPM 리스트 내 후보 모드 중 MPM 인덱스가 지시하는 후보 모드를 상기 예측 대상 블록의 인트라 예측 모드로 결정하며,
    상기 MPM 인덱스는, 상기 예측 대상 블록의 인트라 예측 모드가 상기 MPM 리스트 내의 후보 모드 중 어느 후보 모드와 동일한지를 지시하는 인덱스인 것을 특징으로 하는 영상 복호화 방법.
  6. 제4항에 있어서,
    상기 예측 대상 블록의 인트라 예측 모드를 결정하는 단계에서는,
    상기 MPM 플래그가 상기 MPM 리스트 내 상기 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하지 않는 것으로 지시하는 경우, 잔여 모드를 이용하여 상기 예측 대상 블록의 인트라 예측 모드를 결정하며,
    상기 잔여 모드는, 상기 MPM 리스트 내의 후보 모드를 제외한 나머지 인트라 예측 모드를 이용하여 유도된 상기 예측 대상 블록의 인트라 예측 모드를 지시하는 정보인 것을 특징으로 하는 영상 복호화 방법.
  7. 제4항에 있어서,
    상기 MPM 리스트는 소정의 개수의 후보 모드를 포함하며,
    상기 MPM 리스트를 도출하는 단계는,
    상기 예측 대상 블록에 인접한 주변 블록 중 상단 블록 및 좌측 블록으로부터 유도된 인트라 예측 모드를 상기 후보 모드로 결정하는 단계;
    상기 MPM 리스트가 상기 소정의 개수의 후보 모드를 포함하지 않는 경우, 상기 대응 블록의 인트라 예측 모드를 상기 후보 모드로 결정하는 단계;
    상기 MPM 리스트가 상기 소정의 개수의 후보 모드를 포함하지 않는 경우, 상기 대응 블록에 인접한 주변 블록 중 우측 블록 및 하단 블록으로부터 유도된 인트라 예측 모드를 상기 후보 모드로 결정하는 단계; 및
    상기 MPM 리스트가 상기 소정의 개수의 후보 모드를 포함하지 않는 경우, 상기 하위 계층의 임의의 특정 블록의 인트라 예측 모드를 상기 후보 모드로 결정하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법.
  8. 제1항에 있어서,
    상기 대응 블록 및 상기 대응 블록에 인접한 주변 블록은,
    상기 예측 대상 블록 및 상기 예측 대상 블록에 인접한 주변 블록의 크기에 맞게 스케일링된 블록인 것을 특징으로 하는 영상 복호화 방법.
  9. 제2항에 있어서,
    상기 참조 샘플이 사용 가능한지 여부를 결정하는 단계에서는,
    상기 참조 샘플을 포함하는 블록이 복호화되지 않은 블록이거나, 혹은 픽처(picture), 슬라이스(slice), 타일(tile), 엔트로피 슬라이스(entropy slice) 및 웨이브프론트(WPP: Wavefront parallel processing) 중 적어도 하나의 경계 밖에 존재하는 블록이거나, 혹은 CIP(constrained intra prediction)가 사용되는 환경에서 인터 예측된 블록인 경우, 상기 참조 샘플이 사용 가능하지 않은 것으로 결정하는 것을 특징으로 하는 영상 복호화 방법.
  10. 제2항에 있어서,
    상기 사용 가능하지 않은 참조 샘플을 사용 가능한 참조 샘플로 채우는(padding) 단계에서는,
    상기 사용 가능하지 않은 참조 샘플이 상기 예측 대상 블록에 인접한 주변 블록 중 하단 블록 내 샘플인 경우, 상기 하단 블록 내 샘플은,
    상기 예측 대상 블록에 인접한 주변 블록 중 하단 좌측 블록 내 하나의 샘플로 채워지거나, 혹은 상기 하단 좌측 블록 내 샘플과 일대일 대응하여 채워지거나, 혹은 상기 하단 블록 내 샘플과 대응하는 상기 하위 계층의 블록 내 샘플로 채워지거나, 혹은 상기 대응 블록 내 최하단에 위치한 경계 샘플로 채워지는 것을 특징으로 하는 영상 복호화 방법.
  11. 제2항에 있어서,
    상기 사용 가능하지 않은 참조 샘플을 사용 가능한 참조 샘플로 채우는(padding) 단계에서는,
    상기 사용 가능하지 않은 참조 샘플이 상기 예측 대상 블록에 인접한 주변 블록 중 우측 블록 내 샘플인 경우, 상기 우측 블록 내 샘플은,
    상기 우측 블록 내 샘플과 대응하는 상기 하위 계층의 블록 내 샘플로 채워지거나, 혹은 상기 대응 블록 내 가장 우측에 위치한 경계 샘플로 채워지는 것을 특징으로 하는 영상 복호화 방법.
  12. 제1항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 인트라 예측 모드에 따라 상기 예측 대상 블록의 우측에 인접한 우측 참조 샘플 및 상기 예측 대상 블록의 하단에 인접한 하단 참조 샘플을 이용하여 상기 예측 대상 블록에 대한 인트라 예측을 수행하는 것을 특징으로 하는 영상 복호화 방법.
  13. 제1항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 인트라 예측 모드에 따라, 상기 예측 대상 블록의 상단에 인접한 상단 참조 샘플과 좌측에 인접한 좌측 참조 샘플을 이용하여 도출된 상기 예측 대상 블록의 제1 예측 샘플 값과, 상기 예측 대상 블록의 우측에 인접한 우측 참조 샘플과 하단에 인접한 하단 참조 샘플을 이용하여 도출된 상기 예측 대상 블록의 제2 예측 샘플 값에 대한 가중합을 이용해 상기 예측 대상 블록의 최종 예측 샘플 값을 도출하는 것을 특징으로 하는 영상 복호화 방법.
  14. 제1항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 인트라 예측 모드가 수직 모드인 경우,
    상기 예측 대상 블록 내 가장 좌측에 위치한 경계 샘플 및 가장 우측에 위치한 경계 샘플에 대해, 상기 예측 대상 블록의 우측에 인접한 우측 참조 샘플과 좌측에 인접한 좌측 참조 샘플 간의 차이를 반영하여 인트라 예측을 수행하는 것을 특징으로 하는 영상 복호화 방법.
  15. 제1항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 인트라 예측 모드가 수평 모드인 경우,
    상기 예측 대상 블록 내 최상단에 위치한 경계 샘플 및 최하단에 위치한 경계 샘플에 대해, 상기 예측 대상 블록의 상단에 인접한 상단 참조 샘플과 하단에 인접한 하단 참조 샘플 간의 차이를 반영하여 인트라 예측을 수행하는 것을 특징으로 하는 영상 복호화 방법.
  16. 제1항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 대응 블록의 샘플 값을 상기 예측 대상 블록의 예측 샘플 값으로 도출하는 것을 특징으로 하는 영상 복호화 방법.
  17. 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하고, 상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하고, 상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 인트라 예측부를 포함하며,
    상기 참조 샘플은, 상기 예측 대상 블록에 인접한 주변 블록, 상기 예측 대상 블록에 대응하는 하위 계층(base layer)의 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플로부터 도출되는 것을 특징으로 하는 영상 복호화 장치.
  18. 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하는 단계;
    상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하는 단계; 및
    상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 단계를 포함하며,
    상기 참조 샘플은, 상기 예측 대상 블록에 인접한 주변 블록, 상기 예측 대상 블록에 대응하는 하위 계층(base layer)의 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플로부터 도출되는 것을 특징으로 하는 영상 부호화 방법.
  19. 제18항에 있어서,
    상기 참조 샘플을 도출하는 단계는,
    상기 참조 샘플이 사용 가능한지(available) 여부를 결정하는 단계;
    상기 참조 샘플이 사용 가능하지 않은 참조 샘플인 경우, 상기 사용 가능하지 않은 참조 샘플을 사용 가능한 참조 샘플로 채우는(padding) 단계; 및
    상기 참조 샘플에 대해 필터링을 수행하는 단계를 포함하며,
    상기 사용 가능한 참조 샘플로 채우는 단계에서는,
    상기 사용 가능하지 않은 참조 샘플이 상기 예측 대상 블록에 인접한 주변 블록 중 적어도 하나의 블록 내 샘플인 경우, 상기 사용 가능하지 않은 참조 샘플은,
    상기 예측 대상 블록에 인접한 주변 블록 내 샘플, 상기 대응 블록 내에서 경계에 위치한 경계 샘플, 상기 대응 블록에 인접한 주변 블록 내 샘플, 및 상기 하위 계층의 임의의 특정 블록 내 샘플 중 적어도 하나의 사용 가능한 참조 샘플을 이용하여 채워지는 것을 특징으로 하는 영상 부호화 방법.
  20. 제19항에 있어서,
    상기 필터링을 수행하는 단계에서는,
    상기 예측 대상 블록의 인트라 예측 모드, 상기 예측 대상 블록의 크기, 상기 예측 대상 블록의 색 성분(color components) 및 상기 참조 샘플이 속한 계층 중 적어도 하나를 이용하여 상기 참조 샘플에 대한 필터링 수행 여부를 결정하는 것을 특징으로 하는 영상 부호화 방법.
  21. 제18항에 있어서,
    상기 인트라 예측 모드를 결정하는 단계는,
    상기 예측 대상 블록에 인접한 주변 블록, 상기 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록으로부터 유도된 후보 모드를 이용하여 상기 MPM 리스트를 도출하는 단계; 및
    상기 MPM 리스트 내 상기 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는지 여부에 따라 MPM 플래그, MPM 인덱스 및 잔여 모드 중 적어도 하나를 유도하는 단계를 포함하며,
    상기 MPM 플래그는 상기 MPM 리스트 내 상기 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는지 여부를 지시하는 정보이고,
    상기 MPM 인덱스는 상기 예측 대상 블록의 인트라 예측 모드가 상기 MPM 리스트 내의 후보 모드 중 어느 후보 모드와 동일한지를 지시하는 인덱스이고,
    상기 잔여 모드는 상기 MPM 리스트 내의 후보 모드를 제외한 나머지 인트라 예측 모드를 이용하여 유도된 상기 예측 대상 블록의 인트라 예측 모드를 지시하는 정보인 것을 특징으로 하는 영상 부호화 방법.
  22. 제21항에 있어서,
    상기 MPM 플래그, MPM 인덱스 및 잔여 모드 중 적어도 하나를 유도하는 단계에서는,
    상기 MPM 리스트 내 상기 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는지 여부를 지시하는 상기 MPM 플래그를 유도하고,
    상기 MPM 리스트 내 상기 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하는 하는 경우, 상기 MPM 인덱스를 유도하고,
    상기 MPM 리스트 내 상기 예측 대상 블록의 인트라 예측 모드와 동일한 후보 모드가 존재하지 않는 경우, 상기 잔여 모드를 유도하는 것을 특징으로 하는 영상 부호화 방법.
  23. 제21항에 있어서,
    상기 MPM 리스트는 소정의 개수의 후보 모드를 포함하며,
    상기 MPM 리스트를 도출하는 단계는,
    상기 예측 대상 블록에 인접한 주변 블록 중 상단 블록 및 좌측 블록으로부터 유도된 인트라 예측 모드를 상기 후보 모드로 결정하는 단계;
    상기 MPM 리스트가 상기 소정의 개수의 후보 모드를 포함하지 않는 경우, 상기 대응 블록의 인트라 예측 모드를 상기 후보 모드로 결정하는 단계;
    상기 MPM 리스트가 상기 소정의 개수의 후보 모드를 포함하지 않는 경우, 상기 대응 블록에 인접한 주변 블록 중 우측 블록 및 하단 블록으로부터 유도된 인트라 예측 모드를 상기 후보 모드로 결정하는 단계; 및
    상기 MPM 리스트가 상기 소정의 개수의 후보 모드를 포함하지 않는 경우, 상기 하위 계층의 임의의 특정 블록의 인트라 예측 모드를 상기 후보 모드로 결정하는 단계를 포함하는 것을 특징으로 하는 영상 부호화 방법.
  24. 제18항에 있어서,
    상기 대응 블록 및 상기 대응 블록에 인접한 주변 블록은,
    상기 예측 대상 블록 및 상기 예측 대상 블록에 인접한 주변 블록의 크기에 맞게 스케일링된 블록인 것을 특징으로 하는 영상 부호화 방법.
  25. 제19항에 있어서,
    상기 참조 샘플이 사용 가능한지 여부를 결정하는 단계에서는,
    상기 참조 샘플을 포함하는 블록이 복호화되지 않은 블록이거나, 혹은 픽처(picture), 슬라이스(slice), 타일(tile), 엔트로피 슬라이스(entropy slice) 및 웨이브프론트(WPP: Wavefront parallel processing) 중 적어도 하나의 경계 밖에 존재하는 블록이거나, 혹은 CIP(constrained intra prediction)가 사용되는 환경에서 인터 예측된 블록인 경우, 상기 참조 샘플이 사용 가능하지 않은 것으로 결정하는 것을 특징으로 하는 영상 부호화 방법.
  26. 제19항에 있어서,
    상기 사용 가능하지 않은 참조 샘플을 사용 가능한 참조 샘플로 채우는(padding) 단계에서는,
    상기 사용 가능하지 않은 참조 샘플이 상기 예측 대상 블록에 인접한 주변 블록 중 하단 블록 내 샘플인 경우, 상기 하단 블록 내 샘플은,
    상기 예측 대상 블록에 인접한 주변 블록 중 하단 좌측 블록 내 하나의 샘플로 채워지거나, 혹은 상기 하단 좌측 블록 내 샘플과 일대일 대응하여 채워지거나, 혹은 상기 하단 블록 내 샘플과 대응하는 상기 하위 계층의 블록 내 샘플로 채워지거나, 혹은 상기 대응 블록 내 최하단에 위치한 경계 샘플로 채워지는 것을 특징으로 하는 영상 부호화 방법.
  27. 제19항에 있어서,
    상기 사용 가능하지 않은 참조 샘플을 사용 가능한 참조 샘플로 채우는(padding) 단계에서는,
    상기 사용 가능하지 않은 참조 샘플이 상기 예측 대상 블록에 인접한 주변 블록 중 우측 블록 내 샘플인 경우, 상기 우측 블록 내 샘플은,
    상기 우측 블록 내 샘플과 대응하는 상기 하위 계층의 블록 내 샘플로 채워지거나, 혹은 상기 대응 블록 내 가장 우측에 위치한 경계 샘플로 채워지는 것을 특징으로 하는 영상 부호화 방법.
  28. 제18항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 인트라 예측 모드에 따라 상기 예측 대상 블록의 우측에 인접한 우측 참조 샘플 및 상기 예측 대상 블록의 하단에 인접한 하단 참조 샘플을 이용하여 상기 예측 대상 블록에 대한 인트라 예측을 수행하는 것을 특징으로 하는 영상 부호화 방법.
  29. 제18항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 인트라 예측 모드에 따라, 상기 예측 대상 블록의 상단에 인접한 상단 참조 샘플과 좌측에 인접한 좌측 참조 샘플을 이용하여 도출된 상기 예측 대상 블록의 제1 예측 샘플 값과, 상기 예측 대상 블록의 우측에 인접한 우측 참조 샘플과 하단에 인접한 하단 참조 샘플을 이용하여 도출된 상기 예측 대상 블록의 제2 예측 샘플 값에 대한 가중합을 이용해 상기 예측 대상 블록의 최종 예측 샘플 값을 도출하는 것을 특징으로 하는 영상 부호화 방법.
  30. 제18항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 인트라 예측 모드가 수직 모드인 경우,
    상기 예측 대상 블록 내 가장 좌측에 위치한 경계 샘플 및 가장 우측에 위치한 경계 샘플에 대해, 상기 예측 대상 블록의 우측에 인접한 우측 참조 샘플과 좌측에 인접한 좌측 참조 샘플 간의 차이를 반영하여 인트라 예측을 수행하는 것을 특징으로 하는 영상 부호화 방법.
  31. 제18항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 인트라 예측 모드가 수평 모드인 경우,
    상기 예측 대상 블록 내 최상단에 위치한 경계 샘플 및 최하단에 위치한 경계 샘플에 대해, 상기 예측 대상 블록의 상단에 인접한 상단 참조 샘플과 하단에 인접한 하단 참조 샘플 간의 차이를 반영하여 인트라 예측을 수행하는 것을 특징으로 하는 영상 부호화 방법.
  32. 제18항에 있어서,
    상기 예측 대상 블록의 예측 샘플을 도출하는 단계에서는,
    상기 대응 블록의 샘플 값을 상기 예측 대상 블록의 예측 샘플 값으로 도출하는 것을 특징으로 하는 영상 부호화 방법.
  33. 상위 계층(enhancement layer)의 예측 대상 블록에 대한 MPM 리스트를 도출하여 인트라 예측 모드를 결정하고, 상기 예측 대상 블록의 예측을 위한 참조 샘플을 도출하고, 상기 인트라 예측 모드 및 상기 참조 샘플을 기반으로 상기 예측 대상 블록에 대한 인트라 예측을 수행하여 상기 예측 대상 블록의 예측 샘플을 도출하는 인트라 예측부를 포함하며,
    상기 참조 샘플은, 상기 예측 대상 블록에 인접한 주변 블록, 상기 예측 대상 블록에 대응하는 하위 계층(base layer)의 대응 블록, 상기 대응 블록에 인접한 주변 블록 및 상기 하위 계층의 임의의 특정 블록 중 적어도 하나의 블록 내 샘플로부터 도출되는 것을 특징으로 하는 영상 부호화 장치.
PCT/KR2013/006144 2012-07-10 2013-07-10 영상 부호화/복호화 방법 및 장치 WO2014010943A1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20120075257 2012-07-10
KR10-2012-0075257 2012-07-10
KR10-2013-0080797 2013-07-10
KR1020130080797A KR20140008503A (ko) 2012-07-10 2013-07-10 영상 부호화/복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
WO2014010943A1 true WO2014010943A1 (ko) 2014-01-16

Family

ID=49916310

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/006144 WO2014010943A1 (ko) 2012-07-10 2013-07-10 영상 부호화/복호화 방법 및 장치

Country Status (1)

Country Link
WO (1) WO2014010943A1 (ko)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018174657A1 (ko) * 2017-03-23 2018-09-27 엘지전자 주식회사 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치
WO2019009622A1 (ko) * 2017-07-04 2019-01-10 엘지전자 주식회사 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2019017694A1 (ko) * 2017-07-18 2019-01-24 엘지전자 주식회사 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2019022537A1 (ko) * 2017-07-26 2019-01-31 엘지전자 주식회사 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2019039806A1 (ko) * 2017-08-21 2019-02-28 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2019050292A1 (ko) * 2017-09-08 2019-03-14 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2019050291A1 (ko) * 2017-09-08 2019-03-14 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN110063056A (zh) * 2016-12-07 2019-07-26 株式会社Kt 用于处理视频信号的方法和设备
WO2019182292A1 (ko) * 2018-03-19 2019-09-26 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN110583017A (zh) * 2017-04-28 2019-12-17 韩国电子通信研究院 图像编码/解码方法和装置、以及存储比特流的记录介质
CN110651479A (zh) * 2017-05-17 2020-01-03 株式会社Kt 用于视频信号处理的方法和装置
CN111386707A (zh) * 2017-11-22 2020-07-07 韩国电子通信研究院 图像编码/解码方法和设备以及用于存储比特流的记录介质
CN112956199A (zh) * 2018-11-06 2021-06-11 北京字节跳动网络技术有限公司 帧内预测的简化参数推导
US11729405B2 (en) 2019-02-24 2023-08-15 Beijing Bytedance Network Technology Co., Ltd. Parameter derivation for intra prediction
US11902507B2 (en) 2018-12-01 2024-02-13 Beijing Bytedance Network Technology Co., Ltd Parameter derivation for intra prediction

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090037918A (ko) * 2006-07-11 2009-04-16 노키아 코포레이션 스케일러블 비디오 코딩
KR20090039689A (ko) * 2005-04-15 2009-04-22 엘지전자 주식회사 영상 신호의 스케일러블 인코딩 및 디코딩 방법
KR20090108077A (ko) * 2007-01-09 2009-10-14 퀄컴 인코포레이티드 스케일러블 비디오 코딩을 위한 적응 업샘플링
KR20110052203A (ko) * 2009-11-12 2011-05-18 전자부품연구원 스케일러블 영상 코딩 방법 및 장치
KR20120060921A (ko) * 2007-10-15 2012-06-12 콸콤 인코포레이티드 스케일 가능한 비트심도들을 위한 스케일 가능한 비디오 코딩 기법들

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090039689A (ko) * 2005-04-15 2009-04-22 엘지전자 주식회사 영상 신호의 스케일러블 인코딩 및 디코딩 방법
KR20090037918A (ko) * 2006-07-11 2009-04-16 노키아 코포레이션 스케일러블 비디오 코딩
KR20090108077A (ko) * 2007-01-09 2009-10-14 퀄컴 인코포레이티드 스케일러블 비디오 코딩을 위한 적응 업샘플링
KR20120060921A (ko) * 2007-10-15 2012-06-12 콸콤 인코포레이티드 스케일 가능한 비트심도들을 위한 스케일 가능한 비디오 코딩 기법들
KR20110052203A (ko) * 2009-11-12 2011-05-18 전자부품연구원 스케일러블 영상 코딩 방법 및 장치

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110063056A (zh) * 2016-12-07 2019-07-26 株式会社Kt 用于处理视频信号的方法和设备
US11716467B2 (en) 2016-12-07 2023-08-01 Kt Corporation Method and apparatus for processing video signal
US11736686B2 (en) 2016-12-07 2023-08-22 Kt Corporation Method and apparatus for processing video signal
CN110063056B (zh) * 2016-12-07 2023-09-12 株式会社Kt 用于处理视频信号的方法和设备
WO2018174657A1 (ko) * 2017-03-23 2018-09-27 엘지전자 주식회사 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치
CN110583017B (zh) * 2017-04-28 2023-10-31 英迪股份有限公司 图像编码/解码方法和装置、以及存储比特流的记录介质
US11943475B2 (en) 2017-04-28 2024-03-26 Intellectual Discovery Co., Ltd. Image encoding/decoding method and device, and recording medium storing bitstream
CN110583017A (zh) * 2017-04-28 2019-12-17 韩国电子通信研究院 图像编码/解码方法和装置、以及存储比特流的记录介质
CN110651479A (zh) * 2017-05-17 2020-01-03 株式会社Kt 用于视频信号处理的方法和装置
CN110651479B (zh) * 2017-05-17 2023-07-28 株式会社Kt 用于视频信号处理的方法和装置
US11706446B2 (en) 2017-05-17 2023-07-18 Kt Corporation Method and device for video signal processing
WO2019009622A1 (ko) * 2017-07-04 2019-01-10 엘지전자 주식회사 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2019017694A1 (ko) * 2017-07-18 2019-01-24 엘지전자 주식회사 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2019022537A1 (ko) * 2017-07-26 2019-01-31 엘지전자 주식회사 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
US11831910B2 (en) 2017-08-21 2023-11-28 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding video, and recording medium storing bit stream
WO2019039806A1 (ko) * 2017-08-21 2019-02-28 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11388395B2 (en) 2017-09-08 2022-07-12 Kt Corporation Method and device for processing video signal
US11700366B2 (en) 2017-09-08 2023-07-11 Kt Corporation Method and device for processing video signal
US11184606B2 (en) 2017-09-08 2021-11-23 Kt Corporation Method and device for processing video signal
US11089299B2 (en) 2017-09-08 2021-08-10 Kt Corporation Method and device for processing video signal
WO2019050292A1 (ko) * 2017-09-08 2019-03-14 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2019050291A1 (ko) * 2017-09-08 2019-03-14 주식회사 케이티 비디오 신호 처리 방법 및 장치
US11743455B2 (en) 2017-09-08 2023-08-29 Kt Corporation Method and device for processing video signal
CN110710215A (zh) * 2017-09-08 2020-01-17 株式会社Kt 视频信号处理方法及装置
CN111386707A (zh) * 2017-11-22 2020-07-07 韩国电子通信研究院 图像编码/解码方法和设备以及用于存储比特流的记录介质
WO2019182292A1 (ko) * 2018-03-19 2019-09-26 주식회사 케이티 비디오 신호 처리 방법 및 장치
US11483564B2 (en) 2018-03-19 2022-10-25 Kt Corporation Method and apparatus for video signal processing determining reference sample lines for a prediction target sample
CN112956199B (zh) * 2018-11-06 2023-07-28 北京字节跳动网络技术有限公司 帧内预测的简化参数推导
US11930185B2 (en) 2018-11-06 2024-03-12 Beijing Bytedance Network Technology Co., Ltd. Multi-parameters based intra prediction
CN112956199A (zh) * 2018-11-06 2021-06-11 北京字节跳动网络技术有限公司 帧内预测的简化参数推导
US11902507B2 (en) 2018-12-01 2024-02-13 Beijing Bytedance Network Technology Co., Ltd Parameter derivation for intra prediction
US11729405B2 (en) 2019-02-24 2023-08-15 Beijing Bytedance Network Technology Co., Ltd. Parameter derivation for intra prediction

Similar Documents

Publication Publication Date Title
WO2014010943A1 (ko) 영상 부호화/복호화 방법 및 장치
WO2021040481A1 (ko) 크로스 컴포넌트 필터링 기반 영상 코딩 장치 및 방법
WO2013062389A1 (ko) 비디오의 인트라 예측 방법 및 장치
WO2020213944A1 (ko) 영상 코딩에서 매트릭스 기반의 인트라 예측을 위한 변환
WO2020213946A1 (ko) 변환 인덱스를 이용하는 영상 코딩
WO2021040484A1 (ko) 크로스-컴포넌트 적응적 루프 필터링 기반 영상 코딩 장치 및 방법
WO2020204413A1 (ko) 복원 픽처를 수정하는 비디오 또는 영상 코딩
WO2020213945A1 (ko) 인트라 예측 기반 영상 코딩에서의 변환
WO2020180143A1 (ko) 루마 맵핑 및 크로마 스케일링 기반 비디오 또는 영상 코딩
WO2021040479A1 (ko) 필터링 기반 영상 코딩 장치 및 방법
WO2021101203A1 (ko) 필터링 기반 영상 코딩 장치 및 방법
WO2021040492A1 (ko) 비디오/영상 코딩 시스템에서 변환 계수 코딩 방법 및 장치
WO2020204419A1 (ko) 적응적 루프 필터 기반 비디오 또는 영상 코딩
WO2019235822A1 (ko) 어파인 움직임 예측을 이용하여 비디오 신호를 처리하는 방법 및 장치
WO2015056941A1 (ko) 다계층 기반의 영상 부호화/복호화 방법 및 장치
WO2021141226A1 (ko) 루마 성분 및 크로마 성분에 대한 bdpcm 기반 영상 디코딩 방법 및 그 장치
WO2021101201A1 (ko) 루프 필터링을 제어하는 영상 코딩 장치 및 방법
WO2019194463A1 (ko) 영상의 처리 방법 및 이를 위한 장치
WO2020017785A1 (ko) 영상 코딩 시스템에서 인트라 예측 관련 정보를 사용하는 영상 디코딩 방법 및 그 장치
WO2021101200A1 (ko) 루프 필터링을 제어하기 위한 영상 코딩 장치 및 방법
WO2021101205A1 (ko) 영상 코딩 장치 및 방법
WO2021141227A1 (ko) 영상 디코딩 방법 및 그 장치
WO2021040410A1 (ko) 레지듀얼 코딩에 대한 영상 디코딩 방법 및 그 장치
WO2020180122A1 (ko) 조건적으로 파싱되는 alf 모델 및 리셰이핑 모델 기반 비디오 또는 영상 코딩
WO2021040487A1 (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: 13817446

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

Country of ref document: EP

Kind code of ref document: A1