Presentation is loading. Please wait.

Presentation is loading. Please wait.

Detecting Undersampling in Surface Reconstruction Tamal K. Dey and Joachim Giesen Ohio State University.

Similar presentations


Presentation on theme: "Detecting Undersampling in Surface Reconstruction Tamal K. Dey and Joachim Giesen Ohio State University."— Presentation transcript:

1 Detecting Undersampling in Surface Reconstruction Tamal K. Dey and Joachim Giesen Ohio State University

2 Surface Reconstruction A sample and PL approximation

3 Previous and recent works Functional approach Tangent plane [HDeDDMS92] Natural Neighbors [BC00] Alpha shapes [EM94] [BBCS97] Voronoi filtering Crust [AB98] Cocone [ACDL00]

4 Local feature size and sampling Medial axis Local feature size f(p)  -sampling   d(p)/f(p)

5 Crust Algorithm Compute V P Add Voronoi vertices Compute Delaunay Retain edges between samples only

6 Crust in 3D Introduce poles Filter crust triangles Filter by normals Extract manifold

7 Cocones Compute cocones Filter triangles whose duals intersect cocones Extract manifold Space spanned by vectors making angle   /8 with horizontal

8 Boundaries Only part of a surface is well sampled

9 High curvature High curvature regions are often undersampled

10 Non-smoothness Impossible to sample densely   0

11 Well sampled patch and boundary vertices S  F is well sampled if ε-sampling holds for S Restricted Voronoi on S defines boundary vertices p is interior if restricted cell has no boundary point otherwise p is boundary vertex

12 Cocones, radius and height cocones: space spanned by vectors making   /8 with the horizontal radius r(p): radius of cocone height h(p): min distance to the poles cocone neighbors N p

13 Flatness condition Vertex p is flat if 1. Ratio condition: r(p)   h(p) 2. Normal condition:  v(p),v(q)    q with p  N q

14 Boundary Detection(1 st phase) IsFlat( p, ,  ) check ratio and normal condition for V p ; if both are satisfied return true else return false end

15 Boundary detection(2 nd phase) Boundary (P, ,  ) Compute the set R of flat vertices; while  p  R and p  N q with q  R and r(p)  h(p) and  v(p),v(q)  R:=R  p; endwhile return P\R end

16 Reconstruction Cocone (P, ,  ) Compute V P ; for each p  P if p  B compute T of triangles with duals intersecting C p ; endif enfor; Extract manifold; end B:= Boundary( P, ,  )

17 Correctness Theorem 1: All deep interior vertices are flat. Definition: An interior vertex is deep if no boundary vertex contains it as cocone neighbor.

18 Correctness Assumptions: (i) S´  S with points  f(p) away from sample points p defines same set of boundary vertices as S does, where . (ii) Each boundary vertex has an interior vertex as neighbor. (iii) Each interior vertex is connected to a deep interior vertex only through interior vertex neighborhoods. Theorem 2: Boundary vertices cannot be flat. Theorem 3: Boundary() detects all and only boundary vertices.

19 Implementation Co-cone is implemented in CGAL Floating point arithmetic is faster, but produces numerical errors Exact arithmetic with integers is slow Use floating point filters Difficulty in manifold extraction step with ``false boundary vertices” due to noise and numerical error

20 Umbrella check Check if a vertex has an umbrella Declare a vertex without umbrella as a boundary vertex Prune triangles with sharp edges only if they are not incident with boundary vertices

21 Parameters theory  = 0.01, higher  in practice theory  = 1.3 ,  = 0.66-0.99 produce good result. Smaller  detects more boundaries theory  = 0.14 radians,  /6 produces good result cocone angle  /8 in theory and  /8 in practice   0.99   0.23

22 Data set foot

23 Data set Mannequin

24 Data set cactus

25 Data Set Sat

26 Data set Engine

27 Data set Oilpump

28 Nonsmoothness Repaired

29 Noise Detection (Outliers) Outliers Cleaned

30 Boundary Detection Helps Modeling by Parts

31 Arithmetic Precision Floating point is fast, but causes numerical error Exact arithmetic is slow, but produces robust results

32 Precision Floating pointExact arithmetic

33 Timings (Exact-Double) Name Delaunay Boundary Reconstruction Cactus 130- 40- 23- Cat 120-50 108-58 68-51 Engine 831-405 108-58 79-59 foot 233-99 224-119 138-103 Mannequin 135-57 137-73 85-64 Oilpump 409-153 314-166 197-141 Club 171-74 179-95 112-84

34 Timings Name #points #triangles Reconstruction(sec.) Halfsphere 245 486 0.58 Mannequin 12772 25339 74 Foot 20021 39995 122 Oilpump 30931 61548 194 Monkeysaddle 10000 19596 345 PIII, 933Mhz, 512MB

35 Conclusions Introduced a measure radius/height ratio for skininess of Voronoi cells Helps in detecting boundaries and sharp features Recently we have used the radius/height ratio for sample decimation (CCCG01) Used it for supersize data (PVG01) Can we use it to eliminate noise? More applications 543,652 points 143 -> 28 min 3.5 million points Unfin-> 198 min


Download ppt "Detecting Undersampling in Surface Reconstruction Tamal K. Dey and Joachim Giesen Ohio State University."

Similar presentations


Ads by Google