WO2015141977A1 - 3d 비디오 부호화/복호화 방법 및 장치 - Google Patents

3d 비디오 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
WO2015141977A1
WO2015141977A1 PCT/KR2015/002275 KR2015002275W WO2015141977A1 WO 2015141977 A1 WO2015141977 A1 WO 2015141977A1 KR 2015002275 W KR2015002275 W KR 2015002275W WO 2015141977 A1 WO2015141977 A1 WO 2015141977A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
motion vector
depth
picture
texture
Prior art date
Application number
PCT/KR2015/002275
Other languages
English (en)
French (fr)
Inventor
유선미
남정학
예세훈
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to CN201580012725.5A priority Critical patent/CN106068649A/zh
Priority to EP15765547.3A priority patent/EP3122050A4/en
Priority to US15/118,392 priority patent/US20170180755A1/en
Publication of WO2015141977A1 publication Critical patent/WO2015141977A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0085Motion estimation from stereoscopic image signals

Definitions

  • the present invention relates to video coding, and more particularly, to coding of 3D video images.
  • High-efficiency image compression technology can be used to effectively transmit, store, and reproduce high-resolution, high-quality video information.
  • 3D video can provide realism and immersion using a plurality of view channels.
  • 3D video can be used in a variety of areas such as free viewpoint video (FVV), free viewpoint TV (FTV), 3DTV, social security and home entertainment.
  • FVV free viewpoint video
  • FTV free viewpoint TV
  • 3DTV social security and home entertainment.
  • 3D video using multi-view has a high correlation between views of the same picture order count (POC). Since the multi-view image captures the same scene at the same time by using several adjacent cameras, that is, multiple views, the correlation between the different views is high because it contains almost the same information except for parallax and slight lighting differences.
  • POC picture order count
  • the decoding target block of the current view may be predicted or decoded with reference to the block of another view.
  • the present invention provides a method and apparatus for deriving a motion vector of a depth picture from a texture picture in 3D video coding.
  • the present invention provides a method and apparatus for deriving a motion vector of a depth picture on a sub-block basis using MVI in 3D video coding.
  • the present invention provides a method and apparatus for deriving a motion vector of a sub-block in a depth picture without motion information in 3D video coding.
  • a 3D video decoding method includes determining whether to apply a motion vector inheritance that derives a motion vector of a depth picture using motion information of a texture picture, wherein the motion vector If it is determined that the succession is to be applied, deriving a current block in the depth picture into a depth subblock of a subblock size for the motion vector inheritance, from the texture block in the texture picture corresponding to the depth subblock; Deriving a motion vector of the block and generating a prediction sample of the depth subblock based on the motion vector of the depth subblock, and deriving a reconstruction sample of the current block.
  • a 3D video decoding apparatus determines whether to apply a motion vector inheritance that derives a motion vector of a depth picture using motion information of a texture picture, and determines the motion vector inheritance. If it is determined to apply, the current block in the depth picture is derived to a depth subblock of the sub-block size for the motion vector inheritance, and from the texture block in the texture picture corresponding to the depth sub-block of the depth sub-block And a prediction unit to derive a motion vector, generate a prediction sample of the depth subblock based on the motion vector of the depth subblock, and derive a reconstruction sample of the current block.
  • coding efficiency can be improved by deriving a motion vector of a depth picture from a texture picture in 3D video coding.
  • the prediction effect can be enhanced by deriving a motion vector of a depth picture on a sub-block basis using MVI in 3D video coding.
  • a prediction effect in 3D video coding, can be enhanced by deriving a motion vector of a subblock in a depth picture without motion information.
  • FIG. 1 is a diagram schematically illustrating a process of encoding and decoding 3D video to which the present invention can be applied.
  • FIG. 2 is a diagram schematically illustrating a configuration of a video encoding apparatus to which the present invention may be applied.
  • FIG. 3 is a diagram schematically illustrating a configuration of a video decoding apparatus to which the present invention may be applied.
  • FIG. 4 is a diagram schematically illustrating multi-view video coding to which the present invention may be applied.
  • FIG. 5 is a diagram schematically illustrating a process of deriving a motion vector of a depth picture using MVI.
  • FIG. 6 is a diagram schematically illustrating a process of deriving a motion vector of a depth picture on a sub-block basis using MVI.
  • FIG. 7 is a diagram schematically illustrating a method of filling a motion vector for a subblock in which a motion vector does not exist when deriving a motion vector of a depth picture using MVI in units of subblocks according to an embodiment of the present invention.
  • FIG. 8 is a flowchart schematically illustrating a method of deriving a motion vector of a depth picture on a sub-block basis using MVI according to an embodiment of the present invention.
  • each configuration in the drawings described in the present invention are shown independently for the convenience of description of the different characteristic functions, it does not mean that each configuration is implemented by separate hardware or separate software.
  • 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.
  • a pixel or a pel may mean a minimum unit constituting one image.
  • the term 'sample' may be used as a term indicating a value of a specific pixel.
  • the sample generally indicates the value of the pixel, but may indicate only the pixel value of the Luma component or only the pixel value of the Chroma component.
  • the unit may mean a basic unit of image processing or a specific position of an image. Units may be used interchangeably with terms such as block or area in some cases.
  • an M ⁇ N block may represent a set of samples or transform coefficients composed of M columns and N rows.
  • FIG. 1 is a diagram schematically illustrating a process of encoding and decoding 3D video to which the present invention can be applied.
  • the 3D video encoder may encode a video picture, a depth map, and a camera parameter to output a bitstream.
  • the depth map may be composed of distance information (depth information) between a camera and a subject with respect to pixels of a corresponding video picture (texture picture).
  • the depth map may be an image in which depth information is normalized according to bit depth.
  • the depth map may be composed of recorded depth information without color difference representation.
  • disparity information indicating the correlation between views may be derived from depth information of the depth map using camera parameters.
  • a general color image that is, a bitstream including a depth map and camera information together with a video picture (texture picture) may be transmitted to a decoder through a network or a storage medium.
  • the decoder side can receive the bitstream and reconstruct the video.
  • the 3D video decoder may decode the video picture and the depth map and the camera parameters from the bitstream. Based on the decoded video picture, the depth map and the camera parameters, the views required for the multi view display can be synthesized. In this case, when the display used is a stereo display, a 3D image may be displayed using two pictures from the reconstructed multi views.
  • the stereo video decoder can reconstruct two pictures that will each be incident in both from the bitstream.
  • a stereoscopic image may be displayed by using a view difference or disparity between a left image incident to the left eye and a right image incident to the right eye.
  • the multi view display is used together with the stereo video decoder, different views may be generated based on the two reconstructed pictures to display the multi view.
  • the 2D image may be restored and the image may be output to the 2D display.
  • the decoder may output one of the reconstructed images to the 2D display when using a 3D video decoder or a stereo video decoder.
  • view synthesis may be performed at the decoder side and may be performed at the display side.
  • the decoder and the display may be one device or separate devices.
  • the 3D video decoder, the stereo video decoder, and the 2D video decoder are described as separate decoders.
  • one decoding apparatus may perform 3D video decoding, stereo video decoding, and 2D video decoding.
  • the 3D video decoding apparatus may perform 3D video decoding
  • the stereo video decoding apparatus may perform stereo video decoding
  • the 2D video decoding apparatus may perform the 2D video decoding apparatus.
  • the multi view display may output 2D video or output stereo video.
  • FIG. 2 is a diagram schematically illustrating a configuration of a video encoding apparatus to which the present invention may be applied.
  • the video encoding apparatus 200 may include a picture splitter 205, a predictor 210, a subtractor 215, a transformer 220, a quantizer 225, a reorderer 230, An entropy encoding unit 235, an inverse quantization unit 240, an inverse transform unit 245, an adder 250, a filter unit 255, and a memory 260 are included.
  • the picture dividing unit 205 may divide the input picture into at least one processing unit block.
  • the processing unit block may be a coding unit block, a prediction unit block, or a transform unit block.
  • the coding unit block may be divided along the quad tree structure from the largest coding unit block as a unit block of coding.
  • the prediction unit block is a block partitioned from the coding unit block and may be a unit block of sample prediction. In this case, the prediction unit block may be divided into sub blocks.
  • the transform unit block may be divided from the coding unit block along a quad tree structure, and may be a unit block for deriving a transform coefficient or a unit block for deriving a residual signal from the transform coefficient.
  • a coding unit block is called a coding block or a coding unit
  • a prediction unit block is called a prediction block or a prediction unit
  • a transform unit block is called a transform block or a transform unit.
  • a prediction block or prediction unit may mean a specific area in the form of a block within a picture or may mean an array of prediction samples.
  • a transform block or a transform unit may mean a specific area in a block form within a picture, or may mean an array of transform coefficients or residual samples.
  • the prediction unit 210 may perform a prediction on a block to be processed (hereinafter, referred to as a current block) and generate a prediction block including prediction samples of the current block.
  • the unit of prediction performed by the prediction unit 210 may be a coding block, a transform block, or a prediction block.
  • the prediction unit 210 may determine whether intra prediction or inter prediction is applied to the current block.
  • the prediction unit 210 may derive a prediction sample for the current block based on neighboring block pixels in a picture to which the current block belongs (hereinafter, referred to as the current picture). In this case, the prediction unit 210 may (i) derive a prediction sample based on the average or interpolation of neighbor reference samples of the current block, and (ii) a specific direction with respect to the prediction target pixel among the neighboring blocks of the current block. A prediction sample may be derived based on a reference sample present at. For convenience of explanation, the case of (i) is referred to as non-directional mode and the case of (ii) is referred to as directional mode. The prediction unit 210 may determine the prediction mode applied to the current block by using the prediction mode applied to the neighboring block.
  • the prediction unit 210 may derive a prediction sample for the current block based on the samples specified by the motion vector on the reference picture.
  • the predictor 210 may induce a prediction sample for the current block by applying any one of a skip mode, a merge mode, and an MVP mode.
  • the prediction unit 210 may use the motion information of the neighboring block as the motion information of the current block.
  • the skip mode unlike the merge mode, the difference (residual) between the prediction sample and the original sample is not transmitted.
  • the motion vector of the neighboring block may be used as a motion vector predictor (MVP) to derive the motion vector of the current block.
  • MVP motion vector predictor
  • the neighboring block includes a spatial neighboring block present in the current picture and a temporal neighboring block present in the collocated picture.
  • the motion information includes a motion vector and a reference picture.
  • motion information of a temporal neighboring block is used in the skip mode and the merge mode, the highest picture on the reference picture list may be used as the reference picture.
  • the prediction unit 210 may perform inter view prediction.
  • the predictor 210 may construct a reference picture list by including pictures of other views. For inter view prediction, the predictor 210 may derive a disparity vector. Unlike a motion vector that specifies a block corresponding to the current block in another picture in the current view, the disparity vector may specify a block corresponding to the current block in another view of the same access unit (AU) as the current picture.
  • AU access unit
  • the prediction unit 210 may specify a depth block in a depth view based on the disparity vector, configure the merge list, inter view motion prediction, and residual. Prediction, illumination compensation (IC), view synthesis, and the like can be performed.
  • the disparity vector for the current block can be derived from the depth value using the camera parameter or from the motion vector or disparity vector of the neighboring block in the current or other view.
  • the prediction unit 210 may include an inter-view merging candidate (IvMC) corresponding to temporal motion information of a reference view and an inter-view disparity vector candidate corresponding to the disparity vector.
  • view disparity vector candidate (IvDC) shifted IvMC derived by shifting the disparity vector
  • texture merge candidate derived from the texture corresponding to when the current block is a block on the depth map texture merging candidate (T)
  • D disparity derived merging candidate
  • VSP view synthesis prediction merge candidate derived based on view synthesis : VSP
  • the number of candidates included in the merge candidate list applied to the dependent view may be limited to a predetermined value.
  • the prediction unit 210 may apply the inter-view motion vector prediction to predict the motion vector of the current block based on the disparator vector.
  • the prediction unit 210 may derive the disparity vector based on the conversion of the maximum depth value in the corresponding depth block.
  • a block including the reference sample may be used as the reference block.
  • the prediction unit 210 may use the motion vector of the reference block as a candidate motion parameter or motion vector predictor candidate of the current block, and use the disparity vector as a candidate disparity vector for DCP.
  • the subtraction unit 215 generates a residual sample which is a difference between the original sample and the prediction sample.
  • residual samples may not be generated as described above.
  • the transform unit 220 generates a transform coefficient by transforming the residual sample in units of transform blocks.
  • the quantization unit 225 may quantize the transform coefficients to generate quantized transform coefficients.
  • the reordering unit 230 rearranges the quantized transform coefficients.
  • the reordering unit 230 may reorder the quantized transform coefficients in the form of a block into a one-dimensional vector form by scanning the coefficients.
  • the entropy encoding unit 235 may perform entropy encoding on the quantized transform coefficients.
  • Entropy encoding may include, for example, encoding methods such as Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC).
  • CABAC Context-Adaptive Binary Arithmetic Coding
  • the entropy encoding unit 235 may encode information necessary for video reconstruction other than the quantized transform coefficients (eg, a value of a syntax element) together or separately.
  • Entropy-encoded information may be transmitted or stored in units of NAL units in the form of a bitstream.
  • the dequantization unit 240 inversely quantizes the quantized transform coefficients to generate transform coefficients.
  • the inverse transform unit 245 inverse transforms the transform coefficients to generate residual samples.
  • the adder 250 reconstructs the picture by combining the residual sample and the predictive sample.
  • the residual sample and the predictive sample may be added in units of blocks to generate a reconstructed block.
  • the adder 250 has been described in a separate configuration, the adder 250 may be part of the predictor 210.
  • the filter unit 255 may apply a deblocking filter and / or an offset to the reconstructed picture. Through the deblocking filtering mill / or offset, the artifacts at the block boundaries in the reconstructed picture or the distortion in the quantization process can be corrected.
  • the offset may be applied on a sample basis or may be applied after the process of deblocking filtering is completed.
  • the memory 260 may store information necessary for reconstructed pictures or encoding / decoding.
  • the memory 260 may store pictures used for inter prediction / inter-view prediction.
  • pictures used for inter prediction / inter-view prediction may be designated by a reference picture set or a reference picture list.
  • one encoding device has been described as encoding the independent view and the dependent view, this is for convenience of description, and a separate encoding device is configured for each view or a separate internal module (for example, prediction for each view). B) may be configured.
  • FIG. 3 is a diagram schematically illustrating a configuration of a video decoding apparatus to which the present invention may be applied.
  • the video decoding apparatus 300 includes an entropy decoding unit 310, a reordering unit 320, an inverse quantization unit 330, an inverse transform unit 340, a predictor 350, and an adder 360.
  • the filter unit 370 and the memory 380 are included.
  • the video decoding apparatus 300 may reconstruct the video in response to a process in which the video information is processed in the video encoding apparatus.
  • the video decoding apparatus 300 may perform video decoding using a processing unit applied in the video encoding apparatus.
  • the processing unit block of video decoding may be a coding unit block, a prediction unit block, or a transform unit block.
  • the coding unit block may be divided along the quad tree structure from the largest coding unit block as a unit block of decoding.
  • the prediction unit block is a block partitioned from the coding unit block and may be a unit block of sample prediction. In this case, the prediction unit block may be divided into sub blocks.
  • the transform unit block may be divided from the coding unit block along a quad tree structure, and may be a unit block for deriving a transform coefficient or a unit block for deriving a residual signal from the transform coefficient.
  • the entropy decoding unit 310 may parse the bitstream and output information necessary for video reconstruction or picture reconstruction. For example, the entropy decoding unit 310 may decode the information in the bitstream based on the exponential Golomb, CAVLC, CABAC, etc., and output a syntax element value required for video reconstruction, a quantized value of transform coefficients related to the residual, and the like. have.
  • the bitstream may be input for each view.
  • information about each view may be multiplexed in the bitstream.
  • the entropy decoding unit 310 may de-multiplex the bitstream and parse for each view.
  • the reordering unit 320 may rearrange the quantized transform coefficients in the form of a two-dimensional block.
  • the reordering unit 320 may perform reordering in response to coefficient scanning performed by the encoding apparatus.
  • the inverse quantization unit 330 may dequantize the quantized transform coefficients based on the (inverse) quantization parameter and output the transform coefficients.
  • information for deriving a quantization parameter may be signaled from the encoding apparatus.
  • the inverse transform unit 340 may inverse residual transform coefficients to derive residual samples.
  • the prediction unit 350 may perform prediction on the current block and generate a prediction block including prediction samples for the current block.
  • the unit of prediction performed by the prediction unit 350 may be a coding block, a transform block, or a prediction block.
  • the prediction unit 350 may determine whether to apply intra prediction or inter prediction.
  • a unit for determining which of intra prediction and inter prediction is to be applied and a unit for generating a prediction sample may be different.
  • the unit for generating the prediction sample in inter prediction and intra prediction may also be different.
  • the prediction unit 350 may derive the prediction sample for the current block based on the neighboring block pixels in the current picture.
  • the prediction unit 350 may derive the prediction sample for the current block by applying the directional mode or the non-directional mode based on the peripheral reference samples of the current block.
  • the prediction mode to be applied to the current block may be determined using the intra prediction mode of the neighboring block.
  • the prediction unit 350 may derive the prediction sample for the current block based on the samples specified by the motion vector on the reference picture.
  • the prediction unit 350 may induce a prediction sample for the current block by applying any one of a skip mode, a merge mode, and an MVP mode.
  • the motion information of the neighboring block may be used as the motion information of the current block.
  • the neighboring block may include a spatial neighboring block and a temporal neighboring block.
  • the predictor 350 may construct a merge candidate list using motion information of available neighboring blocks, and use information indicated by the merge index on the merge candidate list as a motion vector of the current block.
  • the merge index may be signaled from the encoding device.
  • the motion information includes a motion vector and a reference picture. When motion information of a temporal neighboring block is used in the skip mode and the merge mode, the highest picture on the reference picture list may be used as the reference picture.
  • the difference (residual) between the prediction sample and the original sample is not transmitted.
  • the motion vector of the current block may be derived using the motion vector of the neighboring block as a motion vector predictor (MVP).
  • the neighboring block may include a spatial neighboring block and a temporal neighboring block.
  • the prediction unit 350 may perform inter view prediction.
  • the prediction unit 350 may configure a reference picture list including pictures of other views.
  • the predictor 210 may derive a disparity vector.
  • the prediction unit 350 may specify a depth block in a depth view based on the disparity vector, configure the merge list, inter view motion prediction, and residual. Prediction, illumination compensation (IC), view synthesis, and the like can be performed.
  • the disparity vector for the current block can be derived from the depth value using the camera parameter or from the motion vector or disparity vector of the neighboring block in the current or other view.
  • Camera parameters may be signaled from the encoding device.
  • the prediction unit 350 shifts the IvMC corresponding to the temporal motion information of the reference view, the IvDC corresponding to the disparity vector, and the disparity vector. Shifted IvMC derived by a subfield, a texture merge candidate (T) derived from a texture corresponding to a case in which the current block is a block on a depth map, and a disparity derivation merge candidate (D) derived using disparity from a texture merge candidate. ), A view synthesis prediction merge candidate (VSP) derived based on view synthesis may be added to the merge candidate list.
  • VSP view synthesis prediction merge candidate
  • the number of candidates included in the merge candidate list applied to the dependent view may be limited to a predetermined value.
  • the prediction unit 350 may apply inter-view motion vector prediction to predict the motion vector of the current block based on the disparator vector.
  • the prediction unit 350 may use a block in the reference view specified by the disparity vector as the reference block.
  • the prediction unit 350 may use the motion vector of the reference block as a candidate motion parameter or motion vector predictor candidate of the current block, and use the disparity vector as a candidate disparity vector for DCP.
  • the adder 360 may reconstruct the current block or the current picture by adding the residual sample and the predictive sample.
  • the adder 360 may reconstruct the current picture by adding the residual sample and the predictive sample in block units. Since the residual is not transmitted when the skip mode is applied, the prediction sample may be a reconstruction sample.
  • the adder 360 has been described in a separate configuration, the adder 360 may be part of the predictor 350.
  • the filter unit 370 may apply deblocking filtering and / or offset to the reconstructed picture.
  • the offset may be adaptively applied as an offset in a sample unit.
  • the memory 380 may store information necessary for reconstruction picture or decoding.
  • the memory 380 may store pictures used for inter prediction / inter-view prediction.
  • pictures used for inter prediction / inter-view prediction may be designated by a reference picture set or a reference picture list.
  • the reconstructed picture can be used as a reference picture.
  • the memory 380 may output the reconstructed picture in the output order.
  • the output unit may display a plurality of different views.
  • each decoding apparatus may operate for each view, and an operation unit (eg, a prediction unit) corresponding to each view may be provided in one decoding apparatus.
  • an operation unit eg, a prediction unit
  • Multi-view video coding can enhance video coding efficiency for the current view by coding the current picture using coded data of another view belonging to the same access unit (AU) as the current picture.
  • AU may mean a set of pictures having the same Picture Order Count (POC).
  • POC Picture Order Count
  • views may be coded in AU units and pictures may be coded in view units. Coding proceeds between views according to a predetermined order.
  • the first coded view may be referred to as a base view or an independent view.
  • a view that can be coded by referring to another view after the independent view is coded may be referred to as a dependent view.
  • another view referred to in coding of the current view may be referred to as a reference view.
  • FIG. 4 is a diagram schematically illustrating multi-view video coding to which the present invention may be applied.
  • pictures with different view IDs in the same AU and the same POC are coded according to a predefined view coding order.
  • VO which is the first coded view in the AU
  • V1 which is the next coded view
  • the base view is coded by referring to pictures belonging to the base view without referring to other views.
  • the dependent view is coded after the base view, with reference to other views already coded.
  • a CU belonging to a dependent view may perform inter prediction by referring to a picture that is already coded.
  • a method of performing prediction by referring to a picture having the same view ID is called motion compensation prediction (MCP)
  • MCP motion compensation prediction
  • DCP Display Image Compensated Prediction
  • the A block may perform MCP with reference to a picture belonging to the same view V1 as itself to derive prediction samples.
  • the B block may perform DCP with reference to a picture of a view VO different from itself in the same AU to derive prediction samples.
  • the 3D video includes a texture picture having general color image information and a depth or depth map picture having depth information about the texture picture.
  • the depth picture may be coded with reference to coding information of a texture picture at the same time point (same time).
  • the depth picture may be coded with reference to coding information of a texture picture having the same POC as the depth picture.
  • a depth picture is taken and acquired at the same time as a texture picture at the same time, or is generated by calculating depth information for a texture picture at the same time, the depth picture and the texture picture at the same time have a very high correlation.
  • information of a texture picture that is already coded for example, block division information or motion information of a texture picture
  • the motion information of the texture picture may be used in the depth picture in the same way, and this is called a motion parameter inheritance (MPI).
  • MPI motion parameter inheritance
  • MVI motion vector inheritance
  • FIG. 5 is a diagram schematically illustrating a process of deriving a motion vector of a depth picture using MVI.
  • a motion vector may be inherited from the corresponding block 540 in the texture picture 530 at the same position as the current block 520 in the depth picture 510.
  • the motion vector 550 may be derived from the center of the corresponding block 540 and used as the motion vector 560 for the current block 520. In this case, when the corresponding block 540 at the same position as the current block 520 is an intra predicted block, the motion vector 550 of the corresponding block 540 is not obtained.
  • the corresponding block in the texture picture may be divided into sub-blocks having a predetermined size, motion information may be taken in units of the divided sub-blocks, and applied to the current block in the depth picture.
  • the corresponding block may be a prediction unit (PU)
  • the sub block may be a sub PU.
  • FIG. 6 is a diagram schematically illustrating a process of deriving a motion vector of a depth picture on a sub-block basis using MVI.
  • the motion vector of the current block 620 in the depth picture 610 may be inherited from the corresponding block 640 in the texture picture 630.
  • the succession of the motion vector may be performed in units of subblocks.
  • the sub blocks C1 to C4 in the current block 620 and the sub blocks C'1 to C'4 in the corresponding block 640 are It becomes a sub PU (or sub prediction block).
  • the size of the sub-PU may be set to NxM (N, M is an integer greater than 0), and regardless of the block partitioning information in the original texture picture, the sub-block in the current block 620 based on the size of the defined sub-PU.
  • the motion vectors of the fields C1 to C4 may be obtained from the subblocks C'1 to C'4 in the corresponding block 640.
  • the position where the motion information is obtained from the sub PU may be the center of the sub PU or may be a left-top position of the sub PU.
  • the present invention provides a method of filling motion information for a subPU having no motion information when deriving motion information of a depth picture in units of subPUs using MVI.
  • FIG. 7 is a diagram schematically illustrating a method of filling a motion vector for a subblock in which a motion vector does not exist when deriving a motion vector of a depth picture using MVI in units of subblocks according to an embodiment of the present invention.
  • the depth block 720 of the depth picture 710 currently coded is divided according to a predefined sub block size.
  • the predefined subblock size may be information signaled from the encoding apparatus, and may be NxM (N, M is an integer greater than 0).
  • Each divided subblock of the depth block 720 (hereinafter, a subblock in the depth block 720 is called a depth subblock) is a texture subblock at a position corresponding to each of the depth subblocks in the texture picture 730. You can get the motion vector from.
  • the depth block 720 may be a prediction block or a PU
  • the depth sub block may be a sub prediction block or a sub PU.
  • the texture picture 730 may be a picture having the same time as the depth picture 710, that is, a picture having the same POC as the depth picture 710, and may be a picture having the same view ID as the depth picture 710.
  • the texture subblock may be a prediction block (or PU) in the same position as the depth subblock in the texture picture 730.
  • the texture block 740 may be a prediction block (or PU) existing at the same position as the depth block 720 in the texture picture 730.
  • the motion vector of the depth subblock When the motion vector of the depth subblock is derived from the texture subblock in the texture picture 730, the motion vector of the texture subblock 742 may not exist. For example, when the texture subblock is coded in the intra prediction mode, the motion vector may not exist. In this case, the depth sub block 722 cannot obtain motion vector information from the texture sub block 742.
  • the motion vector of the depth subblock 722 may be filled with the motion vector of the neighboring block.
  • the motion vector of the neighboring block may be the motion vector of the left or upper depth subblock (or texture subblock).
  • the motion vector of the depth subblock 722 may be filled with a predefined motion vector.
  • the predefined motion vector may be a motion vector of a block indicated by a disparity vector from neighboring blocks (NBDV) or a depth oriented NBDV (DoNBDV).
  • the latest motion vector may be the latest motion vector, which is a motion vector derived immediately before, and the latest motion vector may be continuously updated. Alternatively, it may be a zero vector (0, 0).
  • the disparity vector derived from the neighboring block is referred to as NBDV
  • DoNBDV the disparity vector obtained by correcting the disparity vector derived from the NBDV using depth information
  • the motion vector of the depth sub block 722 may be filled with a motion vector existing at a specific position in the depth block 720.
  • the specific position may be a center position in the block, an upper left position, a lower right position, and the like.
  • a specific position (eg, a center position) is calculated in the depth block 720, and if a motion vector exists in a texture subblock corresponding to the specific position, the motion vector of the texture subblock is defined as a default motion vector. can do.
  • a sub block of the texture block 740 corresponding to the center position in the depth block 720 may be a texture sub block 744.
  • a motion vector of the texture subblock 744 exists, it may be set as a default motion vector for the depth block 720. If motion information is not filled from the texture subblock when the motion vector of the depth subblock is derived, the motion vector of the corresponding depth subblock 722 may be set as a default motion vector.
  • the default motion vector itself may not be set because the motion vector does not exist at the specific position.
  • whether to perform the MVI may be determined by setting the default motion vector. For example, when the default motion vector is not set, the MVI for the depth block 720 may not be performed. Alternatively, when the default motion vector is not set, the depth subblock 722 in which the motion vector does not exist may set the motion vector as a motion vector mapped to NBDV or DoNBDV, a zero vector, or the like.
  • FIG. 8 is a flowchart schematically illustrating a method of deriving a motion vector of a depth picture on a sub-block basis using MVI according to an embodiment of the present invention.
  • the method of FIG. 8 may be performed in the encoding apparatus of FIG. 2 and the decoding apparatus of FIG. 3.
  • the prediction unit is performed by the encoding apparatus of FIG. 2 and the decoding apparatus of FIG. 3.
  • the prediction unit determines whether to apply a motion vector inheritance (S800).
  • the motion vector inheritance refers to a method of deriving a motion vector of a depth picture using the motion information of the texture picture as described above.
  • the motion information of the texture picture may be equally used in the depth picture.
  • whether to apply motion vector inheritance to the depth picture may be determined based on information signaled from the encoding apparatus.
  • the prediction unit induces the current block in the depth picture to a depth subblock to which motion vector inheritance is applied (S810).
  • the current block may be a prediction block or a prediction unit which is a unit in which prediction is performed.
  • the depth subblock may be determined based on the subblock size information for motion vector inheritance.
  • the sub block size information for motion vector inheritance is information signaled by the encoding apparatus and may be NxM (N, M being an integer greater than 0).
  • the prediction unit derives a motion vector from the texture picture in units of depth subblocks (S820). More specifically, the prediction unit may induce a texture block (texture subblock) existing at the same position as the depth subblock in the texture picture, and set the motion vector of the texture block as the motion vector of the depth subblock.
  • a texture block texture subblock
  • the texture picture is a picture of the same time as the depth picture, and may be a picture having the same value as the POC and view ID of the depth picture.
  • the depth sub block may not obtain a motion vector from the texture block of the texture picture.
  • the predictor may derive the motion vector of the depth subblock as described above with reference to FIG. 7.
  • the predictor may derive a default motion vector from a corresponding block in a texture picture corresponding to a specific position (eg, a center position, an upper left position, a lower right position, etc.) of the current block. If the motion information of the texture block does not exist when the motion vector of the depth subblock is derived, the prediction unit may set the default motion vector as the motion vector of the depth subblock.
  • a specific position eg, a center position, an upper left position, a lower right position, etc.
  • a default motion vector may not be derived. That is, a case in which the default motion vector cannot be set may occur.
  • the prediction unit may determine whether to perform the MVI by setting the default motion vector. For example, when the default motion vector is not set, the prediction unit may not perform MVI for the current block. Alternatively, when the default motion vector is not set, the prediction unit may set the motion vector of the depth subblock as a motion vector mapped to NBDV or DoNBDV, a zero vector, or the like.
  • the prediction unit may set the motion vector of the neighboring block as the motion vector of the depth subblock.
  • the motion vector of the neighboring block may be the motion vector of the left or upper depth subblock.
  • the motion vector of the neighboring block may be a motion vector of the texture block located on the left or top of the texture block in which there is no motion information.
  • the prediction unit may set a predefined motion vector as the motion vector of the depth subblock.
  • the predefined motion vector may be a zero vector, a latest motion vector which is a motion vector derived immediately before, or a motion vector of a block indicated by NBDV or DoNBDV.
  • the prediction unit generates a prediction sample of the depth subblock based on the motion vector of the derived depth subblock (S830).
  • the prediction unit may use samples of the region indicated by the motion vector of the depth subblock on the reference picture as the prediction samples of the depth subblock.
  • the prediction unit may configure a prediction sample for the current block based on the prediction samples of the depth subblock, and may derive a reconstruction sample by adding the prediction sample and the residual sample of the current block.
  • one of a PU unit or a sub-PU unit may be used.
  • an additional flag may be used to adaptively select one of a PU unit or a sub-PU unit.

Landscapes

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

Abstract

본 발명은 3D 비디오 복호화 방법 및 장치를 제공한다. 본 발명에 따른 3D 비디오 복호화 방법은 텍스처 픽처(texture picture)의 움직임 정보를 이용하여 뎁스 픽처(depth picture)의 움직임 벡터를 유도하는 움직임 벡터 승계(motion vector inheritance)를 적용할지 여부를 판단하는 단계, 상기 움직임 벡터 승계를 적용하기로 판단한 경우, 상기 뎁스 픽처 내 현재 블록을 상기 움직임 벡터 승계를 위한 서브 블록 크기의 뎁스 서브 블록으로 유도하는 단계, 상기 뎁스 서브 블록에 대응하는 상기 텍스처 픽처 내 텍스처 블록으로부터 상기 뎁스 서브 블록의 움직임 벡터를 유도하는 단계 및 상기 뎁스 서브 블록의 움직임 벡터를 기반으로 상기 뎁스 서브 블록의 예측 샘플을 생성하여, 상기 현재 블록의 복원 샘플을 유도하는 단계를 포함한다.

Description

3D 비디오 부호화/복호화 방법 및 장치
본 발명은 비디오 코딩에 관한 기술로서, 더 구체적으로는 3D 비디오 영상의 코딩에 관한 것이다.
최근 고해상도, 고품질의 영상에 대한 요구가 다양한 응용 분야에서 증가하고 있다. 하지만, 영상이 고해상도를 가지고 고품질이 될수록 해당 영상에 관한 정보량도 함께 증가한다.
따라서 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 정보를 전송하거나 기존의 저장 매체를 이용해 영상 정보를 저장하는 경우에는, 정보의 전송 비용과 저장 비용이 증가하게 된다. 고해상도, 고품질 영상의 정보를 효과적으로 전송하거나 저장하고, 재생하기 위해 고효율의 영상 압축 기술을 이용할 수 있다.
한편, 고해상/대용량의 영상을 처리할 수 있게 됨에 따라서, 3D 비디오를 이용한 디지털 방송 서비스가 차세대 방송 서비스의 하나로 주목 받고 있다. 3D 비디오는 복수의 시점(view) 채널을 이용하여 현장감과 몰입감을 제공할 수 있다.
3D 비디오는 FVV(free viewpoint video), FTV(free viewpoint TV), 3DTV, 사회 안전망(surveillance) 및 홈 엔터테인먼트와 같은 다양한 영역에 사용될 수 있다.
싱글 뷰 비디오(single view video)와 달리 멀티 뷰를 이용한 3D 비디오는 동일한 POC(picture order count)의 뷰들 사이에 높은 상관도(correlation)를 가진다. 멀티 뷰 영상은 인접한 여러 카메라 즉, 여러 시점(view)를 이용하여 똑같은 장면을 동시에 촬영하기 때문에, 시차와 약간의 조명 차이를 제외하면 거의 같은 정보를 담고 있으므로 서로 다른 뷰 간의 상관도가 높다.
따라서, 멀티 뷰 비디오의 인코딩/디코딩에서는 서로 다른 뷰 사이의 상관도를 고려하여, 현재 뷰의 인코딩 및/또는 디코딩에 필요한 정보를 획득할 수 있다. 예를 들어, 현재 뷰의 디코딩 대상 블록을 다른 뷰의 블록을 참조하여 예측하거나 디코딩할 수 있다.
본 발명은 3D 비디오 코딩에서 텍스처 픽처로부터 뎁스 픽처의 움직임 벡터를 유도하는 방법 및 장치를 제공한다.
본 발명은 3D 비디오 코딩에서 MVI를 이용하여 서브 블록 단위로 뎁스 픽처의 움직임 벡터를 유도하는 방법 및 장치를 제공한다.
본 발명은 3D 비디오 코딩에서 움직임 정보가 존재하지 않는 뎁스 픽처 내 서브 블록의 움직임 벡터를 유도하는 방법 및 장치를 제공한다.
본 발명의 일 실시예에 따르면, 3D 비디오 복호화 방법이 제공된다. 상기 3D 비디오 복호화 방법은 텍스처 픽처(texture picture)의 움직임 정보를 이용하여 뎁스 픽처(depth picture)의 움직임 벡터를 유도하는 움직임 벡터 승계(motion vector inheritance)를 적용할지 여부를 판단하는 단계, 상기 움직임 벡터 승계를 적용하기로 판단한 경우, 상기 뎁스 픽처 내 현재 블록을 상기 움직임 벡터 승계를 위한 서브 블록 크기의 뎁스 서브 블록으로 유도하는 단계, 상기 뎁스 서브 블록에 대응하는 상기 텍스처 픽처 내 텍스처 블록으로부터 상기 뎁스 서브 블록의 움직임 벡터를 유도하는 단계 및 상기 뎁스 서브 블록의 움직임 벡터를 기반으로 상기 뎁스 서브 블록의 예측 샘플을 생성하여, 상기 현재 블록의 복원 샘플을 유도하는 단계를 포함한다.
본 발명의 다른 실시예에 따르면, 3D 비디오 복호화 장치가 제공된다. 상기 3D 비디오 복호화 장치는 텍스처 픽처(texture picture)의 움직임 정보를 이용하여 뎁스 픽처(depth picture)의 움직임 벡터를 유도하는 움직임 벡터 승계(motion vector inheritance)를 적용할지 여부를 판단하고, 상기 움직임 벡터 승계를 적용하기로 판단한 경우, 상기 뎁스 픽처 내 현재 블록을 상기 움직임 벡터 승계를 위한 서브 블록 크기의 뎁스 서브 블록으로 유도하고, 상기 뎁스 서브 블록에 대응하는 상기 텍스처 픽처 내 텍스처 블록으로부터 상기 뎁스 서브 블록의 움직임 벡터를 유도하고, 상기 뎁스 서브 블록의 움직임 벡터를 기반으로 상기 뎁스 서브 블록의 예측 샘플을 생성하여, 상기 현재 블록의 복원 샘플을 유도하는 예측부를 포함한다.
본 발명에 의하면, 3D 비디오 코딩에서 텍스처 픽처로부터 뎁스 픽처의 움직임 벡터를 유도함으로써, 코딩 효율을 높일 수 있다.
본 발명에 의하면, 3D 비디오 코딩에서 MVI를 이용하여 서브 블록 단위로 뎁스 픽처의 움직임 벡터를 유도함으로써, 예측 효과를 높일 수 있다.
본 발명에 의하면, 3D 비디오 코딩에서 움직임 정보가 존재하지 않는 뎁스 픽처 내 서브 블록의 움직임 벡터를 유도함으로써, 예측 효과를 높일 수 있다.
도 1은 본 발명이 적용될 수 있는 3D 비디오의 인코딩 및 디코딩 과정을 개략적으로 설명하는 도면이다.
도 2는 본 발명이 적용될 수 있는 비디오 인코딩 장치의 구성을 개략적으로 설명하는 도면이다.
도 3은 본 발명이 적용될 수 있는 비디오 디코딩 장치의 구성을 개략적으로 설명하는 도면이다.
도 4는 본 발명이 적용될 수 있는 멀티 뷰 비디오 코딩을 개략적으로 설명하기 위한 도면이다.
도 5는 MVI를 이용하여 뎁스 픽처의 움직임 벡터를 유도하는 과정을 개략적으로 설명하는 도면이다.
도 6은 MVI를 이용하여 서브 블록 단위로 뎁스 픽처의 움직임 벡터를 유도하는 과정을 개략적으로 설명하는 도면이다.
도 7은 본 발명의 실시예에 따른 서브 블록 단위로 MVI를 이용하여 뎁스 픽처의 움직임 벡터 유도 시 움직임 벡터가 존재하지 않는 서브 블록에 대해 움직임 벡터를 채우는 방법을 개략적으로 설명하는 도면이다.
도 8은 본 발명의 실시예에 따른 MVI를 이용하여 서브 블록 단위로 뎁스 픽처의 움직임 벡터를 유도하는 방법을 개략적으로 나타낸 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니다. 본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
한편, 본 발명에서 설명되는 도면상의 각 구성들은 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성 요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다.

본 명세서에서 픽셀(pixel) 또는 펠(pel)은 하나의 영상을 구성하는 최소의 단위를 의미할 수 있다. 또한, 특정한 픽셀의 값을 나타내는 용어로서 ‘샘플(sample)’이 사용될 수 있다. 샘플은 일반적으로 픽셀의 값을 나타내지만, 휘도(Luma) 성분의 픽셀 값만을 지시할 수도 있고, 색차(Chroma) 성분의 픽셀 값만을 지시할 수도 있다.
유닛(unit)은 영상 처리의 기본 단위 또는 영상의 특정 위치를 의미할 수 있다. 유닛은 경우에 따라서 블록(block) 또는 영역(area) 등의 용어와 서로 혼용하여 사용될 수 있다. 일반적인 경우, MxN 블록은 M개의 열과 N개의 행으로 이루어진 샘플들 또는 변환 계수(transform coefficient)들의 집합을 나타낼 수 있다.

도 1은 본 발명이 적용될 수 있는 3D 비디오의 인코딩 및 디코딩 과정을 개략적으로 설명하는 도면이다.
도 1을 참조하면, 3D 비디오 인코더는 비디오 픽처 및 뎁스 맵(depth map)과 카메라 파라미터를 인코딩하여 비트스트림으로 출력할 수 있다.
뎁스 맵은 대응하는 비디오 픽처(텍스처 픽처)의 픽셀에 대하여 카메라와 피사체 간의 거리 정보(깊이 정보)로 구성될 수 있다. 예컨대, 뎁스 맵은 깊이 정보를 비트 뎁스(bit depth)에 따라 정규화한 영상일 수 있다. 이때, 뎁스 맵은 색차 표현없이 기록된 깊이 정보로 구성될 수 있다.
일반적으로 피사체와의 거리와 변위(디스패러티)는 서로 반비례하므로, 카메라 파라미터를 이용하여 뎁스 맵의 깊이 정보로부터 뷰 간의 상관도를 나타내는 디스패러티 정보를 유도할 수 있다.
일반적인 컬러 영상 즉, 비디오 픽처(텍스처 픽처)와 함께 뎁스 맵과 카메라 정보를 포함하는 비트스트림은 네트워크 또는 저장매체를 통해 디코더로 전송될 수 있다.
디코더 측에서는 비트스트림을 수신해서 비디오를 복원할 수 있다. 디코더 측에서 3D 비디오 디코더가 이용되는 경우에, 3D 비디오 디코더는 비트스트림으로부터 비디오 픽처와 뎁스 맵 및 카메라 파라미터를 디코딩할 수 있다. 디코딩된 비디오 픽처와 뎁스 맵 그리고 카메라 파라미터를 기반으로 멀티 뷰(multi view) 디스플레이에 필요한 뷰들을 합성할 수 있다. 이때, 사용되는 디스플레이가 스테레오(streo) 디스플레이인 경우라면, 복원된 멀티 뷰들 중에서 두 개의 픽처를 이용하여 3D 영상을 디스플레이 할 수 있다.
스테레오 비디오 디코더가 사용되는 경우에, 스테레오 비디오 디코더는 비트스트림으로부터 양 안에 각각 입사될 두 픽처를 복원할 수 있다. 스테레오 디스플레이에서는 왼쪽 눈에 입사되는 좌측 영상과 우측 눈에 입사되는 우측 영상의 시차(view difference) 혹은 변위(disparity)를 이용해서 입체 영상을 디스플레이 할 수 있다. 스테레오 비디오 디코더와 함께 멀티 뷰 디스플레이가 사용되는 경우에는, 복원된 두 픽처를 기반으로 다른 뷰들을 생성하여 멀티 뷰를 디스플레이할 수도 있다.
2D 디코더가 사용되는 경우에는 2차원 영상을 복원해서 2D 디스플레이로 영상을 출력할 수 있다. 2D 디스플레이를 사용하지만, 디코더는 3D 비디오 디코더를 사용하거나 스테레오 비디오 디코더를 사용하는 경우에는 복원된 영상들 중 하나를 2D 디스플레이로 출력할 수도 있다.
도 1의 구성에서, 뷰 합성은 디코더 측에서 수행될 수도 있고, 디스플레이 측에서 수행될 수도 있다. 또한, 디코더와 디스플레이는 하나의 장치일 수도 있고 별도의 장치일 수도 있다.
도 1에서는 설명의 편의를 위해 3D 비디오 디코더와 스테레오 비디오 디코더 그리고 2D 비디오 디코더가 별도의 디코더인 것으로 설명하였으나, 하나의 디코딩 장치가 3D 비디오 디코딩, 스테레오 비디오 디코딩 그리고 2D 비디오 디코딩을 모두 수행할 수도 있다. 또한, 3D 비디오 디코딩 장치가 3D 비디오 디코딩을 수행하고, 스테레오 비디오 디코딩 장치가 스테레오 비디오 디코딩을 수행하며, 2D 비디오 디코딩 장치가 2D 비디오 디코딩 장치를 수행할 수도 있다. 더 나아가, 멀티 뷰 디스플레이가 2D 비디오를 출력하거나 스테레오 비디오를 출력할 수도 있다.

도 2는 본 발명이 적용될 수 있는 비디오 인코딩 장치의 구성을 개략적으로 설명하는 도면이다.
도 2를 참조하면, 비디오 인코딩 장치(200)는 픽처 분할부(205), 예측부(210), 감산부(215), 변환부(220), 양자화부(225), 재정렬부(230), 엔트로피 인코딩부(235), 역양자화부(240), 역변환부(245), 가산부(250), 필터부(255) 및 메모리(260)를 포함한다.
픽처 분할부(205)는 입력된 픽처를 적어도 하나의 처리 단위 블록으로 분할할 수 있다. 이때, 처리 단위 블록은 코딩 단위 블록, 예측 단위 블록 또는 변환 단위 블록일 수 있다. 코딩 단위 블록은 코딩의 단위 블록으로서 최대 코딩 단위 블록으로부터 쿼드 트리 구조를 따라서 분할될 수 있다. 예측 단위 블록은 코딩 단위 블록으로부터 파티셔닝되는 블록으로서, 샘플 예측의 단위 블록일 수 있다. 이때, 예측 단위 블록은 서브 블록으로 나뉠 수도 있다. 변환 단위 블록은 코딩 단위 블록으로부터 쿼드 트리 구조를 따라서 분할 될 수 있으며, 변환 계수를 유도하는 단위 블록 또는 변환 계수로부터 잔차 신호를 유도하는 단위 블록일 수 있다.
이하, 설명의 편의를 위해, 코딩 단위 블록은 코딩 블록 또는 코딩 유닛이라 하고, 예측 단위 블록은 예측 블록 또는 예측 유닛이라 하며, 변환 단위 블록은 변환 블록 또는 변환 유닛이라 한다.
예측 블록 또는 예측 유닛은 픽처 내에서 블록 형태의 특정 영역을 의미할 수도 있고, 예측 샘플의 어레이를 의미할 수도 있다. 또한, 변환 블록 또는 변환 유닛은 픽처 내에서 블록 형태의 특정 영역을 의미할 수도 있고, 변환 계수 또는 레지듀얼 샘플의 어레이를 의미할 수도 있다.
예측부(210)는 처리 대상 블록(이하, 현재 블록이라 함)에 대한 예측을 수행하고, 상기 현재 블록에 대한 예측 샘플들을 포함하는 예측 블록을 생성할 수 있다. 예측부(210)에서 수행되는 예측의 단위는 코딩 블록일 수도 있고, 변환 블록일 수도 있고, 예측 블록일 수도 있다.
예측부(210)는 현재 블록에 인트라 예측이 적용되는지 인터 예측이 적용되는지를 결정할 수 있다.
인트라 예측의 경우에, 예측부(210)는 현재 블록이 속하는 픽처(이하, 현재 픽처) 내의 주변 블록 화소를 기반으로 현재 블록에 대한 예측 샘플을 유도할 수 있다. 이때, 예측부(210)는 (i) 현재 블록의 주변 참조 샘플들의 평균 혹은 인터폴레이션을 기반으로 하는 예측 샘플을 유도할 수도 있고, (ii) 현재 블록의 주변 블록들 중 예측 대상 픽셀에 대하여 특정 방향에 존재하는 참조 샘플을 기반으로 예측 샘플을 유도할 수도 있다. 설명의 편의를 위해, (i)의 경우를 비방향성 모드, (ii)의 경우를 방향성 모드라고 한다. 예측부(210)는 주변 블록에 적용된 예측 모드를 이용하여, 현재 블록에 적용되는 예측 모드를 결정할 수도 있다.
인터 예측의 경우에, 예측부(210)는 참조 픽처 상에서 움직임 벡터에 의해 특정되는 샘플들을 기반으로 현재 블록에 대한 예측 샘플을 유도할 수 있다. 예측부(210)는 스킵(skip) 모드, 머지(merge) 모드, 및 MVP 모드 중 어느 하나를 적용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다. 스킵 모드와 머지 모드의 경우에, 예측부(210)는 주변 블록의 움직임 정보를 현재 블록의 움직임 정보로 이용할 수 있다. 스킵 모드의 경우, 머지 모드와 달리 예측 샘플과 원본 샘플 사이의 차(레지듀얼)가 전송되지 않는다. MVP 모드의 경우, 주변 블록의 움직임 벡터를 움직임 벡터 예측자(motion vector predictor: MVP)로 이용하여 현재 블록의 움직임 벡터를 유도할 수 있다.
인터 예측의 경우에, 주변 블록은 현재 픽처 내에 존재하는 공간적 주변 블록과 참조 픽처(collocated picture)에 존재하는 시간적 주변 블록을 포함한다. 움직임 정보는 움직임 벡터와 참조 픽처를 포함한다. 스킵 모드와 머지 모드에서 시간적 주변 블록의 움직임 정보가 이용되는 경우에, 참조 픽처 리스트 상의 최상위 픽처가 참조 픽처로서 이용될 수도 있다.
종속 뷰(dependent view)에 대한 인코딩의 경우에, 예측부(210)는 인터 뷰 예측을 수행할 수도 있다.
예측부(210)는 다른 뷰의 픽처를 포함하여 참조 픽처 리스트를 구성할 수 있다. 인터 뷰 예측을 위해, 예측부(210)는 디스패리티(disparity) 벡터를 유도할 수 있다. 현재 뷰 내 다른 픽처에서 현재 블록에 대응하는 블록을 특정하는 움직임 벡터와 달리, 디스패리티 벡터는 현재 픽처와 동일한 AU(Access Unit)의 다른 뷰에서 현재 블록에 대응하는 블록을 특정할 수 있다.
예측부(210)는 디스패리티 벡터를 기반으로, 뎁스 뷰(depth view) 내의 뎁스 블록(depth block)을 특정할 수 있고, 머지 리스트의 구성, 인터 뷰 움직임 예측(inter view motion prediction), 레지듀얼 예측, IC(Illumination Compensation), 뷰 합성 등을 수행할 수 있다.
현재 블록에 대한 디스패리티 벡터는 카메라 파라미터를 이용하여 뎁스 값으로부터 유도되거나, 현재 또는 다른 뷰 내 주변 블록의 움직임 벡터 또는 디스패리티 벡터로부터 유도될 수 있다.
예컨대, 예측부(210)는 참조 뷰(reference view)의 시간적 움직임 정보에 대응하는 인터 뷰 머지 후보(inter-view merging candidate: IvMC), 디스패리티 벡터에 대응하는 인터 뷰 디스패리티 벡터 후보(inter-view disparity vector candidate: IvDC), 디스패리티 벡터의 쉬프트(shift)에 의해 유도되는 쉬프티드 인터뷰 머지 후보(shifted IvMC), 현재 블록이 뎁스 맵 상의 블록인 경우에 대응하는 텍스처로부터 유도되는 텍스처 머지 후보(texture merging candidate: T), 텍스처 머지 후보로부터 디스패리티를 이용하여 유도되는 디스패리티 유도 머지 후보(disparity derived merging candidate: D), 뷰 합성에 기반해서 유도되는 뷰 합성 예측 머지 후보(view synthesis prediction merge candidate: VSP) 등을 머지 후보 리스트에 추가할 수 있다.
이때, 종속 뷰에 적용되는 머지 후보 리스트에 포함되는 후보의 개수는 소정의 값으로 제한될 수 있다.
또한, 예측부(210)는 인터-뷰 움직임 벡터 예측을 적용하여, 디스패리터 벡터를 기반으로 현재 블록의 움직임 벡터를 예측할 수도 있다. 이때, 예측부(210)는 대응하는 깊이 블록 내 최대 깊이 값의 전환(conversion)에 기반하여 디스패리티 벡터를 유도할 수 있다. 참조 뷰 내 현재 블록의 샘플 위치에 디스패리티 벡터를 더하여 참조 뷰 내 참조 샘플의 위치가 특정되면, 참조 샘플을 포함하는 블록을 참조 블록으로 이용할 수 있다. 예측부(210)는 참조 블록의 움직임 벡터를 현재 블록의 후보 움직임 파라미터 혹은 움직임 벡터 예측자 후보로 이용할 수 있으며, 상기 디스패리티 벡터를 DCP를 위한 후보 디스패리티 벡터로 이용할 수 있다.
감산부(215)는 원본 샘플과 예측 샘플 간의 차이인 레지듀얼 샘플을 생성한다. 스킵 모드가 적용되는 경우에는, 상술한 바와 같이 레지듀얼 샘플을 생성하지 않을 수 있다.
변환부(220)는 변환 블록 단위로 레지듀얼 샘플을 변환하여 변환 계수(transform coefficient)를 생성한다. 양자화부(225)는 변환 계수들을 양자화하여, 양자화된 변환 계수를 생성할 수 있다.
재정렬부(230)는 양자화된 변환 계수를 재정렬한다. 재정렬부(230)는 계수들을 스캐닝(Scanning) 방법을 통해 블록 형태의 양자화된 변환 계수들을 1차원 벡터 형태로 재정렬할 수 있다.
엔트로피 인코딩부(235)는 양자화된 변환 계수들에 대한 엔트로피 인코딩을 수행할 수 있다. 엔트로피 인코딩에는 예를 들어, 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding) 등과 같은 인코딩 방법을 사용할 수 있다. 엔트로피 인코딩부(235)는 양자화된 변환 계수 외 비디오 복원에 필요한 정보들(예컨대, 신택스 엘리먼트(syntax element)의 값 등)을 함께 또는 별도로 인코딩할 수도 있다.
엔트로피 인코딩된 정보들은 비트스트림 형태로 NAL(Network Abstraction Layer) 유닛 단위로 전송 또는 저장될 수 있다.
역양자화(dequantization)부(240)는 양자화된 변환 계수를 역양자화하여 변환 계수를 생성한다. 역변환(inverse transform)부(245)는 변환 계수를 역변환하여 레지듀얼 샘플을 생성한다.
가산부(250)는 레지듀얼 샘플과 예측 샘플을 합쳐서 픽처를 복원한다. 레지듀얼 샘플과 예측 샘플은 블록 단위로 더해져서 복원 블록을 생성할 수도 있다. 여기서 가산부(250)는 별도의 구성으로 설명하였으나, 가산부(250)는 예측부(210)의 일부일 수도 있다.
복원된 픽처(reconstructed picture)에 대하여 필터부(255)는 디블록킹 필터 및/또는 오프셋을 적용할 수 있다. 디블록킹 필터링 밀/또는 오프셋을 통해, 복원 픽처 내 블록 경계의 아티팩트나 양자화 과정에서의 왜곡이 보정될 수 있다. 오프셋은 샘플 단위로 적용될 수도 있으며, 디블록킹 필터링의 과정이 완료된 후 적용될 수 있다.
메모리(260)는 복원 픽처 또는 인코딩/디코딩에 필요한 정보를 저장할 수 있다. 예컨대, 메모리(260)는 인터 예측/인터-뷰 예측에 사용되는 픽처들을 저장할 수 있다. 이때, 인터 예측/인터-뷰 예측에 사용되는 픽처들은 참조 픽처 세트 혹은 참조 픽처 리스트에 의해 지정될 수도 있다.
여기서는, 하나의 인코딩 장치가 독립 뷰 및 종속 뷰를 인코딩하는 것으로 설명하였으나, 이는 설명의 편의를 위한 것으로서, 각 뷰별로 별도의 인코딩 장치가 구성되거나 각 뷰별로 별도의 내부 모듈(예컨대, 각 뷰별 예측부)가 구성될 수도 있다.

도 3은 본 발명이 적용될 수 있는 비디오 디코딩 장치의 구성을 개략적으로 설명하는 도면이다.
도 3을 참조하면, 비디오 디코딩 장치(300)는 엔트로피 디코딩부(310), 재정렬부(320), 역양자화부(330), 역변환부(340), 예측부(350), 가산부(360), 필터부(370), 메모리(380)를 포함한다.
비디오 정보를 포함하는 비트스트림이 입력되면, 비디오 디코딩 장치(300)는 비디오 인코딩 장치에서 비디오 정보가 처리된 프로세스에 대응하여 비디오를 복원할 수 있다.
예컨대, 비디오 디코딩 장치(300)는 비디오 인코딩 장치에서 적용된 처리 단위를 이용하여 비디오 디코딩을 수행할 수 있다. 따라서, 비디오 디코딩의 처리 단위 블록은 코딩 단위 블록, 예측 단위 블록 또는 변환 단위 블록일 수 있다. 코딩 단위 블록은 디코딩의 단위 블록으로서 최대 코딩 단위 블록으로부터 쿼드 트리 구조를 따라서 분할될 수 있다. 예측 단위 블록은 코딩 단위 블록으로부터 파티셔닝되는 블록으로서, 샘플 예측의 단위 블록일 수 있다. 이때, 예측 단위 블록은 서브 블록으로 나뉠 수도 있다. 변환 단위 블록은 코딩 단위 블록으로부터 쿼드 트리 구조를 따라서 분할 될 수 있으며, 변환 계수를 유도하는 단위 블록 또는 변환 계수로부터 잔차 신호를 유도하는 단위 블록일 수 있다.
엔트로피 디코딩부(310)는 비트스트림을 파싱하여 비디오 복원 또는 픽처 복원에 필요한 정보를 출력할 수 있다. 예컨대, 엔트로피 디코딩부(310)는 지수 골롬, CAVLC, CABAC 등에 기반해 비트스트림 내 정보를 디코딩하고, 비디오 복원에 필요한 신택스 엘리먼트의 값, 레지듀얼에 관한 변환 계수의 양자화된 값 등을 출력할 수 있다.
3D 비디오를 재생하기 위해 복수의 뷰(view)를 처리하는 경우, 비트스트림은 각 뷰 별로 입력될 수 있다. 혹은, 비트스트림 내에서 각 뷰에 대한 정보가 멀티플렉싱되어 있을 수도 있다. 이 경우, 엔트로피 디코딩부(310)는 비트스트림을 역다중화(de-multiplexing)하여 뷰 별로 파싱할 수도 있다.
재정렬부(320)는 양자화되어 있는 변환 계수들을 2차원의 블록 형태로 재정렬할 수 있다. 재정렬부(320)는 인코딩 장치에서 수행된 계수 스캐닝에 대응하여 재정렬을 수행할 수 있다.
역양자화부(330)는 양자화되어 있는 변환 계수들을 (역)양자화 파라미터를 기반으로 역양자화하여 변환 계수를 출력할 수 있다. 이때, 양자화 파라미터를 유도하기 위한 정보는 인코딩 장치로부터 시그널링될 수 있다.
역변환부(340)는 변환 계수들을 역변환하여 레지듀얼 샘플들을 유도할 수 있다.
예측부(350)는 현재 블록에 대한 예측을 수행하고, 상기 현재 블록에 대한 예측 샘플들을 포함하는 예측 블록을 생성할 수 있다. 예측부(350)에서 수행되는 예측의 단위는 코딩 블록일 수도 있고, 변환 블록일 수도 있고, 예측 블록일 수도 있다.
예측부(350)는 인트라 예측을 적용할 것인지 인터 예측을 적용할 것인지를 결정할 수 있다. 이때, 인트라 예측과 인터 예측 중 어느 것을 적용할 것인지를 결정하는 단위와 예측 샘플 생성하는 단위는 상이할 수 있다. 아울러, 인터 예측과 인트라 예측에 있어서 예측 샘플을 생성하는 단위 역시 상이할 수 있다.
인트라 예측의 경우에, 예측부(350)는 현재 픽처 내의 주변 블록 화소를 기반으로 현재 블록에 대한 예측 샘플을 유도할 수 있다. 예측부(350)는 현재 블록의 주변 참조 샘플들을 기반으로 방향성 모드 또는 비방향성 모드를 적용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다. 이때, 주변 블록의 인트라 예측 모드를 이용하여 현재 블록에 적용할 예측 모드가 결정될 수도 있다.
인터 예측의 경우에, 예측부(350)는 참조 픽처 상에서 움직임 벡터에 의해 특정되는 샘플들을 기반으로 현재 블록에 대한 예측 샘플을 유도할 수 있다. 예측부(350)는 스킵(skip) 모드, 머지(merge) 모드 및 MVP 모드 중 어느 하나를 적용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다.
스킵 모드와 머지 모드의 경우에, 주변 블록의 움직임 정보가 현재 블록의 움직임 정보로 이용될 수 있다. 이때, 주변 블록은 공간적 주변 블록과 시간적 주변 블록을 포함할 수 있다.
예측부(350)는 가용한(available) 주변 블록의 움직임 정보로 머지 후보 리스트를 구성하고, 머지 인덱스가 머지 후보 리스트 상에서 지시하는 정보를 현재 블록의 움직임 벡터로 사용할 수 있다. 머지 인덱스는 인코딩 장치로부터 시그널링될 수 있다. 움직임 정보는 움직임 벡터와 참조 픽처를 포함한다. 스킵 모드와 머지 모드에서 시간적 주변 블록의 움직임 정보가 이용되는 경우에, 참조 픽처 리스트 상의 최상위 픽처가 참조 픽처로서 이용될 수도 있다.
스킵 모드의 경우, 머지 모드와 달리 예측 샘플과 원본 샘플 사이의 차이(레지듀얼)가 전송되지 않는다.
MVP 모드의 경우, 주변 블록의 움직임 벡터를 움직임 벡터 예측자(MVP)로 이용하여 현재 블록의 움직임 벡터가 유도될 수 있다. 이때, 주변 블록은 공간적 주변 블록과 시간적 주변 블록을 포함할 수 있다.
종속 뷰(dependent view)에 대한 인코딩의 경우에, 예측부(350)는 인터 뷰 예측을 수행할 수도 있다. 이때, 예측부(350)는 다른 뷰의 픽처를 포함하여 참조 픽처 리스트를 구성할 수 있다.
인터 뷰 예측을 위해, 예측부(210)는 디스패리티(disparity) 벡터를 유도할 수 있다. 예측부(350)는 디스패리티 벡터를 기반으로, 뎁스 뷰(depth view) 내의 뎁스 블록(depth block)을 특정할 수 있고, 머지 리스트의 구성, 인터 뷰 움직임 예측(inter view motion prediction), 레지듀얼 예측, IC(Illumination Compensation), 뷰 합성 등을 수행할 수 있다.
현재 블록에 대한 디스패리티 벡터는 카메라 파라미터를 이용하여 뎁스 값으로부터 유도되거나, 현재 또는 다른 뷰 내 주변 블록의 움직임 벡터 또는 디스패리티 벡터로부터 유도될 수 있다. 카메라 파라미터는 인코딩 장치로부터 시그널링될 수 있다.
종속 뷰의 현재 블록에 머지 모드를 적용하는 경우에, 예측부(350)는 참조 뷰(reference view)의 시간적 움직임 정보에 대응하는 IvMC, 디스패리티 벡터에 대응하는 IvDC, 디스패리티 벡터의 쉬프트(shift)에 의해 유도되는 쉬프티드 IvMC, 현재 블록이 뎁스 맵 상의 블록인 경우에 대응하는 텍스처로부터 유도되는 텍스처 머지 후보(T), 텍스처 머지 후보로부터 디스패리티를 이용하여 유도되는 디스패리티 유도 머지 후보(D), 뷰 합성에 기반해서 유도되는 뷰 합성 예측 머지 후보(VSP) 등을 머지 후보 리스트에 추가할 수 있다.
이때, 종속 뷰에 적용되는 머지 후보 리스트에 포함되는 후보의 개수는 소정의 값으로 제한될 수 있다.
또한, 예측부(350)는 인터-뷰 움직임 벡터 예측을 적용하여, 디스패리터 벡터를 기반으로 현재 블록의 움직임 벡터를 예측할 수도 있다. 이때, 예측부(350)는 디스패리티 벡터에 의해서 특정되는 참조 뷰 내 블록을 참조 블록으로 이용할 수 있다. 예측부(350)는 참조 블록의 움직임 벡터를 현재 블록의 후보 움직임 파라미터 혹은 움직임 벡터 예측자 후보로 이용할 수 있으며, 상기 디스패리티 벡터를 DCP를 위한 후보 디스패러티 벡터로 이용할 수 있다.
가산부(360)는 레지듀얼 샘플과 예측 샘플을 더하여 현재 블록 혹은 현재 픽처를 복원할 수 있다. 가산부(360)는 레지듀얼 샘플과 예측 샘플을 블록 단위로 더하여 현재 픽처를 복원할 수도 있다. 스킵 모드가 적용된 경우에는 레지듀얼이 전송되지 않으므로, 예측 샘플이 복원 샘플이 될 수 있다. 여기서는 가산부(360)를 별도의 구성으로 설명하였으나, 가산부(360)는 예측부(350)의 일부일 수도 있다.
필터부(370)는 복원된 픽처에 디블록킹 필터링 및/또는 오프셋을 적용할 수 있다. 이때, 오프셋은 샘플 단위의 오프셋으로서 적응적으로 적용될 수도 있다.
메모리(380)는 복원 픽처 또는 디코딩에 필요한 정보를 저장할 수 있다. 예컨대, 메모리(380)는 인터 예측/인터-뷰 예측에 사용되는 픽처들을 저장할 수 있다. 이때, 인터 예측/인터-뷰 예측에 사용되는 픽처들은 참조 픽처 세트 혹은 참조 픽처 리스트에 의해 지정될 수도 있다. 복원된 픽처는 참조 픽처로서 이용될 수 있다.
또한, 메모리(380)는 복원된 픽처를 출력 순서에 따라서 출력할 수도 있다. 3D 영상을 재생하기 위해, 도시되지는 않았으나, 출력부는 복수의 서로 다른 뷰를 디스플레이할 수 있다.
도 3의 예에서는, 하나의 디코딩 장치에서 독립 뷰(independent view)와 종속 뷰(dependent view)가 디코딩되는 것으로 설명하였으나, 이는 설명의 편의를 위한 것으로서 본 발명은 이에 한정되지 않는다. 예컨대, 뷰 별로 각각의 디코딩 장치가 동작할 수도 있고, 하나의 디코딩 장치 내에 각 뷰에 대응하는 동작부(예컨대, 예측부)가 구비될 수도 있다.

멀티 뷰 비디오 코딩은 현재 픽처와 동일한 AU(Access Unit)에 속하는 다른 뷰의 코딩된 데이터를 이용하여 현재 픽처를 코딩함으로써 현재 뷰에 대한 비디오 코딩 효율을 높일 수 있다. 여기서, AU는 POC(Picture Order Count)가 같은 픽처들의 집합을 의미할 수 있다. POC는 픽처의 디스플레이 순서에 대응한다.
멀티 뷰 코딩에서는 AU 단위로 뷰들을 코딩할 수도 있고, 뷰 단위로 픽처들을 코딩할 수도 있다. 뷰들 간에는 정해진 순서에 따라서 코딩이 진행된다. 가장 먼저 코딩되는 뷰를 베이스 뷰(base view) 또는 독립 뷰라고 할 수 있다. 또한, 독립 뷰가 코딩된 뒤에 다른 뷰를 참조해서 코딩될 수 있는 뷰를 종속 뷰라고 할 수 있다. 또한, 현재 뷰가 종속 뷰인 경우, 현재 뷰의 코딩에 참조되는 다른 뷰를 참조 뷰라고 할 수도 있다.

도 4는 본 발명이 적용될 수 있는 멀티 뷰 비디오 코딩을 개략적으로 설명하기 위한 도면이다.
멀티 뷰 비디오를 코딩하는 경우, 하나의 AU 내 뷰 ID가 다르고 POC가 같은 픽처들은 미리 정의된 뷰 코딩 순서(view coding order)에 따라 코딩된다.
예컨대, 도 4에 도시된 바와 같이, 두 개의 뷰(뷰 VO와 뷰 V1)를 코딩하고, 뷰 코딩 순서가 뷰 VO, 뷰 V1 순인 경우라 하자. 이때, AU 내 가장 먼저 코딩되는 뷰인 VO는 베이스 뷰 혹은 독립 뷰가 되며, 다음으로 코딩되는 뷰인 V1은 종속 뷰가 된다.
베이스 뷰는 다른 뷰를 참조하지 않고 베이스 뷰에 속한 픽처를 참조하여 코딩된다. 종속 뷰는 베이스 뷰 다음에 코딩 되면서 이미 코딩된 다른 뷰를 참조하여 코딩된다.
멀티 뷰 비디오 코딩에서 종속 뷰에 속한 CU는 이미 코딩된 픽처를 참조하여 인터 예측을 수행할 수 있다. 이때, 뷰 ID가 동일한 픽처를 참조하여 예측을 수행하는 방법을 움직임 보상 예측(Motion Compensated Prediction: MCP)이라 하고, 동일 AU 내 뷰 ID가 다른 픽처를 참조하여 예측을 수행하는 방법을 디스패리티 보상 예측(Disparity Compensated Prediction: DCP)라고 한다.
예컨대, 도 4를 참조하면, A 블록은 자신과 같은 뷰(V1)에 속하는 픽처를 참조하여 MCP를 수행하여 예측 샘플들을 유도할 수 있다. B 블록은 동일 AU 내 자신과 다른 뷰(VO)의 픽처를 참조하여 DCP를 수행하여 예측 샘플들을 유도할 수 있다.

한편, 3D 비디오는 일반적인 컬러 영상 정보를 가지는 텍스처(texture) 픽처와, 텍스처 픽처에 대한 깊이 정보를 가지는 뎁스(depth, 혹은 뎁스 맵(depth-map)) 픽처를 포함한다.
뎁스 픽처는 같은 시점(같은 시간)의 텍스처 픽처의 코딩 정보를 참조하여 코딩될 수 있다. 다시 말해서, 뎁스 픽처는 뎁스 픽처와 동일한 POC를 가지는 텍스처 픽처의 코딩 정보를 참조하여 코딩될 수 있다.
뎁스 픽처는 동일 시간의 텍스처 픽처와 동시에 촬영되어 취득되거나, 동일 시간의 텍스처 픽처에 대한 깊이 정보를 계산하여 생성되기 때문에, 동일 시간의 뎁스 픽처와 텍스처 픽처는 상관도가 매우 높다.
따라서, 뎁스 픽처의 코딩 시 이미 코딩된 텍스처 픽처의 정보, 예컨대 텍스처 픽처의 블록 분할 정보 또는 움직임 정보 등을 이용할 수 있다. 하나의 예로, 텍스처 픽처의 움직임 정보를 뎁스 픽처에서 동일하게 사용할 수 있으며, 이를 움직임 파라미터 승계(motion parameter inheritance, MPI)라고 한다. 특히, 움직임 벡터를 텍스처 픽처로부터 승계하는 방법을 움직임 벡터 승계(motion vector inheritance, MVI)라고 한다.

도 5는 MVI를 이용하여 뎁스 픽처의 움직임 벡터를 유도하는 과정을 개략적으로 설명하는 도면이다.
도 5를 참조하면, 뎁스 픽처(510) 내 현재 블록(520)과 동일한 위치에 있는 텍스처 픽처(530) 내 대응 블록(540)으로부터 움직임 벡터가 승계될 수 있다. 예컨대, 대응 블록(540)의 중심(center)에서 움직임 벡터(550)를 유도하여, 현재 블록(520)에 대한 움직임 벡터(560)로 사용할 수 있다. 이때, 현재 블록(520)과 동일한 위치의 대응 블록(540)이 인트라 예측된 블록인 경우에는 대응 블록(540)의 움직임 벡터(550)를 가져오지 않는다.
도 5에서는 텍스처 픽처 내 대응 블록의 중심에서 움직임 정보를 유도하여 뎁스 픽처의 현재 블록에 적용하는 방법을 설명하고 있다. 또 다른 방법으로는 텍스처 픽처 내 대응 블록을 일정한 크기의 서브 블록으로 분할하고, 분할된 서브 블록 단위로 움직임 정보를 가져와 뎁스 픽처 내 현재 블록에 적용할 수 있다. 이때, 대응 블록은 예측 유닛(Prediction Unit, PU)일 수 있으며, 서브 블록은 서브 PU일 수 있다.

도 6은 MVI를 이용하여 서브 블록 단위로 뎁스 픽처의 움직임 벡터를 유도하는 과정을 개략적으로 설명하는 도면이다.
도 6의 실시예에서는 텍스처 픽처로부터 서브 블록(서브 PU) 단위로 뎁스 픽처의 움직임 벡터를 유도하는 방법을 설명하고 있다.
도 6을 참조하면, 뎁스 픽처(610) 내 현재 블록(620)의 움직임 벡터는 텍스처 픽처(630) 내 대응 블록(640)으로부터 승계될 수 있다. 이때, 움직임 벡터의 승계는 서브 블록 단위로 이루어질 수 있다.
현재 블록(620)이 예측 유닛(혹은 예측 블록)인 경우, 현재 블록(620) 내 서브 블록들(C1~C4)과 대응 블록(640) 내 서브 블록들(C’1~C’4)은 서브 PU(혹은 서브 예측 블록)이 된다.
서브 PU의 크기는 NxM(N, M은 0보다 큰 정수)으로 설정될 수 있으며, 원래 텍스처 픽처 내 블록 분할 정보와 상관없이, 정의된 서브 PU의 크기를 기반으로 현재 블록(620) 내 서브 블록들(C1~C4)의 움직임 벡터를 대응 블록(640) 내 서브 블록들(C’1~C’4)로부터 가져올 수 있다.
이때, 서브 PU에서 움직임 정보를 가져오는 위치는 서브 PU의 중심이 될 수 있으며, 혹은 서브 PU의 좌상측(left-top) 위치일 수도 있다.

상술한 바와 같이, 텍스처 픽처로부터 서브 PU 단위로 뎁스 픽처의 움직임 정보를 유도하는 경우, 특정 서브 PU에 움직임 정보가 존재하지 않는 경우가 있을 수 있다. 이하, 본 발명에서는 MVI를 이용하여 서브 PU 단위로 뎁스 픽처의 움직임 정보를 유도할 때, 움직임 정보가 존재하지 않는 서브 PU에 대해 움직임 정보를 채우는 방법을 제공하도록 한다.

