[go: up one dir, main page]

KR20150010249A - Method and apparatus for improving memory efficiency through deriving limited motion information - Google Patents

Method and apparatus for improving memory efficiency through deriving limited motion information Download PDF

Info

Publication number
KR20150010249A
KR20150010249A KR1020130084981A KR20130084981A KR20150010249A KR 20150010249 A KR20150010249 A KR 20150010249A KR 1020130084981 A KR1020130084981 A KR 1020130084981A KR 20130084981 A KR20130084981 A KR 20130084981A KR 20150010249 A KR20150010249 A KR 20150010249A
Authority
KR
South Korea
Prior art keywords
motion information
block
motion
prediction
information
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
KR1020130084981A
Other languages
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 KR1020130084981A priority Critical patent/KR20150010249A/en
Publication of KR20150010249A publication Critical patent/KR20150010249A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0085Motion estimation from stereoscopic image signals

Landscapes

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

Abstract

제한적인 움직임 정보 유도를 통한 메모리 효율성을 향상시키는 방법 및 장치가 개시된다.
이 방법은 임의의 범위 내에서만 참조 시점의 참조 블록들에 대한 움직임 정보(움직임 벡터, 참조픽쳐 번호, 예측 방향 정보)를 유도하도록 제한하는 방법이다.
A method and apparatus are disclosed for improving memory efficiency through limited motion information derivation.
This method is a method for restricting motion information (motion vector, reference picture number, and prediction direction information) for reference blocks at reference time only within an arbitrary range.

Description

제한적인 움직임 정보 유도를 통한 메모리 효율성을 향상시키는 방법 및 장치{Method and apparatus for improving memory efficiency through deriving limited motion information}FIELD OF THE INVENTION [0001] The present invention relates to a method and apparatus for enhancing memory efficiency through the derivation of limited motion information,

본 발명은 비디오의 부호화/복호화 방법 및 장치에 관한 것으로써, 제한적인 움직임 정보 유도를 통한 메모리 효율성을 향상시키는 방법 및 장치에 관한 것이다.The present invention relates to a video encoding / decoding method and apparatus, and more particularly, to a method and apparatus for improving memory efficiency through limited motion information derivation.

3차원 비디오는 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차원 비디오 표준이 진행 중이다. 도 1을 참조하면, 3차원 비디오 표준은 실제 영상과 그것의 깊이정보 맵을 이용하여 스테레오스코픽 영상뿐만 아니라 오토스테레오스코픽 영상의 재생등을 지원할 수 있는 진보된 데이터 형식과 그에 관련된 기술에 대한 표준을 포함하고 있다.3D video provides users with a stereoscopic effect as if they are seeing and feeling in the real world through a 3D stereoscopic display device. As a result of this research, the Joint Collaborative Team on 3D Video Coding Extension Development (JCT-3V), a joint standardization group of ISO / IEC Moving Picture Experts Group (MPEG) and ITU-T VCEG (Video Coding Experts Group) Video standards are in progress. Referring to FIG. 1, a three-dimensional video standard uses a real image and its depth information map to provide an advanced data format capable of supporting reproduction of an autostereoscopic image as well as a stereoscopic image, .

3차원 비디오 표준에서 고려하고 있는 기본적인 3차원 비디오 시스템은 도 1과 같다. 송신 측에서는 스테레오 카메라, 깊이정보 카메라, 다시점 카메라, 2차원 영상을 3차원 영상으로 변환 등을 이용하여 N(N=2) 시점의 영상 콘텐츠를 획득한다. 획득된 영상 콘텐츠에는 N 시점의 비디오 정보와 그것의 깊이정보 맵(Depth-map) 정보 그리고 카메라 관련 부가정보 등이 포함될 수 있다. N 시점의 영상 콘텐츠는 다시점 비디오 부호화 방법을 사용하여 압축되며, 압축된 비트스트림은 네트워크를 통해 단말로 전송된다. 수신 측에서는 전송받은 비트스트림을 다시점 비디오 복호화 방법을 사용하여 복호화하여 N 시점의 영상을 복원한다. 복원된 N 시점의 영상은 깊이정보 맵 기반 랜더링(DIBR; Depth-Image-Based Rendering) 과정에 의해 N 시점 이상의 가상시점 영상들을 생성한다. 생성된 N 시점 이상의 가상시점 영상들은 다양한 입체 디스플레이 장치에 맞게 재생되어 사용자에게 입체감이 있는 영상을 제공하게 된다.The basic 3D video system considered in the 3D video standard is shown in FIG. On the transmitting side, the image contents of N (N = 2) time points are acquired by using a stereo camera, a depth information camera, a multi-view camera, and a two-dimensional image into a three-dimensional image. The obtained image content may include video information of the N view point, its depth map information, camera-related additional information, and the like. The video content at time point N is compressed using the multi-view video encoding method, and the compressed bitstream is transmitted to the terminal through the network. The receiving side decodes the transmitted bit stream using the multi-view video decoding method, and restores the N view image. The reconstructed N-view image generates virtual view images at N or more viewpoints by a depth-image-based rendering (DIBR) process. The generated virtual viewpoint images are reproduced in accordance with various stereoscopic display devices to provide stereoscopic images to the user.

가상시점 영상을 생성하는데 사용되는 깊이정보 맵은 실세계에서 카메라와 실제 사물(object) 간의 거리(실사 영상과 동일한 해상도로 각 화소에 해당하는 깊이정보)를 일정한 비트수로 표현한 것이다. 깊이정보 맵을 생성하는 방법은 카메라를 이용하여 획득하는 방법과 실제 일반 영상(Texture image)을 이용하여 자동적으로 생성하는 방법으로 나뉠 수 있다. 카메라를 이용하여 획득하는 방법의 경우, 깊이정보 카메라가 일정한 거리 내에서만 작동된다는 문제점이 있다. 반면, 실제 일반 영상을 이용하여 자동적으로 생성하는 방법의 경우, 두 일반 영상 간의 시점 차이(disparity)를 이용하여 깊이정보 맵을 생성한다. 다시 말하면, 현재 시점에서의 임의의 한 화소를 주변 시점에서의 화소들과 비교하여 매칭이 가장 잘되는 부분의 화소를 찾고, 그 화소들간의 거리를 깊이정보로 표현하는 방법이다. 실제 일반 영상을 이용하여 자동적으로 생성된 깊이정보 맵의 예로써, 도 2는 국제 표준화 기구인 MPEG의 3차원 비디오 부호화 표준에서 사용 중인 “balloons” 영상(도 2의 (a))과 그것의 깊이정보 맵(도 2의 (b))을 보여주고 있다. 실제 도 2의 깊이정보 맵은 화면에 보이는 깊이 정보를 화소당 8비트로 표현한 것이다.The depth information map used to generate the virtual viewpoint image is a representation of the distance between the camera and the actual object in the real world (depth information corresponding to each pixel at the same resolution as the real image) in a fixed number of bits. The method of generating the depth information map can be divided into a method of acquiring using a camera and a method of automatically generating an actual image using a texture image. In the case of a method of acquiring using a camera, there is a problem that the depth information camera operates only within a certain distance. On the other hand, in the case of a method of automatically generating using a real general image, a depth information map is generated using a disparity between two general images. In other words, the method compares an arbitrary one pixel at the current time with the pixels at the surrounding viewpoint, finds the pixel of the best matching area, and expresses the distance between the pixels by the depth information. As an example of a depth information map that is automatically generated using a real general image, FIG. 2 shows an example of a "balloons" image (FIG. 2 (a)) used in the 3D standardization of MPEG, And an information map (FIG. 2 (b)). The depth information map shown in FIG. 2 actually represents depth information on the screen in 8 bits per pixel.

실제 영상과 그것의 깊이정보 맵을 부호화하는 방법의 일예로, H.264/AVC(MPEG-4 Part 10 Advanced Video Coding)를 이용하여 부호화를 수행할 수 있으며, 또 다른 방법의 일 예로 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)에서 공동으로 표준화를 진행한 HEVC(High Efficiency Video Coding) 국제 동영상 표준를 사용할 수 있다.As an example of a method of encoding an actual image and its depth information map, encoding can be performed using H.264 / AVC (MPEG-4 Part 10 Advanced Video Coding), and another example of MPEG Picture Experts Group) and VCEG (Video Coding Experts Group), which are standardized by the High Efficiency Video Coding (HEVC).

HEVC에서는 영상을 효율적으로 부호화하기 위해서 CU(Coding Unit: CU, 이하 ‘CU’라 함)로 부호화를 수행한다. 도 3는 영상을 부호화할 때 CTU(Coding Tree Unit; 이하 'CTU'라 함. 혹은 CTU(LCU)(Largest Coding Unit)라고도 할 수 있음) 내에서 CU를 분할하는 방법을 나타낸 그림이다.The HEVC performs coding with a CU (CU) to efficiently encode an image. 3 is a diagram illustrating a method of dividing a CU within a CTU (Coding Tree Unit) (hereinafter, also referred to as CTU (LCU) (Largest Coding Unit)) when coding an image.

도 3와 같이 HEVC에서는 영상을 CTU(LCU) 단위로 순차적으로 분할한 후, CTU(LCU) 단위로 분할구조를 결정한다. 분할구조는 CTU(LCU) 내에서 영상을 효율적으로 부호화하기 위한 CU의 분포를 의미하는데, 이 분포는 CU를 크기가 가로 세로 절반씩 감소한 4개의 CU로 분할할지를 결정함으로써 결정할 수 있다. 분할된 CU는 같은 방식으로 가로 세로 절반씩 감소한 4개의 CU로 재귀적으로 분할할 수 있다. 이 때, CU의 분할은 미리 정의된 깊이까지 분할을 수행할 수 있는데, 깊이 정보(Depth)는 CU의 크기를 나타내는 정보로써 모든 CU에 저장되어 있다. 기본이 되는 CTU(LCU)의 깊이는 0이고, SCU의 깊이는 미리 정의된 최대 깊이이다. CTU(LCU)로부터 가로 세로 절반으로 분할을 수행할 때마다 CU의 깊이가 1씩 증가한다. 각각의 깊이 별로, 분할을 수행하지 않는 CU의 경우에는 2Nx2N의 크기로, 분할을 수행할 경우에는 NxN 크기의 CU 4개로 분할된다. N의 크기는 깊이가 1씩 증가할 때마다 절반으로 감소한다. 그림 5에서는 최소 깊이가 0인 CTU(LCU)의 크기가 64x64 화소이고, 최대 깊이가 3인 SCU(Smallest Coding Unit)의 크기가 8x8 화소인 예이다. 64x64 화소 CU(CTU(LCU))는 깊이 ‘0’으로 32x32 화소 CU는 깊이 ‘1’로 16x16 화소 CU는 깊이 ‘2’로 8x8 CU(SCU)는 깊이 ‘3’으로 표현된다. 또한 특정 CU를 분할할지에 대한 정보는 CU마다 1비트 정보인 분할 정보를 통해 표현한다. 이 분할 정보는 SCU를 제외한 모든 CU에 포함되어 있으며, CU를 분할하지 않을 경우에는 분할 정보에 ‘0’을 저장하고, 분할할 경우에는 ‘1’을 저장한다.As shown in FIG. 3, the HEVC sequentially divides an image into CTU (LCU) units, and then determines a divided structure by CTU (LCU) units. A partition structure means a distribution of CUs for efficiently encoding an image in a CTU (LCU), which distribution can be determined by determining whether the CU is divided into four CUs whose size is reduced by half the length and half. A partitioned CU can be recursively partitioned into four CUs, which are reduced in half by half in the same manner. At this time, the division of the CU can be performed to a predetermined depth. The depth information is information indicating the size of the CU and is stored in all the CUs. The depth of the underlying CTU (LCU) is zero, and the depth of the SCU is a predefined maximum depth. The depth of the CU increases by one every time a division is made in the horizontal and vertical halves from the CTU (LCU). For each depth, CUs that are not partitioned are sized to 2Nx2N, and when partitioning is performed, they are divided into 4 CUs of NxN size. The size of N decreases by half every time the depth increases by one. Figure 5 shows an example where the size of the smallest coding unit (SCU) with a minimum depth of 0 is 64 × 64 pixels and the maximum depth is 3 × 8 pixels. A 64x64 pixel CU (CTU (LCU)) has a depth of '0', a 32x32 pixel CU has a depth of 1, a 16x16 pixel CU has a depth of 2, and an 8x8 CU (SCU) has a depth of 3. Also, information on whether to divide a specific CU is represented by division information, which is 1-bit information for each CU. This partition information is included in all the CUs except for the SCU. When not partitioning the CU, '0' is stored in the partition information, and '1' is stored in case of partitioning.

이러한 CU는 부호화 단위로써, 하나의 CU단위로 부호화 모드를 가질 수 있다. 즉, CU 각각은 화면 내 부호화 (MODE_INTRA 혹은 INTRA라고 할 수도 있음) 모드 혹은 화면 간 부호화 (MODE_INTER 혹은 INTER라고 할 수도 있음) 모드로 나누어 질 수 있다. 화면 간 부호화 (MODE_INTER) 모드에는 MODE_INTER 모드와 MODE_SKIP (SKIP이라고 할 수도 있음) 모드로 구분될 수 있다.Such a CU is an encoding unit and can have a coding mode in units of one CU. That is, each of the CUs can be divided into intra picture coding (also referred to as MODE_INTRA or INTRA) mode or inter picture coding (also referred to as MODE_INTER or INTER). The inter-picture coding (MODE_INTER) mode can be divided into a MODE_INTER mode and a MODE_SKIP (also referred to as SKIP) mode.

PU(Prediction Unit)는 예측의 단위로서, 도 4과 같이 하나의 CU는 여러 개의 PU(Prediction Unit: PU, 이하 ‘PU’라 함)들로 분할되어 예측이 수행될 수 있다. 하나의 CU의 부호화 모드가 INTRA 라면, 그 CU내의 PU들은 모두 INTRA 로 부호화 되고, 하나의 CU의 부호화 모드가 INTER 라면, 그 CU내의 PU들은 모두 INTER 로 부호화된다. 실시 일예로, 하나의 CU가 INTRA 일 경우, PU의 분할 구조는 PU 2Nx2N과 PU NxN만 가질 수 있다. 실시 일예로, 하나의 CU가 INTER라면 PU는 도 4의 모든 분할 구조를 가질 수 있다. PU (Prediction Unit) is a unit of prediction. As shown in FIG. 4, one CU may be divided into several PUs (PUs) to be predicted. If the coding mode of one CU is INTRA, all the PUs in the CU are encoded into INTRA, and if the encoding mode of one CU is INTER, all the PUs in the CU are encoded into INTER. For example, when one CU is INTRA, the partition structure of the PU may include only PU 2Nx2N and PU NxN. For example, if one CU is INTER, then the PU may have all of the partition structures of FIG.

실제 영상과 그것의 깊이정보맵은 카메라 하나뿐만아니라 여러 개의 카메라에서 획득한 영상일 수 있다. 여러 개의 카메라에서 획득한 영상은 독립적으로 부호화될 수 있으며, 일반적인 2차원 비디오 부호화 코덱을 사용할 수 있다. 또한, 여러 개의 카메라에서 획득한 영상은 시점 간의 상관성이 존재하므로, 부호화 효율을 높이기 위하여 서로 다른 시점간 예측을 사용하여 영상들을 부호화할 수 있다. 일 실시 예로, 도 5은 카메라 3대에서 획득한 영상들에 대한 시점간 예측 구조의 일예를 나타낸다.The actual image and its depth information map can be images obtained from multiple cameras as well as one camera. Images obtained from multiple cameras can be independently encoded, and a general two-dimensional video coding codec can be used. In addition, since images acquired from a plurality of cameras have correlation between viewpoints, images can be encoded using different inter-view prediction in order to increase the encoding efficiency. In one embodiment, FIG. 5 shows an example of an inter-view prediction structure for images acquired from three cameras.

도 5에서, 시점 1(View 1)은 시점 0(View 0)을 기준으로 왼쪽에 위치한 카메라에서 획득한영상이고, 시점 2(View 2)는 시점 0(View 0)을 기준으로 오른쪽에 위치한 카메라에서 획득한 영상이다. 또한, 시점 1(View 1)과 시점 2(View 2)는 시점 0(View 0)을 참조 영상으로 사용하여 시점 간 예측을 수행하며, 부호화 순서는 시점 1(View 1)과 시점 2(View 2)보다 시점 0(View 0)이 먼저 부호화되어야 한다. 이때, 시점 0(View 0)은 다른 시점과 상관없이 독립적으로 부호화될 수 있으므로 독립적인 시점(Independent View)이라고 한다. 반면, 시점 1(View 1)과 시점 2(View 2)는 시점 0(View 0)을 참조 영상으로 사용하므로 의존적인 시점(Dependent View)라고 한다. 독립적인 시점 영상은 일반적인 2차원 비디오 코덱을 사용하여 부호화 될 수 있다. 반면, 의존적인 시점 영상은 시점간 예측을 수행하여야 하므로, 시점간 예측 과정이 포함된 3차원 비디오 코덱을 사용하여 부호화할 수 있다. 5, view 1 is an image acquired from a camera located on the left side based on view 0 (View 0), view 2 (view 2) is an image acquired from a camera located on the right side based on view 0 . View 1 and View 2 perform inter-view prediction using View 0 as a reference picture and the coding order is View 1 and View 2 (View 0) must be encoded first. At this time, View 0 can be independently encoded regardless of other viewpoints, so it is referred to as an independent view. On the other hand, View 1 and View 2 are called Dependent View because View 0 is used as a reference image. The independent viewpoint image can be encoded using a general two-dimensional video codec. On the other hand, since the dependent view image must perform the inter-view prediction, it can be encoded using the 3D video codec including the inter-view prediction process.

또한, 시점 1(View 1)과 시점 2(View 2)의 부호화 효율을 증가시키기 위하여 깊이정보 맵을 이용하여 부호화 할 수 있다. 일예로, 실제 영상과 그것의 깊이정보 맵을 부호화할 때, 서로 독립적으로 부호화/복호화할 수 있다. 또한 실제 영상과 깊이정보 맵을 부호화할 때, 도 6와 같이 서로 의존적으로 부호화/복호화 할 수 있다. 일 실시 예로, 이미 부호화된/복호화된 깊이정보맵을 이용하여 실제 영상을 부호화/복호화할 수 있으며, 반대로 이미 부호화된/복호화된 실제 영상을 이용하여 깊이정보맵을 부호화/복호화할 수 있다.Also, in order to increase the coding efficiency of view 1 (view 1) and view 2 (view 2), it is possible to encode using depth information map. For example, when an actual image and its depth information map are encoded, they can be independently encoded / decoded. Also, when the actual image and the depth information map are encoded, they can be encoded / decoded dependently on each other as shown in FIG. In one embodiment, an actual image can be encoded / decoded using an already-encoded / decoded depth information map, and conversely, a depth information map can be encoded / decoded using an already encoded / decoded real image.

