WO2014003367A1 - Method of decoding image and device using same - Google Patents

Method of decoding image and device using same Download PDF

Info

Publication number
WO2014003367A1
WO2014003367A1 PCT/KR2013/005489 KR2013005489W WO2014003367A1 WO 2014003367 A1 WO2014003367 A1 WO 2014003367A1 KR 2013005489 W KR2013005489 W KR 2013005489W WO 2014003367 A1 WO2014003367 A1 WO 2014003367A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
motion information
motion
prediction
list
Prior art date
Application number
PCT/KR2013/005489
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 WO2014003367A1 publication Critical patent/WO2014003367A1/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/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer

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 inter 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 removing candidate redundancy in inter-layer inter prediction and an apparatus using the same.
  • Another object of the present invention is to provide a method for reducing complexity when removing redundancy of candidates in inter-layer inter prediction and an apparatus using the same.
  • An embodiment of the present invention provides motion information of adjacent neighboring blocks of a current block, motion information of a COL block corresponding to the current block within a corresponding picture of the current block, and movement of a reference block of a reference layer corresponding to the current block. Constructing a motion prediction list based on the information, and performing inter prediction of the current block based on the motion prediction list, wherein constructing the motion prediction list comprises: motion information of the neighboring block; The method may include determining whether at least one of the motion information of the COL block is overlapped with the reference block.
  • the configuring of the motion prediction list may include setting motion information of the reference block as a candidate of the motion prediction list, preset motion information among the motion information of at least one neighboring block, and the reference block. And determining the redundancy of the motion information of, and setting the motion information of the neighboring block, which is not the same as the motion information of the reference block, as a candidate of the motion prediction list.
  • the motion list is a merge candidate list of the current block, and the constituting the motion list may include at least a lowermost block among neighboring blocks adjacent to a left side of the current block and at a rightmost side among neighboring blocks adjacent to an upper end of the current block. Determining validity in order of a located block, an upper right corner block of the current block, a lower left corner block of the current block, and an upper left corner block of the current block; and in the determining of the validity, The redundancy of the motion information of the block located at the lowermost end of the neighboring blocks adjacent to the left side and the block located at the rightmost side of the neighboring blocks adjacent to the top of the current block may be determined.
  • the motion list is a motion vector predictor list of the current block
  • the constituting the motion list may include selecting from a lowermost corner block among a lower left corner block of the current block and a neighboring block adjacent to the left side of the current block. Determining the validity of the second motion information selected from first motion information, an upper right corner block of the current block, a block located at the rightmost side among neighboring blocks adjacent to an upper end of the current block, and an upper left corner block of the current block; In the determining of the validity, at least one of the first motion information and the first motion information and the motion information of the reference block may be determined.
  • the configuring of the motion prediction list may include setting motion information of the reference block as a candidate of the motion prediction list, and determining redundancy of motion information of the COL block and motion information of the reference block. And, as a result of the determination, if the motion information of the COL block and the motion information of the reference block is not the same, setting the motion information of the COL block as a candidate of the motion prediction list.
  • the constructing the motion list may include setting motion information of at least one neighboring block as a candidate of the motion prediction list, and preset motion information among the motion information of the at least one neighboring block. Determining the redundancy of the motion information and the motion information of the reference block; and if the predetermined motion information and the motion information of the reference block are not the same as the result of the determination, the motion information of the reference block is candidate of the motion prediction list. It may include the step of setting to.
  • the constructing the motion prediction list may include setting motion information of the COL block as a candidate of the motion prediction list, determining a redundancy of motion information of the reference block and motion information of the COL block; As a result of the determination, if the motion information of the reference block and the motion information of the COL block are not the same, setting the motion information of the reference block as a candidate of the motion prediction list.
  • an apparatus for decoding an image may include: motion information of adjacent neighboring blocks of a current block, motion information of a COL block corresponding to the current block in a corresponding picture of the current block, and a reference layer corresponding to the current block. Comprising a motion prediction list based on the motion information of the reference block, and comprises a prediction unit for performing the inter prediction of the current block based on the motion prediction list, the prediction unit of the motion information of the neighboring block and the COL block It may be determined whether at least one of the motion information overlaps with the reference block.
  • a method of performing inter prediction on a current layer using information of another layer and an apparatus using the same are provided.
  • a method for removing candidate redundancy in inter-layer inter prediction and an apparatus using the same are provided.
  • a method for reducing complexity when removing redundancy of candidates in inter-layer inter prediction 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.
  • 3 is a diagram schematically illustrating candidates of motion information used for inter prediction.
  • FIG. 4 is a diagram schematically illustrating a method of deriving motion information of a reference layer according to the present invention.
  • FIG. 5 is a diagram schematically illustrating candidates of motion information used when inter prediction is performed in a current layer with reference to a reference layer.
  • FIG. 6 is a diagram schematically illustrating a method of scaling mvIL in accordance with the present invention.
  • FIG. 7 is a control flowchart illustrating a method of decoding an image according to an embodiment of the present invention.
  • FIG. 8 is a control flowchart illustrating a method of constructing a motion candidate list according to an embodiment of the present invention.
  • each of the components in the drawings described in the present invention are shown independently for the convenience of description of the different characteristic functions in the video encoding apparatus / decoding apparatus, each component is a separate hardware or separate software It does not mean that it is implemented.
  • two or more of each configuration may be combined to form one configuration, or one configuration may be divided into a plurality of configurations.
  • Embodiments in which each configuration is integrated and / or separated are also included in the scope of the present invention without departing from the spirit of the present invention.
  • input signals may be processed 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 decoding apparatus is configured 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.
  • the information of the current picture is predicted by using the reference picture information. Inter-layer prediction may be performed.
  • Inter-layer inter prediction is also called inter-layer motion prediction, and in the present specification, inter layer motion prediction and expression of inter-layer inter prediction may be mixed as necessary for better understanding of the present invention.
  • prediction of a current block of a current layer may be performed using motion information of a reference layer (base layer).
  • Inter-layer motion prediction may be performed by the predictors 110 and 235 of FIGS. 1 and 2.
  • A0, A1, B0, B1, B2, and COL may indicate a corresponding block or may indicate motion information of the corresponding block.
  • the motion information of the corresponding block may be a motion vector or a motion vector and a reference picture index.
  • Inter prediction in the base layer may be performed by the prediction units 140 and 275 of FIGS. 1 and 2.
  • the modes of inter prediction include a merge mode, a skip mode, and a mode using a motion vector predicot (MVP).
  • the mode using the MVP may be referred to as an advanced MVP (AMVP) mode for convenience of description.
  • motion information selected from motion information (hereinafter, referred to as motion information candidates) of neighboring blocks illustrated in FIG. 3 may be used as motion information of the current block. It can be transmitted from the encoding device indicating the selected motion information candidate to the decoding device.
  • the motion information of the motion information candidate selected as in the merge mode is used as the motion information of the current block, but the residual is not generated / transmitted.
  • the prediction unit may determine the availability for the spatial candidates A0, A1, B0, B1, and B2 around the current block. Availability determination may proceed in a predetermined order. For example, the process may proceed in the order of A1 ⁇ B1 ⁇ B0 ⁇ A1 ⁇ B2.
  • the availability determination of each candidate may include determining the sameness as the previous candidate. For example, with regard to B1, availability determination may be made in consideration of whether A1 and motion information are the same. Specifically, if A1 is available and the motion information of A1 and B1 is the same, it may be determined that B1 is not available.
  • B0 may determine availability by considering whether motion information is identical to B1
  • A0 may determine availability by considering whether motion information is identical to A1.
  • B2 may determine availability by considering whether both A1 and motion information are the same and whether B1 and motion information are the same.In this case, when all four previous candidates (A0, A1, B0, and B1) are available, they are not available. It can also be judged.
  • a COL picture including a COL candidate may be specified using a reference picture list.
  • Motion information of a prediction block including a predetermined position with respect to a COL block in the same coding tree block (CTB) as the current block may be used as a COL candidate.
  • the motion vector of the COL candidate may be scaled in consideration of the COL picture and the reference pictures of the current picture, and the reference index of the COL candidate may be set to a predetermined value (eg, 0).
  • a merge candidate list may be constructed according to the availability determination order.
  • the slice type of the current block is B (ie, a slice to which bidirectional prediction is applied) and the number of candidates included in the current merge candidate list is less than the maximum number, candidates (combined amount prediction candidates, combined bi) are included in the merge candidate list. Prediction candidates may be added.
  • a predetermined candidate eg, zero merge candidate
  • the prediction unit may perform inter prediction by using motion information of a candidate indicated by information transmitted from the encoding apparatus (eg, merge index merge_idx) on the merge candidate list as motion information for the current block. For example, the prediction unit may use the samples indicated by the motion information of the candidate selected by the merge index as the prediction block of the current block.
  • motion information of a candidate indicated by information transmitted from the encoding apparatus eg, merge index merge_idx
  • the prediction unit may construct an AMVP list composed of MVP candidates.
  • the prediction unit determines the availability of the candidate from A0 ⁇ A1, and determines the availability of the candidate from B0 ⁇ B1 ⁇ B2.
  • the prediction unit may include the candidate in the AMVP list when there is a candidate having the same reference picture as the current block as an available candidate. If no candidate satisfies 1, the prediction unit is first searched as available based on the difference in POC (Picture Order Count) between the current picture and the reference picture of the current picture and the POC difference between the current picture and the reference picture of the candidate.
  • the motion vector of the candidate may be scaled.
  • the prediction unit may include the scaled motion vector in the AMVP list.
  • the prediction unit In determining the availability of the candidates in the order of B0-> B1-> B2, the prediction unit includes the candidate in the AMVP list if there are candidates having the same reference picture as the current block as available candidates. When no candidate satisfies 1 and no candidates are available among A0 and A1, the prediction unit includes a 2 picture order count (POC) difference between the current picture and the reference picture of the current picture, and a POC difference between the current picture and the reference picture of the candidate. Based on, it is possible to scale the motion vector of the candidate found first as available.
  • the prediction unit may include the scaled motion vector in the AMVP list.
  • a COL picture including a COL candidate may be specified using a reference picture list.
  • the motion information of the prediction block including the predetermined position with respect to the COL block in the same CTB as the current block may be used as a COL candidate.
  • the motion vector of the COL candidate may be scaled in consideration of the COL picture and reference pictures of the current picture.
  • the MVP candidate determined by judging the availability of the candidate in the order of A0 ⁇ A1 is called A
  • the MVP candidate determined by judging the availability of the candidate in the order of B0 ⁇ B1 ⁇ B2 is called B
  • the availability of the temporal candidate is determined by
  • the AMVP list may be configured in the order of [AB COL].
  • the prediction unit may delete one of them from the AMVP list.
  • the prediction unit may adjust the number of MVP candidates in the AMVP list to 2 when all of A, B, and COL are valid. For example, the prediction unit may configure the AMVP list with A and B, and remove the COL from the AMVP list.
  • the predictor may add zero motion vectors as candidates when the number of candidates in the AMVP list is less than two.
  • the encoding apparatus decodes an MVP index indicating an MVP to use for inter prediction on a current block on an AMVP list, a motion vector difference (mvd) of a motion vector, and a reference index indicating a reference picture for a current picture on a reference picture list. Can be sent to.
  • the reference picture list is a list of reference pictures that can be used for inter prediction, and there are L0 for forward prediction and L1 for backward prediction.
  • the prediction unit may generate a prediction block for the current block based on the motion vector derived from the MVP and the mvd indicated by the MVP index and the reference picture indicated by the reference index.
  • the prediction unit may generate a reconstruction block for the current block based on the prediction block and the residual. Since the residual is not transmitted when the skip mode is applied, the prediction unit may use the prediction block as the reconstruction block.
  • the base layer (layer 0) has been described as an example of inter prediction.
  • the inter prediction is performed without using information of another layer in the enhancement layer (layer 1), the inter prediction is performed in the same manner as described above. You can make predictions.
  • the enhancement layer may perform inter-layer motion prediction using motion information of the base layer.
  • Inter-layer motion prediction may be performed by the prediction units of the encoding apparatus and the decoding apparatus.
  • FIG. 4 is a diagram schematically illustrating a method of deriving motion information of a reference layer according to the present invention.
  • the current layer is an upper layer of the reference layer and the resolution of the current layer is higher than the resolution of the reference layer will be described as an example.
  • a current PU may be specified based on a PU 400 of a reference layer corresponding to a PU 410 of the current layer (current PU).
  • the position specifying the current PU be (xCurr, yCurr), and the position of the reference ray corresponding to the current PU, for example, the position specifying the reference PU, be (xRef, yRef).
  • the inter-layer motion vector to be derived from the motion vector of the reference layer be mvIL, and the motion vector (eg, the motion vector of the reference PU) specified by (xRef, yRef) be mvRL.
  • nPSW is the width of the current PU 410
  • nPSH is the height of the current PU 410.
  • the prediction unit may specify a current PU and specify a reference PU based on the location of the current PU to derive motion information (eg, a motion vector) of the reference PU.
  • motion information eg, a motion vector
  • the position (xCurr, yCurr) that specifies the current PU may be determined by any one of the following candidates, such as?
  • the position (xCurr, yCurr) that specifies the current PU may be determined and used in any one of 1 to ,, or may be signaled to determine which position (xCurr, yCurr) to use after determining through RDO in the encoding apparatus. .
  • the same position may be determined as the position specifying the PU of the current layer (enhanced layer) in response to the position specifying the PU in the reference layer (base layer).
  • the upper left LT (xP, yP) in the PU may be determined and used as (xCurr, yCurr) in the current layer.
  • a position to obtain a motion vector in the reference layer (the position of the reference PU) may be determined according to the ratio between the current layer and the reference layer from the position of the current PU.
  • Equation 1 shows a method of determining a position to obtain a motion vector in a reference layer according to the present invention.
  • the scale representing the ratio of the current layer to the reference layer may be determined according to two layer resolutions. For example, if the resolution of the current layer is twice the resolution of the reference layer, the value of scale applied is 2. If the resolution of the current layer is the same as that of the reference layer, the scale applied is 1.
  • scale is determined as the resolution ratio between the current layer and the reference layer, the present invention is not limited thereto.
  • the scale may be determined according to the type of scalability applied between the current layer and the reference layer.
  • scale may be a picture size ratio and a frame rate ratio between the current layer and the reference layer.
  • the prediction unit may derive the motion vector of the position (xRef, yRef), that is, the motion vector of the PU (reference PU) covering (xRef, yRef) as mvRL.
  • the prediction unit may derive the reference index of the PU (reference PU) covering (xRef, yRef) as the reference index refIdxIL to be used for inter-layer motion prediction.
  • the prediction unit may induce a motion vector mvIL to be used for inter-layer motion prediction (inter-layer inter prediction) by scaling mvRL.
  • Equation 2 shows a method of inducing mvIL by scaling mvRL according to the present invention.
  • the coefficient scale represents the ratio of the current layer to the reference layer as in Equation 1. For example, if the resolution of the current layer is twice the resolution of the reference layer, the value of scale applied is 2.
  • the prediction unit may use mvRL as mvIL.
  • the prediction unit may perform interlayer inter prediction on the current block of the current layer (enhanced layer) using motion information derived from the reference layer.
  • the motion information derived from the reference layer includes a motion vector mvIL and a reference index refIdxIL.
  • the prediction unit may add mvIL and refIdxIL as merge candidates to the merge candidate list for the current block.
  • the prediction unit may add mvIL as an MVP candidate to the AMVP list for the current block.
  • Table 1 shows an example of a merge candidate list configured when merge mode is applied in a layer without referring to another layer as inter prediction.
  • A1, B1, B0, A0, B2 and COL are the same as A1, B1, B0, A0, B2 and COL of FIG.
  • the method of constructing the merge candidate list of inter prediction in Table 1 is the same as in the merge mode of the inter prediction described above with reference to FIG. 3.
  • the candidate located at the top may be assigned the index of the smallest value, and the candidate located at the bottom may be assigned the index of the largest value.
  • the prediction unit A1, B1, B0 when the inter prediction is performed using information in the current layer without referring to another layer, that is, the reference layer, or when the reference PU of the reference layer is invalid or predicted in the intra mode, the prediction unit A1, B1, B0.
  • the merge candidate list may be derived in consideration of the redundancy of A0 and B2.
  • the prediction unit may determine the availability of candidates in the order of A1 ⁇ B1 ⁇ B0 ⁇ A0 ⁇ B2, and may exclude candidates from the list in consideration of redundancy when determining availability.
  • the prediction unit determines the sameness of the motion information with A1 with respect to B1, and adds B1 to the candidate list when the motion information between A1 and B1 is not the same.
  • B0 considers whether the motion information is the same as B1 and the prediction unit may add B0 to the candidate list when the motion information of B0 and B1 is not the same.
  • the prediction unit A0 may add A1 to the candidate list when the motion information of A0 and A1 is not the same, considering whether A1 is identical to the motion information.
  • B2 may determine availability by considering whether both A1 and motion information are the same and whether B1 and motion information are the same.In this case, when all four previous candidates (A0, A1, B0, and B1) are available, they are not available. It can also be judged. The predictor may add B2 to the candidate list when the motion information of B2 is different from the motion information of A1 and B1, and all four previous candidates A0, A1, B0, and B1 are not available.
  • the prediction unit may determine the availability of the COL candidates, and may construct a merge candidate list according to the availability determination order, from the candidates determined to be available including the COL candidates.
  • the prediction unit may add candidates (combined bi-prediction candidates) to the merge candidate list.
  • a predetermined candidate eg, zero merge candidate
  • the predictor may determine the identity between A1, B1, B0, A0, B2, and COL at a time after constructing a list by excluding the identity between A1, B1, B0, A0, and B2. In this case, the task of leaving one of the same candidates may be performed after determining the validity of the COL.
  • the prediction unit may construct a merge candidate list including motion information derived from a reference layer.
  • 5 briefly illustrates an example of candidates for motion information used when inter prediction is performed in a current layer with reference to a reference layer.
  • a 0, A 1, B 0, B 1, B 2, COL, and REF may indicate a corresponding block or may indicate motion information of the corresponding block.
  • the motion information of the corresponding block may be a motion vector or a motion vector and a reference picture index.
  • REF includes mvIL and refIdxIL.
  • A0, A1, B0, B1, B2, and COL of FIG. 5 are the same as A0, A1, B0, B1, B2, and COL of FIG. 3, and merge candidate lists using A0, A1, B0, B1, B2, and COL.
  • the method of constructing is also the same as described above with reference to FIG.
  • Table 2 shows an example of a merge candidate list configured by the prediction unit when the merge mode of inter-layer motion prediction is applied according to the present invention.
  • Table 2 describes the order in which reference layer candidates are added to the merge candidate list according to the present invention.
  • the topmost candidate may be assigned the smallest index, and the bottommost candidate may be assigned the largest index.
  • the prediction unit may include the REF in any order of a to f in the merge candidate list of Table 2.
  • the prediction unit may allocate the smallest index (eg, 0) to REF and include it in the order of merge candidate list. That is, the prediction unit may first add REF to the merge candidate list.
  • the prediction unit may allocate the largest index (eg, the maximum number of candidates that can be included in the merge candidate list minus 1) to the REF and include it in the order of the merge candidate list. That is, the prediction unit may add the REF to the merge candidate list at the latest.
  • the largest index eg, the maximum number of candidates that can be included in the merge candidate list minus 1
  • the prediction unit may add REF to c which is the order after the spatial candidates. That is, the prediction unit may add the REF to the merge candidate list after determining the validity of the spatial candidates.
  • the prediction unit may add REF to d after the candidates for unidirectional prediction among the candidates in the current layer and before the combined bidirectional candidate. That is, the prediction unit may determine the validity of the candidates of the unidirectional prediction among the candidates in the current layer, and add the REF to the merge candidate list before adding the combined bidirectional candidate.
  • the prediction unit may add REF to e, which is an order after considering all candidates in the current layer. That is, the prediction unit may add the REF to the merge candidate list after reviewing all validities of the candidates in the current layer.
  • the prediction unit may add REF to b, which is an order after considering the candidate on the left side of the current block and the candidate on the upper side one by one. That is, the prediction unit may include the REFs in the merge candidate list after examining the validity of the candidate on the left side of the current block and the candidate on the upper side one by one.
  • the number of candidates included in the merge candidate list of the interlayer motion prediction of Table 2, that is, the maximum number of candidates may be the same as in Table 1.
  • the candidates of the current layer that are lower than the REF may be excluded from the merge candidate list according to the position where the REF is included to match the maximum number of candidates.
  • the REF may be excluded from the merge candidate list.
  • the number of candidates included in the merge candidate list of the interlayer motion prediction of Table 2, that is, the maximum number of candidates may be different from that of Table 1.
  • the maximum number of candidates in Table 2 may be one more than in the case of Table 1 in consideration of REF.
  • the merge candidate list may be completed by including REF in a predetermined position or a predetermined order.
  • the position of the REF in the merge candidate list or the order in which the REFs are added may be predetermined, may be indicated by the encoding apparatus, or may be derived by the decoding apparatus.
  • Which candidate from among the candidates in the merge candidate list is used to perform the merge mode may be indicated from the encoding apparatus.
  • the prediction unit selects a candidate indicated by the information received from the encoding apparatus (for example, merge index merge_idx) on the merge candidate list as shown in Table 2, and selects a prediction block for the current block based on the block indicated by the selected motion information. Can be generated.
  • Table 3 shows an example of a candidate list configured when the MVP mode is applied in the current layer without referring to another layer as inter prediction.
  • a mode of inter prediction using MVP is called an AMVP mode
  • a list composed of candidate MVPs used at this time is called an AMVP list.
  • A1, B1, B0, A0, B2, COL and A and B are the same as A and B in MVP mode described using A1, B1, B0, A0, B2, COL and FIG. .
  • the method of constructing the MVP candidate list of inter prediction in Table 3 is the same as in the MVP mode of inter prediction described above with reference to FIG. 3.
  • the topmost candidate may be assigned the smallest index, and the bottommost candidate may be assigned the largest index.
  • the prediction unit performs inter prediction using information in the current layer without referring to another layer, that is, the reference layer, or determines the identity between A and B when the reference PU of the reference layer is invalid or predicted in the intra mode. If A and B are the same, one of A and B can be excluded from the AMVP list. This process may be performed when determining the validity of B, may be performed after determining A and B, or may be performed after determining the validity of COL or after determining the validity of COL.
  • the prediction unit may determine the availability of the COL candidate when the number of candidates included in the AMVP list is A and B less than the maximum number, for example, 2, and add the COL candidates to the AMVP list.
  • the prediction unit may add a predetermined candidate (eg, zero merge candidate) to the merge candidate list.
  • a predetermined candidate eg, zero merge candidate
  • the prediction unit may construct an MVP candidate list including motion information derived from a reference layer.
  • the motion vector derived from the reference layer is referred to as a reference layer candidate
  • REF may be the REF illustrated in FIG. 5.
  • Table 4 shows an example of an AMVP list constructed by the prediction unit when the MVP mode of inter-layer motion prediction is applied according to the present invention.
  • Table 4 describes the order in which reference layer candidates are added to the AMVP list according to the present invention.
  • A1, B1, B0, A0, B2, COL and A and B are the same as A and B in MVP mode described using A1, B1, B0, A0, B2, COL and FIG. .
  • the method of constructing the AMVP list with A, B, and COL is the same as described above with reference to FIG. 3.
  • the topmost candidate may be assigned the smallest index, and the bottommost candidate may be assigned the largest index.
  • the prediction unit may include the REF in any order of a to e in the AMVP list of Table 4.
  • the prediction unit may allocate the smallest index (eg, 0) to REF and include it in the order of a. That is, the prediction unit may add REF to the AMVP list first.
  • the prediction unit may allocate the largest index (eg, the maximum number of candidates that can be included in the AMVP list minus 1) to the REF and add it to the order of e. That is, the prediction unit may add REF to the end of the AMVP list.
  • the largest index eg, the maximum number of candidates that can be included in the AMVP list minus 1
  • the prediction unit may include REF in d which is an order after considering all candidates in the current layer.
  • the prediction unit may add REF to c, which is the order after the spatial candidates.
  • the prediction unit may include the REF in the position b after considering the candidate on the left side of the current block and before considering the candidate on the upper side.
  • the number of candidates included in the AMVP list of interlayer motion prediction of Table 4, that is, the maximum number of candidates may be the same as in Table 3.
  • the candidates of the current layer that is lower than the REF may be excluded from the AMVP list, depending on the position where the REF is included to match the maximum number of candidates.
  • the REF may be excluded from the AMVP list.
  • the REF at position ⁇ may be excluded from the AMVP list.
  • the number of candidates included in the AMVP list of interlayer motion prediction of Table 4, that is, the maximum number of candidates may be different from that of Table 3.
  • the maximum number of candidates in Table 4 may be one more than in the case of Table 3 (eg, 2) in consideration of REF.
  • the AMVP list may be configured as candidates of the current layer, and then the AMVP list may be completed by including REF in a predetermined position.
  • the position of the REF in the AMVP list may be predetermined, may be indicated by the encoding apparatus, or may be derived by the decoding apparatus.
  • the prediction unit may select a candidate whose information received from the encoding device indicates on the AMVP list as shown in Table 4, and may derive the motion vector for the current block by using the selected motion vector and mvd received from the encoding device.
  • the prediction unit may generate a prediction block for the current block based on the derived motion vector and the reference picture indicated by the reference index received from the encoding apparatus.
  • the prediction unit may scale mvIL before adding REF to the AMVP list.
  • mvIL may be scaled.
  • the POC of the picture indicated by the reference index of the current PU (the reference picture of the current PU) and the POC of the picture indicated by the reference index of the reference PU (the reference picture of the reference PU) are different, mvIL can be scaled. have.
  • FIG. 6 is a diagram schematically illustrating a method of scaling mvIL in accordance with the present invention.
  • a difference between the POC of the current picture and the POC of the reference picture 620 of the current PU 600 in the current layer is referred to as tb, and the POC of the current picture and the reference picture of the reference PU 610 in the reference layer.
  • the difference between POCs at 630 is called td.
  • the prediction unit scales the REF, that is, mvIL, and includes it in the AMVP. You can.
  • mvIL may be scaled in the same manner as in Equation 3.
  • the scaled mvIL is called mvIL '.
  • DistScaleFactor Clip3 (? 4096, 4095, (tb * tx + 32) >> 6)
  • mvIL ’ Clip3 (? 8192, 8191.75, Sign (DistScaleFactor * mvIL) *
  • pocCurr represents the POC of the current picture
  • pocRef is the POC of the picture indicated by the reference index of the current PU
  • pocRefLayer is indicated by the reference index of the reference PU, that is, the reference index of (xRef, yRef). POC of the picture.
  • Abs (x) becomes? X when x is smaller than 0, and x when x is greater than or equal to 0.
  • Clip3 (x, y.c) becomes x when z is smaller than x, y when z is larger than y, and z otherwise.
  • the prediction unit scales the interlayer motion vector based on the distance from each layer to the reference picture, as shown in Equation 3, and scales the scaled motion vector candidate (ie, scaled mvIL or scaled REF). Can be added to AMVP list.
  • the prediction unit may include the scaled REF (ie, scaled mvIL) in the AMVP list instead of the REF (ie, mvIL), and perform interlayer motion prediction using the AMVP mode in the same manner as described above.
  • the encoding apparatus may apply an optimal prediction mode by performing RDO for inter prediction and inter-layer motion prediction.
  • the candidate candidates are derived when deriving the merge candidate list or the AMVP list without referring to the reference layer.
  • the method of determining redundancy may be applied to determining redundancy of motion information of the current layer.
  • the prediction unit may configure the merge candidate list as shown in Table 5, and may determine the redundancy of the candidates along with the usefulness determination when constructing the merge candidate list.
  • the index of the smallest value is assigned to the REF derived from the reference layer. That is, the prediction unit sets REF as the first candidate of the merge candidate list without performing a separate redundancy determination. In this case, since the redundancy determination is not performed with the other merge candidates with respect to the REF, independence with the other merge candidates can be maintained. If the independence of REF is maintained, there is an advantage that a merge candidate list can be derived in parallel.
  • the prediction unit may configure the merge candidate list as shown in Table 6, and may determine the redundancy of the candidates along with the usefulness determination in constructing the merge candidate list.
  • redundancy with REF is determined for all merge candidates other than REF.
  • candidates identical to REFs among A1, B1, B0, A0, B2 and COL are not added to the merge candidate list.
  • the prediction unit may determine a redundancy of the REF only for some of the candidates other than the REF by combining a method of not determining the redundancy of the REF and all the candidates and a method of determining the redundancy of the REF and all the candidates.
  • the prediction unit may perform redundancy determination on only some predetermined candidates as shown in Tables 7 and 8 and add candidates that do not overlap with the REF to the merge candidate list.
  • the prediction unit determines the redundancy with the REF only for the remaining A1, B1, B0, A0, and B2 without determining the redundancy with the REF for the COL.
  • the prediction unit may determine redundancy with REF when adding A1 and B1 to the candidate list, and may omit redundancy determination for the remaining candidates B0, A0, B2, and COL.
  • the complexity of the redundancy determination can be reduced.
  • the merge candidate determined to be redundant with the REF is not limited to A1 and B1 and may be changed to another candidate.
  • Candidates that are subject to redundancy judgment may be set as candidates that have the greatest influence on complexity reduction based on the experimental results.
  • the number of candidates for which redundancy determination with REF is omitted may also be changed to another number, which may also be set based on experimental values.
  • the prediction unit may allocate REF to the middle or last index of the merge candidate list rather than the smallest index among the merge candidate lists.
  • the prediction unit may determine the redundancy of all previous merge candidates and the REF, or may determine the redundancy of the specific some candidates and the REF.
  • Table 9 shows the case where REF is added to the merge list after A1, B1, B0, A0, and B2.
  • the prediction unit determines candidate validity and redundancy in the order of A1, B1, B0, A0, and B2, adds A1, B1, B0, A0, and B2 to the merge candidate list according to the determination result, and then REF Can be added to the candidate list.
  • REF may be determined to be redundant with A1 and B1 among A1, B1, B0, A0, and B2. That is, REF may be added to the candidate list only if it is different from A1 and different from B1.
  • the prediction unit may further determine whether REF and B2 are redundant in addition to A1 and B1, and may add the candidate to the candidate list when REF does not overlap with B2.
  • two or more REFs instead of one may be included in the merge candidate list.
  • It may be motion information of a PU specified by a location.
  • the motion information of the reference PU specified at the 8 position of the reference layer is referred to as REF 1
  • the motion information of the reference PU specified to the X position of the reference layer is referred to as REF 2.
  • redundancy may also be determined between REF 1 and REF 2 of two reference PUs.
  • Table 10 shows a merge candidate list including REF 1 and REF 2.
  • the prediction unit may determine the redundancy with REF 1 when adding REF 1 to the first merge candidate list and adding A1 and B1 to the candidate list.
  • the prediction unit may determine the validity of the REF 2 after determining the validity of the spatial merge candidates A1, B1, B0, A0, and B2, and may determine the redundancy of the REF 1 and the REF 2.
  • REF 2 may be added to the merge candidate list in a different order from Table 10, for example, may be added to the end of the merge candidate list. Even in this case, when REF 2 is added to the merge candidate list, redundancy with REF 1 may be determined.
  • the prediction unit may configure the AMVP list of inter-layer motion prediction as shown in Table 11, and may determine the redundancy of the candidates along with the determination of the usefulness of the candidate when constructing the AMVP list.
  • the index of the smallest value is assigned to the REF derived from the reference layer. That is, the prediction unit sets REF as the first candidate of the AMVP list without performing a separate redundancy determination. In this case, since the redundancy determination is not performed with the other merge candidates with respect to the REF, independence with other AMVP candidates can be maintained. If the independence of REF is maintained, there is an advantage of deriving AMVP lists in parallel.
  • the prediction unit may configure the AMVP list as shown in Table 12.
  • the prediction unit may determine the redundancy of candidates along with the usefulness determination.
  • the prediction unit may determine a redundancy with the REF only for some of the candidates other than the REF by combining a method of not determining the redundancy of the REF and all the candidates and a method of determining the redundancy of the REF and all the candidates.
  • the prediction unit may perform redundancy determination on only some predetermined candidates as shown in Tables 13 and 14, and add candidates that do not overlap with the REF to the AMVP list.
  • the prediction unit determines the redundancy with the REF only for the remaining A and B, without determining the redundancy with the REF for the COL and the zero motion vector candidates.
  • the prediction unit may determine redundancy with the REF only when A, B1, and COL are added to the AMVP list, and omit the redundancy determination with respect to the zero motion vector candidate.
  • the complexity of the redundancy determination can be reduced.
  • the prediction unit may determine the redundancy of either REF or AREF.
  • candidates to be subjected to redundancy determination may be set as candidates having the greatest influence on complexity reduction based on the experimental results.
  • the number of candidates for which redundancy determination with REF is omitted may also be set based on experimental values.
  • the predictor may allocate REF to the middle or last index of the AMVP list rather than the smallest index among the AMVP lists.
  • the prediction unit may determine the redundancy of all previous merge candidates and the REF, or may determine the redundancy of the specific some candidates and the REF. Table 15 shows the case where REF is added to the AMVP list after A and B.
  • the prediction unit may determine candidate validity and redundancy in the order of A and B, add A and B to the AMVP list according to the determination result, and then add REF to the candidate list.
  • REF may be determined to be redundant with A and B. That is, REF is different from A and can be added to the AMVP list only if it is different from B.
  • the prediction unit may determine the redundancy of the REF with either A or B.
  • the prediction unit may add the REF to the AMVP list after the COL.
  • redundancy with all of A, B, and COL may be determined, or redundancy with some candidates may be determined.
  • FIG. 7 is a control flowchart illustrating a method of decoding an image according to an embodiment of the present invention.
  • the predictor first configures a motion prediction list by determining whether at least one of motion information of a neighboring block of a current block and motion information of a COL block is overlapped with a reference block (S701).
  • the motion prediction list may include inter-layer inter prediction for the current block, that is, a merge candidate list for inter-layer motion prediction or a list for the motion vector predictor, that is, an AMVP list.
  • the motion information may be a motion vector and a reference index, and if the motion prediction list is an AMVP list, the motion information may be information about the motion vector.
  • the predictor includes a motion prediction list based on the motion information of adjacent neighboring blocks of the current block, the motion information of the COL block corresponding to the current block in the corresponding picture of the current block, and the motion information of the reference block of the reference layer corresponding to the current block.
  • the motion information for the neighboring block may be B, which is motion information selected from among the motion information A, B1, B0, and B2 selected from A1, B1, B0, A0, B2, A1 and A0 of FIG. 5, and the motion for the neighboring block.
  • the information may be included in at least one list.
  • the predictor determines whether at least one of the motion information of the neighboring block and the motion information of the COL block is overlapped with the reference block when constructing the motion prediction list. Such redundancy determination may be included in the process of determining the validity of the motion information when the motion information is added to the motion prediction list.
  • the prediction unit adds, to the motion prediction list, only motion information that is not the same as the motion information of the reference block that does not overlap with the motion information of the reference block.
  • the method will be described in more detail with reference to FIG. 8.
  • inter prediction on the current block is performed based on the motion prediction list (S702).
  • the decoding apparatus receives a merge index and residual information of the current block for which candidate from the merge candidate list to use.
  • the decoding apparatus derives the prediction block for the current block based on the received merge index information, and adds the received residual information to the prediction block to restore the current block.
  • the decoding apparatus receives a reference index for a reference picture, difference information for a motion vector, flag information for an MVP candidate, and residual information of a current block from an encoding device.
  • the decoding apparatus derives a motion vector for the current block based on the difference information for the motion vector and the motion vector predictor, and generates a predictive block for the current block using the reference picture.
  • the current block is reconstructed by the addition of the received residual information and the prediction block.
  • FIG. 8 is a control flowchart illustrating a method of constructing a motion candidate list according to an embodiment of the present invention.
  • the predictor sets motion information of a reference block as a candidate of a motion prediction list (S801).
  • the motion information of the reference block may be assigned the lowest index of the motion prediction list.
  • the prediction unit determines the redundancy of the motion information of the reference block and the predetermined motion information among the motion information of the neighboring blocks of the current block which is spatial motion information (S802).
  • the spatial motion information to be added to the motion prediction list may be at least one.
  • the prediction unit may determine validity in order of spatial motion information A1, B1, B0, A0, and B2, and may determine the motion information and redundancy of the reference block with respect to A1 and B1 when determining the validity. .
  • the prediction unit is not limited to A1 and B1, and may determine redundancy between other motion information and motion information of the reference block.
  • the prediction unit judges the validity of the motion information A selected from A1 and A0 and B, which is motion information selected from B1, B0, and B2, and when determining the validity, both A and B or A and B It is possible to determine the motion information and redundancy of one of the and the reference block.
  • the prediction unit may also determine the redundancy of the motion information of the COL block and the motion information of the reference block (S803).
  • the prediction unit may set motion information that is not the same as motion information of the reference block as a candidate of the motion prediction list (S804).
  • the prediction unit adds motion information of the neighboring block that is not the same as motion information of the reference block as a candidate of the motion prediction list, and if the motion information of the COL block and the motion information of the reference block are not the same, the motion information of the COL block. Is added to the candidate of the motion prediction list. This step may be performed after step S802 and after step S803, respectively.
  • Steps S802 and S803 may be both performed by the prediction unit, or only one of them may be performed.
  • the prediction unit adds the motion information of the at least one neighboring block and / or the motion information of the COL block as a candidate of the motion prediction list, and then adds the motion information of the reference block to the motion prediction list. can do.
  • the prediction unit may determine whether or not it is identical to at least one of the motion information already added to the motion prediction list.
  • the prediction unit may determine the redundancy of the predetermined number of predetermined motion information candidates and the motion information of the reference block.
  • the preset number of predetermined motion information candidates may be set by an experimental value.
  • the prediction unit may determine whether or not the motion information of the reference block is duplicated with all motion information added to or to be added to the motion prediction list.

Abstract

The present invention relates to a method of predicting an interlayer, and a device using the same, the method including the steps of: creating a first block including a value obtained by up-sampling a reconstructed value of a reference block of a reference layer corresponding to the current block; creating a second block including a prediction value induced based on an intra prediction mode of the current block; and creating a prediction block of the current block by combining the sample values of the first block and the second block. Thus, it is possible to perform intra prediction on the current layer by using intra prediction mode information on another layer.

Description

영상 복호화 방법 및 이를 이용하는 장치Image decoding 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 inter 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 removing candidate redundancy in inter-layer inter prediction and an apparatus using the same.
또한, 본 발명은 인터 레이어 인터 예측 시 후보의 중복성을 제거할 때 복잡도를 감소시키는 방법 및 이를 이용하는 장치를 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a method for reducing complexity when removing redundancy of candidates in inter-layer inter prediction and an apparatus using the same.
본 발명의 일 실시형태는 현재 블록의 인접한 주변 블록의 움직임 정보, 상기 현재 블록의 대응 픽처 내에서 상기 현재 블록에 대응하는 COL 블록의 움직임 정보 및 상기 현재 블록에 대응하는 참조 레이어의 참조 블록의 움직임 정보에 기초하여 움직임 예측 리스트를 구성하는 단계와, 상기 움직임 예측 리스트를 기반으로 상기 현재 블록의 인터 예측을 수행하는 단계를 포함하고, 상기 움직임 예측 리스트를 구성하는 단계는 상기 주변 블록의 움직임 정보 및 상기 COL 블록의 움직임 정보 중 적어도 하나와 상기 참조 블록과의 중복성 여부를 판단하는 단계를 포함할 수 있다. An embodiment of the present invention provides motion information of adjacent neighboring blocks of a current block, motion information of a COL block corresponding to the current block within a corresponding picture of the current block, and movement of a reference block of a reference layer corresponding to the current block. Constructing a motion prediction list based on the information, and performing inter prediction of the current block based on the motion prediction list, wherein constructing the motion prediction list comprises: motion information of the neighboring block; The method may include determining whether at least one of the motion information of the COL block is overlapped with the reference block.
이 때, 상기 움직임 예측 리스트를 구성하는 단계는, 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계와, 적어도 하나의 상기 주변 블록의 움직임 정보 중 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 단계와, 판단 결과, 상기 참조 블록의 움직임 정보와 동일하지 않는 상기 주변 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계를 포함할 수 있다.The configuring of the motion prediction list may include setting motion information of the reference block as a candidate of the motion prediction list, preset motion information among the motion information of at least one neighboring block, and the reference block. And determining the redundancy of the motion information of, and setting the motion information of the neighboring block, which is not the same as the motion information of the reference block, as a candidate of the motion prediction list.
상기 움직임 리스트는 상기 현재 블록의 머지 후보 리스트이고, 상기 움직임 리스트를 구성하는 단계는, 상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록, 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록, 상기 현재 블록의 우측 상단 코너 블록, 상기 현재 블록의 좌측 하단 코너 블록, 상기 현재 블록의 좌측 상단 코너 블록 순으로 유효성을 판단하는 단계를 포함하고, 상기 유효성을 판단하는 단계 시 상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록 및 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록의 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단할 수도 있다. The motion list is a merge candidate list of the current block, and the constituting the motion list may include at least a lowermost block among neighboring blocks adjacent to a left side of the current block and at a rightmost side among neighboring blocks adjacent to an upper end of the current block. Determining validity in order of a located block, an upper right corner block of the current block, a lower left corner block of the current block, and an upper left corner block of the current block; and in the determining of the validity, The redundancy of the motion information of the block located at the lowermost end of the neighboring blocks adjacent to the left side and the block located at the rightmost side of the neighboring blocks adjacent to the top of the current block may be determined.
또는 상기 움직임 리스트는 상기 현재 블록의 움직임 벡터 예측자 리스트이고, 상기 움직임 리스트를 구성하는 단계는, 상기 현재 블록의 좌측 하단 코너 블록 및 상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록으로부터 선택된 제1 움직임 정보, 상기 현재 블록의 우측 상단 코너 블록, 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록 및 상기 현재 블록의 좌측 상단 코너 블록으로부터 선택된 제2 움직임 정보의 유효성을 판단하는 단계를 포함하고, 상기 유효성을 판단하는 단계 시 제1 움직임 정보 및 상기 제 움직임 정보 중 적어도 하나와 상기 참조 블록의 움직임 정보의 중복성을 판단할 수도 있다. Alternatively, the motion list is a motion vector predictor list of the current block, and the constituting the motion list may include selecting from a lowermost corner block among a lower left corner block of the current block and a neighboring block adjacent to the left side of the current block. Determining the validity of the second motion information selected from first motion information, an upper right corner block of the current block, a block located at the rightmost side among neighboring blocks adjacent to an upper end of the current block, and an upper left corner block of the current block; In the determining of the validity, at least one of the first motion information and the first motion information and the motion information of the reference block may be determined.
한편, 상기 움직임 예측 리스트를 구성하는 단계는, 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계와, 상기 COL 블록의 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 단계와, 판단 결과, 상기 COL 블록의 움직임 정보와 상기 참조 블록의 움직임 정보가 동일하지 않으면, 상기 COL블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계를 포함할 수도 있다.The configuring of the motion prediction list may include setting motion information of the reference block as a candidate of the motion prediction list, and determining redundancy of motion information of the COL block and motion information of the reference block. And, as a result of the determination, if the motion information of the COL block and the motion information of the reference block is not the same, setting the motion information of the COL block as a candidate of the motion prediction list.
다른 실시예에 따르면, 상기 움직임 리스트를 구성하는 단계는, 적어도 하나의 상기 주변 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계와, 상기 적어도 하나의 상기 주변 블록의 움직임 정보 중 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 단계와, 판단 결과, 상기 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보가 동일하지 않으면, 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계를 포함할 수 있다. According to another exemplary embodiment, the constructing the motion list may include setting motion information of at least one neighboring block as a candidate of the motion prediction list, and preset motion information among the motion information of the at least one neighboring block. Determining the redundancy of the motion information and the motion information of the reference block; and if the predetermined motion information and the motion information of the reference block are not the same as the result of the determination, the motion information of the reference block is candidate of the motion prediction list. It may include the step of setting to.
상기 움직임 예측 리스트를 구성하는 단계는, 상기 COL 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계와, 상기 참조 블록의 움직임 정보와 상기 COL 블록의 움직임 정보의 중복성을 판단하는 단계와, 판단 결과, 상기 참조 블록의 움직임 정보와 상기 COL 블록의 움직임 정보가 동일하지 않으면, 상기 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계를 포함할 수 있다. The constructing the motion prediction list may include setting motion information of the COL block as a candidate of the motion prediction list, determining a redundancy of motion information of the reference block and motion information of the COL block; As a result of the determination, if the motion information of the reference block and the motion information of the COL block are not the same, setting the motion information of the reference block as a candidate of the motion prediction list.
한편, 상기 주변 블록의 움직임 정보 및 상기 참조 블록의 움직임 정보 모두와 상기 참조 블록과의 중복성 여부를 판단할 수도 있다. Meanwhile, it may be determined whether the motion information of the neighboring block and the motion information of the reference block overlap with the reference block.
본 발명의 다른 형태에 따른 영상 복호화 장치는 현재 블록의 인접한 주변 블록의 움직임 정보, 상기 현재 블록의 대응 픽처 내에서 상기 현재 블록에 대응하는 COL 블록의 움직임 정보 및 상기 현재 블록에 대응하는 참조 레이어의 참조 블록의 움직임 정보에 기초하여 움직임 예측 리스트를 구성하고, 상기 움직임 예측 리스트를 기반으로 상기 현재 블록의 인터 예측을 수행하는 예측부를 포함하고, 상기 예측부는 상기 주변 블록의 움직임 정보 및 상기 COL 블록의 움직임 정보 중 적어도 하나와 상기 참조 블록과의 중복성 여부를 판단할 수 있다.According to another aspect of the present invention, an apparatus for decoding an image may include: motion information of adjacent neighboring blocks of a current block, motion information of a COL block corresponding to the current block in a corresponding picture of the current block, and a reference layer corresponding to the current block. Comprising a motion prediction list based on the motion information of the reference block, and comprises a prediction unit for performing the inter prediction of the current block based on the motion prediction list, the prediction unit of the motion information of the neighboring block and the COL block It may be determined whether at least one of the motion information overlaps with the reference block.
본 발명의 일 실시예에 따르면, 다른 레이어의 정보를 이용하여 현재 레이어에 대한 인터 예측을 수행하는 방법 및 이를 이용하는 장치가 제공된다. According to an embodiment of the present invention, a method of performing inter 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 for removing candidate redundancy in inter-layer inter prediction and an apparatus using the same are provided.
또한, 본 발명의 일 실시예에 따르면 인터 레이어 인터 예측 시 후보의 중복성을 제거할 때 복잡도를 감소시키는 방법 및 이를 이용하는 장치가 제공된다.In addition, according to an embodiment of the present invention, a method for reducing complexity when removing redundancy of candidates in inter-layer inter prediction 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 diagram schematically illustrating candidates of motion information used for inter prediction.
도 4 는 본 발명에 따라서 참조 레이어의 움직임 정보를 유도하는 방법을 개략적으로 설명하는 도면이다. 4 is a diagram schematically illustrating a method of deriving motion information of a reference layer according to the present invention.
도 5는 참조 레이어를 참조하여 현재 레이어 내에서 인터 예측을 수행하는 경우에 이용되는 움직임 정보의 후보들을 개략적으로 도시한 도면이다.5 is a diagram schematically illustrating candidates of motion information used when inter prediction is performed in a current layer with reference to a reference layer.
도 6은 본 발명에 따라서 mvIL을 스케일링하는 방법을 개략적으로 설명하는 도면이다.6 is a diagram schematically illustrating a method of scaling mvIL in accordance with the present invention.
도 7은 본 발명의 일 실시예에 따라 영상을 복호화 하는 방법을 설명하는 제어 흐름도이다.7 is a control flowchart illustrating a method of decoding an image according to an embodiment of the present invention.
도 8은 본 발명의 일 실시예에 따라 움직임 후보 리스트를 구성하는 방법을 설명하는 제어 흐름도이다.8 is a control flowchart illustrating a method of constructing a motion candidate list according to an 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 reordering unit, the inverse quantization unit, and the inverse transform unit have been described. However, as in the encoding apparatus of FIG. 1, the decoding apparatus is configured 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.
복수의 레이어를 포함하는 영상의 특성 상, 참조 레이어와 현재 레이어 간에는 강한 연관성(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. In scalable video coding using the correlation, the information of the current picture is predicted by using the reference picture information. Inter-layer prediction may be performed.
인터 레이어 인터 예측은 인터 레이어 움직임 예측이라고도 불리며, 본 명세서에서는 발명의 이해를 돕기 위해, 필요에 따라서 인터 레이어 움직임 예측과 인터 레이어 인터 예측의 표현을 혼용할 수 있다.Inter-layer inter prediction is also called inter-layer motion prediction, and in the present specification, inter layer motion prediction and expression of inter-layer inter prediction may be mixed as necessary for better understanding of the present invention.
인터 레이어 움직임 예측에서는 참조 레이어(베이스 레이어)의 움직임 정보를 이용하여 현재 레이어(인핸스먼트 레이어)의 현재 블록에 대한 예측을 수행할 수 있다. 인터 레이어 움직임 예측은 도 1 및 도 2의 예측부(110, 235)에서 수행될 수 있다.In 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). Inter-layer motion prediction may be performed by the predictors 110 and 235 of FIGS. 1 and 2.
도 3은 다른 레이어를 참조하지 않고 레이어 내에서 인터 예측을 수행하는 경우(이하, ‘인터 예측’이라 함)에 이용되는 움직임 정보의 후보들에 대한 일 예를 간단히 나타낸 것이다. 3 briefly illustrates an example of candidates for motion information used when inter prediction is performed in a layer without referring to another layer (hereinafter, referred to as 'inter prediction').
도 3에서 A0, A1, B0, B1, B2, COL은 해당 블록을 지시할 수도 있고, 해당 블록의 움직임 정보를 지시할 수도 있다. 이때, 해당 블록의 움직임 정보는 움직임 벡터일 수도 있고, 움직임 벡터와 참조 픽처 인덱스일 수도 있다.In FIG. 3, A0, A1, B0, B1, B2, and COL may indicate a corresponding block or may indicate motion information of the corresponding block. In this case, the motion information of the corresponding block may be a motion vector or a motion vector and a reference picture index.
여기서는 인터 예측의 방법에 관해 베이스 레이어의 경우를 일 예로서 설명하도록 한다. Here, the case of the base layer will be described as an example of the inter prediction method.
베이스 레이어에서의 인터 예측은 도 1 및 도 2의 예측부(140, 275)에서 수행될 수 있다. Inter prediction in the base layer may be performed by the prediction units 140 and 275 of FIGS. 1 and 2.
인터 예측의 모드로는 머지(merge) 모드, 스킵 모드 그리고 MVP(Motion Vector Predicot)를 이용하는 모드가 있다. MVP를 이용하는 모드를 설명의 편의를 위해 AMVP(advanced MVP) 모드라고 할 수 있다. The modes of inter prediction include a merge mode, a skip mode, and a mode using a motion vector predicot (MVP). The mode using the MVP may be referred to as an advanced MVP (AMVP) mode for convenience of description.
머지 모드에서는 도 3에 도시된 주변 블록(neighboring block)들의 움직임 정보(이하, 움직임 정보 후보라 함)들 중에서 선택된 움직임 정보를 현재 블록의 움직임 정보로 이용할 수 있다. 선택되는 움직임 정보 후보를 지시하는 인코딩 장치로부터 디코딩 장치로 전송될 수 있다. In the merge mode, motion information selected from motion information (hereinafter, referred to as motion information candidates) of neighboring blocks illustrated in FIG. 3 may be used as motion information of the current block. It can be transmitted from the encoding device indicating the selected motion information candidate to the decoding device.
스킵 모드에서는 머지 모드와 동일하게 선택된 움직임 정보 후보의 움직임 정보를 현재 블록의 움직임 정보로 사용하지만, 레지듀얼이 생성/전송되지 않는다. In the skip mode, the motion information of the motion information candidate selected as in the merge mode is used as the motion information of the current block, but the residual is not generated / transmitted.
머지 모드 또는 스킵 모드가 적용되는 경우에, 예측부는 현재 블록 주변의 공간적 후보들인 A0, A1, B0, B1, B2에 대한 가용성을 판단할 수 있다. 가용성 판단은 소정의 순서로 진행될 수 있다. 예컨대, A1→B1→B0→A1→B2의 순서로 진행될 수 있다. When the merge mode or the skip mode is applied, the prediction unit may determine the availability for the spatial candidates A0, A1, B0, B1, and B2 around the current block. Availability determination may proceed in a predetermined order. For example, the process may proceed in the order of A1 → B1 → B0 → A1 → B2.
이때, 각 후보들의 가용성 판단에는 이전 후보와의 동일성 판단이 포함될 수 있다. 예컨대, B1에 대하여, A1과 움직임 정보가 동일한지를 고려하여 가용성 판단을 할 수 있다. 구체적으로, A1이 가용하고 A1과 B1의 움직임 정보가 동일하면 B1은 가용하지 않은 것으로 판단할 수 있다. In this case, the availability determination of each candidate may include determining the sameness as the previous candidate. For example, with regard to B1, availability determination may be made in consideration of whether A1 and motion information are the same. Specifically, if A1 is available and the motion information of A1 and B1 is the same, it may be determined that B1 is not available.
같은 방법으로, B0는 B1과 움직임 정보가 동일한지를 고려하여 가용성 판단을 할 수 있으며, A0은 A1과 움직임 정보가 동일한지를 고려하여 가용성 판단을 할 수 있다. In the same manner, B0 may determine availability by considering whether motion information is identical to B1, and A0 may determine availability by considering whether motion information is identical to A1.
B2는 A1과 움직임 정보가 동일한지, B1과 움직임 정보가 동일한지를 모두 고려하여 가용성 판단을 할 수 있으며, 이때, 앞선 네 후보(A0, A1, B0, B1)가 모두 가용한 경우에는 가용하지 않은 것으로 판단할 수도 있다. B2 may determine availability by considering whether both A1 and motion information are the same and whether B1 and motion information are the same.In this case, when all four previous candidates (A0, A1, B0, and B1) are available, they are not available. It can also be judged.
COL 후보를 사용하는 경우에는, 참조 픽처 리스트를 이용하여 COL 후보가 포함된 COL 픽처를 특정할 수 있다. 현재 블록과 동일 CTB(coding tree block) 내에 있는 COL 블록에 대하여 소정 위치를 포함하는 예측 블록의 움직임 정보를 COL후보로 할 수 있다. 이때, COL 후보의 움직임 벡터는 COL 픽처와 현재 픽처의 참조 픽처들을 고려하여 스케일링될 수 있으며, COL 후보의 참조 인덱스는 소정의 값(예컨대, 0)으로 설정될 수 있다.When a COL candidate is used, a COL picture including a COL candidate may be specified using a reference picture list. Motion information of a prediction block including a predetermined position with respect to a COL block in the same coding tree block (CTB) as the current block may be used as a COL candidate. In this case, the motion vector of the COL candidate may be scaled in consideration of the COL picture and the reference pictures of the current picture, and the reference index of the COL candidate may be set to a predetermined value (eg, 0).
COL 후보를 포함하여 가용한 것(available)으로 판단된 후보들로, 가용성 판단 순서에 따라 머지 후보 리스트가 구성될 수 있다. With candidates determined to be available including COL candidates, a merge candidate list may be constructed according to the availability determination order.
이때, 현재 블록의 슬라이스 타입이 B(즉, 양방향 예측이 적용되는 슬라이스)이고 현재 머지 후보 리스트에 포함된 후보의 개수가 최대 개수보다 적은 경우에는 머지 후보 리스트에 후보들(조합 양 예측 후보, combined bi-prediction candidates)이 추가될 수 있다. In this case, when the slice type of the current block is B (ie, a slice to which bidirectional prediction is applied) and the number of candidates included in the current merge candidate list is less than the maximum number, candidates (combined amount prediction candidates, combined bi) are included in the merge candidate list. Prediction candidates may be added.
상술한 바와 같이, 머지 후보 리스트가 구성된 후에도 머지 후보 리스트에 포함된 후보의 개수가 최대 개수보다 적은 경우에는 소정의 후보(예컨대, 제로 머지 후보)가 머지 후보 리스트에 추가될 수 있다. As described above, if the number of candidates included in the merge candidate list is smaller than the maximum number even after the merge candidate list is configured, a predetermined candidate (eg, zero merge candidate) may be added to the merge candidate list.
예측부는 인코딩 장치로부터 전송된 정보(예컨대, 머지 인덱스 merge_idx)가 머지 후보 리스트 상에서 지시하는 후보의 움직임 정보를 현재 블록에 대한 움직임 정보로 이용하여 인터 예측을 수행할 수 있다. 예컨대, 예측부는 머지 인덱스에 의해 선택된 후보의 움직임 정보가 지시하는 샘플들을 현재 블록의 예측 블록으로 할 수 있다. The prediction unit may perform inter prediction by using motion information of a candidate indicated by information transmitted from the encoding apparatus (eg, merge index merge_idx) on the merge candidate list as motion information for the current block. For example, the prediction unit may use the samples indicated by the motion information of the candidate selected by the merge index as the prediction block of the current block.
한편, AMVP 모드가 적용되는 경우에도, 예측부는 MVP 후보로 구성되는 AMVP 리스트를 구성할 수 있다. On the other hand, even when the AMVP mode is applied, the prediction unit may construct an AMVP list composed of MVP candidates.
AMVP 모드에서, 예측부는 A0→A1으로 후보의 가용성을 판단하고, B0→B1→B2으로 후보의 가용성을 판단한다. In the AMVP mode, the prediction unit determines the availability of the candidate from A0 → A1, and determines the availability of the candidate from B0 → B1 → B2.
A0→A1의 순서로 후보의 가용성을 판단할 때, 예측부는 ① 가용한 후보로서 현재 블록과 동일한 참조 픽처를 가지는 후보가 있는 경우 해당 후보를 AMVP 리스트에 포함시킬 수 있다. ①을 만족하는 후보가 없는 경우에, 예측부는 ② 현재 픽처와 현재 픽처의 참조 픽처 사이의 POC(Picture Order Count) 차이 및 현재 픽처와 후보의 참조 픽처 사이 POC 차이에 기반하여, 가용한 것으로 먼저 검색된 후보의 움직임 벡터를 스케일링할 수 있다. 예측부는 스케일링된 움직임 벡터를 AMVP 리스트에 포함시킬 수 있다. In determining the availability of the candidate in the order of A0 → A1, the prediction unit may include the candidate in the AMVP list when there is a candidate having the same reference picture as the current block as an available candidate. If no candidate satisfies ①, the prediction unit is first searched as available based on the difference in POC (Picture Order Count) between the current picture and the reference picture of the current picture and the POC difference between the current picture and the reference picture of the candidate. The motion vector of the candidate may be scaled. The prediction unit may include the scaled motion vector in the AMVP list.
B0→B1→B2의 순서로 후보의 가용성을 판단할 때, 예측부는 ① 가용한 후보로서 현재 블록과 동일한 참조 픽처를 가지는 후보가 있는 경우 해당 후보를 AMVP 리스트에 포함시킨다. ①을 만족하는 후보가 없고 A0과 A1 중에 가용한 후보가 없는 경우에, 예측부는 ② 현재 픽처와 현재 픽처의 참조 픽처 사이의 POC(Picture Order Count) 차이 및 현재 픽처와 후보의 참조 픽처 사이 POC 차이에 기반하여, 가용한 것으로 먼저 검색된 후보의 움직임 벡터를 스케일링할 수 있다. 예측부는 스케일링된 움직임 벡터를 AMVP 리스트에 포함시킬 수 있다.In determining the availability of the candidates in the order of B0-> B1-> B2, the prediction unit includes the candidate in the AMVP list if there are candidates having the same reference picture as the current block as available candidates. When no candidate satisfies ① and no candidates are available among A0 and A1, the prediction unit includes a ② picture order count (POC) difference between the current picture and the reference picture of the current picture, and a POC difference between the current picture and the reference picture of the candidate. Based on, it is possible to scale the motion vector of the candidate found first as available. The prediction unit may include the scaled motion vector in the AMVP list.
COL 후보(시간적 후보)를 사용하는 경우에는, 참조 픽처 리스트를 이용하여 COL 후보가 포함된 COL 픽처를 특정할 수 있다. 현재 블록과 동일 CTB 내에 있는 COL 블록에 대하여 소정 위치를 포함하는 예측 블록의 움직임 정보를 COL후보로 할 수 있다. 이때, COL 후보의 움직임 벡터는 COL 픽처와 현재 픽처의 참조 픽처들을 고려하여 스케일링될 수 있다.In the case of using a COL candidate (temporal candidate), a COL picture including a COL candidate may be specified using a reference picture list. The motion information of the prediction block including the predetermined position with respect to the COL block in the same CTB as the current block may be used as a COL candidate. In this case, the motion vector of the COL candidate may be scaled in consideration of the COL picture and reference pictures of the current picture.
A0→A1의 순서로 후보의 가용성을 판단하여 결정된 MVP 후보를 A라고 하고, B0→B1→B2의 순서로 후보의 가용성을 판단하여 결정된 MVP 후보를 B라고 하며, 시간적 후보에 대한 가용성 판단에 의해 결정된 MVP 후보를 COL이라고 할 때, AMVP 리스트는 [A B COL]의 순서로 구성될 수 있다. The MVP candidate determined by judging the availability of the candidate in the order of A0 → A1 is called A, and the MVP candidate determined by judging the availability of the candidate in the order of B0 → B1 → B2 is called B, and the availability of the temporal candidate is determined by When the determined MVP candidate is called COL, the AMVP list may be configured in the order of [AB COL].
이때, 예측부는 A와 B가 동일한 경우에는 둘 중 하나를 AMVP 리스트로부터 삭제할 수 있다. In this case, when A and B are the same, the prediction unit may delete one of them from the AMVP list.
또한, 예측부는 A, B 및 COL이 모두 유효한 경우에는 AMVP 리스트 내 MVP 후보들의 개수를 2로 조정할 수 있다. 예컨대, 예측부는 A와 B로 AMVP 리스트를 구성하고, COL을 AMVP 리스트에서 제거할 수 있다.The prediction unit may adjust the number of MVP candidates in the AMVP list to 2 when all of A, B, and COL are valid. For example, the prediction unit may configure the AMVP list with A and B, and remove the COL from the AMVP list.
예측부는 AMVP 리스트 내 후보들의 개수가 2보다 적은 경우에는 제로(0) 움직임 벡터를 후보로 추가할 수도 있다.The predictor may add zero motion vectors as candidates when the number of candidates in the AMVP list is less than two.
인코딩 장치는 AMVP 리스트 상에서 현재 블록에 대한 인터 예측에 사용할 MVP를 지시하는 MVP 인덱스, 움직임 벡터의 차분 mvd(motion vector difference)와 참조 픽처 리스트 상에서 현재 블록에 대한 참조 픽처를 지시하는 참조 인덱스를 디코딩 장치로 전송할 수 있다. 참조 픽처 리스트는 인터 예측에 사용될 수 있는 참조 픽처들의 리스트로서, 순방향 예측에 대한 L0과 역방향 예측에 대한 L1이 있다.The encoding apparatus decodes an MVP index indicating an MVP to use for inter prediction on a current block on an AMVP list, a motion vector difference (mvd) of a motion vector, and a reference index indicating a reference picture for a current picture on a reference picture list. Can be sent to. The reference picture list is a list of reference pictures that can be used for inter prediction, and there are L0 for forward prediction and L1 for backward prediction.
예측부는 MVP 인덱스가 지시하는 MVP와 mvd로부터 유도한 움직임 벡터와 참조 인덱스가 지시하는 참조 픽처를 기반으로 현재 블록에 대한 예측 블록을 생성할 수 있다. The prediction unit may generate a prediction block for the current block based on the motion vector derived from the MVP and the mvd indicated by the MVP index and the reference picture indicated by the reference index.
머지 모드/스킵 모드 또는 AMVP 모드를 적용하여 예측 블록이 생성되면, 예측부는 예측 블록과 레지듀얼을 기반으로 현재 블록에 대한 복원 블록을 생성할 수 있다. 스킵 모드가 적용되는 경우에는 레지듀얼이 전송되지 않으므로, 예측부는 예측 블록을 복원 블록으로 이용할 수 있다.When the prediction block is generated by applying the merge mode / skip mode or the AMVP mode, the prediction unit may generate a reconstruction block for the current block based on the prediction block and the residual. Since the residual is not transmitted when the skip mode is applied, the prediction unit may use the prediction block as the reconstruction block.
지금까지는 인터 예측의 방법으로서 베이스 레이어(레이어 0)의 경우를 예로 설명하였으나, 인핸스먼트 레이어(레이어 1)에서도 다른 레이어의 정보를 이용하지 않고 인터 예측을 수행하는 경우에는 위에서 설명한 것과 동일한 방법으로 인터 예측을 수행할 수 있다.Until now, the case of the base layer (layer 0) has been described as an example of inter prediction. However, when the inter prediction is performed without using information of another layer in the enhancement layer (layer 1), the inter prediction is performed in the same manner as described above. You can make predictions.
베이스 레이어에 대하여 상술한 바와 같이 인터 예측이 수행되면, 인핸스먼트 레이어에서는 베이스 레이어의 움직임 정보를 이용하여 인터 레이어 움직임 예측(inter-layer motion prediction)을 수행할 수 있다.When inter prediction is performed on the base layer as described above, the enhancement layer may perform inter-layer motion prediction using motion information of the base layer.
인터 레이어 움직임 예측은 인코딩 장치와 디코딩 장치의 예측부에서 수행할 수 있다. Inter-layer motion prediction may be performed by the prediction units of the encoding apparatus and the decoding apparatus.
이하, 도면을 참조하여, 본 발명에 따른 인터 레이어 인트라 예측을 구체적으로 설명한다.Hereinafter, inter-layer intra prediction according to the present invention will be described in detail with reference to the drawings.
1. 참조 레이어의 움직임 정보 유도 1. Derivation of motion information of reference layer
도 4는 본 발명에 따라서 참조 레이어의 움직임 정보를 유도하는 방법을 개략적으로 설명하는 도면이다. 도 4에서는 현재 레이어는 참조 레이어의 상위 레이어로서, 현재 레이어의 해상도가 참조 레이어의 해상도보다 높은 경우를 예로서 설명한다. 4 is a diagram schematically illustrating a method of deriving motion information of a reference layer according to the present invention. In FIG. 4, a case in which the current layer is an upper layer of the reference layer and the resolution of the current layer is higher than the resolution of the reference layer will be described as an example.
도 4를 참조하면, 현재 레이어의 PU(410, 현재 PU)에 대응하는 참조 레이어의 PU(400, 참조 PU)를 기반으로 현재 PU가 특정될 수 있다. Referring to FIG. 4, a current PU may be specified based on a PU 400 of a reference layer corresponding to a PU 410 of the current layer (current PU).
현재 PU를 특정하는 위치를 (xCurr, yCurr)이라고 하고, 현재 PU에 대응하는 참조 레이의 위치, 예컨대 참조 PU를 특정하는 위치를 (xRef, yRef)라고 하자.Let the position specifying the current PU be (xCurr, yCurr), and the position of the reference ray corresponding to the current PU, for example, the position specifying the reference PU, be (xRef, yRef).
참조 레이어의 움직임 벡터로부터 유도할 인터 레이어 움직임 벡터를 mvIL이라고 하고, (xRef, yRef)에 의해 특정되는 참조 레이어의 움직임 벡터(예컨대, 참조 PU의 움직임 벡터)를 mvRL이라고 하자.Let the inter-layer motion vector to be derived from the motion vector of the reference layer be mvIL, and the motion vector (eg, the motion vector of the reference PU) specified by (xRef, yRef) be mvRL.
도 4에서 nPSW는 현재 PU(410)의 너비(width)이고, nPSH는 현재 PU(410의 높이(height)이다.In FIG. 4, nPSW is the width of the current PU 410, and nPSH is the height of the current PU 410.
예측부는 현재 PU를 특정하고, 현재 PU의 위치를 기반으로 참조 PU를 특정하여, 참조 PU의 움직임 정보(예컨대 움직임 벡터)를 유도할 수 있다. The prediction unit may specify a current PU and specify a reference PU based on the location of the current PU to derive motion information (eg, a motion vector) of the reference PU.
(1) 현재 PU를 특정하는 위치 (xCurr, yCurr) 결정 (1) Determine the position (xCurr, yCurr) specifying the current PU
현재 PU를 특정하는 위치 (xCurr, yCurr)는 아래 ① ~ ⑫와 같은 후보들 중에 어느 하나로 결정될 수 있다.The position (xCurr, yCurr) that specifies the current PU may be determined by any one of the following candidates, such as?
① LT = ( xP, yP )① LT = (xP, yP)
② RT = ( xP + nPSW - 1, yP )② RT = (xP + nPSW-1, yP)
③ LB = ( xP, yP + nPSH - 1 )③ LB = (xP, yP + nPSH-1)
④ RB = ( xP + nPSW - 1, yP + nPSH - 1 )④ RB = (xP + nPSW-1, yP + nPSH-1)
⑤ LT’ = ( xP - 1, yP - 1 )⑤ LT '= (xP-1, yP-1)
⑥ RT’ = ( xP + nPSW, yP - 1 )⑥ RT ’= (xP + nPSW, yP-1)
⑦ LB’ = ( xP - 1, yP + nPSH )⑦ LB ’= (xP-1, yP + nPSH)
⑧ RB’ = ( xP + nPSW, yP + nPSH )⑧ RB '= (xP + nPSW, yP + nPSH)
⑨ C0 = ( xP + (nPSW>>1) -1, yP + (nPSH>>1) -1 )⑨ C0 = (xP + (nPSW >> 1) -1, yP + (nPSH >> 1) -1)
⑩ C1 = ( xP + (nPSW>>1), yP + (nPSH>>1) -1 )⑩ C1 = (xP + (nPSW >> 1), yP + (nPSH >> 1) -1)
⑪ C2 = ( xP + (nPSW>>1) -1, yP + (nPSH>>1) )2 C2 = (xP + (nPSW >> 1) -1, yP + (nPSH >> 1))
⑫ C3 = ( xP + (nPSW>>1), yP + (nPSH>>1) )3 C3 = (xP + (nPSW >> 1), yP + (nPSH >> 1))
현재 PU를 특정하는 위치 (xCurr, yCurr)는 ① ~ ⑫ 중 어느 하나로 결정되어 고정적으로 사용될 수도 있고, 인코딩 장치에서 RDO를 통해 결정한 뒤 어느 위치를 (xCurr, yCurr)로 사용할 것인지를 시그널링할 수도 있다.The position (xCurr, yCurr) that specifies the current PU may be determined and used in any one of ① to ,, or may be signaled to determine which position (xCurr, yCurr) to use after determining through RDO in the encoding apparatus. .
혹은 참조 레이어(베이스 레이어)에서 PU를 특정하는 위치에 대응하여, 동일한 위치를 현재 레이어(인핸스먼트 레이어)의 PU를 특정하는 위치로 결정할 수도 있다. 예컨대, 참조 레이어에서 PU 내 좌상단을 PU를 특정하는 위치로 이용하는 경우에는, 현재 레이어에서도 PU 내 좌상단 LT = ( xP, yP )를 (xCurr, yCurr)로 결정하여 이용할 수도 있다.Alternatively, the same position may be determined as the position specifying the PU of the current layer (enhanced layer) in response to the position specifying the PU in the reference layer (base layer). For example, when the upper left end of the PU is used as a position for specifying the PU in the reference layer, the upper left LT = (xP, yP) in the PU may be determined and used as (xCurr, yCurr) in the current layer.
(2) 참조 레이어의 대상 위치 (xRef, yRef) (2) the target position of the reference layer (xRef, yRef)
참조 레이어에서 움직임 벡터를 가져올 위치(참조 PU의 위치)는 현재 PU의 위치로부터 현재 레이어와 참조 레이어 간의 비에 따라서 결정될 수 있다. A position to obtain a motion vector in the reference layer (the position of the reference PU) may be determined according to the ratio between the current layer and the reference layer from the position of the current PU.
수식 1은 본 발명에 따라서 참조 레이어에서 움직임 벡터를 가져올 위치를 결정하는 방법을 나타낸 것이다.Equation 1 shows a method of determining a position to obtain a motion vector in a reference layer according to the present invention.
<수식 1><Equation 1>
xRef = xCurr/scalexRef = xCurr / scale
yRef = yCurr/scale yRef = yCurr / scale
이때, 참조 레이어에 대한 현재 레이어의 비를 나타내는 scale은 두 레이어 해상도에 따라서 결정될 수 있다. 예컨대, 현재 레이어의 해상도가 참조 레이어의 해상도의 2 배라면, 적용되는 scale의 값은 2가 된다. 현재 레이어의 해상도와 참조 레이어의 해상도가 동일하다면, 적용되는 scale의 값은 1이 된다.In this case, the scale representing the ratio of the current layer to the reference layer may be determined according to two layer resolutions. For example, if the resolution of the current layer is twice the resolution of the reference layer, the value of scale applied is 2. If the resolution of the current layer is the same as that of the reference layer, the scale applied is 1.
여기서는 현재 레이어와 참조 레이어 사이의 해상도 비로서 scale의 값을 결정하였으나, 본 발명은 이에 한정되지 않는다. scale은 현재 레이어와 참조 레이어 사이에 적용되는 스케일러빌러티의 종류에 따라서 결정될 수도 있다. 예컨대, scale은 현재 레이어와 참조 레이어 사이의 픽처 크기 비, 프레임 레이트 비일 수도 있다.Here, although the value of scale is determined as the resolution ratio between the current layer and the reference layer, the present invention is not limited thereto. The scale may be determined according to the type of scalability applied between the current layer and the reference layer. For example, scale may be a picture size ratio and a frame rate ratio between the current layer and the reference layer.
예측부는 (xRef, yRef) 위치의 움직임 벡터, 즉 (xRef, yRef)를 커버하는 PU(참조 PU)의 움직임 벡터를 mvRL로서 유도할 수 있다. The prediction unit may derive the motion vector of the position (xRef, yRef), that is, the motion vector of the PU (reference PU) covering (xRef, yRef) as mvRL.
또한, 예측부는 (xRef, yRef)를 커버하는 PU(참조 PU)의 참조 인덱스를 인터 레이어 움직임 예측에 사용할 참조 인덱스 refIdxIL로서 유도할 수 있다.In addition, the prediction unit may derive the reference index of the PU (reference PU) covering (xRef, yRef) as the reference index refIdxIL to be used for inter-layer motion prediction.
예측부는 mvRL을 스케일링하여 인터 레이어 움직임 예측(인터 레이어 인터 예측)에 사용할 움직임 벡터 mvIL를 유도할 수 있다. The prediction unit may induce a motion vector mvIL to be used for inter-layer motion prediction (inter-layer inter prediction) by scaling mvRL.
수식 2는 본 발명에 따라서 mvRL을 스케일링하여 mvIL을 유도하는 방법을 나타낸 것이다.Equation 2 shows a method of inducing mvIL by scaling mvRL according to the present invention.
<수식 2><Formula 2>
mvIL = scale * mvRLmvIL = scale * mvRL
수식 2에서 계수 scale은 수식 1에서와 마찬가지로 참조 레이어에 대한 현재 레이어의 비를 나타낸다. 예컨대, 현재 레이어의 해상도가 참조 레이어의 해상도의 2 배라면, 적용되는 scale의 값은 2가 된다. In Equation 2, the coefficient scale represents the ratio of the current layer to the reference layer as in Equation 1. For example, if the resolution of the current layer is twice the resolution of the reference layer, the value of scale applied is 2.
현재 레이어의 해상도와 참조 레이어의 해상도가 동일하다면, 적용되는 scale의 값은 1이 되며, 예측부는 mvRL을 mvIL로 이용할 수 있다.If the resolution of the current layer is the same as that of the reference layer, the applied scale value is 1, and the prediction unit may use mvRL as mvIL.
2. 참조 레이어로부터 유도한 움직임 정보를 이용한 인터 레이어 인터 예측2. Interlayer Inter Prediction Using Motion Information Derived from Reference Layer
예측부는 참조 레이어로부터 유도한 움직임 정보를 이용하여 현재 레이어(인핸스먼트 레이어)의 현재 블록에 대한 인터 레이어 인터 예측을 수행할 수 있다. 참조 레이어로부터 유도한 움직임 정보는 움직임 벡터 mvIL과 참조 인덱스 refIdxIL을 포함한다.The prediction unit may perform interlayer inter prediction on the current block of the current layer (enhanced layer) using motion information derived from the reference layer. The motion information derived from the reference layer includes a motion vector mvIL and a reference index refIdxIL.
예컨대, 머지 모드/스킵 모드가 적용되는 경우에, 예측부는 mvIL과 refIdxIL을 머지 후보로서 현재 블록에 대한 머지 후보 리스트에 추가할 수 있다. For example, when the merge mode / skip mode is applied, the prediction unit may add mvIL and refIdxIL as merge candidates to the merge candidate list for the current block.
또한, AMVP 모드가 적용되는 경우에, 예측부는 mvIL을 MVP 후보로서 현재 블록에 대한 AMVP 리스트에 추가할 수 있다. In addition, when the AMVP mode is applied, the prediction unit may add mvIL as an MVP candidate to the AMVP list for the current block.
(1) 머지 모드가 적용되는 경우(1) When merge mode is applied
표 1은 앞서 설명한 바와 같이, 인터 예측으로서 다른 레이어를 참조하지 않고 레이어 내에서 머지 모드가 적용되는 경우에, 구성되는 머지 후보 리스트의 일 예를 나타낸 것이다.As described above, Table 1 shows an example of a merge candidate list configured when merge mode is applied in a layer without referring to another layer as inter prediction.
표 1
Figure PCTKR2013005489-appb-T000001
Table 1
Figure PCTKR2013005489-appb-T000001
표 1에서 A1, B1, B0, A0, B2, COL은 도 3의 A1, B1, B0, A0, B2, COL와 동일하다. 또한, 표 1에서 인터 예측의 머지 후보 리스트를 구성하는 방법은 앞서 도 3을 참조하여 설명한 인터 예측의 머지 모드에서와 동일하다. In Table 1, A1, B1, B0, A0, B2 and COL are the same as A1, B1, B0, A0, B2 and COL of FIG. In addition, the method of constructing the merge candidate list of inter prediction in Table 1 is the same as in the merge mode of the inter prediction described above with reference to FIG. 3.
표 1에서 제일 위에 위치하는 후보에는 가장 작은 값의 인덱스가 할당될 수 있고, 가장 아래에 위치하는 후보에는 가장 큰 값의 인덱스가 할당될 수 있다.  In Table 1, the candidate located at the top may be assigned the index of the smallest value, and the candidate located at the bottom may be assigned the index of the largest value.
표 1과 같이 다른 레이어, 즉 참조 레이어를 참조하지 않고 현재 레이어 내의 정보를 이용하여 인터 예측을 수행하거나 또는 참조 레이어의 참조 PU가 유효하지 않거나 인트라 모드로 예측된 경우에는 예측부는 A1, B1, B0, A0, B2의 중복성을 고려하여 머지 후보 리스트를 유도할 수 있다. As shown in Table 1, when the inter prediction is performed using information in the current layer without referring to another layer, that is, the reference layer, or when the reference PU of the reference layer is invalid or predicted in the intra mode, the prediction unit A1, B1, B0. The merge candidate list may be derived in consideration of the redundancy of A0 and B2.
상술한 바와 같이, 예측부는 A1→B1→B0→A0→B2의 순서로 후보들의 가용성을 판단할 수 있고, 가용성 판단 시 중복성을 고려하여 후보들을 리스트에서 제외시킬 수 있다. As described above, the prediction unit may determine the availability of candidates in the order of A1 → B1 → B0 → A0 → B2, and may exclude candidates from the list in consideration of redundancy when determining availability.
예측부는 B1에 대하여, A1와의 움직임 정보의 동일성을 판단하고, A1과 B1의 움직임 정보가 동일하지 않은 경우, B1를 후보 리스트에 추가할 수 있다. The prediction unit determines the sameness of the motion information with A1 with respect to B1, and adds B1 to the candidate list when the motion information between A1 and B1 is not the same.
유사하게, B0는 B1과 움직임 정보가 동일한지 고려되며 예측부는 B0과 B1의 움직임 정보가 동일하지 않은 경우, B0를 후보 리스트에 추가할 수 있다.Similarly, B0 considers whether the motion information is the same as B1 and the prediction unit may add B0 to the candidate list when the motion information of B0 and B1 is not the same.
또한, 예측부는 A0은 A1과 움직임 정보가 동일한지를 고려하여 A0과 A1의 움직임 정보가 동일하지 않은 경우, A1를 후보 리스트에 추가할 수 있다.The prediction unit A0 may add A1 to the candidate list when the motion information of A0 and A1 is not the same, considering whether A1 is identical to the motion information.
B2는 A1과 움직임 정보가 동일한지, B1과 움직임 정보가 동일한지를 모두 고려하여 가용성 판단을 할 수 있으며, 이때, 앞선 네 후보(A0, A1, B0, B1)가 모두 가용한 경우에는 가용하지 않은 것으로 판단할 수도 있다. 예측부는 B2의 움직임 정보가 A1 및 B1의 움직임 정보와 모두 다르고, 앞선 네 후보(A0, A1, B0, B1)가 모두 가용하지 않은 경우 B2를 후보 리스트에 추가할 수 있다. B2 may determine availability by considering whether both A1 and motion information are the same and whether B1 and motion information are the same.In this case, when all four previous candidates (A0, A1, B0, and B1) are available, they are not available. It can also be judged. The predictor may add B2 to the candidate list when the motion information of B2 is different from the motion information of A1 and B1, and all four previous candidates A0, A1, B0, and B1 are not available.
예측부는 COL 후보의 가용성을 판단하고, COL 후보를 포함하여 가용한 것(available)으로 판단된 후보들로, 가용성 판단 순서에 따라 머지 후보 리스트를 구성할 수 있다. The prediction unit may determine the availability of the COL candidates, and may construct a merge candidate list according to the availability determination order, from the candidates determined to be available including the COL candidates.
이때, 예측부는 현재 머지 후보 리스트에 포함된 후보의 개수가 최대 개수보다 적은 경우에는 머지 후보 리스트에 후보들(조합 양 예측 후보, combined bi-prediction candidates)을 추가할 수 있다. In this case, when the number of candidates currently included in the merge candidate list is less than the maximum number, the prediction unit may add candidates (combined bi-prediction candidates) to the merge candidate list.
상술한 바와 같이, 머지 후보 리스트가 구성된 후에도 머지 후보 리스트에 포함된 후보의 개수가 최대 개수보다 적은 경우에는 소정의 후보(예컨대, 제로 머지 후보)가 머지 후보 리스트에 추가될 수 있다. As described above, if the number of candidates included in the merge candidate list is smaller than the maximum number even after the merge candidate list is configured, a predetermined candidate (eg, zero merge candidate) may be added to the merge candidate list.
또한, 예측부는 A1, B1, B0, A0, B2 간의 동일성을 배제하고 리스트를 구성한 뒤, A1, B1, B0, A0, B2, COL 간의 동일성을 한번에 판단할 수 있다. 이 경우, 동일한 후보 중 하나를 남기는 작업은 COL의 유효성을 판단한 후에 수행될 수 있다. In addition, the predictor may determine the identity between A1, B1, B0, A0, B2, and COL at a time after constructing a list by excluding the identity between A1, B1, B0, A0, and B2. In this case, the task of leaving one of the same candidates may be performed after determining the validity of the COL.
반면, 인터 레이어 움직임 예측이 적용되는 경우에, 예측부는 표 1과 달리 참조 레이어로부터 유도한 움직임 정보를 포함하는 머지 후보 리스트를 구성할 수 있다. On the other hand, when inter-layer motion prediction is applied, unlike the Table 1, the prediction unit may construct a merge candidate list including motion information derived from a reference layer.
도 5는 참조 레이어를 참조하여 현재 레이어 내에서 인터 예측을 수행하는 경우에 이용되는 움직임 정보의 후보들에 대한 일 예를 간단히 나타낸 것이다. 5 briefly illustrates an example of candidates for motion information used when inter prediction is performed in a current layer with reference to a reference layer.
도 5에서 A0, A1, B0, B1, B2, COL, REF은 해당 블록을 지시할 수도 있고, 해당 블록의 움직임 정보를 지시할 수도 있다. 이때, 해당 블록의 움직임 정보는 움직임 벡터일 수도 있고, 움직임 벡터와 참조 픽처 인덱스일 수도 있다. In FIG. 5, A 0, A 1, B 0, B 1, B 2, COL, and REF may indicate a corresponding block or may indicate motion information of the corresponding block. In this case, the motion information of the corresponding block may be a motion vector or a motion vector and a reference picture index.
여기서는 설명의 편의를 위해, 참조 레이어로부터 유도한 움직임 정보를 참조 레이어 후보(reference layer candidate) REF라고 한다. REF는 mvIL과 refIdxIL을 포함한다.For convenience of explanation, the motion information derived from the reference layer is referred to as a reference layer candidate REF. REF includes mvIL and refIdxIL.
도 5의 A0, A1, B0, B1, B2, COL은 도 3의 A0, A1, B0, B1, B2, COL과 동일하며, A0, A1, B0, B1, B2, COL를 이용하여 머지 후보 리스트를 구성하는 방법 역시 상술한 도 3을 참조하여 설명한 바와 동일하다. A0, A1, B0, B1, B2, and COL of FIG. 5 are the same as A0, A1, B0, B1, B2, and COL of FIG. 3, and merge candidate lists using A0, A1, B0, B1, B2, and COL. The method of constructing is also the same as described above with reference to FIG.
표 2는 본 발명에 따라서 인터 레이어 움직임 예측의 머지 모드가 적용되는 경우에 예측부에 의해 구성되는 머지 후보 리스트의 일 예를 나타낸 것이다. 표 2는 본 발명에 따라서 참조 레이어 후보가 머지 후보 리스트에 추가되는 순서를 설명한다.Table 2 shows an example of a merge candidate list configured by the prediction unit when the merge mode of inter-layer motion prediction is applied according to the present invention. Table 2 describes the order in which reference layer candidates are added to the merge candidate list according to the present invention.
표 2
Figure PCTKR2013005489-appb-T000002
TABLE 2
Figure PCTKR2013005489-appb-T000002
표 2에서 가장 위에 위치하는 후보에는 가장 작은 값의 인덱스가 할당될 수 있고, 가장 아래에 위치하는 후보에는 가장 큰 값의 인덱스가 할당될 수 있다.In Table 2, the topmost candidate may be assigned the smallest index, and the bottommost candidate may be assigned the largest index.
인터 레이어 움직임 예측의 머지 모드가 적용되는 경우에, 예측부는 표 2의 머지 후보 리스트에서 ⓐ ~ ⓕ 중의 어느 한 순서에 REF를 포함시킬 수 있다. When the merge mode of the inter-layer motion prediction is applied, the prediction unit may include the REF in any order of ⓐ to ⓕ in the merge candidate list of Table 2.
예컨대, 예측부는 REF에 가장 작은 인덱스(예컨대, 0)을 할당하여 머지 후보 리스트의 ⓐ 순서에 포함시킬 수 있다. 즉, 예측부는 머지 후보 리스트에 REF를 가장 먼저 추가할 수 있다.For example, the prediction unit may allocate the smallest index (eg, 0) to REF and include it in the order of merge candidate list. That is, the prediction unit may first add REF to the merge candidate list.
또한, 예측부는 REF에 가장 큰 인덱스(예컨대, 머지 후보 리스트에 포함될 수 있는 최대 후보 개수 - 1)를 할당하여 머지 후보 리스트의 ⓕ 순서에 포함시킬 수도 있다. 즉, 예측부는 머지 후보 리스트에 REF를 가장 늦게 추가할 수도 있다.In addition, the prediction unit may allocate the largest index (eg, the maximum number of candidates that can be included in the merge candidate list minus 1) to the REF and include it in the order of the merge candidate list. That is, the prediction unit may add the REF to the merge candidate list at the latest.
예측부는 공간적 후보들 다음의 순서인 ⓒ에 REF를 추가할 수도 있다. 즉, 예측부는 공간적 후보들의 유효성을 판단한 후에 REF를 머지 후보 리스트에 추가할 수도 있다. The prediction unit may add REF to ⓒ which is the order after the spatial candidates. That is, the prediction unit may add the REF to the merge candidate list after determining the validity of the spatial candidates.
또한, 예측부는 현재 레이어 내의 후보들 중 단방향 예측에 대한 후보들 다음 그리고 조합 양방향 후보 전의 순서인 ⓓ에 REF를 추가할 수도 있다. 즉, 예측부는 현재 레이어 내의 후보들 중 단방향 예측의 후보들에 대한 유효성을 판단하고, 조합 양방향 후보를 추가하기 전에 REF를 머지 후보 리스트에 추가할 수도 있다.In addition, the prediction unit may add REF to ⓓ after the candidates for unidirectional prediction among the candidates in the current layer and before the combined bidirectional candidate. That is, the prediction unit may determine the validity of the candidates of the unidirectional prediction among the candidates in the current layer, and add the REF to the merge candidate list before adding the combined bidirectional candidate.
예측부는 현재 레이어 내의 후보들을 모두 고려한 뒤의 순서인 ⓔ에 REF를 추가할 수도 있다. 즉, 예측부는 현재 레이어 내의 후보들에 대한 유효성을 모두 검토한 후에 REF를 머지 후보 리스트에 추가할 수도 있다. The prediction unit may add REF to ⓔ, which is an order after considering all candidates in the current layer. That is, the prediction unit may add the REF to the merge candidate list after reviewing all validities of the candidates in the current layer.
아울러, 예측부는 현재 블록 좌측의 후보와 상측의 후보를 하나씩 고려한 후의 순서인 ⓑ에 REF를 추가할 수도 있다. 즉, 예측부는 현재 블록 좌측의 후보와 상측의 후보의 유효성을 하나씩 검토한 후에 REF를 머지 후보 리스트에 포함시킬 수도 있다.In addition, the prediction unit may add REF to ⓑ, which is an order after considering the candidate on the left side of the current block and the candidate on the upper side one by one. That is, the prediction unit may include the REFs in the merge candidate list after examining the validity of the candidate on the left side of the current block and the candidate on the upper side one by one.
표 2의 인터 레이어 움직임 예측의 머지 후보 리스트에 포함되는 후보의 개수, 즉 최대 후보 개수는 표 1과 동일할 수 있다. 이 경우, 최대 후보 개수를 맞추기 위해 REF가 포함되는 위치에 따라서, REF보다 후순위에 있는 현재 레이어의 후보들이 머지 후보 리스트에서 제외될 수도 있다. 또한, REF보다 선순위에 있는 현재 레이어의 후보들로 최대 후보 개수가 충족되는 경우에는 REF가 머지 후보 리스트에서 제외될 수도 있다.The number of candidates included in the merge candidate list of the interlayer motion prediction of Table 2, that is, the maximum number of candidates may be the same as in Table 1. In this case, the candidates of the current layer that are lower than the REF may be excluded from the merge candidate list according to the position where the REF is included to match the maximum number of candidates. In addition, when the maximum number of candidates is satisfied as candidates of the current layer that are higher than REF, the REF may be excluded from the merge candidate list.
표 2의 인터 레이어 움직임 예측의 머지 후보 리스트에 포함되는 후보의 개수, 즉 최대 후보 개수는 표 1과 상이할 수도 있다. 예컨대, 표 2에서 최대 후보 개수는 REF를 고려하여 표 1의 경우보다 하나 더 많을 수 있다. 이 경우에는 현재 레이어의 후보들로 머지 후보 리스트가 구성된 뒤, REF를 소정의 위치 혹은 소정의 순서에 포함시킴으로써 머지 후보 리스트를 완성한다고 볼 수도 있다. 이때, 머지 후보 리스트 내에서 REF의 위치 혹은 추가되는 순서는 미리 정해져 있을 수도 있고, 인코딩 장치로부터 지시되거나 디코딩 장치에 의해 유도될 수 있다. The number of candidates included in the merge candidate list of the interlayer motion prediction of Table 2, that is, the maximum number of candidates may be different from that of Table 1. For example, the maximum number of candidates in Table 2 may be one more than in the case of Table 1 in consideration of REF. In this case, after the merge candidate list is formed of candidates of the current layer, the merge candidate list may be completed by including REF in a predetermined position or a predetermined order. In this case, the position of the REF in the merge candidate list or the order in which the REFs are added may be predetermined, may be indicated by the encoding apparatus, or may be derived by the decoding apparatus.
머지 후보 리스트 내의 후보들 중에서 어떤 후보를 이용하여 머지 모드를 수행할 것인지는 인코딩 장치로부터 지시될 수 있다. 예컨대, 예측부는 인코딩 장치로부터 수신한 정보(예컨대, 머지 인덱스 merge_idx)가 표 2와 같은 머지 후보 리스트 상에서 지시하는 후보를 선택하고, 선택된 움직임 정보가 지시하는 블록을 기반으로 현재 블록에 대한 예측 블록을 생성할 수 있다. Which candidate from among the candidates in the merge candidate list is used to perform the merge mode may be indicated from the encoding apparatus. For example, the prediction unit selects a candidate indicated by the information received from the encoding apparatus (for example, merge index merge_idx) on the merge candidate list as shown in Table 2, and selects a prediction block for the current block based on the block indicated by the selected motion information. Can be generated.
(2) MVP (AMVP) 모드가 적용되는 경우(2) When MVP (AMVP) mode is applied
표 3은, 앞서 설명한 바와 같이, 인터 예측으로서 다른 레이어를 참조하지 않고 현재 레이어 내에서 MVP 모드가 적용되는 경우에, 구성되는 후보 리스트의 일 예를 나타낸 것이다. 본 명세서에서는 MVP를 이용하는 인터 예측의 모드를 AMVP 모드라고 하며, 이때 이용되는 후보 MVP들로 구성되는 리스트를 AMVP 리스트라고 한다.As described above, Table 3 shows an example of a candidate list configured when the MVP mode is applied in the current layer without referring to another layer as inter prediction. In the present specification, a mode of inter prediction using MVP is called an AMVP mode, and a list composed of candidate MVPs used at this time is called an AMVP list.
표 3
Figure PCTKR2013005489-appb-T000003
TABLE 3
Figure PCTKR2013005489-appb-T000003
표 3에서 A1, B1, B0, A0, B2, COL 그리고 A와 B는 도 3의 A1, B1, B0, A0, B2, COL 및 도 3을 이용하여 설명한 MVP 모드에서의 A 및 B와 동일하다. 또한, 표 3에서 인터 예측의 MVP후보 리스트를 구성하는 방법은 앞서 도 3을 참조하여 설명한 인터 예측의 MVP 모드에서와 동일하다. In Table 3, A1, B1, B0, A0, B2, COL and A and B are the same as A and B in MVP mode described using A1, B1, B0, A0, B2, COL and FIG. . In addition, the method of constructing the MVP candidate list of inter prediction in Table 3 is the same as in the MVP mode of inter prediction described above with reference to FIG. 3.
표 3에서 제일 위에 위치하는 후보에는 가장 작은 값의 인덱스가 할당될 수 있고, 가장 아래에 위치하는 후보에는 가장 큰 값의 인덱스가 할당될 수 있다. In Table 3, the topmost candidate may be assigned the smallest index, and the bottommost candidate may be assigned the largest index.
예측부는 다른 레이어, 즉 참조 레이어를 참조하지 않고 현재 레이어 내의 정보를 이용하여 인터 예측을 수행하거나 또는 참조 레이어의 참조 PU가 유효하지 않거나 인트라 모드로 예측된 경우에는 A, B 사이의 동일성을 판단하여 A와 B가 동일한 경우에는 A와 B 중 하나를 AMVP 리스트에서 제외할 수 있다. 이 과정은 B의 유효성을 판단할 때 수행될 수도 있고, A와 B를 판단한 후에 수행될 수도 있으며, COL의 유효성을 판단하는 경우 혹은 COL의 유효성을 판단한 후에 수행될 수도 있다. The prediction unit performs inter prediction using information in the current layer without referring to another layer, that is, the reference layer, or determines the identity between A and B when the reference PU of the reference layer is invalid or predicted in the intra mode. If A and B are the same, one of A and B can be excluded from the AMVP list. This process may be performed when determining the validity of B, may be performed after determining A and B, or may be performed after determining the validity of COL or after determining the validity of COL.
예측부는 A 및 B로 AMVP 리스트에 포함된 후보의 개수가 최대 개수, 예를 들어 2개 보다 적은 경우 COL 후보의 가용성을 판단하고, COL 후보를 AMVP 리스트에 추가할 수 있다. The prediction unit may determine the availability of the COL candidate when the number of candidates included in the AMVP list is A and B less than the maximum number, for example, 2, and add the COL candidates to the AMVP list.
예측부는 상술한 바와 같이, AMVP 리스트가 구성된 후에도 AMVP 리스트에 포함된 후보의 개수가 최대 개수보다 적은 경우에는 소정의 후보(예컨대, 제로 머지 후보)를 머지 후보 리스트에 추가할 수 있다. As described above, when the number of candidates included in the AMVP list is smaller than the maximum number even after the AMVP list is configured, the prediction unit may add a predetermined candidate (eg, zero merge candidate) to the merge candidate list.
반면, 인터 레이어 움직임 예측이 적용되는 경우에, 예측부는 표 3과 달리 참조 레이어로부터 유도한 움직임 정보를 포함하는 MVP후보 리스트를 구성할 수 있다. 여기서는 참조 레이어로부터 유도한 움직임 벡터를 참조 레이어 후보(refeOn the other hand, when inter-layer motion prediction is applied, unlike the Table 3, the prediction unit may construct an MVP candidate list including motion information derived from a reference layer. Here, the motion vector derived from the reference layer is referred to as a reference layer candidate
rence layer candidate) REF는 도 5에 도시되어 있는 REF일 수 있다.rence layer candidate) REF may be the REF illustrated in FIG. 5.
표 4는 본 발명에 따라서 인터 레이어 움직임 예측의 MVP 모드가 적용되는 경우에 예측부에 의해 구성되는 AMVP 리스트의 일 예를 나타낸 것이다. 표 4는 본 발명에 따라서 참조 레이어 후보가 AMVP 리스트에 추가되는 순서를 설명한다. Table 4 shows an example of an AMVP list constructed by the prediction unit when the MVP mode of inter-layer motion prediction is applied according to the present invention. Table 4 describes the order in which reference layer candidates are added to the AMVP list according to the present invention.
표 4
Figure PCTKR2013005489-appb-T000004
Table 4
Figure PCTKR2013005489-appb-T000004
표 4에서 A1, B1, B0, A0, B2, COL 그리고 A와 B는 도 3의 A1, B1, B0, A0, B2, COL 및 도 3을 이용하여 설명한 MVP 모드에서의 A 및 B와 동일하다. 또한, 표 4에서 A, B, COL로 AMVP 리스트를 구성하는 방법은 앞서 도 3을 참조하여 설명한 바와 동일하다. In Table 4, A1, B1, B0, A0, B2, COL and A and B are the same as A and B in MVP mode described using A1, B1, B0, A0, B2, COL and FIG. . In addition, in Table 4, the method of constructing the AMVP list with A, B, and COL is the same as described above with reference to FIG. 3.
표 4에서 가장 위에 위치하는 후보에는 가장 작은 값의 인덱스가 할당될 수 있고, 가장 아래에 위치하는 후보에는 가장 큰 값의 인덱스가 할당될 수 있다.In Table 4, the topmost candidate may be assigned the smallest index, and the bottommost candidate may be assigned the largest index.
인터 레이어 움직임 예측의 MVP 모드가 적용되는 경우에, 예측부는 표 4의 AMVP 리스트에서 ⓐ ~ ⓔ 중의 어느 한 순서에 REF를 포함시킬 수 있다. When the MVP mode of the inter-layer motion prediction is applied, the prediction unit may include the REF in any order of ⓐ to ⓔ in the AMVP list of Table 4.
예컨대, 예측부는 REF에 가장 작은 인덱스(예컨대, 0)을 할당하여 ⓐ의 순서에 포함시킬 수 있다. 즉, 예측부는 AMVP 리스트에 REF를 가장 먼저 추가할 수 있다.For example, the prediction unit may allocate the smallest index (eg, 0) to REF and include it in the order of ⓐ. That is, the prediction unit may add REF to the AMVP list first.
또한, 예측부는 REF에 가장 큰 인덱스(예컨대, AMVP 리스트에 포함될 수 있는 최대 후보 개수 - 1)를 할당하여 ⓔ의 순서에 추가시킬 수도 있다. 즉, 예측부는 AMVP 리스트의 마지막에 REF를 추가할 수도 있다. In addition, the prediction unit may allocate the largest index (eg, the maximum number of candidates that can be included in the AMVP list minus 1) to the REF and add it to the order of ⓔ. That is, the prediction unit may add REF to the end of the AMVP list.
또한, 예측부는 현재 레이어 내의 후보들을 모두 고려한 뒤의 순서인 ⓓ에 REF를 포함시킬 수도 있다. Also, the prediction unit may include REF in ⓓ which is an order after considering all candidates in the current layer.
예측부는 공간적 후보들 다음의 순서인 ⓒ에 REF를 추가시킬 수도 있다. 또한, 예측부는 현재 블록 좌측의 후보를 고려한 후, 상측의 후보를 고려하기 전의 위치인 ⓑ에 REF를 포함시킬 수도 있다.The prediction unit may add REF to ⓒ, which is the order after the spatial candidates. In addition, the prediction unit may include the REF in the position ⓑ after considering the candidate on the left side of the current block and before considering the candidate on the upper side.
표 4의 인터 레이어 움직임 예측의 AMVP 리스트에 포함되는 후보의 개수, 즉 최대 후보 개수는 표 3과 동일할 수 있다. 이 경우, 최대 후보 개수를 맞추기 위해 REF가 포함되는 위치에 따라서, REF보다 후순위에 있는 현재 레이어의 후보들이 AMVP 리스트에서 제외될 수도 있다. 또한, REF보다 선순위에 있는 현재 레이어의 후보들로 최대 후보 개수가 충족되는 경우에는 REF가 AMVP 리스트에서 제외될 수도 있다.The number of candidates included in the AMVP list of interlayer motion prediction of Table 4, that is, the maximum number of candidates may be the same as in Table 3. In this case, the candidates of the current layer that is lower than the REF may be excluded from the AMVP list, depending on the position where the REF is included to match the maximum number of candidates. In addition, when the maximum number of candidates is satisfied as candidates of the current layer that are higher than REF, the REF may be excluded from the AMVP list.
예컨대, 최대 후보 개수가 2인 경우, ⓒ 위치의 REF는 AMVP 리스트에서 제외될 수도 있다. For example, when the maximum number of candidates is 2, the REF at position © may be excluded from the AMVP list.
표 4의 인터 레이어 움직임 예측의 AMVP 리스트에 포함되는 후보의 개수, 즉 최대 후보 개수는 표 3과 상이할 수도 있다. 예컨대, 표 4에서 최대 후보 개수는 REF를 고려하여 표 3의 경우(예컨대, 2)보다 하나 더 많을 수 있다. 이 경우에는 현재 레이어의 후보들로 AMVP 리스트가 구성된 뒤, REF를 소정의 위치에 포함시킴으로써 AMVP 리스트를 완성한다고 볼 수도 있다. 이때, AMVP 리스트 내에서 REF의 위치는 미리 정해져 있을 수도 있고, 인코딩 장치로부터 지시되거나 디코딩 장치에 의해 유도될 수 있다. The number of candidates included in the AMVP list of interlayer motion prediction of Table 4, that is, the maximum number of candidates may be different from that of Table 3. For example, the maximum number of candidates in Table 4 may be one more than in the case of Table 3 (eg, 2) in consideration of REF. In this case, the AMVP list may be configured as candidates of the current layer, and then the AMVP list may be completed by including REF in a predetermined position. In this case, the position of the REF in the AMVP list may be predetermined, may be indicated by the encoding apparatus, or may be derived by the decoding apparatus.
AMVP 리스트 내의 후보들 중에서 어떤 후보를 이용하여 MVP 모드를 수행할 것인지는 인코딩 장치로부터 지시될 수 있다. 예컨대, 예측부는 인코딩 장치로부터 수신한 정보가 표 4와 같은 AMVP리스트 상에서 지시하는 후보를 선택하고, 선택된 움직임 벡터와 인코딩 장치로부터 수신한 mvd를 이용하여 현재 블록에 대한 움직임 벡터를 유도할 수 있다. 예측부는 유도한 움직임 벡터와 인코딩 장치로부터 수신한 참조 인덱스가 지시하는 참조 픽처를 기반으로 현재 블록에 대한 예측 블록을 생성할 수 있다.Which candidate from among the candidates in the AMVP list is used to perform the MVP mode may be indicated from the encoding apparatus. For example, the prediction unit may select a candidate whose information received from the encoding device indicates on the AMVP list as shown in Table 4, and may derive the motion vector for the current block by using the selected motion vector and mvd received from the encoding device. The prediction unit may generate a prediction block for the current block based on the derived motion vector and the reference picture indicated by the reference index received from the encoding apparatus.
한편, 소정의 조건을 만족하면, 예측부는 AMVP 리스트에 REF를 추가하기 전에 mvIL을 스케일링할 수 있다. Meanwhile, if a predetermined condition is satisfied, the prediction unit may scale mvIL before adding REF to the AMVP list.
예컨대, 현재 PU의 참조 인덱스와 참조 PU의 참조 인덱스(refIdxIL)가 상이한 경우에는 mvIL을 스케일링할 수 있다. 다시 말하면, 현재 PU의 참조 인덱스가 지시하는 픽처(현재 PU의 참조 픽처)의 POC와 참조 PU의 참조 인덱스가 지시하는 픽처(참조 PU의 참조 픽처)의 POC가 상이한 경우에는, mvIL을 스케일링할 수 있다.For example, when the reference index of the current PU and the reference index refIdxIL of the reference PU are different, mvIL may be scaled. In other words, when the POC of the picture indicated by the reference index of the current PU (the reference picture of the current PU) and the POC of the picture indicated by the reference index of the reference PU (the reference picture of the reference PU) are different, mvIL can be scaled. have.
도 6은 본 발명에 따라서 mvIL을 스케일링하는 방법을 개략적으로 설명하는 도면이다. 6 is a diagram schematically illustrating a method of scaling mvIL in accordance with the present invention.
도 6을 참조하면, 현재 레이어에서 현재 픽처의 POC와 현재 PU(600)의 참조 픽처(620)의 POC 간 차이를 tb라고 하고, 참조 레이어에서 현재 픽처의 POC와 참조 PU(610)의 참조 픽처(630)의 POC 간 차이를 td라고 한다. Referring to FIG. 6, a difference between the POC of the current picture and the POC of the reference picture 620 of the current PU 600 in the current layer is referred to as tb, and the POC of the current picture and the reference picture of the reference PU 610 in the reference layer. The difference between POCs at 630 is called td.
현재 PU(600)의 참조 픽처(620)에 대한 POC인 pocRef와 참조 PU(610)의 참조 픽처(630)에 대한 POC인 pocRefLayer가 상이한 경우에, 예측부는 REF 즉, mvIL을 스케일링하여 AMVP에 포함시킬 수 있다. When the pocRef, which is the POC for the reference picture 620 of the current PU 600, and the pocRefLayer, which is the POC for the reference picture 630 of the reference PU 610 are different, the prediction unit scales the REF, that is, mvIL, and includes it in the AMVP. You can.
mvIL은 수식 3과 같은 방법으로 스케일링될 수 있다. 스케일링된 mvIL을 mvIL’이라고 한다. mvIL may be scaled in the same manner as in Equation 3. The scaled mvIL is called mvIL '.
<수식 3><Equation 3>
tx = ( 16384 + ( Abs( td ) >> 1 ) ) / tdtx = (16384 + (Abs (td) >> 1)) / td
DistScaleFactor = Clip3( ?4096, 4095, ( tb * tx + 32 ) >> 6 )DistScaleFactor = Clip3 (? 4096, 4095, (tb * tx + 32) >> 6)
mvIL’ = Clip3( ?8192, 8191.75, Sign( DistScaleFactor * mvIL ) * mvIL ’= Clip3 (? 8192, 8191.75, Sign (DistScaleFactor * mvIL) *
( (Abs( DistScaleFactor * mvIL ) + 127 ) >> 8 ) )((Abs (DistScaleFactor * mvIL) + 127) >> 8))
td = Clip3( ?128, 127, pocCurr ? pocRefLayer )td = Clip3 (? 128, 127, pocCurr? pocRefLayer)
tb = Clip3( ?128, 127, pocCurr ? pocRef )tb = Clip3 (? 128, 127, pocCurr? pocRef)
수식 3에서, pocCurr은 현재 픽처의 POC를 나타내며, pocRef는 현재 PU의 참조 인덱스에 의해 지시되는 픽처의 POC이고, pocRefLayer는 참조 PU의 참조 인덱스 즉, (xRef, yRef)의 참조 인덱스에 의해 지시되는 픽처의 POC이다.In Equation 3, pocCurr represents the POC of the current picture, pocRef is the POC of the picture indicated by the reference index of the current PU, and pocRefLayer is indicated by the reference index of the reference PU, that is, the reference index of (xRef, yRef). POC of the picture.
또한, Abs(x)는 x가 0보다 작은 경우에는 ?x가 되고, x가 0보다 크거나 같은 경우에는 x가 된다. Clip3(x,y.c)는 z가 x보다 작은 경우엔 x가 되고, z가 y보다 큰 경우엔 y가 되며, 그 외의 경우에는 z가 된다. Abs (x) becomes? X when x is smaller than 0, and x when x is greater than or equal to 0. Clip3 (x, y.c) becomes x when z is smaller than x, y when z is larger than y, and z otherwise.
예측부는 pocRef와 pocRefLayer가 상이한 경우에, 수식 3과 같이 각 레이어에서 참조 픽처까지의 거리를 기반으로 인터 레이어 움직임 벡터를 스케일링하고, 스케일링된 움직임 벡터 후보(즉, 스케일링된 mvIL 혹은 스케일링된 REF)를 AMVP 리스트에 추가할 수 있다. When the pocRef and pocRefLayer are different, the prediction unit scales the interlayer motion vector based on the distance from each layer to the reference picture, as shown in Equation 3, and scales the scaled motion vector candidate (ie, scaled mvIL or scaled REF). Can be added to AMVP list.
이때, 예측부는 REF (즉 mvIL) 대신 스케일링된 REF(즉, 스케일링된 mvIL)을 AMVP 리스트에 포함시켜서, 앞서 설명한 바와 동일한 방식으로 AMVP 모드를 적용한 인터 레이어 움직임 예측을 수행할 수 있다.In this case, the prediction unit may include the scaled REF (ie, scaled mvIL) in the AMVP list instead of the REF (ie, mvIL), and perform interlayer motion prediction using the AMVP mode in the same manner as described above.
인터 레이어 움직임 예측을 적용하는 경우에, CU 레벨의 관점에서 보면, 베이스 레이어의 블록 크기와 무관하게 모든 CU 파티션을 그대로 사용할 수 있다. 또한, PU 레벨에서 보면, 인코딩 장치가 인터 예측과 인터 레이어 움직임 예측에 대한 RDO를 수행함으로써 최적의 예측 모드를 적용할 수 있다.In case of applying inter-layer motion prediction, all CU partitions can be used as they are regardless of the block size of the base layer from the perspective of the CU level. In addition, at the PU level, the encoding apparatus may apply an optimal prediction mode by performing RDO for inter prediction and inter-layer motion prediction.
이하에서는, 본 발명에 따라 인터 레이어 인터 예측에서 참조 레이어의 움직임 정보와 현재 레이어의 움직임 정보의 중복성 판단에 대하여 보다 구체적으로 기술한다. Hereinafter, the determination of the redundancy of the motion information of the reference layer and the motion information of the current layer in inter-layer inter prediction according to the present invention will be described in more detail.
표 1 및 표 3에서 설명된 바와 같이, 참조 레이어의 움직임 정보가 가용하지 않거나 또는 참조 PU가 인트라 모드로 예측된 경우에는, 참조 레이어를 참조하지 않고 머지 후보 리스트 또는 AMVP 리스트를 유도할 때 후보들의 중복성을 판단하는 방법이 현재 레이어의 움직임 정보의 중복성을 판단하는 데 적용될 수 있다. As described in Tables 1 and 3, when the motion information of the reference layer is not available or the reference PU is predicted to intra mode, the candidate candidates are derived when deriving the merge candidate list or the AMVP list without referring to the reference layer. The method of determining redundancy may be applied to determining redundancy of motion information of the current layer.
한편, 참조 레이어로부터 유도된 REF를 이용하는 경우, 예측부는 머지 후보 리스트를 표 5와 같이 구성할 수 있고, 머지 후보 리스트의 구성 시 유용성 판단과 함께 후보들의 중복성을 판단할 수 있다.On the other hand, when using the REF derived from the reference layer, the prediction unit may configure the merge candidate list as shown in Table 5, and may determine the redundancy of the candidates along with the usefulness determination when constructing the merge candidate list.
표 5
Figure PCTKR2013005489-appb-T000005
Table 5
Figure PCTKR2013005489-appb-T000005
표 5에 도시되어 있는 바와 같이, 참조 레이어로부터 유도된 REF에 가장 작은 값의 인덱스가 할당된다. 즉, 예측부는 REF에 대하여는 별도의 중복성 판단을 수행하지 않고 머지 후보 리스트의 첫 번째 후보로 설정한다. 이 경우, REF에 대하여 다른 머지 후보들과 중복성 판단을 하지 않으므로 다른 머지 후보들과의 독립성을 유지할 수 있다. REF의 독립성이 유지되면, 병렬적으로 머지 후보 리스트를 유도할 수 있는 장점이 있다. As shown in Table 5, the index of the smallest value is assigned to the REF derived from the reference layer. That is, the prediction unit sets REF as the first candidate of the merge candidate list without performing a separate redundancy determination. In this case, since the redundancy determination is not performed with the other merge candidates with respect to the REF, independence with the other merge candidates can be maintained. If the independence of REF is maintained, there is an advantage that a merge candidate list can be derived in parallel.
또는 예측부는 참조 레이어의 REF를 이용하는 경우 머지 후보 리스트를 표 6과 같이 구성할 수 있고, 머지 후보 리스트의 구성 시 유용성 판단과 함께 후보들의 중복성을 판단할 수 있다. Alternatively, when the REF of the reference layer is used, the prediction unit may configure the merge candidate list as shown in Table 6, and may determine the redundancy of the candidates along with the usefulness determination in constructing the merge candidate list.
표 6
Figure PCTKR2013005489-appb-T000006
Table 6
Figure PCTKR2013005489-appb-T000006
표 6에 따르면, REF 이외의 모든 머지 후보에 대해, REF와의 중복성을 판단한다. 이 경우, 현재 레이어에서 유도한 공간적 후보 및 COL 각각과 REF의 중복성이 체크 되므로, A1, B1, B0, A0, B2 및 COL 중 REF와 동일한 후보는 머지 후보 리스트에 추가되지 않는다. According to Table 6, redundancy with REF is determined for all merge candidates other than REF. In this case, since the redundancy of each of the spatial candidates and COLs derived from the current layer and REF is checked, candidates identical to REFs among A1, B1, B0, A0, B2 and COL are not added to the merge candidate list.
또는, 예측부는 REF와 모든 후보의 중복성을 판단하지 않는 방법과 REF와 모든 후보의 중복성을 판단하는 방법을 조합하여 REF 이외의 후보들 중 일부에 대해서만 REF와 중복성을 판단할 수도 있다. Alternatively, the prediction unit may determine a redundancy of the REF only for some of the candidates other than the REF by combining a method of not determining the redundancy of the REF and all the candidates and a method of determining the redundancy of the REF and all the candidates.
예를 들어 예측부는 표 7 및 표 8과 같이 기설정된 일부의 후보들에 대해서만 중복성 판단을 수행하고, 판단 결과 REF와 중복되지 않는 후보들을 머지 후보 리스트에 추가할 수 있다. For example, the prediction unit may perform redundancy determination on only some predetermined candidates as shown in Tables 7 and 8 and add candidates that do not overlap with the REF to the merge candidate list.
표 7
Figure PCTKR2013005489-appb-T000007
TABLE 7
Figure PCTKR2013005489-appb-T000007
표 7를 참조하면, 예측부는 COL에 대하여는 REF과의 중복성을 판단하지 않고, 나머지 A1, B1, B0, A0, B2에 대해서만 REF과의 중복성을 판단한다. Referring to Table 7, the prediction unit determines the redundancy with the REF only for the remaining A1, B1, B0, A0, and B2 without determining the redundancy with the REF for the COL.
표 8
Figure PCTKR2013005489-appb-T000008
Table 8
Figure PCTKR2013005489-appb-T000008
표 8을 참조하면, 예측부는 A1 및 B1를 후보 리스트에 추가할 때 REF와의 중복성을 판단하고, 나머지 후보(B0, A0, B2, COL)에 대하여는 중복성 판단을 생략할 수 있다. Referring to Table 8, the prediction unit may determine redundancy with REF when adding A1 and B1 to the candidate list, and may omit redundancy determination for the remaining candidates B0, A0, B2, and COL.
이와 같이 모든 후보가 아닌 한정된 개수의 일부 후보와 REF와의 중복성을 판단하면, 중복성 판단에 대한 복잡도를 낮출 수 있다. As described above, when the redundancy of the limited number of some candidates and the REF is determined instead of all candidates, the complexity of the redundancy determination can be reduced.
이 때 REF와 중복성이 판단되는 머지 후보는 A1 및 B1에 한정되지 않으며 다른 후보로 변경될 수 있다. 중복성 판단의 대상이 되는 후보는 실험 결과에 근거하여 복잡도 감소에 가장 큰 영향을 미치는 후보로 설정될 수 있다. 또한 REF와의 중복성 판단이 생략되는 후보의 개수 역시 2개 아닌 다른 개수로 변경 가능하며, 이 역시 실험치에 근거하여 설정될 수 있다.In this case, the merge candidate determined to be redundant with the REF is not limited to A1 and B1 and may be changed to another candidate. Candidates that are subject to redundancy judgment may be set as candidates that have the greatest influence on complexity reduction based on the experimental results. In addition, the number of candidates for which redundancy determination with REF is omitted may also be changed to another number, which may also be set based on experimental values.
또한, 다른 실시예에 따르면 예측부는 REF에 머지 후보 리스트 중 가장 작은 인덱스가 아닌 머지 후보 리스트의 중간 또는 가장 마지막 인덱스를 할당할 수 있다. 이 경우, 예측부는 선행된 모든 머지 후보들과 REF의 중복성을 판단할 수도 있고, 특정 일부의 후보들과 REF의 중복성을 판단할 수도 있다. 표 9는 REF가 A1, B1, B0, A0, B2 이후에 머지 리스트에 추가되는 경우를 나타내고 있다. According to another exemplary embodiment, the prediction unit may allocate REF to the middle or last index of the merge candidate list rather than the smallest index among the merge candidate lists. In this case, the prediction unit may determine the redundancy of all previous merge candidates and the REF, or may determine the redundancy of the specific some candidates and the REF. Table 9 shows the case where REF is added to the merge list after A1, B1, B0, A0, and B2.
표 9
Figure PCTKR2013005489-appb-T000009
Table 9
Figure PCTKR2013005489-appb-T000009
표 9를 참조하면, 예측부는 A1, B1, B0, A0, B2 순으로 후보 유효성 및 중복성을 판단하고, 판단 결과에 따라 A1, B1, B0, A0, B2를 머지 후보 리스트에 추가한 후, REF를 후보 리스트에 추가할 수 있다. 이 때, REF는 A1, B1, B0, A0, B2 중 A1 및 B1와의 중복성이 판단될 수 있다. 즉, REF는 A1와 다르고, B1과 다를 경우에만 후보 리스트에 추가될 수 있다.Referring to Table 9, the prediction unit determines candidate validity and redundancy in the order of A1, B1, B0, A0, and B2, adds A1, B1, B0, A0, and B2 to the merge candidate list according to the determination result, and then REF Can be added to the candidate list. In this case, REF may be determined to be redundant with A1 and B1 among A1, B1, B0, A0, and B2. That is, REF may be added to the candidate list only if it is different from A1 and different from B1.
또는 다른 실시예에 따라 예측부는 A1 및 B1에 추가하여 REF와 B2의 중복성 여부를 추가적으로 더 판단하고, REF가 B2와 중복되지 않는 경우 후보 리스트에 추가할 수 있다.Alternatively, according to another exemplary embodiment, the prediction unit may further determine whether REF and B2 are redundant in addition to A1 and B1, and may add the candidate to the candidate list when REF does not overlap with B2.
다른 실시예에 따르면, 하나가 아닌 두 개 이상 REF가 머지 후보 리스트에 포함될 수 있다. 예를 들어 REF는 도 4에 대한 설명에서 언급된 ⑧ RB’ = ( xP + nPSW, yP + nPSH ) 및 ⑫ C3 = ( xP + (nPSW>>1), yP + (nPSH>>1) )로 위치로 특정되는 PU의 움직임 정보 일 수 있다. 이하, 설명의 편의를 위하여 참조 레이어의 ⑧ 위치에 특정되는 참조 PU의 움직임 정보를 REF 1이라고 하고, 참조 레이어의 ⑫ 위치에 특정되는 참조 PU의 움직임 정보를 REF 2라고 표현한다. 이 경우, 두 개의 참조 PU의 REF 1 및 REF 2 간에도 중복성이 판단될 수 있다. 표 10은 REF 1 및 REF 2가 포함되는 머지 후보 리스트를 나타낸다. According to another embodiment, two or more REFs instead of one may be included in the merge candidate list. For example, REF is expressed as ⑧ RB '= (xP + nPSW, yP + nPSH) and ⑫ C3 = (xP + (nPSW >> 1), yP + (nPSH >> 1)) mentioned in the description of FIG. It may be motion information of a PU specified by a location. Hereinafter, for convenience of description, the motion information of the reference PU specified at the 8 position of the reference layer is referred to as REF 1, and the motion information of the reference PU specified to the X position of the reference layer is referred to as REF 2. In this case, redundancy may also be determined between REF 1 and REF 2 of two reference PUs. Table 10 shows a merge candidate list including REF 1 and REF 2.
표 10
Figure PCTKR2013005489-appb-T000010
Table 10
Figure PCTKR2013005489-appb-T000010
표 10을 참조하면, 예측부는 REF 1를 첫 번째 머지 후보 리스트로 추가하고, A1 및 B1를 후보 리스트에 추가할 때 REF 1과의 중복성을 판단할 수 있다. 또한, 예측부는 공간적 머지 후보(A1, B1, B0, A0, B2)들의 유효성 판단 이후 REF 2에 대한 유효성을 판단할 수 있으며, 이 때 REF 1과 REF 2의 중복성을 판단할 수 있다.Referring to Table 10, the prediction unit may determine the redundancy with REF 1 when adding REF 1 to the first merge candidate list and adding A1 and B1 to the candidate list. In addition, the prediction unit may determine the validity of the REF 2 after determining the validity of the spatial merge candidates A1, B1, B0, A0, and B2, and may determine the redundancy of the REF 1 and the REF 2.
다른 실시예에 따를 경우, REF 2는 표 10과 다른 순서로 머지 후보 리스트에 추가될 수 있으며, 예를 들어 머지 후보 리스트의 제일 마지막에 추가될 수 있을 것이다. 이 경우에도 REF 2가 머지 후보 리스트에 추가될 때 REF 1와의 중복성이 판단될 수 있다. According to another embodiment, REF 2 may be added to the merge candidate list in a different order from Table 10, for example, may be added to the end of the merge candidate list. Even in this case, when REF 2 is added to the merge candidate list, redundancy with REF 1 may be determined.
한편, 예측부는 인터 레이어 움직임 예측의 AMVP 리스트를 표 11과 같이 구성할 수 있고, AMVP 리스트를 구성할 때 후보의 유용성 판단과 함께 후보들의 중복성을 판단할 수 있다. On the other hand, the prediction unit may configure the AMVP list of inter-layer motion prediction as shown in Table 11, and may determine the redundancy of the candidates along with the determination of the usefulness of the candidate when constructing the AMVP list.
표 11
Figure PCTKR2013005489-appb-T000011
Table 11
Figure PCTKR2013005489-appb-T000011
표 11에 도시되어 있는 바와 같이, 참조 레이어로부터 유도된 REF에 가장 작은 값의 인덱스가 할당된다. 즉, 예측부는 REF에 대하여는 별도의 중복성 판단을 수행하지 않고 AMVP 리스트의 첫 번째 후보로 설정한다. 이 경우, REF에 대하여 다른 머지 후보들과 중복성 판단을 하지 않으므로 다른 AMVP 후보들과의 독립성을 유지할 수 있다. REF의 독립성이 유지되면, 병렬적으로 AMVP 리스트를 유도할 수 있는 장점이 있다. As shown in Table 11, the index of the smallest value is assigned to the REF derived from the reference layer. That is, the prediction unit sets REF as the first candidate of the AMVP list without performing a separate redundancy determination. In this case, since the redundancy determination is not performed with the other merge candidates with respect to the REF, independence with other AMVP candidates can be maintained. If the independence of REF is maintained, there is an advantage of deriving AMVP lists in parallel.
또는 예측부는 참조 레이어의 REF를 이용하는 경우 AMVP 리스트를 표 12와 같이 구성할 수 있고, AMVP 리스트를 구성할 때 유용성 판단과 함께 후보들의 중복성을 판단할 수 있다. Alternatively, when the REF of the reference layer is used, the prediction unit may configure the AMVP list as shown in Table 12. When the AMVP list is constructed, the prediction unit may determine the redundancy of candidates along with the usefulness determination.
표 12
Figure PCTKR2013005489-appb-T000012
Table 12
Figure PCTKR2013005489-appb-T000012
표 12에 따르면, REF 이외의 모든 AMVP 후보에 대해, REF와의 중복성을 판단한다. 이 경우, 현재 레이어에서 유도한 AMVP 후보, COL 및 제로 움직임 벡터 각각과 REF의 중복성이 체크 되므로, REF와 동일한 후보는 AMVP 리스트에 추가되지 않을 것이다. According to Table 12, for all AMVP candidates other than REF, redundancy with REF is determined. In this case, since the redundancy of each of the AMVP candidate, COL, and zero motion vectors derived from the current layer and REF is checked, the same candidate as REF will not be added to the AMVP list.
또는, 예측부는 REF와 모든 후보의 중복성을 판단하지 않는 방법과 REF와 모든 후보의 중복성을 판단하는 방법을 조합하여 REF 이외의 후보들 중 일부에 대해서만 REF와의 중복성을 판단할 수도 있다. Alternatively, the prediction unit may determine a redundancy with the REF only for some of the candidates other than the REF by combining a method of not determining the redundancy of the REF and all the candidates and a method of determining the redundancy of the REF and all the candidates.
예를 들어 예측부는 표 13 및 표 14와 같이 기설정된 일부의 후보들에 대해서만 중복성 판단을 수행하고, 판단 결과를 REF와 중복되지 않는 후보들을 AMVP 리스트에 추가할 수 있다. For example, the prediction unit may perform redundancy determination on only some predetermined candidates as shown in Tables 13 and 14, and add candidates that do not overlap with the REF to the AMVP list.
표 13
Figure PCTKR2013005489-appb-T000013
Table 13
Figure PCTKR2013005489-appb-T000013
표 13을 참조하면, 예측부는 COL 및 제로 움직임 벡터 후보에 대하여는 REF과의 중복성을 판단하지 않고, 나머지 A 및 B에 대해서만 REF과의 중복성을 판단한다.Referring to Table 13, the prediction unit determines the redundancy with the REF only for the remaining A and B, without determining the redundancy with the REF for the COL and the zero motion vector candidates.
표 14
Figure PCTKR2013005489-appb-T000014
Table 14
Figure PCTKR2013005489-appb-T000014
표 14를 참조하면, 예측부는 A, B1 및 COL을 AMVP 리스트에 추가할 때만 REF와의 중복성을 판단하고, 제로 움직임 벡터 후보에 대하여는 중복성 판단을 생략할 수 있다. Referring to Table 14, the prediction unit may determine redundancy with the REF only when A, B1, and COL are added to the AMVP list, and omit the redundancy determination with respect to the zero motion vector candidate.
이와 같이 모든 후보가 아닌 한정된 개수의 일부 후보와 REF와의 중복성을 판단하면, 중복성 판단에 대한 복잡도를 낮출 수 있다. As described above, when the redundancy of the limited number of some candidates and the REF is determined instead of all candidates, the complexity of the redundancy determination can be reduced.
또, 다른 실시예에 따르면, 예측부는 A 또는 B 중 어느 하나와 REF의 중복성을 판단할 수도 있다.According to another embodiment, the prediction unit may determine the redundancy of either REF or AREF.
상술한 바와 같이, 중복성 판단의 대상이 되는 후보는 실험 결과에 근거하여 복잡도 감소에 가장 큰 영향을 미치는 후보로 설정될 수 있다. 또한 REF와의 중복성 판단이 생략되는 후보의 개수 역시 실험치에 근거하여 설정될 수 있다.As described above, candidates to be subjected to redundancy determination may be set as candidates having the greatest influence on complexity reduction based on the experimental results. In addition, the number of candidates for which redundancy determination with REF is omitted may also be set based on experimental values.
또한, 다른 실시예에 따르면 예측부는 REF에 AMVP 리스트 중 가장 작은 인덱스가 아닌 AMVP 리스트의 중간 또는 가장 마지막 인덱스를 할당할 수 있다. 이 경우, 예측부는 선행된 모든 머지 후보들과 REF의 중복성을 판단할 수도 있고, 특정 일부의 후보들과 REF의 중복성을 판단할 수도 있다. 표 15는 REF가 A 및 B 이후에 AMVP 리스트에 추가되는 경우를 나타내고 있다. According to another exemplary embodiment, the predictor may allocate REF to the middle or last index of the AMVP list rather than the smallest index among the AMVP lists. In this case, the prediction unit may determine the redundancy of all previous merge candidates and the REF, or may determine the redundancy of the specific some candidates and the REF. Table 15 shows the case where REF is added to the AMVP list after A and B.
표 15
Figure PCTKR2013005489-appb-T000015
Table 15
Figure PCTKR2013005489-appb-T000015
표 15를 참조하면, 예측부는 A 및 B 순으로 후보 유효성 및 중복성을 판단하고, 판단 결과에 따라 A 및 B를 AMVP 리스트에 추가한 후, REF를 후보 리스트에 추가할 수 있다. 이 때, REF는 A 및 B와의 중복성이 판단될 수 있다. 즉, REF는 A와 다르고, B과 다를 경우에만 AMVP 리스트에 추가될 수 있다.Referring to Table 15, the prediction unit may determine candidate validity and redundancy in the order of A and B, add A and B to the AMVP list according to the determination result, and then add REF to the candidate list. In this case, REF may be determined to be redundant with A and B. That is, REF is different from A and can be added to the AMVP list only if it is different from B.
또는 다른 실시예에 따르면 예측부는 A 및 B 중 어느 하나하고 REF의 중복성을 판단할 수 있다. Alternatively, according to another embodiment, the prediction unit may determine the redundancy of the REF with either A or B.
또는 예측부는 REF를 COL 이후에 AMVP 리스트에 추가할 수 있다. 이 경우, A, B 및 COL 모두와 중복성이 판단될 수도 있고, 일부의 후보와의 중복성이 판단될 수도 있다. Alternatively, the prediction unit may add the REF to the AMVP list after the COL. In this case, redundancy with all of A, B, and COL may be determined, or redundancy with some candidates may be determined.
도 7은 본 발명의 일 실시예에 따라 영상을 복호화 하는 방법을 설명하는 제어 흐름도이다.7 is a control flowchart illustrating a method of decoding an image according to an embodiment of the present invention.
도 7은 참조하면, 우선 예측부는 현재 블록의 주변 블록의 움직임 정보 및 COL 블록의 움직임 정보 중 적어도 하나와 참조 블록과의 중복성 여부를 판단하여 움직임 예측 리스트 구성한다(S701). Referring to FIG. 7, the predictor first configures a motion prediction list by determining whether at least one of motion information of a neighboring block of a current block and motion information of a COL block is overlapped with a reference block (S701).
움직임 예측 리스트는 현재 블록에 대한 인터 레이어 인터 예측, 즉 인터 레이어 움직임 예측을 위한 머지 후보 리스트 또는 움직임 벡터 예측자에 대한 리스트, 즉 AMVP 리스트를 포함할 수 있다. The motion prediction list may include inter-layer inter prediction for the current block, that is, a merge candidate list for inter-layer motion prediction or a list for the motion vector predictor, that is, an AMVP list.
움직임 예측 리스트가 머지 후보 리스트이면 움직임 정보는 움직임 벡터 및 참조 인덱스이고, 움직임 예측 리스트가 AMVP 리스트이면, 움직임 정보는 움직임 벡터에 대한 정보 일 수 있다.If the motion prediction list is a merge candidate list, the motion information may be a motion vector and a reference index, and if the motion prediction list is an AMVP list, the motion information may be information about the motion vector.
예측부는 현재 블록의 인접한 주변 블록의 움직임 정보, 현재 블록의 대응 픽처 내에서 상기 현재 블록에 대응하는 COL 블록의 움직임 정보 및 현재 블록에 대응하는 참조 레이어의 참조 블록의 움직임 정보에 기초하여 움직임 예측 리스트를 구성한다. The predictor includes a motion prediction list based on the motion information of adjacent neighboring blocks of the current block, the motion information of the COL block corresponding to the current block in the corresponding picture of the current block, and the motion information of the reference block of the reference layer corresponding to the current block. Configure
주변 블록에 대한 움직임 정보는 도 5의 A1, B1, B0, A0, B2, A1와 A0 중에서 선택된 움직임 정보 A, B1, B0, B2 중에서 선택된 움직임 정보인 B 일 수 있으며, 이러한 주변 블록에 대한 움직임 정보는 적어도 하나 이상 리스트에 포함될 수 있다.The motion information for the neighboring block may be B, which is motion information selected from among the motion information A, B1, B0, and B2 selected from A1, B1, B0, A0, B2, A1 and A0 of FIG. 5, and the motion for the neighboring block. The information may be included in at least one list.
예측부는 움직임 예측 리스트를 구성할 때 주변 블록의 움직임 정보 및 COL 블록의 움직임 정보 중 적어도 하나와 참조 블록과의 중복성 여부를 판단한다. 이러한 중복성 판단은 움직임 정보가 움직임 예측 리스트에 추가될 때 움직임 정보의 유효성을 판단하는 과정에 포함될 수 있다. The predictor determines whether at least one of the motion information of the neighboring block and the motion information of the COL block is overlapped with the reference block when constructing the motion prediction list. Such redundancy determination may be included in the process of determining the validity of the motion information when the motion information is added to the motion prediction list.
예측부는 판단 결과, 참조 블록의 움직임 정보와 중복되지 않는, 참조 블록의 움직임 정보와 동일하지 않는 움직임 정보만을 움직임 예측 리스트에 추가한다. 이하 도 8에서 보다 구체적으로 설명된다.The prediction unit adds, to the motion prediction list, only motion information that is not the same as the motion information of the reference block that does not overlap with the motion information of the reference block. Hereinafter, the method will be described in more detail with reference to FIG. 8.
그런 후, 움직임 예측 리스트를 기반으로 현재 블록에 대한 인터 예측을 수행한다(S702). Thereafter, inter prediction on the current block is performed based on the motion prediction list (S702).
움직임 예측 리스트가 머지 후보 리스트이면, 복호화 장치는 부호화 장치로부터 머지 후보 리스트 중 어느 후보를 이용할 것인가에 대한 머지 인덱스 및 현재 블록의 레지듀얼 정보를 수신한다. 복호화 장치는 수신된 머지 인덱스 정보에 기초하여 현재 블록에 대한 예측 블록을 유도하고, 수신된 레지듀얼 정보를 예측 블록에 가산하여 현재 블록을 복원한다. If the motion prediction list is a merge candidate list, the decoding apparatus receives a merge index and residual information of the current block for which candidate from the merge candidate list to use. The decoding apparatus derives the prediction block for the current block based on the received merge index information, and adds the received residual information to the prediction block to restore the current block.
만약, 움직임 예측 리스트가 AMVP 리스트이면 복호화 장치는 부호화 장치로부터 참조 픽처에 대한 참조 인덱스, 움직임 벡터에 대한 차분 정보와 MVP 후보에 대한 플래그 정보 및 현재 블록의 레지듀얼 정보를 수신한다. 복호화 장치는 움직임 벡터에 대한 차분 정보와 움직임 벡터 예측자에 기초하여 현재 블록에 대한 움직임 벡터를 유도하고, 참조 픽처를 이용하여 현재 블록에 대한 예측 블록을 생성한다. 수신된 레지듀얼 정보와 예측 블록의 가산에 의하여 현재 블록이 복원된다. If the motion prediction list is an AMVP list, the decoding apparatus receives a reference index for a reference picture, difference information for a motion vector, flag information for an MVP candidate, and residual information of a current block from an encoding device. The decoding apparatus derives a motion vector for the current block based on the difference information for the motion vector and the motion vector predictor, and generates a predictive block for the current block using the reference picture. The current block is reconstructed by the addition of the received residual information and the prediction block.
도 8은 본 발명의 일 실시예에 따라 움직임 후보 리스트를 구성하는 방법을 설명하는 제어 흐름도이다.8 is a control flowchart illustrating a method of constructing a motion candidate list according to an embodiment of the present invention.
도 8은 참조하면, 예측부는 참조 블록의 움직임 정보를 움직임 예측 리스트의 후보로 설정한다(S801). 참조 블록의 움직임 정보는 움직임 예측 리스트의 가장 낮은 인덱스를 할당 받을 수 있다. Referring to FIG. 8, the predictor sets motion information of a reference block as a candidate of a motion prediction list (S801). The motion information of the reference block may be assigned the lowest index of the motion prediction list.
예측부는 참조 블록의 움직임 정보를 움직임 예측 리스트에 추가한 후, 공간적 움직임 정보인 현재 블록의 주변 블록의 움직임 정보 중 기설정된 움직임 정보와 참조 블록의 움직임 정보의 중복성을 판단한다(S802). After adding the motion information of the reference block to the motion prediction list, the prediction unit determines the redundancy of the motion information of the reference block and the predetermined motion information among the motion information of the neighboring blocks of the current block which is spatial motion information (S802).
움직임 예측 리스트에 추가될 공간적 움직임 정보는 적어도 하나일 수 있다. The spatial motion information to be added to the motion prediction list may be at least one.
움직임 예측 리스트가 머지 후보 리스트이면 예측부는 공간적 움직임 정보 A1, B1, B0, A0, B2 순으로 유효성을 판단하고, 이러한 유효성 판단 시 A1와 B1에 대하여 참조 블록의 움직임 정보와 중복성을 판단할 수 있다.If the motion prediction list is a merge candidate list, the prediction unit may determine validity in order of spatial motion information A1, B1, B0, A0, and B2, and may determine the motion information and redundancy of the reference block with respect to A1 and B1 when determining the validity. .
물론, 예측부는 A1와 B1에 한정되지 않고, 다른 움직임 정보들과 참조 블록의 움직임 정보와의 중복성을 판단할 수도 있다. Of course, the prediction unit is not limited to A1 and B1, and may determine redundancy between other motion information and motion information of the reference block.
움직임 예측 리스트가 AMVP 리스트이면, 예측부는 A1와 A0 중에서 선택된 움직임 정보 A, 및 B1, B0, B2 중에서 선택된 움직임 정보인 B의 유효성을 판단하고, 이러한 유효성 판단 시 A와 B 모두와 또는 A와 B 중 하나와 참조 블록의 움직임 정보와 중복성을 판단할 수 있다. If the motion prediction list is an AMVP list, the prediction unit judges the validity of the motion information A selected from A1 and A0 and B, which is motion information selected from B1, B0, and B2, and when determining the validity, both A and B or A and B It is possible to determine the motion information and redundancy of one of the and the reference block.
예측부는 또한 COL 블록의 움직임 정보와 참조 블록의 움직임 정보의 중복성을 판단할 수 있다(S803).The prediction unit may also determine the redundancy of the motion information of the COL block and the motion information of the reference block (S803).
그런 후, 예측부는 참조 블록의 움직임 정보와 동일하지 않는 움직임 정보를 움직임 예측 리스트의 후보로 설정할 수 있다(S804).Thereafter, the prediction unit may set motion information that is not the same as motion information of the reference block as a candidate of the motion prediction list (S804).
즉, 예측부는 참조 블록의 움직임 정보와 동일하지 않는 상기 주변 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 추가하고, COL 블록의 움직임 정보와 참조 블록의 움직임 정보가 동일하지 않으면 COL블록의 움직임 정보를 움직임 예측 리스트의 후보에 추가한다. 본 단계는 단계 S802 이후 및 단계 S803 이후에 각각 수행될 수 있다.That is, the prediction unit adds motion information of the neighboring block that is not the same as motion information of the reference block as a candidate of the motion prediction list, and if the motion information of the COL block and the motion information of the reference block are not the same, the motion information of the COL block. Is added to the candidate of the motion prediction list. This step may be performed after step S802 and after step S803, respectively.
단계 S802 및 단계 S803은 예측부에 의하여 모두 수행될 수도 있고, 어느 하나만이 수행될 수 있다. Steps S802 and S803 may be both performed by the prediction unit, or only one of them may be performed.
본 발명의 다른 실시예에 따르면, 예측부는 적어도 하나의 주변 블록의 움직임 정보 및/또는 COL 블록의 움직임 정보를 움직임 예측 리스트의 후보로 추가하고 난 후, 참조 블록의 움직임 정보를 움직임 예측 리스트에 추가할 수 있다. According to another embodiment of the present invention, the prediction unit adds the motion information of the at least one neighboring block and / or the motion information of the COL block as a candidate of the motion prediction list, and then adds the motion information of the reference block to the motion prediction list. can do.
이 경우, 예측부는 참조 블록의 움직임 정보의 유효성을 판단하는 과정에서, 이미 움직임 예측 리스트에 추가되어 있는 움직임 정보 중 적어도 하나와 동일성 여부가 판단될 수 있다. In this case, in the process of determining the validity of the motion information of the reference block, the prediction unit may determine whether or not it is identical to at least one of the motion information already added to the motion prediction list.
예측부는 기설정되어 있는 개수의 기설정되어 있는 움직임 정보 후보와 참조 블록의 움직임 정보의 중복성을 판단할 수 있다. 기설정되어 있는 개수의 기설정되어 있는 움직임 정보 후보는 실험치에 의하여 설정될 수 있다. The prediction unit may determine the redundancy of the predetermined number of predetermined motion information candidates and the motion information of the reference block. The preset number of predetermined motion information candidates may be set by an experimental value.
또는, 예측부는 참조 블록의 움직임 정보와 움직임 예측 리스트에 추가되어 있는 또는 추가될 모든 움직임 정보와 중복성 여부가 판단될 수도 있다.Alternatively, the prediction unit may determine whether or not the motion information of the reference block is duplicated with all motion information added to or to be added to the motion prediction list.
상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 상술한 실시예들은 다양한 양태의 예시들을 포함할 수 있으므로 각 실시예의 조합 역시 본 발명의 일 실시예로서 이해되어야 할 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다. 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 (16)

  1. 현재 블록의 인접한 주변 블록의 움직임 정보, 상기 현재 블록의 대응 픽처 내에서 상기 현재 블록에 대응하는 COL 블록의 움직임 정보 및 상기 현재 블록에 대응하는 참조 레이어의 참조 블록의 움직임 정보에 기초하여 움직임 예측 리스트를 구성하는 단계와;A motion prediction list based on motion information of adjacent neighboring blocks of a current block, motion information of a COL block corresponding to the current block within a corresponding picture of the current block, and motion information of a reference block of a reference layer corresponding to the current block Configuring the;
    상기 움직임 예측 리스트를 기반으로 상기 현재 블록의 인터 예측을 수행하는 단계를 포함하고, Performing inter prediction of the current block based on the motion prediction list,
    상기 움직임 예측 리스트를 구성하는 단계는 상기 주변 블록의 움직임 정보 및 상기 COL 블록의 움직임 정보 중 적어도 하나와 상기 참조 블록의 움직임 정보와의 중복성 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 영상의 복호화 방법.The step of constructing the motion prediction list may include determining whether or not there is redundancy between at least one of the motion information of the neighboring block and the motion information of the COL block and the motion information of the reference block. Way.
  2. 제1항에 있어서,The method of claim 1,
    상기 움직임 예측 리스트를 구성하는 단계는,Comprising the motion prediction list,
    상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계와;Setting motion information of the reference block as a candidate of the motion prediction list;
    적어도 하나의 상기 주변 블록의 움직임 정보 중 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 단계와;Determining a redundancy of predetermined motion information among the motion information of at least one neighboring block and motion information of the reference block;
    판단 결과, 상기 참조 블록의 움직임 정보와 동일하지 않는 상기 주변 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계를 포함하는 것을 특징으로 하는 영상의 복호화 방법.And determining the motion information of the neighboring block that is not the same as the motion information of the reference block as a candidate of the motion prediction list.
  3. 제1항에 있어서,The method of claim 1,
    상기 움직임 리스트는 상기 현재 블록의 머지 후보 리스트이고, The motion list is a merge candidate list of the current block,
    상기 움직임 리스트를 구성하는 단계는,Comprising the motion list,
    상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록, 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록, 상기 현재 블록의 우측 상단 코너 블록, 상기 현재 블록의 좌측 하단 코너 블록, 상기 현재 블록의 좌측 상단 코너 블록 순으로 유효성을 판단하는 단계를 포함하고,The lowermost block among the neighboring blocks adjacent to the left side of the current block, the uppermost block among the neighboring blocks adjacent to the upper side of the current block, the upper right corner block of the current block, the lower left corner block of the current block, Determining the validity in order of the upper left corner block of the current block,
    상기 유효성을 판단하는 단계 시 상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록 및 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록의 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 것을 특징으로 하는 영상의 복호화 방법.In the determining of the validity, the redundancy of the motion information of the block located at the bottom of the neighboring blocks adjacent to the left side of the current block and the block located at the rightmost side of the neighboring blocks adjacent to the top of the current block and the motion information of the reference block are determined. The image decoding method, characterized in that for determining.
  4. 제1항에 있어서,The method of claim 1,
    상기 움직임 리스트는 상기 현재 블록의 움직임 벡터 예측자 리스트이고,The motion list is a motion vector predictor list of the current block,
    상기 움직임 리스트를 구성하는 단계는,Comprising the motion list,
    상기 현재 블록의 좌측 하단 코너 블록 및 상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록으로부터 선택된 제1 움직임 정보, 상기 현재 블록의 우측 상단 코너 블록, 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록 및 상기 현재 블록의 좌측 상단 코너 블록으로부터 선택된 제2 움직임 정보의 유효성을 판단하는 단계를 포함하고,First motion information selected from a lowermost corner block among the lower left corner block of the current block and a neighboring block adjacent to the left side of the current block, an upper right corner block of the current block, and a neighboring block adjacent to the top of the current block; Determining the validity of the second motion information selected from the block located on the right side and the upper left corner block of the current block;
    상기 유효성을 판단하는 단계 시 제1 움직임 정보 및 상기 제 움직임 정보 중 적어도 하나와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 것을 특징으로 하는 영상의 복호화 방법.And determining the redundancy of at least one of the first motion information and the first motion information and the motion information of the reference block when determining the validity.
  5. 제1항에 있어서,The method of claim 1,
    상기 움직임 예측 리스트를 구성하는 단계는,Comprising the motion prediction list,
    상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계와;Setting motion information of the reference block as a candidate of the motion prediction list;
    상기 COL 블록의 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 단계와;Determining a redundancy of motion information of the COL block and motion information of the reference block;
    판단 결과, 상기 COL 블록의 움직임 정보와 상기 참조 블록의 움직임 정보가 동일하지 않으면, 상기 COL블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계를 포함하는 것을 특징으로 하는 영상의 복호화 방법.And determining the motion information of the COL block as a candidate of the motion prediction list if the motion information of the COL block and the motion information of the reference block are not the same.
  6. 제1항에 있어서,The method of claim 1,
    상기 움직임 리스트를 구성하는 단계는,Comprising the motion list,
    적어도 하나의 상기 주변 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계와;Setting motion information of at least one neighboring block as a candidate of the motion prediction list;
    상기 적어도 하나의 상기 주변 블록의 움직임 정보 중 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 단계와;Determining a redundancy of predetermined motion information among the motion information of the at least one neighboring block and motion information of the reference block;
    판단 결과, 상기 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보가 동일하지 않으면, 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계를 포함하는 것을 특징으로 하는 영상의 복호화 방법.And if the predetermined motion information and the motion information of the reference block are not the same, setting the motion information of the reference block as a candidate of the motion prediction list.
  7. 제1항에 있어서,The method of claim 1,
    상기 움직임 예측 리스트를 구성하는 단계는,Comprising the motion prediction list,
    상기 COL 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계와;Setting motion information of the COL block as a candidate of the motion prediction list;
    상기 참조 블록의 움직임 정보와 상기 COL 블록의 움직임 정보의 중복성을 판단하는 단계와;Determining a redundancy of the motion information of the reference block and the motion information of the COL block;
    판단 결과, 상기 참조 블록의 움직임 정보와 상기 COL 블록의 움직임 정보가 동일하지 않으면, 상기 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 단계를 포함하는 것을 특징으로 하는 영상의 복호화 방법.And determining that the motion information of the reference block is the same as a candidate of the motion prediction list if the motion information of the reference block and the motion information of the COL block are not the same. .
  8. 제1항에 있어서,The method of claim 1,
    상기 주변 블록의 움직임 정보 및 상기 참조 블록의 움직임 정보 모두와 상기 참조 블록과의 중복성 여부를 판단하는 것을 특징으로 하는 영상의 복호화 방법.And determining whether or not both the motion information of the neighboring block and the motion information of the reference block overlap with the reference block.
  9. 현재 블록의 인접한 주변 블록의 움직임 정보, 상기 현재 블록의 대응 픽처 내에서 상기 현재 블록에 대응하는 COL 블록의 움직임 정보 및 상기 현재 블록에 대응하는 참조 레이어의 참조 블록의 움직임 정보에 기초하여 움직임 예측 리스트를 구성하고, 상기 움직임 예측 리스트를 기반으로 상기 현재 블록의 인터 예측을 수행하는 예측부를 포함하고, A motion prediction list based on motion information of adjacent neighboring blocks of a current block, motion information of a COL block corresponding to the current block within a corresponding picture of the current block, and motion information of a reference block of a reference layer corresponding to the current block A predicting unit configured to perform an inter prediction on the current block based on the motion prediction list,
    상기 예측부는 상기 주변 블록의 움직임 정보 및 상기 COL 블록의 움직임 정보 중 적어도 하나와 상기 참조 블록의 움직임 정보와의 중복성 여부를 판단하는 것을 특징으로 하는 영상의 복호화 장치.And the prediction unit determines whether or not there is overlap between the motion information of the neighboring block and the motion information of the COL block and the motion information of the reference block.
  10. 제9항에 있어서,The method of claim 9,
    상기 예측부는 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하고, 적어도 하나의 상기 주변 블록의 움직임 정보 중 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하며,The prediction unit sets the motion information of the reference block as a candidate of the motion prediction list, and determines the redundancy of the motion information of the reference block and the predetermined motion information among the motion information of at least one neighboring block.
    판단 결과, 상기 참조 블록의 움직임 정보와 동일하지 않는 상기 주변 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 것을 특징으로 하는 영상의 복호화 장치.And as a result of the determination, motion information of the neighboring block that is not identical to motion information of the reference block is set as a candidate of the motion prediction list.
  11. 제9항에 있어서,The method of claim 9,
    상기 움직임 리스트는 상기 현재 블록의 머지 후보 리스트이고, The motion list is a merge candidate list of the current block,
    상기 예측부는 상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록, 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록, 상기 현재 블록의 우측 상단 코너 블록, 상기 현재 블록의 좌측 하단 코너 블록, 상기 현재 블록의 좌측 상단 코너 블록 순으로 유효성을 판단하고,The prediction unit is located at the bottom of the neighboring block adjacent to the left side of the current block, the block located at the rightmost side of the neighboring block adjacent to the top of the current block, the upper right corner block of the current block, the lower left corner of the current block Block, and then the validity is determined in order of the upper left corner block of the current block,
    상기 유효성을 판단 시 상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록 및 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록의 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 것을 특징으로 하는 영상의 복호화 장치.In determining the validity, the redundancy of the motion information of the block located at the bottom of the neighboring blocks adjacent to the left side of the current block and the block located at the rightmost side of the neighboring blocks adjacent to the top of the current block and the motion information of the reference block are determined. An apparatus for decoding an image, characterized in that.
  12. 제9항에 있어서,The method of claim 9,
    상기 움직임 리스트는 상기 현재 블록의 움직임 벡터 예측자 리스트이고,The motion list is a motion vector predictor list of the current block,
    상기 예측부는, 상기 현재 블록의 좌측 하단 코너 블록 및 상기 현재 블록의 좌측에 인접한 주변 블록 중 최하단에 위치한 블록으로부터 선택된 제1 움직임 정보, 상기 현재 블록의 우측 상단 코너 블록, 상기 현재 블록의 상단에 인접한 주변 블록 중 최우측에 위치한 블록 및 상기 현재 블록의 좌측 상단 코너 블록으로부터 선택된 제2 움직임 정보의 유효성을 판단하고,The prediction unit may include first motion information selected from a lowermost corner block among a lower left corner block of the current block and a neighboring block adjacent to a left side of the current block, an upper right corner block of the current block, and a top of the current block. Determining the validity of the second motion information selected from the rightmost block among the neighboring blocks and the upper left corner block of the current block;
    상기 유효성을 판단 시 제1 움직임 정보 및 상기 제 움직임 정보 중 적어도 하나와 상기 참조 블록의 움직임 정보의 중복성을 판단하는 것을 특징으로 하는 영상의 복호화 장치.And determining the redundancy of at least one of the first motion information and the first motion information and the motion information of the reference block when determining the validity.
  13. 제9항에 있어서,The method of claim 9,
    상기 예측부는 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하고, 상기 COL 블록의 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하며,The prediction unit sets the motion information of the reference block as a candidate of the motion prediction list, and determines the redundancy of the motion information of the COL block and the motion information of the reference block.
    판단 결과, 상기 COL 블록의 움직임 정보와 상기 참조 블록의 움직임 정보가 동일하지 않으면, 상기 COL블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 것을 특징으로 하는 영상의 복호화 장치.And determining that the motion information of the COL block is the same as a candidate of the motion prediction list if the motion information of the COL block and the reference block are not the same.
  14. 제9항에 있어서,The method of claim 9,
    상기 예측부는 적어도 하나의 상기 주변 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하고, 상기 적어도 하나의 상기 주변 블록의 움직임 정보 중 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보의 중복성을 판단하며,The prediction unit sets the motion information of at least one neighboring block as a candidate of the motion prediction list, and determines the redundancy of the motion information of the reference block and the predetermined motion information among the motion information of the at least one neighboring block. ,
    판단 결과, 상기 기설정된 움직임 정보와 상기 참조 블록의 움직임 정보가 동일하지 않으면, 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 것을 특징으로 하는 영상의 복호화 장치.And the motion information of the reference block is set as a candidate of the motion prediction list if the predetermined motion information and the motion information of the reference block are not the same.
  15. 제9항에 있어서,The method of claim 9,
    상기 예측부는 상기 COL 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하고, 상기 참조 블록의 움직임 정보와 상기 COL 블록의 움직임 정보의 중복성을 판단하며,The prediction unit sets the motion information of the COL block as a candidate of the motion prediction list, and determines the redundancy of the motion information of the reference block and the motion information of the COL block,
    판단 결과, 상기 참조 블록의 움직임 정보와 상기 COL 블록의 움직임 정보가 동일하지 않으면, 상기 상기 참조 블록의 움직임 정보를 상기 움직임 예측 리스트의 후보로 설정하는 것을 특징으로 하는 영상의 복호화 장치.And if the motion information of the reference block and the motion information of the COL block are not the same, the motion information of the reference block is set as a candidate of the motion prediction list.
  16. 제9항에 있어서,The method of claim 9,
    상기 예측부는 상기 주변 블록의 움직임 정보 및 상기 참조 블록의 움직임 정보 모두와 상기 참조 블록과의 중복성 여부를 판단하는 것을 특징으로 하는 영상의 복호화 장치.And the prediction unit determines whether or not both the motion information of the neighboring block and the motion information of the reference block overlap with the reference block.
PCT/KR2013/005489 2012-06-26 2013-06-21 Method of decoding image and device using same WO2014003367A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261664178P 2012-06-26 2012-06-26
US61/664,178 2012-06-26

Publications (1)

Publication Number Publication Date
WO2014003367A1 true WO2014003367A1 (en) 2014-01-03

Family

ID=49783454

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/005489 WO2014003367A1 (en) 2012-06-26 2013-06-21 Method of decoding image and device using same

Country Status (1)

Country Link
WO (1) WO2014003367A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017105097A1 (en) * 2015-12-17 2017-06-22 삼성전자 주식회사 Video decoding method and video decoding apparatus using merge candidate list

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005295526A (en) * 2004-03-11 2005-10-20 Matsushita Electric Ind Co Ltd Image encoding method, image encoding apparatus, and image encoding program
KR20100001078A (en) * 2008-06-26 2010-01-06 에스케이 텔레콤주식회사 Method and apparatus for encoding and decoding motion vector
KR100941608B1 (en) * 2006-10-17 2010-02-11 경희대학교 산학협력단 Method for encoding and decoding a multi-view video and apparatus therefor
KR20110085896A (en) * 2010-01-19 2011-07-27 삼성전자주식회사 Method and apparatus for encoding/decoding motion vector based on reduced motion vector predictor candidates
KR20110129805A (en) * 2010-05-26 2011-12-02 한양대학교 산학협력단 Method for predicting motion vectors in a video codec that allows multiple referencing, motion vector encoding/decoding apparatus using the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005295526A (en) * 2004-03-11 2005-10-20 Matsushita Electric Ind Co Ltd Image encoding method, image encoding apparatus, and image encoding program
KR100941608B1 (en) * 2006-10-17 2010-02-11 경희대학교 산학협력단 Method for encoding and decoding a multi-view video and apparatus therefor
KR20100001078A (en) * 2008-06-26 2010-01-06 에스케이 텔레콤주식회사 Method and apparatus for encoding and decoding motion vector
KR20110085896A (en) * 2010-01-19 2011-07-27 삼성전자주식회사 Method and apparatus for encoding/decoding motion vector based on reduced motion vector predictor candidates
KR20110129805A (en) * 2010-05-26 2011-12-02 한양대학교 산학협력단 Method for predicting motion vectors in a video codec that allows multiple referencing, motion vector encoding/decoding apparatus using the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017105097A1 (en) * 2015-12-17 2017-06-22 삼성전자 주식회사 Video decoding method and video decoding apparatus using merge candidate list
US10666936B2 (en) 2015-12-17 2020-05-26 Samsung Electronics Co., Ltd. Video decoding method and video decoding apparatus using merge candidate list

Similar Documents

Publication Publication Date Title
WO2019107916A1 (en) Image decoding method and apparatus based on inter-prediction in image coding system
WO2017026681A1 (en) Inter prediction method and apparatus in video coding system
WO2020226424A1 (en) Image encoding/decoding method and device for performing mip and lfnst, and method for transmitting bitstream
WO2020171444A1 (en) Dmvr-based inter-prediction method and device
WO2020189893A1 (en) Bdof-based inter prediction method and device
WO2014038906A1 (en) Image decoding method and apparatus using same
WO2021034123A1 (en) Image encoding/decoding method and device for performing weighted prediction, and method for transmitting bitstream
WO2020184848A1 (en) Dmvr-based inter-prediction method and device
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
WO2019194514A1 (en) Image processing method based on inter prediction mode, and device therefor
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
WO2020032609A1 (en) Affine motion prediction-based image decoding method and device using affine merge candidate list in image coding system
WO2021006579A1 (en) Video encoding/decoding method and device for deriving weight index for bidirectional prediction of merge candidate, and method for transmitting bitstream
WO2015099400A1 (en) Method and apparatus for encoding/decoding multilayer video signal
WO2011129672A2 (en) Video encoding/decoding apparatus and method
WO2020050695A1 (en) Motion prediction-based image decoding method and apparatus using merge candidate list in image coding system
WO2021172914A1 (en) Image decoding method for residual coding and device for same
WO2021060834A1 (en) Method and device for subpicture-based image encoding/decoding, and method for transmitting bitstream
WO2021006697A1 (en) Image decoding method for residual coding and apparatus therefor
WO2013168952A1 (en) Inter-layer prediction method and apparatus using same
WO2021006698A1 (en) Image coding method and device in image coding system
WO2021040458A1 (en) Video signal processing method and device
WO2015147426A1 (en) Multilayer video signal encoding/decoding method and device

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

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

Country of ref document: EP

Kind code of ref document: A1