KR20140099430A - 영상 복호화 방법 및 장치 - Google Patents
영상 복호화 방법 및 장치 Download PDFInfo
- Publication number
- KR20140099430A KR20140099430A KR1020140087709A KR20140087709A KR20140099430A KR 20140099430 A KR20140099430 A KR 20140099430A KR 1020140087709 A KR1020140087709 A KR 1020140087709A KR 20140087709 A KR20140087709 A KR 20140087709A KR 20140099430 A KR20140099430 A KR 20140099430A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- prediction
- merging candidate
- candidate
- blocks
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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/436—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
영상 복호화 방법 및 장치가 개시되어 있다. 본 발명에 따른 영상 복호화 방법은 병렬적 머지 프로세싱이 가능한 레벨을 나타내는 병렬 머지 레벨 정보에 기반하여, 부호화 블록을 기준으로 공간적 머지 후보 및 시간적 머지 후보 중 적어도 하나의 머지 후보를 유도하는 단계 및 상기 머지 후보를 기초로 상기 부호화 블록 내 예측 블록에 대한 단일 머지 후보 리스트를 생성하는 단계를 포함한다.
Description
본 발명은 영상 처리 방법 및 장치에 관한 것으로 더욱 상세하게는 화면 간 예측 방법 및 이러한 방법을 사용하는 장치에 관한 것이다.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 응용 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 데이터량이 증가하기 때문에 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 데이터를 전송하거나 기존의 저장 매체를 이용해 저장하는 경우, 전송 비용과 저장 비용이 증가하게 된다. 영상 데이터가 고해상도, 고품질화 됨에 따라 발생하는 이러한 문제들을 해결하기 위해서는 고효율의 영상 압축 기술들이 활용될 수 있다.
영상 압축 기술로 현재 픽쳐의 이전 또는 이후 픽쳐로부터 현재 픽쳐에 포함된 화소값을 예측하는 화면 간 예측 기술, 현재 픽쳐 내의 화소 정보를 이용하여 현재 픽쳐에 포함된 화소값을 예측하는 화면 내 예측 기술, 출현 빈도가 높은 값에 짧은 부호를 할당하고 출현 빈도가 낮은 값에 긴 부호를 할당하는 엔트로피 부호화 기술 등 다양한 기술이 존재하고 이러한 영상 압축 기술을 이용해 영상 데이터를 효과적으로 압축하여 전송 또는 저장할 수 있다.
본 발명의 목적은 단일 후보 리스트를 생성하여 예측 블록에 대한 화면 간 예측을 병렬적으로 수행하는 방법을 제공하는 것이다.
또한, 본 발명의 또 다른 목적은 단일 후보 리스트를 생성하여 예측 블록에 대한 화면 간 예측을 병렬적으로 수행하는 장치를 제공하는 것이다.
본 발명의 일 실시예에 따른 영상 복호화 방법은 병렬적 머지 프로세싱이 가능한 레벨을 나타내는 병렬 머지 레벨 정보에 기반하여, 부호화 블록을 기준으로 공간적 머지 후보 및 시간적 머지 후보 중 적어도 하나의 머지 후보를 유도하는 단계 및 상기 머지 후보를 기초로 상기 부호화 블록 내 예측 블록에 대한 단일 머지 후보 리스트를 생성하는 단계를 포함한다.
상술한 바와 같이 본 발명의 실시예에 따른 후보 리스트 공유 방법 및 이러한 방법을 사용하는 장치에 따르면, 하나의 부호화 블록에서 분할된 복수의 예측 블록이 단일 후보 리스트를 공유하여 화면 간 예측을 수행함으로서 화면 간 예측에서 발생되는 복잡도를 낮춘다 또한 복수의 예측 블록에 대해 병렬적으로 화면 간 예측을 수행함으로서 부호화 및 복호화의 처리 속도를 높일 수 있다.
도 1은 본 발명의 일실시예에 따른 영상 부호화 장치의 구성을 나타내는 블록도이다.
도 2는 본 발명의 또 다른 실시예에 따른 영상 복호화 장치의 구성을 나타내는 블록도이다.
도 3은 본 발명의 실시예에 따른 머지를 이용한 화면 간 예측 방법을 설명하기 위한 개념도이다.
도 4는 하나의 부호화 블록이 두 개의 예측 블록으로 분할된 경우를 나타낸 개념도이다.
도 5는 본 발명의 실시예에 따른 시간적 머징 후보를 이용한 화면 간 예측과 시간적 머징 후보의 참조 픽쳐 인덱스를 설명하기 위한 개념도이다.
도 6은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 머징 후보와 시간적 머징 후보를 모두 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 7은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 머징 후보만을 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 8은 본 발명의 실시예에 따른 복수의 예측 블록에서 시간적 머징 후보만을 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 9는 AMVP를 이용한 화면 간 예측 모드를 설명하기 위한 개념도이다.
도 10은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 후보 예측 블록과 시간적 후보 예측 블록을 모두 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 11은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 후보 예측 블록만을 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 12는 본 발명의 실시예에 따른 복수의 예측 블록에서 시간적 후보 예측 블록만을 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 13는 본 발명의 실시예에 따른 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 14는 본 발명의 실시예에 따른 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 15는 본 발명의 실시예에 따른 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 16은 본 발명의 실시예에 따른 머징 후보 리스트 생성 방법을 나타낸 개념도이다.
도 17은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 18은 본 발명의 실시예에 따른 머징 후보 리스트 생성 방법을 나타낸 개념도이다.
도 19은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 20은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 21은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 22는 본 발명의 실시예에 따른 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 23은 본 발명의 실시예에 따른 단일 후보 리스트 생성 방법을 사용할 경우 복수의 예측 블록이 병렬적으로 복호화 및 부호화되는 과정을 나타낸 개념도이다.
도 2는 본 발명의 또 다른 실시예에 따른 영상 복호화 장치의 구성을 나타내는 블록도이다.
도 3은 본 발명의 실시예에 따른 머지를 이용한 화면 간 예측 방법을 설명하기 위한 개념도이다.
도 4는 하나의 부호화 블록이 두 개의 예측 블록으로 분할된 경우를 나타낸 개념도이다.
도 5는 본 발명의 실시예에 따른 시간적 머징 후보를 이용한 화면 간 예측과 시간적 머징 후보의 참조 픽쳐 인덱스를 설명하기 위한 개념도이다.
도 6은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 머징 후보와 시간적 머징 후보를 모두 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 7은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 머징 후보만을 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 8은 본 발명의 실시예에 따른 복수의 예측 블록에서 시간적 머징 후보만을 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 9는 AMVP를 이용한 화면 간 예측 모드를 설명하기 위한 개념도이다.
도 10은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 후보 예측 블록과 시간적 후보 예측 블록을 모두 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 11은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 후보 예측 블록만을 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 12는 본 발명의 실시예에 따른 복수의 예측 블록에서 시간적 후보 예측 블록만을 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 13는 본 발명의 실시예에 따른 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 14는 본 발명의 실시예에 따른 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 15는 본 발명의 실시예에 따른 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 16은 본 발명의 실시예에 따른 머징 후보 리스트 생성 방법을 나타낸 개념도이다.
도 17은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 18은 본 발명의 실시예에 따른 머징 후보 리스트 생성 방법을 나타낸 개념도이다.
도 19은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 20은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 21은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 22는 본 발명의 실시예에 따른 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 23은 본 발명의 실시예에 따른 단일 후보 리스트 생성 방법을 사용할 경우 복수의 예측 블록이 병렬적으로 복호화 및 부호화되는 과정을 나타낸 개념도이다.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 아울러, 본 발명에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
도 1은 본 발명의 일실시예에 따른 영상 부호화 장치의 구성을 나타내는 블록도이다.
도 1을 참조하면, 상기 영상 부호화 장치(100)는 움직임 예측부(111), 움직임 보상부(112), 인트라 예측부(120), 스위치(115), 감산기(125), 변환부(130), 양자화부(140), 엔트로피 부호화부(150), 역양자화부(160), 역변환부(170), 가산기(175), 필터부(180) 및 참조 픽쳐 버퍼(190)를 포함한다.
영상 부호화 장치(100)는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 부호화를 수행하고 비트스트림을 출력할 수 있다. 인트라 모드인 경우 스위치(115)가 인트라로 전환되고, 인터 모드인 경우 스위치(115)가 인터로 전환될 수 있다. 영상 부호화 장치(100)는 입력 영상의 입력 블록에 대한 예측 블록을 산출한 후, 입력 블록과 예측 블록의 차분(residual)을 부호화할 수 있다.
인트라 모드는 화면 내 예측 모드, 인터 모드는 화면 간 예측 모드, 인트라 예측부(120)는 화면 내 예측부, 움직임 예측부(111) 및 움직임 보상부(112)는 화면 간 예측부라는 용어로 정의되어 사용될 수 있다.
인트라 모드인 경우, 인트라 예측부(120)는 현재 블록 주변의 이미 부호화된 블록의 픽셀값을 이용하여 공간적 예측을 수행하여 예측 블록을 산출할 수 있다.
인터 모드인 경우, 움직임 예측부(111)는, 움직임 예측 과정에서 참조 픽쳐 버퍼(190)에 저장되어 있는 참조 영상에서 입력 블록과 가장 매치가 잘 되는 영역을 찾아 움직임 벡터를 구할 수 있다. 움직임 보상부(112)는 움직임 벡터를 이용하여 움직임 보상을 수행함으로써 예측 블록을 산출할 수 있다.
감산기(125)는 입력 블록과 산출된 예측 블록의 차분에 의해 잔차 블록(residual block)을 산출할 수 있다. 변환부(130)는 잔차 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 여기서, 변환 계수는 잔차 블록 및/또는 잔차 신호에 대한 변환을 수행함으로써 산출된 계수 값을 의미할 수 있다. 이하, 본 명세서에서는 변환 계수에 양자화가 적용되어 산출된, 양자화된 변환 계수 레벨(transform coefficient level)도 변환 계수로 불릴 수 있다.
양자화부(140)는 입력된 변환 계수를 양자화 파라미터에 따라 양자화하여 양자화된 변환 계수 레벨(quantized transform coefficient level)을 출력할 수 있다.
엔트로피 부호화부(150)는, 양자화부(140)에서 산출된 값들 또는 부호화 과정에서 산출된 부호화 파라미터 값 등을 기초로 엔트로피 부호화를 수행하여 비트스트림(bit stream)을 출력할 수 있다.
엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼(symbol)에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 부호화 대상 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 부호화를 통해서 영상 부호화의 압축 성능이 높아질 수 있다. 엔트로피 부호화부(150)는 엔트로피 부호화를 위해 지수 골룸(exponential golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법을 사용할 수 있다.
도 1의 실시예에 따른 영상 부호화 장치는 인터 예측 부호화, 즉 화면 간 예측 부호화를 수행하므로, 현재 부호화된 영상은 참조 영상으로 사용되기 위해 복호화되어 저장될 필요가 있다. 따라서 양자화된 계수는 역양자화부(160)에서 역양자화되고 역변환부(170)에서 역변환된다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록(Reconstructed Block)이 산출된다.
복원 블록은 필터부(180)를 거치고, 필터부(180)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 필터부(180)를 거친 복원 블록은 참조 픽쳐 버퍼(190)에 저장될 수 있다.
도 2는 본 발명의 또 다른 실시예에 따른 영상 복호화 장치의 구성을 나타내는 블록도이다.
도 2를 참조하면, 상기 영상 복호화 장치(200)는 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 가산기(255), 필터부(260) 및 참조 픽쳐 버퍼(270)를 포함한다.
영상 복호화 장치(200)는 부호화기에서 출력된 비트스트림을 입력 받아 인트라 모드 또는 인터 모드로 복호화를 수행하고 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 인트라 모드인 경우 스위치가 인트라로 전환되고, 인터 모드인 경우 스위치가 인터로 전환될 수 있다. 영상 복호화 장치(200)는 입력 받은 비트스트림으로부터 복원된 잔차 블록(reconstructed residual block)을 얻고 예측 블록을 산출한 후 복원된 잔차 블록과 예측 블록을 더하여 재구성된 블록, 즉 복원 블록을 산출할 수 있다.
엔트로피 복호화부(210)는, 입력된 비트스트림을 확률 분포에 따라 엔트로피 복호화하여, 양자화된 계수(quantized coefficient) 형태의 심볼을 포함한 심볼들을 산출할 수 있다. 엔트로피 복호화 방법은 상술한 엔트로피 부호화 방법과 유사하다.
엔트로피 복호화 방법이 적용되는 경우, 높은 발생 확률을 갖는 심볼에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 각 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 복호화 방법을 통해서 영상 복호화의 압축 성능이 높아질 수 있다.
양자화된 계수는 역양자화부(220)에서 역양자화되고 역변환부(230)에서 역변환되며, 양자화된 계수가 역양자화/역변환 된 결과, 복원된 잔차 블록이 산출될 수 있다.
인트라 모드인 경우, 인트라 예측부(240)는 현재 블록 주변의 이미 복호화된 블록의 픽셀값을 이용하여 공간적 예측을 수행하여 예측 블록을 산출할 수 있다. 인터 모드인 경우, 움직임 보상부(250)는 움직임 벡터 및 참조 픽쳐 버퍼(270)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 산출할 수 있다.
복원된 잔차 블록과 예측 블록은 가산기(255)를 통해 더해지고, 더해진 블록은 필터부(260)를 거칠 수 있다. 필터부(260)는 디블록킹 필터, SAO, ALF 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 필터부(260)는 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 복원 영상은 참조 픽쳐 버퍼(270)에 저장되어 인터 예측에 사용될 수 있다.
부호화/복호화 장치의 예측 성능을 향상시키기 위한 방법에는 보간(interpolation) 영상의 정확도를 높이는 방법과 차신호를 예측하는 방법이 있다. 여기서 차신호란 원본 영상과 예측 영상과의 차이를 나타내는 신호이다. 본 발명에서 “차신호”는 문맥에 따라 “차분 신호”, “잔여 블록” 또는 “차분 블록”으로 대체되어 사용될 수 있으며, 해당 기술분야에서 통상의 지식을 가진 자는 발명의 사상, 본질에 영향을 주지 않는 범위 내에서 이를 구분할 수 있을 것이다.
본 발명의 실시예에서는 영상을 처리하는 단위로 부호화 단위(coding unit, CU), 예측 단위(prediction unit, PU), 변환 단위(transform unit, TU)라는 용어를 사용할 수 있다.
부호화 단위는 부호화/복호화를 수행하는 영상 처리 단위로서 부호화/복호화가 수행되는 휘도 샘플 또는 색차 샘플의 블록 단위 집합인 부호화 블록과 부호화 블록의 샘플들을 부호화 또는 복호화하는데 사용되는 정보를 포함할 수 있다.
예측 단위는 예측을 수행하는 영상 처리 단위로서 예측이 수행되는 휘도 샘플 또는 색차 샘플의 블록 단위 집합인 예측 블록과 예측 블록의 샘플들을 예측하는데 사용되는 정보를 포함할 수 있다. 부호화 블록은 복수의 예측 블록으로 나뉘어 질 수 있다.
변환 단위는 변환을 수행하는 영상 처리 단위로서 변환이 수행되는 휘도 샘플 또는 색차 샘플의 블록 단위 집합인 변환 블록과 변환 블록의 샘플들을 변환하는데 사용되는 정보를 포함할 수 있다. 부호화 블록은 복수의 변환 블록으로 나뉘어 질 수 있다.
이하, 본 발명의 실시예에서는 특별히 구분하여 표시하지 않는 한, 블록과 유닛은 동일한 의미로 해석될 수 있다.
또한 현재 블록(current block)은 현재 예측이 수행되는 예측 블록, 현재 부호화가 수행되는 부호화 블록과 같이 특정한 영상 처리가 수행되는 블록을 지칭할 수 있다. 예를 들어, 하나의 부호화 블록이 두 개의 예측 블록으로 분할된 경우, 분할된 예측 블록 중 예측이 수행되는 블록을 현재 블록이라는 용어로 지칭하여 사용할 수 있다.
본 발명의 실시예에서 후술할 영상 부호화 방법 및 영상 복호화 방법은 도 1 및 도 2에서 전술한 영상 부호화기 및 영상 복호화기에 포함된 각 구성부에서 수행될 수 있다. 구성부의 의미는 하드웨어적인 의미뿐만 아니라 알고리즘을 통해 수행될 수 있는 소프트웨어적인 처리 단위도 포함할 수 있다.
이하, 본 발명의 실시예에서 개시되는 머징 후보 리스트 생성 방법은 영상 처리 방법 중 SKIP 모드 및 화면 간 예측 방법 중 하나인 머지에서 모두 사용할 수 있다. SKIP 모드는 잔차 블록을 생성하지 않고 주변 블록부터 유도된 움직임 예측 정보를 기초로 예측된 블록을 복원 블록으로 출력하는 영상 처리 방법이다. 화면 간 예측 방법 중 하나인 머지는 SKIP 모드와 주변 블록부터 유도된 움직임 예측 정보를 기초로 예측된 블록을 생성한다는 점에서 동일하나 잔차 블록 정보를 추가적으로 부호화 및 복호화하여 잔차 블록과 예측 블록을 합친 복원 블록을 출력하는 영상 처리 방법이다. 출력된 복원 블록에는 디블록킹 필터링 및 샘플 적응적 오프셋 등과 같은 루프내 필터링 방법이 추가로 적용될 수 있다.
도 3은 본 발명의 실시예에 따른 머지를 이용한 화면 간 예측 방법을 설명하기 위한 개념도이다.
도 3을 참조하면, 머지를 이용한 화면 간 예측은 아래와 같은 방법으로 수행될 수 있다.
머지를 이용한 화면 간 예측은 현재 블록의 주변 블록으로부터 머징 후보를 유도하고 유도된 머징 후보를 사용하여 화면 간 예측을 수행하는 방법을 말한다. 머징 후보를 유도하기 위해 사용되는 주변 블록은 현재 블록과 동일한 픽쳐에 존재하면서 현재 블록에 인접한 블록과 현재 블록과 다른 픽쳐에 존재하면서 현재 블록에 collocate된 위치에 존재하는 블록으로 구분될 수 있다.
이하, 본 발명의 실시예에서는 머징 후보를 유도하기 위해 사용되는 주변 블록 중 현재 블록과 동일한 픽쳐에 존재하면서 현재 블록에 인접한 블록을 공간적 머징 후보 블록이라고 정의하고, 공간적 머징 후보 블록으로부터 유도된 움직임 예측 관련 정보를 공간적 머징 후보라는 용어로 정의하여 사용한다. 또한, 머징 후보를 유도하기 위해 사용되는 주변 블록 중 현재 블록과 다른 픽쳐에 존재하면서 현재 블록에 collocate된 위치에 존재하는 블록을 시간적 머징 후보 블록이라고 정의하고, 시간적 머징 후보 블록으로부터 유도된 움직임 예측 관련 정보를 시간적 머징 후보라는 용어로 정의하여 사용한다.
즉, 머지를 이용한 화면 간 예측 방법은 공간적 머징 후보 블록의 움직임 예측 관련 정보(공간적 머징 후보(spatial merging candidate)) 또는 추후 설명할 시간적 머징 후보 블록의 움직임 예측 관련 정보(시간적 머징 후보(temporal merging candidate))를 사용하여 현재 블록을 예측하는 화면 간 예측 방법이다.
움직임 예측 관련 정보로는, 예를 들어, 움직임 벡터(motion vector, mvL0/L1), 참조 픽쳐 인덱스(refIdxL0/L1), 참조 픽쳐 리스트 활용 정보(predFlagL0/L1)이 사용될 수 있다. 도 3(A)는 움직임 벡터(motion vector, mvL0/L1), 참조 픽쳐 인덱스(refIdxL0/L1), 참조 픽쳐 리스트 활용 정보(predFlagL0/L1)에 대해 나타낸다.
움직임 벡터(304)는 방향성 정보로서 화면 간 예측을 수행하는데 있어 예측 블록이 참조 픽쳐에서 특정 위치에 존재하는 픽셀 정보를 유도하기 위해 사용될 수 있다. 예측 블록에서 복수개의 방향성 정보를 이용하여 화면 간 예측이 수행될 경우, mvL0와 mvL1을 사용하여 각각의 방향에 대한 움직임 벡터를 나타낼 수 있다.
참조 픽쳐 인덱스(306)는 예측 블록이 화면 간 예측을 수행하는데 있어 참조하는 픽쳐에 대한 인덱스 정보이다. 복수개의 참조 픽쳐를 사용하여 화면 간 예측을 수행할 경우, 참조 픽쳐 인덱스 또한 refIdxL0 및 refIdxL1를 사용하여 각각의 사용되는 참조 픽쳐를 인덱싱 할 수 있다.
참조 픽쳐 리스트 활용 정보는 참조 픽쳐가 어떠한 참조 픽쳐 리스트(308)에서 유도된 픽쳐인지를 나타낼 수 있다. 예를 들어, i, j, k 픽쳐는 참조 픽쳐 리스트 0(308)에 저장되어 사용될 수 있다. 참조 픽쳐가 저장된 리스트가 2개가 존재하는 경우, predFlagL0과 predFlagL1을 사용하여 참조 픽쳐가 어떠한 참조 픽쳐 리스트에서 유도되었는지에 대한 정보를 나타낼 수 있다.
머지를 이용한 화면 간 예측 방법을 수행하기 위해 우선, 아래의 (1) 단계를 통해 공간적 머징 후보를 획득할 수 있다. 도 3(B)에서는 공간적 머징 후보 및 시간적 머징 후보에 대해 개시한다.
(1) 현재 블록(예측 대상 블록)에 대한 주변 블록으로부터 공간적 머징 후보를 유도한다.
전술한 바와 같이 공간적 머징 후보는 공간적 머징 후보 블록으로부터 유도되는 움직임 예측 관련 정보이다. 공간적 머징 후보 블록은 현재 블록의 위치를 기준으로 산출될 수 있다.
도 3(B)를 참조하면, 기존의 공간적 머징 후보 블록(300, 310, 320, 330, 340)는 예측 블록을 기준으로 산출되었다. 예측 블록의 좌측 상단에 존재하는 픽셀의 위치를 (xP, yP), 예측 블록의 너비를 nPbW, 예측 대상 블록의 높이를 nPbH, MinPbSize는 가장 작은 예측 블록의 크기를 나타낸다고 할 경우, 이하, 본 발명의 실시예에서는 예측 블록의 공간적 머징 후보 블록은 (xP-1, yP+nPbH)에 존재하는 픽셀을 포함하는 블록을 좌측 제1 블록(또는 A0 블록, 300), (xP-1, yP+nPbH-1)에 존재하는 픽셀을 포함하는 블록을 좌측 제2 블록(또는 A1 블록, 310), (xP+nPbW, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제1 블록(또는 B0 블록, 320), (xP+nPbW-1, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제2 블록(B1 블록, 330), (xP-1, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제3 블록(B2 블록, 340)이 될 수 있다. 1 대신에 다른 값, 예를 들어, “MinPbSize”을 사용할 수도 있고 이러한 경우에도 동일한 위치의 블록을 지시할 수 있다. 위의 특정 위치의 블록을 지시하기 위해 사용된 좌표는 임의적인 것으로서 다양한 다른 표현 방법에 의해 동일한 위치의 블록을 지시하는 것도 가능하다.
도 3에서 개시한 공간적 머징 후보 블록(300, 310, 320, 330, 340)의 위치 및 개수와 시간적 머징 후보 블록(360, 370)의 위치 및 개수는 임의적인 것으로서 본 발명의 본질에서 벗어나지 않는 한 공간적 머징 후보 블록의 위치 및 개수와 시간적 머징 후보 블록의 위치 및 개수는 변할 수 있다. 또한, 머징 후보 리스트를 구성 시 우선적으로 스캔되는 머징 후보 블록의 순서도 변할 수 있다. 즉, 이하, 본 발명의 실시예에서 설명하는 후보 예측 움직임 벡터 리스트를 구성 시 사용되는 후보 예측 블록의 위치, 개수, 스캔 순서, 후보 예측 그룹 등은 하나의 실시예로서 본 발명의 본질에서 벗어나지 않는 한 변할 수 있다.
공간적 머징 후보 블록(300, 310, 320, 330, 340)이 가용한지 여부를 판단하여 가용한 공간적 머징 후보 블록에서 공간적 머징 후보를 유도할 수 있다. 공간적 머징 후보에서 공간적 머징 후보가 유도될 수 있는지를 나타내는 정보가 가용성 정보이다. 예를 들어, 공간적 머징 후보 블록이 현재 블록이 속한 슬라이스, 타일(tile), 또는 픽쳐의 외부에 위치하는 경우이거나, 화면 내 예측이 수행된 블록인 경우, 움직임 예측 관련 정보인 공간적 머징 후보가 유도될 수 없고 이러한 경우, 공간적 머징 후보 블록이 가용하지 않은 것으로 판단될 수 있다. 공간적 머징 후보의 가용성 정보를 판단하기 위해서는 여러 가지 판단 방법을 사용할 수 있다. 이러한 실시예에 대해서는 추가적으로 상술한다.
가용한 공간적 머징 후보 블록에 대하여 움직임 예측 관련 정보를 유도하여 현재 블록을 예측하기 위해 사용할 수 있다.
하나의 부호화 블록은 적어도 하나의 예측 블록으로 분할될 수 있다. 즉, 부호화 블록은 하나 이상의 예측 블록을 포함할 수 있다. 부호화 블록에 포함되는 예측 블록이 복수일 경우, 특정한 인덱스 정보를 이용하여 예측 블록을 지시할 수 있다. 예를 들어, 하나의 부호화 블록이 두 개의 예측 블록으로 분할된 경우 하나의 예측 블록의 partition index를 0, 나머지 하나의 예측 블록의 partition index를 1로 설정하여 두 개의 예측 블록을 지시할 수 있다. partition index가 0인 경우 제1 예측 블록, partition index가 1인 경우 제2 예측 블록과 같이 다른 용어를 사용하여 정의할 수도 있다. 하나의 부호화 블록이 추가의 예측 블록으로 더 분할되는 경우 예측 블록을 지시하는 인덱스 값은 증가할 수 있다. 예측 블록을 지칭하기 위해 정의된 용어는 임의적인 것으로서 다르게 사용될 수도 있고 다르게 해석될 수도 있다.
예측 블록의 partition index는 예측 블록이 부호화 및 복호화 같은 영상 처리를 수행시 처리되는 순서를 나타내기 위한 정보로도 사용될 수 있다. 또한, 이하, 본 발명의 실시예에 따른 단일 후보 리스트 공유 방법에서는 병렬적인 머지 프로세싱이 실시 가능한 블록을 새롭게 정의하여 병렬적인 머지 프로세싱에 대해 설명한다. 병렬적인 머지 프로세싱이 실시 가능한 블록은 적어도 하나의 부호화 블록 또는 복수개의 예측 블록을 포함하는 단위로서 정의될 수 있다. 이에 대해서는 추가적으로 후술한다.
만약, 예측 블록 별로 공간적 머징 후보를 산출하는 경우, 하나의 부호화 블록이 두 개의 예측 블록으로 분할되었다면 각각의 블록에 대한 공간적 머징 후보를 각각 산출해야 한다. 이러한 경우, 하나의 부호화 블록 내에 포함되는 하나의 예측 블록에 대한 부호화 또는 복호화가 끝날 때까지 기다려야 다른 예측 블록의 공간적 머징 후보를 산출할 수 있다. 왜냐하면, 일부의 공간적 머징 후보 블록(310)의 경우 다른 예측 블록에 포함되어 해당 예측 블록이 부호화 또는 복호화를 마쳐야 공간적 머징 후보 블록을 유도할 수 있고 또한 일부의 위치의 공간적 머징 후보 블록(300)은 아직 부호화 또는 복호화가 수행되지 않은 경우도 존재하기 때문이다. 즉, 복수개의 예측 단위를 포함하는 부호화 블록의 경우, 각각의 예측 블록에 대한 병렬적인 부호화 또는 복호화가 수행될 수 없다는 문제점이 있다. 도 4에서는 이러한 문제점에 대해 개시한다.
도 4는 하나의 부호화 블록이 두 개의 예측 블록으로 분할된 경우를 나타낸 개념도이다.
도 4를 참조하면, 하나의 부호화 블록이 Nx2N 형태의 제1 예측 블록(400)과 제2 예측 블록(420)으로 분할된다. 제1 예측 블록(400)에 대한 공간적 머징 후보 블록은 도 4(A)와 같이 제1 예측 블록(400)의 위치를 기준으로 산출되고, 제2 예측 블록(420)에 대한 공간적 머징 후보 블록은 도 4(B)와 같이 제2 예측 블록(420)의 위치를 기준으로 산출된다. 시간적 머징 후보 블록은 도시되지는 않았으나 시간적 머징 후보도 각각의 예측 블록의 위치를 기준으로 산출된다.
제1 예측 블록(400)의 공간적 머징 후보 블록의 경우, 제1 예측 블록(400)의 외부에 존재하는 블록으로서 이미 부호화 또는 복호화가 종료된 위치에 존재한다.
하지만, 제2 예측 블록(420)의 공간적 머징 후보 블록 중 A1 블록(430)은 제1 예측 블록(400)의 내부에 존재하는 블록이다. 따라서, 제1 예측 블록(400)의 예측이 수행된 후에 A1 블록(430)의 움직임 예측 관련 정보를 알 수 있다. 즉, 제2 예측 블록(420)의 머징 후보 리스트 생성 과정이 제1 예측 블록(400)의 머징 후보 리스트 생성 후에 수행되게 된다.
도 4(C)는 하나의 부호화 블록이 두 개의 예측 블록으로 분할되었을 경우, 머지 후보 리스트가 생성되는 순서를 나타낸다.
도 4(C)를 참조하면, 부호화 과정 및 복호화 과정에서 하나의 부호화 블록이 복수의 예측 블록으로 분할될 경우, 복수의 예측 블록에 대한 머지 후보 리스트를 생성하는 과정이 병렬적으로 수행될 수 없고 복수의 예측 블록에 대한 머지 후보 리스트를 생성하는 과정이 각각의 예측 블록에 대하여 순차적으로 진행됨을 알 수 있다.
본 발명의 실시예에 따른 후보 리스트 공유 방법 및 이러한 방법을 사용하는 장치에서는 공간적 머징 후보 및 시간적 머징 후보를 유도함에 있어서, 하나의 부호화 블록에서 분할된 복수의 예측 단위가 머징 후보 리스트를 공유하는 방법에 대해 개시한다. 복수의 예측 단위가 공유하는 머징 후보 리스트를 단일 머징 후보 리스트(single merging candidate list)라는 용어로 정의하여 사용할 수 있다.
즉, 본 발명에서는 부호화 블록이 분할되어 부호화 블록 내에 포함되는 여러 개의 예측 블록에 대하여 단일 머징 후보 리스트를 사용하여 복수개의 예측 블록이 머지를 이용한 화면 간 예측을 수행하는 방법에 대해 개시한다. 단일 머징 후보 리스트를 사용함으로서 예측 블록 별로 머징 후보 리스트를 여러 번 생성함으로 인해 발생되는 복잡도를 감소시킬 수 있다. 또한, 머지를 사용하여 화면 간 예측을 수행하는 하나의 부호화 블록 내에서 분할된 복수의 예측 블록들이 병렬적으로 부호화 또는 복호화할 수 있다.
단일 머징 후보 리스트를 생성하는 방법에 대해서는 이하, 본 발명의 실시예에서 추가적으로 개시한다.
(2) 시간적 머징 후보의 참조 픽쳐 인덱스를 설정한다.
시간적 머징 후보는 현재 블록이 포함된 픽쳐와 다른 픽쳐에 존재하는 시간적 머징 후보 블록에서 유도되는 움직임 예측 관련 정보이다. 시간적 머징 후보 블록은 현재 블록의 위치를 기준으로 collocated된 위치에 존재하는 블록을 기준으로 산출된 블록이다. 콜 블록이라는 용어도 시간적 머징 후보 블록과 동일한 의미로 사용될 수 있다.
다시 도 3을 참조하면, 시간적 머징 후보 블록(360, 370)은 예측 블록을 포함하는 픽쳐 내의 픽셀 위치 (xP, yP)를 기준으로 현재 예측 블록의 콜 픽쳐(Colocated Picture)에서 (xP+nPSW, yP+nPSH) 위치의 픽셀을 포함하는 블록이거나 (xP+nPSW, yP+nPSH) 위치의 픽셀을 포함하는 블록이 가용하지 않은 경우, (xP+(nPSW>>1), yP+(nPSH>>1)) 위치의 픽셀을 포함하는 블록이 될 수 있다. 콜 픽쳐에서 (xP+nPSW, yP+nPSH) 위치의 픽셀을 포함하는 예측 블록을 제1 시간적 머징 후보 블록(또는 제1 Colocated Block, 360)이라고 하고 콜 픽쳐에서 (xP+(nPSW>>1), yP+(nPSH>>1)) 위치의 픽셀을 포함하는 예측 블록을 제2 시간적 머징 후보 블록(370)이라고 할 수 있다. 최종적으로 시간적 머징 후보(움직임 예측 관련 정보)를 산출하는데 사용되는 최종 시간적 머징 후보 블록의 위치는 제1 시간적 머징 후보 블록(360) 및 제2 시간적 머징 후보 블록(370)의 위치를 기준으로 일부 이동한 위치에 존재하는 블록일 수 있다. 예를 들어, 메모리에 콜 픽쳐에 존재하는 일부의 예측 블록의 움직임 예측 관련 정보만 저장하는 경우 제1 시간적 머징 후보 블록(360) 및 제2 시간적 머징 후보 블록(370)의 위치를 기준으로 일부 이동한 위치에 존재하는 블록을 최종적인 움직임 예측 관련 정보를 유도하는 최종 시간적 머징 후보 블록으로 사용할 수 있다. 공간적 머징 후보 블록과 마찬가지로 시간적 머징 후보 블록의 위치는 도 3과 달리 변하거나 추가될 수 있고 이러한 실시예에 대해서는 아래에서 후술한다.
시간적 머징 후보의 참조 픽쳐 인덱스는 현재 블록이 시간적 머징 후보로부터 산출된 움직임 벡터(mvLXCol)를 기초로 화면 간 예측을 수행하기 위해 참조되는 픽쳐를 지시하는 정보이다.
도 5는 본 발명의 실시예에 따른 시간적 머징 후보를 이용한 화면 간 예측과 시간적 머징 후보의 참조 픽쳐 인덱스를 설명하기 위한 개념도이다.
도 5를 참조하면, 현재 블록(500), 현재 블록이 포함된 픽쳐(510), 시간적 머징 후보 블록(520), 콜 블록이 포함된 콜 픽쳐(530)가 정의될 수 있다.
시간적 머징 후보 블록(520)의 관점에서 보면, 시간적 머징 후보 블록(520)에 대한 화면 간 예측을 수행하기 위해 시간적 머징 후보 블록이 화면 간 예측에 사용한 픽쳐(540)가 존재한다. 이러한 픽쳐는 콜 픽쳐(530)의 참조 픽쳐(540)로 정의된다. 또한, 시간적 머징 후보 블록(520)이 콜 픽쳐의 참조 픽쳐(540)로부터 화면 간 예측을 수행하기 위해 사용되는 움직임 벡터는 mvCol(570)로 정의할 수 있다.
현재 블록(500)의 관점에서 보면, 산출된 mvCol(570)을 기초로 현재 블록(500)의 화면 간 예측에 사용되는 참조 픽쳐(560)가 정의되어야 한다. 현재 블록(500)의 화면 간 예측에 사용되기 위해 정의된 참조 픽쳐를 시간적 머징 후보의 참조 픽쳐(560)라고 할 수 있다. 즉, 시간적 머징 후보의 참조 픽쳐(560)의 인덱스(reference index of the temporal merging candidate)는 현재 블록(500)의 시간적 움직임 예측에 사용되는 참조 픽쳐를 지시하기 위한 값이다. 단계 (2)에서는 이러한 시간적 머징 후보의 참조 픽쳐 인덱스를 유도할 수 있다.
시간적 머징 후보 블록(520)으로부터 유도되는 움직임 벡터인 mvCol(570)은 콜 픽쳐(530)와 콜 픽쳐의 참조 픽쳐(540) 사이의 거리와 현재 블록이 포함된 픽쳐(510)와 단계 (2)를 통해 산출된 시간적 머징 후보의 참조 픽쳐(560) 사이의 거리 사이의 관계에 따라 스케일링 되어 다른 값으로 변형될 수 있다.
즉, 현재 블록(500)의 시간적 머징 후보를 통한 화면 간 예측은 (2)를 통해 산출된 시간적 머징 후보의 참조 픽쳐 인덱스(560)와 시간적 머징 후보의 참조 픽쳐 인덱스(560)를 기준으로 아래에서 후술할 단계 (3)을 통해 유도된 mvLXCol(580)을 통해 수행될 수 있다. mvLXCol을 시간적 움직임 벡터라고 정의할 수 있다.
(3) 시간적 머징 후보의 움직임 예측 관련 정보를 유도한다.
단계 (3)에서는 시간적 머징 후보를 기초로 한 움직임 예측을 수행하기 위해 시간적 머징 후보 블록이 가용한지 여부에 대한 정보(availableFlagCol), 참조 픽쳐 리스트 활용 정보(PredFlagLXCol), 시간적 머징 후보의 움직임 벡터 정보(mvLXCol)와 같은 시간적 머징 후보를 유도할 수 있다. 시간적 머징 후보 블록의 가용성 정보는 시간적 머징 후보 블록에서 시간적 머징 후보를 유도할 수 있는지 여부에 대한 정보이다. 시간적 머징 후보 블록의 가용성 정보를 기초로 시간적 머징 후보를 머징 후보 리스트에 포함시킬 수 있다.
(4) 머징 후보 리스트(merging candidate list)를 산출한다.
머징 후보 리스트는 머징 후보 블록(공간적 머징 후보 블록, 시간적 머징 후보 블록)의 가용성 정보를 기초로 머지를 이용한 화면 간 예측에 사용될 수 있는 머징 후보에 대한 정보를 포함할 수 있다. 머징 후보 리스트에 포함된 하나의 머징 후보를 현재 블록을 예측하는데 사용할 수 있다. 어떠한 머징 후보를 현재 블록을 예측하는데 사용할지에 대한 정보(머지 인덱스)가 부호화 단계에서 부호화되어 복호화기로 전송될 수 있다.
머징 후보 리스트는 아래와 같은 우선 순위를 가지고 생성될 수 있다.
1) 만약 A1 블록이 가용한 경우, A1 블록에서 유도된 머징 후보
2) 만약 B1 블록이 가용한 경우, B1 블록에서 유도된 머징 후보
3) 만약 B0 블록이 가용한 경우, B0 블록에서 유도된 머징 후보
4) 만약 A0 블록이 가용한 경우, A0 블록에서 유도된 머징 후보
5) 만약 B2 블록이 가용한 경우, B2 블록에서 유도된 머징 후보
6) 만약 Col 블록이 가용한 경우, Col 블록에서 유도된 머징 후보
머징 후보 리스트에는 가용 블록의 개수에 따라 예를 들어, 0~5개의 머징 후보가 포함될 수 있다. 머징 후보를 유도하는데 사용되는 블록이 더 많은 경우 더 많은 머징 후보가 머징 후보 리스트에 포함되는 것도 가능하다.
(5) 머징 후보 리스트에 포함된 머징 후보의 개수가 머징 후보 리스트에 포함될 수 있는 최대 머징 후보의 개수보다 작은 경우, 추가적인 머징 후보를 유도한다.
추가적인 머징 후보는 기존의 머징 후보들의 움직임 예측 관련 정보를 조합하여 생성된 후보(combined merging candidate)이거나, 0 벡터 머징 후보(zero merging candidate)가 될 수 있다. 여기서 0벡터 머징 후보란 움직임 벡터가 (0,0)인 머징 후보를 지칭한다.
(6) 머징 후보 리스트에 포함된 머징 후보 중 현재 블록의 화면 간 예측에 적용되는 머징 후보를 결정하고 머징 후보의 움직임 예측 관련 정보를 현재 블록의 움직임 예측 관련 정보로 설정한다.
복호화 과정에서는 현재 블록의 화면 간 예측에 머징 후보 리스트에 포함된 후보 중 어떠한 후보가 사용되는지에 대한 정보인 머지 인덱스(merge_idx[xP][yP])를 기초로 현재 블록에 대해 머지를 이용한 화면 간 예측을 수행할 수 있다.
위와 같은 단계 (1) 내지 단계 (6)의 절차를 통해 현재 블록에 대한 움직임 예측 관련 정보를 유도하고, 이를 이용하여 현재 블록에 대한 화면 간 예측을 수행할 수 있다.
이하, 본 발명의 실시예에서는 단계 (1)의 현재 블록(예측 대상 블록)의 공간적 머징 후보 블록으로부터 공간적 머징 후보를 유도하는 방법을 사용함에 있어서 하나의 부호화 블록에 포함되는 적어도 하나의 예측 블록에 대해 단일 머징 후보 리스트를 유도하여 적어도 하나의 예측 블록에 대하여 병렬적 머징 프로세싱이 실시되는 방법에 대해 추가적으로 개시한다. 이하, 본 발명의 실시예에서는 설명의 편의상 하나의 부호화 블록이 복수의 예측 블록으로 분할된 경우를 가정하여 설명하나, 하나의 부호화 블록이 분할되지 않고 부호화 블록의 크기가 하나의 예측 블록의 크기와 동일할 경우에도 적용될 수 있다.
이하 실시예에서는 공간적 머징 후보와 시간적 머징 후보를 중심으로 단일 머징 후보 리스트를 구성하는 방법에 대하여 설명하지만, 공간적 머징 후보 및/또는 시간적 머징 후보들의 움직임 예측 관련 정보를 조합하여 생성된 후보(combined merging candidate)를 머징 후보 리스트에 추가하거나, 0 벡터 머징 후보(zero merging candidate)를 머징 후보 리스트에 추가하는 경우에도, 공간적 머징 후보와 시간적 머징 후보의 경우와 마찬가지로 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 단일 머징 후보 리스트를 사용하도록 적용할 수 있다.
단일 머징 후보 리스트를 구성하기 위해 복수의 예측 블록이 1) 공간적 머징 후보와 시간적 머징 후보를 모두 공유하거나, 2) 공간적 머징 후보만을 공유하거나 3) 시간적 머징 후보만을 공유할 수 있다. 2), 3)의 경우, 예측 블록에 대한 머징 후보 리스트가 서로 다를 수 있으나, 일부의 후보를 공유하므로 편의상 단일 머징 후보 리스트라는 용어로 포괄적으로 정의하여 사용한다.
더욱 상세히는,
(1) 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 공간적 머징 후보, 시간적 머징 후보를 모두 공유하여 단일 머징 후보 리스트를 생성하는 방법.
(2) 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 공간적 머징 후보만을 공유하고 시간적 머징 후보는 각각의 예측 블록을 기초로 산출된 블록을 사용하여 단일 머징 후보 리스트를 생성하는 방법.
(3) 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 시간적 머징 후보만을 공유하고 공간적 머징 후보는 각각의 예측 블록을 기초로 산출된 블록을 사용하여 단일 머징 후보 리스트를 생성하는 방법을 통해 서로 다른 예측 블록 사이에서 머징 후보 리스트를 공유할 수 있다.
도 6은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 머징 후보와 시간적 머징 후보를 모두 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 6에서는 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 공간적 머징 후보, 시간적 머징 후보를 모두 공유하여 단일 머징 후보 리스트를 생성하는 방법에 대해 개시한다.
도 6을 참조하면, 제1 예측 블록(600)과 제2 예측 블록(650)은 동일한 공간적 머징 후보 블록으로부터 공간적 머징 후보를 산출하여 공간적 머징 후보를 공유할 수 있다. 제1 예측 블록(600)과 제2 예측 블록(650)에 대한 공간적 머징 후보 블록은 부호화 블록을 기준으로 결정된 블록으로서 A0 블록(605), A1 블록(610), B0 블록(615), B1 블록(620), B2 블록(625)이 공간적 머징 후보 블록으로 사용될 수 있다.
각각의 공간적 머징 후보 블록의 위치는 부호화 블록의 좌측 상단 위치(xC, yC)와 nCS(부호화 블록의 크기)를 기준으로 도면에 표시된 픽셀을 포함한 위치가 될 수 있다.
A0 블록(605)은 (xC-1, yC+nCS)에 존재하는 픽셀을 포함하는 블록, A1 블록(610)은 (xC-1, yC+nCS-1)에 존재하는 픽셀을 포함하는 블록, B0 블록(615)은 (xC+nCS, yC-1)에 위치하는 픽셀을 포함하는 블록, B1 블록(620)은 (xC+nCS-1, yC-1)에 위치하는 픽셀을 포함하는 블록, B2 블록(625)은 (xC-1, yC-1)에 위치하는 픽셀을 포함하는 블록이 될 수 있다.
또한 제1 예측 블록(600)과 제2 예측 블록(650)은 시간적 머징 후보를 공유할 수 있다. 제1 예측 블록(600) 및 제2 예측 블록(650)에서 공유되는 시간적 머징 후보를 유도하는 시간적 머징 후보 블록(660, 670) 역시 부호화 블록의 좌측 상단 위치(xC, yC)와 부호화 블록의 크기(nCS)를 기준으로 산출된 위치에 존재하는 블록으로 유도될 수 있다.
예를 들어, 시간적 머징 후보 블록(660, 670)은 예측 블록을 포함하는 픽쳐 내의 픽셀 위치 (xC, yC)를 기준으로 현재 예측 블록의 콜 픽쳐(Colocated Picture)에서 (xC+nCS, yC+nCS) 위치의 픽셀을 포함하는 예측 블록(660)이거나 (xC+nCS, yC+nCS) 위치의 픽셀을 포함하는 예측 블록이 가용하지 않은 경우, (xC+(nCS>>1), yC+(nCS>>1)) 위치의 픽셀을 포함하는 예측 블록(670)이 될 수 있다.
단일 머징 후보 리스트를 유도하는 방법을 사용함으로 각각의 예측 블록에 대해서 병렬적 머지 프로세싱을 실시하여 화면 간 예측을 수행할 수 있고 또한 예측 블록 각각에 대해 머징 후보 리스트를 별도로 유도하지 않아도 된다. 따라서, 본 발명의 실시예에 따른 단일 머징 후보 리스트를 사용함으로써 높은 데이터 처리량을 요구하는 UHDTV(ultra-high definition television)와 같은 장치에서 영상의 처리 속도를 향상시킬 수 있다.
도 6에서는 Nx2N 형태로 분할된 제1 Nx2N 예측 블록(600)과 제2 Nx2N 예측 블록(650)에 대해서만 개시하였으나, 이러한 방법은 다른 분할 형태를 가지는 블록(예를 들어, 2NxN, 2NxnU, 2NxnD, nLx2N, nRx2N 또는 NxN과 같은 다양한 형태로 분할된 예측 블록에 대해서도 적용될 수 있다.
또한 이러한 방법은 블록의 크기(size) 또는 분할 깊이(depth)에 따라 단일 머징 후보 리스트의 적용 여부를 다르게 결정할 수 있다. 예를 들어, 머지 프로세스를 병렬적으로 실시할 수 있는 블록의 크기와 및 부호화 블록의 크기 정보 등을 기초로 특정 블록이 단일 머징 후보 리스트가 사용되는 블록인지에 대한 정보를 유도할 수 있다. 예를 들어, 특정 블록이 단일 머징 후보 리스트가 사용되는 블록인지에 대한 정보는 플래그 정보로 표현할 수 있다. 특정 블록이 단일 머징 후보 리스트가 사용되는 블록인지에 대한 플래그는 singleMCLflag(single merge candidate list flag)로 정의될 수 있다. 예를 들어, singleMCLflag가 0인 경우 블록이 단일 머지 후보 리스트를 사용하지 않는다는 것을 나타내고 singleMCLflag가 1인 경우 블록이 단일 머지 후보 리스트를 사용한다는 것을 나타낸다. singleMCLflag의 값을 기초로 예측 블록에 대한 공간적 머징 후보는 부호화 블록을 기준으로 유도될 수 있다.
예를 들어, 머지 프로세스를 병렬적으로 실시할 수 있는 블록의 크기는 4x4 크기보다 큰 값이라는 정보와 현재 블록 크기가 8x8라는 정보를 기초로 8x8 부호화 블록에서 분할되는 예측 블록이 단일 머징 후보 리스트를 사용함을 나타내는 플래그 정보를 유도할 수 있다. 유도된 플래그는 추후 예측 블록의 공간적 머징 후보 및 시간적 머징 후보를 부호화 블록을 기준으로 유도하기 위해 사용될 수 있다.
이러한 본 발명의 실시예에 대해서는 아래의 실시예에서 추가적으로 후술한다.
도 7은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 머징 후보만을 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 7에서는 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 공간적 머징 후보만을 공유하고 시간적 머징 후보는 각각의 예측 블록을 기초로 산출된 후보를 사용하여 단일 머징 후보 리스트를 생성하는 방법에 대해 개시한다.
도 7을 참조하면, 제1 예측 블록(700)과 제2 예측 블록(750)은 동일한 공간적 머징 후보를 공유할 수 있다. 제1 예측 블록(700)과 제2 예측 블록(750)에 대한 공간적 머징 후보 블록은 부호화 블록을 기준으로 결정된 블록으로서 A0(705), A1(710), B0(715), B1(720), B2(725) 블록이 공간적 머징 후보 블록으로 사용할 수 있다. 각각의 블록은 도 6과 같이 부호화 블록을 기준으로 산출된 위치에 존재할 수 있다.
제1 예측 블록(700)과 제2 예측 블록(750)의 시간적 머징 후보 블록(또는 콜 블록)은 각각의 예측 블록 위치를 기준으로 산출될 수 있다.
제1 예측 블록(700)은 자신의 블록 위치를 기준으로 결정된 시간적 머징 후보 블록인 Hpu0 블록(755), Mpu0 블록(760) 중 적어도 하나의 블록을 시간적 머징 후보로 사용할 수 있다. 제2 예측 블록(750)은 자신의 블록 위치를 기준으로 결정된 콜 블록인 Hpu1 블록(765), Mpu1 블록(770) 중 적어도 하나의 블록을 시간적 머징 후보로 사용할 수 있다. 전술한 바와 같이 최종적으로 움직임 예측 관련 정보를 산출하기 위한 시간적 머징 후보 블록의 위치는 Hpu0 블록(755), Mpu0 블록(760), Hpu1 블록(765), Mpu1 블록(770)의 위치를 기준으로 일부 이동된 위치에 해당하는 블록일 수 있다.
시간적 머징 후보 블록(755, 760, 765, 770)은 미리 부호화 또는 복호화된 픽쳐에 존재하는 블록으로 시간적 콜 블록을 공유하지 않는 경우에도 제1 예측 블록(700)과 제2 예측 블록(750)은 병렬적으로 머지 후보 리스트를 생성하여 화면 간 예측을 수행할 수 있다.
도 8은 본 발명의 실시예에 따른 복수의 예측 블록에서 시간적 머징 후보만을 공유하여 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 8에서는 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 시간적 머징 후보만을 공유하고 공간적 머징 후보는 각각의 예측 블록을 기초로 산출된 후보를 사용하여 단일 머징 후보 리스트를 생성하는 방법에 대해 개시한다.
도 8을 참조하면, 제1 예측 블록(800)과 제2 예측 블록(850)은 각각의 블록 위치 및 크기에 따른 공간적 머징 후보 블록으로부터 서로 다른 공간적 머징 후보를 유도할 수 있다.
제1 예측 블록(800)에 대한 공간적 머징 후보 블록은 A0 블록(805), A1 블록(810), B0 블록(813), B1 블록(815), B2 블록(820)이고 각각의 블록의 위치는 제1 예측 블록(800)의 상단 좌측 픽셀 위치와 제1 예측 블록(800)의 크기(너비 및 높이)를 기초로 유도될 수 있다.
예를 들어, 제1 예측 블록의 좌측 상단 픽셀이 (xP, yP)라면, 예측 블록의 공간적 머징 후보 블록은 (xP-1, yP+nPbH)에 존재하는 픽셀을 포함하는 블록을 좌측 제1 블록(또는 A0 블록, 805), (xP-1, yP+nPbH-1)에 존재하는 픽셀을 포함하는 블록을 좌측 제2 블록(또는 A1 블록, 810), (xP+nPbW, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제1 블록(또는 B0 블록, 813), (xP+nPbW-1, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제2 블록(B1 블록, 815), (xP-1, yP-1)에 위치하는 픽셀을 포함하는 블록을 상단 제3 블록(B2 블록, 820)이 될 수 있다.
제2 예측 블록(850)에 대한 공간적 머징 후보 블록은 A0’ 블록(825), A1’ 블록(830), B0’ 블록(835), B1’ 블록(840), B2’ 블록(815)이고 각각의 블록의 위치는 제2 예측 블록(850)의 상단 좌측 픽셀 위치와 제2 예측 블록(850)의 크기(너비 및 높이)를 기초로 유도될 수 있다.
예를 들어, 제2 예측 블록의 좌측 상단 픽셀이 (xP’, yP’)라면, 예측 블록의 공간적 머징 후보 블록은 (xP’-1, yP’+nPbH)에 존재하는 픽셀을 포함하는 블록을 좌측 제1 블록(또는 A0’ 블록, 825), (xP’-1, yP’+nPbH-1)에 존재하는 픽셀을 포함하는 블록을 좌측 제2 블록(또는 A1’ 블록, 830), (xP’+nPbW, yP’-1)에 위치하는 픽셀을 포함하는 블록을 상단 제1 블록(또는 B0’ 블록, 835), (xP’+nPbW-1, yP’-1)에 위치하는 픽셀을 포함하는 블록을 상단 제2 블록(B1’ 블록, 840), (xP’-1, yP’-1)에 위치하는 픽셀을 포함하는 블록을 상단 제3 블록(B2’ 블록, 815)이 될 수 있다.
즉, 각각의 예측 블록(800, 850)의 위치와 크기를 기준으로 공간적 머징 후보가 산출될 수 있다.
제1 예측 블록(800)과 제2 예측 블록(850)의 시간적 머징 후보 블록(또는 콜 블록, 860, 870)은 부호화 블록 기준으로 산출되어 두 개의 예측 블록이 동일한 시간적 머징 후보를 공유할 수 있다.
전술한 단일 머지 후보 리스트 산출 방법은 AMVP(advanced motion vector prediction)를 이용한 화면 간 예측 모드에서 AMVP 리스트(또는 움직임 벡터 예측 후보 리스트, motion vector predictor candidate list)를 생성하기 위해서도 사용될 수 있다.
도 9는 AMVP를 이용한 화면 간 예측 모드를 설명하기 위한 개념도이다.
도 9를 참조하여 AMVP를 이용한 화면 간 예측 모드에 대해 간략히 설명하면, AMVP를 이용한 화면 간 예측 모드에서 사용되는 공간적 후보 예측 블록은 좌측 제1 블록(A0, 900), 좌측 제2 블록(A1, 910), 상단 제1 블록(B0, 920), 상단 제2 블록(B1, 930), 상단 제3 블록(B2, 940)을 포함할 수 있다. 이러한 공간적 후보 예측 블록은 두 개의 공간적 후보 예측 그룹으로 나눌 수 있는데, 좌측 제1 블록(900) 및 좌측 제2 블록(910)을 포함하는 그룹을 제1 공간적 후보 예측 그룹, 상단 제1 블록(920), 상단 제2 블록(930), 상단 제3 블록(940)을 포함하는 그룹을 제2 공간적 후보 예측 그룹이라는 용어로 정의할 수 있다.
또한, 시간적 후보 예측 블록으로 현재 예측 블록을 포함하는 픽쳐 내의 픽셀 위치 (xP, yP)를 기초로 현재 예측 블록의 콜 픽쳐(Colocated Picture)에서 (xP+nPbW, yP+nPbH) 위치의 픽셀을 포함하는 예측 블록(950)이거나 (xP+nPbW, yP+nPbH) 위치의 픽셀을 포함하는 예측 블록이 가용하지 않은 경우, (xP+(nPbW>>1), yP+(nPbH>>1)) 위치의 픽셀을 포함하는 예측 블록(960)을 포함할 수 있다. 머지와 동일하게 AMVP에서도 최종적으로 움직임 예측 관련 정보를 산출하는데 사용되는 최종 시간적 머징 후보는 제1 시간적 머징 후보(950) 및 제2 시간적 머징 후보(960)의 위치를 기준으로 일부 이동한 위치에 존재하는 블록일 수 있다.
AMVP를 이용한 화면 간 예측 방법은 각각의 공간적 후보 예측 그룹에서 산출된 움직임 벡터 및 시간적 후보 예측 블록에서 산출된 움직임 벡터(motion vector)를 기초로 움직임 벡터 예측 후보 리스트를 생성할 수 있다. 산출된 움직임 벡터 예측 후보 리스트의 움직임 벡터는 현재 블록에 대한 화면 간 예측을 수행하기 위해 사용될 수 있다.
후보 예측 블록(공간적 후보 예측 블록 또는 시간적 후보 예측 블록)에서 움직임 벡터를 산출하는 방법은 병렬적으로 수행될 수 있다. 예를 들어, 후보 예측 움직임 벡터를 유도하는데 있어 2개의 공간적 후보 예측 그룹(제1 공간적 후보 예측 그룹, 제2 공간적 후보 예측 그룹)에서 각각 하나의 후보 예측 움직임 벡터가 유도되고, 시간적 후보 예측 블록에서 하나의 후보 예측 움직임 벡터가 유도되는 경우, 제1 공간적 후보 예측 그룹, 제2 공간적 후보 예측 그룹, 시간적 후보 예측 블록에서 후보 예측 움직임 벡터를 산출하는 동작이 병렬적으로 수행될 수 있다. 후보 예측 움직임 벡터 유도 과정이 병렬적으로 수행된다는 것은 후보 예측 움직임 벡터 유도 과정의 복잡도를 감소시킬 수 있다는 것을 의미한다. 즉, 제1 공간적 후보 예측 그룹에서 제1 공간적 후보 예측 움직임 벡터를 산출하는 단계, 제2 공간적 후보 예측 그룹에서 공간적 후보 예측 움직임 벡터를 산출하는 단계, 시간적 후보 예측 블록에서 시간적 후보 예측 움직임 벡터를 산출하는 단계가 병렬적으로 수행될 수 있다.
본 발명의 실시예에 따르면, 부호화 블록에서 분할된 각각의 예측 블록에 대한 AMVP를 이용한 화면 간 예측도 병렬적으로 수행될 수 있다.
AMVP에서도 머지와 동일하게 하나의 부호화 블록이 복수의 예측 단위로 분할된 경우, 예측 블록 별로 움직임 벡터 예측 후보 리스트를 생성한다. 이러한 경우, 특정 예측 블록의 공간적 후보 예측 블록이 다른 예측 블록에 포함되어 예측이 끝날 때까지 기다려야 한다. 따라서, 움직임 벡터 예측 후보 리스트를 생성하거나 특정 예측 블록의 공간적 후보 예측 블록이 아직 부호화 또는 복호화되지 않은 위치에 존재하는 경우 해당 블록으로부터 움직임 벡터를 유도할 수 없는 경우가 존재한다.
이러한 문제점을 해결하기 위해 움직임 벡터 예측 후보 리스트를 구성하기 위해, 복수의 예측 블록이 1) 공간적 후보 예측 블록과 시간적 후보 예측 블록을 모두 공유하거나, 2) 공간적 후보 예측 블록만을 공유하거나 3) 시간적 후보 예측 블록만을 공유하여 공간적 후보 예측 움직임 벡터 또는 시간적 후보 예측 움직임 벡터를 산출할 수 있다. 2), 3)의 경우, 예측 블록에 대한 움직임 벡터 예측 후보 리스트가 서로 다를 수 있으나, 일부의 후보를 공유하므로 편의상 단일 움직임 벡터 예측 후보 리스트라는 용어로 포괄적으로 정의하여 사용한다.
더욱 상세히는,
(1) 하나의 부호화 블록에서 분할된 복수의 예측 블록이 부호화 블록을 기초로 유도된 공간적 후보 예측 블록 및 시간적 후보 예측 블록을 모두 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법.
(2) 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 유도된 공간적 후보 예측 블록만을 공유하고 시간적 후보 예측 블록은 각각의 예측 블록을 기초로 산출된 블록을 사용하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법.
(3) 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 유도된 시간적 후보 예측 블록만을 공유하고 공간적 후보 예측 블록은 각각의 예측 블록을 기초로 산출된 블록을 사용하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 통해 서로 다른 예측 블록 사이에서 움직임 벡터 예측 후보 리스트를 공유할 수 있다.
도 10은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 후보 예측 블록과 시간적 후보 예측 블록을 모두 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 10에서는 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 공간적 후보 예측 블록 및 시간적 후보 예측 블록을 모두 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법에 대해서 개시한다. 이하의 실시예에서는 후보 예측 블록에서 유도되는 움직임 벡터 예측 후보가 모두 가용한 경우를 가정하여 설명한다.
도 10을 참조하면, 제1 예측 블록(1000)과 제2 예측 블록(1050)은 동일한 공간적 후보 예측 블록을 공유할 수 있다. 제1 예측 블록(1000)과 제2 예측 블록(1050)에 대한 공간적 후보 예측 블록은 부호화 블록을 기준으로 결정된 블록으로서 A0 블록(1005), A1 블록(1010), B0 블록(1015), B1 블록(1020), B2 블록(1025)이 될 수 있다.
제1 예측 블록(1000)과 제2 예측 블록(1050)은 공유되는 A0 블록(1005), A1 블록(1010)을 기초로 하나의 움직임 벡터 예측 후보를 산출하고 B0 블록(1015), B1 블록(1020), B2 블록(1025)을 기초로 하나의 움직임 벡터 예측 후보를 산출할 수 있다.
또한 제1 예측 블록(1000)과 제2 예측 블록(1050)은 시간적 후보 예측 블록(또는 콜 블록 1050, 1060)을 공유할 수 있다. 제1 예측 블록(1000)과 제2 예측 블록(1050)은 공유된 시간적 후보 예측 블록(또는 콜 블록, 1050, 1060)에서 움직임 벡터 예측 후보를 산출할 수 있다.
즉, 제1 예측 블록(1000) 및 제2 예측 블록(1050)은 공간적 후보 예측 블록(1005, 1010, 1015, 1020, 1025)과 시간적 후보 예측 블록(1050, 1060)을 기초로 산출된 움직임 벡터 예측 후보를 사용하여 단일 움직임 벡터 예측 후보 리스트를 생성할 수 있다.
도 11은 본 발명의 실시예에 따른 복수의 예측 블록에서 공간적 후보 예측 블록만을 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 11에서는 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 공간적 후보 예측 블록만을 공유하여 움직임 벡터 예측 후보를 산출하는 방법에 대해 개시한다. 즉, 시간적 후보 예측 블록은 각각의 예측 블록을 기초로 산출된 블록에서 움직임 벡터 예측 후보를 산출하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법에 대해서 개시한다.
도 11을 참조하면, 제1 예측 블록(1100)과 제2 예측 블록(1150)은 동일한 공간적 후보 예측 블록을 공유할 수 있다. 제1 예측 블록(1100)과 제2 예측 블록(1050)에 대한 공간적 후보 예측 블록은 부호화 블록을 기준으로 결정된 블록으로서 A0 블록(1105), A1 블록(1110), B0 블록(1115), B1 블록(1120), B2 블록(1125)을 공유하여 각 블록들을 공간적 후보 예측 블록으로 사용할 수 있다.
제1 예측 블록(1100)과 제2 예측 블록(1150)의 시간적 후보 예측 블록(또는 콜 블록, 1155, 1160, 1165, 1170)은 각각의 예측 블록 위치를 기준으로 산출될 수 있다.
제1 예측 블록(1100)은 자신의 위치를 기준으로 결정된 콜 블록인 Hpu0 블록(1155), Mpu0 블록(1160) 중 적어도 하나의 블록을 시간적 후보 예측 블록으로 사용할 수 있다.
제2 예측 블록(1150)은 자신의 위치를 기준으로 결정된 콜 블록인 Hpu1 블록(1165), Mpu1 블록(1170) 중 적어도 하나의 블록을 시간적 후보 예측 블록으로 사용할 수 있다.
시간적 후보 예측 블록(1155, 1160, 1165, 1170)의 경우는 미리 부호화 또는 복호화된 픽쳐에 존재하는 블록으로 시간적 후보 예측 블록을 공유하지 않는 경우에도 제1 예측 블록(1100)과 제2 예측 블록(1150)은 병렬적으로 움직임 벡터 예측 후보 리스트를 생성하여 화면 간 예측을 수행할 수 있다.
도 12는 본 발명의 실시예에 따른 복수의 예측 블록에서 시간적 후보 예측 블록만을 공유하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 12에서는 하나의 부호화 블록에서 분할되는 복수의 예측 블록이 부호화 블록을 기초로 결정된 시간적 후보 예측 블록만을 공유하고 공간적 후보 예측 블록은 각각의 예측 블록을 기초로 산출된 블록을 사용하여 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법에 대해서 개시한다.
도 12를 참조하면, 제1 예측 블록(1200)과 제2 예측 블록(1250)은 각각의 예측 블록의 위치를 기준으로 서로 다른 공간적 후보 예측 블록을 사용할 수 있다. 즉, 제1 예측 블록(1200)에 대한 공간적 후보 예측 블록은 A0 블록(1205), A1 블록(1210), B0 블록(1213), B1 블록(1215), B2 블록(1220)이고 제2 예측 블록(1250)에 대한 공간적 후보 예측 블록은 A0’ 블록(1225), A1’ 블록(1230), B0’ 블록(1235), B1’ 블록(1240), B2’ 블록(1215)이 될 수 있다.
제1 예측 블록(1200)과 제2 예측 블록(1250)의 시간적 후보 예측 블록(또는 콜 블록,1260, 1270)은 부호화 블록 기준으로 산출되어 두 개의 예측 블록이 동일한 시간적 후보 예측 블록을 공유할 수 있다.
AMVP를 사용한 화면 간 예측 모드에서 단일 움직임 벡터 예측 후보 리스트는 블록이 참조하는 참조 픽쳐 인덱스마다 다르게 생성될 수 있다. 예를 들어, 현재 픽쳐(혹은 슬라이스)의 참조 픽쳐가 ‘4’개라고 한다면, 참조 픽쳐 인덱스는 ‘4’개까지 존재할 수 있다. 이러한 경우 각각의 참조 픽쳐 인덱스마다 단일 움직임 벡터 예측 후보 리스트를 가질 수 있으므로, 예측 대상 블록에 대해 총 ‘4’개의 단일 움직임 벡터 예측 후보 리스트를 생성하여 사용할 수 있다.
또한, 현재 부호화 블록 안의 모든 예측 블록들에 대해 모두 동일한 참조 픽쳐 인덱스를 사용하도록 하여 부호화 또는 복호화를 수행하도록 할 수 있다. 이 경우, 현재 부호화 블록 안의 모든 예측 블록들이 동일한 참조 픽쳐 인덱스를 가지므로 하나의 단일 움직임 벡터 예측 후보 리스트만 존재하면 된다. 이러한 방법들의 적용 여부는 부호화 블록의 크기(size) 또는 부호화 블록의 깊이(depth)에 따라 다르게 결정될 수 있다.
전술한 방법뿐만 아니라 다양한 방법이 단일 머징 후보 리스트, 단일 움직임 벡터 예측 후보 리스트를 생성하기 위해 사용될 수 있다. 아래에서는 다양한 후보 리스트(단일 머징 후보 리스트, 단일 움직임 벡터 예측 후보 리스트) 생성 방법에 대해 개시한다.
도 13는 본 발명의 실시예에 따른 단일 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 13에서는 설명의 편의상 단일 머징 후보 리스트를 생성하는 방법에 대해 개시하나, 단일 움직임 벡터 예측 후보 리스트(AMVP List)를 생성하는 방법에도 적용될 수 있다.
전술한 바와 같이 시간적 머징 후보, 공간적 머징 후보의 위치는 임의적인 위치로서 변할 수 있고 시간적 머징 후보, 공간적 머징 후보의 개수 또한 변할 수 있다.
도 13(A)와 도 13(B)를 참조하면, 단일 머징 후보 리스트를 생성하기 위한 공간적 머징 후보 블록의 위치와 시간적 머징 후보 블록의 위치를 새롭게 정의할 수 있다.
도 13(A)는 공간적 머징 후보 블록 중 A1 블록(1300)과 B1 블록(1305)의 위치가 각각 A1 블록(1300)은 (xC-1, yC+nCS/2)의 픽셀, B1 블록(1305)은 (xC+nCS/2, yC-1)의 픽셀을 포함한 위치로 새롭게 정의될 수 있다.
또한 시간적 머징 후보 블록이 유도될 수 있는 위치가 기존의 위치에 추가하여 H1 블록(1310), H2 블록(1320), H3 블록(1330), H4 블록(1340)이 추가될 수 있다. 콜 픽쳐에서 H1 블록(1310)은 (xC+nCS/2, yC+nCS) 픽셀, H2 블록(1320)은 (xC+nCS, yC+nCS/2) 픽셀, H3 블록(1330)은 (xC, yC+nCS) 픽셀, H4 블록(1340)은 (xC+nCS, yC) 픽셀을 포함한 블록일 수 있다.
도 13(B)는 공간적 머징 후보 블록 중 A1 블록(1350)과 B1 블록(1355)의 위치가 각각 A1 블록(1350)은 (xC-1, yC+nCS/2-1)의 픽셀, B1 블록(1355)은 (xC+nCS/2-1, yC-1)의 픽셀을 포함한 위치로 새롭게 정의될 수 있다.
또한 시간적 머징 후보 블록의 위치는 기존의 위치에 추가적으로 H1 블록(1360), H2 블록(1370), H3 블록(1380), H4 블록(1390)이 정의될 수 있다. 콜 픽쳐에서 H1 블록(1360)은 (xC+nCS/2, yC+nCS) 픽셀, H2 블록(1370)은 (xC+nCS, yC+nCS/2) 픽셀, H3 블록(1380)은 (xC, yC+nCS) 픽셀, H4 블록(1390)은 (xC+nCS, yC) 픽셀을 포함한 블록일 수 있다.
전술한 단일 머징 후보 리스트, 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법에서는 부호화 블록 기반으로 단일 머징 후보 리스트, 단일 움직임 벡터 예측 후보 리스트를 생성하는 방법에 대해 개시하였고, 단일 머징 후보 리스트, 단일 움직임 벡터 예측 후보 리스트가 생성되는 부호화 블록의 크기가 제한적일 수 있음에 대해 개시하였다. 단일 머징 후보 리스트, 단일 움직임 벡터 예측 후보 리스트를 통합하는 개념으로 단일 후보 리스트라는 개념을 사용할 수 있다.
또한, 본 발명의 실시예에 따르면, 부호화 블록 기반이 아닌 일반적인 블록을 기반(예를 들어, 특정한 크기의 블록으로서 적어도 하나의 부호화 블록 또는 적어도 하나의 예측 블록을 포함하는 블록)으로도 단일 후보 리스트를 생성할 수 있다. 또한, 머지와 AMVP 중 하나의 화면 간 예측 모드에만 이러한 단일 후보 리스트 생성 방법도 적용될 수 있다.
이러한 사항들은 아래의 표 1과 같이 정리될 수 있다.
<표 1>
표 1은 전술한 바와 같이 단일 후보 리스트를 어떠한 블록을 기반으로 하는지 여부 및 어떠한 블록의 크기를 기준으로 하는지 여부와 단일 머징 후보 리스트가 생성되는 화면 간 예측 방법이 머지와 AMVP 중 어떠한 방법에 적용되는지에 따라 분류한 표이다.
도 14는 본 발명의 실시예에 따른 단일 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 14에서는 머지를 이용한 화면 간 예측에서 블록 기반으로 단일 머징 후보 리스트를 공유하는 방법에 대해 개시한다.
도 14를 참조하면, 실선으로 표시된 부분은 부호화 블록을 나타내고 점선으로 나타낸 부분은 해당 부호화 블록에서 분할된 예측 블록을 나타낸다. 도 14에서는 복수의 부호화 블록들이 포함되는 하나의 더 큰 블록 단위가 공간적 머징 후보 블록(1400, 1405, 1410, 1415, 1420) 및 시간적 머징 후보 블록(1450 내지 1480)을 산출할 수 있는 단위임을 나타낸다. 즉, 부호화 단위보다 더 큰 단위로 단일 머징 후보 리스트가 생성될 수 있다. 이러한 정보는 병렬적 머지 프로세스가 실시 가능한 블록에 대한 정보로서 부호화 및 복호화될 수 있다. 본 발명의 실시예에 따르면, 병렬적 머지 프로세스가 실시 가능한 블록에 대한 정보와 예측 블록을 포함하는 부호화 블록에 대한 정보를 기초로 특정 부호화 블록에 포함된 예측 블록이 단일 머징 후보 리스트를 사용하여 머지를 수행하는지 여부를 판단할 수 있다.
병렬적 머지 프로세싱이 실시 가능한 블록 내부에 존재하는 부호화 블록에서 유도된 공간적 머징 후보 블록 중 병렬적 머지 프로세싱이 실행 가능한 블록의 내부에 존재하는 공간적 머징 후보 블록은 가용하지 않은 블록으로서 공간적 머징 후보를 유도하기 위해 사용되지 않을 수 있다. 반대로 병렬적 머지 프로세싱이 실시 가능한 블록의 외부에 존재하는 공간적 머징 후보 블록은 머지를 이용한 화면 간 예측에서 공간적 머징 후보를 유도하기 위해 사용될 수 있다. 즉, 병렬적 머지 프로세싱이 실시 가능한 블록의 내부에 위치하는 공간적 머징 후보 블록을 가용하지 않은 공간적 머징 후보 블록으로 판단하여 공간적 머징 후보를 유도하는데 사용하지 않을 수 있다.
이러한 판단을 수행하기 위해 현재 블록(예측 대상 블록)과 현재 블록의 공간적 머징 후보 블록이 동일한 병렬적 머지 프로세싱이 실시 가능한 블록에 포함되는지 여부를 판단할 수 있다. 판단 결과, 현재 블록(예측 대상 블록)과 현재 블록의 공간적 머징 후보 블록이 동일한 병렬적 머지 프로세싱이 실시 가능한 블록에 포함되는 경우 해당 블록을 가용하지 않은 것으로 설정하여 머징 후보 리스트를 구성하는데 사용하지 않을 수 있다.
위의 조건을 만족하는 블록에 대한 시간적 머징 후보 블록 또한, 병렬적 머지 프로세싱이 실시 가능한 블록을 기준으로 산출될 수 있다. 즉, 특정 부호화 블록에 포함된 예측 블록이 단일 머징 후보 리스트를 사용하여 머지를 수행하는 경우 예측 블록에 대해 동일한 시간적 머징 후보를 공유하여 사용할 수 있다.
도 15는 본 발명의 실시예에 따른 단일 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 15는 머지를 이용한 화면 간 예측에서 부호화 블록의 크기가 특정 크기 이하인 경우 또는 특정 크기인 경우에만 동일 부호화 블록 내의 예측 블록들이 공간적 머징 후보 및 시간적 머징 후보를 공유하는 방법을 나타낸 것이다.
특정 조건을 만족하는 블록에서만 단일 머징 후보 리스트를 공유하는 방법을 사용하기 위해서는 여러 가지 정보가 사용될 수 있다. 예를 들어, 병렬적 머지 프로세싱이 실시 가능한 블록의 크기에 대한 정보와 현재 부호화 블록의 크기 정보를 기초로 현재 블록이 단일 머지 후보 리스트를 사용하는지에 대한 정보를 유도할 수 있다. 유도된 정보를 기초로 예측 블록에 대한 공간적 머징 후보 및 시간적 머징 후보가 특정 조건을 만족하는 부호화 블록을 기준으로 산출될 수 있다.
도 15를 참조하면, 예를 들어, 병렬적 머지 프로세싱이 실시 가능한 블록의 크기가 8x8 이상이고, 부호화 블록의 크기가 8x8이라는 조건을 만족하는 경우에만 부호화 블록에서 분할된 예측 블록이 단일 머징 후보 리스트를 공유할 수 있다.
제1 부호화 블록(CU0, 1500)은 32x32, 제2 부호화 블록(CU1, 1510)은 16x16, 제3 부호화 블록(CU2, 1520)은 32x32, 제4 부호화 블록(CU3, 1530)은 16x16, 제5 부호화 블록(CU4, 1540)는 8x8의 크기를 가진 블록이라고 가정한다.
도 15(B)는 일부의 부호화 블록에 대한 공간적 머징 후보 블록만을 표시한 개념도이다.
도 15(B)를 참조하면, 제2 부호화 블록(1510)은 nLx2N 형태의 두 개의 예측 블록(1515, 1518)으로 분할되고, 제5 부호화 블록(1540)은 Nx2N 형태의 두 개의 예측 블록(1545, 1550)으로 분할될 수 있다. 도 15(B)는 8x8 크기의 부호화 블록(1540)에 대해서만 단일 머징 후보 리스트가 생성되는 경우를 가정한 것이다.
제2 부호화 블록(1510)의 제1 예측 블록(1515) 및 제2 예측 블록(1518)은 각각의 예측 블록에 대해 공간적 머징 후보를 개별적으로 유도하여 예측 블록 별로 머징 후보 리스트를 생성할 수 있다.
제 5 부호화 블록(1540)의 크기는 8x8로서 병렬적 머지 프로세싱이 실시 가능한 블록의 크기에 대한 조건과 현재 부호화 블록의 크기에 대한 조건을 만족할 수 있다. 이러한 경우, 제5 부호화 블록(1540)에 포함된 제3 예측 블록(1545) 및 제4 예측 블록(1550)이 부호화 블록의 위치 및 크기를 기준으로 산출된 공간적 머징 후보 및 시간적 머징 후보를 기초로 단일 머징 후보 리스트를 생성할 수 있다.
즉, 병렬적으로 머지 프로세스가 실시 가능하도록 정의된 블록의 크기가 미리 정해진 특정한 크기 이상인지 여부를 판단하고 부호화 블록이 특정한 크기인지 여부를 판단하여 병렬적으로 머지 프로세스가 실시 가능하도록 정의된 블록의 크기가 미리 정해진 특정한 크기 이상 상기 부호화 블록이 특정한 크기인 경우 상기 예측 단위가 상기 단일 머징 후보 리스트를 사용하여 머지를 수행하는 것으로 판단할 수 있다.
병렬적 머지 프로세싱이 실시 가능한 블록의 내부의 부호화 블록에서 유도된 공간적 머징 후보 블록 중 병렬적 머지 프로세싱이 실시 가능한 블록의 내부에 존재하는 공간적 머징 후보 블록은 화면 간 예측에 사용되지 않을 수 있다. 반대로 병렬적 머지 프로세싱이 실시 가능한 블록의 외부에 존재하는 공간적 머징 후보 블록은 머지를 이용한 화면 간 예측에서 사용될 수 있다. 즉, 병렬적 머지 프로세싱이 실시 가능한 블록의 내부에 위치하는 공간적 머징 후보 블록을 가용하지 않은 공간적 머징 후보 블록으로 판단하여 공간적 머징 후보를 유도하는데 사용하지 않을 수 있다.
예를 들어, 이러한 판단을 수행하기 위해 현재 블록(예측 대상 블록)과 현재 블록의 공간적 머징 후보 블록이 동일한 병렬적 머지 프로세싱이 실시 가능한 블록에 포함되는지 여부를 판단할 수 있다. 판단 결과, 현재 블록(예측 대상 블록)과 현재 블록의 공간적 머징 후보 블록이 동일한 병렬적 머지 프로세싱이 실시 가능한 블록에 포함되는 경우 해당 공간적 머징 후보 블록을 가용하지 않은 것으로 설정하여 공간적 머징 후보 블록으로부터 공간적 머징 부호를 유도하지 않을 수 있다.
전술한 바와 같이 특정 크기의 부호화 블록에 대하여 단일 머징 후보 리스트를 생성하기 위해서는 1) 머지를 이용한 화면 간 예측에서 병렬적 머지 프로세싱이 실시 가능한 블록의 크기에 관련된 정보와 2) 현재 블록의 크기 정보를 기초로 해당 블록이 단일 머징 후보 리스트를 생성함을 나타내는 단일 머징 후보 리스트 플래그(singleMCLflag)를 유도할 수 있다. 또한 1) 머지를 이용한 화면 간 예측에서 병렬적 머지 프로세싱이 실시 가능한 블록의 크기에 관련된 정보를 기초로 어떠한 공간적 머징 후보 블록이 공간적 머징 후보를 유도하기 위해 가용하지 않은 블록인지에 대해 알 수 있어 해당 블록으로부터 공간적 머징 후보를 유도하지 않을 수 있다.
예를 들어, 상기 병렬적 머지 프로세스가 실시 가능한 블록이 8x8 크기의 블록이고 현재 부호화 블록의 크기가 8x8인 경우를 가정하면, 부호화 블록과 상기 부호화 블록을 기준으로 산출된 공간적 머징 후보 블록이 동일한 병렬적 머지 프로세스가 실시 가능한 블록의 내부에 위치하는 경우, 공간적 머징 후보 블록을 가용하지 않은 공간적 머징 후보 블록으로 판단할 수 있다. 즉, 부호화 블록과 상기 부호화 블록을 기준으로 산출된 공간적 머징 후보 블록이 서로 다른 병렬적 머지 프로세스가 실시 가능한 블록에 위치하는 경우 해당 공간적 머징 후보 블록을 공간적 머징 후보를 유도하는 데에 사용할 수 있다.
유도된 단일 머징 후보 리스트 플래그(singleMCLflag)는 이후 공간적 머징 후보 및 시간적 머징 후보를 유도하는 단계에서 사용되어 특정 크기의 부호화 블록에서 분할된 예측 블록들이 동일한 머징 후보들을 공유하는 단일 머징 후보 리스트를 생성하도록 할 수 있다.
이하 본 발명의 실시예에서는 아래의 표 2 내지 표 5를 사용하여 머지를 이용한 화면 간 예측에서 병렬적 머지 프로세싱이 실시 가능한 블록에 관련된 정보와 이러한 정보를 비트스트림으로 부호화 또는 비트스트림으로부터 복호화 하는 데 사용되는 신택스 구조에 대해 개시한다.
<표 2>
<표 3>
<표 4>
<표 5>
표 2 내지 표 5에서 개시된 신택스에 포함된 semantics인“parallel_merge_enabled_flag”는 부호화 블록을 기반으로 단일 머징 후보 리스트를 사용할지 여부를 알려주는 정보로 사용될 수 있다. 또한, “parallel_merge_enabled_flag”는 병렬적인 머지 프로세싱이 실시되는지 여부에 대한 정보도 포함할 수 있다.
예를 들어, “parallel_merge_enabled_flag”가 ‘1’일 경우, 부호화 블록 기반으로 단일 머징 후보 리스트를 생성하는 방법이 적용되었음을 나타내고 병렬적인 머지 프로세싱이 실시됨을 지시할 수 있다. “parallel_merge_enabled_flag”가 ‘0’인 경우 단일 머징 후보 리스트가 적용되지 않았음을 나타낼 수 있고 병렬적 머지 프로세싱이 실시 가능하지 않음을 나타낼 수 있다. 그 반대도 가능하다. 또한 “parallel_merge_enabled_flag”는 병렬적으로 부호화 블록 내의 모든 예측 블록을 병렬적으로 부호화 또는 복호화하는지 여부를 지시하는 정보로서 사용될 수 있으며, 부호화 블록 내의 모든 예측 블록들의 머징 후보 리스트를 병렬적으로 구성하는지 여부를 지시하는 정보로서 사용될 수도 있다.
또한, “parallel_merge_disabled_depth_info”는 부호화 블록 기반으로 단일 머징 후보 리스트를 생성하는 방법이 적용되었을 경우(예를 들어, “parallel_merge_enabled_flag”가 참의 값을 가질 경우) 활성화되는 semantics로서, 이는 부호화 블록의 깊이(depth) 또는 부호화 블록의 크기(size)에 따른 단일 머징 후보 리스트의 적용 여부를 알려준다.
예를 들어, “parallel_merge_disabled_depth_info”가 ‘0’일 경우에는 부호화 블록의 깊이(depth)가 ‘0’인 경우(가장 큰 크기의 부호화 블록으로서, 예를 들어 64x64 크기일 수 있다.) 해당 방법이 적용되지 않을 수 있다. 또한 “parallel_merge_disabled_depth_info”가 ‘1’일 경우에는 부호화 블록의 깊이(depth)가 ‘1’인 경우(가장 큰 크기의 부호화 블록보다 한 단계 작은 크기로서, 예를 들어 32x32 크기) 해당 방법이 적용되지 않을 수 있다.
또 다른 예로, “parallel_merge_disabled_depth_info”가 ‘0’일 경우에는 부호화 블록의 깊이(depth)가 ‘0’ 이상인 경우(가장 큰 크기의 부호화 블록) 해당 방법이 적용되지 않을 수 있다. 또한 “parallel_merge_disabled_depth_info”가 ‘1’일 경우에는 부호화 블록의 깊이(depth)가 ‘1’ 이상인 경우(가장 큰 크기의 부호화 블록을 제외한 부호화 블록의 크기들로서, 예를 들어 가장 큰 크기의 부호화 블록의 크기가 64x64일 경우, 32x32, 16x16, 8x8 크기의 부호화 블록 크기가 이에 해당한다.) 해당 방법이 적용되지 않을 수 있다.
또 다른 일예로, “parallel_merge_disabled_depth_info”가 ‘1’일 경우에는 부호화 블록의 깊이(depth)가 ‘1’ 이상인 경우(가장 큰 크기의 부호화 블록을 제외한 부호화 블록 크기들)에는 해당 방법이 적용될 수 있다.
이러한 “parallel_merge_disabled_depth_info”는 머지를 이용한 화면 간 예측에서 병렬적 머지 프로세싱이 실시 가능한 블록에 관련된 정보의 하나의 예로서 머지를 이용한 화면 간 예측에서 병렬적 머지 프로세싱을 나타내기 위해 다른 구문 요소를 사용할 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
또한, “parallel_merge_enabled_flag”와 같은 정보를 사용하지 않고도 “parallel_merge_disabled_depth_info”만을 사용하여 병렬적 머지 프로세싱이 가능한지 여부에 대한 정보를 나타낼 수도 있다. 예를 들어, “parallel_merge_disabled_depth_info”가 특정한 값에 해당하는 경우, 병렬적 머지 프로세싱이 가능하지 않음을 나타낼 수도 있다. 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
또 다른 예로, log2_parallel_merge_level_minus2를 정의할 수 있다. log2_parallel_merge_level_minus2는 병렬적 머지 프로세싱이 실시 가능한 레벨을 의미한다. 예를 들어, log2_parallel_merge_level_minus2의 값이 ‘0’이면, 병렬적 머지 프로세싱이 실시 가능한 블록(또는 부호화 블록)의 크기가 4x4라는 것을 나타낸다. 4x4 블록이 최소 크기의 부호화 블록이라고 가정할 경우 결국 log2_parallel_merge_level_minus2의 값이 ‘0’이면 병렬적 머지 프로세싱이이 실시되지 않는다는 것을 나타낸다. 또 다른 예로서, log2_parallel_merge_level_minus2의 값이 ‘1’이면, 8x8 크기의 블록 내부에 있는 모든 예측블록에 대하여 병렬적인 머지 프로세싱이 실시 가능함을 나타낼 수 있다. 그리고 log2_parallel_merge_level_minus2의 값이 ‘2’이면, 16x16 크기의 블록 내부에 있는 모든 예측 블록에 대하여 병렬적 머지 프로세싱이 실시 가능할 수 있다. 그리고 log2_parallel_merge_level_minus2의 값이 ‘3’이면, 32x32 크기의 블록 내부의 있는 모든 예측 블록에 대하여 병렬적 머지 프로세싱이 실시 가능할 수 있다. 그리고 log2_parallel_merge_level_minus2의 값이 ‘4’이면, 64x64 크기의 블록 내부에 있는 모든 예측 블록에 대하여 병렬적인 머지 프로세싱이 실시 가능할 수 있다. 즉, 이러한 구문 요소를 사용하여 특정한 병렬적 머지 프로세싱이 실시 가능한 블록의 크기를 나타낼 수 있다. 전술한 바와 같이 log2_parallel_merge_level_minus2를 통해 산출된 병렬적 머지 프로세싱이 실시 가능한 블록에 대한 정보와 현재 블록의 정보(예를 들어, 크기 정보)를 함께 사용하여 현재 블록에 포함된 적어도 하나의 예측 블록에 대하여 단일 머지 후보 리스트를 이용한 화면 간 예측이 수행되는지에 대해 알 수 있다. 단일 머지 후보 리스트에 포함되는 공간적 머징 후보를 산출하기 위해 부호화 블록을 기준으로 산출된 공간적 머징 후보 블록이 상기 병렬적 머지 프로세스가 실시 가능한 블록의 내부에 위치하는지 여부를 판단할 수 있다. 예를 들어, 상기 병렬적 머지 프로세스가 실시 가능한 블록이 8x8 크기의 블록이고 현재 부호화 블록의 크기가 8x8인 경우를 가정하면, 부호화 블록과 상기 부호화 블록을 기준으로 산출된 공간적 머징 후보 블록이 동일한 병렬적 머지 프로세스가 실시 가능한 블록의 내부에 위치하는 경우, 공간적 머징 후보 블록을 가용하지 않은 공간적 머징 후보로 판단할 수 있다. 즉, 부호화 블록과 상기 부호화 블록을 기준으로 산출된 공간적 머징 후보 블록이 서로 다른 병렬적 머지 프로세스가 실시 가능한 블록에 위치하는 경우 해당 공간적 머징 후보 블록을 공간적 머징 후보를 유도하는 데에 사용할 수 있다.
이하의 본 발명의 실시예에서는 본 발명의 또 다른 실시예에 따른 단일 후보 리스트를 이용하여 하나의 부호화 블록에서 분할된 예측 블록들에 대하여 병렬적으로 부호화 또는 복호화를 수행하는 방식에 대해 설명한다. 이 방식에서는 부호화 블록 내의 여러 개의 예측 블록들에 대하여 일부의 공간적 후보를 공유하여 단일 머징 후보 리스트를 생성할 수 있다.
일부의 공간적 후보를 공유함에 있어서도 부호화 블록 내의 모든 예측 블록들의 공간적 머징 후보 블록의 탐색 위치를 항상 부호화 블록의 외부 위치가 되도록 함으로서 부호화 블록 내의 예측 블록에서 병렬적으로 화면 간 예측을 수행하도록 할 수 있다. 또는, 블록의 분할 형태에 따라 고정된 위치에 존재하는 공간적 머징 후보 블록을 사용하여 머징 후보 리스트를 생성할 수도 있다.
예를 들어 머지를 사용한 화면 간 예측에 있어서 일부의 공간적 머징 후보를 각각의 예측 블록들이 공유함으로서 머징 후보를 산출하는 과정의 복잡도를 감소시킬 수 있다.
예를 들어, 예측 블록의 공간적 머징 후보 블록의 탐색 위치를 부호화 블록의 외부 위치로 선택함에 있어, 세로 방향(예를 들어, Nx2N 형태)으로 분할된 예측 블록들간에는 부호화 블록의 외부 위치 중 좌측 위치의 공간적 머징 후보 블록을 공유하도록 할 수 있다. 가로 방향(예를 들어, 2NxN 형태)으로 분할된 예측 블록들 간에는 부호화 블록의 외부 위치 중 상측 위치의 공간적 머징 후보 블록을 공유하도록 할 수 있다. 즉, 머징 후보를 공유하지 않는 방식보다 공간적 머징 후보 유도 회수를 상당히 줄일 수 있다.
다음은 도면을 이용하여 이러한 방식의 실시예를 보다 구체적으로 설명한다.
이하의 실시예에서는 머지를 사용한 화면 간 예측을 사용할 경우를 가정하여 설명하지만, 후술할 방법들은 AMVP를 이용한 화면 간 예측에도 사용될 수 있다. 이하의 머지 방법에서 사용하는 공간적 머징 후보 블록 및 시간적 머징 후보 블록들은 AMVP에서는 예측 블록에 대한 움직임 벡터 예측 후보 리스트를 구성하기 위한 복수의 예측 블록으로 공간적 후보 예측 블록과 시간적 후보 예측 블록으로 해석할 수 있다.
이하 본 발명의 실시예에서 분할된 블록의 분할 인덱스를 사용하여 구분할 수 있다. 분할 인덱스가 0인 경우 제1 예측 블록, 분할 인덱스가 1인 경우 제2 예측 블록이 될 수 있다.
도 16은 본 발명의 실시예에 따른 머징 후보 리스트 생성 방법을 나타낸 개념도이다.
도 16(A)는 Nx2N 형태의 예측 블록으로 부호화 블록을 분할한 경우를 나타낸 것으로서 제1 예측 블록(1600)의 경우, 제1 예측 블록(1600)의 위치를 기준으로 공간적 머징 후보 블록으로 A0 블록(1605), A1 블록(1610), B0 블록(1615), B1 블록(1620), B2 블록(1625)을 사용하여 머징 후보 리스트를 생성할 수 있다.
하지만, 제2 예측 블록(1650)의 경우, 제2 예측 블록의 위치를 기준으로 공간적 머징 후보 블록을 유도할 경우, 공간적 머징 후보 블록 중 일부의 블록인 A0 블록(1630)과 A1 블록(1635)이 제1 예측 블록에 포함되는 위치에 존재하거나 아직 부호화되지 않은 부호화 블록의 위치에 포함될 수 있다. 공간적 머징 후보 블록이 이러한 위치에 존재하는 경우, 제1 예측 블록(1600)과 제2 예측 블록(1650)에 대한 머징을 이용한 화면 간 예측이 병렬적으로 수행될 수 없다. 따라서 공간적 머징 후보 블록으로 사용되는 A0 블록(1630)과 A1 블록(1635)의 위치를 부호화 블록의 외부에 위치한 블록 위치인 A0’ 블록(1605) 및 A1’ 블록(1610)으로 변경하여 제2 예측 블록(1650)에 대한 머징 후보 리스트를 산출하여 머징을 이용한 화면 간 예측을 수행할 수 있다. A0’ 블록(1605) 및 A1’ 블록(1610)은 제1 예측 블록(1600)의 공간적 머징 후보 블록 위치와 동일한 위치가 될 수 있다.
도 16(B)는 2NxN 형태의 예측 블록으로 부호화 블록을 분할한 경우를 나타낸 것으로서 제1 예측 블록(1660)의 경우, 제1 예측 블록(1660)의 위치를 기준으로 공간적 머징 후보 블록으로 A0 블록(1665), A1 블록(1667), B0 블록(1673), B1 블록(1675), B2 블록(1679)을 사용하여 머징 후보 리스트를 생성할 수 있다.
하지만, 제2 예측 블록(1690)의 경우, 제2 예측 블록(1690)의 위치를 기준으로 공간적 머징 후보 블록을 산출할 경우, 공간적 머징 후보 블록 중 일부의 블록인 B0 블록(1685)과 B1 블록(1687)이 제1 예측 블록(1660)에 포함되는 위치에 존재하거나 아직 부호화되지 않은 부호화 블록의 위치에 포함될 수 있다. 블록이 이러한 위치에 존재하는 경우, 제1 예측 블록(1660)과 제2 예측 블록(1690)에 대한 머징을 이용한 화면 간 예측이 병렬적으로 수행될 수 없다. 따라서 B0 블록(1685)과 B1 블록(1687)의 위치를 부호화 블록의 외부에 위치한 블록 위치인 B0’ 블록(1673) 및 B1’ 블록(1675)으로 변경하여 제2 예측 블록(1690)에 대한 머징 후보 리스트를 산출하여 머징을 이용한 화면 간 예측을 수행할 수 있다. B0’ 블록(1673) 및 B1’ 블록(1675)은 제1 예측 블록(1660)이 사용하는 공간적 머징 후보 블록의 위치일 수 있다.
공간적 머징 후보 블록의 위치를 변경하기 위해서 현재 블록(예측 대상 블록)과 현재 블록의 공간적 머징 후보 블록이 동일한 병렬적 머지 프로세싱이 실시 가능한 블록에 포함되는지 여부를 판단할 수 있다. 판단 결과, 현재 블록(예측 대상 블록)과 현재 블록의 공간적 머징 후보가 동일한 병렬적 머지 프로세싱이 실시 가능한 블록에 포함되는 경우 해당 블록을 가용하지 않은 것으로 설정하여 머징 후보 리스트를 구성하는데 사용하지 않을 수 있다. 가용하지 않은 블록은 다른 블록으로 대체되어 공간적 머징 후보를 산출할 수 있다.
도 17은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보의 위치를 나타낸 개념도이다.
도 17을 참조하면, 블록의 분할 형태에 따라서 서로 다른 위치의 공간적 머징 후보 블록을 유도하여 공간적 머지 후보를 산출할 수 있다. 즉, 모든 예측 블록의 공간적 머징 후보 블록의 위치를 이미 부호화가 완료된 부호화 블록의 외부에 위치하도록 함으로서 하나의 부호화 블록에서 분할된 복수의 예측 블록에 대하여 병렬적으로 머지를 이용한 화면 간 예측이 수행되도록 할 수 있다. 또한, 공간적 머징 후보를 유도하기 위한 일부의 공간적 머징 후보 블록을 공유함으로서 머징 후보 리스트를 유도하기 위한 과정의 복잡도를 줄일 수 있다.
도 18은 본 발명의 실시예에 따른 머징 후보 리스트 생성 방법을 나타낸 개념도이다.
도 18(A)는 Nx2N 형태의 예측 블록으로 부호화 블록을 분할한 경우를 나타낸 것으로서 제1 예측 블록(1800)의 경우, 제1 예측 블록(1800)의 위치를 기준으로 공간적 머징 후보 블록으로 A0 블록(1805), A1 블록(1810), B0 블록(1815), B1 블록(1820), B2 블록(1825)을 사용하여 머징 후보 리스트를 생성할 수 있다.
하지만, 제2 예측 블록(1850)의 경우, 제2 예측 블록(1850)이 포함된 부호화 블록의 위치를 기준으로 공간적 머징 후보 블록을 산출할 수 있다. 제2 예측 블록(1850)을 기준으로 공간적 머징 후보 블록을 산출할 경우 제1 예측 블록(1800)과 제2 예측 블록(1850)에 대한 머징을 이용한 화면 간 예측이 병렬적으로 수행될 수 없다. 따라서, 제2 예측 블록(1850)이 포함된 부호화 블록의 외부에 위치한 이미 부호화 또는 복호화가 수행된 블록 위치에 존재하는 블록(1805, 1810, 1830, 1835, 1825)을 공간적 머징 후보 블록으로 사용하여 머징 후보 리스트를 산출할 수 있다.
도 18(B)는 2NxN 형태의 예측 블록으로 부호화 블록을 분할한 경우를 나타낸 것으로서 제1 예측 블록(1860)의 경우, 제1 예측 블록(1860)의 위치를 기준으로 공간적 머징 후보 블록으로 A0 블록(1865), A1 블록(1870), B0 블록(1875), B1 블록(1880), B2 블록(1885)을 사용하여 머징 후보 리스트를 생성할 수 있다.
하지만, 제2 예측 블록(1895)의 경우 부호화 블록의 외부에 위치한 이미 부호화 또는 복호화가 수행된 블록 위치에 존재하는 블록을 공간적 머징 후보 블록(1887, 1889, 1875, 1880, 1885)으로 변경하여 제2 예측 블록에 대한 머징 후보 리스트를 산출하여 머징을 이용한 화면 간 예측을 수행할 수 있다.
도 19은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보 블록의 위치를 나타낸 개념도이다.
도 19를 참조하면, 블록의 분할 형태에 따라서 서로 다른 위치의 공간적 머징 후보 블록을 산출하여 사용할 수 있다. 즉, 모든 예측 블록의 공간적 머징 후보 블록을 이미 부호화가 완료된 부호화 블록의 외부에 위치하도록 함으로서 하나의 부호화 블록에서 분할된 복수의 예측 블록에 대하여 병렬적으로 머지를 이용한 화면 간 예측이 수행되도록 할 수 있다.
도 20은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보 블록의 위치를 나타낸 개념도이다.
도 20(A)를 참조하면, 가로 방향으로 분할된 형태(2NxnU, 2NxnD, 2NxN)에 대하여 제2 예측 블록에 대하여 동일한 위치의 공간적 머징 후보 블록인 A0 블록, A1 블록, B0 블록, B1 블록 및 B2 블록을 사용함으로써 분할 형태에 상관없이 동일한 위치의 공간적 머징 후보 블록을 사용할 수 있다.
도 20(B)를 참조하면, 세로 방향으로 분할된 형태(nLx2N, nRx2N, Nx2N)의 경우, 제2 예측 블록에 대하여 동일한 위치의 공간적 머징 후보 블록인 A0 블록, A1 블록, B0 블록, B1 블록, B2 블록을 사용함으로서 분할 형태에 상관없이 동일한 위치의 공간적 머징 후보 블록을 사용할 수 있다.
도 20에서의 고정된 위치는 하나의 부호화 블록에서 고정된 위치의 공간적 머징 후보 블록을 사용하는 것을 나타내는 하나의 예시이다. 즉, 고정된 공간적 머징 후보 블록의 위치는 변할 수 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
도 21은 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보 블록의 위치를 나타낸 개념도이다.
도 21을 참조하면, 특정 크기의 부호화 블록이 복수개의 부호화 블록으로 분할될 경우를 나타낸 개념도이다. 특정 크기의 블록을 기준으로 동일한 머징 후보 리스트를 공유할 경우, 공간적 머징 후보 블록은 특정 크기의 블록의 위치를 기준으로 유도될 수 있고 산출된 공간적 머징 후보로부터 산출된 공간적 머징 후보를 사용하여 단일 머징 후보 리스트를 구성할 수 있다. 특정 크기의 블록에 포함된 부호화 블록 중 좌측 상단에 위치한 부호화 블록의 경우 해당 부호화 블록을 기준으로 공간적 머징 후보 블록을 산출하여도 모두 이미 부호화가 수행된 위치에 존재하기 때문에 좌측 상단에 위치한 부호화 블록만은 다른 머징 후보 리스트를 생성하여 사용할 수 있다.
도 21을 참조하면, 특정 크기의 블록에 포함된 예측 블록들 중 좌측 상단에 위치한 부호화 블록(2100)에 포함되는 예측 블록을 제외한 나머지 예측 블록들은 특정한 크기의 블록 위치를 기준으로 산출된 동일한 공간적 머징 후보 블록(A0, A1, B0, B1, B2)를 공유할 수 있다.
하지만, 특정 크기의 블록들 중 좌측 상단에 위치한 부호화 블록(2100)의 경우, 해당 부호화 블록을 기준으로 산출된 공간적 머징 후보 블록을 사용하여 머지를 이용한 화면 간 예측을 수행할 수 있다. 왜냐하면, 좌측 상단에 위치한 부호화 블록(2100)의 경우 해당 블록을 기준으로 산출한 공간적 머징 후보 블록이 모두 가용한 위치에 존재하기 때문에 좌측 상단에 위치한 부호화 블록은 자신의 위치를 기준으로 유도된 공간적 머징 후보 블록으로부터 산출된 공간적 머징 후보를 사용하여 화면 간 예측을 수행할 수 있다.
시간적 머징 후보는 공간적 머징 후보와 마찬가지로 특정한 크기의 블록 위치를 기준으로 산출될 수 있다. 시간적 머징 후보는 H0 블록, H1블록, H2 블록, H3 블록, H4 블록의 순서로 가용한 블록을 판단하여 가용한 블록을 머징 후보 리스트에 포함시켜 사용할 수 있다. 시간적인 머징 후보는 참조 픽쳐의 픽쳐 번호에 따라 스케일되어 사용될 수 있다. 시간적인 머징 후보는 도 21에 대응되는 블록(X’)의 경계에 위치한 블록들뿐만 아니라 내부에 위치한 블록(M, N, O, P, Q)들도 이용할 수 있다.
도 22는 본 발명의 실시예에 따른 본 발명의 실시예에 따른 부호화 블록의 분할 형태에 따른 공간적 머징 후보 블록의 위치를 나타낸 개념도이다.
도 22에서는 특정 블록의 크기를 기준으로 공간적 머징 후보를 산출할 때 공간적 머징 후보 블록과 거리가 먼 부호화 블록의 경우, 특정 블록의 크기를 기준으로 유도된 공간적 머징 후보 블록으로부터 산출된 공간적 머징 후보를 사용하지 않고 시간적 머징 후보만을 사용하여 머징 후보 리스트를 생성하는 방법을 나타낸 개념도이다.
도 22을 참조하면, 예를 들어, 1(2200)로 지시된 크기에 포함되는 블록들에 대하여 시간적 머징 후보만을 사용하여 머징 후보 리스트를 생성할 수 있다. 즉, 특정한 지시자에 의해 시간적 후보만을 사용하여 머징 후보 리스트를 생성하는 블록 단위를 지시할 수 있다.
시간적 머징 후보는 H0 블록, H1블록, H2 블록, H3 블록, H4 블록의 순서로 가용한 블록을 판단하여 가용한 블록을으로부터 산출된 시간적 머징 후보를 머징 후보 리스트에 포함시켜 사용할 수 있다. 시간적인 머징 후보에서 산출된 움직임 벡터는 참조 픽쳐의 픽쳐 번호에 따라 스케일되어 사용될 수 있다. 시간적인 머징 후보는 도 22에 대응되는 블록(X’)의 경계에 위치한 블록들뿐만 아니라 내부에 위치한 블록(M, N, O, P, Q)들도 이용할 수 있다.
전술한 방법들은 모두 부호화 블록 크기 혹은 부호화 블록의 깊이 등에 따라 적용 범위를 달리할 수 있다. 이렇게 적용 범위를 결정하는 변수(즉, 블록의 크기 또는 블록의 깊이 정보)는 부호화기 및 복호화기가 미리 정해진 값을 사용하도록 설정할 수도 있고, 영상 부호화 방법의 프로파일 또는 레벨에 따라 정해진 값을 사용하도록 할 수 도 있다. 또한, 부호화기가 변수 값을 비트스트림에 기재하면 복호화기는 비트스트림으로부터 이 값을 구하여 사용할 수도 있다.
부호화 블록의 깊이에 따라 적용 범위를 달리하는 할 때는 아래 표 6에 예시한 바와 같이, 방식A) 주어진 깊이 이상의 깊이에만 적용하는 방식, 방식B) 주어진 깊이 이하에만 적용하는 방식, 방식C) 주어진 깊이에만 적용하는 방식이 있을 수 있다.
표 6은 주어진 부호화 블록의 깊이가 2인 경우, 본 발명의 방식A), 방식B), 또는 방식C)를 적용하는 범위 결정 방법의 예를 나타낸 것이다. (O: 해당 깊이에 적용, X: 해당 깊이에 적용하지 않음.)
<표 6>
모든 깊이에 대하여 본 발명의 방법들을 적용하지 않는 경우는 전술한 표 2~표 5에 예시한 parallel_merge_enabled_flag와 같은 지시자를 사용하여 나타낼 수도 있고, 적용되는 깊이 정보를 나타내는 구문 요소에 해당 정보를 포함하여 전송할 수도 있다. 부호화 블록의 깊이의 최대값보다 하나 더 큰 값을 적용 범위를 나타내는 부호화 블록의 깊이값으로 시그널링함으로서 표현할 수도 있다.
도 23은 본 발명의 실시예에 따른 단일 후보 리스트 생성 방법을 사용할 경우 복수의 예측 블록이 병렬적으로 부호화 및 복호화되는 과정을 나타낸 개념도이다.
도 23(A)에서는 하나의 부호화 블록이 두 개의 예측 블록으로 분할된 경우를 가정한다. 예를 들어, 부호화 블록이 특정한 조건을 만족할 경우, 부호화 블록에 포함된 두 개의 예측 블록은 단일 머지 후보 리스트를 사용하여 병렬적으로 머지 프로세싱이 실시 가능할 수 있다. 예를 들어, 부호화 블록의 크기가 특정한 값이고 병렬적 머지 프로세싱이 실시 가능한 블록 크기에 포함되는 경우, 부호화 블록을 기준으로 공간적 머징 후보 및 시간적 머징 후보를 산출하여 머지를 이용한 화면 간 예측을 수행할 수 있다. 이러한 방법은 다양한 형태의 블록에서 적용될 수 있다.
도 23(B)는 다양한 형태로 분할된 부호화 블록에 대해 단일 머지 후보 리스트를 사용하여 부호화를 수행하는 것을 나타낸다. 하나의 부호화 블록은 도시된 바와 같이 여러 가지 형태의 블록으로 분할될 수 있다. 분할된 예측 블록들은 머지 후보 리스트를 공유할 수 있고, 공유되는 머지 후보 리스트를 사용하여 병렬적으로 머지를 이용한 화면 간 예측을 수행할 수 있다. 즉, 하나의 부호화 블록에 포함된 복수의 예측 블록에 대해 병렬적인 부호화가 가능하다. 이러한 방법은 복호화 단계에서도 적용될 수 있다.
이러한 방법을 사용함으로서 각각의 예측 블록에 대해 머지 후보 리스트를 생성함으로서 발생하는 복잡도를 감소시킬 수 있고, 영상 처리 속도 또한 증가시킬 수 있다. 향후 UHDTV와 같은 해상도(resolution)가 높은 영상의 경우, 영상 처리를 수행함에 있어 병렬적 처리가 중요한데, 본 발명에서 개시된 방법을 사용함으로 병렬적인 영상 처리가 가능하다.
이상에서 설명한 영상 부호화 및 영상 복호화 방법은 도 1 및 도 2에서 전술한 각 영상 부호화기 및 영상 복호화기 장치의 각 구성부에서 구현될 수 있다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
Claims (1)
- 병렬적 머지 프로세싱이 가능한 레벨을 나타내는 병렬 머지 레벨 정보에 기반하여, 부호화 블록을 기준으로 공간적 머지 후보 및 시간적 머지 후보 중 적어도 하나의 머지 후보를 유도하는 단계; 및
상기 머지 후보를 기초로 상기 부호화 블록 내 예측 블록에 대한 단일 머지 후보 리스트를 생성하는 단계를 포함하는 영상 복호화 방법.
Applications Claiming Priority (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110115607 | 2011-11-08 | ||
KR20110115607 | 2011-11-08 | ||
KR20110116527 | 2011-11-09 | ||
KR1020110116527 | 2011-11-09 | ||
KR1020110121428 | 2011-11-21 | ||
KR20110121428 | 2011-11-21 | ||
KR20110124813 | 2011-11-28 | ||
KR1020110124813 | 2011-11-28 | ||
KR1020110140861 | 2011-12-23 | ||
KR20110140861 | 2011-12-23 | ||
KR1020120011412 | 2012-02-03 | ||
KR20120011412 | 2012-02-03 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120126369A Division KR101615662B1 (ko) | 2011-11-08 | 2012-11-08 | 영상 복호화 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140099430A true KR20140099430A (ko) | 2014-08-12 |
KR101651594B1 KR101651594B1 (ko) | 2016-08-26 |
Family
ID=48661129
Family Applications (17)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120126369A KR101615662B1 (ko) | 2011-11-08 | 2012-11-08 | 영상 복호화 방법 및 장치 |
KR1020140087710A KR101651595B1 (ko) | 2011-11-08 | 2014-07-11 | 영상 복호화 방법 및 컴퓨터로 읽을 수 있는 기록 매체 |
KR1020140087709A KR101651594B1 (ko) | 2011-11-08 | 2014-07-11 | 영상 복호화 방법 및 장치 |
KR1020150111494A KR101718886B1 (ko) | 2011-11-08 | 2015-08-07 | 영상 복호화 방법 및 장치 |
KR1020150111493A KR101720622B1 (ko) | 2011-11-08 | 2015-08-07 | 영상 복호화 방법 및 장치 |
KR1020170033796A KR101903602B1 (ko) | 2011-11-08 | 2017-03-17 | 영상 복호화 방법 및 장치 |
KR1020180113847A KR102017165B1 (ko) | 2011-11-08 | 2018-09-21 | 영상 복호화 방법 및 장치 |
KR1020180113846A KR102017164B1 (ko) | 2011-11-08 | 2018-09-21 | 영상 복호화 방법 및 장치 |
KR1020180113845A KR102017163B1 (ko) | 2011-11-08 | 2018-09-21 | 영상 복호화 방법 및 장치 |
KR1020180113848A KR102017166B1 (ko) | 2011-11-08 | 2018-09-21 | 영상 복호화 방법 및 장치 |
KR1020190105089A KR102114036B1 (ko) | 2011-11-08 | 2019-08-27 | 영상 복호화 방법 및 장치 |
KR1020200058786A KR102331195B1 (ko) | 2011-11-08 | 2020-05-18 | 영상 복호화 방법 및 장치 |
KR1020210161302A KR102412641B1 (ko) | 2011-11-08 | 2021-11-22 | 영상 복호화 방법 및 장치 |
KR1020210161301A KR102412640B1 (ko) | 2011-11-08 | 2021-11-22 | 영상 복호화 방법 및 장치 |
KR1020210161303A KR102412642B1 (ko) | 2011-11-08 | 2021-11-22 | 영상 복호화 방법 및 장치 |
KR1020220075137A KR102559003B1 (ko) | 2011-11-08 | 2022-06-20 | 영상 복호화 방법 및 장치 |
KR1020220075138A KR102559004B1 (ko) | 2011-11-08 | 2022-06-20 | 영상 복호화 방법 및 장치 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120126369A KR101615662B1 (ko) | 2011-11-08 | 2012-11-08 | 영상 복호화 방법 및 장치 |
KR1020140087710A KR101651595B1 (ko) | 2011-11-08 | 2014-07-11 | 영상 복호화 방법 및 컴퓨터로 읽을 수 있는 기록 매체 |
Family Applications After (14)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150111494A KR101718886B1 (ko) | 2011-11-08 | 2015-08-07 | 영상 복호화 방법 및 장치 |
KR1020150111493A KR101720622B1 (ko) | 2011-11-08 | 2015-08-07 | 영상 복호화 방법 및 장치 |
KR1020170033796A KR101903602B1 (ko) | 2011-11-08 | 2017-03-17 | 영상 복호화 방법 및 장치 |
KR1020180113847A KR102017165B1 (ko) | 2011-11-08 | 2018-09-21 | 영상 복호화 방법 및 장치 |
KR1020180113846A KR102017164B1 (ko) | 2011-11-08 | 2018-09-21 | 영상 복호화 방법 및 장치 |
KR1020180113845A KR102017163B1 (ko) | 2011-11-08 | 2018-09-21 | 영상 복호화 방법 및 장치 |
KR1020180113848A KR102017166B1 (ko) | 2011-11-08 | 2018-09-21 | 영상 복호화 방법 및 장치 |
KR1020190105089A KR102114036B1 (ko) | 2011-11-08 | 2019-08-27 | 영상 복호화 방법 및 장치 |
KR1020200058786A KR102331195B1 (ko) | 2011-11-08 | 2020-05-18 | 영상 복호화 방법 및 장치 |
KR1020210161302A KR102412641B1 (ko) | 2011-11-08 | 2021-11-22 | 영상 복호화 방법 및 장치 |
KR1020210161301A KR102412640B1 (ko) | 2011-11-08 | 2021-11-22 | 영상 복호화 방법 및 장치 |
KR1020210161303A KR102412642B1 (ko) | 2011-11-08 | 2021-11-22 | 영상 복호화 방법 및 장치 |
KR1020220075137A KR102559003B1 (ko) | 2011-11-08 | 2022-06-20 | 영상 복호화 방법 및 장치 |
KR1020220075138A KR102559004B1 (ko) | 2011-11-08 | 2022-06-20 | 영상 복호화 방법 및 장치 |
Country Status (7)
Country | Link |
---|---|
US (16) | US9516334B2 (ko) |
EP (2) | EP2779649A4 (ko) |
JP (14) | JP5969041B2 (ko) |
KR (17) | KR101615662B1 (ko) |
CN (11) | CN110446038B (ko) |
RU (4) | RU2632154C1 (ko) |
WO (1) | WO2013070001A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11627319B2 (en) | 2018-02-22 | 2023-04-11 | Lg Electronics Inc. | Image decoding method and apparatus according to block division structure in image coding system |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
PL2624873T3 (pl) | 2010-10-06 | 2020-12-14 | President And Fellows Of Harvard College | Nadające się do wstrzykiwania hydrożele tworzące pory do terapii komórkowych opartych na materiałach |
PL2755389T3 (pl) | 2011-09-09 | 2019-06-28 | Lg Electronics Inc. | Sposób predykcji inter i urządzenie do niego |
MX2013008349A (es) * | 2011-09-23 | 2013-11-04 | Kt Corp | Metodo para inducir un bloque candidato de combinacion y dispositivo que usa el mismo. |
CN110446038B (zh) | 2011-11-08 | 2022-01-04 | 韩国电子通信研究院 | 用于共享候选者列表的方法和装置 |
JP5835208B2 (ja) * | 2011-12-28 | 2015-12-24 | 株式会社Jvcケンウッド | 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム |
JP5842803B2 (ja) * | 2011-12-28 | 2016-01-13 | 株式会社Jvcケンウッド | 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム |
CN110545421B (zh) * | 2012-10-12 | 2022-11-22 | 韩国电子通信研究院 | 图像编码/解码方法和使用其的装置 |
KR102179383B1 (ko) * | 2013-08-09 | 2020-11-16 | 삼성전자주식회사 | 병합 모드 결정 방법 및 장치 |
JP6574976B2 (ja) * | 2014-03-18 | 2019-09-18 | パナソニックIpマネジメント株式会社 | 動画像符号化装置および動画像符号化方法 |
CN108632629B9 (zh) | 2014-03-19 | 2021-06-15 | 株式会社Kt | 针对多视图视频信号生成合并候选列表的方法及解码装置 |
JP6569665B2 (ja) * | 2014-03-25 | 2019-09-04 | 株式会社ソシオネクスト | 画像復号装置、画像復号方法、及び集積回路 |
KR102647887B1 (ko) | 2014-10-31 | 2024-03-14 | 삼성전자주식회사 | 움직임 벡터 부복호화 방법 및 장치 |
EP3254338B1 (en) | 2015-02-03 | 2021-10-20 | Amphenol FCI Asia Pte Ltd | Electrical contact |
JP6962193B2 (ja) | 2015-07-10 | 2021-11-05 | 日本電気株式会社 | 動画像符号化装置、動画像符号化方法および動画像符号化プログラムを記憶する記録媒体 |
WO2017043734A1 (ko) * | 2015-09-07 | 2017-03-16 | 엘지전자(주) | 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 |
US20170085886A1 (en) * | 2015-09-18 | 2017-03-23 | Qualcomm Incorporated | Variable partition size for block prediction mode for display stream compression (dsc) |
US10560718B2 (en) | 2016-05-13 | 2020-02-11 | Qualcomm Incorporated | Merge candidates for motion vector prediction for video coding |
WO2017220163A1 (en) | 2016-06-24 | 2017-12-28 | Huawei Technologies Co., Ltd. | Devices and methods for video coding using segmentation based partitioning of video coding blocks |
CN116708781A (zh) | 2016-07-12 | 2023-09-05 | 韩国电子通信研究院 | 图像编码/解码方法以及用于该方法的记录介质 |
CN109644267B (zh) * | 2016-08-03 | 2023-07-04 | 株式会社Kt | 视频信号处理方法和装置 |
CN116866570A (zh) * | 2016-10-04 | 2023-10-10 | 株式会社Kt | 用于处理视频信号的方法和装置 |
KR20190052128A (ko) * | 2016-10-04 | 2019-05-15 | 김기백 | 영상 데이터 부호화/복호화 방법 및 장치 |
JP2019535202A (ja) * | 2016-10-06 | 2019-12-05 | エルジー エレクトロニクス インコーポレイティド | インター予測モードベースの画像処理方法及びそのための装置 |
US10484703B2 (en) | 2017-02-07 | 2019-11-19 | Mediatek Inc. | Adapting merge candidate positions and numbers according to size and/or shape of prediction block |
US11330269B2 (en) | 2017-09-27 | 2022-05-10 | Nec Corporation | Moving image coding device, moving image coding method and moving image coding program |
CN118175293A (zh) | 2017-09-29 | 2024-06-11 | Lx 半导体科技有限公司 | 图像编码方法、图像解码方法、存储介质和发送方法 |
KR20190044533A (ko) * | 2017-10-20 | 2019-04-30 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
US10812810B2 (en) * | 2018-02-06 | 2020-10-20 | Tencent America LLC | Method and apparatus for video coding in merge mode |
CN118118660A (zh) * | 2018-03-19 | 2024-05-31 | 株式会社Kt | 对图像进行解码或编码的方法以及非暂态计算机可读介质 |
US10397603B1 (en) * | 2018-05-08 | 2019-08-27 | Tencent America LLC | Method and apparatus for video coding |
KR20190133629A (ko) * | 2018-05-23 | 2019-12-03 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
CN118900330A (zh) | 2018-05-24 | 2024-11-05 | 株式会社Kt | 对视频进行解码和编码的方法以及用于发送压缩视频数据的装置 |
WO2020004979A1 (ko) * | 2018-06-27 | 2020-01-02 | 디지털인사이트주식회사 | 영상 부호화/복호화 방법 및 장치 |
EP3791588A1 (en) | 2018-06-29 | 2021-03-17 | Beijing Bytedance Network Technology Co. Ltd. | Checking order of motion candidates in lut |
TWI731360B (zh) * | 2018-06-29 | 2021-06-21 | 大陸商北京字節跳動網絡技術有限公司 | 查找表的使用條件 |
SG11202013028PA (en) | 2018-06-29 | 2021-01-28 | Beijing Bytedance Network Technology Co Ltd | Interaction between lut and amvp |
JP7100200B2 (ja) | 2018-06-29 | 2022-07-12 | 北京字節跳動網絡技術有限公司 | マージ/amvpにhmvp候補を追加する際の一部/全部プルーニング |
KR20210025537A (ko) | 2018-06-29 | 2021-03-09 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 하나 또는 다수의 룩업 테이블들을 사용하여 이전에 코딩된 모션 정보를 순서대로 저장하고 이를 사용하여 후속 블록들을 코딩하는 개념 |
CN110662057B (zh) | 2018-06-29 | 2022-06-21 | 北京字节跳动网络技术有限公司 | 视频处理方法、装置、设备以及存储比特流的方法 |
SG11202012293RA (en) | 2018-06-29 | 2021-01-28 | Beijing Bytedance Network Technology Co Ltd | Update of look up table: fifo, constrained fifo |
KR102660666B1 (ko) | 2018-06-29 | 2024-04-26 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | Lut들을 업데이트하기 위한 조건들 |
CN118870022A (zh) | 2018-06-29 | 2024-10-29 | 株式会社Kt | 解码视频和编码视频的方法以及用于传送压缩视频数据的设备 |
EP3815376A1 (en) | 2018-07-02 | 2021-05-05 | Beijing Bytedance Network Technology Co. Ltd. | Luts with intra prediction modes and intra mode prediction from non-adjacent blocks |
KR20200008531A (ko) * | 2018-07-16 | 2020-01-28 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
US11019357B2 (en) * | 2018-08-07 | 2021-05-25 | Qualcomm Incorporated | Motion vector predictor list generation |
EP3831062A4 (en) | 2018-08-17 | 2022-07-06 | HFI Innovation Inc. | SIMPLIFIED SUBMODE METHOD AND APPARATUS FOR VIDEO CODING |
US11245922B2 (en) * | 2018-08-17 | 2022-02-08 | Mediatek Inc. | Shared candidate list |
US10958932B2 (en) | 2018-09-12 | 2021-03-23 | Qualcomm Incorporated | Inter-prediction coding of video data using generated motion vector predictor list including non-adjacent blocks |
GB2590310B (en) | 2018-09-12 | 2023-03-22 | Beijing Bytedance Network Tech Co Ltd | Conditions for starting checking HMVP candidates depend on total number minus K |
CN112689998B (zh) * | 2018-09-17 | 2023-12-01 | 寰发股份有限公司 | 在视频编解码系统中处理视频数据的方法和装置 |
EP3857888A4 (en) * | 2018-10-06 | 2022-08-03 | HFI Innovation Inc. | METHOD AND APPARATUS FOR AN AREA OF A SHARED MERGER CANDIDATE LIST FOR ENABLING VIDEO CODING |
CN118694932A (zh) | 2018-12-28 | 2024-09-24 | 三星电子株式会社 | 用于对运动矢量差进行编码的方法和设备以及用于对运动矢量差进行解码的方法和设备 |
CN113273186A (zh) | 2019-01-10 | 2021-08-17 | 北京字节跳动网络技术有限公司 | Lut更新的调用 |
WO2020143824A1 (en) | 2019-01-13 | 2020-07-16 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between lut and shared merge list |
CN113330739A (zh) | 2019-01-16 | 2021-08-31 | 北京字节跳动网络技术有限公司 | Lut中的运动候选的插入顺序 |
MX2021008916A (es) | 2019-02-01 | 2021-08-24 | Beijing Bytedance Network Tech Co Ltd | Interacciones entre reformacion en bucle y herramientas de intercodificacion. |
CA3120795A1 (en) | 2019-03-04 | 2020-09-10 | Huawei Technologies Co., Ltd. | An encoder, a decoder and corresponding methods using ibc merge list |
CN113574889B (zh) | 2019-03-14 | 2024-01-12 | 北京字节跳动网络技术有限公司 | 环路整形信息的信令和语法 |
WO2020192611A1 (en) | 2019-03-22 | 2020-10-01 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between merge list construction and other tools |
WO2020192612A1 (en) | 2019-03-23 | 2020-10-01 | Beijing Bytedance Network Technology Co., Ltd. | Default in-loop reshaping parameters |
US11218727B2 (en) | 2019-07-11 | 2022-01-04 | Tencent America LLC | Method and apparatus for predictor candidate list size signaling for intra picture block compensation |
CN112565789B (zh) * | 2019-11-13 | 2021-09-17 | 腾讯科技(深圳)有限公司 | 视频解码及编码方法、装置、计算机可读介质及电子设备 |
US11778169B2 (en) * | 2019-12-27 | 2023-10-03 | Electronics And Telecommunications Research Institute | Method, apparatus and storage medium for image encoding/decoding using reference picture |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070117432A (ko) * | 2006-06-08 | 2007-12-12 | 경희대학교 산학협력단 | 다시점 비디오 코딩에서의 움직임 벡터 예측 방법 및 이를이용한 다시점 영상의 부호화/복호화 방법 및 장치 |
KR20140057683A (ko) * | 2011-08-29 | 2014-05-13 | 주식회사 아이벡스피티홀딩스 | 머지 모드에서 영상 부호화 방법 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040001546A1 (en) * | 2002-06-03 | 2004-01-01 | Alexandros Tourapis | Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation |
KR100987764B1 (ko) | 2003-09-04 | 2010-10-13 | 경희대학교 산학협력단 | 영상 데이터의 예측 부호화를 위한 참조 데이터 유닛 결정방법 및 그 장치 |
CN101026761B (zh) * | 2006-02-17 | 2010-05-12 | 中国科学院自动化研究所 | 一种具有最小误差的快速变尺寸块匹配的运动估计方法 |
KR101037421B1 (ko) * | 2006-05-17 | 2011-05-30 | 후지쯔 가부시끼가이샤 | 화상 데이터 압축 장치, 압축 방법 및 프로그램을 기록한 기록 매체 및 화상 데이터 복원 장치, 복원 방법 및 프로그램을 기록한 기록 매체 |
CN101617538A (zh) * | 2007-01-08 | 2009-12-30 | 诺基亚公司 | 用于视频编码中扩展空间可分级性的改进层间预测 |
US8322149B2 (en) | 2008-04-01 | 2012-12-04 | Honeywell International Inc. | Method for selecting lubricants for heat pumps |
KR101306834B1 (ko) * | 2008-09-22 | 2013-09-10 | 에스케이텔레콤 주식회사 | 인트라 예측 모드의 예측 가능성을 이용한 영상 부호화/복호화 장치 및 방법 |
CN101686393B (zh) * | 2008-09-28 | 2012-10-17 | 华为技术有限公司 | 应用于模板匹配的快速运动搜索方法及装置 |
WO2010052837A1 (ja) * | 2008-11-10 | 2010-05-14 | パナソニック株式会社 | 画像復号装置、画像復号方法、集積回路及びプログラム |
US20100166073A1 (en) * | 2008-12-31 | 2010-07-01 | Advanced Micro Devices, Inc. | Multiple-Candidate Motion Estimation With Advanced Spatial Filtering of Differential Motion Vectors |
ES2541217T3 (es) | 2009-07-14 | 2015-07-16 | The Scripps Research Institute | Diferenciación de células madre mesenquimales |
CN101610413B (zh) * | 2009-07-29 | 2011-04-27 | 清华大学 | 一种视频的编码/解码方法及装置 |
WO2011051821A2 (en) | 2009-10-30 | 2011-05-05 | Spinx, Inc. | Siphoning as a washing method and apparatus for heterogenenous assays |
US8488007B2 (en) * | 2010-01-19 | 2013-07-16 | Sony Corporation | Method to estimate segmented motion |
CN103025338B (zh) | 2010-05-21 | 2015-01-28 | 株式会社明治 | 用于改善皮肤状态的组合物 |
US9066110B2 (en) * | 2011-03-08 | 2015-06-23 | Texas Instruments Incorporated | Parsing friendly and error resilient merge flag coding in video coding |
WO2012133372A1 (ja) * | 2011-03-31 | 2012-10-04 | テルモ株式会社 | 人工肺 |
US9313494B2 (en) * | 2011-06-20 | 2016-04-12 | Qualcomm Incorporated | Parallelization friendly merge candidates for video coding |
US20130036071A1 (en) | 2011-07-29 | 2013-02-07 | Summerhaven Index Management Llc | Dynamic commodity index methodology |
PL2755389T3 (pl) * | 2011-09-09 | 2019-06-28 | Lg Electronics Inc. | Sposób predykcji inter i urządzenie do niego |
US9736489B2 (en) * | 2011-09-17 | 2017-08-15 | Qualcomm Incorporated | Motion vector determination for video coding |
MX2013008349A (es) * | 2011-09-23 | 2013-11-04 | Kt Corp | Metodo para inducir un bloque candidato de combinacion y dispositivo que usa el mismo. |
US9280835B2 (en) * | 2011-10-18 | 2016-03-08 | Nokia Technologies Oy | Method for coding and an apparatus based on a DC prediction value |
KR20130050407A (ko) * | 2011-11-07 | 2013-05-16 | 오수미 | 인터 모드에서의 움직임 정보 생성 방법 |
KR20130050406A (ko) * | 2011-11-07 | 2013-05-16 | 오수미 | 머지 모드에서의 움직임 정보 생성 방법 |
CN110446038B (zh) * | 2011-11-08 | 2022-01-04 | 韩国电子通信研究院 | 用于共享候选者列表的方法和装置 |
-
2012
- 2012-11-08 CN CN201910308561.0A patent/CN110446038B/zh active Active
- 2012-11-08 US US14/353,615 patent/US9516334B2/en active Active
- 2012-11-08 CN CN201910310770.9A patent/CN110198441B/zh active Active
- 2012-11-08 RU RU2016101103A patent/RU2632154C1/ru active
- 2012-11-08 CN CN201280066431.7A patent/CN104185988B/zh active Active
- 2012-11-08 CN CN201910308479.8A patent/CN110446037B/zh active Active
- 2012-11-08 CN CN201910309236.6A patent/CN110198448B/zh active Active
- 2012-11-08 CN CN201910309527.5A patent/CN110267048B/zh active Active
- 2012-11-08 CN CN201910309201.2A patent/CN110198447B/zh active Active
- 2012-11-08 EP EP12848248.6A patent/EP2779649A4/en not_active Ceased
- 2012-11-08 CN CN201910308974.9A patent/CN110198449B/zh active Active
- 2012-11-08 CN CN201910308821.4A patent/CN110446039B/zh active Active
- 2012-11-08 EP EP21193171.2A patent/EP4009640A1/en active Pending
- 2012-11-08 WO PCT/KR2012/009427 patent/WO2013070001A1/ko active Application Filing
- 2012-11-08 JP JP2014540949A patent/JP5969041B2/ja active Active
- 2012-11-08 CN CN201910309028.6A patent/CN110198450B/zh active Active
- 2012-11-08 KR KR1020120126369A patent/KR101615662B1/ko active IP Right Grant
- 2012-11-08 RU RU2016101101A patent/RU2632155C1/ru active
- 2012-11-08 CN CN201910308563.XA patent/CN109996082B/zh active Active
-
2014
- 2014-07-11 KR KR1020140087710A patent/KR101651595B1/ko active IP Right Grant
- 2014-07-11 KR KR1020140087709A patent/KR101651594B1/ko active IP Right Grant
-
2015
- 2015-08-07 KR KR1020150111494A patent/KR101718886B1/ko active IP Right Grant
- 2015-08-07 KR KR1020150111493A patent/KR101720622B1/ko active IP Right Grant
-
2016
- 2016-01-15 RU RU2016101099A patent/RU2632157C2/ru active
- 2016-01-15 RU RU2016101098A patent/RU2632158C2/ru active
- 2016-05-06 JP JP2016093422A patent/JP6203898B2/ja active Active
- 2016-05-06 JP JP2016093414A patent/JP6208284B2/ja active Active
- 2016-05-06 JP JP2016093417A patent/JP6208285B2/ja active Active
- 2016-05-06 JP JP2016093426A patent/JP6203899B2/ja active Active
- 2016-11-03 US US15/342,721 patent/US9621910B2/en active Active
- 2016-11-03 US US15/342,662 patent/US9621903B2/en active Active
- 2016-11-03 US US15/342,751 patent/US9854249B2/en active Active
- 2016-11-03 US US15/342,690 patent/US9716890B2/en active Active
-
2017
- 2017-03-17 KR KR1020170033796A patent/KR101903602B1/ko active IP Right Grant
- 2017-08-24 JP JP2017161211A patent/JP6553691B2/ja active Active
- 2017-11-15 US US15/814,030 patent/US10038907B2/en active Active
-
2018
- 2018-06-26 US US16/018,405 patent/US10326999B2/en active Active
- 2018-06-26 US US16/018,324 patent/US10326998B2/en active Active
- 2018-06-26 US US16/018,522 patent/US10341666B2/en active Active
- 2018-09-21 KR KR1020180113847A patent/KR102017165B1/ko active IP Right Grant
- 2018-09-21 KR KR1020180113846A patent/KR102017164B1/ko active IP Right Grant
- 2018-09-21 KR KR1020180113845A patent/KR102017163B1/ko active IP Right Grant
- 2018-09-21 KR KR1020180113848A patent/KR102017166B1/ko active IP Right Grant
-
2019
- 2019-04-10 JP JP2019074786A patent/JP6746749B2/ja active Active
- 2019-05-01 US US16/400,445 patent/US10536706B2/en active Active
- 2019-08-27 KR KR1020190105089A patent/KR102114036B1/ko active IP Right Grant
- 2019-11-26 US US16/695,685 patent/US10694191B2/en active Active
- 2019-11-26 US US16/695,666 patent/US10805612B2/en active Active
-
2020
- 2020-05-13 US US15/930,778 patent/US10863181B2/en active Active
- 2020-05-18 KR KR1020200058786A patent/KR102331195B1/ko active IP Right Grant
- 2020-07-29 JP JP2020128422A patent/JP7117352B2/ja active Active
- 2020-07-29 JP JP2020128395A patent/JP7025491B2/ja active Active
- 2020-10-16 US US17/072,925 patent/US11206411B2/en active Active
-
2021
- 2021-11-15 US US17/526,365 patent/US11711523B2/en active Active
- 2021-11-22 KR KR1020210161302A patent/KR102412641B1/ko active IP Right Grant
- 2021-11-22 KR KR1020210161301A patent/KR102412640B1/ko active IP Right Grant
- 2021-11-22 KR KR1020210161303A patent/KR102412642B1/ko active IP Right Grant
-
2022
- 2022-05-17 JP JP2022080949A patent/JP7271768B2/ja active Active
- 2022-06-20 KR KR1020220075137A patent/KR102559003B1/ko active IP Right Grant
- 2022-06-20 KR KR1020220075138A patent/KR102559004B1/ko active IP Right Grant
- 2022-07-07 US US17/859,565 patent/US20220337845A1/en active Pending
- 2022-07-08 JP JP2022110639A patent/JP7358573B2/ja active Active
- 2022-08-05 JP JP2022125802A patent/JP7358582B2/ja active Active
- 2022-08-05 JP JP2022125811A patent/JP7414909B2/ja active Active
-
2023
- 2023-12-28 JP JP2023223658A patent/JP2024038231A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070117432A (ko) * | 2006-06-08 | 2007-12-12 | 경희대학교 산학협력단 | 다시점 비디오 코딩에서의 움직임 벡터 예측 방법 및 이를이용한 다시점 영상의 부호화/복호화 방법 및 장치 |
KR20140057683A (ko) * | 2011-08-29 | 2014-05-13 | 주식회사 아이벡스피티홀딩스 | 머지 모드에서 영상 부호화 방법 |
Non-Patent Citations (1)
Title |
---|
Minhua Zhou, "Parallelized merge/skip mode for HEVC", JCTVC-F069, Torino, IT, 14-22 July, 2011.* * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11627319B2 (en) | 2018-02-22 | 2023-04-11 | Lg Electronics Inc. | Image decoding method and apparatus according to block division structure in image coding system |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101903602B1 (ko) | 영상 복호화 방법 및 장치 | |
KR102558514B1 (ko) | 영상 복호화 방법 및 컴퓨터로 읽을 수 있는 기록 매체 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190725 Year of fee payment: 4 |