WO2014014276A1 - In-loop filtering method and apparatus using same - Google Patents

In-loop filtering method and apparatus using same Download PDF

Info

Publication number
WO2014014276A1
WO2014014276A1 PCT/KR2013/006401 KR2013006401W WO2014014276A1 WO 2014014276 A1 WO2014014276 A1 WO 2014014276A1 KR 2013006401 W KR2013006401 W KR 2013006401W WO 2014014276 A1 WO2014014276 A1 WO 2014014276A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
prediction
current block
boundary
filtering
Prior art date
Application number
PCT/KR2013/006401
Other languages
French (fr)
Korean (ko)
Inventor
방건
정원식
허남호
김경용
박광훈
Original Assignee
한국전자통신연구원
경희대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원, 경희대학교 산학협력단 filed Critical 한국전자통신연구원
Priority to US14/399,823 priority Critical patent/US20150146779A1/en
Priority claimed from KR1020130084336A external-priority patent/KR20140019221A/en
Publication of WO2014014276A1 publication Critical patent/WO2014014276A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • 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 an encoding and decoding process of an image, and more particularly, to an in-loop filling method of an image and an apparatus using the same.
  • an inter prediction technique for predicting pixel values included in a current picture from a previous and / or subsequent picture in time, and predicting pixel values included in a current picture using pixel information in the current picture.
  • An intra prediction technique an entropy encoding technique of allocating a short code to a symbol with a high frequency of appearance and a long code to a symbol with a low frequency of appearance may be used.
  • Video compression technology is a technology that provides a constant network bandwidth under a limited operating environment of hardware without considering a fluid network environment.
  • a new compression technique is required to compress image data applied to a network environment in which bandwidth changes frequently, and a scalable video encoding / decoding method may be used for this purpose.
  • the 3D video vividly provides the user with a three-dimensional effect as seen and felt in the real world through the three-dimensional stereoscopic display device.
  • three-dimensional video standards are underway in MPEG of the video standardization organization ISO / IEC.
  • the 3D video standard includes standards for advanced data formats and related technologies that can support not only stereoscopic images but also autostereoscopic images using real images and their depth information maps.
  • FIG. 1 is a diagram illustrating the basic structure and data format of a 3D video system, and shows an example of a system currently considered in a 3rd video standard.
  • a 3D Content Production side generates a stereo camera, a depth camera, a multi-camera setup, and a two-dimensional image as a three-dimensional image. 2D / 3D conversion is used to acquire the image content at the time of N (N ⁇ 2).
  • the acquired image content may include video information of N viewpoints (N x Video), depth-map information thereof, and camera-related additional information.
  • the video content of the N view is compressed using a multi-view video encoding method (Multi-View), and the compressed bitstream is transmitted to the terminal through a network, for example, through digital video broadcasting (DVB).
  • Multi-View multi-view video encoding method
  • DVD digital video broadcasting
  • the receiving side decodes the received bitstream by using a multi-view video decoding method (Depth-Image? Based Rendering) to restore an image of N views.
  • a multi-view video decoding method (Depth-Image? Based Rendering) to restore an image of N views.
  • the reconstructed N-view image generates virtual view images of at least N views by a depth-map-based rendering (DIBR) process.
  • DIBR depth-map-based rendering
  • the generated virtual viewpoint images of N or more views are reproduced according to various stereoscopic display devices (for example, 2D display, M-View 3D display, and head-tracked stereo display) to provide a stereoscopic image to the user.
  • various stereoscopic display devices for example, 2D display, M-View 3D display, and head-tracked stereo display
  • the depth information map used to generate the virtual view image represents a distance between the camera and the real object in the real world (depth information corresponding to each pixel at the same resolution as the real image) in a constant number of bits.
  • FIG. 2 is a diagram illustrating a depth information map of “balloons” images used in the 3D video coding standard of MPEG, an international standardization organization.
  • FIG. 2 (a) is an actual image of the “balloons” image and shows a depth information map of the (b) balloons ”image of FIG. 2. (b) represents depth information at 8 bits per pixel.
  • FIG. 3 is a diagram illustrating an example of an encoding structure diagram of H.264.
  • the encoding structure of H.264 is generally known to have the highest coding efficiency among video coding standards developed to date for encoding the depth information map.
  • a unit for processing data in an H.264 encoding structure diagram is a macroblock having a size of 16x16 pixels, and receives an image and performs encoding in an intra mode or an inter mode. And output the bitstream.
  • the switch In the intra mode, the switch is switched to intra, and in the inter mode, the switch is switched to inter.
  • the main flow of the encoding process is to first generate a prediction block for the input block image, then obtain the difference between the input block and the prediction block and encode the difference.
  • the generation of the prediction block is performed according to the intra mode and the inter mode.
  • a prediction block is generated by spatial prediction by using neighboring pixel values already encoded in the current block in the intra prediction process.
  • the motion vector is found from the reference image stored in the reference image buffer to find the best match with the currently input block, and then motion compensation is performed using the obtained motion vector. By generating the predictive block.
  • a residual block is generated by obtaining a difference between a currently input block and a prediction block, and then encoded.
  • the method of encoding a block is largely divided into an intra mode and an inter mode.
  • the intra mode is divided into 16x16, 8x8, and 4x4 intra modes
  • the inter mode is divided into 16x16, 16x8, 8x16, and 8x8 inter modes.
  • 8x8 inter mode it is divided into 8x8, 8x4, 4x8 and 4x4 sub inter mode.
  • Encoding of the residual block is performed in the order of transform, quantization, and entropy encoding.
  • the block encoded in the 16x16 intra mode performs transform on the differential block, and outputs transform coefficients, and collects only DC coefficients from the output transform coefficients and performs Hadamard transform again to output hard-mad transformed DC coefficients.
  • the transform process receives the input residual block, performs transform, and outputs a transform coefficient.
  • the quantization process outputs a quantized coefficient obtained by performing quantization on the input transform coefficient according to the quantization parameter.
  • the input quantized coefficients are subjected to entropy encoding according to a probability distribution, and are output as a bitstream.
  • H.264 performs inter-frame predictive encoding, it is necessary to decode and store the currently encoded image for use as a reference image of a later input image. Therefore, by performing inverse quantization and inverse transformation on the quantized coefficients, a reconstructed block is generated through a predictive image and an adder, and then a blocking artifact generated during the encoding process is removed by a deblocking filter, and then stored in a reference image buffer. do.
  • FIG. 4 is a diagram illustrating an example of a decoding structure diagram of H.264.
  • a unit for processing data in an H.264 decoding structure diagram is a macroblock having a size of 16x16 pixels, and decoding in an intra mode or an inter mode by receiving a bitstream. The reconstructed image is output.
  • the switch In the intra mode, the switch is switched to intra, and in the inter mode, the switch is switched to inter.
  • the main flow of the decoding process is to first generate a prediction block, and then decode the input bitstream to generate a reconstructed block by adding the block and the prediction block.
  • the generation of the prediction block is performed according to the intra mode and the inter mode.
  • the prediction block is generated by performing spatial prediction using the neighboring pixel values of the current block in the intra prediction process, and in the inter mode, the prediction block is stored using the motion vector.
  • the prediction block is generated by finding a region in the reference image and performing motion compensation.
  • quantized coefficients are output by performing entropy decoding on the input bitstream according to a probability distribution.
  • the quantized coefficients are subjected to inverse quantization and inverse transformation to generate a reconstructed block through a predictive image and an adder, and then remove a blocking artifact through a deblocking filter, and store them in a reference image buffer.
  • HEVC High Efficiency Video Coding
  • MPEG Moving Picture Experts Group
  • VCEG Video Coding Experts Group
  • the goal is to encode at twice the compression efficiency.
  • 3D broadcasting and mobile communication networks can provide high quality video at lower frequencies than currently available.
  • the present invention provides a method for determining a boundary filtering strength (bS) of a boundary adjacent to a block to which a skip coding mode is applied in a screen is 0 when determining a boundary filtering strength when using a deblocking filter among in-loop filtering methods, and an apparatus using the same. Is in.
  • Another technical problem of the present invention is to reduce the complexity in video encoding and decoding, and to improve the quality of the virtual image generated through the decoded depth image.
  • Another object of the present invention is to provide an image encoding method, a sampling method, and a filtering method for a depth information map.
  • An image decoding method may include generating a predicted pixel value of a neighboring block adjacent to a current block as a pixel value of the current block when intra prediction of a depth information map.
  • the configuring of the prediction image may include copying (padding) peripheral pixels adjacent to a current block to configure an intra prediction image, determining pixels to be copied in consideration of characteristics of neighboring pixels adjacent to the current block, and then determining the determined pixels.
  • the method may be configured by at least one of a method of constructing a current block and a method of constructing and using a predicted block image using a sum of weights according to respective methods or a mean value of a mixture of a plurality of prediction methods.
  • An image decoding method for depth information includes generating a prediction block for a current block of the depth information; Generating a reconstruction block of the current block based on the prediction block; And performing filtering on the reconstructed block, and whether to perform the filtering may be determined according to block information of the current block and encoding information of the current block.
  • the encoding information includes information about a portion having the same depth, a portion to be a background, and a portion corresponding to the inside of the object in the reconstructed image, and a portion having the same depth, a portion to be a background, and an object in the restoration block.
  • the filtering may not be performed on at least one of the portions corresponding to the internal portions.
  • a deblocking filter, a sample adaptive offset filter (SAO) filter, and an adaptive loop are included in at least one of a portion having the same depth, a background portion, and a portion corresponding to a portion inside the object in the reconstruction block.
  • At least one of an adaptive loop filter (ALF) and in-loop joint inter-view depth filtering (JVDF) may not be performed.
  • the encoding information includes information about a portion having the same depth, a background portion, and a portion corresponding to the inside of the object in the restoration block, and the portion having the same depth, the portion that is a background, and the object in the restoration block.
  • Weak filtering may be performed on at least one of the portions corresponding to the portion corresponding to the inside.
  • the method may include performing upsampling on the reconstructed block, and the upsampling may pad one sample value to a predetermined number of sample values.
  • the upsampling may not be performed in at least one of a portion having the same depth, a background portion, and a portion corresponding to the inside of the object in the restoration block.
  • the filtering of the reconstructed block may include determining boundary filtering strengths of two adjacent blocks; And applying filtering on the pixel values of the two blocks according to the boundary filtering intensity, and determining the boundary filtering intensity includes whether at least one block of two adjacent blocks is intraskip coded.
  • Determining If it is determined that both of the two blocks are not intra skip coded, determining whether at least one block of two adjacent blocks is intra coded; If it is determined that both blocks are not intra coded, determining whether at least one of the two blocks has an orthogonal transform coefficient; If it is determined that the two blocks do not have orthogonal transform coefficients, at least one of the absolute value of the difference between the x-axis component or the y-axis component of the motion vector with respect to the two blocks is 1 (or 4) or Or determining whether motion compensation is performed based on another reference frame; And determining whether the absolute values of the differences of the motion vectors are all less than 1 (or 4) and whether the motion compensation is performed based on the same reference frame.
  • the boundary filtering strength bS may be determined to be zero.
  • the boundary filtering strength may be determined as one of 0, 1, 2, and 3. .
  • generating the prediction block may infer a prediction direction for the current block from a neighboring block adjacent to the current block.
  • the filtering of the reconstructed block may include determining boundary filtering strengths of two adjacent blocks; And applying filtering on the pixel values of the two blocks according to the boundary filtering intensity, and determining the boundary filtering intensity when the prediction direction of the current block and a neighboring block adjacent to the current block is the same.
  • the boundary filtering intensity bS may be determined as 0.
  • the filtering of the reconstructed block may include determining boundary filtering strengths of two adjacent blocks; Applying filtering of the pixel values of the two blocks according to the boundary filtering intensity, and determining the boundary filtering intensity is an intra skip in which the prediction mode of the current block does not exist difference information, If the intra prediction direction for the current block is the horizontal direction, the boundary filtering intensity for the vertical boundary of the current block is set to '0', and the prediction mode of the current block is intra skip without difference information. When the intra prediction direction for the current block is a vertical direction, the boundary filtering intensity for the horizontal boundary of the current block may be set to '0'.
  • the filtering of the reconstructed block may include determining boundary filtering strengths of two adjacent blocks; And applying filtering on the pixel values of the two blocks according to the boundary filtering intensity, wherein determining the boundary filtering intensity includes a boundary between the current block and a neighboring block adjacent to the current block. If the boundary matches, the boundary filtering strength may be set to '0'.
  • the image decoding apparatus for depth information includes a prediction image generation unit for generating a prediction block for the current block of the depth information and an addition for generating a reconstruction block of the current block based on the prediction block. Wealth;
  • a filter unit configured to perform filtering on the reconstruction block, wherein the filter unit comprises: a boundary filtering intensity determiner for determining boundary filtering strengths of two adjacent blocks; And a filtering applying unit for applying filtering on the pixel values of the two blocks according to the boundary filtering strength.
  • the boundary filtering strength determiner may determine the boundary filtering strength bS as 0 when at least one block of two adjacent blocks is intraskip coded.
  • the boundary filtering strength determiner determines that one block of two adjacent blocks is an intraskip coding mode and the other block is a general coding mode (intra or inter), and when there are at least one orthogonal transform coefficient in the general coding mode.
  • the boundary filtering intensity bS may be determined as one of 1, 2, 3, and 4.
  • a method for determining a boundary filtering strength (bS) of a boundary adjacent to a block to which an in-screen skip coding mode is applied is 0 when determining a boundary filtering strength when using a deblocking filter in an in-loop filtering method and an apparatus using the same.
  • the complexity of video encoding and decoding is reduced, and the image quality of the virtual image generated through the decoded depth image is thereby improved.
  • an image encoding method, a sampling method, and a filtering method for a depth information map are provided.
  • 1 is a diagram illustrating the basic structure and data format of a 3D video system.
  • FIG. 2 is a diagram illustrating a depth information map for an image of "balloons”.
  • FIG. 3 is a diagram illustrating an example of an encoding structure diagram of H.264.
  • FIG. 4 is a diagram illustrating an example of a decoding structure diagram of H.264.
  • FIG. 5 is a control block diagram illustrating a configuration of a video encoding apparatus according to an embodiment of the present invention.
  • FIG. 6 is a control block diagram illustrating a configuration of a video decoding apparatus according to an embodiment of the present invention.
  • 7A is a diagram illustrating a depth information map for a “kendo” image.
  • FIG. 7B is a 2D graph showing pixel values in a horizontal direction at an arbitrary position of a depth information map for a “kendo” image.
  • FIG. 7C is a 2D graph showing pixel values in a horizontal direction at an arbitrary position of a depth information map for a kendo ”image.
  • FIG. 8 is a diagram illustrating a prediction method in a plane-based split screen.
  • FIG. 9 illustrates neighboring blocks used to infer a prediction direction for a current block according to an embodiment of the present invention.
  • FIG. 10 is a control flowchart illustrating a method of deriving an intra prediction direction with respect to a current block according to an embodiment of the present invention.
  • 11 is a control flowchart illustrating a method of deriving an intra prediction direction with respect to a current block according to another embodiment of the present invention.
  • FIG. 12 illustrates neighboring blocks used to infer a prediction direction for a current block according to another embodiment of the present invention.
  • FIG. 13 is a diagram illustrating an example of a down sampling method of a depth information map.
  • FIG. 14 is a diagram illustrating an example of an upsampling method of a depth information map.
  • 15 is a control flowchart illustrating a method of determining boundary filtering strength bS of deblocking filtering according to an embodiment of the present invention.
  • 16 is a diagram illustrating the boundary between adjacent blocks p and block q.
  • 17 is a control flowchart illustrating a method of determining boundary filtering strength bS of deblocking filtering according to another embodiment of the present invention.
  • FIG. 18 illustrates a prediction direction and a macroblock boundary of a current block and neighboring blocks according to an embodiment of the present invention.
  • 19 is a diagram illustrating an example of an encoding mode of a current block and a current block boundary.
  • 20 is a control block diagram illustrating a configuration of a video encoding apparatus according to an embodiment of the present invention.
  • 21 is a control block diagram illustrating a configuration of a video decoding apparatus according to an embodiment of the present invention.
  • first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
  • the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
  • each component shown in the embodiments of the present invention are shown independently to represent different characteristic functions, and do not mean that each component is made of separate hardware or one software component unit.
  • each component is included in each component for convenience of description, and at least two of the components may be combined into one component, or one component may be divided into a plurality of components to perform a function.
  • Integrated and separate embodiments of the components are also included within the scope of the present invention without departing from the spirit of the 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 in the scope of the present invention.
  • FIG. 5 is a block diagram illustrating a configuration of a video encoding apparatus according to an embodiment.
  • a scalable video encoding / decoding method or apparatus may be implemented by extension of a general video encoding / decoding method or apparatus that does not provide scalability, and the block diagram of FIG. 5 is scalable.
  • An embodiment of an image encoding apparatus that may be the basis of a video encoding apparatus is illustrated.
  • the image encoding apparatus 100 may include a motion predictor 111, a motion compensator 112, an intra predictor 120, a switch 115, a subtractor 125, and a converter 130. And a quantization unit 140, an entropy encoding unit 150, an inverse quantization unit 160, an inverse transform unit 170, an adder 175, a deblocking filter unit 180, and a reference image buffer 190.
  • the image encoding apparatus 100 may perform encoding in an intra mode or an inter mode on an input image and output a bit stream.
  • Intra prediction means intra prediction and inter prediction means inter prediction.
  • the switch 115 is switched to intra, and in the inter mode, the switch 115 is switched to inter.
  • the image encoding apparatus 100 may generate a prediction block for an input block of an input image and then encode a difference between the input block and the prediction block.
  • the selection of encoding or not encoding the generated block may be determined to be excellent in terms of rate distortion.
  • the generation of the prediction block may be generated through intra prediction or may be generated through inter prediction. In this case, selection of whether to perform intra prediction or inter prediction may be determined to be excellent in encoding efficiency in terms of rate distortion.
  • the intra predictor 120 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already encoded around the current block.
  • the motion predictor 111 may obtain a motion vector by searching for a region that best matches an input block in the reference image stored in the reference image buffer 190 during the motion prediction process.
  • the motion compensator 112 may generate a prediction block by performing motion compensation using the motion vector and the reference image stored in the reference image buffer 190.
  • the subtractor 125 may generate a residual block by the difference between the input block and the generated prediction block.
  • the transform unit 130 may output a transform coefficient by performing transform on the residual block.
  • the quantization unit 140 may output the quantized coefficient by quantizing the input transform coefficient according to the quantization parameter.
  • the entropy encoding unit 150 entropy encodes a symbol according to a probability distribution based on values calculated by the quantization unit 140 or encoding parameter values calculated in the encoding process, thereby generating a bit stream. You can print
  • the entropy encoding method is a method of receiving a symbol having various values and expressing it in a decodable column while removing statistical redundancy.
  • Encoding parameters are parameters necessary for encoding and decoding, and may include information that may be inferred during encoding or decoding, as well as information encoded by an encoder and transmitted to a decoder, such as syntax elements. Means necessary information. Coding parameters may be, for example, intra / inter prediction modes, moving / motion vectors, reference picture indexes, coding block patterns, presence or absence of residual signals, transform coefficients, quantized transform coefficients, quantization parameters, block sizes, block partitioning information, or the like. May include statistics.
  • the residual signal may mean a difference between the original signal and the prediction signal, and a signal in which the difference between the original signal and the prediction signal is transformed or a signal in which the difference between the original signal and the prediction signal is converted and quantized It may mean.
  • the residual signal may be referred to as a residual block in block units.
  • the entropy encoder 150 may store a table for performing entropy encoding, such as a variable length coding (VLC) table, and the entropy encoder 150 may store the stored variable length encoding. Entropy encoding may be performed using the (VLC) table. In addition, the entropy encoder 150 derives a binarization method of a target symbol and a probability model of a target symbol / bin, and then performs entropy encoding using the derived binarization method or a probability model. You may.
  • VLC variable length coding
  • CABAC context-adaptive binary arithmetic coding
  • the quantized coefficients may be inversely quantized by the inverse quantizer 160 and inversely transformed by the inverse transformer 170.
  • the inverse quantized and inverse transformed coefficients are added to the prediction block through the adder 175 and a reconstruction block can be generated.
  • the reconstruction block passes through the deblocking filter unit 180, and the deblocking filter unit 180 restores at least one or more of a deblocking filter, a sample adaptive offset (SAO), and an adaptive loop filter (ALF). It can be applied to the reconstructed picture.
  • the reconstructed block that has passed through the deblocking filter unit 180 may be stored in the reference image buffer 190.
  • FIG. 6 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment.
  • a scalable video encoding / decoding method or apparatus may be implemented by extension of a general video encoding / decoding method or apparatus that does not provide scalability
  • the block diagram of FIG. 2 is scalable video decoding.
  • An embodiment of an image decoding apparatus that may be the basis of an apparatus is shown.
  • the image decoding apparatus 200 may include an entropy decoding unit 210, an inverse quantization unit 220, an inverse transform unit 230, an intra predictor 240, a motion compensator 250, and deblocking.
  • the filter unit 260 and the reference image buffer 270 are included.
  • the image decoding apparatus 200 may receive a bitstream output from the encoder and perform decoding in an intra mode or an inter mode, and output a reconstructed image, that is, a reconstructed image.
  • the switch In the intra mode, the switch may be switched to intra, and in the inter mode, the switch may be switched to inter.
  • the image decoding apparatus 200 may generate a reconstructed block, that is, a reconstructed block by obtaining a residual block reconstructed from the received bitstream, generating a prediction block, and adding the reconstructed residual block and the prediction block.
  • the entropy decoding unit 210 may entropy decode the input bitstream according to a probability distribution to generate symbols including symbols in the form of quantized coefficients.
  • the entropy decoding method is a method of generating each symbol by receiving a binary string.
  • the entropy decoding method is similar to the entropy coding method described above.
  • the quantized coefficients are inversely quantized by the inverse quantizer 220 and inversely transformed by the inverse transformer 230, and as a result of the inverse quantization / inverse transformation of the quantized coefficients, a reconstructed residual block may be generated.
  • the intra predictor 240 may generate a predictive block by performing spatial prediction using pixel values of an already encoded block around the current block.
  • the motion compensator 250 may generate a prediction block by performing motion compensation using the motion vector and the reference image stored in the reference image buffer 270.
  • the reconstructed residual block and the prediction block are added through the adder 255, and the added block passes through the deblocking filter unit 260.
  • the deblocking filter unit 260 may apply at least one or more of the deblocking filter, SAO, and ALF to the reconstructed block or the reconstructed picture.
  • the deblocking filter 260 outputs a reconstructed image, that is, a reconstructed image.
  • the reconstructed picture may be stored in the reference picture buffer 270 to be used for inter prediction.
  • the depth information map used to generate the virtual view image represents the distance between the camera and the object, so the correlation between pixels is very high. Especially in the case of the inside of the object or the background part, the value of the same depth information appears widely.
  • FIG. 7A is a diagram showing a depth information map for a “kendo” image
  • FIG. 7B is a 2D graph showing values of pixels in a horizontal direction at an arbitrary position of the depth information map for a “kendo” image
  • FIG. 7C Is a 2D graph showing pixel values in a horizontal direction at an arbitrary position of a depth information map for a kendo ”image.
  • FIGS. 7A to 7C it can be seen that the inter-pixel correlation of the depth information map is very high. In particular, it can be seen that the value of the depth information is the same in the object and the background of the depth information map.
  • FIG. 7B the pixel value of the portion corresponding to the horizontal line II-II is illustrated in FIG. 7A, and as shown in FIG. 7A, the portion corresponding to the horizontal line II-II of FIG. 7A is divided into two regions. If FIG. 7B reflects these two areas, it can be seen that the depth information values in the two areas are the same.
  • FIG. 7C illustrates pixel values of the portion corresponding to the vertical line III-III in FIG. 7A. As illustrated, the portion corresponding to the vertical line III-III of FIG. 7B is divided into two regions. If FIG. 7C reflects these two areas, it can be seen that the depth information values in the two areas are the same.
  • the pixel value of the current block can be almost predicted using only the pixel values of the neighboring block. Therefore, the encoding and decoding process of the residual signal, which is a difference between the current block and the prediction block, is performed. Almost no need.
  • the object boundary portion of the depth information map is a very important element in virtual image synthesis.
  • An example of a method of encoding an object boundary part of the depth information map is a plane-based intra-prediction method.
  • FIG. 8 is a diagram illustrating a prediction method in a plane-based split screen.
  • the prediction method in a plane-based split screen is a method of splitting and encoding a current block into two regions (whether inside an object or outside an object) based on neighboring pixels of the current block.
  • the divided binary bitmap information is transmitted to the decoder.
  • the prediction method within a plane-based split screen is a method applied to an object boundary part of a depth information map.
  • the image quality of the virtual composite image may be improved when the depth information map is used while maintaining the characteristics of the object boundary, that is, without smoothing or crushing the object boundary. Therefore, the object boundary portion of the depth information map may not be filtered to crush the object boundary such as a defiltering process.
  • the existing deblocking filtering method removes the blocking phenomenon at the block boundary due to the encoding mode (intra prediction or inter prediction) between two adjacent blocks, the sameness of the reference picture between the two blocks, and the difference in the motion information between the two blocks. It is a method for doing so. Therefore, when the deblocking filter is performed on the block boundary part, the strength of the deblocking is determined by the coding mode between the two blocks (either intra prediction or inter prediction), equality of reference pictures between the two blocks, and difference in motion information between the two blocks. To judge. For example, when one of the two blocks is predicted in the picture and the other block is encoded in the inter prediction mode, a very severe blocking phenomenon may occur between the two blocks, and in this case, the deblocking filter may be performed with a strong strength.
  • the deblocking filter May not be performed or the deblocking filter may be weakly performed.
  • the deblocking filter removes the blocking phenomenon in the image and improves the subjective quality of the image.
  • the depth map is only used to generate the virtual composite image and is not output to the actual display device. Therefore, the block boundary of the depth information map may be necessary to improve the quality of the virtual composite image, rather than the subjective quality improvement aspect.
  • the deblocking filter (or other filtering methods) of the depth information map includes an encoding mode (either intra prediction or inter prediction) between two blocks, equality of reference pictures between two blocks, and movement information of the current block, not motion information between two blocks. It is necessary to set whether to perform filtering and the strength of filtering according to the encoding mode.
  • the current block is encoded by a plane-based split coding method that encodes an object boundary portion
  • it may be more effective not to perform a deblocking filter on the block boundary in order to avoid crushing the boundary portion of the object as much as possible. have.
  • the depth information map is depth information for representing a sense of distance between objects, and generally has a very gentle value.
  • the depth information has the same broad value.
  • the depth information of the neighboring block may be padded to configure depth information of the current block.
  • the filtering process that is applied to the general image may not be required in the part having the same depth information.
  • the sampling (up-sampling or down-sampling) process can also be applied simply.
  • the present invention proposes an intra picture encoding method of various depth information maps and a filtering and sampling method of the depth information map.
  • the prediction block When generating a prediction block using the intra prediction method, the prediction block is generally predicted through neighboring blocks of the current block in which encoding has been performed. As described above, a method of configuring the current block using only intra-prediction blocks is called an intra prediction mode.
  • a block encoded in the intra prediction mode is referred to as an intra skip mode when the intra 16x16 mode (or 8x8 mode, 4x4 mode, or NxN mode) and no differential data are present.
  • an intra prediction prediction direction may be inferred from a coded neighboring block in space.
  • the block encoded in the intra skip mode does not transmit intra prediction picture information and other information to the decoding device, and deduces intra prediction picture information of the current block through information of neighboring blocks. Can be.
  • FIG. 9 illustrates neighboring blocks used to infer a prediction direction for a current block according to an embodiment of the present invention.
  • the intra prediction direction with respect to the current block X may be inferred from neighboring blocks A and B adjacent to the current block X.
  • the neighboring block may mean all blocks adjacent to the current block (X).
  • FIG. 10 is a control flowchart illustrating a method of deriving an intra prediction direction with respect to a current block according to an embodiment of the present invention.
  • the intra prediction direction includes the vertical prediction (0), the horizontal prediction (1), the DC prediction (2) using a predetermined average value, and the plane (diagonal) prediction (3).
  • the value for the prediction direction has a smaller value as the probability of occurrence increases.
  • vertical prediction (0) has the highest probability of occurrence.
  • the prediction direction information on the current block may be represented by IntraPredMode.
  • Step 1) The availability of the block A is determined (S1000a).
  • IntraPredModeA prediction direction information for block A
  • S1001 the DC prediction direction
  • step 2 If block A is available, perform step 2.
  • IntraPredModeA is set to IntraPredMode of block A, that is, the prediction direction information of block A as IntraPredModeA ( S1002).
  • Step 3 If block B is not available, such as when block B is not encoded or the coding mode of block B is not available (S1000b), IntraPredModeB (prediction direction information for block B) is set as the DC prediction direction ( S1003).
  • IntraPredModeB prediction direction information for block B
  • Step 4 If block B is an intra 16x16 encoding mode (or 8x8 encoding mode or 4x4 encoding mode) or intra_skip encoding mode, IntraPredMode of block B is set to IntraPredModeB (S1004).
  • Step 5 a minimum value among IntraPredModeA and IntraPredModeB values may be set to IntraPredMode of the current block X (S1005).
  • 11 is a control flowchart illustrating a method of deriving an intra prediction direction with respect to a current block according to another embodiment of the present invention.
  • Step 1) If block A is not encoded or the coding mode of block A cannot be used, if block A is not available (S1100a), IntraPredModeA is set to '-1' (S1101).
  • step 2 If block A is available, perform step 2.
  • Step 2 If block A is an intra 16x16 encoding mode (or 8x8 encoding mode or 4x4 encoding mode) or intra_skip encoding mode, IntraPredModeA is set to IntraPredMode of block A, that is, the prediction direction information of block A as IntraPredModeA (S1102). ).
  • Step 3) If block B is not encoded or the coding mode of block B cannot be used (S1100b), IntraPredModeB is set to '-1'. If not, perform step 4.
  • Step 4 If block B is an intra 16x16 encoding mode (or 8x8 encoding mode or 4x4 encoding mode) or intra_skip encoding mode, IntraPredMode of block B is set to IntraPredModeB (S1104).
  • Step 5 Then, if at least one of IntraPredModeA and IntraPredModeB is '-1' (S1105), IntraPredMode of the current block X is set as the DC prediction direction (S1106).
  • IntraPredModeA and IntraPredModeB values are set to IntraPredMode of the current block X (S1107).
  • FIG. 12 illustrates neighboring blocks used to infer a prediction direction for a current block according to another embodiment of the present invention.
  • the prediction direction information of the block C may be used as well as the blocks A and B adjacent to the current block.
  • the prediction direction for the current block may be inferred through the characteristics of the prediction directions of blocks A, B, and C.
  • the prediction direction of block A may be set as the prediction direction for the current block.
  • the minimum value among the prediction directions of blocks A, B, and C may be set as the prediction direction for the current block.
  • the prediction direction of the block B may be set as the prediction direction with respect to the current block.
  • the prediction direction of the block A may be set as the prediction direction with respect to the current block.
  • the prediction direction of the block A may be set as the prediction direction with respect to the current block.
  • the prediction direction of the block B may be set as the prediction direction for the current block.
  • the pixel of the neighboring block adjacent to the current block image may be copied (padded) as it is, wherein the pixel to be copied (padded) to the current block is the upper pixel in the neighboring block adjacent to the current block
  • the pixel may be a left pixel, and may be an average or weighted average of pixels adjacent to the current block.
  • information on which position of the pixel to use may be encoded and included in the bitstream. This method may be similar to the intra prediction method of H.264 / AVC.
  • the pixel to be copied may be determined in consideration of characteristics of neighboring pixels adjacent to the current block, and then the current block may be configured through the determined pixel.
  • the prediction block for the current block may be generated through the upper pixel adjacent to the current block.
  • the prediction block for the current block may be generated through pixels on the left adjacent to the current block.
  • a prediction block image may be configured by using a plurality of prediction methods and mixing the average value or the sum of weights according to each method.
  • the method of configuring the intra prediction block as described above may be variously changed.
  • the intra prediction direction information for the current block is not transmitted to the decoder.
  • the intra prediction direction information may be inferred from the neighboring block or other information.
  • a prediction block for a current block is generated by taking a block most similar to a current block from a previous frame that has been previously encoded and then decoded.
  • the generated prediction block image is differentiated from the current block image to generate a differential block image.
  • the encoding is performed in two ways depending on whether a transform, quantization, and entropy encoding process is performed on the differential block image, and information on whether encoding is performed on the differential block image may be included in the bitstream. The two methods are as follows.
  • the current block image is transformed and quantized into a block image that is differential from the predicted block image, and is then entropy encoded to output a bitstream, and inverse quantization of the quantized coefficients before entropy encoding is performed. After inverse transformation, the prediction block image is added, and the current block image is reconstructed.
  • the current block image is composed of only prediction block images.
  • the differential block image is not encoded, and only information on whether encoding is performed on the differential block image may be included in the bitstream.
  • information for generating a prediction block image of the current block may be configured from information of neighboring blocks.
  • the prediction block generation information and the differential block image are not encoded, and only the information on whether the encoding is performed on the prediction block generation information and the differential block image may be included in the bitstream.
  • arithmetic encoding may be performed probabilisticly in consideration of whether to encode the residual block or not by encoding information on neighboring blocks of the current block.
  • the depth information map may be filtered (eg, a deblocking filter, a sample adaptive offset (SAO) filter, an adaptive loop filter (ALF), and depth information filtering between in-loop combining time points).
  • a deblocking filter e.g, a sample adaptive offset (SAO) filter, an adaptive loop filter (ALF), and depth information filtering between in-loop combining time points.
  • SAO sample adaptive offset
  • ALF adaptive loop filter
  • depth information filtering between in-loop combining time points.
  • JVDF In-loop Joint inter-View Depth Filtering
  • the filtering may be weakly performed or not performed on the background of the depth map or the inside of the object.
  • the deblocking filter may be weakly performed or not performed on the depth information map.
  • a sample adaptive offset (SAO) filter may not be applied to the depth information map.
  • adaptive loop filter can be applied only to the object boundary part, and / or only to the internal part of the object, and / or to the background part of the depth information map.
  • an adaptive loop filter may not be applied to the depth information map.
  • JVDF joint inter-view depth filtering
  • JVDF joint inter-view depth filtering
  • no filtering may be applied to the depth map.
  • the decoded depth map is up-sampled.
  • This sampling process typically uses a 4 or 6 tap upsampling (or downsampling) filter.
  • Such a sampling filter has a disadvantage of high complexity and is not particularly suitable for an image having a very monotonous characteristic such as a depth information map. Therefore, it is desirable that the upsampling and downsampling filter suitable for the characteristics of the depth information map be very simple and simple.
  • FIG. 13 is a diagram illustrating an example of a down sampling method of a depth information map.
  • one sample (pixel) per four samples (pixels) may be copied as it is from the depth information map 1310 of the original size, thereby configuring the down sampled depth information map 1320.
  • This method can only be used in the background part of the depth map or inside an object.
  • any depth information value of the current block is downsampled without going through a downsampling process. Applicable to all pixels (pixels).
  • FIG. 14 is a diagram illustrating an example of an upsampling method of a depth information map.
  • one sample (pixel) may be copied as it is from the down-sampled depth information map 1410 and copied (or padded) to four samples (pixels) of the up-sampled depth information map 1420. .
  • This method can only be used in the background part of the depth map or inside an object.
  • any depth information value of the current block (or any region) is not up-sampled, and the depth information map block (or any region) of the depth information map is upsampled. Applicable to all pixels
  • a depth map may be encoded by combining an intra-picture encoding method of the depth map and a filtering and sampling method of the depth map, and an embodiment thereof is as follows.
  • a method of configuring a current block image using only prediction blocks, adjusting the filtering strength of the deblocking filter for the prediction block, or determining whether to apply the deblocking filter is described.
  • an intra skip mode in which the intra prediction direction for the current block is inferred from neighboring blocks adjacent to the current block, that is, the current block is composed only of the intra prediction pictures may be referred to as an intra skip mode.
  • the correlation with the neighboring block is very high. Therefore, in this case, deblocking filtering may not be performed.
  • 15 is a control flowchart illustrating a method of determining boundary filtering strength bS of deblocking filtering according to an embodiment of the present invention.
  • 16 is a diagram showing the boundary between adjacent blocks p and block q.
  • block p and block q correspond to adjacent blocks sharing boundaries with each other.
  • Block p represents a block located on the left side with respect to the vertical boundary and above the horizontal boundary
  • block q represents a block located on the right side with respect to the vertical boundary and located below the horizontal boundary.
  • coding modes of blocks p and q adjacent to each other may be checked.
  • whether the block p or q is intra coded or inter coded may mean that the block p or q is an intra coded macroblock or belongs to it.
  • the intra skip mode may be regarded as an intra mode (NxN prediction mode, where N is 16, 8, 4, etc.) but no difference data.
  • an intra skip mode may be regarded as an intra mode (N ⁇ N prediction mode, where N is 16, 8, 4, etc.) and there is no difference data.
  • the boundary filtering strength bS may be determined as '0' (S1502).
  • a boundary filtering strength (bS) of zero indicates that no filtering is performed in subsequent filtering application procedures.
  • inter encoding means predictive encoding using an image of a reconstructed frame having a different time from the current frame as a reference frame.
  • the boundary filtering intensity bS may be determined to be 4 (S1505).
  • the boundary filtering strength bS is 4, it means that the strongest filtering is applied in the subsequent filtering application procedure.
  • the boundary filtering strength bS may be determined to be 3 (S1506).
  • Orthogonal transform coefficients may also be referred to as coded coefficients or non-zero transformed coefficients.
  • the boundary filtering strength bS is determined to be 2 (S1508).
  • the absolute value of one component of the motion vector that is, the x-axis component or the y-axis component with respect to block p and block q is It is determined whether it is equal to or greater than 1 (or 4) and / or whether the reference frame in motion compensation is different and / or the PU partition boundary (S1509).
  • the reference frame is different' may include both the reference frame itself is different and the number of reference frames is different.
  • the boundary filtering intensity bS may be determined as 1 (S1510).
  • the boundary filtering intensity bS is determined to be 0 (S1502).
  • 17 is a control flowchart illustrating a method of determining boundary filtering strength bS of deblocking filtering according to another embodiment of the present invention.
  • the boundary filtering strength of the block p and the block q may be set to '0' (1702).
  • the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed.
  • the boundary filtering intensity bS may be determined to be 4 (S1705).
  • the boundary filtering strength bS is 4, it means that the strongest filtering is applied in the subsequent filtering application procedure.
  • the boundary filtering strength bS may be determined as 3 (S1706).
  • the boundary filtering strength bS is determined to be 2 (S1708).
  • the absolute value of one component of the motion vector that is, the x-axis component or the y-axis component with respect to block p and block q is It is determined whether it is equal to or greater than 1 (or 4) and / or whether the reference frame in the motion compensation is different and / or the PU partition boundary (S1709).
  • the reference frame is different' may include both the reference frame itself is different and the number of reference frames is different.
  • the boundary filtering intensity bS may be determined as 1 (S1710).
  • the boundary filtering intensity bS is determined to be 0 (S1702).
  • the boundary filtering strength between the current block and the neighboring block may be set to '0'.
  • the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed.
  • the boundary filtering strength between the current block and the neighboring block may be set to '4' (or 3, 2, 1). Otherwise, the filtering strength may be set to 0 (or 1, 2, 3). Alternatively, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed.
  • the boundary filtering intensity is set to '0' when the intra prediction direction of the current block and the neighboring block is the same; otherwise, the boundary filtering intensity is set to '1'. It can be set to 'or other values (2, 3, 4). Alternatively, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed.
  • FIG. 18 illustrates a prediction direction and a macroblock boundary of a current block and neighboring blocks according to an embodiment of the present invention.
  • the filtering strength of the deblocking when setting the filtering strength of deblocking with respect to the vertical macroblock boundary of the current block X, the prediction direction of the neighboring block A and the prediction direction of the current block X are shown. Since the same, the filtering strength of the deblocking can be set to '0'. Alternatively, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed. This example may be equally applied to the horizontal boundary between the current block X and the neighboring block B.
  • the boundary filtering intensity for the vertical boundary is set to '0' or no filtering is performed.
  • the boundary filtering intensity for the horizontal boundary is set to '0' or no filtering is performed. In other cases, the boundary filtering strength may be weakened or no filtering may be performed.
  • the boundary filtering intensity for the vertical boundary is set to '0' or filtering is performed. Do not perform.
  • This example applies equally to the horizontal boundary between the current block X and the neighboring block B.
  • the boundary filtering strength bS may be determined in various ways.
  • FIG. 19 is a diagram illustrating an example of an encoding mode of a current block and a current block boundary. The above-described method may be applied to each of the boundaries of FIG. 19 or in combination.
  • the above methods may be applied to a macroblock (or arbitrary block) boundary that is a coding basic unit of a current block.
  • the methods may be applied at a block (or arbitrary block) boundary inside the current block.
  • the deblocking filter is not applied to the boundary of both blocks X and A. You may not.
  • the boundary filtering strength of both blocks X and B can be set to '0'. have.
  • the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set.
  • the boundary filtering strength bS may be determined to be three.
  • the deblocking filter removes the blocking phenomenon in the image and improves the subjective quality of the image.
  • the depth map is only used to generate the virtual composite image and is not output to the actual display device. Therefore, the block boundary of the depth information map may be necessary to improve the quality of the virtual composite image, rather than the subjective quality improvement aspect.
  • the deblocking filter (or other filtering methods) of the depth map includes encoding modes (either intra prediction or inter prediction) between two blocks, equality of reference pictures between the two blocks, and movement information of the current block, not motion information between the two blocks. It is necessary to set whether to perform filtering and the strength of filtering according to the encoding mode.
  • the deblocking filter should not be performed on the block boundary in order to prevent the object boundary from being crushed as much as possible.
  • pixel values around a vertical boundary of the corresponding block may be the same. Therefore, the deblocking filter may not be performed on the block boundary.
  • pixel values around the horizontal boundary may not be the same, and a deblocking filter should be performed on the block boundary. That is, if the current block is encoded of the intra skip block, filtering may be performed on the boundary according to the prediction direction in the screen of the current block rather than the correlation of neighboring blocks. Alternatively, whether to perform filtering may be determined according to the encoding mode of the current block and the neighboring block and the intra prediction direction.
  • the boundary of the current block is a horizontal boundary, the following process may be applied.
  • the filter strength of the deblocking filter (bS) can be weakly set, for example, can be set to '0'.
  • filtering of the deblocking filter Strength can be strongly given, for example, it can be set to '4'. Otherwise, if the block boundary is not the macro block boundary, the filter strength of the deblocking filter (bS) may be weakened, and may be set to '0' as an example.
  • the filter strength (bS) of the deblocking filter may be applied according to the process described with reference to FIG. 17.
  • the boundary of the current block is a vertical boundary, the following process may be applied.
  • the filter strength of the deblocking filter (bS) can be weakly set, for example, can be set to '0'.
  • filtering of the deblocking filter Strength can be strongly given, for example, it can be set to '4'. Otherwise, if the block boundary is not the macro block boundary, the filter strength of the deblocking filter (bS) may be weakened, and may be set to '0' as an example.
  • the filter strength (bS) of the deblocking filter may be applied according to the process described with reference to FIG. 17.
  • the strength of the filter strength (bS) of the deblocking filter may be weakly set at an object boundary of the depth information map to which the prediction method in the plane-based split screen of FIG. 8 is applied, and may be set to '0' as an example.
  • the derivation of the filtering strength (bS) of the deblocking filter may be performed as follows. The following method can be applied for the boundary of the current block for both the horizontal boundary or the vertical boundary.
  • the filtering strength of the deblocking filter may be weakened, and as an example, it may be set to '1'.
  • the filter strength of the deblocking filter (bS) may be weakened, and may be set to '0' as an example.
  • macroblock_layer In case of performing only intra picture coding (I frame), if the above proposed methods are implemented according to international video standard H.264 / AVC, the macroblock layer (macroblock_layer) syntax is shown in Table 1 below.
  • Mb_intra_skip_run and “mb_intra_skip_flag” mean that the current depth information map block consists only of the predicted image.
  • the fact that the current depth information map block is composed of only the prediction image may be interpreted as an intra skip mode, and also that it is an intra mode (NxN prediction mode where N is 16, 8, 4, etc.) and there is no difference data. Can be interpreted.
  • Mb_intra_skip_run means that the entropy coding method operates in context-based adaptive variable length coding (CAVLC)
  • mb_intra_skip_flag means that the entropy coding method operates in context-based adaptive arithmetic coding CABAC.
  • “moreDataFlag” indicates whether to parse encoding information (prediction block generation information and residual signal block information) with respect to the current block. If “moreDataFlag” is '1', the encoding information about the current block is parsed. If “moreDataFlag” is '0', the encoding block moves to the next block without parsing the encoding information about the current block.
  • “Mb_intra_skip_flag” means that the current depth map block is composed of only prediction images. If mb_intra_skip_flag ”is '1', differential block data is not parsed. Otherwise, when mb_intra_skip_flag ”is '0', differential block data is parsed according to the conventional method. In this case, the fact that the data of the difference block is not parsed may be interpreted as an intra skip mode, and may also be interpreted as an intra mode (NxN prediction mode where N is 16, 8, 4, etc.) but no difference data. Can be.
  • FIG. 20 is a control block diagram illustrating a configuration of a video encoding apparatus according to an embodiment of the present invention.
  • FIG. 20 is a diagram illustrating an encoding method of a method of configuring a current block image by only prediction blocks using neighboring blocks when in-screen encoding of an image having high correlation between pixels.
  • the prediction image generator 310 generates a prediction block through an intra prediction process or generates a prediction block through an inter prediction process. Detailed generation methods are described in detail in the above section.
  • the predictive image selecting unit 320 selects the most excellent encoding efficiency among the predictive images generated by the predictive image generating unit 310, and the predictive image selection information is included in the bitstream.
  • the subtractor 330 generates a differential block image by subtracting the current block image from the predicted block image.
  • the encoding determiner 340 determines whether to encode the generated block image and the prediction information of the predicted block, and outputs encoding information.
  • the encoder 350 determines whether to perform the encoding according to the encoding information determined by the encoding determiner 340, and outputs the compressed bitstream after the transform, quantization, and entropy encoding processes are performed on the differential block image.
  • One bitstream is output by mixing the selection information.
  • FIG. 21 is a control block diagram illustrating a configuration of a video decoding apparatus according to an embodiment of the present invention.
  • FIG. 21 is a diagram illustrating a decoding apparatus of a method of configuring a current block image using only prediction blocks using neighboring blocks when intra-picture encoding is performed on an image having high correlation between pixels.
  • the demultiplexer 410 decodes whether the information about the difference image is included in the bitstream and whether the information is included in the bitstream and the predictive image selection information.
  • the decryption determining unit 420 determines whether to perform the decoding unit 430 according to the decoding information.
  • the decoder 430 is performed only when information on generation information of the differential image and the prediction block exists in the bitstream according to the decoding information.
  • the decoder 430 reconstructs the differential image through inverse quantization and inverse transformation.
  • the prediction image generator 460 generates a prediction block through an intra prediction process or generates a prediction block through an inter prediction process.
  • the prediction image determiner 450 determines an optimal prediction image for the current block from the prediction images generated by the prediction image generator 460 through the prediction image selection information.
  • the adder 440 configures the reconstructed image by adding the generated prediction image and the reconstructed difference image. At this time, if the reconstructed difference image does not exist, the predictive image is composed of the reconstructed image.

Landscapes

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

Abstract

The image decoding method for depth information according to one embodiment of the present invention comprises: a step of generating a prediction block for the current block of the depth information; a step of generating a restoration block of the current block based on the prediction block; and a step of performing filtering on the restoration block. Whether to perform the filtering may be determined based on the block information on the current block and encoding information on the current block.

Description

인루프 필터링 방법 및 이를 이용하는 장치In-loop filtering method and apparatus using same
본 발명은 영상의 부호화 및 복호화 처리에 관한 것으로서, 보다 상세하게는 영상의 인루프 필어링 방법 및 이를 이용하는 장치에 관한 것이다.The present invention relates to an encoding and decoding process of an image, and more particularly, to an in-loop filling method of an image and an apparatus using the same.
최근 HD(High Definition) 해상도를 가지는 방송 서비스가 국내뿐만 아니라 세계적으로 확대되면서, 많은 사용자들이 고해상도, 고화질의 영상에 익숙해지고 있으며 이에 따라 많은 기관들이 차세대 영상기기에 대한 개발에 박차를 가하고 있다. 또한 HDTV와 더불어 HDTV의 4배 이상의 해상도를 갖는 UHD(Ultra High Definition)에 대한 관심이 증대되면서 보다 높은 해상도, 고화질의 영상에 대한 압축기술이 요구되고 있다.Recently, as broadcasting services having high definition (HD) resolution have been expanded not only in Korea but also in the world, many users are accustomed to high resolution and high quality images, and many organizations are accelerating the development of next generation video equipment. In addition, as interest in Ultra High Definition (UHD), which has four times the resolution of HDTV, is increasing along with HDTV, a compression technology for higher resolution and higher quality images is required.
영상 압축을 위해, 시간적으로 이전 및/또는 이후의 픽쳐로부터 현재 픽쳐에 포함된 화소값을 예측하는 인터(inter) 예측 기술, 현재 픽쳐 내의 화소 정보를 이용하여 현재 픽쳐에 포함된 화소값을 예측하는 인트라(intra) 예측 기술, 출현 빈도가 높은 심볼(symbol)에 짧은 부호를 할당하고 출현 빈도가 낮은 심볼에 긴 부호를 할당하는 엔트로피 부호화 기술 등이 사용될 수 있다.For image compression, an inter prediction technique for predicting pixel values included in a current picture from a previous and / or subsequent picture in time, and predicting pixel values included in a current picture using pixel information in the current picture. An intra prediction technique, an entropy encoding technique of allocating a short code to a symbol with a high frequency of appearance and a long code to a symbol with a low frequency of appearance may be used.
영상 압축 기술에는 유동적인 네트워크 환경을 고려하지 않고 하드웨어의 제한적인 동작 환경하에서 일정한 네트워크 대역폭을 제공하는 기술이 있다. 그러나 수시로 대역폭이 변화하는 네트워크 환경에 적용되는 영상 데이터를 압축하기 위해서는 새로운 압축 기술이 요구되고, 이를 위해 스케일러블(scalable) 비디오 부호화/복호화 방법이 사용될 수 있다. Video compression technology is a technology that provides a constant network bandwidth under a limited operating environment of hardware without considering a fluid network environment. However, a new compression technique is required to compress image data applied to a network environment in which bandwidth changes frequently, and a scalable video encoding / decoding method may be used for this purpose.
한편, 3차원 비디오는 3차원 입체 디스플레이 장치를 통해 사용자에게 실 세계에서 보고 느끼는 것과 같은 입체감을 생생하게 제공한다. 이와 관련된 연구로써 비디오 표준화 단체인 ISO/IEC의 MPEG에서는 3차원 비디오 표준이 진행 중이다. 3차원 비디오 표준은 실제 영상과 그것의 깊이 정보 맵을 이용하여 스테레오스코픽 영상뿐만 아니라 오토스테레오스코픽 영상의 재생 등을 지원할 수 있는 진보된 데이터 형식과 그에 관련된 기술에 대한 표준을 포함하고 있다.Meanwhile, the 3D video vividly provides the user with a three-dimensional effect as seen and felt in the real world through the three-dimensional stereoscopic display device. As a related study, three-dimensional video standards are underway in MPEG of the video standardization organization ISO / IEC. The 3D video standard includes standards for advanced data formats and related technologies that can support not only stereoscopic images but also autostereoscopic images using real images and their depth information maps.
도 1은 3차원 비디오 시스템의 기본 구조와 데이터 형식을 도시한 도면으로 현재 3차워 비디오 표준에서 고려하고 있는 시스템의 일 예를 나타내고 있다. FIG. 1 is a diagram illustrating the basic structure and data format of a 3D video system, and shows an example of a system currently considered in a 3rd video standard.
도시된 바와 같이, 컨텐츠를 생성하는 송신 측(3D Content Production)에서는 스테레오 카메라(stereo camera), 깊이 정보 카메라(depth camera), 다시점 카메라(mult-camera setup), 2차원 영상을 3차원 영상으로 변환(2D/3D conversion) 등을 이용하여 N(N≥2) 시점의 영상 콘텐츠를 획득한다. As shown, a 3D Content Production side generates a stereo camera, a depth camera, a multi-camera setup, and a two-dimensional image as a three-dimensional image. 2D / 3D conversion is used to acquire the image content at the time of N (N ≧ 2).
획득된 영상 콘텐츠에는 N 시점의 비디오 정보(N x Video)와 그것의 깊이 정보 맵(Depth-map) 정보 그리고 카메라 관련 부가정보 등이 포함될 수 있다. The acquired image content may include video information of N viewpoints (N x Video), depth-map information thereof, and camera-related additional information.
N 시점의 영상 콘텐츠는 다시점 비디오 부호화 방법(Multi-View)을 사용하여 압축되며, 압축된 비트스트림은 네트워크를 통해, 예를 들어, DVB(Digital Video Broadcasting) 등을 통해 단말로 전송된다. The video content of the N view is compressed using a multi-view video encoding method (Multi-View), and the compressed bitstream is transmitted to the terminal through a network, for example, through digital video broadcasting (DVB).
수신 측에서는 전송 받은 비트스트림을 다시점 비디오 복호화 방법(Depth-Image ?Based Rendering)하여 복호화하여 N 시점의 영상을 복원한다. The receiving side decodes the received bitstream by using a multi-view video decoding method (Depth-Image? Based Rendering) to restore an image of N views.
복원된 N 시점의 영상은 깊이 정보 맵 기반 랜더링(DIBR; Depth-Image-Based Rendering) 과정에 의해 N 시점 이상의 가상 시점 영상들을 생성한다. The reconstructed N-view image generates virtual view images of at least N views by a depth-map-based rendering (DIBR) process.
생성된 N 시점 이상의 가상시점 영상들은 다양한 입체 디스플레이 장치(예컨대, 2D Display, M-View 3D Display, Head-Tracked Stereo Display)에 맞게 재생되어 사용자에게 입체감이 있는 영상을 제공하게 된다. The generated virtual viewpoint images of N or more views are reproduced according to various stereoscopic display devices (for example, 2D display, M-View 3D display, and head-tracked stereo display) to provide a stereoscopic image to the user.
가상시점 영상을 생성하는데 사용되는 깊이 정보 맵은 실세계에서 카메라와 실제 사물(object) 간의 거리(실사 영상과 동일한 해상도로 각 화소에 해당하는 깊이 정보)를 일정한 비트수로 표현한 것이다. The depth information map used to generate the virtual view image represents a distance between the camera and the real object in the real world (depth information corresponding to each pixel at the same resolution as the real image) in a constant number of bits.
도 2는 국제 표준화 기구인 MPEG의 3차원 비디오 부호화 표준에서 사용 중인 “balloons” 영상에 대한 깊이 정보 맵을 도시한 도면이다. FIG. 2 is a diagram illustrating a depth information map of “balloons” images used in the 3D video coding standard of MPEG, an international standardization organization.
도 2의 (a)는 “balloons” 영상에 대한 실제 영상이고, 도 2의 (b) balloons” 영상에 대한 깊이 정보 맵을 나타낸다. (b)는 깊이 정보를 화소당 8비트로 표현한 것이다.FIG. 2 (a) is an actual image of the “balloons” image and shows a depth information map of the (b) balloons ”image of FIG. 2. (b) represents depth information at 8 bits per pixel.
도 3은 H.264의 부호화 구조도의 일 예를 도시한 도면이다. H.264의 부호화 구조는 깊이 정보 맵을 부호화하기 위해서는 일반적으로 현재까지 개발된 비디오 부호화 표준 중에서 최고의 부호화 효율을 가지는 것으로 알려져 있다.3 is a diagram illustrating an example of an encoding structure diagram of H.264. The encoding structure of H.264 is generally known to have the highest coding efficiency among video coding standards developed to date for encoding the depth information map.
도 3을 참조하면, H.264 부호화 구조도에서 데이터를 처리하는 단위는 가로 세로 16x16화소 크기의 매크로 블록(Macroblock)이며, 영상을 입력 받아 인트라(Intra) 모드 또는 인터(Inter) 모드로 부호화를 수행하고 비트스트림을 출력한다. Referring to FIG. 3, a unit for processing data in an H.264 encoding structure diagram is a macroblock having a size of 16x16 pixels, and receives an image and performs encoding in an intra mode or an inter mode. And output the bitstream.
인트라 모드일 경우, 스위치가 인트라로 전환이 되며, 인터 모드일 경우에는 스위치가 인터로 전환이 된다. 부호화 과정의 주요한 흐름은 먼저 입력된 블록 영상에 대한 예측 블록을 생성한 후, 입력된 블록과 예측 블록의 차분을 구해 그 차분을 부호화하는 것이다. In the intra mode, the switch is switched to intra, and in the inter mode, the switch is switched to inter. The main flow of the encoding process is to first generate a prediction block for the input block image, then obtain the difference between the input block and the prediction block and encode the difference.
먼저 예측 블록의 생성은 인트라 모드와 인터 모드에 따라 수행이 된다.First, the generation of the prediction block is performed according to the intra mode and the inter mode.
먼저 인트라 모드일 경우에는 인트라 예측 과정에서 현재 블록의 이미 부호화된 주변 화소값을 이용하여 공간적 예측으로 예측 블록을 생성한다.  First, in the intra mode, a prediction block is generated by spatial prediction by using neighboring pixel values already encoded in the current block in the intra prediction process.
인터 모드일 경우에는 움직임 예측 과정에서 참조 영상 버퍼에 저장되어 있는 참조 영상에서 현재 입력된 블록과 가장 매치가 잘 되는 영역을 찾아 움직임 벡터(Motion Vector)를 구한 후, 구한 움직임 벡터를 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성한다. In the case of the inter mode, the motion vector is found from the reference image stored in the reference image buffer to find the best match with the currently input block, and then motion compensation is performed using the obtained motion vector. By generating the predictive block.
상기 설명한 것과 같이 현재 입력된 블록과 예측 블록의 차분을 구하여 잔여 블록(Residual Block)을 생성한 후, 이에 대한 부호화을 수행한다. As described above, a residual block is generated by obtaining a difference between a currently input block and a prediction block, and then encoded.
블록을 부호화하는 방법은 크게 인트라 모드와 인터 모드로 나누어진다. 예측 블록의 크기에 따라 인트라 모드일 경우에는 16x16, 8x8, 4x4 인트라 모드로 나누어지며, 인터 모드일 경우에는 16x16, 16x8, 8x16, 8x8 인터 모드로 나누어 진다. 8x8 인터모드일 경우에는 다시 8x8, 8x4, 4x8, 4x4 서브 인터 모드로 나누어진다. The method of encoding a block is largely divided into an intra mode and an inter mode. According to the size of the prediction block, the intra mode is divided into 16x16, 8x8, and 4x4 intra modes, and the inter mode is divided into 16x16, 16x8, 8x16, and 8x8 inter modes. In case of 8x8 inter mode, it is divided into 8x8, 8x4, 4x8 and 4x4 sub inter mode.
잔여 블록에 대한 부호화는 변환, 양자화, 엔트로피(Entropy) 부호화의 순서로 수행이 된다. 먼저 16x16 인트라 모드로 부호화되는 블록은 차분 블록에 변환을 수행하여 변환계수를 출력하고, 출력된 변환계수 중에서 DC 계수만을 모아서 다시 하다마드 변환을 수행하여 하드마드 변환된 DC 계수를 출력한다. Encoding of the residual block is performed in the order of transform, quantization, and entropy encoding. First, the block encoded in the 16x16 intra mode performs transform on the differential block, and outputs transform coefficients, and collects only DC coefficients from the output transform coefficients and performs Hadamard transform again to output hard-mad transformed DC coefficients.
16x16 인트라 모드를 제외한 다른 부호화 모드로 부호화되는 블록에서 변환 과정은 입력된 잔여 블록을 입력 받아 변환(Transform)을 수행하여 변환계수(Transform Coefficient)를 출력한다. 그리고 양자화 과정에서는 입력된 변환계수를 양자화 파라미터에 따라 양자화를 수행한 양자화된 계수(Quantized Coefficient)를 출력한다. In a block encoded in another encoding mode except for the 16x16 intra mode, the transform process receives the input residual block, performs transform, and outputs a transform coefficient. The quantization process outputs a quantized coefficient obtained by performing quantization on the input transform coefficient according to the quantization parameter.
그리고 엔트로피 부호화 과정에서는 입력된 양자화된 계수를 확률 분포에 따른 엔트로피 부호화를 수행하여 비트스트림으로 출력된다. In the entropy encoding process, the input quantized coefficients are subjected to entropy encoding according to a probability distribution, and are output as a bitstream.
H.264는 프레임간(Inter-frame) 예측 부호화를 수행하기 때문에 현재 부호화된 영상을 이후에 입력된 영상의 참조 영상으로 사용하기 위해 복호화하여 저장할 필요가 있다. 따라서 양자화된 계수를 역양자화 과정과 역변환을 수행하여 예측 영상과 가산기를 통해 재구성된 블록을 생성한 후 디블록킹 필터를 통해 부호화 과정에서 발생한 블록킹 현상(Blocking Artifact)을 제거한 후, 참조 영상 버퍼에 저장한다.Since H.264 performs inter-frame predictive encoding, it is necessary to decode and store the currently encoded image for use as a reference image of a later input image. Therefore, by performing inverse quantization and inverse transformation on the quantized coefficients, a reconstructed block is generated through a predictive image and an adder, and then a blocking artifact generated during the encoding process is removed by a deblocking filter, and then stored in a reference image buffer. do.
도 4는 H.264의 복호화 구조도의 일 예를 도시한 도면이다. 4 is a diagram illustrating an example of a decoding structure diagram of H.264.
도 4를 참조하면, H.264 복호화 구조도에서 데이터를 처리하는 단위는 가로 세로 16x16화소 크기의 매크로블록(Macroblock)이며, 비트스트림을 입력 받아 인트라(Intra) 모드 또는 인터(Inter) 모드로 복호화가 수행되어 재구성된 영상을 출력한다. Referring to FIG. 4, a unit for processing data in an H.264 decoding structure diagram is a macroblock having a size of 16x16 pixels, and decoding in an intra mode or an inter mode by receiving a bitstream. The reconstructed image is output.
인트라 모드일 경우, 스위치가 인트라로 전환이 되며, 인터 모드일 경우에는 스위치가 인터로 전환이 된다. In the intra mode, the switch is switched to intra, and in the inter mode, the switch is switched to inter.
복호화 과정의 주요한 흐름은 먼저 예측 블록을 생성한 후, 입력 받은 비트스트림을 복호화한 결과 블록과 예측 블록을 더하여 재구성된 블록을 생성하는 것이다. The main flow of the decoding process is to first generate a prediction block, and then decode the input bitstream to generate a reconstructed block by adding the block and the prediction block.
먼저 예측 블록의 생성은 인트라 모드와 인터 모드에 따라 수행이 된다. First, the generation of the prediction block is performed according to the intra mode and the inter mode.
먼저 인트라 모드일 경우에는 인트라 예측 과정에서 현재 블록의 이미 부호화된 주변 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성하며, 인터 모드일 경우에는 움직임 벡터를 이용하여 참조 영상 버퍼에 저장되어 있는 참조 영상에서 영역을 찾아 움직임 보상을 수행함으로써 예측 블록을 생성한다. First, in the intra mode, the prediction block is generated by performing spatial prediction using the neighboring pixel values of the current block in the intra prediction process, and in the inter mode, the prediction block is stored using the motion vector. The prediction block is generated by finding a region in the reference image and performing motion compensation.
엔트로피 복호화 과정에서는 입력된 비트스트림을 확률 분포에 따른 엔트로피 복호화를 수행하여 양자화된 계수(Quantized Coefficient)를 출력한다. 양자화된 계수를 역양자화과정과 역변환을 수행하여 예측 영상과 가산기를 통해 재구성된 블록을 생성한 다음 디블록킹 필터를 통해 블록킹 현상(Blocking Artifact)를 제거한 후, 참조 영상 버퍼에 저장한다.In the entropy decoding process, quantized coefficients are output by performing entropy decoding on the input bitstream according to a probability distribution. The quantized coefficients are subjected to inverse quantization and inverse transformation to generate a reconstructed block through a predictive image and an adder, and then remove a blocking artifact through a deblocking filter, and store them in a reference image buffer.
깊이 정보 맵을 부호화하는 또 다른 방법의 일 예로 현재 표준화가 진행 중인 HEVC(High Efficiency Video Coding)를 사용할 수 있다. 이 표준은 현재 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)는 공동으로 차세대 비디오 코덱인 HEVC(High Efficiency Video Coding)를 표준화하고 있으며, UHD 영상까지 포함한 영상을 H.264/AVC 대비 2배의 압축효율로 부호화를 하는 것을 목표로 하고 있다. 이는 HD, UHD 영상뿐만 아니라 3D 방송 및 이동통신망에서도 현재보다 낮은 주파수로 고화질의 영상을 제공할 수 있다.As another example of encoding the depth information map, HEVC (High Efficiency Video Coding), which is currently being standardized, may be used. The standard is currently jointly standardizing the next generation video codec, High Efficiency Video Coding (HEVC), with the Moving Picture Experts Group (MPEG) and the Video Coding Experts Group (VCEG), and compared to H.264 / AVC. The goal is to encode at twice the compression efficiency. In addition to HD and UHD video, 3D broadcasting and mobile communication networks can provide high quality video at lower frequencies than currently available.
본 발명의 기술적 과제는 인루프 필터링 방식 중 디블록킹 필터 사용시 경계 필터링 강도 결정에서 화면 내 스킵 부호화 모드가 적용된 블록과 인접한 경계의 경계 필터링 강도(bS)를 0으로 결정하는 방법 및 이를 이용하는 장치를 제공함에 있다. SUMMARY OF THE INVENTION The present invention provides a method for determining a boundary filtering strength (bS) of a boundary adjacent to a block to which a skip coding mode is applied in a screen is 0 when determining a boundary filtering strength when using a deblocking filter among in-loop filtering methods, and an apparatus using the same. Is in.
본 발명의 다른 기술적 과제는 비디오 부호화 및 복호화에서 복잡도를 감소시키는 동시에 이를 통해 부복호화 된 깊이 영상을 통해 생성되는 가상 영상의 화질을 향상시키는 것이다. Another technical problem of the present invention is to reduce the complexity in video encoding and decoding, and to improve the quality of the virtual image generated through the decoded depth image.
본 발명의 다른 기술적 과제는 깊이 정보 맵에 대한 영상 부호화 방법, 샘플링 방법 및 필터링 방법을 제공하는 것이다. Another object of the present invention is to provide an image encoding method, a sampling method, and a filtering method for a depth information map.
본 발명의 일 실시예에 따른 영상 복호화 방법은 깊이 정보 맵의 화면 내 예측 시 현재 블록과 인접한 주변 블록의 예측 화소값을 상기 현재 블록의 화소값으로 생성하는 단계를 포함할 수 있다. An image decoding method according to an embodiment of the present invention may include generating a predicted pixel value of a neighboring block adjacent to a current block as a pixel value of the current block when intra prediction of a depth information map.
부호화된 차분 영상 정보와 복호화 여부 정보 그리고 예측 블록 영상 생성 방법에 대한 선택 정보를 역다중화하는 단계; 입력된 비트스트림에서 현재 블록에 대한 복호화 여부 정보를 복호화하는 단계; 상기 복호화 여부 정보에 따라 상기 현재 블록에 대한 차분 영상 정보 및 예측 블록의 생성 정보를 복호화하는 단계; 예측 블록 영상 생성 방법에 대한 선택 정보에 따라 화면 내 예측 방법과 화면 간 예측 방법 중에서 예측 방법을 선택하는 단계; 예측 영상을 구성하기 위해서 주변 블록으로부터 현재 블록에 대한 예측 방향을 유추하는 단계; 상기 예측 방향에 따라 현재 블록 영상에 대한 예측 영상을 구성하는 단계를 포함할 수 있다. Demultiplexing encoded differential image information, decoding information and selection information on a method of generating a predicted block image; Decoding information on whether to decode the current block in the input bitstream; Decoding differential image information and generation information of a prediction block of the current block according to the decoding information; Selecting a prediction method from an intra prediction method and an inter prediction method according to selection information on a prediction block image generation method; Inferring a prediction direction for a current block from a neighboring block to construct a predicted image; The method may include configuring a prediction image for the current block image according to the prediction direction.
상기 예측 영상을 구성하는 단계는, 현재 블록에 인접한 주변 화소를 복사(패딩)하여 화면 내 예측 영상을 구성하는 방법, 현재 블록과 인접한 주변 화소의 특성을 고려하여 복사할 화소를 결정한 후 결정된 화소를 통해 현재 블록을 구성하는 방법 및 복수의 예측 방법들을 혼합하여 혼합한 값의 평균값 또는 각각의 방법에 따른 가중치의 합으로 예측 블록 영상을 구성하여 사용하는 방법 중 적어도 하나에 의하여 구성될 수 있다. The configuring of the prediction image may include copying (padding) peripheral pixels adjacent to a current block to configure an intra prediction image, determining pixels to be copied in consideration of characteristics of neighboring pixels adjacent to the current block, and then determining the determined pixels. The method may be configured by at least one of a method of constructing a current block and a method of constructing and using a predicted block image using a sum of weights according to respective methods or a mean value of a mixture of a plurality of prediction methods.
본 발명의 다른 실시예에 따른 깊이 정보에 대한 영상 복호화 방법은 상기 깊이 정보의 현재 블록에 대한 예측 블록을 생성하는 단계와; 상기 예측 블록에 기초하여 상기 현재 블록의 복원 블록을 생성하는 단계와; 상기 복원 블록에 필터링을 수행하는 단계를 포함하고, 상기 필터링 수행 여부는 상기 현재 블록의 블록 정보 및 상기 현재 블록의 부호화 정보에 따라 결정될 수 있다.An image decoding method for depth information according to another embodiment of the present invention includes generating a prediction block for a current block of the depth information; Generating a reconstruction block of the current block based on the prediction block; And performing filtering on the reconstructed block, and whether to perform the filtering may be determined according to block information of the current block and encoding information of the current block.
상기 부호화 정보는 상기 복원 영상 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대한 정보를 포함하고, 상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대응되는 부분 중 적어도 하나에는 상기 필터링을 수행하지 않을 수 있다. The encoding information includes information about a portion having the same depth, a portion to be a background, and a portion corresponding to the inside of the object in the reconstructed image, and a portion having the same depth, a portion to be a background, and an object in the restoration block. The filtering may not be performed on at least one of the portions corresponding to the internal portions.
상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대응되는 부분 중 적어도 하나에는 디블록킹 필터, 샘플 적응형 보상(SAO; Sample Adaptive Offset) 필터, 적응형 루프 필터(ALF; Adaptive Loop Filter), 인루프 결합 시점간 깊이정보 필터링(JVDF; In-loop Joint inter-View Depth Filtering) 중 적어도 하나를 수행하지 않을 수 있다.A deblocking filter, a sample adaptive offset filter (SAO) filter, and an adaptive loop are included in at least one of a portion having the same depth, a background portion, and a portion corresponding to a portion inside the object in the reconstruction block. At least one of an adaptive loop filter (ALF) and in-loop joint inter-view depth filtering (JVDF) may not be performed.
상기 부호화 정보는 상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대한 정보를 포함하고, 상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대응되는 부분 중 적어도 하나에는 약한 필터링이 수행될 수 있다.The encoding information includes information about a portion having the same depth, a background portion, and a portion corresponding to the inside of the object in the restoration block, and the portion having the same depth, the portion that is a background, and the object in the restoration block. Weak filtering may be performed on at least one of the portions corresponding to the portion corresponding to the inside.
상기 복원 블록에 대한 업샘플링을 수행하는 단계를 포함하고, 상기 업샘플링은 하나의 샘플값을 기설정된 개수의 샘플값으로 패딩할 수 있다. The method may include performing upsampling on the reconstructed block, and the upsampling may pad one sample value to a predetermined number of sample values.
상기 업샘플링은 상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분 중 적어도 하나에서 수행되지 않을 수 있다. The upsampling may not be performed in at least one of a portion having the same depth, a background portion, and a portion corresponding to the inside of the object in the restoration block.
상기 복원 블록에 필터링을 수행하는 단계는 인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하는 단계; 상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하는 단계를 포함하고, 상기 경계 필터링 강도를 결정하는 단계는 인접한 두 개의 블록 중에서 적어도 하나의 블록이 인트라 스킵(intraskip) 부호화되었는지를 판단하는 단계와; 상기 두 개의 블록이 모두 인트라 스킵(intraskip) 부호화되지 않은 것으로 판단되는 경우, 인접한 두 개의 블록 중에서 적어도 하나의 블록이 인트라 부호화되었는지를 판단하는 단계와; 상기 두 개의 블록이 모두 인트라 부호화되지 않은 것으로 판단되는 경우, 상기 두 개의 블록 중에서 적어도 하나의 블록이 직교 변환 계수를 갖는지를 판단하는 단계와; 상기 두 개의 블록이 모두 직교 변환 계수를 갖지 않는 것으로 판단되는 경우, 상기 두 개의 블록에 대하여 움직임 벡터의 x축 성분 또는 y축 성분의 차의 절대값 중에서 적어도 하나가 1(혹은 4)이상이 되거나 또는 움직임 보상이 다른 참조 프레임에 기초하여 수행되었는지를 판단하는 단계와; 상기 움직임 벡터의 차의 절대값이 모두 1(혹은 4)보다 작고 또한 상기 움직임 보상이 같은 참조 프레임에 기초하여 수행되었는지를 판단하는 단계를 포함할 수 있다. The filtering of the reconstructed block may include determining boundary filtering strengths of two adjacent blocks; And applying filtering on the pixel values of the two blocks according to the boundary filtering intensity, and determining the boundary filtering intensity includes whether at least one block of two adjacent blocks is intraskip coded. Determining; If it is determined that both of the two blocks are not intra skip coded, determining whether at least one block of two adjacent blocks is intra coded; If it is determined that both blocks are not intra coded, determining whether at least one of the two blocks has an orthogonal transform coefficient; If it is determined that the two blocks do not have orthogonal transform coefficients, at least one of the absolute value of the difference between the x-axis component or the y-axis component of the motion vector with respect to the two blocks is 1 (or 4) or Or determining whether motion compensation is performed based on another reference frame; And determining whether the absolute values of the differences of the motion vectors are all less than 1 (or 4) and whether the motion compensation is performed based on the same reference frame.
인접한 두 개의 블록 중에서 적어도 하나의 블록이 인트라 스킵(intraskip) 부호화되었을 경우 경계 필터링 강도(bS)를 0으로 결정할 수 있다. When at least one block of two adjacent blocks is intraskip-coded, the boundary filtering strength bS may be determined to be zero.
인접한 두 블록 중 한 블록이 인트라 스킵(intraskip) 부호화 모드이고 다른 블록이 일반적인 부호화 모드(인트라 혹은 인터)로 판단되는 경우 및 일반적인 부호화 모드에서 직교 변환 계수가 적어도 하나 존재할 경우에는 경계 필터링 강도(bS)를 1, 2, 3, 4 중 어느 하나로 결정할 수 있다. Boundary filtering strength (bS) when one of two adjacent blocks is an intraskip coding mode and the other block is determined to be a general coding mode (intra or inter) and when at least one orthogonal transform coefficient is present in the general coding mode. Can be determined to any one of 1, 2, 3, and 4.
인접한 두 블록이 모두 일반적인 부호화 모드(인트라 혹은 인터)로 판단되는 경우 및 일반적인 부호화 모드에서 직교 변환 계수가 적어도 하나 존재하지 않는 경우에는 경계 필터링 강도를 0, 1, 2, 3 중 어느 하나로 결정할 수 있다. When both adjacent blocks are determined to be a general encoding mode (intra or inter) and when at least one orthogonal transform coefficient does not exist in the general encoding mode, the boundary filtering strength may be determined as one of 0, 1, 2, and 3. .
상기 현재 블록의 예측 모드가 차분 정보가 존재하지 않는 인트라 스킵인 경우, 상기 예측 블록을 생성하는 단계는 상기 현재 블록에 대한 예측 방향을 상기 현재 블록과 인접한 주변 블록으로부터 유추할 수 있다. When the prediction mode of the current block is intra skip without difference information, generating the prediction block may infer a prediction direction for the current block from a neighboring block adjacent to the current block.
상기 복원 블록에 필터링을 수행하는 단계는 인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하는 단계; 상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하는 단계를 포함하고, 상기 경계 필터링 강도를 결정하는 단계는 상기 현재 블록 및 상기 현재 블록에 인접한 주변 블록의 예측 방향이 같은 경우, 상기 경계 필터링 강도(bS)를 0으로 결정할 수 있다. The filtering of the reconstructed block may include determining boundary filtering strengths of two adjacent blocks; And applying filtering on the pixel values of the two blocks according to the boundary filtering intensity, and determining the boundary filtering intensity when the prediction direction of the current block and a neighboring block adjacent to the current block is the same. The boundary filtering intensity bS may be determined as 0.
상기 복원 블록에 필터링을 수행하는 단계는 인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하는 단계; 상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하는 단계를 포함하고, 상기 경계 필터링 강도를 결정하는 단계는 상기 현재 블록의 예측 모드가 차분 정보가 존재하지 않는 인트라 스킵이고, 현재 블록에 대한 화면 내 예측 방향이 수평 방향일 경우, 상기 현재 블록의 수직 경계에 대한 상기 경계 필터링 강도를 ‘0’으로 설정하고, 상기 현재 블록의 예측 모드가 차분 정보가 존재하지 않는 인트라 스킵이고, 현재 블록에 대한 화면 내 예측 방향이 수직 방향일 경우, 상기 현재 블록의 수평 경계에 대한 상기 경계 필터링 강도를 ‘0’으로 설정할 수 있다. The filtering of the reconstructed block may include determining boundary filtering strengths of two adjacent blocks; Applying filtering of the pixel values of the two blocks according to the boundary filtering intensity, and determining the boundary filtering intensity is an intra skip in which the prediction mode of the current block does not exist difference information, If the intra prediction direction for the current block is the horizontal direction, the boundary filtering intensity for the vertical boundary of the current block is set to '0', and the prediction mode of the current block is intra skip without difference information. When the intra prediction direction for the current block is a vertical direction, the boundary filtering intensity for the horizontal boundary of the current block may be set to '0'.
상기 복원 블록에 필터링을 수행하는 단계는 인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하는 단계; 상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하는 단계를 포함하고, 상기 경계 필터링 강도를 결정하는 단계는 상기 현재 블록과 상기 현재 블록에 인접한 주변 블록의 경계가 매크로블록의 경계와 일치하는 경우, 상기 경계 필터링 강도를 ‘0’으로 설정할 수 있다.The filtering of the reconstructed block may include determining boundary filtering strengths of two adjacent blocks; And applying filtering on the pixel values of the two blocks according to the boundary filtering intensity, wherein determining the boundary filtering intensity includes a boundary between the current block and a neighboring block adjacent to the current block. If the boundary matches, the boundary filtering strength may be set to '0'.
본 발명의 다른 실시예에 따른 깊이 정보에 대한 영상 복호화 장치는 상기 깊이 정보의 현재 블록에 대한 예측 블록을 생성하는 예측영상 생성부와 상기 예측 블록에 기초하여 상기 현재 블록의 복원 블록을 생성하는 가산부와; 상기 복원 블록에 필터링을 수행하는 필터부를 포함하고, 상기 필터부는 인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하기 위한 경계 필터링 강도 결정부; 및 상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하기 위한 필터링 적용부를 포함할 수 있다.The image decoding apparatus for depth information according to another embodiment of the present invention includes a prediction image generation unit for generating a prediction block for the current block of the depth information and an addition for generating a reconstruction block of the current block based on the prediction block. Wealth; A filter unit configured to perform filtering on the reconstruction block, wherein the filter unit comprises: a boundary filtering intensity determiner for determining boundary filtering strengths of two adjacent blocks; And a filtering applying unit for applying filtering on the pixel values of the two blocks according to the boundary filtering strength.
상기 경계 필터링 강도 결정부는 인접한 두 개의 블록 중에서 적어도 하나의 블록이 인트라 스킵(intraskip) 부호화되었을 경우 경계 필터링 강도(bS)를 0으로 결정할 수 있다. The boundary filtering strength determiner may determine the boundary filtering strength bS as 0 when at least one block of two adjacent blocks is intraskip coded.
상기 경계 필터링 강도 결정부는 인접한 두 블록 중 한 블록이 인트라 스킵(intraskip) 부호화 모드이고 다른 블록이 일반적인 부호화 모드(인트라 혹은 인터)로 판단되는 경우 및 일반적인 부호화 모드에서 직교 변환 계수가 적어도 하나 존재할 경우에는 경계 필터링 강도(bS)를 1, 2, 3, 4 중 어느 하나로 결정할 수 있다.The boundary filtering strength determiner determines that one block of two adjacent blocks is an intraskip coding mode and the other block is a general coding mode (intra or inter), and when there are at least one orthogonal transform coefficient in the general coding mode. The boundary filtering intensity bS may be determined as one of 1, 2, 3, and 4.
본 발명의 일 실시예에 따르면 인루프 필터링 방식 중 디블록킹 필터 사용시 경계 필터링 강도 결정에서 화면 내 스킵 부호화 모드가 적용된 블록과 인접한 경계의 경계 필터링 강도(bS)를 0으로 결정하는 방법 및 이를 이용하는 장치가 제공된다. According to an embodiment of the present invention, a method for determining a boundary filtering strength (bS) of a boundary adjacent to a block to which an in-screen skip coding mode is applied is 0 when determining a boundary filtering strength when using a deblocking filter in an in-loop filtering method and an apparatus using the same. Is provided.
본 발명의 다른 기술적 실시예에 따르면 비디오 부호화 및 복호화에서 복잡도를 감소시키는 동시에 이를 통해 부복호화 된 깊이 영상을 통해 생성되는 가상 영상의 화질을 향상된다.According to another exemplary embodiment of the present invention, the complexity of video encoding and decoding is reduced, and the image quality of the virtual image generated through the decoded depth image is thereby improved.
본 발명의 다른 기술적 실시예에 따르면 깊이 정보 맵에 대한 영상 부호화 방법, 샘플링 방법 및 필터링 방법이 제공된다.According to another exemplary embodiment of the present invention, an image encoding method, a sampling method, and a filtering method for a depth information map are provided.
도 1은 3차원 비디오 시스템의 기본 구조와 데이터 형식을 도시한 도면이다. 1 is a diagram illustrating the basic structure and data format of a 3D video system.
도 2는 “balloons” 영상에 대한 깊이 정보 맵을 도시한 도면이다2 is a diagram illustrating a depth information map for an image of "balloons".
도 3은 H.264의 부호화 구조도의 일 예를 도시한 도면이다.3 is a diagram illustrating an example of an encoding structure diagram of H.264.
도 4는 H.264의 복호화 구조도의 일 예를 도시한 도면이다.4 is a diagram illustrating an example of a decoding structure diagram of H.264.
도 5는 본 발명의 일 실시예에 따른 비디오 부호화 장치의 구성을 나타내는 제어 블록도이다.5 is a control block diagram illustrating a configuration of a video encoding apparatus according to an embodiment of the present invention.
도 6은 본 발명의 일 실시예에 따른 비디오 복호화 장치의 구성을 나타내는 제어 블록도이다. 6 is a control block diagram illustrating a configuration of a video decoding apparatus according to an embodiment of the present invention.
도 7a는 “kendo”영상에 대한 깊이 정보 맵을 도시한 도면이다. 7A is a diagram illustrating a depth information map for a “kendo” image.
도 7b는 “kendo”영상에 대한 깊이 정보 맵의 임의의 위치에서 수평 방향으로 화소의 값을 도시한 2D 그래프이다.FIG. 7B is a 2D graph showing pixel values in a horizontal direction at an arbitrary position of a depth information map for a “kendo” image.
도 7c는 kendo”영상에 대한 깊이 정보 맵의 임의의 위치에서 수평 방향으로 화소의 값을 도시한 2D 그래프이다. FIG. 7C is a 2D graph showing pixel values in a horizontal direction at an arbitrary position of a depth information map for a kendo ”image.
도 8은 플레인 기반 분할 화면 내 예측 방법을 설명하기 도면이다.8 is a diagram illustrating a prediction method in a plane-based split screen.
도 9는 본 발명의 일 실시예에 따라 현재 블록에 대한 예측 방향을 유추하기 위하여 사용되는 주변 블록들을 도시한 도면이다. FIG. 9 illustrates neighboring blocks used to infer a prediction direction for a current block according to an embodiment of the present invention.
도 10은 본 발명의 일 실시예에 따라 현재 블록에 대한 화면 내 예측 방향을 유도하는 방법을 설명하기 위한 제어 흐름도이다.10 is a control flowchart illustrating a method of deriving an intra prediction direction with respect to a current block according to an embodiment of the present invention.
도 11은 본 발명의 다른 실시예에 따라 현재 블록에 대한 화면 내 예측 방향을 유도하는 방법을 설명하기 위한 제어 흐름도이다.11 is a control flowchart illustrating a method of deriving an intra prediction direction with respect to a current block according to another embodiment of the present invention.
도 12는 본 발명의 다른 실시예에 따라 현재 블록에 대한 예측 방향을 유추하기 위하여 사용되는 주변 블록들을 도시한 도면이다.12 illustrates neighboring blocks used to infer a prediction direction for a current block according to another embodiment of the present invention.
도 13은 깊이 정보 맵의 다운 샘플링 방법을 일 예를 도시한 도면이다.13 is a diagram illustrating an example of a down sampling method of a depth information map.
도 14는 깊이 정보 맵의 업샘플링 방법을 일 예를 도시한 도면이다.14 is a diagram illustrating an example of an upsampling method of a depth information map.
도 15는 본 발명의 일 실시예에 따른 디블록킹 필터링의 경계 필터링 강도(bS)를 결정하는 방법을 설명하기 위한 제어흐름도이다. 15 is a control flowchart illustrating a method of determining boundary filtering strength bS of deblocking filtering according to an embodiment of the present invention.
도 16은 인접한 블록 p 및 블록 q의 경계를 도시한 도면이다.16 is a diagram illustrating the boundary between adjacent blocks p and block q.
도 17은 본 발명의 다른 실시예에 따른 디블록킹 필터링의 경계 필터링 강도(bS)를 결정하는 방법을 설명하기 위한 제어흐름도이다. 17 is a control flowchart illustrating a method of determining boundary filtering strength bS of deblocking filtering according to another embodiment of the present invention.
도 18은 본 발명의 일 실시예에 따른 현재 블록과 주변 블록의 예측 방향 및 매크로블록 경계를 도시한 도면이다.18 illustrates a prediction direction and a macroblock boundary of a current block and neighboring blocks according to an embodiment of the present invention.
도 19는 현재 블록의 부호화 모드 및 현재 블록 경계의 일 예를 도시한 도면이다.19 is a diagram illustrating an example of an encoding mode of a current block and a current block boundary.
도 20은 본 발명의 일 실시예에 따른 비디오 부호화 장치의 구성을 나타내는 제어 블록도이다.20 is a control block diagram illustrating a configuration of a video encoding apparatus according to an embodiment of the present invention.
도 21은 본 발명의 일 실시예에 따른 비디오 복호화 장치의 구성을 나타내는 제어 블록도이다. 21 is a control block diagram illustrating a configuration of a video decoding apparatus according to an embodiment of the present invention.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.EMBODIMENT OF THE INVENTION Hereinafter, embodiment of this invention is described concretely with reference to drawings. In describing the embodiments of the present specification, when it is determined that a detailed description of a related well-known configuration or function may obscure the gist of the present specification, the detailed description thereof will be omitted.
어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 아울러, 본 발명에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다. When a component is said to be “connected” or “connected” to another component, it may be directly connected to or connected to that other component, but it may be understood that another component may exist in between. Should be. In addition, the description "include" a specific configuration in the present invention does not exclude a configuration other than the configuration, it means that additional configuration may be included in the scope of the technical spirit of the present invention or the present invention.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.In addition, the components shown in the embodiments of the present invention are shown independently to represent different characteristic functions, and do not mean that each component is made of separate hardware or one software component unit. In other words, each component is included in each component for convenience of description, and at least two of the components may be combined into one component, or one component may be divided into a plurality of components to perform a function. Integrated and separate embodiments of the components are also included within the scope of the present invention without departing from the spirit of the invention.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.In addition, some of 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 in the scope of the present invention.
도 5는 비디오 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다. 스케일러블(scalable) 비디오 부호화/복호화 방법 또는 장치는 스케일러빌리티(scalability)를 제공하지 않는 일반적인 영상 부호화/복호화 방법 또는 장치의 확장(extension)에 의해 구현될 수 있으며, 도 5의 블록도는 스케일러블 비디오 부호화 장치의 기초가 될 수 있는 영상 부호화 장치의 일 실시예를 나타낸다.5 is a block diagram illustrating a configuration of a video encoding apparatus according to an embodiment. A scalable video encoding / decoding method or apparatus may be implemented by extension of a general video encoding / decoding method or apparatus that does not provide scalability, and the block diagram of FIG. 5 is scalable. An embodiment of an image encoding apparatus that may be the basis of a video encoding apparatus is illustrated.
도 5를 참조하면, 상기 영상 부호화 장치(100)는 움직임 예측부(111), 움직임 보상부(112), 인트라 예측부(120), 스위치(115), 감산기(125), 변환부(130), 양자화부(140), 엔트로피 부호화부(150), 역양자화부(160), 역변환부(170), 가산기(175), 디블록킹 필터부(180) 및 참조영상 버퍼(190)를 포함한다.Referring to FIG. 5, the image encoding apparatus 100 may include a motion predictor 111, a motion compensator 112, an intra predictor 120, a switch 115, a subtractor 125, and a converter 130. And a quantization unit 140, an entropy encoding unit 150, an inverse quantization unit 160, an inverse transform unit 170, an adder 175, a deblocking filter unit 180, and a reference image buffer 190.
영상 부호화 장치(100)는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 부호화를 수행하고 비트스트림(bit stream)을 출력할 수 있다. 인트라 예측은 화면 내 예측, 인터 예측은 화면 간 예측을 의미한다. 인트라 모드인 경우 스위치(115)가 인트라로 전환되고, 인터 모드인 경우 스위치(115)가 인터로 전환된다. 영상 부호화 장치(100)는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분을 부호화할 수 있다.The image encoding apparatus 100 may perform encoding in an intra mode or an inter mode on an input image and output a bit stream. Intra prediction means intra prediction and inter prediction means inter prediction. In the intra mode, the switch 115 is switched to intra, and in the inter mode, the switch 115 is switched to inter. The image encoding apparatus 100 may generate a prediction block for an input block of an input image and then encode a difference between the input block and the prediction block.
이때 생성된 차분에 대한 블록을 부호화할지 혹은 부호화하지 않을지에 대한 선택은 율왜곡 관점에서 부호화 효율이 우수한 것으로 판단될 수 있다. 예측 블록의 생성은 화면 내 예측 과정을 통해 생성되거나 혹은 화면 간 예측을 통해 생성될 수 있다. 이때 화면 내 예측을 수행할 지 혹은 화면 간 예측을 수행할 지에 대한 선택은 율왜곡 관점에서 부호화 효율이 우수한 것으로 판단될 수 있다.In this case, the selection of encoding or not encoding the generated block may be determined to be excellent in terms of rate distortion. The generation of the prediction block may be generated through intra prediction or may be generated through inter prediction. In this case, selection of whether to perform intra prediction or inter prediction may be determined to be excellent in encoding efficiency in terms of rate distortion.
인트라 모드인 경우, 인트라 예측부(120)는 현재 블록 주변의 이미 부호화된 블록의 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다.In the intra mode, the intra predictor 120 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already encoded around the current block.
인터 모드인 경우, 움직임 예측부(111)는, 움직임 예측 과정에서 참조 영상 버퍼(190)에 저장되어 있는 참조 영상에서 입력 블록과 가장 매치가 잘 되는 영역을 찾아 움직임 벡터를 구할 수 있다. 움직임 보상부(112)는 움직임 벡터와 참조 영상 버퍼(190)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다. In the inter mode, the motion predictor 111 may obtain a motion vector by searching for a region that best matches an input block in the reference image stored in the reference image buffer 190 during the motion prediction process. The motion compensator 112 may generate a prediction block by performing motion compensation using the motion vector and the reference image stored in the reference image buffer 190.
감산기(125)는 입력 블록과 생성된 예측 블록의 차분에 의해 잔여 블록(residual block)을 생성할 수 있다. 변환부(130)는 잔여 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 그리고 양자화부(140)는 입력된 변환 계수를 양자화 파라미터에 따라 양자화하여 양자화된 계수(quantized coefficient)를 출력할 수 있다. The subtractor 125 may generate a residual block by the difference between the input block and the generated prediction block. The transform unit 130 may output a transform coefficient by performing transform on the residual block. The quantization unit 140 may output the quantized coefficient by quantizing the input transform coefficient according to the quantization parameter.
엔트로피 부호화부(150)는, 양자화부(140)에서 산출된 값들 또는 부호화 과정에서 산출된 부호화 파라미터 값 등을 기초로, 심볼(symbol)을 확률 분포에 따라 엔트로피 부호화하여 비트스트림(bit stream)을 출력할 수 있다. 엔트로피 부호화 방법은 다양한 값을 갖는 심볼을 입력 받아, 통계적 중복성을 제거하면서, 복호 가능한 2진수의 열로 표현하는 방법이다. The entropy encoding unit 150 entropy encodes a symbol according to a probability distribution based on values calculated by the quantization unit 140 or encoding parameter values calculated in the encoding process, thereby generating a bit stream. You can print The entropy encoding method is a method of receiving a symbol having various values and expressing it in a decodable column while removing statistical redundancy.
여기서, 심볼이란 부호화/복호화 대상 구문 요소(syntax element) 및 부호화 파라미터(coding parameter), 잔여 신호(residual signal)의 값 등을 의미한다. 부호화 파라미터는 부호화 및 복호화에 필요한 매개변수로서, 구문 요소와 같이 부호화기에서 부호화되어 복호화기로 전달되는 정보뿐만 아니라, 부호화 혹은 복호화 과정에서 유추될 수 있는 정보를 포함할 수 있으며 영상을 부호화하거나 복호화할 때 필요한 정보를 의미한다. 부호화 파라미터는 예를 들어 인트라/인터 예측모드, 이동/움직임 벡터, 참조 영상 색인, 부호화 블록 패턴, 잔여 신호 유무, 변환 계수, 양자화된 변환 계수, 양자화 파라미터, 블록 크기, 블록 분할 정보 등의 값 또는 통계를 포함할 수 있다. 또한 잔여 신호는 원신호와 예측 신호의 차이를 의미할 수 있고, 또한 원신호와 예측 신호의 차이가 변환(transform)된 형태의 신호 또는 원신호와 예측 신호의 차이가 변환되고 양자화된 형태의 신호를 의미할 수도 있다. 잔여 신호는 블록 단위에서는 잔여 블록이라 할 수 있다.Here, the symbol means a syntax element, a coding parameter, a residual signal value, or the like that is to be encoded / decoded. Encoding parameters are parameters necessary for encoding and decoding, and may include information that may be inferred during encoding or decoding, as well as information encoded by an encoder and transmitted to a decoder, such as syntax elements. Means necessary information. Coding parameters may be, for example, intra / inter prediction modes, moving / motion vectors, reference picture indexes, coding block patterns, presence or absence of residual signals, transform coefficients, quantized transform coefficients, quantization parameters, block sizes, block partitioning information, or the like. May include statistics. In addition, the residual signal may mean a difference between the original signal and the prediction signal, and a signal in which the difference between the original signal and the prediction signal is transformed or a signal in which the difference between the original signal and the prediction signal is converted and quantized It may mean. The residual signal may be referred to as a residual block in block units.
엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 부호화 대상 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 부호화를 통해서 영상 부호화의 압축 성능이 높아질 수 있다. When entropy encoding is applied, a small number of bits are allocated to a symbol having a high probability of occurrence and a large number of bits are allocated to a symbol having a low probability of occurrence, whereby the size of the bit string for the symbols to be encoded is increased. Can be reduced. Therefore, compression performance of image encoding may be increased through entropy encoding.
엔트로피 부호화를 위해 지수 골룸(exponential golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법이 사용될 수 있다. 예를 들어, 엔트로피 부호화부(150)에는 가변 길이 부호화(VLC: Variable Lenghth Coding/Code) 테이블과 같은 엔트로피 부호화를 수행하기 위한 테이블이 저장될 수 있고, 엔트로피 부호화부(150)는 저장된 가변 길이 부호화(VLC) 테이블을 사용하여 엔트로피 부호화를 수행할 수 있다. 또한 엔트로피 부호화부(150)는 대상 심볼의 이진화(binarization) 방법 및 대상 심볼/빈(bin)의 확률 모델(probability model)을 도출한 후, 도출된 이진화 방법 또는 확률 모델을 사용하여 엔트로피 부호화를 수행할 수도 있다.For entropy coding, coding methods such as exponential golomb, context-adaptive variable length coding (CAVLC), and context-adaptive binary arithmetic coding (CABAC) may be used. For example, the entropy encoder 150 may store a table for performing entropy encoding, such as a variable length coding (VLC) table, and the entropy encoder 150 may store the stored variable length encoding. Entropy encoding may be performed using the (VLC) table. In addition, the entropy encoder 150 derives a binarization method of a target symbol and a probability model of a target symbol / bin, and then performs entropy encoding using the derived binarization method or a probability model. You may.
양자화된 계수는 역양자화부(160)에서 역양자화되고 역변환부(170)에서 역변환될 수 있다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록이 생성될 수 있다. The quantized coefficients may be inversely quantized by the inverse quantizer 160 and inversely transformed by the inverse transformer 170. The inverse quantized and inverse transformed coefficients are added to the prediction block through the adder 175 and a reconstruction block can be generated.
복원 블록은 디블록킹 필터부(180)를 거치고, 디블록킹 필터부(180)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 디블록킹 필터부(180)를 거친 복원 블록은 참조 영상 버퍼(190)에 저장될 수 있다.The reconstruction block passes through the deblocking filter unit 180, and the deblocking filter unit 180 restores at least one or more of a deblocking filter, a sample adaptive offset (SAO), and an adaptive loop filter (ALF). It can be applied to the reconstructed picture. The reconstructed block that has passed through the deblocking filter unit 180 may be stored in the reference image buffer 190.
도 6은 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다. 도 1에서 상술한 바와 같이 스케일러블 비디오 부호화/복호화 방법 또는 장치는 스케일러빌리티를 제공하지 않는 일반적인 영상 부호화/복호화 방법 또는 장치의 확장에 의해 구현될 수 있으며, 도 2의 블록도는 스케일러블 비디오 복호화 장치의 기초가 될 수 있는 영상 복호화 장치의 일 실시예를 나타낸다.6 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment. As described above with reference to FIG. 1, a scalable video encoding / decoding method or apparatus may be implemented by extension of a general video encoding / decoding method or apparatus that does not provide scalability, and the block diagram of FIG. 2 is scalable video decoding. An embodiment of an image decoding apparatus that may be the basis of an apparatus is shown.
도 6를 참조하면, 상기 영상 복호화 장치(200)는 엔트로피 디코딩부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 디블록킹 필터부(260) 및 참조 영상 버퍼(270)를 포함한다.Referring to FIG. 6, the image decoding apparatus 200 may include an entropy decoding unit 210, an inverse quantization unit 220, an inverse transform unit 230, an intra predictor 240, a motion compensator 250, and deblocking. The filter unit 260 and the reference image buffer 270 are included.
영상 복호화 장치(200)는 부호화기에서 출력된 비트스트림을 입력 받아 인트라 모드 또는 인터 모드로 복호화를 수행하고 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 인트라 모드인 경우 스위치가 인트라로 전환되고, 인터 모드인 경우 스위치가 인터로 전환될 수 있다. 영상 복호화 장치(200)는 입력 받은 비트스트림으로부터 복원된 잔여 블록(residual block)을 얻고 예측 블록을 생성한 후 복원된 잔여 블록과 예측 블록을 더하여 재구성된 블록, 즉 복원 블록을 생성할 수 있다.The image decoding apparatus 200 may receive a bitstream output from the encoder and perform decoding in an intra mode or an inter mode, and output a reconstructed image, that is, a reconstructed image. In the intra mode, the switch may be switched to intra, and in the inter mode, the switch may be switched to inter. The image decoding apparatus 200 may generate a reconstructed block, that is, a reconstructed block by obtaining a residual block reconstructed from the received bitstream, generating a prediction block, and adding the reconstructed residual block and the prediction block.
엔트로피 디코딩부(210)는, 입력된 비트스트림을 확률 분포에 따라 엔트로피 복호화하여, 양자화된 계수(quantized coefficient) 형태의 심볼을 포함한 심볼들을 생성할 수 있다. 엔트로피 복호화 방법은 2진수의 열을 입력 받아 각 심볼들을 생성하는 방법이다. 엔트로피 복호화 방법은 상술한 엔트로피 부호화 방법과 유사하다.The entropy decoding unit 210 may entropy decode the input bitstream according to a probability distribution to generate symbols including symbols in the form of quantized coefficients. The entropy decoding method is a method of generating each symbol by receiving a binary string. The entropy decoding method is similar to the entropy coding method described above.
양자화된 계수는 역양자화부(220)에서 역양자화되고 역변환부(230)에서 역변환되며, 양자화된 계수가 역양자화/역변환 된 결과, 복원된 잔여 블록(residual block)이 생성될 수 있다. The quantized coefficients are inversely quantized by the inverse quantizer 220 and inversely transformed by the inverse transformer 230, and as a result of the inverse quantization / inverse transformation of the quantized coefficients, a reconstructed residual block may be generated.
인트라 모드인 경우, 인트라 예측부(240)는 현재 블록 주변의 이미 부호화된 블록의 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다. 인터 모드인 경우, 움직임 보상부(250)는 움직임 벡터 및 참조 영상 버퍼(270)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다. In the intra mode, the intra predictor 240 may generate a predictive block by performing spatial prediction using pixel values of an already encoded block around the current block. In the inter mode, the motion compensator 250 may generate a prediction block by performing motion compensation using the motion vector and the reference image stored in the reference image buffer 270.
복원된 잔여 블록과 예측 블록은 가산기(255)를 통해 더해지고, 더해진 블록은 디블록킹 필터부(260)를 거친다. 디블록킹 필터부(260)는 디블록킹 필터, SAO, ALF 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 디블록킹 필터부(260)는 재구성된 영상, 즉 복원 영상을 출력한다. 복원 영상은 참조 영상 버퍼(270)에 저장되어 화면 간 예측에 사용될 수 있다.The reconstructed residual block and the prediction block are added through the adder 255, and the added block passes through the deblocking filter unit 260. The deblocking filter unit 260 may apply at least one or more of the deblocking filter, SAO, and ALF to the reconstructed block or the reconstructed picture. The deblocking filter 260 outputs a reconstructed image, that is, a reconstructed image. The reconstructed picture may be stored in the reference picture buffer 270 to be used for inter prediction.
한편, 가상시점 영상을 생성하는데 사용되는 깊이 정보 맵은 카메라와 객체 간의 거리를 나타내므로 화소간 상관성이 매우 높다. 특히 객체 내부 혹은 배경 부분의 경우, 동일한 깊이 정보의 값이 광범위하게 나타난다. On the other hand, the depth information map used to generate the virtual view image represents the distance between the camera and the object, so the correlation between pixels is very high. Especially in the case of the inside of the object or the background part, the value of the same depth information appears widely.
도 7a는 “kendo”영상에 대한 깊이 정보 맵을 도시한 도면이고, 도 7b는 “kendo”영상에 대한 깊이 정보 맵의 임의의 위치에서 수평 방향으로 화소의 값을 도시한 2D 그래프이며, 도 7c는 kendo”영상에 대한 깊이 정보 맵의 임의의 위치에서 수평 방향으로 화소의 값을 도시한 2D 그래프이다. FIG. 7A is a diagram showing a depth information map for a “kendo” image, FIG. 7B is a 2D graph showing values of pixels in a horizontal direction at an arbitrary position of the depth information map for a “kendo” image, and FIG. 7C Is a 2D graph showing pixel values in a horizontal direction at an arbitrary position of a depth information map for a kendo ”image.
도 7a 내지 도 7c에서 확인할 수 있듯이, 깊이 정보 맵의 화소간 상관성이 매우 높다는 것을 알 수 있다. 특히, 깊이 정보 맵의 객체 내부와 배경 부분에서 깊이 정보의 값이 동일함을 확인할 수 있다. As can be seen in FIGS. 7A to 7C, it can be seen that the inter-pixel correlation of the depth information map is very high. In particular, it can be seen that the value of the depth information is the same in the object and the background of the depth information map.
도 7b의 경우, 도 7a에서 수평선 Ⅱ-Ⅱ에 대응하는 부분의 화소 값을 도시한 것으로, 도시된 바와 같이 도 7a의 수평선(Ⅱ-Ⅱ)에 대응하는 부분은 두 개의 영역으로 구분되고 있다. 도 7b는 이러한 두 개의 영역을 반영하고 있으면, 두 개의 영역 내에서의 깊이 정보 값들을 동일함을 알 수 있다. In the case of FIG. 7B, the pixel value of the portion corresponding to the horizontal line II-II is illustrated in FIG. 7A, and as shown in FIG. 7A, the portion corresponding to the horizontal line II-II of FIG. 7A is divided into two regions. If FIG. 7B reflects these two areas, it can be seen that the depth information values in the two areas are the same.
도 7c는 도 7a에서 수직선 Ⅲ-Ⅲ에 대응하는 부분의 화소 값을 도시한 것으로, 도시된 바와 같이 도 7b의 수직선(Ⅲ-Ⅲ)에 대응하는 부분은 두 개의 영역으로 구분되고 있다. 도 7c는 이러한 두 개의 영역을 반영하고 있으면, 두 개의 영역 내에서의 깊이 정보 값들을 동일함을 알 수 있다. FIG. 7C illustrates pixel values of the portion corresponding to the vertical line III-III in FIG. 7A. As illustrated, the portion corresponding to the vertical line III-III of FIG. 7B is divided into two regions. If FIG. 7C reflects these two areas, it can be seen that the depth information values in the two areas are the same.
화소 간의 상관성이 높은 영상에서 화면 내 예측을 수행할 때 현재 블록의 화소 값은 주변 블록의 화소 값만을 이용하여 거의 예측할 수 있으므로, 현재 블록과 예측 블록 간의 차이 값인 잔여 신호에 대한 부호화 및 복호화 과정은 거의 필요 없게 된다. When performing intra prediction on an image having high correlation between pixels, the pixel value of the current block can be almost predicted using only the pixel values of the neighboring block. Therefore, the encoding and decoding process of the residual signal, which is a difference between the current block and the prediction block, is performed. Almost no need.
이런 경우, 도 5 및 도 6에 도시된 바와 같이, 잔여 신호에 대한 변환 및 양자화 과정, 역양자화 및 역변환 과정이 필요 없게 된다. In this case, as shown in FIGS. 5 and 6, the conversion and quantization processes, the inverse quantization and the inverse transformation processes for the residual signal are not required.
따라서 이러한 특성을 이용한 화면 내 부호화를 통해 계산 복잡도를 감소시키고 부호화 효율을 향상시킬 수 있다. 또한 배경 부분이나 객체 내부와 같이 깊이 정보 값이 모두 동일할 경우, 해당 부분에 필터링(예를 들어, 디블록킹 필터, 샘플 적응형 보상(SAO; Sample Adaptive Offset) 필터, 적응형 루프 필터(ALF; Adaptive Loop Filter) 등)과 같은 과정을 수행하지 않음으로써 계산 복잡도를 감소시킬 수 있다.Therefore, computational complexity can be reduced and coding efficiency can be improved by using intra picture coding using these characteristics. In addition, when the depth information values are the same, such as a background part or an object, filtering is performed on the corresponding part (eg, a deblocking filter, a sample adaptive offset (SAO) filter, and an adaptive loop filter (ALF)). The computational complexity can be reduced by not performing the same process as the Adaptive Loop Filter.
깊이 정보 맵의 객체 경계 부분은 가상 영상 합성에 매우 중요한 요소이다. 이러한 깊이 정보 맵의 객체 경계부분을 부호화하는 방법의 일 예로 플레인 기반 분할 화면 내 예측 방법이 있다. The object boundary portion of the depth information map is a very important element in virtual image synthesis. An example of a method of encoding an object boundary part of the depth information map is a plane-based intra-prediction method.
도 8은 플레인 기반 분할 화면 내 예측 방법을 설명하기 도면이다. 8 is a diagram illustrating a prediction method in a plane-based split screen.
도 8과 같이, 플레인 기반 분할 화면 내 예측 방법은 현재 블록의 주변 픽셀을 기반으로 현재 블록을 두 가지 영역(객체 내부인지 객체 외부인지)으로 분할 하여 부호화하는 방법이다. 이때 분할된 이진 비트맵 정보는 복호기에 전송된다.As shown in FIG. 8, the prediction method in a plane-based split screen is a method of splitting and encoding a current block into two regions (whether inside an object or outside an object) based on neighboring pixels of the current block. In this case, the divided binary bitmap information is transmitted to the decoder.
플레인 기반 분할 화면 내 예측 방법은 깊이 정보 맵의 객체 경계 부분에 적용되는 방법이다. 이러한 방법과 같이 객체 경계부분의 특성을 유지시키면서, 즉, 객체 경계를 스무딩하거나 뭉개지 않고, 깊이 정보 맵을 이용할 경우 가상 합성 영상의 화질이 향상될 수 있다. 따라서 깊이 정보 맵의 객체 경계 부분에는 디필터링 과정과 같은 객체 경계를 뭉개는 필터링을 수행하지 않을 수 있다. The prediction method within a plane-based split screen is a method applied to an object boundary part of a depth information map. As described above, the image quality of the virtual composite image may be improved when the depth information map is used while maintaining the characteristics of the object boundary, that is, without smoothing or crushing the object boundary. Therefore, the object boundary portion of the depth information map may not be filtered to crush the object boundary such as a defiltering process.
기존의 디블록킹 필터링 방법은 두 인접한 블록간의 부호화 모드(화면 내 예측인지 화면 간 예측인지), 두 블록 간의 참조픽쳐의 동일성, 두 블록간의 움직임 정보의 차이 등으로 인한 블록 경계 부분의 블록킹 현상을 제거하기 위한 방법이다. 따라서 블록 경계 부분에 디블록킹 필터를 수행할 때 디블록킹의 강도를 두 블록 간의 부호화 모드(화면 내 예측인지 화면 간 예측인지), 두 블록 간의 참조픽쳐의 동일성, 두 블록간의 움직임 정보의 차이 등으로 판단한다. 일 예로 두 블록 중 하나는 화면 내 예측되었고 다른 한 블록은 화면 간 예측 모드로 부호화 되었을 경우, 두 블록간에는 매우 심한 블록킹 현상이 발생할 수 있으며, 이러한 경우 강한 강도로 디블록킹 필터를 수행할 수 있다. The existing deblocking filtering method removes the blocking phenomenon at the block boundary due to the encoding mode (intra prediction or inter prediction) between two adjacent blocks, the sameness of the reference picture between the two blocks, and the difference in the motion information between the two blocks. It is a method for doing so. Therefore, when the deblocking filter is performed on the block boundary part, the strength of the deblocking is determined by the coding mode between the two blocks (either intra prediction or inter prediction), equality of reference pictures between the two blocks, and difference in motion information between the two blocks. To judge. For example, when one of the two blocks is predicted in the picture and the other block is encoded in the inter prediction mode, a very severe blocking phenomenon may occur between the two blocks, and in this case, the deblocking filter may be performed with a strong strength.
또 다른 일예로, 두 블록 모두 화면 간 예측이 수행되었고 두 블록의 참조픽쳐가 동일하고 또한 두 블록간의 움직임 정보가 동일할 경우, 두 블록간에는 블록킹 현상이 발생하지 않을 수 있으며, 이러한 경우 디블록킹 필터를 수행하지 않거나 혹은 디블록킹 필터를 약하게 수행할 수 있다.As another example, when both blocks are inter prediction and the reference pictures of the two blocks are the same and the motion information between the two blocks is the same, blocking may not occur between the two blocks. In this case, the deblocking filter May not be performed or the deblocking filter may be weakly performed.
이러한 디블록킹 필터는 영상에서의 블록킹 현상을 제거하여 영상의 주관적 화질을 향상시키는 역할을 수행한다. 하지만 깊이 정보 맵은 가상합성 영상을 생성하기 위해서 사용할 뿐 실제 디스플레이 장치로 출력되지 않는다. 따라서 이러한 깊이 정보 맵의 블록 경계는 주관적 화질 향상 측면이 아닌 가상 합성 영상을 화질을 향상시키기 위해 필요할 수 있다. The deblocking filter removes the blocking phenomenon in the image and improves the subjective quality of the image. However, the depth map is only used to generate the virtual composite image and is not output to the actual display device. Therefore, the block boundary of the depth information map may be necessary to improve the quality of the virtual composite image, rather than the subjective quality improvement aspect.
또한 깊이 정보 맵의 디블록킹 필터(혹은 다른 필터링 방법들)는 두 블록 간의 부호화 모드(화면 내 예측인지 화면 간 예측인지), 두 블록 간의 참조 픽쳐의 동일성, 두 블록간의 움직임 정보가 아닌 현재 블록의 부호화 모드에 따라 필터링의 수행 여부 및 필터링의 강도를 설정할 필요가 있다. In addition, the deblocking filter (or other filtering methods) of the depth information map includes an encoding mode (either intra prediction or inter prediction) between two blocks, equality of reference pictures between two blocks, and movement information of the current block, not motion information between two blocks. It is necessary to set whether to perform filtering and the strength of filtering according to the encoding mode.
예를 들어, 현재 블록이 객체 경계 부분을 부호화하는 플래인 기반 분할 부호화 방법으로 부호화되었을 경우, 객체의 경계 부분을 최대한 뭉개지 않게 하기 위해서는 블록 경계에 대하여 디블록킹 필터를 수행하지 않는 것이 더 효과적일 수 있다. For example, if the current block is encoded by a plane-based split coding method that encodes an object boundary portion, it may be more effective not to perform a deblocking filter on the block boundary in order to avoid crushing the boundary portion of the object as much as possible. have.
이하에서, 화소간의 상관성이 높은 영상에 대한 화면 내 부호화 시, 계산복잡도를 감소시키고 부호화 효율을 향상시키는 방법을 제안한다. 깊이 정보 맵은 객체들간의 거리감을 나타내기 위한 깊이 정보이며, 일반적으로 매우 완만한 값을 가진다. Hereinafter, a method of reducing computation complexity and improving encoding efficiency in an intra-picture encoding of an image having high correlation between pixels is proposed. The depth information map is depth information for representing a sense of distance between objects, and generally has a very gentle value.
특히, 배경 부분이나 객체 내부의 경우, 깊이 정보가 광범위하게 동일한 값을 가진다. 이러한 특징을 기반으로 하여 주변 블록의 깊이 값을 패딩(padding)하여 현재 블록의 깊이 정보를 구성할 수 있다. In particular, in the background part or inside the object, the depth information has the same broad value. Based on this feature, the depth information of the neighboring block may be padded to configure depth information of the current block.
또한 광범위하게 동일한 깊이 정보 값을 가지는 부분에는 일반적인 영상에 적용하는 필터링 과정이 필요 없을 수 있다. 또한 샘플링(업-샘플링 혹은 다운-샘플링) 과정도 단순하게 적용할 수 있다. 본 발명에서는 다양한 깊이 정보 맵의 화면 내 부호화 방법과 깊이 정보 맵의 필터링 및 샘플링 방법을 제안한다.In addition, the filtering process that is applied to the general image may not be required in the part having the same depth information. The sampling (up-sampling or down-sampling) process can also be applied simply. The present invention proposes an intra picture encoding method of various depth information maps and a filtering and sampling method of the depth information map.
깊이 정보 맵의 화면 내 부호화 방법In-screen encoding method of depth information map
화면 내 예측 방법을 이용하여 예측 블록을 생성할 때에는 일반적으로 이미 부호화가 수행된 현재 블록의 주변 블록을 통해 예측된다. 이와 같이 화면 내 예측 블록만으로 현재 블록을 구성하는 방법을 인트라 예측 모드라 한다. When generating a prediction block using the intra prediction method, the prediction block is generally predicted through neighboring blocks of the current block in which encoding has been performed. As described above, a method of configuring the current block using only intra-prediction blocks is called an intra prediction mode.
본 발명에서는 인트라 예측 모드로 부호화된 블록을 인트라 16x16 모드(혹은 8x8 모드 혹은 4x4 모드 혹은 NxN 모드) 이면서 차분 데이터가 없을 경우를 인트라 스킵(intra skip)모드라고 한다. 인트라 스킵(intra skip) 모드로 부호화된 블록의 경우의 장점으로는 해당 블록을 화면 내 예측 방향을 공간상의 부호화된 주변 블록으로부터 유추할 수 있다. 다시 말하면, 인트라 스킵(intra skip)모드로 부호화된 블록은 화면 내 예측 방향 정보 및 그 이외 정보를 디코딩 장치로 전송하지 않으며, 단지 주변 블록의 정보를 통해 현재 블록의 화면 내 예측 방향 정보를 유도할 수 있다.In the present invention, a block encoded in the intra prediction mode is referred to as an intra skip mode when the intra 16x16 mode (or 8x8 mode, 4x4 mode, or NxN mode) and no differential data are present. As an advantage of a block coded in an intra skip mode, an intra prediction prediction direction may be inferred from a coded neighboring block in space. In other words, the block encoded in the intra skip mode does not transmit intra prediction picture information and other information to the decoding device, and deduces intra prediction picture information of the current block through information of neighboring blocks. Can be.
도 9는 본 발명의 일 실시예에 따라 현재 블록에 대한 예측 방향을 유추하기 위하여 사용되는 주변 블록들을 도시한 도면이다. FIG. 9 illustrates neighboring blocks used to infer a prediction direction for a current block according to an embodiment of the present invention.
도 9를 참조하면, 현재 블록(X)에 대한 화면 내 예측 방향은 현재 블록(X)에 인접한 주변 블록(A, B)들로부터 유추할 수 있다. 여기서 주변 블록은 현재 블록(X)에 인접한 모든 블록을 의미 할 수 있다. 현재 블록(X)에 대한 화면 내 예측 방향을 유도하는 방법은 여러 가지가 될 수 있으며, 그 일 실시예는 아래 상세히 설명된다. Referring to FIG. 9, the intra prediction direction with respect to the current block X may be inferred from neighboring blocks A and B adjacent to the current block X. Here, the neighboring block may mean all blocks adjacent to the current block (X). There may be various methods of deriving the intra-prediction direction for the current block X, one embodiment of which is described in detail below.
도 10은 본 발명의 일 실시예에 따라 현재 블록에 대한 화면 내 예측 방향을 유도하는 방법을 설명하기 위한 제어 흐름도이다.10 is a control flowchart illustrating a method of deriving an intra prediction direction with respect to a current block according to an embodiment of the present invention.
우선, 화면 내 예측 방향은 수직 예측(0), 수평 예측(1), 소정의 평균값을 이용하는 DC 예측(2), Plane(대각선) 예측(3)이 존재하는 것으로 가정한다. 예측 방향에 대한 값은 발생확률이 높을수록 적은 값을 가진다. 예를 들어 수직 예측(0)이 가장 발생확률이 높다. 그 이외에도 많은 예측 방향이 존재할 수 있으며, 예측 방향의 발생 확률은 블록의 크기에 따라 달라진다. 현재 블록에 대한 예측 방향 정보는 IntraPredMode로 나타낼 수 있다.First, it is assumed that the intra prediction direction includes the vertical prediction (0), the horizontal prediction (1), the DC prediction (2) using a predetermined average value, and the plane (diagonal) prediction (3). The value for the prediction direction has a smaller value as the probability of occurrence increases. For example, vertical prediction (0) has the highest probability of occurrence. In addition, there may be many prediction directions, and the probability of occurrence of the prediction direction depends on the size of the block. The prediction direction information on the current block may be represented by IntraPredMode.
1 단계) 블록 A의 가용성을 판단한다(S1000a). 블록 A가 가용하지 않는 경우, 예를 들어 블록 A가 부호화 되지 않았거나 블록 A의 부호화 모드를 사용할 수 없을 경우에는 IntraPredModeA(블록 A에 대한 예측 방향 정보)를 DC 예측 방향으로 설정한다(S1001). Step 1) The availability of the block A is determined (S1000a). When block A is not available, for example, when block A is not encoded or the coding mode of block A cannot be used, IntraPredModeA (prediction direction information for block A) is set as the DC prediction direction (S1001).
반면, 블록 A가 가용하다면, 2단계를 수행한다.On the other hand, if block A is available, perform step 2.
2 단계) 만약, 블록 A가 인트라 16x16 부호화 모드(혹은 8x8 부호화 모드 혹은 4x4 부호화 모드)이거나 혹은 intra_skip 부호화 모드일 경우, IntraPredModeA에 블록 A의 IntraPredMode, 즉 블록 A의 예측 방향 정보를 IntraPredModeA로 설정한다(S1002). Step 2) If block A is an intra 16x16 encoding mode (or 8x8 encoding mode or 4x4 encoding mode) or intra_skip encoding mode, IntraPredModeA is set to IntraPredMode of block A, that is, the prediction direction information of block A as IntraPredModeA ( S1002).
3 단계) 만일 블록 B가 부호화 되지 않았거나 블록 B의 부호화 모드를 사용할 수 없을 경우와 같이 블록 B가 가용하지 않으면(S1000b) IntraPredModeB(블록 B에 대한 예측 방향 정보)를 DC 예측 방향으로 설정한다(S1003). Step 3) If block B is not available, such as when block B is not encoded or the coding mode of block B is not available (S1000b), IntraPredModeB (prediction direction information for block B) is set as the DC prediction direction ( S1003).
그렇지 않다면, 4단계를 수행한다.If not, perform step 4.
4 단계) 만일 블록 B가 인트라 16x16 부호화 모드(혹은 8x8 부호화 모드 혹은 4x4 부호화 모드)이거나 혹은 intra_skip 부호화 모드일 경우, 블록 B의 IntraPredMode를 IntraPredModeB로 설정한다(S1004).Step 4) If block B is an intra 16x16 encoding mode (or 8x8 encoding mode or 4x4 encoding mode) or intra_skip encoding mode, IntraPredMode of block B is set to IntraPredModeB (S1004).
5 단계) 그런 후, IntraPredModeA와 IntraPredModeB 값 중에서 최소값을 현재 블록(X)의 IntraPredMode로 설정할 수 있다(S1005)Step 5) Then, a minimum value among IntraPredModeA and IntraPredModeB values may be set to IntraPredMode of the current block X (S1005).
도 11은 본 발명의 다른 실시예에 따라 현재 블록에 대한 화면 내 예측 방향을 유도하는 방법을 설명하기 위한 제어 흐름도이다.11 is a control flowchart illustrating a method of deriving an intra prediction direction with respect to a current block according to another embodiment of the present invention.
1 단계) 만일 블록 A가 부호화 되지 않았거나 블록 A의 부호화 모드를 사용할 수 없을 경우, 블록 A가 가용하지 않는 경우에는(S1100a) IntraPredModeA를 ‘-1’로 설정한다(S1101). Step 1) If block A is not encoded or the coding mode of block A cannot be used, if block A is not available (S1100a), IntraPredModeA is set to '-1' (S1101).
반면, 블록 A가 가용하다면, 2단계를 수행한다.On the other hand, if block A is available, perform step 2.
2 단계) 만일 블록 A가 인트라 16x16 부호화 모드(혹은 8x8 부호화 모드 혹은 4x4 부호화 모드)이거나 혹은 intra_skip 부호화 모드일 경우, IntraPredModeA에 블록 A의 IntraPredMode, 즉 블록 A의 예측 방향 정보를 IntraPredModeA로 설정한다(S1102). Step 2) If block A is an intra 16x16 encoding mode (or 8x8 encoding mode or 4x4 encoding mode) or intra_skip encoding mode, IntraPredModeA is set to IntraPredMode of block A, that is, the prediction direction information of block A as IntraPredModeA (S1102). ).
그리고 블록 B에 대한 화면 내 예측 방향을 유도하는 단계를 수행한다.And deriving an intra prediction direction for the block B.
3 단계) 만일 블록 B가 부호화 되지 않았거나 블록 B의 부호화 모드를 사용할 수 없을 경우에는(S1100b) IntraPredModeB를 ‘-1’로 설정한다. 그렇지 않다면, 4단계를 수행한다.Step 3) If block B is not encoded or the coding mode of block B cannot be used (S1100b), IntraPredModeB is set to '-1'. If not, perform step 4.
4 단계) 만일 블록 B가 인트라 16x16 부호화 모드(혹은 8x8 부호화 모드 혹은 4x4 부호화 모드)이거나 혹은 intra_skip 부호화 모드일 경우, 블록 B의 IntraPredMode를 IntraPredModeB로 설정한다(S1104).Step 4) If block B is an intra 16x16 encoding mode (or 8x8 encoding mode or 4x4 encoding mode) or intra_skip encoding mode, IntraPredMode of block B is set to IntraPredModeB (S1104).
5 단계) 그런 후, 만일 IntraPredModeA와 IntraPredModeB 중에서 적어도 하나가 ‘-1’이면(S1105) 현재 블록(X)의 IntraPredMode를 DC 예측 방향으로 설정한다(S1106). Step 5) Then, if at least one of IntraPredModeA and IntraPredModeB is '-1' (S1105), IntraPredMode of the current block X is set as the DC prediction direction (S1106).
그렇지 않다면 IntraPredModeA와 IntraPredModeB 값 중에서 최소값을 현재 블록(X)의 IntraPredMode로 설정한다(S1107).Otherwise, the minimum value among IntraPredModeA and IntraPredModeB values is set to IntraPredMode of the current block X (S1107).
도 12는 본 발명의 다른 실시예에 따라 현재 블록에 대한 예측 방향을 유추하기 위하여 사용되는 주변 블록들을 도시한 도면이다.12 illustrates neighboring blocks used to infer a prediction direction for a current block according to another embodiment of the present invention.
도 12와 같이, 현재 블록과 인접한 블록(A, B) 뿐만 아니라 블록(C)의 예측 방향 정보를 사용할 수 있다. 이 때 현재 블록에 대한 예측 방향은 블록 A, B, C의 예측 방향의 특성을 통해 유추할 수 있다. As shown in FIG. 12, the prediction direction information of the block C may be used as well as the blocks A and B adjacent to the current block. In this case, the prediction direction for the current block may be inferred through the characteristics of the prediction directions of blocks A, B, and C.
예를 들어, 블록 A, B, C가 모두 같은 예측 방향일 경우, 블록 A의 예측 방향을 현재 블록에 대한 예측 방향으로 설정할 수 있다. For example, when blocks A, B, and C are all the same prediction direction, the prediction direction of block A may be set as the prediction direction for the current block.
그렇지 않고 예측 방향이 모두 다를 경우, 블록 A, B, C 의 예측 방향 중에서 최소값을 현재 블록에 대한 예측 방향으로 설정할 수 있다. Otherwise, if the prediction directions are different, the minimum value among the prediction directions of blocks A, B, and C may be set as the prediction direction for the current block.
또한 블록 A, C의 예측 방향이 같고 블록 B, C 의 예측 방향이 다를 경우에 블록 B의 예측 방향을 현재 블록에 대한 예측 방향으로 설정할 수 있다. In addition, when the prediction directions of the blocks A and C are the same and the prediction directions of the blocks B and C are different, the prediction direction of the block B may be set as the prediction direction with respect to the current block.
혹은 블록 A, C의 예측 방향이 같고 블록 B, C 의 예측 방향이 다를 경우에 블록 A의 예측 방향을 현재 블록에 대한 예측 방향으로 설정할 수 있다. Alternatively, when the prediction directions of the blocks A and C are the same and the prediction directions of the blocks B and C are different, the prediction direction of the block A may be set as the prediction direction with respect to the current block.
또한 블록 B, C의 예측 방향이 같고 블록 A, C 의 예측 방향이 다를 경우에 블록 A의 예측 방향을 현재 블록에 대한 예측 방향으로 설정할 수 있다. In addition, when the prediction directions of the blocks B and C are the same and the prediction directions of the blocks A and C are different, the prediction direction of the block A may be set as the prediction direction with respect to the current block.
혹은 블록 B, C의 예측 방향이 같고 블록 A, C 의 예측 방향이 다를 경우에 블록 B의 예측 방향을 현재 블록에 대한 예측 방향으로 설정할 수 있다.Alternatively, when the prediction directions of the blocks B and C are the same and the prediction directions of the blocks A and C are different, the prediction direction of the block B may be set as the prediction direction for the current block.
현재 블록에 대한 예측 방향이 결정된 후, 화면 내 예측 영상을 구성하는 방법은 다양하게 구현될 수 있다. After the prediction direction for the current block is determined, various methods of configuring the intra prediction image may be implemented.
하나의 일 실시 예로서, 현재 블록 영상에 인접한 주변 블록의 화소를 그대로 복사(패딩)하여 구성할 수 있으며, 이때 현재 블록에 복사(패딩)될 화소는 현재 블록과 인접한 주변 블록에서 상측의 화소이거나 혹은 좌측의 화소일 수 있으며, 또한 현재 블록에 인접한 화소들의 평균 혹은 가중치 평균일 수 있다. As one embodiment, the pixel of the neighboring block adjacent to the current block image may be copied (padded) as it is, wherein the pixel to be copied (padded) to the current block is the upper pixel in the neighboring block adjacent to the current block Alternatively, the pixel may be a left pixel, and may be an average or weighted average of pixels adjacent to the current block.
또한 어느 위치의 화소를 사용할 지에 대한 정보가 부호화되어 비트스트림에 포함될 수 있다. 이 방법은 H.264/AVC의 화면 내 예측 방법과 유사할 수 있다.In addition, information on which position of the pixel to use may be encoded and included in the bitstream. This method may be similar to the intra prediction method of H.264 / AVC.
또 다른 실시 예로서, 현재 블록과 인접한 주변 화소들의 특성을 고려하여 복사할 화소를 결정한 후 결정된 화소를 통해 현재 블록을 구성할 수 있다. As another example, the pixel to be copied may be determined in consideration of characteristics of neighboring pixels adjacent to the current block, and then the current block may be configured through the determined pixel.
구체적으로 현재 블록의 좌상단에 위치한 블록의 화소값이 현재 블록의 좌측에 위치한 블록의 화소값과 같거나 비슷하다면, 현재 블록에 대한 예측 블록은 현재 블록에 인접한 상단의 화소를 통해 생성할 수 있다. 또한 현재 블록의 좌상단에 위치한 블록의 화소값이 현재 블록의 상측에 위치한 블록의 화소값과 같거나 비슷하다면, 현재 블록에 대한 예측 블록은 현재 블록에 인접한 좌측의 화소를 통해 생성할 수 있다.In more detail, if the pixel value of the block located at the upper left of the current block is the same as or similar to the pixel value of the block located at the left of the current block, the prediction block for the current block may be generated through the upper pixel adjacent to the current block. In addition, if the pixel value of the block located at the upper left of the current block is the same as or similar to the pixel value of the block located at the upper side of the current block, the prediction block for the current block may be generated through pixels on the left adjacent to the current block.
또 다른 실시 예로서, 여러 예측 방법들을 혼합하여 그것의 평균값 혹은 각각의 방법에 따른 가중치의 합으로 예측 블록 영상을 구성하여 사용할 수 있다.As another example, a prediction block image may be configured by using a plurality of prediction methods and mixing the average value or the sum of weights according to each method.
이 외에도 위와 같이 화면 내 예측 블록을 구성하는 방법은 다양하게 변경될 수 있다.In addition, the method of configuring the intra prediction block as described above may be variously changed.
위와 같이 현재 블록에 대한 화면 내 예측 방향을 현재 블록에 인접한 주변 블록들로부터 유추함으로써, 현재 블록에 대한 화면 내 예측 방향 정보는 디코더로 전송되지 않는다. 다시 말하면 인트라 스킵이 적용된 블록의 경우, 화면 내 예측 방향 정보는 주변 블록 혹은 그 이외의 정보를 통해 유추될 수 있다.By inferring the intra prediction direction for the current block from neighboring blocks adjacent to the current block, the intra prediction direction information for the current block is not transmitted to the decoder. In other words, in the case of a block to which intra skip is applied, the intra prediction direction information may be inferred from the neighboring block or other information.
화면 간 예측 과정에서는 이전에 부호화된 후 복호화된 이전 프레임에서 현재 블록과 가장 유사한 블록을 가져와서 현재 블록에 대한 예측 블록을 생성한다. In the inter prediction process, a prediction block for a current block is generated by taking a block most similar to a current block from a previous frame that has been previously encoded and then decoded.
생성된 예측 블록 영상은 현재 블록 영상과 차분되어 차분 블록 영상을 생성한다. 차분 블록 영상에 대해 변환 및 양자화, 그리고 엔트로피 부호화 과정이 수행되는지 혹은 수행되지 않는지에 따라 두 가지 방법으로 부호화되며, 차분 블록 영상에 대해 부호화가 수행되는 지의 여부 정보는 비트스트림에 포함될 수 있다. 두 가지 방법은 아래와 같다.The generated prediction block image is differentiated from the current block image to generate a differential block image. The encoding is performed in two ways depending on whether a transform, quantization, and entropy encoding process is performed on the differential block image, and information on whether encoding is performed on the differential block image may be included in the bitstream. The two methods are as follows.
(1) 변환 및 양자화 과정을 수행하는 경우는 현재 블록 영상을 예측 블록 영상과 차분한 블록 영상에 변환 및 양자화한 후 엔트로피 부호화하여 비트스트림을 출력하고, 다시 엔트로피 부호화하기 전의 양자화된 계수를 역양자화 및 역변환하여 예측 블록 영상과 더한 후 현재 블록 영상을 복원한다. (1) When performing the transform and quantization process, the current block image is transformed and quantized into a block image that is differential from the predicted block image, and is then entropy encoded to output a bitstream, and inverse quantization of the quantized coefficients before entropy encoding is performed. After inverse transformation, the prediction block image is added, and the current block image is reconstructed.
(2) 변환 및 양자화 과정을 수행되지 않는 경우는 현재 블록 영상을 오직 예측 블록 영상만으로 구성한다. 여기서 차분 블록 영상은 부호화되지 않으며, 오직 차분 블록 영상에 대해 부호화가 수행되는지의 여부 정보만 비트스트림에 포함될 수 있다. (2) When the transform and quantization process is not performed, the current block image is composed of only prediction block images. Here, the differential block image is not encoded, and only information on whether encoding is performed on the differential block image may be included in the bitstream.
또한, 현재 블록의 예측 블록 영상을 생성하기 위한 정보(화면 내 예측 방향 정보 혹은 화면 간 예측 움직임 정보)는 주변 블록의 정보로부터 구성될 수 있다. 이 때, 예측 블록 생성 정보 및 차분 블록 영상은 부호화되지 않으며, 예측 블록 생성 정보 및 차분 블록 영상에 대해 부호화가 수행되는지의 여부 정보만 비트스트림에 포함될 수 있다. 이때 차분 블록을 부호화할지에 대한 여부 정보는 현재 블록의 주변 블록들의 부호화 여부 정보를 고려하여 확률적으로 산술 부호화를 수행할 수 있다.In addition, information for generating a prediction block image of the current block (intra-prediction direction information or inter-prediction motion information) may be configured from information of neighboring blocks. In this case, the prediction block generation information and the differential block image are not encoded, and only the information on whether the encoding is performed on the prediction block generation information and the differential block image may be included in the bitstream. In this case, arithmetic encoding may be performed probabilisticly in consideration of whether to encode the residual block or not by encoding information on neighboring blocks of the current block.
깊이 정보 맵의 필터링 및 샘플링 방법How to Filter and Sample Depth Maps
깊이 정보 맵의 특성은 매우 단조로우며, 특히 배경 부분이나 객체 내부의 경우 동일한 깊이 정보 값을 가진다. 따라서 깊이 정보 맵에 대해서는 필터링(예를 들어, 디블록킹 필터, 샘플 적응형 보상(SAO; Sample Adaptive Offset) 필터, 적응형 루프 필터(ALF; Adaptive Loop Filter), 인루프 결합 시점간 깊이 정보 필터링(JVDF; In-loop Joint inter-View Depth Filtering)등)을 수행하지 않을 수 있다. 혹은 깊이 정보 맵의 배경 부분이나 객체 내부에 대하여 필터링을 약하게 수행하거나 혹은 수행하지 않을 수 있다. The characteristics of the depth information map are very monotonous, especially in the background part or inside the object, and have the same depth information value. Therefore, the depth information map may be filtered (eg, a deblocking filter, a sample adaptive offset (SAO) filter, an adaptive loop filter (ALF), and depth information filtering between in-loop combining time points). JVDF; In-loop Joint inter-View Depth Filtering). Alternatively, the filtering may be weakly performed or not performed on the background of the depth map or the inside of the object.
실시 일 예로, 깊이 정보 맵에 대하여 디블록킹 필터를 약하게 수행하거나 혹은 수행하지 않을 수 있다. In an embodiment, the deblocking filter may be weakly performed or not performed on the depth information map.
또한 깊이 정보 맵에 대하여 샘플 적응형 보상(SAO; Sample Adaptive Offset) 필터를 적용하지 않을 수 있다. In addition, a sample adaptive offset (SAO) filter may not be applied to the depth information map.
또한 깊이 정보 맵에 대하여 적응형 루프 필터(ALF; Adaptive Loop Filter)를 객체 경계 부분에만 적용하거나 혹은(그리고) 객체 내부 부분에만 적용하거나 혹은(그리고) 배경 부분에만 적용할 수 있다. 혹은 깊이 정보 맵에 대하여 적응형 루프 필터(ALF; Adaptive Loop Filter)를 적용하지 않을 수 있다. In addition, the adaptive loop filter (ALF) can be applied only to the object boundary part, and / or only to the internal part of the object, and / or to the background part of the depth information map. Alternatively, an adaptive loop filter (ALF) may not be applied to the depth information map.
또한 깊이 정보 맵에 대하여 인루프 결합 시점간 깊이 정보 필터링(JVDF; In-loop Joint inter-View Depth Filtering)을 객체 경계 부분에만 적용하거나 혹은(그리고) 객체 내부 부분에만 적용하거나 혹은(그리고) 배경 부분에만 적용할 수 있다. In addition, in-loop joint inter-view depth filtering (JVDF) is applied only to the object boundary part, and / or only to the internal part of the object, and / or the background part of the depth information map. Applicable only to
혹은 깊이 정보 맵에 대하여 인루프 결합 시점간 깊이 정보 필터링(JVDF; In-loop Joint inter-View Depth Filtering)을 적용하지 않을 수 있다. Alternatively, in-loop joint inter-view depth filtering (JVDF) may not be applied to the depth information map.
또한 깊이 정보 맵에 대하여 어떠한 필터링도 적용하지 않을 수 있다.Also, no filtering may be applied to the depth map.
또한 일반적으로 깊이 정보 맵을 부호화할 때, 원본 깊이 정보 맵을 다운-샘플링을 수행하여 부호화하고 실제 사용할 경우에는 복호화된 깊이 정보 맵을 업-샘플링하여 사용한다. 이러한 샘플링 과정은 일반적으로 4탭 혹은 6탭 업샘플링(혹은 다운샘플링) 필터 등을 이용한다. 이러한 샘플링 필터는 복잡도가 높다는 단점이 있으며 특히 깊이 정보 맵처럼 매우 단조로운 특성을 지니는 영상에는 적합하지 않다. 따라서 깊이 정보 맵의 특성에 맞는 업샘플링 및 다운 샘플링 필터는 매우 간단하고 단순한 것이 바람직하다.In general, when the depth map is encoded, down-sampling the original depth map is performed by encoding, and when the actual map is actually used, the decoded depth map is up-sampled. This sampling process typically uses a 4 or 6 tap upsampling (or downsampling) filter. Such a sampling filter has a disadvantage of high complexity and is not particularly suitable for an image having a very monotonous characteristic such as a depth information map. Therefore, it is desirable that the upsampling and downsampling filter suitable for the characteristics of the depth information map be very simple and simple.
도 13은 깊이 정보 맵의 다운 샘플링 방법을 일 예를 도시한 도면이다.13 is a diagram illustrating an example of a down sampling method of a depth information map.
도 13과 같이, 원본 크기의 깊이 정보 맵(1310)에서 4개의 샘플(화소) 당 하나의 샘플(화소)를 그대로 복사하여 다운 샘플링된 깊이 정보 맵(1320)을 구성할 수 있다. As illustrated in FIG. 13, one sample (pixel) per four samples (pixels) may be copied as it is from the depth information map 1310 of the original size, thereby configuring the down sampled depth information map 1320.
이러한 방법은 깊이 정보 맵의 배경 부분이나 객체 내부에서만 사용할 수도 있다. This method can only be used in the background part of the depth map or inside an object.
또는 배경 부분이나 객체 내부의 깊이 정보 맵의 깊이 정보 값이 동일하므로 다운 샘플링 과정을 거치지 않고, 현재 블록(혹은 임의 영역)의 어떠한 깊이 정보 값을 다운 샘플링된 깊이 정보 맵 블록(혹은 임의 영역)의 모든 픽셀(화소)에 적용할 수 있다.Alternatively, since the depth information values of the background portion or the depth map inside the object are the same, any depth information value of the current block (or any region) is downsampled without going through a downsampling process. Applicable to all pixels (pixels).
도 14는 깊이 정보 맵의 업샘플링 방법을 일 예를 도시한 도면이다.14 is a diagram illustrating an example of an upsampling method of a depth information map.
도 14와 같이, 다운 샘플링된 깊이 정보 맵(1410)에서 하나의 샘플(화소)을 그대로 복사하여 업 샘플링된 깊이 정보 맵(1420)의 4개 샘플(화소)에 복사(혹은 패딩)할 수 있다. As illustrated in FIG. 14, one sample (pixel) may be copied as it is from the down-sampled depth information map 1410 and copied (or padded) to four samples (pixels) of the up-sampled depth information map 1420. .
이러한 방법은 깊이 정보 맵의 배경 부분이나 객체 내부에서만 사용할 수도 있다. This method can only be used in the background part of the depth map or inside an object.
또는 배경 부분이나 객체 내부의 깊이 정보 맵의 깊이 정보 값이 동일하므로 업 샘플링 과정을 거치지 않고, 현재 블록(혹은 임의 영역)의 어떠한 깊이 정보 값을 업 샘플링된 깊이 정보 맵 블록(혹은 임의 영역)의 모든 픽셀(화소)에 적용할 수 있다Alternatively, since the depth information values of the background portion or the depth map inside the object are the same, any depth information value of the current block (or any region) is not up-sampled, and the depth information map block (or any region) of the depth information map is upsampled. Applicable to all pixels
깊이 정보 맵에 대한 업샘플링으로 인한 복잡도를 감소시키고, 업샘플링된 깊이 정보 맵은 업샘플링 되기 전의 깊이 정보 맵에 비해 메모리가 더 많이 요구되는 점을 고려하여 업샘플링을 수행하지 않은 상태로 깊이 정보 맵을 사용할 수 있다. Reduces the complexity due to upsampling the depth map, and the upsampled depth map does not perform upsampling, considering that it requires more memory than the depth map before upsampling. You can use a map.
깊이정보 맵의 화면 내 부호화 방법과 그것의 필터링 및 샘플링 방법In-screen Coding Method of Depth Map and Its Filtering and Sampling Method
본 발명의 일 예에 따르면, 깊이 정보 맵의 화면 내 부호화 방법과 깊이 정보 맵의 필터링 및 샘플링 방법을 조합하여 깊이정보 맵을 부호화할 수 있으며, 그 실시 일 예는 아래와 같다. According to an embodiment of the present invention, a depth map may be encoded by combining an intra-picture encoding method of the depth map and a filtering and sampling method of the depth map, and an embodiment thereof is as follows.
본 발명의 일 실시예에 따라, 이하에서는 현재 블록 영상을 예측 블록만으로 구성하고 예측 블록에 대한 디블록킹 필터의 필터링 강도를 조절하거나 혹은 디블록킹 필터의 적용 여부를 결정하는 방법이 기술된다. According to an embodiment of the present invention, a method of configuring a current block image using only prediction blocks, adjusting the filtering strength of the deblocking filter for the prediction block, or determining whether to apply the deblocking filter is described.
상술한 화면 내 예측 방법 중, 현재 블록에 대한 화면 내 예측 방향을 현재 블록에 인접한 주변 블록들로부터 유추하는, 즉 화면 내 예측 블록만으로 현재 블록을 구성하는 방법을 인트라 스킵(intra_skip)모드라고 명명할 수 있다. 이러한 인트라 스킵 모드로 선택된 블록의 경우, 주변 블록과의 상관성이 아주 높다. 따라서 이 경우에 디블록킹 필터링을 수행하지 않을 수 있다. Among the above-described intra prediction methods, an intra skip mode in which the intra prediction direction for the current block is inferred from neighboring blocks adjacent to the current block, that is, the current block is composed only of the intra prediction pictures may be referred to as an intra skip mode. Can be. In the case of the block selected as the intra skip mode, the correlation with the neighboring block is very high. Therefore, in this case, deblocking filtering may not be performed.
도 15는 본 발명의 일 실시예에 따른 디블록킹 필터링의 경계 필터링 강도(bS)를 결정하는 방법을 설명하기 위한 제어흐름도이다. 15 is a control flowchart illustrating a method of determining boundary filtering strength bS of deblocking filtering according to an embodiment of the present invention.
또한, 도 16은 인접한 블록 p 및 블록 q의 경계를 도시한 도면이다. 16 is a diagram showing the boundary between adjacent blocks p and block q.
도 15 및 도 16을 참조하여 인트라 스킵 모드에서 디블록킹 필터링의 경계 필터링 강도(bS)를 결정하는 방법을 설명하면 다음과 같다. A method of determining the boundary filtering strength bS of the deblocking filtering in the intra skip mode will now be described with reference to FIGS. 15 and 16.
우선, 도 16에 도시된 바와 같이, 블록 p 및 블록 q는 서로 경계를 공유하는 인접한 블록에 대응한다. 블록 p는 수직 방향 경계에 대하여 좌측에 위치하고, 수평 방향 경계의 위쪽에 위치하는 블록을 나타내고, 블록 q는 수직 방향 경계에 대하여 우측에 위치하고, 수평 방향 경계의 아래쪽에 위치하는 블록을 나타낸다.First, as shown in FIG. 16, block p and block q correspond to adjacent blocks sharing boundaries with each other. Block p represents a block located on the left side with respect to the vertical boundary and above the horizontal boundary, and block q represents a block located on the right side with respect to the vertical boundary and located below the horizontal boundary.
경계 필터링 강도(bS)를 결정하기 위하여 우선 서로 인접하는 블록 p와 q 들의 부호화 모드를 확인할 수 있다. 여기서 블록 p 또는 q가 인트라 부호화 또는 인터 부호화되었다는 것은 블록 p 또는 q가 인트라 부호화된 매크로블록이거나 또는 이에 속한다는 것을 의미할 수 있다.In order to determine the boundary filtering strength bS, first, coding modes of blocks p and q adjacent to each other may be checked. Herein, whether the block p or q is intra coded or inter coded may mean that the block p or q is an intra coded macroblock or belongs to it.
도 15를 참조하면, 경계 필터링 강도(bS)를 결정하기 위하여 먼저 서로 인접하는 블록 p와 블록 q 들 중에서 적어도 하나의 블록이 인트라 스킵(intra_skip) 모드로 부호화되었는지를 판단한다(S1501). Referring to FIG. 15, in order to determine the boundary filtering strength bS, it is first determined whether at least one block among blocks p and blocks q adjacent to each other is encoded in an intra skip mode (S1501).
여기서 인트라 스킵(intra skip) 모드는 인트라 모드(NxN 예측 모드, 여기서 N은 16, 8, 4 등)이면서 차분 데이터가 없다는 것으로 간주될 수 있다. 또는 인트라 모드(NxN 예측 모드, 여기서 N은 16, 8, 4 등)이면서 차분 데이터가 없다는 것을 인트라 스킵(intra skip)모드라고 간주할 수 있다. In this case, the intra skip mode may be regarded as an intra mode (NxN prediction mode, where N is 16, 8, 4, etc.) but no difference data. Alternatively, an intra skip mode may be regarded as an intra mode (N × N prediction mode, where N is 16, 8, 4, etc.) and there is no difference data.
판단 결과, 만일 블록 p와 q 중에서 인트라 스킵(intra_skip) 모드로 부호화된 블록이 하나 이상 존재하는 경우에는 경계 필터링 강도(bS)를 ‘0’으로 결정할 수 있다(S1502). 경계필터링 강도(bS)가 0이라는 것은 후속하는 필터링 적용 절차에서 필터링을 수행하지 않는 것을 나타낸다.As a result of determination, if one or more blocks encoded in the intra skip mode among the blocks p and q exist, the boundary filtering strength bS may be determined as '0' (S1502). A boundary filtering strength (bS) of zero indicates that no filtering is performed in subsequent filtering application procedures.
반면, 그렇지 않다면, 즉 블록 p와 q 중에서 인트라 스킵(intra_skip) 모드로 부호화된 블록이 하나도 존재하지 않는 다면, 블록 p와 블록 q 중에서 인트라 부호화된 블록(인트라 스킵 모드가 아닌 블록)이 하나 이상 존재하는 지를 판단한다(S1503).On the other hand, if not, i.e., if none of the blocks p and q are coded in the intra skip mode, there is at least one intra coded block (block that is not intra skip mode) among the blocks p and block q. It is determined whether to (S1503).
판단 결과, 블록 p와 블록 q 중에서 인트라 부호화된 블록이 하나 이상 존재하는 경우에는, ‘INTRA MODE’ 단계로 진행하며, 반대로 블록 p와 블록 q가 모두 인터 부호화된 경우에는 ‘INTER MODE’ 단계로 진행할 수 있다. As a result, when there is at least one intra-coded block among the blocks p and block q, the process proceeds to the 'INTRA MODE' step. On the contrary, when both the block p and the block q are inter-coded, the process proceeds to the 'INTER MODE' step. Can be.
여기서, 인터 부호화는 현재 프레임과 시간이 다른 재구성 프레임의 영상을 참조 프레임으로 이용하는 예측 부호화를 의미한다. Here, inter encoding means predictive encoding using an image of a reconstructed frame having a different time from the current frame as a reference frame.
‘INTRA MODE’ 단계에서 블록 p와 q 중에서 인트라 부호화된 블록이 적어도 하나 존재하는 것으로 판단된 경우에는(S1503), 블록 p와 블록 q의 경계가 매크로블록(Macro block, MB)의 경계와 일치하는지를 판단한다(S1504). If it is determined that at least one intra-encoded block exists among blocks p and q in the 'INTRA MODE' step (S1503), it is determined whether the boundary between the block p and the block q matches the boundary of the macroblock (MB). It determines (S1504).
판단결과, 블록 p와 블록 q의 경계가 매크로블록(Macro block, MB)의 경계와 일치하는 경우에는 경계 필터링 강도(bS)를 4로 결정할 수 있다(S1505). 경계 필터링 강도(bS)가 4인 경우에는 후속하는 필터링 적용 절차에서 가장 강한 필터링이 적용되는 것을 의미하며 경계 필터링 강도(bS) 값이 작을수록 필터링의 강도는 약해진다.As a result of the determination, when the boundary between the block p and the block q coincides with the boundary of the macroblock (MB), the boundary filtering intensity bS may be determined to be 4 (S1505). When the boundary filtering strength bS is 4, it means that the strongest filtering is applied in the subsequent filtering application procedure. The smaller the boundary filtering strength bS value, the weaker the filtering strength.
반면, 블록 p와 블록 q의 경계가 매크로블록(Macro block, MB)의 경계가 아닌 경우에는 경계 필터링 강도(bS)를 3으로 결정할 수 있다(S1506). On the other hand, if the boundary between the block p and the block q is not the boundary of the macro block MB, the boundary filtering strength bS may be determined to be 3 (S1506).
‘INTER MODE’ 단계에서 블록 p와 블록 q 모두가 인터 부호화된 블록인 것으로 판단된 경우에는, 블록 p와 블록 q 중에서 적어도 하나가 직교 변환 계수(Non-zero Transform Coefficient)를 가지는지를 판단한다(S1507). If it is determined in the 'INTER MODE' step that both the block p and the block q are inter coded blocks, it is determined whether at least one of the block p and the block q has a non-zero transform coefficient (S1507). ).
직교 변환 계수는 코딩된 계수(Coded Coefficient) 또는 0이 아닌 변환 계수(Non-zero Transformed Coefficient)라고도 할 수 있다. Orthogonal transform coefficients may also be referred to as coded coefficients or non-zero transformed coefficients.
판단 결과, 블록 p와 블록 q의 경계가 직교 변환계수를 가지는 블록이 하나 이상 존재하는 경우에는 경계 필터링 강도(bS)를 2로 결정한다(S1508). As a result of determination, when at least one block having an orthogonal transformation coefficient between the blocks p and q exists, the boundary filtering strength bS is determined to be 2 (S1508).
반면, 블록 p와 블록 q의 경계가 직교 변환계수를 가지는 블록이 하나 이상 존재하지 않으면, 블록 p와 블록 q에 대하여 움직임 벡터의 일 성분 즉, x축 성분 또는 y축 성분의 차의 절대값이 1(혹은 4)와 같거나 더 큰지 및/또는 움직임 보상에서의 참조 프레임이 다른지 및/또는 PU 파티션 경계인지를 판단한다(S1509). On the other hand, if at least one block having an orthogonal transformation coefficient between blocks p and block q does not exist, the absolute value of one component of the motion vector, that is, the x-axis component or the y-axis component with respect to block p and block q is It is determined whether it is equal to or greater than 1 (or 4) and / or whether the reference frame in motion compensation is different and / or the PU partition boundary (S1509).
여기서, '참조 프레임이 다르다는 것'은 참조 프레임 자체가 다르다는 것과 참조 프레임의 개수가 다르다는 것을 모두 포함할 수 있다. Here, 'the reference frame is different' may include both the reference frame itself is different and the number of reference frames is different.
판단결과, 움직임 벡터의 차의 절대값 중에서 적어도 하나가 1(혹은 4)이상이 되거나 또는 움직임 보상에서의 참조 프레임이 다른 경우에는 경계 필터링 강도(bS)를 1로 결정할 수 있다(S1510). As a result of determination, when at least one of the absolute values of the difference of the motion vectors becomes 1 (or 4) or more, or when the reference frame in the motion compensation is different, the boundary filtering intensity bS may be determined as 1 (S1510).
반면, 움직임 벡터의 차의 절대값이 모두 1(혹은 4)보다 작고 또한 움직임 보상에서의 참조 프레임이 같은 경우에는 경계 필터링 강도(bS)를 0으로 결정한다(S1502). On the other hand, when the absolute values of the differences of the motion vectors are all less than 1 (or 4) and the reference frames in the motion compensation are the same, the boundary filtering intensity bS is determined to be 0 (S1502).
도 17은 본 발명의 다른 실시예에 따른 디블록킹 필터링의 경계 필터링 강도(bS)를 결정하는 방법을 설명하기 위한 제어흐름도이다. 17 is a control flowchart illustrating a method of determining boundary filtering strength bS of deblocking filtering according to another embodiment of the present invention.
도 17을 참조하면, 우선 경계 필터링 강도(bS)를 결정하기 위하여 블록 p와 블록 q 모두 인트라 스킵(intra_skip) 모드로 부호화되었는지를 판단한다(S1701).Referring to FIG. 17, it is first determined whether both block p and block q are encoded in the intra skip mode to determine the boundary filtering strength bS (S1701).
판단 결과, 블록 p와 블록 q 모두 인트라 스킵(intra_skip) 모드로 부호화 되었으면 블록 p와 블록 q의 경계 필터링 강도를 ‘0’으로 설정할 수 있다(1702)As a result of determination, if both the block p and the block q are encoded in the intra skip mode, the boundary filtering strength of the block p and the block q may be set to '0' (1702).
또는 블록 p와 블록 q 모두 인트라 스킵(intra_skip) 모드로 부호화 되었으면 경계 필터링 강도를 약하게(혹은 강하게) 설정할 수 있으며 그 일 실시 예로 임의값을 설정할 수 있다. 혹은 필터링을 수행하지 않을 수 있다.Alternatively, if both the block p and the block q are encoded in the intra skip mode, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed.
한편, 블록 p와 블록 q 모두 인트라 스킵(intra_skip) 모드로 부호화가 아니면, 블록 p와 q 중에서 인트라 부호화된 블록(인트라 스킵 모드가 아닌 블록)이 하나 이상 존재하는 지를 판단한다(S1703). On the other hand, if neither block p nor block q is encoded in the intra skip mode, it is determined whether one or more intra-encoded blocks (blocks other than the intra skip mode) exist among the blocks p and q (S1703).
판단 결과, 블록 p와 블록 q 중에서 인트라 부호화된 블록이 하나 이상 존재하는 경우에는, ‘INTRA MODE’ 단계로 진행하며, 반대로 블록 p와 블록 q가 모두 인터 부호화된 경우에는 ‘INTER MODE’ 단계로 진행할 수 있다.As a result of the determination, when there is at least one intra-coded block among the blocks p and q, the process proceeds to the 'INTRA MODE' step. Can be.
‘INTRA MODE’ 단계에서 블록 p와 q 중에서 인트라 부호화된 블록이 적어도 하나 존재하는 것으로 판단된 경우에는(S1703), 블록 p와 블록 q의 경계가 매크로블록(Macro block, MB)의 경계와 일치하는지를 판단한다(S1704). If it is determined that at least one intra-encoded block exists among blocks p and q in the 'INTRA MODE' step (S1703), it is determined whether the boundary between the block p and the block q matches the boundary of the macroblock (MB). It determines (S1704).
판단 결과, 블록 p와 블록 q의 경계가 매크로블록(Macro block, MB)의 경계와 일치하는 경우에는 경계 필터링 강도(bS)를 4로 결정할 수 있다(S1705). 경계 필터링 강도(bS)가 4인 경우에는 후속하는 필터링 적용 절차에서 가장 강한 필터링이 적용되는 것을 의미하며 경계 필터링 강도(bS) 값이 작을수록 필터링의 강도는 약해진다.As a result of the determination, when the boundary between the block p and the block q coincides with the boundary of the macroblock (MB), the boundary filtering intensity bS may be determined to be 4 (S1705). When the boundary filtering strength bS is 4, it means that the strongest filtering is applied in the subsequent filtering application procedure. The smaller the boundary filtering strength bS value, the weaker the filtering strength.
반면, 블록 p와 블록 q의 경계가 매크로블록(Macro block, MB)의 경계가 아닌 경우에는 경계 필터링 강도(bS)를 3으로 결정할 수 있다(S1706). On the other hand, if the boundary between the block p and the block q is not the boundary of the macro block (MB), the boundary filtering strength bS may be determined as 3 (S1706).
‘INTER MODE’ 단계에서 블록 p와 블록 q 모두가 인터 부호화된 블록인 것으로 판단된 경우에는, 블록 p와 블록 q 중에서 적어도 하나가 직교 변환 계수(Non-zero Transform Coefficient)를 가지는지를 판단한다(S1507). If it is determined in the 'INTER MODE' step that both the block p and the block q are inter coded blocks, it is determined whether at least one of the block p and the block q has a non-zero transform coefficient (S1507). ).
판단 결과, 블록 p와 블록 q의 경계가 직교 변환계수를 가지는 블록이 하나 이상 존재하는 경우에는 경계 필터링 강도(bS)를 2로 결정한다(S1708). As a result of determination, when at least one block having an orthogonal transformation coefficient between blocks p and block q exists, the boundary filtering strength bS is determined to be 2 (S1708).
반면, 블록 p와 블록 q의 경계가 직교 변환계수를 가지는 블록이 하나 이상 존재하지 않으면, 블록 p와 블록 q에 대하여 움직임 벡터의 일 성분 즉, x축 성분 또는 y축 성분의 차의 절대값이 1(혹은 4)와 같거나 더 큰지 및/또는 움직임 보상에서의 참조 프레임이 다른지 및/또는 PU 파티션 경계인지를 판단한다(S1709). On the other hand, if at least one block having an orthogonal transformation coefficient between blocks p and block q does not exist, the absolute value of one component of the motion vector, that is, the x-axis component or the y-axis component with respect to block p and block q is It is determined whether it is equal to or greater than 1 (or 4) and / or whether the reference frame in the motion compensation is different and / or the PU partition boundary (S1709).
여기서, '참조 프레임이 다르다는 것'은 참조 프레임 자체가 다르다는 것과 참조 프레임의 개수가 다르다는 것을 모두 포함할 수 있다. Here, 'the reference frame is different' may include both the reference frame itself is different and the number of reference frames is different.
판단결과, 움직임 벡터의 차의 절대값 중에서 적어도 하나가 1(혹은 4)이상이 되거나 또는 움직임 보상에서의 참조 프레임이 다른 경우에는 경계 필터링 강도(bS)를 1로 결정할 수 있다(S1710). As a result of determination, when at least one of the absolute values of the difference of the motion vectors becomes 1 (or 4) or more, or when the reference frame in the motion compensation is different, the boundary filtering intensity bS may be determined as 1 (S1710).
반면, 움직임 벡터의 차의 절대값이 모두 1(혹은 4)보다 작고 또한 움직임 보상에서의 참조 프레임이 같은 경우에는 경계 필터링 강도(bS)를 0으로 결정한다(S1702).On the other hand, when the absolute values of the difference of the motion vectors are all less than 1 (or 4) and the reference frames in the motion compensation are the same, the boundary filtering intensity bS is determined to be 0 (S1702).
한편, 현재 블록과 주변 블록 중에서 적어도 한 블록이 인트라 스킵(intra_skip)모드일 경우에 현재 블록과 주변 블록 사이의 경계 필터링 강도를 ‘0’으로 설정할 수 있다. 혹은 경계 필터링 강도를 약하게(혹은 강하게) 설정할 수 있으며 그 일 실시 예로 임의값을 설정할 수 있다. 혹은 필터링을 수행하지 않을 수 있다.Meanwhile, when at least one of the current block and the neighboring block is in the intra skip mode, the boundary filtering strength between the current block and the neighboring block may be set to '0'. Alternatively, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed.
또는, 현재 블록과 주변 블록 중에서 한 블록은 인트라 스킵(intra_skip)모드이고 다른 블록은 일반적인 부호화 모드(인트라(혹은 인터) 부호화 모드)일 경우, 일반적인 부호화 모드(인트라(혹은 인터) 부호화 모드)의 블록에서 직교 변환계수를 하나라도 포함하고 있는 경우에는 현재 블록과 주변 블록 사이의 경계 필터링 강도를 ‘4’(혹은 3, 2, 1)로 설정할 수 있다. 반면, 그렇지 않은 경우에는 필터링 강도를 0(혹은 1, 2, 3)으로 설정할 수 있다. 혹은 경계 필터링 강도를 약하게(혹은 강하게) 설정할 수 있으며 그 일 실시 예로 임의값을 설정할 수 있다. 혹은 필터링을 수행하지 않을 수 있다.Alternatively, if one of the current block and neighboring blocks is an intra skip mode and the other block is a general encoding mode (intra (or inter) encoding mode), a block of a general encoding mode (intra (or inter) encoding mode) In the case of including at least one orthogonal transform coefficient, the boundary filtering strength between the current block and the neighboring block may be set to '4' (or 3, 2, 1). Otherwise, the filtering strength may be set to 0 (or 1, 2, 3). Alternatively, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed.
현재 블록에 인접한 주변 블록의 부호화 모드가 인트라 스킵(intra_skip)모드일 경우, 현재 블록과 주변 블록의 인트라 예측 방향이 같을 때는 경계 필터링 강도를 ‘0’으로 설정하고 다른 경우에는 경계 필터링 강도를 ‘1’로 설정하거나 그 이외의 값(2,3,4)으로 설정할 수 있다. 혹은 경계 필터링 강도를 약하게(혹은 강하게) 설정할 수 있으며 그 일 실시 예로 임의값을 설정할 수 있다. 혹은 필터링을 수행하지 않을 수 있다. If the encoding mode of the neighboring block adjacent to the current block is intra skip mode, the boundary filtering intensity is set to '0' when the intra prediction direction of the current block and the neighboring block is the same; otherwise, the boundary filtering intensity is set to '1'. It can be set to 'or other values (2, 3, 4). Alternatively, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed.
도 18은 본 발명의 일 실시예에 따른 현재 블록과 주변 블록의 예측 방향 및 매크로블록 경계를 도시한 도면이다. 18 illustrates a prediction direction and a macroblock boundary of a current block and neighboring blocks according to an embodiment of the present invention.
예를 들어, 도 18을 참조하면, 현재 블록(X)의 수직 매크로 블록 경계에 대하여 디블록킹의 필터링 강도를 설정하고 할 때, 주변 블록(A)의 예측 방향과 현재 블록(X)의 예측 방향이 동일하므로 디블록킹의 필터링 강도를 ‘0’으로 설정할 수 있다. 혹은 경계 필터링 강도를 약하게(혹은 강하게) 설정할 수 있으며 그 일 실시 예로 임의값을 설정할 수 있다. 혹은 필터링을 수행하지 않을 수 있다. 이러한 예는 현재 블록(X)와 주변 블록(B)의 수평 경계에서도 동일하게 적용될 수 있다.For example, referring to FIG. 18, when setting the filtering strength of deblocking with respect to the vertical macroblock boundary of the current block X, the prediction direction of the neighboring block A and the prediction direction of the current block X are shown. Since the same, the filtering strength of the deblocking can be set to '0'. Alternatively, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, filtering may not be performed. This example may be equally applied to the horizontal boundary between the current block X and the neighboring block B.
또한, 현재 블록이 인트라 스킵(intra_skip)모드이고 현재 블록에 대한 화면 내 예측 방향이 수평 방향일 경우, 수직 경계에 대한 경계 필터링 강도를 ‘0’으로 설정하거나 혹은 필터링을 수행하지 않는다. 또한 현재 블록이 인트라 스킵(intra_skip)모드이고 현재 블록에 대한 화면 내 예측 방향이 수직 방향일 경우, 수평 경계에 대한 경계 필터링 강도를 ‘0’으로 설정하거나 혹은 필터링을 수행하지 않는다. 다른 경우에는 경계 필터링 강도를 약하게 주거나 혹은 필터링을 수행하지 않을 수 있다. In addition, when the current block is in an intra skip mode and the intra prediction direction for the current block is in the horizontal direction, the boundary filtering intensity for the vertical boundary is set to '0' or no filtering is performed. In addition, when the current block is an intra skip mode and the prediction direction in the screen with respect to the current block is a vertical direction, the boundary filtering intensity for the horizontal boundary is set to '0' or no filtering is performed. In other cases, the boundary filtering strength may be weakened or no filtering may be performed.
예를 들어, 8을 참조하면, 현재 블록이 인트라 스킵(intra_skip)모드이고 현재 블록에 대한 화면 내 예측 방향이 수평 방향일 경우, 수직 경계에 대한 경계 필터링 강도를 ‘0’으로 설정하거나 혹은 필터링을 수행하지 않는다. 이러한 예는 현재 블록(X)와 주변 블록(B)의 수평 경계에서도 동일하게 적용된다. 이외에도 경계필터링 강도(bS)를 결정하는 방법은 여러 가지가 될 수 있다.For example, referring to 8, when the current block is in intra skip mode and the intra prediction direction for the current block is in the horizontal direction, the boundary filtering intensity for the vertical boundary is set to '0' or filtering is performed. Do not perform. This example applies equally to the horizontal boundary between the current block X and the neighboring block B. In addition, the boundary filtering strength bS may be determined in various ways.
도 19는 현재 블록의 부호화 모드 및 현재 블록 경계의 일 예를 도시한 도면이다. 상술한 방법을 도 19의 경계들에 각각 혹은 조합하여 적용할 수 있다. 19 is a diagram illustrating an example of an encoding mode of a current block and a current block boundary. The above-described method may be applied to each of the boundaries of FIG. 19 or in combination.
도 19에서 현재 블록의 부호화 기본 단위인 매크로블록(혹은 임의의 블록) 경계에 상기 방법들을 적용할 수 있다. 또한 도 19에서 현재 블록의 내부의 블록(혹은 임의의 블록) 경계에서 상기 방법들을 적용할 수 있다.In FIG. 19, the above methods may be applied to a macroblock (or arbitrary block) boundary that is a coding basic unit of a current block. In addition, in FIG. 19, the methods may be applied at a block (or arbitrary block) boundary inside the current block.
예를 들어, 현재 블록(X)이 인트라 스킵이고, 현재 블록(X)의 좌측에 인접한 주변 블록(A)이 인트라 스킵인 경우, 양 블록(X, A)의 경계에는 디블록킹 필터를 적용하지 않을 수 있다. For example, if the current block X is intra skip and the neighboring block A adjacent to the left of the current block X is intra skip, the deblocking filter is not applied to the boundary of both blocks X and A. You may not.
현재 블록(A)이 인트라 스킵이고, 현재 블록(A)의 상측에 인접한 주변 블록(B)이 인트라 모드로 부호화된 경우, 양 블록(X, B)의 경계 필터링 강도를 ‘0’으로 설정할 수 있다. 혹은 경계 필터링 강도를 약하게(혹은 강하게) 설정할 수 있으며 그 일 실시 예로 임의값을 설정할 수 있다. 또는, 현재 블록(X)과 주변 블록(A, B)의 경계가 매크로블록의 경계와 일치하는지를 판단하고, 판단결과, 현재 블록(X)과 주변 블록(A, B)의 경계가 매크로블록의 경계와 일치하는 경우에는 경계 필터링 강도(bS)를 4로 결정할 수 있다. 반면, 현재 블록(X)과 주변 블록(A, B)의 경계가 매크로블록(Macro block, MB)의 경계가 아닌 경우에는 경계 필터링 강도(bS)를 3으로 결정할 수 있다. When the current block A is intra skip and the neighboring block B adjacent to the upper side of the current block A is encoded in the intra mode, the boundary filtering strength of both blocks X and B can be set to '0'. have. Alternatively, the boundary filtering strength may be set weakly (or strongly), and in one embodiment, an arbitrary value may be set. Alternatively, it is determined whether the boundary between the current block X and the neighboring blocks A and B coincides with the boundary of the macro block. As a result of the determination, the boundary between the current block X and the neighboring blocks A and B is determined by the macroblock. In case of matching the boundary, the boundary filtering intensity bS may be determined as 4. On the other hand, when the boundary between the current block X and the neighboring blocks A and B is not the boundary of the macroblock MB, the boundary filtering strength bS may be determined to be three.
이러한 디블록킹 필터는 영상에서의 블록킹 현상을 제거하여 영상의 주관적 화질을 향상시키는 역할을 수행한다. 하지만 깊이 정보 맵은 가상합성 영상을 생성하기 위해서 사용할 뿐 실제 디스플레이 장치로 출력되지 않는다. 따라서 이러한 깊이 정보 맵의 블록 경계는 주관적 화질 향상 측면이 아닌 가상 합성 영상을 화질을 향상시키기 위해 필요할 수 있다. The deblocking filter removes the blocking phenomenon in the image and improves the subjective quality of the image. However, the depth map is only used to generate the virtual composite image and is not output to the actual display device. Therefore, the block boundary of the depth information map may be necessary to improve the quality of the virtual composite image, rather than the subjective quality improvement aspect.
또한 깊이정보 맵의 디블록킹 필터(혹은 다른 필터링 방법들)는 두 블록 간의 부호화 모드(화면 내 예측인지 화면 간 예측인지), 두 블록 간의 참조 픽쳐의 동일성, 두 블록간의 움직임 정보가 아닌 현재 블록의 부호화 모드에 따라 필터링의 수행 여부 및 필터링의 강도를 설정할 필요가 있다. In addition, the deblocking filter (or other filtering methods) of the depth map includes encoding modes (either intra prediction or inter prediction) between two blocks, equality of reference pictures between the two blocks, and movement information of the current block, not motion information between the two blocks. It is necessary to set whether to perform filtering and the strength of filtering according to the encoding mode.
예를 들어, 현재 블록이 객체 경계 부분을 부호화하는 플래인 기반 분할 부호화 방법으로 부호화되었을 경우, 객체의 경계 부분을 최대한 뭉개지 않게 하기 위해서는 블록 경계에 대하여 디블록킹 필터를 수행하지 않아야 한다. For example, when the current block is encoded by a plane-based split coding method of encoding an object boundary portion, the deblocking filter should not be performed on the block boundary in order to prevent the object boundary from being crushed as much as possible.
또 다른 일 예로 현재 블록이 인트라 스킵 방법으로 부호화 되었고 현재 블록이 주변 왼쪽 블록의 인접한 픽셀로부터 수평 패딩(padding)되어 유도되었다면, 해당 블록의 수직 경계 주변의 픽셀 값은 동일할 수 있다. 따라서 이러한 블록 경계에는 디블록킹 필터를 수행하지 않을 수 있다. As another example, if a current block is encoded by an intra skip method and the current block is derived by horizontal padding from adjacent pixels of a neighboring left block, pixel values around a vertical boundary of the corresponding block may be the same. Therefore, the deblocking filter may not be performed on the block boundary.
반대로 이러한 경우에 수평 경계 주변의 픽셀값은 동일하지 않을 수 있으며, 이러한 블록 경계에는 디블록킹 필터를 수행하여야 한다. 즉, 현재 블록이 인트라 스킵 블록의 부호화되었다면 주변 블록의 상관성이 아닌 현재 블록의 화면 내 예측 방향에 따라 경계에 필터링을 수행할 수 있다. 혹은 현재 블록과 주변 블록의 부호화 모드 및 화면 내 예측 방향에 따라 필터링 수행 여부를 결정할 수 있다. On the contrary, in this case, pixel values around the horizontal boundary may not be the same, and a deblocking filter should be performed on the block boundary. That is, if the current block is encoded of the intra skip block, filtering may be performed on the boundary according to the prediction direction in the screen of the current block rather than the correlation of neighboring blocks. Alternatively, whether to perform filtering may be determined according to the encoding mode of the current block and the neighboring block and the intra prediction direction.
상술한 방법을 조합하여 디블록킹 필터의 필터링 강도(bS)를 유도하는 방법은 아래와 같다.Combining the above-described method to derive the filtering strength (bS) of the deblocking filter is as follows.
만약, 현재 블록의 경계가 수평 경계일 경우, 아래 과정을 적용될 수 있다.If the boundary of the current block is a horizontal boundary, the following process may be applied.
만일 현재 블록의 경계를 기준으로 인접한 두 블록의 부호화 모드가 인트라 스킵이고(혹은 두 블록중 하나가 인트라 스킵이고) 해당 블록의 화면내 방향이 수직일 경우, 디블록킹 필터의 필터강 강도(bS)를 약하게 줄 수 있으며 일예로 ‘0’으로 설정할 수 있다.If the coding mode of two adjacent blocks based on the boundary of the current block is intra skip (or one of the two blocks is intra skip) and the in-screen direction of the block is vertical, the filter strength of the deblocking filter (bS) Can be weakly set, for example, can be set to '0'.
만일 그렇지 않고 현재 블록의 경계를 기준으로 인접한 두 블록의 부호화 모드 중 하나라도 인트라 스킵이 적용된 블록이 존재하고 그리고 블록의 경계가 매크로 블록 경계(혹은 임의의 블록 경계)일 경우, 디블록킹 필터의 필터링 강도를 강하게 줄 수 있으며, 일 예로 ‘4’로 설정할 수 있다. 그렇지 않고 만일 블록의 경계가 매크로 블록 경계가 아니라면 디블록킹 필터의 필터강 강도(bS)를 약하게 줄 수 있으며 일예로 ‘0’으로 설정할 수 있다.Otherwise, if there is a block to which intra skip is applied even in one of two adjacent coding modes based on the boundary of the current block, and the boundary of the block is a macro block boundary (or arbitrary block boundary), filtering of the deblocking filter Strength can be strongly given, for example, it can be set to '4'. Otherwise, if the block boundary is not the macro block boundary, the filter strength of the deblocking filter (bS) may be weakened, and may be set to '0' as an example.
그리고, 다음으로, 도 17에서 설명한 과정을 따라 디블록킹 필터의 필터강 강도(bS)를 적용할 수 있다.Next, the filter strength (bS) of the deblocking filter may be applied according to the process described with reference to FIG. 17.
만일 현재 블록의 경계가 수직경계일 경우, 아래와 같은 과정이 적용될 수 있다. If the boundary of the current block is a vertical boundary, the following process may be applied.
만일 현재 블록의 경계를 기준으로 인접한 두 블록의 부호화 모드가 인트라 스킵이고(혹은 두 블록 중 하나가 인트라 스킵이고) 해당 블록의 화면 내 방향이 수평일 경우, 디블록킹 필터의 필터강 강도(bS)를 약하게 줄 수 있으며 일 예로 ‘0’으로 설정할 수 있다.If the coding mode of two adjacent blocks based on the boundary of the current block is intra skip (or one of the two blocks is intra skip) and the direction in the screen of the block is horizontal, the filter strength of the deblocking filter (bS) Can be weakly set, for example, can be set to '0'.
만일 그렇지 않고 현재 블록의 경계를 기준으로 인접한 두 블록의 부호화 모드 중 하나라도 인트라 스킵이 적용된 블록이 존재하고 그리고 블록의 경계가 매크로 블록 경계(혹은 임의의 블록 경계)일 경우, 디블록킹 필터의 필터링 강도를 강하게 줄 수 있으며, 일 예로 ‘4’로 설정할 수 있다. 그렇지 않고 만일 블록의 경계가 매크로 블록 경계가 아니라면 디블록킹 필터의 필터강 강도(bS)를 약하게 줄 수 있으며 일예로 ‘0’으로 설정할 수 있다.Otherwise, if there is a block to which intra skip is applied even in one of two adjacent coding modes based on the boundary of the current block, and the boundary of the block is a macro block boundary (or arbitrary block boundary), filtering of the deblocking filter Strength can be strongly given, for example, it can be set to '4'. Otherwise, if the block boundary is not the macro block boundary, the filter strength of the deblocking filter (bS) may be weakened, and may be set to '0' as an example.
다음은 도 17에서 설명한 과정을 따라 디블록킹 필터의 필터강 강도(bS)를 적용할 수 있다.Next, the filter strength (bS) of the deblocking filter may be applied according to the process described with reference to FIG. 17.
또는 도 8의 플레인 기반 분할 화면 내 예측 방법이 적용된 깊이 정보 맵의 객체 경계부분에는 디블록킹 필터의 필터강 강도(bS)를 약하게 설정할 수 있으며, 일예로 ‘0’으로 설정할 수 있다. 이 방법을 이용한 일 실시예로 디블록킹 필터의 필터링 강도(bS)를 유도하는 과정은 아래와 같이 수행될 수 있다. 하기 방법은 현재 블록의 경계가 수평경계 혹은 수직 경계 모두에 대하여 적용될 수 있다.Alternatively, the strength of the filter strength (bS) of the deblocking filter may be weakly set at an object boundary of the depth information map to which the prediction method in the plane-based split screen of FIG. 8 is applied, and may be set to '0' as an example. In one embodiment using this method, the derivation of the filtering strength (bS) of the deblocking filter may be performed as follows. The following method can be applied for the boundary of the current block for both the horizontal boundary or the vertical boundary.
만일 현재 블록의 경계를 기준으로 인접한 두 블록의 부호화 모드가 플레인 기반 분할 화면 내 예측 방법이 적용된 블록이고(혹은 두 블록 중 하나일 경우) 그리고 블록의 경계가 매크로 블록 경계(혹은 임의의 블록 경계)일 경우, 디블록킹 필터의 필터링 강도를 약하게 줄 수 있으며, 일 예로 ‘1’로 설정할 수 있다. If the coding mode of two adjacent blocks based on the boundary of the current block is a block to which the prediction method in the plane-based split screen is applied (or one of two blocks), and the boundary of the block is a macroblock boundary (or arbitrary block boundary) In this case, the filtering strength of the deblocking filter may be weakened, and as an example, it may be set to '1'.
그렇지 않고 만일 블록의 경계가 매크로 블록 경계가 아니라면 디블록킹 필터의 필터강 강도(bS)를 약하게 줄 수 있으며 일 예로 ‘0’으로 설정할 수 있다.Otherwise, if the block boundary is not the macro block boundary, the filter strength of the deblocking filter (bS) may be weakened, and may be set to '0' as an example.
화면 내 부호화만 수행할 경우(I 프레임임 경우), 위의 제안된 방법들을 국제 동영상 표준인 H.264/AVC에 맞추어 구현하면 Macroblock layer(macroblock_layer) 신택스는 아래 표 1과 같다.In case of performing only intra picture coding (I frame), if the above proposed methods are implemented according to international video standard H.264 / AVC, the macroblock layer (macroblock_layer) syntax is shown in Table 1 below.
표 1
Figure PCTKR2013006401-appb-T000001
Table 1
Figure PCTKR2013006401-appb-T000001
Figure PCTKR2013006401-appb-I000001
Figure PCTKR2013006401-appb-I000001
“mb_intra_skip_run”과 “mb_intra_skip_flag”는 현재의 깊이 정보 맵 블록이 예측 영상만으로 구성되었다는 것을 의미한다. 현재의 깊이 정보 맵 블록이 예측 영상만으로 구성되었다는 것은 인트라 스킵(intra skip) 모드라는 것으로 해석될 수 있으며, 또한 인트라 모드(NxN 예측 모드 여기서 N은 16, 8, 4 등) 이면서 차분 데이터가 없다는 것으로 해석될 수 있다. "Mb_intra_skip_run" and "mb_intra_skip_flag" mean that the current depth information map block consists only of the predicted image. The fact that the current depth information map block is composed of only the prediction image may be interpreted as an intra skip mode, and also that it is an intra mode (NxN prediction mode where N is 16, 8, 4, etc.) and there is no difference data. Can be interpreted.
“mb_intra_skip_run”은 엔트로피 부호화 방법이 컨텍스트 기반 적응적 가변 길이 부호화(CAVLC)에서 동작하고, “mb_intra_skip_flag”는 엔트로피 부호화 방법이 컨텍스트 기반 적응적 산술 부호화 CABAC에서 동작한다. “Mb_intra_skip_run” means that the entropy coding method operates in context-based adaptive variable length coding (CAVLC), and “mb_intra_skip_flag” means that the entropy coding method operates in context-based adaptive arithmetic coding CABAC.
위 신택스에서 “moreDataFlag”는 현재 블록에 대하여 부호화 정보(예측 블록 생성 정보 및 잔여신호 블록 정보)를 파싱(parsing)할지를 나타낸다. 만일, “moreDataFlag”가 ‘1’이면, 현재 블록에 대한 부호화 정보를 파싱하고 ‘0’이면 현재 블록에 대한 부호화 정보를 파싱하지 않고 다음 블록으로 넘어간다. In the above syntax, "moreDataFlag" indicates whether to parse encoding information (prediction block generation information and residual signal block information) with respect to the current block. If "moreDataFlag" is '1', the encoding information about the current block is parsed. If "moreDataFlag" is '0', the encoding block moves to the next block without parsing the encoding information about the current block.
“mb_intra_skip_flag”가 ‘1’일경우에는 “moreDataFlag”가 ‘0’으로 설정되므로 현재 블록에 대한 부호화 정보를 파싱하지 않고 다음 블록으로 넘어간다. 다시 말하면, “mb_intra_skip_flag”가 ‘1’일경우에는 현재 블록에 대하여 부호화 정보(예측 블록 생성 정보 및 잔여신호 블록 정보)를 파싱(parsing)하지 않는다.If "mb_intra_skip_flag" is set to "1", "moreDataFlag" is set to "0", so that the code goes to the next block without parsing encoding information about the current block. In other words, when "mb_intra_skip_flag" is "1", encoding information (prediction block generation information and residual signal block information) is not parsed for the current block.
또한, 화면 내 부호화와 화면 간 부호화를 모두 수행할 경우(I 혹은 P 혹은 B 프레임임 경우), 위의 제안된 방법들을 국제 동영상 표준인 H.264/AVC에 맞추어 구현하면 Macroblock layer(macroblock_layer) 신택스는 아래 표 2과 같다.In addition, when performing both intra-picture and inter-screen encoding (I, P or B frames), if the above proposed methods are implemented in accordance with the international video standard H.264 / AVC, the macroblock layer (macroblock_layer) syntax is implemented. Is shown in Table 2 below.
표 2
Figure PCTKR2013006401-appb-T000002
TABLE 2
Figure PCTKR2013006401-appb-T000002
“mb_intra_skip_flag”는 현재의 깊이정보 맵 블록이 예측 영상만으로 구성되었다는 것을 의미한다. 만약 mb_intra_skip_flag”가 ‘1’일 경우에는 차분 블록 데이터를 파싱(parsing)하지 않는다. 그렇지 않고 mb_intra_skip_flag”가 ‘0’일 경우에는 기존 방법대로 차분 블록 데이터를 파싱(parsing)한다. 여기서 차분 블록의 데이터를 파싱하지 않는 다는 것을 인트라 스킵(intra skip) 모드라는 것으로 해석될 수 있으며, 또한 인트라 모드(NxN 예측 모드 여기서 N은 16, 8, 4 등)이면서 차분 데이터가 없다는 것으로 해석될 수 있다. “Mb_intra_skip_flag” means that the current depth map block is composed of only prediction images. If mb_intra_skip_flag ”is '1', differential block data is not parsed. Otherwise, when mb_intra_skip_flag ”is '0', differential block data is parsed according to the conventional method. In this case, the fact that the data of the difference block is not parsed may be interpreted as an intra skip mode, and may also be interpreted as an intra mode (NxN prediction mode where N is 16, 8, 4, etc.) but no difference data. Can be.
위 신택스에서 “mb_intra_skip_flag”가 ‘1’일경우에는 “mb_type”과 “sub_mb_pred( mb_type )”과 “mb_pred( mb_type )”과 “coded_block_pattern”과 “transform_size_8x8_flag”과 “mb_qp_delta”과 “residual()” 등이 파싱되지 않는다. 즉, “mb_intra_skip_flag”가 ‘1’일경우에는 현재 블록에 대하여 부호화 정보(예측 블록 생성 정보 및 잔여신호 블록 정보)를 파싱(parsing)하지 않는다.In the above syntax, when “mb_intra_skip_flag” is '1', “mb_type”, “sub_mb_pred (mb_type)”, “mb_pred (mb_type)”, “coded_block_pattern”, “transform_size_8x8_flag”, “mb_qp_delta” and “residual ()” Not parsed That is, when "mb_intra_skip_flag" is "1", encoding information (prediction block generation information and residual signal block information) is not parsed for the current block.
표 2의 신택스를 slice_data() 신택스 적용하면 표 3 내지 표 5와 같이 표현될 수 있다.If the syntax of Table 2 is applied to the slice_data () syntax, it may be expressed as shown in Tables 3 to 5.
표 3
Figure PCTKR2013006401-appb-T000003
TABLE 3
Figure PCTKR2013006401-appb-T000003
Figure PCTKR2013006401-appb-I000002
Figure PCTKR2013006401-appb-I000002
표 4
Figure PCTKR2013006401-appb-T000004
Table 4
Figure PCTKR2013006401-appb-T000004
Figure PCTKR2013006401-appb-I000003
Figure PCTKR2013006401-appb-I000003
표 5
Figure PCTKR2013006401-appb-T000005
Table 5
Figure PCTKR2013006401-appb-T000005
Figure PCTKR2013006401-appb-I000004
Figure PCTKR2013006401-appb-I000004
표 3 내지 표 5에서 “moreDataFlag”는 현재 블록에 대하여 부호화 정보(예측 블록 생성 정보 및 잔여신호 블록 정보)를 파싱(parsing)할지를 나타낸다. In Tables 3 to 5, "moreDataFlag" indicates whether to parse encoding information (prediction block generation information and residual signal block information) with respect to the current block.
만일, “moreDataFlag”가 ‘1’이면, 현재 블록에 대한 부호화 정보를 파싱하고 ‘0’이면 현재 블록에 대한 부호화 정보를 파싱하지 않고 다음 블록으로 넘어간다. If "moreDataFlag" is '1', the encoding information about the current block is parsed. If "moreDataFlag" is '0', the encoding block moves to the next block without parsing the encoding information about the current block.
“mb_intra_skip_flag”가 ‘1’일경우에는 “moreDataFlag”가 ‘0’으로 설정되므로 현재 블록데 애한 부호화 정보를 파싱하지 않고 다음 블록으로 넘어간다. 다시 말하면, “mb_intra_skip_flag”가 ‘1’일경우에는 현재 블록에 대하여 부호화 정보(예측 블록 생성 정보 및 잔여신호 블록 정보)를 파싱(parsing)하지 않는다.If "mb_intra_skip_flag" is "1", "moreDataFlag" is set to "0", so the code goes to the next block without parsing the encoding information for the current block. In other words, when "mb_intra_skip_flag" is "1", encoding information (prediction block generation information and residual signal block information) is not parsed for the current block.
도 20은 본 발명의 일 실시예에 따른 비디오 부호화 장치의 구성을 나타내는 제어 블록도이다. 도 20은 화소간 상관성이 높은 영상에 대한 화면 내 부호화시 현재 블록 영상을 주변 블록을 이용한 예측 블록만으로 구성하는 방법의 부호화 장치를 도시한 도면이다. 20 is a control block diagram illustrating a configuration of a video encoding apparatus according to an embodiment of the present invention. FIG. 20 is a diagram illustrating an encoding method of a method of configuring a current block image by only prediction blocks using neighboring blocks when in-screen encoding of an image having high correlation between pixels.
예측영상 생성부(310)에서는 화면 내 예측 과정을 통해 예측 블록을 생성하거나 혹은 화면 간 예측 과정을 통해 예측 블록을 생성한다. 자세한 생성 방법은 상기 절에 자세히 설명하였다. The prediction image generator 310 generates a prediction block through an intra prediction process or generates a prediction block through an inter prediction process. Detailed generation methods are described in detail in the above section.
예측영상 선택부(320)에서는 예측영상 생성부(310)에서 생성한 예측 영상들 중에서 가장 부호화 효율이 우수한 것을 선택하며, 예측 영상 선택 정보는 비트스트림에 포함된다. The predictive image selecting unit 320 selects the most excellent encoding efficiency among the predictive images generated by the predictive image generating unit 310, and the predictive image selection information is included in the bitstream.
감산부(330)에서는 현재 블록 영상을 예측 블록 영상과 차분하여 차분 블록 영상을 생성한다. The subtractor 330 generates a differential block image by subtracting the current block image from the predicted block image.
부호화 판단부(340)에서는 차분된 블록 영상 및 예측 블록의 생성 정보에 대한 부호화 여부를 결정하여, 부호화 여부 정보를 출력한다. The encoding determiner 340 determines whether to encode the generated block image and the prediction information of the predicted block, and outputs encoding information.
부호화부(350)에서는 부호화 판단부(340)에서 결정한 부호화 여부 정보에 따라 수행여부가 결정되며, 차분 블록 영상에 대해 변환 및 양자화 그리고 엔트로피 부호화과정을 거친 후 압축된 비트스트림을 출력한다. The encoder 350 determines whether to perform the encoding according to the encoding information determined by the encoding determiner 340, and outputs the compressed bitstream after the transform, quantization, and entropy encoding processes are performed on the differential block image.
다중화부(360)에서는 부호화부(350)에서 출력된 압축된 차분 블록 영상에 대한 비트스트림과 부호화 판단부(340)에서 출력된 부호화 여부 정보, 그리고 예측 영상 선택부(320)에서 출력된 예측 영상 선택 정보를 혼합하여 하나의 비트스트림을 출력한다.In the multiplexer 360, a bitstream of the compressed differential block image output from the encoder 350, encoding information information output from the encoding determiner 340, and a predicted image output from the predictive image selector 320. One bitstream is output by mixing the selection information.
도 21은 본 발명의 일 실시예에 따른 비디오 복호화 장치의 구성을 나타내는 제어 블록도이다. 도 21는 화소간 상관성이 높은 영상에 대한 화면 내 부호화시 현재 블록 영상을 주변 블록을 이용한 예측 블록만으로 구성하는 방법의 복호화 장치를 도시한 도면이다.21 is a control block diagram illustrating a configuration of a video decoding apparatus according to an embodiment of the present invention. FIG. 21 is a diagram illustrating a decoding apparatus of a method of configuring a current block image using only prediction blocks using neighboring blocks when intra-picture encoding is performed on an image having high correlation between pixels.
역다중화부(410)에서는 입력된 비트스트림에서 차분영상에 대한 정보가 비트스트림에 포함되었는지에 대한 복호화 여부 정보와 예측 영상 선택 정보를 복호화한다. The demultiplexer 410 decodes whether the information about the difference image is included in the bitstream and whether the information is included in the bitstream and the predictive image selection information.
복호화 판단부(420)에서는 복호화 여부 정보에 따라 복호화부(430)의 수행여부를 결정한다. The decryption determining unit 420 determines whether to perform the decoding unit 430 according to the decoding information.
복호화부(430)는 복호화 여부 정보에 따라 비트스트림에 차분 영상 및 예측 블록의 생성 정보에 대한 정보가 존재할 경우에만 수행된다. 복호화부(430)에서는 역양자화와 역변환 과정을 거쳐서 차분 영상을 복원한다. The decoder 430 is performed only when information on generation information of the differential image and the prediction block exists in the bitstream according to the decoding information. The decoder 430 reconstructs the differential image through inverse quantization and inverse transformation.
예측 영상 생성부(460)에서는 화면 내 예측 과정을 통해 예측 블록을 생성하거나 혹은 화면 간 예측 과정을 통해 예측 블록을 생성한다. “The prediction image generator 460 generates a prediction block through an intra prediction process or generates a prediction block through an inter prediction process. “
예측영상 결정부(450)에서는 예측 영상 선택 정보를 통해 예측영상 생성부(460)에서 생성한 예측 영상 중에서 현재 블록에 대한 최적의 예측 영상을 결정한다. The prediction image determiner 450 determines an optimal prediction image for the current block from the prediction images generated by the prediction image generator 460 through the prediction image selection information.
가산부(440)에서는 생성된 예측 영상과 복원된 차분 영상을 더하여 복원된 영상을 구성한다. 이때 복원된 차분 영상이 존재하지 않는다면 예측 영상이 복원된 영상으로 구성된다.The adder 440 configures the reconstructed image by adding the generated prediction image and the reconstructed difference image. At this time, if the reconstructed difference image does not exist, the predictive image is composed of the reconstructed image.
상술한 실시예에서, 방법들은 일련의 단계 또는 블록으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.In the above-described embodiment, the methods are described based on a flowchart as a series of steps or blocks, but the present invention is not limited to the order of steps, and any steps may occur in a different order or at the same time than the other steps described above. have. Also, one of ordinary skill in the art appreciates that the steps shown in the flowcharts are not exclusive, that other steps may be included, or that one or more steps in the flowcharts may be deleted without affecting the scope of the present invention. I can understand.
상술한 실시예는 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.The above-described embodiments include examples of various aspects. While not all possible combinations may be described to represent the various aspects, one of ordinary skill in the art will recognize that other combinations are possible. Accordingly, the invention is intended to embrace all other replacements, modifications and variations that fall within the scope of the following claims.

