KR20220074233A - 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 PDFInfo
- Publication number
- KR20220074233A KR20220074233A KR1020200162490A KR20200162490A KR20220074233A KR 20220074233 A KR20220074233 A KR 20220074233A KR 1020200162490 A KR1020200162490 A KR 1020200162490A KR 20200162490 A KR20200162490 A KR 20200162490A KR 20220074233 A KR20220074233 A KR 20220074233A
- Authority
- KR
- South Korea
- Prior art keywords
- motion vector
- block
- motion
- prediction
- blocks
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/12—Selection 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/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/31—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/527—Global 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-layer video, from motion prediction in the conventional spatial and temporal picture in the encoding step of a multi-view or multi-layer video 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 improved by using the .
Description
본 발명은 다 시점 또는 다 계층 영상의 부호화/복호화에 관한 것으로, 특히 다 시점 또는 다 계층 영상의 특징을 이용한 움직임 정보 예측 기술에 관한 것이다.The present invention relates to encoding/decoding of a multi-view or multi-layered image, and more particularly, to a motion information prediction technique using features of a multi-view or multi-layered image.
최근 디스플레이의 크기가 커지고 해상도도 높아지면서 비디오 데이터의 양도 점점 증가하는 추세이다. 게다가 3D 비디오나 다 시점(Multi View) 비디오와 같이 종래의 2D 비디오로는 커버할 수 없는 몰입형 비디오를 추구하는 새로운 비디오 포맷의 등장으로 전송되는 비디오 데이터의 양은 엄청나게 증가하고 있다.Recently, as the size of the display increases and the resolution increases, the amount of video data is also increasing. In addition, with the advent of new video formats pursuing immersive video, which 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 a large amount of 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 encoding technology is essential.
여러 비디오 압축 부호화 기술들이 있는데 그 중 움직임 예측(Motion Prediction)은 화면을 여러 블록으로 분할하여 현재 프레임의 블록이 이전 프레임의 어느 블록이 이동한 것인가를 예측하는 방법이다. 블록의 움직임을 예측하여 움직임 벡터(Motion Vector)만을 전송하면 되므로 전송되는 데이터 양을 줄일 수 있다.There are several video compression encoding techniques. Among them, motion prediction is a method of predicting which block of the previous frame is moved from the block of the current frame by dividing the screen into several blocks. Since it is only necessary to predict the motion of a block and transmit only a motion vector, the amount of transmitted data can be reduced.
종래 HEVE(High efficiency video coding) 혹은 VVC(Versatile Video Coding) 등의 비디오 코덱은 움직임 벡터 예측 방법으로 머지 모드(Merge Mode) 또는 AMVP(Advanced Motion Vector Prediction) 모드 등을 사용하고 있다.Conventional video codecs such as high efficiency video coding (HEV) or versatile video coding (VVC) use a merge mode or 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 neighboring blocks existing in the same frame as the current prediction block (PU: Prediction Unit, or CU: Coding Unit) and candidates derived from blocks at the same position as the current prediction block in the reference frame. Blocks are selected and movement is predicted from them.
하지만 3D 비디오 혹은 다 시점 비디오의 경우에는 종래기술과 같은 공간적, 시간적 후보들 외에도 다른 시점의 프레임들 또는 다른 구성요소의 프레임들을 이용하면 움직임 예측을 보다 정확하게 할 수 있으나 아직까지 이러한 시도는 없는 실정이다.However, in the case of 3D video or multi-view video, motion prediction can be performed more accurately by using frames of other views or other components in addition to spatial and temporal candidates as in the prior art, but there is no such attempt yet.
본 발명의 발명자들은 이러한 종래 기술의 다 시점 또는 다 계층 비디오의 움직임 예측 문제 해결을 위해 연구 노력해 왔다. 다 시점 또는 다 계층 비디오의 다른 시점 또는 다른 구성요소의 프레임들을 이용한 움직임 예측 장치 및 방법을 완성하기 위해 많은 노력 끝에 본 발명을 완성하기에 이르렀다.The inventors of the present invention have been researching and trying to solve the motion prediction problem of the 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 motion prediction using frames of different views or different components of a multi-view or multi-layer video.
본 발명의 목적은 다 시점 또는 다 계층 영상에서 다른 시점 또는 다른 구성요소의 움직임 정보들을 이용함으로써 영상 부호화의 효율을 향상시키려는 것이다.It is an object of the present invention to improve the efficiency of video encoding by using motion information of different views or other components in a multi-view or multi-layer video.
한편, 본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론 할 수 있는 범위 내에서 추가적으로 고려될 것이다.On the other hand, other objects not specified in the present invention will be additionally considered within the range that can be easily inferred from the following detailed description and effects thereof.
본 발명에 따른 움직임 예측 장치는, Motion prediction apparatus according to the present invention,
부호화가 완료된 다른 시점 또는 다른 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 움직임 벡터 후보 생성부; 및 상기 움직임 벡터 예측 후보 리스트를 이용하여 현재 블록의 움직임 벡터 예측 정보를 생성하는 움직임 벡터 예측부;를 포함한다.a motion vector candidate generator for generating a motion vector prediction candidate list using blocks of other components or other viewpoints for which encoding has been completed; and a motion vector prediction unit that generates motion vector prediction information of a current block by using the motion vector prediction candidate list.
상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 이용하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 한다.The motion vector candidate generator may generate the motion vector prediction candidate list by using a block located at the same position as the current block among blocks of other components or at another time point at which the encoding is completed.
상기 움직임 벡터 후보 생성부는 상기 현재 블록의 좌측 하단 블록, 좌측 블록, 우측 상단 블록, 상단 블록, 좌측 상단 블록, 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록, 참조 프레임 내의 상기 현재 블록과 동일한 위치에 있는 블록의 순으로 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 한다.The motion vector candidate generation unit is a block located at the same position as the current block among blocks of the lower left block, the left block, the upper right block, the upper block, the upper left block, another time point at which the encoding is completed, or other component blocks of the current block. , and generating the motion vector prediction candidate list in the order of blocks located at the same position as the current block in the reference frame.
상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록이 움직임 정보를 가지지 않으면 상기 현재 블록과 동일한 위치에 있는 블록의 상단 블록, 상단 좌측 블록, 좌측 블록의 순서로 움직임 정보를 확인하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 한다.The motion vector candidate generator may determine if a block located at the same position as the current block among blocks at another time point or other component blocks at which the encoding is completed does not have motion information, an upper block and upper left block of a block located at the same position as the current block. , and generating the motion vector prediction candidate list by checking the motion information in the order of the left blocks.
상기 움직임 벡터 후보 생성부는 상기 현재 블록의 좌측 하단 블록과 좌측 블록 중 하나와 상기 현재 블록의 우측 상단 블록, 상단 블록 및 좌측 상단 블록 중 하나를 상기 움직임 벡터 예측 후보 리스트로 생성하되, 상기 움직임 벡터 예측 후보 리스트에 추가된 블록들의 움직임 정보가 중복되어 있으면 중복된 블록을 제거하고 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 상기 움직임 벡터 예측 후보 리스트에 추가하는 것을 특징으로 한다.The motion vector candidate generator 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, wherein the motion vector prediction is performed If motion information of blocks added to the candidate list is duplicated, the duplicated block is removed, and a block located at the same position as the current block among blocks at another time point or other components at which the encoding is completed is added to the motion vector prediction candidate list characterized in that
상기 움직임 벡터 후보 생성부는 상기 현재 블록과 동일한 위치에 있는 블록의 움직임 정보가 상기 움직임 벡터 예측 후보 리스트에 이미 추가된 블록의 움직임 정보와 같으면 상기 현재 블록과 동일한 위치에 있는 블록 대신 0으로 구성되는 움직임 벡터 후보를 상기 움직임 벡터 예측 후보 리스트에 추가하는 것을 특징으로 한다.If the motion vector candidate generator is the same as the motion information of the block that is located at the same position as the current block, the motion vector is composed 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 generation unit includes subblocks of a coding unit at a position corresponding to the current coding unit in a picture of a different view or other component corresponding to a current coding unit (CU) of the current picture to which the current block belongs. It is characterized in that the motion vector prediction candidate list is generated by combining.
상기 움직임 벡터 후보 생성부는 상기 서브블록의 사이즈를 상기 현재 코딩 유닛의 사이즈를 두 비트(Bit) 우측으로 시프트(Shift) 하는 비트 연산 결과 값으로 정하는 것을 특징으로 한다.The motion vector candidate generator determines the size of the subblock as a bit operation result value of shifting 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 bit operation result value is less than 8x8.
상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록이 어파인(Affine) 기반 움직임 예측 기술로 부호화 된 경우 그 블록을 현재 CU의 CPMV(Control Point Motion Vector)로 사용하는 것을 특징으로 한다.The motion vector candidate generating unit converts the block to the CPMV (CPMV) of the current CU when the block located at the same position as the current block among blocks of other components or at another time point at which the encoding is completed is encoded using Affine-based motion prediction technology. It is characterized in that it is used as a Control Point Motion Vector).
상기 움직임 벡터 후보 생성부는 상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 CPMV(Control Point Motion Vector)로 사용하여 조합 어파인 머지(Affine Merge) 후보를 생성하는 것을 특징으로 한다.The motion vector candidate generator unit uses, as a Control Point Motion Vector (CPMV), a block at the same position as the current block among blocks of another time point or other component blocks for which the encoding is completed, and performs a combination affine merge ( Affine Merge) candidates are generated.
본 발명의 다른 실시예에 따른 움직임 예측 방법은,A motion prediction method according to another embodiment of the present invention,
부호화가 완료된 다른 시점 또는 다른 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 단계; 및 상기 움직임 벡터 예측 후보 리스트를 이용하여 현재 블록의 움직임 벡터 예측 정보를 생성하는 단계;를 포함한다.generating a motion vector prediction candidate list by using blocks of other views or other components from which encoding has been completed; and generating motion vector prediction information of the current block by using the motion vector prediction candidate list.
본 발명에 따르면 다른 시점 또는 다른 구성 요소의 대응 픽처의 움직임 정보까지 이용하여 진행함으로써 움직임 예측 부호화의 효율을 높일 수 있는 효과가 있다.According to the present invention, there is an effect that the efficiency of motion prediction encoding can be increased by proceeding using motion information of a picture corresponding to another view or other component.
한편, 여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급됨을 첨언한다.On the other hand, even if it is an effect not explicitly mentioned herein, it is added that the effects described in the following specification expected by the technical features of the present invention and their potential 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 prediction apparatus 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 from a different viewpoint in a 3D image.
7 shows an example of configuring 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 prediction apparatus of an image decoder according to another preferred embodiment of the present invention.
11 is a schematic flowchart of a motion prediction method of an image decoder according to another preferred embodiment of the present invention.
※ It is revealed that the accompanying drawings are exemplified as a reference for understanding the technical idea of the present invention, and the scope of the present invention is not limited thereby
이하, 도면을 참조하여 본 발명의 다양한 실시예가 안내하는 본 발명의 구성과 그 구성으로부터 비롯되는 효과에 대해 살펴본다. 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. Hereinafter, the configuration of the present invention guided by various embodiments of the present invention and effects resulting from the configuration will be described with reference to the drawings. In the description of the present invention, if it is determined that related known functions are obvious to those skilled in the art and may unnecessarily obscure the gist of the present invention, 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 term may be used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a 'first component' may be termed a 'second component', and similarly, a 'second component' may also be termed a 'first component'. can Also, the singular expression includes the plural expression unless the context clearly dictates otherwise. Unless otherwise defined, terms used in the embodiments of the present invention may be interpreted as meanings commonly known to those of ordinary skill in the art.
이하, 도면을 참조하여 본 발명의 다양한 실시예가 안내하는 본 발명의 구성과 그 구성으로부터 비롯되는 효과에 대해 살펴본다.Hereinafter, the configuration of the present invention guided by various embodiments of the present invention and effects resulting from the configuration will be described with reference to the drawings.
이하에서 영상 부호화/복호화를 위한 비디오 코덱은 ISO/IEC MPEG-I versatile video coding (VVC)을 기준으로 설명하지만 본 발명이 이에 한정되는 것은 아니며 다른 모든 비디오 코덱에 적용될 수 있음은 물론이다.Hereinafter, a video codec for image encoding/decoding will be described based on ISO/IEC MPEG-I versatile video coding (VVC), but the present invention is not limited thereto and may be applied to all other video codecs.
도 1은 본 발명의 바람직한 어느 실시예에 따른 움직임 예측 장치의 개략적인 구조도이다.1 is a schematic structural diagram of a motion prediction apparatus according to a preferred embodiment of the present invention.
본 발명에 따른 움직임 예측 장치(100)는 영상 부호화기(1)에 포함되며 움직임 벡터 후보 생성부(110) 및 움직임 벡터 예측부(120)를 포함한다. 또한 움직임 예측 장치(100)는 하나 이상의 프로세서 및 메모리(미도시)를 포함한다. 프로세서는 움직임을 예측하여 움직임 정보를 생성하기 위해 사용되며 메모리에는 프로세서를 구동하기 위한 프로그램 코드 및 데이터들을 저장할 수 있다.The
움직임 벡터 후보 생성부(110)는 부호화가 진행중인 현재 블록의 주변 정보들을 이용하여 움직임 예측을 위한 후보 블록들의 리스트를 생성한다.The motion
도 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 constructed. In FIG. 2 , blocks spatially and temporally related to the current prediction unit 10 (PU) are used as candidate blocks for motion prediction.
A0, A1, B0, B1, B2는 현재 예측 유닛(10)과 동일한 프레임 내에 존재하면서 부호화가 완료된 주변 블록들로 공간적 후보들이다.A0, A1, B0, B1, and B2 are spatial candidates that exist in the same frame as the
C0, C1은 현재 예측 유닛(10)과 다른 프레임, 즉, 참조 프레임 내의 블록들인데 현재 예측 유닛과 동일한 위치의 예측 유닛에서 유도되는 시간적 후보들이다.C0 and C1 are blocks in a frame different from the
움직임 벡터 후보 생성부(110)는 이러한 공간적, 시간적 후보들로부터 후보 리스트를 구성한다. 병합 모드 움직임 벡터 예측 후보 리스트는 A0 →A1 →B0→B1→B2→C0→C1의 순으로 생성할 수 있다. 병합 모드 리스트는 최대 5개의 후보를 가질 수 있는데 동일한 정보를 가지는 블록은 후보에서 제외될 수 있다. 동일 정보를 가지는 블록이 제외됨에 따라 5개의 후보가 다 채워지지 않으면 가상의 후보들로 남은 리스트를 채울 수 있다. 가상 후보들로는 HMVP(history-based motion vector prediction), PAMVP(pairwise average motion vector prediction), 제로 후보 등이 될 수 있다.The motion
움직임 후보를 생성하는 다른 방법으로 서브블록 기반 병합 모드가 있을 수 있다.As another method of generating motion candidates, there may be a subblock-based merging mode.
도 3은 서브블록 기반 병합 모드의 예를 나타낸다.3 shows an example of a subblock-based merge mode.
서브블록 기반 병합 모드는 코딩 유닛(CU: Coding Unit)을 서브 코딩 유닛 으로 분할하여 서브 코딩 유닛 단위로 다른 움직임 벡터를 유도하여 예측신호를 생성한다. 블록을 분할하지 않고 작은 서브 코딩 유닛 단위로 움직임 벡터를 유도하여 예측을 수행함으로써 예측 정확도를 높일 수 있다.In the subblock-based merge mode, a prediction signal is generated by dividing a coding unit (CU) into sub-coding units and inducing different motion vectors in units of sub-coding units. Prediction accuracy may be improved by performing prediction by inducing 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
다음으로 대응 블록으로부터 현재 코딩 유닛(22)의 서브 코딩 유닛(24, 8x8크기 고정 단위) 단위의 움직임 벡터를 유도한다. 이를 위해 현재 코딩 유닛(22)을 8x8의 서브 코딩 유닛(24)으로 분할하고 대응 블록에서 각 서브 코딩 유닛(34)의 중심 위치에 대응되는 움직임 정보를 이용하여 현재 블록의 각 서브 코딩 유닛들의 움직임 벡터를 8x8 단위로 유도하게 된다. Next, a motion vector in units of sub coding units (24, 8x8 size fixed units) of the
마지막으로 대응 블록에서 유도된 움직임 벡터가 참조 픽처에 적용될 수 있도록 스케일링 과정을 거쳐서 서브 코딩 유닛 단위 움직임 벡터인 SbTMVP (sub-block temporal MVP)로 설정된다.Finally, a motion vector derived from a 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 the 8x8 block-based motion information 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. In addition, motion vector difference (MVD) is not transmitted to the decoder.
움직임 벡터 후보 생성부(110)는 AMVP 모드로 움직임 벡터 예측 후보 리스트를 생성할 수 있다. AVMP 모드는 최대 2개의 후보를 가질 수 있다. The motion
도 2의 A0, A1 블록 중에서 하나의 후보를 선택하고 B0, B1, B2 블록 중에서 하나의 후보를 선택하는데 중복성 확인을 통해 중복된 움직임 정보는 리스트에서 제거된다. 중복 정보 제거에 의해 후보 리스트가 다 채워지지 않는다면 시간적 후보들인 C0, C1과 HMVP 후보가 추가될 수 있다.In FIG. 2 , one candidate is selected from blocks A0 and A1 and one candidate is selected from blocks B0, B1, and B2, and duplicate motion information is removed from the list through redundancy check. If the candidate list is not completely filled by the redundant information removal, temporal candidates C0, C1 and HMVP candidates may be added.
움직임 벡터 후보 생성부(110)는 또한 어파인 병합 모드를 이용하여 움직임 벡터 예측 후보 리스트를 생성할 수 있다. 어파인 기반 병합 모드 후보들은 상속 어파인 병합 후보들과 조합 어파인 머지 후보들로 구성된다.The motion
도 4는 어파인 병합 모드의 예를 나타낸다.4 shows an example of an affine merge mode.
상속 어파인 병합 후보는 현재 코딩 유닛(40)의 상단 혹은 좌측 주변 코딩 유닛이 어파인 기반 움직임 벡터 예측 기술을 적용하여 부호화된 경우 해당 코딩 유닛의 CPMV(Control Point Motion Vector)로부터 유도한 현재 코딩 유닛(40)의 CPMV를 의미한다.The inherited affine merge candidate is a current coding unit derived from a Control Point Motion Vector (CPMV) of the
조합 어파인 병합 후보는 주변의 움직임 벡터를 결합하여 유도한 현재 코딩 유닛(40)의 CPMV를 의미한다. 도 4에서 B2→→순서로 움직임 벡터의 존재 여부를 확인하여 첫번째로 가용한 움직임 벡터를 CPMV1로 설정하고, 다음 B1→순서로 움직임 벡터를 확인하여 CPMV2, A1→순서로 움직임 벡터를 확인하여 CPMV3, TMVP (C0 or C1)를 CPMV4로 각각 설정한다.The combinatorial affine merge candidate means the CPMV of the
설정된 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 in sps_affine_type_flag in the sequence parameter set (SPS) and transmitted to the decoder.
움직임 벡터 후보 생성부(110)는 이상과 같은 2차원 화면의 움직임 벡터 예측 정보를 3차원 영상 또는 다 시점 영상 등에도 확장할 수 있다.The motion
도 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 viewpoint called a base view or an independent view is independently coded without depending on other views. Since the images V1 and V2 of different views can be encoded with reference to images of other views using a 3D encoder, they are called dependent views.
현재 픽처(Current Picture)는 여러 액세스 유닛(Access Unit)으로 구성되고, 액세스 유닛은 텍스처와 깊이 맵으로 나누어진다.A current picture consists of several access units, and the access units are divided into a texture and a depth map.
움직임 벡터 후보 생성부(110)는 3차원 영상에서 이처럼 다른 시점의 영상 정보들을 사용하여 현재 코딩 유닛의 움직임 벡터 예측 정보를 생성할 수 있다.The motion
도 6은 3차원 영상에서 다른 시점의 영상을 참조하는 예를 나타낸다.6 illustrates an example of referring to an image from a different viewpoint in a 3D image.
움직임 벡터 후보 생성부(110)는 3차원 영상을 구성하는 깊이 픽처(50, Depth Picture)의 움직임 벡터 후보 생성을 위해 깊이 픽처(50)에 대응하는 텍스처 픽처(60, Texture Picture)의 블록들을 참조할 수 있다.The motion
움직임 벡터 후보 생성부(110)는 3차원 영상의 종속 시점에서 움직임 정보를 예측하는 경우 부호화가 완료된 다른 시점 ?C은 다른 구성 요소의 움직임 정보를 이용할 수 있다.When the motion
앞의 예들과 마찬가지로 3차원 영상에서도 일반 병합 모드와 AMVP 모드를 이용하여 후보 리스트를 구성할 수 있다.As in the previous examples, a candidate list may be constructed in a 3D image by using the normal merge mode and the AMVP mode.
도 7은 3차원 영상에서 움직임 벡터 예측 후보 리스트를 구성하는 예를 나타낸다.7 shows an example of configuring a motion vector prediction candidate list in a 3D image.
도 7의 (b)는 현재 부호화를 진행하고 있는 종속 시점의 코딩 유닛을 나타내고, 도 7의 (a)는 움직임 정보를 참조하기 위한 부호화가 완료된 다른 시점 또는 다른 구성요소를 나타낸다.FIG. 7B shows a coding unit of a dependent view that is currently being encoded, and FIG. 7A shows another view or other components in which encoding for referring to motion information is completed.
움직임 벡터 후보 생성부(110)는 현재 코딩 유닛(70)의 공간적 후보들(A0, A1, B0, B1, B2)과 시간적 후보들(C0, C1) 외에 다른 시점의 코딩 유닛(80)의 블록들(X0, X1, X2, X3)를 추가로 이용하여 음직임 정보 후보 리스트를 생성할 수 있다.The motion
움직임 벡터 후보 생성부(110)는 일반 병합 모드로 후보 리스트를 생성할 수 있다. 공간적, 시간적 후보를 이용하던 앞의 예에서 추가로 다른 시점의 후보 블록을 이용함으로써 일반 병합 모드 후보 리스트는 A0 →A1 →B0→B1→B2→ X0 →C0 (→C0를 이용할 수 없는 경우 C1)의 순으로 확인할 수 있다. 이들 중 서로 중복되지 않는 후보들을 일반 병합 후보 리스트로 삽입된다. The motion
만일 X0이 움직임 정보를 가지지 않으면, 즉, 화면 내 모드로 부호화 되었으면 X0 블록을 기준으로 반시계 방향으로 가까운 블록들을 확인한다. 다시 말해 X1 →X2 →X3 순서로 움직임 정보를 확인하여 사용 가능한 블록들의 움직임 정보를 확인하는 것이다.If X0 does not have motion information, that is, if it is encoded in the intra-picture mode, blocks that are close to the X0 block in a counterclockwise direction are checked. In other words, the motion information of the 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
움직임 벡터 후보 생성부(110)는 서브블록 기반 병합 모드로 후보 리스트를 생성할 수도 있다. 도 8은 서브블록 기반 병합 모드의 예를 나타낸다.The motion
3차원 영상을 포함한 다 시점 화면 및 계층 간 예측에서는 현재 픽처의 대응 참조 픽처 외에도 현재 픽처에 대응하는 다른 시점 또는 다른 구성요소 픽처의 정보를 확인할 수 있다. In a multi-view screen including a 3D image and inter-layer prediction, information on 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
현재 코딩 유닛(91)의 대응 블록은 현재 픽처에 대응하는 다른 시점 또는 다른 구성요소의 픽처에서 현재 코딩 유닛(91)의 좌측 상단의 (posX, posY)에 위치하는 블록(92)에 대응하는 블록(94)이다.The corresponding block of the
이때 서브 코딩 유닛의 사이즈는 8x8 사이즈로 고정하지 않고 현재 코딩 유닛(91)의 사이즈에 따라 다음 식과 같이 가변적으로 정할 수 있다.In this case, the size of the sub coding unit is not fixed to the 8x8 size, but may be variably determined according to the size of the
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
움직임 벡터 후보 생성부(110)는 다른 시점 또는 다른 구성요소의 픽처를 참조하여 어파인 기반 병합 움직임 예측도 가능하다.The motion
도 7의 (a)에서 X0, X1, X2, X3 블록이 어파인 기반 움직임 예측 기술로 부호화 된 경우 그 블록을 현재 코딩 유닛의 CPMV로 사용할 수 있는 것이다.When blocks X0, X1, X2, and X3 in FIG. 7A are coded using 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, the 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
도 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 other views or other components in a multi-view or multi-layer image such as a 3D image.
우선 다른 시점 또는 다른 구성요소의 블록 중 부호화가 완료된 블록을 움직임 벡터 예측 후보 리스트로 생성할 수 있다(S110). 움직임 후보 리스트 생성은 일반 병합 모드와 AMVP 모드를 이용할 수 있다. 또한 서브블록 기반 병합 모드를 이용하는 것도 가능하다. 각 모드의 자세한 방법은 앞서 설명한 바와 같다.First, blocks that have been coded among blocks of different views or other components may be generated as a motion vector prediction candidate list (S110). A general merge mode and an AMVP mode may be used to generate the motion candidate list. It is also possible to use a subblock-based merge mode. The detailed method of each mode is as described above.
움직임 벡터 예측 후보 리스트를 생성한 다음 이 후보 리스트를 이용하여 움직임 예측을 하는 부호화를 진행한다(S120).After a motion vector prediction candidate list is generated, encoding for motion prediction is performed using the candidate list (S120).
도 10은 본 발명의 바람직한 또 다른 실시예에 따른 영상 복호화기에서의 움직임 예측 장치의 개략적인 구조도이다.10 is a schematic structural diagram of a motion prediction apparatus in an image decoder according to another preferred embodiment of the present invention.
본 발명의 움직임 예측 장치(2)는 움직임 벡터 후보 생성부(210) 및 움직임 벡터 적용부(220)로 구성된다.The
움직임 벡터 후보 생성부(210)는 다른 시점 또는 다른 구성요소의 블록 중 복호화가 완료된 블록의 움직임 벡터들을 움직임 벡터 예측 후보 리스트로 생성한다. 움직임 벡터 후보 리스트 생성은 일반 병합 모드와 AMVP 모드를 이용할 수 있다. 또한 서브블록 기반 병합 모드를 이용하는 것도 가능하다. 각 모드의 자세한 방법은 앞서 설명한 바와 같다.The motion
움직임 벡터 적용부(220)는 앞서 생성한 움직임 벡터 후보 리스트 중에서 부호화기로부터 전송받은 움직임 벡터 후보 인덱스에 해당하는 움직임 벡터를 사용하여 3차원 영상의 복호화에 적용하게 된다.The motion
도 11은 본 발명의 바람직한 또 다른 실시예에 따른 영상 복호화기에서의 움직임 예측 방법의 흐름도이다.11 is a flowchart of a motion prediction method in an image decoder according to another preferred embodiment of the present invention.
우선 복호화가 완료된 다른 시점 또는 다른 구성요소의 블록의 움직임 벡터들을 이용하여 움직임 벡터 예측 후보 리스트를 생성한다(S210). 움직임 벡터 후보 리스트 생성은 일반 병합 모드와 AMVP 모드를 이용할 수 있다. 또한 서브블록 기반 병합 모드를 이용하는 것도 가능하다.First, a motion vector prediction candidate list is generated by using motion vectors of blocks of other components or blocks at another time point after decoding has been completed ( S210 ). The general merge mode and AMVP mode may be used to generate the motion vector candidate list. It is also possible to use a subblock-based merge mode.
움직임 벡터 예측 후보 리스트가 완성되면 부호화기로부터 전송받은 움직임 벡터 후보 인덱스에 해당하는 움직임 벡터를 이용하여 현재 블록의 움직임 벡터를 적용하는 복호화를 진행하게 된다(S220).When the motion vector prediction candidate list is completed, decoding is performed using the motion vector corresponding to the motion vector candidate index received from the encoder to apply the motion vector of the current block (S220).
이렇게 다 시점 또는 다 계층 영상에서 다른 시점 또는 다른 구성요소의 블록을 움직임 예측을 위해 사용함으로써 본 발명은 움직임 예측 부호화의 효율을 높일 수 있는 효과가 있다.In this way, by using blocks of different views or different components in a multi-view or multi-layer image for motion prediction, the present invention has the 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 protection scope of the present invention cannot be limited due to obvious changes or substitutions in the technical field to which the present invention pertains.
Claims (14)
부호화가 완료된 다른 시점 또는 다른 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 움직임 벡터 후보 생성부; 및
상기 움직임 벡터 예측 후보 리스트를 이용하여 현재 블록의 움직임 벡터 예측 정보를 생성하는 움직임 벡터 예측부;를 포함하는 것을 특징으로 하는, 움직임 예측 장치.
In the motion prediction apparatus for encoding a multi-view or multi-layer image:
a motion vector candidate generator for generating a motion vector prediction candidate list using blocks of other components or other views from which encoding has been completed; and
and a motion vector prediction unit generating motion vector prediction information of a current block by using the motion vector prediction candidate list.
상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 이용하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 하는, 움직임 예측 장치.
The method of claim 1,
and the motion vector candidate generator generates the motion vector prediction candidate list by using a block located at the same position as the current block among blocks of another component or another time point at which the encoding is completed.
상기 움직임 벡터 후보 생성부는 상기 현재 블록의 좌측 하단 블록, 좌측 블록, 우측 상단 블록, 상단 블록, 좌측 상단 블록, 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록, 참조 프레임 내의 상기 현재 블록과 동일한 위치에 있는 블록의 순으로 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 하는, 움직임 예측 장치.
According to claim 1,
The motion vector candidate generation unit is a block located at the same position as the current block among blocks of the lower left block, the left block, the upper right block, the upper block, the upper left block, another time point at which the encoding is completed, or other component blocks of the current block. , characterized in that the motion vector prediction candidate list is generated in the order of blocks located at the same position as the current block in a reference frame.
상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록이 움직임 정보를 가지지 않으면 상기 현재 블록과 동일한 위치에 있는 블록의 상단 블록, 상단 좌측 블록, 좌측 블록의 순서로 움직임 정보를 확인하여 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 하는, 움직임 예측 장치.
4. The method of claim 3,
The motion vector candidate generator may determine if a block located at the same position as the current block among blocks at another time point or other component blocks at which the encoding is completed does not have motion information, an upper block and upper left block of a block located at the same position as the current block. , and generating the motion vector prediction candidate list by checking motion information in the order of the left blocks.
상기 움직임 벡터 후보 생성부는 상기 현재 블록의 좌측 하단 블록과 좌측 블록 중 하나와 상기 현재 블록의 우측 상단 블록, 상단 블록 및 좌측 상단 블록 중 하나를 상기 움직임 벡터 예측 후보 리스트로 생성하되, 상기 움직임 벡터 예측 후보 리스트에 추가된 블록들의 움직임 정보가 중복되어 있으면 중복된 블록을 제거하고 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 상기 움직임 벡터 예측 후보 리스트에 추가하는 것을 특징으로 하는, 움직임 예측 장치.
According to claim 1,
The motion vector candidate generator 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, wherein the motion vector prediction is performed If motion information of blocks added to the candidate list is duplicated, the duplicated block is removed, and a block located at the same position as the current block among blocks at another time point or other components at which the encoding is completed is added to the motion vector prediction candidate list A motion prediction device, characterized in that.
상기 움직임 벡터 후보 생성부는 상기 현재 블록과 동일한 위치에 있는 블록의 움직임 정보가 상기 움직임 벡터 예측 후보 리스트에 이미 추가된 블록의 움직임 정보와 같으면 상기 현재 블록과 동일한 위치에 있는 블록 대신 0으로 구성되는 움직임 벡터 후보를 상기 움직임 벡터 예측 후보 리스트에 추가하는 것을 특징으로 하는, 움직임 예측 장치.
6. The method of claim 5,
If the motion vector candidate generator is the same as the motion information of the block that is located at the same position as the current block, the motion vector is composed 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, the motion prediction apparatus.
상기 움직임 벡터 후보 생성부는 상기 현재 블록이 속하는 현재 픽처의 현재 코딩 유닛(CU: Coding Unit)과 대응하는 다른 시점 또는 다른 구성요소의 픽처에서 상기 현재 코딩 유닛과 대응하는 위치의 코딩 유닛의 서브블록들의 조합으로 상기 움직임 벡터 예측 후보 리스트를 생성하는 것을 특징으로 하는, 움직임 예측 장치.
According to claim 1,
The motion vector candidate generation unit includes subblocks of a coding unit at a position corresponding to the current coding unit in a picture of a different view or other component corresponding to a current coding unit (CU) of the current picture to which the current block belongs. A motion prediction apparatus, characterized in that the motion vector prediction candidate list is generated by combining.
상기 움직임 벡터 후보 생성부는 상기 서브블록의 사이즈를 상기 현재 코딩 유닛의 사이즈를 두 비트(Bit) 우측으로 시프트(Shift) 하는 비트 연산 결과 값으로 정하는 것을 특징으로 하는, 움직임 예측 장치.
8. The method of claim 7,
The motion vector candidate generator determines the size of the subblock as a bit operation result value of shifting the size of the current coding unit to the right by two bits.
상기 움직임 벡터 후보 생성부는 상기 비트 연산 결과 값이 8x8보다 작은 경우 상기 서브블록의 사이즈를 8x8로 고정하는 것을 특징으로 하는, 움직임 예측 장치.
9. The method of claim 8,
Wherein the motion vector candidate generator sets the size of the subblock to 8x8 when the bit operation result value is less than 8x8.
상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록이 어파인(Affine) 기반 움직임 예측 기술로 부호화 된 경우 그 블록을 현재 CU의 CPMV(Control Point Motion Vector)로 사용하는 것을 특징으로 하는, 움직임 예측 장치.
According to claim 1,
The motion vector candidate generating unit converts the block to the CPMV (CPMV) of the current CU when the block located at the same position as the current block among blocks of other components or at another time point at which the encoding is completed is encoded using Affine-based motion prediction technology. Control Point Motion Vector), characterized in that used as a motion prediction device.
상기 움직임 벡터 후보 생성부는 상기 움직임 벡터 후보 생성부는 상기 부호화가 완료된 다른 시점 또는 다른 구성요소의 블록 중 상기 현재 블록과 동일한 위치에 있는 블록을 CPMV(Control Point Motion Vector)로 사용하여 조합 어파인 머지(Affine Merge) 후보를 생성하는 것을 특징으로 하는, 움직임 예측 장치.
The method of claim 1,
The motion vector candidate generator unit uses, as a Control Point Motion Vector (CPMV), a block at the same position as the current block among blocks of another time point or other component blocks for which the encoding is completed, and performs a combination affine merge ( Affine Merge), a motion prediction apparatus, characterized in that the candidate is generated.
부호화가 완료된 다른 시점 또는 다른 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 단계; 및
상기 움직임 벡터 예측 후보 리스트를 이용하여 현재 블록의 움직임 벡터 예측 정보를 생성하는 단계;를 포함하는 것을 특징으로 하는, 움직임 예측 방법.
A motion prediction method for encoding a multi-view or multi-layer image performed by a controller including one or more processors and a memory, the method comprising:
generating a motion vector prediction candidate list using blocks of other views or other components from which encoding has been completed; and
and generating motion vector prediction information of a current block by using the motion vector prediction candidate list.
복호화가 완료된 다른 시점 또는 다른 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 움직임 벡터 후보 생성부; 및
상기 움직임 벡터 예측 후보 리스트를 이용하여 부호화기로부터 전송받은 인덱스에 해당하는 움직임 벡터를 현재 블록의 움직임 벡터로 적용하여 복호화를 진행하는 움직임 벡터 적용부;를 포함하는 것을 특징으로 하는, 움직임 예측 장치.
In the motion prediction apparatus for decoding a multi-view or multi-layer image:
a motion vector candidate generator for generating a motion vector prediction candidate list by using another time point or blocks of other components from which decoding is completed; and
and a motion vector application unit that performs decoding by applying a motion vector corresponding to an index transmitted from an encoder to a motion vector of a current block using the motion vector prediction candidate list.
복호화가 완료된 다른 시점 또는 다른 구성요소의 블록을 이용하여 움직임 벡터 예측 후보 리스트를 생성하는 단계; 및
상기 움직임 벡터 예측 후보 리스트를 이용하여 부호화기로부터 전송받은 인덱스에 해당하는 움직임 벡터를 현재 블록의 움직임 벡터로 적용하여 복호화를 진행하는 단계;를 포함하는 것을 특징으로 하는, 움직임 예측 방법.A motion prediction method for decoding a multi-view or multi-layer image performed by a controller including one or more processors and a memory, the method comprising:
generating a motion vector prediction candidate list by using blocks of another time point or other components from which decoding is completed; and
and performing decoding by applying a motion vector corresponding to an index transmitted from an encoder to a motion vector of a current block using the motion vector prediction candidate list.
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 true KR20220074233A (en) | 2022-06-03 |
KR102501051B1 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) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150043228A (en) * | 2013-10-14 | 2015-04-22 | 삼성전자주식회사 | Method and apparatus for multi-view video encoding, method and apparatus for multi-view video decoding |
KR20190116101A (en) * | 2018-04-03 | 2019-10-14 | 인텔렉추얼디스커버리 주식회사 | Method and apparatus for image encoding/decoding based on affine model |
KR20200080191A (en) * | 2018-12-26 | 2020-07-06 | 주식회사 엑스리스 | Method for encodign/decodign video signal and apparatus therefor |
-
2020
- 2020-11-27 KR KR1020200162490A patent/KR102501051B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150043228A (en) * | 2013-10-14 | 2015-04-22 | 삼성전자주식회사 | Method and apparatus for multi-view video encoding, method and apparatus for multi-view video decoding |
KR20190116101A (en) * | 2018-04-03 | 2019-10-14 | 인텔렉추얼디스커버리 주식회사 | Method and apparatus for image encoding/decoding based on affine model |
KR20200080191A (en) * | 2018-12-26 | 2020-07-06 | 주식회사 엑스리스 | Method for encodign/decodign video signal and apparatus therefor |
Also Published As
Publication number | Publication date |
---|---|
KR102501051B1 (en) | 2023-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10484706B2 (en) | Image encoding/decoding apparatus and method | |
CN104412597B (en) | The method and device that unified difference vector for 3D Video codings is derived | |
US10110915B2 (en) | Method and apparatus for inter-component motion prediction in three-dimensional video coding | |
KR101370919B1 (en) | A method and apparatus for processing a signal | |
KR101753171B1 (en) | Method of simplified view synthesis prediction in 3d video coding | |
CN104718760B (en) | Method and apparatus for three peacekeeping multi-view video codings | |
US10264281B2 (en) | Method and apparatus of inter-view candidate derivation in 3D video coding | |
US20120189060A1 (en) | Apparatus and method for encoding and decoding motion information and disparity information | |
US9961369B2 (en) | Method and apparatus of disparity vector derivation in 3D video coding | |
KR101747434B1 (en) | Apparatus and method for encoding and decoding motion information and disparity information | |
EP3065405B1 (en) | Method for decoding video using buffer compression for motion vector competition | |
KR101861497B1 (en) | Method and apparatus of camera parameter signaling in 3d video coding | |
JP2015533038A5 (en) | ||
WO2014008817A1 (en) | Method and apparatus of inter-view sub-partition prediction in 3d video coding | |
US20150365649A1 (en) | Method and Apparatus of Disparity Vector Derivation in 3D Video Coding | |
WO2014166348A1 (en) | Method and apparatus of view synthesis prediction in 3d video coding | |
KR20140121315A (en) | Method and apparatus for image encoding and decoding based on multi-layer using reference picture list | |
EP2965520A1 (en) | Method of reference view selection for 3d video coding | |
CN113796084A (en) | Motion vector and prediction sample refinement | |
KR20230129320A (en) | Method and device for creating inter-view merge candidates | |
KR20200005575A (en) | Method and apparatus for determining motion vector | |
KR102501051B1 (en) | Apparatus and method for motion prediction of multi view or multi layer video | |
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 | |
CA2921759A1 (en) | Method of motion information prediction and inheritance in multi-view and three-dimensional 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 |