Suggestive Contours for Conveying Shape Doug DeCarlo, Adam Finkelstein, Szymon Rusinkiewicz, and Anthony Santella.

Slides:



Advertisements
Similar presentations
15.1 Si23_03 SI23 Introduction to Computer Graphics Lecture 15 – Visible Surfaces and Shadows.
Advertisements

8.1si31_2001 SI31 Advanced Computer Graphics AGR Lecture 8 Polygon Rendering.
Differential Geometry
© University of Wisconsin, CS559 Spring 2004
3D Morphing using Multiplanar Representation
Computer Graphics methods
Sorce: Suggestive Contours for Conveying Shape. (SIGGRAPH 2003) Doug DeCarlo, Adam Finkelstein, Szymon Rusinkiewicz, Anthony Santella. 1 Suggestive Contours.
Binary Shading using Geometry and Appearance Bert Buchholz Tamy Boubekeur Doug DeCarlo Marc Alexa Telecom ParisTech – CNRS Rutgers University TU Berlin.
Illustrating Smooth Surfaces Aaron Hertzmann Denis Zorin New York University Presented by Mark Blackburn, Fall 2005.
How Well Do Line Drawings Depict Shape? Forrester Cole Kevin Sanik Doug DeCarlo Adam Finkelstein Thomas Funkhouser Szymon Rusinkiewicz Manish Singh RutgersPrinceton.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
3D Graphics Rendering and Terrain Modeling
Suppose that you hold the transparency in the photograph below in front of a mirror. How will its reflection appear? Is the image: (1) inverted top-to-bottom?
1 Computer Graphics Chapter 9 Rendering. [9]-2RM Rendering Three dimensional object rendering is the set of collective processes which make the object.
Shape from Contours and Multiple Stereo A Hierarchical, Mesh-Based Approach Hendrik Kück, Wolfgang Heidrich, Christian Vogelgsang.
Lecture 4 Edge Detection
Mesh Simplification Global and Local Methods:
1 Hardware Feature Edges June 7, 2004 Morgan McGuire and John F. Hughes Brown University NPAR 2004 Hardware Feature Edges.
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
Chapter 4 Digital Multimedia, 2nd edition Vector Graphics.
Reflection of Light. Slide 2 Luminous objects – generate their own light (the sun) Illuminated objects – reflect light (the moon) Line of Sight – a line.
Suggestive Contours Final programming assignment Advanced topics in Computer Graphics.
6.1 Vis_04 Data Visualization Lecture 6 - A Rough Guide to Rendering.
Part I: Basics of Computer Graphics Rendering Polygonal Objects (Read Chapter 1 of Advanced Animation and Rendering Techniques) Chapter
Shadows Computer Graphics. Shadows Shadows Extended light sources produce penumbras In real-time, we only use point light sources –Extended light sources.
SIGGRAPH 2007 Tilke Judd Frédo Durand Edward Adelson.
In the name of God Computer Graphics Modeling1. Today Introduction Modeling Polygon.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Formation of Images by Spherical Mirrors. For an object infinitely far away (the sun or starts), the rays would be precisely parallel.
Deformable Models Segmentation methods until now (no knowledge of shape: Thresholding Edge based Region based Deformable models Knowledge of the shape.
Shading & Texture. Shading Flat Shading The process of assigning colors to pixels. Smooth Shading Gouraud ShadingPhong Shading Shading.
7.1. Mean Shift Segmentation Idea of mean shift:
An Efficient Approach to Clustering in Large Multimedia Databases with Noise Alexander Hinneburg and Daniel A. Keim.
CS447/ Realistic Rendering -- Radiosity Methods-- Introduction to 2D and 3D Computer Graphics.
Processing Images and Video for an Impressionist Effect Author: Peter Litwinowicz Presented by Jing Yi Jin.
Intelligent Scissors for Image Composition Anthony Dotterer 01/17/2006.
Introduction to Rational Equations 15 November 2010.
CSE Real Time Rendering Week 2. Graphics Processing 2.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Lumo: Illumination for Cel Animation Scott F. Johnston.
Light, Reflection, and Refraction Chapters 14 and 15.
CVPR 2003 Tutorial Recognition and Matching Based on Local Invariant Features David Lowe Computer Science Department University of British Columbia.
Andrew Nealen / Olga Sorkine / Mark Alexa / Daniel Cohen-Or SoHyeon Jeong 2007/03/02.
Vector Graphics Digital Multimedia Chap 이병희
Normal Curvature of Surface p  N T Local geometry at a surface point p:  surface normal N. The plane containing N and T cuts out a curve  on the surface.
Geometric Modeling using Polygonal Meshes Lecture 3: Discrete Differential Geometry and its Application to Mesh Processing Office: South B-C Global.
112/5/ :54 Graphics II Image Based Rendering Session 11.
CS 325 Introduction to Computer Graphics 03 / 29 / 2010 Instructor: Michael Eckmann.
Orientable Textures for Image- Based Pen-And-Ink Illustration Michael P. Salisbury Michael T. Wong John F. Hughes David A. Salesin SIGGRAPH 1997 Andrea.
Shape from Shading Course web page: vision.cis.udel.edu/cv February 26, 2003  Lecture 6.
CISC 110 Day 3 Introduction to Computer Graphics.
1Ellen L. Walker 3D Vision Why? The world is 3D Not all useful information is readily available in 2D Why so hard? “Inverse problem”: one image = many.
From: CHAPTER 6– Creating Compound Objects 3DS MAX AND ITS APPLICATIONS Creating Compound Objects James Martin High School Computer Multimedia and Animation.
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
Motion / Optical Flow II Estimation of Motion Field Avneesh Sud.
Instructor: Mircea Nicolescu Lecture 7
Visible surface determination. Problem outline Given a set of 3D objects and a viewing specification, we wish to determine which lines or surfaces are.
Non-Photorealistic Rendering FORMS. Model dependent Threshold dependent View dependent Outline form of the object Interior form of the object Boundary.
Computer Graphics One of the central components of three-dimensional graphics has been a basic system that renders objects represented by a set of polygons.
09/23/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Reflections Shadows Part 1 Stage 1 is in.
Visible-Surface Detection Methods. To identify those parts of a scene that are visible from a chosen viewing position. Surfaces which are obscured by.
Computer – Aided Design Terminology You must have a generic understanding of commands and techniques which are used in a number of packages (YOU CANNOT.
Lesson 1: Reflection and its Importance
Processing Images and Video for An Impressionist Effect Automatic production of “painterly” animations from video clips. Extending existing algorithms.
Plane and Space Curves Curvature-based Features
Slope and Curvature Density Functions
Suggestive Contours with Geometry Shader
Computer Graphics One of the central components of three-dimensional graphics has been a basic system that renders objects represented by a set of polygons.
Lecture 3 : Isosurface Extraction
Presentation transcript:

Suggestive Contours for Conveying Shape Doug DeCarlo, Adam Finkelstein, Szymon Rusinkiewicz, and Anthony Santella

Problem What measures can we use besides contours and creases to convey shape? Contours are good, but they don’t convey enough of the object.

Suggestive Contours Include features that are almost contours by: 1. Extending current contours. 2. Anticipating almost contours.

How? First we need a couple of definitions 1) Contour – where dot(n,v) = 0 (aka silhouette). 2) Curvature Reciprocal of the radius of the circle that best approximates the curve at P. Radial Curvature

Idea Include the lines marking features where the surface bends sharply away from the viewer. That is, we want points where the radial curvatures is zero, and the surface is bending away from the viewer. This will give us the contours of nearby viewpoints.

Definition I Zeroes of Radial Curvature Radial curvature = 0 The derivative of the radial curvature in the direction of w is > 0.

Definition II Minima of Dot(n,v) The suggestive contour generator is the set of minima of dot(n,v) in the direction of w.

Stability As viewing vector nears n, the suggestive silhouette has many responses to even small changes in viewpoint. If (Dot(n,v) / || v ||) < cos(theta) we declare the suggestive silhouette unstable. Experimentally determined useful values for theta range from degrees.

Object Space Algorithm Comes from definition I. Calculate curvature of all vertices of the model. Linearly interpolate for Kr = 0, and save these points. Cull any points where the curvature derivative <= 0. Remove unstable points dot(n,v) / ||v|| < cos(theta) theta is chosen interactively by user.

Image Space Algorithm Comes from definition II. Render with diffuse light source at the camera - this gives approximation of dot(n,v). Check each pixel pi. Check other pixels in radius r. Call the darkest pixel in this neighborhood pmax. If pmax – pi > d and the percentage of pixels in the neighborhood darker than pi is less than s, pixel pi is added to the suggestive contour.

Results

Object Space VS Image Space Object space algorithm generates continuous strokes paths. Object space algorithm is faster than the image space algorithm for mediumly complex models and large images. Object space algorithm relies on preprocessing of curvature.

Did they produce better lines?

Problems Nasty adjustable constants for stability. (Theta in object space algorithm, r & s in the image space algorithm) What happens when we animate the picture? Unstable suggestive contours cause flickering. Objects without concavities have no suggestive contours.

Future Work Determining the causes/properties of unstable suggestive contours. See Interactive Rendering of Suggestive Contours at NPAR 2004! Applying strokes and styles. Speeding up the algorithm through randomized testing.

Discussion Time

Smoothness How do we know that these new lines/points will merge smoothly with the old ones? Two cases

Extension Intersections between suggestive contours and contours always occur at ending contours.

Definition III Contours of Nearby Viewpoints Suggestive contours are formed by those points that are contours in nearby viewpoints, but do not have corresponding contours in any closer views. If the viewpoint is within 90 degrees of p’s normal along the radial plane, p is either not visible or p is a contour, or none of p’s neighbors are contours.