WO2013069933A1 - 영상 부호화/복호화 방법 및 그 장치 - Google Patents

영상 부호화/복호화 방법 및 그 장치 Download PDF

Info

Publication number
WO2013069933A1
WO2013069933A1 PCT/KR2012/009208 KR2012009208W WO2013069933A1 WO 2013069933 A1 WO2013069933 A1 WO 2013069933A1 KR 2012009208 W KR2012009208 W KR 2012009208W WO 2013069933 A1 WO2013069933 A1 WO 2013069933A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
merge
merge candidate
view
prediction
Prior art date
Application number
PCT/KR2012/009208
Other languages
English (en)
French (fr)
Inventor
손은용
예세훈
성재원
정지욱
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2013069933A1 publication Critical patent/WO2013069933A1/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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

Definitions

  • the present invention relates to image processing, and more particularly, to a 3D image encoding / decoding method and apparatus.
  • High-efficiency image compression technology can be used to effectively transmit, store, and play high-resolution, high-quality video information.
  • 3D video can provide realism and immersion using a plurality of views of channels.
  • multi-view-based 3D video may have a plurality of texture images having different views in the same picture order count (POC). There may be a depth map corresponding to each of the texture images.
  • POC picture order count
  • 3D video based on a multi view a texture video photographed in a plurality of views, a depth video corresponding to each of the plurality of texture videos, and a camera parameter may be encoded and / or decoded together.
  • the depth map may be represented by gray level and may have the same resolution as the pixel resolution of the texture image.
  • Each pixel belonging to the depth map may have a depth value and may correspond one-to-one with pixels of the texture image.
  • the depth value may represent the distance from the point corresponding to the pixel of the scene photographed by the camera to the camera.
  • the camera parameter may be used to generate a virtual view image required in the encoding / decoding process of 3D video.
  • 3D video based on multi-view may have high correlation between views of the same POC. Since the multi-view image is obtained by simultaneously photographing the same scene using a plurality of cameras having different views, since the multi-view image has very similar information except for parallax and slight lighting differences, the correlation between the different views may be high.
  • the encoding / decoding target block of the current view may be predicted or encoded / decoded with reference to a block of another view.
  • relationships between different views can be calculated and used for prediction.
  • An object of the present invention is to provide a multi-view video encoding method and apparatus capable of improving image encoding / decoding efficiency.
  • Another object of the present invention is to provide a method and apparatus for decoding material view video capable of improving image encoding / decoding efficiency.
  • Another technical problem of the present invention is to provide a method and apparatus for transmitting image information capable of improving image encoding / decoding efficiency.
  • Another technical problem of the present invention is to provide a prediction method and apparatus for improving image encoding / decoding efficiency.
  • One embodiment of the present invention is a multi-view video decoding method.
  • the method may further include receiving and decoding a merge index and deriving a plurality of merge candidates corresponding to one block, respectively, for a first depth block belonging to a first depth map of a first view.
  • at least one of the plurality of merge candidates may be derived based on a second depth map of a second view having the same POC (Picture Order Count) value as the first depth map.
  • POC Picture Order Count
  • the prediction mode of the first depth block may be a merge skip mode in which transmission of the residual signal for the first depth block is omitted, and in the reconstruction block generation step, a pixel of a reconstruction pixel in the reconstruction block.
  • the value may be determined as a pixel value of a prediction pixel corresponding to the reconstructed pixel among the prediction pixels in the prediction block.
  • the plurality of merge candidates are based on a first warp block that exists at the same spatial position as the first depth block in a first virtual view picture corresponding to the first view.
  • the derived virtual view merge candidate may be included, and the first virtual view picture may be a picture generated by performing warping on the second depth map belonging to the second view.
  • a pixel value of a prediction pixel in the prediction block corresponds to the prediction pixel among warp pixels in the first warp block.
  • the pixel value of the warp pixel may be determined.
  • the warping mode merge candidate is a merge candidate derived based on a warping mode merge candidate block in which decoding is performed in a merge skip mode and includes at least one of the remaining merge candidates except the virtual view merge candidate among the plurality of merge candidates.
  • the warping mode merge candidate block may include: predicting a second warp block existing at a spatial position identical to the warping mode merge candidate block in a second virtual view picture corresponding to the warping mode merge candidate block;
  • the second virtual view picture is generated by performing warping on a picture belonging to a different view from the picture including the warping mode merge candidate block and having the same POC value as the block. It may be a picture.
  • the prediction block generating step may include: motion information corresponding to the merge candidate indicated by the merge index;
  • the method may further include generating a prediction block corresponding to the first depth block by determining information and performing motion compensation on the first depth block based on the determined motion information.
  • the merge candidates allocated to the merge candidate list An additional merge candidate may be generated and assigned to the merge candidate list based on the remaining merge candidates except the warping mode merge candidate and the virtual view merge candidate.
  • the warping mode merge candidate is a merge candidate derived based on a warping mode merge candidate block in which decoding is performed in a merge skip mode and includes at least one of the remaining merge candidates except the virtual view merge candidate among the plurality of merge candidates.
  • the warping mode merge candidate block may include: predicting a second warp block existing at a spatial position identical to the warping mode merge candidate block in a second virtual view picture corresponding to the warping mode merge candidate block;
  • the second virtual view picture is generated by performing warping on a picture belonging to a different view from the picture including the warping mode merge candidate block and having the same POC value as the block. It may be a picture.
  • the prediction block generating step may include motion information corresponding to the merge candidate indicated by the merge index. ) Is determined as motion information of the first depth block, and a motion block is generated for the first depth block based on the determined motion information to generate a prediction block corresponding to the first depth block. It may further comprise the step.
  • the prediction block generating step pixel values of the prediction pixels in the prediction block are within the first warp block.
  • the pixel value of the warp pixel corresponding to the prediction pixel may be determined.
  • the plurality of merge candidates include motion information of a block located at the bottom of the blocks adjacent to the left side of the first depth block and motion information of a block located at the virtual right side among blocks adjacent to the top of the first depth block. can do.
  • the plurality of merge candidates are movements of a Col block determined as a relative position with respect to the same position block in a reference picture belonging to the same view as the picture including the first depth block and having a different POC value. May contain information.
  • the co-located block may be a block that exists at the same spatial position as the first depth block within the reference picture.
  • the plurality of merge candidates may include motion information of a block indicated by a global disparity vector (GDV) in the second depth map.
  • GDV global disparity vector
  • the GDV may be a vector representing overall variation between the first view and the second view.
  • the plurality of merge candidates may include motion information of a block covering a pixel that exists at the same spatial position as the leftmost top pixel in the first depth block in a texture picture corresponding to the first depth map.
  • the texture picture may be a picture belonging to the same view as the first depth map and having the same POC value as the first depth map.
  • the method may further include receiving virtual view skip flag information indicating whether a virtual view skip mode is applied to a decoding target block belonging to a decoding target picture in a current view, and The method may include generating a reconstruction block corresponding to the decoding target block based on the virtual view skip flag information.
  • prediction of the decoding target block is performed based on a warp block that is spatially located at the same position as the decoding target block in the virtual view picture corresponding to the current view.
  • a prediction mode in which transmission of a residual signal for the decoding target block is omitted and the virtual view picture may be a picture generated by performing warping on a reference picture in a reference view, and the current picture and the reference.
  • the pictures may have the same POC value.
  • the unit for determining whether to apply the virtual view skip mode may be a coding unit (CU), and the virtual view skip flag information may be defined in a coding unit syntax.
  • the virtual view skip flag information may be determined prior to other syntax elements related to decoding defined in the coding unit syntax.
  • a pixel value of a reconstruction pixel in the reconstruction block is selected from warp pixels in the warp block.
  • the pixel value of the warp pixel corresponding to the reconstructed pixel may be determined.
  • the reconstructing block generation step When the virtual view skip flag information indicates that the virtual view skip mode is not applied to the decoding target block, in the reconstructing block generation step, the virtual view skip among a plurality of prediction modes that the decoding target block may have.
  • the reconstruction block may be generated based on a prediction mode other than the mode.
  • image encoding / decoding efficiency may be improved.
  • image encoding / decoding efficiency can be improved.
  • image encoding / decoding efficiency can be improved.
  • image encoding / decoding efficiency can be improved.
  • FIG. 1 is a diagram schematically illustrating an embodiment of image information for processing a 3D image.
  • FIG. 2 is a block diagram schematically illustrating an image encoding apparatus according to an embodiment of the present invention.
  • FIG. 3 is a block diagram schematically illustrating an image decoding apparatus according to an embodiment of the present invention.
  • FIG. 4 is a diagram schematically illustrating an embodiment of merge candidates used for generating a merge candidate list in a merge skip mode for a single view video.
  • FIG. 5 is a diagram schematically illustrating an embodiment of a method for deriving a spatial merge candidate in a merge skip mode for multi-view video.
  • FIG. 6 is a diagram schematically illustrating an embodiment of a method for deriving a merge candidate based on a GDV in a merge skip mode for multi-view video.
  • FIG. 7 is a diagram schematically illustrating an embodiment of a prediction method based on a virtual view warping method.
  • FIG. 8 is a diagram schematically illustrating an embodiment of a process of generating a virtual view picture through warping.
  • FIG. 9 is a diagram schematically illustrating an embodiment of merge candidates used for generating a merge candidate list in a merge skip mode for multi-view video.
  • FIG. 10 is a flowchart schematically illustrating an embodiment of a method for transmitting information regarding merge skip of a multi-view video in an encoder according to the present invention.
  • FIG. 11 is a flowchart schematically illustrating an embodiment of a method for performing merge skip mode prediction of multi-view video in a decoder according to the present invention.
  • FIG. 12 is a flowchart schematically illustrating an embodiment of a method for transmitting information about a virtual view skip mode in an encoder according to the present invention.
  • FIG. 13 is a flowchart schematically illustrating an embodiment of a method of performing decoding based on information about a virtual view skip mode in a decoder according to the present invention.
  • each of the components in the drawings described in the present invention are shown independently for the convenience of the description of the different characteristic functions in the image encoding / decoding apparatus, each component is implemented by separate hardware or separate software It does not mean that it is.
  • 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.
  • the components may not be essential components for performing essential functions in the present invention, but may be optional components for improving performance.
  • the present invention can be implemented including only the components essential for implementing the essentials of the present invention except for the components used for improving performance, and the structure including only the essential components except for the optional components used for improving performance. Also included within the scope of the present invention.
  • the image input to the encoding apparatus may be a texture image and a depth map.
  • the depth map may represent the distance from the view point to the surface of the object in the image.
  • the view point may be, for example, a camera that photographs the corresponding image.
  • the texture image is an image constituting the 3D image and may mean an image including information (for example, color, contrast, etc.) other than depth information.
  • the texture image may be composed of images of a multi-view.
  • a depth map (depth image) and a texture image may be respectively processed in an encoding / decoding process to be described later, and the texture image and the depth map may be processed for each view.
  • the texture image may be referred to for processing the depth map
  • the depth map may be referred to for processing the texture image.
  • the texture image and the depth map may be processed by referring to the image of another view.
  • the encoding / decoding method of the multi-view video may be configured to extend the encoding method of the single-view video.
  • FIG. 1 is a diagram schematically illustrating an embodiment of image information for processing a 3D image.
  • images of a plurality of views may be processed.
  • FIG. 1 for convenience of description, image processing using two views will be described as an example.
  • the multi-view texture video may be composed of the texture video VT0 of view 0 and the texture video VT1 of view 1.
  • the multi-view depth video may include a depth map VD0 of view 0 corresponding to texture video VT0 and a depth map VD1 of view 1 corresponding to texture video VT1.
  • each view may represent a spatial location.
  • the texture picture VT0 of view 0 and the texture picture VT1 of view 1 may exist in the same POC (Picture Order Count) in the 3D image.
  • a depth map VD0 of view 0 corresponding to texture picture VT0 and a depth map VD1 of view 1 corresponding to texture picture VT1 may exist in the same POC.
  • the POC indicates the output order of the images, and it can be said that the same POC output order is the same.
  • a texture picture and a depth map having a POC value of t and a texture picture and a depth map having a POC value of t-1 are illustrated for convenience of description.
  • a block 110 belonging to a depth map VD1 having a POC value of t is an encoding / decoding target block.
  • the encoding / decoding target block 110 may refer to a block of another view (eg, view 0) in performing prediction, encoding, and / or decoding.
  • the encoding / decoding object block 110 may refer to a coll block (eg, block 120) corresponding to the encoding / decoding object block 110 in another depth map of the current view (eg, view 1). have.
  • the encoding / decoding object block 110 may refer to a block located adjacent to the encoding / decoding object block 110 in the current depth map.
  • the image encoding apparatus 200 may include a picture splitter 205, a predictor 210, a transformer 215, a quantizer 220, a reorderer 225, and an entropy encoder 230. , An inverse quantization unit 235, an inverse transform unit 240, a filter unit 245, and a memory 250.
  • the picture dividing unit 205 may divide the input picture into at least one processing unit.
  • the input picture may be a texture picture or a depth map.
  • the block as the processing unit may be a prediction unit (PU), a transform unit (TU), or a coding unit (CU).
  • PU prediction unit
  • TU transform unit
  • CU coding unit
  • embodiments to be described below are described based on a processing unit generated by dividing a picture to be encoded / decoded (or a current picture), and a unit may be referred to as a block in some cases.
  • a block obtained by dividing a texture picture is referred to as a texture block
  • a block obtained by dividing a depth map is called a depth block.
  • the prediction unit 210 may generate a prediction block by performing prediction on the processing unit of the picture in the picture dividing unit 205.
  • the processing unit of the picture in the prediction unit 210 may be a coding unit, a transformation unit, or a prediction unit.
  • the prediction unit 210 may determine whether the prediction performed on the processing unit is inter prediction or intra prediction, and determine specific contents (eg, prediction mode, etc.) of each prediction method.
  • the prediction unit 210 may generate a prediction block by performing prediction based on information of at least one of a previous picture and / or a subsequent picture of the current picture through inter prediction. In addition, the prediction unit 210 may generate a prediction block by performing prediction based on pixel information in the current picture through intra prediction. The prediction unit 210 may generate a prediction block by referring to pictures of different views through inter-view prediction.
  • the prediction unit 210 may select a reference picture with respect to the PU and select a reference block having the same size as the PU.
  • the predictor 210 may generate a prediction block that minimizes a residual signal and a motion vector of the current block.
  • Information such as a reference picture index, a motion vector, and a residual signal selected through inter prediction may be entropy encoded and transmitted to the decoder.
  • the prediction block may be used as the reconstruction block, the residual signal may not be generated, transformed, quantized, or transmitted.
  • a prediction mode may be determined in units of PUs, and prediction may be performed in units of PUs.
  • a prediction mode may be determined in units of PUs, and intra prediction may be performed in units of TUs.
  • the prediction mode may include 33 directional prediction modes and at least two non-directional modes.
  • the non-directional mode may include a DC mode and a planar mode.
  • a prediction block may be generated after applying a filter to a reference sample.
  • whether to apply the filter to the reference sample may be determined according to the intra prediction mode and / or the size of the current block.
  • the prediction unit 210 may use, for example, a global disparity vector (GDV) that specifies a position of a corresponding block that can be referred to the prediction of the current block in the current view in the reference view. Prediction may be performed, and a prediction block may be generated. In addition, the prediction unit 210 generates a virtual view picture corresponding to the current view by warping a picture of another view, and generates a prediction block corresponding to the current block based on the generated virtual view picture. You may. In this case, the prediction unit 210 is the same as the inter prediction based on the motion vector of the corresponding block derived based on the GDV and / or the block existing at the same position as the current block in the virtual view picture generated by warping. By applying the skip mode, the merge mode and / or the MVP mode, the inter-view prediction for the current block may be performed. Specific embodiments thereof will be described later.
  • GDV global disparity vector
  • PUs can be blocks of various sizes / types.
  • the PU may be a 2N ⁇ 2N block, a 2N ⁇ N block, an N ⁇ 2N block, or an N ⁇ N block (N is a natural number).
  • PUs such as NxmN blocks, mNxN blocks, 2NxmN blocks, or mNx2N blocks (m ⁇ 1) may be further defined and used.
  • the residual value (residual block) between the generated prediction block and the original block may be input to the transformer 215.
  • prediction mode information, motion vector information, disparity vector information, and / or warping related information used for prediction may be encoded by the entropy encoder 230 along with the residual value and transmitted to the decoder.
  • the transformer 215 may transform a residual block in a transform unit and generate transform coefficients.
  • the transform unit 215 may perform the transformation after downsampling the texture image and the depth map. Down sampling may be performed on the low frequency region in the texture image and the depth map, or may be performed on the region where detail characteristics are not important. Down sampling reduces complexity and improves coding efficiency.
  • the transform unit in the transform unit 215 may be a transform unit, and may have a quad tree structure. In this case, the size of the transform unit may be determined within a range of a predetermined maximum and minimum size.
  • the transform unit 215 may transform the residual block using a discrete cosine transform (DCT) and / or a discrete sine transform (DST).
  • DCT discrete cosine transform
  • DST discrete sine transform
  • the quantizer 220 may generate quantization coefficients by quantizing the residual values transformed by the transformer 215.
  • the value calculated by the quantization unit 220 may be provided to the inverse quantization unit 235 and the reordering unit 225.
  • the reordering unit 225 may rearrange the quantization coefficients provided from the quantization unit 220. By reordering the quantization coefficients, the efficiency of encoding in the entropy encoder 230 may be increased.
  • the reordering unit 225 may rearrange the quantization coefficients in the form of a two-dimensional block into a one-dimensional vector form through a coefficient scanning method.
  • the reordering unit 225 may increase the entropy coding efficiency of the entropy encoder 230 by changing the order of coefficient scanning based on probabilistic statistics of coefficients transmitted from the quantizer.
  • the entropy encoder 230 may perform entropy encoding on the quantized coefficients rearranged by the reordering unit 225.
  • Entropy encoding may include, for example, encoding methods such as Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and / or Context-Adaptive Binary Arithmetic Coding (CABAC).
  • CABAC Context-Adaptive Binary Arithmetic Coding
  • the entropy encoder 230 may include quantization coefficient information, block type information, prediction mode information, division unit information, prediction unit information, transmission unit information, and motion vector of the coding unit received from the reordering unit 225 and the prediction unit 210.
  • Various information such as information, reference picture information, interpolation information of a block, and filtering information can be encoded.
  • the entropy encoder 230 may multiplex the texture image information and the depth map information based on the multi view and transmit the multiplexed texture image information and the depth map information in the bitstream.
  • the inverse quantization unit 235 may inverse quantize the quantized values in the quantization unit 220, and the inverse transformer 240 may inversely transform the inverse quantized values in the inverse quantization unit 235.
  • the inverse transform unit 240 may perform upsampling on the inverse transformed residual block when downsampling is performed in the transform unit 215.
  • the sampling rate of the upsampling may be determined corresponding to the sampling rate of the downsampling performed by the converter 215.
  • the residual value generated by the inverse quantization unit 235 and the inverse transform unit 240 may be combined with the prediction block predicted by the prediction unit 210 to generate a reconstructed block.
  • a reconstructed block is generated by adding a residual block and a prediction block through an adder.
  • the adder may be regarded as a separate unit (restoration block generation unit) for generating a restoration block.
  • the filter unit 245 may apply at least one of a deblocking filter, a sample adaptive offset (SAO), and an adaptive loop filter (ALF) to the reconstructed block and / or picture as needed.
  • a deblocking filter e.g., a sample adaptive offset (SAO), and an adaptive loop filter (ALF)
  • the deblocking filter may remove block distortion generated at the boundary between blocks in the reconstructed picture.
  • the SAO may restore the offset difference from the original image on a pixel-by-pixel basis for the residual block to which the deblocking filter is applied, and may be applied in the form of a band offset, an edge offset, or the like.
  • the ALF may perform filtering based on a value obtained by comparing the reconstructed image with the original image after the deblocking filtering process and / or the SAO process is performed.
  • the memory 250 may store the reconstructed block or the picture calculated by the filter unit 245.
  • the reconstructed block or picture stored in the memory 250 may be provided to the predictor 210 that performs inter prediction.
  • the image decoder 300 includes an entropy decoder 310, a reordering unit 315, an inverse quantizer 320, an inverse transformer 325, a predictor 330, and a filter 335. And a memory 340.
  • the input bit stream may be decoded according to a procedure in which image information is processed by the image encoder.
  • VLC variable length coding
  • 'VLC' variable length coding
  • the entropy encoder 310 may also use a VLC table. Entropy decoding can be performed by implementing the same VLC table as.
  • CABAC CABAC is used to perform entropy encoding in the image encoder
  • CABAC CABAC correspondingly.
  • the entropy decoder 310 may demultiplex the received bitstream and then perform entropy decoding.
  • Information for generating a prediction block among the information decoded by the entropy decoder 310 is provided to the predictor 330, and a residual value on which entropy decoding is performed by the entropy decoder 310 is input to the reordering unit 315. Can be.
  • the reordering unit 315 may reorder the bit stream deentropy decoded by the entropy decoding unit 310 based on a method of reordering the image encoder.
  • the reordering unit 315 may reorder the coefficients expressed in the form of a one-dimensional vector by restoring the coefficients in the form of a two-dimensional block.
  • the reordering unit 315 may receive the information related to the coefficient scanning performed by the encoder and perform the rearrangement through a reverse scanning method based on the scanning order performed by the encoder.
  • the inverse quantization unit 320 may perform inverse quantization based on the quantization parameter provided by the encoder and the coefficient values of the rearranged block.
  • the inverse transform unit 325 may perform inverse DCT and / or inverse DST on DCT and DST performed by the transform unit of the encoder with respect to the quantization result performed by the image encoder.
  • the inverse transform may be performed based on a transmission unit determined by the encoder or a division unit of an image.
  • the DCT and / or DST may be selectively performed according to a plurality of pieces of information such as a prediction method, a size of the current block, and / or a prediction direction, and the inverse transformer 325 of the decoder is Inverse transformation may be performed based on the performed transformation information.
  • the prediction unit 330 may generate the prediction block based on the prediction block generation related information provided by the entropy decoding unit 310 and the previously decoded block and / or picture information provided by the memory 340.
  • the prediction unit 330 may perform intra prediction to generate a prediction block based on pixel information in the current picture and generate a prediction block.
  • the prediction unit 330 When the prediction mode for the current block is the inter prediction mode, the prediction unit 330 performs inter prediction on the current block based on information included in at least one of a previous picture or a subsequent picture of the current picture and predicts the prediction. You can create a block.
  • motion information required for inter prediction of the current block provided by the encoder for example, a motion vector, a reference picture index, and the like, may be derived by checking a skip flag, a merge flag, and the like received from the encoder.
  • the prediction unit 330 may perform prediction on the current block using a reference picture in another view and generate a prediction block.
  • the reconstruction block may be generated using the prediction block generated by the predictor 330 and the residual block provided by the inverse transform unit 325.
  • the reconstructed block is generated by combining the prediction block and the residual block in the adder.
  • the adder may be regarded as a separate unit (restoration block generation unit) for generating a restoration block.
  • the residual signal may not be transmitted and the prediction block may be used as the reconstruction block.
  • the reconstructed block and / or picture may be provided to the filter unit 335.
  • the filter unit 335 may apply a deblocking filter, a sample adaptive offset (SAO), and / or an ALF to the reconstructed block and / or picture as necessary.
  • SAO sample adaptive offset
  • the memory 340 may store the reconstructed picture or block to use as a reference picture or reference block, and may provide the reconstructed picture to the output unit. Although not shown, the output unit may provide a 3DV image using the reconstructed multi-view pictures.
  • the current block is a block in which a current encoding, decoding and / or prediction process is performed, and may mean a block corresponding to a processing unit when the encoding, decoding and / or prediction process is performed.
  • the current block may correspond to the prediction target block corresponding to the current prediction unit.
  • a block generated by prediction is called a prediction block.
  • a motion vector prediction (MVP) mode when inter prediction is performed on a current block, a motion vector prediction (MVP) mode, a merge mode, and / or a skip may be used to reduce the amount of transmission information according to the prediction.
  • Prediction mode such as) mode may be used.
  • the current block is the other block in the current picture and / or the reference picture (e.g., the neighboring block.
  • the neighboring block is nearest to the block adjacent to the current block and / or the outer corner of the current block. (Including blocks located in close proximity).
  • merging means that motion information is obtained from motion information of another block in the current picture and / or a reference picture in inter prediction of the current block. That is, in merge mode, information used in another block (eg, a block encoded / decoded based on inter prediction) in the current picture and / or a reference picture may be used for encoding / decoding of the current block.
  • the merge related information of the current block may include information indicating whether the prediction mode for the current block is a merge mode, information indicating which merge candidate is merged among merge candidates included in the merge candidate list, and the like.
  • information indicating whether the prediction mode for the current block is a merge mode is called a merge flag
  • information indicating which merge candidate is merged among merge candidates included in the merge candidate list is called a merge index.
  • the merge flag may be represented by merge_flag and the merge index may be represented by merge_idx.
  • the skip mode is a prediction mode in which transmission of a residual signal, which is a difference between a prediction block and a current block, is omitted.
  • the residual signal values of the prediction block and the current block may be zero. Therefore, in the skip mode, the encoder may not transmit the residual signal to the decoder, and the decoder may generate the prediction block using only the motion information among the residual signal and the motion information.
  • the encoder may transmit the motion information to the decoder. In this case, the motion information may be transmitted in a manner of designating any one block among neighboring blocks of the current block to use the motion information of the corresponding block in the current block.
  • the same method as that used in the merge mode may be used to obtain motion information of the current block.
  • the same neighboring blocks may be used as candidate blocks for deriving motion information in the skip mode and the merge mode.
  • the motion information of the merge candidate block indicated by the merge index among the merge candidates included in the merge candidate list may be used as the motion information of the current block as it is.
  • the skip mode in this case may also be called a merge skip mode.
  • the skip mode applied to the prediction process in the present specification is called a merge skip mode.
  • FIG. 4 is a diagram schematically illustrating an embodiment of merge candidates used for generating a merge candidate list in a merge skip mode for a single view video.
  • FIG. 4 may be applied to the encoder and the decoder in the same manner unless otherwise noted.
  • the embodiment of FIG. 4 is described based on the merge skip mode, it may be applied to the merge mode in the same or similar manner.
  • the texture picture 423 having the POC value t may include the current block 426 to be predicted, and the texture picture 433 having the POC value t-1 corresponds to the call corresponding to the current block 426. It may include a block (Col block, 436).
  • the current block 426 may be a PU. The call block will be described later.
  • 420 of FIG. 4 shows the current block 426 and blocks located in the vicinity of the current block 426.
  • the prediction unit may derive a plurality of merge candidates through a predetermined process, and generate a merge candidate list based on the derived merge candidates.
  • a merge candidate block' a block including motion information (and / or pixel value information) used as a merge candidate.
  • the number of merge candidates constituting the merge candidate list may be limited to a predetermined number, for example, the predetermined number may be five.
  • the number of merge candidates constituting the merge candidate list is 5 for convenience of description.
  • the present invention is not limited thereto and may be applied in the same or similar manner even when the number of merge candidates constituting the merge candidate list is not five.
  • the call block 436 may be used as a merge candidate block in the merge skip mode.
  • the call block 436 may correspond to a block in the reference picture 433, not the current picture 423, and the reference picture 433 may correspond to an L0 reference picture list and / or an L1 reference picture list ( L1 reference picture list) may be a selected picture from among pictures.
  • the reference picture 433 may be the first picture in the reference picture list.
  • FIG. 4 shows an embodiment where the current picture 423 has a POC value of t and the reference picture 433 has a POC value of t-1.
  • the present invention is not limited thereto, and when the current picture 423 has a POC value of t, the reference picture from which the call block is derived may be a picture having a POC value of tm (m is an integer other than 0). have.
  • the location of the call block 436 may be derived based on a co-located block that is spatially identical to the current block 426 within the reference picture 433.
  • the call block 436 may correspond to a PU including a pixel located at the top left in the same location block.
  • the call block 436 may be a PU including a pixel located at the top left of the block corresponding to the predetermined motion information storage unit located in the reference picture 433.
  • the block corresponding to the motion information storage unit may be a block including a pixel located closest to a lower right corner outside the same location block or located at a lower right side among four pixels located at the center of the same location block. It may be a block including a pixel.
  • the above-described call block 436 is a block derived from the reference picture 433.
  • the merge candidate derived from call block 436 may be referred to as a temporal merge candidate.
  • a neighboring block located around the current block 426 may be used as a merge candidate block.
  • the neighboring block is the block A located at the bottom of the blocks adjacent to the left of the current block 426, the block B located at the rightmost among the blocks adjacent to the top of the current block 426, and the current block 426.
  • each neighboring block may be a PU.
  • the prediction unit may determine the neighboring blocks of the current block 426 in the order of A, B, C, D, and E, and determine four blocks including available motion information as merge candidate blocks.
  • the number of merge candidates derived from the neighboring block may be four, for example.
  • the above-described neighboring blocks are blocks located around the current block 426. Accordingly, the merge candidate derived from the neighboring block may be referred to as a spatial merge candidate.
  • the prediction unit may generate the merge candidate list by inserting the spatial merge candidates and the temporal merge candidates in order. In this case, when there are a plurality of merge candidates that are identical to each other, the remaining merge candidates except the one having the highest priority may be deleted and not added to the merge candidate list.
  • the prediction unit may derive a new merge candidate based on the merge candidate already added to the merge candidate list and add it to the merge candidate list. In this case, the prediction unit may add a new merge candidate until the number of merge candidates constituting the merge candidate list is five.
  • New merge candidates derived based on merge candidates already added to the merge candidate list may include a combined bi-predictive candidate (CB), a non-scaled bi-predictive candidate (NB), and / or a zero motion candidate (zero).
  • the CB may be derived based on two merge candidates among merge candidates already added to the merge candidate list.
  • the L0 motion information of the CB may be derived based on one of the two merge candidates
  • the L1 motion information of the CB may be derived based on the other of the two merge candidates. That is, CB can be derived by combining motion information of each of the two merge candidates.
  • the L0 motion information and the L1 motion information of the NB may be derived through predetermined conditions and operations based on one merge candidate among merge candidates already added to the merge candidate list.
  • the zero may mean motion information including a zero vector (0, 0).
  • Merge candidates constituting the merge candidate list may be assigned a merge index in the order of insertion into the list.
  • a low merge index value may be assigned to the merge candidate added to the merge candidate list preferentially.
  • the encoder may encode a merge index indicating a merge candidate actually used for encoding among the merge candidates constituting the merge candidate list and transmit the encoded index to the decoder.
  • the merge index may be transmitted through a syntax element called merge_idx.
  • the decoder may receive and decode the transmitted merge index.
  • the decoder may select a merge candidate to be used for prediction of the current block 426 from among the merge candidates constituting the merge candidate list based on the merge index.
  • the selected merge candidate may correspond to a candidate indicated by the merge index.
  • the decoder may derive motion information of the current block 426 based on the selected merge candidate.
  • the decoder may use the motion information of the selected merge candidate as it is as motion information of the current block 426.
  • the decoder may generate a prediction block corresponding to the current block 426 by performing motion compensation on the current block 426 based on the derived motion information.
  • the motion information of the current block 426 derived from the merge candidate may include a prediction direction, a reference picture index, a motion vector, and the like.
  • the transmission of the residual signal may be omitted. Therefore, the generated prediction block can be used as a reconstruction block.
  • the residual signal may be encoded and transmitted to the decoder.
  • the decoder may generate a residual block by decoding the residual signal, and generate a reconstructed block by adding the residual block and the prediction block.
  • multi-view video may have different characteristics than single-view video.
  • depth video has a higher probability of having a simpler distribution of data values than texture video, and may have a small change in pixel values.
  • pixel values within one depth block may have a high correlation with pixel values of another depth block located around the depth block.
  • neighboring blocks A, B, C, D, and E of the current block may be used as merge candidate blocks.
  • merge mode When merge mode is applied to a depth block, neighboring blocks A, B, C, Many cases where the motion information of D and E) all have the same or similar values may occur. Therefore, motion information of block A and / or block B to which a low merge index value is assigned may be mainly selected as a merge candidate used for deriving motion information of the current block.
  • the depth video may have motion information similar to the texture video having the same view as the depth video.
  • the depth information of the current view may be calculated based on depth information of another view and camera parameters transmitted together with the multi-view video (eg, the multi-view texture video and the multi-view depth video).
  • multi-view video there may be a plurality of corresponding pixels indicating the same position and having different views.
  • color values may be different among a plurality of corresponding pixels having different views.
  • multi-view depth video since only three-dimensional positional information is represented, there is a small possibility that a correlation decrease due to a difference and / or a change in color value between a plurality of corresponding pixels having different views is generated. . Therefore, in the case of multi-view depth video, the effect of inter-view prediction may be high.
  • the merge skip (and / or merge) scheme of FIG. 4 suitable for single-view video provides high coding efficiency. May not be provided. Accordingly, a merge candidate list construction scheme, a merge skip mode (and / or merge mode) prediction scheme, and / or an encoding / decoding scheme in consideration of the characteristics of the multi-view video and / or the characteristics of the depth video may be provided.
  • Embodiments described below will be described based on the depth video and / or the depth image, but the present invention is not limited thereto. Embodiments described below may be applied to the texture video and / or the texture image in the same or similar manner as in the depth depth video and / or the depth image. For example, when the texture image information is used for the prediction of the depth image in the below-described embodiment, the depth image information may be used in a similar manner for the prediction of the texture image.
  • FIG. 5 is a diagram schematically illustrating an embodiment of a method for deriving a spatial merge candidate in a merge skip mode for multi-view video.
  • FIG. 5 may be applied to the encoder and the decoder in the same manner unless otherwise noted.
  • the embodiment of FIG. 5 is described based on the merge skip mode, it may be applied to the merge mode in the same or similar manner.
  • the depth video may have a higher probability of having a simpler distribution of data values than the texture video, and may have a small change in pixel values.
  • pixel values within one depth block may have a high correlation with pixel values of another depth block located around the depth block.
  • Five blocks, including a block, the block closest to the lower left corner outside the current block, and the block closest to the upper left corner outside the current block, can be used for deriving the spatial merge candidate.
  • many of the neighboring blocks may have similar values due to the aforementioned characteristics. Therefore, in multi-view video and / or depth video, a smaller number of neighboring blocks may be used as the merge candidate block than in the embodiment of FIG. 4 in consideration of these characteristics.
  • the motion information of the block to which the low merge index value is allocated among the motion information of the neighboring blocks is mainly used in the current block. It is highly likely to be selected as a merge candidate used for deriving motion information. Accordingly, in the multi-view video and / or depth video, two blocks having motion information to which the lowest merge index value is assigned among the five neighboring blocks shown in the embodiment of FIG. 4 may be used as the merge candidate block.
  • each neighboring block may be a PU.
  • the prediction unit may determine a block including motion information available among blocks A and B as a merge candidate block.
  • the number of merge candidates derived from the neighboring block may be two, for example.
  • the predictor may use one neighboring block (e.g., block A) rather than two as merge candidate blocks, and three or more neighboring blocks (e.g., blocks A, block B, and block C) may be used as the merge candidate block.
  • one neighboring block e.g., block A
  • three or more neighboring blocks e.g., blocks A, block B, and block C
  • a multi-view video sequence photographed by a plurality of cameras may be used.
  • Parallax and / or variation, called global disparity may exist between images captured in different views.
  • Global disparity may be referred to as a difference in global variation existing between a picture of a specific time in a current view and a picture of the same time in another view.
  • the difference in overall variation between the two views may be represented through a global disparity vector (GDV).
  • GDV global disparity vector
  • a block corresponding to the current block may be derived from another view based on the GDV of the current block belonging to the current view, and the motion of the current block based on the motion information of the derived block. Information can be predicted. Therefore, in multi-view video, motion information of a block derived from a GDV (a block having a different view from the view to which the current block belongs) may be used as a merge candidate. Specific embodiments thereof will be described later with reference to FIG. 6.
  • FIG. 6 is a diagram schematically illustrating an embodiment of a method for deriving a merge candidate based on a GDV in a merge skip mode for multi-view video.
  • FIG. 6 may be applied to the encoder and the decoder in the same manner unless otherwise noted.
  • the embodiment of FIG. 6 is described based on the merge skip mode, it may be applied to the merge mode in the same or similar manner.
  • FIG. 6 illustrates a case where a merge candidate is derived for the current block 610 in the picture 600 of the nth view Vn among the multi views.
  • motion information of the reference block 630 in the picture 620 of the m th view Vm of the multi-view may be referred to.
  • the picture 600 of the nth view and the picture 620 of the mth view may correspond to pictures of the same time, that is, of the same picture order count (POC).
  • the POC may be information indicating the output order of the pictures.
  • the relationship between the current block 610 and the reference block 630 belonging to different views may be defined by the GDV 650.
  • 6 shows block 640 in which current block 610 is projected in the mth view.
  • the position of the upper left pixel located at the upper left in the block 640 in which the current block 610 and the current block 610 is projected in the mth view may be represented as (xP, yP).
  • the reference block 630 of the m th view may correspond to a block including the position of the pixel 635 derived by applying a GDV to the upper left pixel.
  • GDV is (GDVx, GDVy)
  • Equation 1 the position of the pixel 635 included in the reference block 630 may be represented by Equation 1 below.
  • the reference block 630 may be determined based on the position of the upper left pixel and the GDV in the current block 610.
  • the reference block 630 may be a PU as an example.
  • the prediction unit may use the motion information of the reference block 630 of the m-th view specified based on the GDV as a merge candidate of the current block 610 belonging to the n-th view.
  • the encoder may select a disparity for minimizing an error of motion information of two blocks belonging to different views in the same POC as a global disparity between corresponding views. For example, a disparity having an optimal sum of absolute difference (SAD) value may be determined in units of blocks between two views. At this time, instead of SAD, Mean Square Error (MSE), Mean Absolute Difference (MAD), or the like may be used.
  • the global disparity vector (GDV) may correspond to a vector representation representing the selected global disparity.
  • the encoder may transmit the calculated GDV information to the decoder through the bitstream. Therefore, the decoder can use the same GDV for prediction as the GDV used in the encoder.
  • inter-view prediction is performed based on GDV
  • motion information is taken from a block (reference block) in a reference picture of a reference view corresponding to the current block of the current view by GDV, and thus the prediction of the current block is performed. It is available.
  • motion information derived based on GDV may be used as a merge candidate of the current block.
  • the decoder may determine the reference block 630 based on the transmitted GDV, and use the determined motion information of the reference block 630 as a merge candidate of the current block 610.
  • the prediction unit may perform prediction based on a warping method on a current block (for example, a depth block) belonging to the current view.
  • a warping-based prediction method may include a View Synthesis Prediction (VSP).
  • the prediction unit When the prediction unit performs prediction on a current block (eg, a depth block) belonging to the current view, the prediction unit corresponds to the current view by warping a reference picture (eg, a depth map) of another view.
  • a virtual view picture may be generated and prediction may be performed based on pixel values of a block corresponding to the current block in the virtual view picture. Since the virtual view picture may be generated during the warping process, the warping process may be referred to as 'virtual view warping' or '3D warping'.
  • warping techniques are applied to texture video and / or depth video, encoding, decoding and / or prediction efficiency may be improved.
  • the pixel value of the block (block corresponding to the current block) in the virtual view picture generated based on the warping method may be used as a prediction value of the pixel in the current block. Therefore, a block in the virtual view picture corresponding to the current block may also be used as a merge candidate block.
  • a block in a virtual view picture used as a merge candidate block may also be referred to as a “merge candidate” for convenience of description.
  • FIG. 7 is a diagram schematically illustrating an embodiment of a prediction method based on a virtual view warping method.
  • the embodiment of FIG. 7 may be applied to the encoder and the decoder in the same manner unless otherwise noted.
  • FIG. 7 shows a texture picture VT1 of view 1, a texture picture VT2 of view 2, a depth map VD1 of view 1, and a depth map VD2 of view 2.
  • the texture picture VT1 of view 1, the texture picture VT2 of view 2, and the depth map VD1 of view 1 are previously encoded / decoded pictures, and the current block to be predicted ( Assume 710 is a block belonging to depth map 720 of view 2.
  • the current view to which the current block 710 belongs may correspond to view 2.
  • FIG. 7 shows a texture picture VT1 of view 1, a texture picture VT2 of view 2, a depth map VD1 of view 1, and a depth map VD2 of view 2.
  • the texture picture VT1 of view 1, the texture picture VT2 of view 2, and the depth map VD1 of view 1 are previously encoded / decoded pictures, and the current block to be predicted ( Assume 710 is a block belonging to depth map 720 of view 2.
  • the texture picture VT1 of view 1, the texture picture VT2 of view 2, the depth map VD1 of view 1 and the depth map VD2 of view 2 are, for example, the same time, that is, It may correspond to pictures of the same POC.
  • the POC may be information indicating the output order of the pictures.
  • FIG. 7 an embodiment in which warping is performed on two views of View 1 and View 2 is described for convenience of description, but the present invention is not limited thereto, and the prediction method according to the embodiment of FIG. The same can be applied if the view exists.
  • the encoder and the decoder perform warping on the reconstructed reference picture of another view before performing encoding / decoding on the current picture so that the virtual view picture corresponding to the current view (the view to which the current block belongs) (for example, , Virtual view texture picture or virtual view depth map).
  • the virtual view picture corresponding to the current view for example, , Virtual view texture picture or virtual view depth map.
  • a VSP algorithm may be used.
  • the encoder and the decoder correspond to view 2 by performing warping on the reconstructed depth map 730 of view 1 before encoding / decoding the depth map 720 of view 2.
  • the virtual view depth maps VD2 ′ and 740 may be generated. That is, the restored depth map 730 of view 1 may be warped to the view (view 2) to which the current block belongs.
  • the VSP algorithm may be used as the warping, for example. A specific embodiment of the warping process will be described later with reference to FIG. 8.
  • block 750 that exists at the same spatial location as the current block 710 may be referred to as a 3D warp collocated block.
  • a block existing at a position spatially identical to a current block (eg, a prediction target block) within a virtual view picture (eg, a depth map or a texture picture) generated by warping is It is called a warp block.
  • the prediction unit may derive the warp block 750 that exists at the same spatial location as the current block 710 in the virtual view depth map 740.
  • the prediction unit may copy the pixel values of the warp block 750 and use them as prediction values and / or predictors for the pixels in the current block 710. That is, the prediction unit may generate a prediction block corresponding to the current block 710 based on the warp block 750.
  • the warp block 750 may be used as a prediction block corresponding to the current block 710.
  • FIG. 8 is a diagram schematically illustrating an embodiment of a process of generating a virtual view picture through warping.
  • FIG. 8 may be applied to the encoder and the decoder in the same manner unless otherwise noted.
  • the embodiment of FIG. 8 is described based on the depth map, but is not limited thereto and may be applied to the texture picture in the same or similar manner.
  • VSP algorithm may be applied as described above.
  • FIG. 8 an embodiment of a warping process based on a VSP is described, but the present invention is not limited thereto.
  • the present invention may be applied based on a virtual view picture generated through warping, regardless of an algorithm applied to 3D warping or a virtual view picture generation.
  • FIG. 8 illustrates the depth maps VD1 and 820 of view 1 and the virtual view depth map VD2 ′ and 830 corresponding to view 2.
  • the virtual view depth map 830 may represent a block generated by performing warping on the depth map 820 of view 1.
  • depth maps VD1 and 820 of view 1 and depth maps VD2 of view 2 corresponding thereto may correspond to pictures of the same time, that is, the same POC.
  • the deviation correction means that the optical axes of the plurality of cameras used for the video of view 1 and the video acquisition of view 2 are all parallel and there is no vertical disparity between the plurality of cameras. It means not to be rectified.
  • the depth pixel 825 of the (x, y) coordinate in the depth map 820 of view 1 is disparity on the x axis. You can move by).
  • the pixel 825 of (x, y) coordinates in the depth map 820 of view 1 is the virtual view depth pixel of (x + d, y) coordinates within the virtual view depth map 830 of view 2. It may be mapped or warped to 835.
  • d may represent a shift value between view 1 and view 2.
  • the variation value d may be derived by Equation 2 as an example.
  • D may represent a pixel value of the pixel 825 present at (x, y) coordinates in the depth map 820 of view 1.
  • bitdepth may indicate the number of bits used to represent pixel values of the depth map.
  • B may represent a baseline distance and f may represent a focal length.
  • the baseline distance may represent the distance between the two cameras used to shoot the video of views 1 and 2
  • the focal length may represent the distance from the focus of the camera corresponding to view 1 to the image plane.
  • Z near may represent the smallest depth value in the scene photographed by the camera corresponding to view 1
  • Z far may represent the largest depth value in the scene photographed by the camera corresponding to view 1.
  • the pixels included in the depth map 820 of view 1 may be mapped and / or warped to view 2 by the process described above, and the mapped and / or warped virtual view depth pixels may be the virtual view depth map of view 2. 830 may be configured.
  • the virtual view depth map 830 (VD2 ′) generated through the above-described view synthesis process may have holes that are not filled with pixel values.
  • 840 and 850 of FIG. 8 illustrate how to fill a hole present in the virtual view depth map 830.
  • holes 845 and X not filled with pixel values may exist in the virtual view depth map 830.
  • the encoder and the decoder may fill a hole existing in the virtual view depth map 830 based on a median filtering scheme.
  • the encoder and the decoder may sort the pixel values of eight peripheral pixels (peripheral pixels 1 to 8) around the hole 845 in order of size.
  • the encoder and the decoder may fill the hole 845 with pixel values corresponding to intermediate values among the aligned pixel values.
  • the process of filling the hole 845 based on the median filtering method may be represented by a pseudo code as follows.
  • 'Buf' may indicate a buffer in which pixel values of eight peripheral pixels existing around the hole 845 are stored.
  • 'P [i]' may represent a pixel value of the peripheral pixel i
  • 'th' may represent a threshold value of the number of pixel values stored in the buffer.
  • 'Sort (Buf)' may indicate sorting of pixel values stored in a buffer in size order.
  • 'hole' may represent a hole 845 and X may represent a pixel value filled in the hole 845.
  • holes 855 and X without pixel values may exist in the virtual view depth map 830 even after median filtering is performed.
  • the encoder and the decoder may fill a hole existing in the virtual view depth map 830 based on an inpainting scheme.
  • the pixel value of the neighboring pixel (peripheral pixel 1) adjacent to the left side of the hole 855 is the hole. 855 may be filled.
  • the pixel value of the peripheral pixel (peripheral pixel 2) adjacent to the right side of the hole 855 is generated in the hole 855.
  • the process of filling the hole 855 based on the inpainting scheme may be represented by the following pseudo code in one embodiment.
  • P (1) may represent the pixel value of the peripheral pixel 1
  • P (2) may represent the pixel value of the peripheral pixel 2.
  • to_right_warp may correspond to flag information indicating whether a virtual view picture corresponding to the right view is generated based on the picture corresponding to the left view, that is, whether right-side warping is performed.
  • X may represent a pixel value filled in the hole 855.
  • FIG. 9 is a diagram schematically illustrating an embodiment of merge candidates used for generating a merge candidate list in a merge skip mode for multi-view video.
  • FIG. 9 may be applied to the encoder and the decoder in the same manner unless otherwise noted.
  • the embodiment of FIG. 9 is described based on the merge skip mode, the embodiment may be applied to the merge mode in the same or similar manner.
  • the embodiment of FIG. 9 is described based on the depth map, the embodiment may be applied to the texture picture in the same or similar manner.
  • FIG. 9 shows merge candidates when merge skip mode (and / or merge mode) prediction is performed on two views.
  • the present invention is not limited thereto and the merge candidate derivation method according to the embodiment of FIG. 9 may be applied in the same or similar manner as in the embodiment of FIG. 9 even when prediction is performed for three or more views.
  • texture pictures 940 (VT1) of view 1 having a POC value of t-1 and texture pictures 950 (VT1) of view 1 having a POC value of t there may be texture pictures 940 (VT1) of view 1 having a POC value of t-1 and texture pictures 950 (VT1) of view 1 having a POC value of t.
  • VT1 of view 1 having a POC value of t-1 there may be texture pictures 940 (VT1) of view 1 having a POC value of t-1
  • texture pictures 950 (VT1) of view 1 having a POC value of t there may be texture pictures 940 (VT1) of view 1 having a
  • the depth map 960 (VD0) of view 0 having a POC value of t-1 the depth map 970 (VD0) of view 0 having a POC value of t, and the POC value of t-1.
  • each of the pictures may have a view identifier.
  • the view identifier may be represented as 'viewID', for example.
  • the current block 913 to be predicted is a depth block included in the depth map 910 of view 1 having a POC value of t. Accordingly, in the embodiment of FIG. 9, the viewID of the current view to which the current block 913 belongs is 1, and the POC value of the current depth map 910 to which the current block 913 belongs may correspond to t.
  • blocks 920, 930, 940, 950, 960, 970, and 980 are pictures that have already been encoded / decoded.
  • FIG. 9 illustrates an embodiment in which the POC value of pictures 920, 940, 960, and 980 having a different POC value from the current picture is t-1.
  • the present invention is not limited thereto, and the following embodiments may be identical or similar to those in which the pictures 920, 940, 960, and 980 are pictures having a POC value of tm (m is an integer other than 0). It can be applied in a way.
  • the rightmost blocks B and 916 positioned at the rightmost side among the blocks adjacent to the top of the current block 913 are positioned at the bottom of the blocks adjacent to the left side of the current block 913.
  • the motion information of the left blocks B and 919 may be used as a spatial merge candidate.
  • each peripheral block may be a PU, for example.
  • the prediction unit belongs to the same view (view 1) as the current block 913 and has a depth map 980 having a POC value of t-1 (a POC value other than the POC value of the current picture 910).
  • the motion information of the call blocks C and 985, derived from the Cs, can be used as a temporal merge candidate.
  • the call blocks C and 985 may be, for example, PUs. Since the process of deriving the call blocks C and 985 used as the merge candidate blocks from the depth map 980 is similar to that of the embodiment of FIG. 4, a detailed description thereof will be omitted.
  • the prediction unit derives the reference blocks D and 975 corresponding to the current block 913 from the depth map 970 belonging to another view (view 0) based on the global disparity vector (GDV). can do.
  • the depth map 970 belonging to the other view (view 0) may be a depth map having the same POC value as the current depth map 910.
  • the prediction unit may use the derived motion information of the reference blocks D and 975 as merge candidates of the current block 913. Since a specific embodiment of the merge candidate derivation method based on the GDV has been described above with reference to FIG. 6, it will be omitted here.
  • the depth video may have motion information similar to that of the texture video having the same view and the same POC value as the depth video.
  • the predictor is in the texture reference picture 950 which belongs to the same view (view 1) as the current depth map 910 (eg, has the same viewID as the current depth map 910) and has the same POC value.
  • the motion information of the texture reference blocks E and 955 may be used as a merge candidate of the current block 913.
  • the texture reference block 955 may be a block including a pixel in the texture reference picture 950 that is located at the same spatial position as the pixel located at the upper left corner of the current block 913.
  • the texture reference block 955 may be a PU.
  • the prediction unit warp block F in the virtual view depth map 990 generated by warping the depth map 970 belonging to a different view (view 0) from the current depth map 910. 995) may be used as a merge candidate.
  • the depth map 970 belonging to the other view (view 0) may be a depth map having the same POC value as the current depth map 910.
  • the virtual view depth map 990 may be a depth map corresponding to the view (view 1) to which the current depth map 910 belongs.
  • the warp block 995 When the warp block 995 is used as a merge candidate, unlike the other merge candidates A, B, C, D, and E, pixel values in the warp block 955 are assigned to the pixels in the current block 913. Can be used as a predictor and / or predictor for the That is, the warp block 955 may correspond to the prediction block corresponding to the current block 913. Since specific embodiments of the virtual view depth map 990 generation process and the warp block 955 derivation process have been described above with reference to FIGS. 7 and 8, a description thereof will be omitted.
  • the prediction unit in the merge skip mode (and / or merge mode) for the multi-view video, up to five types (for example, FIG. As in the embodiment, up to six merge candidates may be derived.
  • the prediction unit derives six merge candidates, but the present invention is not limited thereto.
  • the prediction unit may derive only some of the merge candidates according to the above-described embodiment and use the merge candidate, or may derive additional merge candidates.
  • FIG. 10 is a flowchart schematically illustrating an embodiment of a method for transmitting information regarding merge skip of a multi-view video in an encoder according to the present invention.
  • the merge candidates A, B, C, D, E and F are each merged in the same manner as the merge candidates A, B, C, D, E and F shown in the embodiment of FIG. 9. It can mean a candidate.
  • FIG. 10 an embodiment in which A, B, C, D, E, and F are all used as merge candidates is described.
  • the present invention is not limited thereto, and the embodiment of FIG. 10 is the same or similar in the case where some of A, B, C, D, E, and F are not used as merge candidates or additional merge candidates are derived. Can be applied as
  • FIG. 10 is described based on the merge skip mode, it may be applied to the merge mode in the same or similar manner.
  • the encoder may derive a merge candidate for the current block (S1010).
  • the current block may correspond to a texture block and / or a depth block as a block to be predicted.
  • the current block may be, for example, a PU.
  • the merge candidates derived for the current block may be merge candidates A, B, C, D, E, and F.
  • the merge candidates are merge candidates derived by considering characteristics of the multi-view video. Since specific embodiments of the merge candidate derivation method for the multi-view video have been described above, a description thereof will be omitted.
  • the encoder may generate a merge candidate list for the current block based on the derived merge candidate (S1020).
  • the encoder may not add or insert a block (and / or motion information of the block) that does not contain valid motion information to the merge candidate list.
  • the merge candidate F warp block
  • pixel values of the warp block may be used as pixel values of the current block, and thus, the merge candidate F for the current block may be used regardless of whether motion information is included. It may be added to the merge candidate list of the current block.
  • a block in which the prediction mode is intra mode among merge candidate blocks A, B, C, D, and E is considered to be not available or And / or treatment.
  • a block whose prediction mode is intra mode may not be used as a merge candidate block, and motion information of the block may not be added to the merge candidate list.
  • the merge candidate block may be a block in which prediction is performed based on the merge candidate derived in the same manner as in the current block.
  • the merge candidate block may be a block in which prediction is performed based on a warp block corresponding to the merge candidate block.
  • the warp block corresponding to the merge candidate block may be warped by performing warping on a picture belonging to a view different from the merge candidate block, wherein the picture may be, for example, a picture having the same POC value as the merge candidate block. It may be a block in the generated virtual view picture (the virtual view picture corresponding to the view to which the merge candidate block belongs).
  • a merge candidate block in which a merge skip mode (and / or merge mode) prediction is performed, and the merge candidate block in which the prediction is performed based on the warp block in the virtual view picture generated by warping may not include valid motion information. have.
  • the pixel values of the warp block may be used as the prediction value of the pixels in the block in which the prediction is performed.
  • the merge index (eg, merge_idx) of the merge candidate block on which the prediction is performed based on the warp block may indicate the merge candidate F in the merge candidate list used for the prediction of the merge candidate block.
  • the merge candidate F used for prediction of the merge candidate block is a merge candidate derived for the merge candidate block and may be different from the merge candidate F used for prediction of the current block.
  • a merge candidate block in which merge skip mode prediction (and / or merge mode prediction) is performed based on a warp block that is, the prediction mode is a merge skip mode (and / or merge mode) and a merge index (
  • the prediction mode is a merge skip mode (and / or merge mode) and a merge index (
  • a merge candidate block indicated by merge_idx) indicating a merge candidate F is called a 'warping mode merge candidate block'.
  • the merge candidate F may represent a merge candidate in the merge candidate list used for prediction of the merge candidate block. Therefore, the merge candidate F may be different from the merge candidate F used for prediction of the current block.
  • a merge candidate corresponding to a warping mode merge candidate block is referred to as a 'warping mode merge candidate'.
  • the block corresponding to the warping mode merge candidate block may be regarded as not available and / or processed.
  • a block corresponding to the warping mode merge candidate block may not be used as a merge candidate block, and motion information of the block may not be added to the merge candidate list.
  • the encoder may add or insert valid merge candidates among A, B, C, D, E, and F to the merge candidate list of the current block. That is, the merge candidate list may be composed of valid merge candidates among A, B, C, D, E, and F. In this case, among the merge candidates A, B, C, D, and E, a plurality of merge candidates may exist. When there are a plurality of merge candidates that are identical to each other, the encoder may remove the remaining merge candidates except the one having the highest priority among the plurality of merge candidates that are identical to each other and may not add the merge candidate to the merge candidate list.
  • the number of merge candidates included in the merge candidate list may be less than five.
  • the encoder may derive a new merge candidate based on the remaining merge candidates except the merge candidate F among the merge candidates already added to the merge candidate list, and add the merge candidate to the merge candidate list. In this case, the encoder may add new merge candidates until the number of merge candidates constituting the merge candidate list is five.
  • new merge candidates derived based on the remaining merge candidates except for merge candidate F include the combined bi-predictive candidate (CB), non-scaled bi-predictive candidate (NB), and / or zero. (zero motion candidate) and the like.
  • CB bi-predictive candidate
  • NB non-scaled bi-predictive candidate
  • zero motion candidate zero motion candidate
  • new merge candidates may be inserted or added to the merge candidate list in the order of CB, NB, and Zero, for example.
  • the present invention is not limited thereto, and the newly derived merge candidate may be part of CB, NB, and Zero, and additional merge candidates may be newly derived in addition to the CB, NB, and Zero.
  • the encoder may consider and / or process a block whose prediction mode is intra mode among merge candidate blocks A, B, C, D and E as not available in the first embodiment.
  • a block whose prediction mode is intra mode may not be used as a merge candidate block, and motion information of the block may not be added to the merge candidate list.
  • the encoder may treat the warping mode merge candidate block among merge candidate blocks A, B, C, D, and E for the current block as valid.
  • a merge candidate corresponding to the warping mode merge candidate block may be added or inserted into the merge candidate list. Since the warping mode merge candidate block has been described above, a detailed description thereof will be omitted herein.
  • the encoder may add or insert valid merge candidates among A, B, C, D, E, and F to the merge candidate list of the current block. That is, the merge candidate list may be composed of valid merge candidates among A, B, C, D, E, and F. In this case, among the merge candidates A, B, C, D, and E, a plurality of merge candidates may exist. When there are a plurality of merge candidates that are identical to each other, the encoder may remove the remaining merge candidates except the one having the highest priority among the plurality of merge candidates that are identical to each other and may not add the merge candidate to the merge candidate list.
  • the encoder may derive and add a new merge candidate to the merge candidate list based on the merge candidates other than the warping mode merge candidate and the merge candidate F among the merge candidates already added to the merge candidate list. In this case, the encoder may add new merge candidates until the number of merge candidates constituting the merge candidate list is five.
  • new merge candidates derived from the merge candidates other than the warping mode merge candidate and the merge candidate F include a combined bi-predictive candidate (CB) and a non-scaled bi-predictive candidate. ) And / or zero (zero motion candidate).
  • CB bi-predictive candidate
  • new merge candidates may be inserted or added to the merge candidate list in the order of CB, NB, and Zero, for example.
  • the present invention is not limited thereto, and the newly derived merge candidate may be part of CB, NB, and Zero, and additional merge candidates may be newly derived in addition to the CB, NB, and Zero.
  • the encoder may derive the merge index of the current block based on the generated merge candidate list, encode the derived merge index, and transmit the encoded index to the decoder (S1030).
  • the merge index of the current block may indicate a merge candidate used for prediction of the current block among a plurality of merge candidates constituting a merge candidate list.
  • the merge index may indicate a merge candidate having motion information to be used for prediction of the current block.
  • the merge index of the current block indicates a merge candidate F
  • the merge index may indicate that pixel values of a warp block corresponding to the current block are used as prediction values of pixels of the current block. Therefore, in this case, the warp block corresponding to the current block may correspond to the prediction block of the current block. For example, since the transmission of the residual signal is omitted in the merge skip mode, a warp block corresponding to the current block may be used as a recovery block of the current block.
  • the encoder may perform entropy encoding on the derived merge index.
  • the entropy coded merge index information may be transmitted to the decoder.
  • the merge index may be transmitted through a syntax element called merge_idx.
  • FIG. 11 is a flowchart schematically illustrating an embodiment of a method for performing merge skip mode prediction of multi-view video in a decoder according to the present invention.
  • the merge candidates A, B, C, D, E and F are each merged in the same manner as the merge candidates A, B, C, D, E and F shown in the embodiment of FIG. 9. It can mean a candidate.
  • FIG. 10 an embodiment in which A, B, C, D, E, and F are all used as merge candidates is described.
  • the present invention is not limited thereto, and the embodiment of FIG. 11 is the same or similar in the case where some of A, B, C, D, E, and F are not used as merge candidates or additional merge candidates are derived. Can be applied as
  • FIG. 11 is described based on the merge skip mode, it may be applied to the merge mode in the same or similar manner.
  • the decoder may receive a merge index encoded for the current block from the encoder and perform entropy decoding on the received merge index (S1110).
  • the merge index of the current block may indicate a merge candidate used for prediction of the current block among a plurality of merge candidates constituting the merge candidate list.
  • the current block may correspond to a texture block and / or a depth block as a block to be predicted.
  • the current block may be, for example, a PU.
  • the decoder may derive a merge candidate for the current block (S1120).
  • the decoder may derive the merge candidate in the same manner as in the encoder.
  • the merge candidates derived for the current block may be merge candidates A, B, C, D, E, and F.
  • the merge candidates are merge candidates derived by considering characteristics of the multi-view video. Since specific embodiments of the merge candidate derivation method for the multi-view video have been described above, a description thereof will be omitted.
  • the decoder may generate a merge candidate list for the current block based on the derived merge candidate (S1130). In this case, the decoder may generate the merge candidate list in the same manner as in the encoder.
  • the process of generating a merge candidate list of the current block based on the merge candidate has been described by dividing into two embodiments (Example 1 and Embodiment 2).
  • the merge candidate list generation process may be applied to the decoder in the same manner. Therefore, a specific embodiment of the merge candidate list generation process will be omitted here.
  • the decoder may generate a prediction block corresponding to the current block by performing prediction on the current block based on the decoded merge index and the generated merge candidate list (S1140).
  • the decoder may select a merge candidate to be used for prediction of the current block among merge candidates constituting the merge candidate list based on the merge index.
  • the selected merge candidate may correspond to a candidate indicated by the merge index.
  • the process of performing the prediction on the current block may vary according to the process of generating the merge candidate list.
  • the process of generating a merge candidate list of the current block based on the merge candidate has been described by dividing into two embodiments (Example 1 and Embodiment 2).
  • a process of performing prediction on the current block will be described by dividing into 'the merge candidate list is generated according to the first embodiment' and 'the merge candidate list is generated according to the second embodiment'.
  • Example 1 Merge candidate list is generated according to ]
  • the merge candidate block and the warping mode merge candidate block in which the prediction mode is intra mode may be considered invalid and / or processed. Accordingly, motion information of the merge candidate block in which the prediction mode is intra mode and motion information of the warping mode merge candidate block may not be added to the merge candidate list.
  • the merge candidate indicated by the merge index may be one of merge candidates A, B, C, D, and E.
  • the decoder may determine the motion information corresponding to the merge candidate indicated by the merge index as the motion information of the current block.
  • the decoder may generate a prediction block corresponding to the current block by performing motion compensation on the current block based on the determined motion information.
  • the motion information of the current block derived from the merge candidate may include a prediction direction, a reference picture index, a motion vector, and the like.
  • the merge candidate indicated by the merge index may be merge candidate F.
  • the decoder may copy the pixel values of the warp block existing in the virtual view picture generated by the warping process and use the predicted value and / or the predictor for the pixels of the current block. That is, the decoder may generate a prediction block corresponding to the current block based on the warp block. For example, the decoder may use the warp block as a prediction block corresponding to the current block. Since a specific embodiment of the warp block derivation process has been described above, a detailed description thereof will be omitted herein.
  • a merge candidate block whose prediction mode is intra mode may be considered invalid and / or processed. Therefore, motion information of the merge candidate block in which the prediction mode is the intra mode may not be added to the merge candidate list.
  • the warping mode merge candidate block may be treated as valid. In this case, a merge candidate corresponding to the warping mode merge candidate block may be added or inserted into the merge candidate list.
  • the merge candidate indicated by the merge index may be one of merge candidates A, B, C, D, and E, and the merge candidate indicated by the merge index may not correspond to a warping mode merge candidate.
  • the decoder may determine the motion information corresponding to the merge candidate indicated by the merge index as the motion information of the current block.
  • the decoder may generate a prediction block corresponding to the current block by performing motion compensation on the current block based on the determined motion information.
  • the motion information of the current block derived from the merge candidate may include a prediction direction, a reference picture index, a motion vector, and the like.
  • the merge candidate indicated by the merge index may be one of merge candidates A, B, C, D, and E, and the merge candidate indicated by the merge index may correspond to a warping mode merge candidate.
  • the decoder may perform prediction for the current block based on the merge candidate F instead of the merge candidate indicated by the merge index. That is, the decoder may determine the merge candidate F as the merge candidate to be used for prediction of the current block. In this case, as an example, the decoder may use a method of changing a value assigned to the merge index to a value corresponding to the merge candidate F. FIG. That is, when the merge candidate indicated by the merge index is a warping mode merge candidate, an index value corresponding to the merge candidate F may be reassigned to the merge index.
  • the decoder When performing prediction for the current block based on the merge candidate F, the decoder copies the pixel values of the warp block present in the virtual view picture generated by the warping process, and / or predicts the values of the pixels in the current block and / or Or you can use it as a predictor.
  • the merge candidate indicated by the merge index may be merge candidate F.
  • the decoder may copy the pixel values of the warp block existing in the virtual view picture generated by the warping process and use the predicted value and / or the predictor for the pixels of the current block. That is, the decoder may generate a prediction block corresponding to the current block based on the warp block. For example, the decoder may use the warp block as a prediction block corresponding to the current block. Since a specific embodiment of the warp block derivation process has been described above, a detailed description thereof will be omitted.
  • the decoder may generate a reconstruction block corresponding to the current block based on the generated prediction block. For example, when the merge skip mode is applied, transmission of the residual signal may be omitted as described above. Therefore, in the merge skip mode, the generated prediction block may be used as a reconstruction block.
  • the residual signal may be encoded and transmitted to the decoder. In this case, the decoder may generate a residual block by decoding the encoded residual signal, and generate a reconstructed block by adding the residual block and the prediction block.
  • the encoder and the decoder may perform encoding / decoding on the current picture (for example, a virtual view texture picture or a virtual view depth map).
  • a virtual view picture eg, a virtual view texture picture or a virtual view depth map
  • the pixel value of the warp block existing at the same position spatially as the current block in the virtual view picture may be used as a prediction value and / or a predictor for pixels of the current block.
  • the virtual view picture generated by the warping process and the warp block corresponding to the current block may be used for merge skip mode prediction and / or merge mode prediction as in the above-described embodiments, but independent inter-view (inter- view) may be used for prediction.
  • a skip mode may be applied as a method of inter-view prediction.
  • transmission of the residual signal may be omitted in the skip mode, and a prediction block generated for the current block may be used as a reconstruction block corresponding to the current block.
  • pixel values of the warp block may be used as reconstruction values for pixels of the current block.
  • a skip mode applied based on a warp block in the virtual view picture generated by the warping process is referred to as a 'virtual view skip mode'.
  • the virtual view skip mode may correspond to a separate prediction mode different from the merge skip mode described above.
  • the decoder may perform a predetermined operation to determine whether to apply the virtual view skip mode to the prediction target block.
  • a large amount of calculation is generated to perform the predetermined operation, and the complexity in the decoder can be increased.
  • the decoder performs a specific operation to determine whether to apply the virtual view skip mode, the degree of freedom of the encoder for determining whether to apply the virtual view skip mode is low, and thus it may be difficult to expect the performance improvement through the implementation of optimization. .
  • the image information transmitting method and the additional information for transmitting the virtual information skip mode on a block basis An image decoding method based on information may be provided.
  • FIG. 12 is a flowchart schematically illustrating an embodiment of a method for transmitting information about a virtual view skip mode in an encoder according to the present invention.
  • the encoder may determine whether to apply a virtual view skip mode for a current block (S1210).
  • whether to apply the virtual view skip mode may be determined by a predetermined unit in the encoder, for example, the prediction unit.
  • the current block may be a depth block belonging to a depth map or may be a texture block belonging to a texture picture.
  • the depth block may have a high probability of selecting a virtual view skip mode based on a warping scheme.
  • the encoder may perform entropy encoding on the virtual view skip flag of the current block and transmit the encoded virtual view skip flag to the decoder (S1220).
  • the entropy encoding may be performed in a predetermined unit, for example, an entropy encoder.
  • the virtual view skip flag may correspond to a flag indicating whether the virtual view skip mode is applied to the current block.
  • the virtual view skip flag may be transmitted to the decoder through a syntax element called vvskip_flag.
  • a value of 1 may be assigned to vvskip_flag when the virtual view skip mode is applied to the current block, and a value of 0 may be assigned to vvskip_flag when the virtual view skip mode is not applied to the current block.
  • the encoder may minimize the amount of additional information transmitted to the decoder in consideration of the characteristics of the multi-view video and / or the depth video.
  • the virtual view skip mode may be determined in units of CUs. That is, the current block for determining whether to apply the virtual view skip mode may be a CU.
  • the virtual view skip flag may be defined in a coding unit syntax. Therefore, the virtual view skip flag may be encoded and transmitted to each decoder for each CU.
  • the virtual view skip flag may be located at the highest level among a plurality of syntax elements related to encoding / decoding of the current block.
  • the plurality of syntax elements may each be a syntax element defined within a coding unit syntax and / or a lower syntax of the coding unit syntax.
  • the plurality of syntax elements may include a plurality of syntax elements indicating a prediction mode that the current block may have.
  • the fact that the virtual view skip flag is located above means that the syntax of the virtual view skip flag in the decoder is related to other syntax elements related to encoding / decoding of the current block (eg, other syntax elements related to the prediction mode of the current block). It may mean that it is determined prior to).
  • the encoder is configured with other syntax elements related to encoding / decoding of the current block (e.g., other syntax elements related to the prediction mode of the current block). May not transmit.
  • the encoder may be configured to include other syntax elements related to encoding / decoding of the current block (eg, other related to the prediction mode of the current block). Syntax element) may be transmitted to the decoder.
  • the virtual view skip mode is highly selected, the amount of bits added to the bitstream can be minimized and the amount of computation in the decoder can be minimized.
  • FIG. 13 is a flowchart schematically illustrating an embodiment of a method of performing decoding based on information about a virtual view skip mode in a decoder according to the present invention.
  • the decoder may receive an encoded virtual view skip flag and perform entropy decoding on the received virtual view skip flag (S1310).
  • entropy decoding may be performed in a predetermined unit in the decoder, for example, an entropy decoding unit.
  • the virtual view skip flag may correspond to a flag indicating whether the virtual view skip mode is applied to the current block.
  • the virtual view skip flag may be transmitted to the decoder through a syntax element called vvskip_flag.
  • the decoder may determine whether the prediction mode of the current block is the virtual view skip mode based on the decoded virtual view skip flag (S1320). That is, the decoder may determine whether the virtual view skip mode is applied to the current block based on the decoded virtual view skip flag.
  • the current block may be a depth block belonging to a depth map or may be a texture block belonging to a texture picture.
  • a virtual view skip mode based on a warping scheme may be highly selected. Accordingly, the decoder preferentially determines the virtual view skip flag over other syntax elements related to the decoding of the current block (eg, other syntax elements related to the prediction mode of the current block), so that the amount of bits added to the bitstream and The amount of computation in the decoder can be minimized.
  • other syntax elements related to the decoding of the current block eg, other syntax elements related to the prediction mode of the current block
  • the virtual view skip mode may be determined in units of CUs. That is, the current block for determining whether to apply the virtual view skip mode may be a CU.
  • the encoder may encode and transmit the virtual view skip flag for each CU, and the decoder may determine whether the virtual view skip mode is applied to each CU.
  • the virtual view skip flag may be defined within a coding unit syntax.
  • the virtual view skip flag included in the coding unit syntax may be defined by a syntax element such as included in Table 1 below. Names of syntax elements and variables belonging to the coding unit syntax of Table 1 are arbitrary, and syntax elements and variables having the same or similar functions will be included in the scope of the present invention regardless of the names.
  • 'vvskip_flag' may indicate a virtual view skip flag.
  • 'depthmap' may correspond to a variable indicating whether a slice to which the current CU belongs is a slice included in the depth map.
  • 'otherview_avail' may correspond to a variable indicating whether a decoded picture belonging to a view different from the current CU (here, the picture may be a picture having the same POC value as the current picture to which the current CU belongs) exists.
  • 'depthmap' and 'otherview_avail' may be variables represented by 1 bit, respectively.
  • the decoder indicates that a current CU is a CU belonging to a depth map and a decoded picture belonging to a different view from the current CU, where the picture may be a picture having the same POC value as the current picture to which the current CU belongs. If is present, it may be determined whether the virtual view skip mode is applied to the current block based on the virtual view skip flag. That is, in the embodiment of Table 1, whether to decode the virtual view skip flag may be determined based on the values assigned to the variables 'depthmap' and 'otherview_avail'.
  • the virtual view skip mode may be applied to a CU belonging to a texture picture as well as a CU belonging to a depth map. That is, even when the current CU belongs to a texture picture, the decoder can decode a virtual view skip flag for the current CU. In this case, the decoder may determine whether to apply the virtual view skip mode to the current block based on the decoded virtual view skip flag.
  • the virtual view skip flag includes a plurality of syntax elements related to decoding of the current CU (eg, a plurality of syntax elements indicating a prediction mode that a current CU and / or a PU belonging to the current CU may have). It may be located at the top of the list. As described above, the fact that the virtual view skip flag is positioned above may mean that the virtual view skip flag is determined in preference to other syntax elements related to decoding of the current CU. Therefore, when the virtual view skip flag indicates that virtual view skip mode is applied to the current CU, other syntax elements related to decryption of the current CU (eg, the current CU and / or a PU belonging to the current CU) may be used. Other syntax elements for the prediction mode) may not be sent to the decoder.
  • a plurality of syntax elements related to decoding of the current CU eg, a plurality of syntax elements indicating a prediction mode that a current CU and / or a PU belonging to the current CU may have.
  • Coding unit syntax including the virtual view skip flag is not limited to the above-described embodiment.
  • syntax elements representing other information except syntax elements regarding the virtual view skip mode may be applied differently as necessary.
  • the coding unit syntax including the virtual view skip flag may be defined as in the embodiment of Table 2 below.
  • the decoder may perform decoding on the current block in the virtual view skip mode (S1330).
  • the decoder can use the pixel values of the warp block that exist at the same spatial position as the current block within the virtual view picture generated by warping as predictors and / or predictors for the pixels of the current block. have.
  • pixel values of the warp block may be used as reconstruction values for pixels of the current block. That is, the reconstruction block corresponding to the current block may be generated based on the warp block.
  • the decoder when the prediction mode of the current block is not the virtual view skip mode, the decoder performs decoding on the current block in a prediction mode other than the virtual view skip mode among a plurality of prediction modes that the current block may have. It may be performed (S1340).
  • the prediction mode that the current block may have may include an intra mode, an inter mode (eg, a merge skip mode, a merge mode, and an MVP mode), an inter-view mode, and the like.
  • the decoder may receive and decode other syntax elements related to encoding / decoding of the current block. In this case, the decoder may perform decoding on the current block in a prediction mode other than the virtual view skip mode based on the decoded information.
  • the amount of bits added to the bitstream may be minimized and the amount of calculation in the decoder may be minimized in the embodiment of FIG. 13.
  • the encoding / decoding efficiency for the 3D video may be improved, and the compression performance may be improved.

Abstract

본 발명에 따른 멀티 뷰 비디오 복호화 방법은, 머지 인덱스를 수신하여 복호화하는 단계, 제1 뷰의 제1 깊이 맵에 속한 제1 깊이 블록에 대해, 각각 하나의 블록에 대응되는 복수의 머지 후보를 도출하는 단계, 복수의 머지 후보를 기반으로, 제1 깊이 블록의 머지 후보 리스트를 생성하는 단계, 머지 후보 리스트에서 복호화된 머지 인덱스가 지시하는 머지 후보를 기반으로, 제1 깊이 블록에 대응되는 예측 블록을 생성하는 단계 및 예측 블록을 기반으로 제1 깊이 블록에 대응되는 복원 블록을 생성하는 단계를 포함한다.

Description

영상 부호화/복호화 방법 및 그 장치
본 발명은 영상 처리에 관한 것으로서, 보다 상세하게는 3D 영상 부호화/복호화 방법 및 그 장치에 관한 것이다.
최근 고해상도, 고품질의 영상에 대한 요구가 다양한 응용 분야에서 증가하고 있다. 하지만, 영상이 고해상도를 가지고 고품질이 될수록 해당 영상에 관한 정보량도 함께 증가한다.
따라서, 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 정보를 전송하거나 기존의 저장 매체를 이용해 영상 정보를 저장하는 경우에는, 정보의 전송 비용과 저장 비용이 증가하게 된다. 고해상도, 고품질 영상의 정보를 효과적으로 전송하거나 저장하고 재생하기 위해 고효율의 영상 압축 기술을 이용할 수 있다.
한편, 고해상도/대용량의 영상을 처리할 수 있게 됨에 따라서, 3D 비디오를 이용한 디지털 방송 서비스가 차세대 방송 서비스의 하나로 주목 받고 있다. 3D 비디오는 복수의 시점(view)의 채널을 이용하여 현장감과 몰입감을 제공할 수 있다.
싱글 뷰 비디오(single view viedo)와 달리 멀티 뷰(multi view)를 기반으로 한 3D 비디오에서는 동일한 POC(Picture Order Count)에서 서로 다른 뷰를 갖는 복수의 텍스쳐(texture) 영상이 존재할 수 있으며, 복수의 텍스쳐 영상 각각에 대응되는 깊이 맵(depth map)이 존재할 수 있다. 멀티 뷰(multi view)를 기반으로 한 3D 비디오에서는 복수의 뷰에서 촬영된 텍스쳐 비디오, 복수의 텍스쳐 비디오 각각에 대응되는 깊이 비디오 및 카메라 파라미터가 함께 부호화되거나 및/또는 복호화될 수 있다.
깊이 맵은 그레이 레벨(grey level)로 표현될 수 있으며, 텍스쳐 영상의 픽셀 해상도와 동일한 해상도를 가질 수 있다. 깊이 맵에 속한 각각의 픽셀은 깊이 값을 가질 수 있으며, 텍스쳐 영상의 픽셀과 1대 1로 대응될 수 있다. 여기서, 깊이 값은 카메라가 촬영한 장면의 해당 픽셀에 대응되는 지점에서 카메라까지의 거리를 나타낼 수 있다. 카메라 파라미터는 3D 비디오의 부호화/복호화 과정에서 필요한 가상 뷰 영상(virtual view image)을 생성하기 위해 사용될 수 있다.
싱글 뷰 비디오와 달리 멀티 뷰를 기반으로 한 3D 비디오는 동일한 POC의 뷰들 사이에 높은 상관도(correlation)를 가질 수 있다. 멀티 뷰 영상은 서로 다른 뷰를 갖는 복수의 카메라를 이용하여 동일한 장면을 동시에 촬영함으로써 획득되므로, 시차와 약간의 조명 차이를 제외하면 매우 유사한 정보를 가지므로 서로 다른 뷰 간의 상관도가 높을 수 있다.
따라서, 멀티 뷰 비디오 부호화/복호화 과정에서는 서로 다른 뷰 사이의 상관도가 고려될 수 있다. 일례로, 현재 뷰의 부호화/복호화 대상 블록은 다른 뷰의 블록을 참조하여 예측되거나 부호화/복호화될 수 있다. 이 경우에, 서로 다른 뷰 간의 관계가 산출되어 예측에 이용될 수 있다.
본 발명의 기술적 과제는 영상 부호화/복호화 효율을 향상시킬 수 있는 멀티 뷰 비디오 부호화 방법 및 장치를 제공함에 있다.
본 발명의 다른 기술적 과제는 영상 부호화/복호화 효율을 향상시킬 수 있는 머티 뷰 비디오 복호화 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 기술적 과제는 영상 부호화/복호화 효율을 향상시킬 수 있는 영상 정보 전송 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 기술적 과제는 영상 부호화/복호화 효율을 향상시킬 수 있는 예측 방법 및 장치를 제공함에 있다.
본 발명의 일 실시 형태는 멀티 뷰 비디오 복호화 방법이다. 상기 방법은, 머지 인덱스(merge index)를 수신하여 복호화하는 단계, 제1 뷰(view)의 제1 깊이 맵에 속한 제1 깊이 블록에 대해, 각각 하나의 블록에 대응되는 복수의 머지 후보를 도출하는 단계, 상기 복수의 머지 후보를 기반으로, 상기 제1 깊이 블록의 머지 후보 리스트(merge candidate list)를 생성하는 단계, 상기 머지 후보 리스트에서 상기 복호화된 머지 인덱스가 지시하는 머지 후보를 기반으로, 상기 제1 깊이 블록에 대응되는 예측 블록을 생성하는 단계 및 상기 예측 블록을 기반으로 상기 제1 깊이 블록에 대응되는 복원 블록을 생성하는 단계를 포함할 수 있다. 이 때, 상기 복수의 머지 후보 중에서 적어도 하나는, 상기 제1 깊이 맵과 동일한 POC(Picture Order Count) 값을 갖는 제2 뷰의 제2 깊이 맵을 기반으로 도출될 수 있다.
상기 제1 깊이 블록의 예측 모드는 상기 제1 깊이 블록에 대한 잔차 신호의 전송이 생략되는 머지 스킵 모드(merge skip mode)일 수 있고, 상기 복원 블록 생성 단계에서, 상기 복원 블록 내의 복원 픽셀의 픽셀 값은, 상기 예측 블록 내의 예측 픽셀들 중에서 상기 복원 픽셀에 대응되는 예측 픽셀의 픽셀 값으로 결정될 수 있다.
상기 복수의 머지 후보는, 상기 제1 뷰에 대응되는 제1 가상 뷰 픽쳐(virtual view picture) 내에서 상기 제1 깊이 블록과 공간적으로 동일한 위치에 존재하는 제1 워프 블록(warp block)을 기반으로 도출되는 가상 뷰 머지 후보를 포함할 수 있고, 상기 제1 가상 뷰 픽쳐는 상기 제2 뷰에 속한 상기 제2 깊이 맵에 대해 워핑(warping)을 수행함으로써 생성된 픽쳐일 수 있다.
상기 머지 인덱스가 지시하는 머지 후보가 상기 가상 뷰 머지 후보인 경우, 상기 예측 블록 생성 단계에서, 상기 예측 블록 내의 예측 픽셀의 픽셀 값은, 상기 제1 워프 블록 내의 워프 픽셀들 중에서 상기 예측 픽셀에 대응되는 워프 픽셀의 픽셀 값으로 결정될 수 있다.
상기 머지 후보 리스트 생성 단계에서는, 상기 복수의 머지 후보 중에서 워핑 모드 머지 후보를 제외한 나머지 머지 후보를 상기 머지 후보 리스트에 할당할 수 있고, 상기 머지 후보 리스트에 할당된 머지 후보의 개수가 소정의 개수보다 작은 경우, 상기 머지 후보 리스트에 할당된 머지 후보 중에서 상기 가상 뷰 머지 후보를 제외한 나머지 머지 후보를 기반으로, 추가 머지 후보를 생성하여 상기 머지 후보 리스트에 할당할 수 있다. 여기서, 상기 워핑 모드 머지 후보는, 머지 스킵 모드로 복호화가 수행된 워핑 모드 머지 후보 블록을 기반으로 도출된 머지 후보로서, 상기 복수의 머지 후보 중에서 상기 가상 뷰 머지 후보를 제외한 나머지 머지 후보 중 적어도 하나를 포함할 수 있고, 상기 워핑 모드 머지 후보 블록은, 제2 가상 뷰 픽쳐 내에서 상기 워핑 모드 머지 후보 블록과 공간적으로 동일한 위치에 존재하는 제2 워프 블록을 상기 워핑 모드 머지 후보 블록에 대응되는 예측 블록으로 이용함으로써 복호화가 수행된 블록일 수 있으며, 상기 제2 가상 뷰 픽쳐는, 상기 워핑 모드 머지 후보 블록이 포함된 픽쳐와 다른 뷰에 속하고 동일한 POC 값을 갖는 픽쳐에 대해 워핑을 수행함으로써 생성된 픽쳐일 수 있다.
상기 머지 인덱스가 지시하는 머지 후보가 상기 가상 뷰 머지 후보가 아닌 경우, 상기 예측 블록 생성 단계는, 상기 머지 인덱스가 지시하는 머지 후보에 대응되는 움직임 정보(motion information)를 상기 제1 깊이 블록의 움직임 정보로 결정하는 단계 및 상기 결정된 움직임 정보를 기반으로 상기 제1 깊이 블록에 대해 움직임 보상(motion compensation)을 수행함으로써 상기 제1 깊이 블록에 대응되는 예측 블록을 생성하는 단계를 더 포함할 수 있다.
상기 머지 후보 리스트 생성 단계에서는, 상기 복수의 머지 후보를 상기 머지 후보 리스트에 할당하고, 상기 머지 후보 리스트에 할당된 머지 후보의 개수가 소정의 개수보다 작은 경우, 상기 머지 후보 리스트에 할당된 머지 후보 중에서 워핑 모드 머지 후보 및 상기 가상 뷰 머지 후보를 제외한 나머지 머지 후보를 기반으로, 추가 머지 후보를 생성하여 상기 머지 후보 리스트에 할당할 수 있다. 여기서, 상기 워핑 모드 머지 후보는, 머지 스킵 모드로 복호화가 수행된 워핑 모드 머지 후보 블록을 기반으로 도출된 머지 후보로서, 상기 복수의 머지 후보 중에서 상기 가상 뷰 머지 후보를 제외한 나머지 머지 후보 중 적어도 하나를 포함할 수 있고, 상기 워핑 모드 머지 후보 블록은, 제2 가상 뷰 픽쳐 내에서 상기 워핑 모드 머지 후보 블록과 공간적으로 동일한 위치에 존재하는 제2 워프 블록을 상기 워핑 모드 머지 후보 블록에 대응되는 예측 블록으로 이용함으로써 복호화가 수행된 블록일 수 있으며, 상기 제2 가상 뷰 픽쳐는, 상기 워핑 모드 머지 후보 블록이 포함된 픽쳐와 다른 뷰에 속하고 동일한 POC 값을 갖는 픽쳐에 대해 워핑을 수행함으로써 생성된 픽쳐일 수 있다.
상기 머지 인덱스가 지시하는 머지 후보가 상기 가상 뷰 머지 후보가 아니고 상기 워핑 모드 머지 후보에 해당되지 않는 경우, 상기 예측 블록 생성 단계는, 상기 머지 인덱스가 지시하는 머지 후보에 대응되는 움직임 정보(motion information)를 상기 제1 깊이 블록의 움직임 정보로 결정하는 단계 및 상기 결정된 움직임 정보를 기반으로 상기 제1 깊이 블록에 대해 움직임 보상(motion compensation)을 수행함으로써 상기 제1 깊이 블록에 대응되는 예측 블록을 생성하는 단계를 더 포함할 수 있다.
상기 머지 인덱스가 지시하는 머지 후보가 상기 가상 뷰 머지 후보가 아니고 상기 워핑 모드 머지 후보에 해당되는 경우, 상기 예측 블록 생성 단계에서, 상기 예측 블록 내의 예측 픽셀의 픽셀 값은, 상기 제1 워프 블록 내의 워프 픽셀들 중에서 상기 예측 픽셀에 대응되는 워프 픽셀의 픽셀 값으로 결정될 수 있다.
상기 복수의 머지 후보는, 상기 제1 깊이 블록의 좌측에 인접한 블록들 중에서 가장 하단에 위치한 블록의 움직임 정보 및 상기 제1 깊이 블록의 상단에 인접한 블록들 중에서 가상 우측에 위치한 블록의 움직임 정보를 포함할 수 있다.
상기 복수의 머지 후보는, 상기 제1 깊이 블록이 포함된 픽쳐와 동일한 뷰에 속하고 다른 POC 값을 갖는 참조 픽쳐 내에서, 동일 위치 블록에 대한 상대적인 위치로서 결정되는 콜 블록(Col block)의 움직임 정보를 포함할 수 있다. 여기서, 상기 동일 위치 블록은 상기 참조 픽쳐 내에서 상기 제1 깊이 블록과 공간적으로 동일한 위치에 존재하는 블록일 수 있다.
상기 복수의 머지 후보는, 상기 제2 깊이 맵 내에서, GDV(Global Disparity Vector)에 의해 지시되는 블록의 움직임 정보를 포함할 수 있다. 여기서, 상기 GDV는 상기 제1 뷰 및 상기 제2 뷰 간의 전체적인 변이를 나타내는 벡터일 수 있다.
상기 복수의 머지 후보는, 상기 제1 깊이 맵에 대응되는 텍스쳐 픽쳐 내에서, 상기 제1 깊이 블록 내의 가장 좌측 상단 픽셀과 공간적으로 동일한 위치에 존재하는 픽셀을 커버하는 블록의 움직임 정보를 포함할 수 있다. 여기서, 상기 텍스쳐 픽쳐는 상기 제1 깊이 맵과 동일한 뷰에 속한 픽쳐로서 상기 제1 깊이 맵과 동일한 POC 값을 갖는 픽쳐일 수 있다.
본 발명의 다른 실시 형태는 멀티 뷰 비디오 복호화 방법이다. 상기 방법은, 현재 뷰 내의 복호화 대상 픽쳐에 속한 복호화 대상 블록에 대해 가상 뷰 스킵(virtual view skip) 모드가 적용되는지 여부를 지시하는 가상 뷰 스킵 플래그(virtual view skip flag) 정보를 수신하는 단계 및 상기 가상 뷰 스킵 플래그 정보에 기반하여, 상기 복호화 대상 블록에 대응되는 복원 블록을 생성하는 단계를 포함할 수 있다. 여기서, 상기 가상 뷰 스킵 모드는, 상기 현재 뷰에 대응되는 가상 뷰 픽쳐 내에서 상기 복호화 대상 블록과 공간적으로 동일한 위치에 존재하는 워프 블록(warp block)을 기반으로 상기 복호화 대상 블록에 대한 예측이 수행되고, 상기 복호화 대상 블록에 대한 잔차 신호의 전송이 생략되는 예측 모드일 수 있고, 상기 가상 뷰 픽쳐는 참조 뷰 내의 참조 픽쳐에 대해 워핑을 수행함으로써 생성된 픽쳐일 수 있으며, 상기 현재 픽쳐와 상기 참조 픽쳐는 서로 동일한 POC 값을 가질 수 있다.
상기 가상 뷰 스킵 모드의 적용 여부가 결정되는 단위는 CU(Coding Unit)일 수 있고, 상기 가상 뷰 스킵 플래그 정보는 코딩 유닛 신택스(coding unit syntax)에서 정의될 수 있다.
상기 가상 뷰 스킵 플래그 정보는 상기 코딩 유닛 신택스에서 정의된 복호화에 관련된 다른 신택스 요소들(syntax elements)보다 우선적으로 판단될 수 있다.
상기 가상 뷰 스킵 플래그 정보가 상기 복호화 대상 블록에 대해 가상 뷰 스킵 모드가 적용됨을 지시하는 경우, 상기 복원 블록 생성 단계에서, 상기 복원 블록 내의 복원 픽셀의 픽셀 값은, 상기 워프 블록 내의 워프 픽셀들 중에서 상기 복원 픽셀에 대응되는 워프 픽셀의 픽셀 값으로 결정될 수 있다.
상기 가상 뷰 스킵 플래그 정보가 상기 복호화 대상 블록에 대해 가상 뷰 스킵 모드가 적용되지 않음을 지시하는 경우, 상기 복원 블록 생성 단계에서는, 상기 복호화 대상 블록이 가질 수 있는 복수의 예측 모드 중에서 상기 가상 뷰 스킵 모드가 아닌 다른 예측 모드를 기반으로 상기 복원 블록을 생성할 수 있다.
본 발명에 따른 멀티 뷰 비디오 부호화 방법에 의하면, 영상 부호화/복호화 효율이 향상될 수 있다.
본 발명에 따른 멀티 뷰 비디오 복호화 방법에 의하면, 영상 부호화/복호화 효율이 향상될 수 있다.
본 발명에 따른 영상 정보 전송 방법에 의하면, 영상 부호화/복호화 효율이 향상될 수 있다.
본 발명에 따른 예측 방법에 의하면, 영상 부호화/복호화 효율이 향상될 수 있다.
도 1은 3차원 영상을 처리하기 위한 영상 정보의 일 실시예를 개략적으로 설명하는 도면이다.
도 2는 본 발명의 일 실시예에 따른 영상 부호화 장치를 개략적으로 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 영상 복호화 장치를 개략적으로 나타낸 블록도이다.
도 4는 싱글 뷰 비디오에 대한 머지 스킵 모드에서 머지 후보 리스트 생성에 사용되는 머지 후보들의 실시예를 개략적으로 나타내는 도면이다.
도 5는 멀티 뷰 비디오에 대한 머지 스킵 모드에서 공간적 머지 후보를 도출하는 방법의 실시예를 개략적으로 나타내는 도면이다.
도 6은 멀티 뷰 비디오에 대한 머지 스킵 모드에서 GDV를 기반으로 머지 후보를 도출하는 방법의 실시예를 개략적으로 나타내는 도면이다.
도 7은 가상 뷰 워핑 방식을 기반으로 하는 예측 방법의 일 실시예를 개략적으로 나타내는 도면이다.
도 8은 워핑을 통한 가상 뷰 픽쳐 생성 과정의 실시예를 개략적으로 나타내는 도면이다.
도 9는 멀티 뷰 비디오에 대한 머지 스킵 모드에서 머지 후보 리스트 생성에 사용되는 머지 후보들의 실시예를 개략적으로 나타내는 도면이다.
도 10은 본 발명에 따라, 부호화기에서 멀티 뷰 비디오의 머지 스킵에 관한 정보를 전송하는 방법의 일 실시예를 개략적으로 나타내는 흐름도이다.
도 11은 본 발명에 따라, 복호화기에서 멀티 뷰 비디오의 머지 스킵 모드 예측을 수행하는 방법의 일 실시예를 개략적으로 나타내는 흐름도이다.
도 12는 본 발명에 따라 부호화기에서 가상 뷰 스킵 모드에 관한 정보를 전송하는 방법의 일 실시예를 개략적으로 나타내는 흐름도이다.
도 13은 본 발명에 따라 복호화기에서 가상 뷰 스킵 모드에 관한 정보를 기반으로 복호화를 수행하는 방법의 일 실시예를 개략적으로 나타내는 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니다. 본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
한편, 본 발명에서 설명되는 도면상의 각 구성들은 영상 부호화/복호화 장치에서 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리 범위에 포함된다.

3차원 입체 영상을 디스플레이 장치에 재현하기 위한 부호화/복호화 과정에 있어서, 부호화 장치에 입력되는 영상은 텍스쳐 영상(texture image)과 깊이 맵(depth map)일 수 있다. 깊이 맵은 뷰 포인트(view point)로부터 영상 내의 물체의 표면(surface)까지의 거리를 나타낼 수 있다. 여기서, 뷰 포인트는 일례로 해당 영상을 촬영하는 카메라일 수 있다.
텍스쳐 영상은 3차원 영상을 구성하는 영상으로서 깊이 정보 이외의 정보(예를 들어, 색상, 명암 등)를 포함하는 영상을 의미할 수 있다. 이 때, 텍스쳐 영상은 멀티 뷰(multi-view)의 영상들로 구성될 수도 있다.
3차원 영상을 처리하기 위해, 후술되는 부호화/복호화 과정에서는 깊이 맵(깊이 영상)과 텍스쳐 영상이 각각 처리될 수 있으며, 텍스쳐 영상 및 깊이 맵은 각 뷰(view) 별로 처리될 수 있다. 이 때, 깊이 맵의 처리를 위해 텍스쳐 영상이 참조될 수 있고, 텍스쳐 영상의 처리를 위해 깊이 맵이 참조될 수도 있다. 또한, 텍스쳐 영상 및 깊이 맵은 다른 뷰의 영상을 참조하여 처리될 수도 있다.
이와 같은 멀티 뷰 비디오의 부호화/복호화 방식은 싱글 뷰 비디오의 부호화 방식을 확장하는 형태로 구성될 수 있다.

도 1은 3차원 영상을 처리하기 위한 영상 정보의 일 실시예를 개략적으로 설명하는 도면이다.
3차원 영상을 처리하기 위해서는 상술한 바와 같이, 복수의 뷰(view)의 영상이 처리될 수 있다. 도 1에서는 설명의 편의를 위해 두 개의 뷰를 이용하는 영상 처리를 예로서 설명한다.
도 1을 참조하면, 멀티 뷰 텍스쳐 비디오(multi-view texture video)는 뷰0(view 0)의 텍스쳐 비디오 VT0 및 뷰1(view1)의 텍스쳐 비디오 VT1으로 구성될 수 있다. 또한, 멀티 뷰 깊이 비디오(multi-view depth video)는 텍스쳐 비디오 VT0에 대응되는 뷰0의 깊이 맵 VD0, 및 텍스쳐 비디오 VT1에 대응되는 뷰1의 깊이 맵 VD1으로 구성될 수 있다. 여기서, 각각의 뷰는 공간적 위치를 나타낼 수도 있다.
즉, 3차원 영상에서는 동일한 POC(Picture Order Count)에서 뷰0의 텍스쳐 픽쳐 VT0 및 뷰1의 텍스쳐 픽쳐 VT1가 존재할 수 있다. 또한, 동일한 POC에서 텍스쳐 픽쳐 VT0에 대응되는 뷰0의 깊이 맵 VD0 및 텍스쳐 픽쳐 VT1에 대응되는 뷰1의 깊이 맵 VD1이 존재할 수 있다. 여기서, POC는 영상의 출력 순서를 나타내며, POC가 동일한 영상은 출력되는 순서가 동일하다고 할 수 있다. 도 1의 실시예에서는 설명의 편의상 t의 POC 값을 갖는 텍스쳐 픽쳐 및 깊이 맵 그리고 t-1의 POC 값을 갖는 텍스쳐 픽쳐 및 깊이 맵이 도시된다.
일 실시예로, 도 1의 실시예에서 t의 POC 값을 갖는 깊이 맵 VD1에 속한 블록 110이, 부호화/복호화 대상 블록이라 가정한다. 이 경우, 부호화/복호화 대상 블록(110)은 예측, 부호화 및/또는 복호화를 수행함에 있어, 다른 뷰(예컨대, 뷰0)의 블록을 참조할 수 있다. 또한, 부호화/복호화 대상 블록(110)은 현재 뷰(예컨대, 뷰1)의 다른 깊이 맵에서 부호화/복호화 대상 블록(110)에 대응하는 콜 블록(Col block, 예컨대, 블록 120)을 참조할 수도 있다. 그리고, 부호화/복호화 대상 블록(110)은 현재 깊이 맵에서 부호화/복호화 대상 블록(110)에 인접하여 위치한 블록을 참조할 수도 있다.
텍스쳐 영상 및/또는 깊이 맵에 대한 예측, 부호화 및/또는 복호화 과정의 구체적인 실시예들은 후술하기로 한다.

도 2는 본 발명의 일 실시예에 따른 영상 부호화 장치를 개략적으로 도시한 블록도이다. 도 2을 참조하면, 영상 부호화 장치(200)는 픽쳐 분할부(205), 예측부(210), 변환부(215), 양자화부(220), 재정렬부(225), 엔트로피 부호화부(230), 역양자화부(235), 역변환부(240), 필터부(245) 및 메모리(250)를 포함할 수 있다.
픽쳐 분할부(205)는 입력된 픽쳐를 적어도 하나의 처리 단위로 분할할 수 있다. 상기 입력된 픽쳐는 텍스쳐 픽쳐이거나 깊이 맵일 수 있다. 이때, 처리 단위로서의 블록은 예측 유닛(Prediction Unit: PU)일 수도 있고, 변환 유닛(Transform Unit: TU)일 수도 있으며, 부호화 유닛(Coding Unit: CU)일 수도 있다. 이하, 후술되는 실시예들은 부호화/복호화 대상 픽쳐(또는 현재 픽쳐)가 분할됨으로써 생성된 처리 단위를 기준으로 서술되며, 유닛은 경우에 따라 블록으로 불릴 수도 있다. 또한 이하, 텍스쳐 픽쳐의 분할에 의해 획득된 블록은 텍스쳐 블록, 깊이 맵의 분할에 의해 획득된 블록은 깊이 블록이라 한다.
예측부(210)는 픽쳐 분할부(205)에서의 픽쳐의 처리 단위에 대하여 예측을 수행하여 예측 블록을 생성할 수 있다. 예측부(210)에서 픽쳐의 처리 단위는 부호화 유닛일 수도 있고, 변환 유닛일 수도 있고, 예측 유닛일 수도 있다. 또한, 예측부(210)는 해당 처리 단위에 대하여 실시되는 예측이 인터 예측인지 인트라 예측인지를 결정하고, 각 예측 방법의 구체적인 내용(예컨대, 예측 모드 등)를 정할 수 있다.
예측부(210)는 인터 예측을 통해서 현재 픽쳐의 이전 픽쳐 및/또는 이후 픽쳐 중 적어도 한 픽쳐의 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다. 또한, 예측부(210)는 인트라 예측을 통해서 현재 픽쳐 내의 픽셀 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다. 그리고 예측부(210)는 인터-뷰(inter-view) 예측을 통해서 서로 다른 뷰의 픽쳐를 참조하여 예측 블록을 생성할 수 있다.
인터 예측의 방법으로서, 스킵(skip) 모드, 머지(merge) 모드, MVP(Motion Vector Prediction) 등이 이용될 수 있다. 인터 예측에서 예측부(210)는 PU에 대하여, 참조 픽쳐를 선택하고 PU와 동일한 크기의 참조 블록을 선택할 수 있다. 예측부(210)는 현재 블록에 대한 잔차(residual) 신호와 움직임 벡터를 최소화하는 예측 블록을 생성할 수 있다.
인터 예측을 통해 선택된 참조 픽쳐 인덱스, 움직임 벡터, 잔차 신호 등의 정보는 엔트로피 부호화되어 복호화기로 전송될 수 있다. 스킵 모드가 적용되는 경우에는 예측 블록이 그대로 복원 블록으로 사용될 수 있으므로, 잔차 신호가 생성, 변환, 양자화, 전송되지 않을 수 있다.
인트라 예측이 수행되는 경우에는 PU 단위로 예측 모드가 정해져서 PU 단위로 예측이 수행될 수 있다. 또한, PU 단위로 예측 모드가 정해지고 TU 단위로 인트라 예측이 수행될 수도 있다.
인트라 예측에서 예측 모드는 33개의 방향성 예측 모드와 적어도 2개 이상의 비방향성 모드를 포함할 수 있다. 비방향성 모드는 DC 모드 및 플래너(planar) 모드를 포함할 수 있다.
인트라 예측에서는 참조 샘플에 필터를 적용한 후 예측 블록을 생성할 수도 있다. 이 때, 참조 샘플에 필터를 적용할 것인지는 현재 블록의 인트라 예측 모드 및/또는 사이즈에 따라 결정될 수 있다.
인터-뷰 예측에서 예측부(210)는 일례로 참조 뷰에서 현재 뷰 내 현재 블록의 예측에 참조 가능한 대응 블록의 위치를 특정하는 글로벌 디스패리티 벡터(Global Disparity Vector: GDV)를 이용하여 현재 블록에 대한 예측을 수행하고, 예측 블록을 생성할 수 있다. 또한, 예측부(210)는 다른 뷰의 픽쳐에 대해 워핑(warping)을 수행하여 현재 뷰에 대응되는 가상 뷰 픽쳐를 생성하고, 생성된 가상 뷰 픽쳐를 기반으로 현재 블록에 대응되는 예측 블록을 생성할 수도 있다. 이 때, 예측부(210)는 GDV를 기반으로 도출된 대응 블록의 움직임 벡터 및/또는 워핑에 의해 생성된 가상 뷰 픽쳐 내에서 현재 블록과 동일 위치에 존재하는 블록을 기반으로, 인터 예측과 동일하게 스킵 모드, 머지 모드 및/또는 MVP 모드를 적용함으로써 현재 블록에 대한 인터-뷰 예측을 수행할 수도 있다. 이에 대한 구체적인 실시예들은 후술하기로 한다.
PU는 다양한 사이즈/형태의 블록일 수 있다. 예컨대 PU는 2Nx2N 블록, 2NxN 블록, Nx2N 블록 또는 NxN 블록(N은 자연수) 등일 수 있다. 또한, 상술한 크기의 PU 외에, NxmN 블록, mNxN 블록, 2NxmN 블록 또는 mNx2N 블록(m<1) 등의 PU를 더 정의하여 사용할 수도 있다.
생성된 예측 블록과 원본 블록 사이의 잔차값(잔차 블록: residual block)은 변환부(215)로 입력될 수 있다. 또한, 예측을 위해 사용한 예측 모드 정보, 움직임 벡터(motion vector) 정보, 디스패리티 벡터 정보 및/또는 워핑 관련 정보 등은 잔차값과 함께 엔트로피 부호화부(230)에서 부호화되어 복호화기에 전달될 수 있다.
변환부(215)는 변환 단위로 잔차 블록에 대한 변환(transform)을 수행하고 변환 계수를 생성할 수 있다.
변환부(215)는 텍스쳐 영상과 깊이 맵에 대한 다운 샘플링을 수행한 후에 변환을 수행할 수도 있다. 다운 샘플링은 텍스쳐 영상과 깊이 맵에서, 저주파 영역에 대해 수행될 수도 있고, 디테일한 특성이 중요시되지 않는 영역에 대해서 수행될 수도 있다. 다운 샘플링을 통해 복잡도를 낮추고 코딩 효율을 높일 수 있다.
변환부(215)에서의 변환 단위는 변환 유닛일 수 있으며, 쿼드 트리(quad tree) 구조를 가질 수 있다. 이때, 변환 단위의 크기는 소정의 최대 및 최소 크기의 범위 내에서 정해질 수 있다. 변환부(215)는 잔차 블록을 DCT(Discrete Cosine Transform) 및/또는 DST(Discrete Sine Transform)를 이용하여 변환할 수 있다.
양자화부(220)는 변환부(215)에서 변환된 잔차값들을 양자화하여 양자화 계수를 생성할 수 있다. 양자화부(220)에서 산출된 값은 역양자화부(235)와 재정렬부(225)에 제공될 수 있다.
재정렬부(225)는 양자화부(220)로부터 제공된 양자화 계수를 재정렬할 수 있다. 양자화 계수를 재정렬함으로써 엔트로피 부호화부(230)에서의 부호화의 효율을 높일 수 있다. 재정렬부(225)는 계수 스캐닝(Coefficient Scanning) 방법을 통해 2차원 블록 형태의 양자화 계수들을 1차원의 벡터 형태로 재정렬할 수 있다. 재정렬부(225)에서는 양자화부에서 전송된 계수들의 확률적인 통계를 기반으로 계수 스캔닝의 순서를 변경함으로써 엔트로피 부호화부(230)에서의 엔트로피 부호화 효율을 높일 수도 있다.
엔트로피 부호화부(230)는 재정렬부(225)에 의해 재정렬된 양자화 계수들에 대한 엔트로피 부호화를 수행할 수 있다. 엔트로피 부호화에는 예를 들어, 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding) 및/또는 CABAC(Context-Adaptive Binary Arithmetic Coding) 등과 같은 부호화 방법들이 사용될 수 있다. 엔트로피 부호화부(230)는 재정렬부(225) 및 예측부(210)로부터 전달받은 부호화 유닛의 양자화 계수 정보 및 블록 타입 정보, 예측 모드 정보, 분할 단위 정보, 예측 유닛 정보 및 전송 단위 정보, 움직임 벡터 정보, 참조 픽쳐 정보, 블록의 보간 정보, 필터링 정보 등 다양한 정보를 부호화할 수 있다.
엔트로피 부호화부(230)는 멀티 뷰를 기반으로 한 텍스쳐 영상 정보 및 깊이 맵 정보를 다중화하여 비트스트림으로 전송할 수도 있다.
역양자화부(235)는 양자화부(220)에서 양자화된 값들을 역양자화하고, 역변환부(240)는 역양자화부(235)에서 역양자화된 값들을 역변환할 수 있다. 역변환부(240)는 변환부(215)에서 다운 샘플링이 수행된 경우에, 역변환된 잔차 블록에 업 샘플링을 수행할 수 있다. 업 샘플링의 샘플링 비율은 변환부(215)에서 수행된 다운 샘플링의 샘플링 비율에 대응하여 결정될 수 있다.
역양자화부(235) 및 역변환부(240)에서 생성된 잔차값(Residual)은 예측부(210)에서 예측된 예측 블록과 합쳐져 복원 블록(Reconstructed Block)이 생성될 수 있다.
도 2에서는 가산기를 통해서, 잔차 블록과 예측 블록이 합쳐져 복원 블록이 생성되는 것으로 설명하고 있다. 이 때, 가산기를 복원 블록을 생성하는 별도의 유닛(복원 블록 생성부)으로 볼 수도 있다.
필터부(245)는 필요에 따라 디블록킹 필터, SAO(Sample Adaptive Offset) 및 ALF(Adaptive Loop Filter) 중 적어도 하나를 복원된 블록 및/또는 픽쳐에 적용할 수 있다.
디블록킹 필터는 복원된 픽쳐에서 블록 간의 경계에 생긴 블록 왜곡을 제거할 수 있다. SAO는 디블록킹 필터가 적용된 잔차 블록에 대하여, 픽셀 단위로 원본 영상과의 오프셋 차이를 복원할 수 있으며, 밴드 오프셋(Band Offset), 에지 오프셋(Edge Offset) 등의 형태로 적용될 수 있다. ALF는 디블록킹 필터링 과정 및/또는 SAO 과정이 수행된 후 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다.
메모리(250)는 필터부(245)를 통해 산출된 복원 블록 또는 픽쳐를 저장할 수 있다. 메모리(250)에 저장된 복원 블록 또는 픽쳐는 인터 예측을 수행하는 예측부(210)에 제공될 수 있다.

도 3은 본 발명의 일 실시예에 따른 영상 복호화 장치를 개략적으로 나타낸 블록도이다. 도 3을 참조하면, 영상 복호화기(300)는 엔트로피 복호화부(310), 재정렬부(315), 역양자화부(320), 역변환부(325), 예측부(330), 필터부(335) 및 메모리(340)를 포함할 수 있다.
영상 복호화기에 영상 비트 스트림이 입력된 경우, 입력된 비트 스트림은 영상 부호화기에서 영상 정보가 처리된 절차에 따라서 복호화될 수 있다.
예컨대, 영상 부호화기에서 엔트로피 부호화를 수행하기 위해 CAVLC 등의 가변 길이 부호화(Variable Length Coding: VLC, 이하 ‘VLC’라 함)가 사용된 경우에, 엔트로피 부호화부(310)도 부호화기에서 사용된 VLC 테이블과 동일한 VLC 테이블로 구현하여 엔트로피 복호화를 수행할 수 있다. 또한, 영상 부호화기에서 엔트로피 부호화를 수행하기 위해 CABAC을 이용한 경우에, 엔트로피 복호화부(310)는 이에 대응하여 CABAC을 이용한 엔트로피 복호화를 수행할 수 있다.
영상 부호화기로부터 수신한 비트스트림이 멀티 뷰를 기반으로 한 텍스쳐 영상 정보 및 깊이 맵 정보가 다중화된 것이라면, 엔트로피 복호화부(310)는 수신된 비트스트림을 역다중화한 후 엔트로피 복호화를 수행할 수도 있다.
엔트로피 복호화부(310)에서 복호화된 정보 중 예측 블록을 생성하기 위한 정보는 예측부(330)로 제공되고 엔트로피 복호화부(310)에서 엔트로피 복호화가 수행된 잔차 값은 재정렬부(315)로 입력될 수 있다.
재정렬부(315)는, 엔트로피 복호화부(310)에서 엔트로피 복호화된 비트 스트림을 영상 부호화기에서 재정렬한 방법을 기초로 재정렬할 수 있다. 재정렬부(315)는 1차원 벡터 형태로 표현된 계수들을 다시 2차원의 블록 형태의 계수로 복원하여 재정렬할 수 있다. 재정렬부(315)는 부호화기에서 수행된 계수 스캐닝에 관련된 정보를 제공받고 해당 부호화기에서 수행된 스캐닝 순서에 기초하여 역으로 스캐닝하는 방법을 통해 재정렬을 수행할 수 있다.
역양자화부(320)는 부호화기에서 제공된 양자화 파라미터와 재정렬된 블록의 계수값을 기초로 역양자화를 수행할 수 있다.
역변환부(325)는 영상 부호화기에서 수행된 양자화 결과에 대해 부호화기의 변환부가 수행한 DCT 및 DST에 대해, 역DCT 및/또는 역DST를 수행할 수 있다. 역변환은 부호화기에서 결정된 전송 단위 또는 영상의 분할 단위를 기초로 수행될 수 있다. 부호화기의 변환부에서 DCT 및/또는 DST는 예측 방법, 현재 블록의 크기 및/또는 예측 방향 등 복수의 정보에 따라 선택적으로 수행될 수 있고, 복호화기의 역변환부(325)는 부호화기의 변환부에서 수행된 변환 정보를 기초로 역변환을 수행할 수 있다.
예측부(330)는 엔트로피 복호화부(310)에서 제공된 예측 블록 생성 관련 정보와 메모리(340)에서 제공된 이전에 복호화된 블록 및/또는 픽쳐 정보를 기초로 예측 블록을 생성할 수 있다.
현재 블록에 대한 예측 모드가 인트라 예측 모드인 경우에, 예측부(330)는 현재 픽쳐 내의 픽셀 정보를 기초로 예측 블록을 생성하는 인트라 예측을 수행하고 예측 블록을 생성할 수 있다.
현재 블록에 대한 예측 모드가 인터 예측 모드인 경우에, 예측부(330)는 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐에 포함된 정보를 기초로 현재 블록에 대한 인터 예측을 수행하고 예측 블록을 생성할 수 있다. 이 때, 부호화기에서 제공된 현재 블록의 인터 예측에 필요한 움직임 정보, 예컨대 움직임 벡터, 참조 픽쳐 인덱스 등에 관한 정보는 부호화기로부터 수신한 스킵 플래그, 머지 플래그 등을 확인하고 이에 대응하여 유도될 수 있다.
현재 블록에 대해 인터-뷰 예측이 적용된 경우에, 예측부(330)는 다른 뷰 내의 참조 픽쳐를 이용하여 현재 블록에 대한 예측을 수행하고 예측 블록을 생성할 수 있다.
복원 블록은 예측부(330)에서 생성된 예측 블록과 역변환부(325)에서 제공된 잔차 블록을 이용해 생성될 수 있다. 도 3에서는 가산기에서 예측 블록과 잔차 블록이 합쳐져 복원 블록이 생성되는 것으로 설명하고 있다. 이 때, 가산기를 복원 블록을 생성하는 별도의 유닛(복원 블록 생성부)로 볼 수도 있다.
스킵 모드가 적용되는 경우에는 잔차 신호가 전송되지 않을 수 있으며 예측 블록이 복원 블록으로 사용될 수 있다.
복원된 블록 및/또는 픽쳐는 필터부(335)로 제공될 수 있다. 필터부(335)는 필요에 따라서 복원된 블록 및/또는 픽쳐에 디블록킹 필터, SAO(Sample Adaptive Offset) 및/또는 ALF 등을 적용할 수 있다.
메모리(340)는 복원된 픽쳐 또는 블록을 저장하여 참조 픽쳐 또는 참조 블록으로 사용할 수 있도록 할 수 있고 또한 복원된 픽쳐를 출력부로 제공할 수 있다. 도시되지는 않았으나, 출력부는 복원된 멀티 뷰의 픽쳐들을 이용하여 3DV 영상을 제공할 수 있다.

이하, 본 명세서에서 현재 블록은 현재 부호화, 복호화 및/또는 예측 과정이 수행되는 블록으로서, 상기 부호화, 복호화 및/또는 예측 과정이 수행될 때의 처리 단위에 대응하는 블록을 의미할 수 있다. 일례로, 현재 블록에 대해 예측 과정이 수행되는 경우, 상기 현재 블록은 현재 예측 유닛에 대응하는 예측 대상 블록에 해당될 수 있다. 그리고, 본 명세서에서는 예측에 의해 생성된 블록은 예측 블록이라 한다.

도 2 및 도 3에서 상술한 바와 같이, 현재 블록에 대해 인터 예측이 수행되는 경우, 예측에 따른 전송 정보량을 감소시키기 위해 MVP(Motion Vector Prediction) 모드, 머지(merge) 모드 및/또는 스킵(skip) 모드 등의 예측 모드가 이용될 수 있다.
싱글 뷰 비디오에 대한 머지 모드에서 현재 블록은, 현재 픽쳐 및/또는 참조 픽쳐 내의 다른 블록(예를 들어, 주변 블록. 여기서, 주변 블록은 현재 블록에 인접한 블록 및/또는 현재 블록의 외부 코너에 가장 가까이 위치한 블록을 포함함)에 머지될 수 있다. 이 때, 머지(merge)된다는 것은, 현재 블록의 인터 예측에 있어서, 움직임 정보가 현재 픽쳐 및/또는 참조 픽쳐 내의 다른 블록의 움직임 정보로부터 얻어지는 것을 말한다. 즉, 머지 모드에서는 현재 픽쳐 및/또는 참조 픽쳐 내의 다른 블록(예를 들어, 인터 예측을 기반으로 부호화/복호화되는 블록)에서 사용된 정보가 현재 블록의 부호화/복호화를 위해 사용될 수 있다.
현재 블록의 머지 관련 정보에는, 현재 블록에 대한 예측 모드가 머지 모드인지 여부를 나타내는 정보, 현재 블록이 머지 후보 리스트에 포함된 머지 후보들 중에서 어떤 머지 후보에 머지되는지를 나타내는 정보 등이 있을 수 있다. 이하, 현재 블록에 대한 예측 모드가 머지 모드인지 여부를 나타내는 정보는 머지 플래그라 하고, 현재 블록이 머지 후보 리스트에 포함된 머지 후보들 중에서 어떤 머지 후보에 머지되는지를 나타내는 정보는 머지 인덱스라 한다. 예를 들어, 머지 플래그는 merge_flag에 의해 나타내어질 수 있고, 머지 인덱스는 merge_idx에 의해 나타내어질 수 있다. 이 때 머지 인덱스는, 머지 플래그가 현재 블록에 대한 예측 모드가 머지 모드임을 지시하는 경우(예를 들어, merge_flag=1)에만 획득되도록 할 수도 있다.
스킵 모드는 예측 블록과 현재 블록의 차이인 잔차(residual) 신호의 전송이 생략되는 예측 모드이다. 스킵 모드에서는 예측 블록과 현재 블록의 잔차 신호의 값이 0일 수 있다. 따라서, 스킵 모드에서 부호화기는 복호화기로 잔차 신호를 전송하지 않을 수 있으며, 복호화기는 잔차 신호와 움직임 정보 중 움직임 정보만을 이용하여 예측 블록을 생성할 수 있다. 스킵 모드에서 부호화기는 움직임 정보를 복호화기로 전송할 수 있다. 이 때, 움직임 정보는 현재 블록의 주변 블록들 중에서 어느 한 블록을 지정하여 해당 블록의 움직임 정보를 현재 블록에 이용하도록 하는 방식으로 전송될 수도 있다.
상술한 스킵 모드에서는 현재 블록의 움직임 정보를 획득하기 위해, 상기 머지 모드에서 사용되는 방법과 동일한 방법이 사용될 수 있다. 이 때, 스킵 모드와 머지 모드에서는 동일한 주변 블록들이 움직임 정보 도출을 위한 후보 블록으로 사용될 수 있다. 예를 들어, 스킵 모드에서도, 머지 후보 리스트에 포함된 머지 후보들 중 머지 인덱스에 의해 지시된 머지 후보 블록의 움직임 정보가, 그대로 현재 블록의 움직임 정보로 사용될 수 있다. 이러한 경우의 스킵 모드는 머지 스킵(merge skip) 모드로도 불릴 수 있다. 이하, 본 명세서에서 예측 과정에 적용되는 스킵 모드는 머지 스킵 모드라 한다.

도 4는 싱글 뷰 비디오에 대한 머지 스킵 모드에서 머지 후보 리스트 생성에 사용되는 머지 후보들의 실시예를 개략적으로 나타내는 도면이다.
도 4의 실시예는 다른 언급이 없는 한 부호화기 및 복호화기에 동일한 방식으로 적용될 수 있다. 또한, 도 4의 실시예는 머지 스킵 모드를 기준으로 서술되지만 머지 모드에도 동일하거나 유사한 방식으로 적용될 수 있다.
도 4의 410은 POC 값 t를 갖는 텍스쳐 픽쳐(423) 및 POC 값 t-1을 갖는 텍스쳐 픽쳐(433)를 도시한다. 또한, POC 값 t를 갖는 텍스쳐 픽쳐(423)는 예측 대상이 되는 현재 블록(426)을 포함할 수 있고, POC 값 t-1을 갖는 텍스쳐 픽쳐(433)는 현재 블록(426)에 대응되는 콜 블록(Col block, 436)을 포함할 수 있다. 여기서, 일례로 현재 블록(426)은 PU일 수 있다. 콜 블록에 대해서는 후술하기로 한다. 또한, 도 4의 420은 현재 블록(426) 및 현재 블록(426)의 주변에 위치한 블록들을 도시한다.
머지 스킵 모드에서, 예측부는 소정의 프로세스를 통하여 복수의 머지 후보를 도출할 수 있고, 도출된 머지 후보를 기반으로 머지 후보 리스트를 생성할 수 있다. 이하, 본 명세서에서는 설명의 편의상 머지 후보로 사용되는 움직임 정보(및/또는 픽셀 값 정보)를 포함하는 블록은 ‘머지 후보 블록’이라 한다.
머지 후보 리스트를 구성하는 머지 후보의 개수는 소정의 개수로 제한될 수 있으며, 예를 들어 상기 소정의 개수는 5개일 수 있다. 이하, 본 명세서에서는 설명의 편의상 머지 후보 리스트를 구성하는 머지 후보의 개수는 5개라 한다. 다만, 본 발명은 이에 한정되는 것은 아니며 머지 후보 리스트를 구성하는 머지 후보의 개수가 5개가 아닌 경우에도 동일하거나 유사한 방식으로 적용될 수 있다.
도 4의 410을 참조하면, 머지 스킵 모드에서는 콜 블록(436)이 머지 후보 블록으로 이용될 수 있다. 콜 블록(436)은 현재 픽쳐(423)가 아닌 참조 픽쳐(433) 내의 블록에 해당될 수 있으며, 참조 픽쳐(433)는 L0 참조 픽쳐 리스트(L0 reference picture list) 및/또는 L1 참조 픽쳐 리스트(L1 reference picture list)에 속한 픽쳐들 중에서 선택된 픽쳐일 수 있다. 일례로, 참조 픽쳐(433)는 참조 픽쳐 리스트 내의 첫 번째 픽쳐일 수 있다.
도 4는 현재 픽쳐(423)가 t의 POC 값을 갖고 참조 픽쳐(433)가 t-1의 POC 값을 갖는 경우의 실시예를 도시한다. 그러나, 본 발명은 이에 한정되는 것은 아니며, 현재 픽쳐(423)가 t의 POC 값을 갖는 경우에 콜 블록이 도출되는 참조 픽쳐는 t-m(m은 0이 아닌 정수)의 POC 값을 갖는 픽쳐일 수 있다.
상기 콜 블록(436)의 위치는 참조 픽쳐(433) 내에서 현재 블록(426)과 공간적으로 동일한 위치에 있는 동일 위치 블록(co-located block)을 기반으로 도출될 수 있다. 일례로, 콜 블록(436)은 동일 위치 블록 내의 가장 좌측 상단에 위치한 픽셀을 포함하는 PU에 해당될 수 있다. 다른 예로, 콜 블록(436)은 참조 픽쳐(433) 내에 위치한, 소정의 움직임 정보 저장 단위에 해당되는 블록의 가장 좌측 상단에 위치한 픽셀을 포함하는 PU일 수 있다. 이 때, 상기 움직임 정보 저장 단위에 해당되는 블록은, 상기 동일 위치 블록 외부의 우측 하단 코너에 가장 가까이 위치한 픽셀을 포함하는 블록이거나 또는 상기 동일 위치 블록의 중앙에 위치한 네 개의 픽셀 중에서 우측 하단에 위치한 픽셀을 포함하는 블록일 수 있다.
상술한 콜 블록(436)은 참조 픽쳐(433)로부터 도출되는 블록이다. 따라서, 콜 블록(436)으로부터 도출되는 머지 후보는 시간적 머지 후보(temporal merge candidate)로 불릴 수 있다.
또한 도 4의 420을 참조하면, 머지 스킵 모드에서는 현재 블록(426)의 주변에 위치한 주변 블록이 머지 후보 블록으로 이용될 수 있다. 이 때, 상기 주변 블록은 현재 블록(426)의 좌측에 인접한 블록들 중에서 가장 하단에 위치한 블록(A), 현재 블록(426)의 상단에 인접한 블록들 중에서 가장 우측에 위치한 블록(B), 현재 블록(426) 외부의 우측 상단 코너에 가장 가까이 위치한 블록(C), 현재 블록(426) 외부의 좌측 하단 코너에 가장 가까이 위치한 블록(D) 및 현재 블록(426) 외부의 좌측 상단 코너에 가장 가까이 위치한 블록(E)을 포함할 수 있다. 여기서, 일례로 각각의 주변 블록은 PU일 수 있다.
이 때, 일례로 예측부는 현재 블록(426)의 주변 블록을 A, B, C, D, E의 순서로 확인하여 가용한 움직임 정보를 포함하는 4개의 블록을 머지 후보 블록으로 결정할 수 있다. 이 경우 주변 블록으로부터 도출되는 머지 후보의 개수는 일례로 4개일 수 있다.
상술한 주변 블록들은 현재 블록(426)의 주변에 위치한 블록들이다. 따라서, 주변 블록으로부터 도출되는 머지 후보는 공간적 머지 후보(spatial merge candidate)로 불릴 수 있다.
상술한 머지 후보 도출 과정에서는 최대 5개의 머지 후보가 도출될 수 있다. 예측부는, 공간적 머지 후보 및 시간적 머지 후보를 순서대로 삽입하여 머지 후보 리스트를 생성할 수 있다. 이 때, 서로 동일한 복수의 머지 후보가 존재하는 경우, 우선순위가 가장 높은 하나의 머지 후보를 제외한 나머지 머지 후보는 삭제되고 머지 후보 리스트에 추가되지 않을 수 있다.
한편, 유효한 공간적 머지 후보 및 시간적 머지 후보가 모두 머지 후보 리스트에 추가된 경우에도, 머지 후보 리스트에 포함된 머지 후보의 개수가 5보다 작을 수 있다. 이러한 경우, 예측부는 이미 머지 후보 리스트에 추가된 머지 후보를 기반으로 새로운 머지 후보를 도출하여 머지 후보 리스트에 추가할 수 있다. 이 때, 예측부는 머지 후보 리스트를 구성하는 머지 후보의 개수가 5개가 될 때까지 새로운 머지 후보를 추가할 수 있다.
이미 머지 후보 리스트에 추가된 머지 후보를 기반으로 도출되는 새로운 머지 후보에는 CB(combined bi-predictive candidate), NB(non-scaled bi-predictive candidate) 및/또는 Zero(zero motion candidate) 등이 있을 수 있다. 여기서, CB는 이미 머지 후보 리스트에 추가된 머지 후보 중에서 두 개의 머지 후보를 기반으로 도출될 수 있다. 예를 들어, CB의 L0 움직임 정보는 상기 두 개의 머지 후보 중에서 하나를 기반으로 도출되고, CB의 L1 움직임 정보는 상기 두 개의 머지 후보 중에서 다른 하나를 기반으로 도출될 수 있다. 즉, CB는 상기 두 개의 머지 후보 각각의 움직임 정보를 조합함으로써 도출될 수 있다. 또한, NB의 L0 움직임 정보 및 L1 움직임 정보는 이미 머지 후보 리스트에 추가된 머지 후보 중에서 한 개의 머지 후보를 기반으로 소정의 조건 및 연산을 통해 도출될 수 있다. 그리고 상기 Zero는 영 벡터(0,0)를 포함하는 움직임 정보를 의미할 수 있다.
머지 후보 리스트를 구성하는 머지 후보에는 상기 리스트에 삽입된 순서에 따라 머지 인덱스가 할당될 수 있다. 이 때, 머지 후보 리스트에 우선적으로 추가되는 머지 후보에는 낮은 머지 인덱스 값이 할당될 수 있다.
부호화기는 머지 후보 리스트를 구성하는 머지 후보 중에서 실제로 부호화에 사용된 머지 후보를 지시하는 머지 인덱스를 부호화하여 복호화기로 전송할 수 있다. 이 때, 일례로 머지 인덱스는 merge_idx라는 신택스 요소(syntax element)를 통해 전송될 수 있다.
복호화기는 전송된 머지 인덱스를 수신하여 복호화할 수 있다. 이 때, 복호화기는 머지 인덱스를 기반으로, 머지 후보 리스트를 구성하는 머지 후보들 중에서 현재 블록(426)의 예측에 사용될 머지 후보를 선택할 수 있다. 상기 선택된 머지 후보는 머지 인덱스가 지시하는 후보에 해당될 수 있다.
복호화기는 선택된 머지 후보를 기반으로 현재 블록(426)의 움직임 정보를 도출할 수 있다. 일례로, 복호화기는 선택된 머지 후보의 움직임 정보를 그대로 현재 블록(426)의 움직임 정보로서 사용할 수 있다. 현재 블록(426)의 움직임 정보가 도출되면, 복호화기는 도출된 움직임 정보를 기반으로 현재 블록(426)에 대한 움직임 보상(motion compensation)을 수행함으로써 현재 블록(426)에 대응되는 예측 블록을 생성할 수 있다. 여기서, 머지 후보로부터 도출되는 현재 블록(426)의 움직임 정보에는 예측 방향(prediction direction), 참조 픽쳐 인덱스(reference picture index) 및 움직임 벡터(motion vector) 등이 있을 수 있다.
상술한 바와 같이, 머지 스킵 모드가 적용되는 경우에는 잔차 신호의 전송이 생략될 수 있다. 따라서, 생성된 예측 블록이 복원 블록으로 사용될 수 있다. 머지 스킵 모드가 아닌 머지 모드에서는 잔차 신호가 부호화되어 복호화기로 전송될 수 있다. 이 때, 복호화기는 잔차 신호를 복호화하여 잔차 블록을 생성할 수 있고, 잔차 블록과 예측 블록을 더하여 복원 블록을 생성할 수 있다.

한편, 상술한 바와 같이 싱글 뷰 비디오에서와 달리 멀티 뷰 비디오에서는 동일한 POC에서 서로 다른 뷰를 갖는 복수의 텍스쳐 영상이 존재할 수 있으며, 복수의 텍스쳐 영상 각각에 대응되는 깊이 맵이 존재할 수 있다. 따라서, 멀티 뷰 비디오는 싱글 뷰 비디오와는 다른 특성을 가질 수 있다.
특히, 깊이 비디오에서는 텍스쳐 비디오에 비해 데이터 값의 분포가 단순할 확률이 높으며 픽셀 값의 변화가 적을 수 있다. 따라서, 하나의 깊이 블록 내의 픽셀 값들은 상기 깊이 블록 주변에 위치한 다른 깊이 블록의 픽셀 값들과 높은 상관도(correlation)를 가질 수 있다.
도 4의 실시예에서는 현재 블록의 주변 블록(A, B, C, D, E)이 머지 후보 블록으로 사용될 수 있는데, 깊이 블록에 머지 모드가 적용되는 경우에는 주변 블록(A, B, C, D, E)들의 움직임 정보가 모두 동일하거나 유사한 값을 갖는 경우가 많이 발생할 수 있다. 따라서, 낮은 머지 인덱스 값이 할당되는 블록 A 및/또는 블록 B의 움직임 정보가 주로 현재 블록의 움직임 정보 도출에 사용되는 머지 후보로 선택될 수 있다.
또한, 깊이 비디오는 상기 깊이 비디오와 동일한 뷰를 갖는 텍스쳐 비디오와 유사한 움직임 정보를 가질 수 있다. 그리고, 현재 뷰의 깊이 정보는 다른 뷰의 깊이 정보, 및 멀티 뷰 비디오(예를 들어, 멀티 뷰 텍스쳐 비디오 및 멀티 뷰 깊이 비디오)와 함께 전송되는 카메라 파라미터를 기반으로 계산될 수 있다.
또한, 멀티 뷰 비디오에서는 동일한 위치를 나타내고 서로 다른 뷰를 갖는 복수의 대응 픽셀들이 존재할 수 있다. 멀티 뷰 텍스쳐 비디오의 경우에는 서로 다른 뷰를 갖는 복수의 대응 픽셀들 간에 컬러(color) 값이 서로 다를 수 있다. 그러나, 멀티 뷰 깊이 비디오의 경우에는 3차원 위치 정보만이 표현되므로, 서로 다른 뷰를 갖는 복수의 대응 픽셀들 간에 컬러 값의 차이 및/또는 변화로 인한 상관도(correlation) 저하가 발생할 확률이 적다. 따라서, 멀티 뷰 깊이 비디오의 경우에는 인터-뷰 예측의 효과가 높을 수 있다.
상술한 멀티 뷰 비디오의 특성을 고려하면, 멀티 뷰 비디오에 대한 머지 스킵 모드(및/또는 머지 모드)에서는, 싱글 뷰 비디오에 적합한 도 4의 머지 스킵(및/또는 머지) 방식이 높은 코딩 효율을 제공하지 못할 수도 있다. 따라서, 멀티 뷰 비디오의 특성 및/또는 깊이 비디오의 특성을 고려한 머지 후보 리스트 구성 방식, 머지 스킵 모드(및/또는 머지 모드) 예측 방식 및/또는 부호화/복호화 방식이 제공될 수 있다.
이하, 후술되는 실시예들은 깊이 비디오 및/또는 깊이 영상을 중심으로 서술되지만, 본 발명은 이에 한정되는 것은 아니다. 후술되는 실시예들은 텍스쳐 비디오 및/또는 텍스쳐 영상에 대해서도 깊이 깊이 비디오 및/또는 깊이 영상에서와 동일하거나 유사한 방식으로 적용될 수 있다. 일례로, 후술되는 실시예에서 깊이 영상의 예측에 텍스쳐 영상의 정보가 사용되는 경우, 텍스쳐 영상의 예측에는 깊이 영상의 정보가 유사한 방식으로 사용될 수 있다.

도 5는 멀티 뷰 비디오에 대한 머지 스킵 모드에서 공간적 머지 후보를 도출하는 방법의 실시예를 개략적으로 나타내는 도면이다.
도 5의 실시예는 다른 언급이 없는 한 부호화기 및 복호화기에 동일한 방식으로 적용될 수 있다. 또한, 도 5의 실시예는 머지 스킵 모드를 기준으로 서술되지만 머지 모드에도 동일하거나 유사한 방식으로 적용될 수 있다.
상술한 바와 같이, 깊이 비디오는 텍스쳐 비디오에 비해 데이터 값의 분포가 단순할 확률이 높으며 픽셀 값의 변화가 적을 수 있다. 따라서, 하나의 깊이 블록 내의 픽셀 값들은 상기 깊이 블록 주변에 위치한 다른 깊이 블록의 픽셀 값들과 높은 상관도를 가질 수 있다.
상술한 도 4의 실시예에서는, 현재 블록의 좌측에 인접한 블록들 중에서 가장 하단에 위치한 블록, 현재 블록의 상단에 인접한 블록들 중에서 가장 우측에 위치한 블록, 현재 블록 외부의 우측 상단 코너에 가장 가까이 위치한 블록, 현재 블록 외부의 좌측 하단 코너에 가장 가까이 위치한 블록 및 현재 블록 외부의 좌측 상단 코너에 가장 가까이 위치한 블록을 포함한 5개의 블록이, 공간적 머지 후보 도출에 사용될 수 있다. 그러나, 멀티 뷰 비디오 및/또는 깊이 비디오에서는 상술한 특성에 의해 상기 주변 블록들이 모두 유사한 값을 갖는 경우가 많이 발생할 수 있다. 따라서, 멀티 뷰 비디오 및/또는 깊이 비디오에서는 이러한 특성을 고려하여 도 4의 실시예에서보다 더 적은 개수의 주변 블록이 머지 후보 블록으로 사용될 수 있다.
머지 스킵 모드(및/또는 머지 모드)에서 주변 블록들의 움직임 정보가 모두 동일하거나 유사한 값을 갖는 경우에는, 상기 주변 블록들의 움직임 정보 중에서 낮은 머지 인덱스 값이 할당되는 블록의 움직임 정보가 주로 현재 블록의 움직임 정보 도출에 사용되는 머지 후보로 선택될 확률이 높다. 따라서, 멀티 뷰 비디오 및/또는 깊이 비디오에서는 도 4의 실시예에 도시된 5개의 주변 블록 중에서, 가장 낮은 머지 인덱스 값이 할당되는 움직임 정보를 갖는 2개의 블록이 머지 후보 블록으로 사용될 수 있다.
도 5를 참조하면, 멀티 뷰 비디오(및/또는 깊이 비디오)에 대한 머지 스킵 모드에서는 현재 블록(510)에 인접하여 위치한 두 개의 주변 블록이 머지 후보 블록으로 이용될 수 있다. 이 때, 상기 주변 블록은 현재 블록(510)의 좌측에 인접한 블록들 중에서 가장 하단에 위치한 블록(A) 및 현재 블록(510)의 상단에 인접한 블록들 중에서 가장 우측에 위치한 블록(B)을 포함할 수 있다. 여기서, 일례로 각각의 주변 블록은 PU일 수 있다.
이 때, 일례로 예측부는 블록 A 및 블록 B 중에서 가용한 움직임 정보를 포함하는 블록을 머지 후보 블록으로 결정할 수 있다. 이 경우 주변 블록으로부터 도출되는 머지 후보의 개수는 일례로 2개일 수 있다.
상술한 실시예에서는 2개의 주변 블록(A, B)이 머지 후보 블록으로 사용되는 경우를 기준으로 서술되고 있으나, 본 발명은 이에 한정되는 것은 아니다. 예를 들어, 멀티 뷰 비디오 및/또는 깊이 비디오에서 예측부는 2개가 아닌 1개의 주변 블록(예를 들어, 블록 A)을 머지 후보 블록으로 사용할 수도 있으며, 3개 이상의 주변 블록(예를 들어, 블록 A, 블록 B 및 블록 C)을 머지 후보 블록으로 사용할 수도 있다.

한편, 상술한 바와 같이 3D 비디오 부호화/복호화에서는 복수의 카메라에서 촬영된 멀티 뷰 비디오 시퀀스가 이용될 수 있다. 서로 다른 뷰(view)에서 촬영된 영상들 간에는 글로벌 디스패리티(global disparity)로 불리는 시차 및/또는 변이가 존재할 수 있다. 글로벌 디스패리티는 현재 뷰(view)에서 특정 시간의 픽쳐와 다른 뷰에서 동일한 시간의 픽쳐 사이에 존재하는 전체적인(global) 변이의 차이라고 할 수 있다. 이 때, 두 뷰 사이의 전체적인 변이의 차이는 글로벌 디스패리티 벡터(Global Disparity Vector: GDV, 이하 ‘GDV’라 함)를 통해 나타내어질 수 있다. 멀티 뷰를 기반으로 한 3D 비디오에서는 현재 뷰에 속한 현재 블록의 GDV를 기반으로 다른 뷰에서 상기 현재 블록에 대응되는 블록이 도출될 수 있고, 상기 도출된 블록의 움직임 정보를 기반으로 현재 블록의 움직임 정보가 예측될 수 있다. 따라서, 멀티 뷰 비디오에서는 GDV를 기반으로 도출되는 블록(현재 블록이 속한 뷰와 다른 뷰를 갖는 블록)의 움직임 정보가 머지 후보로 사용될 수도 있다. 이에 대한 구체적인 실시예는 도 6에서 후술된다.

도 6은 멀티 뷰 비디오에 대한 머지 스킵 모드에서 GDV를 기반으로 머지 후보를 도출하는 방법의 실시예를 개략적으로 나타내는 도면이다.
도 6의 실시예는 다른 언급이 없는 한 부호화기 및 복호화기에 동일한 방식으로 적용될 수 있다. 또한, 도 6의 실시예는 머지 스킵 모드를 기준으로 서술되지만 머지 모드에도 동일하거나 유사한 방식으로 적용될 수 있다.
도 6에서는 멀티 뷰들 중에서 n번째 뷰(Vn)의 픽쳐(600) 내 현재 블록(610)에 대해 머지 후보를 도출하는 경우를 예로서 설명한다.
도 6을 참조하면, 현재 블록(610)의 머지 후보 도출을 위해, 멀티 뷰 중 m번째 뷰(Vm)의 픽쳐(620) 내 참조 블록(630)의 움직임 정보가 참조될 수 있다. n번째 뷰의 픽쳐(600)와 m번재 뷰의 픽쳐(620)는 동일한 시간, 즉 동일한 POC(Picture Order Count)의 픽쳐에 해당될 수 있다. 여기서, POC는 픽쳐의 출력 순서를 나타내는 정보일 수 있다.
서로 다른 뷰에 속하는 현재 블록(610)과 참조 블록(630)의 관계는 GDV (650)에 의해 정의될 수 있다. 도 6은 현재 블록(610)이 m번째 뷰에 투영된 블록(640)을 도시한다. 여기서, 현재 블록(610) 및 상기 현재 블록(610)이 m번째 뷰에 투영된 블록(640) 내의 가장 좌측 상단에 위치한 좌측 상단 픽셀의 위치는 (xP, yP)로 나타내어질 수 있다. 이 때, m번째 뷰의 참조 블록(630)은 상기 좌측 상단 픽셀에 GDV를 적용함으로써 도출된 픽셀(635)의 위치를 포함하는 블록에 해당될 수 있다. GDV가 (GDVx, GDVy)인 경우, 참조 블록(630)이 포함하는 픽셀(635)의 위치는 다음 수학식 1과 같이 나타내어질 수 있다.
[수학식 1]
(x’, y’) = (xP+GDVx, yP+GDVy)

상술한 실시예에서, 참조 블록(630)은 현재 블록(610) 내의 좌측 상단 픽셀의 위치 및 GDV를 기반으로 결정될 수 있다. 여기서, 참조 블록(630)은 일례로 PU일 수 있다. 이 때, 예측부는 GDV를 기반으로 특정되는 m번째 뷰의 참조 블록(630)의 움직임 정보를, n번째 뷰에 속한 현재 블록(610)의 머지 후보로 사용할 수 있다.
부호화기는 동일한 POC에서 서로 다른 뷰에 속한 두 블록의 움직임 정보에 대한 오차를 최소화하는 디스패리티를 해당 뷰 간의 글로벌 디스패리티로 선택할 수 있다. 예컨대, 두 뷰 사이에서는 최적의 SAD(Sum of Absolute Differences) 값을 갖는 디스패리티가 블록 단위로 결정될 수 있다. 이 때, SAD 대신 MSE(Mean Square Error), MAD(Mean Absolute Difference) 등이 이용될 수도 있다. GDV(Global Disparity Vector, 전역 변이 벡터)는 선택된 글로벌 디스패리티를 나타내는 벡터 표현에 해당될 수 있다.
부호화기는 산출된 GDV 정보를 비트스트림을 통해 복호화기로 전송할 수 있다. 따라서, 복호화기는 부호화기에서 사용된 GDV와 동일한 GDV를 예측에 사용할 수 있다. GDV를 기반으로 인터-뷰 예측이 수행되는 경우에는, GDV에 의해 현재 뷰의 현재 블록에 대응하는 참조 뷰(reference view)의 참조 픽쳐 내 블록(참조 블록)에서 움직임 정보를 가져와 현재 블록의 예측에 이용할 수 있다.
따라서, 멀티 뷰 비디오 및/또는 깊이 비디오에서는, GDV를 기반으로 도출된 움직임 정보가 현재 블록의 머지 후보로 사용될 수도 있다. 예컨대, 복호화기는 전송된 GDV를 기반으로 참조 블록(630)을 결정할 수 있으며, 결정된 참조 블록(630)의 움직임 정보를 현재 블록(610)의 머지 후보로 사용할 수 있다.

한편, 상술한 바와 같이 현재 뷰의 깊이 정보는 다른 뷰의 깊이 정보를 기반으로 용이하게 계산될 수 있다. 이러한 특성을 고려하여, 예측부는 현재 뷰에 속한 현재 블록(예를 들어, 깊이 블록)에 대해 워핑(warping) 방식을 기반으로 하는 예측을 수행할 수 있다. 워핑을 기반으로 하는 예측 방식에는 예를 들어, VSP(View Synthesis Prediction) 등이 있을 수 있다.
예측부는 현재 뷰에 속한 현재 블록(예를 들어, 깊이 블록)에 대해 예측을 수행하는 경우, 다른 뷰의 참조 픽쳐(예를 들어, 깊이 맵)에 대해 워핑(warping)을 수행함으로써 현재 뷰에 대응되는 가상 뷰 픽쳐(virtual view picture)를 생성하고, 상기 가상 뷰 픽쳐 내에서 상기 현재 블록에 대응되는 블록의 픽셀 값을 기반으로 예측을 수행할 수 있다. 워핑 과정에서는 가상 뷰 픽쳐가 생성될 수 있으므로, 상기 워핑 과정은 ‘가상 뷰 워핑(virtual view warping)’또는 ‘3D 워핑’으로도 불릴 수 있다. 이러한 워핑 기법이 텍스쳐 비디오 및/또는 깊이 비디오에 적용되는 경우에는 부호화, 복호화 및/또는 예측 효율이 향상될 수 있다.
워핑 방식을 기반으로 생성된 가상 뷰 픽쳐 내의 블록(현재 블록에 대응되는 블록)의 픽셀 값은 현재 블록 내의 픽셀의 예측 값으로 사용될 수 있다. 따라서, 현재 블록에 대응되는 가상 뷰 픽쳐 내의 블록은 머지 후보 블록으로도 사용될 수 있다. 이하, 본 명세서에서는 설명의 편의상 머지 후보 블록으로 사용되는 가상 뷰 픽쳐 내의 블록이 ‘머지 후보’로도 지칭될 수 있다.

도 7은 가상 뷰 워핑 방식을 기반으로 하는 예측 방법의 일 실시예를 개략적으로 나타내는 도면이다. 도 7의 실시예는 다른 언급이 없는 한 부호화기 및 복호화기에 동일한 방식으로 적용될 수 있다.
도 7은 뷰 1(view 1)의 텍스쳐 픽쳐(VT1), 뷰 2(view 2)의 텍스쳐 픽쳐(VT2), 뷰 1의 깊이 맵(VD1) 및 뷰 2의 깊이 맵(VD2)을 도시한다. 도 7의 실시예에서, 뷰 1의 텍스쳐 픽쳐(VT1), 뷰 2의 텍스쳐 픽쳐(VT2) 및 뷰 1의 깊이 맵(VD1)은 이전에 부호화/복호화된 픽쳐이고, 예측 대상이 되는 현재 블록(710)은 뷰 2의 깊이 맵(720)에 속한 블록이라 가정한다. 이 때, 현재 블록(710)이 속한 현재 뷰는 뷰 2에 해당될 수 있다.
또한 도 7의 실시예에서, 뷰 1의 텍스쳐 픽쳐(VT1), 뷰 2의 텍스쳐 픽쳐(VT2), 뷰 1의 깊이 맵(VD1) 및 뷰 2의 깊이 맵(VD2)은 일례로 동일한 시간, 즉 동일한 POC의 픽쳐에 해당될 수 있다. 여기서, POC는 픽쳐의 출력 순서를 나타내는 정보일 수 있다.
도 7에서는 설명의 편의상 뷰 1 및 뷰 2의 두 개의 뷰에 대해 워핑이 수행되는 경우의 실시예가 서술되지만, 본 발명은 이에 한정되는 것은 아니며, 도 7의 실시예에 따른 예측 방법은 세 개 이상의 뷰가 존재하는 경우에도 유사한 방식으로 적용될 수 있다.
부호화기 및 복호화기는 현재 픽쳐에 대해 부호화/복호화를 수행하기에 앞서, 다른 뷰의 복원된 참조 픽쳐에 대해 워핑을 수행함으로써, 현재 뷰(현재 블록이 속한 뷰)에 대응되는 가상 뷰 픽쳐(예를 들어, 가상 뷰 텍스쳐 픽쳐 또는 가상 뷰 깊이 맵)를 생성할 수 있다. 이 때, 워핑 수행 시에는 일례로 VSP 알고리즘 등이 사용될 수 있다.
도 7을 참조하면, 부호화기 및 복호화기는 뷰 2의 깊이 맵(720)에 대해 부호화/복호화를 수행하기에 앞서, 뷰 1의 복원된 깊이 맵(730)에 대해 워핑을 수행함으로써, 뷰 2에 대응되는 가상 뷰 깊이 맵(VD2’, 740)을 생성할 수 있다. 즉, 뷰 1의 복원된 깊이 맵(730)은 현재 블록이 속한 뷰(뷰 2)로 워핑될 수 있다. 이 때, 워핑 수행에는 일례로 VSP 알고리즘 등이 사용될 수 있으며, 워핑 과정의 구체적인 실시예는 도 8에서 후술하기로 한다.
가상 뷰 깊이 맵(740) 내에서, 현재 블록(710)과 공간적으로 동일한 위치에 존재하는 블록(750)은 ‘3D 워프 동일 위치 블록(3D warp collocated block)’으로 불릴 수 있다. 이하, 본 명세서에서는 설명의 편의상 워핑에 의해 생성된 가상 뷰 픽쳐(예를 들어, 깊이 맵 또는 텍스쳐 픽쳐) 내에서 현재 블록(예를 들어, 예측 대상 블록)과 공간적으로 동일한 위치에 존재하는 블록은 ‘워프 블록(warp block)’이라 한다.
예측부는 가상 뷰 깊이 맵(740) 내에서 현재 블록(710)과 공간적으로 동일한 위치에 존재하는 워프 블록(750)을 도출할 수 있다. 이 때, 예측부는 워프 블록(750)의 픽셀 값들을 카피(copy)하여 현재 블록(710) 내 픽셀들에 대한 예측 값 및/또는 예측자(predictor)로 사용할 수 있다. 즉, 예측부는 워프 블록(750)을 기반으로 현재 블록(710)에 대응되는 예측 블록을 생성할 수 있다. 일례로, 워프 블록(750)은 현재 블록(710)에 대응되는 예측 블록으로 사용될 수 있다.
따라서, 멀티 뷰 비디오 및/또는 깊이 비디오에서는, 현재 뷰에 속한 현재 블록에 대해 머지 스킵 모드(및/또는 머지 모드) 예측이 수행되는 경우, 다른 뷰에 속한 픽쳐에 대해 워핑을 수행함으로써 생성된 가상 뷰 픽쳐 내의 워프 블록이 머지 후보로 사용될 수 있다.

도 8은 워핑을 통한 가상 뷰 픽쳐 생성 과정의 실시예를 개략적으로 나타내는 도면이다.
도 8의 실시예는 다른 언급이 없는 한 부호화기 및 복호화기에 동일한 방식으로 적용될 수 있다. 또한, 도 8의 실시예는 깊이 맵을 기준으로 서술되지만 이에 한정되지 않고 텍스쳐 픽쳐에도 동일하거나 유사한 방식으로 적용될 수 있다.
3D 워핑 수행에는 다양한 알고리즘이 적용될 수 있으며, 일례로 상술한 바와 같이 VSP 알고리즘이 적용될 수도 있다. 도 8에서는 VSP를 기반으로 한 워핑 과정의 일 실시예가 서술되지만, 본 발명은 이에 한정되는 것은 아니다. 본 발명은 3D 워핑 수행 방식이나 가상 뷰 픽쳐 생성에 적용되는 알고리즘에 관계 없이, 워핑을 통해 생성된 가상 뷰 픽쳐를 기반으로 적용될 수 있다.
도 8의 810은 뷰 1의 깊이 맵(VD1, 820) 및 뷰 2에 대응되는 가상 뷰 깊이 맵(VD2’, 830)을 도시한다. 도 8의 810의 실시예에서, 가상 뷰 깊이 맵(830)은 뷰 1의 깊이 맵(820)에 대해 워핑을 수행함으로써 생성되는 블록을 나타낼 수 있다. 도 8의 실시예에서, 뷰 1의 깊이 맵(VD1, 820) 및 이에 대응되는 뷰 2의 깊이 맵(VD2)은 일례로 동일한 시간, 즉 동일한 POC의 픽쳐에 해당될 수 있다.
도 8의 810의 실시예에서, 뷰 1 및 뷰 2에 대해서는 ‘편위수정(rectification)’이 되어 있다고 가정한다. 여기서, 편위수정이 되어 있다 함은, 뷰 1의 비디오 및 뷰 2의 비디오 획득에 사용된 복수의 카메라의 광축(optical axis)이 모두 평행하고 복수의 카메라 간에 수직 방향의 변이(disparity)가 존재하지 않도록 조정된(rectified) 것을 의미한다.
이 때, 뷰 1의 깊이 맵(820)에 대해 뷰 2로의 워핑이 수행되는 경우, 뷰 1의 깊이 맵(820) 내의 (x, y) 좌표의 깊이 픽셀(825)은 x축으로 변이(disparity)만큼 이동할 수 있다. 이 경우, 뷰 1의 깊이 맵(820) 내의 (x, y) 좌표의 픽셀(825)은, 뷰 2의 가상 뷰 깊이 맵(830) 내에서 (x+d, y) 좌표의 가상 뷰 깊이 픽셀(835)로 매핑(mapping)되거나 워핑(warping)될 수 있다. 여기서, d는 뷰 1 및 뷰 2 간의 변이 값을 나타낼 수 있다. 또한, 상기 변이 값 d는 일 실시예로 다음 수학식 2에 의해 도출될 수 있다.
[수학식 2]
Figure PCTKR2012009208-appb-I000001

여기서, D는 뷰 1의 깊이 맵(820) 내의 (x, y) 좌표에 존재하는 픽셀(825)의 픽셀 값을 나타낼 수 있다. 또한, bitdepth는 깊이 맵의 픽셀 값을 나타내기 위해 사용되는 비트 수를 나타낼 수 있다.
또한, B는 베이스라인 거리(baseline distance)를 나타내고, f는 초점 거리(focal length)를 나타낼 수 있다. 여기서, 베이스라인 거리는 뷰 1 및 뷰 2의 비디오를 촬영하기 위해 사용된 두 카메라 간의 거리를 나타낼 수 있고, 초점 거리는 뷰 1에 대응되는 카메라의 초점에서 이미지 평면(image plane)까지의 거리를 나타낼 수 있다. 그리고, Znear은 뷰 1에 대응되는 카메라가 촬영한 장면에서 가장 작은 깊이 값을 나타내고, Zfar는 뷰 1에 대응되는 카메라가 촬영한 장면에서 가장 큰 깊이 값을 나타낼 수 있다. 상술한 B, f, Znear 및 Zfar는 모두 카메라 파라미터에 해당될 수 있다.
뷰 1의 깊이 맵(820)에 포함된 픽셀들은 상술한 과정에 의해 뷰 2로 매핑되거나 및/또는 워핑될 수 있고, 매핑되거나 및/또는 워핑된 가상 뷰 깊이 픽셀들은 뷰 2의 가상 뷰 깊이 맵(830)을 구성할 수 있다.
한편, 상술한 뷰 합성(view synthesis) 과정을 통해 생성된 가상 뷰 깊이 맵(830, VD2’)에는 픽셀 값이 채워지지 않은 홀(hole)이 존재할 수 있다. 도 8의 840 및 850은 가상 뷰 깊이 맵(830)에 존재하는 홀을 채우는 방법을 도시한다.
도 8의 840을 참조하면, 가상 뷰 깊이 맵(830)에는 픽셀 값이 채워지지 않은 홀(845, X)이 존재할 수 있다. 이 때, 부호화기 및 복호화기는 미디언 필터링(median filtering) 방식을 기반으로, 가상 뷰 깊이 맵(830)에 존재하는 홀을 채워줄 수 있다.
미디언 필터링 방식에 의하면, 부호화기 및 복호화기는 홀(845) 주변에 존재하는 8개의 주변 픽셀(주변 픽셀 1 내지 주변 픽셀 8)의 픽셀 값들을 크기 순서대로 정렬(sorting)할 수 있다. 이 때, 부호화기 및 복호화기는 정렬된 픽셀 값들 중에서 중간 값에 해당되는 픽셀 값을 상기 홀(845)에 채워 넣을 수 있다. 미디언 필터링 방식을 기반으로 홀(845)을 채우는 과정은 일 실시예로 다음과 같은 슈도 코드(pseudo code)에 의해 나타내어질 수 있다.
Figure PCTKR2012009208-appb-I000002
여기서, ‘Buf’는 홀(845) 주변에 존재하는 8개의 주변 픽셀의 픽셀 값이 저장되는 버퍼를 나타낼 수 있다. 또한, ‘P[i]’는 상기 주변 픽셀 i의 픽셀 값을 나타내고, ‘th’는 버퍼에 저장되는 픽셀 값 개수의 임계 값을 나타낼 수 있다. 그리고, ‘Sort(Buf)’는 버퍼에 저장된 픽셀 값들을 크기 순으로 정렬하는 것을 나타낼 수 있다. 또한, ‘hole’은 홀(845)을 나타내고, X는 홀(845)에 채워지는 픽셀 값을 나타낼 수 있다.
도 8의 850을 참조하면, 미디언 필터링이 수행된 후에도 가상 뷰 깊이 맵(830)에는 픽셀 값이 채워지지 않은 홀(855, X)이 존재할 수 있다. 이 때, 부호화기 및 복호화기는 인페인팅(inpainting) 방식을 기반으로, 가상 뷰 깊이 맵(830)에 존재하는 홀을 채워줄 수 있다.
인페인팅 방식에 의하면, 좌측 뷰에 해당되는 픽쳐를 기반으로 우측 뷰에 해당되는 가상 뷰 픽쳐가 생성되는 경우에는, 홀(855)의 좌측에 인접한 주변 픽셀(주변 픽셀 1)의 픽셀 값이 상기 홀(855)에 채워질 수 있다. 또한, 우측 뷰에 해당되는 픽쳐를 기반으로 좌측 뷰에 해당되는 가상 뷰 픽쳐가 생성되는 경우에는, 홀(855)의 우측에 인접한 주변 픽셀(주변 픽셀 2)의 픽셀 값이 상기 홀(855)에 채워질 수 있다.인페인팅 방식을 기반으로 홀(855)을 채우는 과정은 일 실시예로 다음과 같은 슈도 코드에 의해 나타내어질 수 있다.
Figure PCTKR2012009208-appb-I000003
여기서, ‘P(1)’은 주변 픽셀 1의 픽셀 값을 나타내고, ‘P(2)’는 주변 픽셀 2의 픽셀 값을 나타낼 수 있다. 또한, to_right_warp는 좌측 뷰에 해당되는 픽쳐를 기반으로 우측 뷰에 해당되는 가상 뷰 픽쳐가 생성되는지 여부, 즉 우측 방향 워핑이 수행되는지 여부를 지시하는 플래그 정보에 해당될 수 있다. 그리고, X는 홀(855)에 채워지는 픽셀 값을 나타낼 수 있다.

도 9는 멀티 뷰 비디오에 대한 머지 스킵 모드에서 머지 후보 리스트 생성에 사용되는 머지 후보들의 실시예를 개략적으로 나타내는 도면이다.
도 9의 실시예는 다른 언급이 없는 한 부호화기 및 복호화기에 동일한 방식으로 적용될 수 있다. 또한, 도 9의 실시예는 머지 스킵 모드를 기준으로 서술되지만 머지 모드에도 동일하거나 유사한 방식으로 적용될 수 있다. 그리고, 도 9의 실시예는 깊이 맵을 기준으로 서술되지만 이에 한정되지 않고 텍스쳐 픽쳐에도 동일하거나 유사한 방식으로 적용될 수 있다.
도 9는 두 개의 뷰에 대해 머지 스킵 모드(및/또는 머지 모드) 예측이 수행되는 경우의 머지 후보들이 도시된다. 그러나, 본 발명은 이에 한정되는 것이 아니며 도 9의 실시예에 따른 머지 후보 도출 방법은 세 개 이상의 뷰에 대해 예측이 수행되는 경우에도 도 9의 실시예에서와 동일하거나 유사한 방식으로 적용될 수 있다.
도 9를 참조하면, 두 개의 뷰를 갖는 멀티 뷰 비디오에서는, t-1의 POC 값을 갖는 뷰0의 텍스쳐 픽쳐(920, VT0), t의 POC 값을 갖는 뷰0의 텍스쳐 픽쳐(930, VT0), t-1의 POC 값을 갖는 뷰1의 텍스쳐 픽쳐(940, VT1) 및 t의 POC 값을 갖는 뷰1의 텍스쳐 픽쳐(950, VT1)가 존재할 수 있다. 또한, 상술한 바와 같이 멀티 뷰 비디오에서는 텍스쳐 픽쳐 각각에 대응되는 깊이 맵이 존재할 수 있다. 따라서, 도 9의 실시예에서는 t-1의 POC 값을 갖는 뷰0의 깊이 맵(960, VD0), t의 POC 값을 갖는 뷰0의 깊이 맵(970, VD0), t-1의 POC 값을 갖는 뷰1의 깊이 맵(980, VD1) 및 t의 POC 값을 갖는 뷰1의 깊이 맵(910, VD1)이 존재할 수 있다.
도 9에서 각각의 픽쳐들(예를 들어, 텍스쳐 픽쳐 또는 깊이 맵)은 뷰 식별자를 가질 수 있다. 여기서, 뷰 식별자는 일례로 ‘viewID’로 나타내어질 수 있다. 이 때, 뷰0의 픽쳐가 갖는 viewID에는 0이 할당될 수 있고(viewID=0), 뷰1의 픽쳐가 갖는 viewID에는 1이 할당될 수 있다(viewID=1).
도 9에서 예측 대상이 되는 현재 블록(913)은 t의 POC 값을 갖는 뷰1의 깊이 맵(910)에 포함된 깊이 블록이라 가정한다. 따라서, 도 9의 실시예에서는 현재 블록(913)이 속한 현재 뷰의 viewID는 1이고, 현재 블록(913)이 속한 현재 깊이 맵(910)의 POC 값은 t에 해당될 수 있다. 또한, 도 9에서 블록 920, 930, 940, 950, 960, 970 및 980은 이미 부호화/복호화가 완료된 픽쳐라 가정한다.
도 9 에서는 현재 픽쳐와 다른 POC 값을 갖는 픽쳐들(920, 940, 960, 980)의 POC 값이 t-1인 경우의 실시예가 도시된다. 그러나, 본 발명은 이에 한정되는 것은 아니며, 상기 픽쳐들(920, 940, 960, 980)이 t-m(m은 0이 아닌 정수)의 POC 값을 갖는 픽쳐들인 경우에도 후술되는 실시예들은 동일하거나 유사한 방법으로 적용될 수 있다.
도 9를 참조하면, 멀티 뷰 비디오에서는 현재 블록(913)의 상단에 인접한 블록들 중에서 가장 우측에 위치한 우측 블록(B, 916) 및 현재 블록(913)의 좌측에 인접한 블록들 중에서 가장 하단에 위치한 좌측 블록(B, 919)의 움직임 정보가 공간적 머지 후보로 사용될 수 있다. 여기서, 각각의 주변 블록은 일례로 PU일 수 있다. 상술한 바와 같이, 멀티 뷰 비디오 및/또는 깊이 비디오에서는 데이터 값의 분포가 단순할 확률이 높고 현재 블록(913)의 주변에 위치한 주변 블록들이 모두 유사한 값을 갖는 경우가 많이 발생될 수 있다. 따라서, 멀티 뷰 비디오에서는 이러한 특성을 고려하여 현재 블록(913)에 인접한 두 개의 블록이 머지 후보 블록으로 사용될 수 있다.
다시 도 9를 참조하면, 예측부는 현재 블록(913)과 동일한 뷰(뷰1)에 속하면서 t-1의 POC 값(현재 픽쳐(910)의 POC 값이 아닌 다른 POC 값)을 갖는 깊이 맵(980)으로부터 도출된, 콜 블록(C, 985)의 움직임 정보를 시간적 머지 후보로 사용할 수 있다. 여기서, 콜 블록(C, 985)은 일례로 PU일 수 있다. 깊이 맵(980)으로부터 머지 후보 블록으로 사용되는 콜 블록(C, 985)을 도출하는 과정은 도 4의 실시예에서와 유사하므로 여기서는 이에 대한 구체적인 설명은 생략하기로 한다.
다시 도 9를 참조하면, 예측부는 GDV(Global Disparity Vector)를 기반으로, 다른 뷰(뷰0)에 속한 깊이 맵(970)에서 현재 블록(913)에 대응되는 참조 블록(D, 975)을 도출할 수 있다. 여기서, 상기 다른 뷰(뷰0)에 속한 깊이 맵(970)은 현재 깊이 맵(910)과 동일한 POC 값을 갖는 깊이 맵일 수 있다. 이 때, 예측부는 상기 도출된 참조 블록(D, 975)의 움직임 정보를 현재 블록(913)의 머지 후보로 사용할 수 있다. GDV를 기반으로 한 머지 후보 도출 방법의 구체적인 실시예는 도 6에서 상술한 바 있으므로, 여기서는 생략하기로 한다.
한편, 상술한 바와 같이 깊이 비디오는 상기 깊이 비디오와 동일한 뷰 및 동일한 POC 값을 갖는 텍스쳐 비디오와 유사한 움직임 정보를 가질 수 있다. 따라서, 예측부는 현재 깊이 맵(910)과 동일한 뷰(뷰1)에 속하면서(예를 들어, 현재 깊이 맵(910)과 동일한 viewID를 가지면서) 동일한 POC 값을 갖는 텍스쳐 참조 픽쳐(950) 내에 존재하는 텍스쳐 참조 블록(E, 955)의 움직임 정보를 현재 블록(913)의 머지 후보로 사용할 수 있다. 이 때, 상기 텍스쳐 참조 블록(955)은 텍스쳐 참조 픽쳐(950)에서, 현재 블록(913) 내의 가장 좌측 상단에 위치한 픽셀과 공간적으로 동일한 위치에 존재하는 픽셀을 포함하는 블록일 수 있다. 또한, 상기 텍스쳐 참조 블록(955)은 일례로 PU일 수 있다.
다시 도 9를 참조하면, 예측부는 현재 깊이 맵(910)과 다른 뷰(뷰0)에 속한 깊이 맵(970)에 대해 워핑을 수행함으로써 생성된 가상 뷰 깊이 맵(990) 내의 워프 블록(F, 995)을 머지 후보로 사용할 수도 있다. 여기서, 상기 다른 뷰(뷰0)에 속한 깊이 맵(970)은 현재 깊이 맵(910)과 동일한 POC 값을 갖는 깊이 맵일 수 있다. 또한, 상기 가상 뷰 깊이 맵(990)은 현재 깊이 맵(910)이 속한 뷰(뷰1)에 대응되는 깊이 맵일 수 있다.
워프 블록(995)이 머지 후보로 사용되는 경우에는 다른 머지 후보들(A, B, C, D, E)의 경우와 달리, 워프 블록(955) 내의 픽셀 값들이 현재 블록(913) 내의 픽셀들에 대한 예측 값 및/또는 예측자(predictor)로 사용될 수 있다. 즉, 워프 블록(955)은 현재 블록(913)에 대응되는 예측 블록에 해당될 수 있다. 가상 뷰 깊이 맵(990) 생성 과정 및 워프 블록(955) 도출 과정의 구체적인 실시예들은 도 7 및 도 8에서 상술한 바 있으므로, 여기서는 이에 대한 설명은 생략하기로 한다.
상술한 실시예에 의하면, 멀티 뷰 비디오에 대한 머지 스킵 모드(및/또는 머지 모드)에서는, 멀티 뷰 비디오의 특성 및/또는 깊이 비디오의 특성을 반영하여 최대 5종류(예를 들어, 도 9의 실시예에서와 같이 최대 6개)의 머지 후보가 도출될 수 있다. 상술한 실시예에서 예측부는 6개의 머지 후보를 도출하지만, 본 발명은 이에 한정되는 것은 아니다. 일례로, 예측부는 상술한 실시예에 따른 머지 후보들 중에서 일부만을 도출하여 머지 후보로 사용할 수도 있으며, 추가의 머지 후보를 도출할 수도 있다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능함을 인식할 수 있을 것이다.

