Differential Geometry

Slides:



Advertisements
Similar presentations
3D Geometry for Computer Graphics
Advertisements

2D/3D Shape Manipulation, 3D Printing
Chapter 9: Vector Differential Calculus Vector Functions of One Variable -- a vector, each component of which is a function of the same variable.
Differential geometry I
Boundary Detection - Edges Boundaries of objects –Usually different materials/orientations, intensity changes.
Discrete Differential Geometry Planar Curves 2D/3D Shape Manipulation, 3D Printing March 13, 2013 Slides from Olga Sorkine, Eitan Grinspun.
Chapter 14 Section 14.5 Curvilinear Motion, Curvature.
Derivation of Engineering-relevant Deformation Parameters
Computer Aided Engineering Design
Sorce: Suggestive Contours for Conveying Shape. (SIGGRAPH 2003) Doug DeCarlo, Adam Finkelstein, Szymon Rusinkiewicz, Anthony Santella. 1 Suggestive Contours.
Chapter 13 – Vector Functions
Geometric Modeling Notes on Curve and Surface Continuity Parts of Mortenson, Farin, Angel, Hill and others.
Instructor: Mircea Nicolescu Lecture 6 CS 485 / 685 Computer Vision.
DREAM PLAN IDEA IMPLEMENTATION Introduction to Image Processing Dr. Kourosh Kiani
Extended Gaussian Images
Chapter 26 Geometrical Optics. Units of Chapter 26 The Reflection of Light Forming Images with a Plane Mirror Spherical Mirrors Ray Tracing and the Mirror.
Edge Detection. Our goal is to extract a “line drawing” representation from an image Useful for recognition: edges contain shape information –invariance.
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Lecture 4 Edge Detection
Chapter 4.1 Mathematical Concepts
Chapter 4.1 Mathematical Concepts. 2 Applied Trigonometry Trigonometric functions Defined using right triangle  x y h.
EE663 Image Processing Edge Detection 2 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals.
Lecture 4: Feature matching
CSCE 590E Spring 2007 Basic Math By Jijun Tang. Applied Trigonometry Trigonometric functions  Defined using right triangle  x y h.
Automatic Image Alignment (feature-based) : Computational Photography Alexei Efros, CMU, Fall 2005 with a lot of slides stolen from Steve Seitz and.
CS485/685 Computer Vision Dr. George Bebis
Feature extraction: Corners and blobs
Segmentation (Section 10.2)
Announcements Since Thursday we’ve been discussing chapters 7 and 8. “matlab can be used off campus by logging into your wam account and bringing up an.
Image Primitives and Correspondence
Information that lets you recognise a region.
Edge Detection.
Joshua I. Cohen Brown University September 2001 – May 2002 “Computational Procedures For Extracting Landmarks In Order To Represent The Geometry Of A Sherd”
Computer Vision P. Schrater Spring 2003
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
00/4/103DVIP-011 Part Three: Descriptions of 3-D Objects and Scenes.
SMOOTH SURFACES AND THEIR OUTLINES Elements of Differential Geometry The second fundamental form Koenderink’s Theorem Aspect graphs More differential geometry.
SIGGRAPH 2007 Tilke Judd Frédo Durand Edward Adelson.
CS 450: Computer Graphics REVIEW: OVERVIEW OF POLYGONS
Alignment Introduction Notes courtesy of Funk et al., SIGGRAPH 2004.
Machine Vision for Robots
SMOOTH SURFACES AND THEIR OUTLINES II The second fundamental form Koenderink’s Theorem Aspect graphs More differential geometry A catalogue of visual events.
Discrete Images (Chapter 7) Fourier Transform on discrete and bounded domains. Given an image: 1.Zero boundary condition 2.Periodic boundary condition.
Chapter 10-Vector Valued Functions Calculus, 2ed, by Blank & Krantz, Copyright 2011 by John Wiley & Sons, Inc, All Rights Reserved.
SMOOTH SURFACES AND THEIR OUTLINES Koenderink’s Theorem The second fundamental form Koenderink’s Theorem Aspect graphs More differential geometry A catalogue.
Edges. Edge detection schemes can be grouped in three classes: –Gradient operators: Robert, Sobel, Prewitt, and Laplacian (3x3 and 5x5 masks) –Surface.
Course 13 Curves and Surfaces. Course 13 Curves and Surface Surface Representation Representation Interpolation Approximation Surface Segmentation.
Fundamentals of Differential Geometry ( Part 2 )
Andrew Nealen / Olga Sorkine / Mark Alexa / Daniel Cohen-Or SoHyeon Jeong 2007/03/02.
Lecture 7: Features Part 2 CS4670/5670: Computer Vision Noah Snavely.
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.
Extracting features from spatio-temporal volumes (STVs) for activity recognition Dheeraj Singaraju Reading group: 06/29/06.
Geometric Modeling using Polygonal Meshes Lecture 3: Discrete Differential Geometry and its Application to Mesh Processing Office: South B-C Global.
Light Reflection and Mirrors.  The Law of Reflection  When a wave traveling in two dimensions encounters a barrier, the angle of incidence is equal.
A Flexible New Technique for Camera Calibration Zhengyou Zhang Sung Huh CSPS 643 Individual Presentation 1 February 25,
Edges.
Chapter 9: Image Segmentation
CSE 6367 Computer Vision Image Operations and Filtering “You cannot teach a man anything, you can only help him find it within himself.” ― Galileo GalileiGalileo.
CSCE 552 Fall 2012 Math By Jijun Tang. Applied Trigonometry Trigonometric functions  Defined using right triangle  x y h.
Computer Vision Image Features Instructor: Dr. Sherif Sami Lecture 4.
Transformation methods - Examples
Geometrical Optics.
CSE 554 Lecture 8: Alignment
Interest Points EE/CSE 576 Linda Shapiro.
(MTH 250) Calculus Lecture 22.
Edge Detection CS485/685 Computer Vision Dr. George Bebis.
The SIFT (Scale Invariant Feature Transform) Detector and Descriptor
Descriptions of 3-D Objects and Scenes
Presentation transcript:

