+

WO2013168952A1 - Inter-layer prediction method and apparatus using same - Google Patents

Inter-layer prediction method and apparatus using same Download PDF

Info

Publication number
WO2013168952A1
WO2013168952A1 PCT/KR2013/003936 KR2013003936W WO2013168952A1 WO 2013168952 A1 WO2013168952 A1 WO 2013168952A1 KR 2013003936 W KR2013003936 W KR 2013003936W WO 2013168952 A1 WO2013168952 A1 WO 2013168952A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
prediction
weight
sample value
layer
Prior art date
Application number
PCT/KR2013/003936
Other languages
French (fr)
Korean (ko)
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 WO2013168952A1 publication Critical patent/WO2013168952A1/en

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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction

Definitions

  • the present invention relates to video compression techniques, and more particularly, to a method and apparatus for performing 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.
  • UHD Ultra High Definition
  • 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. In addition, various image processing methods associated with such scalability should be discussed.
  • An object of the present invention is to provide a method for performing intra prediction on a current layer using information of another layer and an apparatus using the same.
  • Another object of the present invention is to provide a method for generating a prediction block of a current layer using information of another layer and an apparatus using the same.
  • Another object of the present invention is to provide a method for performing intra bi-prediction of a current layer using other layer information and an apparatus using the same.
  • the method may include generating a second block including a second block, and generating a prediction block of the current block by combining sample values of the first block and the second block.
  • the sample value of the prediction block may be calculated based on an arithmetic mean of the sample value of the first block and the sample value of the second block.
  • the sample value of the prediction block may be calculated based on a weighted average of the sample value of the first block and the sample value of the second block.
  • the generating of the prediction block may include calculating a sample value of the prediction block based on a weighted average of the sample value of the first block and the sample value of the second block, and converting the weight of the first block into a first weight, When the value for the second block is a second weight, the ratio of the first weight to the second value may be set higher from the upper left to the lower right of the prediction block.
  • the weight of the first block is a first weight and a value for the second block is a second weight, and the intra prediction mode of the current block is a vertical mode
  • the first value for the second value may be set higher from the top to the bottom of the prediction block.
  • the weight of the first block is a first weight and the value of the second block is called a second weight, and the intra prediction mode of the current block is a horizontal mode
  • the first value of the second value of the second block may be set higher from the left to the right of the prediction block.
  • the generating of the prediction block may add an offset for giving an effect of one of rounding and rounding to the sample value of the prediction block.
  • the video decoding apparatus is derived based on a first block composed of a value upsampled a reconstruction value of a reference block of a reference layer corresponding to the current block, and the intra prediction mode of the current block.
  • a prediction block configured to generate a prediction block of the current block by combining a second block including a prediction value and sample values of the first block and the second block.
  • a method of performing intra prediction on a current layer using information of another layer and an apparatus using the same are provided.
  • a method of generating a prediction block of a current layer using information of another layer and an apparatus using the same are provided.
  • a method of performing intra bi-prediction on a current layer using other layer information and an apparatus using the same are provided.
  • 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 illustrating an intra prediction mode for a luminance component.
  • FIG. 5 is a diagram illustrating a current block and neighboring blocks in which intra prediction is performed according to the present invention.
  • FIG. 6 is a diagram for describing a method of deriving a left prediction mode and an up prediction mode from a neighboring block according to the present invention.
  • FIG. 7 is a control flowchart illustrating a method of forming an MPM list when the prediction modes derived from neighboring blocks are the same according to the present invention.
  • FIG. 8 is a control flowchart illustrating a method of forming an MPM list when prediction modes derived from neighboring blocks are different according to the present invention.
  • FIG. 9 is a diagram for describing generating a prediction value of a current block according to the present invention.
  • FIG. 10 illustrates a current block and a reference block according to an embodiment of the present invention.
  • FIG. 11 illustrates a plurality of prediction blocks for generating a prediction block of a current block according to an embodiment of the present invention.
  • FIG. 12 is a control flowchart illustrating a method of generating a prediction block of a current block according to another embodiment of the present invention.
  • FIG. 13 is a control flowchart illustrating a method of generating a prediction block of a current block according to an embodiment of the present invention.
  • FIG. 14 illustrates a prediction block partitioned into subblocks according to an embodiment of the present invention.
  • 15 is a control flowchart illustrating a method of generating a prediction block of a current block according to another embodiment of the present invention.
  • FIG. 16 illustrates a prediction block partitioned into subblocks according to another embodiment of the present invention.
  • 17 is a control flowchart illustrating a method of generating a prediction block of a current block according to another embodiment of the present invention.
  • FIG. 18 illustrates a prediction block partitioned into subblocks according to another 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 for each layer.
  • the input signals may differ in 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 predictor (MVP) mode 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 units 110 and 140 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).
  • the PU of the N ⁇ N block size may be set 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 N ⁇ mN blocks, mN ⁇ N blocks, 2N ⁇ mN blocks, or mN ⁇ 2N blocks (m ⁇ 1) may be further defined and used.
  • the prediction unit 110 may perform prediction for layer 1 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).
  • inter-layer motion prediction is also referred to as inter-layer 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 unit parameter prediction derives unit (CU, PU, and / or TU) information of a base layer and uses it as unit information of an enhancement layer, or based on unit information of a base layer. Unit information 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.).
  • 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 110 may use interlayer residual prediction, which predicts the residual of the current layer using the residual information of another layer as interlayer prediction, and performs prediction on the current block in the current layer based on the prediction. It may be.
  • the prediction unit 110 may predict the current block in the current layer by using a difference (differential image) image between the reconstructed picture of the current layer and the resampled picture of another layer as the inter-layer prediction. Inter-layer difference prediction may be performed.
  • the prediction unit 110 may use interlayer syntax prediction that predicts or generates a texture of a current block using syntax information of another layer as interlayer prediction.
  • the syntax information of the reference layer used for prediction of the current block may be information about an intra prediction mode, motion information, and the like.
  • inter-layer syntax prediction may be performed by referring to the intra prediction mode from a block to which the intra prediction mode is applied in the reference layer and referring to motion information from the block MV to which the inter prediction mode is applied.
  • the reference layer is a P slice or a B slice
  • the reference block in the slice may be a block to which an intra prediction mode is applied.
  • inter-layer prediction may be performed to generate / predict a texture for the current block by using an intra prediction mode of the reference block among syntax information of the reference layer.
  • the prediction information of the layer 0 may be used to predict the current block while additionally using unit information or filtering parameter information of the corresponding layer 0 or the corresponding block.
  • This combination of inter-layer prediction methods can also be applied to the predictions described below in this specification.
  • 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 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 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 180.
  • the transform / quantization unit 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 180.
  • 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 165 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 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 185 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.
  • the encoding device of FIG. 1 may be implemented as an electronic device capable of capturing and encoding an image, including a camera.
  • the encoding device may be implemented in or included in a personal terminal such as a television, computer system, portable telephone or tablet PC, or the like.
  • FIG. 2 is a block diagram illustrating an example of interlayer prediction in an encoding apparatus that performs scalable coding according to 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. can do.
  • 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 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.
  • the inverse transform units 330 and 370 may apply only inverse DST to all transform blocks.
  • the inverse transform units 330 and 370 may apply only inverse DCT to all transform blocks.
  • the inverse transform units 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 transforms 230 and 270 may omit the transform for a block having a specific prediction method or a specific size 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 prediction unit 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 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 335 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 0 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 0 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 perform parameter prediction by receiving parameter information regarding the filtering of the layer 0 from the predictor 275 of the layer 0.
  • 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 prediction information of the layer 0 may be used to predict the current block while additionally using unit information or filtering parameter information of the corresponding layer 0 or the corresponding block.
  • This combination of inter-layer prediction methods can also be applied to the predictions described below in this specification.
  • the adders 290 and 295 may generate a reconstruction block 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 unit 240 of the layer 1 filters 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 0. You can also do
  • 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 description is divided into a reordering unit, an inverse quantization unit, an inverse transform unit, and the like.
  • a decoding device to perform reordering, inverse quantization, and inverse transformation in order in one module of the inverse quantization / inverse transformation unit It can also be configured.
  • 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).
  • the decoding apparatus of FIG. 2 may be implemented as various electronic devices capable of playing back, or playing back and displaying an image.
  • the decoding device may be implemented in or included in a set-top box, a television, a computer system, a portable telephone, a personal terminal such as a tablet PC, or the like.
  • 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 0 or may perform the filtering based on the information of the layer 1.
  • 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 330 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 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 that performs inter-layer residual prediction, a sub-prediction unit that performs inter-layer syntax prediction, and / or a sub-prediction unit that performs inter-layer difference prediction.
  • the interlayer residual prediction, the interlayer differential prediction, the interlayer syntax prediction, and the like may be performed using a combination of prediction units.
  • 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 picture of the layer 1 may perform interlayer prediction by using information of the reference picture of the layer 0.
  • Intra prediction generates a prediction block for a current block (hereinafter, referred to as a current block) to be predicted based on the reconstructed pixels in the current layer.
  • FIG. 4 is a diagram illustrating an example of an intra prediction mode.
  • a prediction mode may be largely classified into a directional mode and a non-directional mode according to the direction in which reference pixels used for pixel value prediction are located and a prediction method.
  • 4 shows intra prediction modes for 33 directional prediction modes and at least two non-directional modes.
  • the non-directional mode may include a DC mode and a planer mode.
  • DC mode a single fixed value, for example, the average value of surrounding reconstructed pixel values is used as a prediction value
  • Planer mode vertical interpolation and horizontal use are performed using vertically adjacent pixel values of the current block and horizontally adjacent pixel values.
  • Directional interpolation is performed, and their average value is used as the predicted value.
  • the directional mode is an angular mode and refers to modes indicating a corresponding direction by an angle between a reference pixel located in a predetermined direction and a current pixel, and may include a horizontal mode and a vertical mode.
  • a horizontal mode vertically adjacent pixel values of the current block are used as prediction values of the current block
  • horizontally adjacent pixel values are used as prediction values of the current block.
  • this prediction mode may be specified using a predetermined angle and mode number.
  • a prediction block may be generated after applying a filter to a reference pixel.
  • the prediction mode for the current block may be transmitted with a value indicating the mode itself, but may be derived from information about candidate intra prediction modes that are likely to be the prediction mode of the current block.
  • the candidate intra prediction mode for the current block may be derived using the intra prediction mode of the neighboring block adjacent to the current block, and may be referred to as most probable mode (MPM).
  • MPM most probable mode
  • FIG. 5 is a diagram illustrating a current block and neighboring blocks in which intra prediction is performed according to the present invention.
  • a left peripheral block 520 positioned to the left of the current block 510 and an upper peripheral block 530 positioned above the current block 510 may be used.
  • the sizes of the neighboring blocks 520 and 530 may be the same or different.
  • the MPM is the left prediction mode, the upper prediction mode, It may consist of one or more prediction modes that do not overlap with the left prediction mode and the top prediction mode.
  • FIG. 6 is a diagram for describing a method of deriving a left prediction mode and an up prediction mode from neighboring blocks.
  • a process of deriving two candidate intra prediction modes from the left neighboring block 520 and the upper neighboring block 530 will be described with reference to FIG. 6.
  • the intra prediction mode of the left neighbor block 520 is derived to the left prediction mode (S602).
  • the specific prediction mode may be set.
  • the specific prediction mode may be a DC mode (S603).
  • the upper neighboring block 530 is valid, the upper neighboring block 530 is a block to which intra prediction is applied, and the upper neighboring block 530 is the current block. If the block 510 is in a coding tree block to which it belongs (S604), the intra prediction mode for the upper neighboring block 530 is derived to the upper prediction mode (S605).
  • the upper neighbor block 530 is not valid, information about the prediction mode of the upper neighbor block 530 does not exist, the upper neighbor block 530 is not a block to which intra prediction is applied, or the upper neighbor block ( If 530 is not a block in a coding tree block to which the current block 510 belongs (S604), that is, if any one of the three conditions is not satisfied, the upper prediction mode leads to a specific preset prediction mode. It may be (S606). In this case, the specific prediction mode may be a DC mode.
  • one or more prediction modes may be further derived to form an MPM list including three candidate intra prediction modes.
  • the prediction mode for the current block is in the MPM list. Information about any one of the candidate intra modes may be decoded and encoded. On the other hand, if the prediction mode for the current block cannot be inferred from the intra prediction mode of the neighboring block, the information about the intra prediction mode for the current block may be separately encoded and decoded.
  • FIG. 7 and 8 are control flowcharts illustrating a process of forming an MPM list including three candidate intra prediction modes using the left prediction mode and the up prediction mode derived according to FIG. 6.
  • FIG. 7 illustrates a process of forming an MPM list when the left prediction mode and the up prediction mode are the same
  • FIG. 8 illustrates a process of forming an MPM list when the left prediction mode and the up prediction mode are different.
  • the candidate intra prediction mode indexed first in the MPM list is MPM [0], the second candidate intra prediction mode indexed in MPM [1], and the third candidate intra prediction mode indexed in MPM. Mark as [2].
  • the left prediction mode and the up prediction mode are the same (S701), it is determined whether the left prediction mode is the DC mode or the planar mode (S702).
  • MPM [0] is derived to planar mode
  • MPM [1] is derived to DC mode
  • MPM [2] is derived to vertical mode (S703).
  • MPM [0] is derived to the left prediction mode
  • MPM [1] and MPM [2] are the prediction modes having an angle adjacent to the left prediction mode. Can be derived. Some of them should be able to be expressed in the prediction mode allowed by FIG. 4 while having adjacent angles.
  • MPM [1] and MPM [2] may be derived as follows (S704).
  • MPM [2] 2 + ((Left Prediction Mode -2 +1)% 32)
  • the left prediction mode is the same as the top prediction mode, and the left prediction mode is Planer mode or DC mode
  • MPM [0] is in Planar mode
  • MPM [1] is in DC mode
  • MPM [2] is in Vertical mode.
  • MPM [0] may be derived to the left prediction mode
  • MPM [1] and MPM [2] may be derived to the prediction mode having an angle adjacent to the left prediction mode.
  • MPM [2] can be derived as follows. It is determined whether the MPM [0] and the MPM [1] are in Planar mode (S803), and as a result of the determination, if both the MPM [0] and the MPM [1] are not in the Planar mode, the MPM [2] is induced to the Planar mode ( S804).
  • any one of the MPM [0] and MPM [1] is a planar mode, it is determined whether the MPM [0] and MPM [1] is a DC mode (S805).
  • MPM [2] is induced to DC mode (S806).
  • the MPM [2] may be induced in the vertical mode (S807).
  • MPM [0] and MPM [1] are derived as the left prediction mode and the up prediction mode, and the left prediction mode and the top prediction mode among the planar mode, the DC mode, and the vertical mode. And one not equal to MPM [2].
  • Table 1 schematically illustrates an example of syntax elements that may be applied when encoding and decoding an intra prediction mode of a current block. This syntax element may be applied in a prediction unit (PU) or a coding unit (CU).
  • PU prediction unit
  • CU coding unit
  • the encoding apparatus may encode a prev_intra_luma_pred_flag syntax element indicating whether the intra prediction mode for the current block can be inferred from the intra prediction mode of the neighboring neighboring block, as in the example of Table 1.
  • the encoding apparatus may determine whether the intra prediction mode of the current block 510 is one of the candidate intra prediction modes. That is, the index information of the MPP list is encoded using the mpm_idx syntax element.
  • prev_intra_luma_pred_flag 0 because the intra prediction mode of the current block 510 cannot be inferred from the intra prediction mode of the neighboring neighboring block
  • the encoding apparatus predicts the remaining prediction except the candidate intra prediction mode in the MPM list among the 35 intra prediction modes.
  • Information about the intra prediction mode for the current block 510 among the modes is encoded using the rem_intra_luma_pred_mode syntax element.
  • the decoding apparatus derives a candidate intra prediction mode for the current block 510 to generate an MPM list.
  • the decoding apparatus decodes prev_intra_luma_pred_flag received from the encoding apparatus. If prev_intra_luma_pred_flag is 1, it determines that the intra prediction mode of the current block 510 can be inferred from the intra prediction mode of the neighboring neighboring block, and decodes mpm_idx. By decoding the mpm_idx, the intra prediction mode of the current block 510 may be derived to the prediction mode of any one of the MPM lists.
  • the intra prediction mode of the current block 510 may be decoded by decoding the rem_intra_luma_pred_mode syntax element. .
  • the prediction unit generates a prediction value of the current block by using an intra prediction mode for the derived current block.
  • the prediction value of the current block predicted in the intra prediction mode may be generated as a TU or a PU.
  • the samples adjacent to the left side of the current block and the samples adjacent to the upper side of the current block are called reference samples, and reference values are used to generate prediction values of the current block. If a sample adjacent to the left of the current block or a sample adjacent to the upper side of the current block is not available, the samples that are not available may be replaced with the value of the predetermined sample.
  • the reference sample may be replaced with a predetermined value, for example, a median value of sample values that the image may have.
  • the reference samples are searched in a predetermined direction, and the sample value of the retrieved sample that is available is replaced with the left lowermost sample value.
  • the sample value of the adjacent sample which is immediately below the sample that is not available, is replaced with a reference sample value, and the available sample among the above adjacent samples is available. If a sample that has not been found is found, the sample value of the sample existing on the right side of the sample that is not available can be replaced with the reference sample value.
  • Sample values adjacent to the current block may be filtered. Whether to filter and the filtering coefficient may be set differently according to the size of the transform block and the intra prediction mode. When the step difference existing in the predicted value generated after the reference sample value and the intra prediction is applied through filtering, discontinuity that may occur at the block boundary may be reduced.
  • the prediction value for the current block may be obtained as a linear interpolation value of a plurality of reference sample values.
  • NxN N is an integer
  • N is an integer
  • the position of the upper right sample can be expressed as (N-1, 0) and the position of the lower right sample as (N-1, N-1).
  • the prediction value P (x, y) of the prediction sample may be calculated by Equation 1 using the reference sample c located at (N, -1) and the reference sample d located at (-1, N).
  • the sample value of reference sample a is a (x, -1)
  • the sample value of reference sample b is b (-1, y)
  • the sample value of reference sample c is c (N, -1)
  • the sample value of reference sample d The value is represented by d (-1, N).
  • the prediction value for the current block may be generated using the average value of the reference sample values.
  • the boundary region of the prediction block, that is, the left boundary and the right boundary of the prediction block may be filtered.
  • the prediction value may be generated using the reference sample value present in the direction of the prediction mode. Reference samples may be stretched according to the direction of the prediction mode.
  • the prediction mode is a horizontal or vertical mode
  • the prediction value of the current block located at a boundary adjacent to the reference sample may be generated through arithmetic operation of specific sample values existing at a predetermined position with the reference sample. The arithmetic operation has an effect of applying filtering to the boundary region adjacent to the reference sample, thereby reducing the discontinuity between the current block and the neighboring block.
  • the decoding device and the encoding device may generate a prediction value using the prediction mode information in the current layer when performing the intra prediction of the current block in the current layer, but predict the current block by referring to information of another layer. You can also create blocks.
  • An embodiment of the present invention performs prediction on the current block by using text information of the reference layer.
  • FIG. 10 illustrates a current block and a reference block according to an embodiment of the present invention.
  • a corresponding part of the reference picture 1001 corresponding to the current block 1010 of the current picture 1000 is shown as a reference block 1011.
  • the reference block 1011 may be positioned in accordance with a resolution ratio between the current picture 1000 and the reference picture 1001. That is, the coordinates specifying the position of the current block 1010 may correspond to the specific coordinates of the reference picture 1001 according to the resolution ratio.
  • This reference block 1011 may include one prediction unit or may include a plurality of prediction units.
  • the texture of reference block 1011 may be used to generate predictive values for current block 1010.
  • the prediction block of the current block may be generated using two blocks based on different layers.
  • the first blocks 1110 and A are blocks composed of textures of upsampled reference blocks 1011 corresponding to the current blocks 1010 of FIG. 10 to fit the size of the current blocks 1010.
  • B) represents a block composed of prediction values derived through the intra prediction mode of the current block described above.
  • the prediction block 1130 of the current block may be generated through the first block 1110 and the second block 1120.
  • the size of the first block 1110, the second block 1120, and the prediction block 1130 is N ⁇ N where N is an integer.
  • the position of the upper left sample of the block is (0,0)
  • the position of the lower left sample is (0, N-1)
  • the position of the upper right sample is (N-1, 0).
  • the position of the lower right sample can be expressed as (N-1, N-1).
  • the sample value at position (i, j) of the first block 1110 is A (i, j)
  • the sample value at (i, j) of the second block 1120 is B (i, j).
  • Express. i and j may have an integer value from 0 to N-1.
  • the sample value of the position (i, j) of the prediction block 1130 corresponding to the position (i, j) of the first block 1110 and the position (i, j) of the second block 1120 is P (i, j).
  • the sample value P (i, j) may be generated by combining the sample values A (i, j) and B (i, j), and the generated sample value P (i, j) is the predicted value of the current block 1010. Becomes
  • FIG. 12 is a control flowchart illustrating a method of generating a prediction block of a current block according to an embodiment of the present invention.
  • the prediction unit generates a first block 1110 configured to upsample the reconstructed value of the reference block 1011 of the reference picture 1001 corresponding to the current block 1010 (S1201).
  • the first block 1110 may be generated before the prediction of the current block 1010 and stored in a memory or the like, or may be executed in real time for the calculation of the prediction block 1130 when the prediction of the current block 1010 is performed. It may be generated as.
  • the prediction unit generates a second block 1120 composed of prediction values derived based on the intra prediction mode of the current block 1010 (S1202).
  • the intra prediction mode for the current block 1010 may be derived as described with reference to FIGS. 4 to 8, and the second block 1120 is generated using the derived intra prediction mode and reference sample values that are already reconstructed. Can be.
  • the generating steps of the first block 1110 and the second block 1120 are not limited to the illustrated order, and the two blocks 1110 and 1120 may be generated sequentially or simultaneously.
  • the prediction unit combines the sample values of the first block 1110 and the second block 1120 to generate the prediction block 1130 of the current block 1010 (S1203).
  • the combination may mean performing various operations by using the sample value of the first block 1110 and the sample value of the second block 1120.
  • the sample value P (i, j) of the prediction block 1130 may be calculated as Equation 2.
  • Equation 2 the sample value P (i, j) corresponds to the arithmetic mean value of A (i, j) and B (i, j).
  • Equation 2 may be modified as in Equation 3.
  • Equation 3 adds a predetermined offset 1 to Equation 2, and may compensate for an error that may occur when performing an integer operation according to Equation 2.
  • the sample value P (i, j) of the prediction block 1130 may be calculated as Equation 4.
  • W A and W B represent weights for sample values A (i, j) and sample values B (i, j), and for convenience of description, weights for sample values of the first block or the first block will be described below.
  • a weight for a second block or a sample value of the second block is expressed as a second weight.
  • the prediction block 1130 is generated as a weighted average value of the first block 1110 and the second block 1120, and the first and second weights may have the same value or different values.
  • the first weight may be greater than the second weight, and conversely, the second weight may be greater than the first weight.
  • the weight may be set to enable integer arithmetic.
  • the first weight W A is set to 3 and the second weight W B is set to 1, which is represented by Equation 5.
  • the first weight W A of Equation 4 may be set to 7 and the second weight W B may be set to 1 to be expressed as Equation 6.
  • the weight may have a value other than the examples included in Equations 5 and 6 described above, or may be set regardless of integer arithmetic.
  • the information about the weight may be encoded and transmitted to the decoding apparatus, or may be set to a predetermined value between the encoding apparatus and the decoding apparatus and may not be signaled.
  • Equation 4 a preset offset may be added in addition to Equation 4.
  • the offset is added to reduce the error caused by the integer operation, and the offset has the effect of rounding up or down.
  • Equation 4 to which the offset is added may be expressed as Equation 7.
  • Equation 8 When the offset is added to Equation 5, it is expressed as Equation 8.
  • the information about the offset may be encoded and transmitted to the decoding apparatus, or may be set to a predetermined value between the encoding apparatus and the decoding apparatus and may not be signaled.
  • FIG. 13 is a control flowchart illustrating a method of generating a prediction block of a current block according to an embodiment of the present invention.
  • the prediction unit As in steps S1201 and S1202 of FIG. 12, first, the prediction unit generates a first block including values of upsampled reconstruction values of the reference block 1011 of the reference picture 1001 corresponding to the current block 1010 ( In operation S1301, a second block 1120 including prediction values derived based on the intra prediction mode of the current block 1010 is generated in operation S1302.
  • the intra prediction mode for the current block 1010 may be derived as described with reference to FIGS. 4 to 8, and the second block 1120 is generated using the derived intra prediction mode and the already reconstructed reference sample values. Can be.
  • the sample value P (i, j) of the prediction block 1130 may be calculated through an arithmetic mean of the sample value of the first block 1110 and the sample value of the second block 1120, as shown in Equation 2, or In operation S1303, a weighted average of the sample value of the first block 1110 and the sample value of the second block 1120 may be calculated as shown in FIG. 4.
  • the offset may be added as in Equation 3 and Equation 7 to compensate for an error in integer arithmetic.
  • the prediction block 1130 of the current block 1010 may be calculated using an arithmetic mean or weighted average of the texture of the reference block 1011 and the prediction value derived from the intra prediction mode of the current block, and the like. Offsets with rounding effects may be added to compensate for errors.
  • the predicted value of the second block 1120 of FIG. 11 derived through the intra prediction mode is derived using the sample values adjacent to the left and right sides of the current block 1010 of FIG. 10 as reference samples. Accordingly, the sample value located at the upper left end of the current block 1010 may have higher prediction accuracy than the sample value present at the lower right end.
  • the prediction accuracy does not change according to the position of the sample.
  • the weights of the first block 1110 and the second block 1120 are changed according to the position of the sample of the prediction block 1130, for example, according to a specific direction. (i, j) can be calculated.
  • the first and second weights of Equations 4 and 7 that may be used when calculating the sample value of the prediction block 1130 may vary according to the positions of the samples of the prediction block 1130.
  • the weight of the first block 1110 may be set larger than the weight of the second block 1120 from the upper left end to the lower right end. That is, the ratio of the first weight to the second weight (first weight / second weight) may be increased from the upper left end to the lower right direction of the current block in consideration of the prediction direction.
  • the prediction block may be partitioned into four subblocks 1401, 1402, 1403, and 1404, and the first block 1110 and the calculation of the sample value P (i, j) located in each partition are performed.
  • the weights for the sample values of the second block 1120 may be set differently from each other.
  • the sample value of the second block 1120 corresponding to the first sub block 1401 located at the upper left is high in the prediction accuracy, but is equal to the fourth sub block 1404 located at the lower right.
  • the prediction accuracy of the sample value of the corresponding second block 1120 is relatively lower than the sample value of the second block 1120 corresponding to the first sub block 1401.
  • the ratio (first weight / second weight) of the first weight to the second weight applied to the fourth sub block 1404 is applied to the second weight applied to the first sub block 1401. It may be set higher than the ratio (first weight / second weight) of the first weight.
  • the prediction accuracy of the second block 1120 sample values corresponding to the second sub block 1402 and the third sub block 1403 is a sample value of the second block 1120 corresponding to the first sub block 1401. It is lower than the prediction accuracy of and higher than the prediction accuracy of the sample value of the second block 1120 corresponding to the fourth sub-block 1404.
  • the ratio of the first weight to the second weight applied to calculate the sample values P (i, j) of the second subblock 1402 and the third subblock 1403 (first weight / second weight). Is higher than the ratio of the first weight to the second weight applied to the first sub-block 1401 (first weight / second weight), the first to the second weight applied to the fourth sub-block 1404. It may be set lower than the ratio of the weight (first weight / second weight).
  • the sample value P (i, j) of the prediction block may be expressed as Equation 9.
  • i and j less than N / 2 means the first sub-block 1401 of FIG. 14, i and j means greater than or equal to N / 2 means the fourth sub-block 1404, and in other cases Means a second sub block 1402 and a third sub block 1403.
  • W 1 is the first weight applied to the first sub-block 1401
  • W 2 is the second weight applied to the first sub-block 1401
  • W 3 is applied to the fourth sub-block 1404
  • the first weight, W 4 means the second weight applied to the fourth sub-block 1404
  • W 5 is the first weight applied to the second sub-block 1402 and the third sub-block 1403
  • W 6 denotes a second weight applied to the second sub block 1402 and the third sub block 1403.
  • the first weight and the second weight applied to the sub-block may have the same value, but may be set to different values according to the prediction direction.
  • W 1 and W 2 may be the same value, or W 1 may be larger than W 2 .
  • W 3 and W 4 may be the same value, or W 3 may be larger than W 4 .
  • W 5 and W 6 may be the same value, or W 5 may be greater than W 6 .
  • the ratio of the first weight to the second weight may be set differently according to the sub-block, reflecting the prediction accuracy of the second block 1120.
  • W 1 / W 2 applied to the first sub-block 1401 and W 5 / W 6 applied to the second sub-block 1402 and the third sub-block 1403 may be different from each other.
  • W 5 / W 6 may be set higher than W 1 / W 2 in consideration of a tendency of decreasing the prediction accuracy of the second block 1120.
  • W 1 / W 2 applied to the first sub-block 1401 and W 3 / W 4 applied to the fourth sub-block 1404 may be different from each other, and according to the prediction direction, W 3 / W 4 may be set higher than W 1 / W 2 to reflect the tendency of decreasing prediction accuracy.
  • W 5 / W 6 applied to the second sub block 1402 and the third sub block 1403 and W 3 / W 4 applied to the fourth sub block 1404 may be different from each other.
  • W 3 / W 4 may be set higher than W 5 / W 6 by reflecting a tendency of decreasing the prediction accuracy of the second block 1120.
  • m3 is the offset for integer arithmetic.
  • the offset m1 applied to the first sub block 1401 may be set as an average value of the first weight W 1 and the second weight W 2
  • the offset m 2 applied to the fourth sub block 1404 may be set to the first value.
  • first weight (W 3) and the second may be set as an average value of the weight (W 4), a second sub-block 1402, and the third offset m3 applied to the sub-block 1403 is the first weight (W 5) And the average value of the second weight W 6 .
  • Equation 10 An example of each weight of Equation 9 is expressed as Equation 10.
  • the ratio W 1 / W 2 of the first weight to the second weight is 1, and the second sub block 1402 and the third sub block are 1.
  • the ratio W 5 / W 6 of the first weight to the second weight applied to 1403 is three.
  • the second weight ratio is the lowest, such that the ratio of the first weight to the second weight (W 3 / W 4 ) is the highest 7. Is set to.
  • Equation 10 offsets 1, 3, and 2 are added to each equation to compensate for errors in integer arithmetic.
  • the prediction block may be divided into more sub blocks, and the weight ratio of the first block 1110 to the weight of the second block 1020 for each sub block may be set to increase from the upper left to the lower right. have.
  • 15 is a control flowchart illustrating a method of generating a prediction block of a current block according to the present embodiment.
  • the prediction unit generates a first block 1110 including values of upsampled reconstructed values of the reference block 1011 of the reference picture 1001 corresponding to the current block 1010.
  • a second block 1120 including prediction values derived based on the intra prediction mode of the current block 1010 is generated (S1502).
  • the intra prediction mode for the current block 1010 may be derived as described with reference to FIGS. 4 to 8, and the second block 1120 is generated using the derived intra prediction mode and the already reconstructed reference sample values. Can be.
  • the sample value P (i, j) of the prediction block 1130 may be calculated through a weighted average of the sample value of the first block 1110 and the sample value of the second block 1120, and the second block 1120.
  • the weight may be adjusted to reduce the specific gravity of the second block 1120 as the distance from the reference sample reflects the prediction accuracy of.
  • the weight of the first block 1110 is set higher than the weight of the second block 1120 from the upper left end to the lower right direction of the prediction block 1130, and the first block 1110 according to the set weight.
  • a sample value of the prediction block 1130 is generated by calculating a weighted average of the sample value of the sample value and the sample value of the second block 1120 (S1503).
  • An offset may be added as shown in Equation 9 to compensate for errors for integer arithmetic.
  • a (i, j) and B are adaptively applied according to the intra prediction direction of the current block 1010. i, j) can be combined.
  • the prediction value of the second block 1120 derived through the intra prediction mode has a different prediction accuracy according to the intra prediction mode, that is, the intra prediction direction. In other words, the closer the distance to the reference sample used for intra prediction, the higher the accuracy of the prediction.
  • the intra prediction mode for the current block is the vertical mode (intra prediction mode 26)
  • the closer the position of the sample of the second block 1120 is to the reference sample adjacent to the top of the prediction block the higher the accuracy of the prediction.
  • the prediction accuracy does not change according to the position of the sample.
  • the weight of the second block 1120 for the first block 1110 is set to be lower as the sample value of the prediction block 1130 goes from the top to the bottom direction. Can be.
  • the prediction block may be partitioned into two sub-blocks 1601 and 1602, and the first block 1110 and the second block (1) when calculating the sample value P (i, j) located in each partition
  • the weights for the sample values of 1120 may be set differently from each other.
  • the sample value P (i, j) of the prediction block of FIG. 16 may be expressed as Equation 11.
  • the smaller j than N / 2 means the first sub block 1601 of FIG. 16, and in other cases, the second sub block 1602.
  • W 1 is a first weight applied to the first sub-block 1601
  • W 2 is a second weight applied to the first sub-block 1601
  • W 3 is applied to the second sub-block 1602
  • the first weight, W 4 means a second weight applied to the second sub-block 1602
  • the first weight and the second weight applied to the sub-block may have the same value, but may be set to different values according to the prediction direction.
  • the ratio of the first weight to the second weight may be set larger from the top to the bottom of the prediction block.
  • the sample value of the second block 1120 corresponding to the first sub block 1601 located at the top has a high prediction accuracy, but corresponds to the second sub block 1602 located at the bottom.
  • the prediction accuracy of the sample value of the second block 1120 is relatively lower than the sample value of the second block 1120 corresponding to the first sub block 1601.
  • the first weight W 3 may be set higher than the second weight W 4 when the sample value P (i, j) of the second sub-block 1602 is calculated in consideration of the prediction accuracy.
  • the ratio W 3 / W 4 of the first weight to the second weight applied to the second sub block 1602 is the ratio W of the first weight to the second weight applied to the first sub block 1601. 1 / W 2 ) can be set higher.
  • m1 and m2 are offsets for integer arithmetic.
  • the offset m1 applied to the first sub-block 1601 may be set as an average value of the first weight W 1 and the second weight W 2
  • the offset m2 applied to the second sub-block 1602 is the first value. It may be set to an average value of the first weight W 3 and the second weight W 4 .
  • sample value P (i, j) of the prediction block may be expressed as in Equation 12.
  • the ratio of the first weight to the second weight is 1, and the ratio of the first weight to the second weight applied to the second sub-block 1602 is shown.
  • the ratio is three.
  • offsets 1 and 2 may be added to compensate for errors in integer arithmetic.
  • the prediction block may be divided into more sub blocks, and the weight of the second block 1120 for the first block 1110 for each sub block may be set to decrease from the top to the bottom direction.
  • 17 is a control flowchart illustrating a method of generating a prediction block of a current block according to the present embodiment.
  • a first block 1110 composed of upsampled values of reconstructed values of the reference block 1011 of the reference picture 1001 corresponding to the current block 1010 is generated.
  • a second block 1120 including prediction values derived based on the intra prediction mode of the current block 1010 is generated in operation S1702.
  • the sample value P (i, j) of the prediction block may be calculated through a weighted average of the sample value of the first block 1110 and the sample value of the second block 1120, and the intra prediction mode of the current block 1010. Reflecting this, as the distance from the reference sample increases, the specific gravity of the second block 1120 may be reduced.
  • the weight for the first block 1110 is higher than the weight for the second block 1120 in the direction from the top to the bottom of the prediction block 1130.
  • the sample value of the prediction block 1130 is generated by calculating a weighted average of the sample value of the first block 1110 and the sample value of the second block 1120 according to the set weight.
  • the weight of the first block 1110 is increased from the upper left end to the lower right direction of the prediction block 1130.
  • the weighted average of the sample value of the first block 1110 and the sample value of the second block 1120 may be calculated according to the set weight.
  • the intra prediction mode for the current block is the horizontal mode (intra prediction mode 10)
  • the position of the sample of the second block is a reference to the neighboring sample on the left, that is, adjacent to the left of the prediction block. The closer to the sample, the higher the accuracy of the prediction may be calculated to calculate the sample value P (i, j) of the prediction block 1130.
  • the weight of the second block 1120 with respect to the first block 1110 may be set lower.
  • the prediction block may be partitioned into two sub-blocks 1801 and 1802, and the first block 1110 and the second block (1) when the sample value P (i, j) located in each partition are calculated.
  • the weights for the sample values of 1120 may be set differently from each other.
  • the sample value P (i, j) of the prediction block of FIG. 18 may be expressed as Equation 13.
  • the smaller x than N / 2 means the first sub block 1801 of FIG. 18 and the second sub block 1802 in other cases.
  • W 1 is a first weight applied to the first sub-block 1801
  • W 2 is a second weight applied to the first sub-block 1801
  • W 3 is a first weight applied to the second sub-block 1802.
  • the weight W 4 is a second weight applied to the second sub-block 1802.
  • the first weight and the second weight applied to the sub-block may have the same value, but may be set to different values according to the prediction direction.
  • the ratio of the first weight to the second weight may be set larger from the left side to the right side of the prediction block.
  • the sample value of the second block 1120 corresponding to the first sub block 1801 located on the left has a high prediction accuracy, but corresponds to the second sub block 1802 located on the right.
  • the prediction accuracy of the sample value of the second block 1120 is relatively lower than the sample value of the second block 1120 corresponding to the first sub block 1801.
  • the first weight W 3 may be set higher than the second weight W 4 when the sample value P (i, j) of the second sub-block 1802 is calculated by reflecting the prediction accuracy.
  • the ratio W 3 / W 4 of the first weight to the second weight applied to the second sub block 1802 is the ratio W of the first weight to the second weight applied to the first sub block 1801. 1 / W 2 ) can be set higher.
  • m1 and m2 are offsets for integer operation.
  • the offset m1 applied to the first sub block 1801 may be set as an average value of the first weight W 1 and the second weight W 2
  • the offset m 2 applied to the second sub block 1802 may be set to the first value. It may be set to an average value of the first weight W 3 and the second weight W 4 .
  • sample value P (i, j) of the prediction block may be expressed as in Equation 14.
  • the ratio of the first weight to the second weight is 1, and the ratio of the first weight to the second weight applied to the second sub block 1802 is as follows.
  • the ratio is three.
  • offsets 1 and 2 may be added to compensate for errors in integer arithmetic.
  • the prediction block may be divided into more sub blocks, and the weight of the second block 1120 for the first block 1110 for each sub block may be set to decrease from left to right.
  • the intra prediction mode for the current block may be set to the intra prediction mode applied in the second block, or the DC mode. Or it may be set to a specific prediction mode, such as a planar mode. Information about the prediction mode set to the intra prediction mode of the current block may be stored for use in predicting the direction of the intra prediction block that is subsequently coded or decoded.
  • information for indicating this may be signaled, and information about a prediction mode set as an intra prediction mode of the current block may also be coded and signaled to the decoding apparatus.