도 10은 본 발명에 따라, 부호화기에서 멀티 뷰 비디오의 머지 스킵에 관한 정보를 전송하는 방법의 일 실시예를 개략적으로 나타내는 흐름도이다.
도 10의 실시예에서, 머지 후보 A, B, C, D, E 및 F는 각각 도 9의 실시예에 도시된 머지 후보 A, B, C, D, E 및 F와 동일한 방식으로 도출되는 머지 후보를 의미할 수 있다. 도 10에서는 A, B, C, D, E 및 F가 모두 머지 후보로 사용되는 경우의 실시예가 서술된다. 그러나, 본 발명은 이에 한정되는 것은 아니며, 도 10의 실시예는 A, B, C, D, E 및 F 중에서 일부가 머지 후보로 사용되지 않거나 추가의 머지 후보가 도출되는 경우에도 동일하거나 유사한 방식으로 적용될 수 있다.
또한, 도 10의 실시예는 머지 스킵 모드를 기준으로 서술되지만 머지 모드에도 동일하거나 유사한 방식으로 적용될 수 있다.
도 10을 참조하면, 부호화기는 현재 블록에 대한 머지 후보를 도출할 수 있다(S1010). 여기서, 현재 블록이라 함은 예측 대상이 되는 블록으로서 텍스쳐 블록 및/또는 깊이 블록에 해당될 수 있다. 또한, 상기 현재 블록은 일례로 PU일 수 있다.
도 10의 실시예에서, 현재 블록에 대해 도출되는 머지 후보는 머지 후보 A, B, C, D, E 및 F일 수 있다. 상기 머지 후보들은 멀티 뷰 비디오의 특성을 고려하여 도출되는 머지 후보들이다. 멀티 뷰 비디오에 대한 머지 후보 도출 방식의 구체적인 실시예들은 상술한 바 있으므로, 여기서는 생략하기로 한다.
다시 도 10을 참조하면, 부호화기는 도출된 머지 후보를 기반으로 현재 블록에 대한 머지 후보 리스트를 생성할 수 있다(S1020).
현재 블록에 대한 머지 후보 도출 과정에서 사용되는 머지 후보 블록들(A, B, C, D, E) 중에서는 유효한 움직임 정보를 포함하지 않는 블록이 있을 수 있다. 이러한 경우, 부호화기는 유효한 움직임 정보를 포함하지 않는 블록(및/또는 상기 블록의 움직임 정보)을 머지 후보 리스트에 추가하거나 삽입하지 않을 수 있다. 다만, 머지 후보 F(워프 블록)가 현재 블록의 예측에 사용되는 경우에는 워프 블록의 픽셀 값들이 현재 블록의 픽셀 값으로 사용될 수 있으므로, 현재 블록에 대한 머지 후보 F는 움직임 정보 포함 여부에 관계 없이 현재 블록의 머지 후보 리스트에 추가될 수 있다.
이하, 머지 후보를 기반으로 현재 블록에 대한 머지 후보 리스트를 생성하는 과정을 두 가지의 실시예로 나누어 서술하기로 한다.
[ 실시예 1 ]
일 실시예로, 인트라 예측이 수행된 블록은 유효한 움직임 정보를 포함하지 않으므로, 머지 후보 블록 A, B, C, D 및 E 중에서 예측 모드가 인트라 모드인 블록은 유효(available)하지 않은 것으로 간주되거나 및/또는 처리될 수 있다. 이 때, 예측 모드가 인트라 모드인 블록은 머지 후보 블록으로 사용되지 않을 수 있고, 상기 블록의 움직임 정보는 머지 후보 리스트에 추가되지 않을 수 있다.
또한, 현재 블록에 대한 머지 후보 블록들 중에서는 머지 스킵 모드(및/또는 머지 모드) 예측이 수행된 머지 후보 블록이 존재할 수 있다. 이 때, 상기 머지 후보 블록은, 현재 블록에서와 동일한 방식으로 도출된 머지 후보를 기반으로 예측이 수행된 블록일 수 있다. 따라서, 이러한 경우 머지 후보 블록은 상기 머지 후보 블록에 대응되는 워프 블록을 기반으로 예측이 수행된 블록일 수도 있다. 여기서, 머지 후보 블록에 대응되는 워프 블록은, 머지 후보 블록과 다른 뷰에 속한 픽쳐(여기서, 상기 픽쳐는 일례로 상기 머지 후보 블록과 동일한 POC 값을 갖는 픽쳐일 수 있음)에 대해 워핑을 수행함으로써 생성된 가상 뷰 픽쳐(머지 후보 블록이 속한 뷰에 대응되는 가상 뷰 픽쳐) 내의 블록일 수 있다.
머지 스킵 모드(및/또는 머지 모드) 예측이 수행된 머지 후보 블록으로서, 워핑에 의해 생성된 가상 뷰 픽쳐 내의 워프 블록을 기반으로 예측이 수행된 머지 후보 블록은, 유효한 움직임 정보를 포함하지 않을 수 있다. 이는 워프 블록을 기반으로 예측이 수행되는 경우에는, 상기 워프 블록의 픽셀 값들이 예측이 수행되는 블록 내 픽셀들의 예측 값으로 사용될 수 있기 때문이다. 여기서, 워프 블록을 기반으로 예측이 수행된 머지 후보 블록의 머지 인덱스(예를 들어, merge_idx)는 상기 머지 후보 블록의 예측에 사용된 머지 후보 리스트 내에서 머지 후보 F를 지시할 수 있다. 여기서, 머지 후보 블록의 예측에 사용된 머지 후보 F는 상기 머지 후보 블록에 대해 도출된 머지 후보로서, 현재 블록의 예측에 사용되는 머지 후보 F와는 다를 수 있다.
이하, 본 명세서에서는 설명의 편의상 워프 블록을 기반으로 머지 스킵 모드 예측(및/또는 머지 모드 예측)이 수행된 머지 후보 블록, 즉 예측 모드가 머지 스킵 모드(및/또는 머지 모드)이고 머지 인덱스(예를 들어, merge_idx)가 머지 후보 F를 지시하는 머지 후보 블록은 ‘워핑 모드 머지 후보 블록’이라 한다. 여기서, 머지 후보 F는 머지 후보 블록의 예측에 사용된 머지 후보 리스트 내의 머지 후보를 나타낼 수 있다. 따라서, 상기 머지 후보 F는 현재 블록의 예측에 사용되는 머지 후보 F와 다를 수 있다. 또한, 본 명세서에서, 워핑 모드 머지 후보 블록에 대응되는 머지 후보는 ‘워핑 모드 머지 후보’라 한다.
현재 블록에 대한 머지 후보 블록 A, B, C, D 및 E 중에서 워핑 모드 머지 후보 블록에 해당되는 블록은 유효(available)하지 않은 것으로 간주되거나 및/또는 처리될 수 있다. 이 때, 워핑 모드 머지 후보 블록에 해당되는 블록은 머지 후보 블록으로 사용되지 않을 수 있고, 상기 블록의 움직임 정보는 머지 후보 리스트에 추가되지 않을 수 있다.
이 때, 부호화기는 A, B, C, D, E 및 F 중에서 유효한 머지 후보들을 현재 블록의 머지 후보 리스트에 추가하거나 삽입할 수 있다. 즉, 머지 후보 리스트는 A, B, C, D, E 및 F 중에서 유효한 머지 후보들로 구성될 수 있다. 이 경우, 머지 후보 A, B, C, D 및 E 중에서는 서로 동일한 복수의 머지 후보들이 존재할 수 있다. 서로 동일한 복수의 머지 후보가 존재하는 경우, 부호화기는 상기 서로 동일한 복수의 머지 후보 중에서 우선순위가 가장 높은 하나의 머지 후보를 제외한 나머지 머지 후보를 제거하고 머지 후보 리스트에 추가하지 않을 수 있다.
중복된 머지 후보를 제외한 유효한 머지 후보들이 모두 머지 후보 리스트에 추가된 경우에도, 머지 후보 리스트에 포함된 머지 후보의 개수는 5보다 작을 수 있다. 이러한 경우, 부호화기는 이미 머지 후보 리스트에 추가된 머지 후보 중에서 머지 후보 F를 제외한 나머지 머지 후보들을 기반으로 새로운 머지 후보를 도출하여 머지 후보 리스트에 추가할 수 있다. 이 때, 부호화기는 머지 후보 리스트를 구성하는 머지 후보의 개수가 5개가 될 때까지 새로운 머지 후보를 추가할 수 있다.
이미 머지 후보 리스트에 추가된 머지 후보 중에서 머지 후보 F를 제외한 나머지 머지 후보들을 기반으로 도출되는 새로운 머지 후보에는 CB(combined bi-predictive candidate), NB(non-scaled bi-predictive candidate) 및/또는 Zero(zero motion candidate) 등이 있을 수 있다. 이 때, 새로운 머지 후보들은 일례로 CB, NB 및 Zero의 순서대로 머지 후보 리스트에 삽입되거나 추가될 수 있다. 그러나, 본 발명은 이에 한정되는 것은 아니며 새로이 도출되는 머지 후보는 CB, NB, Zero 중에서 일부일 수도 있으며, 상기 CB, NB, Zero 외에 추가의 머지 후보가 새로이 도출될 수도 있다.
[ 실시예 2]
부호화기는 ‘실시예 1’에서와 마찬가지로, 머지 후보 블록 A, B, C, D 및 E 중에서 예측 모드가 인트라 모드인 블록을 유효(available)하지 않은 것으로 간주하거나 및/또는 처리할 수 있다. 이 때, 예측 모드가 인트라 모드인 블록은 머지 후보 블록으로 사용되지 않을 수 있고, 상기 블록의 움직임 정보는 머지 후보 리스트에 추가되지 않을 수 있다.
그러나, ‘실시예 1’에서와 달리, 부호화기는 현재 블록에 대한 머지 후보 블록 A, B, C, D 및 E 중에서 워핑 모드 머지 후보 블록은 유효한 것으로 처리할 수도 있다. 이 경우, 머지 후보 리스트에는 워핑 모드 머지 후보 블록에 대응되는 머지 후보가 추가되거나 삽입될 수 있다. 워핑 모드 머지 후보 블록에 대해서는 상술한 바 있으므로, 여기서는 이에 대한 구체적인 설명은 생략하기로 한다.
이 때, 부호화기는 A, B, C, D, E 및 F 중에서 유효한 머지 후보들을 현재 블록의 머지 후보 리스트에 추가하거나 삽입할 수 있다. 즉, 머지 후보 리스트는 A, B, C, D, E 및 F 중에서 유효한 머지 후보들로 구성될 수 있다. 이 경우, 머지 후보 A, B, C, D 및 E 중에서는 서로 동일한 복수의 머지 후보들이 존재할 수 있다. 서로 동일한 복수의 머지 후보가 존재하는 경우, 부호화기는 상기 서로 동일한 복수의 머지 후보 중에서 우선순위가 가장 높은 하나의 머지 후보를 제외한 나머지 머지 후보를 제거하고 머지 후보 리스트에 추가하지 않을 수 있다.
중복된 머지 후보를 제외한 유효한 머지 후보들이 모두 머지 후보 리스트에 추가된 경우에도, 머지 후보 리스트에 포함된 머지 후보의 개수는 5보다 작을 수 있다. 이러한 경우, 부호화기는 이미 머지 후보 리스트에 추가된 머지 후보 중에서, 워핑 모드 머지 후보 및 머지 후보 F를 제외한 나머지 머지 후보들을 기반으로 새로운 머지 후보를 도출하여 머지 후보 리스트에 추가할 수 있다. 이 때, 부호화기는 머지 후보 리스트를 구성하는 머지 후보의 개수가 5개가 될 때까지 새로운 머지 후보를 추가할 수 있다.
이미 머지 후보 리스트에 추가된 머지 후보 중에서 워핑 모드 머지 후보 및 머지 후보 F를 제외한 나머지 머지 후보들을 기반으로 도출되는 새로운 머지 후보에는 CB(combined bi-predictive candidate), NB(non-scaled bi-predictive candidate) 및/또는 Zero(zero motion candidate) 등이 있을 수 있다. 이 때, 새로운 머지 후보들은 일례로 CB, NB 및 Zero의 순서대로 머지 후보 리스트에 삽입되거나 추가될 수 있다. 그러나, 본 발명은 이에 한정되는 것은 아니며 새로이 도출되는 머지 후보는 CB, NB, Zero 중에서 일부일 수도 있으며, 상기 CB, NB, Zero 외에 추가의 머지 후보가 새로이 도출될 수도 있다.
다시 도 10을 참조하면, 부호화기는 생성된 머지 후보 리스트를 기반으로 현재 블록의 머지 인덱스를 도출하고 도출된 머지 인덱스를 부호화하여 복호화기로 전송할 수 있다(S1030).
여기서, 현재 블록의 머지 인덱스는 머지 후보 리스트를 구성하는 복수의 머지 후보 중에서 상기 현재 블록의 예측에 사용되는 머지 후보를 지시할 수 있다. 일 실시예로, 현재 블록의 머지 인덱스가 머지 후보 A, B, C, D 및 E 중에서 하나를 지시하는 경우, 상기 머지 인덱스는 현재 블록의 예측에 사용될 움직임 정보를 갖는 머지 후보를 지시할 수 있다. 또한, 현재 블록의 머지 인덱스가 머지 후보 F를 지시하는 경우, 상기 머지 인덱스는 현재 블록에 대응되는 워프 블록의 픽셀 값들이 상기 현재 블록의 픽셀들의 예측 값으로 사용됨을 지시할 수 있다. 따라서, 이 경우 현재 블록에 대응되는 워프 블록은 현재 블록의 예측 블록에 해당될 수 있다. 일례로, 머지 스킵 모드에서는 잔차 신호의 전송이 생략되므로, 현재 블록에 대응되는 워프 블록이 현재 블록의 복원 블록으로서 이용될 수 있다.
머지 인덱스가 도출되면, 부호화기는 도출된 머지 인덱스에 대해 엔트로피 부호화를 수행할 수 있다. 엔트로피 부호화된 머지 인덱스 정보는 복호화기로 전송될 수 있다. 이 때, 일례로 머지 인덱스는 merge_idx라는 신택스 요소(syntax element)를 통해 전송될 수 있다.

도 11은 본 발명에 따라, 복호화기에서 멀티 뷰 비디오의 머지 스킵 모드 예측을 수행하는 방법의 일 실시예를 개략적으로 나타내는 흐름도이다.
도 11의 실시예에서, 머지 후보 A, B, C, D, E 및 F는 각각 도 9의 실시예에 도시된 머지 후보 A, B, C, D, E 및 F와 동일한 방식으로 도출되는 머지 후보를 의미할 수 있다. 도 10에서는 A, B, C, D, E 및 F가 모두 머지 후보로 사용되는 경우의 실시예가 서술된다. 그러나, 본 발명은 이에 한정되는 것은 아니며, 도 11의 실시예는 A, B, C, D, E 및 F 중에서 일부가 머지 후보로 사용되지 않거나 추가의 머지 후보가 도출되는 경우에도 동일하거나 유사한 방식으로 적용될 수 있다.
또한, 도 11의 실시예는 머지 스킵 모드를 기준으로 서술되지만 머지 모드에도 동일하거나 유사한 방식으로 적용될 수 있다.
도 11을 참조하면, 복호화기는 부호화기로부터 현재 블록에 대해 부호화된 머지 인덱스를 수신하고, 수신된 머지 인덱스에 대해 엔트로피 복호화를 수행할 수 있다(S1110). 상술한 바와 같이, 현재 블록의 머지 인덱스는 머지 후보 리스트를 구성하는 복수의 머지 후보 중에서 상기 현재 블록의 예측에 사용되는 머지 후보를 지시할 수 있다. 여기서, 현재 블록이라 함은 예측 대상이 되는 블록으로서 텍스쳐 블록 및/또는 깊이 블록에 해당될 수 있다. 또한, 상기 현재 블록은 일례로 PU일 수 있다.
다시 도 11을 참조하면, 복호화기는 현재 블록에 대한 머지 후보를 도출할 수 있다(S1120). 이 때, 복호화기는 부호화기에서와 동일한 방식으로 상기 머지 후보를 도출할 수 있다.
도 11의 실시예에서, 현재 블록에 대해 도출되는 머지 후보는 머지 후보 A, B, C, D, E 및 F일 수 있다. 상기 머지 후보들은 멀티 뷰 비디오의 특성을 고려하여 도출되는 머지 후보들이다. 멀티 뷰 비디오에 대한 머지 후보 도출 방식의 구체적인 실시예들은 상술한 바 있으므로, 여기서는 생략하기로 한다.
다시 도 11을 참조하면, 복호화기는 도출된 머지 후보를 기반으로 현재 블록에 대한 머지 후보 리스트를 생성할 수 있다(S1130). 이 때, 복호화기는 부호화기에서와 동일한 방식으로 상기 머지 후보 리스트를 생성할 수 있다.
상술한 도 10의 실시예에서는 머지 후보를 기반으로 현재 블록의 머지 후보 리스트를 생성하는 과정이 두 가지의 실시예(실시예 1 및 실시예 2)로 나누어 서술된 바 있다. 이와 같은 머지 후보 리스트 생성 과정은 복호화기에도 동일한 방식으로 적용될 수 있다. 따라서, 여기에서는 머지 후보 리스트 생성 과정의 구체적인 실시예는 생략하기로 한다.
다시 도 11을 참조하면, 복호화기는 복호화된 머지 인덱스 및 생성된 머지 후보 리스트를 기반으로 현재 블록에 대해 예측을 수행함으로써, 상기 현재 블록에 대응되는 예측 블록을 생성할 수 있다(S1140). 이 때, 복호화기는 머지 인덱스를 기반으로 머지 후보 리스트를 구성하는 머지 후보들 중에서 현재 블록의 예측에 사용될 머지 후보를 선택할 수 있다. 상기 선택된 머지 후보는 머지 인덱스가 지시하는 후보에 해당될 수 있다.
현재 블록에 대한 예측 수행 과정은 머지 후보 리스트 생성 과정에 따라 달라질 수 있다. 상술한 도 10의 실시예에서는 머지 후보를 기반으로 현재 블록의 머지 후보 리스트를 생성하는 과정이 두 가지의 실시예(실시예 1 및 실시예 2)로 나누어 서술된 바 있다. 이하, 현재 블록에 대한 예측 수행 과정은 ‘실시예 1에 따라 머지 후보 리스트가 생성된 경우’ 및 ‘실시예 2에 따라 머지 후보 리스트가 생성된 경우’로 나누어 서술하기로 한다.
[ 실시예 1 에 따라 머지 후보 리스트가 생성된 경우 ]
실시예 1에 의하면, 예측 모드가 인트라 모드인 머지 후보 블록 및 워핑 모드 머지 후보 블록은 유효하지 않은 것으로 간주되거나 및/또는 처리될 수 있다. 따라서, 예측 모드가 인트라 모드인 머지 후보 블록의 움직임 정보 및 워핑 모드 머지 후보 블록의 움직임 정보는 머지 후보 리스트에 추가되지 않을 수 있다.
이 때, 일례로 머지 인덱스가 지시하는 머지 후보는 머지 후보 A, B, C, D 및 E 중에서 하나일 수 있다. 이 경우 복호화기는 머지 인덱스가 지시하는 머지 후보에 대응되는 움직임 정보를 현재 블록의 움직임 정보로 결정할 수 있다. 현재 블록의 움직임 정보가 결정되면, 복호화기는 결정된 움직임 정보를 기반으로 현재 블록에 대해 움직임 보상(motion compensation)을 수행함으로써 현재 블록에 대응되는 예측 블록을 생성할 수 있다. 여기서, 머지 후보로부터 도출되는 현재 블록의 움직임 정보에는 예측 방향(prediction direction), 참조 픽쳐 인덱스(reference picture index) 및 움직임 벡터(motion vector) 등이 있을 수 있다.
다른 예로 머지 인덱스가 지시하는 머지 후보는 머지 후보 F일 수 있다. 이 경우, 복호화기는 워핑 과정에 의해 생성된 가상 뷰 픽쳐 내에 존재하는, 워프 블록의 픽셀 값들을 카피하여 현재 블록의 픽셀들에 대한 예측 값 및/또는 예측자(predictor)로 사용할 수 있다. 즉, 복호화기는 워프 블록을 기반으로 현재 블록에 대응되는 예측 블록을 생성할 수 있다. 일례로, 복호화기는 워프 블록을 현재 블록에 대응되는 예측 블록으로 사용할 수 있다. 워프 블록 도출 과정의 구체적인 실시예는 상술한 바 있으므로, 여기서는 이에 대한 구체적인 설명은 생략하기로 한다.
[ 실시예 2에 따라 머지 후보 리스트가 생성된 경우 ]
실시예 2에 의하면, 예측 모드가 인트라 모드인 머지 후보 블록은 유효하지 않은 것으로 간주되거나 및/또는 처리될 수 있다. 따라서, 예측 모드가 인트라 모드인 머지 후보 블록의 움직임 정보는 머지 후보 리스트에 추가되지 않을 수 있다. 그러나, ‘실시예 1’에서와 달리, 워핑 모드 머지 후보 블록은 유효한 것으로 처리될 수도 있다. 이 경우 머지 후보 리스트에는 워핑 모드 머지 후보 블록에 대응되는 머지 후보가 추가되거나 삽입될 수 있다.
이 때 일례로, 머지 인덱스가 지시하는 머지 후보는 머지 후보 A, B, C, D 및 E 중에서 하나일 수 있고, 상기 머지 인덱스가 지시하는 머지 후보는 워핑 모드 머지 후보에 해당되지 않을 수 있다. 이 경우 복호화기는 머지 인덱스가 지시하는 머지 후보에 대응되는 움직임 정보를 현재 블록의 움직임 정보로 결정할 수 있다. 현재 블록의 움직임 정보가 결정되면, 복호화기는 결정된 움직임 정보를 기반으로 현재 블록에 대해 움직임 보상(motion compensation)을 수행함으로써 현재 블록에 대응되는 예측 블록을 생성할 수 있다. 여기서, 머지 후보로부터 도출되는 현재 블록의 움직임 정보에는 예측 방향(prediction direction), 참조 픽쳐 인덱스(reference picture index) 및 움직임 벡터(motion vector) 등이 있을 수 있다.
다른 예로 머지 인덱스가 지시하는 머지 후보는 머지 후보 A, B, C, D 및 E 중에서 하나이고, 상기 머지 인덱스에 의해 지시되는 머지 후보는 워핑 모드 머지 후보에 해당될 수도 있다.
이 경우 복호화기는 머지 인덱스가 지시하는 머지 후보 대신 머지 후보 F를 기반으로 현재 블록에 대한 예측을 수행할 수 있다. 즉, 복호화기는 머지 후보 F를 현재 블록의 예측에 사용될 머지 후보로 결정할 수 있다. 이 때, 일례로 복호화기는 머지 인덱스에 할당된 값을 머지 후보 F에 대응되는 값으로 변경하는 방법을 이용할 수도 있다. 즉, 머지 인덱스에 의해 지시되는 머지 후보가 워핑 모드 머지 후보인 경우, 머지 인덱스에는 머지 후보 F에 대응되는 인덱스 값이 재할당될 수 있다. 머지 후보 F를 기반으로 현재 블록에 대한 예측을 수행하는 경우, 복호화기는 워핑 과정에 의해 생성된 가상 뷰 픽쳐 내에 존재하는, 워프 블록의 픽셀 값들을 카피하여 현재 블록의 픽셀들에 대한 예측 값 및/또는 예측자(predictor)로 사용할 수 있다.
또 다른 예로 머지 인덱스가 지시하는 머지 후보는 머지 후보 F일 수 있다. 이 경우, 복호화기는 워핑 과정에 의해 생성된 가상 뷰 픽쳐 내에 존재하는, 워프 블록의 픽셀 값들을 카피하여 현재 블록의 픽셀들에 대한 예측 값 및/또는 예측자(predictor)로 사용할 수 있다. 즉, 복호화기는 워프 블록을 기반으로 현재 블록에 대응되는 예측 블록을 생성할 수 있다. 일례로, 복호화기는 워프 블록을 현재 블록에 대응되는 예측 블록으로 사용할 수 있다. 워프 블록 도출 과정의 구체적인 실시예는 상술한 바 있으므로, 여기서는 이에 대한 구체적인 설명은 생략하기로 한다.
상술한 과정(S1110 내지 S1140)에 의해 현재 블록에 대응되는 예측 블록이 생성되면 복호화기는 생성된 예측 블록을 기반으로 현재 블록에 대응되는 복원 블록을 생성할 수 있다. 일례로 머지 스킵 모드가 적용되는 경우에는 상술한 바와 같이 잔차 신호의 전송이 생략될 수 있다. 따라서, 머지 스킵 모드에서는 생성된 예측 블록이 복원 블록으로 사용될 수 있다. 머지 스킵 모드가 아닌 머지 모드에서는 잔차 신호가 부호화되어 복호화기로 전송될 수 있다. 이 때, 복호화기는 부호화된 잔차 신호를 복호화하여 잔차 블록을 생성할 수 있고, 잔차 블록과 예측 블록을 더하여 복원 블록을 생성할 수 있다.

한편, 상술한 도 7 및 도 8의 실시예에 의하면, 부호화기 및 복호화기는 현재 픽쳐(예를 들어, 가상 뷰 텍스쳐 픽쳐 또는 가상 뷰 깊이 맵)에 대해 부호화/복호화를 수행하기에 앞서, 다른 뷰의 복원된 참조 픽쳐에 대해 워핑을 수행함으로써, 현재 뷰(현재 블록이 속한 뷰)에 대응되는 가상 뷰 픽쳐(예를 들어, 가상 뷰 텍스쳐 픽쳐 또는 가상 뷰 깊이 맵)를 생성할 수 있다. 이 때, 가상 뷰 픽쳐 내에서 현재 블록과 공간적으로 동일한 위치에 존재하는 워프 블록의 픽셀 값은 현재 블록의 픽셀들에 대한 예측 값 및/또는 예측자로 사용될 수 있다.
워핑 과정에 의해 생성된 가상 뷰 픽쳐 및 현재 블록에 대응되는 워프 블록은 상술한 실시예들에서와 같이 머지 스킵 모드 예측 및/또는 머지 모드 예측을 위해 사용될 수도 있으나, 독립적인 인터-뷰(inter-view) 예측을 위해 사용될 수도 있다. 또한, 인터-뷰 예측의 방법으로서 스킵 모드가 적용될 수도 있다. 이 때, 상기 스킵 모드에서는 잔차 신호의 전송이 생략되고, 현재 블록에 대해 생성된 예측 블록이 상기 현재 블록에 대응되는 복원 블록으로 사용될 수 있다. 따라서, 상기 스킵 모드에서는 워프 블록의 픽셀 값들이 현재 블록의 픽셀들에 대한 복원 값으로 사용될 수 있다.
이하, 본 명세서에서는 설명의 편의상, 워핑 과정에 의해 생성된 가상 뷰 픽쳐 내의 워프 블록을 기반으로 적용되는 스킵 모드는 ‘가상 뷰 스킵 모드(virtual view skip mode)’라 한다. 여기서, 가상 뷰 스킵 모드는 상술한 머지 스킵 모드와는 다른 별개의 예측 모드에 해당될 수 있다.
가상 뷰 스킵 모드가 예측 모드로 사용되는 경우, 일례로 복호화기는 예측 대상 블록에 대한 가상 뷰 스킵 모드 적용 여부를 결정하기 위해 소정의 연산을 수행할 수 있다. 그러나, 이 경우에는 상기 소정의 연산을 수행하기 위해 발생되는 계산량이 많을 수 있고, 복호화기에서의 복잡도가 높아질 수 있다. 또한, 복호화기가 소정의 특정 연산을 수행하여 가상 뷰 스킵 모드 적용 여부를 결정하는 경우에는 가상 뷰 스킵 모드 적용 여부 결정을 위한 부호화기의 자유도가 낮아지므로, 최적화 구현을 통한 성능 향상을 기대하기 어려울 수 있다.
따라서, 상술한 문제점을 해결하여 복호화기의 복잡도를 감소시키고 부호화기 측에서의 최적화 구현을 통한 성능 향상이 가능해지도록 하기 위해, 블록 단위로 가상 뷰 스킵 모드에 관한 부가 정보를 전송하는 영상 정보 전송 방법 및 상기 부가 정보를 기반으로 하는 영상 복호화 방법이 제공될 수 있다.

도 12는 본 발명에 따라 부호화기에서 가상 뷰 스킵 모드에 관한 정보를 전송하는 방법의 일 실시예를 개략적으로 나타내는 흐름도이다.
도 12를 참조하면, 부호화기는 현재 블록에 대한 가상 뷰 스킵 모드 적용 여부를 결정할 수 있다(S1210). 이 때, 가상 뷰 스킵 모드 적용 여부는 부호화기 내 소정의 유닛, 예컨대 예측부에서 결정될 수 있다.
여기서, 현재 블록은 깊이 맵에 속한 깊이 블록일 수 있고 텍스쳐 픽쳐에 속한 텍스쳐 블록일 수도 있다. 특히, 깊이 비디오의 경우에는 서로 다른 뷰를 갖는 복수의 대응 픽셀들 간에 컬러 값의 차이 및/또는 변화로 인한 상관도 저하가 발생할 확률이 적다. 즉, 깊이 비디오에서는 텍스쳐 비디오에 비해 뷰 간의 상호 연관성이 높을 수 있다. 따라서, 깊이 블록에서는 워핑 방식을 기반으로 하는 가상 뷰 스킵 모드가 선택될 확률이 높을 수 있다.
다시 도 12를 참조하면, 부호화기는 현재 블록의 가상 뷰 스킵 플래그에 대해 엔트로피 부호화를 수행하고 부호화된 가상 뷰 스킵 플래그(virtual view skip flag)를 복호화기로 전송할 수 있다(S1220). 이 때, 상기 엔트로피 부호화는 부호화기 내 소정의 유닛, 예컨대 엔트로피 부호화부에서 수행될 수 있다.
여기서, 가상 뷰 스킵 플래그는 현재 블록에 대해 가상 뷰 스킵 모드가 적용되는지 여부를 지시하는 플래그에 해당될 수 있다. 일례로, 상기 가상 뷰 스킵 플래그는 vvskip_flag라는 신택스 요소를 통해 복호화기로 전송될 수 있다. 현재 블록에 대해 가상 뷰 스킵 모드가 적용되는 경우 vvskip_flag에는 1의 값이 할당될 수 있고, 현재 블록에 대해 가상 뷰 스킵 모드가 적용되지 않는 경우 vvskip_flag에는 0의 값이 할당될 수 있다.
한편, 상술한 바와 같이 멀티 뷰 비디오 및/또는 깊이 비디오에서는 워핑 방식을 기반으로 하는 가상 뷰 스킵 모드가 선택될 확률이 높을 수 있다. 따라서, 부호화기는 이러한 멀티 뷰 비디오 및/또는 깊이 비디오의 특성을 고려하여 복호화기로 전송되는 부가 정보의 양을 최소화할 수 있다.
일례로, 가상 뷰 스킵 모드는 CU 단위로 결정될 수 있다. 즉, 가상 뷰 스킵 모드 적용 여부가 결정되는 현재 블록은 CU일 수 있다. 이 때, 가상 뷰 스킵 플래그는 코딩 유닛 신택스(coding unit syntax) 내에서 정의될 수 있다. 따라서, 각각의 CU마다 가상 뷰 스킵 플래그가 부호화되어 복호화기로 전송될 수 있다.
또한 이 경우, 가상 뷰 스킵 플래그는 현재 블록의 부호화/복호화에 관련된 복수의 신택스 요소 중에서 가장 상위에 위치할 수 있다. 여기서, 상기 복수의 신택스 요소는 각각 코딩 유닛 신택스 및/또는 상기 코딩 유닛 신택스의 하위 신택스 내에서 정의되는 신택스 요소일 수 있다. 예를 들어, 상기 복수의 신택스 요소는 현재 블록이 가질 수 있는 예측 모드를 나타내는 복수의 신택스 요소를 포함할 수 있다. 또한 여기서, 가상 뷰 스킵 플래그가 상위에 위치한다는 것은, 복호화기에서 가상 뷰 스킵 플래그가 현재 블록의 부호화/복호화에 관련된 다른 신택스 요소들(예를 들어, 현재 블록의 예측 모드에 관련된 다른 신택스 요소들)보다 우선적으로 판단됨을 의미할 수 있다. 따라서 가상 뷰 스킵 플래그가 현재 블록에 대해 가상 뷰 스킵 모드가 적용됨을 지시하는 경우, 부호화기는 현재 블록의 부호화/복호화에 관련된 다른 신택스 요소(예를 들어, 현재 블록의 예측 모드에 관련된 다른 신택스 요소)를 전송하지 않을 수 있다. 또한, 가상 뷰 스킵 플래그가 현재 블록에 대해 가상 뷰 스킵 모드가 적용되지 않음을 지시하는 경우, 부호화기는 현재 블록의 부호화/복호화에 관련된 다른 신택스 요소(예를 들어, 현재 블록의 예측 모드에 관련된 다른 신택스 요소)를 복호화기로 전송할 수 있다.
멀티 뷰 비디오 및/또는 깊이 비디오에서는 가상 뷰 스킵 모드가 선택될 확률이 높으므로, 상술한 실시예에서는 비트스트림에 추가되는 비트량이 최소화될 수 있고 복호화기에서의 계산량이 최소화될 수 있다.

도 13은 본 발명에 따라 복호화기에서 가상 뷰 스킵 모드에 관한 정보를 기반으로 복호화를 수행하는 방법의 일 실시예를 개략적으로 나타내는 흐름도이다.
도 13을 참조하면, 복호화기는 부호화된 가상 뷰 스킵 플래그를 수신하고 수신된 가상 뷰 스킵 플래그에 대해 엔트로피 복호화를 수행할 수 있다(S1310). 이 때, 엔트로피 복호화는 복호화기 내 소정의 유닛, 예컨대 엔트로피 복호화부에서 수행될 수 있다.
여기서, 가상 뷰 스킵 플래그는 현재 블록에 대해 가상 뷰 스킵 모드가 적용되는지 여부를 지시하는 플래그에 해당될 수 있다. 일례로, 상기 가상 뷰 스킵 플래그는 vvskip_flag라는 신택스 요소를 통해 복호화기로 전송될 수 있다.
다시 도 13을 참조하면, 복호화기는 복호화된 가상 뷰 스킵 플래그를 기반으로, 현재 블록의 예측 모드가 가상 뷰 스킵 모드인지를 판단할 수 있다(S1320). 즉, 복호화기는 복호화된 가상 뷰 스킵 플래그를 기반으로 현재 블록에 대해 가상 뷰 스킵 모드가 적용되는지 여부를 결정할 수 있다. 여기서, 현재 블록은 깊이 맵에 속한 깊이 블록일 수 있고 텍스쳐 픽쳐에 속한 텍스쳐 블록일 수도 있다.
도 12의 실시예에서 상술한 바와 같이, 멀티 뷰 비디오 및/또는 깊이 비디오에서는 워핑 방식을 기반으로 하는 가상 뷰 스킵 모드가 선택될 확률이 높을 수 있다. 따라서, 복호화기는 가상 뷰 스킵 플래그를 현재 블록의 복호화에 관련된 다른 신택스 요소들(예를 들어, 현재 블록의 예측 모드에 관한 다른 신택스 요소들)보다 우선적으로 판단함으로써, 비트스트림에 추가되는 비트량 및 복호화기에서의 계산량을 최소화할 수 있다.
일례로, 가상 뷰 스킵 모드는 CU단위로 결정될 수 있다. 즉, 가상 뷰 스킵 모드 적용 여부가 결정되는 현재 블록은 CU일 수 있다. 이 때, 부호화기는 각각의 CU마다 가상 뷰 스킵 플래그를 부호화하여 전송할 수 있고, 복호화기는 각각의 CU마다 가상 뷰 스킵 모드가 적용되는지 여부를 결정할 수 있다.
가상 뷰 스킵 모드가 CU 단위로 결정되는 경우, 가상 뷰 스킵 플래그는 코딩 유닛 신택스(coding unit syntax) 내에서 정의될 수 있다. 코딩 유닛 신택스에 포함되는 가상 뷰 스킵 플래그는, 일 실시예로 다음 표 1에 포함된 것과 같은 신택스 요소(syntax element)에 의해 정의될 수 있다. 표 1의 코딩 유닛 신택스에 속한 신택스 요소들 및 변수들의 명칭은 임의적인 것이며, 이와 동일하거나 유사한 기능을 갖는 신택스 요소들 및 변수들은 그 명칭에 관계 없이 본 발명의 권리 범위에 포함된다 할 것이다.
[표 1]
Figure PCTKR2012009208-appb-I000004

표 1의 실시예에서 ‘vvskip_flag’는 가상 뷰 스킵 플래그를 나타낼 수 있다. 또한, ‘depthmap’은 현재 CU가 속한 슬라이스(slice)가 깊이 맵에 포함된 슬라이스인지 여부를 나타내는 변수에 해당될 수 있다. 그리고 ‘otherview_avail’은 현재 CU와 다른 뷰에 속한 복호화된 픽쳐(여기서, 상기 픽쳐는 현재 CU가 속한 현재 픽쳐와 동일한 POC 값을 갖는 픽쳐일 수 있음)가 존재하는지 여부를 나타내는 변수에 해당될 수 있다. 여기서, ‘depthmap’ 및 ‘otherview_avail’는 각각 1 비트(1 bit)에 의해 나타내어지는 변수일 수 있다.
표 1을 참조하면, 복호화기는 현재 CU가 깊이 맵에 속한 CU이고 현재 CU와 다른 뷰에 속한 복호화된 픽쳐(여기서, 상기 픽쳐는 현재 CU가 속한 현재 픽쳐와 동일한 POC 값을 갖는 픽쳐일 수 있음)가 존재하는 경우, 가상 뷰 스킵 플래그를 기반으로 현재 블록에 대해 가상 뷰 스킵 모드가 적용되는지 여부를 결정할 수 있다. 즉, 표 1의 실시예에서는, 변수 ‘depthmap’ 및 ‘otherview_avail’에 할당된 값을 기반으로 가상 뷰 스킵 플래그의 복호화 여부가 결정될 수 있다.
그러나, 이러한 조건은 임의적인 것이며 본 발명은 표 1의 실시예에 나타내어진 조건에 한정되는 것은 아니다. 예를 들어, 가상 뷰 스킵 모드는 깊이 맵에 속한 CU뿐만 아니라, 텍스쳐 픽쳐에 속한 CU에도 적용될 수 있다. 즉 현재 CU가 텍스쳐 픽쳐에 속한 CU인 경우에도, 복호화기는 상기 현재 CU에 대한 가상 뷰 스킵 플래그를 복호화할 수 있다. 이 때 복호화기는 복호화된 가상 뷰 스킵 플래그를 기반으로 현재 블록에 대한 가상 뷰 스킵 모드 적용 여부를 결정할 수 있다.
다시 표 1을 참조하면, 가상 뷰 스킵 플래그는 현재 CU의 복호화에 관련된 복수의 신택스 요소(예를 들어, 현재 CU 및/또는 현재 CU에 속한 PU가 가질 수 있는 예측 모드를 나타내는 복수의 신택스 요소) 중에서 가장 상위에 위치할 수 있다. 상술한 바와 같이, 가상 뷰 스킵 플래그가 상위에 위치한다는 것은, 복호화기에서 가상 뷰 스킵 플래그가 현재 CU의 복호화에 관련된 다른 신택스 요소들보다 우선적으로 판단됨을 의미할 수 있다. 따라서, 가상 뷰 스킵 플래그가 현재 CU에 대해 가상 뷰 스킵 모드가 적용됨을 지시하는 경우에는, 상기 현재 CU의 복호화에 관련된 다른 신택스 요소들(예를 들어, 현재 CU 및/또는 현재 CU에 속한 PU의 예측 모드에 대한 다른 신택스 요소들)은 복호화기로 전송되지 않을 수 있다.
가상 뷰 스킵 플래그가 포함되는 코딩 유닛 신택스는 상술한 실시예에 한정되지 않는다. 표 1의 실시예에서, 가상 뷰 스킵 모드에 관한 신택스 요소를 제외한 다른 정보를 나타내는 신택스 요소들은 필요에 따라 다르게 적용될 수도 있다. 예를 들어, 가상 뷰 스킵 플래그가 포함되는 코딩 유닛 신택스는 다음 표 2의 실시예에서와 같이 정의될 수도 있다.
[표 2]
Figure PCTKR2012009208-appb-I000005

다시 도 13을 참조하면, 현재 블록의 예측 모드가 가상 뷰 스킵 모드인 경우, 복호화기는 가상 뷰 스킵 모드로 현재 블록에 대한 복호화를 수행할 수 있다(S1330).
가상 뷰 스킵 모드에서 복호화기는 워핑에 의해 생성된 가상 뷰 픽쳐 내에서 현재 블록과 공간적으로 동일한 위치에 존재하는 워프 블록의 픽셀 값을, 현재 블록의 픽셀들에 대한 예측 값 및/또는 예측자로 사용할 수 있다. 또한, 상술한 바와 같이 가상 뷰 스킵 모드에서는 잔차 신호의 전송이 생략되므로, 워프 블록의 픽셀 값들이 현재 블록의 픽셀들에 대한 복원 값으로 사용될 수 있다. 즉, 현재 블록에 대응되는 복원 블록은 워프 블록을 기반으로 생성될 수 있다.
다시 도 13을 참조하면, 현재 블록의 예측 모드가 가상 뷰 스킵 모드가 아닌 경우, 복호화기는 현재 블록이 가질 수 있는 복수의 예측 모드 중에서 가상 뷰 스킵 모드가 아닌 다른 예측 모드로 현재 블록에 대한 복호화를 수행할 수 있다(S1340). 여기서, 현재 블록이 가질 수 있는 예측 모드에는 인트라 모드, 인터 모드(예를 들어, 머지 스킵 모드, 머지 모드 및 MVP 모드) 및 인터-뷰(inter-view) 모드 등이 있을 수 있다.
가상 뷰 스킵 플래그가 현재 CU에 대해 가상 뷰 스킵 모드가 적용되지 않음을 지시하는 경우, 복호화기는 현재 블록의 부호화/복호화에 관련된 다른 신택스 요소들을 수신하여 복호화할 수 있다. 이 때 복호화기는 복호화된 정보를 기반으로, 가상 뷰 스킵 모드가 아닌 다른 예측 모드로 현재 블록에 대한 복호화를 수행할 수 있다.
멀티 뷰 비디오 및/또는 깊이 비디오에서는 가상 뷰 스킵 모드가 선택될 확률이 높으므로, 도 13의 실시예에서는 비트스트림에 추가되는 비트량이 최소화될 수 있고 복호화기에서의 계산량이 최소화될 수 있다.

상술한 본 발명의 실시예들에 의하면, 3D 비디오에 대한 부호화/복호화 효율이 향상될 수 있으며, 압축 성능이 향상될 수 있다.

상술한 실시예에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당업자라면 순서도에 나타낸 단계들이 배타적이지 않고, 다른 단계가 포함되거나 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.
상술한 실시예는 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.

Claims (18)

  1. 머지 인덱스(merge index)를 수신하여 복호화하는 단계;
    제1 뷰(view)의 제1 깊이 맵에 속한 제1 깊이 블록에 대해, 각각 하나의 블록에 대응되는 복수의 머지 후보를 도출하는 단계;
    상기 복수의 머지 후보를 기반으로, 상기 제1 깊이 블록의 머지 후보 리스트(merge candidate list)를 생성하는 단계;
    상기 머지 후보 리스트에서 상기 복호화된 머지 인덱스가 지시하는 머지 후보를 기반으로, 상기 제1 깊이 블록에 대응되는 예측 블록을 생성하는 단계; 및
    상기 예측 블록을 기반으로 상기 제1 깊이 블록에 대응되는 복원 블록을 생성하는 단계를 포함하되,
    상기 복수의 머지 후보 중에서 적어도 하나는, 상기 제1 깊이 맵과 동일한 POC(Picture Order Count) 값을 갖는 제2 뷰의 제2 깊이 맵을 기반으로 도출되는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  2. 제 1항에 있어서,
    상기 제1 깊이 블록의 예측 모드는 상기 제1 깊이 블록에 대한 잔차 신호의 전송이 생략되는 머지 스킵 모드(merge skip mode)이고,
    상기 복원 블록 생성 단계에서,
    상기 복원 블록 내의 복원 픽셀의 픽셀 값은, 상기 예측 블록 내의 예측 픽셀들 중에서 상기 복원 픽셀에 대응되는 예측 픽셀의 픽셀 값으로 결정되는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  3. 제 1항에 있어서,
    상기 복수의 머지 후보는, 상기 제1 뷰에 대응되는 제1 가상 뷰 픽쳐(virtual view picture) 내에서 상기 제1 깊이 블록과 공간적으로 동일한 위치에 존재하는 제1 워프 블록(warp block)을 기반으로 도출되는 가상 뷰 머지 후보를 포함하고,
    상기 제1 가상 뷰 픽쳐는 상기 제2 뷰에 속한 상기 제2 깊이 맵에 대해 워핑(warping)을 수행함으로써 생성된 픽쳐인 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  4. 제 3항에 있어서,
    상기 머지 인덱스가 지시하는 머지 후보가 상기 가상 뷰 머지 후보인 경우,
    상기 예측 블록 생성 단계에서,
    상기 예측 블록 내의 예측 픽셀의 픽셀 값은, 상기 제1 워프 블록 내의 워프 픽셀들 중에서 상기 예측 픽셀에 대응되는 워프 픽셀의 픽셀 값으로 결정되는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  5. 제 3항에 있어서,
    상기 머지 후보 리스트 생성 단계에서는,
    상기 복수의 머지 후보 중에서 워핑 모드 머지 후보를 제외한 나머지 머지 후보를 상기 머지 후보 리스트에 할당하고,
    상기 머지 후보 리스트에 할당된 머지 후보의 개수가 소정의 개수보다 작은 경우, 상기 머지 후보 리스트에 할당된 머지 후보 중에서 상기 가상 뷰 머지 후보를 제외한 나머지 머지 후보를 기반으로, 추가 머지 후보를 생성하여 상기 머지 후보 리스트에 할당하되,
    상기 워핑 모드 머지 후보는,
    머지 스킵 모드로 복호화가 수행된 워핑 모드 머지 후보 블록을 기반으로 도출된 머지 후보로서, 상기 복수의 머지 후보 중에서 상기 가상 뷰 머지 후보를 제외한 나머지 머지 후보 중 적어도 하나를 포함하고,
    상기 워핑 모드 머지 후보 블록은,
    제2 가상 뷰 픽쳐 내에서 상기 워핑 모드 머지 후보 블록과 공간적으로 동일한 위치에 존재하는 제2 워프 블록을 상기 워핑 모드 머지 후보 블록에 대응되는 예측 블록으로 이용함으로써 복호화가 수행된 블록이고,
    상기 제2 가상 뷰 픽쳐는,
    상기 워핑 모드 머지 후보 블록이 포함된 픽쳐와 다른 뷰에 속하고 동일한 POC 값을 갖는 픽쳐에 대해 워핑을 수행함으로써 생성된 픽쳐인 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  6. 제 5항에 있어서,
    상기 머지 인덱스가 지시하는 머지 후보가 상기 가상 뷰 머지 후보가 아닌 경우,
    상기 예측 블록 생성 단계는,
    상기 머지 인덱스가 지시하는 머지 후보에 대응되는 움직임 정보(motion information)를 상기 제1 깊이 블록의 움직임 정보로 결정하는 단계; 및
    상기 결정된 움직임 정보를 기반으로 상기 제1 깊이 블록에 대해 움직임 보상(motion compensation)을 수행함으로써 상기 제1 깊이 블록에 대응되는 예측 블록을 생성하는 단계를 더 포함하는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  7. 제 3항에 있어서,
    상기 머지 후보 리스트 생성 단계에서는,
    상기 복수의 머지 후보를 상기 머지 후보 리스트에 할당하고,
    상기 머지 후보 리스트에 할당된 머지 후보의 개수가 소정의 개수보다 작은 경우, 상기 머지 후보 리스트에 할당된 머지 후보 중에서 워핑 모드 머지 후보 및 상기 가상 뷰 머지 후보를 제외한 나머지 머지 후보를 기반으로, 추가 머지 후보를 생성하여 상기 머지 후보 리스트에 할당하되,
    상기 워핑 모드 머지 후보는,
    머지 스킵 모드로 복호화가 수행된 워핑 모드 머지 후보 블록을 기반으로 도출된 머지 후보로서, 상기 복수의 머지 후보 중에서 상기 가상 뷰 머지 후보를 제외한 나머지 머지 후보 중 적어도 하나를 포함하고,
    상기 워핑 모드 머지 후보 블록은,
    제2 가상 뷰 픽쳐 내에서 상기 워핑 모드 머지 후보 블록과 공간적으로 동일한 위치에 존재하는 제2 워프 블록을 상기 워핑 모드 머지 후보 블록에 대응되는 예측 블록으로 이용함으로써 복호화가 수행된 블록이고,
    상기 제2 가상 뷰 픽쳐는,
    상기 워핑 모드 머지 후보 블록이 포함된 픽쳐와 다른 뷰에 속하고 동일한 POC 값을 갖는 픽쳐에 대해 워핑을 수행함으로써 생성된 픽쳐인 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  8. 제 7항에 있어서,
    상기 머지 인덱스가 지시하는 머지 후보가 상기 가상 뷰 머지 후보가 아니고 상기 워핑 모드 머지 후보에 해당되지 않는 경우,
    상기 예측 블록 생성 단계는,
    상기 머지 인덱스가 지시하는 머지 후보에 대응되는 움직임 정보(motion information)를 상기 제1 깊이 블록의 움직임 정보로 결정하는 단계; 및
    상기 결정된 움직임 정보를 기반으로 상기 제1 깊이 블록에 대해 움직임 보상(motion compensation)을 수행함으로써 상기 제1 깊이 블록에 대응되는 예측 블록을 생성하는 단계를 더 포함하는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  9. 제 7항에 있어서,
    상기 머지 인덱스가 지시하는 머지 후보가 상기 가상 뷰 머지 후보가 아니고 상기 워핑 모드 머지 후보에 해당되는 경우,
    상기 예측 블록 생성 단계에서,
    상기 예측 블록 내의 예측 픽셀의 픽셀 값은, 상기 제1 워프 블록 내의 워프 픽셀들 중에서 상기 예측 픽셀에 대응되는 워프 픽셀의 픽셀 값으로 결정되는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  10. 제 1항에 있어서,
    상기 복수의 머지 후보는,
    상기 제1 깊이 블록의 좌측에 인접한 블록들 중에서 가장 하단에 위치한 블록의 움직임 정보 및 상기 제1 깊이 블록의 상단에 인접한 블록들 중에서 가상 우측에 위치한 블록의 움직임 정보를 포함하는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  11. 제 1항에 있어서,
    상기 복수의 머지 후보는,
    상기 제1 깊이 블록이 포함된 픽쳐와 동일한 뷰에 속하고 다른 POC 값을 갖는 참조 픽쳐 내에서, 동일 위치 블록에 대한 상대적인 위치로서 결정되는 콜 블록(Col block)의 움직임 정보를 포함하고,
    상기 동일 위치 블록은 상기 참조 픽쳐 내에서 상기 제1 깊이 블록과 공간적으로 동일한 위치에 존재하는 블록인 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  12. 제 1항에 있어서,
    상기 복수의 머지 후보는,
    상기 제2 깊이 맵 내에서, GDV(Global Disparity Vector)에 의해 지시되는 블록의 움직임 정보를 포함하고,
    상기 GDV는 상기 제1 뷰 및 상기 제2 뷰 간의 전체적인 변이를 나타내는 벡터인 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  13. 제 1항에 있어서,
    상기 복수의 머지 후보는,
    상기 제1 깊이 맵에 대응되는 텍스쳐 픽쳐 내에서, 상기 제1 깊이 블록 내의 가장 좌측 상단 픽셀과 공간적으로 동일한 위치에 존재하는 픽셀을 커버하는 블록의 움직임 정보를 포함하고,
    상기 텍스쳐 픽쳐는 상기 제1 깊이 맵과 동일한 뷰에 속한 픽쳐로서 상기 제1 깊이 맵과 동일한 POC 값을 갖는 픽쳐인 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  14. 현재 뷰 내의 복호화 대상 픽쳐에 속한 복호화 대상 블록에 대해 가상 뷰 스킵(virtual view skip) 모드가 적용되는지 여부를 지시하는 가상 뷰 스킵 플래그(virtual view skip flag) 정보를 수신하는 단계; 및
    상기 가상 뷰 스킵 플래그 정보에 기반하여, 상기 복호화 대상 블록에 대응되는 복원 블록을 생성하는 단계를 포함하되,
    상기 가상 뷰 스킵 모드는,
    상기 현재 뷰에 대응되는 가상 뷰 픽쳐 내에서 상기 복호화 대상 블록과 공간적으로 동일한 위치에 존재하는 워프 블록(warp block)을 기반으로 상기 복호화 대상 블록에 대한 예측이 수행되고, 상기 복호화 대상 블록에 대한 잔차 신호의 전송이 생략되는 예측 모드이고,
    상기 가상 뷰 픽쳐는 참조 뷰 내의 참조 픽쳐에 대해 워핑을 수행함으로써 생성된 픽쳐이고, 상기 현재 픽쳐와 상기 참조 픽쳐는 서로 동일한 POC 값을 가지는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  15. 제 14항에 있어서,
    상기 가상 뷰 스킵 모드의 적용 여부가 결정되는 단위는 CU(Coding Unit)이고, 상기 가상 뷰 스킵 플래그 정보는 코딩 유닛 신택스(coding unit syntax)에서 정의되는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  16. 제 15항에 있어서,
    상기 가상 뷰 스킵 플래그 정보는 상기 코딩 유닛 신택스에서 정의된 복호화에 관련된 다른 신택스 요소들(syntax elements)보다 우선적으로 판단되는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  17. 제 14항에 있어서,
    상기 가상 뷰 스킵 플래그 정보가 상기 복호화 대상 블록에 대해 가상 뷰 스킵 모드가 적용됨을 지시하는 경우,
    상기 복원 블록 생성 단계에서,
    상기 복원 블록 내의 복원 픽셀의 픽셀 값은, 상기 워프 블록 내의 워프 픽셀들 중에서 상기 복원 픽셀에 대응되는 워프 픽셀의 픽셀 값으로 결정되는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
  18. 제 14항에 있어서,
    상기 가상 뷰 스킵 플래그 정보가 상기 복호화 대상 블록에 대해 가상 뷰 스킵 모드가 적용되지 않음을 지시하는 경우,
    상기 복원 블록 생성 단계에서는,
    상기 복호화 대상 블록이 가질 수 있는 복수의 예측 모드 중에서 상기 가상 뷰 스킵 모드가 아닌 다른 예측 모드를 기반으로 상기 복원 블록을 생성하는 것을 특징으로 하는 멀티 뷰 비디오 복호화 방법.
PCT/KR2012/009208 2011-11-07 2012-11-02 영상 부호화/복호화 방법 및 그 장치 WO2013069933A1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161556286P 2011-11-07 2011-11-07
US201161556797P 2011-11-07 2011-11-07
US61/556,286 2011-11-07
US61/556,797 2011-11-07

Publications (1)

Publication Number Publication Date
WO2013069933A1 true WO2013069933A1 (ko) 2013-05-16

Family

ID=48290244

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2012/009208 WO2013069933A1 (ko) 2011-11-07 2012-11-02 영상 부호화/복호화 방법 및 그 장치

Country Status (1)

Country Link
WO (1) WO2013069933A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015005753A1 (ko) * 2013-07-12 2015-01-15 삼성전자 주식회사 깊이 기반 디스패리티 벡터를 이용하는 인터 레이어 비디오 복호화 방법 및 그 장치, 깊이 기반 디스패리티 벡터를 이용하는 인터 레이어 비디오 부호화 방법 및 장치
WO2015142057A1 (ko) * 2014-03-21 2015-09-24 주식회사 케이티 다시점 비디오 신호 처리 방법 및 장치
WO2015142054A1 (ko) * 2014-03-19 2015-09-24 주식회사 케이티 다시점 비디오 신호 처리 방법 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070083168A (ko) * 2006-02-20 2007-08-23 광운대학교 산학협력단 마크로 블록 기반 가중치 예측 기반 멀티 뷰 비디오 부호화및 복호화 장치 및 그 방법
KR20080034752A (ko) * 2006-10-17 2008-04-22 경희대학교 산학협력단 다시점 영상의 부호화 및 복호화 방법과 그를 위한 장치
KR20090037423A (ko) * 2006-07-06 2009-04-15 톰슨 라이센싱 멀티뷰 비디오 인코딩 및 디코딩을 위해 프레임 넘버 및/또는 픽쳐 오더 카운트를 분리시키는 방법 및 장치
KR20090037888A (ko) * 2006-07-11 2009-04-16 톰슨 라이센싱 가상 참조 픽처를 사용하는 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070083168A (ko) * 2006-02-20 2007-08-23 광운대학교 산학협력단 마크로 블록 기반 가중치 예측 기반 멀티 뷰 비디오 부호화및 복호화 장치 및 그 방법
KR20090037423A (ko) * 2006-07-06 2009-04-15 톰슨 라이센싱 멀티뷰 비디오 인코딩 및 디코딩을 위해 프레임 넘버 및/또는 픽쳐 오더 카운트를 분리시키는 방법 및 장치
KR20090037888A (ko) * 2006-07-11 2009-04-16 톰슨 라이센싱 가상 참조 픽처를 사용하는 방법 및 장치
KR20080034752A (ko) * 2006-10-17 2008-04-22 경희대학교 산학협력단 다시점 영상의 부호화 및 복호화 방법과 그를 위한 장치

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015005753A1 (ko) * 2013-07-12 2015-01-15 삼성전자 주식회사 깊이 기반 디스패리티 벡터를 이용하는 인터 레이어 비디오 복호화 방법 및 그 장치, 깊이 기반 디스패리티 벡터를 이용하는 인터 레이어 비디오 부호화 방법 및 장치
US10154271B2 (en) 2013-07-12 2018-12-11 Samsung Electronics Co., Ltd. Method and apparatus for inter-layer decoding video using depth-based disparity vector, and method and apparatus for inter-layer encoding video using depth-based disparity vector
CN108989815A (zh) * 2014-03-19 2018-12-11 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
CN108683922B (zh) * 2014-03-19 2021-05-04 株式会社Kt 对多视图视频信号进行解码的方法和装置
CN106105191B (zh) * 2014-03-19 2018-08-10 株式会社Kt 用于处理多视图视频信号的方法和装置
CN108632629A (zh) * 2014-03-19 2018-10-09 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
CN108683922A (zh) * 2014-03-19 2018-10-19 株式会社Kt 对多视图视频信号进行解码的方法和装置
CN108965888A (zh) * 2014-03-19 2018-12-07 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
WO2015142054A1 (ko) * 2014-03-19 2015-09-24 주식회사 케이티 다시점 비디오 신호 처리 방법 및 장치
CN108632629B9 (zh) * 2014-03-19 2021-06-15 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
US10257531B2 (en) 2014-03-19 2019-04-09 Kt Corporation Method and apparatus for processing multiview video signals based on illumination compensation and inter-view motion candidate
CN108989815B (zh) * 2014-03-19 2021-05-04 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
CN106105191A (zh) * 2014-03-19 2016-11-09 株式会社Kt 用于处理多视图视频信号的方法和装置
CN108632629B (zh) * 2014-03-19 2021-05-04 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
CN108965888B (zh) * 2014-03-19 2021-05-04 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
CN108989815B9 (zh) * 2014-03-19 2021-06-04 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
WO2015142057A1 (ko) * 2014-03-21 2015-09-24 주식회사 케이티 다시점 비디오 신호 처리 방법 및 장치

Similar Documents

Publication Publication Date Title
KR102254599B1 (ko) 멀티-뷰 비디오 코딩에 있어서, 뷰 합성 예측 방법 및 이를 이용한 머지 후보 리스트 구성 방법
US10194133B2 (en) Device and method for eliminating redundancy of view synthesis prediction candidate in motion merge mode
KR101854003B1 (ko) 복수의 레이어를 포함하는 영상의 부호화 및 복호화 방법
WO2013055148A2 (ko) 영상 인코딩 방법 및 디코딩 방법
US20230336764A1 (en) Method and device for inducing motion information between temporal points of sub prediction unit
JP6545796B2 (ja) ビデオコーディングにおけるデプスピクチャコーディング方法及び装置
JP6571646B2 (ja) マルチビュービデオのデコード方法及び装置
KR20130002242A (ko) 영상 정보의 부호화 방법 및 복호화 방법
KR20170065502A (ko) 3d 비디오 부호화/복호화 방법 및 장치
WO2013069933A1 (ko) 영상 부호화/복호화 방법 및 그 장치
KR20220004765A (ko) 크로마 변환 블록의 최대 크기 제한을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
KR102488925B1 (ko) 크로마 블록의 적응적 크기 제한을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
KR102488861B1 (ko) 크로마 블록의 크기를 제한하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
KR20220000906A (ko) 크로마 블록의 분할 조건을 제한하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
KR20210114065A (ko) 크로마 블록에 대한 분할 제한을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
KR20220004764A (ko) 크로마 성분 부호화 블록의 최대 변환 크기 제한을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
KR20220005591A (ko) 크로마 블록의 최대 변환 크기 설정을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
CN112840649A (zh) 图像编码系统中通过使用块分割对图像解码的方法及其装置
WO2015141977A1 (ko) 3d 비디오 부호화/복호화 방법 및 장치
WO2013039333A1 (ko) 3d 비디오 부호화/복호화 방법 및 그 장치
CN114731405A (zh) 使用量化矩阵的图像编码/解码方法和设备以及发送比特流的方法
Lucas et al. E cient Predictive Algorithms for Image Compression

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

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

Country of ref document: EP

Kind code of ref document: A1