WO2015147508A1 - 깊이 정보를 이용한 비디오 부호화 방법 및 장치 - Google Patents

깊이 정보를 이용한 비디오 부호화 방법 및 장치 Download PDF

Info

Publication number
WO2015147508A1
WO2015147508A1 PCT/KR2015/002828 KR2015002828W WO2015147508A1 WO 2015147508 A1 WO2015147508 A1 WO 2015147508A1 KR 2015002828 W KR2015002828 W KR 2015002828W WO 2015147508 A1 WO2015147508 A1 WO 2015147508A1
Authority
WO
WIPO (PCT)
Prior art keywords
depth
current
lcu
information
image
Prior art date
Application number
PCT/KR2015/002828
Other languages
English (en)
French (fr)
Inventor
박광훈
김태욱
이윤진
Original Assignee
경희대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020140059064A external-priority patent/KR101603413B1/ko
Application filed by 경희대학교산학협력단 filed Critical 경희대학교산학협력단
Priority to CN201580017301.8A priority Critical patent/CN106165425B/zh
Priority to CN201910129186.3A priority patent/CN109672896B/zh
Publication of WO2015147508A1 publication Critical patent/WO2015147508A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/57Motion estimation characterised by a search window with variable size or shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2213/00Details of stereoscopic systems
    • H04N2213/003Aspects relating to the "2D+depth" image format

Definitions

  • the present invention relates to video encoding using depth information, and more particularly, to a method and apparatus for deriving object information using depth information and efficiently encoding an image.
  • Depth information images are widely used in 3D video encoding and are included in new input devices such as Kinect cameras on Xbox game consoles, Intel SENZ3D webcams, iSense 3D scanners on iPads, and Google Tango smartphones. Information cameras can be used in many different 3D and 2D applications.
  • 2D / 3D application applications are being popularized through more various 2D / 3D application services. Therefore, a variety of information can be utilized by including a depth information camera in a multimedia camera system in the future. Do.
  • An object of the present invention is to provide an image encoding method and apparatus capable of efficient encoding without performance degradation by using depth information in 2D video encoding.
  • an image encoding method using depth information includes extracting depth value distribution information of a current largest coding unit (LCU); Predicting partition structure candidates of the LCU based on the depth value distribution information; And determining an optimal partition structure among the partition structure candidates of the LCU based on at least one of coding efficiency and picture quality information.
  • LCU current largest coding unit
  • an image encoding method using depth information may include extracting depth value distribution information of a current largest coding unit (LCU); Predicting an object structure of the CU based on depth value distribution information of the CU included in the LCU; And omitting some of the rate distortion cost operations based on the object structure prediction of the CU and determining an optimal partition structure among the partition structure candidates of the LCU.
  • LCU current largest coding unit
  • an image encoding method using depth information may include extracting depth value distribution information of a current coding unit (CU) from a depth image; And determining whether the current CU consists of a single object based on the depth value distribution information, and predicting a partition structure of the current CU according to whether the current CU consists of a single object.
  • CU current coding unit
  • an apparatus for encoding an image using depth information may include: a depth value extractor configured to extract depth value distribution information of a current largest coding unit (LCU) from a depth image; A partition structure prediction unit predicting partition structure candidates of the LCU based on the depth value distribution information; And an optimal partition structure determiner that determines an optimal partition structure among the partition structure candidates of the LCU based on at least one of coding efficiency and image quality information.
  • LCU current largest coding unit
  • an apparatus for encoding an image using depth information includes: a depth value extractor configured to extract depth value distribution information of a current largest coding unit (LCU) from a depth image; An object structure prediction unit predicting an object structure of the CU based on depth value distribution information of the CU included in the LCU; And an optimal partitioning structure determination unit for omitting some of the rate distortion cost calculations based on the object structure prediction of the CU and determining an optimal partitioning structure among the partitioning structure candidates of the LCU.
  • LCU current largest coding unit
  • an apparatus for encoding an image using depth information may include: a depth value extractor extracting depth value distribution information of a current largest coding unit (LCU) from a depth image; And a partition structure predictor that determines whether the current CU is formed of a single object based on the depth value distribution information, and predicts a partition structure of the current CU according to whether the current CU is formed of a single object.
  • LCU current largest coding unit
  • FIG. 1 is an exemplary diagram of a general image and a depth information map of a general image.
  • FIG. 2 is an exemplary view of a Kinect input device.
  • 5 shows a Google Tango smartphone.
  • FIG. 6 is a diagram for explaining an HEVC encoding apparatus.
  • FIG. 7 is a diagram for describing an example of image encoding to which an HEVC encoder is applied in a smart phone.
  • FIG. 8 is a diagram for explaining an example of HEVC including a depth image in a smart phone.
  • FIG. 10 shows an example of determining a CU partition structure in LCU units.
  • 11 is a diagram for describing an example of dividing an image into a plurality of prediction units.
  • FIG. 12 is a diagram illustrating an example of a general image.
  • FIG. 13 is a diagram illustrating an example of a depth information map for the general image of FIG. 12.
  • FIG. 14 illustrates an image encoding method according to an embodiment of the present invention.
  • FIG. 16 illustrates a video encoding method according to another embodiment of the present invention.
  • 17 is a flowchart illustrating a method of determining an LCU unit optimal CU partition structure according to an embodiment of the present invention.
  • FIG. 18 is a flowchart illustrating a CU partition early termination process according to an embodiment of the present invention.
  • 19 is a diagram illustrating example depth value distributions of a CU.
  • 20 is a flowchart for explaining another example of a CU partitioning early termination process according to an embodiment of the present invention.
  • 21 is a diagram for describing various examples of object configuration of a CU.
  • 22 and 23 are diagrams for describing image encoding methods according to an embodiment of the present invention.
  • 24 is a diagram for describing a process of simplifying divisional structure determination according to an embodiment of the present invention.
  • FIG. 25 is a diagram for describing another example of the process of simplifying partition structure determination, according to an embodiment of the present invention.
  • FIG. 26 is a diagram illustrating a configuration of an image encoding apparatus according to an embodiment of the present invention.
  • 1 is an exemplary diagram of a general image and a depth information map of a general image.
  • 2 is an exemplary view of a Kinect input device.
  • FIG. 1A illustrates an image actually captured by a camera
  • FIG. 1B illustrates a depth image of a real image, that is, a depth information image (or a depth information map).
  • Depth information refers to information representing a distance between a camera and an actual object.
  • This depth information image is mainly used to generate 3D virtual viewpoint image.
  • related research is a joint standardization group of ISO / IEC's Moving Picture Experts Group (MPEG) and ITU-T's Video Coding Experts Group (VCEG). Three-dimensional video standardization is currently underway at The Joint Collaborative Team on 3D Video Coding Extension Development (JCT-3V).
  • 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 normal images and their depth information images.
  • Kinect In November 2010, Microsoft released the Kinect sensor as a new input device for the XBOX-360 game device, which recognizes human behavior and connects it to a computer system. It also includes a 3D Depth sensor. In addition, Kinect can generate RGB images and up to 640x480 depth maps and provide them to connected computers as an imaging device. In addition, in 2014, Intel released a 720p CREATIVE SENZ3D webcam with 320x240 Depth sensor for notebooks, Apple released iSense as a 3D scanner for iPad with RGB camera and Depth sensor, and Google released Tango Smart with Depth sensor. Announced the phone.
  • FIG. 3 a CREATIVE SENZ3D webcam is shown, FIG. 3 (A) shows a SENZ3D webcam product, and (B) shows a SENZ3D webcam prototype.
  • FIG. 4 shows an iSense 3D scanner device
  • FIG. 5 shows a Google Tango smartphone.
  • Kinect Kinect
  • iSense 3D scanners imaging devices such as the Intel SENZ3D webcam
  • Google Tango smartphone have enabled the popularization of a wide range of applications such as expensive two- and three-dimensional games or video services.
  • Video devices with information cameras or sensors are showing popularity.
  • the future video system is not only a service for 2D general video, but also a Depth camera combined with a general video camera to provide input assistance in a form or handheld system that basically provides 2D and 3D application video services. It is expected to develop in the form of a device.
  • a video system that basically combines a normal camera and a depth camera is a new method of using depth information in a two-dimensional video codec as well as using depth information in a three-dimensional video codec.
  • encoding of a general image may be encoded using an existing video codec as it is.
  • an existing video codec MPEG-1, MPEG-2, MPEG-4, H.261, H.262, H.263, H.264 / AVC, MVC, SVC, HEVC, SHVC, 3D-AVC , 3D-HEVC, VC-1, VC-2, VC-3, etc., and can be encoded in various other codecs.
  • FIG. 6 is a diagram for explaining an HEVC encoding apparatus.
  • HEVC high efficiency video coding
  • FIG. 6 An example of an encoding structure diagram of HEVC is illustrated in FIG. 6. As shown in FIG. 6, the HEVC includes various new algorithms such as coding units and structures, inter prediction, intra prediction, interpolation, filtering, and transform methods.
  • 6 is a block diagram illustrating an example of a configuration of an image encoding apparatus, and illustrates a configuration of an encoding apparatus according to an HEVC codec.
  • a sample adaptive offset may be provided between the filter unit and the reference image buffer of FIG. 6.
  • SAO may add an appropriate offset value to pixel values to compensate for coding errors.
  • the quantized coefficients are inversely quantized by the inverse quantizer and inversely transformed by the inverse transformer.
  • the inverse quantized and inverse transformed coefficients are added to the prediction block by the adder 175 and a reconstruction block is generated.
  • the reconstructed block that has passed through the filter part is stored in the reference picture buffer.
  • FIG. 7 is a diagram for describing an example of image encoding to which an HEVC encoder is applied in a smart phone.
  • 8 is a diagram for explaining an example of HEVC including a depth image in a smart phone.
  • a general form of a smartphone to which an HEVC encoder is applied may be a form in which an image photographed through a smartphone is encoded using an HEVC encoder, and a service is provided with the encoded image.
  • a normal image and a depth image are independently produced as shown in FIG. 8, and optimization is performed by using correlation with the general image using depth information.
  • a more improved coded image can be obtained through complexity reduction.
  • Patent Document 1 discloses a configuration of merging blocks by checking information on an object of a current block from a depth map, but how to code using depth information. There is no indication as to whether the unit is divided and encoded.
  • Korean Patent Publication No. 2012-0137305 and Korean Patent Publication No. 2014-0048784, which are Patent Documents 2 and 2 do not disclose contents using depth information or predict a partition structure of a CU. It is not clearly presented.
  • encoding is performed by dividing an image into units of a largest coding unit (LCU), which is a basic unit of a coding unit (CU).
  • LCU largest coding unit
  • CU coding unit
  • the CU plays a role similar to that of a macro block (MB: MB), which is a basic block in the existing video codec H.264 / AVC, but unlike the MB having a fixed size of 16x16, the CU is variable. You can set the size.
  • the LCU divided for encoding may be divided into several CUs having a size smaller than that of the LCU for efficient encoding of an image.
  • a 64 ⁇ 64 LCU may be divided into a plurality of CUs in various ways.
  • FIG. 9A illustrates an example of dividing a 64x64 LCU having a partition depth value of 0 into 32x32 CUs having a partition depth of 1.
  • FIG. 9B shows an example of dividing one of the 32x32 CUs by the division depth 2
  • (C) shows an example of dividing two of the 32x32 CUs by the dividing depth 2.
  • 9D illustrates an example including CUs divided by division depth 3.
  • partition candidates of an LCU or CU may exist in various ways.
  • the LCU splitting structure is split information of a coding unit. After generating various LCU partition structures and storing them in the LCU partition structure candidate as described above, one of the LCU partition structure candidates is selected as the optimal LCU partition structure in LCU units in the step of determining an optimal LCU partition structure. .
  • encoding is performed based on an LCU partitioning structure that is adaptive to the characteristics of an image in units of LCUs, and thus, encoding may be efficiently performed in terms of encoding efficiency and image quality.
  • FIG. 10 shows an example of determining a CU partition structure in LCU units.
  • a splitting method of coding units in an LCU may be determined differently according to characteristics of an image. That is, in order to determine the optimal LCU partitioning structure, the partitioning structure in various cases can be encoded.
  • the prediction mode Intra, Inter mode, etc.
  • a method of determining a prediction mode of a corresponding coding unit may be used according to the amount of bits to be encoded and the image quality.
  • each 64x64 size coding unit is divided into 4 pieces to encode each 32x32 size.
  • encoding may be performed recursively.
  • each of the four coding units having a size of 32x32 may be independently selected as a prediction mode.
  • encoding is performed by dividing into four 16x16 coding units. After coding is performed by dividing the coding unit in a recursive manner, the partition structure of the coding unit that is most efficient in terms of bit quantity and quality is determined.
  • 11 is a diagram for describing an example of dividing an image into a plurality of prediction units.
  • the basic structure of a CU may be represented by 2N ⁇ 2N of square size.
  • Prediction units are shown as prediction structures that are split in a CU.
  • reference numeral 1110 denotes an example of symmetric motion partitioning (SMP) with a symmetric partition structure
  • reference numeral 1120 denotes an example of 2NxN and Nx2N structures with a symmetric partition structure of up, down, left, and right.
  • SMP symmetric motion partitioning
  • Reference numeral 1130 denotes an example of 2NxnU, 2NxnD, nLx2N, nRx2N as an example of Asymmetric Motion Partitioning (AMP) with an asymmetric partition structure.
  • n is an integer
  • U, D, L, and R may be integers or rational numbers, respectively.
  • a PU is a structure that is determined for more efficient encoding when performing encoding in intra or inter mode on a CU basis. This is to divide each PU unit into CU units and to predict and encode each PU independently when the prediction cannot be performed in CU unit encoding.
  • the prediction block may be determined as a PU partition structure having a block closest to the current block by predicting the current block to be predicted using all the PU partition structures shown in FIG. 11.
  • the partition structure determination and the PU partition structure determination of FIGS. 9 to 11 do not consider object information for neighboring blocks.
  • object information in the image must be extracted through two-dimensional image analysis, and there is no method of using object information in the existing two-dimensional video encoding method.
  • the partition structure determination method is not equipped with any encoding method using object information.
  • the object information can be considered by using the depth camera, in the partition structure determination method, the correlation according to the object configuration information of the CU can be known. If the partition structure can be determined by efficient prediction, the coding complexity is effectively reduced.
  • the coding complexity may be efficiently reduced when the effective partition structure is predicted for the corresponding region by determining the object information or the configuration of the object region of the CU.
  • FIG. 12 is a diagram illustrating an example of a general image.
  • FIG. 13 is a diagram illustrating an example of a depth information map for the general image of FIG. 12.
  • a portion corresponding to an object boundary region has a high probability of having a complicated CU partitioning structure, and has a relatively simple partitioning structure where it is determined to be inside an object or a background region.
  • a high probability of determining the current encoding region as a complex partition structure composed of a plurality of CUs or a simple partition structure composed of a few CUs is determined.
  • Can predict This can reduce the amount of computation by limiting the determination of partition structures with low probability.
  • the method proposed in the present invention may predict and encode a partition structure having a high probability using depth information in determining a partition structure.
  • the two-dimensional video codec according to the prior art is designed with algorithms that do not reflect the use of depth information at all.
  • the depth information can be used to encode the 2D image, and the algorithm is developed based on the depth information. May be considered.
  • the basic principle of the present invention is to use the depth information in the motion prediction method to utilize the depth information obtained from the depth information camera to encode the actual image for efficient encoding in the 2D video codec.
  • the coding complexity of the general image may be greatly reduced.
  • the objects may mean a background object and include a background image.
  • the block-based encoding codec several objects may exist in a block, and different encoding methods may be applied to each object based on the depth information image. Can be.
  • FIG. 14 illustrates an image encoding method according to an embodiment of the present invention.
  • the image encoding apparatus extracts depth value distribution information of a current largest coding unit (LCU) from a depth image.
  • LCU current largest coding unit
  • the depth value distribution information may be, for example, a depth information map of the CU as shown in FIG. 19A or B, and may be represented by a normalized value.
  • the normalized depth value of M1 may be 9
  • the normalized depth value of M2 may be 7
  • the normalized depth value of M3 may be 1.
  • the image encoding apparatus predicts the partition structure candidates of the LCU based on depth value distribution information.
  • step 1420 of predicting partition structure candidates of the LCU a process of checking depth value distribution information of a CU included in the current LCU and determining whether the CU is formed of a single object based on the depth value distribution information of the CU, If the CU consists of a single object, it may include the step of terminating the partition structure candidate prediction of the CU.
  • the apparatus for encoding an image determines an optimal segmentation structure among candidate segmentation structures of the LCU based on at least one of coding efficiency and image quality information.
  • the image encoding apparatus determines the object structure of the CU based on depth value distribution information, and omits some of the rate distortion cost calculation based on the object structure prediction of the CU.
  • the optimal partitioning structure can be determined.
  • the image encoding apparatus extracts depth value distribution information of a current largest coding unit (LCU).
  • LCU current largest coding unit
  • the image encoding apparatus predicts an object structure of the CU based on depth value distribution information of the CU included in the LCU.
  • the prediction of the object structure may estimate whether the object structure in the CU is a single object, a structure divided up or down, or a structure divided into left and right from the depth value distribution information of the CU. For example, if the depth value distribution of the CU of FIG. 21 is equal to (C), the object structure is divided into the left and right structures when the same depth value is distributed more than a predetermined number on the left and right sides based on the center of the CU, respectively. Can be predicted. In this case, the preset number may be set according to the accuracy allowed in the system.
  • the center of the CU may be the horizontal axis center when determining the vertical object structure, the vertical axis center when determining the left and right object structure.
  • the object structure may be determined based on the case where the maximum and minimum values of the left and right depth values based on the center of the horizontal axis of the CU are smaller than a specific value.
  • the apparatus for encoding an image omits some of the rate distortion cost calculations based on the object structure prediction of the CU, and determines an optimal partition structure among the partition structure candidates of the LCU.
  • FIG. 16 illustrates a video encoding method according to another embodiment of the present invention.
  • the image encoding apparatus extracts depth value distribution information of a current coding unit (CU) from a depth image.
  • CU current coding unit
  • step 1610 of predicting the partition structure of the current CU includes determining that the current CU is not partitioned when the current CU is composed of a single object.
  • the coding complexity can be reduced by determining a partition structure candidate to no longer partition the CU. have.
  • the apparatus for encoding an image determines whether the current CU includes a single object based on depth value distribution information, and predicts the partition structure of the current CU according to whether the current CU includes a single object.
  • operation 1620 of predicting a partition structure of the current CU when the size of the current CU is greater than or equal to a preset value and the current CU is predicted to be a single object and the encoding mode of the CU is the skip mode, the current CU is partitioned. May include determining not to.
  • step 1620 of predicting the partition structure of the current CU it is estimated that the size of the current CU is smaller than the preset value, the current CU is composed of a single object, and the size of the reference CU of the CU is greater than or equal to the preset value. If the reference CU is encoded in a skip mode, it may include determining not to divide the CU.
  • whether the current CU is formed of a single object may be determined by the four corner depth values of the CU, and various examples of determining whether a single object is based on a depth value distribution will be described in detail with reference to FIGS. 18 through 20. Shall be.
  • 17 is a flowchart illustrating a method of determining an LCU unit optimal CU partition structure according to an embodiment of the present invention.
  • FIG. 17 is a flowchart illustrating a LCU unit division structure determination process illustrated in FIG. 14 in more detail.
  • operation 1410 of FIG. 14 may include operations 1701 and 1703 of FIG. 17.
  • operation 1420 of FIG. 14 may include operations 1705 to 1710, 1750, and 1760 of FIG. 17.
  • the image encoding apparatus starts a CU unit recursion process.
  • the image encoding apparatus extracts LCU information such as depth information and an encoding mode of a reference CU of the current CU, encodes a CU having a current split depth, and selects an optimal CU candidate. Can be stored.
  • the CU of the current division depth may be FIG. 9A.
  • the image encoding apparatus may perform a CU partitioning early termination process using depth information.
  • the early CU partitioning process may be the partition structure candidate prediction process illustrated in FIGS. 14, 18, and 20.
  • the CU may be divided into four CUs of which the partition depth is increased by one, as shown in FIG. 9B.
  • the image encoding apparatus considers coding efficiency of each partition structure candidate in step 1730. It is possible to determine the optimal CU partition structure in.
  • step 1740 the CU unit recursion process may end.
  • FIG. 18 is a flowchart illustrating a CU partition early termination process according to an embodiment of the present invention.
  • operation 1801 of extracting depth information of the current LCU may be the same operation as operation 1410 of FIG. 14 or operation 1701 of FIG. 17.
  • a current coding unit (CU) is selected, and whether the size of the current CU is 32x32 or more, for example, whether the size of the current CU is 64x64 or 32x32.
  • step 1811 is performed; otherwise, step 1820 is performed.
  • step 1811 it is determined whether the current CU consists of a single object and the encoding mode of the current CU is a skip mode. If the current CU is composed of a single object and the encoding mode of the CU is the skip mode, in operation 1813, the information indicating that the current CU is not split may be stored and the execution of the CU partitioning early termination process may be terminated.
  • the image encoding apparatus determines whether the current LCU and the current CU are configured as a single object. If it is determined that the current LCU or the current CU does not consist of a single object, in step 1830, the information indicating the partition of the current CU may be stored and the execution of the CU partition early termination process may be terminated.
  • the depth information of the reference CU is extracted in operation 1840 and operation 1841 is performed.
  • the image encoding apparatus determines whether the reference CU has a size of 32x32 or more (eg, when the size of the reference CU is 64x64 or 32x32) and the encoding mode of the reference CU is a skip mode.
  • step 1843 the information indicating that the current CU is not split may be stored and the execution of the CU partitioning early termination process may be terminated.
  • the current CU when the size of the current CU is smaller than 32x32, it is determined that the current CU is composed of a single object through depth information, and the reference LCU is also determined to be composed of a single object through depth information. If the size of the CU (located in L0) is 64x64 or 32x32 and is encoded in Skip mode, the current CU may not be split any more by predicting that the CU is largely configured, that is, a simple partitioned structure. .
  • step 1830 is performed.
  • the skip mode may be an encoding mode in which the difference signal (or difference image) with respect to the prediction image or the reference image of the original image is not encoded or transmitted to the decoding end.
  • whether the CU is composed of a single object may be determined that the CU is composed of a single object when a difference between the maximum value and the minimum value included in the depth value distribution information of the CU is less than or equal to a preset value.
  • the predicting partition structure candidates of the LCU may be included in the size of the current CU and the depth value distribution information of the CU. Determining whether to divide the CU in consideration of at least one of the difference between the maximum value and the minimum value and whether the encoding mode of the CU is a skip mode.
  • 19 is a diagram illustrating example depth value distributions of a CU.
  • a depth value of four corner positions of the CU or the block may be used.
  • the apparatus for encoding an image may determine that the CU depth value distribution as shown in (A) is selected without a large change in the depth value.
  • the image encoding apparatus may determine that the CU depth value distribution as shown in FIG. 19B does not consist of a single object because the change in the depth value is large.
  • the image encoding apparatus may determine that the CU consists of a single object when the difference between the maximum value and the minimum value among the four corner depth values of the CU is less than or equal to a preset reference value.
  • the normalized depth value of M1 may be 9, the normalized depth value of M2 and M3 may be 7, and the normalized depth value of M4 may be 7.
  • FIG. 19A the normalized depth value of M1 may be 9, the normalized depth value of M2 and M3 may be 7, and the normalized depth value of M4 may be 7.
  • the normalized depth value of M1 may be 9, the normalized depth value of M2 and M4 may be 7, and the normalized depth value of M3 may be 1.
  • FIG. 19A may be determined to be made of a single object, and FIG. 19B may be determined not to be made of a single object.
  • 20 is a flowchart for explaining another example of a CU partitioning early termination process according to an embodiment of the present invention.
  • the image encoding apparatus determines whether the current CU is 32x32 or more. If the condition of step 2010 is satisfied, step 2020 is performed, otherwise step 2050 is performed.
  • the image encoding apparatus determines whether the size of the CU is greater than or equal to a long set value, a difference between a maximum value and a minimum value among four corner depth values of the CU is less than or equal to a preset reference value, and the CU is encoded in a skip mode.
  • the preset reference value may be five.
  • step 2020 If the condition of step 2020 is satisfied, information indicating that the current CU is not split may be stored, and the early CU partitioning process may be terminated.
  • the predicting the partition structure candidates of the LCU may include: the size of the CU is greater than or equal to a long set value and a difference between a maximum value and a minimum value among four corner depth values of the CU is less than or equal to a preset reference value and the CU skips If the mode is encoded, the method may include determining not to divide the CU.
  • step 2020 If the condition of step 2020 is not satisfied, information indicating the partitioning of the CU may be stored and the CU partitioning early termination process may be terminated.
  • the image encoding apparatus determines whether the size of the CU is smaller than the set length and whether the four corner depth values of the LCU and the CU are the same.
  • step 2050 If the condition of step 2050 is satisfied, step 2060 is performed, otherwise step 2080 is performed.
  • the image encoding apparatus extracts depth information of the reference CU, and determines whether the size of the reference CU is 32x32 or more and whether the encoding mode of the reference CU is a skip mode.
  • step 2090 is performed, otherwise step 2080 is performed.
  • the predicting the partition structure candidates of the LCU may include: the size of the CU is smaller than a length set value, the four corner depth values of each of the LCU and the CU are the same value, and If the size is greater than or equal to the preset value and the reference CU is encoded in a skip mode, the method may include determining not to divide the CU.
  • 21 is a diagram for describing various examples of object configuration of a CU.
  • RD-Cost rate distortion
  • the RD-Cost operation may not be performed on 2NxnU, 2NxnD, nLx2N, and nRx2N.
  • the Asymmetric Motion Partition (AMP) of the CU is determined.
  • the rate distortion operation can be omitted.
  • the optimal partition structure prediction step or the partition structure decision simplification process when the object structure of the CU is predicted to be divided into upper and lower structures, it is applied to the asymmetric motion partition (AMP) of the CU.
  • AMP asymmetric motion partition
  • operations related to left and right division may be omitted.
  • the RD-Cost operation is performed on 2NxnU and 2NxnD. May not be performed.
  • an asymmetric motion partition (AMP) of the CU is included.
  • rate distortion operations operations related to vertical division may be omitted.
  • 22 and 23 are diagrams for describing image encoding methods according to an embodiment of the present invention.
  • steps 2201, 2203, and 2205 may be identical to steps 1701, 1703, and 1705 of FIG. 17, respectively.
  • steps 2220 to 2270 may be identical to steps 1709 to 1760 of FIG. 17.
  • step 2210 which is a step of performing a segmentation structure determination simplified process using depth information, may include the process illustrated in FIG. 24 or the process illustrated in FIG. 25.
  • the CU partitioning early termination process using the depth information may be performed in step 2320. Able to know.
  • the image encoding apparatus may store only operations that are omitted according to the object structure of the CU, and then may perform operations 2320 to 2260.
  • the image encoding apparatus S350
  • the optimal CU partitioning structure among the CU partitioning candidates may be determined in consideration of the omitted operation.
  • 24 is a diagram for describing a process of simplifying divisional structure determination according to an embodiment of the present invention.
  • the apparatus for encoding an image may determine that the current CU includes a single object. If the condition of step 2410 is satisfied, step 2420 may be performed, otherwise step 2430 may be performed.
  • step 2410 If the condition of step 2410 is satisfied, it is determined in step 2420 that the AMP RD cost operation is skipped, and all of the partition structures may be determined.
  • the image encoding apparatus may determine whether the current CU object configuration is divided into upper and lower sides, and if the condition is satisfied, in operation 2440, the image encoding apparatus may determine to skip the nLx2N and nRx2N rate distortion cost operations.
  • the image encoding apparatus may determine whether the CU object configuration is divided into left and right, and when it is satisfied, the image encoding apparatus may determine to skip the 2NxnU and 2NxnD rate distortion cost operations in operation 2460.
  • FIG. 25 is a diagram for describing another example of the process of simplifying partition structure determination, according to an embodiment of the present invention.
  • 25 illustrates an example of predicting an object configuration of a CU through a distribution of depth values of the CU.
  • the image encoding apparatus determines that the CU is composed of a single object, and then performs operation 2520 that is the same as operation 2420.
  • step 2530 the image encoding apparatus does not have the same depth values of the four corners of the CU, but if the depth values of the upper two corners of the CU are the same and the depth values of the lower two corners of the CU are the same, the object configuration of the CU is divided into upper and lower sides.
  • operation 2540 the same operation as in operation 2440 is performed.
  • step 2550 the image encoding apparatus does not satisfy the conditions of steps 2510 and 2530, but when the depth values of the left corners of the CU are the same and the depth values of the right two corners are the same, it is determined that the object configuration of the CU is divided into left and right. Step 2560 may be performed.
  • FIG. 26 is a diagram illustrating a configuration of an image encoding apparatus according to an embodiment of the present invention.
  • the image encoding apparatus shown in FIG. 26 may perform the image encoding method according to the embodiment of the present invention.
  • the image encoding apparatus 2600 may include a depth value extractor 2610, a partition structure predictor 2620, and an optimal partition structure determiner 2630. Also, the image encoding apparatus 2600 may further include an object structure predictor 2640.
  • the depth value extractor 2610 extracts depth value distribution information of a current largest coding unit (LCU) from a depth image.
  • LCU current largest coding unit
  • the partition structure prediction unit 2620 predicts partition structure candidates of the LCU based on depth value distribution information.
  • the prediction of the partition structure candidates of the LCU may be performed at step 1710 of performing a CU partitioning early termination process using the depth information of FIG. 17.
  • the partition structure prediction unit 2620 determines whether the current CU is a single object based on depth value distribution information, and predicts the partition structure of the current CU according to whether the current CU is a single object. .
  • the optimal partition structure determiner 2630 determines an optimal partition structure among the partition structure candidates of the LCU based on at least one of coding efficiency and image quality information.
  • the object structure predictor 2640 predicts an object structure of the CU based on depth value distribution information of the CU included in the LCU. At this time, the optimal partition structure determination unit 2630 omits some of the rate distortion cost calculations based on the object structure prediction of the CU, and determines an optimal partition structure among the partition structure candidates of the LCU.
  • Table 1 shows experimental results of applying the embodiment shown in FIG. 25 to HEVC.
  • the target range or application range may vary depending on the block size or the partition depth of the CU.
  • a variable (that is, size or depth information) for determining an application range may be set so that the encoder and the decoder use a predetermined value, or may cause the encoder to use a predetermined value according to a profile or level, and the encoder In the bitstream, the decoder may obtain and use this value from the bitstream.
  • the application range is changed according to the CU partitioning depth, it is as shown in [Table 2].
  • the method A may be a method applied only to a depth greater than or equal to a preset depth value
  • the method B may be a method applied only to a depth less than or equal to a preset depth value
  • the method C may be a method applied only to a preset depth value.
  • [Table 2] shows an example of an application range determination method to apply the methods of the present invention when a given CU partition depth is two. (O: Applies to that depth, X: Does not apply to that depth.)
  • the methods of the present invention are not applied to all depths, they may be indicated in the bitstream using an arbitrary flag, and a value greater than one of the maximum value of the CU depth is signaled as a CU depth value indicating the coverage. It can also be expressed by.
  • the above-described methods may be differently applied to the chrominance block according to the size of the luminance block, and may be differently applied to the luminance signal image and the chrominance image.
  • Table 3 shows an example in which the methods are applied differently according to the size of the luminance block and the color difference block.
  • the size of the luminance block is 8 (8x8, 8x4, 2x8, etc.), and the size of the color difference block is 4 (4x4, 4x2, 2x4).
  • the merge list construction method according to an embodiment of the present invention can be applied to a luminance signal and a color difference signal.
  • the size of the luminance block is 16 (16x16, 8x16, 4x16, etc.), and the size of the color difference block is 4 (4x4, 4x2, 2x4)
  • the merge list construction method according to the embodiment of the present invention may be applied to the luminance signal but not to the color difference signal.
  • the merge list construction method according to an embodiment of the present invention may be applied only to the luminance signal and not to the color difference signal.
  • the merge list construction method according to the embodiment of the present invention may be applied only to the chrominance signal and not to the luminance signal.
  • the apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components.
  • the devices and components described in the embodiments may be, for example, processors, controllers, arithmetic logic units (ALUs), digital signal processors, microcomputers, field programmable arrays (FPAs), It may be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system.
  • the processing device may also access, store, manipulate, process, and generate data in response to the execution of the software.
  • OS operating system
  • the processing device may also access, store, manipulate, process, and generate data in response to the execution of the software.
  • processing device includes a plurality of processing elements and / or a plurality of types of processing elements. It can be seen that it may include.
  • the processing device may include a plurality of processors or one processor and one controller.
  • other processing configurations are possible, such as parallel processors.
  • the software may include a computer program, code, instructions, or a combination of one or more of the above, and configure the processing device to operate as desired, or process it independently or collectively. You can command the device.
  • Software and / or data may be any type of machine, component, physical device, virtual equipment, computer storage medium or device in order to be interpreted by or to provide instructions or data to the processing device. Or may be permanently or temporarily embodied in a signal wave to be transmitted.
  • the software may be distributed over networked computer systems so that they may be stored or executed in a distributed manner.
  • Software and data may be stored on one or more computer readable recording media.
  • the method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium.
  • the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • the program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks.
  • Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.
  • the hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