일 실시 예로, 카메라 3대에서 획득한 실제 영상과 그것의 깊이정보맵을 부호화하기 위한 부호화 예측 구조를 도 7에 나타내었다. 도 7에서 3개의 실제 영상을 시점에 따라 T0, T1, T2로 나타내었고, 실제 영상과 동일한 위치의 3개의 깊이정보맵을 시점에 따라 D0, D1, D2로 나타내었다. 여기서 T0와 D0는 시점 0(View 0)에서 획득한 영상이며, T1와 D1는 시점 1(View 1)에서 획득한 영상이며, T2와 D2는 시점 2(View 2)에서 획득한 영상이다. 각 픽쳐는 I(Intra Picture), P(Uni-prediction Picture), B(Bi-prediction Picture)로 부호화될 수 있다. 도 7에서 화살표는 예측 방향을 나타낸다. 즉, 실제 영상과 그것의 깊이정보맵은 서로 의존적으로 부호화/복호화된다.In one embodiment, an encoding prediction structure for encoding an actual image obtained in three cameras and a depth information map thereof is shown in Fig. In FIG. 7, three actual images are shown as T0, T1, and T2 according to the viewpoint, and three depth information maps at the same position as the actual image are shown as D0, D1, and D2 according to the viewpoint. Here, T0 and D0 are images obtained at View 0, T1 and D1 are images acquired at View 1, and T2 and D2 are images acquired at View 2, respectively. Each picture can be encoded into I (Intra Picture), P (Uni-prediction Picture), and B (Bi-prediction Picture). In Fig. 7, arrows indicate prediction directions. That is, the actual image and its depth information map are encoded / decoded depending on each other.

실제 영상에서 현재 블록의 움직임 정보(움직임 벡터만을 의미할 수 있으며, 혹은 움직임벡터와 참조영상 번호와 단방향 예측인지 양방향 예측인지 그리고 시점간 예측인지 시간적 예측인지 또다른 예측인지를 의미할 수도 있다.)를 유추하기 위한 방법은 크게 시간적 예측과 시점간 예측으로 나뉜다. 시간적 예측은 동일한 시점 내에서 시간적 상관성을 이용한 예측 방법이고, 시점간 예측은 인접한 시점에서 시점간 상관성을 이용한 예측 방법이다. 이러한 시간적 예측과 시점간 예측은 한 픽쳐에서 서로 혼용되어 사용될 수 있다. It may mean motion information of current block (only motion vector of the current block in the real image, or motion vector, reference picture number, unidirectional prediction, bi-directional prediction, inter-view prediction, temporal prediction or other prediction). The method for inferring is divided into temporal prediction and inter-view prediction. Temporal prediction is a prediction method using temporal correlation within the same time, and inter-view prediction is a prediction method using inter-view correlation at an adjacent time. Such temporal prediction and inter-view prediction can be used in combination with each other in one picture.

영상 부호화/복호화 시 움직임 정보의 부호화 방법 중 하나로 병합 움직임(merge) 방법을 이용한다. 이때 움직임 정보란, 움직임 벡터, 참조영상에 대한 인덱스 그리고 예측 방향(단방향, 양방향, 등) 중에서 적어도 하나를 포함하는 정보다. 예측 방향은 참조픽쳐목록(Reference Picture List; RefPicList)의 사용에 따라 크게 단방향 예측과 양방향 예측으로 나누어 질 수 있다. 단방향 예측에는 순방향 참조픽쳐목록 (LIST 0)을 사용한 순방향 예측(Pred_L0; Prediction L0)과 역방향 참조픽쳐목록 (LIST 1)을 사용한 역방향 예측(Pred_L1; Prediction L1)으로 구분된다. 또한, 양방향 예측(Pred_BI; Prediction BI)은 순방향 참조픽쳐목록 (LIST 0)와 역방향 참조픽쳐목록 (LIST 1)을 모두 사용하며, 순방향 예측과 역방향 예측이 모두 존재하는 것을 말할 수 있다. 또한, 순방향 참조픽쳐목록 (LIST 0)을 역방향 참조픽쳐목록 (LIST 1)에 복사하여 순방향 예측이 두개 존재하는 경우도 양방향 예측에 포함할 수 있다. 이러한 예측 방향 여부를 predFlagL0, predFlagL1를 사용하여 정의할 수 있다. 실시 일예로, 단방향 예측이고 순방향 예측일 경우 predFlagL0는 '1'이 되고 predFlagL1은 '0'이 될 수 있다. 또한, 단방향 예측이고 역방향 예측일 경우 predFlagL0는 '0'이 되고 predFlagL1은 '1'이 될 수 있다. 또한, 양방향 예측일 경우 predFlagL0는 '1'이 되고 predFlagL1은 '1'이 될 수 있다. A merge method is used as a method of coding motion information in image encoding / decoding. At this time, the motion information is information including at least one of a motion vector, an index for a reference image, and a prediction direction (unidirectional, bidirectional, etc.). The prediction direction can be largely divided into unidirectional prediction and bidirectional prediction according to use of a reference picture list (Ref PictureList). The unidirectional prediction is divided into forward prediction (Pred_L0) using the forward reference picture list (LIST0) and backward prediction (Pred_L1; Prediction L1) using the reverse reference picture list (LIST1). The bidirectional prediction (Pred_BI) uses both the forward reference picture list (LIST 0) and the backward reference picture list (LIST 1), and both the forward prediction and the backward prediction are present. In addition, the forward reference picture list (LIST0) may be copied to the reverse reference picture list (LIST1), and two forward prediction may be included in the bidirectional prediction. The prediction direction can be defined using predFlagL0, predFlagL1. For example, in the case of unidirectional prediction and forward prediction, predFlagL0 may be '1' and predFlagL1 may be '0'. In case of unidirectional prediction and backward prediction, predFlagL0 may be '0' and predFlagL1 may be '1'. In case of bi-directional prediction, predFlagL0 may be '1' and predFlagL1 may be '1'.

병합 움직임은 부호화 유닛(Coding Unit: CU, 이하 ‘CU’라 함) 단위의 병합 움직임과 예측 유닛(Prediction Unit: PU, 이하 ‘PU’라 함) 단위의 병합 움직임이 가능하다. CU또는 PU(이하, 설명의 편의를 위해 ‘블록’이라 함) 단위로 병합 움직임을 수행하는 경우에는, 블록 파티션(partition)별로 병합 움직임을 수행할지에 관한 정보와 현재 블록에 인접한 주변 블록(현재 블록의 좌측 인접 블록, 현재 블록의 상측 인접 블록, 현재 블록의 시간적(temporral) 인접 블록 등) 중 어떤 블록과 병합 움직임을 할 것인지에 대한 정보를 전송할 필요가 있다.The merging motion can be a merge motion in units of a coding unit (CU) and a merging motion in units of a prediction unit (PU). In the case of performing a merge movement in units of a CU or a PU (hereinafter, referred to as a 'block' for convenience of description), information on whether to perform a merge movement for each block partition and information on whether to perform a merge movement on neighboring blocks It is necessary to transmit information on which of the blocks adjacent to the left side of the block, the adjacent block on the upper side of the current block, the temporally neighboring block of the current block, etc., is to be merged.

병합 움직임(merge) 후보 리스트(List)은 움직임 정보들이 저장된 리스트을 나타내며, 병합 움직임이 수행되기 전에 생성된다. 여기서 병합 움직임 후보 리스트에 저장되는 움직임 정보는 현재 블록에 인접한 주변 블록의 움직임 정보이거나 참조 영상에서 현재 블록에 대응되는(collocated) 블록의 움직임 정보일 수 있다. 또한 병합 움직임 후보 리스트에 저장되는 움직임 정보는 이미 병합 움직임 후보 리스트에 존재하는 움직임 정보들을 조합하여 만든 새로운 움직임 정보일 수 있다.The merge candidate list (List) represents a list in which the motion information is stored, and is generated before the merge movement is performed. Here, the motion information stored in the merged motion candidate list may be motion information of a neighboring block adjacent to the current block or motion information of a collocated block corresponding to the current block in the reference image. Also, the motion information stored in the merged motion candidate list may be new motion information created by combining motion information already present in the merged motion candidate list.

병합 움직임 후보 리스트는 도 8의 주변 블록(A, B, C, D, E)과 그리고 동일 위치의 후보 블록(H(혹은 M))에 대하여 해당 블록의 움직임 정보가 현재 블록의 병합 움직임에 이용될 수 있는지를 판단하여, 이용 가능한 경우에는 해당 블록의 움직임 정보를 병합 움직임 후보 리스트에 입력할 수 있다. 또한, 각 주변 블록은 서로 동일한 움직임 정보를 가지는지 확인하여 동일한 움직임 정보일 경우, 해당 주변 블록의 움직임 정보는 병합 움직임 후보 리스트에 포함되지 않는다. 실시 일 예로, 도 8에서 X 블록에 대한 병합 움직임 후보 리스트를 생성할 때, 주변 블록 A가 사용가능하여 병합 움직임 후보 리스트에 포함된 후, 주변 블록 B는 주변 블록 A와 동일한 움직임 정보가 아닐 경우에만, 병합 움직임 후보 리스트에 포함될 수 있다. 동일한 방법으로 주변 블록 C는 주변 블록 B와 동일한 움직임 정보가 아닐 경우에만 병합 움직임 후보 리스트에 포함될 수 있다. 동일한 방법으로 주변 블록 D와 주변 블록 E에 적용될 수 있다. 여기서 동일한 움직임 정보라는 것은 움직임 벡터가 동일하고 동일한 참조픽쳐를 사용하고 동일한 예측 방향(단방향(정방향, 역방향), 양방향)을 사용함을 의미할 수 있다. 마지막으로 도 8에서 X 블록에 대한 병합 움직임 후보 리스트는 소정의 순서, 예컨대, A→B→C→D→E→H(혹은 M) 블록 순서로 리스트에 추가될 수 있다.The merged motion candidate list is used for motion information of the current block in the neighboring blocks A, B, C, D, and E and the candidate block H (or M) And if it is available, the motion information of the block can be input to the merged motion candidate list. Also, if each neighboring block has the same motion information, the motion information of the neighboring block is not included in the merged motion candidate list. For example, when generating a merged motion candidate list for X block in FIG. 8, if neighboring block A is available and included in the merged motion candidate list, neighboring block B is not the same motion information as neighboring block A Only candidate merging motion candidate list. In the same way, the neighboring block C can be included in the merged motion candidate list only when it is not the same motion information as the neighboring block B. Can be applied to the peripheral block D and the peripheral block E in the same way. Here, the same motion information may mean that the same motion vector is used and the same reference picture is used and the same prediction direction (unidirectional (forward, reverse), bidirectional) is used. Finally, in FIG. 8, the merged motion candidate list for the X block may be added to the list in a predetermined order, for example, A → B → C → D → E → H (or M) block order.

3차원 비디오 부호화에서는 움직임 정보를 효율적으로 부호화하기 위하여, 인접한 시점의움직임 정보를 이용할 수 있다. 도 9는 인접한 시점의 움직임 정보를 이용하여 현재 블록의 움직임 정보를 유도하는 방법의 일예를 나타낸다.In the three-dimensional video coding, in order to efficiently encode motion information, motion information at an adjacent time point can be used. FIG. 9 shows an example of a method of deriving motion information of a current block using motion information at an adjacent time.

도 9에서 현재 블록(현재 위치 X에 대한 블록)에 대한 움직임 정보를 인접한 시점에서 유도하기 위하여, 인접한 시점에서 현재 블록의 움직임 정보와 가장 유사할 것 같은 대상 블록(참조 위치 XR에 대한 블록)을 찾는다. 현재 시점에서의 현재 픽쳐와 인접한 참조 시점에서 현재 픽쳐는 카메라 거리만의 차이가 있으므로, 인접한 시점에서 현재 블록과 가장 유사한 대상 블록은 변이 벡터(DV; Disparity Vector)를 통해 그 위치를 유도할 수 있다. In FIG. 9, in order to derive the motion information for the current block (the block for the current position X) at an adjacent point in time, a target block (block for the reference position XR) most similar to the motion information of the current block at the adjacent point Find. Since the current picture is different only in the camera distance at the reference point adjacent to the current picture at the current point of time, the object block closest to the current block at the adjacent point in time can be derived from the displacement vector DV (Disparity Vector) .

변이 벡터를 유도하기 위해서 현재 블록의 주변 블록들을 이용하는 방법과 현재 블록과 연관된 깊이정보 맵을 이용하는 방법을 각각 이용할 수 있으며, 혼합하여 이용할 수 있다. 먼저, 시점간 예측 블록의 움직임 정보는 변이 벡터를 의미하므로, 현재 블록의 주변 블록들에서 시점간 예측을 수행한 블록을 찾아서 그 블록의 움직임 정보를 변이 벡터로 사용할 수 있다. 다음으로 깊이정보 맵이 두 시점간의 시점간 차이를 통해 생성되었으므로, 현재 블록과 연관된 깊이정보 맵 블록의 깊이정보 값을 변이 벡터로 변환하여 사용할 수 있다. A method of using neighboring blocks of the current block and a method of using a depth information map associated with the current block may be used to derive a variation vector, respectively, and they may be used in combination. First, since the motion information of the inter-view prediction block indicates the disparity vector, the inter-view prediction is performed in the neighboring blocks of the current block, and the motion information of the current block can be used as the disparity vector. Next, since the depth information map is generated through the time difference between the two view points, the depth information value of the depth information map block associated with the current block can be converted into a variation vector.

이러한 찾은 변이 벡터를 이용하여 참조 시점의 현재 픽쳐에서 현재 블록의 현재 위치 X와 연관된 참조 위치 XR을 포함하는 대상 블록을 찾은 다음, 그 대상 블록의 움직임 정보를 현재 블록의 움직임 정보로 사용할 수 있다.The target block including the reference position XR associated with the current position X of the current block in the current picture at the reference time is found using the found variation vector and motion information of the current block can be used as motion information of the current block.

아래의 내용은 상술한 방법에 따른 움직임 정보 유도 과정을 3D-HEVC Test Model 3를 기반으로 하여 설명한 것이다.
The following describes the process of deriving motion information according to the above-described method based on the 3D-HEVC Test Model 3.

3D-HEVC Test Model 3에서 사용되는 용어 및 계산식Terms and formulas used in 3D-HEVC Test Model 3

- PredMode; 현재 PU(Prediction Unit) 블록의 부호화 모드를 나타내며, MODE_SKIP, MODE_INTRA, MODE_INTER 가 존재한다. - PredMode; Indicates the encoding mode of the current PU (Prediction Unit) block, and MODE_SKIP, MODE_INTRA, and MODE_INTER are present.

- RefPicListX; 참조픽쳐리스트로서, 여기서 X는 '0' 또는 '1'이 될수 있다. 일예로, X가 0이면(즉, RefPicList0 이라면), L0 참조픽쳐 리스트를 사용한다.- RefPicListX; As a reference picture list, X may be '0' or '1'. For example, if X is 0 (i.e., RefPicList0), the L0 reference picture list is used.

- PicWidthInSamplesL ; 현재 픽쳐에서 너비- PicWidthInSamplesL; Width in current picture

- PicHeightInSamplesL ; 현재 픽쳐에서 높이- PicHeightInSamplesL; Height in current picture

- CtbSizeY; 현재 CTU(혹은 LCU)의 높이
- CtbSizeY; The height of the current CTU (or LCU)

[수학식 1][Equation 1]

Figure pat00001

Figure pat00001

시간적인 시점간 움직임 벡터를 유도하는 과정The process of deriving a temporal motion vector between temporal points

이 단계에서 입력은 아래와 같다The inputs at this stage are as follows

- 현재 PU 블록의 좌상단 위치; (xP, yP)- the upper left position of the current PU block; (xP, yP)

- 현재 PU 블록의 너비와 높이를 가르키는 변수; (nPSW, nPSH)- variable indicating the width and height of the current PU block; (nPSW, nPSH)

- 참조 픽쳐 리스트 구분자; X (일예로, X가 0이면, L0 참조픽쳐 리스트를 사용한다.)Reference picture list delimiter; X (for example, if X is 0, use the L0 reference picture list).

- 참조 시점 인덱스; refViewIdx- reference point index; refViewIdx

- 변이 벡터; mvDisp- mutation vectors; mvDisp

- Merge_flag; 현재 PU블록이 merge 모드로 부호화되었는지를 나타낸다. 현재 PU블록이 merge 모드로 부호화되었다면, Merge_flag가 ‘1’로 설정하며, 그 반대로도 할 수 있다. - Merge_flag; Indicates whether the current PU block is coded in the merge mode. If the current PU block is coded in the merge mode, Merge_flag is set to '1' and vice versa.

- RefPicListX에서 참조 픽쳐를 지시하는 인덱스; refIdxLX (여기서 X는 '0' 또는 '1'이 될수 있다.)An index indicating a reference picture in RefPicListX; refIdxLX (where X can be either '0' or '1')

이 단계에서 출력은 아래와 같다.The output at this stage is shown below.

- 시간적인 시점간 움직임 벡터가 유효한지 여부를 나타내는 플래그; availableFlagLXInterViewA flag indicating whether or not a temporal inter-view motion vector is valid; availableFlagLXInterView

- 시간적인 시점간 움직임 벡터 후보; mvLXInterView (만일, availableFlagLXInterView가 참일 경우) (여기서 X는 '0' 또는 '1'이 될수 있다.)- Temporal inter-view motion vector candidates; mvLXInterView (if availableFlagLXInterView is true) (where X can be either '0' or '1')

- RefPicListX에서 참조 픽쳐를 지시하는 인덱스; refIdxLX
An index indicating a reference picture in RefPicListX; refIdxLX

availableFlagLXInterView 를 '0'으로 초기화한다.Initialize availableFlagLXInterView to '0'.

mvL0InterView와 mvL1InterView을 '0'으로 초기화한다.
Initialize mvL0InterView and mvL1InterView to '0'.

변이 벡터를 이용하여, 참조 시점에서 현재 블록에 대한 참조 블록의 위치를 아래와 같이 유도한다.
The position of the reference block with respect to the current block at the reference time is derived as follows using the mutation vector.

[수학식 2]&Quot; (2) "

Figure pat00002

Figure pat00002

refViewIdx 값으로 설정된 ViewIdx에 대한 참조 시점 영상에서, 위에서 유도된 (xRef, yRef) 위치를 포함하는 부호화 코딩 블록을 refCU 라고 하자.In the reference view image for ViewIdx set to the refViewIdx value, let the encoded coding block containing the (xRef, yRef) position derived above be refCU.

refCU의 PredMode가 MODE_SKIP이거나 혹은 MODE_INTER일 경우, 아래의 과정을 수행한다. (여기서 변수 Y는 X 에서 (1-X)의 범위를 갖는다.) If PredMode of refCU is MODE_SKIP or MODE_INTER, perform the following procedure. (Where the variable Y ranges from (1-X) in X).

1. refPredFlagLY에 refPU의 refIdxLX를 설정한다.1. Set refIdxLX of refPU to refPredFlagLY.

2. refMvLY에 refPU의 mvLY를 설정한다.2. Set mVLY of refPU to refMvLY.

3. refRefPicListLY에 refPU의 RefPicListLY를 설정한다.3. Set refPicListLY of refPU to refRefPicListLY.

4. refPredFlagLY가 '참'이면, 다음의 과정을 i 가 (mergeFlag ? 0 : refIdxLX) 부터 (mergeFlag ? num_ref_idx_1X_active_minus1 : refIdxLX) 까지 수행한다. 4. If refPredFlagLY is 'true', perform the following steps from i (mergeFlag? 0: refIdxLX) to (mergeFlag? Num_ref_idx_1X_active_minus1: refIdxLX).

A. availableFlagLXInterView 가 '0'이고 refRefPicListLY[refRefIdxLY]의 POC(Picture Order Count)가 RefPicListLX[i]의 POC와 같으면, availableFlagLXInterView를 '1'로 설정하고 다음을 수행한다.A. If availableFlagLXInterView is '0' and the POC (Picture Order Count) of refRefPicListLY [refRefIdxLY] is equal to the POC of RefPicListLX [i], set availableFlagLXInterView to '1' and do the following:

i. mvLXInterView 는 다음과 같이 유도된다.i. mvLXInterView is derived as follows.

mvLXInterView[0] = refMvLY[0] mvLXInterView [0] = refMvLY [0]

mvLXInterView[1] = refMvLY[1]mvLXInterView [1] = refMvLY [1]

ii. mergeFlag가 '1'이면, refIdxLX는 다음과 같이 유도된다.ii. If mergeFlag is '1', refIdxLX is derived as follows.

refIdxLX = i
refIdxLX = i

o 수직 방향 유도에서의 문제점o Problems with vertical guidance

수평 방향으로 설치된 카메라들은 그 위치와 방향에 오류가 있을 수 있다. 이러한 비 정렬된 다시점 영상에 대한 오류를 최소화하기 위하여, 다시점 영상들에 수직시차보정 즉, 편위수정(rectification)을 수행한다. 편위 수정(rectification)된 다시점 영상이라 하더라도, 오차가 있을 수 있다. 또한, 카메라 내에서 수직 방향의 움직임을 가진 객체들이 존재할 수 있으며, 이는 카메라의 촬영 시간 오차로 인해 시점 간의 수직 방향에서의 움직임 차이가 생길 수 있다. 따라서, 도 9의 과정에서 주변 블록으로부터 유도된 변이 벡터(DV; Disparity Vector)는 수평 방향 성분과 수직 방향 성분을 모두 가질 수 있다. Cameras installed horizontally may have errors in their position and orientation. In order to minimize the error of the unaligned multi-view image, vertical parallax correction or rectification is performed on the multi-view images. Even if a multi-view image is rectified, there may be an error. In addition, there may exist objects having vertical motion in the camera, which may cause a difference in movement in the vertical direction between the viewpoints due to the shooting time error of the camera. Accordingly, in the process of FIG. 9, a disparity vector (DV) derived from a neighboring block may have both a horizontal direction component and a vertical direction component.

도 10은 현재 LCU (혹은 CTU) M의 임의의 블록 A, B, C에 대하여, 주변 블록으로부터 유도된 변이 벡터(DV)를 이용하여 찾은 참조 블록들의 일예를 나타낸다.FIG. 10 shows an example of reference blocks found using a variation vector DV derived from a neighboring block for any block A, B, and C of the current LCU (or CTU) M.

도 10에서 도시된 것과 같이, 주변 블록으로부터 유도된 변이 벡터(DV)의 수직 방향 성분으로 인해, 참조 블록이 원래 위치보다 위 아래로 이동한 것을 확인할 수 있다. 이때, 참조 시점의 참조 블록들에 대한 움직임 정보를 빠르고 쉽게 접근하기 위해서는 움직임 정보(움직임 벡터, 참조픽쳐 번호, 예측 방향 정보)가 내부 메모리상에 존재하여야 한다. 그렇지 않고 참조 블록들의 움직임 정보가 외부 메모리에 존재할 경우, 필요할 때마다 외부 메모리에서 내부 메모리로 읽어와야 하므로, 메모리 대역폭을 증가시키는 원인이 된다.As shown in Fig. 10, it can be confirmed that the reference block has moved up and down from its original position due to the vertical component of the variation vector DV derived from the neighboring block. In this case, motion information (motion vector, reference picture number, and prediction direction information) must exist in the internal memory in order to quickly and easily access the motion information on the reference blocks at the reference time. Otherwise, if the motion information of the reference blocks exists in the external memory, it must be read from the external memory to the internal memory whenever necessary, thereby increasing the memory bandwidth.

도 11은 현재 LCU (혹은 CTU) M의 임의의 블록 A, B, C에 대하여, 부호화 및 복호화하는 단계에서 움직임 정보를 유도하기 위해 요구되는 메모리 사용량의 일예를 나타낸다.FIG. 11 shows an example of the memory usage required to derive motion information in the coding and decoding steps for arbitrary blocks A, B, and C of the current LCU (or CTU) M.

도 11을 참고하면, 현재 LCU (혹은 CTU) M의 임의의 블록 A, B, C 에 대한 움직임 정보를 유도하기 위해서는 현재 블록의 수평 위치에 대한 움직임 정보(1번 부분)뿐만아니라 위쪽 블록(2번 부분)과 아래쪽 블록(3번 부분)의 움직임 정보들이 필요하다. 즉, 최소 3개 LCU 에 대한 참조 블록들의 움직임 정보가 필요하다. 또한, 현재 블록에 대한 부호화 및 복호화 속도를 감소시키기 위해서, 이러한 참조 블록들의 움직임 정보는 내부 메모리 상에 존재하여야 한다.11, in order to derive the motion information for any block A, B, and C of the current LCU (or CTU) M, not only the motion information about the horizontal position of the current block (first portion) And motion information of the lower block (part 3) are required. That is, motion information of reference blocks for at least three LCUs is required. Also, in order to reduce the coding and decoding speed for the current block, the motion information of these reference blocks must be present in the internal memory.

하지만, 참조 블록들의 움직임 정보를 내부 메모리에 가지고 있을 경우, 제한된 내부 메모리의 용량 때문에 한계가 따른다. 더구나, 현재 부호화하고자 하는 영상의 크기가 FHD (1920x1088) 이상의 크기일 경우, 내부 메모리에 저장되는 참조 블록들의 움직임 정보의 양이 상당히 많다. 따라서, 저장해야할 참조 블록들의 움직임 정보를 줄이기 위한 방안이 필요하다.However, when motion information of reference blocks is stored in the internal memory, the limitation is imposed due to the limited internal memory capacity. In addition, when the size of the current image to be encoded is larger than FHD (1920x1088), the amount of motion information of the reference blocks stored in the internal memory is considerably large. Therefore, a method for reducing motion information of reference blocks to be stored is needed.

본 발명의 특징은 임의의 범위 내에서만 참조 시점의 참조 블록들에 대한 움직임 정보(움직임 벡터, 참조픽쳐 번호, 예측 방향 정보)를 유도하도록 제한하는 방법를 제공한다.The feature of the present invention is to provide a method for restricting movement information (motion vector, reference picture number, prediction direction information) for reference blocks at a reference time point only within a certain range.

임의의 범위 내에서만 참조 시점의 참조 블록들에 대한 움직임 정보(움직임 벡터, 참조픽쳐 번호, 예측 방향 정보)를 유도하도록 제한하는 방법을 통해, 메모리 효율성을 향상시킨다. The memory efficiency is improved through a method of restricting motion information (motion vector, reference picture number, and prediction direction information) for the reference blocks at the reference time only within an arbitrary range.

도 1. 3차원 비디오 시스템의 기본 구조와 데이터 형식
도 2. “balloons” 영상의 실제 영상과 깊이정보 맵 영상의 일 예: (a) 실제 영상, (b) 깊이정보 맵
도 3. CTU(CTU(LCU))를 CU단위로 분할하는 방법의 일 예
도 4. PU의 분할 구조의 일 예
도 5. 3D Video Codec에서 시점 간 예측 구조의 일예
도 6. 3D Video Encoder/Decoder의 실시 일예
도 7. 3D Video Codec의 예측 구조의 일 예
도 8. 병합 움직임 후보 리스트로 사용되는 현재 블록의 주변 블록들의 일예
도 9. 인접한 시점의 움직임 정보를 이용하여 현재 블록의 움직임 정보를 유도하는 방법의 일예
도 10. 주변 블록으로부터 유도된 변이 벡터(DV)를 이용하여 찾은 참조 블록들의 일예
도 11. 움직임 정보를 유도하기 위해 요구되는 메모리 사용량의 일예
도 12. 제안 방법의 개념도의 일예
도 13. 제안 방법의 기본 구조도의 일예
Figure 1. Basic structure and data format of 3D video system
2. An example of a real image of a "balloons" image and a depth information map image: (a) a real image, (b) a depth information map
3. An example of a method of dividing a CTU (CTU (LCU)) into CU units
Figure 4. Example of partition structure of PU
Figure 5. An example of the inter-view prediction structure in 3D Video Codec
Figure 6. Implementation of 3D Video Encoder / Decoder
Figure 7. Example of the prediction structure of 3D Video Codec
8. An example of neighboring blocks of a current block used as a merging motion candidate list
9. An example of a method of deriving motion information of a current block using motion information at an adjacent time
Figure 10. An example of reference blocks found using a variation vector (DV) derived from a neighboring block.
Figure 11. An example of memory usage required to derive motion information.
Figure 12. An example of a conceptual diagram of the proposed method
Figure 13. An example of the basic structure of the proposed method

