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

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

Info

Publication number
KR101881677B1
KR101881677B1 KR1020167003391A KR20167003391A KR101881677B1 KR 101881677 B1 KR101881677 B1 KR 101881677B1 KR 1020167003391 A KR1020167003391 A KR 1020167003391A KR 20167003391 A KR20167003391 A KR 20167003391A KR 101881677 B1 KR101881677 B1 KR 101881677B1
Authority
KR
South Korea
Prior art keywords
picture
prediction
layer picture
tiles
enhancement layer
Prior art date
Application number
KR1020167003391A
Other languages
English (en)
Other versions
KR20160031513A (ko
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 KR20160031513A publication Critical patent/KR20160031513A/ko
Application granted granted Critical
Publication of KR101881677B1 publication Critical patent/KR101881677B1/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • 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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • 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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/34Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
    • 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/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/55Motion estimation with spatial constraints, e.g. at image or region borders
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하기 위한 방법이 개시되며, 이 방법은 강화 계층 픽처 내 한 세트의 타일에 관한 정보를 취득하는 단계와, 기본 계층 픽처 내 한 세트의 타일에 관한 정보를 취득하는 단계와, 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득하는 단계 ― 코딩 제한은 기본 계층 픽처에 대해 적어도 인터-계층 예측 제한을 포함함 ― 와, 코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하는 단계를 포함한다.

Description

비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램{AN APPARATUS, A METHOD AND A COMPUTER PROGRAM FOR VIDEO CODING AND DECODING}
본 발명은 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램에 관한 것이다.
스케일러블 비디오 코딩(scalable video coding)은 하나의 비트스트림이 콘텐츠의 복수개의 표현을 상이한 비트 레이트, 해상도 또는 프레임 레이트로 포함할 수 있는 코딩 구조를 말한다. 전형적으로 스케일러블 비트스트림은 사용 가능한 최저 품질의 비디오를 제공하는 "기본 계층(base layer)" 및 하위 계층과 함께 수신되어 디코딩될 때 비디오 품질을 강화하는 하나 이상의 강화 계층(enhancement layer)으로 이루어질 수 있다. 강화 계층의 코딩 효율 개선하기 위하여, 그 계층의 코딩된 표현은 통상 하위 계층에 좌우될 수 있다.
품질 스케일러빌리티(신호 대 잡음 비(Signal-to-Noise) 또는 SNR로도 알려짐) 및/또는 공간 스케일러빌리티를 위한 스케일러블 비디오 코덱은 다음과 같이 구현될 수 있다. 즉, 기본 계층에 대하여 설명하면, 통상의 논-스케일러블(non-scalable) 비디오 인코더 및 디코더가 사용된다. 기본 계층의 재구성된/디코딩된 픽처는 강화 계층을 위해 참조 픽처 버퍼에 포함된다. 인터 예측에 참조 픽처 리스트(들)를 사용하는 코덱에서, 기본 계층의 디코딩된 픽처는 강화 계층의 디코딩된 참조 픽처와 유사하게 강화 계층 픽처의 코딩/디코딩을 위해 참조 픽처 리스트(들)에 삽입될 수 있다. 따라서, 인코더는 기본 계층 참조 픽처를 인터 예측 참조로서 선택할 수 있고 통상적으로 이것의 사용을 코딩된 비트스트림에서 참조 픽처 인덱스로 표시할 수 있다. 디코더는 기본 계층 픽처가 강화 계층을 위한 인터 예측 참조로서 사용된 것을 비트스트림으로부터 예를 들면, 참조 픽처 인덱스로부터 디코딩한다.
품질 스케일러빌리티 이외에, 스케일러빌리티는 기본 계층 픽처가 강화 계층 픽처보다 높은 해상도로 코딩되는 공간 스케일러빌리티, 기본 계층 픽처가 강화 계층 픽처(예를 들면, 10 또는 12 비트)보다 낮은 비트 깊이(예를 들면, 8 비트)로 코딩되는 비트 깊이 스케일러빌리티(bit-depth scalability), 및 기본 계층 픽처가 강화 계층 픽처(예를 들면, 4:2:0 포맷)보다 높은 (예를 들면, 4:4:4 크로마 포맷으로 코딩된) 크로마 충실도를 제공하는 크로마 포맷 스케일러빌리티(chroma format scalability)를 통해 성취될 수 있다.
어떤 경우에서는 강화 계층 픽처 전체 대신 픽처 내 어떤 영역만을 강화하는 것이 바람직할 것이다. 그러나, 현재의 스케일러블 비디오 코딩 해결 방법에서 구현되면, 그러한 스케일러빌리티는 너무 많은 복잡도 오버헤드를 가질 수 있거나 또는 코딩 효율 때문에 어려움을 겪을 것이다. 예를 들어, 비디오 픽처 내 어떤 영역만을 더 높은 비트 깊이로 코딩하는 것을 목표로 하는 비트 깊이 스케일러빌리티를 고려해 보면, 현재의 스케일러블 코딩 해결 방법은 그럼에도 불구하고 전체 픽처가 높은 비트 깊이로 코딩되어야 하며, 그래서 복잡도가 극적으로 증가한다. 크로마 포맷 스케일러빌리티의 경우를 보면, 이미지의 특정 영역만이 강화될지라도 전체 픽처의 참조 메모리는 4:4:4 포맷으로 되어 있어야 하며, 그래서 메모리 요건을 증가시킨다.
SEI 메시지를 사용하여 픽처 내 타일 세트에 대해 인코딩이 제한됨을 표시하는 것이 제안되었는데, 이 제안에 따르면 타일 세트 이외의 샘플은 활용되지 않도록 하고 타일 세트는 독립적으로 디코딩 가능한 구역을 표시하도록 타일의 움직임 보상이 제한된다. 픽처 내 어떤 영역만을 강화하기 때문에 코딩 효율을 개선하여 주지만, 그렇게 움직임 제한된 타일 세트의 SEI 메시지는 인트라-계층 예측 디펜던시(intra-layer prediction dependency)만을 정의하도록 제한된다.
본 발명은 인터-계층 예측 제한이 고려되도록 증가된 품질 및/또는 공간 해상도 및 높은 코딩 효율을 가진 강화 계층 픽처 내 어떤 영역의 인코딩을 확장하기 위해, 강화 계층 픽처 내 하나 이상의 타일을 인코딩하고 디코딩하기 위한 개선된 방법이 도입된다는 고려사항에서 비롯된다.
제 1 실시예에 따른 방법은 기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하기 위한 방법을 포함하며, 이 방법은,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하는 단계와,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하는 단계와,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득하는 단계 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 와,
코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하는 단계를 포함한다.
실시예에 따르면, 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 오직 기본 계층 픽처 내 타일 세트만으로부터의 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하되 인터-계층 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트의 재구성이 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일하다고 표시한다.
실시예에 따르면, 코딩 제한은 상기 강화 계층 픽처 내 타일 세트가 움직임 및 인터-계층 예측 제한된 타일 세트라고 정의한다.
실시예에 따르면, 코딩 제한은 인터-계층 예측에 사용된 기본 계층 픽처 내 타일 세트가 움직임 제한되는 것임을 표시한다.
실시예에 따르면, 코딩 제한은 상기 강화 계층 픽처 내 타일 세트가 단일 루프 디코딩 타일 세트인 것으로 정의한다.
실시예에 따르면, 단일 루프 디코딩에서, 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하되 만일 기본 계층 픽처가 랜덤 액세스 픽처이면 인터-계층 예측을 이용하여 예측되는 것으로 정의한다.
실시예에 따르면, 방법은 또한 상기 강화 계층 픽처 내 타일 세트의 코딩 제한의 적어도 일부를 보충 강화 정보(Supplemental Enhancement Information: SEI) 메시지로부터 취득하는 단계를 포함한다.
실시예에 따르면, 방법은 또한 상기 타일 세트에 대한 인트라-계층 또는 시간 예측 제한을 제 1 SEI 메시지로부터 취득하는 단계와, 상기 타일 세트에 대한 인터-계층 예측 제한을 제 2 SEI 메시지로부터 취득하는 단계를 포함한다.
실시예에 따르면, 강화 계층 픽처 내 타일 세트는 기본 계층 픽처 내 대응하는 타일 세트에 대한 강화 정보를 포함하며, 강화 정보는,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 크로마에 대해 강화 계층 픽처 내 타일 세트의 크로마의 충실도를 증가시키는 것,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 비트 깊이에 대해 강화 계층 픽처 내 타일 세트의 비트 깊이를 증가시키는 것,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 품질에 대해 강화 계층 픽처 내 타일 세트의 품질을 증가시키는 것, 또는
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 공간 해상도에 대해 강화 계층 픽처 내 타일 세트의 공간 해상도를 증가시키는 것 중 적어도 하나를 포함한다.
제 2 실시예에 따른 장치는,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하도록 구성된 비디오 디코더를 포함하며, 비디오 디코더는,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 하고,
코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하도록 구성된다.
제 3 실시예에 따르면, 장치에 의해 사용하기 위한 코드가 저장되어 있는 컴퓨터 판독 가능한 저장 매체가 제공되며, 코드는 프로세서에 의해 실행될 때, 장치로 하여금,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하는 것과,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하는 것과,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득하는 것 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 과,
코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하는 것을 수행하게 한다.
제 4 실시예에 따르면, 적어도 하나의 프로세서 및 적어도 하나의 메모리가 제공되며, 상기 적어도 하나의 메모리에는 코드가 저장되고, 코드는 상기 적어도 하나의 프로세서에 의해 실행될 때, 장치로 하여금,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하는 것과,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하는 것과,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득하는 것 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 과,
코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하는 것을 수행하게 한다.
제 5 실시예에 따른 방법은 강화 계층 픽처 내 하나 이상의 타일을 인코딩하기 위한 방법을 포함하며, 이 방법은,
강화 계층 픽처 내 타일 세트를 정의하는 단계와,
기본 계층 픽처 내 타일 세트를 정의하는 단계와,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의하는 단계 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 와,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 인코딩하는 단계를 포함한다.
제 6 실시예에 따른 장치는,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 인코딩하도록 구성된 비디오 인코더를 포함하며, 상기 비디오 인코더는 또한,
강화 계층 픽처 내 타일 세트를 정의하고,
기본 계층 픽처 내 타일 세트를 정의하고,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 하고,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 인코딩하도록 구성된다.
제 7 실시예에 따르면, 장치에 의해 사용하기 위한 코드가 저장된 컴퓨터 판독가능한 저장 매체가 제공되며, 이 코드는 프로세서에 의해 실행될 때, 장치로 하여금,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 인코딩하는 것과,
강화 계층 픽처 내 타일 세트를 정의하는 것과,
기본 계층 픽처 내 타일 세트를 정의하는 것과,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의하는 것 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 과,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 인코딩하는 것
을 수행하게 한다.
제 8 실시예에 따르면, 적어도 하나의 프로세서 및 적어도 하나의 메모리가 제공되며, 상기 적어도 하나의 메모리에는 코드가 저장되며, 이 코드는 상기 적어도 하나의 프로세서에 의해 실행될 때, 장치로 하여금,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 인코딩하는 것과,
강화 계층 픽처 내 타일 세트를 정의하는 것과,
기본 계층 픽처 내 타일 세트를 정의하는 것과,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의하는 것 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 과,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 인코딩하는 것
을 수행하게 한다.
제 9 실시예에 따르면, 기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하도록 구성된 비디오 디코더가 제공되며, 이 비디오 디코더는,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 하고,
코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하도록 구성된다.
제 10 실시예에 따르면,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 인코딩하도록 구성된 비디오 인코더가 제공되며, 상기 비디오 인코더는 또한,
강화 계층 픽처 내 타일 세트를 정의하고,
기본 계층 픽처 내 타일 세트를 정의하고,
상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 하고,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 인코딩하도록 구성된다.
본 발명의 더 나은 이해를 위해, 이제 첨부 도면이 예시로서 참조될 것이다.
도 1은 본 발명의 일부 실시예를 채용하는 전자 디바이스를 개략적으로 도시한다.
도 2는 본 발명의 일부 실시예를 채용하는데 적합한 사용자 장비를 개략적으로 도시한다.
도 3은 무선 및 유선 네트워크 연결을 이용하여 연결된 본 발명의 실시예를 채용하는 전자 디바이스를 추가적으로 개략적으로 도시한다.
도 4는 본 발명의 일부 실시예를 구현하기에 적합한 인코더를 개략적으로 도시한다.
도 5는 본 발명의 실시예에 따른 인코딩 프로세스의 플로우차트를 도시한다.
도 6은 본 발명의 실시예에 따른 인터-계층 전용 타일 세트(inter-layer only set of tiles)의 코딩 제한의 일 예를 도시한다.
도 7은 본 발명의 실시예에 따라서 움직임 및 인터-계층 예측 제한된 타일 세트의 일 예를 도시한다.
도 8은 본 발명의 실시예에 따라서 움직임 및 인터-계층 예측 제한된 타일 세트의 다른 예를 도시한다.
도 9는 본 발명의 일부 실시예에 따라서 강화 계층 픽처 내 제한된 타일 세트를 3d 및 멀티뷰 비디오 인코딩에 적용하는 예를 도시한다.
도 10은 본 발명의 일부 실시예에 따른 디코더의 개요도를 도시한다.
도 11은 본 발명의 실시예에 따른 디코딩 프로세스의 플로우 차트를 도시한다.
아래에서는 실시예를 실행하기에 적합한 장치 및 가능한 메커니즘을 더 자세하게 설명한다. 이와 관련하여, 본 발명의 실시예에 따른 코덱을 포함할 수 있는 예시적인 장치 또는 전자 디바이스(50)의 개략적인 블록도를 도시하는 도 1이 참조된다.
전자 디바이스(50)는 예를 들면, 무선 통신 시스템의 이동 단말 또는 사용자 장비일 수 있다. 그러나, 본 발명의 실시예는 비디오 이미지를 인코딩하고 디코딩하는 것을 필요로 할 수 있는 또는 인코딩하거나 디코딩하는 것을 필요로 할 수 있는 모든 전자 디바이스 또는 장치 내에서 구현될 수 있다는 것이 인식될 것이다.
장치(50)는 이 디바이스를 내장하고 보호하는 하우징(30)을 포함할 수 있다. 장치(50)는 또한 액정 디스플레이 형태의 디스플레이(32)를 포함할 수 있다. 본 발명의 다른 실시예에서, 디스플레이는 이미지 또는 비디오를 디스플레이하는데 적합한 임의의 적절한 디스플레이 기술일 수 있다. 장치(50)는 키패드(34)를 더 포함할 수 있다. 본 발명의 다른 실시예에서, 임의의 적절한 데이터 또는 사용자 인터페이스 메커니즘이 채용될 수 있다. 예를 들면, 사용자 인터페이스는 터치-감응식 디스플레이의 일부로서 가상 키보드 또는 데이터 입력 시스템으로 구현될 수 있다. 장치는 마이크로폰(36) 또는 디지털 또는 아날로그 신호 입력일 수 있는 임의의 적절한 오디오 입력을 포함할 수 있다. 장치(50)는 또한 본 발명의 실시예에서 수화기(38), 스피커, 또는 아날로그 오디오 또는 디지털 오디오 출력 연결(connection) 중 어느 하나일 수 있는 오디오 출력 디바이스를 포함할 수 있다. 장치(50)는 배터리(40)를 또한 포함할 수 있다(또는 본 발명의 다른 실시예에서 디바이스는 태양 전지, 연료 전지 또는 태엽작동 발전기와 같은 임의의 적절한 모바일 에너지 디바이스에 의해 전력을 공급받을 수 있다). 장치는 다른 디바이스와의 단거리 시선 통신을 위한 적외선 포트(42)를 더 포함할 수 있다. 다른 실시예에서, 장치(50)는 또한 예를 들면 블루투스 무선 연결 또는 USB/파이어와이어 유선 연결과 같은 임의의 적합한 단거리 통신 솔루션을 포함할 수 있다.
장치(50)는 장치(50)를 제어하기 위한 컨트롤러(56) 또는 프로세서를 포함할 수 있다. 컨트롤러(56)는 본 발명의 실시예에서 이미지 및 오디오 데이터 형태의 두 가지 데이터를 저장할 수 있는 그리고/또는 컨트롤러(56)에서 실행을 위한 명령어를 또한 저장할 수 있는 메모리(58)에 연결될 수 있다. 컨트롤러(56)는 오디오 및/또는 비디오 데이터의 코딩 및 디코딩을 실행하기에 적합하거나 컨트롤러(56)에 의해 실행되는 코딩 및 디코딩 시에 보조하기에 적합한 코덱 회로(54)에 또한 연결될 수 있다.
장치(50)는 카드 리더(48) 및 스마트 카드(46), 예를 들면, 사용자 정보를 제공하고 네트워크에서 사용자의 인증 및 인가에 필요한 인증 정보를 제공하는데 적합한 UICC 및 UICC 리더를 더 포함할 수 있다.
장치(50)는 컨트롤러에 연결되며 그리고, 예를 들면, 셀룰러 통신 네트워크, 무선 통신 시스템 또는 무선 근거리 네트워크와 통신을 위한 무선 통신 신호를 발생하기에 적합한 무선 인터페이스 회로(52)를 포함할 수 있다. 장치(50)는 무선 인터페이스 회로(52)에 연결되어 무선 인터페이스 회로(52)에서 발생된 무선 주파수 신호를 다른 장치(들)에 전송하고 다른 장치(들)로부터 무선 주파수 신호를 수신하기 위한 안테나(44)를 더 포함할 수 있다.
본 발명의 일부 실시예에서, 장치(50)는 개개의 프레임을 기록 또는 검출한 다음 이를 처리를 위해 코덱(54) 또는 컨트롤러에 전달할 수 있는 카메라를 포함할 수 있다. 본 발명의 다른 실시예에서, 장치는 다른 디바이스로부터 처리를 위한 비디오 이미지 데이터를 수신한 다음 전송 및/또는 저장할 수 있다. 본 발명의 다른 실시예에서, 장치(50)는 코딩/디코딩을 위한 이미지를 무선으로 또는 유선 연결을 통해 수신할 수 있다.
도 3과 관련하여, 본 발명의 실시예가 활용될 수 있는 시스템의 일 예가 도시된다. 시스템(10)은 하나 이상의 네트워크를 통해 통신할 수 있는 복수의 통신 디바이스를 포함한다. 시스템(10)은 이것으로 한정되지 않지만 (GSM, UMTS, CDMA 네트워크 등과 같은) 무선 셀룰러 텔레폰 네트워크, IEEE 802.x 표준 중 임의의 표준에 의해 정의된 바와 같은 무선 근거리 네트워크(wireless local area network, WLAN), 블루투스 개인 영역 네트워크, 이더넷 근거리 네트워크, 토큰 링 근거리 네트워크, 광역 네트워크, 및 인터넷을 비롯한 유선 또는 무선 네트워크의 임의의 조합을 포함할 수 있다.
시스템(10)은 본 발명의 실시예를 구현하기에 적합한 유선 및 무선 통신 디바이스 또는 장치(50)를 둘 다 포함할 수 있다.
예를 들면, 도 3에 도시된 시스템은 이동전화 네트워크(11) 및 인터넷(28)의 표현을 보여준다. 인터넷(28)과의 연결은 이것으로 제한되지 않지만 장거리 무선 연결, 단거리 무선 연결 및 이것으로 제한되지 않지만 전화선, 케이블선, 전력선, 및 유사 통신 경로를 비롯한 각종 유선 연결을 포함할 수 있다.
시스템(10)에서 도시된 예시적인 통신 디바이스는 이것으로 한정되지 않지만, 전자 디바이스 또는 장치(50), 개인 휴대정보 단말(personal digital assistant, PDA)과 이동전화(14)의 겸용, PDA(16), 통합 메시징 디바이스(integrated messaging device, IMD)(18), 데스크톱 컴퓨터(20), 노트북 컴퓨터(22)를 포함할 수 있다. 장치(50)는 고정형일 수 있거나 아니면 이동하는 개인이 휴대할 때는 이동형일 수 있다. 장치(50)는 또한 이것으로 한정되지 않지만 차, 트럭, 택시, 버스, 열차, 보트, 비행기, 자전거, 모터사이클 또는 임의의 유사하고 적합한 운송 방식을 비롯한 운송 방식으로 배치될 수 있다.
일부의 장치 또는 다른 장치는 기지국(24)과의 무선 연결(25)을 통해 호 및 메시지를 송수신하고 서비스 제공자와 통신할 수 있다. 기지국(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), 주파수 분할 다중 액세스(frequency 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 및 임의의 유사한 무선 통신 기술을 포함하는 각종 전송 기술을 이용하여 통신할 수 있다. 본 발명의 다양한 실시예를 구현하는데 연루되는 통신 디바이스는 이것으로 한정되지 않지만 무선, 적외선, 레이저, 케이블 연결, 및 임의의 적합한 연결을 비롯한 각종 미디어를 이용하여 통신할 수 있다.
비디오 코덱은 입력 비디오를 저장/전송에 적합한 압축된 표현으로 변환하는 인코더 및 압축된 비디오 표현을 다시 시청 가능한 형태로 복원할 수 있는 디코더로 구성된다. 전형적으로 인코더는 비디오를 더 밀집한 형태(즉, 더 낮은 비트레이트)로 표현하기 위하여 원(original) 비디오 시퀀스에서 약간의 정보를 버린다.
예를 들면, ITU-T H.263 및 H.264의 전형적인 하이브리드 비디오 코덱은 비디오 정보를 두 가지 국면으로 인코딩한다. 첫째로, 소정 픽처 영역(또는 "블록") 내 픽셀 값은, 예를 들면 (코딩되는 블록에 밀접하게 대응하는 이전에 코딩된 비디오 프레임 중 한 프레임 내에서 영역을 찾아 표시하는) 움직임 보상 수단에 의해 또는 (명시된 방식으로 코딩되는 블록 주변의 픽셀 값을 이용하는) 공간 수단에 의해 예측될 수 있다. 두 번째로, 예측 오차, 즉 예측된 픽셀 블록과 원 픽셀 블록 간의 차가 코딩된다. 전형적으로 이것은 명시된 변환(예를 들면, 이산 코사인 변환(Discrete Cosine Transform, DCT) 또는 그의 변형 방식)을 이용하여 픽셀 값의 차를 변환하고, 계수를 양자화하고 양자화된 계수를 엔트로피 인코딩함으로써 이루어진다. 양자화 프로세스의 충실도를 변화시킴으로써, 인코더는 픽셀 표현의 정확도(픽처 품질)와 결과적으로 코딩된 비디오 표현의 크기(파일 크기 또는 전송 비트레이트) 간의 균형을 조절할 수 있다.
비디오 코딩은 전형적으로 2단 프로세스이다. 즉, 첫째로, 이전에 코딩된 데이터에 기초하여 비디오 신호의 예측이 발생된다. 두 번째로, 예측된 신호와 소스 신호 간의 잔차(residual)가 코딩된다. 시간 예측, 움직임 보상, 또는 움직임 보상 예측이라고도 지칭될 수 있는 인터 예측은 시간 중복성을 줄여준다. 인터 예측에서, 예측의 소스는 이전에 디코딩된 픽처이다. 인트라 예측은 동일한 픽처 내 인접한 픽셀은 아마도 상관성이 있을 것 같다라는 사실을 활용한다. 인트라 예측은 공간 또는 변환 도메인에서 수행될 수 있다. 즉, 샘플 값 또는 변환 계수 중 어느 하나가 예측될 수 있다. 전형적으로 인트라 예측은 인트라 코딩에서 이용되며, 인트라 코딩에서는 아무런 인터 예측이 적용되지 않는다.
코딩 절차의 한가지 결과는 움직임 벡터 및 양자화된 변환 계수와 같은 일련의 코딩 파라미터이다. 많은 파라미터는 만일 이 파라미터가 공간적으로 또는 시간적으로 이웃 파라미터로부터 먼저 예측되면 더 효과적으로 엔트로피-코딩될 수 있다. 예를 들면, 움직임 벡터는 공간적으로 인접한 움직임 벡터로부터 예측될 수 있고 움직임 벡터 예측기에 대비한 차만이 코딩될 수 있다. 픽처 내 코딩 파라미터의 예측 및 인트라 예측은 일괄하여 인-픽처 예측(in-picture prediction)이라 지칭될 수 있다.
도 4와 관련하여, 본 발명의 실시예를 실행하기에 적합한 비디오 인코더의 블록도가 도시된다. 도 4는 인코더가 픽셀 예측기(302), 예측 오차 인코더(303) 및 예측 오차 디코더(304)를 포함하는 것으로 도시한다. 도 4는 또한 픽셀 예측기(302)의 실시예가 인터-예측기(306), 인트라-예측기(308), 모드 선택기(310), 필터(316), 및 참조 프레임 메모리(318)를 포함하는 것으로서 도시한다. 픽셀 예측기(302)는 (이미지와 움직임 보상된 참조 프레임(318) 간의 차를 결정하는) 인터-예측기(306)와 (현재 프레임 또는 픽처의 이미 처리된 부분만을 기초로 하여 이미지 블록에 대한 예측을 결정하는) 인트라-예측기(308)의 양측에서 인코딩될 이미지(300)를 수신한다. 두 인터-예측기와 인트라-예측기의 출력은 모드 선택기(310)로 전달된다. 인트라-예측기(308)는 하나보다 많은 인트라-예측 모드를 가질 수 있다. 그러므로, 각각의 모드는 인트라-예측을 수행하고 예측된 신호를 모드 선택기(310)로 제공할 수 있다. 모드 선택기(310)는 또한 이미지(300)의 카피를 수신한다.
현재 블록을 인코딩하기 위해 어느 인코딩 모드가 선택되는지에 따라서, 인터-예측기(306)의 출력 또는 선택사양의 인트라-예측기 모드 중 하나의 모드의 출력 또는 모드 선택기 내 서피스 인코더(surface encoder)의 출력이 모드 선택기(310)의 출력으로 전달된다. 모드 선택기의 출력은 제 1 합산 디바이스(321)로 전달된다. 제 1 합산 디바이스는 픽셀 예측기(302)의 출력을 이미지(300)로부터 감산하여 제 1 예측 오차 신호(320)를 생성하며, 이 신호는 예측 오차 인코더(303)로 입력된다.
픽셀 예측기(302)는 또한 일차 재구성기(preliminary reconstructor)(339)로부터 이미지 블록의 예측 표현(312)과 예측 오차 디코더(304)의 출력(338)의 조합을 수신한다. 일차 재구성된 이미지(314)는 인트라-예측기(308) 및 필터(316)로 전달될 수 있다. 일차 표현을 수신하는 필터(316)는 일차 표현을 필터링하고 최종의 재구성된 이미지(340)를 출력할 수 있으며, 이 최종의 재구성된 이미지는 참조 프레임 메모리(318)에 저장될 수 있다. 참조 프레임 메모리(318)는 참조 이미지로서 사용되기 위해 인터-예측기(306)에 연결될 수 있으며 이 참조 이미지에 대비하여 미래 계층 픽처(300)가 인터-예측 동작에서 비교된다.
픽셀 예측기(302)의 동작은 본 기술에서 공지된 임의의 알려진 픽셀 예측 알고리즘을 실행하도록 구성될 수 있다.
예측 오차 인코더(303)는 변환 유닛(342) 및 양자화기(344)를 포함한다. 변환 유닛(342)은 제 1 예측 오차 신호(320)를 변환 도메인으로 변환한다. 변환은 예를 들면, DCT 변환이다. 양자화기(344)는 변환 도메인 신호 예를 들면, DCT 계수를 양자화하여 양자화된 계수를 형성한다.
예측 오차 디코더(304)는 예측 오차 인코더(303)로부터의 출력을 수신하고 예측 오차 인코더(303)의 프로세스를 반대로 수행하여 디코딩된 예측 오차 신호(338)를 생성하며, 이 디코딩된 예측 오차 신호는 제 2 합산 디바이스(339)에서 이미지 블록(312)의 예측 표현과 조합될 때, 일차 재구성된 이미지(314)를 생성한다. 예측 오차 디코더는 양자화된 계수 값, 예를 들면 DCT 계수를 역양자화하여 변환 신호를 재구성하는 역양자화기(361) 및 재구성된 변환 신호로 역변환을 수행하는 역변환 유닛(363)을 포함하는 것으로 간주될 수 있으며, 이때 역변환 유닛(363)의 출력은 재구성된 블록(들)을 포함하고 있다. 예측 오차 디코더는 추가로 디코딩된 정보 및 필터 파라미터에 따라서 재구성된 블록(들)을 필터링할 수 있는 매크로블록 필터를 또한 포함할 수 있다.
엔트로피 인코더(330)는 예측 오차 인코더(303)의 출력을 수신하며 신호에 대해 적합한 엔트로피 인코딩/가변 길이 인코딩을 수행하여 오차 검출 및 오차 정정 기능을 제공할 수 있다.
H.264/AVC 표준은 국제 전기통신 연합(International Telecommunication Union, ITU-T)의 전기통신 표준화 부분의 비디오 코딩 전문가 그룹(Video Coding Experts Group, VCEG)과 국제 표준화 기구(International Standardization Organization, ISO)/국제 전기 기술위원회(International Electrotechnical Commission, IEC)의 동화상 전문가 그룹(Moving Picture Experts Group, MPEG)의 합동 비디오 팀(Joint Video Team, JVT)에 의해 개발되었다. H.264/AVC 표준은 양대 부모 표준화 기구에 의해 공표되며, 이 표준은 ITU-T 권고안 H.264 및 ISO/IEC 국제 표준 14496-10이라고도 지칭되며, 또한 MPEG-4 파트 10 최신 비디오 코딩(Advanced Video Coding, AVC)이라고도 알려져 있다. H.264/AVC 표준의 복수개 버전이 있는데, 각각의 버전은 사양의 새로운 확장 또는 특징을 통합하고 있다. 이러한 확장은 스케일러블 비디오 코딩(Scalable Video Coding, SVC) 및 멀티뷰 비디오 코딩(Multiview Video Coding, MVC)을 포함한다.
(HEVC 또는 H.265/HEVC이라고도 지칭될 수 있는) 고효율 비디오 코딩(High Efficiency Video Coding) 표준은 VCEG 및 MPEG의 비디오 코딩에 관한 합동 협업 팀(Joint Collaborative Team - Video Coding, JCT-VC)에 의해 개발되었다. 이 표준은 MPEG-H 파트 2 고효율 비디오 코딩(High Efficiency Video Coding, HEVC)이라고도 알려진, ITU-T 권고 H.265 및 ISO/IEC 국제 표준 23008-2이라고 지칭된다. 현재 진행 중인 표준화 계획으로는 스케일러블, 멀티뷰, 3차원 및 충실도 범위 확장을 비롯한 H.265/HEVC으로의 확장을 개발하는 것이 있다.
H.264/AVC 및 HEVC의 몇 가지 주요한 정의, 비트스트림 및 코딩 구조, 그리고 개념이 본 단원에서 실시예가 구현될 수 있는 비디오 인코더, 디코더, 인코딩 방법, 디코딩 방법, 및 비트스트림 구조의 예로서 설명된다. H.264/AVC의 주요한 정의, 비트스트림 및 코딩 구조, 그리고 개념의 일부는 HEVC 표준에서와 동일하며, 그러므로 아래에서는 이들을 연대하여 설명한다. 본 발명의 양태는 H.264/AVC 또는 HEVC으로 한정되지 않고, 오히려 본 발명이 부분적으로 또는 전체적으로 실현될 수 있는 것 이외에 한가지 가능한 근거에 대하여 설명이 제공된다.
H.264/AVC 및 HEVC을 설명할 때뿐만 아니라 예시적인 실시예에서, 예를 들면 H.264/AVC 또는 초안 HEVC에서 명시된 바와 같은 산술 연산자, 논리 연산자, 관계형 연산자, 비트 연산자(bit-wise operator), 할당 연산자, 및 범위 표시에 일반적인 표시가 사용될 수 있다. 그 뿐만 아니라, 예를 들면 H.264/AVC 또는 초안 HEVC에서 명시된 바와 같은 일반적인 수학 함수가 사용될 수 있으며, 예를 들면, H.264/AVC 또는 초안 HEVC에서 명시된 바와 같이 연산자들의 우선 순서 및 실행 순서(좌에서 우로 또는 우에서 좌로)의 일반적인 순서가 사용될 수 있다.
H.264/AVC 및 HEVC을 기술할 때뿐만 아니라 예시적인 실시예에서, 다음과 같은 서술자(descriptors)가 각 신택스 요소의 파싱 프로세스를 명시하는데 사용될 수 있다.
- b(8): 임의 패턴의 비트 스트링을 갖는 바이트(8비트).
- se(v): 좌측 첫 번째 비트로서 부호 붙임 정수형 Exp-Golomb-coded 신택스 요소.
- u(n): n 비트를 사용한 무부호 정수. 신택스 표에서 n이 "v"일 때, 비트의 개수는 다른 신택스 요소의 값에 의존하는 방식으로 변한다. 이러한 서술자의 파싱 프로세스는 첫 번째로 쓰여진 최상위 비트로서 무부호 정수의 이진 표현으로서 해석되는 비트스트림으로부터 n개 다음 비트로 명시된다.
- ue(v): 좌측 첫 번째 비트로서 무부호 정수형 Exp-Golomb-coded 신택스 요소.
Exp-Golomb 비트 스트링은 예를 들면 하기 표를 이용하여 코드 번호(codeNum)로 변환될 수 있다.
Figure 112016012749284-pct00001
Exp-Golomb 비트 스트링에 대응하는 코드 번호는 예를 들면 하기 표를 이용하여 se(v)로 변환될 수 있다.
Figure 112016012749284-pct00002
H.264/AVC 및 HEVC을 기술할 때뿐만 아니라 예시적인 실시예에서, 신택스 구조, 신택스 요소의 시맨틱, 및 디코딩 프로세스는 다음과 같이 명시될 수 있다. 비트스트림에서 신택스 요소는 볼드체로 표시된다. 각각의 신택스 요소는 그의 명칭(모두 밑줄표시 문자를 가진 소문자), 옵션으로 하나 또는 두 개의 그의 신택스 카테고리, 및 그의 코딩된 표현 방법에 대한 하나 또는 두 개의 서술자로 기술된다. 디코딩 프로세스는 신택스 요소의 값 및 이전에 디코딩된 신택스 요소의 값에 따라서 수행된다. 신택스 요소의 값이 신택스 표 또는 텍스트에서 사용될 때, 이 값은 정규(즉, 볼드체 아닌) 형태로 나타난다. 일부 사례에서, 신택스 표는 신택스 요소 값으로부터 도출되는 다른 변수의 값을 이용할 수 있다. 그러한 변수는 소문자와 대문자의 혼합이라고 명명된 그리고 어떠한 밑줄표시 문자도 없는 신택스 표 또는 텍스트에서 나타난다. 대문자로 시작하는 변수는 현재 신택스 구조 및 종속하는 모든 신택스 구조를 디코딩하기 위해 도출된다. 대문자로 시작하는 변수는 변수의 원래 신택스 구조를 언급하지 않고 나중의 신택스 구조의 디코딩 프로세스에서 사용될 수 있다. 소문자로 시작하는 변수는 그 변수가 도출된 컨텍스트 내에서만 사용될 뿐이다. 일부 사례에서, 신택스 요소 값 또는 변수 값에 대한 "연상 기호" 명칭은 이들의 수치 값과 같은 의미로 사용된다. 때때로 "연상 기호" 명칭은 임의의 수치 값과 연관되지 않고 사용된다. 값과 명칭의 연관 관계는 텍스트에서 명시된다. 명칭은 밑줄표시 문자에 의해 분리된 하나 이상의 문자 그룹으로 구성된다. 각 그룹은 대문자로 시작하며 더 많은 대문자를 포함할 수 있다.
H.264/AVC 및 HEVC을 기술할 때뿐만 아니라 예시적인 실시예에서, 신택스 구조는 다음과 같은 것을 이용하여 명시될 수 있다. 중괄호로 둘러싸인 스테이트먼트 그룹은 복합 스테이트먼트(compound statement)이며 기능적으로 단일의 스테이트먼트로 취급된다. "while" 구조는 조건이 참(true)인지 여부의 테스트를 명시하며, 만일 참이면, 그 조건이 더 이상 참이 아닐 때까지 스테이트먼트(또는 복합 스테이트먼트)의 평가를 반복적으로 명시한다. "do ... while" 구조는 한번의 스테이트먼트 평가에 뒤이어, 조건이 참인지 여부의 테스트를 명시하며, 만일 참이면, 그 조건이 더 이상 참이 아닐 때까지 스테이트먼트의 반복된 평가를 명시한다. "if ... else" 구조는 조건이 참인지 여부의 테스트를 명시하며, 만일 조건이 참이면, 일차 스테이트먼트의 평가를 명시하고, 그렇지 않으면 대안의 스테이트먼트의 평가를 명시한다. 만일 어느 대안의 스테이트먼트 평가도 필요하지 않으면 그 구조 및 연관된 대안의 스테이트먼트의 "else" 부분은 생략된다. "for" 구조는 초기 스테이트먼트의 평가에 뒤이어 조건의 테스트를 명시하며, 만일 조건이 참이면, 그 조건이 더 이상 참이 아닐 때까지 일차 스테이트먼트의 평가에 뒤이어 후속 스테이트먼트의 반복된 평가를 명시한다.
초기의 많은 비디오 코딩 표준과 유사하게, 비트스트림 신택스 및 시맨틱뿐만 아니라 오류 없는 비트스트림을 위한 디코딩 프로세스가 H.264/AVC 및 HEVC에서 명시되어 있다. 인코딩 프로세스는 명시되어 있지 않으며, 인코더는 규칙을 준수하는 비트스트림을 발생하여야 한다. 비트스트림 및 디코더 순응성은 가상 참조 디코더(Hypothetical Reference Decoder, HRD)를 이용하여 검증될 수 있다. 표준은 전송 오류 및 손실에 대처하는데 도움이 되는 코딩 툴을 포함하고 있지만, 인코딩할 때 툴의 사용은 선택사양이며 오류가 발생한 비트스트림에 대해 아무런 디코딩 프로세스도 명시되어 있지 않다.
기존의 표준에 관한 설명에서뿐만 아니라 예시적인 실시예의 설명에서, 신택스 요소는 비트스트림으로 표현된 데이터의 요소로서 정의될 수 있다. 신택스 구조는 명시된 순서대로 비트스트림에서 함께 존재하는 0개 이상의 신택스 요소라고 정의될 수 있다.
프로파일은 디코딩/코딩 표준이나 사양서에 의해 명시되는 전체 비트스트림 신택스의 서브세트라고 정의될 수 있다. 주어진 프로파일의 신택스에 의해 도입된 경계 내에서는 디코딩된 픽처의 명시된 크기와 같이 비트스트림에서 신택스 요소에 의해 취해진 값에 따라서 인코더 및 디코더의 성능에서 아주 큰 변동을 요구하는 것이 여전히 가능하다. 많은 응용 예에서, 특정 프로파일 내에서 신택스의 모든 가상적 사용에 대처할 수 있는 디코더를 구현하는 것이 실용적이지도 않고 경제적이 아닐 수도 있다. 이러한 문제에 대처하기 위하여, 레벨이 사용될 수 있다. 레벨은 비트스트림에서 신택스 요소의 값 및 디코딩/코딩 표준이나 사양서에서 명시된 값에 대해 부과된 제약사항의 명시된 집합이라고 정의될 수 있다. 이러한 제약 사항은 값에 관한 간단한 한정일 수 있다. 대안으로 또는 부가적으로, 이러한 제약 사항은 값의 산술적인 조합(예를 들면, 픽처 폭 곱하기 픽처 높이 곱하기 초당 디코딩된 픽처의 수)에 관한 제약 사항의 형태를 가질 수 있다. 레벨의 제약 사항을 명시하기 위한 다른 수단이 또한 사용될 수 있다. 레벨에서 명시된 제약사항 중 일부는 예를 들면 초(second)와 같은 기간 당, 매크로블록과 같은 코딩 유닛의 관점에서 최대 픽처 크기, 최대 비트레이트 및 최대 데이터 레이트에 관련할 수 있다. 모든 프로파일에 대해 동일한 레벨 집합이 정의될 수 있다. 예를 들면, 각 레벨의 정의의 대부분 또는 모든 양상이 여러 프로파일 전반에 공통적일 수 있는 여러 프로파일을 구현하는 단말의 상호운용성을 높이는 것이 바람직할 수 있다.
H.264/AVC 또는 HEVC 인코더로의 입력 그리고 H.264/AVC 또는 HEVC 디코더의 출력의 기본 유닛은 각기 픽처이다. H.264/AVC 및 HEVC에서, 픽처는 프레임 또는 필드 중 어느 하나일 수 있다. 프레임은 전형적으로 루마 샘플(luma sample) 및 아마도 대응하는 크로마 샘플(chroma sample)의 행렬을 포함한다. 필드는, 소스 신호가 인터레이스될 때, 프레임의 일련의 교번하는 샘플 로우(row)이며 인코더 입력으로서 사용될 수 있다. 크로마 픽처는 없을 수 있고(그래서 단색(monochrome) 샘플링이 사용되고 있을 수 있음) 또는 루마 픽처와 비교될 때 크로마 픽처는 서브샘플링될 수 있다. 일부 크로마 포맷은 아래와 같이 요약될 수 있다.
- 단색 샘플링에서는 단 하나의 샘플 어레이만이 있으며, 이는 명목상 루마 어레이라고 간주될 수 있다
- 4:2:0 샘플링할 때, 두 크로마 어레이는 각기 루마 어레이의 절반 높이 및 절반 폭을 갖는다.
- 4:2:2 샘플링할 때, 두 크로마 어레이는 각기 루마 어레이와 동일한 높이 및 절반 폭을 갖는다.
- 4:4:4 샘플링할 때, 어떠한 개별 컬러 평면도 사용되고 있지 않을 때, 두 크로마 어레이는 각기 루마 어레이와 동일한 높이 및 폭을 갖는다.
H.264/AVC 및 HEVC에서, 샘플 어레이를 개별 컬러 평면으로서 비트스트림으로 코딩하고 그 비트스트림으로부터 각기 개별적으로 코딩된 컬러 평면으로 디코딩하는 것이 가능하다. 개별의 컬러 평면이 사용되고 있을 때, 컬러 평면 각각은 (인코더 및/또는 디코더에 의해) 단색 샘플링된 픽처로서 개별적으로 처리된다.
크로마 서브샘플링(예를 들면, 4:2:0 또는 4:2:2 크로마 샘플링)이 사용되고 있을 때, 루마 샘플에 대해 크로마 샘플의 위치는 인코더 측에서 (예를 들면, 선 처리 단계로서 또는 인코딩의 일부로서) 결정될 수 있다. 루마 샘플 위치에 대해 크로마 샘플 위치는 H.264/AVC 또는 HEVC과 같은 코딩 표준에서 미리 정의될 수 있거나, 또는 예를 들면 H.264/AVC 또는 HEVC의 VUI의 일부로서 비트스트림에서 표시될 수 있다.
분할(partitioning)은 하나의 세트를 서브세트로 나누어서 세트의 각 요소가 서브세트 중의 정확히 하나에 속하도록 하는 것으로 정의될 수 있다. 픽처 분할은 하나의 픽처를 더 작은 겹치지 않는 유닛으로 나누는 것이라고 정의될 수 있다. 블록 분할은 하나의 블록을 더 작은 겹치지 않는 유닛, 이를 테면, 서브블록으로 나누는 것이라고 정의될 수 있다. 일부 사례에서, 블록 분할이라는 용어는 몇 가지 레벨의 분할, 예를 들면 픽처의 슬라이스로의 분할, 및 각 슬라이스의 더 작은 유닛, 이를 테면 H.264/AVC의 매크로블록으로의 분할을 망라하는 것으로 간주될 수 있다. 픽처와 같은 동일한 유닛은 하나 보다 많은 분할을 가지고 있을 수 있다는 것을 주목하여야 한다. 예를 들면, 초안 HEVC의 코딩 유닛은 예측 유닛으로 분할될 수 있으며 별도로 다른 쿼드트리(quadtree)에 의해 변환 유닛으로 분할될 수 있다.
H.264/AVC에서, 매크로블록은 16x16 루마 샘플 블록 및 대응하는 크로마 샘플 블록이다. 예를 들면, 4:2:0 샘플링 패턴에서, 매크로블록은 각 크로마 컴포넌트 당 하나의 8x8 크로마 샘플 블록을 포함한다. H.264/AVC에서, 픽처는 하나 이상의 슬라이스 그룹으로 분할되며, 슬라이스 그룹은 하나 이상의 슬라이스를 포함한다. H.264/AVC에서, 슬라이스는 특정한 슬라이스 그룹 내에서 래스터 스캔에서 연속하여 정렬되는 정수개의 매크로블록으로 이루어진다.
HEVC 표준화 과정 동안, 예를 들면 픽처 분할 유닛에 관한 용어가 진화되어 왔다. 다음의 단락에서, 몇몇 HEVC 용어의 비-한정적인 예가 제공된다.
고효율 비디오 코딩(HEVC) 코덱과 같은 일부 비디오 코덱에서, 비디오 픽처는 픽처의 영역을 포함하는 코딩 유닛(coding unit, CU)으로 나누어진다. CU는 그 CU 내 샘플들의 예측 프로세스를 정의하는 하나 이상의 예측 유닛(prediction unit, PU) 및 그 CU 내 샘플들의 예측 오차 코딩 프로세스를 정의하는 하나 이상의 변환 유닛(transform unit, TU)으로 이루어진다. 전형적으로, CU는 가능한 CU 크기의 미리 정의된 집합으로부터 선택 가능한 크기를 가진 샘플들의 정방형 블록(square block)으로 이루어진다. 최대로 허용된 크기를 가진 CU는 통상 LCU (largest coding unit, 최대 코딩 유닛)이라고 명명될 수 있으며 비디오 픽처는 겹치지 않는 LCU로 나누어진다. LCU는 예를 들면, LCU 및 결과적인 CU를 반복적으로 나눔으로써 더 작은 CU들이 조합으로 더 나누어질 수 있다. 각각의 결과적인 CU는 적어도 하나의 PU 및 그와 연관된 적어도 하나의 TU를 가질 수 있다. 각각의 PU 및 TU는 각기 예측 및 예측 오차 코딩 프로세스의 그래뉴러리티를 높이기 위해 더 작은 PU 및 TU로 더 나누어질 수 있다. 각각의 PU는 그와 연관되어 무슨 종류의 예측이 그 PU 내 픽셀에 적용될 것인지를 정의하는 예측 정보(예를 들면, 인터 예측된 PU에 대한 움직임 벡터 정보 및 인트라 예측된 PU에 대한 인트라 예측 방향 정보)를 가질 수 있다. 유사하게, 각 TU는 그 TU 내 샘플들에 대한 예측 오차 디코딩 프로세스를 서술하는 정보(예를 들면, DCT 계수 정보를 포함함)와 연관될 수 있다. 일반적으로 CU 레벨에서 각 CU마다 예측 오차 코딩이 적용되는지 아닌지를 시그널링할 수 있다. CU와 연관된 아무런 예측 오차 잔차(prediction error residual)도 없는 경우, 이것은 상기 CU에 대해 어느 TU도 없다고 간주될 수 있다. 이미지를 CU로 나누고, CU를 PU 및 TU로 나누는 것은 디코더가 이러한 유닛의 의도한 구조를 재생하도록 비트스트림에다 시그널링될 수 있다.
HEVC 표준에서, 픽처는 장방형(rectangular)이고 정수개의 LCU를 포함하는 타일로 분할될 수 있다. HEVC 표준에서, 타일로 분할하면 규칙적인 그리드가 형성되며, 이 경우 타일의 높이와 폭은 최대한 하나의 LCU 만큼 서로 다르다. 타일은 픽처 내에서 래스터 스캔으로 연속하여 비트스트림에서 순서대로 정렬된다. 타일은 정수개의 슬라이스를 포함할 수 있다.
HEVC에서, 슬라이스는 정수개의 LCU로 이루어진다. LCU는 타일 내에서 또는 타일이 사용되고 있지 않으면 픽처 내에서 LCU의 래스터 스캔 순서대로 스캔된다. 슬라이스는 정수개의 타일을 포함할 수 있거나 아니면 슬라이스는 타일 내에 포함될 수 있다. LCU 내에서, CU는 특정한 스캔 순서를 갖는다.
디코더는 (인코더에 의해 생성되어 압축된 표현으로 저장된 움직임 또는 공간 정보를 이용하여) 픽셀 블록의 예측된 표현을 형성하는 인코더와 유사한 예측 수단 및 예측 오차 디코딩(공간 픽셀 도메인에서 양자화된 예측 오차 신호를 복원하는 예측 오차 코딩의 역 동작)을 적용함으로써 출력 비디오를 재구성한다. 예측 및 예측 오차 디코딩 수단을 적용한 후, 디코더는 예측 및 예측 오차 신호(픽셀 값)를 합하여 출력 비디오 프레임을 형성한다. 디코더(및 인코더)는 또한 부가적인 필터링 수단을 적용하여 출력 비디오의 품질을 개선한 다음 출력 비디오를 디스플레이하기 위해 전달할 수 있으며 그리고/또는 출력 비디오를 비디오 시퀀스에서 다음에 오는 프레임에 대한 예측 참조로서 저장할 수 있다.
전형적인 비디오 코덱에서, 움직임 정보는 각각의 움직임 보상된 이미지 블록과 연관된 움직임 벡터로 표시된다. 각각의 이러한 움직임 벡터는 (인코더 측에서) 코딩될 또는 (디코더 측에서) 디코딩될 픽처 내 이미지 블록과 이전에 코딩된 또는 디코딩된 픽처 중 한 픽처 내 예측 소스 블록의 변위를 나타낸다. 움직임 벡터를 효과적으로 표현하기 위하여, 움직임 벡터는 전형적으로 블록 별로 예측된 움직임 벡터에 대하여 상이하게 코딩된다. 전형적인 비디오 코덱에서, 예측된 움직임 벡터는 미리 정의된 방식으로, 예를 들면 인접한 블록의 인코딩된 또는 디코딩된 움직임 벡터의 중간 값을 계산함으로써 생성된다. 움직임 벡터 예측을 생성하는 다른 방법은 시간 참조 픽처 내 인접 블록 및/또는 동일 위치에 있는 블록으로부터 후보 예측들의 리스트를 만들고 선택된 후보를 움직임 벡터 예측기로서 시그널링하는 것이다. 움직임 벡터 값을 예측하는 것 이외에도, 이전에 코딩된/디코딩된 픽처의 참조 인덱스가 예측될 수 있다. 참조 인덱스는 전형적으로 시간 참조 픽처 내 인접 블록 및/또는 동일 위치에 있는 블록으로부터 예측된다. 더욱이, 전형적인 고 효율 비디오 코덱은 종종 머징 모드(merging mode)/병합 모드(merge mode)라고 불리는 부가적인 움직임 정보 코딩/디코딩 메커니즘을 사용하며, 이 메커니즘에서 각각의 이용 가능한 참조 픽처 리스트마다 움직임 벡터 및 대응하는 참조 픽처 인덱스를 포함하는 모든 움직임 필드 정보가 어떠한 수정/정정 없이 예측되고 사용된다. 유사하게, 움직임 필드 정보는 시간 참조 픽처 내 인접 블록 및/또는 동일 위치에 있는 블록의 움직임 필드 정보를 이용하여 예측되며 이용된 움직임 필드 정보는 이용 가능한 인접/동일 위치의 블록의 움직임 필드 정보로 채워진 움직임 필드 후보 리스트의 리스트 중에서 시그널링된다.
전형적인 비디오 코덱에서, 움직임 보상 이후 예측 잔차가 일차로 (DCT와 같은) 변환 커널로 변환된 다음 코딩된다. 그 이유는 종종 잔차 중에서 약간의 상관이 여전히 존재하기 때문이며 많은 사례에서 변환은 이러한 상관을 줄이는데 도움이 될 수 있고 더 효과적인 코딩을 제공할 수 있다.
전형적인 비디오 인코더는 라그랑지안 비용 함수(Lagrangian cost function)를 활용하여 최적한 코딩 모드, 예를 들면, 희망하는 매크로블록 모드 및 연관된 움직임 벡터를 찾는다. 이러한 종류의 비용 함수는 가중 인수(λ)를 이용하여 손실 코딩 방법으로 인한 (정확한 또는 추정된) 이미지 왜곡과 이미지 영역 내 픽셀 값을 표현하는데 필요한 (정확한 또는 추정된) 정보량을 함께 합친다.
Figure 112016012749284-pct00003
여기서 C는 최소화될 라그랑지안 비용이고, D는 모드 및 움직임 벡터가 고려된 이미지 왜곡(예를 들면, 평균 제곱 오차)이고, R은 (후보 움직임 벡터를 표현하는 데이터의 양을 포함하는) 디코더에서 이미지 블록을 재구성하는데 필요한 데이터를 표현하는데 필요한 비트 수이다.
비디오 코딩 표준 및 사양서는 인코더가 코딩된 픽처를 코딩된 슬라이스 또는 그와 유사한 것으로 나누게 할 수 있다. 인-픽처 예측은 전형적으로 슬라이스 경계 전체에서 불능화된다. 그래서, 슬라이스는 코딩된 픽처를 독립적으로 디코딩 가능한 조각으로 나누는 방법으로 간주될 수 있다. H.264/AVC 및 HEVC에서, 인-픽처 예측은 슬라이스 경계 전체에서 불능화될 수 있다. 그러므로, 슬라이스는 코딩된 픽처를 독립적으로 디코딩 가능한 조각으로 나누는 방법으로 간주될 수 있으며, 그러므로 슬라이스는 종종 전송을 위한 기본 유닛이라고 간주된다. 많은 사례에서, 인코더는 인-픽처 예측의 타입이 슬라이스 경계 전체에서 턴 오프된다는 것을 비트스트림에다 표시할 수 있으며, 디코더는 예를 들어 예측 소스가 이용 가능하다고 결론지을 때 이 정보를 고려하여 동작한다. 예를 들면, 만일 이웃 매크로블록 또는 CU가 상이한 슬라이스에서 존재한다면, 그 이웃하는 매크로블록 또는 CU로부터의 샘플은 인트라 예측에는 이용할 수 없는 것으로 간주될 수 있다
아래에서, 일부 코딩 표준에서 이용 가능한 슬라이스 타입이 분류된다.
래스터-스캔-순서-슬라이스(raster-scan-order-slice)는 래스터 스캔 순서에서 연이은 매크로블록 또는 그와 유사한 것으로 이루어진 코딩된 세그먼트이다. 예를 들면, MPEG-4 파트 2의 비디오 패킷 및 H.263에서 비어있지 않은 매크로블록의 그룹(group of macroblock, GOB) 헤더에서 시작하는 GOB는 래스터-스캔-순서-슬라이스의 예이다.
장방형 슬라이스는 매크로블록 또는 그와 유사한 것의 장방형 영역으로 이루어지는 코딩된 세그먼트이다. 장방형 슬라이스는 하나의 매크로블록 또는 그와 유사한 것의 로우(row) 보다 높고 전체 픽처 폭보다는 좁을 수 있다. H.263은 선택사양의 장방형 슬라이스 서브모드를 포함하며, H.261 GOB 또한 장방형 슬라이스라고 간주될 수 있다.
플렉시블 슬라이스는 임의의 미리 정의된 매크로블록(또는 그와 유사한 것) 위치(location)를 포함하고 있을 수 있다. H.264/AVC 코덱은 매크로블록을 하나보다 많은 슬라이스 그룹으로 그룹화하게 해준다. 슬라이스 그룹은 인접하지 않은 매크로블록 위치를 비롯한 임의의 매크로블록 위치를 포함할 수 있다. H.264/AVC의 일부 프로파일에서 슬라이스는 래스터 스캔 순서에서 특정 슬라이스 그룹 내 적어도 하나의 매크로블록으로 구성된다.
H.264/AVC 또는 HEVC 인코더의 출력 및 H.264/AVC 또는 HEVC 디코더의 입력의 기본 유닛은 각기 네트워크 추상 계층(Network Abstraction Layer, NAL) 유닛이다. 패킷 지향의 네트워크를 통해 전송하거나 구조화된 파일로 저장하기 위해, NAL 유닛은 패킷 또는 유사한 구조로 캡슐화될 수 있다. H.264/AVC 및 HEVC에서 프레이밍 구조를 제공하지 않는 전송 또는 저장 환경을 위해 바이트스트림 포맷이 명시되었다. 바이트스트림 포맷은 각 NAL 유닛의 앞 단에다 시작 코드를 붙임으로써 NAL 유닛을 서로 구분한다. NAL 유닛 경계의 오검출을 방지하기 위해, 인코더는 바이트 지향의 시작 코드 에뮬레이션 방지 알고리즘(byte-oriented start code emulation prevention algorithm)을 가동하는데, 이는 시작 코드가 발생하였다면 에뮬레이션 방지 바이트를 NAL 유닛 페이로드에 첨가하는 알고리즘이다. 패킷 지향 시스템과 스트림 지향 시스템 사이에서 수월한 게이트웨이 동작을 가능하게 하기 위해, 바이트스트림 포맷이 사용 중이든 그렇지 않든 간에, 시작 코드 에뮬레이션 방지가 항시 수행될 수 있다. NAL 유닛은 뒤이어 나오는 데이터의 타입의 표시를 갖고 있는 신택스 구조 및 필요에 따라 에뮬레이션 방지 바이트를 산재시킨 RBSP 형태로 된 데이터를 포함하는 신택스 구조라고 정의될 수 있다. 원시 바이트 시퀀스 페이로드(raw byte sequence payload, RBSP)는 NAL 유닛에서 캡슐화된 정수 개의 바이트를 갖고 있는 신택스 구조라고 정의될 수 있다. RBSP는 비어 있거나 아니면 신택스 요소를 포함하는 데이터 비트에 뒤이은 RBSP 스톱 비트 그리고 그 뒤를 이은 0개 이상의 0과 같은 후속 비트의 스트링의 형태를 갖는다.
NAL 유닛은 헤더와 페이로드로 구성된다. H.264/AVC 및 HEVC에서, NAL 유닛 헤더는 NAL 유닛의 타입을 표시하며 또한 NAL 유닛에 포함된 코딩된 슬라이스가 참조 픽처 또는 비-참조 픽처(non-reference picture)의 일부인지를 표시한다.
H.264/AVC NAL 유닛 헤더는 2비트의 nal_ref_idc 신택스 요소를 포함하는데, 이 요소가 0일 때는 NAL 유닛에 포함된 코딩된 슬라이스가 비-참조 픽처의 일부임을 표시하고 0보다 클 때는 NAL 유닛에 포함된 코딩된 슬라이스가 참조 픽처의 일부임을 표시한다. SVC 및 MVC NAL 유닛의 헤더는 스케일러빌리티 및 멀티뷰 계층(multiview hierarchy)과 관련된 각종 표시를 부가적으로 포함할 수 있다.
HEVC에서, 2바이트의 NAL 유닛 헤더는 명시된 모든 NAL 유닛 타입에 대해 사용된다. NAL 유닛 헤더는 하나의 예약된 비트, 6비트의 NAL 유닛 타입 표시, 6비트의 예약 필드(nuh_layer_id라고 지칭됨) 및 시간 레벨의 표시를 위한 3비트의 temporal_id_plus1 표시를 포함한다. temporal_id_plus1 신택스 요소는 NAL 유닛의 시간 식별자(temporal identifier)라고 간주될 수 있으며, 제로-기반의 TemporalId 변수는 다음과 같이 도출될 수 있다: TemporalId = temporal_id_plus1 - 1. TemporalId가 0이면, 이는 최저 시간 레벨에 해당한다. temporal_id_plus1의 값은 두 NAL 유닛 헤더 바이트가 연루되는 시작 코드 에뮬레이션을 방지하기 위해 제로가 아니어야 한다. TemporalId가 선택된 값보다 크거나 같은 모든 VCL NAL 유닛을 제외시키고 다른 모든 NAL 유닛을 포함시킴으로써 생성된 비트스트림은 그대로 순응성을 유지한다. 그 결과, TID와 동일한 TemporalId를 갖는 픽처는 TID보다 큰 TemporalId를 갖는 임의의 픽처를 인터 예측 참조로서 사용하지 않는다. 서브계층 또는 시간 서브계층은 TemporalId 변수의 특정 값을 가진 VCL NAL 유닛 및 연관된 논-VCL NAL 유닛으로 구성되는 시간 스케일러블 비트스트림의 시간 스케일러블 계층인 것으로 정의될 수 있다. 일반성을 잃지 않고, 일부 예시적인 실시예에서, 변수 LayerId는 예를 들면 다음과 같이 nuh_layer_id 의 값으로부터 도출된다. 즉 Layerld = nuh_layer_id. 아래에서, LayerId, nuh_layer_id 및 layer_id는 달리 지적하지 않는 한 같은 의미로 사용된다.
NAL 유닛 헤더에서 nuh_layer_id 및/또는 유사한 신택스 요소는 스케일러빌리티 계층에 관한 정보를 운반하는 것이라고 예상된다. 예를 들면, LayerId 값 nuh_layer_id 및/또는 유사한 신택스 요소는 quality_id 또는 유사한 것, dependency_id 또는 유사한 것, 임의의 다른 형태의 계층 식별자, 뷰 순서 인덱스 또는 유사한 것, 뷰 식별자, NAL 유닛이 깊이 또는 텍스처, 즉 depth_flag 또는 유사한 것과 관련하는지의 표시, 또는 특정한 식별자 값보다 큰 모든 NAL 유닛이 비트스트림으로부터 제거되면 유효한 서브비트스트림 추출을 표시하는 SVC의 priority_id와 유사한 식별자와 같은 상이한 스케일러빌리티 차원을 서술하는 변수 값 또는 신택스 요소로 맵핑될 수 있다. nuh_layer_id 및/또는 유사한 신택스 요소는 스케일러빌리티 속성을 표시하는 하나 이상의 신택스 요소로 분할될 수 있다. 예를 들면, nuh_layer_id중에서 특정 개수의 비트 및/또는 유사한 신택스 요소는 dependency_id 또는 유사한 것에 사용될 수 있는데 반해, nuh_layer_id중에서 다른 특정 개수의 비트 및/또는 유사한 신택스 요소는 quality_id 또는 유사한 것에 사용될 수 있다. 대안으로, LayerId 값 또는 유사한 값을 상이한 스케일러빌리티 차원을 서술하는 변수 값 또는 신택스 요소에 맵핑하는 것은 예를 들면 비디오 파라미터 세트(Video Parameter Set), 시퀀스 파라미터 세트(Sequence Parameter Set) 또는 다른 신택스 구조에서 제공될 수 있다.
NAL 유닛은 비디오 코딩 계층(Video Coding Layer: VCL) NAL 유닛 및 논(non)-VCL NAL 유닛으로 분류될 수 있다. VCL NAL 유닛은 일반적으로 코딩된 슬라이스 NAL 유닛이다. H.264/AVC에서, 코딩된 슬라이스 NAL 유닛은 하나 이상의 코딩된 매크로블록을 표현하는 신택스 요소를 포함하며, 각각의 매크로블록은 복원된 픽처 내 샘플들의 블록에 대응한다. HEVC에서, 코딩된 슬라이스 NAL 유닛은 하나 이상의 CU를 나타내는 신택스 요소를 갖고 있다.
H.264/AVC 및 HEVC에서, 코딩된 슬라이스 NAL 유닛은 순간 디코딩 리플레쉬(Instantaneous Decoding Refresh: IDR) 픽처 내 코딩된 슬라이스 또는 논-IDR 픽처 내 코딩된 슬라이스인 것으로 표시될 수 있다.
HEVC에서, 코딩된 슬라이스 NAL 유닛은 다음과 같은 타입 중 한 가지 타입인 것으로 표시될 수 있다.
Figure 112016012749284-pct00004
HEVC에서, 픽처 타입의 약어는 다음과 같이 정의될 수 있다: 트레일링(trailing: TRAIL) 픽처, 시간 서브계층 액세스(Temporal Sub-layer Access: TSA), 단계적 시간 서브계층 액세스(Step-wise Temporal Sub-layer Access: STSA), 랜덤 액세스 디코딩 가능한 리딩(Random Access Decodable Leading: RADL) 픽처, 랜덤 액세스 스킵드 리딩(Random Access Skipped Leading: RASL) 픽처, 브로큰 링크 액세스(Broken Link Access: BLA) 픽처, 순간 디코딩 리플레쉬(Instantaneous Decoding Refresh: IDR) 픽처, 클린 랜덤 액세스(Clean Random Access: CRA) 픽처.
인트라 랜덤 액세스 포인트(intra random access point: IRAP) 픽처일 수도 있거나 대안으로 그렇게 지칭될 수 있는 랜덤 액세스 포인트(Random Access Point: RAP) 픽처는 각 슬라이스 또는 슬라이스 세그먼트가 16 내지 23을 포함하는 범위 내에서 nal_unit_type을 갖는 픽처이다. RAP 픽처는 오직 인트라 코딩된 슬라이스만을 포함하며, BLA 픽처, CRA 픽처 또는 IDR 픽처일 수 있다. 비트스트림에서 첫 픽처는 RAP 픽처이다. 필요한 파라미터 세트가 사용될 필요가 있을 때 그 파라미터 세트가 이용 가능하다면, 디코딩 순서에서 RAP 픽처 및 후속하는 논-RASL 픽처는 디코딩 순서에서 RAP 픽처에 선행하는 임의의 픽처의 디코딩 프로세스를 수행하지 않고 바르게 디코딩될 수 있다. 비트스트림에는 RAP 픽처가 아닌 인트라 코딩된 슬라이스만을 포함하는 픽처가 존재할 수 있다.
HEVC에서, CRA 픽처는 디코딩 순서에서 비트스트림의 첫 픽처일 수 있거나, 비트스트림에서 나중에 나올 수 있다. HEVC에서 CRA 픽처는 디코딩 순서에서 CRA 픽처에 뒤에 나오지만 출력 순서에서는 그에 앞서는 소위 리딩 픽처(leading picture)를 허용한다. 리딩 픽처 중 일부, 소위 RASL 픽처는 CRA 픽처에 앞서 디코딩된 픽처를 참조로서 이용할 수 있다. 디코딩 순서와 출력 순서 모두에서 CRA 픽처에 뒤따라 나오는 픽처는 CRA 픽처에서 랜덤 액세스가 수행된다면 디코딩 가능하며, 그래서 IDR 픽처의 클린 랜덤 액세스 기능성과 유사하게 클린 랜덤 액세스가 성취될 수 있다.
CRA 픽처는 연관된 RADL 픽처 또는 RASL 픽처를 가질 수 있다. CRA 픽처가 디코딩 순서에서 비트스트림의 첫 픽처일 때, CRA 픽처는 디코딩 순서에서 코딩된 비디오 시퀀스의 첫 픽처이며, 어느 연관된 RASL 픽처도 이 픽처가 비트스트림에서 존재하지 않는 픽처의 참조를 포함하고 있으므로 디코더에 의해 출력되지 않으며 디코딩 가능하지 않을 수 있다.
리딩 픽처는 출력 순서에서 연관된 RAP 픽처에 선행하는 픽처이다. 연관된 RAP 픽처는 (존재한다면) 디코딩 순서에서 이전의 RAP 픽처이다. 리딩 픽처는 RADL 픽처 또는 RASL 픽처 중 어느 하나이다.
모든 RASL 픽처는 연관된 BLA 또는 CRA 픽처의 리딩 픽처이다. 연관된 RAP 픽처가 BLA 픽처일 때 또는 비트스트림에서 코딩된 첫 픽처일 때, RASL 픽처가 비트스트림에서 존재하지 않는 픽처의 참조를 포함할 수 있으므로, RASL 픽처는 출력되지 않으며 올바르게 디코딩 가능하지 않을 수 있다. 그러나, RASL 픽처의 연관된 RAP 픽처에 앞서서 RAP 픽처부터 디코딩이 시작되었다면 RASL 픽처는 올바르게 디코딩될 수 있다. RASL 픽처는 논-RASL 픽처의 디코딩 프로세스 동안 참조 픽처로서 사용되지 않는다. 존재할 때, 모든 RASL 픽처는 디코딩 순서에서, 같은 연관된 RAP 픽처의 모든 트레일링 픽처에 앞선다. HEVC 표준의 일부 초기의 초안에서, RASL 픽처는 폐기 표시(Tagged for Discard, TFD) 픽처에 참조되지 않았다.
모든 RADL 픽처는 리딩 픽처이다. RADL 픽처는 그 연관된 RAP 픽처의 트레일링 픽처의 디코딩 프로세스 동안 참조 픽처로서 사용되지 않는다. 존재할 때, 모든 RADL 픽처는 디코딩 순서에서, 그 연관된 RAP 픽처의 모든 트레일링 픽처에 선행한다. RADL 픽처는 디코딩 순서에서 연관된 RAP 픽처에 선행하는 어느 픽처도 참조하지 않으며 그래서 연관된 RAP 픽처로부터 디코딩이 시작할 때 올바르게 디코딩될 수 있다. HEVC 표준의 일부 초기의 초안에서, RADL 픽처는 디코딩 가능한 리딩 픽처(Decodable Leading Picture, DLP)에 참조되었다.
디코딩 가능한 리딩 픽처는 디코딩이 CRA 픽처로부터 시작될 때 올바르게 디코딩될 수 있는 그런 픽처일 수 있다. 다시 말해서, 디코딩 가능한 픽처는 디코딩 순서에서 처음의 CRA 픽처 또는 후속 픽처만을 인터 예측 시 참조로서 사용한다. 디코딩 가능하지 않은 리딩 픽처는 처음의 CRA 픽처로부터 디코딩이 시작될 때 올바르게 디코딩되지 않을 수 있는 그런 픽처이다. 다시 말해서, 디코딩 가능하지 않은 리딩 픽처는 디코딩 순서에서 처음의 CRA 픽처에 앞서는 픽처를 인터 예측 시 참조로서 사용한다.
CRA 픽처로부터 시작하는 비트스트림의 일부가 다른 비트스트림에 포함되어 있을 때, CRA 픽처와 연관된 RASL 픽처는 올바르게 디코딩되지 않을 수 있는데, 이는 이들 픽처의 참조 픽처 중 일부가 조합된 비트스트림에서 존재하지 않을 수 있기 때문이다. 그러한 스플리싱 작업을 쉽게 하기 위해, NAL 유닛 타입의 CRA 픽처는 BLA 픽처라고 표시하도록 변경될 수 있다. BLA 픽처와 연관된 RASL 픽처는 올바르게 디코딩 가능하지 않을 수 있고 그래서 출력/디스플레이되지 않는다. 그 뿐만 아니라, BLA 픽처와 연관된 RASL 픽처는 디코딩에서 생략될 수 있다.
BLA 픽처는 디코딩 순서에서 비트스트림의 첫 픽처일 수 있거나, 비트스트림에서 나중에 나타날 수 있다. 각각의 BLA 픽처는 새로이 코딩된 비디오 시퀀스를 시작하며, 디코딩 프로세스에서 IDR 픽처와 유사한 영향을 미친다. 그러나, BLA 픽처는 비어 있지 않은 참조 픽처 집합을 명시하는 신택스 요소를 포함한다. BLA 픽처가 BLA_W_LP와 동일한 nal_unit_type을 가질 때, BLA 픽처는 연관된 RASL 픽처를 가질 수 있으며, 이 RASL 픽처는 이 픽처가 비트스트림에 존재하지 않는 픽처에 대한 참조를 갖고 있을 수 있으므로, 디코더에 의해 출력되지 않으며 디코딩되지 않을 수 있다. BLA 픽처가 BLA_W_LP와 동일한 nal_unit_type을 가질 때, BLA 픽처는 또한 디코딩되는 것으로 명시된 연관된 RADL 픽처를 가질 수 있다. BLA 픽처가 BLA_W_DLP와 동일한 nal_unit_type을 가질 때, BLA 픽처는 연관된 RASL 픽처를 갖지 않고, 디코딩되는 것으로 명시된 연관된 RADL 픽처를 가질 수 있다. BLA_W_DLP는 또한 BLA_W_RADL 이라고도 지칭될 수 있다. BLA 픽처가 BLA_N_LP와 동일한 nal_unit_type을 가질 때, BLA 픽처는 어느 연관된 리딩 픽처도 갖지 않는다.
IDR_N_LP와 동일한 nal_unit_type을 가진 IDR 픽처는 비트스트림에서 존재하는 연관된 리딩 픽처를 갖지 않는다. IDR_W_DLP와 동일한 nal_unit_type을 가진 IDR 픽처는 비트스트림에서 존재하는 연관된 RASL 픽처를 갖지 않고, 비트스트림에서 연관된 RADL 픽처를 가질 수 있다. IDR_W_DLP는 IDR_W_RADL라고도 지칭될 수 있다.
nal_unit_type의 값이 TRAIL N, TSA_N, STSA_N, RADL N, RASL N, RSV_VCL_N10, RSV_VCL_N12, 또는 RSV_VCL_N14와 같을 때, 디코딩된 픽처는 그 시간 서브계층의 임의의 다른 픽처의 참조로서 사용되지 않는다. 즉, 초안 HEVC 표준에서, nal_unit_type의 값이 TRAIL_N, TSA_N, STSA_N, RADL_N, RASL_N, RSV_VCL_N10, RSV_VCL_N12, 또는 RSV_VCL_N14와 같을 때, 디코딩된 픽처는 TemporalId의 그 값을 가진 임의의 픽처의 RefPicSetStCurrBefore, RefPicSetStCurrAfter 및 RefPicSetLtCurr 중 어느 것에도 포함되지 않는다. TRAIL_N, TSA_N, STSA_N, RADL_N, RASL_N, RSV_VCL_N10, RSV_VCL_N12, 또는 RSV_VCL_N14와 동일한 nal_unit_type을 가진 코딩된 픽처는 TemporalId의 그 값을 가진 다른 픽처의 디코딩 가능성에 영향을 미치지 않고 폐기될 수 있다.
트레일링 픽처는 출력 순서에서 연관된 RAP 픽처에 뒤이어 나오는 픽처라고 정의될 수 있다. 트레일링 픽처인 어느 픽처도 RADL_N, RADL_R, RASL_N 또는 RASL_R과 동일한 nal_unit_type를 갖지 않는다. 리딩 픽처인 임의의 픽처는 디코딩 순서에서, 동일 RAP 픽처와 연관된 모든 트레일링 픽처에 선행하는 것으로 제약될 수 있다. BLA_W_DLP 또는 BLA_N_LP와 동일한 nal_unit_type를 가진 BLA 픽처와 연관된 어느 RASL 픽처도 비트스트림에서 존재하지 않는다. BLA_N_LP와 동일한 nal_unit_type를 가진 BLA 픽처와 연관된 또는 IDR_N_LP와 동일한 nal_unit_type를 가진 IDR 픽처와 연관된 어느 RADL 픽처도 비트스트림에서 존재하지 않는다. CRA 또는 BLA 픽처와 연관된 임의의 RASL 픽처는 출력 순서에서 CRA 또는 BLA 픽처와 연관된 임의의 RADL 픽처에 선행하는 것으로 제한될 수 있다. CRA 픽처와 연관된 임의의 RASL 픽처는 디코딩 순서에서 CRA 픽처에 선행하는 임의의 다른 RAP 픽처에 출력 순서에서 뒤이어 나오는 것으로 제약될 수 있다.
HEVC에는 시간적 서브계층 스위칭 포인트(temporal sub-layer switching point)를 표시하는데 사용될 수 있는 TSA 또는 STSA 픽처 타입이라는 두 가지 픽처 타입이 있다. 만일 N까지의 TemporalId를 갖는 시간 서브계층이 TSA 또는 STSA 픽처(배타적임) 및 TSA 또는 STSA 픽처가 N+1과 같은 TemporalId를 가질 때까지 디코딩되었다면, TSA 또는 STSA 픽처는 N+1과 같은 TemporalId를 갖는 (디코딩 순서에서) 모든 후속 픽처가 디코딩될 수 있게 한다. TSA 픽처 타입은 TSA 픽처 자체 및 디코딩 순서에서 TSA 픽처에 뒤이은 동일한 서브계층에 속한 모든 픽처에 제약을 부과할 수 있다. 이러한 픽처 중 어느 픽처도 디코딩 순서에서 TSA 픽처에 선행하는 동일한 서브계층에 속한 모든 픽처로부터 인터 예측을 사용하는 것이 가능하지 않다. TSA의 정의에 따르면 디코딩 순서에서 TSA 픽처에 뒤이은 상위의 서브계층에 속한 픽처에도 또한 제약을 부과할 수 있다. 이러한 픽처 중 어느 픽처도 그 픽처가 TSA 픽처와 동일 또는 상위의 서브계층에 속한다면 디코딩 순서에서 TSA 픽처에 선행하는 픽처를 참조하지 않는다. TSA 픽처는 0보다 큰 TemporalId를 갖는다. STSA는 TSA 픽처와 유사하지만 디코딩 순서에서 STSA 픽처에 뒤이은 상위의 서브계층에 속한 픽처에 제약을 부과하지 않으며 그래서 STSA 픽처가 상주하는 서브계층으로만 업-스위칭이 가능해진다.
논-VCL(non-VCL) NAL 유닛은 예를 들면, 다음과 같은 타입, 즉 시퀀스 파라미터 세트(sequence parameter set), 픽처 파라미터 세트, 보충 강화 정보(supplemental enhancement information, SEI) NAL 유닛, 액세스 유닛 구분자(access unit delimiter), 시퀀스 NAL 유닛의 끝, 스트림 NAL 유닛의 끝, 또는 필러 데이터(filler data) NAL 유닛 중 한 가지 타입일 수 있다. 파라미터 세트는 디코딩된 픽처의 재구성을 위해 필요할 수 있는데 반해, 다른 논-VCL NAL 유닛 중 많은 유닛은 디코딩된 샘플 값의 재구성에는 필요하지 않다.
코딩된 비디오 시퀀스를 통해 변동 없이 남아 있는 파라미터는 시퀀스 파라미터 세트에 포함된다. 디코딩 프로세스에 의해 필요할 수 있는 파라미터 이외에, 시퀀스 파라미터 세트는 선택사양으로 비디오 유용성 정보(video usability information, VUI)를 포함할 수 있는데, 이 정보는 버퍼링, 픽처 출력 타이밍, 렌더링, 및 자원 예약에 중요할 수 있는 파라미터를 포함한다. H.264/AVC에는 시퀀스 파라미터 세트를 운반하는 세 가지 NAL 유닛, 즉 시퀀스 내에 H.264/AVC VCL NAL 유닛의 모든 데이터가 담긴 시퀀스 파라미터 세트 NAL 유닛과, 보조 코딩된 픽처(auxiliary coded picture)의 데이터가 담긴 시퀀스 파라미터 세트 확장 NAL 유닛과, MVC 및 SVC VCL NAL 유닛의 서브세트 시퀀스 파라미터 세트가 명시되어 있다. HEVC 표준에서, 시퀀스 파라미터 세트 RBSP는 하나 이상의 픽처 파라미터 세트 RBSP 또는 버퍼링 주기 SEI 메시지가 담긴 하나 이상의 SEI NAL 유닛에 의해 참조될 수 있는 파라미터를 포함한다. 픽처 파라미터 세트는 여러 코딩된 픽처에서 변동되지 않을 것 같은 그러한 파라미터를 포함한다. 픽처 파라미터 세트 RBSP는 하나 이상의 코딩된 픽처의 코딩된 슬라이스 NAL 유닛에 의해 참조될 수 있는 파라미터를 포함할 수 있다.
여러 코딩된 슬라이스에서 변경되지 않을 것 같지만, 예를 들면 각 픽처 또는 몇 개의 각 픽처마다 변할 수 있는 파라미터를 포함하는 적응 파라미터 세트(Adaptation Parameter Set, APS)가 HEVC 용도로 제안되었으나, 결국 표준으로 채택되지 못했다. APS 신택스 구조는 양자화 행렬(quantization matrices, QM), 적응적 샘플 옵셋(adaptive sample offset, SAO), 적응적 루프 필터링(adaptive loop filtering, ALF), 및 디블록킹 필터링(deblocking filtering)과 관련된 파라미터 또는 신택스 요소를 포함한다. APS는 또한 NAL 유닛일 수 있으며 임의의 다른 NAL 유닛으로부터 참조 또는 예측 없이 코딩될 수 있다. aps_id 신택스 요소라고 지칭되는 식별자는 APS NAL 유닛에 포함되며, 특정 APS를 참조하도록 슬라이스 헤더에 포함되어 사용된다. APS 신택스 구조는 ALF 파라미터를 포함하고 있을 뿐일 수 있다.
HEVC 표준은 또한 비디오 파라미터 세트(video parameter set, VPS) NAL 유닛을 포함한다. 비디오 파라미터 세트 RBSP는 하나 이상의 시퀀스 파라미터 세트 RBSP에 의해 참조될 수 있는 파라미터를 포함할 수 있다.
비디오 파라미터 세트(video parameter set, VPS), 시퀀스 파라미터 세트(sequence parameter set, SPS), 그리고 픽처 파라미터 세트(picture parameter set, PPS) 간의 관계 및 계층은 다음과 같이 설명될 수 있다. VPS는 파라미터 세트 계층 및 스케일러빌리티 및/또는 3DV의 컨텍스트에서 SPS보다 한 레벨 위에 상주한다. VPS는 코딩된 전체 비디오 시퀀스에서 모든 (스케일러빌리티 또는 뷰) 계층 전반의 모든 슬라이스에 공통적인 파라미터를 포함할 수 있다. SPS는 코딩된 전체 비디오 시퀀스에서 특정 (스케일러빌리티 또는 뷰) 계층 내 모든 슬라이스에 공통적이고 다중 (스케일러빌리티 또는 뷰) 계층에 의해 공유될 수 있는 파라미터를 포함한다. PPS는 특정한 계층 표현(하나의 액세스 유닛에서 하나의 스케일러빌리티 또는 뷰 계층의 표현) 내 모든 슬라이스에 공통적이고 다중 계층 표현 내 모든 슬라이스에 의해 공유될 것 같은 파라미터를 포함한다.
VPS는 비트스트림에서 계층들의 디펜던시 관계에 관한 정보를 제공할 뿐만 아니라, 코딩된 전체 비디오 시퀀스에서 모든 (스케일러빌리티 또는 뷰) 계층 전반의 모든 슬라이스에 적용 가능한 다른 많은 정보를 제공할 수 있다. HEVC의 스케일러블 확장에서, VPS는 예를 들면, NAL 유닛 헤더로부터 도출되는 LayerId 값의 예를 들면, SVC 및 MVC와 유사하게 정의된 계층에 대한 dependency_id, quality_id, view_id, 및 depth_flag에 대응하는, 하나 이상의 스케일러빌리티 차원 값과의 매핑을 포함할 수 있다. VPS는 하나 이상의 계층에 대한 프로파일 및 레벨 정보를 포함할 뿐만 아니라, 계층 표현의 (소정의 Temporal_id 값의 그리고 그 이하의 VCL NAL 유닛으로 이루어지는) 하나 이상의 시간 서브계층에 대한 프로파일 및/또는 레벨을 포함할 수 있다.
H.264/AVC 및 HEVC 신택스는 파라미터 세트의 많은 인스턴스를 가능하게 하며, 각각의 인스턴스는 고유한 식별자로 식별된다. 파라미터 세트에 필요한 메모리 사용을 한정하기 위해, 파라미터 세트 식별자에 대한 값의 범위는 한정되었다. H.264/AVC 및 HEVC 표준에서, 각각의 슬라이스 헤더는 슬라이스를 포함하는 픽처를 디코딩하기 위해 가동하는 픽처 파라미터 세트의 식별자를 포함하며, 각각의 픽처 파라미터 세트는 작용하는 시퀀스 파라미터 세트의 식별자를 포함한다. 따라서, 픽처 및 시퀀스 파라미터 세트의 전송은 슬라이스의 전송과 정확하게 동기화되어야 하는 것은 아니다. 그 대신, 작용하는 시퀀스 및 픽처 파라미터 세트는 이들이 참조되기 전 어느 때라도 수신되면 그것으로 충분하며, 이로써 슬라이스 데이터를 위해 사용된 프로토콜과 비교하여 더욱 신뢰할 수 있는 전송 메커니즘을 이용하여 파라미터 세트의 "대역외(out-of-band)" 전송이 가능해진다. 예를 들면, 파라미터 세트는 실시간 전송 프로토콜(Real-time Transport Protocol, RTP) 세션의 세션 서술(session description)에서 파라미터로서 포함될 수 있다. 파라미터 세트가 대역 내(in-band) 전송되면, 파라미터 세트는 오류 강인성을 개선하기 위해 반복 전송될 수 있다.
파라미터 세트는 슬라이스로부터 또는 다른 작용 중인 파라미터 세트로부터, 또는 일부 사례에서는 버퍼링 주기 SEI 메시지와 같은 다른 신택스 구조로부터 참조함으로써 활성화될 수 있다.
SEI NAL 유닛은 하나 이상의 SEI 메시지를 포함하는데, 이 SEI 메시지는 출력 픽처를 디코딩하는데 필요하지 않고, 픽처 출력 타이밍, 렌더링, 오류 검출, 오류 은닉, 및 자원 예약과 같은 관련된 프로세스에서 지원할 수 있다. H.264/AVC 및 HEVC에서는 여러 SEI 메시지가 명시되어 있으며, 사용자 데이터 SEI 메시지는 조직 및 회사가 자체적인 사용을 위해 SEI 메시지를 명시할 수 있게 한다. H.264/AVC 및 HEVC은 명시된 SEI 메시지에 대한 신택스 및 시맨틱을 포함하지만, 수신 측에서 이 메시지를 다루기 위한 어느 프로세스도 정의되어 있지 않다. 따라서, 인코더는 SEI 메시지를 생성할 때 H.264/AVC 표준 또는 HEVC 표준을 따르는 것이 필요하며, H.264/AVC 표준 또는 HEVC 표준에 순응하는 디코더는 각기 출력 순서 순응성에 맞추어 SEI 메시지를 처리하는 것이 필요하지 않다. H.264/AVC 및 HEVC에서 SEI 메시지의 신택스 및 시맨틱을 포함하는 이유 중 하나는 여러 시스템 사양들이 보충 정보를 동일하게 해석할 수 있게 하고 그래서 상호작용할 수 있게 해주기 위함이다. 이것은 시스템 사양이 인코딩 측 및 디코딩 측에서 모두 특정 SEI 메시지의 사용을 필요로 할 수 있고, 부가적으로는 특정 SEI 메시지를 수신 측에서 다루기 위한 프로세스가 명시될 수 있도록 하기 위함이다.
코딩된 픽처는 픽처의 코딩된 표현이다. H.264/AVC에서 코딩된 픽처는 픽처를 디코딩하는데 필요한 VCL NAL 유닛을 포함한다. H.264/AVC에서, 코딩된 픽처는 기본 코딩된 픽처(primary coded picture) 또는 중복 코딩된 픽처(redundant coded picture)일 수 있다. 기본 코딩된 픽처는 유효한 비트스트림의 디코딩 프로세스에서 사용되는데 반해, 중복 코딩된 픽처는 기본 코딩된 픽처가 성공적으로 디코딩될 수 없을 때 디코딩만이라도 되어야 하는 중복 표현이다. HEVC에서, 아무런 중복 코딩된 픽처도 명시되어 있지 않았다.
H.264/AVC에서, 액세스 유닛은 기본 코딩된 픽처 및 이와 연관된 NAL 유닛을 포함한다. HEVC에서, 액세스 유닛은 명시된 분류 규칙에 따라서 서로 연관된 한 세트의 NAL 유닛으로서 정의되고, 디코딩 순서에서 연속하며, 올바르게 코딩된 하나의 픽처를 포함한다. H.264/AVC에서, 액세스 유닛 내에서 NAL 유닛의 출현 순서는 다음과 같이 제한된다. 선택사양의 액세스 유닛 구분자 NAL 유닛은 액세스 유닛의 시작을 표시할 수 있다. 이것 다음에는 0개 이상의 SEI NAL 유닛이 이어진다. 기본 코딩된 픽처의 코딩된 슬라이스는 다음에 나온다. H.264/AVC에서, 기본 코딩된 픽처의 코딩된 슬라이스 다음에는 0개 이상의 중복 코딩된 픽처의 코딩된 슬라이스가 이어질 수 있다. 중복 코딩된 픽처는 픽처의 코딩된 표현 또는 픽처의 일부이다. 중복 코딩된 픽처는 기본 코딩된 픽처가 예를 들어 전송시 손실 또는 물리적 저장 매체의 손상으로 인해 디코더에서 수신되지 않는 경우에 디코딩될 수 있다.
H.264/AVC에서, 액세스 유닛은 또한 보조 코딩된 픽처를 포함할 수 있는데, 이 보조 코딩된 픽처는 기본 코딩된 픽처를 보충하며 그리고 예를 들면 디스플레이 프로세스에서 사용될 수 있는 픽처이다. 보조 코딩된 픽처는 예를 들면 디코딩된 픽처 내 샘플의 투명도(transparency level)를 명시하는 알파 채널(alpha channel) 또는 알파 평면(alpha plane)으로서 사용될 수 있다. 알파 채널 또는 알파 평면은 적어도 부분적으로 투명해지는 픽처를 서로의 상단에 겹침으로써 출력 픽처가 형성되는 계층화된 구성 또는 렌더링 시스템에서 사용될 수 있다. 보조 코딩된 픽처는 단색의 중복 코딩된 픽처와 동일한 신택스 및 시맨틱 제약을 갖는다. H.264/AVC에서, 보조 코딩된 픽처는 기본 코딩된 픽처와 동일한 개수의 매크로블록을 포함한다.
H.264/AVC에서, 코딩된 비디오 시퀀스는 IDR 액세스 유닛을 포함하여 이 유닛부터 다음 IDR 액세스 유닛을 제외한 다음 IDR 유닛까지, 또는 비트스트림의 끝까지의, 어느 것이든 먼저 나오는, 디코딩 순서에서 연속하는 액세스 유닛의 시퀀스인 것으로 정의된다. HEVC 표준에서, 디코딩 순서에서, 비트스트림의 첫 액세스 유닛인 CRA 액세스 유닛, IDR 액세스 유닛 또는 BLA 액세스 유닛, 그 뒤를 이어 모든 후속 액세스 유닛까지는 포함하되 임의의 후속 IDR 또는 BLA 액세스 유닛을 포함하지 않는 0개 이상의 논-IDR 및 논-BLA 액세스 유닛으로 이루어지는 액세스 유닛의 시퀀스인 것으로 정의된다.
픽처 그룹(group of pictures, GOP) 및 그의 특성은 다음과 같이 정의될 수 있다. GOP는 이전의 어느 픽처가 디코딩되었는지에 무관하게 디코딩될 수 있다. 오픈 GOP(open GOP)는 오픈 GOP의 초기 인트라 픽처로부터 디코딩이 시작할 때 출력 순서에서 초기 인트라 픽처에 선행하는 픽처가 올바르게 디코딩될 수 없을 수도 있는 그런 픽처 그룹이다. 다시 말해서, 오픈 GOP의 픽처는 (인터 예측에서) 이전의 GOP에 속하는 픽처를 참조할 수 있다. H.264/AVC 디코더는 H.264/AVC 비트스트림에서 복구 지점(recovery point) SEI 메시지로부터 오픈 GOP를 시작하는 인트라 픽처를 인식할 수 있다. HEVC 디코더는 오픈 GOP를 시작하는 인트라 픽처를 인식할 수 있는데, 이는 특정 NAL 유닛 타입인 CRA NAL 유닛 타입이 그의 코딩된 슬라이스에 사용되기 때문이다. 클로즈드 GOP(closed GOP)는 클로즈드 GOP의 초기 인트라 픽처로부터 디코딩이 시작할 때 모든 픽처가 올바르게 디코딩될 수 있는 그런 픽처 그룹이다. 다시 말해서, 클로즈드 GOP 내 어느 픽처도 이전 GOP 내 어느 픽처도 참조하지 않는다. H.264/AVC및 HEVC에서, 클로즈드 GOP는 IDR 액세스 유닛으로부터 시작한다. 결과로서, 클로즈드 GOP 구조는 오픈 GOP 구조와 비교하여 더 많은 오류 내성 잠재성을 갖지만, 그 대가로 아마도 압축 효율이 낮아진다. 오픈 GOP 코딩 구조는 참조 픽처를 선택할 때 융통성이 더 많으므로 압축 시 잠재적으로 더 효과적이다.
H.264/AVC 및 HEVC의 비트스트림 신택스는 특정 픽처가 임의의 다른 픽처의 인터 예측을 위한 참조 픽처인지를 표시한다. 임의의 코딩 타입(I, P, B)의 픽처는 H.264/AVC 및 HEVC에서 참조 픽처 또는 비-참조 픽처일 수 있다.
H.264/AVC은 디코더에서 메모리 소비량을 제어하기 위하여 디코딩된 참조 픽처를 표기하는 프로세스를 명시하고 있다. 인터 예측에 사용된, M이라 불리는, 참조 픽처의 최대 수는 시퀀스 파라미터 세트에서 정해진다. 참조 픽처가 디코딩될 때, 참조 픽처는 "참조용으로 사용됨"이라고 표기된다. 참조 픽처가 "참조용으로 사용됨"이라 표기된 M개 픽처보다 많이 디코딩되었다면, 적어도 하나의 픽처는 "참조용으로 사용되지 않음"이라고 표기된다. 디코딩된 참조 픽처를 표기하는 동작은 적응적 메모리 제어(adaptive memory control) 및 슬라이딩 윈도우(sliding window)라는 두 가지 방식이 있다. 디코딩된 참조 픽처를 표기하는 동작 모드는 픽처 단위로 선택된다. 적응적 메모리 제어는 픽처를 "참조용으로 사용되지 않음"이라고 표기하는 명시적 시그널링을 가능하게 하며 또한 장기간 인덱스를 단기간 참조 픽처(short-term reference picture)에 할당할 수도 있다. 적응적 메모리 제어는 비트스트림에서 메모리 관리 제어 동작(memory management control operation, MMCO) 파라미터의 존재를 필요로 한다. MMCO 파라미터는 디코딩된 참조 픽처 표기 신택스 구조에 포함될 수 있다. 만일 슬라이딩 윈도우 동작 모드가 사용 중에 있고 M개 픽처가 "참조용으로 사용됨"이라고 표기되어 있으면, "참조용으로 사용됨"이라 표기된 단기간 참조 픽처 중 처음 디코딩된 픽처이었던 단기간 참조 픽처는 "참조용으로 사용되지 않음"이라고 표기된다. 다시 말해서, 슬라이딩 윈도우 동작 모드는 결과적으로 단기간 참조 픽처들끼리 선입선출 버퍼링 동작을 수행하게 만든다.
H.264/AVC에서 메모리 관리 제어 동작 중 한 동작은 현재 픽처를 제외한 모든 참조 픽처를 "참조용으로 사용되지 않음"이라고 표기되게 한다. 순간 디코딩 리플레시(instantaneous decoding refresh, IDR) 픽처는 인트라 코딩된 슬라이스만을 가지고 있으며 참조 픽처의 유사한 "리셋"을 일으킨다.
HEVC표준에서, 참조 픽처 표기 신택스 구조 및 관련된 디코딩 프로세스는 사용되지 않고, 대신 유사한 목적을 위해 참조 픽처 세트(reference picture set, RPS) 신택스 구조 및 디코딩 프로세스가 사용된다. 픽처에 대해 유효한 또는 작용 중인 참조 픽처 세트는 픽처에 대해 참조로서 사용된 모든 참조 픽처 및 디코딩 순서에서 임의의 후속 픽처에 대해 "참조용으로 사용됨"이라고 표기된 채로 유지되는 모든 참조 픽처를 포함한다. 참조 픽처 세트에는 RefPicSetStCurr0, RefPicSetStCurr1, RefPicSetStFoll0, RefPicSetStFoll1, RefPicSetLtCurr, 및 RefPicSetLtFoll이라고 지칭되는 여섯 서브세트가 있다. 여섯 서브세트의 주석은 다음과 같다. "Curr"은 현재 픽처의 참조 픽처 리스트에 포함되어 있는 참조 픽처를 말하며 그래서 현재 픽처의 인터 예측 참조로서 사용될 수 있다. "Foll"은 현재 픽처의 참조 픽처 리스트에는 포함되어 있지 않고 디코딩 순서에서 후속 픽처에서 참조 픽처로서 사용될 수 있는 참조 픽처를 말한다. "St"는 단기간 참조 픽처를 말하는 것으로, 이 픽처는 일반적으로 이들의 POC 값의 특정 개수의 최하위 비트를 통해 식별될 수 있다. "Lt"는 장기간 참조 픽처(long-term reference picture)를 말하는 것으로, 이 픽처는 특별하게 식별되며 일반적으로 언급된 특정 개수의 최하위 비트로 표현될 수 있는 것보다 더 큰 차의 현재 픽셀에 대한 POC 값을 갖는다. "0"는 현재 픽처의 POC 값보다 작은 POC 값을 갖는 참조 픽처를 말한다. "1"은 현재 픽처의 POC 값보다 큰 POC 값을 갖는 참조 픽처를 말한다. RefPicSetStCurr0, RefPicSetStCurr1, RefPicSetStFoll0, 및 RefPicSetStFoll1는 일괄하여 참조 픽처 세트의 단기간 서브세트라고 지칭된다. RefPicSetLtCurr 및 RefPicSetLtFoll는 일괄하여 참조 픽처 세트의 장기간 서브세트라고 지칭된다.
HEVC 표준에서, 참조 픽처 세트는 시퀀스 파라미터 세트에서 명시될 수 있으며 참조 픽처 세트에 붙은 인덱스를 통해 슬라이스 헤더에서 사용하게 될 수 있다. 참조 픽처 세트는 또한 슬라이스 헤더에서도 명시될 수 있다. 참조 픽처 세트의 장기간 서브세트는 일반적으로 슬라이스 헤더에서만 명시되며, 반면 동일 참조 픽처 세트의 단기간 서브세트는 픽처 파라미터 세트 또는 슬라이스 헤더에서 명시될 수 있다. 참조 픽처 세트는 독립적으로 코딩될 수 있거나 다른 참조 픽처 세트로부터 예측될 수 있다(인터-RPS 예측이라고 알려져 있음). 참조 픽처 세트가 독립적으로 코딩될 때, 신택스 구조는 상이한 타입의 참조 픽처들, 즉 현재 픽처보다 낮은 POC 값을 가진 단기간 참조 픽처, 현재 픽처보다 높은 POC 값을 가진 단기간 참조 픽처, 및 장기간 참조 픽처를 전체적으로 반복하는 세 개까지의 루프를 포함한다. 각각의 루프 엔트리는 "참조용도로 사용됨"이라고 표기되는 픽처를 명시한다. 일반적으로, 픽처는 차분 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은 참조 픽처 표기를 위한 그리고 출력 재배열을 위한 두 가지 목적에 상당한 융통성을 제공하고 있으므로, 참조 픽처 버퍼링 및 출력 픽처 버퍼링을 위한 별개의 버퍼는 메모리 자원을 낭비할 수 있다. 그래서, DPB는 참조 픽처 및 출력 재배열을 위한 통합된 디코딩된 픽처 버퍼링 프로세스를 포함할 수 있다. 디코딩된 픽처는 이 픽처가 더 이상 참조로서 사용되지 않고 출력할 필요 없을 때 DPB로부터 제거될 수 있다.
H.264/AVC 및 HEVC의 많은 코딩 모드에서, 인터 예측을 위한 참조 픽처는 참조 픽처 리스트에 붙은 인덱스로 표시된다. 인덱스는 통상적으로 인덱스가 작을 수록 대응하는 신택스 요소가 더 짧은 값을 갖는 가변 길이 코딩을 이용하여 코딩된다. H.264/AVC 및 HEVC에서, 두 참조 픽처 리스트(참조 픽처 리스트 0 및 참조 픽처 리스트 1)는 각각의 양방향-예측 (B) 슬라이스마다 생성되며, 하나의 참조 픽처 리스트(참조 픽처 리스트 0)는 각각의 인터-코딩된 (P) 슬라이스마다 형성된다.
참조 픽처 리스트 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을 포함하도록 초기화될 수 있다. 초기의 참조 픽처 리스트는 참조 픽처 리스트 수정 신택스 구조를 통해 수정될 수 있는데, 이 구조에서 초기의 참조 픽처 리스트 내 픽처는 리스트의 엔트리 인덱스를 통해 식별될 수 있다.
비디오 인코딩 및/또는 비디오 디코딩할 때 적용될 수 있는 상이한 타입의 예측을 분류하는 방법은 예측을 샘플 값에 적용할지 또는 (디)코딩 파라미터에 적용할지를 고려하는 것이다.
샘플 예측에서, 특정 픽처 영역 또는 "블록" 내 픽셀 또는 샘플 값이 예측된다. 이러한 픽셀 또는 샘플 값은 예를 들면, 다음과 같은 방법 중 한 가지 이상의 방법을 이용하여 예측될 수 있다.
- 움직임 보상 메커니즘 (이 메커니즘은 시간 예측 또는 움직임 보상 시간 예측 또는 움직임 보상 예측(motion-compensated prediction) 또는 MCP라고도 지칭될 수 있음). 움직임 보상 메커니즘은 코딩되는 블록에 밀접하게 대응하는 이전에 인코딩된 비디오 프레임 중 한 프레임 내 영역을 찾아 표시하는 과정을 포함한다.
- 인터-뷰 예측. 인터-뷰 예측은 코딩되는 블록에 밀접하게 대응하는 이전에 인코딩된 뷰 컴포넌트 중 한 뷰 컴포넌트 내 영역을 찾아 표시하는 과정을 포함한다.
- 뷰 합성 예측. 뷰 합성 예측은 재구성된/디코딩된 범위 정보에 기초하여 예측 블록이 도출되는 예측 블록 또는 이미지 영역을 합성하는 과정을 포함한다.
- 인터-계층 예측. 인터-계층 예측은 소위 SVC의 IntraBL(base layer) 모드와 같이 재구성된/디코딩된 샘플을 이용한다.
- 인터-계층 잔차 예측. 인터-계층 잔차 예측에서 예를 들면 참조 계층의 코딩된 잔차 또는 재구성된/디코딩된 참조 계층 픽처와 대응하는 재구성된/디코딩된 강화 계층 픽처와의 차이로부터 도출된 잔차가 현재의 강화 계층 블록의 잔차 블록을 예측하는데 사용될 수 있다. 잔차 블록은 예를 들면 움직임 보상 예측 블록에 더해져서 현재 강화 계층 블록의 최종 예측 블록을 구할 수 있다. 잔차 예측은 때로는 샘플 및 신택스 예측 이외의 별개의 방식의 예측으로 취급될 수 있다.
- 인트라 예측. 인트라 예측에서는 공간 영역 관계를 찾아 표시하는 과정을 포함하는 공간 메커니즘에 의해 픽셀 또는 샘플 값이 예측될 수 있다.
파라미터 예측이라고도 지칭될 수 있는 신택스 예측에서, 신택스 요소 및/또는 신택스 요소 값 및/또는 신택스 요소로부터 도출되는 변수는 앞서 (디)코딩된 신택스 요소 및/또는 앞서 도출된 변수로부터 예측된다. 신택스 예측의 한정하지 않는 예는 아래와 같이 제공된다.
- 움직임 벡터 예측에서, 인터 및/또는 인터뷰 예측을 위한 움직임 벡터는 블록별 예측된 움직임 벡터에 대해 상이하게 코딩될 수 있다. 많은 비디오 코덱에서, 예측된 움직임 벡터는 미리 정의된 방법으로, 예를 들면, 인접한 블록의 인코딩된 또는 디코딩된 움직임 벡터의 중간 값을 계산함으로써 생성된다. 때로는 최신 움직임 벡터 예측(advanced motion vector prediction, AMVP)이라고 지칭되는 움직임 벡터 예측을 생성하는 다른 방법은 시간 참조 픽처 내 인접 블록 및/또는 동일 위치에 있는 블록으로부터 후보 예측 리스트를 만들고 선택한 후보를 움직임 벡터 예측기로서 시그널링하는 것이다. 움직임 벡터 값을 예측하는 것 이외에도, 이전에 코딩된/디코딩된 픽처의 참조 인덱스가 예측될 수 있다. 참조 인덱스는 통상적으로 시간 참조 픽처 내 인접 블록 및/또는 동일 위치에 있는 블록으로부터 예측될 수 있다. 움직임 벡터의 차분 코딩은 슬라이스 경계에서 전반적으로 불능화된다.
- 예를 들어 CTU로부터 CU로 그리고 하향하여 PU로의 블록 분할이 예측될 수 있다.
- 필터 파라미터 예측에서, 예를 들면 샘플 적응적 옵셋을 위한 필터링 파라미터가 예측될 수 있다.
비디오 인코딩 및/또는 비디오 디코딩할 때 적용될 수 있는 상이한 예측 타입을 분류하는 다른 방법은 어느 도메인 또는 스케일러빌리티 타입에서 예측이 겹쳐지는지를 고려하는 것이다. 이러한 분류는 때로는 예측 방향이라고도 지칭될 수 있는 다음과 같은 예측 타입 중 하나 이상으로 분류되게 할 수 있다.
- 예를 들면, 보통 같은 스케일러빌리티 계층, 뷰 및 컴포넌트 타입(텍스처 또는 깊이)의 앞의 픽처로부터 샘플 값 또는 움직임 벡터의 시간적 예측.
- 보통 같은 시간 순간 또는 액세스 유닛 및 동일한 컴포넌트 타입의 뷰 컴포넌트들 사이에서 일어나는 예측을 말하는 인터-뷰 예측(크로스-뷰 예측(cross-view prediction)이라고도 지칭될 수 있음).
- 보통 같은 시간 순간의, 같은 컴포넌트 타입의, 그리고 같은 뷰의 계층들 사이에서 일어나는 예측을 말하는 인터-계층 예측.
- 인터-컴포넌트 예측은 디코딩 프로세스에서 사용되는 신택스 요소 값, 샘플 값, 변수 값, 또는 한 가지 타입의 컴포넌트 픽처로부터 다른 타입의 컴포넌트 픽처에 이르기까지 어떤 유사한 것의 예측을 포함하는 것이라고 정의될 수 있다. 예를 들면, 인터-컴포넌트 예측은 깊이 뷰 컴포넌트로부터 텍스처 뷰 컴포넌트를 예측하는 것 또는 그 반대의 것을 포함할 수 있다.
이전에 코딩된 이미지로부터의 이미지 정보를 이용하는 예측 접근 방법은 인터 예측 방법이라고도 불릴 수 있다. 인터 예측은 때로는 움직임 보상 시간 예측을 포함할 뿐이라고 간주될 수 있지만, 때로는 샘플의 재구성된/디코딩된 블록이 예측 소스로서 사용되며, 그래서 예를 들면 통상적인 인터-뷰 예측을 비롯한 모든 형태의 예측을 포함하는 것이라고 간주될 수 있다. 인터 예측은 오로지 샘플 예측만을 포함하는 것으로 간주될 수 있지만 대안으로 샘플 예측 및 신택스 예측 둘 다를 포함하는 것으로 간주될 수 있다. 신택스 및 샘플 예측의 결과로서, 샘플의 픽셀의 예측된 블록이 구해질 수 있다.
동일 이미지 내의 이미지 정보를 이용하는 예측 접근 방법은 또한 인트라 예측 방법이라고도 불릴 수 있다. 인트라 예측은 오로지 샘플 예측만을 포함하는 것으로 간주될 수 있지만, 대안으로 샘플 예측 및 신택스 예측 둘 다를 포함하는 것으로 간주될 수 있다.
만일 예측된 변수 값 및/또는 예측 블록과 같은 예측이 임의의 형태의 예측 오차 또는 잔차 코딩을 이용하여 인코더에 의해 순화되지 않으면, 예측은 상속(inheritance)이라고 지칭될 수 있다.
고립된 영역(isolated region)이라고 알려진 코딩 기술은 인-픽처 예측 및 인터 예측을 함께 한정하는 것을 기초로 한다. 픽처에서 고립된 영역은 임의의 매크로블록(또는 유사한 것) 위치를 가질 수 있으며, 픽처는 겹치지 않은 0개 이상의 고립된 영역을 가질 수 있다. 만일 있다면, 잔재 영역(leftover region)은 픽처의 임의의 고립된 영역에 의해 포함되지 않는 픽처의 구역이다. 고립된 영역을 코딩할 때, 적어도 몇 가지 형태의 인-픽처 예측이 그의 경계 전반에서 불능화된다. 잔재 영역은 같은 픽처의 고립된 영역으로부터 예측될 수 있다.
코딩된 고립된 영역은 같은 코딩된 픽처의 임의의 다른 고립된 영역 또는 잔재 영역이 존재하지 않아도 디코딩될 수 있다. 이것은 잔재 영역에 앞서 픽처의 모든 고립된 영역을 디코딩하는 것을 필요로 할 수 있다. 일부 구현예에서, 고립된 영역 또는 잔재 영역은 적어도 하나의 슬라이스를 포함한다.
고립된 영역들이 서로로부터 예측되는 픽처는 고립 영역 픽처 그룹으로 그룹화될 수 있다. 고립된 영역은 같은 고립 영역 픽처 그룹 내 다른 픽처에서 대응하는 고립된 영역으로부터 인터-예측될 수 있는데 반해, 다른 고립된 영역으로부터 인터 예측 또는 고립 영역 픽처 그룹 이외의 영역으로부터 인터 예측은 가능하지 않을 수 있다. 잔재 영역은 임의의 고립된 영역으로부터 인터-예측될 수 있다. 결합된 고립된 영역의 형상, 위치, 및 크기는 픽처로부터 고립 영역 픽처 그룹 내 픽처로 진화할 수 있다.
H.264/AVC 코덱에서 고립된 영역은 슬라이스 그룹에 기초하여 코딩될 수 있다. 매크로블록 위치를 슬라이스 그룹과 매핑하는 것은 픽처 파라미터 세트 내에 명시될 수 있다. H.264/AVC 신택스는 정적(static) 및 진화(evolving)라는 두 가지 형태로 분류될 수 있는 소정의 슬라이스 그룹 패턴을 코딩하는 신택스를 포함한다. 정적 슬라이스 그룹은 픽처 파라미터 세트가 유효하는 한 변동 없이 남아 있으며, 반면 진화 슬라이스 그룹은 픽처 파라미터 세트 내 대응하는 파라미터 및 슬라이스 헤더 내 슬라이스 그룹 변경 사이클 파라미터(slice group change cycle parameter)에 따라서 픽처 별로 바뀔 수 있다. 정적 슬라이스 그룹 패턴은 인터리빙 형태, 바둑판 형태, 장방형 형태, 및 자유 형태를 포함한다. 진화 슬라이스 그룹 패턴은 수평 와이프(horizontal wipe), 수직 와이프(vertical wipe), 박스-인(box-in), 및 박스-아웃(box-out) 패턴을 포함한다. 장방형 패턴 및 진화 패턴은 고립된 영역을 코딩하는데 특히 적합하며 아래에서 더 자세히 설명된다.
장방형 슬라이스 그룹 패턴의 경우, 희망하는 장방형의 개수는 픽처 영역 내에서 명시된다. 전경(foreground) 슬라이스 그룹은 대응하는 정방형 내에 있는 매크로블록 위치를 포함하지만, 초기에 명시된 슬라이스 그룹에 의해 이미 할당된 매크로블록 위치를 제외한다. 잔재 슬라이스 그룹은 전경 슬라이스 그룹에 포함되지 않은 매크로블록을 갖고 있다.
진화 슬라이스 그룹은 매크로블록 위치의 스캔 순서 및 픽처 당 매크로블록 개수에서 슬라이스 그룹의 크기의 변경 비율을 표시함으로써 명시된다. 각각의 코딩된 픽처는 (슬라이스 헤더에서 전달되는) 슬라이스 그룹 변경 사이클 파라미터와 연관된다. 변경 비율을 곱한 변경 사이클은 제 1 슬라이스 그룹 내 매크로블록의 개수를 표시한다. 제 2 슬라이스 그룹은 나머지의 매크로블록 위치를 갖고 있다.
H.264/AVC에서, 인-픽처 예측은 슬라이스 그룹 경계에서 불능화되는데, 이것은 슬라이스 그룹 경계가 슬라이스 경계에 있기 때문이다. 그러므로 각각의 슬라이스 그룹은 고립된 영역 또는 잔재 영역이다.
각각의 슬라이스 그룹은 픽처 내에서 식별 번호를 갖고 있다. 인코더는 인코딩되는 슬라이스 그룹과 동일한 식별 번호를 갖는 슬라이스 그룹에 속한 디코딩된 매크로블록을 인코더가 참조만 하는 방식으로 움직임 벡터를 한정할 수 있다. 인코더는 부분 픽셀 보간 시 소스 샘플의 범위가 필요하며 모든 소스 샘플이 특정한 슬라이스 그룹 내에 있어야 한다는 사실을 고려하여야 한다.
H.264/AVC 코덱은 디블록킹 루프 필터를 포함한다. 루프 필터링은 각각의 4x4 블록 경계에 적용되지만, 루프 필터링은 인코더에 의해 슬라이스 경계에서 턴 오프될 수 있다. 루프 필터링이 슬라이스 경계에서 턴 오프되면, 점진적인 랜덤 액세스를 수행할 때 디코더에서 완전 재구성된 픽처가 만들어질 수 있다. 그렇지 않으면, 재구성된 픽처는 복구 포인트 이후에도 콘텐츠가 불완전할 수 있다.
H.264/AVC 표준의 복구 포인트 SEI 메시지 및 움직임 제한된 슬라이스 그룹 세트 SEI 메시지는 몇몇 슬라이스 그룹이 제한된 움직임 벡터를 갖는 고립된 영역으로서 코딩된다는 것을 표시하는데 사용될 수 있다. 디코더는 예를 들면, 더 빠른 랜덤 액세스를 달성하기 위해 또는 잔재 영역을 무시함으로써 처리 시간을 절감하기 위해 그 정보를 활용할 수 있다.
HEVC에서 사용하기 위한 서브픽처 개념이, 예를 들면, 문서 JCTVC-I0356 <http://phenix.int-evry.fr/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I0356-v1.zip>에서 제안되었으며, 이 개념은 H.264/AVC의 장방형 고립 영역 또는 장방형 움직임 제한된 슬라이스 그룹과 유사하다. JCTVC-I0356에서 제안된 서브픽처 개념은 아래에서 설명되는데, 이 개념은 서브픽처가 아래에서 설명되는 것과 유사하게 정의되지만 동일하지는 않다는 것을 이해하여야 한다. 서브픽처 개념에서, 픽처는 미리 정의된 장방형 영역으로 분할된다. 각각의 서브픽처는 픽처를 구성하는 모든 서브픽처가 SPS, PPS 및 참조 픽처 세트와 같은 동일한 전역적 정보를 공유한다는 것을 제외하고는 독립적인 픽처로서 처리될 것이다. 서브픽처는 기하적으로는 타일과 유사하다. 이들의 특성은 다음과 같다: 서브픽처는 시퀀스 레벨에서 명시된 LCU-정렬된 장방형 영역이다. 픽처에서 서브픽처는 픽처의 서브픽처 래스터 스캔으로 스캔될 수 있다. 각 서브픽처는 새로운 슬라이스를 시작한다. 다수개의 타일이 한 픽처에 존재하면, 서브픽처 경계 및 타일 경계가 정렬될 수 있다. 서브픽처에는 전체적으로 어느 루프 필터링도 있을 수 없다. 서브픽처 이외로 어느 샘플 값 및 움직임 정보의 예측도 있을 수 없으며, 서브픽처 이외의 하나 이상의 샘플 값을 이용하여 도출되는 부분 샘플 위치에서 어느 샘플 값도 서브픽처 내 임의의 샘플을 인터 예측하는데 사용될 수 없다. 만일 움직임 벡터가 서브픽처 이외의 영역을 가리키면, 픽처 경계에 맞게 정의된 패딩 프로세스가 적용될 수 있다. LCU는 서브픽처가 하나보다 많은 타일을 갖고 있는 한 서브픽처 내에서 래스터 순서대로 스캔된다. 서브픽처 내 타일은 서브픽처의 타일 래스터 스캔으로 스캔된다. 타일은 픽처 당 하나의 디폴트 타일의 경우를 제외하고 서브픽처 경계를 교차할 수 없다. 픽처 레벨에서 이용 가능한 모든 코딩 메커니즘은 서브픽처 레벨에서 지원된다.
스케일러블 비디오 코딩은 하나의 비트스트림이 콘텐츠의 여러 가지 표현을 상이한 비트 레이트, 해상도, 및/또는 프레임 레이트로 포함하고 있을 수 있는 코딩 구조를 말한다. 이러한 경우에, 수신기는 그의 특성(예를 들면, 디스플레이 디바이스에 가장 어울리는 해상도)에 따라 원하는 표현을 추출할 수 있다. 대안으로, 서버 또는 네트워크 요소는 예를 들면, 네트워크 특성 또는 수신기의 처리 능력에 따라 수신기로 전송될 비트스트림의 일부분을 추출할 수 있다. 스케일러블 비트스트림은 이용할 수 있는 최저 품질의 비디오를 제공하는 "기본 계층" 및 하위 계층과 함께 수신되어 디코딩될 때 비디오 품질을 강화하는 하나 이상의 강화 계층으로 이루어질 수 있다. 강화 계층의 코딩 효율 개선하기 위하여, 그 계층의 코딩된 표현은 하위 계층에 의존할 수 있다. 예를 들면, 강화 계층의 움직임 및 모드 정보는 하위 계층으로부터 예측될 수 있다. 유사하게, 하위 계층의 픽셀 데이터는 강화 계층의 예측을 생성하기 위해 사용될 수 있다.
일부 스케일러블 비디오 코딩 방식에서, 비디오 신호는 베이스 계층과 하나 이상의 강화 계층으로 인코딩될 수 있다. 강화 계층은 시간 해상도(즉, 프레임 레이트), 공간 해상도, 또는 단순히 다른 계층이나 그 계층의 일부에 의해 표현되는 비디오 콘텐츠의 품질을 강화할 수 있다. 각각의 계층과 함께 그 계층의 모든 종속 계층은 특정한 공간 해상도, 시간 해상도 및 품질 레벨로 표현한 비디오 신호의 한가지 표현이다. 본 명세서에서, 발명자는 스케일러블 계층과 함께 그의 모든 종속 계층을 "스케일러블 계층 표현(scalable layer representation)"이라고 지칭한다. 스케일러블 계층 표현에 대응하는 스케일러블 비트스트림의 부분이 추출되고 디코딩되어 원 신호의 표현을 특정 충실도로 생성할 수 있다.
일부 코딩 표준은 스케일러블 비트 스트림을 생성할 수 있게 한다. 중요한 디코딩된 표현은 스케일러블 비트 스트림의 특정 부분만을 디코딩함으로써 생성될 수 있다. 스케일러블 비트 스트림은 예를 들면, 스트리밍 서버에서 미리 인코딩된 유니캐스트 스트림의 레이트 적응(rate adaptation)을 위해 그리고 단일 비트 스트림을 상이한 성능 및/또는 상이한 네트워크 조건을 가진 단말로 전송하기 위해 사용될 수 있다. 스케일러블 비디오 코딩의 일부 다른 사용 사례의 리스트는 2003년 3월 10일 내지 14일 태국 파타야에서 64th MPEG 미팅, ISO/IEC JTC1 SC29 WG11 (MPEG)의 출력 문서 N5540, "Applications and Requirements for Scalable Video Coding (스케일러블 비디오 코딩의 응용 및 요건)"에서 찾아볼 수 있다.
일부 사례에서, 인핸스먼트 계층의 데이터는, 특정 위치 다음에, 또는 심지어 임의의 위치에서도 절단될 수 있는데, 각각의 절단 위치에는 점차적으로 강화되는 시각 품질을 표현하는 부가 데이터가 포함될 수 있다. 그러한 스케일러빌리티는 화인-그레인드 (그래뉴러리티) 스케일러빌리티 (fine-grained (granularity) scalability, FGS)라고 지칭된다.
SVC는 인터-계층 예측 메커니즘을 이용하는데, 이 메커니즘에서 특정 정보는 현재 재구성된 계층 또는 다음 하위 계층과 다른 계층으로부터 예측될 수 있다. 인터-계층 예측될 수 있는 정보는 인트라 텍스처, 움직임 및 잔차 데이터를 포함한다. 인터-계층 움직임 예측은 블록 코딩 모드, 헤더 정보 등의 예측을 포함하는데, 여기서 하위 계층으로부터의 움직임은 상위 계층을 예측하는데 사용될 수 있다. 인트라 코딩하는 경우, 하위 계층의 주변 매크로블록으로부터 예측 또는 동일 위치에 있는 매크로블록으로부터 예측이 가능하다. 이러한 예측 기술은 초기에 코딩된 액세스 유닛으로부터의 정보를 이용하지 않으며, 그래서 인트라 예측 기술이라고 지칭된다. 또한, 하위 계층으로부터의 잔차 데이터는 현재 계층을 예측할 때도 이용될 수 있다.
스케일러블 비디오 (디)코딩은 단일 루프 디코딩(single-loop decoding)이라고 알려진 개념으로 실현될 수 있는데, 단일 루프 디코딩에서 디코딩된 참조 픽처는 디코딩되는 최상위 계층에 대해서만 재구성되는데 반해 하위 계층의 픽처는 전체적으로 디코딩될 수 없거나 인터 계층 예측에 이용한 후 폐기될 수 있다. 단일 루프 디코딩 시, 디코더는 재생하려는 스케일러블 계층("원하는 계층" 또는 "타겟 계층"이라 호칭함)에 대해서만 움직임 보상 및 전체적인 픽처 재구성을 수행하며, 그럼으로써 다중 루프 디코딩과 비교하여 볼 때 디코딩 복잡도를 크게 줄일 수 있다. 원하는 계층과 다른 모든 계층은 전체적으로 디코딩될 필요가 없는데, 이것은 코딩된 픽처 데이터 모두 또는 그 일부 데이터가 원하는 계층의 재구성에 필요하지 않기 때문이다. 그러나, (타겟 계층보다) 하위 계층은 인터-계층 움직임 예측과 같은 인터-계층 신택스 또는 파라미터를 예측하는데 사용될 수 있다. 게다가 또는 대안으로, 하위 계층은 인터-계층 인트라 예측에 사용될 수 있고 그래서 하위 계층의 인트라 코딩된 블록이 디코딩되어야 할 수 있다. 게다가 또는 대안으로, 인터-계층 잔차 예측이 적용될 수 있고, 이 경우 하위 계층의 잔차 정보는 타겟 계층을 디코딩하는데 사용될 수 있으며 잔차 정보는 디코딩되어야 하거나 재구성되어야 할 수 있다. 일부 코딩 구성에서, 단일 디코딩 루프는 대부분의 픽처를 디코딩하는데 필요한데 반해 제 2 디코딩 루프는 예측 참조로서 필요하지만 출력이나 디스플레이를 위한 것이 아닌, 소위 기본 표현(즉, 디코딩된 기본 계층 픽처)을 구성하는데 선택적으로 적용된다.
SVC는 단일 루프 디코딩의 사용을 가능하게 한다. 이것은 제한된 인트라 텍스처 예측 모드를 이용함으로써 가능할 수 있으며, 이에 따라서 인터-계층 인트라 텍스처 예측은 기본 계층의 대응 블록이 인트라-매크로블록(MB) 내부에 위치하는 매크로블록에 적용될 수 있다. 동시에, 베이스 계층에 있는 그러한 인트라-MB은 (예를 들면, 1이라는 신택스 요소 "constrained_intra_pred_flag"를 갖는) 제한된 인트라-예측을 사용한다. 단일 루프 디코딩에서, 디코더는 재생하려는 스케일러블 계층("원하는 계층" 또는 "타겟 계층"이라 오칭함)에 대해서만 움직임 보상 및 전체적인 픽처 재구성을 수행하며, 그럼으로써 디코딩 복잡도를 크게 줄일 수 있다. 원하는 계층과 다른 모든 계층은 전체적으로 디코딩될 필요가 없는데, 그 이유는 (인터-계층 인트라 텍스처 예측, 인터-계층 움직임 예측 또는 인터-계층 잔차 예측이든 아니든) 인터-계층 예측에 사용되지 않은 MB의 모든 데이터 또는 일부 데이터가 원하는 계층의 재구성에 필요하지 않기 때문이다.
단일의 디코딩 루프는 대부분의 픽처를 디코딩하는데 필요한데 반해, 제 2 디코딩 루프는 예측 참조로서 필요하지만 출력이나 디스플레이를 위해 필요하지 않으며, ("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 계층 픽처와 유사하게 상위-레벨 신택스 요소에 의해 표시된다.
SVC 초안에서 스케일러빌리티 구조는 세 가지의 신택스 요소, 즉 "temporal_id", "dependency_id" 및 "quality_id"를 특징으로 할 수 있다. 신택스 요소 "temporal_id"는 시간 스케일러빌리티 계층 또는 간접적으로는 프레임 레이트를 표시하는데 사용된다. 더 작은 최대 "temporal_id" 값의 픽처를 포함하는 스케일러블 계층 표현은 더 큰 최대 "temporal_id"의 픽처를 포함하는 스케일러블 계층 표현보다 작은 프레임 레이트를 갖는다. 특정 시간 계층은 전형적으로 하위 시간 계층(즉, "temporal_id" 값이 더 작은 시간 계층)에 좌우되지만 임의의 상위 시간 계층에는 좌우되지 않는다. 신택스 요소 "dependency_id"는 (앞에서도 언급한 바와 같이, SNR 및 공간 스케일러빌리티 둘 다를 포함하는) CGS 인터-계층 코딩 디펜던시 계층을 표시하는데 사용된다. 임의의 시간 레벨 위치에서, "dependency_id" 값이 더 작은 픽처는 "dependency_id" 값이 더 큰 픽처를 코딩하기 위해 인터-계층 예측에 사용될 수 있다. 신택스 요소 "quality_id"는 FGS 또는 MGS 계층의 품질 레벨 계층을 표시하는데 사용된다. 임의의 시간 위치에서, 그리고 "dependency_id" 값이 동일한 경우, QL과 동일한 "quality_id"를 갖는 픽처는 QL-1과 동일한 "quality_id"를 가진 픽처를 인터-계층 예측에 사용한다. 0보다 큰 "quality_id"를 가진 코딩된 슬라이스는 절단 가능한 FGS 슬라이스 또는 절단 불가능한 MGS 슬라이스 중 어느 하나로서 코딩될 수 있다.
간략화를 위해, "dependency_id"라는 동일한 값을 갖는 하나의 액세스 유닛의 모든 데이터 유닛(예를 들면, SVC 맥락에서는 네트워크 추상 계층(Network Abstraction Layer) 유닛 또는 NAL 유닛)은 디펜던시 유닛(dependency unit) 또는 디펜던시 표현(dependency representation)이라고 지칭된다. 하나의 디펜던시 유닛 내에서, "quality_id"라는 동일한 값을 갖는 모든 데이터 유닛은 품질 유닛(quality unit) 또는 계층 표현(layer representation)이라고 지칭된다.
디코딩된 기본 픽처라고도 알려진 기본 표현(base representation)은 "quality_id"가 0이고 "store_ref_base_pic_flag"가 1로 설정된 디펜던시 유닛의 비디오 코딩 계층(Video Coding Layer, VCL) NAL 유닛을 디코딩함으로써 생성된 디코딩된 픽처이다. 디코딩된 픽처라고도 지칭되는 강화 표현(enhancement representation)은 최고의 디펜던시 표현을 위해 존재하는 모든 계층 표현이 디코딩되는 정규 디코딩 프로세스로부터 만들어진다.
앞에서 언급된 바와 같이, CGS는 공간 스케일러빌리티 및 SNR 스케일러빌리티 모두를 다 포함한다. 공간 스케일러빌리티는 해상도가 상이한 비디오의 표현을 지원하기 위해 초기에 설계된 것이다. 시간 인스턴스마다, VCL NAL 유닛은 동일한 액세스 유닛에서 코딩되며 이들 VCL NAL 유닛은 여러 해상도에 대응할 수 있다. 디코딩 동안, 저해상도 VCL NAL 유닛은 고해상도 픽처의 최종 디코딩 및 재구성에 의해 선택적으로 이어받을 수 있는 움직임 필드 및 잔차를 제공한다. 구(old) 비디오 압축 표준과 비교할 때, SVC의 공간 스케일러빌리티는 기본 계층이 강화 계층의 일부 삭제되고 확대된 버전으로 구성될 수 있도록 일반화되었다.
MGS 품질 계층은 FGS 품질 계층과 유사하게 "quality id"로 표시된다. (동일한 "quality id"를 갖는) 각 디펜던시 유닛마다, 0과 같은 "quality id"를 갖는 계층이 있으며 0보다 큰 "quality id"를 갖는 다른 계층이 있을 수 있다. 0보다 큰 "quality id"를 갖는 이런 계층은 슬라이스가 절단 가능한 슬라이스로서 코딩되는지 여부에 따라, MGS 계층 또는 FGS 계층 중 어느 한 계층이다.
FGS 강화 계층의 기본 형태에서는 오직 인터-계층 예측만이 사용된다. 그러므로, FGS 강화 계층은 디코딩된 시퀀스에서 어떠한 오류 전파도 일으키지 않고 자유로이 절단될 수 있다. 그러나, FGS의 기본 형태는 압축 효율이 낮다. 이러한 문제는 저품질 픽처만이 인터 예측 참조를 위해 사용되기 때문에 발생한다. 그러므로 FGS-강화된 픽처를 인터 예측 참조로서 사용하는 것이 제안되었다. 그러나, 이것은 일부 FGS 데이터가 폐기될 때, 드리프트(drift)라고도 불리는 인코딩-디코딩 부조화를 일으킬 수 있다.
초안 SVC 표준의 한 가지 특징은 FGS NAL 유닛이 자유로이 삭제 또는 절단될 수 있다는 것이며, SVCV 표준의 특징은 MGS NAL 유닛이 비트스트림의 순응성에 영향을 미치지 않고 자유로이 삭제(단 절단될 수는 없음)될 수 있다는 것이다. 앞에서 논의한 바와 같이, 이러한 FGS 또는 MGS 데이터가 인코딩 동안 인터 예측 참조를 위해 사용되었을 때, 데이터의 삭제 또는 절단은 디코더 측과 인코더 측에서 디코딩된 픽처들 사이에서 부조화의 결과를 초래할 것이다. 이러한 부조화도 마찬가지로 드리프트라고 지칭된다.
FGS 또는 MGS 데이터의 삭제 또는 절단으로 인한 드리프트를 조절하기 위하여, SVC는 다음과 같은 해결방법을 적용하였다. 즉, 특정 디펜던시 유닛에서, ("quality_id"가 0인 CGS 픽처 및 종속하는 모든 하위 계층 데이터만을 디코딩함으로써) 기본 표현은 디코딩된 픽처 버퍼에 저장된다. "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_lx_minus1" (x=0 또는 1), 참조 픽처 리스트 재배열 신택스 표, 및 가중된 예측 신택스 표는 존재하지 않는다. 따라서, MGS 또는 FGS 계층은 이러한 신택스 요소를, 필요할 때, 그 디펜던시 유닛의 "quality_id"가 0인 NAL 유닛으로부터 이어받아야 한다.
SVC에서, 참조 픽처 리스트는 오직 기본 표현("use_ref_base_pic_flag"가 1일 때)만으로 또는 "기본 표현"으로 표기되지 않은 오직 디코딩된 픽처("use_ref_base_pic_flag"가 0일 때)만으로 구성되지만, 결코 동시에 두 가지로 구성되지 않는다.
스케일러블 내포 SEI 메시지(scalable nesting SEI message)는 SVC에서 명시되었다. 스케일러블 내포 SEI 메시지는 SEI 메시지를, 표시된 디펜던시 표현이나 다른 스케일러블 계층과 같은, 비트스트림의 서브세트와 연관시키기 위한 메커니즘을 제공한다. 스케일러블 내포 SEI 메시지는 스케일러블 내포 SEI 메시지 자체가 아닌 하나 이상의 SEI 메시지를 포함한다. 스케일러블 내포 SEI 메시지에 포함된 SEI 메시지는 내포된 SEI 메시지(nested SEI message)라고 지칭된다. 스케일러블 내포 SEI 메시지에 포함되지 않은 SEI 메시지는 내포되지 않은 SEI 메시지(non-nested SEl message)라고 지칭된다. 스케일러블 내포 SEI 메시지와 유사한 SEI 메시지는 MVC에서 내포된 SEI 메시지가 적용하는 뷰가 어느 뷰인지를 표시하기 위해 명시되었다. 스케일러블 내포 SEI 메시지와 유사한 다른 SEI 메시지는 내포된 SEI 메시지가 어느 텍스처 및/또는 깊이 뷰에 적용하는지를 명시하기 위해 H.264/AVC의 멀티뷰 및 깊이 확장(또는 MVC+D라고도 지칭함)에서 명시되었다. H.264/HEVC은 또한 유사한 스케일러블 내포 SEI 메시지를 포함한다.
품질 스케일러빌리티(신호-대-잡음 비 또는 SNR로도 알려짐) 및/또는 공간 스케일러빌리티를 위한 스케일러블 비디오 인코더는 다음과 같이 구현될 수 있다. 기본 계층에 대하여, 통상의 논-스케일러블 비디오 인코더 및 디코더가 사용될 수 있다. 기본 계층의 재구성된/디코딩된 픽처는 강화 계층에 대비하기 위해 참조 픽처 버퍼 및/또는 참조 픽처 리스트에 포함된다. 인터 예측에 참조 픽처 리스트(들)을 사용하는 H.264/AVC, HEVC 및 유사한 코덱에서, 기본 계층 디코딩된 픽처는 강화 계층의 디코딩된 참조 픽처와 유사하게 강화 계층 픽처를 코딩/디코딩하기 위해 참조 픽처 리스트(들)에 삽입될 수 있다. 따라서, 인코더는 베이스-계층 참조 픽처를 인터 예측 참조로서 선택할 수 있고 코딩된 비트스트림에서 이것의 사용을 참조 픽처 인덱스로 표시할 수 있다. 디코더는 베이스-계층 픽처가 강화 계층에 대한 인터 예측 참조로서 사용된 것을 비트스트림으로부터 예를 들면, 참조 픽처 인덱스로부터 디코딩한다. 디코딩된 베이스-계층 픽처가 강화 계층에 대한 예측 참조로서 사용될 때, 이것은 인터-계층 참조 픽처라고 지칭된다.
품질 스케일러빌리티 이외에 다음과 같은 스케일러빌리티 모드가 존재한다.
_ 공간 스케일러빌리티: 기본 계층 픽처는 강화 계층 픽처보다 낮은 해상도로 코딩된다.
_ 비트 깊이 스케일러빌리티: 기본 계층 픽처는 강화 계층 픽처(예를 들면, 10 또는 12비트)보다 낮은 비트 깊이(예를 들면, 8 비트)로 코딩된다.
_ 크로마 포맷 스케일러빌리티: 기본 계층 픽처는 강화 계층 픽처(예를 들면, 4:4:4 포맷)보다 낮은 크로마 충실도를 제공한다(예를 들면 4:2:0 크로마 포맷으로 코딩된다).
_ 색 공간 스케일러빌리티. 강화 계층 픽처는 기본 계층 픽처보다 풍부한/넓은 색채 표현 범위를 갖는다. 예를 들면, 강화 계층은 UHDTV (ITU-R BT.2020) 색 공간을 가질 수 있으며 기본 계층은 ITU-R BT.709 색 공간을 가질 수 있다.
_ 뷰 스케일러빌리티. 상이한 계층은 멀티뷰 비디오의 상이한 뷰를 표현한다.
_ 깊이 스케일러빌리티. 특정 층은 규칙적인 컬러 비디오 콘텐츠를 표현할 수 있으며 다른 계층은 범위 정보, 디스패리티, 또는 깊이 등을 표현한다.
_ 보조 픽처 스케일러빌리티. 특정 계층은 예를 들면 투명 또는 불투명 정보를 표시하기 위해 또는 크로마 키하기(chroma keying) 위해 사용될 수 있는 알파 평면과 같은 보조 비디오 콘텐츠를 표현할 수 있다.
전술한 모든 스케일러빌리티 사례에서, 기본 계층 정보는 부가적인 비트레이트 오버헤드를 최소화 하기 위해 강화 계층을 코딩하는데 사용될 수도 있다.
(전체 픽처가 아니라) 픽처내의 오직 어떤 영역만이 강화되기를 원하는 경우, 현재의 스케일러블 비디오 코딩 해결 방법은 복잡도 오버헤드가 비교적 높거나 아니면 열악한 코딩 효율로 인해 어려움을 겪는다.
예를 들면, 비디오 픽처 내 어떤 영역만이 더 높은 비트 깊이로 코딩되게 하는 것을 목표로 할지라도, 그럼에도 불구하고 현재의 스케일러블 코딩 해결 방법은 전체 픽처가 높은 비트 깊이로 코딩되어야 하며, 이것은 극적으로 복잡도를 증가시킨다. 이것은 모든 움직임 블록이 더 높은 비트 깊이의 참조 픽셀 샘플에 액세스하여야 하므로 움직임 보상 예측이 더 큰 메모리 대역폭을 필요로 하는 것과 같은 많은 요인 때문인 것이다. 또한, 보간(interpolation) 및 역 변환은 더 높은 비트 깊이 샘플로 인하여 예를 들어 기본 계층에 충분한 16 비트 처리 대신에 32 비트 처리를 필요로 할 수 있다.
이미지의 특정 영역이 강화되는 크로마 포맷 스케일러빌리티의 사례의 경우, 유사한 문제가 발생할 수 있다. 예를 들면 강화 계층이 4:4:4 크로마 포맷을 사용할 때, 강화 계층 픽처 전체의 참조 메모리는 4:4:4 포맷으로 되어 있어야 하며, 이 또한 메모리 요건을 증가시킨다. 유사하게, 만일 공간 스케일러빌리티가 선택 영역(예를 들어 운동 경기 방송의 사례에서 선수 및 공)에만 적용되면, 전통적인 방법은 강화 계층 이미지 전부를 전해상도로 저장하고 유지하여야 한다.
SNR 스케일러빌리티의 경우에 대해서, 만일 관심 영역 이외의 픽처의 나머지 영역의 임의의 강화 정보를 전송하지 않음으로써 픽처의 특정 부분만이 강화되면, 각각의 블록이 임의의 강화 정보를 포함하고 있는지 아니지를 표시하기 위해 상당량의 제어 정보가 시그널링되어야 한다. 이러한 오버헤드는 비디오 시퀀스 내 모든 픽처마다 시그널링되어야 하며, 이는 비디오 인코더의 코딩 효율을 떨어뜨린다.
초안 HEVC 확장의 문서 JCTVC-M0181 및 JCTVC-M0235는 타일 세트 이외의 샘플이 활용되지 않고 그 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 타일 세트의 움직임 보상이 제한되는, 소위 움직임 제한된 타일 세트 SEI 메시지(motion constrained tile sets SEI message)라고 호칭하는, 타일 세트에 대해 제한된 인코딩을 표시하는 새로운 SEI 메시지를 도입하고 있다. 픽처 내 오직 어떤 영역을 강화하기 때문에 개선된 코딩 효율을 제공하고 있지만, 움직임 제한된 타일 세트 SEI 메시지는 오직 인트라-계층 예측 디펜던시만을 정의하도록 제한된다. 타일 세트는 한 세트의 타일로서 정의될 수 있다. 타일 세트는 예를 들면 움직임 제한된 타일 세트 SEI 메시지에 포함된 신택스 구조에서 예를 들어 하나 이상의 장방형 타일 영역을 명시함으로써 표시될 수 있다.
이제 인터-계층 예측 제한이 고려되도록 품질 및/또는 공간 해상도를 높이고 높은 코딩 효율을 가진 강화 계층 픽처 내 영역의 인코딩을 확장하기 위해, 강화 계층 픽처 내 하나 이상의 타일을 인코딩하기 위한 개선 방법이 아래에서 소개된다.
도 5에서 개시된 방법에서, 타일 세트가 강화 계층 픽처에서 정의(500)되며, 타일 세트가 기본 계층 픽처에서 정의(502)된다. 그런 다음 강화 계층 픽처 내 타일 세트에 대해 코딩 제한이 정의(504)되며 ― 코딩 제한은 기본 계층 픽처 내 타일 세트에 관련하여 적어도 인터-계층 예측 제한을 포함함 ―, 강화 계층 픽처 내 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 상기 타일 세트는 코딩 제한에 따라서 인코딩(506)된다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트가 인터-계층 전용 타일 세트(inter-layer only set of tiles)인 것으로 정의한다. 이것은 타일 세트 내 모든 샘플에 오직 인터-계층 예측만이 사용되도록 강화 계층(enhancement layer, EL) 타일 세트가 제한된 방법으로 코딩된 것을 표시한다. 실시예에 따르면, 코딩 제한은 또한 EL 타일 세트에 대해 어느 잔차도 시그널링되지 않는다는 것을 표시할 수 있는데, 이것은 EL 타일 세트의 재구성이 (공간 스케일러빌리티의 경우) 업샘플링, (비트 깊이 스케일러빌리티의 경우) 비트 깊이 스케일링, 및/또는 (색 공간 스케일러빌리티의 경우) 색 공간 변환과 같은 아마도 인터-계층 처리를 이용하여 처리된 대응하는 기본 계층(base layer, BL) 타일 세트의 재구성과 같다는 것을 의미한다. 실시예에 따르면, 코딩 제한은 또한 인터-계층 예측에 사용된 BL 타일이 움직임 제한된다는 것을 표시할 수 있다.
인터-계층 전용 타일 세트의 코딩 제한의 일 예는 도 6에서 예시된다. 세로 줄은 전용의 인터-계층 예측이 허용되는 인터-계층 전용 타일 세트를 표시한다. 다시 말해서, EL 타일 세트(656)는 오직 BL 타일 세트(650)만을 기초로 하여 예측되며, EL 타일 세트(658)는 오직 BL 타일 세트(652)만을 기초로 하여 예측되며 EL 타일 세트(660)는 오직 BL 타일 세트(654)만을 기초로 하여 예측된다. 그러나, BL 타일 세트는 움직임 제한된 타일 세트일 수 있으며, 이것은 BL 타일 세트들 사이의 화살표로 표시된다. 다시 말해서, BL 타일 세트(652)는 BL 타일 세트(650) 이외의 어느 샘플도 활용되지 않도록 BL 타일 세트(650)로부터 제한적으로 움직임 예측된다. 유사하게 BL 타일 세트(654)는 BL 타일 세트(652)로부터 제한적으로 움직임 예측된다. BL 및 EL 타일 세트의 크기는 동일할 필요가 없다는 것을 알아야 한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트가 움직임 및 인터-계층 예측 제한된 타일 세트(motion and inter-layer prediction constrained set of tiles)인 것으로 정의한다. 이것은 EL 타일 세트의 움직임 보상 예측이 제한되어서 타일 세트 내 샘플이 같은 계층 내 다른 타일에 속하는 어느 샘플도 활용하지 않도록 하고 그리고 인터-계층 예측이 시그널링되어서 BL로부터 0개 이상의 선택된 타일로부터의 샘플이 시퀀스 전체의 EL 타일 세트의 인터-계층 예측을 위한 참조로서 사용되도록 하거나 사용될 수 있도록 하는 그런 제한된 방식으로 EL 타일 세트가 코딩된다는 것을 표시한다. 만일 BL로부터 어느 타일도 선택되지 않으면, 이러한 EL 타일 세트는 어느 인터-계층 예측도 사용하지 않은 것을 의미한다. 실시예에 따르면, 코딩 제한은 또한 인터-계층 예측에 사용된 BL 타일 또는 타일 세트가 움직임 제한되는 것임을 표시할 수 있다.
도 7은 움직임 및 인터-계층 예측 제한된 타일 세트의 예를 도시한다. 세로 줄이 있는 각각의 EL 타일 세트(706, 708, 710)는 단지 하나의 BL 타일 세트(700, 702, 704)로부터의 샘플만을 활용하며 다른 BL 타일로부터 어느 인터-계층 예측도 활용하지 않는다. EL 타일 세트의 움직임 보상 예측은 EL 타일 세트(708) 내 샘플이 EL 타일 세트(706)와 다른 타일에 속한 어느 샘플도 활용하지 않도록 하고 EL 타일 세트(710)가 EL 타일 세트(708)와 다른 타일에 속한 어느 샘플도 활용하지 않도록 제한된다. 또한, 가로줄의 BL 타일 세트는 움직임 제한된다.
도 8은 움직임 및 인터-계층 예측 제한된 타일 세트의 다른 예를 도시하는데, 이 예에서 어느 BL 타일도 EL 타일 세트의 인터-계층 예측을 위한 참조로서 사용되지 않는 것으로 표시된다. 다시 말해서, 움직임 및 인터-계층 예측 제한된 타일 세트는, EL 타일 세트의 움직임 보상 예측이 도 6의 움직임 보상 예측과 유사하게 제한되지만 인터-계층 예측은 완전히 제한되는, 인트라-계층 전용 타일 세트(intra-layer only set of tiles)이다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트가 단일 루프 디코딩 타일 세트(single-loop decoding set of tiles)인 것으로 정의한다. 이것은 EL 타일 세트를 디코딩하기 위해 각각의 BL 타일 세트가 디코딩된 픽처 버퍼 내에 유지되어야 할 필요가 없음을 나타낸다. 다시 말해서, BL 타일 세트는 인터-계층 예측을 위한 참조로서 사용되지 않는다. 만일 BL 타일 세트가 IRAP 픽처에서 인트라 코딩되거나 IRPA 픽처에서 존재하면, BL 타일 세트는 인터-계층 예측에 사용될 수 있다.
다양한 실시예에 따르면, 한 픽처 내 타일 세트의 예측(여기서는 예측된 타일 세트라고 지칭함)이 하나 이상의 다른 픽처 내 오직 각각의 타일 세트(여기서는 참조 타일 세트라고 지칭함)만으로부터 이루어지도록 제한될 때, 코딩 제한은 다음 중 하나 이상을 포함할 수 있다.
- 각각의 참조 타일 세트 이외의 어느 샘플 값도 그리고 그 참조 타일 세트 이외에 하나 이상의 샘플 값을 이용하여 도출되는 부분 샘플 위치에 있는 어느 샘플 값도 예측된 타일 세트 내 임의의 샘플의 예측에 사용되지 않는다. 예측은 예를 들면 인터, 인터-계층, 인터-뷰, 및/또는 인터-컴포넌트 예측과 같은 임의의 형태의 샘플 예측일 수 있다.
- 참조 타일 세트 이외의 어느 파라미터 또는 신택스 요소 값도 예측된 타일 세트의 예측에 사용되지 않는다. 예를 들면, 참조 타일 세트 이외의 어느 움직임 벡터도 예측된 타일 세트 내에서 시간 움직임 벡터 예측 등에 사용되지 않는다. 예측은 임의의 형태의 신택스 또는 파라미터 예측일 수 있다.
- 참조 타일 세트 이외의 어느 샘플 값 및/또는 신택스 요소도 예측된 타일 세트의 잔차 예측에 사용되지 않는다.
- 참조 타일 세트 이외의 어느 샘플 값도 예측된 타일 세트의 샘플 값에 영향을 미치는 필터링 및 업샘플링과 같은 임의의 (디)코딩 프로세스에 사용되지 않는다.
다양한 실시예에 따른 하나 이상의 코딩 제한은 비트스트림에서 또는 비트스트림을 따라서 하나 이상의 표시로 표시될 수 있으며, 이러한 표시는 하나 이상의 신택스 구조 내에 하나 이상의 신택스 요소 또는 신택스 요소 값으로서 코딩될 수 있다. 인코더는 비트스트림 내에 표시(들)를 인코딩할 수 있다. 디코더는 비트스트림으로부터 표시(들)를 디코딩할 수 있다. 표시(들)는 예를 들면 시퀀스 파라미터 세트, 픽처 파라미터 세트, 보충 강화 정보(supplemental enhancement information, SEI) 메시지, 또는 슬라이스 헤더, 및/또는 임의의 다른 신택스 구조에서 존재할 수 있다.
신택스 구조는 표시(들)의 범위 또는 유효성 또는 지속성을 결정할 수 있다. 예를 들면, 만일 표시가 시퀀스 파라미터 세트에서 존재하면, 일부 실시예에서 표시(들)는 시퀀스 파라미터 세트가 작용 중인 코딩된 비디오 시퀀스에 유효할 수 있다. 마찬가지로, 만일 표시가 픽처 파라미터 세트에 존재하면, 표시는 픽처 파라미터 세트가 작용 중인 픽처에 유효할 수 있다. 대안으로, 표시(들)의 범위/유효성/지속성은 그 표시(들) 또는 그 표시(들)와 연관된 다른 신택스 요소에 포함될 수 있다. 일부 실시예에서, 표시(들)의 범위 또는 유효성 또는 지속성은 한 세트의 계층을 포함할 수 있다. 일부 실시예에서, 표시(들)의 범위 또는 유효성 또는 지속성은 한 세트의 뷰, 한 세트의 컴포넌트 타입(예를 들면, 텍스처 및/또는 깊이) 및/또는 한 세트의 스케일러빌리티 계층(예를 들면, 공간 및/또는 품질 스케일러빌리티 계층)과 같은 한 세트의 스케일러빌리티 차원을 포함할 수 있다.
실시예에 따르면, 앞에서 언급한 각 타일 세트의 표시는 보충 강화 정보(SEI) 메시지의 형태로 구현될 수 있다. 예를 들면, 움직임 제한된 타일 세트 SEI 메시지가 또한 인트라-계층 예측 제한 및 인터-계층 예측 제한의 두 개를 다 표시하도록 수정될 수 있다. 게다가 또는 대안으로, 인트라-계층 예측 제한 및/또는 인터-계층 예측 제한을 표시하기 위해 완전히 새로운 SEI 메시지가 개발될 수 있다.
실시예에 따르면, 다음과 같은 SEI 메시지 신택스가 인트라-계층 예측 제한 및/또는 인터-계층 예측 제한을 표시하기 위해 사용될 수 있다.
Figure 112016012749284-pct00005
신택스 요소의 시맨틱은 다음과 같이 명시될 수 있다.
num_sets_in_message_minus1 plus 1은 SEI 메시지에서 식별된 움직임 제한된 타일 세트의 개수를 명시한다. num_sets_in_message_minus1의 값은 0 내지 255를 포함하여 그 범위에 있어야 한다.
mcts_id[ i ]는 i번째 식별된 타일 세트의 목적을 식별하기 위해 (예를 들면, 특정 목적을 위해 코딩된 비디오 시퀀스로부터 추출되는 영역을 식별하기 위해) 사용될 수 있는 식별 번호를 포함한다. pan_scan_rect_id의 값은 0 내지 232-2를 포함하여 그 범위 내에 있어야 한다.
0부터 255까지 그리고 512부터 231-1까지의 mcts_id[ i ]의 값은 애플리케이션에 의해 결정되는 대로 사용될 수 있다. 256부터 511까지 그리고 231부터 232-2까지의 mcts_id[ i ]은 ITU-T|ISO/IEC에서 향후 사용을 위해 예약된다. 256 내지 511의 범위 또는 231 내지 232-2 범위의 mcts_id[ i ]의 값을 산출하는 디코더는 이 값을 무시해야 한다(비트스트림에서 제거하거나 폐기한다). num_tile_rects_in_set_minus1[ i ] plus 1은 i번째 식별된 움직임 제한된 타일 세트 내 장방형 타일의 영역의 개수를 명시한다. num_tile_rects_in_set_minus1[ i ]의 값은 0 내지 (num_tile_columns_minus1 + 1 ) * (num_tile_rows_minus1 + 1 ) - 1 를 포함하여 그 범위 내에 있어야 한다. top_left_tile_index[ i ][ j ] 및 bottom_right_tile_index[ i ][ j ]는 타일 래스터 스캔 순서에서 i번째 식별된 움직임 제한된 타일 세트의 장방형 영역 내 상단 좌측 타일의 위치 및 하단 우측 타일의 위치를 각기 명시한다.
exact_sample_value_match_flag[ i ]가 0이면, 이것은 코딩된 비디오 시퀀스 내에서, i번째 식별된 움직임 제한된 타일 세트 이외의 코딩 트리 블록이 디코딩되지 않고 그 움직임 제한된 타일 세트의 경계가 디코딩 프로세스의 목적을 위한 픽처 경계로서 취급될 때, 그 식별된 타일 세트 내 각각의 샘플 값이 그 픽처의 모든 코딩 트리 블록이 코딩될 때 그 샘플의 값과 정확히 동일하지 않을 수 있다는 것을 나타낸다.
mcts_nuh_layer_id[ i ][ j ]는 i번째 명시된 타일 세트 내 j번째 장방형 타일 영역을 포함하는 픽처의 nuh_layer_id 값을 명시한다.
mc_idc[ i ][ j ]가 0이면, 이것은 mcts_nuh_layer_id[ i ][ j ]와 동일한 nuh_layer_id 를 갖는 픽처들 사이에서 동일한 mcts_id[ i ] 값의 타일 세트들 사이에서 인터 예측 프로세스가 제한될 수 있거나 아니면 제한되지 않을 수 있다는 것을 명시한다. mc_idc[ i ][ j ]가 1이면, 이것은 mcts_nuh_layer_id[ i ][ j ]와 동일한 nuh_layer_id를 갖는 픽처들 사이에서 동일한 mcts_id[ i ] 값의 타일 세트들 사이에서 인터 예측 프로세스가 제한되어서 식별된 각각의 타일 세트 이외의 어느 샘플 값도 그리고 식별된 타일 세트 이외의 하나 이상의 샘플 값을 이용하여 도출되는 부분 샘플 위치에 있는 어느 샘플 값도 그 식별된 타일 세트 내 임의의 샘플의 인터 예측에 사용되지 않는다는 것을 명시한다. mc_idc[ i ][ j ]가 2이면, 이것은 mcts_nuh_layer_id[ i ][ j ]와 동일한 nuh_layer_id를 갖는 임의의 픽처로부터 식별된 타일 세트에 대해서는 어느 인터 예측도 일어나지 않는다는 것을 명시한다.
ilc_idc[ i ][ j ]가 0이면, 이것은 mcts_nuh_layer_id[ i ][ j ]와 동일한 nuh_layer_id를 갖는 식별된 타일 세트에 대해 인터-계층 예측 프로세스가 제한될 수 있거나 아니면 제한되지 않을 수 있다는 것을 명시한다. ilc_idc[ i ][ j ]가 1이면, 이것은 인터 예측 프로세스가 제한되어서 식별된 각각의 타일 세트 이외의 어느 샘플 값도 그리고 식별된 타일 세트 이외의 하나 이상의 샘플 값을 이용하여 도출되는 부분 샘플 위치에 있는 어느 샘플 값도 mcts_nuh_layer_id[ i ][ j ]와 동일한 nuh_layer_id를 가진 식별된 타일 세트 내 임의의 샘플의 인터-계층 예측에 사용되지 않는다는 것을 명시한다. ilc_idc[ i ][ j ]가 2이면, 이것은 표시된 타일 세트에 대해 어느 인터-계층 예측도 일어나지 않는다는 것을 명시한다.
skipped_tile_set_flag[ i ][ j ]가 1이면, 이것은 mctsNuhLayerId와 동일한 nuh_layer_id를 갖는 식별된 타일 세트 내부의 모든 예측 블록이 RefLayerId[mctsNuhLayerId][NumDirectRefLayers[mctsNuhLayerId] - 1]와 동일한 nuh_layer_id를 가진 인터-계층 참조 픽처로부터 인터-계층 예측되며 식별된 타일 세트의 임의의 변환 유닛에서 어느 residual_coding 신택스 구조도 존재하지 않는다는 것을 표시한다. skipped_tile_set_flag[ i ][ j ]가 0이면, 이것은 mctsNuhLayerId와 동일한 nuh_layer_id를 갖는 식별된 타일 세트 내부의 모든 예측 블록이 인터-계층 예측될 수 있거나 아니면 인터-계층 예측되지 않을 수도 있으며 residual_coding 신택스 구조가 식별된 타일 세트의 임의의 변환 유닛에서 존재할 수도 아니면 존재하지 않을 수도 있다는 것을 나타낸다.
skipped_tile_set_flag[ i ][ j ]가 1이면, ilc_idc[ i ][ j ]가 0 또는 1이어야 하며 mc_idc[ i ][ j ]가 2와 같아야 한다.
exact_sample_value_match_flag[ i ]가 1이면, 이것은 코딩된 비디오 시퀀스 내에서, 움직임 제한된 타일 세트에 속하지 않는 코딩 트리 블록이 코딩되지 않고 그 움직임 제한된 타일 세트의 경계가 디코딩 프로세스의 목적을 위한 픽처 경계로서 취급될 때, 움직임 제한된 타일 세트 내 각 샘플 값은 코딩된 비디오 시퀀스 내 모든 픽처의 모든 코딩 트리 블록이 디코딩될 때 취득되었을 샘플 값과 정확히 동일할 것이라는 것을 나타낸다.
실시예에 따르면, 움직임 제한된 타일 세트 SEI 메시지는 만일 이 메시지가 스케일러블 내포 SEI 메시지 또는 임의의 유사한 SEI 메시지 또는 내포 메커니즘 내에 내포되어 있지 않으면 nuh_layer_id가 0인 픽처에 적용하는 것으로 명시될 수 있다. 그렇지 않으면, 움직임 제한된 타일 세트 SEI 메시지는 움직임 제한된 타일 세트 SEI 메시지를 포함하는 스케일러블 내포 SEI 메시지(또는 유사한 것)로 표시된 계층에 적용하는 것으로 명시될 수 있다. 만일 똑같은 mcts_id[ i ] 값(또는 다른 유사한 타일 세트 식별자)이 복수의 움직임 제한된 타일 세트 SEI 메시지에서 사용(상이한 계층에 잠재적으로 적용)되면, 이 메시지는 타일 세트의 인터-계층 예측이 인터-계층 예측을 위해 참조 계층에서 똑같은 mcts_id[ i ] 값을 가진 타일 세트만을 참조로서 사용하도록 제한된다는 것을 표시하도록 명시될 수 있다.
실시예에 따르면, 움직임 제한된 타일 세트 SEI 메시지는 타일 세트에 대해 인터-계층 또는 시간 예측 제한을 표시하는데 사용될 수 있다. 움직임 제한된 타일 세트 SEI 메시지는 스케일러블 내포 SEI 메시지에 포함될 수 있지만 어느 인터-계층 예측 제한도 표시하지 않는다. 여기서 인터-계층 제한된 타일 세트 SEI 메시지(inter-layer-constrained tile sets SEI message)라고 지칭하는 다른 SEI 메시지가 다음과 같이 인터-계층 예측 제한을 표시하기 위해 명시될 수 있다.
Figure 112016012749284-pct00006
신택스 요소의 시맨틱은 움직임 제한된 타일 세트 SEI 메시지의 동등한 신택스 요소와 유사하게 명시될 수 있으며 추가의 신택스 요소는 예를 들면 다음과 같이 명시될 수 있다.
num_il_ref[ i ][ j ]은 식별된 장방형 타일 영역의 인터-계층 예측을 위한 참조로 사용될 수 있는 영역의 개수를 명시한다.
il_mcts_flag[ i ][ j ][ k ]가 0이면, 이것은 타일의 k번째 타일 영역이 il_ref_ts_top_left_tile_index [ i ][ j ][ k ] 및 il_ref_ts_bottom_right_tile_index [ i ][ j ][ k ]로 명시된다는 것을 명시한다. il_mcts_flag[ i ][ j ][ k ]가 1이면, 이것은 타일의 k번째 영역이 인터-계층 예측을 위해 모든 참조 계층에서 il_ref_mcts_id[ i ][ j ][ k ]과 같은 mcts_id[i ]를 가진 움직임 제한된 타일 세트라는 것을 명시한다.
실시예에 따르면, 임의의 실시예에 따른 인터-계층 예측 제한의 표시는 EL 타일 세트의 단일 디코딩 특성과 관련된 표시(들)을 포함하거나 표시(들)에 첨부될 수 있다. 예를 들면, EL 타일 세트를 디코딩하기 위해, 각각의 BL 타일 세트가 DPB에서 유지될 필요가 없다는 것을 표시하는 부가적인 플래그가 EL 타일 세트와 연관될 수 있다. 다시 말해서, BL 타일 세트는 인트라-계층 예측을 위한 참조로서 사용되지 않는다. 만일 BL 타일 세트가 인트라 코딩되거나 IRPA 픽처에서 존재하면, BL 타일 세트는 인터-계층 예측에 사용될 수 있다. 예를 들면, 다음과 같은 신택스 및 시맨틱이 사용될 수 있다.
Figure 112016012749284-pct00007
표 1의 신택스와 비교하여, 신택스 요소 single_loop_flag[ i ][ j ]가 포함되었는데, 이 신택스 요소는 0일 때 인터-계층 예측이 ilc_idc[ i ][ j ]로 표시된 제한을 넘어서 제한될 수 있거나 제한되지 않을 수 있다는 것을 명시한다. single_loop_flag[ i ][ j ]가 1이면, 표시된 타일 세트의 인터-계층 예측은 IRPA 픽처가 아닌 인터-계층 참조 픽처로부터 적용되지 않는다는 것을 명시한다.
실시예에 따르면, 강화 계층 타일 세트는 대응하는 기본 계층 타일 세트에 대한 강화 정보를 가지고 있으며, 이 강화 정보는 다음 중 적어도 하나를 포함한다.
- 대응하는 기본 계층 타일 세트의 크로마에 대해 상기 강화 계층 타일 세트의 크로마의 충실도를 증가함;
- 대응하는 기본 계층 타일 세트의 비트 깊이에 대해 상기 강화 계층 타일 세트의 비트 깊이를 증가함;
- 대응하는 기본 계층 타일 세트의 품질에 대해 상기 강화 계층 타일 세트의 품질을 증가함; 또는
- 대응하는 기본 계층 타일 세트의 공간 해상도에 대해 상기 강화 계층 타일 세트의 공간 해상도를 증가함.
크로마의 충실도를 증가한다는 것은 예를 들어, 강화 계층 타일 세트의 경우 크로마 포맷이 4:2:2 또는 4:4:4일 수도 있다는 것을 의미하는데 반해, 기본 계층 타일 세트의 경우 크로마 포맷이 4:2:0이라는 것을 의미한다. 4:2:0 샘플링 시, 두 개의 크로마 어레이 또는 픽처는 각기 루마 또는 픽처 어레이의 높이의 절반 및 폭의 절반을 갖는다. 4:2:2 샘플링 시, 두 개의 크로마 어레이는 각기 루마 어레이와 같은 높이 및 루마 어레이 폭의 절반을 갖는다. 4:4:4 샘플링 시, 두 개의 크로마 어레이는 각기 루마 어레이와 같은 높이 및 폭을 갖는다.
비트 깊이를 증가한다는 것은 예를 들면, 강화 계층 타일 세트의 경우 샘플의 비트 깊이가 10 또는 12 비트일 수도 있는데 반해, 기본 계층 타일 세트의 경우 비트 깊이가 8비트라는 것을 의미한다.
실시예에 따르면, 단일의 강화 계층 타일 세트는 이미지의 다수의 특성을 강화할 수 있다. 예를 들면, 강화 계층 타일 세트는 크로마 포맷 강화 및 비트 깊이 강화를 모두 제공할 수 있다
실시예에 따르면, 강화 계층 타일 세트의 크기 및 위치는 상이한 픽처마다 바뀔 수 있거나 고정된 채로 유지할 수 있다.
실시예에 따르면, 강화 계층 타일 세트의 위치 및/또는 크기는 기본 계층 픽처에서 사용된 타일 세트와 동일할 수 있다.
프레임 포장(frame packing)은 인코더 측에서 인코딩을 위한 전처리 단계로서 하나보다 많은 프레임이 단일 프레임으로 포장된 다음 프레임-포장된 프레임(frame-packed frame)이 통상의 2D 비디오 코딩 방식에 따라 인코딩되는 방법을 말한다. 그러므로 디코더에 의해 생성되는 출력 프레임에는 인코더 측에서 공간적으로 하나의 프레임으로 포장된 입력 프레임에 대응하는 구성성분의 프레임이 포함되어 있다. 프레임 포장은 한 쌍의 프레임 ― 하나의 프레임은 좌측 눈/카메라/뷰에 대응하고 다른 프레임은 우측 눈/카메라/뷰에 대응함 ― 이 단일의 프레임으로 포장되는 스테레오스코픽 비디오에 사용될 수 있다. 프레임 포장은 또한 또는 대안으로 구성성분의 프레임 중 한 프레임이 정규 컬러 정보(루마 및 크로마 정보)를 가진 다른 구성성분의 프레임에 대응하는 깊이 또는 디스패리티 정보를 표현하는 깊이 또는 디스패리티 강화 비디오(disparity enhanced video)에 사용될 수 있다. 프레임 포장의 사용은 예를 들면, H.264/AVC의 프레임 포장 구성 SEI 메시지 또는 유사한 것을 이용하여 비디오 비트스트림에서 시그널링될 수 있다. 프레임 포장의 사용은 또한 또는 대안으로 고선명 멀티미디어 인터페이스(High-Definition Multimedia Interface, HDMI)와 같은 비디오 인터페이스를 통해 표시될 수 있다. 프레임 포장의 사용은 또한 또는 대안으로 세션 서술 프로토콜(Session Description Protocol, SDP)과 같은 다양한 성능 교환 및 모드 협상 프로토콜(capability exchange and mode negotiation protocol)을 이용하여 표시 및/또는 협상될 수 있다.
깊이 강화 비디오는 하나 이상의 깊이 뷰를 갖는 깊이 비디오와 연관된 하나 이상의 뷰를 갖는 텍스처 비디오를 말한다. 비디오 플러스 깊이(video plus depth, V+D), 멀티뷰 비디오 플러스 깊이(multiview video plus depth, MVD), 및 계층적 깊이 비디오(layered depth video, LDV)를 비롯한 깊이 강화 비디오를 표현하기 위한 복수의 접근방법이 사용될 수 있다. 비디오 플러스 깊이(V+D) 표현에서, 단일의 텍스처 뷰 및 각각의 깊이 뷰는 각기 텍스처 픽처의 시퀀스 및 깊이 픽처의 시퀀스로서 표현된다. MVD 표현은 복수의 텍스처 뷰 및 각각의 깊이 뷰를 포함한다. LDV 표현에서, 중심 뷰의 텍스처 및 깊이는 통상적으로 표현되지만, 다른 뷰의 텍스처 및 깊이는 부분적으로 표현되며 중간 뷰의 정확한 뷰 합성에 필요한 비폐색 영역(dis-occluded area)만을 포함한다.
실시예에 따르면, 본 발명은 예를 들면 사이드-바이-사이드 프레임 포장 구성에서 비디오-플러스-깊이 표현, 즉 텍스처 프레임 및 깊이 프레임을 포함하는 프레임-포장 비디오에 적용될 수 있다. 프레임-포장된 프레임의 기본 계층은 동일한 크로마 포맷을 가질 수 있고 또는 구성성분의 프레임은 텍스처 구성성분 프레임의 경우 4:2:0과 같은 상이한 크로마 포맷을 가질 수 있으며 깊이 구성성분 프레임의 경우에는 루마 단독의 포맷을 가질 수 있다. 프레임-포장된 프레임의 강화 계층은 기본 계층 프레임-포장된 프레임의 구성성분 프레임 중 하나에만 관련할 수 있다. 강화 계층은 기본 계층의 각 구성성분 프레임을 강화하는 구성성분 프레임을 포함하는 타일 세트를 포함할 수 있다. EL 타일 세트는 다양한 다른 실시예에 따라서 코딩 및/또는 디코딩될 수 있다. 예를 들면, 강화 계층은 다음 중 하나 이상을 포함할 수 있다.
Figure 112016012749284-pct00008
텍스처 구성성분 프레임에 대해 크로마 포맷 강화
Figure 112016012749284-pct00009
텍스처 구성성분 프레임 또는 깊이 구성성분 프레임에 대해 비트 깊이 강화
Figure 112016012749284-pct00010
텍스처 구성성분 프레임 또는 깊이 구성성분 프레임에 대해 공간 강화.
스테레오스코픽 비디오의 압축을 개선하기 위한 연구의 다른 분야는 두 개의 코딩된 뷰들 사이에서 품질 차이가 존재하는 비대칭 스테레오스코픽 비디오 코딩으로 알려져 있다. 이것은 인식된 품질이 고품질 뷰의 품질에 가까워지도록 인지 시각 시스템(Human Visual System, HVS)을 스테레오스코픽 이미지 쌍에 융합하는 널리 지지된 가정에 기인한다. 그래서 두 개의 코딩된 뷰들 사이의 품질 차를 제공함으로써 압축 개선이 이루어질 수 있다.
두 뷰들 사이의 비대칭은 예를 들면, 다음과 같은 방법 중 하나 이상의 방법에 의해 성취될 수 있다.
a) 뷰가 상이한 공간 해상도 및/또는 상이한 주파수 도메인 특성을 갖는 해상도 비대칭 스테레오스코픽 비디오 코딩(resolution-asymmetric stereoscopic video coding)이라고도 지칭하는 혼합 해상도 스테레오스코픽 비디오 코딩(mixed-resolution (MR) stereoscopic video coding). 전형적으로, 뷰들 중 하나의 뷰는 로우패스 필터링되며 그래서 공간적인 세부내용의 양이 더 적거나 공간 해상도가 더 낮아진다. 또한, 로우패스 필터링된 뷰는 통상 더 큰 샘플링 그리드로 샘플링된다. 즉 더 적은 개수의 픽셀로 표현된다.
b) 혼합 해상도 크로마 샘플링(mixed-resolution chroma sampling). 하나의 뷰의 크로마 픽처는 다른 뷰의 각 크로마 픽처보다 적은 수의 샘플로 표현된다.
c) 비대칭 샘플 도메인 양자화(asymmetric sample-domain quantization). 두 뷰의 샘플 값은 상이한 스텝 크기로 양자화된다. 예를 들면, 하나의 뷰의 루마 샘플은 0 내지 255 범위로(즉, 샘플당 8비트로) 표현될 수 있는 반면 그 범위는 제 2 뷰에 대해 0 내지 159의 범위로 조정될 수 있다. 더 적은 수의 양자화 스텝 덕분에, 제 2 뷰는 제 1 뷰와 비교하여 더 높은 비율로 압축될 수 있다. 루마 샘플 및 크로마 샘플에 대해 상이한 양자화 스텝 크기가 사용될 수 있다. 비대칭 샘플 도메인 양자화의 특수 사례로서, 양자화 스텝의 수가 2의 제곱과 일치할 때는 비트 깊이 비대칭 스테레오스코픽 비디오(bit-depth-asymmetric stereoscopic video)라고 말할 수 있다.
d) 비대칭 변환 도메인 양자화(asymmetric transform-domain quantization). 두 뷰의 변환 계수는 상이한 스텝 크기로 양자화된다. 그 결과로서, 뷰 중 하나의 뷰는 충실도가 더 낮으며 블록킹 및 링잉과 같은 눈에 보이는 코딩 아티팩트 량이 더 많아질 수 있다.
e) 전술한 여러 인코딩 기술의 조합.
전술한 형태의 비대칭 스테레오스코픽 비디오 코딩은 도 9에서 예시된다. 제 1 행(row)은 오직 변환 코딩된 고품질 뷰를 제공한다. 나머지 행은 상이한 단계, 즉 다운샘플링, 샘플 도메인 양자화, 및 변환 기반 코딩을 이용하여 저 품질 뷰를 생성하도록 연구된 여러 인코딩 조합을 제공한다. 도 9로부터 프로세싱 체인에서 다른 스텝이 적용되는 방법에 무관하게 다운샘플링 또는 샘플 도메인 양자화가 적용되거나 빠질 수 있다는 것이 관찰될 수 있다. 마찬가지로, 변환 도메인 코딩 스텝에서 양자화 스텝은 다른 스텝과 관계 없이 선택될 수 있다. 그러므로 비대칭 스테레오스코픽 비디오 코딩의 실제 실현은 도 9의 (행(e)에서 예시된 바와 같은 조합된 방식으로) 비대칭을 성취하기에 적절한 기술을 사용될 수 있다.
실시예에 따르면, 본 발명은 예를 들면, 사이드-바이-사이드 프레임 포장 구성에서 스테레오스코픽 또는 멀티뷰 비디오 표현을 포함하는 프레임-포장 비디오에 적용될 수 있다. 프레임-포장된 프레임의 기본 계층은 두 뷰가 대략적으로 동등한 시각 품질을 갖는 대칭 스테레오스코픽 비디오를 표현할 수 있거나 아니면 프레임-포장된 프레임의 기본 계층은 비대칭 스테레오스코픽 비디오를 표현할 수 있다. 프레임-포장된 프레임의 강화 계층은 기본 계층의 프레임-포장된 프레임의 구성성분 프레임 중 한 프레임에만 관련할 수 있다. 강화 계층은 비대칭 스테레오스코픽 비디오 코딩을 활용하도록 코딩될 수 있거나 아니면 강화 계층은 기본 계층이 비대칭 스테레오스코픽 비디오로서 코딩된 경우에는 대칭 스테레오스코픽 비디오 표현을 제공하도록 코딩될 수 있다. 강화 계층은 기본 계층의 각 구성성분 프레임을 강화하는 구성성분 프레임을 포함하는 타일 세트를 포함할 수 있다. EL 타일 세트는 다양한 다른 실시예에 따라서 코딩 및/또는 디코딩될 수 있다. 예를 들면, 강화 계층은 다음 중 하나 이상을 포함할 수 있다.
Figure 112016012749284-pct00011
구성성분 프레임 중 한 프레임에 대해 공간 강화
Figure 112016012749284-pct00012
구성성분 프레임 중 한 프레임에 대해 품질 강화
Figure 112016012749284-pct00013
구성성분 프레임 중 한 프레임에 대해 크로마 포맷 강화
Figure 112016012749284-pct00014
구성성분 프레임 중 한 프레임에 대해 비트 깊이 강화.
실시예에 따르면, 본 발명은 기본 계층이 스테레오스코픽 비디오와 같은 임의의 형태의 프레임-포장 비디오를 포함하고, 강화 계층이 스테레오스코픽 비디오에서 좌측 뷰의 픽처와 같은 단지 한 종류만의 구성성분 프레임으로 구성되는 픽처 시퀀스를 포함하는 사례에 적용될 수 있다. 강화 계층은 예를 들면 프레임-포장 기본 계층 내 각각의 뷰의 수직 또는 수평 해상도를 증가시키는데 사용될 수 있다. 전체 EL 픽처는 EL 타일 세트를 포함하는 것으로 간주될 수 있으며 각각의 BL 타일 세트는 EL에 대응하는 구성성분 프레임만을 포함하는 것으로 간주될 수 있다.
본 발명의 다른 양태는 디코더가 기본 계층 픽처 및 적어도 하나의 강화 계층 픽처를 수신할 때의 디코더의 동작이다. 도 10은 본 발명의 실시예를 채용하기에 적합한 비디오 디코더의 블록도를 도시한다.
디코더는 수신된 신호에 대하여 전술한 인코더의 엔트로피 인코더(330)의 역 동작으로서 엔트로피 디코딩을 수행하는 엔트로피 디코더(600)를 포함한다. 엔트로피 디코더(600)는 엔트로피 디코딩의 결과를 예측 오차 디코더(602) 및 픽셀 예측기(604)로 출력한다.
픽셀 예측기(604)는 엔트로피 디코더(600)의 출력을 수신한다. 픽셀 예측기(604) 내 예측기 선택기(614)는 인트라-예측, 인터-예측, 또는 보간 동작이 실행될지를 결정한다. 예측기 선택기는 그 뿐만 아니라 이미지 블록(616)의 예측된 표현을 제 1 결합기(613)로 출력할 수 있다. 이미지 블록(616)의 예측된 표현은 재구성된 예측 오차 신호(612)와 함께 사용되어 일차 재구성된 이미지(618)를 생성한다. 일차 재구성된 이미지(618)는 예측기(614)에서 사용되거나 필터(620)로 전달될 수 있다. 필터(620)는 필터링을 적용하여 최종 재구성된 신호(622)를 출력한다. 최종 재구성된 신호(622)는 참조 프레임 메모리(624)에 저장될 수 있고, 참조 프레임 메모리(624)는 또한 예측 동작을 위해 예측기(614)에 연결된다.
예측 오차 디코더(602)는 엔트로피 디코더(600)의 출력을 수신한다. 예측 오차 디코더(602)의 역양자화기(692)는 엔트로피 디코더(600)의 출력을 역양자화할 수 있으며 역변환 블록(693)은 역양자화기(692)에 의해 출력된 역양자화된 신호에 대해 역 변환 동작을 수행할 수 있다. 엔트로피 디코더(600)의 출력은 또한 예측 오차 신호가 적용되지 않음을 표시할 수 있으며 이 경우 예측 오차 디코더는 모두 제로의 출력 신호를 발생한다.
도 11에서 도시된 실시예의 디코딩 동작은 인코딩 동작의 반대이다. 그래서, 디코딩 프로세스에서, 디코더는 강화 계층 픽처 내 한 세트의 타일에 관한 정보를 취득(1100)할 수 있고 기본 계층 픽처 내 한 세트의 타일에 관한 정보를 취득(1102)할 수 있다. 그런 다음 디코더는 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득(1104)할 수 있는데, 이 코딩 제한은 기본 계층 픽처 내 타일 세트에 관련하여 적어도 인터-계층 예측 제한을 포함한다. 그러면 디코더는 코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩(1106)한다.
실시예에 따르면, 전술한 바와 같이, 타일 세트에 관한 정보 및 코딩 제한은 하나 이상의 SEI 메시지로부터 구할 수 있다.
디코딩된 픽처는 참조 프레임 버퍼 내에 넣을 수 있고, 그래서 디코딩된 픽처는 움직임 보상 예측을 이용하여 후속 프레임을 디코딩하는데 사용될 수 있다. 예시적인 구현에서, 인코더 및/또는 디코더는 디코딩된 강화 계층 픽처 및 기본 계층 픽처를 개별적으로 참조 픽처 프레임 내에 넣을 수 있다.
앞에서, 일부 실시예는 타일 및/또는 타일 세트와 관련하여 설명되었다. 실시예는 달리 명명될 수 있는 유사한 개념으로 동등하게 실현될 수 있다는 것을 이해하여야 한다. 예를 들면, 실시예는 타일 또는 타일 세트 대신 장방형 슬라이스로 실현될 수 있다. 제 2 예에서, 실시예는 타일 세트 대신 슬라이스 그룹으로 실현될 수 있다. 제 3 예에서, 실시예는 타일 세트라기 보다는 격리된 영역으로 실현될 수 있다.
앞에서 일부 실시예는 비트스트림으로의 또는 코딩된 비디오 시퀀스로의 표시, 신택스 요소 및/또는 신택스 구조를 인코딩하는 것, 및/또는 비트스트림으로부터 또는 코딩된 비디오 시퀀스로부터 표시, 신택스 요소, 및/또는 신택스 구조를 디코딩하는 것과 관련하여 설명되었다. 그러나 실시예는 표시, 신택스 요소 및/또는 신택스 구조를 코딩된 슬라이스와 같이 비디오 코딩 계층 데이터를 포함하는 코딩된 비디오 시퀀스 또는 비트스트림과 무관한 신택스 구조 또는 데이터 유닛으로 인코딩할 때, 및/또는 코딩된 슬라이스와 같이 비디오 코딩 계층 데이터를 포함하는 코딩된 비디오 시퀀스 또는 비트스트림과 무관한 신택스 구조 또는 데이터 유닛으로부터 표시, 신택스 요소 및/또는 신택스 구조를 디코딩할 때 실현될 수 있다는 것을 이해하여야 한다. 예를 들면, 일부 실시예에서, 앞의 임의의 실시예에 따른 표시는 예를 들면 SDP와 같은 제어 프로토콜을 이용하여 외부에서 코딩된 비디오 시퀀스로부터 전달된 비디오 파라미터 세트 또는 시퀀스 파라미터 세트로 코딩될 수 있다. 계속하여 같은 예에서, 수신기는 비디오 파라미터 세트 또는 시퀀스 파라미터 세트를 예를 들면 제어 프로토콜을 이용하여 구할 수 있으며 디코딩하기 위해 비디오 파라미터 세트 또는 시퀀스 파라미터 세트를 제공할 수 있다.
앞에서, 예시적인 실시예는 비트스트림의 신택스를 활용하여 설명되었다. 그러나 대응하는 구조 및/또는 컴퓨터 프로그램이 비트스트림을 생성하는 인코더에서 및/또는 비트스트림을 디코딩하는 디코더에서 존재할 수 있다는 것을 이해하여야 한다. 마찬가지로, 예시적인 실시예가 인코더를 참조하여 설명되는 곳에서, 결과적인 비트스트림 및 디코더는 자체 내에 대응하는 요소를 가지고 있다는 것을 이해하여야 한다. 마찬가지로, 예시적인 실시예가 디코더를 참조하여 설명되는 곳에서, 인코더는 디코더에 의해 디코딩될 비트스트림을 발생하기 위한 구조 및/또는 컴퓨터 프로그램을 갖고 있다는 것을 이해하여야 한다.
앞에서, 일부 실시예는 강화 계층 및 기본 계층을 참조하여 설명되었다. 기본 계층은 강화 계층의 임의의 참조 계층일 수 있으며 비트스트림 전체의 기본 계층이어야 할 필요는 없다는 것을 이해하여야 한다.
앞에서 설명된 본 발명의 실시예는 연루된 프로세스를 이해하는 데 도움을 주기 위해서 개별의 인코더 및 디코더의 관점에서 코덱을 설명한다. 그러나, 장치, 구조 및 동작은 단일의 인코더-디코더 장치/구조/동작으로서 구현될 수 있다는 것이 인식될 것이다. 또한, 본 발명의 일부 실시예에서, 코더 및 디코더는 일부 또는 모든 공통 요소를 공유할 수 있다.
비록 앞의 예가 전자 디바이스 내부의 코덱 내부에서 동작하는 본 발명의 실시예를 설명할지라도, 아래에 설명되는 바와 같이 본 발명은 임의의 비디오 코덱의 일부로서 구현될 수 있다고 인식될 것이다. 그러므로, 예를 들어, 본 발명의 실시예는 고정 또는 유선 통신 경로를 통해 비디오 코딩을 실시할 수 있는 비디오 코덱에서 구현될 수 있다.
그러므로, 사용자 장비는 전술한 본 발명의 실시예에서 설명된 바와 같은 비디오 코덱을 포함할 수 있다. 사용자 장비라는 용어는 이동 전화, 휴대용 데이터 처리 디바이스 또는 휴대용 웹 브라우저와 같은 임의의 적합한 형태의 무선 사용자 장비를 망라하려는 것이 인식될 것이다.
그뿐만 아니라 공중 육상 모바일 네트워크(public land mobile network, PLMN)의 요소 또한 전술한 바와 같은 비디오 코덱을 포함할 수 있다.
일반적으로, 본 발명의 다양한 실시예는 하드웨어 또는 특수 목적 회로, 소프트웨어, 로직 또는 이들의 임의의 조합으로 구현될 수 있다. 예를 들면, 비록 본 발명이 이것으로 한정되지 않지만, 일부 양태는 하드웨어로 구현될 수 있는데 반해, 다른 양태는 컨트롤러, 마이크로프로세서 또는 다른 컴퓨팅 디바이스에 의해 실행될 수 있는 펌웨어 또는 소프트웨어에서 구현될 수 있다. 본 발명의 다양한 양태가 블록도, 플로우 차트로서 또는 일부 다른 회화적 표현을 이용하여 묘사되고 설명될 수 있지만, 본 출원에서 설명된 이러한 블록, 장치, 시스템, 기술 또는 방법은, 비한정적인 예시로서, 하드웨어, 소프트웨어, 펌웨어, 특수 목적 회로나 로직, 범용 하드웨어나 컨트롤러나 다른 컴퓨팅 디바이스, 또는 이들의 일부 조합으로 구현될 수 있다는 것 또한 물론이다.
본 발명의 실시예는 프로세서 엔티티에서와 같은 모바일 디바이스의 데이터 프로세서에 의해 실행가능한 컴퓨터소프트웨어에 의해, 또는 하드웨어에 의해, 또는 소프트웨어와 하드웨어의 조합에 의해 구현될 수 있다. 또한, 이 점에서, 도면에서처럼 로직 흐름의 임의의 블록은 프로그램 단계, 또는 상호연결된 로직 회로, 블록 및 기능, 또는 프로그램 단계와 로직 회로, 블록 및 기능의 조합을 표현할 수 있다는 것을 주목하여야 한다. 소프트웨어는 메모리 칩, 또는 프로세서 내부에서 구현된 메모리 블록과 같은 물리적 매체, 하드 디스크나 플로피 디스크와 같은 자기 매체, 그리고 예를 들어 DVD 및 그의 데이터 변형체인 CD와 같은 광학 매체 상에 저장될 수 있다.
메모리는 지엽적인 기술 환경에 적합한 임의의 형태를 가질 수 있으며 반도체 기반 메모리 디바이스, 자기 메모리 디바이스 및 시스템, 광학 메모리 디바이스 및 시스템, 고정 메모리 및 제거가능한 메모리와 같은 임의의 적합한 데이터 저장 기술을 이용하여 구현될 수 있다. 데이터 프로세서는 지엽적인 기술 환경에 적합한 임의의 형태를 가질 수 있으며, 비한정적인 예시로서 범용 컴퓨터, 특수 목적 컴퓨터, 마이크로프로세서, 디지털 신호 프로세서(digital signal processor, DSP) 및 멀티-코어 프로세서 아키텍처에 기반한 프로세서 중 하나 이상을 포함할 수 있다.
본 발명의 실시예는 집적 회로 모듈과 같은 다양한 컴포넌트에서 실시될 수 있다. 집적 회로의 디자인은 대체로 고도로 자동화된 프로세스이다. 복잡하고 강력한 소프트웨어 툴은 로직 레벨 디자인을 반도체 기판 상에서 에칭되어 형성되게 준비된 반도체 회로 디자인으로 변환하는데 이용할 수 있다.
캘리포니아 마운틴 뷰 소재의 시놉시스 인코포레이티드(Synopsys Inc.)와 캘리포니아 산호세 소재의 카덴스 디자인(Cadence Design)에 의해 제공된 것과 같은 프로그램은 자동으로 전도체를 경로설정하고 잘 설정된 디자인 룰뿐만 아니라 미리 저장된 디자인 모듈의 라이브러리를 이용하여 반도체 칩상에 컴포넌트를 배치한다. 일단 반도체 회로의 디자인이 완성되면, 표준화된 전자 포맷(예를 들면, Opus 또는 GDSII 등)으로 만들어진 결과적인 디자인은 반도체 제조 설비 또는 제조용 "팹(fab)"으로 전달될 수 있다.
전술한 설명은 본 발명의 예시적인 실시예의 풍부하고 유익한 설명을 예시적이고 비한정적인 예시로서 제공하였다. 그러나, 첨부 도면 및 첨부의 청구범위와 함께 읽어볼 때 전술한 설명에 비추어 관련 기술에서 통상의 지식을 가진 자에게는 다양한 수정과 적응이 자명해질 수 있다. 그러나, 그럼에도 본 발명의 가르침의 그러한 모든 변형 및 유사한 변형은 본 발명의 범주 내에 속할 것이다.
제 1 실시예에 따른 방법은 기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하기 위한 방법을 포함하며, 이 방법은,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하는 단계와,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하는 단계와,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득하는 단계 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 와,
코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하는 단계를 포함한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 오직 기본 계층 픽처 내 타일 세트만으로부터의 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하되 인터-계층 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측을 이용하며 그리고 시간 예측을 이용하지 않되 인트라 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측을 이용하되 시간 예측을 이용하지 않고 그리고 인트라 예측을 이용하지 않고 예측되는 것으로 정의하며 예측 블록 내 모든 잔차는 0과 같다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트의 재구성이 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일하다고 표시한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트가 움직임 및 인터-계층 예측 제한된 타일 세트라고 정의한다.
실시예에 따르면, 코딩 제한은 인터-계층 예측에 사용된 기본 계층 픽처 내 타일 세트가 움직임 제한되는 것임을 표시한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트가 단일 루프 디코딩 타일 세트인 것으로 정의한다.
실시예에 따르면, 단일 루프 디코딩에서, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하여 예측되는 것으로 정의하며 만일 기본 계층 픽처가 랜덤 액세스 픽처이면 인터-계층 예측을 이용하여 예측되는 것으로 정의한다.
실시예에 따르면, 방법은 또한 강화 계층 픽처 내 타일 세트의 코딩 제한의 적어도 일부를 보충 강화 정보(Supplemental Enhancement Information, SEI) 메시지로부터 취득하는 단계를 포함한다.
실시예에 따르면, 방법은 또한 상기 타일 세트에 대한 인트라-계층 또는 시간 예측 제한을 제 1 SEI 메시지로부터 취득하는 단계와, 상기 타일 세트에 대한 인터-계층 예측 제한을 제 2 SEI 메시지로부터 취득하는 단계를 포함한다.
실시예에 따르면, 강화 계층 픽처 내 타일 세트는 기본 계층 픽처 내 대응하는 타일 세트에 대한 강화 정보를 포함하며, 강화 정보는 다음과 같은,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 크로마에 대해 강화 계층 픽처 내 타일 세트의 크로마의 충실도를 증가시키는 것,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 비트 깊이에 대해 강화 계층 픽처 내 타일 세트의 비트 깊이를 증가시키는 것,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 품질에 대해 강화 계층 픽처 내 타일 세트의 품질을 증가시키는 것, 또는
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 공간 해상도에 대해 강화 계층 픽처 내 타일 세트의 공간 해상도를 증가시키는 것 중 적어도 하나를 포함한다.
제 2 실시예에 따른 장치는,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하도록 구성된 비디오 디코더를 포함하며, 비디오 디코더는,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 하고,
코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하도록 구성된다.
제 3 실시예에 따르면, 장치에 의해 사용하기 위한 코드가 저장되어 있는 컴퓨터 판독 가능한 저장 매체가 제공되며, 코드는 프로세서에 의해 실행될 때, 장치로 하여금,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하는 것과,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하는 것과,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득하는 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 것과,
코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하는 것을 수행하게 한다.
제 4 실시예에 따르면, 적어도 하나의 프로세서 및 적어도 하나의 메모리가 제공되며, 상기 적어도 하나의 메모리에는 코드가 저장되고, 코드는 상기 적어도 하나의 프로세서에 의해 실행될 때, 장치로 하여금,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하는 것과,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하는 것과,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득하는 것 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 과,
코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하는 것을 수행하게 한다.
제 5 실시예에 따른 방법은 강화 계층 픽처 내 하나 이상의 타일을 인코딩하기 위한 방법을 포함하며, 이 방법은,
강화 계층 픽처 내 타일 세트를 정의하는 단계와,
기본 계층 픽처 내 타일 세트를 정의하는 단계와,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의하는 단계 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 와,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 인코딩하는 단계를 포함한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 오직 기본 계층 픽처 내 타일 세트만으로부터의 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하되 인터-계층 예측을 이용하지 않고 예측되는 것으로 정의한다.
실시예에 따르면, 코딩 제한은 강화 계층 픽처 내 타일 세트의 재구성이 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일하다고 표시한다.
실시예에 따르면, 방법은 또한 강화 계층 픽처 내 타일 세트의 코딩 제한이 움직임 및 인터-계층 예측 제한된 타일 세트라고 정의한다.
실시예에 따르면, 코딩 제한은 인터-계층 예측에 사용된 기본 계층 픽처 내 타일 세트가 움직임 제한되는 것임을 표시한다.
실시예에 따르면, 방법은 또한 강화 계층 픽처 내 타일 세트가 단일 루프 디코딩 타일 세트인 것으로 정의하는 단계를 포함한다.
실시예에 따르면, 단일 루프 디코딩에서, 코딩 제한은 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하며 만일 기본 계층 픽처가 랜덤 액세스 픽처이면 인터-계층 예측을 이용하여 예측되는 것으로 정의한다.
실시예에 따르면, 방법은 또한 강화 계층 픽처 내 타일 세트의 코딩 제한의 적어도 일부를 보충 강화 정보(Supplemental Enhancement Information, SEI) 메시지로부터 취득하는 단계를 포함한다.
실시예에 따르면, 제 1 SEI 메시지는 타일 세트에 대한 인트라-계층 또는 시간 예측 제한을 표시하는데 사용되며 제 2 SEI 메시지는 타일 세트에 대한 인터-계층 예측 제한을 표시하는데 사용된다.
실시예에 따르면, 강화 계층 픽처 내 타일 세트는 기본 계층 픽처 내 대응하는 타일 세트에 대한 강화 정보를 포함하며, 강화 정보는 다음과 같은,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 크로마에 대해 강화 계층 픽처 내 타일 세트의 크로마의 충실도를 증가시키는 것,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 비트 깊이에 대해 강화 계층 픽처 내 타일 세트의 비트 깊이를 증가시키는 것,
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 품질에 대해 강화 계층 픽처 내 타일 세트의 품질을 증가시키는 것, 또는
- 상기 기본 계층 픽처 내 대응하는 타일 세트의 공간 해상도에 대해 강화 계층 픽처 내 타일 세트의 공간 해상도를 증가시키는 것 중 적어도 하나를 포함한다.
제 6 실시예에 따른 장치는,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 인코딩하도록 구성된 비디오 인코더를 포함하며, 상기 비디오 인코더는 또한,
강화 계층 픽처 내 타일 세트를 정의하고,
기본 계층 픽처 내 타일 세트를 정의하고,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 하고,
타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 인코딩하도록 구성된다.
제 7 실시예에 따르면, 장치에 의해 사용하기 위한 코드가 저장된 컴퓨터 판독가능한 저장 매체가 제공되며, 이 코드는 프로세서에 의해 실행될 때, 장치로 하여금,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 인코딩하는 것과,
강화 계층 픽처 내 타일 세트를 정의하는 것과,
기본 계층 픽처 내 타일 세트를 정의하는 것과,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의하는 것 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 과,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 인코딩하는 것을 수행하게 한다.
제 8 실시예에 따르면, 적어도 하나의 프로세서 및 적어도 하나의 메모리가 제공되며, 상기 적어도 하나의 메모리에는 코드가 저장되며, 이 코드는 상기 적어도 하나의 프로세서에 의해 실행될 때, 장치로 하여금,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 인코딩하는 것과,
강화 계층 픽처 내 타일 세트를 정의하는 것과,
기본 계층 픽처 내 타일 세트를 정의하는 것과,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의하는 것 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 과,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 인코딩하는 것을 수행하게 한다.
제 9 실시예에 따르면, 기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하도록 구성된 비디오 디코더가 제공되며, 이 비디오 디코더는,
강화 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
기본 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 하고,
코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하도록 구성된다.
제 10 실시예에 따르면,
기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 인코딩하도록 구성된 비디오 인코더가 제공되며, 상기 비디오 인코더는 또한,
강화 계층 픽처 내 타일 세트를 정의하고,
기본 계층 픽처 내 타일 세트를 정의하고,
강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의 ― 코딩 제한은 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함함 ― 하고,
상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 코딩 제한에 따라서 강화 계층 픽처 내 타일 세트를 인코딩하도록 구성된다.

Claims (46)

  1. 기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하기 위한 방법으로서,
    강화 계층 픽처 내 타일 세트에 관한 정보를 취득하는 단계와,
    기본 계층 픽처 내 타일 세트에 관한 정보를 취득하는 단계와,
    상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득하는 단계 ― 상기 코딩 제한은 상기 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함하고, 상기 강화 계층 픽처 내 타일 세트의 재구성이 상기 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일한 것을 표시함 ― 와,
    상기 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하는 단계를 포함하는
    디코딩 방법.
  2. 제 1 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의하는
    디코딩 방법.
  3. 제 1 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 오직 기본 계층 픽처 내 타일 세트만으로부터의 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의하는
    디코딩 방법.
  4. 제 1 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하되 인터-계층 예측을 이용하지 않고 예측되는 것으로 정의하는
    디코딩 방법.
  5. 삭제
  6. 제 1 항에 있어서,
    상기 코딩 제한은 인터-계층 예측에 사용된 상기 기본 계층 픽처 내 타일 세트가 움직임 제한되는 것을 표시하는
    디코딩 방법.
  7. 제 1 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트가 단일 루프 디코딩 타일 세트인 것으로 정의하는
    디코딩 방법.
  8. 제 7 항에 있어서,
    상기 단일 루프 디코딩에서, 상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하고 만일 상기 기본 계층 픽처가 랜덤 액세스 픽처이면 인터-계층 예측을 이용하여 예측되는 것으로 정의하는
    디코딩 방법.
  9. 제 1 항에 있어서,
    상기 강화 계층 픽처 내 타일 세트의 상기 코딩 제한의 적어도 일부를 보충 강화 정보(Supplemental Enhancement Information: SEI) 메시지로부터 취득하는 단계를 더 포함하는
    디코딩 방법.
  10. 제 9 항에 있어서,
    상기 타일 세트에 대한 인트라-계층 또는 시간 예측 제한을 제 1 SEI 메시지로부터 취득하는 단계와, 상기 타일 세트에 대한 인터-계층 예측 제한을 제 2 SEI 메시지로부터 취득하는 단계를 더 포함하는
    디코딩 방법.
  11. 제 1 항 내지 제 4 항 및 제 6 항 내지 제 10 항 중 어느 한 항에 있어서,
    상기 강화 계층 픽처 내 타일 세트는 상기 기본 계층 픽처 내 대응하는 타일 세트에 대한 강화 정보를 포함하며,
    상기 강화 정보는,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 크로마에 대해 상기 강화 계층 픽처 내 상기 타일 세트의 크로마의 충실도를 증가시키는 것,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 비트 깊이에 대해 상기 강화 계층 픽처 내 타일 세트의 비트 깊이를 증가시키는 것,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 품질에 대해 상기 강화 계층 픽처 내 타일 세트의 품질을 증가시키는 것, 또는
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 공간 해상도에 대해 상기 강화 계층 픽처 내 타일 세트의 공간 해상도를 증가시키는 것
    중 적어도 하나를 포함하는
    디코딩 방법.
  12. 기본 계층 및 적어도 하나의 강화 계층을 포함하는 스케일러블 비트스트림을 디코딩하는 장치로서,
    상기 장치는,
    강화 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
    기본 계층 픽처 내 타일 세트에 관한 정보를 취득하고,
    상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득 ― 상기 코딩 제한은 상기 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함하고, 상기 강화 계층 픽처 내 타일 세트의 재구성이 상기 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일한 것을 표시함 ― 하고,
    상기 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하도록 구성되는
    디코딩 장치.
  13. 제 12 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의하는
    디코딩 장치.
  14. 제 12 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 오직 기본 계층 픽처 내 타일 세트만으로부터의 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의하는
    디코딩 장치.
  15. 제 12 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하되 인터-계층 예측을 이용하지 않고 예측되는 것으로 정의하는
    디코딩 장치.
  16. 삭제
  17. 제 12 항에 있어서,
    상기 코딩 제한은 인터-계층 예측에 사용된 상기 기본 계층 픽처 내 타일 세트가 움직임 제한되는 것을 표시하는
    디코딩 장치.
  18. 제 12 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트가 단일 루프 디코딩 타일 세트인 것으로 정의하는
    디코딩 장치.
  19. 제 18 항에 있어서,
    상기 단일 루프 디코딩에서, 상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하고 만일 상기 기본 계층 픽처가 랜덤 액세스 픽처이면 인터-계층 예측을 이용하여 예측되는 것으로 정의하는
    디코딩 장치.
  20. 제 12 항에 있어서,
    상기 디코딩 장치는 또한 상기 강화 계층 픽처 내 타일 세트의 상기 코딩 제한의 적어도 일부를 보충 강화 정보(Supplemental Enhancement Information: SEI) 메시지로부터 취득하도록 구성되는
    디코딩 장치.
  21. 제 20 항에 있어서,
    상기 디코딩 장치는 또한 제 1 SEI 메시지로부터 상기 타일 세트에 대한 인트라-계층 또는 시간 예측 제한을 취득하고 제 2 SEI 메시지로부터 상기 타일 세트에 대한 인터-계층 예측 제한을 취득하도록 구성되는
    디코딩 장치.
  22. 제 12 항 내지 제 15 항 및 제 17 항 내지 제 21 항 중 어느 한 항에 있어서,
    상기 강화 계층 픽처 내 타일 세트는 상기 기본 계층 픽처 내 대응하는 타일 세트에 대한 강화 정보를 포함하며,
    상기 강화 정보는,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 크로마에 대해 상기 강화 계층 픽처 내 타일 세트의 크로마의 충실도를 증가시키는 것,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 비트 깊이에 대해 상기 강화 계층 픽처 내 타일 세트의 비트 깊이를 증가시키는 것,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 품질에 대해 상기 강화 계층 픽처 내 타일 세트의 품질을 증가시키는 것, 또는
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 공간 해상도에 대해 상기 강화 계층 픽처 내 타일 세트의 공간 해상도를 증가시키는 것
    중 적어도 하나를 포함하는
    디코딩 장치.
  23. 컴퓨터 프로그램이 저장된 컴퓨터 판독 가능한 저장 매체로서,
    상기 컴퓨터 프로그램은 프로세서에 의해 실행될 때, 장치로 하여금,
    강화 계층 픽처 내 타일 세트에 관한 정보를 취득하게 하고,
    기본 계층 픽처 내 타일 세트에 관한 정보를 취득하게 하고,
    상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 취득 ― 상기 코딩 제한은 상기 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함하고, 상기 강화 계층 픽처 내 타일 세트의 재구성이 상기 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일한 것을 표시함 ― 하게 하고,
    상기 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 독립적으로 디코딩 가능한 영역으로서 디코딩하게 하는
    컴퓨터 판독가능한 저장 매체.
  24. 강화 계층 픽처 내 하나 이상의 타일을 인코딩하기 위한 방법으로서,
    강화 계층 픽처 내 타일 세트를 정의하는 단계와,
    기본 계층 픽처 내 타일 세트를 정의하는 단계와,
    상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의하는 단계 ― 상기 코딩 제한은 상기 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함하고, 상기 강화 계층 픽처 내 타일 세트의 재구성이 상기 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일한 것을 표시함 ― 와,
    상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 상기 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 인코딩하는 단계를 포함하는
    인코딩 방법.
  25. 제 24 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의하는
    인코딩 방법.
  26. 제 24 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 오직 기본 계층 픽처 내 타일 세트만으로부터의 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의하는
    인코딩 방법.
  27. 제 24 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하되 인터-계층 예측을 이용하지 않고 예측되는 것으로 정의하는
    인코딩 방법.
  28. 삭제
  29. 제 24 항에 있어서,
    상기 코딩 제한은 인터-계층 예측에 사용된 상기 기본 계층 픽처 내 타일 세트가 움직임 제한되는 것을 표시하는
    인코딩 방법.
  30. 제 24 항에 있어서,
    상기 강화 계층 픽처 내 타일 세트의 코딩 제한이 단일 루프 디코딩 타일 세트인 것으로 정의하는 단계를 더 포함하는
    인코딩 방법.
  31. 제 30 항에 있어서,
    상기 단일 루프 디코딩에서, 상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하고 만일 상기 기본 계층 픽처가 랜덤 액세스 픽처이면 인터-계층 예측을 이용하여 예측되는 것으로 정의하는
    인코딩 방법.
  32. 제 24 항에 있어서,
    상기 강화 계층 픽처 내 타일 세트의 상기 코딩 제한의 적어도 일부를 보충 강화 정보(Supplemental Enhancement Information: SEI) 메시지의 형태로 표시하는 단계를 더 포함하는
    인코딩 방법.
  33. 제 32 항에 있어서,
    상기 타일 세트에 대한 인트라-계층 또는 시간 예측 제한을 표시하기 위해 제 1 SEI 메시지가 사용되며, 상기 타일 세트에 대한 인터-계층 예측 제한을 표시하기 위해 제 2 SEI 메시지가 사용되는
    인코딩 방법.
  34. 제 24 항 내지 제 27 항 및 제 29 항 내지 제 33 항 중 어느 한 항에 있어서,
    상기 강화 계층 픽처 내 타일 세트는 상기 기본 계층 픽처 내 대응하는 타일 세트에 대한 강화 정보를 포함하며,
    상기 강화 정보는,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 크로마에 대해 상기 강화 계층 픽처 내 타일 세트의 크로마의 충실도를 증가시키는 것,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 비트 깊이에 대해 상기 강화 계층 픽처 내 타일 세트의 비트 깊이를 증가시키는 것,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 품질에 대해 상기 강화 계층 픽처 내 타일 세트의 품질을 증가시키는 것, 또는
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 공간 해상도에 대해 상기 강화 계층 픽처 내 타일 세트의 공간 해상도를 증가시키는 것
    중 적어도 하나를 포함하는
    인코딩 방법.
  35. 강화 계층 픽처 내 하나 이상의 타일을 인코딩하는 장치로서,
    강화 계층 픽처 내 타일 세트를 정의하고,
    기본 계층 픽처 내 타일 세트를 정의하고,
    상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의 ― 상기 코딩 제한은 상기 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함하고, 상기 강화 계층 픽처 내 타일 세트의 재구성이 상기 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일한 것을 표시함 ― 하고,
    상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 상기 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 인코딩하도록 구성되는
    인코딩 장치.
  36. 제 35 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의하는
    인코딩 장치.
  37. 제 35 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 오직 기본 계층 픽처 내 타일 세트만으로부터의 인터-계층 예측 또는 인트라 예측을 이용하되 시간 예측을 이용하지 않고 예측되는 것으로 정의하는
    인코딩 장치.
  38. 제 35 항에 있어서,
    상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하되 인터-계층 예측을 이용하지 않고 예측되는 것으로 정의하는
    인코딩 장치.
  39. 삭제
  40. 제 35 항에 있어서,
    상기 코딩 제한은 인터-계층 예측에 사용된 상기 기본 계층 픽처 내 타일 세트가 움직임 제한되는 것을 표시하는
    인코딩 장치.
  41. 제 35 항에 있어서,
    상기 인코딩 장치는 또한 상기 강화 계층 픽처 내 타일 세트의 상기 코딩 제한이 단일 루프 디코딩 타일 세트인 것으로 정의하도록 구성되는
    인코딩 장치.
  42. 제 41 항에 있어서,
    상기 단일 루프 디코딩에서, 상기 코딩 제한은 상기 강화 계층 픽처 내 타일 세트 내 모든 예측 블록이 시간 예측 또는 인트라 예측을 이용하고 만일 상기 기본 계층 픽처가 랜덤 액세스 픽처이면 인터-계층 예측을 이용하여 예측되는 것으로 정의하는
    인코딩 장치.
  43. 제 35 항에 있어서,
    상기 인코딩 장치는 또한 상기 강화 계층 픽처 내 타일 세트의 상기 코딩 제한의 적어도 일부를 보충 강화 정보(Supplemental Enhancement Information: SEI) 메시지의 형태로 표시하도록 구성되는
    인코딩 장치.
  44. 제 43 항에 있어서,
    상기 타일 세트에 대한 인트라-계층 또는 시간 예측 제한을 표시하기 위해 제 1 SEI 메시지가 사용되며, 상기 타일 세트에 대한 인터-계층 예측 제한을 표시하기 위해 제 2 SEI 메시지가 사용되는
    인코딩 장치.
  45. 제 35 항 내지 제 38 항 및 제 40 항 내지 제 44 항 중 어느 한 항에 있어서,
    상기 강화 계층 픽처 내 타일 세트는 상기 기본 계층 픽처 내 대응하는 타일 세트에 대한 강화 정보를 포함하며,
    상기 강화 정보는,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 크로마에 대해 상기 강화 계층 픽처 내 타일 세트의 크로마의 충실도를 증가시키는 것,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 비트 깊이에 대해 상기 강화 계층 픽처 내 타일 세트의 비트 깊이를 증가시키는 것,
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 품질에 대해 상기 강화 계층 픽처 내 타일 세트의 품질을 증가시키는 것, 또는
    - 상기 기본 계층 픽처 내 대응하는 타일 세트의 공간 해상도에 대해 상기 강화 계층 픽처 내 타일 세트의 공간 해상도를 증가시키는 것
    중 적어도 하나를 포함하는
    인코딩 장치.
  46. 컴퓨터 프로그램이 저장된 컴퓨터 판독가능한 저장 매체로서,
    상기 컴퓨터 프로그램은 프로세서에 의해 실행될 때, 장치로 하여금,
    강화 계층 픽처 내 타일 세트를 정의하게 하고,
    기본 계층 픽처 내 타일 세트를 정의하게 하고,
    상기 강화 계층 픽처 내 타일 세트에 대한 코딩 제한을 정의 ― 상기 코딩 제한은 상기 기본 계층 픽처에 대하여 적어도 인터-계층 예측 제한을 포함하고, 상기 강화 계층 픽처 내 타일 세트의 재구성이 상기 기본 계층 픽처 내 대응하는 타일 세트의 재구성과 동일한 것을 표시함 ― 하게 하고,
    상기 타일 세트가 독립적으로 디코딩 가능한 영역을 표현하도록 상기 코딩 제한에 따라서 상기 강화 계층 픽처 내 타일 세트를 인코딩하게 하는
    컴퓨터 판독가능한 저장 매체.
KR1020167003391A 2013-07-11 2014-06-25 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램 KR101881677B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1312460.7 2013-07-11
GB1312460.7A GB2516224A (en) 2013-07-11 2013-07-11 An apparatus, a method and a computer program for video coding and decoding
PCT/FI2014/050515 WO2015004323A1 (en) 2013-07-11 2014-06-25 An apparatus, a method and a computer program for video coding and decoding

Publications (2)

Publication Number Publication Date
KR20160031513A KR20160031513A (ko) 2016-03-22
KR101881677B1 true KR101881677B1 (ko) 2018-07-24

Family

ID=49081152

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167003391A KR101881677B1 (ko) 2013-07-11 2014-06-25 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램

Country Status (8)

Country Link
US (1) US10136150B2 (ko)
EP (1) EP3020193A4 (ko)
JP (1) JP6169273B2 (ko)
KR (1) KR101881677B1 (ko)
CN (1) CN105519118A (ko)
BR (1) BR112016000470A8 (ko)
GB (1) GB2516224A (ko)
WO (1) WO2015004323A1 (ko)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9674522B2 (en) * 2013-04-08 2017-06-06 Qualcomm Incorporated Device and method for scalable coding of video information
US9510001B2 (en) * 2013-07-09 2016-11-29 Electronics And Telecommunications Research Institute Video decoding method and apparatus using the same
GB2516224A (en) 2013-07-11 2015-01-21 Nokia Corp An apparatus, a method and a computer program for video coding and decoding
JP6261215B2 (ja) * 2013-07-12 2018-01-17 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
US10368078B2 (en) * 2013-07-15 2019-07-30 Sony Corporation Extensions of motion-constrained tile sets SEI message for interactivity
GB2516824A (en) 2013-07-23 2015-02-11 Nokia Corp An apparatus, a method and a computer program for video coding and decoding
US9712837B2 (en) * 2014-03-17 2017-07-18 Qualcomm Incorporated Level definitions for multi-layer video codecs
WO2016198325A1 (en) * 2015-06-08 2016-12-15 Thomson Licensing Method and apparatus for color gamut scalability (cgs) video encoding with artifact detection
US11076153B2 (en) * 2015-07-31 2021-07-27 Stc.Unm System and methods for joint and adaptive control of rate, quality, and computational complexity for video coding and video delivery
WO2017140685A1 (en) * 2016-02-16 2017-08-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Efficient adaptive streaming
FI20165114A (fi) 2016-02-17 2017-08-18 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodausta ja videokoodauksen purkua varten
EP3226561A1 (en) * 2016-03-31 2017-10-04 Thomson Licensing Method and apparatus for coding a video into a bitstream carrying region-based post processing parameters into an sei nesting message
US11184624B2 (en) * 2016-05-19 2021-11-23 Qualcomm Incorporated Regional random access in pictures
CN115022625A (zh) 2016-10-04 2022-09-06 有限公司B1影像技术研究所 图像数据编码/解码方法和计算机可读记录介质
CN110169074B (zh) * 2017-01-05 2021-09-28 夏普株式会社 用于对虚拟现实应用的mcts进行信令通知的系统和方法
US10904521B2 (en) 2017-03-03 2021-01-26 Qualcomm Incorporated Extracting MCTS sub-bitstreams for video coding
GB2594615B (en) * 2017-03-20 2022-11-30 Canon Kk Method and apparatus for encoding and transmitting at least a spatial part of a video sequence
KR20230079466A (ko) * 2017-04-11 2023-06-07 브이아이디 스케일, 인크. 면 연속성을 사용하는 360 도 비디오 코딩
WO2019010233A1 (en) 2017-07-05 2019-01-10 Red. Com, Llc PROCESSING VIDEO IMAGE DATA IN ELECTRONIC DEVICES
JP7224280B2 (ja) * 2017-07-17 2023-02-17 ビー1、インスティテュート、オブ、イメージ、テクノロジー、インコーポレイテッド 画像データ符号化/復号化方法及び装置
FR3072850B1 (fr) * 2017-10-19 2021-06-04 Tdf Procedes de codage et de decodage d'un flux de donnees representatif d'une video omnidirectionnelle
CN109963176B (zh) * 2017-12-26 2021-12-07 中兴通讯股份有限公司 视频码流处理方法、装置、网络设备和可读存储介质
US11589069B2 (en) * 2018-09-20 2023-02-21 Sharp Kabushiki Kaisha Systems and methods for signaling parameters in video coding
JP6656335B2 (ja) * 2018-10-11 2020-03-04 キヤノン株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、及び、プログラム
US11140403B2 (en) * 2018-12-20 2021-10-05 Tencent America LLC Identifying tile from network abstraction unit header
MX2021011016A (es) * 2019-03-11 2021-11-12 Huawei Tech Co Ltd Un codificador, un decodificador y métodos correspondientes.
GB2618718B (en) * 2019-03-20 2024-03-13 V Nova Int Ltd Low complexity enhancement video coding
WO2020252270A1 (en) * 2019-06-13 2020-12-17 Beijing Dajia Internet Information Technology Co., Ltd. Methods and system of subblock transform for video coding
JP7486305B2 (ja) 2019-11-22 2024-05-17 日本無線株式会社 無線受信装置
JP2023508680A (ja) 2019-12-27 2023-03-03 バイトダンス インコーポレイテッド ビデオコーディングにおけるサブピクチャシグナリング
WO2021142369A1 (en) 2020-01-09 2021-07-15 Bytedance Inc. Signalling of the wavefront parallel processing
EP4101172A4 (en) 2020-02-19 2024-03-13 Hfi Innovation Inc CONSTRAINTS FOR CROSS-LAYER REFERENCING
CN115211130B (zh) 2020-02-21 2024-04-09 抖音视界有限公司 基于条带和片图片分割的信令通知的处理视频数据的方法
US11451811B2 (en) * 2020-04-05 2022-09-20 Tencent America LLC Method and apparatus for video coding
US20220279185A1 (en) * 2021-02-26 2022-09-01 Lemon Inc. Methods of coding images/videos with alpha channels
CN114663315B (zh) * 2022-03-30 2022-11-22 天津大学 基于语义融合生成对抗网络的图像比特增强方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070133675A1 (en) 2003-11-04 2007-06-14 Matsushita Electric Industrial Co., Ltd. Video transmitting apparatus and video receiving apparatus

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2801911B2 (ja) 1987-10-16 1998-09-21 日本電気ホームエレクトロニクス 株式会社 予測符号化による画像データの圧縮装置
US8290062B1 (en) * 2000-09-27 2012-10-16 Intel Corporation Method and apparatus for manipulating MPEG video
GB2382940A (en) 2001-11-27 2003-06-11 Nokia Corp Encoding objects and background blocks
FI114679B (fi) * 2002-04-29 2004-11-30 Nokia Corp Satunnaisaloituspisteet videokoodauksessa
JP2004056616A (ja) 2002-07-23 2004-02-19 Media Glue Corp 符号化信号復号装置、符号化信号復号方法および符号化信号復号プログラム
KR100878812B1 (ko) * 2005-05-26 2009-01-14 엘지전자 주식회사 영상신호의 레이어간 예측에 대한 정보를 제공하고 그정보를 이용하는 방법
CN102271249B (zh) * 2005-09-26 2014-04-09 韩国电子通信研究院 用于可伸缩视频的感兴趣区域信息设置方法和解析方法
KR101255226B1 (ko) * 2005-09-26 2013-04-16 한국과학기술원 스케일러블 비디오 코딩에서 다중 roi 설정, 복원을위한 장치 및 방법
EP1952638B1 (en) * 2005-10-12 2020-05-13 InterDigital VC Holdings, Inc. Region of interest h.264 scalable video coding
US8902992B2 (en) * 2007-04-04 2014-12-02 Entropic Communications, Inc. Decoder for selectively decoding predetermined data units from a coded bit stream
US7864189B2 (en) 2007-07-23 2011-01-04 Intel Corporation Converting color data to a color palette
US20090141809A1 (en) * 2007-12-04 2009-06-04 Sony Corporation And Sony Electronics Inc. Extension to the AVC standard to support the encoding and storage of high resolution digital still pictures in parallel with video
CN101478671B (zh) 2008-01-02 2011-05-11 中兴通讯股份有限公司 应用于视频监控的视频编码装置及其视频编码方法
US8542748B2 (en) 2008-03-28 2013-09-24 Sharp Laboratories Of America, Inc. Methods and systems for parallel video encoding and decoding
CN101262604A (zh) 2008-04-23 2008-09-10 哈尔滨工程大学 一种感兴趣区优先传输的可伸缩视频编码方法
CN101742324A (zh) * 2008-11-14 2010-06-16 北京中星微电子有限公司 视频编解码方法、视频编解码系统及编解码器
US20100232504A1 (en) * 2009-03-13 2010-09-16 The State of Oregon acting by and through the State Board of Higher Education on behalf of the Supporting region-of-interest cropping through constrained compression
US9113169B2 (en) 2009-05-07 2015-08-18 Qualcomm Incorporated Video encoding with temporally constrained spatial dependency for localized decoding
GB2486733A (en) 2010-12-24 2012-06-27 Canon Kk Video encoding using multiple inverse quantizations of the same reference image with different quantization offsets
US9060173B2 (en) 2011-06-30 2015-06-16 Sharp Kabushiki Kaisha Context initialization based on decoder picture buffer
US9420280B2 (en) * 2012-06-08 2016-08-16 Qualcomm Incorporated Adaptive upsampling filters
US20140003504A1 (en) 2012-07-02 2014-01-02 Nokia Corporation Apparatus, a Method and a Computer Program for Video Coding and Decoding
US9706199B2 (en) 2012-09-28 2017-07-11 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
JP6290924B2 (ja) 2013-01-07 2018-03-07 ノキア テクノロジーズ オサケユイチア ビデオ・コーディングおよびデコーディングのための方法と装置
US10390024B2 (en) 2013-04-08 2019-08-20 Sony Corporation Region of interest scalability with SHVC
GB2516224A (en) 2013-07-11 2015-01-21 Nokia Corp An apparatus, a method and a computer program for video coding and decoding
KR101757302B1 (ko) 2013-07-14 2017-07-12 엘지전자 주식회사 하이브리드 방송 시스템의 방송 신호를 송신/수신하는 방법 및 장치
WO2015140401A1 (en) 2014-03-17 2015-09-24 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070133675A1 (en) 2003-11-04 2007-06-14 Matsushita Electric Industrial Co., Ltd. Video transmitting apparatus and video receiving apparatus

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
K. Sato, et al. AHG9: Inter-layer Prediction Signaling. JCT-VC of ITU-T and ISO/IEC. JCTVC-M0151 Ver.3, Apr. 18, 2013, pp.1-6
K. Suhring, et al. Tile boundary alignment and inter-layer prediction constraints for SHVC and MV-HEVC. JCT-VC of ITU-T and ISO/IEC. JCTVC-M0464 Ver.1, Apr. 25, 2013, pp.1-5*
K. Ugur, et al. Lightweight single-loop scalability with SHVC. JCT-VC of ITU-T and ISO/IEC. JCTVC-L0111 Ver.2, Jan. 20, 2013, pp.1-2*

Also Published As

Publication number Publication date
JP6169273B2 (ja) 2017-07-26
EP3020193A4 (en) 2017-03-15
EP3020193A1 (en) 2016-05-18
BR112016000470A8 (pt) 2020-01-07
US20160156917A1 (en) 2016-06-02
WO2015004323A1 (en) 2015-01-15
US10136150B2 (en) 2018-11-20
BR112016000470A2 (pt) 2017-07-25
JP2016531467A (ja) 2016-10-06
GB2516224A (en) 2015-01-21
KR20160031513A (ko) 2016-03-22
CN105519118A (zh) 2016-04-20
GB201312460D0 (en) 2013-08-28

Similar Documents

Publication Publication Date Title
KR101881677B1 (ko) 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
JP6687770B2 (ja) ビデオ符号化・復号装置、方法、及びコンピュータプログラム
KR101713005B1 (ko) 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
KR101767331B1 (ko) 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
US10506247B2 (en) Apparatus, a method and a computer program for video coding and decoding
KR101630564B1 (ko) 비디오 코딩을 위한 방법 및 장치
US10547867B2 (en) Method, an apparatus and a computer program product for video coding and decoding
KR101825575B1 (ko) 비디오 코딩 및 디코딩 방법 및 장치
KR102474636B1 (ko) 크로스-채널 잔차 인코딩 및 디코딩을 위한 양자화 파라미터 도출
US20140254681A1 (en) Apparatus, a method and a computer program for video coding and decoding
KR20190033635A (ko) 비디오 인코딩 및 디코딩
US20140085415A1 (en) Method and apparatus for video coding
KR20160132992A (ko) 비디오 코딩 및 디코딩 장치, 방법 및 컴퓨터 프로그램
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
E701 Decision to grant or registration of patent right
GRNT Written decision to grant