Claims (20)

  1. 깊이 정보 맵의 화면 내 예측 시 현재 블록과 인접한 주변 블록의 예측 화소값을 상기 현재 블록의 화소값으로 생성하는 단계를 포함하는 영상 복호화 방법.And generating predicted pixel values of neighboring blocks adjacent to the current block as pixel values of the current block during intra prediction of a depth information map.
  2. 제1항에 있어서,The method of claim 1,
    부호화된 차분 영상 정보와 복호화 여부 정보 그리고 예측 블록 영상 생성 방법에 대한 선택 정보를 역다중화하는 단계;Demultiplexing encoded differential image information, decoding information and selection information on a method of generating a predicted block image;
    입력된 비트스트림에서 현재 블록에 대한 복호화 여부 정보를 복호화하는 단계;Decoding information on whether to decode the current block in the input bitstream;
    상기 복호화 여부 정보에 따라 상기 현재 블록에 대한 차분 영상 정보 및 예측 블록의 생성 정보를 복호화하는 단계;Decoding differential image information and generation information of a prediction block of the current block according to the decoding information;
    예측 블록 영상 생성 방법에 대한 선택 정보에 따라 화면 내 예측 방법과 화면 간 예측 방법 중에서 예측 방법을 선택하는 단계;Selecting a prediction method from an intra prediction method and an inter prediction method according to selection information on a prediction block image generation method;
    예측 영상을 구성하기 위해서 주변 블록으로부터 현재 블록에 대한 예측 방향을 유추하는 단계;Inferring a prediction direction for a current block from a neighboring block to construct a predicted image;
    상기 예측 방향에 따라 현재 블록 영상에 대한 예측 영상을 구성하는 단계를 포함하는 영상 복호화 방법.And forming a prediction image for the current block image according to the prediction direction.
  3. 제2항에 있어서,The method of claim 2,
    상기 예측 영상을 구성하는 단계는,Comprising the prediction image,
    현재 블록에 인접한 주변 화소를 복사(패딩)하여 화면 내 예측 영상을 구성하는 방법, 현재 블록과 인접한 주변 화소의 특성을 고려하여 복사할 화소를 결정한 후 결정된 화소를 통해 현재 블록을 구성하는 방법 및 복수의 예측 방법들을 혼합하여 혼합한 값의 평균값 또는 각각의 방법에 따른 가중치의 합으로 예측 블록 영상을 구성하여 사용하는 방법 중 적어도 하나에 의하여 구성되는 것을 특징으로 하는 영상 복호화 방법.A method of constructing an intra prediction image by copying (padding) neighboring pixels adjacent to a current block, determining a pixel to be copied in consideration of characteristics of neighboring pixels adjacent to the current block, and then configuring the current block through the determined pixels. And a method of constructing and using a prediction block image by using an average value of the mixed values of the prediction methods and a sum of weights according to the respective methods.
  4. 깊이 정보에 대한 영상 복호화 방법에 있어서,In the image decoding method for depth information,
    상기 깊이 정보의 현재 블록에 대한 예측 블록을 생성하는 단계와;Generating a prediction block for the current block of depth information;
    상기 예측 블록에 기초하여 상기 현재 블록의 복원 블록을 생성하는 단계와;Generating a reconstruction block of the current block based on the prediction block;
    상기 복원 블록에 필터링을 수행하는 단계를 포함하고, Performing filtering on the reconstruction block;
    상기 필터링 수행 여부는 상기 현재 블록의 블록 정보 및 상기 현재 블록의 부호화 정보에 따라 결정되는 것을 특징으로 하는 영상 복호화 방법.Whether or not the filtering is performed is determined according to block information of the current block and encoding information of the current block.
  5. 제4항에 있어서,The method of claim 4, wherein
    상기 부호화 정보는 상기 복원 영상 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대한 정보를 포함하고,The encoding information includes information on a portion having the same depth, a portion to be a background, and a portion corresponding to the inside of the object in the reconstructed image.
    상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대응되는 부분 중 적어도 하나에는 상기 필터링을 수행하지 않는 것을 특징으로 하는 영상 복호화 방법.And at least one of a portion having the same depth, a background portion, and a portion corresponding to a portion inside the object in the reconstruction block does not perform the filtering.
  6. 제5항에 있어서,The method of claim 5,
    상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대응되는 부분 중 적어도 하나에는 디블록킹 필터, 샘플 적응형 보상(SAO; Sample Adaptive Offset) 필터, 적응형 루프 필터(ALF; Adaptive Loop Filter), 인루프 결합 시점간 깊이정보 필터링(JVDF; In-loop Joint inter-View Depth Filtering) 중 적어도 하나를 수행하지 않는 영상 복호화 방법.A deblocking filter, a sample adaptive offset filter (SAO) filter, and an adaptive loop are included in at least one of a portion having the same depth, a background portion, and a portion corresponding to a portion inside the object in the reconstruction block. An image decoding method that does not perform at least one of a filter (ALF) and in-loop joint inter-view depth filtering (JVDF).
  7. 제4항에 있어서,The method of claim 4, wherein
    상기 부호화 정보는 상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대한 정보를 포함하고,The encoding information includes information on a portion having the same depth, a background portion, and a portion corresponding to the inside of the object in the reconstruction block,
    상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분에 대응되는 부분 중 적어도 하나에는 약한 필터링이 수행되는 것을 특징으로 하는 영상 복호화 방법.And at least one of a portion having the same depth, a background portion, and a portion corresponding to a portion inside the object within the reconstruction block, is subjected to weak filtering.
  8. 제4항에 있어서,The method of claim 4, wherein
    상기 복원 블록에 대한 업샘플링을 수행하는 단계를 포함하고, Performing upsampling on the recovery block;
    상기 업샘플링은 하나의 샘플값을 기설정된 개수의 샘플값으로 패딩하는 것을 특징으로 하는 영상 복호화 방법.The upsampling is an image decoding method characterized in that the padding of one sample value to a predetermined number of sample values.
  9. 제8항에 있어서,The method of claim 8,
    상기 업샘플링은 상기 복원 블록 내에서 동일 깊이를 갖는 부분, 배경이 되는 부분 및 객체 내부에 대응되는 부분 중 적어도 하나에서 수행되지 않는 것을 특징으로 하는 영상 복호화 방법.The upsampling is not performed on at least one of a portion having the same depth, a background portion, and a portion corresponding to the inside of the object in the reconstruction block.
  10. 제4항에 있어서,The method of claim 4, wherein
    상기 복원 블록에 필터링을 수행하는 단계는 Performing filtering on the recovery block
    인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하는 단계;Determining boundary filtering strengths for two adjacent blocks;
    상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하는 단계를 포함하고, Applying filtering on the pixel values of the two blocks according to the boundary filtering intensity,
    상기 경계 필터링 강도를 결정하는 단계는 Determining the boundary filtering strength
    인접한 두 개의 블록 중에서 적어도 하나의 블록이 인트라 스킵(intraskip) 부호화되었는지를 판단하는 단계와;Determining whether at least one of the two adjacent blocks is intraski coded;
    상기 두 개의 블록이 모두 인트라 스킵(intraskip) 부호화되지 않은 것으로 판단되는 경우, 인접한 두 개의 블록 중에서 적어도 하나의 블록이 인트라 부호화되었는지를 판단하는 단계와;If it is determined that both of the two blocks are not intra skip coded, determining whether at least one block of two adjacent blocks is intra coded;
    상기 두 개의 블록이 모두 인트라 부호화되지 않은 것으로 판단되는 경우, 상기 두 개의 블록 중에서 적어도 하나의 블록이 직교 변환 계수를 갖는지를 판단하는 단계와;If it is determined that both blocks are not intra coded, determining whether at least one of the two blocks has an orthogonal transform coefficient;
    상기 두 개의 블록이 모두 직교 변환 계수를 갖지 않는 것으로 판단되는 경우, 상기 두 개의 블록에 대하여 움직임 벡터의 x축 성분 또는 y축 성분의 차의 절대값 중에서 적어도 하나가 1(혹은 4)이상이 되거나 또는 움직임 보상이 다른 참조 프레임에 기초하여 수행되었는지를 판단하는 단계와;If it is determined that the two blocks do not have orthogonal transform coefficients, at least one of the absolute value of the difference between the x-axis component or the y-axis component of the motion vector with respect to the two blocks is 1 (or 4) or Or determining whether motion compensation is performed based on another reference frame;
    상기 움직임 벡터의 차의 절대값이 모두 1(혹은 4)보다 작고 또한 상기 움직임 보상이 같은 참조 프레임에 기초하여 수행되었는지를 판단하는 단계를 포함하는 것을 특징으로 하는 영상 복호호 방법.And determining whether the absolute values of the differences of the motion vectors are all less than 1 (or 4) and whether the motion compensation is performed based on the same reference frame.
  11. 제10항에 있어서,The method of claim 10,
    인접한 두 개의 블록 중에서 적어도 하나의 블록이 인트라 스킵(intraskip) 부호화되었을 경우 경계 필터링 강도(bS)를 0으로 결정하는 것을 특징으로 하는 영상 복호호 방법.The boundary decoding strength (bS) is determined as 0 when at least one of two adjacent blocks is intraskip coded.
  12. 제10항에 있어서,The method of claim 10,
    인접한 두 블록 중 한 블록이 인트라 스킵(intraskip) 부호화 모드이고 다른 블록이 일반적인 부호화 모드(인트라 혹은 인터)로 판단되는 경우 및 일반적인 부호화 모드에서 직교 변환 계수가 적어도 하나 존재할 경우에는 경계 필터링 강도(bS)를 1, 2, 3, 4 중 어느 하나로 결정하는 것을 특징으로 하는 영상 복호화 방법.Boundary filtering strength (bS) when one of two adjacent blocks is an intraskip coding mode and the other block is determined to be a general coding mode (intra or inter) and when at least one orthogonal transform coefficient is present in the general coding mode. Is determined by any one of 1, 2, 3, and 4.
  13. 제10항에 있어서,The method of claim 10,
    인접한 두 블록이 모두 일반적인 부호화 모드(인트라 혹은 인터)로 판단되는 경우 및 일반적인 부호화 모드에서 직교 변환 계수가 적어도 하나 존재하지 않는 경우에는 경계 필터링 강도를 0, 1, 2, 3 중 어느 하나로 결정하는 것을 특징으로 하는 영상 복호화 방법.When both adjacent blocks are determined to be a general encoding mode (intra or inter), and when at least one orthogonal transform coefficient does not exist in the general encoding mode, determining the boundary filtering strength as one of 0, 1, 2, and 3 is determined. An image decoding method characterized by.
  14. 제4항에 있어서,The method of claim 4, wherein
    상기 현재 블록의 예측 모드가 차분 정보가 존재하지 않는 인트라 스킵인 경우,If the prediction mode of the current block is intra skip without difference information,
    상기 예측 블록을 생성하는 단계는 상기 현재 블록에 대한 예측 방향을 상기 현재 블록과 인접한 주변 블록으로부터 유추하는 것을 특징으로 하는 영상 복호화 방법.The generating of the prediction block may include inferring a prediction direction of the current block from a neighboring block adjacent to the current block.
  15. 제4항에 있어서,The method of claim 4, wherein
    상기 복원 블록에 필터링을 수행하는 단계는 Performing filtering on the recovery block
    인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하는 단계;Determining boundary filtering strengths for two adjacent blocks;
    상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하는 단계를 포함하고, Applying filtering on the pixel values of the two blocks according to the boundary filtering intensity,
    상기 경계 필터링 강도를 결정하는 단계는 Determining the boundary filtering strength
    상기 현재 블록 및 상기 현재 블록에 인접한 주변 블록의 예측 방향이 같은 경우, 상기 경계 필터링 강도(bS)를 0으로 결정하는 것을 특징으로 하는 영상 복호화 방법.And if the prediction direction of the current block and a neighboring block adjacent to the current block is the same, determining the boundary filtering strength bS as zero.
  16. 제4항에 있어서,The method of claim 4, wherein
    상기 복원 블록에 필터링을 수행하는 단계는 Performing filtering on the recovery block
    인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하는 단계;Determining boundary filtering strengths for two adjacent blocks;
    상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하는 단계를 포함하고, Applying filtering on the pixel values of the two blocks according to the boundary filtering intensity,
    상기 경계 필터링 강도를 결정하는 단계는 Determining the boundary filtering strength
    상기 현재 블록의 예측 모드가 차분 정보가 존재하지 않는 인트라 스킵이고, 현재 블록에 대한 화면 내 예측 방향이 수평 방향일 경우, 상기 현재 블록의 수직 경계에 대한 상기 경계 필터링 강도를 ‘0’으로 설정하고,If the prediction mode of the current block is intra skip without difference information and the intra prediction direction for the current block is a horizontal direction, the boundary filtering intensity for the vertical boundary of the current block is set to '0' and ,
    상기 현재 블록의 예측 모드가 차분 정보가 존재하지 않는 인트라 스킵이고, 현재 블록에 대한 화면 내 예측 방향이 수직 방향일 경우, 상기 현재 블록의 수평 경계에 대한 상기 경계 필터링 강도를 ‘0’으로 설정하고 는 것을 특징으로 하는 영상 복호화 방법.If the prediction mode of the current block is intra skip without difference information and the intra prediction direction for the current block is a vertical direction, the boundary filtering intensity for the horizontal boundary of the current block is set to '0' and Image decoding method characterized in that.
  17. 제4항에 있어서,The method of claim 4, wherein
    상기 복원 블록에 필터링을 수행하는 단계는 Performing filtering on the recovery block
    인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하는 단계;Determining boundary filtering strengths for two adjacent blocks;
    상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하는 단계를 포함하고, Applying filtering on the pixel values of the two blocks according to the boundary filtering intensity,
    상기 경계 필터링 강도를 결정하는 단계는 Determining the boundary filtering strength
    상기 현재 블록과 상기 현재 블록에 인접한 주변 블록의 경계가 매크로블록의 경계와 일치하는 경우, 상기 경계 필터링 강도를 ‘0’으로 설정하고 는 것을 특징으로 하는 영상 복호화 방법.And when the boundary between the current block and a neighboring block adjacent to the current block coincides with the boundary of the macroblock, the boundary filtering intensity is set to '0'.
  18. 깊이 정보에 대한 영상 복호화 장치에 있어서,In the video decoding apparatus for depth information,
    상기 깊이 정보의 현재 블록에 대한 예측 블록을 생성하는 예측영상 생성부와;A prediction image generation unit generating a prediction block for the current block of the depth information;
    상기 예측 블록에 기초하여 상기 현재 블록의 복원 블록을 생성하는 가산부와;An adder for generating a reconstructed block of the current block based on the prediction block;
    상기 복원 블록에 필터링을 수행하는 필터부를 포함하고,A filter unit configured to perform filtering on the restoration block;
    상기 필터부는 The filter unit
    인접한 두 개의 블록에 대한 경계 필터링 강도를 결정하기 위한 경계 필터링 강도 결정부; 및 상기 경계 필터링 강도에 따라서 상기 두 개의 블록의 화소값에 대한 필터링을 적용하기 위한 필터링 적용부를 포함하는 것을 특징으로 하는 영상 복호화 장치.A boundary filtering strength determiner for determining boundary filtering strengths for two adjacent blocks; And a filtering applying unit for applying filtering on the pixel values of the two blocks according to the boundary filtering intensity.
  19. 제18항에 있어서,The method of claim 18,
    상기 경계 필터링 강도 결정부는 인접한 두 개의 블록 중에서 적어도 하나의 블록이 인트라 스킵(intraskip) 부호화되었을 경우 경계 필터링 강도(bS)를 0으로 결정하는 것을 특징으로 하는 영상 복호호 장치.And the boundary filtering strength determiner determines the boundary filtering strength bS as 0 when at least one of two adjacent blocks is intraskip coded.
  20. 제18항에 있어서,The method of claim 18,
    상기 경계 필터링 강도 결정부는 인접한 두 블록 중 한 블록이 인트라 스킵(intraskip) 부호화 모드이고 다른 블록이 일반적인 부호화 모드(인트라 혹은 인터)로 판단되는 경우 및 일반적인 부호화 모드에서 직교 변환 계수가 적어도 하나 존재할 경우에는 경계 필터링 강도(bS)를 1, 2, 3, 4 중 어느 하나로 결정하는 것을 특징으로 하는 영상 복호화 장치.The boundary filtering strength determiner determines that one block of two adjacent blocks is an intraskip coding mode and the other block is a general coding mode (intra or inter), and when there are at least one orthogonal transform coefficient in the general coding mode. And an edge filtering strength (bS) is determined by any one of 1, 2, 3, and 4.
