KR102045983B1 - Method and apparatus for encoding and decoding based on merge - Google Patents

Method and apparatus for encoding and decoding based on merge Download PDF

Info

Publication number
KR102045983B1
KR102045983B1 KR1020160082876A KR20160082876A KR102045983B1 KR 102045983 B1 KR102045983 B1 KR 102045983B1 KR 1020160082876 A KR1020160082876 A KR 1020160082876A KR 20160082876 A KR20160082876 A KR 20160082876A KR 102045983 B1 KR102045983 B1 KR 102045983B1
Authority
KR
South Korea
Prior art keywords
block
motion
lower layer
parallel merge
current block
Prior art date
Application number
KR1020160082876A
Other languages
Korean (ko)
Other versions
KR20160085237A (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 경희대학교 산학협력단
Publication of KR20160085237A publication Critical patent/KR20160085237A/en
Application granted granted Critical
Publication of KR102045983B1 publication Critical patent/KR102045983B1/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/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/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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
    • 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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

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

Abstract

머지를 기반으로 한 복호화 방법 및 장치가 개시되어 있다. 병합 움직임 예측 방법은 현재 블록에 가용하지 않은 병합 후보 블록이 존재하는지 여부를 판단하는 단계, 현재 블록에 가용하지 않은 병합 후보 블록이 존재하는 경우, 대응 하위 계층 블록을 기반으로 병합 움직임 예측을 위한 후보 움직임 예측 정보를 유도하는 단계와 후보 움직임 예측 정보를 포함하는 병합 움직임 후보 목록을 기반으로 현재 블록에 대한 병합 움직임 예측을 수행하는 단계를 포함할 수 있되, 병합 후보 블록은 병합 움직임 예측을 위한 후보 움직임 예측 정보를 유도하기 위한 블록이고, 대응 하위 계층 블록은 현재 블록이 포함된 계층보다 하위 계층에 존재할 수 있다. A method and apparatus for decoding based on merge are disclosed. The merge motion prediction method determines whether there is a merge candidate block that is not available in the current block, and when there is a merge candidate block that is not available in the current block, the candidate for the merge motion prediction based on the corresponding lower layer block. Deriving motion prediction information and performing merge motion prediction on the current block based on the merge motion candidate list including the candidate motion prediction information, wherein the merge candidate block is a candidate motion for merge motion prediction. A block for deriving prediction information, and a corresponding lower layer block may exist in a lower layer than a layer including a current block.

Figure R1020160082876
Figure R1020160082876

Description

머지를 기반으로 한 복호화 방법 및 장치{Method and apparatus for encoding and decoding based on merge}Method and apparatus for decoding based on merge {Method and apparatus for encoding and decoding based on merge}

본 발명은 영상 복호화 방법 및 장치에 관한 것으로 더욱 상세하게는 화면 간 예측 방법에 관한 것이다.The present invention relates to an image decoding method and apparatus, and more particularly, to an inter prediction method.

최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 응용 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 데이터량이 증가하기 때문에 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 데이터를 전송하거나 기존의 저장 매체를 이용해 저장하는 경우, 전송 비용과 저장 비용이 증가하게 된다. 영상 데이터가 고해상도, 고품질화 됨에 따라 발생하는 이러한 문제들을 해결하기 위해서는 고효율의 영상 압축 기술들이 활용될 수 있다.Recently, the demand for high resolution and high quality images such as high definition (HD) and ultra high definition (UHD) images is increasing in various applications. As the video data becomes higher resolution and higher quality, the amount of data increases relative to the existing video data. Therefore, when the video data is transmitted or stored using a medium such as a conventional wired / wireless broadband line, The storage cost will increase. High efficiency image compression techniques can be used to solve these problems caused by high resolution and high quality image data.

영상 압축 기술로 현재 픽쳐의 이전 또는 이후 픽쳐로부터 현재 픽쳐에 포함된 화소값을 예측하는 화면 간 예측 기술, 현재 픽쳐 내의 화소 정보를 이용하여 현재 픽쳐에 포함된 화소값을 예측하는 화면 내 예측 기술, 출현 빈도가 높은 값에 짧은 부호를 할당하고 출현 빈도가 낮은 값에 긴 부호를 할당하는 엔트로피 부호화 기술 등 다양한 기술이 존재하고 이러한 영상 압축 기술을 이용해 영상 데이터를 효과적으로 압축하여 전송 또는 저장할 수 있다.An inter-screen prediction technique for predicting pixel values included in the current picture from a picture before or after the current picture using an image compression technique, an intra prediction technique for predicting pixel values included in a current picture using pixel information in the current picture, Various techniques exist, such as an entropy encoding technique for allocating a short code to a high frequency of appearance and a long code to a low frequency of appearance, and the image data can be effectively compressed and transmitted or stored.

또한, 다양한 공간적 해상도(Spatial Resolution), 다양한 프레임율(Frame-rate)을 지원 가능한 하나의 통합된 데이터를 생성하여 다양한 전송 환경과 다양한 단말들에게 데이터를 효율적으로 전송할 수 있도록 지원하기 위한 비디오 부호화 기술로써, HEVC를 기반으로 하는 SHVC(Scalable HEVC) 에 대한 표준화가 진행 중이다. SHVC에서 상위 계층의 영상 정보는 하위 계층의 영상 정보를 통해 부호화될 수 있다. 여기서 하위 계층은 기본 계층을 의미할 수도 있다.In addition, video encoding technology for efficiently transmitting data to various transmission environments and various terminals by generating one unified data capable of supporting various spatial resolutions and various frame rates. As a result, standardization for Scalable HEVC (SHVC) based on HEVC is in progress. In SHVC, image information of a higher layer may be encoded through image information of a lower layer. Here, the lower layer may mean a base layer.

본 발명의 목적은 영상 부복호화 효율을 증가시키기 위한 화면 간 예측 방법을 제공하는 것이다.An object of the present invention is to provide an inter prediction method for increasing image encoding and decoding efficiency.

또한, 본 발명의 다른 목적은 영상 부복호화 효율을 증가시키기 위한 화면 간 예측 방법을 수행하는 장치를 제공하는 것이다.Another object of the present invention is to provide an apparatus for performing an inter prediction method for increasing image encoding and decoding efficiency.

상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 병합 움직임 예측 방법은 현재 블록에 가용하지 않은 병합 후보 블록이 존재하는지 여부를 판단하는 단계, 상기 현재 블록에 상기 가용하지 않은 병합 후보 블록이 존재하는 경우, 대응 하위 계층 블록을 기반으로 상기 병합 움직임 예측을 위한 후보 움직임 예측 정보를 유도하는 단계와 상기 후보 움직임 예측 정보를 포함하는 병합 움직임 후보 목록을 기반으로 상기 현재 블록에 대한 상기 병합 움직임 예측을 수행하는 단계를 포함할 수 있되, 상기 병합 후보 블록은 상기 병합 움직임 예측을 위한 후보 움직임 예측 정보를 유도하기 위한 블록이고, 상기 대응 하위 계층 블록은 상기 현재 블록이 포함된 계층보다 하위 계층에 존재할 수 있다. 상기 후보 움직임 예측 정보는 상기 대응 하위 계층 블록의 병합 후보 블록의 움직임 예측 정보일 수 있다. 병합 움직임 예측 방법은 상기 현재 블록의 크기 및 상기 현재 블록을 포함하는 부호화 블록의 깊이 정보를 기반으로 상기 현재 블록에 상기 병합 움직임 예측을 수행할지 여부를 결정하는 단계를 더 포함할 수 있다. 상기 현재 블록은 향상 계층(enhanced layer)에 포함되고, 상기 대응 하위 계층 블록은 기본 계층(base layer)에 포함될 수 있다. 상기 후보 움직임 예측 정보는 상기 대응 하위 계층 블록의 움직임 예측 정보일 수 있다. 병합 움직임 예측 방법은 상기 현재 블록의 크기 및 상기 현재 블록을 포함하는 부호화 블록의 깊이 정보를 기반으로 상기 현재 블록에 상기 병합 움직임 예측 방법을 수행할지 여부를 결정하는 단계를 더 포함할 수 있다. 상기 현재 블록은 향상 계층(enhanced layer)에 포함되고, 상기 대응 하위 계층 블록은 기본 계층(base layer)에 포함될 수 있다. According to an aspect of the present invention, there is provided a method of predicting a merge motion in which a merge candidate block is not present in a current block, and the merge candidate is not available in the current block. If there is a block, deriving candidate motion prediction information for the merge motion prediction based on a corresponding lower layer block and merging the current block based on a merge motion candidate list including the candidate motion prediction information; The method may include performing motion prediction, wherein the merge candidate block is a block for deriving candidate motion prediction information for the merge motion prediction, and the corresponding lower layer block is lower than a layer including the current block. May exist in The candidate motion prediction information may be motion prediction information of a merge candidate block of the corresponding lower layer block. The merge motion prediction method may further include determining whether to perform the merge motion prediction on the current block based on the size of the current block and depth information of the coding block including the current block. The current block may be included in an enhanced layer, and the corresponding lower layer block may be included in a base layer. The candidate motion prediction information may be motion prediction information of the corresponding lower layer block. The merge motion prediction method may further include determining whether to perform the merge motion prediction method on the current block based on the size of the current block and depth information of the coding block including the current block. The current block may be included in an enhanced layer, and the corresponding lower layer block may be included in a base layer.

상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 영상 복호화 장치에 있어서, 상기 영상 복호화 장치는 움직임 보상부를 포함할 수 있고, 상기 움직임 보상부는 현재 블록에 가용하지 않은 병합 후보 블록이 존재하는지 여부를 판단하고, 상기 현재 블록에 상기 가용하지 않은 병합 후보 블록이 존재하는 경우, 대응 하위 계층 블록을 기반으로 상기 병합 움직임 예측을 위한 후보 움직임 예측 정보를 유도하고, 상기 후보 움직임 예측 정보를 포함하는 병합 움직임 후보 목록을 기반으로 상기 현재 블록에 대한 상기 병합 움직임 예측을 수행하도록 구현될 수 있되, 상기 병합 후보 블록은 상기 병합 움직임 예측을 위한 후보 움직임 예측 정보를 유도하기 위한 블록이고, 상기 대응 하위 계층 블록은 상기 현재 블록이 포함된 계층보다 하위 계층에 존재하는 상기 현재 블록의 콜로케이트 블록일 수 있다. 상기 후보 움직임 예측 정보는 상기 대응 하위 계층 블록의 병합 후보 블록의 움직임 예측 정보일 수 있다. 상기 움직임 보상부는 상기 현재 블록의 크기 및 상기 현재 블록을 포함하는 부호화 블록의 깊이 정보를 기반으로 상기 현재 블록에 상기 병합 움직임 예측을 수행할지 여부를 결정하도록 구현될 수 있다. 상기 현재 블록은 향상 계층(enhanced layer)에 포함되고, 상기 대응 하위 계층 블록은 기본 계층(base layer)에 포함될 수 있다. 상기 후보 움직임 예측 정보는 상기 대응 하위 계층 블록의 움직임 예측 정보일 수 있다. 상기 움직임 보상부는 상기 현재 블록의 크기 및 상기 현재 블록을 포함하는 부호화 블록의 깊이 정보를 기반으로 상기 현재 블록에 상기 병합 움직임 예측 방법을 수행할지 여부를 결정하도록 구현될 수 있다. 상기 현재 블록은 향상 계층(enhanced layer)에 포함되고, 상기 대응 하위 계층 블록은 기본 계층(base layer)에 포함될 수 있다.In the image decoding apparatus according to an aspect of the present invention for achieving the above object of the present invention, the image decoding apparatus may include a motion compensation unit, the motion compensation unit is a merge candidate block that is not available to the current block If there is a merge candidate block present in the current block, the candidate motion prediction information for the merge motion prediction is derived based on a corresponding lower layer block, and the candidate motion prediction information is determined. It may be implemented to perform the merge motion prediction for the current block based on a merge motion candidate list including, wherein the merge candidate block is a block for deriving candidate motion prediction information for the merge motion prediction, the corresponding Lower layer blocks are lower than the layer containing the current block. The present in the layer may be a colo locate blocks of the current block. The candidate motion prediction information may be motion prediction information of a merge candidate block of the corresponding lower layer block. The motion compensator may be implemented to determine whether to perform the merge motion prediction on the current block based on the size of the current block and depth information of a coding block including the current block. The current block may be included in an enhanced layer, and the corresponding lower layer block may be included in a base layer. The candidate motion prediction information may be motion prediction information of the corresponding lower layer block. The motion compensator may be implemented to determine whether to perform the merge motion prediction method on the current block based on the size of the current block and depth information of a coding block including the current block. The current block may be included in an enhanced layer, and the corresponding lower layer block may be included in a base layer.

상술한 바와 같이 본 발명의 실시예에 따른 머지를 기반으로 한 복호화 방법 및 장치에 따르면, 하나의 부호화 유닛(CU: Coding Unit)이 복수개의 예측 유닛(PU: Prediction Unit)로 나뉘어서 부호화 혹은 복호화될 때, 하나의 예측 유닛에 대하여 사용 가능하지 않은 움직임 후보가 있다면, 그 후보에 상응하는 하위 계층 영상에서의 움직임 후보를 상위 계층에서 사용하여 부호화 효율을 높일 수 있다.As described above, according to the decoding-based decoding method and apparatus according to the embodiment of the present invention, one coding unit (CU) is divided into a plurality of prediction units (PU) to be encoded or decoded. When there is a motion candidate that is not available for one prediction unit, encoding efficiency may be increased by using a motion candidate in a lower layer image corresponding to the candidate in the upper layer.

도 1은 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 2는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 3은 본 발명이 적용될 수 있는, 복수 계층을 이용한 스케일러블 비디오 코딩 구조의 일 실시예를 개략적으로 나타내는 개념도이다.
도 4는 병합 움직임 후보 목록으로 사용되는 현재 블록의 주변 블록들을 나타낸 개념도이다.
도 5는 하나의 CU가 2개의 PU로 나누어졌을 경우, 병합 움직임 후보 목록을 설정하는 방법을 나타낸 개념도이다.
도 6은 복수개의 CU를 포함하는 2Nx2N CU에 대한 개념도이다.
도 7은 병렬 병합 움직임 예측을 수행하는 방법을 나타낸 개념도이다.
도 8은 MER로 여러 개의 블록을 묶은 예를 나타낸 개념도이다.
도 9는 MER 내에서의 후보 영역들을 나타낸 개념도이다.
도 10은 본 발명의 실시예에 따른 병합 움직임 예측 방법을 나타낸 개념도이다.
도 11은 본 발명의 실시예에 따른 병합 움직임 예측 방법을 나타낸 개념도이다.
도 12는 본 발명의 실시예에 따른 병합 움직임 예측 방법을 나타낸 개념도이다.
1 is a block diagram illustrating a configuration of an image encoding apparatus according to an embodiment.
2 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment.
3 is a conceptual diagram schematically illustrating an embodiment of a scalable video coding structure using multiple layers to which the present invention can be applied.
4 is a conceptual diagram illustrating neighboring blocks of a current block used as a merge motion candidate list.
5 is a conceptual diagram illustrating a method of setting a merge motion candidate list when one CU is divided into two PUs.
6 is a conceptual diagram of a 2N × 2N CU including a plurality of CUs.
7 is a conceptual diagram illustrating a method of performing parallel merge motion prediction.
8 is a conceptual diagram illustrating an example in which several blocks are bundled with MER.
9 is a conceptual diagram illustrating candidate regions in a MER.
10 is a conceptual diagram illustrating a merge motion prediction method according to an embodiment of the present invention.
11 is a conceptual diagram illustrating a merge motion prediction method according to an embodiment of the present invention.
12 is a conceptual diagram illustrating a merge motion prediction method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the drawings, similar reference numerals are used for similar elements.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may exist in the middle. Should be. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, " 포함한다" 또는 " 가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprises" or "having" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, with reference to the accompanying drawings, it will be described in detail a preferred embodiment of the present invention. Hereinafter, the same reference numerals are used for the same components in the drawings, and duplicate descriptions of the same components are omitted.

도 1은 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다. 스케일러블(scalable) 비디오 부호화/복호화 방법 또는 장치는 스케일러빌리티(scalability)를 제공하지 않는 일반적인 영상 부호화/복호화 방법 또는 장치의 확장(extension)에 의해 구현될 수 있으며, 도 1의 블록도는 스케일러블 비디오 부호화 장치의 기초가 될 수 있는 영상 부호화 장치의 일 실시예를 나타낸다.1 is a block diagram illustrating a configuration of an image encoding apparatus according to an embodiment. A scalable video encoding / decoding method or apparatus may be implemented by an extension of a general video encoding / decoding method or apparatus that does not provide scalability, and the block diagram of FIG. 1 is scalable. An embodiment of an image encoding apparatus that may be the basis of a video encoding apparatus is illustrated.

도 1을 참조하면, 상기 영상 부호화 장치(100)는 움직임 예측부(111), 움직임 보상부(112), 인트라 예측부(120), 스위치(115), 감산기(125), 변환부(130), 양자화부(140), 엔트로피 부호화부(150), 역양자화부(160), 역변환부(170), 가산기(175), 필터부(180) 및 참조영상 버퍼(190)를 포함한다.Referring to FIG. 1, the image encoding apparatus 100 may include a motion predictor 111, a motion compensator 112, an intra predictor 120, a switch 115, a subtractor 125, and a converter 130. And a quantization unit 140, an entropy encoding unit 150, an inverse quantization unit 160, an inverse transform unit 170, an adder 175, a filter unit 180, and a reference image buffer 190.

영상 부호화 장치(100)는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 부호화를 수행하고 비트스트림(bit stream)을 출력할 수 있다. 인트라 예측은 화면 내 예측, 인터 예측은 화면 간 예측을 의미한다. 인트라 모드인 경우 스위치(115)가 인트라로 전환되고, 인터 모드인 경우 스위치(115)가 인터로 전환된다. 영상 부호화 장치(100)는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분을 부호화할 수 있다.The image encoding apparatus 100 may perform encoding in an intra mode or an inter mode on an input image and output a bit stream. Intra prediction means intra prediction and inter prediction means inter prediction. In the intra mode, the switch 115 is switched to intra, and in the inter mode, the switch 115 is switched to inter. The image encoding apparatus 100 may generate a prediction block for an input block of an input image and then encode a difference between the input block and the prediction block.

인트라 모드인 경우, 인트라 예측부(120)는 현재 블록 주변의 이미 부호화된 블록의 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다.In the intra mode, the intra predictor 120 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already encoded around the current block.

인터 모드인 경우, 움직임 예측부(111)는, 움직임 예측 과정에서 참조 영상 버퍼(190)에 저장되어 있는 참조 영상에서 입력 블록과 가장 매치가 잘 되는 영역을 찾아 움직임 벡터를 구할 수 있다. 움직임 보상부(112)는 움직임 벡터와 참조 영상 버퍼(190)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다. In the inter mode, the motion predictor 111 may obtain a motion vector by searching for a region that best matches an input block in the reference image stored in the reference image buffer 190 during the motion prediction process. The motion compensator 112 may generate a prediction block by performing motion compensation using the motion vector and the reference image stored in the reference image buffer 190.

감산기(125)는 입력 블록과 생성된 예측 블록의 차분에 의해 잔여 블록(residual block)을 생성할 수 있다. 변환부(130)는 잔여 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 그리고 양자화부(140)는 입력된 변환 계수를 양자화 파라미터에 따라 양자화하여 양자화된 계수(quantized coefficient)를 출력할 수 있다. The subtractor 125 may generate a residual block by the difference between the input block and the generated prediction block. The transform unit 130 may output a transform coefficient by performing transform on the residual block. The quantization unit 140 may output the quantized coefficient by quantizing the input transform coefficient according to the quantization parameter.

엔트로피 부호화부(150)는, 양자화부(140)에서 산출된 값들 또는 부호화 과정에서 산출된 부호화 파라미터 값 등을 기초로, 심볼(symbol)을 확률 분포에 따라 엔트로피 부호화하여 비트스트림(bit stream)을 출력할 수 있다. 엔트로피 부호화 방법은 다양한 값을 갖는 심볼을 입력 받아, 통계적 중복성을 제거하면서, 복호 가능한 2진수의 열로 표현하는 방법이다. The entropy encoding unit 150 entropy encodes a symbol according to a probability distribution based on values calculated by the quantization unit 140 or encoding parameter values calculated in the encoding process, thereby generating a bit stream. You can print The entropy encoding method is a method of receiving a symbol having various values and expressing it in a decodable column while removing statistical redundancy.

여기서, 심볼이란 부호화/복호화 대상 구문 요소(syntax element) 및 부호화 파라미터(coding parameter), 잔여 신호(residual signal)의 값 등을 의미한다. 부호화 파라미터는 부호화 및 복호화에 필요한 매개변수로서, 구문 요소와 같이 부호화 장치에서 부호화되어 복호화 장치로 전달되는 정보뿐만 아니라, 부호화 혹은 복호화 과정에서 유추될 수 있는 정보를 포함할 수 있으며 영상을 부호화하거나 복호화할 때 필요한 정보를 의미한다. 부호화 파라미터는 예를 들어 인트라/인터 예측모드, 이동/움직임 벡터, 참조 영상 색인, 부호화 블록 패턴, 잔여 신호 유무, 변환 계수, 양자화된 변환 계수, 양자화 파라미터, 블록 크기, 블록 분할 정보 등의 값 또는 통계를 포함할 수 있다. 또한 잔여 신호는 원신호와 예측 신호의 차이를 의미할 수 있고, 또한 원신호와 예측 신호의 차이가 변환(transform)된 형태의 신호 또는 원신호와 예측 신호의 차이가 변환되고 양자화된 형태의 신호를 의미할 수도 있다. 잔여 신호는 블록 단위에서는 잔여 블록이라 할 수 있다.Here, the symbol means a syntax element, a coding parameter, a residual signal value, or the like that is to be encoded / decoded. The encoding parameter is a parameter necessary for encoding and decoding, and may include information that may be inferred in the encoding or decoding process as well as information encoded by the encoding apparatus and transmitted to the decoding apparatus, such as syntax elements. It means the information you need when you do. Coding parameters may be, for example, intra / inter prediction modes, moving / motion vectors, reference picture indexes, coding block patterns, presence or absence of residual signals, transform coefficients, quantized transform coefficients, quantization parameters, block sizes, block partitioning information, or the like. May include statistics. In addition, the residual signal may mean a difference between the original signal and the prediction signal, and a signal in which the difference between the original signal and the prediction signal is transformed or a signal in which the difference between the original signal and the prediction signal is converted and quantized It may mean. The residual signal may be referred to as a residual block in block units.

엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 부호화 대상 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 부호화를 통해서 영상 부호화의 압축 성능이 높아질 수 있다. When entropy encoding is applied, a small number of bits are allocated to a symbol having a high probability of occurrence and a large number of bits are allocated to a symbol having a low probability of occurrence, whereby the size of the bit string for the symbols to be encoded is increased. Can be reduced. Therefore, compression performance of image encoding may be increased through entropy encoding.

엔트로피 부호화를 위해 지수 골룸(exponential golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법이 사용될 수 있다. 예를 들어, 엔트로피 부호화부(150)에는 가변 길이 부호화(VLC: Variable Lenghth Coding/Code) 테이블과 같은 엔트로피 부호화를 수행하기 위한 테이블이 저장될 수 있고, 엔트로피 부호화부(150)는 저장된 가변 길이 부호화(VLC) 테이블을 사용하여 엔트로피 부호화를 수행할 수 있다. 또한 엔트로피 부호화부(150)는 대상 심볼의 이진화(binarization) 방법 및 대상 심볼/빈(bin)의 확률 모델(probability model)을 도출한 후, 도출된 이진화 방법 또는 확률 모델을 사용하여 엔트로피 부호화를 수행할 수도 있다.For entropy coding, coding methods such as exponential golomb, context-adaptive variable length coding (CAVLC), and context-adaptive binary arithmetic coding (CABAC) may be used. For example, the entropy encoder 150 may store a table for performing entropy encoding, such as a variable length coding (VLC) table, and the entropy encoder 150 may store the stored variable length encoding. Entropy encoding may be performed using the (VLC) table. In addition, the entropy encoder 150 derives a binarization method of a target symbol and a probability model of a target symbol / bin, and then performs entropy encoding using the derived binarization method or a probability model. You may.

양자화된 계수는 역양자화부(160)에서 역양자화되고 역변환부(170)에서 역변환될 수 있다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록이 생성될 수 있다. The quantized coefficients may be inversely quantized by the inverse quantizer 160 and inversely transformed by the inverse transformer 170. The inverse quantized and inverse transformed coefficients are added to the prediction block through the adder 175 and a reconstruction block can be generated.

복원 블록은 필터부(180)를 거치고, 필터부(180)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 중 적어도 하나 이상을 복원 블록 또는 복원 픽처에 적용할 수 있다. 필터부(180)를 거친 복원 블록은 참조 영상 버퍼(190)에 저장될 수 있다.The reconstruction block passes through the filter unit 180, and the filter unit 180 applies at least one or more of a deblocking filter, a sample adaptive offset (SAO), and an adaptive loop filter (ALF) to the reconstructed block or reconstructed picture. can do. The reconstructed block that has passed through the filter unit 180 may be stored in the reference image buffer 190.

도 2는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.2 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment.

도 1에서 상술한 바와 같이 스케일러블 비디오 부호화/복호화 방법 또는 장치는 스케일러빌리티를 제공하지 않는 일반적인 영상 부호화/복호화 방법 또는 장치의 확장에 의해 구현될 수 있으며, 도 2의 블록도는 스케일러블 비디오 복호화 장치의 기초가 될 수 있는 영상 복호화 장치의 일 실시예를 나타낸다.As described above with reference to FIG. 1, a scalable video encoding / decoding method or apparatus may be implemented by extension of a general video encoding / decoding method or apparatus that does not provide scalability, and the block diagram of FIG. 2 is scalable video decoding. An embodiment of an image decoding apparatus that may be the basis of an apparatus is shown.

도 2를 참조하면, 상기 영상 복호화 장치(200)는 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 필터부(260) 및 참조 영상 버퍼(270)를 포함한다.2, the image decoding apparatus 200 may include an entropy decoder 210, an inverse quantizer 220, an inverse transformer 230, an intra predictor 240, a motion compensator 250, and a filter. 260 and a reference picture buffer 270.

영상 복호화 장치(200)는 부호화 장치에서 출력된 비트스트림을 입력 받아 인트라 모드 또는 인터 모드로 복호화를 수행하고 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 인트라 모드인 경우 스위치가 인트라로 전환되고, 인터 모드인 경우 스위치가 인터로 전환될 수 있다. 영상 복호화 장치(200)는 입력 받은 비트스트림으로부터 복원된 잔여 블록(residual block)을 얻고 예측 블록을 생성한 후 복원된 잔여 블록과 예측 블록을 더하여 재구성된 블록, 즉 복원 블록을 생성할 수 있다.The image decoding apparatus 200 may receive a bitstream output from the encoding apparatus, perform decoding in an intra mode or an inter mode, and output a reconstructed image, that is, a reconstructed image. In the intra mode, the switch may be switched to intra, and in the inter mode, the switch may be switched to inter. The image decoding apparatus 200 may generate a reconstructed block, that is, a reconstructed block by obtaining a residual block reconstructed from the received bitstream, generating a prediction block, and adding the reconstructed residual block and the prediction block.

엔트로피 복호화부(210)는, 입력된 비트스트림을 확률 분포에 따라 엔트로피 복호화하여, 양자화된 계수(quantized coefficient) 형태의 심볼을 포함한 심볼들을 생성할 수 있다. 엔트로피 복호화 방법은 2진수의 열을 입력 받아 각 심볼들을 생성하는 방법이다. 엔트로피 복호화 방법은 상술한 엔트로피 부호화 방법과 유사하다.The entropy decoder 210 may entropy decode the input bitstream according to a probability distribution to generate symbols including symbols in the form of quantized coefficients. The entropy decoding method is a method of generating each symbol by receiving a binary string. The entropy decoding method is similar to the entropy coding method described above.

양자화된 계수는 역양자화부(220)에서 역양자화되고 역변환부(230)에서 역변환되며, 양자화된 계수가 역양자화/역변환 된 결과, 복원된 잔여 블록(residual block)이 생성될 수 있다. The quantized coefficients are inversely quantized by the inverse quantizer 220 and inversely transformed by the inverse transformer 230, and as a result of the inverse quantization / inverse transformation of the quantized coefficients, a reconstructed residual block may be generated.

인트라 모드인 경우, 인트라 예측부(240)는 현재 블록 주변의 이미 부호화된 블록의 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다. 인터 모드인 경우, 움직임 보상부(250)는 움직임 벡터 및 참조 영상 버퍼(270)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다. In the intra mode, the intra predictor 240 may generate a predictive block by performing spatial prediction using pixel values of an already encoded block around the current block. In the inter mode, the motion compensator 250 may generate a prediction block by performing motion compensation using the motion vector and the reference image stored in the reference image buffer 270.

복원된 잔여 블록과 예측 블록은 가산기(255)를 통해 더해지고, 더해진 블록은 필터부(260)를 거친다. 필터부(260)는 디블록킹 필터, SAO, ALF 중 적어도 하나 이상을 복원 블록 또는 복원 픽처에 적용할 수 있다. 필터부(260)는 재구성된 영상, 즉 복원 영상을 출력한다. 복원 영상은 참조 영상 버퍼(270)에 저장되어 화면 간 예측에 사용될 수 있다.The reconstructed residual block and the prediction block are added through the adder 255, and the added block passes through the filter unit 260. The filter unit 260 may apply at least one or more of the deblocking filter, SAO, and ALF to the reconstructed block or the reconstructed picture. The filter unit 260 outputs a reconstructed image, that is, a reconstructed image. The reconstructed picture may be stored in the reference picture buffer 270 to be used for inter prediction.

상기 영상 복호화 장치(200)에 포함되어 있는 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 필터부(260) 및 참조 영상 버퍼(270) 중 영상의 복호화에 직접적으로 관련된 구성요소들, 예컨대, 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 필터부(260) 등을 다른 구성요소와 구분하여 복호화부 또는 디코딩부로 표현할 수 있다. The entropy decoder 210, the inverse quantizer 220, the inverse transformer 230, the intra predictor 240, the motion compensator 250, and the filter 260 included in the image decoding apparatus 200. And components directly related to the decoding of an image in the reference image buffer 270, for example, an entropy decoder 210, an inverse quantizer 220, an inverse transformer 230, an intra predictor 240, and motion compensation. The unit 250, the filter unit 260, and the like may be distinguished from other components and expressed as a decoder or a decoder.

또한, 영상 복호화 장치(200)는 비트스트림에 포함되어 있는 인코딩된 영상에 관련된 정보를 파싱하는 도시하지 않은 파싱부를 더 포함할 수 있다. 파싱부는 엔트로피 복호화부(210)를 포함할 수도 있고, 엔트로피 복호화부(210)에 포함될 수도 있다. 이러한 파싱부는 또한 디코딩부의 하나의 구성요소로 구현될 수도 있다.Also, the image decoding apparatus 200 may further include a parsing unit (not shown) which parses information related to an encoded image included in a bitstream. The parser may include the entropy decoder 210 or may be included in the entropy decoder 210. Such a parser may also be implemented as one component of the decoder.

도 3은 본 발명이 적용될 수 있는, 복수 계층을 이용한 스케일러블 비디오 코딩 구조의 일 실시예를 개략적으로 나타내는 개념도이다. 도 3에서 GOP(Group of Picture)는 픽처군 즉, 픽처의 그룹을 나타낸다.3 is a conceptual diagram schematically illustrating an embodiment of a scalable video coding structure using multiple layers to which the present invention can be applied. In FIG. 3, a GOP (Group of Picture) represents a picture group, that is, a group of pictures.

영상 데이터를 전송하기 위해서는 전송 매체가 필요하며, 그 성능은 다양한 네트워크 환경에 따라 전송 매체별로 차이가 있다. 이러한 다양한 전송 매체 또는 네트워크 환경에의 적용을 위해 스케일러블 비디오 코딩 방법이 제공될 수 있다.In order to transmit image data, a transmission medium is required, and its performance varies depending on the transmission medium according to various network environments. A scalable video coding method may be provided for application to such various transmission media or network environments.

스케일러블 비디오 코딩 방법은 계층(layer) 간의 텍스쳐 정보, 움직임 정보, 잔여 신호 등을 활용하여 계층간 중복성을 제거하여 부호화/복호화 성능을 높이는 코딩 방법이다. 스케일러블 비디오 코딩 방법은, 전송 비트율, 전송 에러율, 시스템 자원 등의 주변 조건에 따라, 공간적, 시간적, 화질적 관점에서 다양한 스케일러빌리티를 제공할 수 있다.The scalable video coding method is a coding method that improves encoding / decoding performance by removing inter-layer redundancy by using texture information, motion information, and residual signals between layers. The scalable video coding method may provide various scalability in terms of spatial, temporal, and image quality according to ambient conditions such as a transmission bit rate, a transmission error rate, and a system resource.

스케일러블 비디오 코딩은, 다양한 네트워크 상황에 적용 가능한 비트스트림을 제공할 수 있도록, 복수 계층(multiple layers) 구조를 사용하여 수행될 수 있다. 예를 들어 스케일러블 비디오 코딩 구조는, 일반적인 영상 부호화 방법을 이용하여 영상 데이터를 압축하여 처리하는 기본 계층을 포함할 수 있고, 기본 계층의 부호화 정보 및 일반적인 영상 부호화 방법을 함께 사용하여 영상 데이터를 압축 처리하는 향상 계층을 포함할 수 있다.Scalable video coding may be performed using multiple layers structure to provide a bitstream applicable to various network situations. For example, the scalable video coding structure may include a base layer that compresses and processes image data by using a general image encoding method, and compresses the image data by using the encoding information of the base layer and a general image encoding method together. May include an enhancement layer for processing.

여기서, 계층(layer)은 공간(spatial, 예를 들어, 영상 크기), 시간(temporal, 예를 들어, 부호화 순서, 영상 출력 순서, 프레임 레이트), 화질, 복잡도 등을 기준으로 구분되는 영상 및 비트스트림(bitstream)의 집합을 의미한다. 또한 기본 계층은 하위 계층, 참조 계층 또는 Base layer, 향상 계층은 상위 계층, Enhancement layer를 의미할 수 있다. 또한 복수의 계층들은 서로 간에 종속성을 가질 수도 있다.In this case, a layer is an image and a bit divided based on spatial (eg, image size), temporal (eg, coding order, image output order, frame rate), image quality, complexity, and the like. Means a set of bitstreams. In addition, the base layer may mean a lower layer, a reference layer or a base layer, and the enhancement layer may mean an upper layer and an enhancement layer. In addition, the plurality of layers may have a dependency between each other.

도 3을 참조하면, 예를 들어 기본 계층은 SD(standard definition), 15Hz의 프레임율, 1Mbps 비트율로 정의될 수 있고, 제1 향상 계층은 HD(high definition), 30Hz의 프레임율, 3.9Mbps 비트율로 정의될 수 있으며, 제2 향상 계층은 4K-UHE(ultra high definition), 60Hz의 프레임율, 27.2Mbps 비트율로 정의될 수 있다. 상기 포맷(format), 프레임율, 비트율 등은 하나의 실시예로서, 필요에 따라 달리 정해질 수 있다. 또한 사용되는 계층의 수도 본 실시예에 한정되지 않고 상황에 따라 달리 정해질 수 있다. Referring to FIG. 3, for example, the base layer may be defined as a standard definition (SD), a frame rate of 15 Hz, and a 1 Mbps bit rate, and the first enhancement layer may be a high definition (HD), a frame rate of 30 Hz, and a 3.9 Mbps bit rate. The second enhancement layer may be defined as an ultra high definition (4K-UHE), a frame rate of 60 Hz, and a bit rate of 27.2 Mbps. The format, frame rate, bit rate, etc. are exemplary and may be determined differently as necessary. In addition, the number of hierarchies used is not limited to this embodiment and may be determined differently according to a situation.

예를 들어, 전송 대역폭이 4Mbps라면 상기 제1향상계층 HD의 프레임 레이트를 줄여서 15Hz이하로 전송할 수 있다. 스케일러블 비디오 코딩 방법은 상기 도 3의 실시예에서 상술한 방법에 의해 시간적, 공간적, 화질적 스케일러빌리티를 제공할 수 있다.For example, if the transmission bandwidth is 4 Mbps, the frame rate of the first enhancement layer HD may be reduced and transmitted at 15 Hz or less. The scalable video coding method can provide temporal, spatial and image quality scalability by the method described above in the embodiment of FIG. 3.

통상적으로 화면간 예측은 현재 픽처의 이전 픽처 또는 이후 픽처 중 적어도 하나를 참조 픽처로 하고, 참조 픽처를 기반으로 현재 블록에 대한 예측을 수행할 수 있다. 현재 블록의 예측에 이용되는 영상을 참조 픽처(reference picture) 또는 참조 프레임(reference frame)이라고 한다. In general, inter-screen prediction may use at least one of a previous picture or a subsequent picture of the current picture as a reference picture, and perform prediction on the current block based on the reference picture. An image used for prediction of the current block is called a reference picture or a reference frame.

참조 픽처 내의 영역은 참조 픽처를 지시하는 참조 픽처 인덱스(refIdx) 및 움직임 벡터(motion vector) 등을 이용하여 나타낼 수 있다. The region in the reference picture may be represented using a reference picture index refIdx, a motion vector, etc. indicating the reference picture.

화면간 예측은 참조 픽처 및 참조 픽처 내에서 현재 블록에 대응하는 참조 블록을 선택해서, 현재 블록에 대한 예측 블록을 생성할 수 있다. The inter prediction may select a reference picture corresponding to the current block in the reference picture and the reference picture, and generate a prediction block for the current block.

화면 간 예측에서 부호화 장치 및 복호화 장치는 현재 블록의 움직임 정보를 도출한 후, 도출된 움직임 정보에 기반하여 화면 간 예측 및/또는 움직임 보상을 수행할 수 있다. 이 때, 부호화 장치 및 복호화 장치는 복원된 주변 블록(neighboring block) 및/또는 이미 복원된 콜(col) 픽쳐(collocated picture) 내에서 현재 블록에 대응되는 콜(col) 블록(collocated block)의 움직임 정보를 이용함으로써, 부호화/복호화 효율을 향상시킬 수 있다. In the inter prediction, the encoding apparatus and the decoding apparatus may derive the motion information of the current block and then perform the inter prediction and / or motion compensation based on the derived motion information. In this case, the encoding apparatus and the decoding apparatus may move a coll block corresponding to the current block in a neighboring block and / or a collocated picture that has already been restored. By using the information, the encoding / decoding efficiency can be improved.

여기서, 복원된 주변 블록은 이미 부호화 및/또는 복호화되어 복원된 현재 픽쳐 내의 블록으로서, 현재 블록에 인접한 블록 및/또는 현재 블록의 외부 코너에 위치한 블록을 포함할 수 있다. 또한 부호화 장치 및 복호화 장치는, 콜 픽쳐 내에서 현재 블록과 공간적으로 대응되는 위치에 존재하는 블록을 기준으로 소정의 상대적인 위치를 결정할 수 있고, 상기 결정된 소정의 상대적인 위치(상기 현재 블록과 공간적으로 대응되는 위치에 존재하는 블록의 내부 및/또는 외부의 위치)를 기반으로 상기 콜 블록을 도출할 수 있다. 여기서, 일례로 콜 픽쳐는 참조 픽쳐 리스트에 포함된 참조 픽쳐 중에서 하나의 픽쳐에 해당될 수 있다.Here, the reconstructed neighboring block is a block in the current picture that is already encoded and / or decoded and reconstructed, and may include a block adjacent to the current block and / or a block located at an outer corner of the current block. In addition, the encoding apparatus and the decoding apparatus may determine a predetermined relative position based on a block existing at a position spatially corresponding to the current block in the call picture, and the predetermined relative position (spatially corresponding to the current block) The call block may be derived based on the location of the inside and / or outside of the block existing at the location. Here, as an example, the call picture may correspond to one picture among the reference pictures included in the reference picture list.

화면간 예측은 현재 블록과의 레지듀얼(residual) 신호가 최소화되며 움직임 벡터 크기 역시 최소가 되도록 예측 블록을 생성할 수 있다.In inter prediction, a prediction block may be generated such that a residual signal with a current block is minimized and a motion vector size is also minimized.

한편, 움직임 정보 도출 방식은 현재 블록의 예측 모드에 따라 달라질 수 있다. 인터 예측을 위해 적용되는 예측 모드에는 AMVP(Advanced Motion Vector Predictor), 머지(merge) 등이 있을 수 있다.Meanwhile, the motion information derivation scheme may vary depending on the prediction mode of the current block. Prediction modes applied for inter prediction may include Advanced Motion Vector Predictor (AMVP), merge, and the like.

일례로, AMVP(Advanced Motion Vector Predictor)가 적용되는 경우, 부호화 장치 및 복호화 장치는 복원된 주변 블록의 움직임 벡터 및/또는 콜 블록의 움직임 벡터를 이용하여, 예측 움직임 벡터 후보 리스트를 생성할 수 있다. 즉, 복원된 주변 블록의 움직임 벡터 및/또는 콜 블록의 움직임 벡터는 예측 움직임 벡터 후보로 사용될 수 있다. 부호화 장치는 상기 리스트에 포함된 예측 움직임 벡터 후보 중에서 선택된 최적의 예측 움직임 벡터를 지시하는 예측 움직임 벡터 인덱스를 복호화 장치로 전송할 수 있다. 이 때, 복호화 장치는 상기 예측 움직임 벡터 인덱스를 이용하여, 예측 움직임 벡터 후보 리스트에 포함된 예측 움직임 벡터 후보 중에서, 현재 블록의 예측 움직임 벡터를 선택할 수 있다.As an example, when an advanced motion vector predictor (AMVP) is applied, the encoding apparatus and the decoding apparatus may generate a predicted motion vector candidate list using the motion vector of the reconstructed neighboring block and / or the motion vector of the call block. . That is, the motion vector of the reconstructed neighboring block and / or the motion vector of the call block may be used as the prediction motion vector candidate. The encoding apparatus may transmit a predicted motion vector index indicating the optimal predicted motion vector selected from the predicted motion vector candidates included in the list to the decoding apparatus. In this case, the decoding apparatus may select the prediction motion vector of the current block from the prediction motion vector candidates included in the prediction motion vector candidate list by using the prediction motion vector index.

부호화 장치는 현재 블록의 움직임 벡터와 예측 움직임 벡터 간의 움직임 벡터 차분(MVD: Motion Vector Difference)을 구할 수 있고, 이를 부호화하여 복호화 장치로 전송할 수 있다. 이 때, 복호화 장치는 수신된 움직임 벡터 차분을 복호화할 수 있고, 복호화된 움직임 벡터 차분과 예측 움직임 벡터의 합을 통해 현재 블록의 움직임 벡터를 도출할 수 있다.The encoding apparatus may obtain a motion vector difference (MVD) between the motion vector of the current block and the predictive motion vector, and may encode the same and transmit the encoded motion vector to the decoding apparatus. In this case, the decoding apparatus may decode the received motion vector difference, and may derive the motion vector of the current block through the sum of the decoded motion vector difference and the predicted motion vector.

부호화 장치는 또한 참조 픽처를 지시하는 참조 픽처 인덱스 등을 복호화 장치에 전송할 수 있다. The encoding apparatus may also transmit a reference picture index or the like indicating the reference picture to the decoding apparatus.

복호화 장치는 주변 블록의 움직임 정보들을 이용하여 현재 블록의 움직임 벡터를 예측하고, 부호화 장치로부터 수신한 레지듀얼을 이용하여 현재 블록에 대한 움직임 벡터를 유도할 수 있다. 복호화 장치는 유도한 움직임 벡터와 부호화 장치로부터 수신한 참조 픽처 인덱스 정보를 기반으로 현재 블록에 대한 예측 블록을 생성할 수 있다.The decoding apparatus may predict the motion vector of the current block using the motion information of the neighboring block, and may derive the motion vector for the current block using the residual received from the encoding apparatus. The decoding apparatus may generate a prediction block for the current block based on the derived motion vector and the reference picture index information received from the encoding apparatus.

다른 예로, 머지(merge)가 적용되는 경우, 부호화 장치 및 복호화 장치는 복원된 주변 블록의 움직임 정보 및/또는 콜 블록의 움직임 정보를 이용하여, 머지 후보 리스트를 생성할 수 있다. 즉, 부호화 장치 및 복호화 장치는 복원된 주변 블록 및/또는 콜 블록의 움직임 정보가 존재하는 경우, 이를 현재 블록에 대한 머지 후보로 사용할 수 있다. As another example, when merge is applied, the encoding apparatus and the decoding apparatus may generate the merge candidate list using the motion information of the reconstructed neighboring block and / or the motion information of the call block. That is, when there is motion information of the reconstructed neighboring block and / or the call block, the encoding apparatus and the decoding apparatus may use this as a merge candidate for the current block.

부호화 장치는 머지 후보 리스트에 포함된 머지 후보 중에서 최적의 부호화 효율을 제공할 수 있는 머지 후보를 현재 블록에 대한 움직임 정보로 선택할 수 있다. 이 때, 상기 선택된 머지 후보를 지시하는 머지 인덱스가 비트스트림에 포함되어 복호화 장치로 전송될 수 있다. 복호화 장치는 상기 전송된 머지 인덱스를 이용하여, 머지 후보 리스트에 포함된 머지 후보 중에서 하나를 선택할 수 있으며, 상기 선택된 머지 후보를 현재 블록의 움직임 정보로 결정할 수 있다. 따라서, 머지 모드가 적용되는 경우, 복원된 주변 블록 및/또는 콜 블록의 움직임 정보가 현재 블록의 움직임 정보로 그대로 사용될 수 있다. 복호화 장치는 예측 블록과 부호화 장치로부터 전송되는 레지듀얼을 더하여 현재 블록을 복원할 수 있다.The encoding apparatus may select a merge candidate capable of providing an optimal encoding efficiency among the merge candidates included in the merge candidate list as motion information for the current block. In this case, a merge index indicating the selected merge candidate may be included in the bitstream and transmitted to the decoding apparatus. The decoding apparatus may select one of the merge candidates included in the merge candidate list by using the transmitted merge index, and determine the selected merge candidate as motion information of the current block. Therefore, when the merge mode is applied, the motion information of the restored neighboring block and / or the call block may be used as the motion information of the current block. The decoding apparatus may reconstruct the current block by adding the prediction block and the residual transmitted from the encoding apparatus.

상술한 AMVP 및 머지 모드에서는, 현재 블록의 움직임 정보를 도출하기 위해, 복원된 주변 블록의 움직임 정보 및/또는 콜 블록의 움직임 정보가 사용될 수 있다.In the above-described AMVP and merge mode, the motion information of the reconstructed neighboring block and / or the motion information of the call block may be used to derive the motion information of the current block.

화면 간 예측에 이용되는 다른 모드 중 하나 인 스킵 모드의 경우에, 주변 블록의 정보를 그대로 현재 블록에 이용할 수 있다. 따라서 스킵 모드의 경우에, 부호화 장치는 현재 블록의 움직임 정보로서 어떤 블록의 움직임 정보를 이용할 것인지를 지시하는 정보 외에 레지듀얼 등과 같은 신택스 정보를 복호화 장치에 전송하지 않는다. In the case of a skip mode, which is one of other modes used for inter prediction, information of neighboring blocks may be used as is in the current block. Accordingly, in the skip mode, the encoding apparatus does not transmit syntax information such as residual to the decoding apparatus other than the information indicating which block motion information to use as the motion information of the current block.

부호화 장치 및 복호화 장치는 상기 도출된 움직임 정보에 기반하여 현재 블록에 대한 움직임 보상을 수행함으로써, 현재 블록의 예측 블록을 생성할 수 있다. 여기서, 예측 블록은 현재 블록에 대한 움직임 보상 수행 결과 생성된, 움직임 보상된 블록을 의미할 수 있다. 또한, 복수의 움직임 보상된 블록은 하나의 움직임 보상된 영상을 구성할 수 있다.The encoding apparatus and the decoding apparatus may generate a prediction block of the current block by performing motion compensation on the current block based on the derived motion information. Here, the prediction block may mean a motion compensated block generated as a result of performing motion compensation on the current block. Also, the plurality of motion compensated blocks may constitute one motion compensated image.

복호화 장치는 현재 블록의 인터 예측에 필요한 움직임 정보, 예컨대 움직임 벡터, 참조 픽처 인덱스 등에 관한 정보를 부호화 장치로부터 수신한 스킵 플래그, 머지 플래그 등을 확인하고 이에 대응하여 유도할 수 있다. The decoding apparatus may check and derive motion information necessary for inter prediction of the current block, for example, a skip flag, a merge flag, and the like received from the encoding apparatus, corresponding to the information about a motion vector, a reference picture index, and the like.

예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 서로 다를 수 있다. 예컨대, 예측 블록 단위로 예측모드가 정해져서 변환 블록 단위로 예측이 수행될 수도 있고, 예측 블록 단위로 예측 모드가 정해지고 변환 블록 단위로 화면 내 예측이 수행될 수 도 있다. The processing unit in which the prediction is performed and the processing unit in which the prediction method and the details are determined may be different. For example, a prediction mode may be determined in units of prediction blocks, and prediction may be performed in units of transform blocks, or a prediction mode may be determined in units of prediction blocks, and intra prediction may be performed in units of transform blocks.

병합(merge) 움직임 예측 방법, 즉 머지 예측에 사용되는 움직임 정보란, 움직임 벡터, 참조영상에 대한 인덱스 그리고 예측 방향(단방향, 양방향, 등) 중에서 적어도 하나를 포함하는 정보다. 예측 방향은 참조 픽쳐 목록(Reference Picture List; RefPicList)의 사용에 따라 크게 단방향 예측과 양방향 예측으로 나누어 질 수 있다.The merge motion prediction method, that is, motion information used for merge prediction, is information including at least one of a motion vector, an index with respect to a reference image, and a prediction direction (unidirectional, bidirectional, etc.). The prediction direction may be largely divided into unidirectional prediction and bidirectional prediction according to the use of a reference picture list (RefPicList).

*단방향 예측에는 순방향 참조 픽쳐 목록 (LIST 0)을 사용한 순방향 예측(Pred_L0; Prediction L0)과 역방향 참조픽쳐목록 (LIST 1)을 사용한 역방향 예측(Pred_L1; Prediction L1)으로 구분된다. * For unidirectional prediction, it is divided into forward prediction (Pred_L0; Prediction L0) using forward reference picture list (LIST 0) and backward prediction (Pred_L1; Prediction L1) using backward reference picture list (LIST 1).

또한, 양방향 예측(Pred_BI; Prediction BI)은 순방향 참조픽쳐목록 (LIST 0)와 역방향 참조픽쳐목록 (LIST 1)을 모두 사용하며, 순방향 예측과 역방향 예측이 모두 존재하는 것을 의미할 수 있다.In addition, bidirectional prediction (Pred_BI) uses both a forward reference picture list (LIST 0) and a reverse reference picture list (LIST 1), and may mean that both forward prediction and backward prediction exist.

또한, 순방향 참조픽쳐목록(LIST 0)을 역방향 참조픽쳐목록 (LIST 1)에 복사하여 순방향 예측이 두 개 존재하는 경우도 양방향 예측의 범위에 포함될 수 있다. 이러한 예측 방향 여부는 predFlagL0, predFlagL1와 같은 플래그 정보를 사용하여 표현될 수 있다.In addition, the case in which two forward predictions exist by copying the forward reference picture list LIST 0 to the backward reference picture list LIST 1 may also be included in the range of bidirectional prediction. Such prediction direction may be expressed using flag information such as predFlagL0 and predFlagL1.

실시 일예로, 단방향 예측이고 순방향 예측일 경우 predFlagL0는 ‘1’이 되고 predFlagL1은 ‘0’이 될 수 있다. 또한, 단방향 예측이고 역방향 예측일 경우 predFlagL0는 ‘0’이 되고 predFlagL1은 ‘1’이 될 수 있다. 또한, 양방향 예측일 경우 predFlagL0는 ‘1’이 되고 predFlagL1은 ‘1’이 될 수 있다. In an embodiment, in the case of unidirectional prediction and forward prediction, predFlagL0 may be '1' and predFlagL1 may be '0'. Also, in the case of unidirectional prediction and reverse prediction, predFlagL0 may be '0' and predFlagL1 may be '1'. In addition, in the bidirectional prediction, predFlagL0 may be '1' and predFlagL1 may be “1”.

병합 움직임 예측은 부호화 유닛(Coding Unit: CU, 이하 ‘CU’라 함) 별로 수행될 수도 있고, 예측 유닛(Prediction Unit: PU, 이하 ‘PU’라 함) 별로 수행될 수도 있다. Merged motion prediction may be performed for each coding unit (CU), or may be performed for each prediction unit (PU).

CU 또는 PU(설명의 편의를 위해 CU 는 ‘부호화 블록’, PU는 ‘예측 블록’, CU 및PU를 통칭하여 ‘블록’으로 표현할 수 있음) 별로 병합 움직임을 수행하는 경우에는, 블록 파티션(partition)별로 병합 움직임 예측을 수행할지에 관한 정보와 현재 블록에 인접한 주변 블록(현재 블록의 좌측 인접 블록, 현재 블록의 상측 인접 블록, 현재 블록의 시간적(temporral) 인접 블록 등) 중 어떤 블록과 병합 움직임을 할 것인지에 대한 정보가 시그널링 되어야 한다. In the case of performing a merge movement for each CU or PU (for convenience of description, a CU is a 'coding block', a PU is a 'prediction block', and a CU and a PU collectively, a 'block'), a block partition Information about whether to perform a merge motion prediction for each block and a neighboring block adjacent to the current block (left neighbor block of the current block, upper neighbor block of the current block, temporal neighbor block of the current block, etc.) Information on whether to do this should be signaled.

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

도 4는 병합 움직임 후보 목록으로 사용되는 현재 블록의 주변 블록들을 나타낸 개념도이다. 4 is a conceptual diagram illustrating neighboring blocks of a current block used as a merge motion candidate list.

도 4를 참조하면, 병합 움직임 후보 목록은 도 4의 주변 블록(A(410), B(420), C(430), D(440), E(450))과 동일 위치의 후보 블록(H(460)(혹은 M(470)))에 대하여 해당 블록의 움직임 정보가 현재 블록의 병합 움직임 예측에 이용될 수 있는지를 판단할 수 있다. 블록의 움직임 정보가 현재 블록의 병합 움직임 예측에 이용 가능한 경우에는 해당 블록의 움직임 정보를 병합 움직임 후보 목록에 입력할 수 있다. 병합 움직임 예측에 이용되는 블록을 병합 움직임 예측 후보 블록이라는 용어로 정의할 수 있다.Referring to FIG. 4, the merge motion candidate list is a candidate block H at the same position as the neighboring blocks A 410, B 420, C 430, D 440, and E 450 of FIG. 4. For 460 (or M 470), it may be determined whether motion information of the corresponding block can be used for prediction of the merge motion of the current block. When the motion information of the block is available for the merge motion prediction of the current block, the motion information of the block may be input to the merge motion candidate list. A block used for merge motion prediction may be defined in terms of a merge motion prediction candidate block.

또한, 각 주변 블록은 서로 동일한 움직임 정보를 가지는지 확인하여 동일한 움직임 정보일 경우, 해당 주변 블록의 움직임 정보는 병합 움직임 후보 목록에 포함되지 않을 수 있다. 예를 들어, 도 1에서 현재 블록인 X 블록에 대한 병합 움직임 후보 목록을 생성할 때, 주변 블록 A(410)가 사용이 가능하여 병합 움직임 후보 목록에 포함된 후, 주변 블록 B(420)는 주변 블록 A(410)와 동일한 움직임 정보가 아닐 경우에만, 병합 움직임 후보 목록에 포함될 수 있다. 동일한 방법으로 주변 블록 C(430)는 주변 블록 B(420)와 동일한 움직임 정보가 아닐 경우에만 병합 움직임 후보 목록에 포함될 수 있다. 동일한 방법으로 주변 블록 D(440)와 주변 블록 E(450)에 적용될 수 있다. 여기서 동일한 움직임 정보라는 것은 움직임 벡터가 동일하고 동일한 참조픽쳐를 사용하고 동일한 예측 방향(단방향(정방향, 역방향), 양방향)을 사용함을 의미할 수 있다. 마지막으로 도 1에서 X 블록(400)에 대한 병합 움직임 후보 목록은 소정의 순서, 예컨대, A(410)→B(420)→C(430)→D(440)→E(450)→H(460)(혹은 M(470)) 블록 순서로 목록에 추가될 수 있다. 여기서 A(410)는 A1으로, B(420)는 B1으로, C(430)는 B0로, D(440)는 A0로, E(450)는 B2라고 지칭할 수 있다. 따라서, A(410)→B(420)→C(430)→D(440)→E(450)→H(460)(혹은 M(470))는 A1→B1→B0→A0→B2→H(혹은 M)이라고 해석될 수 있다. In addition, if each neighboring block has the same motion information by checking whether the neighboring blocks have the same motion information, the motion information of the neighboring block may not be included in the merge motion candidate list. For example, when generating the merge motion candidate list for the X block that is the current block in FIG. 1, after neighboring block A 410 is available and included in the merge motion candidate list, neighboring block B 420 is Only when it is not the same motion information as the neighboring block A (410), it may be included in the merge motion candidate list. In the same manner, the neighboring block C 430 may be included in the merge motion candidate list only when the neighboring block C 430 is not the same motion information as the neighboring block B 420. The same method may be applied to the neighboring block D 440 and the neighboring block E 450. Here, the same motion information may mean that the motion vectors are the same, use the same reference picture, and use the same prediction directions (unidirectional (forward, reverse), and bidirectional). Finally, in FIG. 1, the merge motion candidate list for the X block 400 is in a predetermined order, for example, A 410 → B 420 → C 430 → D 440 → E 450 → H ( 460 (or M 470) may be added to the list in block order. Here, A 410 may be referred to as A1, B 420 to B1, C 430 to B0, D 440 to A0, and E 450 to B2. Therefore, A (410) → B (420) → C (430) → D (440) → E (450) → H (460) (or M (470)) is A1 → B1 → B0 → A0 → B2 → H (Or M).

현재 블록의 좌측 상단에 존재하는 픽셀의 위치를 (xP, yP)라고 하고 현재 블록의 너비를 nPSW, 높이를 nPSH라는 변수로 정의한다. 병합 움직임 예측 후보 블록을 표현하기 위한 변수인 MinSize는 사용될 수 있는 가장 블록 단위의 크기를 나타낸다.The position of the pixel in the upper left of the current block is called (xP, yP), and the width of the current block is defined by variables called nPSW and height as nPSH. MinSize, a variable for representing a merge motion prediction candidate block, indicates the size of the largest block unit that can be used.

이하, 본 발명의 실시예에서는 현재 블록의 병합 움직임 예측 후보 블록은 (xP-1, yP+nPSH)에 존재하는 픽셀을 포함하는 블록을 좌측 제1 블록(블록 D(440)), (xP-1, yP+nPSH-MinSize)에 존재하는 픽셀을 포함하는 블록을 좌측 제2 블록(블록 A(410))이라는 용어로 정의하여 사용한다. 또한, (xP+nPSW, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제1 블록(블록 C(430)), (xP+nPSW-MinSize, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제2 블록(블록 B(420)), (xP-MinSize, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제3 블록(블록 E(450))이라는 용어로 정의하여 사용한다.Hereinafter, in the embodiment of the present invention, the merge motion prediction candidate block of the current block may include a block including a pixel present in (xP-1, yP + nPSH) and the first left block (block D 440), (xP−). 1, yP + nPSH-MinSize) is used to define a block including a pixel present in the second left block (block A (410)). Also, a block including a pixel located at (xP + nPSW, yP-1) may include a pixel located at a top first block (block C 430) and (xP + nPSW-MinSize, yP-1). A block including a pixel located at an upper second block (block B 420) and (xP-MinSize, yP-1) is defined and used as a term of an upper third block (block E 450). .

병합 움직임 예측 후보 블록은 좌측 제1 블록(블록 D(440)), 좌측 제2 블록(블록 A(410)), 상단 제1 블록(블록 C(430)), 상단 제2 블록(블록 B(420)), 상단 제3 블록(블록 E(450))을 포함할 수 있다. 좌측 제1 블록(블록 D(440)) 및 좌측 제2 블록(블록 A(410))을 포함하는 하나의 그룹을 제1 병합 움직임 예측 후보 블록 그룹으로 정의하고 상단 제1 블록(블록 C(430)), 상단 제2 블록(블록 B(420)), 상단 제3 블록(블록 E(450))을 포함하는 하나의 그룹을 제2 병합 움직임 예측 후보 블록 그룹이라고 정의할 수도 있다.The merge motion prediction candidate block includes a left first block (block D 440), a left second block (block A 410), a top first block (block C 430), and a top second block (block B ( 420), and the upper third block (block E 450). One group including a left first block (block D 440) and a left second block (block A 410) is defined as a first merge motion prediction candidate block group and an upper first block (block C 430). ), One group including an upper second block (block B 420) and an upper third block (block E 450) may be defined as a second merge motion prediction candidate block group.

병합 움직임 예측 후보 블록은 시간적으로 다른 픽쳐에 해당하는 블록일 수도 있다. 예를 들어, 현재 블록를 포함하는 픽쳐 내의 픽셀 위치(xP, yP)를 기초로 현재 예측 단위의 콜-픽쳐에서 (xP+nPSW, yP+nPSH) 위치의 픽셀을 포함하는 예측 단위이거나 (xP+nPSW, yP+nPSH) 위치의 픽셀을 포함하는 예측 단위가 가용하지 않은 경우, (xP+nPSW/2-1, yP+nPSH/2-1) 위치의 픽셀을 포함하는 예측 단위가 될 수 있다.The merge motion prediction candidate block may be a block corresponding to another picture in time. For example, the prediction unit includes the pixel at the position (xP + nPSW, yP + nPSH) in the call-picture of the current prediction unit based on the pixel position (xP, yP) in the picture including the current block, or (xP + nPSW). If a prediction unit including a pixel at a position of yP + nPSH) is not available, it may be a prediction unit including a pixel at a position of (xP + nPSW / 2-1, yP + nPSH / 2-1).

도 4에서 개시한 병합 움직임 예측 후보 블록의 위치 및 개수는 임의적인 것으로써 본 발명의 본질에서 벋어나지 않는 병합 움직임 예측 후보 블록의 위치 및 개수는 변할 수 있고 또한, 병합 움직임 후보 목록을 구성시 우선적으로 스캔되는 병합 움직임 예측 후보 블록의 위치 및 후보 예측 그룹도 변할 수 있다. 즉, 이하, 본 발명의 실시예에서 설명하는 병합 움직임 후보 목록을 구성시 사용되는 병합 움직임 예측 후보 블록의 위치, 개수, 스캔 순서, 후보 예측 그룹 등은 하나의 실시예로써 본 발명의 본질에서 벋어나지 않는 한 변할 수 있다.The position and number of the merge motion prediction candidate blocks disclosed in FIG. 4 are arbitrary, and the position and number of the merge motion prediction candidate blocks, which are not deviated from the essence of the present invention, may vary, and are preferred when constructing the merge motion candidate list. The position and candidate prediction group of the merge motion prediction candidate block scanned with may also change. That is, the position, number, scan order, candidate prediction group, and the like of the merge motion prediction candidate blocks used when constructing the merge motion candidate list described in the embodiments of the present invention are exemplified in the nature of the present invention as an embodiment. Unless you change it.

도 5는 하나의 CU가 2개의 PU로 나누어졌을 경우, 병합 움직임 후보 목록을 설정하는 방법을 나타낸 개념도이다.5 is a conceptual diagram illustrating a method of setting a merge motion candidate list when one CU is divided into two PUs.

도 5에서는 하나의 CU(2Nx2N)가 2개의 PU로 나누어졌을 경우(Nx2N), 병합 움직임 후보 목록을 설정하는 방법에 대해 개시한다.5 illustrates a method of setting a merge motion candidate list when one CU (2Nx2N) is divided into two PUs (Nx2N).

도 5에는 그려지지 않았지만 주변 블록은 현재 블록에 인접한 주변 블록의 움직임 정보이거나 참조 영상에서 현재 블록에 대응되는(collocated) 블록의 움직임 정보일 수 있다. 도 5의 좌측은 첫 번째 PU에 대한 병합 움직임 후보 목록을 구성하기 위한 주변 블록이고 도 5의 우측은 두 번째 PU에 대한 병합 움직임 후보 목록을 구성하기 위해 사용되는 주변 블록들을 나타낸다.Although not illustrated in FIG. 5, the neighboring block may be motion information of a neighboring block adjacent to the current block or motion information of a block collocated with the current block in the reference image. The left side of FIG. 5 shows neighboring blocks for constructing the merge motion candidate list for the first PU and the right side of FIG. 5 shows neighboring blocks used for constructing the merge motion candidate list for the second PU.

도 5의 우측에 위치한 두 번째 PU에 대하여 두 번째 PU의 병합 움직임 후보 목록을 병렬적으로 구성하기 위해서 도 5의 우측에서 첫 번째 PU에 위치한 A1 블록은 두 번째 PU의 병합 움직임 후보 목록에 포함되지 않는다. 즉, 도 5의 우측에서 첫 번째 PU에 위치한 A1 블록은 두 번째 PU의 병합 움직임 후보 목록 구성에 사용가능하지 않으며, A1 블록의 움직임 정보에 접근할 수 없다는 것을 의미할 수 있다(또는 움직임 정보가 존재하지 않는다는 것을 의미할 수 있으며, 혹은 블록 움직임 정보의 가용성이 없음을 의미할 수 있음).In order to configure the merge motion candidate list of the second PU in parallel with respect to the second PU located on the right side of FIG. 5, the A1 block located on the first PU on the right side of FIG. 5 is not included in the merge motion candidate list of the second PU. Do not. That is, the A1 block located in the first PU on the right side of FIG. 5 is not available for constructing the merge motion candidate list of the second PU, and may mean that motion information of the A1 block cannot be accessed (or the motion information is May not exist, or it may mean that there is no availability of block motion information).

도 6은 복수개의 CU를 포함하는 2Nx2N CU에 대한 개념도이다.6 is a conceptual diagram of a 2N × 2N CU including a plurality of CUs.

도 6을 참조하면, PU는 병합 움직임 후보 목록을 구성하여 움직임 정보에 대한 부호화/복호화를 수행한다. 병합 움직임 후보 목록을 구성하기 위해서는 주변 PU에 대한 움직임 정보가 존재하여야 한다. 그런데, 도 6과 같이 복수개의 CU를 포함하고 있는 2Nx2N CU에서 인코더가 병렬적으로 병합 움직임 예측(Merge Estimation)을 수행할 경우, 2Nx2N의 CU 내부에 위치한 PU들 중에서 특정 PU()(음영으로 표시된 PU)의 경우에만 병합 움직임 예측(Merge Estimation)을 수행할 수 있다. 그 외 PU들은 병렬적으로 병합 움직임 예측을 수행할 수 없다. 그 이유는 각 PU는 병합 움직임 후보 목록을 구성한 후 병합 움직임 예측을 수행하여야 하는데, 음영으로 표시되지 않은 부분의 PU의 경우에는 인접한 주변 블록의 PU에 대한 움직임 정보가 없으므로 병합 움직임 후보 목록을 구성할 수 없다. 따라서 음영으로 표시되지 않은 PU는 병렬적으로 병합 움직임 예측이 불가능하다. 도 6에서 음영으로 표시되지 않은 PU들에 병렬적으로 병합 움직임 예측 방법을 수행하게 하기 위해 병렬 병합 움직임 예측(PME;Parallel Merge Estimation) 방법을 사용할 수 있다. Referring to FIG. 6, the PU constructs a merge motion candidate list to perform encoding / decoding on motion information. In order to construct a merge motion candidate list, motion information about a neighboring PU must exist. However, when the encoder performs merge motion estimation in parallel in a 2Nx2N CU including a plurality of CUs as shown in FIG. 6, a specific PU () (shown as shaded) among PUs located in a CU of 2Nx2N CU is represented. In the case of PU), merge motion estimation may be performed only. Other PUs cannot perform merge motion prediction in parallel. The reason for this is that each PU must perform merge motion prediction after constructing a merge motion candidate list. In the case of the PUs which are not shaded, there is no motion information on the PUs of neighboring neighboring blocks. Can not. Therefore, PUs that are not shaded cannot perform merge motion prediction in parallel. In order to perform the merge motion prediction method in parallel on the PUs not shaded in FIG. 6, a parallel merge motion prediction (PME) method may be used.

도 7은 병렬 병합 움직임 예측을 수행하는 방법을 나타낸 개념도이다. 7 is a conceptual diagram illustrating a method of performing parallel merge motion prediction.

도 7을 참조하면, “PU0”의 경우, 주변 블록에 사용가능한 움직임 정보가Referring to FIG. 7, in the case of “PU0”, motion information available for neighboring blocks may be

이미 존재하므로 병합 움직임 목록을 만들 수 있다. 도 7에서 “PU1”의 경우, 주변 블록이 부호화(또는 복호화)되지 않았으므로 사용가능한 움직임 정보가 없다. 따라서, 기존 방법으로는 병렬적으로 병합 움직임 방법을 사용할 수 없다. 도 7의 PU1과 같은 경우, 주변 블록에 사용가능하지 않은 움직임 정보를 병합 움직임 후보 목록에 포함시키지 않게 함으로써, 병렬적으로 병합 움직임 방법을 사용 가능하도록 만들 수 있다. 즉, 현재 PU에 대하여 사용이 가능한 주변 블록의 움직임 정보만을 사용하여 병합 움직임 후보 목록을 구성함으로써, 병렬적으로 병합 움직임 후보 목록을 구성할 수 있다.Since it already exists, you can create a merge movement list. In the case of “PU1” in FIG. 7, since no neighboring block is encoded (or decoded), no motion information is available. Therefore, the merge motion method cannot be used in parallel with the existing method. In the case of PU1 of FIG. 7, the merge motion method can be used in parallel by not including motion information that is not usable in the neighboring block in the merge motion candidate list. That is, the merge motion candidate list may be configured in parallel by configuring the merge motion candidate list using only the motion information of the neighboring blocks available for the current PU.

이러한 병렬 병합 움직임 예측(PME) 방법의 허용 범위를 도 7에서 병합 움직임 예측 범위(MER; Merge Estimation Region, 또는 병합 움직임 예측 영역)이라고 표현하였다. 예를 들어, 도 7에서 “PU2”의 경우, 같은 MER 내에 존재하는 주변 블록의 움직임 정보를 병합 움직임 후보 목록에 포함시키지 않을 수 있으며, 다른 MER에 존재하는 주변 블록의 움직임 정보만을 병합 움직임 후보 목록에 포함시킬 수 있다. The allowable range of the parallel merge motion prediction (PME) method is expressed as a merge motion prediction range (MER; merge motion prediction region) in FIG. 7. For example, in the case of “PU2” in FIG. 7, motion information of neighboring blocks existing in the same MER may not be included in the merge motion candidate list, and only motion information of neighboring blocks existing in another MER is merged candidate list. Can be included in

또 다른 일예로, 도 8은 MER로 여러 개의 블록을 묶은 예를 나타낸 개념도이다.As another example, FIG. 8 is a conceptual diagram illustrating an example in which several blocks are bundled with MER.

PME는 이 영역 내에서만 수행되며, 이 영역 내에서는 병렬적으로 부호화/복호화가 수행되기 때문에 영역 내에 포함되는 움직임 후보에 대해서는 ‘비가용 또는 사용할 수 없음(Unavailable)’으로 판단되어 후보에서 제외한다(즉, 움직임 후보 리스트에 넣지 않는다). MER을 이용하는 방법은 병렬성을 제공하지만, 같은 MER 영역 내에서 사용할 수 없는 후보들이 많기 때문에 부호화 효율이 상당히 떨어지게 된다.PME is performed only in this region, and since the encoding / decoding is performed in this region in parallel, the motion candidate included in the region is determined to be 'unavailable or unavailable' and excluded from the candidate ( That is, it is not put in the motion candidate list). The method using MER provides parallelism, but the coding efficiency decreases considerably because many candidates cannot be used in the same MER region.

도 9는 MER 내에서의 후보 영역들을 나타낸 개념도이다. 9 is a conceptual diagram illustrating candidate regions in a MER.

도 9에서는 예를 들어, 도 9에서 PU0의 같은 경우는 모든 후보가 자신이 포함된 MER 밖에 존재하므로 이 후보들을 사용할 수 있다. 하지만 PU1 같은 경우는 모든 후보가 자신이 포함된 MER 안에 존재하므로 모든 공간적 후보를 사용할 수 없다. PU1과 같은 경우 PU1의 병합 움직임 후보 목록은 1개의 시간적 후보 및 영벡터를 포함할 수 있다. 주변 블록의 움직임 벡터를 공간적 후보로 사용할 수 없는 경우는 MER의 크기가 커질수록 두드러지게 나타난다. 즉, MER의 크기가 커질수록 더 높은 병렬성을 제공하지만 그만큼 사용할 수 있는 후보의 수가 줄어듦으로 인해 부호화 효율이 떨어질 수 있다.In FIG. 9, for example, in the same case of PU0 in FIG. 9, since all candidates exist outside the MER in which they are included, these candidates may be used. However, in case of PU1, all spatial candidates cannot be used because all candidates exist in the MER including them. In the case of PU1, the merge motion candidate list of PU1 may include one temporal candidate and a zero vector. When the motion vector of the neighboring block cannot be used as a spatial candidate, it becomes more prominent as the size of the MER increases. That is, the larger the size of the MER, the higher parallelism is provided, but the coding efficiency may be reduced due to the reduced number of candidates.

본 발명의 실시예에서는 SHVC(scalable HEVC)와 같이, 블록 기반 부복호화 구조에서 병렬 처리를 사용할 때 발생하는, 병합 움직임 예측 영역 내 공간적 후보의 사용 제한으로 인한 부호화 효율 감소 문제점을 해결하고, 종전과 동일한 병렬성을 제공한다는 특징을 갖는다. 이를 위해 병렬 처리를 사용할 때, 공간적 움직임 후보가 제한된다면, 하위 계층의 움직임 정보를 이용하여 상위 계층을 예측하는데 사용하는 방법을 제안한다.The embodiment of the present invention solves a problem of reducing coding efficiency due to the limitation of the use of spatial candidates in the merge motion prediction region, which occurs when using parallel processing in a block-based encoding and decoding structure, such as a scalable HEVC (SHVC). It offers the same parallelism. When using parallel processing for this purpose, if the spatial motion candidate is limited, we propose a method used to predict the upper layer using the motion information of the lower layer.

본 발명의 실시예에 따르면, 상위 계층에서 병렬 병합 움직임 예측(PME)를 수행할 때 사용할 수 없음(Unavailable)이라고 판단된 후보 PU에 대하여, 그 후보 PU에 상응하는 하위 계층 영상의 PU(혹은 co-located unit)로부터 움직임 예측 정보를 참조할 수 있다. According to an embodiment of the present invention, for a candidate PU determined to be unavailable when performing parallel merge motion prediction (PME) in a higher layer, a PU (or co) of a lower layer image corresponding to the candidate PU It may refer to the motion prediction information from the -located unit.

도 10은 본 발명의 실시예에 따른 병합 움직임 예측 방법을 나타낸 개념도이다. 10 is a conceptual diagram illustrating a merge motion prediction method according to an embodiment of the present invention.

도 10을 참조하면, 상위 계층에서 PME를 수행할 때, 현재 PU 주변에서 병합 움직임 예측을 위한 후보로 사용될 수 있는 병합 후보 블록에 해당하는 PU가 비가용일 수 있다. 이하, 본 발명의 실시예에서는 병합 움직임 예측을 수행하는 대상 블록을 현재 블록, 현재 블록의 주변에 위치한 블록 또는 다른 픽쳐에 위치한 블록으로써 병합 움직임 예측을 위한 움직임 예측 정보를 제공하는 블록을 병합 후보 블록, 병합 후보 블록에서 유도되는 움직임 예측 정보를 후보 움직임 예측 정보라는 용어를 사용하여 표현할 수 있다. 이하, 본 발명의 실시예에서 블록은 PU를 포함하는 의미로 사용될 수 있다.Referring to FIG. 10, when performing a PME in a higher layer, a PU corresponding to a merge candidate block that may be used as a candidate for merge motion prediction around a current PU may be unavailable. Hereinafter, according to an embodiment of the present invention, a candidate block for performing merge motion prediction is a candidate block for providing motion prediction information for merge motion prediction as a current block, a block located around the current block, or a block located in another picture. The motion prediction information derived from the merge candidate block may be expressed using the term candidate motion prediction information. Hereinafter, in an embodiment of the present invention, a block may be used to mean a PU.

전술한 바와 같이 병합 움직임 예측을 수행시 병합 후보 블록 중 일부의 병합 후보 블록은 현재 블록과 동일한 MER에 포함되거나, 아직 복호화 또는 부호화가 되지 않을 수 있다. 이러한 경우, 병합 후보 블록 중 일부의 병합 후보 블록은 현재 블록에 대한 병합 움직임 예측을 위한 병합 후보 블록으로 가용하지 않을 수 있다. As described above, when performing merge motion prediction, some merge candidate blocks of the merge candidate blocks may be included in the same MER as the current block or may not be decoded or encoded yet. In this case, some of the merge candidate blocks of the merge candidate blocks may not be available as merge candidate blocks for merge motion prediction for the current block.

본 발명의 실시예에 따르면, 이러한 경우 SHVC에서는 현재 블록이 위치한 계층의 하위 계층에서 현재 블록에 대응하는 하위 계층 블록의 병합 후보 블록을 가용하지 않은 현재 블록의 병합 후보 블록 대신에 사용할 수 있다. 하위 계층에서 현재 블록에 대응하는 하위 계층의 블록은 현재 블록과 콜-로케이티드(co-located) 위치에 존재하는 블록일 수 있다. 이하, 본 발명의 실시예에서는 하위 계층에서 현재 블록에 대응하는 하위 계층의 블록을 대응 하위 계층 블록이라는 용어로 정의하여 사용한다.According to an embodiment of the present invention, in such a case, in SHVC, a merge candidate block of a lower layer block corresponding to the current block may be used instead of a merge candidate block of a current block in a lower layer of the layer in which the current block is located. The lower layer block corresponding to the current block in the lower layer may be a block existing at a co-located position with the current block. Hereinafter, in the embodiment of the present invention, the lower layer block corresponding to the current block in the lower layer is defined and used as the term corresponding lower layer block.

즉, 가용하지 않은 병합 후보 블록으로부터 유도될 수 없는 후보 움직임 예측 정보 대신에 하위 계층 블록의 병합 후보 블록에서 유도되는 움직임 예측 정보를 후보 움직임 예측 정보로 사용할 수 있다.That is, the motion prediction information derived from the merge candidate block of the lower layer block may be used as the candidate motion prediction information instead of the candidate motion prediction information that cannot be derived from the unusable merge candidate block.

예를 들어, 도 10에서 상위 계층 블록 PU1-0(1000)의 병합 후보 블록은 모두 동일 MER이 아닌 이미 부호화 또는 복호화된 MER에 포함되는 블록일 수 있다. 따라서, 블록 PU1-0(1000)의 병합 후보 블록들은 후보 움직임 예측 정보를 유도하기 위해 사용될 수 있다. 이러한 경우 하위 계층 블록의 병합 후보 블록으로 후보 움직임 예측 정보를 유도하지 않을 수 있다.For example, in FIG. 10, the merge candidate blocks of the upper layer blocks PU1-0 (1000) may be blocks included in already encoded or decoded MERs rather than the same MERs. Thus, the merge candidate blocks of block PU1-1000 can be used to derive candidate motion prediction information. In this case, candidate motion prediction information may not be derived to the merge candidate block of the lower layer block.

반면에 상위 계층 블록 PU1-1(1010)의 경우, A0 병합 후보 블록 및 A1 병합 후보 블록이 동일 MER 안에 존재한다. 이러한 경우, A0 병합 후보 블록 및 A1 병합 후보 블록으로부터 후보 움직임 예측 정보를 유도하지 못할 수 있다. 따라서, A0 병합 후보 블록, A1 병합 후보 블록은 비가용한 블록으로 판단될 수 있다. 이러한 경우, 상위 계층의 블록 PU1-1(1010)의 대응 하위 계층 블록인 블록 PU0-1(1015)의 병합 후보 블록인 A0’ 병합 후보 블록 및 A1’ 병합 후보 블록을 블록 PU1-1(1010)의 A0 병합 후보 블록, A1 병합 후보 블록 대신에 후보 움직임 예측 정보를 유도하기 위한 블록으로 사용할 수 있다.On the other hand, in the upper layer block PU1-1 1010, the A0 merge candidate block and the A1 merge candidate block exist in the same MER. In this case, candidate motion prediction information may not be derived from the A0 merge candidate block and the A1 merge candidate block. Therefore, the A0 merge candidate block and the A1 merge candidate block may be determined to be unavailable blocks. In this case, the merge candidate blocks A0 'and M1' merge candidate blocks, which are the merge candidate blocks of the blocks PU0-1 1015, which are the corresponding lower layer blocks of the block PU1-1 1010 of the upper layer, are block PU1-1 1010. It may be used as a block for deriving candidate motion prediction information instead of the A0 merge candidate block and the A1 merge candidate block.

또 다른 예로, 상위 계층의 블록 PU1-2(1020)의 경우, A0 병합 후보 블록, A1 병합 후보 블록, B0 병합 후보 블록, B1 병합 후보 블록, B2 병합 후보 블록이 동일한 MER에 존재하거나 아직 복호화되지 않은 MER에 존재할 수 있다. 따라서, A0 병합 후보 블록, A1 병합 후보 블록, B0 병합 후보 블록, B1 병합 후보 블록, B2 병합 후보 블록은 후보 움직임 예측 정보를 유도하기 위해 비가용한 블록으로 판단될 수 있다. 이러한 경우, 상위 계층의 블록 PU1-2(1020)의 하위 계층 블록인 블록 PU0-2(1025)의 병합 후보 블록인 A0’병합 후보 블록, A1’ 병합 후보 블록, B0’ 병합 후보 블록, B1’ 병합 후보 블록, B2’ 병합 후보 블록을 블록 PU1-2의 A0 병합 후보 블록, A1 병합 후보 블록, B0 병합 후보 블록, B1 병합 후보 블록, B2 병합 후보 블록 대신에 후보 움직임 예측 정보를 유도하기 위한 병합 후보 블록으로 사용할 수 있다. As another example, in the case of the block PU1-2 1020 of the upper layer, the A0 merge candidate block, the A1 merge candidate block, the B0 merge candidate block, the B1 merge candidate block, and the B2 merge candidate block are present in the same MER or are not yet decoded. May be present in a non-MER. Accordingly, the A0 merge candidate block, the A1 merge candidate block, the B0 merge candidate block, the B1 merge candidate block, and the B2 merge candidate block may be determined to be unavailable blocks for deriving candidate motion prediction information. In this case, A0 'merge candidate block, A1' merge candidate block, B0 'merge candidate block, and B1', which are merge candidate blocks of block PU0-2 1025, which are lower layer blocks of block PU1-2 1020 of the upper layer. Merge candidate block, B2 'merge candidate block to merge candidate motion prediction information instead of A0 merge candidate block, A1 merge candidate block, B0 merge candidate block, B1 merge candidate block, and B2 merge candidate block in block PU1-2 Can be used as a candidate block.

만약 상위 계층 영상의 해상도가 하위 계층 영상의 해상도와 차이가 있을 경우에는 각 해상도를 이용한 비율을 기반으로 움직임 예측 정보를 보정한 이후에 참조할 수 있다.If the resolution of the upper layer image is different from the resolution of the lower layer image, the motion prediction information may be referred to after correction of the motion prediction information based on the ratio using each resolution.

도 11은 본 발명의 실시예에 따른 병합 움직임 예측 방법을 나타낸 개념도이다.11 is a conceptual diagram illustrating a merge motion prediction method according to an embodiment of the present invention.

도 11에서는 병합 움직임 예측을 수행시 병합 후보 블록 중 일부의 병합 후보 블록이 가용하지 않은 경우, SHVC에서는 현재 블록의 대응 하위 계층 블록의 움직임 정보를 후보 예측 움직임 정보로 사용할 수 있다.In FIG. 11, when some merge candidate blocks of merge candidate blocks are not available when performing merge motion prediction, in SHVC, motion information of a corresponding lower layer block of the current block may be used as candidate prediction motion information.

예를 들어, 도 11에서 상위 계층 블록 PU1-1(1110)의 경우, A0 병합 후보 블록 및 A1 병합 후보 블록이 동일 MER 안에 존재한다. 이러한 경우, A0 병합 후보 블록 및 A1 병합 후보 블록으로부터 후보 움직임 예측 정보를 유도하지 못할 수 있다. 따라서, A0 병합 후보 블록, A1 병합 후보 블록은 비가용한 블록으로 판단될 수 있다. 이러한 경우, 상위 계층의 블록 PU1-1(1110)의 대응 하위 계층 블록인 블록 PU0-1(1115)의 움직임 예측 정보를 후보 움직임 예측 정보로 사용할 수 있다.For example, in the upper layer block PU1-1 1110 in FIG. 11, the A0 merge candidate block and the A1 merge candidate block exist in the same MER. In this case, candidate motion prediction information may not be derived from the A0 merge candidate block and the A1 merge candidate block. Therefore, the A0 merge candidate block and the A1 merge candidate block may be determined to be unavailable blocks. In this case, the motion prediction information of the block PU0-1 1115, which is the corresponding lower layer block of the block PU1-1 1110 of the upper layer, may be used as the candidate motion prediction information.

A0 병합 후보 블록 및 A1 병합 후보 블록을 기반으로 유도되는 움직임 예측 정보 대신에 현재 블록에 대응되는 하위 계층 블록의 움직임 예측 정보를 사용할 수 있다. 따라서. A0 병합 후보 블록, A1 병합 후보 블록을 기반으로 유도된 움직임 예측 정보 대신에 최종 움직임 후보 리스트에는 대응 하위 계층 블록의 움직임 예측 정보가 후보 움직임 예측 정보로써 추가될 수 있다. 만약 상위 계층 영상의 해상도가 하위 계층 영상의 해상도와 차이가 있을 경우에는 각 해상도를 이용한 비율을 기반으로 움직임 예측 정보를 보정한 이후에 참조할 수 있다. Instead of the motion prediction information derived based on the A0 merge candidate block and the A1 merge candidate block, the motion prediction information of the lower layer block corresponding to the current block may be used. therefore. Instead of the motion prediction information derived based on the A0 merge candidate block and the A1 merge candidate block, motion prediction information of the corresponding lower layer block may be added as candidate motion prediction information to the final motion candidate list. If the resolution of the upper layer image is different from the resolution of the lower layer image, the motion prediction information may be referred to after correction of the motion prediction information based on the ratio using each resolution.

또 다른 예로, 상위 계층의 블록 PU1-2(1120)의 경우, A0 병합 후보 블록, A1 병합 후보 블록, B0 병합 후보 블록, B1 병합 후보 블록, B2 병합 후보 블록이 동일한 MER에 존재하거나 아직 복호화되지 않은 MER에 존재할 수 있다. 따라서, A0 병합 후보 블록, A1 병합 후보 블록, B0 병합 후보 블록, B1 병합 후보 블록, B2 병합 후보 블록은 후보 움직임 예측 정보를 유도하기 위해 비가용한 블록으로 판단될 수 있다. 이러한 경우, 상위 계층의 블록 PU1-2(1120)의 하위 계층 블록인 블록 PU0-2(1125)의 움직임 예측 정보를 후보 움직임 예측 정보로써 사용하여 상위 계층 블록 PU1-2(1120)의 병합 움직임 예측을 수행할 수 있다.As another example, in the case of the block PU1-2 1120 of the upper layer, the A0 merge candidate block, the A1 merge candidate block, the B0 merge candidate block, the B1 merge candidate block, and the B2 merge candidate block are present in the same MER or are not yet decoded. May be present in a non-MER. Accordingly, the A0 merge candidate block, the A1 merge candidate block, the B0 merge candidate block, the B1 merge candidate block, and the B2 merge candidate block may be determined to be unavailable blocks for deriving candidate motion prediction information. In this case, the merge motion prediction of the higher layer block PU1-2 1120 is performed using the motion prediction information of the block PU0-2 1125, which is the lower layer block of the block PU1-2 1120 of the higher layer, as the candidate motion prediction information. Can be performed.

도 12는 본 발명의 실시예에 따른 병합 움직임 예측 방법을 나타낸 개념도이다.12 is a conceptual diagram illustrating a merge motion prediction method according to an embodiment of the present invention.

도 12에서는 상위 계층의 블록에서 PME를 기반으로 움직임 예측을 수행시 비가용이라고 판단된 병합 후보 블록이 존재하는 경우, 대응 하위 계층 블록으로부터 움직임 정보를 참조하는 방법에 대해 개시한다. 12 illustrates a method of referring to motion information from a corresponding lower layer block when there is a merge candidate block determined to be unavailable when performing motion prediction based on a PME in a block of an upper layer.

도 12를 참조하면, 전술한 도 10 및 도 11의 방법과 다르게 현재 블록의 병합 후보 블록 중 어느 하나의 병합 후보 블록이라도 비가용으로 설정된다면, 현재 블록의 후보 예측 움직임 정보를 대응 하위 계층 블록의 움직임 예측 정보로부터 유도할 수 있다.Referring to FIG. 12, unlike any of the methods of FIGS. 10 and 11 described above, if any merge candidate block of the merge candidate blocks of the current block is set to be unavailable, the candidate prediction motion information of the current block may be set to the corresponding lower layer block. It can be derived from the motion prediction information.

도 12에서 현재 블록이 PU1-1(1210)의 경우, 병합 후보 블록 중 A0 병합 후보 블록 및 A1 병합 후보 블록은 비가용인 블록으로 판단되고, 나머지 병합 후보 블록은 모두 비가용이 아닌(Non-unavailable) 블록으로 판단될 수 있다. In FIG. 12, when the current block is PU1-1 1210, A0 merge candidate blocks and A1 merge candidate blocks are determined to be unusable blocks among the merge candidate blocks, and all remaining merge candidate blocks are non-unavailable. It may be determined as a block.

본 발명의 실시예에 따르면 A0 병합 후보 블록 및 A1 병합 후보 블록이 비가용이므로, 현재 블록의 병합 후보 블록으로부터 후보 움직임 예측 정보를 유도하지 않고 대응 하위 계층 블록인 PU0-1(1215)로부터 움직임 예측 정보를 기반으로 현재 블록에 대한 움직임 예측을 수행할 수 있다. 만약 상위 계층 영상의 해상도가 하위 계층 영상의 해상도와 차이가 있을 경우에는 각 해상도를 이용한 비율을 기반으로 움직임 정보를 보정한 이후에 참조할 수 있다.According to an embodiment of the present invention, since the A0 merge candidate block and the A1 merge candidate block are not available, the motion prediction is performed from the corresponding lower layer block PU0-1 1215 without deriving candidate motion prediction information from the merge candidate block of the current block. Based on the information, motion prediction for the current block can be performed. If the resolution of the upper layer image is different from the resolution of the lower layer image, it may be referred to after correcting motion information based on the ratio using each resolution.

도 10 내지 도 12에서 전술한 방법들은 모두 블록 크기 혹은 CU 깊이 등에 따라 적용 범위를 다르게 설정할 수 있다. 이렇게 적용 범위를 결정하는 변수(즉, 크기 혹은 깊이 정보)는 부호화기 및 복호화기가 미리 정해진 값을 사용하도록 설정할 수도 있고, 프로 파일 또는 레벨에 따라 정해진 값을 사용하도록 할 수 도 있고, 부호화기가 변수값을 비트스트림에 기재하면 복호화기는 비트스트림으로부터 이 값을 구하여 사용할 수도 있다. CU 깊이에 따라 적용 범위를 달리하는 할 때는 아래의 표 1에 예시한 바와 같이, 주어진 깊이 이상의 깊이에만 적용하는 방식(방법 A), 주어진 깊이 이하에만 적용하는 방식(방법 B), 주어진 깊이에만 적용하는 방식(방법 C)을 사용할 수 있다. The methods described above with reference to FIGS. 10 to 12 may all set an application range differently according to a block size or a CU depth. The variable that determines the scope of application (ie, size or depth information) may be set so that the encoder and decoder use a predetermined value, or may cause the encoder to use a predetermined value according to a profile or level, and the encoder In the bitstream, the decoder may obtain and use this value from the bitstream. When varying the application range according to the CU depth, as shown in Table 1 below, apply only to a depth above a given depth (method A), apply only to a given depth below (method B), and apply only to a given depth. Can be used (method C).

표 1에서는 주어진 CU 깊이가 2인 경우, 본 발명의 방법들을 적용하는 범위 결정 방식을 예시적으로 나타낸다. Table 1 exemplarily shows a range determination method for applying the methods of the present invention when a given CU depth is two.

<표 1>TABLE 1

Figure 112016063634395-pat00001
Figure 112016063634395-pat00001

표 1에서 ‘O’은 해당 깊이에 본 발명의 실시예에 따른 병합 움직임 예측 방법이 사용됨을 지시하고 ‘X’는 해당 깊이에서 본 발명의 실시예에 따른 병합 움직임 예측 방법이 적용되지 않음을 지시한다.In Table 1, 'O' indicates that the merge motion prediction method according to the embodiment of the present invention is used at the corresponding depth, and 'X' indicates that the merge motion prediction method according to the embodiment of the present invention is not applied at the corresponding depth. do.

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

또한 상술한 방법은 휘도 블록의 크기에 따라 색차 블록에 다르게 적용할 수 있으며, 또한, 휘도 신호 영상 및 색차 영상에 다르게 적용할 수 있다. In addition, the above-described method may be differently applied to the chrominance block according to the size of the luminance block, and may be differently applied to the luminance signal image and the chrominance image.

아래의 표 2는 휘도 블록의 크기 및 색차 블록의 크기에 따라 병합 움직임 예측 방법이 적용될지 여부를 나타내는 표이다. Table 2 below shows whether the merge motion prediction method is applied according to the size of the luminance block and the size of the chrominance block.

<표 2>TABLE 2

Figure 112016063634395-pat00002
Figure 112016063634395-pat00002

표 2에서 방법 “사 1”을 살펴보면, 휘도 블록의 크기가 8(8x8, 8x4, 2x8 등)인 경우이고, 그리고 색차 블록의 크기가 4(4x4, 4x2, 2x4)인 경우에 본 발명의 실시예에 따른 병합 움직임 예측 방법을 휘도 신호 및 색차 신호 및 수평 신호 및 수직 신호에 적용할 수 있다.Referring to the method “I 1” in Table 2, when the size of the luminance block is 8 (8x8, 8x4, 2x8, etc.), and the size of the color difference block is 4 (4x4, 4x2, 2x4), the present invention is implemented. The merge motion prediction method according to an example may be applied to a luminance signal, a color difference signal, a horizontal signal, and a vertical signal.

또 다른 예로 변형된 방법들 중에서 방법 “파 2”을 살펴보면, 휘도 블록의 크기가 16(16x16, 8x16, 4x16 등)인 경우이고, 그리고 색차 블록의 크기가 4(4x4, 4x2, 2x4)인 경우에 본 발명의 실시예에 따른 병합 움직임 예측 방법을 휘도 신호 및 색차 신호 및 수평 신호에 적용하고 수직 신호에는 적용하지 않을 수 있다.As another example, the method “wave 2” of the modified methods is a case where the size of the luminance block is 16 (16x16, 8x16, 4x16, etc.), and the size of the color difference block is 4 (4x4, 4x2, 2x4). The merge motion prediction method according to the embodiment of the present invention may be applied to the luminance signal, the color difference signal, and the horizontal signal, but not to the vertical signal.

또 다른 변형된 방법들로 휘도 신호에만 본 발명의 실시예에 따른 병합 움직임 예측 방법이 적용되고 색차 신호에는 적용되지 않을 수 있다. 반대로 색차 신호에만 본 발명의 실시예에 따른 병합 움직임 예측 방법이 적용되고 휘도 신호에는 적용되지 않을 수 있다.In another modified method, the merge motion prediction method according to the embodiment of the present invention may be applied only to the luminance signal and not to the chrominance signal. On the contrary, the merge motion prediction method according to the embodiment of the present invention may be applied only to the color difference signal and not to the luminance signal.

이상의 도 1 내지 도 12에서 개시한 병합 움직임 예측 방법을 사용함으로써 기존 화면 간 예측 방법보다 더 나은 예측 효율을 얻을 수 있을 뿐만 아니라 부호화 및 복호화에 걸리는 인코딩 타임 및 디코딩 타임 측면에서도 더 나은 효율을 가질 수 있다. 또한 이러한 화면 내 예측 방법을 사용함으로서 프로파일에 따라 더 나은 예측 효율을 가져야 할 경우 추가적인 화면 내 예측 모드로 사용할 수 있음으로서 코덱이 사용되는 구현 장치에 따라 서로 다른 화면 내 예측 방법을 사용함으로서 구현의 자유도를 높힐 수 있다. 또한 이상에서 설명한 영상 부호화 및 영상 복호화 방법은 도 1 및 도 2에서 전술한 각 영상 부호화기 및 영상 복호화기 장치의 각 구성부에서 구현될 수 있다.By using the merge motion prediction method described above with reference to FIGS. 1 to 12, not only a better prediction efficiency can be obtained than the existing inter prediction method, but also a better efficiency in terms of encoding time and decoding time required for encoding and decoding. have. In addition, by using this intra-screen prediction method, if it is necessary to have better prediction efficiency according to the profile, it can be used as an additional intra-screen prediction mode. By using different intra-screen prediction methods according to the implementation device where the codec is used, the degree of freedom of implementation Can raise. In addition, the above-described image encoding and image decoding method may be implemented in each component of each of the image encoder and the image decoder apparatus described above with reference to FIGS. 1 and 2.

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described with reference to the embodiments above, those skilled in the art will understand that the present invention can be variously modified and changed without departing from the spirit and scope of the invention as set forth in the claims below. Could be.

Claims (20)

복수 계층을 지원하는 영상의 병렬 병합 움직임 예측(PME; Parallel Merge Estimation) 방법에 있어서,
상위 계층의 병렬 병합 움직임 예측 범위(MER; Merge Estimation Region) 내에 존재하는 부호화 대상 블록 주변에 가용하지 않은 병렬 병합 후보 블록이 존재하는지 여부를 판단하는 단계;
상기 병렬 병합 움직임 예측 범위 내에 존재하는 현재 블록에 상기 가용하지 않은 병렬 병합 후보 블록이 존재하는 경우, 상기 가용하지 않은 병렬 병합 후보 블록의 대응 하위 계층 블록을 기반으로 상기 병렬 병합 움직임 예측을 위한 후보 움직임 예측 정보를 유도하는 단계; 및
대응 하위 계층 블록으로부터 유도된 후보 움직임 예측 정보와 상기 현재 블록 주변에 가용한 병렬 병합 후보 블록의 후보 움직임 예측 정보 중에서 적어도 하나의 후보 움직임 예측 정보를 이용하여 상기 현재 블록에 대한 상기 병렬 병합 움직임 예측을 수행하는 단계를 포함하되,
상기 가용하지 않은 병렬 병합 후보 블록은 상기 현재 블록과 동일한 병렬 병합 움직임 예측 범위에 포함되는 병렬 병합 후보 블록, 또는 복호화되거나 부호화되지 않은 병렬 병합 후보 블록을 포함하는 것을 특징으로 하는 병렬 병합 움직임 예측 방법.
In a parallel merge motion estimation (PME) method of an image supporting multiple layers,
Determining whether there is a parallel merge candidate block that is not available around an encoding target block existing in a parallel merge motion prediction range (MER) of an upper layer;
If the unavailable parallel merge candidate block exists in the current block existing within the parallel merge motion prediction range, candidate motion for the parallel merge motion prediction based on a corresponding lower layer block of the unavailable parallel merge candidate block. Deriving prediction information; And
The parallel merge motion prediction for the current block is performed using at least one candidate motion prediction information from candidate motion prediction information derived from a corresponding lower layer block and candidate motion prediction information of parallel merge candidate blocks available around the current block. Include steps to be performed,
And wherein the unavailable parallel merge candidate block includes a parallel merge candidate block included in the same parallel merge motion prediction range as the current block, or a decoded or uncoded parallel merge candidate block.
제1항에 있어서,
상기 대응 하위 계층 블록은 상기 현재 블록이 포함된 계층보다 하위 계층에 존재하는 상기 현재 블록의 콜로케이트 블록인 병렬 병합 움직임 예측 방법.
The method of claim 1,
And the corresponding lower layer block is a collocated block of the current block existing in a lower layer than the layer including the current block.
제1항에 있어서,
상기 현재 블록의 크기 및 상기 현재 블록을 포함하는 부호화 블록의 깊이 정보를 기반으로 상기 현재 블록에 상기 병렬 병합 움직임 예측을 수행할지 여부를 결정하는 단계를 더 포함하는 병렬 병합 움직임 예측 방법.
The method of claim 1,
And determining whether to perform the parallel merge motion prediction on the current block based on the size of the current block and the depth information of the coding block including the current block.
제3항에 있어서,
상기 현재 블록은 향상 계층(enhanced layer)에 포함되고, 상기 대응 하위 계층 블록은 기본 계층(base layer)에 포함되는 병렬 병합 움직임 예측 방법.
The method of claim 3,
The current block is included in an enhanced layer, and the corresponding lower layer block is included in a base layer.
제1항에 있어서,
상기 후보 움직임 예측 정보는 상기 대응 하위 계층 블록의 움직임 예측 정보인 병렬 병합 움직임 예측 방법.
The method of claim 1,
And the candidate motion prediction information is motion prediction information of the corresponding lower layer block.
제1항에 있어서,
상기 대응 하위 계층 블록은 상기 현재 블록 주변의 가용하지 않은 병렬 병합 후보 블록이 포함된 계층보다 하위 계층에 존재하는 상기 현재 블록 주변의 가용하지 않은 병렬 병합 후보 블록의 콜로케이트 블록인 병렬 병합 움직임 예측 방법.
The method of claim 1,
The corresponding lower layer block is a collocated block of unavailable parallel merge candidate blocks around the current block that exists in a lower layer than a layer including the unavailable parallel merge candidate blocks around the current block. .
제1항에 있어서,
상기 복수 계층을 지원하는 영상의 상기 상위 계층과 상기 하위 계층의 해상도를 비교하여 서로 다른 경우, 상기 상위 계층의 해상도와 상기 하위 계층의 해상도의 비율을 기반으로 상기 하위 계층의 움직임 정보를 보정하고, 상기 보정된 하위 계층의 움직임 정보를 상기 현재 블록에 대한 병렬 병합 움직임 예측을 위한 후보 움직임 예측 정보로 사용하는 것을 특징으로 하는 병렬 병합 움직임 예측 방법.
The method of claim 1,
When the resolutions of the upper layer and the lower layer of the image supporting the plurality of layers are different from each other, the motion information of the lower layer is corrected based on a ratio of the resolution of the upper layer and the resolution of the lower layer, And using the corrected lower layer motion information as candidate motion prediction information for parallel merge motion prediction for the current block.
복수 계층을 지원하는 영상의 복호화 장치에 있어서, 상기 복호화 장치는 움직임 보상부를 포함하고,
상기 움직임 보상부는 상위 계층의 병렬 병합 움직임 예측 범위(MER; Merge Estimation Region) 내에 존재하는 부호화 대상 블록 주변에 가용하지 않은 병렬 병합 후보 블록이 존재하는지 여부를 판단하고,
상기 병렬 병합 움직임 예측 범위 내에 존재하는 현재 블록에 상기 가용하지 않은 병렬 병합 후보 블록이 존재하는 경우, 상기 가용하지 않은 병렬 병합 후보 블록의 대응 하위 계층 블록을 기반으로 상기 병렬 병합 움직임 예측을 위한 후보 움직임 예측 정보를 유도하고,
대응 하위 계층 블록으로부터 유도된 후보 움직임 예측 정보와 상기 현재 블록 주변에 가용한 병렬 병합 후보 블록의 후보 움직임 예측 정보 중에서 적어도 하나의 후보 움직임 예측 정보를 이용하여 상기 현재 블록에 대한 상기 병렬 병합 움직임 예측을 수행하도록 구현되되,
상기 가용하지 않은 병렬 병합 후보 블록은 상기 현재 블록과 동일한 병렬 병합 움직임 예측 범위에 포함되는 병렬 병합 후보 블록, 또는 복호화되거나 부호화되지 않은 병렬 병합 후보 블록을 포함하는 것을 특징으로 하는 복호화 장치.
In the image decoding apparatus supporting multiple layers, the decoding apparatus includes a motion compensation unit,
The motion compensator determines whether an unavailable parallel merge candidate block exists around an encoding target block existing in a parallel merge motion prediction range (MER) of an upper layer,
If the unavailable parallel merge candidate block exists in the current block existing within the parallel merge motion prediction range, candidate motion for the parallel merge motion prediction based on a corresponding lower layer block of the unavailable parallel merge candidate block. Derive prediction information,
The parallel merge motion prediction for the current block is performed using at least one candidate motion prediction information from candidate motion prediction information derived from a corresponding lower layer block and candidate motion prediction information of parallel merge candidate blocks available around the current block. Implemented to do so,
The unavailable parallel merge candidate block includes a parallel merge candidate block included in the same parallel merge motion prediction range as the current block, or a decoded or uncoded parallel merge candidate block.
제8항에 있어서,
상기 대응 하위 계층 블록은 상기 현재 블록이 포함된 계층보다 하위 계층에 존재하는 상기 현재 블록의 콜로케이트 블록인 복호화 장치.
The method of claim 8,
And the corresponding lower layer block is a collocated block of the current block existing in a lower layer than a layer including the current block.
제8항에 있어서, 상기 움직임 보상부는,
상기 현재 블록의 크기 및 상기 현재 블록을 포함하는 부호화 블록의 깊이 정보를 기반으로 상기 현재 블록에 상기 병렬 병합 움직임 예측을 수행할지 여부를 결정하도록 구현되는 복호화 장치.
The method of claim 8, wherein the motion compensation unit,
And determine whether to perform the parallel merge motion prediction on the current block based on the size of the current block and depth information of a coding block including the current block.
제10항에 있어서,
상기 현재 블록은 향상 계층(enhanced layer)에 포함되고, 상기 대응 하위 계층 블록은 기본 계층(base layer)에 포함되는 복호화 장치.
The method of claim 10,
The current block is included in an enhanced layer, and the corresponding lower layer block is included in a base layer.
제8항에 있어서,
상기 후보 움직임 예측 정보는 상기 대응 하위 계층 블록의 움직임 예측 정보인 복호화 장치.
The method of claim 8,
And the candidate motion prediction information is motion prediction information of the corresponding lower layer block.
제8항에 있어서,
상기 대응 하위 계층 블록은 상기 현재 블록 주변의 가용하지 않은 병렬 병합 후보 블록이 포함된 계층보다 하위 계층에 존재하는 상기 현재 블록 주변의 가용하지 않은 병렬 병합 후보 블록의 콜로케이트 블록인 복호화 장치.
The method of claim 8,
And the corresponding lower layer block is a collocated block of unavailable parallel merge candidate blocks around the current block that exists in a lower layer than a layer including an unavailable parallel merge candidate block around the current block.
제8항에 있어서,
상기 움직임 보상부는 상기 복수 계층을 지원하는 영상의 상기 상위 계층과 상기 하위 계층의 해상도를 비교하여 서로 다른 경우, 상기 상위 계층의 해상도와 상기 하위 계층의 해상도의 비율을 기반으로 상기 하위 계층의 움직임 정보를 보정하고, 상기 보정된 하위 계층의 움직임 정보를 상기 현재 블록에 대한 병렬 병합 움직임 예측 정보로 사용하는 것을 특징으로 하는 복호화 장치.
The method of claim 8,
The motion compensator compares the resolutions of the upper layer and the lower layer of the image supporting the plurality of layers, and when they are different, the motion information of the lower layer based on a ratio of the resolution of the upper layer and the resolution of the lower layer. And correct the motion information of the corrected lower layer as parallel merge motion prediction information for the current block.
복수 계층을 지원하는 영상의 병렬 병합 움직임 예측(PME; Parallel Merge Estimation) 방법에 있어서,
상위 계층의 병렬 병합 움직임 예측 범위(MER; Merge Estimation Region) 내에 존재하는 부호화 대상 블록 주변에 가용하지 않은 병렬 병합 후보 블록이 존재하는지 여부를 판단하는 단계; 및
상기 병렬 병합 움직임 예측 범위 내에 존재하는 현재 블록에 상기 가용하지 않은 병렬 병합 후보 블록이 적어도 한 개 이상 존재하는 경우, 대응 하위 계층 블록의 움직임 정보를 상기 현재 블록에 대한 움직임 예측 정보로 적용하는 단계를 포함하되,
상기 가용하지 않은 병렬 병합 후보 블록은 상기 현재 블록과 동일한 병렬 병합 움직임 예측 범위에 포함되는 병렬 병합 후보 블록, 또는 복호화되거나 부호화되지 않은 병렬 병합 후보 블록을 포함하는 것을 특징으로 하는 병렬 병합 움직임 예측 방법.
In a parallel merge motion estimation (PME) method of an image supporting multiple layers,
Determining whether there is a parallel merge candidate block that is not available around an encoding target block existing in a parallel merge motion prediction range (MER) of an upper layer; And
If at least one non-available parallel merge candidate block exists in a current block existing within the parallel merge motion prediction range, applying motion information of a corresponding lower layer block as motion prediction information for the current block; Including,
And wherein the unavailable parallel merge candidate block includes a parallel merge candidate block included in the same parallel merge motion prediction range as the current block, or a decoded or uncoded parallel merge candidate block.
제15항에 있어서,
상기 대응 하위 계층 블록은 상기 현재 블록이 포함된 계층보다 하위 계층에 존재하는 상기 현재 블록의 콜로케이트 블록인 병렬 병합 움직임 예측 방법.
The method of claim 15,
And the corresponding lower layer block is a collocated block of the current block existing in a lower layer than the layer including the current block.
제15항에 있어서,
상기 복수 계층을 지원하는 영상의 상기 상위 계층과 상기 하위 계층의 해상도를 비교하여 서로 다른 경우, 상기 상위 계층의 해상도와 상기 하위 계층의 해상도의 비율을 기반으로 상기 하위 계층의 움직임 정보를 보정하고, 상기 보정된 하위 계층의 움직임 정보를 상기 현재 블록에 대한 움직임 예측 정보로 사용하는 것을 특징으로 하는 병렬 병합 움직임 예측 방법.
The method of claim 15,
When the resolutions of the upper layer and the lower layer of the image supporting the plurality of layers are different from each other, the motion information of the lower layer is corrected based on a ratio of the resolution of the upper layer and the resolution of the lower layer, And using the corrected lower layer motion information as motion prediction information for the current block.
복수 계층을 지원하는 영상의 복호화 장치에 있어서, 상기 복호화 장치는 움직임 보상부를 포함하고,
상기 움직임 보상부는 상위 계층의 병렬 병합 움직임 예측 범위(MER; Merge Estimation Region) 내에 존재하는 부호화 대상 블록 주변에 가용하지 않은 병렬 병합 후보 블록이 존재하는지 여부를 판단하고,
상기 병렬 병합 움직임 예측 범위 내에 존재하는 현재 블록에 상기 가용하지 않은 병렬 병합 후보 블록이 적어도 한 개 이상 존재하는 경우, 대응 하위 계층 블록의 움직임 정보를 상기 현재 블록에 대한 움직임 예측 정보로 적용하도록 구현되는 병렬 병합 움직임 예측 장치를 포함하되,
상기 가용하지 않은 병렬 병합 후보 블록은 상기 현재 블록과 동일한 병렬 병합 움직임 예측 범위에 포함되는 병렬 병합 후보 블록, 또는 복호화되거나 부호화되지 않은 병렬 병합 후보 블록을 포함하는 것을 특징으로 하는 복호화 장치.
In the image decoding apparatus supporting multiple layers, the decoding apparatus includes a motion compensation unit,
The motion compensator determines whether an unavailable parallel merge candidate block exists around an encoding target block existing in a parallel merge motion prediction range (MER) of an upper layer,
When at least one non-available parallel merge candidate block exists in a current block existing within the parallel merge motion prediction range, the motion information of a corresponding lower layer block is applied to the motion prediction information for the current block. Including parallel merging motion prediction devices,
The unavailable parallel merge candidate block includes a parallel merge candidate block included in the same parallel merge motion prediction range as the current block, or a decoded or uncoded parallel merge candidate block.
제18항에 있어서,
상기 대응 하위 계층 블록은 상기 현재 블록이 포함된 계층보다 하위 계층에 존재하는 상기 현재 블록의 콜로케이트 블록인 것을 특징으로 하는 복호화 장치.
The method of claim 18,
And the corresponding lower layer block is a collocated block of the current block existing in a lower layer than a layer including the current block.
제18항에 있어서,
상기 움직임 보상부는 상기 복수 계층을 지원하는 영상의 상기 상위 계층과 상기 하위 계층의 해상도를 비교하여 서로 다른 경우, 상기 상위 계층의 해상도와 상기 하위 계층의 해상도의 비율을 기반으로 상기 하위 계층의 움직임 정보를 보정하고, 상기 보정된 하위 계층의 움직임 정보를 상기 현재 블록에 대한 움직임 예측 정보로 사용하는 것을 특징으로 하는 복호화 장치.
The method of claim 18,
The motion compensator compares the resolutions of the upper layer and the lower layer of the image supporting the plurality of layers, and when they are different, the motion information of the lower layer based on a ratio of the resolution of the upper layer and the resolution of the lower layer. And correct the motion information of the corrected lower layer as motion prediction information for the current block.
KR1020160082876A 2012-11-27 2016-06-30 Method and apparatus for encoding and decoding based on merge KR102045983B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020120135658 2012-11-27
KR20120135658 2012-11-27

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020130145503A Division KR101638875B1 (en) 2012-11-27 2013-11-27 Method and apparatus for encoding and decoding based on merge

Publications (2)

Publication Number Publication Date
KR20160085237A KR20160085237A (en) 2016-07-15
KR102045983B1 true KR102045983B1 (en) 2019-11-18

Family

ID=51129665

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020130145503A KR101638875B1 (en) 2012-11-27 2013-11-27 Method and apparatus for encoding and decoding based on merge
KR1020160082876A KR102045983B1 (en) 2012-11-27 2016-06-30 Method and apparatus for encoding and decoding based on merge

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020130145503A KR101638875B1 (en) 2012-11-27 2013-11-27 Method and apparatus for encoding and decoding based on merge

Country Status (1)

Country Link
KR (2) KR101638875B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101638875B1 (en) * 2012-11-27 2016-07-22 경희대학교 산학협력단 Method and apparatus for encoding and decoding based on merge
KR102471208B1 (en) 2016-09-20 2022-11-25 주식회사 케이티 Method and apparatus for processing a video signal
CN116896631A (en) * 2016-11-29 2023-10-17 韩国电子通信研究院 Image encoding/decoding method and apparatus, and recording medium storing bit stream
US11025943B2 (en) * 2017-10-20 2021-06-01 Kt Corporation Video signal processing method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012191513A (en) 2011-03-11 2012-10-04 Sony Corp Image processing apparatus and method
KR101197176B1 (en) 2011-09-23 2012-11-05 주식회사 케이티 Methods of derivation of merge candidate block and apparatuses for using the same
KR101205017B1 (en) * 2011-11-23 2012-11-26 (주)휴맥스 Methods for encoding/decoding of video using common merging candidate set of asymmetric partitions
KR101638875B1 (en) * 2012-11-27 2016-07-22 경희대학교 산학협력단 Method and apparatus for encoding and decoding based on merge

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100944333B1 (en) * 2007-07-30 2010-03-02 한국과학기술원 A fast inter-layer prediction mode decision method in scalable video coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012191513A (en) 2011-03-11 2012-10-04 Sony Corp Image processing apparatus and method
KR101197176B1 (en) 2011-09-23 2012-11-05 주식회사 케이티 Methods of derivation of merge candidate block and apparatuses for using the same
KR101205017B1 (en) * 2011-11-23 2012-11-26 (주)휴맥스 Methods for encoding/decoding of video using common merging candidate set of asymmetric partitions
KR101638875B1 (en) * 2012-11-27 2016-07-22 경희대학교 산학협력단 Method and apparatus for encoding and decoding based on merge

Also Published As

Publication number Publication date
KR20160085237A (en) 2016-07-15
KR101638875B1 (en) 2016-07-22
KR20140077825A (en) 2014-06-24

Similar Documents

Publication Publication Date Title
US11388393B2 (en) Method for encoding video information and method for decoding video information, and apparatus using same
KR102585969B1 (en) Method And Apparatus For Video Encoding And Decoding
US10334258B2 (en) Scalable video coding method and apparatus using inter prediction mode
KR101918873B1 (en) Harmonization of cross-component prediction and adaptive color transform in video coding
JP2020205627A (en) Inter-prediction method and device thereof
KR20150105372A (en) Scalable hevc device and method generating adapted motion vector candidate lists for motion prediction in the enhancement layer
KR20140016823A (en) Video decoding method and apparatus using the same
KR102045983B1 (en) Method and apparatus for encoding and decoding based on merge
CN112135135A (en) Video decoding method, video decoding device, computer equipment and storage medium
KR101561461B1 (en) Video encoding and decoding method and apparatus using the same
JP6528635B2 (en) Moving picture coding apparatus, moving picture coding method, and computer program for moving picture coding
KR102507024B1 (en) Method and apparatus for encoding and decoding digital image/video material
KR20130085088A (en) Method for fast mode decision in scalable video coding and apparatus thereof
KR102400485B1 (en) Video decoding method and apparatus using the same
KR102325977B1 (en) Video decoding method and apparatus using the same
KR20150112470A (en) Video encoding and decoding method and apparatus using the same

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant