KR102004199B1 - 높은 동적 범위 이미지들의 프로세싱 - Google Patents

높은 동적 범위 이미지들의 프로세싱 Download PDF

Info

Publication number
KR102004199B1
KR102004199B1 KR1020157012158A KR20157012158A KR102004199B1 KR 102004199 B1 KR102004199 B1 KR 102004199B1 KR 1020157012158 A KR1020157012158 A KR 1020157012158A KR 20157012158 A KR20157012158 A KR 20157012158A KR 102004199 B1 KR102004199 B1 KR 102004199B1
Authority
KR
South Korea
Prior art keywords
dynamic range
range image
exposure map
lower dynamic
image
Prior art date
Application number
KR1020157012158A
Other languages
English (en)
Other versions
KR20150084832A (ko
Inventor
지에푸 자이
제 왕
동 티안
Original Assignee
톰슨 라이센싱
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 톰슨 라이센싱 filed Critical 톰슨 라이센싱
Publication of KR20150084832A publication Critical patent/KR20150084832A/ko
Application granted granted Critical
Publication of KR102004199B1 publication Critical patent/KR102004199B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • G06T5/007
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20208High dynamic range [HDR] image processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Studio Devices (AREA)

Abstract

여러 구현들은 높은 동적 범위 (high dynamic range: "HDR") 이미지들을 다룬다. 하나의 특정의 구현에서, 낮은 동적 범위 ("LDR") 이미지가 HDR 이미지로부터 생성되고, HDR 이미지가 LDR 이미지로부터 복원되는 것을 허용하는 정보가 생성된다. LDR 이미지 및 그 정보가 인코딩된다. 다른 구현에서, 신호 또는 신호 구조는 인코딩된 LDR 이미지를 포함하는 LDR 섹션, 및 인코딩된 정보를 포함하는 정보 섹션을 포함한다. 다른 구현에서, 인코딩된 LDR 이미지 및 인코딩된 정보 양자 모두가 디코딩된다. HDR 이미지는 그 후 디코딩된 LDR 이미지 및 디코딩된 정보에 기초하여 복원된다.

Description

높은 동적 범위 이미지들의 프로세싱{PROCESSING HIGH DYNAMIC RANGE IMAGES}
디지털 이미지들에 관련된 구현들이 기술된다. 여러 특정의 구현들이 높은 동적 범위 (high dynamic range: "HDR") 이미지들에 관한 것이다.
기술은 예를 들어 더 큰 범위의 칼라 또는 휘도를 나타낼 수 있는 이미지들과 같은 더욱 복잡한 이미지들을 허용하는 것이다. 그러한 이미지들은 자주 HDR 이미지들로서 지칭된다. 대조적으로, 표준 이미지들은 자주 낮은 동적 범위 ("LDR") 이미지들로서 지칭된다. HDR 이미지들을 코딩하는 것은 다양한 기술적 도전들을 제공한다.
일반적인 양태에 따르면, 더 낮은 동적 범위 이미지가 더 높은 동적 범위로부터 생성된다. 정보가 더 높은 동적 범위 이미지로부터 생성되어 더 높은 동적 범위 이미지의 복원을 허용한다. 더 낮은 동적 범위 이미지 및 그 정보가 인코딩된다.
다른 일반적인 양태에 따르면, 신호 또는 신호 구조는 인코딩된 더 낮은 동적 범위 이미지를 포함하는 더 낮은 동적 범위 섹션을 포함한다. 신호 또는 신호 구조는 또한 인코딩된 정보를 포함하는 정보 섹션을 더 포함한다. 그 정보는 더 낮은 동적 범위 이미지로부터 더 높은 동적 범위 이미지의 복원을 허용한다.
다른 일반적인 양태에 따르면, 인코딩된 더 낮은 동적 범위 이미지가 디코딩된다. 인코딩된 정보가 또한 디코딩된다. 그 정보는 더 낮은 동적 범위 이미지로부터 더 높은 동적 범위 이미지의 복원을 허용한다. 더 높은 동적 범위 이미지는 디코딩된 더 낮은 동적 범위 이미지 및 디코딩된 정보에 기초하여 복원된다.
하나 이상의 구현들의 상세들이 첨부하는 도면들 및 이하의 상세한 설명에서 진술된다. 하나의 특정의 방식으로 기술될지라도, 구현들이 여러가지 방식들로 구성 또는 구체화될 수도 있다는 것이 명확해야한다. 예를 들어, 하나의 구현은 방법으로서 수행될 수도 있거나, 동작들의 세트를 수행하도록 구성된 장치 또는 동작들의 세트를 수행하는 명령들을 저장하는 장치와 같은 장치로서 구현되거나, 신호로 구현될 수도 있다. 다른 양태들 및 특징들은 첨부하는 도면들 및 청구범위와 결합하여 고려된 다음의 상세할 설명으로부터 명백하게 될 것이다.
도 1 은 HDR 이미지들을 프로세싱하는 장치 및 프로세스의 구현을 도시하는 흐름도이다.
도 2 는 인코딩 장치 및 프로세스의 구현을 도시하는 흐름도이다.
도 3 은 디코딩 장치 및 프로세스의 구현을 도시하는 흐름도이다.
도 4 는 인코더 및 인코딩 프로세스의 구현을 도시하는 블록도이다.
도 5 는 디코더 및 디코딩 프로세스의 구현을 도시하는 블록도이다.
도 6 은 하나 이상의 구현들에서 사용될 수도 있는 송신 시스템 및 프로세스의 구현을 도시하는 블록도이다.
도 7 은 하나 이상의 구현들에서 사용될 수도 있는 수신 시스템 및 프로세스의 일예를 도시하는 블록도이다.
본 출원에서 제시된 특징들의 일부의 프리뷰로서, 적어도 하나의 구현은 HDR 이미지의 LDR 이미지 및 노출 맵 또는 룩업 테이블 ("LUT") 중 어느 하나로의 분해를 기술한다. 노출 맵 또는 LUT 중 어느 하나와 함께, LDR 이미지가 인코딩되고 저장을 위한 송신을 위해 비트스트림 내로 삽입된다. LDR 이미지 및 노출 맵은 일부 방식에서 조인트로 (jointly) 인코딩될 수도 있다. 예를 들어, 노출 맵은 인코딩된 LDR 이미지의 복원에 기초하여 코딩될 수도 있다. 수신기는 예를 들어 인코딩된 데이터를 갖는 송신을 수신함으로써 비트스트림에 액세스하여, 저장 디바이스로부터 그 비트스트림을 판독한다. 수신단에서의 디코더는 그 후 LDR 이미지, 및 존재하는 경우, 노출 맵 또는 LUT 를 디코딩한다. 디코딩된 정보에 기초하여, 수신기는 HDR 이미지를 재구성한다. 이하, 노출 맵 구현들 및 LUT 구현들을 포함하여, 여러 구현들을 더욱 상세히 논의한다.
프리뷰에 계속하여, 노출 맵을 수반하는 여러 구현들은 HDR 비디오 신호를 인코딩하는 다음의 단계들을 갖는 것으로 일반적으로 특징지워 질 수 있다:
1. HDR 분해: 오리지날 HDR 이미지를 2 개의 계층들, 즉 LDR 층 및 노출 맵 층으로 분해.
노출 맵은 통상적으로 각 엔트리가 대응하는 화소 좌표들에서 LDR 이미지로부터 HDR 소스를 복구하는데 사용될 수 있는 승수 (또는 이득) 을 나타내는 2차원 매트릭스로서 정의된다. 이것은 각 화소 좌표 (x, y) 에 대해, 다음의 방정식이 유지된다는 것을 의미한다:
Figure 112015044389031-pct00001
여기서,
f(.) 는 감마 보정된 값을 선형 값으로 맵핑하는 인버스 응답 함수이고,
C 는 원하거나 합리적인 수치 범위에 있는 LDR 이미지 및 노출 맵을 초래하는 상수이며,
H 는 HDR 소스 값이고,
L 은 LDR 이미지 값이며,
E 는 노출 맵 값이다.
상기 정의로부터, HDR 이미지/비디오를 분해하는 많은 방법들이 있을 수 있을 것이다. 그러나, 압축 애플리케이션들의 경우, 여러 구현들은 노출 맵이 구분적 평활 신호인 방식으로 HDR 소스를 분해한다. 그것은 노출 맵이 HDR 이미니 내의 소규모 (small-scale) 상세들을 평활화하면서 오리지날 HDR 이미지 내의 대규모 에지들과의 강한 상관들을 갖는다는 것을 의미한다.
여러 구현들은 HDR 소스 값 및 LDR 이미지 값의 복원된 값에 기초하여 노출 맵을 결정한다는 것을 주의하라. 즉, LDR 이미지 값은 인코딩 및 디코딩되어 복원된 LDR 이미지 값을 생성한다. 이러한 복원된 LDR 이미지 값은 그 후 오리지날 HDR 소스 값과 함께 노출 맵 값을 결정하는데 사용된다. 이들 구현들 중 일부에서, 노출 맵은 손실없이 인코딩되어, 가능하게는 HDR 소스 값의 완벽한 재구성을 허용한다.
2. 예를 들어, H.264 (즉, 현존하는 표준화를 위한 국제 기구/국제 전기기술 위원회 ("ISO/IEC") 동화상 전문가 그룹-4 ("MPEG-4") 파트 10 진보된 비디오 코딩 ("AVC") 표준/국제 전기통신 연합, 전기통신 섹터 ("ITU-T") H.264 추천 (이하, "H.264/MPEG-4 AVC 표준" 또는 "AVC 표준", "H.264 표준", 또는 간단히 "AVC" 또는 "H.264" 와 같은, 이들의 변형들) 과 같은 종래의 비디오 코딩 스팀을 사용하여 LDR 계층을 압축.
3. 노출 맵 계층의 압축을 돕기위해 복원된 LDR 계층을 사용.
또, 노출 맵을 수반하는 여러 구현들이 디코더측에서의 다음의 단계들을 갖는 것으로서 일반적으로 특징지워질 수 있다:
1. LDR 계층에 속하는 비트스트림을 추출하고 종래의 디코더를 사용하여 LDR 계층을 디코딩.
2. 노출 맵 계층의 디코딩을 돕기 위해 복원된 LDR 프레임들을 사용.
3. HDR 비디오 신호를 복원하기 위해, 복원된 LDR 계층, 및 디코딩된 노출 맵 계층을 결합.
도 1 을 참조하면, 수개의 상이한 구현들에 적용되는 시스템 (100) 의 컴포넌트들을 도시하는 흐름도가 제공된다. 도 1 은 여러 구현들을 논의하기 위해 사용될 것이다.
시스템 (100) 은 5 개의 섹션들을 포함한다. 이들은 분해 섹션 (102), 인코드 섹션 (104), 신호 섹션 (105), 디코드 섹션 (107), 및 재구성 섹션 (109) 이다.
분해 섹션 (102) 은 또한 디컴포지션 섹션으로서 지칭될 수 있다. 분해 섹션 (102) 은 HDR 이미지 (110) 를 수신하고 그 HDR 이미지 (110) 를 LDR 이미지 (112) 및 재구성 정보 (114) 로 분해한다.
HDR 이미지는 자주 화소당 8 초과 비트들을 갖는 이미지로서 정의된다. 역으로, LDR 이미지는 자주 화소당 8 이하 비트들을 갖는 이미지로서 정의된다. 그러나, 용어들 HDR 및 LDR 은 상대적인 용어들이고 화소당 임의의 수의 비트들을 갖는 이미지들을 지칭할 수 있다. 이에 따라, 본 출원 당시에, 용어들 "더 높은" 동적 범위 및 "더 낮은" 동적 범위는 이들 이미지들을 지칭하는데 사용된다.
화살표 (113) 는 LDR 이미지 (112) 와 재구성 정보 (114) 를 연결한다. 화살표 (113) 는 이하에 더욱 설명되는 바와 같이 여러 구현들에서 LDR 이미지 (112) 가 재구성 정보 (114) 에 기초하거나, 재구성 정보 (114) 가 LDR 이미지 (112) 에 기초하거나, 양자 모두를 나타낸다.
재구성 정보 (114) 는 예를 들어 본 출원에서 논의된 상이한 구현들에서 노출 맵 (116) 또는 LUT (118) 이다. LUT (118) 는 예를 들어 순방향 LUT 또는 역방향 LUT (도 1 에서는 "F 또는 B LUT" 로서 축약됨) 이다. 이하에 더 설명되는 바와 같은 순방향 LUT 는 HDR 이미지 (110) 로부터 LDR 이미지 (112) 를 결정하는데 사용되는 LUT 를 제공한다. 이하에 더 설명되는 바와 같은 역방향 LUT 는 LDR 이미지 (112) 의 복원으로부터 HDR 이미지 (110) 의 재구성을 생성하기 위해 사용될 수 있는 LUT 를 제공한다. 역방향 LUT 는 일부 방식에서 종종 순방향 LUT 의 인버스이거나 순방향 LUT 에 기초한다.
재구성 정보 (114) 는 더욱 일반적으로 LDR 이미지 (112) 로부터 HDR 이미지 (110) 를 재구성하는데 사용될 수 있다. 재구성 정보는, 상이한 구현들에서, HDR 이미지 (110) 의 컴포넌트, HDR 이미지 (110) 의 분해를 기술하는 정보 (예를 들어, 순방향 LUT), 또는 그 분해의 인버스를 기술하는 정보 (예를 들어, 역방향 LUT) 이다. 재구성 정보는, 여러 정황들에서, 또한 분해 정보 또는 컴포넌트 정보로서 지칭될 수 있다.
재구성 정보는 또한 복원 정보로서 지칭될 수 있다. 복원은 재구성보다 더 일반적인 용어이고, HDR 이미지를 재구성하는 것은 또한 HDR 이미지를 복원하는 것으로서 지칭될 수 있다. 이미지를 복원하는 것은 일반적으로 구성 요소 또는 컴포넌트 정보로부터 이미지를 생성하는 임의의 프로세스를 지칭한다. 구성 요소 또는 컴포넌트 정보는 예를 들어 상이한 구현들에서 LDR 이미지, LUT, 노출 맵, 코딩 참조, 또는 레지듀를 포함한다. 복원된 이미지는, 여러 구현들에서, 오리지날 이미지의 추정이거나, 오리지날 이미지와 동일할 수 있다. 명백해야하는 바와 같이, 재구성된 이미지는 복원된 이미지이다.
그러나, 본 문서에서, 용어 "재구성" 은 일반적으로 여러 컴포넌트 파트들 (예를 들어, LDR 이미지 및 노출 맵 또는 LUT) 을 결합함으로써 HDR 이미지를 생성하는 것을 지칭할 때 사용된다. 또, 본 문서에서, 용어 "복원" 은 일반적으로 이미지를 생성하기 위해 여러 신택스 엘리먼트들을 디코딩하고 이들 디코딩된 신택스 엘리먼트들을 사용함으로써 이미지를 생성하는 프로세스를 지칭할 때 사용된다. 통상적인 복원 프로세스는 (i) 예를 들어 화상을 인코딩하는 것으로부터의 레지듀를 나타내는 DCT 계수들, 및 참조 (예를 들어, 모션 벡터들 및 코딩 모드 표시자들) 를 식별하는 정보와 같은 여러 신택스 엘리먼트들을 디코딩하는 것, 및 (ii) 디코딩된 레지듀 및 식별된 참조에 기초하여 화상의 추정을 생성하는 것을 포함한다. 그러나, 때때로, 용어 "복원" 은 "재구성" 을 포함하고, "재구성" 보다 더 넓은 보다 일반적인 용어로서 본 문서에서 사용된다.
인코드 섹션 (104) 은 LDR 이미지 (112) 를 수신한다. 인코드 섹션 (104) 은 LDR 이미지 (112) 를 인코딩하여 인코딩된 LDR 이미지 (122) 를 생성한다. 인코드 섹션 (104) 은 또한 여러 구현들에서 노출 맵 (116) 을 수신한다. 인코드 섹션 (104) 은 노출 맵 (116) 을 인코딩하여 인코딩된 노출 맵 (126) 을 생성한다. 인코드 섹션 (104) 은 또한 여러 구현들에서 LUT (118) 를 수신한다. 인코드 섹션 (104) 은 LUT (118) 를 인코딩하여 이전에 설명된 바와 같은 순방향 LUT 또는 역방향 LUT 인 인코딩된 LUT (128) 을 생성한다.
신호 섹션 (105) 은 인코딩된 LDR 이미지 (122) 를 수신한다. 신호 섹션 (105) 은 예를 들어 송신 또는 저장에 적합한 비트스트림과 같은 신호를 형성한다. 신호 섹션 (105) 은 인코딩된 LDR 이미지 (122) 에 기초하여 그 신호의 LDR 신호부 (132) (도 1 에서 "LDR 부" 로서 축약됨) 를 형성한다. 신호 섹션 (105) 은 또한 본 출원에서 기술된 여러 구현들에서 인코딩된 노출 맵 (126) 또는 인코딩된 LUT (128) 를 수신한다. 신호 섹션 (105) 은 인코딩된 노출 맵 (126) 또는 인코딩된 LUT (128) 중 어느 하나 또는 가능하게는 양자 모두에 기초하여 재구성 정보 신호부 (134) 를 형성한다.
디코드 섹션 (107) 은 LDR 신호부 (132) 를 수신한다. 디코드 섹션 (107) 은 복원된 LDR 이미지 (142) 로서 또한 지칭되는 디코딩된 LDR 이미지를 형성하기 위해 LDR 신호부 (132) 를 디코딩한다. 디코드 섹션 (107) 은 또한 재구성 정보 신호부 (134) 를 수신한다. 디코드 섹션 (107) 은 재구성 정보 신호부 (134) 를 디코딩한다. 재구성 정보 신호부 (134) 에 어떤 정보가 포함되는지에 따라, 디코드 섹션 (107) 은 (i) 복원된 노출 맵 (146), (ii) 복원된 순방향 LUT (148), 또는 (iii) 복원된 역방향 LUT (149) 중 하나 또는 가능하게는 그 이상을 생성한다.
재구성 섹션 (109) 은 또한 재구성 섹션 또는 복원 섹션으로서 지칭될 수 있다. 재구성 섹션 (109) 은 복원된 LDR 이미지 (142) 를 수신한다. 재구성 섹션 (109) 은 또한, 제공된다면, (i) 복원된 노출 맵 (146), (ii) 복원된 순방향 LUT (148), 또는 (iii) 복원된 역방향 LUT (149) 중 하나 또는 가능하게는 그 이상을 수신한다.
복원된 LDR 이미지 (142) 를 사용하고 LUT 를 사용하여 HDR 이미지를 재구성하기 위해, 시스템 (100) 의 재구성 섹션 (109) 은 역방향 LUT 를 사용한다. 즉, 정의에 의해, 역방향 LUT 는 입력으로서 LDR 데이터 값을 수신하고, 출력으로서 HDR 데이터 값을 제공한다. 이에 따라, 복원된 순방향 LUT (148) 가 수신되는 경우, 재구성 섹션 (109) 은 복원된 순방향 LUT (148) 에 기초하여 생성된 역방향 LUT (158) 를 생성한다.
재구성 섹션 (109) 은 재구성된 HDR 이미지 (160) 을 생성한다. 재구성된 HDR 이미지 (160) 는 복원된 LDR 이미지 (142) 및 (i) 복원된 노출 맵 (146), (ii) 생성된 역방향 LUT (158), 또는 (iii) 복원된 역방향 LUT (149) 중 하나 또는 가능하게는 그 이상에 기초한다.
도 2 를 참조하면, 흐름도가 인코딩 장치 및 프로세스의 구현을 도시하는 프로세스 (200) 를 도시한다. 프로세스 (200) 는 또한 프로세스 (200) 의 기재된 동작들을 수행하기 위한 구조를 도시한다. 대안적으로, 프로세스 (200) 는, 여러 구현들에서, 시스템 (100) 의 구조를 사용하여 수행된다.
프로세스 (200) 는 HDR 이미지를 LDR 및 재구성 정보로 분해하는 것을 포함한다 (210). 동작 (210) 은, 여러 구현들에서, HDR 이미지 (110) 를 LDR 이미지 (112) 및 재구성 정보 (114) 로 분해함으로써 수행된다. 재구성 정보는 HDR 이미지의 재구성을 허용한다.
프로세스 (200) 는 또한 LDR 이미지를 인코딩하는 것 (220), 및 재구성 정보를 인코딩하는 것 (230) 을 포함한다. 동작 (220) 은, 여러 구현들에서, 인코딩된 LDR 이미지 (122) 를 생성하는데 있어서 인코드 섹션 (104) 에 의해 수행된다. 유사하게, 동작 (230) 은, 여러 구현들에서, 인코딩된 노출 맵 (126) 또는 인코딩된 LUT (128) 를 생성하는데 있어서 인코드 섹션 (104) 에 의해 수행된다.
도 3 을 참조하면, 흐름도가 디코딩 장치 및 프로세스의 구현을 도시하는 프로세스 (300) 를 도시한다. 프로세스 (300) 는 또한 프로세스 (300) 의 기재된 동작들을 수행하기 위한 구조를 도시한다. 대안적으로, 프로세스 (300) 는, 여러 구현들에서, 시스템 (100) 의 구조를 사용하여 수행된다.
프로세스 (300) 는 인코딩된 LDR 이미지를 디코딩하는 것을 포함한다 (310). 동작 (310) 은, 여러 구현들에서, 복원된 LDR 이미지 (142) 를 생성함으로써 수행된다.
프로세스 (300) 는 또한 인코딩된 재구성 정보를 디코딩하는 것을 포함한다 (320). 재구성 정보는 LDR 이미지 및 재구성 정보로부터 HDR 이미지의 재구성을 허용한다. 동작 (320) 은, 여러 구현들에서, (i) 복원된 노출 맵 (146), (ii) 복원된 순방향 LUT (148), 또는 (iii) 복원된 역방향 LUT (149) 중 하나 또는 가능하게는 그 이상을 생성하기 위해 재구성 정보 신호부 (134) 를 디코딩하는 디코드 섹션 (107) 에 의해 수행된다.
프로세스 (300) 는 또한 디코딩된 LDR 화상 및 디코딩된 재구성 정보에 기초하여 HDR 이미지를 재구성하는 것을 포함한다 (330). 동작 (330) 은, 여러 구현들에서, 복원된 LDR 이미지 (142) 및 (i) 복원된 노출 맵 (146), (ii) 생성된 역방향 LUT (158), 또는 (iii) 복원된 역방향 LUT (149) 중 하나 또는 가능하게는 그 이상에 기초하여 재구성된 HDR 이미지 (160) 를 생성하는 재구성 섹션 (109) 에 의해 수행된다. 여러 구현들에서, 동작 (330) 은 또한 생성된 역방향 LUT (158) 를 생성하는 것을 포함한다.
프로세스 (200) 의 수개의 특정의 구현들이 이제 더욱 상세하게 기술될 것이다. 여러 구현들은 (가능하게는 다수의 이미지들을 포함하는) HDR 신호를 다수의 계층들 또는 컴포넌트들로 분해한다. HDR 신호를 예를 들어 2 개의 계층들로 분해하는 다수의 방법들이 존재한다. HDR 신호를 LDR 계층 및 노출 맵으로 분해하여 동작 (210) 의 하나의 변형을 수행하는 수개의 구현들이 이하에 기술된다.
제 1 접근법은 LDR 비디오 신호인 톤 맵핑된 비디오를 획득하기 위해 각각의 HDR 이미지에 톤 맵핑 알고리즘을 적용한다. 톤 맵핑 알고리즘을 적용한 후, 노출 맵은 다음의 방정식을 사용하여 획득된다:
Figure 112015044389031-pct00002
위의 방정식에서:
- H(i,j) 는 선형 HDR 휘도 값이다.
HDR 이미지는 예를 들어 RGB (적색-녹색-청색) 와 같은 다양한 색 공간들에 있을 수 있다. 여러 구현들에서, 우리는 휘도 채널의 압축에 초점을 맞추고, 크로매틱 (chromatic) 채널들을 압축하기 위해 전통적인 방법들을 사용한다. 또한, HDR 은 정황에 따른 상대적인 용어이다. 여러 구현들에서, HDR 화소 값은 10 비트, 12 비트, 또는 부동소수점 표현이다.
- L(i,j) 는 소정의 구현들에서 255 로 나누어진, H(i,j) 에 대응하는 LDR 화소 값과 동일한 8-비트 감마 보정된 화소 값이며, 결과적인 제산 결과는 감마의 멱 (power) 으로 상승된다.
감마 인코딩은 비디오 또는 정지 이미지 시스템들에서 휘도 또는 3자극 값들을 코딩 및 디코딩하는데 사용되는 비선형 동작의 이름이다 (예를 들어, http://en.wikipedia.org/wiki/Gamma_correction 참조). 감마의 통상적인 값은 2.2 이고, 이것은 많은 컴퓨터들에서 사용된다.
아래의 방정식에서, "x" 는 감마 보정된 화소값이고, 이것은 0 내지 255 의 범위를 갖는다. "Y" 는 선형 휘도값이다. "M" 은 특정의 시스템의 최대 휘도를 정의하는 스케일링 상수이다. 예를 들어, 디스플레이 시스템에서, "M" 은 최대 휘도값이다.
Figure 112015044389031-pct00003
- f() 는 감마 보정된 화소값을 선형적인 양으로 변환할 수 있는 인버스 응답 함수이다.
선형적인 양은 통상 많은 경우들에서 HDR 소스가 선형 도메인에 있기 때문에 원해진다. "선형적인" 은 휘도 값이 카메라의 센서를 때리는 광자들의 수에 비례한다는 것을 의미한다. 일부 용어에서, 그것은 또한 미가공 (raw) 화소 데이터로 칭해진다. f() 의 예는 위에서 주어진 방정식이며, 그것은:
Figure 112015044389031-pct00004
- Q() 는 부동 소수점 수를 고정 소수점 수로 변환하는 양자화 함수이다. Q() 는 균일하거나 비균일 (non-uniform) 일 수 있다. Q() 가 비균일인 경우, 디코더측은 통상 디코더측이 데이터를 수신할 때 인버스 양자화를 수행하는 방법을 알고 있을 필요가 있다. 부수 정보가 송신될 수도 있다.
로그 함수는 통상, 아마도 다른 것들 중에서, 출력의 범위를 감소시키는 효과를 갖는다.
노출 맵을 생성하기 위해 상기 접근법을 사용하는 것은 평활하지 않은 노출 맵을 생성할 수 있다. 비평활 노출 맵은 압축하기에 어려울 수 있다.
대안적인 접근법은 먼저 "정밀한" 노출 맵을 생성하고, 그 후 생성된 노출 맵에 평활성 제약 (smoothness constraint) 을 부과하는 것이다. 정밀한 노출 맵은, 예를 들어, 모든 목적을 위해 그의 전체가 참조로 여기에 포함되는, 예를 들어, 다음의 참조 문헌에서 도시된 바와 같은 HDR 이미지에 대한 양방향 필터를 사용하여 획득될 수 있다: C. Tomasi, R. Manduchi, Bilateral Filtering for Gray and Color Images, 1998 Proceedings of the Sixth International Conference on Computer Vision, Page 839.
정밀한 노출 맵은 또한, 예를 들어, 모든 목적을 위해 그의 전체가 참조로 여기에 포함되는, 예를 들어, 다음의 참조 문헌에서 도시된 바와 같은 HDR 이미지에 대한 가중된 최소 자승 필터를 사용하여 획득될 수 있다: Zeev Farbman et al. Edge-preserving decompositions for multi-scale tone and detail manipulation, ACM SIGGRAPH 2008.
용어 "정밀한" 은 소정의 프레임워크들에서 불필요할 수도 있다. 예를 들어, 가중된 최소 자승 필터를 사용하는 것은 노출 맵을 획득하는 방법이다. 위에 기재된 Zeev 의 논문에서, 정규화 방법은 평활성 제약을 강제하는데 사용된다.
예를 들어, 하나의 구현에서, 베이스가 2 인 적용된 로가리듬 함수에 의해 획득된, 로가리듬-압축된 HDR 이미지 (매트릭스 H) 를 가지며, 노출 맵 (매트릭스 E) 를 얻기를 원한다고 가정하라. 우리는 다음의 최적화 문제를 풀것이다:
Figure 112015044389031-pct00005
여기서, 2-변수 함수 F 는 정규화 함수이고 Zeev 등의 논문에서 제공된 바와 같은 형태를 취할 수 있을 것이다. "λ" 는 평활성의 강도를 제어하는 상수이다.
평활성 제약은 상기 최적화 문제에 내포된다. 이것은, 예를 들어 양방향 필터의 경우에 대해 설명될 수 있다. 양방향 필터는 이웃하는 화소들이 유사한 경우에 스트롱 (strong) 필터링을 적용하지만, 이웃하는 화소들이 꽤 상이한 경우에는 위크 (weak) 필터링을 적용한다. 결과적으로, 선명한/강한 에지들이 유지되지만, 소규모 상세들은 평활화된다. 가중된 최소 필터링은 상이한 수학적 공식화를 사용하여 동일한 일반 목적을 달성한다.
상기 구현은 HDR 이미지로부터 직접 노출 맵을 결정하는 것을 주목하라. 대조적으로, 방정식 1 은 노출 맵을 결정하기 위해 HDR 이미지 및 LDR 이미지를 사용한다. 기본적으로, 일단 LDR 맵 또는 노출 맵 중 어느 것을 식별하면, 다른 것은 즉시 획득된다.
그리고, 그 후 LDR 계층이 아래의 방정식 2 를 사용하여 정밀한 노출 맵을 적용함으로써 획득될 수 있다. 마지막으로, 정밀한 노출 맵은 고정 소수점 수로 양자화되고 압축을 위해 준비된다. 더욱 구체적으로는, 정밀한 노출 맵 Ep(i,j) 이 주어지면, LDR 계층의 적색 채널 r 은:
Figure 112015044389031-pct00006
에 의해 획득될 수 있다.
여기서,
- R(i,j) 는 HDR 이미지의 적색 컴포넌트의 선형 값이고,
- g() 는 상술된 바와 같은 감마 보정 함수이며,
- S() 는 후술하는 바와 같은 포화 함수이다:
Figure 112015044389031-pct00007
Figure 112015044389031-pct00008
다른 칼라 채널들은 유사한 방식으로 획득될 수 있다. LDR 계층을 생성한 후, 정밀한 노출 맵은 앞에서 기술된 함수 Q() 를 사용하여 양자화된다. 따라서, 다음의 단계로의 모든 입력들은 고정 소수점이다 (보통 8-비트).
분해가 수행된 후, 2 개의 계층들이 다수의 구현들에서 압축된다. LDR 계층은 예를 들어 H.264 비디오 압축기와 같은 종래의 비디오 압축기를 사용하여 압축될 수 있다. 이것은, 예를 들어 동작 (220) 을 수행한다. 노출 맵은 또한 압축되고, 따라서, 예를 들어 동작 (230) 을 수행한다. 그러나, 여러 기법들이 사용될 수 있다. 노출 맵은, 많은 구현들에서, 낮은 엔트로피를 갖는 구분적 평활 신호이다. 또, 발명자들은, 많은 구현들에서, 노출 맵이 LDR 계층과 강한 상관을 갖는다는 것을 관찰했다. 예를 들어, 에지들은 종종 LDR 계층 및 노출 맵 양자 모두에서 종종 동일 장소에 배치된다. 이에 따라, 심도 맵들을 압축하는데 이전에 적용된 여러 기법들이 노출 맵들을 압축하는데 적용될 수 있다.
하나의 그러한 기법은 모든 목적들을 위해 그의 전체가 참조로 여기에 포함되는, 2011 년 4월 21일자로 공개된 PCT 공보 WO 2011/046607 (PCT/US10/002744) 에서 설명된 바와 같은 조인트 양방향 필터들을 포함한다. 조인트 양방향 필터링은 예를 들어 PCT 공보 WO 2011/046607 의 비디오 이미지를 본 출원의 LDR 이미지로 대체하고, PCT 공보 WO 2011/046607 의 심도 맵을 본 출원의 노출 맵으로 대체함으로써 적용될 수 있다. 이러한 대체는 적어도 노출 맵 및 LDR 이미지의 에지들이 통상 PCT 공보 WO 2011/046607 에서의 심도 맵 및 비디오 이미지의 에지들처럼 동일 장소에 배치된다는 이유로 양호한 결과들을 생성하는 것으로 기대된다. 여러 그러한 구현들은 예측 참조로서 사용할 더 양호한 복구된 노출 맵을 얻기 위해 PCT 공보 WO 2011/046607 의 디블록킹 필터를 인-루프 필터로 대체한다.
다른 그러한 기법은 모든 목적들을 위해 그의 전체가 참조로 여기에 포함되는, 2009년 4월 23일자로 공개된 PCT 공보 WO 2009/051668 (PCT/US08/011661) 에서 설명되고 적용된 지오메트릭 파티셔닝을 수반한다.
또 다른 그러한 기법은 모든 목적들을 위해 그의 전체가 참조로 이미 포함된 PCT 공보 WO 2011/046607 에서 설명된 바와 같은 성긴 다이애딕 모드 (sparse dyadic mode), 및 다른 기법들을 포함한다. 지오메트릭 파티션닝 뿐아니라 성긴 다이애딕 모드는 주어진 블록에 대한 라인을 발견하고, 그 라인의 어느 측 상에 블록의 각 부분에 대한 값을 결정함으로써 적용될 수 있다. 라인은, 예를 들어, LDR 이미지로부터 또는 노출 맵으로부터 결정될 수 있다. 하나의 특정의 구현에서, 노출 맵 내의 주어진 블록에 대한 라인은 복구된 LDR 이미지로부터 결정된다. 이에 따라, 라인 그 자체는 디코더가 결정 자체를 행할 수 있기 때문에 송신될 필요가 없다. 다른 구현에서, 노출 맵의 주어진 블록에 대한 라인은 전체 (full) 노출 맵으로부터 결정된다. 이에 따라, 라인은 디코더가 라인을 결정할 수 없기 때문에 그 구현에서는 송신된다.
인코딩 후에, 인코딩된 계층들은 예를 들어 송신되거나 저장될 수 있다. 여러 구현들에서, 디코더는 주어진 이미지에 대해 LDR 이미지 및 노출 맵인 2 개의 계층들을 액세스 및 디코딩한다. 따라서, 예를 들어, 디코더는 동작들 (310 및 320) 을 수행한다. 디코더는 그 후 복원된 LDR 이미지, 복원된 노출 맵으로부터 HDR 이미지를 재구성한다 (예를 들어, 동작 (330) 을 수행한다).
적어도 하나의 구현에서, 재구성은 다음과 같이 발생한다. 디코더측은 각각 복원된 버전들
Figure 112015044389031-pct00009
Figure 112015044389031-pct00010
을 획득하기 위해 LDR 이미지 및 노출 맵을 디코딩한다. 여기서, 우리는 단지 휘도 채널만을 고려하고 있다. 유사한 방정식들이 3 개의 칼라 채널들에 대해 획득될 수 있다.
그 후, 복원된 HDR 이미지는:
Figure 112015044389031-pct00011
에 의해 획득된다.
이것은 역 프로세스이기 때문에 앞에서 기술된 분해 방정식과 매우 유사하다.
프로세스 (200) 의 수개의 추가적인 특정의 구현들이 이제 더욱 상세히 기술될 것이다. 여러 구현들은 (가능하게는 다수의 이미지들을 포함하는) HDR 신호를 다수의 계층들 또는 컴포넌트들로 분해한다. HDR 신호를 예를 들어 2 개의 계층들로 분해하는 다수의 방법들이 존재한다. HDR 신호를 LDR 계층 및 HDR 신호가 LDR 계층으로부터 복원될 수 있는 방법을 나타내는 복원 정보로 분해하여, 동작 (210) 의 하나의 변형을 수행하는 수개의 구현들이 이하에 기술된다.
이전의 구현들의 노출 맵은 또한 HDR 신호가 LDR 계층으로부터 재구성될 수 있는 방법을 나타내는 재구성 정보로서 고려된다는 것을 주목하라.
여러 구현들에서, HDR 이미지는 일반적으로 양자화를 지칭하는 톤 맵핑을 사용하여 LDR 이미지로 변환된다. 예를 들어, 방정식, 트렁케이션 (truncation), 또는 룩업 테이블과 같은 여러 기법들이 사용될 수 있다. 제시의 편의를 위해, 우리는 룩업 테이블들의 정황에서 여러 구현들을 논의한다. 그러나, 다른 메카니즘들이 동일하게 적용가능하고 고려된다.
룩업 테이블 ("LUT") 은 모든 HDR 이미지에 대해 생성될 수 있으며, 종종 글로벌 톤 맵핑으로서 지칭된다. 대안적으로, LUT 는 예를 들어 시퀀스 또는 무비 (movie) 와 같은 다수의 이미지들에 대해 생성되고 사용될 수 있다. 또, LUT 는 전체 이미지보다 작은 것에 대해 생성되고 사용될 수 있으며, 이는 종종 로컬 톤 맵핑으로서 지칭된다. 여러 구현들은 각각의 슬라이스, 블록 또는 파티션에 대해 LUT 를 생성하고 사용한다.
LUT 는 여러 구현들에서 하나 이상의 HDR 이미지들에 대한 히스토그램들을 분석함으로써 생성된다. HDR 값들의 히스토그램에 기초하여, 빈들이 생성된다. 빈들은 자주 동일하지 않은 사이즈이며, HDR 값들의 각각의 빈은 단일의 LDR 값이 할당된다. 빈들이 동일하지 않은 사이즈인 경우, 빈들은 HDR 이미지의 HDR 데이터 값들과 LDR 이미지의 LDR 데이터 값들 사이의 불균일한 맵핑을 제공한다. 빈들은 종종 양자화 빈들로서 지칭된다.
LUT 는 상이한 구현들에서 상이한 값들을 사용하여 구성된다. 예를 들어, LUT 는 여러 구현들에서 각각의 빈의 제 1 의 또는 마지막 HDR 값을 사용한다. 분해기는 그 후 적절한 빈 및 LDR 값을 결정하기 위해 입력 HDR 값을 LUT 값들과 비교할 수 있다.
여러 구현들은 그 후 저장 또는 송신을 위해 LDR 이미지 및 LUT 를 인코딩한다. LUT 는 이롭게도 많은 데이터가 아니다. LUT 는 예를 들어 LDR 데이터를 위해 8 비트들을 사용하는 구현에 대해 단지 256 개의 엔트리들을 포함한다. 이것은 256 개의 가능한 LDR 데이터 값들 각각이 LUT 에서의 하나의 엔트리에 대응하기 때문이다. 따라서, 모든 시퀀스에 대해 별개의 LUT 를 사용하는 글로벌 톤 맵핑 구현에 대해, 이미지들의 모든 시퀀스에 대해 단지 256 개의 엔트리들 (하나의 LUT) 만이 존재한다.
여러 구현들은 인코딩된 LDR 이미지들 및 인코딩된 LUT 들로부터 비트스트림을 형성한다. LDR 이미지들은 예를 들어 H.264 를 사용하여 인코딩되고, LUT 들은 예를 들어 무손실 코딩 스킴을 사용하여 인코딩된다. 다른 구현들은, 물론 LUT 들에 대해 유손실 스킴을 사용한다. LUT 들은 예를 들어 부가 확장 정보 (supplemental enhancement information: "SEI") 메시지를 사용하거나, 일부 형태의 메타데이터를 사용하여 H.264 비트스트림에 포함되거나, 스트림 밖에서 전송될 수 있다.
디코더에 LUT 를 제공함으로써, 일 구현은 HDR 이미지를 복원할 수 있다. 이러한 동작은 여러 구현들에서 예를 들어 디코더, 재구성기, 또는 포스트-프로세서를 사용하여 수행된다.
HDR 이미지의 복원은 인코딩단에서 수행되었던 톤 맵핑 동작의 인버스를 수행하는 것을 수반한다. 통상적인 구현들에서, 각각의 입력 LDR 값은 특정의 LUT HDR 값에 대응할 것이다. LUT HDR 값들은 여러 구현들에서 빈의 시작, 또는 빈의 끝으로 설정된다. 인버스 톤 맵핑은 예를 들어, 그 대응하는 LUT HDR 값을 사용하여, 빈의 다른 끝에 대응하는 HDR 값을 사용하여, 또는 빈의 중앙에 대응하는 HDR 값을 사용하여 수행될 수 있다. 2 개의 인접한 LUT HDR 값들의 간단한 수학적 평균화가 수행될 수 있다. 그러나, 각각의 빈의 중앙 HDR 값을 사용하는 하나의 구현에서, 인버스 톤 맵핑 LUT 는 생성된 역방향 LUT (158) 에 의해 기술되고 도시된 바와 같이, LUT 엔트리들로서의 중앙 값들을 사용하여 디코더에서 생성된다.
통상의 수신기들은 또한 복원된 HDR 이미지의 외관을 향상시키기 위해 디더링 (dithering) 알고리즘, 또는 다른 기법들을 적용한다. 디더링, 또는 다른 프로세싱은 복원된 HDR 이미지 내의 양자화 잡음을 감소시킬 수 있다.
도 4 를 참조하면, 인코더 (1100) 는 예를 들어 LDR 이미지들, HDR 이미지들, 또는 노출 맵들과 같은 이미지들을 인코딩하기 위해 여러 구현들에서 사용되는 인코더의 구현을 도시한다. 인코더 (1100) 는 또한 특정의 구현들에서 예를 들어 인코딩된 비트스트림에 대한 정보를 제공하는 메타데이터와 같은 데이터를 인코딩하는데 사용된다. 메타데이터는, 예를 들어, 예를 들어 LUT 와 같은 복원 정보를 포함한다. 인코더 (1100) 는 하나의 구현에서, 예를 들어 도 6 에 대해 후술되는 바와 같은 비디오 송신 시스템의 부분으로서 구현된다. 도 4 의 블록들이 인코더의 블록도를 제공할 뿐아니라 인코딩 프로세스의 흐름도를 제공한다는 것은 또한 명백해야 한다.
입력 이미지 시퀀스는 변위 보상 블록 (1120), 및 변위 추정 블록 (1118) 뿐아니라 가산기 (1101) 에 도착한다. 변위는 예를 들어 모션 변위 또는 디스패리티 변위를 지칭한다는 것을 주목하라. 입력 이미지 시퀀스는 하나의 구현에서 LDR 계층이다. 가산기 (1101) 에 대한 다른 입력은 스위치 (1123) 를 통해 수신된 다양한 가능한 참조 화상 정보 아이템들 중 하나이다.
예를 들어, 제 1 시나리오에서, 스위치 (1123) 와 신호 통신하는 모드 결정 모듈 (1124) 은 인코딩 모드가 현재 인코딩되고 있는 동일한 화상 (예를 들어, LDR 화상) 으로부터의 블록을 참조하는 인트라 예측이어야 한다는 것을 결정한다. 이러한 제 1 시나리오에서, 가산기 (1101) 는 인트라 예측 모듈 (1122) 로부터 그의 입력을 수신한다. 대안적으로, 제 2 시나리오에서, 모드 결정 모듈 (1124) 은 인코딩 모드가 현재 인코딩되고 있는 화상과는 상이한 화상 (예를 들어, 상이한 시간, 또는 뷰 (view), 또는 양자 모두) 을 참조하는 변위 보상 및 추정이어야 한다는 것을 결정한다. 이러한 제 2 시나리오에서, 가산기 (1101) 는 변위 보상 모듈 (1120) 로부터 그의 입력을 수신한다.
여러 구현들에서, 인트라 예측 모듈 (1122) 은 인코딩되고 있는 블록에 이웃하는 블록들인 하나 이상의 블록들에 기초하여 미리 결정된 예측자 (predictor) 를 제공한다. 여러 구현들에서, 인트라 예측 모듈 (1122) 은 인코딩되는 화상 내에서 최선의 참조 블록을 검색함으로써 예측자 (참조) 를 제공한다.
더욱 구체적으로는, 수개의 그러한 예측자-기반 구현들은 이미 인코딩된 현재의 화상의 이들 부분들의 복원 내에서 검색한다. 일부 구현들에서, 그 검색은 현존하는 블록 경계들에 놓여 있는 블록들에 제한된다. 그러나, 다른 구현들에서는, 그 검색은 이들 블록들이 현존하는 블록 겅계들을 가로지르는지 여부에 관계없이 블록들을 검색하도록 허용된다. 그 검색으로 인해, 그러한 구현들은 종종 참조들로서 단지 미리 결정된 이웃하는 블록들을 사용하는 것보다 더욱 시간 집약적이고 프로세서 집약적이다. 그러나, 그러한 구현들은 통상 주어진 블록의 더 양호한 예측을 발견하는 이점을 제공한다.
그러한 구현들은 최선 추정 인트라 예측 블록을 초래할 수도 있다. 또, 여러 구현들에서, 참조 블록의 경계들은 서브-화소 경계에 놓일 수 있고, 참조의 복구는 디코딩 동안 참조로서 사용될 실제의 블록을 회복시키는 보간 단계를 수반한다. 화상들의 컨텐츠에 따라, 그러한 서브-화소 보간 구현들은 참조들로서 이웃하는 블록들의 사용에 비해 압축 효율을 향상시킬 수도 있다.
가산기 (1101) 는 그 입력 신호를 변환하고 그 변환된 신호를 양자화 모듈 (1104) 로 제공하도록 구성되는 변환 모듈 (1102) 로 신호를 제공한다. 양자화 모듈 (1104) 은 그의 수신된 신호에 대해 양자화를 수행하고 엔트로피 인코더 (1105) 에 양자화된 정보를 출력하도록 구성된다. 엔트로피 인코더 (1105) 는 비트스트림을 생성하기 위해 그의 입력 신호에 대해 엔트로피 인코딩을 수행하도록 구성된다. 역양자화 모듈 (1106) 은 양자화 모듈 (1104) 로부터 양자화된 신호를 수신하고 양자화된 신호에 대해 역양자화를 수행하도록 구성된다. 차례로, 역변환 모듈 (1108) 은 역양자화 모듈 (1106) 로부터 역양자화된 신호를 수신하고 그의 수신된 신호에 대해 역변환을 수행하도록 구성된다. 역변환 모듈 (1108) 의 출력은 가산기 (1101) 로부터 출력된 신호의 복구이다.
가산기 (더욱 일반적으로 결합기로서 지칭됨)(1109) 는 역변환 모듈 (1108) 및 스위치 (1123) 로부터 수신된 신호들을 가산 (결합) 하고, 인트라 예측 모듈 (1122), 및 인-루프 필터 (1110) 로 결과의 신호를 출력한다. 인트라 예측 모듈 (1122) 은 예를 들어 현재의 화상으로부터 추가적인 블록들을 코딩하는데 있어서 결과의 신호를 사용한다. 인-루프 필터 (1110) 는 주어진 화상에 대한 복구된 화상 데이터를 필터링하여, 이것을 이하에 더욱 설명되는 바와 같은 심도 참조 버퍼 (1112) 로 제공한다. 결과의 신호는 인코더 (1100) 로 입력되는 이미지 시퀀스 신호의 복구이다.
인트라 예측 모듈 (1122) 은 그의 수신된 신호들을 사용하여 상술된 바와 같이 인트라 예측을 수행한다. 인-루프 필터 (1110) 는 가산기 (1109) 로부터 수신된 신호들을 필터링하고 참조 버퍼 (1112) 로 필터링된 신호들을 제공한다. 참조 버퍼 (1112) 는 변위 추정 및 보상 모듈들 (1118 및 1120) 으로 이미지 정보를 제공한다. 하나의 구현에서, 참조 버퍼 (1112) 는 현재의 화상으로부터라기 보다는 예를 들어 다른 시간 인스턴스들 또는 다른 뷰들로부터 참조 화상들을 저장한다. 인-루프 필터 (1110) 는 하나의 구현에서 디블록킹 필터이다.
하나의 구현에서, 인-루프 필터 (1110) 는 현재의 블록 내의 주어진 화소에 대한 필터링된 결과들을 획득하기 위해 이웃하는 화소들을 사용한다. 여러 필터 설계들에서, 현재의 블록에 대한 이웃하는 화소들은 비디코딩 블록으로부터의 화소들을 포함한다. 이에 따라, 이들 필터 설계들에 대해, 현재의 블록은 그것이 디코딩되고 있는 동안 필터링될 수 없다. 또, 이미 디코딩된 소정의 이웃하는 화소들은 현재의 블록이 디코딩될 때까지 필터링될 수 없다. 결과적으로, 적어도 하나의 구현은 인트라 예측에서 필터링된 결과들을 사용하지 않는다. 그러나, 그 구현은 이전의 화상 (참조 화상) 으로부터의 모든 블록들이 디코딩되었고 필터링될 수 있기 때문에 인터 에측에 대해 필터링된 결과들을 사용한다.
메타데이터는 인코딩된 메타데이터로서 인코더 (1100) 에 가산되고 엔트로피 코더 (1105) 로부터의 출력 비트스트림과 결합될 수도 있다. 대안적으로, 예를 들어, 인코딩되지 않은 메타데이터는 양자화된 이미지 시퀀스들과 함께 엔트로피 인코딩을 위해 엔트로피 코더 (1105) 로 입력될 수도 있다.
데이터는 또한 모드 결정 모듈 (1124) 에 의해 출력 비트스트림으로 제공된다. 모드 결정 모듈 (1124) 은 주어진 블록을 인코딩하는데 사용되는 모드를 나타내는 정보를 그 비트스트림에 제공한다. 그러한 정보는 종종 참조 블록의 위치의 표시를 포함한다. 예를 들어, 인트라 예측을 사용하고 참조 블록을 발견하기 위해 현재의 화상의 검색을 수행하는 여러 구현들에서, 모드 결정 모듈 (1124) 은 디스패리티 벡터를 사용하여 참조의 위치를 나타낸다. 디스패리티 벡터 정보는 인트라 예측 모듈 (1122) 에 의해 모드 결정 모듈 (1124) 로 제공될 수도 있다.
이하에 더욱 기술되는 바와 같이, 그 디스패리티 벡터 정보는 참조로서 이웃하는 매크로블록의 디스패리티 벡터를 사용하여 별도로 코딩될 수도 있다. 또, 화상의 디스패리터 벡터들은 디스패리티 벡터들에서의 공간적 유사성이 존재하기 쉽기 때문에 그룹핑되고 추가적으로 인코딩되어 엔트로피를 제거할 수도 있다.
도 5 를 참조하면, 디코더 (1200) 는 예를 들어 LDR 이미지들과 같은 이미지들을 디코딩하는데 사용될 수도 있는 디코더의 구현을 도시한다. 디코딩된 이미지들은, 하나의 구현에서, LDR 이미지들에 기초하여 HDR 이미지들을 생성하는 재구성 또는 복원 디바이스에 제공된다. 디코더 (1200) 는, 다른 구현들에서는, 예를 들어, 메타데이터를 디코딩하기 위해 및/또는 비디오 데이터를 디코딩하기 위해 사용된다. 메타데이터는 예를 들어 LUT, 노출 맵, 인코딩된 비디오 이미지들, 또는 디코딩된 비트스트림에 대한 정보를 제공한다. 하나의 구현에서, 디코더 (1200) 는 예를 들어 도 7 에 대해 이하에 기술되는 바와 같은 비디오 수신 시스템의 부분으로서 구현된다. 도 5 의 블록들은 디코더의 블록도를 제공하는 것에 더하여, 디코딩 프로세스의 흐름도를 제공한다는 것이 또한 명백해야 한다.
디코더 (1200) 는 비트스트림 수신기 (1202) 를 사용하여 비트스트림을 수신하도록 구성된다. 비트스트림 수신기 (1202) 는 비트스트림 파서 (parser) (1204) 와 신호 통신하며 비트스트림 파서 (1204) 로 비트스트림을 제공한다.
비트스트림 파서 (1204) 는 엔트로피 디코더 (1206) 로 레지듀 비트스트림을 송신하고, 모드 선택 모듈 (1216) 로 제어 신택스 엘리먼트들을 송신하며, 변위 보상 모듈 (1226) 로 변위 (모션/디스패리티) 벡터 정보를 송신하도록 구성된다.
변위 벡터 정보는 예를 들어 모션 벡터 정보 또는 디스패리티 벡터 정보일 수도 있다. 모션 벡터 정보는 통상 이전의 이미지로부터의 상대적인 모션을 나타내기 위해 인터 예측에서 사용된다. 디스패리티 벡터 정보는 통상 (i) 개별적 이미지에 대해 디스패리티를 나타내기 위해 인터 예측에서, 또는 (ii) 동일한 이미지의 일부에 대해 디스패리티를 나타내기 위해 인트라 예측에서 사용된다. 본 기술에서 알려진 바와 같이, 디스패리티는 통상 2 개의 이미지들 사이의 상대적인 오프셋, 또는 변위를 나타낸다. 디스패리티는 또한 이미지의 2 개의 부분들 사이의 상대적인 오프셋 또는 변위를 나타내는데 사용될 수도 있다.
역양자화 모듈 (1208) 은 엔트로피 디코더 (1206) 로부터 수신된 엔트로피 디코딩된 신호에 대해 역양자화를 수행한다. 또, 역변환 모듈 (1210) 은 역양자화 모듈 (1208) 로부터 수신된 역양자화된 신호에 대해 역변환을 수행하고 (결합기로서도 지칭되는) 가산기 (1212) 로 역변환된 신호를 출력하도록 구성된다.
가산기 (1212) 는 사용된 디코딩 모드에 따라 다양한 다른 신호들 중 하나를 수신할 수 있다. 예를 들어, 하나의 구현에서, 모드 결정 모듈 (1216) 은 제어 신택스 엘리먼트들을 파싱 및 분석함으로써 변위 보상 또는 인트라 예측 인코딩이 현재 프로세싱되는 블록에 대해 인코더에 의해 수행되었는지 여부를 결정한다. 결정된 모드에 따라, 모드 선택 제어 모듈 (1216) 은 제어 신택스 엘리먼트들에 기초하여 스위치 (1217) 를 액세스 및 제어하여, 가산기 (1212) 가 변위 보상 모듈 (1226), 또는 인트라 예측 모듈 (1218) 로부터 신호들을 수신하도록 한다.
여기서, 인트라 예측 모듈 (1218) 은 현재 디코딩되고 있는 동일한 화상에 대한 참조들을 사용하여 블록을 디코딩하기 위해 인트라 예측을 수행하도록 구성된다. 차례로, 변위 보상 모듈 (1226) 은 현재 디코딩되고 있는 화상과는 상이한 (예를 들어, 상이한 시간 또는 뷰, 또는 양자 모두로부터) 다른 이전에 프로세싱된 화상의 블록에 대한 참조들을 사용하여 블록을 디코딩하기 위해 변위 보상을 수행하도록 구성된다.
예측 또는 보상 정보 신호들을 수신한 후, 가산기 (1212) 는 인-루프 필터 (1214) 로의 송신을 위해 그 예측 또는 보상 정보 신호들을 역변환된 신호와 가산한다. 인-루프 필터 (1214) 는, 예를 들어, 블록킹 아티팩트들을 필터링하는 디블록킹 필터이다. 가산기 (1212) 는 또한 인트라 예측에 사용하기 위해 인트라 예측 모듈 (1218) 로 그 가산된 신호를 출력한다.
인-루프 필터 (1214) 는 그의 입력 신호를 필터링하고 디코딩된 화상들을 출력하도록 구성된다. 또, 인-루프 필터 (1214) 는 참조 버퍼 (1220) 로 그 필터링된 신호를 제공한다. 참조 버퍼 (1220) 는 참조 버퍼 (1220) 가 파싱된 신호들을 제공하는 변위 보상 모듈 (1226) 에 의한 변위 보상 디코딩을 허용하고 돕기 위해 그의 수신된 신호를 파싱하도록 구성된다. 그러한 파싱된 신호들은, 예를 들어, 참조로서 사용되었을 수도 있는 여러 화상들의 전부 또는 부분일 수도 있다.
메타 데이터는 비트스트림 수신기 (1202) 에 제공된 비트스트림에 포함될 수도 있다. 그 메타데이터는 비트스트림 파서 (1204) 에 의해 파싱되고, 엔트로피 디코더 (1206) 에 의해 디코딩될 수도 있다. 디코딩된 메타데이터는 출력 (도시하지 않음) 을 사용하여 엔트로피 디코딩한 후 디코더 (1200) 로부터 추출될 수도 있다.
적어도 하나의 구현에서, 도 5 의 블록들의 다수는 도 4 의 대응하는 블록들의 인버스 동작들을 수행한다. 예를 들어, 하나의 구현에서:
- 엔트로피 디코더 (1206) 는 엔트로피 인코더 (1105) 의 인버스를 수행하고,
- 역양자화 모듈 (1208) 은 양자화 모듈 (1104) 의 인버스를 수행하며,
- 역변환 모듈 (1210) 은 변환 모듈 (1102) 의 인버스를 수행한다.
또한, 이미 상술된 바와 같이, 적어도 하나의 구현에서, 도 5 의 블록들의 다수는 도 4 의 대응하는 블록들과 동일한 동작들을 수행한다. 예를 들어, 하니의 구현에서:
- 인-루프 필터 (1214) 는 인-루프 필터 (1110) 와 동일한 동작들을 수행하고,
- 인트라 예측 모듈 (1218) 은 인트라 예측 모듈 (1122) 과 동일한 동작들을 수행하며,
- 변위 보상 모듈 (1226) 은 변위 보상 모듈 (1120) 과 동일한 동작들을 수행한다.
도 6 을 이제 참조하면, 상술된 특징들 및 원리들이 적용될 수도 있는 비디오 송신 시스템 또는 장치 (1600) 가 도시된다. 비디오 송신 시스템 또는 장치 (1600) 는, 예를 들어, 예를 들어 위성, 케이블, 전화선, 또는 지상 브로드캐스트와 같은 다양한 매체들의 임의의 것을 사용하여 신호를 송신하는 헤드-엔드 (head-end) 또는 송신 시스템일 수도 있다. 비디오 송신 시스템 또는 장치 (1600) 는 또한, 또는 대안적으로, 예를 들어 저장을 위해 신호를 제공하는데 사용될 수도 있다. 송신은 인터넷 또는 일부 다른 네트워크를 통해 제공될 수도 있다. 비디오 송신 시스템 또는 장치 (1600) 는 예를 들어 메타데이터와 같은 예를 들어 비디오 컨텐츠 및 다른 컨텐츠를 생성 및 전달할 수 있다. 도 6 의 볼록들은 비디오 송신 시스템 또는 장치의 블록도를 제공하는 것에 더하여 비디오 송신 프로세스의 흐름도를 제공한다는 것이 또한 명백해야 한다.
비디오 송신 시스템 또는 장치 (1600) 는 프로세서 (1601) 로부터 입력 비디오를 수신한다. 하나의 구현에서, 프로세서 (1601) 는 단순히 비디오 송신 시스템 또는 장치 (1600) 로 LDR 이미지들과 같은 비디오 이미지들을 제공한다. 그러나, 다른 구현에서, 프로세서 (1601) 는 대안적으로 또는 추가적으로 비디오 송신 시스템 또는 장치 (1600) 로 노출 맵들 및/또는 LUT 들을 제공한다. 프로세서 (1601) 는 또한 비디오 송신 시스템 또는 장치 (1600) 로 메타데이터를 제공할 수도 있으며, 여기서 그 메타데이터는 예를 들어 하나 이상의 입력 이미지들과 관련되고 예를 들어 LUT 를 포함할 수도 있다.
비디오 송신 시스템 또는 장치 (1600) 는 인코더 (1602) 및 인코딩된 신호를 송신할 수 있는 송신기 (1604) 를 포함한다. 인코더 (1602) 는 프로세서 (1601) 로부터 비디오 정보를 수신한다. 그 비디오 정보는 예를 들어 비디오 이미지들, 및/또는 노출 맵들을 포함할 수도 있다. 인코더 (1602) 는 비디오 및/또는 다른 정보에 기초하여 인코딩된 신호(들)을 생성한다. 인코더 (1602) 는 하나의 구현에서 도 4 의 인코더 (1100) 이다. 여러 구현들에서, 인코더 (1602) 는 예를 들어 AVC 인코더이다.
인코더 (1602) 는 예를 들어 여러 피스들 (pieces) 의 정보를 수신하고 저장 또는 송신을 위한 구조화된 포맷으로 어셈블링하는 어셈블리 유닛을 포함하는 서브 모듈들을 포함할 수도 있다. 여러 피스들의 정보는 예를 들어 인코딩되거나 인코딩되지 않은 비디오, 노출 맵 값들, LUT 들, 다른 메타데이터 또는 정보, 및 예를 들어 모션 벡터들, 코딩 모드 표시자들, 및 신택스 엘리먼트들과 같은 여러 엘리먼트들을 포함할 수도 있다. 일부 구현들에서, 인코더 (1602) 는 프로세서 (1601) 를 포함하고, 따라서 프로세서 (1601) 의 동작들을 수행한다.
송신기 (1604) 는 인코더 (1602) 로부터 인코딩된 신호(들)을 수신하고 하나 이상의 출력 신호들에서 그 인코딩된 신호(들)을 송신한다. 송신기 (1604) 는, 예를 들어, 인코딩된 화상들 및/또는 그것에 관련된 정보를 나타내는 하나 이상의 비트스트림을 갖는 프로그램 신호를 송신하도록 구성될 수도 있다. 통상의 송신기들은 예를 들어 에러 보상 코딩을 제공하는 것, 신호 내의 데이터를 인터리빙하는 것, 신호에서의 에너지를 랜덤화하는 것, 및 변조기 (1606) 를 사용하여 하나 이상의 캐리어들 상으로 신호를 변조하는 것 중 하나 이상과 같은 기능들을 수행한다. 송신기 (1604) 는 안테나 (도시하지 않음) 를 포함하거나 안테나와 인터페이싱할 수도 있다. 또한, 송신기 (1604) 의 구현들은 변조기 (1606) 에 제한될 수도 있다.
비디오 송신 시스템 또는 장치 (1600) 는 또한 저장 유닛 (1608) 에 통신가능하게 커플링된다. 하나의 구현에서, 저장 유닛 (1608) 은 인코더 (1602) 에 커플링되고, 저장 유닛 (1608) 은 인코더 (1602) 로부터의 인코딩된 비트스트림을 저장하고, 선택적으로 송신기 (1604) 로 그 저장된 비트스트림을 제공한다. 다른 구현에서, 저장 유닛 (1608) 은 송신기 (1604) 에 커플링되고, 송신기 (1604) 로부터의 비트스트림을 저장한다. 송신기 (1604) 로부터의 비트스트림은 예를 들어 송신기 (1604) 에 의해 더 프로세싱된 하나 이상의 인코딩된 비트스트림들을 포함할 수도 있다. 저장 유닛 (1608) 은 상이한 구현들에서 표준 DVD, 블루 레이 디스크, 하드 드라이브, 또는 일부 다른 저장 디바이스의 하나 이상이다.
여러 구현들에서, 비디오 송신 시스템 또는 장치 (1600) 는 프로세스 (200) 를 수행한다. 예를 들어, 프로세서 (1601) 는 동작 (210) 을 수행하고, 인코더 (1602) 는 동작들 (220 및 230) 을 수행한다.
도 7 을 참조하면, 상술된 특징들 및 원리들이 적용될 수도 있는 비디오 수신 시스템 또는 장치 (1700) 가 도시된다. 비디오 수신 시스템 또는 장치 (1700) 는 예를 들어 위성, 케이블, 전화선, 또는 지상 브로드캐스트와 같은 다양한 매체들을 통해 신호들을 수신하도록 구성될 수도 있다. 그 신호들은 인터넷 또는 일부 다른 네트워크를 통해 수신될 수도 있다. 도 7 의 볼록들은 비디오 수신 시스템 또는 장치의 블록도를 제공하는 것에 더하여 비디오 수신 프로세스의 흐름도를 제공한다는 것이 또한 명백해야 한다.
비디오 수신 시스템 또는 장치 (1700) 는, 예를 들어, 셀폰, 컴퓨터, 셋톱 박스, 텔레비젼, 또는 인코딩된 비디오를 수신하고, 예를 들어 디스플레이 (예를 들어, 사용자에게의 디스플레이) 를 위해, 프로세싱을 위해, 또는 저장을 위해 디코딩된 비디오 신호를 제공하는 다른 디바이스일 수도 있다. 따라서, 비디오 수신 시스템 또는 장치 (1700) 는 예를 들어 텔레비젼의 스크린, 컴퓨터 모니터, (저장, 프로세싱 또는 디스플레이를 위해) 컴퓨터, 또는 일부 다른 저장, 프로세싱 또는 디스플레이 디바이스로 그것의 출력을 제공할 수도 있다.
비디오 수신 시스템 또는 장치 (1700) 는 비디오 정보를 수신하고 프로세싱할 수 있다. 그 비디오 정보는 예를 들어 비디오 이미지들, LUT 들, 및/또는 노출 맵들을 포함할 수도 있다. 비디오 수신 시스템 또는 장치 (1700) 는 예를 들어 본 출원의 구현들에서 기술된 신호들과 같은 인코딩된 신호를 수신하는 수신기 (1702) 를 포함한다. 수신기 (1702) 는, 예를 들어, 하나 이상의 LDR 이미지들, HDR 이미지들, LUT 들 및/또는 노출 맵들을 제공하는 신호, 또는 도 6 의 비디오 송신 시스템 (1600) 으로부터 (예를 들어, 저장 유닛 (1608) 또는 송신기 (1604) 로부터) 출력된 신호를 수신할 수도 있다.
수신기 (1702) 는, 예를 들어, 인코딩된 화상들 (예를 들어, 비디오 화상들 및/또는 심도 화상들) 을 나타내는 복수의 비트스트림을 갖는 프로그램 신호를 수신하도록 구성될 수도 있다. 통상의 수신기들은, 예를 들어 변조되고 인코딩된 데이터 신호를 수신하는 것, 복조기 (1704) 를 사용하여 하나 이상의 캐리어들로부터의 데이터 신호를 복조하는 것, 신호에서의 에너지를 탈랜덤화 (de-randomizing) 하는 것, 신호 내의 데이터를 디인터리빙하는 것, 및 신호를 에러 보정 디코딩하는 것 중 하나 이상과 같은 기능들을 수행한다. 수신기 (1702) 는 안테나 (도시하지 않음) 를 포함하거나 안테나와 인터페이싱할 수도 있다. 수신기 (1702) 의 구현들은 복조기 (1704) 에 제한될 수도 있다.
비디오 수신 시스템 또는 장치 (1700) 는 디코더 (1706) 를 포함한다. 디코더 (1706) 는 하나의 구현에서 도 5 의 디코더 (1200) 이다.
수신기 (1702) 는 디코더 (1706) 로 수신된 신호를 제공한다. 수신기 (1702) 에 의해 디코더 (1706) 로 제공된 신호는 하나 이상의 인코딩된 비트스트림들을 포함할 수도 있다. 디코더 (1706) 는, 예를 들어, 비디오 정보를 포함하는 디코딩된 비디오 신호들, 노출 맵들, LUT 들, 또는 다른 메타데이터 또는 복원 정보와 같은 디코딩된 신호를 출력한다. 디코더 (1706) 는 예를 들어 AVC 디코더일 수도 있다.
비디오 수신 시스템 또는 장치 (1700) 는 또한 저장 유닛 (1707) 에 통신가능하게 커플링된다. 하나의 구현에서, 저장 유닛 (1707) 은 수신기 (1702) 에 커플링되고, 수신기 (1702) 는 저장 유닛 (1707) 으로부터의 비트스트림에 액세스하고 및/또는 저장 유닛 (1707) 에 수신된 비트스트림을 저장한다. 다른 구현에서, 저장 유닛 (1707) 은 디코더 (1706) 에 커플링되고, 디코더 (1706) 는 저장 유닛 (1707) 으로부터의 비트스트림에 액세스하고 및/또는 저장 유닛 (1707) 에 디코딩된 비트스트림을 저장한다. 저장 유닛 (1707) 으로부터 액세스된 비트스트림은, 상이한 구현들에서, 하나 이상의 인코딩된 비트스트림들을 포함한다. 저장 유닛 (1707) 은, 상이한 구현들에서, 표준 DVD, 블루 레이 디스크, 하드 드라이브, 또는 일부 다른 저장 디바이스의 하나 이상이다.
디코더 (1706) 로부터의 출력 비디오는, 하나의 구현에서, 프로세서 (1708) 로 제공된다. 프로세서 (1708) 는, 하나의 구현에서, HDR 이미지들의 복원 또는 재구성을 수행하도록 구성된 프로세서이다. 일부 구현들에서, 디코더 (1706) 는 프로세서 (1708) 를 포함하고, 따라서 프로세서 (1708) 의 동작들을 수행한다. 다른 구현들에서, 프로세서 (1708) 는 예를 들어 셋톱 박스 또는 텔레비젼과 같은 다운스트림 디바이스의 부분이다.
여러 구현들에서, 비디오 수신 시스템 또는 장치 (1700) 는 프로세스 (300) 를 수행한다. 예를 들어, 디코더 (1706) 는 동작들 (310 및 320) 을 수행하고, 프로세서 (1708) 는 동작 (330) 을 수행한다.
본 출원은 도 1 내지 도 7 의 다이어그램들을 포함하여 다수의 블록도 및/또는 흐름도들을 제공한다. 본 출원의 블록도 및/또는 흐름도는 프로세스를 기술하는 흐름도, 및 장치의 기능 블록들을 기술하는 블록도 양자 모두를 제공한다는 것이 명백해야 한다.
- 예를 들어, 이전에 기술된 바와 같이, 도 1 의 흐름도는 도 1 에 리스트된 동작들을 포함하는 흐름 프로세스를 기술한다. 그러나, 도 1 은 또한 그 흐름을 구현하는 블록도를 제공한다. 하나의 구현에서, 예를 들어, (i) HDR 이미지 (110) 에 대한 블록은 이미지 수신 디바이스를 나타내고, (ii) LDR 이미지 (112) 에 대한 블록은 LDR 이미지를 생성하는 분해 컴포넌트를 나타내며, (iii) 인코딩된 LDR 이미지 (122) 에 대한 블록은 인코더를 나타내고, (iv) LDR 신호부 (132) 에 대한 블록은 비트스트림 생성기를 나타내며, (v) 복원된 LDR 이미지 (142) 에 대한 블록은 디코더를 나타낸다. 이러한 구현에서, 도 1 의 다른 블록들은 그 흐름을 구현하는 완전한 블록도를 제공하기 위해 유사한 방식으로 해석된다.
- 예를 들어, 이전에 기술된 바와 같이, 도 2 의 흐름도는 도 2 에 리스트된 동작들을 포함하는 흐름 프로세스를 기술한다. 그러나, 도 2 는 또한 그 흐름을 구현하는 블록도를 제공한다. 하나의 구현에서, 예를 들어, 동작들 (210-230) 의 각각에 대한 블록들 각각은 각각의 동작을 수행하는 컴포넌트를 나타낸다. 즉, 예를 들어, 동작 (210) 에 대한 블록은 HDR 이미지를 LDR 이미지 및 복원 정보로 분해하는 동작을 수행하는 컴포넌트를 나타낸다. 다른 구현에서, 도 3 은 도 2 에 대해 기술된 것과 유사한 방식으로 해석된다.
- 예를 들어, 이전에 기술된 바와 같이, 도 4 의 블록도는 도 4 에 도시된 컴포넌트들을 포함하는 시스템 또는 장치를 기술한다. 그러나, 도 4 는 또한 그 블록들의 기능들을 수행하는 흐름도를 제공한다. 하나의 구현에서, 예를 들어, (i) 컴포넌트인 변환 모듈 (1102) 에 대한 블록은 변환을 수행하는 동작을 나타내고, (ii) 인-루프 필터 (1110) (또한 컴포넌트) 에 대한 블록은 인-루프 필터링을 수행하는 동작을 나타낸다. 이러한 구현에서, 도 4 의 다른 블록들은 그 블록들의 기능들을 수행하는 완전한 흐름도를 제공하기 위해 유사한 방식으로 해석된다. 다른 구현들에서,, 도 5 내지 도 7 은 도 4 에 대해 기술된 것과 유사한 방식으로 해석된다.
우리는 따라서 특정의 특징들 및 양태들을 갖는 하나 이상의 구현들을 제공한다. 특히, 우리는 HDR 이미지들의 분해 및 재구성 (또는 복원) 과 관련한 수개의 구현들을 제공한다. 그러나, 이들 구현들의 변형들 및 추가적인 애플리케이션들이 고려되며, 본 개시 내에 있고, 기술된 구현들의 특징들 및 양태들은 다른 구현들을 위해 구성될 수도 있다.
본 출원에 기술된 수개의 구현들 및 특징들은 AVC 표준, 및/또는 MVC 확장 (부록 H) 을 갖는 AVC, 및/또는 SVC 확장 (부록 G) 을 갖는 AVC 의 정황에서 사용될 수도 있다. 추가적으로, 이들 구현들 및 특징들은 다른 표준 (현존하거나 미래의) 의 정황에서, 또는 표준을 수반하지 않는 정황에서 사용될 수도 있다.
다른 변형들 뿐아니라, 본 원리들의 "하나의 실시형태" 또는 "실시형태" 또는 "하나의 구현" 또는 "구현" 에 대한 참조는 실시형태와 연관하여 기술된 특정의 특징, 구조, 특성 등이 본 원리들의 적어도 하나의 실시형태에 포함된다는 것을 의미한다. 따라서, 명세서에 걸쳐 여러 곳에서 나타나는, 임의의 다른 병형들 뿐아니라 어구 "하나의 실시형태에서" 또는 "실시형태에서" 또는 "하나의 구현에서" 또는 "구현에서" 의 등장들은 반드시 모두 동일한 실시형태를 지칭하는 것은 아니다.
또, 본 출원 또는 그의 청구범위는 여러 피스들의 정보를 "결정하는 것" 을 언급할 수도 있다. 정보를 결정하는 것은, 예를 들어, 정보를 추정하는 것, 정보를 계산하는 것, 정보를 예측하는 것, 또는 메모리로부터 정보를 취출하는 것 중 하나 이상을 포함할 수도 있다.
또한, 본 출원 또는 그의 청구범위는 여러 피스들의 정보를 "액세스하는 것" 을 언급할 수도 있다. 정보를 액세스하는 것은 정보를 수신하는 것, 정보 (예를 들어, 메모리) 를 취출하는 것, 정보를 저장하는 것, 정보를 프로세싱하는 것, 정보를 송신하는 것, 정보를 이동시키는 것, 정보를 복사하는 것, 정보를 삭제하는 것, 정보를 계산하는 것, 정보를 결정하는 것, 정보를 예측하는 것, 또는 정보를 추정하는 것 중 하나 이상을 포함할 수도 있다.
여러 구현들은 "이미지들" 및/또는 "화상들" 을 언급한다. 용어들 "이미지" 및 "화상" 은 본 문서에 걸쳐 교환가능하게 사용되고, 넓은 용어들인 것으로 의도된다. "이미지" 또는 "화상" 은 예를 들어 프레임의 또는 필드의 전부 또는 부분일 수도 있다. 용어 "비디오" 는 이미지들 (또는 화상들) 의 시퀀스를 지칭한다. 이미지, 또는 화상은 예를 들어 여러 비디오 컴포넌트들 또는 그들의 조합들의 임의의 것을 포함할 수도 있다. 그러한 컴포넌트들, 또는 그들의 조합들은, 예를 들어, 휘도, 색차, (YUV 또는 YCbCr 또는 YPbPr 의) Y, (YUV 의) U, (YUV 의) V, (YCbCr 의) Cb, (YCbCr 의) Cr, (YPbPr 의) Pb, (YPbPr 의) Pr, (RGB 의) 적색, (RGB 의) 녹색, (RGB 의) 청색, S-비디오, 및 이들 컴포넌트들 중 임의의 것의 네거티브들 또는 포지티브들을 포함한다. "이미지" 및 "화상" 은 또한, 또는 대안적으로, 예를 들어, 통상적인 2차원 비디오, 노출 맵, 2D 비디오 화상에 대한 디스패리티 맵, 2D 비디오 화상에 대응하는 심도 맵, 또는 에지 맵을 포함하여, 다양한 상이한 타입들의 컨텐츠를 지칭한다.
"노출 맵", "심도 맵", "디스패리티 맵", "에지 맵", 및 유사한 용어들은 또한 넓은 용어들인 것으로 의도된다. 맵은 일반적으로, 예를 들어 특정 타입의 정보를 포함하는 데이터의 세트를 지칭한다. 그러나, 맵은 그의 이름에 의해 나타내지지 않는 다른 타입들의 정보를 포함할 수도 있다. 예를 들어, 깊이 맵은 통상 깊이 정보를 포함하지만, 또한 예를 들어 비디오 또는 에지 정보와 같은 다른 정보를 포함할 수도 있다. 또한, 예를 들어 노출 맵 또는 깊이 맵과 같은 맵은 비디오 이미지가 그렇듯이 시각적으로 유용하거나 의미가 있을 필요는 없다. 그러나, 맵은 시각적으로 유용하거나 의미있는 정보를 제공할 수 있고, 종종 제공한다. 예를 들어, 깊이 맵은 통상적으로 객체들 및 깊이가 인간의 눈에 의해 확인될 수 있는 이미지를 제공한다.
용어 "계층" 은 본 문서에서, 예를 들어, HDR 계층, LDR 계층, 및 노출 맵 계층을 지칭하는데 사용된다. 계층은 다양한 상이한 엘리먼트들을 포함할 수 있다. 통상적으로, HDR 계층은, 예를 들어, HDR 이미지를 포함한다. 더욱 일반적으로, HDR 계층은 예를 들어 HDR 이미지와 같은 HDR 엘리먼트를 포함하는, 조직화 또는 계층적 의미에서 계층 또는 레벨이다.
"신호" 는 예를 들어 비트스트림을 지칭한다. 이에 따라, HDR 신호는 통상, 예를 들어, HDR 계층으로부터의 HDR 이미지와 같은 HDR 엘리먼트를 나타내는 비트스트림을 포함한다.
용어들 "이웃" 및 "이웃하는" 은 본 출원에 전체에 걸쳐 사용된다. 예들로서, 제 1 블록 또는 화소는 제 1 블록 또는 화소가 제 2 블록 또는 화소에 접촉하는 경우 제 2 블록 또는 화소에 대한 이웃이라고 칭해진다. 따라서, 주어진 블록 또는 화소는 일반적으로 좌측의, 우측의, 상측의, 하측의 및 네 코너들에서의 블록 또는 화소를 포함하여 8 개의 이웃들을 갖는다.
예를 들어, "A/B", "A 및/또는 B" 및 "A 및 B 중 적어도 하나" 의 경우들에서의 다음의 "/", "및/또는", 및 "~ 중 적어도 하나" 중 임의의 것의 사용은 첫 번째 리스트된 옵션 (A) 만의 선택, 또는 두 번째 리스트된 옵션 (B) 만의 선택, 또는 양자 모두의 옵션들 (A 및 B) 의 선택을 포함하도록 의도된다. 다른 예로서, "A, B, 및/또는 C" 및 "A, B, 및 C 중 적어도 하나" 및 "A, B, 또는 C 의 적어도 하나" 의 경우들에서, 그러한 구문은 첫 번째 리스트된 옵션 (A) 만의 선택, 또는 두 번째 리스트된 옵션 (B) 만의 선택, 또는 세 번째 리스트된 옵션 (C) 만의 선택, 또는 첫 번째 및 두 번째 리스트된 옵션들 (A 및 B) 만의 선택, 또는 첫 번째 및 세 번째 리스트된 옵션들 (A 및 C) 만의 선택, 또는 두 번째 및 세 번째 리스트된 옵션들 (B 및 C) 만의 선택, 또는 모든 세 개의 옵션들 (A 및 B 및 C) 의 선택을 포함하도록 의도된다. 이것은 리스트된 아이템들에 대해, 이러한 및 관련된 기술들에서 통상의 기술자에 의해 용이하게 명백한 바와 같이 연장될 수도 있다.
또, 많은 구현들은 인코더 (예를 들어, 인코더 (1100 또는 1602)), 디코더 (예를 들어, 디코더 (1200 또는 1706)), 디코더로부터의 출력을 프로세싱하는 포스트-프로세서 (예를 들어, 프로세서 (1708)), 또는 인코더로의 입력을 제공하는 프리-프로세서 (예를 들어, 프로세서 (1601)) 중 하나 이상에서 구현될 수도 있다. 또한, 다른 구현들이 본 개시에 의해 고려된다.
여기에 기술된 구현들은, 예를 들어, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림, 또는 신호에서 구현될 수도 있다. 비록 단지 (예를 들어, 방법으로서만 논의되는) 구현의 단일의 형태의 정황에서 논의되더라도, 논의된 특징들의 구현은 또한 다른 형태들 (예를 들어, 장치 또는 프로그램) 에서 구현될 수도 있다. 장치는 예를 들어 적절한 하드웨어, 소프트웨어, 및 펌웨어에서 구현될 수도 있다. 방법들은, 예를 들어, 컴퓨터, 마이크로프로세서, 집적회로, 또는 프로그램가능한 로직 디바이스를 포함하여, 일반적으로 프로세싱 디바이스들을 지칭하는 예를 들어 프로세서와 같은 장치에서 구현될 수도 있다. 프로세서들은 또한 예를 들어 컴퓨터들, 셀폰들, 휴대용/개인용 디지털 보조기들 ("PDAs"), 및 엔드-유저들 사이에 정보의 통신을 용이하게 하는 다른 디바이스들과 같은 통신 디바이스들을 포함한다.
여기에 기술된 여러 프로세스들 및 피쳐들의 구현들은 다양한 상이한 장비 또는 애플리케이션들, 특히, 예를 들어, 데이터 인코딩, 데이터 디코딩, HDR 프로세싱, 뷰 생성, 심도 또는 디스패리티 프로세싱, 및 이미지들 및 관련된 심도 및/또는 디스패리티 맵들의 다른 프로세싱과 연관된 장비 또는 애플리케이션들에서 구체화될 수도 있다. 그러한 장비의 예들은 인코더, 디코더, 디코더로부터의 출력을 프로세싱하는 포스트-프로세서, 인코더로의 입력을 제공하는 프리-프로세서, 비디오 코더, 비디오 디코더, 비디오 코덱, 웹 서버, 셋톱 박스, HDR TV 또는 다른 HDR 디스플레이 디바이스, 랩톱, 개인용 컴퓨터, 셀 폰, PDA, 및 다른 통신 디바이스들을 포함한다. 명백해야하는 바와 같이, 그 장비는 이동가능하고 심지어 자동차 내에 설치될 수도 있다.
또, 방법들은 프로세서에 의해 수행되는 명령들에 의해 구현될 수도 있고, 그러한 명령들 (및/또는 구현에 의해 생성된 데이터 값들) 은 예를 들어 집적 회로, 소프트웨어 캐리어 또는 예를 들어 하드 디스크, 컴팩트 디스켓 ("CD"), (예를 들어, 종종 디지털 다기능 디스크로서 지칭되는 DVD 또는 디지털 비디오 디스크와 같은) 광학 디스크, 랜덤 액세스 메모리 ("RAM"), 또는 리드 온리 메모리 ("ROM") 와 같은 다른 저장 디바이스와 같은 프로세서 판독가능 매체에 저장될 수도 있다. 명령들은 프로세서 판독가능 매체에 유형으로 수록된 애플리케이션 프로그램을 형성할 수도 있다. 명령들은, 예를 들어, 하드웨어, 펌웨어, 소프트웨어, 또는 조합으로 존재할 수도 있다. 명령들은, 예를 들어, 운영 시스템, 개별 애플리케이션, 또는 이 둘의 조합에서 발견될 수도 있다. 따라서, 프로세서는 예를 들어 프로세서를 수행하도록 구성된 디바이스 및 프로세스를 수행하기 위한 명령들을 갖는 (저장 디바이스와 같은) 프로세서 판독가능 매체를 포함하는 디바이스 양자 모두로서 특징지워질 수도 있다. 또한, 프로세서 판독가능 매체는 명령들에 부가하거나 대신하여 구현에 의해 생성된 데이터 값들을 저장할 수도 있다.
통상의 기술자에게 명백한 바와 같이, 구현들은 예를 들어 저장되거나 송신될 수도 있는 정보를 반송하도록 포맷팅된 다양한 신호들을 생성할 수도 있다. 그 정보는, 예를 들어, 방법을 수행하는 명령들, 또는 기술된 구현들 중 하나에 의해 생성된 데이터를 포함할 수도 있다. 예를 들어, 신호는 신택스를 기입 또는 판독하기 위한 규칙들을 데이터로서 반송하도록, 또는 신택스 규칙들을 사용하여 생성된 실제의 신택스-값들을 데이터로서 반송하도록 포맷팅될 수도 있다. 그러한 신호는, 예를 들어, (예를 들어, 스펙트럼의 무선 주파수 부분을 사용하는) 전자기파로서 또는 기저대역 신호로서 포맷팅될 수도 있다. 그 포맷팅은 예를들어 데이터 스트림을 인코딩하는 것 및 그 인코딩된 데이터 스트림으로 캐리어를 변조하는 것을 포함할 수도 있다. 신호가 반송하는 정보는 예를 들어 아날로그 또는 디지털 정보일 수도 있다. 신호는 알려진 바와 같이 다양한 상이한 유선 또는 무선 링크들을 통해 송신될 수도 있다. 신호는 프로세서 판독가능 매체 상에 저장될 수도 있다.
다수의 구현들이 기술되었다. 그럼에도불구하고, 다양한 변경들이 행해질 수도 있다는 것이 이해되어야 할 것이다. 예를 들어, 상이한 구현들의 엘리먼트들은 다른 구현들을 생성하기 위해 결합, 보충, 변경, 또는 제거될 수도 있다. 또, 통상의 기술자는 다른 구조들 및 프로세스들이 개시된 것들 대신에 사용될 수도 있고 결과의 구현들은 개시된 구현들과 적어도 실질적으로 동일한 결과(들)을 달성하기 위해 적어도 실질적으로 동일한 방법(들)로 적어도 실질적으로 동일한 기능(들)을 수행할 것이라는 것을 이해할 것이다. 이에 따라, 이들 및 다른 구현들은 본 출원에 의해 고려된다.

Claims (37)

  1. 더 높은 동적 범위 (dynamic range) 이미지로부터, 더 낮은 동적 범위 이미지 및 상기 더 높은 동적 범위 이미지가 상기 더 낮은 동적 범위 이미지로부터 복원되는 것을 허용하는 노출 맵을 생성하는 단계로서, 상기 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스인, 상기 더 낮은 동적 범위 이미지 및 상기 노출 맵을 생성하는 단계;
    상기 노출 맵에 평활성 제약을 부과하여 평활화된 노출 맵을 생성하는 단계;
    상기 더 낮은 동적 범위 이미지를 인코딩하는 단계;
    상기 평활화된 노출 맵을 인코딩하는 단계; 및
    상기 더 낮은 동적 범위 이미지 및 상기 평활화된 노출 맵을 송신하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 더 낮은 동적 범위 이미지 및 상기 노출 맵 중 하나 이상의 인코딩은 상기 더 낮은 동적 범위 이미지와 상기 노출 맵 사이의 상관을 활용하는, 방법.
  3. 제 2 항에 있어서,
    상기 상관은 상기 더 낮은 동적 범위 이미지 및 상기 노출 맵 양자 모두에서의 동일 장소에 배치된 (collocated) 에지를 포함하는, 방법.
  4. 제 1 항에 있어서,
    상기 노출 맵은 상기 더 낮은 동적 범위 이미지의 복원에 기초하여 인코딩되는, 방법.
  5. 제 1 항에 있어서,
    상기 노출 맵은 (i) 조인트 양방향 필터링, (ii) 지오메트릭 파티셔닝, 또는 (iii) 성긴 다이애딕 모드 (sparse dyadic mode) 중 하나 이상을 사용하여 인코딩되는, 방법.
  6. 제 1 항에 있어서,
    상기 더 낮은 동적 범위 이미지 및 상기 노출 맵을 생성하는 단계는,
    상기 더 높은 동적 범위 이미지를 사용하여 상기 노출 맵을 생성하는 단계; 및
    상기 노출 맵을 사용하여 상기 더 낮은 동적 범위 이미지를 생성하는 단계를 포함하는, 방법.
  7. 제 1 항에 있어서,
    상기 더 낮은 동적 범위 이미지 및 상기 노출 맵을 생성하는 단계는,
    상기 더 높은 동적 범위 이미지를 사용하여 상기 더 낮은 동적 범위 이미지를 생성하는 단계; 및
    상기 더 낮은 동적 범위 이미지를 사용하여 상기 노출 맵을 생성하는 단계를 포함하는, 방법.
  8. 제 1 항에 있어서,
    상기 더 낮은 동적 범위 이미지를 생성하는 단계는 상기 더 높은 동적 범위 이미지의 데이터 값들과 상기 더 낮은 동적 범위 이미지의 데이터 값들 사이의 불균일한 맵핑을 사용하여 상기 더 높은 동적 범위 이미지를 상기 더 낮은 동적 범위 이미지로 변환하는 단계를 포함하고,
    상기 노출 맵은 (i) 상기 불균일 맵핑 또는 (ii) 상기 더 높은 동적 범위 이미지의 복원을 허용하는 인버스 변환 중 하나 이상을 기술하는, 방법.
  9. 제 8 항에 있어서,
    상기 노출 맵은 더 높은 동적 범위 데이터 값들 및 연관된 더 낮은 동적 범위 데이터 값들의 범위들을 나타내는 룩업 테이블을 포함하는, 방법.
  10. 제 8 항에 있어서,
    상기 노출 맵은 특정의 더 낮은 동적 범위 데이터 값과 연관된 복원된 더 높은 동적 범위 데이터 값을 나타내는 룩업 테이블을 포함하는, 방법.
  11. 제 1 항에 있어서,
    인코딩된 상기 더 낮은 동적 범위 이미지 및 인코딩된 상기 노출 맵을 포함하는 비트스트림을 구성하는 단계를 더 포함하는, 방법.
  12. 제 11 항에 있어서,
    상기 비트스트림을 구성하는 단계는 메타데이터로서 상기 인코딩된 노출 맵을 포함하는 단계를 포함하는, 방법.
  13. 제 11 항에 있어서,
    상기 비트스트림을 구성하는 단계는 부가 확장 정보 (supplemental enhancement information) 메시지로서 상기 인코딩된 노출 맵을 포함하는 단계를 포함하는, 방법.
  14. 제 1 항에 있어서,
    상기 더 낮은 동적 범위 이미지를 인코딩하는 단계는 H.264 를 사용하여 상기 더 낮은 동적 범위 이미지를 인코딩하는 단계를 포함하는, 방법.
  15. 제 1 항에 있어서,
    상기 더 낮은 동적 범위 이미지 및 상기 노출 맵을 생성하는 단계는 상기 더 높은 동적 범위 이미지를 분해하는 단계를 포함하고,
    상기 노출 맵은 상기 더 높은 동적 범위 이미지가 상기 더 낮은 동적 범위 이미지로부터 재구성되는 것을 허용하는, 방법.
  16. 더 높은 동적 범위 (dynamic range) 이미지로부터, 더 낮은 동적 범위 이미지 및 상기 더 낮은 동적 범위 이미지로부터의 상기 더 높은 동적 범위 이미지의 복원을 허용하는 노출 맵을 생성하되, 상기 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스이고,
    상기 노출 맵에 평활성 제약을 부과하여 평활화된 노출 맵을 생성하도록 구성되는, 프로세서;
    상기 더 낮은 동적 범위 이미지를 인코딩하고 상기 평활화된 노출 맵을 인코딩하도록 구성된 인코더; 및
    상기 더 낮은 동적 범위 이미지 및 상기 평활화된 노출 맵을 위한 송신기를 포함하는, 장치.
  17. 더 높은 동적 범위 (dynamic range) 이미지로부터, 더 낮은 동적 범위 이미지 및 상기 더 낮은 동적 범위 이미지로부터의 상기 더 높은 동적 범위 이미지의 복원을 허용하는 노출 맵을 생성하는 수단으로서, 상기 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스인, 상기 더 낮은 동적 범위 이미지 및 상기 노출 맵을 생성하는 수단;
    상기 노출 맵에 평활성 제약을 부과하여 평활화된 노출 맵을 생성하는 수단;
    상기 더 낮은 동적 범위 이미지를 인코딩하는 수단;
    상기 평활화된 노출 맵을 인코딩하는 수단; 및
    상기 더 낮은 동적 범위 이미지 및 상기 평활화된 노출 맵을 위한 송신기를 포함하는, 장치.
  18. 명령들을 저장한 비일시적 프로세서 판독가능 매체로서,
    상기 명령들은, 하나 이상의 프로세서들로 하여금,
    더 높은 동적 범위 (dynamic range) 이미지로부터, 더 낮은 동적 범위 이미지 및 상기 더 낮은 동적 범위 이미지로부터의 상기 더 높은 동적 범위 이미지의 복원을 허용하는 노출 맵을 생성하는 것으로서, 상기 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스인, 상기 더 낮은 동적 범위 이미지 및 상기 노출 맵을 생성하는 것;
    상기 노출 맵에 평활성 제약을 부과하여 평활화된 노출 맵을 생성하는 것;
    상기 더 낮은 동적 범위 이미지를 인코딩하는 것;
    상기 평활화된 노출 맵을 인코딩하는 것; 및
    상기 더 낮은 동적 범위 이미지 및 상기 평활화된 노출 맵을 송신하는 것
    을 집합적으로 수행하게 하는, 비일시적 프로세서 판독가능 매체.
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 신호 구조를 저장한 비일시적 프로세서 판독가능 매체로서,
    상기 신호 구조는,
    인코딩된 더 낮은 동적 범위 (dynamic range) 이미지를 포함하는 더 낮은 동적 범위 섹션; 및
    인코딩된 노출 맵을 포함하는 노출 맵 섹션으로서, 상기 노출 맵은 상기 더 낮은 동적 범위 이미지로부터의 더 높은 동적 범위 이미지의 복원을 허용하고, 상기 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스인, 상기 노출 맵 섹션을 포함하는, 비일시적 프로세서 판독가능 매체.
  26. 인코딩된 더 낮은 동적 범위 (dynamic range) 이미지를 디코딩하는 단계;
    인코딩된 노출 맵을 디코딩하는 단계로서, 디코딩된 상기 노출 맵은 상기 더 낮은 동적 범위 이미지로부터의 더 높은 동적 범위 이미지의 복원을 허용하고, 상기 디코딩된 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스이며, 평활성 제약이 상기 디코딩된 노출 맵에 부과되어 있는, 상기 인코딩된 노출 맵을 디코딩하는 단계; 및
    디코딩된 상기 더 낮은 동적 범위 이미지 및 상기 디코딩된 노출 맵에 기초하여 상기 더 높은 동적 범위 이미지를 복원하는 단계를 포함하는, 방법.
  27. 제 26 항에 있어서,
    상기 더 낮은 동적 범위 이미지 및 상기 노출 맵 중 하나 이상의 인코딩은 상기 더 낮은 동적 범위 이미지와 상기 노출 맵 사이의 상관을 활용하며,
    상기 노출 맵을 디코딩하는 단계는 상기 더 낮은 동적 범위 이미지의 디코딩에 기초하는, 방법.
  28. 제 26 항에 있어서,
    상기 노출 맵은 더 높은 동적 범위 이미지로부터 상기 더 낮은 동적 범위 이미지를 생성하는데 사용되는, 더 높은 동적 범위 데이터 값들과 더 낮은 동적 범위 데이터 값들 사이의 불균일한 맵핑을 기술하는, 방법.
  29. 제 26 항에 있어서,
    상기 노출 맵은 상기 더 낮은 동적 범위 이미지로부터 더 높은 동적 범위 이미지의 복원을 허용하는, 더 높은 동적 범위 데이터 값들과 더 낮은 동적 범위 데이터 값들 사이의 불균일한 맵핑을 기술하는, 방법.
  30. 제 26 항에 있어서,
    상기 노출 맵은 더 낮은 동적 범위 데이터 값들과 더 높은 동적 범위 데이터 값들 사이의 불균일한 맵핑을 포함하고,
    상기 더 높은 동적 범위 이미지를 복원하는 단계는 (i) 상기 불균일 맵핑 및 (ii) 상기 더 낮은 동적 범위 이미지로부터의 더 낮은 동적 범위 데이터 값들을 사용하여 더 높은 동적 범위 데이터 값들을 생성하는 단계를 포함하는, 방법.
  31. 제 26 항에 있어서,
    상기 노출 맵은 더 높은 동적 범위 데이터 값들과 더 낮은 동적 범위 데이터 값들 사이의 불균일한 맵핑을 포함하고,
    상기 더 높은 동적 범위 이미지를 복원하는 단계는 (i) 상기 불균일 맵핑에 기초하여 인버스 맵핑을 생성하는 단계, 및 (ii) 상기 인버스 맵핑 및 디코딩된 상기 더 낮은 동적 범위 이미지로부터의 더 낮은 동적 범위 데이터 값들을 사용하여 더 높은 동적 범위 데이터 값들을 생성하는 단계를 포함하는, 방법.
  32. 제 26 항에 있어서,
    상기 인코딩된 노출 맵을 디코딩하는 단계는 SEI 메시지 또는 메타데이터 중 하나 이상을 디코딩하는 단계를 포함하는, 방법.
  33. 제 26 항에 있어서,
    상기 인코딩된 더 낮은 동적 범위 이미지를 디코딩하는 단계는 수신된 비트스트림으로부터의 상기 인코딩된 더 낮은 동적 범위 이미지를 액세스하는 단계를 포함하고,
    상기 인코딩된 노출 맵을 디코딩하는 단계는 상기 수신된 비트스트림으로부터의 상기 인코딩된 노출 맵을 액세스하는 단계를 포함하는, 방법.
  34. 제 26 항에 있어서,
    상기 노출 맵은 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지의 재구성을 허용하고,
    상기 더 높은 동적 범위 이미지를 복원하는 단계는 디코딩된 상기 더 낮은 동적 범위 이미지 및 디코딩된 상기 노출 맵에 기초하여 상기 더 높은 동적 범위 이미지를 재구성하는 단계를 포함하는, 방법.
  35. 인코딩된 더 낮은 동적 범위 (dynamic range) 이미지를 디코딩하도록, 그리고 인코딩된 노출 맵을 디코딩하도록 구성된 디코더로서, 디코딩된 상기 노출 맵은 상기 더 낮은 동적 범위 이미지로부터의 더 높은 동적 범위 이미지의 복원을 허용하고, 상기 디코딩된 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스이며, 평활성 제약이 상기 디코딩된 노출 맵에 부과되어 있는, 상기 디코더; 및
    디코딩된 상기 더 낮은 동적 범위 이미지 및 상기 디코딩된 노출 맵에 기초하여 상기 더 높은 동적 범위 이미지를 복원하도록 구성된 프로세서를 포함하는, 장치.
  36. 인코딩된 더 낮은 동적 범위 (dynamic range) 이미지를 디코딩하는 수단;
    인코딩된 노출 맵을 디코딩하는 수단으로서, 디코딩된 상기 노출 맵은 상기 더 낮은 동적 범위 이미지로부터의 더 높은 동적 범위 이미지의 복원을 허용하고, 상기 디코딩된 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스이며, 평활성 제약이 상기 디코딩된 노출 맵에 부과되어 있는, 상기 인코딩된 노출 맵을 디코딩하는 수단; 및
    디코딩된 상기 더 낮은 동적 범위 이미지 및 상기 디코딩된 노출 맵에 기초하여 상기 더 높은 동적 범위 이미지를 복원하는 수단을 포함하는, 장치.
  37. 명령들을 저장한 비일시적 프로세서 판독가능 매체로서,
    상기 명령들은, 하나 이상의 프로세서들로 하여금,
    인코딩된 더 낮은 동적 범위 (dynamic range) 이미지를 디코딩하는 것;
    인코딩된 노출 맵을 디코딩하는 것으로서, 상기 노출 맵은 상기 더 낮은 동적 범위 이미지로부터의 더 높은 동적 범위 이미지의 복원을 허용하고, 상기 노출 맵은, 각 엔트리가 상기 더 낮은 동적 범위 이미지로부터 상기 더 높은 동적 범위 이미지를 복구하는데 사용되는 각각의 화소에 대한 승수 (multiplier) 를 나타내는 2차원 매트릭스이며, 평활성 제약이 상기 노출 맵에 부과되어 있는, 상기 인코딩된 노출 맵을 디코딩하는 것; 및
    디코딩된 상기 더 낮은 동적 범위 이미지 및 디코딩된 상기 노출 맵에 기초하여 상기 더 높은 동적 범위 이미지를 복원하는 것
    을 집합적으로 수행하게 하는, 비일시적 프로세서 판독가능 매체.
KR1020157012158A 2012-11-16 2012-11-16 높은 동적 범위 이미지들의 프로세싱 KR102004199B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2012/065403 WO2014077827A1 (en) 2012-11-16 2012-11-16 Processing high dynamic range images

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020197021286A Division KR102149115B1 (ko) 2012-11-16 2012-11-16 높은 동적 범위 이미지들의 프로세싱

Publications (2)

Publication Number Publication Date
KR20150084832A KR20150084832A (ko) 2015-07-22
KR102004199B1 true KR102004199B1 (ko) 2019-07-26

Family

ID=47258119

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020157012158A KR102004199B1 (ko) 2012-11-16 2012-11-16 높은 동적 범위 이미지들의 프로세싱
KR1020197021286A KR102149115B1 (ko) 2012-11-16 2012-11-16 높은 동적 범위 이미지들의 프로세싱

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020197021286A KR102149115B1 (ko) 2012-11-16 2012-11-16 높은 동적 범위 이미지들의 프로세싱

Country Status (9)

Country Link
US (1) US9679365B2 (ko)
EP (1) EP2920759B1 (ko)
JP (1) JP6278972B2 (ko)
KR (2) KR102004199B1 (ko)
CN (2) CN110084755B (ko)
AU (1) AU2012394396B2 (ko)
BR (1) BR112015011219A2 (ko)
HK (1) HK1215486A1 (ko)
WO (1) WO2014077827A1 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201201230D0 (en) * 2012-01-25 2012-03-07 Univ Delft Tech Adaptive multi-dimensional data decomposition
US20150350641A1 (en) * 2014-05-29 2015-12-03 Apple Inc. Dynamic range adaptive video coding system
EP3163894B1 (en) * 2014-06-27 2020-08-19 Panasonic Intellectual Property Management Co., Ltd. Data output device, data output method, and data generation method
EP3026912A1 (en) * 2014-11-27 2016-06-01 Thomson Licensing Method and device for encoding and decoding a HDR picture and a LDR picture using illumination information
KR20160067275A (ko) * 2014-12-03 2016-06-14 삼성디스플레이 주식회사 표시 장치 및 이의 구동 방법
US9654755B2 (en) * 2015-01-09 2017-05-16 Vixs Systems, Inc. Dynamic range converter with logarithmic conversion and methods for use therewith
US9589313B2 (en) * 2015-01-09 2017-03-07 Vixs Systems, Inc. Dynamic range converter with pipelined architecture and methods for use therewith
US9860504B2 (en) 2015-01-09 2018-01-02 Vixs Systems, Inc. Color gamut mapper for dynamic range conversion and methods for use therewith
KR102529013B1 (ko) 2015-01-30 2023-05-08 인터디지털 브이씨 홀딩스 인코포레이티드 컬러 픽처를 인코딩 및 디코딩하는 방법 및 장치
WO2016120354A1 (en) 2015-01-30 2016-08-04 Thomson Licensing Method and device for matching colors between color pictures of different dynamic range
KR102337159B1 (ko) * 2015-05-21 2021-12-08 삼성전자주식회사 컨텐츠 출력 장치 및 방법과, 디스플레이 장치
EP3113496A1 (en) 2015-06-30 2017-01-04 Thomson Licensing Method and device for encoding both a hdr picture and a sdr picture obtained from said hdr picture using color mapping functions
WO2017002540A1 (ja) * 2015-06-30 2017-01-05 ソニー株式会社 情報処理装置、情報処理システム、情報記録媒体、および情報処理方法、並びにプログラム
GB201515415D0 (en) * 2015-08-29 2015-10-14 Univ Warwick Image compression
US10283032B2 (en) * 2015-10-07 2019-05-07 Samsung Display Co., Ltd. Integrated circuit for nonlinear data encoding
JP6237797B2 (ja) * 2016-01-05 2017-11-29 ソニー株式会社 ビデオシステム、ビデオ処理方法、プログラム、およびビデオコンバーター
US10264196B2 (en) 2016-02-12 2019-04-16 Contrast, Inc. Systems and methods for HDR video capture with a mobile device
US10257393B2 (en) 2016-02-12 2019-04-09 Contrast, Inc. Devices and methods for high dynamic range video
ITUA20163652A1 (it) * 2016-05-20 2017-11-20 Trellis Europe S R L Metodo per la codifica e decodifica di immagini hdr
JP6826472B2 (ja) * 2016-06-15 2021-02-03 キヤノン株式会社 画像処理装置およびその制御方法
JP7081835B2 (ja) 2016-08-09 2022-06-07 コントラスト, インコーポレイテッド 車両制御のためのリアルタイムhdrビデオ
US10425599B2 (en) * 2017-02-01 2019-09-24 Omnivision Technologies, Inc. Exposure selector for high-dynamic range imaging and associated method
WO2019014057A1 (en) 2017-07-10 2019-01-17 Contrast, Inc. STEREOSCOPIC CAMERA
CN110999300B (zh) * 2017-07-24 2023-03-28 杜比实验室特许公司 用于图像/视频处理的单通道逆映射
CN107451970A (zh) * 2017-07-28 2017-12-08 电子科技大学 一种基于单帧图像的高动态范围图像生成方法
US10972767B2 (en) 2017-11-01 2021-04-06 Realtek Semiconductor Corp. Device and method of handling multiple formats of a video sequence
AU2019222715B2 (en) * 2018-02-14 2021-09-16 Dolby Laboratories Licensing Corporation Image reshaping in video coding using rate distortion optimization
US10951888B2 (en) 2018-06-04 2021-03-16 Contrast, Inc. Compressed high dynamic range video
CN109785263B (zh) * 2019-01-14 2022-09-16 北京大学深圳研究生院 一种基于Retinex的逆色调映射图像转换方法
CN111292264B (zh) * 2020-01-21 2023-04-21 武汉大学 一种基于深度学习的图像高动态范围重建方法
US11468548B2 (en) * 2020-08-27 2022-10-11 Disney Enterprises, Inc. Detail reconstruction for SDR-HDR conversion
US11803946B2 (en) 2020-09-14 2023-10-31 Disney Enterprises, Inc. Deep SDR-HDR conversion
US11587213B1 (en) * 2021-11-05 2023-02-21 GM Cruise Holdings LLC. Preserving dynamic range in images

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007257641A (ja) * 2006-03-24 2007-10-04 Sharp Corp トーンマッピングのメッセージングのための方法、システム、画像受信装置、画像送信装置、およびプログラム
JP2012520619A (ja) * 2009-03-13 2012-09-06 ドルビー ラボラトリーズ ライセンシング コーポレイション 高ダイナミックレンジ、視覚ダイナミックレンジ及び広色域のビデオの階層化圧縮

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0461066A (ja) 1990-06-29 1992-02-27 Nippon Electric Ind Co Ltd ハードディスク用モータとその組付け方法
CN1126264C (zh) 1996-02-08 2003-10-29 松下电器产业株式会社 宽频带声音信号编码装置和宽频带声音信号编码解码装置
US7146059B1 (en) 2003-03-05 2006-12-05 Massachusetts Institute Of Technology Method of performing fast bilateral filtering and using the same for the display of high-dynamic-range images
US7142723B2 (en) * 2003-07-18 2006-11-28 Microsoft Corporation System and process for generating high dynamic range images from multiple exposures of a moving scene
JP2005284534A (ja) * 2004-03-29 2005-10-13 Inventec Appliances Corp 高ダイナミックレンジ画像を低ダイナミックレンジ画像に変換する方法及び関連装置
US8218625B2 (en) * 2004-04-23 2012-07-10 Dolby Laboratories Licensing Corporation Encoding, decoding and representing high dynamic range images
US20070076971A1 (en) 2005-09-30 2007-04-05 Nokia Corporation Compression of images for computer graphics
CN101371583B (zh) * 2006-01-23 2012-03-21 马普科技促进协会 编码/解码高动态范围图像的方法和设备
US8014445B2 (en) * 2006-02-24 2011-09-06 Sharp Laboratories Of America, Inc. Methods and systems for high dynamic range video coding
WO2009051668A2 (en) 2007-10-12 2009-04-23 Thomson Licensing Methods and apparatus for video encoding and decoding geometrically partitioned bi-predictive mode partitions
US8175158B2 (en) 2008-01-04 2012-05-08 Sharp Laboratories Of America, Inc. Methods and systems for inter-layer image prediction parameter determination
ES2389458T3 (es) * 2008-07-10 2012-10-26 The University Of Warwick Métodos y dispositivos para la compresión de datos de vídeo HDR
WO2010036250A1 (en) * 2008-09-24 2010-04-01 Nikon Corporation Method and device for image noise compensation with image enhancement
KR101007101B1 (ko) 2009-01-07 2011-01-10 한양대학교 산학협력단 적응형 톤 매핑 장치 및 방법, 그리고 이를 이용한 영상 처리 시스템
WO2010088465A1 (en) 2009-02-02 2010-08-05 Gentex Corporation Improved digital image processing and systems incorporating the same
US9336578B2 (en) * 2009-09-14 2016-05-10 Thomson Licensing Interactive tone mapping for high dynamic range video
WO2011042229A1 (en) * 2009-10-08 2011-04-14 International Business Machines Corporation Method and system for transforming a digital image from a low dynamic range (ldr) image to a high dynamic range (hdr) image
JP5909187B2 (ja) * 2009-10-14 2016-04-26 トムソン ライセンシングThomson Licensing フィルタ処理およびエッジ符号化
TWI479898B (zh) * 2010-08-25 2015-04-01 Dolby Lab Licensing Corp 擴展影像動態範圍
US8675115B1 (en) * 2011-02-14 2014-03-18 DigitalOptics Corporation Europe Limited Forward interpolation approach for constructing a second version of an image from a first version of the image
RU2013152741A (ru) * 2011-04-28 2015-06-10 Конинклейке Филипс Н.В. Способ и устройство для генерирования сигнала кодирования изображения
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
EP2873237B1 (en) * 2012-07-13 2022-03-30 Koninklijke Philips N.V. Improved hdr image decoding methods and devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007257641A (ja) * 2006-03-24 2007-10-04 Sharp Corp トーンマッピングのメッセージングのための方法、システム、画像受信装置、画像送信装置、およびプログラム
JP2012520619A (ja) * 2009-03-13 2012-09-06 ドルビー ラボラトリーズ ライセンシング コーポレイション 高ダイナミックレンジ、視覚ダイナミックレンジ及び広色域のビデオの階層化圧縮

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Takao Jinno ET AL:"New local tone mapping and two-layer coding for HDR images", 2012 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 25-30 March 2012(2012.03.25.) 1부*

Also Published As

Publication number Publication date
AU2012394396A1 (en) 2015-05-14
WO2014077827A1 (en) 2014-05-22
EP2920759A1 (en) 2015-09-23
CN110084755A (zh) 2019-08-02
BR112015011219A2 (pt) 2017-07-11
HK1215486A1 (zh) 2016-08-26
US9679365B2 (en) 2017-06-13
CN104969259B (zh) 2019-02-12
CN110084755B (zh) 2023-05-23
KR20190090044A (ko) 2019-07-31
JP6278972B2 (ja) 2018-02-14
CN104969259A (zh) 2015-10-07
AU2012394396B2 (en) 2019-01-17
US20150302562A1 (en) 2015-10-22
EP2920759B1 (en) 2021-01-27
JP2016501481A (ja) 2016-01-18
KR102149115B1 (ko) 2020-08-27
KR20150084832A (ko) 2015-07-22

Similar Documents

Publication Publication Date Title
KR102004199B1 (ko) 높은 동적 범위 이미지들의 프로세싱
US10417748B2 (en) Filtering and edge encoding and decoding for depth maps
US10182235B2 (en) Hardware efficient sparse FIR filtering in layered video coding
JP5937212B2 (ja) デプス符号化
KR20210114055A (ko) 교차-컴포넌트 필터링을 위한 방법 및 장치
US10542265B2 (en) Self-adaptive prediction method for multi-layer codec
US20200404339A1 (en) Loop filter apparatus and method for video coding
KR20220128468A (ko) 미리 정의된 필터들에 의한 샘플 오프셋
Hanhart et al. Evaluation of JPEG XT for high dynamic range cameras
JP6584538B2 (ja) 高ダイナミックレンジ画像の処理
US11259054B2 (en) In-loop deblocking filter apparatus and method for video coding
WO2013105946A1 (en) Motion compensating transformation for video coding

Legal Events

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