KR102501051B1 - Apparatus and method for motion prediction of multi view or multi layer video - Google Patents

Apparatus and method for motion prediction of multi view or multi layer video Download PDF

Info

Publication number
KR102501051B1
KR102501051B1 KR1020200162490A KR20200162490A KR102501051B1 KR 102501051 B1 KR102501051 B1 KR 102501051B1 KR 1020200162490 A KR1020200162490 A KR 1020200162490A KR 20200162490 A KR20200162490 A KR 20200162490A KR 102501051 B1 KR102501051 B1 KR 102501051B1
Authority
KR
South Korea
Prior art keywords
block
motion vector
blocks
motion
candidate list
Prior art date
Application number
KR1020200162490A
Other languages
Korean (ko)
Other versions
KR20220074233A (en
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 KR1020200162490A priority Critical patent/KR102501051B1/en
Publication of KR20220074233A publication Critical patent/KR20220074233A/en
Application granted granted Critical
Publication of KR102501051B1 publication Critical patent/KR102501051B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • 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/527Global motion vector estimation

Landscapes

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

Abstract

본 발명은 다 시점 또는 다 계층 영상의 부호화에 관한 것으로 다 시점 또는 다 계층 영상의 부호화 단계에서 움직임 예측을 종래 공간적, 시간적 픽처 내에서 진행하던 것을 다른 시점 또는 다른 구성 요소의 대응 픽처의 움직임 정보까지 이용하여 진행함으로써 움직임 예측 부호화의 효율을 높일 수 있는 장점이 있다.The present invention relates to encoding of a multi-view or multi-layered image, and in the encoding step of a multi-view or multi-layered image, motion prediction is performed within a conventional spatial or temporal picture to motion information of a corresponding picture of another view or other component. There is an advantage in that the efficiency of motion prediction encoding can be increased by using the method.

Description

다 시점 화면 또는 계층 간 예측에서의 움직임 정보 예측 장치 및 그 방법{APPARATUS AND METHOD FOR MOTION PREDICTION OF MULTI VIEW OR MULTI LAYER VIDEO}Apparatus and method for predicting motion information in multi-view screen or inter-layer prediction

본 발명은 다 시점 또는 다 계층 영상의 부호화/복호화에 관한 것으로, 특히 다 시점 또는 다 계층 영상의 특징을 이용한 움직임 정보 예측 기술에 관한 것이다.The present invention relates to encoding/decoding of multi-view or multi-layer images, and more particularly, to motion information prediction technology using characteristics of multi-view or multi-layer images.

최근 디스플레이의 크기가 커지고 해상도도 높아지면서 비디오 데이터의 양도 점점 증가하는 추세이다. 게다가 3D 비디오나 다 시점(Multi View) 비디오와 같이 종래의 2D 비디오로는 커버할 수 없는 몰입형 비디오를 추구하는 새로운 비디오 포맷의 등장으로 전송되는 비디오 데이터의 양은 엄청나게 증가하고 있다.Recently, as the size and resolution of displays increase, the amount of video data is gradually increasing. In addition, with the advent of new video formats that pursue immersive video that cannot be covered by conventional 2D video, such as 3D video or multi-view video, the amount of transmitted video data is increasing tremendously.

이러한 대용량의 비디오 데이터를 그대로 전송하거나 저장한다면 그 전송 비용이나 저장 비용을 감당하기 어렵게 된다. 따라서 대용량 비디오 압축 부호화 기술은 필수적이다.If such large-capacity video data is transmitted or stored as it is, it becomes difficult to bear the transmission cost or storage cost. Therefore, large-capacity video compression coding technology is essential.

여러 비디오 압축 부호화 기술들이 있는데 그 중 움직임 예측(Motion Prediction)은 화면을 여러 블록으로 분할하여 현재 프레임의 블록이 이전 프레임의 어느 블록이 이동한 것인가를 예측하는 방법이다. 블록의 움직임을 예측하여 움직임 벡터(Motion Vector)만을 전송하면 되므로 전송되는 데이터 양을 줄일 수 있다.There are several video compression coding technologies. Among them, motion prediction is a method of dividing a screen into several blocks and predicting which block of a previous frame has moved to a block of a current frame. The amount of transmitted data can be reduced because only the motion vector needs to be transmitted by predicting the motion of the block.

종래 HEVE(High efficiency video coding) 혹은 VVC(Versatile Video Coding) 등의 비디오 코덱은 움직임 벡터 예측 방법으로 머지 모드(Merge Mode) 또는 AMVP(Advanced Motion Vector Prediction) 모드 등을 사용하고 있다.Conventional video codecs such as HEVE (High Efficiency Video Coding) or VVC (Versatile Video Coding) use a merge mode or an advanced motion vector prediction (AMVP) mode as a motion vector prediction method.

이는 현재 예측 블록(PU: Prediction Unit, or CU: Coding Unit)과 동일한 프레임 내에 존재하는 주변 블록들과 참조 프레임 내의 현재 예측 블록과 동일한 위치의 블록으로부터 유도되는 후보들을 이용하여 움직임 벡터 예측을 위한 후보 블록들을 선정하고 이들로부터 움직임을 예측하게 된다.This is a candidate for motion vector prediction using candidates derived from neighboring blocks existing in the same frame as the current prediction block (PU: Prediction Unit, or CU: Coding Unit) and blocks at the same position as the current prediction block in the reference frame. Blocks are selected and motion is predicted from them.

하지만 3D 비디오 혹은 다 시점 비디오의 경우에는 종래기술과 같은 공간적, 시간적 후보들 외에도 다른 시점의 프레임들 등을 이용하면 움직임 예측을 보다 정확하게 할 수 있으나 아직까지 이러한 시도는 없는 실정이다.However, in the case of 3D video or multi-view video, motion prediction can be more accurately performed by using frames of other views in addition to spatial and temporal candidates as in the prior art, but no such attempt has been made yet.

본 발명의 발명자들은 이러한 종래 기술의 다 시점 또는 다 계층 비디오의 움직임 예측 문제 해결을 위해 연구 노력해 왔다. 다 시점 또는 다 계층 비디오의 다른 시점 또는 다른 구성요소의 프레임들을 이용한 움직임 예측 장치 및 방법을 완성하기 위해 많은 노력 끝에 본 발명을 완성하기에 이르렀다.The inventors of the present invention have made efforts to solve the motion prediction problem of multi-view or multi-layer video of the prior art. The present invention has been completed after much effort to complete an apparatus and method for predicting motion using frames of different views or components of multi-view or multi-layer video.

본 발명의 목적은 다 시점 또는 다 계층 영상에서 다른 시점 또는 다른 구성요소의 움직임 정보들을 이용함으로써 영상 부호화의 효율을 향상시키려는 것이다.An object of the present invention is to improve the efficiency of video encoding by using motion information of different viewpoints or other elements in a multi-view or multi-layer image.

한편, 본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론 할 수 있는 범위 내에서 추가적으로 고려될 것이다.Meanwhile, other unspecified objects of the present invention will be additionally considered within the scope that can be easily inferred from the following detailed description and effects thereof.

본 발명에 따른 움직임 예측 장치는, The motion prediction device according to the present invention,

부호화가 완료된 다른 시점 또는 다른 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 움직임 벡터 후보 생성부; 및 상기 움직임 벡터 예측 후보 리스트를 이용하여 현재 블록의 움직임 벡터 예측 정보를 생성하는 움직임 벡터 예측부;를 포함한다.a motion vector candidate generation unit that generates a motion vector prediction candidate list using blocks of different viewpoints or other components that have been coded; and a motion vector predictor generating motion vector prediction information of a current block using the motion vector prediction candidate list.

상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 이용하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 한다.The motion vector candidate generation unit may generate the motion vector prediction candidate list using a block located at the same position as the current block among blocks of another time point at which the encoding is completed or of other components.

상기 움직임 벡터 후보 생성부는 상기 현재 블록의 좌측 하단 블록, 좌측 블록, 우측 상단 블록, 상단 블록, 좌측 상단 블록, 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록, 참조 프레임 내의 상기 현재 블록과 동일한 위치에 있는 블록의 순으로 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 한다.The motion vector candidate generating unit is a block located at the same position as the current block among blocks of the lower left block, the upper left block, the upper right block, the upper block, the upper left block of the current block, another time point at which the encoding is completed, or other component blocks. , The motion vector prediction candidate list is generated in the order of blocks located at the same position as the current block in the reference frame.

상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록이 움직임 정보를 가지지 않으면 상기 현재 블록과 동일한 위치에 있는 블록의 상단 블록, 상단 좌측 블록, 좌측 블록의 순서로 움직임 정보를 확인하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 한다.The motion vector candidate generation unit, if the block at the same position as the current block among the blocks at another point in time when the encoding is completed or at the same position as the current block does not have motion information, the upper block or the upper left block of the block located at the same position as the current block , the motion vector prediction candidate list is generated by checking the motion information in the order of the left block.

상기 움직임 벡터 후보 생성부는 상기 현재 블록의 좌측 하단 블록과 좌측 블록 중 하나와 상기 현재 블록의 우측 상단 블록, 상단 블록 및 좌측 상단 블록 중 하나를 상기 움직임 벡터 예측 후보 리스트로 생성하되, 상기 움직임 벡터 예측 후보 리스트에 추가된 블록들의 움직임 정보가 중복되어 있으면 중복된 블록을 제거하고 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 상기 움직임 벡터 예측 후보 리스트에 추가하는 것을 특징으로 한다.The motion vector candidate generation unit generates one of a lower left block and a left block of the current block and one of an upper right block, an upper block and an upper left block of the current block as the motion vector prediction candidate list, If the motion information of the blocks added to the candidate list is duplicated, the duplicated blocks are removed, and a block at the same position as the current block among blocks of another time when the encoding is completed or of another component is added to the motion vector prediction candidate list. It is characterized by doing.

상기 움직임 벡터 후보 생성부는 상기 현재 블록과 동일한 위치에 있는 블록의 움직임 정보가 상기 움직임 벡터 예측 후보 리스트에 이미 추가된 블록의 움직임 정보와 같으면 상기 현재 블록과 동일한 위치에 있는 블록 대신 0으로 구성되는 움직임 벡터 후보를 상기 움직임 벡터 예측 후보 리스트에 추가하는 것을 특징으로 한다.The motion vector candidate generation unit, if the motion information of the block located at the same position as the current block is equal to the motion information of a block already added to the motion vector prediction candidate list, motion consisting of 0 instead of the block located at the same position as the current block A vector candidate is added to the motion vector prediction candidate list.

상기 움직임 벡터 후보 생성부는 상기 현재 블록이 속하는 현재 픽처의 현재 코딩 유닛(CU: Coding Unit)과 대응하는 다른 시점 또는 다른 구성요소의 픽처에서 상기 현재 코딩 유닛과 대응하는 위치의 코딩 유닛의 서브블록들의 조합으로 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 한다.The motion vector candidate generator generates subblocks of a coding unit at a position corresponding to the current coding unit (CU) of a current picture to which the current block belongs, or a picture of another view corresponding to the current coding unit to which the current block belongs or a picture of another component. It is characterized in that the motion vector prediction candidate list is generated by combination.

상기 움직임 벡터 후보 생성부는 상기 서브블록의 사이즈를 상기 현재 코딩 유닛의 사이즈를 두 비트(Bit) 우측으로 시프트(Shift) 하는 비트 연산 결과 값으로 정하는 것을 특징으로 한다.The motion vector candidate generator may determine the size of the subblock as a result of a bit operation that shifts the size of the current coding unit to the right by two bits.

상기 움직임 벡터 후보 생성부는 상기 비트 연산 결과 값이 8x8보다 작은 경우 상기 서브블록의 사이즈를 8x8로 고정하는 것을 특징으로 한다.The motion vector candidate generator may fix the size of the subblock to 8x8 when the result value of the bit operation is smaller than 8x8.

상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록이 어파인(Affine) 기반 움직임 예측 기술로 부호화 된 경우 그 블록을 현재 CU의 CPMV(Control Point Motion Vector)로 사용하는 것을 특징으로 한다.The motion vector candidate generator generates CPMV of the current CU when a block at the same position as the current block among blocks of another time point at which the coding is completed or of another component is coded by an affine-based motion prediction technique Control Point Motion Vector).

상기 움직임 벡터 후보 생성부는 상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 CPMV(Control Point Motion Vector)로 사용하여 조합 어파인 머지(Affine Merge) 후보를 생성하는 것을 특징으로 한다.The motion vector candidate generation unit performs a combination affine merge by using a block at the same position as the current block among blocks of another time point at which the encoding is completed or of other components as a control point motion vector (CPMV). It is characterized by generating an Affine Merge) candidate.

본 발명의 다른 실시예에 따른 움직임 예측 방법은,A motion prediction method according to another embodiment of the present invention,

부호화가 완료된 다른 시점 또는 다른 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 단계; 및 상기 움직임 벡터 예측 후보 리스트를 이용하여 현재 블록의 움직임 벡터 예측 정보를 생성하는 단계;를 포함한다.generating a motion vector prediction candidate list by using a block of another point in time or another component of which encoding is completed; and generating motion vector prediction information of the current block by using the motion vector prediction candidate list.

본 발명에 따르면 다른 시점 또는 다른 구성 요소의 대응 픽처의 움직임 정보까지 이용하여 진행함으로써 움직임 예측 부호화의 효율을 높일 수 있는 효과가 있다.According to the present invention, the efficiency of motion prediction encoding can be improved by using motion information of a corresponding picture of another viewpoint or other component.

한편, 여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급됨을 첨언한다.On the other hand, even if the effects are not explicitly mentioned here, it is added that the effects described in the following specification expected by the technical features of the present invention and their provisional effects are treated as described in the specification of the present invention.

도 1은 본 발명의 바람직한 어느 실시예에 따른 움직임 예측 장치의 개략적인 구조도이다.
도 2는 움직임 예측을 위해 사용하는 주변 블록들의 예를 나타낸다.
도 3은 서브블록 기반 병합 모드의 예를 나타낸다.
도 4는 어파인 병합 모드의 예를 나타낸다.
도 5는 3차원 영상의 픽처 구성 예를 보여준다.
도 6은 3차원 영상에서 다른 시점의 영상을 참조하는 예를 나타낸다.
도 7은 3차원 영상에서 움직임 벡터 예측 후보 리스트를 구성하는 예를 나타낸다.
도 8은 서브블록 기반 병합 모드의 예를 나타낸다.
도 9는 본 발명의 바람직한 어느 실시예에 따른 움직임 예측 방법의 개략적인 흐름도이다.
도 10은 본 발명의 바람직한 또 다른 실시예에 따른 영상 복호화기의 움직임 예측 장치의 개략적인 구조도이다.
도 11은 본 발명의 바람직한 또 다른 실시예에 따른 영상 복호화기의 움직임 예측 방법의 개략적인 흐름도이다.
※ 첨부된 도면은 본 발명의 기술사상에 대한 이해를 위하여 참조로서 예시된 것임을 밝히며, 그것에 의해 본 발명의 권리범위가 제한되지는 아니한다
1 is a schematic structural diagram of a motion estimation device according to a preferred embodiment of the present invention.
2 shows an example of neighboring blocks used for motion prediction.
3 shows an example of a subblock-based merge mode.
4 shows an example of an affine merge mode.
5 shows an example of a picture configuration of a 3D image.
6 shows an example of referring to an image of another viewpoint in a 3D image.
7 shows an example of constructing a motion vector prediction candidate list in a 3D image.
8 shows an example of a subblock-based merge mode.
9 is a schematic flowchart of a motion prediction method according to a preferred embodiment of the present invention.
10 is a schematic structural diagram of a motion estimation apparatus of a video decoder according to another preferred embodiment of the present invention.
11 is a schematic flowchart of a motion estimation method of a video decoder according to another preferred embodiment of the present invention.
※ It is revealed that the accompanying drawings are exemplified as references for understanding the technical idea of the present invention, and thereby the scope of the present invention is not limited.

이하, 도면을 참조하여 본 발명의 다양한 실시예가 안내하는 본 발명의 구성과 그 구성으로부터 비롯되는 효과에 대해 살펴본다. 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. Hereinafter, with reference to the drawings, look at the configuration of the present invention guided by various embodiments of the present invention and the effects resulting from the configuration. In the description of the present invention, if it is determined that a related known function may unnecessarily obscure the subject matter of the present invention as an obvious matter to those skilled in the art, the detailed description thereof will be omitted.

'제1', '제2' 등의 용어는 다양한 구성요소를 설명하는데 사용될 수 있지만, 상기 구성요소는 위 용어에 의해 한정되어서는 안 된다. 위 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 수 있다. 예를 들어, 본 발명의 권리범위를 벗어나지 않으면서 '제1구성요소'는 '제2구성요소'로 명명될 수 있고, 유사하게 '제2구성요소'도 '제1구성요소'로 명명될 수 있다. 또한, 단수의 표현은 문맥상 명백하게 다르게 표현하지 않는 한, 복수의 표현을 포함한다. 본 발명의 실시예에서 사용되는 용어는 다르게 정의되지 않는 한, 해당 기술분야에서 통상의 지식을 가진 자에게 통상적으로 알려진 의미로 해석될 수 있다.Terms such as 'first' and 'second' may be used to describe various elements, but the elements should not be limited by the above terms. The above terms may only be used for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a 'first element' may be named a 'second element', and similarly, a 'second element' may also be named a 'first element'. can Also, singular expressions include plural expressions unless the context clearly indicates otherwise. Terms used in the embodiments of the present invention may be interpreted as meanings commonly known to those skilled in the art unless otherwise defined.

이하, 도면을 참조하여 본 발명의 다양한 실시예가 안내하는 본 발명의 구성과 그 구성으로부터 비롯되는 효과에 대해 살펴본다.Hereinafter, with reference to the drawings, look at the configuration of the present invention guided by various embodiments of the present invention and the effects resulting from the configuration.

이하에서 영상 부호화/복호화를 위한 비디오 코덱은 ISO/IEC MPEG-I versatile video coding (VVC)을 기준으로 설명하지만 본 발명이 이에 한정되는 것은 아니며 다른 모든 비디오 코덱에 적용될 수 있음은 물론이다.Hereinafter, a video codec for video encoding/decoding will be described based on ISO/IEC MPEG-I versatile video coding (VVC), but the present invention is not limited thereto and can be applied to all other video codecs as a matter of course.

도 1은 본 발명의 바람직한 어느 실시예에 따른 움직임 예측 장치의 개략적인 구조도이다.1 is a schematic structural diagram of a motion estimation device according to a preferred embodiment of the present invention.

본 발명에 따른 움직임 예측 장치(100)는 영상 부호화기(1)에 포함되며 움직임 벡터 후보 생성부(110) 및 움직임 벡터 예측부(120)를 포함한다. 또한 움직임 예측 장치(100)는 하나 이상의 프로세서 및 메모리(미도시)를 포함한다. 프로세서는 움직임을 예측하여 움직임 정보를 생성하기 위해 사용되며 메모리에는 프로세서를 구동하기 위한 프로그램 코드 및 데이터들을 저장할 수 있다.The motion estimation apparatus 100 according to the present invention is included in the video encoder 1 and includes a motion vector candidate generator 110 and a motion vector predictor 120 . Also, the motion estimation apparatus 100 includes one or more processors and memory (not shown). The processor is used to predict motion and generate motion information, and program codes and data for driving the processor may be stored in a memory.

움직임 벡터 후보 생성부(110)는 부호화가 진행중인 현재 블록의 주변 정보들을 이용하여 움직임 예측을 위한 후보 블록들의 리스트를 생성한다.The motion vector candidate generator 110 generates a list of candidate blocks for motion prediction by using neighboring information of a current block being encoded.

도 2는 움직임 예측을 위해 사용하는 주변 블록들의 예를 나타낸다.2 shows an example of neighboring blocks used for motion prediction.

병합(Merge) 모드에서는 움직임 정보를 이용하기 위한 후보 리스트를 구성한다. 도 2에서 현재 예측 유닛(10, PU: Prediction Unit)과 공간적, 시간적으로 관련된 블록들을 움직임 예측을 위한 후보 블록으로 사용한다.In the merge mode, a candidate list for using motion information is configured. In FIG. 2 , blocks spatially and temporally related to the current prediction unit 10 (PU: Prediction Unit) are used as candidate blocks for motion prediction.

A0, A1, B0, B1, B2는 현재 예측 유닛(10)과 동일한 프레임 내에 존재하면서 부호화가 완료된 주변 블록들로 공간적 후보들이다.A0, A1, B0, B1, and B2 are neighboring blocks that exist in the same frame as the current prediction unit 10 and have been coded, and are spatial candidates.

C0, C1은 현재 예측 유닛(10)과 다른 프레임, 즉, 참조 프레임 내의 블록들인데 현재 예측 유닛과 동일한 위치의 예측 유닛에서 유도되는 시간적 후보들이다.C0 and C1 are blocks in a frame different from the current prediction unit 10, that is, a reference frame, and are temporal candidates derived from a prediction unit at the same location as the current prediction unit.

움직임 벡터 후보 생성부(110)는 이러한 공간적, 시간적 후보들로부터 후보 리스트를 구성한다. 병합 모드 움직임 벡터 예측 후보 리스트는 A0 →A1 →B0→B1→B2→C0→C1의 순으로 생성할 수 있다. 병합 모드 리스트는 최대 5개의 후보를 가질 수 있는데 동일한 정보를 가지는 블록은 후보에서 제외될 수 있다. 동일 정보를 가지는 블록이 제외됨에 따라 5개의 후보가 다 채워지지 않으면 가상의 후보들로 남은 리스트를 채울 수 있다. 가상 후보들로는 HMVP(history-based motion vector prediction), PAMVP(pairwise average motion vector prediction), 제로 후보 등이 될 수 있다.The motion vector candidate generator 110 constructs a candidate list from these spatial and temporal candidates. The merge mode motion vector prediction candidate list can be generated in the order of A0→A1→B0→B1→B2→C0→C1. The merge mode list may have up to five candidates, and blocks having the same information may be excluded from the candidates. As a block having the same information is excluded, if all five candidates are not filled, the remaining list can be filled with virtual candidates. Virtual candidates may include history-based motion vector prediction (HMVP), pairwise average motion vector prediction (PAMVP), and zero candidates.

움직임 후보를 생성하는 다른 방법으로 서브블록 기반 병합 모드가 있을 수 있다.Another method of generating a motion candidate may be a subblock-based merging mode.

도 3은 서브블록 기반 병합 모드의 예를 나타낸다.3 shows an example of a subblock-based merge mode.

서브블록 기반 병합 모드는 코딩 유닛(CU: Coding Unit)을 서브 코딩 유닛 으로 분할하여 서브 코딩 유닛 단위로 다른 움직임 벡터를 유도하여 예측신호를 생성한다. 블록을 분할하지 않고 작은 서브 코딩 유닛 단위로 움직임 벡터를 유도하여 예측을 수행함으로써 예측 정확도를 높일 수 있다.The subblock-based merging mode divides a Coding Unit (CU) into sub Coding Units and derives a different motion vector for each sub Coding Unit to generate a prediction signal. Prediction accuracy can be improved by performing prediction by deriving a motion vector in units of small sub-coding units without dividing blocks.

움직임 벡터 후보 생성부(110)는 우선 현재 코딩 유닛의 대응 블록을 찾는다. 현재 코딩 유닛(22)의 대응 블록은 슬라이스 헤더에서 전송되는 대응 참조 픽처(30, Collocated Picture)에 존재하는 블록으로 현재 코딩 유닛의 좌측 하단에 위치하는 A1 블록이다. A1 블록의 참조 픽처가 대응 참조 픽처(30)와 동일한 경우 A1 위치와 동일한 A1' 블록의 움직임 벡터를 이용하고, 동일하지 않은 경우에는 제로 움직임 벡터를 이용하여 대응 참조 픽처(30)에서 대응 블록의 위치를 찾게 된다.The motion vector candidate generator 110 first finds a corresponding block of the current coding unit. The corresponding block of the current coding unit 22 is a block existing in a corresponding reference picture (collocated picture) 30 transmitted in the slice header, and is an A1 block located at the lower left of the current coding unit. If the reference picture of block A1 is the same as that of the corresponding reference picture 30, the motion vector of block A1' identical to the position of A1 is used. find a location

다음으로 대응 블록으로부터 현재 코딩 유닛(22)의 서브 코딩 유닛(24, 8x8크기 고정 단위) 단위의 움직임 벡터를 유도한다. 이를 위해 현재 코딩 유닛(22)을 8x8의 서브 코딩 유닛(24)으로 분할하고 대응 블록에서 각 서브 코딩 유닛(34)의 중심 위치에 대응되는 움직임 정보를 이용하여 현재 블록의 각 서브 코딩 유닛들의 움직임 벡터를 8x8 단위로 유도하게 된다. Next, a motion vector in units of sub coding units (24, 8x8 fixed units) of the current coding unit 22 is derived from the corresponding block. To this end, the current coding unit 22 is divided into 8x8 sub coding units 24, and each sub coding unit of the current block moves by using motion information corresponding to the center position of each sub coding unit 34 in the corresponding block. Vectors are derived in units of 8x8.

