KR102033229B1 - 픽셀 전처리 및 인코딩 - Google Patents

픽셀 전처리 및 인코딩 Download PDF

Info

Publication number
KR102033229B1
KR102033229B1 KR1020177022498A KR20177022498A KR102033229B1 KR 102033229 B1 KR102033229 B1 KR 102033229B1 KR 1020177022498 A KR1020177022498 A KR 1020177022498A KR 20177022498 A KR20177022498 A KR 20177022498A KR 102033229 B1 KR102033229 B1 KR 102033229B1
Authority
KR
South Korea
Prior art keywords
color space
component value
nonlinear
color
linear
Prior art date
Application number
KR1020177022498A
Other languages
English (en)
Other versions
KR20170103937A (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 KR20170103937A publication Critical patent/KR20170103937A/ko
Application granted granted Critical
Publication of KR102033229B1 publication Critical patent/KR102033229B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/67Circuits for processing colour signals for matrixing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/643Hue control means, e.g. flesh tone control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/646Circuits for processing colour signals for image enhancement, e.g. vertical detail restoration, cross-colour elimination, contour correction, chrominance trapping filters

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Processing Of Color Television Signals (AREA)
  • Color Image Communication Systems (AREA)
  • Color Television Systems (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)

Abstract

픽셀 전처리는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 화상에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하는 단계를 포함한다. 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여 픽셀에 대해 제2 색 공간에서의 비선형 루마 성분 값이 도출된다. 전처리는 크로마 서브샘플링이 비선형 전달 함수와 조합하여 이용될 때 발생할 수 있는 휘도 아티팩트를 감소시킨다.

Description

픽셀 전처리 및 인코딩
본 실시예는 대체로 화상 내의 픽셀의 전처리 및 인코딩에 관한 것으로, 특히 픽셀의 휘도 값을 향상시키는 이러한 전처리 및 인코딩에 관한 것이다.
디지털 비디오 신호에서, 각각의 샘플, 즉, 픽셀 성분은 정수 또는 부동 소수점 값으로 표현된다. 비디오를 렌더링하는 스크린, TV 또는 모니터 등의 디스플레이는 비디오 신호의 디지털 값에 기초하여 광학적 빛을 방출한다. 디지털 값 V를 광학적 빛 Y로 변환하는 기능은 EOTF(Electro-Optical-Transfer-Function)이다. 전통적으로 EOTF는 감마 함수라고하는 지수 함수로서 표현되었고, 여기서, 여기서 감마 γ는 지수 값이다. 이것은 전형적으로 2.4이다(다른 값일 수도 있다): Y = Vγ.
감마 함수를 이용하는 것은 저휘도 신호에서 잘 작동하지만 휘도가 100 nit(cd/m2)를 초과하면 감마 함수는 인간의 시각 시스템의 콘트라스트 감도와 잘 맞지 않는다. 따라서 더욱 비선형의 전달 함수가 정의된다. 예를 들어:
Figure 112017077533209-pct00001
이 전달 함수는, 0에서 1까지의 범위에서 1차 미분의 최대 값이 감마 함수의 경우보다 크다는 의미에서 감마 함수보다 더욱 비선형이다.
크로마(chroma) 서브샘플링은 통상적으로, 데이터 양을 감소시키기 위한 초기 단계로서의 압축 전에 수행된다. 4 : 2 : 2에서 크로마 신호는 수직 방향에서 절반 해상도로 감소된다. 4 : 2 : 0에서 크로마 신호는 수직 방향 및 수평 방향 양쪽 모두에서 절반 해상도로 감소된다. 이것은 통상적으로 양호한 품질의 신호를 얻기 위해 소정의 필터링 동작에 의해 수행되지만 가장 가까운 이웃을 이용하여 이루어질 수도 있다.
4 : 2 : 0 또는 4 : 2 : 2 비디오를 디스플레이하기 위하여, 디코더는, 바이리니어 필터(bilinear filter) 또는 더 긴 필터를 이용하여 이루어질 수 있는 크로마 신호의 업샘플링을 수행한다.
그러나, 고도의 비선형 전달 함수, 4 : 2 : 0 또는 4 : 2 : 2 서브샘플링 및 비일정 휘도 순서(luminance ordering)의 조합은, 비디오 데이터에, 특히, 포화된 색상, 즉, 색 범위 가장자리(color gamut edge)에 가까운 색상들에 대해 심각한 아티팩트를 야기한다.
이 문제를 해결하기 위한 몇 가지 방법이 있다. 한 방식은, 4 : 2 : 0 또는 4 : 2 : 2 서브샘플링을 이용하지 않고, 대신에 4 : 4 : 4를 이용하는 것이다. 그러나, 이것은, 4 : 2 : 0은 압축 전에 비트수를 절반으로 줄이는 한편, 4 : 2 : 2는 비트수를 2/3로 줄이기 때문에, 비싸다. 또 다른 방식은 고도의 비선형 전달 함수를 이용하지 않는 것이다. 그러나, 이것은 어두운 영역에서 밴딩(banding)없이 매우 높은 피크 밝기의 콘텐츠를 표현하기는 어렵다는 것을 의미한다. 세 번째 방식은 일정한 휘도를 이용하는 것인데, 즉, CIE1931 XYZ 색 공간으로의 변환 후에 전달 함수를 적용하는 것이다. 그러나, 이러한 해결책은 방송 산업 내에서의 일반적인 관행과 일치하지 않으며 일부 시나리오에서는 실현하기가 어렵고 비용이 많이 들 수 있다.
아티팩트를 방지하기 위해 픽셀의 전처리를 제공하는 것이 전반적인 목표이다.
이들 및 기타의 목적은 여기서 개시된 실시예들에 의해 충족된다.
실시예들의 한 양태는 화상 내의 픽셀을 전처리하는 방법에 관한 것이다. 이 방법은, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하는 단계를 포함한다. 또한, 이 방법은, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값(luma component value)을 도출하는 단계를 포함한다.
실시예들의 또 다른 양태는 화상 내의 픽셀을 전처리하기 위한 디바이스에 관한 것이다. 이 디바이스는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하도록 구성된다. 이 디바이스는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 구성된다.
실시예들의 관련된 양태는 화상 내의 픽셀을 전처리하기 위한 디바이스를 정의한다. 이 디바이스는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하기 위한 결정 유닛을 포함한다. 이 디바이스는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하기 위한 도출기를 포함한다.
실시예들의 추가 양태는 화상 내의 픽셀을 인코딩하기 위한 디바이스에 관한 것이다. 이 디바이스는, 프로세서, 및 프로세서에 의해 실행가능한 명령어들을 포함하는 메모리를 포함한다. 이 프로세서는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하도록 동작한다. 이 프로세서는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 동작한다. 이 프로세서는 또한, 비선형 루마 성분 값, 제1 비선형 크로마 성분 값, 및 제2 비선형 크로마 성분 값을 인코딩하도록 동작한다.
실시예들의 관련된 양태는 화상 내의 픽셀을 인코딩하기 위한 디바이스를 정의한다. 이 디바이스는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하기 위한 결정 유닛을 포함한다. 이 디바이스는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하기 위한 도출기를 포함한다. 이 디바이스는, 비선형 루마 성분 값, 제1 비선형 크로마 성분 값, 및 제2 비선형 크로마 성분 값을 인코딩하기 위한 인코더를 더 포함한다.
실시예들의 역시 또 다른 양태는, 프로세서에 의해 실행될 때 프로세서로 하여금 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 화상 내의 픽셀의 원래의 선형 휘도 성분 값을 획득하게 하는 명령어들을 포함하는 컴퓨터 프로그램에 관한 것이다. 이 프로세서는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 야기된다.
실시예들의 관련된 양태는 상기에 따른 컴퓨터 프로그램을 포함하는 캐리어를 정의한다. 캐리어는, 전자 신호, 광 신호, 전자기 신호, 자기 신호, 전기 신호, 무선 신호, 마이크로파 신호, 또는 컴퓨터-판독가능한 저장 매체 중 하나이다.
실시예들의 추가 양태는 화상 내의 픽셀의 인코딩된 버전을 나타내는 신호에 관한 것이다. 인코딩된 버전은, 제2 색상 포맷의 서브샘플링된 제1 비선형 크로마 성분 값의 인코딩된 버전, 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값의 인코딩된 버전, 및 상기에 따라 도출된 제2 색상 포맷의 비선형 루마 성분 값의 인코딩된 버전을 포함한다.
본 실시예는 크로마 서브샘플링과 조합하여 비선형 전달 함수의 이용으로 인해 발생할 수 있는 아티팩트를 방지하는 픽셀 전처리 및 인코딩을 제공한다. 주관적으로, 휘도의 품질 향상은 압축되지 않은 비디오에서도 명확하게 볼 수 있다.
실시예들은, 그 추가 목적 및 이점들과 함께, 첨부된 도면들과 함께 취해지는 이하의 설명을 참조하여 최상으로 이해될 수 있다.
도 1은 한 실시예에 따른 픽셀을 전처리하는 방법을 나타내는 플로차트이다;
도 2는 한 실시예에 따른 도 1에 도시된 방법의 추가적인 선택사항적인 단계들을 나타내는 플로차트이다;
도 3은 또 다른 실시예에 따른 도 1에 도시된 방법의 추가적인 선택사항적인 단계들을 나타내는 플로차트이다;
도 4는 한 실시예에 따른 도 3에 도시된 방법의 추가적인 선택사항적인 단계들을 나타내는 플로차트이다;
도 5는 도 1의 도출 단계를 구현하는 실시예를 나타내는 플로차트이다;
도 6은 한 실시예에 따른 도 5에 도시된 방법의 추가적인 선택사항적인 단계를 나타내는 플로차트이다;
도 7은 한 실시예에 따른 픽셀을 인코딩하는 방법을 형성하기 위해 도 1에 도시된 방법의 추가 단계를 나타내는 플로차트이다;
도 8은 한 실시예에 따른 보정된 Y'를 도출하는 기술을 나타낸다;
도 9는 상이한 영역들에서 상이한 선형화가 이용될 수 있다는 것을 나타낸다;
도 10은 인코더에서 또는 인코더에 대한 전처리에서 수행될 수 있는 방법을 나타내는 플로차트이다;
도 11은 실시예들에 따른 디바이스의 하드웨어 구현의 개략도이다;
도 12는 프로세서 및 메모리를 갖는 실시예들에 따른 디바이스의 구현의 개략도이다;
도 13은 한 실시예에 따른 사용자 장비의 개략도이다;
도 14는 기능 모듈들을 갖는 실시예들에 따른 디바이스의 구현의 개략도이다;
도 15는 복수의 네트워크 디바이스들 사이에서의 실시예들의 분산 구현을 개략적으로 나타낸다;
도 16은 한 실시예에 따른 하나 이상의 클라우드-기반 네트워크 디바이스들을 갖는 무선 통신 시스템의 한 예의 개략도이다;
도 17a 내지 도 17c는, 원래의 4 : 4 : 4 화상(도 17a), 전통적인 처리 4 : 2 : 0 이후의 화상(도 17b), 및 압축이 없지만 다운샘플링 및 업샘플링을 수반한 경우의 제안된 처리 4 : 2 : 0 이후의 화상(도 17c)을 나타낸다;
도 18a 내지 도 18c는, 원래의 4 : 4 : 4 화상(도 18a), 전통적인 처리 4 : 2 : 0 이후의 화상(도 18b), 및 압축이 없지만 다운샘플링 및 업샘플링을 수반한 경우의 제안된 처리 4 : 2 : 0 이후의 화상(도 18c)을 나타낸다;
도 19는 CIE1931 XYZ 공간에서의 선형 휘도 Y가 원본 화상(하부)과 처리된 화상(상부)에서 상당히 상이하다는 것을 나타낸다;
도 20은 개개의 픽셀에서 Y' 값을 변화시킴으로써, 원하는 선형 휘도 Y와 일치하는 선형 휘도
Figure 112017077533209-pct00002
에 도달할 수 있는 기술을 나타낸다;
도 21은 콘트라스트 감도(contrast sensitivity)에 대한 Barten의 곡선을 나타낸다;
도 22는 Rec709와 BT.2020 색 범위 사이의 비교를 나타낸다.
도면들을 통틀어, 동일한 참조 번호는 유사하거나 대응하는 요소들에 대해 이용된다.
본 실시예는 대체로 화상 내의 픽셀의 전처리 및 인코딩에 관한 것으로, 특히 픽셀의 휘도 값을 향상시키는 이러한 전처리 및 인코딩에 관한 것이다.
전통적인 압축 체인은, 통상적으로 0에서 10,000 cd/m2 범위의 인입 선형 광의 픽셀을 역 전달 함수에 공급하여 0과 1 사이의 새로운 픽셀 값을 생성하는 것을 포함한다. 그 후, 픽셀은 색상 변환을 겪어 루마 성분 및 2개의 크로마 성분을 생성한다. 그 다음, 2 개의 크로마 성분이 4 : 2 : 0 또는 4 : 2 : 2 등으로 서브샘플링된다. 압축해제 후, 4 : 2 : 0 또는 4 : 2 : 2 시퀀스가 4 : 4 : 4로 업샘플링되고, 역 색상 변환되고, 마지막으로 전달 함수가 모니터에 출력할 수 있는 선형 광의 픽셀들을 다시 제공한다.
고도로 비선형의 전달 함수, 크로마 서브샘플링 및 비일정 휘도 순서의 조합은, 비디오 데이터에, 특히 포화된 색상들에 대해 심각한 아티팩트를 야기한다. 문제는, 크로마 성분들은 보간되는 반면, 루마 성분은 보간되지 않는다는 사실로부터 나온다. 따라서, 픽셀의 루마 성분에서 급격한 변화가 있을 수 있지만 크로마 성분들은 보간되기 때문에 따라올 수 없다. 일부 색상들, 특히 포화된 색상들의 경우, 그 결과는 완전히 잘못된 강도의 픽셀이 되어, 아티팩트로서 뚜렷하게 볼 수 있다.
실시예들에 따른 픽셀의 전처리는, 아티팩트의 영향을 방지하거나 적어도 감소시킴으로써 픽셀의 인입하는 "진정한" 색상에 더 가까운 색상을 생성하는데 이용될 수 있다.
색 공간 또는 색상 포맷은 색상 모델의 색상 성분들 조합으로부터 비롯된 색상의 타입 및 개수이다. 색상 모델은, 색상들이, 숫자들의 튜플(tuple), 즉, 색상 성분들로서 표현될 수 있는 방식을 기술하는 추상적 구성이다. 색상 성분들은, 성분 타입, 예를 들어, 색조(hue), 및 그 단위, 예를 들어, 도(degree) 또는 퍼센트, 또는 스케일의 타입, 예를 들어, 선형 또는 비선형, 및 색상 깊이 또는 비트 깊이라고 하는 값들의 의도된 수 등의, 수 개의 구별되는 피쳐들을 갖는다.
화상 및 비디오의 픽셀에 흔히 이용되는 비-제한적이지만 예시적인 색 공간은, 적색, 녹색, 청색(RGB) 색 공간, 루마, 크로마 블루 및 크로마 레드(YCbCr, 때때로 Y'CbCr, Y'Cb'Cr', YCBCR, Y'CBCR 또는 Y'CB'CR'로 표기됨) 색 공간, 및 휘도 및 색차(XYZ) 색 공간을 포함한다.
도 1은 화상 내의 픽셀을 전처리하는 방법을 나타내는 플로차트이다. 이 방법은, 단계 S1에서, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하는 단계를 포함한다. 그 다음, 이 방법은, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하는 단계를 포함하는, 단계 S2로 진행한다.
도 1의 픽셀 전처리는 제2 색 공간에서의 2개의 비선형 크로마 성분을 채용한다. 제2 색 공간에서의 2개의 비선형 크로마 성분은, 제2 색 공간에서 서브샘플링된 제1 비선형 크로마 성분 값, 및 제2 색 공간에서 서브샘플링된 제2 비선형 크로마 성분 값일 수 있다. 특정한 실시예에서, 이들 2개의 비선형 크로마 성분은 Cb' 및 Cr' 성분이다. 더욱 바람직하게는, 비선형 크로마 성분은 4 : 2 : 0 또는 4 : 2 : 2 포맷의 Cb' 및 Cr' 성분이다. 따라서, 제2 색 공간은, 이 실시예에서, YCbCr 색 공간이다. 아포스트로피 " ' "는 2개의 크로마 성분이 비선형 크로마 성분임을 나타내는데 이용된다.
이러한 경우에, 도 1의 단계 S2는 바람직하게는, 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값, 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 제2 색 공간에서의 비선형 루마 성분 값을 도출하는 단계를 포함한다.
대안적 실시예에서, 제2 색 공간에서의 2개의 비선형 크로마 성분 값은 반드시 서브샘플링될 필요는 없지만, 제2 색 공간에서의 비샘플링된 비선형 크로마 성분 값 또는 제2 색 공간에서의 업샘플링된 비선형 크로마 성분 값의 형태일 수 있다. 후자의 경우, 업샘플링된 비선형 크로마 성분 값은 제2 색 공간에서의 서브샘플링된 비선형 크로마 성분 값의 업샘플링 후에 획득된다. 이러한 대안적인 실시예에서, 비선형 크로마 성분들은 4 : 4 : 4 포맷의 Cb' 및 Cr' 성분들이다.
한 실시예에서, 픽셀의 제2 색 공간에서의 제1 및 제2 비선형 크로마 성분 값들은, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 획득된다. 특정한 실시예에서, 이 제1 선형 색 공간은 RGB 색 공간이다. 따라서, 제1 색 공간에서의 픽셀의 선형 색상은, 이 특정한 실시예에서, 픽셀의 RGB 색상이다.
한 실시예에서, 전술된 제3 색 공간은 XYZ 색 공간이다. 따라서, 제3 색 공간에서의 픽셀의 선형 휘도는, 이 실시예에서는, Y 성분이다.
따라서, 도 1의 전처리는 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하거나 제공한다. 이 원래의 선형 휘도 성분 값은 바람직하게는, 픽셀의 진정한 휘도, 즉, 임의의 색상 변환, 전달 함수 및 서브샘플링의 적용 이전의 픽셀의 원래의 휘도를 반영한다. 이 원래의 선형 휘도 성분 값은 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된다. 한 실시예에서, 제1 색 공간에서의 픽셀의 이러한 선형 색상은 픽셀의 원래의 인입 색상이다. 특정한 실시예에서, 이 원래의 인입 색상은 여기서 RoGoBo로 표시되고 원래의 선형 휘도 성분은 Yo로 표기된다.
따라서, 원래의 선형 휘도는 많은 상이한 방식으로 계산할 수 있는 목표 휘도이다. 이 원래의 선형 휘도는, 사진을 찍거나 비디오를 녹화하는 카메라 내의 센서의 또는 디스플레이의 패널의 실제 휘도에 직접적으로 대응할 필요는 없다.
제3 색 공간에서의 원래의 선형 휘도 성분 값은, 미리결정된 또는 미리계산된 형태의 원래의 선형 휘도 성분 값, 바람직하게는 Yo 값으로서 전처리 및 인코딩 기능으로 획득될 수 있다. 이것은, 제1 색 공간에서의 선형 색상에 기초한 원래의 선형 휘도 성분 값의 결정은 이미 이루어졌고, 그 결정의 결과만이 전처리 및 인코딩 기능에 제공된다는 것을 의미한다.
대안적 실시예에서, 실시예의 전처리는 원래의 선형 휘도 성분 값의 결정 또는 계산을 포함한다. 이러한 실시예에서, 도 1의 단계 S1은 바람직하게는, 제1 색 공간에서의 선형 색상에 기초하여 제3 색 공간에서의 원래의 선형 휘도 성분 값을 결정하는 단계를 포함한다.
그 다음, 제2 색 공간에서의 제1 및 제2 비선형 크로마 성분 값들 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 단계 S2에서, 픽셀에 대해 제2 색 공간에서의 비선형 루마 성분 값이 도출된다. 따라서, 한 실시예에서, YCbCr 색 공간에서의 비선형 루마 성분 Y'는, YCbCr 색 공간에서의 Cb' 및 Cr' 성분과 XYZ 색 공간에서의 Yo 성분의 함수이다, 즉, Y' = f(Cb', Cr', Yo). 결국 Yo 성분은 RGB 색 공간에서의 픽셀의 RoGoBo 색상에 기초하여 결정된다, 즉, Yo = g(Ro, Go, Bo). 따라서, Y' = f(Cb', Cr', g(Ro, Go, Bo)).
그 다음, 전처리된 픽셀은, 도출된 비선형 루마 성분(Y') 및 제2 색 공간에서의 2개의 서브샘플링된 비선형 크로마 성분(Cb', Cr'), 즉, Y'Cb'Cr'로 표시된다. 따라서, 튜플 Y'Cb'Cr'는, 바람직하게는 4 : 2 : 0 또는 4 : 2 : 2 포맷의, 즉, 서브샘플링된 크로마 성분을 갖지만 서브샘플링되지 않은 루마 성분을 갖는, 픽셀의 전처리된 색상을 나타낸다.
한 실시예에서, 도 1의 단계 S2는, 제2 색 공간에서의 비선형 루마 성분 값, 제2 색 공간에서의 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 제2 비선형 크로마 성분 값에 기초하여 결정된 제3 색 공간에서 선형 휘도 성분 값과 제3 색 공간에서의 원래의 선형 휘도 성분 값 사이의 차이를 최소화하는 제2 색 공간에서의 비선형 루마 성분 값을 도출하는 단계를 포함한다.
따라서, 이 실시예에서, 단계 S2는, 원래의 선형 휘도 성분(Yo) 값과 제3 색 공간(XYZ)에서의 선형 휘도 성분(Y) 값 사이의 차이를 최소화하는 제2 색 공간(YCbCr)에서의 비선형 루마 성분(Y') 값을 발견하는 단계를 포함한다. 제3 색 공간(XYZ)에서의 이러한 선형 휘도 성분(Y) 값은, 결국, 제2 색 공간(YCbCr)에서의 비선형 루마 성분(Y') 값 및 2개의 비선형 크로마 성분(Cb', Cr') 값들에 기초하여 획득된다.
따라서, 이 실시예는 차이 |Yo-Y| 또는 (Yo-Y)2을 최소화하는 Y' 성분 값을 발견하는 단계를 포함하고, 여기서, Y = h(Y', Cb', Cr' )이고, h(.)는 Y가 Y', Cb' 및 Cr' 에 기초하여 결정된다는 것을 정의한다.
대안이지만 관련된 실시예에서, 단계 S2는, 제3 색 공간에서의 원래의 휘도 성분 값의 함수와 제3 색 공간에서의 선형 휘도 성분 값의 함수 사이의 차이를 최소화하는 제2 색 공간에서의 비선형 루마 성분 값을 도출하는 단계를 포함한다. 제3 색 공간에서의 이러한 선형 휘도 성분 값은, 제2 색 공간에서의 비선형 루마 성분 값, 제2 색 공간에서의 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 제2 비선형 크로마 성분 값에 기초하여 결정된다.
따라서, 이 실시예는 차이 |k(Yo) -k(Y)| 또는 (k(Yo) -k(Y))2을 최소화하는 Y' 성분 값을 발견하는 단계를 포함하고, 여기서, Y = h(Y', Cb', Cr').
함수 (k(.))는 바람직하게는, 전달 함수 [1]의 역 함수 등의, 역 전달 함수이다.
도 1의 방법 단계들 S1 및 S2는, 비디오 시퀀스 등의, 화상 내의 적어도 하나의 픽셀에 대해 수행된다. 한 실시예에서, 단계들 S1 및 S2는 바람직하게는, 라인 L1로 개략적으로 표시된, 복수의, 즉, 적어도 2개의 화상들의 픽셀에 대해 수행된다. 특정한 실시예에서, 단계들 S1 및 S2는 화상의 모든 픽셀에 대해 수행된다.
또 다른 특정한 실시예에서, 단계들 S1 및 S2는 앞서 설명된 바와 같이 시각적 아티팩트를 초래하는 화상 내의 픽셀들에 대해 수행된다. 이들 픽셀들은, 제2 색상 포맷의 비선형 루마 및 크로마 성분(Y', Cb', Cr') 값들에 기초하여 픽셀에 대해 결정된 제3 색 공간에서의 선형 휘도 성분(Y) 값과 픽셀에 대한 제3 색 공간에서의 원래의 선형 휘도 성분(Yo) 값을 비교함으로써 식별될 수 있고, 여기서, 이들 비선형 루마 및 크로마 성분 값들은 본 발명에 따른 임의의 전처리없이 전형적인 압축 체인에 따라 도출된다. 이 후자의 실시예에서, 실시예들의 전처리는 그에 따라, 전형적인 압축 체인이 루마 성분에서 오차를 발생시키는 화상 내의 픽셀들에 대해서만 적용된다.
대안으로서, 시각적 아티팩트를 초래하는 화상 내의 픽셀들은, Cb' 및 Cb 성분 값들 및/또는 Cr' 및 Cr 성분 값들과 비교함으로써, 즉, 업샘플링된 Cb' 및/또는 Cr' 성분 값을 R'G'B' 색상에 제1 색상 변환을 적용하여 획득된 대응하는 Cb 및/또는 Cr' 성분 값과 비교함으로써 식별될 수 있고, 여기서, R', G' 및 B'는, 원래의 RoGoBo 색상의 각각 Ro, Go, 및 Bo에 역 전달 함수를 적용함으로써 획득된다.
또 다른 변형은, 포화된 색상들, 즉, 색 범위의 가장자리의 또는 그에 가까운 색상들을 갖는 픽셀들에 대해 단계들 S1 및 S2를 수행하는 것이다.
도 2는 도 1에 도시된 방법의 추가적인 선택사항적 단계들을 나타내는 플로차트이다. 도 2의 단계들은, 제1 색 공간에서의 선형 색상에 기초하여 제2 색 공간에서 서브샘플링된 비선형 크로마 성분 값들을 도출하는데 이용되는 전형적인 처리 체인을 도시한다. 이 방법은, 제1 전달 함수를 제1 색 공간에서의 선형 색상에 적용하여 제1 색 공간에서의 비선형 색상을 얻는 단계를 포함하는 단계 S10에서 시작한다. 다음 단계 S11은, 제1 색 공간에서의 비선형 색상에 제1 색상 변환을 적용하여 제2 색 공간에서의 비선형 색상을 얻는 단계를 포함한다. 제2 색 공간에서의 비선형 색상은, 초기의 제1 비선형 크로마 성분 값 및 초기의 제2 비선형 크로마 성분 값을 포함한다. 다음 단계 S12는, 제2 색 공간에서의 초기의 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 초기의 제2 비선형 크로마 성분 값을 서브샘플링하여 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값을 얻는 단계를 포함한다. 이 방법은 그 다음 도 1의 단계 S1로 계속된다.
도 2의 전형적인 처리 체인의 실시예에서, 전달 함수 [1]의 역 함수 등의, 제1 전달 함수가, 픽셀의 RoGoBo 색상, 즉, 픽셀의 원래의 색상에 적용되어, RGB 색 공간에서의 비선형 색상 R'G'B'를 얻는다. 이 R'G'B' 색상은 그 다음, 다음과 같은 색상 변환 등의 제1 색상 변환을 이용하여 RGB 색 공간으로부터 YCbCr 색 공간으로 색상 변환된다:
Figure 112017077533209-pct00003
단계 S11에서의 제1 색상 변환의 적용에 후속한 픽셀의 결과적인 Y'Cb'Cr' 색상은, 비 압축 Y'Cb'Cr' 색상, 즉, 4 : 4 : 4 포맷이다. 다음 단계 S12는, 2개의 크로마 성분 Cb' 및 Cr'를 서브샘플링하여 4 : 2 : 0 또는 4 : 2 : 2 포맷의, 즉, 서브샘플링된 비선형 크로마 성분 Cb' 및 Cr'를 갖는 색상을 얻는 것이다.
단계 S12에서의 서브샘플링은 공지된 서브샘플링 기술에 따라 수행될 수 있다. 예를 들어, 필터링 연산 또는 가장 가까운 이웃 연산이 이용될 수 있다. 실시예들에 따라 이용될 수 있는 서브샘플링 기술의 한 예는 문서 [4]의 섹션 B.1.5.5의 4 : 4 : 4로부터 4 : 2 : 0으로의 크로마 다운샘플링에 개시되어 있다.
도 3은 도 1에 도시된 방법의 추가적인 선택사항적 단계들을 나타내는 플로차트이다. 이들 단계들은 화상 내의 픽셀에 대한 최적의 비선형 루마 성분 값을 도출하기 위하여 추가적인 처리를 나타낸다. 이 방법은 도 1의 단계 S1 또는 도 2의 단계 S12로부터 계속된다. 이 방법은, 계속해서, 단계 S20에서, 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값을 업샘플링하여 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값을 얻는다. 다음 단계 S21은, 제2 색 공간에서의 후보 비선형 루마 성분 값, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값에 제2 색상 변환을 적용하여 제1 색 공간에서의 비선형 색상을 얻는 단계를 포함한다. 다음 단계 S22는 제2 색 공간에서의 비선형 색상에 제2 전달 함수를 적용하여 제1 색 공간에서의 선형 색상을 얻는 단계를 포함한다. 마지막으로, 단계 S23에서 제1 색 공간에서의 선형 색상에 제3 색상 변환이 적용되어 제3 색 공간에서의 선형 휘도 성분 값을 얻는다. 그 다음, 이 방법은, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값의 비교에 기초하여 비선형 루마 성분 값을 도출하는 단계를 포함하는 도 1의 단계 S2로 진행한다.
따라서, 한 실시예에서, 4 : 2 : 0 또는 4 : 2 : 2 포맷의 서브샘플링된 Cb' 및 Cr' 성분 값들은 먼저 4 : 4 : 4 포맷으로 업샘플링된다. 단계 S20의 업샘플링은 공지된 업샘플링 기술에 따라 수행될 수 있다. 예를 들어, 바이리니어 또는 더 긴 필터를 이용하여 업샘플링이 수행될 수 있다. 실시예들에 따라 이용될 수 있는 업샘플링 기술의 한 예는, 문헌 [4]의 섹션 B.1.5.6의 4 : 2 : 0으로부터 4 : 4 : 4(Y'CbCr 영역)으로의 크로마 업샘플링에서 개시되어 있다.
이들 2개의 업샘플링된 Cb' 및 Cr' 성분 값들은 후보 Y' 성분 값과 함께 제2 색상 변환 내에 입력되어 다음과 같은 색상 변환 등의 비선형 R'G'B' 색상을 얻는다 :
Figure 112017077533209-pct00004
Rec.709 색 공간의 경우 a13 = 1.57480, a22 = 0.18732, a23 = 0.46812, a32 = 1.85560이고, BT.2020 색 공간의 경우 a13 = 1.47460, a22 = 0.16455, a23 = 0.57135, a32 = 1.88140이다.
일반적으로, R', G', B'는 구간 [0, 1] 내의 값을 취할 수 있다. 따라서, 제2 색상 변환은 또한, R' 성분에 대한 R' = clip(Y' + a13Cr', 0, 1) 등의, 클램핑 또는 클립핑 동작을 포함할 수 있고, 여기서 clip(x, a, b)는 x < a이면 a와 같고 x > b이면 b와 같고, 그렇지 않으면 x와 같다.
이 R'G'B' 색상은 전달 함수 [1] 등의 제2 전달 함수에 입력되어 선형 RGB 색상을 얻는다. 이 RGB 색상은 그 다음, 다음과 같은 색상 변환 등의 제3 색상 변환을 이용하여 RGB 색 공간으로부터 XYZ 색 공간으로 변환된다:
Figure 112017077533209-pct00005
제3 색상 변환으로부터 출력된 선형 휘도 성분 Y 값은 단계 S2에서 픽셀의 원래의 선형 휘도 성분 Yo 값과 비교된다.
한 실시예에서, 도 1의 단계 S2는, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차이를 감소시키는 제2 색 공간에서의 후보 비선형 루마 성분 값을 선택하는 단계를 포함한다.
따라서, 단계 S2는 바람직하게는, 원래의 선형 휘도 성분 값과 단계 S23에서 획득된 선형 휘도 성분 값 사이의 차이에서의 적어도 감소로 이어지는 제2 색 공간에서의 후보 비선형 루마 성분 값을 선택하는 단계를 포함한다. 특정한 실시예에서, 단계 S2는, 원래의 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차이를 최소화하는 제2 색 공간에서의 후보 비선형 루마 성분 값을 선택하는 단계를 포함한다.
이 차이는, 상기에서 언급한 바와 같이, |Yo-Y| 또는 (Yo-Y)2으로 나타낼 수 있고, 여기서, Y는 도 3의 단계 S23에서 획득된다.
대안이지만 관련된 실시예에서, 단계 S2는, 제3 색 공간에서의 원래의 휘도 성분 값의 함수와 제3 색 공간에서의 선형 휘도 성분 값의 함수 사이의 차이를 감소시키거나 바람직하게는 최소화하는 제2 색 공간에서의 후보 비선형 루마 성분 값을 선택하는 단계, 즉, 차이 |k(Yo)-k(Y)| 또는 (k(Yo) -k(Y))2을 최소화하는 후보 Y' 성분 값을 선택하는 단계를 포함한다.
한 실시예에서, 도 3의 단계들 S21 내지 S23은, 라인 L2로 개략적으로 나타낸, 제2 색 공간에서의 상이한 후보 비선형 루마 성분 값들에 대해 수행된다. 이러한 경우에, 단계 S2는 바람직하게는, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 최소 차이 또는 제3 색 공간에서의 원래의 선형 휘도 성분 값의 함수와 제3 색 공간에서의 선형 휘도 성분 값의 함수 사이의 최소 차이를 야기하는 후보 비선형 루마 성분 값을 제2 색 공간에서의 상이한 후보 비선형 루마 성분 값들 중에서 선택하는 단계를 포함한다.
이것은, 단계들 S21 내지 S23의 루프가 단계 S21에서 상이한 후보 Y' 성분 값들을 이용하여 복수회 수행된다는 것을 의미한다. Yo와 Y 사이 또는 k(Yo)와 k(Y) 사이의 최소 차이로 이어지는 후보 Y' 성분 값이 선택되어, 서브샘플링된 Cb' 및 Cr' 성분 값과 함께 픽셀에 대한 색상 표현으로서 이용된다.
이하의 실시예들은, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차이에 대해 더 상세하게 설명된다. 이들 실시예들은 또한, 제3 색 공간에서의 원래의 선형 휘도 성분 값의 함수와 제3 색 공간에서의 선형 휘도 성분 값의 함수 사이의 차이를 포함한다. 이 함수는 바람직하게는, 여기서 전술된 바와 같이, 전달 함수 [1]의 역 함수 등의, 전달 함수의 역 함수이다.
복수의 후보 Y' 성분 값들 중에서 최적의 후보 Y' 성분 값의 선택은 여기서 더 설명되는 다양한 실시예들에 따라 수행될 수 있다.
제1 실시예는 2진 검색을 수행하는 것을 포함한다. 따라서, 이 실시예에서, 이 방법은, 2진 검색을 수행하여, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차이를 최소화하는 제2 색 공간에서의 후보 비선형 루마 성분 값을 선택하는 단계를 포함한다.
2진 검색은 최적의 후보 비선형 루마 성분 값을 발견하는데 이용될 수 있는 효율적인 기술이다. 일반적으로, 2진 검색 알고리즘은, 제3 색 공간에서의 원래의 휘도 성분 값을, 제2 색 공간에서의 가능한 후보 비선형 루마 성분 값들의 분류된 어레이의 중간 요소를 이용하여 획득된 제3 색 공간에서의 선형 휘도 성분 값과 비교하는 것으로 시작한다. 제3 색 공간에서의 선형 휘도 성분 값이 제3 색 공간에서의 원래의 선형 휘도 성분과 같거나 제3 색 공간에서의 원래의 휘도 성분 값과 정의된 양 이하만큼 상이하다면, 중간 요소의 위치가 반환되고 검색은 종료된다. 선형 휘도 성분 값이 원래의 선형 휘도 성분 값보다 크다면, 검색은 어레이의 하부 절반에서 계속된다; 또는 선형 휘도 성분 값이 원래의 선형 휘도 성분 값보다 작다면, 검색은 어레이의 상부 절반에서 계속된다. 이 프로세스는 계속해서, 요소들의 절반을 제거하고, 결과적인 선형 휘도 성분 값을 원래의 선형 휘도 성분 값과 비교하되, 이들 사이의 차이가 0이 되거나 전체 어레이가 검색 완료될 때까지, 즉, 하나를 제외한 모든 요소가 제거될 때까지 계속한다. 이것은 log2(N) 단계들만 취하도록 보장되고, 여기서 N은 어레이 내의 가능한 후보 비선형 루마 성분 값들의 개수이다. 예를 들어, 후보 비선형 루마 성분 값들은 어레이 [0, 1023]로부터 선택될 수 있다고 가정된다. 그러면, N = 1024 및 log2(1024) = 10이다.
한 실시예에서, 2진 검색은, 검색 구간의 중간에서 제2 색 공간에서의 후보 비선형 루마 성분 값에 대해 도 3의 단계들 S21 내지 S23을 수행함으로써 수행된다. 그 다음, 이 방법은 도 4에 나타낸 단계들을 계속한다. 다음 단계 S25는, 바람직하게는 단계 S24에서 계산되는 바와 같이, 제3 색 공간에서의 원래의 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차이가 0과 같다면, 검색 구간의 중간에서 후보 비선형 루마 성분 값을 선택하는 단계를 포함한다. 그렇지 않으면, 즉, 단계 S24에서 계산된 차이가 0과 같지 않다면, 이 방법은 단계 S26으로 진행한다. 이 단계 S26은, 상기에서 이용된 검색 구간에 비해 절반의 크기를 갖는 검색 구간을 선택하고 제3 색 공간에서의 선형 휘도 성분 값이 제3 색 공간에서의 원래의 선형 휘도 성분 값보다 크다면 상기에서 이용된 후보 비선형 루마 성분 값에서 종료하거나, 상기에서 이용된 검색 구간에 비해 절반의 크기를 갖는 검색 구간을 선택하고 제3 색 공간에서의 선형 휘도 성분 값이 제3 색 공간에서의 원래의 선형 휘도 성분 값보다 작다면 상기에서 이용된 후보 비선형 루마 성분 값에서 시작하는 단계를 포함한다.
제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차가 0과 같거나, 검색 구간이 더 이상 반감될 수 없거나, 루프가 정의된 횟수만큼 반복되었거나 검색 구간이 미리 정의된 구간 크기에 도달, 즉, 검색 구간이 미리 정의된 구간 크기보다 작거나 같을 때까지, 루프 L2를 포함하는 단계들, 즉, 단계들 S21 내지 S23 및 S24 내지 S26이 반복된다.
단계 S26에서의 검색 구간의 선택은 일반적으로 상기에서 이용된 검색 구간에 비해 대략 절반의 크기를 갖는 검색 구간을 선택하는 것을 포함한다. 예를 들어, 검색 구간이 값들 100, 101, 102, 103을 포함한다면, "중간 값"으로서 101 또는 102를 선택하여, "반감된" 검색 구간 [100, 101](검색 구간의 진정한 반감) 또는 [101, 103](검색 구간의 대략 반감) 또는 "반감된" 검색 구간 [100, 102](검색 구간의 대략 반감) 또는 [102, 103](검색 구간의 진정한 반감)으로 이어질 수 있다.
또 다른 실시예는 최적화 문제로서 비선형 루마 성분 값의 선택을 고려하고 오차 E = (Yo-Y)2 또는 E = |Yo-Y|를 Y'에 관하여 최소화하는 것이다. 이것은, 예를 들어, 기울기 하강(gradient descent)에 의해, Y'에 관한 E의 기울기, 즉, dE/dY'를 계산하고, 기울기의 반대 방향으로 Y'를 소량 업데이트함으로써, 즉, Y'n+1 = Y'n - α(dE/dY') 함으로써 이루어질 수 있고, 여기서 α는 작은 상수이다.
기울기 하강은 느릴 수 있어서, 더 빠른 방법은, 2차 미분 d2E/dY'2을 계산하거나 근사화하는 2차 최적화 알고리즘을 이용하는 것일 수 있다. Gauss-Newton은 이러한 알고리즘의 한 예이다.
또 다른 실시예는, 비선형 루마 성분 값을 선택할 때 룩업 테이블(LUT)을 이용하는 것을 포함한다. 이러한 LUT는, 예를 들어, Cb', Cr' 및 Yo 성분 값들의 모든 가능한 조합에 대해 최상의 Y' 성분 값을 포함할 수 있다. 예를 들어, Cb' 및 Cr' 성분이 10 비트로 양자화되고 Yo 성분도 역시 10 비트로 양자화된다고 가정하자. 그러면, LUT는 210×210×210개의 상이한 Y' 성분 값들을 포함해야 한다. 이것은 230개의 Y' 성분 값들과 동일하다. 각각의 이러한 Y' 성분 값이 2 바이트이면, LUT는 231 바이트 또는 2GB의 크기를 가질 것이다.
더 작은 LUT를 이용하는 것도 가능할 수 있다. 예를 들어, Yo, Cb' 및 Cr' 성분을 더 작은 크기, 예를 들어 6 비트로 양자화하는 것이 가능할 수 있다. 그러면, LUT는 218개 Y' 성분 값들 또는 512kb와 동등한 219 바이트가 될 것이다.
Yo 성분은 선형이다. 따라서, 이것을 양자화하는 것은 비효율적일 수 있다. 대신에 최적의 Y' 성분을 얻기 위해 LUT에 대한 입력으로 Cb' 및 Cr'와 함께 Yo의 함수를 이용하는 것이 더 나을 수도 있다. 이 함수는 바람직하게는 Yo 성분의 비선형 표현을 출력하며, 예를 들어, 전달 함수 [1]의 역 함수 등의, 역 전달 함수(TF-1(.))일 수 있다. 그러면, 최적 Y' 성분 값은 LUT로부터 Y' = LUT(Cb', Cr', TF-1(Yo))로서 도출된다.
도 5는 LUT를 이용할 때의 도 1의 단계 S2의 실시예를 나타내는 플로차트이다. 이 방법은 도 1의 단계 S1로부터 계속된다. 다음 단계 S30은, 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값을 업샘플링하여 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값을 얻는 단계를 포함한다.
다음 단계 S32는, 제3 색 공간에서의 원래의 선형 휘도 성분 값 또는 그 비선형 버전, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 또는 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값, 또는 그 양자화된 버전들을 룩업 테이블에 대한 입력으로서 이용하여 룩업 테이블로부터 제2 색 공간에서의 비선형 루마 성분 값을 회수하는 단계를 포함한다.
도 6은 도 5에 도시된 방법의 추가적인 선택사항적 단계를 나타내는 플로차트이다. 이 방법은 도 5의 단계 S30으로부터 계속된다. 다음 단계 S31은, 제3 색 공간에서의 원래의 선형 휘도 성분 값에 제1 역 전달 함수를 적용하여 제3 색 공간에서의 원래의 비선형 휘도 성분 값을 얻는 단계를 포함한다. 이 방법은 그 다음 도 5의 단계 S32로 계속된다. 이 실시예에서, S32는, 제3 색 공간에서의 원래의 비선형 휘도 성분 값, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 또는 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값, 또는 그 양자화된 버전들을 룩업 테이블에 대한 입력으로서 이용하여 룩업 테이블로부터 제2 색 공간에서의 비선형 성분 값을 회수하는 단계를 포함한다.
한 실시예에서, 룩업 테이블은, 제3 색 공간에서의 원래의 선형 휘도 성분 값, 또는 그 비선형 버전, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값 또는 그 양자화된 버전들의 각각의 조합에 대해, 제2 색 공간에서의 최적의 비선형 루마 성분 값, 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값, 및 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값에 기초하여 결정된 제3 색 공간에서의 선형 휘도 성분 값과 제3 색 공간에서의 원래의 선형 휘도 성분 값 사이의 차이를 최소화하는 제2 색 공간에서의 최적의 비선형 루마 성분 값을 포함한다.
도 3의 단계 S20 및 도 5의 단계 S5에서 수행된 제2 색 공간에서의 비선형 크로마 성분 값들의 업샘플링은 바람직하게는 제2 공간에서의 비선형 루마 성분 값과 동일한 개수의 샘플로 비선형 크로마 성분 값들을 업샘플링한다. 따라서, 이들 단계들에서 수행되는 업샘플링은 바람직하게는, 도 2의 단계 S12에서와 같은 임의의 서브샘플링의 적용 이전과 동일한 개수의 샘플을 갖는 비선형 크로마 성분 값들을 야기한다. 이것은, 서브샘플링 이전으로서 업샘플링에 이어, Y', Cb' 및 Cr' 성분들 모두는 4 : 4 : 4 형식에서와 같이 동일한 개수의 샘플을 포함한다는 것을 의미한다. 서브샘플링 후에, Y' 성분은, 바람직하게는 4 : 2 : 0 또는 4 : 2 : 2 포맷에서와 같이 동일한 개수의 샘플을 포함하는, Cb' 및 Cr' 성분에 비해 더 많은 샘플을 포함한다.
화상 내의 픽셀은, 바람직하게는 여기서 설명된 바와 같이 도출된 제2 색 공간에서의 비선형 루마 성분 값을 갖는다. 픽셀과 연관되고 업샘플링에 이어 획득된 제2 색 공간에서의 비선형 크로마 성분 값들은, 업샘플링 기술에 따라, 제2 색 공간에서의 각각의 서브샘플링된 제1 및 제2 비선형 크로마 성분 값에 기초하여 또는 제2 색 공간에서의 복수의 서브샘플링된 제1 및 제2 크로마 성분 값들에 기초하여 생성될 수 있다. 예를 들어, 바이리니어 업샘플링이 이용된다면, 4개의 서브샘플링된 Cb' 성분 값들 및 4개의 서브샘플링된 Cr' 성분 값들은 픽셀 및 업샘플링된 Cb' 및 Cr' 성분의 값에 영향을 미칠 것이다. 대응적으로, 가장 가까운 이웃하는 업샘플링이 이용된다면, 통상적으로 단일의 서브샘플링된 Cb' 성분 값 및 단일의 서브샘플링된 Cr' 성분 값이 픽셀에 대한 업샘플링된 Cb' 및 Cr' 성분 값을 도출하는데 이용된다.
실시예들에 따른 픽셀의 전처리는, 상이한 응용들에서, 특히 비디오 인코딩을 포함하는 상이한 비디오 응용들에서 이용될 수 있다.
따라서, 실시예는 화상 내의 픽셀을 인코딩하는 방법에 관한 것이다. 이 방법은, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하기 위해 여기서 개시된 실시예들 중 임의의 실시예에 따라 픽셀을 전처리하는 단계를 포함한다. 이 방법은 또한, 도 7에 도시된 바와 같이 단계 S3에서, 비선형 루마 성분 값, 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값을 인코딩하는 단계를 포함한다.
따라서, 픽셀들의 전처리는, 비디오 시퀀스의 화상 인코딩과 관련한 등에서, 화상의 픽셀을 인코딩하는 동안 추가적인 처리로 이용될 수 있다.
4 : 2 : 0 또는 4 : 2 : 2 포맷에서와 같은, 전처리의 출력, 즉, Y'Cb'Cr'는, H.264 비디오 인코더, 고효율 비디오 인코더(HEVC) 또는 H.265 비디오 인코더, 또는 다른 비디오 인코더 등의 비디오 인코더에 입력된다. 비디오 인코더에 의해 수행되는 인코딩은, 엔트로피 인코더, 예를 들어, 정황-적응형 2진 산술 코딩(CABAC) 인코더 등에서와 같이, 인터 예측, 인트라 예측, 모드 결정, 잔류물의 변환, 변환되고 양자화된 잔류물의 양자화 및 인코딩 등의 전통적인 비디오 인코딩 단계들을 포함할 수 있다.
실시예들의 전처리의 이점은, 비디오 또는 화상 인코더에서 임의의 조정을 수행하거나 대응하는 비디오 또는 화상 디코더에서 임의의 조정을 수행할 필요없이 임의의 비디오 또는 화상 인코딩 프로세스에 적용될 수 있다는 것이다. 뚜렷한 대조로서, 전처리는, 인코딩될 화상 내의 픽셀의 RoGoBo 색상 등의 원래의 색상의, 전달 함수의 적용, 색상 변환 및 크로마 서브샘플링의 적용을 포함하는 Y'Cb'Cr' 색상으로의 전통적인 변환 대신, 입력 화상에 적용되는 추가 처리, 즉, 전처리로 볼 수 있다.
비디오 시퀀스 등의 화상 내의 픽셀의 전처리는 또한, 비디오 인코딩 이외의 다른 응용에서도 이용될 수 있다. 예를 들어, 실시예들은, 고선명 멀티미디어 인터페이스(HDMI), DisplayPort 또는 Thunderbolt 등의 인터페이스를 통해 비디오를 전송하기 전에 적용되는 전처리로서 이용될 수 있다. 예를 들어, HDMI 2.0a에서, 50 또는 60 fps(frames per second)로 4K 해상도를 전달하는 유일한 방법은, 4 : 2 : 0 또는 4 : 2 : 2 YCbCr 서브샘플링을 이용하는 것이다. 비디오 데이터가 풀 크로마 샘플링 포맷(4 : 4 : 4)이면, 서브샘플링 전처리 단계는 HDMI 케이블을 통해 비디오 데이터를 전송하기 전에 적용되어야 한다. 그 다음, 4 : 2 : 0 또는 4 : 2 : 2 비디오 데이터는 추가 압축없이 인터페이스를 통해 전송된다. 실시예들의 전처리를 적용함으로써, Y' 성분의 보정이나 최적 Y' 성분의 발견없이 종래의 4 : 2 : 0 또는 4 : 2 : 2 서브샘플링에 비해 비디오 품질이 향상된다.
전형적인 압축 체인은 이하에서 설명된다. 예를 들어, 0 내지 10,000 범위의 인입 선형 광 픽셀(R, G, B)은 먼저 전달 함수에 공급되어, 0과 1 사이의 새로운 픽셀(R', G', B')를 야기한다. 그 후, 픽셀은 (Y', Cb', Cr')을 야기하는 색상 변환을 겪는다. 그 다음 Cb' 및 Cr' 성분은 4 : 2 : 0으로 서브샘플링된다.
압축해제 후에, 4 : 2 : 0 시퀀스는 다시 4 : 4 : 4로 업샘플링되고, 역 색 공간 변환은 (R', G', B')를 제공하고 마지막으로 역 전달 함수는 모니터 상에 출력될 수 있는 선형 광 픽셀(R, G , B)을 되돌려 준다.
문제는, Cb' 및 Cr' 성분들은 보간되는 반면, Y' 성분은 보간되지 않는다는 사실로부터 나온다. 따라서, 픽셀의 Y' 성분에서 급격한 변화가 있을 수 있지만, Cb' 및 Cr' 성분은 보간되기 때문에 따라올 수 없다. 일부 색상들, 특히 포화된 색상들의 경우, 그 결과는 완전히 잘못된 강도의 픽셀이 되어, 뚜렷하게 볼 수 있다.
이들 경우에 Y' 성분을 변경하여 보간된 색상들로부터 생성된 튜플(Y', Cb', Cr')이 원본과 크게 다르지 않도록 하는 것이 제안된다. 이상적으로 이 차이는 눈에 띄지 않도록 매우 작을 것이다.
기본적으로 이로 인해 Cb' 및 Cr' 성분이 거짓임을 깨닫게 되고, Y' 성분을 거짓으로 만들어 (Y', Cb', Cr')가 진정한 색상에 더 가깝게 한다. 즉, Y' 성분에 오차를 도입함으로써, Cb' 및 Cr' 성분에 이미 존재하는 오차를 보상하여 실제 픽셀에 더 가까와질 수 있다. 예를 들어, 먼저 서브샘플링 크로마(4 : 2 : 0), 그 다음 (4 : 4: 4로의) 업샘플링으로부터 얻은 Cb'를 서브샘플링 이전의 원래의 Cb'444 및 Cr'444 값들과 비교함으로써, (Cb' -Cb'444) 및 (Cr' -Cr'444)를 문턱 값과 비교함으로써 Cb' 및 Cr' 성분이 거짓임을 결정할 수 있다.
보정된 Y' 성분은 이하에서 설명되는 상이한 실시예에 따라 도출될 수 있다. 따라서, 보정된 Y' 성분 및 Cb' 및 Cr' 성분은 압축되어, 이미지 또는 비디오가 더 높은 품질로 인지된다.
Y' 성분을 변경함으로써, 즉, 보정된 Y' 성분을 도출함으로써, 결과적인 휘도 값을 보상할 수 있다. 눈은 색차 변화보다 휘도 변화에 훨씬 더 민감하므로, 제1 규칙은 휘도가 원래의 값으로부터 너무 많이 벗어나지 않도록 하는 것이다.
전술된 바와 같이, 비선형 휘도 Y'는, 픽셀의 선형 휘도 Y가 그 정확한 값에 더 가깝도록 압축 전에 조정된다. 이것이 이하에서 더 설명된다.
스크린의 좌측 부분, 예를 들어, 픽셀들 0 내지 96은 값 (2142, 0, 138)을 가지며, 우측 부분, 즉, 픽셀들 97 내지 1920은 값 (2142, 4, 138)을 갖는 화상을 가정한다. 종래의 처리 체인을 이용하면, 표 1의 결과를 얻을 것이다.
[표 1] ― 4 : 2 : 0 서브샘플링의 "최악의" 색상에 대한 데이터
Figure 112017077533209-pct00006
* 이것은 4 : 2 : 0 포맷으로 서브샘플링된 색상을 업샘플링하여 얻은 값을 나타낸다.
여기서, Y 값은 선형 휘도이다. 즉, 원본의 Y 값은 원래의 선형 광 RGB(2142, 4,138)를 가져 와서 XYZ로 변환할 때 얻는 값이다. 예를 들어, RGB가 BT.2020 색 공간에 있다면, 다음을 이용하여 XYZ로 변환할 수 있다
Figure 112017077533209-pct00007
이 Y 성분은 눈이 민감한 휘도이다. RGB에 비선형적으로 의존하는, 위에서 언급된 Y' 성분과 혼동해서는 안 된다.
표 1에서 알 수 있는 바와 같이, RGB 4 : 2 : 0 서브샘플링 및 업샘플링을 이용할 때 픽셀 97에 대해 Y 값이 크게 잘못되었다. 이 예에서는 압축이 수행되지 않았고, 10 비트로의 양자화만 이루어졌지만, Y 값은 85%의 상대 오차를 갖는다는 점에 유의한다. 눈이 얼마나 큰 차이를 볼 수 있는지를 예측하는 Barten의 모델을 이용하여, 이 오차는 195개 Barten 단계임을, 즉, 겨우 눈에 띄는 것보다 195배 더 크다는 것을 알 수 있다.
표 2를 보면, 무엇이 발생하는지를 알 수 있다.
[표 2] ― 픽셀 97은 색상 서브샘플링 전과 후에 매우 상이하다
Figure 112017077533209-pct00008
Cb' 성분을 보면, 이 성분은, 불연속, 즉, 픽셀 94 이전의 650과 불연속 이후의 575의 대략 중간인 값 607을 갖지만, 보정 값은 575이다. 문제는, 그 오차가 색차에 영향을 미칠뿐만 아니라 픽셀의 휘도에도 영향을 미쳐, 너무 커지게 된다는 것이다. 우리의 생각은 픽셀의 Y' 성분을 변경함으로써 이것을 보상하는 것이다. 실시예들에 따르면, 픽셀에 대해 Y' 성분을 422로 하지 않고, 대신에 값 363을 선택한다. 표 3에서, 그 결과를 볼 수 있다.
[표 3] ― 픽셀 97은 색상 서브샘플링 전과 후에 훨씬 더 유사하다
Figure 112017077533209-pct00009
이제 새로운 색상이 그 올바른 값과 훨씬 더 유사하다는 것을 알 수 있다. 녹색 성분은 잘못된 방향으로 1.72 cd/m2만큼만 진행되었지만, 동시에 적색 성분은 그 올바른 값으로 거의 반감, 1849 cd/m2의 움직임을 보였고, 청색 성분은 유사한 방식으로 변경되었다. 표 4에서, 휘도가 어떻게 되었는지를 볼 수 있다.
[표 4] ― 보정 후의 4 : 2 : 0 서브샘플링의 "최악의" 색상에 대한 데이터
Figure 112017077533209-pct00010
* 이것은 4 : 2 : 0 포맷으로 서브샘플링된 색상을 업샘플링하여 얻은 값을 나타낸다.
표 4에서 알 수 있는 바와 같이, 휘도 Y의 오차는 훨씬 작다. 상대 오차는 0.2465%로서, 0.5602 Barten 단계와 동등한데, 즉 볼 수 없다.
대신에 이제는 색차에서 오차가 발생하지만, 인간 시각 시스템이 휘도보다는 색차에서의 오차에 덜 민감하다는 사실을 감안하면, 이것은 그리 큰 문제는 아니다. 또한, 서브샘플링되었기 때문에 어떤 식으로든 색차에서 오차가 있을 것이다. 또한, 휘도에서의 오차와 색차에서의 오차 사이에 양호한 절충을 얻기 위해 Y' 성분을 변경할 수 있다.
또한, 색차에서의 변화는 심지어 눈에 띄지 않을 수도 있다 ― 유일한 차이점은 녹색 성분은 3.9750 cd/m2 대신 0.7008 cd/m2이지만, 어쨌든, 2145로서 거의 천배 더 큰, 적색 성분에 비하면 정말 작을 것이다. 이것을 알 수 있는 또 다른 방식은, 녹색과 적색 성분 사이의 비율이 올바른 3.9750/2142.6617 = 0.001855 대신에 0.7008/2145.11 = 0.000327이 된다는 것이다. 색조에서의 이 약간의 변화가 사람의 눈으로 볼 수 있다는 것은 명확하지 않다. 따라서, 너무 작아서 볼 수 없을 수도 있는 색차에서의 오차와, 겨우 눈에 띄는 것보다 200배 더 큰 휘도에서의 오차를 맞바꿀 수 있었다.
좋은 점은 변경된 Y' 값은 개개의 픽셀에만 영향을 미친다는 것이다. 따라서 Y' 성분을 변경함으로써 다른 어떠한 픽셀도 희생되지 않는다.
한 실시예에서, Y' 값은 Cb' 및 Cr'의 특정한 값에 대해 최적화되지 않는다. 대신에 Y' 값은, Cb' 및 Cr'의 어떤 상이한 값, 또는 Cb' 및 Cr' 값의 범위에 대해, 휘도 오차를 최소화하도록 선택된다. 이것은, 크로마 업샘플링 방법이 알려지지 않은 시나리오에서 이루어질 수 있다.
한 변형은, 특정한 수의 크로마 업샘플링 방법들을 수행한 다음, 상이한 업샘플링 방법들에 대한 평균 제곱 오차를 최소화하는 Y' 값을 선택하는 것이다. 또 다른 버전에서, 최악의 경우, 즉, 가장 큰 오차가 최소화되도록 Y' 값이 선택된다.
또 다른 변형은, Cb' 와 Cr'의 2개 이상의 이웃하는 값을 이용하여 가능한 Cb'와 Cr' 값들의 범위를 직접 계산하는 것이다.
Y'에 대한 최상의 값을 발견하는 여러 가지 방법이 있고, 이들 중 몇 가지 방법을 살펴 볼 것이다. 한 예가 도 8에 도시되어 있다.
먼저, 최적화할 Yo 값을 발견할 필요가 있다. 위에서 언급된 바와 같이, 원본 픽셀 Ro, Go, Bo는 RGB로부터 XYZ로 변환된다. 이것은 결과적으로 Xo, Yo, Zo가 되고, 우리는 Yo에만 관심이 있다. 사실상, Xo와 Zo를 계산할 필요는 없다. 이 Yo는 선형 조명에서의 원래의 휘도이며, 눈이 민감한 것이 바로 이것이다. 우리의 테스트 케이스에서 Yo는 573.5991과 같고, 표 1을 참조한다.
둘째로, Cb', 및 Cr' 값과 함께, 기존의 Y' 값을 취한다. 상기의 경우, (422, 607, 812)에서 피딩할 것이고, 표 2를 참조한다. 이제 Y'Cb'Cr'로부터 R'G'B'로 색상 변환을 할 것이다. 이것은 다음을 이용하여 이루어진다
Figure 112017077533209-pct00011
그 다음 전달 함수를 기동한다. 이 경우, PQ-EOTF를 이용하며, 이것은, 다음과 같은 Matlab 코드를 이용하여 구현될 수 있다:
Figure 112017077533209-pct00012
그 결과는, 선형 광의 색상 (R, G, B)이다. 이제 이것을 위에서 언급된 바와 같이 XYZ로 변환하거나, 그렇지 않으면 실제로 Y만 계산할 필요가 있다. 이 Y는 픽셀의 선형 휘도이며, 이 휘도를 우리는 가능한 한 Yo에 근접시키기를 원한다. 우리의 테스트 케이스에서, Y는 1066.4311로 시작하며, 표 1을 참조한다
이제 Y와 Yo를 비교한다. Y가 Yo보다 크다면, Y' 값을 422에서 어떤 더 작은 값으로 줄인다. 예를 들어, 한 단계를 취하고 421을 시도할 수 있다. 그 다음 전체 계산이 다시 실행되어, 새로운 Y 값을 생성한다. 이것은 다시 Yo와 비교되어, 여전히 너무 크다면, Y'를 더 줄인다. 마지막으로, 363에 도달하고, 결과 Y 값, 즉, 572.1852는 이제 Yo, 즉, 573.5991보다 작다. 이제 프로세스가 중단된다.
상기 실시예에서, 최상의 값에 도달하기 위해서는 422-363 = 59회의 반복이 필요하다. 이것은 비용이 높을 수 있다.
따라서, 실시예는 최상의 Y' 값을 발견하기 위해 2진 검색을 수행하는 것이다. 선택사항으로서, 먼저, 최대의 Y' 값, 예를 들어, 1023이 시도된다. 선택사항으로서, 그 다음, 최소의 Y' 값, 예를 들어, 0이 시도된다. 그 다음, 중간 값, 예를 들어, 512가 시도된다. Y'=512로부터 발생한 Y 값이 Yo보다 크다면, 구간 [0, 512]에서 검색해야 한다. Y 값이 Yo보다 작다면, 대신에 구간 [512, 1023]을 검색해야 한다. 그 다음, 선택된 구간의 중간의 새 값을 계산하여, 그 구간이 [363, 363] 또는 [363, 364] 등의 단일 숫자만을 포함할 때까지 진행한다. 이것은 log2(N) 단계들만 취하도록 보장되며, 여기서, N은 가능한 값들의 수, 이 경우 1024이다. 따라서 log2(1024) = 10개 단계만으로 충분한다.
최상의 값을 계산하는 역시 또 다른 방식은 도 8을 최적화 문제로 보고 Y'에 관해 오차 E =(Y-Yo)2을 최소화하는 것이다. 이것은, Y'에 관한 E의 기울기, 즉, dE/dY'를 계산하고, 기울기의 반대 방향으로 Y'를 소량 업데이트함으로써, 즉, Y'n+1 = Y'n - α × dE/dY' 함으로써, 기울기 하강에 의해 이루어질 수 있고, 여기서 α는 작은 상수이다.
기울기 하강은 느릴 수 있어서, 더 빠른 방법은, 2차 미분 d2E/dY'2을 계산하거나 근사화하는 2차 최적화 알고리즘을 이용하는 것일 수 있다. Gauss-Newton은 이러한 알고리즘의 한 예이다.
또 다른 실시예에서, Y'를 계산하기 위해 다음과 같은 프로세스가 적용된다:
- X, Yo 및 Z는 XYZ로부터 RGB로의 변환에 의해 변환되어 새로운 값 R1, G1 및 B1을 생성한다.
- R1, G1 및 B1은 역 전달 함수에 의해 변환되어 R1', G1' 및 B1'를 생성한다.
- R1', G1', B1'는 역 색상 변환으로 변환되어 Y'를 생성한다.
한 실시예에서, 이미지 또는 화상 내의 모든 픽셀의 Y' 값들이 보정된다. 대안적 실시예에서, 가시적인 휘도 오차를 가질 위험이 있는 픽셀들만이 보정된다. 이것은, 색 범위 가장자리에 가까운 픽셀들을 포함할 수 있지만, 색 범위 삼각형의 중간에 더 가까운 픽셀들은 배제한다.
도 9의 하부 행을 보면, 처리의 제1 단계는 다음과 같다
Figure 112017077533209-pct00013
그러나 Cr'와 Cb'는 고정되어 있기 때문에, 이들은 보간되며, 전송되지 않고, Y'의 우측의 모든 것을 상수로 대체할 수 있다
Figure 112017077533209-pct00014
다음 단계는 색상 요소들의 전달 함수를 취하는 것이다:
Figure 112017077533209-pct00015
그러면, 이것은 다음과 같이 된다
Figure 112017077533209-pct00016
처리의 마지막 단계는 RGB로부터 XYZ로 가는 것이다. 이것은 다음을 이용하여 이루어진다
Figure 112017077533209-pct00017
이 중에서, 우리는 Y 성분에만 관심이 있으므로, 다음을 이용한다
Figure 112017077533209-pct00018
이전의 방정식들을 여기에 대입하면 아래와 같이 된다
Figure 112017077533209-pct00019
또는 다음과 같이 축약된다
Figure 112017077533209-pct00020
우리는 이 방정식의 출력값 Y가 원본 Yo와 일치하기를 원한다. Y는 비선형 방식으로 3개의 상이한 장소에서 Y'에 의존하기 때문에, Y' = f-1(Y)를 얻을 수 있도록 함수를 반전하는 용이한 방법이 없는 것처럼 보인다.
그러나, 비선형 TF(x) ~ kx + m을 선형화하는 것이 가능하다. 3개의 상이한 장소에서 이렇게 하면, 다음과 같이 된다
Figure 112017077533209-pct00021
이것은 아래와 등가이다
Figure 112017077533209-pct00022
이것은 반전되어 다음과 같이 된다
Figure 112017077533209-pct00023
따라서 Y'k는 이전보다 Yo에 더 가까운 값 Yk를 생성할 것이다. 이 새로운 점 Y'k에서 함수가 다시 선형화되어, 새로운 값 Y'k + 1을 얻을 수 있는 등이다.
이들 모든 반복 기법에 대해 Yo 값에 가장 가까운 Y 값을 생성하는 절대적 최상의 10 비트 값을 발견할 필요는 없다는 점에 유의해야 한다. 수 회의 반복 또는 심지어 한 번의 반복을 이용하는 것으로 충분할 수 있다. 단일 반복으로부터 발생하는 보정된 Y 값은 전혀 보정하지 않는 것보다 훨씬 양호할 것이다.
일부 선형화는 미리 수행될 수도 있다. 위에서 주목한 바와 같이, 최악의 문제는 범위 가장자리에서 발생한다. 따라서 적색 원색을 녹색 원색에 연결하는 라인에 대해 하나의 선형화, 적색 원색을 청색 원색에 연결하는 라인에 대해 하나의 선형화 및 녹색 원색을 청색 원색에 연결하는 라인에 대해 하나의 선형화를 가질 수 있다. 또 다른 방식은 적색 원색에 가까운 선형화를 이용하는 것, 또 다른 방식은 녹색 원색에 가까운 선형화를 이용하는 것, 제3의 방식은 청색 원색에 가까운 선형화를 이용하는 것일 수 있다. 또한, 도 9에 도시된 바와 같이, 범위의 라인을 따라 수 개의 선형화를 갖는 것이 가능하다.
따라서, 상이한 영역들에서 상이한 선형화들이 있을 수 있다. 색상이 실선의 원 안에 있다면, 녹색 원색에 가깝고 하나의 선형화를 이용할 수 있다. 적색 원색을 향하여 더 따라가면, 즉, 점선 박스 내부에서, 제2 선형화를 이용할 수 있다. 범위의 가장자리에 가깝고 적색과 녹색 원색의 대략 중간에서, 즉, 점선 박스 내부에서, 제3 선형화를 이용할 수 있다. 적색 원색에 훨씬 더 가깝다면, 즉, 실선의 박스 내부에서, 제4 선형화를 이용할 수 있다. 점선 원 내부에 있다면, 즉, 적색 원색에 가깝다면, 제5 선형화를 이용할 수 있다. 삼각형 내의 다른 2개의 라인의 동일한 분할도 역시 이용될 수 있다. 마지막으로, 삼각형 내부이지만 박스나 원 내부가 아닌 영역은 하나 이상의 영역으로 분할될 수 있고, 각 영역은 상이한 선형화를 갖는다.
또 다른 방식은 룩업 테이블(LUT)을 생성하는 것이다. 상기 공식에서 알 수 있는 바와 같이, Cb', Cr' 및 원하는 Y 값을 갖는다면, 위에서 언급된 반복 기법들 중 임의의 하나를 이용하여 최상의 Y'를 발견할 수 있다. 따라서, Cb', Cr', Y의 모든 가능한 조합에 대한 룩업 테이블을 생성할 수 있다. 예를 들어 Cb' 및 Cr'가 10 비트로 양자화된다고 가정하자. 또한 Y를 10 비트로 양자화한다고 가정하자. 그러면, 룩업 테이블에서 210 × 210 × 210개의 상이한 값들이 필요하다. 이것은 230개의 값들과 같다. 각각의 값이 2 바이트이면, 이것은 231 바이트 또는 2GB를 의미한다. 이것은 크지만, 특히 미래에는, 불가능하지 않을 수도 있다.
Y를 양자화할 때 주의할 필요가 있을 수 있다. Y는 완전 선형이기 때문에, 양자화하는 것만으로는 비효율적일 수 있다. 대신에 Ynonlinear = TF(Y)를 생성하고 대신에 Cb', Cr' 및 Ynonlinear를 입력 변수로서 이용하여 Y에 대한 LUT를 생성하는 것이 더 양호할 수 있다. Cb', Cr', Y가 주어지면, 먼저 Ynonlinear = TF(Y)를 계산한 다음, Y' = LUT(Cb', Cr', Ynonlinear)를 발견할 것이다.
더 작은 LUT를 이용하는 것도 가능할 수 있다. 예를 들어, Y(또는 Ynonlinear), Cb' 및 Cr'를 예를 들어 6 비트로 양자화하는 것이 가능할 수 있다. 그러면, 테이블 크기는 2(6 + 6 + 6) = 218 값들 또는 219 바이트로서, 512k 바이트와 같다. 이것은 오늘날의 하드웨어에서도 합리적인 크기이다.
진정한 값에 가장 가까운 양자화된 값들 Cb', Cr' 및 Y를 취하여 이들을 보간하는 것이 가능할 수 있다. 한 예로서, Cb'의 실제 값이 6 비트로 양자화된 Cb'보다 크지만 6 비트로 양자화된 Cb' + 1 보다 작다면, 다음은 양호한 근사일 수 있다 :
Figure 112017077533209-pct00024
2개보다 많은 값들간의 보간도 역시 가능하다.
한 실시예에서, 룩업 테이블은 Y'의 값을 도출하기 위해 이용된다. 한 버전에서 룩업 테이블은 Yo, Cb' 및 Cr'의 가능한 모든 값을 포함한다. 1024x1024x1024 엔트리를 야기할 10 비트 비디오의 경우 및 일부 응용에서 이 크기는 허용가능하다. 또 다른 버전에서, 룩업 테이블(LUT)은, 예를 들어, Yo, Cb' 및 Cr' 중 하나 이상을 8 비트로 반올림(rounding)함으로써 절삭된다. 절삭된 룩업 테이블이 이용된다면, 알고리즘은 LUT으로부터 회수된 Y'로부터 시작하여 최상의 Y'를 발견하는 정교화 단계로 확장될 수 있다. 한 버전에서 LUT는 Cb' 값 및/또는 Cr' 값이 Y'가 Yo와 너무 상이하게 될 수 있도록 하는 값일 때에만, 즉, 처음에 계산된 Y'가 Y와는 너무 상이한 선형 Y 값을 제공하는 경우에만 이용됨으로써, Cb' 및 Cr'의 많은 값들이 문제를 일으키지 않으므로 LUT의 크기가 상당히 감소될 수 있다.
한 실시예에서, Yo, Cb' 및 Cr'의 함수, 예를 들어, 선형 조합, 다항식 함수, 지수 함수, 로그 함수, 삼각 함수 등이 Y'를 도출하는데 이용된다. 이 함수는, Yo, Cb' 및 Cr'의 임의의 값에 대해, Y와 Yo 사이의 차이가 소정의 임계값 미만이거나 또는 도출된 Y'와 최적의 Y' 사이의 차이가 소정의 임계값 미만이 되도록 정의될 수 있다.
한 실시예에서 Y'를 도출하기 위해 Yo, Cb' 및 Cr'의 수 개의 상이한 함수가 정의된다. 이용할 함수의 선택은 Yo, Cb' 및 Cr'의 값에 기초한다.
여기서 설명된 각각의 실시예의 경우, Y'를 도출하기 위한 방법은 Y'와 TF(Yo) 사이의 차이가 시작하기 위한 소정한 임계값 위인 경우에만 기동될 수 있다.
한 양태에 따르면, 한 방법이 도 10에 예시된 바와 같이 제공된다. 이 방법은 인코더에서 또는 인코더에 대한 전처리에서 수행될 수 있다. 이 방법에서, Cb' 및/또는 Cr' 성분이 오차를 포함한다고 결정되면, 보정된 Y' 성분이 도출되어 Cb' 및/또는 Cr' 성분에서의 오차를 보상한다. 이 방법은 선택사항으로서 또한, 보정된 Y' 성분으로 비디오를 인코딩하는 단계를 포함한다.
실시예들의 또 다른 양태는 화상 내의 픽셀을 전처리하기 위한 디바이스에 관한 것이다. 이 디바이스는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하도록 구성된다. 이 디바이스는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 구성된다.
한 실시예에서, 이 디바이스는, 제1 색 공간에서의 선형 색상에 기초하여 제3 색 공간에서의 원래의 선형 휘도 성분 값을 결정하도록 구성된다.
한 실시예에서, 이 디바이스는, 제2 색 공간에서의 비선형 루마 성분 값, 제2 색 공간에서의 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 제2 비선형 크로마 성분 값에 기초하여 결정된 제3 색 공간에서 선형 휘도 성분 값과 제3 색 공간에서의 원래의 선형 휘도 성분 값 사이의 차이를 최소화하는 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 구성된다.
한 실시예에서, 이 디바이스는, 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값, 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 구성된다.
한 실시예에서, 이 디바이스는, 제1 전달 함수를 제1 색 공간에서의 원래의 선형 색상에 적용하여 제1 색 공간에서의 비선형 색상을 얻도록 구성된다. 이 디바이스는 또한, 제1 색 공간에서의 비선형 색상에 제1 색상 변환을 적용하여 제2 색 공간에서의 비선형 색상을 얻도록 구성된다. 제2 색 공간에서의 비선형 색상은, 초기의 제1 비선형 크로마 성분 값 및 초기의 제2 비선형 크로마 성분 값을 포함한다. 이 디바이스는 또한, 제2 색 공간에서의 초기의 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 초기의 제2 비선형 크로마 성분 값을 서브샘플링하여 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값을 얻도록 구성된다.
한 실시예에서, 이 디바이스는, 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값을 업샘플링하여 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값을 얻도록 구성된다. 이 디바이스는 또한, 제2 색 공간에서의 후보 비선형 루마 성분 값, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값에 제2 색상 변환을 적용하여 제1 색 공간에서의 비선형 색상을 얻도록 구성된다. 이 디바이스는 또한, 제1 색 공간에서의 비선형 색상에 제2 전달 함수를 적용하여 제1 색 공간에서의 선형 색상을 얻도록 구성된다. 이 디바이스는 추가적으로, 제1 색 공간에서의 선형 색상에 제3 색상 변환을 적용하여 제3 색 공간에서의 선형 휘도 성분 값을 얻도록 구성된다. 이 디바이스는 또한, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값의 비교에 기초하여 비선형 루마 성분 값을 도출하도록 구성된다.
한 실시예에서, 이 디바이스는, 제3 색 공간에서의 원래의 선형 휘도 성분과 제3 색 공간에서의 선형 휘도 성분 사이의 차이를, 최소화하는 등의, 감소시키는 제2 색 공간에서의 후보 비선형 루마 성분 값을 선택하도록 구성된다.
한 실시예에서, 이 디바이스는, 제2 색 공간에서의 후보 비선형 루마 성분 값, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값에 제2 색상 변환의 적용을, 제1 색 공간에서의 비선형 색상에 제2 전달 함수의 적용을, 및 제2 색 공간에서의 상이한 후보 비선형 루마 성분 값들에 대해 제1 색 공간에서의 선형 색상에 제3 색상 변환의 적용을 수행하도록 구성된다. 또한, 이 디바이스는, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 최소 차이를 야기하는 후보 비선형 루마 성분 값을 제2 색 공간에서의 상이한 후보 비선형 루마 성분 값들 중에서 선택하도록 구성된다.
한 실시예에서, 이 디바이스는, 2진 검색을 수행하여, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차이를 최소화하는 제2 색 공간에서의 후보 비선형 루마 성분 값을 선택하도록 구성된다.
한 실시예에서, 이 디바이스는, 제2 색 공간에서의 후보 비선형 루마 성분 값, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값에 제2 색상 변환의 적용을, 제1 색 공간에서의 비선형 색상에 제2 전달 함수의 적용을, 및 검색 구간의 중간의 제2 색 공간에서의 후보 비선형 루마 성분 값에 대해 제1 색 공간에서의 선형 색상에 제3 색상 변환의 적용을 수행하도록 구성된다. 이 디바이스는 또한, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차이가 0과 같다면, 검색 구간의 중간에서 후보 비선형 루마 성분 값을 선택하도록 구성된다. 이 디바이스는 또한, 제3 색 공간에서의 선형 휘도 성분 값이 제3 색 공간에서의 원래의 선형 휘도 성분 값보다 크다면 애플리케이션을 수행할 때 디바이스에 의해 이용되는 검색 구간에 비해 절반의 크기를 갖고 애플리케이션을 수행할 때 디바이스에 의해 이용되는 후보 비선형 루마 성분 값에서 끝나서 검색 구간을 선택하거나, 제3 색 공간에서의 선형 휘도 성분 값이 제3 색 공간에서의 원래의 선형 휘도 성분 값보다 작다면 애플리케이션을 수행할 때 디바이스에 의해 이용되는 검색 구간에 비해 절반의 크기를 갖고 애플리케이션을 수행할 때 디바이스에 의해 이용되는 후보 비선형 루마 성분 값에서 시작하는 검색 구간을 선택하도록 구성된다. 이 디바이스는 또한, 제3 색 공간에서의 원래의 선형 휘도 성분 값과 제3 색 공간에서의 선형 휘도 성분 값 사이의 차이가 0과 같거나 검색 구간이 제2 색 공간에서의 단일의 후보 비선형 루마 성분 값을 포함할 때까지 애플리케이션의 수행 및 검색 구간의 선택을 반복하도록 구성된다.
한 실시예에서, 이 디바이스는, 제2 색 공간에서의 서브샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 서브샘플링된 제2 비선형 크로마 성분 값을 업샘플링하여 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 및 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값을 얻도록 구성된다. 이 디바이스는 또한, 제3 색 공간에서의 원래의 선형 휘도 성분 값 또는 그 비선형 버전, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 또는 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값, 또는 그 양자화된 버전들을 룩업 테이블에 대한 입력으로서 이용하여 룩업 테이블로부터 제2 색 공간에서의 비선형 루마 성분 값을 회수하도록 구성된다.
한 실시예에서, 이 디바이스는, 제3 색 공간에서의 원래의 선형 휘도 성분 값에 제1 전달 함수를 적용하여 제3 색 공간에서의 원래의 비선형 휘도 성분 값을 얻도록 구성된다. 이 디바이스는, 제3 색 공간에서의 원래의 비선형 휘도 성분 값, 제2 색 공간에서의 업샘플링된 제1 비선형 크로마 성분 값 또는 제2 색 공간에서의 업샘플링된 제2 비선형 크로마 성분 값, 또는 그 양자화된 버전들을 룩업 테이블에 대한 입력으로서 이용하여 룩업 테이블로부터 제2 색 공간에서의 비선형 루마 성분 값을 회수하도록 구성된다.
도 11은 한 실시예에 따른 화상을 전처리하기 위한 디바이스(100)의 특정한 하드웨어 구현을 나타낸다. 한 실시예에서, 디바이스(100)는 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하도록 구성된 결정 유닛(101)을 포함한다. 이 디바이스(100)는 또한, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 구성된 도출기(102)를 포함한다.
또 다른 실시예에서, 디바이스(100)는 Cb' 및/또는 Cr'가 오차를 포함한다고 결정하도록 구성된 결정 유닛(101)을 포함한다. 이 디바이스(100)는 또한, 보정된 Y'를 도출하도록 구성된 도출기(102)를 포함한다. 이 디바이스(100)는 보정된 Y'로 화상을 인코딩하도록 구성된 비디오 인코더(103)를 더 포함한다.
한 실시예에서, 이 디바이스(100)는 또한, 인코딩될 비디오를 수신하도록 구성된 입력 유닛(104) 및 인코딩된 비트스트림을 출력하도록 구성된 출력 유닛(105)을 포함한다.
입력 유닛(104)은, 특히 외부 디바이스에 대한 유선 접속의 경우, 일반적인 입력 유닛의 형태일 수 있다. 대안으로서, 입력 유닛(104)은, 특히 외부 디바이스에 대한 무선 접속의 경우, 수신기 또는 트랜시버의 형태일 수 있다. 대응적으로, 출력 유닛(105)은, 특히 외부 디바이스에 대한 유선 접속의 경우, 일반적인 출력 유닛의 형태일 수 있다. 대안으로서, 출력 유닛(105)은, 특히 외부 디바이스에 대한 무선 접속의 경우, 전송기 또는 트랜시버의 형태일 수 있다.
입력 유닛(104)은, 바람직하게는, 결정 유닛(101), 도출기(102) 및 비디오 인코더(103)에 접속되어 인코딩될 비디오를 이들에 포워딩한다. 결정 유닛(101)은 바람직하게는 도출기(102) 및 비디오 인코더(103)에 접속된다. 비디오 인코더(103)는 바람직하게는 출력 유닛(105)에 접속되어 인코딩된 비트 스트림을 예를 들어 디코더에 포워딩한다.
적절한 하드웨어 회로의 특정한 예는, 하나 이상의 적절하게 구성된 또는 아마도 재구성가능한 전자 회로, 예를 들어, 주문형 집적 회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA), 또는 적절한 레지스터(REG) 및/또는 메모리 유닛(MEM)과 연계하여 특별한 기능을 수행하도록 상호접속된 이산 논리 게이트들 및/또는 플립-플롭들에 기초한 회로 등의 기타 임의의 하드웨어 로직을 포함한다.
대안으로서, 여기서 설명된 단계들, 기능들, 절차들, 모듈들 및/또는 블록들 중 적어도 일부는, 하나 이상의 프로세서 또는 처리 유닛 등의 적절한 처리 회로에 의한 실행을 위한 컴퓨터 프로그램 등의 소프트웨어로 구현될 수 있다.
처리 회로의 예는, 하나 이상의 마이크로프로세서, 하나 이상의 디지털 신호 프로세서(DSP), 하나 이상의 중앙 처리 유닛(CPU), 비디오 가속 하드웨어, 및/또는 하나 이상의 FPGA, 또는 하나 이상의 PLC(Programmable Logic Controller) 등의 임의의 적절한 프로그램가능한 로직 회로를 포함하지만, 이것으로 제한되지 않는다.
또한, 제안된 기술이 구현되는 임의의 종래의 디바이스 또는 유닛의 일반적인 처리 능력을 재사용하는 것이 가능할 수도 있다는 것을 역시 이해해야 한다. 예를 들어, 기존 소프트웨어를 재프로그래밍하거나 새로운 소프트웨어 컴포넌트를 추가함으로써 기존 소프트웨어를 재사용하는 것도 역시 가능할 수 있다.
특정한 예에서, 도 12를 참조하면, 디바이스(110)는, 프로세서(111) 및 프로세서(111)에 의해 실행가능한 명령어들을 포함하는 메모리(112)를 포함한다. 한 실시예에서, 프로세서(111)는 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하도록 동작한다. 프로세서(111)는 또한, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 동작한다.
또 다른 실시예에서, 프로세서(111)는, Cb' 및/또는 Cr' 성분이 오차를 포함한다고 결정하도록 동작하거나 및 Cb' 및/또는 Cr' 성분이 오차를 포함하다고 결정될 때 동작한다. 프로세서(111)는 또한, Cb' 및/또는 Cr' 성분의 오차를 보상하기 위해 보정된 Y' 성분을 도출하도록 동작한다.
한 실시예에서, 디바이스(110)는 또한 인코딩될 비디오를 수신하도록 구성된 입력 유닛(113)을 포함한다. 이러한 경우, 프로세서(111)는 입력 유닛(113)으로부터 인코딩될 비디오를 수신하도록 동작한다.
한 실시예에서, 디바이스(110)는 또한, 프로세서(111)로부터 수신되는 인코딩된 비트스트림을 출력하도록 구성된 출력 유닛(114)을 포함한다.
특정한 실시예에서, 프로세서(111)는, 메모리(112)에 저장된 명령어를 실행할 때, 전술된 동작들을 수행하도록 동작한다. 프로세서(111)는 이와 같이 메모리(112)에 상호접속되어 정상적인 소프트웨어 실행을 가능하게 한다.
도 13은, 프로세서(210), 연관된 메모리(220) 및 통신 회로(230)를 포함하는 사용자 장비(UE)(200)의 한 예를 나타내는 개략적인 블록도이다.
이 특정한 예에서, 여기서 설명된 단계들, 기능들, 절차들, 모듈들 및/또는 블록들의 적어도 일부는, 하나 이상의 프로세서(210)를 포함하는 처리 회로에 의한 실행을 위해 메모리(220)에 로딩되는 컴퓨터 프로그램(240)으로 구현된다. 프로세서(210) 및 메모리(220)는 상호접속되어 정상적인 소프트웨어 실행을 가능하게 한다. 통신 회로(230)도 역시 프로세서(210) 및/또는 메모리(220)에 상호접속되어 비디오 데이터의 입력 및/또는 출력을 가능하게 한다.
사용자 장비(200)는 비디오 데이터를 수신하고 처리할 수 있는 임의의 디바이스 또는 장치일 수 있다. 예를 들어, 사용자 장비(200)는, 랩탑, 스마트 폰, 태블릿, 셋탑 박스, 비디오 카메라 등의 고정 또는 휴대형 컴퓨터일 수 있다.
용어 '프로세서'는, 프로그램 코드 또는 컴퓨터 프로그램 명령어를 실행하여 특정한 처리, 결정 또는 컴퓨팅 작업을 수행할 수 있는 시스템 또는 디바이스로서 일반적인 의미로 해석되어야 한다.
따라서, 하나 이상의 프로세서를 포함하는 처리 회로는, 컴퓨터 프로그램을 실행할 때 여기서 설명된 것들 등의 명료한 처리 태스크를 수행하도록 구성된다.
처리 회로는, 전술된 단계들, 기능들, 절차 및/또는 블록들을 실행하기 위해 전용되어야만 할 필요는 없고, 다른 태스크들도 실행할 수 있다.
한 실시예에서, 컴퓨터 프로그램(240)은, 프로세서(210)에 의해 실행될 때, 프로세서(210)로 하여금 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 화상 내의 픽셀의 원래의 선형 휘도 성분 값을 획득하게 하는 명령어들을 포함한다. 이 프로세서(210)는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 야기된다.
한 실시예에서, 컴퓨터 프로그램(240)은, 프로세서(210)에 의해 실행될 때, 프로세서(210)로 하여금, 비선형 루마 성분 값, 제1 비선형 크로마 성분 값 및 제2 비선형 크로마 성분 값을 인코딩하게 하는 명령어들을 더 포함한다.
또 다른 실시예에서, 컴퓨터 프로그램(240)은, 프로세서(210)에 의해 실행될 때, 프로세서(210)로 하여금, Cb' 및/또는 Cr' 성분이 오차를 포함한다고 결정하게 하는 명령어들을 포함하고, Cb' 및/또는 Cr' 성분이 오차를 포함한다고 결정될 때, 이들 명령어들은 프로세서(210)로 하여금 Cb' 및 Cr' 성분에서의 오차를 보상하기 위해 보정된 Y' 성분을 도출하게 한다.
제안된 기술은 또한, 컴퓨터 프로그램(240)을 포함하는 캐리어(250)를 제공한다. 캐리어(250)는, 전자 신호, 광 신호, 전자기 신호, 자기 신호, 전기 신호, 무선 신호, 마이크로파 신호, 또는 컴퓨터-판독가능한 저장 매체(250) 중 하나이다.
예로서, 소프트웨어 또는 컴퓨터 프로그램(240)은, 통상적으로 컴퓨터 판독가능한 매체(240) 상에, 바람직하게는 비휘발성 컴퓨터 판독가능한 저장 매체(250) 상에 운반되거나 저장되는 컴퓨터 프로그램 제품으로서 실현될 수 있다. 컴퓨터 판독가능한 매체(250)는, 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 콤팩트 디스크(CD), 디지털 버서타일 디스크(DVD), Blue-Ray 디스크, USB(universal serial bus) 메모리, 하드 디스크 드라이브(HDD) 저장 디바이스, 플래시 메모리, 자기 테이프 또는 기타 임의의 종래의 메모리 디바이스를 포함한 그러나 이것으로 제한되지 않는 하나 이상의 착탈식 또는 비착탈식 메모리 디바이스를 포함할 수 있다. 따라서, 컴퓨터 프로그램(240)은, 그 프로세서(210)에 의한 실행을 위해 도 19의 사용자 장비(200)로 대표되는 컴퓨터 또는 동등한 처리 디바이스의 동작 메모리 내에 로딩될 수 있다.
실시예들의 추가 양태는 또한, 화상 내의 픽셀의 인코딩된 버전을 나타내는 신호에 관한 것이다. 인코딩된 버전은, 제2 색상 포맷의 서브샘플링된 제1 비선형 크로마 성분 값의 인코딩된 버전, 제2 색상 포맷의 서브샘플링된 제2 비선형 크로마 성분 값의 인코딩된 버전, 및 임의의 실시예에 따라 도출된 제2 색상 포맷의 비선형 루마 성분 값의 인코딩된 버전을 포함한다.
한 실시예에서, 신호는, 전자 신호, 광 신호, 전자기 신호, 자기 신호, 전기 신호, 무선 신호 및 마이크로파 신호 중 하나이다.
따라서 여기서 제시된 플로차트 또는 도면은, 하나 이상의 프로세서에 의해 수행될 때, 컴퓨터 흐름도 또는 도면으로서 간주될 수 있다. 대응하는 디바이스는 기능 모듈들의 그룹으로서 정의될 수 있고, 여기서, 프로세서에 의해 수행되는 각각의 단계는 기능 모듈에 대응한다. 이 경우에, 기능 모듈들은 프로세서에서 실행되는 컴퓨터 프로그램으로 구현된다. 따라서, 디바이스는 대안으로서 기능 모듈들의 그룹으로서 정의될 수 있고, 여기서, 기능 모듈들은 적어도 하나의 프로세서에서 실행되는 컴퓨터 프로그램으로서 구현된다.
따라서, 메모리에 상주하는 컴퓨터 프로그램은, 프로세서에 의해 실행될 때, 여기서 설명된 단계들 및/또는 태스크들의 적어도 일부를 수행하도록 구성된 적절한 기능 모듈들로서 조직화될 수 있다. 이러한 기능 모듈들의 한 예가 도 14에 예시되어 있다.
도 14는 기능 모듈들로 화상 내의 픽셀을 전처리하기 위한 디바이스(120)의 개략적인 블록도이다. 한 실시예에서, 이 디바이스(120)는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하기 위한 결정 유닛(121)을 포함한다. 이 디바이스(120)는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하기 위한 도출기(122)를 포함한다.
또 다른 실시예에서, 이 디바이스(120)는 Cb' 및/또는 Cr'가 오차를 포함한다고 결정하기 위한 결정 유닛(121)을 포함한다. 이 디바이스(120)는 또한, 보정된 Y'를 도출하기 위한 도출기(102)를 포함한다. 이 디바이스(120)는, 선택사항으로서, 보정된 Y'를 이용하여 비트스트림을 인코딩하기 위한 비디오 인코더(123)를 더 포함한다.
도 12를 참조한 실시예들의 추가 양태는 화상 내의 픽셀을 인코딩하기 위한 디바이스(110)에 관한 것이다. 이 디바이스(110)는, 프로세서(111), 및 프로세서(111)에 의해 실행가능한 명령어들을 포함하는 메모리(112)를 포함한다. 이 프로세서(111)는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하도록 동작한다. 이 프로세서(111)는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하도록 동작한다. 이 프로세서(111)는 또한, 비선형 루마 성분 값, 제1 비선형 크로마 성분 값, 및 제2 비선형 크로마 성분 값을 인코딩하도록 동작한다.
도 14를 참조한 실시예들의 또 다른 양태는 화상 내의 픽셀을 인코딩하기 위한 디바이스(120)에 관한 것이다. 이 디바이스(120)는, 제1 색 공간에서의 픽셀의 선형 색상에 기초하여 결정된 제3 색 공간에서의 픽셀의 원래의 선형 휘도 성분 값을 획득하기 위한 결정 유닛(121)을 포함한다. 이 디바이스(120)는 또한, 제2 색 공간에서의 제1 비선형 크로마 성분 값, 제2 색 공간에서의 제2 비선형 크로마 성분 값, 및 제3 색 공간에서의 원래의 선형 휘도 성분 값에 기초하여, 픽셀에 대한 제2 색 공간에서의 비선형 루마 성분 값을 도출하기 위한 도출기(122)를 포함한다. 이 디바이스(120)는, 비선형 루마 성분 값, 제1 비선형 크로마 성분 값 및 제2 비선형 크로마 성분 값을 인코딩하기 위한 인코더(123)를 더 포함한다.
한 양태에 따르면, 전처리기 또는 인코더 등의 유닛이 제공된다. 이 유닛은, Cb' 및/또는 Cr' 성분이 오차를 포함한다고 결정하도록 구성되고, Cb' 및/또는 Cr' 성분이 오차를 포함한다고 결정될 때, Cb' 및 Cr' 성분에서의 오차를 보상하기 위해 보정된 Y' 성분을 도출하도록 구성된다.
본 실시예들은 또한, 실시예들에 따라 픽셀을 전처리하기 위한 디바이스 또는 픽셀을 인코딩하기 위한 디바이스를 포함하는 사용자 장비에 관한 것이다. 사용자 장비는 바람직하게는, 비디오 데이터를 수신하고 처리하도록 구성된 디바이스 또는 장치이다. 사용자 장비는, 예를 들어, HDMI 등의 인터페이스를 통해 비디오 데이터를 포워딩하도록 구성된 디바이스 또는 장치일 수 있다.
또 다른 실시예는, 실시예들에 따라 픽셀을 전처리하기 위한 디바이스 또는 픽셀을 인코딩하기 위한 디바이스를 포함하는 사용자 장비에 관한 것이다. 이 실시예에서, 사용자 장비는 바람직하게는, 컴퓨터, 랩탑, 스마트 폰, 태블릿 및 셋탑 박스로 구성된 그룹으로부터 선택된다.
네트워크 노드 및/또는 서버 등의 네트워크 디바이스에서 하드웨어 및/또는 소프트웨어 등의 컴퓨팅 서비스를 제공하는 것이 점점 더 보편화되고 있고, 여기서, 자원들이 네트워크를 통해 원격 위치에 서비스로서 전달된다. 예로서, 이것은, 여기서 설명된 기능이 하나 이상의 별개의 물리적 노드 또는 서버에 배포되거나 재배치될 수 있다는 것을 의미한다. 이 기능은, 별개의 물리적 노드(들), 즉, 소위 클라우드에 위치할 수 있는 하나 이상의 공동으로 동작하는 물리적 및/또는 가상적 머신에 재배치되거나 분산될 수 있다. 이것은 때때로 클라우드 컴퓨팅이라고도 하며, 네트워크, 서버, 스토리지, 애플리케이션 및 일반적인 또는 맞춤화된 서비스 등의 구성가능한 컴퓨팅 자원 푸울에 대한 유비쿼터스 온-디맨드 네트워크 액세스를 가능하게 하는 모델이다.
도 15는, 일반적인 경우에 상이한 네트워크 디바이스들(300, 301, 302) 사이에서 기능들이 어떻게 분산되거나 분할될 수 있는지의 한 예를 나타내는 개략도이다. 이 예에서, 네트워크 디바이스들(300, 301) 사이에 분할된 상이한 기능들 또는 동일한 기능의 부분들을 가질 수 있는 적어도 2개의 개개의 그러나 상호접속된 네트워크 디바이스들(300, 301)이 있다. 이러한 분산된 구현의 일부인 추가적인 네트워크 디바이스(302)가 있을 수 있다. 네트워크 디바이스들(300, 301, 302)은 동일한 무선 통신 시스템의 일부이거나, 하나 이상의 네트워크 디바이스는 무선 통신 시스템 외부에 위치한 소위 클라우드-기반 네트워크 디바이스일 수 있다.
도 16은, 하나 이상의 클라우드-기반 네트워크 디바이스(300)와 협력하는 액세스 네트워크(1) 및/또는 코어 네트워크(2) 및/또는 운영 및 지원 시스템(OSS)(3)을 포함하는 무선 통신 시스템의 예를 도시하는 개략도이다. 이 도면은 또한, 실시예들에 따른 액세스 네트워크(1)의 네트워크 노드(4) 및 사용자 장비(5)를 나타낸다.
최근, 표준 해상도로부터 고화질을 거쳐 4k까지 해상도를 증가시킴으로써 디지털 비디오에서 엄청난 품질 향상이 달성되었다. HDR(High Dynamic Range) 비디오는 인지되는 이미지 품질을 높이는 또 다른 방법, 즉, 콘트라스트를 증가시키는 것을 이용한다. 종래의 TV 시스템은 0.1 칸델라/제곱미터(cd/m2)와 100cd/m2 사이의 휘도, 또는 약 10 배의 휘도에 대해 제작되었으며, 이것은 일반적으로 표준 동적 범위(SDR) 비디오라고 한다. 비교로서, 일부 HDR 모니터들은, 0.01 내지 4000cd/m2의 범위, 즉, 18배 이상을 디스플레이할 수 있다.
종래의 SDR 처리
TV 또는 컴퓨터 모니터 등의 전형적인 SDR 시스템은 종종 8 비트 표현을 이용하고, 여기서 0은 어두움을 나타내고 255는 밝음을 나타낸다. 코드 값 범위 [0; 255]를 앞서 언급된 휘도 범위 [0.1; 100] cd/m2로 단지 선형적으로 스케일링하는 것은 이상적이지 않을 것이다: 처음 2개의 코드 워드 0과 1은 각각 0.1 cd/m2와 0.49 cd/m2로 맵핑될 것이고, 상대적인 차이는 390 %이다. 반면에 마지막 2개의 코드 워드 254와 255는 각각 99.61 cd/m2와 100 cd/m2로 맵핑될 것이고, 상대적인 차이는 단지 0.3%이다. 상대적 단계 크기에서의 이러한 큰 차이를 피하기 위해, SDR 시스템은, 코드 값을 비선형 방식으로 휘도에 맵핑하는 전기-광학 전달 함수(EOTF; electro-optical transfer function)를 포함한다. 예를 들어, 적색 성분이 먼저 255로 나누어져 값 R01 ∈ [0; 1]을 얻고, 그 다음 파워 함수 R' =(R01)γ를 통해 공급된다.
마지막으로 R'는 범위 [0.1; 100]으로 스케일링되어 cd/m2 단위의 광 표현을 얻는다. 녹색 및 청색 성분은 동일한 방식으로 처리된다. γ = 2.4를 선택함으로써, 처음 2개의 코드 워드 사이의 상대적인 차이는 0:16%가 되고 마지막 2개의 코드 워드는 0.95%가 되어, 훨씬 더 균형이 잡힌다.
SDR 취득 프로세스
카메라 센서가 cd/m2 단위의 선형 광 (R, G, B)을 측정한다고 가정하면, 첫 번째 단계는 피크 밝기로 나누어 정규화된 선형 광 (R01, G01, B01)을 얻는 것이다. 그 다음, EOTF의 역 함수 R' =(R01)1/γ가 적용되며, 녹색과 청색에 대해서도 마찬가지이다. 색상 성분들을 비상관시키기 위해, RGB 색 공간으로부터 YCbCr로의 색상 변환이 적용된다. 다음 단계는 데이터를 양자화하는 것이다. 이 예에서, 우리는 10 비트로 양자화하여 0에서 1023까지 변하는 성분들(Y'444, Cb'444, Cr'444)를 산출한다. 마지막으로, 2개의 크로마 성분이 서브샘플링되어 (Y'420, Cb'420, Cr'420)을 얻는다. 데이터는 이제 HEVC 인코더 등의 비디오 인코더에 전송될 수 있다.
SDR 데이터의 디스플레이
수신기 측에서, HEVC가 유손실 디코더라는 사실로 인해 HEVC 비트 스트림은 디코딩되어 (Y'420, Cb'420, Cr'420) 또는 이들 값들의 다소 디코딩된 버전을 복구한다. 그 다음 이 신호는 위에서 설명한 것과 반대로 처리된다. 최종 결과는, 디스플레이되는 선형 광 표현(R, G, B)이다.
HDR 처리
최대 10000 cd/m2의 휘도를 포함할 수 있는 HDR 데이터의 경우, 단순 파워 함수는 전체 휘도 범위에 걸쳐 사람의 눈의 콘트라스트 감도에 적합하지 않다. 임의의 고정된 γ 값은, 어두운 톤, 밝은 톤 또는 중간 톤에서 너무 거친 양자화를 초래한다. 이 문제를 해결하기 위해, 다음과 같이 정의된 EOTF
Figure 112017077533209-pct00025
가 이용된다. 피크 휘도도 100에서 10000으로 변경된다.
문제점
위에서 정의한 새로운 EOTF와 피크 휘도 10,000을 이용하여 상기에서 개괄된 종래의 SDR 처리를 적용하면, 예기치 않은 현상이 발생한다. 도 17a 및 도 17b와 도 18a 및 18b를 비교함으로써 도시된 바와 같이, 아티팩트가 나타난다. 도 17a, 도 17b, 도 18a 및 도 18b의 경우, 서브샘플링 및 10 비트로의 양자화 이외의 어떠한 압축도 발생하지 않는다는 점에 유의한다. 그러나 혼란스러운 아티팩트가 발생한다.
분석
다음 2개의 픽셀이 화상에서 서로 옆에 있다고 가정하자:
RGB1 = (1000; 0; 100); 및
RGB2 = (1000; 4; 100)
이들 색상들은 상당히 유사하다는 점에 유의한다. 그러나, 제1 처리 단계는 다음을 생성한다
Y'444Cb'444Cr'4441 = (263; 646; 831) 및
Y'444Cb'444Cr'4442 = (401; 571; 735)
이들은 서로 상당히 다르다. 이 2개 값들의 평균은 Y'Cb'Cr' =(332; 608.5; 783)이다. 이것이 어떤 선형 RGB 값을 나타내는지를 알기 위해 처리 체인에서 거슬러 올라가면, RGB =(1001; 0.48; 100.5)를 얻게 되고, 이것은 RGB1 및 RGB2에 매우 가깝다. 따라서, 이들 3개의 성분의 평균을 구하는 것은 문제가 되지 않는다. 더 큰 문제는 Cb'와 Cr'만이 보간될 때 발생하며, 보간없이 픽셀들로부터의 Y' 값들을 이용한다. 이것은, 4 : 2 : 0 표현을 생성하기 위해 수행되는 종래의 크로마 서브샘플링에서 수행되는 것이다. 예를 들어, 상기 첫 번째 픽셀, 즉, Y'Cb'Cr' =(263; 608.5; 783)로부터 Y'를 취하는 것은, (484; 0.03; 45)의 선형 RGB 색상을 나타내며, 이것은 너무 어둡다. 유사하게, 두 번째 픽셀, 즉, Y'Cb'Cr' =(401; 608.5; 783)로부터 Y'를 취하는 것은, (2061; 2.2; 216)의 RGB 값을 주며, 이것은 너무 밝다.
가능한 해결 방법
이 예제 세 번째 픽셀을 추가하는 것을 고려하자
RGB3 = (1000; 8; 100)
이들 선형 입력들을 R'G'B'로 변환하면, 다음을 얻는다
Figure 112017077533209-pct00026
분명히, 선형 G가 4의 동일한 단계들에서 변경되지만 G'에서의 점프는 첫 번째 픽셀과 두 번째 픽셀 사이에서 더 크다. 마찬가지로, Y'Cb'Cr' 좌표들 사이의 차이는 마지막 2개 픽셀보다 처음 2개 픽셀들 사이에서 더 클 것이다. 따라서, 선형 광에서 성분들 중 하나 또는 2개가 0에 가까울 때, 즉, 색상이 색 범위의 가장자리에 가까울 때, 효과가 가장 클 것이다. 따라서, 아티팩트를 피하는 한 방식은, 포화된 색상을 피하는 것일 수 있다. 그러나, BT.2020의 더 큰 색 공간은 더 포화된 색상을 허용하기 위해 특별히 도입되었으므로, 이 해결책은 바람직하지 않다.
이것은 또 다른 문제를 강조한다. Rec.709에서 많은 테스트 콘텐츠가 촬영되어, BT.2020으로의 변환 후에, 어떠한 색상도 완전히 포화되지 않으므로 아티팩트가 작을 것이다. 예로서, Rec.709에서 취득된 픽셀, 예를 들어, RGB709 =(0; 500; 0)은 BT.2020로의 변환 후에 더 이상 어떠한 0 성분도 갖지 않을 것이다, RGB2020 =(165; 460; 44). 나중에, 카메라가 BT.2020으로 기록할 수 있을 때, 훨씬 더 강한 아티팩트가 나타날 것이다. BT.2020 컨테이너에서 BT.2020 콘텐츠의 효과를 에뮬레이션하기 위해, 이 예의 도면의 처리를 위해 Rec.709 컨테이너 내의 Rec.709 자료를 이용했다. 그러나, 양쪽 경우에서 좌표들 R01G01B01은 [0; 1]의 전체 범위에 이를 것이므로, 수학적으로는 아무런 차이도 없다.
또 다른 해결 방법은 일정한 휘도 처리(CL)를 이용하는 것이다. CL에서, 비-일정 휘도 처리(NCL)라고 지칭되는, 상기 제시된 처리에서는 휘도의 오직 많은 부분만이 루마 Y'에서 운반되는 것과는 대조적으로, 휘도 전부가 Y'에서 운반된다. 그러나, CL의 한 문제점은 전체 체인에 영향을 준다는 것이다; 4:2:0/4:2:2 CL 표현과 4:2:0/4:2:2 NCL 표현간에 상호 변환하는 것은 모든 변환 단계에서 아티팩트를 도입하는 위험을 초래한다. 따라서, 실제로는 전체 산업을 종래의 NCL로부터 CL로 전환하기가 어려웠다.
제안된 해결책: 루마 조정
기본적인 개념은 결과 휘도가 원하는 휘도와 일치하도록 확실히 하는 것이다. 휘도란, (선형) CIE1931 XYZ 색 공간에서의 Y 성분을 의미한다. 이 Y는, 선형 RGB 값들로부터 Y = wRR + wGG + wBB (1)가 계산되기 때문에, 위에서 언급된 루마 Y'와는 상이하며, 여기서 wR = 0.2627, wG = 0.6780 및 wB = 0.0593이다. 휘도 Y는 사람의 시각 시스템이 밝기를 어떻게 평가하는지에 잘 대응하므로, 이것을 잘 보존하는 것은 관심사항이다. 이것은, 처리된 신호(상부)와 원래의 신호(하부) 양쪽 모두가 선형 XYZ로 변환되는 도 19에 도시되어 있다. 그러면 Y 성분들은 도면에서 볼 수 있는 바와 같이 상당히 다르다. 핵심 통찰력은, 루마 값 Y'는 각각의 픽셀에서 독립적으로 변경될 수 있기 때문에, 도 20에 도시된 바와 같이,
Figure 112017077533209-pct00027
가 Yo와 같을 때까지 Y'를 변경함으로써 올바른 원하는 또는 원래의 선형 휘도 Yo에 도달하는 가능하다는 것이다.
Figure 112017077533209-pct00028
가 Y'와 함께 단조 증가하는 경우도 해당 사례인데, 이것은 Y'가 변경되어야 하는 방향을 아는 것이 가능하다는 것을 의미한다. 따라서, 10 비트 양자화의 경우 최대 10 단계에서, 최적의 Y'를 발견하기 위해 구간 반감 등의 간단한 방법이 이용될 수 있다. 원스텝(one-step) 해결책이 선호된다면, Cb, Cr 및 원하는 선형 휘도 Yo를 취하고 Y'를 전달하는 3D 룩업 테이블을 이용할 수 있다.
구현 양태
이 기법은 다음과 같은 방식으로 효율적으로 구현될 수 있다: 먼저, 각각의 픽셀에 대한 원하는 또는 원래의 휘도 Yo는, 각각의 픽셀의 원래의 (R, G, B) 값에 방정식 1을 적용함으로써 획득된다. 둘째, 전체 체인 : (R, G, B) → (정규화) → (R01, G01, B01) → (EOTF-1) → (R', G', B') → (색상 변환) → (Y'01, Cb'0.5, Cr'0.5) → (10-bit 양자화) → (Y'444, Cb'444, Cr'444) → (크로마 서브샘플링) → (Y'420, Cb'420, Cr'420) → (크로마 업샘플링) →
Figure 112017077533209-pct00029
→ (역 양자화) →
Figure 112017077533209-pct00030
가 수행된다. 그 다음, 각각의 픽셀에 대해, 시작 구간 [0; 1023]이 설정된다. 그 다음, 후보 값
Figure 112017077533209-pct00031
가 시도된다. 후보 값으로부터
Figure 112017077533209-pct00032
이 계산되고, 이전에 계산된
Figure 112017077533209-pct00033
를 이용하여, 체인
Figure 112017077533209-pct00034
→ (역 색상 변환) →
Figure 112017077533209-pct00035
→ (EOTF) →
Figure 112017077533209-pct00036
-> (역정규화) ->
Figure 112017077533209-pct00037
를 통해,
Figure 112017077533209-pct00038
를 산출하는 마지막 처리 단계들을 거치는 것이 가능하다. 이것은 이제 휘도 후보
Figure 112017077533209-pct00039
를 얻기 위해 방정식 1에 공급된다. 주어진 픽셀에 대해,
Figure 112017077533209-pct00040
이면, 이것은, 후보 값
Figure 112017077533209-pct00041
가 너무 작고, 올바른 루마 값이 구간 [512; 1023] 내에 있어야 한다는 것을 의미한다. 마찬가지로
Figure 112017077533209-pct00042
이면, 올바른 루마 값은 구간 [0; 512] 내에 있어야 한다. 이제 프로세스가 반복되고, 10회의 반복 후에, 구간은 2개의 인접하는 값들을 포함한다. 이 스테이지에서, 2개의 값들 양쪽 모두가 시도되고, 최소 오차
Figure 112017077533209-pct00043
을 생성하는 값이 선택된다.
결과
우리는 종래의 처리 체인을 구현했고 이것을 루마 조정 단계를 포함하지만, 디코더는 동일하게 유지하는 우리의 체인과 비교했다. 도 17a 내지 도 17c와 도 18a 내지 도 18c는 압축없는 결과를 보여준다. 여기서, 종래의 처리 체인(도 17b 및 도 18b)과 본 발명의 처리 체인(도 17c 및 도 18c) 양쪽 모두는 Y'Cb'Cr' 4 : 2 : 0으로 변환된 다음 선형 RGB로 되돌아 간다. 도 17a 및 도 18a는 원래의 화상을 나타낸다. 총 인코딩 시간(색상 변환 + HM 압축)은 전통적인 처리 방식에 비해 약 3 % 증가한다.
HDR 자료의 경우, 어떠한 단일의 메트릭도 SDR 콘텐츠의 PSNR과 유사한 역할을 갖지 않는다. 대신에 우리는 2개의 메트릭, 휘도에 대한 tPSNR-Y와 색차에 대한 deltaE를 보고한다. 표 5에는, BT.709 컨테이너 내의 BT.709 자료에 대한 압축되지 않은 결과가 나와 있다. 여기서, tPSNR-Y로서 측정된 휘도 품질이, 평균 17dB 이상, 및 하나의 시퀀스에서 20dB 이상으로 크게 증가한 것을 볼 수 있다. 또한 deltaE 결과가 개선되고 있다. 표 6은 BT.2020 컨테이너 내의 BT.709 자료 또는 P3 재료에 대한 비압축 결과를 보여준다. 여기서, 바로 색 범위 가장자리의 어떠한 색상도 이용가능하지 않기 때문에, 이득은 덜 확연하지만, tPSNR-Y 개선은 여전히 평균 8dB이고 일부 시퀀스에서는 11dB 이상이다. deltaE 측정 값은 약간 개선된다. 진정한 BT.2020 자료의 경우, 그 이득이 표 5의 것들과 더 유사할 것으로 예상된다는 점에 유의한다.
[표 5] ― Rec.709 컨테이너에 대한 tPSNR-Y 및 deltaE 증가(dB)
Figure 112017077533209-pct00044
[표 6] ― BT.2020 컨테이너에 대한 tPSNR-Y 및 deltaE 증가(dB)
Figure 112017077533209-pct00045
부록
이 부록은 4 : 2 : 0 서브샘플링으로 인한 색상 아티팩트를 조사한다. 먼저, 크로스-체크에 대한 시도가 이루어지지만, 이미 수정된 HDRTools의 버그로 인해 최악의 값은 재현될 수 없다. 그 다음, 4 : 2 : 0 서브샘플링으로부터 발생하는 휘도에서의 최악의 상대 오차에 대한 검색이 수행된다. 4000 nit로 제한된 스크린 상에 디스플레이되더라도 86 %(195개 Barten 단계들)의 상대 오차가 발생할 수 있다는 것이 밝혀졌다. 데이터가 Rec709로 제한되고 BT.2020 컨테이너에 유지되는 경우에도, 30개 Barten 단계들의 오차가 발생할 수 있다. BT.2020 컨테이너 내의 P3 콘텐츠의 경우, 40개의 Barten 단계들의 오차가 가능하다.
1. 소개
어떠한 압축도 일어나지 않는 경우에도, 4 : 2 : 0 서브샘플링이 이용될 때, 색상에서의 작은 변경이 놀라울 정도로 큰 아티팩트를 도입할 수 있다는 점에 주목했다.
1.1 크로스-체크 불일치
이 조사는, 이하의 표 A1에 리프린팅된, 슬라이드 13의 결과를 재현하기 위해 m35255 [1]의 크로스-체크로서 시작되었다. 결과는, 픽셀 95까지의 이미지의 좌측 부분은 색상 (3000, 0, 100)을 갖고 우측 부분인 픽셀 96 및 그 이후가 색상 (3000, 4, 100)를 갖는 테스트 이미지로부터 나온 것이다.
[표 A1] ― m35255의 값들
Figure 112017077533209-pct00046
앵커(n14548, [2])와 동일한 절차를 이용하여 크로스-체킹할 때, 표 A2에 표시된 결과를 얻었다. 다운샘플링의 경우, [2]의 2.4.7절에 설명된 필터들이 후속되었고(2 및 3 탭들), 업샘플링의 경우, [2]의 2.4.8절의 필터들이 후속되었다(4 탭 필터들).
[표 A2] ― 크로스-체크를 시도할 때의 값들
Figure 112017077533209-pct00047
볼 수 있는 바와 같이, 이것은 정말로 불량하게 일치하고 픽셀 번호들 94 및 98만 일치하는 한편, 픽셀 번호들 95 내지 97 또는 99에 대해서는 어떠한 일치도 발견되지 않는다. 그러나, 대신에 불연속성을 픽셀 97로 이동시키면, 표 A3에 도시된 바와 같이, 훨씬 양호한 일치가 발생한다.
[표 A3] ― 불연속성을 이동시킬 때의 값들
Figure 112017077533209-pct00048
표 A3에서, 픽셀 번호 96만이 일치하지 않는다. 이것은 또한 가장 이상한 값들 (10000, 1.57, 402.25)을 가진 픽셀이며, 불연속성을 어디에 두느냐에 따라, 정답은 (3000, 0, 100) 또는 (3000, 4, 100)이다.
이것은, 크로스-체크에서의 불일치가 HDRtools에서 이미 수정된 오차로 인한 것처럼 보인다. 개정판 492로 되돌아가면, m35255 [1]에서와 동일한 값들을 생성할 수 있다. 더 최신 버전의 HDRtools(개정판 573)가 올바른지 확인하기 위해, Matlab에서 독립적으로 처리 체인을 구현했으며 표 A3에서와 동일한 결과를 얻는다. 일치를 얻기 위해 불연속성을 이동해야 하는 이유는 아마도 현재 버전에서 수정된 개정판 492에서의 잘못된 필터링 때문일 것이다.
1.2 반올림 문제
Matlab 크로스체크를 구현할 때, HDRtools에서 부동소수점으로부터 EXR로의 변환이 반올림되지 않는다는 것을 알게 되었다. 가수(mantissa)의 23 비트를 10 비트로 반올림하는 것 대신에, 우측 시프트되어, 기본적으로 round()를 floor()로 대체한다. 이것은 최종 결과에 영향을 미친다. 한 예로서 3007.9의 부동소수점은, 3008.0이 훨씬 더 가까운 값이지만, 3006.0으로 변환될 것이다. 일치를 얻기 위해 우리는 Matlab 코드로 HDRtools의 현재 개정판([3]의 개정판 587)에서의 floor()-타입 변환을 에뮬레이트했다.
1.3 색상 특이값
픽셀 96이 더 이상 극단적인 특이값이 아니더라도, 픽셀 97은 여전히 정확한 값으로부터 꽤 멀다는 점에 유의한다 : (3000, 4, 100) 대신에 (5860, 2.58, 199). 이것은 질문을 제기한다; 4 : 2 : 0 서브샘플링이 얼마나 불량한 특이점들을 생성할 수 있는가? 및 이것이 어디에서 발생하는가? 이 질문에 답하기 위해 먼저 "불량한"이라는 말을 정의해야 한다. 인간 시각 시스템은 색차 변화보다는 휘도 변화에 더 민감하기 때문에, 휘도에 집중했다. 따라서, 입력 EXR 이미지와 출력 EXR 이미지 양쪽 모두를 선형 광에서 XYZ로 변환하고, Y에서 차이를 형성했다. 그 다음, 상대 오차를 얻기 위해 원본의 Y 성분으로 나누었다. 그 다음, m35255 [1]에서 했던 것과 같이, 좌측 부분이 하나의 색상이고 우측 부분이 동일한 색상 + 길이 4의 작은 델타인 타입의 모든 가능한 이미지들에 걸쳐 픽셀 97에 대해 이 상대 오차를 최대화하는 작은 프로그램을 작성했다.
이 프로그램을 실행하면, 표 A4에 도시된 바와 같이, 좌측 부분에 색상(2142, 0,138)을 갖고 우측 부분에 (2142, 4, 138)을 가지면 가장 큰 가시적 오차가 발생한다는 답변을 준다. "최악의" 오차를 찾는 최적화 소프트웨어는 전역적 최대값을 발견하는 것이 보장되지 않으므로, 색 범위에서의 훨씬 더 나쁜 위치들이 존재할 수 있다.
[표 A4] ― 4 : 2 : 0 서브샘플링의 "최악의" 색상에 대한 데이터
Figure 112017077533209-pct00049
적색 성분이 2142보다 높다면 상대 오차가 훨씬 더 높아진다는 점에 유의해야 한다. 그러나, 4000 위의 RGB 값들은 모니터에 의해 4000으로 클립핑되는 것으로 가정했으므로, 더 높은 값들이 이용된다면 실제 스크린 상의 차이는 감소되기 시작할 것이다.
표 A4에서 알 수 있는 바와 같이, RGB 4 : 4 : 4에 대한 상대 오차는 0.0304%이다. 객관적으로 보기 위해, Barten의 곡선과 비교해 보았으며, 콘트라스트 감도에 대한 Barten의 곡선을 나타내는 도 21을 참조한다. 곡선 아래의 콘트라스트는 눈에 띄지 않는다. 표 A5는 도 21에서 곡선을 플롯팅하는데 이용된 값들을 보여준다.
[표 A5] ― Barten의 곡선을 플롯팅하는데 이용되는 값들
Figure 112017077533209-pct00050
도 21에서 알 수 있는 바와 같이, 상대 오차에 대한 허용 오차는 휘도가 증가함에 따라 감소한다. 100 nit에서, 0.44 %의 오차가 겨우 눈에 띄는 반면, 1000 니트에서는, 0.40 %의 오차가 겨우 눈에 띈다. 이들 사이에 455개의 nit가 있으므로, 0.44 %의 높은 값을 이용한다. 이것은 0.069의 Barten 단계를 주며, 눈에 띄지 않는다는 것을 의미한다.
반면에 4 : 2 : 0 서브샘플링의 경우, 상대 오차는 85.92 %이다. 이것은 195개가 넘는 Barten 단계와 동등하며, 명확하게 볼 수 있을 것이다. 따라서, 4 : 2 : 0 서브샘플링은 앵커 생성의 경우에서와 같이, 적어도, 비일정 휘도 및 고도로 비선형의 전달 함수와 함께, 명확하게 볼 수 있는 아티팩트를 생성할 수 있다고 결론내는 것이 합리적으로 보인다.
최악의 오차는 바로 색 범위의 경계 상에 있다; 녹색 색상은 0이므로, 색상 (2142, 0, 138)은 적색 원색과 녹색 원색 사이의 라인 상에 있다는 점에 유의한다. 이것은, 색 범위 가장자리의 색상들이 문제가 있다고 지적한 m35255 [1]에서 보고된 것과 일치한다.
1.4 입력이 709 데이터일 때
표 A1에 제시된 데이터는 BT.2020 원색들에 대한 것이었다. 입력 데이터가 Rec709 원색들이지만 컨테이너가 BT.2020이면, 색 범위 경계에 도달하는 것이 가능하지 않을 것이다. 이것은, 도 22에서 볼 수 있는 바와 같이, Rec709 색 범위 삼각형이 BT.2020 삼각형 내부에 있고, 색 범위 경계에 닿지 않는다는 사실에 기인한 것이다. 따라서 상대 오차가 더 작을 것이라고 가정하는 것이 합리적이다.
최적화 소프트웨어를 실행하여, BT2020으로의 변환 후, 가장 큰 상대 오차가 발생하는 Rec709 색상을 발견했다. 결과적인 2개의 색상은 스크린의 좌측 부분에 대해서는 (0, 0, 50)이고 우측 부분에서는 (2, 3, 49)이다. 이것은 표 A6에 제시되어 있다.
[표 A6] ― 입력이 Rec709이고 컨테이너 포맷이 BT.2020인 경우 4 : 2 : 0 서브샘플링의 "최악의" 색상에 대한 데이터
Figure 112017077533209-pct00051
여기서 우리는, 0.54%와 동일한, 10 nit에서의 Barten 곡선을 이용했다. RGB 4 : 4 : 4의 경우, 1.2305 Barten 단계들에서 겨우 눈에 띄는 오차가 발생하는 반면, RGB 4 : 2 : 0에서의 오차는 33 Barten 단계들과 동일하고, 이것은 명확히 볼 수 있을 것이다. Rec709 데이터로 시작하면 색상이 BT.2020의 색 범위 가장자리의 모든 부분에 도달하지는 못하기 때문에, 오차가 더 적다(33개 Barten 단계들 -대- 195개 Barten 단계들)는 것이 역시 합리적이다.
또한 청색 원색 부근에서 최악의 오차가 이용가능하다는 것을 최적화 결과를 통해 어떻게 발견했는지에 유의한다. 이것은, 도 22에서 볼 수 있는 바와 같이, 청색 Rec709 원색이 BT.2020 색 범위 가장자리에 가장 가깝기 때문일 수 있다.
1.5 입력이 P3 데이터일 때
동일한 테스트가 BT.2020 컨테이너에 포함된 P3 소스 데이터에 대해 실행될 수 있다. 그러면, 최악의 색상은, 표 A7에 도시된 바와 같이, (2.48, 3.32, 4.63) 및 (3.29, 0, 6.71)이다.
[표 A7] ― 입력이 P3이고 컨테이너 포맷이 BT.2020인 경우 4 : 2 : 0 서브샘플링의 "최악의" 색상에 대한 데이터
Figure 112017077533209-pct00052
이 오차가 Rec709와 BT2020 사이의 어딘가에 있다고 가정할 것이고, 이 경우에도, 40.38 Barten 단계들과 동등한 오차가 발생한다. Barten 값이 변경되므로, 최악의 값을 검색할 때 이것을 루프에 포함시키는 것이 중요하다는 점에 유의한다. 0.85 %와 동일한, 1cd/m2에 대한 Barten 값을 이용했다.
1.6. 결론
이 부록은 4 : 2 : 0 서브샘플링으로 인한 휘도에서의 오차를 조사했다. m35255 [1]로부터의 최악의 특이값(worst outlier)과 필적할 수는 없었지만, 최악의 경우의 오차들은 여전히 상당하며, 일반적인 데이터에 대해 거의 200개의 Barten 단계들에 이른다. 원본 데이터가 Rec709로 제한되고 BT.2020 컨테이너에 배치되는 경우에도, 오차는 여전히 30개 이상의 Barten 단계로 상당하며, BT.2020 컨테이너의 P3 데이터의 경우, 40개 이상의 Barten 단계들이다.
전술된 실시예들은 본 발명의 몇 가지 예시로서 이해되어야 한다. 본 기술분야의 통상의 기술자라면, 본 발명의 범위로부터 벗어나지 않고 실시예들에 대해 다양한 수정, 조합, 및 변경이 이루어질 수 있다는 것을 이해할 것이다. 특히, 상이한 실시예들 내의 상이한 부분적 해결책들은, 기술적으로 가능하다면, 다른 구성들로 조합될 수 있다. 그러나, 본 발명의 범위는 첨부된 청구항들에 정의된다.
참조문헌
Figure 112017077533209-pct00053

Claims (35)

  1. 화상 내의 픽셀을 전처리하는 방법으로서,
    RGB 색 공간에서의 상기 픽셀의 선형 색상(Ro, Go, Bo)에 RGB로부터 XYZ로의 색상 변환을 적용하여 결정된, XYZ 색 공간에서의 상기 픽셀의 원래의 선형 휘도 성분 값(Yo)을 획득하는 단계(S1); 및
    상기 RGB 색 공간에서의 비선형 색상을 얻기 위해, 상기 RGB 색 공간에서의 상기 선형 색상에 제1 전달 함수를 적용하는 단계(S10)
    를 포함하고, 상기 방법은
    Y'CbCr 색 공간에서의 비선형 색상을 얻기 위해, 상기 RGB 색 공간에서의 상기 비선형 색상에 제1 색상 변환을 적용하는 단계(S11) - 상기 Y'CbCr 색 공간에서의 상기 비선형 색상은 초기 비선형 크로마 Cb 성분 값 및 초기 비선형 크로마 Cr 성분 값을 포함함 ―;
    상기 Y'CbCr 색 공간에서의 서브샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 서브샘플링된 비선형 크로마 Cr 성분 값을 얻기 위해, 상기 Y'CbCr 색 공간에서의 상기 초기 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 초기 비선형 크로마 Cr 성분 값을 서브샘플링하는 단계(S12);
    상기 Y'CbCr 색 공간에서의 업샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 업샘플링된 비선형 크로마 Cr 성분 값을 얻기 위해, 상기 Y'CbCr 색 공간에서의 상기 서브샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 서브샘플링된 비선형 크로마 Cr 성분 값을 업샘플링하는 단계(S20);
    상기 RGB 색 공간에서의 비선형 색상(R'G'B')을 얻기 위해, 상기 Y'CbCr 색 공간에서의 후보 비선형 루마 성분 값(Y'), 상기 Y'CbCr 색 공간에서의 상기 업샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 업샘플링된 비선형 크로마 Cr 성분 값에 제2 색상 변환을 적용하는 단계(S21);
    상기 RGB 색 공간에서의 선형 색상(RGB)을 얻기 위해, 상기 RGB 색 공간에서의 상기 비선형 색상에 제2 전달 함수를 적용하는 단계(S22);
    상기 XYZ 색 공간에서의 선형 휘도 성분 값(Y)을 얻기 위해, 상기 RGB 색 공간에서의 상기 선형 색상에 상기 RGB로부터 XYZ로의 색상 변환을 적용하는 단계(S23); 및
    상기 XYZ 색 공간에서의 상기 선형 휘도 성분 값과 상기 XYZ 색 공간에서의 상기 원래의 선형 휘도 성분 값 사이의 차이를 감소시키는 상기 Y'CbCr 색 공간에서의 후보 비선형 루마 성분 값을 선택함으로써, 상기 픽셀에 대한 상기 Y'CbCr 색 공간에서의 비선형 루마 성분 값(Y')을 도출하는 단계(S2)
    를 포함하는 것을 특징으로 하는 방법.
  2. 화상 내의 픽셀을 인코딩하는 방법으로서,
    상기 픽셀에 대한 Y'CbCr 색 공간에서의 비선형 루마 성분 값(Y')을 도출하기 위해, 상기 픽셀을 제1항에 따라 전처리하는 단계(S1, S2); 및
    상기 비선형 루마 성분 값, 상기 Y'CbCr 색 공간에서의 서브샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 서브샘플링된 비선형 크로마 Cr 성분 값을 인코딩하는 단계(S3)
    를 포함하는 방법.
  3. 화상 내의 픽셀을 전처리하기 위한 디바이스(100, 110)로서,
    상기 디바이스(100, 110)는, RGB 색 공간에서의 상기 픽셀의 선형 색상(Ro, Go, Bo)에 RGB로부터 XYZ로의 색상 변환을 적용하여 결정된, XYZ 색 공간에서의 상기 픽셀의 원래의 선형 휘도 성분 값(Yo)을 획득하도록 구성되고;
    상기 디바이스(100, 110)는, 상기 RGB 색 공간에서의 비선형 색상을 얻기 위해, 상기 RGB 색 공간에서의 상기 선형 색상에 제1 전달 함수를 적용하도록 구성되고,
    상기 디바이스(100, 110)는, Y'CbCr 색 공간에서의 비선형 색상을 얻기 위해, 상기 RGB 색 공간에서의 상기 비선형 색상에 제1 색상 변환을 적용하도록 구성되고 - 상기 Y'CbCr 색 공간에서의 상기 비선형 색상은 초기 비선형 크로마 Cb 성분 값 및 초기 비선형 크로마 Cr 성분 값을 포함함 ―;
    상기 디바이스(100, 110)는, 상기 Y'CbCr 색 공간에서의 서브샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 서브샘플링된 비선형 크로마 Cr 성분 값을 얻기 위해, 상기 Y'CbCr 색 공간에서의 상기 초기 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 초기 비선형 크로마 Cr 성분 값을 서브샘플링하도록 구성되고;
    상기 디바이스(100, 110)는, 상기 Y'CbCr 색 공간에서의 업샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 업샘플링된 비선형 크로마 Cr 성분 값을 얻기 위해, 상기 Y'CbCr 색 공간에서의 상기 서브샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 서브샘플링된 비선형 크로마 Cr 성분 값을 업샘플링하도록 구성되고;
    상기 디바이스(100, 110)는, 상기 RGB 색 공간에서의 비선형 색상(R'G'B')을 얻기 위해, 상기 Y'CbCr 색 공간에서의 후보 비선형 루마 성분 값(Y'), 상기 Y'CbCr 색 공간에서의 상기 업샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 업샘플링된 비선형 크로마 Cr 성분 값에 제2 색상 변환을 적용하도록 구성되고;
    상기 디바이스(100, 110)는, 상기 RGB 색 공간에서의 선형 색상(RGB)을 얻기 위해, 상기 RGB 색 공간에서의 상기 비선형 색상에 제2 전달 함수를 적용하도록 구성되고;
    상기 디바이스(100, 110)는, 상기 XYZ 색 공간에서의 선형 휘도 성분 값(Y)을 얻기 위해, 상기 RGB 색 공간에서의 상기 선형 색상에 상기 RGB로부터 XYZ로의 색상 변환을 적용하도록 구성되고,
    상기 디바이스(100, 110)는, 상기 XYZ 색 공간에서의 상기 선형 휘도 성분 값과 상기 XYZ 색 공간에서의 상기 원래의 선형 휘도 성분 값 사이의 차이를 감소시키는 상기 Y'CbCr 색 공간에서의 후보 비선형 루마 성분 값을 선택함으로써, 상기 픽셀에 대한 상기 Y'CbCr 색 공간에서의 비선형 루마 성분 값(Y')을 도출하도록 구성되는 디바이스.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 제3항에 있어서,
    상기 디바이스(100, 110)는, 상기 Y'CbCr 색 공간에서의 후보 비선형 루마 성분 값, 상기 Y'CbCr 색 공간에서의 상기 업샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 업샘플링된 비선형 크로마 Cr 성분 값에 상기 제2 색상 변환의 적용을 수행하고, 상기 RGB 색 공간에서의 상기 비선형 색상에 상기 제2 전달 함수의 적용을 수행하고, 그리고 상기 Y'CbCr 색 공간에서의 상이한 후보 비선형 루마 성분 값들에 대해 상기 RGB 색 공간에서의 상기 선형 색상에 상기 RGB로부터 XYZ로의 색상 변환의 적용을 수행하도록 구성되고;
    상기 디바이스(100, 110)는, 상기 XYZ 색 공간에서의 상기 원래의 선형 휘도 성분 값과 상기 XYZ 색 공간에서의 상기 선형 휘도 성분 값 사이의 최소 차이를 야기하는 후보 비선형 루마 성분 값을 상기 Y'CbCr 색 공간에서의 상기 상이한 후보 비선형 루마 성분 값들 중에서 선택하도록 구성된, 디바이스.
  10. 제3항에 있어서, 상기 디바이스(100, 110)는, 상기 XYZ 색 공간에서의 상기 원래의 선형 휘도 성분 값과 상기 XYZ 색 공간에서의 상기 선형 휘도 성분 값 사이의 차이를 최소화하는 상기 Y'CbCr 색 공간에서의 후보 비선형 루마 성분 값을 선택하기 위해 2진 검색을 수행하도록 구성된, 디바이스.
  11. 삭제
  12. 삭제
  13. 제3항에 따른 디바이스(100, 110)를 포함하고, 비디오 데이터를 수신하여 처리하도록 구성된 디바이스 또는 장치인 사용자 장비(5, 200).
  14. 제3항에 따른 디바이스(100, 110)를 포함하고, 컴퓨터, 랩탑, 스마트 폰, 태블릿 및 셋탑 박스로 구성된 그룹으로부터 선택되는 사용자 장비(5, 200).
  15. 명령어들을 포함하는 컴퓨터 프로그램(240)이 저장된 컴퓨터 판독가능 기록 매체로서, 상기 명령어들은, 프로세서(210)에 의해 실행될 때, 상기 프로세서(210)로 하여금:
    RGB 색 공간에서의 픽셀의 선형 색상(Ro, Go, Bo)에 RGB로부터 XYZ로의 색상 변환을 적용하여 결정된, XYZ 색 공간에서의 상기 픽셀의 원래의 선형 휘도 성분 값(Yo)을 획득하고;
    상기 RGB 색 공간에서의 비선형 색상을 얻기 위해, 상기 RGB 색 공간에서의 상기 선형 색상에 제1 전달 함수를 적용하고;
    Y'CbCr 색 공간에서의 비선형 색상을 얻기 위해, 상기 RGB 색 공간에서의 상기 비선형 색상에 제1 색상 변환을 적용하고 - 상기 Y'CbCr 색 공간에서의 비선형 색상은 초기 비선형 크로마 Cb 성분 값 및 초기 비선형 크로마 Cr 성분 값을 포함함 ―;
    상기 Y'CbCr 색 공간에서의 서브샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 서브샘플링된 비선형 크로마 Cr 성분 값을 얻기 위해, 상기 Y'CbCr 색 공간에서의 상기 초기 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 초기 비선형 크로마 Cr 성분 값을 서브샘플링하고;
    상기 Y'CbCr 색 공간에서의 업샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 업샘플링된 비선형 크로마 Cr 성분 값을 얻기 위해, 상기 Y'CbCr 색 공간에서의 상기 서브샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 서브샘플링된 비선형 크로마 Cr 성분 값을 업샘플링하고;
    상기 RGB 색 공간에서의 비선형 색상(R'G'B')을 얻기 위해, 상기 Y'CbCr 색 공간에서의 후보 비선형 루마 성분 값(Y'), 상기 Y'CbCr 색 공간에서의 상기 업샘플링된 비선형 크로마 Cb 성분 값 및 상기 Y'CbCr 색 공간에서의 상기 업샘플링된 비선형 크로마 Cr 성분 값에 제2 색상 변환을 적용하고;
    상기 RGB 색 공간에서의 선형 색상(RGB)을 얻기 위해, 상기 RGB 색 공간에서의 상기 비선형 색상에 제2 전달 함수를 적용하고;
    상기 XYZ 색 공간에서의 선형 휘도 성분 값(Y)을 얻기 위해, 상기 RGB 색 공간에서의 상기 선형 색상에 상기 RGB로부터 XYZ로의 색상 변환을 적용하고;
    상기 XYZ 색 공간에서의 상기 선형 휘도 성분 값과 상기 XYZ 색 공간에서의 상기 원래의 선형 휘도 성분 값 사이의 차이를 감소시키는 상기 Y'CbCr 색 공간에서의 후보 비선형 루마 성분 값을 선택함으로써, 상기 픽셀에 대한 상기 Y'CbCr 색 공간에서의 비선형 루마 성분 값(Y')을 도출하도록
    하는 것을 특징으로 하는, 컴퓨터 판독가능 기록 매체.
  16. 제15항에 있어서, 상기 컴퓨터 프로그램(240)은, 상기 프로세서(210)에 의해 실행될 때, 상기 프로세서(210)로 하여금, 상기 비선형 루마 성분 값, 상기 비선형 크로마 Cb 성분 값 및 상기 비선형 크로마 Cr 성분 값을 인코딩하게 하는 명령어들을 추가로 포함하는, 컴퓨터 판독가능 기록 매체.
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
KR1020177022498A 2015-02-13 2016-01-28 픽셀 전처리 및 인코딩 KR102033229B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562115679P 2015-02-13 2015-02-13
US62/115,679 2015-02-13
PCT/SE2016/050058 WO2016130066A1 (en) 2015-02-13 2016-01-28 Pixel pre-processing and encoding

Publications (2)

Publication Number Publication Date
KR20170103937A KR20170103937A (ko) 2017-09-13
KR102033229B1 true KR102033229B1 (ko) 2019-10-16

Family

ID=56614572

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177022498A KR102033229B1 (ko) 2015-02-13 2016-01-28 픽셀 전처리 및 인코딩

Country Status (10)

Country Link
US (2) US9654803B2 (ko)
EP (1) EP3257042B1 (ko)
JP (1) JP6516851B2 (ko)
KR (1) KR102033229B1 (ko)
CN (1) CN107210026B (ko)
DK (1) DK3257042T3 (ko)
ES (1) ES2925352T3 (ko)
MY (1) MY177576A (ko)
RU (1) RU2679239C1 (ko)
WO (1) WO2016130066A1 (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9399256B2 (en) 2014-06-20 2016-07-26 Velo3D, Inc. Apparatuses, systems and methods for three-dimensional printing
EP3298787B1 (en) * 2015-05-21 2021-03-24 Telefonaktiebolaget LM Ericsson (publ) Pixel pre-processing and encoding
WO2017016526A1 (en) * 2015-07-30 2017-02-02 Zhejiang Dahua Technology Co., Ltd. Methods and systems for image compression
WO2017079091A1 (en) 2015-11-06 2017-05-11 Velo3D, Inc. Adept three-dimensional printing
US10715772B2 (en) 2015-11-09 2020-07-14 Netflix, Inc. High dynamic range color conversion correction
US10080005B2 (en) 2015-11-09 2018-09-18 Netflix, Inc. High dynamic range color conversion correction
US10742986B2 (en) 2015-11-09 2020-08-11 Netflix, Inc. High dynamic range color conversion correction
WO2017100695A1 (en) 2015-12-10 2017-06-15 Velo3D, Inc. Skillful three-dimensional printing
JP6979963B2 (ja) 2016-02-18 2021-12-15 ヴェロ・スリー・ディー・インコーポレイテッド 正確な3次元印刷
CN108781290B (zh) * 2016-03-07 2023-07-04 皇家飞利浦有限公司 一种hdr视频编码器及其编码方法、hdr视频解码器及其解码方法
CN109479151B (zh) 2016-05-16 2022-03-11 瑞典爱立信有限公司 采用颜色分量的像素处理
US10286452B2 (en) 2016-06-29 2019-05-14 Velo3D, Inc. Three-dimensional printing and three-dimensional printers
US11691343B2 (en) 2016-06-29 2023-07-04 Velo3D, Inc. Three-dimensional printing and three-dimensional printers
WO2018067052A1 (en) 2016-10-04 2018-04-12 Telefonaktiebolaget Lm Ericsson (Publ) Pre-processing of hdr video involving chroma adjustment
EP3523976A4 (en) 2016-10-05 2020-04-29 Telefonaktiebolaget LM Ericsson (publ) EFFICIENT IMPLEMENTATION OF LUMINANCE ADJUSTMENT LUT
US20180126650A1 (en) 2016-11-07 2018-05-10 Velo3D, Inc. Gas flow in three-dimensional printing
EP3560200A4 (en) * 2016-12-23 2019-11-13 Telefonaktiebolaget LM Ericsson (publ) CHROMINANCE ADJUSTMENT WITH COLOR COMPONENTS IN VIDEO ENCODED COLOR SPACES
WO2018129089A1 (en) 2017-01-05 2018-07-12 Velo3D, Inc. Optics in three-dimensional printing
US10442003B2 (en) 2017-03-02 2019-10-15 Velo3D, Inc. Three-dimensional printing of three-dimensional objects
US10555004B1 (en) * 2017-09-22 2020-02-04 Pixelworks, Inc. Low frequency compensated encoding
WO2019071045A1 (en) * 2017-10-04 2019-04-11 Netflix, Inc. HIGH DYNAMIC RANGE COLORING CORRECTION
US10272525B1 (en) 2017-12-27 2019-04-30 Velo3D, Inc. Three-dimensional printing systems and methods of their use
EP3591955A1 (en) * 2018-07-06 2020-01-08 InterDigital VC Holdings, Inc. Method of processing data by an iterative application of a same lut
WO2021217428A1 (zh) * 2020-04-28 2021-11-04 深圳市思坦科技有限公司 图像处理方法、装置、摄像设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090278982A1 (en) * 2006-05-15 2009-11-12 Takumi Imai Color image display device and color conversion device
US20100208989A1 (en) 2008-07-08 2010-08-19 Matthias Narroschke Image coding method, image decoding method, image coding apparatus, image decoding apparatus, program and integrated circuit

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US601027A (en) 1898-03-22 trussell
US5450217A (en) * 1994-05-23 1995-09-12 Xerox Corporation Image-dependent color saturation correction in a natural scene pictorial image
CN1106118C (zh) * 1998-09-29 2003-04-16 华邦电子股份有限公司 色彩空间信号转换装置及方法
US6954214B2 (en) * 2000-10-30 2005-10-11 Microsoft Corporation Efficient perceptual/physical color space conversion
JP3818098B2 (ja) * 2001-08-17 2006-09-06 ソニー株式会社 画像信号処理方法及び画像信号処理装置
AU2002342239A1 (en) * 2001-11-02 2003-05-19 Colorgraphyx System and method for color transformation using standardized device profiles
DE10204500A1 (de) * 2002-02-03 2003-08-14 Fraunhofer Ges Forschung Echtzeitfähiges Erkennungs- und Kompensationsverfahren von Beleuchtungsschwankungen in digitalen Farbbildsignalen
US7643675B2 (en) 2003-08-01 2010-01-05 Microsoft Corporation Strategies for processing image information using a color information data structure
JP2005208817A (ja) * 2004-01-21 2005-08-04 Konica Minolta Photo Imaging Inc 画像処理方法、画像処理装置及び画像記録装置
US7916940B2 (en) * 2004-01-31 2011-03-29 Hewlett-Packard Development Company Processing of mosaic digital images
MX2007000369A (es) * 2004-07-29 2007-03-12 Microsoft Corp Procesamiento de imagen utilizando valores ligeros y otras mejoras de procesamiento de imagen.
US7349484B2 (en) * 2004-12-22 2008-03-25 Rambus Inc. Adjustable dual-band link
EP2046067A4 (en) * 2006-07-25 2010-04-21 Nikon Corp CONVERSION MATRIX DETERMINATION METHOD, IMAGE PROCESSING DEVICE, PICTURE PROCESSING PROGRAM AND PICTURE DEVICE
CN101354450B (zh) * 2007-07-26 2012-03-14 鸿富锦精密工业(深圳)有限公司 光学板及其制备方法
US8130236B2 (en) * 2008-02-05 2012-03-06 Aptina Imaging Corporation Systems and methods to achieve preferred imager color reproduction
WO2010104624A2 (en) * 2009-03-10 2010-09-16 Dolby Laboratories Licensing Corporation Extended dynamic range and extended dimensionality image signal conversion
TWI390961B (zh) * 2009-03-13 2013-03-21 Asustek Comp Inc 影像處理裝置及影像處理方法
JP5370761B2 (ja) * 2009-04-10 2013-12-18 ソニー株式会社 映像信号処理装置および表示装置
TWI424427B (zh) * 2009-05-13 2014-01-21 Chunghwa Picture Tubes Ltd 色彩轉換方法以及其相對應之色彩顯示方法
US8311355B2 (en) * 2009-06-05 2012-11-13 Apple Inc. Skin tone aware color boost for cameras
US9049410B2 (en) * 2009-12-23 2015-06-02 Samsung Display Co., Ltd. Color correction to compensate for displays' luminance and chrominance transfer characteristics
US8285033B2 (en) * 2010-04-01 2012-10-09 Seiko Epson Corporation Bi-affinity filter: a bilateral type filter for color images
US10306233B2 (en) * 2010-09-16 2019-05-28 Koninklijke Philips N.V. Apparatuses and methods for improved encoding of images for better handling by displays
CN103339944B (zh) * 2011-01-31 2016-09-07 马维尔国际贸易有限公司 在彩色显示器上执行像素的色彩调整的系统和方法
US8919476B2 (en) * 2011-07-11 2014-12-30 Holland Moving & Rigging Supplies, Inc. Platform dolly system
US8908962B2 (en) * 2011-09-30 2014-12-09 Ebay Inc. Item recommendations using image feature data
KR20130068823A (ko) * 2011-12-16 2013-06-26 삼성전자주식회사 영상 신호 처리를 위한 방법 및 장치
US9142012B2 (en) * 2012-05-31 2015-09-22 Apple Inc. Systems and methods for chroma noise reduction
US20140066196A1 (en) * 2012-08-30 2014-03-06 Colin William Crenshaw Realtime color vision deficiency correction
CN105981361A (zh) * 2014-02-21 2016-09-28 皇家飞利浦有限公司 具备高清晰度和高动态范围能力的视频解码器
CN104159053B (zh) * 2014-08-08 2017-08-15 浙江大学 一种大色域显示设备三原色优化设置方法
CN104243946B (zh) * 2014-09-26 2017-04-19 深圳市华星光电技术有限公司 用于显示器的图像色彩增强方法及装置
EP3251084B1 (en) 2015-01-30 2022-05-18 InterDigital VC Holdings, Inc. A method and apparatus of encoding and decoding a color picture
EP3051818A1 (en) * 2015-01-30 2016-08-03 Thomson Licensing Method and device for decoding a color picture

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090278982A1 (en) * 2006-05-15 2009-11-12 Takumi Imai Color image display device and color conversion device
US20100208989A1 (en) 2008-07-08 2010-08-19 Matthias Narroschke Image coding method, image decoding method, image coding apparatus, image decoding apparatus, program and integrated circuit

Also Published As

Publication number Publication date
BR112017017434A8 (pt) 2022-09-06
EP3257042B1 (en) 2022-06-22
MY177576A (en) 2020-09-21
WO2016130066A1 (en) 2016-08-18
BR112017017434A2 (pt) 2018-04-03
KR20170103937A (ko) 2017-09-13
ES2925352T3 (es) 2022-10-17
EP3257042A4 (en) 2018-02-14
US10397536B2 (en) 2019-08-27
DK3257042T3 (da) 2022-08-01
JP6516851B2 (ja) 2019-05-22
CN107210026B (zh) 2020-02-14
US20160241885A1 (en) 2016-08-18
EP3257042A1 (en) 2017-12-20
RU2679239C1 (ru) 2019-02-06
JP2018511210A (ja) 2018-04-19
US9654803B2 (en) 2017-05-16
CN107210026A (zh) 2017-09-26
US20170208310A1 (en) 2017-07-20

Similar Documents

Publication Publication Date Title
KR102033229B1 (ko) 픽셀 전처리 및 인코딩
CN107836118B (zh) 像素预处理和编码的方法、装置和计算机可读存储介质
CN107852513B (zh) 对输入视频序列的像素进行编码
US10681358B2 (en) Quantization parameter control for video coding with joined pixel/transform based quantization
CN107615761B (zh) 用于像素处理和编码的方法、设备和计算机可读介质
CN109479151B (zh) 采用颜色分量的像素处理
CN107925778B (zh) 像素预处理和编码
EP3026908A1 (en) Method and device for quantizing and de-quantizing a picture using scaling factors for chrominance based on luminance
US10602109B2 (en) Method and arrangements for HDR encoding
BR112017017434B1 (pt) Método de pré-processar um pixel em uma imagem

Legal Events

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