Principles of color matching with displays
• CRT displays • Linear equations for matching • The nonlinearity (gamma) curve Color matching with displays CRT signal path Displays mimic the color-matching experiment at each point
CRT LCD-1 LCD-2
Trinitron Tri-dot Shadow mask geometry associates each neam with a single phosphor In CRTs, the beam spreads across a few locations, but the local rays are nearly parallel and preserve color association Superposition of Phosphor SPDs CRT Emission Equations Display matching
1.8 1.4 1 0.6 Monitor linear 0.2 400 500 600 700 ⎛⎞intensities ⎜⎟ ⎛⎞⎛Xe ⎞ ⎛⎞r XYZ functions ⎜⎟ ⎜⎟⎜ ⎟Monitor ⎜⎟ Ye⎜⎟primaries ⎜⎟⎜= ⎟ ⎜⎟g ⎜⎟⎜Ze ⎟⎜⎟ ⎜⎟ ⎝⎠⎝ ⎠⎜⎟ ⎝⎠b ⎜⎟ ⎝⎠ When two different lights look the same
Create a metamer 1.8 1.4 3 Display Primary Image contains a 1 primary SPDs intensities target value 0.6 ⎛⎞ 0.2 Xr400 500 600 700 ⎜⎟ ⎛⎞⎛ ⎞⎜⎟ ⎛⎞ ⎜⎟⎜Yg ⎟⎜⎟ ⎜⎟ ⎜⎟⎜= ⎟ ⎜⎟ ⎜⎟⎜ ⎟⎜⎟ ⎜⎟ ⎝⎠⎝Zb ⎠⎜⎟ ⎝⎠ ⎜⎟ ⎝⎠ (CMF * Display)
When two different lights look the same
Create a metamer
Primary Image intensities contains a target value ⎛ r ⎞ ⎛ ⎞ ⎛ X ⎞
⎜ ⎟ −1 g = ⎜ (CMF * Display) ⎟ ⎜ ⎟ ⎜ ⎟ Y ⎜ ⎟ ⎜ ⎟ ⎝⎜ b ⎠⎟ ⎝ ⎠ ⎝ Z ⎠ 3x3 A word about the display transduction function
Often called the display gamma
LD=+αβγ Some Comments About Display Gamma Levels of 2.0
Linear spacing 1 2
3 Steps are 4 Bunched too big in 5 appearance in 6 dark bright region 7
regions 8
9
10 2 4 6 8 10 12 14 16
Uniform appearance Equal L* spacing 1 2
3
4 Board work to 5 6
explain relationship 7 to transduction 8 9
10 2 4 6 8 10 12 14 16 Camera-Display Matching
Camera measures RGB and we convert Estimate monitor linear to a value related to intensities that match CIE-XYZ CIE-XYZ related value XYZ functions ⎛⎞ Xe⎜⎟ ⎛⎞⎛ ⎞⎜⎟ ⎛⎞r ⎜⎟⎜ ⎟ ⎜⎟ Ye= ⎜⎟Monitor g ⎜⎟⎜ ⎟primaries ⎜⎟ ⎜⎟⎜Ze ⎟⎜⎟ ⎜⎟ ⎝⎠⎝ ⎠⎜⎟ ⎝⎠b ⎜⎟ ⎝⎠ ⎛⎞⎛Xe ⎞⎛⎞r ⎜⎟⎜YXMe ⎟⎜⎟ ⎜⎟⎜= ⎟⎜⎟g ⎜⎟⎜ ⎟⎜⎟ ⎝⎠⎝Ze ⎠⎝⎠b Camera-Display Matching
Camera measures Estimate monitor linear something that we intensities that match convert to a CIE- CIE-XYZ related value XYZ value
⎛⎞⎛Xe ⎞⎛⎞r ⎜⎟⎜YXMe ⎟⎜⎟ ⎜⎟⎜= ⎟⎜⎟g ⎜⎟⎜ ⎟⎜⎟ ⎝⎠⎝Ze ⎠⎝⎠b
⎛⎞⎛eXr ⎞⎛⎞ ⎛⎞R Correct for 1 display gamma ⎜⎟⎜eXMY()− ⎟⎜⎟ ⎜⎟G g = ⎜⎟ ⎜⎟⎜ ⎟⎜⎟ ⎜⎟ ⎜⎟⎜ ⎟⎜⎟ ⎝⎠B ⎝⎠⎝eZb ⎠⎝⎠ ⎛⎞ ⎜⎟ ⎜⎟ ⎜⎟ ⎜⎟ Camera estimates ⎜⎟ ⎜⎟ Image calibrated values ⎝⎠ ⎛⎞ X ⎜⎟ processing ⎛⎞⎛ ⎞⎜⎟ ⎜⎟⎜Y ⎟⎜⎟ ⎜⎟⎜= ⎟ ⎜⎟⎜ ⎟⎜⎟ ⎝⎠⎝Z ⎠⎜⎟ pipeline ⎜⎟ Encoded for ⎝⎠ transmission or NTSC, PAL, storage JPEG, etc.
⎛⎞er ⎜⎟e ⎜⎟g Produce ⎜⎟ ⎝⎠eb (linear RGB) ⎛⎞ Xe⎜⎟ color matches ⎛⎞⎛ ⎞⎜⎟ ⎛⎞r ⎜⎟⎜Ye ⎟⎜⎟ ⎜⎟ ⎜⎟⎜= ⎟ ⎜⎟g ⎜⎟⎜Ze ⎟⎜⎟ ⎜⎟ ⎝⎠⎝ ⎠⎜⎟ ⎝⎠b ⎜⎟ ⎝⎠
Encode for Gamma curve device RGB gamma Photometry: Radiance and Luminance
• Video tutorial for spectral radiance • Luminance • Flicker photometry Spectral radiance function 2 • Source Radiance
– Symbol: L /nm/m
– Units: W/(sr nm m2) sr
watts/ Luminance from spectral radiance
• Source Radiance • Source Luminance
– Symbol: L – Symbol: Lv – Units: W/(sr nm m2) – Units: candelas/m2
Photopic luminosity function 1 127.4 cd/m2 0.8
0.6
0.4
y()λ 0.2
0 V ()λ 300 400 500 600 700 800 Wavelength (nm) Luminance from spectral radiance
LKV=()λ ⋅ Lλdλ vm∫ ( )
• Conversion Photopic luminosity function – Peak luminosity: 1 unity at 555 nm 0.8 V ()λ y()λ – Km = 683 lm/W 0.6
0.4
0.2
0 300 400 500 600 700 800 Wavelength (nm) Luminance: Empirical basis Time slow
Photopic luminosity function 1
0.8 V ()λ y()λ
0.6
0.4 fast 0.2
0 300 400 500 600 700 800 Wavelength (nm) Typical luminance levels
Outdoors (cd/m2) Indoors (cd/m2)
Sun 6x108 Interior room (fluorescent Visual saturation 49,000 lighting) Just below saturation 25,000 floor/walls 90 Outdoor building façade 10,000 in shadow 10 Blue sky (morning) 4,600 Concrete sidewalk in sun 3,200 Interior room (no lighting) in shadow 570 floor/walls 30 in deep shadow 290 in shadow 5 Source in closet door 1 Luminance
Surface Spectral radiance and irradiance units
Defining Term Application SI Unit Equation ΔQ Radiant F = Light emitted from a t watt Flux Δ point Q= energy (joules) F = Q/sec (watt) F Light emitted from a Radiant Δ t = time (sec) I = point in a given solid watt / sr Intensity Δω angle ω = solid angle (steradian) A = area (meter2 ) θ= angle incident to plane ΔI Light from an Radiance L = extended source in a watt /sr/m2 ΔAs cos(θ ) given direction
ΔF Light density incident E watt /m2 Irradiance = on a plane ΔAr Corresponding photometric units
Term Defining Equation Application SI Unit
Luminous Light emitted FKF= ()()λλλ V d lumen Flux vme∫ from a point Q= energy (joules) Light emitted F = Q/sec (watt) Luminous ΔFv from a point in I = candela (cd) t = time (sec) Intensity v Δω a given solid angle ω = solid angle (steradian) A = area (meter2 ) Light from an θ= angle incident to plane ΔI extended source lumens/m2 Luminance L = v A cos( ) in a given (lux) Δ s θ direction
Illuminance Light density 2 ΔLv incident on a cd/m Ev = plane ΔAr CIE Chromaticity
Geometry of chromaticity Applications Chromaticity coordinates
Projective transform
X Y x = y = XYZ++ XYZ++
When two lights differ in intensity, say K*(X,Y,Z) and (X,Y,Z), their chromaticity coordinates are the same Chromaticity diagram
Looking down at the triangle Z
X Y
Square up the axes Chromaticity Diagram Chromaticity Gamut Demo (Stanford)
Applet: Katie Dektar Text: Marc Levoy Technical assistance: Andrew Adams
https://graphics.stanford.edu/courses/cs178-10/applets/threedgamut.html Blackbody radiators
(blackbody.m)
3000K
3500K
Energy units: W/(m2 nm sr) nm W/(m2 units: Energy 9000K
Wavelength (nm) Blackbody Radiators Complementary colors Dominant wavelength Monitor gamut Signal lights Main points
• Matching predicts matches, not appearance
• Color matching is understood profoundly
• XYZ are color-matching standards
1 0.8 • Radiance and Luminance universes are 0.6 l y 0.4
0.2 parallel, connected via the photopic luminosity
0 300 400 500 600 700 800 l [nm] function Vy(),()λλ
• xy chromaticity coordinates are useful for some color specifications Color engineering
• CIELAB metric
Human color metric space: CIELAB (ΔE)
• Manufacturing has much experience with product color (paints, textiles)
− Consistency over time
− Tolerance for contracts
• Early experience for uniform patches, not images; digital imaging requires additional thought Why not use distance in XYZ (or cones) for metrics?
• Experiments show that distance in any frame that is linear with absorptions is wrong • This is invariant of linear transformation Example
2
1.5
1
0.5
0
-0.5
-1
-1.5
-2 2 -2 0 1 -1 0 -1 1 2 -2 Human color metric space: Why not use distance in XYZ (or cones) for metrics?
• The discriminability of two lights, x and x+Δ depends on x
• The distance in XYZ space depends on only Δ 2
1.5 • Experiments show that distance in 1 any frame that is linear with 0.5 absorptions is wrong 0
-0.5
-1 • This argument is invariant of linear -1.5 transformation -2 2 -2 0 1 -1 0 -1 1 2 -2 Human color metric space
• Solution: CIE defines a nonlinear transform on XYZ and a corresponding distance metric in this new representation (ΔE-2000)
• Principles of the nonlinear transformation (CIELAB space) Lightness Sensitivity: Weber-Fechner Law
Percentage, not absolute difference, predicts discriminability Color matching variance
• Repeated setting variability • Unequal variance in different directions
• Macadam used variance as metric
Variance clouds are ellipsoidal
(Poirson and Wandell, 1990, Vision Research) Macadam’s Ellipses/Ellipsoids
• Ellipses shown at x10 threshold • Kodak made 3D measurements • Circularizing the ellipses is one of several metric constraints Threshold discrimination
• The variance in color- matching settings is consistent with thresholds • Ellipsoid shape depends on space-time of stimulus • No single formula for all patterns or mean levels • Note the remarkable cancellation of L and M signals
(Wandell, JOSA, 1986) Other behavioral testing methods
D(s0,s2) • Similarity judgments of color pairs D(s1,s2) • Build a distance matrix • Check for consistency s0 s1 • Derive a perceptually uniform representation • Numerical scaling • Provide a numerical judgment S0 S1 S2 D01 D02 • Steven’s Power Law S0 _ S1 _ D12 s0 S2 _
CIELAB metric
ISET: t_Metrics
• CIE Lightness (1976) • CIELAB
Metrics were designed for • Large (2 deg) targets • Simple (uniform) backgrounds • Static display CIE Lightness
Cube-root of the 1/3 relative luminance * ⎛⎞YY L=116⎜⎟− 16, if > .00856 ⎝⎠YYww
* ⎛⎞Y L= 903.3⎜⎟ , otherwise ⎝⎠Yw
Y = CIE luminance
Yn = CIE luminance of a white surface in the same viewing conditions CIELAB chrominance
1/3 1/3 ⎪⎪⎧⎫⎛⎞⎛⎞XY a*= 500⎨⎬− ⎜⎟⎜⎟XY ⎩⎭⎪⎪⎝⎠⎝⎠ww
1/3 1/3 ⎪⎪⎧⎫⎛⎞YZ ⎛ ⎞ b*= 200⎨⎬− ⎜⎟YZ ⎜ ⎟ ⎩⎭⎪⎪⎝⎠ww ⎝ ⎠ Red-green and blue-yellow chrominance representations CIELAB color solid CIELAB derived quantities
• Distance between two colors designed to Hue predict color difference visibility 1/2 2 2 2 ΔE = ΔL* + Δa * + Δb* ab (( ) ( ) ( ) )
• CIE 2000 replaces this formula with a computer program
Chromaa*
Hue and chroma terms
hab = arctan(b* /a*) 1 C* = (a*2 + b*2 ) 2 ab Opponent colors
Karl Ewald Hering Red/Green examples Opponent colors
Color opponency Red, green, yellow, blue
20 20 40 40 60 60 80 80 100 100 120 120 50 100 150 200 250 50 100 150 200 250
20 20 40 40 60 60 80 80 100 100 120 120 50 100 150 200 250 50 100 150 200 250 Hue cancellation experiment Hue cancellation experiment Hue cancellation curves
Looks yellow Cancel with blue 0.8
0 Relative energy energy Relative
1 400 500 600 700 Wavelength (nm) Looks blue Cancel with yellow Hue cancellation curves from two observers
Opponent-colors organization is widespread in technology; next lecture Color and pattern
• Color appearance depends on spatial pattern
• A metric for spatial pattern and color Space – The next frontier
Color is not invariant as we change pattern Spatial and temporal variations in color sensitivity are significant
Reduced Reduced luminance Original blue-yellow contrast contrast End Tutorial: Imaging Lab Values
Red-green nChips = size(grayLAB,2); aRamp = scale(1:nChips,-30,30); varyAstar(1,:) = 70*ones(1,nChips); % L is set to 70 varyAstar(2,:) = aRamp; % a star varies varyAstar(3,:) = zeros(1,nChips); % b star is set ot zero - a* +
% Assuming a white point and convert from Lab to XYZ varyXYZ = lab2xyz(varyAstar,whiteXYZ)
- + b* Blue-yellow Tutorial: Imaging Lab Values
% You should understand these from basic color matching rgb2xyz = XYZ'*phosphors; xyz2rgb = inv(rgb2xyz); Red-green whiteRGB = (xyz2rgb*whiteXYZ)' whiteMax = max(whiteRGB) varyRGB = (xyz2rgb*varyXYZ); varyRGB = varyRGB/whiteMax; - a* +
% Use these routines to correct for gamma invGamTable = mkInvGammaTable(monitorGam,1000); fbRGB = round(dac2rgb(varyRGB',invGamTable)) - + b* % Display fbRGB values (see right) Blue-yellow CIE XYZ and xy units Large area XYZ measurements Reflective measurements Color appearance space: Munsell
Albert Munsell Munsell Color Notation
"rational way to describe color"
Not all colors are realized
• Munsell Book of Colors (A.H. Munsell) • Hue, Value, Chroma (2.5YR 5/10) • Cylindrical geometry and radial sampling (cf. OSA/UCS) • Unique notation was calibrated to CIE standards in ‘Munsell renotation system”
Outer circle are various hues (color circle) Up and down are values (lightness) Center to edge is saturation Munsell Color Notation
"rational way to describe color"
http://en.wikipedia.org/wiki/Munsell
• Munsell Book of Colors (A.H. Munsell) • Hue, Value, Chroma (2.5YR 5/10) • Cylindrical geometry and radial sampling (cf. OSA/UCS) • Unique notation was calibrated to CIE standards in ‘Munsell renotation system”
Outer circle are various hues (color circle) Up and down are values (lightness) Center to edge is saturation Munsell Color Notation
Hue "rational way to describe color"
Value Saturated
Neutral
• Munsell Book of Colors (A.H. Munsell) • Hue, Value, Chroma (2.5YR 5/10) • Cylindrical geometry and radial sampling (cf. OSA/UCS) • Unique notation was calibrated to CIE standards in ‘Munsell renotation system”
Outer circle are various hues (color circle) Up and down are values (lightness) Center to edge is saturation CIELAB captures Munsell hue and saturation reasonably, but not perfectly
Munsell iso-hue and iso-saturation curves