Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated...

24
1 April 25, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/ Pen-and-Ink Illustrations Painterly Rendering Cartoon Shading Technical Illustrations Acknowledgment: Steve Lin Non-Photorealistic Rendering 15-462 Computer Graphics I Lecture 22 04/25/2002 15-462 Graphics I 2 Goals of Computer Graphics Traditional: Photorealism Sometimes, we want more – Cartoons Artistic expression in paint, pen-and-ink Technical illustrations Scientific visualization [Lecture 21]

Transcript of Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated...

Page 1: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

1

April 25, 2002Frank PfenningCarnegie Mellon University

http://www.cs.cmu.edu/~fp/courses/graphics/

Pen-and-Ink IllustrationsPainterly RenderingCartoon ShadingTechnical Illustrations

Acknowledgment: Steve Lin

Non-Photorealistic Rendering

15-462 Computer Graphics ILecture 22

04/25/2002 15-462 Graphics I 2

Goals of Computer Graphics

• Traditional: Photorealism• Sometimes, we want more

– Cartoons– Artistic expression in paint, pen-and-ink– Technical illustrations– Scientific visualization [Lecture 21]

Page 2: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

2

04/25/2002 15-462 Graphics I 3

Non-Photorealistic Rendering

“A means of creating imagery that does not aspire to realism” - Stuart Green

David GaineyCassidy Curtis 1998

04/25/2002 15-462 Graphics I 4

Some NPR Categories

• Pen-and-Ink illustration– Techniques: cross-hatching, outlines, line art,etc.

• Painterly rendering– Styles: impressionist, expressionist, pointilist, etc.

• Cartoons– Effects: cartoon shading, distortion, etc.

• Technical illustrations– Characteristics: Matte shading, edge lines, etc.

• Scientific visualization– Methods: splatting, hedgehogs, etc.

Page 3: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

3

04/25/2002 15-462 Graphics I 5

Emergence of NPR

2D Paint (Pixel Oriented)Bitmap paint systems

2D Paint (Brush Oriented)User intervention

2D/2.5D Paint Post-ProcessingAutomatically generated from

augmented images

3D RenderersAutomatically generated

based on 3D data

3D Photorealistic RenderersTraditional Computer

Graphics

04/25/2002 15-462 Graphics I 6

Outline

• Pen-and-Ink Illustrations• Painterly Rendering• Cartoon Shading• Technical Illustrations

Page 4: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

4

04/25/2002 15-462 Graphics I 7

Pen-and-Ink Illustrations

• Strokes– Curved lines of varying thickness and density

• Texture– Character conveyed by collection of strokes

• Tone– Perceived gray level across image or segment

• Outline– Boundary lines that disambiguate structure

04/25/2002 15-462 Graphics I 8

Pen-and-Ink Examples

Winkenbach and Salesin 1994

Page 5: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

5

04/25/2002 15-462 Graphics I 9

Rendering Polygonal Surfaces

3D Model Lighting

Visible Polygons

Stroke Clipping

OutlineDrawing

Camera

ProceduralStroke Texture

How much 3D information do we preserve?

04/25/2002 15-462 Graphics I 10

Strokes and Stroke Textures

• Stroke generated by moving along straight path• Stroke perturbed by

– Waviness function (straightness)– Pressure function (thickness)

• Collected in stroke textures– Tone dependent– Resolution dependent– Orientation dependent

• How automatic are stroke textures

Page 6: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

6

04/25/2002 15-462 Graphics I 11

Stroke Texture Examples

Winkenbach and Salesin 1994

04/25/2002 15-462 Graphics I 12

Prioritized Stroke Textures

• Technique for limiting human intervention• Collection of strokes with associated priority• When rendering

– First draw highest priority only– If too light, draw next highest priority, etc.– Stop if proper tone is achieved

• Procedural stroke textures• Support scaling• Also applies to non-procedural stroke textures

Page 7: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

7

04/25/2002 15-462 Graphics I 13

Stroke Texture OperationsScaling

Changing Viewing Direction(Anisotropic)

04/25/2002 15-462 Graphics I 14

Indication

• Selective addition of detail• Difficult to automate• User places detail segments interactively

Page 8: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

8

04/25/2002 15-462 Graphics I 15

Indication ExampleBold strokes indicate detail segments

With indication Without indication

04/25/2002 15-462 Graphics I 16

Outlines

• Boundary or interior outlines• Accented outlines for shadowing and relief• Dependence on viewing direction• Suggest shadow direction

Page 9: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

9

04/25/2002 15-462 Graphics I 17

Rendering Parametric Surfaces

• Stroke orientation and density– Place strokes along isoparameter lines– Choose density for desired tone– tone = width / spacing

u

v

04/25/2002 15-462 Graphics I 18

Stroke Width

• Adjust stroke width retain uniform tone

Winkenbach and Salesin 1996

Page 10: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

10

04/25/2002 15-462 Graphics I 19

Parametric Surface Example

Constant-density hatching

Smooth shading with single light

Longer smoother strokes for glass

Environment mapping

Update reflection coefficient

Standard rendering techniques are still important!

04/25/2002 15-462 Graphics I 20

Parametric Surface Example

Winkenbach and Salesin 1996

Page 11: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

11

04/25/2002 15-462 Graphics I 21

Orientable Textures

• Inputs– Grayscale image to specify desired tone– Direction field– Stroke character

• Output– Stroke shaded

image

Salisbury et al. 1997

04/25/2002 15-462 Graphics I 22

Orientable Stroke Texture Example

Salisbury et al. 1997

Page 12: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

12

04/25/2002 15-462 Graphics I 23

Outline

• Pen-and-Ink Illustrations• Painterly Rendering• Cartoon Shading• Technical Illustrations

04/25/2002 15-462 Graphics I 24

Painterly Rendering

• Physical simulation– User applies brushstrokes– Computer simulates media

• Automatic painting– User provides input image or 3D model– User specifies painting parameters– Computer generates all strokes

• Subject to controversy

Page 13: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

13

04/25/2002 15-462 Graphics I 25

Physical Simulation Example

Curtis et al. 1997, Computer Generated Watercolor

04/25/2002 15-462 Graphics I 26

Computer-Generated Watercolor

• Complex physical phenomena for artistic effect• Build simple approximations• Paper generation as random height field

• Simulated effects

Page 14: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

14

04/25/2002 15-462 Graphics I 27

Fluid Dynamic Simulation

• Use water velocity, viscosity, drag, pressure, pigment concentration, paper gradient

• Paper saturation and capacity

• Discretize and use cellular automata

04/25/2002 15-462 Graphics I 28

Interactive Painting

User input

Simulationin progress

Finished painting

Page 15: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

15

04/25/2002 15-462 Graphics I 29

Automatic Painting Example

Hertzmann 1997

04/25/2002 15-462 Graphics I 30

Automatic Painting from Images

• Start from color image: no 3D information• Paint in resolution-based layers

– Blur to current resolution– Select brush based on current resolution– Find area of largest error compared to real image– Place stroke– Increase resolution and repeat

• Layers are painted coarse-to-fine• Styles controled by parameters

Page 16: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

16

04/25/2002 15-462 Graphics I 31

Layered Painting

Blurring

Adding detail with smaller strokes

04/25/2002 15-462 Graphics I 32

Brush Strokes

• Start at point of maximal error– Calculate difference between original image and

image painted so far

• Direction perpendicular to gradient– Stroke tends to follow equally shaded area

• Stopping criteria– Difference between brush color and original image

color exceeds threshold– Maximal stroke length reached

Page 17: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

17

04/25/2002 15-462 Graphics I 33

Longer Brush Strokes

• For longer, curved brush strokes– Repeat straight line algorithm– Stop, again on length or difference threshold

• Use anti-aliased cubic B-spline

04/25/2002 15-462 Graphics I 34

Painting Styles

• Style determined by parameters– Approximation threshold– Brush sizes– Curvature filter– Blur factor– Minimum and maximum stroke lengths– Opacity– Grid size– Color jitter

• Encapsulate parameter settings as style

Page 18: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

18

04/25/2002 15-462 Graphics I 35

Some Styles

• “Impressionist”– No random color, 4 · stroke length · 16– Brush sizes 8, 4, 2; approximation threshold 100

• “Expressionist”– Random factor 0.5, 10 · stroke length · 16– Brush sizes 8, 4, 2; approximation threshold 50

• “Pointilist”– Random factor ~0.75, 0 · stroke length · 0– Brush sizes 4, 2; approximation threshold 100

• Not convincing to artists

04/25/2002 15-462 Graphics I 36

Style Examples

Page 19: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

19

04/25/2002 15-462 Graphics I 37

Outline

• Pen-and-Ink Illustrations• Painterly Rendering• Cartoon Shading• Technical Illustrations

04/25/2002 15-462 Graphics I 38

Cartoon Shading

• Shading model in 2D cartoon– Use material color and shadow color– Present lighting cues, shape, and context

• Stylistic• Used in many animated movies• Developing real-time techniques for games

Page 20: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

20

04/25/2002 15-462 Graphics I 39

Cartoon Shading as Texture Map

• Apply shading as 1D texture map

u=N·L

Carl Marshall 2000

04/25/2002 15-462 Graphics I 40

Shading Variations

Flat shading Shadow Shadow + highlight

Page 21: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

21

04/25/2002 15-462 Graphics I 41

Outline

• Pen-and-Ink Illustrations• Painterly Rendering• Cartoon Shading• Technical Illustrations

04/25/2002 15-462 Graphics I 42

Technical Illustrations

• Level of abstraction– Accent important 3D properties– Dimish or eliminate extraneous details

• Do not represent reality

Photo

Ruppel 1995

Page 22: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

22

04/25/2002 15-462 Graphics I 43

Conventions in Technical Illustrations

• Black edge lines• Cool to warm shading colors• Single light source; shadows rarely used

04/25/2002 15-462 Graphics I 44

Technical Illustration Example

Phong shadingMetal shading(anisotropic) Edge lines

Tone shading(cool to warm shift)

Page 23: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

23

04/25/2002 15-462 Graphics I 45

The Future

• Smart graphics– Design from the user’s perspective– HCI, AI, Perception

• Artistic graphics– More tools for the creative artist– New styles and ideas

04/25/2002 15-462 Graphics I 46

Movies

• Baxter et al, DAB: Interactive Haptic Painting with 3D Virtual Brushes, SIGGRAPH’01

• Kowalski et al., Art-based Rendering of Fur, Grass and Trees, SIGGRAPH’99

Page 24: Non-Photorealistic Renderingfp/courses/02-graphics/pdf-2up/...3D Renderers Automatically generated based on 3D data 3D Photorealistic Renderers Traditional Computer Graphics 04/25/2002

24

04/25/2002 15-462 Graphics I 47

Summary

• Beyond photorealism– Artistic appeal– Technical explanation and illustration– Scientific visualization

• Use all traditional computer graphics tools• Employ them in novel ways• Have fun!

04/25/2002 15-462 Graphics I 48

Preview

• Assignment 7 due tonight• Tuesday Guest Lecture

– Wayne Wooten, Pixar

• Thursday– Assignment 7 images and movies– Assignment 8 due before class– 2nd half review for final