마지막으로 대응 블록에서 유도된 움직임 벡터가 참조 픽처에 적용될 수 있도록 스케일링 과정을 거쳐서 서브 코딩 유닛 단위 움직임 벡터인 SbTMVP (sub-block temporal MVP)로 설정된다.Finally, the motion vector derived from the corresponding block is set to a sub-block temporal MVP (SbTMVP), which is a sub-coding unit unit motion vector, through a scaling process so that it can be applied to a reference picture.

서브블록 기반 병합 모드 예측과정은 이러한 과정을 거쳐 유도된 8x8 블록 기반의 움직임 정보들을 이용하여 현재 코딩 유닛의 예측 블록을 생성한다. 이때 일반 병합 모드와 동일하게 움직임 추정(Motion Estimation) 과정 없이 움직임 보상(Motion Compensation) 과정만이 요구된다. 또한, MVD(Motion Vector Difference)는 복호화기로 전송되지 않는다.The subblock-based merge mode prediction process generates a prediction block of the current coding unit using motion information based on 8x8 blocks derived through this process. In this case, only a motion compensation process is required without a motion estimation process as in the general merge mode. Also, Motion Vector Difference (MVD) is not transmitted to the decoder.

움직임 벡터 후보 생성부(110)는 AMVP 모드로 움직임 벡터 예측 후보 리스트를 생성할 수 있다. AVMP 모드는 최대 2개의 후보를 가질 수 있다. The motion vector candidate generator 110 may generate a motion vector prediction candidate list in AMVP mode. AVMP mode can have up to two candidates.

도 2의 A0, A1 블록 중에서 하나의 후보를 선택하고 B0, B1, B2 블록 중에서 하나의 후보를 선택하는데 중복성 확인을 통해 중복된 움직임 정보는 리스트에서 제거된다. 중복 정보 제거에 의해 후보 리스트가 다 채워지지 않는다면 시간적 후보들인 C0, C1과 HMVP 후보가 추가될 수 있다.When one candidate is selected from blocks A0 and A1 in FIG. 2 and one candidate is selected from blocks B0, B1, and B2, duplicated motion information is removed from the list through redundancy check. If the candidate list is not fully filled by removing redundant information, temporal candidates C0, C1, and HMVP candidates may be added.

움직임 벡터 후보 생성부(110)는 또한 어파인 병합 모드를 이용하여 움직임 벡터 예측 후보 리스트를 생성할 수 있다. 어파인 기반 병합 모드 후보들은 상속 어파인 병합 후보들과 조합 어파인 머지 후보들로 구성된다.The motion vector candidate generator 110 may also generate a motion vector prediction candidate list using the affine merge mode. Affine-based merge mode candidates are composed of inherited affine merge candidates and combinatorial affine merge candidates.

도 4는 어파인 병합 모드의 예를 나타낸다.4 shows an example of an affine merge mode.

상속 어파인 병합 후보는 현재 코딩 유닛(40)의 상단 혹은 좌측 주변 코딩 유닛이 어파인 기반 움직임 벡터 예측 기술을 적용하여 부호화된 경우 해당 코딩 유닛의 CPMV(Control Point Motion Vector)로부터 유도한 현재 코딩 유닛(40)의 CPMV를 의미한다.The inherited affine merge candidate is the current coding unit derived from the CPMV (Control Point Motion Vector) of the coding unit when the top or left neighboring coding units of the current coding unit 40 are coded by applying the affine-based motion vector prediction technique. (40) means the CPMV.

조합 어파인 병합 후보는 주변의 움직임 벡터를 결합하여 유도한 현재 코딩 유닛(40)의 CPMV를 의미한다. 도 4에서 B2→→순서로 움직임 벡터의 존재 여부를 확인하여 첫번째로 가용한 움직임 벡터를 CPMV1로 설정하고, 다음 B1→순서로 움직임 벡터를 확인하여 CPMV2, A1→순서로 움직임 벡터를 확인하여 CPMV3, TMVP (C0 or C1)를 CPMV4로 각각 설정한다.The combination affine merge candidate means the CPMV of the current coding unit 40 derived by combining neighboring motion vectors. In FIG. 4, the existence of a motion vector is checked in the order of B2 → → to set the first available motion vector as CPMV1, and then the motion vector is checked in the order of B1 → CPMV2, and the motion vector is checked in the order of A1 → to obtain CPMV3. , TMVP (C0 or C1) is set to CPMV4 respectively.

설정된 CPMV들은 다음과 같이 조합하여 조합 어파인 머지 후보로 사용된다. 다음은 3개의 CPMV들로 구성된 6-파라미터 어파인 병합 후보이다.The set CPMVs are combined as follows and used as a combination affine merge candidate. The following is a 6-parameter affine merge candidate composed of three CPMVs.

{CPMV1, CPMV2, CPMV3}, {CPMV1, CPMV2, CPMV4},{CPMV1, CPMV2, CPMV3}, {CPMV1, CPMV2, CPMV4},

{CPMV1, CPMV3, CPMV4}, {CPMV2, CPMV3, CPMV4}{CPMV1, CPMV3, CPMV4}, {CPMV2, CPMV3, CPMV4}

다음은 2개의 CPMV들로 구성된 4-파라미터 어파인 병합 후보이다.The following is a 4-parameter affine merge candidate composed of two CPMVs.

{CPMV1, CPMV2}, {CPMV1, CPMV3}{CPMV1, CPMV2}, {CPMV1, CPMV3}

부호화기에서 6-파라미터 어파인 병합 후보를 사용했는지, 4-파라미터 정보를 사용했는지에 대한 여부는 SPS(sequence parameter set)에 sps_affine_type_flag에 표시되어 복호화기로 전송된다.Whether the encoder uses the 6-parameter affine merge candidate or the 4-parameter information is indicated by sps_affine_type_flag in the sequence parameter set (SPS) and transmitted to the decoder.

움직임 벡터 후보 생성부(110)는 이상과 같은 2차원 화면의 움직임 벡터 예측 정보를 3차원 영상 또는 다 시점 영상 등에도 확장할 수 있다.The motion vector candidate generation unit 110 can extend the above-described motion vector prediction information of a 2D screen to a 3D image or a multi-view image.

도 5는 3차원 영상의 픽처 구성 예를 보여준다.5 shows an example of a picture configuration of a 3D image.

기본 시점(Base View) 또는 독립 시점(Independent View)으로 불리는 시점의 영상(V0)은 다른 시점들에 의존하지 않고 독립적으로 부호화된다. 다른 시점의 영상들(V1, V2)는 3차원 부호화기를 이용하여 다른 시점들의 영상을 참조하여 부호화될 수 있기 때문에 의존 시점(Dependent View)이라 불린다.An image V0 of a view called a base view or an independent view is independently encoded without depending on other views. Since images V1 and V2 of different views can be encoded by referring to images of other views using a 3D encoder, they are called dependent views.

현재 픽처(Current Picture)는 여러 액세스 유닛(Access Unit)으로 구성되고, 액세스 유닛은 텍스처("제1 구성요소"로도 지칭됨)와 깊이 맵("제2 구성요소"로도 지칭됨)으로 나누어진다. 즉, 도 5를 참조하면, 다 시점 영상은 각 시점 영상마다 제1 및 제2 구성요소를 포함하도록 구현될 수 있다.The current picture is composed of several access units, and the access unit is divided into a texture (also referred to as a "first component") and a depth map (also referred to as a "second component") . That is, referring to FIG. 5 , a multi-view image may include first and second components for each view image.

움직임 벡터 후보 생성부(110)는 3차원 영상에서 이처럼 다른 시점의 영상 정보들을 사용하여 현재 코딩 유닛의 움직임 벡터 예측 정보를 생성할 수 있다.The motion vector candidate generator 110 may generate motion vector prediction information of the current coding unit by using image information of different viewpoints in the 3D image.

도 6은 3차원 영상에서 다른 시점의 영상을 참조하는 예를 나타낸다.6 shows an example of referring to an image of another viewpoint in a 3D image.

움직임 벡터 후보 생성부(110)는 3차원 영상을 구성하는 깊이 픽처(50, Depth Picture)의 움직임 벡터 후보 생성을 위해 깊이 픽처(50)에 대응하는 텍스처 픽처(60, Texture Picture)의 블록들을 참조할 수 있다.The motion vector candidate generator 110 refers to blocks of a texture picture 60 corresponding to the depth picture 50 to generate a motion vector candidate of the depth picture 50 constituting a 3D image. can do.

움직임 벡터 후보 생성부(110)는 3차원 영상의 종속 시점에서 움직임 정보를 예측하는 경우 부호화가 완료된 다른 시점 ?C은 다른 구성 요소의 움직임 정보를 이용할 수 있다.When the motion vector candidate generation unit 110 predicts motion information at a dependent viewpoint of the 3D image, motion information of other components may be used at another viewpoint ?C at which encoding is completed.

앞의 예들과 마찬가지로 3차원 영상에서도 일반 병합 모드와 AMVP 모드를 이용하여 후보 리스트를 구성할 수 있다.As in the previous examples, a candidate list can be constructed using the general merge mode and the AMVP mode even in a 3D image.

도 7은 3차원 영상에서 움직임 벡터 예측 후보 리스트를 구성하는 예를 나타낸다.7 shows an example of constructing a motion vector prediction candidate list in a 3D image.

도 7의 (b)는 현재 부호화를 진행하고 있는 종속 시점의 코딩 유닛을 나타내고, 도 7의 (a)는 움직임 정보를 참조하기 위한 부호화가 완료된 다른 시점 또는 다른 구성요소를 나타낸다.(b) of FIG. 7 shows a coding unit of a dependent view currently undergoing encoding, and (a) of FIG. 7 shows another view or other component at which encoding for reference to motion information has been completed.

움직임 벡터 후보 생성부(110)는 현재 코딩 유닛(70)의 공간적 후보들(A0, A1, B0, B1, B2)과 시간적 후보들(C0, C1) 외에 다른 시점의 코딩 유닛(80)의 블록들(X0, X1, X2, X3)를 추가로 이용하여 음직임 정보 후보 리스트를 생성할 수 있다.The motion vector candidate generation unit 110 includes spatial candidates (A0, A1, B0, B1, B2) and temporal candidates (C0, C1) of the current coding unit 70 as well as blocks ( X0, X1, X2, X3) may be additionally used to generate a job information candidate list.

움직임 벡터 후보 생성부(110)는 일반 병합 모드로 후보 리스트를 생성할 수 있다. 공간적, 시간적 후보를 이용하던 앞의 예에서 추가로 다른 시점의 후보 블록을 이용함으로써 일반 병합 모드 후보 리스트는 A0 →A1 →B0→B1→B2→ X0 →C0 (→C0를 이용할 수 없는 경우 C1)의 순으로 확인할 수 있다. 이들 중 서로 중복되지 않는 후보들을 일반 병합 후보 리스트로 삽입된다. The motion vector candidate generator 110 may generate a candidate list in a normal merge mode. In the previous example where spatial and temporal candidates were used, by using candidate blocks from other viewpoints, the general merge mode candidate list is A0 → A1 → B0 → B1 → B2 → X0 → C0 (C1 if → C0 is not available) can be checked in order of Among them, non-overlapping candidates are inserted into the general merge candidate list.

만일 X0이 움직임 정보를 가지지 않으면, 즉, 화면 내 모드로 부호화 되었으면 X0 블록을 기준으로 반시계 방향으로 가까운 블록들을 확인한다. 다시 말해 X1 →X2 →X3 순서로 움직임 정보를 확인하여 사용 가능한 블록들의 움직임 정보를 확인하는 것이다.If X0 does not have motion information, that is, if it is coded in the intra-screen mode, blocks close to the X0 block in a counterclockwise direction are identified. In other words, motion information of usable blocks is checked by checking the motion information in the order of X1 → X2 → X3.

움직임 벡터 후보 생성부(110)는 AMVP 모드로 후보 리스트를 생성할 수도 있다. 도 7의 (b)에서 A0→중에서 하나의 후보를, B0→→에서 하나의 후보를 선택하여 두 개의 후보를 후보 리스트로 생성한다. 이때 중복성 확인을 통해 중복된 움직임 정보는 리스트에서 제거되며, 중복 제거에 의해 후보 리스트가 다 채워지지 않는다면 도 7의 (a)에서 X0, X1, X2, X3 중 움직임 정보를 가지고 있는 후보를 확인하여 리스트에 추가된다. 여기서도 물론 중복 정보는 체크되어 제거된다. 이 과정 이후에도 기존 후보의 수가 2개 보다 작을 경우 후보 집합에 제로 후보가 추가된다.The motion vector candidate generator 110 may generate a candidate list in AMVP mode. In (b) of FIG. 7, one candidate from A0→ and one candidate from B0→→ are selected to generate two candidates as a candidate list. At this time, duplicated motion information is removed from the list through the redundancy check, and if the candidate list is not completely filled by the duplicate removal, a candidate having motion information among X0, X1, X2, and X3 in FIG. added to the list Here, of course, redundant information is checked and removed. Even after this process, if the number of existing candidates is less than 2, zero candidates are added to the candidate set.

움직임 벡터 후보 생성부(110)는 서브블록 기반 병합 모드로 후보 리스트를 생성할 수도 있다. 도 8은 서브블록 기반 병합 모드의 예를 나타낸다.The motion vector candidate generator 110 may generate a candidate list in a subblock-based merge mode. 8 shows an example of a subblock-based merge mode.

3차원 영상을 포함한 다 시점 화면 및 계층 간 예측에서는 현재 픽처의 대응 참조 픽처 외에도 현재 픽처에 대응하는 다른 시점 또는 다른 구성요소 픽처의 정보를 확인할 수 있다. In a multi-view screen including a 3D video and inter-layer prediction, information of other views or other component pictures corresponding to the current picture may be checked in addition to the corresponding reference picture of the current picture.

따라서 본 발명의 움직임 벡터 후보 생성부(110)는 현재 픽처(도 8의 (a))의 대응하는 다른 시점 또는 다른 구성요소의 픽처(도 8의 (b))가 있는 경우 시간적 참조 픽처 대신 다른 시점 또는 다른 구성요소의 픽처를 이용할 수 있다.Therefore, the motion vector candidate generation unit 110 of the present invention replaces the temporal reference picture with another viewpoint corresponding to the current picture (FIG. 8(a)) or a picture of another component (FIG. 8(b)). A picture of a viewpoint or other component may be used.

현재 코딩 유닛(91)의 대응 블록은 현재 픽처에 대응하는 다른 시점 또는 다른 구성요소의 픽처에서 현재 코딩 유닛(91)의 좌측 상단의 (posX, posY)에 위치하는 블록(92)에 대응하는 블록(94)이다.The corresponding block of the current coding unit 91 is a block corresponding to the block 92 located at (posX, posY) of the upper left of the current coding unit 91 in another viewpoint corresponding to the current picture or a picture of another component. (94).

이때 서브 코딩 유닛의 사이즈는 8x8 사이즈로 고정하지 않고 현재 코딩 유닛(91)의 사이즈에 따라 다음 식과 같이 가변적으로 정할 수 있다.At this time, the size of the sub coding unit may be determined variably according to the following equation according to the size of the current coding unit 91, rather than being fixed to an 8x8 size.

size_of_sub_CU = size_of_current_CU >> 2size_of_sub_CU = size_of_current_CU >> 2

size_of_sub_CU는 서브 코딩 유닛의 사이즈이고 size_of_current_CU는 현재 코딩 유닛(91)의 사이즈이다. 비트 연산에 의해 size_of_sub_CU가 8x8보다 작아지는 경우에는 8x8 크기로 고정할 수도 있다.size_of_sub_CU is the size of the sub coding unit and size_of_current_CU is the size of the current coding unit 91. When size_of_sub_CU becomes smaller than 8x8 by bit operation, it may be fixed to 8x8 size.

움직임 벡터 후보 생성부(110)는 다른 시점 또는 다른 구성요소의 픽처를 참조하여 어파인 기반 병합 움직임 예측도 가능하다.The motion vector candidate generator 110 may also perform affine-based merge motion prediction by referring to pictures of other viewpoints or other components.

도 7의 (a)에서 X0, X1, X2, X3 블록이 어파인 기반 움직임 예측 기술로 부호화 된 경우 그 블록을 현재 코딩 유닛의 CPMV로 사용할 수 있는 것이다.In (a) of FIG. 7, when blocks X0, X1, X2, and X3 are coded with the affine-based motion prediction technique, the blocks can be used as the CPMV of the current coding unit.

예를 들어 X0를 CPMV5로 설정한다면 6-파라미터 어파인 병합 후보들의 조합은 다음과 같이 구성할 수 있다.For example, if X0 is set to CPMV5, a combination of 6-parameter affine merge candidates can be configured as follows.

{CPMV1, CPMV2, CPMV3}, {CPMV1, CPMV2, CPMV5 }, {CPMV1, CPMV2, CPMV3}, {CPMV1, CPMV2, CPMV5 },

