색 재현과 색공간
이미지 센서에서 색공간을 다루는 이유는 센서가 사람의 눈이나 sRGB 디스플레이가 정의하는 "빨강", "초록", "파랑"을 직접 측정하지 않기 때문입니다. CIS 픽셀은 세 개의 장치 의존적 분광 적분값을 측정합니다. 색 재현은 이 적분값을 표준 색도 공간, 보통 CIE XYZ로 옮긴 뒤 sRGB나 CIE Lab 같은 표시 또는 평가 공간으로 변환하는 과정입니다.
COMPASS에서 이 페이지는 광학 시뮬레이션과 화질 지표를 잇는 다리입니다:
- 전자기 시뮬레이션 또는 브라우저 모델이 채널별 분광 응답을 만듭니다.
- 장면 스펙트럼과 광원을 그 응답으로 적분합니다.
- 화이트 밸런스와 색 보정 행렬(CCM)로 camera RGB를 XYZ에 맞춥니다.
- Lab과 색차 지표로 남은 오차를 정량화합니다.
센서 색은 분광 매칭 문제
채널
여기서:
는 채널 의 종단 간 분광 응답입니다. 는 카메라 렌즈 투과율입니다. 는 IR-cut 필터 투과율입니다. 는 컬러 필터 투과율입니다. 는 목표 포토다이오드 영역에서의 광 흡수 효율입니다. 는 흡수 이후의 캐리어 수집 효율입니다.
광원
이 식 때문에 색은 센서 설계의 일부입니다. CFA 두께, 염료 스펙트럼, 마이크로렌즈 초점, DTI 누설, IR-cut 기울기, 실리콘 흡수 깊이는 모두
Camera RGB는 display RGB가 아닙니다
Raw camera RGB는 장치 의존 좌표계입니다. 그 축은 센서 채널 응답이지, CIE 표준 관측자 기본색이나 sRGB 디스플레이 기본색이 아닙니다. raw RGB를 곧바로 sRGB처럼 취급하면 광원 의존성, 메타메릭 오차, CFA 트레이드오프가 가려집니다.
CIE XYZ 기준색
CIE XYZ는 색 재현에서 가장 흔히 쓰는 장치 독립 기준입니다. 같은 광원과 표면 반사율에 대한 기준 삼자극값은:
여기서:
, , 는 CIE 표준 관측자 색일치 함수입니다. 는 정규화 상수이며, 보통 기준 백색의 가 100 또는 1이 되도록 둡니다. 는 CIE 체계에서 명소시 휘도에 대응합니다.
색도는 절대 휘도를 제거합니다:
컬러 필터 시뮬레이터에서 쓰는 CIE 1931 색도도는 이
화이트 밸런스
화이트 밸런스는 중립 타겟이 채널 스케일링 이후에도 중립이 되도록 만들어 광원 색 편향의 1차 성분을 제거합니다. 중립 패치의 raw 응답이
화이트 밸런스 이후의 camera vector는:
여기서
화이트 밸런스만으로는 센서가 사람의 표준 관측자와 같아지지 않습니다. 하나의 white point를 맞출 뿐, 유색 물체 전반의 분광 불일치를 고치지는 못합니다. 그 잔여 불일치를 색 보정 행렬이 처리합니다.
색 보정 행렬(CCM)
3x3 색 보정 행렬(CCM)은 white-balanced camera RGB를 목표 색공간으로 매핑합니다. 센서 평가에서는 목표를 보통 XYZ로 둡니다:
행렬은 보정 패치들로부터 fitting합니다:
여기서:
는 패치 의 white-balanced camera vector입니다. 는 기준 CIE XYZ vector입니다. 는 선택적 패치 가중치입니다. 는 least-squares CCM입니다.
Camera sample을
보정 세트에 noise가 있거나 조건수가 나쁘면 ridge regularization이 더 안정적입니다:
CCM은 일부 광학적 타협을 가릴 수 있지만, 센서가 측정하지 못한 정보를 복원할 수는 없습니다. 서로 다른 두 스펙트럼이 같은 camera RGB를 만들지만 서로 다른 XYZ를 가진다면, 어떤 3x3 행렬도 둘을 분리할 수 없습니다.
메타메리즘과 분광 불일치
두 스펙트럼이 센서에 대해 metamer라면 모든 채널에서 같은 camera response를 만듭니다:
사람에게도 같게 보이려면 같은 동등성이 CIE 색일치 함수에 대해서도 성립해야 합니다. 어떤 쌍이 camera metamer이지만 human-observer metamer가 아니거나, 그 반대일 때 색 오차가 발생합니다.
그래서 CFA 스펙트럼은 좁고 포화된 기본색만 보고 최적화할 수 없습니다. 매우 좁은 RGB 필터는 색 분리를 키울 수 있지만 신호를 줄이고, LED/형광등/혼합 조명에서 색 보정을 불안정하게 만들 수 있습니다. 넓은 필터는 감도를 높이지만 채널 독립성을 낮춥니다. 실무 목표는 예상 광원과 재료 범위에서 안정적인 CCM fitting을 지원하는 균형 잡힌 분광 응답입니다.
XYZ에서 sRGB로
sRGB는 display-referred encoding입니다. XYZ가 D65 기준으로 적응되어 있다면 linear sRGB는 다음 행렬로 얻습니다:
클리핑된 linear component
여기서
Lab과 색차
CIE Lab은 기준 백색
여기서:
단순한 1976 색차는:
CIEDE2000, 보통
센서 설계에 주는 의미
색 재현은 광학 스택 설계를 여러 방향에서 제약합니다:
| 설계 선택 | 색 재현 결과 |
|---|---|
| CFA 중심 파장과 대역폭 | 채널 분리, 감도, CCM conditioning을 결정합니다. |
| CFA 두께와 relief | 분광 passband와 각도 응답을 함께 바꾸므로, 화면 중심과 주변부의 색이 달라질 수 있습니다. |
| 마이크로렌즈 초점과 CRA shift | 각 파장이 어느 포토다이오드에 모이는지 바꾸며, 이미지 edge에서 color shading을 만들 수 있습니다. |
| IR-cut transition | 잔여 NIR이 모든 채널에 섞이면 채도가 낮아지고 white balance가 틀어집니다. |
| 실리콘 두께와 흡수 깊이 | 청색은 얕게, 적색/NIR은 깊게 흡수되어 crosstalk와 channel balance가 달라집니다. |
| Noise와 clipping | CCM coefficient가 noisy channel을 증폭할 수 있고, saturation된 채널은 chromatic 정보를 잃습니다. |
따라서 견고한 색 설계는 RGB endpoint 직관만으로 평가하면 안 되고, 스펙트럼으로 평가해야 합니다. 최소 평가 세트는 다음과 같습니다:
- D65와 Illuminant A, 그리고 제품이 실제로 만날 LED 또는 형광등 스펙트럼.
- 화이트 밸런스와 노출을 위한 neutral scale.
- ColorChecker 계열처럼 반사율 스펙트럼이 알려진 patch set.
- CCM 전후의 color error.
- CCM 이후의 SNR 또는 noise amplification 점검.
COMPASS 사용 흐름
광학 시뮬레이션을 색으로 연결할 때는 다음 순서가 자연스럽습니다:
- 픽셀 광학 효과에서 CFA, CRA, crosstalk, stack-level effect를 봅니다.
- 양자 효율에서 absorbed power를 channel spectral response로 변환합니다.
- 신호 체인에서 illuminant, scene reflectance, lens, IR filter, electron signal을 연결합니다.
- 컬러 필터 설계에서 빠르게 spectral shape와 gamut을 탐색합니다.
- 색 정확도 분석기에서 CCM fitting과 color error 직관을 확인합니다.
- 신호 체인 색 정확도에서 종단 간 레시피를 따릅니다.
양산 센서에서 브라우저 시뮬레이터는 초기 설계와 커뮤니케이션 도구입니다. Sign-off에는 측정된 CFA spectrum, module transmittance, dark/flat-field calibration, 실제 illuminant set, silicon image 검증이 필요합니다.
참고문헌
- CIE 015:2018, Colorimetry, 4th Edition: 여기서 사용하는 표준 관측자, 표준 광원, 삼자극값 계산, 색공간, 색차 실무의 기준입니다.
- IEC 61966-2-1:1999, Default RGB colour space - sRGB: display-referred RGB로 쓰는 sRGB 색공간과 인코딩을 정의합니다.
- Sharma, Wu, Dalal, "The CIEDE2000 Color-Difference Formula: Implementation Notes, Supplementary Test Data, and Mathematical Observations":
구현과 검증에 널리 쓰이는 실무 레퍼런스입니다. - NIST, "Color By Numbers": 분광 responsivity mismatch가 색 측정 정확도에 왜 영향을 주는지 설명합니다.