KR20150063135A - 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램 - Google Patents

비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20150063135A
KR20150063135A KR1020157010989A KR20157010989A KR20150063135A KR 20150063135 A KR20150063135 A KR 20150063135A KR 1020157010989 A KR1020157010989 A KR 1020157010989A KR 20157010989 A KR20157010989 A KR 20157010989A KR 20150063135 A KR20150063135 A KR 20150063135A
Authority
KR
South Korea
Prior art keywords
block
enhancement layer
prediction
picture
base layer
Prior art date
Application number
KR1020157010989A
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 노키아 테크놀로지스 오와이
Publication of KR20150063135A publication Critical patent/KR20150063135A/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
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • 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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • 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
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution

Landscapes

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

Abstract

몇몇 실시예에서, 기반 계층 참조 픽처 및 향상 계층 블록의 동일한 또는 유사한 움직임 벡터를 사용하여 코로케이팅된 기반 계층 블록 상의 움직임 보상 프로세스에 기반하여 향상 계층 블록에 대한 움직임 보상된 예측을 도출하기 위하여 비디오 비트스트림을 디코딩하는 장치, 장치에 의해 사용되기 위한 코드가 저장된 컴퓨터 판독가능 저장 매체 및 비디오 디코더가 제공된다. 다른 실시예들에서, 기반 계층 참조 픽처 및 향상 계층 블록의 동일한 또는 유사한 움직임 벡터를 사용하여 코로케이팅된 기반 계층 블록 상의 움직임 보상 프로세스에 기반하여 향상 계층 블록에 대한 움직임 보상된 예측을 도출하기 위하여 비디오 비트스트림을 인코딩하는 방법, 장치, 장치에 의해 사용되기 위한 코드가 저장된 컴퓨터 판독가능 저장 매체 및 비디오 인코더가 제공된다.

Description

비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램{AN APPARATUS, A METHOD AND A COMPUTER PROGRAM FOR VIDEO CODING AND DECODING}
본 발명은 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램에 관련된다.
비디오 코덱(video codec)는 입력 비디오를 저장(storage) 및/또는 전송(transmission)에 적합한 압축된 표현(compressed representation)으로 변환하는 인코더(encoder) 및 압축된 비디오 표현을 볼 수 있는 형태(viewable form)로 다시 비압축화(uncompress)할 수 있는 디코더(decoder) 또는 그 중 어느 하나를 포함할 수 있다. 통상적으로, 인코더는 비디오를 더 간결한 형태, 가령 더 낮은 비트율(bit rate)로 표현하기 위해 원래의 비디오 시퀀스(video sequence) 내의 소정의 정보를 폐기한다.
스케일가능 비디오 코딩(scalable video coding)은 하나의 비트스트림(bitstream)이 상이한 비트율들, 해상도(resolution)들, 프레임율(frame rate)들로 콘텐트(content)의 여러 표현을 포함할 수 있는 코딩 구조(coding structure)를 나타낸다. 통상적으로 스케일가능 비트스트림은 이용가능한 최저 품질 비디오를 제공하는 "기반 계층"(base layer) 및 더 낮은 계층과 함께 수신되고 디코딩되는 경우 비디오 품질을 향상시키는 하나 이상의 향상 계층(enhancement layer)으로 이루어진다. 향상 계층에 대한 코딩 효율을 개선하기 위하여, 통상적으로 그 계층의 코딩된 표현은 더 낮은 계층에 의존한다.
품질 스케일가능성(신호 대 잡음(Signal-to-Noise) 또는 SNR로도 알려짐) 및/또는 공간적 스케일가능성을 위한 스케일가능 비디오 코덱은 다음과 같이 구현될 수 있다. 기반 계층에 대하여, 종래의 비-스케일가능(non-scalable) 비디오 인코더 및 디코더가 사용된다. 기반 계층의 재구성된/디코딩된 픽처는 향상 계층을 위한 참조 픽처 버퍼(reference picture buffer)에 포함된다. 인터 예측(inter prediction)을 위해 참조 픽처 리스트들을 사용하는 코덱에서, 기반 계층 디코딩된 픽처는 향상 계층의 디코딩된 참조 픽처와 유사하게 향상 계층 픽처의 코딩/디코딩을 위한 참조 픽처 리스트(들) 내에 삽입될 수 있다. 따라서, 인코더는 인터 예측 참조로서 기반계층 참조 픽처를 선택하여 코딩된 비트스트림에 참조 픽처 인덱스와 함께 그것의 사용을 나타낼 수 있다. 디코더는 기반 계층 픽처가 향상 계층을 위한 인터 예측 참조로서 사용됨을 비트스트림으로부터, 가령 참조 픽처 인덱스로부터 디코딩한다.
품질 스케일가능성에 부가하여, 스케일가능성은 공간적 스케일가능성(기반 계층 픽처가 향상 계층 픽처보다 더 높은 해상도로 코딩됨), 비트 깊이(bit-depth) 스케일가능성(기반 계층 픽처가 향상 계층 픽처(가령 10 또는 12 비트)보다 더 낮은 비트 깊이(가령 8 비트)로 코딩됨) 및 크로마 포맷(chroma format) 스케일가능성(기반 계층 픽처가 향상 계층 픽처(가령 4:2:0 포맷)보다 크로마에서의 더 높은 충실도(fidelity)(가령 4:4:4 크로마 포맷으로 코딩됨)를 제공함)을 통해 달성될 수 있다.
위의 스케일가능성 경우 전부에서, 기반 계층 정보는 추가적인 비트율 오버헤드(overhead)를 최소화하기 위하여 향상 계층을 코딩하는 데에 사용될 수 있다. 그렇기는 해도 스케일가능 비디오 코딩을 위한 기존의 해결책들은 향상 계층을 인코딩 및 디코딩하는 경우 기반 계층으로부터 또한 향상 계층으로부터 이용가능한 정보를 최대한 이용하는 것은 아니다.
이 발명은, 향상 계층 움직임 보상된 예측(enhanced layer motion compensated prediction)의 성능을 개선하기 위하여, 향상 계층의 동일 또는 유사한 움직임 벡터(motion vector)를 사용하여 기반 계층 상의 움직임 보상 프로세스에 의해 추정되는 차동 신호(differential signal) 및 향상 계층 움직임 보상된 예측이 함께 합해진다는 고려에서 비롯된다.
제1 실시예에 따라 향상 계층 픽처 내의 샘플의 블록을 인코딩하는 방법은
향상 계층 픽처(enhancement layer picture)에서 예측될 샘플의 블록을 식별하는 단계와,
적어도 하나의 향상 계층 참조 픽처(enhancement layer reference picture) 및 향상 계층 움직임 정보(enhancement layer motion information)를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측(motion compensated prediction)을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 단계와,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅(co-locating)하는 기반 계층 픽처(base layer picture) 내의 재구성된 샘플의 블록을 식별하는 단계와,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처(base layer reference picture)를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 단계와,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 단계와,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 단계를 포함한다.
실시예에 따르면, 그 방법은
원래의 픽처 내의 샘플의 블록의 값 및 제2 향상 계층 예측의 값 간의 잔차 신호(residual signal)를 식별하는 단계와,
잔차 신호를 재구성된 잔차 신호로 코딩하는 단계와,
재구성된 잔차 신호를 제2 향상 계층 예측에 부가하는 단계를 더 포함한다.
실시예에 따르면, 인터 예측 모드 및 대응하는 움직임 벡터 및 참조 프레임 인덱스의 표시가 HEVC와 유사하게 수행된다.
실시예에 따르면, 향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 기반 계층 픽처의 샘플을 업샘플링(upsampling)하는 것에 의해 기반 계층 내의 블록이 생성된다.
실시예에 따르면, 기반 계층 움직임 보상된 예측 및 기반 계층 재구성된 샘플로부터 기반 계층 움직임 보상된 예측의 연역(deduction)은 그 차이를 업샘플링하고 그것을 향상 계층 예측에 더하기 전에 수행된다.
실시예에 따르면, 향상 계층 예측 블록과 동일한 공간적 해상도로 업샘플링된 적어도 하나의 기반 계층 참조 픽처를 사용하여 기반 계층 내의 움직임 보상된 예측이 생성된다.
실시예에 따르면, 기반 계층 픽처 내의 재구성된 샘플의 블록 및 코로케이팅된 기반 계층 예측 블록의 샘플의 차이는 적어도 하나의 스케일링 인자(scaling factor)에 의해 스케일링된다.
실시예에 따르면, 위 스케일링 인자는 비트스트림 내에 시그널링된다(signaled).
실시예에 따르면, 다수의 사전정의된 스케일링 인자들이 사용되고 스케일링 인자들은 비트스트림에 표시된다.
실시예에 따르면, 향상 및 기반 계층 이미지의 좌표계가 상이하다면, 기반 및 향상 계층 샘플의 좌표의 관계를 정의하는 경우 기반 계층 및 향상 계층 간의 공간적 스케일가능성(scalability)의 차이가 고려된다.
실시예에 따르면, 기반 계층 움직임 보상된 예측을 수행하기 전에 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이와 매칭되도록 향상 계층 움직임 정보가 스케일링된다.
실시예에 따르면, 차이 값을 획득하기 위해, 재구성된 기반 계층 샘플 대신, 재구성 전 중간 샘플을 사용한다.
실시예에 따르면, 비블록화 필터링(deblocking filtering) 또는 샘플 적응적 오프셋(Sample Adaptive Offset: SAO) 및 적응적 루프 필터(Adaptive Loop Filter: ALF)와 같은 인루프 필터링(in-loop filtering) 동작 전에 기반 계층 값을 사용한다.
실시예에 따르면, 그 방법은 항상 디폴트 설정(default setting)으로서 적용된다.
실시예에 따르면, 그 방법은 플래그(flag)를 디코더에 시그널링하는 것에 의해 선택적으로 가능하게 된다.
실시예에 따르면, 그 방법은 예측 단위(Prediction Unit: PU) 레벨에서 1 빈 식별자(one-bin identifier)를 시그널링하는 것에 의해 가능하게 된다.
실시예에 따르면, 그 방법은 사전결정된 조건이 만족되는 경우, 가령 이웃하는 블록의 모드에 기반하여, 위치가 향상 계층 블록에 대응하는 기반 계층 블록(들) 상의 예측 에러 코딩의 존재에 기반하여, 향상 계층 또는 기반 계층 참조 프레임의 샘플 값 또는 재구성된 기반 계층 픽처의 샘플 값, 기반 계층 디코딩된 픽처 버퍼 내의 기반 계층 참조 픽처의 가용성 또는 이들의 조합에 기반하여 가능하게 된다.
제2 실시예에 따른 장치는
기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림(scalable bitstream)을 인코딩하기 위하여 구성되는 비디오 인코더를 포함하고, 그 비디오 인코더는 또한
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 것을 위하여 구성된다.
제3 실시예에 따르면, 프로세서에 의해 실행되는 경우 장치로 하여금
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 것을 수행하게 하는 코드가 그 장치에 의한 사용을 위해 저장되는 컴퓨터 판독가능 저장 매체가 제공된다.
제4 실시예에 따르면, 적어도 하나의 프로세서 및 적어도 하나의 메모리가 제공되고, 적어도 하나의 프로세서에 의해 실행되는 경우 장치로 하여금
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 것을 수행하게 하는 코드가 적어도 하나의 메모리에 저장된다.
제5 실시예에 따른 방법은 기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 디코딩하는 방법을 포함하는데, 그 방법은
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 단계와,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 단계와,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 단계와,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 단계와,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 단계와,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 디코딩하는 단계를 포함한다.
실시예에 따르면, 그 방법은
원래의 픽처 내의 샘플의 블록의 값 및 제2 향상 계층 예측의 값 간의 잔차 신호를 식별하는 단계와,
잔차 신호를 재구성된 잔차 신호로 디코딩하는 단계와,
재구성된 잔차 신호를 제2 향상 계층 예측에 부가하는 단계를 더 포함한다.
실시예에 따르면, 인터 예측 모드 및 대응하는 움직임 벡터 및 참조 프레임 인덱스의 표시가 HEVC와 유사하게 수행된다.
실시예에 따르면, 향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 기반 계층 픽처의 샘플을 업샘플링하는 것에 의해 기반 계층 내의 블록이 생성된다.
실시예에 따르면, 기반 계층 움직임 보상된 예측 및 기반 계층 재구성된 샘플로부터 기반 계층 움직임 보상된 예측의 연역은 그 차이를 업샘플링하고 그것을 향상 계층 예측에 더하기 전에 수행된다.
실시예에 따르면, 향상 계층 예측 블록과 동일한 공간적 해상도로 업샘플링된 적어도 하나의 기반 계층 참조 픽처를 사용하여 기반 계층 내의 움직임 보상된 예측이 생성된다.
실시예에 따르면, 기반 계층 픽처 내의 재구성된 샘플의 블록 및 코로케이팅된 기반 계층 예측 블록의 샘플의 차이는 적어도 하나의 스케일링 인자에 의해 스케일링된다.
실시예에 따르면, 위 스케일링 인자는 비트스트림 내에 시그널링된다.
실시예에 따르면, 다수의 사전정의된 스케일링 인자들이 사용되고 스케일링 인자들은 비트스트림에 표시된다.
실시예에 따르면, 향상 및 기반 계층 이미지의 좌표계가 상이하다면, 기반 및 향상 계층 샘플의 좌표의 관계를 정의하는 경우 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이가 고려된다.
실시예에 따르면, 기반 계층 움직임 보상된 예측을 수행하기 전에 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이와 매칭되도록 향상 계층 움직임 정보가 스케일링된다.
실시예에 따르면, 차이 값을 획득하기 위해, 재구성된 기반 계층 샘플 대신, 재구성 전 중간 샘플을 사용한다.
실시예에 따르면, 비블록화 필터링 또는 샘플 적응적 오프셋(Sample Adaptive Offset: SAO) 및 적응적 루프 필터(Adaptive Loop Filter: ALF)와 같은 인루프 필터링(in-loop filtering) 동작 전에 기반 계층 값을 사용한다.
실시예에 따르면, 그 방법은 항상 디폴트 설정으로서 적용된다.
실시예에 따르면, 그 방법은 플래그의 수신시 선택적으로 가능하게 된다.
실시예에 따르면, 그 방법은 예측 단위(Prediction Unit: PU) 레벨에서의 1 빈 식별자의 수신시 가능하게 된다.
실시예에 따르면, 그 방법은 사전결정된 조건이 만족되는 경우, 가령 이웃하는 블록의 모드에 기반하여, 위치가 향상 계층 블록에 대응하는 기반 계층 블록(들) 상의 예측 에러 코딩의 존재에 기반하여, 향상 계층 또는 기반 계층 참조 프레임의 샘플 값 또는 재구성된 기반 계층 픽처의 샘플 값, 기반 계층 디코딩된 픽처 버퍼 내의 기반 계층 참조 픽처의 가용성 또는 이들의 조합에 기반하여 가능하게 된다.
제6 실시예에 따른 장치는
기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 디코딩하기 위하여 구성되는 비디오 디코더를 포함하고, 비디오 디코더는
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 디코딩하는 것을 위하여 구성된다.
제7 실시예에 따르면, 기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 인코딩하기 위하여 구성되는 비디오 인코더가 제공되고, 비디오 인코더는 또한
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 것을 위하여 구성된다.
제8 실시예에 따르면, 기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 디코딩하기 위하여 구성되는 비디오 디코더가 제공되고, 비디오 디코더는 또한
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 디코딩하는 것을 위하여 구성된다.
본 발명의 더 나은 이해를 위하여, 첨부된 도면이 예로서 이제 언급될 것인데, 첨부된 도면에서
도 1은 본 발명의 몇몇 실시예를 활용하는 전자 디바이스(electronic device)를 개략적으로 보여주고,
도 2는 본 발명의 몇몇 실시예를 활용하는 데에 적합한 사용자 장비(user equipment)를 개략적으로 보여주며,
도 3은 무선 및 유선 네트워크 연결을 사용하여 연결되어 본 발명의 실시예를 활용하는 전자 디바이스를 개략적으로 추가로 보여주고,
도 4는 본 발명의 몇몇 실시예를 구현하는 데에 적합한 인코더를 개략적으로 보여주며,
도 5는 두 개의 타일로 이루어지는 픽처의 예를 보여주고,
도 6은 본 발명의 몇몇 실시예에 따른 인코딩/디코딩 프로세스의 흐름도를 보여주며,
도 7은 본 발명의 실시예에 따른 기반 향상된 움직임 보상된 예측(base enhanced motion compensated prediction)의 예를 보여주고,
도 8은 본 발명의 몇몇 실시예에 따른 디코더의 개략도를 보여준다.
다음은 코딩 효율을 크게 희생하지 않고서 향상 계층 서브픽처(sub-picture)를 인코딩하기 위한 적합한 장치 및 가능한 메커니즘을 더욱 상세히 기술한다. 이와 관련하여, 본 발명의 실시예에 따른 코덱을 포함할 수 있는 예시적인 장치 또는 전자 디바이스(50)의 개략적인 블록도를 보여주는 도 1이 우선 언급된다.
전자 디바이스(50)는 가령 무선 통신 시스템의 모바일 단말(mobile terminal) 또는 사용자 장비일 수 있다. 그러나, 본 발명의 실시예들은 비디오 이미지를 인코딩 및 디코딩하는 것 또는 인코딩하는 것 또는 디코딩하는 것을 요구할 수 있는 임의의 전자 디바이스 또는 장치 내에 구현될 수 있다는 점이 인식될 것이다.
장치(50)는 그 디바이스를 포함하고 보호하기 위한 하우징(housing)(30)을 포함할 수 있다. 장치(50)는 나아가 액정 디스플레이(liquid crystal display)의 형태로 디스플레이(32)를 포함할 수 있다. 본 발명의 다른 실시예에서 그 디스플레이는 이미지 또는 비디오를 디스플레이하는 데 적합한 임의의 적합한 디스플레이 기술일 수 있다. 장치(50)는 또한 키패드(34)를 포함할 수 있다. 본 발명의 다른 실시예에서 임의의 적합한 데이터 또는 사용자 인터페이스 메커니즘이 이용될 수 있다. 예를 들어 사용자 인터페이스는 터치 감지 디스플레이의 일부로서 가상 키보드 또는 데이터 입력 시스템으로서 구현될 수 있다. 그 장치는 마이크로폰(microphone)(36) 또는 임의의 적합한 오디오 입력(디지털 또는 아날로그 신호 입력일 수 있음)을 포함할 수 있다. 장치(50)는 또한 본 발명의 실시예에서 이어폰(earpiece)(38), 스피커 또는 아날로그 오디오 또는 디지털 오디오 출력 연결 중 임의의 것인 오디오 출력 디바이스를 포함할 수 있다. 장치(50)는 배터리(40)를 또한 포함할 수 있(거나 본 발명의 다른 실시예에서는 그 디바이스가 태양전지(solar cell), 연료전지(fuel cell) 또는 태엽 발전기(clockwork generator)와 같은 임의의 적합한 이동식 에너지 디바이스에 의해 동력공급을 받을 수 있)다. 그 장치는 또한 다른 디바이스로의 단거리 시선 통신(short range line of sight communication)을 위한 적외선 포트(42)를 포함할 수 있다. 다른 실시예에서 장치(50)는 또한 가령 블루투스(Bluetooth) 무선 연결 또는 USB/파이어와이어(firewire) 유선 연결과 같은 임의의 적합한 단거리 통신 해결책을 포함할 수 있다.
장치(50)는 장치(50)를 제어하기 위한 제어기(56) 또는 프로세서(processor)를 포함할 수 있다. 제어기(56)는 본 발명의 실시예에서 이미지 및 오디오 데이터의 형태로 두 데이터 다 저장할 수 있고/있거나 제어기(56) 상의 구현을 위한 명령어를 또한 저장할 수 있는 메모리(58)에 연결될 수 있다. 제어기(56)는 오디오 및/또는 비디오 데이터의 코딩 및 디코딩을 수행하거나 제어기(56)에 의해 수행되는 코딩 및 디코딩을 돕는 데 적합한 코덱 회로(54)에 또한 연결될 수 있다.
장치(50)는 또한 카드 판독기(card reader)(48) 및 스마트 카드(smart card)(46), 가령 사용자 정보를 제공하고 네트워크에서 사용자의 인증(authentication) 및 인가(authorization)를 위한 인증 정보를 제공하는 데 적합한 UICC 및 UICC 판독기를 포함할 수 있다.
장치(50)는 그 제어기에 연결되고 가령 이동전화 통신 네트워크(cellular communications network), 무선 통신 시스템(wireless communications system) 또는 무선 로컬 영역 네트워크(wireless local area network)와의 통신을 위해 무선 통신 신호를 생성하는 데 적합한 무선 인터페이스 회로(radio interface circuitry)(52)를 포함할 수 있다. 장치(50)는 또한 무선 인터페이스 회로(52)에서 생성된 무선 주파수 신호를 다른 장치(들)에 전송하고 다른 장치(들)로부터 무선 주파수 신호를 수신하기 위해 무선 인터페이스 회로(52)에 연결된 안테나(44)를 포함할 수 있다.
본 발명의 몇몇 실시예에서, 장치(50)는 처리를 위해 코덱(54) 또는 제어기에 전해지는 개개의 프레임을 기록 또는 검출할 수 있는 카메라를 포함할 수 있다. 본 발명의 다른 실시예에서, 그 장치는 전송 및/또는 저장 전에 처리를 위해 비디오 이미지 데이터를 다른 디바이스로부터 수신할 수 있다. 본 발명의 다른 실시예에서, 장치(50)는 코딩/디코딩을 위해 이미지를 무선으로 아니면 유선 연결에 의해 수신할 수 있다.
도 3과 관련하여, 본 발명의 실시예가 활용될 수 있는 시스템의 예가 도시된다. 시스템(10)은 하나 이상의 네트워크를 통해 통신할 수 있는 다수의 통신 디바이스를 포함한다. 시스템(10)은 (GSM, UMTS, CDMA 네트워크 등과 같은) 무선 셀룰러 전화 네트워크(wireless cellular telephone network), IEEE 802.x 표준 중 임의의 표준에 의해 정의된 것과 같은 무선 로컬 영역 네트워크(Wireless Local Area Network: WLAN), 블루투스 개인 영역 네트워크(Bluetooth personal area network), 이더넷 로컬 영역 네트워크(Ethernet local area network), 토큰 링 로컬 영역 네트워크(token ring local area network), 광역 네트워크(wide area network) 및 인터넷을 포함하나 이에 한정되지는 않는 유선 또는 무선 네트워크의 임의의 조합을 포함할 수 있다.
시스템(10)은 본 발명의 실시예를 구현하는 데 적합한 유선 및 무선(둘 다) 통신 디바이스 또는 장치(50)를 포함할 수 있다.
예를 들어, 도 3에 도시된 시스템은 이동 전화 네트워크(mobile telephone network)(11) 및 인터넷(28)의 표현을 도시한다. 인터넷(28)으로의 연결성은 장거리 무선 연결, 단거리 무선 연결 및 다양한 유선 연결(전화선, 케이블선, 전력선 및 유사한 통신 경로를 포함하나 이에 한정되지 않음)을 포함할 수 있으나 이에 한정되지는 않는다.
시스템(10)에 도시된 예시적 통신 디바이스는 전자 디바이스 또는 장치(50), 개인용 디지털 보조장치(Personal Digital Assistant: PDA) 및 이동 전화의 조합(14), PDA(16), 통합 메시징 디바이스(Integrated Messaging Device: IMD)(18), 데스크톱 컴퓨터(20), 노트북 컴퓨터(22)를 포함할 수 있으나 이에 한정되지 않는다. 장치(50)는 이동 중인 개인이 지니는 경우 이동식(mobile)이거나 정지된(stationary) 것일 수 있다. 장치는 또한 차, 트럭, 택시, 버스, 기차, 보트, 비행기, 자전거, 오토바이 또는 임의의 유사한 적합한 운송 방식을 포함하나 이에 한정되지 않는 운송의 방식에 위치될 수 있다.
그 실시예들은 셋톱 박스(set-top box)(즉, 인코더/디코더 구현의 하드웨어 또는 소프트웨어 또는 조합을 가지는 태블릿 또는 (랩톱) 개인용 컴퓨터(Personal Computer: PC)에서, 다양한 운영체제에서, 그리고 칩셋, 프로세서, DSP 및/또는 임베디드 시스템(하드웨어/소프트웨어 기반 코딩을 제공함)에서 디스플레이 또는 무선 기능을 가질 수 있는/갖지 않을 수 있는 디지털 TV 수신기)에 구현될 수도 있다.
몇몇 또는 추가적인 장치는 호(call)들 및 메시지들을 주고받고 기지국(24)으로 무선 연결(25)을 통해 서비스 제공자(service provider)들과 통신할 수 있다. 기지국(24)은 이동 전화 네트워크(11) 및 인터넷(28) 간 통신을 가능하게 하는 네트워크 서버(26)에 연결될 수 있다. 그 시스템은 추가적인 통신 디바이스 및 다양한 유형의 통신 디바이스를 포함할 수 있다.
통신 디바이스는 코드 분할 다중 액세스(Code Division Multiple Access: CDMA), 이동 통신을 위한 전역 시스템(Global Systems for Mobile communications: GSM), 범용 이동 전기통신 시스템(Universal Mobile Telecommunications System: UMTS), 시간 분할 다중 액세스(Time Divisional Multiple Access: TDMA), 주파수 분할 다중 액세스(Frequenccy Division Multiple Access: FDMA), 전송 제어 프로토콜-인터넷 프로토콜(Transmission Control Protocol-Internet Protocol: TCP-IP), 단문 서비스(Short Messaging Service: SMS), 멀티미디어 메시징 서비스(Multimedia Messaging Service: MMS), 이메일, 인스턴트 메시징 서비스(Instant Messaging Service: IMS), 블루투스, IEEE 802.11 및 임의의 유사한 무선 통신 기술을 포함하나 이에 한정되지 않는 다양한 전송 기술을 사용하여 통신할 수 있다. 본 발명의 다양한 실시예를 구현하는 데 수반되는 통신 디바이스는 다양한 매체(무선, 적외선, 레이저, 케이블 연결 및 임의의 적합한 연결을 포함하나 이에 한정되지 않음)를 사용하여 통신할 수 있다.
비디오 코덱은 입력 비디오를 저장/전송에 적합한 압축된 표현으로 변환하는 인코더(encoder) 및 압축된 비디오 표현을 볼 수 있는 형태로 다시 비압축화할 수 있는 디코더(decoder)으로 이루어진다. 통상적으로 인코더는 비디오를 더 간결한 형태(즉, 더 낮은 비트율)로 표현하기 위해 원래의 비디오 시퀀스 내의 소정의 정보를 폐기한다.
통상적인 하이브리드(hybrid) 비디오 코덱, 가령 ITU-T H.263 및 H.264는 비디오 정보를 두 단계로 인코딩한다. 먼저 어떤 픽처 영역 (또는 "블록") 내의 픽셀 값이 가령 (코딩되는 블록에 딱 대응하는 이전에 코딩된 비디오 프레임 중 하나 내의 영역을 찾고 나타내는) 움직임 보상 수단 또는 (지정된 방식으로 코딩될 블록 주위의 픽셀 값을 사용하는) 공간적 수단에 의해 예측된다. 두 번째로 예측 에러, 즉 픽셀의 예측된 블록 및 픽셀의 원래의 블록 간 차이가 코딩된다. 이는 지정된 변환(가령 이산 코사인 변환(Discrete Cosine Transform: DCT) 또는 그것의 변종)을 사용하여 픽셀 값의 차이를 변환하는 것, 계수를 양자화하는 것(quantizing) 및 didd자화된 계수를 엔트로피 코딩하는 것(entropy coding)에 의하여 통상적으로 행해진다. 양자화 프로세스의 충실도를 변화시킴으로써, 인코더는 픽셀 표현의 정확성(픽처 품질) 및 결과적인 코딩된 비디오 표현의 크기(파일 크기 또는 전송 비트율) 간의 균형을 제어할 수 있다.
비디오 코딩은 통상적으로 두 단계 프로세스이다: 첫째, 비디오 신호의 예측이 이전의 코딩된 데이터에 기반하여 생성된다. 둘째, 예측 신호 및 소스 신호(source signal)의 잔차(residual)가 코딩된다. 시간적 예측, 움직임 보상 또는 움직임 보상된 예측(motion-compensated prediction)으로 지칭될 수도 있는 인터 예측은 시간적 중복성(temporal redundancy)을 줄인다. 인터 예측에서 예측의 소스는 이전에 디코딩된 픽처이다. 인트라 예측(intra prediction)은 동일한 이미지 내의 인접한 픽셀들이 상관될(correlated) 가능성이 있다는 사실을 활용한다. 인트라 예측은 공간적 또는 변환 도메인에서 수행될 수 있다(즉, 샘플 값 아니면 변환 계수가 예측될 수 있다). 인트라 예측은 통상적으로 어떠한 인터 예측도 적용되지 않는 인트라 코딩(intra coding)에서 이용된다.
코딩 절차의 한 결과는 가령 움직임 벡터 및 양자화된 변환 계수와 같은 코딩 파라미터의 세트(set)이다. 많은 파라미터는 만약 그것이 우선 공간적으로 또는 시간적으로 이웃하는 파라미터로부터 예측된다면 더욱 효율적으로 엔트로피 코딩될 수 있다. 예를 들어, 움직임 벡터는 공간적으로 인접한 움직임 벡터로부터 예측될 수 있고 움직임 벡터 예측기(motion vector predictor)에 관한 차이만 코딩될 수 있다. 코딩 파라미터의 예측 및 인트라 예측은 집합적으로 인픽처 예측(in-picture prediction)으로 지칭될 수 있다.
도 4와 관련하여, 본 발명의 실시예를 수행하는 데에 적합한 비디오 인코더의 블록도가 도시된다. 도 4는 인코더가 픽셀 예측기(302), 예측 에러 인코더(303) 및 예측 에러 디코더(304)를 포함하는 것으로 도시한다. 도 4는 또한 픽셀 예측기(302)의 실시예가 인터 예측기(306), 인트라 예측기(308), 모드 선택기(310), 필터(316) 및 참조 프레임 메모리(318)를 포함하는 것으로 도시한다. 픽셀 예측기(302)는 인터 예측기(306)(이미지 및 움직임 보상된 참조 프레임(318) 간 차이를 판정함) 및 인트라 예측기(308)(현재의 프레임 또는 픽처의 이미 처리된 부분에만 기반하여 이미지 블록을 위한 예측을 판정함) 모두에서 인코딩될 이미지(300)를 수신한다. 인터 예측기 및 인트라 예측기 모두의 출력은 모드 선택기(310)로 전달된다. 인트라 예측기(308)는 하나보다 많은 인트라 예측 모드를 가질 수 있다. 따라서, 각 모드는 인트라 예측을 수행하고 예측된 신호를 모드 선택기(310)에 제공할 수 있다. 모드 선택기(310)는 또한 이미지(300)의 복사본(copy)을 수신한다.
현재의 블록을 인코딩하기 위해 어느 인코딩 모드가 선택되었는지에 따라, 인터 예측기(306)의 출력 또는 선택적인 인트라 예측기 모드 중 하나의 출력 또는 모드 선택기 내의 표면 인코더(surface encoder)의 출력이 모드 선택기(310)의 출력으로 전달된다. 모드 선택기의 출력은 제1 합산 디바이스(summing device)(321)에 전달된다. 제1 합산 디바이스는 예측 에러 인코더(303)에 입력되는 제1 예측 에러 신호(320)를 산출하기 위해 픽셀 예측기(302)의 출력을 이미지(300)에서 감산할 수 있다.
픽셀 예측기(302)는 또한 이미지 블록(312)의 예측 표현 및 예측 에러 디코더(304)의 출력(338)의 조합을 예비적 재구성기(preliminary reconstructor)(339)로부터 수신한다. 예비적 재구성된 이미지(314)는 인트라 예측기(308)로 그리고 필터(316)로 전달될 수 있다. 예비적 표현을 수신하는 필터(316)는 예비적 표현을 필터링하고 참조 프레임 메모리(318)에 저장될 수 있는 최종 재구성된 이미지(340)를 출력할 수 있다. 참조 프레임 메모리(318)는 참조 이미지(이에 대해 장래 이미지(300)가 인터 예측 동작에서 비교됨)로서 사용되도록 인터 예측기(306)에 연결될 수 있다.
픽셀 예측기(302)의 동작은 당업계에 알려진 임의의 알려진 픽셀 예측 알고리즘을 수행하도록 구성될 수 있다.
예측 에러 인코더(303)는 변환 유닛(transform unit)(342) 및 양자화기(quantizer)(344)를 포함한다. 변환 유닛(342)은 제1 예측 에러 신호(320)를 변환 도메인(transform domain)으로 변환한다. 그 변환은 가령 DCT 변환이다. 양자화기(344)는 양자화된 계수를 형성하기 위해 변환 도메인 신호(가령 DCT 계수)를 양자화한다.
예측 에러 디코더(304)는 예측 에러 인코더(303)로부터 출력을 수신하고 디코딩된 예측 에러 신호(338)(제2 합산 디바이스(339)에서 이미지 블록(312)의 예측 표현과 조합되는 경우 예비적 재구성된 이미지(314)를 산출함)를 산출하기 위해 예측 에러 인코더(303)의 반대의 프로세스를 수행한다. 그 예측 에러 디코더는 역양자화기(dequantizer)(361)(변환 신호를 재구성하기 위해 가령 DCT 계수와 같은 양자화된 계수 값을 역양자화함) 및 역변환 유닛(inverse transformation unit)(363)(재구성되는 변환 신호로의 역변환을 수행하는데, 여기서 역변환 유닛(363)의 출력은 재구성되는 블록(들)을 포함함)을 포함한다고 간주될 수 있다. 그 예측 에러 디코더는 재구성된 매크로블록을 추가로 디코딩되는 정보 및 필터 파라미터에 따라 필터링할 수 있는 매크로블록 필터를 또한 포함할 수 있다.
엔트로피 인코더(330)는 예측 에러 인코더(303)의 출력을 수신하고, 에러 검출 및 정정 능력을 제공하기 위해 신호에 대한 적합한 엔트로피 인코딩/가변 길이 인코딩을 수행할 수 있다.
H.264/AVC 표준은 국제전기통신연합(International Telecommunication Union)의 전기통신표준화부문(Telecommunications Standardization Sector)(ITU-T)의 비디오코딩전문가그룹(Video Coding Experts Group: VCEG) 및 국제표준화기구(International Organisation for Standardization: ISO)/국제전기기술위원회(International Electrotechnical Commission: IEC)의 동화상전문가그룹(Moving Picture Experts Group: MPEG)의 공동비디오팀(Joint Video Team: JVT)에 의해 개발되었다. H.264/AVC 표준은 두 부모 표준화 기구에 의해 공표되었고, ITU-T 권장 H.264(ITU-T Recommendation H.264) 및 ISO/IEC 국제 표준 14496-10(ISO/IEC International Standard 14496-10)으로 지칭되며, 또한 MPEG-4 파트 10 고급 비디오 코딩(MPEG-4 Part 10 Advanced Video Coding (AVC))으로 알려져 있다. H.264/AVC 표준의 다수의 버전이 있어왔는데, 각 버전은 사양(specification)에 새로운 확장 또는 특징을 통합시킨다. 이 확장들은 스케일가능 비디오 코딩(Scalable Video Coding: SVC) 및 멀티뷰 비디오 코딩(Multiview Video Coding: MVC)을 포함한다. VCEG 및 MPEG의 공동협력팀-비디오코딩(Joint Collaborative Team - Video Coding: JCT-VC)에 의한 고효율비디오코딩(High Efficiency Video Coding: HEVC)의 현재 진행중인 표준화 프로젝트가 있다.
H.264/AVC 및 HEVC의 몇몇 중요한 정의, 비트스트림과 코딩 구조, 그리고 개념이 이 절에서 비디오 인코더, 디코더, 인코딩 방법, 디코딩 방법 및 비트스트림 구조의 예로서 기술되는데, 여기에 실시예가 구현될 수 있다. H.264/AVC의 중요한 정의, 비트스트림과 코딩 구조, 그리고 개념 중 몇몇은 HEVC 표준 초안(draft HEVC standard)에서와 동일하고, 따라서 아래에서 같이 기술된다. 본 발명의 양상은 H.264/AVC 또는 HEVC에 한정되지 않으나, 본 발명이 그 위에서 부분적으로 또는 전적으로 실현될 수 있는 한 가지 가능한 토대에 대해 설명이 주어진다.
많은 초기 비디오 코딩 표준과 마찬가지로, 비트스트림 신택스(syntax) 및 시맨틱스(semantics)는 물론 에러 없는(error-free) 비트스트림을 위한 디코딩 프로세스가 H.264/AVC 및 HEVC에 명시된다. 인코딩 프로세스는 지정되지 아니하나, 인코더는 부합하는 비트스트림을 생성하여야 한다. 비트스트림 및 디코더 준수는 가정적 참조 디코더(Hypothetical Reference Decoder: HRD)로써 확인될 수 있다. 그 표준은 전송 에러 및 손실에 대처하는 데 도움이 되는 코딩 도구를 포함하나, 그 도구의 사용은 선택적이고 어떠한 디코딩 프로세스도 잘못된 비트스트림에 대해 명시되지는 않았다.
기존 표준의 설명에서는 물론 예시적 실시예의 설명에서, 신택스 요소(syntax element)는 비트스트림 내에 표현되는 데이터의 요소로서 정의될 수 있다. 신택스 구조(syntax structure)는 지정된 순서로 비트스트림 내에 함께 존재하는 0개 이상의 신택스 요소로서 정의될 수 있다.
프로파일(profile)은 디코딩/코딩 표준 또는 사양에 의해 지정되는 전체 비트스트림 신택스의 서브세트(subset)로서 정의될 수 있다. 주어진 프로파일의 신택스에 의해 부과되는 한계 내에서, 디코딩된 픽처의 지정된 크기와 같은 비트스트림 내의 신택스 요소에 의해 취해지는 값에 따라 인코더 및 디코더의 성능의 매우 큰 변화를 요구하는 것이 여전히 가능하다. 많은 애플리케이션에서, 특정 프로파일 내 신택스의 모든 가정적 사용을 다룰 수 있는 디코더를 구현하는 것은 현실성이 있지도 경제성이 있지도 않을 수 있다. 이 문제를 다루기 위하여, 레벨(level)이 사용될 수 있다. 레벨은 디코딩/코딩 표준 또는 사양에서 지정된 변수 및 비트스트림 내의 신택스 요소의 값에 부과된 제약의 지정된 세트로서 정의될 수 있다. 이 제약은 값에 대한 단순한 한정일 수 있다. 대안적으로 또는 추가로, 이것은 (가령 초당 디코딩되는 픽처의 개수가 곱해진 픽처 높이가 곱해진 픽처 폭과 같은) 값들의 산술 조합에 대한 제약의 형태를 취할 수 있다. 레벨을 위한 제약을 지정하기 위한 다른 수단이 또한 사용될 수 있다. 레벨에서 지정되는 제약 중 몇몇은 가령 시구간(예컨대 초) 당 코딩 단위(예컨대 매크로블록)의 측면에서 최대 데이터율(data rate), 최대 비트율 및 최대 픽처 크기에 관련될 수 있다. 레벨의 동일한 세트가 모든 프로파일에 대해 정의될 수 있다. 예를 들어 각 레벨의 정의의 대부분의 또는 모든 측면이 상이한 프로파일에 걸쳐 공통적일 수 있다는 것이 상이한 프로파일을 구현하는 단말의 상호운용성(interoperability)을 증가시키는 데에 더 좋을 수 있다.
H.264/AVC 또는 HEVC 인코더로의 입력 및 H.264/AVC 또는 HEVC 디코더의 출력 각각을 위한 기본적인 단위는 픽처(picture)이다. H.264/AVC 및 HEVC에서, 픽처는 프레임(frame) 또는 필드(field) 중 어느 하나일 수 있다. 프레임은 루마(luma) 샘플 및 대응하는 크로마(chroma) 샘플의 매트릭스(matrix)를 포함한다. 필드는 프레임의 교번(alternate) 샘플 행의 집합이며, 소스 신호(source signal)가 인터레이싱된(interlaced) 경우 인코더 입력으로서 사용될 수 있다. 루마 픽처에 비교될 때 크로마 픽처는 서브샘플링될(subsampled) 수 있다. 예를 들어, 4:2:0 샘플링 패턴에서 크로마 픽처의 공간적 해상도는 양 좌표 축을 따라 루마 픽처의 공간적 해상도의 절반이다.
H.264/AVC에서, 매크로블록(macroblock)은 루마 샘플의 16x16 블록 및 크로마 샘플의 대응하는 블록이다. 예를 들어, 4:2:0 샘플링 패턴에서, 매크로블록은 각 크로마 콤포넌트(component) 당 크로마 샘플의 하나의 8x8 블록을 포함한다. H.264/AVC에서, 픽처는 하나 이상의 슬라이스(slice) 그룹으로 파티셔닝되고(partitioned), 슬라이스 그룹은 하나 이상의 슬라이스를 포함한다. H.264/AVC에서, 슬라이스는 특정한 슬라이스 그룹 내에서의 래스터 스캔(raster scan)에서 연속적으로 순서화된 정수 개의 매크로블록으로 이루어진다.
고효율 비디오 코딩(High Efficiency Video Coding: HEVC)과 같은 몇몇 비디오 코덱에서, 비디오 픽처는 그 픽처의 영역을 커버하는 코딩 단위(Coding Unit: CU)들로 나뉜다. CU는 CU 내의 샘플에 대하여 예측 프로세스(prediction process)를 정의하는 하나 이상의 예측 단위(Prediction Unit: PU) 및 CU 내 샘플에 대하여 예측 에러 코딩 프로세스(prediction error coding process)를 정의하는 하나 이상의 변환 단위(Transform Unit: TU)로 이루어진다. 통상적으로, CU는 가능한 CU 크기의 사전정의된 세트로부터 선택가능한 크기를 갖는 샘플의 정사각형 블록(square block)으로 이루어진다. 최대 허용된 크기를 갖는 CU는 통상적으로 LCU(Largest Coding Unit)라고 명명되고 비디오 픽처는 비중첩(non-overlapping) LCU로 나뉜다. LCU는 가령 재귀적으로(recursively) 그 LCU 및 결과적인 CU를 분할함으로써 더 작은 CU의 조합으로 더 분할될 수 있다. 각각의 결과적인 CU는 통상적으로 적어도 하나의 PU 및 그와 연관된 적어도 하나의 TU를 가진다. 각각 예측 프로세스 및 예측 에러 코딩 프로세스의 입도(granularity)를 증가시키기 위하여 각 PU 및 TU는 또한 더 작은 PU 및 TU로 더 분할될 수 있다. 각 PU는 그것과 연관되며 어떤 종류의 예측이 그 PU 내의 픽셀들에 대해 적용될 것인지를 정의하는 예측 정보(예컨대, 인터 예측된(inter predicted) PU에 대한 움직임 벡터 정보 및 인트라 예측된(intra predicted) PU에 대한 인트라 예측 방향성 정보(intra prediction directionality information))를 갖는다.
예측 모드의 방향성, 즉 특정 예측 모드에서 적용될 예측 방향은 수직, 수평, 대각선(diagonal)일 수 있다. 예를 들어, 현재의 HEVC 초안 코덱에서, Pu들(Pus)의 크기에 따라, 일원화된 인트라 예측은 34개까지의 방향성의 예측 모드를 제공하고, 인트라 예측 모드 각각은 그것에 할당된 예측 방향을 갖는다.
마찬가지로 각 TU는 그 TU 내의 샘플들을 위한 예측 에러 디코딩 프로세스(prediction error decoding process)를 기술하는 정보(가령 DCT 계수 정보를 포함함)와 연관된다. 예측 에러 코딩이 각 CU에 대하여 적용되는지 아닌지는 통상적으로 CU 레벨에서 시그널링된다(signalled). CU와 연관된 어떠한 예측 에러 잔차도 없는 경우, 그 CU에 대하여 어떠한 TU도 없다고 간주될 수 있다. 이미지를 CU로 나누는 것 및 CU를 PU 및 TU로 나누는 것은 디코더로 하여금 이 단위들의 의도된 구조를 재생성하도록 하는 비트스트림으로 통상 시그널링된다.
HEVC 표준 초안에서, 픽처는 직사각형이며 정수 개의 LCU를 포함하는 타일로 파티셔닝될 수 있다. HEVC 표준 초안에서, 타일로의 파티셔닝은 타일의 높이 및 폭이 최대 1 LCU 만큼 서로 상이한 규칙적인 그리드(grid)를 형성한다. HEVC 표준 초안에서, 슬라이스는 정수 개의 CU로 이루어진다. CU는 타일 내 또는 타일이 사용 중이 아닌 경우에는 픽처 내 LCU의 래스터 스캔 순서로 스캐닝된다. LCU 내에서, CU는 특유한 스캔 순서를 가진다. 도 5는 추가로 직사각형 예측 단위(점선)로 파티셔닝된 정사각형 코딩 단위(실선)로 파티셔닝되는 두 개의 타일로 이루어지는 픽처의 예를 도시한다.
디코더는 (인코더에 의해 생성되고 압축된 표현으로 저장된 움직임 또는 공간적 정보를 사용하여) 픽셀 블록의 예측된 표현을 형성하기 위해 인코더와 유사한 예측 수단 및 예측 에러 디코딩((공간적 픽셀 도메인 내 양자화된 예측 에러 신호를 복구하는 예측 에러 코딩의 역 동작(inverse operation))을 적용하는 것에 의해 출력 비디오를 재구성한다. 예측 및 예측 에러 디코딩 수단을 적용한 후 디코더는 출력 비디오 프레임을 형성하도록 예측 및 예측 에러 신호(픽셀 값)를 합산한다. 디코더 (및 인코더)는 출력 비디오의 품질을 개선하기 위하여 그것을 디스플레이를 위해 보내고/보내거나 비디오 시퀀스 내의 다음 번 픽처를 위한 예측 참조로서 저장하기 전에 추가적인 필터링 수단을 또한 적용할 수 있다.
통상적인 비디오 코덱에서 움직임 정보는 각각의 움직임 보상된 이미지 블록(motion compensated image block)과 연관된 움직임 벡터로 나타내어진다. 이 움직임 벡터 각각은 (인코더 측에서) 코딩되거나 (디코더 측에서) 디코딩될 픽처 내의 이미지 블록(image block) 및 이전에 코딩 또는 디코딩된 픽처 중 하나 내의 예측 소스 블록(prediction source block)의 변위(displacement)를 표현한다. 움직임 벡터를 효율적으로 표현하기 위하여, 그것은 블록 특정적인(block specific) 예측된 움직임 벡터에 관해서 차동적으로(differentially) 통상 코딩된다. 통상적인 비디오 코덱에서, 예측된 움직임 벡터는 사전정의된 방식으로, 가령 인접한 블록의 인코딩된 또는 디코딩된 움직임 벡터의 중간값(median)을 계산하여 생성된다. 움직임 벡터 예측을 생성하는 다른 방식은 시간적 참조 픽처 내의 인접 블록 및/또는 코로케이팅된(co-located) 블록으로부터 후보 예측의 리스트를 생성하고 선택된 후보를 움직임 벡터 예측기로서 시그널링하는 것이다. 움직임 벡터 값을 예측하는 것에 더하여, 이전에 코딩된/디코딩된 픽처의 참조 인덱스가 예측될 수 있다. 참조 인덱스는 통상적으로 시간적 참조 픽처 내의 인접 블록 및/또는 코로케이팅된 블록으로부터 예측된다. 더욱이, 통상적인 고효율 비디오 코덱은 병합하는(merging)/병합(merge) 모드로 종종 불리는 추가적인 움직임 정보 코딩/디코딩 메커니즘을 이용하는데, 여기서는 움직임 벡터 및 각 이용가능한 참조 픽처 리스트에 대한 대응하는 참조 픽처 인덱스를 포함하는 움직임 필드 정보(motion field information) 전부가 예측되고 어떠한 수정/정정 없이 사용된다. 마찬가지로, 움직임 필드 정보를 예측하는 것은 시간적 참조 픽처 내의 인접 블록 및/또는 코로케이팅된 블록의 움직임 필드 정보를 사용하여 수행되고 사용되는 움직임 필드 정보는 이용가능한 인접/코로케이팅된 블록의 움직임 필드 정보로 채워진 움직임 필드 후보 리스트의 리스트 중에 시그널링된다.
통상적인 비디오 코덱에서 움직임 보상 후의 예측 잔차(prediction residual)는 우선 (DCT와 같은) 변환 커널(transform kernel)로써 변환되고 이어서 코딩된다. 이 이유는 종종 잔차 사이에 어떤 상관관계(correlation)가 여전히 존재하며 많은 경우에 변환이 이 상관관계를 줄이도록 도와 더 효율적인 코딩을 제공할 수 있다는 점이다.
통상적인 비디오 인코더는 최적의 코딩 모드(가령, 원하는 매크로블록 모드 및 연관된 움직임 벡터)를 찾기 위해 라그랑주 비용 함수를 활용한다. 이 종류의 비용 함수는 손실(lossy) 코딩 방법으로 인한 (정확한 또는 추정된) 이미지 왜곡 및 이미지 영역 내 픽셀 값을 나타내는 데에 요구되는 (정확한 또는 추정된) 양의 정보를 함께 결부(tie)시키는 가중 인자(weighting factor) λ를 사용한다:
Figure pct00001
여기서 C는 최소화될 라그랑주 비용(Lagrangian cost)이고, D는 고려되는 움직임 벡터 및 모드에 대하여 이미지 왜곡(가령, 평균 제곱 에러(Mean Squared Error))이며, R은 (후보 움직임 벡터를 나타내는 데이터의 양을 포함하여) 디코더에서 이미지 블록을 재구성하기 위해 요구되는 데이터를 나타내는 데 필요한 비트의 개수이다.
비디오 코딩 표준 및 사양은 인코더로 하여금 코딩된 픽처를 코딩된 슬라이스 또는 유사한 것으로 나누도록 할 수 있다. 인픽처 예측은 통상적으로 슬라이스 경계를 가로질러 불능화된다(disabled). 그러므로, 슬라이스는 코딩된 픽처를 독립적으로 디코딩가능한 조각들로 분할하는 방법으로 간주될 수 있다. H.264/AVC 및 HEVC에서, 인픽처 예측은 슬라이스 경계를 가로질러 불능화될 수 있다. 따라서, 슬라이스는 코딩된 픽처를 독립적으로 디코딩가능한 조각들로 분할하는 방법으로 간주될 수 있고, 흔히 슬라이스는 전송을 위한 기본적인 단위로 간주된다. 많은 경우에, 인코더는 어느 유형의 인픽처 예측이 슬라이스 경계를 가로지르며 꺼지는지(turned off) 비트스트림에 표시할 수 있고, 디코더 동작은 가령 어느 예측 소스가 이용가능하지 판단하는 경우 이 정보를 고려한다. 예를 들어, 만약 이웃한 매크로 블록 또는 CU가 상이한 슬라이스에 있는 경우, 이웃한 매크로블록 또는 CU로부터의 샘플은 인트라 예측을 위하여 이용불가능한 것으로 간주될 수 있다.
코딩된 슬라이스는 세 부류로 범주화될 수 있다: 래스터 스캔 순서(raster-scan-order) 슬라이스, 직사각형 슬라이스 및 유동적(flexible) 슬라이스.
래스터 스캔 순서 슬라이스는 래스터 스캔 순서로 연속적인 매크로블록 또는 유사한 것으로 이루어지는 코딩된 세그먼트(segmenmt)이다. 예를 들어, MPEG-4 Part 2의 비디오 패킷 및 H.263 내의 비어 있지 않은(non-empty) 매크로블록 그룹(Group Of Macroblock: GOB) 헤더와 함께 시작하는 GOB는 래스터 스캔 순서 슬라이스의 예이다.
직사각형 슬라이스는 매크로블록 또는 유사한 것의 직사각형 영역으로 이루어지는 코딩된 세그먼트이다. 직사각형 슬라이스는 하나의 매크로블록 또는 유사한 것의 행보다 높고 전체 픽처 폭보다 좁을 수 있다. H.263은 선택적인 직사각형 슬라이스 서브모드를 포함하고, H.261 GOB는 직사각형 슬라이스로 간주될 수도 있다.
유동적 슬라이스는 임의의 사전정의된 매크로블록 (또는 유사한 것의) 위치를 포함할 수 있다. H.264/AVC 코덱은 매크로블록을 하나보다 많은 슬라이스 그룹으로 그룹핑하는 것을 허용한다. 슬라이스 그룹은 인접하지 않은 매크로블록 위치를 포함하여 임의의 매크로블록 위치를 포함할 수 있다. H.264/AVC의 몇몇 프로파일 내의 슬라이스는 래스터 스캔 순서로 특정 슬라이스 그룹 내의 적어도 하나의 매크로블록으로 이루어진다.
각각 H.264/AVC 또는 HEVC 인코더의 출력 및 H.264/AVC 또는 HEVC 디코더의 입력을 위한 기본적인 단위는 네트워크 추상화 계층(Network Abstraction Layer: NAL) 단위이다. 구조화된 파일로의 저장 또는 패킷지향(packet-oriented) 네트워크 상에서의 전송을 위하여, NAL 단위는 패킷 또는 유사한 구조로 캡슐화될(encapsulated) 수 있다. 프레이밍(framing) 구조를 제공하지 않는 전송 또는 저장 환경을 위하여 H.264/AVC 및 HEVC에 바이트스트림(bytestream) 포맷이 명시되었다. 바이트스트림 포맷은 각 NAL 단위 앞에 시작 코드(start code)를 부가함으로써 NAL 단위를 서로 분리한다. NAL 단위 경계의 잘못된 검출을 막도록, 인코더는 바이트지향 시작 코드 에뮬레이션 방지 알고리즘(byte-oriented start code emulation prevention algorithm)을 실행하는데, 이는 만약 그렇지 않으면 시작 코드가 발생하였을 경우에 에뮬레이션 방지 바이트를 NAL 단위 페이로드(NAL unit payload)에 추가한다. 패킷지향 시스템 및 스트림지향(stream-oriented) 시스템 간의 간단한 게이트웨이 동작(straightforward gateway operation)을 가능하게 하기 위하여, 시작 코드 에뮬레이션 방지는 바이트스트림 포맷이 사용 중인지 아닌지에 상관없이 항상 수행될 수 있다. NAL 단위는 후속할 데이터의 유형의 표시(indication) 및 에뮬레이션 방지 바이트와 함께 필요한 만큼 배치된(interspersed) RBSP의 형태로 그 데이터를 포함하는 바이트를 포함하는 신택스 구조로서 정의될 수 있다. 원 바이트 시퀀스 페이로드(Raw Byte Sequence Payload: RBSP)는 NAL 단위 내에 캡슐화된 정수 개의 바이트를 포함하는 신택스 구조로서 정의될 수 있다. RBSP는 비어 있거나(empty) 아니면 RBSP 정지 비트(RBSP stop bit)가 뒤따르고 0과 동일한 후속 비트 0개 이상이 뒤따르는 신택스 요소를 포함하는 데이터 비트의 스트링(string)의 형태를 가진다.
NAL 단위는 헤더(header) 및 페이로드(payload)로 이루어진다. H.264/AVC 및 HEVC에서, NAL 단위 헤더는 NAL 단위의 유형 및 NAL 단위에 포함된 코딩된 슬라이스가 참조 픽처(reference picture) 또는 비참조 픽처(non-reference picture)의 일부인지를 나타낸다.
H.264/AVC NAL 단위 헤더는 2비트의 nal_ref_idc 신택스 요소를 포함하는데, 이는 0과 동일한 경우에는 NAL 단위에 포함된 코딩된 슬라이스가 비참조 픽처의 일부임을 나타내고 0보다 큰 경우에는 NAL 단위에 포함된 코딩된 슬라이스가 참조 픽처의 일부임을 나타낸다. HEVC 표준 초안은 nal_ref_flag로 또한 알려진 1비트 nal_ref_idc 신택스 요소를 포함하는데, 이는 0과 동일한 경우에는 NAL 단위에 포함된 코딩된 슬라이스가 비참조 픽처의 일부임을 나타내고 1과 동일한 경우에는 NAL 단위에 포함된 코딩된 슬라이스가 참조 픽처의 일부임을 나타낸다. SVC 및 MVC NAL 단위를 위한 헤더는 스케일가능성 및 멀티뷰 계층구조(hierarchy)에 관련된 다양한 표시를 추가적으로 포함할 수 있다.
HEVC 표준 초안에서, 2바이트의 NAL 단위 헤더는 지정된 모든 NAL 단위 유형을 위하여 사용된다. NAL 단위 헤더의 첫 번째 바이트는 하나의 예비된(reserved) 비트, 이 액세스 단위에서 전달되는 픽처가 참조 픽처인지 비참조 픽처인지를 주로 나타내는 1비트의 표시 nal_ref_flag 및 6비트의 NAL 단위 유형 표시를 포함한다. NAL 단위 헤더의 두 번째 바이트는 시간적 레벨에 대한 3비트의 temporal_id 표시 및 HEVC 표준 초안에서 1과 동일한 값을 갖도록 요구되는 5비트의 예비된 필드(reserved_one_5bits라고 불림)를 포함한다. temporal_id 신택스 요소는 NAL 단위를 위한 시간적 식별자(temporal identifier)로서 간주될 수 있다.
5비트의 예비된 필드는 가령 향후 스케일가능한 3D 비디오 확장과 같은 확장에 의하여 사용될 것으로 예상된다. 이 5개의 비트는 스케일가능성 계층구조에 대한 정보, 가령 quality_id 또는 유사한 것, dependency_id 또는 유사한 것, 임의의 다른 유형의 계층 식별자(layer identifier), 뷰 순서 인덱스(view order index) 또는 유사한 것, 뷰 식별자(view identifier), 만약 지정된 식별자 값보다 큰 모든 NAL 단위가 비트스트림으로부터 제거되는 경우 유효한 서브-비트스트림(sub-bitstream) 추출을 나타내는 SVC의 priority_id와 유사한 식별자를 전달할 것으로 예상된다. 일반론의 손실 없이, 몇몇 예시적 실시예에서 변수 LayerId는 가령 다음과 같이, layer_id_plus1이라고도 지칭될 수 있는 reserved_one_5bits의 값으로부터 도출된다: LayerId = reserved_one_5bits - 1.
NAT 단위들은 비디오 코딩 계층(Video Coding Layer: VCL) NAL 단위 및 비 VCL(non-VCL) NAL 단위로 범주화될 수 있다. VCL NAL 단위는 통상적으로 코딩된 슬라이스 NAL 단위이다. H.264/AVC에서, 코딩된 슬라이스 NAL 단위는 압축되지 않은 픽처 내의 샘플의 블록에 각각 대응하는 하나 이상의 코딩된 매크로블록을 나타내는 신택스 요소를 포함한다. HEVC 표준 초안에서, 코딩된 슬라이스 NAL 단위는 하나 이상의 CU를 나타내는 신택스 요소를 포함한다. H.264/AVC 및 HEVC에서 코딩된 슬라이스 NAL 단위는 순시 디코딩 리프레시(Instantaneous Decoding Refresh: IDR) 픽처 내의 코딩된 슬라이스 또는 비 IDR(non-IDR) 픽처 내의 코딩된 슬라이스라고 표시될 수 있다. HEVC에서, 코딩된 슬라이스 NAL 단위는 (클린 랜덤 액세스(Clean Random Access) 픽처 또는 CRA 픽처로 지칭될 수도 있는) 클린 디코딩 리프레시(Clean Decoding Refresh: CDR) 픽처 내의 코딩된 슬라이스라고 표시될 수 있다.
비 VCL NAL 단위는 가령 다음 유형 중 하나일 수 있다: 시퀀스 파라미터 세트, 픽처 파라미터 세트, 보충적 향상 정보(Supplemental Enhancement Information: SEI) NAL 단위, 액세스 단위 구분자(access unit delimiter), 시퀀스 NAL 단위의 말단, 스트림 NAL 단위의 말단 또는 필러 데이터(filler data) NAL 단위. 파라미터 세트는 디코딩된 픽처의 재구성을 위해 필요할 수 있는 반면, 다른 비 VCL NAL 단위 중 다수는 디코딩된 샘플 값의 재구성을 위해 필요하지 않다.
코딩된 비디오 시퀀스를 거쳐 계속 바뀌지 않은 채 있는 파라미터는 시퀀스 파라미터 세트에 포함될 수 있다. 디코딩 프로세스가 필요로 할 수 있는 파라미터뿐만 아니라, 시퀀스 파라미터 세트는 비디오 유용성 정보(Video Usability Information: VUI)를 선택적으로 포함할 수 있는데, 이는 버퍼링(buffering), 픽처 출력 타이밍(picture output timing), 렌더링(rendering) 및 리소스 예비(resource reservation)를 위해 중요할 수 있는 파라미터를 포함한다. 시퀀스 파라미터 세트를 전달하도록 H.264/AVC에 명시된 세 개의 NAL 단위가 있다: 시퀀스 내의 H.264/AVC VCL NAL 단위를 위한 모든 데이터를 포함하는 시퀀스 파라미터 세트 NAL 단위, 보조(auxiliary) 코딩된 픽처를 위한 데이터를 포함하는 시퀀스 파라미터 세트 확장 NAL 단위, 그리고 MVC 및 SVC VCL NAL 단위를 위한 서브세트 시퀀스 파라미터 세트. HEVC 표준 초안에서 시퀀스 파라미터 세트 RBSP는 버퍼링 주기 SEI 메시지(buffering period SEI message)를 포함하는 하나 이상의 SEI NAL 단위 또는 하나 이상의 픽처 파라미터 세트 RBSP에 의해 참조될 수 있는 파라미터를 포함한다. 픽처 파라미터 세트는 여러 코딩된 픽처 내에서 변경되지 않을 가능성이 있는 그러한 파라미터를 포함한다. 픽처 파라미터 세트 RBSP는 하나 이상의 코딩된 픽처의 코딩된 슬라이스 NAL 단위에 의해 참조될 수 있는 파라미터를 포함할 수 있다.
HEVC 초안에는, 여기서 적응 파라미터 세트(Adaptation Parameter Set: APS)로 지칭되는 제3의 유형의 파라미터 세트도 있는데, 이는 여러 코딩된 슬라이스 내에서 변경되지 않을 가능성이 있으나 가령 픽처 각각 또는 약간의 픽처 각각에 대하여 변경될 수는 있는 파라미터를 포함한다. HEVC 초안에서, APS 신택스 구조는 양자화 매트릭스(Quantization Matrix: QM)들, 적응적 샘플 오프셋(Adaptive Sample Offset: SAO), 적응적 루프 필터링(Adaptive Loop Filtering: ALF) 및 비블록화 필터링(deblocking filtering)에 관련된 신택스 요소들 또는 파라미터들을 포함한다. HEVC 초안에서, APS는 NAL 단위이고 임의의 다른 NAL 단위로부터의 예측 또는 참조 없이 코딩된다. aps_id 신택스 요소로 지칭되는 식별자가 APS NAL 단위에 포함되고, 특정 APS를 참조하는 슬라이스 헤더에 포함되어 사용된다. 다른 HEVC 표준 초안에서, APS 신택스 구조는 ALF 파라미터를 포함할 뿐이다. HEVC 표준 초안에서, 적응 파라미터 세트 RBSP는 sample_adaptive_offset_enabled_flag 또는 adaptive_loop_filter_enabled_flag 중 적어도 하나가 1과 동일한 경우 하나 이상의 코딩된 픽처의 코딩된 슬라이스 NAL 단위에 의해 참조될 수 있는 파라미터를 포함한다.
HEVC 표준 초안은 또한 비디오 파라미터 세트(Video Parameter Set: VPS)라 불리는 제4의 유형의 파라미터 세트를 포함하는데, 이는 가령 문서 JCTVC-H0388(http://phenix.int-evry.fr/jct/doc_end_user/documents/8_San%20Jose/wg11/JCTVC-H0388-v4.zip)에서 제안되었다. 비디오 파라미터 세트 RBSP는 하나 이상의 시퀀스 파라미터 세트 RBSP에 의해 참조될 수 있는 파라미터를 포함할 수 있다.
비디오 파라미터 세트(Video Parameter Set: VPS), 시퀀스 파라미터 세트(Sequence Parameter Set: SPS) 및 픽처 파라미터 세트(Picture Parameter Set: PPS) 간의 관계 및 계층구조는 다음과 같이 기술될 수 있다. VPS는 파라미터 세트 계층구조에서 그리고 스케일가능성 및/또는 3DV의 맥락에서 SPS의 한 수준 위에 있다. VPS는 코딩된 비디오 시퀀스 전체 내의 모든 (스케일가능성 또는 뷰) 계층에 걸쳐 모든 슬라이스에 대해 공통인 파라미터를 포함할 수 있다. SPS는 코딩된 비디오 시퀀스 전체 내의 특정 (스케일가능성 또는 뷰) 계층 내의 모든 슬라이스에 대해 공통인 파라미터를 포함하고, 다수의 (스케일가능성 또는 뷰) 계층에 의해 공유될 수 있다. PPS는 특정 계층 표현(하나의 액세스 단위 내의 하나의 스케일가능성 또는 뷰 계층의 표현) 내의 모든 슬라이스에 대해 공통이고 다수의 계층 표현 내의 모든 슬라이스에 의해 공유될 가능성이 있는 파라미터를 포함한다.
VPS는 코딩된 비디오 시퀀스 전체 내의 모든 (스케일가능성 또는 뷰) 계층에 걸쳐 모든 슬라이스에 대해 적용가능한 많은 다른 정보뿐만 아니라, 비트스트림 내의 계층들의 종속성 관계에 관한 정보를 제공할 수 있다. HEVC의 스케일가능 확장(scalable extension)에서, 예컨대 VPS는, 가령 SVC 및 MVC와 유사하게 정의된 계층에 대한 depth_flag, view_id, quality_id 및 dependency_id에 대응하는 하나 이상의 스케일가능성 치수 값으로, NAL 단위 헤더로부터 도출되는 LayerId 값을 맵핑하는 것을 포함할 수 있다. VPS는 계층 표현의 하나 이상의 시간적 서브계층(소정의 temporal_id 값 이하에서 VCL NAL 단위로 이루어짐)에 대한 프로파일 및/또는 레벨뿐만 아니라 하나 이상의 계층에 대한 프로파일 및 레벨 정보를 포함할 수 있다.
H.264/AVC 및 HEVC 신택스는 파라미터 세트의 많은 인스턴스를 허용하고, 각 인스턴스는 고유한 식별자로써 식별된다. 파라미터 세트에 필요한 메모리 사용(memory usage)을 한정하기 위하여, 파라미터 세트 식별자를 위한 값 범위가 한정되었다. H.264/AVC 및 HEVC 표준 초안에서, 각 슬라이스 헤더는 슬라이스를 포함하는 픽처의 디코딩을 위하여 활성(active)인 픽처 파라미터 세트의 식별자를 포함하고, 각 픽처 파라미터 세트는 활성 시퀀스 파라미터 세트의 식별자를 포함한다. HEVC 표준에서, 슬라이스 헤더는 추가적으로 APS 식별자를 포함한다. 따라서, 픽처 및 시퀀스 파라미터 세트들의 전송은 슬라이스의 전송과 정확히 동기화될(synchronized) 필요는 없다. 대신에, 활성 시퀀스 및 픽처 파라미터 세트들은 그들이 참조되기 전 임의의 순간에 수신되는 것으로 충분한데, 이는 슬라이스 데이터를 위해 사용되는 프로토콜에 비해 더욱 신뢰할 만한 전송 메커니즘을 사용하여 "대역외"(out-of-band)로 파라미터 세트의 전송이 되도록 한다. 예를 들어, 파라미터 세트가 실시간 전송 프로토콜(Realtime Transport Protocol: RTP) 세션을 위한 세션 기술(session description) 내의 파라미터로서 포함될 수 있다. 파라미터 세트가 대역내(in-band)로 전송되는 경우, 오차 강인성(error robustness)를 개선하기 위해 그것들이 반복될 수 있다.
파라미터 세트는 슬라이스로부터 또는 다른 활성 파라미터 세트로부터 또는 몇몇 경우에는 버퍼링 주기 SEI 메시지와 같은 다른 신택스 구조로부터 참조에 의해 활성화될(activated) 수 있다.
SEI NAL 단위는, 출력 픽처의 디코딩에 요구되지 않으나 가령 픽처 출력 타이밍, 렌더링, 에러 검출(error detection), 에러 은닉(error concealment) 및 리소스 예비와 같은 관련된 프로세스에 도움이 될 수 있는 하나 이상의 SEI 메시지를 포함할 수 있다. 여러 SEI 메시지들이 H.264/AVC 및 HEVC에 명시되고, 사용자 데이터 SEI 메시지(user data SEI message)들이 기구 및 회사들로 하여금 그들 자신의 사용을 위해 SEI 메시지들을 지정할 수 있게 한다. H.264/AVC 및 HEVC는 지정된 SEI 메시지를 위한 신택스 및 시맨틱스를 포함하나 수신자에서 그 메시지들을 다루기 위한 어떠한 프로세스도 정의되지는 않는다. 따라서, 인코더는 SEI 메시지들을 생성하는 경우에 H.264/AVC 표준 또는 HEVC 표준을 따르는 것이 요구되고, H.264/AVC 표준 또는 HEVC 표준에 각각 따르는 디코더가 출력 순서 적합성(output order conformance)을 위해 SEI 메시지들을 처리할 것이 요구되는 것은 아니다. H.264/AVC 및 HEVC에 SEI 메시지의 신택스 및 시맨틱스를 포함시키는 이유 중 하나는 상이한 시스템 규격이 보충적 정보를 동일하게 해석하여서 상호동작(interoperate)하게 하는 것이다. 시스템 규격이 인코딩 단부 및 디코딩 단부 모두에서 특정 SEI 메시지의 사용을 요구할 수 있고, 추가적으로 수신자에서 특정 SEI 메시지들을 다루기 위한 프로세스가 지정될 수 있다는 점이 의도된 것이다.
코딩된 픽처는 픽처의 코딩된 표현이다. H.264/AVC 내의 코딩된 픽처는 그 픽처의 디코딩을 위해 요구되는 VCL NAL 단위를 포함한다. H.264/AVC에서, 코딩된 픽처는 주요 코딩된 픽처(primary coded picture) 또는 중복적 코딩된 픽처(redundant coded picture)일 수 있다. 주요 코딩된 픽처는 유효한 비트스트림의 디코딩 프로세스에서 사용되는 반면, 중복적 코딩된 픽처는 주요 코딩된 픽처가 성공적으로 디코딩될 수 없는 경우에 디코딩되어야 할 뿐인 중복적 표현(redundant representation)이다. HEVC 초안에서는 어떠한 중복적 코딩된 픽처도 지정되지 않았다.
H.264/AVC 및 HEVC에서, 액세스 단위는 주요 코딩된 픽처 및 그것과 연관된 NAL 단위를 포함한다. H.264/AVC에서, 액세스 단위 내의 NAL 단위의 출현 순서는 다음과 같이 제한된다. 선택적인 액세스 단위 구분자 NAL 단위(optional access unit delimiter NAL unit)가 액세스 단위의 시작을 나타낼 수 있다. 0개 이상의 SEI NAL 단위가 그것을 뒤따른다. 주요 코딩된 픽처의 코딩된 슬라이스가 다음에 나타난다. H.264/AVC에서, 주요 코딩된 픽처의 코딩된 슬라이스의 뒤에는 0개 이상의 중복적 코딩된 픽처를 위한 코딩된 슬라이스가 따라올 수 있다. 중복적 코딩된 픽처는 픽처 또는 픽처의 일부의 코딩된 표현이다. 중복적 코딩된 픽처는 가령 전송에서의 손실 또는 물리적 저장 매체 내의 오손(corruption)으로 인하여 디코더에 의해 주요 코딩된 픽처가 수신되지 않는 경우에 디코딩될 수 있다.
H.264/AVC에서, 액세스 단위는 주요 코딩된 픽처를 보충하는 픽처이자 가령 디스플레이 프로세스에서 사용될 수 있는 픽처인 보조적 코딩된 픽처(auxiliary coded picture)를 또한 포함할 수 있다. 보조적 코딩된 픽처는 가령 디코딩된 픽처 내의 샘플의 투명도 레벨(transparency level)을 지정하는 알파 채널(alpha channel) 또는 알파 평면(alpha plane)으로서 사용될 수 있다. 알파 채널 내지 평면은 서로의 위에서 적어도 부분적으로 투명한 픽처들을 중첩시키는 것(overlaying)에 의해 출력 픽처가 형성되는 계층화된 콤포지션 또는 렌더링 시스템(layered composition or rendering system)에서 사용될 수 있다. 보조적 코딩된 픽처는 모노크롬 중복적 코딩된 픽처(monochrome redundant coded picture)와 동일한 신택스 및 시맨틱스의 제한(syntactic and semantic restriction)들을 가진다. H.264/AVC에서, 보조적 코딩된 픽처는 주요 코딩된 픽처와 동일한 개수의 매크로블록을 포함한다.
H.264/AVC에서, 코딩된 비디오 시퀀스는 IDR 액세스 단위로부터(포괄적으로) 다음 IDR 액세스 단위(배타적으로)까지 또는 비트스트림의 종단까지, 어느 쪽이든 먼저 나타나는 것까지의 디코딩 순서에서 연속적인(consecutive) 액세스 단위의 시퀀스라고 정의된다.
픽처의 그룹(Group of Pictures: GOP) 및 그 특성은 다음과 같이 정의될 수 있다. GOP는 임의의 이전 픽처가 디코딩되었는지 여부에 상관없이 디코딩될 수 있다. 개방 GOP(open GOP)는 디코딩이 그 개방 GOP의 초기 인트라 픽처(intra picture)로부터 시작하는 경우 출력 순서로 초기 인트라 픽처에 선행하는 픽처가 정확히 디코딩가능하지 않을 수도 있는 그러한 픽처의 그룹이다. 다시 말해, 개방 GOP의 픽처는 (인터 예측에서) 이전의 GOP에 속한 픽처를 참조할 수 있다. H.264/AVC 디코더는 H.264/AVC 비트스트림 내의 복구 지점 SEI 메시지(recovery point SEI message)로부터 개방 GOP를 개시하는 인트라 픽처를 인식할 수 있다. HEVC 디코더는 개방 GOP를 개시하는 인트라 픽처를 인식할 수 있는데, 이는 특정한 NAL 단위 유형인 CRA NAL 단위 유형이 그것의 코딩된 슬라이스를 위해 사용되기 때문이다. 폐쇄 GOP(closed GOP)는 디코딩이 그 폐쇄 GOP의 초기 인트라 픽처로부터 시작하는 경우 모든 픽처가 정확히 디코딩될 수 있는 그러한 픽처의 그룹이다. 다시 말해, 폐쇄 GOP 내의 어떠한 픽처도 이전 GOP 내의 임의의 픽처를 참조하지 않는다. H.264/AVC 및 HEVC에서, 폐쇄 GOP는 IDR 액세스 단위로부터 시작한다. 결과적으로, 폐쇄 GOP 구조는 개방 GOP 구조에 비해 더 많은 에러 회복성 잠재력(error resilience potential)을 가지나, 압축 효율에서 있을 수 있는 감소를 희생한다. 참조 픽처의 선택에서의 더 많은 융통성(flexibility)으로 인해, 개방 GOP 코딩 구조는 압축에서 잠재적으로 더 효율적이다.
H.264/AVC 및 HEVC의 비트스트림 신택스는 특정 픽처가 임의의 다른 픽처의 인터 예측을 위한 참조 픽처인지 여부를 나타낸다. 임의의 코딩 유형 (I, P, B)의 픽처는 H.264/AVC 및 HEVC에서 참조 픽처 또는 비참조 픽처일 수 있다. NAL 단위 헤더는 NAL 단위의 유형, 그리고 NAL 단위에 포함된 코딩된 슬라이스가 참조 픽처 또는 비참조 픽처의 일부인지 여부를 나타낸다.
H.264/AVC는 디코더에서의 메모리 소비를 제어하기 위하여 디코딩된 참조 픽처 마킹(decoded reference picture marking)을 위한 프로세스를 명시한다. 인터 예측에 사용되는 참조 픽처의 최대 개수(M으로 지칭됨)는 시퀀스 파라미터 세트 내에 정해진다. 참조 픽처가 디코딩된 경우, 그것은 "참조를 위해 사용됨"(used for reference)으로 마킹된다. 참조 픽처의 디코딩이 "참조를 위해 사용됨"으로 마킹된 M개보다 많은 픽처를 유발한 경우, 적어도 하나의 픽처는 "참조를 위해 사용되지 않음"(unused for reference)으로 마킹된다. 디코딩된 참조 픽처 마킹을 위한 두 가지 유형의 동작이 있다: 적응적 메모리 제어(adaptive memory control) 및 슬라이딩 윈도우(sliding window). 디코딩된 참조 픽처 마킹을 위한 동작 모드는 픽처 기준으로 선택된다. 적응적 메모리 제어는 어느 픽처가 "참조를 위해 사용되지 않음"으로 마킹되었는지 명시적으로 시그널링하는 것을 가능하게 하며 또한 장기 인덱스들(long-term indices)을 단기 참조 픽처들에 할당할 수 있다. 적응적 메모리 제어는 비트스트림 내의 메모리 관리 제어 동작(Memory Management Control Operation: MMCO) 파라미터의 존재를 요구할 수 있다. MMCO 파라미터는 디코딩된 참조 픽처 마킹 신택스 구조에 포함될 수 있다. 만약 슬라이딩 윈도우 동작 모드가 사용 중이고 "참조를 위해 사용됨"으로 마킹된 M개의 픽처가 있는 경우, "참조를 위해 사용됨"으로 마킹된 단기 참조 픽처 중 첫 디코딩된 픽처였던 단기 참조 픽처가 "참조를 위해 사용되지 않음"으로 마킹된다. 다시 말해, 슬라이딩 윈도우 동작 모드는 단기 참조 픽처 간 선입선출(first-in-first-out) 버퍼링 동작을 초래한다.
H.264/AVC에서의 메모리 관리 제어 동작 중 하나는 "참조를 위해 사용되지 않음"으로 마킹될 현재 픽처를 제외하고 모든 참조 픽처를 야기한다. 순시 디코딩 리프레시(Instantaneous Decoding Refresh: IDR) 픽처는 인트라 코딩된(intra-coded) 슬라이스만 포함하고 참조 픽처의 유사한 "리셋"(reset)을 야기한다.
HEVC 표준 초안에서, 참조 픽처 마킹 신택스 구조 및 관련된 디코딩 프로세스는 사용되지 않는 대신, 참조 픽처 세트(Reference Picture Set: RPS) 신택스 구조 및 디코딩 프로세스가 대신 유사한 목적을 위해 사용된다. 픽처에 대해 유효하거나 활성인 참조 픽처 세트는 그 픽처를 위한 참조로서 사용되는 모든 참조 픽처 및 디코딩 순서에서 후속적인 임의의 픽처를 위하여 "참조를 위해 사용됨"으로 마킹된 채 유지되는 모든 참조 픽처를 포함한다. 참조 픽처 세트의 6개의 서브세트가 있는데, 이들은 곧 RefPicSetStCurr0, RefPicSetStCurr1, RefPicSetStFoll0, RefPicSetStFoll1, RefPicSetLtCurr 및 RefPicSetLtFoll으로 지칭된다. 6개의 서브세트의 표기법은 다음과 같다. "Curr"는 현재 픽처의 참조 픽처 리스트에 포함된 참조 픽처를 지칭하며 따라서 현재 픽처를 위한 인터 예측 참조로서 사용될 수 있다. "Foll"은 현재 픽처의 참조 픽처 리스트에 포함되지 않은 참조 픽처를 지칭하나 디코딩 순서로 후속적인 픽처들에서 참조 픽처로서 사용될 수 있다. "St"는 단기 참조 픽처를 지칭하는데, 이는 대체적으로 그것의 POC 값의 소정의 개수의 최하위(least significant) 비트를 통해 식별될 수 있다. "Lt"는 장기 참조 픽처를 지칭하는데, 이는 명확하게 식별되고 대체적으로 현재 픽처에 대하여 그 언급된 소정의 개수의 최하위 비트에 의하여 표현될 수 있는 것보다 POC 값의 차이가 더 크다. "0"은 현재 픽처보다 더 작은 POC 값을 갖는 참조 픽처를 지칭한다. "1"은 현재 픽처보다 더 큰 POC 값을 갖는 참조 픽처를 지칭한다. RefPicSetStCurr0, RefPicSetStCurr1, RefPicSetStFoll0 및 RefPicSetStFoll1은 집합적으로 참조 픽처 세트의 단기 서브세트(short-term subset)로 지칭된다. RefPicSetLtCurr 및 RefPicSetLtFoll은 집합적으로 참조 픽처 세트의 장기 서브세트(long-term subset)로 지칭된다.
HEVC 표준 초안에서, 참조 픽처 세트는 시퀀스 파라미터 세트 내에 지정되어 그 참조 픽처 세트에 대한 인덱스를 통해 슬라이스 헤더 내에서 사용되게 될 수 있다. 참조 픽처 세트는 또한 슬라이스 헤더 내에 지정될 수 있다. 참조 픽처 세트의 장기 서브세트는 대체적으로 슬라이스 헤더 내에만 지정되는 반면, 동일한 참조 픽처 세트의 단기 서브세트는 픽처 파라미터 세트 또는 슬라이스 헤더 내에 지정될 수 있다. 참조 픽처 세트는 독립적으로 코딩될 수 있거나 다른 참조 픽처 세트로부터 예측될 수 있다(RPS 간 예측으로 알려짐). 참조 픽처 세트가 독립적으로 코딩되는 경우, 신택스 구조는 상이한 유형의 참조 픽처 상에서 반복하는 루프(loop)를 세 개까지 포함한다(현재 픽처보다 더 낮은 POC 값을 갖는 단기 참조 픽처, 현재 픽처보다 더 높은 POC 값을 갖는 단기 참조 픽처 및 장기 참조 픽처). 각 루프 엔트리(loop entry)는 "참조를 위해 사용됨"으로 마킹될 픽처를 지정한다. 일반적으로, 그 픽처는 차동적인(differential) POC 값으로써 지정된다. RPS 간 예측은 현재 픽처의 참조 픽처 세트가 이전에 디코딩된 픽처의 참조 픽처 세트로부터 예측될 수 있다는 사실을 활용한다. 이는 현재 픽처의 모든 참조 픽처가 이전 픽처의 참조 픽처이거나 아니면 이전에 디코딩된 픽처 그 자신이기 때문이다. 이 픽처들 중 어느 것이 참조 픽처이고 현재 픽처의 예측을 위하여 사용되어야 하는지를 나타내는 것이 필요할 뿐이다. 참조 픽처 세트 코딩의 유형 둘 다에서, 플래그(used_by_curr_pic_X_flag)는 각 참조 픽처를 위해 추가적으로 송신되어 그 참조 픽처가 현재 픽처에 의한 참조를 위해 사용되는지(*Curr 리스트에 포함됨) 아닌지(*Foll 리스트에 포함됨)를 나타낸다. 현재 슬라이스에 의해 사용되는 참조 픽처 세트에 포함된 픽처는 "참조를 위해 사용됨"으로 마킹되고, 현재 슬라이스에 의해 사용되는 참조 픽처 세트 내에 있지 않은 픽처는 "참조를 위해 사용되지 않음"으로 마킹된다. 만약 현재 픽처가 IDR 픽처인 경우, RefPicSetStCurr0, RefPicSetStCurr1, RefPicSetStFoll0, RefPicSetStFoll1, RefPicSetLtCurr 및 RefPicSetLtFoll은 모두 비도록(empty) 설정된다.
디코딩된 픽처 버퍼(Decoded Picture Buffer: DPB)는 인코더 내에서 및/또는 디코더 내에서 사용될 수 있다. 인터 예측에서의 참조를 위하여 또한 디코딩된 픽처를 출력 순서로 재순서화하기 위하여, 디코딩된 픽처를 버퍼링할 두 가지 이유가 있다. H.264/AVC 및 HEVC가 참조 픽처 마킹(reference picture marking) 및 출력 재순서화(output reordering) 모두를 위하여 많은 융통성을 제공하는바, 참조 픽처 버퍼링(reference picture buffering) 및 출력 픽처 버퍼링(output picture buffering)을 위한 별개의 버퍼는 메모리 리소스를 낭비할 수 있다. 따라서, DPB는 참조 픽처 및 출력 재순서화를 위한 일원화된 디코딩된 픽처 버퍼링 프로세스(unified decoded picture buffering process)를 포함할 수 있다. 디코딩된 픽처는 그것이 참조로서 더 이상 사용되지 않고 출력을 위해 필요하지 않은 경우 DPB로부터 제거될 수 있다.
H.264/AVC 및 HEVC의 많은 코딩 모드에서, 인터 예측을 위한 참조 픽처는 참조 픽처 리스트에 대한 인덱스로써 나타내어진다. 그 인덱스는 가변 길이 코딩(variable length coding)으로써 코딩될 수 있는데, 이는 보통 더 작은 인덱스로 하여금 대응하는 신택스 요소에 대하여 더 모자라는 값을 갖도록 한다. H.264/AVC 및 HEVC에서, 두 참조 픽처 리스트(참조 픽처 리스트 0 및 참조 픽처 리스트 1)가 각각의 쌍방향 예측(bi-predictive) (B) 슬라이스를 위하여 생성되고, 하나의 참조 픽처 리스트(참조 픽처 리스트 0)가 각각의 인터 코딩된(inter-coded) (P) 슬라이스를 위하여 형성된다. 추가로, HEVC 표준 초안에서의 B 슬라이스에 대하여, 최종 참조 픽처 리스트(List 0 및 List 1)가 구성된 후에는 조합된 리스트(List C)가 구성된다. 그러한 조합된 리스트는 B 슬라이스 내의 단방향 예측(uni-prediction)(단일방향성의 예측(uni-directional prediction)이라고도 알려짐)을 위하여 사용될 수 있다.
참조 픽처 리스트 0 및 참조 픽처 리스트 1과 같은 참조 픽처 리스트는 통상적으로 두 단계로 구성되는데: 첫째, 초기 참조 픽처 리스트가 생성된다. 초기 참조 픽처 리스트는 가령 frame_num, POC, temporal_id 또는 예컨대 GOP 구조와 같은 예측 계층구조에 관한 정보 또는 그들의 임의의 조합에 기초하여 생성될 수 있다. 둘째, 초기 참조 픽처 리스트는 참조 픽처 리스트 수정 신택스 구조(reference picture list modification syntax structure)라고도 알려진 참조 픽처 리스트 재순서화(Reference Picture List Reordering: RPLR) 명령에 의해 재순서화될 수 있는데, 이는 슬라이스 헤더에 포함될 수 있다. RPLR 명령은 각자의 참조 픽처 리스트의 시작으로 순서화되는 픽처를 나타낸다. 이 두 번째 단계는 또한 참조 픽처 리스트 수정 프로세스로 지칭될 수 있고, RPLR 명령은 참조 픽처 리스트 수정 신택스 구조에 포함될 수 있다. 참조 픽처 세트가 사용되는 경우, 참조 픽처 리스트 0은 우선 RefPicSetStCurr0(그 뒤에는 RefPicSetStCurr1이 따라오며, 이 뒤에는 RefPicSetLtCurr이 따라옴)을 포함하도록 초기화될 수 있다. 참조 픽처 리스트 1은 우선 RefPicSetStCurr1(그 뒤에는 RefPicSetStCurr0이 따라옴)을 포함하도록 초기화될 수 있다. 초기 참조 픽처 리스트는 참조 픽처 리스트 수정 신택스 구조를 통하여 수정될 수 있는데, 여기서 초기 참조 픽처 리스트 내의 픽처는 그 리스트에 대한 엔트리 인덱스(entry index)를 통하여 식별될 수 있다.
스케일가능 비디오 코딩은 하나의 비트스트림이 상이한 비트율, 해상도 및/또는 프레임율에서의 콘텐트의 다수의 표현을 포함할 수 있는 코딩 구조를 참조한다. 이 경우 수신기는 그것의 특성(가령 디스플레이 디바이스와 가장 잘 매칭되는 해상도)에 따라 원하는 표현을 추출할 수 있다. 대안적으로, 서버 또는 네트워크 요소(network element)는 가령 수신기의 처리 능력 또는 네트워크 특성에 따라 수신기로 전송될 비트스트림의 부분을 추출할 수 있다. 통상적으로 스케일가능 비트스트림은 이용가능한 최저 품질 비디오를 제공하는 "기반 계층" 및 더 낮은 계층과 함께 수신되어 디코딩되는 경우 비디오 품질을 향상시키는 하나 이상의 향상 계층으로 이루어진다. 향상 계층에 대한 코딩 효율을 개선하기 위하여, 그 계층의 코딩된 표현은 통상적으로 더 낮은 계층에 의존한다. 예를 들어, 향상 계층의 움직임 및 모드 정보는 더 낮은 계층으로부터 예측될 수 있다. 마찬가지로 더 낮은 계층의 픽셀 데이터는 향상 계층을 위한 예측을 생성하기 위하여 사용될 수 있다.
몇몇 스케일가능 비디오 코딩 방안에서, 비디오 신호는 기반 계층 및 하나 이상의 향상 계층 내에 인코딩될 수 있다. 향상 계층은 시간적 해상도(즉, 프레임율), 공간적 해상도 또는 단순히 다른 계층 또는 그 일부에 의해 표현되는 비디오 콘텐트의 품질을 향상시킬 수 있다. 각 계층(그것의 모든 종속적 계층과 함께)은 어떤 공간적 해상도, 시간적 해상도 및 품질 레벨에서의 비디오 신호의 한 표현이다. 이 문서에서, 우리는 스케일가능 계층(그것의 종속적 계층 모두와 함께)을 "스케일가능 계층 표현"(scalable layer representation)으로 지칭한다. 스케일가능 계층 표현에 대응하는 스케일가능 비트스트림의 부분은 소정의 충실도로 원래의 신호의 표현을 산출하기 위하여 추출되고 디코딩될 수 있다.
몇몇 코딩 표준은 스케일가능 비트 스트림의 생성을 허용한다. 의미 있는 디코딩된 표현은 스케일가능 비트 스트림의 소정의 부분만을 디코딩하는 것에 의해 산출될 수 있다. 스케일가능 비트 스트림은 가령 스트리밍 서버(streaming server) 내의 사전 인코딩된 유니캐스트 스트림(pre-encoded unicast stream)들의 율 적응(rate adaptaion)을 위하여, 또한 상이한 능력을 구비하고/하거나 상이한 네트워크 조건을 갖는 단말로의 단일 비트 스트림의 전송을 위하여 사용될 수 있다. 스케일가능 비디오 코딩을 위한 몇몇 다른 용례의 리스트는 ISO/IEC JTC1 SC29 WG11 (MPEG) 산출 문서(output document) N5540("Applications and Requirements for Scalable Video Coding", 64회 MPEG 회의, 2003년 3월 10일부터 14일, 태국 파타야)에서 찾아볼 수 있다.
몇몇 경우에, 향상 계층 내의 데이터는 어떤 위치 후 또는 임의적인 위치에서라도 절삭될(truncated) 수 있는데, 여기서 각 절삭 위치(truncation position)는 점점 더 향상된 시각적 품질을 표현하는 추가적인 데이터를 포함할 수 있다. 그러한 스케일가능성은 미립의 (입도) 스케일가능성(Fine-Grained (granularity) Scalability: FGS)으로 지칭된다.
SVC는 현재 재구성된 계층 또는 다음의 더 낮은 계층이 아닌 계층으로부터 어떤 정보가 예측될 수 있는 계층 간(inter-layer) 예측 메커니즘을 사용한다. 계층 간 예측될(inter-layer predicted) 수 있는 정보는 인트라(intra) 텍스처, 움직임 및 잔차 데이터를 포함한다. 계층 간 움직임 예측은 블록 코딩 모드, 헤더 정보 등의 예측을 포함하는데, 여기서는 더 낮은 계층으로부터의 움직임이 더 높은 계층의 예측을 위하여 사용될 수 있다. 인트라 코딩의 경우, 더 낮은 계층의 코로케이팅된 매크로블록으로부터의 또는 주위의 매크로블록으로부터의 예측이 가능하다. 이 예측 기법은 더 일찍 코딩된 액세스 단위로부터의 정보를 활용하지 않고 따라서 인트라 예측 기법으로 지칭된다. 나아가, 더 낮은 계층으로부터의 잔차 데이터가 현재의 계층의 예측을 위하여 또한 활용될 수 있다.
SVC는 단일 루프 디코딩(single-loop decoding)으로 알려진 개념을 명시한다. 그것은 제한된 인트라 텍스처 예측 모드(constrained intra texture prediction mode)를 사용하는 것에 의하여 가능하게 되는데, 이로써 계층 간 인트라 텍스처 예측(inter-layer intra texture prediction)이 매크로블록(macroblock: MB)들(이에 대하여 기반 계층의 대응하는 블록이 인트라 MB(intra-MB)들 내부에 위치됨)에 적용될 수 있다. 동시에, 기반 계층 내의 그러한 인트라 MB들은 (가령, 1과 동일한 신택스 요소 "constrained_intra_pred_flag"를 가지는) 제한된 인트라 예측(constrained intra-prediction)을 사용한다. 단일 루프 디코딩에서, 디코더는 재생(playback)을 위해 희망되는 스케일가능 계층("원하는 계층"(desired layer) 또는 "타겟 계층"(target layer)으로 불림)을 위해서만 움직임 보상 및 전 픽처 재구성(full picture reconstruction)을 수행하고, 이로써 디코딩 복잡도를 상당히 감소시킨다. 계층 간 예측(그것이 계층 간 인트라 텍스처 예측, 계층 간 움직임 예측 또는 계층 간 잔차 예측이라도)을 위하여 사용되지 않은 MB의 데이터의 전부 또는 일부가 원하는 계층의 재구성을 위해 필요하지는 않기 때문에, 원하는 계층이 아닌 계층 모두가 완전히 디코딩될 필요는 없다.
단일 디코딩 루프가 대부분의 픽처의 디코딩을 위해 필요하나, 기반 표현(base representation)들을 재구성하기 위하여 두 번째 디코딩 루프가 선택적으로 적용될 수 있는데, 이들은 예측 참조로서 필요하지만 출력 또는 디스플레이를 위해서는 그렇지 않고, 이른바 키 픽처(key picture)들(이에 대하여 "store_ref_base_pic_flag"가 1과 동일함)을 위해서만 재구성된다.
FGS는 SVC 표준의 몇몇 초안 버전에 포함되었으나, 그것은 결국 최종 SVC 표준에서 배제되었다. FGS는 SVC 표준의 몇몇 초안 버전의 맥락에서 나중에 서술된다. 절삭될 수 없는 향상 계층에 의해 제공되는 스케일가능성은 조립의 (입도) 스케일가능성(Coarse-Grained (granularity) Scalability: CGS)으로 지칭된다. 그것은 전통적인 품질 (SNR) 스케일가능성 및 공간적 스케일가능성을 집합적으로 포함한다. SVC 표준은 이른바 중립의 스케일가능성(Medium-Grained Scalability: MGS)을 지원하는데, 여기서는 품질 향상 픽처가 SNR 스케일가능 계층 픽처와 유사하게 코딩되나, 0보다 큰 quality_id 신택스 요소를 구비함으로써 FGS 계층 픽처와 유사하게 고수준 신택스 요소(high-level syntax element)에 의하여 나타내어진다.
SVC 초안에서의 스케일가능성 구조(scalability structure)는 세 개의 신택스 요소에 의해 특징지어진다: "temporal_id", "dependency_id" 및 "quality_id". 신택스 요소 "temporal_id"는 시간적 스케일가능성 계층구조(temporal scalability hierarchy) 또는 간접적으로 프레임율을 나타내는 데 사용된다. 더 작은 최대 "temporal_id" 값의 픽처를 포함하는 스케일가능 계층 표현은 더 큰 최대 "temporal_id"의 픽처를 포함하는 스케일가능 계층 표현보다 더 작은 프레임율을 가진다. 주어진 시간적 계층(temporal layer)은 더 낮은 시간적 계층(즉, 더 작은 "temporal_id" 값을 갖는 시간적 계층)에 통상적으로 의존하나 어떠한 더 높은 시간적 계층에도 의존하지 않는다. 신택스 요소 "dependency_id"는 (앞서 언급된 바와 같이, SNR 및 공간적 스케일가능성 모두를 포함하는) CGS 계층 간 코딩 종속성 계층관계(CGS inter-layer coding dependency hierarchy)를 나타내는 데 사용된다. 임의의 시간적 레벨 위치에서, 더 작은 "dependency_id" 값의 픽처는 더 큰 "dependency_id" 값을 갖는 픽처의 코딩을 위한 계층 간 예측을 위하여 사용될 수 있다. 신택스 요소 "quality_id"는 FGS 또는 MGS 계층의 품질 레벨 계층관계(quality level hierarchy)를 나타내는 데 사용된다. 임의의 시간적 위치에서, 그리고 동일한 "dependency_id" 값에 대해, "quality_id"가 QL과 동일한 픽처는 계층 간 예측을 위하여 "quality_id"가 QL-1과 동일한 픽처를 사용한다. "quality_id"가 0보다 큰 코딩된 슬라이스는 절삭가능한(truncatable) FGS 슬라이스 아니면 절삭가능하지 않은(non-truncatable) MGS 슬라이스로서 코딩되는 것일 수 있다.
간단하게는, "dependency_id"의 동일한 값을 갖는 하나의 액세스 단위 내의 모든 데이터 단위(예컨대, SVC 맥락에서 네트워크 추상화 계층(Network Abstraction Layer) 단위 또는 NAL 단위)가 종속성 단위(dependency unit) 또는 종속성 표현(dependency representation)으로 지칭된다. 하나의 종속성 단위 내에서, "quality_id"의 동일한 값을 갖는 모든 데이터 단위가 품질 단위 또는 계층 표현으로 지칭된다.
디코딩된 기반 픽처(decoded base picture)라고도 알려진 기반 표현은, 0과 동일한 "quality_id"를 갖고 "store_ref_base_pic_flag"가 1과 동일하게 설정된 종속성 단위의 비디오 코딩 계층(Video Coding Layer: VCL) NAL 단위를 디코딩하는 것에서 기인하는 디코딩된 픽처이다. 디코딩된 픽처로도 지칭되는 향상 표현(enhancement representation)은 최상의 종속성 표현에 대하여 존재하는 모든 계층 표현이 디코딩되는 정규(regular) 디코딩 프로세스에서 기인한다.
앞서 언급된 바와 같이, CGS는 공간적 스케일가능성 및 SNR 스케일가능성을 모두 포함한다. 처음에 공간적 스케일가능성은 상이한 해상도를 갖는 비디오의 표현을 지원하도록 설계되었다. 각 시간 인스턴스(time instance)에 대하여, VCL NAL 단위는 동일한 액세스 단위에서 코딩되고 이 VCL NAL 단위는 상이한 해상도에 대응할 수 있다. 디코딩 동안, 저해상도 VCL NAL 단위(low resolution VCL NAL unit)는 고해상도 픽처(high resolution picture)의 최종 디코딩 및 재구성에 의해 선택적으로 대물림될(inherited) 수 있는 움직임 필드 및 잔차를 제공한다. 더 오래된 비디오 압축 표준과 비교될 때, SVC의 공간적 스케일가능성은 기반 계층이 향상 계층의 크로핑 및 주밍된 버전(cropped and zoomed version)일 수 있게 일반화되었다.
MGS 품질 계층은 FGS 품질 계층과 유사하게 "quality_id"로써 나타내어진다. (동일한 "dependency_id"를 갖는) 각 종속성 단위에 대하여, "quality_id"가 0과 동일한 계층이 있고 "quality_id"가 0보다 큰 다른 계층이 있을 수 있다. "quality_id"가 0보다 큰 이 계층은 슬라이스가 절삭가능한 슬라이스로서 코딩되었는지에 따라 MGS 계층 아니면 FGS 계층이다.
FGS 향상 계층의 기본적 형태에서는, 계층 간 예측만이 사용된다. 그러므로, FGS 향상 계층은 디코딩된 시퀀스 내에 어떠한 에러 전파(error propagation)도 유발하지 않고 자유롭게 절삭될 수 있다. 그러나, FGS의 기본적 형태는 낮은 압축 효율을 겪는다. 이 문제는 저품질 픽처만 인터 예측 참조를 위해 사용되기 때문에 생긴다. 그러므로 FGS 향상된(FGS-enhanced) 픽처가 인터 예측 참조로서 사용될 것이 제안되었다. 그러나, 이는 일부 FGS 데이터가 폐기되는 경우, 드리프트(drift)로도 지칭되는 인코딩-디코딩 미스매치(encoding-decoding mismatch)를 유발할 수 있다.
SVC 표준 초안의 한 가지 특징은 FGS NAL 단위가 자유롭게 드롭되거나(dropped) 절삭될 수 있다는 점이며, SVCV 표준의 한 특징은 비트스트림의 적합성(conformance)에 영향을 미치지 않고도 MGS NAL 단위가 자유롭게 드롭될 수 있(으나 절삭될 수는 없)다는 점이다. 위에서 서술된 바와 같이, 그러한 FGS 또는 MGS 데이터가 인코딩 동안 인터 예측 참조를 위해 사용되었던 경우, 그 데이터를 드롭하는 것(dropping) 또는 절삭하는 것은 인코더 측 및 디코더 측에서의 디코딩된 픽처 간 미스매치를 초래할 것이다. 이 미스매치 역시 드리프트로 지칭된다.
FGS 또는 MGS 데이터를 드롭하는 것 또는 절삭하는 것으로 인한 드리프트를 제어하기 위하여, SVC는 다음의 해결책을 적용하였다: 어떤 종속성 단위에서, 기반 표현("quality_id"가 0과 동일한 CGS 픽처 및 모든 의존되는 더 낮은 계층 데이터(dependent-on lower layer data)만을 디코딩하는 것에 의함)이 디코딩된 픽처 버퍼에 저장된다. "dependency_id"의 동일한 값을 갖는 후속 종속성 단위를 인코딩하는 경우, FGS 또는 MGS NAL 단위를 포함하여 NAL 단위 모두는 인터 예측 참조를 위하여 기반 표현을 사용한다. 따라서, 더 이른 액세스 단위 내 FGS 또는 MGS NAL 단위를 드롭하는 것 또는 절삭하는 것으로 인한 모든 드리프트는 이 액세스 단위에서 중단된다. "dependency_id"의 동일한 값을 갖는 다른 종속성 단위에 대하여, NAL 단위 모두는 높은 코딩 효율을 위하여, 디코딩된 픽처를 인터 예측 참조에 사용한다.
각 NAL 단위는 NAL 단위 헤더 내에 신택스 요소 "use_ref_base_pic_flag"를 포함한다. 이 요소의 값이 1과 동일한 경우, NAL 단위의 디코딩은 인터 예측 프로세스 동안 참조 픽처의 기반 표현을 사용한다. 신택스 요소 "store_ref_base_pic_flag"는 장래의 픽처가 인터 예측을 위하여 사용할 현재의 픽처의 기반 표현을 저장할 것인지(1과 동일한 경우) 아닌지(0과 동일한 경우) 지정한다.
"quality_id"가 0보다 큰 NAL 단위는 참조 픽처 리스트 구성 및 가중 예측에 관련된 신택스 요소를 포함하지 않는다(즉, 신택스 요소 "num_ref_active_1x_minus1" (x=0 또는 1), 참조 픽처 리스트 재순서화 신택스 테이블(reference picture list reordering syntax table) 및 가중 예측 신택스 테이블(weighted prediction syntax table)은 존재하지 않는다). 따라서, MGS 또는 FGS 계층은 필요한 경우 동일한 종속성 단위의 0과 동일한 "quality_id"를 갖는 NAL 단위로부터 이 신택스 요소를 상속받아야(inherit) 한다.
SVC에서, 참조 픽처 리스트는 기반 표현으로만("use_ref_base_pic_flag"가 1과 동일한 경우) 아니면 "기반 표현"이라고 마킹되지 않은 디코딩된 픽처로만("use_ref_base_pic_flag"가 0과 동일한 경우) 이루어지나, 동시에 양자 모두인 것은 아니다.
품질 스케일가능성(신호 대 잡음(Signal-to-Noise) 또는 SNR로도 알려짐) 및/또는 공간적 스케일가능성을 위한 스케일가능 비디오 코덱은 다음과 같이 구현될 수 있다. 기반 계층에 대하여, 종래의 비-스케일가능(non-scalable) 비디오 인코더 및 디코더가 사용된다. 기반 계층의 재구성된/디코딩된 픽처는 향상 계층을 위하여 참조 픽처 버퍼에 포함된다. H.264/AVC, HEVC, 그리고 인터 예측을 위해 참조 픽처 리스트(들)을 사용하는 유사한 코드에서, 기반 계층 디코딩된 픽처는 향상 계층의 디코딩된 참조 픽처와 유사하게 향상 계층 픽처의 코딩/디코딩을 위한 참조 픽처 리스트(들) 내에 삽입될 수 있다. 따라서, 인코더는 인터 예측 참조로서 기반계층 참조 픽처를 선택하여 코딩된 비트스트림에 참조 픽처 인덱스와 함께 그것의 사용을 나타낼 수 있다. 디코더는 비트스트림으로부터(가령 참조 픽처 인덱스로부터) 기반계층 픽처가 향상 계층을 위한 인터 예측 참조로서 사용됨을 디코딩한다. 디코딩된 기반계층 픽처가 향상 계층을 위한 예측 참조로서 사용되는 경우, 그것은 계층 간 참조 픽처(inter-layer reference picture)로 지칭된다.
품질 스케일가능성에 더하여 다음 스케일가능성 모드가 존재한다:
· 공간적 스케일가능성: 기반 계층 픽처가 향상 계층 픽처보다 더 높은 해상도로 코딩된다.
· 비트 깊이 스케일가능성: 기반 계층 픽처가 향상 계층 픽처(가령 10 또는 12 비트)보다 더 낮은 비트 깊이(가령 8 비트)로 코딩된다.
· 크로마 포맷 스케일가능성: 기반 계층 픽처가 향상 계층 픽처(가령 4:2:0 포맷)보다 크로마에서의 더 높은 충실도(가령 4:4:4 크로마 포맷으로 코딩됨)를 제공한다.
위의 스케일가능성 경우 전부에서, 기반 계층 정보는 추가적인 비트율 오버헤드를 최소화하기 위하여 향상 계층을 코딩하는 데에 사용될 수 있다. 그렇기는 해도 스케일가능 비디오 코딩을 위한 기존의 해결책들은 향상 계층을 인코딩 및 디코딩하는 경우 기반 계층으로부터 또한 향상 계층으로부터 이용가능한 정보를 최대한 이용하는 것은 아니다.
이제 향상 계층 움직임 보상된 예측(enhanced layer motion compensated prediction)의 성능을 개선하기 위하여, 향상 계층 샘플의 예측을 위한 개선된 방법이 이하에서 제시된다.
그 방법에서, 향상 계층 픽처에서 예측될 샘플의 블록이 식별된다. 적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록이 계산된다. 그 단계들은 기반 계층 상에서 반복된다(즉, 재구성된 샘플의 블록은 향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처에서 식별되고, 기반 계층 예측 블록은 적어도 하나의 기반 계층 참조 픽처 및 향상 계층을 위하여 나타내어진 움직임 정보를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 계산된다). 그리고 제2 향상 계층 예측이 기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 계산된다. 향상 계층 픽처 내 샘플의 식별된 블록은 제2 향상 계층 예측으로부터 예측하는 것에 의해 인코딩된다.
실시예에 따르면, 그 방법은 원래의 픽처 내의 샘플의 블록의 값 및 코로케이팅된 향상 계층 예측 블록의 값 간의 잔차 신호를 식별하는 것; 잔차 신호를 재구성된 잔차 신호로 코딩하는 것; 및 재구성된 잔차 신호를 코로케이팅된 향상 계층 예측 블록에 부가하는 것을 더 포함한다.
그러므로, 향상 계층 움직임 보상된 예측의 성능은 향상 계층의 동일 또는 유사한 움직임 벡터를 사용하여 기반 계층 상의 움직임 보상 프로세스에 의해 추정되는 차동 신호 및 향상 계층 움직임 보상된 예측을 함께 합하는 것에 의해 개선된다. 차동 신호는 기반 계층 상의 잔차 신호를 근사화하며(즉, 비디오 시퀀스 내의 나타나거나 사라지는 대상체), 향상 계층 상의 잔차 예측 에러 코딩의 필요성을 상당히 감소시켜서 상당한 압축 효율 이득을 유발할 수 있다.
그 방법은 기반 향상된 움직임 보상된 예측(Base Enhanced Motion Compensated Prediction: BEMCP)으로 지칭될 수 있다.
실시예에 따르면, 인터 예측 모드 및 대응하는 움직임 벡터와 참조 프레임 인덱스의 표시가 HEVC와 유사하게 수행된다.
실시예에 따르면, BEMCP 방법의 사용은 1 빈 식별자(one-bin identifier)에 의해 예측 단위(Prediction Unit: PU) 레벨에서 시그널링된다.
실시예에 따르면, 기반 계층 내의 블록은 향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 기반 계층 픽처의 샘플을 업샘플링(upsampling)하는 것에 의해 생성된다. 이 경우 P(x,y) 및 B(xb,yb)의 좌표의 관계는 간단하게 된다: xb=x, yb=y.
실시예에 따르면, 기반 계층 내 움직임 보상된 예측은 향상 계층 예측 블록과 동일한 공간적 해상도로 업샘플링된 적어도 하나의 기반 계층 참조 픽처를 사용하여 생성된다. 결과적으로, 향상 계층 움직임 정보는 기반 계층 움직임 보상에 직접적으로 적용될 수 있다.
향상 계층 내의 픽셀의 블록(향상 계층 블록)의 코딩 또는 디코딩을 위한 실시예가 도 6의 흐름도에 예시된다. 우선, 향상 계층 픽처에서 예측될 샘플의 블록 P(x,y)이 식별된다(650). 그리고 향상 계층 참조 픽처 및 향상 계층 움직임 정보(코딩/디코딩 프로세스에서 나타내어짐)를 사용하여 샘플의 식별된 블록 P(x,y)에 대하여 움직임 보상된 예측이 생성되어, 향상 계층 예측 블록 P'(x,y)을 계산하는 것을 가능하게 한다(652). 기반 계층에서 그 단계들을 반복하는 것은 샘플의 블록 P(x,y)의 위치에 대응하는 위치에서 재구성된 기반 계층 샘플의 블록 B(xb,yb)을 식별하는 것(654), 그리고 기반 계층 참조 픽처 및 나타내어진 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록 B(xb,yb)에 대하여 움직임 보상된 예측을 생성하여, 기반 계층 예측 블록 B'(xb,yb)를 계산하는 것을 가능하게 하는 것(656)을 수반한다. 그리고 샘플의 식별된 향상 계층 블록 P(x,y)에 대한 예측된 값은 B(xb,yb) 및 B'(xb,yb)의 차이를 P'(x,y)에 부가하는 것(658)(즉, P(x,y)=Clip(P'(x,y)+B(xb,yb)-B'(xb,yb)), 여기서 Clip() 함수는 결과적인 샘플 값을 비디오 재료의 원하는 비트 깊이(가령 8비트 비디오에 대하여 0 및 225 사이(포괄적임))로 제한하는 데 사용될 수 있음)에 의해 계산된다. 최종적으로, 임의의 잔차 신호(즉, 원래의 이미지 블록 및 향상 계층 예측 블록 간의 차이)가 남아 있는지 체크된다(660). 만약 그렇다면, 잔차 신호는 인코딩되고 재구성된 잔차 신호는 향상 계층 예측 블록에 부가된다(662).
통상의 기술자는 위 단계의 순서가 바뀔 수 있음을 쉽게 인식한다. 예를 들어, 단계들(500 및 502)은 단계들(504 및 506) 후에 수행될 수 있다. 또한 단계(508)에서 예측된 값을 계산하는 것을 수행하는 데 상이한 접근법이 사용될 수 있다. 예를 들어, B(xb,yb) 및 B'(xb,yb)의 차이는 스케일링 인자(scaling factor)에 의해 스케일링될 수 있다.
도 7은 (단일 참조 프레임과 함께 하나의 움직임 벡터를 이용하는) 단방향 예측의 경우에서 BEMCP 프로세스의 예를 예시한다. 향상 계층 픽처(700)에서 예측될 샘플의 블록 P(x,y)은 음영의(shaded) 4x4 블록으로서 도시된다. 예측된 향상 계층 픽처(702) 내의 향상 계층 예측 블록 P'(x,y)은 향상 계층 움직임 정보, 즉 움직임 벡터 (mvx, mvy)를 사용하여, 향상 계층 참조 픽처(704)의 대응하는 블록으로부터 계산된다.
도 6의 예에서, 재구성된 기반 계층 픽처 및 기반 계층 참조 픽처는 향상 픽처의 공간적 해상도를 갖도록 업샘플링되었다. 그러므로, 향상 계층 움직임 벡터 (mvx, mvy)는 기반 계층에서 움직임 보상 동작을 수행하는 경우에 수정 없이 적용된다.
샘플의 블록 P(x,y)의 위치에 대응하는 위치에서의 재구성된 기반 계층 샘플의 블록 B(x,y)은 재구성된 기반 계층 픽처(706)에서 식별된다. 예측된 기반 계층 픽처(708) 내의 기반 계층 예측 블록 B'(x,y)은 움직임 벡터 (mvx, mvy)를 사용하여 기반 계층 참조 픽처(710)의 대응하는 블록으로부터 계산된다.
움직임 보상된 예측이 수행되었으면 향상 계층 예측 샘플은 이 식을 평가하는 것에 의해 획득된다:
Figure pct00002
가령 컴퓨터 판독가능 저장 매체 상에 또는 메모리에 저장되고, 프로세서에 의해 실행되는 경우 이동 전화(mobile phone)와 같은 장치로 하여금 필요한 단계를 수행하게 하는 컴퓨터 코드로서 실시예들이 수행될 수 있다. 예를 들어, 샘플의 식별된 향상 계층 블록에 대한 예측되는 값을 계산하는 것은 가령 다음과 같이 C/C++ 코드로서 구현될 수 있다:
Figure pct00003
여기서 (iWidth, iHeight)는 향상 계층 예측 블록의 크기를 정의한다. pEnh는 향상 계층 블록 P'(x,y)에 대한 생성된 움직임 보상된 예측을 입력으로서, 그리고 최종 기반 향상된 움직임 보상된 예측 P(x,y)을 출력으로서 포함하는 어레이(array)에 대한 포인터(pointer)이다. pBaseThis는 향상 계층 이미지와 동일한 해상도를 갖는 업샘플링된 기반 계층 재구성된 이미지 B(x,y)를 포함하는 어레이에 대한 포인터이다. bBase는 P'(x,y)와 유사하게 향상 계층 움직임 정보를 활용하는 것에 의해 획득된 움직임 보상된 기반 계층 블록 B'(x,y)에 대한 포인터이다. iStrideEnh, iStrideBaseThis 및 iStrideBase는 각각 pEnh, pBaseThis 및 pBase에 대한 샘플 데이터를 포함하는 버퍼의 폭을 나타낸다.
실시예에 따르면, BEMCP 모드의 사용의 시그널링은 단지 예측 단위(Prediction Unit: PU) 레벨에서의 시그널링에 한정되지 않고, 상이한 입도(granularity), 가령 코딩 단위(Coding Unit: CU), 슬라이스, 픽처 또는 시퀀스 레벨에서 수행될 수 있다.
위에서 언급된 바와 같이, B(x,y) 및 B'(x,y)의 차이는 스케일링 인자에 의해 스케일링될 수 있다. 실시예에 따르면, 차동 항(differential term) B(x,y) - B'(x,y)의 스케일링은 변할 수 있고 그 스케일 인자는 선택된 스케일링 동작을 나타내며 시그널링될 수 있다. 예를 들어, 차동 항이 사전정의된 인자에 의해 스케일링되는지 또는 스케일링 없이 사용되는지를 나타내는 데에 1 빈 식별자가 사용될 수 있다. 사전정의된 인자는 가령 0.5일 수 있는데, 다음과 같이 두 개의 대안적인 예측 P1(x,y) 및 P2(x,y)를 제공한다:
Figure pct00004
실시예에 따르면, 복수의 스케일링 인자가 사용될 수 있고 그래서 또한 차동 항 P'(x,y) - B'(x,y)이 스케일링될 수 있다. 예를 들어, P'(x,y) - B'(x,y) 및 B(x,y) - B'(x,y) 모두 0.5의 인자에 의해 스케일링되게 하여, 세 개의 BEMCP 모드가 생성될 수 있다. 이 예에서, 스케일링되지 않은(non-scaled) BEMCP가 사용되는지 아닌지를 하나의 빈(bin)이 나타낼 수 있고, 스케일링된 BEMCP가 사용되는 경우에는, 두 개의 스케일링된 BEMCP 모드 중 어느 것이 픽셀의 블록에 대하여 가능하게 되는지 다른 빈이 나타낼 수 있다:
Figure pct00005
실시예에 따르면, 차동 항 P'(x,y) - B'(x,y) 및 B(x,y) - B'(x,y)에 대한 스케일링 인자는 시그널링되거나 아니면 이용가능한 정보로부터 암시될 수 있다. 스케일링 인자의 값은 0 및 1 사이(포괄적임)의 범위에 한정되거나 아니면 그 범위 외부의 값을 가질 수 있다.
실시예에 따르면, BEMCP 모드의 사용은 블록 크기 또는 픽처(I, P, B 픽처, 참조 또는 비참조 픽처, 시간적 계층관계에서 픽처의 위치 등) 또는 블록(인터, 인트라, 단방향 예측됨(uni-predicted), 쌍방향 예측됨(bi-predicted) 등)의 유형에 의존할 수 있다.
실시예에 따르면, BEMCP 모드의 사용은 시간적 참조 픽처를 위한 또는 현재의 픽처를 위한 기반 계층 정보의 가용성(availability)에 의존할 수 있다.
실시예에 따르면, BEMCP 모드의 사용은 비트율, 블록을 위해 활용되는 양자화 파라미터 또는 블록의 색도(chromacity)에 의존할 수 있다.
BEMCP 모드의 사용을 시그널링하는 것에 대신하여 또는 추가하여, BEMCP 모드는 사전결정된 조건으로 또는 이 접근법들의 조합으로서 사용 정보를 추론하는 것에 의해 가능하게 될 수 있다. 실시예에 따르면, 그 모드의 사용을 추론하는 것은, 가령 이웃하는 블록의 모드에 기반하여, 위치가 향상 계층 블록에 대응하는 기반 계층 블록(들) 상의 예측 에러 코딩의 존재에 기반하여, 향상 계층 또는 기반 계층 참조 프레임의 샘플 값 또는 재구성된 기반 계층 픽처의 샘플 값, 기반 계층 디코딩된 픽처 버퍼 내의 기반 계층 참조 픽처의 가용성 또는 이들의 조합에 기반하여 발생할 수 있다.
실시예에 따르면, BEMCP 모드의 사용은 움직임 코딩 메커니즘의 유형에 관하여 상이할 수 있다. 예를 들어 HEVC에서, 그 모드를 사용하는 것은 AMVP 코딩된 블록에 대하여 명시적으로 시그널링될 수 있고 그 모드를 사용하는 것은 병합 코딩된 블록 내의 선택된 병합 후보의 움직임 정보로부터 복사될 수 있다.
기반 계층의 업샘플링에서, 상이한 업샘플링 필터가 활용될 수 있다. 기반 계층의 업샘플링은 완전한 픽처에 대하여 아니면 움직임 보상/BEMCP 프로세스를 위해 요구되는 영역(또는 중간에 있는 영역)에 대해서만 행해질 수 있다.
실시예에 따르면, 향상 및 기반 계층 이미지의 좌표계는 상이할 수 있다. 예를 들어, 기반 계층이 처리 전에 향상 계층과 동일한 해상도로 업샘플링되지 아니하나, 기반 계층 및 향상 계층 간 2:1의 공간적 스케일가능성이 있다면, 기반 및 향상 계층 샘플들 P 및 B의 좌표의 관계는 xb=x/2, yb=y/2로서 주어질 수 있다.
실시예에 따르면, 기반 계층 내의 움직임 보상은 기반 계층의 원래의 해상도에서 발생할 수 있다. 원래의 해상도에서의 기반 계층 차이 신호 Bd(xb,yb) = B(xb,yb) - B'(xb,yb)는 향상 계층 블록과 동일한 해상도로 업샘플링되어 향상 계층 예측에 부가될 수 있다: P(x,y) = P'(x,y) + Bdupsampled(x,y). 여기서, 기반 계층 움직임 보상은 두 계층의 해상도 차이와 매칭하도록 향상 계층 움직임 벡터를 스케일링하여야 한다.
실시예에 따르면, 기반 계층 내 움직임 보상된 예측을 적용하는 것 대신, 나타내어진 기반 계층 예측 에러 신호가 업샘플링되어 향상 계층을 위한 추정된 예측 에러 신호로서 적용될 수 있다: P(x,y) = P'(x,y) + UpsampledBasePredictionError(x,y)
실시예에 따르면, 재구성된 기반 계층 샘플을 활용하는 것 대신, 재구성 전 중간의(intermediate) 샘플이 상이한 값을 획득하기 위해 사용될 수 있다. 특히, 가령 비블록화 필터링 또는 HEVC의 샘플 적응적 오프셋(Sample Adaptive Offset: SAO) 및 적응적 루프 필터(Adaptive Loop Filter: ALF)와 같은 임의의 인루프(in-loop) 필터링 동작 전의 기반 계층 값이 사용될 수 있다.
실시예에 따르면, 기반 계층에서의 움직임 보상 프로세스는 그러한 방법의 메모리 대역폭 요구를 줄이기 위하여 한정될 수 있다. 예를 들어, 그 프로세스는 (가령 단지 리스트 0 향상 계층 움직임, 또는 시간 또는 픽처 순서 의미에서 가장 가까운 참조 프레임을 참조하는 향상 계층 움직임 벡터를 활용하는) 단방향 예측, 기반 계층 움직임 벡터를 전 픽셀(full pixel) 값으로 양자화하는 것 또는 향상 계층 움직임이 기반 계층 움직임 보상된 예측을 위해 기반 계층에 대해 나타내어진 움직임에 (가령 어떤 사전정의된 또는 나타내어진 수평 및 수직 범위 내에서) 가까운 경우에만 그 모드를 활용하는 것으로 한정될 수 있다. 향상 계층 움직임이 기반 계층에 대해 나타내어진 움직임에 가까운 경우, 디코더는 기반 계층 참조 프레임으로부터 샘플 블록을 획득할 수 있는데, 그 크기는 가령 하나의 메모리 페치 동작(memory fetch operation)을 사용하여 사전정의된 또는 나타내어진 수평 및 수직 범위에 기초하여 증가된다. 따라서, 디코딩된 픽처 버퍼로부터의 메모리 페치 동작의 개수는 감소될 수 있다. 인코더는 기반 계층 움직임에 대한 향상 계층 움직임의 수평 및/또는 수직 범위를 가령 시퀀스 파라미터 세트 내에 나타낼 수 있다.
실시예에 따르면, 기반 계층에서의 움직임 보상 프로세스는 향상 계층 움직임 정보에 대신하여 또는 부가하여 기반 계층 재구성 프로세스를 위해 사용될 것으로 나타내어진 움직임 정보를 활용할 수 있다.
메모리 대역폭 요구를 한정하기 위한 추가의 실시예에 따르면, 그 방법은 사전결정된 값(가령 4, 8, 16 또는 32 픽셀)보다 작거나 큰 치수를 갖는 블록에 대해서만 적용될 수 있다.
실시예에 따르면, BEMCP 향상을 사용한다는 결정은 P'(x,y), B(x,y) 및 B'(x,y)의 픽셀 값을 분석하는 것에 의해 블록 내의 각 픽셀에 대해 별개로 행해질 수 있다. 여기서,
- 각 픽셀에 대한 결정은 명시적으로 시그널링될 수 있다;
- 픽셀 레벨 입도보다는 상이한 크기의 서브블록이 분석/시그널링을 위해 사용될 수 있다;
- 그 분석은 P'(x,y), B(x,y) 및 B'(x,y) 중의 블록 중 임의의 두 개를 고려할 수 있다;
- 그 분석은 P'(x,y), B(x,y) 및 B'(x,y) 중의 블록 중 임의의 두 개의 절대차를 임계화(thresholding)하는 것에 기반할 수 있다. 예를 들어, 다음의 분석이 위치 x,y에서 각 픽셀에 대해 적용될 수 있다:
abs(P'(x,y)-B(x,y))<T 인 P'(x,y)를 고르고,
그렇지 않으면 B(x,y)를 고르며(또는 그 반대도 마찬가지임),
여기서 T는 사전결정된 또는 적응적 임계 값이다.
- 그 분석은 다음과 같을 수 있다: 위치 x,y에서 각 픽셀에 대하여: abs(B'(x,y)-B(x,y))<abs(B'(x,y)-P'(x,y))이면 P'(x,y)를 고르고, 그렇지 않으면 B(x,y)를 고른다(또는 그 반대도 마찬가지임).
- P(x,y) = Clip( P'(x,y) + B(xb,yb) - B'(xb,yb) )의 평가 동안, B(xb,yb) - B'(xb,yb)의 절대값 아니면 P'(xb,yb) - B'(xb,yb)의 절대값이 사전결정된 또는 적응적인 값으로 클리핑될(clipped) 수 있다.
위의 다양한 대안들에서, BEMCP 관련된 신택스 요소(들) 또는 신택스 요소 값의 사용 및/또는 존재는 향상 계층 참조 픽처(들)에 대응하는 기반 계층 참조 픽처(들)의 (예측을 위한 참조로서의) 가용성에 의존할 수 있다. 인코더는 기반 계층을 위한 참조 픽처 세트(그리고 그 결과 기반 계층의 인터 예측을 위한 참조 픽처 마킹) 및/또는 BEMCP를 위한 또는 일반적으로 계층 간 예측을 위한 특정한 참조 픽처 마킹 제어를 통해 가용성을 제어할 수 있다. 인코더 및/또는 디코더는 기반 계층(Base Layer: BL) 픽처의 계층 간 마킹 상태(inter-layer marking status)를, BL 픽처가 BEMCP 참조 또는 향상 계층(Enhancement Layer: EL) 픽처를 위한 계층 간 예측 참조로서 필요하거나 필요할 수 있다고 판단되는 경우에는 "BEMCP 참조를 위해 사용됨"(used for BEMCP reference) 또는 "계층 간 참조를 위해 사용됨"(used for inter-layer reference) 또는 유사한 것으로서, 그리고 BL 픽처가 BEMCP 참조 또는 EL 픽처를 위한 계층 간 예측 참조로서 필요하지 않다고 판단되는 경우에는 "BEMCP 참조를 위해 사용되지 않음"(unused for BEMCP reference) 또는 "계층 간 참조를 위해 사용되지 않음"(unused for inter-layer reference) 또는 유사한 것으로서, 설정할 수 있다.
인코더는 계층 간 참조하기를 위한 특정한 참조 픽처 세트(Reference Picture Set: RPS) 신택스 구조 또는 계층 간 참조 전용의 다른 RPS 신택스 구조의 일부를 생성할 수 있다. 계층 간 RPS를 위한 신택스 구조는 RPS 간 예측을 지원하기 위해 덧붙여질 수 있다. 다른 RPS 신택스 구조에 대해, 계층 간 RPS 신택스 구조 중 각각은 인덱스와 연관될 수 있고 인덱스 값은 어느 계층 간 RPS가 사용 중인지 나타내기 위해 가령 코딩된 슬라이스에 포함될 수 있다. 계층 간 RPS는 "계층 간 참조를 위해 사용됨"으로 마킹된 기반 계층 픽처를 나타낼 수 있으나, EL 픽처라고 지칭되는 계층 간 RPS 내에 있지 않은 임의의 기반 계층 픽처는 "계층 간 참조를 위해 사용되지 않음"으로 마킹될 수 있다.
대안적으로 또는 추가적으로, BL 픽처가 계층 간 참조를 위해 사용되는지를 나타내기 위한 다른 수단(가령 BL 픽처의 코딩된 슬라이스의 슬라이스 확장 내 또는 각 EL 픽처의 코딩된 슬라이스 내 플래그)이 있을 수 있다. 나아가, BL 픽처를 "계층 간 참조를 위해 사용됨"으로 마킹하는 것의 지속(persistence)을 나타내는 하나 이상의 표시가 있을 수 있다(가령 슬라이스 확장과 같은 픽처 또는 슬라이스 레벨 구조 내의 및/또는 비디오 파라미터 세트와 같은 시퀀스 레벨 신택스 구조 내의 카운터 신택스 요소(counter syntax element)). 시퀀스 레벨 카운터 신택스 요소는 가령 (인코딩 및/또는 디코딩 프로세스에 의해) BL 픽처가 "계층 간 참조를 위해 사용됨"으로 마킹되는 디코딩 순서에서 (동일한 또는 더 낮은 시간적 서브계층에 있을 수 있는) BL 픽처의 최대 개수 및/또는 BEMCP를 사용하는 임의의 EL 움직임 벡터의 최대 POC 값 차이를 나타낼 수 있다. 픽처 레벨 카운터는 가령 (인코딩 및/또는 디코딩 프로세스에 의해) BL 픽처가 "계층 간 참조를 위해 사용됨"으로 마킹되는 디코딩 순서에서 (카운터 신택스 요소를 포함하는 BL 픽처와 동일한 또는 더 낮은 시간적 서브계층에 있을 수 있는) BL 픽처의 개수를 나타낼 수 있다.
대안적으로 또는 추가적으로, 어느 BL 픽처가 계층 간 참조를 위해 사용되거나 사용될 수 있는지를 나타내기 위한 다른 수단이 있을 수 있다. 예를 들어, 기반 계층 내의 어느 temporal_id 값 및/또는 픽처 유형이 계층 간 참조로서 사용될 수 있는지 및/또는 기반 계층 내의 어느 temporal_id 값 및/또는 픽처 유형이 계층 간 참조로서 사용되지 않는지 시퀀스 레벨 표시(sequence-level indication)가 가령 비디오 파라미터 세트 내에 있을 수 있다.
디코딩된 픽처 버퍼링(Decoded Picture Buffering: DPB) 프로세스는, (인터 예측을 위해) "참조를 위해 사용되거나", 출력을 위해 필요하거나, "계층 간 참조를 위해 사용되는" 픽처가 DPB 내에 유지되나 (인터 예측을 위해) "참조를 위해 사용되지 않고", 출력을 위해 필요하지 않으며(즉, 이미 출력되었거나 처음에 출력을 위해 의도되지 않았음), "계층 간 참조를 위해 사용되지 않는" 픽처는 DPB로부터 제거될 수 있는 방식으로 수정될 수 있다.
기반 계층만 디코딩하는 디코더는 픽처를 계층 간 참조로 마킹하는 것에 관련된 프로세스(가령, 계층 간 RPS의 디코딩)를 생략하여서 모든 픽처를 마치 그것이 "계층 간 참조를 위해 사용되지 않는" 것처럼 취급할 수 있다.
전술된 방법은 콘텐트의 하나보다 많은 표현을 포함하는 임의의 비디오 스트림에 적용될 수 있다. 예를 들어, 그것은 상이한 뷰로부터의 가능한 대로 처리되는 이미지를 기반 이미지로 활용하는 멀티뷰 비디오 코딩에 적용될 수 있다.
본 발명의 다른 양상은 디코더가 기반 계층 픽처 및 적어도 하나의 향상 계층 픽처를 수신하는 경우 그것의 동작이다. 도 8은 본 발명의 실시예를 활용하는 데에 적합한 비디오 디코더의 블록도를 도시한다.
그 디코더는 수신된 신호에 대한 엔트로피 디코딩을 전술된 인코더의 엔트로피 인코더(330)에 대한 역 동작으로서 수행하는 엔트로피 디코더(600)를 포함한다. 엔트로피 디코더(600)는 엔트로피 디코딩의 결과를 예측 에러 디코더(602) 및 픽셀 예측기(604)에 출력한다.
픽셀 예측기(604)는 엔트로피 디코더(600)의 출력을 수신한다. 픽셀 예측기(604) 내의 예측기 선택기(614)는 인트라 예측, 인터 예측 또는 보간(interpolation) 동작이 수행될 것인지 결정한다. 그 예측기 선택기는 나아가 이미지 블록(616)의 예측된 표현을 제1 조합기(613)에 출력할 수 있다. 이미지 블록(616)의 예측된 표현은 예비적 재구성된 이미지(preliminary reconstructed image)(618)를 생성하기 위해 재구성된 예측 에러 신호(612)와 함께 사용된다. 예비적 재구성된 이미지(618)는 예측기(614)에서 사용될 수 있거나 필터(620)로 전달될 수 있다. 필터(620)는 최종 재구성된 신호(622)를 출력하는 필터링을 적용한다. 최종 재구성된 신호(622)는 참조 프레임 메모리(624) 내에 저장될 수 있는데, 참조 프레임 메모리(624)는 또한 예측 동작을 위해 예측기(614)에 연결된다.
예측 에러 디코더(602)는 엔트로피 디코더(600)의 출력을 수신한다. 예측 에러 디코더(602)의 역양자화기(dequantizer)(692)는 엔트로피 디코더(600)의 출력을 역양자화할 수 있고 역변환 블록(inverse transform block)(693)은 역양자화기(692)에 의해 출력되는 역양자화된 신호에 역변환 동작을 수행할 수 있다. 엔트로피 디코더(600)의 출력은 또한 예측 에러 신호가 적용될 것이 아니고 이 경우 모두 0인 출력 신호(all zero output signal)를 예측 에러 디코더가 산출함을 나타낼 수 있다.
실시예의 디코딩 동작은 가령 도 6에 도시된 인코딩 동작과 유사하다. 그러므로, 위의 프로세스에서, 디코더는 향상 계층 픽처에서 예측될 샘플의 블록을 우선 식별할 수 있다. 그리고 디코더는 인코더로부터 획득되는 향상 계층 움직임 정보 및 적어도 하나의 향상 계층 참조 픽처를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산할 수 있다. 디코더는 기반 계층 상에서 그 단계들을 반복할 수 있다(즉, 재구성된 샘플의 블록이 향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처에서 식별되고, 기반 계층 예측 블록은 향상 계층을 위하여 나타내어진 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 계산된다). 그리고 디코더는 기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측 상에서 제2 향상 계층 예측을 계산한다. 향상 계층 픽처 내의 샘플의 식별된 블록은 제2 향상 계층 예측으로부터 예측하는 것에 의해 디코딩된다.
샘플의 블록의 디코딩에서 기인하는 잔차 신호가 있다면, 디코더는 잔차 신호를 재구성된 잔차 신호로 디코딩하고 재구성된 잔차 신호를 향상 계층 픽처 내의 디코딩된 블록에 부가한다.
위에서, 몇몇 실시예가 향상 계층 및 기반 계층을 참조하여 서술되었다. 기반 계층은 그것이 향상 계층을 위한 참조 계층인 이상 임의의 다른 계층인 편이 낫다는 점이 이해될 필요가 있다. 인코더는 두 개보다 많은 계층을 비트스트림으로 생성할 수 있고 디코더는 비트스트림으로부터 두 개보다 많은 계층을 디코딩할 수 있다는 점이 또한 이해될 필요가 있다. 실시예들은 향상 계층 및 그것의 참조 계층의 임의의 쌍으로써 실현될 수 있다. 마찬가지로, 많은 실시예들은 두 개보다 많은 계층을 고려하여 실현될 수 있다.
전술된 본 발명의 실시예들은 관련된 프로세스의 이해를 돕기 위해 별개의 인코더 및 디코더 장치의 측면에서 코덱을 기술한다. 그러나, 장치, 구조 및 동작은 단일 인코더-디코더 장치/구조/동작으로서 구현될 수 있다는 점이 인식될 것이다. 나아가 본 발명의 몇몇 실시예에서 코더 및 디코더는 몇몇 또는 모든 공통 요소를 공유할 수 있다.
위 예들이 전자 디바이스 내의 코덱 내에서 동작하는 본 발명의 실시예를 서술하나, 아래에 기술되는 것과 같은 본 발명은 임의의 비디오 코덱의 일부로 구현될 수 있다는 점이 인식될 것이다. 그러므로, 예를 들어, 본 발명의 실시예는 고정 또는 유선 통신 경로 상에서 비디오 코딩을 구현할 수 있는 비디오 코덱 내에 구현될 수 있다.
그러므로, 사용자 장비는 위에서 본 발명의 실시예에 서술된 것과 같은 비디오 코덱을 포함할 수 있다. 사용자 장비라는 용어는 임의의 적합한 유형의 무선 사용자 장비(가령 이동 전화, 휴대용 데이터 처리 디바이스 또는 휴대용 웹 브라우저)를 커버하도록 의도된다는 점이 인식될 것이다.
나아가 공중 육상 이동 네트워크(Public Land Mobile Network: PLMN)의 요소는 전술된 것과 같은 비디오 코덱을 또한 포함할 수 있다.
일반적으로, 본 발명의 다양한 실시예는 하드웨어 또는 특수 목적 회로, 소프트웨어, 로직 또는 이들의 임의의 조합으로 구현될 수 있다. 예를 들어, 몇몇 양상은 하드웨어로 구현될 수 있는 반면, 다른 양상은 제어기, 마이크로프로세서 또는 다른 컴퓨팅 디바이스에 의해 실행될 수 있는 소프트웨어 또는 펌웨어로 구현될 수 있으나, 본 발명이 이에 한정되는 것은 아니다. 본 발명의 다양한 양상이 블록도, 흐름도 또는 어떤 다른 그림 표현을 사용하여 예시되고 서술될 수 있으나, 본 명세서에서 서술된 이들 블록, 장치, 시스템, 기법 또는 방법은 비한정적인 예로서 하드웨어, 소프트웨어, 펌웨어, 특수 목적 회로 또는 로직, 범용 하드웨어 또는 제어기 또는 다른 컴퓨팅 디바이스 또는 이들의 어떤 조합으로 구현될 수 있다는 점이 잘 이해된다.
이 발명의 실시예는 모바일 디바이스(mobile device)의 데이터 프로세서에 의해(가령 프로세서 엔티티(processor entity)에서) 또는 하드웨어에 의해 또는 소프트웨어 및 하드웨어의 조합에 의해 실행가능한 컴퓨터 소프트웨어에 의해 구현될 수 있다. 나아가 이와 관련하여 도면에서와 같은 로직 흐름의 임의의 블록은 프로그램 단계 또는 상호연결된 로직 회로, 블록 및 함수 또는 프로그램 단계 및 로직 회로, 블록 및 함수의 조합을 나타낼 수 있다는 점에 유의하여야 한다. 소프트웨어는 메모리 칩 또는 프로세서 내에 구현된 메모리 블록과 같은 물리적 매체, 하드 디스크 또는 플로피 디스크와 같은 자기(magnetic) 매체 및 가령 DVD 및 그 데이터 이형인 CD와 같은 광학(optical) 매체 상에 저장될 수 있다.
메모리는 국부적 기술 환경(local technical environment)에 적합한 임의의 유형일 수 있고 가령 반도체 기반 메모리 디바이스, 자기 메모리 디바이스 및 시스템, 광학 메모리 디바이스 및 시스템, 고정식(fixed) 메모리 및 착탈가능(removable) 메모리와 같은 임의의 적합한 데이터 저장 기술을 사용하여 구현될 수 있다. 데이터 프로세서는 국부적 기술 환경에 적합한 임의의 유형일 수 있고, 비한정적인 예로서 하나 이상의 범용 컴퓨터, 특수 목적 컴퓨터, 마이크로프로세서, 디지털 신호 프로세서(Digital Signal Processor: DSP) 및 멀티코어 프로세서 아키텍처(multi-core processor architecture)에 기반한 프로세서를 포함할 수 있다.
본 발명의 실시예는 집적 회로 모듈과 같은 다양한 콤포넌트 내에서 행해질 수 있다. 집적 회로의 설계는 대체로 고도로 자동화된 프로세스이다. 로직 수준 설계를 에칭되어 반도체 기판 상에 형성될 준비가 된 반도체 회로 설계로 전환하기 위한 복잡하고 강력한 소프트웨어 도구가 이용가능하다.
캘리포니아 마운틴 뷰의 시놉시스 사(Synopsys Inc.) 및 캘리포니아 산 호세의 케이던스 디자인(Cadence Design)에 의해 제공되는 것과 같은 프로그램은 사전저장된 설계 모듈의 라이브러리뿐만 아니라 확립된 설계 규칙을 이용하여 도체를 자동적으로 라우팅하고 콤포넌트를 반도체 칩 상에 배치한다. 반도체 회로에 대한 설계가 완료되면, 그에 따른 설계는 표준화된 전자 포맷(가령, Opus, GDSII 등)으로 제조를 위해 반도체 제조 시설 또는 "팹"(fab)에 전송될 수 있다.
앞서 언급한 설명은 예시적이며 비한정적인 예로 이 발명의 예시적인 실시예의 충실하고 유용한 설명을 제공하였다. 그러나, 첨부된 도면 및 부기된 청구항과 함께 읽는 경우, 앞서 언급한 설명에 비추어 볼 때 다양한 수정 및 적응이 통상의 기술자에게 분명해질 수 있다. 다만, 이 발명의 교시의 그러한 또 유사한 수정 모두가 이 발명의 범주 내에 여전히 속할 것이다.
제1 실시예에 따른 방법은 향상 계층 픽처 내의 샘플의 블록을 인코딩하는 방법을 포함하고, 그 방법은
향상 계층 픽처(enhancement layer picture)에서 예측될 샘플의 블록을 식별하는 단계와,
적어도 하나의 향상 계층 참조 픽처(enhancement layer reference picture) 및 향상 계층 움직임 정보(enhancement layer motion information)를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측(motion compensated prediction)을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 단계와,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅(co-locating)하는 기반 계층 픽처(base layer picture) 내의 재구성된 샘플의 블록을 식별하는 단계와,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처(base layer reference picture)를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 단계와,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 단계와,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 단계를 포함한다.
실시예에 따르면, 그 방법은
원래의 픽처 내의 샘플의 블록의 값 및 제2 향상 계층 예측의 값 간의 잔차 신호(residual signal)를 식별하는 단계와,
잔차 신호를 재구성된 잔차 신호로 코딩하는 단계와,
재구성된 잔차 신호를 제2 향상 계층 예측에 부가하는 단계를 더 포함한다.
실시예에 따르면, 인터 예측 모드 및 대응하는 움직임 벡터 및 참조 프레임 인덱스의 표시가 HEVC와 유사하게 수행된다.
실시예에 따르면, 향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 기반 계층 픽처의 샘플을 업샘플링(upsampling)하는 것에 의해 기반 계층 내의 블록이 생성된다.
실시예에 따르면, 기반 계층 움직임 보상된 예측 및 기반 계층 재구성된 샘플로부터 기반 계층 움직임 보상된 예측의 연역(deduction)은 그 차이를 업샘플링하고 그것을 향상 계층 예측에 더하기 전에 수행된다.
실시예에 따르면, 향상 계층 예측 블록과 동일한 공간적 해상도로 업샘플링된 적어도 하나의 기반 계층 참조 픽처를 사용하여 기반 계층 내의 움직임 보상된 예측이 생성된다.
실시예에 따르면, 기반 계층 픽처 내의 재구성된 샘플의 블록 및 코로케이팅된 기반 계층 예측 블록의 샘플의 차이는 적어도 하나의 스케일링 인자(scaling factor)에 의해 스케일링된다.
실시예에 따르면, 위 스케일링 인자는 비트스트림 내에 시그널링된다(signaled).
실시예에 따르면, 다수의 사전정의된 스케일링 인자들이 사용되고 스케일링 인자들은 비트스트림에 표시된다.
실시예에 따르면, 향상 및 기반 계층 이미지의 좌표계가 상이하다면, 기반 및 향상 계층 샘플의 좌표의 관계를 정의하는 경우 기반 계층 및 향상 계층 간의 공간적 스케일가능성(scalability)의 차이가 고려된다.
실시예에 따르면, 기반 계층 움직임 보상된 예측을 수행하기 전에 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이와 매칭되도록 향상 계층 움직임 정보가 스케일링된다.
실시예에 따르면, 차이 값을 획득하기 위해, 재구성된 기반 계층 샘플 대신, 재구성 전 중간 샘플을 사용한다.
실시예에 따르면, 비블록화 필터링(deblocking filtering) 또는 샘플 적응적 오프셋(Sample Adaptive Offset: SAO) 및 적응적 루프 필터(Adaptive Loop Filter: ALF)와 같은 인루프 필터링(in-loop filtering) 동작 전에 기반 계층 값을 사용한다.
실시예에 따르면, 그 방법은 항상 디폴트 설정(default setting)으로서 적용된다.
실시예에 따르면, 그 방법은 플래그(flag)를 디코더에 시그널링하는 것에 의해 선택적으로 가능하게 된다.
실시예에 따르면, 그 방법은 예측 단위(Prediction Unit: PU) 레벨에서 1 빈 식별자(one-bin identifier)를 시그널링하는 것에 의해 가능하게 된다.
실시예에 따르면, 그 방법은 사전결정된 조건이 만족되는 경우, 가령 이웃하는 블록의 모드에 기반하여, 위치가 향상 계층 블록에 대응하는 기반 계층 블록(들) 상의 예측 에러 코딩의 존재에 기반하여, 향상 계층 또는 기반 계층 참조 프레임의 샘플 값 또는 재구성된 기반 계층 픽처의 샘플 값, 기반 계층 디코딩된 픽처 버퍼 내의 기반 계층 참조 픽처의 가용성 또는 이들의 조합에 기반하여 가능하게 된다.
제2 실시예에 따른 장치는
기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림(scalable bitstream)을 인코딩하기 위하여 구성되는 비디오 인코더를 포함하고, 그 비디오 인코더는 또한
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 것을 위하여 구성된다.
제3 실시예에 따르면, 프로세서에 의해 실행되는 경우 장치로 하여금
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 것을 수행하게 하는 코드가 그 장치에 의한 사용을 위해 저장되는 컴퓨터 판독가능 저장 매체가 제공된다.
제4 실시예에 따르면, 적어도 하나의 프로세서 및 적어도 하나의 메모리가 제공되고, 적어도 하나의 프로세서에 의해 실행되는 경우 장치로 하여금
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 것을 수행하게 하는 코드가 적어도 하나의 메모리에 저장된다.
제5 실시예에 따른 방법은 기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 디코딩하는 방법을 포함하는데, 그 방법은
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 단계와,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 단계와,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 단계와,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 단계와,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 단계와,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 디코딩하는 단계를 포함한다.
실시예에 따르면, 그 방법은
원래의 픽처 내의 샘플의 블록의 값 및 제2 향상 계층 예측의 값 간의 잔차 신호를 식별하는 단계와,
잔차 신호를 재구성된 잔차 신호로 디코딩하는 단계와,
재구성된 잔차 신호를 제2 향상 계층 예측에 부가하는 단계를 더 포함한다.
실시예에 따르면, 인터 예측 모드 및 대응하는 움직임 벡터 및 참조 프레임 인덱스의 표시가 HEVC와 유사하게 수행된다.
실시예에 따르면, 향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 기반 계층 픽처의 샘플을 업샘플링하는 것에 의해 기반 계층 내의 블록이 생성된다.
실시예에 따르면, 기반 계층 움직임 보상된 예측 및 기반 계층 재구성된 샘플로부터 기반 계층 움직임 보상된 예측의 연역은 그 차이를 업샘플링하고 그것을 향상 계층 예측에 더하기 전에 수행된다.
실시예에 따르면, 향상 계층 예측 블록과 동일한 공간적 해상도로 업샘플링된 적어도 하나의 기반 계층 참조 픽처를 사용하여 기반 계층 내의 움직임 보상된 예측이 생성된다.
실시예에 따르면, 기반 계층 픽처 내의 재구성된 샘플의 블록 및 코로케이팅된 기반 계층 예측 블록의 샘플의 차이는 적어도 하나의 스케일링 인자에 의해 스케일링된다.
실시예에 따르면, 위 스케일링 인자는 비트스트림 내에 시그널링된다.
실시예에 따르면, 다수의 사전정의된 스케일링 인자들이 사용되고 스케일링 인자들은 비트스트림에 표시된다.
실시예에 따르면, 향상 및 기반 계층 이미지의 좌표계가 상이하다면, 기반 및 향상 계층 샘플의 좌표의 관계를 정의하는 경우 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이가 고려된다.
실시예에 따르면, 기반 계층 움직임 보상된 예측을 수행하기 전에 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이와 매칭되도록 향상 계층 움직임 정보가 스케일링된다.
실시예에 따르면, 차이 값을 획득하기 위해, 재구성된 기반 계층 샘플 대신, 재구성 전 중간 샘플을 사용한다.
실시예에 따르면, 비블록화 필터링 또는 샘플 적응적 오프셋(Sample Adaptive Offset: SAO) 및 적응적 루프 필터(Adaptive Loop Filter: ALF)와 같은 인루프 필터링(in-loop filtering) 동작 전에 기반 계층 값을 사용한다.
실시예에 따르면, 그 방법은 항상 디폴트 설정으로서 적용된다.
실시예에 따르면, 그 방법은 플래그의 수신시 선택적으로 가능하게 된다.
실시예에 따르면, 그 방법은 예측 단위(Prediction Unit: PU) 레벨에서의 1 빈 식별자의 수신시 가능하게 된다.
실시예에 따르면, 그 방법은 사전결정된 조건이 만족되는 경우, 가령 이웃하는 블록의 모드에 기반하여, 위치가 향상 계층 블록에 대응하는 기반 계층 블록(들) 상의 예측 에러 코딩의 존재에 기반하여, 향상 계층 또는 기반 계층 참조 프레임의 샘플 값 또는 재구성된 기반 계층 픽처의 샘플 값, 기반 계층 디코딩된 픽처 버퍼 내의 기반 계층 참조 픽처의 가용성 또는 이들의 조합에 기반하여 가능하게 된다.
제6 실시예에 따른 장치는
기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 디코딩하기 위하여 구성되는 비디오 디코더를 포함하고, 비디오 디코더는
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 디코딩하는 것을 위하여 구성된다.
제7 실시예에 따르면, 기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 인코딩하기 위하여 구성되는 비디오 인코더가 제공되고, 비디오 인코더는 또한
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 인코딩하는 것을 위하여 구성된다.
제8 실시예에 따르면, 기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 디코딩하기 위하여 구성되는 비디오 디코더가 제공되고, 비디오 디코더는 또한
향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
향상 계층 픽처에서 예측될 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여 재구성된 샘플의 식별된 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
기반 계층 예측 블록, 식별된 기반 계층 재구성된 샘플 및 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
제2 향상 계층 예측으로부터 예측하는 것에 의해 향상 계층 픽처 내의 샘플의 식별된 블록을 디코딩하는 것을 위하여 구성된다.

Claims (30)

  1. 향상 계층 픽처(enhancement layer picture)에서 예측될 샘플의 블록(block of samples)을 식별하는 단계와,
    적어도 하나의 향상 계층 참조 픽처(enhancement layer reference picture) 및 향상 계층 움직임 정보(enhancement layer motion information)를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측(motion compensated prediction)을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 단계와,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅(co-locating)하는 기반 계층 픽처(base layer picture) 내의 재구성된 샘플의 블록을 식별하는 단계와,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처(base layer reference picture)를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 단계와,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 단계와,
    상기 제2 향상 계층 예측으로부터 예측하는(predicting) 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 디코딩하는 단계를 포함하는
    방법.
  2. 제1항에 있어서,
    원래의 픽처에서의 상기 샘플의 블록의 값 및 상기 제2 향상 계층 예측의 값 간의 잔차 신호(residual signal)를 식별하는 단계와,
    상기 잔차 신호를 재구성된 잔차 신호로 디코딩하는 단계와,
    상기 재구성된 잔차 신호를 상기 제2 향상 계층 예측에 부가하는 단계를 더 포함하는
    방법.
  3. 제1항 또는 제2항에 있어서,
    향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 상기 기반 계층 픽처의 샘플을 업샘플링(upsampling)하는 것에 의해 기반 계층 블록을 생성하는 단계를 더 포함하는
    방법.
  4. 제3항에 있어서,
    상기 향상 계층 예측 블록과 동일한 공간적 해상도로 업샘플링된 상기 적어도 하나의 기반 계층 참조 픽처를 사용하여 상기 기반 계층 내의 상기 움직임 보상된 예측을 생성하는 단계를 더 포함하는
    방법.
  5. 제4항에 있어서,
    기반 계층 픽처 내의 재구성된 샘플의 블록 및 코로케이팅된 기반 계층 예측 블록의 샘플의 차이를 적어도 하나의 스케일링 인자(scaling factor)에 의해 스케일링하는 단계를 더 포함하는
    방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 향상 및 기반 계층 픽처의 좌표계가 상이한 것에 응답하여, 상기 기반 계층 및 향상 계층 간의 공간적 스케일가능성(scalability)의 차이가 고려되도록 상기 기반 및 향상 계층 샘플의 좌표의 관계를 정의하는 단계를 더 포함하는
    방법.
  7. 제6항에 있어서,
    상기 기반 계층 움직임 보상된 예측을 수행하기 전에 상기 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이와 매칭되도록 상기 향상 계층 움직임 정보를 스케일링하는 단계를 더 포함하는
    방법.
  8. 장치로서,
    적어도 하나의 프로세서 및 적어도 하나의 메모리를 포함하되,
    상기 적어도 하나의 프로세서에 의해 실행되는 경우 상기 장치로 하여금
    향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
    적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
    상기 제2 향상 계층 예측으로부터 예측하는 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 디코딩하는 것을 수행하게 하는 코드가 상기 적어도 하나의 메모리에 저장되는
    장치.
  9. 제8항에 있어서,
    상기 장치는 또한
    원래의 픽처에서의 상기 샘플의 블록의 값 및 상기 제2 향상 계층 예측의 값 간의 잔차 신호를 식별하는 것과,
    상기 잔차 신호를 재구성된 잔차 신호로 디코딩하는 것과,
    상기 재구성된 잔차 신호를 상기 제2 향상 계층 예측에 부가하는 것을 위해 구성되는
    장치.
  10. 제8항 또는 제9항에 있어서,
    상기 장치는 또한
    향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 상기 기반 계층 픽처의 샘플을 업샘플링하는 것에 의해 기반 계층 블록을 생성하는 것을 위해 구성되는
    장치.
  11. 제10항에 있어서,
    상기 장치는 기반 계층 픽처 내의 재구성된 샘플의 블록 및 코로케이팅된 기반 계층 예측 블록의 샘플의 차이를 적어도 하나의 스케일링 인자에 의해 스케일링하는 것을 위해 구성되는
    장치.
  12. 제8항 내지 제11항 중 어느 한 항에 있어서,
    상기 장치는
    상기 향상 및 기반 계층 픽처의 좌표계가 상이한 것에 응답하여, 상기 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이가 고려되도록 상기 기반 및 향상 계층 샘플의 좌표의 관계를 정의하는 것을 위해 구성되는
    장치.
  13. 제12항에 있어서,
    상기 장치는
    상기 기반 계층 움직임 보상된 예측을 수행하기 전에 상기 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이와 매칭되도록 상기 향상 계층 움직임 정보를 스케일링하는 것을 위해 구성되는
    장치.
  14. 프로세서에 의해 실행되는 경우 장치로 하여금
    향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
    적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
    상기 제2 향상 계층 예측으로부터 예측하는 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 디코딩하는 것을 수행하게 하는 코드가 상기 장치에 의한 사용을 위해 저장되는
    컴퓨터 판독가능 저장 매체.
  15. 향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 단계와,
    적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 단계와,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 단계와,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 단계와,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 단계와,
    상기 제2 향상 계층 예측으로부터 예측하는 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 인코딩하는 단계를 포함하는
    방법.
  16. 제15항에 있어서,
    원래의 픽처에서의 상기 샘플의 블록의 값 및 상기 제2 향상 계층 예측의 값 간의 잔차 신호를 식별하는 단계와,
    상기 잔차 신호를 재구성된 잔차 신호로 코딩하는 단계와,
    상기 재구성된 잔차 신호를 상기 제2 향상 계층 예측에 부가하는 단계를 더 포함하는
    방법.
  17. 제15항 또는 제16항에 있어서,
    향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 상기 기반 계층 픽처의 샘플을 업샘플링하는 것에 의해 기반 계층 블록을 생성하는 단계를 더 포함하는
    방법.
  18. 제17항에 있어서,
    상기 향상 계층 예측 블록과 동일한 공간적 해상도로 업샘플링된 상기 적어도 하나의 기반 계층 참조 픽처를 사용하여 상기 기반 계층 내의 상기 움직임 보상된 예측을 생성하는 단계를 더 포함하는
    방법.
  19. 제18항에 있어서,
    기반 계층 픽처 내의 재구성된 샘플의 블록 및 코로케이팅된 기반 계층 예측 블록의 샘플의 차이를 적어도 하나의 스케일링 인자에 의해 스케일링하는 단계를 더 포함하는
    방법.
  20. 제15항 내지 제19항 중 어느 한 항에 있어서,
    상기 향상 및 기반 계층 픽처의 좌표계가 상이한 것에 응답하여, 상기 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이가 고려되도록 상기 기반 및 향상 계층 샘플의 좌표의 관계를 정의하는 단계를 더 포함하는
    방법.
  21. 제20항에 있어서,
    상기 기반 계층 움직임 보상된 예측을 수행하기 전에 상기 기반 계층 및 향상 계층 간의 공간적 스케일가능성의 차이와 매칭되도록 상기 향상 계층 움직임 정보를 스케일링하는 단계를 더 포함하는
    방법.

  22. 장치로서,
    적어도 하나의 프로세서 및 적어도 하나의 메모리를 포함하되,
    상기 적어도 하나의 프로세서에 의해 실행되는 경우 상기 장치로 하여금
    향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
    적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
    상기 제2 향상 계층 예측으로부터 예측하는 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 인코딩하는 것을 수행하게 하는 코드가 상기 적어도 하나의 메모리에 저장되는
    장치.
  23. 제22항에 있어서,
    상기 장치는 또한
    원래의 픽처에서의 상기 샘플의 블록의 값 및 상기 제2 향상 계층 예측의 값 간의 잔차 신호를 식별하는 것과,
    상기 잔차 신호를 재구성된 잔차 신호로 코딩하는 것과,
    상기 재구성된 잔차 신호를 상기 제2 향상 계층 예측에 부가하는 것을 위해 구성되는
    장치.
  24. 제22항 또는 제23항에 있어서,
    상기 장치는 또한
    향상 계층 예측 블록과 동일한 공간적 해상도를 갖도록 상기 기반 계층 픽처의 샘플을 업샘플링하는 것에 의해 기반 계층 블록을 생성하는 것을 위해 구성되는
    장치.
  25. 제24항에 있어서,
    상기 장치는 상기 향상 계층 예측 블록과 동일한 공간적 해상도로 업샘플링된 상기 적어도 하나의 기반 계층 참조 픽처를 사용하여 상기 기반 계층 내의 상기 움직임 보상된 예측을 생성하는 것을 위해 구성되는
    장치.
  26. 제25항에 있어서,
    상기 장치는 기반 계층 픽처 내의 재구성된 샘플의 블록 및 코로케이팅된 기반 계층 예측 블록의 샘플의 차이를 적어도 하나의 스케일링 인자에 의해 스케일링하는 것을 위해 구성되는
    장치.
  27. 프로세서에 의해 실행되는 경우 장치로 하여금
    향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
    적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
    상기 제2 향상 계층 예측으로부터 예측하는 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 인코딩하는 것을 수행하게 하는 코드가 상기 장치에 의한 사용을 위해 저장되는
    컴퓨터 판독가능 저장 매체.
  28. 적어도 하나의 프로세서 및 적어도 하나의 메모리로서,
    상기 적어도 하나의 프로세서에 의해 실행되는 경우 장치로 하여금
    향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
    적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
    상기 제2 향상 계층 예측으로부터 예측하는 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 인코딩하는 것을 수행하게 하는 코드가 상기 적어도 하나의 메모리에 저장되는
    적어도 하나의 프로세서 및 적어도 하나의 메모리.
  29. 기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림(scalable bitstream)을 인코딩하기 위하여 구성되는 비디오 인코더로서,
    상기 비디오 인코더는 또한
    향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
    적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
    상기 제2 향상 계층 예측으로부터 예측하는 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 인코딩하는 것을 위하여 구성되는
    비디오 인코더.
  30. 기반 계층 및 적어도 하나의 향상 계층을 포함하는 스케일가능 비트스트림을 디코딩하기 위하여 구성되는 비디오 디코더로서,
    상기 비디오 디코더는 또한
    향상 계층 픽처에서 예측될 샘플의 블록을 식별하는 것과,
    적어도 하나의 향상 계층 참조 픽처 및 향상 계층 움직임 정보를 사용하여, 식별된 상기 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 제1 향상 계층 예측 블록을 계산하는 것과,
    상기 향상 계층 픽처에서 예측될 상기 샘플의 블록과 코로케이팅하는 기반 계층 픽처 내의 재구성된 샘플의 블록을 식별하는 것과,
    상기 향상 계층 움직임 정보 및 적어도 하나의 기반 계층 참조 픽처를 사용하여, 식별된 상기 재구성된 샘플의 블록에 대하여 움직임 보상된 예측을 수행하는 것에 의해 기반 계층 예측 블록을 계산하는 것과,
    상기 기반 계층 예측 블록, 상기 식별된 기반 계층 재구성된 샘플 및 상기 제1 향상 예측에 기반하여 제2 향상 계층 예측을 계산하는 것과,
    상기 제2 향상 계층 예측으로부터 예측하는 것에 의해 상기 향상 계층 픽처 내의 식별된 상기 샘플의 블록을 디코딩하는 것을 위하여 구성되는
    비디오 디코더.
KR1020157010989A 2012-09-28 2013-09-27 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램 KR20150063135A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261707031P 2012-09-28 2012-09-28
US61/707,031 2012-09-28
PCT/FI2013/050941 WO2014049210A1 (en) 2012-09-28 2013-09-27 An apparatus, a method and a computer program for video coding and decoding

Publications (1)

Publication Number Publication Date
KR20150063135A true KR20150063135A (ko) 2015-06-08

Family

ID=50385176

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157010989A KR20150063135A (ko) 2012-09-28 2013-09-27 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램

Country Status (5)

Country Link
US (1) US20140092977A1 (ko)
EP (1) EP2901690A4 (ko)
KR (1) KR20150063135A (ko)
CN (1) CN104813662A (ko)
WO (1) WO2014049210A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018097351A1 (ko) * 2016-11-22 2018-05-31 광운대학교 산학협력단 전방향 카메라에서 효과적인 차분 움직임 백터 전송방법을 이용한 비디오 코딩 방법 및 방법 및 장치
KR20210115687A (ko) 2020-03-16 2021-09-27 고려대학교 산학협력단 화질 개선 영상 기반의 원본 영상 저장장치 및 그를 위한 어플리케이션

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI651964B (zh) * 2012-10-04 2019-02-21 Vid衡器股份有限公司 用於標準可縮放視訊編碼的參考圖像集映射
KR20140087971A (ko) * 2012-12-26 2014-07-09 한국전자통신연구원 계층적 비디오 부호화에서 다중참조계층을 적용한 화면간 부/복호화 방법 및 그 장치
US9532057B2 (en) * 2012-12-28 2016-12-27 Qualcomm Incorporated Inter-layer prediction using sample-adaptive adjustments for bit depth scalable video coding
US20140286412A1 (en) * 2013-03-25 2014-09-25 Qualcomm Incorporated Intra dc prediction for lossless coding in video coding
KR20140121315A (ko) 2013-04-04 2014-10-15 한국전자통신연구원 참조 픽처 리스트를 이용한 다 계층 기반의 영상 부호화/복호화 방법 및 그 장치
EP3989585A1 (en) * 2013-10-11 2022-04-27 VID SCALE, Inc. High level syntax for hevc extensions
US20150116162A1 (en) 2013-10-28 2015-04-30 Skycross, Inc. Antenna structures and methods thereof for determining a frequency offset based on a differential magnitude
EP3026913A1 (en) * 2014-11-27 2016-06-01 Thomson Licensing Scalable encoding and decoding methods and corresponding devices with combined intraprediction and interlayer prediction
ES2710234B1 (es) * 2015-09-11 2020-03-09 Kt Corp Procedimiento y dispositivo para procesar señales de vídeo
US11336909B2 (en) * 2016-12-27 2022-05-17 Sony Corporation Image processing apparatus and method
EP3891985A4 (en) 2018-12-17 2022-03-30 Huawei Technologies Co., Ltd. HARMONIZING RECURRENT SWEEP AND GROUPS OF RECTANGULAR TILES IN VIDEO ENCODING
BR112022002147A2 (pt) * 2019-08-06 2022-04-19 Op Solutions Llc Gerenciamento de resolução adaptativa com base em bloco
WO2022246999A1 (en) * 2021-05-26 2022-12-01 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Multiview video encoding and decoding

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070014348A1 (en) * 2005-04-12 2007-01-18 Nokia Corporation Method and system for motion compensated fine granularity scalable video coding with drift control
CN101185340A (zh) * 2005-04-12 2008-05-21 诺基亚公司 具有漂移控制的运动补偿精细粒度可伸缩视频编码方法和系统
KR20070038396A (ko) * 2005-10-05 2007-04-10 엘지전자 주식회사 영상 신호의 인코딩 및 디코딩 방법
KR100891663B1 (ko) * 2005-10-05 2009-04-02 엘지전자 주식회사 비디오 신호 디코딩 및 인코딩 방법
US8315308B2 (en) * 2006-01-11 2012-11-20 Qualcomm Incorporated Video coding with fine granularity spatial scalability
US8422555B2 (en) * 2006-07-11 2013-04-16 Nokia Corporation Scalable video coding
CA2650151C (en) * 2008-01-17 2013-04-02 Lg Electronics Inc. An iptv receiving system and data processing method
US8711948B2 (en) * 2008-03-21 2014-04-29 Microsoft Corporation Motion-compensated prediction of inter-layer residuals

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018097351A1 (ko) * 2016-11-22 2018-05-31 광운대학교 산학협력단 전방향 카메라에서 효과적인 차분 움직임 백터 전송방법을 이용한 비디오 코딩 방법 및 방법 및 장치
US11218725B2 (en) 2016-11-22 2022-01-04 Goldenwavepartners Co., Ltd. Method for encoding video using effective differential motion vector transmission method in omnidirectional camera, and method and device
US11711540B2 (en) 2016-11-22 2023-07-25 Goldenwavepartners Co., Ltd. Method for encoding video using effective differential motion vector transmission method in omnidirectional camera, and method and device
KR20210115687A (ko) 2020-03-16 2021-09-27 고려대학교 산학협력단 화질 개선 영상 기반의 원본 영상 저장장치 및 그를 위한 어플리케이션

Also Published As

Publication number Publication date
US20140092977A1 (en) 2014-04-03
EP2901690A1 (en) 2015-08-05
CN104813662A (zh) 2015-07-29
WO2014049210A1 (en) 2014-04-03
EP2901690A4 (en) 2016-05-04

Similar Documents

Publication Publication Date Title
US10771805B2 (en) Apparatus, a method and a computer program for video coding and decoding
US10659802B2 (en) Video encoding and decoding
KR101881677B1 (ko) 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
US10547867B2 (en) Method, an apparatus and a computer program product for video coding and decoding
US20140254681A1 (en) Apparatus, a method and a computer program for video coding and decoding
US20140003504A1 (en) Apparatus, a Method and a Computer Program for Video Coding and Decoding
US20140092977A1 (en) Apparatus, a Method and a Computer Program for Video Coding and Decoding
EP2941877B1 (en) An apparatus, a method and a computer program for coding and decoding prediction type information
KR102474636B1 (ko) 크로스-채널 잔차 인코딩 및 디코딩을 위한 양자화 파라미터 도출
WO2015104456A1 (en) An apparatus, a method and a computer program for video coding and decoding
KR20150143779A (ko) 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
US11223849B2 (en) Transform sign compression in video encoding and decoding
US20140003505A1 (en) Method and apparatus for video coding
WO2018172609A2 (en) Motion compensation in video encoding and decoding
WO2019211514A1 (en) Video encoding and decoding
GB2519750A (en) An apparatus, a method and a computer program for video coding and decoding

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal