KR20160135670A - 픽처 블록을 인코딩/디코딩하기 위한 방법 - Google Patents
픽처 블록을 인코딩/디코딩하기 위한 방법 Download PDFInfo
- Publication number
- KR20160135670A KR20160135670A KR1020160060259A KR20160060259A KR20160135670A KR 20160135670 A KR20160135670 A KR 20160135670A KR 1020160060259 A KR1020160060259 A KR 1020160060259A KR 20160060259 A KR20160060259 A KR 20160060259A KR 20160135670 A KR20160135670 A KR 20160135670A
- Authority
- KR
- South Korea
- Prior art keywords
- luminance
- block
- rti
- average value
- picture
- Prior art date
Links
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/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/17—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 an image region, e.g. an object
- H04N19/176—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 an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/182—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 pixel
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
- H04N9/65—Circuits for processing colour signals for synchronous modulators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
- H04N9/66—Circuits for processing colour signals for synchronous demodulators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/77—Circuits for processing the brightness signal and the chrominance signal relative to each other, e.g. adjusting the phase of the brightness signal relative to the colour signal, correcting differential gain or differential phase
-
- 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
- H04N19/34—Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 개시내용은 일반적으로 휘도 컴포넌트를 갖는 픽처 블록을 인코딩하기 위한 방법 및 디바이스에 관한 것이다. 이 방법은:
상기 휘도 컴포넌트로부터 계산되는 상기 휘도 컴포넌트의 평균 값의 제1 표현(, )을 감산함으로써 휘도 잔여 블록()을 획득하는 단계(103, 301);
상기 평균 값의 동적 범위를 감소시키기 위해 상기 휘도 컴포넌트의 평균 값()에 전달 함수를 적용함으로써 상기 평균 값의 제2 표현()을 획득하는 단계(102); 및
상기 휘도 잔여 블록()과 상기 평균 값의 제2 표현()을 함께 가산함(105, 302)으로써 획득되는 휘도 블록()을 인코딩하는 단계
를 포함하는 것을 특징으로 한다.
본 개시내용은 추가로 픽처 블록을 디코딩하는 방법 및 디바이스에 관한 것이다.
상기 휘도 컴포넌트로부터 계산되는 상기 휘도 컴포넌트의 평균 값의 제1 표현(, )을 감산함으로써 휘도 잔여 블록()을 획득하는 단계(103, 301);
상기 평균 값의 동적 범위를 감소시키기 위해 상기 휘도 컴포넌트의 평균 값()에 전달 함수를 적용함으로써 상기 평균 값의 제2 표현()을 획득하는 단계(102); 및
상기 휘도 잔여 블록()과 상기 평균 값의 제2 표현()을 함께 가산함(105, 302)으로써 획득되는 휘도 블록()을 인코딩하는 단계
를 포함하는 것을 특징으로 한다.
본 개시내용은 추가로 픽처 블록을 디코딩하는 방법 및 디바이스에 관한 것이다.
Description
본 개시내용은 일반적으로 픽처/비디오 인코딩 및 디코딩에 관한 것이다. 특히, 그러나 배타적이지 않게, 본 개시내용의 기술 분야는 그것의 픽셀 값들이 높은-동적 범위에 속하는 픽처의 인코딩/디코딩에 관한 것이다.
본 섹션은 하기에 기술 및/또는 청구되는 본 개시내용의 다양한 양태들에 관련될 수 있는 관련 기술의 다양한 양태들을 독자에게 소개하는 것으로 의도된다. 본 논의는 본 개시내용의 다양한 양태들의 양호한 이해를 용이하게 하기 위해서 배경기술 정보를 독자에게 제공하는데 도움이 되는 것으로 여겨진다. 따라서, 이러한 진술들은 종래 기술의 허용이 아니라 이러한 견지에서 읽혀져야 한다는 것이 이해되어야 한다.
하기에서, 픽처는 예를 들어, 픽처(또는 비디오)의 픽셀 값들에 대한 모든 정보 및 픽처(또는 비디오)를 시각화 및/또는 디코딩하기 위해 디스플레이 및/또는 임의의 다른 디바이스에 의해 이용될 수 있는 모든 정보를 특정하는 특정 픽처/비디오 포맷으로 샘플들(픽셀 값들)의 하나 또는 몇몇 어레이들을 포함한다. 픽처는 샘플들의 제1 어레이의 형상으로 적어도 하나의 컴포넌트, 일반적으로 루마(또는 휘도) 컴포넌트를, 그리고, 가능하게는, 샘플들의 적어도 하나의 다른 어레이의 형상으로 적어도 하나의 다른 컴포넌트, 일반적으로 컬러 컴포넌트를 포함한다. 또는, 등가적으로, 동일한 정보는, 전통적인 3-색 RGB 표현과 같은, 컬러 샘플들의 어레이들의 세트에 의해 또한 표현될 수 있다.
픽셀 값은 n개 값들의 벡터로 표현되며, 여기서 n은 컴포넌트들의 개수이다. 벡터의 각각의 값은 픽셀 값들의 최대 동적 범위를 정의하는 다수의 비트들로 표현된다.
픽처 블록은 이 픽처에 속하는 픽셀들의 세트를 의미하고, 블록의 픽셀 값들은 이 블록에 속하는 픽셀들의 값들을 의미한다. 픽처 블록은 매크로블록, H264 또는 H265에 따른 코딩 유닛 또는 변환 유닛, 또는 일부 임의의 형상(정사각형 또는 직사각형 형상에 제한되지 않음)의 픽처의 영역을 형성하는 픽셀들의 임의의 다른 세트일 수 있다.
낮은-동적-범위 픽처들(LDR 픽처들)은 그 휘도 값들이 제한된 비트 수(가장 빈번하게 8 또는 10)로 표현되는 픽처들이다. 이러한 제한된 표현은, 특히 어두운(dark) 그리고 밝은(light) 휘도 범위들 내에서, 작은 신호 변경들의 정확한 렌더링(rendering)을 허용하지 않는다. 높은-동적 범위 이미지들(HDR 이미지들)에서, 신호 표현은 그것의 전체 범위에 걸쳐 신호의 높은 정확성을 유지하기 위해 확장된다. HDR 이미지들에서, 픽셀 값들은 부동 소수점 포맷(각각의 컴포넌트에 대해 32-비트 또는 16-비트, 즉 부동(float) 또는 반-부동(half-float))으로 일반적으로 표현되며, 가장 인기있는 포맷은 openEXR 반-부동 포맷(RGB 컴포넌트 당 16-비트, 즉 픽셀 당 48 비트) 또는 긴 표현(long expression)을 갖는 정수, 통상적으로 적어도 16 비트이다.
HDR 이미지를 인코딩하기 위한 통상적인 방식은 픽처의 동적 범위(통상적으로 8 비트)를 감소시키기 위해 픽처에 전달 함수를 적용하는 것이다. 이후, 전달되는 픽처는 비디오에 대한 전통적인 인코딩 방식(JPEG/JPEG200, JPEG2000: "Information technology - JPEG2000 image coding system: Code coding system"(ITU-T Recommendation T.800, 2002년 8월) 또는 MPEG-2, H.264/AVC, H.264/AVC: "Advanced video coding for generic audiovisual services"(Recommendation ITU-T H.264 (Edition 9), 2014년 2월) 또는 H265/HEVC, HEVC: "High Efficiency video coding"(Recommendation ITU-T H.265, 2014년 10월)에 의해 인코딩된다.
통상적인 전달 함수는 "Image dynamic range in television systems"(문헌 6C/77-E, 2012년 10월 4일)라는 명칭의, ITU 표준 기구에의 제출서(contribution)에서 정의된다.
디코더 측에서, 전달되는 픽처가 획득되고, 역 전달 함수가 디코딩되는 전달되는 픽처에 적용된다. 용어 "역 전달 함수"는, 전달 함수 및 역 전달 함수가 (임의의 인코딩/디코딩 없이) 입력 픽처에 연속적으로 적용되는 경우, 결과적인 픽처 및 입력 픽처가 동일한 픽처임을 의미한다. 임의의 단조 함수가 전달 함수일 수 있다.
HDR 픽처를 인코딩하기 위해 이러한 통상적인 인코딩 방식을 이용하는 것은 큰 사이즈의 압축된 픽처들을 수반한다. 결과적으로, 이러한 통상적인 방식들은, 높은 코딩 성능들을 요구하는 응용예들에서, 예를 들어, 높은 압축률이 요구되는 전송 상황에서 이용될 수 없다.
본 개시내용은 이전 내용을 염두에 두고 고안되었다.
이전 내용의 견지에서, 본 개시내용의 양태은 컴퓨터 시스템 상의 데이터 객체들 사이의 시맨틱 관계들을 생성하고 유지하는 것에 관한 것이다. 다음은 본 개시내용의 일부 양태들의 기본적 이해를 제공하기 위해 본 개시내용의 간략화된 요약을 제시한다. 이러한 요약은 본 개시내용의 확장적 개요가 아니다. 그것은 본 개시내용의 핵심 또는 중요 엘리먼트들을 식별하도록 의도되지 않는다. 후속하는 요약은 단지, 하기에 제공되는 더 상세한 설명에 대한 개요로서 간략화된 형태로 본 개시내용의 일부 양태들을 나타낸다.
본 개시내용은 휘도 컴포넌트를 갖는 픽처 블록을 인코딩하기 위한 방법을 이용하여 종래 기술의 결함들 중 적어도 하나를 해소하도록 제시된다. 이 방법은:
- 상기 휘도 컴포넌트로부터 휘도 컴포넌트의 평균 값의 제1 표현을 감산함으로써 휘도 잔여 블록을 획득하는 것;
- 휘도 잔여 블록과 평균 값의 제2 표현을 함께 가산함으로써 획득되는 휘도 블록을 인코딩하는 것을 포함한다.
본 원리들에 따르면, 평균 값의 제2 표현을 획득하는 것은 샘플링 인자에 따라 전달되는 평균 값을 양자화하는 것을 더 포함하고, 평균 값의 제1 표현은 상기 평균 값의 제2 표현에 다른 전달 함수를 적용함으로써 획득되고, 상기 다른 전달 함수는 전달 함수의 역이다.
본 원리들에 따르면, 방법은 상기 평균 값의 제1 표현으로부터 인코딩된 휘도 블록의 디코딩된 버전의 평균 값을 감산함으로써 획득되는 잔여 평균 값을 인코딩하는 것을 더 포함한다.
본 원리들에 따르면, 픽처 블록은 적어도 하나의 컬러 컴포넌트를 더 포함하고, 휘도 잔여 블록()은 그 값들이 상기 지각 공간의 2개의 포인트들의 시각적 지각들 사이의 차이들을 나타내는 메트릭을 갖는 지각 공간에 속하고, 메트릭은 지각 임계치가 존재하도록 정의되고 ― 지각 임계치 미만에서는 사람이 지각 공간의 2개의 컬러들 사이의 시각적 차이를 지각할 수 없음 ―; 인코딩될 픽처 블록의 디스플레이되는 디코딩된 버전에서의 시각적 손실들의 제어를 가능하게 한다.
본 원리들에 따르면, 본 개시내용은 원래의 비트 수로 표현되는 휘도 컴포넌트를 갖는 픽처 블록을 디코딩하기 위한 방법에 관한 것이다. 이 방법은:
- 상기 휘도 블록으로부터 휘도 블록의 평균 값을 감산함으로써 휘도 잔여 블록을 획득하는 것;
- 휘도 잔여 블록과 상기 휘도 블록의 평균 값의, 원래의 비트 수로 표현되는, 표현을 함께 가산함으로써 픽처 블록의 디코딩된 휘도 컴포넌트를 획득하는 것을 포함한다.
본 원리들에 따르면, 휘도 블록의 평균 값의 표현은 잔여 평균 값과 휘도 블록의 평균 값을 함께 가산함으로써 획득된다.
본 원리들에 따르면, 픽처 블록은 적어도 하나의 컬러 컴포넌트를 포함하고, 방법은 휘도 잔여 블록에 역 변환을 적용하는 것을 더 포함하고, 상기 휘도 잔여 블록은, 그 값들이 지각 공간의 2개의 포인트들의 시각적 지각들 사이의 차이들을 나타내는 메트릭을 갖는 지각 공간에 속하고, 메트릭은 지각 임계치가 존재하도록 정의되고 ― 지각 임계치 미만에서는 사람이 지각 공간의 2개의 컬러들 사이의 시각적 차이를 지각할 수 없음 ―, 픽처 블록의 디스플레이되는 디코딩된 버전에서의 시각적 손실들의 제어를 가능하게 한다.
다른 양태들에 따르면, 본 개시내용은, 인코딩된 휘도 블록이 픽처 블록의 휘도 컴포넌트와 상기 휘도 컴포넌트의 평균 값의 표현의 합산을 나타냄을 표시하는 정보 데이터를 추가로 반송하는 것을 특징으로 하는, 인코딩된 휘도 블록을 반송하는 신호에 관한 것이다.
다른 양태들에 따르면, 본 개시내용은 위의 방법을 구현하도록 구성되는 프로세서를 포함하는 디바이스에 관한 것이고, 컴퓨터 프로그램은 위의 방법을 구현하도록 구성되는 프로세서, 이 프로그램이 컴퓨터 상에서 실행될 때 위의 방법의 단계들을 실행하기 위한 프로그램 코드 명령어들을 포함하는 컴퓨터 프로그램 제품, 프로세서가 적어도 위의 방법의 단계들을 수행하게 하기 위한 명령어들이 저장되어 있는 프로세서 판독가능 매체, 및 상기 프로그램이 컴퓨팅 디바이스 상에서 실행될 때 위의 방법의 단계들을 실행하기 위한 프로그램 코드의 명령어들을 반송하는 비일시적 저장 매체를 포함하는 디바이스에 관한 것이다.
본 개시내용의 특정 속성뿐만 아니라, 본 개시내용의 다른 목적들, 장점들, 특징들 및 용법들은 첨부 도면들과 함께 취해지는 다음의 실시예들의 설명으로부터 명백해질 것이다.
도면들에서, 본 개시내용의 실시예가 예시된다.
도 1은 본 개시내용의 실시예에 따라 픽처 블록을 인코딩하기 위한 방법의 단계들의 블록도를 도시한다.
도 2는 본 원리들의 예에 따라 픽처 블록을 디코딩하기 위한 방법의 단계들의 블록도를 도시한다.
도 3은 본 원리들의 예에 따라 픽처 블록을 인코딩하기 위한 방법의 단계들의 블록도를 도시한다.
도 4는 본 원리들의 예에 따라 픽처 블록을 디코딩하기 위한 방법의 단계들의 블록도를 도시한다.
도 5는 도 3에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 6은 도 4에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 7은 도 1에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 8a 및 도 8b는 본 원리들의 예에 따라 상한을 결정하는 방법들의 단계들의 도면들을 도시한다.
도 9는 도 2에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 10은 도 3에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 11은 도 4에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 12는 도 5에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 13은 도 6에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 14는 본 원리들의 예에 따른 디바이스의 아키텍처의 예를 도시한다.
도 15는 본 원리들의 예에 따른 통신 네트워크를 통해 통신하는 2개의 원격 디바이스들을 도시한다.
도 16은 본 원리들의 예에 따른 신호의 신택스를 도시한다.
유사한 또는 동일한 엘리먼트들은 동일한 참조 번호로 참조된다.
도 1은 본 개시내용의 실시예에 따라 픽처 블록을 인코딩하기 위한 방법의 단계들의 블록도를 도시한다.
도 2는 본 원리들의 예에 따라 픽처 블록을 디코딩하기 위한 방법의 단계들의 블록도를 도시한다.
도 3은 본 원리들의 예에 따라 픽처 블록을 인코딩하기 위한 방법의 단계들의 블록도를 도시한다.
도 4는 본 원리들의 예에 따라 픽처 블록을 디코딩하기 위한 방법의 단계들의 블록도를 도시한다.
도 5는 도 3에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 6은 도 4에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 7은 도 1에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 8a 및 도 8b는 본 원리들의 예에 따라 상한을 결정하는 방법들의 단계들의 도면들을 도시한다.
도 9는 도 2에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 10은 도 3에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 11은 도 4에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 12는 도 5에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 13은 도 6에 대한 방법의 변형의 단계들의 블록도를 도시한다.
도 14는 본 원리들의 예에 따른 디바이스의 아키텍처의 예를 도시한다.
도 15는 본 원리들의 예에 따른 통신 네트워크를 통해 통신하는 2개의 원격 디바이스들을 도시한다.
도 16은 본 원리들의 예에 따른 신호의 신택스를 도시한다.
유사한 또는 동일한 엘리먼트들은 동일한 참조 번호로 참조된다.
본 개시내용은 본 개시내용의 실시예들이 도시되는 첨부 도면들을 참조하여 하기에 더 완전히 기술될 것이다. 그러나, 본 개시내용은 많은 대안적인 형태들로 구현될 수 있으며, 본원에 설명되는 실시예들에 제한되는 것으로서 해석되지 않아야 한다. 따라서, 본 개시내용이 다양한 수정들 및 대안적인 형태들에 대해 용이하지만, 본 개시내용의 특정 실시예들이 도면들에 예로서 도시되며, 본원에서 상세히 기술될 것이다. 그러나, 본 개시내용을 개시된 특정 형태들로 제한하려는 의도는 존재하지 않지만, 반면 본 개시내용이 청구항에 의해 정의된 바와 같은 본 개시내용의 사상 및 범위 내에 드는 모든 수정들, 등가물들, 및 대안들을 커버할 것임이 이해되어야 한다.
본원에 이용되는 용어는 오직 특정 실시예들을 기술할 목적이며, 본 개시내용의 제한인 것으로 의도되지 않는다. 본원에 이용되는 바와 같이, 단수 형태("a", "an" 및 "the")는, 콘텍스트가 다른 방식으로 명료하게 표시하지 않는 한, 역시 복수 형태들을 포함하도록 의도된다. 용어들 "포함한다(comprises)", "포함하는(comprising)", "포함한다(includes)" 및/또는 "포함하는(including)"이, 본 명세서에서 이용될 때, 언급된 특징들, 정수들, 단계들, 동작들, 엘리먼트들 및/또는 컴포넌트들의 존재를 특정하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 엘리먼트들, 컴포넌트들, 및/또는 이들의 그룹들을 불가능하게 하지 않는다는 것이 추가로 이해될 것이다. 또한, 엘리먼트가 다른 엘리먼트에 "응답하는(responsive)" 또는 "접속되는(connected)" 것으로서 지칭될 때, 그것은 다른 엘리먼트에 직접 응답하거나 접속될 수 있거나, 또는 중재 엘리먼트들이 존재할 수 있다. 반면, 엘리먼트가 다른 엘리먼트에 "직접 응답하는" 또는 "직접 접속되는" 것으로서 지칭될 때, 중재 엘리먼트들이 존재하지 않는다. 본원에서 이용되는 바와 같이, 용어 "및/또는"은 연관된 열거된 항목들 중 임의의 것 및 이들 중 하나 이상의 모든 조합들을 포함하며, "/"로서 축약될 수 있다.
용어 제1, 제2 등이 다양한 엘리먼트들을 기술하기 위해 본원에서 이용될 수 있지만, 이러한 엘리먼트들이 이러한 용어들에 의해 제한되지 않아야 한다는 것이 이해될 것이다. 이러한 용어들은 하나의 엘리먼트를 다른 엘리먼트와 단지 구별하기 위해서 이용된다. 예를 들어, 본 개시내용의 교시들로부터 벗어나지 않고, 제1 엘리먼트는 제2 엘리먼트라 명명될 수 있고, 유사하게, 제2 엘리먼트는 제1 엘리먼트라 명명될 수 있다.
도면들 중 일부가 주요 통신 방향을 도시하기 위한 통신 경로들 상의 화살표를 포함할 수 있지만, 통신이 도시된 화살표들에 대해 반대 방향으로 발생할 수 있음이 이해되어야 한다.
일부 실시예들은, 각각의 블록이, 회로 엘리먼트, 모듈, 또는 특정된 논리 함수(들)를 구현하기 위한 하나 이상의 실행가능한 명령어들을 포함하는 코드의 일부를 나타내는 블록도들 및 동작 흐름도들에 관해 기술된다. 다른 구현예들에서, 블록들에 언급된 기능(들)이 언급된 순서를 벗어나 발생할 수 있다는 것에 또한 유의해야 한다. 예를 들어, 수반되는 기능성에 따라, 연속적으로 도시되는 2개의 블록들이 실제로, 실질적으로 동시에 실행될 수 있거나, 또는 블록들이 때때로 역순서로 실행될 수 있다.
본원에서의 "일 실시예" 또는 "실시예"에 대한 언급은, 실시예와 관련하여 기술되는 특정 특징, 구조 또는 특성이 본 개시내용의 적어도 하나의 구현예에 포함될 수 있음을 의미한다. 본 명세서 내의 다양한 곳들에서의 구문 "일 실시예에서" 또는 "실시예에 따른"의 출현은 반드시 모두가 동일한 실시예를 지칭하지는 않으며, 다른 실시예들에 대해 반드시 상호 배타적인 별도의 또는 대안적인 실시예들도 아니다.
청구항들에 나타나는 참조 번호들은 단지 예시에 의한 것이며, 청구항들의 범위에 대한 제한적인 영향을 가지지 않는다.
명시적으로 기술되지 않지만, 본 실시예들 및 변형예들은 임의의 조합 또는 서브조합으로 이용될 수 있다.
본 개시내용은 픽처 블록의 인코딩/디코딩에 대해 기술되지만, 시퀀스의 각각의 픽처가 다수의 블록들로 구획되고 블록들이 하기에 기술되는 바와 같이 순차적으로 인코딩/디코딩되기 때문에, 픽처 또는 픽처들의 시퀀스(비디오)의 인코딩/디코딩으로 확장한다.
블록 또는 컴포넌트의 평균 값은 이 블록 또는 컴포넌트의 샘플들의 값들로부터 계산되는 평균 값이다.
도 1은 본 개시내용의 실시예에 따라 픽처 블록을 인코딩하기 위한 방법의 단계들의 블록도(1)를 도시한다.
단계(100)에서, 모듈(IC)은 인코딩될 픽처 블록(B)의 휘도 컴포넌트(L)를 획득한다. 휘도 컴포넌트(L)의 픽셀 값들의 동적 범위는 다음에서 원래의 비트 수(no)라고 명명되는, 다수의 비트들에 대해 정의된다. 픽처 블록(B)은 픽처 블록(B)의 컬러 컴포넌트를 정의하는 인덱스(i)를 갖는 적어도 하나의 컬러 컴포넌트(C(i))를 더 가질 수 있다.
본 개시내용은 그레이 픽처 블록(grey picture block)(컬러 컴포넌트를 가지지 않음)에도, 하나 이상의 컬러 컴포넌트들을 갖는 픽처 블록에도 제한되지 않는다. 그레이 레벨 픽처가 하기에 기술되는 바와 같이 인코딩될 때, 컬러 컴포넌트들이라 지칭되는 기재에 대한 고려가 존재하지 않는다.
타겟이 되는 비트 수를 이용함으로써 블록의 값들을 클리핑하는 것은, nlr개 비트들을 갖는 샘플 값들(nlr)을 나타낼 때 허용되는 최솟값보다 더 낮은 샘플들에 대해, 이러한 샘플 값들을 하한과 동일하도록 설정하는 결과를 초래할 수 있다. 마찬가지로, nlr개 비트들을 갖는 샘플 값들(nlr)을 나타낼 때 허용되는 최댓값보다 더 높은 샘플들에 대해, 클리핑은 이 샘플 값들을 상한과 동일하도록 설정하는 것으로 구성된다.
방법의 예에 따르면, 단계(104)에서, 모듈(CLI)은, 휘도 블록()이 JPEG2000, HEVC, H265, H264/AVC 등과 같은 전통적인 인코더(ENC)에 의해 인코딩되도록(단계 106) 정의되는 제3 비트 수(ne)를 이용함으로써 휘도 블록()의 값들을 클리핑한다.
방법의 예에 따르면, 인코딩된 휘도 블록의 값들은 비트스트림(F)에 가산된다.
도 2는 본 원리들의 예에 따라 픽처 블록을 디코딩하기 위한 방법의 단계들의 블록도(2)를 도시한다.
디코딩하기 위한 방법의 이 실시예는 도 1에 따른 방법에 의해 인코딩되는 픽처 블록의 디코딩을 허용한다.
단계(200)에서, 휘도 블록()은 로컬 또는 원격 메모리로부터, 또는 디코더(DEC)에 의해 도 2에 예시된 바와 같이 비트스트림(F)을 전부 또는 부분적으로 디코딩함으로써 획득된다.
단계(201)에서, 모듈(ITR)은 제1 표현()에 역 전달 함수(f-1)를 적용함으로써, 휘도 블록()의 평균 값의, 원래의 비트 수(no)로 표현되는, 제2 표현()을 획득한다.
단계들(102 및 201)의 예에 따르면, 평균 값의, 출력 비트 수로 표현되는, 표현은, 전달 함수(f)를 적용함으로써 입력 비트 수로 표현되는 평균 값으로부터 획득된다.
따라서, 예를 들어, 단계(102)에서, (원래의 비트 수(no)로 표현되는) 평균 값()의 (제1 비트 수(nl)로 표현되는) 제1 표현()은 이러한 평균 값()을 제1 비트 수(nl)로 표현하기 위해 전달 함수를 적용함으로써 획득된다.
위에 설명된 바와 같이 모듈(TR)은 전달 함수(f)를 적용하고, 모듈(ITR)은 입력 데이터에 대해 전달 함수(f-1)를 적용한다. 전달 함수(f-1)가 전달 함수(f)의 역이라는 것에 유의하는데, 즉, 전달 함수(f)가 입력 비트 수로부터 출력 비트 수까지 데이터의 역학(dynamic)을 "전달"할 때, 전달 함수(f-1)는 상기 입력 비트 수에 대해 데이터의 역학을 "전달"한다.
예를 들어, 전달 함수는 "High Dynamic Range Electro-Optical Transfer Function of Mastering Reference Displays"(SMPTE 표준, ST 2084:2014)에 정의된 단조 함수이다.
도 3은 본 개시내용의 실시예에 따라 픽처 블록을 인코딩하기 위한 방법의 단계들의 블록도(3)를 도시한다.
단계(100)에서, 모듈(IC)은 인코딩될 픽처 블록(B)의 휘도 컴포넌트(L)를 획득하고, 단계(101)에서, 모듈(LI)은 휘도 컴포넌트(L)의 평균 값()을 획득하고, 단계(102)에서, 모듈(TR)은 전달되는 평균 값이라 명명되는 평균 값()의 표현()을 획득한다.
도 4는 본 개시내용의 실시예에 따라 픽처 블록을 디코딩하기 위한 방법의 단계들의 블록도(4)를 도시한다.
디코딩하기 위한 방법의 이러한 실시예는 도 3에 따른 방법에 의해 인코딩되는 픽처 블록의 디코딩을 허용한다.
도 5는 도 3에 대한 방법의 변형의 단계들의 블록도(5)를 도시한다.
도 6은 본 개시내용의 실시예에 따라 픽처 블록을 디코딩하기 위한 방법의 단계들의 블록도(6)를 도시한다.
디코딩하기 위한 방법의 이러한 실시예는 도 5에 따른 방법에 의해 인코딩되는 픽처 블록의 디코딩을 허용한다.
단계(600)에서, 잔여 평균 값()이 로컬 또는 원격 메모리로부터, 또는 디코더(DEC1)에 의해, 도 6에 예시된 바와 같이, 적어도 부분적으로 비트스트림(BF 또는 F)을 디코딩함으로써, 획득된다.
도 7-14는 휘도 블록 및 컬러 컴포넌트들이, 지각 공간(PS)에 정의되는 상한()에 의존하는 변환(T)에 기초하여 변환될 때 도 1-6에 관해 기술된 인코딩과 디코딩 방법들, 및 인코딩될 픽처 블록의 디스플레이되는 디코딩된 버전에서의 시각적 손실들의 제어를 가능하게 하는 방법들의 변형의 단계들의 블록도를 도시한다.
수학적으로 말하면, 메트릭 은, 지각 임계치()(또는 JND(Just Noticeable Difference)라 지칭됨)가 존재하고 그 지각 임계치 미만에서 사람이 지각 공간의 2개의 컬러들 간의 시각적 차이를 지각할 수 없도록, 즉,
따라서, 수학식 (1)의 메트릭()이 지각 임계치() 미만에서 유지되도록 그 컴포넌트들이 지각 공간에 속하는 픽처 블록을 인코딩하는 것은 픽처 블록의 디스플레이되는 디코딩된 버전이 시각적으로 무손실임을 보장한다.
예에 따르면, 메트릭은 픽셀 기반으로 계산될 수 있다.
실제로, 3개의 다음 부등식들:
을 개별적으로 제어하는 것이 더 용이하다는 것이 주목될 수 있다.
수학식 (1)이 보다 더 큰 상한으로 이행되는 경우, 다음과 같이, 인코딩되는 픽처 블록이 시각적으로 제어된다라고 하는데, 즉, 이 픽처 블록의 디스플레이되는 디코딩된 버전의 시각적 손실들이 제어된다는 것이 주목될 수 있다.
픽처 블록(B)이 예를 들어, (R,G,B)와 같은 비 지각 공간에 속하는 컴포넌트들을 포함할 때, 지각 공간에 속하는 잠재적으로 2개의 컬러 컴포넌트들(C1 및 C2) 및 휘도 컴포넌트(L)를 획득하기 위해 픽처 블록(B)에 지각 변환이 적용된다.
이러한 지각 변환은 디스플레이의 조명 조건들로부터 정의되며, 초기 컬러 공간에 의존한다.
예를 들어, 초기 공간이 (R, G, B) 컬러 공간이라고 가정하면, 픽처 블록(B)은 공지된 선형 공간(X, Y, Z)으로 먼저 변환되고(역 감마 보정이 잠재적으로 요구될 수 있음), 그 결과적인 이미지는 이후, 여기서 (X,Y,Z) 공간 내의 값들의 3D 벡터인, 인코딩된 이미지의 디코딩된 버전의 디스플레이의 기준 조명 조건들로부터 변환된다.
결과적으로, 예를 들어, 이러한 지각 변환은 지각 공간 LabCIE1976이 선택될 때 다음과 같이 정의된다:
여기서, ff는 예를 들어,
로 주어지는 변환 함수이다.
후속하는 메트릭은 지각 공간 LabCIE1976에 대해 정의될 수 있다:
여기서,
그리고,
본 개시내용은 지각 공간 LabCIE1976에 제한되지 않으며, 동일한 Lab 공간이지만 지각 거리를 측정하기 위한 상이한 메트릭을 갖는 LabCIE1994, LabCIE2000와 같은 임의의 타입의 지각 공간, 또는 예를 들어, 임의의 다른 유클리드 지각 공간으로 확장될 수 있다. 다른 예들은 LMS 공간들 및 IPT 공간들이다. 조건은, 메트릭이 지각 차이에 바람직하게 비례하기 위해 이러한 지각 공간들 상에서 정의된다는 것이며; 그 결과, 동종 최대 지각 임계치()가 존재하며, 그 미만에서는 사람이 지각 공간의 2개의 컬러들 사이의 시각적 차이를 지각할 수 없다.
이 예에 따르면, 모듈(IC)(도 7, 10 및 12에서 단계(100))은 인코딩될 블록(B)의 각각의 컬러 컴포넌트를 획득한다. 따라서, 블록(B)은 휘도 컴포넌트(L), 및 픽처 블록(B)의 컬러 컴포넌트를 식별하는 인덱스(i)를 갖는 적어도 하나의 컬러 컴포넌트()를 포함한다. 픽처 블록(B)의 컴포넌트들은 지각 공간, 일반적으로 3D 공간에 속하는데, 즉, 블록(B)은 휘도 컴포넌트(L), 및 하기에서 또한 C1 및 C2라고 지칭되는 2개의 컬러 컴포넌트들( 및 )을 포함한다.
도 7, 10 및 12에서, 모듈(T)은 지각 공간(PS)에서 정의되며 픽처 블록(B)의 디스플레이되는 디코딩된 버전의 시각적 손실들의 제어를 가능하게 하는 메트릭의 상한()에 의존하는 변환(T)에 기초하여, 휘도 잔여 블록() 및 각각의 컬러 컴포넌트()을 변환한다(단계(700)).
휘도 컴포넌트(L)의 평균 값()은 도 7에 관해 기술되는 방법으로부터 획득되고, 단계(800)에서, 모듈(PT)은 인코딩된 픽처 블록(B)의 디코딩된 버전의 디스플레이의 기준 조명 조건(Yn) 및 평균 값()에 기초하여 상한()을 결정한다.
단계(801)에서, 휘도 블록은 휘도 블록() 또는 그것의 클리핑된 버전(Le,c)으로부터 휘도 잔여 블록()을 감산함으로써 획득된다. 단계(201)에서, 모듈(ITR)은 전달 함수(f-1)를 휘도 블록(801의 출력)에 적용함으로써 휘도 블록의 표현()을 획득한다. 상한()을 결정하기 위해 이용되는 휘도 블록의 버전은 이후 휘도 블록의 상기 표현()이다.
(상한()을 결정하기 위해 이용되는) 휘도 블록()의 버전의 밝기는 픽처 블록에 걸쳐 일정한 것이 아니라, 국부적으로 변경한다. 예를 들어, 휘도 블록()의 버전이 블록의 각각의 픽셀에 대해 동일한 수량화(quantification)를 할당함으로써 변환되는 경우, 상한(은 블록에 걸쳐 일정하지만, 2개의 픽처 블록의 변환된 값들은 상이할 수 있다. 결과적으로, 상한(은 픽처 블록의 밝기 값들에 기초하여 국부적으로 변경한다.
상한(의 국부적 변경들은 블록-기반 변경들에 제한되는 것이 아니라, 예를 들어, 픽처 블록의 밝기 값들에 기초하여 세그먼트화 오퍼레이터와 같은 임의의 오퍼레이터에 의해 픽처 블록에 걸쳐 정의되는 임의의 영역들로 확장할 수 있다.
단계(800)의 예에 따르면, 픽처 블록의 디스플레이 동안, 최대 환경적 밝기 값()까지의 조명의 잠재적 증가를 가정하면, 상한()은 휘도 블록()의 버전의 밝기 값(YQ) 대 최대 환경적 밝기 값()의 비로부터 결정된다.
여기서, ()는 인코딩된 픽처 블록의 디코딩된 버전의 디스플레이의 기준 조명 조건들이고, YQ는 휘도 블록()의 버전의 밝기 및 가 지각 인코딩 파라미터임을 나타내는 값이다. 통상적으로, 는 시각적으로 무손실 인코딩에 대해 에 가깝도록, 그리고 인코딩된 이미지에서 시각적 손실들의 제어를 갖는 인코딩에 대해 보다 더 크도록 선택된다.
대안적으로, 국부적 특성을 갖는 인코딩된 픽처 블록(의 디코딩된 버전의 디스플레이의 기준 조명 조건들은 YQ/에 의해 정의되는 인코딩된 픽처 블록의 디코딩된 버전의 디스플레이의 전체 기준 조명 조건들에 의해 대체될 수 있다.
코딩 관점(컬러 코딩)으로부터,
에 의해 주어지며, 상한은 로 설정되며, 통상적으로, 는 1로 설정된다. 이 마지막 수학식은, 휘도 블록()의 버전의 밝기가 결코 최대 환경적 밝기 값()보다 더 크도록 취해지지 않을 것임을 의미한다.
에 의해 주어지고, 여기서, 하한은 으로 설정되며; 통상적으로 은 약 1/5로 설정된다. 이는, 최대 환경적 밝기 값()에 의해 휘도 블록()의 버전의 어두운 국부적 밝기의 콘트라스트 마스킹 효과로 인한 것이다.
한계(bound)들 모두의 조합은
에 의해 간단히 획득된다.
따라서, 변환(T)은 국부적으로 변경하는 상한의 함수이다.
이 실시예는, 특히, 픽처 블록의 어두운 영역들의 양호한 변환을 보장하기에 유리하다. 실제로, 어두운 영역들은 1보다 훨씬 더 낮은, 매우 낮은 휘도 픽셀 값들을 갖는다. 따라서, 상한()에 의한 정규화가 수행되지 않는 경우, 모든 이러한 픽셀들은 변환되기 전에 0으로 매핑되어, 원하는 지각 변환 정확도를 유실할 것이다. 이러한 영역들에서 작은, 상한()에 의한 정규화는, 픽셀 값들을 늘여서(stretch), 수량화 이전에 충분한 포맷 정확도를 허용한다. 또한, 매우 밝은 픽셀들에 대해, 정규화는 밝은 영역들 내에서 1보다 훨씬 더 큰 상한()으로 픽셀 값들을 나눔으로써 너무 큰 픽셀 값들을 회피한다.
유사하게, 각각의 변환된 컬러 컴포넌트()는 상한()에 의해 분할되고, 이후 결과적인 컴포넌트는 수학식(1)의 메트릭이 1 미만으로 유지되어 컬러 컴포넌트의 시각적-무손실 변환에 도달하도록 변환된다.
도 9, 12 및 13의 단계(901)에서, 모듈(IT)은, 역-변환(IT)을 적용함으로써, 휘도 잔여 블록()(도 9 및 12의 단계(202)의 출력 및 도 13의 단계(602)의 출력)을 변환한다. 상기 역-변환(IT)은 지각 임계치()에 의존한다.
용어 "역-변환"이 단계(700) 동안 적용되는 변환(T)의 함수에 비해 역 함수를 갖는 변환을 나타낸다는 것이 주목될 수 있다.
따라서, 예에 따르면, 상한()은 인코딩된 픽처 블록의 디코딩된 버전의 디스플레이의 기준 조명 조건들 및 휘도 블록()의 평균 값의 표현()(도 9 및 12의 단계(201)의 출력 또는 도 13의 단계(601)의 출력)에 따라 결정된다.
도 9 및 11의 단계(203)에서, 그리고 도 13의 단계(603)에서, 픽처 블록의 디코딩된 휘도 컴포넌트()는 역-변환된 휘도 잔여 블록()과 휘도 블록()의 평균 값의 표현()(또는 )을 함께 가산함으로써 획득된다.
도 9, 11 및 13의 단계(900)에서, 디코더(DEC2)는 각각의 컬러 컴포넌트(C(i))의 디코딩된 버전을 획득한다.
도 9, 11 및 13의 단계(901)에서, 모듈(IT)은 역-변환(IT)을 적용함으로써 각각의 디코딩된 컬러 컴포넌트(C(i))를 변환한다.
도 9, 11 및 13의 단계(903)에서, 모듈(ASSO)은 픽처 블록의 디코딩된 휘도 컴포넌트()를 각각의 역-변환된 컬러 컴포넌트(C(i))와 연관시킴으로써 디코딩된 픽처 블록들을 획득한다.
각각 DEC1 및 DEC2인 디코더들(DEC)은, 각자 ENC1 및 ENC2인 인코더들(ENC)에 의해 인코딩된 데이터를 디코딩하도록 구성된다.
인코더들(ENC)(ENC1 및/또는 ENC2)(및 디코더들(DEC)(DEC1 및/또는 DEC2))은 특정 인코더(디코더)에 제한되지 않지만, 엔트로피 인코더(디코더)가 요구될 때, 허프만 코더, 산술 코더, 또는 h264/AVC 또는 HEVC에서 이용되는 Cabac과 같은 상황 적응형 코더와 같은 엔트로피 인코더가 유리하다.
인코더들(ENC 및 ENC2)(및 디코더 DEC 및 DEC2)은, 예를 들어, JPEG, JPEG2000, MPEG2, h264/AVC 또는 HEVC와 같이 손실을 갖는 이미지/비디오 코더일 수 있는 특정 인코더에 제한되지 않는다.
인코더 ENC1(및 디코더 DEC1)는 JPEG 무손실, h264/AVC 무손실 또는 트렐리스 기반 인코더(JPEG-LS: "Information technology - Lossless and near-lossless compression of continuous-tone still images - Baseline", ITU-T Recommendation T.87, 1998년 6월)와 같은 이미지 코더일 수 있는 특정 무손실 또는 준 무손실 인코더에 제한되지 않는다.
도 1-13에서, 모듈들은 구별가능한 물리적 유닛들과 관련될 수 있거나 그렇지 않을 수 있는, 기능 유닛들이다. 예를 들어, 이러한 모듈들 또는 이들 중 일부는 고유한 컴포넌트 또는 회로 내에 함께 올 수 있거나, 또는 소프트웨어의 기능성들에 기능성들에 기여한다. 그에 반해, 일부 모듈들은 잠재적으로 별도의 물리적 엔티티들로 구성될 수 있다. 본 개시내용과 호환가능한 장치는 순수 하드웨어를 이용하여, 예를 들어, 각자 <<Application Specific Integrated Circuit>>, <<Field-Programmable Gate Array>>, <<Very Large Scale Integration>>인 ASIC 또는 FPGA 또는 VLSI과 같은 전용 하드웨어를 이용하여, 또는 디바이스 내에 내장되는 몇몇 집적 전자 컴포넌트들로부터 또는 하드웨어 및 소프트웨어 컴포넌트들의 혼합으로부터 구현된다.
도 14는 도 1-13과 관련하여 기술되는 방법을 구현하도록 구성될 수 있는 디바이스(1400)의 예시적인 아키텍처를 나타낸다.
디바이스(1400)는 데이터 및 어드레스 버스(1401)에 의해 함께 링크되는 다음 엘리먼트들을 포함한다:
- 예를 들어, DSP(또는 Digital Signal Processor)인 마이크로프로세서(1402)(또는 CPU);
- ROM(또는 Read Only Memory)(1403);
- RAM(또는 Random Access Memory)(1404);
- 저장 인터페이스(1405);
- 애플리케이션으로부터, 전송할 데이터를 수신하기 위한 I/O 인터페이스(1406); 및
- 배터리(1407).
예에 따르면, 배터리(1407)는 디바이스에 대해 외부에 있다. 언급된 메모리 각각에서, 명세서에서 이용되는 단어 <<레지스터>>는 작은 용량(일부 비트들)의 영역들 또는 매우 큰 영역(예를 들어, 전체 프로그램 또는 대량의 수신되는 또는 디코딩되는 데이터)에 대응할 수 있다. ROM(1403)은 적어도 프로그램 및 파라미터들을 포함한다. ROM(1403)은 본 원리들에 따라 기법들을 수행하기 위한 알고리즘 및 명령어들을 저장할 수 있다. 스위치 온 될 때, CPU(1402)는 RAM에 프로그램을 업로드하고 대응하는 명령어들을 실행한다.
RAM(1404)은, 레지스터 내에, 디바이스(1400)의 스위치 온 이후 CPU(1402)에 의해 실행되고 업로드되는 프로그램, 레지스터 내에 입력 데이터, 레지스터 내에 방법의 상이한 상태들에서 중간 데이터, 그리고 레지스터 내에 방법의 실행을 위해 이용되는 다른 변수들을 포함한다.
본원에 기술되는 구현예들은, 예를 들어, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림, 또는 신호로 구현될 수 있다. 단일 형태의 구현예의 콘텍스트에서만 논의되더라도(예를 들어, 방법 또는 디바이스로서만 논의되더라도), 논의되는 특징들의 구현예는 또한 다른 형태들(예를 들어, 프로그램)로 구현될 수 있다. 장치는, 예를 들어, 적절한 하드웨어, 소프트웨어, 및 펌웨어로 구현될 수 있다. 방법들은, 예를 들어, 컴퓨터, 마이크로프로세서, 집적 회로, 또는 프로그래밍가능한 로직 디바이스를 포함하는, 일반적으로 처리 디바이스들이라 지칭되는, 예를 들어, 프로세서와 같은, 예를 들어 장치에서 구현될 수 있다. 프로세서들은 또한 예를 들어, 컴퓨터, 셀 폰, 휴대용/개인용 디지털 보조 단말("PDA"), 및 최종-이용자들 간의 정보의 통신을 용이하게 하는 다른 디바이스들을 포함한다.
인코딩 또는 인코더의 예에 따르면, 픽처 블록(B)은 소스로부터 획득된다. 예를 들어, 소스는:
- 로컬 메모리(1403 또는 1404), 예를 들어, 비디오 메모리 또는 RAM(또는 Random Access Memory), 플래시 메모리, ROM(또는 Read Only Memory), 하드 디스크;
- 저장 인터페이스(1405), 예를 들어, 대용량 저장소, RAM, 플래시 메모리, ROM, 광학 디스크 또는 자기 지지대와의 인터페이스;
- 통신 인터페이스(1406), 예를 들어, 유선 인터페이스(예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스) 또는 무선 인터페이스(예컨대, IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스); 및
- 픽처 캡쳐 회로(예를 들어, CCD(또는 Charge-Coupled Device) 또는 CMOS(또는 Complementary Metal-Oxide-Semiconductor)와 같은 센서)
를 포함하는 세트에 속한다.
- 로컬 메모리(1403 또는 1404), 예를 들어, 비디오 메모리 또는 RAM, 플래시 메모리, 하드 디스크;
- 저장 인터페이스(1405), 예를 들어, 대용량 저장소, RAM, 플래시 메모리, ROM, 광학 디스크 또는 자기 지지대와의 인터페이스;
- 통신 인터페이스(1406), 예를 들어, 유선 인터페이스(예를 들어, 버스 인터페이스(예를 들어, USB(또는 Universal Serial Bus)), 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스, HDMI(High Definition Multimedia Interface) 인터페이스) 또는 무선 인터페이스(예컨대, IEEE 802.11 인터페이스, WiFi® 또는 Bluetooth® 인터페이스); 및
- 디스플레이
를 포함하는 세트에 속한다.
인코딩 또는 인코더의 예들에 따르면, 비트스트림(BF 및/또는 F)이 목적지에 송신된다. 예로서, 비트스트림(F 및 BF) 중 하나, 또는 비트스트림(F 및 BF) 모두는, 로컬 또는 원격 메모리, 예를 들어, 비디오 메모리(1404) 또는 RAM(1404), 하드 디스크(1403)에 저장된다. 변형예로서, 하나의 또는 둘 모두의 비트스트림들이 저장 인터페이스(1405), 예를 들어, 대용량 저장소, 플래시 메모리, ROM, 광학 디스크 또는 자기 지지대에 송신되고 그리고/또는 통신 인터페이스(1406), 예를 들어, 점 대 점 링크, 통신 버스, 점 대 다점 링크 또는 방송 네트워크에 대한 인터페이스를 통해 전송된다.
디코딩 또는 디코더의 예들에 따르면, 비트스트림(BF 및/또는 F)이 소스로부터 획득된다. 예시적으로, 비트스트림이 로컬 메모리, 예를 들어, 비디오 메모리(1404), RAM(1404), ROM(1403), 플래시 메모리(1403) 또는 하드 디스크(1403)로부터 판독된다. 변형예에서, 비트스트림은 저장 인터페이스(1405), 예를 들어, 대용량 저장소, RAM, ROM, 플래시 메모리, 광학 디스크 또는 자기 지지대로부터 수신되고 그리고/또는 통신 인터페이스(1405), 예를 들어, 점 대 점 링크, 버스, 점 대 다점 링크 또는 방송 네트워크에 대한 인터페이스로부터 수신된다.
예들에 따르면, 도 1, 3, 5, 7, 10, 12에 관해 기술된 인코딩 방법을 구현하도록 구성되는 디바이스(1400)는:
- 모바일 디바이스;
- 통신 디바이스;
- 게임 디바이스;
- 태블릿(또는 태블릿 컴퓨터);
- 랩톱;
- 스틸 픽처 카메라;
- 비디오 카메라;
- 인코딩 칩;
- 스틸 픽처 서버; 및
- 비디오 서버(예를 들어, 방송 서버, 주문형 비디오(video-on-demand) 서버 또는 웹 서버)
를 포함하는 세트에 속한다.
예들에 따르면, 도 2, 4, 6, 9, 11, 13에 관해 기술되는 디코딩 방법을 구현하도록 구성되는 디바이스(1500)는:
- 모바일 디바이스;
- 통신 디바이스;
- 게임 디바이스;
- 셋톱 박스;
- TV 세트;
- 태블릿(또는 태블릿 컴퓨터);
- 랩톱;
- 디스플레이; 및
- 디코딩 칩
을 포함하는 세트에 속한다.
도 15에 예시된 예에 따르면, 통신 네트워크(NET)를 통한 2개의 원격 디바이스들(A 및 B) 사이의 전송 상황에서, 디바이스(A)는 도 1, 3, 5, 7, 10, 12에 관해 기술되는 바와 같은 픽처를 인코딩하기 위한 방법을 구현하도록 구성되는 수단을 포함하고, 디바이스(B)는 도 2, 4, 6, 9, 11, 13에 관해 기술되는 바와 같은 디코딩하기 위한 방법을 구현하도록 구성되는 수단을 포함한다.
예에 따르면, 네트워크는, 디바이스(A)로부터 디바이스(B)를 포함하는 디코딩 디바이스들에 스틸 픽처들 또는 비디오 픽처들을 방송하도록 적응되는, 방송 네트워크이다.
디바이스(A)에 의해 전송되도록 의도되는 신호는 비트스트림(B 및/또는 BF)을 반송한다. 비트스트림(F)은 이전에 설명된 바와 같이, 인코딩된 휘도 블록을 포함한다. 이 신호는 인코딩된 휘도 블록이 픽처 블록의 휘도 컴포넌트와 상기 휘도 컴포넌트의 평균 값의 표현의 합산을 나타냄을 표시하는 정보 데이터를 더 포함한다.
도 16은 데이터가 패킷-기반 전송 프로토콜을 통해 전송될 때 이러한 신호의 신택스의 실시예의 예를 도시한다. 각각의 전송되는 패킷(P)은 헤더(H) 및 페이로드(PAYLOAD)를 포함한다. 헤더(H)의 비트는, 예를 들어, 인코딩된 휘도 블록이 픽처 블록의 휘도 컴포넌트와 상기 휘도 컴포넌트의 평균 값의 표현의 합산을 나타냄을 표시하는 정보 데이터를 나타내는데 전용된다.
본원에서 기술되는 다양한 프로세스들 및 특징들의 구현예들은 다양한 상이한 장비 또는 애플리케이션들에서 구현될 수 있다. 이러한 장비의 예들은 인코더, 디코더, 디코더로부터의 출력을 처리하는 후처리기, 인코더에 입력을 제공하는 전처리기, 비디오 코더, 비디오 디코더, 비디오 코덱, 웹 서버, 셋톱 박스, 랩톱, 개인용 컴퓨터, 셀폰, PDA, 및 픽처 또는 비디오를 처리하기 위한 임의의 다른 디바이스 또는 다른 통신 디바이스들을 포함한다. 명백해야 하는 바와 같이, 장비는 이동형일 수 있고, 이동 차량(mobile vehicle)에 설치될 수 있다.
추가로, 방법들은 프로세서에 의해 수행되는 명령어들에 의해 구현될 수 있고, 이러한 명령어들(및/또는 구현예에 의해 생성되는 데이터 값들)은 컴퓨터 판독가능 저장 매체 상에 저장될 수 있다. 컴퓨터 판독가능 저장 매체는 하나 이상의 컴퓨터 판독가능 매체(들)에 포함되며 컴퓨터에 의해 실행가능한 컴퓨터 판독가능 프로그램 코드를 내장하는 컴퓨터 판독가능 프로그램 제품의 형태를 취할 수 있다. 본원에서 이용되는 바와 같은 컴퓨터 판독가능 저장 매체는 그 내에 정보를 저장하기 위한 내재적인 능력 뿐만 아니라 그로부터 정보의 검색을 제공하기 위한 내재적인 능력이 주어진 비일시적 저장 매체로 간주된다. 컴퓨터 판독가능 저장 매체는, 예를 들어, 전자, 자기, 광학, 전자기, 적외선, 또는 반도체 시스템, 장치, 또는 디바이스, 또는 이들의 임의의 적절한 조합일 수 있지만, 이에 제한되지 않는다. 다음은, 통상의 기술자에 의해 쉽게 이해되는 바와 같이, 본 원리들이 적용될 수 있는 컴퓨터 판독가능 저장 매체들의 더욱 특정한 예들을 제공하지만, 단지 예시적이며, 완벽한 열거가 아니라는 것이 이해되어야 한다: 휴대용 컴퓨터 디스켓; 하드 디스크; 판독-전용 메모리(ROM); 소거가능한 프로그래밍 가능한 판독-전용 메모리(EPROM 또는 플래시 메모리); 휴대용 컴팩트 디스크 판독-전용 메모리(CD-ROM); 광학 저장 디바이스; 자기 저장 디바이스; 또는 이들의 임의의 적절한 조합.
명령어들은 프로세서-판독가능 매체 상에 유형적으로 내장되는 응용 프로그램을 형성할 수 있다.
명령어들은, 예를 들어 하드웨어, 펌웨어, 소프트웨어, 또는 그 조합에 존재할 수 있다. 명령어들은, 예를 들어, 운영 체제, 별도의 애플리케이션, 또는 이 둘의 조합에서 발견될 수 있다. 프로세서는, 따라서, 예를 들어, 프로세스를 실행하도록 구성되는 디바이스, 및 프로세스를 수행하기 위한 명령어들을 갖는 프로세서 판독가능 매체(예컨대, 저장 디바이스)를 포함하는 디바이스 모두로서 특성화될 수 있다. 또한, 프로세서 판독가능 매체는, 명령어들에 더하여 또는 명령어들 대신에, 구현예에 의해 생성되는 데이터 값들을 저장할 수 있다.
본 기술분야의 통상의 기술자에게 명백할 바와 같이, 구현예들은, 예를 들어, 저장되거나 전송될 수 있는 정보를 반송하도록 포맷팅된 다양한 신호들을 생성할 수 있다. 이 정보는 예를 들어, 방법을 수행하기 위한 명령어들, 또는 기술된 구현예들 중 하나에 의해 생성되는 데이터를 포함할 수 있다. 예를 들어, 신호는 기술된 실시예의 신택스를 기입하거나 판독하기 위한 규정들을 데이터로서 반송하도록, 또는 기술된 실시예에 의해 기입되는 실제 신택스-값들을 데이터로서 반송하도록 포맷팅될 수 있다. 예를 들어, 이러한 신호는 (예를 들어, 스펙트럼의 라디오 주파수 부분을 이용하여) 전자기파로서, 또는 베이스밴드 신호로서 포맷팅될 수 있다. 포맷팅은 예를 들어, 데이터 스트림을 인코딩하는 것, 및 인코딩된 데이터 스트림을 이용하여 캐리어를 변조하는 것을 포함할 수 있다. 신호가 반송하는 정보는, 예를 들어, 아날로그 또는 디지털 정보일 수 있다. 알려진 바와 같이, 신호는 다양한 상이한 유선 또는 무선 링크들을 통해 전송될 수 있다. 신호는 프로세서 판독가능 매체 상에 저장될 수 있다.
다수의 구현예들이 기술되었다. 그럼에도, 다양한 수정들이 이루어질 수 있다는 것이 이해될 것이다. 예를 들어, 상이한 구현예들의 엘리먼트들이 조합되고, 보충되고, 수정되거나, 또는 제거되어 다른 구현예들을 생성할 수 있다. 추가로, 통상의 기술자는 다른 구조들 및 프로세스들이 개시된 것들에 대해 대체될 수 있고, 결과적인 구현예들이, 적어도 실질적으로 동일한 기능(들)을, 적어도 실질적으로 동일한 방식(들)으로 수행하여, 개시된 구현예들과 적어도 실질적으로 동일한 결과(들)를 달성할 것임을 이해할 것이다. 따라서, 이러한 구현예들 및 다른 구현예들이 이 출원에 의해 고려된다.
Claims (15)
- 휘도 컴포넌트를 갖는 픽처 블록(picture block)을 인코딩하기 위한 방법으로서,
상기 휘도 컴포넌트로부터 계산되는 상기 휘도 컴포넌트의 평균 값의 제1 표현(, )을 감산함으로써 휘도 잔여 블록()을 획득하는 단계(103, 301);
상기 평균 값의 동적 범위를 감소시키기 위해 상기 휘도 컴포넌트의 평균 값()에 전달 함수를 적용함으로써 상기 평균 값의 제2 표현()을 획득하는 단계(102); 및
상기 휘도 잔여 블록()과 상기 평균 값의 제2 표현()을 함께 가산함(105, 302)으로써 획득되는 휘도 블록()을 인코딩하는 단계
를 포함하는 것을 특징으로 하는 방법. - 제6항에 있어서,
상기 픽처 블록은 적어도 하나의 컬러 컴포넌트를 포함하고, 상기 방법은 상기 휘도 잔여 블록()에 역 변환을 적용하는 단계를 더 포함하고, 상기 휘도 잔여 블록()은, 지각 공간의 2개의 포인트들의 시각적 지각들 사이의 차이들을 나타내는 값들을 가지는 메트릭을 갖는 상기 지각 공간에 속하고, 상기 메트릭은 지각 임계치()가 존재하도록 정의되고 ― 상기 지각 임계치 미만에서는 사람이 상기 지각 공간의 2개의 컬러들 사이의 시각적 차이를 지각할 수 없음 ―, 상기 픽처 블록의 디스플레이되는 디코딩된 버전에서의 시각적 손실들의 제어를 가능하게 하는 방법. - 휘도 컴포넌트를 갖는 픽처 블록을 인코딩하는 디바이스로서,
프로세서를 포함하고,
상기 프로세서는,
상기 휘도 컴포넌트로부터 계산되는 상기 휘도 컴포넌트의 평균 값의 제1 표현(, )을 감산함으로써 휘도 잔여 블록()을 획득하고(103, 301);
상기 평균 값의 동적 범위를 감소시키기 위해 상기 휘도 컴포넌트의 평균 값()에 전달 함수를 적용함으로써 상기 평균 값의 제2 표현()을 획득하고(102);
상기 휘도 잔여 블록()과 상기 평균 값의 제2 표현()을 함께 가산함(105, 302)으로써 획득되는 휘도 블록()을 인코딩하도록
구성되는 것을 특징으로 하는 디바이스. - 인코딩된 휘도 블록을 반송하는 신호로서,
상기 인코딩된 휘도 블록이 픽처 블록의 휘도 컴포넌트와 상기 휘도 컴포넌트의 평균 값의 표현의 합산을 나타낸다고 표시하는 정보 데이터를 추가로 반송하는 것을 특징으로 하는 신호. - 컴퓨터 프로그램 제품으로서,
이 프로그램이 컴퓨터 상에서 실행될 때 제1항에 따른 인코딩 방법의 단계들을 실행하기 위한 프로그램 코드 명령어들을 포함하는 컴퓨터 프로그램 제품. - 컴퓨터 프로그램 제품으로서,
이 프로그램이 컴퓨터 상에서 실행될 때 제5항에 따른 디코딩 방법의 단계들을 실행하기 위한 프로그램 코드 명령어들을 포함하는 컴퓨터 프로그램 제품. - 프로세서 판독가능 매체로서,
프로세서가 적어도 제1항에 따른 인코딩 방법의 단계들을 수행하도록 하기 위한 명령어들이 저장되어 있는 프로세서 판독가능 매체. - 프로세서 판독가능 매체로서,
프로세서가 적어도 제5항에 따른 디코딩 방법의 단계들을 수행하도록 하기 위한 명령어들이 저장되어 있는 프로세서 판독가능 매체. - 비일시적 저장 매체로서,
상기 프로그램이 컴퓨팅 디바이스 상에서 실행될 때, 제1항 내지 제7항 중 어느 한 항에 따른 방법의 단계들을 실행하기 위한 프로그램 코드의 명령어들을 반송하는 비일시적 저장 매체.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP15305737.7 | 2015-05-18 | ||
EP15305737.7A EP3096519A1 (en) | 2015-05-18 | 2015-05-18 | A method for encoding/decoding a picture block |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20160135670A true KR20160135670A (ko) | 2016-11-28 |
Family
ID=53284185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160060259A KR20160135670A (ko) | 2015-05-18 | 2016-05-17 | 픽처 블록을 인코딩/디코딩하기 위한 방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10547855B2 (ko) |
EP (2) | EP3096519A1 (ko) |
JP (1) | JP2016220203A (ko) |
KR (1) | KR20160135670A (ko) |
CN (1) | CN106170090B (ko) |
TW (1) | TW201705764A (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3467778A1 (en) * | 2017-10-06 | 2019-04-10 | Thomson Licensing | A method and apparatus for encoding/decoding the geometry of a point cloud representing a 3d object |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000134631A (ja) * | 1998-10-23 | 2000-05-12 | Canon Inc | 画像符号化装置、方法、画像復号化装置、方法及びコンピュータ読み取り可能な記憶媒体 |
JP4214480B2 (ja) * | 2004-04-21 | 2009-01-28 | ソニー株式会社 | 画像処理装置および方法、並びにプログラム |
JP2007074592A (ja) * | 2005-09-09 | 2007-03-22 | Sony Corp | 画像処理装置および方法、プログラム、並びに記録媒体 |
US7817873B2 (en) * | 2005-11-09 | 2010-10-19 | Intel Corporation | Enhancing contrast of video data while preserving sharpness |
US8537893B2 (en) | 2006-01-23 | 2013-09-17 | Max-Planck-Gesellschaft Zur Forderung Der Wissenschaften E.V. | High dynamic range codecs |
US8237865B2 (en) | 2006-12-18 | 2012-08-07 | Emanuele Salvucci | Multi-compatible low and high dynamic range and high bit-depth texture and video encoding system |
JP2009033293A (ja) * | 2007-07-25 | 2009-02-12 | Rohm Co Ltd | 画像処理回路、半導体装置、画像処理装置 |
JP2009267850A (ja) * | 2008-04-25 | 2009-11-12 | Canon Inc | 動画像符号化装置及びその制御方法、並びに、コンピュータプログラム |
US8363131B2 (en) * | 2009-01-15 | 2013-01-29 | Aptina Imaging Corporation | Apparatus and method for local contrast enhanced tone mapping |
JP5495025B2 (ja) * | 2009-12-22 | 2014-05-21 | ソニー株式会社 | 画像処理装置および方法、並びにプログラム |
US8666186B1 (en) | 2010-02-12 | 2014-03-04 | Pacific Data Images Llc | Lossy compression of high dynamic range video |
US9036042B2 (en) | 2011-04-15 | 2015-05-19 | Dolby Laboratories Licensing Corporation | Encoding, decoding, and representing high dynamic range images |
CN104620280A (zh) * | 2012-09-20 | 2015-05-13 | 夏普株式会社 | 图像处理装置、图像显示装置、图像摄像装置、图像印刷装置、灰度变换方法及程序 |
ITUB20155949A1 (it) * | 2015-11-26 | 2017-05-26 | Trellis Europe S R L | Metodo per la codifica e decodifica di immagini hdr |
-
2015
- 2015-05-18 EP EP15305737.7A patent/EP3096519A1/en not_active Withdrawn
-
2016
- 2016-04-22 TW TW105112524A patent/TW201705764A/zh unknown
- 2016-05-12 EP EP16169266.0A patent/EP3096520B1/en active Active
- 2016-05-16 JP JP2016097619A patent/JP2016220203A/ja not_active Withdrawn
- 2016-05-17 CN CN201610325693.0A patent/CN106170090B/zh active Active
- 2016-05-17 KR KR1020160060259A patent/KR20160135670A/ko unknown
- 2016-05-17 US US15/157,342 patent/US10547855B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
TW201705764A (zh) | 2017-02-01 |
US10547855B2 (en) | 2020-01-28 |
EP3096519A1 (en) | 2016-11-23 |
CN106170090A (zh) | 2016-11-30 |
JP2016220203A (ja) | 2016-12-22 |
CN106170090B (zh) | 2021-09-14 |
US20160345015A1 (en) | 2016-11-24 |
EP3096520B1 (en) | 2021-07-07 |
EP3096520A1 (en) | 2016-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102529013B1 (ko) | 컬러 픽처를 인코딩 및 디코딩하는 방법 및 장치 | |
KR102120571B1 (ko) | 넌-4:4:4 크로마 서브-샘플링의 디스플레이 스트림 압축 (dsc) 을 위한 엔트로피 코딩 기법들 | |
KR102486233B1 (ko) | 파라메트릭 톤 - 조정 함수를 사용하여 영상을 톤 - 매핑하는 방법 및 장치 | |
US20170171565A1 (en) | Method and apparatus for predicting image samples for encoding or decoding | |
JP6568078B2 (ja) | 画像データを符号化するための方法および装置ならびに画像データを復号するための方法および装置 | |
KR20160102414A (ko) | 높은 동적 범위 이미지를 인코딩 및/또는 비트스트림을 디코딩하기 위한 방법 및 장치 | |
KR20160135670A (ko) | 픽처 블록을 인코딩/디코딩하기 위한 방법 | |
US10574987B2 (en) | Method and device for encoding a high-dynamic range image | |
US10148958B2 (en) | Method and device for encoding and decoding a HDR picture and a LDR picture | |
EP2887665A1 (en) | Method and device for encoding a high-dynamic range image | |
EP3146718B1 (en) | Method and device for scalable encoding of a high dynamic range frame and/or decoding a bitstream representing such a frame | |
WO2015177123A1 (en) | Method and device for encoding a frame and/or decoding a bitstream representing a frame | |
WO2016139210A1 (en) | Method and device for processing image data | |
KR20180017018A (ko) | 컬러 픽처 데이터에 대한 색차 성분들을 획득하기 위한 방법 및 디바이스 | |
WO2015177125A1 (en) | Method and device for encoding a frame and/or decoding a bitstream representing a frame | |
WO2015177126A1 (en) | Method and device for encoding a frame and/or decoding a bitstream representing a frame | |
WO2015177119A1 (en) | Method and device for encoding a frame and/or decoding a bitstream representing a frame |