Landscapes

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

Abstract

The present invention relates to an inter-layer prediction method and apparatus using same. The inter-layer prediction method includes the steps of: generating a first block formed of values obtained by up-sampling recovered values of a reference block of a reference layer corresponding to a current block; generating a second block formed of prediction values derived on the basis of an intra-prediction mode of the current block; and generating a prediction block for the current block by combining sample values of the first and second blocks.

Description

인터 레이어 예측 방법 및 이를 이용하는 장치Interlayer prediction method and apparatus using same
본 발명은 비디오 압축 기술에 관한 것으로서 더 구체적으로는 스케일러블 비디오 코딩을 수행하는 방법 및 장치에 관한 것이다.The present invention relates to video compression techniques, and more particularly, to a method and apparatus for performing scalable video coding.
최근 고해상도, 고품질의 영상에 대한 요구가 다양한 응용 분야에서 증가하고 있다. 영상이 고해상도를 가지고 고품질이 될수록 해당 영상에 관한 정보량도 함께 증가하고 있다. Recently, the demand for high resolution and high quality images is increasing in various applications. As an image has a high resolution and high quality, the amount of information on the image also increases.
정보량의 증가로 인해 다양한 성능의 장치와 다양한 환경의 네트워크가 등장하고 있다. 다양한 성능의 장치와 다양한 환경의 네트워크가 등장함에 따라서, 동일한 콘텐츠를 다양한 품질로 이용할 수 있게 되었다.As information volume increases, devices with various performances and networks with various environments are emerging. With the emergence of devices of varying performance and networks of different environments, the same content is available in different qualities.
구체적으로, 단말 장치가 지원할 수 있는 품질의 영상이 다양해지고, 구축된 네트워크 환경이 다양해짐으로써, 어떤 환경에서는 일반적인 품질의 영상을 이용하지만, 또 다른 환경에서는 더 높은 품질의 영상을 이용할 수 있게 된다.In detail, as the 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. .
예를 들어, 휴대 단말에서 비디오 콘텐츠를 구매한 소비자가 가정 내 대화면의 디스플레이를 통해 동일한 비디오 콘텐츠를 더 큰 화면과 더 높은 해상도로 감상할 수 있게 되는 것이다.For example, 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.
최근에는 HD(High Definition) 해상도를 가지는 방송이 서비스되면서 많은 사용자들은 이미 고해상도, 고화질의 영상에 익숙해지고 있고, 서비스 제공자와 사용자들은 HDTV와 더불어 HDTV의 4배 이상의 해상도를 갖는 UHD(Ultra High Definition)의 서비스에도 관심을 기울이고 있다.In recent years, as broadcasts with high definition (HD) resolution have been serviced, many users are already accustomed to high-definition and high-definition video.Ultra High Definition (UHD) has more than four times the resolution of HDTV with HDTV. I am also interested in the services of the company.
따라서, 다양한 환경에서 사용자가 요구하는 영상 서비스를 품질에 따라서 다양하게 제공하기 위해 고용량 비디오에 대한 고효율의 인코딩/디코딩 방법을 기반으로 영상의 품질, 예컨대 영상의 화질, 영상의 해상도, 영상의 크기, 비디오의 프레임 레이트 등에 스케일러빌러티를 제공하는 것이 필요하다. 또한, 이러한 스케일러빌러티에 수반되는 다양한 영상 처리 방법이 논의되어야 한다.Therefore, in order to provide various video services required by users in various environments according to the quality, based on a high-efficiency encoding / decoding method for high-capacity video, 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. In addition, various image processing methods associated with such scalability should be discussed.
본 발명은 다른 레이어의 정보를 이용하여 현재 레이어에 대한 인트라 예측을 수행하는 방법 및 이를 이용하는 장치를 제공하는 것을 목적으로 한다.An object of the present invention is to provide a method for performing intra prediction on a current layer using information of another layer and an apparatus using the same.
또한, 본 발명은 다른 레이어의 정보를 이용하여 현재 레이어의 예측 블록을생성하는 방법 및 이를 이용하는 장치를 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a method for generating a prediction block of a current layer using information of another layer and an apparatus using the same.
또한, 본 발명은 다른 레이어 정보를 이용하여 현재 레이어의 대한 인트라 쌍 예측(intra bi-prediction)을 수행하는 방법 및 이를 이용하는 장치를 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a method for performing intra bi-prediction of a current layer using other layer information and an apparatus using the same.
본 발명의 일 실시형태는 현재 블록에 대응하는 참조 레이어의 참조 블록의 복원값을 업샘플링한 값으로 구성된 제1 블록을 생성하는 하는 단계와, 상기 현재 블록의 인트라 예측 모드에 기초하여 유도된 예측값으로 구성된 제2 블록을 생성하는 단계와, 상기 제1 블록 및 상기 제2 블록의 샘플값을 조합하여 상기 현재 블록의 예측 블록을 생성하는 단계를 포함할 수 있다. According to an embodiment of the present invention, there is provided a method of generating a first block including a value obtained by upsampling a reconstruction value of a reference block of a reference layer corresponding to a current block, and a prediction value derived based on an intra prediction mode of the current block. The method may include generating a second block including a second block, and generating a prediction block of the current block by combining sample values of the first block and the second block.
상기 예측 블록을 생성하는 단계는, 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 산술 평균을 통하여 상기 예측 블록의 샘플값을 연산할 수 있다. In the generating of the prediction block, the sample value of the prediction block may be calculated based on an arithmetic mean of the sample value of the first block and the sample value of the second block.
상기 예측 블록을 생성하는 단계는, 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산할 수도 있다. In the generating of the prediction block, the sample value of the prediction block may be calculated based on a weighted average of the sample value of the first block and the sample value of the second block.
상기 예측 블록을 생성하는 단계는, 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하고, 상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라 하면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 좌상단에서 우하단 방향으로 갈수록 높게 설정될 수도 있다. The generating of the prediction block may include calculating a sample value of the prediction block based on a weighted average of the sample value of the first block and the sample value of the second block, and converting the weight of the first block into a first weight, When the value for the second block is a second weight, the ratio of the first weight to the second value may be set higher from the upper left to the lower right of the prediction block.
또는, 상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라고 하고, 상기 현재 블록의 인트라 예측 모드가 수직 모드이면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 상단에서 하단 방향으로 갈수록 높게 설정될 수도 있다.Alternatively, if the weight of the first block is a first weight and a value for the second block is a second weight, and the intra prediction mode of the current block is a vertical mode, the first value for the second value The ratio of the weight may be set higher from the top to the bottom of the prediction block.
한편, 상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라고 하고, 상기 현재 블록의 인트라 예측 모드가 수평 모드이면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 좌측에서 우측 방향으로 갈수록 높게 설정될 수도 있다.Meanwhile, if the weight of the first block is a first weight and the value of the second block is called a second weight, and the intra prediction mode of the current block is a horizontal mode, the first value of the second value of the second block The ratio of the weight may be set higher from the left to the right of the prediction block.
상기 예측 블록을 생성하는 단계는 상기 예측 블록의 샘플값에 반올림 및 반내림 중 하나의 효과를 주기 위한 오프셋을 더할 수도 있다.The generating of the prediction block may add an offset for giving an effect of one of rounding and rounding to the sample value of the prediction block.
한편, 본 발명의 다른 실시형태에 따른 비디오 디코딩 장치는 현재 블록에 대응하는 참조 레이어의 참조 블록의 복원값을 업샘플링한 값으로 구성된 제1 블록, 상기 현재 블록의 인트라 예측 모드에 기초하여 유도된 예측값으로 구성된 제2 블록 및 상기 제1 블록 및 상기 제2 블록의 샘플값을 조합하여 상기 현재 블록의 예측 블록을 생성하는 예측부를 포함할 수 있다.On the other hand, the video decoding apparatus according to another embodiment of the present invention is derived based on a first block composed of a value upsampled a reconstruction value of a reference block of a reference layer corresponding to the current block, and the intra prediction mode of the current block. And a prediction block configured to generate a prediction block of the current block by combining a second block including a prediction value and sample values of the first block and the second block.
본 발명의 일 실시예에 따르면, 다른 레이어의 정보를 이용하여 현재 레이어에 대한 인트라 예측을 수행하는 방법 및 이를 이용하는 장치가 제공된다. According to an embodiment of the present invention, a method of performing intra prediction on a current layer using information of another layer and an apparatus using the same are provided.
또한, 본 발명의 일 실시예에 따르면 다른 레이어의 정보를 이용하여 현재 레이어의 예측 블록을 생성하는 방법 및 이를 이용하는 장치가 제공된다. Further, according to an embodiment of the present invention, a method of generating a prediction block of a current layer using information of another layer and an apparatus using the same are provided.
또한, 본 발명의 일 실시예에 따르면 다른 레이어 정보를 이용하여 현재 레이어의 대한 인트라 쌍 예측(intra bi-prediction)을 수행하는 방법 및 이를 이용하는 장치가 제공된다. According to an embodiment of the present invention, a method of performing intra bi-prediction on a current layer using other layer information and an apparatus using the same are provided.
도 1은 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 인코딩 장치를 개략적으로 도시한 블록도이다. 1 is a block diagram schematically illustrating a video encoding apparatus supporting scalability according to an embodiment of the present invention.
도 2는 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 디코딩 장치를 개략적으로 도시한 블록도이다.2 is a block diagram schematically illustrating a video decoding apparatus supporting scalability according to an embodiment of the present invention.
도 3은 본 발명에 따라서 스케일러블 코딩을 수행하는 인코딩 장치와 디코딩장치에서의 인터 레이어 예측에 관한 일 예를 설명하는 블록도이다.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.
도 4는 휘도 성분에 대한 인트라 예측 모드를 도시한 도면이다. 4 is a diagram illustrating an intra prediction mode for a luminance component.
도 5는 본 발명에 따라 인트라 예측이 수행되는 현재 블록과 주변 블록을 도시한 도면이다.5 is a diagram illustrating a current block and neighboring blocks in which intra prediction is performed according to the present invention.
도 6은 본 발명에 따라 주변 블록으로부터 왼쪽 예측 모드와 위쪽 예측 모드를 유도하는 방법을 설명하기 위한 도면이다.6 is a diagram for describing a method of deriving a left prediction mode and an up prediction mode from a neighboring block according to the present invention.
도 7은 본 발명에 따라 주변 블록으로부터 유도한 예측 모드가 동일한 경우 MPM 리스트를 형성하는 방법을 설명하기 위한 제어 흐름도이다. 7 is a control flowchart illustrating a method of forming an MPM list when the prediction modes derived from neighboring blocks are the same according to the present invention.
도 8은 본 발명에 따라 주변 블록으로부터 유도한 예측 모드가 상이한 경우 MPM 리스트를 형성하는 방법을 설명하기 위한 제어 흐름도이다.8 is a control flowchart illustrating a method of forming an MPM list when prediction modes derived from neighboring blocks are different according to the present invention.
도 9는 본 발명에 따라 현재 블록의 예측값을 생성하는 것을 설명하기 위한 도면이다.9 is a diagram for describing generating a prediction value of a current block according to the present invention.
도 10은 본 발명의 일 실시예에 따른 현재 블록과 참조 블록을 도시한 도면이다.10 illustrates a current block and a reference block according to an embodiment of the present invention.
도 11은 본 발명의 일 실시예에 따라 현재 블록의 예측 블록을 생성하기 위한 복수의 예측 블록을 도시한 도면이다.11 illustrates a plurality of prediction blocks for generating a prediction block of a current block according to an embodiment of the present invention.
도 12는 본 발명의 다른 실시예에 따라 현재 블록의 예측 블록을 생성하는 방법을 설명하는 제어 흐름도이다.12 is a control flowchart illustrating a method of generating a prediction block of a current block according to another embodiment of the present invention.
도 13은 본 발명의 일 실시예에 따라 현재 블록의 예측 블록을 생성하는 방법을 설명하는 제어 흐름도이다. 13 is a control flowchart illustrating a method of generating a prediction block of a current block according to an embodiment of the present invention.
도 14는 본 발명의 일 실시예에 따라 서브 블록으로 구획된 예측 블록을 도시한 도면이다.14 illustrates a prediction block partitioned into subblocks according to an embodiment of the present invention.
도 15는 본 발명의 또 다른 실시예에 따라 현재 블록의 예측 블록을 생성하는 방법을 설명하는 제어 흐름도이다. 15 is a control flowchart illustrating a method of generating a prediction block of a current block according to another embodiment of the present invention.
도 16은 본 발명의 다른 실시예에 따라 서브 블록으로 구획된 예측 블록을 도시한 도면이다.16 illustrates a prediction block partitioned into subblocks according to another embodiment of the present invention.
도 17은 본 발명의 또 다른 실시예에 따라 현재 블록의 예측 블록을 생성하는 방법을 설명하는 제어 흐름도이다.17 is a control flowchart illustrating a method of generating a prediction block of a current block according to another embodiment of the present invention.
도 18은 본 발명의 또 다른 실시예에 따라 서브 블록으로 구획된 예측 블록을 도시한 도면이다.18 illustrates a prediction block partitioned into subblocks according to another embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니다. 본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.As the present invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the invention to the specific embodiments. The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the spirit of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, terms such as "comprise" or "have" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof described on the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
한편, 본 발명에서 설명되는 도면상의 각 구성들은 비디오 인코딩 장치/디코딩 장치에서 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.On the other hand, 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. For example, 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.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성 요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다.Hereinafter, with reference to the accompanying drawings, it will be described in detail a preferred embodiment of the present invention. Hereinafter, the same reference numerals are used for the same components in the drawings, and redundant description of the same components is omitted.
스케일러빌러티를 지원하는 비디오 코딩 방법(이하, ‘스케일러블 코딩’이라 함)에서는 입력 신호들을 레이어 별로 처리할 수 있다. 레이어에 따라서 입력 신호(입력 영상)들은 해상도(resolution), 프레임 레이트(frame rate), 비트 뎁스(bit-depth), 컬러 포맷(color format), 애스팩트 율(aspect ratio) 중 적어도 하나가 상이할 수 있다.In a video coding method supporting scalability (hereinafter, referred to as 'scalable coding'), input signals may be processed for each layer. Depending on the layer, the input signals (input images) may differ in at least one of resolution, frame rate, bit-depth, color format, and aspect ratio. Can be.
본 명세서에서, 스케일러블 코딩이라 함은 스케일러블 인코딩과 스케일러블 디코딩을 포함한다.In the present specification, scalable coding includes scalable encoding and scalable decoding.
스케일러블 인코딩/디코딩에서는 레이어 간의 차이를 이용하여, 즉 스케일러빌러티에 기반하여, 레이어 간의 예측을 수행함으로써 정보의 중복 전송/처리를 줄이고 압축 효율을 높일 수 있다.In scalable encoding / 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.
도 1은 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 인코딩 장치를 개략적으로 도시한 블록도이다.  1 is a block diagram schematically illustrating a video encoding apparatus supporting scalability according to an embodiment of the present invention.
도 1을 참조하면, 인코딩 장치(100)는 레이어 1에 대한 인코딩부(105)와 레이어 0에 대한 인코딩부(135)를 포함한다. Referring to FIG. 1, the encoding apparatus 100 includes an encoder 105 for layer 1 and an encoder 135 for layer 0.
레이어 0은 베이스 레이어, 참조 레이어 혹은 하위 레이어일 수 있으며, 레이어 1은 인핸스먼트 레이어, 현재 레이어 혹은 상위 레이어일 수 있다. Layer 0 may be a base layer, a reference layer, or a lower layer, and layer 1 may be an enhancement layer, a current layer, or an upper layer.
레이어 1의 인코딩부(105)는 예측부(110), 변환/양자화부(115), 필터링부(120), DPB(Decoded Picture Buffer, 125), 엔트로피 코딩부(130), 및 MUX(Multiplexer, 165)를 포함한다.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).
레이어 0의 인코딩부(135)는 예측부(140), 변환/양자화부(145), 필터링부(150), DPB(155) 및 엔트로피 코딩부(160)를 포함한다.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.
예측부(110, 140)는 입력된 영상에 대하여 인터 예측과 인트라 예측을 수행할 수 있다. 예측부(110, 140)는 소정의 처리 단위로 예측을 수행할 수 있다. 예측의 수행 단위는 코딩 유닛(Coding Unit: CU)일 수도 있고, 예측 유닛(Prediction Unit: PU)일 수도 있으며, 변환 유닛(Transform Unit: TU)일 수도 있다. 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).
예컨대, 예측부(110, 140)는 CU 단위로 인터 예측을 적용할 것인지 인트라 예측을 적용할 것인지를 결정하고, PU 단위로 예측의 모드를 결정하며, PU 단위 혹은 TU 단위로 예측을 수행할 수도 있다. 수행되는 예측은 예측 블록의 생성과 레지듀얼 블록(레지듀얼 신호)의 생성을 포함한다.For example, 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).
인터 예측을 통해서는 현재 픽처의 이전 픽처 및/또는 이후 픽처 중 적어도 하나의 픽처의 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다. 인트라 예측을 통해서는 현재 픽처 내의 픽셀 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다.Through inter prediction, 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. Through intra prediction, prediction blocks may be generated by performing prediction based on pixel information in a current picture.
인터 예측의 모드 또는 방법으로서, 스킵(skip) 모드, 머지(merge) 모드, MVP(Motion Vector Predictor) 모드 방법 등이 있다. 인터 예측에서는 예측 대상인 현재 PU에 대하여 참조 픽처를 선택하고, 참조 픽처 내에서 현재 PU에 대응하는 참조 블록을 선택할 수 있다. 예측부(110, 140)는 참조 블록을 기반으로 예측 블록을 생성할 수 있다.As a mode or method of inter prediction, there are a skip mode, a merge mode, a motion vector predictor (MVP) mode method, and the like. In inter prediction, 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 units 110 and 140 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. In this case, the motion vector may also be expressed in units of integer pixels or units of integer pixels or less.
인터 예측에 있어서 움직임 정보 즉, 참조 픽처의 인덱스, 움직임 벡터, 레지듀얼 신호 등의 정보는 엔트로피 인코딩되어 디코딩 장치에 전달된다. 스킵 모드가 적용되는 경우에는 레지듀얼을 생성, 변환, 양자화, 전송하지 않을 수 있다.In inter prediction, motion information, that is, information such as an index of a reference picture, a motion vector, and a residual signal, is entropy encoded and transmitted to a decoding apparatus. When the skip mode is applied, residuals may not be generated, transformed, quantized, or transmitted.
인트라 예측에서 예측 모드는 33개의 방향성 예측 모드와 적어도 두 개 이상의 비방향성 모드를 가질 수 있다. 비향성성 모드는 DC 예측 모드 및 플래이너 모드(Planar 모드)을 포함할 수 있다. 인트라 예측에서는 참조 샘플에 필터를 적용한 후 예측 블록을 생성할 수도 있다.In intra prediction, 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). In intra prediction, a prediction block may be generated after applying a filter to a reference sample.
PU는 다양한 사이즈/형태의 블록일 수 있으며, 예컨대 인터 예측의 경우에 PU는 2N×2N 블록, 2N×N 블록, N×2N 블록, 또는 N×N 블록 (N은 정수) 등일 수 있다. 인트라 예측의 경우에 PU는 2N×2N 블록 또는 N×N 블록 (N은 정수) 등일 수 있다. 이때, N×N 블록 크기의 PU는 특정한 경우에만 적용하도록 설정할 수 있다. 예컨대 최소 크기 CU에 대해서만 NxN 블록 크기의 PU를 이용하도록 정하거나 인트라 예측에 대해서만 이용하도록 정할 수도 있다. 또한, 상술한 크기의 PU 외에, N×mN 블록, mN×N 블록, 2N×mN 블록 또는 mN×2N 블록 (m<1) 등의 PU를 더 정의하여 사용할 수도 있다.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. In the case of intra prediction, the PU may be a 2N × 2N block or an N × N block (where N is an integer). In this case, the PU of the N × N block size may be set to apply only in a specific case. For example, the NxN block size PU may be used only for the minimum size CU or only for intra prediction. In addition to the above-described PUs, PUs such as N × mN blocks, mN × N blocks, 2N × mN blocks, or mN × 2N blocks (m <1) may be further defined and used.
또한, 예측부(110)는 레이어 0의 정보를 이용하여 레이어 1에 대한 예측을 수행할 수 있다. 본 명세서에서는 다른 레이어의 정보를 이용하여 현재 레이어의 정보를 예측하는 방법을, 설명의 편의를 위해, 인터 레이어 예측이라고 한다.In addition, the prediction unit 110 may perform prediction for layer 1 using the information of the layer 0. In the present specification, 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 (ie, predicted by inter-layer prediction) may include texture, motion information, unit information, predetermined parameters (eg, filtering parameters, etc.).
또한, 현재 레이어에 대한 예측에 이용되는 (즉, 인터 레이어 예측에 이용되는) 다른 레이어의 정보로는 텍스처, 움직임 정보, 유닛 정보, 소정의 파라미터(예컨대, 필터링 파라미터 등)이 있을 수 있다.In addition, information of another layer used for prediction for the current layer (ie, used for inter-layer prediction) may include texture, motion information, unit information, and predetermined parameters (eg, filtering parameters).
인터 레이어 예측의 일 예로서, 인터 레이어 움직임 예측은 인터 레이어 인터 예측이라고도 한다. 인터 레이어 인터 예측에 의하면, 레이어 0 (참조 레이어 혹은 베이스 레이어)의 움직임 정보를 이용하여 레이어 1 (현재 레이어 혹은 인핸스먼트 레이어)의 현재 블록에 대한 예측을 수행할 수 있다.As an example of inter-layer prediction, inter-layer motion prediction is also referred to as inter-layer inter prediction. According to inter-layer inter prediction, prediction of a current block of layer 1 (current layer or enhancement layer) may be performed using motion information of layer 0 (reference layer or base layer).
인터 레이어 인터 예측을 적용하는 경우에는, 참조 레이어의 움직임 정보를 스케일링 할 수도 있다. In case of applying inter-layer inter prediction, motion information of a reference layer may be scaled.
인터 레이어 예측의 또 다른 예로서 인터 레이어 텍스쳐 예측은 인터 레이어 인트라 예측 혹은 인트라 BL(Base Layer) 예측이라고도 불린다. 인터 레이어 텍스처 예측은 참조 레이어 내 참조 블록이 인트라 예측에 의해 복원된 경우에 적용될 수 있다.As another example of inter-layer prediction, 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.
인터 레이어 인트라 예측에서는 참조 레이어 내 참조 블록의 텍스처를 인핸스먼트 레이어의 현재 블록에 대한 예측 값으로 사용할 수 있다. 이때, 참조 블록의 텍스처는 업샘플링에 의해 스케일링될 수 있다.In 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.
인터 레이어 예측의 다른 예인 인터 레이어 유닛 파라미터 예측에서는 베이스 레이어의 유닛(CU, PU 및/또는 TU) 정보를 유도하여 인핸스먼트 레이어의 유닛 정보로 사용하거나, 베이스 레이어의 유닛 정보를 기반으로 인핸스먼트 레이어의 유닛 정보를 결정할 수 있다.In another example of inter-layer prediction, inter-layer unit parameter prediction derives unit (CU, PU, and / or TU) information of a base layer and uses it as unit information of an enhancement layer, or based on unit information of a base layer. Unit information may be determined.
또한, 유닛 정보는 각 유닛 레벨에서의 정보를 포함할 수 있다. 예컨대, CU 정보의 경우, 파티션(CU, PU 및 또는 TU)에 관한 정보, 변환에 관한 정보, 예측에 대한 정보, 코딩에 대한 정보를 포함할 수 있다. PU 정보의 경우, PU 파티션에 관한 정보, 예측에 관한 정보(예컨대, 움직임 정보, 예측 모드에 관한 정보 등) 등을 포함할 수 있다. TU에 관한 정보는 TU 파티션에 관한 정보, 변환에 관한 정보(변환 계수, 변환 방법 등) 등을 포함할 수 있다.In addition, the unit information may include information at each unit level. For example, in the case of CU information, information about a partition (CU, PU and / or TU) may include information on transform, information on prediction, and information on coding. In the case of PU information, 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.).
또한, 유닛 정보는 처리 단위(예컨대, CU, PU, TU 등)의 분할 정보만을 포함할 수도 있다.In addition, the unit information may include only the partition information of the processing unit (eg, CU, PU, TU, etc.).
인터 레이어 예측의 또 다른 예인 인터 레이어 파라미터 예측에서는 베이스 레이어에서 사용한 파라미터를 유도하여 인핸스먼트 레이어에서 재사용하도록 하거나 베이스 레이어에서 사용한 파라미터를 기반으로 인핸스먼트 레이어에 대한 파라미터를 예측할 수 있다.In another example of inter-layer prediction, 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.
여기서는 인터 레이어 예측의 예로서, 인터 레이어 텍스처 예측, 인터 레이어 움직임 예측, 인터 레이어 유닛 정보 예측, 인터 레이어 파라미터 예측을 설명하였으나, 본 발명에서 적용할 수 있는 인터 레이어 예측은 이에 한정되지 않는다.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.
예컨대, 예측부(110)는 인터 레이어 예측으로서 다른 레이어의 레지듀얼 정보를 이용하여 현재 레이어의 레지듀얼을 예측하고 이를 기반으로 현재 레이어 내 현재 블록에 대한 예측을 수행하는 인터 레이어 레지듀얼 예측을 이용할 수도 있다.For example, the prediction unit 110 may use interlayer residual prediction, which predicts the residual of the current layer using the residual information of another layer as interlayer prediction, and performs prediction on the current block in the current layer based on the prediction. It may be.
또한, 예측부(110)는 인터 레이어 예측으로서 현재 레이어의 복원 픽처와 다른 레이어의 복원 픽처를 업샘플링 혹은 다운샘플링한 영상 간의 차분 (차분 영상) 영상을 이용하여 현재 레이어 내 현재 블록에 대한 예측을 수행하는 인터 레이어 차분 예측을 수행할 수도 있다.In addition, the prediction unit 110 may predict the current block in the current layer by using a difference (differential image) image between the reconstructed picture of the current layer and the resampled picture of another layer as the inter-layer prediction. Inter-layer difference prediction may be performed.
또한, 예측부(110)는 인터 레이어 예측으로, 다른 레이어의 신택스 정보를 이용하여 현재 블록의 텍스처를 예측하거나 생성하는 인터 레이어 신택스 예측을 이용할 수도 있다. 이때, 현재 블록의 예측에 이용하는 참조 레이어의 신택스 정보는 인트라 예측 모드에 관한 정보, 움직임 정보 등일 수 있다.In addition, the prediction unit 110 may use interlayer syntax prediction that predicts or generates a texture of a current block using syntax information of another layer as interlayer prediction. In this case, the syntax information of the reference layer used for prediction of the current block may be information about an intra prediction mode, motion information, and the like.
이 때, 참조 레이어에서 인트라 예측 모드가 적용된 블록(intra)으로부터는 인트라 예측 모드를 참조하고, 인터 예측 모드가 적용된 블록(MV)으로부터는 움직임 정보를 참조하여 인터 레이어 신택스 예측을 수행할 수 있다.In this case, inter-layer syntax prediction may be performed by referring to the intra prediction mode from a block to which the intra prediction mode is applied in the reference layer and referring to motion information from the block MV to which the inter prediction mode is applied.
예를 들면, 참조 레이어가 P 슬라이스나 B 슬라이스이지만, 슬라이스 내에 참조 블록은 인트라 예측 모드가 적용된 블록일 수 있다. 이런 경우 인터 레이어 신택스 예측을 적용하면, 참조 레이어의 신택스 정보 중 참조 블록의 인트라 예측 모드를 이용하여 현재 블록에 대한 텍스처를 생성/ 예측하는 인터 레이어 예측을 수행할 수 있다.For example, although the reference layer is a P slice or a B slice, the reference block in the slice may be a block to which an intra prediction mode is applied. In this case, when inter-layer syntax prediction is applied, inter-layer prediction may be performed to generate / predict a texture for the current block by using an intra prediction mode of the reference block among syntax information of the reference layer.
상술된 인터 레이어를 이용한 여러 예측 방법은 특정 블록에 대한 예측 시 복 수개가 이용될 수도 있다. 예를 들어 현재 블록을 예측하기 위하여 레이어 0의 예측 정보를 이용하면서, 대응되는 레이어 0 또는 대응 블록의 유닛 정보 또는 필터링 파라미터 정보 등을 추가적으로 이용할 수 있다. 이러한 인터 레이어 예측 방법의 결합은 본 명세서 이하에서 설명될 예측에도 적용될 수 있다.Multiple prediction methods using the above-described interlayer may be used when predicting a specific block. For example, the prediction information of the layer 0 may be used to predict the current block while additionally using unit information or filtering parameter information of the corresponding layer 0 or the corresponding block. This combination of inter-layer prediction methods can also be applied to the predictions described below in this specification.
변환/양자화부(115, 145)는 변환 블록 단위로 레지듀얼 블록에 대한 변환을 수행하여 변환 계수를 생성하고, 변환 계수를 양자화 할 수 있다. 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.
변환 블록은 샘플들의 사각형 블록으로서 동일한 변환이 적용되는 블록이다. 변환 블록은 변환 유닛(TU)일 수 있으며, 쿼드 트리(quad tree) 구조를 가질 수 있다. 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.
변환/양자화부(115, 145)는 레지듀얼 블록에 적용된 예측 모드와 블록의 크기에 따라서 변환을 수행해서 변환 계수들의 2차원 어레이를 생성할 수 있다. 예컨대, 레지듀얼 블록에 인트라 예측이 적용되었고 블록이 4x4의 레지듀얼 배열이라면, 레지듀얼 블록을 DST(Discrete Sine Transform)를 이용하여 변환하고, 그 외의 경우라면 레지듀얼 블록을 DCT(Discrete Cosine Transform)를 이용하여 변환할 수 있다. 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 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.
변환/양자화부(115, 145)는 변환 계수들을 양자화하여 양자화된 변환 계수를 생성할 수 있다. The transform / quantization unit 115 and 145 may quantize the transform coefficients to generate quantized transform coefficients.
변환/양자화부(115, 145)는 양자화된 변환 계수를 엔트로피 코딩부(130, 180)로 전달할 수 있다. 이때, 변환/양자화부(145)는 양자화된 변환 계수의 2차원 어레이를 소정의 스캔 순서에 따라 1차원 어레이로 재정렬하여 엔트로피 코딩부(130, 180)로 전달할 수도 있다. 또한, 변환/양자화부(115, 145)는 인터 예측을 위해, 레지듀얼과 예측 블록을 기반으로 생성된 복원 블록을 변환/양자화하지 않고, 필터링부(120, 150)에 전달할 수 있다. The transform / quantization units 115 and 145 may transfer the quantized transform coefficients to the entropy coding units 130 and 180. In this case, the transform / quantization unit 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 180. In addition, 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.
한편, 변환/양자화부(115, 145)는 필요에 따라서, 변환을 생략(skip)하고 양자화만 수행하거나 변환과 양자화를 모두 생략할 수도 있다. 예컨대, 변환/양자화부(115, 165)는 특정한 예측 방법이 적용되거나 특정 크기를 갖는 블록, 혹은 특정 예측 블록이 적용된 특정한 크기의 블록에 대하여 변환을 생략할 수도 있다.Meanwhile, the transform / quantization units 115 and 145 may skip transform and perform quantization only or omit both transform and quantization as necessary. For example, the transform / quantization unit 115 or 165 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.
엔트로피 코딩부(130, 160)는 양자화된 변환 계수들에 대한 엔트로피 인코딩을 수행할 수 있다. 엔트로피 인코딩에는 예를 들어, 지수 골롬(Exponential Golomb), CABAC(Context-Adaptive Binary Arithmetic Coding) 등과 같은 인코딩 방법을 사용할 수 있다. 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.
필터링부(120, 150)는 디블록킹 필터, ALF(Adaptive Loop Filter), SAO(Sample Adaptive Offset)를 복원된 픽처에 적용할 수 있다. 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는 디블록킹 필터가 적용된 레지듀얼 블록에 대하여, 픽셀 단위로 원본 영상과의 오프셋 차이를 복원하며, 밴드 오프셋(Band Offset), 에지 오프셋(Edge Offset) 등의 형태로 적용된다. The deblocking filter may remove distortion generated at the boundary between blocks in the reconstructed picture. The adaptive loop filter (ALF) 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.
필터링부(120, 150)는 디블록킹 필터, ALF, SAO를 모두 적용하지 않고 디블록킹 필터만 적용하거나 디블록킹 필터와 ALF만 적용하거나 디블록킹 필터와 SAO만을 적용할 수도 있다. 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.
DPB(125, 155)는 필터링부(120, 150)로부터 복원 블록 또는 복원 픽처를 전달받아 저장할 수 있다. DPB(125, 155)는 복원 블록 또는 픽처를 인터 예측을 수행하는 예측부(110, 140)에 제공할 수 있다. 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.
레이어 0의 엔트로피 코딩부(160)에서 출력되는 정보와 레이어 1의 엔트로피 코딩부(130)에서 출력되는 정보는 MUX(185)에서 멀티플렉싱되어 비트스트림으로 출력될 수 있다.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 185 and output as a bitstream.
한편, 여기서는 설명의 편의를 위해, 레이어 1의 인코딩부(105)가 MUX(165)를 포함하는 것으로 설명하였으나, MUX는 레이어 1의 인코딩부(105) 및 레이어 0의 인코딩부(135)와는 별도의 장치 혹은 모듈일 수 있다.Meanwhile, for the convenience of description, the encoding unit 105 of the layer 1 has been described as including the MUX 165. However, 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.
도 1의 인코딩 장치는 카메라 등을 포함하여 영상을 촬상하고 인코딩 할 수 있는 전자장치 등으로 구현될 수 있다. 예를 들어 인코딩 장치는 텔레비전, 컴퓨터 시스템, 휴대용 전화기 또는 태블랫 PC와 같은 개인 단말기 등으로 구현되거나 이들 전자장치에 포함될 수 있다. The encoding device of FIG. 1 may be implemented as an electronic device capable of capturing and encoding an image, including a camera. For example, the encoding device may be implemented in or included in a personal terminal such as a television, computer system, portable telephone or tablet PC, or the like.
도 2는 본 발명에 따라서 스케일러블 코딩을 수행하는 인코딩 장치에서의 인터 레이어 예측에 관한 일 예를 설명하는 블록도이다.2 is a block diagram illustrating an example of interlayer prediction in an encoding apparatus that performs scalable coding according to the present invention.
도 2를 참조하면, 디코딩 장치(200)는 레이어 1의 디코딩부(210)와 레이어 0의 디코딩부(250)를 포함한다.Referring to FIG. 2, the decoding apparatus 200 includes a decoder 210 of layer 1 and a decoder 250 of layer 0.
레이어 0은 베이스 레이어, 참조 레이어 혹은 하위 레이어일 수 있으며, 레이어 1은 인핸스먼트 레이어, 현재 레이어 혹은 상위 레이어일 수 있다. Layer 0 may be a base layer, a reference layer, or a lower layer, and layer 1 may be an enhancement layer, a current layer, or an upper layer.
레이어 1의 디코딩부(210)는 엔트로피 디코딩부(215), 재정렬부(220), 역양자화부(225), 역변환부(230), 예측부(235), 필터링부(240), 메모리를 포함할 수 있다.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. can do.
레이어 0의 디코딩부(250)는 엔트로피 디코딩부(255), 재정렬부(260), 역양자화부(265), 역변환부(270), 예측부(275), 필터링부(280), 메모리(285)를 포함할 수 있다.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.
인코딩 장치로부터 영상 정보를 포함하는 비트스트림이 전송되면, DEMUX(205)는 레이어별로 정보를 디멀티플렉싱하여 각 레이어별 디코딩 장치로 전달할 수 있다.When the bitstream including the image information is transmitted from the encoding device, the DEMUX 205 may demultiplex the information for each layer and deliver the information to the decoding device for each layer.
엔트로피 디코딩부(215, 255)는 인코딩 장치에서 사용한 엔트로피 코딩 방식에 대응하여 엔트로피 디코딩을 수행할 수 있다. 예컨대, 인코딩 장치에서 CABAC이 사용된 경우에, 엔트로피 디코딩부(215, 255)도 CABAC을 이용하여 엔트로피 디코딩을 수행할 수 있다.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.
엔트로피 디코딩부(215, 255)에서 디코딩된 정보 중 예측 블록을 생성하기 위한 정보는 예측부(235, 275)로 제공되고, 엔트로피 디코딩부(215, 255)에서 엔트로피 디코딩이 수행된 레지듀얼 값, 즉 양자화된 변환 계수는 재정렬부(220, 260)로 입력될 수 있다.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.
재정렬부(220, 260)는 엔트로피 디코딩부(215, 255)에서 엔트로피 디코딩된 비트스트림의 정보, 즉 양자화된 변환 계수를 인코딩 장치에서 재정렬한 방법을 기초로 재정렬할 수 있다.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.
예컨대, 재정렬부(220, 260)는 1차원 어레이의 양자화된 변환 계수들을 다시 2차원 어레이의 계수들로 재정렬할 수 있다. 재정렬부(220, 260)는 현재 블록(변환 블록)에 적용된 예측 모드 및/또는 변환 블록의 크기를 기반으로 스캐닝을 수행하여 계수(양자화된 변환 계수)들의 2차원 어레이를 생성할 수 있다.For example, 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.
역양자화부(225, 265)는 인코딩 장치에서 제공된 양자화 파라미터와 재정렬된 블록의 계수값을 기초로 역양자화를 수행하여 변환 계수들을 생성할 수 있다.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.
역변환부(230, 270)는 변환 계수들에 대하여 인코딩 장치의 변환부가 수행한 변환에 대한 역변환을 수행할 수 있다. 역변환부(230, 270)는 인코딩 장치에서 수행된 DCT(Discrete Cosine Transform) 및 DST(Discrete Sine Transform)에 대해 역DCT 및/또는 역DST를 수행할 수 있다.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 및/또는 DST는 예측 방법, 현재 블록의 크기 및 예측 방향 등 복수의 정보에 따라 선택적으로 수행될 수 있고, 디코딩 장치의 역변환부(230, 270)는 인코딩 장치에서 수행된 변환 정보를 기초로 역변환을 수행할 수 있다.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.
예컨대, 역변환부(230, 270)은 예측 모드/블록 크기에 따라서 역DCT와 역DST를 적용할 수 있다. 가령, 역변환부(230, 270)은 인트라 예측이 적용된 4x4 루마 블록에 대해서 역DST를 적용할 수도 있다.For example, the inverse transform units 230 and 270 may apply inverse DCT and inverse DST according to a prediction mode / block size. For example, the inverse transformers 230 and 270 may apply an inverse DST to a 4x4 luma block to which intra prediction is applied.
또한, 역변환부(230, 270)는 예측 모드/블록 크기에 상관 없이, 특정 역변환 방법을 고정적으로 사용할 수도 있다. 예컨대, 역변환부(330, 370)는 모든 변환 블록에 역DST만을 적용할 수 있다. 또한, 역변환부(330, 370)는 모든 변환 블록에 역DCT만을 적용할 수도 있다.In addition, 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 330 and 370 may apply only inverse DST to all transform blocks. In addition, the inverse transform units 330 and 370 may apply only inverse DCT to all transform blocks.
역변환부(230, 270)는 변환 계수들 혹은 변환 계수의 블록을 역변환하여 레지듀얼 혹은 레지듀얼 블록을 생성할 수 있다.The inverse transform units 230 and 270 may generate a residual or residual block by inversely transforming the transform coefficients or the block of the transform coefficients.
역변환부(230, 270)는 또한, 필요에 따라서 혹은 인코딩 장치에서 인코딩된 방식에 따라서, 변환을 생략(skip) 할 수도 있다. 예컨대, 역변환(230, 270)는 특정한 예측 방법이 적용되거나 특정 크기를 갖는 블록, 혹은 특정 예측 블록이 적용된 특정한 크기의 블록에 대하여 변환을 생략할 수도 있다.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 transforms 230 and 270 may omit the transform for a block having a specific prediction method or a specific size or a block of a specific size to which a specific prediction block is applied.
예측부(235, 275)는 엔트로피 디코딩부(215, 255)로부터 전달된 예측 블록 생성 관련 정보와 메모리(245, 285)에서 제공된 이전에 디코딩된 블록 및/또는 픽처 정보를 기초로 현재 블록에 대한 예측 블록을 생성할 수 있다.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.
현재 블록에 대한 예측 모드가 인트라 예측(intra prediction) 모드인 경우에, 예측부(235, 275)는 현재 픽처 내의 픽셀 정보를 기초로 현재 블록에 대한 인트라 예측을 수행할 수 있다.When the prediction mode for the current block is an intra prediction mode, the prediction units 235 and 275 may perform intra prediction on the current block based on pixel information in the current picture.
현재 블록에 대한 예측 모드가 인터 예측(inter prediction) 모드인 경우에, 예측부(235, 275)는 현재 픽처의 이전 픽처 또는 이후 픽처 중 적어도 하나의 픽처에 포함된 정보를 기초로 현재 블록에 대한 인터 예측을 수행할 수 있다. 인터 예측에 필요한 움직임 정보의 일부 또는 전부는 인코딩 장치로부터 수신한 정보를 확인하고, 이에 대응하여 유도될 수 있다.When the prediction mode for the current block is the inter prediction mode, 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.
인터 예측의 모드로서 스킵 모드가 적용되는 경우에는 인코딩 장치로부터 레지듀얼이 전송되지 않으며 예측 블록을 복원 블록으로 할 수 있다.When the skip mode is applied as the mode of inter prediction, residual is not transmitted from the encoding apparatus, and the prediction block may be a reconstruction block.
한편, 레이어 1의 예측부(235)는 레이어 1 내의 정보만을 이용하여 인터 예측 또는 인트라 예측을 수행할 수도 있고, 다른 레이어(레이어 0)의 정보를 이용하여 인터 레이어 예측을 수행할 수도 있다.Meanwhile, 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).
예컨대, 레이어 1의 예측부(235)는 레이어 1의 움직임 정보, 레이어 1의 텍스처 정보, 레이어 1의 유닛 정보, 레이어 1의 파라미터 정보 중 하나를 이용하여 현재 블록에 대한 예측을 수행할 수 있다. For example, the prediction unit 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.
레이어 1의 예측부(235)는 레이어 0의 예측부(275)로부터 레이어 1의 움직임 정보를 전달받아서 움직임 예측을 수행할 수 있다. 인터 레이어 움직임 예측을 인터 레이어 인터 예측이라고도 한다. 인터 레이어 움직임 예측에 의해, 참조 레이어(베이스 레이어)의 움직임 정보를 이용하여 현재 레이어(인핸스먼트 레이어)의 현재 블록에 대한 예측이 수행될 수 있다. 예측부(335)는 필요한 경우에, 참조 레이어의 움직임 정보를 스케일링 하여 이용할 수도 있다.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. By 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 335 may scale and use motion information of the reference layer when necessary.
레이어 1의 예측부(235)는 레이어 0의 예측부(275)로부터 레이어 0의 텍스처 정보를 전달받아서 텍스처 예측을 수행할 수 있다. 텍스처 예측은 인터 레이어 인트라 예측 혹은 인트라 BL(Base Layer) 예측이라고도 불린다. 텍스처 예측은 참조 레이어의 참조 블록이 인트라 예측에 의해 복원된 경우에 적용될 수 있다. 인터 레이어 인트라 예측에서는 참조 레이어 내 참조 블록의 텍스처를 인핸스먼트 레이어의 현재 블록에 대한 예측 값으로 사용할 수 있다. 이때, 참조 블록의 텍스처는 업샘플링에 의해 스케일링될 수 있다.The predictor 235 of the layer 1 may receive texture information of the layer 0 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. In 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.
레이어 1의 예측부(235)는 레이어 0의 예측부(275)로부터 레이어 0의 유닛 파라미터 정보를 전달받아서 유닛 파라미터 예측을 수행할 수 있다. 유닛 파라미터 예측에 의해, 베이스 레이어의 유닛(CU, PU 및/또는 TU) 정보가 인핸스먼트 레이어의 유닛 정보로 사용되거나, 베이스 레이어의 유닛 정보를 기반으로 인핸스먼트 레이어의 유닛 정보가 결정될 수 있다.The predictor 235 of the layer 1 may receive unit parameter information of the layer 0 from the predictor 275 of the layer 0 to perform unit parameter prediction. By 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.
레이어 1의 예측부(235)는 레이어 0의 예측부(275)로부터 레이어 0의 필터링에 관한 파라미터 정보를 전달받아서 파라미터 예측을 수행할 수도 있다. 파라미터 예측에 의해, 베이스 레이어에서 사용한 파라미터를 유도하여 인핸스먼트 레이어에서 재사용하거나, 베이스 레이어에서 사용한 파라미터를 기반으로 인핸스먼트 레이어에 대한 파라미터를 예측할 수 있다.The predictor 235 of the layer 1 may perform parameter prediction by receiving parameter information regarding the filtering of the layer 0 from the predictor 275 of the layer 0. By 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.
상술된 인터 레이어를 이용한 여러 예측 방법은 특정 블록에 대한 예측 시 복 수개가 이용될 수도 있다. 예를 들어 현재 블록을 예측하기 위하여 레이어 0의 예측 정보를 이용하면서, 대응되는 레이어 0 또는 대응 블록의 유닛 정보 또는 필터링 파라미터 정보 등을 추가적으로 이용할 수 있다. 이러한 인터 레이어 예측 방법의 결합은 본 명세서 이하에서 설명될 예측에도 적용될 수 있다.Multiple prediction methods using the above-described interlayer may be used when predicting a specific block. For example, the prediction information of the layer 0 may be used to predict the current block while additionally using unit information or filtering parameter information of the corresponding layer 0 or the corresponding block. This combination of inter-layer prediction methods can also be applied to the predictions described below in this specification.
가산기(290, 295)는 예측부(235, 275)에서 생성된 예측 블록과 역변환부(230, 270)에서 생성된 레지듀얼 블록을 이용해 복원 블록을 생성할 수 있다. 이 경우, 가산기(290, 295)를 복원 블록을 생성하는 별도의 유닛(복원 블록 생성부)로 볼 수 있다.The adders 290 and 295 may generate a reconstruction block using the prediction blocks generated by the predictors 235 and 275 and the residual blocks generated by the inverse transformers 230 and 270. In this case, the adders 290 and 295 can be viewed as separate units (restore block generation unit) for generating the reconstruction block.
가산기(290, 295)에서 복원된 블록 및/또는 픽처는 필터링부(240, 280)로 제공될 수 있다.Blocks and / or pictures reconstructed by the adders 290 and 295 may be provided to the filtering units 240 and 280.
도 2의 예를 참조하면, 레이어 1의 필터링부(240)는 레이어 1의 예측부(235) 및/또는 레이어 0의 필터링부(280)으로부터 전달되는 파라미터 정보를 이용하여 복원된 픽처에 대한 필터링을 수행할 수도 있다. 예컨대, 레이어 1에서 필터링부(240)는 레이어 0에서 적용된 필터링의 파라미터로부터 예측된 파라미터를 이용하여 레이어 1에 대한 혹은 레이어 간의 필터링을 적용할 수 있다.Referring to the example of FIG. 2, the filtering unit 240 of the layer 1 filters 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 0. You can also do For example, in layer 1, 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.
메모리(245, 285)는 복원된 픽처 또는 블록을 저장하여 참조 픽처 또는 참조 블록으로 사용할 수 있도록 할 수 있다. 메모리(245, 285)는 저장된 복원 픽처를 소정의 출력부(미도시) 혹은 디스플레이(미도시)를 통해 출력할 수도 있다.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).
도 2의 예에서는 재정렬부, 역양자화부, 역변환부 등으로 나누어 설명하였으나, 도 1의 인코딩 장치에서와 같이, 역양자화/역변환부의 한 모듈에서 재정렬, 역양자화, 역변환을 순서대로 수행하도록 디코딩 장치를 구성할 수도 있다.In the example of FIG. 2, the description is divided into a reordering unit, an inverse quantization unit, an inverse transform unit, and the like. However, as in the encoding apparatus of FIG. 1, a decoding device to perform reordering, inverse quantization, and inverse transformation in order in one module of the inverse quantization / inverse transformation unit It can also be configured.
도 1 및 도 2의 예에서는 예측부로 설명하였으나, 발명의 이해를 돕기 위해, 레이어 1의 예측부는 다른 레이어(레이어 0)의 정보를 이용하여 예측을 수행하는 인터 레이어 예측부와 다른 레이어(레이어 0)의 정보를 이용하지 않고 예측을 수행하는 인터/인트라 예측부를 포함하는 것으로 볼 수도 있다.In the example of FIGS. 1 and 2, the prediction unit has been described, but for better understanding, 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).
도 2의 디코딩 장치는 영상을 재생하고, 또는 재생하여 표시할 수 있는 다양한 전자장치로 구현될 수 있다. 예를 들어 디코딩 장치는 셋탑 박스, 텔레비전, 컴퓨터 시스템, 휴대용 전화기, 태블랫 PC와 같은 개인 단말기 등으로 구현되거나 이들 전자장치에 포함될 수 있다. The decoding apparatus of FIG. 2 may be implemented as various electronic devices capable of playing back, or playing back and displaying an image. For example, the decoding device may be implemented in or included in a set-top box, a television, a computer system, a portable telephone, a personal terminal such as a tablet PC, or the like.
도 3은 본 발명에 따라서 스케일러블 코딩을 수행하는 인코딩 장치와 디코딩 장치에서의 레이어 간 예측에 관한 일 예를 설명하는 블록도이다.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.
도 3을 참조하면, 레이어 1의 예측부(300)는 인터/인트라 예측부(340) 및 인터 레이어 예측부(350)를 포함한다.Referring to FIG. 3, the predictor 300 of layer 1 includes an inter / intra predictor 340 and an interlayer predictor 350.
레이어 1의 예측부(300)는 레이어 0의 정보로부터 레이어 1의 예측에 필요한 인터 레이어 예측을 수행할 수 있다.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.
예컨대, 인터 레이어 예측부(350)는 레이어 0의 예측부(320) 및/또는 필터링부(330)로부터 레이어 0의 정보를 전달받아 레이어 1의 예측에 필요한 인터 레이어 예측을 수행할 수 있다.For example, 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.
레이어 1의 인터/인트라 예측부(340)는, 레이어 0의 정보를 이용하지 않고, 레이어 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.
또한, 레이어 1의 인터/인트라 예측부(340)는, 인터 레이어 예측부(350)로부터 전달된 정보를 이용하여, 레이어 0의 정보에 기반한 예측을 수행할 수도 있다.In addition, 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.
아울러, 레이어 1의 필터링부(310)는 레이어 0의 정보에 기반하여 필터링을 수행할 수도 있고, 레이어 1의 정보에 기반하여 필터링을 수행할 수도 있다. 레이어 0의 정보는 레이어 0의 필터링부(330)로부터 레이어 1의 필터링부(310)에 전달될 수도 있고, 레이어 1의 인터 레이어 예측부(350)로부터 레이어 1의 필터링부(310)에 전달될 수도 있다.In addition, the filtering unit 310 of the layer 1 may perform the filtering based on the information of the layer 0 or may perform the filtering based on the information of the layer 1. 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.
한편, 레이어 0으로부터 인터 레이어 예측부(330)로 전달되는 정보로는 레이어 0의 유닛 파라미터에 관한 정보, 레이어 0의 움직임 정보, 레이어 0의 텍스처 정보, 레이어 0의 필터 파라미터 정보 중 적어도 하나일 수 있다.The information transmitted from the layer 0 to the interlayer prediction unit 330 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.
설명의 편의를 위해, 인터 레이어 예측부(350) 내에서 각 인터 레이어 정보를 예측하는 서브 예측부를 가정하자.For convenience of explanation, assume a sub-prediction unit that predicts each inter-layer information in the inter-layer prediction unit 350.
텍스처 예측부(360)는, 참조 레이어의 참조 블록이 인트라 예측에 의해 복원된 경우에, 참조 레이어 내 참조 블록의 텍스처를 인핸스먼트 레이어의 현재 블록에 대한 예측 값으로 사용할 수 있다. 이때, 텍스처 예측부(360)는 참조 블록의 텍스처를 업샘플링에 의해 스케일링할 수 있다.When the reference block of the reference layer is reconstructed by intra prediction, 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.
움직임 예측부(370)는 레이어 0 (참조 레이어 혹은 베이스 레이어)의 움직임 정보를 이용하여 레이어 1 (현재 레이어 혹은 인핸스먼트 레이어)의 현재 블록에 대한 예측을 수행할 수 있다. 이때, 움직임 예측부(370)는 참조 레이어의 움직임 정보를 스케일링 할 수도 있다. 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.
유닛 정보 예측부(380)는 베이스 레이어의 유닛(CU, PU 및/또는 TU) 정보를 유도하여 인핸스먼트 레이어의 유닛 정보로 사용하거나, 베이스 레이어의 유닛 정보를 기반으로 인핸스먼트 레이어의 유닛 정보를 결정할 수 있다. 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.
파라미터 예측부(390)는 베이스 레이어에서 사용한 파라미터를 유도하여 인핸스먼트 레이어에서 재사용하도록 하거나 베이스 레이어에서 사용한 파라미터를 기반으로 인핸스먼트 레이어에 대한 파라미터를 예측할 수 있다.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.
여기서는 인터 레이어 예측의 예로서, 인터 레이어 텍스처 예측, 인터 레이어 움직임 예측, 인터 레이어 유닛 정보 예측, 인터 레이어 파라미터 예측을 설명하였으나, 본 발명에서 적용할 수 있는 인터 레이어 예측은 이에 한정되지 않는다. 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.
예컨대, 인터 레이어 예측부는 인터 레이어 레지듀얼 예측을 수행하는 서브 예측부, 인터 레이어 신택스 예측을 수행하는 서브 예측부 및/또는 인터 레이어 차분 예측을 수행하는 서브 예측부를 더 포함할 수도 있고, 상술한 서브 예측부들의 조합으로 인터 레이어 레지듀얼 예측, 인터 레이어 차분 예측, 인터 레이어 신택스 예측 등을 수행할 수도 있다.For example, the inter-layer prediction unit may further include a sub-prediction unit that performs inter-layer residual prediction, a sub-prediction unit that performs inter-layer syntax prediction, and / or a sub-prediction unit that performs inter-layer difference prediction. The interlayer residual prediction, the interlayer differential prediction, the interlayer syntax prediction, and the like may be performed using a combination of prediction units.
도 3의 구성이 인코딩 장치의 구성이라고 할 때, 레이어 1에서, 예측부(300)는 도 1의 예측부(110)에 대응할 수 있고, 필터링부(310)는 도 1의 필터링부(120)에 대응할 수 있다. 레이어 0에서, 예측부(320)는 도 1의 예측부(140)에 대응할 수 있고, 필터링부(330)는 도 1의 필터링부(150)에 대응할 수 있다.When the configuration of FIG. 3 is a configuration of an encoding apparatus, in layer 1, 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. In layer 0, the predictor 320 may correspond to the predictor 140 of FIG. 1, and the filter 330 may correspond to the filter 150 of FIG. 1.
또한, 도 3의 구성이 디코딩 장치의 구성이라고 한다면, 레이어 1에서, 예측부(300)는 도 2의 예측부(235)에 대응할 수 있고, 필터링부(310)는 도 2의 필터링부(240)에 대응할 수 있다. 레이어 0에서, 예측부(320)는 도 2의 예측부(275)에 대응할 수 있고, 필터링부(330)는 도 2의 필터링부(280)에 대응할 수 있다.In addition, if the configuration of FIG. 3 is a configuration of a decoding apparatus, in layer 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. ) Can be used. In layer 0, the predictor 320 may correspond to the predictor 275 of FIG. 2, and the filter 330 may correspond to the filter 280 of FIG. 2.
이처럼, 스케일러블 비디오 코딩에서는 다른 레이어의 정보를 이용하여 현재 레이어의 정보를 예측하는 인터 레이어 예측이 수행될 수 있다.As described above, in scalable video coding, inter-layer prediction for predicting information of a current layer using information of another layer may be performed.
이하에서는 레이어 1, 즉 현재 레이어에서 수행될 수 있는 인트라 예측에 대하여 도면을 참조하여 구체적으로 설명한다.Hereinafter, intra prediction that may be performed in layer 1, that is, the current layer, will be described in detail with reference to the accompanying drawings.
레이어 1의 현재 픽처는 레이어 0의 참조 픽처의 정보를 이용하여 인터 레이어 예측을 수행할 수 있다. 인트라 예측을 통해서는 현재 레이어 내 복원된 픽셀을 기초로 예측의 대상이 되는 현재 블록(이하, 현재 블록)에 대한 예측 블록을 생성한다. The current picture of the layer 1 may perform interlayer prediction by using information of the reference picture of the layer 0. Intra prediction generates a prediction block for a current block (hereinafter, referred to as a current block) to be predicted based on the reconstructed pixels in the current layer.
도 4는 인트라 예측 모드의 일 예를 도시한 도면이다. 4 is a diagram illustrating an example of an intra prediction mode.
인트라 예측에서 예측 모드는 픽셀값 예측에 사용되는 참조 픽셀들이 위치한 방향 및 예측 방식에 따라 크게 방향성 모드와 비방향성 모드로 구분할 수 있다. 도 4에는 33개의 방향성 예측 모드와 적어도 두 개 이상의 비방향성 모드에 대한 인트라 예측 모드가 도시되어 있다. In intra prediction, a prediction mode may be largely classified into a directional mode and a non-directional mode according to the direction in which reference pixels used for pixel value prediction are located and a prediction method. 4 shows intra prediction modes for 33 directional prediction modes and at least two non-directional modes.
비방향성 모드는 DC 모드와 Planer 모드를 포함할 수 있다. DC 모드에서는 고정된 하나의 값, 예를 들어 주위의 복원된 픽셀값의 평균값을 예측값으로 이용하고, Planer 모드에서는 현재 블록의 수직으로 인접한 픽셀값와 수평으로 인접한 픽셀값들을 이용하여 수직 방향 보간 및 수평 방향 보간을 수행하고, 이들의 평균값을 예측값으로 이용한다.The non-directional mode may include a DC mode and a planer mode. In DC mode, a single fixed value, for example, the average value of surrounding reconstructed pixel values is used as a prediction value, and in Planer mode, vertical interpolation and horizontal use are performed using vertically adjacent pixel values of the current block and horizontally adjacent pixel values. Directional interpolation is performed, and their average value is used as the predicted value.
방향성 모드는 Angular 모드로써 기설정된 방향에 위치한 참조 픽셀과 현재 픽셀 간의 각도로 해당 방향을 나타내는 모드들을 의미하며, 수평 모드 및 수직 모드를 포함할 수 있다. 수직 모드는 현재 블록의 수직으로 인접한 픽셀값을 현재 블록의 예측값으로, 수평 모드는 수평으로 인접한 픽셀값을 현재 블록의 예측값으로 이용한다. The directional mode is an angular mode and refers to modes indicating a corresponding direction by an angle between a reference pixel located in a predetermined direction and a current pixel, and may include a horizontal mode and a vertical mode. In the vertical mode, vertically adjacent pixel values of the current block are used as prediction values of the current block, and in the horizontal mode, horizontally adjacent pixel values are used as prediction values of the current block.
설명의 편의를 위하여, 이러한 예측 모드는 정해진 각도 및 모드 번호를 사용하여 특정할 수 있다. 인트라 예측에서는 참조 픽셀에 필터를 적용한 후 예측 블록을 생성할 수도 있다.For convenience of description, this prediction mode may be specified using a predetermined angle and mode number. In intra prediction, a prediction block may be generated after applying a filter to a reference pixel.
현재 블록에 대한 예측 모드는 그 모드를 나타내는 값 자체로 전송될 수도 있으나, 현재 블록의 예측 모드가 될 가능성이 높은 후보 인트라 예측 모드들에 대한 정보로부터 유도될 수도 있다. The prediction mode for the current block may be transmitted with a value indicating the mode itself, but may be derived from information about candidate intra prediction modes that are likely to be the prediction mode of the current block.
현재 블록에 대한 후보 인트라 예측 모드는 현재 블록에 인접한 주변 블록의 인트라 예측 모드를 이용하여 유도될 수 있으며, MPM(most probable mode)라 칭할 수 있다. MPM은 다수 개 지정이 가능하고, 본 발명에서는 일 예로 세 개의 MPM에 대하여 설명한다.The candidate intra prediction mode for the current block may be derived using the intra prediction mode of the neighboring block adjacent to the current block, and may be referred to as most probable mode (MPM). Multiple MPMs can be specified, and in the present invention, three MPMs will be described as an example.
도 5는 본 발명에 따라 인트라 예측이 수행되는 현재 블록과 주변 블록을 도시한 도면이다. 현재 블록(510)의 MPM을 유도하기 위하여 현재 블록(510)의 왼쪽에 위치하는 왼쪽 주변 블록(520)과 현재 블록(510)의 위쪽에 위치하는 위쪽 주변 블록(530)이 이용될 수 있다. 이 때, 주변 블록(520, 530)의 크기는 서로 같을 수도 있고 다를 수도 있다. 5 is a diagram illustrating a current block and neighboring blocks in which intra prediction is performed according to the present invention. In order to derive the MPM of the current block 510, a left peripheral block 520 positioned to the left of the current block 510 and an upper peripheral block 530 positioned above the current block 510 may be used. In this case, the sizes of the neighboring blocks 520 and 530 may be the same or different.
왼쪽 주변 블록(520)으로부터 유도된 후보 인트라 예측 모드를 왼쪽 예측 모드라 하고, 위쪽 주변 블록(530)으로부터 유도된 후보 인트라 예측 모드를 위쪽 예측 모드라고 하면, MPM은 왼쪽 예측 모드와 위쪽 예측 모드, 왼쪽 예측 모드 및 위쪽 예측 모드와 와 중복되지 않는 1개 이상의 예측 모드로 구성될 수 있다. If the candidate intra prediction mode derived from the left neighboring block 520 is referred to as the left prediction mode, and the candidate intra prediction mode derived from the upper neighboring block 530 is called the upper prediction mode, the MPM is the left prediction mode, the upper prediction mode, It may consist of one or more prediction modes that do not overlap with the left prediction mode and the top prediction mode.
도 6은 주변 블록으로부터 왼쪽 예측 모드와 위쪽 예측 모드를 유도하는 방법을 설명하기 위한 도면이다. 이하, 도 6을 참조하여 왼쪽 주변 블록(520)과 위쪽 주변 블록(530)으로부터 두 개의 후보 인트라 예측 모드를 유도하는 과정을 설명하면 다음과 같다. 6 is a diagram for describing a method of deriving a left prediction mode and an up prediction mode from neighboring blocks. Hereinafter, a process of deriving two candidate intra prediction modes from the left neighboring block 520 and the upper neighboring block 530 will be described with reference to FIG. 6.
만약, 왼쪽 주변 블록(520)이 유효하고, 왼쪽 주변 블록(520)이 인트라 예측이 적용된 블록이면(S601), 왼쪽 주변 블록(520)의 인트라 예측 모드가 왼쪽 예측 모드로 유도된다(S602). If the left neighbor block 520 is valid and the left neighbor block 520 is a block to which intra prediction is applied (S601), the intra prediction mode of the left neighbor block 520 is derived to the left prediction mode (S602).
하지만, 왼쪽 주변 블록(520)의 예측 모드에 대한 정보가 존재하지 않거나 왼쪽 주변 블록(520)이 인트라 예측이 적용된 블록이 아니면, 즉, 두 가지 조건 중 어느 하나라도 만족하지 못하면 왼쪽 예측 모드는 기설정된 특정 예측 모드로 정해질 수 있다. 특정 예측 모드는 DC 모드 일 수 있다(S603).However, if the information about the prediction mode of the left neighboring block 520 does not exist or the left neighboring block 520 is not a block to which intra prediction is applied, that is, if either of the two conditions is not satisfied, the left prediction mode is pre-existed. The specific prediction mode may be set. The specific prediction mode may be a DC mode (S603).
다음으로, 위쪽 주변 블록(530)에 대한 예측 모드를 유도하기 위하여 위쪽 주변 블록(530)이 유효하고, 위쪽 주변 블록(530)이 인트라 예측이 적용된 블록이고, 위쪽 주변 블록(530)이 현재 블록(510)이 속한 코딩 트리 블록(Coding Tree Block) 내에 있는 블록이면(S604), 위쪽 주변 블록(530)에 대한 인트라 예측 모드가 위쪽 예측 모드로 유도된다(S605).Next, in order to derive the prediction mode for the upper neighboring block 530, the upper neighboring block 530 is valid, the upper neighboring block 530 is a block to which intra prediction is applied, and the upper neighboring block 530 is the current block. If the block 510 is in a coding tree block to which it belongs (S604), the intra prediction mode for the upper neighboring block 530 is derived to the upper prediction mode (S605).
반면, 위쪽 주변 블록(530)이 유효하지 않거나, 위쪽 주변 블록(530)의 예측 모드에 대한 정보가 존재하지 않거나, 위쪽 주변 블록(530)이 인트라 예측이 적용된 블록이 아니거나, 위쪽 주변 블록(530)이 현재 블록(510)이 속하는 코딩 트리 블록(Coding Tree Block) 내에 있는 블록이 아니라면(S604), 즉 세 가지 조건 중 어느 하나라도 만족하지 못하면, 위쪽 예측 모드는 기설정된 특정 예측 모드로 유도될 수 있다(S606). 이때 특정 예측 모드는 DC 모드 일 수 있다.On the other hand, the upper neighbor block 530 is not valid, information about the prediction mode of the upper neighbor block 530 does not exist, the upper neighbor block 530 is not a block to which intra prediction is applied, or the upper neighbor block ( If 530 is not a block in a coding tree block to which the current block 510 belongs (S604), that is, if any one of the three conditions is not satisfied, the upper prediction mode leads to a specific preset prediction mode. It may be (S606). In this case, the specific prediction mode may be a DC mode.
이와 같이, 주변 블록(520, 530)으로부터 두 개의 후보 예측 모드가 유도되면, 추가적으로 하나 이상의 예측 모드를 더 유도하여 세 개의 후보 인트라 예측 모드로 구성된 MPM 리스트를 형성할 수 있다.As such, when two candidate prediction modes are derived from the neighboring blocks 520 and 530, one or more prediction modes may be further derived to form an MPM list including three candidate intra prediction modes.
만약, 현재 블록에 대한 인트라 예측 모드가 주변 블록의 인트라 예측 모드로부터 유추될 수 있다면, 즉 MPM 리스트에 있는 후보 인트라 예측 모드 중 어느 하나를 이용할 수 있다면, 현재 블록에 대한 예측 모드는 MPM 리스트에 있는 후보 인트라 모드 중 어느 하나에 대한 정보로 디코딩 및 인코딩 될 수 있다. 반면, 현재 블록에 대한 예측 모드가 주변 블록의 인트라 예측 모드로부터 유추될 수 없다면 현재 블록에 대한 인트라 예측 모드에 대한 정보는 별도로 인코딩 및 디코딩 될 수 있다.If the intra prediction mode for the current block can be inferred from the intra prediction mode of the neighboring block, that is, if any one of the candidate intra prediction modes in the MPM list is available, the prediction mode for the current block is in the MPM list. Information about any one of the candidate intra modes may be decoded and encoded. On the other hand, if the prediction mode for the current block cannot be inferred from the intra prediction mode of the neighboring block, the information about the intra prediction mode for the current block may be separately encoded and decoded.
도 7 및 도 8은 도 6에 따라 유도된 왼쪽 예측 모드와 위쪽 예측 모드를 이용하여 세 개의 후보 인트라 예측 모드로 구성된 MPM 리스트를 형성하는 과정을 설명하기 위한 제어 흐름도이다. 도 7은 왼쪽 예측 모드와 위쪽 예측 모드가 동일한 경우 MPM 리스트를 형성하는 과정이고, 도 8은 왼쪽 예측 모드와 위쪽 예측 모드가 서로 다른 경우 MPM 리스트를 형성하는 과정에 대한 흐름도이다. 7 and 8 are control flowcharts illustrating a process of forming an MPM list including three candidate intra prediction modes using the left prediction mode and the up prediction mode derived according to FIG. 6. FIG. 7 illustrates a process of forming an MPM list when the left prediction mode and the up prediction mode are the same, and FIG. 8 illustrates a process of forming an MPM list when the left prediction mode and the up prediction mode are different.
설명의 편의상, 이하에서는 MPM 리스트 중 첫 번째로 인덱스 되는 후보 인트라 예측 모드를 MPM[0], 두 번째로 인덱스 되는 후보 인트라 예측 모드를 MPM[1], 세 번째로 인덱스 되는 후보 인트라 예측 모드를 MPM[2]로 표시한다.For convenience of explanation, hereinafter, the candidate intra prediction mode indexed first in the MPM list is MPM [0], the second candidate intra prediction mode indexed in MPM [1], and the third candidate intra prediction mode indexed in MPM. Mark as [2].
왼쪽 예측 모드와 위쪽 예측 모드가 같으면(S701), 왼쪽 예측 모드가 DC 모드인지 또는 Planar 모드 인지 여부를 판단한다(S702). If the left prediction mode and the up prediction mode are the same (S701), it is determined whether the left prediction mode is the DC mode or the planar mode (S702).
왼쪽 예측 모드가 DC 모드 또는 Planar 모드이면 MPM[0]은 Planar 모드로 유도되고, MPM[1]은 DC 모드, MPM[2]는 수직 모드로 유도된다(S703). If the left prediction mode is DC mode or planar mode, MPM [0] is derived to planar mode, MPM [1] is derived to DC mode, and MPM [2] is derived to vertical mode (S703).
만약, 왼쪽 예측 모드가 DC 모드 또는 Planar 모드가 아니면(S702), MPM[0]은 왼쪽 예측 모드로 유도되고, MPM[1] 및 MPM[2]는 왼쪽 예측 모드와 인접한 각도를 갖는 예측 모드로 유도될 수 있다. 중 일부는 인접한 각도를 가지면서도 도 4에서 허용되는 예측 모드로 표현이 가능해야 한다. 이러한 점을 고려하여 MPM[1] 및 MPM[2]는 다음과 같이 유도될 수 있다(S704).If the left prediction mode is not the DC mode or the planar mode (S702), MPM [0] is derived to the left prediction mode, and MPM [1] and MPM [2] are the prediction modes having an angle adjacent to the left prediction mode. Can be derived. Some of them should be able to be expressed in the prediction mode allowed by FIG. 4 while having adjacent angles. In consideration of this point, MPM [1] and MPM [2] may be derived as follows (S704).
MPM[1]= 2 + ((왼쪽 예측 모드 + 29) % 32)MPM [1] = 2 + ((Left Prediction Mode + 29)% 32)
MPM[2]= 2 + ((왼쪽 예측 모드 -2 +1) % 32)MPM [2] = 2 + ((Left Prediction Mode -2 +1)% 32)
정리하면, 왼쪽 예측 모드와 위쪽 예측 모드가 같고, 왼쪽 예측 모드가 Planer 모드 또는 DC 모드 이면, MPM[0]은 Planar 모드, MPM[1]은 DC 모드, MPM[2]는 수직 모드로 유도되며, 왼쪽 예측 모드가 Planer 모드 또는 DC 모드가 아니면 MPM[0]는 왼쪽 예측 모드로 유도되고, MPM[1]과 MPM[2]는 왼쪽 예측 모드와 인접한 각도를 갖는 예측 모드로 유도될 수 있다.In summary, if the left prediction mode is the same as the top prediction mode, and the left prediction mode is Planer mode or DC mode, MPM [0] is in Planar mode, MPM [1] is in DC mode, and MPM [2] is in Vertical mode. If the left prediction mode is not a planer mode or a DC mode, MPM [0] may be derived to the left prediction mode, and MPM [1] and MPM [2] may be derived to the prediction mode having an angle adjacent to the left prediction mode.
도 8과 같이, 왼쪽 예측 모드와 위쪽 예측 모드가 다른 경우(S801), MPM[0]은 왼쪽 예측 모드로 유도되고, MPM[1]은 위쪽 예측 모드로 유도된다(S802). As shown in FIG. 8, when the left prediction mode and the upper prediction mode are different (S801), MPM [0] is derived to the left prediction mode, and MPM [1] is derived to the upper prediction mode (S802).
MPM[2]은 다음과 같이 유도될 수 있다. MPM[0]과 MPM[1]이 Planar모드인지를 판단하고(S803), 판단 결과, MPM[0]과 MPM[1]이 모두 Planar 모드가 아니면, MPM[2]은 Planar 모드로 유도된다(S804). MPM [2] can be derived as follows. It is determined whether the MPM [0] and the MPM [1] are in Planar mode (S803), and as a result of the determination, if both the MPM [0] and the MPM [1] are not in the Planar mode, the MPM [2] is induced to the Planar mode ( S804).
반면, MPM[0]과 MPM[1] 중 어느 하나가 Planar 모드이면, MPM[0]과 MPM[1]이 DC 모드인지 여부를 판단한다(S805). On the other hand, if any one of the MPM [0] and MPM [1] is a planar mode, it is determined whether the MPM [0] and MPM [1] is a DC mode (S805).
MPM[0]과 MPM[1] 모두가 DC 모드가 아니면, MPM[2]는 DC 모드로 유도된다(S806).If both MPM [0] and MPM [1] are not in DC mode, MPM [2] is induced to DC mode (S806).
마지막으로, MPM[0]과 MPM[1]이 Planar 모드와 DC 모드로 구성되어 있는 경우, MPM[2]는 수직 모드로 유도될 수 있다(S807). Finally, when the MPM [0] and the MPM [1] are configured in the planar mode and the DC mode, the MPM [2] may be induced in the vertical mode (S807).
정리하면, 왼쪽 예측 모드와 위쪽 예측 모드가 같지 않으면 MPM[0]과 MPM[1]를 왼쪽 예측 모드와 위쪽 예측 모드로 유도하고, Planar 모드, DC 모드, 수직 모드 중 왼쪽 예측 모드 및 위쪽 예측 모드와 동일하지 않는 하나를 MPM[2]로 유도한다. In summary, if the left prediction mode and the upper prediction mode are not the same, MPM [0] and MPM [1] are derived as the left prediction mode and the up prediction mode, and the left prediction mode and the top prediction mode among the planar mode, the DC mode, and the vertical mode. And one not equal to MPM [2].
표 1은 현재 블록의 인트라 예측 모드를 부호화 및 복호화하는 경우, 적용될 수 있는 신택스 요소의 일 예를 개략적으로 나타낸 것이다. 이러한 신택스 요소는 예측 단위(PU) 또는 코딩 단위(CU) 에서 적용될 수 있다. Table 1 schematically illustrates an example of syntax elements that may be applied when encoding and decoding an intra prediction mode of a current block. This syntax element may be applied in a prediction unit (PU) or a coding unit (CU).
표 1
Figure PCTKR2013003936-appb-T000001
Table 1
Figure PCTKR2013003936-appb-T000001
인코딩 장치는 표 1의 예와 같이 현재 블록에 대한 인트라 예측 모드가 인접한 주변 블록의 인트라 예측 모드로부터 유추될 수 있는지 여부를 나타내는 prev_intra_luma_pred_flag 구문 요소를 부호화할 수 있다. The encoding apparatus may encode a prev_intra_luma_pred_flag syntax element indicating whether the intra prediction mode for the current block can be inferred from the intra prediction mode of the neighboring neighboring block, as in the example of Table 1.
만약, 현재 블록(510)의 인트라 예측 모드가 인접한 주변 블록의 인트라 예측 모드로부터 유추되어 prev_intra_luma_pred_flag 가 1이면, 인코딩 장치는 현재 블록(510)의 인트라 예측 모드가 후보 인트라 예측 모드 중 어느 것인지를 나타내는 정보, 즉 MPP 리스트의 인덱스 정보를 mpm_idx 구문 요소를 이용하여 인코딩한다. If the intra prediction mode of the current block 510 is inferred from the intra prediction mode of the neighboring neighboring block and prev_intra_luma_pred_flag is 1, the encoding apparatus may determine whether the intra prediction mode of the current block 510 is one of the candidate intra prediction modes. That is, the index information of the MPP list is encoded using the mpm_idx syntax element.
반면, 현재 블록(510)의 인트라 예측 모드가 인접한 주변 블록의 인트라 예측 모드로부터 유추될 수 없어 prev_intra_luma_pred_flag가 0이면, 인코딩 장치는 35개의 인트라 예측 모드 중 MPM 리스트에 있는 후보 인트라 예측 모드를 제외한 나머지 예측 모드 중에서 현재 블록(510)에 대한 인트라 예측 모드에 대한 정보를 rem_intra_luma_pred_mode 구문요소를 이용하여 인코딩한다.On the other hand, if prev_intra_luma_pred_flag is 0 because the intra prediction mode of the current block 510 cannot be inferred from the intra prediction mode of the neighboring neighboring block, the encoding apparatus predicts the remaining prediction except the candidate intra prediction mode in the MPM list among the 35 intra prediction modes. Information about the intra prediction mode for the current block 510 among the modes is encoded using the rem_intra_luma_pred_mode syntax element.
역으로, 디코딩 장치는 현재 블록(510)이 인트라 예측이 적용된 블록이면, 현재 블록(510)에 대한 후보 인트라 예측 모드를 유도하여 MPM 리스트를 생성한다. 디코딩 장치는 인코딩 장치로부터 수신된 prev_intra_luma_pred_flag를 디코딩하여, prev_intra_luma_pred_flag가 1이면 현재 블록(510)의 인트라 예측 모드가 인접한 주변 블록의 인트라 예측 모드로부터 유추될 수 있는 것으로 판단하고, mpm_idx를 디코딩한다. mpm_idx를 디코딩함으로써 현재 블록(510)의 인트라 예측 모드를 MPM 리스트 중 어느 하나의 예측 모드로 유도할 수 있다. Conversely, if the current block 510 is a block to which intra prediction is applied, the decoding apparatus derives a candidate intra prediction mode for the current block 510 to generate an MPM list. The decoding apparatus decodes prev_intra_luma_pred_flag received from the encoding apparatus. If prev_intra_luma_pred_flag is 1, it determines that the intra prediction mode of the current block 510 can be inferred from the intra prediction mode of the neighboring neighboring block, and decodes mpm_idx. By decoding the mpm_idx, the intra prediction mode of the current block 510 may be derived to the prediction mode of any one of the MPM lists.
만약, prev_intra_luma_pred_flag가 0으로 현재 블록(510)의 인트라 예측 모드를 인접한 주변 블록의 인트라 예측 모드로부터 유추할 수 없는 경우, rem_intra_luma_pred_mode 구문요소를 디코딩하여 현재 블록(510)의 인트라 예측 모드를 유도할 수 있다.If prev_intra_luma_pred_flag is 0 and the intra prediction mode of the current block 510 cannot be inferred from the intra prediction mode of the adjacent neighboring block, the intra prediction mode of the current block 510 may be decoded by decoding the rem_intra_luma_pred_mode syntax element. .
예측부는 유도된 현재 블록에 대한 인트라 예측 모드를 이용하여 현재 블록의 예측값을 생성한다. 인트라 예측 모드로 예측된 현재 블록의 예측값은 TU 또는 PU로 생성될 수 있다. The prediction unit generates a prediction value of the current block by using an intra prediction mode for the derived current block. The prediction value of the current block predicted in the intra prediction mode may be generated as a TU or a PU.
현재 블록의 좌측에 인접한 샘플 및 현재 블록의 상측에 인접한 샘플들을 참조 샘플이라고 칭하고, 참조 샘플들을 이용하여 현재 블록의 예측값을 생성한다. 현재 블록의 좌측으로 인접한 샘플 또는 현재 블록의 상측으로 인접한 샘플이 가용하지 않다면, 가용하지 않은 샘플들은 기설정된 샘플의 값으로 대체될 수 있다. The samples adjacent to the left side of the current block and the samples adjacent to the upper side of the current block are called reference samples, and reference values are used to generate prediction values of the current block. If a sample adjacent to the left of the current block or a sample adjacent to the upper side of the current block is not available, the samples that are not available may be replaced with the value of the predetermined sample.
만약, 모든 참조 샘플들이 가용하지 않다면 참조 샘플은 기설정된 하나의 값, 예를 들어 영상이 가질 수 있는 샘플값의 중간값으로 대체될 수 있다. If all reference samples are not available, the reference sample may be replaced with a predetermined value, for example, a median value of sample values that the image may have.
한편, 현재 블록의 좌측 최하단의 샘플이 가용하지 않으면 참조 샘플들을 일정 방향에 따라 검색하여 가용한 것으로 검색된 샘플의 샘플값을 좌측 최하단의 샘플값으로 대체한다. On the other hand, if the lower leftmost sample of the current block is not available, the reference samples are searched in a predetermined direction, and the sample value of the retrieved sample that is available is replaced with the left lowermost sample value.
또한, 현재 블록의 좌측에 인접한 샘플 중 가용하지 않은 샘플이 검색되면 가용하지 않은 샘플의 인접한, 예를 들어 바로 아래에 존재하는 샘플의 샘플값을 참조 샘플값으로 대체하고, 상측으로 인접한 샘플 중 가용하지 않은 샘플이 검색되면 가용하지 않은 샘플의 오른쪽에 존재하는 샘플의 샘플값을 참조 샘플값으로 대체할 수 있다.In addition, if a sample that is not available among the samples adjacent to the left of the current block is found, the sample value of the adjacent sample, which is immediately below the sample that is not available, is replaced with a reference sample value, and the available sample among the above adjacent samples is available. If a sample that has not been found is found, the sample value of the sample existing on the right side of the sample that is not available can be replaced with the reference sample value.
현재 블록에 인접한 샘플값들은 필터링을 거칠 수 있다. 필터링 여부 및 필터링 계수는 변환 블록의 크기 및 인트라 예측 모드에 따라 상이하게 설정될 수 있다. 필터링을 통하여 참조 샘플값과 인트라 예측이 적용된 후 생성된 예측값에 존재하는 단차가 스무딩되면 블록 경계에서 발생할 수 있는 불연속성이 감소될 수 있다.Sample values adjacent to the current block may be filtered. Whether to filter and the filtering coefficient may be set differently according to the size of the transform block and the intra prediction mode. When the step difference existing in the predicted value generated after the reference sample value and the intra prediction is applied through filtering, discontinuity that may occur at the block boundary may be reduced.
현재 블록의 인트라 예측 모드가 비방향성 모드인 Planar 모드이면, 현재 블록에 대한 예측값은 복 수개의 참조 샘플값들의 선형 보간값으로 구해질 수 있다.  If the intra prediction mode of the current block is a planar mode that is a non-directional mode, the prediction value for the current block may be obtained as a linear interpolation value of a plurality of reference sample values.
도 9는 현재 블록(1000)에 대한 예측값을 설명하기 위한 도면이다. 현재 블록(1000)의 크기를 NxN (N은 정수)이라고 할 경우, 설명의 편의 상, 블록의 가장 좌상단 샘플의 위치를 (0,0), 좌하단 샘플의 위치를 (0, N-1), 우상단 샘플의 위치를 (N-1, 0), 우하단 샘플의 위치를 (N-1, N-1)로 표현할 수 있다. 9 is a diagram for describing a prediction value for the current block 1000. When the size of the current block 1000 is NxN (N is an integer), for convenience of explanation, the position of the upper left sample of the block is (0,0) and the position of the lower left sample is (0, N-1). , The position of the upper right sample can be expressed as (N-1, 0) and the position of the lower right sample as (N-1, N-1).
생성하고자 는 예측 샘플의 위치를 (x, y)라고 하면, 예측 샘플과 수직 방향으로 인접한 참조 샘플 a의 위치는 (x, -1)이고, 예측 샘플과 수평 방향으로 인접한 참조 샘플 b의 위치는 (-1, y)이다. 추가적으로 (N, -1)에 위치한 참조 샘플 c와 (-1, N)에 위치한 참조 샘플 d를 이용하여 예측 샘플의 예측값(P(x, y))은 수식 1에 의하여 연산될 수 있다. 참조 샘플 a의 샘플값은 a(x, -1), 참조 샘플 b의 샘플값은 b(-1, y), 참조 샘플 c의 샘플값은 c(N, -1), 참조 샘플 d의 샘플값은 d(-1, N)로 나타낸다.If the position of the prediction sample to be generated is (x, y), the position of the reference sample a adjacent to the prediction sample in the vertical direction is (x, -1), and the position of the reference sample b adjacent to the prediction sample in the horizontal direction is (-1, y). In addition, the prediction value P (x, y) of the prediction sample may be calculated by Equation 1 using the reference sample c located at (N, -1) and the reference sample d located at (-1, N). The sample value of reference sample a is a (x, -1), the sample value of reference sample b is b (-1, y), the sample value of reference sample c is c (N, -1), the sample value of reference sample d The value is represented by d (-1, N).
<수식 1> <Equation 1>
Figure PCTKR2013003936-appb-I000001
Figure PCTKR2013003936-appb-I000001
현재 블록의 인트라 예측 모드가 DC 모드이면, 현재 블록에 대한 예측값은 참조 샘플값들의 평균값을 이용하여 생성될 수 있다. 예측 블록의 경계 영역, 즉 예측 블록의 좌측 경계와 우측 경계는 필터링될 수 있다.If the intra prediction mode of the current block is the DC mode, the prediction value for the current block may be generated using the average value of the reference sample values. The boundary region of the prediction block, that is, the left boundary and the right boundary of the prediction block may be filtered.
현재 블록의 인트라 예측 모드가 방향성 모드이면, 예측 모드의 방향에 존재하는 참조 샘플값을 이용하여 예측값을 생성할 수 있다. 예측 모드의 방향에 따라 참조 샘플들이 늘어날 수 있다. 또한 예측 모드가 수평 또는 수직 모드인 경우 참조 샘플과 인접한 경계에 위치하는 현재 블록의 예측값은 참조 샘플과 기설정된 위치에 존재하는 특정 샘플값들의 산술적 연산을 통하여 생성될 수 있다. 상기 산술적 연산은 참조 샘플과 인접한 경계 영역에 필터링을 적용하는 효과가 있으며, 이로 인하여 현재 블록과 이웃한 블록 간의 불연속성을 감소시킬 수 있다. If the intra prediction mode of the current block is the directional mode, the prediction value may be generated using the reference sample value present in the direction of the prediction mode. Reference samples may be stretched according to the direction of the prediction mode. In addition, when the prediction mode is a horizontal or vertical mode, the prediction value of the current block located at a boundary adjacent to the reference sample may be generated through arithmetic operation of specific sample values existing at a predetermined position with the reference sample. The arithmetic operation has an effect of applying filtering to the boundary region adjacent to the reference sample, thereby reducing the discontinuity between the current block and the neighboring block.
복수의 레이어를 포함하는 영상의 특성 상, 참조 레이어와 현재 레이어 간에는 강한 연관성(correlation)이 존재하고, 이러한 연관성을 이용하여 현재 블록에 대한 예측을 수행하면 영상의 부호화률 및 복호화률을 증가시킬 수 있다.Due to the characteristics of an image including a plurality of layers, there is a strong correlation between the reference layer and the current layer, and if the prediction of the current block is performed using this association, the coding rate and the decoding rate of the image may be increased. have.
상술한 바와 같이, 디코딩 장치 및 인코딩 장치는 현재 레이어 내 현재 블록의 인트라 예측을 수행할 때 현재 레이어 내의 예측 모드 정보를 이용하여 예측값을 생성할 수도 있지만 다른 레이어의 정보를 참조하여 현재 블록에 대한 예측 블록을 생성할 수도 있다. 본 발명의 일 실시예는 참조 레이어의 텍스트 정보를 이용하여 현재 블록에 대한 예측을 수행한다. As described above, the decoding device and the encoding device may generate a prediction value using the prediction mode information in the current layer when performing the intra prediction of the current block in the current layer, but predict the current block by referring to information of another layer. You can also create blocks. An embodiment of the present invention performs prediction on the current block by using text information of the reference layer.
도 10은 본 발명의 일 실시예에 따라 현재 블록과 참조 블록을 도시한 도면이다. 설명의 편의를 위하여 현재 픽처 (1000)의 현재 블록(1010)에 대응하는 참조 픽처(1001)의 해당 부분을 참조 블록(1011)으로 나타낸다.10 illustrates a current block and a reference block according to an embodiment of the present invention. For convenience of explanation, a corresponding part of the reference picture 1001 corresponding to the current block 1010 of the current picture 1000 is shown as a reference block 1011.
참조 블록(1011)은 현재 픽처(1000)와 참조 픽처(1001)의 해상도 비율에 따라 그 위치가 정해질 수 있다. 즉, 현재 블록(1010)의 위치를 특정하는 좌표는 해상도 비율에 따라 참조 픽처(1001)의 특정 좌표에 대응할 수 있다. 이런 참조 블록(1011)은 하나의 예측 단위를 포함할 수도 있고, 복수의 예측 단위를 포함할 수도 있다. The reference block 1011 may be positioned in accordance with a resolution ratio between the current picture 1000 and the reference picture 1001. That is, the coordinates specifying the position of the current block 1010 may correspond to the specific coordinates of the reference picture 1001 according to the resolution ratio. This reference block 1011 may include one prediction unit or may include a plurality of prediction units.
참조 블록(1011)의 텍스처는 현재 블록(1010)에 대한 예측 값을 생성하는데 사용될 수 있다. The texture of reference block 1011 may be used to generate predictive values for current block 1010.
도 11은 본 발명의 일 실시예에 따라 현재 블록의 예측 블록을 생성하기 위한 복수의 예측 블록을 도시한 도면이다. 본 실시예에 따르면 현재 블록의 예측 블록은 서로 다른 레이어를 기반으로 하는 두 개의 블록을 이용하여 생성될 수 있다. 11 illustrates a plurality of prediction blocks for generating a prediction block of a current block according to an embodiment of the present invention. According to the present embodiment, the prediction block of the current block may be generated using two blocks based on different layers.
제1 블록(1110, A)은 도 10의 현재 블록(1010)에 대응하는 참조 블록(1011)을 현재 블록(1010)의 크기에 맞도록 업샘플링한 텍스처로 구성된 블록이고 제2 블록(1120, B)은 앞서 설명한 현재 블록의 인트라 예측 모드를 통하여 유도된 예측값으로 구성된 블록을 나타낸다.The first blocks 1110 and A are blocks composed of textures of upsampled reference blocks 1011 corresponding to the current blocks 1010 of FIG. 10 to fit the size of the current blocks 1010. B) represents a block composed of prediction values derived through the intra prediction mode of the current block described above.
현재 블록의 예측 블록(1130)은 제1 블록(1110) 및 제2 블록(1120)을 통하여 생성될 수 있다. The prediction block 1130 of the current block may be generated through the first block 1110 and the second block 1120.
제1 블록(1110), 제2 블록(1120) 및 예측 블록(1130)의 크기를 NxN (N은 정수The size of the first block 1110, the second block 1120, and the prediction block 1130 is N × N where N is an integer.
)이라고 할 경우, 설명의 편의 상, 블록의 가장 좌상단 샘플의 위치를 (0,0), 좌하단 샘플의 위치를 (0, N-1), 우상단 샘플의 위치를 (N-1, 0), 우하단 샘플의 위치를 (N-1, N-1)로 표현할 수 있다. ), The position of the upper left sample of the block is (0,0), the position of the lower left sample is (0, N-1), and the position of the upper right sample is (N-1, 0). , The position of the lower right sample can be expressed as (N-1, N-1).
또한, 제1 블록(1110)의 (i,j) 위치의 샘플값을 A(i,j)로, 제2 블록(1120)의 (i,j)의 샘플값을 B(i,j)로 표현한다. i 및 j는 0부터 N-1의 정수값을 가질 수 있다. 제1 블록(1110)의 (i,j) 위치 및 제2 블록(1120)의 (i,j)위치에 대응하는 예측 블록(1130)의 (i,j) 위치의 샘플값은 P(i,j)로 나타낼 수 있다. 샘플값 P(i,j)은 샘플값 A(i,j) 및 B(i,j)를 조합하여 생성될 수 있고, 생성된 샘플값 P(i,j)이 현재 블록(1010)의 예측값이 된다. Further, the sample value at position (i, j) of the first block 1110 is A (i, j), and the sample value at (i, j) of the second block 1120 is B (i, j). Express. i and j may have an integer value from 0 to N-1. The sample value of the position (i, j) of the prediction block 1130 corresponding to the position (i, j) of the first block 1110 and the position (i, j) of the second block 1120 is P (i, j). The sample value P (i, j) may be generated by combining the sample values A (i, j) and B (i, j), and the generated sample value P (i, j) is the predicted value of the current block 1010. Becomes
도 12는 본 발명의 일 실시예에 따라 현재 블록의 예측 블록을 생성하는 방법을 설명하는 제어 흐름도이다. 12 is a control flowchart illustrating a method of generating a prediction block of a current block according to an embodiment of the present invention.
도시된 바와 같이, 예측부는 현재 블록(1010)에 대응하는 참조 픽처(1001)의 참조 블록(1011)의 복원값을 업샘플링한 값으로 구성된 제1 블록(1110)을 생성한다(S1201).As illustrated, the prediction unit generates a first block 1110 configured to upsample the reconstructed value of the reference block 1011 of the reference picture 1001 corresponding to the current block 1010 (S1201).
제1 블록(1110)은 현재 블록(1010)에 대한 예측을 수행하기 전에 생성되어 메모리 등에 저장될 수도 있고, 현재 블록(1010)에 대한 예측을 수행할 때 예측 블록(1130)의 연산을 위하여 실시간으로 생성될 수도 있다. The first block 1110 may be generated before the prediction of the current block 1010 and stored in a memory or the like, or may be executed in real time for the calculation of the prediction block 1130 when the prediction of the current block 1010 is performed. It may be generated as.
예측부는 현재 블록(1010)의 인트라 예측 모드에 기초하여 유도된 예측값으로 구성된 제2 블록(1120)을 생성한다(S1202). 현재 블록(1010)에 대한 인트라 예측 모드는 도 4 내지 도 8에 대한 설명과 같이 유도될 수 있으며, 유도된 인트라 예측 모드와 이미 복원된 참조 샘플값들을 이용하여 제2 블록(1120)이 생성될 수 있다. The prediction unit generates a second block 1120 composed of prediction values derived based on the intra prediction mode of the current block 1010 (S1202). The intra prediction mode for the current block 1010 may be derived as described with reference to FIGS. 4 to 8, and the second block 1120 is generated using the derived intra prediction mode and reference sample values that are already reconstructed. Can be.
제1 블록(1110) 및 제2 블록(1120)의 생성 단계는 도시되어 있는 순서에 한정되지 않으며, 상기 두 개의 블록(1110, 1120)은 순차적으로 또는 동시에 생성될 수 있다. The generating steps of the first block 1110 and the second block 1120 are not limited to the illustrated order, and the two blocks 1110 and 1120 may be generated sequentially or simultaneously.
그런 후, 예측부는 제1 블록(1110) 및 제2 블록(1120)의 샘플값을 조합하여 현재 블록(1010)의 예측 블록(1130)을 생성한다(S1203). 본 발명에서 조합은 제1 블록(1110)의 샘플값 및 제2 블록(1120)의 샘플값을 이용하여 다양한 연산을 수행하는 것을 의미할 수 있다.Thereafter, the prediction unit combines the sample values of the first block 1110 and the second block 1120 to generate the prediction block 1130 of the current block 1010 (S1203). In the present invention, the combination may mean performing various operations by using the sample value of the first block 1110 and the sample value of the second block 1120.
본 발명의 일 실시예에 따르면 예측 블록(1130)의 샘플값 P(i,j)는 수식 2와 같이 연산될 수 있다.According to an embodiment of the present invention, the sample value P (i, j) of the prediction block 1130 may be calculated as Equation 2.
<수식 2><Formula 2>
Figure PCTKR2013003936-appb-I000002
Figure PCTKR2013003936-appb-I000002
수식 2에 따르면 샘플값 P(i,j)는 A(i,j) 및 B(i,j)의 산술 평균값에 해당한다. 또는, 수식 2은 수식 3과 같이 변형될 수도 있다. According to Equation 2, the sample value P (i, j) corresponds to the arithmetic mean value of A (i, j) and B (i, j). Alternatively, Equation 2 may be modified as in Equation 3.
<수식 3><Equation 3>
Figure PCTKR2013003936-appb-I000003
Figure PCTKR2013003936-appb-I000003
수식 3는 수식 2에 소정의 오프셋(offset) 1이 추가된 것으로, 수식 2에 따라 정수 연산할 때 발생할 수 있는 오차를 보상할 수 있다. Equation 3 adds a predetermined offset 1 to Equation 2, and may compensate for an error that may occur when performing an integer operation according to Equation 2.
본 발명의 다른 실시예에 따르면, 예측 블록(1130)의 샘플값 P(i,j)는 수식 4와 같이 연산될 수 있다.According to another embodiment of the present invention, the sample value P (i, j) of the prediction block 1130 may be calculated as Equation 4.
<수식 4><Equation 4>
Figure PCTKR2013003936-appb-I000004
Figure PCTKR2013003936-appb-I000004
WA와 WB은 샘플값 A(i,j) 및 샘플값 B(i,j)에 대한 가중치를 나타내며, 이하에서는 설명의 편의 상, 제1 블록 또는 제1 블록의 샘플값에 대한 가중치를 제1 가중치로, 제2 블록 또는 제2 블록의 샘플값에 대한 가중치를 제2가중치로 표현한다.W A and W B represent weights for sample values A (i, j) and sample values B (i, j), and for convenience of description, weights for sample values of the first block or the first block will be described below. As the first weight, a weight for a second block or a sample value of the second block is expressed as a second weight.
예측 블록(1130)은 제1 블록(1110)과 제2 블록(1120)의 가중 평균값으로 생성되며, 제1 가중치와 제2 가중치는 동일한 값을 가질 수도 있고, 서로 상이한 값을 가질 수도 있다. 제1 가중치가 제2 가중치보다 클 수도 있고, 반대로 제2 가중치가 제1 가중치보다 클 수도 있다. The prediction block 1130 is generated as a weighted average value of the first block 1110 and the second block 1120, and the first and second weights may have the same value or different values. The first weight may be greater than the second weight, and conversely, the second weight may be greater than the first weight.
가중치는 정수 연산이 가능하도록 설정될 수 있다. 예를 들어 수식 4에서 제1 가중치(WA)는 3으로 제2 가중치(WB)는 1로 설정되어 수식 5와 같이 표현될 수 있다.The weight may be set to enable integer arithmetic. For example, in Equation 4, the first weight W A is set to 3 and the second weight W B is set to 1, which is represented by Equation 5.
<수식 5><Equation 5>
Figure PCTKR2013003936-appb-I000005
Figure PCTKR2013003936-appb-I000005
또는, 수식 4의 제1 가중치(WA)는 7로 제2 가중치(WB)는 1로 설정되어 수식 6과 같이 표현될 수도 있다.Alternatively, the first weight W A of Equation 4 may be set to 7 and the second weight W B may be set to 1 to be expressed as Equation 6.
<수식 6><Equation 6>
Figure PCTKR2013003936-appb-I000006
Figure PCTKR2013003936-appb-I000006
가중치는 상술한 수식 5 및 수식 6에 포함되어 있는 예시 이외의 다른 값을 가질 수도 있고, 정수 연산과 무관하게 설정될 수도 있다.The weight may have a value other than the examples included in Equations 5 and 6 described above, or may be set regardless of integer arithmetic.
가중치에 대한 정보는 부호화되어 디코딩 장치로 전송될 수도 있고, 인코딩 장치 및 디코딩 장치 상호 간의 기설정된 값으로 설정되어 시그널링 되지 않을 수도 있다.The information about the weight may be encoded and transmitted to the decoding apparatus, or may be set to a predetermined value between the encoding apparatus and the decoding apparatus and may not be signaled.
한편, 본 발명의 다른 실시예에 따르면, 수식 4에 추가적으로 기설정된 오프셋이 추가될 수도 있다. 오프셋은 정수 연산으로 발생하는 오차를 줄이기 위하여 추가되며, 오프셋으로 인하여 반올림 또는 반내림하는 효과가 있다. 오프셋이 추가된 수식 4는 수식 7과 같이 표현될 수 있다.Meanwhile, according to another embodiment of the present invention, a preset offset may be added in addition to Equation 4. The offset is added to reduce the error caused by the integer operation, and the offset has the effect of rounding up or down. Equation 4 to which the offset is added may be expressed as Equation 7.
<수식 7><Equation 7>
Figure PCTKR2013003936-appb-I000007
Figure PCTKR2013003936-appb-I000007
수식 5에 오프셋이 더해지면 수식 8과 같이 표현된다.When the offset is added to Equation 5, it is expressed as Equation 8.
<수식 8><Equation 8>
Figure PCTKR2013003936-appb-I000008
Figure PCTKR2013003936-appb-I000008
수식 8에서 오프셋이 2가 되면, 이는 수식 5에 따른 연산 결과에 반올림을 수행한 효과를 줄 수 있다. When the offset becomes 2 in Equation 8, this may have an effect of rounding the result of the calculation according to Equation 5.
오프셋에 대한 정보는 부호화되어 디코딩 장치로 전송될 수도 있고, 인코딩 장치 및 디코딩 장치 상호 간의 기설정된 값으로 설정되어 시그널링 되지 않을 수도 있다.The information about the offset may be encoded and transmitted to the decoding apparatus, or may be set to a predetermined value between the encoding apparatus and the decoding apparatus and may not be signaled.
도 13은 본 발명의 일 실시예에 따라 현재 블록의 예측 블록을 생성하는 벙법을 설명하는 제어 흐름도이다. 13 is a control flowchart illustrating a method of generating a prediction block of a current block according to an embodiment of the present invention.
도 12의 단계 S1201 및 단계 S1202와 같이, 우선 예측부는 현재 블록(1010)에 대응하는 참조 픽처(1001)의 참조 블록(1011)의 복원값을 업샘플링한 값으로 구성된 제1 블록을 생성하고(S1301), 현재 블록(1010)의 인트라 예측 모드에 기초하여 유도된 예측값으로 구성된 제2 블록(1120)을 생성한다(S1302). As in steps S1201 and S1202 of FIG. 12, first, the prediction unit generates a first block including values of upsampled reconstruction values of the reference block 1011 of the reference picture 1001 corresponding to the current block 1010 ( In operation S1301, a second block 1120 including prediction values derived based on the intra prediction mode of the current block 1010 is generated in operation S1302.
현재 블록(1010)에 대한 인트라 예측 모드는 도 4 내지 도 8에 대한 설명과 같이 유도될 수 있으며, 유도된 인트라 예측 모드 및 이미 복원된 참조 샘플값들을 이용하여 제2 블록(1120)이 생성될 수 있다. The intra prediction mode for the current block 1010 may be derived as described with reference to FIGS. 4 to 8, and the second block 1120 is generated using the derived intra prediction mode and the already reconstructed reference sample values. Can be.
예측 블록(1130)의 샘플값 P(i,j)는 수식 2와 같이 제1 블록(1110)의 샘플값 및 제2 블록(1120)의 샘플값의 산술 평균을 통하여 연산될 수 있고, 또는 수식 4와 같이 제1 블록(1110)의 샘플값 및 제2 블록(1120)의 샘플값의 가중 평균을 통하여 연산될 수 있다(S1303). The sample value P (i, j) of the prediction block 1130 may be calculated through an arithmetic mean of the sample value of the first block 1110 and the sample value of the second block 1120, as shown in Equation 2, or In operation S1303, a weighted average of the sample value of the first block 1110 and the sample value of the second block 1120 may be calculated as shown in FIG. 4.
정수 연산에 대한 오차를 보상하기 위하여 수식 3 및 수식 7과 같이 오프셋이 추가될 수도 있다.The offset may be added as in Equation 3 and Equation 7 to compensate for an error in integer arithmetic.
본 발명에 따르면 현재 블록(1010)의 예측 블록(1130)은 참조 블록(1011)의 텍스처와 현재 블록의 인트라 예측 모드로부터 유도된 예측값의 산술 평균 또는 가중치 평균 등으로 연산될 수 있고, 정수 연산에 따른 오차를 보상하기 위하여 반올림 효과를 주는 오프셋이 더해질 수도 있다.According to the present invention, the prediction block 1130 of the current block 1010 may be calculated using an arithmetic mean or weighted average of the texture of the reference block 1011 and the prediction value derived from the intra prediction mode of the current block, and the like. Offsets with rounding effects may be added to compensate for errors.
본 발명의 또 다른 실시예에 따르면, 예측 블록(1130)의 샘플값 P(i,j)를 연산할 때 샘플의 위치에 따라 적응적으로 A(i,j)와 B(i,j)를 조합할 수 있다. According to another embodiment of the present invention, when calculating the sample value P (i, j) of the prediction block 1130, adaptively select A (i, j) and B (i, j) according to the position of the sample. Can be combined.
상술한 바와 같이, 인트라 예측 모드를 통하여 유도된 도 11의 제2 블록(1120)의 예측값은 도 10의 현재 블록(1010)의 좌측 및 우측에 인접한 샘플값을 참조 샘플로 이용하여 유도된다. 따라서, 현재 블록(1010)의 좌상단쪽에 위치한 샘플값이 우하단쪽 위치에 존재하는 샘플값보다 예측 정확도가 더 높을 수 있다. As described above, the predicted value of the second block 1120 of FIG. 11 derived through the intra prediction mode is derived using the sample values adjacent to the left and right sides of the current block 1010 of FIG. 10 as reference samples. Accordingly, the sample value located at the upper left end of the current block 1010 may have higher prediction accuracy than the sample value present at the lower right end.
반면, 도 11의 제1 블록(1110)은 도 10의 참조 블록(1011)을 업샘플링한 값으로 구성되므로 샘플의 위치에 따라 예측 정확도가 변경되지 않는다. On the other hand, since the first block 1110 of FIG. 11 is configured by up-sampling the reference block 1011 of FIG. 10, the prediction accuracy does not change according to the position of the sample.
본 실시예에서는 이러한 점을 고려하여 예측 블록(1130)의 샘플의 위치에 따라, 예를 들어 특정 방향에 따라 제1 블록(1110) 및 제2 블록(1120)에 대한 가중치를 달리하여 샘플값 P(i,j)를 연산할 수 있다. 예측 블록(1130)의 샘플값을 연산할 때 사용될 수 있는 수식 4 및 수식 7의 제1 가중치와 제2 가중치는 예측 블록(1130)의 샘플의 위치에 따라 달라질 수 있다.In this embodiment, in consideration of this point, the weights of the first block 1110 and the second block 1120 are changed according to the position of the sample of the prediction block 1130, for example, according to a specific direction. (i, j) can be calculated. The first and second weights of Equations 4 and 7 that may be used when calculating the sample value of the prediction block 1130 may vary according to the positions of the samples of the prediction block 1130.
구체적으로, 좌상단에서 우하단 방향으로 갈수록 제2 블록(1120)에 대한 가중치 보다 제1 블록(1110)에 대한 가중치를 더 크게 설정할 수 있다. 즉, 예측 방향을 반영하여 현재 블록의 좌상단에서 우하단 방향으로 갈수록 제2 가중치에 대한 제1 가중치의 비율(제1 가중치/제2 가중치)을 증가시킬 수 있다. In detail, the weight of the first block 1110 may be set larger than the weight of the second block 1120 from the upper left end to the lower right end. That is, the ratio of the first weight to the second weight (first weight / second weight) may be increased from the upper left end to the lower right direction of the current block in consideration of the prediction direction.
도 14는 본 실시예에 따라 서브 블록으로 구획된 예측 블록을 도시한 도면이다. 도시된 바와 같이, 예측 블록은 네 개의 서브 블록(1401, 1402, 1403, 1404)으로 구획될 수 있으며, 각 구획에 위치하는 샘플값 P(i,j)의 연산 시 제1 블록(1110) 및 제2 블록(1120)의 샘플값에 대한 가중치는 서로 상이하게 설정될 수 있다. 14 illustrates a prediction block partitioned into subblocks according to the present embodiment. As shown, the prediction block may be partitioned into four subblocks 1401, 1402, 1403, and 1404, and the first block 1110 and the calculation of the sample value P (i, j) located in each partition are performed. The weights for the sample values of the second block 1120 may be set differently from each other.
예측 블록을 네 개로 구분하였을 때 좌상단에 위치하는 제1 서브 블록(1401)에 대응하는 제2 블록(1120)의 샘플값은 예측 정확도가 높지만, 우하단에 위치하는 제4 서브 블록(1404)에 대응하는 제2 블록(1120)의 샘플값의 예측 정확도는 제1 서브 블록(1401)에 대응하는 제2 블록(1120)의 샘플값 보다 상대적으로 낮다. When the prediction blocks are divided into four, the sample value of the second block 1120 corresponding to the first sub block 1401 located at the upper left is high in the prediction accuracy, but is equal to the fourth sub block 1404 located at the lower right. The prediction accuracy of the sample value of the corresponding second block 1120 is relatively lower than the sample value of the second block 1120 corresponding to the first sub block 1401.
이러한 예측 정확도를 반영하여 제4 서브 블록(1404)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(제1 가중치/제2 가중치)은 제1 서브 블록(1401)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(제1 가중치/제2 가중치)보다 높게 설정될 수 있다. Reflecting this prediction accuracy, the ratio (first weight / second weight) of the first weight to the second weight applied to the fourth sub block 1404 is applied to the second weight applied to the first sub block 1401. It may be set higher than the ratio (first weight / second weight) of the first weight.
한편, 제2 서브 블록(1402) 및 제3 서브 블록(1403)에 대응하는 제2 블록(1120) 샘플값의 예측 정확도는 제1 서브 블록(1401)에 대응하는 제2 블록(1120) 샘플값의 예측 정확도 보다 낮고 제4 서브 블록(1404)에 대응하는 제2 블록(1120) 샘플값의 예측 정확도 보다 높다. Meanwhile, the prediction accuracy of the second block 1120 sample values corresponding to the second sub block 1402 and the third sub block 1403 is a sample value of the second block 1120 corresponding to the first sub block 1401. It is lower than the prediction accuracy of and higher than the prediction accuracy of the sample value of the second block 1120 corresponding to the fourth sub-block 1404.
따라서, 제2 서브 블록(1402) 및 제3 서브 블록(1403)의 샘플값 P(i,j)을 연산할 적용되는 제2 가중치에 대한 제1 가중치의 비율(제1 가중치/제2 가중치)은 제1 서브 블록(1401)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(제1 가중치/제2 가중치)보다 높게, 제4 서브 블록(1404)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(제1 가중치/제2 가중치)보다는 낮게 설정될 수 있다.Therefore, the ratio of the first weight to the second weight applied to calculate the sample values P (i, j) of the second subblock 1402 and the third subblock 1403 (first weight / second weight). Is higher than the ratio of the first weight to the second weight applied to the first sub-block 1401 (first weight / second weight), the first to the second weight applied to the fourth sub-block 1404. It may be set lower than the ratio of the weight (first weight / second weight).
제2 블록(1120)의 예측 정확도를 반영하여, 예측 블록의 샘플값 P(i,j)는 수식 9와 같이 표현될 수 있다. Reflecting the prediction accuracy of the second block 1120, the sample value P (i, j) of the prediction block may be expressed as Equation 9.
<수식 9><Equation 9>
Figure PCTKR2013003936-appb-I000009
Figure PCTKR2013003936-appb-I000009
i 및 j가 N/2 보다 작은 것은 도 14의 제1 서브 블록(1401)을 의미하고, i 및 j가 N/2 보다 같거나 큰 것은 제4 서브 블록(1404)을 의미하고, 나머지 경우는 제2 서브 블록(1402)과 제3 서브 블록(1403)을 의미한다. i and j less than N / 2 means the first sub-block 1401 of FIG. 14, i and j means greater than or equal to N / 2 means the fourth sub-block 1404, and in other cases Means a second sub block 1402 and a third sub block 1403.
W1은 제1 서브 블록(1401)에 적용되는 제1 가중치, W2는 제1 서브 블록(1401)에 적용되는 제2 가중치를 의미하고, W3은 제4 서브 블록(1404)에 적용되는 제1 가중치, W4는 제4 서브 블록(1404)에 적용되는 제2 가중치를 의미하고, W5는 제2 서브 블록(1402)과 제3 서브 블록(1403)에 적용되는 제1 가중치, W6은 제2 서브 블록(1402)과 제3 서브 블록(1403)에 적용되는 제2 가중치를 의미한다. W 1 is the first weight applied to the first sub-block 1401, W 2 is the second weight applied to the first sub-block 1401, W 3 is applied to the fourth sub-block 1404 The first weight, W 4 means the second weight applied to the fourth sub-block 1404, W 5 is the first weight applied to the second sub-block 1402 and the third sub-block 1403, W 6 denotes a second weight applied to the second sub block 1402 and the third sub block 1403.
서브 블록에 적용되는 제1 가중치 및 제2 가중치는 동일한 값을 가질 수도 있지만, 예측 방향에 따라 상이한 값으로 설정될 수 있다. W1와 W2는 동일한 값일 수도 있고, W1이 W2보다 더 클 수도 있다. W3과 W4는 동일한 값일 수도 있고, W3이 W4보다 더 클 수도 있다. W5와 W6는 동일한 값일 수도 있고, W5가 W6보다 더 큰 값일 수도 있다.The first weight and the second weight applied to the sub-block may have the same value, but may be set to different values according to the prediction direction. W 1 and W 2 may be the same value, or W 1 may be larger than W 2 . W 3 and W 4 may be the same value, or W 3 may be larger than W 4 . W 5 and W 6 may be the same value, or W 5 may be greater than W 6 .
또한, 제2 블록(1120)의 예측 정확도를 반영하여 제2 가중치에 대한 제1 가중치의 비율은 서브 블록에 따라 상이하게 설정될 수 있다. In addition, the ratio of the first weight to the second weight may be set differently according to the sub-block, reflecting the prediction accuracy of the second block 1120.
제1 서브 블록(1401)에 적용되는 W1/ W2와, 제2 서브 블록(1402)과 제3 서브 블록(1403)에 적용되는 W5/W6은 서로 다를 수 있으며, 예측 방향에 따라 제2 블록(1120)에 대한 예측 정확도가 감소되는 성향을 반영하여 W5/W6을 W1/W2보다 높게 설정할 수 있다.W 1 / W 2 applied to the first sub-block 1401 and W 5 / W 6 applied to the second sub-block 1402 and the third sub-block 1403 may be different from each other. W 5 / W 6 may be set higher than W 1 / W 2 in consideration of a tendency of decreasing the prediction accuracy of the second block 1120.
제1 서브 블록(1401)에 적용되는 W1/ W2와, 제4 서브 블록(1404)에 적용되는 W3/W4은 서로 다를 수 있으며, 예측 방향에 따라 제2 블록(1120)에 대한 예측 정확도가 감소되는 성향을 반영하여 W3/W4을 W1/W2보다 높게 설정할 수 있다. W 1 / W 2 applied to the first sub-block 1401 and W 3 / W 4 applied to the fourth sub-block 1404 may be different from each other, and according to the prediction direction, W 3 / W 4 may be set higher than W 1 / W 2 to reflect the tendency of decreasing prediction accuracy.
제2 서브 블록(1402)과 제3 서브 블록(1403)에 적용되는 W5/W6과 제4 서브 블록(1404)에 적용되는 W3/W4은 서로 다를 수 있다. 예측 방향에 따라 제2 블록(1120)에 대한 예측 정확도가 감소되는 성향을 반영하여 W3/W4을 W5/W6 보다 높게 설정할 수 있다.W 5 / W 6 applied to the second sub block 1402 and the third sub block 1403 and W 3 / W 4 applied to the fourth sub block 1404 may be different from each other. According to the prediction direction, W 3 / W 4 may be set higher than W 5 / W 6 by reflecting a tendency of decreasing the prediction accuracy of the second block 1120.
수식 9에서 m1, m2. m3는 정수 연산을 위한 오프셋이다. 제1 서브 블록(1401)에 적용되는 오프셋 m1은 제1 가중치(W1)와 제2 가중치(W2)의 평균값으로 설정될 수 있고, 제4 서브 블록(1404)에 적용되는 오프셋 m2은 제1 가중치(W3)와 제2 가중치(W4)의 평균값으로 설정될 수 있으며, 제2 서브 블록(1402)과 제3 서브 블록(1403)에 적용되는 오프셋 m3은 제1 가중치(W5)와 제2 가중치(W6)의 평균값으로 설정될 수 있다.M1, m2 in Equation 9. m3 is the offset for integer arithmetic. The offset m1 applied to the first sub block 1401 may be set as an average value of the first weight W 1 and the second weight W 2 , and the offset m 2 applied to the fourth sub block 1404 may be set to the first value. first weight (W 3) and the second may be set as an average value of the weight (W 4), a second sub-block 1402, and the third offset m3 applied to the sub-block 1403 is the first weight (W 5) And the average value of the second weight W 6 .
수식 9의 각 가중치에 대한 일 예를 표현하면 수식 10과 같다. An example of each weight of Equation 9 is expressed as Equation 10.
<수식 10><Equation 10>
Figure PCTKR2013003936-appb-I000010
Figure PCTKR2013003936-appb-I000010
수식 10에 나타난 바와 같이, 제1 서브 블록(1401)의 경우, 제2 가중치에 대한 제1 가중치의 비율(W1/W2)은 1이고, 제2 서브 블록(1402) 및 제3 서브 블록(1403)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(W5/W6)은 3이다. 제2 블록(1120)의 예측 정확도가 가장 낮은 제 4 서브 블록(1404)의 경우, 제2 가중치 비율이 가장 낮아져 제2 가중치에 대한 제1 가중치의 비율(W3/W4)은 가장 높은 7로 설정된다. As shown in Equation 10, in the case of the first sub block 1401, the ratio W 1 / W 2 of the first weight to the second weight is 1, and the second sub block 1402 and the third sub block are 1. The ratio W 5 / W 6 of the first weight to the second weight applied to 1403 is three. In the case of the fourth subblock 1404 having the lowest prediction accuracy of the second block 1120, the second weight ratio is the lowest, such that the ratio of the first weight to the second weight (W 3 / W 4 ) is the highest 7. Is set to.
수식 10에는 정수 연산에 대한 오차를 보상하기 위한 오프셋 1, 3, 및 2가 각 식에 더해져 있다.In Equation 10, offsets 1, 3, and 2 are added to each equation to compensate for errors in integer arithmetic.
예측 블록은 더 많은 서브 블록으로 분할될 수 있으며, 각 서브 블록에 대한 제2 블록(1020)의 가중치에 대한 제1 블록(1110)의 가중치 비율은 좌상단에서 우하단 방향으로 갈수록 증가하도록 설정될 수 있다. The prediction block may be divided into more sub blocks, and the weight ratio of the first block 1110 to the weight of the second block 1020 for each sub block may be set to increase from the upper left to the lower right. have.
도 15는 본 실시예에 따라 현재 블록의 예측 블록을 생성하는 방법을 설명하는 제어 흐름도이다. 15 is a control flowchart illustrating a method of generating a prediction block of a current block according to the present embodiment.
도 12의 단계 S1201 및 단계 S1202와 같이, 예측부는 현재 블록(1010)에 대응하는 참조 픽처(1001)의 참조 블록(1011)의 복원값을 업샘플링한 값으로 구성된 제1 블록(1110)을 생성하고(S1501), 현재 블록(1010)의 인트라 예측 모드에 기초하여 유도된 예측값으로 구성된 제2 블록(1120)을 생성한다(S1502). As in steps S1201 and S1202 of FIG. 12, the prediction unit generates a first block 1110 including values of upsampled reconstructed values of the reference block 1011 of the reference picture 1001 corresponding to the current block 1010. In operation S1501, a second block 1120 including prediction values derived based on the intra prediction mode of the current block 1010 is generated (S1502).
현재 블록(1010)에 대한 인트라 예측 모드는 도 4 내지 도 8에 대한 설명과 같이 유도될 수 있으며, 유도된 인트라 예측 모드 및 이미 복원된 참조 샘플값들을 이용하여 제2 블록(1120)이 생성될 수 있다. The intra prediction mode for the current block 1010 may be derived as described with reference to FIGS. 4 to 8, and the second block 1120 is generated using the derived intra prediction mode and the already reconstructed reference sample values. Can be.
예측 블록(1130)의 샘플값 P(i,j)는 제1 블록(1110)의 샘플값 및 제2 블록(1120)의 샘플값의 가중 평균을 통하여 연산될 수 있으며, 제2 블록(1120)의 예측 정확도를 반영하여 참조 샘플로부터 멀어질수록 제2 블록(1120)의 비중을 감소시키도록 가중치를 조절할 수 있다. The sample value P (i, j) of the prediction block 1130 may be calculated through a weighted average of the sample value of the first block 1110 and the sample value of the second block 1120, and the second block 1120. The weight may be adjusted to reduce the specific gravity of the second block 1120 as the distance from the reference sample reflects the prediction accuracy of.
본 실시예에서는 예측 블록(1130)의 좌상단에서 우하단 방향으로 갈수록 제1 블록(1110)에 대한 가중치를 제2 블록(1120)의 가중치 보다 높게 설정하고, 설정된 가중치에 따라 제1 블록(1110)의 샘플값 및 제2 블록(1120)의 샘플값의 가중 평균을 연산하여 예측 블록(1130)의 샘플값을 생성한다(S1503).In the present embodiment, the weight of the first block 1110 is set higher than the weight of the second block 1120 from the upper left end to the lower right direction of the prediction block 1130, and the first block 1110 according to the set weight. A sample value of the prediction block 1130 is generated by calculating a weighted average of the sample value of the sample value and the sample value of the second block 1120 (S1503).
정수 연산에 대한 오차를 보상하기 위하여 수식 9에 도시된 바와 같이 오프셋이 추가될 수도 있다.An offset may be added as shown in Equation 9 to compensate for errors for integer arithmetic.
본 발명의 또 다른 실시예에 따르면 예측 블록(1130)의 샘플값 P(i,j)를 연산할 때 현재 블록(1010)의 인트라 예측 방향에 따라 적응적으로 A(i,j)와 B(i,j)를 조합할 수 있다. According to another embodiment of the present invention, when calculating the sample value P (i, j) of the prediction block 1130, A (i, j) and B (are adaptively applied according to the intra prediction direction of the current block 1010. i, j) can be combined.
인트라 예측 모드를 통하여 유도된 제2 블록(1120)의 예측값은 인트라 예측 모드에 따라, 즉 인트라 예측 방향에 따라 예측 정확도가 달라진다. 다시 말하면, 인트라 예측에 사용된 참조 샘플과의 거리가 가까울수록 예측의 정확도가 높아진다. The prediction value of the second block 1120 derived through the intra prediction mode has a different prediction accuracy according to the intra prediction mode, that is, the intra prediction direction. In other words, the closer the distance to the reference sample used for intra prediction, the higher the accuracy of the prediction.
예를 들어 현재 블록에 대한 인트라 예측 모드가 수직 모드(인트라 예측 모드 26)인 경우, 제2 블록(1120)의 샘플의 위치가 예측 블록의 상단에 인접한 참조 샘플과 가까울수록 예측의 정확도는 높다. For example, when the intra prediction mode for the current block is the vertical mode (intra prediction mode 26), the closer the position of the sample of the second block 1120 is to the reference sample adjacent to the top of the prediction block, the higher the accuracy of the prediction.
반면, 제1 블록(1110)은 참조 블록(1011)을 업샘플링한 값으로 구성되므로 샘플의 위치에 따라 예측 정확도가 변경되지 않는다. On the other hand, since the first block 1110 is configured by upsampled the reference block 1011, the prediction accuracy does not change according to the position of the sample.
본 실시예에서는 현재 블록에 대한 인트라 예측 모드가 수직 모드이면, 예측 블록(1130)의 샘플값이 상단에서 하단 방향으로 갈수록 제1 블록(1110)에 대한 제2 블록(1120)의 가중치를 낮게 설정할 수 있다. In the present embodiment, if the intra prediction mode for the current block is the vertical mode, the weight of the second block 1120 for the first block 1110 is set to be lower as the sample value of the prediction block 1130 goes from the top to the bottom direction. Can be.
도 16은 본 실시예에 따라 복수의 서브 블록으로 구획된 예측 블록을 도시한 도면이다. 도시된 바와 같이, 예측 블록은 두 개의 서브 블록(1601, 1602)으로 구획될 수 있으며, 각 구획에 위치하는 샘플값 P(i,j)의 연산 시 제1 블록(1110) 및 제2 블록(1120)의 샘플값에 대한 가중치는 서로 상이하게 설정될 수 있다. 16 illustrates a prediction block partitioned into a plurality of subblocks according to the present embodiment. As shown, the prediction block may be partitioned into two sub-blocks 1601 and 1602, and the first block 1110 and the second block (1) when calculating the sample value P (i, j) located in each partition The weights for the sample values of 1120 may be set differently from each other.
도 16의 예측 블록의 샘플값 P(i,j)은 수식 11과 같이 표현될 수 있다. The sample value P (i, j) of the prediction block of FIG. 16 may be expressed as Equation 11.
<수식 11><Equation 11>
Figure PCTKR2013003936-appb-I000011
Figure PCTKR2013003936-appb-I000011
j가 N/2 보다 작은 것은 도 16의 제1 서브 블록(1601)을 의미하고 나머지 경우는 제2 서브 블록(1602)을 의미한다. The smaller j than N / 2 means the first sub block 1601 of FIG. 16, and in other cases, the second sub block 1602.
W1은 제1 서브 블록(1601)에 적용되는 제1 가중치, W2는 제1 서브 블록(1601)에 적용되는 제2 가중치를 의미하고, W3은 제2 서브 블록(1602)에 적용되는 제1 가중치, W4는 제2 서브 블록(1602)에 적용되는 제2 가중치를 의미한다, W 1 is a first weight applied to the first sub-block 1601, W 2 is a second weight applied to the first sub-block 1601, W 3 is applied to the second sub-block 1602 The first weight, W 4 means a second weight applied to the second sub-block 1602,
서브 블록에 적용되는 제1 가중치 및 제2 가중치는 동일한 값을 가질 수도 있지만, 예측 방향에 따라 상이한 값으로 설정될 수 있다. 특히, 예측 블록의 상단에서 하단으로 갈수록 제2 가중치에 대한 제1 가중치의 비율은 크게 설정될 수 있다.The first weight and the second weight applied to the sub-block may have the same value, but may be set to different values according to the prediction direction. In particular, the ratio of the first weight to the second weight may be set larger from the top to the bottom of the prediction block.
예측 블록을 두 개로 분할하였을 때 상단에 위치하는 제1 서브 블록(1601)에 대응하는 제2 블록(1120)의 샘플값은 예측 정확도가 높지만, 하단에 위치하는 제2 서브 블록(1602)에 대응하는 제2 블록(1120)의 샘플값의 예측 정확도는 제1 서브 블록(1601)에 대응하는 제2 블록(1120)의 샘플값 보다 상대적으로 낮다. When the prediction block is divided into two, the sample value of the second block 1120 corresponding to the first sub block 1601 located at the top has a high prediction accuracy, but corresponds to the second sub block 1602 located at the bottom. The prediction accuracy of the sample value of the second block 1120 is relatively lower than the sample value of the second block 1120 corresponding to the first sub block 1601.
따라서, 이러한 예측 정확도를 반영하여 제2 서브 블록(1602)의 샘플값 P(i,j)을 연산할 때 제1 가중치(W3)를 제2 가중치(W4)보다 높게 설정할 수 있다. 제2 서브 블록(1602)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(W3/W4)은 제1 서브 블록(1601)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(W1/W2)보다 높게 설정될 수 있다. Therefore, the first weight W 3 may be set higher than the second weight W 4 when the sample value P (i, j) of the second sub-block 1602 is calculated in consideration of the prediction accuracy. The ratio W 3 / W 4 of the first weight to the second weight applied to the second sub block 1602 is the ratio W of the first weight to the second weight applied to the first sub block 1601. 1 / W 2 ) can be set higher.
수식 11에서 m1, m2는 정수 연산을 위한 오프셋이다. 제1 서브 블록(1601)에 적용되는 오프셋 m1은 제1 가중치(W1)와 제2 가중치(W2)의 평균값으로 설정될 수 있고, 제2 서브 블록(1602)에 적용되는 오프셋 m2은 제1 가중치(W3)와 제2 가중치(W4)의 평균값으로 설정될 수 있다.In Equation 11, m1 and m2 are offsets for integer arithmetic. The offset m1 applied to the first sub-block 1601 may be set as an average value of the first weight W 1 and the second weight W 2 , and the offset m2 applied to the second sub-block 1602 is the first value. It may be set to an average value of the first weight W 3 and the second weight W 4 .
예를 들어, 예측 블록의 샘플값 P(i,j)는 수식 12와 같이 표현될 수 있다.For example, the sample value P (i, j) of the prediction block may be expressed as in Equation 12.
<수식 12><Equation 12>
Figure PCTKR2013003936-appb-I000012
Figure PCTKR2013003936-appb-I000012
수식 12에 나타난 바와 같이, 제1 서브 블록(1601)의 경우, 제2 가중치에 대한 제1 가중치의 비율은 1이고, 제2 서브 블록(1602)에 적용되는 제2 가중치에 대한 제1 가중치의 비율은 3이다. As shown in Equation 12, in the case of the first sub-block 1601, the ratio of the first weight to the second weight is 1, and the ratio of the first weight to the second weight applied to the second sub-block 1602 is shown. The ratio is three.
수식 12에는 정수 연산에 대한 오차를 보상하기 위하여 오프셋(1 및 2)이 더해질 수 있다.In Equation 12, offsets 1 and 2 may be added to compensate for errors in integer arithmetic.
예측 블록은 더 많은 서브 블록으로 분할될 수 있으며, 각 서브 블록에 대한 제1 블록(1110)에 대한 제2 블록(1120)의 가중치는 상단에서 하단 방향으로 감소하도록 설정될 수 있다.The prediction block may be divided into more sub blocks, and the weight of the second block 1120 for the first block 1110 for each sub block may be set to decrease from the top to the bottom direction.
도 17은 본 실시예에 따라 현재 블록의 예측 블록을 생성하는 방법을 설명하는 제어 흐름도이다. 17 is a control flowchart illustrating a method of generating a prediction block of a current block according to the present embodiment.
도 12의 단계 S1201 및 단계 S1202와 같이, 우선 현재 블록(1010)에 대응하는 참조 픽처(1001)의 참조 블록(1011)의 복원값을 업샘플링한 값으로 구성된 제1 블록(1110)이 생성되고(S1701), 현재 블록(1010)의 인트라 예측 모드에 기초하여 유도된 예측값으로 구성된 제2 블록(1120)이 생성된다(S1702). As in steps S1201 and S1202 of FIG. 12, first, a first block 1110 composed of upsampled values of reconstructed values of the reference block 1011 of the reference picture 1001 corresponding to the current block 1010 is generated. In operation S1701, a second block 1120 including prediction values derived based on the intra prediction mode of the current block 1010 is generated in operation S1702.
예측 블록의 샘플값 P(i,j)는 제1 블록(1110)의 샘플값 및 제2 블록(1120)의 샘플값의 가중 평균을 통하여 연산될 수 있으며, 현재 블록(1010)의 인트라 예측 모드를 반영하여 참조 샘플로부터 멀어질수록 제2 블록(1120)의 비중을 감소시킬 수 있다.The sample value P (i, j) of the prediction block may be calculated through a weighted average of the sample value of the first block 1110 and the sample value of the second block 1120, and the intra prediction mode of the current block 1010. Reflecting this, as the distance from the reference sample increases, the specific gravity of the second block 1120 may be reduced.
현재 블록(1010)의 인트라 예측 모드가 수직 모드이면(S1703), 예측 블록(1130)의 상단에서 하단 방향으로 갈수록 제1 블록(1110)에 대한 가중치를 제2 블록(1120)에 대한 가중치 보다 높게 설정하고, 설정된 가중치에 따라 제1 블록(1110)의 샘플값 및 제2 블록(1120)의 샘플값의 가중 평균을 연산하여 예측 블록(1130)의 샘플값을 생성한다(S1704).If the intra prediction mode of the current block 1010 is the vertical mode (S1703), the weight for the first block 1110 is higher than the weight for the second block 1120 in the direction from the top to the bottom of the prediction block 1130. In operation S1704, the sample value of the prediction block 1130 is generated by calculating a weighted average of the sample value of the first block 1110 and the sample value of the second block 1120 according to the set weight.
반면, 현재 블록(1010)의 인트라 예측 모드가 수직 모드가 아니면(S1703), 도 15의 단계 S1503과 같이 예측 블록(1130)의 좌상단에서 우하단 방향으로 갈수록 제1 블록(1110)에 대한 가중치는 제2 블록(1120)에 대한 가중치보다 높게 설정되고, 설정된 가중치에 따라 제1 블록(1110)의 샘플값 및 제2 블록(1120)의 샘플값의 가중 평균이 연산될 수 있다. On the other hand, if the intra prediction mode of the current block 1010 is not the vertical mode (S1703), as shown in step S1503 of FIG. 15, the weight of the first block 1110 is increased from the upper left end to the lower right direction of the prediction block 1130. The weighted average of the sample value of the first block 1110 and the sample value of the second block 1120 may be calculated according to the set weight.
본 발명의 또 다른 실시예에 따르면, 현재 블록에 대한 인트라 예측 모드가 수평 모드(인트라 예측 모드 10)인 경우, 제2 블록의 샘플의 위치가 좌측의 이웃 샘플, 즉 예측 블록의 좌측에 인접한 참조 샘플과 가까울수록 예측의 정확도는 높은 것을 고려하여 예측 블록(1130)의 샘플값 P(i,j)를 연산할 수 있다.According to another embodiment of the present invention, if the intra prediction mode for the current block is the horizontal mode (intra prediction mode 10), the position of the sample of the second block is a reference to the neighboring sample on the left, that is, adjacent to the left of the prediction block. The closer to the sample, the higher the accuracy of the prediction may be calculated to calculate the sample value P (i, j) of the prediction block 1130.
본 실시예에서는 예측 블록(1130)의 샘플값이 좌측에서 우측 방향으로 갈수록 제1 블록(1110)에 대한 제2 블록(1120)의 가중치를 낮게 설정할 수 있다. In the present embodiment, as the sample value of the prediction block 1130 goes from left to right, the weight of the second block 1120 with respect to the first block 1110 may be set lower.
도 18은 본 실시예에 따라 복수의 서브 블록으로 구획된 예측 블록을 도시한 도면이다. 도시된 바와 같이, 예측 블록은 두 개의 서브 블록(1801, 1802)으로 구획될 수 있으며, 각 구획에 위치하는 샘플값 P(i,j)의 연산 시 제1 블록(1110) 및 제2 블록(1120)의 샘플값에 대한 가중치는 서로 상이하게 설정될 수 있다. 18 illustrates a prediction block partitioned into a plurality of subblocks according to the present embodiment. As shown, the prediction block may be partitioned into two sub-blocks 1801 and 1802, and the first block 1110 and the second block (1) when the sample value P (i, j) located in each partition are calculated. The weights for the sample values of 1120 may be set differently from each other.
도 18의 예측 블록의 샘플값 P(i,j)은 수식 13과 같이 표현될 수 있다. The sample value P (i, j) of the prediction block of FIG. 18 may be expressed as Equation 13.
<수식 13><Equation 13>
Figure PCTKR2013003936-appb-I000013
Figure PCTKR2013003936-appb-I000013
x가 N/2 보다 작은 것은 도 18의 제1 서브 블록(1801)을 의미하고 나머지 경우는 제2 서브 블록(1802)을 의미한다. The smaller x than N / 2 means the first sub block 1801 of FIG. 18 and the second sub block 1802 in other cases.
W1은 제1 서브 블록(1801)에 적용되는 제1 가중치, W2는 제1 서브 블록(1801)에 적용되는 제2 가중치이고, W3은 제2 서브 블록(1802)에 적용되는 제1 가중치, W4는 제2 서브 블록(1802)에 적용되는 제2 가중치이다. W 1 is a first weight applied to the first sub-block 1801, W 2 is a second weight applied to the first sub-block 1801, and W 3 is a first weight applied to the second sub-block 1802. The weight W 4 is a second weight applied to the second sub-block 1802.
서브 블록에 적용되는 제1 가중치 및 제2 가중치는 동일한 값을 가질 수도 있지만, 예측 방향에 따라 상이한 값으로 설정될 수 있다. 특히, 예측 블록의 좌측에서 우측으로 갈수록 제2 가중치에 대한 제1 가중치의 비율은 크게 설정될 수 있다.The first weight and the second weight applied to the sub-block may have the same value, but may be set to different values according to the prediction direction. In particular, the ratio of the first weight to the second weight may be set larger from the left side to the right side of the prediction block.
예측 블록을 두 개로 분할하였을 때 좌측에 위치하는 제1 서브 블록(1801)에 대응하는 제2 블록(1120)의 샘플값은 예측 정확도가 높지만, 우측에 위치하는 제2 서브 블록(1802)에 대응하는 제2 블록(1120)의 샘플값의 예측 정확도는 제1 서브 블록(1801)에 대응하는 제2 블록(1120)의 샘플값 보다 상대적으로 낮다. When the prediction block is divided into two, the sample value of the second block 1120 corresponding to the first sub block 1801 located on the left has a high prediction accuracy, but corresponds to the second sub block 1802 located on the right. The prediction accuracy of the sample value of the second block 1120 is relatively lower than the sample value of the second block 1120 corresponding to the first sub block 1801.
따라서, 이러한 예측 정확도를 반영하여 제2 서브 블록(1802)의 샘플값 P(i,j)을 연산할 때 제1 가중치(W3)를 제2 가중치(W4)보다 높게 설정할 수 있다. Accordingly, the first weight W 3 may be set higher than the second weight W 4 when the sample value P (i, j) of the second sub-block 1802 is calculated by reflecting the prediction accuracy.
제2 서브 블록(1802)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(W3/W4)은 제1 서브 블록(1801)에 적용되는 제2 가중치에 대한 제1 가중치의 비율(W1/W2)보다 높게 설정될 수 있다. The ratio W 3 / W 4 of the first weight to the second weight applied to the second sub block 1802 is the ratio W of the first weight to the second weight applied to the first sub block 1801. 1 / W 2 ) can be set higher.
수식 13에서 m1, m2는 정수 연산을 위한 오프셋이다. 제1 서브 블록(1801)에 적용되는 오프셋 m1은 제1 가중치(W1)와 제2 가중치(W2)의 평균값으로 설정될 수 있고, 제2 서브 블록(1802)에 적용되는 오프셋 m2은 제1 가중치(W3)와 제2 가중치(W4)의 평균값으로 설정될 수 있다.In Equation 13, m1 and m2 are offsets for integer operation. The offset m1 applied to the first sub block 1801 may be set as an average value of the first weight W 1 and the second weight W 2 , and the offset m 2 applied to the second sub block 1802 may be set to the first value. It may be set to an average value of the first weight W 3 and the second weight W 4 .
예를 들어, 예측 블록의 샘플값 P(i,j)는 수식 14와 같이 표현될 수 있다.For example, the sample value P (i, j) of the prediction block may be expressed as in Equation 14.
<수식 14><Equation 14>
Figure PCTKR2013003936-appb-I000014
Figure PCTKR2013003936-appb-I000014
수식 14에 나타난 바와 같이, 제1 서브 블록(1801)의 경우, 제2 가중치에 대한 제1 가중치의 비율은 1이고, 제2 서브 블록(1802)에 적용되는 제2 가중치에 대한 제1 가중치의 비율은 3이다. As shown in Equation 14, in the case of the first sub block 1801, the ratio of the first weight to the second weight is 1, and the ratio of the first weight to the second weight applied to the second sub block 1802 is as follows. The ratio is three.
수식 14에는 정수 연산에 대한 오차를 보상하기 위하여 오프셋(1 및 2)이 더해질 수 있다.In Equation 14, offsets 1 and 2 may be added to compensate for errors in integer arithmetic.
예측 블록은 더 많은 서브 블록으로 분할될 수 있으며, 각 서브 블록에 대한 제1 블록(1110)에 대한 제2 블록(1120)의 가중치는 좌측에서 우측 방향으로 감소하도록 설정될 수 있다.The prediction block may be divided into more sub blocks, and the weight of the second block 1120 for the first block 1110 for each sub block may be set to decrease from left to right.
상기 설명된 실시예들과 같이 두 개의 블록을 이용하여 현재 블록의 인트라 예측을 수행할 경우, 현재 블록에 대한 인트라 예측 모드는 제2 블록에서 적용되었던 인트라 예측 모드로 설정될 수 있고, 또는 DC 모드 또는 Planar 모드와 같이 특정 예측 모드로 설정될 수 있다. 현재 블록의 인트라 예측 모드로 설정된 예측 모드에 대한 정보는 이후 코딩 또는 디코딩되는 인트라 예측 블록의 방향을 예측하는 데 사용하기 위하여 저장될 수 있다.  When performing intra prediction of the current block using two blocks as in the above-described embodiments, the intra prediction mode for the current block may be set to the intra prediction mode applied in the second block, or the DC mode. Or it may be set to a specific prediction mode, such as a planar mode. Information about the prediction mode set to the intra prediction mode of the current block may be stored for use in predicting the direction of the intra prediction block that is subsequently coded or decoded.
현재 블록이 두 개의 블록의 조합을 통하여 예측된 경우, 이를 나타내기 위한 정보가 시그널링 될 수 있고, 현재 블록의 인트라 예측 모드로 설정된 예측 모드에 대한 정보 역시 코딩되어 디코딩 장치로 시그널링 될 수 있다. When the current block is predicted through a combination of two blocks, information for indicating this may be signaled, and information about a prediction mode set as an intra prediction mode of the current block may also be coded and signaled to the decoding apparatus.
상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 상술한 실시예들은 다양한 양태의 예시들을 포함할 수 있으므로 각 실시예의 조합 역시 본 발명의 일 실시예로서 이해되어야 할 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다. In the exemplary system described above, the methods are described based on a flowchart as a series of steps or blocks, but the invention is not limited to the order of steps, and certain steps may occur in a different order or concurrently with other steps than those described above. Can be. In addition, since the above-described embodiments may include examples of various aspects, a combination of each embodiment should also be understood as an embodiment of the present invention. Accordingly, the invention is intended to embrace all other replacements, modifications and variations that fall within the scope of the following claims.