Differential Geometry Some figures from Cipolla & Giblin and DeCarlo et al.

Goal Analyze qualitative shape of surface (e.g., convex vs. concave vs. saddle) Understand surface curvatures Approach: parameterize surface, look at derivatives in different directions

Surface Parameterization Locally smooth, continuous parameterization (u,v)  s(u,v) = [X(u,v), Y(u,v), Z(u,v)]T Consider only on local patches of the surface

Surface Parameterization Locally smooth, continuous parameterization (u,v)  s(u,v) = [X(u,v), Y(u,v), Z(u,v)]T Consider only on local patches of the surface r defines an “immersed surface” iff Jacobian has rank 2 (otherwise locally looks like a line)

Tangent Planes and Normals The vectors su and sv define a tangent plane Defined iff su and sv are not parallel Equivalent to saying s is an immersed surface Unit surface normal = normal to tangent plane n sv su

Vectors on Surfaces Consider two vectors w1 and w2 defined at a point p on the surface Basic operation: how to compute dot product? Trivial if vectors defined in terms of (x,y,z) What if defined in terms of (u,v)? That is, In general,

First Fundamental Form I is called the first fundamental form Symmetric bilinear form on the surface Specific to a particular parameterization Matrix is identity iff su and sv are orthonormal

Curves on Surfaces Consider a curve c(t) = (U(t), V(t)) Velocity along the curve So, I describes how much surface is “stretched” Does not change if surface is “bent” without stretching

Areas on Surfaces For a region on a surface, area is given by So, sqrt of det of matrix I gives stretch of area

Normal Curves A normal curve is defined by the intersection of a surface and a plane containing the normal

Normal Curvatures Curvature  of a curve is reciprocal of radius of circle that best approximates it Curvature of a normal curve is called a normal or sectional curvature Defined at a point p in a particular direction w

Finding Normal Curvatures Consider a normal curve c(t) = (U(t), V(t)) n n+dn c(t) r r

Second Fundamental Form So, need to find component of change in normal in the c’ direction as we move along curve (i.e., in the c’ direction) More generally, can ask about change in normal in direction w1 as we move in direction w2 This is called the second fundamental form II(w1, w2) Also a symmetric bilinear form on the surface

Second Fundamental Form Note sign convention – this produces positive curvature for convex surfaces with outward-pointing normals

II and Second Derivatives So II is related to the second derivatives of the surface

Normal Curvatures The normal curvature in the direction w can be written as

Principal Curvatures The normal curvature varies between some minimum and maximum – these are the principal curvatures 1 and 2 These occur in the principal directions d1 and d2 Eigenvalues and eigenvectors of the matrix I-1II 1 and 2 must exist and be real (symmetric matrix) d1 and d2 must be perpendicular to each other

Frénet Frames d1, d2, and n are mutually perpendicular Natural to define a coordinate system according to these directions – the Frénet frame In this coordinate system, the matrix of II becomes diagonal

Euler’s Formula Working in the Frénet frame, Euler’s formula for normal curvature  is the angle between w and d1

Computing Curvatures on Meshes For range images: use (u,v) parameterization of range image, finite differences for derivatives Options for general meshes: Fit a smooth surface, compute analytically Compute normal curvature to neighboring vertices, least squares fit to a quadratic in  Compute normal curvature to neighboring vertices, do SVD (curvatures are some function of singular values)

Gaussian and Mean Curvature The Gaussian curvature K = 1 2 The mean curvature H = ½ (1 + 2) Equal to the determinant and half the trace, respectively, of the curvature matrix Enable qualitative classification of surfaces

Positive Gaussian Curvature: Elliptic Points Convex/concave depending on sign of H Tangent plane intersects surface at 1 point

Negative Gaussian Curvature: Hyperbolic Points Tangent plane intersects surface along 2 curves

Zero Gaussian Curvature: Parabolic Points Tangent plane intersects surface along 1 curve

Properties of Curvatures Attached shadows always created along parabolic lines Sign of curvature of image contours (silhouettes) equals sign of Gaussian curvature of surface Inflections of the contour occur at parabolic points on the surface Apparent motion of specular highlights ~ 1/

Using Curvatures for Recognition/Matching Curvature histograms: compute 1 and 2 throughout surface, create 2D histograms Invariant to translation, rotation Alternative: use 2 / 1 – also invariant to scale Shape index: Curvatures sensitive to noise (2nd derivative…), so sometimes just use sign of curvatures

Using Curvatures for Segmentation Sharp creases in surface (i.e., where |1|is large) tend to be good places to segment Option #1: look for maxima of curvature in the first principal direction Much like Canny edge detection Nonmaximum suppression, hysteresis thresholding Option #2: optimize for both high curvature and smoothness using graph cuts, snakes, etc.

Using Curvatures for Visualization Ridge and valley lines often drawn Local maxima and minima of larger (in magnitude) curvature in principal direction Makes interpretation of surfaces easier in some cases Suggestive contours Zeros of normal curvature in projection of view direction into tangent plane Positive derivative of curvature in projected view dir