Transcript PowerPoint

CS 551 / 645:
Introductory Computer Graphics
Color
Administrivia



Changes to assignment 2
Today’s reading material: FvD, Chapter 13
Final Exam
–
–
–
–
–
Monday, December 11th, 2000
7:00 - 10:00 p.m.
MEC 339
Check your schedule for collisions ASAP!
You will collide if you are taking any of the following:


APMA 109, 111; ITAL 101, 102; LATI 103, 201, 202
SPAN 101, 102, 201, 202
Assignment 2

For use on Windows box
– change .C extension to .cpp extension
– remove unistd.h inclusion
– remove GL.h and GLU.h inclusion. glut.h
includes these
– No memory deallocation eats through memory. If
you care, add deallocation to the ESCAPE key
handler.



sgi-10 is screwed up. You can compile on
another SGI and run on sgi-10, though
Don’t worry about the cat or horse
Do zooming with up/down. Ignore left/right.
Assignment 2

Euler angle rotations are bad
– Rotate about x, followed by rotate about y,
followed by rotate about z
– Example:



Rotate 180 degrees about x
A rotation about y will turn in the opposite direction you
expect
You can leave the code the way it is now.
We will fix it in future assignments
Color

Next topic: Color
To understand how to make realistic images, we
need a basic understanding of the physics and
physiology of vision. Here we step away from the
code and math for a bit to talk about basic
principles.
Basics Of Color

Elements of color:
Basics of Color

Physics:
– Illumination

Electromagnetic spectra
– Reflection



Material properties
Surface geometry and microgeometry (i.e., polished
versus matte versus brushed)
Perception
– Physiology and neurophysiology
– Perceptual psychology
Physiology of Vision


The eye:
The retina
– Rods
– Cones

Color!
Physiology of Vision

The center of the retina is a densely packed
region called the fovea.
– Cones much denser here than the periphery
Physiology of Vision: Cones

Three types of cones:
– L or R, most sensitive to red light (610 nm)
– M or G, most sensitive to green light (560 nm)
– S or B, most sensitive to blue light (430 nm)
– Color blindness results from missing cone type(s)
Physiology of Vision: The Retina

Strangely, rods and
cones are at the
back of the retina,
behind a mostlytransparent neural
structure that
collects their
response.
Perception: Metamers


A given perceptual sensation of color derives
from the stimulus of all three cone types
Identical perceptions of color can thus be
caused by very different spectra
Perception: Other Gotchas

Color perception is also difficult because:
– It varies from person to person
– It is affected by adaptation (stare at a light bulb… don’t)
– It is affected by surrounding color:
Perception: Relative Intensity
We are not good at judging absolute intensity
 Let’s illuminate pixels with white light on
scale of 0 - 1.0
 Intensity difference of neighboring colored
rectangles with intensities:
– 0.10 -> 0.11
– 0.50 -> 0.55

will look the same
We perceive relative intensities, not absolute
Representing Intensities





Remaining in the world of black and white…
Use photometer to obtain min and max
brightness of monitor
This is the dynamic range
Intensity ranges from min, I0, to max, 1.0
How do we represent 256 shades of gray?
Representing Intensities

Equal distribution between min and max fails
– relative change near max is much smaller than
near I0
 I0 = I 0, I 1 =

rI0, I2 = rI1= r2I0,…, I255 = rI254 = r255I0
Ex: 4 intensities
– 1/8, 1/4, 1/2, 1
Dynamic Ranges






Dynamic Range
Display
(max / min illum)
CRT:
50-200
Photo (print) 100
Photo (slide) 1000
B/W printout 100
Color printout 50
Newspaper
10
Max Perceived
Intensities, r=1.01
400-530
465
700
465
400
234
Gamma Correction

But most display devices are inherently
nonlinear: Intensity = k(voltage)g
– I.e., brightness(voltage) != 2*brightness(voltage/2)
 g is between 2.2 and 2.5 on most monitors

Common solution: gamma correction
– Post-transformation on intensities to map them to
linear range on display device:
1
– Can have separate g for R, G, B
g
yx
Gamma Correction



Some monitors perform the gamma
correction in hardware (SGI’s)
Others do not (most PCs)
Tough to generate images that look good on
both platforms (i.e. images from web pages)
Halftoning




A technique used in newspaper printing
Only two intensities are possible, blob of ink
and no blob of ink
But, the size of the blob can be varied
Also, the dither patterns of small dots can be
used
Back to color


Color is defined many ways
Computer scientists frequently use:
– Hue - The color we see (red, green, purple)
– Saturation - How far is the color from gray (pink is
less saturated than red, sky blue is less saturated
than royal blue)
– Brightness - How bright is the color
How well do we see color?

What color do we see the best?
– Yellow-green at 550 nm

What color do we see the worst?

– Blue at 440 nm
Flashback: Colortables (colormaps) for color storage

Can perceive color differences of 10 nm at
extremes (violet and red) and 2 nm between
blue and yellow
How well do we see color?



128 fully saturated hues can be distinguished
Cannot perceive hue differences with less
saturated light.
Sensitivity to changes in saturation for a fixed
hue and brightness ranges from 23 to 16
depending on hue.
Color Spaces


Three types of cones suggests color is a 3D
quantity. How to define 3D color space?
Idea: shine given wavelength () on a
screen, and mix three other wavelengths
(R,G,B) on same screen. Have user adjust
intensity of RGB until colors are identical:
CIE Color Space

The CIE (Commission Internationale
d’Eclairage) came up with three hypothetical
lights X, Y, and Z with these spectra:

Note that:
X~R
Y~G
Z~B

Idea: any wavelength  can be matched
perceptually by positive combinations of X,Y,Z
CIE Color Space

The gamut of all colors perceivable is thus a
three-dimensional shape in X,Y,Z:

For simplicity, we
often project to the
2D plane X+Y+Z=1
X = X / (X+Y+Z)
Y = Y / (X+Y+Z)
Z=1-X-Y
CIE Chromaticity Diagram (1931)
Device Color Gamuts


Since X, Y, and Z are hypothetical light
sources, no real device can produce the
entire gamut of perceivable color
Example: CRT monitor
Device Color Gamuts

The RGB color cube sits within CIE color
space something like this:
Device Color Gamuts


We can use the CIE chromaticity diagram to
compare the gamuts of various devices:
Note, for example,
that a color printer
cannot reproduce
all shades available
on a color monitor
Converting Color Spaces

Simple matrix operation:
 R'  XR
G '   YR
  
 B'  ZR

XG
YG
ZG
XB   R 
YB  G 
ZB   B 
The transformation C2 = M-12 M1 C1 yields
RGB on monitor 2 that is equivalent to a
given RGB on monitor 1
Converting Color Spaces

Converting between color models can also
be expressed as such a matrix transform:
0.11   R 
Y  0.30 0.59
 I   0.60  0.28  0.32 G 
  
 
Q  0.21  0.52 0.31   B 


Note the relative unimportance of blue in
computing the Y
YIQ is the color model used for color TV in
America. Y is luminance, I & Q are color
– Note: Y is the same as CIE’s Y
– Result: backwards compatibility with B/W TV!
HSV Color Space

A more intuitive color space
– H = Hue
– S = Saturation
– V = Value (or brightness)