Computing Shapes and Their Features from Point Samples Tamal K. Dey The Ohio State University Problems Surface reconstruction (Cocone) Medial axis (Medial) Shape segmentation and matching (SegMatch) Department of Computer and Information Science 2/52 Surface Reconstruction Point Cloud ` Surface Reconstruction Department of Computer and Information Science 3/52 Voronoi based algorithms 1. Alpha-shapes (Edelsbrunner, Mucke 94) 2. Crust (Amenta, Bern 98) 3. Natural Neighbors (Boissonnat, Cazals 00) 4. Cocone (Amenta, Choi, Dey, Leekha, 00) 5. Tight Cocone (Dey, Goswami, 02) 6. Power Crust (Amenta, Choi, Kolluri 01) Department of Computer and Information Science 4/52 Medial Axis Department of Computer and Information Science 5/52 Local Feature Size [Amenta-Bern-Eppstein 98] f(x) f(x) is the distance to medial axis Department of Computer and Information Science 6/52 -Sampling [ABE98] x Each x has a sample within f(x) distance Department of Computer and Information Science 7/52 Voronoi/Delaunay Department of Computer and Information Science 8/52 Normal and Voronoi Cells(3D) [Amenta-Bern SoCG98] Department of Computer and Information Science 9/52 Poles P+ P- Department of Computer and Information Science 10/52 Normal Lemma P+ The angle between the pole vector vp np vp and the normal np is O(). PDepartment of Computer and Information Science 11/52 Cocone Algorithm [Amenta-Choi-Dey-Leekha SoCG00] Simplified/improved the Crust Only single Voronoi computation Analysis is simpler No normal filtering step Proof of homeomorphism Department of Computer and Information Science 12/52 Cocone vp= p+ - p is the pole vector Space spanned by vectors within the Voronoi cell making angle > 3/8 with vp or -vp Department of Computer and Information Science 13/52 Cocone Algorithm Department of Computer and Information Science 14/52 Cocone Guarantees Theorem: Any point x S is within O()f(x) distance from a point in the output. Conversely, any point of output surface has a point x S within O()f(x) distance. Theorem: The output surface computed by Cocone from an -sample is homeomorphic to the sampled surface for sufficiently small . Department of Computer and Information Science 15/52 Undersampling [Dey-Giesen SoCG01] Boundaries Small features Non-smoothness Department of Computer and Information Science 16/52 Boundaries Department of Computer and Information Science 17/52 Small Features High curvature regions are often undersampled Department of Computer and Information Science 18/52 Data Set Engine Department of Computer and Information Science 19/52 Nonsmoothness Department of Computer and Information Science 20/52 Watertight Surfaces Department of Computer and Information Science 21/52 Tight Cocone [Dey-Goswami SM03] Department of Computer and Information Science 22/52 Tight COCONE Principle Compute the Delaunay triangulation of the input point set. Use COCONE along with detection of undersampling to get an initial surface with undersampled regions identified. Stitch the holes from the existing Delaunay triangles without inserting any new point. Effectively, the output surface bounds one or more solids. Department of Computer and Information Science 23/52 Result Sharp corners and edges of AutoPart can be reconstructed. Department of Computer and Information Science 24/52 Timings PIII, 933Mhz, 512MB Department of Computer and Information Science 25/52 Noisy Data – Ram Head Front view Rear view Department of Computer and Information Science 26/52 Example movie file Mannequin Department of Computer and Information Science 27/52 Bunny data • Bunny Point data Tight Cocone Robust Cocone Department of Computer and Information Science 28/52 Medial axis from point sample Dey-Zhao SM02 • [Hoffman-Dutta 90],[Culver-Keyser-Manocha 99],[Giblin-Kimia 00], [Foskey-Lin-Manocha 03] • Voronoi based [Attali-Montanvert-Lachaud 01] • Power shape : guarantees topology, uses power diagram [Amenta-Choi-Kolluri 01] • Medial : Approximates the medial axis as a Voronoi subcomplex and has converegence guarantee. [Dey-Zhao 02] Department of Computer and Information Science 29/52 Medial Axis • Medial Ball • Medial Axis • -Sampling Department of Computer and Information Science 30/52 Geometric Definitions • • • • • Delaunay Triangulation Voronoi Diagram Pole and Pole Vector Tangent Polygon Umbrella Up Department of Computer and Information Science 31/52 Filtering conditions Our goal: approximate the medial axis as a subset of Voronoi facets. • Medial axis point m • Medial angle θ • Angle and Ratio Conditions Department of Computer and Information Science 32/52 Angle Condition • Angle Condition [θ ]: nσ,t pq maxσU p 2 Department of Computer and Information Science 33/52 Ratio Condition • Ratio Condition []: min U p || p q || R Department of Computer and Information Science 34/52 Algorithm MEDIAL ( P ) 1 Compute VP and DP ; 2 F ; 3 for each p P 4 Compute U p ; 5 for each Delaunay edge pq U p 6 if pq satisfies Angle Condition 7 F : F Dual pq 8 endif 9 endfor 10 endfor 11 Output cloure( F ) 8 or Ratio Condtion 8 Department of Computer and Information Science 35/52 Theorem • Let F be the subcomplex computed by MEDIAL. As approaches zero: • Each point in F converges to a medial axis point. • Each point in the medial axis is converged upon by a point in F. Department of Computer and Information Science 36/52 Experimental Results Department of Computer and Information Science 37/52 Experimental Results Department of Computer and Information Science 38/52 Experimental Results Department of Computer and Information Science 39/52 Computation Time • Pentium PC • 933 MHz CPU • 512 MB memory • CGAL 2.3 • C++ • O1 optimization Department of Computer and Information Science 40/52 Medial Axis from a CAD model CAD model Point Sampling Medial Axis Department of Computer and Information Science 41/52 Medial Axis from a CAD model CAD model Point Sampling Medial Axis Department of Computer and Information Science 42/52 Example movie file Anchor Medial Department of Computer and Information Science 43/52 Segmentation and matching • • • • • Siddiqui-Shokoufandeh-Dickinson-Zucker 99 (Shock graphs) Hilaga-Shinagawa-Kohmura-Kunni 01 (Reeb graph) Osada-Funkhouser-Chazelle-Dobkin 01 (Shape distribution) Bespalov-Shokoufandeh-Regli-Sun 03(spectral decomposition) Dey-Giesen-Goswami 03 (Morse theory) Department of Computer and Information Science 44/52 Segmentation and matching Dey-Giesen-Goswami 03 • Segment a shape into `features’ • Match two shapes based on the segmentation Department of Computer and Information Science 45/52 Feature definition Continuous Flow Discretization Discrete flow Department of Computer and Information Science 46/52 Anchor set • Height fuinction: : Shape h( x) inf p p x 2 for all x R d • Anchor set: A( x) arg min p p x Department of Computer and Information Science 47/52 Driver and critical points • Anchor Hull : H(x) is convex hull of A(x) • Driver : d(x) is the closest point on the anchor hull • Critical points Department of Computer and Information Science 48/52 Flow • Vector field v : x d ( x) if x is regular and 0 otherwise v( x) x d ( x) • Flow induced by v Fix points of are the critical points of h Department of Computer and Information Science 49/52 Features • F(x) = closure(S(x)) for a maximum x Department of Computer and Information Science 50/52 Flow by discrete set • Driver d(x): closest point on dual to the Voronoi object containing x • Vector field: x d ( x) v( x) x d ( x) • This also induces a flow Department of Computer and Information Science 51/52 Stable manifolds • Gabriel edges are stable manifolds of saddles • Stable manifolds of maxima are shaded Department of Computer and Information Science 52/52 Stable manifolds • Feature F(x) = closure(S(x)) for a maximum x Department of Computer and Information Science 53/52 Stable manifolds in 3D • Stable manifolds are not subcomplexes of Delaunay • We approximate the stable manifolds with Delaunay simplices Department of Computer and Information Science 54/52 ~ Algorithm for F ( x) Department of Computer and Information Science 55/52 Merging • Small perturbations create insignificant features • Sampling artifacts introduce more segmentations • Merge stable manifolds Department of Computer and Information Science 56/52 Results (2D) Department of Computer and Information Science 57/52 Results (3D) Department of Computer and Information Science 58/52 Results (3D) Department of Computer and Information Science 59/52 Matching CAD models Department of Computer and Information Science 60/52 Conclusions Noisy samples: Reconstruction and segmentation Improving segmentation and matching for CAD models (requires understanding of nonsmoothness) Software available from http://www.cis.ohio-state.edu/~tamaldey/cocone.html http://www.cis.ohio-state.edu/~tamaldey/segmatch.html Acknowledgement: NSF, DARPA, ARO, CGAL Department of Computer and Information Science 61/52