{CPMV1, CPMV3, CPMV5 }, {CPMV2, CPMV3, CPMV5 }{CPMV1, CPMV3, CPMV5 }, {CPMV2, CPMV3, CPMV5 }

움직임 벡터 예측부(120)는 이렇게 움직임 벡터 후보 생성부(110)에서 생성한 움직임 벡터 예측 후보 리스트를 사용하여 현재 코딩 유닛의 움직임을 예측하여 부호화를 진행하게 된다.The motion vector predictor 120 predicts the motion of the current coding unit using the motion vector predictor candidate list generated by the motion vector candidate generator 110 and performs encoding.

도 9는 본 발명의 바람직한 다른 실시예에 따른 움직임 예측 방법의 개략적인 흐름도이다.9 is a schematic flowchart of a motion prediction method according to another preferred embodiment of the present invention.

본 발명의 움직임 예측 방법은 3차원 영상과 같은 다 시점 또는 다 계층 영상에서 다른 시점 또는 다른 구성요소의 정보를 이용할 수 있다.The motion prediction method of the present invention may use information of different viewpoints or other elements in a multi-view or multi-layer image such as a 3D image.

우선 다른 시점 또는 다른 구성요소의 블록 중 부호화가 완료된 블록을 움직임 벡터 예측 후보 리스트로 생성할 수 있다(S110). 움직임 후보 리스트 생성은 일반 병합 모드와 AMVP 모드를 이용할 수 있다. 또한 서브블록 기반 병합 모드를 이용하는 것도 가능하다. 각 모드의 자세한 방법은 앞서 설명한 바와 같다.First, among blocks of different views or other components, a block on which encoding has been completed may be generated as a motion vector prediction candidate list (S110). A general merge mode and an AMVP mode may be used to generate a motion candidate list. It is also possible to use a subblock-based merging mode. The detailed method of each mode is as described above.

움직임 벡터 예측 후보 리스트를 생성한 다음 이 후보 리스트를 이용하여 움직임 예측을 하는 부호화를 진행한다(S120).After generating a motion vector prediction candidate list, encoding for motion prediction is performed using the candidate list (S120).

도 10은 본 발명의 바람직한 또 다른 실시예에 따른 영상 복호화기에서의 움직임 예측 장치의 개략적인 구조도이다.10 is a schematic structural diagram of a motion estimation device in a video decoder according to another preferred embodiment of the present invention.

본 발명의 움직임 예측 장치(2)는 움직임 벡터 후보 생성부(210) 및 움직임 벡터 적용부(220)로 구성된다.The motion estimation apparatus 2 of the present invention is composed of a motion vector candidate generation unit 210 and a motion vector application unit 220.

움직임 벡터 후보 생성부(210)는 다른 시점 또는 다른 구성요소의 블록 중 복호화가 완료된 블록의 움직임 벡터들을 움직임 벡터 예측 후보 리스트로 생성한다. 움직임 벡터 후보 리스트 생성은 일반 병합 모드와 AMVP 모드를 이용할 수 있다. 또한 서브블록 기반 병합 모드를 이용하는 것도 가능하다. 각 모드의 자세한 방법은 앞서 설명한 바와 같다.The motion vector candidate generator 210 generates motion vectors of decoded blocks among blocks of different views or other components as a motion vector prediction candidate list. A general merge mode and an AMVP mode may be used to generate a motion vector candidate list. It is also possible to use a subblock-based merging mode. The detailed method of each mode is as described above.

움직임 벡터 적용부(220)는 앞서 생성한 움직임 벡터 후보 리스트 중에서 부호화기로부터 전송받은 움직임 벡터 후보 인덱스에 해당하는 움직임 벡터를 사용하여 3차원 영상의 복호화에 적용하게 된다.The motion vector applicator 220 uses a motion vector corresponding to a motion vector candidate index received from the encoder from among the previously generated motion vector candidate list and applies it to decoding of a 3D image.

도 11은 본 발명의 바람직한 또 다른 실시예에 따른 영상 복호화기에서의 움직임 예측 방법의 흐름도이다.11 is a flowchart of a motion prediction method in a video decoder according to another preferred embodiment of the present invention.

우선 복호화가 완료된 다른 시점 또는 다른 구성요소의 블록의 움직임 벡터들을 이용하여 움직임 벡터 예측 후보 리스트를 생성한다(S210). 움직임 벡터 후보 리스트 생성은 일반 병합 모드와 AMVP 모드를 이용할 수 있다. 또한 서브블록 기반 병합 모드를 이용하는 것도 가능하다.First of all, a motion vector prediction candidate list is generated using motion vectors of blocks of different time points or other components that have been decoded (S210). A general merge mode and an AMVP mode may be used to generate a motion vector candidate list. It is also possible to use a subblock-based merging mode.

움직임 벡터 예측 후보 리스트가 완성되면 부호화기로부터 전송받은 움직임 벡터 후보 인덱스에 해당하는 움직임 벡터를 이용하여 현재 블록의 움직임 벡터를 적용하는 복호화를 진행하게 된다(S220).When the motion vector prediction candidate list is completed, decoding is performed by applying the motion vector of the current block using the motion vector corresponding to the motion vector candidate index transmitted from the encoder (S220).

이렇게 다 시점 또는 다 계층 영상에서 다른 시점 또는 다른 구성요소의 블록을 움직임 예측을 위해 사용함으로써 본 발명은 움직임 예측 부호화의 효율을 높일 수 있는 효과가 있다.By using blocks of different views or different elements in multi-view or multi-layer images for motion prediction, the present invention has an effect of increasing the efficiency of motion prediction encoding.

본 발명의 보호범위가 이상에서 명시적으로 설명한 실시예의 기재와 표현에 제한되는 것은 아니다. 또한, 본 발명이 속하는 기술분야에서 자명한 변경이나 치환으로 말미암아 본 발명이 보호범위가 제한될 수도 없음을 다시 한 번 첨언한다.The protection scope of the present invention is not limited to the description and expression of the embodiments explicitly described above. In addition, it is added once again that the scope of protection of the present invention cannot be limited due to obvious changes or substitutions in the technical field to which the present invention belongs.

Claims (14)

