KR20180054815A - 코어 비디오 표준을 사용하는 고 동적 범위 (hdr) 비디오 코딩을 위한 비디오 디코더 적합성 - Google Patents
코어 비디오 표준을 사용하는 고 동적 범위 (hdr) 비디오 코딩을 위한 비디오 디코더 적합성 Download PDFInfo
- Publication number
- KR20180054815A KR20180054815A KR1020187011332A KR20187011332A KR20180054815A KR 20180054815 A KR20180054815 A KR 20180054815A KR 1020187011332 A KR1020187011332 A KR 1020187011332A KR 20187011332 A KR20187011332 A KR 20187011332A KR 20180054815 A KR20180054815 A KR 20180054815A
- Authority
- KR
- South Korea
- Prior art keywords
- video data
- data
- decoded video
- post processing
- post
- Prior art date
Links
- 238000012805 post-processing Methods 0.000 claims abstract description 195
- 238000000034 method Methods 0.000 claims abstract description 124
- 238000012545 processing Methods 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims abstract description 40
- 239000000284 extract Substances 0.000 claims abstract description 13
- 238000012360 testing method Methods 0.000 claims description 78
- 238000006243 chemical reaction Methods 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 31
- 238000003860 storage Methods 0.000 claims description 21
- 238000012546 transfer Methods 0.000 claims description 21
- 230000000153 supplemental effect Effects 0.000 claims description 13
- 238000013139 quantization Methods 0.000 claims description 10
- 238000005070 sampling Methods 0.000 claims description 10
- 238000012952 Resampling Methods 0.000 claims description 4
- 241000023320 Luma <angiosperm> Species 0.000 description 23
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 23
- 238000010586 diagram Methods 0.000 description 16
- 238000007667 floating Methods 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 12
- 238000007781 pre-processing Methods 0.000 description 11
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 10
- 230000006835 compression Effects 0.000 description 9
- 238000007906 compression Methods 0.000 description 9
- 239000013256 coordination polymer Substances 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000011664 signaling Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 239000010410 layer Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 241000985610 Forpus Species 0.000 description 1
- UFHFLCQGNIYNRP-UHFFFAOYSA-N Hydrogen Chemical compound [H][H] UFHFLCQGNIYNRP-UHFFFAOYSA-N 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 229910052739 hydrogen Inorganic materials 0.000 description 1
- 239000001257 hydrogen Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012432 intermediate storage Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/98—Adaptive-dynamic-range coding [ADRC]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1407—General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/02—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
- G09G5/04—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using circuits for interfacing with colour displays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/18—Methods 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 set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/186—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/02—Improving the quality of display appearance
- G09G2320/0271—Adjustment of the gradation levels within the range of the gradation scale, e.g. by redistribution or clipping
- G09G2320/0276—Adjustment of the gradation levels within the range of the gradation scale, e.g. by redistribution or clipping for the purpose of adaptation to the characteristics of a display device, i.e. gamma correction
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/06—Colour space transformation
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/001—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background
- G09G3/003—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background to produce spatial visual effects
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/02—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
- G09G5/06—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using colour palettes, e.g. look-up tables
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
하나의 예에서, 디코딩된 비디오 데이터를 프로세싱하는 디바이스는 디지털 로직 회로를 포함하는 하나 이상의 하드웨어-기반 프로세싱 유닛들에 의해 구현되는 비디오 디코더, 및 디지털 로직 회로를 포함하는 하나 이상의 하드웨어-기반 프로세싱 유닛들에 의해 구현되는 포스트프로세싱 유닛을 포함한다. 비디오 디코더는 비디오 코딩 표준에 따라 비디오 비트스트림의 비디오 데이터를 디코딩하고, 비디오 비트스트림의 SEI 메시지로부터 HDR 포스트프로세싱 데이터를 추출하며, 포스트프로세싱 유닛으로 그 디코딩된 비디오 데이터 및 HDR 포스트프로세싱 데이터를 제공하도록 구성된다. 포스트프로세싱 유닛은 비디오 코딩 표준에 따라 HDR 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터를 프로세싱하도록 구성된다. 디바이스는 추가적으로 프로세싱된 비디오 데이터를 참조 프로세싱된 비디오 데이터와 비교함으로써 비디오 디코더가 비디오 코딩 표준에 따르는지 여부를 결정할 수도 있다.
Description
본 출원은 2015 년 9 월 22 일자로 출원된 미국 가출원 제 62/222,147 호의 이익을 주장하고, 그 전체 내용은 참조로 본원에 편입된다.
본 개시는 비디오 프로세싱에 관한 것이다.
디지털 비디오 기능들은, 디지털 텔레비전들, 디지털 다이렉트 브로드캐스트 시스템 (digital direct broadcast system) 들, 무선 브로드캐스트 시스템들, 개인 정보 단말 (personal digital assistant; PDA) 들, 랩톱 또는 데스크톱 컴퓨터들, 태블릿 컴퓨터들, 전자책 (e-book) 리더들, 디지털 카메라들, 디지털 레코딩 디바이스들, 디지털 미디어 플레이어들, 비디오 게임용 디바이스들, 비디오 게임 콘솔들, 셀룰러 또는 위성 라디오 전화들, 소위 "스마트폰들", 화상 원격회의 디바이스들, 비디오 스트리밍 디바이스들 등을 포함하는 광범위한 디바이스들 내로 편입될 수 있다. 디지털 비디오 디바이스들은 MPEG-2, MPEG-4, ITU-T H.263, ITU-T H.264/MPEG-4, Part 10, 진보된 비디오 코딩 (Advanced Video Coding; AVC), ITU-T H.265 에 의해 정의된 표준들, 고효율 비디오 코딩 (High Efficiency Video Coding; HEVC), 및 이러한 표준들의 확장들에서 설명된 것들과 같은 비디오 코딩 기법들을 구현한다. 비디오 디바이스들은 이러한 비디오 코딩 기법들을 구현함으로써 디지털 비디오 정보를 더 효율적으로 송신할 수도 있고, 수신할 수도 있고, 인코딩할 수도 있고, 디코딩할 수도 있고, 및/또는 저장할 수도 있다.
비디오 코딩 기법들은 비디오 시퀀스들에 내재된 중복성을 감소시키거나 제거하기 위한 공간적 (인트라-화상 (intra-picture)) 예측 및/또는 시간적 (인터-화상 (inter-picture)) 예측을 포함한다. 블록-기반 비디오 코딩을 위하여, 비디오 슬라이스 (예컨대, 비디오 프레임 또는 비디오 프레임의 부분) 는 비디오 블록들로 파티셔닝 (partitioning) 될 수도 있으며, 비디오 블록들은 또한, 트리블록 (treeblock) 들, 코딩 유닛 (coding unit; CU) 들, 및/또는 코딩 노드들로서 지칭될 수도 있다. 화상의 인트라-코딩된 (I) 슬라이스에서의 비디오 블록들은 동일한 화상에서의 이웃하는 블록들 내의 참조 샘플들에 대한 공간적 예측을 이용하여 인코딩된다. 화상의 인터-코딩된 (P 또는 B) 슬라이스 내의 비디오 블록들은 동일한 화상에서의 이웃하는 블록들 내의 참조 샘플들에 대한 공간적 예측, 또는 다른 참조 화상들에서의 참조 샘플들에 대한 시간적 예측을 이용할 수도 있다. 화상들은 프레임들로서 지칭될 수도 있고, 참조 화상들은 참조 프레임들로서 지칭될 수도 있다.
공간적 또는 시간적 예측은 코딩되어야 할 블록에 대한 예측 블록으로 귀착된다. 잔차 데이터 (residual data) 는 코딩되어야 할 원래의 블록과 예측 블록 사이의 픽셀 차이들을 표현한다. 인터-코딩된 블록은 예측 블록을 형성하는 참조 샘플들의 블록을 지시하는 모션 벡터와, 코딩된 블록과 예측 블록과의 사이의 차이를 표시하는 잔차 데이터에 따라 인코딩된다. 인트라-코딩된 블록은 인트라-코딩 모드 및 잔차 데이터에 따라 인코딩된다. 추가의 압축을 위하여, 잔차 데이터는 픽셀 도메인으로부터 변환 도메인으로 변환되어 잔차 변환 계수들로 귀착될 수도 있고, 다음으로, 이들은 양자화될 수도 있다. 초기에 2 차원 어레이로 배치된 양자화된 변환 계수들은 변환 계수들의 1 차원 벡터를 생성하기 위하여 스캔될 수도 있고, 엔트로피 코딩은 훨씬 더 많은 압축을 달성하기 위하여 적용될 수도 있다.
일반적으로, 본 개시는 비디오 디코더가 비디오 코딩 표준에 따르는지 여부를 결정하기 위해 사용될 수도 있는 기법들을 기술한다. 또한, 본 개시의 기법들은 일반적으로 고 동적 범위 (HDR) 비디오 데이터를 준비하기 위해 디코딩된 비디오 데이터를 프로세싱하기 위해 사용될 수도 있다. 디코딩된 비디오 데이터는 다양한 방식들로 HDR 비디오 데이터를 형성하기 위해 포스트프로세싱될 수도 있다. 예를 들어, 클라이언트 디바이스는 예를 들어 4:2:0 포맷으로부터 4:4:4 포맷으로 디코딩된 비디오 데이터의 크로미넌스 데이터를 업샘플링할 수도 있다. 클라이언트 디바이스는 추가적으로 또는 대안적으로 더 높은 비트 깊이를 달성하기 위해 디코딩된 비디오 데이터를 역양자화할 수도 있다. 클라이언트 디바이스는 추가적으로 또는 대안적으로 예를 들어 (YUV 또는 Y'CbCr 과 같은) 루미넌스 및 크로미넌스 컬러 공간으로부터 레드-그린-블루 (RGB) 컬러 공간으로 상이한 컬러 공간으로 디코딩된 비디오 데이터를 변환할 수도 있다. 클라이언트 디바이스는 추가적으로 또는 대안적으로 고 동적 범위 (HDR) 비디오 데이터를 생성하기 위해 디코딩된 비디오 데이터에 대해 전기-광학 전달 기능을 수행할 수도 있다. 본 개시의 기법들에 따르면, 임의의 또는 모든 이들 포스트프로세싱 절차들은 보충 강화 정보 (SEI) 메시지와 같은 코딩된 비디오 비트스트림의 신택스 엘리먼트들을 사용하여 제어될 수도 있다. 따라서, 비디오 디코더는 SEI 메시지로부터 HDR 포스트프로세싱 데이터를 추출하고 하나 이상의 포스트 프로세싱 유닛들로 그 추출된 포스트프로세싱 데이터를 제공할 수도 있다. 더욱이, 비디오 코딩 표준에 대한 적합성 (conformance) 이 임의의 또는 모든 포스트프로세싱 절차들, 예를 들어, 상술된 임의의 여러 포스트프로세싱 절차들에 후속하여 테스트될 수도 있다.
하나의 예에서, 디코딩된 비디오 데이터를 프로세싱하는 방법은, 비디오 디코더에 의해, 비디오 코딩 표준에 따라 비디오 비트스트림의 비디오 데이터를 디코딩하는 단계로서, 상기 비디오 비트스트림은 디코딩된 비디오 데이터에 대한 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 비디오 데이터를 디코딩하는 단계; 비디오 디코더에 의해, SEI 메시지로부터 HDR 포스트프로세싱 데이터를 추출하는 단계; 비디오 디코더에 의해, 포스트프로세싱 유닛으로 디코딩된 비디오 데이터 및 HDR 포스트프로세싱 데이터를 제공하는 단계; 및 포스트프로세싱 유닛에 의해, 비디오 코딩 표준에 따라 HDR 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터를 프로세싱하는 단계를 포함한다.
다른 예에서, 디코딩된 비디오 데이터를 프로세싱하는 디바이스는 비디오 비트스트림의 비디오 데이터를 저장하도록 구성된 메모리로서, 상기 비디오 비트스트림은 디코딩된 비디오 데이터에 대한 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 메모리; 디지털 로직 회로를 포함하는 하나 이상의 하드웨어-기반 프로세싱 유닛들에 의해 구현되는 비디오 디코더; 및 디지털 로직 회로를 포함하는 하나 이상의 하드웨어-기반 프로세싱 유닛들에 의해 구현되는 포스트프로세싱 유닛을 포함한다. 비디오 디코더는 비디오 코딩 표준에 따라 비디오 데이터를 디코딩하고, SEI 메시지로부터 HDR 포스트프로세싱 데이터를 추출하며; 포스트프로세싱 유닛으로 디코딩된 비디오 데이터 및 HDR 포스트프로세싱 데이터를 제공하도록 구성된다. 포스트프로세싱 유닛은 비디오 코딩 표준에 따라 HDR 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터를 프로세싱하도록 구성된다.
다른 예에서, 디코딩된 비디오 데이터를 프로세싱하는 디바이스는, 비디오 코딩 표준에 따라 비디오 비트스트림의 비디오 데이터를 디코딩하는 수단으로서, 상기 비디오 비트스트림은 디코딩된 비디오 데이터에 대한 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 비디오 데이터를 디코딩하는 수단; SEI 메시지로부터 HDR 포스트프로세싱 데이터를 추출하는 수단; 포스트프로세싱 수단으로 디코딩된 비디오 데이터 및 HDR 포스트프로세싱 데이터를 제공하는 수단; 및 비디오 코딩 표준에 따라 HDR 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터를 프로세싱하는 포스트프로세싱 수단을 포함한다.
다른 예에서, 컴퓨터 판독가능 저장 매체는 명령들을 저장하고 있으며, 그 명령들은, 실행될 때, 비디오 디코더를 실행하는 제 1 하나 이상의 프로세서들로 하여금, 비디오 코딩 표준에 따라 비디오 데이터를 디코딩하게 하는 것으로서, 상기 비디오 비트스트림은 디코딩된 비디오 데이터에 대한 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 비디오 데이터를 디코딩하게 하고; SEI 메시지로부터 HDR 포스트프로세싱 데이터를 추출하게 하며; 비디오 디코더에 의해, 제 2 하나 이상의 프로세서들에 의해 실행되는 포스트프로세싱 유닛으로 디코딩된 비디오 데이터 및 HDR 포스트프로세싱 데이터를 제공하게 하며; 및 포스트프로세싱 유닛을 실행하는 상기 제 2 하나 이상의 프로세서들로 하여금 비디오 코딩 표준에 따라 HDR 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터를 프로세싱하게 한다.
하나 이상의 예들의 상세들이 첨부하는 도면들 및 이하의 설명에서 진술된다. 다른 특징들, 목적들, 및 이점들은 상세한 설명 및 도면들로부터, 및 청구범위로부터 명백할 것이다.
도 1 은 본 개시의 기법들을 구현하도록 구성된 예시의 비디오 인코딩 및 디코딩 시스템을 도시하는 블록도이다.
도 2 는 선형 고정밀도 표현으로부터 압축된 비트스트림으로 HDR 컨텐츠에 대한 인코딩 프로세스의 예를 도시하는 블록도이다.
도 3 은 HDR 컨텐츠에 대한 디코딩 프로세스의 예를 도시하는 블록도이다.
도 4 는 전달 함수들의 수개의 예들을 도시하는 개념도이다.
도 5 는 본 개시의 기법들에 따라 예시의 단일-계층 HDR 복원 프로세스를 도시하는 블록도이다.
도 6 은 예시의 HDR 프리-프로세싱 기법들을 도시하는 블록도이다.
도 7 은 특정의 프로파일에 대한 적합성을 표방하는 디코더가 테스트되는 방법을 도시하는 개념도이다.
도 8 은 특정의 프로파일에 대한 적합성을 표방하는 디코더가 테스트되는 방법의 다른 예를 도시하는 개념도이다.
도 9 는 특정의 프로파일에 대한 적합성을 표방하는 디코더가 다수의 적합성 포인트들 (CPs) 로 테스트되는 방법의 다른 예를 도시하는 개념도이다.
도 10 은 본 개시의 기법들에 따른 예시의 방법을 도시하는 플로우챠트이다.
도 2 는 선형 고정밀도 표현으로부터 압축된 비트스트림으로 HDR 컨텐츠에 대한 인코딩 프로세스의 예를 도시하는 블록도이다.
도 3 은 HDR 컨텐츠에 대한 디코딩 프로세스의 예를 도시하는 블록도이다.
도 4 는 전달 함수들의 수개의 예들을 도시하는 개념도이다.
도 5 는 본 개시의 기법들에 따라 예시의 단일-계층 HDR 복원 프로세스를 도시하는 블록도이다.
도 6 은 예시의 HDR 프리-프로세싱 기법들을 도시하는 블록도이다.
도 7 은 특정의 프로파일에 대한 적합성을 표방하는 디코더가 테스트되는 방법을 도시하는 개념도이다.
도 8 은 특정의 프로파일에 대한 적합성을 표방하는 디코더가 테스트되는 방법의 다른 예를 도시하는 개념도이다.
도 9 는 특정의 프로파일에 대한 적합성을 표방하는 디코더가 다수의 적합성 포인트들 (CPs) 로 테스트되는 방법의 다른 예를 도시하는 개념도이다.
도 10 은 본 개시의 기법들에 따른 예시의 방법을 도시하는 플로우챠트이다.
본 개시는 고 동적 범위 (HDR) 및/또는 와이드 컬러 개멋 (wide color gamut: WCG) 비디오 데이터를 프리-프로세싱 및 포스트프로세싱하는 것과 관련된 수개의 기법들을 기술한다. 일부 예들에서, 본 개시는 코딩된 표준 비디오 (인코더/디코더) 에 따라 HDR/WCG 비디오 데이터를 프로세싱하는 기법들을 기술한다.
비디오 코딩 표준들은 그의 스케일러블 비디오 코딩 (SVC) 및 멀티-뷰 비디오 코딩 (MVC) 확장들을 포함하여, ITU-T H.261, ISO/IEC MPEG-1 비쥬얼, ITU-T H.262 또는 ISO/IEC MPEG-2 비쥬얼, ITU-T H.263, ISO/IEC MPEG-4 비쥬얼 및 ITU-T H.264 (또한 ISO/IEC MPEG-4 AVC 로서도 알려짐) 를 포함한다.
또, 새로운 비디오 코딩 표준, 즉 ITU-T H.265, HEVC 의 설계가 ITU-T 비디오 코딩 전문가 그룹 (VCEG) 및 ISO/IEC 동화상 전문가 그룹 (MPEG) 의 비디오 코딩에 관한 조인트 콜라보레이션 팀 (JCT-VC) 에 의해 최종화되었다. ITU-T HEVC 표준은 www.itu.int/rec/T-REC-H.265-201504-I/en 에서 이용가능한 ITU-T H.265: 고효율 비디오 코딩 (HEVC) 로서 이용가능하다. 그 최종화된 HEVC 표준 문서는 ITU-T H.265. Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services - Coding of moving video, High efficiency video coding, Telecommunication Standardization Sector of International Telecommunication Union (ITU), April 2015 로서 공개되어 있다.
본 개시의 기법들은 ITU-T H.264/AVC, ITU-T H.265/HEVC, 및 HDR 비디오에 수반되는 다른 표준들을 포함하지만 이들에 제한되지 않는 다양한 비디오 코딩 표준들에 적용가능할 수도 있다. 본 개시의 기법들은 이들 또는 장래의 비디오 코딩 표준들, 또는 그러한 표준들에 대한 확장들에 대한 컴플라이언스 (compliance) 를 결정하기 위해 사용될 수도 있다.
도 1 은 본 개시의 기법들을 사용할 수도 있는 일 예의 비디오 인코딩 및 디코딩 시스템 (10) 을 예시하는 블록도이다. 도 1 에서 도시된 바와 같이, 시스템 (10) 은 목적지 디바이스 (14) 에 의해 더 이후의 시간에 디코딩되어야 할 인코딩된 비디오 데이터를 제공하는 소스 디바이스 (12) 를 포함한다. 특히, 소스 디바이스 (12) 는 컴퓨터-판독가능 매체 (16) 를 통해 비디오 데이터를 목적지 디바이스 (14) 에 제공한다. 소스 디바이스 (12) 및 목적지 디바이스 (14) 는, 데스크톱 컴퓨터들, 노트북 (즉, 랩톱) 컴퓨터들, 태블릿 컴퓨터들, 셋톱 (set-top) 박스들, 소위 "스마트" 폰들과 같은 전화 핸드셋들, 소위 "스마트" 패드들, 텔레비전들, 카메라들, 디스플레이 디바이스들, 디지털 미디어 플레이어들, 비디오 게임용 콘솔들, 비디오 스트리밍 디바이스들 등을 포함하는 광범위한 디바이스들 중의 임의의 것을 포함할 수도 있다. 일부 경우들에는, 소스 디바이스 (12) 및 목적지 디바이스 (14) 가 무선 통신을 위하여 구비될 수도 있다.
목적지 디바이스 (14) 는 컴퓨터-판독가능 매체 (16) 를 통해, 디코딩되어야 할 인코딩된 비디오 데이터를 수신할 수도 있다. 컴퓨터-판독가능 매체 (16) 는 인코딩된 비디오 데이터를 소스 디바이스 (12) 로부터 목적지 디바이스 (14) 로 이동시킬 수 있는 임의의 타입의 매체 또는 디바이스를 포함할 수도 있다. 하나의 예에서, 컴퓨터-판독가능 매체 (16) 는 소스 디바이스 (12) 가 인코딩된 비디오 데이터를 실시간으로 목적지 디바이스 (14) 로 직접 송신하는 것을 가능하게 하기 위한 통신 매체를 포함할 수도 있다. 인코딩된 비디오 데이터는 무선 통신 프로토콜과 같은 통신 표준에 따라 변조될 수도 있고, 목적지 디바이스 (14) 로 송신될 수도 있다. 통신 매체는 라디오 주파수 (radio frequency; RF) 스펙트럼 또는 하나 이상의 물리적 송신 라인들과 같은 임의의 무선 또는 유선 통신 매체를 포함할 수도 있다. 통신 매체는 로컬 영역 네트워크, 광역 네트워크, 또는 인터넷과 같은 글로벌 네트워크와 같은 패킷-기반 네트워크의 일부를 형성할 수도 있다. 통신 매체는 라우터들, 스위치들, 기지국들, 또는 소스 디바이스 (12) 로부터 목적지 디바이스 (14) 로의 통신을 가능하게 하기 위해 유용할 수도 있는 임의의 다른 장비를 포함할 수도 있다.
일부 예들에서, 인코딩된 데이터는 출력 인터페이스 (22) 로부터 저장 디바이스로 출력될 수도 있다. 유사하게, 인코딩된 데이터는 입력 인터페이스에 의해 저장 디바이스로부터 액세스될 수도 있다. 저장 디바이스는 하드 드라이브, 블루-레이 (Blu-ray) 디스크들, DVD 들, CD-ROM 들, 플래시 메모리, 휘발성 또는 비-휘발성 메모리, 또는 인코딩된 비디오 데이터를 저장하기 위한 임의의 다른 적당한 디지털 저장 매체들과 같은, 다양한 분산되거나 국소적으로 액세스된 데이터 저장 매체들 중의 임의의 것을 포함할 수도 있다. 추가의 예에서, 저장 디바이스는 소스 디바이스 (12) 에 의해 생성된 인코딩된 비디오를 저장할 수도 있는 파일 서버 또는 또 다른 중간 저장 디바이스에 대응할 수도 있다. 목적지 디바이스 (14) 는 스트리밍 또는 다운로드를 통해 저장 디바이스로부터 저장된 비디오 데이터를 액세스할 수도 있다. 파일 서버는 인코딩된 비디오 데이터를 저장할 수 있으며 그 인코딩된 비디오 데이터를 목적지 디바이스 (14) 로 송신할 수 있는 임의의 타입의 서버일 수도 있다. 일 예의 파일 서버들은 (예컨대, 웹사이트를 위한) 웹 서버, FTP 서버, 네트워크 부착 스토리지 (network attached storage; NAS) 디바이스들, 또는 로컬 디스크 드라이브를 포함한다. 목적지 디바이스 (14) 는 인터넷 접속을 포함하는 임의의 표준 데이터 접속을 통해 인코딩된 비디오 데이터를 액세스할 수도 있다. 이것은, 파일 서버 상에 저장된 인코딩된 비디오 데이터를 액세스하기 위해 적당한 무선 채널 (예컨대, Wi-Fi 접속), 유선 접속 (예컨대, DSL, 케이블 모뎀 등), 또는 양자의 조합을 포함할 수도 있다. 저장 디바이스로부터의 인코딩된 비디오 데이터의 송신은 스트리밍 송신, 다운로드 송신, 또는 그 조합일 수도 있다.
이 개시물의 기법들은 무선 애플리케이션들 또는 세팅들로 반드시 제한되는 것은 아니다. 기법들은 오버-디-에어 (over-the-air) 텔레비전 브로드캐스트들, 케이블 텔레비전 송신들, 위성 텔레비전 송신들, HTTP 를 통한 동적 적응 스트리밍 (dynamic adaptive streaming over HTTP; DASH) 과 같은 인터넷 스트리밍 비디오 송신들, 데이터 저장 매체 상으로 인코딩되는 디지털 비디오, 데이터 저장 매체 상에 저장된 디지털 비디오의 디코딩, 또는 다른 애플리케이션들과 같은, 다양한 멀티미디어 애플리케이션들 중의 임의의 것의 지원 하에서 비디오 코딩에 적용될 수도 있다. 일부 예들에서, 시스템 (10) 은 비디오 스트리밍, 비디오 재생, 비디오 브로드캐스팅, 및/또는 화상 통화 (video telephony) 와 같은 애플리케이션들을 지원하기 위하여 일방향 (one-way) 또는 양방향 (two-way) 비디오 송신을 지원하도록 구성될 수도 있다.
도 1 의 예에서, 소스 디바이스 (12) 는 비디오 소스 (18), 비디오 프리프로세서 유닛 (19) 및 비디오 인코더 (20) 를 포함하는 비디오 인코딩 유닛 (21), 및 출력 인터페이스 (22) 를 포함한다. 목적지 디바이스 (14) 는 입력 인터페이스 (28), 비디오 디코더 (30) 및 비디오 포스트프로세서 유닛 (31) 을 포함하는 비디오 디코딩 유닛 (29), 및 디스플레이 디바이스 (32) 를 포함한다. 비디오 프리프로세서 유닛 (19) 및 비디오 포스트프로세서 유닛 (31) 은 본 개시에 기술된 바와 같은 하나 이상의 예시의 기법들의 부분들을 적용하도록 구성될 수도 있다. 다른 예들에서, 소스 디바이스 및 목적지 디바이스는 다른 컴포넌트들 또는 배열들을 포함할 수도 있다. 예를 들어, 소스 디바이스 (12) 는 외부 카메라와 같은 외부 비디오 소스 (18) 로부터 비디오 데이터를 수신할 수도 있다. 마찬가지로, 목적지 디바이스 (14) 는 통합된 디스플레이 디바이스를 포함하는 것이 아니라, 외부 디스플레이 디바이스와 인터페이스할 수도 있다.
본 개시의 기법들에 따르면, 이하에 더욱 상세히 논의되는 바와 같이, 비디오 디코더 (30) 는 코딩된 비디오 데이터 및 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 하나 이상의 보충 강화 정보 (SEI) 메시지들을 포함하는 비트스트림을 수신할 수도 있다. HDR 포스트프로세싱 데이터는 예를 들어 4:2:0 크로마 포맷 데이터를 4:4:4 크로마 포맷으로 업샘플링하는 데이터, 풀 (full) 비트 깊이로 샘플들을 역양자화하는 데이터, 루미넌스 및 크로미넌스 (예를 들어, Y'CbCr) 컬러 공간에서의 비디오 데이터를 레드-그린-블루 (RGB) 컬러 공간으로 변환하는 데이터, 변환 함수를 수행하는 데이터 등을 포함할 수도 있다.
비디오 디코더 (30) 는 SEI 메시지(들) 로부터 HDR 포스트프로세싱 데이터를 추출하고 비디오 포스트프로세서 유닛 (31) 으로 그 HDR 포스트프로세싱 데이터를 전달할 수도 있다. 비디오 포스트프로세서 유닛 (31) 은 차례로 비디오 디코더 (30) 로부터 수신된 디코딩된 비디오 데이터로부터 HDR 비디오 데이터를 준비할 수도 있다. 이러한 방식으로, 본 개시의 기법들은 HDR 비디오 데이터를 지원할 수도 있다.
도 1 의 예시된 시스템 (10) 은 단지 하나의 예이다. 비디오 데이터를 프로세싱하는 기법들은 임의의 디지털 비디오 인코딩 및/또는 디코딩 디바이스에 의해 수행될 수도 있다. 일반적으로, 이 개시물의 기법들은 비디오 인코딩 디바이스에 의해 수행되지만, 기법들은 또한, "CODEC" 으로서 전형적으로 지칭된 비디오 인코더/디코더에 의해 수행될 수도 있다. 설명의 편의를 위해, 본 개시는 소스 디바이스 (12) 및 목적지 디바이스 (14) 의 각각의 것들에서 본 개시에 기술된 예시의 기법들을 수행하는 비디오 프리프로세서 유닛 (19) 및 비디오 포스트프로세서 유닛 (31) 에 대해 기술된다. 소스 디바이스 (12) 및 목적지 디바이스 (14) 는, 소스 디바이스 (12) 가 목적지 디바이스 (14) 로의 송신을 위한 코딩된 비디오 데이터를 생성하는 이러한 코딩 디바이스들의 단지 예들이다. 일부 예들에서, 디바이스들 (12, 14) 은, 디바이스들 (12, 14) 의 각각이 비디오 인코딩 및 디코딩 컴포넌트들을 포함하도록 실질적으로 대칭적이거나 리시프로컬 (reciprocal) 방식으로 동작할 수도 있다. 이 때문에, 시스템 (10) 은 예컨대, 비디오 스트리밍, 비디오 재생, 비디오 브로드캐스팅, 또는 화상 통화를 위하여, 비디오 디바이스들 (12, 14) 사이의 일방향 또는 양방향 비디오 송신을 지원할 수도 있다.
소스 디바이스 (12) 의 비디오 소스 (18) 는 비디오 카메라와 같은 비디오 캡처 디바이스, 이전에 캡처된 비디오를 포함하는 비디오 아카이브 (video archive), 및/또는 비디오 컨텐츠 제공자로부터 비디오를 수신하기 위한 비디오 공급 인터페이스를 포함할 수도 있다. 추가의 대안으로서, 비디오 소스 (18) 는 소스 비디오로서, 또는 라이브 비디오 (live video), 아카이빙된 비디오 (archived video), 및 컴퓨터-생성된 비디오의 조합으로서, 컴퓨터 그래픽-기반 (computer graphics-based) 데이터를 생성할 수도 있다. 일부 경우들에는, 비디오 소스 (18) 가 비디오 카메라일 경우, 소스 디바이스 (12) 및 목적지 디바이스 (14) 는 소위 카메라 폰들 또는 비디오 폰들을 형성할 수도 있다. 그러나, 위에서 언급된 바와 같이, 이 개시물에서 설명된 기법들은 일반적으로 비디오 코딩에 적용가능할 수도 있고, 무선 및/또는 유선 애플리케이션들에 적용될 수도 있다. 각각의 경우에 있어서, 캡처된, 프리-캡처된 (pre-captured), 또는 컴퓨터-생성된 비디오는 비디오 인코딩 유닛 (21) 에 의해 인코딩될 수도 있다. 다음으로, 인코딩된 비디오 정보는 출력 인터페이스 (22) 에 의해 컴퓨터-판독가능 매체 (16) 상으로 출력될 수도 있다.
컴퓨터-판독가능 매체 (16) 는 무선 브로드캐스트 또는 유선 네트워크 송신과 같은 순시적 매체 (transient medium) 들, 또는 하드 디스크, 플래시 드라이브, 컴팩트 디스크, 디지털 비디오 디스크, 블루-레이 디스크, 또는 다른 컴퓨터-판독가능 매체들과 같은 저장 매체들 (즉, 비-일시적 저장 매체들) 을 포함할 수도 있다. 일부 예들에서, 네트워크 서버 (도시되지 않음) 는 예컨대, 네트워크 송신을 통해, 소스 디바이스 (12) 로부터 인코딩된 비디오 데이터를 수신할 수도 있으며 인코딩된 비디오 데이터를 목적지 디바이스 (14) 에 제공할 수도 있다. 유사하게, 디스크 스탬핑 (disc stamping) 설비와 같은 매체 생산 설비의 컴퓨팅 디바이스는 소스 디바이스 (12) 로부터 인코딩된 비디오 데이터를 수신할 수도 있고, 인코딩된 비디오 데이터를 포함하는 디스크를 생산할 수도 있다. 그러므로, 컴퓨터-판독가능 매체 (16) 는 다양한 예들에서, 다양한 형태들의 하나 이상의 컴퓨터-판독가능 매체들을 포함하는 것으로 이해될 수도 있다.
목적지 디바이스 (14) 의 입력 인터페이스 (28) 는 컴퓨터-판독가능 매체 (16) 로부터 정보를 수신한다. 컴퓨터-판독가능 매체 (16) 의 정보는, 비디오 데이터의 블록들 및 다른 코딩된 유닛들의 특성들 및/또는 프로세싱을 설명하는 신택스 엘리먼트들을 포함하는 신택스 정보로서, 비디오 인코딩 유닛 (21) 의 비디오 인코더 (20) 에 의해 정의되며 또한, 비디오 디코딩 유닛 (29) 의 비디오 디코더 (30) 에 의해 이용되는 상기 신택스 정보를 포함할 수도 있다. 디스플레이 디바이스 (32) 는 디코딩된 비디오 데이터를 사용자에게 디스플레이하고, 액정 디스플레이 (liquid crystal display; LCD), 플라즈마 디스플레이, 유기 발광 다이오드 (organic light emitting diode; OLED) 디스플레이, 또는 또 다른 타입의 디스플레이 디바이스와 같은 다양한 디스플레이 디바이스들 중의 임의의 것을 포함할 수도 있다.
도시된 바와 같이, 비디오 프리프로세서 유닛 (19) 은 비디오 소스 (18) 로부터 비디오 데이터를 수신한다. 비디오 프리프로세서 유닛 (19) 은 비디오 데이터를 프로세싱하여 그것을 비디오 인코더 (20) 로 인코딩하는 것에 적합할 수 있는 형태로 변환하도록 구성될 수도 있다. 예를 들어, 비디오 프리프로세서 유닛 (19) 은 (예를 들어, 비선형 전달 함수를 사용하여) 동적 범위 컴팩팅 (compacting), 더 컴팩트하거나 강건한 컬러 공간으로의 컬러 변환, 및/또는 부동소수점-대-정수 표현 변환을 수행할 수도 있다. 비디오 인코더 (20) 는 비디오 프리프로세서 유닛 (19) 에 의해 출력된 비디오 데이터에 대해 비디오 인코딩을 수행할 수도 있다. 비디오 디코더 (30) 는 비디오 데이터를 디코딩하기 위해 비디오 인코더 (20) 의 역을 수행할 수도 있다. 예를 들어, 비디오 포스트프로세서 유닛 (31) 은 정수-대-부동소수점 변환, 컴팩트하거나 강건한 컬러 공간으로부터의 컬러 변환, 및/또는 디스플레이를 위해 적합한 비디오 데이터를 생성하기 위해 동적 범위 컴팩팅의 역을 수행할 수도 있다.
비디오 인코딩 유닛 (21) 및 비디오 디코딩 유닛 (29) 는 각각, 하나 이상의 마이크로프로세서들, 디지털 신호 프로세서 (digital signal processor; DSP) 들, 애플리케이션 특정 집적 회로 (application specific integrated circuit; ASIC) 들, 필드 프로그래밍가능한 게이트 어레이 (field programmable gate array; FPGA) 들, 개별 로직, 소프트웨어, 하드웨어, 펌웨어 또는 그 임의의 조합들과 같은 다양한 적당한 인코더 회로부 중의 임의의 것으로서 구현될 수도 있다. 기법들이 소프트웨어로 부분적으로 구현될 때, 디바이스는 소프트웨어를 위한 명령들을 적당한 비-일시적인 컴퓨터-판독가능한 매체에 저장할 수도 있고, 이 개시물의 기법들을 수행하기 위하여 하나 이상의 프로세서들을 이용하여 명령들을 하드웨어로 실행할 수도 있다. 비디오 인코딩 유닛 (21) 및 비디오 디코딩 유닛 (29) 의 각각은 하나 이상의 인코더들 또는 디코더들 내에 포함될 수도 있고, 인코더들 또는 디코더들 중의 어느 하나는 조합된 인코더/디코더 (combined encoder/decoder; CODEC) 의 일부로서 각각의 디바이스 내에 통합될 수도 있다.
비디오 프리프로세서 유닛 (19) 및 비디오 인코더 (20) 는 비디오 인코딩 유닛 (21) 내에서 별개의 유닛들인 것으로서 도시되고, 비디오 포스트프로세서 유닛 (31) 및 비디오 디코더 (30) 는 비디오 디코딩 유닛 (29) 내에서 별개의 유닛들인 것으로서 도시되지만, 본 개시에 기술된 기법들은 그렇게 제한되지 않는다. 비디오 프리프로세서 유닛 (19) 및 비디오 인코더 (20) 는 공통 디바이스 (예를 들어, 동일 칩 내에 하우징되거나 집적회로) 로서 형성될 수도 있다. 유사하게, 비디오 포스트프로세서 유닛 (31) 및 비디오 디코더 (30) 는 공통 디바이스 (예를 들어, 동일 칩 내에 하우징되거나 집적회로) 로서 형성될 수도 있다.
비디오 인코더 (20) 및 비디오 디코더 (30) 는 상술된 임의의 비디오 코딩 표준들과 같은 비디오 압축 표준에 따라 동작한다. HEVC 및 다른 비디오 코딩 표준들에서, 비디오 시퀀스는 통상적으로 화상들의 시리즈를 포함한다. 화상들은 또한 "프레임들" 로서 지칭될 수도 있다. 화상은 SL, SCb, 및 SCr 로 표시되는 3 개의 샘플 어레이들을 포함할 수도 있다. SL 은 루마 샘플들의 2차원 어레이 (즉, 블록) 이다. SCb 는 Cb 크로미넌스 샘플들의 2차원 어레이이다. SCr 는 Cr 크로미넌스 샘플들의 2차원 어레이이다. 크로미넌스 샘플들은 또한 "크로마" 샘플들로서 여기서 지칭될 수도 있다. 다른 예들에서, 퐈상은 모노크롬일 수도 있고 루마 샘플들의 어레이만을 포함할 수도 있다.
비디오 인코더 (20) 는 코딩 트리 유닛 (coding tree unit; CTU) 들의 세트를 생성할 수도 있다. CTU 들의 각각은 루마 샘플들의 코딩 트리 블록 (coding tree block), 크로마 샘플들의 2 개의 대응하는 코딩 트리 블록들, 및 코딩 트리 블록들의 샘플들을 코딩하기 위하여 이용된 신택스 구조들을 포함할 수도 있다. 단색 화상, 또는 3 개의 별도의 컬러 평면들을 가지는 화상에서는, CTU 가 단일 코딩 트리 블록과, 코딩 트리 블록의 샘플들을 코딩하기 위하여 이용된 신택스 구조들을 포함할 수도 있다.
코딩 트리 블록은 샘플들의 NxN 블록일 수도 있다. CTU 는 또한, "트리 블록" 또는 "최대 코딩 유닛 (largest coding unit)" (LCU) 으로서 지칭될 수도 있다. HEVC 의 CTU 들은 H.264/AVC 와 같은 다른 비디오 코딩 표준들의 매크로블록들과 대략 유사할 수도 있다. 그러나, CTU 는 반드시 특정한 크기로 제한되는 것은 아니고, 하나 이상의 코딩 유닛 (CU) 들을 포함할 수도 있다. 슬라이스는 래스터 스캔 (raster scan) 에서 연속으로 순서화된 정수 (integer number) 의 CTU 들을 포함할 수도 있다.
본 개시는 샘플들의 하나 이상의 블록들의 샘플들을 코딩하기 위해 사용되는 신택스 구조들 및 샘플들의 하나 이상의 블록들을 지칭하기 위해 용어 "비디오 유닛" 또는 "비디오 블록" 을 사용할 수도 있다. 비디오 유닛들의 예시의 타입들은 다른 비디오 코딩 표준들에서 CTU 들, CU 들, PU 들, HEVC 에서의 변환 유닛들 (TUs), 또는 매크로블록들, 매크로블록 파티션들 등을 포함할 수도 있다.
비디오 인코더 (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 의 예측 블록들을 생성할 수도 있다.
비디오 인코더 (20) 가 CU 의 하나 이상의 PU 들에 대한 예측 루마, Cb, 및 Cr 블록들을 생성한 후, 비디오 인코더 (20) 는 CU 에 대한 루마 잔차 블록 (luma residual block) 을 생성할 수도 있다. 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 의 루마 잔차 블록의 서브-블록 (sub-block) 일 수도 있다. Cb 변환 블록은 CU 의 Cb 잔차 블록의 서브-블록일 수도 있다. Cr 변환 블록은 CU 의 Cr 잔차 블록의 서브-블록일 수도 있다.
비디오 인코더 (20) 는 TU 에 대한 루마 계수 블록을 생성하기 위하여 하나 이상의 변환들을 TU 의 루마 변환 블록에 적용할 수도 있다. 계수 블록은 변환 계수들의 2 차원 어레이일 수도 있다. 변환 계수는 스칼라량 (scalar quantity) 일 수도 있다. 비디오 인코더 (20) 는 TU 에 대한 Cb 계수 블록을 생성하기 위하여 하나 이상의 변환들을 TU 의 Cb 변환 블록에 적용할 수도 있다. 비디오 인코더 (20) 는 TU 에 대한 Cr 계수 블록을 생성하기 위하여 하나 이상의 변환들을 TU 의 Cr 변환 블록에 적용할 수도 있다.
계수 블록 (예컨대, 루마 계수 블록, Cb 계수 블록, 또는 Cr 계수 블록) 을 생성한 후, 비디오 인코더 (20) 는 계수 블록을 양자화할 수도 있다. 양자화는 일반적으로, 변환 계수들을 표현하기 위하여 이용된 데이터의 양을 가능한 대로 감소시키기 위하여 변환 계수들이 양자화되어 추가의 압축을 제공하는 프로세스를 지칭한다. 더욱이, 비디오 인코더 (20) 는 변환 계수들을 역양자화하고 화상의 CU 들의 TU 들의 변환 블록들을 복원하기 위해 변환 계수들에 역변환을 적용할 수도 있다. 비디오 인코더 (20) 는 CU 의 코딩 블록들을 복원하기 위해 CU 의 PU 들의 예측 블록들 및 CU 의 TU 들의 복원된 변환 블록들을 사용할 수도 있다. 화상의 각각의 CU 의 코딩 블록들을 복원함으로써, 비디오 인코더 (20) 는 화상을 복원할 수도 있다. 비디오 인코더 (20) 는 디코딩된 화상 버퍼 (DPB) 에 복원된 화상들을 저장할 수도 있다. 비디오 인코더 (20) 는 인터 예측 및 인트라 예측을 위해 DPB 내의 복원된 화상들을 사용할 수도 있다.
비디오 인코더 (20) 가 계수 블록을 양자화한 후, 비디오 인코더 (20) 는 양자화된 변환 계수들을 표시하는 신택스 엘리먼트들을 엔트로피 인코딩할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 양자화된 변환 계수들을 표시하는 신택스 엘리먼트들에 대해 컨텍스트-적응 2진 산술 코딩 (Context-Adaptive Binary Arithmetic Coding; CABAC) 을 수행할 수도 있다. 비디오 인코더 (20) 는 비트스트림에서 엔트로피-인코딩된 신택스 엘리먼트들을 출력할 수도 있다.
비디오 인코더 (20) 는 코딩된 화상들 및 연관된 데이터의 표현을 형성하는 비트들의 시퀀스를 포함하는 비트스트림을 출력할 수도 있다. 비트스트림은 네트워크 추상화 계층 (network abstraction layer; 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 는 제로 또는 그 이상의 전체 코딩된 화상들에 적용되는 신택스 엘리먼트들을 포함할 수도 있는 신택스 구조이다. (파라미터 세트들 및 SEI 메시지들에 대한 RBSP들과 대조적으로) 비디오 코딩 데이터에 대한 RBSP들을 캡슐화하는 NAL 유닛들은 비디오 코딩 계층 (video coding layer; VCL) NAL 유닛들로서 지칭될 수도 있다. 코딩된 슬라이스를 캡슐화하는 NAL 유닛은 코딩된 슬라이스 NAL 유닛으로서 여기서 지칭될 수도 있다. 코딩된 슬라이스에 대한 RBSP 는 슬라이스 헤더 및 슬라이스 데이터를 포함할 수도 있다.
비디오 디코더 (30) 는 비트스트림을 수신할 수도 있다. 게다가, 비디오 디코더 (30) 는 비트스트림으로부터 신택스 엘리먼트들을 디코딩하기 위하여 비트스트림을 파싱 (parse) 할 수도 있다. 비디오 디코더 (30) 는 비트스트림으로부터 디코딩된 신택스 엘리먼트들에 적어도 부분적으로 기초하여 비디오 데이터의 화상들을 복원할 수도 있다. 비디오 데이터를 복원하기 위한 프로세스는 비디오 인코더 (20) 에 의해 수행된 프로세스와 일반적으로 상반적일 수도 있다. 예를 들어, 비디오 디코더 (30) 는 현재의 CU 의 PU 들에 대한 예측 블록들을 결정하기 위해 PU 들의 모션 벡터들을 사용할 수도 있다. 비디오 디코더 (30) 는 PU 들에 대한 예측 블록들을 생성하기 위해 PU 들의 모션 벡터 또는 모션 벡터들을 사용할 수도 있다.
게다가, 비디오 디코더 (30) 는 현재의 CU 의 TU 들과 연관된 계수 블록들을 역양자화할 수도 있다. 비디오 디코더 (30) 는 현재의 CU 의 TU 들과 연관된 변환 블록들을 복원하기 위하여 계수 블록들에 대해 역변환들을 수행할 수도 있다. 비디오 디코더 (30) 는 현재의 CU 의 PU 들에 대한 예측 샘플 블록들의 샘플들을 현재의 CU 의 TU 들의 변환 블록들의 대응하는 샘플들에 추가함으로써, 현재의 CU 의 코딩 블록들을 복원할 수도 있다. 화상의 각각의 CU 에 대한 코딩 블록들을 복원함으로써, 비디오 디코더 (30) 는 화상을 복원할 수도 있다. 비디오 디코더 (30) 는 출력하기 위해 및/또는 다른 화상들을 디코딩함에 있어서 사용하기 위해 디코딩된 화상 버퍼 내에 디코딩된 화상들을 저장할 수도 있다.
보충 강화 정보 (SEI) 메시지들은, 통상적으로 디코더에 의해 비트스트림을 디코딩하기 위해 본질적이지 않은 정보를 반송하기 위해, 비디오 비트스트림들에 포함된다. 이러한 정보는 디코딩된 출력의 디스플레이 또는 프로세싱을 개선하는데 유용하다; 예를 들어 그러한 정보는 컨텐츠의 가시성을 개선하기 위해 디코더측 엔티티들에 의해 사용될 수 있을 것이다. 품질에 있어서의 향상이 애플리케이션 표준 (프레임-호환성 플라노-스테레오스코픽 (plano-stereoscopic) 3DTV 비디오 포맷에 대한 프레임-패킹 SEI 메시지의 캐리지, 여기서 SEI 메시지는 예를 들어 ETSI - TS 101 547-2, 디지털 비디오 브로드캐스팅 (DVB) 플라노-스테레오스코픽 3DTV 에 기술된 바와 같이 비디오의 모든 프레임에 대해 반송된다; 3GPP TS 26.114 v13.0.0, 3 세대 파트너쉽 프로젝트에 기술된 바와 같은, 파트 2: 프레임 호환성 플라노-스테레오스코픽 3DTV, 복구 포인트 SEI 메시지의 핸들링; 기술적 사양 그룹 서비스들 및 시스템 양태들; IP 멀티미디어 서브시스템 (IMS); 멀티미디어 전화; ETSI - TS 101 154, 디지털 비디오 브로드캐스팅 (DVB) 에 기술된 바와 같은, 미디어 핸들링 및 상호작용 (릴리스 13), 또는 DVB 에서의 팬-스캔 스캔 직사각형 SEI 메시지의 사용; MPEG-2 전송 스트림에 기초한 브로드캐스팅 애플리케이션들에서의 비디오 및 오디오 코딩의 사용에 대한 사양) 에 따르는 모든 디바이스들에게 야기될 수 있도록 소정의 애플리케이션 표준들이 비트스트림 내의 그러한 SEI 메시지들의 존재를 요구할 수 있을 것이라는 것이 또한 가능하다.
톤-맵핑 정보 SEI 메시지는 루마 샘플들, 또는 RGB 컴포넌트 샘플들의 각각을 맵핑하기 위해 사용된다. tone_map_id 의 상이한 값들은 상이한 목적들을 정의하기 위해 사용되고, 톤-맵 SEI 메시지의 신택스는 또한 이에 따라 변경된다. tone_map_id 에 대한 1 의 값은 SEI 메시지가 RGB 샘플들을 최소 및 최대 값으로 클립핑하는 것을 허용한다. tone_map_id 에 대한 3 의 값은 피봇 포인트들의 형태로 룩업 테이블의 시그널링을 허용한다. 그러나, 적용되는 경우, 동일한 값들이 모든 RGB 컴포넌트들에 적용되거나, 단지 루마 컴포넌트에만 적용된다.
니 (knee) 함수 SEI 메시지는 정규화된 선형 도메인에서 디코딩된 화상들의 RGB 컴포넌트들의 맵핑을 표시하기 위해 사용된다. 입력 및 출력 최대 루미넌스 값들이 또한 표시되고, 룩업 테이블은 입력 루미넌스 값들을 출력 루미넌스 값들로 맵핑한다. 동일한 룩업 테이블이 모든 3 개의 컬러 컴포넌트들에 대해 적적용된다.
HEVC 표준에서 정의된 컬러 재맵핑 정보 (CRI) SEI 메시지는 하나의 컬러 공간에서의 화상들을 다른 것에 맵핑하기 위해 사용되는 정보를 전달하기 위해 사용된다. 하나의 예에서, CRI SEI 메시지의 신택스는 3 개의 부분들 - 제 2 룩업 테이블 (Post-LUT) 에 의해 후속되는, 컬러 재맵핑 계수들을 나타내는 3x3 행렬에 의해 후속되는, 제 1 룩업 테이블 (Pre-LUT) - 을 포함한다. 각 컬러 컴포넌트, 예를 들어, R,G,B 또는 Y,Cb,Cr 에 대해, 독립적인 LUT 가 Pre-LUT 및 Post-LUT 양자에 대해 정의된다. CRI SEI 메시지는 또한 colour_remap_id 로 불리는 신택스 엘리먼트를 포함하고, 그것의 상이한 값들은 SEI 메시지의 상이한 목적들을 표시하기 위해 사용될 수도 있다.
예를 들어 D. Bugdayci Sansli, A. K. Ramasubramonian, D. Rusanoskyy, S. Lee, J. Sole, M. Karczewicz, Dynamic range adjustment SEI message, m36330, MPEG meeting, Warsaw, Poland, 22-26 June, 2015 에 기술된 바와 같은 동적 범위 조정 SEI 메시지는 임의의 비디오 코딩 표준의 부분으로서 채택되지 않았지만; SEI 메시지는 입력 샘플들을 맵핑하기 위해 스케일 및 오프셋 넘버들의 하나의 세트의 시그널링을 포함한다. SEI 메시지는 또한 상이한 컴포넌트들에 대해 상이한 룩업 테이블들의 시그널링을 허용하고, 또한 동일한 스케일 및 오프셋이 2 이상의 컴포넌트에 대해 사용되어야 하는 경우 시그널링 최적화를 허용한다. 스케일 및 오프셋 넘버들은 고정 길이 정확성으로 시그널링된다.
다음 세대 비디오 애플리케이션들은 HDR 및 WCG 로 캡쳐된 장면을 표현하는 비디오 데이터로 동작할 것으로 기대된다. 이용된 동적 범위의 파라미터들 및 컬러 개멋은 비디오 컨텐츠의 2 개의 독립적 속성들이고, 디지털 텔레비젼 및 멀티미디어 서비스들의 목적들을 위한 그들의 사양은 수개의 국제 표준들에 의해 정의된다. 예를 들어, ITU-R Rec. 709 는 표준 동적 범위 (SDR) 및 표준 컬러 개멋과 같은 HDTV (고선명 텔레비젼) 에 대한 파라미터들을 정의한다. 한편, ITU-R Rec. 2020 은 고 동적 범위 (HDR) 및 와이드 컬러 개멋 (WCG) 과 같은 UHDTV (초고선명 텔레비젼) 파라미터들을 특정한다. 다른 시스템들에서 동적 범위 및 컬러 개멋 속성들을 특정하는 다른 표준 개발 기구 (SDO) 문서들이 또한 존재하며, 예를 들어, P3 컬러 개멋은 SMPTE-231-2 (동화상 및 텔레비젼 엔지니어들의 협회) 에서 정의되고 HDR 의 일부 파라미터들은 STMPTE-2084 에서 정의된다. 동적 범위에 대한 간단한 설명이 이하에 제공된다.
동적 범위는 통상적으로 비디오 신호의 최소 및 최대 휘도 사이의 비로서 정의된다. 동적 범위는 또한 'f-스톱' 의 면에서 측정될 수도 있으며, 여기서 1 f-스톱은 신호 동적 범위의 더블링 (doubling) 에 대응한다. MPEG 의 정의에서, HDR 컨텐츠는 16 보다 많은 f-스톱을 갖는 휘도 변동을 특색으로 하는 그러한 컨텐츠이다. 일부 용어들에서, 10 과 16 f-스톱들 사이의 레벨들은 중간 동적 범위로서 고려되지만, 다른 정의들에서는 HDR 로 고려될 수도 있다. 동시에, 인간 시각 시스템 (HVS) 은 훨씬 더 많은 동적 범위를 지각할 수 있다. 그러나, HVS 는 소위 동시적 범위 (simultaneous range) 를 좁히기 위한 적응 메커니즘을 포함한다.
현재의 비디오 애플리케이션들 및 서비스들은 Rec. 709 에 의해 규제되고, 10 f-스톱 미만을 야기하는, (종종 "니트" 로서 지칭되는) ㎡ 당 대략 0.1 내지 100 칸델라 (cd) 의 휘도 (또는 루미넌스) 의 범위를 통상 지원하는 SDR 을 제공한다. 다음 세대 비디오 서비스들은 최대 16 f-스톱의 동적 범위를 제공할 것으로 기대되고, 상세한 사양은 현재 개발 중이지만, 일부 초기 파라미터들은 SMPTE-2084 및 Rec. 2020 에서 특정되었다.
고 동적 범위 (HDR) 및 와이드 컬러 개멋 (WCG) 은 비디오 컨텐츠의 2 개의 속성들이다. HDR/WCG 비디오 컨텐츠를 인코딩/디코딩하기 위한 일부 예시의 기법들은 10-비트들 이상의 입력 비트-깊이를 갖거나 추가적인 프리-/포스트프로세싱 단계들을 갖는 코어 비디오 코덱 (예를 들어, H.264/AVC 또는 H.265/HEVC) 을 사용한다. 프리프로세싱은 코덱에 순응하는 그러한 데이터를 만들기 위해 입력 HDR/WCG 비디오 데이터에 적용된다. 포스트프로세싱은 (복원된) HDR/WCG 비디오 데이터를 복구하기 위해 디코딩된 샘플들에 적용된다. 프리 및 포스트프로세싱 사이에는 코어 비디오 코덱에 의해 실행되는 표준의 특정의 프로파일 및 레벨에 따르는 비트스트림 및 디코더를 갖는 표준 코덱이 존재한다. 하나의 예에서, 코어 비디오 코덱은 HEVC 메인 10 이다.
일부 예들에서, HDR/WCG 비디오 컨텐츠는 4:4:4 크로마 포맷 및 매우 넓은 컬러 공간 (예를 들어, XYZ) 으로, 컴포넌트 당 매우 높은 정밀도 (심지어 부동소수점) 에서 획득 및 저장된다. 이러한 표현은 고정밀을 목표로하고 (거의) 수학적으로 손실이 없다. 압축 목적들로, 더 낮은 정밀도를 갖는 표현이 특히 그 표현이 HEVC 같은 비디오 코덱들을 위한 입력으로서 편리한 경우에 바람직하다.
이러한 방식으로, 목적지 디바이스 (14) 는 비디오 비트스트림의 비디오 데이터를 저장하도록 구성된 메모리로서, 그 비디오 비트스트림은 디코딩된 비디오 데이터에 대한 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 메모리; 디지털 로직 회로 (예를 들어, 비디오 디코더 (30)) 를 포함하는 하나 이상의 하드웨어-기반 프로세싱 유닛들에 의해 구현되는 비디오 디코더; 및 디지털 로직 회로 (예를 들어, 비디오 포스트프로세서 유닛 (31)) 를 포함하는 하나 이상의 하드웨어-기반 프로세싱 유닛들에 의해 구현되는 포스트프로세싱 유닛을 포함하는 디코딩된 비디오 데이터를 프로세싱하는 디바이스의 예를 표현한다. 비디오 디코더는 비디오 데이터를 디코딩하고, SEI 메시지로부터 HDR 포스트프로세싱 데이터를 추출하며; 포스트프로세싱 유닛으로 디코딩된 비디오 데이터 및 HDR 포스트프로세싱 데이터를 제공하도록 구성될 수도 있다. 포스트프로세싱 유닛은 HDR 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터를 프로세싱하도록 구성될 수도 있다.
도 2 는 HDR 컨텐츠를 선형 고정밀도 표현으로부터 압축된 비트스트림을 형성하기 위해 비디오 데이터를 인코딩할 때 사용되는 포맷으로 변환할 수도 있는, 도 1의 비디오 프리프로세서 유닛 (19) 의 컴포넌트들을 도시하는 블록도이다. 도 3 은 압축해제된 비디오 데이터를 원래의 표현 공간 (즉, HDR 비디오) 으로 다시 변환할 수도 있는, 도 1 의 비디오 포스트프로세서 유닛 (31) 의 컴포넌트들을 도시하는 블록도이다.
도 2 의 비디오 프리프로세서 유닛 (19) 은 OETF 유닛 (50) 을 포함하는 반면, 도 3 의 비디오 포스트프로세서 유닛 (31) 은 EOTF 유닛 (68) 을 포함한다. OETF 유닛 (50) 및 EOTF 유닛 (68) 은 각각의 전달 함수들 (TFs) 을 구현한다. OETF 유닛 (50) 은 광학-전기 전달 함수 (OETF) 를 갖는 선형 부동소수점 데이터를 (예를 들어, 니트 (nit) 로 또는 정규화된 루미넌스 표현으로의) 루미넌스 표현으로부터 코드 워드들 (또는 코드 레벨들) 로 변환한다. TF 는 일차원 (1-D) 함수일 수도 있다. 표준 동적 범위 (SDR) TF 는 통상적으로 감마 함수이다. HDR 의 경우, 추가로 또는 대안으로, PQ (ST 2084) 같은 다른 비선형 함수가 사용될 수도 있다. 그 전달 함수의 목적은 (선형 관계와 대조되는) 루미넌스의 로그-함수와 더 정렬되는 지각을 갖는 인간 시각 시스템 (HVS) 특징들을 설명하는 입력 데이터를 컴팬딩 (companding) 하는 것이다.
도 3 의 EOTF 유닛 (68) 은 OETF 의 역 프로세스, 즉 EOTF (전기-광학 전달 함수) 를 수행한다. EOTF 를 수행함으로써, EOTF 유닛 (68) 은 코드 레벨들을 루미넌스로 다시 맵핑한다. 도 4 는 TF 들의 수개의 예들을 도시한다. 이들 맵핑들은 또한 개별적으로 각각 R, G 및 B 컴포넌트에 적용될 수도 있다.
도 2 의 비디오 프리프로세서 유닛 (19) 은 R'G'B' 대 Y'CbCr 유닛 (52) 를 포함하지만, 도 3 의 비디오 포스트프로세서 유닛 (31) 은 Y'CbCr 대 R'G'B' 유닛 (66) 을 포함하며, 이들 각각은 각각의 컬러 변환을 수행한다. RGB 컬러 공간은 그것의 컴포넌트들 사이에 높은 상관을 갖는다. 도 2 의 예에서, R'G'B' 대 Y'CbCr 유닛 (52) 은 RGB 컴포넌트들을 압축에 적합한 더 비압축된 컬러 공간인 YCbCr 로 변환한다. 마찬가지로, Y'CbCr 대 R'G'B' 유닛 (66) 은 YCbCr 컴포넌트들을 예를 들어 디스플레이 디바이스 (32) (도 1) 에 의해 디스플레이될 수 있는 각각의 RGB 컴포넌트들로 변환한다.
도 2 의 양자화 (“quant”) 10b 유닛 (54) 및 도 3 의 역양자화 (“inv quant”) 10b 유닛 (64) 은 각각의 양자화/픽스 포인트 변환들을 수행한다. 양자화 10b 유닛 (54) 은 높은 비트-깊이 (부동소수점 또는 고정소수점) 에서의 원래의 데이터를 비디오 코덱들, 예를 들어, 비디오 인코더 (20) 및 비디오 디코더 (30) 에 의해 핸들링될 수 있는 비트-깊이로 변환한다. 예를 들어, 양자화 10b 유닛 (54) 은 HEVC 10-비트 인코딩으로 그 데이터를 코딩하도록, 그 데이터를 스케일링하고 그 스케일링된 데이터를 10-비트들로 표현되도록 양자화할 수도 있다. 역으로, 역양자화 10b 유닛 (64) 은 풀 비트 범위를 재생하기 위해 그 데이터를 역양자화 및 스케일링한다.
비디오 프리프로세서 유닛 (19) 은 다운샘플링을 수행하는 4:4:4 대 4:2:0 유닛 (56) 을 포함하지만, 비디오 포스트프로세서 유닛 (31) 은 업샘플링을 수행하는 4:2:0 대 4:4:4 유닛 (62) 을 포함한다. 크로마 컴포넌트들을 각 방향에 대해 2 만큼 다운샘플링하는 것은 주관적 시각적 영향을 주지 않지만, 데이터의 양은 이미 코덱 압축 전에 2 의 팩터에 의해 분할되는 것은 일반적으로 사실이기 때문에, 다수의 비디오 코딩 애플리케이션들은 4:2:0 크로마 포맷을 사용해오고 있다. HDR/WCG 의 경우, 그 관찰이 여전히 지속되는 것같이 보이고, 초기 시스템들에서 코덱은 4:2:0 크로마 포맷으로 표현된 비디오가 피딩된다. 이러한 식으로, HEVC 메인 10 프로파일은 HDR/WCG 비디오를 압축하기 위해 사용될 수도 있을 것이다.
도 5 는 도 3 의 예에 비해 대안적인 코딩 체인을 수행하는 다른 예시의 비디오 포스트프로세서 유닛 (31') 을 도시하는 블록도이다. 이러한 예에서, 비디오 포스트프로세서 유닛 (31') 은 적응적 재성형 유닛 (70), 크로마 업샘플링 유닛 (72), 컬러 인핸스먼트 유닛 (74), 컬러 공간 변화 유닛 (76), 및 적응적 TF' (78) 를 포함한다. 비디오 포스트프로세서 유닛 (31') 은 또한 적응적 재성형 메타스트림 (80), 컬러 인핸스먼트 메타스트림 (82), 및 컬러 공간 메타스트림 (84) 을 수신한다.
HDR/WCG (w15454) 에 관한 MPEG Ad Hoc 그룹에서 기술된 바와 같이, HDR 에 대한 일련의 '공통 아키텍쳐들' 이 존재한다. 도 5 는 HDR 에 대한 예시의 공통 아키텍쳐를 나타낸다. 크로마 업샘플링 유닛 (72) 은 반드시 HDR 에 대한 기술의 부분인 것은 아니다. HDR 출력 데이터는 부동소수점 값들로 표현될 수도 있다. 본 개시의 일부 예들에서, 역양자화 단계는 예를 들어 도 3 에 도시된 바와 같은, 도 5 에 도시된 아키텍쳐와 함께 사용될 수도 있다.
비디오 코딩 표준들에서의 적합성. 비디오 디코더는 컨퍼밍 (conforming) 비트스트림을 그 디코더로 및 가상 참조 디코더 (HRD) 로 전달하고 그 2 개의 디코더들의 출력의 값들 및 타이밍 또는 순서를 비교함으로써 적합성에 대해 테스트된다. 디코더는 예를 들어 HRD 에 의해 출력된 모든 크로핑된 디코딩된 화상들이 테스트하의 디코더에 의해 또한 출력될 때 AVC 또는 HEVC 사양에 따른다고 일컬어진다. 즉, 출력되는 모든 샘플들의 값들은 특정된 디코딩 프로세스에 의해 생성된 샘플들의 값들과 동일하다. 적합성은 디코딩된 비디오의 품질을 보장한다. 디코딩된 비디오는 HRD 에 대해 '비트-정확 (bit-exact)' 하다.
예시의 비디오 코딩 표준들 (MPEG-1, MPEG-2, H.261, H.263, AVC, HEVC ...) 에서의 적합성 포인트는 (정수 비트 깊이에서 적절한 chroma_format 을 갖는) 복원된 디코딩된 프레임들의 HRD 출력 버퍼 및 HRD 모델 또는 더 높은 레벨 STD (MPEG-2 전송 스트림들) 에 의해 암시된 그들의 타이밍이었다. 포스트 루프 필터 4:2:0 출력 이외의 임의의 것 또는 (4:4:4 소스와 같은) 4:2:0 이전의 비디오 신호에 대한 적합성 포인트를 포함하는 코어에서 4:2:0 비디오 코덱을 갖는 적합성 모델이 존재하지 않았다.
4:4:4 크로마 포맷으로부터 4:2:0 크로마 포맷으로 및 역으로 변환하는 것은 다운샘플링 및 업샘플링 필터들을 채용한다. 이러한 프로세스의 성능은 선택된 다운샘플링 및 업샘플링 필터들에 그리고 컨텐츠 특성들에 민감할 수 있다. 적응적 스케일링 방법들은 그 스케일링이 각각의 타입의 영역에 대해, 예를 들어 평활한 영역들, 에지들, 텍스쳐들 등에 대해 잘 수행되도록 컨텐츠의 로컬 특성들에 의존하여 필터들을 변경하기 위해 사용된다. 다수의 제조자들은 그들의 디바이스들 (TV, 모니터들 등) 에 대한 최선의 품질을 획득하기 위해 그리고 경쟁자들로부터 구별하기 위한 방식으로서 전유의 방법들을 사용한다. 따라서, 비디오 코딩 표준들은 디코더/수신기 측에서 적용될 임의의 특정의 업샘플링 필터들을 부과하지 않는다. 기껏해야, 연쇄된 동작들에서 비열화된 4:2:0 크로마 보호를 제공하기 위해 4:2:2/4:2:0 및 4:2:0/4:2:2 포맷 변환의 방법을 정의하는 추천인 SMPTE RP-2050 에 대한 HEVC/AVC 캐리지인 '크로마 재샘플링 힌트 SEI (보충 강화 정보)' 의 예가 존재한다.
그러나, 4:2:0 디코딩된 샘플들에 적용될 업샘플링 필터들은 여기에 정의된 바와 같은 HDR 시스템에 대한 적합성을 갖도록 정의되어야 하며, 이는 입력 및 출력이 4:4:4 크로마 포맷이기 때문이다. 이것은 표준에 따르는 디코더들에 대해 적합성 포인트들을 정의해야 하는 HDR 비디오 압축 시스템을 표준화하는 방법에 관한 문제를 제기한다.
다른 양태는 부동소수점 동작들이며, 이들은 특정의 아키텍쳐에 매우 의존적이기 때문에 일반적으로 표준들에서 회피된다. 예를 들어, MPEG-1 및 2 는 특정된 부동소수점 동작들을 사용할 수 없었던 디코더들 상에서 드리프트를 야기했던 부동소수점에서의 역 DCT 를 정의한다 (IEEE 1180). 통계-지향 표준, ANSI/IEEE 1180-1990 은 컴플라이언트 8x8 IDCT (inverse discrete cosine transform) 에 대한 정확성을 특정했다. 예상된 출력 및 품질로부터의 드리프트 유발 일탈은 보장되지 않을 수 있다. MPEG-1 은 무엇보다도 하드웨어 디코더들에서 가장 통상적인 저정밀도 구현들에서의 역 DCT 에러들의 축적에 기인하여 I-프레임들 사이에 최대 수의 프레임들을 요구했다. ANSI/IEEE 1180-1990 은, 고정소수점 역 DCT 가 비디오 디코딩을 위해 정의되었을 때까지 그 표준이 MPEG 표준 패밀리에 의해 계속적으로 참조되었음에도 불구하고, 2 회 행정적으로 철회되는 것을 포함하여, 인기가 없었다.
이러한 점에서, 비디오 코딩 표준에서 부동소수점 동작들을 요구하는 것은, 그것이 표준의 모든 구현에 높은 바 (high bar) 의 정밀도를 부과하기 때문에, 문제가 있을 수 있다. 일부 예들에서 여기에 정의된 바와 같은 HDR 은 10-비트들로부터 부동소수점까지 역 양자화 단계를 갖고, 그 후 그 데이터는 부동소수점 도메인에서 프로세싱된다 (예를 들어, 역 TF, 컬러 변환).
도 6 은 예를 들어 도 1 및 도 2 의 비디오 프리프로세싱 유닛 (19) 에 의해 본질적으로 수행될 수도 있는 예시의 HDR 프리-프로세스를 도시하는 흐름도이다. 도 6 의 예에서, 처음에, (도 1 의 비디오 소스 (18) 와 같은) 카메라는 제한된 범위에서 선형 프라이머리 값들을 캡쳐한다 (90). 비디오 프리프로세싱 유닛 (19) 은 그 후 정의된 잡음 플로어 아래의 격리된 레벨 값들을 제거하고 카메라 애퍼쳐 메타데이터에 따라 풀 동적 범위까지 화소 값들을 스케일링할 수도 있는 잡음 제거 및 디베이어 (de-Bayer) 입력 디바이스 변환 (IDT) 을 수행할 수도 있다 (92). 비디오 프리프로세싱 유닛 (19) 은 예를 들어 룩 변경 변환 (look modification transform: LMT), 참조 렌더링 변환 (RRT) 등을 포함할 수도 있는 컬러 타이밍 및 그레이딩 프로세스를 수행할 수도 있다 (94). 컬러 타이밍 및 그레이딩 프로세스를 수행하기 위해, 비디오 프리프로세싱 유닛 (19) 은 마스터링 모니터로부터 데이터를 수신할 수도 있다 (96). 일반적으로, 이러한 프로세스는 원하는 룩을 확립하고 디바이스-레벨 렌더링을 수행한다.
다음에, 비디오 프리프로세싱 유닛 (19) 의 OETF 유닛 (50) 은, 예를 들어 도 4 에 도시된 바와 같은 출력 디바이스 변환 (ODT) 을 통해 PQ 곡성에 따라 선형 입력 데이터를 변환하는 것을 포함할 수도 있는 OETF 를 수행할 수도 있다 (98). 그 후, R'G'B' 대 Y'CbCr 유닛 (52) 는 컬러 공간 변환을 사용하여 입력 R'G'B' 데이터를 Y'CbCr 데이터로 변환할 수도 있다 (100). 4:4:4 대 4:2:0 유닛 (56) 은 그 후 4:4:4 입력 데이터를 4:2:0 데이터로 감소시키기 우해 크로마 재샘플링을 수행할 수도 있다 (102). 비디오 프리프로세싱 유닛 (19) 은 그 후 부동소수점 값들을 정수 샘플들로 변환할 수도 있다 (104).
대안적인 구현들은 부동소수점 동작들의 정확성을 근사화할 고정소수점 연산에서 포스트프로세싱 체인을 수행할 수 있을 것이다. 그러한 상황들에서, 부동소수점 표현으로의 데이터의 역양자화는 부동소수점 출력이 요구되지 않는 경우 회피될 수도 있거나, 그러한 출력이 요구되는 경우에는 프로세싱 체인의 종단에 로케이팅될 수도 있다.
국제 표준화 바디들 (예를 들어, MPEG) 은 포스트프로세싱 체인의 구현, 예를 들어, SEI 메시지들의 프로세싱, 또는 그것의 구현들의 정밀도를 특정하지 않은 것으로 보인다. 이것은 소정의 표준화 사양에 따르기로 표방하는 디바이스가 포스트프로세싱의 구현이 불충분한 표현 정확성에서 수행되었다는 사실에 기인하여 부적당한 서비스 품질을 제공할 상황들을 야기할 수도 있다.
코어 비디오 코덱을 사용하여 HDR 표준의 특정의 프로파일들 및 레벨들에 대한 적합성 포인트들을 정의하는 것에 관련한 2 개의 주요 문제들이 존재한다:
1. 크로마 업샘플링 필터들
2. 부동소수점 동작들
본 개시는 적합성 포인트들을 정의하기 위해 이들 문제들을 극복하기 위해 사용될 수도 있는 기법들을 기술한다. 특히, 본 개시는 위의 문제들을 다루는 수개의 기법들을 기술하며, 따라서 포스트프로세싱 및 코어 코덱 (예를 들어, HEVC 메인 10) 을 사용하여 HDR 표준의 사양을 허용한다. 본 개시의 기법들은 다른 코어 코덱들과 함께 사용될 수도 있다는 것이 이해되어야 한다. 또한, 이하에 기술된 기법들 각각은 독립적으로 사용될 수도 있거나, 이하에 기술된 기법들의 임의의 다른 조합과 임의의 조합으로 사용될 수도 있다는 것이 이해되어야 한다.
HDR-컨포먼트 (conformant) 비트스트림들. 비트스트림은 그것이 다음의 조건들을 만족시키는 경우 레벨 L 및 타이어 T 에서 소정의 HDR-프로파일에 따르고 있는 것으로 일컬어진다:
- 비트스트림은 레벨 L 및 타이어 T 에서 HEVC 메인 10 과 호환가능하다
- 비트스트림은 지시된 디코딩된 샘플들의 3 개의 컴포넌트들 (예를 들어, RGB, YCbCr, YUV 등) 이 맵핑되는 방법을 특정하는 룩업 테이블 계수들을 특정하는 제 1 SEI 메시지를 포함한다.
하나의 예에서, 제 1 SEI 메시지는 다음의 리스트 중 하나로서 특정되지만,이것에 제한되지 않는다: 컴포넌트 스케일링 SEI 메시지, 컬러 맵핑 정보 SEI, 동적 범위 조정 SEI 메시지, 및 룩업 테이블의 구현이 디코딩된 화상들의 출력에 직접 적용되는 SEI 메시지의 시맨틱스들에 의해 특정된다.
다른 예에서, 비트스트림은 업샘플링, 컬러 변환 및 역전달함수의 적용과 관련된 변수들을 특정하는 제 2, 제 3 및 제 4 SEI 메시지의 존재에 기초하여 소정의 HDR 프로파일들에 따르고 있는 것으로 일컬어진다. HDR 컨포먼트 디코더들의 프로파일들의 수개의 대안들은 아래에 주어진다.
HDR-컨포먼트 디코더들. 소정의 레벨 L 및 타이어 T 에 대한 HDR 프로파일에 따르는 것으로 일컬어지는 디코더는 레벨 L 및 타이어 T 의 HDR 프로파일에 따르고 있는 모든 비트스트림들을 디코딩하고, 제 1 SEI 메시지에 의해 특정된 룩업 테이블을 사용하여 맵핑된 HEVC 메인 10 컴플라이언트 디코더의 출력과 (룩업 테이블을 사용하여 맵핑되는 크롭핑된 출력 화상들의 화소 값들의 면에서) 동일한 출력을 제공할 것이다.
도 7 은 테스트하의 비디오 디코더 (122) 가 특정의 비디오 코딩 표준, 또는 비디오 코딩 표준의 특정의 프로파일을 따르는지 여부를 결정하는 예시의 표준 컴플라이언스 디바이스를 도시하는 블록도이다. 따르기 위해, 비디오 디코더는 특정의 비디오 코딩 표준에 대해 (잠재적으로는 또한 HEVC 의 HDR 프로파일과 같은 비디오 코딩 표준의 특정의 프로파일에 대해) 비디오 비트스트림을 디코딩하고, 그렇게 해서, 참조 비디오 디코더 (예를 들어, HRD) 의 출력에의 룩업 테이블의 적용 후에 획득되는 바와 같은 룩업 테이블을 사용하여 포스트프로세싱한 후에 출력 화상들에서의 각 화소 위치에 대한 동일한 샘플 값들을 생성해야 한다.
이러한 예에서, 표준 컴플라이언스 디바이스 (120) 는 테스트하의 비디오 디코더 (122), 룩업 테이블 (124) 을 포함하는 포스트프로세싱 유닛 (144), 참조 비디오 디코더 (126), 룩업 테이블 (128) 을 포함하는 포스트프로세싱 유닛 (146), 및 비교 유닛 (130) 을 포함한다. 단일의 표준 컴플라이언스 디바이스 (120) 내에 도시되지만, 다른 예들에서는, 테스트하의 비디오 디코더 (122), 참조 비디오 디코더 (126), 및 비교 유닛 (130) 은 별개의 디바이스들에 대응할 수도 있다는 것이 이해되어야 한다.
이러한 예에서, 테스트하의 비디오 디코더 (122) 및 참조 비디오 디코더 (126) 양자 모두는 동일한 입력을 수신한다. 참조 비디오 디코더 (126) 는 특정의 비디오 코딩 표준에 대한 모델 비디오 디코더를 나타낸다. 테스트하의 비디오 디코더 (122) 및 참조 비디오 디코더 (126) 양자는 포스트프로세싱 데이터를 포함하는 SEI 메시지를 포함하는 비디오 비트스트림을 수신한다. SEI 메시지는 예를 들어 4:2:0 포맷 비디오 데이터를 4:4:4 포맷으로 업샘플링하기 위해 사용될 업샘플링 계수들을 포함할 수 있다.
이러한 예에서, 테스트하의 비디오 디코더 (122) 는 수신된 비디오 스트림의 비디오 데이터를 디코딩한다. 테스트하의 비디오 디코더 (122) 는 포스트프로세싱 유닛 (144) 으로 (또한 크롭핑될 수도 있는) 디코딩된 비디오 데이터 (134) 를 전달한다. 또, 테스트하의 비디오 디코더 (122) 는 SEI 메시지로부터 포스트프로세싱 데이터를 추출하고 포스트프로세싱 데이터 (132) 를 포스트프로세싱 유닛 (144) 으로 전달한다. 포스트프로세싱 유닛 (144) 은 포스트프로세싱 데이터 (132) 를 사용하여 룩업 테이블 (124) 을 구성하고, 그 후 룩업 테이블 (124) 을 사용하여 디코딩된 비디오 데이터 (134) 를 포스트프로세싱하여, 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (140) 를 형성한다.
유사하게, 참조 비디오 디코더 (126) 는 수신된 비디오 비트스트림의 비디오 데이터를 디코딩한다. 참조 비디오 디코더 (126) 는 포스트프로세싱 유닛 (146) 으로 (또한 크롭핑될 수도 있는) 디코딩된 비디오 데이터 (138) 를 전달한다. 또, 참조 비디오 디코더 (126) 는 SEI 메시지로부터 포스트프로세싱 데이터를 추출하고 포스트프로세싱 데이터 (136) 를 포스트프로세싱 유닛 (146) 으로 전달한다. 포스트프로세싱 유닛 (146) 은 포스트프로세싱 데이터 (136) 를 사용하여 룩업 테이블 (128) 을 구성하고, 그 후 룩업 테이블 (128) 을 사용하여 디코딩된 비디오 데이터 (138) 를 포스트프로세싱하여, 참조 포스트프로세싱된 디코딩된 비디오 데이터 (142) 를 형성한다.
비교 유닛 (130) 은 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (140) 를 참조 포스트프로세싱된 디코딩된 비디오 데이터 (142) 와 비교한다. 일부 예들에서, 이러한 비교는 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (140) 및 참조 포스트프로세싱된 디코딩된 비디오 데이터 (142) 의 화상들의 화소들 및 화상 출력 순서들이 동일하게 매칭하는지 여부를 결정하는 것을 포함할 수 있다. 일부 예들에서, 이러한 비교는 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (140) 및 참조 포스트프로세싱된 디코딩된 비디오 데이터 (142) 의 화상들의 화소들 사이의 에러 (예를 들어, 미리 정의된 임계 에러) 의 소정의 마진을 허용할 수 있다. 임의의 경우에, 비교 유닛 (130) 은, 예를 들어, 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (140) 및 참조 포스트프로세싱된 디코딩된 비디오 데이터 (142) 의 화상들의 화소들 및 화상 출력 순서들이 동일하게 매칭하거나, (예를 들어, 상술된 미리 정의된 임계 에러에 따라) 소정의 허용 정도 내에 있는 경우에, 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (140) 가 참조 포스트프로세싱된 디코딩된 비디오 데이터 (142) 와 매칭한다고 결정할 수 있다. 따라서, 표준 컴플라이언스 디바이스 (120) 는 테스트하의 비디오 디코더 (122) 가 참조 비디오 디코더 (126) 가 모델 비디오 디코더인 관련된 비디오 코딩 표준에 따른다고 결정할 수 있다.
도 8 은 테스트하의 비디오 디코더 (152) 가 특정의 비디오 코딩 표준, 또는 비디오 코딩 표준의 특정의 프로파일을 따르는지 여부를 결정하는 예시의 표준 컴플라이언스 디바이스 (150) 를 도시하는 블록도이다. 따르기 위해, 비디오 디코더는 특정의 비디오 코딩 표준에 대해 (잠재적으로는 또한 HEVC 의 HDR 프로파일과 같은 비디오 코딩 표준의 특정의 프로파일에 대해) 비디오 비트스트림을 디코딩하고, 그렇게 해서, 참조 비디오 디코더 (예를 들어, HRD) 의 출력에의 룩업 테이블의 적용 후에 획득되는 바와 같은 룩업 테이블을 사용하여 포스트프로세싱한 후에 출력 화상들에서의 각 화소 위치에 대한 동일한 샘플 값들을 생성해야 한다.
이러한 예에서, 표준 컴플라이언스 디바이스 (150) 는 테스트하의 비디오 디코더 (152), 룩업 테이블 (156) 을 포함하는 포스트프로세싱 유닛 (154), 참조 비디오 디코더 (162), 룩업 테이블 (166) 을 포함하는 포스트프로세싱 유닛 (164), 및 비교 유닛 (172) 를 포함한다. 단일의 표준 컴플라이언스 디바이스 (120) 내에 도시되지만, 다른 예들에서는, 테스트하의 비디오 디코더 (152), 참조 비디오 디코더 (162), 및 비교 유닛 (172) 은 별개의 디바이스들에 대응할 수도 있다는 것이 이해되어야 한다.
이러한 예에서, 테스트하의 비디오 디코더 (152) 및 참조 비디오 디코더 (162) 양자 모두는 동일한 입력을 수신한다. 참조 비디오 디코더 (162) 는 특정의 비디오 코딩 표준에 대한 모델 비디오 디코더를 나타낸다. 테스트하의 비디오 디코더 (152) 및 참조 비디오 디코더 (162) 양자는 포스트프로세싱 데이터를 포함하는 하나 이상의 SEI 메시지들을 포함하는 비디오 비트스트림을 수신한다. SEI 메시지들은 예를 들어 4:2:0 포맷 비디오 데이터를 4:4:4 포맷으로 업샘플링하기 위해 사용될 업샘플링 계수들, 특정의 비트 깊이로 값들을 증가시키기 위한 역양자화 데이터, 및 (예를 들어, YUV 로부터 RGB 로의) 컬러 공간들 사이를 변환할 때 사용될 데이터를 포함할 수도 있다.
이러한 예에서, 테스트하의 비디오 디코더 (152) 는 수신된 비디오 비트스트림의 비디오 데이터를 디코딩한다. 테스트하의 비디오 디코더 (152) 는 포스트프로세싱 유닛 (154) 으로 (또한 크롭핑될 수도 있는) 디코딩된 비디오 데이터 (176) 를 전달한다. 또, 테스트하의 비디오 디코더 (152) 는 SEI 메시지들로부터 포스트프로세싱 데이터를 추출하고 포스트프로세싱 데이터 (174) 를 포스트프로세싱 유닛 (154) 으로 전달한다. 포스트프로세싱 유닛 (154) 은 포스트프로세싱 데이터 (174) 를 사용하여 룩업 테이블 (156) 을 구성하고, 그 후 룩업 테이블 (156) 을 사용하여 디코딩된 비디오 데이터 (176) 를 포스트프로세싱한다. 예를 들어, 룩업 테이블 (156) 은 포스트프로세싱 유닛 (154) 이 4:2:0 비디오 데이터를 4:4:4 비디오 데이터로 업샘플링하기 위해 적용하는 업샘플링 계수들을 저장할 수도 있다. 포스트프로세싱 데이터 (174) 는 또한 (예를 들어, 역양자화 동안) 특정의 비트 깊이로 개개의 샘플들을 업샘플링할 때 사용될 업샘플링 데이터를 포함할 수도 있다. 따라서, 업샘플링 유닛 (158) 은 4:4:4 비디오 데이터에 업샘플링 데이터를 적용할 수도 있다. 게다가, 포스트프로세싱 데이터 (174) 는 루미넌스 및 크로미넌스 컬러 공간 (예를 들어, YUV 컬러 공간) 내의 데이터를 레드-그린-블루 (RGB) 컬러 공간으로 변환하기 위해 사용되는 계수들을 포함할 수도 있다. 따라서, YUV 대 RGB 유닛 (160) 은 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (178) 를 생성하기 위해 YUV 로부터 RGB 로 역양자화된 샘플들을 변환할 때 이들 계수들을 적용할 수도 있다.
유사하게, 참조 비디오 디코더 (162) 는 수신된 비디오 비트스트림의 비디오 데이터를 디코딩한다. 참조 비디오 디코더 (162) 는 포스트프로세싱 유닛 (164) 으로 (또한 크롭핑될 수도 있는) 디코딩된 비디오 데이터 (182) 를 전달한다. 또, 참조 비디오 디코더 (162) 는 SEI 메시지로부터 포스트프로세싱 데이터를 추출하고 포스트프로세싱 데이터 (180) 를 포스트프로세싱 유닛 (164) 으로 전달한다. 포스트프로세싱 유닛 (164) 은 포스트프로세싱 데이터 (180) 를 사용하여 룩업 테이블 (166) 을 구성하고, 그 후 룩업 테이블 (166) 을 사용하여 디코딩된 비디오 데이터 (182) 를 포스트프로세싱한다. 예를 들어, 룩업 테이블 (166) 은 포스트프로세싱 유닛 (164) 이 4:2:0 비디오 데이터를 4:4:4 비디오 데이터로 업샘플링하기 위해 적용하는 업샘플링 계수들을 저장할 수도 있다. 포스트프로세싱 데이터 (180) 는 또한 (예를 들어, 역양자화 동안) 특정의 비트 깊이로 개개의 샘플들을 업샘플링할 때 사용될 업샘플링 데이터를 포함할 수도 있다. 따라서, 업샘플링 유닛 (168) 은 4:4:4 비디오 데이터에 업샘플링 데이터를 적용할 수도 있다. 게다가, 포스트프로세싱 데이터 (180) 는 루미넌스 및 크로미넌스 컬러 공간 (예를 들어, YUV 컬러 공간) 내의 데이터를 레드-그린-블루 (RGB) 컬러 공간으로 변환하기 위해 사용되는 계수들을 포함할 수도 있다. 따라서, YUV 대 RGB 유닛 (170) 은 참조 포스트프로세싱된 디코딩된 비디오 데이터 (184) 를 생성하기 위해 YUV 로부터 RGB 로 역양자화된 샘플들을 변환할 때 이들 계수들을 적용할 수도 있다.
비교 유닛 (172) 은 그 후 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (178) 를 참조 포스트프로세싱된 디코딩된 비디오 데이터 (184) 와 비교한다. 일부 예들에서, 이러한 비교는 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (178) 및 참조 포스트프로세싱된 디코딩된 비디오 데이터 (184) 의 화상들의 화소들 및 화상 출력 순서들이 동일하게 매칭하는지 여부를 결정하는 것을 포함할 수도 있다. 일부 예들에서, 이러한 비교는 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (178) 및 참조 포스트프로세싱된 디코딩된 비디오 데이터 (184) 의 화상들의 화소들 사이의 에러 (예를 들어, 미리 정의된 임계 에러) 의 소정의 마진을 허용할 수 있다. 임의의 경우에, 비교 유닛 (172) 은, 예를 들어, 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (178) 및 참조 포스트프로세싱된 디코딩된 비디오 데이터 (184) 의 화상들의 화소들 및 화상 출력 순서들이 동일하게 매칭하거나, (예를 들어, 상술된 미리 정의된 임계 에러에 따라) 소정의 허용 정도 내에 있는 경우에, 테스트하의 포스트프로세싱된 디코딩된 비디오 데이터 (178) 가 참조 포스트프로세싱된 디코딩된 비디오 데이터 (184) 와 매칭한다고 결정할 수도 있다. 따라서, 표준 컴플라이언스 디바이스 (150) 는 테스트하의 비디오 디코더 (152) 가 참조 비디오 디코더 (162) 가 모델 비디오 디코더인 관련된 비디오 코딩 표준에 따른다고 결정할 수도 있다.
HDR 의 추가의 프로파일들은 적합성 포인트들을 테스트하기 위해 특정되는 추가의 단계들에 기초하여 정의될 수도 있다. 예를 들어, HDR 의 소정의 프로파일을 따르는 디코더는 룩업 테이블, 업샘플링, 컬러 변환, 역양자화, 및 EOTF 의 적용을 포함하지만 이들에 제한되지 않는 단계들이 후속되는 비디오 코덱의 HRD 에 의해 생성되는 것과 동일한 샘플 값들을 생성할 것이다.
여러 HDR 프로파일들에 대해 바람직하고, 또한 일부 HDR 프로파일들을 정의하는 수개의 특징들을 존재한다. 이들 특징들 중 하나 이상은 프로파일의 사양을 위해 독립적으로 또는 결합하여 포함될 수도 있다.
1. 네스팅된 HDR 적합성 포인트들: 2 이상의 적합성 포인트들이 HDR 체인의 상이한 부분들에서 정의되고 디코더들은 그 체인 내의 하나 또는 다수의 포인트(들) 에 따를 수 있다:
예를 들어, 도 9 는 다수의 적합성 포인트들 (CPs) 을 포함하는 프로세스의 개념도이다. 이러한 예에서, HEVC 디코딩 프로세스 (200) 가 존재한다. 제 1 적합성 포인트 (CP 202) 는 HEVC 디코딩 프로세스 (200) 직후에 정의된다. 제 2 CP (208) 는 (그 자체가 HDR 데이터 (204) 를 수락하는) 4:2:0 대 4:4:4 업샘플링 프로세스 (206) 후이다. 제 3 CP (214) 는 HDR 데이터 (210) 에 대해 동작하는 역양자화 프로세스 (212) 후이다. 마지막 적합성 포인트, CP (220), 는 (4:4:4, RGB, 부동소수점 도메인에서) HDR 데이터 (216) 에 대해 동작하는 EOTF 프로세스 (218) 에 후속하는 체인의 종단에서 정의된다. EOTF 프로세스 (218) 의 결과는 HDR 데이터 (222) 이며, 이것은 이러한 데이터가 CP (224) 에서 참조 데이터와 매칭하는 경우 (및 모든 다른 적합성 포인트들이 통과된 경우) 적합하다고 일컬어 질 수도 있다.
그 후, 디코더는 체인 내의 다수의 포인트(들) 중 하나까지 HDR 프로파일을 따르고 있다. 도 9 에서, 디코더는 출력이 디코더 직후 HDR 출력과 동일한 경우 CP (202) 에서 따라진다. 디코더는 그것이 포스트프로세싱 체인의 종단 (도 9 의 CP (224)) 에서 HDR 데이터 (222) 와 동일한 출력을 생성하는 경우 완전한 적합성 (단-대-단) 을 갖는다. 네스팅된 적합성에 대한 적합성 테스트들은 도 7 및 도 8 에 도시된 예들로부터 쉽게 확장가능하다.
따라서, 주어진 타이어 및 레벨에서 특정의 HDR 프로파일을 따르는 디코더는 타이어, 레벨 또는 프로파일에 따르는 모든 비트스트림들을 정확하게 디코딩하고 소정의 컨포밍 포인트(들) 에서 수치적으로 동일한 크롭핑된 디코딩된 출력 화상들을 생성한다; 디코더는 반드시 특정된 포인트(들) 후에 특정된 디코딩 프로세스를 사용하고 있지도 않고, 그것은 컨포밍 포인트(들) 후에 여기에 특정된 프로세스에 의해 생성된 것들과 수치적으로 동일한 크롭핑된 디코딩된 출력 화상들을 생성하지도 않는다.
2. 일부 대안들은 디코더에 후속하는 단계들에 대한 HEVC 사양 (또는 다른 사양들) 에서 부동소수점 산술 및 업샘플링 필터들에 대한 부동소수점 표준 (예를 들어, IEEE 754-2008) 을 지칭 (표준화) 한다.
3. 코어 HDR: HDR 포스트프로세싱은 디코더 출력 비트-깊이 도메인 (또는 출력 비트-깊이 플러스 소정 양) 에서, 동일한 컬러 공간에서 그리고 동일한 크로마 포맷에서 정의된다.
이러한 식으로, 현재의 적합성 정의는 아마도 출력 비트 깊이, 컬러 공간 또는 크로마 포맷을 변경하지 않는 추가적인 프로세싱을 제외하고, HEVC (또는 다른 코덱) 적합성으로부터 변경되지 않은 채 유지될 것이다.
4. 2 처럼, 그러나 컬러 변환이 코덱 출력 비트-깊이에 있도록 강제한다
5. 4:2:0 대 4:4:4 변환에 대한 조건적 적합성
a) HDR HEVC 은 업샘플링 필터를 추천한다 (또는 '크로마 재샘플링 힌트 SEI' 를 사용하여 시그널링된다)
b) 적합성이 위의 a) 에서의 필터를 사용하여 디코더에 대해 컨디셔닝된다.
c) 그 필터가 사용되는 경우, 디코더 출력은 HRD 출력과 매칭해야 한다 (적합성).
d) 그러나, 그 필터의 사용은 요구되지 않는다 ('반드시 해야한다 (shall)' 대신에 '해야한다 (should)').
6. (규범적인 포스트프로세싱을 포함하는) 디코더 출력이 비트-정확한 것이 아니라 HRD 출력의 범위 내에 있는 HDR 에 대한 근사한 적합성
HRD 출력의 '범위 내 (within range)' 는 출력 도메인에서의 상대적인 에러 또는 절대적인 에러의 면에서 정의된다. 일부 대안들에서, 추가적인 단계는 부동소수점 데이터를 정수/고정수소점 도메인으로 변환하기 위해 포함되고 (다시 TF 를 적용하고 있을 수도 있고), 적합성은 그 다음 포인트에서 평가된다.
7. 포스트프로세싱 체인의 시맨틱스 (예를 들어, SEI 메시지들에 의해 정의된 프로세스들의 시맨틱스) 는 고정소수점 산술 및 타겟 비트 깊이에 있도록 변경된다. 이러한 식으로, 적합성 포인트가 보장될 수 있다.
8. 크롭핑된 디코딩된 화상들에 직접 적용될 출력에서 각 컴포넌트에대한 룩업 테이블을 표준화. 룩업 테이블을 특정하기 위해 필요로 되는 계수들은 메타데이터 또는 SEI 메시지의 부분으로서 시그널링되고, 룩업 프로세스는 SEI 메시지 또는 메타데이터의 시맨틱스에 의해 정의된 바와 같이 정의된다. 대안적으로, 각 컴포넌트에 대한 룩업 테이블은 프로세스들의 적용이 제 2 SEI 메시지에 의해 특정된 후 크롭핑된 디코딩된 화상들에 적용된다.
위의 솔루션들 중 하나 이상의 조합들이 가능하다. 예를 들어, 업샘플링 필터는 고정될 수 있지만, 근사 적합성이 여전히 나머지 프로세싱 블록들의 일부의 부동소수점 산술에 기인하여 요구된다.
도 10 은 본 개시의 기법들에 따른 예시의 방법을 도시하는 플로우챠트이다. 도 10 의 방법은 예를 들어 도 1 의 목적지 디바이스 (14), 도 7 의 표준 컴플라이언스 디바이스 (120), 또는 도 8 의 표준 컴플라이언스 디바이스 (150) 에 의해 수행될 수도 있다. 예시의 목적으로, 도 10 의 방법은 (예를 들어, 도 3 및 도 5 를 참조하여 논의된 바와 같이) 도 1 의 목적지 디바이스 (14) 및 그것의 여러 예시의 컴포넌트들을 참조하여 설명된다.
처음에, 비디오 디코더 (30) 는 비트스트림의 비디오 데이터를 디코딩한다 (250). 이러한 예에서, 비트스트림은 포스트프로세싱 데이터를 특정하는 하나 이상의 SEI 메시지들을 포함한다고 여겨진다. 예를 들어, 비트스트림은 컴포넌트 스케일링 SEI 메시지, 컬러 재맵핑 정보 SEI, 또는 동적 범위 조정 SEI 메시지, 또는 추가적인거나 대안적인 포스트프로세싱 데이터를 포함하는 다른 그러한 SEI 메시지들 중 하나 이상을 포함할 수도 있다. 비디오 디코더 (30) 는 또한 비트스트림으로부터 SEI 메시지들을 추출하고 (252), SEI 메시지들로부터 포스트프로세싱 데이터를 추출한다 (254). 비디오 디코더 (30) 는 그 후 비디오 포스트프로세서 유닛 (31) (도 1) 과 같은 하나 이상의 포스트프로세싱 유닛들로 디코딩된 비디오 데이터 및 포스트프로세싱 데이터를 전송한다 (256).
비디오 포스트프로세서 유닛 (31) 은 그 후 비디오 디코더 (30) 로부터 수신된 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터를 포스트프로세싱한다 (258). 예를 들어, 비디오 포스트프로세서 유닛 (31) (특히, 도 3 의 4:2:0 대 4:4:4 유닛 (62)) 은 (예를 들어, 컴포넌트 스케일링 SEI 메시지로부터 추출된) 포스트프로세싱 데이터를 사용하여 4:2:0 크로마 포맷으로부터 4:4:4 크로마 포맷으로 디코딩된 비디오 데이터를 업샘플링할 수도 있다. 추가적으로 또는 대안적으로 도 3 의 역양자화 10b 유닛 (64) 은 (예를 들어, 동적 범위 조정 SEI 메시지로부터 추출된) 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터의 화소 값들에 정밀도를 추가 (즉, 역양자화) 할 수도 있다. 추가적으로 또는 대안적으로, Y'CbCr 대 R'G'B' 유닛 (66) 은 예를 들어 (컬러 재맵핑 정보 SEI 메시지로부터 추출될 수도 있는) 포스트프로세싱 데이터를 사용하여 비디오 데이터를 루미넌스 및 크로미넌스 컬러 공간 (예를 들어, Y'CbCr) 으로부터 레드-그린-블루 (RGB) 컬러 공간으로 변환할 수도 있다. 추가적으로 또는 대안적으로, EOTF 유닛 (68) 은 포스트프로세싱 데이터를 사용하여 디코딩된 비디오 데이터에 대해 EOTF 함수를 실행할 수도 있다. 비디오 포스트프로세서 유닛 (31) 은 그 후 프로세싱된 디코딩된 비디오 데이터를 출력할 수도 있다 (260).
더욱이, 출력된 프로세싱된 디코딩된 비디오 데이터는 비디오 디코더 (예를 들어, 이 예에서, 비디오 디코더 (30)) 가 적용가능한 비디오 코딩 표준에 따르는지 여부를 결정하기 위해 테스트될 수도 있다. 특히, 도 10 의 단계들 (250-260) 은 각각 도 7, 도 8 의 테스트하의 비디오 디코더들 (122, 152) 과 같은 테스트하의 비디오 디코더에 의해 수행될 수도 있다. 또, 도 10 의 단계들 (250-260) 은 또한 각각 도 7, 도 8 의 참조 비디오 디코더들 (126, 162) 과 같은 참조 비디오 디코더에 의해 수행될 수도 있다. 그 후, 각각 도 7, 도 8 의 비교 유닛 (130, 172) 과 같은 비교 유닛은 출력들이 매칭하는지 여부를 결정하기 위해 테스트하의 비디오 디코더의 출력들을 참조 비디오 디코더의 출력과 비교할 수도 있다 (262). 그 비교는 도 9 의 CP 들 (202, 208, 214, 220, 및/또는 224) 와 같은 임의의 다양한 적합성 포인트들에서 수행될 수도 있다. 테스트하의 비디오 디코더의 출력이 해당 적합성 포인트에서 참조 비디오 디코더의 대응하는 출력과 매칭하는지 여부에 기초하여, 비교 유닛은 테스트하의 비디오 디코더가 적합하다고 일컬어지는 적합성 포인트들 중 하나 이상을 결정할 수도 있다. 본 개시의 기법들은 또한 비디오 디코딩 및 포스트프로세싱의 통상 코스 동안 적용될 수도 있고, 출력이 표준에 대한 적합성에 대해 테스트되는 시나리오들에 반드시 제한되지는 않기 때문에, 박스 단계 (262) 가 이 단계가 선택적이라는 것을 표시하기 위해 점선을 사용하여 도시된다.
예시에 따라서는, 여기에 기술된 기법들 중 임의의 것의 소정의 액션들 또는 이벤트들은 상이한 시퀀스로 수행될 수 있거나, 추가되거나 병합되거나 함께 제거될 수도 있다 (예를 들어, 모든 기술된 액션들 또는 이벤트들이 기법들의 실시를 위해 필요한 것은 아니다). 게다가 소정의 예들에서, 액션들 또는 이벤트들은 예를 들어 순차적으로라기보다, 멀티-스레디드 프로세싱, 인터럽트 프로세싱, 또는 다수의 프로세서들을 통해 동시에 수행될 수도 있다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되면, 그 기능들은 컴퓨터 판독가능 매체 상에 하나 이상의 명령들 또는 코드로서 저장되거나 송신될 수도 있고 하드웨어 기반 프로세싱 유닛에 의해 실행될 수도 있다. 컴퓨터 판독가능 매체는, 예를 들면, 통신 프로토콜에 따라, 일 장소로부터 다른 장소로의 컴퓨터 프로그램의 전송을 가능하게 하는 임의의 매체를 포함하는 통신 매체, 또는 데이터 저장 매체와 같은 유형의 매체에 대응하는 컴퓨터 판독가능 저장 매체를 포함할 수도 있다. 이런 방식으로, 컴퓨터 판독가능 매체는 일반적으로, (1) 비일시적인 유형의 컴퓨터 판독가능 저장 매체 또는 (2) 신호 또는 캐리어 파와 같은 통신 매체에 대응할 수도 있다. 데이터 저장 매체는, 본 개시에서 설명된 기법들의 구현을 위해 명령들, 코드 및/또는 데이터 구조들을 취출하기 위하여 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 가용 매체일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독가능 매체를 포함할 수도 있다.
비한정적 예로서, 그러한 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장, 자기 디스크 저장 또는 다른 자기 저장 디바이스들, 플래시 메모리, 또는 명령 또는 데이터 구조의 형태로 원하는 프로그램 코드를 저장하는데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체로 적절히 칭해진다. 예를 들어, 명령들이 동축 케이블, 광섬유 케이블, 연선 (twisted pair), 디지털 가입자 라인 (DSL), 또는 적외선, 전파 (radio), 및 마이크로파와 같은 무선 기술을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되면, 그 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 전파, 및 마이크로파와 같은 무선 기술은 매체의 정의 내에 포함된다. 하지만, 컴퓨터 판독가능 저장 매체 및 데이터 저장 매체는 접속, 캐리어 파, 신호 또는 다른 일시적 매체를 포함하는 것이 아니라, 대신에 비일시적, 유형의 저장 매체를 포함한다는 것이 이해되야 한다. 여기에 사용된, 디스크 (disk) 및 디스크 (disc) 는 콤팩트 디스크 (CD), 레이저 디스크, 광 디스크, DVD (digital versatile disc), 플로피 디스크 및 블루레이 디스크를 포함하며, 여기서, 디스크 (disk) 는 보통 데이터를 자기적으로 재생하지만, 디스크 (disc) 는 레이저를 이용하여 광학적으로 데이터를 재생한다. 또한, 상기의 조합은 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령들은 하나 이상의 프로세서들, 이를테면 하나 이상의 디지털 신호 프로세서들 (DSPs), 범용 마이크로프로세서들, 주문형 반도체들 (ASICs), 필드 프로그램가능 로직 어레이들 (FPGAs), 또는 다른 동등한 집적 또는 이산 로직 회로에 의해 실행될 수도 있다. 따라서, 본원에 사용된 용어 "프로세서" 는 전술한 구조 중 임의의 것 또는 본원에 설명된 기법들의 구현에 적합한 임의의 다른 구조를 지칭할 수도 있다. 추가로, 일부 양태들에서, 여기서 설명된 기능은 인코딩 및 디코딩을 위해 구성된 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공되거나 또는 결합된 코덱에 포함될 수도 있다. 또한, 그 기법들은 하나 이상의 회로 또는 로직 엘리먼트들에서 완전히 구현될 수 있다.
본 개시의 기법들은 무선 핸드셋, 집적 회로 (IC) 또는 IC 들의 세트 (예를 들면, 칩 세트) 를 포함하여, 광범위하게 다양한 디바이스들 또는 장치들에서 구현될 수도 있다. 다양한 컴포넌트들, 모듈들 또는 유닛들이, 개시된 기술들을 수행하도록 구성된 디바이스들의 기능적인 양태들을 강조하기 위하여 본 개시에 설명되었지만, 상이한 하드웨어 유닛들에 의한 실현을 반드시 필요로 하는 것은 아니다. 오히려, 상술된 바처럼, 다양한 유닛들이 코덱 하드웨어 유닛에 결합될 수도 있거나, 또는 적합한 소프트웨어 및/또는 펌웨어와 함께, 상술된 하나 이상의 프로세서들을 포함하는 연동적인 (interoperative) 하드웨어 유닛들의 집합에 의해 제공될 수도 있다.
다양한 예들이 설명되었다. 이들 및 다른 예들은 다음의 청구항들의 범위 내에 있다.
Claims (28)
- 디코딩된 비디오 데이터를 프로세싱하는 방법으로서,
비디오 디코더에 의해, 비디오 코딩 표준에 따라 비디오 비트스트림의 비디오 데이터를 디코딩하는 단계로서, 상기 비디오 비트스트림은 상기 디코딩된 비디오 데이터에 대한 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 비디오 데이터를 디코딩하는 단계;
상기 비디오 디코더에 의해, 상기 SEI 메시지로부터 상기 HDR 포스트프로세싱 데이터를 추출하는 단계;
상기 비디오 디코더에 의해, 포스트프로세싱 유닛으로 상기 디코딩된 비디오 데이터 및 상기 HDR 포스트프로세싱 데이터를 제공하는 단계; 및
상기 포스트프로세싱 유닛에 의해, 상기 비디오 코딩 표준에 따라 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 디코딩된 비디오 데이터를 프로세싱하는 단계를 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 1 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 업샘플링하기 위한 룩업 테이블 계수들을 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 단계는, 상기 포스트프로세싱 유닛에 의해, 상기 룩업 테이블 계수들을 사용하여 상기 디코딩된 비디오 데이터를 업샘플링하는 단계를 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 2 항에 있어서,
상기 SEI 메시지는 크로마 재샘플링 힌트 SEI 메시지를 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 1 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 역양자화하기 위한 역양자화 데이터를 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 단계는, 상기 포스트프로세싱 유닛에 의해, 상기 역양자화 데이터를 사용하여 상기 디코딩된 비디오 데이터를 역양자화하는 단계를 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 1 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 루미넌스 및 크로미넌스 컬러 공간으로부터 레드-그린-블루 컬러 공간으로 변환하기 위한 컬러 변환 데이터를 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 단계는, 상기 포스트프로세싱 유닛에 의해, 상기 컬러 변환 데이터를 사용하여 상기 디코딩된 비디오 데이터를 상기 루미넌스 및 크로미넌스 컬러 공간으로부터 상기 레드-그린-블루 컬러 공간으로 변환하는 단계를 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 1 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터에 관한 전기-광학 전달 함수를 정의하는 전달 함수 데이터를 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 단계는, 상기 포스트프로세싱 유닛에 의해, 상기 디코딩된 비디오 데이터에 관한 상기 전기-광학 전달 함수를 실행하는 단계를 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 1 항에 있어서,
상기 비디오 디코더는 테스트하의 비디오 디코더를 포함하고,
상기 디코딩된 비디오 데이터는 테스트하의 디코딩된 비디오 데이터를 포함하며,
상기 포스트프로세싱 유닛은 테스트하의 포스트프로세싱 유닛을 포함하고,
상기 방법은,
참조 디코더에 의해, 참조 디코딩된 비디오 데이터를 형성하기 위해 상기 비디오 비트스트림의 상기 비디오 데이터를 디코딩하는 단계로서, 상기 참조 디코더는 상기 비디오 코딩 표준에 따르는, 상기 비디오 데이터를 디코딩하는 단계;
참조 포스트프로세싱 유닛에 의해, 참조 프로세싱된 디코딩된 비디오 데이터를 형성하기 위해 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 참조 디코딩된 비디오 데이터를 프로세싱하는 단계; 및
테스트하의 상기 프로세싱된 디코딩된 비디오 데이터가 상기 참조 프로세싱된 디코딩된 비디오 데이터와 매칭하는 경우 테스트하의 상기 비디오 디코더 및 테스트하의 상기 포스트프로세싱 유닛이 상기 비디오 코딩 표준에 따른다고 결정하는 단계를 더 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 7 하에 있어서,
테스트하의 상기 디코딩된 비디오 데이터를 프로세싱하는 단계는 테스트하의 상기 디코딩된 비디오 데이터를 업샘플링하는 단계, 테스트하의 상기 디코딩된 비디오 데이터를 역양자화하는 단계, 테스트하의 상기 디코딩된 비디오 데이터를 루미넌스 및 크로미넌스 컬러 공간으로부터 레드-그린-블루 컬러 공간으로 변환하는 단계, 또는 테스트하의 상기 디코딩된 비디오 데이터에 대해 상기 디코딩된 비디오 데이터에 대해 전기-광학 전달 함수를 실행하는 단계 중 적어도 하나를 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 7 항에 있어서,
테스트하의 상기 프로세싱된 디코딩된 비디오 데이터가 상기 참조 프로세싱된 디코딩된 비디오 데이터의 대응하는 값들의 미리 결정된 범위 내의 값들을 갖는 경우 테스트하의 상기 프로세싱된 디코딩된 비디오 데이터가 상기 참조 프로세싱된 디코딩된 비디오 데이터와 매칭한다고 결정하는 단계를 더 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 제 7 항에 있어서,
테스트하의 상기 포스트프로세싱 유닛은 테스트하의 복수의 포스트프로세싱 유닛들 중 테스트하의 제 1 포스트프로세싱 유닛을 포함하고,
상기 참조 포스트프로세싱 유닛은 복수의 참조 포스트프로세싱 유닛들 중 제 1 참조 포스트프로세싱 유닛을 포함하며, 테스트하의 상기 포스트프로세싱 유닛들 각각은 상기 참조 포스트프로세싱 유닛들 중 하나에 대응하고,
테스트하의 상기 제 1 포스트프로세싱 유닛에 의해, 테스트하의 상기 디코딩된 비디오 데이터를 포스트프로세싱하는 단계는, 테스트하의 상기 포스트프로세싱 유닛들 각각에 의해, 상기 비디오 코딩 표준에 따라 상기 HDR 포스트프로세싱 데이터를 사용하여 테스트하의 상기 디코딩된 비디오 데이터를 포스트프로세싱하는 단계를 포함하며,
상기 제 1 참조 포스트프로세싱 유닛에 의해, 포스트프로세싱하는 단계는, 상기 참조 포스트프로세싱 유닛들 각각에 의해, 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 참조 비디오 데이터를 포스트프로세싱하는 단계를 더 포함하고,
상기 테스트하의 상기 비디오 디코더 및 테스트하의 상기 포스트프로세싱 유닛이 상기 비디오 코딩 표준에 따른다고 결정하는 단계는
테스트하의 상기 포스트프로세싱 유닛들 각각에 의해 출력된 테스트하의 상기 프로세싱된 디코딩된 비디오 데이터가 상기 대응하는 참조 포스트프로세싱 유닛들에 의해 출력된 상기 참조 프로세싱된 디코딩된 비디오 데이터와 매칭하는 경우 테스트하의 상기 비디오 디코더 및 테스트하의 상기 포스트프로세싱 유닛들 각각이 상기 비디오 코딩 표준에 따른다고 결정하는 단계를 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 방법. - 디코딩된 비디오 데이터를 프로세싱하는 디바이스로서,
비디오 비트스트림의 비디오 데이터를 저장하도록 구성된 메모리로서, 상기 비디오 비트스트림은 상기 디코딩된 비디오 데이터에 대한 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 메모리;
디지털 로직 회로를 포함하는 하나 이상의 하드웨어-기반 프로세싱 유닛들에 의해 구현되는 비디오 디코더; 및
디지털 로직 회로를 포함하는 하나 이상의 하드웨어-기반 프로세싱 유닛들에 의해 구현되는 포스트프로세싱 유닛을 포함하고,
상기 비디오 디코더는,
비디오 코딩 표준에 따라 상기 비디오 데이터를 디코딩하고;
상기 SEI 메시지로부터 상기 HDR 포스트프로세싱 데이터를 추출하며;
상기 포스트프로세싱 유닛으로 상기 디코딩된 비디오 데이터 및 상기 HDR 포스트프로세싱 데이터를 제공하도록 구성되고,
상기 포스트프로세싱 유닛은 상기 비디오 코딩 표준에 따라 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 디코딩된 비디오 데이터를 프로세싱하도록 구성되는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 11 항에 있어서,
상기 포스트프로세싱 유닛은 크로마 업샘플링 유닛을 포함하고,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 업샘플링하기 위한 룩업 테이블 계수들을 포함하고,
상기 크로마 업샘플링 유닛은 상기 룩업 테이블 계수들을 사용하여 상기 디코딩된 비디오 데이터를 업샘플링하도록 구성되는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 11 항에 있어서,
상기 포스트프로세싱 유닛은 역양자화 유닛을 포함하고,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 역양자화하기 위한 역양자화 데이터를 포함하고,
상기 역양자화 유닛은 상기 역양자화 데이터를 사용하여 상기 디코딩된 비디오 데이터를 역양자화하도록 구성되는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 11 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 루미넌스 및 크로미넌스 컬러 공간으로부터 레드-그린-블루 컬러 공간으로 변환하기 위한 컬러 변환 데이터를 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 것은, 상기 포스트프로세싱 유닛에 의해, 상기 컬러 변환 데이터를 사용하여 상기 디코딩된 비디오 데이터를 상기 루미넌스 및 크로미넌스 컬러 공간으로부터 상기 레드-그린-블루 컬러 공간으로 변환하는 것을 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 11 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터에 관한 전기-광학 전달 함수를 정의하는 전달 함수 데이터를 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 것은, 상기 포스트프로세싱 유닛에 의해, 상기 디코딩된 비디오 데이터에 관한 상기 전기-광학 전달 함수를 실행하는 것을 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 11 항에 있어서,
상기 비디오 디코더는 테스트하의 비디오 디코더를 포함하고,
상기 디코딩된 비디오 데이터는 테스트하의 디코딩된 비디오 데이터를 포함하며,
상기 포스트프로세싱 유닛은 테스트하의 포스트프로세싱 유닛을 포함하고,
상기 디바이스는,
참조 디코딩된 비디오 데이터를 형성하기 위해 상기 비디오 비트스트림의 상기 비디오 데이터를 디코딩하도록 구성된 참조 디코더로서, 상기 참조 디코더는 상기 비디오 코딩 표준에 따르는, 상기 참조 디코더;
참조 프로세싱된 디코딩된 비디오 데이터를 형성하기 위해 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 참조 디코딩된 비디오 데이터를 프로세싱하도록 구성된 참조 포스트프로세싱 유닛; 및
테스트하의 상기 프로세싱된 디코딩된 비디오 데이터가 상기 참조 프로세싱된 디코딩된 비디오 데이터와 매칭하는 경우 테스트하의 상기 비디오 디코더 및 테스트하의 상기 포스트프로세싱 유닛이 상기 비디오 코딩 표준에 따른다고 결정하도록 구성된 표준 컴플라이언스 유닛을 더 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 디코딩된 비디오 데이터를 프로세싱하는 디바이스로서,
비디오 코딩 표준에 따라 비디오 비트스트림의 비디오 데이터를 디코딩하는 수단으로서, 상기 비디오 비트스트림은 상기 디코딩된 비디오 데이터에 대한 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 비디오 데이터를 디코딩하는 수단;
상기 SEI 메시지로부터 상기 HDR 포스트프로세싱 데이터를 추출하는 수단;
포스트프로세싱 수단으로 상기 디코딩된 비디오 데이터 및 상기 HDR 포스트프로세싱 데이터를 제공하는 수단; 및
상기 비디오 코딩 표준에 따라 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 디코딩된 비디오 데이터를 프로세싱하는 상기 포스트프로세싱 수단을 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 17 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 업샘플링하기 위한 룩업 테이블 계수들을 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 것은, 상기 포스트프로세싱 유닛에 의해, 상기 룩업 테이블 계수들을 사용하여 상기 디코딩된 비디오 데이터를 업샘플링하는 것을 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 17 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 역양자화하기 위한 역양자화 데이터를 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 것은, 상기 포스트프로세싱 유닛에 의해, 상기 역양자화 데이터를 사용하여 상기 디코딩된 비디오 데이터를 역양자화하는 것을 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 17 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 루미넌스 및 크로미넌스 컬러 공간으로부터 레드-그린-블루 컬러 공간으로 변환하기 위한 컬러 변환 데이터를 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 것은, 상기 포스트프로세싱 유닛에 의해, 상기 컬러 변환 데이터를 사용하여 상기 디코딩된 비디오 데이터를 상기 루미넌스 및 크로미넌스 컬러 공간으로부터 상기 레드-그린-블루 컬러 공간으로 변환하는 것을 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 17 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터에 관한 전기-광학 전달 함수를 정의하는 전달 함수 데이터를 포함하고,
상기 디코딩된 비디오 데이터를 프로세싱하는 것은, 상기 포스트프로세싱 유닛에 의해, 상기 디코딩된 비디오 데이터에 관한 상기 전기-광학 전달 함수를 실행하는 것을 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 제 17 항에 있어서,
상기 디코딩하는 수단은 테스트하의 비디오 디코더를 포함하고,
상기 디코딩된 비디오 데이터는 테스트하의 디코딩된 비디오 데이터를 포함하며,
상기 디바이스는,
참조 디코딩된 비디오 데이터를 형성하기 위해 상기 비디오 비트스트림의 상기 비디오 데이터를 디코딩하는 제 2 수단으로서, 상기 디코딩하는 제 2 수단은 상기 비디오 코딩 표준에 따르는, 상기 비디오 데이터를 디코딩하는 제 2 수단;
참조 프로세싱된 디코딩된 비디오 데이터를 형성하기 위해 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 참조 디코딩된 비디오 데이터를 프로세싱하는 제 2 포스트프로세싱 수단; 및
테스트하의 상기 프로세싱된 디코딩된 비디오 데이터가 상기 참조 프로세싱된 디코딩된 비디오 데이터와 매칭하는 경우 테스트하의 상기 비디오 디코더가 상기 비디오 코딩 표준에 따른다고 결정하는 수단을 더 포함하는, 디코딩된 비디오 데이터를 프로세싱하는 디바이스. - 명령들을 저장한 컴퓨터 판독가능 저장 매체로서,
상기 명령들은, 실행될 때,
비디오 디코더를 실행하는 제 1 하나 이상의 프로세서들로 하여금,
비디오 코딩 표준에 따라 비디오 비트스트림의 비디오 데이터를 디코딩하게 하는 것으로서, 상기 비디오 비트스트림은 디코딩된 비디오 데이터에 대한 고 동적 범위 (HDR) 포스트프로세싱 데이터를 포함하는 보충 강화 정보 (SEI) 메시지를 포함하는, 상기 비디오 데이터를 디코딩하게 하고;
상기 SEI 메시지로부터 상기 HDR 포스트프로세싱 데이터를 추출하게 하며;
제 2 하나 이상의 프로세서들에 의해 실행되는 포스트프로세싱 유닛으로 상기 디코딩된 비디오 데이터 및 상기 HDR 포스트프로세싱 데이터를 제공하게 하며; 및
상기 포스트프로세싱 유닛을 실행하는 상기 제 2 하나 이상의 프로세서들로 하여금, 상기 비디오 코딩 표준에 따라 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 디코딩된 비디오 데이터를 프로세싱하게 하는, 컴퓨터 판독가능 저장 매체. - 제 23 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 업샘플링하기 위한 룩업 테이블 계수들을 포함하고,
상기 제 2 하나 이상의 프로세서들로 하여금, 상기 디코딩된 비디오 데이터를 프로세싱하게 하는 상기 명령들은, 상기 제 2 하나 이상의 프로세서들로 하여금, 상기 룩업 테이블 계수들을 사용하여 상기 디코딩된 비디오 데이터를 업샘플링하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체. - 제 23 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 역양자화하기 위한 역양자화 데이터를 포함하고,
상기 제 2 하나 이상의 프로세서들로 하여금, 상기 디코딩된 비디오 데이터를 프로세싱하게 하는 상기 명령들은, 상기 제 2 하나 이상의 프로세서들로 하여금, 상기 역양자화 데이터를 사용하여 상기 디코딩된 비디오 데이터를 역양자화하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체. - 제 23 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터를 루미넌스 및 크로미넌스 컬러 공간으로부터 레드-그린-블루 컬러 공간으로 변환하기 위한 컬러 변환 데이터를 포함하고,
상기 제 2 하나 이상의 프로세서들로 하여금, 상기 디코딩된 비디오 데이터를 프로세싱하게 하는 상기 명령들은, 상기 제 2 하나 이상의 프로세서들로 하여금, 상기 컬러 변환 데이터를 사용하여 상기 디코딩된 비디오 데이터를 상기 루미넌스 및 크로미넌스 컬러 공간으로부터 상기 레드-그린-블루 컬러 공간으로 변환하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체. - 제 23 항에 있어서,
상기 HDR 포스트프로세싱 데이터는 상기 디코딩된 비디오 데이터에 관한 전기-광학 전달 함수를 정의하는 전달 함수 데이터를 포함하고,
상기 제 2 하나 이상의 프로세서들로 하여금, 상기 디코딩된 비디오 데이터를 프로세싱하게 하는 상기 명령들은, 상기 제 2 하나 이상의 프로세서들로 하여금, 상기 디코딩된 비디오 데이터에 관한 상기 전기-광학 전달 함수를 실행하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체. - 제 23 항에 있어서,
상기 비디오 디코더는 테스트하의 비디오 디코더를 포함하고,
상기 디코딩된 비디오 데이터는 테스트하의 디코딩된 비디오 데이터를 포함하며,
상기 컴퓨터 판독가능 저장 매체는,
참조 디코더를 실행하는 제 3 하나 이상의 프로세서들로 하여금, 참조 디코딩된 비디오 데이터를 형성하기 위해 상기 비디오 비트스트림의 상기 비디오 데이터를 디코딩하게 하는 것으로서, 상기 참조 디코더는 상기 비디오 코딩 표준에 따르는, 상기 비디오 데이터를 디코딩하게 하고;
제 2 포스트프로세싱 유닛을 실행하는 제 4 하나 이상의 프로세서들로 하여금, 참조 프로세싱된 디코딩된 비디오 데이터를 형성하기 위해 상기 HDR 포스트프로세싱 데이터를 사용하여 상기 참조 디코딩된 비디오 데이터를 프로세싱하게 하며; 및
제 5 하나 이상의 프로세서들로 하여금, 테스트하의 상기 프로세싱된 디코딩된 비디오 데이터가 상기 참조 프로세싱된 디코딩된 비디오 데이터와 매칭하는 경우 테스트하의 상기 비디오 디코더가 상기 비디오 코딩 표준에 따른다고 결정하게 하는
명령들을 더 포함하는, 컴퓨터 판독가능 저장 매체.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562222147P | 2015-09-22 | 2015-09-22 | |
US62/222,147 | 2015-09-22 | ||
US15/272,172 | 2016-09-21 | ||
US15/272,172 US10200690B2 (en) | 2015-09-22 | 2016-09-21 | Video decoder conformance for high dynamic range (HDR) video coding using a core video standard |
PCT/US2016/053143 WO2017053585A1 (en) | 2015-09-22 | 2016-09-22 | Video decoder conformance for high dynamic range (hdr) video coding using a core video standard |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180054815A true KR20180054815A (ko) | 2018-05-24 |
Family
ID=58283619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020187011332A KR20180054815A (ko) | 2015-09-22 | 2016-09-22 | 코어 비디오 표준을 사용하는 고 동적 범위 (hdr) 비디오 코딩을 위한 비디오 디코더 적합성 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10200690B2 (ko) |
EP (1) | EP3354031A1 (ko) |
JP (1) | JP2018532316A (ko) |
KR (1) | KR20180054815A (ko) |
CN (1) | CN108028944B (ko) |
WO (1) | WO2017053585A1 (ko) |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10306239B2 (en) * | 2014-05-13 | 2019-05-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, source device, target device and analyser for managing video coding |
EP3198556B1 (en) * | 2014-09-26 | 2018-05-16 | Dolby Laboratories Licensing Corp. | Encoding and decoding perceptually-quantized video content |
GB201500719D0 (en) * | 2015-01-15 | 2015-03-04 | Barco Nv | Method for chromo reconstruction |
US10244249B2 (en) | 2015-09-21 | 2019-03-26 | Qualcomm Incorporated | Fixed point implementation of range adjustment of components in video coding |
US10129558B2 (en) | 2015-09-21 | 2018-11-13 | Qualcomm Incorporated | Supplement enhancement information (SEI) messages for high dynamic range and wide color gamut video coding |
US10798422B2 (en) * | 2015-10-20 | 2020-10-06 | Intel Corporation | Method and system of video coding with post-processing indication |
US10397586B2 (en) * | 2016-03-30 | 2019-08-27 | Dolby Laboratories Licensing Corporation | Chroma reshaping |
US10244244B2 (en) * | 2016-10-26 | 2019-03-26 | Dolby Laboratories Licensing Corporation | Screen-adaptive decoding of high dynamic range video |
JP6822123B2 (ja) * | 2016-12-19 | 2021-01-27 | ソニー株式会社 | 画像処理装置、画像処理方法及びプログラム |
US9986200B1 (en) * | 2017-05-11 | 2018-05-29 | Novatek Microelectronics Corp. | Method and video conversion system of updating video setting |
EP3588964A1 (en) | 2018-06-26 | 2020-01-01 | InterDigital VC Holdings, Inc. | Metadata translation in hdr distribution |
US11151748B2 (en) * | 2018-07-13 | 2021-10-19 | Electronics And Telecommunications Research Institute | 3D point cloud data encoding/decoding method and apparatus |
EP3853810B1 (en) * | 2018-09-19 | 2023-10-25 | Dolby Laboratories Licensing Corporation | Automatic display management metadata generation for gaming and/or sdr+ contents |
US11341890B2 (en) | 2018-10-25 | 2022-05-24 | Baylor University | System and method for a multi-primary wide gamut color system |
US11488510B2 (en) | 2018-10-25 | 2022-11-01 | Baylor University | System and method for a multi-primary wide gamut color system |
US11069279B2 (en) | 2018-10-25 | 2021-07-20 | Baylor University | System and method for a multi-primary wide gamut color system |
US11062638B2 (en) | 2018-10-25 | 2021-07-13 | Baylor University | System and method for a multi-primary wide gamut color system |
US11373575B2 (en) | 2018-10-25 | 2022-06-28 | Baylor University | System and method for a multi-primary wide gamut color system |
US11289003B2 (en) | 2018-10-25 | 2022-03-29 | Baylor University | System and method for a multi-primary wide gamut color system |
US10997896B2 (en) | 2018-10-25 | 2021-05-04 | Baylor University | System and method for a six-primary wide gamut color system |
US11403987B2 (en) | 2018-10-25 | 2022-08-02 | Baylor University | System and method for a multi-primary wide gamut color system |
US11475819B2 (en) | 2018-10-25 | 2022-10-18 | Baylor University | System and method for a multi-primary wide gamut color system |
US11587491B1 (en) | 2018-10-25 | 2023-02-21 | Baylor University | System and method for a multi-primary wide gamut color system |
US11069280B2 (en) | 2018-10-25 | 2021-07-20 | Baylor University | System and method for a multi-primary wide gamut color system |
US11289000B2 (en) | 2018-10-25 | 2022-03-29 | Baylor University | System and method for a multi-primary wide gamut color system |
US11532261B1 (en) | 2018-10-25 | 2022-12-20 | Baylor University | System and method for a multi-primary wide gamut color system |
US11037481B1 (en) | 2018-10-25 | 2021-06-15 | Baylor University | System and method for a multi-primary wide gamut color system |
US11043157B2 (en) | 2018-10-25 | 2021-06-22 | Baylor University | System and method for a six-primary wide gamut color system |
US11315467B1 (en) | 2018-10-25 | 2022-04-26 | Baylor University | System and method for a multi-primary wide gamut color system |
US11189210B2 (en) | 2018-10-25 | 2021-11-30 | Baylor University | System and method for a multi-primary wide gamut color system |
US10607527B1 (en) | 2018-10-25 | 2020-03-31 | Baylor University | System and method for a six-primary wide gamut color system |
US10950162B2 (en) | 2018-10-25 | 2021-03-16 | Baylor University | System and method for a six-primary wide gamut color system |
US10950161B2 (en) | 2018-10-25 | 2021-03-16 | Baylor University | System and method for a six-primary wide gamut color system |
US11030934B2 (en) | 2018-10-25 | 2021-06-08 | Baylor University | System and method for a multi-primary wide gamut color system |
US11410593B2 (en) | 2018-10-25 | 2022-08-09 | Baylor University | System and method for a multi-primary wide gamut color system |
US11503310B2 (en) * | 2018-10-31 | 2022-11-15 | Ati Technologies Ulc | Method and apparatus for an HDR hardware processor inline to hardware encoder and decoder |
WO2021061493A1 (en) * | 2019-09-24 | 2021-04-01 | Futurewei Technologies, Inc. | Temporal identifier constraints for sei messages |
CN112911273B (zh) * | 2019-12-04 | 2022-07-22 | 浙江大学 | 一种检验被测解码器的方法和装置 |
EP4062634A4 (en) * | 2019-12-26 | 2022-12-28 | ByteDance Inc. | LIMITATIONS ON SIGNALING HYPOTHETICAL REFERENCE DECODER PARAMETERS IN VIDEO BITSTREAMS |
WO2021134015A1 (en) | 2019-12-26 | 2021-07-01 | Bytedance Inc. | Profile, tier and layer indication in video coding |
EP4066386A4 (en) | 2019-12-27 | 2023-01-25 | ByteDance Inc. | SIGNALING SUBPICTURES IN VIDEO ENCODING |
CN117395441A (zh) | 2020-01-09 | 2024-01-12 | 字节跳动有限公司 | 视频流中的填充数据单元的处理 |
US11962936B2 (en) | 2020-09-29 | 2024-04-16 | Lemon Inc. | Syntax for dependent random access point indication in video bitstreams |
CN114095733A (zh) * | 2021-08-23 | 2022-02-25 | 镕铭微电子(济南)有限公司 | 视频转码中元数据的处理方法、视频转码设备及电子设备 |
CN114598538A (zh) * | 2022-03-16 | 2022-06-07 | 数字山西设计股份有限公司 | 一种用于数字视频光端机的数据传输系统 |
WO2023222521A1 (en) * | 2022-05-19 | 2023-11-23 | Interdigital Ce Patent Holdings, Sas | Sei adapted for multiple conformance points |
CN117917079A (zh) * | 2022-07-04 | 2024-04-19 | 嘉兴尚坤科技有限公司 | 一种超高清视频数据编码/解码处理方法及系统 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI513327B (zh) * | 2011-04-15 | 2015-12-11 | Dolby Lab Licensing Corp | 高動態範圍影像的編碼、解碼及表示 |
EP2579591A1 (en) * | 2011-10-04 | 2013-04-10 | Thomson Licensing | Method of and device for encoding an HDR image, method of and device for reconstructing an HDR image and non-transitory storage medium |
US9554146B2 (en) * | 2012-09-21 | 2017-01-24 | Qualcomm Incorporated | Indication and activation of parameter sets for video coding |
KR102242721B1 (ko) * | 2012-12-26 | 2021-04-22 | 소니 주식회사 | 화상 처리 장치 및 방법 |
MX353125B (es) * | 2013-06-20 | 2017-12-20 | Sony Corp | Dispositivo de reproducción, método de reproducción, y medio de registro. |
JP2015005878A (ja) * | 2013-06-20 | 2015-01-08 | ソニー株式会社 | 再生装置、再生方法、および記録媒体 |
JP6528683B2 (ja) * | 2013-07-12 | 2019-06-12 | ソニー株式会社 | 再生装置、再生方法 |
CN105393525B (zh) | 2013-07-18 | 2019-04-12 | 皇家飞利浦有限公司 | 创建用于对hdr图像编码的代码映射函数的方法和装置以及使用这样的编码图像的方法和装置 |
MX356133B (es) * | 2013-09-27 | 2018-05-14 | Sony Corp | Dispositivo de reproducción, método de reproducción y medio de grabación. |
EP2958328A1 (en) * | 2014-06-20 | 2015-12-23 | Thomson Licensing | Method and device for signaling in a bitstream a picture/video format of an LDR picture and a picture/video format of a decoded HDR picture obtained from said LDR picture and an illumination picture |
EP3198556B1 (en) * | 2014-09-26 | 2018-05-16 | Dolby Laboratories Licensing Corp. | Encoding and decoding perceptually-quantized video content |
US10547844B2 (en) * | 2014-12-04 | 2020-01-28 | Lg Electronics Inc. | Broadcasting signal transmission and reception method and device |
WO2016129891A1 (ko) * | 2015-02-11 | 2016-08-18 | 엘지전자 주식회사 | 방송 신호 송수신 방법 및 장치 |
JP2018525905A (ja) * | 2015-07-22 | 2018-09-06 | アリス エンタープライジズ エルエルシーArris Enterprises Llc | 高ダイナミックレンジおよび広色域シーケンスを符号化するシステム |
-
2016
- 2016-09-21 US US15/272,172 patent/US10200690B2/en active Active
- 2016-09-22 KR KR1020187011332A patent/KR20180054815A/ko unknown
- 2016-09-22 WO PCT/US2016/053143 patent/WO2017053585A1/en active Application Filing
- 2016-09-22 CN CN201680054577.8A patent/CN108028944B/zh active Active
- 2016-09-22 EP EP16779240.7A patent/EP3354031A1/en active Pending
- 2016-09-22 JP JP2018513501A patent/JP2018532316A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3354031A1 (en) | 2018-08-01 |
WO2017053585A1 (en) | 2017-03-30 |
CN108028944A (zh) | 2018-05-11 |
US10200690B2 (en) | 2019-02-05 |
JP2018532316A (ja) | 2018-11-01 |
US20170085878A1 (en) | 2017-03-23 |
CN108028944B (zh) | 2020-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10200690B2 (en) | Video decoder conformance for high dynamic range (HDR) video coding using a core video standard | |
US10666957B2 (en) | Processing high dynamic range and wide color gamut video data for video coding | |
CN110999299B (zh) | 在视频译码中跨分量动态范围调整(cc-dra)的系统及方法 | |
TWI736555B (zh) | 視訊寫碼中成分之範圍調整之固定點實施 | |
KR20180051594A (ko) | 개선된 컬러 재맵핑 정보 보충 강화 정보 메시지 프로세싱 | |
TW201711470A (zh) | 用於高動態範圍及廣色域視訊寫碼之自適應常數照度方法 | |
TW201931853A (zh) | 具有聯合像素/變換為基礎之量化之視頻寫碼之量化參數控制 | |
KR20180016383A (ko) | 고 동적 범위 (hdr) 및/또는 넓은 컬러 공간 (wcg) 비디오 데이터에의 고정 전달 함수의 콘텐츠-적응적 적용 | |
AU2017308831B2 (en) | Color remapping information sei message signaling for display adaptation | |
US10728559B2 (en) | Precision of computation and signaling of dynamic range adjustment and color remapping information |