Claims (14)

  1. 현재 블록에 대응하는 참조 레이어의 참조 블록의 복원값을 업샘플링한 값으로 구성된 제1 블록을 생성하는 하는 단계와;Generating a first block composed of upsampled values of reconstructed values of reference blocks of the reference layer corresponding to the current block;
    상기 현재 블록의 인트라 예측 모드에 기초하여 유도된 예측값으로 구성된 제2 블록을 생성하는 단계와;Generating a second block of prediction values derived based on the intra prediction mode of the current block;
    상기 제1 블록 및 상기 제2 블록의 샘플값을 조합하여 상기 현재 블록의 예측 블록을 생성하는 단계를 포함하는 것을 특징으로 하는 인터 레이어 예측 방법.And combining the sample values of the first block and the second block to generate a prediction block of the current block.
  2. 제1항에 있어서,The method of claim 1,
    상기 예측 블록을 생성하는 단계는, 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 산술 평균을 통하여 상기 예측 블록의 샘플값을 연산하는 것을 특징으로 하는 인터 레이어 예측 방법.The generating of the prediction block may include calculating a sample value of the prediction block based on an arithmetic mean of the sample value of the first block and the sample value of the second block.
  3. 제1항에 있어서,The method of claim 1,
    상기 예측 블록을 생성하는 단계는, 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하는 것을 특징으로 하는 인터 레이어 예측 방법.The generating of the prediction block may include calculating a sample value of the prediction block based on a weighted average of the sample value of the first block and the sample value of the second block.
  4. 제1항에 있어서,The method of claim 1,
    상기 예측 블록을 생성하는 단계는, 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하고,The generating of the prediction block may include calculating a sample value of the prediction block based on a weighted average of the sample value of the first block and the sample value of the second block,
    상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라 하면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 좌상단에서 우하단 방향으로 갈수록 높게 설정되는 것을 특징으로 하는 인터 레이어 예측 방법.When the weight of the first block is a first weight and the value for the second block is a second weight, the ratio of the first weight to the second value is from the upper left to the lower right of the prediction block. An interlayer prediction method characterized in that the higher setting.
  5. 제1항에 있어서,The method of claim 1,
    상기 예측 블록을 생성하는 단계는, 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하고,The generating of the prediction block may include calculating a sample value of the prediction block based on a weighted average of the sample value of the first block and the sample value of the second block,
    상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라고 하고, 상기 현재 블록의 인트라 예측 모드가 수직 모드이면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 상단에서 하단 방향으로 갈수록 높게 설정되는 것을 특징으로 하는 인터 레이어 예측 방법.The weight of the first block is referred to as a first weight and a value for the second block as a second weight, and if the intra prediction mode of the current block is a vertical mode, the weight of the first weight for the second value The ratio is set higher from the top to the bottom of the prediction block toward the inter-layer prediction method.
  6. 제1항에 있어서,The method of claim 1,
    상기 예측 블록을 생성하는 단계는, 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하고,The generating of the prediction block may include calculating a sample value of the prediction block based on a weighted average of the sample value of the first block and the sample value of the second block,
    상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라고 하고, 상기 현재 블록의 인트라 예측 모드가 수평 모드이면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 좌측에서 우측 방향으로 갈수록 높게 설정되는 것을 특징으로 하는 인터 레이어 예측 방법.The weight of the first block is referred to as a first weight and the value for the second block is a second weight, and if the intra prediction mode of the current block is a horizontal mode, the weight of the first weight for the second value The ratio is set higher from the left to the right direction of the prediction block.
  7. 제2항 내지 제6항 중 어느 한 항에 있어서,The method according to any one of claims 2 to 6,
    상기 예측 블록을 생성하는 단계는 상기 예측 블록의 샘플값에 반올림 및 반내림 중 하나의 효과를 주기 위한 오프셋을 더하는 것을 특징으로 하는 인터 레이어 예측 방법.The generating of the prediction block may include adding an offset for giving one of rounding and rounding to a sample value of the prediction block.
  8. 현재 블록에 대응하는 참조 레이어의 참조 블록의 복원값을 업샘플링한 값으로 구성된 제1 블록, 상기 현재 블록의 인트라 예측 모드에 기초하여 유도된 예측값으로 구성된 제2 블록 및 상기 제1 블록 및 상기 제2 블록의 샘플값을 조합하여 상기 현재 블록의 예측 블록을 생성하는 예측부를 포함하는 것을 특징으로 하는 비디오 디코딩 장치.A first block including upsampled reconstructed values of the reference blocks of the reference layer corresponding to the current block, a second block consisting of prediction values derived based on an intra prediction mode of the current block, and the first block and the first block And a predictor which combines sample values of two blocks to generate a predicted block of the current block.
  9. 제8항에 있어서,The method of claim 8,
    상기 예측부는 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 산술 평균을 통하여 상기 예측 블록의 샘플값을 연산하는 것을 특징으로 하는 비디오 디코딩 장치.And the prediction unit calculates a sample value of the prediction block based on an arithmetic mean of the sample value of the first block and the sample value of the second block.
  10. 제8항에 있어서,The method of claim 8,
    상기 예측부는 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하는 것을 특징으로 하는 비디오 디코딩 장치.And the prediction unit calculates a sample value of the prediction block based on a weighted average of the sample value of the first block and the sample value of the second block.
  11. 제8항에 있어서,The method of claim 8,
    상기 예측부는 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하고,The prediction unit calculates a sample value of the prediction block through a weighted average of the sample value of the first block and the sample value of the second block,
    상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라 하면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 좌상단에서 우하단 방향으로 갈수록 높게 설정되는 것을 특징으로 하는 비디오 디코딩 장치.When the weight of the first block is a first weight and the value for the second block is a second weight, the ratio of the first weight to the second value is from the upper left to the lower right of the prediction block. The video decoding apparatus, characterized in that the higher setting.
  12. 제8항에 있어서,The method of claim 8,
    상기 예측부는 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하고,The prediction unit calculates a sample value of the prediction block through a weighted average of the sample value of the first block and the sample value of the second block,
    상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라고 하고, 상기 현재 블록의 인트라 예측 모드가 수직 모드이면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 상단에서 하단 방향으로 갈수록 높게 설정되는 것을 특징으로 하는 비디오 디코딩 장치.The weight of the first block is referred to as a first weight and a value for the second block as a second weight, and if the intra prediction mode of the current block is a vertical mode, the weight of the first weight for the second value And the ratio is set higher from the top to the bottom of the prediction block.
  13. 제8항에 있어서,The method of claim 8,
    상기 예측부는 상기 제1 블록의 샘플값 및 상기 제2 블록의 샘플값의 가중 평균을 통하여 상기 예측 블록의 샘플값을 연산하고,The prediction unit calculates a sample value of the prediction block through a weighted average of the sample value of the first block and the sample value of the second block,
    상기 제1 블록의 가중치를 제1 가중치, 상기 제2 블록에 대한 가충치를 제2 가중치라고 하고, 상기 현재 블록의 인트라 예측 모드가 수평 모드이면, 상기 제2 가충치에 대한 상기 제1 가중치의 비율은 상기 예측 블록의 좌측에서 우측 방향으로 갈수록 높게 설정되는 것을 특징으로 하는 비디오 디코딩 장치.The weight of the first block is referred to as a first weight and the value for the second block is a second weight, and if the intra prediction mode of the current block is a horizontal mode, the weight of the first weight for the second value And the ratio is set higher from the left to the right of the prediction block.
  14. 제9항 내지 제13항 중 어느 한 항에 있어서,The method according to any one of claims 9 to 13,
    상기 예측부는 상기 예측 블록의 샘플값에 반올림 및 반내림 중 하나의 효과를 주기 위한 오프셋을 더하는 것을 특징으로 하는 비디오 디코딩 장치.And the prediction unit adds an offset for giving one of rounding and rounding effects to a sample value of the prediction block.