본 발명에서는 내부 메모리를 효율적으로 사용하기 위하여, 임의의 범위 내에서만 참조 시점의 참조 블록들에 대한 움직임 정보(움직임 벡터, 참조픽쳐 번호, 예측 방향 정보)를 유도하도록 제한하는 방법을 제안한다.In order to efficiently use the internal memory, the present invention proposes a method of restricting motion information (motion vectors, reference picture numbers, and prediction direction information) for reference blocks at reference time points within a certain range.

도 12는 제안 방법의 개념도의 일예를 나타낸다. Fig. 12 shows an example of a conceptual diagram of the proposed method.

도 12에서 현재 LCU (혹은 CTU) M의 임의의 블록 A와 C의 참조 블록(A'와 C')은 임의의 범위(1번 부분, 일예로 1개 LCU 크기)내에 존재하지 않는다. 따라서, 임의의 범위내에 존재하도록 하기 위하여, 참조 블록(A'와 C')을 유도하기 위해 변이 벡터(DV)의 수직 방향 성분을 임의의 범위 내로 클리핑(clipping)을 수행한다. 그 후 클리핑된 변이 벡터(DV)를 이용하여 현재 블록에 대한 참조 블록을 유도한다.In FIG. 12, the reference blocks A 'and C' of any of the blocks A and C of the current LCU (or CTU) M do not exist in any range (one part, for example one LCU size). Therefore, in order to be within an arbitrary range, the vertical direction component of the variation vector DV is clipped to an arbitrary range in order to derive the reference blocks A 'and C'. The clipped disparity vector (DV) is then used to derive a reference block for the current block.

도 13은 제안 방법의 기본 구조도의 일예를 나타낸다.13 shows an example of a basic structure of the proposed method.

도 13의 “클리핑 과정”에서는 현재 블록의 주변 블록들로부터 유도된 변이 벡터(도 13에서는 “움직임 정보 (ex. DV)”)와 “임의의 범위”를 입력받아, 임의의 범위로 변이 벡터의 수직 방향 성분을 클리핑하여 “변경된 DV”를 출력한다. 다음으로 “움직임 정보 유도”과정에서는 “변경된 DV”와 “참조시점 영상에서의 움직임 정보”를 입력받아, 변경된 변이 벡터를 이용하여 참조 시점 영상으로부터 움직임 정보을 유도하여 “유도된 움직임 정보”를 출력한다.
In the " clipping process " in Fig. 13, a variation vector ("motion information ex. DV") and an arbitrary range derived from the neighboring blocks of the current block are input, Clipping the vertical direction component and outputting "changed DV". Next, in the " motion information derivation " process, the " changed DV " and " motion information in the reference view image " are input and the motion information is derived from the reference view image using the changed displacement vector to output & .

아래의 내용은 상술한 제안 방법에 따른 움직임 정보 유도 과정을 3D-HEVC Test Model 3를 기반으로 하여 설명한 것이다.
The following description is based on the 3D-HEVC Test Model 3 to derive the motion information according to the proposed method.

3D-HEVC Test Model 3에서 사용되는 용어 및 계산식Terms and formulas used in 3D-HEVC Test Model 3

- PredMode; 현재 PU(Prediction Unit) 블록의 부호화 모드를 나타내며, MODE_SKIP, MODE_INTRA, MODE_INTER 가 존재한다. - PredMode; Indicates the encoding mode of the current PU (Prediction Unit) block, and MODE_SKIP, MODE_INTRA, and MODE_INTER are present.

- RefPicListX; 참조픽쳐리스트로서, 여기서 X는 '0' 또는 '1'이 될수 있다. 일예로, X가 0이면(즉, RefPicList0 이라면), L0 참조픽쳐 리스트를 사용한다.- RefPicListX; As a reference picture list, X may be '0' or '1'. For example, if X is 0 (i.e., RefPicList0), the L0 reference picture list is used.

- PicWidthInSamplesL ; 현재 픽쳐에서 너비- PicWidthInSamplesL; Width in current picture

- PicHeightInSamplesL ; 현재 픽쳐에서 높이- PicHeightInSamplesL; Height in current picture

- CtbSizeY; 현재 CTU(혹은 LCU)의 높이- CtbSizeY; The height of the current CTU (or LCU)

Clip3(x,y,z)는 수학식 1과 같다.
Clip3 (x, y, z) is expressed by Equation (1).

시간적인 시점간 움직임 벡터를 유도하는 과정The process of deriving a temporal motion vector between temporal points

이 단계에서 입력은 아래와 같다The inputs at this stage are:

- 현재 PU 블록의 좌상단 위치; (xP, yP)- the upper left position of the current PU block; (xP, yP)

- 현재 PU 블록의 너비와 높이를 가르키는 변수; (nPSW, nPSH)- variable indicating the width and height of the current PU block; (nPSW, nPSH)

- 참조 픽쳐 리스트 구분자; X (일예로, X가 0이면, L0 참조픽쳐 리스트를 사용한다.)Reference picture list delimiter; X (for example, if X is 0, use the L0 reference picture list).

- 참조 시점 인덱스; refViewIdx- reference point index; refViewIdx

- 변이 벡터; mvDisp- mutation vectors; mvDisp

- Merge_flag; 현재 PU블록이 merge 모드로 부호화되었는지를 나타낸다. 현재 PU블록이 merge 모드로 부호화되었다면, Merge_flag가 ‘1’로 설정하며, 그 반대로도 할 수 있다. - Merge_flag; Indicates whether the current PU block is coded in the merge mode. If the current PU block is coded in the merge mode, Merge_flag is set to '1' and vice versa.

- RefPicListX에서 참조 픽쳐를 지시하는 인덱스; refIdxLX (여기서 X는 '0' 또는 '1'이 될수 있다.)An index indicating a reference picture in RefPicListX; refIdxLX (where X can be either '0' or '1')

이 단계에서 출력은 아래와 같다.The output at this stage is shown below.

- 시간적인 시점간 움직임 벡터가 유효한지 여부를 나타내는 플래그; availableFlagLXInterViewA flag indicating whether or not a temporal inter-view motion vector is valid; availableFlagLXInterView

- 시간적인 시점간 움직임 벡터 후보; mvLXInterView (만일, availableFlagLXInterView가 참일 경우) (여기서 X는 '0' 또는 '1'이 될수 있다.)- Temporal inter-view motion vector candidates; mvLXInterView (if availableFlagLXInterView is true) (where X can be either '0' or '1')

- RefPicListX에서 참조 픽쳐를 지시하는 인덱스; refIdxLX
An index indicating a reference picture in RefPicListX; refIdxLX

availableFlagLXInterView 를 '0'으로 초기화한다.Initialize availableFlagLXInterView to '0'.

mvL0InterView와 mvL1InterView을 '0'으로 초기화한다.Initialize mvL0InterView and mvL1InterView to '0'.

현재 부호화하는 CTU의 좌상단 위치(xCtb, yCtb)를 유도한다.The upper left position (xCtb, yCtb) of the current CTU to be encoded is derived.

변이 벡터를 이용하여, 참조 시점에서 현재 블록에 대한 참조 블록의 위치를 아래와 같이 유도한다. The position of the reference block with respect to the current block at the reference time is derived as follows using the mutation vector.

[수학식 3]&Quot; (3) "

Figure pat00003
Figure pat00003

refViewIdx 값으로 설정된 ViewIdx에 대한 참조 시점 영상에서, 위에서 유도된 (xRef, yRef) 위치를 포함하는 부호화 코딩 블록을 refCU 라고 하자.In the reference view image for ViewIdx set to the refViewIdx value, let the encoded coding block containing the (xRef, yRef) position derived above be refCU.

refCU의 PredMode가 MODE_SKIP이거나 혹은 MODE_INTER일 경우, 아래의 과정을 수행한다. (여기서 변수 Y는 X 에서 (1-X)의 범위를 갖는다.) If PredMode of refCU is MODE_SKIP or MODE_INTER, perform the following procedure. (Where the variable Y ranges from (1-X) in X).

1. refPredFlagLY에 refPU의 refIdxLX를 설정한다.1. Set refIdxLX of refPU to refPredFlagLY.

2. refMvLY에 refPU의 mvLY를 설정한다.2. Set mVLY of refPU to refMvLY.

3. refRefPicListLY에 refPU의 RefPicListLY를 설정한다.3. Set refPicListLY of refPU to refRefPicListLY.

4. refPredFlagLY가 '참'이면, 다음의 과정을 i 가 (mergeFlag ? 0 : refIdxLX) 부터 (mergeFlag ? num_ref_idx_1X_active_minus1 : refIdxLX) 까지 수행한다. 4. If refPredFlagLY is 'true', perform the following steps from i (mergeFlag? 0: refIdxLX) to (mergeFlag? Num_ref_idx_1X_active_minus1: refIdxLX).

