KR20140087137A - 적응적 양 예측 방법 및 장치 - Google Patents

적응적 양 예측 방법 및 장치 Download PDF

Info

Publication number
KR20140087137A
KR20140087137A KR1020120155226A KR20120155226A KR20140087137A KR 20140087137 A KR20140087137 A KR 20140087137A KR 1020120155226 A KR1020120155226 A KR 1020120155226A KR 20120155226 A KR20120155226 A KR 20120155226A KR 20140087137 A KR20140087137 A KR 20140087137A
Authority
KR
South Korea
Prior art keywords
prediction
block
list
motion
information
Prior art date
Application number
KR1020120155226A
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 KR1020120155226A priority Critical patent/KR20140087137A/ko
Publication of KR20140087137A publication Critical patent/KR20140087137A/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/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/117Filters, e.g. for pre-processing or post-processing
    • 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/124Quantisation
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

적응적 양 예측 방법 및 장치가 개시되어 있다. 양 예측 방법은 양 예측 방법을 결정하기 위한 정보를 유도하는 단계와 유도된 양 예측 방법을 결정하기 위한 정보를 기초로 고속 양 예측 또는 확장된 양 예측을 수행하는 단계를 포함할 수 있다. 따라서, 유도된 영상 관련 정보를 기초로 효과적인 양 예측 방법을 선택함으로서 부호화 및 복호화 속도를 증가시킬 수 있다.

Description

적응적 양 예측 방법 및 장치{METHOD AND APPARRATUS OF ADAPTIVE BI-PREDICTION}
본 발명은 영상 처리 방법 및 장치에 관한 것으로 더욱 상세하게는 화면 간 예측 방법 및 이러한 방법을 사용하는 장치에 관한 것이다.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 응용 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 데이터량이 증가하기 때문에 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 데이터를 전송하거나 기존의 저장 매체를 이용해 저장하는 경우, 전송 비용과 저장 비용이 증가하게 된다. 영상 데이터가 고해상도, 고품질화 됨에 따라 발생하는 이러한 문제들을 해결하기 위해서는 고효율의 영상 압축 기술들이 활용될 수 있다.
영상 압축 기술로 현재 픽쳐의 이전 또는 이후 픽쳐로부터 현재 픽쳐에 포함된 화소값을 예측하는 화면 간 예측 기술, 현재 픽쳐 내의 화소 정보를 이용하여 현재 픽쳐에 포함된 화소값을 예측하는 화면 내 예측 기술, 출현 빈도가 높은 값에 짧은 부호를 할당하고 출현 빈도가 낮은 값에 긴 부호를 할당하는 엔트로피 부호화 기술 등 다양한 기술이 존재하고 이러한 영상 압축 기술을 이용해 영상 데이터를 효과적으로 압축하여 전송 또는 저장할 수 있다.
본 발명의 목적은 적응적 양 예측 방법을 제공하는 것이다.
또한, 본 발명의 또 다른 목적은 적응적 양 예측 방법을 수행하는 장치를 제공하는 것이다.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 양 예측 방법은 양 예측 방법을 결정하기 위한 정보를 유도하는 단계와 상기 유도된 양 예측 방법을 결정하기 위한 정보를 기초로 고속 양 예측 또는 확장된 양 예측을 수행하는 단계를 포함할 수 있다.
상술한 바와 같이 본 발명의 실시예에 따른 적응적 양 예측 방법 및 장치에 따르면, 유도된 영상 관련 정보를 기초로 효과적인 양 예측 방법을 선택함으로서 부호화 및 복호화 속도를 증가시킬 수 있다.
도 1은 본 발명의 일실시예에 따른 영상 부호화 장치의 구성을 나타내는 블록도이다.
도 2는 본 발명의 또 다른 실시예에 따른 영상 복호화 장치의 구성을 나타내는 블록도이다.
도 3은 본 발명의 실시예에 따른 화면 간 예측 방법을 설명하기 위한 개념도이다.
도 4는 본 발명의 실시예에서 사용되는 고속 양 예측(bi prediction) 방법을 나타낸 개념도이다.
도 5는 본 발명의 실시예에 따른 확장된 고속 양 예측 방법을 사용한 움직임 예측 방법을 나타낸 개념도이다.
도 6은 본 발명의 실시예에 따른 영상 부호화부의 동작을 나타낸 순서도이다.
도 7은 본 발명의 실시예에 따른 최적 리스트 정보를 산출하는 방법을 나타낸 개념도이다.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 아울러, 본 발명에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
제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에서 전술한 영상 부호화기 및 영상 복호화기에 포함된 각 구성부에서 수행될 수 있다. 구성부의 의미는 하드웨어적인 의미뿐만 아니라 알고리즘을 통해 수행될 수 있는 소프트웨어적인 처리 단위도 포함할 수 있다.
도 3은 본 발명의 실시예에 따른 화면 간 예측 방법을 설명하기 위한 개념도이다.
도 3을 참조하면, 화면 간 예측은 아래와 같은 방법으로 수행될 수 있다.
화면 간 예측은 현재 블록이 참조하는 픽쳐를 기준으로 적어도 하나의 움직임 예측 벡터를 유도하여 유도된 움직임 예측 벡터를 기초로 예측을 수행할 수 있다.
도 3의 (A)는 단 방향 예측 방법을 나타낸 개념도이다.
단 방향 예측 방법의 경우 하나의 참조 픽쳐 리스트에서 선택된 하나의 참조 픽쳐를 기준으로 현재 블록(310)에 대한 화면 간 예측을 수행할 수 있다. 참조 픽쳐가 포함된 리스트를 L0 리스트(300)라고 할 수 있는데 이러한 L0 리스트(300)에 포함된 픽쳐 중 하나의 픽쳐를 기준으로 움직임 예측 벡터를 산출할 수 있다.
도 3의 (B)는 양 방향 예측 방법을 나타낸 개념도이다.
양 방향 예측 방법의 경우 두 개의 참조 픽쳐 리스트(330, 340)에서 각각 선택된 두 개의 참조 픽쳐를 기준으로 현재 블록(320)에 대한 화면 간 예측을 수행할 수 있다. 참조 픽쳐가 포함된 각각의 리스트를 L0 리스트(330) 및 L1 리스트(340)라고 할 수 있다. L0 리스트(330) 및 L1 리스트(340)에 포함된 각각의 픽쳐를 기준으로 움직임 예측 벡터를 산출할 수 있다.
이하, 본 발명의 실시예에서는 획득된 특정한 영상 정보를 기초로 고속 양 예측을 수행할 것인지 아니면 확장된 양 예측을 수행할 것인지에 대해 결정하는 방법에 대해 개시한다.
도 4는 본 발명의 실시예에서 사용되는 고속 양 예측(bi prediction) 방법을 나타낸 개념도이다.
도 4에서는 고속 양 예측 방법으로 일반적인 양 예측 방법보다 빠른 양 예측을 수행하기 위한 방법에 대해 개시한다.
도 4의 (A)는 기존의 양 예측 방법을 나타낸 개념도이다.
도 4의 (A)를 참조하면, 하나의 예측 블록은 L0 리스트를 기반으로 한 예측 및 L1 리스트를 기반으로 한 양 예측을 수행할 수 있다. 일반적인 양 예측은 두 개의 참조 픽쳐 리스트에 포함된 각각의 픽쳐를 기준으로 산출된 두 개의 움직임 예측 벡터를 기준으로 예측을 수행할 수 있다. 즉, 각각의 참조 픽쳐를 기준으로 모든 영역을 움직여서 L1 리스트 참조 픽쳐 및 L0 리스트 참조 픽쳐를 조합하여 최적의 움직임 예측 벡터를 산출할 수 있다. 산출된 두 개의 움직임 예측 벡터를 기초로 생성된 예측된 블록을 기초로 두 개의 예측된 블록을 소정의 가중치로 더하여 원본 블록과 가장 오차가 작은 최종 예측 블록을 생성할 수 있다.
이하, 본 발명의 실시예에서는 L0 리스트에서 산출된 참조 픽쳐와 L1 리스트에서 산출된 참조 픽쳐가 현재 블록을 포함하는 현재 픽쳐를 기준으로 시간적으로 전 후에 위치한 것을 가정하여 설명한다.
하지만, L0 리스트에서 산출된 참조 픽쳐와 L1 리스트에서 산출된 참조 픽쳐가 동일한 픽쳐이거나 동일하게 현재 블록을 기준으로 이전에 존재하는 픽쳐일 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
이러한 일반적인 양 예측 방법과 다르게 고속 양 예측 방법은 하나의 움직임 예측 벡터(L1 리스트의 참조 픽쳐를 기초로 산출된 움직임 벡터)를 먼저 결정하고, 결정된 하나의 움직임 벡터를 기초로 나머지 하나의 움직임 예측 벡터를 산출할 수 있다.
도 4의 (B)는 고속 양 예측 방법을 나타낸 개념도이다.
도 4의 (B)를 참조하면, L1 리스트의 참조 픽쳐만을 기초로 움직임 예측 벡터를 미리 산출하고, L1 리스트의 참조 픽쳐만을 기초로 산출된 움직임 예측 벡터를 기초로 나머지 L0 리스트의 참조 픽쳐를 기초로 한 움직임 예측 벡터를 산출할 수 있다.
이러한 방법을 사용하는 경우, 따로 두 개의 리스트(L0 리스트, L1 리스트)를 모두 검색하여 최적의 움직임 예측 벡터를 산출할 필요가 없이 하나의 고정된 움직임 예측 벡터를 기초로 나머지 움직임 예측 벡터가 산출되므로 영상 처리 프로세싱의 속도가 높아질 수 있다.
도 5는 본 발명의 실시예에 따른 확장된 고속 양 예측 방법을 사용한 움직임 예측 방법을 나타낸 개념도이다.
도 5에서는 도 4에서 추가적으로 L0 리스트에 포함된 참조 픽쳐 만을 고정하여 움직임 예측 벡터를 산출하는 확장된 고속 양 예측 방법에 대해 개시한다.
도 5의 (A)는 L1 리스트에 포함된 참조 픽쳐만을 사용하여 움직임 예측 벡터를 우선적으로 결정하고, L0 리스트에 포함된 참조 픽쳐는 그 후에 결정하는 방법을 나타낸다.
도 5의 (B)는 도 5의 (A)와 반대로 L0 리스트에 포함된 참조 픽쳐만을 사용하여 움직임 예측 벡터를 우선적으로 결정하고, L1 리스트에 포함된 참조 픽쳐는 그 후에 결정하는 방법을 나타낸다.
즉, 확장된 고속 양 예측 방법에서는 도 5의 (A)의 방법으로 산출된 움직임 예측 벡터 및 도 5의 (B)의 방법으로 산출된 움직임 예측 벡터 중 최적의 움직임 벡터를 결정하여 화면 간 예측을 수행할 수 있다.
이하, 본 발명의 실시예에서는 도 4의 (B)에서 전술한 고속 양 예측 방법 및 도 5에서 전술한 확장된 고속 양 예측 방법을 사용하여 예측 블록에 대한 화면 간 예측을 수행하는 방법에 대해 개시한다.
도 6은 본 발명의 실시예에 따른 영상 부호화부의 동작을 나타낸 순서도이다.
도 6을 참조하면, 수행할 양 예측을 결정하기 위한 정보를 유도한다(단계 S600).
양 예측 부호화를 수행하기 위한 정보로서 1) 주변 블록들의 부호화 정보, 2) 상위 크기의 블록들의 부호화 정보, 3) L0/L1 예측 후 최적 블록들의 부호화 정보 중 적어도 하나의 정보를 사용할 수 있다.
(1) 주변 블록들의 부호화 정보는 주변 블록들의 움직임 벡터 (Motion Vector) 정보, 최적 모드 정보(화면 내 예측/화면 간 예측), 주변 블록의 최적 변환 깊이, 부호화 블록의 분할 깊이(분할 정보), 주변 블록의 Coded Block Pattern/Coded Block Flag 정보, 주변 블록의 부호화 비용 정보 (율-왜곡 비용, SAD 값 등) 등이 될 수 있다.
(2) 상위 크기의 블록에서의 부호화 정보는 상위 크기의 블록에서 부호화를 먼저 수행하고 나서 생성되는 부호화 정보를 지시할 수 있다. 예를 들어, 상위 크기에서의 부호화 정보는 상위 블록에서의 움직임 벡터(Motion Vector) 정보, 상위 블록에서의 최적 모드 정보(화면 내/화면 간), 상위 블록에서의 Coded Block Pattern/Coded Block Flag 정보(변환 계수 정보), 상위 블록에서의 부호화 비용 정보(율-왜곡 비용, SAD 값 등) 등이 될 수 있다.
(3) 단 방향 예측(L0/L1 예측) 후, 최적 예측 블록들의 부호화 정보는 단 방향 예측 후 생성된 최적 예측 블록들의 부호화 정보를 지시한다. 단 방향 예측(L0/L1 예측) 후, 최적 예측 블록들의 부호화 정보는 단 방향 예측에서 결정된 최적 블록들의 움직임 벡터 (Motion Vector) 정보, 단 방향 예측에서 결정된 최적 블록들의 최적 모드 정보 (화면 내/화면 간), 단 방향 예측에서 결정된 최적 블록들의 Coded Block Pattern/Coded Block Flag 정보 (변환 계수 정보), 단 방향 예측에서 결정된 최적 블록들의 부호화 비용 정보(율-왜곡 비용, SAD 값 등) 등을 지시할 수 있다.
위와 같은 정보들은 양 예측 방법을 수행할지 여부를 결정하기 위해 사용되는 정보들의 예시로서 위와 다른 정보들이 양 예측 방법을 수행할지 여부를 결정하기 위해 사용될 수도 있다.
단계 S600을 통해 획득된 정보를 기초로 예측 대상 블록에 대한 화면 간 예측을 수행한다(단계 S610).
화면 간 예측 방법으로 단 방향 예측, 고속 양 예측 또는 확장된 고속 양 예측과 같은 방법이 수행될 수 있다.
단계 S600을 통해 획득된 정보는 예측 블록에 대한 고속 양 예측 및 확장된 고속 양 예측을 수행할지 여부를 결정하기 위한 정보로서 사용될 수 있다.
이하, 본 발명의 실시예에서는, 이러한 정보 중 움직임 벡터 정보, 최적 리스트 정보, 부호화 비용 정보 등을 기초로 고속 양 예측 또는 확장된 양 예측 수행 여부를 결정하는 방법으로서 (1) 움직임 벡터를 기초로 고속 양 예측 또는 확장된 양 예측 수행 여부를 결정하는 방법, (2) 최적 리스트 정보를 기초로 고속 양 예측 수행 여부 및 확장된 양 예측 여부를 결정하는 방법, (3) 부호화 비용을 기초로 고속 양 예측 수행 여부 및 확장된 양 예측 여부를 결정하는 방법 등에 대해 개시한다.
(1) 움직임 벡터를 기초로 고속 양 예측 수행 여부를 결정하는 방법.
단 방향 예측을 수행한 후, 결정된 최적 예측 블록들의 움직임 예측 벡터 정보를 이용하여 현재 블록(예측 대상 블록)의 양 예측 부호화 수행 여부를 결정할 수 있다. 일반적으로 L0 리스트 및 L1 리스트 중 하나의 리스트를 사용한 예측이 잘 수행되지 않는 경우 또는 L0 리스트만을 기초로 생성된 움직임 예측 벡터 및 L1 리스트만을 기초로 생성된 움직임 예측 벡터 사이에 상관성이 떨어지는 경우 양 예측을 수행할 수 있다.
따라서 본 발명의 실시예에 따른 화면 간 예측 방법에서는 L0 리스트를 기초로 산출된 움직임 예측 벡터(mvpL0)와 L1 리스트를 기초로 생성된 움직임 예측 벡터(mvpL0)를 비교하여 산출된 움직임 예측 벡터 사이의 상관성을 비교하여 고속 양 예측을 수행할지 여부를 결정할 수 있다.
예를 들어, 각각의 단 방향 예측에서 결정된 움직임 예측 벡터의 차이 값을 기초로 고속 양 예측을 수행할지 여부를 결정할 수 있다.
1) L1 리스트를 기초로 산출된 움직임 예측 벡터와 L0 리스트를 기초로 산출된 움직임 예측 벡터 사이의 차이 값이 특정한 값보다 클 경우 L0 리스트 및 L1 리스트를 기초로 산출된 움직임 예측 벡터 사이의 유사성이 적다고 판단할 수 있다. 따라서, 이러한 경우 고속 양 예측을 수행하여 부호화 효율을 높일 수 있다.
2) L1 리스트를 기초로 산출된 움직임 예측 벡터와 L0 리스트를 기초로 산출된 움직임 예측 벡터 사이의 차이 값이 특정 값보다 작을 경우 각각의 움직임 예측 벡터 사이의 유사성이 크다고 판단할 수 있다. 따라서, 이러한 경우 고속 양 예측을 수행하지 않고 단 방향 예측만을 수행하여 부호화 효율에 대한 변화를 적게 하면서 부호화를 수행 시 인코딩 속도를 높일 수 있다. 특정 값은 부호화 단계에서 임의로 정해진 값, L0 리스트 및 L1 리스트 각각에서 생성된 움직임 벡터의 평균 값 등이 될 수 있다.
또 다른 예로, 단 방향 예측에서 생성된 움직임 예측 벡터와 주변 블록에서 생성된 움직임 예측 벡터(MVP: Predictive MV)와의 차이 값 비교를 통한 고속 양 예측의 수행 여부를 결정할 수 있다.
1) 단 방향 예측에서 생성된 움직임 예측 벡터와 주변 블록에서 생성된 움직임 예측 벡터와의 차이 값이 특정한 값 보다 클 경우, 움직임 예측 부정확할 것으로 예측하여 현재 블록에 대해서는 고속 양 예측 수행할 수 있다.
2) 단 방향 예측에서 생성된 움직임 예측 벡터와 주변 블록에서 생성된 움직임 예측 벡터와의 차이 값이 특정 값보다 작을 경우 움직임 예측이 비교적 정확하다고 예측할 수 있고 이러한 경우 고속 양 예측을 수행하지 않고 단방향 예측을 수행할 수 있다. 위의 판단에서 사용되는 특정 값은 부호화 단계에서 임의로 정한 값 또는 주변 블록의 움직임 벡터의 최고/최저/평균 값 등 다양한 값이 될 수 있다.
(2) 움직임 벡터를 기초로 확장된 양 예측 수행 여부를 결정하는 방법.
단 방향 예측 후, 생성된 최적 예측 블록들의 움직임 벡터를 이용하여 현재 예측 하고자 하는 블록에 대해 확장된 양 예측 수행 여부를 결정할 수 있다.
예를 들어, 단 방향 예측 후, L0 리스트를 기초로 생성된 움직임 예측 벡터(mvpL0)와 L0 리스트에서 유도되는 움직임 예측 벡터(mvpL0)를 유도한 블록의 주변 블록의 움직임 예측 벡터(주변 mvpL0)의 차이를 기초로 확장된 양 예측 수행 여부를 결정할 수 있다.
이하, 본 발명의 실시예에서는 L0 리스트를 기초로 생성된 움직임 예측 벡터를 mvpL0, L0 리스트에서 유도되는 움직임 예측 벡터(mvpL0)를 유도한 블록의 주변 블록의 움직임 예측 벡터를 주변 mvpL0, L1 리스트를 기초로 생성된 움직임 예측 벡터를 mvpL1, L1 리스트에서 유도되는 움직임 예측 벡터(mvpL1)를 유도한 블록의 주변 블록의 움직임 예측 벡터를 주변 mvpL1라는 용어로 정의하여 사용한다. ABS(x)는 x의 절대값을 의미한다.
1) ABS(mvpL0-주변 mvpL0)<ABS(mvpL1-주변 mvpL1)
위의 조건을 만족하는 경우, L0 리스트를 기초로 예측을 수행하는 것이 L1 리스트를 사용하여 예측을 수행하는 것보다 유리할 수 있다. 따라서, 움직임 예측 벡터가 위의 식을 만족하는 경우, L0 리스트에서 산출된 움직임 예측 벡터를 고정하고 그 후 나머지 L1 리스트에서 움직임 예측 벡터를 산출하는 고속 양 예측 방법이 사용될 수 있다.
2) ABS(mvpL0-주변 mvpL0)>ABS(mvpL1-주변 mvpL1)
위의 조건을 만족하는 경우, L1 리스트를 기초로 예측을 수행하는 것이 L0 리스트를 사용하여 예측을 수행하는 것보다 유리할 수 있다. 이러한 경우, L1 리스트에서 산출된 움직임 예측 벡터를 고정하고 그 후 나머지 L0 리스트에서 움직임 예측 벡터를 산출하는 고속 양 예측 방법을 사용할 수 있다. 또한, 확장된 양예측 방법도 사용할 수 있는데 즉, 1) L0 리스트에서 움직임 예측 벡터를 산출하여 고정하고 나머지 L1 리스트에서 움직임 예측 벡터를 산출하는 방법 및 2) L1 리스트에서 움직임 예측 벡터를 산출하여 고정하고 나머지 L0 리스트에서 움직임 예측 벡터를 산출하는 방법을 모두 사용하여 최적의 움직임 예측 벡터를 산출할 수 있다.
3) ABS(mvpL0-주변 mvpL0)-ABS(mvpL1-주변 mvpL1)< 특정 값
위의 식을 만족하는 경우 확장된 양 예측 방법을 사용하여 예측 블록에 대한 예측을 수행할 수 있다. 즉, 두 개의 차이 값이 작을 경우, 1) L0 리스트에서 움직임 예측 벡터를 산출하여 고정하고 나머지 L1 리스트에서 움직임 예측 벡터를 산출하는 방법 및 2) L1 리스트에서 움직임 예측 벡터를 산출하여 고정하고 나머지 L0 리스트에서 움직임 예측 벡터를 산출하는 방법을 모두 사용하여 최적의 움직임 예측 벡터를 산출할 수 있다.
(3) 최적 리스트 정보를 기초로 고속 양 예측 수행 여부 및 확장된 양 예측 여부를 결정하는 방법.
예측 대상 블록의 주변 블록, L0 리스트 또는 L1 리스트의 참조 픽쳐 상에 있는 블록 중 예측 대상 블록과 위치가 겹치는 블록 및 그 주변 블록들 그리고 상위 크기의 블록에서 결정된 최적 리스트 정보에 따라 양 예측 수행 여부를 달리 할 수 있다. 최적 리스트 정보는 어떠한 리스트에서 움직임 예측 벡터를 산출할지 여부를 결정하는 정보이다.
도 7은 본 발명의 실시예에 따른 최적 리스트 정보를 산출하는 방법을 나타낸 개념도이다.
도 7을 참조하면, 현재 프레임에서 예측 대상 블록(700)이 존재하고 예측 대상 블록에 대응되는 참조 픽쳐 블록(750)에서 최적 리스트 정보를 산출할 수 있다. 예측 대상 블록에 대응되는 참조 픽쳐 블록(750)은 예측 대상 블록에 코로케이티드(collocated)된 위치에 존재하는 블록이거나, 코로케이티드된 위치에 존재하는 블록의 주변 블록일 수 있다.
예를 들어, 참조 픽쳐 블록(750)이 예측을 수행한 예측 모드를 기초로 양 예측 모드가 많은지 아니면, L0 리스트 또는 L1 리스트만을 이용한 예측 모드가 많은지 여부를 판단하여 예측 대상 블록에 대한 양 예측을 수행할지 여부를 결정할 수 있다. 또 다른 예로 참조 블록에서 예측 대상 블록을 포함하는 예측 대상 블록보다 더 큰 크기의 블록을 기초로 예측 대상 블록이 양 예측을 수행할지 여부를 결정할 수 있다.
(4) 부호화 비용을 기초로 고속 양 예측 수행 여부 및 확장된 양 예측 여부를 결정하는 방법.
1) 고속 양 예측
고속 양 예측 여부를 결정하기 위해 예측 대상 블록의 주변 블록(L0 리스트 상의 블록 및 L1 리스트 상의 블록 포함)의 부호화 비용 정보를 이용하여 예측 대상 블록의 양 예측 수행 여부를 결정할 수 있다.
단 방향 예측 후, L0 리스트의 참조 픽쳐 또는 L1 리스트의 참조 픽쳐 상에서 최적 블록으로 선택된 블록들의 부호화 비용(ex: 율-왜곡 비용)이 충분히 크다면 (특정 값 이상), 이는 단 방향 예측이 효율성이 떨어지기 때문이라고 생각할 수 있고 이 경우에만 양 예측 수행을 수행할 수 있다. 여기서, 특정 값은 단 방향 예측으로 이미 부호화된 블록들의 평균 부호화 비용 등이 될 수 있다.
아래의 수학식 1은 이미 부호화된 블록들의 평균 부호화 비용을 나타낸 것이다.
<수학식 1>
Figure pat00001
Figure pat00002
N은 블록 넘버(block number), BLK는 블록(Block) (또는 유닛(Unit)), RDC는 율-왜곡 비용(rate-distortion cost)을 지시한다.
상위 블록(상위 크기)에서의 L0 리스트를 기반으로 한 예측, L1 리스트를 기반으로 한 예측/L0 리스트 및 L1 리스트를 이용한 양 예측을 수행 시의 부호화 비용을 비교하여 양 예측 수행 여부를 결정할 수 있다.
또 다른 예로 예측 대상 블록보다 상위 크기의 블록에서 단 방향 예측을 수행한 후, 최적 유닛으로 선택된 참조 픽쳐에 포함된 블록의 부호화 비용이 양 예측을 통해 최적으로 선택된 유닛의 부호화 비용보다 작을 경우 양 예측을 생략 할 수 있다. 여기서, 부호화 비용은 율-왜곡 비용 (Rate-Distortion Cost), SAD/SSE/SATD 값 등 부호화 시 계산되는 비용을 말한다.
2) 확장된 양 예측
확장된 양 예측은 주변 블록(L0 리스트의 참조 픽쳐 및 L1 리스트의 참조 픽쳐에 포함된 블록을 포함)의 부호화 비용 정보를 이용하여 현재 예측 대상 블록의 확장된 양 예측 수행 여부를 결정할 수 있다. 기존 양 예측 수행 후 발생한 부호화 비용이 L0 리스트를 기반으로 한 예측 및 L1 리스트를 기반으로 한 예측을 수행한 후 발생하는 부호화 비용보다 작을 경우 확장된 양 예측 수행을 수행할 수 있다. 또한, L1 리스트 기반의 예측을 수행한 후의 부호화 비용이 L0 리스트를 기반으로 한 예측 후의 부호화 비용보다 작을 경우 확장된 양 예측 수행할 수 있다.
주변 블록이 아닌 상위 블록(상위 크기의 블록)에서의 L0 리스트를 기반으로 한 예측, L1 리스트를 기반으로 한 예측 및 양 예측 후 발생하는 부호화 비용을 이용하여 확장된 양예측 수행 여부를 결정할 수도 있다.
예를 들어, 상위 블록에서 기존의 양 예측이 확장된 양 예측 보다 큰 부호화 비용을 가질 경우 하위 블록에서는 확장된 양 예측을 수행할 수 있다.
상위 블록에서 단 방향 예측 후 발생한 부호화 비용이 확장된 양 예측을 통해 발생한 부호화 비용보다 클 경우 하위 블록에서는 확장된 양 예측을 수행할 수 있다.
(5) 변환 계수 정보를 기초로 고속 양 예측 수행 여부 및 확장된 양 예측 여부를 결정하는 방법.
1) 고속 양 예측
현재 블록의 주변 블록의 변환 계수 정보를 이용하여 현재 블록의 양 예측 수행 여부를 결정할 수 있다.
현재 블록은 주변에 부호화된 블록의 영향을 받음으로 주변에 부호화된 블록의 변환 계수 모두가 0이거나 대부분 0인 경우 현재 블록의 변환 계수가 대부분 0일 가능성이 높다. 따라서 이 경우 양 예측 과정을 생략(coded block flag 값이 0일 경우도 동일)할 수 있다.
또한 현재 블록의 상위 블록의 변환 계수 정보를 이용하여 현재 블록의 양 예측 수행 여부를 결정할 수 있다.
상위 크기의 블록의 변환 부호화 후 생성된 변환 계수가 모두 0이 거나 대부분 0인 경우 현재 블록이 역시 변환 계수가 모드 0이거나 대부분 0일 가능성이 높다. 따라서 이 경우 양 예측 과정을 생략할 수 있다(coded block flag 값이 0일 경우도 동일).
2) 확장된 양 예측
주변 블록의 변환 계수 정보를 이용하여 현재 블록의 확장된 양 예측 수행 여부를 결정할 수 있다.
예를 들어, 단 방향 예측 후 최적으로 선택된 블록의 변환계수가 대부분 0이 아닐 경우, 확장된 양예측 수행할 수 있다(coded block flag 값이 1일 경우도 동일). 단 방향 예측 후 최적으로 선택된 유닛의 변환계수가 대부분 0일 경우, 기존 양예측 수행 또는 양예측 생략할 수 있다.
또한, 현재 블록의 상위 블록의 변환 계수 정보를 이용하여 현재 부호화 하고자 하는 블록의 양 예측 수행 여부를 결정할 수 있다.
예를 들어, 상위 크기의 블록의 변환 부호화 후 생성된 최적 블록의 변환계수가 대부분 0이 아닐 경우, 확장된 양 예측을 수행할 수 있다(coded block flag 값이 0이 아닐 경우도 동일). 또한, 상위 크기의 블록의 변환 부호화 후 생성된 최적 블록의 변환계수가 대부분 0일 경우, 기존 양 예측 수행 또는 양 예측을 생략할 수 있다(coded block flag 값이 0일 경우도 동일).
이상에서 설명한 영상 부호화 및 영상 복호화 방법은 도 1 및 도 2에서 전술한 각 영상 부호화기 및 영상 복호화기 장치의 각 구성부에서 구현될 수 있다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (1)

  1. 양 예측 방법에 있어서,
    양 예측 방법을 결정하기 위한 정보를 유도하는 단계;
    상기 유도된 양 예측 방법을 결정하기 위한 정보를 기초로 고속 양 예측 또는 확장된 양 예측을 수행하는 단계를 포함하는 양 예측 방법.
KR1020120155226A 2012-12-27 2012-12-27 적응적 양 예측 방법 및 장치 KR20140087137A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120155226A KR20140087137A (ko) 2012-12-27 2012-12-27 적응적 양 예측 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120155226A KR20140087137A (ko) 2012-12-27 2012-12-27 적응적 양 예측 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20140087137A true KR20140087137A (ko) 2014-07-09

Family

ID=51736092

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120155226A KR20140087137A (ko) 2012-12-27 2012-12-27 적응적 양 예측 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20140087137A (ko)

Similar Documents

Publication Publication Date Title
KR101949818B1 (ko) 영상 복호화 방법 및 컴퓨터로 읽을 수 있는 기록 매체
KR101903602B1 (ko) 영상 복호화 방법 및 장치
KR102070719B1 (ko) 인터 예측 방법 및 그 장치
KR20140087137A (ko) 적응적 양 예측 방법 및 장치

Legal Events

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