80
CS 148, Summer 2012 Introduction to Computer Graphics and Imaging Justin Solomon http://imageshack.us/photo/my-images/534/sgamepixar1998brrip720p.jpg

CS 148, Summer 2012 Introduction to Computer Graphics and

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CS 148, Summer 2012 Introduction to Computer Graphics and

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAA

CS 148, Summer 2012 Introduction to Computer Graphics and Imaging

Justin Solomon

http://imageshack.us/photo/my-images/534/sgamepixar1998brrip720p.jpg

Page 2: CS 148, Summer 2012 Introduction to Computer Graphics and

http://www.youtube.com/watch?v=vS2fRUP8zJ8

Page 3: CS 148, Summer 2012 Introduction to Computer Graphics and

http://upload.wikimedia.org/wikipedia/commons/3/33/Catmull-Clark_subdivision_of_a_cube.svg

Page 4: CS 148, Summer 2012 Introduction to Computer Graphics and

~̄(u; v) = 2uv+3uv2 +7u2

Function of two variables

Degree 2 in both variables (total degree ≤ 4!)

Page 5: CS 148, Summer 2012 Introduction to Computer Graphics and

~̄(u; v) = 2uv+3uv2 +7u2

Function of two variables

Degree 2 in both variables (total degree ≤ 4!)

Page 6: CS 148, Summer 2012 Introduction to Computer Graphics and

F(u1; u2;v1; v2) = ¢ ¢ ¢

http://upload.wikimedia.org/wikipedia/commons/b/bf/B%C3%A9zier_surface_example.svg

Page 7: CS 148, Summer 2012 Introduction to Computer Graphics and

Couples u and v variables http://graphics.stanford.edu/courses/cs348a-12-winter/Handouts/handout26.pdf

Page 8: CS 148, Summer 2012 Introduction to Computer Graphics and

Simple rules for better approximation

Page 9: CS 148, Summer 2012 Introduction to Computer Graphics and

Define subdivision rule and see what

happens.

Page 10: CS 148, Summer 2012 Introduction to Computer Graphics and

http://www.idav.ucdavis.edu/education/CAGDNotes/Chaikins-Algorithm.pdf

Cut each corner

Page 11: CS 148, Summer 2012 Introduction to Computer Graphics and

Ri = Pi +(1¡ t)(Pi+1 ¡Pi)

Qi = Pi + t(Pi+1¡Pi)

Page 12: CS 148, Summer 2012 Introduction to Computer Graphics and

1 2

3

n

http://www.idav.ucdavis.edu/education/CAGDNotes/Chaikins-Algorithm.pdf

Page 13: CS 148, Summer 2012 Introduction to Computer Graphics and

1 2

3

n

http://www.idav.ucdavis.edu/education/CAGDNotes/Chaikins-Algorithm.pdf

Page 14: CS 148, Summer 2012 Introduction to Computer Graphics and

Two potential representations http://alice.loria.fr/publications/papers/2006/TOG_pgp//photo/workflow.png

Triangles Quads

Page 15: CS 148, Summer 2012 Introduction to Computer Graphics and

Two potential representations http://alice.loria.fr/publications/papers/2006/TOG_pgp//photo/workflow.png

Triangles Quads

Page 16: CS 148, Summer 2012 Introduction to Computer Graphics and
Page 17: CS 148, Summer 2012 Introduction to Computer Graphics and
Page 18: CS 148, Summer 2012 Introduction to Computer Graphics and

Topology [tuh-pol-uh-jee]:

The study of geometric properties that remain invariant under certain transformations

http://dictionary.reference.com/browse/topology?s=t

Page 19: CS 148, Summer 2012 Introduction to Computer Graphics and

http://upload.wikimedia.org/wikipedia/commons/f/fb/Dolphin_triangle_mesh.png

Geometry: “This vertex is at (x,y,z).”

Page 20: CS 148, Summer 2012 Introduction to Computer Graphics and

http://upload.wikimedia.org/wikipedia/commons/f/fb/Dolphin_triangle_mesh.png

Topology: “These vertices are connected.”

Page 21: CS 148, Summer 2012 Introduction to Computer Graphics and

Valence 6

Page 22: CS 148, Summer 2012 Introduction to Computer Graphics and

http://ars.sciencedirect.com/content/image/1-s2.0-S1524070306000385-gr2.jpg

Triangle mesh where most vertices have valence six.

Page 23: CS 148, Summer 2012 Introduction to Computer Graphics and

http://ars.sciencedirect.com/content/image/1-s2.0-S1524070306000385-gr2.jpg

Triangle mesh where most vertices have valence six.

Page 24: CS 148, Summer 2012 Introduction to Computer Graphics and

http://ars.sciencedirect.com/content/image/1-s2.0-S1524070306000385-gr2.jpg

Triangle mesh where most vertices have valence six.

Page 25: CS 148, Summer 2012 Introduction to Computer Graphics and

Have topology, need geometry.

Page 26: CS 148, Summer 2012 Introduction to Computer Graphics and

New Old

3

8

3

8

1

8

1

8

1

16

1

16

1

16

1

16

1

16

1

16

10

16

Page 27: CS 148, Summer 2012 Introduction to Computer Graphics and

New Old

3

8

3

8

1

8

1

8

1

16

1

16

1

16

1

16

1

16

1

16

10

16

Page 28: CS 148, Summer 2012 Introduction to Computer Graphics and

Provable smoothness & regularity http://www.sciencedirect.com/science/article/pii/S0010448511003095

Page 29: CS 148, Summer 2012 Introduction to Computer Graphics and

Two potential representations http://alice.loria.fr/publications/papers/2006/TOG_pgp//photo/workflow.png

Triangles Quads

Page 30: CS 148, Summer 2012 Introduction to Computer Graphics and

http://alice.loria.fr/publications/papers/2006/TOG_pgp//photo/workflow.png

Quads (and other polygons)

Page 31: CS 148, Summer 2012 Introduction to Computer Graphics and

Topological strategy

Page 32: CS 148, Summer 2012 Introduction to Computer Graphics and

Topological strategy

Page 33: CS 148, Summer 2012 Introduction to Computer Graphics and

Topological strategy

Page 34: CS 148, Summer 2012 Introduction to Computer Graphics and

Topological strategy

Page 35: CS 148, Summer 2012 Introduction to Computer Graphics and

Geometric strategy

1. New face point = centroid of old face points

Page 36: CS 148, Summer 2012 Introduction to Computer Graphics and

Geometric strategy

2. New edge point = average of old and new neighbors

Page 37: CS 148, Summer 2012 Introduction to Computer Graphics and

Geometric strategy

3. Old points P of valence n: F = av. face neighbor

R = av. midpoint neighbor P’ = (F+2R+(n-3)P)/n

Page 38: CS 148, Summer 2012 Introduction to Computer Graphics and

Bicubic b-spline surface https://graphics.stanford.edu/wikis/cs148-09-summer/Assignment3Description

Page 39: CS 148, Summer 2012 Introduction to Computer Graphics and

http://youtu.be/ltX-qUjbkdc?t=1m1s

Page 40: CS 148, Summer 2012 Introduction to Computer Graphics and

http://graphics.uni-bielefeld.de/publications/

Page 41: CS 148, Summer 2012 Introduction to Computer Graphics and

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAA

CS 148, Summer 2012 Introduction to Computer Graphics and Imaging

Justin Solomon

http://www-ui.is.s.u-tokyo.ac.jp/~takeo/research/rigid/rigid.png

Page 42: CS 148, Summer 2012 Introduction to Computer Graphics and

I/O is an abstraction http://stackoverflow.com/questions/236000/whats-a-turing-machine

Page 43: CS 148, Summer 2012 Introduction to Computer Graphics and

I/O is an object of study

Page 44: CS 148, Summer 2012 Introduction to Computer Graphics and

Computer Graphics and

Interactive Techniques

Page 45: CS 148, Summer 2012 Introduction to Computer Graphics and

Liquid crystal display (LCD) http://www.highdisplay.com/wp-content/uploads/2011/07/What-is-TFT-LCD-Monitor.jpg

Page 46: CS 148, Summer 2012 Introduction to Computer Graphics and

Twisted nematics http://mrsec.wisc.edu/Edetc/courses/colorsymp/park/index.html

Anisotropic patterns

depending on electricity, heat, etc.

Page 47: CS 148, Summer 2012 Introduction to Computer Graphics and

http://electronics.howstuffworks.com/lcd2.htm

Page 48: CS 148, Summer 2012 Introduction to Computer Graphics and

http://electronics.howstuffworks.com/lcd2.htm

Light source

Page 49: CS 148, Summer 2012 Introduction to Computer Graphics and

http://electronics.howstuffworks.com/lcd2.htm

Polarize

Page 50: CS 148, Summer 2012 Introduction to Computer Graphics and

http://electronics.howstuffworks.com/lcd2.htm

Twist light polarization

Page 51: CS 148, Summer 2012 Introduction to Computer Graphics and

http://electronics.howstuffworks.com/lcd2.htm

Only twisted light makes it through

Page 52: CS 148, Summer 2012 Introduction to Computer Graphics and

http://electronics.howstuffworks.com/lcd2.htm

Electrode controls crystals

Page 53: CS 148, Summer 2012 Introduction to Computer Graphics and

Cathode ray tube (CRT)

http://img.diytrade.com/cdimg/597243/7515356/0/1276139831/Sell_CRT_Monitor.jpg http://www.freepatentsonline.com/6741296-0-large.jpg

Page 54: CS 148, Summer 2012 Introduction to Computer Graphics and

http://en.wikipedia.org/wiki/File:Shadow_mask_vs_aperture_grille.jpg

Page 55: CS 148, Summer 2012 Introduction to Computer Graphics and

http://en.wikipedia.org/wiki/File:Shadow_mask_closeup_cursor.jpg

Have to convert from RGB to

display pattern

Page 56: CS 148, Summer 2012 Introduction to Computer Graphics and

Subpixel antialiasing http://en.wikipedia.org/wiki/ClearType

Page 57: CS 148, Summer 2012 Introduction to Computer Graphics and

Subpixel antialiasing http://en.wikipedia.org/wiki/ClearType

Color fringing

Page 58: CS 148, Summer 2012 Introduction to Computer Graphics and

Nonlinear relationship between brightness and intensity

Page 59: CS 148, Summer 2012 Introduction to Computer Graphics and

Nonlinear relationship between brightness and intensity

Perceptual Display-related

Page 60: CS 148, Summer 2012 Introduction to Computer Graphics and

Nonlinear relationship between brightness and intensity

Nonlinear relationship between intensity and hardware response

Page 61: CS 148, Summer 2012 Introduction to Computer Graphics and

displayed intensity = (maximum intensity)a°

Pixel color

Page 62: CS 148, Summer 2012 Introduction to Computer Graphics and

displayed intensity = (maximum intensity)a°

http://www.kenluckephotography.com/portfolio/monitoradjust/files/page17_2.gif

Page 63: CS 148, Summer 2012 Introduction to Computer Graphics and

displayed intensity = (maximum intensity)a°

0:5 = a° 7! ° =ln0:5

lna

Page 64: CS 148, Summer 2012 Introduction to Computer Graphics and

Apply inverse transformation

displayed intensity 2½M

µ0

255

¶°;M

µ1

255

¶°; ¢ ¢ ¢ ;M

µ255

255

¶°¾

Page 65: CS 148, Summer 2012 Introduction to Computer Graphics and

Gamma and perceptual differences in brightness cancel!

Page 66: CS 148, Summer 2012 Introduction to Computer Graphics and

Visual sensors must communicate!

http://darlingdarleen.blogspot.com/2008_01_01_archive.html

Discontinuous motion with same average velocity as implied continuous motion.

Page 67: CS 148, Summer 2012 Introduction to Computer Graphics and

Digital Light Processing (DLP) Spinning color wheel

LCD Shutter Alternate between eyes

http://graphics.stanford.edu/courses/cs148-11-fall/lectures/displays.pdf

Page 68: CS 148, Summer 2012 Introduction to Computer Graphics and

No black Max black

Four primaries!

http://en.wikipedia.org/wiki/CMYK_color_ model

Page 69: CS 148, Summer 2012 Introduction to Computer Graphics and

Electronic ink Different appearance, slow update rate

http://graphics.stanford.edu/courses/cs148-11-fall/lectures/displays.pdf

Page 70: CS 148, Summer 2012 Introduction to Computer Graphics and

Events Notify when state changes

Polling Check for changed state

http://graphics.stanford.edu/courses/cs148-11-fall/lectures/interaction.pdf

Page 71: CS 148, Summer 2012 Introduction to Computer Graphics and

+

Efficient

- Need to track state

Need to decide on events of interest

http://graphics.stanford.edu/courses/cs148-11-fall/lectures/interaction.pdf

Page 72: CS 148, Summer 2012 Introduction to Computer Graphics and

+

Cleanly deals with continuous state change

- Could miss a state change

Considerable overhead

http://graphics.stanford.edu/courses/cs148-11-fall/lectures/interaction.pdf

Page 73: CS 148, Summer 2012 Introduction to Computer Graphics and

http://www.headfuzz.co.uk/files/keyboard-matrix2-sch.png http://graphics.stanford.edu/courses/cs148-11-fall/lectures/input.pdf

Key press closes circuit; character map used to determine which key (filter bounces)

Page 74: CS 148, Summer 2012 Introduction to Computer Graphics and

http://www.bidouille.org/hack/mousecam Digital Image Correlation

Page 75: CS 148, Summer 2012 Introduction to Computer Graphics and

http://www.blogcdn.com/www.engadget.com/media/2008/12/original-mouse-08dec03.jpg

Page 76: CS 148, Summer 2012 Introduction to Computer Graphics and

http://www.xda-developers.com/wp-content/uploads/2011/09/multitouch-gesture-on-iphone-ipad-and-ipod.jpg?139d23 http://www.talkandroid.com/wp-content/uploads/2011/09/ipad-multi-touch.jpg?3995d3

DIY tables Frustrated total internal reflection, direct illumination

iPod/iPad/Perceptive Pixel Capacitive surface

Cheaper alternatives Pressure

Page 77: CS 148, Summer 2012 Introduction to Computer Graphics and

http://0.tqn.com/d/compactiongames/1/0/J/A/1/gp2.jpg https://images-na.ssl-images-amazon.com/images/G/01/videogames/detail-page/B0045FGET2.01.lg.jpg

Game controller, joystick Communicate with station

Wii remote Accelerometers, IR sensor

Page 78: CS 148, Summer 2012 Introduction to Computer Graphics and

Camera More later!

Kinect Already discussed!

Page 79: CS 148, Summer 2012 Introduction to Computer Graphics and

http://www.cyberware.com/products/scanners/lss.html http://home.12move.nl/~sh290334/dbase_force/cybergrasp.jpg

http://upload.wikimedia.org/wikipedia/commons/1/13/Rosies_ct_scan.jpg http://www.nemusiccenter.com/product_images/u/377/SM58__69613_zoom.jpg

http://onemillionlyrics.com/lyrics/scanner/rmu http://bssdigitalsound.files.wordpress.com/2008/02/midi-mk249c.jpg

Page 80: CS 148, Summer 2012 Introduction to Computer Graphics and

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAA

CS 148, Summer 2012 Introduction to Computer Graphics and Imaging

Justin Solomon

http://imageshack.us/photo/my-images/534/sgamepixar1998brrip720p.jpg http://www-ui.is.s.u-tokyo.ac.jp/~takeo/research/rigid/rigid.png