Presentation is loading. Please wait.

Presentation is loading. Please wait.

GATE-540 1 Reconstruction from Point Cloud (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager.

Similar presentations

Presentation on theme: "GATE-540 1 Reconstruction from Point Cloud (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager."— Presentation transcript:

1 GATE-540 1 Reconstruction from Point Cloud (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager SimBT Inc. e-mail : Game Technologies Program – Middle East Technical University – Spring 2010 Reference: Hugues et al, Surface Reconstruction from Unorganized Points

2 GATE-540 2 Outline Reconstruction from point clouds

3 GATE-540 3 Goals Develop 3D Analysis Algorithms: –Reconstruction –Segmentation –Feature Detection –Labeling –Matching –Classification –Retrielval –Recognition –Clustering

4 GATE-540 4 Goal of Surface Reconstruction Have a set of unorganized points Reconstruct a surface model that best approximates the real surface

5 GATE-540 5 Data Sources Surfaces from range data Surfaces from contours (slices of images) Interactive surface sketching

6 GATE-540 6 Terminology A surface: compact, orientable two dimentional monifold A simplicial surface: A piecewise linear surface with triangular faces X = {x 1,..., x n } : sampled data points on or near an unknown surface M M = {y 1,..., y n } : real points on unknown surface M that maps X

7 GATE-540 7 Terminology p-dense : ?? e i or δ : maximum error of data source x i = y i ± e i Features of M that are small compared to δ will not be recoverable. It is not possible to recover features of M in regions where insufficient sampling has occured.

8 GATE-540 8 Problem Statement & Algorithm Goal: –To determine a surface N that approximates an unknown surface M An algorithm proposed by Hugues et al, 1992. Consists of two stages: 1) Estimate signed geometric distance to the unknown surface M 2) Estimate unknown surface M using a contouring algorithm

9 GATE-540 9 Define a Signed Distance Function Associate an oriented plane (tangent plane) with each of the data points. Tangent plane is a local linear approximation to the surface. Used to define signed distance function to surface. N sampled point tangent plane signed distance estimated surface point

10 GATE-540 10 Tangent Plane Nbhd(x i ) : k-neighborhood of x i Tangent plane center of x i (O i ) : centroid of Nbhd(x i ) Tangent plane normal of x i (N i ) : determined using principle component analysis of Nbhd(x i ) sampled point x i k-neighborhood of x i

11 GATE-540 11 Principle Component Analysis Involves a mathematical procedure that transforms a number of possibly correlated variables into a smaller number of uncorrelated variables called principal components. Normal of tangent plane might be found in opposite direction ??

12 GATE-540 12 Consistent Tangent Plane Orientation If two neigbors are consistently oriented, –Their tangent planes should be facing almost the same direction. –Otherwise one of them should be flipped.

13 GATE-540 13 Consistent Tangent Plane Orientation Model the problem as a graph optimization Each O i will have a corresponding V i in graph Connect V i and V j is O i and O j are “sufficiently” close. Cost on edges encodes the degree to which N i and N j are consistently oriented. Maximize the total cost on the graph. –NP-hard –Use an approximation algorithm.

14 GATE-540 14 Euclidian Minimum Spanning Three (EMST) Surface is assumed to be a single connected component, –The graph should be connected. A simple connected graph for a set of points that tends to connect neighbors is EMST. EMST over tangent planes is not sufficiently dense! –Enrich it by adding an edge (i,j) if o i is in the k-neighborhood of o j. –Result is called Reimannian Graph.

15 GATE-540 15 Reimannian Graph A connected graph Reimannian Graph EMST over tangent planes

16 GATE-540 16 Simple Algorithm Arbitrarily choose an orientation for some plane Propogate the orientation to neigbors in Reimannian Graph. Order of propagation is important!

17 GATE-540 17 A Good Propagation Order Favor propagation from o i to o j if unoriented planes are nearly parallel. Assign cost as 1 – |N i *N j | –A cost is small if parallel A fovorable propagation order: –Travers mimimum spanning tree (MST) dot product

18 GATE-540 18 Assigning Orientations Assign +z orientation to point in graph that has largest z coordinate. Travers the tree in depth first order. Oriented tangent planes

19 GATE-540 19 Computing Distance Function Signed distance f(p) f(p) of a point p to unknown surface M: –distance between p and closest point z Є M –multiplied by ±1 depending on the side of the surface p lies in –z is unknown, thus use closest o i

20 GATE-540 20 Computing Distance Function z = p – ((p-o i )*N i )*N i If d(z,X) < (p+δ) then// graph is p-dense f(p) = (p-o i )*Ni Else f(p) = undefined Defined ones create a zero set (estimate for M)

21 GATE-540 21 Contour Tracing Contour tracing is to extract iso-surface from a scalar function. A variation of matching cubes is used Cube sizes should be less than p+δ –But larger increases the speed and reduces the number of triangle facets created

22 GATE-540 22 Contour Tracing Visit the cubes only intersect the zero set. No intersection if the signed distance is unefined in any vertex within a cube.

23 GATE-540 23 Collapse Edges Contain triangles with arbitrary poor ascpect ratio. Collapse edges in post processing

24 GATE-540 24 Collapse Edges

25 GATE-540 25 Sample Results

Download ppt "GATE-540 1 Reconstruction from Point Cloud (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager."

Similar presentations

Ads by Google