Landscapes

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

Abstract

깊이 정보를 이용한 비디오 부호화 방법 및 장치를 개시한다. 일 실시예에 따른 깊이 정보를 이용한 영상 부호화 방법은, 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 단계; 상기 깊이 값 분포 정보에 기초하여 상기 LCU의 분할 구조 후보들을 예측하는 단계; 및 코딩 효율 및 화질 정보 중 적어도 어느 하나에 기초하여 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 단계를 포함한다.

Description

깊이 정보를 이용한 비디오 부호화 방법 및 장치
본 발명은 깊이 정보를 이용한 비디오 부호화에 관한 것으로, 깊이 정보를 이용하여 객체 정보를 유도하고 영상을 효율적으로 부호화하는 방법 및 장치에 관한 것이다.
깊이 정보 영상은 3차원 비디오 부호화에서 널리 활용되고 있으며, Xbox 게임기에서의 키넥트(Kinect) 카메라, 인텔 SENZ3D 웹캠, IPad에서의 iSense 3D 스캐너, 구글 Tango 스마트폰 등과 같은 새로운 입력장치들에 구비된 깊이 정보 카메라는 여러 다양한 3D 및 2D 응용 어플리케이션에서 활용될 수 있다.
한편, 깊이 정보 카메라의 대중화 및 보급으로 2D/3D 응용 어플리케이션은 더욱 다양한 2D/3D 응용 서비스를 통해 대중화가 진행 중에 있으며, 그에 따라 향후 멀티미디어 카메라 시스템에 깊이 정보 카메라가 포함되어 다양한 정보의 활용이 가능하다.
본 발명의 목적은 2차원 비디오 부호화시 깊이 정보를 이용함으로써 성능 열화가 없고 효율적인 부호화가 가능한 영상 부호화 방법 및 장치를 제공하는 것이다.
일 실시예에 따른 깊이 정보를 이용한 영상 부호화 방법은, 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 단계; 상기 깊이 값 분포 정보에 기초하여 상기 LCU의 분할 구조 후보들을 예측하는 단계; 및 코딩 효율 및 화질 정보 중 적어도 어느 하나에 기초하여 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 단계를 포함한다.
다른 일 실시예에 따른 깊이 정보를 이용한 영상 부호화 방법은, 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 단계; 상기 LCU 에 포함되는 CU의 깊이 값 분포 정보에 기초하여 상기 CU의 객체 구조를 예측하는 단계; 및 상기 CU의 객체 구조 예측에 기초하여 율 왜곡 비용 연산 중 일부를 생략하고 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 단계를 포함한다.
또 다른 일 실시예에 따른 깊이 정보를 이용한 영상 부호화 방법은, 깊이 영상으로부터 현재 코딩 유닛(CU: Coding Unit)의 깊이 값 분포 정보를 추출하는 단계; 및 상기 깊이 값 분포 정보에 기초하여 상기 현재 CU가 단일 객체로 이루어지는 지를 확인하고, 상기 현재 CU가 단일 객체로 이루어지는지의 여부에 따라 상기 현재 CU의 분할 구조를 예측하는 단계를 포함한다.
일 실시예에 따른 깊이 정보를 이용한 영상 부호화 장치는, 깊이 영상으로부터 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 깊이값 추출부; 상기 깊이 값 분포 정보에 기초하여 상기 LCU의 분할 구조 후보들을 예측하는 분할구조 예측부; 및 코딩 효율 및 화질 정보 중 적어도 어느 하나에 기초하여 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 최적 분할구조 결정부를 포함한다.
다른 일 실시예에 따른 깊이 정보를 이용한 영상 부호화 장치는, 깊이 영상으로부터 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 깊이값 추출부; 상기 LCU 에 포함되는 CU의 깊이 값 분포 정보에 기초하여 상기 CU의 객체 구조를 예측하는 객체구조 예측부; 및 상기 CU의 객체 구조 예측에 기초하여 율 왜곡 비용 연산 중 일부를 생략하고 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 최적 분할구조 결정부를 포함한다.
또 다른 일 실시예에 따른 깊이 정보를 이용한 영상 부호화 장치는, 깊이 영상으로부터 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 깊이값 추출부; 및 상기 깊이 값 분포 정보에 기초하여 상기 현재 CU가 단일 객체로 이루어지는 지를 확인하고, 상기 현재 CU가 단일 객체로 이루어지는지의 여부에 따라 상기 현재 CU의 분할 구조를 예측하는 분할구조 예측부를 포함한다.
본 발명의 실시예에 따르면, 깊이 정보 카메라에서 획득한 깊이 정보 영상을 이용해 2차원 일반 영상을 부호화함으로써, 2D 영상에 대한 효율적인 부호화를 수행할 수 있다.
도 1은 일반 영상 및 일반 영상의 깊이 정보 맵에 대한 예시도이다.
도 2는 키넥트 입력 장치의 예시도이다.
도 3은 웹캠 제품을 나타낸다.
도 4는 iSense 3D 스캐너 장치를 나타낸다.
도 5는 구글 Tango 스마트폰을 나타낸다.
도 6은 HEVC 부호화 장치를 설명하기 위한 도면이다.
도 7은 스마트 폰에서 HEVC 인코더가 적용된 영상 부호화의 예를 설명하기 위한 도면이다.
도 8은 스마트 폰에서 깊이 영상이 포함된 HEVC의 예를 설명하기 위한 도면이다.
도 9는 영상의 복수의 유닛들로 분할하는 예들을 나타낸다.
도 10은 LCU 단위로 CU 분할 구조를 결정하는 예를 나타낸다.
도 11은 영상을 복수의 예측 유닛들로 분할하는 예를 설명하기 위한 도면이다.
도 12는 일반 영상의 예를 나타내는 도면이다.
도 13은 도 12의 일반 영상에 대한 깊이 정보 맵의 예를 나타내는 도면이다.
도 14는 본 발명의 일 실시예에 따른 영상 부호화 방법을 나타낸다.
도 15는 본 발명의 다른 일 실시예에 따른 영상 부호화 방법을 나타낸다.
도 16는 본 발명의 또 다른 일 실시예에 따른 영상 부호화 방법을 나타낸다.
도 17은 본 발명의 실시예에 따른 LCU 단위 최적 CU 분할 구조 결정 방법을 설명하기 위한 흐름도이다.
도 18은 본 발명의 일 실시예에 따른 CU 분할 조기 종료 과정을 설명하기 위한 흐름도이다.
도 19는 CU의 깊이 값 분포 예들을 나타내는 도면이다.
도 20은 본 발명의 일 실시예에 따른 CU 분할 조기 종료 과정의 다른 예를 설명하기 위한 흐름도이다.
도 21은 CU의 객체 구성의 다양한 예를 설명하기 위한 도면이다.
도 22 및 도 23은 본 발명의 실시예에 따른 영상 부호화 방법들을 설명하기 위한 도면이다.
도 24는 본 발명의 일 실시예에 따른 분할 구조 결정 간소화 과정을 설명하기 위한 도면이다.
도 25는 본 발명의 일 실시예에 따른 분할 구조 결정 간소화 과정의 다른 예를 설명하기 위한 도면이다.
도 26은 본 발명의 일 실시예에 따른 영상 부호화 장치의 구성을 설명하기 위한 도면이다.
이하의 내용은 단지 본 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 본 발명의 원리를 구현하고 본 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시예들은 원칙적으로, 본 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.
예를 들어, 본 명세서의 블럭도는 본 발명의 원리를 구체화하는 예시적인 회로의 개념적인 관점을 나타내는 것으로 이해되어야 한다. 이와 유사하게, 모든 흐름도, 상태 변환도, 의사 코드 등은 컴퓨터가 판독 가능한 매체에 실질적으로 나타낼 수 있고 컴퓨터 또는 프로세서가 명백히 도시되었는지 여부를 불문하고 컴퓨터 또는 프로세서에 의해 수행되는 다양한 프로세스를 나타내는 것으로 이해되어야 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 실시예들을 상세히 설명하기로 한다.
도 1은 일반 영상 및 일반 영상의 깊이 정보 맵에 대한 예시도이다. 도 2는 키넥트 입력 장치의 예시도이다.
도 1을 참조하면, 도 1의 (A)는 카메라를 통해 실제 촬영한 영상이고, (B)는 실제 영상에 대한 깊이 영상, 즉 깊이 정보 영상(또는 깊이 정보 맵)을 나타낸다. 깊이 정보(Depth Information)는 카메라와 실제 사물간의 거리를 나타내는 정보를 의미한다.
이러한 깊이 정보 영상은 주로 3차원 가상 시점 영상을 생성하는데 활용되며, 실제 이와 관련된 연구로 ISO/IEC의 MPEG(Moving Picture Experts Group)과 ITU-T의 VCEG(Video Coding Experts Group)의 공동 표준화 그룹인 JCT-3V(The Joint Collaborative Team on 3D Video Coding Extension Development)에서 3차원 비디오 표준화가 현재 진행 중에 있다.
3차원 비디오 표준은 일반 영상과 그것의 깊이 정보 영상을 이용하여 스테레오스코픽 영상뿐만 아니라 오토스테레오스코픽 영상의 재생등을 지원할 수 있는 진보된 데이터 형식과 그에 관련된 기술에 대한 표준을 포함하고 있다.
2010년 11월 마이크로소프트는 XBOX-360 게임 디바이스의 새로운 입력장치로 키넥트(Kinect) 센서를 출시하였는데, 이 장치는 사람의 동작을 인지하여 컴퓨터 시스템에 연결하는 장치로 도 2에서 보듯 RGB 카메라뿐 아니라 3D Depth 센서를 포함하여 이루어져 있다. 또한, 키넥트는 영상 장치로도 RGB 영상 및 최대 640x480 깊이 정보 맵(Depth Map)을 생성해 연결된 컴퓨터에 제공할 수 있다. 이외에도 2014년 인텔은 노트북용으로 320x240 Depth 센서가 장착된 720p CREATIVE SENZ3D 웹캠을 발표하였고, 애플은 RGB 카메라와 Depth 센서를 이용한 iPad 용 3D 스캐너로 iSense를 출시하였고, 구글은 Depth 센서가 장착된 Tango 스마트폰을 발표하였다.
도 3은 웹캠 제품을 나타낸다.
도 3을 참조하면, CREATIVE SENZ3D 웹캠을 나타내고 있으며, 도 3의 (A)는 SENZ3D 웹캠제품을 나타내고, (B)는 SENZ3D 웹캠 프로토타입을 나타낸다.
도 4는 iSense 3D 스캐너 장치를 나타내고, 도 5는 구글 Tango 스마트폰을 나타낸다.
도 4의 (A)는 iSense 제품을 나타내고, (B)는 iSense를 통한 스캐닝 처리의 예를 나타낸다. 도 5의 (A)는 구글 Tango 스마트폰 제품을 나타내고, (B)는 구글 Tango 스마트폰 프로토타입을 나타낸다.
키넥트, iSense 3D 스캐너, 인텔 SENZ3D 웹캠과 같은 영상 장비 및 구글 Tango 스마트폰의 출현은 고가의 2차원 및 3차원 게임이나 영상 서비스와 같은 다양한 응용 어플리케이션을 대중적으로 즐길 수 있게 되는 계기가 되었으며, 깊이 정보 카메라 또는 센서가 부착된 비디오 장치가 대중화가 되고 있음을 보여주고 있다.
이처럼 앞으로의 비디오 시스템이 2차원 일반 영상을 위한 서비스뿐 만 아니라 일반 영상 카메라에 Depth 카메라가 결합되어 2차원과 3차원 응용 영상 서비스가 기본적으로 제공되는 형태 또는 핸드헬드(handheld) 시스템에서의 입력 보조장치의 형태로 발전할 것으로 예상된다.
일반 카메라와 Depth 카메라가 기본적으로 결합된 비디오 시스템은 3차원 비디오 코덱에서 깊이 정보를 이용하는 것뿐 아니라, 2차원 비디오 코덱에서도 깊이 정보를 이용하는 새로운 방법이라 할 수 있겠다.
또한, 깊이 정보 카메라가 포함된 카메라 시스템에서 일반 영상의 부호화는 기존 비디오 코덱을 그대로 사용하여 부호화될 수 있다. 여기서 기존의 비디오 코덱의 일예로, MPEG-1, MPEG-2, MPEG-4, H.261, H.262, H.263, H.264/AVC, MVC, SVC, HEVC, SHVC, 3D-AVC, 3D-HEVC, VC-1, VC-2, VC-3 등으로 부호화 될 수 있으며, 그외 다양한 코덱으로 부호화될 수 있다.
도 6은 HEVC 부호화 장치를 설명하기 위한 도면이다.
실제 영상과 그것의 깊이 정보 맵을 부호화하는 방법의 일예로, 현재까지 개발된 비디오 부호화 표준 중에서 최고의 부호화 효율을 가지는 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)에서 공동으로 표준화를 완료한 HEVC(High Efficiency Video Coding)를 이용하여 부호화를 수행할 수 있다. HEVC의 부호화 구조도의 일 예는 도 6과 같다. 도 6에서와 같이 HEVC에는 부호화 단위 및 구조, 화면 간(Inter) 예측, 화면 내(Intra) 예측, 보간(Interpolation), 필터링(filtering), 변환(Transform) 방법 등 다양한 새로운 알고리즘들을 포함하고 있다. 도 6은 영상 부호화 장치의 구성에 대한 일 예를 블록도로 도시한 것으로, HEVC 코덱에 따른 부호화 장치의 구성을 나타낸 것이다.
이때, 도 6의 필터부와 참조영상 버퍼 사이에는 SAO(Sample Adaptive Offset)이 구비될 수 있다. SAO는 코딩 에러를 보상하기 위해 화소값에 적정 오프셋(offset) 값을 더해줄 수 있다.
HEVC는 인터 예측 부호화, 즉 화면 간 예측 부호화를 수행하므로, 현재 부호화된 영상은 참조 영상으로 사용되기 위해 복호화되어 저장될 필요가 있다. 따라서 양자화된 계수는 역양자화부에서 역양자화되고 역변환부에서 역변환된다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록이 생성된다. 필터부를 거친 복원 블록은 참조 영상 버퍼에 저장된다.
도 7은 스마트 폰에서 HEVC 인코더가 적용된 영상 부호화의 예를 설명하기 위한 도면이다. 도 8은 스마트 폰에서 깊이 영상이 포함된 HEVC의 예를 설명하기 위한 도면이다.
도 7을 참조하면, HEVC 인코더가 적용된 스마트폰에서의 일반적인 형태는, 스마트폰을 통해 촬영된 영상을 HEVC 인코더를 이용해 부호화 하고, 부호화 된 영상을 가지고 서비스를 제공 받는 형태일 수 있다.
하지만 Depth 카메라가 포함된 스마트폰을 통해 영상을 촬영한다면 도 8과 같이 일반 영상(Texture)과 깊이 영상(Depth)이 독립적으로 생산되고, 깊이 정보를 이용하여 일반 영상과의 상관성을 이용하여 최적화를 통한 HEVC 인코더를 통해서 복잡도 감소를 통해 더욱 향상된 부호화 영상을 얻을 수 있다.
종래기술 특허문헌 1인 미국공개특허 제20140085416호는 깊이 맵(Depth map)으로부터 현재 블록의 객체에 대한 정보를 확인하여 블록을 병합(merge)하는 구성을 개시하고 있으나, 깊이 정보를 이용하여 어떻게 코딩 유닛을 분할하여 부호화할 것인가에 대해서는 전혀 개시하지 못하고 있다.
또한, 종래기술 특허문헌 2인 한국공개특허 제2012-0137305호 및 특허문헌 3인 한국공개특허 제2014-0048784호는 깊이 정보를 이용하는 내용을 개시하지 못하거나 CU의 분할 구조를 예측하기 위한 구성을 명확하게 제시하지 못하고 있다.
도 9는 영상의 복수의 유닛들로 분할하는 예들을 나타낸다.
고효율 비디오 코딩 방식은 부호화를 수행할 때 영상을 코딩 유닛(CU: Coding Unit, 이하 'CU')의 기본 단위인 LCU(LCU: Largest Coding Unit) 단위로 나누어 부호화를 수행한다.
여기서, CU는 기존의 비디오 코덱인 H.264/AVC에서의 기본 블록인 매크로블록(MB: Macro Block, 이하 'MB')과 유사한 역할을 하지만, 16x16의 고정 크기를 갖는 MB와 달리 CU는 가변적으로 크기를 정할 수 있다. 또한 부호화를 위해 분할된 LCU는 영상의 효율적인 부호화를 위해 다시 LCU 보다 작은 크기를 갖는 여러 CU로 분할될 수 있다.
도 9를 참조하면, 64x64 크기의 LCU는 다양한 방식으로 복수의 CU들로 분할될 수 있다.
도 9의 (A)는 분할 깊이 값이 0인 64x64 크기의 LCU를 분할 깊이 1인 32x32 크기의 CU들로 분할한 예를 나타낸다.
도 9의 (B)는 32x32 크기의 CU들 중 하나를 분할 깊이 2로 분할한 예를 나타내고, (C)는 32x32 크기의 CU들 중 두개를 분할 깊이 2로 분할한 예를 나타낸다.
도 9의 (D)는 분할깊이 3으로 분할된 CU들을 포함하는 예를 나타낸다.
따라서, LCU 또는 CU의 분할구조 후보들은 다양한 방식으로 존재할 수 있다.
LCU 분할 구조는 부호화 단위의 분할 정보이다. 위와 같이 다양한 LCU 분할 구조를 생성하여 LCU 분할 구조 후보에 저장한 뒤, 최적의 LCU 분할 구조를 결정하는 단계에서 LCU 단위로 LCU 분할 구조 후보 중 하나의 분할 구조를 최적의 LCU 분할 구조로서 선택하게 된다. 이러한 방법을 사용함으로써 LCU 단위로 영상의 특성에 맞게 적응적인 LCU 분할 구조를 기초로 부호화를 수행함으로써 부호화 효율 및 화질 측면에서 효율적인 부호화를 수행할 수 있다는 장점이 있다.
도 10은 LCU 단위로 CU 분할 구조를 결정하는 예를 나타낸다.
HEVC의 인코더에서는 영상의 특성에 따라 LCU 내의 부호화 단위의 분할 방법을 다르게 결정할 수 있다. 즉, 최적의 LCU 분할 구조를 결정하기 위해 다양한 경우의 분할 구조를 부호화할 수 있는데 최적의 LCU 분할 구조를 결정하기 위한 방법으로 각각의 분할 깊이마다 모든 부호화 단위의 예측 모드(Intra, Inter 모드 등)를 사용하여 부호화를 수행한 뒤, 부호화되는 비트량과 화질에 따라 해당 부호화 단위의 예측 모드를 결정하는 방법을 사용할 수 있다.
예를 들어 도 9에서처럼, 깊이 0인 64x64 부호화 단위로 Intra 모드와 Inter 모드 등으로 각각 부호화를 수행한 뒤 최적의 모드를 저장해두고, 64x64 크기의 부호화 단위를 4개로 분할하여 각각의 32x32 크기의 부호화 단위로 Intra 모드와 Inter 모드 등으로 각각 부호화를 재귀적으로 수행할 수 있다. 이 때 분할된 4개의 32x32 크기의 부호화 단위는 각각 독립적으로 예측 모드가 선택될 수 있다. 또한 32x32 크기의 부호화 단위 내에서도 16x16 크기의 부호화 단위 4개로 분할하여 부호화를 수행한다. 이렇게 재귀적인 방식으로 해당 부호화 단위를 분할하여 부호화를 수행한 뒤, 비트량과 화질 측면에서 가장 효율적인 부호화 단위의 분할 구조를 결정한다.
예를 들어, 부호화한 4개의 32x32 크기의 부호화 단위의 비트량과 화질이 64x64 크기의 부호화 단위로 부호화를 한 경우보다 효율적일 경우, 해당 부호화 단위는 32x32 크기의 부호화 단위 4개로 분할된다고 결정한다. 인코더(영상 부호화기)에서 영상을 부호화할 때 LCU가 분할될 수 있는 모든 경우의 수에 대하여 최적의 부호화 단위 분포를 찾게 되는데, 이는 인코더의 계산 복잡도를 높이는 요인으로 작용한다.
효율적인 압축 성능을 위해 많은 경우의 수에 대해 부호화 효율을 판단할 수록 계산 복잡도가 증가하는 현상이 발생한다.
도 11은 영상을 복수의 예측 유닛들로 분할하는 예를 설명하기 위한 도면이다.
도 11을 참조하면, CU의 기본 구조는 정사각형 크기의 2Nx2N으로 나타낼 수 있다.
CU 내에서 분할되는 예측 구조로 예측 유닛(PU: Prediction Unit, 이하 'PU')들을 나타내고 있다.
도 11에서 참조부호 1110은 대칭적 분할 구조로 SMP(Symmetric Motion Partitioning)의 예를 나타내고, 참조부호 1120은 상하 또는 좌우의 대칭적 분할 구조로 2NxN 과 Nx2N 구조의 예를 나타내고 있다.
그리고 참조부호 1130은 비대칭 분할 구조로 AMP(Asymmetric Motion Partitioning)의 예로서, 2NxnU, 2NxnD, nLx2N, nRx2N의 예를 나타내고 있다. 이때, n은 정수이고, U, D, L, R은 각각 정수 또는 유리수일 수 있다.
PU는 CU 단위로 인트라 또는 인터 모드로 부호화를 수행할 때, 더욱 효율적인 부호화를 위해 결정되는 구조이다. 이는 CU 단위로의 부호화 수행에서 정확한 예측을 할 수 없는 경우 CU 내에 PU 단위로 나누어서 각각의 PU를 독립적으로 예측하여 부호화하기 위함이다. PU 분할 구조를 결정하는 과정에서 예측하려는 현재 블록에 대해 도 11에 도시한 모든 PU 분할 구조로 예측하여 예측 치가 현재 블록과 제일 근접한 블록을 갖는 PU 분할 구조로 결정될 수 있다.
도 9 내지 도 11의 분할 구조 결정 및 PU 분할 구조 결정은 주변 블록에 대해 객체 정보를 고려하지 않고 있다. 이는 당연한데, 2차원 영상의 경우, Depth 카메라가 없다면 2차원 영상 분석을 통하여 영상내의 객체정보를 추출해내야 하므로, 현존하는 2차원 비디오 부호화 방법에는 객체 정보를 이용하는 방법이 전혀 탑재되어 있지 않기 때문이다.
같은 이유로, HEVC 경우, 분할 구조 결정 방법에서도 객체정보를 이용하는 부호화 방법이 전혀 탑재되어 있지 않다. 하지만 Depth 카메라를 이용하여 객체정보를 고려할 수 있다면, 분할 구조 결정 방법에 있어서 해당 CU의 객체 구성 정보에 따른 상관성을 알 수 있어 효율적인 예측으로 분할 구조를 결정할 수 있다면, 부호화 복잡도를 효율적으로 감소시킨다.
이에, 깊이 정보를 분할 구조 결정 방법에 이용하는 경우 해당 CU의 객체 정보 또는 객체 영역의 구성을 판단하여 해당 영역에 대해서 효율적인 분할 구조를 예측하는 경우 부호화 복잡도를 효율적으로 감소할 수 있다.
도 12는 일반 영상의 예를 나타내는 도면이다. 도 13은 도 12의 일반 영상에 대한 깊이 정보 맵의 예를 나타내는 도면이다.
도 12와 도 13에서 도시하듯 객체 경계 영역에 해당하는 부분은 복잡한 CU 분할 구조를 가지고 있을 확률이 크며, 객체 내부 또는 배경 영역으로 판단되어지는 곳에서는 비교적 단순한 분할 구조를 가지고 있을 확률이 크다.
따라서 깊이 정보를 이용하여 현재 부호화 하는 영역에 대한 객체 정보를 얻는 경우에 있어서 현재 부호화 영역이 다수의 CU로 구성되는 복잡한 분할 구조로 결정하거나 또는 소수의 CU로 구성되는 단순한 분할 구조로 결정하는 높은 확률의 예측을 할 수 있다. 이를 통해 확률이 낮은 분할 구조 결정을 제한함으로써 연산량을 줄 일 수 있다. 본 발명에서 제안되는 방법은 분할 구조 결정에서 깊이 정보를 이용하여 확률이 높은 분할 구조를 예측하여 부호화 할 수 있다.
종래기술에 따른 2차원 비디오 코덱은, 깊이 정보 이용을 전혀 반영하지 않고 알고리즘들이 설계되어 있다. 하지만, 실제 영상과 그것의 깊이 정보 영상은 큰 상관성을 가지므로, 깊이 정보를 2차원 영상을 부호화하는 데 활용할 수 있다는 것에 착안하여 깊이 정보를 고려한 알고리즘 개발로 2차원 비디오 부호화에서의 깊이 정보 이용방법을 고려할 수 있다.
본 발명의 기본적인 원리는 2차원 비디오 코덱에서 효율적인 부호화를 위해서, 깊이 정보 카메라에서 획득한 깊이 정보를 이용하여 실제 영상을 부호화하는 데 활용하기위해 움직임 예측 방법에서의 깊이 정보를 이용하는 것이다.
예를 들어, 깊이 정보 영상을 활용하여 일반 영상의 객체들을 구분하여 부호화할 경우, 일반 영상에 대한 부호화 복잡도를 크게 감소시킬 수 있다.
여기서 객체들이란, 여러 개의 객체를 의미하여 배경 영상을 포함할 수 있으며, 블록기반 부호화 코덱에서 블록 내에는 여러 개의 객체가 존재할 수 있으며, 깊이 정보 영상으로 기반으로 해당 객체마다 각각 다른 부호화 방법들이 적용될 수 있다.
도 14는 본 발명의 일 실시예에 따른 영상 부호화 방법을 나타낸다.
도 14를 참조하면, 1410단계에서 영상 부호화 장치는 깊이 영상으로부터 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출한다.
이때, 깊이 값 분포 정보는 예를 들어 도 19의 (A) 또는 (B)와 같이 CU의 깊이 정보 맵일 수 있고, 정규화된 값으로 나타낼 수 있다. 예를 들어, 도 19의 (B)에서 M1의 정규화된 깊이 값은 9이고, M2의 정규화된 깊이 값은 7이고, M3의 정규화된 깊이 값은 1일 수 있다.
1420단계에서 영상 부호화 장치는 깊이 값 분포 정보에 기초하여 상기 LCU의 분할 구조 후보들을 예측한다.
이때, LCU의 분할 구조 후보들을 예측하는 1420단계는 현재 LCU에 포함되는 CU의 깊이 값 분포 정보를 확인하는 과정 및 CU의 깊이 값 분포 정보에 기초하여 상기 CU가 단일 객체로 이루어지는 지를 확인하고, 상기 CU가 단일 객체로 이루어진 경우 상기 CU의 분할 구조 후보 예측을 종료하는 과정을 포함할 수 있다.
1430단계에서 영상 부호화 장치는 코딩 효율 및 화질 정보 중 적어도 어느 하나에 기초하여 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정한다.
이때, 최적 분할 구조를 결정하는 1430단계에서 영상 부호화 장치는, 깊이 값 분포 정보에 기초하여 상기 CU의 객체 구조를 예측하고, 상기 CU의 객체 구조 예측에 기초하여 율 왜곡 비용 연산 중 일부를 생략하고 최적 분할 구조를 결정할 수 있다.
도 15는 본 발명의 다른 일 실시예에 따른 영상 부호화 방법을 나타낸다.
도 15를 참조하면, 1510단계에서 영상 부호화 장치는 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출한다.
1520단계에서 영상 부호화 장치는 LCU 에 포함되는 CU의 깊이 값 분포 정보에 기초하여 상기 CU의 객체 구조를 예측한다.
이때, 객체 구조의 예측은 CU의 깊이 값 분포 정보로부터 CU내의 객체 구조가 단일객체인지, 상하로 나뉘는 구성인지, 좌우로 나뉘는 구조인지를 추정할 수 있다. 예를 들어, 도 21의 CU의 깊이 값 분포가 (C)와 같은 경우, CU의 중심을 기준으로 좌측과 우측에 각각 동일한 깊이 값이 기 설정된 숫자 이상 분포하는 경우 객체 구조가 좌우로 나누어진 구조로 예측될 수 있다. 이때, 기 설정된 숫자는 시스템에서 허용되는 정확도에 따라 설정될 수 있다.
이때, CU의 중심은 상하 객체 구조 판단시는 가로축 중심, 좌우 객체 구조 판단 시는 세로 축 중심일 수 있다.
또 다른 예로, CU의 가로축 중심을 기준으로 좌측 및 우측의 깊이 값들의 최대값 및 최소값이 특정 값 보다 작은 경우를 기준으로 객체 구조를 판단할 수 도 있다.
1530단계에서 영상 부호화 장치는 CU의 객체 구조 예측에 기초하여 율 왜곡 비용 연산 중 일부를 생략하고 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정한다.
율 왜곡 비용 연산 중 생략되는 연산의 구체적인 예들은 도 21에 도시된 예들을 통해 설명하기로 한다.
도 16는 본 발명의 또 다른 일 실시예에 따른 영상 부호화 방법을 나타낸다.
도 16을 참조하면, 1610단계에서 영상 부호화 장치는 깊이 영상으로부터 현재 코딩 유닛(CU: Coding Unit)의 깊이 값 분포 정보를 추출한다.
이때, 현재 CU의 분할 구조를 예측하는 1610 단계는, 현재 CU가 단일 객체로 이루어진 경우 상기 현재 CU를 분할하지 않는 것으로 결정하는 과정을 포함한다.
따라서, 도 16에 도시된 실시예에 따르면, 깊이 정보를 통해서 어떤 CU가 단일 객체를 가진다고 판단이 될 때, 그 CU를 더 이상 분할하지 않는 것으로 분할 구조 후보를 결정함으로써, 부호화 복잡도를 감소할 수 있다.
1620단계에서 영상 부호화 장치는 깊이 값 분포 정보에 기초하여 상기 현재 CU가 단일 객체로 이루어지는 지를 확인하고, 상기 현재 CU가 단일 객체로 이루어지는지의 여부에 따라 상기 현재 CU의 분할 구조를 예측한다.
이때, 현재 CU의 분할 구조를 예측하는 1620단계는 현재 CU의 크기가 기 설정된 값 이상이고, 상기 현재 CU가 단일 객체로 이루어진 것으로 예측되고 상기 CU의 부호화 모드가 스킵 모드인 경우 상기 현재 CU를 분할하지 않는 것으로 결정하는 과정을 포함할 수 있다.
이때, 현재 CU의 분할 구조를 예측하는 1620단계는 현재 CU의 크기가 기 설정된 값 보다 작고, 기 현재 CU가 단일 객체로 이루어진 것으로 예측되고, 상기 CU의 참조 CU의 크기가 상기 기 설정된 값 이상이고 상기 참조 CU가 스킵 모드로 부호화 되는 경우 상기 CU를 분할하지 않는 것으로 결정하는 과정을 포함할 수 있다.
이때, 현재 CU가 단일 객체로 이루어지는 지의 여부는 상기 CU의 네 모서리 깊이 값에 의해 결정될 수 있으며, 깊이 값 분포를 기초로 단일 객체 여부를 판단하는 다양한 예들은 도 18 내지 도 20을 통해 상세히 설명하기로 한다.
도 17은 본 발명의 실시예에 따른 LCU 단위 최적 CU 분할 구조 결정 방법을 설명하기 위한 흐름도이다.
도 17은 도 14에 도시된 LCU 단위 분할 구조 결정 과정을 보다 상세히 나타내는 흐름도이다.
예를 들어, 도 14의 1410단계는 도 17의 1701단계 및 1703단계를 포함할 수 있다. 또한, 도 14의 1420단계는 도 17의 1705단계 내지 1710단계, 1750단계 및 1760단계를 포함할 수 있다.
1705단계에서 영상 부호화 장치는 CU 단위 재귀 프로세스를 시작하고, 1707단계에서 현재 CU의 참조 CU의 깊이 정보나 부호화 모드 등의 LCU 정보를 추출하고, 현재 분할 깊이의 CU를 부호화하고 최적의 CU 후보에 저장할 수 있다. 예를 들어 현재 분할 깊이의 CU는 도 9의 (A)일 수 있다.
1710단계에서 영상 부호화 장치는 깊이 정보를 이용한 CU 분할 조기 종료 과정을 수행할 수 있다. 이때, CU 분할 조기 종료 과정은 도 14, 도 18 및 도 20에 도시된 분할 구조 후보 예측 과정일 수 있다.
1710단계의 분할 조기 종료 과정 수행을 통해 CU를 분할하는 것으로 결정될 수 있고, 이때 1750단계에서 도 9의 (B)와 같이 CU를 분할 깊이가 1 증가한 4개의 CU 로분할 할 수 있다.
만일, CU 단위 재귀 프로세스를 거쳐 CU 분할 구조 후보가 도 9의 (A), (B), (C)로 결정된 경우, 영상 부호화 장치는 각각의 분할 구조 후보에 대한 코딩 효율 등을 고려하여 1730단계에서 최적의 CU 분할 구조를 결정할 수 있다.
최적의 CU 분할 구조가 결정되면, 1740단계에서 CU 단위 재귀 프로세스는 종료될 수 있다.
도 18은 본 발명의 일 실시예에 따른 CU 분할 조기 종료 과정을 설명하기 위한 흐름도이다.
도 18을 참조하면, 현재 LCU의 깊이 정보를 추출하는 1801단계는 도 14의 1410단계 또는 도 17의 1701단계와 동일한 단계일 수 있다.
1810단계에서 현재 코딩 유닛(CU: Coding Unit)을 선택하고, 현재 CU의 크기가 32x32 이상인지, 예를 들어 현재 CU의 크기가 64x64 또는 32x32인지를 판단한다.
현재 CU의 크기가 32x32 이상이면 1811단계를 수행하고, 그렇지 않으면 1820단계를 수행한다.
1811단계에서 현재 CU가 단일 객체로 이루어지고, 현재 CU의 부호화 모드가 스킵 모드인지를 판단한다. 만일 현재 CU가 단일 객체로 이루어지고, CU의 부호화 모드가 스킵 모드이면 1813단계에서 현재 CU를 분할하지 않는다는 정보를 저장하고 CU 분할 조기 종료 과정 수행을 종료할 수 있다.
1811단계에서 현재 CU가 단일 객체로 이루어지지 않는 것으로 판단되거나 현재 CU의 부호화 모드가 스킵 모드가 아닌 경우 현재 CU를 분할한다는 정보를 저장하고 CU 분할 조기 종료 과정 수행을 종료할 수 있다.
1820단계에서 영상 부호화 장치는 현재 LCU 및 현재 CU가 단일 객체로 구성되는지를 판단한다. 만일 현재 LCU 또는 현재 CU가 단일 객체로 이루어지지 않는 것으로 판단되면 1830단계에서 현재 CU를 분할한다는 정보를 저장하고 CU 분할 조기 종료 과정 수행을 종료할 수 있다.
1820단계의 판단결과 현재 LCU 또는 현재 CU가 단일 객체로 구성되지 않는 것으로 판단되면, 1840단계에서 참조 CU의 깊이 정보를 추출하고 1841단계를 수행한다.
1841단계에서 영상 부호화 장치는 참조 CU의 크기가 32x32 이상(예를 들어 참조 CU의 크기가 64x64 또는 32x32인 경우)이고 참조 CU의 부호화 모드가 스킵 모드인지를 판단한다.
1841단계에서 참조 CU의 크기가 32x32 이상이고 참조 CU의 부호화 모드가 스킵 모드인 경우, 1843단계에서 현재 CU를 분할하지 않는다는 정보를 저장하고 CU 분할 조기 종료 과정 수행을 종료할 수 있다.
예를 들어, 현재 CU의 크기가 32x32보다 작은 크기를 가지는 CU일 때, 현재 CU가 깊이 정보를 통해 단일 객체로 구성되었다고 판단 되고, 참조 LCU 역시 깊이 정보를 통해 단일 객체로 구성되었다고 판단 되며, 참조 CU(L0에 위치한)의 크기가 64x64 또는 32x32이며 Skip 모드로 부호화 되었다면, 현재 CU 역시 큰 크기로 구성되는 CU 즉, 단순한 분할 구조일 확률이 크다고 예측함으로써, 현재 CU를 더 이상 분할하지 않을 수 있다.
1841단계의 판단결과 참조 CU의 크기가 32x32 이상이 아니거나 참조 CU의 부호화 모드가 스킵 모드가 아닌 경우 1830단계를 수행한다.
이때, 스킵 모드는 원본 영상에 대한 예측영상 또는 참조 영상과의 차분신호(또는 차분영상)를 부호화하지 않거나 복호화 단으로 전송하지 않는 부호화 모드일 수 있다.
이때, CU가 단일 객체로 이루어지는지의 여부는 CU의 깊이 값 분포 정보에 포함된 최대값 및 최소값의 차가 기 설정된 값 이하이면, 상기 CU가 단일 객체로 이루어지는 것으로 판단될 수 있다.
따라서, 도 18에 도시된 1810단계 내지 1843단계를 참조하면, 일 실시예에 따른 LCU의 분할 구조 후보들을 예측하는 단계는, 현재 LCU에 포함되는 CU의 크기, 상기 CU의 깊이 값 분포 정보에 포함된 최대값 및 최소값의 차, 상기 CU의 부호화 모드가 스킵 모드인지 여부 중 적어도 하나를 고려하여 상기 CU의 분할 여부를 결정하는 과정을 포함할 수 있다.
도 19는 CU의 깊이 값 분포 예들을 나타내는 도면이다.
일 실시예에 따른 영상 부호화 방법에 있어서, CU 또는 블록이 동일한 단일 객체로 이루어지는지를 판단하는 방법의 예로써, CU 또는 블록의 네 모서리 위치의 깊이 값을 이용할 수 있다.
도 19를 참조하면, 영상 부호화 장치는 (A)와 같은 CU 깊이 값 분포를 깊이 값의 변화가 크지 않고 고른 것으로 판단할 수 있다.
반면, 영상 부호화 장치는 도 19의 (B)와 같은 CU 깊이 값 분포를 깊이 값의 변화가 크기 때문에 단일 객체로 이루어지지 않는 것으로 판단할 수 있다.
도 19의 (B)를 참조하면, CU 내에 중간 부분과 모서리 부분이 깊이 값의 변화가 매우 크다는 것을 볼 수 있는데, 이러한 경우 네 모서리의 깊이 값 중 최대값과 최소값의 차이가 크다는 것을 알 수 있다. 따라서 이러한 CU는 단일 객체로 이루어져 있을 확률이 낮기 때문에 CU 분할을 수행할 수 있다.
영상 부호화 장치는 CU의 네 모서리 깊이 값들 중 최대값 및 최소값의 차가 기 설정된 기준값 이하이면 상기 CU가 단일 객체로 이루어지는 것으로 판단할 수 있다.
이때, 예를 들어 도 19의 (A)에서 M1의 정규화된 깊이 값은 9이고, M2 및 M3의 정규화된 깊이 값은 7이고, M4의 정규화된 깊이 값은 7일 수 있다.
또한, 도 19의 (B)에서 M1의 정규화된 깊이 값은 9이고, M2 및 M4의 정규화된 깊이 값은 7이고, M3의 정규화된 깊이 값은 1일 수 있다.
이때, 도 19의 (A)의 경우 CU 네 모서리의 깊이 값의 최대값 및 최소값의 차가 2이고, 도 19의 (B)의 경우 CU 네 모서리의 깊이 값의 최대값 및 최소값의 차가 8이다.
따라서, 기 설정된 기준값이 5인 경우, 도 19의 (A)는 단일 객체로 이루어지는 것으로 결정되고, 도 19의 (B)는 단일 객체로 이루어지지 않는 것으로 결정될 수 있다.
도 20은 본 발명의 일 실시예에 따른 CU 분할 조기 종료 과정의 다른 예를 설명하기 위한 흐름도이다.
도 20을 참조하면, 2010단계에서 영상 부호화 장치는 현재 CU가 32x32 이상인지를 판단한다. 2010단계의 조건을 만족하면 2020단계가 수행되고, 그렇지 않은 경우 2050단계가 수행된다.
2020단계에서 영상 부호화 장치는, CU의 크기가 길 설정된 값 이상이고 상기 CU의 네 모서리 깊이 값들 중 최대값 및 최소값의 차가 기 설정된 기준값 이하이고 상기 CU가 스킵 모드로 부호화되는지를 판단한다.
이때, 기 설정된 기준값은 5일 수 있다.
2020단계의 조건을 만족하는 경우 현재 CU를 분할하지 않는다는 정보를 저장하고 CU 분할 조기 종료 과정을 종료할 수 있다.
따라서, 일 실시예에 따른 LCU의 분할 구조 후보들을 예측하는 단계는, CU의 크기가 길 설정된 값 이상이고 상기 CU의 네 모서리 깊이 값들 중 최대값 및 최소값의 차가 기 설정된 기준값 이하이고 상기 CU가 스킵 모드로 부호화 되는 경우 상기 CU를 분할하지 않는 것으로 결정하는 과정을 포함할 수 있다.
2020 단계의 조건을 만족하지 않는 경우 CU를 분할한다는 정보를 저장하고 CU 분할 조기 종료 과정을 종료할 수 있다.
2050단계에서 영상 부호화 장치는, CU의 크기가 길 설정된 값 보다 작고 상기 LCU 및 상기 CU 각각의 네 모서리 깊이 값이 모두 같은 값인지를 판단한다.
2050단계의 조건을 만족하면, 2060단계를 수행하고 그렇지 않은 경우 2080단계를 수행한다.
2060단계 및 2070단계에서 영상 부호화 장치는 참조 CU의 깊이 정보를 추출하고, 참조 CU의 크기가 32x32 이상인지와 참조 CU의 부호화 모드가 스킵 모드인지를 판단한다.
2070단계의 조건을 만족하면 2090단계를 수행하고, 그렇지 않은 경우 2080단계를 수행한다.
따라서, 일 실시예에 따른 LCU의 분할 구조 후보들을 예측하는 단계는, CU의 크기가 길 설정된 값 보다 작고 상기 LCU 및 상기 CU 각각의 네 모서리 깊이 값이 모두 같은 값이고, 상기 CU의 참조 CU의 크기가 상기 기 설정된 값 이상이고 상기 참조 CU가 스킵 모드로 부호화 되는 경우 상기 CU를 분할하지 않는 것으로 결정하는 과정을 포함할 수 있다.
도 21은 CU의 객체 구성의 다양한 예를 설명하기 위한 도면이다.
본 발명의 일 실시예에 따르면, 깊이 정보를 통해 CU의 객체 구성을 판단하고, 분할 구조 결정에서의 분할 구조 모드 예측에 필요한 율왜곡(RD-Cost, 이하 RD-Cost) 연산을 간소화 할 수 있다.
CU의 깊이 값 분포 정보를 이용하면, CU의 객체 구성 정보 예측할 수 있기 때문에, 임의의 조건을 만족시키는 경우에 대해 AMP(Asymmetric Motion Partitioning) RD-Cost 연산을 수행하지 않음으로써 모드 예측의 결정을 간소화 시킬 수 있다.
예를 들어, 도 21의 (A)와 같이 단일 객체 구성으로 이루어지는 CU의 경우에, 해당 CU의 분할 구조 모드가 AMP 중 하나로 선택될 확률이 낮다. 따라서, 이 경우 2NxnU, 2NxnD, nLx2N, nRx2N에 대한 RD-Cost 연산을 수행하지 않을 수 있다.
따라서, 본 발명의 일 실시예에 따른 최적 분할 구조 예측 단계 또는 분할 구조 결정 간소화 과정에서, CU의 객체 구조가 단일객체로 이루어지는 것으로 예측되는 경우 CU의 비대칭 모션 분할(AMP: Asymmetric Motion Partition)에 대한 율 왜곡 연산은 생략될 수 있다.
또한, 도 21의 (B)와 같이 CU의 구성이 상하로 나누어져 객체로 구성되는 경우에는 CU의 위쪽과 아래쪽이 다른 객체로 이루어져 있을 확률이 높으므로, nLx2N, nRx2N에 대한 RD-Cost 연산을 수행하지 않을 수 있다.
따라서, 본 발명의 일 실시예에 따른 최적 분할 구조 예측 단계 또는 분할 구조 결정 간소화 과정에서, CU의 객체 구조가 상하로 나누어진 구조로 예측되는 경우 CU의 비대칭 모션 분할(AMP: Asymmetric Motion Partition)에 대한 율 왜곡 연산 들 중 좌우 분할과 관련된 연산은 생략될 수 있다.
또한, 도 21의 (C)와 같이 CU의 구성이 좌우로 나누어져 객체로 구성되는 경우에는 CU의 왼쪽과 오른쪽이 다른 객체로 이루어져 있을 확률이 높으므로, 2NxnU, 2NxnD 에 대한 RD-Cost 연산을 수행하지 않을 수 있다.
따라서, 본 발명의 일 실시예에 따른 최적 분할 구조 예측 단계 또는 분할 구조 결정 간소화 과정에서, CU의 객체 구조가 좌우로 나누어진 구조로 예측되는 경우 CU의 비대칭 모션 분할(AMP: Asymmetric Motion Partition)에 대한 율 왜곡 연산 들 중 상하 분할과 관련된 연산은 생략될 수 있다.
도 22 및 도 23은 본 발명의 실시예에 따른 영상 부호화 방법들을 설명하기 위한 도면이다.
도 22를 참조하면, 2201단계, 2203단계 및 2205단계는 각각 도 17의 1701단계, 1703단계 및 1705단계와 동일함을 알 수 있다.
또한, 깊이 정보를 이용한 분할 구조 결정 간소화 과정 수행 단계인 2210단계를 제외하면 나머지 단계들 2220단계 내지 2270단계는 도 17의 1709단계 내지 1760단계과 동일함을 알 수 있다.
이때, 깊이 정보를 이용한 분할 구조 결정 간소화 과정 수행 단계인 2210단계는 도 24에 도시된 과정 또는 도 25에 도시된 과정을 포함할 수 있다.
도 23을 참조하면, LCU 단위 전체 분할 구조 결정 과정에서 깊이 정보를 이용한 분할 구조 결정 간소화 과정을 수행한 후, 2320단계를 거쳐 2330단계에서 깊이 정보를 이용한 CU 분할 조기 종료 과정을 수행할 수 있음을 알 수 있다.
이때, 2310 단계에서 영상 부호화 장치는 CU의 객체 구조에 따라 생략되는 연산만을 저장한 후 2320단계 내지 2260단계를 수행할 수 있다.
예를 들어, CU의 객체 구조에 따라 생략되는 율 왜곡 연산이 "비대칭 모션 분할(AMP: Asymmetric Motion Partition)에 대한 율 왜곡 연산 들 중 좌우 분할과 관련된 연산"인 경우, 영상 부호화 장치는 2350단계에서 생략되는 연산을 고려하여 CU분할 구조 후보들 중 최적의 CU 분할 구조를 결정할 수 있다.
도 24는 본 발명의 일 실시예에 따른 분할 구조 결정 간소화 과정을 설명하기 위한 도면이다.
도 24를 참조하면, 2510단계에서 영상 부호화 장치는 현재 CU가 단일 객체로 구성된다고 판단할 수 있다. 2410 단계의 조건을 만족하면 2420단계가 수행되고 그렇지 않은 경우 2430단계가 수행될 수 있다.
2410단계의 조건을 만족하는 경우 2420단계에서 AMP RD cost 연산을 skip하는 것으로 결정하고 분할 구조 모두 결정을 완료할 수 있다.
2430단계에서 영상 부호화 장치는 현재 CU 객체 구성이 상하로 나뉘어져 있는지를 판단하고, 조건을 만족하는 경우 2440단계에서 nLx2N, nRx2N 율 왜곡 코스트 연산을 스킵하는 것으로 결정할 수 있다.
영상 부호화 장치는 2450단계에서 CU 객체 구성이 좌우로 나뉘어져 있는지를 판단하고 이를 만족하는 경우 2460단계에서 2NxnU, 2NxnD 율 왜곡 코스트 연산을 스킵하는 것으로 결정할 수 있다.
도 25는 본 발명의 일 실시예에 따른 분할 구조 결정 간소화 과정의 다른 예를 설명하기 위한 도면이다.
도 25는 CU의 깊이 값 분포를 통해 CU의 객체 구성을 예측하는 일 예를 나타낸다.
예를 들어, 2510단계에서 영상 부호화 장치는 CU의 네 모서리 깊이 값이 모두 같으면, CU가 단일 객체로 구성되는 것으로 판단하여 2420단계와 동일한 2520단계를 수행한다.
또한, 2530단계에서 영상 부호화 장치는 CU의 네 모서리 깊이 값이 모두 같지는 않지만 CU의 위쪽 두 모서리의 깊이 값이 서로 같고, 아래 쪽 두 모서리의 깊이 값이 서로 같은 경우 CU의 객체 구성이 상하로 나뉘는 것으로 판단하여 2440단계와 동일한 2540단계를 수행한다.
또한, 2550단계에서 영상 부호화 장치는 2510단계 및 2530단계의 조건을 만족하지는 않지만 CU의 왼쪽 모서리의 깊이 값이 서로 같고 오른쪽 두 모서리의 깊이 값이 서로 같은 경우 CU의 객체 구성이 좌우로 나뉘는 것으로 판단하여 2560단계를 수행할 수 있다.
도 26은 본 발명의 일 실시예에 따른 영상 부호화 장치의 구성을 설명하기 위한 도면이다.
도 26에 도시된 영상 부호화 장치는 본 발명의 실시예에 따른 영상 부호화 방법을 수행할 수 있다.
도 26을 참조하면, 영상 부호화 장치(2600)는 깊이 값 추출부(2610), 분할구조 예측부(2620) 및 최적 분할구조 결정부(2630)을 포함할 수 있다. 또한, 영상 부호화 장치(2600)는 객체구조 예측부(2640)를 더 포함할 수 있다.
깊이 값 추출부(2610)는 깊이 영상으로부터 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출한다.
분할구조 예측부(2620)는 깊이 값 분포 정보에 기초하여 상기 LCU의 분할 구조 후보들을 예측한다. 이때, LCU의 분할 구조 후보들의 예측은 도 17의 깊이 정보를 이용한 CU 분할 조기 종료 과정 수행 1710단계일 수 있다.
또한, 분할구조 예측부(2620)는 깊이 값 분포 정보에 기초하여 상기 현재 CU가 단일 객체로 이루어지는 지를 확인하고, 상기 현재 CU가 단일 객체로 이루어지는지의 여부에 따라 상기 현재 CU의 분할 구조를 예측한다.
최적 분할구조 결정부(2630)는 코딩 효율 및 화질 정보 중 적어도 어느 하나에 기초하여 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정한다.
객체구조 예측부(2640)는 LCU 에 포함되는 CU의 깊이 값 분포 정보에 기초하여 상기 CU의 객체 구조를 예측한다. 이때, 최적 분할구조 결정부(2630)는 CU의 객체 구조 예측에 기초하여 율 왜곡 비용 연산 중 일부를 생략하고 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정한다.
[표 1]은 도 25에 도시된 실시예를 HEVC에 적용한 실험 결과를 나타낸다.
실험 결과를 통하여 주관적 화질에서의 동일한 품질로 영상 품질의 큰 열화 없이 부호화 복잡도가 감소됨을 확인할 수 있다.
[표 1]
[규칙 제91조에 의한 정정 08.05.2015] 
Figure WO-DOC-FIGURE-t1
본 발명의 실시예들에 있어서, 대상 범위 또는 적용 범위는 블록 크기 혹은 CU의 분할 깊이 등에 따라 가변될 수 있다.
이때, 적용 범위를 결정하는 변수(즉, 크기 혹은 깊이 정보)는 부호화기 및 복호화기가 미리 정해진 값을 사용하도록 설정할 수도 있고, 프로파일 또는 레벨에 따라 정해진 값을 사용하도록 할 수 도 있고, 부호화기가 변수 값을 비트스트림에 기재하면 복호화기는 비트스트림으로부터 이 값을 구하여 사용할 수도 있다. CU 분할 깊이에 따라 적용 범위를 달리하는 할 때는 [표 2]에 예시한 바와 같다. 방식A는 미리 설정된 깊이값 이상의 깊이에만 적용하는 방식일 수 있으며, 방식B는 미리 설정된 깊이값 이하에만 적용하는 방식일 수 있고, 방식C는 미리 설정된 깊이값에만 적용하는 방식이 있을 수 있다.
[표 2]
Figure PCTKR2015002828-appb-I000002
[표 2]는 주어진 CU 분할 깊이가 2인 경우, 본 발명의 방법들을 적용하는 적용 범위 결정 방식의 예를 나타낸다. (O: 해당 깊이에 적용, X: 해당 깊이에 적용하지 않음.)
모든 깊이에 대하여 본 발명의 방법들을 적용하지 않는 경우는 임의의 지시자(flag)를 사용하여 비트스트림에 나타낼 수도 있고, CU 깊이의 최대값보다 하나 더 큰 값을 적용범위를 나타내는 CU 깊이 값으로 시그널링 함으로써 표현할 수도 있다.
또한 상술한 각 방법들은 휘도 블록의 크기에 따라 색차 블록에 다르게 적용될 수 있으며, 휘도 신호영상 및 색차 영상에도 다르게 적용될 수 있다.
[표 3]은 각 방법을 조합하는 경우, 휘도 블록의 크기 및 색차 블록에 따라 다르게 적용되는 예를 나타낸다.
[표 3]
[규칙 제91조에 의한 정정 08.05.2015] 
Figure WO-DOC-FIGURE-t3
[표 3]의 변형된 방법들 중에서 방법 사 1 을 살펴보면, 휘도블록의 크기가 8(8x8, 8x4, 2x8 등)인 경우이고, 그리고 색차 블록의 크기가 4(4x4, 4x2, 2x4)인 경우에 본 발명의 실시 예에 따른 머지 리스트 구성 방법을 휘도 신호 및 색차 신호에 적용할 수 있다.
위의 변형된 방법들 중에서 방법 파 2 을 살펴보면, 휘도블록의 크기가 16(16x16, 8x16, 4x16 등)인 경우이고, 그리고 색차 블록의 크기가 4(4x4, 4x2, 2x4)인 경우에 본 발명의 실시 예에 따른 머지 리스트 구성 방법을 휘도 신호에 적용하고 색차 신호에는 적용하지 않을 수 있다.
또 다른 변형된 방법들로 휘도 신호에만 본 발명의 실시 예에 따른 머지 리스트 구성 방법이 적용되고 색차 신호에는 적용되지 않을 수 있다. 반대로 색차 신호에만 본 발명의 실시 예에 따른 머지 리스트 구성 방법이 적용되고 휘도 신호에는 적용되지 않을 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 단계;
    상기 깊이 값 분포 정보에 기초하여 상기 LCU의 분할 구조 후보들을 예측하는 단계; 및
    코딩 효율 및 화질 정보 중 적어도 어느 하나에 기초하여 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 단계
    를 포함하는 깊이 정보를 이용한 영상 부호화 방법.
  2. 제1항에 있어서,
    상기 LCU의 분할 구조 후보들을 예측하는 단계는,
    상기 현재 LCU에 포함되는 CU의 깊이 값 분포 정보를 확인하는 단계; 및
    상기 CU의 깊이 값 분포 정보에 기초하여 상기 CU가 단일 객체로 이루어지는 지를 확인하고, 상기 CU가 단일 객체로 이루어진 경우 상기 CU의 분할 구조 후보 예측을 종료하는 단계
    를 포함하는 깊이 정보를 이용한 영상 부호화 방법.
  3. 제2항에 있어서,
    상기 CU가 단일 객체로 이루어지는 지 여부는,
    상기 CU의 깊이 값 분포 정보에 포함된 최대값 및 최소값의 차가 기 설정된 값 이하이면, 상기 CU가 단일 객체로 이루어지는 것으로 판단하는
    깊이 정보를 이용한 영상 부호화 방법.
  4. 제2항에 있어서,
    상기 CU가 단일 객체로 이루어지는 지 여부는,
    상기 CU의 네 모서리 깊이 값들 중 최대값 및 최소값의 차가 기 설정된 기준값 이하이면 상기 CU가 단일 객체로 이루어지는 것으로 판단하는
    깊이 정보를 이용한 영상 부호화 방법.
  5. 제1항에 있어서,
    상기 LCU의 분할 구조 후보들을 예측하는 단계는,
    상기 현재 LCU에 포함되는 CU의 크기, 상기 CU의 깊이 값 분포 정보에 포함된 최대값 및 최소값의 차, 상기 CU의 부호화 모드가 스킵 모드인지 여부 중 적어도 하나를 고려하여 상기 CU의 분할 여부를 결정하는 과정을 포함하는
    깊이 정보를 이용한 영상 부호화 방법.
  6. 제5항에 있어서,
    상기 LCU의 분할 구조 후보들을 예측하는 단계는,
    상기 CU의 크기가 길 설정된 값 이상이고 상기 CU의 네 모서리 깊이 값들 중 최대값 및 최소값의 차가 기 설정된 기준값 이하이고 상기 CU가 스킵 모드로 부호화 되는 경우 상기 CU를 분할하지 않는 것으로 결정하는 과정을 포함하는
    깊이 정보를 이용한 영상 부호화 방법.
  7. 제5항에 있어서,
    상기 LCU의 분할 구조 후보들을 예측하는 단계는,
    상기 CU의 크기가 길 설정된 값 보다 작고 상기 LCU 및 상기 CU 각각의 네 모서리 깊이 값이 모두 같은 값이고, 상기 CU의 참조 CU의 크기가 상기 기 설정된 값 이상이고 상기 참조 CU가 스킵 모드로 부호화 되는 경우 상기 CU를 분할하지 않는 것으로 결정하는 과정을 포함하는
    깊이 정보를 이용한 영상 부호화 방법.
  8. 제1항에 있어서,
    상기 최적 분할 구조 결정 단계에서, 상기 깊이 값 분포 정보에 기초하여 상기 CU의 객체 구조를 예측하고, 상기 CU의 객체 구조 예측에 기초하여 율 왜곡 비용 연산 중 일부를 생략하고 최적 분할 구조를 결정하는 것을 특징으로 하는
    깊이 정보를 이용한 영상 부호화 방법.
  9. 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 단계;
    상기 LCU 에 포함되는 CU의 깊이 값 분포 정보에 기초하여 상기 CU의 객체 구조를 예측하는 단계; 및
    상기 CU의 객체 구조 예측에 기초하여 율 왜곡 비용 연산 중 일부를 생략하고 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 단계
    를 포함하는 깊이 정보를 이용한 영상 부호화 방법.
  10. 제9항에 있어서,
    상기 CU의 객체 구조가 단일객체로 이루어지는 것으로 예측되는 경우, 상기 최적 분할 구조 예측 단계에서 상기 CU의 비대칭 모션 분할(AMP: Asymmetric Motion Partition)에 대한 율 왜곡 연산은 생략되는 것을 특징으로 하는
    깊이 정보를 이용한 영상 부호화 방법.
  11. 제9항에 있어서,
    상기 CU의 객체 구조가 상하로 나누어진 구조로 예측되는 경우, 상기 최적 분할 구조 예측 단계에서 상기 CU의 비대칭 모션 분할(AMP: Asymmetric Motion Partition)에 대한 율 왜곡 연산 들 중 좌우 분할과 관련된 연산은 생략되는 것을 특징으로 하는
    깊이 정보를 이용한 영상 부호화 방법.
  12. 제9항에 있어서,
    상기 CU의 객체 구조가 좌우로 나누어진 구조로 예측되는 경우, 상기 최적 분할 구조 예측 단계에서 상기 CU의 비대칭 모션 분할(AMP: Asymmetric Motion Partition)에 대한 율 왜곡 연산 들 중 상하 분할과 관련된 연산은 생략되는 것을 특징으로 하는
    깊이 정보를 이용한 영상 부호화 방법.
  13. 깊이 영상으로부터 현재 코딩 유닛(CU: Coding Unit)의 깊이 값 분포 정보를 추출하는 단계; 및
    상기 깊이 값 분포 정보에 기초하여 상기 현재 CU가 단일 객체로 이루어지는 지를 확인하고, 상기 현재 CU가 단일 객체로 이루어지는지의 여부에 따라 상기 현재 CU의 분할 구조를 예측하는 단계
    를 포함하는 깊이 정보를 이용한 영상 부호화 방법.
  14. 제13항에 있어서,
    상기 현재 CU의 분할 구조를 예측하는 단계는,
    상기 현재 CU가 단일 객체로 이루어진 경우 상기 현재 CU를 분할하지 않는 것으로 결정하는 과정을 포함하는
    깊이 정보를 이용한 영상 부호화 방법.
  15. 제13항에 있어서,
    상기 현재 CU의 분할 구조를 예측하는 단계는,
    상기 현재 CU의 크기가 기 설정된 값 이상이고, 상기 현재 CU가 단일 객체로 이루어진 것으로 예측되고 상기 CU의 부호화 모드가 스킵 모드인 경우 상기 현재 CU를 분할하지 않는 것으로 결정하는 과정을 포함하는
    깊이 정보를 이용한 영상 부호화 방법.
  16. 제13항에 있어서,
    상기 현재 CU의 분할 구조를 예측하는 단계는,
    상기 현재 CU의 크기가 기 설정된 값 보다 작고, 기 현재 CU가 단일 객체로 이루어진 것으로 예측되고, 상기 CU의 참조 CU의 크기가 상기 기 설정된 값 이상이고 상기 참조 CU가 스킵 모드로 부호화 되는 경우 상기 CU를 분할하지 않는 것으로 결정하는 과정을 포함하는
    깊이 정보를 이용한 영상 부호화 방법.
  17. 제13항에 있어서,
    상기 현재 CU가 단일 객체로 이루어지는 지의 여부는 상기 CU의 네 모서리 깊이 값에 의해 결정되는
    깊이 정보를 이용한 영상 부호화 방법.
  18. 깊이 영상으로부터 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 깊이값 추출부;
    상기 깊이 값 분포 정보에 기초하여 상기 LCU의 분할 구조 후보들을 예측하는 분할구조 예측부; 및
    코딩 효율 및 화질 정보 중 적어도 어느 하나에 기초하여 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 최적 분할구조 결정부
    를 포함하는 깊이 정보를 이용한 영상 부호화 장치.
  19. 깊이 영상으로부터 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 깊이값 추출부;
    상기 LCU 에 포함되는 CU의 깊이 값 분포 정보에 기초하여 상기 CU의 객체 구조를 예측하는 객체구조 예측부; 및
    상기 CU의 객체 구조 예측에 기초하여 율 왜곡 비용 연산 중 일부를 생략하고 상기 LCU의 분할 구조 후보들 중 최적 분할 구조를 결정하는 최적 분할구조 결정부
    를 포함하는 깊이 정보를 이용한 영상 부호화 장치.
  20. 깊이 영상으로부터 현재 최대 코딩 유닛(LCU: Largest Coding Unit)의 깊이 값 분포 정보를 추출하는 깊이값 추출부; 및
    상기 깊이 값 분포 정보에 기초하여 상기 현재 CU가 단일 객체로 이루어지는 지를 확인하고, 상기 현재 CU가 단일 객체로 이루어지는지의 여부에 따라 상기 현재 CU의 분할 구조를 예측하는 분할구조 예측부
    를 포함하는 깊이 정보를 이용한 영상 부호화 장치.