PCT/KR2013/003936 2012-05-08 2013-05-07 Inter-layer prediction method and apparatus using same WO2013168952A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261643910P 2012-05-08 2012-05-08
US61/643,910 2012-05-08

Publications (1)

Publication Number Publication Date
WO2013168952A1 true WO2013168952A1 (en) 2013-11-14

Family

ID=49550930

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/003936 WO2013168952A1 (en) 2012-05-08 2013-05-07 Inter-layer prediction method and apparatus using same

Country Status (1)

Country Link
WO (1) WO2013168952A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015139175A1 (en) * 2014-03-17 2015-09-24 Mediatek Singapore Pte. Ltd. Improved block copying
WO2020251423A3 (en) * 2019-10-07 2021-03-04 Huawei Technologies Co., Ltd. Method and apparatus of harmonizing weighted prediction and bi-prediction with coding-unit-level weight
WO2021061020A1 (en) * 2019-09-23 2021-04-01 Huawei Technologies Co., Ltd. Method and apparatus of weighted prediction for non-rectangular partitioning modes
US11218726B2 (en) 2016-10-04 2022-01-04 Kt Corporation Method and apparatus for processing video signal

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080023727A (en) * 2005-07-11 2008-03-14 톰슨 라이센싱 Method and apparatus for macroblock adaptive inter-layer intratexture prediction
US20080123742A1 (en) * 2006-11-28 2008-05-29 Microsoft Corporation Selective Inter-Layer Prediction in Layered Video Coding
KR20080094041A (en) * 2006-01-11 2008-10-22 콸콤 인코포레이티드 Video coding with fine granularity scalability
KR100878809B1 (en) * 2004-09-23 2009-01-14 엘지전자 주식회사 Method for decoding video signal and apparatus thereof
KR20090018019A (en) * 2005-01-21 2009-02-19 엘지전자 주식회사 Method and apparatus for encoding / decoding video signal using prediction information of internal mode block of base layer

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100878809B1 (en) * 2004-09-23 2009-01-14 엘지전자 주식회사 Method for decoding video signal and apparatus thereof
KR20090018019A (en) * 2005-01-21 2009-02-19 엘지전자 주식회사 Method and apparatus for encoding / decoding video signal using prediction information of internal mode block of base layer
KR20080023727A (en) * 2005-07-11 2008-03-14 톰슨 라이센싱 Method and apparatus for macroblock adaptive inter-layer intratexture prediction
KR20080094041A (en) * 2006-01-11 2008-10-22 콸콤 인코포레이티드 Video coding with fine granularity scalability
US20080123742A1 (en) * 2006-11-28 2008-05-29 Microsoft Corporation Selective Inter-Layer Prediction in Layered Video Coding

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015139175A1 (en) * 2014-03-17 2015-09-24 Mediatek Singapore Pte. Ltd. Improved block copying
US11218726B2 (en) 2016-10-04 2022-01-04 Kt Corporation Method and apparatus for processing video signal
US11700392B2 (en) 2016-10-04 2023-07-11 Kt Corporation Method and apparatus for processing video signal
US12108075B2 (en) 2016-10-04 2024-10-01 Kt Corporation Method and apparatus for processing video signal by adaptively determining extended intra prediction mode
WO2021061020A1 (en) * 2019-09-23 2021-04-01 Huawei Technologies Co., Ltd. Method and apparatus of weighted prediction for non-rectangular partitioning modes
US11962792B2 (en) 2019-09-23 2024-04-16 Huawei Technologies Co., Ltd. Method and apparatus of weighted prediction for non-rectangular partitioning modes
WO2020251423A3 (en) * 2019-10-07 2021-03-04 Huawei Technologies Co., Ltd. Method and apparatus of harmonizing weighted prediction and bi-prediction with coding-unit-level weight

