Color Accuracy Analyzer
Evaluate color reproduction accuracy by computing the Color Correction Matrix and measuring color error against standard ColorChecker patches.
Color Accuracy Analyzer
Compute color reproduction accuracy (deltaE) for ColorChecker patches using TMM-based QE spectra and a least-squares Color Correction Matrix.
Sensor QE Spectrum
Color Correction Matrix (CCM)
| Rin | Gin | Bin | |
|---|---|---|---|
| Rout | 0.0247 | -0.0001 | -0.0006 |
| Gout | -0.0151 | 0.0241 | -0.0003 |
| Bout | 0.0015 | -0.0154 | 0.0154 |
ColorChecker Patches (24)
deltaE per Patch
a*b* Chromaticity Diagram
CIE xy Gamut Coverage
Model scope
Use this browser tool for intuition, relative trends, and design-space exploration. Its local simplified model is not a substitute for RCWA/FDTD sign-off, silicon calibration, or vendor process data.
Learn more
Signal Chain · Color Reproduction · Signal Chain Color Accuracy recipe
Color Correction and Delta E
A camera does not see colour exactly like a human eye, so its raw RGB values must be translated to match what we would expect — that translation is the colour correction matrix (CCM). Delta E then measures how close the final colours are to the reference, scaled to match human perception (a Delta E of 1 is roughly the smallest difference an eye can spot). Better filters and more light make the translation easier and more accurate.
The analyzer maps simulated camera RGB responses to reference colorimetry with a color correction matrix, then measures perceptual error.
Assumptions
- Scene spectra, illuminants, filter responses, and ColorChecker patches are simplified public or illustrative spectra.
- The CCM is a linear 3x3 correction and cannot fully fix metamerism, saturation, clipping, or nonlinear image processing.
- Noise and color error are evaluated in a compact signal-chain model, not a full ISP.
Outputs
- Camera responses, fitted CCM, CIE tristimulus comparison, Delta E summary, and sensitivity to illuminant or noise.
- A design view of when spectral overlap, weak channels, or illuminant mismatch dominate color error.
Validation Example
- With very broad overlapping filters, color error should increase because the camera responses become less independent.
- Changing illuminant should change fitted CCM performance unless the sensor spectra are ideally matched to the observer functions.
Core Equations
- \(M\): 3x3 CCM matrix
- \(\mathbf{R}_{\text{cam}}\): Camera response matrix
The CCM is fitted to map camera sensor responses to reference XYZ values.
- \(\Delta E_{ab}^*\): Total color difference
Delta E summarizes color mismatch after conversion to a perceptual color space.
- \(n\): Noise terms
Color accuracy degrades when low-light noise perturbs channel ratios.
Model Interpretation
- Good color filters are not only narrow; they must produce well-conditioned RGB bases.
- A CCM can correct linear color mixing but cannot recover missing spectral information.
- Illuminant choice changes both reference colors and camera channel balance.
CCM Conditioning
- If RGB channel spectra are too similar, $\mathbf{R}_{\text{cam}}$ becomes ill-conditioned and noise is amplified by the CCM.
- A low mean $\Delta E$ can hide large outliers, so inspect worst patch and hue-specific errors.
- Better spectral separation often trades off with lower throughput and higher low-light color noise.
Measurement Workflow
- Capture color targets under known illuminants, subtract black level, linearize response, then fit the CCM.
- Evaluate under multiple illuminants because a CCM fitted to one light source can fail under another.
- Separate spectral design errors from pipeline errors by testing raw linear data before tone mapping.
Known Missing Physics
- The model does not include demosaic, white-balance adaptation, local tone mapping, or color appearance modeling.
- It assumes a linear CCM; real cameras often use nonlinear hue/saturation transforms after the matrix.
- Sensor noise, flare, lens shading, and IR leakage can all masquerade as color-filter design problems.