KR20180051594A - 개선된 컬러 재맵핑 정보 보충 강화 정보 메시지 프로세싱 - Google Patents

개선된 컬러 재맵핑 정보 보충 강화 정보 메시지 프로세싱 Download PDF

Info

Publication number
KR20180051594A
KR20180051594A KR1020187009939A KR20187009939A KR20180051594A KR 20180051594 A KR20180051594 A KR 20180051594A KR 1020187009939 A KR1020187009939 A KR 1020187009939A KR 20187009939 A KR20187009939 A KR 20187009939A KR 20180051594 A KR20180051594 A KR 20180051594A
Authority
KR
South Korea
Prior art keywords
video data
color
sei message
cri sei
video
Prior art date
Application number
KR1020187009939A
Other languages
English (en)
Other versions
KR102158418B1 (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 KR20180051594A publication Critical patent/KR20180051594A/ko
Application granted granted Critical
Publication of KR102158418B1 publication Critical patent/KR102158418B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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
    • 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/186Methods 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 colour or a chrominance component

Landscapes

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

Abstract

일 예에서, 비디오를 프로세싱하는 방법은 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하는 단계를 포함할 수도 있다. CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함할 수도 있다. 방법은 인코딩된 비디오 데이터를 디코딩하여, 디코딩된 비디오 데이터를 생성하는 단계를 포함할 수도 있다. 방법은 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하기 전에 CRI SEI 메시지에 대응하지 않는 프로세스를 디코딩된 비디오 데이터에 적용하여, 프로세싱된 디코딩된 비디오 데이터를 생성하는 단계를 포함할 수도 있다.

Description

개선된 컬러 재맵핑 정보 보충 강화 정보 메시지 프로세싱
본 출원은 2015 년 9 월 9 일자로 출원된 미국 가출원 제 62/216,254 호의 이익을 주장하며, 그 전체 내용은 본원에 참조로서 포함된다.
기술 분야
본 개시물은 비디오 데이터를 프로세싱하는 것에 관련된다.
디지털 비디오 능력들은 광범위한 디바이스들에 통합될 수 있다. 디지털 비디오 디바이스들은 MPEG-2, MPEG-4, ITU-T H.263, ITU-T H.264/MPEG-4, 파트 10, 어드밴스드 비디오 코딩 (AVC), ITU-T H.265, 고 효율 비디오 코딩 (HEVC) 에 의해 정의된 비디오 코딩 표준들, 및 이러한 표준들의 확장들에서 설명된 바와 같은 비디오 코딩 기법들을 구현할 수도 있다. 디지털 비디오 디바이스들은 디지털 비디오 정보를 캡처, 송신, 수신, 인코딩, 디코딩, 및/또는 저장하도록 구성될 수도 있다. 디지털 비디오 디바이스들은 이러한 비디오 코딩 기법들을 구현함으로써, 디지털 비디오 정보를 보다 효율적으로 캡처, 송신, 수신, 인코딩, 디코딩, 및/또는 저장하도록 구성될 수도 있다.
비디오 코딩 기법들은 비디오 시퀀스들에 내재하는 리던던시를 감소시키기나 제거하기 위한 공간적 (인트라-픽처) 예측 및/또는 시간적 (인터-픽처) 예측을 포함한다. 일 예로서, 블록-기반 비디오 코딩에 대해, 비디오 슬라이스 (예를 들어, 비디오 프레임 또는 비디오 프레임의 일부) 가 사용될 수도 있다. 비디오 슬라이스는, 트리블록들, 코딩 유닛 (CU)들, 및/또는 코딩 노드들로도 지칭될 수도 있는 비디오 블록들로 파티셔닝될 수도 있다. 픽처의 인트라-코딩된 (I) 슬라이스 내의 비디오 블록들은 동일한 픽처 내의 레퍼런스 블록들 (예를 들어, 이웃하는 블록들) 에서 레퍼런스 샘플들에 대한 공간 예측을 사용하여 인코딩된다. 픽처의 인터-코딩된 (P 또는 B) 슬라이스 내의 비디오 블록들은 동일한 픽처 내의 레퍼런스 (예를 들어, 이웃하는) 블록들 내의 레퍼런스 샘플들에 대하여 공간 예측, 또는 다른 레퍼런스 픽처들 내의 레퍼런스 샘플들에 대하여 시간 예측을 사용할 수도 있다. 픽처들은 프레임들로서 지칭될 수도 있고, 레퍼런스 픽처들은 레퍼런스 프레임들로 지칭될 수도 있다.
본 개시물은, 하나 이상의 CRI SEI 메시지들에 따라 비디오 데이터를 프로세싱하는 것을 포함하는, 비디오 데이터를 프로세싱하는 것에 관한 것이다.
일 예에서, 본 개시물은 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하는 단계로서, CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 상기 비트스트림을 수신하는 단계; 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하는 단계; 및 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하기 전에 CRI SEI 메시지에 대응하지 않는 프로세스를 디코딩된 비디오 데이터에 적용하여, 프로세싱된 디코딩된 비디오 데이터를 생성하는 단계를 포함하는 방법을 설명한다.
다른 예에서, 본 개시물은, 메모리; 및 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 프로세싱하는 것으로서, CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 상기 비트스트림을 프로세싱하고; 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하고; 디코딩된 비디오 데이터를 메모리에 저장하며; 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하기 전에 CRI SEI 메시지에 대응하지 않는 프로세스를 디코딩된 비디오 데이터에 적용하여, 프로세싱된 디코딩된 비디오 데이터를 생성하도록 구성된 하나 이상의 프로세서들을 포함하는 디바이스를 설명한다.
다른 예에서, 본 개시물은, 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하기 위한 수단으로서, CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 상기 비트스트림을 수신하기 위한 수단; 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하기 위한 수단; 및 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하기 전에 CRI SEI 메시지에 대응하지 않는 프로세스를 디코딩된 비디오 데이터에 적용하여, 프로세싱된 디코딩된 비디오 데이터를 생성하기 위한 수단을 포함하는 장치를 설명한다.
다른 예에서, 본 개시물은, 실행되는 경우, 하나 이상의 프로세서들로 하여금, 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하게 하는 것으로서, CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 상기 비트스트림을 수신하게 하고; 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하게 하며; 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하기 전에 CRI SEI 메시지에 대응하지 않는 프로세스를 디코딩된 비디오 데이터에 적용하여, 프로세싱된 디코딩된 비디오 데이터를 생성하게 하는 명령들을 저장하고 있는 비일시적 컴퓨터 판독가능 저장 매체를 설명한다.
다른 예에서, 본 개시물은, 인코딩된 비디오 데이터 및 복수의 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지들을 포함하는 비트스트림을 수신하는 단계로서, 복수의 CRI SEI 메시지들의 각각의 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하고, 복수의 CRI SEI 메시지들은 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지를 포함하는, 상기 비트스트림을 수신하는 단계; 및 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하는 단계로서, 복수의 CRI SEI 메시지들은 동일한 디코딩된 비디오 데이터에 대응하는, 디코딩된 비디오 데이터를 생성하는 단계를 포함하는 방법을 설명한다.
다른 예에서, 본 개시물은, 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하는 단계로서, 상기 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보 및 신택스 엘리먼트에 대응하는 값을 포함하는, 상기 비트스트림을 수신하는 단계; 및 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하는 단계를 포함하고, 신택스 엘리먼트에 대응하는 값은, 디코딩된 비디오 데이터가, 추가의 프로세싱으로 또는 추가의 프로세싱 없이, 표준 동적 범위 (SDR) 디스플레이 또는 고 동적 범위 (HDR) 디스플레이에 의한 제시를 위해 호환 가능한지 여부, CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들이, 하나 이상의 컬러 재맵핑 프로세스들의 각각의 컬러 재맵핑 프로세스에 각기 대응하는 입력 및 출력이 동일하도록 구성되는지 여부, 또는 CRI SEI 메시지에 대응하지 않는 프로세스가 CRI SEI 메시지에 대응하는 2 개의 컬러 재맵핑 프로세스들 간에 적용될지 여부를 나타내는 방법을 설명한다.
하나 이상의 예들의 세부사항들이 첨부되는 도면들 및 하기의 설명들에서 기술된다. 다른 특성들, 목적들 및 이점들은 상세한 설명, 도면, 및 청구범위로부터 명확해질 것이다.
도 1 은 본 개시물의 기법들을 구현하도록 구성된 예시의 비디오 인코딩 및 디코딩 시스템을 예시하는 블록도이다.
도 2 는 고 동적 범위 (HDR) 데이터의 개념을 예시하는 도면이다.
도 3 은 고화질 텔레비전 (HDTV) (BT.709) 및 초고화질 텔레비전 (UHDTV) (BT.2020) 의 비디오 신호들의 컬러 개머트들을 비교하는 개념도이다.
도 4 는 HDR/WCG 표현 컨버전을 나타내는 개념도이다.
도 5 는 HDR/WCG 역 컨버전을 나타내는 개념도이다.
도 6 은 예시의 전달 함수들을 나타내는 개념도이다.
도 7 은 컬러 재맵핑 프로세스의 예시의 구조를 나타내는 개념도이다.
도 8 은 컬러 재맵핑 프로세스의 예시의 구조를 나타내는 개념도이다.
도 9 는 본 개시물의 하나 이상의 기법들에 따른 하나의 예시의 기법을 예시한다.
도 10 은 본 개시물의 하나 이상의 기법들에 따른 사후-디코딩 체인 구성의 일 예를 예시한다.
도 11 은 본 개시물의 하나 이상의 기법들에 따른 사후-디코딩 체인 구성의 일 예를 예시한다.
도 12 는 본 개시물의 하나 이상의 기법들에 따른 사후-디코딩 체인 구성의 일 예를 예시한다.
도 13 은 본 개시물의 하나 이상의 기법들에 따른 사후-디코딩 체인 구성의 일 예를 예시한다.
도 14 는 본 개시물의 하나 이상의 기법들에 따른 2 개의 사후-디코딩 체인 구성들의 일 예를 예시한다.
도 15 는 본 개시물의 기법들에 따른 예시의 프로세스를 예시하는 플로우차트이다.
도 16 은 본 개시물의 기법들에 따른 예시의 프로세스를 예시하는 플로우차트이다.
도 17 은 본 개시물의 기법들에 따른 예시의 프로세스를 예시하는 플로우차트이다.
비디오 코딩 기법들은 보충 강화 정보 (SEI) 메시지들의 사용을 포함할 수도 있다. 예를 들어, 비디오 인코더는 비트스트림에서 SEI 메시지들을 시그널링할 수도 있고, 비디오 디코더는 SEI 메시지들을 포함하는 비트스트림을 수신할 수도 있다. 다양한 비디오 코딩 표준들에서 SEI 메시지들의 다양한 유형들이 존재한다. 컬러 재맵핑 정보를 포함하는 SEI 메시지는 컬러 재맵핑 정보 SEI 메시지, 또는 보다 단순히 CRI SEI 메시지로서 지칭될 수도 있다. CRI SEI 메시지는 비디오 인코더에 의해 비트스트림에서 시그널링될 수도 있다. 유사하게, 비디오 디코더는 비트스트림에서 CRI SEI 메시지를 수신할 수도 있다.
본 개시물은, 예를 들어 고 동적 범위 (HDR) 및/또는 와이드 컬러 개머트 (WCG) 표현들로 비디오 신호들의 코딩을 포함하는, 비디오 데이터 프로세싱의 분야에 관련된다. 예를 들어, 본 개시물의 기법들은 H.265/HEVC 비디오 코딩 표준에서 지정된 CRI SEI 메시지의 적용을 개선시키기 위한 여러 방법들을 포함한다. HEVC 표준은 ITU-T H.265, 시리즈들 H: 「시청각 및 멀티미디어 시스템들, 오디오비주얼 서비스들의 인프라스트럭처 - 이동 비디오의 코딩, 고효율 비디오 코딩, 국제 전기 통신 연합, 2015 년 4 월 (이하에서, "HEVC" 또는 " HEVC 표준 ")」로서 발행된다. 다른 예로서, 본 개시물은 여러 개선들, 예컨대 CRI SEI 메시지에 관련한 시그널링 효율성 개선들, CRI SEI 메시지의 더 많은 적용들의 인에이블링, 및 CRI SEI 메시지에 대한 시맨틱들의 개선을 설명한다. 일부 예들에서, 본원에 설명된 기법들은 소정의 비디오 콘텐츠, 예컨대 HDR/WCG 콘텐츠에 대한 CRI SEI 메시지의 사용을 개선시킬 수도 있다. 일부 예들에서, 본원에 설명된 기법들은 초기의 비디오 코딩 표준들, 예컨대 H.264/AVC 및 다른 것들로 CRI SEI 의 이용을 개선 또는 인에이블할 수도 있다. 다르게 언급하면, 본원에 설명된 하나 이상의 예들은 예시의 비디오 코딩 표준 (예를 들어, HEVC) 에 대해 설명될 수도 있으나, 이러한 예들은 편의상 예시의 비디오 코딩 표준과 관련하여 설명되는 것으로 이해되며, 본원에 설명된 임의의 기법들은 예시의 비디오 코딩 표준 (예를 들어, HEVC) 과 관련하여 설명되고 있음에도 불구하고 임의의 비디오 코딩 표준에 적용할 수도 있음을 의미한다.
하이브리드-기반 비디오 코딩 표준들을 포함하는, 비디오 코딩 표준들은 ITU-T H.261, ISO/IEC MPEG-1 비주얼, ITU-T H.262 또는 ISO/IEC MPEG-2 비주얼, ITU-T H.263, ISO/IEC MPEG-4 비주얼 및 자신의 확장들 (예를 들어, SVC (Scalable Video Coding) 및 MVC (Multiview Video Coding)) 을 포함하는 ITU-T H.264 (또한 ISO/IEC MPEG-4 AVC 로 알려짐), 및 자신의 확장들 (예를 들어, 범위 및 스크린 콘텐츠 코딩 확장들) 을 포함하는 HEVC 를 포함한다.
본원에서 사용된 바와 같이, 용어 "비디오" 의 경우들은 용어 "콘텐츠" 로 변경될 수도 있고, 용어 "콘텐츠" 의 경우들은 용어 "비디오" 로 변경될 수도 있다. 용어들 "콘텐츠" 또는 "비디오" 가 형용사, 명사 또는 기타 품사로 사용되는지 여부와 관계 없이, 이것은 사실이다. 예를 들어, "비디오 코더" 에 대한 참조는 또한, "콘텐츠 코더" 에 대한 참조를 포함하고, "콘텐츠 코더" 에 대한 참조는 또한 "비디오 코더" 에 대한 참조를 포함한다. 다른 예로서, "비디오 인코더" 에 대한 참조는 또한 "콘텐츠 코더" 에 대한 참조를 포함하고, "콘텐츠 인코더" 에 대한 참조는 또한, "비디오 인코더" 에 대한 참조를 포함한다. 다른 예로서, "비디오 디코더" 에 대한 참조는 또한, "콘텐츠 디코더" 에 대한 참조를 포함하고, "콘텐츠 디코더" 에 대한 참조는 또한, "비디오 디코더" 에 대한 참조를 포함한다. 다른 예로서, "비디오" 에 대한 참조는 또한, "콘텐츠" 에 대한 참조를 포함하고, "콘텐츠" 에 대한 참조는 또한 "비디오" 에 대한 참조를 포함한다. 다른 예로서, "비디오 데이터" 에 대한 참조는 또한, "콘텐츠 데이터" 에 대한 참조를 포함하고, "콘텐츠 데이터" 에 대한 참조는 또한 "비디오 데이터" 에 대한 참조를 포함한다.
본원에 사용된 바와 같이, "콘텐츠" 는 임의의 유형의 콘텐츠를 지칭한다. 예를 들어, "콘텐츠" 는 비디오, 스크린 콘텐츠, 이미지, 임의의 그래픽 콘텐츠, 임의의 디스플레이 가능 콘텐츠, 또는 이에 대응하는 임의의 데이터 (예를 들어, 비디오 데이터, 스크린 콘텐츠 데이터, 이미지 데이터, 그래픽 콘텐츠 데이터, 디스플레이 가능 콘텐츠 데이터 등) 를 지칭할 수도 있다.
본원에 사용된 바와 같이, 용어 "비디오" 는 시퀀스로 제시될 수도 있는 스크린 콘텐츠, 이동 가능 콘텐츠, 복수의 이미지들 (예를 들어, 픽처들), 또는 이에 대응하는 임의의 데이터 (예를 들어, 스크린 콘텐츠 데이터, 이동 가능 콘텐츠 데이터, 비디오 데이터, 이미지 데이터, 등) 를 지칭할 수도 있다.
본원에 사용된 바와 같이, 용어 "이미지" 는 단일 이미지, 하나 이상의 이미지들, 비디오에 대응하는 복수의 이미지들 중에서 하나 이상의 이미지들, 비디오에 대응하지 않는 복수의 이미지들 중에서 하나 이상의 이미지들, 비디오에 대응하는 복수의 이미지들 (예를 들어, 비디오에 대응하는 이미지들의 전부 또는 비디오에 대응하는 이미지들의 전부 미만), 단일 이미지의 서브-부분, 단일 이미지의 복수의 서브-부분들, 복수의 이미지들에 대응하는 복수의 서브-부분들, 하나 이상의 그래픽 프리미티브들, 이미지 데이터, 그래픽 데이터 등을 지칭할 수도 있다.
본원에서 사용된 바와 같이, 용어들 "컴포넌트", "컬러 컴포넌트", 채널", 및/또는 "컬러 채널" 은 상호 교환적으로 사용될 수도 있다. 예를 들어, "컬러 컴포넌트" 는 "컬러 채널" 에 대한 참조를 포함하고, "컬러 채널" 에 대한 참조는 "컬러 컴포넌트" 에 대한 참조를 포함한다.
본원에서 사용된 바와 같이, 용어들 "픽셀 값", "컴포넌트 값", 및 "컬러 컴포넌트 값" 은 상호 교환적으로 사용될 수도 있다. 일 예로서, 입력 픽셀 값들의 출력 픽셀 값들로의 맵핑에 대한 참조는 또한, 입력 컴포넌트 값들의 출력 컴포넌트 값들로의 맵핑을 지칭한다. 다른 예로서, 입력 픽셀 값들의 출력 픽셀 값들로의 맵핑에 대한 참조는 또한, 입력 컬러 컴포넌트 값들의 출력 컬러 컴포넌트 값들로의 맵핑을 지칭한다.
도 1 은 본 개시물의 기법들을 이용할 수도 있는 예시의 비디오 인코딩 및 디코딩 시스템 (10) 을 예시하는 블록도이다. 도 1 에 도시된 바와 같이, 시스템 (10) 은 소스 디바이스 (12) 및 목적지 디바이스 (14) 를 포함한다. 소스 디바이스 (12) 및 목적지 디바이스 (14) 는, 예를 들어 임의의 컴퓨팅 디바이스 (예를 들어, 노트북 컴퓨터들, 데스크톱 컴퓨터들, 랩톱 컴퓨터들, 태블릿 컴퓨터들, 퍼스널 컴퓨팅 디바이스들, 예컨대 개인 정보 단말기 (PDA)들, 폰들 (예를 들어, 스마트 폰들), 스마트 패드들, 디지털 텔레비전들, 디지털 카메라들 (예를 들어, 비디오 카메라들), 디스플레이 디바이스들, 디지털 미디어 플레이어들, 비디오 게이밍 콘솔들, 비디오 게임 디바이스들 (예를 들어, 핸드헬드 게이밍 디바이스들), 비디오 스트리밍 디바이스들, 디지털 직접 브로드캐스트 시스템들, 무선 브로드캐스트 시스템들, 유선 브로드캐스트 시스템들, 이-북 리더들, 비디오 인코딩을 수행하도록 구성된 임의의 디바이스, 비디오 디코딩을 수행하도록 구성된 임의의 디바이스, 등) 을 포함하는, 광범위한 디바이스들 중 어느 하나를 포함할 수도 있다. 일부 경우들에서, 소스 디바이스 (12) 및 목적지 디바이스(14) 는 무선 및/또는 유선 통신을 위해 구비될 수도 있다.
소스 디바이스 (12) 는 인코딩된 비디오 데이터를 생성 및/또는 출력하도록 구성될 수도 있다. 인코딩된 비디오 데이터는 비트스트림으로서 지칭될 수도 있는 비트들의 시퀀스로 포함될 수도 있다. 소스 디바이스 (12) 는 인코딩된 비디오 데이터를 목적지 디바이스 (14) 에 제공하도록 구성될 수도 있다. 목적지 디바이스 (14) 는, 다른 디바이스 (예를 들어, 소스 디바이스 (12)) 로부터 수신 또는 목적지 디바이스 (14) 에 의해 생성되든 아니든, 인코딩된 비디오 데이터를 디코딩하도록 구성될 수도 있다. 일부 예들에서, 소스 디바이스 (12) 는 인코딩된 비디오 데이터를 컴퓨터-판독가능 매체 (16) 를 통해 목적지 디바이스 (14) 에 제공 (예를 들어, 전송 또는 다르게는 송신) 하도록 구성될 수도 있다.
컴퓨터 판독가능 매체 (16) 는 트랜션트 (transient) 매체, 예컨대 무선 브로드캐스트 또는 유선 네트워크 송신, 또는 저장 매체 (즉, 비일시적 저장 매체), 예컨대 하드 디스크, 플래시 드라이브, 컴팩트 디스크, 디지털 비디오 디스크, 블루레이 디스크, 또는 다른 컴퓨터 판독가능 매체를 포함할 수도 있다. 일부 예들에서, 네트워크 서버 (미도시) 는 소스 디바이스 (12) 로부터 인코딩된 비디오 데이터를 수신하고, 예를 들어 네트워크 송신을 통해 인코딩된 비디오 데이터를 목적지 디바이스 (14) 에 제공할 수도 있다. 유사하게, 디스크 스탬핑 설비와 같은 매체 생성 설비의 컴퓨팅 디바이스가 소스 디바이스 (12) 로부터 인코딩된 비디오 데이터를 수신하고, 인코딩된 비디오 데이터를 포함하는 디스크를 생성할 수도 있다. 따라서, 컴퓨터 판독가능 매체 (16) 는, 다양한 예들에서, 다양한 형태들의 하나 이상의 컴퓨터 판독가능 매체를 포함하는 것으로 이해될 수도 있다.
소스 디바이스 (12) 의 비디오 소스 (18) 는 비디오 콘텐츠 제공자로부터 비디오를 수신하기 위한 비디오 캡처 디바이스, 예컨대 비디오 카메라, 비디오 피드 인터페이스, 및/또는 비디오 데이터를 저장하고 있는 메모리 (예를 들어, 이전에 캡처된 비디오를 포함하는 비디오 아카이브) 를 포함할 수도 있다. 다른 예로서, 비디오 소스 (18) 는 소스 비디오, 또는 라이브 비디오, 아카이브된 비디오, 및 컴퓨터 생성된 비디오의 조합으로서 컴퓨터 그래픽-기반 데이터를 생성할 수도 있다. 일부 예들에서, 비디오 소스 (18) 가 비디오 카메라이면, 소스 디바이스 (12) 및 목적지 디바이스 (14) 는 카메라 (예를 들어, 카메라, 폰, 예컨대 스마트 폰, 카메라 폰, 또는 카메라를 갖고 구성된 폰에 대한 임의의 다른 명칭) 를 갖고 구성된 임의의 컴퓨팅 디바이스일 수도 있다. 본원에 언급된 바와 같이, 캡처, 미리-캡처, 또는 컴퓨터-생성된 비디오 데이터는, 비디오 사전-프로세서 (19) 에 의해 프로세싱된 후에 비디오 인코더 (20) 에 의해 인코딩될 수도 있다. 인코딩된 비디오 데이터는 그 후, 컴퓨터 판독가능 매체 (16) 상으로 출력 인터페이스 (22) 에 의해 출력될 수도 있다. 목적지 디바이스 (14) 의 입력 인터페이스 (28) 는 소스 디바이스 (12) 로부터 컴퓨터 판독가능 매체 (16) 를 통해 정보 (예를 들어, 비트스트림의 형태로 인코딩된 비디오 데이터) 를 수신할 수도 있다. 컴퓨터 판독가능 매체 (16) 의 정보는, 비디오 디코더 (30) 에 의해 사용되어 인코딩된 비디오 데이터를 디코딩할 수도 있는, 비디오 인코더 (20) 에 의해 정의된 신택스 정보를 포함할 수도 있다.
목적지 디바이스 (14) 는 소스 디바이스 (12) 로부터 컴퓨터 판독가능 매체 (16) 를 통해 인코딩된 비디오 데이터를 수신하도록 구성될 수도 있다. 컴퓨터 판독가능 매체 (16) 는 인코딩된 비디오 데이터를 소스 디바이스 (12) 로부터 목적지 디바이스 (14) 로 이동시킬 수 있는 임의의 유형의 매체 또는 디바이스를 포함할 수도 있다. 일 예에서, 컴퓨터 판독가능 매체 (16) 는 소스 디바이스 (12) 로 하여금 인코딩된 비디오 데이터를 목적지 디바이스 (14) 로 직접적으로 송신하게 하는 통신 매체를 포함할 수도 있다. 일부 예들에서, 인코딩된 비디오 데이터는 무선 통신 프로토콜과 같은 통신 표준에 따라 변조되고, 목적지 디바이스 (14) 로 송신될 수도 있다. 통신 매체는 임의의 무선 또는 유선 통신 매체, 예컨대 무선 주파수 (RF) 스펙트럼 또는 하나 이상의 물리적 송신 라인들을 포함할 수도 있다. 통신 매체는 패킷 기반의 네트워크, 예컨대 근거리 통신망, 광대역 통신망, 또는 인터넷과 같은 글로벌 네트워크의 부분을 형성할 수도 있다. 통신 매체는 라우터들, 스위치들, 기지국들, 또는 소스 디바이스 (12) 로부터 목적지 디바이스 (14) 로의 통신을 용이하게 하는데 사용할 수도 있는 임의의 다른 장비를 포함할 수도 있다.
일부 예들에서, 인코딩된 데이터는 소스 디바이스 (12) 의 출력 인터페이스 (22) 로부터 저장 디바이스로 출력될 수도 있다. 유사하게, 인코딩된 데이터는 목적지 디바이스 (14) 의 입력 인터페이스 (28) 에 의해 저장 디바이스로부터 액세스될 수도 있다. 저장 디바이스는 하드 드라이브, 블루레이 디스크들, DVD들, CD-ROM들, 플래시 메모리, 휘발성 또는 비휘발성 메모리와 같은 임의의 다양한 분산된 또는 로컬하게 액세스된 데이터 저장 매체, 또는 인코딩된 비디오 데이터를 저장하기 위한 임의의 다른 적합한 디지털 저장 매체 중 어느 하나를 포함할 수도 있다. 일부 예들에서, 저장 디바이스는 소스 디바이스 (12) 에 의해 생성된 인코딩된 비디오를 저장할 수도 있는 다른 중간 저장 디바이스 또는 파일 서버에 대응할 수도 있다. 목적지 디바이스 (14) 는 스트리밍 또는 다운로드를 통해 저장 디바이스로부터의 저장된 비디오 데이터에 액세스할 수도 있다. 파일 서버는 인코딩된 비디오 데이터를 저장할 수 있고 그 인코딩된 비디오 데이터를 목적지 디바이스 (14) 로 송신할 수 있는 임의의 유형의 서버일 수도 있다. 예시의 파일 서버들은 (예를 들어, 웹사이트용의) 웹서버, FTP 서버, NAS (network attached storage) 디바이스들, 또는 로컬 디스크 드라이브를 포함한다. 목적지 디바이스 (14) 는 인터넷 접속을 포함하는 임의의 표준 데이터 접속을 통해 인코딩된 비디오 데이터에 액세스할 수도 있다. 이것은 파일 서버에 저장된 인코딩된 비디오 데이터를 액세스하는데 적합한 무선 채널 (예를 들어, Wi-Fi 접속), 유선 접속 (예를 들어, DSL, 케이블 모뎀 등), 또는 양자 모두의 조합을 포함할 수도 있다. 저장 디바이스로부터 인코딩된 비디오 데이터의 송신은 스트리밍 송신, 다운로드 송신, 또는 이들의 조합일 수도 있다.
본 개시물의 기법들은 무선 애플리케이션들 또는 설정들에 제한되지는 않는다. 기법들은 다양한 멀티미디어 애플리케이션들, 예컨대 지상파 (over-the-air) 텔레비전 방송들, 케이블 텔레비전 송신들, 위성 텔레비전 송신들, HTTP 를 통한 동적 적응형 스트리밍 (dynamic adaptive streaming over HTTP; DASH) 과 같은 인터넷 스트리밍 비디오 송신들, 데이터 저장 매체 상에 인코딩되는 디지털 비디오, 데이터 저장 매체 상에 저장된 디지털 비디오의 디코딩, 또는 다른 애플리케이션들 중 임의의 것의 지원에서 비디오 코딩에 적용될 수도 있다. 일부 예들에서, 시스템 (10) 은, 비디오 스트리밍, 비디오 재생, 비디오 브로드캐스팅, 및/또는 비디오 텔레포니와 같은 애플리케이션들을 지원하기 위해 일방향 또는 양방향 비디오 송신을 지원하도록 구성될 수도 있다.
본원에 설명된 예들은 비-제한적인 예들이다. 예를 들어, 도 1 의 예시된 시스템 (10) 은 단지 일 예이다. 본 개시물에 따라 비디오 데이터를 프로세싱하는 기법들은 임의의 비디오 인코딩 디바이스, 임의의 비디오 디코딩 디바이스, 임의의 비디오 코딩 디바이스, 임의의 비디오 인코딩 시스템, 임의의 비디오 디코딩 시스템, 및/또는 임의의 비디오 코딩 시스템에 의해 수행될 수도 있다. 본원에 사용된 바와 같이, "코딩" 은 인코딩 및/또는 디코딩을 지칭할 수도 있다. 유사하게, 본원에 사용된 바와 같이, "코더" 는 인코더 및/또는 디코더를 지칭할 수도 있다. 예를 들어, 비디오 코더는 비디오 인코더 및/또는 비디오 디코더를 지칭할 수도 있다. 마찬가지로, 비디오 코딩은 적용 가능한 바와 같이, 비디오 인코딩 및/또는 비디오 디코딩을 지칭할 수도 있다. 다른 예로서, 비디오 코딩 시스템에 대한 참조는 비디오 인코딩 시스템, 비디오 디코딩 시스템, 또는 비디오 인코딩/디코딩 시스템을 지칭할 수도 있다 (즉, 비디오 코딩 시스템은 비디오 인코딩 및 비디오 디코딩 양자 모두를 수행하도록 구성된 시스템이다).
도 1 의 예에서, 소스 디바이스 (12) 는 비디오 소스 (18), 비디오 사전-프로세서 (19), 비디오 인코더 (20), 및 출력 인터페이스 (22) 를 포함한다. 비디오 사전-프로세서 (19), 비디오 인코더 (20), 및/또는 출력 인터페이스 (22) 는 본 개시물의 하나 이상의 기법들을 구현하도록 구성될 수도 있다. 도 1 의 예에서, 목적지 디바이스 (14) 는 입력 인터페이스 (28), 비디오 디코더 (30), 비디오 사후-프로세서 (31), 및 디스플레이 디바이스 (32) 를 포함한다. 디스플레이 디바이스 (32) 는 디코딩된 비디오 데이터 (예를 들어, 비디오 사후-프로세서 (31) 에 의해 프로세싱된 디코딩된 비디오 데이터) 를 디스플레이하도록 구성될 수도 있다. 디스플레이 디바이스 (32) 는 다양한 디스플레이 디바이스들, 예컨대 음극선관 (CRT), 액정 디스플레이 (LCD), 플라즈마 디스플레이, 유기 발광 다이오드 (OLED) 디스플레이, 또는 다른 유형의 디스플레이 디바이스 중 임의의 것을 포함할 수도 있다.
입력 인터페이스 (28), 비디오 디코더 (30), 및/또는 비디오 사후-프로세서 (31) 는 본 개시물의 하나 이상의 기법들을 구현하도록 구성될 수도 있다. 일부 예들에서, 비디오 사전-프로세서 (19) 는 비디오 인코더 (20) 와는 별개일 수도 있다. 다른 예들에서, 비디오 사전-프로세서 (19) 는 비디오 인코더 (20) 의 부분일 수도 있다. 유사하게, 일부 예들에서 비디오 사후-프로세서 (31) 는 비디오 디코더 (30) 와는 별개일 수도 있다. 다른 예들에서, 비디오 사후-프로세서 (31) 는 비디오 디코더 (30) 의 부분일 수도 있다.
시스템 (10) 의 다른 예들에서, 소스 디바이스 (12) 및 목적지 디바이스 (14) 는 다른 컴포넌트들 또는 어레인지먼트들을 포함할 수도 있다. 예를 들어, 소스 디바이스 (12) 는 외부 비디오 소스 (18), 예컨대 외부 카메라로부터 비디오 데이터를 수신할 수도 있다. 이러한 예에서, 출력 인터페이스 (22) 는, 그것이 다른 예들에서 데이터를 수신 및/또는 송신하도록 구성될 수도 있기 때문에 통신 인터페이스 (22) 로서 보다 적절히 지칭될 수도 있다. 마찬가지로, 목적지 디바이스 (14) 는 집적 디스플레이 디바이스를 포함하기 보다는, 외부 디스플레이 디바이스와 인터페이스할 수도 있다. 다른 예로서, 목적지 디바이스 (14) 는 비디오 데이터를 소스 디바이스 (12) 로 송신할 수도 있다. 이러한 예에서, 입력 인터페이스 (28) 는, 그것이 다른 예들에서 데이터를 수신 및/또는 송신하도록 구성될 수도 있기 때문에 통신 인터페이스 (28) 로서 보다 적절히 지칭될 수도 있다.
다른 예로서, 본원에 설명된 하나 이상의 기법들을 수행하도록 구성된 디바이스, 임의의 컴퓨팅 디바이스 (예를 들어, 소스 디바이스 (12) 및/또는 목적지 디바이스 (14)) 는 비디오 인코더 (예를 들어, 비디오 인코더 (20)) 및 비디오 디코더 (예를 들어, 비디오 디코더 (30)), 비디오 사전-프로세서 (예를 들어, 비디오 사전-프로세서 (19)) 및 비디오 사후-프로세서 (31)(예를 들어, 비디오 사후-프로세서 (31)), 및 통신 인터페이스 (예를 들어, 출력 인터페이스 (22) 및/또는 입력 인터페이스 (28)) 를 포함할 수도 있다. 이러한 예에서, 컴퓨팅 디바이스는 본원에 설명된 하나 이상의 기법들을 수행하도록 구성될 수도 있다. 또한, 이러한 예에서, 비디오 인코더 및 비디오 디코더는 별개의 컴포넌트들일 수도 있고, 또는 단일 컴포넌트 (예를 들어, 인코딩 및 디코딩 양자 모두를 수행하도록 구성된 비디오 코더) 의 부분일 수도 있다. 유사하게, 비디오 사전-프로세서 및 비디오 사후-프로세서는 별개의 컴포넌트일 수도 있고, 또는 단일 컴포넌트의 부분일 수도 있다. 다른 예에서, 비디오 사전-프로세서 및/또는 비디오 사후-프로세서는 비디오 코더의 부분일 수도 있다.
따라서, 비디오 사전-프로세서 (19) 에 의해 비디오 데이터 상에서 수행된 프로세스에 대한 참조는, 비디오 인코더 (20) 가 예를 들어 비디오 코딩 표준에 따라 비디오 데이터를 인코딩하기 전에 비디오 인코더 (20) 에 의해 비디오 데이터 상에서 수행된 프로세스를 지칭할 수도 있다는 것이 이해된다. 유사하게, 비디오 사전-프로세서 (19) 에 대한 참조는, 일부 예들에서 비디오 인코더 (20) 와 상호 교환 가능할 수도 있다. 마찬가지로, 비디오 인코더 (20) 에 대한 참조는, 일부 예들에서 비디오 사전-프로세서 (19) 와 상호 교환 가능할 수도 있다.
또한, 비디오 사후-프로세서 (31) 에 의해 비디오 데이터 상에서 수행된 (또는 이에 적용된) 프로세스에 대한 참조는, 비디오 디코더 (30) 가 비디오 데이터를 디코딩한 후에 비디오 디코더 (30) 에 의해 비디오 데이터 상에서 수행된 (또는 이에 적용된) 프로세스를 지칭할 수도 있다는 것이 이해된다. 유사하게, 비디오 사후-프로세서 (31) 에 대한 참조는, 일부 예들에서 비디오 디코더 (30) 와 상호 교환 가능할 수도 있다. 마찬가지로, 비디오 디코더 (30) 에 대한 참조는, 일부 예들에서 비디오 사후-프로세서 (31) 와 상호 교환 가능할 수도 있다.
예시된 바와 같이, 비디오 사전-프로세서 (19) 는 비디오 소스 (18) 로부터 비디오 데이터를 수신하도록 구성될 수도 있다. 일부 예들에서, 비디오 사전-프로세서 (19) 는 수신된 비디오 데이터를 프로세싱하여 그것을, 비디오 인코더 (20) 로 인코딩하기에 적합한 형태로 컨버팅하도록 구성될 수도 있다. 예를 들어, 비디오 사전-프로세서 (19) 는 (예를 들어, 비-선형 전달 함수를 사용하는) 동적 범위 압축, 더 압축한 또는 강건한 컬러 공간으로의 컬러 컨버전, 및/또는 부동-대-정수 표현 컨버전을 수행하도록 구성될 수도 있다.
비디오 사전-프로세서 (19) 는 비디오 인코더 (20) 로 비디오 데이터를 인코딩하기 전에 비디오 데이터를 프로세싱하도록 구성될 수도 있다. 일부 예들에서, 비디오 사전-프로세서 (19) 는 비디오 인코더 (20) 로 비디오를 인코딩하기 전에 비디오 데이터 상에서 컬러 재맵핑 프로세싱을 수행하도록 구성될 수도 있다. 예를 들어, 비디오 사전-프로세서 (19) 는 제 1 컬러 공간 (예를 들어, RGB) 에서 비디오 데이터를 수신하고, 수신된 비디오 데이터를 제 1 컬러 공간 (예를 들어, RGB) 으로부터 제 2 컬러 공간 (예를 들어, YCbCr) 으로 컨버팅하도록 구성될 수도 있다. 이러한 예에서, 비디오 사전-프로세서 (19) 는, 컬러 재맵핑 프로세싱의 일 예인 컬러 공간 컨버전을 수행하는 것으로서 설명될 수도 있다.
컬러 재맵핑 프로세싱의 다른 예들은 고 동적 범위 (HDR) 비디오 데이터의 표준 동적 범위 (SDR) 비디오 데이터로의 컨버전, SDR 비디오 데이터의 HDR 비디오 데이터로의 컨버전, 프로세싱된 (예를 들어, 컨버팅된) 비디오 데이터의 더 쉽고 및/또는 더 효율적인 코딩을 인에이블하는 임의의 프로세싱, 비디오 데이터를 코딩 및/또는 사후-프로세싱에 더 적합한 포맷으로 컨버팅하는 임의의 프로세싱을 포함할 수도 있다. 일 예로서, 비디오 사전-프로세서 (19) 는 HDR 비디오 데이터를 수신하고, HDR 비디오 데이터를 SDR 비디오 데이터로 컨버팅하도록 구성될 수도 있다. 다른 예로서, 비디오 사전-프로세서 (19) 는 SDR 비디오 데이터를 수신하고, SDR 비디오 데이터를 HDR 비디오 데이터로 컨버팅하도록 구성될 수도 있다. 다른 예로서, 비디오 사전-프로세서 (19) 는 비디오 데이터를 수신하고, 수신된 비디오 데이터를 프로세싱하도록 구성되어, 프로세싱된 비디오 데이터가 더 쉽게 및/또는 더 효율적인 방식으로 인코딩될 수도 있도록 할 수도 있다. 다른 예로서, 비디오 사전-프로세서 (19) 는 비디오 데이터를 수신하고, 수신된 비디오 데이터를 코딩 및/또는 사후-프로세싱에 더 적합한 포맷으로 프로세싱하도록 구성될 수도 있다.
컬러 재맵핑 프로세싱의 다른 예들은 (예를 들어, 구분적 선형 함수를 사용하는) 비디오 데이터의 개별의 채널들의 스케일링을 포함할 수도 있고, (맵핑 또는 재맵핑된 콘텐츠로서 지칭될 수도 있는) 프로세싱된 비디오 데이터가 인코딩될 수도 있다. 예를 들어, 비디오 사전-프로세서 (19) 는 비디오 데이터를 수신하고, 수신된 비디오 데이터의 하나 이상의 채널들을 스케일링하도록 구성될 수도 있다. 비디오 인코더 (20) 는, 맵핑 또는 재맵핑된 콘텐츠로도 지칭될 수도 있는 스케일링된 비디오 데이터를 인코딩하도록 구성될 수도 있다. 또 다른 예들에서, 컬러 재맵핑 프로세싱은, 예를 들어 컴포넌트들의 표현의 프라이머리들을 변경함으로써 비디오 데이터의 표현을 컨버팅하는 것 (예를 들어, BT.709 에 의해 정의된 것과 같은 프라이머리들의 하나의 세트를 사용하여 표현된 비디오 데이터를 BT.2020 에 의해 정의된 것과 같은 프라이머리들의 다른 세트를 사용하여 표현된 비디오 데이터로 프로세싱하는 것) 을 포함할 수도 있다. 비디오 사전-프로세서 (19) 는 임의의 컬러 재맵핑 프로세스를 수행하도록 구성될 수도 있고, 추가의 예들이 또한 존재한다는 것으로 이해된다. 예를 들어, 컬러 볼륨 변환 및 디스플레이 적응은 컬러 재맵핑 프로세스들의 2 개의 다른 예들이다. 유사하게, 비디오 사후-프로세서 (31) 는 임의의 컬러 재맵핑 프로세서 또는 임의의 역 (예를 들어, 상반의 (reciprocal)) 컬러 재맵핑 프로세스 (예를 들어, 비디오 사전-프로세서 (19) 에 의해 수행된 임의의 컬러 재맵핑 프로세스의 역) 를 수행하도록 구성될 수도 있다는 것이 이해된다. 비디오 사후-프로세서 (31) 에 의해 수행된 임의의 컬러 재맵핑 프로세스는 비디오 사전-프로세서 (19) 에 의해 수행된 컬러 재맵핑 프로세스와 상반되거나, 또는 상반되지 않을 수도 있다. 예를 들어, 비디오 사전-프로세서 (19) 는 예를 들어, 비디오 인코더 (20) 에 의해 재맵핑된 비디오 데이터의 더 효율적인 인코딩을 인에이블하기 위해 비디오 데이터 상에서 하나 이상의 컬러 재맵핑 프로세스들을 수행하도록 구성될 수도 있는 반면에, 비디오 사후-프로세서 (31) 는 예를 들어, 하나 이상의 컬러 재맵핑 프로세스들 (예를 들어, 컬러 볼륨 변환 및/또는 스케일링) 을 수행하여 디스플레이를 위해 디코딩된 비디오 데이터를 적응 (예를 들어, 특정 디스플레이 및/또는 디스플레이 시나리오에 대한 더 좋은 디스플레이 능력을 위해 디코딩된 비디오 데이터를 적응) 시키도록 비디오 디코더 (30) 에 의해 디코딩된 비디오 데이터 상에서 하나 이상의 컬러 재맵핑 프로세스를 수행하도록 구성될 수도 있다.
비디오 사전-프로세서 (19) 는 (컬러 재맵핑된 비디오 데이터로서 지칭될 수도 있는) 사전-프로세싱된 비디오 데이터를 생성하고, 사전-프로세싱된 비디오 데이터를 비디오 인코더 (20) 로 출력하도록 구성될 수도 있다. 비디오 인코더 (20) 는 비디오 사전-프로세서 (19) 로부터 사전-프로세싱된 비디오 데이터를 수신하도록 구성될 수도 있고, 사전-프로세싱된 비디오 데이터 상에서 비디오 인코딩을 수행 (즉, 비디오 사전-프로세서 (19) 가 비디오 데이터를 사전-프로세싱한 후에 비디오 인코딩을 수행) 하도록 구성될 수도 있다. 상기의 컬러 공간 컨버전 예에서, 비디오 인코더 (20) 는, 비디오 사전-프로세서 (19) 가 제 1 컬러 공간으로부터 비디오 데이터를 컨버팅한 후에 제 2 컬러 공간에서의 인코딩을 위해 비디오 데이터 (예를 들어, 픽처들의 시퀀스의 픽처) 를 수신할 수도 있다.
비디오 사후-프로세서 (31) 는, 비디오 데이터가 비디오 디코더 (30) 로 디코딩된 후에 비디오 데이터를 프로세싱하도록 구성될 수도 있다. 예를 들어, 비디오 디코더 (30) 는 인코딩된 비디오 데이터를 수신할 수도 있고, 비디오 디코더 (30) 는 그 후, 인코딩된 비디오 데이터를 디코딩된 비디오 데이터 (예를 들어, 비디오 시퀀스의 픽처) 로 디코딩할 수도 있다. 비디오 디코더 (30) 는 디코딩된 비디오 데이터를 비디오 사후-프로세서 (31) 로 송신하여, 디코딩된 비디오 데이터를 프로세싱할 수도 있다.
일부 예들에서, 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터에 적어도 하나의 컬러 재맵핑 프로세스를 직접 적용하도록 구성될 수도 있다. 이러한 예들에서, 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터에 적어도 하나의 컬러 재맵핑 프로세스를 수행함으로써 CRI 프로세싱된 디코딩된 비디오 데이터를 생성하도록 구성될 수도 있다. 다른 예들에서, 비디오 사후-프로세서 (31) 는, 적어도 하나의 컬러 재맵핑 프로세스를 디코딩된 비디오 데이터에 적용하기 전에 CRI SEI 메시지에 대응하지 않는 디코딩된 비디오 데이터 상에 프로세스를 적용하도록 구성될 수도 있다. 이러한 예들에서, 비디오 사후-프로세서 (31) 는 CRI SEI 메시지에 대응하지 않는 디코딩된 비디오 데이터 상에서 프로세스를 수행함으로써 비-CRI 프로세싱된 디코딩된 비디오 데이터를 생성하도록 구성될 수도 있고, 그 후 비디오 사후-프로세서 (31) 는 비-CRI 프로세싱된 디코딩된 비디오 데이터에 적어도 하나의 컬러 재맵핑 프로세스를 수행함으로써 CRI 프로세싱된 디코딩된 비디오 데이터를 생성하도록 구성될 수도 있다.
일부 예들에서, 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터 상에서 컬러 재맵핑 프로세싱을 수행하도록 구성될 수도 있다. 예를 들어, 비디오 사후-프로세서 (31) 는 제 1 컬러 공간 (예를 들어, YCbCr) 에서 비디오 디코더 (30) 로부터 디코딩된 비디오 데이터를 수신하고, 디코딩된 비디오 데이터를 제 1 컬러 공간 (예를 들어, YCbCr) 으로부터 제 2 컬러 공간 (예를 들어, RGB) 로 컨버팅하도록 구성될 수도 있다. 이러한 예에서, 비디오 사후-프로세서 (31) 는, 컬러 재맵핑 프로세싱의 일 예인 컬러 공간 컨버전을 수행하는 것으로서 설명될 수도 있다. 비디오 사후-프로세서 (31) 는 (역 컬러 재맵핑된 비디오 데이터로서 지칭될 수도 있는) 사후-프로세싱된 비디오 데이터를 생성하고, 포스트-프로세싱된 비디오 데이터를 다른 컴포넌트, 예컨대 디스플레이 디바이스 (32) 로 출력하도록 구성될 수도 있다.
일부 예들에서, 비디오 사후-프로세서 (31) 는 비디오 사전-프로세서 (19) 에 의해 수행된 프로세스(들)에 상반되는 프로세스(들)을 수행하도록 구성될 수도 있다. 예를 들어, 비디오 사전-프로세서 (19) 가 비디오 데이터 상에서 컬러 재맵핑 프로세스를 수행하면, 비디오 사후-프로세서 (31) 는, 일부 예들에서, 비디오 사후-프로세서 (31) 가 상반되는 컬러 재맵핑이 수행될지 여부를 결정하기 위해 사용하는 하나 이상의 CRI SEI 메시지들에 대응하는 정보가 비디오 사후-프로세서 (31) 에 의해 수신되는 경우, 디코딩된 비디오 데이터 상에서 컬러 재맵핑 프로세스의 역 (즉, 상반되는 것)(또는 보다 단순하게, 역 컬러 재맵핑 프로세스) 을 수행하도록 구성될 수도 있다. 일 예로서, 비디오 사전-프로세서 (19) 가 비디오 데이터를 제 1 컬러 공간 (예를 들어, RGB) 으로부터 제 2 컬러 공간 (예를 들어, YCbCr) 으로 컨버팅하기 위해 비디오 데이터 상에서 컬러 공간 컨버전을 수행하면, 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터를 제 2 컬러 공간 (예를 들어, YCbCr) 으로부터 제 1 컬러 공간 (예를 들어, RGB) 으로 컨버팅하기 위해 대응하는 디코딩된 비디오 데이터 상에서 역 컬러 공간 컨버전을 수행하도록 구성될 수도 있다. 다른 예로서, 비디오 사전-프로세서 (19) 가 비디오 데이터를 제 1 컬러 공간 (예를 들어, RGB) 으로부터 제 2 컬러 공간 (예를 들어, YCbCr) 으로 컨버팅하기 위해 비디오 데이터 상에서 컬러 공간 컨버전을 수행하면, 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터를 제 2 컬러 공간 (예를 들어, YCbCr) 으로부터 RGB 와 상이한 제 3 컬러 공간으로 컨버팅하기 위해 대응하는 디코딩된 비디오 데이터 상에서 컬러 공간 컨버전을 수행하도록 구성될 수도 있다. 다른 예로서, 비디오 사전-프로세서 (19) 가 비디오 데이터를 제 1 컬러 공간 (예를 들어, RGB) 으로부터 제 2 컬러 공간 (예를 들어, YCbCr) 으로 컨버팅하기 위해 비디오 데이터 상에서 컬러 공간 컨버전을 수행하면, 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터가 제 2 컬러 공간 (예를 들어, YCbCr) 에 머물도록, 대응하는 디코딩된 비디오 데이터 상에서 컬러 공간 컨버전을 수행하지 않도록 구성될 수도 있다.
다른 예들에서, 비디오 사후-프로세서 (31) 는 비디오 사전-프로세서 (19) 에 의해 수행된 임의의 프로세스에 상반되지 않는 하나 이상의 프로세스들을 수행하도록 구성될 수도 있다. 예를 들어, 비디오 사전-프로세서 (19) 가 비디오 데이터 상에서 컬러 재맵핑 프로세스를 수행하면, 비디오 사후-프로세서 (31) 는 일부 예들에서, 비디오 사전-프로세서 (19) 에 의해 비디오 데이터 상에서 수행된 컬러 재맵핑 프로세스와 동일한 또는 상이할 수도 있는 하나 이상의 컬러 재맵핑 프로세스들을 디코딩된 비디오 데이터 상에서 수행하도록 구성될 수도 있다. 따라서, 비디오 사후-프로세서 (31) 는 하나 이상의 CRI SEI 메시지들에 대응하는 정보에 기초하여 디코딩된 비디오 데이터 상에서 하나 이상의 컬러 재맵핑 프로세스들 (상반 또는 비-상반되든 아니든, 임의의 컬러 재맵핑 프로세스(들)) 을 수행하도록 구성될 수도 있다.
일부 예들에서, 비디오 인코더 (20) 는 인코딩된 비디오 데이터를 포함하는 비트스트림에서 하나 이상의 보충 강화 정보 (SEI) 메시지들을 생성 또는 다르게는 출력하도록 구성될 수도 있다. 일부 예들에서, SEI 메시지들은 디코더 (예를 들어, 비디오 디코더 (30)) 에 의해 비트스트림에서 인코딩된 비디오 데이터를 디코딩하기 위해 필수적이지 않을 수도 있는 정보를 반송하도록 비트스트림에 포함될 수도 있다. SEI 메시지들은 디코딩된 비디오 데이터의 프로세싱 또는 디스플레이를 개선시키는데 유용할 수도 있다. 예를 들어, SEI 메시지들은, 예를 들어 디코딩된 비디오 데이터의 동적 범위를 증가시킴으로써 콘텐츠 (즉, 디코딩된 비디오 데이터) 의 가시성 (viewability) 을 개선시키는데 사용될 수도 있다. 본원에 설명된 바와 같이, 목적지 디바이스 (14), 예를 들어 하나 이상의 CRI SEI 메시지들 및 인코딩된 비디오 데이터를 포함하는 비트스트림을 수신할 수도 있다. 비디오 디코더 (30) 는 인코딩된 비디오 데이터를 디코딩하고, 추가의 프로세싱을 위해 디코딩된 비디오 데이터를 비디오 사후-프로세서 (31) 로 전송하도록 구성될 수도 있다. 비디오 디코더 (30) 는 하나 이상의 CRI SEI 메시지들에 대응하는 정보를 비디오 사후-프로세서 (31) 로 전송하도록 구성될 수도 있다. 하나 이상의 CRI SEI 메시지들에 대응하는 정보는 하나 이상의 CRI SEI 메시지들 또는 하나 이상의 CRI SEI 메시지들로부터 도출된 정보일 수도 있다. CRI SEI 메시지들로부터 도출된 정보는, 비디오 사후-프로세서 (31) 가 수신하고, 이어서 하나 이상의 CRI SEI 메시지들에 대응하는 정보에 기초하여 디코딩된 비디오 데이터 상에서 하나 이상의 프로세스들을 수행하도록 구성될 수도 있는 컬러 재맵핑 정보일 수도 있다.
일부 예들에서, 소정의 애플리케이션 표준들 (예를 들어, DVB, ATSC) 은, 애플리케이션 표준을 따르는 모든 디바이스들에 대해 품질 개선 (예를 들어, 프레임 - 패킹 SEI 메시지가 비디오의 모든 프레임에 대해 반송되고, 또는 팬-스캔이 DVB 의 직사각형 SEI 메시지를 스캔하는 프레임-호환가능 평면-입체 3DTV 비디오 포맷에 대한 프레임-패킹 SEI 메시지의 운송) 을 이끌 수 있도록 비트스트림에서 이러한 SEI 메시지들의 존재를 요구할 수도 있다.
HEVC 표준에서 정의된 컬러 재맵핑 정보 (CRI) SEI 메시지는 정보를 비디오 디코더 (30) 로 전달하도록 비디오 인코더 (20) 에 의해 사용될 수도 있고, 이 정보는, 예를 들어 하나의 컬러 공간에서 비디오 데이터 (예를 들어, 픽처들) 를 다른 곳에 맵핑하는데 사용되고 있다. 예를 들어, CRI SEI 메시지는 디코더 (예를 들어, 비디오 디코더 (30)) 에, 만약에 있다면 컬러 재맵핑 프로세스들이 비디오 인코더 (예를 들어, 비디오 인코더 (20)) 에 의해 인코딩되기 전에 비디오 데이터 상에서 수행되었다는 것을 알릴 수도 있다. 일 예로서, CRI SEI 메시지는, 디코딩된 비디오 데이터가 상반된 방식으로 또는 상반되지 않은 방식으로 프로세싱될 수도 있도록 비디오 디코더 (예를 들어, 비디오 디코더 (30)) 에 정보를 반송하는데 사용될 수도 있다. CRI SEI 메시지의 신택스는 3 개의 부분들: 사전-LUT 로 지칭된 제 1 검색 테이블 (look-up table), 컬러 재맵핑 계수들의 3x3 매트릭스, 및 사후-LUT 로서 지칭된 제 2 검색 테이블을 포함할 수도 있다. 컬러 공간에서의 각각의 컬러 컴포넌트 (예를 들어, RGB 컬러 공간에서의 R, G, 및 B, 또는 YCbCr 컬러 공간에서의 Y, Cb, 및 Cr) 에 대해, 독립적인 LUT 가 사전-LUT 및 사후-LUT 양자 모두에 대해 관습적으로 정의된다. 그러나, 이하에서 더 상세히 설명되는 바와 같이, 이것은, 특히 LUT (예를 들어, 사전-LUT 및/또는 사후-LUT) 가 컬러 공간에서 2 이상의 컬러 컴포넌트들에 대해 동일한 경우 시그널링 비효율성을 도입할 수도 있다.
HEVC 표준에서 정의된 바와 같이, CRI SEI 메시지는 colour_remap_id 로 명명된 신택스 엘리먼트를 포함하고, 이것의 상이한 값들이 SEI 메시지의 상이한 목적들을 나타내는데 사용될 수도 있다. 도 7 은 컬러 재맵핑 프로세스 (예를 들어, 컬러 공간 컨버전 프로세스와 같은 컬러 컨버전 프로세스) 의 일 예시의 구조를 나타낸다. 도 7 에 도시된 바와 같이, 비디오 사전-프로세서 (19) 는 비디오 데이터를 사전-LUT (200) 에 입력하도록 구성될 수도 있다. 사전-LUT (200) 는 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조이다. 일부 예들에서, 사전-LUT (200) 는 각각의 컬러 채널에 적용된 단일의 사전-LUT 를 지칭할 수도 있다. 다른 예들에서, 사전-LUT (200) 는 하나 이상의 컬러 채널-특정 사전-LUTS 를 지칭할 수도 있다. 이러한 예들에서, 사전-LUT (200) 는 3 개의 사전-LUTS 를 포함할 수도 있고, 3 개의 사전-LUT들 각각은 컬러 채널에 대응한다 (예를 들어, RGB 와 같은 3 개의 컬러 채널들을 갖는 컬러 공간에서 픽셀 값들을 맵핑하기 위해, 사전-LUT (200) 는 레드 채널에 대한 제 1 사전-LUT, 그린 채널에 대한 제 2 사전-LUT, 및 블루 채널에 대한 제 3 사전-LUT 를 포함할 수도 있다). 컬러 공간이 4 개의 컬러 채널들을 포함하면, 사전-LUT (200) 는 유사하게 4 개의 개별의 채널-특정 사전-LUT들을 지칭할 수도 있다.
비디오 사전-프로세서 (19) 는, 사전-LUT (200) 를 사용하여, 비디오 데이터의 픽셀 값들을 입력 픽셀 값들로부터 출력 픽셀 값들로 컨버팅하도록 구성될 수도 있다. 도시된 예에서, 사전-LUT (200) 에 들어가는 비디오 데이터는 사전-LUT 비디오 데이터로서 지칭될 수도 있고, 사전-LUT 에 의해 출력된 비디오 데이터는 사전-LUT 프로세싱된 비디오 데이터로서 지칭될 수도 있다. 비디오 사전-프로세서 (19) 는, 3 개의 컬러 채널 컬러 공간에서 3 개의 컬러 채널들을 컬러 재맵핑하기 위한 컬러 재맵핑 계수들을 포함하는, 3x3 매트릭스 (202) 에 사전-LUT 프로세싱된 비디오 데이터를 입력하도록 구성될 수도 있다. 4 개의 컬러 채널 컬러 공간을 수반하는 다른 예에서, 3x3 매트릭스 (202) 는 3x3 매트릭스 대신에 4x4 매트릭스일 수도 있다. 다르게 설명하면, 비디오 사전-프로세서 (19) 는 3x3 매트릭스 (202) 를 사전-LUT 프로세싱된 비디오 데이터에 적용하도록 구성될 수도 있다. 도시된 예에서, 3x3 매트릭스 (202) 에 의해 출력된 비디오 데이터는 매트릭스-프로세싱된 비디오 데이터로서 지칭될 수도 있다.
일부 예들에서, 3x3 매트릭스 (202) 는 대각 매트릭스이거나 또는 아닐 수도 있다. 3x3 매트릭스 (202) 가 대각 매트릭스인 예들에서, 대각 매트릭스는 하나 이상의 컬러 채널들을 스케일링하고/하거나 하나 이상의 컬러 채널들을 유지하는 것을 담당할 수도 있다. 예를 들어, RGB 컬러 공간 예에서, 3x3 매트릭스 (202) 는 최상부 행의 좌측 포지션에서의 레드 채널 계수 및 최상부 행의 나머지 2 개의 포지션들에 대한 0 의 값, 중간 행의 중간 포지션에서의 그린 채널 계수 및 중간 행의 나머지 2 개의 포지션들에 대한 0 의 값, 및 최하부 행의 우측 포지션에서의 블루 채널 계수 및 최하부 행의 나머지 2 개의 포지션들에 대한 0 의 값을 포함할 수도 있다.
3x3 매트릭스 (202) 는 다수의 목적들을 위해 비디오 사전-프로세서 (19) 에 의해 적용될 수도 있다는 것이 이해된다. 예를 들어, 비디오 사전-프로세서 (19) 는 3x3 매트릭스 (202) 를 적용하여 선형 블록 변환 (예를 들어, RGB 에서 YUV 등으로) 을 연산하도록 구성될 수도 있다. 다른 예로서, 비디오 사전-프로세서 (19) 는 3x3 매트릭스 (202) 를 적용하여 컬러 프라이머리들의 하나의 그룹 (예를 들어, 3-프라이머리 컬러 공간에서 3 및 4-프라이머리 컬러 공간에서 4) 을 다른 것으로 변환하도록 구성될 수도 있다. 다른 예들에서, 비디오 사전-프로세서 (19) 는 3x3 매트릭스 (202) 를 적용하여 비디오 데이터 상에서 복잡한 비-선형 변환을 근사화하도록 구성될 수도 있고, 이것은 사전-LUT (200) 및/또는 사후-LUT (204) 와 결합하여 또는 결합하지 않고 발생할 수도 있다.
비디오 사전-프로세서 (19) 는 매트릭스-프로세싱된 비디오 데이터를 사후-LUT (204) 에 입력하도록 구성될 수도 있다. 사후-LUT (204) 는 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조이다. 일부 예들에서, 사후-LUT (204) 는 각각의 컬러 채널에 적용된 단일의 사전-LUT 를 지칭할 수도 있다. 다른 예들에서, 사후-LUT (204) 는 하나 이상의 컬러 채널-특정 사후-LUTS 를 지칭할 수도 있다. 이러한 예들에서, 사후-LUT (204) 는 3 개의 사후-LUTS 을 포함할 수도 있고, 3 개의 사후-LUT들 각각은 컬러 채널에 대응한다 (예를 들어, RGB 와 같은 3 개의 컬러 채널들을 갖는 컬러 공간에서 픽셀 값들을 맵핑하기 위해, 사후-LUT (204) 는 레드 채널에 대한 제 1 사후-LUT, 그린 채널에 대한 제 2 사후-LUT, 및 블루 채널에 대한 제 3 사후-LUT 를 포함할 수도 있다). 컬러 공간이 4 개의 컬러 채널들을 포함하면, 사후-LUT (204) 는 유사하게 4 개의 개별의 채널-특정 사후-LUT들을 지칭할 수도 있다. 비디오 사전-프로세서 (19) 는, 사후-LUT (204) 를 사용하여, 매트릭스-프로세싱된 비디오 데이터의 픽셀 값들을 입력 픽셀 값들로부터 출력 픽셀 값들로 컨버팅하도록 구성될 수도 있다. 도시된 예에서, 사후-LUT (204) 에 의해 출력된 비디오 데이터는 컬러 재맵핑된 비디오 데이터로서 지칭될 수도 있다.
일부 예들에서, 사후-LUT (204) 는 구조에서 사전-LUT (200) 와 유사할 수도 있다. 3x3 매트릭스 (202) 는, 일부 예들에서 사용되지 않을 수도 있다. 이러한 예들에서, 사전-LUT (200) 및 사후-LUT (204) 는 단일의 LUT 로 결합될 수도 있다. 3x3 매트릭스 (202) 를 포함하는 예들에서, 사후-LUT (204) 는 3x3 매트릭스 곱셈 후에 프로세싱을 인에이블하는 것으로서 설명될 수도 있다. 예를 들어, 사후-LUT (204) 는 다르게는 가능하지 않을 수도 있는 3x3 매트릭스 (202) 로부터 출력된 비디오 데이터의 비-선형 (또는 선형) 맵핑을 인에이블하는 것으로서 설명될 수도 있다. 하나의 이러한 예에서, 비디오 사전-프로세서 (19) 는 사전-LUT (200) 를 비디오 데이터에 적용하여, 비디오 데이터를 비-선형 도메인 (예를 들어, 비-선형 RGB) 으로부터 선형 도메인 (예를 들어, 선형 RGB) 로 컨버팅하도록 구성될 수도 있다. 또한, 비디오 사전-프로세서 (19) 는 비디오 데이터 (예를 들어, 3x3 매트릭스 (202) 로부터 출력된 매트릭스-프로세싱된 비디오 데이터) 에 사후-LUT (204) 를 적용하여, 비디오 데이터를 선형 도메인으로부터 비-선형 도메인으로 컨버팅하도록 구성될 수도 있다.
사전-LUT (200), 3x3 매트릭스 (202), 및 사후-LUT (204) 는, 디코딩된 비디오 데이터가 하나 이상의 CRI SEI 메시지들에 따라 (예를 들어, 하나 이상의 CRI SEI 메시지들에 대응하는 정보에 따르는 것과 같이 본원에서 설명될 수도 있는, 하나 이상의 CRI SEI 메시지들에 의해 반송된 정보에 따라) 프로세싱될 수도 있도록, CRI SEI 메시지는 정보를 비디오 디코더 (예를 들어, 비디오 디코더 (30)) 로 반송하는데 사용될 수도 있기 때문에, 일부 예들에서 컬러 재맵핑 프로세서, 또는 CRI SEI 메시지 프로세스로서 각각 설명될 수도 있다. 일부 예들에서, 디코딩된 비디오 데이터는 비디오 사전-프로세서 (19) 에 의해 수행된 임의의 컬러 재맵핑 프로세스에 대해 상반된 방식으로 또는 비디오 사전-프로세서 (19) 에 의해 수행된 임의의 컬러 재맵핑 프로세스에 대해 상반되지 않은 방식으로 비디오 사후-프로세서 (31) 에 의해 프로세싱될 수도 있다. 일부 예들에서, 비디오 사후-프로세서 (31) 에 의해 수행된 하나 이상의 컬러 재맵핑 프로세스들은 비디오 사전-프로세서 (19) 에 의해 수행된 하나 이상의 컬러 재맵핑 프로세스들에 대해 상반될 수도 있고, 비디오 사후-프로세서 (31) 에 의해 수행된 하나 이상의 컬러 재맵핑 프로세스들은 비디오 사전-프로세서 (19) 에 의해 수행된 하나 이상의 컬러 재맵핑 프로세스들에 대해 상반되지 않을 수도 있다. 이러한 예들에서, 비디오 사후-프로세서 (31) 는 비디오 사전-프로세서 (19) 에 의해 수행된 하나 이상의 컬러 재맵핑 프로세스들에 대해 상반된 및 비-상반된 프로세스들의 조합을 수행하도록 구성될 수도 있다.
도 8 은 도 7 에 도시된 컬러 재맵핑 프로세스에 상반되거나 또는 상반되지 않을 수도 있는 컬러 재맵핑 프로세스의 일 예시의 구조를 나타낸다. 도 8 에서의 프로세스가 도 7 의 상반되는 프로세스 (예를 들어, 반전된 컬러 컨버전 프로세스) 인 예들에서, 사전-LUT (206) 는 사후-LUT (204) 와 동일할 수도 있고, 3x3 매트릭스 (208) 는 3x3 매트릭스 (202) 의 계수들에 상반되는 컬러 컴포넌트 계수들을 포함할 수도 있으며, 사후-LUT (210) 는 사전-LUT (200) 와 동일할 수도 있다. 그러나, 본원에 설명된 바와 같이, 하나 이상의 CRI SEI 메시지들에 대응하는 정보에 기초하여, 비디오 사후-프로세서 (31) 는 하나 이상의 CRI SEI 메시지들이 연관되는 디코딩된 비디오 데이터 상에서 하나 이상의 상반되는 및/또는 하나 이상의 비-상반되는 컬러 재맵핑 프로세스들을 수행하도록 구성될 수도 있다. 디코딩된 비디오 데이터 상에서 임의의 컬러 재맵핑 프로세스를 수행하는 것에 대한 참조는 (예를 들어, 하나 이상의 비-CRI 프로세스들이 디코딩된 비디오 데이터에 적용된 후에) 프로세싱되었던 디코딩된 비디오 데이터 상에서 간접적으로 또는 디코딩된 비디오 데이터 상에서 직접적으로 임의의 컬러 재맵핑 프로세스를 수행하는 것을 지칭할 수도 있는 것으로 이해된다. 간접적인 예에서, 디코딩된 비디오 데이터 상에서 임의의 컬러 재맵핑 프로세스를 수행하는 것에 대한 참조는 실제로, 비-CRI 프로세싱된 디코딩된 비디오 데이터 상에서 임의의 컬러 재맵핑 프로세스를 수행하는 것을 지칭한다.
도 8 에 도시된 바와 같이, 비디오 사후-프로세서 (31) 는 (일부 예들에서 비-CRI 프로세싱된 디코딩된 비디오 데이터일 수도 있는) 디코딩된 비디오 데이터를 사전-LUT (206) 에 입력하도록 구성될 수도 있다. 사전-LUT (206) 는 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조이다. 일부 예들에서, 사전-LUT (206) 는 각각의 컬러 채널에 적용된 단일의 사전-LUT 를 지칭할 수도 있다. 다른 예들에서, 사전-LUT (206) 는 하나 이상의 컬러 채널-특정 사전-LUTS 를 지칭할 수도 있다. 이러한 예들에서, 사전-LUT (206) 는 3 개의 사전-LUTS 을 포함할 수도 있고, 3 개의 사전-LUT들 각각은 컬러 채널에 대응한다 (예를 들어, RGB 와 같은 3 개의 컬러 채널들을 갖는 컬러 공간에서 픽셀 값들을 맵핑하기 위해, 사전-LUT (206) 는 레드 채널에 대한 제 1 사전-LUT, 그린 채널에 대한 제 2 사전-LUT, 및 블루 채널에 대한 제 3 사전-LUT 를 포함할 수도 있다). 컬러 공간이 4 개의 컬러 채널들을 포함하면, 사전-LUT (206) 는 유사하게 4 개의 개별의 채널-특정 사전-LUT들을 지칭할 수도 있다.
비디오 사후-프로세서 (31) 는 (일부 예들에서, 비-CRI 프로세싱된 디코딩된 비디오 데이터일 수도 있는) 디코딩된 비디오 데이터의 픽셀 값들을, 사전-LUT (206) 를 사용하여 입력 픽셀 값들로부터 출력 픽셀 값들로 컨버팅하도록 구성될 수도 있다. 도시된 예에서, 사전-LUT 에 의해 출력된 디코딩된 비디오 데이터는 사전-LUT 프로세싱된 디코딩된 비디오 데이터로서 지칭될 수도 있다. 비디오 사후-프로세서 (31) 는, 3 개의 컬러 채널 컬러 공간에서 3 개의 컬러 채널들을 컬러 재맵핑하기 위한 컬러 재맵핑 계수들을 포함하는, 3x3 매트릭스 (208) 에 사전-LUT 프로세싱된 디코딩된 비디오 데이터를 입력하도록 구성될 수도 있다. 4 개의 컬러 채널 컬러 공간을 수반하는 다른 예에서, 3x3 매트릭스 (208) 는 3x3 매트릭스 대신에 4x4 매트릭스일 수도 있다. 다르게 설명하면, 비디오 사후-프로세서 (31) 는 3x3 매트릭스 (208) 를 사전-LUT 프로세싱된 디코딩된 비디오 데이터에 적용하도록 구성될 수도 있다. 도시된 예에서, 3x3 매트릭스 (208) 에 의해 출력된 비디오 데이터는 매트릭스-프로세싱된 디코딩된 비디오 데이터로서 지칭될 수도 있다.
일부 예들에서, 3x3 매트릭스 (208) 는 대각 매트릭스이거나 또는 아닐 수도 있다. 3x3 매트릭스 (208) 가 대각 매트릭스인 예들에서, 대각 매트릭스는 하나 이상의 컬러 채널들을 스케일링하고/하거나 하나 이상의 컬러 채널들을 유지하는 것을 담당할 수도 있다. 예를 들어, RGB 컬러 공간 예에서, 3x3 매트릭스 (208) 는 최상부 행의 좌측 포지션에서의 레드 채널 계수 및 최상부 행의 나머지 2 개 포지션들에 대한 0 의 값, 중간 행의 중간 포지션에서의 그린 채널 계수 및 중간 행의 나머지 2 개의 포지션들에 대한 0 의 값, 및 최하부 행의 우측 포지션에서의 블루 채널 계수 및 최하부 행의 나머지 2 개의 포지션들에 대한 0 의 값을 포함할 수도 있다.
3x3 매트릭스 (208) 는 다수의 목적들을 위해 비디오 사후-프로세서 (31) 에 의해 적용될 수도 있다는 것이 이해된다. 예를 들어, 비디오 사후-프로세서 (31) 는 3x3 매트릭스 (208) 를 적용하여 선형 블록 변환 (예를 들어, YUV 에서 RGB 등으로) 을 연산하도록 구성될 수도 있다. 다른 예로서, 비디오 사후-프로세서 (31) 는 3x3 매트릭스 (208) 를 적용하여 컬러 프라이머리들의 하나의 그룹 (예를 들어, 3-프라이머리 컬러 공간에서 3 및 4-프라이머리 컬러 공간에서 4) 을 다른 것으로 변환하도록 구성될 수도 있다. 다른 예들에서, 비디오 사후-프로세서 (31) 는 3x3 매트릭스 (208) 를 적용하여 디코딩된 비디오 데이터 (예를 들어, 사전-LUT 프로세싱된 디코딩된 비디오 데이터) 상에서 복잡한 비-선형 변환을 근사화하도록 구성될 수도 있고, 이것은 사전-LUT (206) 및/또는 사후-LUT (210) 와 결합하여 또는 결합하지 않고 발생할 수도 있다.
비디오 사후-프로세서 (31) 는 매트릭스-프로세싱된 디코딩된 비디오 데이터를 사후-LUT (210) 에 입력하도록 구성될 수도 있다. 사후-LUT (210) 는 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조이다. 일부 예들에서, 사후-LUT (210) 는 각각의 컬러 채널에 적용된 단일의 사전-LUT 를 지칭할 수도 있다. 다른 예들에서, 사후-LUT (210) 는 하나 이상의 컬러 채널-특정 사후-LUTS 를 지칭할 수도 있다. 이러한 예들에서, 사후-LUT (210) 는 3 개의 사후-LUTS 을 포함할 수도 있고, 3 개의 사후-LUT들 각각은 컬러 채널에 대응한다 (예를 들어, RGB 와 같은 3 개의 컬러 채널들을 갖는 컬러 공간에서 픽셀 값들을 맵핑하기 위해, 사후-LUT (210) 는 레드 채널에 대한 제 1 사후-LUT, 그린 채널에 대한 제 2 사후-LUT, 및 블루 채널에 대한 제 3 사후-LUT 를 포함할 수도 있다). 컬러 공간이 4 개의 컬러 채널들을 포함하면, 사후-LUT (210) 는 유사하게 4 개의 개별의 채널-특정 사후-LUT들을 지칭할 수도 있다. 비디오 사후-프로세서 (31) 는, 사후-LUT (210) 를 사용하여, 매트릭스-프로세싱된 디코딩된 비디오 데이터의 픽셀 값들을 입력 픽셀 값들로부터 출력 픽셀 값들로 컨버팅하도록 구성될 수도 있다. 도시된 예에서, 사후-LUT (210) 에 의해 출력된 비디오 데이터는 컬러 재맵핑된 디코딩된 비디오 데이터로서 지칭될 수도 있다.
일부 예들에서, 사후-LUT (210) 는 구조에서 사전-LUT (206) 와 유사할 수도 있다. 3x3 매트릭스 (208) 는, 일부 예들에서 사용되지 않을 수도 있다. 이러한 예들에서, 사전-LUT (206) 및 사후-LUT (210) 는 단일의 LUT 로 결합될 수도 있다. 3x3 매트릭스 (208) 를 포함하는 예들에서, 사후-LUT (210) 는 3x3 매트릭스 곱셈 후에 프로세싱을 인에이블하는 것으로서 설명될 수도 있다. 예를 들어, 사후-LUT (210) 는 다르게는 가능하지 않을 수도 있는 3x3 매트릭스 (208) 로부터 출력된 비디오 데이터의 비-선형 (또는 선형) 맵핑을 인에이블하는 것으로서 설명될 수도 있다. 하나의 이러한 예에서, 비디오 사후-프로세서 (31) 는 사전-LUT (206) 를 디코딩된 비디오 데이터에 적용하여, 비디오 데이터를 비-선형 도메인 (예를 들어, 비-선형 RGB) 으로부터 선형 도메인 (예를 들어, 선형 RGB) 로 컨버팅하도록 구성될 수도 있다. 또한, 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터 (예를 들어, 3x3 매트릭스 (208) 로부터 출력된 매트릭스-프로세싱된 디코딩된 비디오 데이터) 에 사후-LUT (210) 를 적용하여, 디코딩된 비디오 데이터를 선형 도메인으로부터 비-선형 도메인으로 컨버팅하도록 구성될 수도 있다.
사전-LUT (206), 3x3 행렬 (208), 및 사후-LUT (210) 는, 일부 예들에서 각각 컬러 재맵핑 프로세스, 또는 CRI SEI 메시지 프로세스로서 설명될 수도 있다. 비디오 사후-프로세서 (31) 는 하나 이상의 CRI SEI 메시지들에 따라 (예를 들어, 하나 이상의 CRI SEI 메시지들에 대응하는 정보를 따르는 것으로서 본원에 또한 설명될 수도 있는, 하나 이상의 CRI SEI 메시지들에 의해 반송된 정보에 따라) 디코딩된 비디오 데이터를 프로세싱하도록 구성될 수도 있다.
일부 예들에서, 비디오 사전-프로세서 (19) 는 비디오 데이터에 단지 사전-LUT (200) 를 적용함으로써, 단지 3x3 매트릭스 (202) 를 적용함으로써, 단지 사후-LUT (204), 또는 사전-LUT (200), 3x3 매트릭스 (202), 및 사후-LUT (204) 를 적용함으로써 비디오 데이터를 프로세싱하도록 구성될 수도 있다. 이러한 예들에서, 비디오 사전-프로세서 (19) 는 사전-LUT (200), 3x3 매트릭스 (202), 및 사후-LUT (204) 중 하나 이상을 적용하지 않도록 구성될 수도 있다. 일부 예들에서, 프로세스를 적용하지 않는 것은 (1) 아이덴티티 프로세스로서 지칭될 수도 있는 프로세스로 입력되는 동일한 비디오 데이터를 출력하는 프로세스를 적용하지 않는 것 또는 (2) 이를 적용하는 것을 지칭할 수도 있다. 예를 들어, 3x3 매트릭스 (202) 는, 단위 매트릭스로서 또한 지칭될 수도 있는 아이덴티티 매트릭스일 수도 있다. 다른 예로서, 사전-LUT (200) 는, 출력 값들이 입력 값들과 동일하도록 (즉, 입력 픽셀 값들이 사전-LUT (200) 에 의해 맵핑될 때 변하지 않도록) 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조일 수도 있다. 다른 예로서, 사후-LUT (204) 는, 출력 값들이 입력 값들과 동일하도록 (즉, 입력 픽셀 값들이 사후-LUT (204) 에 의해 맵핑될 때 변하지 않도록) 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조일 수도 있다.
유사하게, 비디오 사후-프로세서 (31) 는 비디오 데이터에 단지 사전-LUT (206) 를 적용함으로써, 단지 3x3 매트릭스 (208) 를 적용함으로써, 단지 사후-LUT (210), 또는 사전-LUT (206), 3x3 매트릭스 (208), 및 사후-LUT (210) 의 임의의 조합을 적용함으로써 디코딩된 비디오 데이터를 프로세싱하도록 구성될 수도 있다. 이러한 예들에서, 비디오 사후-프로세서 (31) 는 사전-LUT (206), 3x3 매트릭스 (208), 및 사후-LUT (210) 중 하나 이상을 적용하지 않도록 구성될 수도 있다. 일부 예들에서, 프로세스를 적용하지 않는 것은 (1) 아이덴티티 프로세스로서 지칭될 수도 있는 프로세스로 입력되는 동일한 비디오 데이터를 출력하는 프로세스를 적용하지 않는 것 또는 (2) 이를 적용하는 것을 지칭할 수도 있다. 예를 들어, 3x3 매트릭스 (208) 는, 단위 매트릭스로서 또한 지칭될 수도 있는 아이덴티티 매트릭스일 수도 있다. 다른 예로서, 사전-LUT (206) 는, 출력 값들이 입력 값들과 동일하도록 (즉, 입력 픽셀 값들이 사전-LUT (206) 에 의해 맵핑될 때 변하지 않도록) 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조일 수도 있다. 다른 예로서, 사후-LUT (210) 는, 출력 값들이 입력 값들과 동일하도록 (즉, 입력 픽셀 값들이 사후-LUT (210) 에 의해 맵핑될 때 변하지 않도록) 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조일 수도 있다.
현재 HEVC 표준에 의해 정의된 바와 같은 CRI SEI 메시지의 신택스 테이블은 이하의 표 2 에서 재생성된다. 완전한 시맨틱들이 HEVC 표준에서 이용 가능하다.
Figure pct00001
표 2 - CRI SEI 메시지
CRI SEI 메시지들의 일부 시맨틱들이 본원에서 설명된다. 비디오 인코더 (20) 는 본원에 설명된 CRI 메시지들의 시맨틱들에 따라 비트스트림을 생성하도록 구성될 수도 있고, 비디오 디코더 (30) 는 비트스트림을 수신하고, 비트스트림으로부터 CRI SEI 메시지 정보를 파싱하며, 비트스트림으로부터 파싱된 CRI SEI 메시지(들) 에서 전달된 컬러 재맵핑 정보에 따라 컬러 재맵핑을 수행 (또는 그 자체가 수행) 하기 위해 비디오 사후-프로세서 (31) 에 명령하도록 구성될 수도 있다. 예를 들어, 사전-프로세서 (19) 는, 컬러 재맵핑된 비디오 데이터가 비디오 인코더 (20) 에 의해 인코딩되도록 비디오 데이터가 인코딩되기 전에 비디오 데이터 상에서 컬러 재맵핑을 수행할 수도 있다. 이러한 예에서, 비디오 인코더 (20) 는, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 가 디코딩된 비디오 데이터 상에서 역 컬러 재맵핑을 수행하게 하도록 본원에 설명된 CRI 메시지들의 시맨틱들에 따라 비트스트림을 생성하도록 구성될 수도 있다. 본원에서 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 에 대한 참조가 이루어질 수도 있지만, 비디오 디코더 (30) 에 대한 참조 또는 비디오 사후-프로세서 (31) 에 대한 참조 양자 모두는 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 를 전달한다는 것이 이해된다. 유사하게, 본원에서 비디오 인코더 (20) 및/또는 비디오 사후-프로세서 (31) 에 대한 참조가 이루어질 수도 있지만, 비디오 인코더 (20) 에 대한 참조 또는 비디오 사전-프로세서 (19) 에 대한 참조 양자 모두는 비디오 인코더 (20) 및/또는 비디오 사전-프로세서 (19) 를 전달한다는 것이 이해된다.
디코딩된 비디오 데이터는 비디오 디코더 (30) 에 의한 출력으로서 디코딩된 비디오 데이터를, 또는 예를 들어 하나 이상의 비-CRI SEI 메시지 프로세스 (예를 들어, 업샘플링 또는 다운샘플링 프로세스) 에 의해 프로세싱된 바와 같은 디코딩된 비디오 데이터를 지칭할 수도 있다. 일부 예들에서, 역 컬러 재맵핑 프로세스에 대한 참조는, 비디오 데이터가 비디오 인코더 (20) 에 의해 인코딩되기 전에 비디오 데이터에 적용된 컬러 재맵핑 프로세스의 역을 지칭할 수도 있다. 비디오 디코더 (30) 는 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하도록 구성될 수도 있고, 여기서 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함한다.
단락들 [0087]-[0098] 로부터 이하의 시맨틱들은 참조를 위해 현재의 HEVC 표준으로부터 직접적으로 인용된다.
컬러 재맵핑 정보 SEI 메시지는 출력 픽처들의 복원된 컬러 샘플들의 재맵핑을 인에이블하도록 정보를 제공한다. 컬러 재맵핑 정보는, 이들이 루마 및 크로마 도메인 또는 RGB 도메인에 있는지 여부에 관계 없이 디코딩된 샘플 값들에 직접적으로 적용될 수도 있다. 컬러 재맵핑 정보 SEI 메시지에서 사용된 컬러 재맵핑 모델은 (본원에서 신택스 엘리먼트들의 "사전" 세트로 지정된) 각각의 컬러 컴포넌트에 적용된 제 1 구분적 선형 함수, 3 개의 컬러 컴포넌트들에 적용된 3-바이-3 매트릭스, 및 (본원에서 신택스 엘리먼트들의 "사후" 세트로 지정된) 각각의 컬러 컴포넌트에 적용된 제 2 구분적 선형 함수로 이루어진다. 주석 (NOTE) 1 - 디스플레이에 대한 출력 픽처들의 컬러 재맵핑은 선택적이고, 본 상세한 설명에서 지정된 디코딩 프로세스에 영향을 주지 않는다.
colour_remap_id 는 컬러 재맵핑 정보의 목적을 식별하는데 사용될 수도 있는 식별 넘버를 포함한다. colour_remap_id 의 값은 0 내지 232 - 2 를 포함하는 범위에 있을 것이다.
0 내지 255 및 512 내지 231 - 1 의 colour_remap_id 의 값들은 곱셈에 의해 결정된 바와 같이 사용될 수도 있다. 256 내지 511 을 포함하고, 231 내지 232 - 2 를 포함하는 colour_remap_id 의 값들은 ITU-T│ISO/IEC 에 의한 미래의 사용을 위해 리저브된다. 디코더들은 256 내지 511 를 포함하는 범위, 또는 231 내지 232-2 를 포함하는 범위에서 colour_remap_id 의 값을 포함하는 모든 컬러 재맵핑 정보 SEI 메시지들을 무시할 것이고, 비트스트림들은 이러한 값들은 포함하지 않을 것이다. 주석 2 - colour_remap_id 는 상이한 디스플레이 시나리오들에 적합한 상이한 컬러 재맵핑 프로세스들을 지원하는데 사용될 수 있다. 예를 들어, colour_remap_id 의 상이한 값들은 디스플레이들에 의해 지원된 상이한 재맵핑된 컬러 공간들에 대응할 수도 있다.
colour_remap_matrix_coefficients 은, colour_remap_matrix_coefficients 이 CLVS 에 대해 사용된 컬러 공간 보다는, 재맵핑된 복원된 픽처의 컬러 공간을 지정하는 것을 제외하고, matrix_coeffs 신택스 엘리먼트에 대한 조항 E.3.1 에서 지정된 바와 동일한 시맨틱들을 갖는다. 존재하지 않는 경우, colour_remap_matrix_coefficients 의 값은 matrix_coeffs 의 값과 동일한 것으로 추정된다.
colour_remap_input_bit_depth 는 컬러 재맵핑 정보 SEI 메시지의 반복의 목적을 위해 연관된 픽처들의 RGB 컴포넌트들 또는 루마 및 크로마 컴포넌트들의 비트 심도를 지정한다. 임의의 컬러 재맵핑 정보 SEI 메시지들이 코딩된 루마 및 크로마 컴포넌트들의 비트 심도 또는 코딩된 RGB 컴포넌트들의 비트 심도와 동일하지 않은 colour_remap_input_bit_depth 의 값과 함께 존재하는 경우, SEI 메시지는 colour_remap_input_bit_depth 와 동일한 비트 심도를 갖는 컨버팅된 비디오로 코딩된 비디오를 컨버팅하도록 수행된 트랜스코딩 동작의 가설적인 결과를 지칭한다.
colour_remap_input_bit_depth 의 값은 8 내지 16 을 포함하는 범위에 있을 것이다. 0 내지 7 을 포함하고, 17 내지 255 를 포함하는 colour_remap_input_bit_depth 의 값들은 ITU-T│ISO/IEC 에 의한 미래의 사용을 위해 리저브된다. 디코더들은, 0 내지 7 을 포함하는 범위, 또는 17 내지 255 를 포함하는 범위에서 colour_remap_input_bit_depth 를 포함하는 모든 컬러 재맵핑 SEI 메시지들을 무시할 것이고, 비트스트림들은 이러한 값들을 포함하지 않을 것이다.
colour_remap_bit_depth 는 컬러 재맵핑 정보 SEI 메시지에 의해 설명된 컬러 재맵핑 함수의 출력의 비트 심도를 지정한다.
colour_remap_bit_depth 의 값은 8 내지 16 을 포함하는 범위에 있을 것이다. 0 내지 7 을 포함하고, 17 내지 255 를 포함하는 범위에서 colour_remap_bit_depth 의 값들은 ITU-T│ISO/IEC 에 의한 미래의 사용을 위해 리저브된다. 디코더들은, 0 내지 7 을 포함하는, 또는 17 내지 255 를 포함하는 범위에서 colour_remap_bit_depth 의 값을 포함하는 모든 컬러 재맵핑 SEI 메시지들을 무시할 것이다.
pre_lut_num_val_minus1[ c ] plus 1 은 c-번째 컴포넌트에 대한 구분적 선형 재맵핑 함수에서 피봇 포인트들의 수를 지정하고, 여기서 0 과 동일한 c 는 루마 또는 G 컴포넌트를 지칭하고, 1 과 동일한 c 는 Cb 또는 B 컴포넌트를 지칭하며, 2 와 동일한 c 는 Cr 또는 R 컴포넌트를 지칭한다. pre_lut_num_val_minus1[ c ] 이 0 과 동일한 경우, c-번째 컴포넌트에 대해, 입력 값들의 디폴트 엔드 포인트들은 0 및 2colour_remap_input_bit_depth - 1 이고, 출력 값들의 대응하는 디폴트 엔드 포인트들은 0 및 2colour_remap_bit_depth - 1 이다. 이 사양의 이 버전을 따르는 비트스트림들에서, pre_lut_num_val_minus1[ c ] 의 값은 0 내지 32 를 포함하는 범위에 있을 것이다.
pre_ lut _coded_value[ c ][ i ] 는 c 번째 컴포넌트에 대한 i 번째 피봇 포인트의 값을 지정한다. pre_lut_coded_value[ c ][ i ] 를 표현하는데 사용된 비트들의 수는 (( colour_remap_input_bit_depth + 7 ) >> 3 ) << 3 이다.
pre_ lut _target_value[ c ][ i ] 는 c 번째 컴포넌트에 대한 i 번째 피봇 포인트의 값을 지정한다. pre_lut_target_value[ c ][ i ] 를 표현하는데 사용된 비트들의 수는 (( colour_remap_bit_depth + 7 ) >> 3 ) << 3 이다.
post_lut_num_val_minus[ ], post_lut_coded_value[ ][ ], 및 post_lut_target_value[ ][ ] 의 시맨틱들은 pre_lut_num_val_minus[ ], pre_lut_coded_value[ ][ ], 및 pre_lut_target_value[ ][ ] 와 각기 유사하고; post_lut_coded_value[ ][ ], 및 post_lut_target_value[ ][ ] 를 표현하는데 사용된 비트들의 수는 colour_remap_bit_depth 와 동일하다.
비디오 디코더 (30) 는 비디오 인코더 (20) 의 역을 수행하여 비디오 데이터를 디코딩하도록 구성될 수도 있다. 비디오 데이터를 복원하기 위한 프로세스는 일반적으로, 비디오 인코더 (20) 에 의해 수행된 프로세스와 상반될 수도 있다. 전술된 바와 같이, 비디오 사후-프로세서 (31) 는, 일부 예들에서 디코딩된 비디오 데이터를 디스플레이에 적합한 형태로 컨버팅하는 것을 담당할 수도 있는, 비디오 사전-프로세서 (19) 의 역을 수행하도록 구성될 수도 있다. 예를 들어, 비디오 사후-프로세서 (31) 는 정수-대-부동 컨버전, 압축 또는 강건한 컬러 공간으로부터의 컬러 컨버전, 및/또는 동적 범위 압축의 역을 수행하여 디스플레이에 적합한 비디오 데이터를 생성할 수도 있다.
비디오 인코더 (20), 비디오 디코더 (30), 비디오 사전-프로세서 (19), 비디오 사후-프로세서 (31), 및/또는 이들의 임의의 조합 (예를 들어, 비디오 사전-프로세서 (19) 를 포함하는 비디오 인코더 (20), 비디오 사후-프로세서 (31) 를 포함하는 비디오 디코더 (30), 비디오 코더, 비디오 사전-프로세서 (19) 및 비디오 사후-프로세서 (31) 를 포함하는 비디오 코더) 은 임의의 다양한 적합한 인코더 회로부, 예컨대 하나 이상의 마이크로프로세서들, 디지털 신호 프로세서 (DSP)들, 주문형 집적 회로 (ASIC)들, 필드 프로그램가능 게이트 어레이 (FPGA)들, 이산 로직, 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 임의의 조합들로서 구현될 수도 있다. 이 기법들이 부분적으로 소프트웨어로 구현되는 경우, 디바이스는 그 소프트웨어에 대한 명령들을 적합한, 비일시적 컴퓨터 판독가능 매체에 저장할 수도 있고, 본 개시물의 기법들을 수행하기 위해 하나 이상의 프로세서들을 사용하는 하드웨어에서 그 명령들을 실행할 수도 있다. 비디오 인코더 (20) 및 비디오 디코더 (30) 각각은 하나 이상의 인코더들 또는 디코더들에 포함될 수도 있고, 이들 중 어느 하나는 개별의 디바이스에서 결합형 인코더/디코더 (CODEC 또는 코더로서 지칭될 수도 있음) 의 부분으로서 통합될 수도 있다.
일부 예들에서, 비디오 인코더 (20) 및 비디오 디코더 (30) 는 비디오 코딩 표준, 예컨대 ITU-T H.261, ISO/IEC MPEG-1 비주얼, ITU-T H.262 또는 ISO/IEC MPEG-2 비주얼, ITU-T H.263, ISO/IEC MPEG-4 비주얼 및 자신의 확장들 (예를 들어, 스케일러블 비디오 코딩 (SVC) 및 멀티뷰 비디오 코딩 (MVC)) 을 포함하는 ITU-T H.264 (또한, ISO/IEC MPEG-4 AVC로 알려짐), 및 자신의 확장들 (예를 들어, 범위 및 스크린 콘텐츠 코딩 확장들) 을 포함하는 ITU-T H.265 (또한, HEVC 로서 알려짐) 에 따라 동작하도록 구성될 수도 있다.
HEVC 및 다른 비디오 코딩 표준들에서, 비디오 시퀀스는 통상적으로 일련의 픽처들을 포함한다. 픽처들은 또한, "프레임들" 로서 지칭될 수도 있다. 픽처는 SL, SCb, 및 SCr 로 표기된 3 개의 샘플 어레이들을 포함할 수도 있다. SL 은 루마 샘플들의 2-차원 어레이 (즉, 블록) 이다. SCb 는 Cb 크로미넌스 샘플들의 2-차원 어레이이다. SCr 은 Cr 크로미넌스 샘플들의 2-차원 어레이이다. 크로미넌스 샘플들은 또한, 본원에서 "크로마" 샘플들로서 지칭될 수도 있다. 다른 경우들에서, 픽처는 모노크롬일 수도 있고 단지 루마 샘플들의 어레이를 포함할 수도 있다.
비디오 인코더 (20) 는 코딩 트리 유닛 (CTU)들의 세트를 생성할 수도 있다. CTU들 각각은 루마 샘플들의 코딩 트리 블록, 크로마 샘플들의 2 개의 대응하는 코딩 트리 블록들, 및 코딩 트리 블록들의 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다. 3 개의 별개의 컬러 평면들을 갖는 픽처 또는 모노크롬 픽처에서, CTU 는 단일의 코딩 트리 블록 및 코딩 트리 블록의 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다. 코딩 트리 블록은 샘플들의 NxN 블록일 수도 있다. CTU 는 또한, "트리 블록" 또는 "최대 코딩 유닛" (LCU) 으로서 지칭될 수도 있다. HEVC 의 CTU들은 H.264/AVC 와 같은 다른 비디오 코딩 표준들의 매크로블록들과 광범위하게 유사할 수도 있다. 그러나, CTU 는 반드시 특정 사이즈에 제한되지 않고, 하나 이상의 코딩 유닛 (CU)들을 포함할 수도 있다. 슬라이스는 래스터 스캔으로 연속적으로 오더링된 정수의 CTU 들을 포함할 수도 있다.
본 개시물은 샘플들의 하나 이상의 블록들의 샘플들을 코딩하는데 사용된 샘플들의 하나 이상의 블록들 및 신택스 구조들을 지칭하기 위해 용어 "비디오 유닛" 또는 "비디오 블록" 을 사용할 수도 있다. 비디오 유닛들의 예시의 유형들은 CTU들, CU들, PU들, HEVC 에서의 변환 유닛 (TU)들, 매크로블록들, 매크로블록 파티션들, 다른 비디오 코딩 표준들에서의 등등을 포함할 수도 있다.
코딩된 CTU 를 생성하기 위해, 비디오 인코더 (20) 는 CTU 의 코딩 트리 블록들 상에서 쿼드-트리 파티셔닝을 재귀적으로 수행하여 코딩 트리 블록들을 코딩 블록들, 따라서 명칭 "코딩 트리 유닛들" 로 분할할 수도 있다. 코딩 블록은 샘플들의 NxN 블록일 수도 있다. CU 는 루마 샘플 어레이, Cb 샘플 어레이, 및 Cr 샘플 어레이를 갖는 픽처의 루마 샘플들의 코딩 블록 및 크로마 샘플들의 2 개의 대응하는 코딩 블록들, 및 코딩 블록들의 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다. 3 개의 별개의 컬러 평면들을 갖는 픽처 또는 모노크롬 픽처에서, CU 는 단일의 코딩 블록 및 코딩 블록의 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다.
비디오 인코더 (20) 는 CU 의 코딩 블록을 하나 이상의 예측 블록들로 파티셔닝할 수도 있다. 예측 블록은, 동일한 예측이 적용되는 샘플들의 직사각형 (즉, 정사각형 또는 비-정사각형) 블록이다. CU 의 예측 유닛 (PU) 은 루마 샘플들의 예측 블록, 픽처의 크로마 샘플들의 2 개의 대응하는 예측 블록들, 및 예측 블록 샘플들을 예측하는데 사용된 신택스 구조들을 포함할 수도 있다. 모노크롬 픽처 또는 3 개의 별개의 컬러 평면들을 갖는 픽처에서, PU 는 단일의 예측 블록 및 예측 블록 샘플들을 예측하는데 사용된 신택스 구조들을 포함할 수도 있다. 비디오 인코더 (20) 는 CU 의 각각의 PU 의 루마, Cb 및 Cr 예측 블록들에 대한 예측 루마, Cb, 및 Cr 블록들을 생성할 수도 있다.
비디오 인코더 (20) 는 인트라 예측 또는 인터 예측을 사용하여 PU 에 대한 예측 블록들을 생성할 수도 있다. 비디오 인코더 (20) 가 인트라 예측을 사용하여 PU 의 예측 블록들을 생성하는 경우, 비디오 인코더 (20) 는 PU 와 연관된 픽처의 디코딩된 샘플들에 기초하여 PU 의 예측 블록들을 생성할 수도 있다.
비디오 인코더 (20) 가 인터 예측을 사용하여 PU 의 예측 블록을 생성하는 경우, 비디오 인코더 (20) 는 PU 와 연관된 픽처 외에 하나 이상의 픽처들의 디코딩된 샘플들에 기초하여 PU 의 예측 블록을 생성할 수도 있다. 인터 예측은 단-방향 인터 예측 (즉, 단일-예측) 또는 양-방향 인터 예측 (즉, 양-예측) 일 수도 있다. 단일-예측 또는 양-예측을 수행하기 위해, 비디오 인코더 (20) 는 현재 슬라이스에 대해 제 1 레퍼런스 픽처 리스트 (RefPicList0) 및 제 2 레퍼런스 픽처 리스트 (RefPicList1) 를 생성할 수도 있다.
레퍼런스 픽처 리스트들 각각은 하나 이상의 레퍼런스 픽처들을 포함할 수도 있다. 단일-예측을 사용하는 경우, 비디오 인코더 (20) 는 RefPicList0 및 RefPicList1 중 어느 하나 또는 양자 모두에서 레퍼런스 픽처들을 검색하여 레퍼런스 픽처 내의 레퍼런스 로케이션을 결정할 수도 있다. 또한, 단일-예측을 사용하는 경우, 비디오 인코더 (20) 는 레퍼런스 로케이션에 대응하는 샘플들에 적어도 부분적으로 기초하여 PU 에 대한 예측 샘플 블록들을 생성할 수도 있다. 또한, 단일-예측을 사용하는 경우, 비디오 인코더 (20) 는 PU 의 예측 블록과 레퍼런스 로케이션 간의 공간적 변위를 나타내는 단일의 모션 벡터를 생성할 수도 있다. PU 의 예측 블록과 레퍼런스 로케이션 간의 공간적 변위를 나타내기 위해, 모션 벡터는 PU 의 예측 블록과 레퍼런스 로케이션 간의 수평 변위를 지정하는 수평 컴포넌트를 포함할 수도 있고 PU 의 예측 블록과 레퍼런스 로케이션 간의 수직 변위를 지정하는 수직 컴포넌트를 포함할 수도 있다.
PU 를 인코딩하기 위해 양-예측을 사용하는 경우, 비디오 인코더 (20) 는 RefPicList0 의 레퍼런스 픽처에서 제 1 레퍼런스 로케이션 및 RefPicList1 의 레퍼런스 픽처에서 제 2 레퍼런스 로케이션을 결정할 수도 있다. 비디오 인코더 (20) 는 그 후, 제 1 및 제 2 레퍼런스 로케이션들에 대응하는 샘플들에 적어도 부분적으로 기초하여, PU 에 대한 예측 블록들을 생성할 수도 있다. 또한, PU 를 인코딩하기 위해 양-예측을 사용하는 경우, 비디오 인코더 (20) 는 PU 의 샘플 블록과 제 1 레퍼런스 로케이션 간의 공간적 변위를 나타내는 제 1 모션 벡터 및 PU 의 예측 블록과 제 2 레퍼런스 로케이션 간의 공간적 변위를 나타내는 제 2 모션 벡터를 생성할 수도 있다.
비디오 인코더 (20) 가 CU 의 하나 이상의 PU들에 대한 예측 루마, Cb, 및 Cr 블록들을 생성한 후에, 비디오 인코더 (20) 는 CU 에 대한 루마 잔차 블록을 생성할 수도 있다. CU 의 루마 잔차 블록에서 각각의 샘플은, CU 의 예측 루마 블록들 중 하나에서의 루마 샘플과 CU 의 원래의 루마 코딩 블록에서의 대응하는 샘플 간의 차이를 나타낸다. 또한, 비디오 인코더 (20) 는 CU 에 대한 Cb 잔차 블록을 생성할 수도 있다. CU 의 Cb 잔차 블록에서 각각의 샘플은, CU 의 예측 Cb 블록들 중 하나에서의 Cb 샘플과 CU 의 원래의 Cb 코딩 블록에서의 대응하는 샘플 간의 차이를 나타낼 수도 있다. 비디오 인코더 (20) 는 또한, CU 에 대한 Cr 잔차 블록을 생성할 수도 있다. CU 의 Cr 잔차 블록에서 각각의 샘플은, CU 의 예측 Cr 블록들 중 하나에서의 Cr 샘플과 CU 의 원래의 Cr 코딩 블록에서의 대응하는 샘플 간의 차이를 나타낼 수도 있다.
또한, 비디오 인코더 (20) 는 쿼드-트리 파티셔닝을 사용하여, CU 의 루마, Cb, 및 Cr 잔차 블록들을 하나 이상의 루마, Cb, 및 Cr 변환 블록들로 분해할 수도 있다. 변환 블록은, 동일한 변환이 적용되는 샘플들의 직사각형 블록일 수도 있다. CU 의 변환 유닛 (TU) 은 루마 샘플들의 변환 블록, 크로마 샘플들의 2 개의 대응하는 변환 블록들, 및 변환 블록 샘플들을 변환하는데 사용된 신택스 구조들을 포함할 수도 있다. 모노크롬 픽처 또는 3 개의 별개의 컬러 평면들을 갖는 픽처에서, TU 는 단일의 변환 블록 및 변환 블록 샘플들을 변환하는데 사용된 신택스 구조들을 포함할 수도 있다. 따라서, CU 의 각각의 TU 는 루마 변환 블록, Cb 변환 블록, 및 Cr 변환 블록과 연관될 수도 있다. TU 와 연관된 루마 변환 블록은 CU 의 루마 잔차 블록의 서브-블록일 수도 있다. Cb 변환 블록은 CU 의 Cb 잔차 블록의 서브-블록일 수도 있다. Cr 변환 블록은 CU 의 Cr 잔차 블록의 서브-블록일 수도 있다.
비디오 인코더 (20) 는 TU 에 대한 루마 계수 블록을 생성하기 위해 TU 의 루마 변환 블록에 하나 이상의 변환들을 적용할 수도 있다. 계수 블록은 변환 계수들의 2-차원 어레이일 수도 있다. 변환 계수는 스칼라 양일 수도 있다. 비디오 인코더 (20) 는 TU 에 대한 Cb 계수 블록을 생성하기 위해 TU 의 Cb 변환 블록에 하나 이상의 변환들을 적용할 수도 있다. 비디오 인코더 (20) 는 TU 에 대한 Cr 계수 블록을 생성하기 위해 TU 의 Cr 변환 블록에 하나 이상의 변환들을 적용할 수도 있다.
계수 블록 (예를 들어, 루마 계수 블록, Cb 계수 블록 또는 Cr 계수 블록) 을 생성한 후에, 비디오 인코더 (20) 는 계수 블록을 양자화할 수도 있다. 양자화는 일반적으로, 변환 계수들이 양자화되어 변환 계수들을 표현하기 위해 사용된 데이터의 양을 가능한 감소시키는, 추가의 압축을 제공하는 프로세스를 지칭한다. 또한, 비디오 인코더 (20) 는 픽처의 CU들의 TU들의 변환 블록들을 복원하기 위해 변환 계수들을 역양자화하고 변환 계수들에 역변환을 적용할 수도 있다. 비디오 인코더 (20) 는 CU 의 TU들의 복원된 변환 블록들 및 CU 의 PU들의 예측 블록들을 사용하여, CU 의 코딩 블록들을 복원할 수도 있다. 픽처의 각각의 CU 의 코딩 블록들을 복원함으로써, 비디오 인코더 (20) 는 픽처를 복원할 수도 있다. 비디오 인코더 (20) 는 복원된 픽처들을 디코딩된 픽처 버퍼 (DPB) 에 저장할 수도 있다. 비디오 인코더 (20) 는 인터 예측 및 인트라 예측을 위해 DPB 내의 복원된 픽처들을 사용할 수도 있다.
비디오 인코더 (20) 가 계수 블록을 양자화한 후에, 비디오 인코더 (20) 는 양자화된 변환 계수들을 나타내는 신택스 엘리먼트들을 엔트로피 인코딩할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 양자화된 변환 계수들을 나타내는 신택스 엘리먼트들 상에 콘텍스트-적응 바이너리 산술 코딩 (CABAC) 을 수행할 수도 있다. 비디오 인코더 (20) 는 비트스트림으로 엔트로피-인코딩된 신택스 엘리먼트들을 출력할 수도 있다.
비디오 인코더 (20) 는 코딩된 픽처들 및 연관된 데이터의 표현을 형성하는 비트들의 시퀀스를 포함하는 비트스트림을 출력할 수도 있다. 비트스트림은 네트워크 추상 계층 (NAL) 유닛들의 시퀀스를 포함할 수도 있다. NAL 유닛들 각각은 NAL 유닛 헤더를 포함하고, 원시 (raw) 바이트 시퀀스 페이로드 (RBSP) 를 캡슐화한다. NAL 유닛 헤더는 NAL 유닛 유형 코드를 나타내는 신택스 엘리먼트를 포함할 수도 있다. NAL 유닛의 NAL 유닛 헤더에 의해 지정된 NAL 유닛 유형 코드는 NAL 유닛의 유형을 나타낸다. RBSP 는 NAL 유닛 내에 캡슐화되는 정수의 바이트들을 포함하는 신택스 구조일 수도 있다. 일부 경우들에서, RBSP 는 제로 비트들을 포함한다.
NAL 유닛들의 상이한 유형들은 RBSP들의 상이한 유형들을 캡슐화할 수도 있다. 예를 들어, NAL 유닛의 제 1 유형은 픽처 파라미터 세트 (PPS) 에 대한 RBSP 를 캡슐화할 수도 있고, NAL 유닛의 제 2 유형은 코딩된 슬라이스에 대한 RBSP 를 캡슐화할 수도 있고, NAL 유닛의 제 3 유형은 보충 강화 정보 (SEI) 에 대한 RBSP 를 캡슐화할 수도 있는 등등이다. PPS 는 0 이상의 전체 코딩된 픽처들에 적용하는 신택스 엘리먼트들을 포함할 수도 있는 신택스 구조이다. (SEI 메시지들 및 파라미터 세트들에 대한 RBSP들과 대조적으로) 비디오 코딩 데이터에 대한 RBSP들을 캡슐화하는 NAL 유닛들은 비디오 코딩 계층 (VCL) NAL 유닛들로서 지칭될 수도 있다. 코딩된 슬라이스를 캡슐화하는 NAL 유닛은 코딩된 슬라이스 NAL 유닛으로서 본원에 지칭될 수도 있다. 코딩된 슬라이스에 대한 RBSP 는 슬라이스 헤더 및 슬라이스 데이터를 포함할 수도 있다.
비디오 디코더 (30) 는 비트스트림을 수신할 수도 있다. 또한, 비디오 디코더 (30) 는 비트스트림을 파싱하여 비트스트림으로부터 신택스 엘리먼트들을 디코딩할 수도 있다. 비디오 디코더 (30) 는 비트스트림으로부터 디코딩된 신택스 엘리먼트들에 적어도 부분적으로 기초하여 비디오 데이터의 픽처들을 복원할 수도 있다. 비디오 데이터를 복원하기 위한 프로세스는 일반적으로, 비디오 인코더 (20) 에 의해 수행된 프로세스와 상반될 수도 있다. 예를 들어, 비디오 디코더 (30) 는 PU들의 모션 벡터들을 사용하여, 현재 CU 의 PU들에 대한 예측 블록들을 결정할 수도 있다. 비디오 디코더 (30) 는 PU들의 모션 벡터 또는 모션 벡터를 사용하여 PU들에 대한 예측 블록들을 생성할 수도 있다.
또한, 비디오 디코더 (30) 는 현재 CU 의 TU들과 연관된 계수 블록들을 역 양자화할 수도 있다. 비디오 디코더 (30) 는 계수 블록들 상에서 역 변환을 수행하여, 현재 CU 의 TU들과 연관된 변환 블록들을 복원할 수도 있다. 비디오 디코더 (30) 는 현재 CU 의 PU들에 대한 예측 샘플 블록들의 샘플들을 현재 CU 의 TU들의 변환 블록들의 대응하는 샘플들에 추가함으로써 현재 CU 의 코딩 블록들을 복원할 수도 있다. 픽처의 각각의 CU 에 대한 코딩 블록들을 복원함으로써, 비디오 디코더 (30) 는 픽처를 복원할 수도 있다. 비디오 디코더 (30) 는 다른 픽처들을 디코딩하는데 출력 및/또는 사용하기 위해 디코딩된 픽처 버퍼에 디코딩된 픽처들을 저장할 수도 있다.
차세대 비디오 애플리케이션들 및 서비스들은 HDR (High Dynamic Range) 및 WCG (Wide Colour Gamut) 를 갖는 캡처된 배경을 나타내는 비디오 데이터로 동작할 것으로 예상된다. 이용된 동적 범위 및 컬러 개머트의 파라미터들은 비디오 콘텐츠의 2 개의 독립적인 속성들이고, 디지털 텔레비전 및 멀티미디어 서비스들의 목적들을 위한 그 사양은 여러 국제 표준들에 의해 정의된다. 예를 들어, ITU-R Rec. 709 는 HDTV (high definition television) 에 대한 파라미터들, 예컨대 표준 동적 범위 (SDR) 및 표준 컬러 개머트를 정의하고, ITU-R Rec. 2020 은 UHDTV (ultra-high definition television) 파라미터들, 예컨대 HDR 및 WCG 를 지정한다. 또한, 다른 시스템들에서의 컬러 개머트 속성들 및 동적 범위를 지정하는 다른 표준 개발 기관 (SDOs) 의 문헌들이 존재한다. 예를 들어, P3 컬러 개머트는 SMPTE-231-2 (Society of Motion Picture and Television Engineers) 에서 정의되고, HDR 의 일부 파라미터들은 STMPTE-2084 에서 정의된다.
일부 예들에서, 동적 범위는 통상적으로, 비디오 신호 (예를 들어, 비디오 데이터) 의 최대 및 최소 밝기 간의 비로서 정의된다. 동적 범위는 'f-stop' 관점들에서 측정될 수도 있고, 여기서 하나의 f-stop 은 비디오 데이터의 동적 범위의 더블링에 대응한다. MPEG 의 정의에서, HDR 콘텐츠는 16 보다 많은 f-stop 들을 갖는 밝기 변동을 특성으로 하는 그러한 콘텐츠이다. 일부 용어들에서, 10 과 16 f-stop들 사이의 레벨들은 중간 동적 범위로서 간주되지만, 다른 정의들에서는 HDR 로 간주될 수도 있다. 일부 예들에서, HDR 비디오 콘텐츠는 표준 동적 범위를 갖는 전통적으로 사용된 비디오 콘텐츠 보다 더 높은 동적 범위를 갖는 임의의 비디오 콘텐츠일 수도 있다 (예를 들어, SDR 비디오 콘텐츠의 예는 ITU-R Rec. BT.709 에 의해 지정된 바와 같은 비디오 콘텐츠를 포함한다). 동시에, 인간 시각 시스템 (HVS) 은 더 큰 동적 범위를 감지할 수 있다. 그러나, HVS 는 소위 동시적 범위를 좁히도록 적응 메커니즘을 포함한다. 동시적 범위는, 예를 들어 HVS 가 적응 (예를 들어, 확장 동공들) 을 수행할 수 있는 능력으로 인해 즉각적인 시점에서 (전체 범위 대신에) 루미넌스 범위의 서브-범위를 감지하는 HVS 의 능력을 지칭할 수도 있다. 다르게 설명하면, HVS 는 소정 순간에 루미넌스 감지의 소정 범위를 가질 수도 있다. HVS 는 HVS 의 전체 루미넌스 범위 내에서 동시적 범위를 이동시키기 위한 적응을 수행할 수도 있다.
도 2 는 예시의 디스플레이 능력들 (예를 들어, SDR 디스플레이 및 HDR 디스플레이) 에 대한 HVS 의 예를 나타낸다. 예를 들어, 도 2 는 HDTV 비디오 데이터의 SDR, UHDTV 비디오 데이터의 예상 HDR 및 HVS 에 의해 감지 가능한 동적 범위에 대한 루미넌스 범위 (및 HVS 의 루미넌스 범위 내의 동시적 범위의 예) 를 나타낸다.
일부 예들에서, 비디오 애플리케이션들 및 서비스들은 ITU-R 권고 BT.709 (또한, Rec.709 또는 BT.709 로도 지칭됨) 에 의해 조절될 수도 있고, 통상적으로 10 미만의 f-stop들을 초래하는, 대략 0.1 내지 100 nit들의 밝기 (또는 루미넌스) 의 범위를 지원하는, SDR 를 제공할 수도 있다. nit 는 루미넌스에 대한 측정 단위이다. 예를 들어, 1 nit 는 제곱 미터 (m2) 당 1 칸델라 (cd) 와 동일하다. 차세대 비디오 애플리케이션들 및 서비스들은 최대 16 f-stop들의 동적 범위를 제공할 것으로 예상된다. 일부 초기 파라미터들은 SMPTE-2084 및 Rec. 2020 에서 지정되었다. 예를 들어, ST 2084 는 선형 공간과 비-선형 공간 사이에서 HDR 비디오 데이터를 컨버팅하기에 적합한 EOTF (electo optical transfer function) 를 정의한다. 다른 예로서, Rec. 2020 은 (SDR 비디오 데이터에 대해 광범위하게 사용된) Rec. 709 에 의해 설명된 프라이머리들 보다 더 많은 컬러 (예를 들어, 더 큰 컬러 개머트) 이도록 비디오 데이터를 표현하는데 사용될 수도 있는 컬러 프라이머리들을 정의한다.
HDR 외에 더 현실적인 비디오 경험을 위한 다른 양태는, 컬러 개머트에 의해 관습적으로 정의되는 컬러 디멘전이다. 도 3 은 HDTV 에 대한 SDR 컬러 개머트 (BT.709 컬러 레드, 그린 및 블루 컬러 프라이머리들에 기초한 트라이앵글 (100)), 및 UHDTV 에 대한 더 넓은 컬러 개머트 (BT.2020 컬러 레드, 그린 및 블루 컬러 프라이머리들에 기초한 트라이앵글 (102)) 를 나타내는 개념도이다. 도 3 은 또한, 천연 컬러들의 한계들을 나타내는, (설상 영역 (104) 으로 구분된) 소위 스펙트럼 궤적을 도시한다. 도 3 에 의해 예시된 바와 같이, BT.709 에서 BT.2020 컬러 프라이머리들로의 이동은 약 70% 이상의 컬러들을 UHDTV 서비스들에 제공하는 것을 목표로 한다. D65 는 소정의 사양들 (예를 들어, BT.709 및/또는 BT.2020 사양들) 에 대한 화이트 컬러를 지정한다.
컬러 개머트 사양들의 몇몇 예들은 표 1 에 도시된다.
Figure pct00002
표 1 : 컬러 개머트 파라미터들의 예
표 1 에서 알 수 있는 바와 같이, 컬러 개머트는 화이트 포인트의 x 및 y 값들에 의해, 그리고 프라이머리 컬러들 (예를 들어, 레드 (R), 그린 (G), 및 블루 (B)) 의 x 및 y 값들에 의해 정의될 수도 있다. x 및 y 값들은, CIE 1931 컬러 공간에 의해 정의된 바와 같이 컬러들의 색도 (x) 및 밝기 (y) 를 나타낸다. CIE 1931 컬러 공간은 (예를 들어, 파장의 관점에서) 순수 색들과 인간의 눈이 이러한 컬러들을 감지하는 방법 간의 연결들을 정의한다.
HDR/WCG 비디오 데이터는 통상적으로, 4:4:4 크로마 포맷 (또한, 4:4:4 크로마 서브-샘플링 포맷으로서 지칭됨) 및 매우 넓은 컬러 공간 (예를 들어, CIE XYZ 로도 지칭된 CIE 1931 XYZ) 을 갖고, 컴포넌트 당 매우 높은 정확도 (심지어 부동 소수점) 로 획득 및 저장된다. 이 표현은 높은 정확도를 목표로 하고, 거의 수학적으로 손실이 없다. 그러나, HDR/WCG 비디오 데이터를 저장하기 위한 이러한 포맷은 많은 리던던시를 포함할 수도 있고, 압축 목적들을 위해 최적이 아닐 수도 있다. HVS-기반의 가정들을 갖는 더 낮은 정확도 포맷은 통상적으로, 최신 비디오 애플리케이션들에 이용된다.
압축의 목적들을 위한 비디오 데이터 포맷 컨버전 프로세스의 일 예는 도 4 에 도시된 바와 같이, 3 개의 주요 프로세스들을 포함한다. 도 4 의 기법들은 비디오 사전-프로세서 (19) 에 의해 수행될 수도 있다. 비디오 사전-프로세서 (19) 는 비디오 소스 (18) 로부터 선형 RGB 데이터 (110) 를 수신하도록 구성될 수도 있다. 선형 RGB 데이터 (110) 는 HDR/WCG 비디오 데이터일 수도 있고, 부동 소수점 표현에 있을 수도 있다. 선형 RGB 데이터 (110) 는 동적 범위 압축을 위해 비-선형 전달 함수 (TF)(112) 를 사용하여 압축될 수도 있다. 비디오 사전-프로세서 (19) 는 임의의 수의 비-선형 전달 함수들 (예를 들어, SMPTE-2084) 을 사용하여 선형 RGB 데이터 (110) 를 압축하도록 선형 RGB 데이터 (110) 에 전달 함수 (112) 를 적용할 수도 있다. 일부 예들에서, 비디오 사전-프로세서 (19) 는 컬러 컨버전 프로세스 (114) 를 수행하여, TF (112) 프로세스에 의해 생성된 또는 다르게는 이에 의해 출력된 압축된 데이터를 비디오 인코더 (예를 들어, 비디오 인코더 (20)) 에 의한 압축에 더 적합한 타겟 컬러 공간 (예를 들어, YCbCr) 으로 컨버팅할 수도 있다. 타겟 컬러 공간은 더 압축한 또는 강건한 컬러 공간일 수도 있다. 컬러 컨버전 프로세스 (114) 에 의해 생성된 또는 다르게는 이에 의해 출력된 비디오 데이터는 그 후, 양자화 프로세스 (116) 를 사용하여 비디오 사전-프로세서 (19) 에 의해 양자화되어, 예를 들어 컬러 컨버전 프로세스 (114) 에 의해 생성 또는 다르게는 출력된 비디오 데이터를 부동 소수점 표현으로부터 정수 표현으로 컨버팅하여 (일부 예들에서, 컨버팅된 HDR 비디오 데이터를 지칭할 수도 있는) 프로세싱된 사전-인코딩된 비디오 데이터 (118) 를 생성할 수도 있다. 이 예에서, 프로세싱된 사전-인코딩된 비디오 데이터 (118) 는, 비디오 인코더 (예를 들어, HEVC 기법들을 적용하는 비디오 인코더 (20)) 에 의한 압축에 더 적합한 포맷일 수도 있는, 정수 표현에 있다. 도 4 에 도시된 프로세스들의 순서는 일 예로서 주어지고, 다른 애플리케이션들에서 변할 수도 있다. 예를 들어, 컬러 컨버전 프로세스는 TF 프로세스를 선행할 수도 있다. 또한, 추가의 프로세싱 (예를 들어, 공간 서브샘플링) 이 컬러 컴포넌트들에 적용될 수도 있다.
도 4 에 대하여 설명된 비디오 데이터 포맷 컨버전 프로세스의 역은 도 5 에 도시된 것과 같은 방식으로, 디코딩된 비디오 데이터 상에서 수행될 수도 있다. 도 5 의 기법들은 비디오 사후-프로세서 (31) 에 의해 수행될 수도 있다. 비디오 사후-프로세서 (31) 는 비디오 디코더 (30) 로부터 (일부 예들에서, HDR 비디오 데이터를 지칭할 수도 있는) 디코딩된 비디오 데이터 (120) 를 수신하도록 구성될 수도 있다. 예를 들어, 비디오 인코더 (20) 는 프로세싱된 사전-인코딩된 비디오 데이터 (118) 를 수신하고, 이 비디오 데이터를 인코딩하여 인코딩된 비디오 데이터를 생성할 수도 있다. 비디오 디코더 (30) 는 프로세싱된 사전-인코딩된 비디오 데이터 (118) 로부터 도출된 인코딩된 비디오 데이터를 수신 및 디코딩하여, 디코딩된 비디오 데이터 (120) 를 생성 또는 다르게는 출력할 수도 있다. 일부 예들에서, 디코딩된 비디오 데이터 (120) 는 (예를 들어, 무손실 비디오 압축으로 인해) 프로세싱된 사전-인코딩된 비디오 데이터 (118) 와 동일할 수도 있다. 다른 예들에서, 디코딩된 비디오 데이터 (120) 는 (예를 들어, 손실 비디오 압축 또는 데이터 손상으로 인해) 프로세싱된 사전-인코딩된 비디오 데이터 (118) 와 유사하지만 동일하지 않을 수도 있다.
디코딩된 비디오 데이터 (120) 는 비디오 사후-프로세서 (31) 에 의해 수행된 역 양자화 프로세스 (122) 에 의해 역 양자화될 수도 있다. 그 후, 역 컬러 컨버전 프로세스 (124) 는 비디오 사후-프로세서 (31) 에 의해 역 양자화된 디코딩된 비디오 데이터에 적용될 수도 있다. 역 컬러 컨버전 프로세스 (124) 는 컬러 컨버전 프로세스 (114) 의 역일 수도 있다. 예를 들어, 역 컬러 컨버전 프로세스 (124) 는 역 양자화된 디코딩된 비디오 데이터를 제 1 컬러 공간 (예를 들어, YCrCb) 으로부터 제 2 컬러 공간 (예를 들어, RGB) 으로 컨버팅할 수도 있다. 다음으로, 역 전달 함수 (126) 는 역 컬러 컨버팅된 디코딩된 비디오 데이터에 비디오 사후-프로세서 (31) 에 의해 적용되어, 일부 예들에서 선형 RGB 데이터 (128) 를 생성 또는 다르게는 출력하도록 전달 함수 (112) 에 의해 압축되었을 수도 있는 동적 범위를 다시 추가할 수도 있다. 일부 예들에서, 선형 RGB 데이터 (128) 는 (예를 들어, 무손실 비디오 압축으로 인해) 선형 RGB 데이터 (11) 와 동일할 수도 있다. 다른 예들에서, 선형 RGB 데이터 (128) 는 (예를 들어, 손실 비디오 압축 또는 데이터 손상으로 인해) 선형 RGB 데이터 (110) 와 유사하지만 동일하지 않을 수도 있다.
도 4 에 도시된 기법들이 이제 더 상세히 논의될 것이다. 일반적으로, 전달 함수는 비디오 사전-프로세서 (19) 에 의해 데이터 (예를 들어, HDR/WCG 비디오 데이터) 에 적용되어, 데이터의 동적 범위를 압축한다. 이러한 압축은 더 적은 비트들을 갖고 데이터가 표현되는 것을 허용한다. 일 예에서, 전달 함수 (112) 는 1-차원 (1D) 비-선형 함수일 수도 있고, (예를 들어, Rec.709 에서 SDR 에 대해 지정된 바와 같이) 엔드-사용자 디스플레이의 전기-광학 전달 함수 (EOTF) 의 역을 반영할 수도 있다. 다른 예에서, 전달 함수 (112) 는 밝기 변화들에 대한 HVS 감지 (예를 들어, HDR 에 대해 SMPTE-2084 에서 지정된 PQ 전달 함수) 를 근사화할 수도 있다. OETF 의 역 프로세스는, 코드 레벨을 루미넌스에 다시 맵핑하는, EOTF (electro-optical transfer function) 이다. 도 6 은 비-선형 전달 함수들의 여러 예들을 나타낸다. 전달 함수들은 컬러 공간에서 각각의 컬러 채널 (예를 들어, RGB 컬러 공간에서 R, G, 및 B 채널들) 에 별개로 적용될 수도 있다.
본 개시물의 맥락에서, 용어들 "신호 값" 또는 "컬러 값" 은 이미지 엘리먼트에 대한 특정 컬러 컴포넌트 (예컨대, R, G, B, 또는 Y) 의 값에 대응하는 루미넌스 레벨을 설명하는데 사용될 수도 있다. 신호 값은 통상적으로, 선형 광 레벨 (루미넌스 값) 을 나타낸다. 용어들 "코드 레벨" 또는 "디지털 코드 값" 은 이미지 신호 값의 디지털 표현을 지칭할 수도 있다. 통상적으로, 이러한 디지털 표현은 비-선형 신호 값을 나타낸다. EOTF 는 디스플레이 디바이스 (예를 들어, 디스플레이 디바이스 (32)) 에 제공된 비-선형 신호 값들과 디스플레이 디바이스에 의해 생성된 선형 컬러 값들 간의 관계를 나타낸다.
비디오 사전-프로세서 (19) 에 의해 수행된 (예를 들어, 도 4 에 도시된) 컬러 컨버전 프로세스 (114) 와 관련하여, RGB 데이터는 통상적으로, RGB 가 이미지 캡처 센서들에 의해 통상적으로 생성되는 데이터의 유형이기 때문에 입력 컬러 공간으로서 이용된다. 그러나, RGB 컬러 공간은 그 컴포넌트들 간에 높은 리던던시를 갖고, 압축 표현에 대해 최적이 아니다. 더 압축한 및 더 강건한 표현을 달성하기 위해, RGB 컴포넌트들은 압축에 더 적합한 더 부정확한 컬러 공간 (예를 들어, YCbCr) 으로 비디오 사전-프로세서 (19) 에 의해 컨버팅될 수도 있다. YCbCr 컬러 공간은, 예를 들어 상이한, 덜 상관된 컴포넌트들에서 루미넌스 (Y) 및 컬러 정보 (Cr 및 Cb) 의 형태로 밝기를 분리한다. 이 맥락에서, 강건한 표현은 제약된 비트레이트에서 압축되는 경우 더 높은 레벨들의 에러 내성 (error resilience) 을 특성으로 하는 컬러 공간을 지칭할 수도 있다.
컬러 컨버전 프로세스 (114)(또한, 컬러 변환 프로세스로서 지칭됨) 다음에, 타겟 컬러 공간에서 컬러 컨버팅된 비디오 데이터는 높은 비트-심도 (예를 들어, 부동 소수점 정확도) 에서 여전히 표현될 수도 있다. 비디오 사전-프로세서 (19) 에 의해 수행된 (예를 들어, 도 4 에 도시된) 양자화 프로세서 (116) 는 컬러 컨버팅된 비디오 데이터를 타겟 비트-심도로 양자화할 수도 있다. 일부 예들에서, PQ 전달 함수와 결합하여 10-12 비트들의 비트 심도는 JND (Just-Noticeable Difference) 하에서 왜곡을 갖는 16 f-stop들의 HDR 데이터를 제공하기에 충분할 수도 있다. 일반적으로, JND 는 (예를 들어, HVS 에 의해) 차이를 눈에 띄게 하기 위해 무언가 (예를 들어, 비디오 데이터) 가 변경되어야 하는 양이다. 10-비트 정확도로 표현된 (즉, 10 의 비트-심도를 갖는) 데이터는 비디오 코딩 표준들에 따라 비디오 인코더 (예를 들어, 비디오 인코더 (20)) 에 의해 추가로 코딩될 수 있다. 이 양자화는 손실 코딩의 엘리먼트이고, 컨버팅된 데이터에 도입된 부정확도의 소스이다.
본 개시물은 HEVC 표준에 의해 현재 정의된 바와 같은 CRI SEI 메시지로 문제들을 식별하고, 본원에 식별된 문제들을 처리하기 위한 예시의 기법들을 제시한다.
일 예시의 문제로서, 현재 HEVC 표준에 의해 정의된 바와 같은 SEI 메시지의 시맨틱들은, SEI 메시지에 포함된 정보가 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 에 의해 디코딩된 비디오 데이터의 프로세싱에 적용될 수 있는 경우에 관하여 명확하지 않다. 예를 들어, 현재 HEVC 표준은 시맨틱들에서, SEI 메시지가 디코딩된 비디오 데이터에 직접적으로 적용될 수도 있다는 것을 설명한다; 그러나, SEI 메시지가 하나 이상의 프로세스들의 애플리케이션의 결과로서 생성된 디코딩된 비디오 데이터에 적용될 수 있는지 여부에 관해서는 명확하지 않다. 예를 들어, 사전-LUT (206), 3x3 매트릭스 (208), 또는 사후-LUT (210) 중 하나 이상과 같은 CRI SEI 메시지의 프로세스들이, 양자화해제 (예를 들어, 역 양자화) 가 디코딩된 비디오 데이터 상에 수행 또는 다르게는 적용된 후에, 비- CRI SEI 메시지 프로세스 (예를 들어, 필터링 프로세스, 업샘플링 프로세스, 다운샘플링 프로세스, 역 양자화 프로세스, 디코딩된 비디오 데이터의 컴포넌트들을 표현하는데 사용된 컬러 프라이머리들의 변화, 또는 임의의 다른 비- CRI SEI 메시지 프로세스) 가 디코딩된 비디오 데이터 상에 수행 또는 다르게는 적용된 후에, 및/또는 컬러 공간 컨버전이 디코딩된 비디오 데이터 상에 수행 또는 다르게는 적용된 후에, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 에 의해 적용될 수 있다.
다른 예시의 문제로서, 현재 HEVC 표준은 신택스 엘리먼트 colour_remap_id 를 포함하는 것으로서 CRI SEI 메시지를 정의하여 SEI 메시지의 목적을 나타낸다. 그러나, 현재의 HEVC 표준에 의해 정의된 CRI SEI 메시지에 대한 시맨틱들은 상이한 ID들 (예를 들어, colour_remap_id 에 대한 상이한 값들) 을 갖는 동시적 또는 순차적 CRI SEI 메시지들의 프로세싱 및 동시적 또는 순차적 CRI SEI 메시지들이 동일한 디코딩된 비디오 데이터 (예를 들어, 동일한 디코딩된 픽처) 에 대해 시그널링되고/되거나 동일한 디코딩된 비디오 데이터 (예를 들어, 동일한 디코딩된 픽처) 에 적용될 수도 있는지 여부를 지정하지 않는다. 다수의 CRI SEI 메시지들이 포함되더라도, 현재의 HEVC 표준은, 이러한 다수의 CRI SEI 메시지들이 적용되는 순서에 관하여 명확하지 않다.
다른 예시의 문제로서, CRI SEI 메시지의 신택스는 현재의 HEVC 표준에 의해, 입력 데이터 비트 심도의 함수로서 지정된 비트 심도 도출을 갖는 고정된 길이의 코딩된 피봇 포인트들을 포함하는 것으로 정의된다. 피봇 포인트들을 코딩하는데 사용된 비트들의 수는 또한, CRI SEI 메시지에서 지정된 입력 또는 출력의 비트-심도가 작은 경우에도 종종 크다. 예를 들어, 현재의 HEVC 표준에 따르면, CRI SEI 메시지의 LUT들 (예를 들어, 사전-LUT 및 사후-LUTS, 각각) 의 입력 및 출력의 비트-심도가 10 비트이더라도, 피봇 포인트들은 16 비트 정확도로 시그널링된다. 이것은 불필요하게 비트들의 수를 필요한 것보다 60 % 이상 증가시키고, 이것은 CRI SEI 가 모든 프레임마다 시그널링되는 경우 더 큰 영향을 미친다. 피봇 포인트들을 나타내는데 사용된 실제 비트들의 수가 전체 비트스트림과 비교하여 많지 않더라도, 더 많은 피봇 포인트들이 CRI SEI 메시지마다 시그널링되고 이 정보가 1 보다 많은 컴포넌트에 대해 그리고 모든 프레임에 대해 시그널링되는 경우, 비트들의 수의 증가는 무시할 수 없다.
다른 예시의 문제로서, LUT 피봇 포인트들 시그널링의 결정된 정확도의 결과는, 현재의 HEVC 표준에 의해 정의된 바와 같이 LUT 구성 프로세스에 기초할 수도 있다. 10-비트 신호를 프로세싱하는 일부 CRI 애플리케이션들은 지정된 정확도를 최대한 이용하도록 선택할 수 있고, 이것은 각각의 신호 (예를 들어, 컬러) 컴포넌트 (예를 들어, Y, Cb, 및 Cr; 또는 R, G 및 B) 에 대한 65536 개의 엘리먼트들로 이루어진 16-비트 정확한 LUT 테이블들의 구성을 초래할 것이다. 본원에 설명된 기법들은 이들 문제들을 개선한다. 예를 들어, 비디오 인코더 (20), 비디오 사전-프로세서 (19), 비디오 디코더 (30), 및/또는 비디오 사후-프로세서 (31) 중 하나 이상은 본원에 식별된 하나 이상의 문제들을 처리하기 위해 본원에 설명된 하나 이상의 기법들을 수행하도록 구성된다. 예를 들어, 본원에 설명된 기법들은 (예를 들어, 리던던트 LUT들을 시그널링하지 않음으로써) 메모리 요건을 감소시키고, 연산 복잡도를 감소시키고, 전달된 HDR/WCG 의 품질을 보장하며, 및/또는 사양을 준수할 수도 있다. 일 예로서, 본 개시물은 CRI SEI 메시지들의 시맨틱들 및 신택스에서의 변화들을 도입하고, 이것은 비디오 인코더 (20), 비디오 사전-프로세서 (19), 비디오 디코더 (30), 및/또는 비디오 사후-프로세서 (31) 중 하나 이상이 비디오 데이터를 프로세싱하는 방법에 대한 변화들을 초래한다. 예를 들어, 본원에 설명된 CRI SEI 메시지들의 시맨틱들 및/또는 신택스에 대한 변화들은, 비트스트림에서 비디오 인코더 (20) 에 의해 정보가 시그널링되는 것을 변화시킬 수도 있다. 다른 예로서, 본원에 설명된 CRI SEI 메시지들의 시맨틱들 및/또는 신택스에 대한 변화들은, 비디오 디코더 (30) 에 의해 수신된 CRI SEI 메시지가 어느 정보를 포함하는지에 영향을 줄 수도 있다. 다른 예로서, 본원에 설명된 CRI SEI 메시지들의 시맨틱들 및/또는 신택스에 대한 변화들은, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 가 하나 이상의 CRI SEI 메시지들에 따르는 것과 같이, 디코딩된 비디오 데이터를 프로세싱하는 방법에 영향을 줄 수도 있다.
다른 예시의 문제로서, CRI SEI 메시지의 신택스는, 신호의 하나의 컴포넌트에 대해 사용되는 LUT (예를 들어, 사전-LUT 및/또는 사후-LUT) 의 피봇 포인트들이 그들이 명확하게 시그널링되지 않으면 다른 컴포넌트들에 직접 적용될 수 없도록 현재 설계된다. 예를 들어, 디코딩된 비디오 데이터 (예를 들어, 디코딩된 픽처) 의 Y 컴포넌트에 대해 사용되는 피봇 포인트들은 Cb 또는 Cr 컴포넌트들 중 어느 하나에 직접적으로 적용되지 않을 수 있다. 이것은 SEI 메시지를 시그널링하는데 필요한 비트들의 수를 증가시킨다.
본 개시물은 H.265/HEVC, H.264/AVC, BDA (Blu-ray Disc Association), MPEG, 또는 다른 것들과 같은 비디오 코딩 표준들에서 지정되는 또는 지정될 유사한 SEI 메시지 시그널링 및 프로세싱의 가능한 도출 또는 CRI SEI 메시지를 개선시키기 위한 여러 기법들을 기술한다. 전술된 문제들을 처리하기 위해, 본원에 설명된 하나 이상의 기법들은 비디오 인코더 (20), 비디오 사전-프로세서 (19), 비디오 디코더 (30), 및/또는 비디오 사후-프로세서 (31) 중 하나 이상에 의해 적용 또는 다르게는 수행될 수도 있다. 본원에 설명된 하나 이상의 기법들은 독립적으로 또는 임의의 조합으로 적용될 수도 있다.
일 예에서, 비디오 인코더 (20) 는 새로운 시맨틱들에 따라 하나 이상의 CRI SEI 메시지들을 시그널링하도록 구성될 수도 있고/있거나 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 새로운 시맨틱들에 따라 하나 이상의 CRI SEI 메시지들을 프로세싱하도록 구성될 수도 있다. 새로운 시맨틱들은, 예를 들어 비디오 인코더 (20) 로 하여금 본원에 설명된 바와 같은 하나 이상의 CRI SEI 메시지들을 시그널링하게 할 수도 있다. 새로운 시맨틱들은, 예를 들어 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 로 하여금 디코딩된 비디오 데이터 상에서 직접적으로 또는 디코딩된 비디오 데이터 상에서 간접적으로 CRI SEI 메시지에 대응하는 하나 이상의 프로세스들 (예를 들어, 사전-LUT (206), 3x3 매트릭스 (208), 및 사후-LUT (210)) 을 적용하게 할 수도 있다. 예를 들어, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 가 하나 이상의 CRI SEI 메시지들을 프로세싱하도록 구성될 수도 있는 새로운 시맨틱들에 따라, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 일부 프로세싱 후에 (즉, 디코딩된 비디오 데이터 상에서 간접적으로) 디코딩된 비디오 데이터 (예를 들어, 디코딩된 비디오 샘플들) 에 CRI SEI 메시지에 대응하는 하나 이상의 프로세스들을 적용하도록 구성될 수도 있다. 다른 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터에 직접적으로 CRI SEI 메시지에 대응하는 하나 이상의 프로세스들을 적용하도록 구성될 수도 있다. 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 colour_remap_id 의 값과 같은 신택스 엘리먼트의 값에 기초하여 디코딩된 비디오 데이터 상에서 직접적으로 또는 간접적으로 CRI SEI 메시지에 대응하는 하나 이상의 프로세스들을 적용할지 여부를 결정하도록 구성될 수도 있다.
이러한 기법의 예는 도 9 에 예시되고, 도 9 는 디코딩된 비디오 데이터의 직접적으로 적용되지 않는 CRI SEI 메시지에 대응하는 컬러 재맵핑 프로세스들의 예를 예시한다. 대신에, 도 9 의 예에 도시된 바와 같이, 양자화 프로세스 (116) 에 의해 생성된 양자화된 비디오 데이터는 예시된 순서로 컬러 재맵핑 프로세스들 (150) 에 의해 프로세싱될 수도 있다. 비디오 사전-프로세서 (19) 내에서 예시된 프로세스들 각각은 비디오 사전-프로세서 (19) 에 의해 수행될 수도 있다. 다른 예들에서, 비디오 사전-프로세서 (19) 내에 예시된 하나 이상의 프로세스들은 비디오 인코더 (20) 에 의해 수행될 수도 있다. 컬러 재맵핑 프로세스들 (150 및 156) 이 컬러 컨버전을 수행하는 도 9 의 예들에서, 비디오 사전-프로세서 (19) 및 비디오 사후-프로세서 (31) 는 컬러 컨버전 프로세스 (114) 및 역 컬러 컨버전 프로세스 (124) 를 수행하지 않도록 각각 구성될 수도 있다. 이러한 예들에서, 비디오 사전-프로세서 (19) 는 TF (112) 에 의해 생성 또는 다르게는 출력된 데이터 상에서 양자화 프로세스 (116) 를 수행하도록 구성될 수도 있다. 유사하게, 비디오 사후-프로세서 (31) 는 역 양자화 프로세스 (122) 에 의해 생성 또는 다르게는 출력된 데이터 상에서 역 전달 함수 (126) 를 적용하도록 구성될 수도 있다.
일부 예들에서, 비디오 사전-프로세서 (19) 내에서 예시된 하나 이상의 다른 프로세스들은 임의의 2 개의 컬러 재맵핑 프로세스들 (150)(예를 들어, 사전-LUT (200), 3x3 매트릭스 (202), 및 사후-LUT (204)) 의 적용 사이에서 비디오 데이터에 적용될 수도 있다. 컬러 재맵핑된 비디오 데이터 (151) 는 그 후, 다운샘플링 또는 업샘플링 프로세스와 같은 하나 이상의 비-컬러 재맵핑 프로세스들 (152) 에 의해 프로세싱될 수도 있다. 예를 들어, 컬러 재맵핑된 비디오 데이터 (151) 는 4:4:4 크로마 포맷에 따를 수도 있다. 하나 이상의 비-컬러 재맵핑된 프로세스들은, 프로세싱된 사전-인코딩된 비디오 데이터 (118) 가 이 예에서 4:2:0 크로마 포맷을 갖도록 다운샘플링 프로세스를 포함할 수도 있다.
유사하게, 디코더 측에서, 비디오 디코더 (30) 는 도 9 에 도시된 방식에서와 같이, (일부 예들에서, 디코딩된 HDR 비디오 데이터를 지칭할 수도 있는) 디코딩된 비디오 데이터 (120) 를 출력할 수도 있고, 이 데이터는 비디오 사후-프로세서 (31) 에 의해 그 후 프로세싱될 수도 있다. 비디오 사후-프로세서 (31) 내에서 예시된 프로세스들 각각은 비디오 사후-프로세서 (31) 에 의해 수행될 수도 있다. 일부 예들에서, 비디오 사후-프로세서 (31) 내에 예시된 하나 이상의 다른 프로세스들은 CRI SEI 메시지에 대응하는 임의의 2 개의 재맵핑 프로세스들 (156)(예를 들어, 사전-LUT (206), 3x3 매트릭스 (208), 및 사후-LUT (210)) 의 적용 사이에서 디코딩된 비디오 데이터에 적용될 수도 있다.
예를 들어, 비디오 사후-프로세서 (31) 는 비디오 디코더 (30) 로부터 디코딩된 비디오 데이터 (120) 를 수신하고, 디코딩된 비디오 데이터 상에서 하나 이상의 비-컬러 재맵핑 프로세스들 (154)(예를 들어, 필터링 프로세스, 다운샘플링 프로세스, 또는 업샘플링 프로세스) 을 수행할 수도 있다.
일부 예들에서, 하나 이상의 비-컬러 재맵핑 프로세스들 (154) 은 하나 이상의 비-컬러 재맵핑 프로세스들 (152) 의 역일 수도 있다. 예를 들어, 4:4:4 에서 4:2:0 으로의 다운샘플링을 수반하는 상기의 예에서, 비디오 디코더 (30) 에 의해 출력된 디코딩된 비디오 데이터 (120) 는 결과로서 4:2:0 크로마 포맷에 있을 수도 있다. 디코딩된 비디오 데이터 (120) 는 그 후, 비디오 사후-프로세서 (31) 에 의해 수행된 하나 이상의 비-컬러 재맵핑 프로세스들 (154) 에 의해 프로세싱될 수도 있다. 본원에 설명된 바와 같이, 비-컬러 재맵핑 프로세스 (154) 는, 예를 들어 필터링 프로세스, 업샘플링 프로세스, 다운샘플링 프로세스, 역 양자화 프로세스, 디코딩된 비디오 데이터의 컴포넌트들을 나타내는데 사용된 컬러 프라이머리들의 변화, 또는 임의의 다른 비-CRI SEI 메시지 프로세스를 포함할 수도 있다. 일 예에서, 비-컬러 재맵핑 프로세스 (154) 는 디코딩된 비디오 데이터 (120) 를 4:4:4 크로마 포맷으로 컨버팅하도록 역 다운샘플링 프로세스 (즉, 업샘플링 프로세스) 를 포함할 수도 있다. 예를 들어, 비-CRI 프로세싱된 디코딩된 비디오 데이터 (155) 는 4:4:4 크로마 포맷에 따를 수도 있다. 비디오 사후-프로세서 (31) 는 예시된 순서에서 비-CRI 프로세싱된 디코딩된 비디오 데이터 (155) 상에서 (하나 이상의 CRI SEI 메시지 프로세스들 (156) 로서 지칭될 수도 있는) 하나 이상의 컬러 재맵핑 프로세스들 (156) 을 수행하도록 구성될 수도 있다.
다른 예에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는, 1 보다 많은 CRI SEI 메시지가 동일한 디코딩된 비디오 데이터에 적용될 수도 있도록 새로운 시맨틱들에 따라 2 이상의 CRI SEI 메시지들을 프로세싱하도록 구성될 수도 있다. 2 이상의 CRI SEI 메시지들이 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 에 의해 동일한 디코딩된 비디오 데이터에 적용될 수도 있는 방법에 관한 상이한 예시의 방법들이 개시된다. 일 예에서, 비디오 인코더 (20) 는 동일한 비디오 데이터에 대응하는 (예를 들어, 동일한 픽처에 대응하는) 다수의 CRI SEI 메시지들을 시그널링하도록 구성될 수도 있고, 이러한 CRI SEI 메시지들 각각은 colour_remap_id 신택스 엘리먼트에 대응하는 상이한 값을 갖는다. 본원에서 사용된 바와 같이, colour_remap_id 는 CRI SEI 메시지에 대응하는 정보의 목적을 식별하는데 사용 (즉, CRI SEI 메시지에 대응하는 컬러 재맵핑 정보의 목적을 식별하는데 사용) 될 수도 있는 대응하는 값을 갖는 임의의 신택스 엘리먼트를 지칭할 수도 있다. 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 새로운 시맨틱들에 따라 동일한 비디오 데이터에 대응하는 각각의 CRI SEI 메시지에 대한 시그널링된 colour_remap_id 신택스 엘리먼트에 대응하는 값을 결정하도록 구성될 수도 있다. 예를 들어, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는, CRI SEI 메시지들이 디코딩된 비디오 데이터에 적용되는 순서를 결정하도록 구성될 수도 있다. 본원에 사용된 바와 같이, 콘텍스트가 다르게 가리키지 않으면, 디코딩된 비디오 데이터 상에 또는 다르게는 이에 프로세스를 적용하는 것에 대한 참조는 디코딩된 비디오 데이터 상에 또는 다르게는 이에 프로세스를 직접적으로 적용 또는 간접적으로 적용하는 것을 포함한다. 다르게 언급되지 않으면, 본원에서 디코딩된 비디오 데이터에 대한 참조는, 추가의 콘텍스트 없이, 디코딩된 비디오 데이터가, 예를 들어 비디오 디코더 (30) 에 의해 생성되었기 때문에 프로세싱되거나 또는 프로세싱되지 않았다는 것을 의미하지 않는다. 일 예로서, 디코딩된 비디오 데이터는 비디오 디코더 (30) 로부터 출력되는 것으로서 도시된 비디오 데이터를 정확하게 설명할 뿐만 아니라 비디오 사후-프로세서 (31) 에 의해 수행되는 것으로서 예시된 각각의 프로세스로부터 출력되는 것으로서 도시된 비디오 데이터를 정확하게 설명할 수도 있다. 도 9 에 도시된 프로세스들 간의 차이는, 디코딩된 비디오 데이터가 하나 이상의 프로세스들의 결과로서 변할 수도 있다는 것이다. 예를 들어, 역 양자화 프로세스 (122) 로 입력되는 것으로서 도시된 디코딩된 비디오 데이터는 하나 이상의 CRI SEI 메시지 프로세스들 (156) 에 의해 프로세싱되었던 디코딩된 비디오 데이터이다.
일부 예들에서, colour_remap_id 의 제 1 값은 colour_remap_id 의 제 2 값보다 작을 수도 있다. 예를 들어, 비디오 디코더 (30) 및/또는 비디오 사후 프로세서 (31) 는, 더 높은 값의 colour_remap_id 를 갖는 디코딩된 샘플들에 임의의 다른 CRI SEI 메시지를 적용하기 전에, 더 낮은 값의 colour_remap_id 를 갖는 CRI SEI 메시지가 디코딩된 비디오 데이터에 적용된다는 것을 결정하도록 구성될 수도 있다. 다른 예에서, colour_remap_id 의 제 1 값을 갖는 CRI SEI 메시지의 컬러 재맵핑 정보는 (예를 들어, 컬러 컴포넌트들의 구분적 선형 맵핑을 수행함으로써) 디코딩된 비디오 데이터의 컬러 컴포넌트들을 조정하기 위해 디코딩된 비디오 데이터의 컴포넌트들의 톤 맵핑을 수행하는데 사용될 수도 있고, colour_remap_id 의 제 2 값을 갖는 SEI 메시지의 컬러 재맵핑 정보는 디코딩된 샘플들을 제 1 동적 범위에서 제 2 동적 범위로 (예를 들어, HDR 에서 SDR 로 또는 그 반대로) 맵핑하는데 사용될 수도 있다.
다른 예에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는, CRI SEI 메시지에 대응하는 디코딩된 비디오 데이터의 포맷이 부동 소수점인 경우 CRI SEI 메시지의 입력 및 출력 비트-심도 (즉, CRI 프로세싱으로 들어가는 비디오 데이터의 비트-심도 및 CRI 프로세싱을 나가는 비디오 데이터의 비트-심도 각각) 에 의해 허용 가능한 최소 및 최대 값들을 해석하도록 구성될 수도 있다. 일부 예들에서, SEI 메시지의 입력 및 출력 비트-심도에 의해 허용 가능한 최소 및 최대 값들은 표준화된 부동 소수점 표현들 0 내지 1 로 각각 맵핑되도록 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 에 의해 해석될 수도 있다. 다른 예들에서, 부동 소수점에서 디코딩된 비디오 데이터의 허용 가능한 값 범위가 0 내지 1 인 경우, 각각의 입력 및 출력 비트-심도들에 의해 표현된 최소 및 최대 값들은 0 및 1 에 각각 맵핑될 수도 있다.
다른 예시의 기법은 피봇 포인트들에 관련된 신택스 엘리먼트들의 코딩 (즉, 인코딩 및/또는 디코딩) 에 관한 것이다. 예를 들어, 비디오 인코더 (20) 는, 디코딩된 비디오 데이터의 각각의 비트-심도에 의해 표시된 만큼 많은 비트들을 갖고, 피봇 포인트들 (예를 들어, pre_lut_coded_value[ ][ ], pre_lut_target_value[ ][ ], post_lut_coded_value[ ][ ], 및 post_lut_target_value[ ][ ]) 에 관련된 신택스 엘리먼트들을 시그널링하도록 구성될 수도 있다. 예를 들어, 비디오 인코더 (20) 가, (colour_remap_input_bit_depth 및 colour_remap_bit_depth 에 의해 표시된) 입력 및 출력 비트-심도가 각각 12 및 10 이라고 결정하면, pre_lut_coded_value[ ][ ] 는 12 비트들을 갖고 비디오 인코더 (20) 에 의해 코딩될 수도 있고; pre_lut_target_value[ ][ ], post_lut_coded_value[ ][ ], 및 post_lut_target_value[ ][ ] 은 10 비트들을 갖고 인코더 (20) 에 의해 코딩된다.
다른 예시의 기법에서, 비디오 인코더 (20) 는, 0-번째 컴포넌트 (예를 들어, 컬러 공간의 제 1 컬러 컴포넌트) 에 대해 표시된 사전 및 사후-LUT들이 다른 2 개의 컴포넌트들 (예를 들어, 컬러 공간의 제 2 및 제 3 컬러 컴포넌트들) 에 적용되는지 여부를 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 에 나타내기 위해 사전- 및 사후-LUT들에 대한 플래그를 시그널링하도록 구성될 수도 있다. 이 예에서, 플래그가, 3 개의 컴포넌트들 모두에 대해 적용된 사전- 및 사후-LUT들이 동일하다고 나타내는 경우, 단지 하나의 컴포넌트 (예를 들어, 하나의 컬러 채널) 의 사전- 및 사후-LUT 피봇 포인트들은 비디오 인코더 (20) 에 의해 시그널링되고, 다른 컴포넌트들 (예를 들어, 다른 컬러 채널들) 의 사전- 및 사후-LUT 피봇 포인트들은 0 번째 컴포넌트의 값들로부터 비디오 디코더 (30) 에 의해 추론될 수도 있다. 예를 들어, 비디오 디코더 (30) 는, 컬러 공간에서 제 1 컬러 채널에 대한 제 1 사전-LUT (예를 들어, 제 1 사전-LUT (206)) 에 대한 (또한, LUT 코드워드들로도 지칭될 수도 있는) 피봇 포인트들 및 제 1 사후-LUT (예를 들어, 제 1 사후-LUT (210)) 에 대한 피봇 포인트들을 비트스트림에서 수신하도록 구성될 수도 있다. 비디오 디코더 (30) 는 또한, 0 번째 컴포넌트 (즉, 3 개의 컬러 채널 예에서 제 1 컬러 채널) 에 대응하는 이 예에서의 제 1 사전-LUT 및 제 1 사후-LUT 가 제 2 및 제 3 컬러 채널들에 대한 사전- 및 사후-LUT들과 동일한지 여부를 나타내는 플래그에 대응하는 값을 비트스트림에서 수신할 수도 있다. 비트스트림으로부터 파싱된 플래그에 대응하는 값에 기초하여, 비디오 디코더 (30) 는, 제 2 및 제 3 컬러 채널들에 대한 사전- 및 사후-LUT들에 대응하는 피봇 포인트들이 비디오 인코더 (20) 에 의해 시그널링된 제 1 사전-LUT 및 제 1 사후-LUT 에 대해 각각 동일하다는 것을 추론 (예를 들어, 결정) 하도록 구성될 수도 있다. 따라서, 비디오 디코더 (30) 는 비디오 인코더 (20) 의 역을 수행하여 비디오 데이터를 디코딩하도록 구성될 수도 있다.
다른 예에서, 비디오 인코더 (20) 는 사전-LUT들에 대한 제 1 플래그를 시그널링하도록 구성될 수도 있고, 0 번째 컴포넌트의 것들로부터 LUT들의 간섭에 대해, 그리고 하나 보다 많은 컴포넌트에 대한 LUT들을 시그널링하지 않는 상기의 기법에 대해 사후-LUT들에 대한 제 2 플래그를 시그널링하도록 구성될 수도 있다. 이 예에서, (본원에서 사전-LUT 플래그로도 지칭된) 제 1 플래그는, 0 번째 컴포넌트 (예를 들어, 컬러 공간의 제 1 컬러 컴포넌트) 에 대해 시그널링된 사전-LUT 가 다른 2 개의 컴포넌트들 (예를 들어, 컬러 공간의 제 2 및 제 3 컬러 컴포넌트들) 에 적용될 사전-LUT들과 동일한지 여부를 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 에 나타내도록 비디오 인코더 (20) 에 의해 시그널링될 수도 있다. 이 예에서, 제 1 플래그가, 3 개의 컴포넌트들 모두에 대해 적용된 사전-LUT들이 동일하다고 나타내는 경우, 단지 하나의 컴포넌트 (예를 들어, 하나의 컬러 채널) 의 사전-LUT 피봇 포인트들은 비디오 인코더 (20) 에 의해 시그널링되고, 다른 컴포넌트들 (예를 들어, 다른 컬러 채널들) 의 사전-LUT 피봇 포인트들은 0 번째 컴포넌트의 값들로부터 비디오 디코더 (30) 에 의해 추론될 수도 있다.
유사하게, 이 예에서 (본원에서 사후-LUT 플래그로도 지칭된) 제 2 플래그는, 0 번째 컴포넌트 (예를 들어, 컬러 공간의 제 1 컬러 컴포넌트) 에 대해 시그널링된 사후-LUT 가 다른 2 개의 컴포넌트들 (예를 들어, 컬러 공간의 제 2 및 제 3 컬러 컴포넌트들) 에 적용될 사후-LUT들과 동일한지 여부를 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 에 나타내도록 비디오 인코더 (20) 에 의해 시그널링될 수도 있다. 이 예에서, 제 1 플래그가, 3 개의 컴포넌트들 모두에 대해 적용된 사후-LUT들이 동일하다고 나타내는 경우, 단지 하나의 컴포넌트 (예를 들어, 하나의 컬러 채널) 의 사후-LUT 피봇 포인트들은 비디오 인코더 (20) 에 의해 시그널링되고, 다른 컴포넌트들 (예를 들어, 다른 컬러 채널들) 의 사후-LUT 피봇 포인트들은 0 번째 컴포넌트의 값들로부터 비디오 디코더 (30) 에 의해 추론될 수도 있다.
예를 들어, 비디오 인코더 (20) 가, 모든 컬러 컴포넌트들 (예를 들어, RGB 컬러 공간에서 레드, 그린, 및 블루 채널들) 에 대해 적용된 사전-LUT들이 동일하다고 결정하는 경우, 비디오 인코더 (20) 는 이 사실을 나타내는 사전-LUT 플래그에 대응하는 값을 시그널링하도록 구성될 수도 있다. 사전-LUT 플래그에 대응하는 값이 비디오 인코더 (20) 에 의해 시그널링되어, 각각의 컬러 컴포넌트에 걸쳐 피봇 포인트 동일성을 나타내는 경우, 비디오 인코더 (20) 는 또한, 단지 하나의 컴포넌트의 사전-LUT 피봇 포인트들 만을 시그널링하도록 구성될 수도 있다. 비디오 디코더 (30) 는, 사전-LUT 플래그에 대응하는 값, 및 단일의 컬러 컴포넌트 (예를 들어, 0 번째 컴포넌트) 에 대응하는 단일의 사전-LUT 에 대응하는 피봇 포인트들을 비트스트림에서 수신하도록 구성될 수도 있다. 비트스트림으로부터 파싱된 사전-LUT 플래그에 대응하는 값에 기초하여, 비디오 디코더 (30) 는, 나머지 사전-LUT들 (예를 들어, 피봇 포인트들이 시그널링되지 않은 사전-LUT들) 에 대응하는 피봇 포인트들이 비디오 인코더 (20) 에 의해 시그널링되었던 단일의 사전-LUT 에 대응하는 피봇 포인트들과 동일하다고 추론 (예를 들어, 결정) 하도록 구성될 수도 있다. 비디오 인코더 (20) 및 비디오 디코더 (30) 는 사전-LUT 피봇 포인트들의 동일성 대신에 사후-LUT 피봇 포인트들의 동일성에 사후-LUT 플래그가 속하는 것을 제외하고, 사후-LUT 플래그에 대하여 유사한 방식으로 동작한다.
다른 예들에서, 비디오 인코더 (20) 는, (0 번째 컴포넌트와 대조적으로) 1 번째 컴포넌트에 대해 표시된 LUT (예를 들어, 사전-LUT 또는 사후-LUT) 가 2 번째 컴포넌트에 적용될 것과 동일한지 여부를 나타내기 위해 플래그를 시그널링하도록 구성될 수도 있다. 이 예에서, 제 1 및 제 2 컴포넌트들은 제 0 컴포넌트로부터 구별될 것이다 (즉, 컴포넌트들이 0 대신에 1 에서부터 넘버링되었으면, 이 예는 제 2 컴포넌트에 대해 표시된 LUT (예를 들어, 사전-LUT 또는 사후-LUT) 가 제 3 컴포넌트에 적용된 것과 동일한지 여부를 나타내도록 시그널링될 수도 있는 플래그를 포함하는 것으로서 설명될 것이다). 비디오 디코더 (30) 는 비트스트림에서 이 플래그에 대응하는 값을 수신하고, 제 2 컴포넌트에 대응하는 사전- 및 사후-LUT들에 대응하는 피봇 포인트들이 제 1 컬러 컴포넌트에 대한 사전- 및 사후-LUT들에 대해 각각 시그널링된 피봇 포인트들과 동일하다고 결정 (예를 들어, 추론) 할 수도 있다.
다른 예들에서, 비디오 인코더 (20) 는, 현재 픽처에 적용하는 LUT 컴포넌트들 (즉, 사전-LUT 컴포넌트들 및 사후-LUT 컴포넌트들) 이 출력 순서에서 이전의 픽처에 적용된 CRI SEI 메시지의 대응하는 컴포넌트로부터 추론된다는 것을 나타내기 위해 각각의 컬러 컴포넌트에 대한 플래그를 시그널링하도록 구성될 수도 있다. 예를 들어, 비디오 인코더 (20) 는 3 개의 컬러 컴포넌트 예에서 6 개의 플래그들을 시그널링하도록 구성될 수도 있다. 이러한 예에서, 제 1 플래그는, 제 1 컬러 컴포넌트에 대응하는 현재의 픽처에 적용하는 사전-LUT 가 출력 순서에서 이전의 픽처에 적용된 CRI SEI 메시지의 제 1 컬러 컴포넌트에 대응하는 사전-LUT 로부터 추론된다는 것을 나타낼 수도 있다. 제 2 플래그는, 제 1 컬러 컴포넌트에 대응하는 현재의 픽처에 적용하는 사후-LUT 가 출력 순서에서 이전의 픽처에 적용된 CRI SEI 메시지의 제 1 컬러 컴포넌트에 대응하는 사후-LUT 로부터 추론된다는 것을 나타낼 수도 있다. 제 3 플래그는, 제 2 컬러 컴포넌트에 대응하는 현재의 픽처에 적용하는 사전-LUT 가 출력 순서에서 이전의 픽처에 적용된 CRI SEI 메시지의 제 2 컬러 컴포넌트에 대응하는 사전-LUT 로부터 추론된다는 것을 나타낼 수도 있다. 제 4 플래그는, 제 2 컬러 컴포넌트에 대응하는 현재의 픽처에 적용하는 사후-LUT 가 출력 순서에서 이전의 픽처에 적용된 CRI SEI 메시지의 제 2 컬러 컴포넌트에 대응하는 사후-LUT 로부터 추론된다는 것을 나타낼 수도 있다. 제 5 플래그는, 제 3 컬러 컴포넌트에 대응하는 현재의 픽처에 적용하는 사전-LUT 가 출력 순서에서 이전의 픽처에 적용된 CRI SEI 메시지의 제 3 컬러 컴포넌트에 대응하는 사전-LUT 로부터 추론된다는 것을 나타낼 수도 있다. 제 6 플래그는, 제 3 컬러 컴포넌트에 대응하는 현재의 픽처에 적용하는 사후-LUT 가 출력 순서에서 이전의 픽처에 적용된 CRI SEI 메시지의 제 3 컬러 컴포넌트에 대응하는 사후-LUT 로부터 추론된다는 것을 나타낼 수도 있다.
다른 예시의 기법에서, colour_remap_id 에 대응하는 소정 값들이 리저브될 수도 있다. 예를 들어, colour_remap_id 에 대응하는 값들의 제 1 범위는 이전 버전과 호환 가능한 프로세싱 체인들 (예를 들어, SDR, 709 콘테이너 등) 및/또는 HDR 프로세싱 체인들을 인에이블할 수도 있다. 다른 예로서, colour_remap_id 의 소정 값 범위들은 이전 버전과 호환 가능한 솔루션들 (예를 들어, SDR 디스플레이 상의 디스플레이를 위해 콘텐츠를 프로세싱하는데 사용될 수 있는 컬러 재맵핑 정보), 또는 예를 들어 BT.709 컬러 콘테이너를 포함하는 다른 이전 버전과 호환 가능한 솔루션들에 대해 리저브될 수도 있다. 다른 예에서, colour_remap_id 의 소정 값 범위들은 HDR 프로세싱 체인에 대해 리저브될 수도 있고, 여기서 최종 출력은 HDR 디스플레이 상에서 디스플레이될 것이다. 다르게 설명하면, 상기의 예들은, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 가 디코딩된 비디오 데이터 상에서 필요한 프로세싱을 수행하여 디코딩된 비디오 데이터를 SDR 또는 HDR 디스플레이 호환 가능 콘텐츠로 컨버팅하는 것을 보장하도록 비디오 인코더 (20) 가 비디오 디코더 (30) 에 정보를 제공하게 한다. 소정의 리저브된 값들에 속하는 상기의 예들을 참조하면, 비디오 인코더 (20) 는 비트스트림에서 CRI SEI 메시지에서 colour_remap_id 신택스 엘리먼트에 대한 값을 시그널링하도록 구성될 수도 있다. 비디오 디코더 (30) 는 비트스트림을 수신하고, colour_remap_id 에 대한 값이, 예를 들어 CRI SEI 메시지가 이전 버전과 호환 가능한 프로세싱 체인 및/또는 HDR 프로세싱 체인에서 적용될 것이라는 것을 나타내는 리저브된 값에 대응한다고 결정하도록 구성될 수도 있다. 다른 예로서, 비디오 디코더 (30) 는 비트스트림을 수신하고, colour_remap_id 에 대한 값이, 예를 들어 디코딩 측 프로세싱 체인에서 사전-LUT (206), 3x3 매트릭스 (208), 및 사후-LUT (210) 각각이 적용될 경우를 나타내는 리저브된 값에 대응한다고 결정하도록 구성될 수도 있다. 예를 들어, colour_remap_id 에 대한 값은 도 10, 도 11, 도 12, 도 13, 또는 도 14 에 도시된 프로세싱 체인에 대응할 수도 있다.
다른 예시의 기법에서, 비디오 인코더 (20) 는 본원에 설명된 바와 같이 사전-LUT 및/또는 사후-LUT 에 대한 피봇 포인트들을 시그널링하도록 구성될 수도 있다. 일부 예들에서, 피봇 포인트들은 디코딩된 비디오 데이터에 대응하는 전체 입력 범위를 커버하지 않을 수도 있다. 이러한 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 사전- 및/또는 사후-LUT 에서 제 1 피봇 포인트보다 적은 컬러 컴포넌트 값을 갖는 임의의 디코딩된 비디오 데이터를 사전- 및/또는 사후-LUT 에서 제 1 피봇 포인트에 맵핑하도록 구성될 수도 있다. 유사하게, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 사전- 및/또는 사후-LUT 에서 최종 피봇 포인트보다 많은 컬러 컴포넌트 값을 갖는 임의의 디코딩된 비디오 데이터를 사전- 및/또는 사후-LUT 에서 제 1 피봇 포인트에 맵핑하도록 구성될 수도 있다.
본원에 설명된 하나 이상의 예시의 기법들은 또한, 현재의 HEVC 에 의해 정의된 CRI SEI 메시지의 신택스에 대한 변화들 및/또는 현재의 HEVC 표준에 의해 정의된 CRI SEI 메시지의 시맨틱들에 대한 변화들에 대해 설명될 수도 있다. 현재의 HEVC 표준에 대한 신택스 및 시맨틱들에 대한 추가들은 언더라인되고, 제거된 텍스트는 취소선 (strikethrough) 에 의해 표시된다.
CRI SEI 메시지의 신택스에 대한 변화들은 (언더라인된 텍스트로 표현된 추가들 및 취소선으로 표현된 삭제들로) 다음을 포함한다:
Figure pct00003
CRI SEI 메시지의 시맨틱들에 대한 변화들은 (언더라인된 텍스트로 표현된 추가들 및 취소선으로 표현된 삭제들로) 이하의 단락들 [0163]-[0180] 에 도시된다.
컬러 재맵핑 정보 SEI 메시지는 출력 픽처들의 복원된 컬러 샘플들의 재맵핑을 인에이블하도록 정보를 제공한다. 컬러 재맵핑 정보는, 이들이 루마 및 크로마 도메인 또는 RGB 도메인에 있는지 여부에 관계 없이 디코딩된 샘플 값들에 직접적으로 적용될 수도 있다. 컬러 재맵핑 정보는 또한, 하나 이상의 프로세스들의 적용 후에 디코딩된 샘플들에 적용될 수도 있다. 컬러 재맵핑 정보 SEI 메시지에서 사용된 컬러 재맵핑 모델은 (본원에서 신택스 엘리먼트들의 "사전" 세트에 의해 지정된) 각각의 컬러 컴포넌트에 적용된 제 1 구분적 선형 함수, 3 개의 컬러 컴포넌트들에 적용된 3-바이-3 매트릭스, 및 (본원에서 신택스 엘리먼트들의 "사후" 세트에 의해 지정된) 각각의 컬러 컴포넌트에 적용된 제 2 구분적 선형 함수로 이루어진다. 주석 1 - 디스플레이를 위한 출력 픽처들의 컬러 재맵핑은 선택적이고, 본 상세한 설명에서 지정된 디코딩 프로세스에 영향을 주지 않는다.
colour_remap_id 는 컬러 재맵핑 정보의 목적을 식별하는데 사용될 수도 있는 식별 넘버를 포함한다. colour_remap_id 의 값은 0 내지 232 - 2 를 포함하는 범위에 있을 것이다.
0 내지 255 및 512 내지 231 - 1 의 colour_remap_id 의 값들은 곱셈에 의해 결정된 바와 같이 사용될 수도 있다. 256 내지 511 을 포함하고, 231 내지 232 - 2 를 포함하는 colour_remap_id 의 값들은 ITU-T│ISO/IEC 에 의한 미래의 사용을 위해 리저브된다. 디코더들은 256 내지 511 를 포함하는 범위, 또는 231 내지 232-2 를 포함하는 범위에서 colour_remap_id 의 값을 포함하는 모든 컬러 재맵핑 정보 SEI 메시지들을 무시할 것이고, 비트스트림들은 이러한 값들은 포함하지 않을 것이다. 주석 2 - colour_remap_id 는 상이한 디스플레이 시나리오들에 적합한 상이한 컬러 재맵핑 프로세스들을 지원하는데 사용될 수 있다. 예를 들어, colour_remap_id 의 상이한 값들은 디스플레이들에 의해 지원된 상이한 재맵핑된 컬러 공간들에 대응할 수도 있다.
1 보다 많은 SEI 메시지가 현재의 픽처와 연관되고, 각각의 이러한 SEI 메시지가 상이한 값의 colour_remap_id 를 갖는 경우, 하나의 SEI 메시지의 컬러 재맵핑 정보는 다른 SEI 메시지의 컬러 재맵핑 정보의 적용 후에 적용된다. SEI 메시지들이 적용될 순서는 이 적용에 의해 결정될 수도 있다. 지정되지 않는 경우, 컬러 재맵핑 정보는 현재의 픽처와 연관된 컬러 재맵핑 정보 SEI 메시지들의 colour_remap_id 의 증가 순서로 적용된다.
colour_remap_matrix_coefficients 은, colour_remap_matrix_coefficients 이 CLVS 에 대해 사용된 컬러 공간 보다는, 재맵핑된 복원된 픽처의 컬러 공간을 지정하는 것을 제외하고, matrix_coeffs 신택스 엘리먼트에 대한 조항 E.3.1 에서 지정된 바와 동일한 시맨틱들을 갖는다. 존재하지 않는 경우, colour_remap_matrix_coefficients 의 값은 matrix_coeffs 의 값과 동일한 것으로 추정된다.
colour_remap_input_bit_depth 는 컬러 재맵핑 정보 SEI 메시지의 반복의 목적을 위해 연관된 픽처들의 RGB 컴포넌트들 또는 루마 및 크로마 컴포넌트들의 비트 심도를 지정한다. 임의의 컬러 재맵핑 정보 SEI 메시지들이 코딩된 루마 및 크로마 컴포넌트들의 비트 심도 또는 코딩된 RGB 컴포넌트들의 비트 심도와 동일하지 않은 colour_remap_input_bit_depth 의 값과 함께 존재하는 경우, SEI 메시지는 colour_remap_input_bit_depth 와 동일한 비트 심도를 갖는 컨버팅된 비디오로 코딩된 비디오를 컨버팅하도록 수행된 트랜스코딩 동작의 가설적인 결과를 지칭한다. 컬러 재맵핑 정보가 루마 또는 크로마 컴포넌트들, 또는 RGB 컴포넌트들에 적용되는 경우, 0 내지 1 의 범위의 부동 소수점 표현에서 SEI 메시지는 부동 소수점 표현을 양자화하여, 이것을 colour_remap_input_bit_depth 과 동일한 비트 심도를 갖는 표현으로 컨버팅한 가상의 결과를 지칭한다.
colour_remap_input_bit_depth 의 값은 8 내지 16 을 포함하는 범위에 있을 것이다. 0 내지 7 을 포함하고, 17 내지 255 를 포함하는 colour_remap_input_bit_depth 의 값들은 ITU-T│ISO/IEC 에 의한 미래의 사용을 위해 리저브된다. 디코더들은, 0 내지 7 을 포함하는 범위, 또는 17 내지 255 를 포함하는 범위에서 colour_remap_input_bit_depth 를 포함하는 모든 컬러 재맵핑 SEI 메시지들을 무시할 것이고, 비트스트림들은 이러한 값들을 포함하지 않을 것이다.
pre_lut_num_comps 은, 사전-검색 테이블에 대응하는 피봇 포인트들이 컬러 재맵핑 정보 메시지에서 명시적으로 시그널링되는 컴포넌트들의 수를 지정한다. pre_lut_num_comps 의 값은 0 내지 3 을 포함하는 범위에 있을 것이다.
colour_remap_bit_depth 는 컬러 재맵핑 정보 SEI 메시지에 의해 설명된 컬러 재맵핑 함수의 출력의 비트 심도를 지정한다.
colour_remap_bit_depth 의 값은 8 내지 16 을 포함하는 범위에 있을 것이다. 0 내지 7 을 포함하고, 17 내지 255 를 포함하는 범위에서 colour_remap_bit_depth 의 값들은 ITU-T│ISO/IEC 에 의한 미래의 사용을 위해 리저브된다. 디코더들은, 0 내지 7 을 포함하는, 또는 17 내지 255 를 포함하는 범위에서 colour_remap_bit_depth 의 값을 포함하는 모든 컬러 재맵핑 SEI 메시지들을 무시할 것이다.
pre_lut_num_val_minus1[ c ] plus 1 은 c-번째 컴포넌트에 대한 구분적 선형 재맵핑 함수에서 피봇 포인트들의 수를 지정하고, 여기서 0 과 동일한 c 는 루마 또는 G 컴포넌트를 지칭하고, 1 과 동일한 c 는 Cb 또는 B 컴포넌트를 지칭하며, 2 와 동일한 c 는 Cr 또는 R 컴포넌트를 지칭한다. pre_lut_num_val_minus1[ c ] 이 0 과 동일한 경우, c-번째 컴포넌트에 대해, 입력 값들의 디폴트 엔드 포인트들은 0 및 2colour_remap_input_bit_depth - 1 이고, 출력 값들의 대응하는 디폴트 엔드 포인트들은 0 및 2colour_remap_bit_depth - 1 이다. 이 사양의 이 버전을 따르는 비트스트림들에서, pre_lut_num_val_minus1[ c ] 의 값은 0 내지 32 를 포함하는 범위에 있을 것이다.
pre_lut_num_val_minus1[ c ] 가 1 내지 2 를 포함하는 범위에서 c 에 대한 컬러 재맵핑 정보 SEI 메시지에 존재하지 않는 경우, pre_lut_num_val_minus1[ c ] 의 값은 pre_lut_num_val_minus1[ c-1 ] 과 동일하게 설정된다.
pre_lut_coded_value[ c ][ i ] 는 c 번째 컴포넌트에 대한 i 번째 피봇 포인트의 값을 지정한다. pre_lut_coded_value[ c ][ i ] 를 표현하는데 사용된 비트들의 수는
Figure pct00004
이다.
pre_lut_coded_value[ c ][ i ] 이 1 내지 2 의 범위에서 c 에 대한 컬러 재맵핑 정보 SEI 메시지에 존재하지 않고, i 가 pre_lut_num_val_minus1[ c ] 이하인 경우, pre_lut_coded_value[ c ][ i ] 의 값은 pre_lut_coded_value[ c-1 ][ i ] 와 동일하게 설정된다.
pre_lut_target_value[ c ][ i ] 는 c 번째 컴포넌트에 대한 i 번째 피봇 포인트의 값을 지정한다. pre_lut_target_value[ c ][ i ] 를 표현하는데 사용된 비트들의 수는
Figure pct00005
이다.
pre_lut_target_value[ c ][ i ] 이 1 내지 2 의 범위에서 c 에 대한 컬러 재맵핑 정보 SEI 메시지에 존재하지 않고, i 가 pre_lut_num_val_minus1[ c ] 이하인 경우, pre_lut_target_value[ c ][ i ] 의 값은 pre_lut_target_value[ c-1 ][ i ] 와 동일하게 설정된다.
컴포넌트 c 의 입력 데이터의 범위가 minValue 내지 maxValue 를 포함하는 범위에 있는 경우, 그 후 다음을 적용한다:
- minValue 이 pre_lut_coded_value[ c ][ 0 ] 미만인 경우, minValue 내지 pre_lut_coded_value[ c ][ 0 ] - 1 를 포함하는 범위에 있는 모든 입력 값들은 pre_lut_target_value[ c ][ 0 ] 에 맵핑된다.
- maxValue 가 pre_lut_coded_value[ c ][ pre_lut_num_val_minus[ c ]] 보다 큰 경우, pre_lut_coded_value[ c ][ pre_lut_num_val_minus[ c ]] + 1 내지 maxValue 를 포함하는 범위에 있는 모든 입력 값들은 pre_lut_target_value[ c ][ pre_lut_num_val_minus[ c ]] 에 맵핑된다.
post_lut_num_val_minus[ ], post_lut_coded_value[ ][ ], 및 post_lut_target_value[ ][ ] 의 시맨틱들은 pre_lut_num_val_minus[ ], pre_lut_coded_value[ ][ ], 및 pre_lut_target_value[ ][ ] 와 각기 유사하고; post_lut_coded_value[ ][ ], 및 post_lut_target_value[ ][ ] 를 표현하는데 사용된 비트들의 수는 colour_remap_bit_depth 와 동일하다.
일 예에서, 입력 데이터의 범위는 표준 범위 (예를 들어, 루마에 대한 8-비트 콘텐츠에 대해 16-235, 크로마에 대한 8-비트 콘텐츠에 대해 16 내지 240) 또는 제한된 범위 (예를 들어, 루마 및 크로마 양자 모두에 대한 10 비트에 대해 4-1020) 일 수 있는 컴포넌트들의 허용된 값들을 지칭할 수도 있다. 다른 예들에서, 입력 피봇 포인트들에 의해 표시된 이들 포인트들의 범위 밖에 있는 입력 값들은 명시적으로 시그널링되는 디폴트 값들에 맵핑되거나 또는 일부 값에 고정될 수도 있다. 유사한 변화들이 사후-LUT 에 관련된 시맨틱들에 대해 이루어질 수도 있다.
단락 [0166] 에 도시된 시맨틱들 추가에 대한 대안으로서, 1 보다 많은 CRI SEI 메시지들의 적용은 다음과 같이 지정될 수도 있다: 1 보다 많은 CRI SEI 메시지로부터의 컬러 재맵핑 정보가 현재의 픽처에 적용될 수도 있는지 여부를 결정하는 추가적인 신택스 엘리먼트가 추가될 수도 있다. 이 추가적인 신택스 엘리먼트의 값이 1 인 경우, 1 보다 많은 CRI SEI 메시지의 컬러 재맵핑 정보는 현재의 픽처에 적용될 수도 있다. 신택스 엘리먼트의 값이 0 과 동일한 경우, 단지 하나의 SEI 메시지의 컬러 재맵핑 정보는 현재의 픽처에 적용될 수도 있다. 0 과 동일한 신택스 엘리먼트의 값을 갖는 현재의 픽처와 연관된 1 보다 많은 CRI SEI 메시지가 존재하는 경우, 그 후 최저 colour_remap_id 를 갖는 CRI SEI 메시지의 컬러 재맵핑 정보가 적용될 수도 있다. 다른 예에서, 현재의 픽처와 연관된 1 보다 많은 CRI SEI 메시지가 존재하는 경우, 최하위 colour_remap_id 를 갖는 CRI SEI 메시지의 컬러 재맵핑 정보가 적용될 수도 있다.
본 개시물은 본원에 설명된 하나 이상의 피처들을 적용하도록 사용될 수도 있는 구현 구성들의 여러 예들을 제공한다. 예를 들어, 여러 예시의 구성들은 본원에 설명된 컬러 재맵핑 정보가 사후-프로세싱 체인 (즉, 사후-디코딩 체인) 에서 사용될 수도 있는 방법의 예들을 도시하도록 예시된다. 본 개시물은 본원에 기술된 예들에 제한되지 않는다.
일부 예들에서, colour_remap_id 의 특정 값은 각각의 구성 (예를 들어, 도 9 내지 도 14 에 예시된 각각의 사후-프로세싱 체인 구성) 에 할당될 수도 있고, 이것은 디코더-엔드에서 요구된 프로세싱을 나타내는데 사용될 수 있다. 도 10 내지 도 14 에 예시된 예시의 사후-디코딩 구성들 각각에서, 3 개의 CRI 프로세스들 (예를 들어, 사전-LUT (206), 3x3 매트릭스 (208), 및 사후-LUT (210)) 이 도시된다. 언더라인된 CRI 프로세스들은, 값들이 자명하지 않을 수도 있다 (비-아이덴티티) 는 것을 나타내는 한편, 비-언더라인된 CRI 프로세스들은, CRI 프로세스가 예를 들어, 시그널링된 값들 대신에 디폴트 값들/아이덴티티 맵핑을 사용하여, 비디오 사후-프로세서 (31) 에 의해 효과적으로 사용 또는 다르게는 수행되지 않는다는 것을 나타낸다. 예를 들어, 비디오 인코더 (20) 는, 3x3 매트릭스 (208) 가 아이덴티티 매트릭스인 것을 나타내는 정보를 시그널링하도록 구성될 수도 있다. 다른 예로서, 비디오 인코더 (20) 는, 출력 값들이 입력 값들에 동일하도록 (즉, 입력 픽셀 값들이, 아이덴티티 맵핑으로서 지칭될 수도 있는 사전-LUT (206) 에 의해 맵핑될 때 변하지 않도록), 사전-LUT (206) 가 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조일 수도 있다는 것을 나타내는 정보를 시그널링하도록 구성될 수도 있다. 다른 예로서, 비디오 인코더 (20) 는, 출력 값들이 입력 값들에 동일하도록 (즉, 입력 픽셀 값들이, 아이덴티티 맵핑으로서 지칭될 수도 있는 사후-LUT (210) 에 의해 맵핑될 때 변하지 않도록), 사후-LUT (210) 는 입력 픽셀 값들을 출력 픽셀 값들에 맵핑하는 데이터 구조일 수도 있다는 것을 나타내는 정보를 시그널링하도록 구성될 수도 있다.
도 10 은 본 개시물의 하나 이상의 기법들에 따른 사후-디코딩 체인 구성의 일 예를 예시한다. 도 10 의 예에서, 단지 사전-LUT 가 비디오 사후-프로세서 (31) 에 의해 사용되어 디코딩된 비디오 데이터를 변경한다. 도 10 에 예시된 구성은, 예를 들어 YUV 도메인에서 루마 및/또는 크로마 컴포넌트들의 동적 범위 조정을 수행하는 경우 사용될 수도 있다.
도 11 은 본 개시물의 하나 이상의 기법들에 따른 사후-디코딩 체인 구성의 일 예를 예시한다. 도 11 은 컬러 재맵핑 정보에서 3x3 매트릭스 (202) 가 비디오 사후-프로세서 (31) 에 의해 사용되어 컬러 공간 컨버전 (예를 들어, YUV 픽셀 데이터에서 RGB 픽셀 데이터로) 을 수행할 수 있는 일 예시의 구성을 나타낸다.
도 12 는 본 개시물의 하나 이상의 기법들에 따른 사후-디코딩 체인 구성의 일 예를 예시한다. 도 12 는 컬러 재맵핑 정보의 3 개의 부분들 (예를 들어, 사전-LUT (206), 3x3 매트릭스 (208), 및 사후-LUT (210)) 이 컬러 공간 컨버전 (예를 들어, YUV 픽셀 데이터에서 RGB 픽셀 데이터로) 을 수행하도록 비디오 사후-프로세서 (31) 에 의해 사용될 수 있는 일 예시의 구성을 나타낸다.
도 13 은 본 개시물의 하나 이상의 기법들에 따른 사후-디코딩 체인 구성의 일 예를 예시한다. 도 13 은 CRI SEI 프로세스들이 연속적으로 (예를 들어, 도 10 내지 도 12 의 예들에 도시된 방식으로) 적용되기만 하지 않을 수도 있는 방법을 나타낸다. 도 13 은 또한, 본원에 도시된 바와 같이, 역 양자화 프로세스 (122) 에 의해 출력된 디코딩된 비디오 데이터가 부동 소수점 표현에 있을 수도 있고 역 양자화 프로세스 (122) 로의 데이터 입력이 고정 소수점 표현에 있을 수도 있기 때문에, CRI SEI 프로세스들 (이 예에서, 3x3 매트릭스 (208) 및 사후-LUT (210)) 이 부동 소수점 도메인에서 컴포넌트들 (예를 들어, 디코딩된 비디오 데이터) 상에서 적용될 수도 있다는 것을 나타낸다. 3x3 매트릭스 및 사후-LUT 동작들이 이에 따라 적용될 수 있도록, 내포된 양자화 및 양자화해제가 수행되어 부동으로부터 고정 소수점으로 그리고 고정으로부터 부동 소수점으로 각기 컨버팅할 수도 있다.
도 14 는 본 개시물의 하나 이상의 기법들에 따른 2 개의 사후-디코딩 체인 구성들의 일 예를 예시한다. 도 14 는 컬러 재맵핑 정보의 2 개의 세트들이 HDR 사후-프로세싱 체인 및 SDR 사후 프로세싱 체인에 적용하도록 시그널링될 수 있다는 것을 나타낸다. 다르게 설명하면, 도 14 는 비디오 인코더 (20) 가 동일한 비디오 데이터 (예를 들어, 픽처) 에 대응하는 복수의 CRI SEI 메시지들을 생성하도록 구성될 수도 있다는 것, 및 비디오 사후-프로세서 (31) 가 복수의 CRI SEI 메시지들의 적어도 제 1 CRI SEI 메시지에 대응하는 정보를 사용하여 HDR 체인에서 디코딩된 비디오 데이터를 프로세싱하고 복수의 CRI SEI 메시지들의 적어도 제 2 CRI SEI 메시지에 대응하는 정보를 사용하여 SDR 체인에서 디코딩된 비디오 데이터를 프로세싱하도록 구성될 수도 있다는 것을 예시한다. LUT들에 의해 전달된, 톤-맵핑 정보는 통상적으로, SDR 및 HDR 체인들에 대해 상이하다. 일부 예들에서, 컬러 재맵핑 정보는, 2 개의 상이한 ID들 (예를 들어, 제 1 colour_remap_id 및 제 2 colour_remap_id) 을 갖고, 2 개의 CRI SEI 메시지들에서 시그널링될 수도 있다. 하나의 ID 는 HDR 프로세싱을 나타낼 수도 있고, 다른 ID 는 SDR 프로세싱을 나타낼 수도 있다. 각각의 디코딩 체인 (SDR/HDR) 은 이에 대응하는 CRI SEI 메시지에 대응하는 각각의 컬러 재맵핑 정보를 사용할 수도 있다.
도 15 는 본 개시물의 기법들에 따른 예시의 프로세스를 예시하는 플로우차트이다. 도 15 의 기법들은 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 중 하나 이상에 의한 것을 포함하는, 도 1 의 목적지 디바이스 (14) 에 의해 실행될 수도 있다.
본 개시물의 일 예에서, 비디오 디코더 (30) 는 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신 (300) 하도록 구성될 수도 있다. 일부 예들에서, CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함할 수도 있다. 비디오 디코더 (30) 는 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성 (302) 하도록 구성될 수도 있다. 비디오 디코더 (30) 및/또는 비디오 사후 프로세서 (31) 는, 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하기 전에, CRI SEI 메시지에 대응하지 않는 프로세스를 디코딩된 비디오 데이터에 적용하여 프로세싱된 디코딩된 비디오 데이터를 생성 (304) 하도록 구성될 수도 있다.
일부 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 프로세싱된 디코딩된 비디오 데이터에 적용하도록 구성될 수도 있다. 이러한 예들에서, CRI SEI 메시지에 대응하지 않는 프로세스는 업샘플링 프로세스, 다운샘플링 프로세스; 컬러 공간 컨버전 프로세스; 역 양자화 프로세스; 또는 디코딩된 비디오 데이터의 컴포넌트들을 표현하는데 사용된 컬러 프라이머리들의 변화 중 적어도 하나를 포함할 수도 있다.
일부 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 가, CRI SEI 메시지의 부분으로서, (1) 디코딩된 비디오 데이터가 추가의 프로세싱으로 또는 추가의 프로세싱 없이 표준 동적 범위 (SDR) 디스플레이 또는 고 동적 범위 (HDR) 디스플레이에 의한 제시를 위해 호환 가능한지 여부, (2) CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들이, 하나 이상의 컬러 재맵핑 프로세스들의 각각의 컬러 재맵핑 프로세스에 각기 대응하는 입력 및 출력이 동일하도록 구성되는지 여부 (예를 들어, 제 1 컬러 재맵핑 프로세스에 대응하는 입력 및 출력이 동일한지 여부, 제 2 컬러 재맵핑 프로세스에 대응하는 입력 및 출력이 동일한지 여부 등), 또는 (3) CRI SEI 메시지에 대응하지 않는 프로세스가 CRI SEI 메시지에 대응하는 2 개의 컬러 재맵핑 프로세스들 간에 적용될지 여부를 나타내는 신택스 엘리먼트에 대응하는 값을 수신하도록 구성될 수도 있다. 일부 예들에서, 비디오 사후-프로세서 (31) 는 SDR 호환 가능 디코딩된 비디오 데이터를 HDR 호환 가능 디코딩된 비디오 데이터에 맵핑하도록 구성될 수도 있다. 다른 예들에서, 비디오 사후-프로세서 (31) 는 HDR 호환 가능 디코딩된 비디오 데이터를 SDR 호환 가능 디코딩된 비디오 데이터에 맵핑하도록 구성될 수도 있다.
일부 예들에서, CRI SEI 메시지는 제 1 CRI SEI 메시지일 수도 있고, 비디오 디코더 (30) 는 동일한 디코딩된 비디오 데이터에 양자 모두가 대응하는 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지를 비트스트림에서 수신하도록 구성될 수도 있다. 예를 들어, 디코딩된 비디오 데이터는 하나 이상의 디코딩된 픽처들 (예를 들어, 제 1 디코딩된 픽처, 제 2 디코딩된 픽처 등) 을 포함할 수도 있다. 이러한 예에서, 동일한 디코딩된 비디오 데이터는 동일한 디코딩된 픽처를 지칭할 수도 있다. 다른 예로서, 디코딩된 비디오 데이터는 제 1 디코딩된 비디오 데이터 (예를 들어, 제 1 디코딩된 픽처) 및 제 2 디코딩된 비디오 데이터 (제 2 디코딩된 픽처) 를 포함할 수도 있다. 이러한 예에서, 제 1 및 제 2 CRI SEI 메시지들 양자 모두는 제 1 디코딩된 비디오 데이터에 대응할 수도 있고, 또는 제 1 및 제 2 CRI SEI 메시지들 양자 모두는 제 2 디코딩된 비디오 데이터에 대응할 수도 있다.
제 2 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함할 수도 있다. 제 1 CRI SEI 메시지는 제 1 식별 값을 포함할 수도 있고, 제 2 CRI SEI 메시지는 제 2 식별 값을 포함할 수도 있다. 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는, 제 1 식별 값 및 제 2 식별 값에 기초하여, 제 1 CRI SEI 메시지 또는 제 2 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들을 프로세싱된 디코딩된 비디오 데이터에 적용할 순서를 결정하도록 구성될 수도 있다.
일부 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 제 1 식별 값 및 제 2 식별 값에 기초한 순서를 결정하는 것에 기초하여, (1) 프로세싱된 디코딩된 비디오 데이터에, 제 1 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 제 2 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들 각각을 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하는 것; 또는 (2) 프로세싱된 디코딩된 비디오 데이터에, 제 2 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 제 1 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들 각각을 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하는 것 중 적어도 하나를 수행하도록 구성될 수도 있다.
도 16 은 본 개시물의 기법들에 따른 예시의 프로세스를 예시하는 플로우차트이다. 도 16 의 기법들은 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 중 하나 이상에 의한 것을 포함하는, 도 1 의 목적지 디바이스 (14) 에 의해 실행될 수도 있다.
본 개시물의 일 예에서, 비디오 디코더 (30) 는 인코딩된 비디오 데이터 및 복수의 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지들을 포함하는 비트스트림을 수신 (400) 하도록 구성될 수도 있다. 복수의 CRI SEI 메시지들의 각각의 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함할 수도 있다 (예를 들어, 제 1 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함할 수도 있고, 제 2 CRI SEI 메시지는 제 1 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들과 상이한 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함할 수도 있다). 복수의 CRI SEI 메시지들은 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지를 포함할 수도 있다. 비디오 디코더 (30) 는 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성 (402) 하도록 구성될 수도 있다. 복수의 CRI SEI 메시지들은 동일한 디코딩된 비디오 데이터에 대응할 수도 있다. 예를 들어, 디코딩된 비디오 데이터는 하나 이상의 디코딩된 픽처들 (예를 들어, 제 1 디코딩된 픽처, 제 2 디코딩된 픽처 등) 을 포함할 수도 있다. 이러한 예에서, 동일한 디코딩된 비디오 데이터는 동일한 디코딩된 픽처를 지칭할 수도 있다. 다른 예로서, 디코딩된 비디오 데이터는 제 1 디코딩된 비디오 데이터 (예를 들어, 제 1 디코딩된 픽처) 및 제 2 디코딩된 비디오 데이터 (제 2 디코딩된 픽처) 를 포함할 수도 있다. 이러한 예에서, 제 1 및 제 2 CRI SEI 메시지들 양자 모두는 제 1 디코딩된 비디오 데이터에 대응할 수도 있고, 또는 제 1 및 제 2 CRI SEI 메시지들 양자 모두는 제 2 디코딩된 비디오 데이터에 대응할 수도 있다.
제 1 CRI SEI 메시지는 제 1 식별 값을 포함할 수도 있고, 제 2 CRI SEI 메시지는 제 2 식별 값을 포함할 수도 있다. 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는, 제 1 식별 값 및 제 2 식별 값에 기초하여, 제 1 CRI SEI 메시지 또는 제 2 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들을 프로세싱된 디코딩된 비디오 데이터에 적용할 순서를 결정하도록 구성될 수도 있다.
일부 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 제 1 식별 값 및 제 2 식별 값에 기초한 순서를 결정하는 것에 기초하여, (1) 프로세싱된 디코딩된 비디오 데이터에, 제 1 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 제 2 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들 각각을 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하는 것; 또는 (2) 프로세싱된 디코딩된 비디오 데이터에, 제 2 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 제 1 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들 각각을 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하는 것 중 적어도 하나를 수행하도록 구성될 수도 있다.
일부 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 가, 복수의 CRI SEI 메시지들의 각각의 CRI SEI 메시지의 부분으로서, (1) 프로세싱된 디코딩된 비디오 데이터가 추가의 프로세싱으로 또는 추가의 프로세싱 없이 표준 동적 범위 (SDR) 디스플레이 또는 고 동적 범위 (HDR) 디스플레이에 의한 제시를 위해 호환 가능한지 여부, (2) 각각의 CRI SEI 메시지에 대응하는 하나 이상의 컬러 재맵핑 프로세스들이, 하나 이상의 컬러 재맵핑 프로세스들의 각각의 컬러 재맵핑 프로세스에 각기 대응하는 입력 및 출력이 동일하도록 구성되는지 여부 (예를 들어, 각각의 CRI SEI 메시지의 제 1 컬러 재맵핑 프로세스에 대응하는 입력 및 출력이 동일한지 여부, 각각의 CRI SEI 메시지의 제 2 컬러 재맵핑 프로세스에 대응하는 입력 및 출력이 동일한지 여부 등), 또는 (3) 각각의 CRI SEI 메시지에 대응하지 않는 프로세스가 각각의 CRI SEI 메시지에 대응하는 2 개의 컬러 재맵핑 프로세스들 간에 적용될지 여부를 나타내는 신택스 엘리먼트에 대응하는 값을 수신하도록 구성될 수도 있다. 일부 예들에서, 비디오 사후-프로세서 (31) 는 SDR 호환 가능 디코딩된 비디오 데이터를 HDR 호환 가능 디코딩된 비디오 데이터에 맵핑하도록 구성될 수도 있다. 다른 예들에서, 비디오 사후-프로세서 (31) 는 HDR 호환 가능 디코딩된 비디오 데이터를 SDR 호환 가능 디코딩된 비디오 데이터에 맵핑하도록 구성될 수도 있다.
도 17 은 본 개시물의 기법들에 따른 예시의 프로세스를 예시하는 플로우차트이다. 도 17 의 기법들은 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 중 하나 이상에 의한 것을 포함하는, 도 1 의 목적지 디바이스 (14) 에 의해 실행될 수도 있다.
본 개시물의 일 예에서, 비디오 디코더 (30) 는 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신 (500) 하도록 구성될 수도 있다. CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보 및 신택스 엘리먼트에 대응하는 값을 포함할 수도 있다. 비디오 디코더 (30) 는 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성 (502) 하도록 구성될 수도 있다. 일부 예들에서, 신택스 엘리먼트에 대응하는 값은 (1) 디코딩된 비디오 데이터가 추가의 프로세싱으로 또는 추가의 프로세싱 없이 표준 동적 범위 (SDR) 디스플레이 또는 고 동적 범위 (HDR) 디스플레이에 의한 제시를 위해 호환 가능한지 여부, (2) CRI SEI 메시지에 대응하는 하나 이상의 재맵핑 프로세스들이, 하나 이상의 컬러 재맵핑 프로세스들의 각각의 컬러 재맵핑 프로세스에 각기 대응하는 입력 및 출력이 동일하도록 구성되는지 여부, 또는 (3) CRI SEI 메시지에 대응하지 않는 프로세스가 CRI SEI 메시지에 대응하는 2 개의 컬러 재맵핑 프로세스들 간에 적용될지 여부를 나타낸다.
일부 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는, 신택스 엘리먼트에 대응하는 값에 기초하여, 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하여 프로세싱된 디코딩된 비디오 데이터를 생성하도록 구성될 수도 있다.
본원에 설명된 다양한 예들은 임의의 조합으로 결합될 수도 있다. 유사하게, 2 이상의 피처들 (예를 들어, 스텝들, 컴포넌트들 등) 을 포함하는 본원에 설명된 임의의 예는 또한, 다른 예들에서 하나 또는 더 적은 피처들을 포함하는 것으로서 이해된다. 일 예로서, 도 15 의 예에 대하여, 비디오 디코더 (30) 및/또는 비디오 사후 프로세서 (31) 는, 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하기 전에, CRI SEI 메시지에 대응하지 않는 프로세스를 디코딩된 비디오 데이터에 적용하여 프로세싱된 디코딩된 비디오 데이터를 생성 (304) 하도록 구성될 수도 있다. 그러나, 다른 예들에서, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 디코딩된 비디오 데이터에 적용하도록 구성될 수도 있는 것으로 이해된다. 다르게 설명하면, 일부 예들에서 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 는 디코딩된 비디오 데이터 상에서 직접적으로 또는 간접적으로 하나 이상의 컬러 재맵핑 프로세스들을 수행하도록 구성될 수도 있다. 따라서 또한, 도 15 에 대하여 설명된 CRI SEI 메시지는 제 1 CRI SEI 메시지일 수도 있고, 비디오 디코더 (30) 는 동일한 디코딩된 비디오 데이터에 양자 모두가 대응하는 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지를 비트스트림에서 수신하도록 구성될 수도 있는 것으로 이해된다. 비디오 디코더 (30) 는, 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 가 디코딩된 비디오 데이터 상에서 직접적으로 하나 이상의 컬러 재맵핑 프로세스들을 수행하도록 구성될 수도 있는 예, 또는 비디오 디코더 (30) 및/또는 비디오 사후-프로세서 (31) 가 디코딩된 비디오 데이터 상에서 간접적으로 하나 이상의 컬러 재맵핑 프로세스들을 수행하도록 구성될 수도 있는 예에서 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지를 수신하도록 구성될 수도 있다.
예에 따라, 본원에 설명된 임의의 기법들의 소정의 액트들 또는 이벤트들은 상이한 시퀀스로 수행될 수도 있고, 추가, 머지될 수도 있고, 또는 함께 제거될 수도 있다 (예를 들어, 설명된 모든 액트들 또는 이벤트들이 기법의 실시에 반드시 필요한 것은 아님) 는 것으로 인식되어야 한다. 또한, 소정 예들에서, 액트들 또는 이벤트들은, 순차적이기 보다는 예를 들어 멀티-스레디드 프로세싱, 인터럽트 프로세싱, 또는 다중 프로세서들을 통해 동시에 수행될 수도 있다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어에서 구현되는 경우, 이 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장되거나 송신될 수도 있고, 하드웨어 기반 프로세싱 유닛에 의해 실행될 수도 있다. 컴퓨터 판독가능 매체는, 데이터 저장 매체와 같은 유형의 매체에 대응하는 컴퓨터 판독가능 저장 매체, 또는 예를 들어 통신 프로토콜에 따라, 한 곳에서 다른 곳으로 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 통신 매체를 포함할 수도 있다. 이 방식으로, 컴퓨터 판독가능 매체는 일반적으로 (1) 비일시적인 유형의 컴퓨터 판독가능 저장 매체 또는 (2) 신호 또는 반송파와 같은 통신 매체에 대응할 수도 있다. 데이터 저장 매체는 본 개시물에 설명된 기법들의 구현을 위한 명령들, 코드, 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독가능 매체를 포함할 수도 있다.
비제한적인 예로서, 이러한 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장 디바이스, 자기 디스크 저장 디바이스 또는 다른 자기 저장 디바이스, 플래시 메모리, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 저장하는데 사용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체라고 적절히 칭해진다. 예를 들어, 명령들이 동축 케이블, 광섬유 케이블, 연선, 디지털 가입자 회선 (DSL), 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되면, 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들이 매체의 정의 내에 포함된다. 그러나, 컴퓨터 판독가능 저장 매체 및 데이터 저장 매체는 접속들, 반송파들, 신호들, 또는 다른 일시적 매체를 포함하지 않고, 대신에 비일시적인, 유형의 저장 매체에 관련된다. 본원에서 사용된 디스크 (disk) 와 디스크 (disc) 는, 컴팩트 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크, 및 블루레이 디스크를 포함하며, 여기서 디스크 (disk)들은 통상 자기적으로 데이터를 재생하는 반면, 디스크 (disc)들은 레이저들을 이용하여 광학적으로 데이터를 재생한다. 상기의 조합들이 또한, 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령들은, 하나 이상의 디지털 신호 프로세서 (DSP)들, 범용 마이크로프로세서들, 주문형 집적 회로 (ASIC)들, 필드 프로그램 가능 로직 어레이 (FPGA)들, 또는 다른 등가의 집적 또는 이산 로직 회로부와 같은, 하나 이상의 프로세서들에 의해 실행될 수도 있다. 따라서, 본원에서 사용되는 바와 같은 용어 "프로세서" 는 상기의 구조 또는 본원에 설명된 기법들의 구현에 적합한 임의의 다른 구조 중 임의의 것을 지칭할 수도 있다. 또한, 일부 양태들에서, 본원에 설명된 기능성은 인코딩 및 디코딩을 위해 구성된 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공될 수도 있고, 또는 결합형 코덱에 통합될 수도 있다. 또한, 본 기법들은 하나 이상의 회로들 또는 로직 엘리먼트들에서 완전히 구현될 수 있다.
본 개시물의 기법들은 무선 핸드셋, 집적 회로 (IC) 또는 IC 들의 세트 (예를 들어, 칩 세트) 를 포함하는 광범위한 디바이스들 또는 장치들에서 구현될 수도 있다. 개시된 기법들을 수행하도록 구성된 디바이스들의 기능적 양태를 강조하기 위해 다양한 컴포넌트들, 모듈들, 또는 유닛들이 본 개시물에서 설명되지만, 반드시 상이한 하드웨어 유닛들에 의해 실현될 필요는 없다. 차라리, 전술된 바와 같이 다양한 유닛들은 적합한 소프트웨어 및/또는 펌웨어와 관련되어, 전술된 하나 이상의 프로세서들을 포함하는, 상호 동작적인 하드웨어 유닛들의 집합에 의해 제공되고 또는 코덱 하드웨어 유닛에 결합될 수도 있다.
다양한 예들이 설명되었다. 이들 및 다른 예들은 하기의 청구범위 내에 있다.

Claims (26)

  1. 비디오 데이터를 프로세싱하는 방법으로서,
    인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하는 단계로서, 상기 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 상기 비트스트림을 수신하는 단계;
    상기 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하는 단계; 및
    상기 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 상기 디코딩된 비디오 데이터에 적용하기 전에 상기 CRI SEI 메시지에 대응하지 않는 프로세스를 상기 디코딩된 비디오 데이터에 적용하여, 프로세싱된 디코딩된 비디오 데이터를 생성하는 단계를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  2. 제 1 항에 있어서,
    상기 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 상기 프로세싱된 디코딩된 비디오 데이터에 적용하는 단계를 더 포함하는, 비디오 데이터를 프로세싱하는 방법.
  3. 제 1 항에 있어서,
    상기 CRI SEI 메시지에 대응하지 않는 상기 프로세스는,
    업샘플링 프로세스;
    다운샘플링 프로세스;
    컬러 공간 컨버전 프로세스;
    역 양자화 프로세스; 또는
    상기 디코딩된 비디오 데이터의 컴포넌트들을 나타내는데 사용된 컬러 프라이머리들의 변화
    중 적어도 하나를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  4. 제 1 항에 있어서,
    상기 CRI SEI 메시지의 부분으로서,
    상기 프로세싱된 디코딩된 비디오 데이터가, 추가의 프로세싱으로 또는 추가의 프로세싱 없이, 표준 동적 범위 (SDR) 디스플레이 또는 고 동적 범위 (HDR) 디스플레이에 의한 제시를 위해 호환 가능한지 여부,
    상기 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들이, 상기 하나 이상의 컬러 재맵핑 프로세스들의 각각의 컬러 재맵핑 프로세스에 각기 대응하는 입력 및 출력이 동일하도록 구성되는지 여부, 또는
    상기 CRI SEI 메시지에 대응하지 않는 상기 프로세스가 상기 CRI SEI 메시지에 대응하는 2 개의 컬러 재맵핑 프로세스들 간에 적용될지 여부
    를 나타내는 신택스 엘리먼트에 대응하는 값을 수신하는 단계를 더 포함하는, 비디오 데이터를 프로세싱하는 방법.
  5. 제 1 항에 있어서,
    상기 CRI SEI 메시지는 제 1 CRI SEI 메시지이고,
    상기 방법은,
    상기 비트스트림에서, 상기 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지 양자 모두가 동일한 상기 디코딩된 비디오 데이터에 대응하는 상기 제 1 CRI SEI 메시지 및 상기 제 2 CRI SEI 메시지를 수신하는 단계를 더 포함하고,
    상기 제 2 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  6. 제 5 항에 있어서,
    상기 제 1 CRI SEI 메시지는 제 1 식별 값을 포함하고, 상기 제 2 CRI SEI 메시지는 제 2 식별 값을 포함하는, 비디오 데이터를 프로세싱하는 방법.
  7. 제 6 항에 있어서,
    상기 제 1 식별 값 및 상기 제 2 식별 값에 기초하여, 상기 제 1 CRI SEI 메시지 또는 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들을 상기 프로세싱된 디코딩된 비디오 데이터에 적용하는 순서를 결정하는 단계를 더 포함하는, 비디오 데이터를 프로세싱하는 방법.
  8. 제 7 항에 있어서,
    상기 프로세싱된 디코딩된 비디오 데이터에, 상기 제 1 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 상기 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하는 단계; 또는
    상기 프로세싱된 디코딩된 비디오 데이터에, 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 상기 제 1 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 상기 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하는 단계
    중 적어도 하나를 더 포함하는, 비디오 데이터를 프로세싱하는 방법.
  9. 비디오 데이터를 프로세싱하도록 구성된 디바이스로서,
    메모리; 및
    하나 이상의 프로세서들을 포함하고,
    상기 하나 이상의 프로세서들은,
    인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 프로세싱하는 것으로서, 상기 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 상기 비트스트림을 프로세싱하고;
    상기 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하고;
    상기 디코딩된 비디오 데이터를 상기 메모리에 저장하며;
    상기 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 상기 디코딩된 비디오 데이터에 적용하기 전에 상기 CRI SEI 메시지에 대응하지 않는 프로세스를 상기 디코딩된 비디오 데이터에 적용하여, 프로세싱된 디코딩된 비디오 데이터를 생성하도록
    구성되는, 비디오 데이터를 프로세싱하도록 구성된 디바이스.
  10. 제 9 항에 있어서,
    상기 하나 이상의 프로세서들은 또한,
    상기 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 상기 프로세싱된 디코딩된 비디오 데이터에 적용하도록 구성되는, 비디오 데이터를 프로세싱하도록 구성된 디바이스.
  11. 제 9 항에 있어서,
    상기 CRI SEI 메시지에 대응하지 않는 상기 프로세스는,
    업샘플링 프로세스;
    다운샘플링 프로세스;
    컬러 공간 컨버전 프로세스;
    역 양자화 프로세스; 또는
    상기 디코딩된 비디오 데이터의 컴포넌트들을 나타내는데 사용된 컬러 프라이머리들의 변화
    중 적어도 하나를 포함하는, 비디오 데이터를 프로세싱하도록 구성된 디바이스.
  12. 제 9 항에 있어서,
    상기 하나 이상의 프로세서들은 또한,
    상기 CRI SEI 메시지의 부분으로서,
    상기 프로세싱된 디코딩된 비디오 데이터가, 추가의 프로세싱으로 또는 추가의 프로세싱 없이, 표준 동적 범위 (SDR) 디스플레이 또는 고 동적 범위 (HDR) 디스플레이에 의한 제시를 위해 호환 가능한지 여부,
    상기 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들이, 상기 하나 이상의 컬러 재맵핑 프로세스들의 각각의 컬러 재맵핑 프로세스에 각기 대응하는 입력 및 출력이 동일하도록 구성되는지 여부, 또는
    상기 CRI SEI 메시지에 대응하지 않는 상기 프로세스가 상기 CRI SEI 메시지에 대응하는 2 개의 컬러 재맵핑 프로세스들 간에 적용될지 여부
    를 나타내는 신택스 엘리먼트에 대응하는 값을 수신하도록 구성되는, 비디오 데이터를 프로세싱하도록 구성된 디바이스.
  13. 제 9 항에 있어서,
    상기 CRI SEI 메시지는 제 1 CRI SEI 메시지이고,
    상기 하나 이상의 프로세서들은 또한,
    상기 비트스트림에서, 상기 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지 양자 모두가 동일한 상기 디코딩된 비디오 데이터에 대응하는 상기 제 1 CRI SEI 메시지 및 상기 제 2 CRI SEI 메시지를 수신하도록 구성되고,
    상기 제 2 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 비디오 데이터를 프로세싱하도록 구성된 디바이스.
  14. 제 13 항에 있어서,
    상기 제 1 CRI SEI 메시지는 제 1 식별 값을 포함하고, 상기 제 2 CRI SEI 메시지는 제 2 식별 값을 포함하는, 비디오 데이터를 프로세싱하도록 구성된 디바이스.
  15. 제 14 항에 있어서,
    상기 하나 이상의 프로세서들은 또한,
    상기 제 1 식별 값 및 상기 제 2 식별 값에 기초하여, 상기 제 1 CRI SEI 메시지 또는 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들을 상기 프로세싱된 디코딩된 비디오 데이터에 적용하는 순서를 결정하도록 구성되는, 비디오 데이터를 프로세싱하도록 구성된 디바이스.
  16. 제 15 항에 있어서,
    상기 하나 이상의 프로세서들은 또한,
    상기 프로세싱된 디코딩된 비디오 데이터에, 상기 제 1 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 상기 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하는 것; 또는
    상기 프로세싱된 디코딩된 비디오 데이터에, 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 상기 제 1 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 상기 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하는 것
    중 적어도 하나를 수행하도록 구성되는, 비디오 데이터를 프로세싱하도록 구성된 디바이스.
  17. 인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하기 위한 수단으로서, 상기 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 상기 비트스트림을 수신하기 위한 수단;
    상기 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하기 위한 수단; 및
    상기 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 상기 디코딩된 비디오 데이터에 적용하기 전에 상기 CRI SEI 메시지에 대응하지 않는 프로세스를 상기 디코딩된 비디오 데이터에 적용하여, 프로세싱된 디코딩된 비디오 데이터를 생성하기 위한 수단을 포함하는, 장치.
  18. 제 17 항에 있어서,
    상기 하나 이상의 컬러 재맵핑 프로세스들 중 적어도 하나를 상기 프로세싱된 디코딩된 비디오 데이터에 적용하기 위한 수단을 더 포함하는, 장치.
  19. 제 17 항에 있어서,
    상기 CRI SEI 메시지에 대응하지 않는 상기 프로세스는,
    업샘플링 프로세스;
    다운샘플링 프로세스;
    컬러 공간 컨버전 프로세스;
    역 양자화 프로세스; 또는
    상기 디코딩된 비디오 데이터의 컴포넌트들을 나타내는데 사용된 컬러 프라이머리들의 변화
    중 적어도 하나를 포함하는, 장치.
  20. 제 17 항에 있어서,
    상기 CRI SEI 메시지의 부분으로서,
    상기 프로세싱된 디코딩된 비디오 데이터가, 추가의 프로세싱으로 또는 추가의 프로세싱 없이, 표준 동적 범위 (SDR) 디스플레이 또는 고 동적 범위 (HDR) 디스플레이에 의한 제시를 위해 호환 가능한지 여부,
    상기 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들이, 상기 하나 이상의 컬러 재맵핑 프로세스들의 각각의 컬러 재맵핑 프로세스에 각기 대응하는 입력 및 출력이 동일하도록 구성되는지 여부, 또는
    상기 CRI SEI 메시지에 대응하지 않는 상기 프로세스가 상기 CRI SEI 메시지에 대응하는 2 개의 컬러 재맵핑 프로세스들 간에 적용될지 여부
    를 나타내는 신택스 엘리먼트에 대응하는 값을 수신하기 위한 수단을 더 포함하는, 장치.
  21. 제 17 항에 있어서,
    상기 CRI SEI 메시지는 제 1 CRI SEI 메시지이고,
    상기 장치는,
    상기 비트스트림에서, 상기 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지 양자 모두가 동일한 상기 디코딩된 비디오 데이터에 대응하는 상기 제 1 CRI SEI 메시지 및 상기 제 2 CRI SEI 메시지를 수신하기 위한 수단을 더 포함하고,
    상기 제 2 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하는, 장치.
  22. 제 21 항에 있어서,
    상기 제 1 CRI SEI 메시지는 제 1 식별 값을 포함하고, 상기 제 2 CRI SEI 메시지는 제 2 식별 값을 포함하는, 장치.
  23. 제 22 항에 있어서,
    상기 제 1 식별 값 및 상기 제 2 식별 값에 기초하여, 상기 제 1 CRI SEI 메시지 또는 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들을 상기 프로세싱된 디코딩된 비디오 데이터에 적용하는 순서를 결정하기 위한 수단을 더 포함하는, 장치.
  24. 제 23 항에 있어서,
    상기 프로세싱된 디코딩된 비디오 데이터에, 상기 제 1 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 상기 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하기 위한 수단; 또는
    상기 프로세싱된 디코딩된 비디오 데이터에, 상기 제 2 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 적용하여 컬러 재맵핑된 디코딩된 비디오 데이터를 생성하고, 그 후 상기 제 1 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들 각각을 상기 컬러 재맵핑된 디코딩된 비디오 데이터에 적용하기 위한 수단
    중 적어도 하나를 더 포함하는, 장치.
  25. 비디오 데이터를 프로세싱하는 방법으로서,
    인코딩된 비디오 데이터 및 복수의 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지들을 포함하는 비트스트림을 수신하는 단계로서, 상기 복수의 CRI SEI 메시지들의 각각의 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보를 포함하고, 상기 복수의 CRI SEI 메시지들은 제 1 CRI SEI 메시지 및 제 2 CRI SEI 메시지를 포함하는, 상기 비트스트림을 수신하는 단계; 및
    상기 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하는 단계로서, 복수의 CRI SEI 메시지들은 동일한 상기 디코딩된 비디오 데이터에 대응하는, 상기 디코딩된 비디오 데이터를 생성하는 단계를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  26. 비디오 데이터를 프로세싱하는 방법으로서,
    인코딩된 비디오 데이터 및 컬러 재맵핑 정보 (CRI) 보충 강화 정보 (SEI) 메시지를 포함하는 비트스트림을 수신하는 단계로서, 상기 CRI SEI 메시지는 하나 이상의 컬러 재맵핑 프로세스들에 대응하는 정보 및 신택스 엘리먼트에 대응하는 값을 포함하는, 상기 비트스트림을 수신하는 단계; 및
    상기 인코딩된 비디오 데이터를 디코딩하여 디코딩된 비디오 데이터를 생성하는 단계를 포함하고,
    상기 신택스 엘리먼트에 대응하는 값은,
    상기 디코딩된 비디오 데이터가, 추가의 프로세싱으로 또는 추가의 프로세싱 없이, 표준 동적 범위 (SDR) 디스플레이 또는 고 동적 범위 (HDR) 디스플레이에 의한 제시를 위해 호환 가능한지 여부,
    상기 CRI SEI 메시지에 대응하는 상기 하나 이상의 컬러 재맵핑 프로세스들이, 상기 하나 이상의 컬러 재맵핑 프로세스들의 각각의 컬러 재맵핑 프로세스에 각기 대응하는 입력 및 출력이 동일하도록 구성되는지 여부, 또는
    상기 CRI SEI 메시지에 대응하지 않는 프로세스가 상기 CRI SEI 메시지에 대응하는 2 개의 컬러 재맵핑 프로세스들 간에 적용될지 여부를 나타내는, 비디오 데이터를 프로세싱하는 방법.
KR1020187009939A 2015-09-09 2016-09-09 개선된 컬러 재맵핑 정보 보충 강화 정보 메시지 프로세싱 KR102158418B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562216254P 2015-09-09 2015-09-09
US62/216,254 2015-09-09
US15/260,148 US10536695B2 (en) 2015-09-09 2016-09-08 Colour remapping information supplemental enhancement information message processing
US15/260,148 2016-09-08
PCT/US2016/050941 WO2017044740A2 (en) 2015-09-09 2016-09-09 Improved colour remapping information supplemental enhancement information message processing

Publications (2)

Publication Number Publication Date
KR20180051594A true KR20180051594A (ko) 2018-05-16
KR102158418B1 KR102158418B1 (ko) 2020-09-22

Family

ID=58190856

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187009939A KR102158418B1 (ko) 2015-09-09 2016-09-09 개선된 컬러 재맵핑 정보 보충 강화 정보 메시지 프로세싱

Country Status (8)

Country Link
US (1) US10536695B2 (ko)
EP (1) EP3348063A2 (ko)
JP (1) JP6808725B2 (ko)
KR (1) KR102158418B1 (ko)
CN (1) CN107950028B (ko)
AU (1) AU2016320902B2 (ko)
BR (1) BR112018004504B1 (ko)
WO (1) WO2017044740A2 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105580339B (zh) 2013-07-25 2019-04-09 康维达无线有限责任公司 用于端到端m2m服务层会话的方法与设备
EP3562135A1 (en) 2014-06-10 2019-10-30 Panasonic Intellectual Property Management Co., Ltd. Display system, display method, and display apparatus
US9819956B2 (en) * 2015-09-23 2017-11-14 Arris Enterprises Llc High dynamic range adaptation operations at a video decoder
WO2017059415A1 (en) * 2015-10-02 2017-04-06 Vid Scale, Inc. Color correction with a lookup table
US9883183B2 (en) * 2015-11-23 2018-01-30 Qualcomm Incorporated Determining neighborhood video attribute values for video data
EP3456058A1 (en) * 2016-05-13 2019-03-20 VID SCALE, Inc. Bit depth remapping based on viewing parameters
EP3482566B1 (en) 2016-07-08 2024-02-28 InterDigital Madison Patent Holdings, SAS Systems and methods for region-of-interest tone remapping
US10932276B2 (en) 2016-11-03 2021-02-23 Convida Wireless, Llc Frame structure in NR
US11765406B2 (en) 2017-02-17 2023-09-19 Interdigital Madison Patent Holdings, Sas Systems and methods for selective object-of-interest zooming in streaming video
CN110383848B (zh) 2017-03-07 2022-05-06 交互数字麦迪逊专利控股公司 用于多设备呈现的定制视频流式传输
US10574959B2 (en) * 2017-07-05 2020-02-25 Qualcomm Incorporated Color remapping for non-4:4:4 format video content
US10148907B1 (en) * 2017-10-27 2018-12-04 Avago Technologies International Sales Pte. Limited System and method of luminance processing in high dynamic range and standard dynamic range conversion
CN108769804B (zh) * 2018-04-25 2020-12-15 杭州当虹科技股份有限公司 一种高动态范围视频的格式转换方法
US11871451B2 (en) 2018-09-27 2024-01-09 Interdigital Patent Holdings, Inc. Sub-band operations in unlicensed spectrums of new radio
US11523118B2 (en) * 2018-10-09 2022-12-06 V-Nova International Limited Dynamic range support within a multi-layer hierarchical coding scheme
EP3672267A1 (en) 2018-12-20 2020-06-24 InterDigital VC Holdings, Inc. Methods for processing audio and/or video contents and corresponding signal, devices, electronic assembly, system, computer readable program products and computer readable storage media
SG11202105839RA (en) * 2019-01-10 2021-07-29 Guangdong Oppo Mobile Telecommunications Corp Ltd Method for picture decoding, decoder, and computer storage medium
US11666823B1 (en) 2021-06-29 2023-06-06 Amazon Technologies, Inc. Video game streaming with dynamic range conversion
US11612812B1 (en) * 2021-06-29 2023-03-28 Amazon Technologies, Inc. Video game streaming with dynamic range conversion
US11617946B1 (en) 2021-06-29 2023-04-04 Amazon Technologies, Inc. Video game streaming with dynamic range conversion
CN114222187B (zh) * 2021-08-12 2023-08-29 荣耀终端有限公司 视频编辑方法和电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3059937A1 (en) * 2015-02-20 2016-08-24 Thomson Licensing Method and apparatus for encoding color mapping information and processing pictures based on color mapping information

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100049865A1 (en) 2008-04-16 2010-02-25 Nokia Corporation Decoding Order Recovery in Session Multiplexing
US9386307B2 (en) * 2012-06-14 2016-07-05 Qualcomm Incorporated Grouping of bypass-coded bins for SAO syntax elements
US9521393B2 (en) 2013-01-07 2016-12-13 Qualcomm Incorporated Non-nested SEI messages in video coding
TWI676389B (zh) * 2013-07-15 2019-11-01 美商內數位Vc專利控股股份有限公司 至少一種色彩轉換之編碼方法和編碼器、解碼器、顯示裝置、編碼視訊訊號、電腦程式製品及處理器可讀式媒體
WO2016171510A1 (ko) * 2015-04-24 2016-10-27 엘지전자 주식회사 방송 신호 송수신 방법 및 장치
EP3096516A1 (en) * 2015-05-22 2016-11-23 Thomson Licensing Method for color mapping a video signal and method of encoding a video signal and corresponding devices
EP3329679A1 (en) * 2015-07-28 2018-06-06 VID SCALE, Inc. High dynamic range video coding architectures with multiple operating modes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3059937A1 (en) * 2015-02-20 2016-08-24 Thomson Licensing Method and apparatus for encoding color mapping information and processing pictures based on color mapping information
WO2016131970A1 (en) * 2015-02-20 2016-08-25 Thomson Licensing Method and apparatus for encoding color mapping information and processing pictures based on color mapping information

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A. K. Ramasubramonian, et al., ‘Clarifications on the semantics of CRI SEI message and its usage for HDR/WCG video compression’, (JCTVC-V0064), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 22t *
Rajan Joshi, et al., ‘High Efficiency Video Coding (HEVC) Screen Content Coding: Draft 4’, (JCTVC-V0064), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 21st Meeting: Warsaw, PL, (2015.09.05.) *

Also Published As

Publication number Publication date
BR112018004504A2 (pt) 2018-09-25
AU2016320902B2 (en) 2020-03-26
JP2018530953A (ja) 2018-10-18
CN107950028A (zh) 2018-04-20
US20170070735A1 (en) 2017-03-09
BR112018004504B1 (pt) 2024-01-02
WO2017044740A3 (en) 2017-04-27
US10536695B2 (en) 2020-01-14
EP3348063A2 (en) 2018-07-18
JP6808725B2 (ja) 2021-01-06
WO2017044740A2 (en) 2017-03-16
AU2016320902A1 (en) 2018-04-26
KR102158418B1 (ko) 2020-09-22
CN107950028B (zh) 2020-12-01

Similar Documents

Publication Publication Date Title
KR102158418B1 (ko) 개선된 컬러 재맵핑 정보 보충 강화 정보 메시지 프로세싱
CN108028944B (zh) 用于处理经解码视频数据的方法、系统和存储介质
KR102562874B1 (ko) 피드백 채널에 의한 컬러 영역 적응
JP6761045B2 (ja) ビデオのための色再マッピング情報補足エンハンスメント情報メッセージを生成するための方法およびシステム
TW201729594A (zh) 用於高動態範圍及廣色域視訊寫碼之補充增強資訊(sei)訊息
TW201711470A (zh) 用於高動態範圍及廣色域視訊寫碼之自適應常數照度方法
TW201722154A (zh) 視訊寫碼中成分之範圍調整之固定點實施
TW201931853A (zh) 具有聯合像素/變換為基礎之量化之視頻寫碼之量化參數控制
CN109479150B (zh) 用于显示器调适的色彩重映射信息sei消息发信号
US10334277B2 (en) Signaling target display parameters of color remapping information supplemental enhancement information messages
CN110754085A (zh) 用于非4:4:4格式视频内容的颜色重映射

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant