Non-Photorealistic Photorealistic Rendering Rendering Non- Pen-and-Ink Illustration Pen-and-Ink Illustration
Stylized Illustrations Stylized Illustrations As compared to photorealistic photorealistic images, images, As compared to sometimes: sometimes: • Convey more information Convey more information • • Allow more compact storage Allow more compact storage • • More easily reproduced More easily reproduced • • More attractive More attractive •
Illustration Applications Illustration Applications Architectural design Architectural design Medical texts Medical texts Industrial repair manuals Industrial repair manuals
Types of Types of Non-Photorealistic Photorealistic Rendering Rendering Non- Pen-and-ink Drawings Pen-and-ink Drawings Paintings Paintings Rendering enhancements Rendering enhancements Other artistic modalities Other artistic modalities • e.g. screening, floral ornamentation, e.g. screening, floral ornamentation, • cartoons, etc. cartoons, etc.
Pen and Ink Concepts Pen and Ink Concepts Strokes Strokes • Curved lines of varying thickness and Curved lines of varying thickness and • density of placement density of placement Texture Texture • Character conveyed by collection of strokes, Character conveyed by collection of strokes, • e.g. crisp and clean vs vs. rough and sketchy . rough and sketchy e.g. crisp and clean Tone Tone • Perceived gray level across the image Perceived gray level across the image • Outline Outline • Boundary lines which disambiguate Boundary lines which disambiguate • structure information structure information
Algorithm Goal Algorithm Goal Place strokes on surfaces to achieve Place strokes on surfaces to achieve particular tone functions particular tone functions from Winkenbach Winkenbach and and from Salesin. “Rendering . “Rendering Salesin Parametric Surfaces in Pen Parametric Surfaces in Pen and Ink.” Proceedings of Proceedings of and Ink.” . Page 471. SIGGRAPH 96 SIGGRAPH 96 . Page 471.
Algorithm Components Algorithm Components Tone specification Tone specification Stroke placement Stroke placement Stroke width computation Stroke width computation
Tone Specification Tone Specification Gray levels may be assigned according to Gray levels may be assigned according to conventional rendering: conventional rendering: • Local/global Illumination Local/global Illumination • • Material color Material color • • Texture mapping Texture mapping • • Bump mapping Bump mapping • • Environment mapping Environment mapping • • Shadow mapping Shadow mapping •
Stroke Placement Stroke Placement v u Places strokes along isoparameter isoparameter lines of lines of Places strokes along parameterized surface parameterized surface Choose density according to maximum Choose density according to maximum gray level and maximum allowable stroke gray level and maximum allowable stroke width width
Planar Maps Planar Maps Compute visibility and store in planar map Compute visibility and store in planar map • Planar map is partition of image plane Planar map is partition of image plane • • Each partition corresponds to a visible Each partition corresponds to a visible • portion of a primitive (curved surfaces are portion of a primitive (curved surfaces are tessellated). tessellated). • Shadows may be explicitly represented as Shadows may be explicitly represented as • map partitions map partitions Clip strokes according to planar map Clip strokes according to planar map • Reduces computation and allows rendering Reduces computation and allows rendering • with hidden surfaces already removed with hidden surfaces already removed Create outlines from partition boundaries Create outlines from partition boundaries
Planar Map Example Planar Map Example from Winkenbach Winkenbach and and from Salesin. “Rendering . “Rendering Salesin Parametric Surfaces in Pen Parametric Surfaces in Pen and Ink.” Proceedings of Proceedings of and Ink.” . Page 474. SIGGRAPH 96 SIGGRAPH 96 . Page 474.
Stroke Width Stroke Width Vary width across each stroke line Vary width across each stroke line → → ( S: (u,v) → → (x x w ,y y w ,z z w ) S: (u,v) w , w , w ) → ( → ) → → V: (x x w ,y y w ,z z w (x x s ,y y s ) V: ( w , w , w ) s , s ) → → ( M = V S : (u,v) → → (x x s ,y y s ) M = V S : (u,v) s , s ) Use Jacobian Jacobian of M to estimate divergence of M to estimate divergence Use of lines in screen space of lines in screen space Adjust width to account for divergence and Adjust width to account for divergence and desired tone along each stroke desired tone along each stroke
Advanced Techniques Advanced Techniques Recursive filler strokes Recursive filler strokes • Allow larger gaps between strokes, then fill Allow larger gaps between strokes, then fill • gaps by adding new strokes gaps by adding new strokes Stippling Stippling • draw stipple pattern along strokes draw stipple pattern along strokes • Cross hatching Cross hatching • use more than one hatching direction use more than one hatching direction • Prioritized strokes Prioritized strokes • stroke stroke thicknesses thicknesses determined in prioritized determined in prioritized • order order
Pen and Ink Example Pen and Ink Example from Winkenbach Winkenbach and and from Salesin. “Rendering . “Rendering Salesin Parametric Surfaces in Pen Parametric Surfaces in Pen and Ink.” Proceedings of Proceedings of and Ink.” . Page 474. SIGGRAPH 96 SIGGRAPH 96 . Page 474.
Pen and Ink Example Pen and Ink Example from Winkenbach Winkenbach and and from Salesin. “Rendering Salesin . “Rendering Parametric Surfaces in Pen Parametric Surfaces in Pen and Ink.” Proceedings of Proceedings of and Ink.” . Page 475. SIGGRAPH 96 . Page 475. SIGGRAPH 96
Pen and Ink Example Pen and Ink Example from Winkenbach Winkenbach and and Salesin Salesin. “Rendering Parametric Surfaces . “Rendering Parametric Surfaces from in Pen and Ink.” Proceedings of SIGGRAPH 96 Proceedings of SIGGRAPH 96 . Page 476. . Page 476. in Pen and Ink.”
Other Variants of Pen and Ink Other Variants of Pen and Ink Orientable Textures Textures Orientable • Greyscale Greyscale image as input (describes tone) image as input (describes tone) • • User specifies direction field and stroke User specifies direction field and stroke • character character • Stroke shaded image output Stroke shaded image output • Real-time NPR Real-time NPR • Fast visibility computation of silhouette and Fast visibility computation of silhouette and • other feature edges other feature edges • Render visible edges in modified styles Render visible edges in modified styles •
Orientable Textures Examples Textures Examples Orientable from Salissbury Salissbury et al. “ et al. “Orientable Orientable Textures for Textures for Imabe Imabe-Based -Based from Pen-and-Ink Illustration.” Proceedings of SIGGRAPH 97 Proceedings of SIGGRAPH 97 . Pages . Pages Pen-and-Ink Illustration.” 402, 403. 402, 403.
Real-Time NPR Examples Real-Time NPR Examples from Markosian Markosian et al. “Real-Time et al. “Real-Time from Nonphotorealistic Rendering.” Rendering.” Proceedings Proceedings Nonphotorealistic of SIGGRAPH 97 . Page 420. . Page 420. of SIGGRAPH 97
Videos Videos • Salisbury, Wong, Hughes, and Salisbury, Wong, Hughes, and Salesin Salesin. . • “Orientable Orientable Texture for Image-Based Pen- Texture for Image-Based Pen- “ Proceedings of and-Ink Illustration.” Proceedings of and-Ink Illustration.” SIGGRAPH 97. SIGGRAPH 97. Markosian, , Kowalski Kowalski, and Hughes. “Real- , and Hughes. “Real- • Markosian • Time Nonphotorealistic Nonphotorealistic Rendering.” Rendering.” Time Proceedings of SIGGRAPH 97 . . Proceedings of SIGGRAPH 97 • Banks and Turk. “Image-guided Banks and Turk. “Image-guided • Proceedings of Streamline Placement.” Proceedings of Streamline Placement.” SIGGRAPH 96. SIGGRAPH 96.
Recommend
More recommend