WO2014098368A1 - 계층적 영상 부/복호화 모드 결정 방법 및 이러한 방법을 사용하는 장치 - Google Patents
계층적 영상 부/복호화 모드 결정 방법 및 이러한 방법을 사용하는 장치 Download PDFInfo
- Publication number
- WO2014098368A1 WO2014098368A1 PCT/KR2013/009836 KR2013009836W WO2014098368A1 WO 2014098368 A1 WO2014098368 A1 WO 2014098368A1 KR 2013009836 W KR2013009836 W KR 2013009836W WO 2014098368 A1 WO2014098368 A1 WO 2014098368A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- prediction
- information
- base layer
- block
- unit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods 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 a method and apparatus for hierarchical video coding / decoding, and more particularly, to a method and apparatus for determining a hierarchical video coding / decoding mode.
- High efficiency image compression techniques can be used to solve these problems caused by high resolution and high quality image data.
- An inter-screen prediction technique for predicting pixel values included in the current picture from a picture before or after the current picture using an image compression technique an intra prediction technique for predicting pixel values included in a current picture using pixel information in the current picture
- a second object of the present invention is to provide an apparatus for performing a hierarchical image encoding and decoding method.
- the intra prediction method for achieving the first object of the present invention, determining whether the first image processing unit of the base layer performs the intra prediction, the first image When the processing unit performs intra prediction, a screen of the second image processing unit corresponding to the first image processing unit in the enhancement layer based on decoding base layer predictor information and based on the base layer predictor information. And performing my prediction, wherein the base layer predictor information indicates whether to use the reference pixel of the base layer as a reference pixel for performing the intra prediction on the second image processing unit. Information for determining whether to use a reference pixel.
- the intra prediction is performed by generating the intra prediction based on the reference pixel of the first image processing unit. And upsampling the predicted block in the screen.
- the reference layer obtains reference pixel information for performing intra-picture prediction for the second image processing unit in the enhancement layer. And performing intra prediction on the basis of the reference pixel information.
- the intra prediction method may further include determining whether the second image processing unit performs prediction by performing a base prediction mode.
- the first image processing unit and the second image processing unit may be one image processing unit among a coding block unit, a coding tree block (CTB) unit, a slice unit, and a picture unit.
- the base layer predictor information is flag information, and when the flag value is 1, the base layer predictor information uses the reference pixel of the base layer as a reference pixel for performing intra prediction on the second image processing unit. If the flag value is 0, the base layer predictor information may indicate that the reference pixel of the enhancement layer is used as a reference pixel for performing intra-picture prediction for the second image processing unit. have.
- an image decoding apparatus for performing intra prediction provides a base layer predictor when a first image processing unit of a base layer performs intra prediction.
- An entropy decoder that decodes the information, determines whether the first image processing unit of the base layer performs intra prediction, and based on the base layer predictor information, an entropy decoder that corresponds to the first image processing unit in the enhancement layer.
- the base layer predictor information may be a reference pixel for performing the intra prediction on the second image processing unit and may be a reference pixel of the base layer. It may be information for determining whether to use or to use the reference pixel of the enhancement layer.
- the prediction unit when the base layer predictor information indicates to use the reference pixel of the base layer as a reference pixel for performing intra-picture prediction with respect to the second image processing unit, It may be implemented to upsample a reference pixel and perform intra prediction based on the reference pixel of the upsampled first image processing unit.
- the prediction unit indicates that the base layer predictor information uses the reference pixel of the enhancement layer as a reference pixel for performing the intra prediction on the second image processing unit
- the second image in the enhancement layer It may be implemented to obtain reference pixel information for performing intra prediction on a processing unit and to perform intra prediction based on the reference pixel information.
- the prediction unit may be implemented to determine whether the second image processing unit performs prediction by performing a base prediction mode.
- the first image processing unit and the second image processing unit may be one image processing unit among a coding block unit, a coding tree block (CTB) unit, a slice unit, and a picture unit. .
- CTB coding tree block
- the base layer predictor information is flag information, and when the flag value is 1, the base layer predictor information uses the reference pixel of the base layer as a reference pixel for performing intra prediction on the second image processing unit. If the flag value is 0, the base layer predictor information may indicate that the reference pixel of the enhancement layer is used as a reference pixel for performing intra-picture prediction for the second image processing unit. have.
- various hierarchical video encoding / decoding methods are used to improve image information of the base layer as necessary. It can be used to perform encoding and decoding on an image of a layer. Therefore, the video encoding / decoding efficiency of the enhancement layer can be improved.
- FIG. 1 is a block diagram illustrating an encoding apparatus according to an embodiment of the present invention.
- FIG. 2 is a block diagram illustrating a decoder according to another embodiment of the present invention.
- FIG. 3 is a conceptual diagram illustrating a hierarchical video encoding method according to an embodiment of the present invention.
- FIG. 4 is a conceptual diagram illustrating a hierarchical video decoding method according to an embodiment of the present invention.
- FIG. 5 is a conceptual diagram illustrating a hierarchical image decoding method using an encoded block skip mode according to an embodiment of the present invention.
- FIG. 6 is a flowchart illustrating a hierarchical image decoding method using an encoded block skip mode according to an embodiment of the present invention.
- FIG. 7 is a conceptual diagram illustrating a hierarchical image decoding method using a slice skip mode according to an embodiment of the present invention.
- FIG. 8 is a flowchart illustrating a hierarchical image decoding method using a slice skip mode according to an embodiment of the present invention.
- FIG. 9 is a conceptual diagram illustrating a method for indicating a slice using a slice skip mode according to an embodiment of the present invention.
- FIG. 10 is a conceptual diagram illustrating a hierarchical image decoding method using a texture prediction mode according to an embodiment of the present invention.
- FIG. 11 is a flowchart illustrating a hierarchical image decoding method using a texture prediction mode according to an embodiment of the present invention.
- FIG. 12 is a conceptual diagram illustrating a method of performing a texture prediction mode on a slice basis according to an embodiment of the present invention.
- FIG. 13 is a flowchart illustrating a method of performing a texture prediction mode in units of slices according to an embodiment of the present invention.
- FIG. 14 is a conceptual diagram illustrating a hierarchical image decoding method using a base layer mode according to an embodiment of the present invention.
- 15 is a flowchart illustrating a hierarchical image decoding method using a base layer mode according to an embodiment of the present invention.
- 16 is a conceptual diagram illustrating a method of performing a base prediction mode on a slice basis according to an embodiment of the present invention.
- 17 is a flowchart illustrating a method of performing a base prediction mode on a slice basis according to an embodiment of the present invention.
- FIG. 18 is a conceptual diagram illustrating a hierarchical image decoding method using a coding block skip mode and a texture prediction mode according to an embodiment of the present invention.
- 19 is a conceptual diagram illustrating a hierarchical image decoding method using a skip mode, a texture prediction mode, and a base prediction mode according to an embodiment of the present invention.
- 20 is a flowchart illustrating a hierarchical image prediction method using a coding block skip mode, a texture prediction mode, and a base prediction mode according to an embodiment of the present invention.
- 21 is a flowchart illustrating a method of performing intra prediction when a base prediction mode is used in a coding block unit according to an embodiment of the present invention.
- 22 is a conceptual diagram illustrating a method of performing intra prediction of a prediction block on the basis of reference pixel information of a base layer according to an embodiment of the present invention.
- FIG. 23 is a flowchart illustrating a hierarchical video coding method for split information of a transform block according to an embodiment of the present invention.
- each of the components disclosed in the embodiments and the drawings of the present invention are disclosed in an independent configuration to represent different characteristic functions of the image encoding apparatus. This does not mean that each component is necessarily made up of separate hardware or one software component. In other words, each component is included in each component for convenience of description, and at least two of the components may be combined to form one component, or one component may be divided into a plurality of components to perform a function. The integrated and separated embodiments of the components are also included in the scope of the present invention, without departing from the spirit of the invention.
- some of the components disclosed in the present invention may not be essential components for performing essential functions in the present invention but may be optional components for improving performance.
- the present invention can be implemented including only the components essential for implementing the essentials of the present invention except for the components used for improving performance, and the structure including only the essential components except for the optional components used for improving performance. Also included within the scope of the present invention.
- FIG. 1 is a block diagram illustrating an encoding apparatus according to an embodiment of the present invention.
- the encoding apparatus includes a splitter 100, a predictor 110, an intra prediction unit 103, an inter prediction unit 106, a transform unit 115, a quantization unit 120, and a rearrangement.
- the unit 125 may include an entropy encoding unit 130, an inverse quantization unit 135, an inverse transform unit 140, a filter unit 145, and a memory 150.
- the encoding apparatus may be implemented by the image encoding method described in the following embodiments of the present invention, but operations in some components may not be performed to reduce the complexity of the encoder or for fast real time encoding.
- some limited number of methods are used without selecting the optimal intra intra coding method using all intra prediction modes in order to perform encoding in real time.
- a method of selecting one intra prediction mode among them as a final intra prediction mode using the intra prediction mode of the image may be used.
- the unit of a block processed in the encoding apparatus may be a coding block for encoding, a prediction block for performing prediction, and a transform block for performing transformation.
- a constant information unit including information used to encode or decode a coding block is a coding unit (CU)
- a constant information unit including information used to perform prediction on a prediction block is a prediction unit (PU).
- Prediction Unit Prediction Unit
- a unit including information used to perform a transformation in a transform block may be expressed in terms of a transform unit (TU).
- the current block used in the embodiment of the present invention may mean a block that is a target of prediction, transformation, or encoding.
- the current block When performing prediction, the current block may be a block that is the target of the current prediction.
- the current block When performing the transformation, the current block may be a transformation block that is the target of the current transformation.
- the current block When encoding or decoding is performed, the current block may be an encoding block to be encoded or decoded. That is, the unit of the current block may vary according to the image processing performed.
- the dividing unit 100 divides one picture into a combination of a plurality of coding blocks, a prediction block, and a transform block, and divides a picture of one of the coding blocks, the prediction block, and the transform block according to a predetermined criterion (for example, a cost function).
- a picture may be divided by selecting a division combination.
- a recursive tree structure such as a quadtree structure may be used.
- the meaning of the coding block may be used not only as a block for encoding but also as a block for decoding.
- the prediction block may be a block for performing intra prediction or inter prediction.
- the block for performing intra prediction may have a square shape such as 2Nx2N or NxN, or a rectangular block shape using SDIP (Short Distance Intra Prediction).
- Predictive block segmentation is performed by using 2NxN, Nx2N, or asymmetric symmetric motion partitioning (AMP).
- AMP symmetric symmetric motion partitioning
- the transform unit 115 may change a method of performing the transform.
- the prediction unit 110 may include an intra prediction unit 103 that performs intra prediction and an inter prediction unit 106 which performs inter prediction.
- the prediction unit 110 may determine whether to use inter prediction or intra prediction on the prediction block.
- the processing unit in which the prediction is performed may differ from the processing unit in which the prediction method and the details are determined.
- a prediction mode may be determined in units of prediction blocks, and the process of performing prediction may be performed based on transform blocks.
- the residual value (residual block) between the generated predicted block (or predicted sample) and the original block (or original sample) may be input to the converter 115.
- prediction mode information and motion vector information used for prediction may be encoded by the entropy encoder 130 along with the residual value and transmitted to the decoder.
- the original block may be encoded as it is and transmitted to the decoder without performing prediction through the prediction unit 110.
- PCM Pulse Coded Modulation
- the intra prediction unit 103 may generate a predicted block based on reference pixels existing around the current block (prediction block).
- prediction is performed using a plurality of intra prediction modes for the current block, and one of the intra prediction modes is used as an intra prediction mode for predicting the current block.
- a prediction mode may have a directional prediction mode using reference pixel information according to a prediction direction, and a non-directional mode using no directional information when performing prediction.
- the modes for predicting the luminance information and the intra prediction modes for predicting the color difference information may be different, and in order to predict the color difference information, the intra prediction mode information or the predicted luminance signal information for predicting the luminance information may be utilized. Can be.
- a block located in the vicinity used to calculate an intra prediction mode of the current block is defined as a neighboring block.
- the neighboring block includes the neighboring block A including the pixel value located at (x-1, y) and the pixel value located at (x, y-1) when the coordinate of the upper left pixel of the current block is (x, y).
- the second neighboring block may be referred to as a neighboring block.
- Intra-prediction mode information of the current block may be encoded from intra-prediction mode information of neighboring blocks of the current block. That is, the intra prediction mode of the current block may be predicted from the intra prediction mode of the prediction block existing around the current block.
- the flag information may be used to indicate that the prediction modes of the current block and the neighboring block are the same. If prediction modes of the current block and neighboring blocks are different, entropy encoding may be performed to encode intra prediction mode information of the current block.
- the intra prediction mode of the current prediction block may be predicted by setting a preset intra prediction mode value as a candidate intra prediction mode value.
- the intra prediction unit 103 may generate the predicted block or the predicted sample based on the reference pixel information around the current block which is the pixel information in the current picture.
- a block or sample generated by referring to pixels around the current block may be expressed as a predicted block or a predicted sample.
- the intra prediction block for the prediction block is based on the pixels on the left of the prediction block, the pixels on the upper left, and the pixels on the top. You can make predictions.
- the intra prediction is performed by using the pixel on the left side, the pixel on the upper left side, and the pixel on the top side. Can be.
- intra prediction using NxN division may be used only for the minimum coding block.
- the intra prediction method may generate a predicted block (or may be represented as a predicted sample) after applying an adaptive intra smoothing (AIS) filter to a reference pixel according to a prediction mode.
- AIS adaptive intra smoothing
- the type of AIS filter applied to the reference pixel may be different.
- additional filtering may be performed on the reference pixel and some pixels present in the predicted block. Filtering for the reference pixel and some pixels present in the predicted block may use filtering using different filtering coefficients depending on the direction of the intra prediction mode.
- the inter prediction unit 106 may generate a prediction block (eg, a predicted block or a predicted sample) based on information of at least one picture of a previous picture or a subsequent picture of the current picture.
- the inter prediction unit 106 may include a reference picture interpolator, a motion predictor, and a motion compensator.
- the reference picture interpolator may receive reference picture information from the memory 150 and generate pixel information of an integer pixel or less in the reference picture.
- a DCT based 8-tap interpolation filter having different filter coefficients may be used to generate pixel information of integer pixels or less in units of 1/4 pixels.
- a DCT-based interpolation filter having different filter coefficients may be used to generate pixel information of an integer pixel or less in units of 1/8 pixels.
- the inter prediction unit 106 may perform motion prediction based on the reference picture interpolated by the reference picture interpolation unit.
- various methods such as a full search-based block matching algorithm (FBMA), a three step search (TSS), and a new three-step search algorithm (NTS) may be used.
- the motion vector may have a motion vector value in units of 1/2 or 1/4 pixels based on the interpolated pixels.
- the inter prediction unit 106 may predict the current prediction block by using a different motion prediction method.
- various methods such as a skip method, a merge method, and an advanced motion vector prediction (AMVP) method may be used.
- AMVP advanced motion vector prediction
- different prediction operations may be performed depending on whether the prediction unit 110 is included in a base layer or an enhanced layer.
- the prediction unit 110 When the prediction unit 110 is included in the base layer, it may operate in the same manner as in the above-described embodiment.
- the prediction unit 110 when the prediction unit 110 is included in the enhancement layer, the prediction unit does not perform inter prediction or intra prediction according to the hierarchical image coding mode, or the image prediction related information generated by the prediction unit of the base layer ( For example, an intra prediction mode, motion prediction related information, etc.) may be received and prediction may be performed based on the corresponding information. Specific examples will be further described in detail.
- the prediction block 110 may generate a residual block including residual information that is a difference between the predicted block or the predicted sample and the original block or the original sample.
- the generated residual block may be input to the converter 115.
- the transform unit 115 may transform the residual block using a transform method such as a discrete cosine transform (DCT) or a discrete sine transform (DST). Whether to apply DCT or DST to transform the residual block may be determined based on intra prediction mode information of the prediction block corresponding to the residual block and / or size information of the prediction block. That is, the transform unit may use a transform method differently according to the size of the prediction block.
- DCT discrete cosine transform
- DST discrete sine transform
- the quantization unit 120 may quantize the values converted by the transformer 115 into the frequency domain.
- the quantization coefficient may change depending on the block or the importance of the image.
- the value calculated by the quantization unit 120 may be provided to the inverse quantization unit 135 and the reordering unit 125.
- the reordering unit 125 may reorder coefficient values with respect to the quantized residual value.
- the reordering unit 125 may convert the two-dimensional block shape coefficients into a one-dimensional vector form through a coefficient scanning method. You can change it.
- the reordering unit 125 may scan from a DC coefficient to a coefficient of a high frequency region by using a Zig-Zag Scan method and change it into a one-dimensional vector.
- a vertical scan method for scanning two-dimensional block shape coefficients in a column direction, not a zig-zag scan method, and a horizontal scan method for scanning two-dimensional block shape factors in a row direction Can be used. That is, according to the size of the transform block and the intra prediction mode, it is possible to determine which scan method among zigzag-scan, vertical scan and horizontal scan is used.
- the entropy encoder 130 may perform entropy encoding based on the values calculated by the reordering unit 125. Entropy encoding may use various encoding methods such as, for example, Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC).
- Entropy encoding may use various encoding methods such as, for example, Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC).
- the entropy encoding unit 130 receives residual coefficient coefficient information, block type information, prediction mode information, partition block information, prediction block information, transform block information, and motion vector information of the coding block from the reordering unit 125 and the prediction unit 110. By receiving various information such as reference frame information, interpolation information of a block, and filtering information, entropy encoding may be performed based on a predetermined encoding method. In addition, the entropy encoder 130 may entropy encode information on a coding unit input from the reordering unit 125.
- the inverse quantizer 135 and the inverse transformer 140 inverse quantize the quantized values in the quantizer 120 and inversely transform the transformed values in the transformer 115.
- the residual value generated by the inverse quantizer 135 and the inverse transformer 140 is reconstructed by being combined with a block predicted by the motion estimator, the motion compensator, and the intra predictor included in the predictor 110. Block) can be created.
- the filter unit 145 may include at least one of a deblocking filter, an offset correction unit, and an adaptive loop filter (ALF).
- ALF adaptive loop filter
- the deblocking filter may remove block distortion caused by boundaries between blocks in the reconstructed picture.
- it may be determined whether to apply a deblocking filter to the current block based on the pixels included in several columns or rows included in the block.
- a strong filter or a weak filter may be applied according to the required deblocking filtering strength.
- horizontal filtering and vertical filtering may be performed in parallel when vertical filtering and horizontal filtering are performed.
- the offset correction unit may correct the offset with respect to the original image on a pixel-by-pixel basis for the deblocking image.
- the pixels included in the image are divided into a predetermined number of areas, and then, an area to be offset is determined, an offset is applied to the corresponding area, or offset considering the edge information of each pixel. You can use this method.
- the adaptive loop filter may perform filtering based on a value obtained by comparing the filtered reconstructed image with the original image. After dividing the pixels included in the image into at least one group, one filter to be applied to the group may be determined and filtering may be performed for each group. For information on whether to apply the ALF, the luminance signal may be transmitted for each coding unit (CU), and the size and coefficient of the ALF to be applied may vary according to each block.
- the ALF may have various forms, and the number of coefficients included in the filter may also vary.
- Such filtering related information (filter coefficient information, ALF On / Off information, filter type information) of the ALF may be included in the parameter set in the form of a bitstream and transmitted.
- the memory 150 may store the reconstructed block or picture calculated by the filter unit 145, and the stored reconstructed block or picture may be provided to the predictor 110 when performing inter prediction.
- FIG. 2 is a block diagram illustrating a decoder according to another embodiment of the present invention.
- the decoder includes an entropy decoder 210, a reordering unit 215, an inverse quantizer 220, an inverse transform unit 225, a predictor 230, a filter unit 235, and a memory 240. May be included.
- the input bitstream may be decoded by a procedure opposite to that of the encoder.
- the entropy decoder 210 may perform entropy decoding by a procedure opposite to that of the entropy encoder in the encoder.
- Information for generating a predicted block (or predicted sample) among the information decoded by the entropy decoder 210 is provided to the predictor 230, and the residual value obtained by entropy decoding by the entropy decoder is the reordering unit 215. ) Can be entered.
- the entropy decoder 210 may decode information related to intra prediction and inter prediction performed by the encoder. As described above, when there are constraints in performing intra-picture prediction and inter-screen prediction in the encoder, for example, when neighboring prediction modes are not available, entropy decoding based on these constraints is performed to perform a screen on the current block. Information related to intra prediction and inter screen prediction may be provided.
- the reordering unit 215 may reorder the entropy decoded bitstream in the entropy decoding unit 210 based on a method of rearranging the bitstream. Coefficients expressed in the form of a one-dimensional vector may be reconstructed by reconstructing the coefficients in a two-dimensional block form.
- the reordering unit may be realigned by receiving information related to coefficient scanning performed by the encoder and performing reverse scanning based on the scanning order performed by the encoder.
- the inverse quantization unit 220 may perform inverse quantization based on the quantization parameter provided by the encoder and the coefficient values of the rearranged block.
- the inverse transformer 225 may perform inverse DCT and inverse DST on the DCT and DST performed by the transformer with respect to the quantization result performed by the encoder.
- the inverse transform may be performed based on the transform unit determined by the encoder.
- the DCT and the DST may be selectively performed according to a plurality of pieces of information such as a prediction method, a size and a prediction direction of the current block, and the inverse transformer 225 of the decoder may perform transform information performed by the encoder of the encoder. Inverse transformation may be performed based on.
- the predictor 230 predicts a block (or prediction) based on the predicted block (or predicted sample) generation related information provided by the entropy decoder 210 and previously decoded block or picture information provided by the memory 240. Samples) can be generated.
- the pixels present on the left side of the prediction block, the pixels present on the upper left side, and present on the upper side are performed.
- Intra-prediction of the prediction block is performed on the basis of the pixel, but when the prediction block is different from the size of the transform block when the intra-prediction is performed, the intra-prediction is performed using the reference pixel based on the transform block. Can be performed.
- intra prediction using NxN division may be used only for a coding block having a minimum size.
- the prediction unit 230 may include a prediction block determiner, an inter prediction unit, and an intra prediction unit.
- the prediction block discriminator receives various information such as prediction block information input from the entropy decoder, prediction mode information of the intra prediction method, and motion prediction related information of the inter prediction method, and distinguishes the prediction block from the coding block. Whether to perform inter prediction or intra prediction can be determined.
- the inter prediction unit may perform inter prediction on the current prediction block based on information included in at least one of a previous picture or a subsequent picture of the current picture including the current prediction block using information provided by the encoder.
- Whether the motion prediction method of the prediction block included in the coding block is skip mode, merge mode, or AMVP mode to perform inter prediction. Can be determined.
- the intra prediction unit may generate a predicted block (or may be expressed as a predicted sample) based on the pixel information in the current picture.
- the intra prediction may be performed based on intra prediction mode information of the prediction block provided by the encoder.
- the intra prediction unit may include an AIS filter, a reference pixel interpolator, and a DC filter.
- the AIS filter is a part of filtering the reference pixel of the current block, and may determine and apply the filter according to the prediction mode of the current prediction block.
- AIS filtering may be performed on reference pixels of the current block by using the prediction mode and the AIS filter information of the prediction block provided by the encoder. If the prediction mode of the current block is a mode that does not perform AIS filtering, the AIS filter may not be applied.
- the encoder may similarly perform filtering along with the reference pixel after generating the prediction block.
- the reference pixel interpolator may generate reference pixels having an integer value or less by interpolating the reference pixels. If the prediction mode of the current block is the prediction mode for generating the prediction block without interpolating the reference pixel, the reference pixel may not be interpolated.
- the DC filter may generate a predicted block (or expressed as a predicted sample) through filtering when the prediction mode of the current block is the DC mode.
- the prediction unit 230 may perform different prediction operations depending on whether the prediction unit 230 is included in the base layer or the enhanced layer.
- the prediction unit 230 may operate in the same manner as in the above-described embodiment.
- the prediction unit does not perform inter prediction or intra prediction according to the hierarchical image decoding mode, or the image prediction related information generated by the prediction unit of the base layer ( For example, an intra prediction mode, motion prediction related information, etc.) may be received and prediction may be performed based on the corresponding information. Specific examples will be further described in detail.
- the reconstructed block or picture may be provided to the filter unit 235.
- the filter unit 235 may include a deblocking filter, an offset correction unit, and an ALF.
- the deblocking filter of the decoder may receive the deblocking filter related information provided by the encoder and perform the deblocking filtering on the corresponding block in the decoder. As in the encoder, first, vertical deblocking filtering and horizontal deblocking filtering are performed, but in the overlapping portion, at least one of vertical deblocking and horizontal deblocking may be performed. Vertical deblocking filtering or horizontal deblocking filtering, which has not been previously performed, may be performed at a portion where vertical deblocking filtering and horizontal deblocking filtering overlap. Through this deblocking filtering process, parallel processing of deblocking filtering is possible.
- the offset correction unit may perform offset correction on the reconstructed image based on the type of offset correction and offset value information applied to the image during encoding.
- the ALF may perform filtering based on a value obtained by comparing the restored image with the original image after performing the filtering.
- the ALF may be applied to the coding block based on the ALF application information, the ALF coefficient information, and the like provided from the encoder. Such ALF information may be provided included in a specific parameter set.
- the memory 240 may store the reconstructed picture or block to use as a reference picture or reference block, and may provide the reconstructed picture to the output unit.
- the hierarchical video coding method is a method of predicting image information of an enhancement layer based on image information in a base layer.
- this hierarchical video coding method will be described.
- FIG. 3 is a conceptual diagram illustrating a hierarchical video encoding method according to an embodiment of the present invention.
- an image may be encoded through a base layer 300 and an enhancement layer 350.
- the image prediction information generated in the base layer 300 according to the hierarchical image encoding method may be used to perform the image encoding of the enhancement layer 350.
- the image prediction information may be information generated by upsampling pixels of the base layer, intra prediction mode information used to predict a block in the base layer, and motion prediction related information.
- the base layer 300 includes a mode determiner 305, a predictor 310, a transform and quantizer (T / Q, 325), an inverse transform and inverse quantizer (IT / IQ, 330), and an entropy encoder 335.
- the restoring unit 315 may include a filter unit 320. Operation for each part is similar to that described in FIG. 1, and the mode determiner 305 is a component that determines whether to use an intra prediction method or an inter prediction method as an image encoding method.
- pixel information of blocks generated in the base layer may be upsampled and used in the enhancement layer.
- the pixel information of the block of the base layer 300 is upsampled by the upsampling unit 340 and subjected to additional inter-layer filtering units IL-ALF, IL-SAO, 345, and 347. Later it may be entered into the enhancement layer 350. Interpolation may be performed to perform upsampling.
- the filter information obtained from the filtering units 345 and 347 is entropy coded through the filter coefficient encoder 380 and input to the multiplexer 385.
- intra prediction mode information or motion prediction related information used for block prediction in the base layer may be transmitted to the enhancement layer, and such prediction related information may be used in the enhancement layer.
- the inter-layer video encoding method may use various methods, and the method of receiving image prediction information from the base layer and performing prediction in the enhancement layer may be referred to as inter layer prediction.
- the enhancement layer may perform the image prediction and encoding process using only the information of the enhancement layer without receiving the image prediction information from the base layer.
- the enhancement layer 350 is also the same as the base layer 300, such as the mode determiner 355, the predictor 360, the transform and quantization unit (T / Q, 375), the inverse transform and inverse quantization unit (IT / IQ, 380). ), An entropy encoder 385, a reconstructor 365, and a filter 370.
- the operation of each component may have the same configuration as described in FIG. 1.
- the mode determiner 355 of the enhancement layer 350 is one of various image encoding methods, such as an image prediction method using image information in the enhancement layer 350 or an inter layer prediction method using image prediction information of a base layer. It can be used as a component for selecting one prediction method.
- the mode determiner 355 of the enhancement layer may select an image prediction method to be performed by the image encoder.
- the information, the base layer information, and the enhancement layer information generated by the upsampling and inter-layer filtering units 340, 345, and 347 are multiplexed by the multiplexing unit 385 to be generated as a scalable bitstream.
- the image decoder may be transmitted.
- FIG. 4 is a conceptual diagram illustrating a hierarchical video decoding method according to an embodiment of the present invention.
- image information may be transmitted through a scalable bitstream generated from an image encoder.
- the hierarchical bitstream is demultiplexed by the demultiplexing unit 405 so that the entropy decoding unit 410 of the base layer 400, the entropy decoding unit 455 of the enhancement layer 450, and the filter coefficient entropy decoding unit 485 are demultiplexed. ) Can be entered.
- the mode determiner 420 may determine whether to perform inter prediction or intra prediction.
- the prediction unit 425 may perform prediction based on the prediction mode information output from the mode determiner 420.
- the inverse quantizer and the inverse transformer 415 may generate residual information by inversely transforming and inverse quantizing the residual information generated by the entropy decoder 410. That is, image decoding may be performed in the same manner as the image decoding step of FIG. 2.
- the information generated after the image decoding process is completed in the base layer 400 may be upsampled if the enhancement layer 450 performs decoding using information that upsamples the pixels included in the block of the base layer 400. It may be sent to the unit 440. The upsampled information may be transmitted to the enhancement layer 450 through the interlayer filtering units 445 and 447.
- the mode determining unit 465 of the enhancement layer 450 may use any image encoding method or image prediction method in the image encoding step. It may be determined whether encoding is performed using.
- the mode determiner 465 of the enhancement layer 450 may perform image decoding by using the same prediction method as the image prediction method used when encoding is performed in the enhancement layer of the image encoder.
- a method of performing image prediction with reference to information of the base layer 400 may be large, or a method of performing image prediction without using information of the base layer 400.
- the enhancement layer 450 does not receive image related information from the base layer 400.
- the base prediction mode in the hierarchical image decoding method may refer to a mode using image prediction information used to predict a block of a base layer to predict a block of an enhancement layer.
- the image prediction information may be, for example, an intra prediction mode or motion prediction related information used in a block of the base layer.
- FIG. 5 is a conceptual diagram illustrating a hierarchical image decoding method using an encoded block skip mode according to an embodiment of the present invention.
- FIG. 5 discloses an image prediction method using a coding block skip mode among hierarchical image decoding methods.
- the coding block skip mode includes upsampling image information existing in the coding block unit 500 of the base layer to improve image information existing in the coding block unit 520 of the upsampled base layer. A method of using the reconstructed image information on the unit 540.
- the image information may be a luminance pixel value or a chrominance pixel value as pixel information.
- the enhancement layer may additionally generate a reconstruction block through filtering on the upsampled image information.
- DCT-IF discrete cosine transform-interpolation filtering
- various filters can be used.
- 8-tap DCT-IF can be applied to the luminance sample and 4-tap DCT-IF can be applied to the chrominance sample.
- Information upsampled from the image information of the coding block unit 500 of the base layer may be directly used as a reconstruction block of the coding block unit 540 of the enhancement layer.
- the correspondence between the image unit of the base layer and the image unit of the enhancement layer may mean that the relative position of the image unit in the picture of each layer is the same, or that the image unit is referred to between layers when performing inter-layer prediction. May have
- a block of a base layer corresponding to a block of an enhancement layer is referred to as a 'corresponding block of a base layer', 'block corresponding to a base layer', To be used in the same sense.
- the corresponding unit in the base layer may be a unit such as a coding tree block (CTB), a slice, a picture, etc., not a block unit.
- CTB coding tree block
- a syntax element indicating that the coding block uses the coding block skip mode may be newly defined. For example, when the coded block skip mode is performed on a coded block basis, a syntax element indicating that a specific coded block performs the coded block skip mode may be included in the header information of the bitstream for transmitting the block information. .
- a syntax element indicating a coding block skip mode may exist in a coding unit header in a bitstream, and the name of such syntax element is defined as a coding block skip flag (CB_skip_flag). Can be used.
- Names of various syntax elements and syntax element definitions used in embodiments of the present invention may be used as other syntax element names to express the same syntax element as an example. It is also possible that the functionality of the same syntax element is included in other syntax elements to perform the same role.
- CB_skip_flag When decoding the coded block skip flag (CB_skip_flag) for the coded block unit determines that the coded block unit performs the coded block skip mode (for example, ON or '1'), a syntax for decoding the current coded block. Syntax elements related to an element and / or units below the current coding block (eg, prediction block, transform block) may not be explicitly transmitted in a bit-stream. have. In this case, if necessary, the image decoder may infer some syntax element values to perform a decoding process.
- FIG. 6 is a flowchart illustrating a hierarchical image decoding method using an encoded block skip mode according to an embodiment of the present invention.
- FIG. 6 a method of determining whether to apply a prediction method using a coded block skip mode to a coded block unit of an enhancement layer based on a coded block skip flag is described.
- the value of the coding block skip flag CB_skip_flag is determined (step S600).
- Information on whether a coding block skip mode is applied to a coding block unit may be obtained based on the information about the decoded coding block skip flag. For example, when the value of the coded block skip flag is' 1 ', that is,' ON ', it indicates that the coded block skip mode is applied to the coded block unit and the value of the coded block skip flag is' 0', that is, ' If it is not ON, the coding block unit may indicate that the coding block skip mode is not performed.
- Image information in units of coding blocks is restored using the coding block skip mode (step S610).
- the coding block skip flag has a value of '1' and the coding block unit performs decoding by using the coding block skip mode, uplinking the image information of the corresponding coding block unit of the base layer to restore the coding block unit of the enhancement layer.
- Various methods may be used as the upsampling method.
- the reconstructed block may be generated by additionally filtering the upsampled image information in order to reduce a step with neighboring blocks.
- image information in the coding block unit is predicted using another image prediction method (step S620).
- an image prediction method for a coding block unit a method of decoding using only image information of an enhancement layer may be used.
- various inter-layer image prediction methods in an enhancement layer which will be described later, may be used, and such embodiments are also included in the scope of the present invention.
- FIG. 7 is a conceptual diagram illustrating a hierarchical image decoding method using a slice skip mode according to an embodiment of the present invention.
- FIG. 7 discloses an image prediction method using an inter-layer skip mode applied to a unit other than a coding block.
- a slice skip mode for performing an inter-layer skip mode in a slice unit will be described.
- the inter-layer skip mode may be applied to coding tree block (CTB) units and picture units other than slice units, and in this case, various terms such as CTB skip mode and picture skip mode may be used to specify the inter-layer skip mode. Can be.
- CTB coding tree block
- the CTB may have a square shape having an N ⁇ N size as a basic unit for dividing a slice.
- the coding block may be generated by dividing the CTB into a quadtree structure as a root.
- a set of a plurality of CTBs gathered on a predetermined basis may be referred to as a slice, and the slices may be gathered to generate one picture.
- image information of the slice unit 700 of the base layer corresponding to the enhancement layer is upsampled.
- the image information of the slice unit 740 of the enhancement layer may be reconstructed by upsampling the image information of the slice unit 700 existing in the region of the base layer.
- the slice information 720 of the slice unit 720 which upsamples the image information of the corresponding slice unit 700 in the base layer is restored to the slice unit 740 of the enhancement layer in the same manner as the above-described coded block skip mode. It can be used as video information.
- the enhancement layer does not need to perform an image prediction process and an additional decoding process on all CTBs included in the slice. That is, the image information 720 of the slice unit 720 which upsamples the image information of the corresponding slice unit 700 of the base layer may be the image information 740 reconstructed in the enhancement layer.
- the enhancement layer may perform filtering on the reconstructed image information included in the slice unit 740.
- a syntax element indicating that the slice unit 740 of the enhancement layer uses the slice skip mode may be newly defined and used. For example, a flag may be defined as to whether a specific slice is a slice that performs prediction using a slice skip mode. Such flag information may be included in a slice header and transmitted, or may be defined and transmitted as NAL type information in a network abstraction layer (NAL) unit, which is a data unit including a slice.
- NAL network abstraction layer
- FIG. 8 is a flowchart illustrating a hierarchical image decoding method using a slice skip mode according to an embodiment of the present invention.
- step S800 it is determined whether the slice skip mode is used in the slice unit.
- the decoding apparatus may decode information for determining whether prediction using the slice skip mode is performed in a specific slice unit in a unit such as a slice unit or a NAL unit.
- the slice skip flag slice_skip_flag which is flag information defined in the slice unit, may be used to determine whether the slice skip mode is used and decoded in the slice unit.
- the NAL unit information on whether prediction using the slice skip mode is performed on the slice included in the NAL unit may be indicated by using the NAL type information.
- the decoding apparatus decodes the number of row information of the slice and the number of remaining CTBs of the slice (step S810).
- the decoding apparatus may determine the total number of CTBs in the slice for performing prediction using the slice skip mode based on the number of rows of slices and the number of remaining CTBs of the slice.
- the number of rows of slices and the number of remaining CTBs of the slices are examples of variables used to indicate slice units using the slice skip mode. Therefore, it is also possible to determine the slice unit using the slice skip mode using another variable.
- FIG. 9 is a conceptual diagram illustrating a method for indicating a slice using a slice skip mode according to an embodiment of the present invention.
- two slices may exist in one picture, and the second slice may include four rows of CTBs 910, 920, and 930. , 940 and three additional CTBs 950.
- Information on a specific slice unit for performing prediction using the slice skip mode may be obtained using information on the number of rows of slices and information on the number of remaining CTBs of the slice. That is, the total number of CTBs in the slice can be known.
- the number of rows (num_rows_in slice) of the slice corresponds to 4, and the number of remaining CTBs (num_extra_CTBs_in_Col) corresponds to 3. Based on this information, the total number of CTBs in the second slice for performing prediction using the slice skip mode may be indicated.
- the decoding apparatus restores slice unit image information by applying a slice skip mode (step S820).
- the decoding apparatus may output the image information of the slice unit generated by using the slice skip mode as the image information of the reconstructed slice, for the slice unit indicated to use the slice skip mode. That is, up-sampling information of the corresponding slice information of the base layer may be generated as reconstructed image information of the slice unit of the enhancement layer. Filtering is applied to the reconstructed slice unit image information, and the filtered image information may be output as image information of the final slice.
- the syntax layer specifies the syntax elements of the data portion of the current unit and / or the syntax elements for units below the current unit.
- the data is not transmitted in the bitstream, and if necessary, the decoding process can be performed by inferring the syntax element values.
- a slice skip flag information of a slice header may be decoded to perform a slice skip mode for a slice unit of an enhancement layer.
- the coding block skip flag CB_skip_flag is a flag for indicating that skipping is performed in units of coding blocks
- the CTB skip flag CTB_skip_flag is a flag for indicating skipping in units of CTBs.
- it may have the same effect as when the value of the CTB skip flag (CTB_skip_flag) or the coded block skip flag (CB_skip_flag) on the bit-stream is explicitly transmitted. If a specific flag is 'on', it means that the flag performs the action indicated by the flag.
- image decoding may be performed using another image prediction method (step S830).
- image decoding may be performed by performing a general decoding process in the enhancement layer without receiving image information separately from the base layer.
- various inter-layer prediction methods using image information of the base layer may be used.
- FIG. 10 is a conceptual diagram illustrating a hierarchical image decoding method using a texture prediction mode according to an embodiment of the present invention.
- FIG. 10 illustrates an image prediction method using a texture prediction mode that additionally uses residual information.
- (1) image information of a coding unit 1000 corresponding to a base layer is upsampled.
- the residual signal (or residual signal or difference signal) may be a value obtained by subtracting the image information of the coding unit 1020 of the base layer upsampled in the image encoding step and the image information of the original block of the enhancement layer.
- the residual information may be entropy coded in the encoding step and transmitted to the image decoder to be used to perform texture prediction.
- the image encoding unit performs prediction by performing the same method as the image prediction method performed in the image encoding step.
- the reconstructed image information may be calculated by adding the transmitted residual information.
- the coding block of the base layer that upsamples and upsamples the image information included in the coding block unit 1000 of the base layer corresponding to the coding block unit 1060 of the enhancement layer.
- Image decoding may be performed using a method of adding the decoded residual information 1040 to the image information of the unit 1020.
- a new syntax element may be defined and used to indicate that texture prediction mode is performed for a coding block unit in an enhancement layer.
- the coding block texture prediction flag CB_texture_prediction_flag may be used as flag information for indicating whether the coding block performs texture prediction.
- coding block texture prediction flag CB_texture_prediction_flag 1
- the coding block texture prediction flag CB_texture_prediction_flag 0
- texture prediction is performed in a coding block unit. Can be indicated.
- the enhancement layer does not perform prediction on the coding block unit 1060 on which texture prediction is performed, additional syntax element information for performing prediction may not be transmitted. If necessary, information necessary to perform decoding on the coding block may be inferred and used.
- FIG. 11 is a flowchart illustrating a hierarchical image decoding method using a texture prediction mode according to an embodiment of the present invention.
- step S1100 it is determined whether a skip mode is applied to a coding block unit of an enhancement layer.
- the skip flag may be flag information for determining whether to perform prediction using a skip mode in the enhancement layer.
- the skip mode used herein is a skip mode in which decoding is performed using only the image prediction information of the enhancement layer, which is different from the above-described coded block skip mode and slice skip mode.
- the prediction block included in the coding block unit of the enhancement layer may perform prediction without using image information of the base layer.
- Skip (SKIP) mode, merge mode, and advanced motion vector prediction (AMVP) may be used as the inter prediction method performed in the enhancement layer.
- the skip flag is a flag that determines whether prediction is performed using the skip mode among the inter prediction modes.
- prediction may be performed using image prediction information (eg, motion prediction related information) of another block previously decoded in the enhancement layer.
- image prediction information eg, motion prediction related information
- information about another block decoded in advance may be directly used as a reconstruction block without separately encoding / decoding residual information with respect to the original block for the predicted block.
- the skip mode is used to predict the prediction block included in the coding block unit to restore image information in the coding block unit.
- the skip flag is 1, it is determined that the skip block is decoded using the skip mode for the prediction block included in the coding block unit.
- prediction is performed using only the image prediction information of the enhancement layer (step S1110).
- the texture prediction mode flag may be decoded (S1120) to determine whether texture prediction is applied to the coding block unit (step S1130).
- the texture prediction mode described above with reference to FIG. 10 is a method of reconstructing image information of a coding unit of an enhancement layer by up-sampling image information corresponding to coding blocks in a base layer and adding decoded residual information. Point.
- the texture prediction mode flag is a flag indicating whether texture prediction is performed on a coding block unit. For example, if the texture prediction mode flag is '1', it may indicate that the texture prediction mode is applied to the coding block unit. If the texture prediction mode flag is '0', the texture prediction mode is not applied to the coding block unit. Can be represented.
- decoding is performed by performing prediction using the texture prediction mode on the coding block unit (step S1140).
- the enhancement layer may generate a reconstructed block by adding up-sampled image information and residual information of the corresponding coding block unit image information in the base layer.
- image prediction may be performed on the coding block unit using another image prediction method (step S1150).
- the enhancement layer may perform image prediction only on the enhancement layer without receiving the image information transmitted from the base layer.
- FIG. 12 is a conceptual diagram illustrating a method of performing a texture prediction mode on a slice basis according to an embodiment of the present invention.
- the texture prediction mode in the slice unit is disclosed, but the texture prediction mode may be used in the CTB and the picture unit instead of the slice unit. Such an embodiment is also included in the scope of the present invention.
- image information of the slice unit 1200 corresponding to the base layer is upsampled.
- Residual information (difference value between the original information and the prediction information) 1240 is added to the upsampled slice unit 1220 in the same way as the texture prediction in the coding block unit to restore the image information of the slice unit 1260 of the enhancement layer. can do.
- New syntax element information may be defined to transmit information that texture prediction is applied on a slice basis. For example, information on whether to perform texture prediction mode for a slice unit is transmitted based on flag information such as a slice texture prediction flag (slice_texture_prediction_flag), or a type called texture-prediction slice as type information in NAL units. By newly defining the information, the information indicating that the texture prediction mode is applied to the slice included in the corresponding NAL unit may be transmitted.
- flag information such as a slice texture prediction flag (slice_texture_prediction_flag), or a type called texture-prediction slice as type information in NAL units.
- FIG. 13 is a flowchart illustrating a method of performing a texture prediction mode in units of slices according to an embodiment of the present invention.
- Whether the texture prediction mode is applied in units of slices is determined by using the slice texture prediction flag transmitted in units of slices, or whether the NAL type information transmitted in units of NALs is a texture prediction slice. You can check it through
- the information on the number of rows of the slice and the number of remaining CTBs of the slice are decoded (step S1310).
- the total number of CTBs in the slice using the texture prediction mode may be determined based on the number of rows of the slices and the number of remaining CTBs of the slice.
- the information on the number of rows of the slice and the number of remaining CTBs of the slice may be used to determine a slice using the slice texture prediction mode using another variable as one variable for determining a slice using the slice texture prediction mode.
- the prediction is performed by applying the texture prediction mode to the slice (step S1330).
- Prediction using the texture prediction mode is performed on the slice unit using the texture prediction mode.
- a slice texture prediction flag (slice_texture_prediction_flag) may be transmitted in units of slices so that coding / decoding units included in the slice may perform texture prediction.
- the texture prediction flag when the texture prediction flag is transmitted in slice units, set all CTB texture prediction flags (CTB_texture prediction_flag) of all CTBs in the slice to on, or turn on the coded block texture prediction flag (CB_texture_prediction_flag) of all coding blocks in the slice.
- CB_texture_prediction_flag coded block texture prediction flag
- the coding block texture prediction flag CB_texture_prediction_flag is a flag for indicating that texture prediction is performed in units of coding blocks
- the CTB texture prediction flag (CTB_texture_prediction_flag) is a flag for indicating that texture prediction is performed in units of CTB.
- step S1320 when the slice texture prediction mode is not applied in the slice unit as a result of the determination in step S1300, prediction using another prediction method may be performed (step S1320).
- the enhancement layer may perform image decoding by performing a general decoding process.
- a general decoding process may use an intra-layer prediction method or various inter-layer prediction methods that perform decoding using only information of an enhancement layer.
- the prediction of the enhancement layer may be performed using another inter-layer prediction method.
- FIG. 14 is a conceptual diagram illustrating a hierarchical image decoding method using a base layer mode according to an embodiment of the present invention.
- FIG. 14 illustrates a method of performing prediction on an encoding block of an enhancement layer by using image prediction related information of encoding block information corresponding to a base layer with respect to an encoding block of an enhancement layer.
- information eg, intra prediction mode
- inter screen that is used for intra prediction
- Information used for prediction eg, motion prediction related information
- Intra-prediction of the coding block may be performed using the intra prediction mode.
- inter-screen prediction when inter-screen prediction is performed using a specific motion vector in a specific reference picture in a prediction block included in a coding block unit of a base layer corresponding to an enhancement layer, the inter-prediction is applied to the motion vector used in the base layer. Scaling may be performed and the reference picture may be used to perform inter prediction on a prediction unit included in a coding block unit of an enhancement layer.
- the above-described method may be used for image prediction of coding units of an enhancement layer by deriving other intra prediction prediction information and other inter prediction prediction information from a coding unit of a base layer.
- prediction of the block may be performed by deriving prediction related information for the prediction block of the coding block unit of the enhancement layer corresponding to each prediction block.
- the base layer may also perform intra prediction using intra prediction modes 1, 2, 3, and 4.
- the intra prediction mode information used in the coding block unit 1400 of the base layer is decoded and used to perform the intra prediction in the coding block unit 1440 of the enhancement layer.
- the block predicted and generated based on the intra prediction mode information may be added to the residual information 1420 transmitted from the image encoder to generate a reconstructed block in the enhancement layer.
- 15 is a flowchart illustrating a hierarchical image decoding method using a base layer mode according to an embodiment of the present invention.
- the decoding apparatus decodes a skip flag (step S1500).
- the skip flag may be a flag that determines whether a prediction unit included in a coding block unit of an enhancement layer uses a prediction method using a skip mode.
- a reconstruction block is generated by predicting the prediction unit included in the coding block unit using the skip mode (step S1510).
- the skip flag is 1, it may be determined that the prediction block included in the coding block unit performs the prediction using the skip mode by applying the skip mode to the coding block unit.
- step S1520 It is determined whether to use the base prediction mode.
- the base mode flag is a flag indicating whether prediction using the base prediction mode is performed on the prediction unit included in the coding block unit.
- the decoding apparatus may determine whether the base prediction mode is applied to the coding block unit by decoding the base mode flag.
- the base prediction mode On the basis of the decoded base mode flag value, it may be determined whether the base prediction mode is applied to the coding block unit.
- the base mode flag When the base mode flag is '1', the base prediction mode is applied in units of coding blocks to indicate whether prediction of the enhancement layer is performed based on image prediction information of the base layer.
- the base mode flag When the base mode flag is '0', it may indicate that the base prediction mode is not applied to the coding block unit and image decoding using another image prediction mode is performed.
- the image prediction information may be information used for performing intra prediction or inter prediction in the enhancement layer such as intra prediction mode information and motion prediction related information.
- step S1530 When the base prediction mode is applied to the coding block unit, prediction is performed by deriving image prediction information of the base layer (step S1530).
- in-base prediction mode information and motion prediction related information may be derived from the base layer.
- the image prediction information used in the prediction block included in the coding block unit of the base layer corresponding to the coding block unit of the enhancement layer may be used as information for predicting the prediction block included in the coding block unit of the enhancement layer.
- a block generated by performing prediction in the enhancement layer based on the image prediction information of the base layer may be added to the residual information to generate a reconstructed block.
- step S1540 If the base prediction mode is not applied in the coding block unit, another image prediction method may be used (step S1540).
- the enhancement layer may perform image prediction using only the image information of the enhancement layer without receiving the image information transmitted from the base layer.
- prediction of a coding block may be performed using an intra prediction method, a merge mode among inter prediction methods, and an inter prediction method based on AMVP.
- image prediction may be performed using an inter-layer image prediction method other than the base prediction mode.
- 16 is a conceptual diagram illustrating a method of performing a base prediction mode on a slice basis according to an embodiment of the present invention.
- FIG. 16 a method of using the slice base prediction mode in the slice unit is also described for convenience of description, but the base prediction mode may be used in the CTB and picture unit instead of the slice unit, and such an embodiment is also included in the scope of the present invention. .
- prediction related information is derived from a block included in the slice region 1600 corresponding to the base layer.
- the information related to the prediction block included in the slice 1640 of the enhancement layer may be included in the prediction block included in the slice 1600 of the corresponding base layer.
- Motion prediction related information can be derived and used.
- the prediction may be performed based on the prediction related information of the base layer slice unit 1600 and then added to the residual information 1620 to generate a reconstructed slice.
- New syntax element information may be defined to transmit information that the slice base prediction mode is applied on a slice basis. For example, based on flag information such as slice base layer flag (slice_base_layer_flag), information on whether slice base prediction mode is performed in the current slice is transmitted, or base-layer slice type as type information in NAL units.
- NAL type information may be newly defined, and information indicating that a slice included in the corresponding NAL unit uses the slice base prediction mode may be transmitted.
- 17 is a flowchart illustrating a method of performing a base prediction mode on a slice basis according to an embodiment of the present invention.
- step S1700 it is determined whether a slice base prediction mode is applied to a slice unit (step S1700).
- Whether the slice base prediction mode is applied to the slice is determined by using the slice base layer flag (slice_base_layer_flag) transmitted in units of slices, or whether the NAL type information transmitted in the NAL unit is the base layer slice type (base_layer_slice type). You can check whether the slice base layer flag (slice_base_layer_flag) transmitted in units of slices, or whether the NAL type information transmitted in the NAL unit is the base layer slice type (base_layer_slice type). You can check
- the total number of CTBs in the slice using the base prediction mode may be indicated based on the information on the number of rows of the slice and the number of remaining CTBs of the slice.
- the number of rows of slices and the number of remaining CTBs of the slices may indicate a slice unit to which the base prediction mode is applied using another variable as one variable for indicating a slice using the base prediction mode.
- the slice prediction is performed using the slice base prediction mode (step S1730).
- the CTB base layer flag (CTB_base_layer_flag) of all the CTBs in the slice is derived as 'on', or the encoding block base layer flag of the coding block.
- the decoding process may be performed by inducing (CB CB_base_layer_flag) to 'on'.
- the coding block base layer flag CB_base_layer_flag is a flag for indicating that the base prediction mode is performed in units of coding blocks
- the CTB base layer flag CTB_base_layer_flag is a flag for indicating that the base prediction mode is performed in units of CTBs.
- step S1700 when the base prediction mode is not applied in the slice unit, the block included in the slice unit using an intra-layer prediction method or various inter-layer prediction methods that perform decoding using only information of the enhancement layer. Prediction can be performed (step S1720).
- FIG. 18 is a conceptual diagram illustrating a hierarchical image decoding method using a coding block skip mode and a texture prediction mode according to an embodiment of the present invention.
- FIG. 18 illustrates an image decoding method using the coding block skip mode and the texture prediction mode described above.
- the coding block skip mode is a method of performing image decoding by upsampling image information of a base layer without residual information as described above.
- the coding block skip mode flag is first decoded to determine whether the coding block skip mode is applied to each coding block unit.
- image prediction may be performed using the coding block skip on the prediction block included in the coding block unit of the enhancement layer (step S1810).
- the coding block skip method in the enhancement layer refers to a method of generating image information of the enhancement layer by upsampling image information of the base layer.
- step S1820 If the coded block skip mode is not applied to the coded block unit, it is determined whether the skip flag is decoded to be decoded using the skip mode (step S1820).
- the skip flag is a flag indicating whether decoding is performed using a skip mode with only image prediction information in an enhancement layer for a coding block.
- the skip mode is a method of performing image prediction using only the image information of the enhancement layer.
- the skip mode does not restore residual information (difference value information between the original block and the prediction block) and uses only the motion prediction related information decoded in the enhancement layer. Point to how to restore.
- Decoding is performed using the skip mode (step S1830).
- the enhancement layer When the skip mode is applied to each coding block unit, the enhancement layer performs decoding on the coding block using motion prediction related information or intra prediction mode information without residual information.
- the texture prediction mode flag is decoded to determine whether the texture prediction mode is applied to the coding block unit (step S1840).
- the texture prediction mode flag is decoded to determine whether the texture prediction mode is applied in the coding block unit.
- the texture prediction mode is applied to the coding block unit (step S1850).
- texture mode prediction may be applied to the coding block unit.
- the texture prediction mode refers to a method of performing decoding using a method of upsampling image information of a coding block unit of a corresponding base layer and adding decoded residual information as described above.
- step S1860 If the texture prediction mode is not applied in the coding block unit, image decoding is performed using another image prediction method (step S1860).
- the enhancement layer may perform image prediction using only the image information of the enhancement layer without receiving the image information transmitted from the base layer. It is also possible to use other inter-layer image prediction methods.
- FIG. 18 a method of using two prediction modes in an enhancement layer on a coding block basis is illustrated. However, as described above, it may be determined whether the corresponding prediction mode is used on a slice or CTB basis. It is included in the scope of the invention.
- 19 is a conceptual diagram illustrating a hierarchical image decoding method using a skip mode, a texture prediction mode, and a base prediction mode according to an embodiment of the present invention.
- FIG. 19 illustrates a method in which a skip mode, a texture prediction mode, and a base prediction mode are applied to a coding block unit to perform prediction.
- step S1900 it is determined whether a skip mode is applied to a coding block by decoding a skip mode flag.
- the skip mode flag is flag information for determining whether the skip mode is applied to the coding block to perform image decoding.
- Skip mode is a method of performing image prediction using image information. A method of reconstructing an image using only motion prediction-related information decoded in an enhancement layer without reconstructing residual information (difference value information between an original block and a prediction block). Point to.
- the skip mode flag is first decoded to determine whether a skip mode is applied to a coding block unit.
- the coding block is decoded using the skip mode (step S1910).
- prediction may be performed on a coding block unit using only prediction-related information of an enhancement layer on the coding block.
- step S1920 If the skip mode is not applied to the coding block unit, it is determined whether to decode the texture prediction flag by applying the texture prediction mode to the coding block (step S1920).
- the texture prediction flag is a flag indicating whether prediction is performed by applying a texture prediction mode to a coding block unit. For example, when the texture prediction flag is '1', the texture prediction mode may be performed. When the texture prediction flag is '0', it may indicate that a prediction method other than texture prediction is performed for the coding block unit. have.
- Texture prediction is performed (step S1930).
- the reconstruction block may be generated based on the upsampled information and the residual information of the block of the base layer corresponding to the coding block of the enhancement layer.
- the base mode flag is decoded to determine whether the coding block is to be decoded using the base mode (step S1940).
- the base mode flag is a flag indicating whether prediction using a base mode is performed on a coding block unit.
- the recovery block is generated using the base mode (step S1950).
- prediction related information of the prediction block included in the coding block unit of the base layer corresponding to the coding block unit of the enhancement layer (for example, Prediction of the enhancement layer may be performed by deriving intra prediction mode information and motion prediction related information).
- the recovery block is generated without using the base mode (step S1960).
- the enhancement layer may perform image prediction using only the image information of the enhancement layer without receiving the image information transmitted from the base layer. For example, prediction of a coding block may be performed using an intra prediction method, a merge mode among inter prediction methods, and an inter prediction method based on AMVP. It is also possible to perform prediction on the coding block unit of the enhancement layer using another inter-layer prediction method.
- FIG. 19 illustrates a method of using two prediction modes in an enhancement layer on a coding block basis, as described above, it may be determined whether a corresponding prediction mode is used on a slice or CTB basis. It is included in the scope of the invention.
- FIG. 20 is a flowchart illustrating a hierarchical image prediction method using a coding block skip mode (CB skip mode), a texture prediction mode, and a base prediction mode, according to an embodiment of the present invention.
- CB skip mode coding block skip mode
- texture prediction mode a texture prediction mode
- base prediction mode a base prediction mode
- FIG. 20 illustrates a method of decoding a coding block by determining whether a CB skip mode, a texture prediction mode, or a base prediction mode is applied to a coding block.
- step S2000 it is determined whether a skip mode is applied to a coding block unit by decoding a coding block skip mode flag.
- the coding block skip mode is a method of performing image decoding by up-sampling image information in units of coding blocks of a base layer without residual information.
- the coding block skip mode flag is first decoded to determine whether the coding block skip mode is applied to each coding block unit.
- step S2010 When the coding block skip mode is applied to the coding block unit, an image of upsampled image information of the base layer is generated (step S2010).
- step S2020 If the coding block does not use the coding block skip mode, it is determined whether the skip mode is applied to the coding block unit (step S2020).
- the skip flag is a flag indicating whether decoding is performed using a skip mode for a coding block unit as described above.
- Skip mode is a method of performing image prediction using image information. A method of reconstructing an image using only motion prediction-related information decoded in an enhancement layer without reconstructing residual information (difference value information between an original block and a prediction block). Point to.
- Decoding is performed using the skip mode (step S2030).
- the enhancement layer When the skip mode is applied to a coding block unit, the enhancement layer performs decoding on the coding block using motion prediction related information or intra prediction mode information decoded in the enhancement layer without residual information.
- the texture prediction mode flag is decoded to determine whether the prediction block included in the coding block unit performs the prediction using the texture prediction mode (step S2040).
- the coding block unit is decoded using the texture prediction mode (step S2050).
- the texture prediction mode refers to a method of performing decoding using a method of upsampling coding block information of a base layer corresponding to a coding block unit of an enhancement layer and adding decoded residual information.
- the base mode flag is decoded to determine whether the coding block is to be decoded using the base mode (step S2060).
- the base mode flag is a flag indicating whether to perform prediction using a base prediction mode in a coding block unit.
- the reconstructed block is generated using the base prediction mode (step S2070).
- prediction related information of the coding block of the base layer corresponding to the coding block of the enhancement layer for example, intra prediction mode information.
- Motion prediction related information may be derived to predict the prediction block included in the coding block of the enhancement layer.
- the reconstruction block is generated without using the base prediction mode (step S2080).
- the enhancement layer may perform image prediction using only the image information of the enhancement layer without receiving the image information transmitted from the base layer.
- prediction of a coding block may be performed using an intra prediction method, a merge mode among inter prediction methods, and an inter prediction method based on AMVP.
- prediction may be performed using another inter-layer image prediction method.
- FIG. 20 a method of using three prediction modes in an enhancement layer on a coding block basis is illustrated. However, as described above, it may be determined whether the corresponding prediction mode is used on a slice or CTB basis. It is included in the scope of the invention.
- 21 is a flowchart illustrating a method of performing intra prediction when a base prediction mode is used in a coding block unit according to an embodiment of the present invention.
- FIG. 21 illustrates a case where prediction is performed by applying a base prediction mode to a coding block unit to perform intra prediction.
- step S2100 when the base prediction mode is applied to a coding block unit, it is determined whether the intra prediction mode is used in the coding block unit of the base layer (step S2100).
- the intra prediction mode when used in the coding block unit of the base layer, it may be determined how to use the reference pixel of the base layer to perform the intra prediction. Therefore, it may be first determined whether intra prediction is performed on the coding block unit of the base layer.
- image prediction may be performed using the base prediction mode in the corresponding block of the base layer (S2110).
- inter prediction may be performed in a corresponding block of the base layer, and motion prediction related information may be derived from a corresponding block of the base layer to perform prediction on a block of the enhancement layer.
- step S2100 when intra prediction is performed in the block of the base layer, it is determined whether to use the reference pixel of the base layer by decoding the base layer predictor flag BL_predictor_flag (step S2120).
- the base layer predictor flag is used as a flag to determine whether prediction blocks included in a coding block unit of an enhancement layer use the reference pixel of the base layer or the reference pixel of the enhancement layer in performing intra prediction. Can be.
- Intra-prediction of the prediction block is performed based on the reference pixel information of the base layer (step S2130).
- the base layer predictor flag is 1, it may be determined that the prediction block included in the coding block unit is a block for performing prediction using a reference pixel of the base layer.
- Two methods may be used to perform intra prediction of the prediction block based on reference pixel information of the base layer. 22 illustrates two methods of performing intra prediction of a prediction block on the basis of reference pixel information of a base layer.
- 22 is a conceptual diagram illustrating a method of performing intra prediction of a prediction block on the basis of reference pixel information of a base layer according to an embodiment of the present invention.
- the decoding apparatus restores reference pixel information 2200 in a base layer and upsamples 2210 the reference pixel information 2200 of a base layer block.
- the reference pixel information 2200 of the base layer block may be upsampled 2210 to generate reference pixel information for performing intra prediction on the block of the enhancement layer.
- the decoding apparatus then generates a predicted block 2220 for the block of the enhancement layer based on the upsampled reference pixel information.
- the intra prediction may be performed by deriving an intra prediction mode used in the coding block of the base layer corresponding to the coding block of the enhancement layer based on the generated predicted block.
- the reference pixel information 2200 of the base layer is upsampled 2210 to generate a predicted block 2220 using the upsampled reference pixel information, and the generated predicted block is obtained.
- An intra prediction may be performed as a basis (2230).
- FIG. 22B may use a method of upsampling information on which prediction is performed using a reference pixel 2250 in a base layer.
- the decoding apparatus performs intra prediction using an intra prediction mode used in an encoding block of a base layer corresponding to an encoding block of an enhancement layer based on the reference pixel 2250 of the base layer.
- (B) may directly generate the predicted block 2260 using the reference pixel information 2250 of the base layer.
- the predicted block 2280 of the base layer generated by performing intra prediction is upsampled 2270 to generate a predicted block 2280 for the enhancement layer.
- Block 2280 may be generated.
- the two intra prediction methods using the reference pixel information of the base layer described with reference to FIG. 22 may be selected and used in the receiver / transmitter, that is, the encoding device and the decoding device, in the same manner. You can use either of the two methods separately.
- the decoding apparatus performs intra prediction of the prediction block based on reference pixel information of the enhancement layer and not reference pixel information of the base layer (step S2140).
- the block is a block for performing prediction using the reference pixels of the enhancement layer.
- the reference pixel of the enhancement layer is reference pixel information present in a block of the enhancement layer and may be pixel information present in a block already generated by decoding in the enhancement layer.
- FIG. 21 discloses a case where a base layer predictor flag is applied to a coding block unit
- information about whether a base layer predictor is used for a block included in a CTB or slice other than the coding block unit may be transmitted.
- reference pixel information may be derived from the base layer and used for the blocks included in the slice of the enhancement layer that use the intra prediction mode. have.
- FIG. 23 is a flowchart illustrating a hierarchical video coding method for split information of a transform block according to an embodiment of the present invention.
- FIG. 23 is a flowchart illustrating a method of determining whether to obtain partition information about a transform block in a base layer or an enhancement layer.
- the base layer transformation flag BL_transform_partition_flag is decoded (step S2300).
- the base layer transform flag indicates whether partition information of the transform block is derived from the partition information of the transform block of the base layer in the enhancement layer or whether partitioning is performed by separately determining the partition information of the transform block in the enhancement layer. This is the flag.
- the transform block splitting of the enhancement layer is performed based on the transform block splitting information split_transform_flag of the base layer (step S2320).
- the transform block partitioning information of the base layer can be read and used in the enhancement layer. That is, the transform block may be generated by dividing the coding block of the enhancement layer by the same method as that of the transform block included in the encoding block of the base layer corresponding to the encoding block of the enhancement layer.
- the transform block splitting of the enhancement layer is performed based on the transform block splitting information split_transform_flag of the enhancement layer (step S2330).
- the transform block splitting information of the enhancement layer may be obtained by decoding the transform block splitting information of the enhancement layer.
- FIG. 23 illustrates a method of using transform block splitting information of a base layer for a coding block unit, whether or not transform block splitting information of a base layer is used for a block included in a CTB or slice that is not a coding block unit. It can be determined and decoded through the flag information.
- the partitioning for the transform blocks included in the slice of the enhancement layer is the same as the transform blocks included in the slice of the base layer. It may have split information in the form.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
계층적 영상 부/복호화 모드 결정 방법 및 이러한 방법을 사용하는 장치가 개시되어 있다. 화면 내 예측 방법은 기본 계층의 제1 영상 처리 단위가 화면 내 예측을 수행하는지 여부에 대해 판단하는 단계, 제1 영상 처리 단위가 화면 내 예측을 수행하는 경우, 기본 계층 예측자 정보를 복호화하는 단계와 기본 계층 예측자 정보에 기초하여 향상 계층에서 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계를 포함할 수 있되 기본 계층 예측자 정보는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 기본 계층의 참조 픽셀을 사용할 것인지 향상 계층의 참조 픽셀을 사용할 것인지 여부를 결정하기 위한 정보일 수 있다. 따라서, 향상 계층의 영상 부/복호화 효율을 높일 수 있다.
Description
본 발명은 계층적 영상 부/복호화(scalable video coding) 방법 및 장치에 관한 것으로 더욱 상세하게는 계층적 비디오 부/복호화 모드를 결정하는 방법 및 장치에 관한 것이다.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 응용 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 데이터량이 증가하기 때문에 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 데이터를 전송하거나 기존의 저장 매체를 이용해 저장하는 경우, 전송 비용과 저장 비용이 증가하게 된다. 영상 데이터가 고해상도, 고품질화 됨에 따라 발생하는 이러한 문제들을 해결하기 위해서는 고효율의 영상 압축 기술들이 활용될 수 있다.
영상 압축 기술로 현재 픽쳐의 이전 또는 이후 픽쳐로부터 현재 픽쳐에 포함된 화소값을 예측하는 화면 간 예측 기술, 현재 픽쳐 내의 화소 정보를 이용하여 현재 픽쳐에 포함된 화소값을 예측하는 화면 내 예측 기술, 출현 빈도가 높은 값에 짧은 부호를 할당하고 출현 빈도가 낮은 값에 긴 부호를 할당하는 엔트로피 부호화 기술 등 다양한 기술이 존재하고 이러한 영상 압축 기술을 이용해 영상 데이터를 효과적으로 압축하여 전송 또는 저장할 수 있다.
본 발명의 제1 목적은 계층적 영상 부호화 및 복호화 방법을 제공하는 것이다.
또한, 본 발명의 제2 목적은 계층적 영상 부호화 및 복호화 방법을 수행하는 장치를 제공하는 것이다.
상술한 본 발명의 제1 목적을 달성하기 위한 본 발명의 일 측면에 따른 화면 내 예측 방법은 기본 계층의 제1 영상 처리 단위가 화면 내 예측을 수행하는지 여부에 대해 판단하는 단계, 상기 제1 영상 처리 단위가 화면 내 예측을 수행하는 경우, 기본 계층 예측자 정보를 복호화하는 단계와 상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계를 포함할 수 있되, 상기 기본 계층 예측자 정보는 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용할 것인지 상기 향상 계층의 참조 픽셀을 사용할 것인지 여부를 결정하기 위한 정보일 수 있다. 상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계는 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 제1 영상 처리 단위의 참조 픽셀을 기초로 화면 내 예측을 수행하여 화면 내 예측된 블록을 생성하는 단계와상기 화면 내 예측된 블록을 업샘플링하는 단계를 포함할 수 있다. 상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계는 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 제1 영상 처리 단위의 참조 픽셀을 업샘플링하는 단계와 상기 업샘플링된 상기 제1 영상 처리 단위의 참조 픽셀을 기초로 화면 내 예측을 수행하는 단계를 포함할 수 있다. 상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계는 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 향상 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 향상 계층에서 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀 정보를 획득하는 단계와 상기 참조 픽셀 정보를 기초로 화면 내 예측을 수행하는 단계를 포함할 수 있다. 상기 화면 내 예측 방법은 상기 제2 영상 처리 단위가 베이스 예측 모드를 수행하여 예측을 수행하는지 여부를 판단하는 단계를 더 포함할 수 있다. 상기 제1 영상 처리 단위 및 상기 제2 영상 처리 단위는 코딩 블록(coding block) 단위, CTB(coding tree block) 단위, 슬라이스(slice) 단위 및 픽쳐(picture) 단위 중 하나의 영상 처리 단위일 수 있다. 상기 기본 계층 예측자 정보는 플래그 정보로서 플래그 값이 1일 경우, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하고, 플래그 값이 0일 경우, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 향상 계층의 참조 픽셀을 사용하는 것을 지시할 수 있다.
상술한 본 발명의 제2 목적을 달성하기 위한 본 발명의 일 측면에 따른 화면 내 예측을 수행하는 영상 복호화 장치는 기본 계층의 제1 영상 처리 단위가 화면 내 예측을 수행하는 경우, 기본 계층 예측자 정보를 복호화하는 엔트로피 복호화부, 기본 계층의 제1 영상 처리 단위가 화면 내 예측을 수행하는지 여부에 대해 판단하고 상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 예측부를 포함할 수 있되, 상기 기본 계층 예측자 정보는 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용할 것인지 상기 향상 계층의 참조 픽셀을 사용할 것인지 여부를 결정하기 위한 정보일 수 있다. 상기 예측부는 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 제1 영상 처리 단위의 참조 픽셀을 기초로 화면 내 예측을 수행하여 화면 내 예측된 블록을 생성하고 상기 화면 내 예측된 블록을 업샘플링하도록 구현될 수 있다. 상기 예측부는, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 제1 영상 처리 단위의 참조 픽셀을 업샘플링하고 상기 업샘플링된 상기 제1 영상 처리 단위의 참조 픽셀을 기초로 화면 내 예측을 수행하도록 구현될 수 있다. 상기 예측부는 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 향상 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 향상 계층에서 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀 정보를 획득하고 상기 참조 픽셀 정보를 기초로 화면 내 예측을 수행하도록 구현될 수 있다. 상기 예측부는 상기 제2 영상 처리 단위가 베이스 예측 모드를 수행하여 예측을 수행하는지 여부를 판단하도록 구현될 수 있다. 상기 제1 영상 처리 단위 및 상기 제2 영상 처리 단위는 코딩 블록(coding block) 단위, CTB(coding tree block) 단위, 슬라이스(slice) 단위 및 픽쳐(picture) 단위 중 하나의 영상 처리 단위일 수 있다. 상기 기본 계층 예측자 정보는 플래그 정보로서 플래그 값이 1일 경우, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하고, 플래그 값이 0일 경우, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 향상 계층의 참조 픽셀을 사용하는 것을 지시할 수 있다.
상술한 바와 같이 본 발명의 실시예에 따른 계층적 영상 부/복호화 모드 결정 방법 및 이러한 방법을 사용하는 장치에 따르면 다양한 계층적 영상 부/복호화 방법을 사용함으로서 필요에 따라 기본 계층의 영상 정보를 향상 계층의 영상에 대한 부호화 및 복호화를 수행하기 위해 사용할 수 있다. 따라서, 향상 계층의 영상 부/복호화 효율을 높일 수 있다.
도 1은 본 발명의 실시예에 따른 부호화 장치를 나타낸 블록도이다.
도 2는 본 발명의 다른 실시예에 따른 복호화기를 나타낸 블록도이다.
도 3은 본 발명의 실시예에 따른 계층적 비디오 부호화 방법을 나타낸 개념도이다.
도 4는 본 발명의 실시예에 따른 계층적 비디오 복호화 방법을 나타낸 개념도이다.
도 5는 본 발명의 실시예에 따른 부호화 블록 스킵 모드를 이용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 6은 본 발명의 실시예에 따른 부호화 블록 스킵 모드를 이용한 계층적 영상 복호화 방법을 나타낸 순서도이다.
도 7은 본 발명의 실시예에 따른 슬라이스 스킵 모드를 이용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 8은 본 발명의 실시예에 따른 슬라이스 스킵 모드를 이용한 계층적 영상 복호화 방법을 나타낸 순서도이다.
도 9는 본 발명의 실시예에 따른 슬라이스 스킵 모드를 사용하는 슬라이스를 지시하기 위한 방법을 나타낸 개념도이다.
도 10은 본 발명의 실시예에 따른 텍스쳐 예측 모드(texture prediction mode)를 이용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 11은 본 발명의 실시예에 따른 텍스쳐 예측 모드를 이용한 계층적 영상 복호화 방법을 나타낸 순서도이다.
도 12는 본 발명의 실시예에 따른 슬라이스 단위로 텍스쳐 예측 모드를 수행하는 방법을 나타낸 개념도이다.
도 13은 본 발명의 실시예에 따른 슬라이스 단위로 텍스쳐 예측 모드를 수행하는 방법을 나타낸 순서도이다.
도 14는 본 발명의 실시예에 따른 기본 계층 모드를 사용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 15는 본 발명의 실시예에 따른 기본 계층 모드를 사용한 계층적 영상 복호화 방법을 나타낸 순서도이다.
도 16은 본 발명의 실시예에 따른 슬라이스 단위로 베이스 예측 모드를 수행하는 방법을 나타낸 개념도이다.
도 17은 본 발명의 실시예에 따른 슬라이스 단위로 베이스 예측 모드를 수행하는 방법을 나타낸 순서도이다.
도 18은 본 발명의 실시예에 따른 부호화 블록 스킵 모드와 텍스쳐 예측 모드를 사용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 19는 본 발명의 실시예에 따른 스킵 모드, 텍스쳐 예측 모드, 베이스 예측 모드를 사용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 20은 본 발명의 실시예에 따른 부호화 블록 스킵 모드, 텍스쳐 예측 모드, 베이스 예측 모드를 사용한 계층적 영상 예측 방법을 나타낸 순서도이다.
도 21은 본 발명의 실시예에 따른 부호화 블록 단위에서 베이스 예측 모드를 사용할 경우 화면 내 예측을 수행하는 방법을 나타낸 순서도이다.
도 22는 본 발명의 실시예에 따른 기본 계층의 참조 픽셀 정보 기초로 예측 블록의 화면 내 예측을 수행하는 방법을 나타낸 개념도이다.
도 23은 본 발명의 실시예에 따른 변환 블록의 분할 정보에 대한 계층적 비디오 코딩 방법을 나타낸 순서도이다.
본 발명의 실시예 및 도면에 개시된 각 구성부들은 영상 부호화 장치의 서로 다른 특징적인 기능들을 나타내기 위해 독립적인 구성으로 개시한 것이다. 각 구성부들이 반드시 분리된 하드웨어나 하나의 소프트웨어 구성 단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벋어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 본 발명에서 개시된 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리 범위에 포함된다.
도 1은 본 발명의 실시예에 따른 부호화 장치를 나타낸 블록도이다.
도 1을 참조하면, 부호화 장치는 분할부(100), 예측부(110), 화면 내 예측부(103), 화면 간 예측부(106), 변환부(115), 양자화부(120), 재정렬부(125), 엔트로피 부호화부(130), 역양자화부(135), 역변환부(140), 필터부(145) 및 메모리(150)를 포함할 수 있다.
부호화 장치는 이하의 본 발명의 실시예에서 설명하는 영상 부호화 방법에 의해 구현될 수 있으나, 일부의 구성부에서의 동작은 부호화기의 복잡도를 낮추기 위해 또는 빠른 실시간 부호화를 위해 수행되지 않을 수 있다. 예를 들어, 예측부에서 화면 내 예측을 수행함에 있어서, 실시간으로 부호화를 수행하기 위해 모든 화면 내 예측 모드 방법을 사용하여 최적의 화면 내 부호화 방법을 선택하는 방법을 사용하지 않고 일부의 제한적인 개수의 화면 내 예측 모드를 사용하여 그 중에서 하나의 화면 내 예측 모드를 최종 화면 내 예측 모드로 선택하는 방법이 사용될 수 있다. 또 다른 예로 화면 내 예측 또는 화면 간 예측을 수행함에 있어 사용되는 예측 블록의 형태를 제한적으로 사용하도록 하는 것도 가능하다.
부호화 장치에서 처리되는 블록의 단위는 부호화를 수행하는 부호화 블록(coding block), 예측을 수행하는 예측 블록(prediction block), 변환을 수행하는 변환 블록(transform block)이 될 수 있다. 부호화 블록을 부호화 또는 복호화하기 위해 사용되는 정보를 포함하는 일정한 정보 단위를 부호화 단위(CU, Coding Unit), 예측 블록에 대한 예측을 수행하기 위해 사용되는 정보를 포함하는 일정한 정보 단위를 예측 단위(PU, Prediction Unit), 변환 블록에 변환을 수행하기 위해 사용되는 정보를 포함하는 단위를 변환 단위(TU, Transform Unit)라는 용어로 표현할 수 있다.
이하, 본 발명의 실시예에서 사용되는 현재 블록은 예측 또는 변환 또는 부호화의 대상이 되는 블록을 의미할 수 있다. 예측 수행 시 현재 블록은 현재 예측의 대상이 되는 블록이 될 수 있다. 변환 수행 시 현재 블록은 현재 변환의 대상이 되는 변환 블록이 될 수 있다. 부호화 또는 복호화 수행 시 현재 블록은 부호화 또는 복호화의 대상이 되는 부호화 블록이 될 수 있다. 즉, 수행되는 영상 처리에 따라 현재 블록이 의미하는 단위가 달라질 수 있다.
분할부(100)에서는 하나의 픽쳐를 복수의 부호화 블록, 예측 블록 및 변환 블록의 조합으로 분할하고 소정의 기준(예를 들어, 비용 함수)으로 그 중 하나의 부호화 블록, 예측 블록 및 변환 블록의 분할 조합을 선택하여 픽쳐를 분할할 수 있다.
예를 들어, 픽쳐에서 부호화 블록을 분할하기 위해서는 쿼드 트리 구조(Quadtree Structure)와 같은 재귀적인 트리 구조를 사용할 수 있다. 이하, 본 발명의 실시예에서는 부호화 블록의 의미는 부호화를 수행하는 블록이라는 의미뿐만 아니라 복호화를 수행하는 블록이라는 의미로도 사용할 수 있다.
예측 블록은 화면 내 예측 또는 화면 간 예측을 수행하는 블록이 될 수 있다. 화면 내 예측을 수행하는 블록의 형태로는 2Nx2N, NxN과 같은 정사각형의 형태나 SDIP(Short Distance Intra Prediction)를 사용하는 직사각형의 형태의 예측 블록 형태를 가질 수 있다. 화면 간 예측을 수행하는 블록으로는 2Nx2N, NxN과 같은 정사각형의 형태 또는 정사각형 형태의 예측 블록을 동일한 형태로 이분할한 형태인 2NxN, Nx2N 또는 비대칭 형태인 AMP (Asymetric Motion Partitioning)를 사용한 예측 블록 분할 방법이 있다. 예측 블록의 형태에 따라 변환부(115)에서는 변환을 수행하는 방법이 달라질 수 있다.
예측부(110)는 화면 내 예측을 수행하는 화면 내 예측부(103)와 화면 간 예측을 수행하는 화면 간 예측부(106)를 포함할 수 있다. 예측부(110)에서는 예측 블록에 대해 화면 간 예측을 사용할 것인지 또는 화면 내 예측을 수행할 것인지를 결정할 수 있다. 예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 다를 수 있다. 예를 들어, 화면 내 예측을 수행함에 있어서 예측 모드는 예측 블록 단위로 결정되고, 예측을 수행하는 과정은 변환 블록 단위를 기초로 수행될 수도 있다. 생성된 예측된 블록(또는 예측된 샘플)과 원본 블록(또는 원본 샘플) 사이의 잔차값(잔차 블록)은 변환부(115)로 입력될 수 있다. 또한, 예측을 위해 사용한 예측 모드 정보, 움직임 벡터 정보 등은 잔차값과 함께 엔트로피 부호화부(130)에서 부호화되어 복호화기에 전달될 수 있다.
PCM(Pulse Coded Modulation) 부호화 모드를 사용할 경우, 예측부(110)를 통해 예측을 수행하지 않고, 원본 블록을 그대로 부호화하여 복호화부에 전송하는 것도 가능하다.
화면 내 예측부(103)에서는 현재 블록(예측 블록)의 주변에 존재하는 참조 픽셀을 기초로 예측된 블록을 생성할 수 있다. 현재 블록에 대한 최적의 화면 내 예측 모드를 산출하기 위해서 현재 블록에 대해 복수의 화면 내 예측 모드를 사용하여 예측을 하고 그 중 하나의 화면 내 예측 모드를 현재 블록을 예측하기 위한 화면 내 예측 모드로 사용할 수 있다. 화면 내 예측에서 예측 모드는 참조 픽셀 정보를 예측 방향에 따라 사용하는 방향성 예측 모드와 예측을 수행 시 방향성 정보를 사용하지 않는 비방향성 모드를 가질 수 있다. 휘도 정보를 예측하기 위한 모드와 색차 정보를 예측하기 위한 화면 내 예측 모드는 종류가 상이할 수 있고, 색차 정보를 예측하기 위해 휘도 정보를 예측한 화면 내 예측 모드 정보 또는 예측된 휘도 신호 정보를 활용할 수 있다.
이하, 본 발명의 실시예에서는 현재 블록의 화면 내 예측모드를 산출하기 위해 사용되는 주변에 위치한 블록을 주변 블록이라고 정의한다. 주변 블록은 현재 블록의 좌상단 화소의 좌표를 (x,y)라고 할 때 (x-1,y)에 위치한 화소값를 포함하는 주변 블록 A와 (x, y-1)에 위치한 화소값을 포함하는 제2 주변 블록을 주변 블록이라고 할 수 있다.
현재 블록의 주변 블록의 화면 내 예측 모드 정보로부터 현재 블록의 화면 내 예측 모드 정보를 부호화할 수 있다. 즉, 현재 블록의 화면 내 예측 모드는 현재 블록의 주변에 존재하는 예측 블록의 화면 내 예측 모드로부터 예측할 수 있다.
현재 블록과 주변 블록의 화면 내 예측 모드가 동일할 경우, 플래그 정보를 이용하여 현재 블록과 주변 블록의 예측 모드가 동일하다는 정보를 지시할 수 있다. 만약, 현재 블록과 주변 블록의 예측 모드가 상이할 경우, 엔트로피 부호화를 수행하여 현재 블록의 화면 내 예측 모드 정보를 부호화할 수 있다.
주변 블록의 예측 모드가 가용하지 않은 경우, 미리 설정된 화면 내 예측 모드값을 후보 화면 내 예측 모드값으로 설정하여 현재 예측 블록의 화면 내 예측 모드를 예측할 수 있다.
화면 내 예측부(103)는 현재 픽쳐 내의 화소 정보인 현재 블록 주변의 참조 픽셀 정보를 기초로 예측된 블록 또는 예측된 샘플을 생성할 수 있다. 이러한 현재 블록 주변의 픽셀을 참조하여 생성된 블록 또는 샘플을 예측된 블록 또는 예측된 샘플이라고 표현할 수 있다.
화면 내 예측을 수행 시 예측 블록의 크기와 변환 블록의 크기가 동일할 경우, 예측 블록의 좌측에 존재하는 픽셀, 좌측 상단에 존재하는 픽셀, 상단에 존재하는 픽셀을 기초로 예측 블록에 대한 화면 내 예측을 수행할 수 있다.
화면 내 예측을 수행 시 예측 블록의 크기와 변환 블록의 크기가 상이할 경우, 변환 블록의 좌측에 존재하는 픽셀, 좌측 상단에 존재하는 픽셀, 상단에 존재하는 픽셀을 이용하여 화면 내 예측을 수행할 수 있다. 또한, 최소 부호화 블록에 대해서만 NxN 분할을 사용하는 화면 내 예측을 사용할 수 있다.
화면 내 예측 방법은 예측 모드에 따라 참조 화소에 AIS(Adaptive Intra Smoothing) 필터를 적용한 후 예측된 블록(또는 예측된 샘플로도 표현될 수 있다.)을 생성할 수 있다. 참조 화소에 적용되는 AIS 필터의 종류는 상이할 수 있다. 화면 내 예측이 수행된 이후에 참조 픽셀과 예측된 블록에 존재하는 일부 픽셀에 대한 추가적인 필터링을 수행할 수 있다. 참조 픽셀과 예측된 블록에 존재하는 일부 픽셀에 대한 필터링은 화면 내 예측 모드의 방향성에 따라 다른 필터링 계수를 사용하여 필터링을 사용할 수 있다.
화면 간 예측부(106)는 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐의 정보를 기초로 예측 블록(예를 들어, 예측된 블록 또는 예측된 샘플)를 생성할 수 있다. 화면 간 예측부(106)는 참조 픽쳐 보간부, 움직임 예측부, 움직임 보상부가 포함할 수 있다. 참조 픽쳐 보간부에서는 메모리(150)로부터 참조 픽쳐 정보를 제공받고 참조 픽쳐에서 정수 화소 이하의 화소 정보를 생성할 수 있다. 휘도 화소의 경우, 1/4 화소 단위로 정수 화소 이하의 화소 정보를 생성하기 위해 필터 계수를 달리하는 DCT 기반의 8탭 보간 필터(DCT-based Interpolation Filter)가 사용될 수 있다. 색차 신호의 경우 1/8 화소 단위로 정수 화소 이하의 화소 정보를 생성하기 위해 필터 계수를 달리하는 DCT 기반의 4탭 보간 필터(DCT-based Interpolation Filter)가 사용될 수 있다.
화면 간 예측부(106)는 참조 픽쳐 보간부에 의해 보간된 참조 픽쳐를 기초로 움직임 예측을 수행할 수 있다. 움직임 벡터를 산출하기 위한 방법으로 FBMA(Full search-based Block Matching Algorithm), TSS(Three Step Search), NTS(New Three-Step Search Algorithm) 등 다양한 방법이 사용될 수 있다. 움직임 벡터는 보간된 화소를 기초로 1/2 또는 1/4 화소 단위의 움직임 벡터값을 가질 수 있다. 화면 간 예측부(106)에서는 움직임 예측 방법을 다르게 하여 현재 예측 블록을 예측할 수 있다. 움직임 예측 방법으로 스킵(Skip) 방법, 머지(Merge) 방법, AMVP(Advanced Motion Vector Prediction) 방법 등 다양한 방법이 사용될 수 있다.
계층적 영상 부호화를 수행하는 경우 예측부(110)가 기본 계층(base layer)에 포함되어 있는지 아니면 향상 계층(enhanced layer)에 포함되어 있는지 여부에 따라 서로 다른 예측 동작을 수행할 수 있다. 예측부(110)가 기본 계층에 포함되어 있는 경우는 전술한 실시예와 동일하게 동작할 수 있다. 하지만, 예측부(110)가 향상 계층에 포함되어 있는 경우, 계층적 영상 부호화 모드에 따라 예측부가 화면 간 예측 및 화면 내 예측을 수행하지 않거나, 기본 계층의 예측부에서 생성된 영상 예측 관련 정보(예를 들어, 화면 내 예측 모드, 움직임 예측 관련 정보 등)을 수신받아 해당 정보를 기초로 예측을 수행할 수도 있다. 구체적인 예에 대해서는 추가적으로 상술한다.
예측부(110)에서 예측을 수행한 예측된 블록 또는 예측된 샘플과 원본 블록 또는 원본 샘플과 차이값인 잔차값(Residual) 정보를 포함하는 잔차 블록이 생성될 수 있다. 생성된 잔차 블록은 변환부(115)로 입력될 수 있다. 변환부(115)에서는 잔차 블록을 DCT(Discrete Cosine Transform) 또는 DST(Discrete Sine Transform)와 같은 변환 방법을 사용하여 변환할 수 있다. 잔차 블록을 변환하기 위해 DCT를 적용할지 DST를 적용할지는 잔차 블록에 대응하는 예측 블록의 화면 내 예측 모드 정보 및/또는 예측 블록의 크기 정보를 기초로 결정할 수 있다. 즉, 변환부에서는 예측 블록의 크기에 따라 변환 방법을 다르게 사용할 수 있다.
양자화부(120)는 변환부(115)에서 주파수 영역으로 변환된 값들을 양자화할 수 있다. 블록에 따라 또는 영상의 중요도에 따라 양자화 계수는 변할 수 있다. 양자화부(120)에서 산출된 값은 역양자화부(135)와 재정렬부(125)에 제공될 수 있다.
재정렬부(125)는 양자화된 잔차값에 대해 계수값의 재정렬을 수행할 수 있다.재정렬부(125)는 계수 스캐닝(Coefficient Scanning) 방법을 통해 2차원의 블록 형태 계수를 1차원의 벡터 형태로 변경할 수 있다. 예를 들어, 재정렬부(125)에서는 지그-재그 스캔(Zig-Zag Scan)방법을 이용하여 DC 계수부터 고주파수 영역의 계수까지 스캔하여 1차원 벡터 형태로 변경시킬 수 있다. 변환 블록의 크기 및 화면 내 예측 모드에 따라 지그-재그 스캔 방법이 아닌 2차원의 블록 형태 계수를 열 방향으로 스캔하는 수직 스캔 방법, 2차원의 블록 형태 계수를 행 방향으로 스캔하는 수평 스캔 방법이 사용될 수 있다. 즉, 변환 블록의 크기 및 화면 내 예측 모드에 따라 지그-재그 스캔, 수직 방향 스캔 및 수평 방향 스캔 중 어떠한 스캔 방법이 사용될지 여부를 결정할 수 있다.
엔트로피 부호화부(130)는 재정렬부(125)에 의해 산출된 값들을 기초로 엔트로피 부호화를 수행할 수 있다. 엔트로피 부호화는 예를 들어, 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 다양한 부호화 방법을 사용할 수 있다.
엔트로피 부호화부(130)는 재정렬부(125) 및 예측부(110)로부터 부호화 블록의 잔차값 계수 정보 및 블록 타입 정보, 예측 모드 정보, 분할 블록 정보, 예측 블록 정보 및 변환 블록 정보, 움직임 벡터 정보, 참조 프레임 정보, 블록의 보간 정보, 필터링 정보 등 다양한 정보를 제공받아 소정의 부호화 방법을 기초로 엔트로피 부호화를 수행할 수 있다. 또한, 엔트로피 부호화부(130)에서는 재정렬부(125)에서 입력된 부호화 단위의 정보를 엔트로피 부호화할 수 있다.
역양자화부(135) 및 역변환부(140)에서는 양자화부(120)에서 양자화된 값들을 역양자화하고 변환부(115)에서 변환된 값들을 역변환한다. 역양자화부(135) 및 역변환부(140)에서 생성된 잔차값(Residual)은 예측부(110)에 포함된 움직임 추정부, 움직임 보상부 및 인트라 예측부를 통해서 예측된 블록과 합쳐져 복원 블록(Reconstructed Block)을 생성할 수 있다.
필터부(145)는 디블록킹 필터, 오프셋 보정부, ALF(Adaptive Loop Filter)중 적어도 하나를 포함할 수 있다.
디블록킹 필터는 복원된 픽쳐에서 블록간의 경계로 인해 생긴 블록 왜곡을 제거할 수 있다. 디블록킹을 수행할지 여부를 판단하기 위해 블록에 포함된 몇 개의 열 또는 행에 포함된 픽셀을 기초로 현재 블록에 디블록킹 필터 적용할지 여부를 판단할 수 있다. 블록에 디블록킹 필터를 적용하는 경우 필요한 디블록킹 필터링 강도에 따라 강한 필터(Strong Filter) 또는 약한 필터(Weak Filter)를 적용할 수 있다. 또한 디블록킹 필터를 적용함에 있어 수직 필터링 및 수평 필터링을 수행시 수평 방향 필터링 및 수직 방향 필터링이 병행처리가 되도록 할 수 있다.
오프셋 보정부는 디블록킹을 수행한 영상에 대해 픽셀 단위로 원본 영상과의 오프셋을 보정할 수 있다. 특정 픽쳐에 대한 오프셋 보정을 수행하기 위해 영상에 포함된 픽셀을 일정한 수의 영역으로 구분한 후 오프셋을 수행할 영역을 결정하고 해당 영역에 오프셋을 적용하는 방법 또는 각 픽셀의 에지 정보를 고려하여 오프셋을 적용하는 방법을 사용할 수 있다.
ALF (Adaptive Loop Filter)는 필터링한 복원 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. 영상에 포함된 픽셀을 적어도 하나 이상의 그룹으로 나눈 후 해당 그룹에 적용될 하나의 필터를 결정하여 그룹마다 차별적으로 필터링을 수행할 수 있다. ALF를 적용할지 여부에 관련된 정보는 휘도 신호는 부호화 단위(Coding Unit, CU) 별로 전송될 수 있고, 각각의 블록에 따라 적용될 ALF의 크기 및 계수는 달라질 수 있다. ALF는 다양한 형태를 가질 수 있으며, 필터에 그에 따라 포함되는 계수의 개수도 달라질 수 있다. 이러한 ALF의 필터링 관련 정보(필터 계수 정보, ALF On/Off 정보, 필터 형태 정보)는 비트스트림 형태로 파라메터 셋에 포함되어 전송될 수 있다.
메모리(150)는 필터부(145)를 통해 산출된 복원 블록 또는 픽쳐를 저장할 수 있고, 저장된 복원 블록 또는 픽쳐는 화면 간 예측을 수행 시 예측부(110)에 제공될 수 있다.
도 2는 본 발명의 다른 실시예에 따른 복호화기를 나타낸 블록도이다.
도 2를 참조하면, 복호화기는 엔트로피 복호화부(210), 재정렬부(215), 역양자화부(220), 역변환부(225), 예측부(230), 필터부(235), 메모리(240)가 포함될 수 있다.
부호화기에서 비트스트림이 입력된 경우, 입력된 비트스트림은 부호화기와 반대의 절차로 복호화될 수 있다.
엔트로피 복호화부(210)는 부호화기의 엔트로피 부호화부에서 엔트로피 부호화를 수행한 것과 반대의 절차로 엔트로피 복호화를 수행할 수 있다.
엔트로피 복호화부(210)에서 복호화된 정보 중 예측된 블록(또는 예측된 샘플)을 생성하기 위한 정보는 예측부(230)로 제공되고 엔트로피 복호화부에서 엔트로피 복호화를 수행한 잔차값은 재정렬부(215)로 입력될 수 있다.
엔트로피 복호화부(210)에서는 부호화기에서 수행된 화면 내 예측 및 화면 간 예측에 관련된 정보를 복호화할 수 있다. 전술한 바와 같이 부호화기에서 화면 내 예측 및 화면 간 예측을 수행시 예를 들어 주변의 예측 모드가 가용하지 않은 경우 등의 제약이 있는 경우, 이러한 제약을 기초로 한 엔트로피 복호화를 수행해 현재 블록에 대한 화면 내 예측 및 화면 간 예측에 관련된 정보를 제공받을 수 있다.
재정렬부(215)는 엔트로피 복호화부(210)에서 엔트로피 복호화된 비트스트림을 부호화부에서 재정렬한 방법을 기초로 재정렬을 수행할 수 있다. 1차원 벡터 형태로 표현된 계수들을 다시 2차원의 블록 형태의 계수로 복원하여 재정렬할 수 있다. 재정렬부에서는 부호화부에서 수행된 계수 스캐닝에 관련된 정보를 제공받고 해당 부호화부에서 수행된 스캐닝 순서에 기초하여 역으로 스캐닝하는 방법을 통해 재정렬을 수행할 수 있다.
역양자화부(220)는 부호화기에서 제공된 양자화 파라미터와 재정렬된 블록의 계수값을 기초로 역양자화를 수행할 수 있다.
역변환부(225)는 부호화기에서 수행한 양자화 결과에 대해 변환부에서 수행한 DCT 및 DST에 대해 역 DCT 및 역 DST를 수행할 수 있다. 역변환은 부호화기에서 결정된 변환 단위를 기초로 수행될 수 있다. 부호화기의 변환부에서는 DCT와 DST는 예측 방법, 현재 블록의 크기 및 예측 방향 등 복수의 정보에 따라 선택적으로 수행될 수 있고, 복호화기의 역변환부(225)에서는 부호화기의 변환부에서 수행된 변환 정보를 기초로 역변환을 수행할 수 있다.
예측부(230)는 엔트로피 복호화부(210)에서 제공된 예측된 블록(또는 예측된 샘플) 생성 관련 정보와 메모리(240)에서 제공된 이전에 복호화된 블록 또는 픽쳐 정보를 기초로 예측된 블록(또는 예측된 샘플)을 생성할 수 있다.
전술한 바와 같이 부호화기에서의 동작과 동일하게 화면 내 예측을 수행 시 예측 블록의 크기와 변환 블록의 크기가 동일할 경우, 예측 블록의 좌측에 존재하는 픽셀, 좌측 상단에 존재하는 픽셀, 상단에 존재하는 픽셀을 기초로 예측 블록에 대한 화면 내 예측을 수행하지만, 화면 내 예측을 수행 시 예측 블록의 크기와 변환 블록의 크기가 상이할 경우, 변환 블록을 기초로 한 참조 픽셀을 이용하여 화면 내 예측을 수행할 수 있다. 또한, 최소 크기의 부호화 블록에 대해서만 NxN 분할을 사용하는 화면 내 예측을 사용할 수 있다.
예측부(230)는 예측 블록 판별부, 화면 간 예측부 및 화면 내 예측부를 포함할 수 있다. 예측 블록 판별부는 엔트로피 복호화부에서 입력되는 예측 블록 정보, 화면 내 예측 방법의 예측 모드 정보, 화면 간 예측 방법의 움직임 예측 관련 정보 등 다양한 정보를 입력 받고 부호화 블록에서 예측 블록을 구분하고, 예측 블록이 화면 간 예측을 수행하는지 아니면 화면 내 예측을 수행하는지 여부를 판별할 수 있다. 화면 간 예측부는 부호화기에서 제공된 정보를 이용해 현재 예측 블록이 포함된 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐에 포함된 정보를 기초로 현재 예측 블록에 대한 화면 간 예측을 수행할 수 있다.
화면 간 예측을 수행하기 위해 부호화 블록을 기준으로 해당 부호화 블록에 포함된 예측 블록의 움직임 예측 방법이 스킵 모드(Skip Mode), 머지 모드(Merge 모드), AMVP 모드(AMVP Mode) 중 어떠한 방법인지 여부를 판단할 수 있다.
화면 내 예측부는 현재 픽쳐 내의 화소 정보를 기초로 예측된 블록(또는 예측된 샘플로도 표현할 수 있다.)을 생성할 수 있다. 예측 블록이 화면 내 예측을 수행한 예측 블록인 경우, 부호화기에서 제공된 예측 블록의 화면 내 예측 모드 정보를 기초로 화면 내 예측을 수행할 수 있다. 화면 내 예측부에는 AIS 필터, 참조 화소 보간부, DC 필터를 포함할 수 있다. AIS 필터는 현재 블록의 참조 화소에 필터링을 수행하는 부분으로서 현재 예측 블록의 예측 모드에 따라 필터의 적용 여부를 결정하여 적용할 수 있다. 부호화기에서 제공된 예측 블록의 예측 모드 및 AIS 필터 정보를 이용하여 현재 블록의 참조 화소에 AIS 필터링을 수행할 수 있다. 현재 블록의 예측 모드가 AIS 필터링을 수행하지 않는 모드일 경우, AIS 필터는 적용되지 않을 수 있다. 또한, 부호화기에서 마찬가지로 예측 블록을 생성 후 참조 픽셀과 함께 추가적으로 필터링을 수행할 수 있다.
참조 화소 보간부는 예측 블록의 예측 모드가 참조 화소를 보간한 화소값을 기초로 화면 내 예측을 수행하는 예측 블록일 경우, 참조 화소를 보간하여 정수값 이하의 화소 단위의 참조 화소를 생성할 수 있다. 현재 블록의 예측 모드가 참조 화소를 보간하지 않고 예측 블록을 생성하는 예측 모드일 경우 참조 화소는 보간되지 않을 수 있다. DC 필터는 현재 블록의 예측 모드가 DC 모드일 경우 필터링을 통해서 예측된 블록(또는 예측된 샘플로도 표현할 수 있다.)을 생성할 수 있다.
계층적 영상 복호화를 수행하는 경우 예측부(230)가 기본 계층(base layer)에 포함되어 있는지 아니면 향상 계층(enhanced layer)에 포함되어 있는지 여부에 따라 서로 다른 예측 동작을 수행할 수 있다. 예측부(230)가 기본 계층에 포함되어 있는 경우는 전술한 실시예와 동일하게 동작할 수 있다. 하지만, 예측부(230)가 향상 계층에 포함되어 있는 경우, 계층적 영상 복호화 모드에 따라 예측부가 화면 간 예측 및 화면 내 예측을 수행하지 않거나, 기본 계층의 예측부에서 생성된 영상 예측 관련 정보(예를 들어, 화면 내 예측 모드, 움직임 예측 관련 정보 등)을 수신받아 해당 정보를 기초로 예측을 수행할 수도 있다. 구체적인 예에 대해서는 추가적으로 상술한다. 복원된 블록 또는 픽쳐는 필터부(235)로 제공될 수 있다. 필터부(235)는 디블록킹 필터, 오프셋 보정부, ALF를 포함할 수 있다.
부호화기로부터 해당 블록 또는 픽쳐에 디블록킹 필터를 적용하였는지 여부에 대한 정보 및 디블록킹 필터를 적용하였을 경우, 강한 필터를 적용하였는지 또는 약한 필터를 적용하였는지에 대한 정보를 제공받을 수 있다. 복호화기의 디블록킹 필터에서는 부호화기에서 제공된 디블록킹 필터 관련 정보를 제공받고 복호화기에서 해당 블록에 대한 디블록킹 필터링을 수행할 수 있다. 부호화기에서와 마찬가지로 우선 수직 디블록킹 필터링 및 수평 디블록킹 필터링을 수행하되, 겹치는 부분에 있어서는 수직 디블록킹 및 수평 디블록킹 중 적어도 하나를 수행할 수 있다. 수직 디블록킹 필터링 및 수평 디블록킹 필터링이 겹치는 부분에서 이전에 수행되지 못한 수직 디블록킹 필터링 또는 수평 디블록킹 필터링이 수행될 수 있다. 이러한 디블록킹 필터링 과정을 통해서 디블록킹 필터링의 병행 처리(Parallel Processing)이 가능하다.
오프셋 보정부는 부호화 시 영상에 적용된 오프셋 보정의 종류 및 오프셋 값정보 등을 기초로 복원된 영상에 오프셋 보정을 수행할 수 있다.
ALF는 필터링을 수행 후 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. 부호화기로부터 제공된 ALF 적용 여부 정보, ALF 계수 정보 등을 기초로 부호화 블록에 ALF를 적용할 수 있다. 이러한 ALF 정보는 특정한 파라메터 셋에 포함되어 제공될 수 있다.
메모리(240)는 복원된 픽쳐 또는 블록을 저장하여 참조 픽쳐 또는 참조 블록으로 사용할 수 있도록 할 수 있고 또한 복원된 픽쳐를 출력부로 제공할 수 있다.
이하 본 발명의 실시예에서는 계층적 비디오 코딩(scalable video coding) 방법에 대해 개시한다. 계층적 비디오 코딩 방법은 기본 계층(base layer)에 있는 영상 정보를 기초로 향상 계층(enhancement layer)의 영상 정보를 예측하는 방법이다. 아래에서는 이러한 계층적 비디오 코딩 방법에 대해 개시한다.
도 3은 본 발명의 실시예에 따른 계층적 비디오 부호화 방법을 나타낸 개념도이다.
도 3을 참조하면, 영상은 기본 계층(base layer, 300)과 향상 계층(enhancement layer, 350)를 통해 부호화가 수행될 수 있다. 계층적 영상 부호화 방법에서는 계층적 영상 부호화 방법에 따라 기본 계층(300)에서 생성된 영상 예측 정보가 향상 계층(350)의 영상 부호화를 수행하기 위해 사용될 수 있다. 예를 들어, 영상 예측 정보는 기본 계층의 픽셀을 업샘플링하여 생성한 정보, 기본 계층에서 블록을 예측하기 위해 사용된 화면 내 예측 모드 정보, 움직임 예측 관련 정보 일 수 있다.
기본 계층(300)은 모드 결정부(305), 예측부(310), 변환 및 양자화부(T/Q, 325), 역변환 및 역양자화부(IT/IQ, 330), 엔트로피 부호화부(335), 복원부(315), 필터부(320)를 포함할 수 있다. 각 부분별 동작은 도 1에서 개시한 바와 유사하고 모드 결정부(305)는 영상 부호화 방법으로 화면 내 예측 방법을 사용할지 아니면 화면 간 예측 방법을 사용할지 여부에 대한 결정을 수행하는 구성부이다.
계층 간 영상 부호화 방법 중 하나로 기본 계층에서 생성된 블록의 픽셀 정보가 업샘플링하여 향상 계층에서 사용할 수 있다. 이러한 방법을 사용하는 경우, 기본 계층(300)의 블록의 픽셀 정보는 업샘플링부(340)에서 업샘플링되고, 추가의 계층 간 필터링부(IL-ALF, IL-SAO, 345, 347)를 거친 후에 향상 계층(350)으로 입력될 수 있다. 업샘플링을 수행하기 위해 보간(interpolation)을 수행할 수 있다.
필터링부(345, 347)로부터 얻어진 필터 정보는 필터 계수 부호화부(380)를 통하여 엔트로피 부호화 된고, 멀티플렉싱부(385)로 입력된다.
또 다른 계층 간 부호화 방법으로 기본 계층에서 블록의 예측에 사용된 화면 내 예측 모드 정보 또는 움직임 예측 관련 정보를 향상 계층에 전송하고, 이러한 예측 관련 정보를 향상 계층에서 이용할 수도 있다. 계층 간 영상 부호화 방법은 이뿐만 아니라 다양한 방법을 사용할 수 있고 기본 계층으로부터 영상 예측 정보를 수신하여 향상 계층에서 예측을 수행하는 방법을 계층 간 예측 방법(inter layer prediction)이라고 할 수 있다.
또한 향상 계층에서는 기본 계층으로부터 영상 예측 정보를 수신하지 않고 향상 계층의 정보만을 사용하여 영상 예측 및 부호화 과정을 수행할 수도 있다.
향상 계층(350)도 기본 계층(300)과 동일하게 모드 결정부(355), 예측부(360), 변환 및 양자화부(T/Q, 375), 역변환 및 역양자화부(IT/IQ, 380), 엔트로피 부호화부(385), 복원부(365), 필터부(370)를 포함할 수 있다. 각 구성부별 동작은 도 1에서 개시한 바와 동일한 구성을 가질 수 있다. 향상 계층(350)의 모드 결정부(355)는 향상 계층(350) 내의 영상 정보를 이용한 영상 예측 방법 또는 기본 계층의 영상 예측 정보를 이용한 영상 예측 방법(inter layer prediction) 등 여러 가지 영상 부호화 방법 중 하나의 예측 방법을 선택하기 위한 구성부로 사용될 수 있다.
즉, 향상 계층의 모드 결정부(355)에서는 영상 부호화부에서 수행할 영상 예측 방법을 선택할 수 있다.
업샘플링 및 계층 간 필터링부(340, 345, 347)에서 생성된 정보, 기본 계층 정보, 향상 계층 정보는 멀티플렉싱부(multiplexing, 385)에서 멀티플렉싱이 수행되어 계층적 비트스트림(scalable bitstream)으로 생성되어 영상 복호화부로 전송될 수 있다.
도 4는 본 발명의 실시예에 따른 계층적 비디오 복호화 방법을 나타낸 개념도이다.
도 4를 참조하면, 영상 정보는 영상 부호화부로부터 생성된 계층적 비트스트림(scalable bitstream)을 통해 전송될 수 있다. 계층적 비트스트림은 디멀티플렉싱부(demultiplexing, 405)에서 디멀티플렉싱 되어 기본 계층(400)의 엔트로피 복호화부(410), 향상 계층(450)의 엔트로피 복호화부(455) 및 필터 계수 엔트로피 복호화부(485)로 입력될 수 있다.
기본 계층(400)에 대해 우선적으로 기술하면, 기본 계층(400)의 엔트로피 복호화부(410)로 입력된 정보는 역양자화부 및 역변환부(IT/IQ, 415) 및 모드 결정부(420)로 입력될 수 있다. 복호화된 정보를 기초로 모드 결정부(420)에서는 화면 간 예측(inter prediction)을 수행할 것인지 아니면 화면 내 예측(intra prediction)을 수행할 것인지 여부에 대해 결정할 수 있다.
모드 결정부(420)에서 출력된 예측 모드 정보를 기초로 예측부(425)에서는 예측을 수행할 수 있다. 역양자화부 및 역변환부(415)에서는 엔트로피 복호화부(410)에서 생성된 잔차 정보를 역변환 및 역양자화하여 잔차 정보를 생성할 수 있다. 즉, 도 2의 영상 복호화 단계와 동일한 방법으로 영상 복호화가 수행될 수 있다.
기본 계층(400)에서 영상 복호화 과정을 마친 후 생성된 정보는 만약, 향상 계층(450)이 기본 계층(400)의 블록에 포함된 픽셀을 업샘플링한 정보를 사용하여 복호화를 수행할 경우 업샘플링부(440)로 전송될 수 있다. 업샘플링된 정보는 계층 간 필터링부(445, 447)을 거쳐서 향상 계층(450)으로 전송될 수 있다.
향상 계층(450)의 엔트로피 복호화부(455)에서 복호화된 정보를 기초로 향상 계층(450)의 모드 결정부(465)에서는 영상 부호화 단계에서 향상 계층(450)은 어떠한 영상 부호화 방법 또는 영상 예측 방법을 사용하여 부호화를 수행하였는지 여부를 판단할 수 있다.
향상 계층(450)의 모드 결정부(465)에서는 영상 부호화부의 향상 계층에서 부호화를 수행 시 사용한 영상 예측 방법과 동일한 예측 방법을 사용하여 영상 복호화를 수행할 수 있다. 영상 복호화 단계에 수행되는 영상 예측 방법으로 크게는 기본 계층(400)의 정보를 참조하여 영상 예측을 수행하는 방법 또는 기본 계층(400)의 정보를 사용하지 않고 영상 예측을 수행하는 방법을 사용할 수 있다. 기본 계층(400)의 정보를 사용하지 않고 영상 예측 수행하는 경우 향상 계층(450)에서는 기본 계층(400)으로부터 따로 영상 관련 정보를 수신하지 않는다.
이하 본 발명의 실시예에서는 계층적 비디오 코딩(scalable video coding) 방법에 대해 개시한다. 계층적 영상 복호화 방법 중 베이스 예측 모드는 향상 계층(enhancement layer)의 블록을 예측하기 위해 기본 계층(base layer)의 블록을 예측하기 위해 사용된 영상 예측 정보를 사용하는 모드를 의미할 수 있다. 영상 예측 정보는 예를 들어, 기본 계층의 블록에서 사용한 화면 내 예측 모드, 또는 움직임 예측 관련 정보 등이 될 수 있다.
도 5는 본 발명의 실시예에 따른 부호화 블록 스킵 모드를 이용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 5에서는 계층적 영상 복호화 방법 중 부호화 블록 스킵 모드를 사용한 영상 예측 방법에 대해 개시한다.
부호화 블록 스킵 모드는 기본 계층의 부호화 블록 단위(500)에 존재하는 영상 정보를 업샘플링(upsampling)하여 업샘플링된 기본 계층의 부호화 블록 단위(520)에 존재하는 영상 정보를 향상 계층의 부호화 블록 단위(540)에 대한 복원된 영상 정보로 사용하는 방법이다. 영상 정보는 픽셀 정보로서 휘도 픽셀값 또는 색차 픽셀값이 될 수 있다.
향상 계층에서는 업샘플링된 영상 정보에 대해 추가적으로 필터링을 통해 복원 블록을 생성할 수도 있다.
기본 계층의 부호화 블록 단위(500)에 포함된 영상 정보를 업샘플링하기 위해 다양한 방법이 사용될 수 있다. 예를 들어, DCT-IF(discrete cosine transform-interpolation filtering)를 사용하여 기본 계층에 존재하는 샘플들 사이의 값을 보간하여 영상을 업샘플링할 수 있다. 필터로 다양한 필터가 사용될 수 있는데 샘플의 성분에 따라 8 탭 DCT-IF는 휘도 샘플에 적용될 수 있고 4 탭 DCT-IF는 색차 샘플에 적용될 수 있다.
즉, 부호화 블록 스킵 모드를 사용하여 예측을 수행하는 경우, 향상 계층의 부호화 블록 단위(540)에 상응하는 위치에 존재하는 기본 계층의 부호화 블록 단위(500)의 영상 정보를 업샘플링을 한 값을 향상 계층의 부호화 블록 단위(540)에 대한 향상 계층의 복원 블록의 정보로서 사용할 수 있다. 즉, 향상 계층의 부호화 블록 단위(540)에 대해 부호화 블록 스킵 모드를 사용하는 경우 향상 계층의 부호화 블록 단위(540)에 포함되는 적어도 하나의 예측 블록에 대해서는 따로 영상 예측 과정이 수행될 필요가 없이 기본 계층의 부호화 블록 단위(500)의 영상 정보를 업샘플링한 정보를 향상 계층의 부호화 블록 단위(540)의 복원 블록으로 바로 사용할 수 있다. 기본 계층의 영상 단위와 향상 계층의 영상 단위가 대응된다 것은 각각의 계층의 픽쳐에서 영상 단위의 상대적인 위치가 동일하다는 의미를 가질 수도 있고, 계층 간 예측을 수행 시 계층 간에 참조되는 영상 단위라는 의미를 가질 수도 있다.
이하, 본 발명의 실시예에 따른 계층적 영상 복호화 방법에서는 설명의 편의상 향상 계층의 블록에 대응되는 기본 계층의 블록을 ‘기본 계층의 대응되는 블록’, ‘기본 계층 에서 대응되는 블록’, ‘대응되는 블록’ 또는 ‘대응 블록’이라는 용어로 정의하여 동일한 의미로 사용한다. 기본 계층에서 대응되는 단위는 블록 단위가 아닌 CTB(coding tree block), 슬라이스, 픽쳐 등과 같은 단위가 될 수도 있다.
부호화 블록 스킵 모드를 사용한 복호화 과정을 수행하기 위하여 부호화 블록이 부호화 블록 스킵 모드를 사용함을 지시하는 구문 요소(syntax element)가 새롭게 정의될 수 있다. 예를 들어, 부호화 블록 단위로 부호화 블록 스킵 모드가 수행되는 경우 특정 부호화 블록이 부호화 블록 스킵 모드를 수행함을 지시하는 구문 요소는 블록 정보를 전송하기 위한 비트스트림의 헤더 정보에 포함되어 전송될 수 있다.
예를 들어, 부호화 블록 스킵 모드를 지시하는 구문 요소는 비트스트림(bit-stream) 내 부호화 유닛 헤더(coding unit header)에 존재할 수 있고, 이러한 구문 요소의 명칭을 부호화 블록 스킵 플래그(CB_skip_flag)라고 정의하여 사용할 수 있다.
본 발명의 실시예에서 사용하는 여러 구문 요소의 명칭 및 구문 요소의 정의는 하나의 예시로서 동일한 구문 요소를 표현하기 위해 다른 구문 요소 명칭이 사용될 수 있다. 또한, 동일한 구문 요소의 기능이 다른 구문 요소에 포함되어 동일한 역할을 수행하는 것도 가능하다.
부호화 블록 단위에 대한 부호화 블록 스킵 플래그(CB_skip_flag)를 복호화한 결과 부호화 블록 단위가 부호화 블록 스킵 모드를 수행되는 것으로 판단되면(예를 들어, ON 또는 ‘1’), 현재 부호화 블록을 복호화하기 위한 구문 요소(syntax element) 및/또는 현재 부호화 블록 이하의 단위(예를 들어, 예측 블록, 변환 블록)에 관련된 구문 요소(syntax element)들이 명시적으로 비트스트림(bit-stream)으로 전송이 되지 않을 수 있다. 이러한 경우, 필요에 따라 영상 복호화부에서 일부 구문 요소(syntax element) 값을 유추(infer)하여 복호화 과정을 수행할 수 있다.
도 6은 본 발명의 실시예에 따른 부호화 블록 스킵 모드를 이용한 계층적 영상 복호화 방법을 나타낸 순서도이다.
도 6에서는 부호화 블록 스킵 플래그를 기초로 향상 계층의 부호화 블록 단위에 대해 부호화 블록 스킵 모드를 이용한 예측 방법을 적용할지 여부를 판단하는 방법에 대해 개시한다.
도 6을 참조하면, 부호화 블록 스킵 플래그(CB_skip_flag)의 값을 판단한다(단계 S600).
복호화된 부호화 블록 스킵 플래그에 대한 정보를 기초로 부호화 블록 단위에 부호화 블록 스킵 모드가 적용되는지 여부에 대한 정보를 얻을 수 있다. 예를 들어, 부호화 블록 스킵 플래그의 값이 ‘1’, 즉 ‘ON’인 경우 부호화 블록 단위에 대해 부호화 블록 스킵 모드가 적용됨을 지시하고 부호화 블록 스킵 플래그의 값이 ‘0’인 경우, 즉‘ON’이 아닌 경우 부호화 블록 단위가 부호화 블록 스킵 모드를 수행하지 않음을 지시할 수 있다.
부호화 블록 스킵 모드를 사용하여 부호화 블록 단위의 영상 정보를 복원한다(단계 S610).
부호화 블록 스킵 플래그의 값이 ‘1’이어서 부호화 블록 단위가 부호화 블록 스킵 모드를 사용하여 복호화를 수행하는 경우 기본 계층의 대응되는 부호화 블록 단위의 영상 정보를 업샘플링하여 향상 계층의 부호화 블록 단위의 복원 블록을 생성할 수 있다. 즉, 업샘플링된 기본 계층의 대응되는 부호화 단위의 영상 정보는 향상 계층에서는 부호화 블록 단위의 복원 블록 정보가 될 수 있다. 업샘플링 방법으로 다양한 방법이 사용될 수 있다.
향상 계층에서는 업샘플링된 영상 정보에 대해 주변의 블록들과의 단차를 줄이기 위해 추가적으로 필터링을 수행하여 복원 블록을 생성하는 것도 가능하다.
부호화 블록 스킵 플래그의 값이 ‘0’이어서 부호화 블록 단위가 예측 방법으로 부호화 블록 스킵 모드를 사용하지 않는 경우 다른 영상 예측 방법을 사용하여 부호화 블록 단위의 영상 정보를 예측한다(단계 S620).
부호화 블록 단위에 대한 다른 영상 예측 방법으로 향상 계층의 영상 정보만으로 복호화를 수행하는 방법을 사용할 수 있다. 이뿐만 아니라 이하 후술할 향상 계층에서의 다양한 계층간(inter-layer) 영상 예측 방법이 사용될 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
도 7은 본 발명의 실시예에 따른 슬라이스 스킵 모드를 이용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 7에서는 부호화 블록 이외의 단위에 대해 적용되는 계층간 스킵 모드를 이용한 영상 예측 방법에 대해 개시한다. 설명의 편의상 슬라이스(slice) 단위로 계층간 스킵 모드를 수행하는 슬라이스 스킵 모드에 대해 개시한다. 하지만, 슬라이스 단위가 아닌 CTB(coding tree block) 단위, 픽쳐 단위에 대해서도 계층 간 스킵 모드를 적용할 수 있고 이러한 경우, 계층간 스킵 모드를 특정하기 위해 CTB 스킵 모드, 픽쳐 스킵 모드 등 다양한 용어가 사용될 수 있다.
CTB는 슬라이스를 분할하는 기본 단위로서 NxN 크기의 정사각형 형태를 가질 수 있다. CTB를 루트(root)로 쿼드트리 구조(quardtree structure)로 분할하여 부호화 블록을 생성할 수 있다. 복수개의 CTB가 일정한 기준으로 모인 집합을 슬라이스라고 할 수 있고, 슬라이스가 모여 하나의 픽쳐를 생성할 수 있다.
도 7을 참조하면, 향상 계층에 대응되는 기본 계층의 슬라이스 단위(700)의 영상 정보를 업샘플링한다.
기본 계층의 영역에 존재하는 슬라이스 단위(700)의 영상 정보를 업샘플링하여 향상 계층의 슬라이스 단위(740)의 영상 정보를 복원할 수 있다. 슬라이스 스킵 모드는 전술한 부호화 블록 스킵 모드와 동일하게 기본 계층에서 대응되는 슬라이스 단위(700)의 영상 정보를 업샘플링한 슬라이스 단위(720)의 영상 정보를 향상 계층의 슬라이스 단위(740)에 대한 복원 영상 정보로서 사용할 수 있다.
즉, 슬라이스 스킵 방법을 사용하는 경우 슬라이스에 포함된 모든 CTB 들에 대하여 향상 계층에서는 따로 영상 예측 과정 및 추가의 복호화 과정을 수행할 필요가 없다. 즉, 기본 계층의 대응되는 슬라이스 단위(700)의 영상 정보를 업 샘플링한 슬라이스 단위(720)의 영상 정보(720)가 향상 계층에서 복원된 영상 정보(740)가 될 수 있다. 향상 계층에서는 슬라이스 단위(740)에 포함되는 복원된 영상 정보에 대해 필터링을 수행할 수도 있다.
향상 계층의 슬라이스 단위(740)가 슬라이스 스킵 모드를 사용함을 지시하는 구문 요소(syntax element)가 새롭게 정의되어 사용될 수 있다. 예를 들어, 특정한 슬라이스가 슬라이스 스킵 모드를 사용하여 예측을 수행하는 슬라이스인지 여부에 대한 플래그를 정의할 수 있다. 이러한 플래그 정보는 슬라이스 헤더에 포함되어 전송되거나, 슬라이스가 포함되는 데이터 단위인 NAL(network abstraction layer) 단위의 NAL 타입 정보로 정의되어 전송될 수도 있다.
도 8은 본 발명의 실시예에 따른 슬라이스 스킵 모드를 이용한 계층적 영상 복호화 방법을 나타낸 순서도이다.
도 8을 참조하면, 슬라이스 단위에서 슬라이스 스킵 모드가 사용되는지 여부를 판단한다(단계 S800).
복호화 장치는 슬라이스 단위 또는 NAL 단위 등과 같은 단위에서 특정한 슬라이스 단위에서 슬라이스 스킵 모드를 사용한 예측이 수행되는지 여부를 판단하기 위한 정보를 복호화할 수 있다. 예를 들어, 슬라이스 단위에서 정의된 플래그 정보인 슬라이스 스킵 플래그(slice_skip_flag)를 사용하여 슬라이스 단위에서 슬라이스 스킵 모드가 사용되어 복호화되는지 여부에 대한 정보를 판단할 수 있다. NAL 단위에서는 NAL 단위에 포함된 슬라이스에 대해 슬라이스 스킵 모드를 사용한 예측이 수행되는지 여부에 대한 정보를 NAL 타입 정보를 이용하여 지시할 수 있다.
복호화 장치는 슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수를 복호화한다(단계 S810).
복호화 장치는 슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수에 기초하여 슬라이스 스킵 모드를 사용하여 예측을 수행하는 슬라이스 내 전체 CTB 개수를 판단할 수 있다. 슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수는 슬라이스 스킵 모드를 사용하는 슬라이스 단위를 지시하기 위해 사용되는 변수의 예시이다. 따라서, 다른 변수를 사용하여 슬라이스 스킵 모드를 사용하는 슬라이스 단위를 판단하는 것도 가능하다.
도 9는 본 발명의 실시예에 따른 슬라이스 스킵 모드를 사용하는 슬라이스를 지시하기 위한 방법을 나타낸 개념도이다.
도 9를 참조하면, 하나의 픽쳐에 두 개의 슬라이스(제1 슬라이스(900), 제2 슬라이스(910 내지 950)가 존재할 수 있다. 제2 슬라이스는 네 줄에 해당하는 CTB(910, 920, 930, 940)와 추가의 3개의 CTB(950)를 포함할 수 있다.
슬라이스의 행의 개수에 대한 정보 및 슬라이스의 남은 CTB 개수에 대한 정보를 사용하여 슬라이스 스킵 모드를 사용하여 예측을 수행하는 특정 슬라이스 단위에 대한 정보를 얻을 수 있다. 즉, 해당 슬라이스 내 전체 CTB 개수를 알 수 있다.
제2 슬라이스의 경우 슬라이스의 행의 개수(num_rows_in slice)가 4에 해당하고, 남은 CTB의 개수(num_extra_CTBs_in_Col)의 개수는 3에 해당한다. 이러한 정보를 기초로 슬라이스 스킵 모드를 사용하여 예측을 수행하는 제2 슬라이스 내 전체 CTB 개수를 지시할 수 있다.
복호화 장치는 슬라이스 스킵 모드를 적용하여 슬라이스 단위 영상 정보 복원한다(단계 S820).
복호화 장치는 슬라이스 스킵 모드를 사용하는 것으로 지시된 슬라이스 단위에 대하여 슬라이스 스킵 모드를 사용하여 생성된 슬라이스 단위의 영상 정보를 복원된 슬라이스의 영상 정보로서 출력할 수 있다. 즉, 기본 계층의 대응되는 슬라이스 단위의 영상 정보를 업샘플링한 정보를 향상 계층의 슬라이스 단위의 복원 영상 정보로서 생성할 수 있다. 복원된 슬라이스 단위의 영상 정보에 대해서는 필터링이 적용되어 필터링된 영상 정보를 최종적인 슬라이스의 영상 정보로 출력할 수도 있다.
슬라이스 또는 CTB가 계층간 스킵 모드를 사용하는 경우, 향상 계층에서는 현재 단위에 대한 데이터(data) 부분의 구문 요소(syntax element) 및/또는 현재 단위 이하의 단위에 대한 구문 요소(syntax element)들이 명시적으로 비트스트림(bit-stream)으로 전송이 되지 않고, 필요에 따라 구문 요소 값들을 유추하여 복호화 과정을 수행할 수 있다.
슬라이스 단위로 스킵이 수행됨을 나타내기 위해 슬라이스 헤더의 슬라이스 스킵 플래그 정보만을 복호하여 향상 계층의 슬라이스 단위에 대한 슬라이스 스킵 모드를 수행할 수 있다. 또한, 슬라이스 스킵 플래그 정보에 따라 슬라이스에 포함되는 다른 복호화/복호화 단위의 계층간 스킵 모드를 지시하는 플래그 정보를 변화시켜 계층간 스킵 모드를 사용한 예측을 수행하는 것도 가능하다. 예를 들어, 슬라이스 스킵 플래그(slice_skip_flag)가 ON일 경우, 슬라이스 단위 내 모든 CTB의 CTB 스킵 플래그(CTB_skip_flag) 또는 부호화 블록의 부호화 블록 스킵 플래그(CB_skip_flag)를 ON으로 유도(infer)하여, 복호화 과정을 수행할 수도 있다. 부호화 블록 스킵 플래그(CB_skip_flag)는 부호화 블록 단위로 스킵이 수행됨을 나타내기 위한 플래그이고, CTB 스킵 플래그(CTB_skip_flag)는 CTB 단위로 스킵이 수행됨을 나타내기 위한 플래그이다. 이러한 방법을 사용하는 경우, 명시적으로 bit-stream 상의 CTB 스킵 플래그(CTB_skip_flag) 또는 부호화 블록 스킵 플래그(CB_skip_flag)의 값을 ON으로 전송한 경우와 동일한 효과를 가질 수 있다. 특정 플래그가 ‘on’이라는 것은 플래그가 지시하는 동작을 수행함을 의미한다.
다시 도 8를 참조하면, 단계 S800의 판단 결과, 슬라이스에서 슬라이스 스킵 모드가 사용되지 않는 경우, 다른 영상 예측 방법을 사용하여 영상 복호화를 수행할 수 있다(단계 S830).
예를 들어, 기본 계층에서 따로 영상 정보를 제공받지 않고 향상 계층에서 일반적인 복호화 과정을 수행하여 영상 복호화를 수행할 수 있다. 또 다른 예로, 기본 계층의 영상 정보를 사용한 다양한 계층 간 예측 방법을 사용할 수 있다.
도 10은 본 발명의 실시예에 따른 텍스쳐 예측 모드(texture prediction mode)를 이용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 10에서는 잔차 정보를 추가적으로 활용하는 텍스쳐 예측 모드를 사용한 영상 예측 방법에 대해 개시한다.
도 10을 참조하면, (1) 기본 계층에서 대응되는 부호화 단위(1000)의 영상 정보를 업샘플링한다.
(2) 기본 계층에서 대응되는 부호화 단위를 업샘플링한 부호화 단위(1020)의 영상 정보를 복호화된 잔차 신호(1040)와 더하여 향상 계층에서 부호화 단위(1060)의 복원된 영상 정보로 산출한다.
잔차 신호(또는 잔차 신호, 차분 신호)는 영상 부호화 단계에서 업샘플링된 기본 계층의 부호화 단위(1020)의 영상 정보와 향상 계층의 원본 블록의 영상 정보를 뺀 값이 될 수 있다. 잔차 정보는 부호화 단계에서 엔트로피 부호화되어 영상 복호화부로 전송되어 텍스쳐 예측을 수행하기 위해 사용될 수 있다.
영상 부호화 단계에서는 예측된 신호를 원본 블록에서 빼서 잔차 정보만을 엔트로피 부호화하여 전송할 수 있고, 영상 복호화 단계에서는 영상 부호화 단계에서 수행된 영상 예측 방법과 동일한 방법을 수행하여 예측을 수행한 후 영상 부호화부에서 전송된 잔차 정보를 더하여 복원된 영상 정보를 산출할 수 있다.
텍스쳐 예측 모드를 이용한 향상 계층의 영상 예측 방법에서는 향상 계층의 부호화 블록 단위(1060)에 대응되는 기본 계층의 부호화 블록 단위(1000)에 포함된 영상 정보를 업샘플링하고 업샘플링한 기본 계층의 부호화 블록 단위(1020)의 영상 정보에 복호화된 잔차 정보(1040)를 더하는 방법을 사용하여 영상 복호화를 수행할 수 있다.
향상 계층에서 부호화 블록 단위에 대해 텍스쳐 예측 모드가 수행되는 것을 지시하기 위해 새로운 구문 요소가 정의되어 사용될 수 있다. 부호화 블록 텍스쳐 예측 플래그(CB_texture_prediction_flag)는 부호화 블록이 텍스쳐 예측을 수행하는지 여부를 지시하기 위한 플래그 정보로서 사용될 수 있다.
예를 들어, 부호화 블록 텍스쳐 예측 플래그(CB_texture_prediction_flag)가 1일 경우, 부호화 블록 단위에서 텍스쳐 예측이 수행됨을 지시하고, 부호화 블록 텍스쳐 예측 플래그(CB_texture_prediction_flag)가 0인 경우, 부호화 블록 단위에서 텍스쳐 예측이 수행되지 않음을 지시할 수 있다.
텍스쳐 예측이 수행되는 부호화 블록 단위(1060)에 대해서는 향상 계층에서는 따로 예측을 수행하지 않으므로 예측을 수행하기 위한 추가적인 구문 요소 정보는 전송되지 않을 수 있다. 필요한 경우, 부호화 블록에 대한 복호화를 수행하기 위해 필요한 정보가 유추되어 사용될 수 있다.
도 11은 본 발명의 실시예에 따른 텍스쳐 예측 모드를 이용한 계층적 영상 복호화 방법을 나타낸 순서도이다.
도 11을 참조하면, 향상 계층의 부호화 블록 단위에 스킵 모드를 적용되는지 여부를 판단한다(단계 S1100).
스킵 플래그는 향상 계층에서 스킵 모드(skip mode)를 사용한 예측을 수행할지 여부를 판단하기 위한 플래그 정보일 수 있다. 여기서 사용되는 스킵 모드는 향상 계층의 영상 예측 정보만을 사용하여 복호화가 수행되는 스킵 모드로서 전술한 부호화 블록 스킵 모드, 슬라이스 스킵 모드와 다르다.
즉, 향상 계층의 부호화 블록 단위에서 스킵 모드가 수행되는 경우 향상 계층의 부호화 블록 단위에 포함되는 예측 블록은 기본 계층의 영상 정보를 사용하지 않고 예측을 수행할 수 있다. 향상 계층에서 수행되는 화면 간 예측 방법으로 스킵(SKIP) 모드, 머지 모드, AMVP(advanced motion vector prediction)가 사용될 수 있다. 스킵 플래그는 이러한 화면 간 예측 모드 중 스킵 모드를 사용하여 예측을 수행하는지 여부를 판단하는 플래그이다. 스킵 모드를 사용할 경우, 향상 계층에 미리 복호화된 다른 블록의 영상 예측 정보(예를 들어, 움직임 예측 관련 정보)를 사용하여 예측을 수행할 수 있다. 향상 계층에서 사용되는 스킵 모드에서도 예측된 블록에 대해 원본 블록과의 잔차 정보를 따로 부호화/복호화하지 않고 미리 복호화된 다른 블록에 대한 정보를 바로 복원 블록으로서 사용할 수 있다.
스킵 플래그 판단 결과 향상 계층의 부호화 블록 단위에 대해 스킵 모드가 적용되는 것으로 판단되는 경우, 스킵 모드를 사용하여 부호화 블록 단위에 포함되는 예측 블록을 예측하여 부호화 블록 단위의 영상 정보를 복원한다.
예를 들어, 스킵 플래그가 1 경우, 부호화 블록 단위에 포함되는 예측 블록에 대해 스킵 모드를 사용하여 복호화한 것으로 판단한다. 스킵 모드를 사용하는 예측 블록의 경우 향상 계층의 영상 예측 정보만을 이용하여 예측을 수행한다(단계 S1110).
스킵 플래그가 0일 경우 텍스쳐 예측 모드 플래그를 복호화하여(S1120) 부호화 블록 단위에 대해 텍스쳐 예측가 적용되는지 여부에 대해 판단할 수 있다(단계 S1130). 텍스쳐 예측 모드는 전술한 도 10에서 개시한 영상 예측 모드로서 기본 계층에서 대응되는 부호화 블록 단위의 영상 정보를 업샘플링하고 복호화된 잔차 정보를 더하여 향상 계층의 부호화 단위에 대한 영상 정보를 복원하는 방법을 가리킨다.
단계 S1130을 통해 텍스쳐 예측 모드 플래그를 복호화한 결과에 기초하여 부호화 블록 단위에 대해 텍스쳐 예측 모드가 적용되는지 여부를 판단할 수 있다. 텍스쳐 예측 모드 플래그는 부호화 블록 단위에 대해 텍스쳐 예측이 수행되는지 여부를 지시하는 플래그이다. 예를 들어, 텍스쳐 예측 모드 플래그가 ‘1’일 경우 부호화 블록 단위에 텍스쳐 예측 모드가 적용됨을 나타낼 수 있고, 텍스쳐 예측 모드 플래그가 ‘0’일 경우 부호화 블록 단위에 대해 텍스쳐 예측이 적용되지 않음을 나타낼 수 있다.
부호화 블록 단위에 텍스쳐 예측 모드가 적용되는 경우 부호화 블록 단위에 대해 텍스쳐 예측 모드를 사용한 예측을 수행하여 복호화를 수행한다(단계 S1140).
부호화 블록 단위에 텍스쳐 예측 모드가 적용되는 경우 향상 계층에서는 기본 계층에서 대응되는 부호화 블록 단위의 영상 정보를 업샘플링한 영상 정보와 잔차 정보를 더하여 복원 블록을 생성할 수 있다.
부호화 블록 단위에 텍스쳐 예측 모드가 적용되지 않는 경우 다른 영상 예측 방법을 사용하여 부호화 블록 단위에 대한 영상 예측이 수행될 수 있다(단계 S1150).
예를 들어, 부호화 블록 단위에 텍스쳐 예측 모드가 적용되지 않는 경우, 향상 계층에서는 기본 계층에서 전송된 영상 정보를 받지 않고 향상 계층에서만 영상 예측을 수행할 수 있다. 또 다른 방법으로 다른 계층 간 영상 예측 방법을 사용하여 부호화 단위에 대한 예측을 수행하는 것도 가능하다.
도 12는 본 발명의 실시예에 따른 슬라이스 단위로 텍스쳐 예측 모드를 수행하는 방법을 나타낸 개념도이다.
도 12에서도 설명의 편의상 슬라이스 단위로 텍스쳐 예측 모드를 사용하는 방법에 대해 개시하나, 슬라이스 단위가 아닌 CTB, 픽쳐 단위로 텍스쳐 예측 모드를 사용할 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
도 12를 참조하면, 향상 계층의 슬라이스 단위(1260)에서 텍스쳐 예측 모드를 사용하는 경우 기본 계층에서 대응되는 슬라이스 단위(1200)의 영상 정보를 업샘플링한다.
부호화 블록 단위로 텍스쳐 예측을 하는 경우와 동일하게 업샘플링된 슬라이스 단위(1220)에 잔차 정보(원본 정보과 예측 정보의 차이값)(1240)가 더해져 향상 계층의 슬라이스 단위(1260)의 영상 정보를 복원할 수 있다.
슬라이스 단위로 텍스쳐 예측이 적용된다는 정보를 전송하기 위해 새로운 구문 요소 정보가 정의될 수 있다. 예를 들어, 슬라이스 텍스쳐 예측 플래그(slice_texture_prediction_flag)와 같은 플래그 정보를 기초로 슬라이스 단위에 대한 텍스쳐 예측 모드의 수행 여부 정보를 전송하거나, NAL 단위의 타입 정보로 텍스쳐 예측 슬라이스(texture-prediction slice)라는 타입 정보를 새롭게 정의하여 해당 NAL 단위에 포함된 슬라이스에서 텍스쳐 예측 모드가 적용된다는 정보를 전송할 수 있다.
도 13은 본 발명의 실시예에 따른 슬라이스 단위로 텍스쳐 예측 모드를 수행하는 방법을 나타낸 순서도이다.
도 13을 참조하면, 슬라이스 단위로 텍스쳐 예측 모드가 적용되는지 여부에 대해 판단한다(단계 S1300).
슬라이스 단위로 텍스쳐 예측 모드가 적용되는지 여부에 대하여 슬라이스 단위로 전송되는 슬라이스 텍스쳐 예측 플래그(slice_texture_prediction_flag)를 사용하여 판단하거나, 전송된 NAL 단위의 NAL 타입 정보가 텍스쳐 예측 슬라이스(texture-prediction slice)인지 여부를 통해 확인할 수 있다.
슬라이스 단위로 텍스쳐 예측 모드가 적용되는 경우, 슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수를 복호화한다(단계 S1310).
슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수를 기초로 텍스쳐 예측 모드를 사용하는 슬라이스 내 전체 CTB 개수를 판단할 수 있다. 슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수는 슬라이스 텍스쳐 예측 모드를 사용하는 슬라이스를 결정하기 위한 하나의 변수로서 다른 변수를 사용하여 슬라이스 텍스쳐 예측 모드를 사용하는 슬라이스를 판단하는 것도 가능하다.
슬라이스에 대해 텍스쳐 예측 모드를 적용하여 예측을 수행한다(단계 S1330).
텍스쳐 예측 모드를 사용하는 슬라이스 단위에 대해 텍스쳐 예측 모드를 사용한 예측을 수행한다.
슬라이스 단위로 슬라이스 텍스쳐 예측 플래그(slice_texture_prediction_flag)가 전송되어 그 슬라이스에 포함되는 부호화/복호화 단위들이 텍스쳐 예측을 수행하도록 할 수 있다. 또 다른 방법으로, 슬라이스 단위로 텍스쳐 예측 플래그가 전송되는 경우 슬라이스 내의 모든 CTB의 CTB 텍스쳐 예측 플래그(CTB_texture prediction_flag)를 모두 on으로 설정하거나 슬라이스 내의 모든 부호화 블록의 부호화 블록 텍스쳐 예측 플래그(CB_texture_prediction_flag)를 ON으로 유도(infer)하여, 복호화 과정을 수행할 수 있다.
부호화 블록 텍스쳐 예측 플래그(CB_texture_prediction_flag)는 부호화 블록 단위로 텍스쳐 예측이 수행됨을 나타내기 위한 플래그이고, CTB 텍스쳐 예측 플래그(CTB_texture_prediction_flag)는 CTB 단위로 텍스쳐 예측이 수행됨을 나타내기 위한 플래그이다. 이러한 방법을 사용하는 경우, 명시적으로 비트스트림(bit-stream) 상의 CTB 텍스쳐 예측 플래그(CTB_texture_prediction_flag) 또는 부호화 블록 텍스쳐 예측 플래그(CB_texture_prediction_flag)의 값을 ON으로 전송한 경우와 동일한 효과를 가질 수 있다.
다시 도 13을 참조하면, 단계 S1300의 판단 결과, 슬라이스 단위에서 슬라이스 텍스쳐 예측 모드가 적용되지 않는 경우, 다른 예측 방법을 사용한 예측을 수행할 수 있다(단계 S1320).
예를 들어, 향상 계층에서는 일반적인 복호화 과정을 수행하여 영상 복호화를 수행할 수 있다. 일반적인 복호화 과정은 향상 계층의 정보만을 사용하여 복호화를 수행하는 계층 내 예측 방법 또는 다양한 계층 간 예측 방법을 사용할 수 있다.
또 다른 예로, 다른 계층 간 예측 방법을 사용하여 향상 계층에 대한 예측을 수행할 수 있다.
도 14는 본 발명의 실시예에 따른 기본 계층 모드를 사용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 14에서는 향상 계층의 부호화 블록에 대해 기본 계층에서 대응되는 부호화 블록 정보의 영상 예측 관련 정보를 사용하여 향상 계층의 부호화 블록에 대한 예측을 수행하는 방법에 대해 개시한다.
도 14를 참조하면, 기본 계층에서 대응되는 부호화 블록 단위(1400)에서 화면 내 예측 또는 화면 간 예측을 수행한 경우, 화면 내 예측에 사용된 정보(예를 들어, 화면 내 예측 모드) 또는 화면 간 예측에 사용된 정보(예를 들어, 움직임 예측 관련 정보)가 향상 계층에서 대응되는 부호화 블록 단위(1440)에서 영상 예측을 수행하는데 사용될 수 있다.
화면 내 예측을 예로 들면, 향상 계층의 부호화 블록 단위에 대응되는 기본 계층의 부호화 블록 단위에서 7번 화면 내 예측 모드를 사용하여 화면 내 예측을 수행한 경우, 향상 계층의 부호화 블록 단위에서도 7번 화면 내 예측 모드를 사용하여 부호화 블록에 대한 화면 내 예측을 수행할 수 있다.
화면 간 예측을 예로 들면, 향상 계층에 대응되는 기본 계층의 부호화 블록 단위에 포함된 예측 블록에서 특정한 참조 픽쳐에서 특정한 움직임 벡터를 사용하여 화면 간 예측을 수행하는 경우, 기본 계층에서 사용된 움직임 벡터에 대한 스케일링을 수행하고 상기 참조 픽쳐를 이용하여 향상 계층의 부호화 블록 단위에 포함된 예측 단위에 대한 화면 간 예측을 수행 시 사용할 수 있다.
위와 같은 방법은 하나의 예시로서 다른 화면 내 예측 관련 정보 및 다른 화면 간 예측 관련 정보를 기본 계층의 부호화 단위에서 유도하여 향상 계층의 부호화 단위에 대한 영상 예측에 사용할 수 있다. 기본 계층의 부호화 블록 단위에 포함된 예측 블록이 복수개인 경우 각각의 예측 블록에 대응되는 향상 계층의 부호화 블록 단위의 예측 블록에 대해 예측 관련 정보를 유도하여 블록에 대한 예측을 수행할 수 있다.
예를 들어, 하나의 부호화 블록(2Nx2N)이 4개의 예측 블록(NxN)으로 분할되고, 분할된 4개의 예측 블록이 각각 1, 2, 3, 4 번 화면 내 예측 모드를 수행할 경우, 기본 계층 부호화 블록 단위에 대응되는 향상 계층의 부호화 단위의 예측 블록들도 1, 2, 3, 4 번 화면 내 예측 모드를 사용하여 화면 내 예측을 수행할 수 있다.
도 14를 다시 참조하면, 기본 계층의 부호화 블록 단위(1400)에서 사용된 화면 내 예측 모드 정보가 복호화되어 향상 계층의 부호화 블록 단위(1440)에서 화면 내 예측을 수행하기 위해 사용된다. 화면 내 예측 모드 정보를 기초로 예측되어 생성된 블록은 영상 부호화기에서 전송된 잔차 정보(1420)와 더해져 향상 계층에서 복원 블록을 생성할 수 있다.
도 15는 본 발명의 실시예에 따른 기본 계층 모드를 사용한 계층적 영상 복호화 방법을 나타낸 순서도이다.
도 15를 참조하면, 복호화 장치는 스킵 플래그를 복호화한다(단계 S1500).
스킵 플래그는 전술한 바와 같이 향상 계층의 부호화 블록 단위에 포함되는 예측 단위가 스킵 모드를 사용한 예측 방법을 사용할지 여부를 판단하는 플래그일 수 있다.
부호화 블록 단위에 대해 스킵 모드가 적용되는 것으로 판단되는 경우 스킵 모드를 사용하여 부호화 블록 단위에 포함되는 예측 단위를 예측하여 복원 블록을 생성한다(단계 S1510).
예를 들어, 스킵 플래그가 1일 경우, 부호화 블록 단위에 대해 스킵 모드를 적용하여 부호화 블록 단위에 포함되는 예측 블록이 스킵 모드를 사용한 예측을 수행한 것으로 판단할 수 있다.
베이스 예측 모드를 사용하는지 여부를 판단한다(단계 S1520).
베이스 모드 플래그는 부호화 블록 단위에 포함되는 예측 단위에 대해 베이스 예측 모드를 이용한 예측이 수행되는지 여부를 지시하는 플래그이다. 스킵 플래그가 0인 경우 복호화 장치는 베이스 모드 플래그를 복호화하여 부호화 블록 단위에 베이스 예측 모드가 적용되는지 여부를 판단할 수 있다.
복호화된 베이스 모드 플래그 값을 기초로 부호화 블록 단위에 대해 베이스 예측 모드가 적용되는지 여부에 대한 판단을 수행할 수 있다. 베이스 모드 플래그가 ‘1’인 경우 부호화 블록 단위로 베이스 예측 모드가 적용되어 기본 계층의 영상 예측 정보를 기초로 향상 계층에 대한 예측이 수행되는지 여부를 지시할 수 있다. 베이스 모드 플래그가 ‘0’인 경우, 부호화 블록 단위에 대해 베이스 예측 모드가 적용되지 않고 다른 영상 예측 모드를 사용한 영상 복호화가 수행됨을 지시할 수 있다. 영상 예측 정보는 화면 내 예측 모드 정보, 움직임 예측 관련 정보 등 향상 계층에서 화면 내 예측 또는 화면 간 예측을 수행하는데 있어 사용되는 정보일 수 있다.
부호화 블록 단위에 베이스 예측 모드가 적용되는 경우 기본 계층의 영상 예측 정보를 유도하여 예측을 수행한다(단계 S1530).
부호화 블록 단위에서 베이스 예측 모드가 적용되는 경우 기본 계층에서 화면 내 예측 모드 정보, 움직임 예측 관련 정보 등을 유도할 수 있다. 향상 계층의 부호화 블록 단위에 대응되는 기본 계층의 부호화 블록 단위에 포함되는 예측 블록에서 사용한 영상 예측 정보는 향상 계층의 부호화 블록 단위에 포함된 예측 블록을 예측하기 위한 정보로서 사용될 수 있다. 기본 계층의 영상 예측 정보를 기초로 향상 계층에서 예측을 수행하여 생성된 블록은 잔차 정보와 더해져 복원 블록을 생성할 수 있다.
부호화 블록 단위에서 베이스 예측 모드가 적용되지 않는 경우 다른 영상 예측 방법을 사용할 수 있다(단계 S1540).
부호화 블록에 베이스 예측 모드가 적용되지 않는 경우, 예를 들어, 향상 계층에서는 기본 계층에서 전송된 영상 정보를 받지 않고 향상 계층의 영상 정보만을 사용하여 영상 예측을 수행할 수 있다. 예를 들어, 화면 내 예측 방법, 화면 간 예측 방법 중 머지 모드, AMVP를 기초로 한 화면 간 예측 방법을 사용하여 부호화 블록에 대한 예측을 수행할 수 있다.
또한, 베이스 예측 모드를 제외한 다른 계층 간 영상 예측 방법을 사용하여 영상 예측을 수행할 수 있다.
도 16은 본 발명의 실시예에 따른 슬라이스 단위로 베이스 예측 모드를 수행하는 방법을 나타낸 개념도이다.
도 16에서도 설명의 편의상 슬라이스 단위로 슬라이스 베이스 예측 모드를 사용하는 방법에 대해 개시하나, 슬라이스 단위가 아닌 CTB, 픽쳐 단위로 베이스 예측 모드를 사용할 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
도 16을 참조하면, 향상 계층의 슬라이스 단위(1640)에서 슬라이스 베이스 예측 모드를 사용하여 예측을 수행하는 경우 기본 계층에서 대응되는 슬라이스 영역(1600)에 포함되는 블록에서 예측 관련 정보를 유도한다.
예를 들어, 향상 계층의 슬라이스(1640)에 포함되는 특정한 예측 블록에 대한 정보를 대응되는 기본 계층의 슬라이스(1600)에 포함되는 예측 블록에서 예측 관련 정보(예를 들어, 화면 내 예측 모드 정보, 움직임 예측 관련 정보)를 유도하여 사용할 수 있다. 향상 계층의 슬라이스 단위(1640)에서는 기본 계층 슬라이스 단위(1600)의 예측 관련 정보를 기초로 예측을 수행한 후 잔차 정보(1620)과 더해져 복원된 슬라이스가 생성될 수 있다.
슬라이스 단위로 슬라이스 베이스 예측 모드가 적용된다는 정보를 전송하기 위해 새로운 구문 요소 정보가 정의될 수 있다. 예를 들어, 슬라이스 기본 계층 플래그(slice_base_layer_flag)와 같은 플래그 정보를 기초로 현재 슬라이스에서 슬라이스 베이스 예측 모드의 수행 여부 정보를 전송하거나, NAL 단위의 타입 정보로 기본 계층 슬라이스 타입(base-layer slice type)이라는 NAL 타입 정보를 새롭게 정의하여 해당 NAL 단위에 포함된 슬라이스가 슬라이스 베이스 예측 모드를 사용한다는 정보를 전송할 수 있다.
도 17은 본 발명의 실시예에 따른 슬라이스 단위로 베이스 예측 모드를 수행하는 방법을 나타낸 순서도이다.
도 17을 참조하면, 슬라이스 단위에 슬라이스 베이스 예측 모드가 적용되는지 여부에 대해 판단한다(단계 S1700).
슬라이스에 슬라이스 베이스 예측 모드가 적용되는지 여부에 대하여 슬라이스 단위로 전송되는 슬라이스 기본 계층 플래그(slice_base_layer_flag)를 사용하여 판단하거나, 전송된 NAL 단위의 NAL 타입 정보가 기본 계층 슬라이스 타입(base_layer_slice type)인지 여부를 통해 확인할 수 있다.
슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수를 복호화한다(단계 S1710).
슬라이스 단위로 슬라이스 베이스 예측 모드가 적용되는 경우, 슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수에 기초하여 베이스 예측 모드를 사용하는 슬라이스 내 전체 CTB 개수를 지시할 수 있다. 슬라이스의 행의 개수 정보 및 슬라이스의 남은 CTB 개수는 베이스 예측 모드를 사용하는 슬라이스를 지시하기 위한 하나의 변수로서 다른 변수를 사용하여 베이스 예측 모드가 적용되는 슬라이스 단위를 지시하는 것도 가능하다.
슬라이스 베이스 예측 모드를 사용하여 슬라이스에 대한 예측을 수행한다(단계 S1730).
슬라이스 단위로 슬라이스 기본 계층 플래그(slice_base_layer_flag)가 ‘on’으로 전송되는 경우를 예로 들면, 슬라이스 내의 모든 CTB의 CTB 기본 계층 플래그(CTB_base_layer_flag)를 ‘on’으로 유도하거나, 부호화 블록의 부호화 블록 기본 계층 플래그(CB CB_base_layer_flag)를 ‘on’으로 유도(infer)하여, 복호화 과정을 수행할 수 있다.
부호화 블록 기본 계층 플래그(CB_base_layer_flag)는 부호화 블록 단위로 베이스 예측 모드를 수행함을 나타내기 위한 플래그이고, CTB 기본 계층 플래그(CTB_base_layer_flag)는 CTB 단위로 베이스 예측 모드가 수행됨을 나타내기 위한 플래그이다. 이러한 방법을 사용하는 경우, 명시적으로 비트스트림(bit-stream) 상의 CTB 기본 계층 플래그(CTB_base_layer_flag) 또는 CB 기본 계층 플래그(CB_base_layer_flag)의 값을 ON으로 설정하여 전송한 경우와 동일한 효과를 가질 수 있다.
단계 S1700의 판단 결과, 슬라이스 단위에서 베이스 예측 모드가 적용되지 않는 경우, 향상 계층의 정보만을 사용하여 복호화를 수행하는 계층 내 예측 방법 또는 다양한 계층 간 예측 방법을 사용하여 슬라이스 단위에 포함되는 블록에 대한 예측을 수행할 수 있다(단계 S1720).
도 18은 본 발명의 실시예에 따른 부호화 블록 스킵 모드와 텍스쳐 예측 모드를 사용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 18에서는 전술한 부호화 블록 스킵 모드와 텍스쳐 예측 모드를 사용하는 영상 복호화 방법에 대해 개시한다.
도 18을 참조하면, 부호화 블록 스킵 모드 플래그를 복호화하여 부호화 블록 단위에 부호화 블록 스킵 모드가 적용되는지 여부를 판단한다(단계 S1800).
부호화 블록 스킵 모드는 전술한 바와 같이 잔차 정보 없이 기본 계층의 영상 정보를 업샘플링하여 영상 복호화를 수행하는 방법이다. 부호화 블록 스킵 모드 플래그를 우선적으로 복호화하여 부호화 블록 단위에 부호화 블록 스킵 모드가 적용되는지 여부를 판단한다.
부호화 블록 단위에 부호화 블록 스킵 모드가 적용되는 경우, 향상 계층의 부호화 블록 단위에 포함되는 예측 블록에 대해 부호화 블록 스킵을 사용하여 영상 예측을 수행할 수 있다(단계 S1810)
향상 계층에서 부호화 블록 스킵 방법은 기본 계층의 영상 정보를 업샘플링하여 향상 계층의 영상 정보를 생성하는 방법을 말한다.
부호화 블록 단위에 부호화 블록 스킵 모드가 적용되지 않는 경우, 스킵 플래그를 복호화하여 스킵 모드를 사용하여 복호화할지 여부를 판단한다 (단계 S1820).
스킵 플래그는 전술한 바와 같이 부호화 블록에 대해 향상 계층 내의 영상 예측 정보만으로 스킵 모드를 사용하여 복호화를 수행할지 여부를 나타내는 플래그이다. 스킵 모드는 향상 계층의 영상 정보만을 사용하여 영상 예측을 수행하는 방법으로서 따로 잔차 정보(원본 블록과 예측 블록의 차이값 정보)를 복원하지 않고 향상 계층에서 복호화된 움직임 예측 관련 정보만을 사용하여 영상을 복원하는 방법을 가리킨다.
스킵 모드를 사용하여 복호화를 수행한다(단계 S1830).
부호화 블록 단위에 스킵 모드가 적용되는 경우 향상 계층에서는 잔차 정보 없이 움직임 예측 관련 정보 또는 화면 내 예측 모드 정보 등을 이용하여 부호화 블록에 대한 복호화를 수행한다.
부호화 블록 단위에 스킵 모드가 적용되지 않는 경우, 텍스쳐 예측 모드 플래그를 복호화하여 부호화 블록 단위에 대해 텍스쳐 예측 모드가 적용되는지 여부를 판단한다 (단계 S1840).
스킵 모드가 적용되지 않는 경우 텍스쳐 예측 모드 플래그를 복호화하여 부호화 블록 단위에서 텍스쳐 예측 모드가 적용되는지 여부를 판단한다.
부호화 블록 단위에 대해 텍스쳐 예측 모드를 적용한다(단계 S1850).
단계 S1840을 통한 텍스쳐 예측 모드 플래그를 판단한 결과, 부호화 블록 단위에 대해 텍스쳐 예측 모드가 적용되는 경우, 부호화 블록 단위에 대해 텍스쳐 모드 예측를 적용할 수 있다. 텍스쳐 예측 모드는 전술한 바와 같이 대응되는 기본 계층의 부호화 블록 단위의 영상 정보를 업샘플링하고 복호화된 잔차 정보를 더하는 방법을 사용하여 복호화를 수행하는 방법을 가리킨다.
부호화 블록 단위에서 텍스쳐 예측 모드가 적용되지 않는 경우 다른 영상 예측 방법을 사용하여 영상 복호화를 수행한다(단계 S1860).
예를 들어, 단계 S1840을 통한 판단 결과 부호화 블록이 텍스쳐 예측 모드가 적용되지 않는 경우, 향상 계층에서는 기본 계층에서 전송된 영상 정보를 받지 않고 향상 계층의 영상 정보만을 사용하여 영상 예측을 수행할 수 있다. 또한 다른 계층 간 영상 예측 방법을 사용하는 것도 가능하다.
도 18에서는 부호화 블록 단위로 향상 계층에서 두 개의 예측 모드가 사용되는 방법에 대해 예시하였으나, 전술한 바와 같이 슬라이스나 CTB 단위로 해당 예측 모드가 사용되는지 여부에 대해 판단할 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
도 19는 본 발명의 실시예에 따른 스킵 모드, 텍스쳐 예측 모드, 베이스 예측 모드를 사용한 계층적 영상 복호화 방법을 나타낸 개념도이다.
도 19에서는 부호화 블록 단위에 대해 전술한 스킵 모드, 텍스쳐 예측 모드와 베이스 예측 모드가 적용되어 예측이 수행되는 방법에 대해 개시한다.
도 19를 참조하면, 스킵 모드 플래그를 복호화하여 부호화 블록이 스킵 모드가 적용되는지 여부를 판단한다(단계 S1900).
스킵 모드 플래그는 부호화 블록에 스킵 모드가 적용되어 영상 복호화를 수행하였는지 여부를 판단하기 위한 플래그 정보이다. 스킵 모드는 영상 정보를 사용하여 영상 예측을 수행하는 방법으로서 따로 잔차 정보(원본 블록과 예측 블록의 차이값 정보)를 복원하지 않고 향상 계층에서 복호화된 움직임 예측 관련 정보만을 사용하여 영상을 복원하는 방법을 가리킨다.
스킵 모드 플래그를 우선적으로 복호화하여 부호화 블록 단위에 스킵 모드가 적용되었는지 여부를 판단한다.
부호화 블록을 스킵 모드를 사용하여 복호화한다(단계 S1910).
부호화 블록 단위에 대해 스킵 모드가 적용될 경우 부호화 블록에 대해 향상 계층의 예측 관련 정보만을 사용하여 부호화 블록 단위에 대한 예측을 수행할 수 있다.
부호화 블록 단위에 스킵 모드가 적용되지 않는 경우, 텍스쳐 예측 플래그를 복호화하여 부호화 블록에 텍스쳐 예측 모드를 적용하여 복호화할지 여부를 판단한다(단계 S1920).
텍스쳐 예측 플래그는 부호화 블록 단위에 대해 텍스쳐 예측 모드를 적용하여 예측을 수행하는지 여부를 나타내는 플래그이다. 예를 들어, 텍스쳐 예측 플래그가 ‘1’인 경우 텍스쳐 예측 모드를 수행할 수 있고, 텍스쳐 예측 플래그가 ‘0’인 경우, 부호화 블록 단위에 대해 텍스쳐 예측이 아닌 다른 예측 방법이 수행함을 지시할 수 있다.
텍스쳐 예측을 수행한다(단계 S1930).
텍스쳐 예측 모드 플래그를 복호화한 결과 부호화 블록 단위에 텍스쳐 예측 모드가 적용되는 경우, 향상 계층의 부호화 블록에 대응되는 기본 계층의 블록을 업샘플링한 정보와 잔차 정보를 기초로 복원 블록을 생성할 수 있다.
부호화 블록 단위에 텍스쳐 예측 모드가 적용되지 않는 경우, 베이스 모드 플래그를 복호화하여 부호화 블록이 베이스 모드를 사용하여 복호화할지 여부를 판단한다(단계 S1940).
베이스 모드 플래그는 부호화 블록 단위에 대해 베이스 모드를 이용한 예측을 수행하는지 여부를 지시하는 플래그이다.
베이스 모드를 사용하여 복원 블록을 생성한다(단계 S1950).
베이스 모드 플래그를 복호화를 수행한 결과 부호화 블록 단위에 대해 베이스 모드를 적용되는 경우, 향상 계층의 부호화 블록 단위에 대응되는 기본 계층의 부호화 블록 단위에 포함되는 예측 블록의 예측 관련 정보(예를 들어, 화면 내 예측 모드 정보, 움직임 예측 관련 정보)를 유도하여 향상 계층에 대한 예측을 수행할 수 있다.
베이스 모드를 사용하지 않고 복원 블록을 생성한다(단계 S1960).
부호화 블록 단위에 대해 베이스 예측 모드가 적용되지 않는 경우, 향상 계층에서는 기본 계층에서 전송된 영상 정보를 받지 않고 향상 계층의 영상 정보만을 사용하여 영상 예측을 수행할 수 있다. 예를 들어, 화면 내 예측 방법, 화면 간 예측 방법 중 머지 모드, AMVP를 기초로 한 화면 간 예측 방법을 사용하여 부호화 블록에 대한 예측을 수행할 수 있다. 또한 다른 계층 간 예측 방법을 사용하여 향상 계층의 부호화 블록 단위에 대한 예측이 수행되는 것도 가능하다.
도 19에서는 부호화 블록 단위로 향상 계층에서 두 개의 예측 모드가 사용되는 방법에 대해 예시하였으나, 전술한 바와 같이 슬라이스나 CTB 단위로 해당 예측 모드가 사용되는지 여부에 대해 판단할 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
도 20은 본 발명의 실시예에 따른 부호화 블록 스킵 모드(CB 스킵 모드), 텍스쳐 예측 모드, 베이스 예측 모드를 사용한 계층적 영상 예측 방법을 나타낸 순서도이다.
도 20에서는 부호화 블록에 대해 CB 스킵 모드, 텍스쳐 예측 모드, 베이스 예측 모드가 적용되는지 여부를 판단하여 부호화 블록에 대한 복호화를 수행하는 방법에 대해 개시한다.
도 20을 참조하면, 부호화 블록 스킵 모드 플래그를 복호화하여 부호화 블록 단위에 대해 스킵 모드가 적용되는지 여부를 판단한다(단계 S2000).
부호화 블록 스킵 모드는 잔차 정보 없이 기본 계층의 부호화 블록 단위의 영상 정보를 업샘플링하여 영상 복호화를 수행하는 방법이다. 부호화 블록 스킵 모드 플래그를 우선적으로 복호화하여 부호화 블록 단위에 부호화 블록 스킵 모드가 적용되는지 여부를 판단한다.
부호화 블록 단위에 부호화 블록 스킵 모드가 적용되는 경우, 기본 계층의 영상 정보를 업샘플링한 영상을 생성한다(단계 S2010).
부호화 블록이 부호화 블록 스킵 모드를 사용하지 않는 경우, 부호화 블록 단위에 스킵 모드가 적용되는지 여부를 판단한다(단계 S2020).
스킵 플래그는 전술한 바와 같이 부호화 블록 단위에 대해 스킵 모드를 사용하여 복호화를 수행할지 여부를 나타내는 플래그이다. 스킵 모드는 영상 정보를 사용하여 영상 예측을 수행하는 방법으로서 따로 잔차 정보(원본 블록과 예측 블록의 차이값 정보)를 복원하지 않고 향상 계층에서 복호화된 움직임 예측 관련 정보만을 사용하여 영상을 복원하는 방법을 가리킨다.
스킵 모드를 사용하여 복호화를 수행한다(단계 S2030).
부호화 블록 단위에 스킵 모드가 적용되는 경우 향상 계층에서는 잔차 정보 없이 향상 계층에서 복호화된 움직임 예측 관련 정보 또는 화면 내 예측 모드 정보 등을 이용하여 부호화 블록에 대한 복호화를 수행한다.
스킵 모드가 적용되지 않는 경우 텍스쳐 예측 모드 플래그를 복호화하여 부호화 블록 단위에 포함된 예측 블록이 텍스쳐 예측 모드를 이용한 예측을 수행하는지 여부를 판단한다(단계 S2040).
부호화 블록 단위를 텍스쳐 예측 모드를 사용하여 복호화한다(단계 S2050).
단계 S2040을 통한 텍스쳐 예측 모드 플래그를 판단한 결과, 부호화 블록이 텍스쳐 예측 모드가 적용된 경우, 부호화 블록 단위에 대해 텍스쳐 모드 예측을 적용하여 복호화를 수행한다. 텍스쳐 예측 모드는 전술한 바와 같이 향상 계층의 부호화 블록 단위에 대응되는 기본 계층의 부호화 블록 정보를 업샘플링하고 복호화된 잔차 정보를 더하는 방법을 사용하여 복호화를 수행하는 방법을 가리킨다.
부호화 블록 단위에 대해 텍스쳐 예측 모드가 적용되지 않는 경우 베이스 모드 플래그를 복호화하여 부호화 블록이 베이스 모드를 사용하여 복호화할지 여부를 판단한다(단계 S2060).
베이스 모드 플래그는 부호화 블록 단위에서 베이스 예측 모드를 이용한 예측을 수행하는지 여부를 지시하는 플래그이다.
베이스 예측 모드를 사용하여 복원 블록을 생성한다(단계 S2070).
베이스 예측 모드 플래그를 복호화한 결과 부호화 블록 단위가 베이스 예측 모드를 사용한 예측을 수행하는 경우, 향상 계층의 부호화 블록에 대응되는 기본 계층의 부호화 블록의 예측 관련 정보(예를 들어, 화면 내 예측 모드 정보, 움직임 예측 관련 정보)를 유도하여 향상 계층의 부호화 블록에 포함된 예측 블록에 대한 예측을 수행할 수 있다.
베이스 예측 모드를 사용하지 않고 복원 블록을 생성한다(단계 S2080).
부호화 블록이 베이스 예측 모드를 사용하여 예측을 수행하지 않는 경우, 향상 계층에서는 기본 계층에서 전송된 영상 정보를 받지 않고 향상 계층의 영상 정보만을 사용하여 영상 예측을 수행할 수 있다. 예를 들어, 화면 내 예측 방법, 화면 간 예측 방법 중 머지 모드, AMVP를 기초로 한 화면 간 예측 방법을 사용하여 부호화 블록에 대한 예측을 수행할 수 있다. 또 다른 예로 다른 계층 간 영상 예측 방법을 사용하여 예측을 수행하는 것도 가능하다.
도 20에서는 부호화 블록 단위로 향상 계층에서 세 개의 예측 모드가 사용되는 방법에 대해 예시하였으나, 전술한 바와 같이 슬라이스나 CTB 단위로 해당 예측 모드가 사용되는지 여부에 대해 판단할 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
도 21은 본 발명의 실시예에 따른 부호화 블록 단위에서 베이스 예측 모드를 사용할 경우 화면 내 예측을 수행하는 방법을 나타낸 순서도이다.
도 21에서는 부호화 블록 단위에 베이스 예측 모드가 적용되어 예측을 수행할 경우로서 화면 내 예측을 수행하는 경우를 나타낸다.
도 21을 참조하면, 부호화 블록 단위에 베이스 예측 모드가 적용되는 경우, 기본 계층의 부호화 블록 단위에서 화면 내 예측 모드를 사용하는지 여부를 판단한다(단계 S2100).
본 발명의 실시예에 따르면, 기본 계층의 부호화 블록 단위에서 화면 내 예측 모드를 사용할 경우, 화면 내 예측을 수행하기 위한 기본 계층의 참조 픽셀의 활용 방법에 대해 결정할 수 있다. 따라서, 우선적으로 기본 계층의 부호화 블록 단위에 대해 화면 내 예측이 수행되는지에 대해 판단할 수 있다.
단계 S2100의 판단 결과, 기본 계층의 블록에서 화면 내 예측을 수행하지 않는 경우, 기본 계층의 대응되는 블록에서 베이스 예측 모드를 사용하여 영상 예측을 수행할 수 있다(S2110).
화면 내 예측을 수행하지 않는 경우, 기본 계층의 대응되는 블록에서는 화면 간 예측을 수행할 수 있고, 기본 계층의 대응되는 블록에서 움직임 예측 관련 정보를 유도하여 향상 계층의 블록에 대한 예측을 수행할 수 있다.
단계 S2100의 판단 결과, 기본 계층의 블록에서 화면 내 예측을 수행하는 경우, 기본 계층 예측자 플래그(BL_predictor_flag)를 복호화하여 기본 계층의 참조 픽셀을 이용할 것인지 여부를 판단한다(단계 S2120).
기본 계층 예측자 플래그는 향상 계층의 부호화 블록 단위에 포함되는 예측 블록들이 화면 내 예측을 수행함에 있어서 기본 계층의 참조 픽셀을 이용할 것인지 또는 향상 계층의 참조 픽셀을 사용할지 여부를 판단하기 위한 플래그로 사용될 수 있다.
기본 계층의 참조 픽셀 정보 기초로 예측 블록의 화면 내 예측을 수행한다(단계 S2130).
기본 계층 예측자 플래그가 1이면, 부호화 블록 단위에 포함되는 예측 블록이 기본 계층의 참조 픽셀을 이용하여 예측을 수행하는 블록인 것으로 판단될 수 있다.
기본 계층의 참조 픽셀 정보 기초로 예측 블록의 화면 내 예측을 수행하는 방법으로는 두 가지 방법이 사용될 수 있다. 도 22에서는 기본 계층의 참조 픽셀 정보 기초로 예측 블록의 화면 내 예측을 수행하는 두 가지 방법에 대해 개시한다.
도 22는 본 발명의 실시예에 따른 기본 계층의 참조 픽셀 정보 기초로 예측 블록의 화면 내 예측을 수행하는 방법을 나타낸 개념도이다.
도 22의 (A)를 참조하면, 우선, 복호화 장치는 기본 계층에서 참조 픽셀 정보(2200)를 복원하고 기본 계층 블록의 참조 픽셀 정보(2200)를 업샘플링(2210)한다.
기본 계층 블록의 참조 픽셀 정보(2200)를 업샘플링(2210)하여 향상 계층의 블록에 대한 화면 내 예측을 수행하기 위한 참조 픽셀 정보를 생성할 수 있다.
그런 후, 복호화 장치는 업샘플링된 참조 픽셀 정보를 기초로 향상 계층의 블록에 대한 예측된 블록(2220)을 생성한다.
향상 계층에서는 생성된 예측된 블록을 기초로 향상 계층의 부호화 블록에 대응되는 기본 계층의 부호화 블록에서 사용된 화면 내 예측 모드를 유도하여 화면 내 예측을 수행할 수 있다.
즉, 도 22의 (A)에서는 기본 계층의 참조 픽셀 정보(2200)를 업샘플링(2210)하여 업샘플링된 참조 픽셀 정보를 이용하여 예측된 블록(2220)을 생성하고, 생성된 예측된 블록을 기초로 화면 내 예측을 수행할 수 있다(2230).
도 22의 (B)는 기본 계층에서 참조 픽셀(2250)을 사용하여 예측을 수행한 정보를 업샘플링하는 방법을 사용할 수 있다.
우선, 복호화 장치는 기본 계층의 참조 픽셀(2250)을 기초로 향상 계층의 부호화 블록에 대응되는 기본 계층의 부호화 블록에서 사용된 화면 내 예측 모드를 사용하여 화면 내 예측을 수행한다.
도 22의 (A)와 달리 (B)는 기본 계층의 참조 픽셀 정보(2250)를 바로 이용하여 예측된 블록(2260)을 생성할 수 있다.
(2) 생성된 예측된 블록(2260)을 업샘플링(2270)하여 향상 계층의 블록에 대한 예측된 블록을 생성한다.
화면 내 예측을 수행하여 생성된 기본 계층의 예측된 블록(2260)을 업샘플링(2270)하여 향상 계층에 대한 예측된 블록(2280)을 생성한다.
즉, 도 22의 (B)에서는 기본 계층의 참조 픽셀 정보(2250)를 기초로 화면 내 예측을 수행한 후 예측된 블록(2260)을 기초로 업 샘플링(2270)을 수행하여 향상 계층을 위한 예측된 블록(2280)을 생성할 수 있다.
도 22에서 설명한 기본 계층의 참조 픽셀 정보를 이용한 두 가지 화면 내 예측 방법은 둘 중 어느 하나를 선택하여 수신단/송신단, 즉 부호화 장치 및 복호화 장치에서 동일하게 사용할 수도 있고, 하나의 구문 요소(syntax element)를 이용하여 두 가지 방법 중 어느 하나를 구분하여 사용할 수도 있다.
다시 도 21를 참조하면, 기본 계층 예측자 플래그가 0이면, 복호화 장치는 기본 계층의 참조 픽셀 정보가 아닌 향상 계층의 참조 픽셀 정보 기초로 예측 블록의 화면 내 예측을 수행한다(단계 S2140).
기본 계층 예측자 플래그를 기초로 판단한 결과 블록이 향상 계층의 참조 픽셀을 이용하여 예측을 수행하는 블록인 것으로 판단될 수 있다. 향상 계층의 참조 픽셀은 향상 계층의 블록에 존재하는 참조 픽셀 정보로서 향상 계층에서 이미 복호화하여 생성된 블록에 존재하는 픽셀 정보일 수 있다.
도 21에서는 부호화 블록 단위에 대해 기본 계층 예측자 플래그가 적용되는 경우에 대해 개시하였으나, 부호화 블록 단위가 아닌 CTB 또는 슬라이스에 포함되는 블록에 대해 기본 계층 예측자가 사용될지 여부에 대한 정보를 전송할 수 있다.
예를 들어, 슬라이스 헤더에서 전송된 기본 계층 예측자 플래그가 on이 되는 경우 향상 계층의 슬라이스에 포함된 블록 중 화면 내 예측 모드를 사용하는 블록들에 대하여 참조 픽셀 정보가 기본 계층에서 유도되어 사용될 수 있다.
도 23은 본 발명의 실시예에 따른 변환 블록의 분할 정보에 대한 계층적 비디오 코딩 방법을 나타낸 순서도이다.
도 23에서는 변환 블록에 대한 분할 정보를 기본 계층에서 획득할지 아니면 향상 계층에서 획득할지 여부에 판단하는 방법을 나타낸 순서도이다.
도 23을 참조하면, 기본 계층 변환 플래그(BL_transform_partition_flag)를 복호화한다(단계 S2300).
기본 계층 변환 플래그는 향상 계층에서 변환 블록의 분할 정보를 기본 계층의 변환 블록의 분할 정보로부터 유도하여 사용한 것인지 아니면, 향상 계층에서 변환 블록에 대한 분할 정보를 따로 결정하여 분할을 수행하는지 여부를 지시하기 위한 플래그이다.
기본 계층의 변환 블록 분할 정보를 사용하는지 여부를 판단한다(단계 S2310).
기본 계층 변환 플래그가 1, 즉 기본 계층의 변환 블록 분할 정보를 사용할 경우, 기본 계층의 변환 블록 분할 정보(split_transform_flag)에 기초하여 향상 계층의 변환 블록 분할을 수행한다(단계 S2320).
기본 계층의 변환 블록 분할 정보를 사용할 경우 기본 계층의 변환 블록 분할 정보를 읽어서 향상 계층에서 동일하게 사용할 수 있다. 즉, 향상 계층의 부호화 블록에 대응되는 기본 계층의 부호화 블록에 포함된 변환 블록이 분할된 방법과 동일한 방법으로 향상 계층의 부호화 블록을 분할하여 변환 블록을 생성할 수 있다.
기본 계층 변환 플래그가 0, 즉 기본 계층의 변환 블록 분할 정보를 사용하지 않을 경우, 향상 계층의 변환 블록 분할 정보(split_transform_flag) 에 기초하여 향상 계층의 변환 블록 분할을 수행한다(단계 S2330).
기본 계층의 변환 블록 분할 정보를 사용하지 않을 경우 향상 계층의 변환 블록 분할 정보를 복호화하여 향상 계층의 변환 블록 분할 정보를 획득할 수 있다.
도 23에서는 부호화 블록 단위에 대해 기본 계층의 변환 블록 분할 정보를 사용하는 방법에 대해 개시하였으나 부호화 블록 단위가 아닌 CTB 또는 슬라이스에 포함되는 블록에 대해 기본 계층의 변환 블록 분할 정보가 사용될지 여부에 대해 결정하여 플래그 정보를 통해 복호화될 수 있다.
예를 들어, 슬라이스 헤더에서 전송된 기본 계층의 변환 블록 분할 정보 플래그가 ‘on’이 되는 경우 향상 계층의 슬라이스에 포함된 변환 블록들에 대한 분할이 기본 계층의 슬라이스에 포함된 변환 블록들과 동일한 형태의 분할 정보를 가질 수 있다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
Claims (14)
- 화면 내 예측 방법에 있어서,기본 계층의 제1 영상 처리 단위가 화면 내 예측을 수행하는지 여부에 대해 판단하는 단계; 및상기 제1 영상 처리 단위가 화면 내 예측을 수행하는 경우, 기본 계층 예측자 정보를 복호화하는 단계; 및상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계를 포함하되,상기 기본 계층 예측자 정보는 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용할 것인지 상기 향상 계층의 참조 픽셀을 사용할 것인지 여부를 결정하기 위한 정보인 화면 내 예측 방법.
- 제1항에 있어서,상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계는,상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 제1 영상 처리 단위의 참조 픽셀을 기초로 화면 내 예측을 수행하여 화면 내 예측된 블록을 생성하는 단계; 및상기 화면 내 예측된 블록을 업샘플링하는 단계를 포함하는 화면 내 예측 방법.
- 제1항에 있어서,상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계는,상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 제1 영상 처리 단위의 참조 픽셀을 업샘플링하는 단계; 및상기 업샘플링된 상기 제1 영상 처리 단위의 참조 픽셀을 기초로 화면 내 예측을 수행하는 단계를 포함하는 화면 내 예측 방법.
- 제1항에 있어서,상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 단계는,상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 향상 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 향상 계층에서 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀 정보를 획득하는 단계; 및상기 참조 픽셀 정보를 기초로 화면 내 예측을 수행하는 단계를 포함하는 화면 내 예측 방법.
- 제1항에 있어서,상기 제1 영상 처리 예측하기 위해 사용된 영상 예측 정보를 사용하는 베이스 예측 모드를 이용하여 상기 제2 영상 처리 단위의 예측을 수행하는지 여부를 판단하는 단계를 더 포함하는 화면 내 예측 방법.
- 제1 항에 있어서,상기 제1 영상 처리 단위 및 상기 제2 영상 처리 단위는,코딩 블록(coding block) 단위, CTB(coding tree block) 단위, 슬라이스(slice) 단위 및 픽쳐(picture) 단위 중 하나의 영상 처리 단위인 화면 내 예측 방법.
- 제1항에 있어서, 상기 기본 계층 예측자 정보는,플래그 정보로서 플래그 값이 1일 경우, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하고, 플래그 값이 0일 경우, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 향상 계층의 참조 픽셀을 사용하는 것을 지시하는 계층적 영상 복호화 방법.
- 화면 내 예측을 수행하는 영상 복호화 장치에 있어서,기본 계층의 제1 영상 처리 단위가 화면 내 예측을 수행하는 경우, 기본 계층 예측자 정보를 복호화하는 엔트로피 복호화부; 및기본 계층의 제1 영상 처리 단위가 화면 내 예측을 수행하는지 여부에 대해 판단하고 상기 기본 계층 예측자 정보에 기초하여 향상 계층에서 상기 제1 영상 처리 단위에 대응되는 제2 영상 처리 단위에 대한 화면 내 예측을 수행하는 예측부를 포함하되,상기 기본 계층 예측자 정보는 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용할 것인지 상기 향상 계층의 참조 픽셀을 사용할 것인지 여부를 결정하기 위한 정보인 영상 복호화 장치.
- 제8항에 있어서, 상기 예측부는,상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 제1 영상 처리 단위의 참조 픽셀을 기초로 화면 내 예측을 수행하여 화면 내 예측된 블록을 생성하고 상기 화면 내 예측된 블록을 업샘플링하도록 구현되는 영상 복호화 장치.
- 제8항에 있어서, 상기 예측부는,상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 제1 영상 처리 단위의 참조 픽셀을 업샘플링하고 상기 업샘플링된 상기 제1 영상 처리 단위의 참조 픽셀을 기초로 화면 내 예측을 수행하도록 구현되는 영상 복호화 장치.
- 제8항에 있어서, 상기 예측부는,상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 향상 계층의 참조 픽셀을 사용하는 것을 지시하는 경우, 상기 향상 계층에서 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀 정보를 획득하고 상기 참조 픽셀 정보를 기초로 화면 내 예측을 수행하도록 구현되는 영상 복호화 장치.
- 제8항에 있어서, 상기 예측부는,상기 제1 영상 처리 예측하기 위해 사용된 영상 예측 정보를 사용하는 베이스 예측 모드를 이용하여 상기 제2 영상 처리 단위의 예측을 수행하는지 여부를 판단하는 영상 복호화 장치.
- 제8항에 있어서, 상기 제1 영상 처리 단위 및 상기 제2 영상 처리 단위는,코딩 블록(coding block) 단위, CTB(coding tree block) 단위, 슬라이스(slice) 단위 및 픽쳐(picture) 단위 중 하나의 영상 처리 단위인 영상 복호화 장치.
- 제8항에 있어서, 상기 기본 계층 예측자 정보는,플래그 정보로서 플래그 값이 1일 경우, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 기본 계층의 참조 픽셀을 사용하는 것을 지시하고, 플래그 값이 0일 경우, 상기 기본 계층 예측자 정보가 상기 제2 영상 처리 단위에 대한 화면 내 예측을 수행하기 위한 참조 픽셀로 상기 향상 계층의 참조 픽셀을 사용하는 것을 지시하는 계층적 영상 복호화 장치.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020120149718A KR20140092423A (ko) | 2012-12-20 | 2012-12-20 | 계층적 영상 부/복호화 모드 결정 방법 및 이러한 방법을 사용하는 장치 |
| KR10-2012-0149718 | 2012-12-20 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2014098368A1 true WO2014098368A1 (ko) | 2014-06-26 |
Family
ID=50978641
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2013/009836 Ceased WO2014098368A1 (ko) | 2012-12-20 | 2013-11-01 | 계층적 영상 부/복호화 모드 결정 방법 및 이러한 방법을 사용하는 장치 |
Country Status (2)
| Country | Link |
|---|---|
| KR (1) | KR20140092423A (ko) |
| WO (1) | WO2014098368A1 (ko) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3709640A4 (en) * | 2017-11-09 | 2021-08-25 | Samsung Electronics Co., Ltd. | DEVICE AND METHOD FOR ENCODING IMAGES ON THE BASIS OF MOTION VECTOR RESOLUTION, AND DECODING DEVICE AND METHOD |
| CN114051137A (zh) * | 2021-10-13 | 2022-02-15 | 上海工程技术大学 | 一种空间可分级视频编码方法及解码方法 |
| EP4250741A4 (en) * | 2020-12-08 | 2024-05-22 | Huawei Technologies Co., Ltd. | METHOD AND APPARATUS FOR ENCODING AND DECODING FOR ENHANCEMENT LAYER |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018056702A1 (ko) * | 2016-09-20 | 2018-03-29 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20090018019A (ko) * | 2005-01-21 | 2009-02-19 | 엘지전자 주식회사 | 베이스 레이어의 내부모드 블록의 예측정보를 이용하여 영상신호를 엔코딩/디코딩하는 방법 및 장치 |
| KR20090103675A (ko) * | 2008-03-28 | 2009-10-01 | 삼성전자주식회사 | 영상의 인트라 예측 모드 부호화/복호화 방법 및 장치 |
| KR20110014000A (ko) * | 2009-08-04 | 2011-02-10 | 광운대학교 산학협력단 | 영상 데이터의 디블록킹 필터링 장치 및 방법과 이를 이용한 영상 복호화 장치 및 방법 |
| KR20110113583A (ko) * | 2010-04-09 | 2011-10-17 | 엘지전자 주식회사 | 비디오 신호 처리 방법 및 장치 |
| WO2012098878A1 (ja) * | 2011-01-19 | 2012-07-26 | パナソニック株式会社 | 動画像符号化方法及び動画像復号化方法 |
-
2012
- 2012-12-20 KR KR1020120149718A patent/KR20140092423A/ko not_active Withdrawn
-
2013
- 2013-11-01 WO PCT/KR2013/009836 patent/WO2014098368A1/ko not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20090018019A (ko) * | 2005-01-21 | 2009-02-19 | 엘지전자 주식회사 | 베이스 레이어의 내부모드 블록의 예측정보를 이용하여 영상신호를 엔코딩/디코딩하는 방법 및 장치 |
| KR20090103675A (ko) * | 2008-03-28 | 2009-10-01 | 삼성전자주식회사 | 영상의 인트라 예측 모드 부호화/복호화 방법 및 장치 |
| KR20110014000A (ko) * | 2009-08-04 | 2011-02-10 | 광운대학교 산학협력단 | 영상 데이터의 디블록킹 필터링 장치 및 방법과 이를 이용한 영상 복호화 장치 및 방법 |
| KR20110113583A (ko) * | 2010-04-09 | 2011-10-17 | 엘지전자 주식회사 | 비디오 신호 처리 방법 및 장치 |
| WO2012098878A1 (ja) * | 2011-01-19 | 2012-07-26 | パナソニック株式会社 | 動画像符号化方法及び動画像復号化方法 |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3709640A4 (en) * | 2017-11-09 | 2021-08-25 | Samsung Electronics Co., Ltd. | DEVICE AND METHOD FOR ENCODING IMAGES ON THE BASIS OF MOTION VECTOR RESOLUTION, AND DECODING DEVICE AND METHOD |
| US11184620B2 (en) | 2017-11-09 | 2021-11-23 | Samsung Electronics Co., Ltd. | Apparatus and method for encoding image on basis of motion vector resolution, and decoding apparatus and method |
| US11700380B2 (en) | 2017-11-09 | 2023-07-11 | Samsung Electronics Co., Ltd. | Apparatus and method for encoding image on basis of motion vector resolution, and decoding apparatus and method |
| US11700379B2 (en) | 2017-11-09 | 2023-07-11 | Samsung Electronics Co., Ltd. | Apparatus and method for encoding image on basis of motion vector resolution, and decoding apparatus and method |
| EP4250741A4 (en) * | 2020-12-08 | 2024-05-22 | Huawei Technologies Co., Ltd. | METHOD AND APPARATUS FOR ENCODING AND DECODING FOR ENHANCEMENT LAYER |
| CN114051137A (zh) * | 2021-10-13 | 2022-02-15 | 上海工程技术大学 | 一种空间可分级视频编码方法及解码方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20140092423A (ko) | 2014-07-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2017018664A1 (ko) | 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 | |
| WO2018097626A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2018155986A2 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2017176030A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2019221465A1 (ko) | 영상 복호화 방법/장치, 영상 부호화 방법/장치 및 비트스트림을 저장한 기록 매체 | |
| WO2012043989A2 (ko) | 블록 분할 방법 및 복호화 장치 | |
| WO2017222326A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2018026219A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2020251330A1 (ko) | 단순화된 mpm 리스트 생성 방법을 활용하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 | |
| WO2017171370A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2018070809A1 (ko) | 영상 처리 방법, 그를 이용한 영상 복호화 및 부호화 방법 | |
| WO2017026681A1 (ko) | 비디오 코딩 시스템에서 인터 예측 방법 및 장치 | |
| WO2018030599A1 (ko) | 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 | |
| WO2018062892A1 (ko) | 가중치 인덱스에 기초하여 최적의 예측을 수행하는 방법 및 장치 | |
| WO2020096427A1 (ko) | 영상 신호 부호화/복호화 방법 및 이를 위한 장치 | |
| WO2020050685A1 (ko) | 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2020071616A1 (ko) | Cclm에 기반한 인트라 예측 방법 및 그 장치 | |
| WO2019182295A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2019190199A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2016190627A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2020130680A1 (ko) | 인트라 예측을 사용하여 비디오 신호를 처리하기 위한 방법 및 장치 | |
| WO2019190204A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2021172914A1 (ko) | 레지듀얼 코딩에 대한 영상 디코딩 방법 및 그 장치 | |
| WO2018174457A1 (ko) | 영상 처리 방법 및 이를 위한 장치 | |
| WO2021040406A1 (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: 13866293 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: 13866293 Country of ref document: EP Kind code of ref document: A1 |