WO2013169025A1 - 스케일러블 비디오 인코딩/디코딩 방법 및 장치 - Google Patents

스케일러블 비디오 인코딩/디코딩 방법 및 장치 Download PDF

Info

Publication number
WO2013169025A1
WO2013169025A1 PCT/KR2013/004069 KR2013004069W WO2013169025A1 WO 2013169025 A1 WO2013169025 A1 WO 2013169025A1 KR 2013004069 W KR2013004069 W KR 2013004069W WO 2013169025 A1 WO2013169025 A1 WO 2013169025A1
Authority
WO
WIPO (PCT)
Prior art keywords
sample
prediction
samples
current block
layer
Prior art date
Application number
PCT/KR2013/004069
Other languages
English (en)
French (fr)
Inventor
김철근
박준영
헨드리헨드리
전병문
김정선
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2013169025A1 publication Critical patent/WO2013169025A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability

Definitions

  • the present invention relates to video compression techniques, and more particularly, to a method and apparatus for performing scalable video coding (SVC).
  • SVC scalable video coding
  • video quality of the terminal device can be supported and the network environment is diversified, in general, video of general quality may be used in one environment, but higher quality video may be used in another environment. .
  • a consumer who purchases video content on a mobile terminal can view the same video content on a larger screen and at a higher resolution through a large display in the home.
  • the quality of the image for example, the image quality, the resolution of the image, the size of the image, It is necessary to provide scalability in the frame rate of video and the like.
  • the present invention provides a method and apparatus for increasing compression efficiency in scalable video encoding / decoding.
  • the present invention provides a method and apparatus for predicting an image of a current layer using information of another layer.
  • a scalable video decoding method including an enhancement layer including a current block and a base layer.
  • the scalable video decoding method includes deriving a reference sample for intra prediction of the current block and generating a prediction sample of the current block by performing intra prediction on the current block based on the reference sample. do.
  • At least one of the reference samples derived based on the neighboring samples located around the current block may be replaced with a sample of the base layer.
  • a scalable video encoding method including an enhancement layer including a current block and a base layer.
  • the scalable video encoding method includes deriving a reference sample for intra prediction of the current block and generating an prediction sample of the current block by performing intra prediction on the current block based on the reference sample. do.
  • At least one of the reference samples derived based on the neighboring samples located around the current block may be replaced with a sample of the base layer.
  • prediction accuracy and prediction performance of the current layer may be improved by generating a prediction sample of the current layer using available reference information of another layer instead of unavailable reference information of the current layer.
  • the prediction accuracy and the prediction in the encoding apparatus and the decoding apparatus are performed by performing the intra prediction of the prediction target sample based on a reference sample that is spatially adjacent to the current prediction target sample. It can improve performance.
  • FIG. 1 is a block diagram schematically illustrating a video encoding apparatus supporting scalability according to an embodiment of the present invention.
  • FIG. 2 is a block diagram schematically illustrating a video decoding apparatus supporting scalability according to an embodiment of the present invention.
  • FIG. 3 is a block diagram illustrating an example of inter-layer prediction in an encoding apparatus and a decoding apparatus that perform scalable coding according to the present invention.
  • FIG. 4 is a diagram schematically showing an example of the structure of a processing unit in a system to which the present invention is applied.
  • FIG. 5 is a diagram illustrating an example of an intra prediction mode to which the present invention can be applied.
  • FIG. 6 is a diagram illustrating a current block and neighboring blocks on which intra prediction is performed.
  • FIG. 7 is a diagram illustrating a current block and neighboring samples (or pixels) positioned around the current block for explaining an intra prediction method according to an embodiment of the present invention.
  • FIG. 8 illustrates a current block and neighboring samples (or pixels) on which intra prediction is performed according to an embodiment of the present invention.
  • FIG. 9 is a diagram illustrating a current block and neighboring samples (or pixels) positioned around the current block for explaining an intra prediction method according to another exemplary embodiment of the present invention.
  • FIG. 10 is a diagram illustrating a current block and neighboring samples (or pixels) positioned around the current block for explaining an intra prediction method according to another exemplary embodiment of the present invention.
  • FIG. 11 is a flowchart schematically illustrating an intra prediction method according to an embodiment of the present invention.
  • each of the components in the drawings described in the present invention are shown independently for the convenience of description of the different characteristic functions in the video encoding apparatus / decoding apparatus, each component is a separate hardware or separate software It does not mean that it is implemented.
  • two or more of each configuration may be combined to form one configuration, or one configuration may be divided into a plurality of configurations.
  • Embodiments in which each configuration is integrated and / or separated are also included in the scope of the present invention without departing from the spirit of the present invention.
  • input signals may be processed per layer.
  • the input signals may have at least one of resolution, frame rate, bit-depth, color format, and aspect ratio. Can be.
  • scalable coding includes scalable encoding and scalable decoding.
  • prediction between layers is performed by using differences between layers, that is, based on scalability, thereby reducing overlapping transmission / processing of information and increasing compression efficiency.
  • FIG. 1 is a block diagram schematically illustrating a video encoding apparatus supporting scalability according to an embodiment of the present invention.
  • the encoding apparatus 100 includes an encoder 105 for layer 1 and an encoder 135 for layer 0.
  • Layer 0 may be a base layer, a reference layer, or a lower layer
  • layer 1 may be an enhancement layer, a current layer, or an upper layer.
  • the encoding unit 105 of the layer 1 includes a prediction unit 110, a transform / quantization unit 115, a filtering unit 120, a decoded picture buffer (DPB) 125, an entropy coding unit 130, and a MUX (Multiplexer, 165). ).
  • the encoding unit 135 of the layer 0 includes a prediction unit 140, a transform / quantization unit 145, a filtering unit 150, a DPB 155, and an entropy coding unit 160.
  • the prediction units 110 and 140 may perform inter prediction and intra prediction on the input image.
  • the prediction units 110 and 140 may perform prediction in predetermined processing units.
  • the performing unit of prediction may be a coding unit (CU), a prediction unit (PU), or a transform unit (TU).
  • the prediction units 110 and 140 may determine whether to apply inter prediction or intra prediction in a CU unit, determine a mode of prediction in a PU unit, and perform prediction in a PU unit or a TU unit. have. Prediction performed includes generation of a prediction block and generation of a residual block (residual signal).
  • a prediction block may be generated by performing prediction based on information of at least one picture of a previous picture and / or a subsequent picture of the current picture.
  • prediction blocks may be generated by performing prediction based on pixel information in a current picture.
  • inter prediction there are a skip mode, a merge mode, a motion vector predtiction (MVP) method, and the like.
  • a reference picture may be selected with respect to the current PU that is a prediction target, and a reference block corresponding to the current PU may be selected within the reference picture.
  • the prediction unit 160 may generate a prediction block based on the reference block.
  • the prediction block may be generated in integer sample units or may be generated in integer or less pixel units.
  • the motion vector may also be expressed in units of integer pixels or units of integer pixels or less.
  • motion information that is, information such as an index of a reference picture, a motion vector, and a residual signal
  • residuals may not be generated, transformed, quantized, or transmitted.
  • the prediction mode may have 33 directional prediction modes and at least two non-directional modes.
  • the non-directional mode may include a DC prediction mode and a planner mode (Planar mode).
  • a prediction block may be generated after applying a filter to a reference sample.
  • the PU may be a block of various sizes / types, for example, in the case of inter prediction, the PU may be a 2N ⁇ 2N block, a 2N ⁇ N block, an N ⁇ 2N block, an N ⁇ N block (N is an integer), or the like.
  • the PU In the case of intra prediction, the PU may be a 2N ⁇ 2N block or an N ⁇ N block (where N is an integer) or the like.
  • the PU of the NxN block size may be configured to apply only in a specific case.
  • the NxN block size PU may be used only for the minimum size CU or only for intra prediction.
  • PUs such as NxmN blocks, mNxN blocks, 2NxmN blocks, or mNx2N blocks (m ⁇ 1) may be further defined and used.
  • the prediction units 110 and 140 may perform prediction on the layer 1 by using the information of the layer 0.
  • a method of predicting information of a current layer using information of another layer is referred to as inter-layer prediction for convenience of description.
  • Information of the current layer that is predicted using information of another layer may include texture, motion information, unit information, predetermined parameters (eg, filtering parameters, etc.).
  • information of another layer used for prediction for the current layer may include texture, motion information, unit information, and predetermined parameters (eg, filtering parameters).
  • unit (CU, PU, and / or TU) information of a base layer is derived and used as unit information of an enhancement layer, or based on unit information of a base layer.
  • Unit information of the treatment layer may be determined.
  • the unit information may include information at each unit level.
  • information about a partition (CU, PU and / or TU) may include information on transform, information on prediction, and information on coding.
  • information on a PU partition and information on prediction (eg, motion information, information on a prediction mode, etc.) may be included.
  • the information about the TU may include information about a TU partition, information on transform (transform coefficient, transform method, etc.).
  • the unit information may include only the partition information of the processing unit (eg, CU, PU, TU, etc.).
  • Interlayer motion prediction another example of interlayer prediction, is also called interlayer inter prediction.
  • prediction of a current block of layer 1 may be performed using motion information of layer 0 (reference layer or base layer).
  • motion information of a reference layer may be scaled.
  • inter-layer texture prediction is also called inter-layer intra prediction or intra base layer (BL) prediction.
  • Inter layer texture prediction may be applied when a reference block in a reference layer is reconstructed by intra prediction.
  • the texture of the reference block in the reference layer may be used as a prediction value for the current block of the enhancement layer.
  • the texture of the reference block may be scaled by upsampling.
  • inter-layer parameter prediction may derive a parameter used in the base layer to reuse it in the enhancement layer or predict a parameter for the enhancement layer based on the parameter used in the base layer.
  • interlayer prediction As an example of interlayer prediction, interlayer texture prediction, interlayer motion prediction, interlayer unit information prediction, and interlayer parameter prediction have been described. However, the interlayer prediction applicable to the present invention is not limited thereto.
  • the prediction unit may use inter-layer residual prediction, which predicts the residual of the current layer using residual information of another layer as inter-layer prediction, and performs prediction on the current block in the current layer based on the residual layer.
  • the prediction unit is an interlayer prediction interlayer that performs prediction on the current block in the current layer by using a difference (difference image) image between the reconstructed picture of the current layer and the resampled picture of another layer as the interlayer prediction. Differential prediction may also be performed.
  • the transform / quantization units 115 and 145 may perform transform on the residual block in transform block units to generate transform coefficients and quantize the transform coefficients.
  • the transform block is a block of samples and is a block to which the same transform is applied.
  • the transform block can be a transform unit (TU) and can have a quad tree structure.
  • the transform / quantization units 115 and 145 may generate a 2D array of transform coefficients by performing transform according to the prediction mode applied to the residual block and the size of the transform block. For example, if intra prediction is applied to a residual block and the block is a 4x4 residual array, the residual block is transformed using a discrete sine transform (DST), otherwise the residual block is transformed into a discrete cosine transform (DCT). Can be converted using.
  • DST discrete sine transform
  • DCT discrete cosine transform
  • the transform / quantization units 115 and 145 may fixedly use a specific transform regardless of the prediction mode and the size of the transform block. For example, the transform / quantization units 115 and 145 may apply only DST to all transform blocks. In addition, the transform / quantization units 115 and 145 may apply only the DCT to all of the transform blocks.
  • the transform / quantization unit 115 and 145 may quantize the transform coefficients to generate quantized transform coefficients.
  • the transform / quantization units 115 and 145 may transfer the quantized transform coefficients to the entropy coding units 130 and 160.
  • the transform / quantization units 115 and 145 may rearrange the two-dimensional array of quantized transform coefficients into one-dimensional arrays according to a predetermined scan order and transfer them to the entropy coding units 130 and 160.
  • the transform / quantizers 115 and 145 may transfer the reconstructed block generated based on the residual and the predictive block to the filtering units 120 and 150 for inter prediction.
  • the transform / quantization units 115 and 145 may skip transform and perform quantization only or omit both transform and quantization as necessary.
  • the transform / quantization unit 115 or 145 may omit the transform on a block having a specific prediction method or a specific size block or a block of a specific size to which a specific prediction block is applied.
  • the entropy coding units 130 and 160 may perform entropy encoding on the quantized transform coefficients.
  • Entropy encoding may use, for example, an encoding method such as Exponential Golomb, Context-Adaptive Binary Arithmetic Coding (CABAC), or the like.
  • CABAC Context-Adaptive Binary Arithmetic Coding
  • the filtering units 120 and 150 may apply a deblocking filter, an adaptive loop filter (ALF), and a sample adaptive offset (SAO) to the reconstructed picture.
  • ALF adaptive loop filter
  • SAO sample adaptive offset
  • the deblocking filter may remove distortion generated at the boundary between blocks in the reconstructed picture.
  • the adaptive loop filter may perform filtering based on a value obtained by comparing the reconstructed image with the original image after the block is filtered through the deblocking filter.
  • the SAO restores the offset difference from the original image on a pixel-by-pixel basis to the residual block to which the deblocking filter is applied, and is applied in the form of a band offset and an edge offset.
  • the filtering units 120 and 150 may apply only the deblocking filter, only the deblocking filter and the ALF, or may apply only the deblocking filter and the SAO without applying all of the deblocking filter, ALF, and SAO.
  • the DPBs 125 and 155 may receive the reconstructed block or the reconstructed picture from the filtering units 120 and 150 and store the received reconstruction picture.
  • the DPBs 125 and 155 may provide a reconstructed block or picture to the predictors 110 and 140 that perform inter prediction.
  • Information output from the entropy coding unit 160 of layer 0 and information output from the entropy coding unit 130 of layer 1 may be multiplexed by the MUX 165 and output as a bitstream.
  • the encoding unit 105 of the layer 1 has been described as including the MUX 165.
  • the MUX is separate from the encoding unit 105 of the layer 1 and the encoding unit 135 of the layer 0. It may be a device or a module of.
  • FIG. 2 is a block diagram schematically illustrating a video decoding apparatus supporting scalability according to an embodiment of the present invention.
  • the decoding apparatus 200 includes a decoder 210 of layer 1 and a decoder 250 of layer 0.
  • Layer 0 may be a base layer, a reference layer, or a lower layer
  • layer 1 may be an enhancement layer, a current layer, or an upper layer.
  • the decoding unit 210 of the layer 1 includes an entropy decoding unit 215, a reordering unit 220, an inverse quantization unit 225, an inverse transform unit 230, a prediction unit 235, a filtering unit 240, and a memory 245. ) May be included.
  • the decoding unit 250 of the layer 0 includes an entropy decoding unit 255, a reordering unit 260, an inverse quantization unit 265, an inverse transform unit 270, a prediction unit 275, a filtering unit 280, and a memory 285. ) May be included.
  • the DEMUX 205 may demultiplex the information for each layer and deliver the information to the decoding device for each layer.
  • the entropy decoding units 215 and 255 may perform entropy decoding corresponding to the entropy coding scheme used in the encoding apparatus. For example, when CABAC is used in the encoding apparatus, the entropy decoding units 215 and 255 may also perform entropy decoding using CABAC.
  • Information for generating a prediction block among the information decoded by the entropy decoding units 215 and 255 is provided to the prediction units 235 and 275, and a residual value of which entropy decoding is performed by the entropy decoding units 215 and 255. That is, the quantized transform coefficients may be input to the reordering units 220 and 260.
  • the reordering units 220 and 260 may rearrange the information of the bitstreams entropy decoded by the entropy decoding units 215 and 255, that is, the quantized transform coefficients, based on the reordering method in the encoding apparatus.
  • the reordering units 220 and 260 may rearrange the quantized transform coefficients of the one-dimensional array into the coefficients of the two-dimensional array.
  • the reordering units 220 and 260 may generate a two-dimensional array of coefficients (quantized transform coefficients) by performing scanning based on the prediction mode applied to the current block (transform block) and / or the size of the transform block.
  • the inverse quantizers 225 and 265 may generate transform coefficients by performing inverse quantization based on the quantization parameter provided by the encoding apparatus and the coefficient values of the rearranged block.
  • the inverse quantizers 225 and 265 may transfer the entropy decoded residual to the inverse transformers 230 and 270 without dequantizing the entropy decoded residual according to a predetermined condition or a quantization scheme in the encoding apparatus.
  • the inverse transform units 230 and 270 may perform inverse transform on the transform performed by the transform unit of the encoding apparatus.
  • the inverse transform units 230 and 270 may perform inverse DCT and / or inverse DST on a discrete cosine transform (DCT) and a discrete sine transform (DST) performed by an encoding apparatus.
  • DCT discrete cosine transform
  • DST discrete sine transform
  • the DCT and / or DST in the encoding apparatus may be selectively performed according to a plurality of pieces of information, such as a prediction method, a size of a current block, and a prediction direction, and the inverse transformers 230 and 270 of the decoding apparatus may perform transform information performed in the encoding apparatus. Inverse transformation may be performed based on.
  • the inverse transform units 230 and 270 may apply inverse DCT and inverse DST according to a prediction mode / block size.
  • the inverse transformers 230 and 270 may apply an inverse DST to a 4x4 luma block to which intra prediction is applied.
  • the inverse transform units 230 and 270 may fixedly use a specific inverse transform method regardless of the prediction mode / block size. For example, the inverse transform units 230 and 270 may apply only inverse DST to all transform blocks. In addition, the inverse transform units 230 and 270 may apply only inverse DCT to all transform blocks.
  • the inverse transformers 230 and 270 may generate a residual or residual block by inversely transforming the transform coefficients or the block of the transform coefficients.
  • the inverse transformers 230 and 270 may also skip the transformation as needed or in accordance with the manner encoded in the encoding apparatus. For example, the inverse transformers 230 and 270 may omit the transform for a block having a specific prediction method or a specific size block, or a block of a specific size to which a specific prediction block is applied.
  • the prediction units 235 and 275 may perform prediction on the current block based on prediction block generation related information transmitted from the entropy decoding units 215 and 255 and previously decoded blocks and / or picture information provided by the memories 245 and 285.
  • a prediction block can be generated.
  • the prediction units 235 and 275 may perform intra prediction on the current block based on pixel information in the current picture.
  • the prediction units 235 and 275 may perform information on the current block based on information included in at least one of a previous picture or a subsequent picture of the current picture. Inter prediction may be performed. Some or all of the motion information required for inter prediction may be derived from the information received from the encoding apparatus and correspondingly.
  • the prediction block may be a reconstruction block.
  • the prediction unit 235 of layer 1 may perform inter prediction or intra prediction using only information in layer 1, or may perform inter layer prediction using information of another layer (layer 0).
  • the predictor 235 of the layer 1 may perform prediction on the current block by using one of the motion information of the layer 1, the texture information of the layer 1, the unit information of the layer 1, and the parameter information of the layer 1.
  • the prediction unit 235 of the layer 1 may perform prediction on the current block by using a plurality of pieces of information of the motion information of the layer 1, the texture information of the layer 1, the unit information of the layer 1, and the parameter information of the layer 1. have.
  • the predictor 235 of the layer 1 may receive motion information of the layer 1 from the predictor 275 of the layer 0 to perform motion prediction.
  • Inter-layer motion prediction is also called inter-layer inter prediction.
  • inter-layer motion prediction prediction of a current block of a current layer (enhanced layer) may be performed using motion information of a reference layer (base layer).
  • the prediction unit 235 may scale and use motion information of the reference layer when necessary.
  • the predictor 235 of the layer 1 may receive texture information of the layer 1 from the predictor 275 of the layer 0 to perform texture prediction.
  • Texture prediction is also called inter layer intra prediction or intra base layer (BL) prediction. Texture prediction may be applied when the reference block of the reference layer is reconstructed by intra prediction.
  • inter-layer intra prediction the texture of the reference block in the reference layer may be used as a prediction value for the current block of the enhancement layer. In this case, the texture of the reference block may be scaled by upsampling.
  • the predictor 235 of the layer 1 may receive unit parameter information of the layer 1 from the predictor 275 of the layer 0 to perform unit parameter prediction.
  • unit parameter prediction unit (CU, PU, and / or TU) information of the base layer may be used as unit information of the enhancement layer, or unit information of the enhancement layer may be determined based on unit information of the base layer.
  • the predictor 235 of the layer 1 may receive parameter information regarding the filtering of the layer 1 from the predictor 275 of the layer 0 to perform parameter prediction.
  • parameter prediction the parameters used in the base layer can be derived and reused in the enhancement layer, or the parameters for the enhancement layer can be predicted based on the parameters used in the base layer.
  • the adders 290 and 295 may generate reconstruction blocks using the prediction blocks generated by the predictors 235 and 275 and the residual blocks generated by the inverse transformers 230 and 270.
  • the adders 290 and 295 can be viewed as separate units (restore block generation unit) for generating the reconstruction block.
  • Blocks and / or pictures reconstructed by the adders 290 and 295 may be provided to the filtering units 240 and 280.
  • the filtering units 240 and 280 may apply deblocking filtering, sample adaptive offset (SAO), and / or ALF to the reconstructed blocks and / or pictures.
  • deblocking filtering sample adaptive offset (SAO)
  • SAO sample adaptive offset
  • ALF ALF
  • the filtering units 240 and 280 may not apply all of the deblocking filter, ALF, and SAO, and may apply only the deblocking filter, only the deblocking filter and the ALF, or may apply only the deblocking filter and the SAO.
  • the filtering unit 240 of the layer 1 performs filtering on the reconstructed picture by using parameter information transmitted from the predicting unit 235 of the layer 1 and / or the filtering unit 280 of the layer 1. It can also be done.
  • the filtering unit 240 may apply filtering to or between layers using the parameters predicted from the parameters of the filtering applied in the layer 0.
  • the memories 245 and 285 may store the reconstructed picture or block to use as a reference picture or reference block.
  • the memories 245 and 285 may output the stored reconstructed picture through a predetermined output unit (not shown) or a display (not shown).
  • the prediction unit of layer 1 may be different from the interlayer prediction unit that performs prediction using information of another layer (layer 0). It may also be regarded as including an inter / intra predictor for performing prediction without using the information of).
  • FIG. 3 is a block diagram illustrating an example of inter-layer prediction in an encoding apparatus and a decoding apparatus that perform scalable coding according to the present invention.
  • the predictor 300 of layer 1 includes an inter / intra predictor 340 and an interlayer predictor 350.
  • the prediction unit 300 of the layer 1 may perform interlayer prediction necessary for the prediction of the layer 1 from the information of the layer 0.
  • the interlayer prediction unit 350 may receive interlayer prediction information from the prediction unit 320 and / or the filtering unit 330 of the layer 0 to perform interlayer prediction necessary for the prediction of the layer 1.
  • the inter / intra prediction unit 340 of the layer 1 may perform inter prediction or intra prediction using the information of the layer 1 without using the information of the layer 0.
  • the inter / intra predictor 340 of the layer 1 may perform prediction based on the information of the layer 0 using the information transmitted from the interlayer predictor 350.
  • the filtering unit 310 of the layer 1 may perform the filtering based on the information of the layer 1 or may perform the filtering based on the information of the layer 0.
  • Information of the layer 0 may be transferred from the filtering unit 330 of the layer 0 to the filtering unit 310 of the layer 1, or may be transferred from the interlayer prediction unit 350 of the layer 1 to the filtering unit 310 of the layer 1. It may be.
  • the information transmitted from the layer 0 to the interlayer prediction unit 350 may be at least one of information about a unit parameter of the layer 0, motion information of the layer 0, texture information of the layer 0, and filter parameter information of the layer 0. have.
  • the interlayer predictor 350 may include a texture predictor 360, a motion predictor 370, a unit information predictor 380, and a parameter predictor 390.
  • the texture predictor 360 may use the texture of the reference block in the reference layer as a prediction value for the current block of the enhancement layer. In this case, the texture predictor 360 may scale the texture of the reference block by upsampling.
  • the motion predictor 370 may predict the current block of layer 1 (the current layer or the enhancement layer) by using the motion information of the layer 0 (the reference layer or the base layer). In this case, the motion predictor 370 may scale the motion information of the reference layer.
  • the unit information predictor 380 derives unit (CU, PU, and / or TU) information of the base layer and uses the unit information of the enhancement layer based on the unit information of the base layer or uses the unit information of the enhancement layer based on the unit information of the base layer. You can decide.
  • unit (CU, PU, and / or TU) information of the base layer uses the unit information of the enhancement layer based on the unit information of the base layer or uses the unit information of the enhancement layer based on the unit information of the base layer. You can decide.
  • the parameter predictor 390 may derive the parameters used in the base layer to reuse them in the enhancement layer or predict the parameters for the enhancement layer based on the parameters used in the base layer.
  • interlayer prediction As an example of interlayer prediction, interlayer texture prediction, interlayer motion prediction, interlayer unit information prediction, and interlayer parameter prediction have been described. However, the interlayer prediction applicable to the present invention is not limited thereto.
  • the inter-layer prediction unit may further include a sub-prediction unit for performing inter-layer residual prediction and / or a sub-prediction unit for performing inter-layer differential prediction. Inter-layer difference prediction may be performed.
  • the prediction unit 300 may correspond to the prediction unit 110 of FIG. 1, and the filtering unit 310 may include the filtering unit 120 of FIG. 1. It can correspond to.
  • the predictor 320 may correspond to the predictor 140 of FIG. 1
  • the filter 330 may correspond to the filter 150 of FIG. 1.
  • the prediction unit 300 may correspond to the prediction unit 235 of FIG. 2, and the filtering unit 310 is the filtering unit 240 of FIG. 2.
  • the predictor 320 may correspond to the predictor 275 of FIG. 2
  • the filter 330 may correspond to the filter 280 of FIG. 2.
  • inter-layer prediction for predicting information of a current layer using information of another layer may be performed.
  • the current block is a block in which a current encoding, decoding and / or prediction process is performed, and may mean a block corresponding to a processing unit when the encoding, decoding and / or prediction process is performed.
  • the current block may correspond to the prediction target block corresponding to the current prediction unit.
  • a block derived by prediction is called a prediction block.
  • a unit refers to a processing unit when an encoding and / or decoding process is performed, the unit may be distinguished from a block composed of a two-dimensional array of pixels and / or samples, but for convenience of description, a unit may correspond to a unit in some cases.
  • a block may be referred to.
  • a prediction target block corresponding to one prediction unit may be referred to as a prediction unit
  • an encoding / decoding target block corresponding to one coding unit may be referred to as a coding unit.
  • FIG. 4 is a diagram schematically showing an example of the structure of a processing unit in a system to which the present invention is applied.
  • a coding unit may mean a unit in which encoding / decoding of a picture is performed.
  • the coding unit may be a processing unit for processing a picture in a process such as intra / inter prediction, transformation, quantization, and / or entropy coding.
  • Coding units in a picture may be recursively divided and have a depth based on a quad tree structure. At this time, not all coding units in the picture need to be divided into the same form.
  • the maximum size or the minimum size of the coding unit for convenience in coding and processing. For example, if the maximum size of the coding unit is determined, it may be referred to as the maximum coding unit size, and if the minimum size is determined, it may be referred to as the minimum coding unit size.
  • a coding unit having a maximum coding unit size may be referred to as a largest coding unit (LCU), and a coding unit having a minimum coding unit size may be referred to as a smallest coding unit (SCU).
  • LCU largest coding unit
  • SCU smallest coding unit
  • information indicating whether the coding unit is split may be specified. For example, if a flag value indicating whether to split is 1, a coding block corresponding to the coding unit is split into four blocks. If a flag value indicating whether to split is 0, the coding unit is no longer split. In this case, the encoding apparatus may perform an encoding process for a coding unit that is no longer split.
  • the coding unit may have a size of 64x64, 32x32, 16x16, 8x8, or the like.
  • the coding block recursively divided based on the quad tree structure may be called a coding tree block (CTB).
  • One coding tree block may not be split.
  • the coding tree block itself may correspond to one coding unit, and this coding tree block may correspond to a maximum coding unit (LCU) that is a coding unit of the maximum size.
  • LCU maximum coding unit
  • the coding tree block 400 may have a hierarchical structure composed of smaller coding units through division.
  • the hierarchical structure of the coding tree block 400 may be specified based on size information, depth information, split flag information, and the like.
  • size information, depth information, split flag information, etc. for the coding tree block may be included in the bitstream and transmitted from the encoding apparatus to the decoding apparatus.
  • One coding unit that is no longer split may be split into one or more prediction units (PUs) or prediction blocks (PBs), and this partitioning process may also be referred to as a partition.
  • PUs prediction units
  • PBs prediction blocks
  • the prediction unit is a basic unit for performing prediction, and intra prediction or inter prediction may be performed.
  • the intra prediction mode may be determined in units of prediction units
  • inter prediction mode and motion information may be determined in units of prediction units.
  • the processing unit in which the prediction is performed and the processing units in which the details of the prediction (the prediction method and the prediction mode) are determined may be the same or may be different from each other.
  • the prediction method and the prediction mode may be determined in units of prediction units, and the prediction may be performed in units of transform units.
  • one coding unit 410 may be used as one prediction unit or split into a plurality of prediction units.
  • the partitioning type (or partitioning mode) of the coding unit 410 may be different according to the intra mode or the inter mode.
  • the split mode of the coding unit 410 may be a 2N ⁇ 2N or N ⁇ N mode.
  • the split mode of the coding unit 410 may be a 2Nx2N, 2NxN, Nx2N, NxN, 2NxnU, 2NxnD, nLx2N, or nRx2N mode.
  • N may be an integer.
  • the intra mode may be performed by the prediction unit of FIGS. 1 to 3, and the prediction unit may generate a prediction block for the current block by performing prediction based on the reconstructed pixel in the current picture.
  • the prediction unit may predict pixel values in the current block by using neighboring blocks (eg, a reconstructed block located at the top, left, top left and / or top right) of the current block.
  • intra prediction that may be performed in a current layer (eg, layer 1 or an enhancement layer) during inter-layer prediction (ie, inter-layer prediction) in scalable coding will be described in detail with reference to the accompanying drawings.
  • a current layer eg, layer 1 or an enhancement layer
  • inter-layer prediction ie, inter-layer prediction
  • FIG. 5 is a diagram illustrating an example of an intra prediction mode to which the present invention can be applied.
  • Intra prediction may be performed based on the intra prediction mode of the current block.
  • the intra prediction mode may include a directional mode and a non-directional mode according to the direction in which the reference pixels used to predict pixel values of the current block are located and / or a prediction scheme. 5 shows 33 directional prediction modes and at least two non-directional prediction modes.
  • the non-directional prediction mode may include a DC mode and a planar mode.
  • the DC mode may use a fixed value as a prediction value of pixels in the current block.
  • one fixed value in DC mode may be derived by an average of pixel values located around the current block.
  • the planar mode vertical interpolation and horizontal interpolation may be performed using pixels vertically adjacent to the current block and pixels horizontally adjacent to each other, and an average thereof may be used as a prediction value of pixels in the current block.
  • the directional prediction mode is a mode indicating a direction in which the reference pixel is located and may indicate the corresponding direction by an angle between the prediction target pixel and the reference pixel in the current block.
  • the directional prediction mode may be called an angular mode, and may include a vertical mode, a horizontal mode, and the like.
  • a pixel value vertically adjacent to the current block may be used as a prediction value of pixels in the current block
  • a pixel value horizontally adjacent to the current block may be used as a prediction value of pixels in the current block.
  • the other Angular modes except for the vertical mode and the horizontal mode may derive the prediction value of the pixel in the current block by using reference pixels positioned at predetermined angles and / or directions for each mode.
  • the intra prediction mode may be assigned a predetermined prediction mode number according to a predetermined angle and / or a prediction direction.
  • the mode number assigned to the planar mode may be 0, and the mode number assigned to the DC mode may be 1.
  • the mode number assigned to the vertical mode may be 26, and the mode number assigned to the horizontal mode may be 10.
  • the other Angular modes except for the vertical and horizontal modes may be assigned different mode numbers according to the angle and / or the prediction direction of the intra prediction mode.
  • the intra prediction mode for the current block may be transmitted as a value indicating the mode itself, information for predicting the prediction mode value of the current block may be transmitted to increase transmission efficiency.
  • the intra prediction mode of the neighboring block adjacent to the current block may be used to derive a prediction value (MPM) for the prediction mode of the current block.
  • MPM prediction value
  • the prediction direction of the intra prediction mode and the mode number assigned to the intra prediction mode shown in FIG. 5 are one example, and the present invention is not limited thereto. If necessary, the prediction direction and the prediction mode number of the intra prediction mode can be changed. In addition, the number (type) of intra prediction modes may be changed and applied as necessary. Hereinafter, for convenience of description, it is assumed that intra prediction is performed based on the intra prediction mode shown in FIG. 5 unless otherwise stated.
  • FIG. 6 is a diagram illustrating a current block and neighboring blocks on which intra prediction is performed.
  • the current block 600 may be predicted based on an intra prediction mode to predict pixel values in the current block 600.
  • intra prediction may be performed on the current block 600 using the reconstructed pixels of the neighboring block.
  • the neighboring block means a block adjacent to the current block 600.
  • the left neighboring block A adjacent to the left of the current block 600, the upper neighboring block adjacent to the top of the current block 600 (not shown), and the current Upper left peripheral block (not shown) adjacent to the upper left of the block 600, upper right peripheral block adjacent to the upper right of the current block 600 (not shown), lower left block adjacent to the lower left of the current block 600 (C) may be a lower block D adjacent to the lower end of the current block 600.
  • blocks eg, left peripheral block, upper left peripheral block, upper peripheral block, upper right peripheral block located on the left and top of the current block 600 may be used.
  • blocks located at the right and bottom of the current block 600 eg, the lower left peripheral block (C), the lower peripheral block (D)
  • the pixel value of the current block 600 may be predicted using the pixels 610 of the left neighboring block A.
  • FIG. When the prediction is performed based on the vertical mode of the current block 600, the pixel value of the current block 600 may be predicted using the pixels 620 of the upper peripheral block. Or, according to the prediction direction of the intra prediction mode, the pixels 610 of the left peripheral block A, the pixels of the upper left peripheral block, the pixels 620 of the upper peripheral block, the pixels of the upper right peripheral block or the left side. Pixels X region in the lower peripheral block C may be used.
  • the current block 600 It may be used as a reference pixel in intra prediction of.
  • the pixels (region X) in the lower left peripheral block C are unreconstructed pixels, they cannot be used as reference pixels in intra prediction of the current block 600.
  • an unavailable reference pixel such as pixels (region X) in the lower left peripheral block C
  • an unavailable reference pixel is available.
  • a current prediction target block hereinafter, referred to as a current block
  • a current layer enhanced layer
  • another layer that has already been reconstructed with respect to reference information that is not available Provides a method of performing the prediction with reference to the information.
  • FIG. 7 is a diagram illustrating a current block and neighboring samples (or pixels) positioned around the current block for explaining an intra prediction method according to an embodiment of the present invention.
  • intra prediction of the current block 710 in the current layer may be performed based on a prediction mode.
  • the current block 710 from the neighboring samples 711, 713, 715, 717, 719 located around the current block 710 according to the prediction scheme and / or the directionality of the intra prediction mode as described above with reference to FIG. 5.
  • the reference sample used for intra prediction of may be determined.
  • the surrounding samples are centered on the current block 710 as described above with reference to FIG. 6, the sample of the upper left region 711 of the current block 710 (hereinafter, the upper left sample), the upper region of the current block 710 ( Samples of 713 (hereinafter, upper samples), samples of upper right region 715 of the current block 710 (hereinafter, upper right samples), samples of the left region 717 of the current block 710. (Hereinafter, left samples), samples of the lower left region 719 of the current block 710 (hereinafter, left lower samples).
  • the intra prediction mode of the current block 710 is one of mode numbers 2 to 9 in the intra prediction mode as shown in FIG. 5, the lower left samples 719 due to the directionality of the prediction mode. Intra prediction of the current block 710 is performed by using.
  • the lower left samples 719 are reference information that are not available because they are not reconstructed in the current picture including the current block 710 as described above.
  • the unusable reference information for example, the lower left samples 719 may be replaced with information of another layer, that is, the base layer that has already been decoded (or encoded).
  • the information of the replaced base layer may be samples (or pixels) of the base layer corresponding to reference information that is not available in the current layer (enhancement layer) (eg, lower left samples 719).
  • the samples of the base layer may be upsampled samples according to the resolution of the current layer.
  • reference samples that are not available among the reference samples used in intra prediction of the current block 720 for example, lower left samples 729 are samples of the upsampled base layer. And can be replaced. Thus, intra prediction of the current block 710 may be performed using the available information of the replaced base layer.
  • FIG. 8 illustrates a current block and neighboring samples (or pixels) on which intra prediction is performed according to an embodiment of the present invention.
  • prediction blocks may be generated in the current block 810 in the current layer (eg, an enhancement layer) based on an intra prediction mode.
  • intra prediction of the current block 810 may be performed by referring to samples (hereinafter, left lower samples) in the lower left region 819 of the current block 810 according to the direction of the intra prediction mode.
  • the lower left samples in the current layer may be replaced with information in the base layer that has already been decoded (or encoded).
  • the information in the base layer may be samples in the base layer corresponding to lower left samples that are not available in the current layer.
  • the samples in the base layer may be upsampled according to the resolution of the current layer.
  • the lower left samples in the current layer are replaced with samples in the base layer to perform intra prediction on the current block 810.
  • the lower left samples in the current layer are referenced according to the direction of the intra prediction mode of the current block 810, in this case, the lower left samples in the current layer may be replaced with the samples in the base layer.
  • the A region 820 in the current block 810 may generate prediction samples using reference samples (eg, 817) of the current layer and the current block 810.
  • the region B of 825 may be generated with prediction samples using reference samples (eg, 817) and / or samples (eg, 819) of the current layer.
  • the intra prediction method according to the above-described embodiment of the present invention not only the information of the current layer (enhanced layer) but also the information of another layer (base layer) can be referred to, thereby improving the encoding and decoding efficiency of the image. Can be.
  • each sample in the image has a strong correlation with the neighboring samples due to the characteristics of the image. As the distance between the reference sample and the sample to be predicted in the current block increases, the correlation decreases to generate similar predicted sample values. Most likely not.
  • the present invention provides a method of performing intra prediction using a reference sample that is spatially close to the current block.
  • FIG. 9 is a diagram illustrating a current block and neighboring samples (or pixels) positioned around the current block for explaining an intra prediction method according to another exemplary embodiment of the present invention.
  • intra prediction of a current block 910 in a current layer may be performed based on a prediction mode of the current block 910.
  • the current block 910 from the neighboring samples 911, 913, 915, 917, and 919 located in the vicinity of the current block 910 according to the prediction method and / or the directionality of the intra prediction mode.
  • the reference sample used for intra prediction of may be determined.
  • the surrounding samples are centered on the current block 910 as described above, and the sample of the upper left region 911 of the current block 910 (hereinafter, the upper left sample) and the upper region 913 of the current block 910.
  • Samples hereinafter, upper samples
  • Samples of the upper right region 915 of the current block 910 hereinafter, upper right samples
  • Samples of the left region 917 of the current block 910 hereinafter, Left samples
  • samples of the lower left region 919 of the current block 910 hereinafter, left lower samples.
  • the intra prediction mode of the current block 910 is one of the mode numbers 2 to 9 in the intra prediction mode as shown in FIG. 5, the lower left samples 919 are used due to the direction of the prediction mode. Intra prediction of the current block 910 is performed. Or, if the intra prediction mode of the current block 910 is one of the mode numbers 27 to 34 in the intra prediction mode as shown in FIG. 5, using the upper right samples 915 due to the direction of the prediction mode. Intra prediction of the current block 910 is performed.
  • the current block 910 is intra predicted using the lower left samples 919
  • the current block 910 is the bottom of the current block 910 that is spatially closer than the lower left samples 919.
  • prediction is performed using samples of the region 920 (hereinafter, referred to as lower samples)
  • the lower samples 920 may be replaced with information of another layer that is already decoded (or encoded), that is, base layer.
  • the information of the base layer may be samples (or pixels) that have already been decoded (or encoded) in the base layer.
  • the lower left samples 919 in the current layer may be replaced with the samples of the base layer corresponding to the lower samples 920 of the current block 910.
  • the samples of the base layer may be samples in the base layer upsampled according to the resolution of the current layer.
  • the current block 910 when intra prediction is performed using the upper right samples 915 in the current block 910, the current block 910 is right of the current block 910 that is spatially closer than the upper right samples 915. If prediction is performed using samples of the region 925 (hereinafter, referred to as right samples), prediction performance may be improved. However, since the right samples 925 in the current layer are unreconstructed samples and thus are not available information, the right samples 925 may be replaced with information of another layer that is already decoded (or encoded), that is, base layer. In this case, the information of the base layer may be samples (or pixels) that have already been decoded (or encoded) in the base layer.
  • the upper right samples 915 in the current layer may be replaced with samples of the base layer corresponding to the right samples 925 of the current block 910.
  • the samples of the base layer may be samples in the base layer upsampled according to the resolution of the current layer.
  • FIG. 10 is a diagram illustrating a current block and neighboring samples (or pixels) positioned around the current block for explaining an intra prediction method according to another exemplary embodiment of the present invention.
  • intra prediction of a current block 1010 in a current layer may be performed based on a prediction mode of the current block 1010.
  • the current block 1010 from the neighboring samples 1011, 1013, 1015, 1017, and 1019 located around the current block 1010 according to the prediction method and / or the directionality of the intra prediction mode.
  • the reference sample used for intra prediction of may be determined.
  • the surrounding samples are centered on the current block 1010 as described above, the samples of the upper left region 1011 of the current block 1010 (hereinafter, the upper left sample), of the upper region 1013 of the current block 1010.
  • Samples hereinafter, upper samples
  • Samples of upper right region 1015 of the current block 1010 hereinafter, upper right samples
  • Samples of left region 1017 of the current block 1010 hereinafter, Left samples
  • samples of the lower left region 1019 of the current block 1010 hereinafter, left lower samples.
  • the predicted sample in the current block 1010 is less correlated as the distance from the reference sample becomes farther, and thus cannot generate the predicted sample of the current block 1010 similar to the original block.
  • reference samples are compared with other predicted samples 1025 in the current block 1010.
  • the distance from (1011, 1013, 1017) can be far away and the prediction efficiency can be reduced.
  • the arrows shown in FIG. 10 are shown to indicate the distances from the reference samples 1011, 1013, 1017 to the predicted sample.
  • the reference samples 1011, 1013, 1015, 1017, and 1019 may be replaced with a reference sample that is more spatially adjacent to the sample to be predicted in the current block 1010.
  • the predetermined distance may be calculated using the maximum distance value and the minimum distance value, for example, an average of the maximum distance value and the minimum distance value may be used.
  • the maximum distance value may be a distance value to the predicted sample in the current block 1010 in which the distance to the reference sample is maximum, and the minimum distance value is a predicted object in the current block 1010 in which the distance to the reference sample is minimum. It may be a distance value to a sample.
  • the upper left sample 1011, the upper samples 1013, the left side according to an intra prediction mode (eg, a mode having a directionality such as vertical or horizontal).
  • an intra prediction mode eg, a mode having a directionality such as vertical or horizontal.
  • the intra prediction of the current block 1010 is performed using at least one of the samples 1017.
  • the distance between the predicted samples 1020 and the reference samples 1011, 1013, 1017 exceeds a preset distance. Therefore, it is possible to replace with neighboring samples that are spatially closer to the predicted samples 1020 and to perform intra prediction with reference to the neighboring samples.
  • the bottom samples located at the bottom of the predicted samples 1020 and / or the right samples 1030 located at the right in the current block 1010 are the top left sample 1011, top samples 1013, left It is located closer spatially than the samples 1017.
  • the lower samples and the right samples 1030 in the current layer are unreconstructed samples and are not available information, the lower samples and the right samples 1030 are already decoded (or encoded). It may be replaced with information of a layer, that is, a base layer.
  • the information of the base layer may be samples (or pixels) that have already been decoded (or encoded) in the base layer.
  • bottom samples in the current layer may be replaced with samples of the base layer corresponding to the bottom samples.
  • the samples of the base layer may be samples in the base layer upsampled according to the resolution of the current layer.
  • Right samples in the current layer (enhanced layer) may be replaced with samples of the base layer corresponding to the right samples.
  • the samples of the base layer may be samples in the base layer upsampled according to the resolution of the current layer.
  • the current block using the upper samples 1013 may be used. Generate prediction samples of 1010.
  • the predetermined distance is the average of the maximum distance value and the minimum distance value
  • the samples to be predicted in the lower region of the current block 1010 are located above the predetermined distance from the upper samples 1013, and thus the upper samples Prediction may be performed by replacing 1013 with lower samples of the current block 1010.
  • the lower samples of the current block 1010 are replaced with the samples in the base layer corresponding to the lower samples of the current block 1010.
  • the lower area of the current block 1010 refers to an area corresponding to the lower half when the current block 1010 is divided in half in the horizontal direction.
  • intra prediction of the current block 1010 may be performed using the left samples 1017.
  • the predetermined distance is the average of the maximum distance value and the minimum distance value
  • the samples to be predicted in the area corresponding to the right half are left samples 1017. Since the position is greater than or equal to a predetermined distance from), prediction may be performed by replacing the left samples 1017 with the right samples of the current block 1010.
  • the samples in the base layer corresponding to the samples on the right of the current block 1010 are replaced.
  • the reference sample is adjacent to the predicted sample (the lower sample or the right sample, etc.) )
  • a sample adjacent to the predicted sample is not available, it can be replaced with a sample of the base layer.
  • FIG. 11 is a flowchart schematically illustrating an intra prediction method according to an embodiment of the present invention.
  • the method of FIG. 11 may be performed by the encoding apparatus of FIG. 1 or the decoding apparatus of FIG. 2. More specifically, it may be performed by the prediction unit or the interlayer prediction unit of FIGS. 1 to 3. In the embodiment of FIG. 11, for convenience of description, the method of FIG. 11 is described as being performed in the decoding apparatus, but the same may be applied to the encoding apparatus.
  • the decoding apparatus derives reference samples for intra prediction from neighboring samples located around the current block in the current layer (enhancement layer) (S1100).
  • the peripheral samples may be the upper left sample, the upper samples, the upper right samples, the left samples, and the lower left samples, centering on the current block, as described above.
  • the decoding apparatus may use at least one of the upper left sample, the upper samples, the upper right samples, the left samples, and the lower left samples as reference samples for intra prediction according to the intra prediction mode of the current block.
  • the decoding apparatus replaces the reference sample that is not available with information of another layer, that is, the base layer, which has already been decoded (or encoded).
  • the information of the base layer may be samples (or pixels) that have already been decoded (or encoded) in the base layer.
  • the upper left sample, the upper samples, the upper right samples, the left samples may be available samples
  • the lower left samples may be samples that are not available.
  • the current block when the current block performs prediction using the lower left samples, since the lower left samples are not available samples, they may be replaced with samples of the base layer. For example, it may be replaced with samples in the upsampled base layer corresponding to the bottom left samples in the current layer.
  • the prediction target in the current block may improve prediction performance when intra prediction is performed using spatially adjacent reference samples.
  • the decoding apparatus replaces the reference sample with a neighboring sample that is spatially closer to the prediction sample. If the replaced peripheral sample in the current layer is not available, the peripheral sample is replaced with information of another layer, that is, base layer, which has already been decoded (or encoded).
  • the information of the base layer may be samples (or pixels) that have already been decoded (or encoded) in the base layer.
  • the predetermined distance may be determined based on the distance between the prediction target sample and the reference sample in the current block as described above. For example, the average of the distance value to the predicted sample in the current block where the distance to the reference sample is the maximum and the distance to the predicted sample in the current block at which the distance to the reference sample is the minimum are used as the preset distance. Can be.
  • the prediction target samples present in the downward and right directions within the current block tend to be farther from the upper left samples, the upper samples, the upper right samples, and the left samples.
  • samples closer to a distance from the predicted sample eg, the lower samples located at the bottom of the predicted sample, the right side
  • Replacing with right samples located at may improve prediction performance.
  • the bottom samples and the right samples are unreconstructed samples.
  • the bottom samples or the right samples may be replaced with the samples of the base layer that have already been reconstructed (or encoded) corresponding thereto.
  • the samples of the base layer may be samples of the base layer upsampled according to the resolution of the current layer.
  • the upper right samples or the lower left samples are the reference samples
  • the upper right samples or the lower left samples are the right samples that are closer to the prediction target sample in the current block, or Can be replaced with bottom samples.
  • the right samples may be replaced instead of the upper right samples.
  • the lower samples may be replaced by the lower samples. have.
  • the samples of the base layer may be samples of the base layer upsampled according to the resolution of the current layer.
  • the decoding apparatus performs intra prediction of the current block by using the reference samples, and generates prediction samples of the current block (S1110).
  • prediction samples of the current block may be generated using the samples in the base layer.
  • the prediction is further performed by substituting the available reference samples of the base layer instead of the unavailable reference samples in the current layer or by performing intra prediction on the current block using reference samples that are more correlated with the current block. It can improve performance.