PCT/KR2013/006401 2012-07-17 2013-07-17 In-loop filtering method and apparatus using same WO2014014276A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/399,823 US20150146779A1 (en) 2012-07-17 2013-07-17 In-loop filtering method and apparatus using same

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2012-0077592 2012-07-17
KR20120077592 2012-07-17
KR1020130084336A KR20140019221A (en) 2012-07-17 2013-07-17 In-loop filtering method and apparatus using the smae
KR10-2013-0084336 2013-07-17

Publications (1)

Publication Number Publication Date
WO2014014276A1 true WO2014014276A1 (en) 2014-01-23

Family

ID=49949043

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/006401 WO2014014276A1 (en) 2012-07-17 2013-07-17 In-loop filtering method and apparatus using same

Country Status (1)

Country Link
WO (1) WO2014014276A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019059646A1 (en) * 2017-09-20 2019-03-28 주식회사 케이티 Video signal processing method and device
CN110651478A (en) * 2017-05-17 2020-01-03 株式会社Kt Method and apparatus for video signal processing
CN114342384A (en) * 2020-03-27 2022-04-12 腾讯美国有限责任公司 Advanced control for deblocking operations
CN114556915A (en) * 2019-10-10 2022-05-27 北京字节跳动网络技术有限公司 Deblocking of coded blocks in geometric partitioning mode
CN114946190A (en) * 2019-11-18 2022-08-26 Lg电子株式会社 Image encoding apparatus and method for controlling loop filtering
US11689735B2 (en) 2019-09-01 2023-06-27 Beijing Bytedance Network Technology Co., Ltd. Alignment of prediction weights in video coding

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090078114A (en) * 2008-01-14 2009-07-17 광주과학기술원 Multi-view image coding method and apparatus using variable gop prediction structure, multi-view image decoding apparatus and recording medium storing program for performing the method thereof
WO2010002214A2 (en) * 2008-07-02 2010-01-07 삼성전자 주식회사 Image encoding method and device, and decoding method and device therefor
KR20100102516A (en) * 2009-03-11 2010-09-24 경희대학교 산학협력단 Block-based depth map coding method and apparatus and 3d video coding method using the method
KR20110018188A (en) * 2009-08-17 2011-02-23 삼성전자주식회사 Method and apparatus for image encoding, and method and apparatus for image decoding
KR20110093532A (en) * 2010-02-12 2011-08-18 삼성전자주식회사 Image/video coding and decoding system and method using graph based pixel prediction and depth map coding system and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090078114A (en) * 2008-01-14 2009-07-17 광주과학기술원 Multi-view image coding method and apparatus using variable gop prediction structure, multi-view image decoding apparatus and recording medium storing program for performing the method thereof
WO2010002214A2 (en) * 2008-07-02 2010-01-07 삼성전자 주식회사 Image encoding method and device, and decoding method and device therefor
KR20100102516A (en) * 2009-03-11 2010-09-24 경희대학교 산학협력단 Block-based depth map coding method and apparatus and 3d video coding method using the method
KR20110018188A (en) * 2009-08-17 2011-02-23 삼성전자주식회사 Method and apparatus for image encoding, and method and apparatus for image decoding
KR20110093532A (en) * 2010-02-12 2011-08-18 삼성전자주식회사 Image/video coding and decoding system and method using graph based pixel prediction and depth map coding system and method

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110651478A (en) * 2017-05-17 2020-01-03 株式会社Kt Method and apparatus for video signal processing
CN110651478B (en) * 2017-05-17 2023-11-21 株式会社Kt Method and apparatus for video signal processing
WO2019059646A1 (en) * 2017-09-20 2019-03-28 주식회사 케이티 Video signal processing method and device
US11689735B2 (en) 2019-09-01 2023-06-27 Beijing Bytedance Network Technology Co., Ltd. Alignment of prediction weights in video coding
CN114556915A (en) * 2019-10-10 2022-05-27 北京字节跳动网络技术有限公司 Deblocking of coded blocks in geometric partitioning mode
US11758143B2 (en) 2019-10-10 2023-09-12 Beijing Bytedance Network Technology Co., Ltd Motion vector handling in geometry partition mode
CN114556915B (en) * 2019-10-10 2023-11-10 北京字节跳动网络技术有限公司 Deblocking of blocks coded and decoded in geometric partition mode
CN114946190A (en) * 2019-11-18 2022-08-26 Lg电子株式会社 Image encoding apparatus and method for controlling loop filtering
CN114342384A (en) * 2020-03-27 2022-04-12 腾讯美国有限责任公司 Advanced control for deblocking operations
US11973990B2 (en) 2020-03-27 2024-04-30 Tencent America LLC Signaling for modified deblocking filter operations