PCT/KR2015/002828 2014-03-28 2015-03-23 깊이 정보를 이용한 비디오 부호화 방법 및 장치 WO2015147508A1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201580017301.8A CN106165425B (zh) 2014-03-28 2015-03-23 利用深度信息的视频编码方法及装置
CN201910129186.3A CN109672896B (zh) 2014-03-28 2015-03-23 利用深度信息的视频编码方法及装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20140037276 2014-03-28
KR10-2014-0037276 2014-03-28
KR10-2014-0059064 2014-05-16
KR1020140059064A KR101603413B1 (ko) 2014-03-28 2014-05-16 깊이 정보를 이용한 비디오 부호화 방법 및 장치

Publications (1)

Publication Number Publication Date
WO2015147508A1 true WO2015147508A1 (ko) 2015-10-01

Family

ID=54192250

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2015/002828 WO2015147508A1 (ko) 2014-03-28 2015-03-23 깊이 정보를 이용한 비디오 부호화 방법 및 장치

Country Status (3)

Country Link
US (2) US9955187B2 (ko)
CN (1) CN109672896B (ko)
WO (1) WO2015147508A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190182498A1 (en) * 2016-08-26 2019-06-13 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015190839A1 (ko) * 2014-06-11 2015-12-17 엘지전자(주) 임베디드 블록 파티셔닝을 이용하여 비디오 신호를 인코딩, 디코딩하는 방법 및 장치
CN116614647A (zh) 2016-11-08 2023-08-18 株式会社Kt 对视频进行解码和编码的方法、发送压缩数据的方法
CN108989801B (zh) * 2018-07-27 2021-10-08 福州大学至诚学院 一种基于时空特性的自适应模式选择快速方法
KR102213901B1 (ko) 2019-03-21 2021-02-08 삼성전자주식회사 블록 형태별로 블록 크기가 설정되는 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
CN110738251B (zh) * 2019-10-11 2023-11-28 Oppo广东移动通信有限公司 图像处理方法、图像处理装置、电子设备及存储介质
CN112866693B (zh) * 2021-03-25 2023-03-24 北京百度网讯科技有限公司 编码单元cu的划分方法、装置、电子设备和存储介质
CN114520914B (zh) * 2022-02-25 2023-02-07 重庆邮电大学 一种基于shvc质量可伸缩帧间视频编码方法
CN116456088A (zh) * 2023-03-30 2023-07-18 重庆邮电大学 一种基于可能性大小的vvc帧内快速编码方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120137305A (ko) * 2011-06-10 2012-12-20 경희대학교 산학협력단 블록 분할 방법 및 이러한 방법을 사용하는 장치
WO2013023005A1 (en) * 2011-08-08 2013-02-14 General Instrument Corporation Residual tree structure of transform unit partitioning
KR20140008984A (ko) * 2012-06-28 2014-01-22 연세대학교 산학협력단 영상 부호화 방법 및 장치

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101768207B1 (ko) * 2010-01-19 2017-08-16 삼성전자주식회사 축소된 예측 움직임 벡터의 후보들에 기초해 움직임 벡터를 부호화, 복호화하는 방법 및 장치
US9369736B2 (en) * 2010-04-05 2016-06-14 Samsung Electronics Co., Ltd. Low complexity entropy-encoding/decoding method and apparatus
JP5855570B2 (ja) * 2010-09-30 2016-02-09 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置、プログラムおよび集積回路
US8885704B2 (en) * 2010-10-01 2014-11-11 Qualcomm Incorporated Coding prediction modes in video coding
US9049452B2 (en) * 2011-01-25 2015-06-02 Mediatek Singapore Pte. Ltd. Method and apparatus for compressing coding unit in high efficiency video coding
KR101539312B1 (ko) * 2011-05-27 2015-07-24 미디어텍 인크. 비디오 프로세싱에 대한 라인 버퍼 감소를 위한 방법 및 장치
US9918068B2 (en) * 2011-06-15 2018-03-13 Media Tek Inc. Method and apparatus of texture image compress in 3D video coding
KR101978172B1 (ko) * 2011-11-29 2019-05-15 삼성전자주식회사 깊이 영상을 고해상도로 변환하는 방법 및 장치
US10805617B2 (en) * 2012-01-19 2020-10-13 Texas Instruments Incorporated Scalable prediction type coding
KR20130090465A (ko) * 2012-02-06 2013-08-14 삼성전자주식회사 순차 주사 기반의 디블록킹 필터링 장치 및 방법
KR102133528B1 (ko) * 2012-04-17 2020-07-14 삼성전자주식회사 인간의 시각 특성을 이용한 오프셋 값 결정 방법 및 장치
US10075689B2 (en) * 2012-07-04 2018-09-11 Intel Corporation Region-of-interest based 3D video coding
WO2014008817A1 (en) * 2012-07-09 2014-01-16 Mediatek Inc. Method and apparatus of inter-view sub-partition prediction in 3d video coding
JP2015523030A (ja) * 2012-07-13 2015-08-06 華為技術有限公司Huawei Technologies Co.,Ltd. 3次元ビデオを表すビットストリームを符号化する装置
KR20140029689A (ko) * 2012-08-29 2014-03-11 삼성전자주식회사 영상 처리 시스템에서 움직임 추정 장치 및 방법
KR20140048783A (ko) 2012-10-09 2014-04-24 한국전자통신연구원 깊이정보값을 공유하여 움직임 정보를 유도하는 방법 및 장치
US20150296197A1 (en) * 2012-11-27 2015-10-15 Intellectual Discovery Co., Ltd. Encoding/decoding method and encoding/decoding device using depth information
US9762905B2 (en) * 2013-03-22 2017-09-12 Qualcomm Incorporated Disparity vector refinement in video coding
JP6154643B2 (ja) * 2013-03-29 2017-06-28 Kddi株式会社 動画像符号化装置、動画像符号化装置のデプスイントラ予測方法およびプログラム、ならびに動画像復号装置、動画像復号装置のデプスイントラ予測方法およびプログラム
US10009621B2 (en) * 2013-05-31 2018-06-26 Qualcomm Incorporated Advanced depth inter coding based on disparity of depth blocks
JP2014236264A (ja) * 2013-05-31 2014-12-15 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
US10687079B2 (en) * 2014-03-13 2020-06-16 Qualcomm Incorporated Constrained depth intra mode coding for 3D video coding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120137305A (ko) * 2011-06-10 2012-12-20 경희대학교 산학협력단 블록 분할 방법 및 이러한 방법을 사용하는 장치
WO2013023005A1 (en) * 2011-08-08 2013-02-14 General Instrument Corporation Residual tree structure of transform unit partitioning
KR20140008984A (ko) * 2012-06-28 2014-01-22 연세대학교 산학협력단 영상 부호화 방법 및 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BAE, DONG IN: "HEVC Encoder Optimization using Depth Information", KYUNG HEE UNIVERSITY MASTER'S THESIS, 28 February 2013 (2013-02-28), XP055226835 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190182498A1 (en) * 2016-08-26 2019-06-13 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
US10863186B2 (en) * 2016-08-26 2020-12-08 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
US11234011B2 (en) 2016-08-26 2022-01-25 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus

Also Published As

Publication number Publication date
US10674179B2 (en) 2020-06-02
US9955187B2 (en) 2018-04-24
CN109672896A (zh) 2019-04-23
CN109672896B (zh) 2022-11-15
US20180184122A1 (en) 2018-06-28
US20150281735A1 (en) 2015-10-01

Similar Documents

Publication Publication Date Title
WO2015147508A1 (ko) 깊이 정보를 이용한 비디오 부호화 방법 및 장치
WO2020071829A1 (ko) 히스토리 기반 영상 코딩 방법 및 그 장치
WO2020071830A1 (ko) 히스토리 기반 움직임 정보를 이용한 영상 코딩 방법 및 그 장치
WO2018117706A1 (ko) 비디오 신호 처리 방법 및 장치
WO2016175549A1 (ko) 비디오 신호의 처리 방법 및 이를 위한 장치
WO2020246849A1 (ko) 변환에 기반한 영상 코딩 방법 및 그 장치
WO2013109123A1 (ko) 인트라 예측 처리 속도 향상을 위한 비디오의 부호화 방법 및 장치, 비디오의 복호화 방법 및 장치
WO2020251319A1 (ko) Sbtmvp를 이용한 인터 예측 기반 영상 또는 비디오 코딩
WO2021137597A1 (ko) Ols에 대한 dpb 파라미터를 사용하는 영상 디코딩 방법 및 그 장치
WO2020141879A1 (ko) 영상 코딩 시스템에서 서브 블록 기반 시간적 머지 후보를 사용하는 어파인 움직임 예측에 기반한 영상 디코딩 방법 및 장치
WO2021040400A1 (ko) 팔레트 모드 기반 영상 또는 비디오 코딩
WO2020256506A1 (ko) 다중 참조 라인 인트라 예측을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020185047A1 (ko) 인트라 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2019199093A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2016200235A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2021040398A1 (ko) 팔레트 이스케이프 코딩 기반 영상 또는 비디오 코딩
WO2020256346A1 (ko) 변환 커널 세트에 관한 정보에 대한 코딩
WO2020251270A1 (ko) 서브블록 단위의 시간적 움직임 정보 기반 영상 또는 비디오 코딩
WO2020180043A1 (ko) Lmcs에 기반한 영상 코딩 방법 및 그 장치
WO2020197243A1 (ko) Smvd(symmetric motion vector difference)를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020149616A1 (ko) 영상 코딩 시스템에서 cclm 예측 기반 영상 디코딩 방법 및 그 장치
WO2018182185A1 (ko) 병렬 처리를 위한 움직임 정보를 처리하는 영상 처리 방법, 그를 이용한 영상 복호화, 부호화 방법 및 그 장치
WO2020251320A1 (ko) 서브블록 단위의 시간적 움직임 벡터 예측자 후보 기반 영상 또는 비디오 코딩
WO2021034160A1 (ko) 매트릭스 인트라 예측 기반 영상 코딩 장치 및 방법
WO2021015512A1 (ko) Ibc를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase
122 Ep: pct application non-entry in european phase

Ref document number: 15767690

Country of ref document: EP

Kind code of ref document: A1