A. availableFlagLXInterView 가 '0'이고 refRefPicListLY[refRefIdxLY]의 POC(Picture Order Count)가 RefPicListLX[i]의 POC와 같으면, availableFlagLXInterView를 '1'로 설정하고 다음을 수행한다.A. If availableFlagLXInterView is '0' and the POC (Picture Order Count) of refRefPicListLY [refRefIdxLY] is equal to the POC of RefPicListLX [i], set availableFlagLXInterView to '1' and do the following:

i. mvLXInterView 는 다음과 같이 유도된다.i. mvLXInterView is derived as follows.

mvLXInterView[0] = refMvLY[0] mvLXInterView [0] = refMvLY [0]

mvLXInterView[1] = refMvLY[1]mvLXInterView [1] = refMvLY [1]

ii. mergeFlag가 '1'이면, refIdxLX는 다음과 같이 유도된다.ii. If mergeFlag is '1', refIdxLX is derived as follows.

refIdxLX = i
refIdxLX = i

본 발명에서 제안하는 방법의 우수성을 검증하기 위해, 3D-HEVC의 검증모델인 HTM7.0에실제 구현을 하여 실험을 수행하였다. 실험 영상은 JCT3V의 실험 영상들을 사용하였다.In order to verify the superiority of the method proposed in the present invention, experiments were performed on HTM7.0, which is a verification model of 3D-HEVC. Experimental images of JCT3V were used.

[표 1] 본 발명에서 제안하는 방법의 실험 결과[Table 1] Experimental results of the method proposed in the present invention

Figure pat00004

Figure pat00004

표 1은 본 발명에서 제안하는 방법과 기존 방법을 비교한 것이다. 본 발명에서 제안하는 방법은 기존 방법에 비해, 최소 1/3의 메모리를 감소시키고 최대 1/(전체 픽쳐)의 메모리를 감소시키면서도 성능에는 거의 영향이 없음을 확인할 수 있었다.
Table 1 compares the proposed method with the existing method. The method proposed in the present invention can reduce the memory by at least 1/3 and reduce the memory of the maximum 1 / (full picture), but has little effect on the performance as compared with the conventional method.

또 다른 방법으로, 현재 블록의 움직임 정보를 유도하기 위해, 참조 시점의 참조 블록들에 대한 움직임 정보(움직임 벡터, 참조픽쳐 번호, 예측 방향 정보)를 유도하는 데 사용되는 변이 벡터(DV)에서 수직 방향 성분을 사용하지 않고, 수평방향 성분만을 사용할 수 있다. 실시 일예로, 변이 벡터(DV)에서 수직 방향 성분에 '0'을 대입하여, 참조 시점의 참조 블록들에 대한 움직임 정보(움직임 벡터, 참조픽쳐 번호, 예측 방향 정보)를 유도하는 데 사용할 수 있다. 수평 방향으로의 이동만 존재하므로 메모리 효율성을 증가시킬 수 있다. Alternatively, in order to derive the motion information of the current block, the motion vector (DV) used to derive the motion information (motion vector, reference picture number, prediction direction information) Only the horizontal direction component can be used without using the direction component. For example, it is possible to substitute '0' for the vertical direction component in the disparity vector DV to derive motion information (motion vector, reference picture number, prediction direction information) for the reference blocks at the reference time . Since there is only movement in the horizontal direction, memory efficiency can be increased.

실시 일예로 제안 방법은 다음의 식을 통해 참조 시점의 참조 블록의 위치(xRef, yRef)를 계산할 수 있다.For example, the proposed method can calculate the position (xRef, yRef) of the reference block at the reference time through the following equation.

[수학식 4]&Quot; (4) "

Figure pat00005

Figure pat00005

또 다른 방법으로, 시점간 예측을 위해 사용되는 움직임 예측(ME; Motion Estimation)의 수직 방향의 범위를 제한함으로써 해결할 수 있다. 실시 일예로, 수직 방향의 움직임 예측(ME) 범위를 '0'으로 제한할 수 있으며, 이 경우 변이 벡터의 수직 방향 성분이 자동적으로 '0'으로 설정되게 된다. Alternatively, it can be solved by limiting the vertical direction range of motion estimation (ME) used for inter-view prediction. For example, the motion estimation (ME) range in the vertical direction may be limited to '0'. In this case, the vertical direction component of the variation vector is automatically set to '0'.

움직임 예측(Motion Estimation)의 수직 방향의 범위를 '0'으로 제한하는 방법을 검증하기 위해, 3D-HEVC의 검증모델인 HTM7.0에실제 구현을 하여 실험을 수행하였다. 실험 영상은 JCT3V의 실험 영상들을 사용하였다.In order to verify the method of limiting the vertical direction range of motion estimation (Motion Estimation) to '0', experiments were performed on HTM7.0 which is a verification model of 3D-HEVC. Experimental images of JCT3V were used.

[표 2] 움직임 예측의 수직 방향의 범위를 제한하는 방법의 실험 결과[Table 2] Experimental results of a method of limiting the range of vertical direction of motion prediction

Figure pat00006
Figure pat00006

표 2는 본 발명에서 움직임 예측(Motion Estimation)의 수직 방향의 범위를 제한하는 방법과 기존 방법을 비교한 것이다. 움직임 예측(Motion Estimation)의 수직 방향의 범위를 제한하는 방법은 기존 방법에 비해, 메모리를 크게 감소시키는 장점이 있는 반면에, 비트량이 평균적으로 0.3% 증가되었고 특정 영상에서 2.3%까지 증가되어 부호화 성능을 크게 감소시키는 단점이 있다는 것을 확인할 수 있었다. Table 2 compares the existing method with the method of limiting the range of the vertical direction of motion estimation in the present invention. The method of limiting the range of the motion estimation (Motion Estimation) in the vertical direction has an advantage of greatly reducing the memory compared to the conventional method, but the bit amount is increased by 0.3% on the average and increased by 2.3% As shown in FIG.

또 다른 실시 일예로, 수직 방향의 움직임 예측(ME) 범위를 메모리가 허용되는 범위내의 '임의의 값들(A, B)'으로 제한할 수 있다. 변이 벡터의 수직 방향 성분을 메모리가 허용되는 범위 이내로 수렴시키기 위해서, 실시 일예로 다음의 식을 통해 참조 시점의 참조 블록의 위치(xRef, yRef)를 계산할 수 있다. 여기서 A, B는 임의의 값을 나타낸다. 일예로, A는 “CtbSizeY” 가 될 수 있으며, B는 “2*CtbSizeY - 1“가 될 수 있다. 여기서, CtbSizeY는 현재 CTU(혹은 LCU)의 높이를 나타낸다.In another embodiment, the motion estimation (ME) range in the vertical direction may be limited to 'arbitrary values (A, B)' within a memory allowable range. In order to converge the vertical component of the disparity vector to within the allowable range of the memory, the position (xRef, yRef) of the reference block of the reference point can be calculated by the following equation. Here, A and B represent arbitrary values. For example, A can be "CtbSizeY" and B can be "2 * CtbSizeY - 1". Here, CtbSizeY represents the height of the current CTU (or LCU).

[수학식 5]&Quot; (5) "

Figure pat00007

Figure pat00007

또 다른 실시 일예로, 수직 방향의 움직임 예측(ME) 범위를 메모리가 허용되는 범위내의 '임의의 값(T)'으로 제한할 수 있으며, 이 경우 변이 벡터의 수직 방향 성분은 임의의 값(T)의 범위를 넘길 수 있어서, 이 방법의 상기 제안한 방법과 혼합되어 수행될 수 있다. 따라서, 변이 벡터의 수직 방향 성분을 메모리가 허용되는 범위 내의 임의의 값(T) 범위 이내로 수렴시키기 위해서, 실시 일예로 다음의 식을 통해 참조 시점의 참조 블록의 위치(xRef, yRef)를 계산할 수 있다.In another embodiment, the range of motion estimation (ME) in the vertical direction may be limited to an arbitrary value T within a range in which the memory is allowed, in which case the vertical component of the variation vector may be any value T ), And can be performed in combination with the above proposed method of this method. Therefore, in order to converge the vertical component of the mutation vector to within a range of arbitrary values (T) within a memory allowable range, the position (xRef, yRef) of the reference block at the reference time point can be calculated by the following equation have.

[수학식 6]&Quot; (6) "

Figure pat00008

Figure pat00008

상술한 방법은 현재 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)에서 공동으로 표준화를 진행 중인 3D-HEVC(High Efficiency Video Coding)에서 사용될 수 있다. 따라서 상술한 방법은 도 16의 예와 같이, 블록 크기 혹은 CU(Coding Uint) 깊이 혹은 TU(Transform Unit) 깊이 등에 따라 적용 범위를 달리할 수 있다. 이렇게 적용 범위를 결정하는 변수(즉, 크기 혹은 깊이 정보)는 부호화기 및 복호화기가 미리 정해진 값을 사용하도록 설정할 수도 있고, 프로파일 또는 레벨에 따라 정해진 값을 사용하도록 할 수도 있고, 부호화기가 변수 값을 비트스트림에 기재하면 복호화기는 비트스트림으로부터 이 값을 구하여 사용할 수도 있다. CU 깊이에 따라 적용 범위를 달리하는 할 때는 도 16에 예시한 바와 같이, 방식A) 주어진 깊이 이상의 깊이에만 적용하는 방식, 방식B) 주어진 깊이 이하에만 적용하는 방식, 방식C) 주어진 깊이에만 적용하는 방식이 있을 수 있다. The above-described method can be used in 3D-HEVC (High Efficiency Video Coding), which is currently being jointly standardized by MPEG (Moving Picture Experts Group) and VCEG (Video Coding Experts Group). Therefore, the above-described method can be applied in different ranges depending on the block size, the CU (Coding Uint) depth, or the TU (Transform Unit) depth, as in the example of FIG. The variable (i.e., size or depth information) for determining the coverage can be set to use a predetermined value by the encoder or the decoder, use a predetermined value according to the profile or the level, When described in a stream, the decoder may use this value from a bitstream. In case of varying the application range according to the CU depth, as shown in Fig. 16, the method A) is applied only to a depth of a given depth or more, the method B) There can be a way.

