KR20110071047A - 비디오 신호 디코딩 방법 및 장치 - Google Patents

비디오 신호 디코딩 방법 및 장치 Download PDF

Info

Publication number
KR20110071047A
KR20110071047A KR1020100126941A KR20100126941A KR20110071047A KR 20110071047 A KR20110071047 A KR 20110071047A KR 1020100126941 A KR1020100126941 A KR 1020100126941A KR 20100126941 A KR20100126941 A KR 20100126941A KR 20110071047 A KR20110071047 A KR 20110071047A
Authority
KR
South Korea
Prior art keywords
block
current prediction
prediction block
information
motion information
Prior art date
Application number
KR1020100126941A
Other languages
English (en)
Inventor
박준영
박승욱
임재현
김정선
최영희
성재원
전병문
전용준
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to PCT/KR2010/008978 priority Critical patent/WO2011074874A2/ko
Priority to EP10837870.4A priority patent/EP2515542A4/en
Priority to CN201080063766.4A priority patent/CN102763418B/zh
Priority to US13/517,313 priority patent/US9544593B2/en
Publication of KR20110071047A publication Critical patent/KR20110071047A/ko

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction

Abstract

본 발명에 따르면, 현재 예측 블록의 블록 병합 플래그가 상기 현재 예측 블록의 모션 정보가 블록 병합을 이용하여 획득됨을 특정하는 경우, 상기 이웃 블록의 모션 정보로부터 상기 현재 예측 블록의 모션 정보를 획득하고, 상기 현재 예측 블록의 모션 정보를 이용하여 참조 픽쳐의 참조 블록을 획득하며, 상기 참조 블록을 이용하여 현재 예측 블록의 예측값을 획득하고, 상기 현재 예측 블록의 예측값 및 상기 현재 예측 블록의 레지듀얼을 이용하여 상기 현재 예측 블록을 복원하는 것을 특징으로 한다.

Description

비디오 신호 디코딩 방법 및 장치{A METHOD AND AN APPARATUS FOR DECODING A VIDEO SIGNAL}
본 발명은 인터 예측을 이용한 비디오 신호 디코딩 방법 및 장치에 관한 것이다.
인코딩된 영상 신호를 디코더로 전송함에 있어, 영상 신호의 압축율을 높이기 위해 시간적 중복성과 공간적 중복성을 제거하는 방법 즉, 인트라 예측 또는 인터 예측을 수행한다.
본 발명의 목적은 인터 예측을 이용하여 비디오 신호를 효율적으로 처리하고자 함에 있다.
본 발명의 또 다른 목적은 인터 예측을 수행함에 있어서 모션 정보를 코딩하지 아니하고, 디코더에서 유도함으로써 비디오 신호를 효율적으로 처리하고자 함에 있다.
본 발명의 또 다른 목적은 정교한 모션 벡터를 이용하여 모션 보상의 성능을 향상시키고자 함에 있다.
본 발명의 또 다른 목적은 인터 예측을 수행함에 있어서 환영현상을 줄임으로써 비디오 신호를 효율적으로 처리하고자 함에 있다.
본 발명의 또 다른 목적은 현재 픽쳐와 참조 픽쳐간의 조도 차이를 보상함으로써 비디오 신호를 효율적으로 처리하고자 함에 있다.
상기 목적을 달성하기 위하여 본 발명은 인터 예측시 다양한 모션 벡터 후보자를 구성하고, 이로부터 정교한 모션 벡터를 획득하는 것을 특징으로 하는 비디오 신호 디코딩 방법을 제시한다.
본 발명은 인터 예측시 블록 병합을 이용하여, 현재 예측 블록의 모션 정보를 이웃 블록의 모션 정보로부터 유도하는 것을 특징으로 하는 비디오 신호 디코딩 방법을 제시한다.
본 발명은 소수 픽셀 해상도를 가진 모션 벡터 및 보간 필터를 이용하여 참조 블록의 픽셀값을 획득하는 것을 특징으로 하는 비디오 신호 디코딩 방법을 제시한다.
본 발명은 참조 블록의 픽셀값에 적응적인 가중치를 적용하여 현재 예측 블록의 예측값을 획득하는 것을 특징으로 하는 비디오 신호 디코딩 방법을 제시한다.
본 발명은 현재 예측 블록의 템플릿 영역과 참조 블록의 템플릿 영역을 이용하여 현재 픽쳐와 참조 픽쳐간의 조도 차이를 보상하는 것을 특징으로 하는 비디오 신호 처리 방법을 제시한다.
본 발명에 따르면, 인터 예측을 위한 모션 벡터 후보자로부터 정교한 모션 벡터를 획득함으로써, 부호화할 모션 벡터 차분값의 비트량을 줄일 수 있을 뿐만 아니라, 원영상을 복원함에 있어서 정확성을 향상시킬 수 있다. 또한, 인터 예측시 블록 병합을 이용함으로써, 현재 예측 블록의 모션 정보를 코딩함에 필요한 비트수를 줄일 수 있다. 한편, 소수 픽셀 해상도를 가진 모션 벡터 및 보간 필터를 이용하여 현재 예측 블록의 레지듀얼을 줄일 수 있다. 현재 예측 블록에 유사한 참조 블록에 가중치를 둠으로써 현재 예측 블록의 레지듀얼을 줄일 수 있다.
도 1은 본 발명이 적용되는 비디오 신호 디코딩 장치의 개략적인 블록도를 나타낸다.
도 2는 본 발명이 적용되는 일실시예로서, 인터 예측부(700)의 개략적인 블록도이다.
도 3은 본 발명이 적용되는 일실시예로서, 모션 벡터 경쟁 (motion vector competition)을 이용하여 현재 예측 블록의 모션 벡터 예측값을 획득하는 방법을 도시한 블록도이다.
도 4는 본 발명이 적용되는 일실시예로서, 블록 병합(block merger)을 이용하여 현재 예측 블록의 모션 정보를 획득하는 방법을 도시한 블록도이다.
도 5는 본 발명이 적용되는 일실시예로서, 현재 예측 블록의 템플릿 영역과 참조 블록의 템플릿 영역을 이용하여 가중치를 획득하는 방법을 도시한 블록도이다.
도 6은 본 발명이 적용된 일실시예로서, 현재 예측 블록의 템플릿 영역과 참조 블록의 템플릿 영역을 도시한 것이다.
도 7은 본 발명이 적용되는 일실시예로서, 템플릿 영역에 기초한 조도 보상(illumination compensation)을 통하여 현재 예측 블록의 예측값을 획득하는 방법을 도시한 블록도이다.
도 8은 본 발명이 적용되는 일실시예로서, 제 1 오프셋 정보를 이용하여 현재 예측 블록의 예측값을 획득하는 방법을 도시한 것이다.
도 9는 본 발명이 적용되는 일실시예로서, 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 제 2 오프셋 정보를 이용하여 현재 예측 블록의 예측값을 획득하는 방법을 도시한 것이다.
도 10은 본 발명이 적용되는 일실시예로서, 템플릿 영역을 이용한 가중치 및 조도 보상에 기초하여 현재 예측 블록의 예측값을 획득하는 방법을 도시한 블록도이다.
이하 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.  이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
코딩 블록은 비디오 프레임을 처리하기 위한 기본 단위를 의미할 수 있다. 상기 코딩 블록은 적어도 하나의 예측 블록으로 구성될 수 있다. 상기 예측 블록이라 함은 인트라 예측 또는 인터 예측을 수행하는 블록의 단위를 의미할 수 있다. 인코더에서는 비디오 영상의 해상도에 따라 최적의 코딩 블록의 크기 또는 예측 블록의 크기를 결정할 수 있고, 상기 결정된 코딩 블록의 크기 또는 예측 블록의 크기에 대한 정보를 블록 레벨, 슬라이스 레벨 또는 시퀀스 레벨에서 디코더로 전송할 수 있다.
도 1은 본 발명이 적용되는 비디오 신호 디코딩 장치의 개략적인 블록도를 나타낸다.
상기 디코딩 장치는 크게 파싱부(100), 엔트로피 디코딩부(200), 역양자화/역변환부(300), 인트라 예측부(400), 디블록킹 필터부(500), 복호 픽쳐 버퍼부(600), 인터 예측부(700) 등을 포함한다.
파싱부(100)에서는 수신된 비디오 영상을 복호하기 위하여 NAL 단위로 파싱을 수행한다. 일반적으로 하나 또는 그 이상의 시퀀스 파라미터 세트와 픽쳐 파라미터 세트가 슬라이스 헤더와 슬라이스 데이터가 디코딩되기 전에 디코더로 전송된다. 이 때 NAL 헤더 영역 또는 NAL 헤더의 확장 영역에는 여러 가지 속성 정보가 포함될 수 있다. 파싱된 비트스트림은 엔트로피 디코딩부(200)를 통하여 엔트로피 디코딩되고, 각 예측 블록의 계수, 모션 정보 등이 추출된다. 역양자화/역변환부(300)에서는 수신된 양자화된 값에 일정한 상수를 곱하여 변환된 계수값을 획득하고, 상기 계수값을 역변환하여 픽셀값을 복원하게 된다. 상기 복원된 픽셀값을 이용하여 인트라 예측부(400)에서는 현재 픽쳐 내의 디코딩된 샘플로부터 인터 예측을 수행하게 된다. 한편, 디블록킹 필터부(500)에서는 블록 왜곡 현상을 감소시키기 위해 각각의 코딩된 블록에 적용된다. 필터는 블록의 가장자리를 부드럽게 하여 디코딩된 프레임의 화질을 향상시킨다. 필터링 과정의 선택은 경계 세기와 경계 주위의 이미지 샘플의 변화에 의해 좌우된다. 필터링을 거친 픽쳐들은 출력되거나 참조 픽쳐로 이용하기 위해 복호 픽쳐 버퍼부(600)에 저장된다. 복호 픽쳐 버퍼부(600)에서는 인터 예측을 수행하기 위해서 이전에 코딩된 픽쳐들을 저장하거나 개방하는 역할 등을 수행한다. 이 때 복호 픽쳐 버퍼부(600)에 저장하거나 개방하기 위해서 각 픽쳐의 frame_num 과 POC(Picture Order Count)를 이용하게 된다. 인터 예측부(700)에서는 복호 픽쳐 버퍼부(600)에 저장된 참조 픽쳐를 이용하여 인터 예측을 수행한다.
상기 인터 예측에는 순방향 예측(forward direction prediction), 역방향 예측(backward direction prediction) 및 쌍예측(Bi-prediction)이 있다. 상기 순방향 예측은 시간적으로 현재 픽쳐 이전에 표시(또는 출력)되는 1개의 참조 픽쳐를 이용한 인터 예측을 의미할 수 있다. 상기 순방향 예측을 위해 1개의 모션 정보(예를 들어, 모션 벡터 및 참조 픽쳐 인덱스)가 이용될 수 있다. 상기 역방향 예측은 시간적으로 현재 픽쳐 이후에 표시(또는 출력)되는 1개의 참조 픽쳐를 이용한 인터 예측을 의미할 수 있다. 상기 역방향 예측을 위해 1개의 모션 정보(예를 들어, 모션 벡터 및 참조 픽쳐 인덱스)가 이용될 수 있다. 상기 쌍예측은 2개의 참조 블록을 이용한 인터 예측을 의미할 수 있다. 상기 2개의 참조 블록은 동일한 참조 픽쳐에 공존할 수 있고, 또는 2개의 참조 픽쳐에 각각 존재할 수도 있다. 상기 참조 픽쳐는 시간적으로 현재 픽쳐 이전에 표시(또는 출력)될 수 있고, 시간적으로 현재 픽쳐 이후에 표시(또는 출력)될 수도 있다. 특히, 상기 2개의 참조 픽쳐는 시간적으로 현재 픽쳐 이전 및 이후에 각각 표시(또는 출력)될 수도 있다. 상기 쌍예측을 위해 2개의 모션 정보(예를 들어, 모션 벡터 및 참조 픽쳐 인덱스)가 이용될 수 있다.
인터 모드로 코딩된 예측 블록은 대칭형의 파티션 또는 비대칭형의 파티션으로 나누어질 수 있으며, 각 파티션은 하나 또는 두개의 참조 픽쳐로부터 예측될 수 있다. 상기 인터 예측부(700)에서는 엔트로피 디코딩부(200)로부터 전송된 정보들을 이용하여 현재 블록의 모션을 보상한다. 이하, 도 2를 참조하여 인터 예측부(700)에 대해서 구체적으로 살펴보기로 한다.
도 2는 본 발명이 적용되는 일실시예로서, 인터 예측부(700)의 개략적인 블록도이다.
도 2를 참조하면, 인터 예측부(700)는 모션 정보 획득부(710), 참조 블록 획득부(720) 및 가중치 적용부(730)를 포함할 수 있다.
모션 정보 획득부(710)는 현재 예측 블록의 모션 정보를 획득할 수 있다. 상기 모션 정보(motion information)는 모션 벡터 정보(motion vector information)와 참조 픽쳐 인덱스(reference picture index)를 포함할 수 있다. 상기 모션 벡터 정보는 모션 벡터, 모션 벡터 예측값(motion vector predictor), 또는 차분 모션 벡터(differential motion vector)를 의미할 수 있고, 상기 모션 벡터 예측값을 특정하는 인덱스 정보를 의미할 수도 있다. 상기 차분 모션 벡터는 상기 모션 벡터와 상기 모션 벡터 예측값 간의 차분값을 의미할 수 있다. 상기 현재 예측 블록의 모션 정보는 상기 현재 예측 블록이 스킵 모드로 코딩되는지 여부에 따라 획득될 수 있다.
상기 스킵 모드라 함은 현재 예측 블록을 복원함에 있어서, 상기 현재 예측 블록은 모션 벡터, 참조 픽쳐 인덱스 및 레지듀얼을 가지지 아니하고, 이전에 코딩된 참조 픽쳐내 참조 블록의 픽셀값을 그대로 이용하는 방식으로 정의할 수 있다. 또한, 상기 참조 블록의 픽셀값은 모션 벡터 예측값을 이용한 모션 보상(motion compensation)이 수반된 것일 수 있다. 다만, 상기 모션 벡터 예측값을 획득함에 있어서, 모션 벡터 경쟁(motion vector competition)이 이용되는 경우 예외적으로 상기 현재 예측 블록은 모션 벡터 정보를 가질 수 있으며, 이는 해당 부분에서 살펴보기로 한다.
스킵 모드 확인부(미도시)는 현재 예측 블록이 스킵 모드로 코딩되는지 여부를 확인할 수 있다.
상기 현재 예측 블록이 스킵 모드로 코딩되는지 여부를 확인하는 방법의 일실시예로서, 스킵 지시 정보가 이용될 수 있다. 상기 스킵 지시 정보라 함은 예측 블록이 스킵 모드로 코딩되는지 여부를 지시하는 정보를 의미할 수 있다. 상기 예측 블록(prediction block)이라 함은 인트라 예측 또는 인터 예측을 수행하는 블록의 기본 단위를 의미할 수 있다. 상기 스킵 지시 정보는 예측 블록 단위로 획득될 수 있다. 한편, 상기 스킵 지시 정보는 상기 현재 예측 블록의 슬라이스 타입(slice type)을 고려하여 제한적으로 획득될 수 있다. 예를 들어, I 슬라이스는 인트라 예측만을 사용하여 디코딩되는 슬라이스이므로, 스킵 모드가 이용되지 아니한다. 따라서, 상기 스킵 지시 정보는 상기 현재 예측 블록의 슬라이스 타입이 I 슬라이스가 아닌 경우에만 획득될 수 있다. 이하, 현재 예측 블록이 스킵 모드로 코딩되는 경우, 현재 예측 블록의 모션 정보를 획득하는 방법에 대해서 살펴보기로 한다.
상기 현재 예측 블록의 스킵 지시 정보가 현재 예측 블록이 스킵 모드로 코딩됨을 지시하는 경우, 상기 모션 정보 획득부(710)는 이웃 블록의 모션 정보를 이용하여 상기 현재 예측 블록의 모션 정보를 유도할 수 있다. 상기 이웃 블록은 상기 현재 예측 블록에 인접한 블록을 의미할 수 있다.
예를 들어, 현재 예측 블록의 좌측에 인접한 블록을 이웃 블록 A, 상단에 인접한 블록을 이웃 블록 B, 우측 상단에 인접한 블록을 이웃 블록 C라 하고, 각각의 모션 벡터를 mvA, mvB, mvC 라 하자. 상기 현재 예측 블록의 모션 벡터 예측값은 상기 mvA, mvB, mvC의 수평과 수직 성분의 중앙값으로 유도될 수 있다. 상기 현재 예측 블록의 모션 벡터 예측값이 상기 현재 예측 블록의 모션 벡터로 이용될 수 있다.
상기 현재 예측 블록의 스킵 지시 정보가 현재 예측 블록이 스킵 모드로 코딩됨을 지시하는 경우, 상기 모션 정보 획득부(710)는 모션 벡터 경쟁(motion vector competition)을 이용하여 상기 현재 예측 블록의 모션 정보를 획득할 수도 있다. 한편, 모션 벡터 경쟁 지시 정보(motion vector competition indication information)을 이용하여 상기 모션 벡터 경쟁(motion vector competition)을 적응적으로 이용할 수 있다. 상기 모션 벡터 경쟁 지시 정보라 함은 모션 벡터 경쟁이 이용되는지 여부를 특정하는 정보를 의미할 수 있다. 상기 모션 벡터 경쟁 지시 정보는 슬라이스 단위 또는 예측 블록 단위로 획득될 수 있다.
예를 들어, 상기 모션 경쟁 지시 정보가 모션 벡터 경쟁이 이용됨을 특정하는 경우, 모션 벡터 경쟁을 이용하여 모션 벡터 예측값이 획득될 수 있다. 반대로, 상기 모션 경쟁 지시 정보가 모션 벡터 경쟁이 이용되지 아니함을 특정하는 경우, 앞서 살펴본 바와 같이 이웃 블록의 모션 벡터로부터 모션 벡터 예측값이 획득될 수 있다.
상기 모션 벡터 경쟁(motion vector competition)이라 함은 공간적(spatial) 이웃 블록 뿐만 아니라 시간적(temporal) 이웃 블록의 모션 벡터를 고려하여 현재 예측 블록의 모션 벡터 예측값을 획득하는 방법이다. 예를 들어, 상기 공간적 이웃 블록은 상기 현재 예측 블록에 인접한 블록을 의미할 수 있다. 상기 공간적 이웃 블록은 상기 현재 예측 블록의 좌측, 상단, 우측 상단에 인접한 블록을 포함할 수 있다. 상기 시간적 이웃 블록은 참조 픽쳐내의 블록으로서, 상기 현재 예측 블록과 동일 위치의 블록을 의미할 수 있다. 이하, 도 3을 참조하여 구체적으로 살펴보기로 한다.
도 3은 본 발명이 적용되는 일실시예로서, 모션 벡터 경쟁 (motion vector competition)을 이용하여 현재 예측 블록의 모션 벡터 예측값을 획득하는 방법을 도시한 블록도이다.
도 3을 참조하면, 모션 정보 획득부(710)는 현재 예측 블록의 모션 벡터 예측값 후보자(motion vector predictor candidate)를 획득할 수 있다(S300). 상기 모션 벡터 예측값 후보자로 상기 현재 예측 블록에 인접한 공간적 이웃 블록의 모션 벡터가 이용될 수 있다. 예를 들어, 현재 예측 블록의 좌측, 상단, 우측 상단에 인접한 블록의 모션 벡터가 이용될 수 있다. 그리고, 현재 예측 블록에 인접한 공간적 이웃 블록들의 모션 벡터들로부터 수평과 수직 성분의 중앙값이 유도될 수 있으며, 상기 중앙값도 모션 벡터 예측값 후보자에 포함될 수 있다.
또한, 상기 시간적 이웃 블록의 모션 벡터도 모션 벡터 예측값 후보자에 포함될 수도 있다. 상기 시간적 이웃 블록의 모션 벡터는 모션 벡터 예측값 후보자로 적응적으로 이용될 수도 있다. 이를 위해 시간적 경쟁 정보(temporal competition information)가 이용될 수 있다. 상기 시간적 경쟁 정보라 함은 시간적 이웃 블록의 모션 벡터가 모션 벡터 경쟁 (motion vector competition)에 이용되는지 여부를 특정하는 정보를 의미할 수 있다. 즉, 시간적 이웃 블록의 모션 벡터가 모션 벡터 예측값 후보자에 포함되는지 여부를 특정하는 정보일 수 있다. 따라서, 현재 예측 블록의 모션 벡터 예측값을 획득함에 있어서 모션 벡터 경쟁(motion vector competition)이 이용되는 경우에도, 상기 시간적 경쟁 정보에 기초하여 상기 시간적 이웃 블록의 모션 벡터가 모션 벡터 예측값 후보자로 이용되는 것이 제한될 수 있다. 그리고, 상기 시간적 경쟁 정보도 모션 벡터 경쟁이 이용되는 것을 전제로 하므로, 상기 모션 경쟁 지시 정보가 모션 벡터 경쟁이 이용됨을 지시하는 경우에 한해 상기 시간적 경쟁 정보가 획득되는 것으로 제한할 수도 있다.
모션 정보 획득부(710)는 상기 모션 벡터 예측값 후보자를 이용하여 모션 벡터 경쟁 리스트를 생성할 수 있다(S310). 상기 모션 벡터 예측값 후보자는 일정한 순서로 정렬될 수 있다. 예를 들어, 상기 현재 예측 블록에 인접한 공간적 이웃 블록들의 모션 벡터들로부터 유도된 중앙값, 상기 현재 예측 블록에 인접한 공간적 이웃 블록의 모션 벡터 순으로 정렬될 수 있다. 나아가, 상기 공간적 이웃 블록의 모션 벡터는 상기 현재 예측 블록의 좌측, 상단, 우측 상단에 인접한 블록의 모션 벡터 순으로 정렬될 수 있다. 또한, 시간적 경쟁 정보(temporal competition information)에 따라 시간적 이웃 블록의 모션 벡터가 모션 벡터 예측값 후보자로 이용되는 경우, 상기 모션 벡터 경쟁 리스트의 마지막에 추가될 수 있다. 모션 벡터 경쟁 리스트내의 모션 벡터 예측값 후보자는 인덱스 정보에 의하여 특정될 수 있다. 즉, 모션 벡터 경쟁 리스트는 모션 벡터 예측값 후보자와 상기 모션 벡터 예측값 후보자에 할당된 인덱스 정보로 구성될 수 있다.
모션 정보 획득부(710)는 모션 벡터 예측값 후보자의 인덱스 정보 및 상기 모션 벡터 경쟁 리스트를 이용하여 상기 현재 예측 블록의 모션 벡터 예측값을 획득할 수 있다(S320). 상기 모션 벡터 예측값 후보자의 인덱스 정보라 함은 모션 벡터 경쟁 리스트내의 모션 벡터 예측값 후보자를 특정하는 정보를 의미할 수 있다. 상기 모션 벡터 예측값 후보자의 인덱스 정보는 예측 블록 단위로 획득될 수 있다.
상기 획득된 모션 벡터 예측값을 이용하여 현재 예측 블록에 대해 인터 예측이 수행될 수 있다(S330). 이 경우, 상기 모션 벡터 예측값이 상기 현재 예측 블록의 모션 벡터로 이용될 수 있으며, 상기 모션 벡터 예측값을 이용한 인터 예측 과정에 대해서는 해당 부분에서 구체적으로 살펴보기로 한다.
이하, 현재 예측 블록이 스킵 모드로 코딩되지 아니하는 경우, 현재 예측 블록의 모션 정보를 획득하는 방법에 대해서 살펴보기로 한다.
블록 병합을 이용하여 현재 예측 블록을 모션 정보를 획득할 수 있다. 상기 블록 병합(block merger)라 함은 현재 예측 블록과 이웃 블록이 병합되는 것을 의미할 수 있다. 상기 이웃 블록은 상기 현재 예측 블록의 좌측 및 상단에 인접한 블록을 포함할 수 있다. 다만, 상기 좌측 및 상단에 인접한 블록이 이용가능한 것을 전제로 한다. 상기 현재 예측 블록은 상기 현재 예측 블록의 좌측에 인접한 블록과 상기 현재 예측 블록의 상단에 인접한 블록 중 적어도 하나와 병합될 수 있다.
현재 예측 블록의 모션 정보를 획득함에 있어서 블록 병합이 이용되는 경우, 상기 현재 예측 블록의 모션 정보는 현재 예측 블록과 병합된 이웃 블록의 모션 정보로 유도될 수 있으며, 이는 도 4를 참조하여 구체적으로 살펴보기로 한다.
도 4는 본 발명이 적용되는 일실시예로서, 블록 병합을 이용하여 현재 예측 블록의 모션 정보를 획득하는 방법을 도시한 블록도이다.
도 4를 참조하면, 상기 모션 정보 획득부(710)는 현재 예측 블록의 블록 병합 플래그를 획득할 수 있다(S400). 상기 블록 병합 플래그라 함은 현재 예측 블록의 모션 정보가 블록 병합을 이용하여 유도되는지를 특정하는 정보를 의미할 수 있다. 이는 현재 예측 블록의 모션 정보가 병합된 이웃 블록의 모션 정보로 유도되는지를 특정하는 정보를 의미할 수도 있다. 상기 모션 정보는 모션 벡터 및 참조 픽쳐 인덱스를 포함할 수 있다.
상기 현재 예측 블록과 병합가능한 이웃 블록은 상기 현재 예측 블록의 좌측에 인접한 블록(이하, 좌측 블록이라 함.) 또는 상기 현재 예측 블록의 상단에 인접한 블록(이하, 상단 블록이라 함.)일 수 있다. 이 경우, 상기 좌측 블록의 모션 정보와 상기 상단 블록의 모션 정보가 동일한 경우에는 상기 현재 예측 블록이 좌측 블록과 병합되는지 또는 상단 블록과 병합되는지를 특정할 필요가 없다. 따라서, 상기 현재 예측 블록은 상기 좌측 블록 및 상기 상단 블록과 병합될 수 있다. 반면에, 상기 좌측 블록의 모션 정보와 상기 상단 블록의 모션 정보가 상이한 경우에는 상기 현재 예측 블록이 좌측 블록과 병합되는지 또는 상단 블록과 병합되는지를 특정할 필요가 있다. 이를 위해 좌측 블록 병합 플래그를 정의하도록 한다. 상기 좌측 블록 병합 플래그라 함은 현재 예측 블록이 좌측 블록과 병합되는지 상단 블록과 병합되는지를 특정하는 정보를 의미할 수 있다. 또는, 현재 예측 블록의 모션 정보가 좌측 블록의 모션 정보로부터 유도되는지 상단 블록의 모션 정보로부터 유도되는지를 특정하는 정보를 의미할 수 있다.
상기 모션 정보 획득부(710)는 상기 블록 병합 플래그가 현재 예측 블록의 모션 정보가 블록 병합을 이용하여 유도됨을 특정하는 경우, 상기 좌측 블록 병합 플래그를 획득할 수 있다(S410). 또한, 앞서 살펴본 바와 같이 좌측 블록의 모션 정보와 상단 블록의 모션 정보가 동일한지 여부를 판단하고, 양 모션 정보가 상이한 경우에 한해 상기 좌측 블록 병합 플래그가 획득되는 것으로 제한할 수도 있다. 상기 양 모션 정보가 상이하다는 것은 현재 예측 블록이 좌측 블록과 상단 블록 중 어느 하나의 블록과 병합가능하다는 것이므로, 병합가능한 이웃 블록의 후보자가 복수개인 것을 의미할 수 있다.
상기 모션 정보 획득부(710)는 상기 좌측 블록 병합 플래그에 따라 현재 예측 블록이 좌측 블록과 병합되는 경우, 현재 예측 블록의 모션 정보는 좌측 블록의 모션 정보로부터 획득될 수 있고(S420), 현재 예측 블록이 상단 블록과 병합되는 경우, 현재 예측 블록의 모션 정보는 상단 블록의 모션 정보로부터 획득될 수 있다(S430). 예를 들어, 상기 병합된 이웃 블록의 모션 정보를 현재 예측 블록의 모션 정보로 이용할 수 있다. 이는 인터 예측을 위한 현재 예측 블록의 모션 정보를 코딩하지 아니하고, 이웃 블록의 모션 정보로부터 유도함으로써, 전송되는 비트수를 줄일 수 있다.
상기 모션 정보 획득부(710)는 상기 블록 병합 플래그에 따라 상기 현재 예측 블록의 모션 정보가 블록 병합을 이용하여 유도되지 아니하는 경우, 인터 예측을 위한 현재 예측 블록의 차분 모션 벡터 및 참조 픽쳐 인덱스를 파싱할 수 있다(S440).
상기 차분 모션 벡터 및 참조 픽쳐 인덱스는 슬라이스 타입을 고려하여 획득될 수 있다. 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 인터 예측을 위해 순방향 예측, 역방향 예측 및 쌍예측이 이용될 수 있다. 이 경우, 예측 블록의 인터 예측을 위해 순방향 예측, 역방향 예측 및 쌍예측 중 어느 예측이 이용되는지를 특정하는 정보(이하, 인터 예측 식별 정보라 한다.)를 이용하여 상기 차분 모션 벡터 및 참조 픽쳐 인덱스가 효율적으로 획득될 수 있다.
예를 들어, 상기 인터 예측 식별 정보가 순방향 예측인 경우, 순방향 예측에 이용되는 차분 모션 벡터 및 참조 픽쳐 인덱스가 획득될 수 있고, 역방향 예측에 이용되는 차분 모션 벡터 및 참조 픽쳐 인덱스가 획득되지 아니할 수 있다. 반대로, 상기 인터 예측 식별 정보가 역방향 예측인 경우, 순방향 예측에 이용되는 차분 모션 벡터 및 참조 픽쳐 인덱스가 획득되지 아니하고, 역방향 예측에 이용되는 차분 모션 벡터 및 참조 픽쳐 인덱스가 획득될 수 있다. 상기 인터 예측 식별 정보가 쌍예측인 경우, 쌍예측에 이용되는 2개의 차분 모션 벡터와 2개의 참조 픽쳐 인덱스가 획득될 수 있다.
현재 예측 블록의 슬라이스 타입이 P 슬라이스인 경우, 인터 예측을 위해 순방향 예측만이 이용될 수 있다. 따라서, 현재 예측 블록의 슬라이스 타입이 P 슬라이스인 경우에는 상기 인터 예측 식별 정보가 순방향 예측으로 설정될 수 있다.
따라서, B 슬라이스인 경우에 한해 상기 인터 예측 식별 정보가 파싱되는 것으로 제한될 수 있다. P 슬라이스인 경우에는 상기 인터 예측 식별 정보가 순방향 예측으로 설정되므로, 상기 인터 예측 식별 정보가 파싱되지 아니하더라도 순방향 예측에 이용되는 차분 모션 벡터 및 참조 픽쳐 인덱스만이 획득될 수 있다.
현재 예측 블록의 모션 정보가 블록 병합을 이용하여 유도되지 아니하는 경우, 상기 현재 예측 블록의 모션 벡터 예측값은 이웃 블록의 모션 벡터를 이용하여 획득될 수도 있다. 예를 들어, 현재 예측 블록의 좌측에 인접한 블록을 이웃 블록 A, 상단에 인접한 블록을 이웃 블록 B, 우측 상단에 인접한 블록을 이웃 블록 C라 하고, 각각의 모션 벡터를 mvA, mvB, mvC 라 하자. 상기 현재 예측 블록의 모션 벡터 예측값은 상기 mvA, mvB, mvC의 수평과 수직 성분의 중앙값으로 유도될 수 있다.
또는, 상기 모션 벡터 예측값은 앞서 설명한 모션 벡터 경쟁(motion vector competition)을 이용하여 획득될 수도 있으며, 자세한 설명은 생략하기로 한다.
현재 예측 블록의 모션 벡터는 상기 파싱된 차분 모션 벡터와 디코더내에서 유도되는 모션 벡터 예측값의 합으로 획득될 수 있다.
한편, 상기 현재 예측 블록은 인터 예측의 정확성을 향상시키기 위하여 복수개의 파티션으로 분리될 수 있으며, 상기 현재 예측 블록의 파티션 단위로 상기 모션 정보가 획득될 수도 있다.
현재 예측 블록이 스킵 모드로 코딩되지 아니하는 경우, 상기 현재 예측 블록은 직접 예측 모드로 코딩될 수 있다. 상기 직접 예측 모드는 디코딩이 완료된 블록의 모션 정보로부터 현재 예측 블록의 모션 정보를 예측하는 모드를 나타낸다. 다만, 상기 현재 예측 블록은 레지듀얼를 가진다는 점에서 스킵 모드와 상이하다.
상기 현재 예측 블록의 모션 벡터는 앞서 설명한 스킵 모드로 코딩되는 경우와 동일한 방법으로 유도될 수 있다. 예를 들어, 이웃 블록의 모션 벡터 간의 수평과 수직 성분의 중앙값으로 유도될 수 있다. 상기 이웃 블록은 현재 예측 블록에 인접한 블록을 의미할 수 있다. 상기 이웃 블록은 현재 예측 블록의 좌측 블록, 상단 블록 및 우측 상단 블록을 포함할 수 있다. 또한, 상기 현재 예측 블록의 모션 벡터는 모션 벡터 경쟁을 이용하여 획득될 수도 있다. 즉, 모션 벡터 예측값 후보자의 인덱스 정보 및 모션 벡터 경쟁 리스트를 이용하여 상기 현재 예측 블록의 모션 벡터가 획득될 수 있다.
상기 모션 벡터 예측값 후보자의 인덱스 정보는 앞서 설명한 인터 예측 식별 정보를 고려하여 획득될 수 있다.
예를 들어, 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 상기 현재 예측 블록은 순방향 예측, 역방향 예측 및 쌍예측이 가능하다. 이 경우, 상기 인터 예측 식별 정보를 이용함으로써, 상기 현재 예측 블록에 대해 순방향 예측이 이용되는 경우, 역방향 예측이 이용되는 경우, 또는 쌍예측이 이용되는 경우 각각에 대하여 선택적으로 상기 모션 벡터 예측값 후보자의 인덱스 정보가 획득될 수 있다.
따라서, 상기 인터 예측 식별 정보가 순방향 예측인 경우, 순방향 예측에 이용되는 모션 벡터 예측값 후보자의 인덱스 정보가 획득될 수 있고, 역방향 예측에 이용되는 모션 벡터 예측값 후보자의 인덱스 정보가 획득되지 아니할 수 있다. 반대로, 상기 인터 예측 식별 정보가 역방향 예측인 경우, 순방향 예측에 이용되는 모션 벡터 예측값 후보자의 인덱스 정보가 획득되지 아니하고, 역방향 예측에 이용되는 모션 벡터 예측값 후보자의 인덱스 정보가 획득될 수 있다. 상기 인터 예측 식별 정보가 쌍예측인 경우, 쌍예측에 이용되는 2개의 모션 벡터 예측값 후보자의 인덱스 정보가 획득될 수 있다.
현재 예측 블록의 슬라이스 타입이 P 슬라이스인 경우, 인터 예측을 위해 순방향 예측만이 이용되므로, 상기 인터 예측 식별 정보는 순방향 예측으로 설정될 수 있다. 따라서, 상기 인터 예측 식별 정보는 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우에 한해 파싱될 수 있다. 현재 에측 블록의 슬라이스 타입이 P 슬라이스인 경우에는 상기 인터 예측 식별 정보가 순방향 예측으로 설정되므로, 상기 인터 예측 식별 정보가 파싱되지 아니하더라도 순방향 예측에 이용되는 모션 벡터 예측값 후보자의 인덱스 정보만이 획득될 수 있기 때문이다.
상기 참조 블록 획득부(720)는 상기 모션 정보 획득부(710)에서 획득한 모션 정보 즉, 모션 벡터 및 참조 픽쳐 인덱스를 이용하여 현재 예측 블록의 참조 블록을 획득할 수 있다. 상기 참조 블록은 상기 참조 픽쳐 인덱스를 가진 참조 픽쳐내에 존재한다. 또한, 상기 모션 벡터에 의해서 특정된 블록의 픽셀값이 상기 현재 예측 블록의 예측값(predictor)으로 이용될 수 있다. 즉, 이전에 디코딩된 픽쳐로부터 모션을 추정하여 현재 블록을 예측하는 모션 보상(motion compensation)이 이용된다.
상기 참조 블록 획득부(720)는 모션 보상을 수행할 때 정수 픽셀 이하의 픽셀 해상도(이하, 소수 픽셀 해상도라 함.)를 가진 모션 벡터를 이용할 수 있다. 예를 들어, 1/2 픽셀 해상도, 1/4 픽셀 해상도, 1/8 픽셀 해상도 등이 이용될 수 있다. 상기 모션 보상에 사용되는 픽셀 해상도가 높을수록 좋은 성능의 모션 보상이 수행될 수 있다.
만일, 상기 모션 보상에 소수 픽셀 해상도를 가진 모션 벡터가 이용되는 경우, 소수 픽셀 해상도의 신호는 참조 픽쳐의 픽셀값들간의 보간(interpolation)을 통하여 생성될 수 있다. 이 경우, 보간 필터(interpolation filter)가 사용될 수 있다. 상기 보간 필터는 매 픽셀 위치마다 상기 필터의 입력 신호에 각각의 필터 계수를 곱한 후 총합을 출력하는 필터를 의미할 수 있다. 상기 보간 필터의 입력 신호는 상기 참조 픽쳐의 정수 픽셀 또는 기생성된 소수 픽셀 해상도의 신호 중 적어도 하나를 포함할 수 있다.
상기 보간 필터는 소수 픽셀 해상도의 신호 위치 정보를 고려하여 수직방향, 수평방향 또는 대각선 방향으로 이용될 수 있다. 상기 소수 픽셀 해상도의 신호 위치 정보는 정수 픽셀의 위치와 상기 소수 픽셀 해상도의 신호의 위치와의 차이값으로 표현될 수 있다. 예를 들어, 상기 소수 픽셀 해상도의 신호가 수평으로 위치한 정수 픽셀 사이에 위치한 경우, 상기 소수 픽셀 해상도의 신호는 수평으로 인접한 정수 픽셀 및/또는 소수 픽셀 해상도의 신호들간의 보간에 의해서 생성될 수 있다. 즉, 수평 방향으로 보간 필터가 적용될 수 있다. 상기 보간 필터의 입력 신호 즉, 상기 수평으로 인접한 정수 픽셀 및/또는 소수 픽셀 해상도의 신호들의 개수는 보간 필터의 필터 계수의 개수와 동일할 수 있다.
또는, 상기 소수 픽셀 해상도의 신호가 수직으로 위치한 정수 픽셀 사이에 위치한 경우, 상기 소수 픽셀 해상도의 신호는 수직으로 인접한 정수 픽셀 및/또는 기생성된 소수 픽셀 해상도의 신호들간의 보간에 의해서 생성될 수 있다. 즉, 수직 방향으로 보간 필터가 적용될 수 있다. 상기 기생성된 소수 픽셀 해성도의 신호는 상기 소수 픽셀 해상도의 신호보다 낮은 해상도를 가질 수도 있고, 상기 소수 픽셀 해상도의 신호와 동일한 해상도를 가질 수도 있다.
상기 보간 필터의 입력 신호의 개수 즉, 상기 소수 픽셀 해상도의 신호와 인접한 정수 픽셀 및/또는 소수 픽셀 해상도의 신호들의 개수는 보간 필터의 필터 계수의 개수와 동일할 수 있다.
한편, 상기 보간 필터는 보간 필터 식별 정보(interpolation filter identification information)에 의해 특정될 수 있다. 상기 보간 필터 식별 정보를 이용함으로써 인터 예측의 오차를 최소로 하는 필터를 적응적으로 이용할 수 있으며, 이는 레지듀얼 데이터량을 줄일 수 있어 코딩의 성능이 향상될 수 있다. 상기 보간 필터 식별 정보는 보간 필터의 종류 또는 필터 계수를 특정하는 정보를 의미할 수 있다. 따라서, 상기 보간 필터 식별 정보를 이용하여 소수 픽셀 해상도의 신호를 생성하기 위해 이용되는 보간 필터를 특정할 수 있다. 다만, 상기 보간 필터 식별 정보는 시퀀스 레벨, 픽쳐 레벨 또는 슬라이스 레벨에서 획득가능하며, 이로써 시퀀스 단위, 픽쳐 단위 또는 슬라이스 단위로 동일한 보간 필터가 이용되는 것으로 제한할 수도 있다.
상기 참조 블록의 픽셀값은 가중치 정보가 적용된 후 현재 예측 블록의 예측값으로 이용될 수 있으며, 이하, 상기 가중치 정보를 획득하는 방법 및 이를 적용하는 방법에 대해서 살펴보기로 한다.
현재 슬라이스의 슬라이스 타입에 따라 살펴보기로 한다. 슬라이스 타입으로는 크게 I 슬라이스, P 슬라이스 및 B 슬라이스가 있다. 현재 슬라이스가 P 슬라이스인 경우, 상기 현재 슬라이스는 인트라 예측 또는 인터 예측을 이용하여 디코딩되며, 상기 인터 예측을 위해 1개의 모션 벡터 및 참조 픽쳐 인덱스가 이용될 수 있다. 따라서, 현재 슬라이스가 P 슬라이스인 경우, 현재 슬라이스내의 현재 예측 블록은 참조 블록의 픽셀값을 현재 예측 블록의 예측값으로 이용할 수 있다. 여기서, 상기 참조 블록의 픽셀값은 상기 1개의 참조 픽쳐 인덱스를 가진 참조 픽쳐에서 상기 1개의 모션 벡터에 의해서 지시되는 참조 블록의 복원된 픽셀값을 의미할 수 있다. 현재 슬라이스가 B 슬라이스인 경우, 상기 현재 슬라이스는 인트라 예측 뿐만 아니라 인터 예측을 이용하여 디코딩되며, 상기 인터 예측을 위해 최대 2개의 모션 벡터 및 참조 픽쳐 인덱스가 이용될 수 있다. B 슬라이스를 양방향 예측 슬라이스로 볼 수 있다. 만일 B 슬라이스내의 예측 블록이 1개의 모션 벡터 및 참조 픽쳐 인덱스를 이용하여 인터 예측을 수행하는 경우, 앞서 P 슬라이스에서 설명한 방법이 동일하게 적용될 수 있다. B 슬라이스내의 현재 예측 블록이 2개의 모션 벡터 및 참조 픽쳐 인덱스를 이용하여 인터 예측을 수행하는 경우에는, 상기 2개의 모션 벡터 및 참조 픽쳐 인덱스에 의해서 획득되는 2개의 참조 블록의 픽셀값 간의 평균값을 상기 현재 예측 블록의 예측값으로 이용할 수 있다.
또는, 상기 2개의 참조 블록의 픽셀값에 고정된 가중치 즉, (1/2,1/2)가 적용되는 것이 아니라, 적응적으로 가중치가 적용될 수도 있다.
아래 표 1을 참조하면, 하기 표 1은 인코더와 디코더에 각각 저장되어 있으며, 가중치 계수 정보와 상기 가중치 계수 정보에 대응하는 인덱스 정보를 포함할 수 있다. 예를 들어, 가중치로 (1,0), (2/3,1/3), (1/2,1/2), (1/3,2/3), (0,1)이 이용될 수 있으며, 다만 이에 한정되지 아니한다. 인코더에서는 하기 가중치 계수 정보 중에서 현재 예측 블록의 레지듀얼 데이터를 최소로하는 가중치 계수 정보를 선택하고, 상기 가중치 계수 정보에 대응하는 인덱스 정보를 디코더로 전송할 수 있다. 상기 레지듀얼 데이터는 상기 현재 예측 블록의 픽셀값과 상기 현재 예측 블록의 예측값간의 차분값을 의미할 수 있다. 디코더에서는 상기 전송된 인덱스 정보에 따른 가중치 계수 정보를 참조 블록의 픽셀값에 적용하여 상기 현재 예측 블록의 예측값을 획득할 수 있다. 상기 인덱스 정보는 슬라이스 단위 또는 예측 블록 단위로 전송될 수 있다.
인덱스 가중치 계수
0 1, 0
1 2/3, 1/3
2 1/2, 1/2
3 1/3, 2/3
4 0, 1
또는, 인코더에서 현재 예측 블록의 레지듀얼 데이터를 최소로 하는 가중치 계수 정보를 직접 추출하고, 상기 추출된 가중치 계수 정보로 가중치 리스트를 생성할 수 있다. 마찬가지로, 상기 가중치 계수 정보 각각에 인덱스 정보가 할당될 수 있으며, 이 경우 상기 가중치 리스트는 상기 인덱스 정보를 포함할 수 있다. 또한, 인코더에서는 현재 예측 블록에 적용되는 가중치 계수 정보에 대응하는 인덱스 정보를 디코더로 전송할 수 있다. 상기 인덱스 정보는 현재 예측 블록이 포함된 슬라이스 단위로 전송될 수 있고, 예측 블록 단위로 전송될 수도 있다. 디코더에서는 상기 수신된 가중치 리스트 및 상기 인덱스 정보에 따라 특정된 가중치 계수 정보를 참조 블록의 픽셀값에 적용하여 상기 현재 예측 블록의 예측값을 획득할 수 있다.
이하, 도 5를 참조하여 템플릿 영역을 이용하여 가중치를 유도하는 방법에 대해서 살펴보기로 한다.
도 5는 본 발명이 적용되는 일실시예로서, 현재 예측 블록의 템플릿 영역과 참조 블록의 템플릿 영역을 이용하여 가중치를 획득하는 방법을 도시한 블록도이다.
모션 정보 획득(710)는 현재 예측 블록의 모션 정보를 획득할 수 있다(S500). 상기 모션 정보는 앞서 설명한 모션 정보 획득 방법과 동일한 방법으로 획득될 수 있다. 또한, 상기 모션 정보는 슬라이스 타입을 고려하여 획득될 수 있다. 예를 들어, 현재 예측 블록의 슬라이스 타입을 확인하고, 그 확인 결과 현재 예측 블록이 속한 슬라이스가 P 슬라이스인 경우, 최대 1개의 모션 벡터 및 참조 픽쳐 인덱스가 획득될 수 있다. 현재 예측 블록이 속한 슬라이스가 B 슬라이스인 경우, 최대 2개의 모션 벡터 및 참조 픽쳐 인덱스가 획득될 수 있다. 이하, 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우를 전제로 살펴보기로 한다.
참조 블록 획득부(720)는 상기 현재 예측 블록의 모션 정보를 이용하여 참조 블록을 획득할 수 있다(S510). 상기 참조 블록은 상기 현재 예측 블록의 인터 예측을 위해 참조되는 블록을 의미할 수 있다. 다시 말해, 현재 예측 블록의 참조 픽쳐 인덱스를 가진 참조 픽쳐에서 상기 현재 예측 블록의 모션 벡터에 의해 지시되는 블록을 의미할 수 있다. 상기 참조 블록은 현재 예측 블록이 디코딩되기 전에 디코딩이 완료된 블록일 수 있다. 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 최대 2개의 참조 블록이 획득될 수 있다. 상기 2개의 참조 블록의 픽셀값은 상기 현재 예측 블록의 예측값으로 이용될 수 있다. 다만, 상기 현재 예측 블록의 예측값으로 이용되기에 앞서 상기 2개의 참조 블록의 픽셀값에 가중치가 적용될 수 있다. 이하, 상기 가중치를 획득하는 방법에 대해서 살펴보기로 한다.
가중치 적용부(730)는 상기 현재 예측 블록의 템플릿 영역과 상기 참조 블록의 템플릿 영역간의 차분값을 획득할 수 있다(S520). 이는 도 6을 참조하여 살펴보기로 한다.
도 6은 본 발명이 적용된 일실시예로서, 현재 예측 블록의 템플릿 영역과 참조 블록의 템플릿 영역을 도시한 것이다.
현재 예측 블록의 템플릿 영역은 상기 현재 예측 블록에 접해있는 이웃 블록을 의미할 수 있다. 상기 현재 예측 블록의 템플릿 영역은 상기 현재 예측 블록의 디코딩 이전에 디코딩된 블록을 의미할 수 있다. 마찬가지로, 참조 블록의 템플릿 영역은 상기 참조 블록에 접해있는 이웃 블록을 의미할 수 있고, 상기 참조 블록의 디코딩 이전에 디코딩된 블록을 의미할 수 있다. 도 6을 참조하면, 템플릿 영역은 현재 예측 블록(또는 참조 블록)의 좌측, 상단, 좌측 상단에 접해있는 이웃 블록을 포함할 수 있다. 다만, 현재 예측 블록(또는 참조 블록)의 위치에 따라 이웃 블록의 사용이 제한될 수 있다. 예를 들어, 현재 예측 블록(또는 참조 블록)이 현재 픽쳐(또는 참조 픽쳐)의 좌측에 위치하는 경우, 상기 현재 예측 블록(또는 참조 블록)의 좌측에 접해있는 이웃 블록의 사용이 제한될 수 있다. 또는, 현재 예측 블록(또는 참조 블록)이 현재 픽쳐(또는 참조 픽쳐)의 상단에 위치하는 경우, 상기 현재 예측 블록(또는 참조 블록)의 상단 또는 좌측 상단에 접해있는 이웃 블록의 사용이 제한될 수 있다. 따라서, 상기 가중치 적용부(730)는 가중치를 획득하기에 앞서 상기 이웃 블록이 사용가능한지 여부를 먼저 확인하고, 상기 이웃 블록이 사용가능한 경우에 템플릿 영역으로 특정할 수 있다.
도 6을 참조하면, 현재 예측 블록의 2개의 모션 정보를 이용하여 2개의 참조 블록이 획득될 수 있고, 상기 2개의 참조 블록 각각에 대한 템플릿 영역이 특정될 수 있다. 이하, 상기 2개의 참조 블록을 각각 제 1 참조 블록, 제 2 참조 블록으로 부르기로 한다. 상기 가중치 적용부(730)는 현재 예측 블록의 템플릿 영역(Tc)과 제 1 참조 블록의 템플릿 영역(T0)간의 차분값(D0)을 획득할 수 있다. 또한, 현재 예측 블록의 템플릿 영역(Tc)과 제 2 참조 블록의 템플릿 영역(T1)간의 차분값(D1)을 획득할 수 있다. 예를 들어, 상기 차분값(D0)은 현재 예측 블록의 템플릿 영역(Tc)내 픽셀값의 총합과 제 1 참조 블록의 템플릿 영역(T0)내 픽셀값의 총합 간의 차분값을 의미할 수 있다. 또는, 상기 차분값(D0)은 현재 예측 블록의 템플릿 영역(Tc)내 픽셀값의 평균값과 제 1 참조 블록의 템플릿 영역(T0)내 픽셀값의 평균값 간의 차분값을 의미할 수도 있으며, 이에 제한되지 아니한다. 마찬가지로, 상기 차분값(D1)도 상기 차분값(D0)과 동일한 방법으로 획득될 수 있다.
상기 가중치 적용부(730)는 상기 차분값(D0,D1)을 이용하여 가중치를 획득할 수 있다(S530). 예를 들어, 상기 차분값 간의 비율에 따라 가중치가 획득될 수 있다. 만일 상기 차분값(D0)와 상기 차분값(D1)을 비교한 결과 상기 차분값(D0)이 상기 차분값(D1)보다 작다면, 상기 제 1 참조 블록이 상기 제 2 참조 블록보다 현재 예측 블록에 유사한 참조 블록임을 의미할 수 있다. 반대로, 상기 차분값(D1)이 상기 차분값(D0)보다 작다면, 상기 제 2 참조 블록이 상기 제 1 참조 블록보다 현재 예측 블록에 유사한 참조 블록임을 의미할 수 있다. 따라서, 가중치는 수학식 1과 같이 획득될 수 있다.
Figure pat00001
상기 수학식 1에서 W0는 제 1 참조 블록에 적용되는 가중치를 의미하며, W1는 제 2 참조 블록에 적용되는 가중치를 의미한다.
상기 가중치 적용부(730)는 상기 가중치(W0,W1)를 제 1 참조 블록 및 제 2 참조 블록 각각에 적용하여 상기 현재 예측 블록의 예측값을 획득할 수 있다(S540). 예를 들어, 상기 현재 예측 블록의 예측값은 수학식 2와 같이 획득될 수 있다.
Figure pat00002
상기 수학식 2에서 predblk[x,y]은 현재 예측 블록의 예측값을 의미하고, predblk0[x,y]은 제 1 참조 블록의 픽셀값을 의미하며, predblk1[x,y]은 제 2 참조 블록의 픽셀값을 의미한다.
도 7은 본 발명이 적용되는 일실시예로서, 템플릿 영역에 기초한 조도 보상(illumination compensation)을 통하여 현재 예측 블록의 예측값을 획득하는 방법을 도시한 블록도이다.
현재 픽쳐와 참조 픽쳐간의 조도 차이를 보상해 줌으로써, 현재 예측 블록의 레지듀얼을 줄일 수 있고, 영상의 압축률을 향상시킬 수 있다. 상기 조도 보상은 템플릿 영역을 이용하여 수행될 수 있고, 상기 템플릿 영역의 의미는 앞서 설명한 바와 같다.
도 7을 참조하면, 모션 정보 획득(710)는 현재 예측 블록의 모션 정보를 획득할 수 있다(S700). 상기 모션 정보는 앞서 설명한 모션 정보 획득 방법과 동일한 방법으로 획득될 수 있다. 또한, 상기 모션 정보는 슬라이스 타입을 고려하여 획득될 수 있다. 예를 들어, 현재 예측 블록의 슬라이스 타입을 확인하고, 그 확인 결과 현재 예측 블록이 속한 슬라이스가 P 슬라이스인 경우, 최대 1개의 모션 벡터 및 참조 픽쳐 인덱스가 획득될 수 있다. 현재 예측 블록이 속한 슬라이스가 B 슬라이스인 경우, 최대 2개의 모션 벡터 및 참조 픽쳐 인덱스가 획득될 수 있다.
참조 블록 획득부(720)는 상기 현재 예측 블록의 모션 정보를 이용하여 참조 블록을 획득할 수 있다(S710). 상기 참조 블록은 상기 현재 예측 블록의 인터 예측을 위해 참조되는 블록을 의미할 수 있다. 다시 말해, 현재 예측 블록의 참조 픽쳐 인덱스를 가진 참조 픽쳐에서 상기 현재 예측 블록의 모션 벡터에 의해 지시되는 블록을 의미할 수 있다. 상기 참조 블록은 현재 예측 블록이 디코딩되기 전에 디코딩이 완료된 블록일 수 있다. 상기 참조 블록의 픽셀값은 상기 현재 예측 블록의 예측값으로 이용될 수 있다. 다만, 상기 현재 예측 블록의 예측값으로 이용되기에 앞서 상기 참조 블록의 픽셀값에 제 1 오프셋 정보가 적용될 수 있다. 이하, 상기 제 1 오프셋 정보를 획득하는 방법에 대해서 살펴보기로 한다.
가중치 적용부(730)는 상기 현재 예측 블록의 템플릿 영역과 상기 참조 블록의 템플릿 영역을 이용하여 오프셋 정보를 획득할 수 있다(S720). 상기 오프셋 정보는 현재 예측 블록과 참조 블록간의 조도 차이를 나타내는 정보를 의미할 수 있다. 이하, 도 8 및 도 9를 참조하여 상기 오프셋 정보를 이용하여 상기 현재 예측 블록을 복원하는 과정을 살펴보기로 한다.
도 8은 본 발명이 적용되는 일실시예로서, 제 1 오프셋 정보를 이용하여 현재 예측 블록의 예측값을 획득하는 방법을 도시한 것이다.
도 8을 참조하면, 상기 제 1 오프셋 정보는 현재 예측 블록의 템플릿 영역내 픽셀값의 평균값과 참조 블록의 템플릿 영역내 픽셀값의 평균값 간의 차분값을 의미할 수 있다. 현재 예측 블록의 슬라이스 타입이 P 슬라이스인 경우, 인터 예측을 위해 최대 1개의 참조 블록만을 참조하므로 1개의 제 1 오프셋 정보가 획득될 수 있다. 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 상기 현재 예측 블록은 최대 2개의 참조 블록을 참조할 수 있으므로 2개의 제 1 오프셋 정보가 획득될 수 있다. 즉, 제 1 참조 블록과 제 2 참조 블록 각각에 대하여 제 1 오프셋 정보가 획득될 수 있다.
도 9는 본 발명이 적용되는 일실시예로서, 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 제 2 오프셋 정보를 이용하여 현재 예측 블록의 예측값을 획득하는 방법을 도시한 것이다.
현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 인터 예측을 위해 최대 2개의 참조 블록이 이용될 수 있다. 현재 예측 블록이 2개의 참조 블록을 가지는 경우, 이를 각각 제 1 참조 블록 및 제 2 참조 블록으로 부르기로 한다. 이 경우, 상기 제 1 참조 블록의 템플릿 영역의 픽셀값과 상기 제 2 참조 블록의 템플릿 영역의 픽셀값에 가중치가 적용될 수 있으며, 이로부터 가중된 참조 블록의 템플릿 영역의 픽셀값이 획득될 수 있다. 상기 가중치는 앞서 설명한 가중치와 동일한 방법으로 획득될 수 있으며, 자세한 설명은 생략하기로 한다.
도 9를 참조하면, 상기 제 2 오프셋 정보는 현재 예측 블록의 템플릿 영역의 픽셀값과 상기 가중된 참조 블록의 템플릿 영역의 픽셀값 간의 차분값을 의미할 수 있다. 상기 현재 예측 블록의 템플릿 영역의 픽셀값은 상기 현재 예측 블록의 템플릿 영역내 적어도 하나의 픽셀값을 의미할 수 있고, 또는 상기 템플릿 영역내 픽셀값들의 평균값을 의미할 수 있다.
마찬가지로, 상기 가중된 참조 블록의 템플릿 영역의 픽셀값은 상기 가중된 참조 블록의 템플릿 영역내 적어도 하나의 픽셀값을 의미할 수 있고, 또는 상기 템플릿 영역내 픽셀값들의 평균값을 의미할 수 있다.
상기 가중치 적용부(730)는 상기 오프셋 정보 및 참조 블록의 픽셀값으로부터 상기 현재 예측 블록의 예측값을 획득할 수 있다(S730).
이하, 도 8을 참조하여 상기 현재 예측 블록의 예측값을 획득하는 방법을 살펴보기로 한다.
도 8을 참조하면, 먼저 상기 제 1 오프셋 정보와 참조 블록의 픽셀값을 이용하여 수정된 참조 블록의 픽셀값이 획득될 수 있다.
예를 들어, 수정된 참조 블록의 픽셀값은 참조 블록의 픽셀값과 상기 참조 블록에 대한 제 1 오프셋 정보의 합으로 획득될 수 있으며, 이는 다음 수학식 3과 같다.
Figure pat00003
상기 수학식 3에서 predblk'[x,y]는 수정된 참조 블록의 픽셀값을 의미하고, predblk[x,y]는 참조 블록의 픽셀값을 의미하며, offset는 참조 블록에 대한 제 1 오프셋 정보를 의미한다. 다만, 만일 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우에는 제 1 참조 블록 및 제 2 참조 블록 각각에 대해서 수정된 참조 블록의 픽셀값이 획득될 수 있음은 물론이다.
그리고, 상기 수정된 참조 블록의 픽셀값으로부터 상기 현재 예측 블록의 예측값이 획득될 수 있다. 현재 예측 블록의 슬라이스 타입이 P 슬라이스인 경우에는 현재 예측 블록의 예측값은 상기 수정된 참조 블록의 픽셀값으로 획득될 수 있다. 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우에는 현재 예측 블록의 예측값은 수정된 제 1 참조 블록의 픽셀값과 수정된 제 2 참조 블록의 픽셀값에 가중치를 적용하여 획득될 수 있다. 예를 들어, 현재 예측 블록의 예측값은 수정된 제 1 참조 블록의 픽셀값과 수정된 제 2 참조 블록의 픽셀값 간의 평균값으로 획득될 수 있다. 또한, 상기 가중치는 앞서 설명한 가중치와 동일한 방법으로 획득될 수 있으며, 자세한 설명한 생략하기로 한다.
이하, 도 9를 참조하여 상기 현재 예측 블록의 예측값을 획득하는 방법을 살펴보기로 한다. 도 9를 참조하면, 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 인터 예측을 위해 제 1 참조 블록과 제 2 참조 블록이 이용될 수 있다. 이 경우, 상기 제 1 참조 블록의 픽셀값과 상기 제 2 참조 블록의 픽셀값에 가중치를 적용될 수 있으며, 이를 이하 가중된 참조 블록의 픽셀값이라 부르기로 한다. 상기 가중치는 앞서 설명한 가중치와 동일한 방법으로 획득될 수 있다. 상기 가중된 참조 블록의 픽셀값과 상기 제 2 오프셋 정보를 이용하여 현재 예측 블록의 예측값이 획득될 수 있다. 예를 들어, 상기 현재 예측 블록의 예측값은 상기 가중된 참조 블록의 픽셀값과 상기 제 2 오프셋 정보의 합일 수 있다.
상기 현재 예측 블록의 예측값과 상기 현재 예측 블록의 레지듀얼을 이용하여 상기 현재 예측 블록이 복원될 수 있다(S740). 상기 현재 예측 블록의 레지듀얼은 상기 현재 예측 블록의 픽셀값과 상기 현재 예측 블록의 예측값 간의 차분값을 의미할 수 있다.
이하, 상기 도 5에서 살펴본 템플릿 영역을 이용한 가중치 획득 방법 및 도 7에서 살펴본 템플릿 영역을 이용한 조도 보상(illumination compensation) 방법의 조합에 의해서도 현재 예측 블록의 예측값이 획득될 수 있으며, 이는 도 10을 참조하여 살펴보기로 한다.
도 10은 본 발명이 적용되는 일실시예로서, 템플릿 영역을 이용한 가중치 및 조도 보상에 기초하여 현재 예측 블록의 예측값을 획득하는 방법을 도시한 블록도이다.
도 10을 참조하면, 가중치 적용부(730)는 현재 예측 블록의 템플릿 영역과 참조 블록의 템플릿 영역을 이용하여 가중치를 획득할 수 있다(S1000). 템플릿 영역을 이용하여 가중치를 획득하는 방법을 도 5에서 설명하였는바, 자세한 설명은 생략하기로 한다.
또한, 가중치 적용부(730)는 현재 예측 블록의 템플릿 영역과 참조 블록의 템플릿 영역을 이용하여 오프셋 정보를 획득할 수 있다(S1010). 상기 오프셋 정보는 현재 예측 블록의 템플릿 영역의 픽셀값과 참조 블록의 템플릿 영역의 픽셀값 간의 차분값을 의미할 수 있다. 여기서, 상기 현재 예측 블록의 템플릿 영역의 픽셀값으로 상기 템플릿 영역내 픽셀값들 간의 평균값이 이용될 수 있고, 상기 참조 블록의 템플릿 영역의 픽셀값으로 상기 템플릿 영역내 픽셀값들 간의 평균값이 이용될 수 있다. 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 제 1 참조 블록 및 제 2 참조 블록에 대하여 각각의 오프셋 정보가 획득될 수 있다. 여기서, 상기 오프셋 정보에는 상기 템플릿 영역을 이용하여 획득된 가중치가 적용될 수 있으며, 이를 제 3 오프셋 정보라 부르기로 한다. 상기 제 3 오프셋 정보는 다음 수학식 4와 같다.
Figure pat00004
Figure pat00005
상기 수학식 4에서 offsetX는 제 1 참조 블록에 대한 제 3 오프셋 정보(offset0) 또는 제 2 참조 블록에 대한 제 3 오프셋 정보(offset1)를 의미하고, WX는 제 1 참조 블록 또는 제 2 참조 블록의 픽셀값에 적용되는 가중치를 의미하며, Mc는 현재 예측 블록의 템플릿 영역의 픽셀값들 간의 평균값을 의미하고, MX는 참조 블록의 템플릿 영역의 픽셀값들 간의 평균값을 의미한다.
또는, 상기 오프셋 정보는 현재 예측 블록의 템플릿 영역과 가중된 참조 블록의 템플릿 영역을 이용하여 획득될 수도 있다. 상기 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 경우, 제 1 참조 블록 및 제 2 참조 블록 각각에 대한 템플릿 영역이 이용될 수 있다. 이하, 제 1 템플릿 영역 및 제 2 템플릿 영역이라 부르기로 한다. 상기 제 1 템플릿 영역의 픽셀값과 상기 제 2 템플릿 영역의 픽셀값에 상기 템플릿 영역을 이용하여 획득된 가중치가 적용될 수 있다. 이로써, 상기 가중된 참조 블록의 템플릿 영역이 획득될 수 있다. 여기서, 상기 오프셋 정보는 현재 예측 블록의 템플릿 영역의 픽셀값들 간의 평균값과 상기 가중된 참조 블록의 템플릿 영역의 픽셀값들의 평균값 간의 차분값으로 획득될 수 있으며, 이를 제 4 오프셋 정보라 부르기로 한다. 상기 제 4 오프셋 정보는 다음 수학식 5와 같다.
Figure pat00006
Figure pat00007
상기 수학식 5에서 offset는 제 4 오프셋 정보를 의미하고, Mc는 현재 예측 블록의 템플릿 영역의 픽셀값들 간의 평균값을 의미하며, Mp는 가중된 참조 블록의 템플릿 영역의 픽셀값들 간의 평균값을 의미한다. 또, W0 및 W1는 템플릿 영역을 이용하여 획득된 가중치를 의미하고, T0(i) 및 T1(i)는 참조 블록의 템플릿 영역의 픽셀값을 의미하며, i는 픽셀의 인덱스를, N은 참조 블록의 템플릿 영역내의 픽셀의 개수를 의미한다.
상기 가중치 적용부(730)는 참조 블록의 픽셀값, 상기 템플릿 영역을 이용하여 획득된 가중치 및 상기 오프셋 정보를 이용하여 상기 현재 예측 블록의 예측값을 획득할 수 있다(S1020).
예를 들어, 상기 제 3 오프셋 정보를 이용하는 경우를 살펴보면, 제 1 참조 블록의 픽셀값과 제 2 참조 블록의 픽셀값에 상기 가중치를 적용하고, 상기 가중치가 적용된 제 1 참조 블록의 픽셀값과 제 2 참조 블록의 픽셀값에 상기 제 3 오프셋 정보를 각각 더함으로써, 현재 픽쳐와 참조 픽쳐간의 조도 차이를 보상해 줄 수 있다. 따라서, 상기 현재 예측 블록의 픽셀값은 다음 수학식 6과 같이 획득될 수 있다.
Figure pat00008
Figure pat00009
Figure pat00010
상기 수학식 6에서 predblk[x,y]는 현재 예측 블록의 예측값을 의미하고, predblkX[x,y]는 가중치가 적용된 참조 블록의 픽셀값을 의미하며, offsetX는 제 3 오프셋 정보를 의미하고, WX는 템플릿 영역을 이용하여 획득된 가중치를 의미하며, predblkX[x,y]는 참조 블록의 픽셀값을 의미한다.
예를 들어, 상기 제 4 오프셋 정보를 이용하는 경우를 살펴보면, 제 1 참조 블록의 픽셀값과 제 2 참조 블록의 픽셀값에 상기 가중치를 각각 적용하고, 이를 더함으로써 가중된 참조 블록의 픽셀값을 획득할 수 있다. 상기 가중된 참조 블록의 픽셀값에 상기 제 4 오프셋 정보를 더함으로써, 현재 픽쳐와 참조 픽쳐간의 조도 차이를 보상해 줄 수 있다. 따라서, 상기 현재 예측 블록의 픽셀값은 다음 수학식 7과 같이 획득될 수 있다.
Figure pat00011
Figure pat00012
상기 수학식 7에서 predblk[x,y]는 현재 예측 블록의 예측값을 의미하고, predblk"[x,y]는 가중된 참조 블록의 픽셀값을 의미하며, offset는 제 4 오프셋 정보를 의미한다. 또한, W0 및 W1는 템플릿 영역을 이용하여 획득된 가중치를 의미하고, predblk0[x,y] 및 predblk1[x,y]는 제 1 참조 블록의 픽셀값 및 제 2 참조 블록의 픽셀값을 각각 의미한다.
상기 현재 예측 블록의 예측값과 상기 현재 예측 블록의 레지듀얼을 이용하여 상기 현재 예측 블록이 복원될 수 있다(S1030). 상기 현재 예측 블록의 레지듀얼은 상기 현재 예측 블록의 픽셀값과 상기 현재 예측 블록의 예측값 간의 차분값을 의미할 수 있다.
본 발명은 비디오 신호를 디코딩하는 데 적용될 수 있다.

Claims (12)

  1. 현재 픽쳐의 현재 예측 블록의 모션 정보를 획득하는 단계;
    상기 현재 예측 블록의 모션 정보를 이용하여 참조 픽쳐의 참조 블록을 획득하는 단계;
    상기 참조 블록을 이용하여 현재 예측 블록의 예측값을 획득하는 단계; 및
    상기 현재 예측 블록의 예측값 및 상기 현재 예측 블록의 레지듀얼을 이용하여 상기 현재 예측 블록을 복원하는 단계를 포함하는 것을 특징으로 하는 비디오 신호 디코딩 방법.
  2. 제 1항에 있어서,
    상기 현재 예측 블록의 모션 정보를 획득하는 단계는,
    상기 현재 예측 블록의 블록 병합 플래그를 획득하는 단계; 및
    상기 블록 병합 플래그가 상기 현재 예측 블록의 모션 정보가 블록 병합을 이용하여 획득됨을 특정하는 경우, 상기 이웃 블록의 모션 정보로부터 상기 현재 예측 블록의 모션 정보를 획득하는 단계를 더 포함하되,
    상기 블록 병합 플래그라 함은 상기 현재 예측 블록의 모션 정보가 블록 병합을 이용하여 유도되는지를 특정하는 정보를 의미하고, 상기 블록 병합이라 함은 현재 예측 블록과 이웃 블록의 병합을 의미하며, 상기 이웃 블록이라 함은 상기 현재 예측 블록의 좌측 블록과 상단 블록을 포함하는 것을 특징으로 하는 비디오 신호 디코딩 방법.
  3. 제 2항에 있어서,
    상기 현재 예측 블록의 모션 정보를 획득하는 단계는,
    상기 좌측 블록의 모션 정보와 상기 상단 블록의 모션 정보가 동일한지 여부를 확인하는 단계; 및
    상기 좌측 블록의 모션 정보와 상기 상단 블록의 모션 정보가 상이한 경우, 상기 현재 예측 블록의 좌측 블록 병합 플래그를 획득하는 단계를 더 포함하되,
    상기 좌측 블록 병합 플래그라 함은 상기 현재 예측 블록이 상기 좌측 블록과 병합되는지 상기 상단 블록과 병합되는지를 특정하는 정보인 것을 특징으로 하는 비디오 신호 디코딩 방법.
  4. 제 3항에 있어서,
    상기 좌측 블록 병합 플래그가 상기 현재 예측 블록이 상기 좌측 블록과 병합됨을 특정하는 경우, 상기 현재 예측 블록의 모션 정보는 상기 좌측 블록의 모션 정보로부터 획득되고, 상기 좌측 블록 병합 플래그가 상기 현재 예측 블록이 상기 상단 블록과 병합됨을 특정하는 경우, 상기 현재 예측 블록의 모션 정보는 상기 상단 블록의 모션 정보로부터 획득되는 것을 특징으로 하는 비디오 신호 디코딩 방법.
  5. 제 1항에 있어서,
    상기 모션 정보는 모션 벡터 및 참조 픽쳐 인덱스를 포함하며, 상기 모션 벡터는 소수 픽셀 해상도를 가진 모션 벡터이되,
    상기 소수 픽셀 해상도는 1/2 픽셀 해상도, 1/4 픽셀 해상도 및 1/8 픽셀 해상도 중 어느 하나인 것을 특징으로 하는 비디오 신호 디코딩 방법.
  6. 제 5항에 있어서,
    상기 참조 픽쳐의 참조 블록을 획득하는 단계는,
    보간 필터를 이용하여 상기 참조 픽쳐의 소수 픽셀 해상도의 신호를 생성하는 단계를 더 포함하되,
    상기 보간 필터는 매 픽셀 위치마다 상기 보간 필터의 입력 신호에 각각의 필터 계수를 곱한 후 총합을 출력하는 필터인 것을 특징으로 하는 비디오 신호 디코딩 방법.
  7. 제 6항에 있어서,
    상기 보간 필터의 입력 신호는 상기 참조 픽쳐의 정수 픽셀 또는 기생성된 소수 픽셀 해상도의 신호 중 적어도 하나를 포함하는 것을 특징으로 하는 비디오 신호 디코딩 방법.
  8. 제 6항에 있어서,
    상기 보간 필터는 상기 생성되는 소수 픽셀 해상도의 신호 위치 정보를 고려하여 수직 방향, 수평 방향 또는 대각선 방향으로 이용되되,
    상기 소수 픽셀 해상도의 신호 위치 정보는 정수 픽셀의 위치와 상기 소수 픽셀 해상도의 신호의 위치와의 차이값인 것을 특징으로 하는 비디오 신호 디코딩 방법.
  9. 제 6항에 있어서,
    상기 보간 필터는 보간 필터 식별 정보에 의해 특정되되,
    상기 보간 필터 식별 정보는 보간 필터의 종류 또는 필터 계수를 특정하는 정보인 것을 특징으로 하는 비디오 신호 디코딩 방법.
  10. 제 1항에 있어서,
    상기 현재 예측 블록의 슬라이스 타입이 B 슬라이스인 것을 특징으로 하는 비디오 신호 디코딩 방법.
  11. 제 10항에 있어서,
    상기 현재 예측 블록의 예측값은 2개의 참조 블록의 픽셀값 각각에 가중치를 적용하여 획득되는 것을 특징으로 하는 비디오 신호 디코딩 방법.
  12. 제 11항에 있어서,
    상기 가중치는 (1,0), (2/3,1/3), (1/2,1/2), (1/3,2/3), (0,1) 중 어느 하나인 것을 특징으로 하는 비디오 신호 디코딩 방법.
KR1020100126941A 2009-12-20 2010-12-13 비디오 신호 디코딩 방법 및 장치 KR20110071047A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/KR2010/008978 WO2011074874A2 (ko) 2009-12-20 2010-12-15 비디오 신호 디코딩 방법 및 장치
EP10837870.4A EP2515542A4 (en) 2009-12-20 2010-12-15 METHOD AND DEVICE FOR DECODING VIDEO SIGNALS
CN201080063766.4A CN102763418B (zh) 2009-12-20 2010-12-15 视频信号解码方法和设备
US13/517,313 US9544593B2 (en) 2009-12-20 2010-12-15 Video signal decoding method and device

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US28832509P 2009-12-20 2009-12-20
US28832109P 2009-12-20 2009-12-20
US61/288,325 2009-12-20
US61/288,321 2009-12-20
US30158810P 2010-02-04 2010-02-04
US61/301,588 2010-02-04

Publications (1)

Publication Number Publication Date
KR20110071047A true KR20110071047A (ko) 2011-06-28

Family

ID=44402313

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100126941A KR20110071047A (ko) 2009-12-20 2010-12-13 비디오 신호 디코딩 방법 및 장치

Country Status (5)

Country Link
US (1) US9544593B2 (ko)
EP (1) EP2515542A4 (ko)
KR (1) KR20110071047A (ko)
CN (1) CN102763418B (ko)
WO (1) WO2011074874A2 (ko)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013025065A3 (ko) * 2011-08-18 2013-04-18 (주)휴맥스 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법
WO2013070028A1 (ko) * 2011-11-11 2013-05-16 엘지전자 주식회사 영상 정보 전송 방법 및 장치와 이를 이용한 복호화 방법 및 장치
WO2013081365A1 (ko) * 2011-11-28 2013-06-06 에스케이텔레콤 주식회사 개선된 머지를 이용한 영상 부호화/복호화 방법 및 장치
WO2013169031A1 (ko) * 2012-05-10 2013-11-14 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
KR101348566B1 (ko) * 2013-10-21 2014-01-10 주식회사 케이티 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치
WO2014010935A1 (ko) * 2012-07-11 2014-01-16 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
KR101354086B1 (ko) * 2011-11-23 2014-01-28 (주)휴맥스 공통 병합 후보 블록 집합을 이용한 영상 부호화 방법 및 복호화 방법
US8654855B2 (en) 2011-08-29 2014-02-18 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
KR101423648B1 (ko) * 2011-09-09 2014-07-28 주식회사 케이티 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치
KR20140139454A (ko) * 2011-11-08 2014-12-05 주식회사 케이티 영상의 부호화 방법 및 장치, 및 복호화 방법 및 장치
KR101527443B1 (ko) * 2012-10-12 2015-06-12 한국전자통신연구원 영상의 부호화/복호화 방법 및 이를 이용하는 장치
US9392299B2 (en) 2011-11-28 2016-07-12 Sk Telecom Co., Ltd. Method and apparatus for video encoding/decoding using improved merge
KR101660031B1 (ko) * 2015-06-24 2016-09-26 주식회사 에스원 고속 영상 부호화 방법 및 그 장치

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8902978B2 (en) * 2010-05-30 2014-12-02 Lg Electronics Inc. Enhanced intra prediction mode signaling
JP2012209911A (ja) * 2010-12-20 2012-10-25 Sony Corp 画像処理装置および方法
EP2661879B1 (en) * 2011-01-03 2019-07-10 HFI Innovation Inc. Method of filter-unit based in-loop filtering
RS64604B1 (sr) * 2011-06-16 2023-10-31 Ge Video Compression Llc Entropijsko kodiranje razlika vektora kretanja
US9398300B2 (en) * 2011-10-07 2016-07-19 Texas Instruments Incorporated Method, system and apparatus for intra-prediction in video signal processing using combinable blocks
EP3965425A3 (en) * 2011-12-23 2022-06-08 Electronics And Telecommunications Research Institute Method and apparatus for setting reference picture index of temporal merging candidate
US9955152B2 (en) * 2012-02-07 2018-04-24 Sun Patent Trust Image coding method and image decoding method
US20130243085A1 (en) * 2012-03-15 2013-09-19 Samsung Electronics Co., Ltd. Method of multi-view video coding and decoding based on local illumination and contrast compensation of reference frames without extra bitrate overhead
JP5890794B2 (ja) * 2013-02-28 2016-03-22 株式会社東芝 画像処理装置
CN110430433B (zh) * 2014-01-03 2022-12-20 庆熙大学校产学协力团 导出子预测单元的时间点之间的运动信息的方法和装置
CN103957424B (zh) * 2014-04-15 2017-04-12 南京第五十五所技术开发有限公司 一种有效消除视频的乱码或方块的方法
CN105338363B (zh) * 2014-07-30 2018-12-14 联想(北京)有限公司 一种视频帧的编码及解码方法和装置
WO2016068674A1 (ko) * 2014-10-31 2016-05-06 삼성전자 주식회사 움직임 벡터 부복호화 방법 및 장치
CN107113425A (zh) * 2014-11-06 2017-08-29 三星电子株式会社 视频编码方法和设备以及视频解码方法和设备
US10887597B2 (en) * 2015-06-09 2021-01-05 Qualcomm Incorporated Systems and methods of determining illumination compensation parameters for video coding
WO2017035831A1 (en) * 2015-09-06 2017-03-09 Mediatek Inc. Adaptive inter prediction
WO2017035833A1 (en) * 2015-09-06 2017-03-09 Mediatek Inc. Neighboring-derived prediction offset (npo)
EP3364655A4 (en) * 2015-11-11 2018-10-10 Samsung Electronics Co., Ltd. Method and apparatus for decoding video, and method and apparatus for encoding video
CN117061743A (zh) * 2016-04-29 2023-11-14 世宗大学校产学协力团 用于对图像信号进行编码/解码的方法和设备
CN109417619B (zh) 2016-04-29 2022-04-19 英迪股份有限公司 用于编码/解码视频信号的方法以及视频信号的传送方法
CN109076234A (zh) * 2016-05-24 2018-12-21 华为技术有限公司 图像预测方法和相关设备
MX2019000506A (es) * 2016-07-14 2019-03-28 Samsung Electronics Co Ltd Metodo de decodificacion de video y dispositivo para ello y metodo de codificacion de video y dispositivo para ello.
KR102147447B1 (ko) * 2016-09-22 2020-08-24 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측 방법 및 장치
US10880570B2 (en) * 2016-10-05 2020-12-29 Qualcomm Incorporated Systems and methods of adaptively determining template size for illumination compensation
US10555006B2 (en) * 2016-12-22 2020-02-04 Qualcomm Incorporated Deriving bilateral filter information based on a prediction mode in video coding
US11212553B2 (en) * 2017-11-28 2021-12-28 Electronics And Telecommunications Research Institute Bidirectional intra prediction method and apparatus
US11368676B2 (en) * 2018-01-16 2022-06-21 Vid Scale, Inc. Motion compensated bi-prediction based on local illumination compensation
CN117560505A (zh) 2018-03-29 2024-02-13 华为技术有限公司 一种双向帧间预测方法及装置
US11457233B2 (en) 2018-04-12 2022-09-27 Arris Enterprises Llc Motion information storage for video coding and signaling
US11956460B2 (en) * 2018-08-31 2024-04-09 Hulu, LLC Selective template matching in video coding
WO2020073904A1 (en) * 2018-10-08 2020-04-16 Huawei Technologies Co., Ltd. An image processing device and method for performing deblocking
US11330298B2 (en) * 2019-06-25 2022-05-10 Qualcomm Incorporated Simplified intra chroma mode coding in video coding

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1939067B (zh) 2004-04-02 2011-07-20 汤姆森许可贸易公司 用于复杂度可伸缩视频编码器的方法和设备
KR100714696B1 (ko) * 2005-06-24 2007-05-04 삼성전자주식회사 다계층 기반의 가중 예측을 이용한 비디오 코딩 방법 및장치
KR20070012201A (ko) 2005-07-21 2007-01-25 엘지전자 주식회사 영상 신호의 인코딩 및 디코딩 방법
JP5475464B2 (ja) 2007-01-17 2014-04-16 エルジー エレクトロニクス インコーポレイティド ビデオ信号処理方法及び装置
CN103997655B (zh) * 2007-04-09 2017-05-10 株式会社Ntt都科摩 图像预测编码装置及方法、图像预测解码装置及方法
JP4788649B2 (ja) * 2007-04-27 2011-10-05 株式会社日立製作所 動画像記録方法及びその装置
KR101568708B1 (ko) * 2007-09-02 2015-11-12 엘지전자 주식회사 비디오 신호처리 방법 및 장치
EP2048886A1 (en) * 2007-10-11 2009-04-15 Panasonic Corporation Coding of adaptive interpolation filter coefficients
US8873626B2 (en) * 2009-07-02 2014-10-28 Qualcomm Incorporated Template matching for video coding

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013025065A3 (ko) * 2011-08-18 2013-04-18 (주)휴맥스 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법
US9161043B2 (en) 2011-08-29 2015-10-13 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
US8774279B2 (en) 2011-08-29 2014-07-08 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
USRE49907E1 (en) 2011-08-29 2024-04-02 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
US9036709B1 (en) 2011-08-29 2015-05-19 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
US9025669B1 (en) 2011-08-29 2015-05-05 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
US9025668B2 (en) 2011-08-29 2015-05-05 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
US8654855B2 (en) 2011-08-29 2014-02-18 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
US8855209B2 (en) 2011-08-29 2014-10-07 Ibex Pt Holdings Co., Ltd. Apparatus for decoding motion information in merge mode
KR101423648B1 (ko) * 2011-09-09 2014-07-28 주식회사 케이티 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치
KR20140139454A (ko) * 2011-11-08 2014-12-05 주식회사 케이티 영상의 부호화 방법 및 장치, 및 복호화 방법 및 장치
US10440389B2 (en) 2011-11-11 2019-10-08 Lg Electronics Inc. Method and device for transmitting image information, and decoding method and device using same
US11025954B2 (en) 2011-11-11 2021-06-01 Lg Electronics Inc. Method and device for transmitting image information, and decoding method and device using same
US11812056B2 (en) 2011-11-11 2023-11-07 Lg Electronics Inc. Method and device for transmitting image information, and decoding method and device using same
WO2013070028A1 (ko) * 2011-11-11 2013-05-16 엘지전자 주식회사 영상 정보 전송 방법 및 장치와 이를 이용한 복호화 방법 및 장치
KR101354086B1 (ko) * 2011-11-23 2014-01-28 (주)휴맥스 공통 병합 후보 블록 집합을 이용한 영상 부호화 방법 및 복호화 방법
US9462292B1 (en) 2011-11-28 2016-10-04 Sk Telecom Co., Ltd. Method and apparatus for video encoding/decoding using improved merge
WO2013081365A1 (ko) * 2011-11-28 2013-06-06 에스케이텔레콤 주식회사 개선된 머지를 이용한 영상 부호화/복호화 방법 및 장치
US9392299B2 (en) 2011-11-28 2016-07-12 Sk Telecom Co., Ltd. Method and apparatus for video encoding/decoding using improved merge
US9402084B2 (en) 2011-11-28 2016-07-26 Sk Telecom Co., Ltd. Method and apparatus for video encoding/decoding using improved merge
US9571852B2 (en) 2011-11-28 2017-02-14 Sk Telecom Co., Ltd. Method and apparatus for video encoding/decoding using improved merge
WO2013169031A1 (ko) * 2012-05-10 2013-11-14 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
US10341677B2 (en) 2012-05-10 2019-07-02 Lg Electronics Inc. Method and apparatus for processing video signals using inter-view inter-prediction
WO2014010935A1 (ko) * 2012-07-11 2014-01-16 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
KR101527443B1 (ko) * 2012-10-12 2015-06-12 한국전자통신연구원 영상의 부호화/복호화 방법 및 이를 이용하는 장치
US10506253B2 (en) 2012-10-12 2019-12-10 Electronics And Telecommunications Research Institute Image encoding/decoding method and device using same
US11202094B2 (en) 2012-10-12 2021-12-14 Electronics And Telecommunications Research Institute Image encoding/decoding method and device using same
US11202095B2 (en) 2012-10-12 2021-12-14 Electronics And Telecommunications Research Institute Image encoding/decoding method and device using same
US11202096B2 (en) 2012-10-12 2021-12-14 Electronics And Telecommunications Research Institute Image encoding/decoding method and device using same
US11228785B2 (en) 2012-10-12 2022-01-18 Electronics And Telecommunications Research Institute Image encoding/decoding method and device using same
US11234018B2 (en) 2012-10-12 2022-01-25 Electronics And Telecommunications Research Institute Image encoding/decoding method and device using same
US11743491B2 (en) 2012-10-12 2023-08-29 Electronics And Telecommunications Research Institute Image encoding/decoding method and device using same
KR101348566B1 (ko) * 2013-10-21 2014-01-10 주식회사 케이티 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치
KR101660031B1 (ko) * 2015-06-24 2016-09-26 주식회사 에스원 고속 영상 부호화 방법 및 그 장치

Also Published As

Publication number Publication date
CN102763418A (zh) 2012-10-31
US20140003522A1 (en) 2014-01-02
CN102763418B (zh) 2015-09-09
WO2011074874A2 (ko) 2011-06-23
EP2515542A2 (en) 2012-10-24
US9544593B2 (en) 2017-01-10
EP2515542A4 (en) 2013-06-19
WO2011074874A3 (ko) 2011-10-20

Similar Documents

Publication Publication Date Title
KR20110071047A (ko) 비디오 신호 디코딩 방법 및 장치
JP6242984B2 (ja) 動画符号化装置
CN110809887B (zh) 用于多参考预测的运动矢量修正的方法和装置
US10063877B2 (en) Method and an apparatus for processing a video signal
KR101269116B1 (ko) 인터 예측 부호화된 동영상 복호화 방법
CN108028931B (zh) 用于视频编解码的自适应帧间预测的方法及装置
EP2677753B1 (en) Method for decoding motion vectors
EP3806461A1 (en) Video signal processing method and apparatus using adaptive motion vector resolution
US8948243B2 (en) Image encoding device, image decoding device, image encoding method, and image decoding method
US20140044181A1 (en) Method and a system for video signal encoding and decoding with motion estimation
CN111543055A (zh) 视频编码设备、视频解码设备、视频编码方法、视频解码方法、程序和视频系统
US20210344949A1 (en) Method and apparatus for inter prediction in video coding system
KR20130067280A (ko) 인터 예측 부호화된 동영상 복호화 방법
WO2024007789A1 (en) Prediction generation with out-of-boundary check in video coding
TW202341740A (zh) 視訊編解碼方法及其電子裝置
TW202408232A (zh) 更新合併候選的運動屬性

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination