cs g140 graduate computer graphics

68
July 4, 2022 1 College of Computer and Information Science, Northeastern University CS G140 Graduate Computer Graphics Prof. Harriet Fell Spring 2006 Lecture 8 – March 20, 2006

Upload: nikita

Post on 13-Feb-2016

24 views

Category:

Documents


0 download

DESCRIPTION

CS G140 Graduate Computer Graphics. Prof. Harriet Fell Spring 2006 Lecture 8 – March 20, 2006. Today’s Topics. Gouraud and Phong Shading --------------------------- C o l o r Perception mostly ala Shirley et al. Light – Radiometry Color Theory Visual Perception - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CS G140 Graduate Computer Graphics

April 22, 2023 1College of Computer and Information Science, Northeastern University

CS G140Graduate Computer Graphics

Prof. Harriet FellSpring 2006

Lecture 8 – March 20, 2006

Page 2: CS G140 Graduate Computer Graphics

April 22, 2023 2College of Computer and Information Science, Northeastern University

Today’s Topics

• Gouraud and Phong Shading---------------------------• Color Perception mostly ala Shirley et al.

Light – Radiometry Color Theory Visual Perception

---------------------------• Animation

Page 3: CS G140 Graduate Computer Graphics

April 22, 2023 3College of Computer and Information Science, Northeastern University

Flat Shading

• A single normal vector is used for each polygon.

• The object appears to have facets.

http://en.wikipedia.org/wiki/Phong_shading

Page 4: CS G140 Graduate Computer Graphics

April 22, 2023 4College of Computer and Information Science, Northeastern University

Gouraud Shading • Average the normals for

all the polygons that meet a vertex to calculate its surface normal.

• Compute the color intensities at vertices base on the Lambertian diffuse lighting model.

• Average the color intensities across the faces.

This image is licensed under the Creative Commons Attribution License v. 2.5.

Page 5: CS G140 Graduate Computer Graphics

April 22, 2023 5College of Computer and Information Science, Northeastern University

Phong Shading• Gouraud shading lacks

specular highlights except near the vertices.

• Phong shading eliminates these problems.

• Compute vertex normals as in Gouraud shading.

• Interpolate vertex normals to compute normals at each point to be rendered.

• Use these normals to compute the Lambertian diffuse lighting.

http://en.wikipedia.org/wiki/Phong_shading

Page 6: CS G140 Graduate Computer Graphics

April 22, 2023 6College of Computer and Information Science, Northeastern University

Color Systems

• RGB• CCMMYYK• HVS• YIQ• CIE = XYZ for standardized color

Page 7: CS G140 Graduate Computer Graphics

April 22, 2023 7College of Computer and Information Science, Northeastern University

Light – RadiometryThings You Can Measure

• Think of light as made up of a large number of photons.

• A photon has position, direction, and wavelength . is usually measured in nanometers 1 nm = 10-9 m = 10 angstroms

• A photon has a speed c that depends only on the refractive index of the medium.

• The frequency f = c/. The frequency does not change with medium.

Page 8: CS G140 Graduate Computer Graphics

April 22, 2023 8College of Computer and Information Science, Northeastern University

Spectral Energy

• The energy q of a photon is given byhcq hf

• h = 6.63*10-34 Js, is Plank’s Constant.

all photons with wavelength within

/ 2 of

photonq

Q

Page 9: CS G140 Graduate Computer Graphics

April 22, 2023 9College of Computer and Information Science, Northeastern University

Spectral Energy

0

limQ Q

We just use small for computation, but not so that the quantum nature of light interferes.

For theory we let 0.

Page 10: CS G140 Graduate Computer Graphics

April 22, 2023 10College of Computer and Information Science, Northeastern University

Radiance• Radiance and spectral radiance describe the

amount of light that passes through or is emitted from a particular area, and falls within a given solid angle in a specified direction.

• Radiance characterizes total emission or reflection, while spectral radiance characterizes the light at a single wavelength or frequency.

• http://en.wikipedia.org/wiki/Radiance

Page 11: CS G140 Graduate Computer Graphics

April 22, 2023 11College of Computer and Information Science, Northeastern University

Radiance Definition

Radiance is defined by                                     

wherethe approximation holds for small A and Ω, L is the radiance (W·m-2·sr-1), Φ is the radiant flux or power (W), θ is the angle between the surface normal and the specified direction, A is the area of the source (m2), and Ω is the solid angle (sr).

The spectral radiance (radiance per unit wavelength) is written Lλ.

2

cos cosdL

dAd A

Page 13: CS G140 Graduate Computer Graphics

Irradiance E watt per square metre

W·m−2 power incident on a surface.

Sometimes confusingly called "intensity".

Radiant emittance / Radiant exitance

M watt per square metre

W·m−2 power emitted from a surface.

Sometimes confusingly called "intensity".

Spectral radiance

orLν

watt per steradian per metre3 or

watt per steradian per square metre per Hertz

W·sr−1·m−3

or

W·sr−1·m−2·Hz−1

commonly measured in W·sr−1·m−2·nm−1

Spectral irradiance

orEν

watt per metre3 orwatt per square metre per hertz

W·m−3

orW·m−2·Hz−1

commonly measured in W·m−2·nm−1

http://en.wikipedia.org/wiki/Radiance

Page 14: CS G140 Graduate Computer Graphics

April 22, 2023 14College of Computer and Information Science, Northeastern University

PhotometryUsefulness to the Human Observer

Given a spectral radiometric quantity fr() there is a related photometric quantity

800 nm

380 nm683p r

lmf y f dW

where y is the luminous efficiency function of the human visual system.

y is 0 for < 380 nm, the ultraviolet range.y then increases as increases until = 555 nm, pure green.y then decreases, reaching 0 when = 800 nm, the boundary with the infrared region.

Page 15: CS G140 Graduate Computer Graphics

April 22, 2023 15College of Computer and Information Science, Northeastern University

1931 CIE Luminous Efficiency Function

Page 16: CS G140 Graduate Computer Graphics

April 22, 2023 16College of Computer and Information Science, Northeastern University

Luminance

800 nm

380 nm683 lmY y L d

W

Y is luminance when L is spectral radiance.lm is for lumens and W is for watts.

Luminance describes the amount of light that passes through or is emitted from a particular area, and falls within a given solid angle.

Page 17: CS G140 Graduate Computer Graphics

April 22, 2023 17College of Computer and Information Science, Northeastern University

Color

response k w L d Given a detector, e.g. eye or camera,

The eye has three type of sensors, cones, for daytime color vision.

This was verified in the 1800’s.

Wyszecki & Stiles, 1992 show how this was done.

Page 18: CS G140 Graduate Computer Graphics

April 22, 2023 18College of Computer and Information Science, Northeastern University

Tristimulus Color Theory

S s A d

M m A d

L l A d

Assume the eye has three independent sensors. Then the response of the sensors to a spectral radiance A() is

If two spectral radiances A1 and A2 produce the same (S, M, L), they are indistinguishable and called metamers.

Blue receptors = Short

Green receptors = Medium

Red Receptors = Long

Page 19: CS G140 Graduate Computer Graphics

April 22, 2023 19College of Computer and Information Science, Northeastern University

Three Spotlights

R() G()

B()

R

G

B

S s R d

S s G d

S s B d

Similarly for MR, MG, MB, LR, LG, LB.

Page 20: CS G140 Graduate Computer Graphics

April 22, 2023 20College of Computer and Information Science, Northeastern University

Response to a Mixed Light

rR() gG()

bB()

Scale the lights with control knobs and combine them to form

A() = rR() + gG() + bB()

The S response to A() is rSR + gSG + bSB.

Page 21: CS G140 Graduate Computer Graphics

April 22, 2023 21College of Computer and Information Science, Northeastern University

rR()

Matching Lights

a subject uses control knobs to set the fraction of R(), G(), and B() to match the given color.

Given a light with spectral radiance C(), gG()

bB()

Page 22: CS G140 Graduate Computer Graphics

April 22, 2023 22College of Computer and Information Science, Northeastern University

Matching Lights

Assume the sensor responses to C() are (SC, MC, LC), thenSC = rSR + gSG + bSB

MC = rMR + gMG + MSB

LC = rLR + gLG + bLB

Users could make the color matches.So there really are three sensors.But, there is no guarantee in the equations that r, g,

and b are positive or less than 1.

Page 23: CS G140 Graduate Computer Graphics

April 22, 2023 23College of Computer and Information Science, Northeastern University

Matching LightsNot all test lights can be matched with positive r, g, b.Allow the subject to mix combinations of R(), G(),

and B() with the test color.If C() + 0.3R() matches 0·R() + gG() + bB() then

r = -0.3.Two different spectra can have the same r, g, b.Any three independent lights can be used to specify a

color.What are the best lights to use for standardizing color

matching?

Page 24: CS G140 Graduate Computer Graphics

April 22, 2023 24College of Computer and Information Science, Northeastern University