Landscapes

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

Abstract

스케일러블 비디오 인코딩/디코딩 방법 및 장치가 개시된다. 현재 블록을 포함하는 인핸스먼트 레이어와 베이스 레이어를 포함하는 스케일러블 비디오 디코딩 방법은 상기 현재 블록의 인트라 예측을 위한 참조 샘플을 도출하는 단계 및 상기 참조 샘플을 기반으로 상기 현재 블록에 대한 인트라 예측을 수행하여 상기 현재 블록의 예측 샘플을 생성하는 단계를 포함한다.

Description

스케일러블 비디오 인코딩/디코딩 방법 및 장치
본 발명은 비디오 압축 기술에 관한 것으로, 더 구체적으로는 스케일러블 비디오 코딩(Scalable Video Coding; SVC)을 수행하는 방법 및 장치에 관한 것이다.
최근 고해상도, 고품질의 영상에 대한 요구가 다양한 응용 분야에서 증가하고 있다. 영상이 고해상도를 가지고 고품질이 될수록 해당 영상에 관한 정보량도 함께 증가하고 있다. 정보량의 증가로 인해 다양한 성능의 장치와 다양한 환경의 네트워크가 등장하고 있다. 다양한 성능의 장치와 다양한 환경의 네트워크가 등장함에 따라서, 동일한 콘텐츠를 다양한 품질로 이용할 수 있게 되었다.
구체적으로, 단말 장치가 지원할 수 있는 품질의 영상이 다양해지고, 구축된 네트워크 환경이 다양해짐으로써, 어떤 환경에서는 일반적인 품질의 영상을 이용하지만, 또 다른 환경에서는 더 높은 품질의 영상을 이용할 수 있게 된다.
예를 들어, 휴대 단말에서 비디오 콘텐츠를 구매한 소비자가 가정 내 대화면의 디스플레이를 통해 동일한 비디오 콘텐츠를 더 큰 화면과 더 높은 해상도로 감상할 수 있게 되는 것이다.
최근에는 HD(High Definition) 해상도를 가지는 방송이 서비스되면서 많은 사용자들은 이미 고해상도, 고화질의 영상에 익숙해지고 있고, 서비스 제공자와 사용자들은 HDTV와 더불어 HDTV의 4배 이상의 해상도를 갖는 UHD(Ultra High Definition)의 서비스에도 관심을 기울이고 있다.
따라서, 다양한 환경에서 사용자가 요구하는 영상 서비스를 품질에 따라서 다양하게 제공하기 위해 고용량 비디오에 대한 고효율의 인코딩/디코딩 방법을 기반으로 영상의 품질, 예컨대 영상의 화질, 영상의 해상도, 영상의 크기, 비디오의 프레임 레이트 등에 스케일러빌러티를 제공하는 것이 필요하다.
본 발명은 스케일러블 비디오 인코딩/디코딩에서 압축 효율을 높이는 방법 및 장치를 제공한다.
본 발명은 다른 레이어의 정보를 이용하여 현재 레이어의 영상을 예측하는 방법 및 장치를 제공한다.
본 발명의 일 양태에 따르면, 현재 블록을 포함하는 인핸스먼트 레이어와 베이스 레이어를 포함하는 스케일러블 비디오 디코딩 방법이 제공된다. 상기 스케일러블 비디오 디코딩 방법은 상기 현재 블록의 인트라 예측을 위한 참조 샘플을 도출하는 단계 및 상기 참조 샘플을 기반으로 상기 현재 블록에 대한 인트라 예측을 수행하여 상기 현재 블록의 예측 샘플을 생성하는 단계를 포함한다.
상기 참조 샘플을 도출하는 단계에서는, 상기 현재 블록의 주변에 위치한 주변 샘플을 기반으로 도출된 상기 참조 샘플 중 적어도 하나가 상기 베이스 레이어의 샘플로 대체될 수 있다.
본 발명의 다른 양태에 따르면, 현재 블록을 포함하는 인핸스먼트 레이어와 베이스 레이어를 포함하는 스케일러블 비디오 인코딩 방법이 제공된다. 상기 스케일러블 비디오 인코딩 방법은 상기 현재 블록의 인트라 예측을 위한 참조 샘플을 도출하는 단계 및 상기 참조 샘플을 기반으로 상기 현재 블록에 대한 인트라 예측을 수행하여 상기 현재 블록의 예측 샘플을 생성하는 단계를 포함한다.
상기 참조 샘플을 도출하는 단계에서는, 상기 현재 블록의 주변에 위치한 주변 샘플을 기반으로 도출된 상기 참조 샘플 중 적어도 하나가 상기 베이스 레이어의 샘플로 대체될 수 있다.
스케일러블 비디오 코딩에서, 현재 레이어의 가용하지 않는 참조 정보 대신 다른 레이어의 가용한 참조 정보를 이용하여 현재 레이어의 예측 샘플을 생성함으로써 보다 예측 정확도 및 예측 성능을 향상시킬 수 있다.
또한, 주변 샘플들 간의 높은 상관도를 가지는 영상의 특성을 고려하여, 현재 예측 대상 샘플과 공간적으로 인접한 참조 샘플을 기반으로 예측 대상 샘플의 인트라 예측을 수행함으로써 인코딩 장치 및 디코딩 장치에서 예측 정확도 및 예측 성능을 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 인코딩 장치를 개략적으로 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 디코딩 장치를 개략적으로 도시한 블록도이다.
도 3은 본 발명에 따라서 스케일러블 코딩을 수행하는 인코딩 장치와 디코딩 장치에서의 레이어 간 예측에 관한 일 예를 설명하는 블록도이다.
도 4는 본 발명이 적용되는 시스템에서 처리 유닛의 구조에 관한 일 예를 개략적으로 나타내는 도면이다.
도 5는 본 발명이 적용될 수 있는 인트라 예측 모드의 일예를 도시한 도면이다.
도 6은 인트라 예측이 수행되는 현재 블록과 주변 블록을 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 인트라 예측 방법을 설명하기 위한 현재 블록과 현재 블록의 주변에 위치한 주변 샘플(혹은 픽셀)을 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따라 인트라 예측이 수행되는 현재 블록과 주변 샘플(혹은 픽셀)을 도시한 도면이다.
도 9는 본 발명의 다른 실시예에 따른 인트라 예측 방법을 설명하기 위한 현재 블록과 현재 블록의 주변에 위치한 주변 샘플(혹은 픽셀)을 도시한 도면이다.
도 10은 본 발명의 또 다른 실시예에 따른 인트라 예측 방법을 설명하기 위한 현재 블록과 현재 블록의 주변에 위치한 주변 샘플(혹은 픽셀)을 도시한 도면이다.
도 11은 본 발명의 일 실시예에 따른 인트라 예측 방법을 개략적으로 나타내는 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니다. 본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
한편, 본 발명에서 설명되는 도면상의 각 구성들은 비디오 인코딩 장치/디코딩 장치에서 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성 요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다.
스케일러빌러티를 지원하는 비디오 코딩 방법(이하, 스케일러블 코딩이라 함)에서는 입력 신호들을 레이어별로 처리할 수 있다. 레이어에 따라서 입력 신호(입력 영상)들은 해상도(resolution), 프레임 레이트(frame rate), 비트 뎁스(bit-depth), 컬러 포맷(colot format), 애스팩트 율(aspect ratio) 중 적어도 하나가 상이할 수 있다.
본 명세서에서, 스케일러블 코딩이라 함은 스케일러블 인코딩과 스케일러블 디코딩을 포함한다.
스케일러블 인코딩/디코딩에서는 레이어 간의 차이를 이용하여, 즉 스케일러빌러티에 기반하여, 레이어 간의 예측을 수행함으로써 정보의 중복 전송/처리를 줄이고 압축 효율을 높일 수 있다.
도 1은 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 인코딩 장치를 개략적으로 도시한 블록도이다.
도 1을 참조하면, 인코딩 장치(100)는 레이어 1에 대한 인코딩부(105)와 레이어 0에 대한 인코딩부(135)를 포함한다.
레이어 0은 베이스 레이어, 참조 레이어 혹은 하위 레이어일 수 있으며, 레이어 1은 인핸스먼트 레이어, 현재 레이어 혹은 상위 레이어일 수 있다.
레이어 1의 인코딩부(105)는 예측부(110), 변환/양자화부(115), 필터링부(120), DPB(Decoded Picture Buffer, 125), 엔트로피 코딩부(130) 및 MUX(Multiplexer, 165)를 포함한다.
레이어 0의 인코딩부(135)는 예측부(140), 변환/양자화부(145), 필터링부(150), DPB(155) 및 엔트로피 코딩부(160)를 포함한다.
예측부(110, 140)는 입력된 영상에 대하여 인터 예측과 인트라 예측을 수행할 수 있다. 예측부(110, 140)는 소정의 처리 단위로 예측을 수행할 수 있다. 예측의 수행 단위는 코딩 유닛(Coding Unit: CU)일 수도 있고, 예측 유닛(Prediction Unit: PU)일 수도 있으며, 변환 유닛(Transform Unit: TU)일 수도 있다.
예컨대, 예측부(110, 140)는 CU 단위로 인터 예측을 적용할 것인지 인트라 예측을 적용할 것인지를 결정하고, PU 단위로 예측의 모드를 결정하며, PU 단위 혹은 TU 단위로 예측을 수행할 수도 있다. 수행되는 예측은 예측 블록의 생성과 레지듀얼 블록(레지듀얼 신호)의 생성을 포함한다.
인터 예측을 통해서는 현재 픽처의 이전 픽처 및/또는 이후 픽처 중 적어도 하나의 픽처의 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다. 인트라 예측을 통해서는 현재 픽처 내의 픽셀 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다.
인터 예측의 모드 또는 방법으로서, 스킵(skip) 모드, 머지(merge) 모드, MVP(Motion Vector Predtiction) 방법 등이 있다. 인터 예측에서는 예측 대상인 현재 PU에 대하여 참조 픽처를 선택하고, 참조 픽처 내에서 현재 PU에 대응하는 참조 블록을 선택할 수 있다. 예측부(160)는 참조 블록을 기반으로 예측 블록을 생성할 수 있다.
예측 블록은 정수 샘플 단위로 생성될 수도 있고, 정수 이하 픽셀 단위로 생성될 수도 있다. 이때, 움직임 벡터 역시 정수 픽셀 단위 혹은 정수 픽셀 이하의 단위로 표현될 수 있다.
인터 예측에 있어서 움직임 정보 즉, 참조 픽처의 인덱스, 움직임 벡터, 레지듀얼 신호 등의 정보는 엔트로피 인코딩되어 디코딩 장치에 전달된다. 스킵 모드가 적용되는 경우에는 레지듀얼을 생성, 변환, 양자화, 전송하지 않을 수 있다.
인트라 예측에서 예측 모드는 33개의 방향성 예측 모드와 적어도 2개 이상의 비방향성 모드를 가질 수 있다. 비향성성 모드는 DC 예측 모드 및 플래이너 모드(Planar 모드)을 포함할 수 있다. 인트라 예측에서는 참조 샘플에 필터를 적용한 후 예측 블록을 생성할 수도 있다.
PU는 다양한 사이즈/형태의 블록일 수 있으며, 예컨대 인터 예측의 경우에 PU는 2Nx2N 블록, 2NxN 블록, Nx2N 블록, 또는 NxN 블록 (N은 정수) 등일 수 있다. 인트라 예측의 경우에 PU는 2Nx2N 블록 또는 NxN 블록 (N은 정수) 등일 수 있다. 이때, NxN 블록 크기의 PU는 특정한 경우에만 적용하도록 설정할 수 있다. 예컨대 최소 크기 CU에 대해서만 NxN 블록 크기의 PU를 이용하도록 정하거나 인트라 예측에 대해서만 이용하도록 정할 수도 있다. 또한, 상술한 크기의 PU 외에, NxmN 블록, mNxN 블록, 2NxmN 블록 또는 mNx2N 블록 (m<1) 등의 PU를 더 정의하여 사용할 수도 있다.
또한, 예측부(110, 140)는 레이어 0의 정보를 이용하여 레이어 1에 대한 예측을 수행할 수 있다. 본 명세서에서는 다른 레이어의 정보를 이용하여 현재 레이어의 정보를 예측하는 방법을, 설명의 편의를 위해, 인터 레이어 예측이라고 한다.
다른 레이어의 정보를 이용하여 예측되는 (즉, 인터 레이어 예측에 의해 예측되는) 현재 레이어의 정보로는 텍스처, 움직임 정보, 유닛 정보, 소정의 파라미터(예컨대, 필터링 파라미터 등) 등이 있을 수 있다.
또한, 현재 레이어에 대한 예측에 이용되는 (즉, 인터 레이어 예측에 이용되는) 다른 레이어의 정보로는 텍스처, 움직임 정보, 유닛 정보, 소정의 파라미터(예컨대, 필터링 파라미터 등)이 있을 수 있다.
인터 레이어 예측의 일 예로서, 인터 레이어 유닛 파라미터 예측에서는 베이스 레이어의 유닛(CU, PU 및/또는 TU) 정보를 유도하여 인핸스먼트 레이어의 유닛 정보로 사용하거나, 베이스 레이어의 유닛 정보를 기반으로 인핸스먼트 레이어의 유닛 정보를 결정할 수 있다.
또한, 유닛 정보는 각 유닛 레벨에서의 정보를 포함할 수 있다. 예컨대, CU 정보의 경우, 파티션(CU, PU 및 또는 TU)에 관한 정보, 변환에 관한 정보, 예측에 대한 정보, 코딩에 대한 정보를 포함할 수 있다. PU 정보의 경우, PU 파티션에 관한 정보, 예측에 관한 정보(예컨대, 움직임 정보, 예측 모드에 관한 정보 등) 등을 포함할 수 있다. TU에 관한 정보는 TU 파티션에 관한 정보, 변환에 관한 정보(변환 계수, 변환 방법 등) 등을 포함할 수 있다.
또한, 유닛 정보는 처리 단위(예컨대, CU, PU, TU 등)의 분할 정보만을 포함할 수도 있다.
인터 레이어 예측의 다른 예인 인터 레이어 움직임 예측은 인터 레이어 인터 예측이라고도 한다. 인터 레이어 인터 예측에 의하면, 레이어 0 (참조 레이어 혹은 베이스 레이어)의 움직임 정보를 이용하여 레이어 1 (현재 레이어 혹은 인핸스먼트 레이어)의 현재 블록에 대한 예측을 수행할 수 있다.
인터 레이어 인터 예측을 적용하는 경우에는, 참조 레이어의 움직임 정보를 스케일링 할 수도 있다.
인터 레이어 예측의 또 다른 예로서 인터 레이어 텍스처 예측은 인터 레이어 인트라 예측 혹은 인트라 BL(Base Layer) 예측이라고도 불린다. 인터 레이어 텍스처 예측은 참조 레이어 내 참조 블록이 인트라 예측에 의해 복원된 경우에 적용될 수 있다.
인터 레이어 인트라 예측에서는 참조 레이어 내 참조 블록의 텍스처를 인핸스먼트 레이어의 현재 블록에 대한 예측 값으로 사용할 수 있다. 이때, 참조 블록의 텍스처는 업샘플링에 의해 스케일링될 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 파라미터 예측에서는 베이스 레이어에서 사용한 파라미터를 유도하여 인핸스먼트 레이어에서 재사용하도록 하거나 베이스 레이어에서 사용한 파라미터를 기반으로 인핸스먼트 레이어에 대한 파라미터를 예측할 수 있다.
여기서는 인터 레이어 예측의 예로서, 인터 레이어 텍스처 예측, 인터 레이어 움직임 예측, 인터 레이어 유닛 정보 예측, 인터 레이어 파라미터 예측을 설명하였으나, 본 발명에서 적용할 수 있는 인터 레이어 예측은 이에 한정되지 않는다.
예컨대, 예측부는 인터 레이어 예측으로서 다른 레이어의 레지듀얼 정보를 이용하여 현재 레이어의 레지듀얼을 예측하고 이를 기반으로 현재 레이어 내 현재 블록에 대한 예측을 수행하는 인터 레이어 레지듀얼 예측을 이용할 수도 있다.
또한, 예측부는 인터 레이어 예측으로서 현재 레이어의 복원 픽처와 다른 레이어의 복원 픽처를 업샘플링 혹은 다운샘플링한 영상 간의 차분 (차분 영상) 영상을 이용하여 현재 레이어 내 현재 블록에 대한 예측을 수행하는 인터 레이어 차분 예측을 수행할 수도 있다.
변환/양자화부(115, 145)는 변환 블록 단위로 레지듀얼 블록에 대한 변환을 수행하여 변환 계수를 생성하고, 변환 계수를 양자화할 수 있다.
변환 블록은 샘플들의 사각형 블록으로서 동일한 변환이 적용되는 블록이다. 변환 블록은 변환 유닛(TU)일 수 있으며, 쿼드 트리(quad tree) 구조를 가질 수 있다.
변환/양자화부(115, 145)는 레지듀얼 블록에 적용된 예측 모드와 변환 블록의 크기에 따라서 변환을 수행해서 변환 계수들의 2차원 어레이를 생성할 수 있다. 예컨대, 레지듀얼 블록에 인트라 예측이 적용되었고 블록이 4x4의 레지듀얼 배열이라면, 레지듀얼 블록을 DST(Discrete Sine Transform)를 이용하여 변환하고, 그 외의 경우라면 레지듀얼 블록을 DCT(Discrete Cosine Transform)를 이용하여 변환할 수 있다.
또한, 변환/양자화부(115, 145)는 예측 모드와 변환 블록의 크기에 상관없이 특정 변환을 고정적으로 사용할 수도 있다. 예컨대, 변환/양자화부(115, 145)는 모든 변환 블록에 DST만을 적용할 수 있다. 또한, 변환/양자화부(115, 145)는 모든 변환 블록에 DCT만을 적용할 수도 있다.
변환/양자화부(115, 145)는 변환 계수들을 양자화하여 양자화된 변환 계수를 생성할 수 있다.
변환/양자화부(115, 145)는 양자화된 변환 계수를 엔트로피 코딩부(130, 160)로 전달할 수 있다. 이때, 변환/양자화부(115, 145)는 양자화된 변환 계수의 2차원 어레이를 소정의 스캔 순서에 따라 1차원 어레이로 재정렬하여 엔트로피 코딩부(130, 160)로 전달할 수도 있다. 또한, 변환/양자화부(115, 145)는 인터 예측을 위해, 레지듀얼과 예측 블록을 기반으로 생성된 복원 블록을 변환/양자화하지 않고, 필터링부(120, 150)에 전달할 수 있다.
한편, 변환/양자화부(115, 145)는 필요에 따라서, 변환을 생략(skip)하고 양자화만 수행하거나 변환과 양자화를 모두 생략할 수도 있다. 예컨대, 변환/양자화부(115, 145)는 특정한 예측 방법이 적용되거나 특정 크기를 갖는 블록, 혹은 특정 예측 블록이 적용된 특정한 크기의 블록에 대하여 변환을 생략할 수도 있다.
엔트로피 코딩부(130, 160)는 양자화된 변환 계수들에 대한 엔트로피 인코딩을 수행할 수 있다. 엔트로피 인코딩에는 예를 들어, 지수 골롬(Exponential Golomb), CABAC(Context-Adaptive Binary Arithmetic Coding) 등과 같은 인코딩 방법을 사용할 수 있다.
필터링부(120, 150)는 디블록킹 필터, ALF(Adaptive Loop Filter), SAO(Sample Adaptive Offset)를 복원된 픽처에 적용할 수 있다.
디블록킹 필터는 복원된 픽처에서 블록 간의 경계에 생긴 왜곡을 제거할 수 있다. ALF(Adaptive Loop Filter)는 디블록킹 필터를 통해 블록이 필터링된 후 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. SAO는 디블록킹 필터가 적용된 레지듀얼 블록에 대하여, 픽셀 단위로 원본 영상과의 오프셋 차이를 복원하며, 밴드 오프셋(Band Offset), 에지 오프셋(Edge Offset) 등의 형태로 적용된다.
필터링부(120, 150)는 디블록킹 필터, ALF, SAO를 모두 적용하지 않고 디블록킹 필터만 적용하거나 디블록킹 필터와 ALF만 적용하거나 디블록킹 필터와 SAO만을 적용할 수도 있다.
DPB(125, 155)는 필터링부(120, 150)로부터 복원 블록 또는 복원 픽처를 전달받아 저장할 수 있다. DPB(125, 155)는 복원 블록 또는 픽처를 인터 예측을 수행하는 예측부(110, 140)에 제공할 수 있다.
레이어 0의 엔트로피 코딩부(160)에서 출력되는 정보와 레이어 1의 엔트로피 코딩부(130)에서 출력되는 정보는 MUX(165)에서 멀티플렉싱되어 비트스트림으로 출력될 수 있다.
한편, 여기서는 설명의 편의를 위해, 레이어 1의 인코딩부(105)가 MUX(165)를 포함하는 것으로 설명하였으나, MUX는 레이어 1의 인코딩부(105) 및 레이어 0의 인코딩부(135)와는 별도의 장치 혹은 모듈일 수 있다.
도 2는 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 디코딩 장치를 개략적으로 도시한 블록도이다.
도 2를 참조하면, 디코딩 장치(200)는 레이어 1의 디코딩부(210)와 레이어 0의 디코딩부(250)를 포함한다.
레이어 0은 베이스 레이어, 참조 레이어 혹은 하위 레이어일 수 있으며, 레이어 1은 인핸스먼트 레이어, 현재 레이어 혹은 상위 레이어일 수 있다.
레이어 1의 디코딩부(210)는 엔트로피 디코딩부(215), 재정렬부(220), 역양자화부(225), 역변환부(230), 예측부(235), 필터링부(240), 메모리(245)를 포함할 수 있다.
레이어 0의 디코딩부(250)는 엔트로피 디코딩부(255), 재정렬부(260), 역양자화부(265), 역변환부(270), 예측부(275), 필터링부(280), 메모리(285)를 포함할 수 있다.
인코딩 장치로부터 영상 정보를 포함하는 비트스트림이 전송되면, DEMUX(205)는 레이어별로 정보를 디멀티플렉싱하여 각 레이어별 디코딩 장치로 전달할 수 있다.
엔트로피 디코딩부(215, 255)는 인코딩 장치에서 사용한 엔트로피 코딩 방식에 대응하여 엔트로피 디코딩을 수행할 수 있다. 예컨대, 인코딩 장치에서 CABAC이 사용된 경우에, 엔트로피 디코딩부(215, 255)도 CABAC을 이용하여 엔트로피 디코딩을 수행할 수 있다.
엔트로피 디코딩부(215, 255)에서 디코딩된 정보 중 예측 블록을 생성하기 위한 정보는 예측부(235, 275)로 제공되고, 엔트로피 디코딩부(215, 255)에서 엔트로피 디코딩이 수행된 레지듀얼 값, 즉 양자화된 변환 계수는 재정렬부(220, 260)로 입력될 수 있다.
재정렬부(220, 260)는 엔트로피 디코딩부(215, 255)에서 엔트로피 디코딩된 비트스트림의 정보, 즉 양자화된 변환 계수를 인코딩 장치에서 재정렬한 방법을 기초로 재정렬할 수 있다.
예컨대, 재정렬부(220, 260)는 1차원 어레이의 양자화된 변환 계수들을 다시 2차원 어레이의 계수들로 재정렬할 수 있다. 재정렬부(220, 260)는 현재 블록(변환 블록)에 적용된 예측 모드 및/또는 변환 블록의 크기를 기반으로 스캐닝을 수행하여 계수(양자화된 변환 계수)들의 2차원 어레이를 생성할 수 있다.
역양자화부(225, 265)는 인코딩 장치에서 제공된 양자화 파라미터와 재정렬된 블록의 계수값을 기초로 역양자화를 수행하여 변환 계수들을 생성할 수 있다.
역양자화부(225, 265)는 소정의 조건에 따라서 혹은 인코딩 장치에서의 양자화 방식에 따라서, 엔트로피 디코딩된 레지듀얼을 역양자화하지 않고 역변환부(230, 270)에 전달할 수도 있다.
역변환부(230, 270)는 변환 계수들에 대하여 인코딩 장치의 변환부가 수행한 변환에 대한 역변환을 수행할 수 있다. 역변환부(230, 270)는 인코딩 장치에서 수행된 DCT(Discrete Cosine Transform) 및 DST(Discrete Sine Transform)에 대해 역DCT 및/또는 역DST를 수행할 수 있다.
인코딩 장치에서 DCT 및/또는 DST는 예측 방법, 현재 블록의 크기 및 예측 방향 등 복수의 정보에 따라 선택적으로 수행될 수 있고, 디코딩 장치의 역변환부(230, 270)는 인코딩 장치에서 수행된 변환 정보를 기초로 역변환을 수행할 수 있다.
예컨대, 역변환부(230, 270)는 예측 모드/블록 크기에 따라서 역DCT와 역DST를 적용할 수 있다. 가령, 역변환부(230, 270)는 인트라 예측이 적용된 4x4 루마 블록에 대해서 역DST를 적용할 수도 있다.
또한, 역변환부(230, 270)는 예측 모드/블록 크기에 상관 없이, 특정 역변환 방법을 고정적으로 사용할 수도 있다. 예컨대, 역변환부(230, 270)는 모든 변환 블록에 역DST만을 적용할 수 있다. 또한, 역변환부(230, 270)는 모든 변환 블록에 역DCT만을 적용할 수도 있다.
역변환부(230, 270)는 변환 계수들 혹은 변환 계수의 블록을 역변환하여 레지듀얼 혹은 레지듀얼 블록을 생성할 수 있다.
역변환부(230, 270)는 또한, 필요에 따라서 혹은 인코딩 장치에서 인코딩된 방식에 따라서, 변환을 생략(skip) 할 수도 있다. 예컨대, 역변환부(230, 270)는 특정한 예측 방법이 적용되거나 특정 크기를 갖는 블록, 혹은 특정 예측 블록이 적용된 특정한 크기의 블록에 대하여 변환을 생략할 수도 있다.
예측부(235, 275)는 엔트로피 디코딩부(215, 255)로부터 전달된 예측 블록 생성 관련 정보와 메모리(245, 285)에서 제공된 이전에 디코딩된 블록 및/또는 픽처 정보를 기초로 현재 블록에 대한 예측 블록을 생성할 수 있다.
현재 블록에 대한 예측 모드가 인트라 예측(intra prediction) 모드인 경우에, 예측부(235, 275)는 현재 픽처 내의 픽셀 정보를 기초로 현재 블록에 대한 인트라 예측을 수행할 수 있다.
현재 블록에 대한 예측 모드가 인터 예측(inter prediction) 모드인 경우에, 예측부(235, 275)는 현재 픽처의 이전 픽처 또는 이후 픽처 중 적어도 하나의 픽처에 포함된 정보를 기초로 현재 블록에 대한 인터 예측을 수행할 수 있다. 인터 예측에 필요한 움직임 정보의 일부 또는 전부는 인코딩 장치로부터 수신한 정보를 확인하고, 이에 대응하여 유도될 수 있다.
인터 예측의 모드로서 스킵 모드가 적용되는 경우에는 인코딩 장치로부터 레지듀얼이 전송되지 않으며 예측 블록을 복원 블록으로 할 수 있다.
한편, 레이어 1의 예측부(235)는 레이어 1 내의 정보만을 이용하여 인터 예측 또는 인트라 예측을 수행할 수도 있고, 다른 레이어(레이어 0)의 정보를 이용하여 인터 레이어 예측을 수행할 수도 있다.
예컨대, 레이어 1의 예측부(235)는 레이어 1의 움직임 정보, 레이어 1의 텍스처 정보, 레이어 1의 유닛 정보, 레이어 1의 파라미터 정보 중 하나를 이용하여 현재 블록에 대한 예측을 수행할 수 있다. 또한, 레이어 1의 예측부(235)는 레이어 1의 움직임 정보, 레이어 1의 텍스처 정보, 레이어 1의 유닛 정보, 레이어 1의 파라미터 정보 중 복수의 정보를 이용하여 현재 블록에 대한 예측을 수행할 수도 있다.
레이어 1의 예측부(235)는 레이어 0의 예측부(275)로부터 레이어 1의 움직임 정보를 전달받아서 움직임 예측을 수행할 수 있다. 인터 레이어 움직임 예측을 인터 레이어 인터 예측이라고도 한다. 인터 레이어 움직임 예측에 의해, 참조 레이어(베이스 레이어)의 움직임 정보를 이용하여 현재 레이어(인핸스먼트 레이어)의 현재 블록에 대한 예측이 수행될 수 있다. 예측부(235)는 필요한 경우에, 참조 레이어의 움직임 정보를 스케일링 하여 이용할 수도 있다.
레이어 1의 예측부(235)는 레이어 0의 예측부(275)로부터 레이어 1의 텍스처 정보를 전달받아서 텍스처 예측을 수행할 수 있다. 텍스처 예측은 인터 레이어 인트라 예측 혹은 인트라 BL(Base Layer) 예측이라고도 불린다. 텍스처 예측은 참조 레이어의 참조 블록이 인트라 예측에 의해 복원된 경우에 적용될 수 있다. 인터 레이어 인트라 예측에서는 참조 레이어 내 참조 블록의 텍스처를 인핸스먼트 레이어의 현재 블록에 대한 예측 값으로 사용할 수 있다. 이때, 참조 블록의 텍스처는 업샘플링에 의해 스케일링될 수 있다.
레이어 1의 예측부(235)는 레이어 0의 예측부(275)로부터 레이어 1의 유닛 파라미터 정보를 전달받아서 유닛 파라미터 예측을 수행할 수 있다. 유닛 파라미터 예측에 의해, 베이스 레이어의 유닛(CU, PU 및/또는 TU) 정보가 인핸스먼트 레이어의 유닛 정보로 사용되거나, 베이스 레이어의 유닛 정보를 기반으로 인핸스먼트 레이어의 유닛 정보가 결정될 수 있다.
레이어 1의 예측부(235)는 레이어 0의 예측부(275)로부터 레이어 1의 필터링에 관한 파라미터 정보를 전달받아서 파라미터 예측을 수행할 수도 있다. 파라미터 예측에 의해, 베이스 레이어에서 사용한 파라미터를 유도하여 인핸스먼트 레이어에서 재사용하거나, 베이스 레이어에서 사용한 파라미터를 기반으로 인핸스먼트 레이어에 대한 파라미터를 예측할 수 있다.
가산기(290, 295)는 예측부(235, 275)에서 생성된 예측 블록과 역변환부(230, 270)에서 생성된 레지듀얼 블록을 이용해 복원 블록을 생성할 수 있다. 이 경우, 가산기(290, 295)를 복원 블록을 생성하는 별도의 유닛(복원 블록 생성부)로 볼 수 있다.
가산기(290, 295)에서 복원된 블록 및/또는 픽처는 필터링부(240, 280)로 제공될 수 있다.
필터링부(240, 280)는 복원된 블록 및/또는 픽처에 디블록킹 필터링, SAO(Sample Adaptive Offset) 및/또는 ALF 등을 적용할 수 있다.
필터링부(240, 280)는 디블록킹 필터, ALF, SAO를 모두 적용하지 않고, 디블록킹 필터만 적용하거나, 디블록킹 필터와 ALF만 적용하거나, 디블록킹 필터와 SAO만을 적용할 수도 있다.
도 2의 예을 참조하면, 레이어 1의 필터링부(240)는 레이어 1의 예측부(235) 및/또는 레이어 1의 필터링부(280)으로부터 전달되는 파라미터 정보를 이용하여 복원된 픽처에 대한 필터링을 수행할 수도 있다. 예컨대, 레이어 1에서 필터링부(240)는 레이어 0에서 적용된 필터링의 파라미터로부터 예측된 파라미터를 이용하여 레이어 1에 대한 혹은 레이어 간의 필터링을 적용할 수 있다.
메모리(245, 285)는 복원된 픽처 또는 블록을 저장하여 참조 픽처 또는 참조 블록으로 사용할 수 있도록 할 수 있다. 메모리(245, 285)는 저장된 복원 픽처를 소정의 출력부(미도시) 혹은 디스플레이(미도시)를 통해 출력할 수도 있다.
도 2의 예에서는 재정렬부, 역양자화부, 역변환부 등으로 나누어 설명하였으나, 도 1의 인코딩 장차에서와 같이, 역양자화/역변환부의 한 모듈에서 재정렬, 역양자화, 역변환을 순서대로 수행하도록 디코딩 장치를 구성할 수도 있다.
도 1 및 도 2의 예에서는 예측부로 설명하였으나, 발명의 이해를 돕기 위해, 레이어 1의 예측부는 다른 레이어(레이어 0)의 정보를 이용하여 예측을 수행하는 인터 레이어 예측부와 다른 레이어(레이어 0)의 정보를 이용하지 않고 예측을 수행하는 인터/인트라 예측부를 포함하는 것으로 볼 수도 있다.
도 3은 본 발명에 따라서 스케일러블 코딩을 수행하는 인코딩 장치와 디코딩 장치에서의 레이어 간 예측에 관한 일 예를 설명하는 블록도이다.
도 3을 참조하면, 레이어 1의 예측부(300)는 인터/인트라 예측부(340) 및 인터 레이어 예측부(350)를 포함한다.
레이어 1의 예측부(300)는 레이어 0의 정보로부터 레이어 1의 예측에 필요한 인터 레이어 예측을 수행할 수 있다.
예컨대, 인터 레이어 예측부(350)는 레이어 0의 예측부(320) 및/또는 필터링부(330)로부터 레이어 0의 정보를 전달받아 레이어 1의 예측에 필요한 인터 레이어 예측을 수행할 수 있다.
레이어 1의 인터/인트라 예측부(340)는, 레이어 0의 정보를 이용하지 않고, 레이어 1의 정보를 이용하여 인터 예측 혹은 인트라 예측을 수행할 수 있다.
또한, 레이어 1의 인터/인트라 예측부(340)는, 인터 레이어 예측부(350)로부터 전달된 정보를 이용하여, 레이어 0의 정보에 기반한 예측을 수행할 수도 있다.
아울러, 레이어 1의 필터링부(310)는 레이어 1의 정보에 기반하여 필터링을 수행할 수도 있고, 레이어 0의 정보에 기반하여 필터링을 수행할 수도 있다. 레이어 0의 정보는 레이어 0의 필터링부(330)로부터 레이어 1의 필터링부(310)에 전달될 수도 있고, 레이어 1의 인터 레이어 예측부(350)로부터 레이어 1의 필터링부(310)에 전달될 수도 있다.
한편, 레이어 0으로부터 인터 레이어 예측부(350)로 전달되는 정보로는 레이어 0의 유닛 파라미터에 관한 정보, 레이어 0의 움직임 정보, 레이어 0의 텍스처 정보, 레이어 0의 필터 파라미터 정보 중 적어도 하나일 수 있다.
설명의 편의를 위해, 인터 레이어 예측부(350) 내에서 각 인터 레이어 정보를 예측하는 서브 예측부를 가정하자.
예컨대, 인터 레이어 예측부(350)는 텍스처 예측부(360), 움직임 예측부(370), 유닛 정보 예측부(380), 파라미터 예측부(390)를 포함할 수 있다.
텍스처 예측부(360)는, 참조 레이어의 참조 블록이 인트라 예측에 의해 복원된 경우에, 참조 레이어 내 참조 블록의 텍스처를 인핸스먼트 레이어의 현재 블록에 대한 예측 값으로 사용할 수 있다. 이때, 텍스처 예측부(360)는 참조 블록의 텍스처를 업샘플링에 의해 스케일링할 수 있다.
움직임 예측부(370)는 레이어 0 (참조 레이어 혹은 베이스 레이어)의 움직임 정보를 이용하여 레이어 1 (현재 레이어 혹은 인핸스먼트 레이어)의 현재 블록에 대한 예측을 수행할 수 있다. 이때, 움직임 예측부(370)는 참조 레이어의 움직임 정보를 스케일링 할 수도 있다.
유닛 정보 예측부(380)는 베이스 레이어의 유닛(CU, PU 및/또는 TU) 정보를 유도하여 인핸스먼트 레이어의 유닛 정보로 사용하거나, 베이스 레이어의 유닛 정보를 기반으로 인핸스먼트 레이어의 유닛 정보를 결정할 수 있다.
파라미터 예측부(390)는 베이스 레이어에서 사용한 파라미터를 유도하여 인핸스먼트 레이어에서 재사용하도록 하거나 베이스 레이어에서 사용한 파라미터를 기반으로 인핸스먼트 레이어에 대한 파라미터를 예측할 수 있다.
여기서는 인터 레이어 예측의 예로서, 인터 레이어 텍스처 예측, 인터 레이어 움직임 예측, 인터 레이어 유닛 정보 예측, 인터 레이어 파라미터 예측을 설명하였으나, 본 발명에서 적용할 수 있는 인터 레이어 예측은 이에 한정되지 않는다.
예컨대, 인터 레이어 예측부는 인터 레이어 레지듀얼 예측을 수행하는 서브 예측부 및/또는 인터 레이어 차분 예측을 수행하는 서브 예측부를 더 포함할 수도 있고, 상술한 서브 예측부들의 조합으로 인터 레이어 레지듀얼 예측, 인터 레이어 차분 예측 등을 수행할 수도 있다.
도 3의 구성이 인코딩 장치의 구성이라고 할 때, 레이어 1에서, 예측부(300)는 도 1의 예측부(110)에 대응할 수 있고, 필터링부(310)는 도 1의 필터링부(120)에 대응할 수 있다. 레이어 0에서, 예측부(320)는 도 1의 예측부(140)에 대응할 수 있고, 필터링부(330)는 도 1의 필터링부(150)에 대응할 수 있다.
또한, 도 3의 구성이 디코딩 장치의 구성이라고 한다면, 레이어 1에서, 예측부(300)는 도 2의 예측부(235)에 대응할 수 있고, 필터링부(310)는 도 2의 필터링부(240)에 대응할 수 있다. 레이어 0에서, 예측부(320)는 도 2의 예측부(275)에 대응할 수 있고, 필터링부(330)는 도 2의 필터링부(280)에 대응할 수 있다.
이처럼, 스케일러블 비디오 코딩에서는 다른 레이어의 정보를 이용하여 현재 레이어의 정보를 예측하는 인터 레이어 예측이 수행될 수 있다.
이하, 본 명세서에서 현재 블록은 현재 부호화, 복호화 및/또는 예측 과정이 수행되는 블록으로서, 부호화, 복호화 및/또는 예측 과정이 수행될 때의 처리 단위에 대응하는 블록을 의미할 수 있다. 일례로, 현재 블록에 대해 예측 과정이 수행되는 경우, 현재 블록은 현재 예측 유닛에 대응하는 예측 대상 블록에 해당될 수 있다. 그리고, 본 명세서에서 예측에 의해 유도된 블록은 예측 블록이라 한다.
유닛은 부호화 및/또는 복호화 과정이 수행될 때의 처리 단위를 의미하므로 픽셀 및/또는 샘플들의 2차원 어레이로 구성된 블록과 구별될 수도 있으나, 본 명세서에서는 설명의 편의상 유닛이 경우에 따라 유닛에 대응하는 블록을 지칭할 수도 있다. 일례로, 하나의 예측 유닛에 대응하는 예측 대상 블록이 예측 유닛으로 지칭될 수 있고, 하나의 코딩 유닛에 대응하는 부호화/복호화 대상 블록이 코딩 유닛으로 지칭될 수도 있다. 이러한 구별은 해당 기술 분야에서 통상의 지식을 가진 자라면 명확하게 이해할 수 있을 것이다.
도 4는 본 발명이 적용되는 시스템에서 처리 유닛의 구조에 관한 일 예를 개략적으로 나타내는 도면이다.
코딩 유닛(Coding Unit; CU)은 픽처의 부호화/복호화가 수행되는 단위를 의미할 수 있다. 예컨대, 코딩 유닛은 인트라/인터 예측, 변환, 양자화 및/또는 엔트로피 코딩 등의 과정에서 픽처를 처리하기 위한 처리 단위일 수 있다.
픽처 내 코딩 유닛은 쿼드 트리 구조(Quad Tree Structure)를 기반으로 깊이(depth)를 가지며 재귀적으로 분할될 수 있다. 이때, 픽처 내 모든 코딩 유닛들이 동일한 형태로 분할될 필요는 없다. 다만, 코딩 및 처리 과정에서의 편의를 위해서 코딩 유닛의 최대 크기 또는 최소 크기에 대한 제한이 있을 수 있다. 예컨대, 코딩 유닛의 최대 크기가 정해졌다면 그것을 최대 코딩 유닛 크기라 하고, 최소 크기가 정해졌다면 그것을 최소 코딩 유닛 크기라 할 수 있다. 또한, 최대 코딩 유닛 크기를 가지는 코딩 유닛은 최대 코딩 유닛(Largest Coding Unit: LCU)이라 할 수 있으며, 최소 코딩 유닛 크기를 가지는 코딩 유닛은 최소 코딩 유닛(Smallest Coding Unit: SCU)이라 할 수 있다.
픽처 내 코딩 유닛이 분할될 때, 코딩 유닛이 분할되는지 여부를 나타내는 정보를 지정할 수 있다. 예를 들어, 분할 여부를 나타내는 플래그 값이 1이면 해당 코딩 유닛에 대응하는 코딩 블록은 4개의 블록으로 분할되고, 분할 여부를 나타내는 플래그 값이 0이면 해당 코딩 유닛은 더 이상 분할되지 않는다. 이때, 인코딩 장치는 더 이상 분할되지 않는 코딩 유닛에 대한 부호화 과정을 수행할 수 있다. 코딩 유닛은 64x64, 32x32, 16x16, 8x8 등의 크기를 가질 수 있다.
여기서, 쿼드 트리 구조를 기반으로 재귀적으로 분할되는 코딩 블록은 코딩 트리 블록(Coding Tree Block; CTB)으로 불릴 수 있다. 하나의 코딩 트리 블록은 분할되지 않을 수도 있다. 이러한 경우, 코딩 트리 블록 자체가 하나의 코딩 유닛에 해당될 수 있으며, 이러한 코딩 트리 블록은 최대 크기의 코딩 유닛인 최대 코딩 유닛(LCU)에 대응될 수 있다.
도 4를 참조하면, 코딩 트리 블록(400)은 분할을 통해서 더 작은 코딩 유닛들로 이루어진 계층적 구조를 가질 수 있다. 코딩 트리 블록(400)의 계층적 구조는 크기 정보, 깊이 정보, 분할 플래그 정보 등을 기반으로 특정될 수 있다. 이때, 코딩 트리 블록에 대한 크기 정보, 깊이 정보, 분할 플래그 정보 등은 비트스트림에 포함되어 인코딩 장치로부터 디코딩 장치로 전송될 수 있다.
한편, 인트라 예측 혹은 인터 예측은 더 이상 분할되지 않는 코딩 유닛을 대상으로 이루어진다. 이러한 더 이상 분할되지 않는 하나의 코딩 유닛은 하나 이상의 예측 유닛(Prediction Unit; PU) 또는 예측 블록(Prediction Block; PB)으로 분할될 수 있으며, 이러한 분할 과정 역시 파티션(partition)이라고 지칭될 수 있다.
예측 유닛은 예측을 수행하는 기본 단위이며, 인트라 예측 혹은 인터 예측이 수행될 수 있다. 예를 들어, 인트라 예측이 수행되는 경우 예측 유닛 단위로 인트라 예측 모드가 결정될 수 있고, 인터 예측이 수행되는 경우 예측 유닛 단위로 인터 예측 모드 및 움직임 정보 등이 결정될 수 있다. 이때, 예측이 수행되는 처리 단위와 예측에 대한 구체적인 내용(예측 방법 및 예측 모드)이 정해지는 처리 단위는 같을 수도 있으며, 서로 다를 수도 있다. 예컨대, 예측 방법과 예측 모드 등은 예측 유닛 단위로 결정되고, 예측의 수행은 변환 유닛 단위로 이루어질 수도 있다.
도 4를 참조하면, 하나의 코딩 유닛(410)은 하나의 예측 유닛으로 사용되거나 복수의 예측 유닛으로 분할될 수 있다. 이때, 인트라 모드 혹은 인터 모드에 따라 코딩 유닛(410)의 분할 형태(partitioning type)(또는, 분할 모드)가 다를 수 있다.
예를 들어, 인트라 모드의 경우(420), 코딩 유닛(410)의 분할 모드는 2N×2N 또는 N×N 모드일 수 있다. 인터 모드의 경우(430), 코딩 유닛(410)의 분할 모드는 2Nx2N, 2NxN, Nx2N, NxN, 2NxnU, 2NxnD, nLx2N 또는 nRx2N 모드일 수 있다. 여기서, N은 정수일 수 있다.
한편, 인트라 모드(인트라 예측)는 상술한 도 1 내지 도 3의 예측부에 의해 수행될 수 있으며, 예측부는 현재 픽처 내 복원된 픽셀을 기초로 예측을 수행하여 현재 블록에 대한 예측 블록을 생성할 수 있다. 예를 들어, 예측부는 현재 블록의 주변에 위치한 주변 블록(예컨대, 현재 블록의 상단, 좌측, 좌측 상단 및/또는 우측 상단에 위치한 복원된 블록)을 이용하여 현재 블록 내의 픽셀 값을 예측할 수 있다.
이하, 스케일러블 코딩에서 레이어 간 예측(즉, 인터 레이어 예측) 시, 현재 레이어(예컨대, 레이어 1 혹은 인핸스먼트 레이어)에서 수행될 수 있는 인트라 예측에 대하여 도면을 참조하여 구체적으로 설명한다.
도 5는 본 발명이 적용될 수 있는 인트라 예측 모드의 일예를 도시한 도면이다.
인트라 예측은 현재 블록의 인트라 예측 모드를 기반으로 수행될 수 있다. 인트라 예측 모드는 현재 블록의 픽셀 값을 예측하는데 사용되는 참조 픽셀들이 위치한 방향 및/또는 예측 방식에 따라 방향성 모드와 비방향성 모드를 포함할 수 있다. 도 5에는 33개의 방향성 예측 모드와 적어도 두 개의 비방향성 예측 모드가 도시되어 있다.
비방향성 예측 모드는 DC 모드와 Planar 모드를 포함할 수 있다. DC 모드는 고정된 하나의 값을 현재 블록 내 픽셀들의 예측 값으로 이용할 수 있다. 일예로, DC 모드에서 고정된 하나의 값은 현재 블록의 주변에 위치한 픽셀 값들의 평균에 의해 유도될 수 있다. Planar 모드는 현재 블록에 수직으로 인접한 픽셀과 수평으로 인접한 픽셀을 이용하여 수직 방향 보간 및 수평 방향 보간을 수행하고, 이들의 평균값을 현재 블록 내 픽셀들의 예측 값으로 이용할 수 있다.
방향성 예측 모드는 참조 픽셀이 위치한 방향을 나타내는 모드로, 현재 블록내 예측 대상 픽셀과 참조 픽셀 간의 각도로 해당 방향을 나타낼 수 있다. 방향성 예측 모드는 Angular 모드로 불릴 수 있으며, 수직 모드, 수평 모드 등을 포함할 수 있다. 수직 모드는 현재 블록에 수직 방향으로 인접한 픽셀 값을 현재 블록 내 픽셀의 예측 값으로 이용할 수 있으며, 수평 모드는 현재 블록에 수평 방향으로 인접한 픽셀 값을 현재 블록 내 픽셀의 예측 값으로 이용할 수 있다. 그리고, 수직 모드와 수평 모드를 제외한 나머지 Angular 모드는 각각의 모드에 대해 미리 정해진 각도 및/또는 방향에 위치하는 참조 픽셀을 이용하여 현재 블록 내 픽셀의 예측 값을 도출할 수 있다.
일예로, 도 5에 도시된 바와 같이 인트라 예측 모드는 소정의 각도 및/또는 예측 방향에 따라 소정의 예측 모드 번호가 할당될 수 있다. Planar 모드에 할당되는 모드 번호는 0이고, DC 모드에 할당되는 모드 번호는 1일 수 있다. 또한, 수직 모드에 할당되는 모드 번호는 26이고, 수평 모드에 할당되는 모드 번호는 10일 수 있다. 그리고, 수직 및 수평 모드를 제외한 나머지 Angular 모드들은 인트라 예측 모드의 각도 및/또는 예측 방향에 따라 서로 다른 모드 번호가 할당될 수 있다.
한편, 현재 블록에 대한 인트라 예측 모드는 그 모드를 나타내는 값 자체로 전송될 수도 있으나, 전송 효율을 높이기 위해서 현재 블록의 예측 모드 값을 예측한 정보를 전송할 수도 있다. 예컨대, 현재 블록에 인접한 주변 블록의 인트라 예측 모드를 이용하여 현재 블록의 예측 모드에 대한 예측 값(Most Probable Mode; MPM)을 유도할 수 있다.
도 5에 도시된 인트라 예측 모드의 예측 방향 및 인트라 예측 모드에 할당된 모드 번호는 하나의 예시이며, 본 발명이 이에 한정되어 적용되는 것은 아니다. 필요에 따라서 인트라 예측 모드의 예측 방향 및 예측 모드 번호는 변경 가능하다. 또한, 인트라 예측 모드의 개수(종류)도 필요에 따라서 변경하여 적용될 수 있다. 이하, 본 명세서에서는 설명의 편의상 다른 언급이 없는 한 도 5에 도시된 인트라 예측 모드를 기반으로 인트라 예측이 수행된다고 가정한다.
도 6은 인트라 예측이 수행되는 현재 블록과 주변 블록을 도시한 도면이다.
도 6을 참조하면, 현재 블록(600)은 현재 블록(600) 내 픽셀 값을 예측하기 위해 인트라 예측 모드를 기반으로 예측이 수행될 수 있다. 이때, 주변 블록의 복원된 픽셀을 이용하여 현재 블록(600)에 대한 인트라 예측이 수행될 수 있다.
주변 블록은 현재 블록(600)에 인접한 블록을 의미하며, 예컨대 현재 블록(600)의 좌측에 인접한 좌측 주변 블록(A), 현재 블록(600)의 상단에 인접한 상단 주변 블록(미도시), 현재 블록(600)의 좌측 상단에 인접한 좌측 상단 주변 블록(미도시), 현재 블록(600)의 우측 상단에 인접한 우측 상단 주변 블록(미도시), 현재 블록(600)의 좌측 하단에 인접한 좌측 하단 블록(C), 현재 블록(600)의 하단에 인접한 하단 블록(D)일 수 있다.
이때, 현재 예측 대상 블록인 현재 블록(600)을 중심으로, 현재 블록(600)의 좌측 및 상단에 위치하는 블록들(예컨대, 좌측 주변 블록, 좌측 상단 주변 블록, 상단 주변 블록, 우측 상단 주변 블록)은 현재 픽처 내 복원된(혹은 인코딩이 완료된) 블록들이고, 현재 블록(600)의 우측 및 하단에 위치하는 블록들(예컨대, 좌측 하단 주변 블록(C), 하단 주변 블록(D))은 현재 픽처 내 복원되지 않은(혹은 인코딩되지 않은) 블록들이다.
일예로, 현재 블록(600)이 수평 모드를 기반으로 예측이 수행되는 경우, 좌측 주변 블록(A)의 픽셀들(610)을 이용하여 현재 블록(600)의 픽셀 값을 예측할 수 있다. 현재 블록(600)이 수직 모드를 기반으로 예측이 수행되는 경우, 상단 주변 블록의 픽셀들(620)을 이용하여 현재 블록(600)의 픽셀 값을 예측할 수 있다. 또는, 인트라 예측 모드의 예측 방향에 따라서, 좌측 주변 블록(A)의 픽셀들(610), 좌측 상단 주변 블록의 픽셀, 상단 주변 블록의 픽셀들(620), 우측 상단 주변 블록의 픽셀들 혹은 좌측 하단 주변 블록(C) 내의 픽셀들(X 영역)을 이용할 수 있다.
이때, 좌측 주변 블록(A)의 픽셀들(610), 좌측 상단 주변 블록의 픽셀, 상단 주변 블록의 픽셀들(620), 우측 상단 주변 블록의 픽셀들은 복원된 픽셀들이기 때문에, 현재 블록(600)의 인트라 예측 시 참조 픽셀로 사용될 수 있다. 반면, 좌측 하단 주변 블록(C) 내의 픽셀들(X 영역)은 복원되지 않은 픽셀들이기 때문에, 현재 블록(600)의 인트라 예측 시 참조 픽셀로 사용될 수 없다.
상기와 같이, 좌측 하단 주변 블록(C) 내의 픽셀들(X 영역)과 같이 가용하지 않은(unavailable) 참조 픽셀을 이용하여 현재 블록에 대한 인트라 예측을 수행하게 될 경우, 가용하지 않은 참조 픽셀을 가용한 참조 픽셀로 대체할 수 있는 방법이 필요하다.
이하, 본 발명에서는 스케일러블 코딩에서 현재 레이어(인핸스먼트 레이어) 내의 현재 예측 대상 블록(이하, 현재 블록이라 함)에 대한 예측을 수행할 때, 가용하지 않은 참조 정보에 대해서는 이미 복원이 완료된 다른 레이어의 정보를 참조하여 예측을 수행하는 방법을 제공한다.
도 7은 본 발명의 일 실시예에 따른 인트라 예측 방법을 설명하기 위한 현재 블록과 현재 블록의 주변에 위치한 주변 샘플(혹은 픽셀)을 도시한 도면이다.
도 7의 (a)를 참조하면, 현재 레이어(예컨대, 인핸스먼트 레이어) 내 현재 블록(710)의 인트라 예측은 예측 모드를 기반으로 수행될 수 있다. 이때, 도 5에서 상술한 바와 같이 인트라 예측 모드의 예측 방식 및/또는 방향성에 따라 현재 블록(710)의 주변에 위치한 주변 샘플들(711, 713, 715, 717, 719)로부터 현재 블록(710)의 인트라 예측에 사용되는 참조 샘플이 결정될 수 있다.
주변 샘플들은 도 6에서 상술한 바와 같이 현재 블록(710)을 중심으로, 현재 블록(710)의 좌측 상단 영역(711)의 샘플(이하, 좌측 상단 샘플), 현재 블록(710)의 상단 영역(713)의 샘플들(이하, 상단 샘플들), 현재 블록(710)의 우측 상단 영역(715)의 샘플들(이하, 우측 상단 샘플들), 현재 블록(710)의 좌측 영역(717)의 샘플들(이하, 좌측 샘플들), 현재 블록(710)의 좌측 하단 영역(719)의 샘플들(이하, 좌측 하단 샘플들)일 수 있다.
예를 들어, 현재 블록(710)의 인트라 예측 모드가, 도 5에 도시된 바와 같은 인트라 예측 모드에서 모드 번호 2 내지 9 중 하나인 경우, 그 예측 모드의 방향성으로 인해 좌측 하단 샘플들(719)을 이용하여 현재 블록(710)의 인트라 예측을 수행하게 된다. 이때, 좌측 하단 샘플들(719)은 상술한 바와 같이, 현재 블록(710)을 포함하는 현재 픽처 내에서 복원되지 않은 샘플들이어서 가용하지 않은 참조 정보이다.
이때, 본 발명의 실시예에 따르면, 가용하지 않은 참조 정보, 예컨대 좌측 하단 샘플들(719)은 이미 디코딩이 완료된(혹은 인코딩이 완료된) 다른 레이어, 즉 베이스 레이어의 정보로 대체될 수 있다.
예컨대, 대체된 베이스 레이어의 정보는 현재 레이어(인핸스먼트 레이어) 내 가용하지 않은 참조 정보(예컨대, 좌측 하단 샘플들(719))에 대응하는 베이스 레이어의 샘플들(혹은 픽셀들)일 수 있다. 이때, 베이스 레이어의 샘플들은 현재 레이어의 해상도(resolution)에 맞추어 업샘플링(upsampling)된 샘플들일 수 있다.
도 7의 (b)를 참조하면, 현재 블록(720)의 인트라 예측 시 사용되는 참조 샘플들 중 가용하지 않은 참조 샘플들, 예컨대, 좌측 하단 샘플들(729)은 업샘플링된 베이스 레이어의 샘플들과 대체될 수 있다. 따라서, 대체된 베이스 레이어의 가용한 정보를 이용하여 현재 블록(710)의 인트라 예측이 수행될 수 있다.
도 8은 본 발명의 일 실시예에 따라 인트라 예측이 수행되는 현재 블록과 주변 샘플(혹은 픽셀)을 도시한 도면이다.
도 8을 참조하면, 현재 레이어(예컨대, 인핸스먼트 레이어) 내 현재 블록(810)은 인트라 예측 모드를 기반으로 예측이 수행되어 예측 샘플들이 생성될 수 있다. 이때, 인트라 예측 모드의 방향성에 따라 현재 블록(810)의 좌측 하단 영역(819) 내 샘플들(이하, 좌측 하단 샘플들)을 참조하여 현재 블록(810)의 인트라 예측이 수행될 수 있다.
이러한 경우, 도 7에서 상술한 바와 같이, 현재 레이어 내 좌측 하단 샘플들은 복원되지 않은 샘플들이어서 가용하지 않은 참조 정보이므로, 이미 디코딩이 완료된(혹은 인코딩이 완료된) 베이스 레이어 내 정보로 대체될 수 있다. 예컨대, 베이스 레이어 내 정보는 현재 레이어 내 가용하지 않은 좌측 하단 샘플들에 대응하는 베이스 레이어 내 샘플들일 수 있다. 이때, 베이스 레이어 내 샘플들은 현재 레이어의 해상도에 맞추어 업샘플링된 샘플들일 수 있다.
상기와 같이, 현재 레이어 내 좌측 하단 샘플들이 베이스 레이어 내 샘플들로 대체되어 현재 블록(810)에 대한 인트라 예측이 수행된다고 가정하자. 이때, 현재 블록(810)의 인트라 예측 모드의 방향성에 따라 현재 레이어 내 좌측 하단 샘플들이 참조되므로, 이러한 경우에 현재 레이어 내 좌측 하단 샘플들이 베이스 레이어 내 샘플들로 대체될 수 있다. 따라서, 현재 블록(810)의 인트라 예측 모드에 따라 현재 블록(810) 내 A 영역(820)은 현재 레이어의 참조 샘플들(예컨대, 817)을 이용하여 예측 샘플들이 생성될 수 있고 현재 블록(810) 내 B 영역(825)은 현재 레이어의 참조 샘플들(예컨대, 817) 및/또는 베이스 레이어의 샘플들(예컨대, 819)을 이용하여 예측 샘플들이 생성될 수 있다.
상술한 본 발명의 실시예에 따른 인트라 예측 방법을 사용하게 되면 현재 레이어(인핸스먼트 레이어)의 정보뿐만 아니라 다른 레이어(베이스 레이어)의 정보를 참조할 수 있어서, 영상의 부호화 및 복호화 효율을 향상시킬 수 있다.
한편, 영상의 특성 상 영상 내 각 샘플은 주변 샘플들과 강한 상관도(correlation)가 존재하므로, 참조 샘플과 현재 블록의 예측 대상 샘플 간의 거리가 멀어질수록 상관도가 떨어져 유사한 예측 샘플 값을 생성하지 못할 가능성이 높다.
이하, 본 발명에서는 현재 블록과 공간적으로 가까운 참조 샘플을 이용하여 인트라 예측을 수행하는 방법을 제공한다.
도 9는 본 발명의 다른 실시예에 따른 인트라 예측 방법을 설명하기 위한 현재 블록과 현재 블록의 주변에 위치한 주변 샘플(혹은 픽셀)을 도시한 도면이다.
도 9를 참조하면, 현재 레이어(예컨대, 인핸스먼트 레이어) 내 현재 블록(910)의 인트라 예측은 현재 블록(910)의 예측 모드를 기반으로 수행될 수 있다. 이때, 도 5에서 상술한 바와 같이 인트라 예측 모드의 예측 방식 및/또는 방향성에 따라 현재 블록(910)의 주변에 위치한 주변 샘플들(911, 913, 915, 917, 919)로부터 현재 블록(910)의 인트라 예측에 사용되는 참조 샘플이 결정될 수 있다.
주변 샘플들은 상술한 바와 같이 현재 블록(910)을 중심으로, 현재 블록(910)의 좌측 상단 영역(911)의 샘플(이하, 좌측 상단 샘플), 현재 블록(910)의 상단 영역(913)의 샘플들(이하, 상단 샘플들), 현재 블록(910)의 우측 상단 영역(915)의 샘플들(이하, 우측 상단 샘플들), 현재 블록(910)의 좌측 영역(917)의 샘플들(이하, 좌측 샘플들), 현재 블록(910)의 좌측 하단 영역(919)의 샘플들(이하, 좌측 하단 샘플들)일 수 있다.
예컨대, 현재 블록(910)의 인트라 예측 모드가 도 5에 도시된 바와 같은 인트라 예측 모드에서 모드 번호 2 내지 9 중 하나인 경우, 그 예측 모드의 방향성으로 인해 좌측 하단 샘플들(919)을 이용하여 현재 블록(910)의 인트라 예측을 수행하게 된다. 또는, 현재 블록(910)의 인트라 예측 모드가 도 5에 도시된 바와 같은 인트라 예측 모드에서 모드 번호 27 내지 34 중 하나인 경우, 그 예측 모드의 방향성으로 인해 우측 상단 샘플들(915)을 이용하여 현재 블록(910)의 인트라 예측을 수행하게 된다.
이러한 경우, 공간적으로 인접한 샘플들 사이에 강한 상관도를 가지는 영상의 특성 상, 좌측 하단 샘플들(919) 또는 우측 상단 샘플들(915)을 이용하여 현재 블록(910)의 인트라 예측을 수행하는 것 보다, 현재 블록(910)과 공간적으로 가까운 샘플들을 이용하여 현재 블록(910)의 인트라 예측을 수행하면 예측 성능이 향상될 수 있다.
일예로, 현재 블록(910)이 좌측 하단 샘플들(919)을 이용하여 인트라 예측이수행될 경우, 현재 블록(910)은 좌측 하단 샘플들(919)보다 공간적으로 가까운 현재 블록(910)의 하단 영역(920)의 샘플들(이하, 하단 샘플들)을 이용하여 예측이 수행되면 예측 성능이 향상될 수 있다. 그러나, 현재 레이어 내 하단 샘플들(920)은 복원되지 않은 샘플들이어서 가용하지 않는 정보이므로, 이미 디코딩이 완료된(혹은 인코딩이 완료된) 다른 레이어, 즉 베이스 레이어의 정보로 대체될 수 있다. 여기서, 베이스 레이어의 정보는 베이스 레이어 내 이미 디코딩이 완료된(혹은 인코딩이 완료된) 샘플들(혹은 픽셀들)일 수 있다. 예컨대, 현재 레이어(인핸스먼트 레이어) 내 좌측 하단 샘플들(919)은 현재 블록(910)의 하단 샘플들(920)에 대응하는 베이스 레이어의 샘플들로 대체될 수 있다. 이때, 베이스 레이어의 샘플들은 현재 레이어의 해상도에 맞추어 업샘플링된 베이스 레이어 내 샘플들일 수 있다.
다른 예로, 현재 블록(910)이 우측 상단 샘플들(915)을 이용하여 인트라 예측이 수행될 경우, 현재 블록(910)은 우측 상단 샘플들(915)보다 공간적으로 가까운 현재 블록(910)의 우측 영역(925)의 샘플들(이하, 우측 샘플들)을 이용하여 예측이 수행되면 예측 성능이 향상될 수 있다. 그러나, 현재 레이어 내 우측 샘플들(925)은 복원되지 않은 샘플들이어서 가용하지 않는 정보이므로, 이미 디코딩이 완료된(혹은 인코딩이 완료된) 다른 레이어, 즉 베이스 레이어의 정보로 대체될 수 있다. 여기서, 베이스 레이어의 정보는 베이스 레이어 내 이미 디코딩이 완료된(혹은 인코딩이 완료된) 샘플들(혹은 픽셀들)일 수 있다. 예컨대, 현재 레이어(인핸스먼트 레이어) 내 우측 상단 샘플들(915)은 현재 블록(910)의 우측 샘플들(925)에 대응하는 베이스 레이어의 샘플들로 대체될 수 있다. 이때, 베이스 레이어의 샘플들은 현재 레이어의 해상도에 맞추어 업샘플링된 베이스 레이어 내 샘플들일 수 있다.
도 10은 본 발명의 또 다른 실시예에 따른 인트라 예측 방법을 설명하기 위한 현재 블록과 현재 블록의 주변에 위치한 주변 샘플(혹은 픽셀)을 도시한 도면이다.
도 10을 참조하면, 현재 레이어(예컨대, 인핸스먼트 레이어) 내 현재 블록(1010)의 인트라 예측은 현재 블록(1010)의 예측 모드를 기반으로 수행될 수 있다. 이때, 도 5에서 상술한 바와 같이 인트라 예측 모드의 예측 방식 및/또는 방향성에 따라 현재 블록(1010)의 주변에 위치한 주변 샘플들(1011, 1013, 1015, 1017, 1019)로부터 현재 블록(1010)의 인트라 예측에 사용되는 참조 샘플이 결정될 수 있다.
주변 샘플들은 상술한 바와 같이 현재 블록(1010)을 중심으로, 현재 블록(1010)의 좌측 상단 영역(1011)의 샘플(이하, 좌측 상단 샘플), 현재 블록(1010)의 상단 영역(1013)의 샘플들(이하, 상단 샘플들), 현재 블록(1010)의 우측 상단 영역(1015)의 샘플들(이하, 우측 상단 샘플들), 현재 블록(1010)의 좌측 영역(1017)의 샘플들(이하, 좌측 샘플들), 현재 블록(1010)의 좌측 하단 영역(1019)의 샘플들(이하, 좌측 하단 샘플들)일 수 있다.
상술한 바와 같이, 현재 블록(1010) 내의 예측 대상 샘플은 참조 샘플과의 거리가 멀어질수록 상관도가 떨어져 원본 블록과 유사한 현재 블록(1010)의 예측 샘플을 생성할 수가 없다.
예컨대, 도 10에 도시된 바와 같이, 현재 블록(1010) 내의 예측 대상 샘플들(1020)에 대해 예측을 수행할 경우, 현재 블록(1010) 내의 다른 예측 대상 샘플들(1025)에 비해 참조 샘플들(1011, 1013, 1017)로부터 거리가 멀어져 예측 효율이 감소될 수 있다. 도 10에 도시된 화살표는 참조 샘플들(1011, 1013, 1017)로부터 예측 대상 샘플까지의 거리를 나타내기 위해 도시하였다.
따라서, 본 발명의 실시예에 따르면, 참조 샘플들(1011, 1013, 1015, 1017, 1019)로부터 기설정된 거리 이상에 위치하는 현재 블록(1010) 내 예측 대상 샘플에 대해 인트라 예측을 수행하는 경우, 참조 샘플들(1011, 1013, 1015, 1017, 1019)을 현재 블록(1010) 내 예측 대상 샘플과 보다 공간적으로 인접한 참조 샘플로 대체할 수 있다.
예를 들어, 기설정된 거리는 최대 거리 값과 최소 거리 값을 이용하여 계산될 수 있으며, 예컨대 최대 거리 값과 최소 거리 값의 평균을 이용할 수 있다. 최대 거리 값은 참조 샘플과의 거리가 최대가 되는 현재 블록(1010) 내 예측 대상 샘플까지의 거리 값일 수 있으며, 최소 거리 값은 참조 샘플과의 거리가 최소가 되는 현재 블록(1010) 내 예측 대상 샘플까지의 거리 값일 수 있다.
만일, 기설정된 거리가 최대 거리 값과 최소 거리 값의 평균이고, 인트라 예측 모드(예컨대, 수직, 수평 등의 방향성을 가지는 모드)에 따라 좌측 상단 샘플(1011), 상단 샘플들(1013), 좌측 샘플들(1017) 중 적어도 하나를 이용하여 현재 블록(1010)의 인트라 예측을 수행하는 경우라 가정하자. 이때, 현재 블록(1010) 내 예측 대상 샘플들(1020)에 대해 인트라 예측을 수행할 경우, 예측 대상 샘플들(1020)과 참조 샘플들(1011, 1013, 1017) 간의 거리가 기설정된 거리를 초과하게 되므로, 예측 대상 샘플들(1020)과 공간적으로 더 가까이 존재하는 주변 샘플들로 대체하고, 이 주변 샘플들을 참조하여 인트라 예측을 수행할 수 있다. 예컨대, 현재 블록(1010) 내 예측 대상 샘플들(1020)의 하단에 위치한 하단 샘플들 및/또는 우측에 위치한 우측 샘플들(1030)이 좌측 상단 샘플(1011), 상단 샘플들(1013), 좌측 샘플들(1017)보다 공간적으로 가까이에 위치하고 있다.
이때, 현재 레이어 내 하단 샘플들 및 우측 샘플들(1030)은 복원되지 않은 샘플들이어서 가용하지 않은 정보이므로, 하단 샘플들 및 우측 샘플들(1030)은 이미 디코딩이 완료된(혹은 인코딩이 완료된) 다른 레이어, 즉 베이스 레이어의 정보로 대체될 수 있다. 여기서, 베이스 레이어의 정보는 베이스 레이어 내 이미 디코딩이 완료된(혹은 인코딩이 완료된) 샘플들(혹은 픽셀들)일 수 있다. 예컨대, 현재 레이어(인핸스먼트 레이어) 내 하단 샘플들은 상기 하단 샘플들에 대응하는 베이스 레이어의 샘플들로 대체될 수 있다. 이때, 베이스 레이어의 샘플들은 현재 레이어의 해상도에 맞추어 업샘플링된 베이스 레이어 내 샘플들일 수 있다. 현재 레이어(인핸스먼트 레이어) 내 우측 샘플들은 상기 우측 샘플들에 대응하는 베이스 레이어의 샘플들로 대체될 수 있다. 이때, 베이스 레이어의 샘플들은 현재 레이어의 해상도에 맞추어 업샘플링된 베이스 레이어 내 샘플들일 수 있다.
일예로, 현재 블록(1010)의 인트라 예측 모드가 수직 모드(도 5의 26번 모드)일 때 현재 블록(1010)에 대한 인트라 예측을 수행할 경우, 상단 샘플들(1013)을 이용하여 현재 블록(1010)의 예측 샘플들을 생성한다. 이때, 기설정된 거리가 최대 거리 값과 최소 거리 값의 평균이라고 하면, 현재 블록(1010)의 아래쪽 영역 내 예측 대상 샘플들은 상단 샘플들(1013)로부터 기설정된 거리 이상에 위치하게 되므로, 상단 샘플들(1013)을 현재 블록(1010)의 하단 샘플들로 대체하여 예측을 수행할 수 있다. 이때, 본 발명에 따르면 현재 블록(1010)의 하단 샘플들은 가용하지 않은 샘플들이기 때문에, 현재 블록(1010)의 하단 샘플들에 대응하는 베이스 레이어 내 샘플들로 대체된다. 여기서, 현재 블록(1010)의 아래쪽 영역이라 함은, 현재 블록(1010)을 가로 방향으로 반으로 나누었을 때 아래쪽 1/2에 해당하는 영역을 말한다. 또한, 현재 블록(1010)의 인트라 예측 모드가 수평 모드(도 5의 10번 모드)일 때 좌측 샘플들(1017)을 이용하여 현재 블록(1010)의 인트라 예측이 수행될 수 있다. 이때, 기설정된 거리가 최대 거리 값과 최소 거리 값의 평균이라고 하면, 현재 블록(1010)을 세로 방향으로 반으로 나누었을 때 오른쪽 1/2에 해당하는 영역 내 예측 대상 샘플들은 좌측 샘플들(1017)로부터 기설정된 거리 이상에 위치하게 되므로, 좌측 샘플들(1017)을 현재 블록(1010)의 우측 샘플들로 대체하여 예측을 수행할 수 있다. 현재 블록(1010)의 우측 샘플들은 가용하지 않은 샘플들이기 때문에, 본 발명에 따르면 현재 블록(1010)의 우측 샘플들에 대응하는 베이스 레이어 내 샘플들로 대체된다. 상기 예로 든 수직 및 수평 모드 이외 인트라 예측 모드에 대해서도 현재 블록(1010)의 예측 대상 샘플과 참조 샘플과의 거리가 기설정된 거리 이상이면 참조 샘플을 예측 대상 샘플에 인접한 샘플(하단 샘플 혹은 우측 샘플 등)로 대체하되, 예측 대상 샘플에 인접한 샘플이 가용하지 않으면 베이스 레이어의 샘플로 대체할 수 있다.
도 11은 본 발명의 일 실시예에 따른 인트라 예측 방법을 개략적으로 나타내는 순서도이다.
도 11의 방법은 상술한 도 1의 인코딩 장치 또는 도 2의 디코딩 장치에서 수행될 수 있다. 보다 구체적으로는 상술한 도 1 내지 도 3의 예측부 혹은 인터 레이어 예측부에서 수행될 수 있다. 도 11의 실시예에서는 설명의 편의를 위해 도 11의 방법이 디코딩 장치에서 수행되는 것으로 설명하나, 이는 인코딩 장치에서도 동일하게 적용될 수 있다.
도 11을 참조하면, 디코딩 장치는 현재 레이어(인핸스먼트 레이어) 내 현재 블록의 주변에 위치한 주변 샘플들로부터 인트라 예측을 위한 참조 샘플들을 도출한다(S1100).
주변 샘플들은 상술한 바와 같이, 현재 블록을 중심으로, 좌측 상단 샘플, 상단 샘플들, 우측 상단 샘플들, 좌측 샘플들, 좌측 하단 샘플들일 수 있다. 이때, 디코딩 장치는 현재 블록의 인트라 예측 모드에 따라 좌측 상단 샘플, 상단 샘플들, 우측 상단 샘플들, 좌측 샘플들 및 좌측 하단 샘플들 중 적어도 하나를 인트라 예측을 위한 참조 샘플로 이용할 수 있다.
이때, 도출된 참조 샘플들 중 가용하지 않은 참조 샘플이 존재하면 디코딩 장치는 가용하지 않은 참조 샘플을 이미 복원이 디코딩된(혹은 인코딩이 완료된) 다른 레이어, 즉 베이스 레이어의 정보로 대체한다. 여기서, 베이스 레이어의 정보는 베이스 레이어 내 이미 디코딩이 완료된(혹은 인코딩이 완료된) 샘플들(혹은 픽셀들)일 수 있다.
예컨대, 좌측 상단 샘플, 상단 샘플들, 우측 상단 샘플들, 좌측 샘플들은 가용한 샘플일 수 있으며, 좌측 하단 샘플들은 가용하지 않은 샘플일 수 있다. 일예로, 도 7에서 상술한 바와 같이, 현재 블록이 좌측 하단 샘플들을 이용하여 예측을 수행할 경우, 좌측 하단 샘플들은 가용하지 않은 샘플들이기 때문에, 베이스 레이어의 샘플들로 대체될 수 있다. 예컨대, 현재 레이어 내 좌측 하단 샘플들에 대응하는 업샘플링된 베이스 레이어 내 샘플들로 대체될 수 있다.
또한, 영상의 특성 상 서로 인접한 샘플들 사이에는 강한 상관도를 가질 확률이 높기 때문에, 현재 블록 내 예측 대상 샘플은 공간적으로 인접한 참조 샘플을 이용하여 인트라 예측이 수행되면 예측 성능을 향상시킬 수 있다.
따라서, 도출된 참조 샘플들과 현재 블록 내 예측 대상 샘플 간의 거리가 기설정된 거리 이상이면 디코딩 장치는 해당 참조 샘플을 예측 대상 샘플과 공간적으로 더 가까이 존재하는 주변 샘플로 대체한다. 만일, 현재 레이어 내 대체된 주변 샘플이 가용하지 않은 샘플이면, 상기 주변 샘플을 이미 복원이 디코딩된(혹은 인코딩이 완료된) 다른 레이어, 즉 베이스 레이어의 정보로 대체한다. 여기서, 베이스 레이어의 정보는 베이스 레이어 내 이미 디코딩이 완료된(혹은 인코딩이 완료된) 샘플들(혹은 픽셀들)일 수 있다.
이때, 기설정된 거리는 상술한 바와 같이, 현재 블록 내 예측 대상 샘플과 참조 샘플 간의 거리를 기반으로 결정될 수 있다. 예컨대, 참조 샘플과의 거리가 최대가 되는 현재 블록 내 예측 대상 샘플까지의 거리 값과, 참조 샘플과의 거리가 최소가 되는 현재 블록 내 예측 대상 샘플까지의 거리 값의 평균을 기설정된 거리로 사용할 수 있다.
일예로, 도 10에서 상술한 바와 같이, 현재 블록 내에서 아래쪽 및 오른쪽 방향으로 존재하는 예측 대상 샘플일수록 좌측 상단 샘플, 상단 샘플들, 우측 상단 샘플들, 좌측 샘플들과의 거리가 멀어지는 경향이 있다. 이러한 좌측 상단 샘플, 상단 샘플들, 우측 상단 샘플들, 좌측 샘플들 등과 같은 참조 샘플들의 경우, 예측 대상 샘플과 보다 거리가 가까운 샘플들(예컨대, 예측 대상 샘플의 하단에 위치하는 하단 샘플들, 우측에 위치하는 우측 샘플들)로 대체하는 것이 예측 성능을 향상시킬 수 있다. 이때, 하단 샘플들 및 우측 샘플들은 복원되지 않은 샘플들이다. 따라서, 하단 샘플들 혹은 우측 샘플들은 그와 대응하는 이미 복원이 완료된(혹은 인코딩이 완료된) 베이스 레이어의 샘플들로 대체될 수 있다. 베이스 레이어의 샘플들은 현재 레이어의 해상도에 맞추어 업샘플링된 베이스 레이어의 샘플들일 수 있다.
다른 예로, 도 9에서 상술한 바와 같이, 우측 상단 샘플들 혹은 좌측 하단 샘플들이 참조 샘플인 경우, 우측 상단 샘플들 혹은 좌측 하단 샘플들은 현재 블록 내 예측 대상 샘플과의 거리가 더 가까운 우측 샘플들 혹은 하단 샘플들로 대체될 수 있다. 예컨대, 참조 샘플로 우측 상단 샘플들이 도출된 경우에는 우측 상단 샘플들 대신 우측 샘플들로 대체할 수 있으며, 참조 샘플로 좌측 하단 샘플들이 도출된 경우에는 좌측 하단 샘플들 대신 하단 샘플들로 대체할 수 있다. 이때, 상술한 바와 같이, 우측 샘플들 및 하단 샘플들은 복원되지 않은 샘플이므로, 우측 샘플들 혹은 하단 샘플들과 대응하는 이미 복원이 완료된(혹은 인코딩이 완료된) 베이스 레이어의 샘플들을 이용할 수 있다. 베이스 레이어의 샘플들은 현재 레이어의 해상도에 맞추어 업샘플링된 베이스 레이어의 샘플들일 수 있다.
디코딩 장치는 참조 샘플들을 이용하여 현재 블록의 인트라 예측을 수행하고, 현재 블록의 예측 샘플들을 생성한다(S1110).
이때, 상술한 실시예들에서와 같이, 참조 샘플이 베이스 레이어 내 샘플들로 대체된 경우라면 베이스 레이어내 샘플들을 이용하여 현재 블록의 예측 샘플들을 생성할 수 있다.
본 발명에 따르면, 현재 레이어 내의 가용하지 않은 참조 샘플 대신 베이스 레이어의 가용한 참조 샘플로 대체하거나 혹은 현재 블록과 보다 상관도가 높은 참조 샘플들을 이용하여 현재 블록에 대한 인트라 예측을 수행함으로써, 보다 예측 성능을 향상시킬 수 있다.
상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 상술한 실시예들은 다양한 양태의 예시들을 포함한다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.

Claims (16)

  1. 현재 블록을 포함하는 인핸스먼트 레이어와 베이스 레이어를 포함하는 스케일러블 비디오 디코딩 방법으로서,
    상기 현재 블록의 인트라 예측을 위한 참조 샘플을 도출하는 단계; 및
    상기 참조 샘플을 기반으로 상기 현재 블록에 대한 인트라 예측을 수행하여 상기 현재 블록의 예측 샘플을 생성하는 단계를 포함하며,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 현재 블록의 주변에 위치한 주변 샘플을 기반으로 도출된 상기 참조 샘플 중 적어도 하나가 상기 베이스 레이어의 샘플로 대체되는 것을 특징으로 하는 스케일러블 비디오 디코딩 방법.
  2. 제1항에 있어서,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 주변 샘플을 기반으로 도출된 상기 참조 샘플 중 가용하지 않은 참조 샘플이 존재하는 경우, 상기 가용하지 않은 참조 샘플을 상기 베이스 레이어의 샘플로 대체하는 것을 특징으로 하는 스케일러블 비디오 디코딩 방법.
  3. 제1항에 있어서,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 참조 샘플로부터 기설정된 거리 이상에 위치하는 상기 현재 블록 내의 예측 대상 샘플에 대한 인트라 예측을 수행하는 경우, 상기 참조 샘플을 상기 예측 대상 샘플에 인접한 샘플로 대체하되, 상기 예측 대상 샘플에 인접한 샘플이 가용하지 않은 샘플이면 상기 베이스 레이어의 샘플로 대체하는 것을 특징으로 하는 스케일러블 비디오 디코딩 방법.
  4. 제2항에 있어서,
    상기 베이스 레이어의 샘플은 상기 가용하지 않은 참조 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플인 것을 특징으로 하는 스케일러블 비디오 디코딩 방법.
  5. 제2항에 있어서,
    상기 가용하지 않은 참조 샘플은 상기 현재 블록의 좌측 하단에 위치한 좌측 하단 샘플이며,
    상기 베이스 레이어의 샘플은 상기 좌측 하단 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플인 것을 특징으로 하는 스케일러블 비디오 디코딩 방법.
  6. 제3항에 있어서,
    상기 예측 대상 샘플에 인접한 샘플은 상기 예측 대상 샘플의 하단에 위치한 하단 샘플 및 상기 예측 대상 샘플의 우측에 위치한 우측 샘플 중 적어도 하나이며,
    상기 베이스 레이어의 샘플은 상기 하단 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플 및 상기 우측 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플 중 적어도 하나인 것을 특징으로 하는 스케일러블 비디오 디코딩 방법.
  7. 제1항에 있어서,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 참조 샘플이 상기 현재 블록의 우측 상단에 위치한 우측 상단 샘플을 포함하는 경우, 상기 우측 상단 샘플을 상기 현재 블록의 우측에 위치한 우측 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플로 대체하는 것을 특징으로 하는 스케일러블 비디오 디코딩 방법.
  8. 제1항에 있어서,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 참조 샘플이 상기 현재 블록의 좌측 하단에 위치한 좌측 하단 샘플을 포함하는 경우, 상기 좌측 하단 샘플을 상기 현재 블록의 하단에 위치한 하단 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플로 대체하는 것을 특징으로 하는 스케일러블 비디오 디코딩 방법.
  9. 현재 블록을 포함하는 인핸스먼트 레이어와 베이스 레이어를 포함하는 스케일러블 비디오 인코딩 방법으로서,
    상기 현재 블록의 인트라 예측을 위한 참조 샘플을 도출하는 단계; 및
    상기 참조 샘플을 기반으로 상기 현재 블록에 대한 인트라 예측을 수행하여 상기 현재 블록의 예측 샘플을 생성하는 단계를 포함하며,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 현재 블록의 주변에 위치한 주변 샘플을 기반으로 도출된 상기 참조 샘플 중 적어도 하나가 상기 베이스 레이어의 샘플로 대체되는 것을 특징으로 하는 스케일러블 비디오 인코딩 방법.
  10. 제9항에 있어서,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 주변 샘플을 기반으로 도출된 상기 참조 샘플 중 가용하지 않은 참조 샘플이 존재하는 경우, 상기 가용하지 않은 참조 샘플을 상기 베이스 레이어의 샘플로 대체하는 것을 특징으로 하는 스케일러블 비디오 인코딩 방법.
  11. 제9항에 있어서,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 참조 샘플로부터 기설정된 거리 이상에 위치하는 상기 현재 블록 내의 예측 대상 샘플에 대한 인트라 예측을 수행하는 경우, 상기 참조 샘플을 상기 예측 대상 샘플에 인접한 샘플로 대체하되, 상기 예측 대상 샘플에 인접한 샘플이 가용하지 않은 샘플이면 상기 베이스 레이어의 샘플로 대체하는 것을 특징으로 하는 스케일러블 비디오 인코딩 방법.
  12. 제10항에 있어서,
    상기 베이스 레이어의 샘플은 상기 가용하지 않은 참조 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플인 것을 특징으로 하는 스케일러블 비디오 인코딩 방법.
  13. 제10항에 있어서,
    상기 가용하지 않은 참조 샘플은 상기 현재 블록의 좌측 하단에 위치한 좌측 하단 샘플이며,
    상기 베이스 레이어의 샘플은 상기 좌측 하단 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플인 것을 특징으로 하는 스케일러블 비디오 인코딩 방법.
  14. 제11항에 있어서,
    상기 예측 대상 샘플에 인접한 샘플은 상기 예측 대상 샘플의 하단에 위치한 하단 샘플 및 상기 예측 대상 샘플의 우측에 위치한 우측 샘플 중 적어도 하나이며,
    상기 베이스 레이어의 샘플은 상기 하단 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플 및 상기 우측 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플 중 적어도 하나인 것을 특징으로 하는 스케일러블 비디오 인코딩 방법.
  15. 제9항에 있어서,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 참조 샘플이 상기 현재 블록의 우측 상단에 위치한 우측 상단 샘플을 포함하는 경우, 상기 우측 상단 샘플을 상기 현재 블록의 우측에 위치한 우측 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플로 대체하는 것을 특징으로 하는 스케일러블 비디오 인코딩 방법.
  16. 제9항에 있어서,
    상기 참조 샘플을 도출하는 단계에서는,
    상기 참조 샘플이 상기 현재 블록의 좌측 하단에 위치한 좌측 하단 샘플을 포함하는 경우, 상기 좌측 하단 샘플을 상기 현재 블록의 하단에 위치한 하단 샘플에 대응하는 업샘플링된 상기 베이스 레이어의 샘플로 대체하는 것을 특징으로 하는 스케일러블 비디오 인코딩 방법.
PCT/KR2013/004069 2012-05-09 2013-05-09 스케일러블 비디오 인코딩/디코딩 방법 및 장치 WO2013169025A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261644948P 2012-05-09 2012-05-09
US61/644,948 2012-05-09

Publications (1)

Publication Number Publication Date
WO2013169025A1 true WO2013169025A1 (ko) 2013-11-14

Family

ID=49550986

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/004069 WO2013169025A1 (ko) 2012-05-09 2013-05-09 스케일러블 비디오 인코딩/디코딩 방법 및 장치

Country Status (1)

Country Link
WO (1) WO2013169025A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080095235A1 (en) * 2006-10-20 2008-04-24 Motorola, Inc. Method and apparatus for intra-frame spatial scalable video coding
KR20080063323A (ko) * 2005-10-19 2008-07-03 톰슨 라이센싱 스케일링가능한 비디오 코딩을 이용한 멀티-뷰 비디오 코딩
KR20100022073A (ko) * 2007-07-02 2010-02-26 니폰덴신뎅와 가부시키가이샤 동화상 스케일러블 부호화 방법 및 복호 방법, 그 장치, 그 프로그램 및 프로그램을 기록한 기록 매체
KR101066117B1 (ko) * 2009-11-12 2011-09-20 전자부품연구원 스케일러블 영상 코딩 방법 및 장치
KR20120018506A (ko) * 2010-08-23 2012-03-05 한국전자통신연구원 스케일러블 비디오 코덱의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080063323A (ko) * 2005-10-19 2008-07-03 톰슨 라이센싱 스케일링가능한 비디오 코딩을 이용한 멀티-뷰 비디오 코딩
US20080095235A1 (en) * 2006-10-20 2008-04-24 Motorola, Inc. Method and apparatus for intra-frame spatial scalable video coding
KR20100022073A (ko) * 2007-07-02 2010-02-26 니폰덴신뎅와 가부시키가이샤 동화상 스케일러블 부호화 방법 및 복호 방법, 그 장치, 그 프로그램 및 프로그램을 기록한 기록 매체
KR101066117B1 (ko) * 2009-11-12 2011-09-20 전자부품연구원 스케일러블 영상 코딩 방법 및 장치
KR20120018506A (ko) * 2010-08-23 2012-03-05 한국전자통신연구원 스케일러블 비디오 코덱의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치

Similar Documents

Publication Publication Date Title
WO2020071830A1 (ko) 히스토리 기반 움직임 정보를 이용한 영상 코딩 방법 및 그 장치
WO2017052081A1 (ko) 영상 코딩 시스템에서 인터 예측 방법 및 장치
WO2017209328A1 (ko) 영상 코딩 시스템에서 인트라 예측 방법 및 장치
WO2019117636A1 (ko) 비분리 2차 변환에 기반한 영상 코딩 방법 및 그 장치
WO2017164441A1 (ko) 비디오 코딩 시스템에서 인터 예측 방법 및 장치
WO2017014412A1 (ko) 비디오 코딩 시스템에서 인트라 예측 방법 및 장치
WO2014084656A1 (ko) 복수의 레이어를 지원하는 영상 부호화/복호화 방법 및 장치
WO2017082443A1 (ko) 영상 코딩 시스템에서 임계값을 이용한 적응적 영상 예측 방법 및 장치
WO2019117639A1 (ko) 변환에 기반한 영상 코딩 방법 및 그 장치
WO2016204373A1 (ko) 영상 코딩 시스템에서 영상 특성에 기반한 적응적 필터링 방법 및 장치
WO2013154366A1 (ko) 블록 정보에 따른 변환 방법 및 이러한 방법을 사용하는 장치
WO2017057877A1 (ko) 영상 코딩 시스템에서 영상 필터링 방법 및 장치
WO2019125035A1 (ko) 선택적 변환에 기반한 영상 코딩 방법 및 그 장치
WO2016204374A1 (ko) 영상 코딩 시스템에서 영상 필터링 방법 및 장치
WO2017061671A1 (ko) 영상 코딩 시스템에서 적응적 변환에 기반한 영상 코딩 방법 및 장치
WO2016114583A1 (ko) 비디오 신호 처리 방법 및 장치
WO2021137597A1 (ko) Ols에 대한 dpb 파라미터를 사용하는 영상 디코딩 방법 및 그 장치
WO2020167097A1 (ko) 영상 코딩 시스템에서 인터 예측을 위한 인터 예측 타입 도출
WO2014038905A2 (ko) 영상 복호화 방법 및 이를 이용하는 장치
WO2020141831A2 (ko) 인트라 블록 카피 예측을 이용한 영상 코딩 방법 및 장치
WO2013147495A1 (ko) 스케일러블 비디오 인코딩/디코딩 방법 및 장치
WO2021060801A1 (ko) 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2015057032A1 (ko) 멀티 뷰를 포함하는 비디오 부호화/복호화 방법 및 장치
WO2019066175A1 (ko) 영상 코딩 시스템에서 블록 분할 구조에 따른 영상 디코딩 방법 및 장치
WO2014189300A1 (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: 13786928

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

Country of ref document: EP

Kind code of ref document: A1