도 7은 본 발명의 실시예에 따른 서브 블록 단위로 MVI를 이용하여 뎁스 픽처의 움직임 벡터 유도 시 움직임 벡터가 존재하지 않는 서브 블록에 대해 움직임 벡터를 채우는 방법을 개략적으로 설명하는 도면이다.
도 7을 참조하면, MVI를 이용하여 서브 블록 단위로 움직임 벡터를 유도하는 경우, 현재 코딩(인코딩/디코딩)되는 뎁스 픽처(710)의 뎁스 블록(720)은 미리 정의된 서브 블록 크기에 따라 분할될 수 있다. 미리 정의된 서브 블록 크기는 인코딩 장치로부터 시그널링되는 정보일 수 있으며, NxM(N, M은 0보다 큰 정수) 크기일 수 있다.
뎁스 블록(720)의 분할된 각 서브 블록(이하, 뎁스 블록(720) 내 서브 블록은 뎁스 서브 블록이라 함)은 텍스처 픽처(730) 내에서 상기 각 뎁스 서브 블록과 대응되는 위치의 텍스처 서브 블록으로부터 움직임 벡터를 가져올 수 있다.
여기서, 뎁스 블록(720)은 예측 블록 혹은 PU일 수 있으며, 뎁스 서브 블록은 서브 예측 블록 혹은 서브 PU일 수 있다.
텍스처 픽처(730)는 뎁스 픽처(710)와 동일 시간의 픽처, 즉 뎁스 픽처(710)와 동일한 POC를 가지는 픽처일 수 있으며, 또한 뎁스 픽처(710)와 동일한 뷰 ID를 가지는 픽처일 수 있다. 텍스처 서브 블록은 텍스처 픽처(730) 내에서 뎁스 서브 블록과 동일 위치에 존재하는 예측 블록(혹은 PU)일 수 있다. 텍스처 블록(740)은 텍스처 픽처(730) 내에서 뎁스 블록(720)과 동일 위치에 존재하는 예측 블록(혹은 PU)일 수 있다.
텍스처 픽처(730) 내 텍스처 서브 블록으로부터 뎁스 서브 블록의 움직임 벡터 유도 시, 텍스처 서브 블록(742)의 움직임 벡터가 존재하지 않을 수 있다. 예컨대, 텍스처 서브 블록이 인트라 예측 모드로 코딩된 경우에는 움직임 벡터가 존재하지 않을 수 있다. 이러한 경우, 해당 뎁스 서브 블록(722)은 텍스처 서브 블록(742)으로부터 움직임 벡터 정보를 얻을 수 없다.
이때, 뎁스 서브 블록(722)의 움직임 벡터는 주변 블록의 움직임 벡터로 채울 수 있다. 주변 블록의 움직임 벡터는 왼쪽 또는 위쪽 뎁스 서브 블록(혹은 텍스처 서브 블록)의 움직임 벡터가 될 수 있다.
또는, 뎁스 서브 블록(722)의 움직임 벡터는 미리 정의한 움직임 벡터로 채울 수 있다. 미리 정의한 움직임 벡터는 NBDV(Disparity vector from neighbouring blocks) 또는 DoNBDV(depth oriented NBDV)에 의해서 지시되는 블록의 움직임 벡터일 수 있다. 혹은, 직전에 유도된 움직임 벡터인 최신 움직임 벡터일 수 있으며, 이때 최신 움직임 벡터는 지속적으로 업데이트될 수 있다. 혹은, 영 벡터 (0, 0)일 수 있다. 여기서, 주변 블록으로부터 유도된 디스패리티 벡터를 NBDV라 하고, NBDV로부터 유도된 디스패리티 벡터를 깊이 정보를 이용하여 보정한 디스패리티 벡터를 DoNBDV라 한다.
또는, 뎁스 서브 블록(722)의 움직임 벡터는 뎁스 블록(720) 내 특정 위치에 존재하는 움직임 벡터로 채울 수 있다. 여기서, 특정 위치는 블록 내 중심 위치, 좌상측 위치, 우하단 위치 등일 수 있다.
예를 들어, 뎁스 블록(720) 내 특정 위치(예컨대, 중심 위치)를 계산하고, 상기 특정 위치에 대응되는 텍스처 서브 블록에 움직임 벡터가 존재한다면 상기 텍스처 서브 블록의 움직임 벡터를 디폴트 움직임 벡터로 정의할 수 있다. 도 7을 참조하여 설명하면, 뎁스 블록(720) 내 중심 위치에 대응되는 텍스처 블록(740)의 서브 블록은 텍스처 서브 블록(744)일 수 있다. 이때 텍스처 서브 블록(744)의 움직임 벡터가 존재하면 이를 뎁스 블록(720)에 대한 디폴트 움직임 벡터로 설정할 수 있다. 만일, 뎁스 서브 블록의 움직임 벡터 유도 시에 텍스처 서브 블록으로부터 움직임 정보를 채우지 못한 경우, 해당 뎁스 서브 블록(722)의 움직임 벡터는 디폴트 움직임 벡터로 설정될 수 있다.
상기와 같이, 특정 위치에 존재하는 움직임 벡터를 디폴트 움직임 벡터로 정의하여 이용할 경우, 특정 위치에 움직임 벡터가 존재하지 않아 디폴트 움직임 벡터 자체가 설정되지 못할 수 있다. 이러한 경우, 디폴트 움직임 벡터의 설정 여부에 의해 MVI의 수행 여부가 결정될 수 있다. 예컨대, 디폴트 움직임 벡터가 설정되지 못한 경우, 뎁스 블록(720)에 대한 MVI를 수행하지 않을 수 있다. 또는, 디폴트 움직임 벡터가 설정되지 못한 경우, 움직임 벡터가 존재하지 않는 뎁스 서브 블록(722)은 NBDV 혹은 DoNBDV에 의해 사상되는 움직임 벡터, 또는 영 벡터 등으로 움직임 벡터를 설정할 수 있다.

도 8은 본 발명의 실시예에 따른 MVI를 이용하여 서브 블록 단위로 뎁스 픽처의 움직임 벡터를 유도하는 방법을 개략적으로 나타낸 순서도이다. 도 8의 방법은 상술한 도 2의 인코딩 장치 및 도 3의 디코딩 장치에서 수행될 수 있다. 본 실시예에서는 설명의 편의를 위해 상술한 도 2의 인코딩 장치 및 도 3의 디코딩 장치에서 예측부가 실시하는 것으로 설명한다.
도 8을 참조하면, 예측부는 움직임 벡터 승계(motion vector inheritance)를 적용할지 여부를 판단한다(S800).
움직임 벡터 승계는, 상술한 바와 같이 텍스처 픽처의 움직임 정보를 이용하여 뎁스 픽처의 움직 벡터를 유도하는 방법을 말한다. 다시 말해서, 텍스처 픽처의 움직임 정보를 뎁스 픽처에서 동일하게 사용할 수 있다.
디코딩 장치의 경우, 뎁스 픽처에 움직임 벡터 승계를 적용할지 여부는 인코딩 장치로부터 시그널링되는 정보를 기반으로 판단될 수 있다.
뎁스 픽처에 움직임 벡터 승계를 적용하기로 판단한 경우, 예측부는 뎁스 픽처 내 현재 블록을 움직임 벡터 승계를 적용할 뎁스 서브 블록으로 유도한다(S810).
현재 블록은 예측이 수행되는 단위인 예측 블록 혹은 예측 유닛일 수 있다.
뎁스 서브 블록은 움직임 벡터 승계를 위한 서브 블록 크기 정보를 기반으로 하여 결정될 수 있다. 움직임 벡터 승계를 위한 서브 블록 크기 정보는 인코딩 장치에서 시그널링되는 정보로, NxM(N, M은 0보다 큰 정수) 크기일 수 있다.
예측부는 텍스처 픽처로부터 뎁스 서브 블록 단위로 움직임 벡터를 유도한다(S820). 보다 구체적으로, 예측부는 텍스처 픽처 내에서 뎁스 서브 블록과 동일한 위치에 존재하는 텍스처 블록(텍스처 서브 블록)을 유도하고, 상기 텍스처 블록의 움직임 벡터를 뎁스 서브 블록의 움직임 벡터로 설정할 수 있다.
텍스처 픽처는 뎁스 픽처와 동일 시간의 픽처로, 뎁스 픽처의 POC 및 뷰 ID와 동일한 값을 가지는 픽처일 수 있다.
이때, 텍스처 블록에 움직임 정보가 존재하지 않을 경우(예컨대, 텍스처 블록이 인트라 예측 모드로 코딩된 경우), 뎁스 서브 블록은 텍스처 픽처의 텍스처 블록으로부터 움직임 벡터를 가져올 수 없다.
이러한 경우, 예측부는 도 7에서 상술한 바와 같이 뎁스 서브 블록의 움직임 벡터를 유도할 수 있다.
일 예로, 예측부는 현재 블록의 특정 위치(예를 들어, 중심 위치, 좌상측 위치, 우하단 위치 등)에 대응하는 텍스처 픽처 내 대응 블록으로부터 디폴트 움직임 벡터를 유도할 수 있다. 만일, 뎁스 서브 블록의 움직임 벡터 유도 시에 텍스처 블록의 움직임 정보가 존재하지 않을 경우, 예측부는 디폴트 움직임 벡터를 뎁스 서브 블록의 움직임 벡터로 설정할 수 있다.
이때, 대응 블록의 움직임 정보가 존재하지 않는다면 디폴트 움직임 벡터 역시 유도할 수 없는 경우가 발생한다. 즉, 디폴트 움직임 벡터가 설정되지 못하는 경우가 발생할 수 있다. 이러한 경우, 예측부는 디폴트 움직임 벡터의 설정 여부에 의해 MVI의 수행 여부를 결정할 수 있다. 예컨대, 디폴트 움직임 벡터가 설정되지 못한 경우, 예측부는 현재 블록에 대한 MVI를 수행하지 않을 수 있다. 또는, 디폴트 움직임 벡터가 설정되지 못한 경우, 예측부는 NBDV 혹은 DoNBDV에 의해 사상되는 움직임 벡터, 또는 영 벡터 등으로 뎁스 서브 블록의 움직임 벡터를 설정할 수 있다.
다른 예로, 뎁스 서브 블록의 움직임 벡터 유도 시에 텍스처 블록의 움직임 정보가 존재하지 않을 경우, 예측부는 주변 블록의 움직임 벡터를 뎁스 서브 블록의 움직임 벡터로 설정할 수 있다. 주변 블록의 움직임 벡터는 왼쪽 또는 위쪽 뎁스 서브 블록의 움직임 벡터가 될 수 있다. 혹은, 주변 블록의 움직임 벡터는 움직임 정보가 존재하지 않는 텍스처 블록의 왼쪽 또는 위쪽에 위치한 텍스처 블록의 움직임 벡터가 될 수 있다.
또 다른 예로, 뎁스 서브 블록의 움직임 벡터 유도 시에 텍스처 블록의 움직임 정보가 존재하지 않을 경우, 예측부는 미리 정의된 움직임 벡터를 뎁스 서브 블록의 움직임 벡터로 설정할 수 있다. 예컨대, 미리 정의된 움직임 벡터는 영 벡터, 직전에 유도된 움직임 벡터인 최신 움직임 벡터, NBDV 혹은 DoNBDV에 의해 지시되는 블록의 움직임 벡터일 수 있다.
예측부는 유도된 뎁스 서브 블록의 움직임 벡터를 기반으로 뎁스 서브 블록의 예측 샘플을 생성한다(S830).
예컨대, 예측부는 뎁스 서브 블록의 움직임 벡터가 참조 픽처 상에서 지시하는 영역의 샘플들을 뎁스 서브 블록의 예측 샘플로 이용할 수 있다.
예측부는 뎁스 서브 블록의 예측 샘플들을 기반으로 현재 블록에 대한 예측 샘플을 구성할 수 있으며, 상기 현재 블록의 예측 샘플과 레지듀얼 샘플을 더하여 복원 샘플을 유도할 수 있다.

상술한 바와 같이, 현재 코딩(인코딩/디코딩)하고자 하는 뎁스 픽처 내 현재 블록에 대해서 대응하는 텍스처 픽처 내 텍스처 블록으로부터 움직임 벡터를 유도할 때, PU 단위 또는 서브 PU 단위 중 하나를 사용할 수 있다. 본 발명에서는 적응적으로 PU 단위 또는 서브 PU 단위 중 하나를 선택할 수 있도록 추가적인 플래그를 사용할 수도 있다.
상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 상술한 실시예들은 다양한 양태의 예시들을 포함한다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.

Claims (20)

  1. 3D 비디오 복호화 방법에 있어서,
    텍스처 픽처(texture picture)의 움직임 정보를 이용하여 뎁스 픽처(depth picture)의 움직임 벡터를 유도하는 움직임 벡터 승계(motion vector inheritance)를 적용할지 여부를 판단하는 단계;
    상기 움직임 벡터 승계를 적용하기로 판단한 경우, 상기 뎁스 픽처 내 현재 블록을 상기 움직임 벡터 승계를 위한 서브 블록 크기의 뎁스 서브 블록으로 유도하는 단계;
    상기 뎁스 서브 블록에 대응하는 상기 텍스처 픽처 내 텍스처 블록으로부터 상기 뎁스 서브 블록의 움직임 벡터를 유도하는 단계; 및
    상기 뎁스 서브 블록의 움직임 벡터를 기반으로 상기 뎁스 서브 블록의 예측 샘플을 생성하여, 상기 현재 블록의 복원 샘플을 유도하는 단계를 포함하는 것을 특징으로 하는 3D 비디오 복호화 방법.
  2. 제1항에 있어서,
    상기 현재 블록 내 중심 위치에 대응하는 상기 텍스처 픽처의 대응 블록으로부터 디폴트 움직임 벡터를 유도하는 단계를 더 포함하며,
    상기 뎁스 서브 블록의 움직임 벡터를 유도하는 단계에서는,
    상기 텍스처 블록의 움직임 정보가 존재하지 않는 경우, 상기 디폴트 움직임 벡터를 상기 뎁스 서브 블록의 움직임 벡터로 설정하는 것을 특징으로 하는 3D 비디오 복호화 방법.
  3. 제2항에 있어서,
    상기 뎁스 서브 블록의 움직임 벡터를 유도하는 단계에서는,
    상기 대응 블록의 움직임 정보가 존재하지 않는 경우, NBDV(Disparity vector from neighbouring blocks) 또는 DoNBDV(depth oriented NBDV)에 의해 지시되는 블록의 움직임 벡터, 또는 영 벡터를 상기 뎁스 서브 블록의 움직임 벡터로 설정하는 것을 특징으로 하는 3D 비디오 복호화 방법.
  4. 제2항에 있어서,
    상기 뎁스 서브 블록의 움직임 벡터를 유도하는 단계에서는,
    상기 대응 블록의 움직임 정보가 존재하지 않는 경우, 상기 뎁스 서브 블록에 대해 상기 움직임 벡터 승계를 적용하지 않는 것을 특징으로 하는 3D 비디오 복호화 방법.
  5. 제1항에 있어서,
    상기 뎁스 서브 블록의 움직임 벡터를 유도하는 단계에서는,
    상기 텍스처 블록의 움직임 정보가 존재하지 않는 경우, 주변 블록의 움직임 벡터를 상기 뎁스 서브 블록의 움직임 벡터로 설정하며,
    상기 주변 블록의 움직임 벡터는 상기 뎁스 서브 블록의 왼쪽 또는 위쪽에 위치한 블록의 움직임 벡터인 것을 특징으로 하는 3D 비디오 복호화 방법.
  6. 제1항에 있어서,
    상기 뎁스 서브 블록의 움직임 벡터를 유도하는 단계에서는,
    상기 텍스처 블록의 움직임 정보가 존재하지 않는 경우, 미리 정의된 움직임 벡터를 상기 뎁스 서브 블록의 움직임 벡터로 설정하며,
    미리 정의된 움직임 벡터는,
    NBDV(Disparity vector from neighbouring blocks) 또는 DoNBDV(depth oriented NBDV)에 의해 지시되는 블록의 움직임 벡터, 영 벡터, 상기 텍스처 블록 내 특정 위치의 서브 블록의 움직임 벡터, 또는 직전에 유도된 최신 움직임 벡터인 것을 특징으로 하는 3D 비디오 복호화 방법.
  7. 제1항에 있어서,
    상기 텍스처 픽처는 상기 뎁스 픽처와 동일한 POC(Picture Order Count) 및 뷰 식별자(View ID)를 가지는 픽처인 것을 특징으로 하는 3D 비디오 복호화 방법.
  8. 제1항에 있어서,
    상기 텍스처 블록은 상기 텍스처 픽처 내에서 상기 뎁스 서브 블록과 동일한 위치에 있는 블록인 것을 특징으로 하는 3D 비디오 복호화 방법.
  9. 제1항에 있어서,
    상기 서브 블록의 크기는 부호화기로부터 수신된 정보를 기반으로 결정되는 것을 특징으로 하는 3D 비디오 복호화 방법.
  10. 제1항에 있어서,
    상기 현재 블록은 예측 블록인 것을 특징으로 하는 3D 비디오 복호화 방법.
  11. 3D 비디오 복호화 장치에 있어서,
    텍스처 픽처(texture picture)의 움직임 정보를 이용하여 뎁스 픽처(depth picture)의 움직임 벡터를 유도하는 움직임 벡터 승계(motion vector inheritance)를 적용할지 여부를 판단하고,
    상기 움직임 벡터 승계를 적용하기로 판단한 경우, 상기 뎁스 픽처 내 현재 블록을 상기 움직임 벡터 승계를 위한 서브 블록 크기의 뎁스 서브 블록으로 유도하고,
    상기 뎁스 서브 블록에 대응하는 상기 텍스처 픽처 내 텍스처 블록으로부터 상기 뎁스 서브 블록의 움직임 벡터를 유도하고,
    상기 뎁스 서브 블록의 움직임 벡터를 기반으로 상기 뎁스 서브 블록의 예측 샘플을 생성하여, 상기 현재 블록의 복원 샘플을 유도하는 예측부를 포함하는 것을 특징으로 하는 3D 비디오 복호화 장치.
  12. 제11항에 있어서,
    상기 예측부는,
    상기 현재 블록 내 중심 위치에 대응하는 상기 텍스처 픽처의 대응 블록으로부터 디폴트 움직임 벡터를 유도하며,
    상기 텍스처 블록의 움직임 정보가 존재하지 않는 경우, 상기 디폴트 움직임 벡터를 상기 뎁스 서브 블록의 움직임 벡터로 설정하는 것을 특징으로 하는 3D 비디오 복호화 장치.
  13. 제12항에 있어서,
    상기 예측부는,
    상기 대응 블록의 움직임 정보가 존재하지 않는 경우, NBDV(Disparity vector from neighbouring blocks) 또는 DoNBDV(depth oriented NBDV)에 의해 지시되는 블록의 움직임 벡터, 또는 영 벡터를 상기 뎁스 서브 블록의 움직임 벡터로 설정하는 것을 특징으로 하는 3D 비디오 복호화 장치.
  14. 제12항에 있어서,
    상기 예측부는,
    상기 대응 블록의 움직임 정보가 존재하지 않는 경우, 상기 뎁스 서브 블록에 대해 상기 움직임 벡터 승계를 적용하지 않는 것을 특징으로 하는 3D 비디오 복호화 장치.
  15. 제11항에 있어서,
    상기 예측부는,
    상기 텍스처 블록의 움직임 정보가 존재하지 않는 경우, 주변 블록의 움직임 벡터를 상기 뎁스 서브 블록의 움직임 벡터로 설정하며,
    상기 주변 블록의 움직임 벡터는 상기 뎁스 서브 블록의 왼쪽 또는 위쪽에 위치한 블록의 움직임 벡터인 것을 특징으로 하는 3D 비디오 복호화 장치.
  16. 제11항에 있어서,
    상기 예측부는,
    상기 텍스처 블록의 움직임 정보가 존재하지 않는 경우, 미리 정의된 움직임 벡터를 상기 뎁스 서브 블록의 움직임 벡터로 설정하며,
    미리 정의된 움직임 벡터는,
    NBDV(Disparity vector from neighbouring blocks) 또는 DoNBDV(depth oriented NBDV)에 의해 지시되는 블록의 움직임 벡터, 영 벡터, 상기 텍스처 블록 내 특정 위치의 서브 블록의 움직임 벡터, 또는 직전에 유도된 최신 움직임 벡터인 것을 특징으로 하는 3D 비디오 복호화 장치.
  17. 제11항에 있어서,
    상기 텍스처 픽처는 상기 뎁스 픽처와 동일한 POC(Picture Order Count) 및 뷰 식별자(View ID)를 가지는 픽처인 것을 특징으로 하는 3D 비디오 복호화 장치.
  18. 제11항에 있어서,
    상기 텍스처 블록은 상기 텍스처 픽처 내에서 상기 뎁스 서브 블록과 동일한 위치에 있는 블록인 것을 특징으로 하는 3D 비디오 복호화 장치.
  19. 제11항에 있어서,
    상기 서브 블록의 크기는 부호화기로부터 수신된 정보를 기반으로 결정되는 것을 특징으로 하는 3D 비디오 복호화 장치.
  20. 제11항에 있어서,
    상기 현재 블록은 예측 블록인 것을 특징으로 하는 3D 비디오 복호화 장치.
PCT/KR2015/002275 2014-03-20 2015-03-10 3d 비디오 부호화/복호화 방법 및 장치 WO2015141977A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201580012725.5A CN106068649A (zh) 2014-03-20 2015-03-10 3d视频编码/解码方法和设备
EP15765547.3A EP3122050A4 (en) 2014-03-20 2015-03-10 3d video encoding/decoding method and device
US15/118,392 US20170180755A1 (en) 2014-03-20 2015-03-10 3d video encoding/decoding method and device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201461955817P 2014-03-20 2014-03-20
US61/955,817 2014-03-20

Publications (1)

Publication Number Publication Date
WO2015141977A1 true WO2015141977A1 (ko) 2015-09-24

Family

ID=54144887

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2015/002275 WO2015141977A1 (ko) 2014-03-20 2015-03-10 3d 비디오 부호화/복호화 방법 및 장치

Country Status (4)

Country Link
US (1) US20170180755A1 (ko)
EP (1) EP3122050A4 (ko)
CN (1) CN106068649A (ko)
WO (1) WO2015141977A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111656783B (zh) * 2018-01-25 2024-03-08 三星电子株式会社 使用基于子块的运动补偿进行视频信号处理的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120134415A1 (en) * 2010-11-29 2012-05-31 Mediatek Inc. Method and Apparatus of Extended Motion Vector Predictor
WO2014029086A1 (en) * 2012-08-22 2014-02-27 Mediatek Singapore Pte. Ltd. Methods to improve motion vector inheritance and inter-view motion prediction for depth map
KR20140029689A (ko) * 2012-08-29 2014-03-11 삼성전자주식회사 영상 처리 시스템에서 움직임 추정 장치 및 방법

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874526B2 (en) * 2010-03-31 2014-10-28 Cloudera, Inc. Dynamically processing an event using an extensible data model
US9247249B2 (en) * 2011-04-20 2016-01-26 Qualcomm Incorporated Motion vector prediction in video coding
US9485503B2 (en) * 2011-11-18 2016-11-01 Qualcomm Incorporated Inside view motion prediction among texture and depth view components
WO2014143118A1 (en) * 2013-03-15 2014-09-18 Hewlett-Packard Development Company, L.P. Loop-free hybrid network
US9604412B2 (en) * 2013-07-12 2017-03-28 Xerox Corporation Digital manufacturing system for printing three-dimensional objects on a rotating surface
WO2015109598A1 (en) * 2014-01-27 2015-07-30 Mediatek Singapore Pte. Ltd. Methods for motion parameter hole filling

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120134415A1 (en) * 2010-11-29 2012-05-31 Mediatek Inc. Method and Apparatus of Extended Motion Vector Predictor
WO2014029086A1 (en) * 2012-08-22 2014-02-27 Mediatek Singapore Pte. Ltd. Methods to improve motion vector inheritance and inter-view motion prediction for depth map
KR20140029689A (ko) * 2012-08-29 2014-03-11 삼성전자주식회사 영상 처리 시스템에서 움직임 추정 장치 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JIAN-LIANG LIN ET AL.: "3D-CE3.h related: Unconstrained motion parameter inheritance in 3D video coding.", JCT3V DOCUMENT JCT3V-B0083V2, 11 October 2012 (2012-10-11), pages 1 - 4, XP030130264 *
XIN ZHAO ET AL.: "CE3 related: Sub-PU based MPI.", JCT3V DOCUMENT JCT3V-F0128, 18 October 2013 (2013-10-18), pages 1 - 3, XP030131554 *

Also Published As

Publication number Publication date
US20170180755A1 (en) 2017-06-22
EP3122050A1 (en) 2017-01-25
CN106068649A (zh) 2016-11-02
EP3122050A4 (en) 2017-12-13

Similar Documents

Publication Publication Date Title
KR102254599B1 (ko) 멀티-뷰 비디오 코딩에 있어서, 뷰 합성 예측 방법 및 이를 이용한 머지 후보 리스트 구성 방법
JP6698351B2 (ja) ビュー内でのおよびビューにわたる深度ルックアップテーブルの予測コーディング
KR102269506B1 (ko) 멀티-뷰 비디오를 디코딩하는 비디오 디코딩 방법 및 장치
KR20210019108A (ko) 변환에 기반한 영상 코딩 방법 및 그 장치
US20170310993A1 (en) Movement information compression method and device for 3d video coding
US10659814B2 (en) Depth picture coding method and device in video coding
KR102343817B1 (ko) 멀티-뷰 비디오의 디코딩 방법 및 장치
US10587894B2 (en) Method and device for encoding/decoding 3D video
WO2015057037A1 (ko) 멀티-뷰 비디오를 디코딩하는 비디오 디코딩 장치 및 방법
US20160255371A1 (en) Method and apparatus for coding/decoding 3d video
US20170310994A1 (en) 3d video coding method and device
WO2015131388A1 (en) Simplification of depth intra mode coding in 3d video coding
KR20210103572A (ko) 타일 구성 시그널링을 위한 인코더, 디코더 및 대응 방법
US20160255368A1 (en) Method and apparatus for coding/decoding video comprising multi-view
US10397611B2 (en) Method and device for encoding/decoding 3D video
WO2015141977A1 (ko) 3d 비디오 부호화/복호화 방법 및 장치
KR20220061181A (ko) 변환에 기반한 영상 코딩 방법 및 그 장치
KR20220161427A (ko) 픽처 분할 정보 및 서브픽처 정보에 기반하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
KR20220156637A (ko) 레이어간 정렬된 서브픽처 정보에 기반하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
CN114731405A (zh) 使用量化矩阵的图像编码/解码方法和设备以及发送比特流的方法

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15118392

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015765547

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015765547

Country of ref document: EP