The Monochromatic Primaries• The three monochromatic primaries are at

standardized wavelengths of 700 nm (red)

• Hard to reproduce as a monchromatic beam, resulting in small errors.

• Max of human visual range. 546.1 nm (green) 435.8 nm (blue).

• The last two wavelengths are easily reproducible monochromatic lines of a mercury vapor discharge.

– http://en.wikipedia.org/wiki/CIE_1931_color_space

Page 25: CS G140 Graduate Computer Graphics

April 22, 2023 25College of Computer and Information Science, Northeastern University

CIE 1931 RGB Color Matching Functions

How much of r, g, b was needed to match each .

Page 26: CS G140 Graduate Computer Graphics

April 22, 2023 26College of Computer and Information Science, Northeastern University

CIE Tristimulus Valuesala Shirley

• The CIE defined the XYZ system in the 1930s.

• The lights are imaginary.• One of the lights is grey – no hue

information.• The other two lights have zero luminance

and provide only hue information, chromaticity.

Page 27: CS G140 Graduate Computer Graphics

April 22, 2023 27College of Computer and Information Science, Northeastern University

Chromaticity and Luminance

Luminance

Chromaticity

Page 28: CS G140 Graduate Computer Graphics

April 22, 2023 28College of Computer and Information Science, Northeastern University

CIE 1931 xy Chromaticity Diagram

Gamut and Location of the CIE RGB primaries

Page 29: CS G140 Graduate Computer Graphics

April 22, 2023 29College of Computer and Information Science, Northeastern University

CIE XYZ color space

1. Color matching functions were to be everywhere greater than or equal to zero.

2. The color matching function = the photopic luminous efficiency function.

3. x=y=1/3 is the the white point.4. Gamut of all colors is inside the triangle [1,0],

[0,0], [0,1].5. = zero above 650 nm.

http://en.wikipedia.org/wiki/CIE_1931_color_space

y

, ,x y z color matching functions

z

Page 30: CS G140 Graduate Computer Graphics

April 22, 2023 30College of Computer and Information Science, Northeastern University

CIE 1931 Standard Colorimetric Observer XYZ Functions

between 380 nm and 780 nm

Page 31: CS G140 Graduate Computer Graphics

April 22, 2023 31College of Computer and Information Science, Northeastern University

XYZ Tristimulus Values for a Color with Spectral Distribution I()

0

0

0

X I x

Y I y

Z I z

11 12 13

21 22 2321

31 32 33

0.49 0.31 0.201 1 0.17697 0.81240 0.01063

0.176970.00 0.01 0.99

X b b b R RY b b b G G

bZ b b b B B

Chromaticity = , ,

Luminance

1, , , ,

X Yx yX Y Z X Y Z

Y

x y YxYX Y Z Yy y

Page 32: CS G140 Graduate Computer Graphics

April 22, 2023 32College of Computer and Information Science, Northeastern University

Page 33: CS G140 Graduate Computer Graphics

April 22, 2023 33College of Computer and Information Science, Northeastern University

Adding R, G, and B Values

http://en.wikipedia.org/wiki/RGB

Page 34: CS G140 Graduate Computer Graphics

April 22, 2023 34College of Computer and Information Science, Northeastern University

RGB Color Cube

(1, 1, 1)

(1, 1, 0)

(0, 0, 1)

(0, 1, 1)

(0, 1, 0)

(1, 0, 1)

(1, 0, 0)

Page 35: CS G140 Graduate Computer Graphics

April 22, 2023 35College of Computer and Information Science, Northeastern University

CCMMYY Complements of RRGGBB

• CCMMYYKK are commonly used for inks.• They are called the subtractive colors.• Yellow ink removes blue light.

Page 36: CS G140 Graduate Computer Graphics

April 22, 2023 36College of Computer and Information Science, Northeastern University

Subtractive Color Mixing

Page 37: CS G140 Graduate Computer Graphics

April 22, 2023 37College of Computer and Information Science, Northeastern University

CCMMYYKK CCMMYY RRGGBB in Theoryin Theory

CCCMMYYKK = (CC, MM, YY, K)

CCCMMYY = (CC , MM , YY) = (CC(1 − K) + K, MM(1 − K) + K, YY(1 − K) + K)

CRRGGBB = (RR, GG, BB) = (1 - CC, 1 - MM, 1 - YY)

= (1 – (CC(1 − K) + K), 1 – (MM(1 − K) + K), 1 – (YY(1 − K) + K))

Page 38: CS G140 Graduate Computer Graphics

April 22, 2023 38College of Computer and Information Science, Northeastern University

RRGGBB C CMMYY C CMMYYKKin Theoryin Theory

RRGGBB C CMMYYK K is not unique.is not unique.CRRGGBB = (RR, GG, BB)

CCCMMYY = (CC, MM, YY) = (1 - RR, 1 − GG, 1 − BB)

if min(CC, MM, YY) == 1 then == 1 then CCCMMYYK K = (0, 0, 0, 1)= (0, 0, 0, 1)

else K = min(CC, MM, YY)

CCCMMYYKK = ( (CC − K)/(1 − K), (MM − K) /(1 − K), (YY − K)/(1 − K), K)

This uses as much black as possible.

Page 39: CS G140 Graduate Computer Graphics

April 22, 2023 39College of Computer and Information Science, Northeastern University

CCMMYYKK CCMMYY RRGGBB in Practicein Practice

• RRGGBB is commonly used for displays.• CCMMYYKK is commonly used for 4-color

printing.• CCMMYYKK or CCMMYY can be used for displays.

CCMMYY colours mix more naturally than RRGGBB colors for people who grew up with crayons and paint.

• Printing inks do not have the same range as RRGGBB display colors.

Page 40: CS G140 Graduate Computer Graphics

April 22, 2023 40College of Computer and Information Science, Northeastern University

Time for a Break

Page 41: CS G140 Graduate Computer Graphics

April 22, 2023 41College of Computer and Information Science, Northeastern University

Color Spaces

• RGB and CMYK are color models. • A mapping between the color model and

an absolute reference color space results a gamut, defines a new color space.

Page 42: CS G140 Graduate Computer Graphics

April 22, 2023 42College of Computer and Information Science, Northeastern University

ADOBE RGB and RGBs

Page 43: CS G140 Graduate Computer Graphics

April 22, 2023 43College of Computer and Information Science, Northeastern University

RGB vs CMYK Space

Page 44: CS G140 Graduate Computer Graphics

April 22, 2023 44College of Computer and Information Science, Northeastern University

Blue

RGB(0, 0, 255) converted in Photoshop to CMYK becomes CMYK(88, 77, 0, 0) = RGB(57, 83, 164).

Page 45: CS G140 Graduate Computer Graphics

April 22, 2023 45College of Computer and Information Science, Northeastern University

Color Spaces for Designers

• Mixing colors in RGB is not natural.• Mixing colors in CMY is a bit more natural but

still not very intuitive.• How do you make a color paler?• How do you make a color brighter?• How do you make this color?• How do you make this color?• HSV (HSB) and HSL (HSI) are systems for

designers.

Page 46: CS G140 Graduate Computer Graphics

April 22, 2023 46College of Computer and Information Science, Northeastern University

HSV (Hue, Saturation, Value)HSB (Hue, Saturation, Brightness)

• Hue (e.g. red, blue, or yellow): Ranges from 0-360

• Saturation, the "vibrancy" or “purity” of the color: Ranges from 0-100% The lower the saturation of a color, the more

"grayness" is present and the more faded or pale the color will appear.

• Value, the brightness of the color: Ranges from 0-100%

Page 47: CS G140 Graduate Computer Graphics

April 22, 2023 47College of Computer and Information Science, Northeastern University

HSVhttp://en.wikipedia.org/wiki/HSV_color_space

Created in the GIMP by Wapcaplet

Page 48: CS G140 Graduate Computer Graphics

April 22, 2023 48College of Computer and Information Science, Northeastern University

HSV Cylinder

Page 49: CS G140 Graduate Computer Graphics

April 22, 2023 49College of Computer and Information Science, Northeastern University

HSV Annulus

Page 50: CS G140 Graduate Computer Graphics

April 22, 2023 50College of Computer and Information Science, Northeastern University

HSL

Alexandre Van de Sander

Page 51: CS G140 Graduate Computer Graphics

April 22, 2023 51College of Computer and Information Science, Northeastern University

RGB HSVGiven (R, G, B) 0.0 R, G, B 1.0MAX = max(R, G, B) MIN = min(R, G, B)

60 0 if and

60 360 if and

60 120 if

60 240 if

G B MAX R G BMAX MIN

G B MAX R G BMAX MINH

B R MAX GMAX MIN

R G MAX BMAX MIN

MAX MINSMAX

V MAX

Page 52: CS G140 Graduate Computer Graphics

April 22, 2023 52College of Computer and Information Science, Northeastern University

HSVRGBGiven color (H, S, V) 0.0 H 360.0, 0.0 S, V 1.0 if S == 0.0 then R =G = B =V and H and S don’t matter. else

mod 660 60

1 1 1 1

if 0 , ,if 1 , ,if 2 , ,if 3 , ,if 4 , ,if 5 , ,

i i

i

i

i

i

i

i

H HH f H

p V S q V fS t V f S

H R V G t B pH R q G V B pH R p G V B tH R p G q B VH R t G p B VH R V G p B q

Page 53: CS G140 Graduate Computer Graphics

April 22, 2023 53College of Computer and Information Science, Northeastern University

YIQNTSC Television YIQ is a linear transformation of RGB.

exploits characteristics of human visual system maximizes use of fixed bandwidth provides compatibility with B&W receivers

• Y = 0.299R + 0.587G + 0.11B luminance• I = 0.74(R - Y) - 0.27(B - Y) chrominance• Q = 0.48(R - Y) + 0.41(B - Y)

• See http://en.wikipedia.org/wiki/YIQ and discussion

Page 54: CS G140 Graduate Computer Graphics

April 22, 2023 54College of Computer and Information Science, Northeastern University

YIQ

• Y is all that is used for B&W TV• B-Y and R-Y small for dark and low

saturation colors • Y is transmitted at bandwidth 4.2 MHz• I at 1.3 MHz • Q at .7 MHz.

Page 55: CS G140 Graduate Computer Graphics
Page 56: CS G140 Graduate Computer Graphics

April 22, 2023 56College of Computer and Information Science, Northeastern University

Animation

• Keyframing Set data at key points and interpolate.

• Procedural Let mathematics make it happen.

• Physics-based Solve differential equations

• Motion Capture Turn real-world motion into animation.

Page 57: CS G140 Graduate Computer Graphics

April 22, 2023 57College of Computer and Information Science, Northeastern University

Key Principles of AnimationJohn Lasseter 1987

• Squash and stretch• Timing• Anticipation• Follow through and overlapping action• Slow-in and slow-out• Staging• Arcs• Secondary action• Straight ahead and pose-to-pose action• Exaggeration• Solid drawing skill• Appeal

» Siggraph web reference

Page 58: CS G140 Graduate Computer Graphics

April 22, 2023 58College of Computer and Information Science, Northeastern University

PowerPoint Animation

Page 59: CS G140 Graduate Computer Graphics

April 22, 2023 59College of Computer and Information Science, Northeastern University

Animated gif

Johan Ovlinger’s Trip to Earth and Back

Page 60: CS G140 Graduate Computer Graphics

April 22, 2023 60College of Computer and Information Science, Northeastern University

Pyramid of 35 Spheres

Rendered by Blotwell using POV-Ray and converted with Adobe ImageReady.

Page 61: CS G140 Graduate Computer Graphics

April 22, 2023 61College of Computer and Information Science, Northeastern University

Deformation

Page 62: CS G140 Graduate Computer Graphics

April 22, 2023 62College of Computer and Information Science, Northeastern University

Blenderfree software, under the terms of the

GNU General Public License

Page 63: CS G140 Graduate Computer Graphics

April 22, 2023 63College of Computer and Information Science, Northeastern University

Character Animation

Page 64: CS G140 Graduate Computer Graphics

April 22, 2023 64College of Computer and Information Science, Northeastern University

Physics-Based Animation

http://www.cs.ubc.ca/labs/imager/imager-web/Research/images/michiel.gif

Page 65: CS G140 Graduate Computer Graphics

April 22, 2023 65College of Computer and Information Science, Northeastern University

Flash Animation

Power of the Geek

Page 66: CS G140 Graduate Computer Graphics

April 22, 2023 66College of Computer and Information Science, Northeastern University

Keyframing• A frame is one of the many still images that

make up a moving picture. • A key frame is a frame that was drawn or

otherwise constructed directly by the user. • In hand-drawn animation, the senior artist would

draw these frames; an apprentice would draw the "in between" frames.

• In computer animation, the animator creates only the first and last frames of a simple sequence; the computer fills in the gap.

• This is called in-betweening or tweening.

Page 67: CS G140 Graduate Computer Graphics

April 22, 2023 67College of Computer and Information Science, Northeastern University

Flash Basics

• Media objects graphic, text, sound, video objects

• The Timeline when specific media objects should appear on

the Stage• ActionScript code

programming code to make for user interactions and to finely control object behavior

Page 68: CS G140 Graduate Computer Graphics

April 22, 2023 68College of Computer and Information Science, Northeastern University

Lord of the Rings Inside Effects