Similar Documents

Publication Publication Date Title
WO2019107916A1 (en) Image decoding method and apparatus based on inter-prediction in image coding system
WO2020226424A1 (en) Image encoding/decoding method and device for performing mip and lfnst, and method for transmitting bitstream
WO2018030599A1 (en) Intra-prediction mode-based image processing method and device therefor
WO2020171444A1 (en) Dmvr-based inter-prediction method and device
WO2014003379A1 (en) Image decoding method and apparatus using same
WO2014038906A1 (en) Image decoding method and apparatus using same
WO2019194514A1 (en) Image processing method based on inter prediction mode, and device therefor
WO2020184848A1 (en) Dmvr-based inter-prediction method and device
WO2020036390A1 (en) Method and apparatus for processing image signal
WO2020055107A1 (en) Affine motion prediction-based image decoding method and apparatus using affine mvp candidate list in image coding system
WO2019216714A1 (en) Method for processing image on basis of inter-prediction mode and apparatus therefor
WO2021054676A1 (en) Image encoding/decoding method and device for performing prof, and method for transmitting bitstream
WO2020055161A1 (en) Image decoding method and apparatus based on motion prediction in sub-block unit in image coding system
WO2020184847A1 (en) Inter-prediction method and device based on dmvr and bdof
WO2020013569A1 (en) Image decoding method and apparatus based on affine motion prediction in image coding system
WO2015099400A1 (en) Method and apparatus for encoding/decoding multilayer video signal
WO2021040458A1 (en) Video signal processing method and device
WO2019194463A1 (en) Method for processing image and apparatus therefor
WO2013168952A1 (en) Inter-layer prediction method and apparatus using same
WO2022182174A1 (en) Intra prediction method and device based on intra prediction mode derivation
WO2015147426A1 (en) Multilayer video signal encoding/decoding method and device
WO2020032526A1 (en) Image decoding method and device on basis of affine motion prediction using constructed affine mvp candidate in image coding system
WO2023048500A1 (en) Image encoding/decoding method, method for transmitting bitstream, and recording medium in which bitstream is stored
WO2019216736A1 (en) Inter prediction mode-based image processing method and apparatus therefor
WO2013169049A1 (en) Inter-layer prediction method and apparatus using same

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

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

Country of ref document: EP

Kind code of ref document: A1

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载