Similar Documents

Publication Publication Date Title
WO2018030599A1 (en) Intra-prediction mode-based image processing method and device therefor
WO2015122549A1 (en) Method and apparatus for processing video
WO2014003379A1 (en) Image decoding method and apparatus using same
WO2013157825A1 (en) Method and device for encoding/decoding image
WO2019066524A1 (en) Image encoding/decoding method and apparatus, and recording medium for storing bitstream
WO2014010943A1 (en) Method and device for encoding/decoding image
WO2020004990A1 (en) Method for processing image on basis of inter-prediction mode and device therefor
WO2014038906A1 (en) Image decoding method and apparatus using same
WO2019194514A1 (en) Image processing method based on inter prediction mode, and device therefor
WO2014014276A1 (en) In-loop filtering method and apparatus using same
WO2019203610A1 (en) Method for processing image and device therefor
WO2021107532A1 (en) Image encoding/decoding method and apparatus, and recording medium in which bitstream is stored
WO2011129672A2 (en) Video encoding/decoding apparatus and method
WO2020096427A1 (en) Image signal encoding/decoding method and apparatus therefor
WO2019216714A1 (en) Method for processing image on basis of inter-prediction mode and apparatus therefor
WO2019151795A1 (en) Image processing method for processing motion information, method for decoding and coding image using same, and apparatus therefor
WO2020213867A1 (en) Video or image coding based on signaling of scaling list data
WO2019194463A1 (en) Method for processing image and apparatus therefor
WO2021101201A1 (en) Image coding device and method, for controlling loop filtering
WO2018034374A1 (en) Method and apparatus for encoding and decoding video signal using intra-prediction filtering
WO2011129673A2 (en) Video encoding/decoding apparatus and method
WO2019050300A1 (en) Method and device for image encoding/decoding based on effective transmission of differential quantization parameter
WO2019050299A1 (en) Method and device for encoding/decoding according to method for scanning transformation coefficient subgroup
WO2020213866A1 (en) Scaling list parameter-based video or image coding
WO2013168952A1 (en) Inter-layer prediction method and apparatus using same

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13819477

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14399823

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13819477

Country of ref document: EP

Kind code of ref document: A1