Surface Reconstruction Petra Surynková Charles University in Prague Faculty of Mathematics and Physics petra.surynkova@mff.cuni.cz
Outline of the presentation My work up to now Surfaces of Building Practice Bachelor and Diploma Thesis Motivation Problem area brief introduction to the surface reconstruction Several algorithms Delaunay triangulations, Voronoi diagrams, convex hull thinning algorithms algorithms for surface reconstruction Choice of software Conclusions and future work
My work up to now I Surfaces of Building Practice Bachelor and Diploma Thesis surfaces - basic properties, mathematical description, categorization and application in technical practice process of construction and parametrical description of surfaces parametrical description main form of input for mathematical and modeling software design calculation selected surfaces in details using modern mathematical software and computer modeling creation of 3-D 3 D models, static images
My work up to now II Some results from diploma thesis derivation of parametrical description of surfaces e.g. right parabolic conoid c b 2 puv (, ) = avu,,(1 v) u + c 2 u v k q l
My work up to now II Some results from diploma thesis 3D modeling e.g. Frezier cylindroid
My work up to now II Some results from diploma thesis 3D D modeling e.g. screw ruled surface - helicoid
My work up to now II Some results from diploma thesis 3D D modeling e.g. srew circular surface
Motivation Effort to continue in similar subject choice the topic for doctoral thesis Visualization of data from 3D scanning Digital documentation of real building objects possibility to manipulate with surfaces in mathematical and modeling computer software important in architecture engineering reconstruction and documentation of historic buildings and sculptures with 3D scanners, restoring of monuments After that follows 3D modeling
Problem area I Input finite set of points in space (in computer graphics called point clouds) Output real data may contain over million points (we know 3D coordinates) from 3D scanner reconstruction of surface parametrical or implicit description of surface 3D model of reconstructed surface
Problem area I Input finite set of points in space (in computer graphics called point clouds) Output real data may contain over million points (we know 3D coordinates) from 3D scanner How to obtain the output reconstruction of surface parametrical or implicit description of surface 3D model of reconstructed surface?
Problem area II Input set of points mostly redundant some points are useless, any important or new information input set of points necessary to reduce - first step Surface reconstruction another steps dividing 3D space (Spatial subdivision) dividing circumscribed box of the input set of points into independent cells - e.g. tetrahedrization (tetrahedral meshes) finding the parts of mesh which are connected with surface approximation of the surface
source: www.windform.it Input set of points
Piecewise linear interpolant source: www.windform.it
CAD model source: www.windform.it
Several algorithms Algorithms for partitioning planar (spatial) 2 3 domain ( ) Delaunay triangulations, Voronoi diagrams, convex hull Algorithms for reducing input set of points thinning algorithms Algorithms for surface reconstruction α - shapes, crust algorithm, cocone algorithm based on the Delaunay tetrahedrizations or Voronoi diagrams finding those parts of mesh which are connected with surface
Triangulation Triangulation of the finite set X of points in plane is a collection of triangles in the plane with these conditions the vertices of triangles are points from X any pair of two distinct triangles intersect at most at one vertex or along one edge the convex hull of X coincides with the area covered by union of triangles the triangulation may not be unique triangulation is planar graph nodes = vertices of triangles, edges provide the connections in the graph
Delaunay triangulation (DT) The most frequently used triangulation Some properties of DT the circumcircle for each of its triangles doesn t t contain any point from X in its interior for 4 points on the same circle - DT isn t t unique DT maximizes the minimal angle DT doesn t t exist for a set of points on the same line (is undefined for this case) generalization in 3D space (or higher dimensions) Delaunay tetrahedrization (tetrahedra, circumsphere) Algorithms Post optimize, Divide and conquer
Delaunay triangulation
Delaunay tetrahedrization The input set of points vertices of the cube and its centre
Voronoi diagram (VD) Dual graph of Delaunay triangulation decomposition of the plane into Voronoi regions Voronoi region of p X ( X - finite set of points in the plane) is the set of points in the plane which are at least as close to p as to any other point in X Some properties of VD VD is planar graph Voronoi regions cover the whole plane convex polygons Voronoi regions don t t share interior points,, if a point belongs to two V. regions then lies on the bisector generalization in 3D space (or higher dimensions) Voronoi regions convex polyhedra Algorithms Divide and conquer, dual graph of DT, Fortune s s algorithm
p Point p is the nearest point for each point of Voronoi region of point p Voronoi diagram
Duality DT and VD centre of circumcircle of the triangle is the vertex of Voronoi region
Thinning algorithms I 2 Let X be a finite planar set of points and let 2 f : denote a function (only function values f X, taken at the points in X, are given) we have piecewise linear interpolant over a suitable triangulation (e.g. Delaunay) at the points of set X The aim - construction of subsets Notes T X each piecewise linear interpolant L( f, T Y ) at the points of subset Y (satisfying L( f, T ) is close to the given Y )( y) = f( y) function values f X convex hull of Y X coincides with the convex hull of (no removing extremal points) there are some removal criterion it depends on the underlying application Y X (, ) L f T X X
Thinning algorithms II Removal criterion * for Y X, a point y Y is said to be removable from iff it satisfies η * ( Y \ y, X) = min η( Y \ y, X) y Y Y Notes η ( Y, X) = L( f, T ) f Y X X piecewise linear interpolant L( f, T Y ) at the point of set X η( Y, X) depends on both the input function values and on the selected triangulation method (, ) L f T Y X
2 X a finite planar set of points Delaunay triangulation 2 of X
in the following step this point will not be removed Piecewise linear interpolant removable point * y
Algorithms for surface reconstruction There is wide range of application Dividing circumscribed box of the input set of points into disjoint cells there is a variety of spatial decomposition techniques developed for different applications Finding the cells related to the shape described by input set The selection of the cells two ways surface-oriented volume-oriented oriented
Alpha-shapes I By Edelsbrunner and Mücke 1. The decomposition Delaunay tetrahedrization of the given set of points 2. Removing tetrahedra, triangles and edges of the DT using α - balls as eraser sphere with radius α each tetrahedron, triangle or edge of the DT whose minimum surrounding sphere doesn t t fit into the eraser sphere is eliminated we obtain so-called α - shape (consist of points, edges, faces, tetrahedra)
Alpha-shapes II 3. Extraction of triangles from α - shape using following rule let us have two possible spheres of radius α through all three points of a triangle, if at least one of these doesn t t contain any other point of the input set triangle belongs to the surface Disadvantages choice of a suitable α - experimentally for the uniform input sets of points α = α -shape = DT
Alpha-shapes III source: http://www.lems.brown.edu/vision/people/leymarie/refs/comp Geom/Edelsbrunner.html
Crust algorithm I By Amenta and Bern 1. The decomposition Voronoi diagram of the given set of points 2. For each point s of the input set S + a) if s doesn t t lie on the convex hull, p - the farthest + Voronoi vertex of Voronoi region of s from s, n + s n Voronoi vertex of Voronoi region of from, - the vector b) if lies on the convex hull, - the average of then normals of the adjacent triangles - c) p - the Voronoi vertex of VR of s with negative projection + on n that is farthest from s 3. Delaunay tetrahedrization of + - P - set of all poles p and p S P sp +
Crust algorithm II 4. Keeping only those triangles for which all three vertices are points in the input set S three dimensional crust set of triangles that resembles the surface Disadvantages some triangles in three dimensional crust aren t t correct
Choice of software Choice of suitable software for implementation of algorithms Why Matlab? = MATrix LABoratory high-level language and interactive environment for technical computing 2D and 3D graphics functions for data visualization tools for exploration, design and problem solving commonly used for these purposes
Conclusions and future work Implementation of known eventually new algorithms for surface reconstruction start with computer-generated data and continue with real data from 3D scanners compare the algorithms Data visualization Creation of 3D models
References Edelsbrunner Herbert (2001): Geometry and topology for mesh generation.. Cambridge University Press,, Cambridge, United Kingdom. Iske Armin (2004): Multiresolution methods in scattered data modelling. Technische Universität München, Germany. Preparata Franco P., Shamos Michael Ian (1985): Computational geometry. Springer-Verlag Verlag, New York, USA. Mencl Robert, Müller Heinrich (1997): Interpolation and Approximation of Surfaces from Three-Dimensional Scattered Data Points.. State of The Art Report, EUROGRAPHICS 98.