[표 3] 주어진 CU(혹은 TU) 깊이가 2인 경우, 본 발명의 방법들을 적용하는 범위 결정 방식의 예. (O: 해당 깊이에 적용, X: 해당 깊이에 적용하지 않음.)Table 3 Examples of range determination methods applying the methods of the present invention where the given CU (or TU) depth is 2. (O: applied to the depth, X: not applied to the depth.)

Figure pat00009
Figure pat00009

모든 깊이에 대하여 본 발명의 방법들을 적용하지 않는 경우는 임의의 지시자(flag)를 사용하여 나타낼 수도 있고, CU 깊이의 최대값보다 하나 더 큰 값을 적용범위를 나타내는 CU 깊이 값으로 시그널링 함으로써 표현할 수도 있다. When the methods of the present invention are not applied to all the depths, they may be indicated by using an optional flag, or a value one greater than the maximum value of the CU depth may be expressed by signaling with a CU depth value indicating the application range have.

본 발명의 추가적인 특징으로, 상술한 방법의 적용 여부 및 임의의 범위는 비트스트림에 포함할 수 있으며, SPS(Sequence Parameter Set), PPS(Picture Parameter Set), Slice Header Syntax에 아래와 같은 Semantics로 적용될 수 있다.As a further feature of the present invention, the applicability of the above method and any range may be included in the bitstream and may be applied to the SPS (Sequence Parameter Set), PPS (Picture Parameter Set) and Slice Header Syntax as follows: have.

[표 4] SPS에 적용된 일예[Table 4] Examples applied to SPS

Figure pat00010
Figure pat00010

[표 5] PPS에 적용된 일예[Table 5] Examples applied to PPS

Figure pat00011
Figure pat00011

[표 6] Slice Header Syntax에 적용된 일예[Table 6] Examples applied to Slice Header Syntax

Figure pat00012
Figure pat00012

[표 7] Slice Header Syntax에 적용된 또 다른 일예[Table 7] Another example applied to Slice Header Syntax

Figure pat00013
Figure pat00013

여기서 “restricted_dv_enable_flag”는 제안하는 방법의 적용 여부를 알려준다. 여기서 제안하는 방법이 적용되었을 경우 “restricted_dv_enable_flag”가 '1'이되며, 적용되지 않았을 경우 “restricted_dv_enable_flag”가 '0'이 된다. 그 반대도 가능하다. Here, "restricted_dv_enable_flag" indicates whether or not the proposed method is applied. When the proposed method is applied, "restricted_dv_enable_flag" becomes "1", and when not applied, "restricted_dv_enable_flag" becomes "0". The opposite is also possible.

또한, “restricted_dv_info”는 제안 방법이 적용되었을 경우(혹은 “restricted_dv_enable_flag”이 참일 경우) 활성화되는 syntax로써, 시퀀스, 픽쳐, 슬라이스 단위로 “수직 방향 성분”을 클리핑하기 위한 임의의 범위를 시그널링하는 경우에 사용하는 syntax 이다. 여기서 이 값들은 양수 혹은 음수 부호를 가지는 형태로 부호화(se(v))될 수 있다. 혹은 이 값들은 0과 양수 부호를 가지는 형태로 부호화(ue(v))될 수 있다.Also, "restricted_dv_info" is a syntax that is activated when the proposed method is applied (or when "restricted_dv_enable_flag" is true), and when signaling an arbitrary range for clipping a "vertical direction component" in units of sequence, picture and slice The syntax to use. Here, these values can be encoded (se (v)) into a form having a positive or negative sign. Alternatively, these values can be encoded (ue (v)) with a 0 and a positive sign.

Claims (3)

임의의 범위 내에서만 참조 시점의 참조 블록들에 대한 움직임 정보(움직임 벡터, 참조픽쳐 번호, 예측 방향 정보)를 유도하도록 제한하는 방법.(Motion vector, reference picture number, and prediction direction information) for the reference blocks of the reference point only within a certain range. 제 1항에 있어서, “움직임 정보 (ex. DV)”)와 “임의의 범위”를 입력받아, 임의의 범위로 변이 벡터의 수직 방향 성분을 클리핑하여 “변경된 DV”를 출력하는 단계; “변경된 DV”와 “참조시점 영상에서의 움직임 정보”를 입력받아, 변경된 변이 벡터를 이용하여 참조 시점 영상으로부터 움직임 정보을 유도하여 “유도된 움직임 정보”를 출력하는 단계; 를 포함하는 움직임 유도 방법.The method of claim 1, further comprising: receiving "motion information (ex. DV)" and "arbitrary range" and outputting "changed DV" by clipping the vertical component of the variation vector to an arbitrary range; Receiving the changed DV and the motion information in the reference view image and outputting the derived motion information by deriving the motion information from the reference view image using the changed disparity vector; / RTI > 제 1항에 있어서, 수직 방향의 움직임 예측(ME) 범위를 메모리가 허용되는 범위내의 ‘임의의 값(T)’으로 제한하는 단계; “움직임 정보 (ex. DV)”)와 “임의의 범위” 그리고 “임의의 값(T)를 입력받아, “임의의 범위와 임의의 값(T)”로 변이 벡터의 수직 방향 성분을 클리핑하여 “변경된 DV”를 출력하는 단계; “변경된 DV”와 “참조시점 영상에서의 움직임 정보”를 입력받아, 변경된 변이 벡터를 이용하여 참조 시점 영상으로부터 움직임 정보을 유도하여 “유도된 움직임 정보”를 출력하는 단계; 를 포함하는 움직임 유도 방법.

2. The method of claim 1, further comprising: limiting a vertical motion estimation (ME) range to an arbitrary value (T) within a memory allowable range; (E.g., "motion information ex. DV"), "arbitrary range" and "arbitrary value T", and clipping the vertical component of the mutation vector to "arbitrary range and arbitrary value T" Outputting "changed DV"; Receiving the changed DV and the motion information in the reference view image and outputting the derived motion information by deriving the motion information from the reference view image using the changed disparity vector; / RTI >

KR1020130084981A 2013-07-18 2013-07-18 Method and apparatus for improving memory efficiency through deriving limited motion information Withdrawn KR20150010249A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130084981A KR20150010249A (en) 2013-07-18 2013-07-18 Method and apparatus for improving memory efficiency through deriving limited motion information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130084981A KR20150010249A (en) 2013-07-18 2013-07-18 Method and apparatus for improving memory efficiency through deriving limited motion information

Publications (1)

Publication Number Publication Date
KR20150010249A true KR20150010249A (en) 2015-01-28

Family

ID=52482111

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130084981A Withdrawn KR20150010249A (en) 2013-07-18 2013-07-18 Method and apparatus for improving memory efficiency through deriving limited motion information

Country Status (1)

Country Link
KR (1) KR20150010249A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020060351A1 (en) * 2018-09-21 2020-03-26 엘지전자 주식회사 Method and apparatus for deriving motion vector

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020060351A1 (en) * 2018-09-21 2020-03-26 엘지전자 주식회사 Method and apparatus for deriving motion vector
US11647203B2 (en) 2018-09-21 2023-05-09 Lg Electronics Inc. Method and apparatus for deriving motion vector

Similar Documents

Publication Publication Date Title
JP7661385B2 (en) Efficient multiview coding using depth map estimation and updating
US10412403B2 (en) Video encoding/decoding method and apparatus
JP6472877B2 (en) Method for 3D or multi-view video encoding including view synthesis prediction
JP6446488B2 (en) Video data decoding method and video data decoding apparatus
JP7183362B2 (en) Method and apparatus for guiding temporal inter-viewpoint motion information for each sub-prediction unit
BR112016007760B1 (en) VIDEO DATA DECODING METHOD AND APPARATUS AND VIDEO DATA CODING METHOD
CN106664423B (en) Depth picture compiling method in video compiling
US9838712B2 (en) Method of signaling for depth-based block partitioning
EP3114839A1 (en) Simplified sub-prediction unit (sub-pu) motion parameter inheritence (mpi)
JP6571646B2 (en) Multi-view video decoding method and apparatus
KR20160086941A (en) Video coding method, video decoding method, video coding device, video decoding device, video coding program, and video decoding program
KR20160118363A (en) Image encoding device and method, image decoding device and method, and programs therefor
US9716884B2 (en) Method of signaling for mode selection in 3D and multi-view video coding
KR20150010249A (en) Method and apparatus for improving memory efficiency through deriving limited motion information
KR101672008B1 (en) Method And Apparatus For Estimating Disparity Vector
KR20160002194A (en) Adaptive merging candidate selection method and apparatus
KR102378087B1 (en) Apparatus And Method For Deriving Merge Candidate Using Disparity Vector
KR20150043164A (en) merge motion candidate list construction method of 2d to 3d video coding
BR112016013489B1 (en) SIMPLIFIED DEPTH CODING (SDC) SIGNALING FOR INTER AND INTRAPREDICTION MODES IN 3D VIDEO CODING

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20130718

PG1501 Laying open of application
PC1203 Withdrawal of no request for examination
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid