Presentation is loading. Please wait.

Presentation is loading. Please wait.

3D object capture Capture N “views” (parts of the object) –get points on surface of object –create mesh (infer connectivity) Hugues Hoppe –filter data.

Similar presentations


Presentation on theme: "3D object capture Capture N “views” (parts of the object) –get points on surface of object –create mesh (infer connectivity) Hugues Hoppe –filter data."— Presentation transcript:

1 3D object capture Capture N “views” (parts of the object) –get points on surface of object –create mesh (infer connectivity) Hugues Hoppe –filter data (optional) “Align” views: bring different pieces in common coordinate frame –align each view with “master” view OR –iterate pairwise alignment OR –all - to - all alignment “Stitch” pieces together – overlapping surfaces, then “sew” together ( Greg Turk ) OR –construct volumetric representation, then extract surface (Brian Curless; Kari Pulli)

2 Point acquisition Manual –magnetic devices –articulated arm Automatic –passive scanning: 2 cameras - hard to do point correspondence –active scanning: camera + projective device laser (Cyberware) : sheet of light moving relative to object LCD projector “tag” each vertical line => need log(Xres) projective images Xp(Xc,Yc) R,T

3 View alignment Pairwise. Basic Tool: iterated closest point –for every vertex of each mesh, find closest point on other mesh –discard pairs that have at least one point on a boundary –compute rigid body transformation (R, T) for one of the meshes to minimize sum of squares for all distances (=>has closed form solution) –perform movement; repeat until distance below threshold All to all –consider physical model of N bodies where 2 interact if the corresponding meshes have overlapping regions. –compute equilibrium state

4 Mesh Zippering Combine surfaces –delete overlapping portions (use measurement “confidence” to decide from which mesh) –triangulate space between meshes –if surfaces not close enough => extend mesh boundary with perpendicular “wall”

5 Volumetric methods Equate each view with volume information –stuff “in front” of surface (between surface and camera / projector) => certainly empty –stuff “behind” surface => probably “full” –combine volume info from different views; extract full/empty boundary More precise: scalar function over space: distance to closest point on object surface –negative = “outside”; positive = “inside” –combine: perfect data => take min(abs(di)) real data: for each sample point, for meshes, compute weighted average (based on confidence) –extract 0-level isosurface, using Marching Cubes Advantages: –“water-tight” objects - can have surfaces not seen by sensor, but inferred from empty/full info

6 Marching Cubes –scalar samples on uniform grid –for each little cube, creates a surface is sample signs differ at cube corners –fast implementation with table lookup Volume representation –signed distance => smoother surface. Store only near object surface. –hierarchical volume rep (oct-trees) => better memory usage; don’t have to “guess” grid resolution


Download ppt "3D object capture Capture N “views” (parts of the object) –get points on surface of object –create mesh (infer connectivity) Hugues Hoppe –filter data."

Similar presentations


Ads by Google