각 시점 영상마다 텍스처 픽처인 제1 구성요소와 깊이 픽처인 제2 구성요소를 포함하도록 구현된 다 시점 영상을 부호화하기 위한 움직임 예측 장치에 있어서:
부호화가 완료된 제1 시점 영상의 제1 및 제2 구성요소 중 어느 하나의 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 움직임 벡터 후보 생성부; 및
상기 움직임 벡터 예측 후보 리스트를 이용하여 제2 시점 영상의 제1 및 제2 구성요소 중 다른 하나의 구성요소의 현재 블록의 움직임 벡터 예측 정보를 생성하는 움직임 벡터 예측부;를 포함하며,
상기 움직임 벡터 후보 생성부는,
상기 현재 블록이 포함된 현재 프레임 내의 블록들에 해당하는 공간적인 블록들(A0, A1, B0, B1, B2)과, 상기 현재 프레임에 대한 동일 종류 유닛에서의 다른 프레임인 참조 프레임 내의 블록들에 해당하는 시간적인 블록들(C0, C1)과, 상기 어느 하나의 구성요소의 블록이 포함된 프레임 내의 블록들(X0, X1, X2, X3)을 이용하여, 서로 중복되지 않는 블록들이 포함되는 상기 움직임 벡터 후보 리스트를 생성하되,
상기 현재 블록의 좌측 하단 블록(A0), 좌측 블록(A1), 우측 상단 블록(B0), 상단 블록(B1), 좌측 상단 블록(B2), 상기 어느 하나의 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록(X0), 상기 참조 프레임 내의 상기 현재 블록과 동일한 위치에 있는 블록(C0)의 순서로 상기 움직임 벡터 예측 후보 리스트를 생성하고,
상기 C0를 이용할 수 없으면 상기 C0 순서에서 상기 C0의 우측 하단 블록(C1)을 이용하며,
상기 X0가 움직임 정보를 가지지 않으면 상기 X0 순서에서 상기 X0의 상단 블록(X1), 상단 좌측 블록(X2), 좌측 블록(X3)의 순서로 움직임 정보를 확인하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 하는, 움직임 예측 장치.
In the motion prediction apparatus for encoding a multi-view image implemented to include a first component that is a texture picture and a second component that is a depth picture for each view image:
a motion vector candidate generation unit generating a motion vector prediction candidate list using a block of any one of first and second elements of an encoded first view image; and
a motion vector prediction unit generating motion vector prediction information of a current block of another one of first and second components of a second view image using the motion vector prediction candidate list;
The motion vector candidate generation unit,
Spatial blocks (A0, A1, B0, B1, B2) corresponding to blocks in the current frame including the current block, and blocks in a reference frame that is another frame in the same type unit for the current frame Using the corresponding temporal blocks (C0, C1) and the blocks (X0, X1, X2, X3) in the frame including the block of any one of the components, blocks that do not overlap with each other are included. Create a motion vector candidate list,
The current block among the lower left block (A0), the left block (A1), the upper right block (B0), the upper block (B1), the upper left block (B2), and the blocks of any one of the components of the current block generating the motion vector prediction candidate list in the order of a block (X0) located at the same position and a block (C0) located at the same position as the current block in the reference frame;
If the C0 is not available, the lower right block C1 of the C0 is used in the C0 sequence,
If the X0 does not have motion information, the motion information is checked in the order of the upper block (X1), upper left block (X2), and left block (X3) of the X0 in the order of X0 to generate the motion vector prediction candidate list Characterized in that, the motion prediction device.
삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 움직임 벡터 후보 생성부는 상기 A0 및 상기 A1 중 하나와, 상기 B0, 상기 B1 및 상기 B0 중 하나를 각각 포함하도록 상기 움직임 벡터 예측 후보 리스트를 생성하되, 상기 움직임 벡터 예측 후보 리스트에 추가된 블록들의 움직임 정보가 중복되어 있으면 중복된 블록을 제거하고 상기 X0, 상기 X1, 상기 X2 및 상기 X3의 순서로 확인하여 움직임 정보를 가지는 블록을 상기 움직임 벡터 예측 후보 리스트에 추가하는 것을 특징으로 하는, 움직임 예측 장치.
According to claim 1,
The motion vector candidate generation unit generates the motion vector prediction candidate list to include one of the A0 and the A1 and one of the B0, the B1 and the B0, respectively, and includes blocks added to the motion vector prediction candidate list. If the motion information is duplicated, the duplicated block is removed, and a block having motion information is added to the motion vector prediction candidate list by checking the X0, the X1, the X2, and the X3 in order. Device.
제5항에 있어서,
상기 움직임 벡터 후보 생성부는 상기 X0, 상기 X1, 상기 X2 및 상기 X3에서의 움직임 정보가 상기 움직임 벡터 예측 후보 리스트에 이미 포함된 블록의 움직임 정보와 같으면 상기 X0, 상기 X1, 상기 X2 및 상기 X3에서의 추가 대신 0으로 구성되는 움직임 벡터 후보를 상기 움직임 벡터 예측 후보 리스트에 추가하는 것을 특징으로 하는, 움직임 예측 장치.
According to claim 5,
The motion vector candidate generation unit, when the motion information of the X0, the X1, the X2, and the X3 is the same as the motion information of a block already included in the motion vector prediction candidate list, the motion vector candidate generation unit in the X0, the X1, the X2, and the X3. A motion vector candidate consisting of 0 is added to the motion vector prediction candidate list instead of adding .
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 하나 이상의 프로세서 및 메모리를 포함하는 제어부에 의해 수행되며, 각 시점 영상마다 텍스처 픽처인 제1 구성요소와 깊이 픽처인 제2 구성요소를 포함하도록 구현된 다 시점 영상을 부호화하기 위한 움직임 예측 방법에 있어서:
부호화가 완료된 제1 시점 영상의 제1 및 제2 구성요소 중 어느 하나의 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 단계; 및
상기 움직임 벡터 예측 후보 리스트를 이용하여 제2 시점 영상의 제1 및 제2 구성요소 중 다른 하나의 구성요소의 현재 블록의 움직임 벡터 예측 정보를 생성하는 단계;를 포함하며,
상기 움직임 벡터 예측 리스트를 생성하는 단계는,
상기 현재 블록이 포함된 현재 프레임 내의 블록들에 해당하는 공간적인 블록들(A0, A1, B0, B1, B2)과, 상기 현재 프레임에 대한 동일 종류 유닛에서의 다른 프레임인 참조 프레임 내의 블록들에 해당하는 시간적인 블록들(C0, C1)과, 상기 어느 하나의 구성요소의 블록이 포함된 프레임 내의 블록들(X0, X1, X2, X3)을 이용하여, 서로 중복되지 않는 블록들이 포함되는 상기 움직임 벡터 후보 리스트를 생성하되,
상기 현재 블록의 좌측 하단 블록(A0), 좌측 블록(A1), 우측 상단 블록(B0), 상단 블록(B1), 좌측 상단 블록(B2), 상기 어느 하나의 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록(X0), 상기 참조 프레임 내의 상기 현재 블록과 동일한 위치에 있는 블록(C0)의 순서로 상기 움직임 벡터 예측 후보 리스트를 생성하고,
상기 C0를 이용할 수 없으면 상기 C0 순서에서 상기 C0의 우측 하단 블록(C1)을 이용하며,
상기 X0가 움직임 정보를 가지지 않으면 상기 X0 순서에서 상기 X0의 상단 블록(X1), 상단 좌측 블록(X2), 좌측 블록(X3)의 순서로 움직임 정보를 확인하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 하는, 움직임 예측 방법.
A motion prediction method for encoding a multi-view image, which is performed by a controller including one or more processors and memory, and is implemented to include a first component that is a texture picture and a second component that is a depth picture for each view image. :
generating a motion vector prediction candidate list using a block of any one of first and second components of an encoded first view image; and
generating motion vector prediction information of a current block of another one of first and second components of a second view image by using the motion vector prediction candidate list;
Generating the motion vector prediction list includes:
Spatial blocks (A0, A1, B0, B1, B2) corresponding to blocks in the current frame including the current block, and blocks in a reference frame that is another frame in the same type unit for the current frame Using the corresponding temporal blocks (C0, C1) and the blocks (X0, X1, X2, X3) in the frame including the block of any one of the components, blocks that do not overlap with each other are included. Create a motion vector candidate list,
The current block among the lower left block (A0), the left block (A1), the upper right block (B0), the upper block (B1), the upper left block (B2), and the blocks of any one of the components of the current block generating the motion vector prediction candidate list in the order of a block (X0) located at the same position and a block (C0) located at the same position as the current block in the reference frame;
If the C0 is not available, the lower right block C1 of the C0 is used in the C0 sequence,
If the X0 does not have motion information, the motion information is checked in the order of the upper block (X1), upper left block (X2), and left block (X3) of the X0 in the order of X0 to generate the motion vector prediction candidate list Characterized in that, motion prediction method.
각 시점 영상마다 텍스처 픽처인 제1 구성요소와 깊이 픽처인 제2 구성요소를 포함하도록 구현된 다 시점 영상을 복호화하기 위한 움직임 예측 장치에 있어서:
복호화가 완료된 제1 시점 영상의 제1 및 제2 구성요소 중 어느 하나의 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 움직임 벡터 후보 생성부; 및
상기 움직임 벡터 예측 후보 리스트를 이용하여 부호화기로부터 전송받은 인덱스에 해당하는 움직임 벡터를 제2 시점 영상의 제1 및 제2 구성요소 중 다른 하나의 구성요소의 현재 블록의 움직임 벡터로 적용하여 복호화를 진행하는 움직임 벡터 적용부;를 포함하며,
상기 움직임 벡터 후보 생성부는,
상기 현재 블록이 포함된 현재 프레임 내의 블록들에 해당하는 공간적인 블록들(A0, A1, B0, B1, B2)과, 상기 현재 프레임에 대한 동일 종류 유닛에서의 다른 프레임인 참조 프레임 내의 블록들에 해당하는 시간적인 블록들(C0, C1)과, 상기 어느 하나의 구성요소의 블록이 포함된 프레임 내의 블록들(X0, X1, X2, X3)을 이용하여, 서로 중복되지 않는 블록들이 포함되는 상기 움직임 벡터 후보 리스트를 생성하되,
상기 현재 블록의 좌측 하단 블록(A0), 좌측 블록(A1), 우측 상단 블록(B0), 상단 블록(B1), 좌측 상단 블록(B2), 상기 어느 하나의 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록(X0), 상기 참조 프레임 내의 상기 현재 블록과 동일한 위치에 있는 블록(C0)의 순서로 상기 움직임 벡터 예측 후보 리스트를 생성하고,
상기 C0를 이용할 수 없으면 상기 C0 순서에서 상기 C0의 우측 하단 블록(C1)을 이용하며,
상기 X0가 움직임 정보를 가지지 않으면 상기 X0 순서에서 상기 X0의 상단 블록(X1), 상단 좌측 블록(X2), 좌측 블록(X3)의 순서로 움직임 정보를 확인하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 하는, 움직임 예측 장치.
In the motion estimation apparatus for decoding a multi-view image implemented to include a first component that is a texture picture and a second component that is a depth picture for each view image:
a motion vector candidate generation unit generating a motion vector prediction candidate list using a block of any one of first and second elements of a decoded first view image; and
Decoding is performed by applying the motion vector corresponding to the index transmitted from the encoder using the motion vector prediction candidate list as the motion vector of the current block of the other component among the first and second components of the second view image. A motion vector application unit that does;
The motion vector candidate generation unit,
Spatial blocks (A0, A1, B0, B1, B2) corresponding to blocks in the current frame including the current block, and blocks in a reference frame that is another frame in the same type unit for the current frame Using the corresponding temporal blocks (C0, C1) and the blocks (X0, X1, X2, X3) in the frame including the block of any one of the components, blocks that do not overlap with each other are included. Create a motion vector candidate list,
The current block among the lower left block (A0), the left block (A1), the upper right block (B0), the upper block (B1), the upper left block (B2), and the blocks of any one of the components of the current block generating the motion vector prediction candidate list in the order of a block (X0) located at the same position and a block (C0) located at the same position as the current block in the reference frame;
If the C0 is not available, the lower right block C1 of the C0 is used in the C0 sequence,
If the X0 does not have motion information, the motion information is checked in the order of the upper block (X1), upper left block (X2), and left block (X3) of the X0 in the order of X0 to generate the motion vector prediction candidate list Characterized in that, the motion prediction device.
하나 이상의 프로세서 및 메모리를 포함하는 제어부에 의해 수행되며, 각 시점 영상마다 텍스처 픽처인 제1 구성요소와 깊이 픽처인 제2 구성요소를 포함하도록 구현된 다 시점 영상을 복호화하기 위한 움직임 예측 방법에 있어서:
복호화가 완료된 제1 시점 영상의 제1 및 제2 구성요소 중 어느 하나의 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 단계; 및
상기 움직임 벡터 예측 후보 리스트를 이용하여 부호화기로부터 전송받은 인덱스에 해당하는 움직임 벡터를 제2 시점 영상의 제1 및 제2 구성요소 중 다른 하나의 구성요소의 현재 블록의 움직임 벡터로 적용하여 복호화를 진행하는 단계;를 포함하며,
상기 움직임 벡터 예측 후보 리스트를 생성하는 단계는,
상기 현재 블록이 포함된 현재 프레임 내의 블록들에 해당하는 공간적인 블록들(A0, A1, B0, B1, B2)과, 상기 현재 프레임에 대한 동일 종류 유닛에서의 다른 프레임인 참조 프레임 내의 블록들에 해당하는 시간적인 블록들(C0, C1)과, 상기 어느 하나의 구성요소의 블록이 포함된 프레임 내의 블록들(X0, X1, X2, X3)을 이용하여, 서로 중복되지 않는 블록들이 포함되는 상기 움직임 벡터 후보 리스트를 생성하되,
상기 현재 블록의 좌측 하단 블록(A0), 좌측 블록(A1), 우측 상단 블록(B0), 상단 블록(B1), 좌측 상단 블록(B2), 상기 어느 하나의 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록(X0), 상기 참조 프레임 내의 상기 현재 블록과 동일한 위치에 있는 블록(C0)의 순서로 상기 움직임 벡터 예측 후보 리스트를 생성하고,
상기 C0를 이용할 수 없으면 상기 C0 순서에서 상기 C0의 우측 하단 블록(C1)을 이용하며,
상기 X0가 움직임 정보를 가지지 않으면 상기 X0 순서에서 상기 X0의 상단 블록(X1), 상단 좌측 블록(X2), 좌측 블록(X3)의 순서로 움직임 정보를 확인하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 하는, 움직임 예측 방법.
A motion prediction method for decoding a multi-view image, which is performed by a control unit including one or more processors and memory, and is implemented to include a first component that is a texture picture and a second component that is a depth picture for each view image. :
generating a motion vector prediction candidate list using a block of any one of first and second components of a decoded first view image; and
Decoding is performed by applying the motion vector corresponding to the index transmitted from the encoder to the motion vector of the current block of the other component among the first and second components of the second view image using the motion vector prediction candidate list. Including;
Generating the motion vector prediction candidate list includes:
Spatial blocks (A0, A1, B0, B1, B2) corresponding to blocks in the current frame including the current block, and blocks in a reference frame that is another frame in the same type unit for the current frame Using the corresponding temporal blocks (C0, C1) and the blocks (X0, X1, X2, X3) in the frame including the block of any one component, the blocks that do not overlap with each other are included. Create a motion vector candidate list,
Among the lower left block (A0), the left block (A1), the upper right block (B0), the upper block (B1), the upper left block (B2), and the blocks of any one of the components of the current block, generating the motion vector prediction candidate list in the order of a block (X0) located at the same position and a block (C0) located at the same position as the current block in the reference frame;
If the C0 is not available, the lower right block C1 of the C0 is used in the C0 sequence,
If the X0 does not have motion information, the motion information is checked in the order of the upper block (X1), upper left block (X2), and left block (X3) of the X0 in the order of X0 to generate the motion vector prediction candidate list Characterized in that, motion prediction method.
KR1020200162490A 2020-11-27 2020-11-27 Apparatus and method for motion prediction of multi view or multi layer video KR102501051B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200162490A KR102501051B1 (en) 2020-11-27 2020-11-27 Apparatus and method for motion prediction of multi view or multi layer video

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200162490A KR102501051B1 (en) 2020-11-27 2020-11-27 Apparatus and method for motion prediction of multi view or multi layer video

Publications (2)

Publication Number Publication Date
KR20220074233A KR20220074233A (en) 2022-06-03
KR102501051B1 true KR102501051B1 (en) 2023-02-17

Family

ID=81982458

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200162490A KR102501051B1 (en) 2020-11-27 2020-11-27 Apparatus and method for motion prediction of multi view or multi layer video

Country Status (1)

Country Link
KR (1) KR102501051B1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015056955A1 (en) * 2013-10-14 2015-04-23 삼성전자 주식회사 Method and apparatus for coding multi-view video, and method and apparatus for decoding multi-view vide
CN116668725A (en) * 2018-04-03 2023-08-29 英迪股份有限公司 Method for encoding and decoding image and non-transitory computer readable storage medium
US11463723B2 (en) * 2018-12-26 2022-10-04 Apple Inc. Method for encoding/decoding image signal and device therefor

Also Published As

Publication number Publication date
KR20220074233A (en) 2022-06-03

Similar Documents

Publication Publication Date Title
JP7417670B2 (en) Partial cost calculation
US11516498B2 (en) Image encoding/decoding apparatus and method
JP5580453B2 (en) Direct mode encoding and decoding apparatus
KR101370919B1 (en) A method and apparatus for processing a signal
KR101753171B1 (en) Method of simplified view synthesis prediction in 3d video coding
US10110915B2 (en) Method and apparatus for inter-component motion prediction in three-dimensional video coding
JP2015533038A5 (en)
KR20200122416A (en) Image encoding/decoding method and device
KR101861497B1 (en) Method and apparatus of camera parameter signaling in 3d video coding
CN104412597A (en) Method and apparatus of unified disparity vector derivation for 3d video coding
US20210227207A1 (en) Generation and usage of combined affine merge candidate
CN113796084A (en) Motion vector and prediction sample refinement
US11863771B2 (en) Updating of history based motion vector prediction tables
KR20230129320A (en) Method and device for creating inter-view merge candidates
KR20200005575A (en) Method and apparatus for determining motion vector
KR20210094664A (en) Side-motion refinement in video encoding/decoding systems
KR102501051B1 (en) Apparatus and method for motion prediction of multi view or multi layer video
CN113709498A (en) Inter-frame prediction method, encoder, decoder, and computer storage medium
KR102403817B1 (en) Block vector estimation method for multiview video based on intra block copy and decoder
Chen et al. Motion hooks for the multiview extension of HEVC
CN104904219A (en) Method and apparatus of disparity vector derivation in three-dimensional video coding
CN105144714A (en) Method and apparatus of disparity vector derivation in 3d video coding
KR20180117095A (en) Coding method, decoding method, and apparatus for video global disparity vector.
CN105474643A (en) Method of simplified view synthesis prediction in 3d video coding

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant