Presentation is loading. Please wait.

Presentation is loading. Please wait.

Surface Reconstruction from 3D Volume Data. Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes.

Similar presentations


Presentation on theme: "Surface Reconstruction from 3D Volume Data. Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes."— Presentation transcript:

1 Surface Reconstruction from 3D Volume Data

2 Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes.

3 Medical data sources CT (Computed Tomography) MRI (Magnetic Resonance Imaging) SPECT (Single Photon Emission Computed Tomography) Parallel slices at intervals of 1 to 5mm Gray-level images with 8 or 12 bits Usually 128x128 to 512 x 512 pixel images

4

5

6

7

8 Assumptions Structured data –Slices are parallel and along Z axis –The XY plane is sampled uniformly –The sampling is dense and uniform Spatial coherence Curvature

9 Boundary segmentation Gray levels correspond to different bone and tissue densities (Hounsfield units) Segmentation of different types of organs based on predetermined gray values Extraction of iso-surfaces: surfaces whose pixels are within predetermined range

10 Example of iso-surface extraction

11 Desired properties of the reconstruction Agree with the data –should not create new features –should contain all existing features Correct topology Position and rotation invariance Surface continuity

12 Reconstruction methods 2D methods (contour matching) extract contours in each image separately and then try to connect them to form the surface 3D methods (Marching cubes) work on consequent images, constructing pieces of the surface connecting them

13 2D-Based Reconstruction 1. 2D contours extraction. –boundary following (left hand on the wall). –sequential scanning. 2. Surface tiling – establish correspondences between points

14 2D Reconstruction: problems How to match the points? –individual 2D contour sampling does not necessarily make points correspond –closest point matching + manual corrections –smoothing contours to reduce number of points Topological problems –self intersection –inconsistent topology

15 Inherent asymmetry: – the XY plane is treated differently than the other planes. –This cause the algorithm to be dependent of the object’s orientation. 2D-based reconstruction: problems (2)

16 3D Based Reconstruction Define 3D elements as VOXELS and the connectivity between them. Two representations: Boundary element as a face Boundary element as a vertex

17 Block and beveled form duality

18 Marching cubes algorithm Look at eight pixels in two consecutive slices Determine if a surface goes through according to the values at its edges If a surface goes through, construct the surface elements and “march on” to adjacent voxels

19 The Marching Cube

20 Cube representation

21 Surface topology within a cube

22 Surface topologies: cases A cube with 8 vertices, each is either 1 (inside object) or 0 (outside) Total of 2 8 = 256 cases to examine (one bit to each vertex). The 8 bits form an 8 bit index to a 256-entries edge table. Reduce number of entries by symmetry

23 Instances of the same case

24 14 cases of surface topologies

25

26 Positioning the Surface Find the exact location of the surface’s vertices on the voxel’s edges. The original vertices gray levels are linearly interpolated. Higher order interpolation can be used but experiments show little improvement. 240 180 The Range : 310 < I < 200 200

27 Surface normals (1) Calculate unit normal for each triangle vertex (for shading calculations). The gradient Vector g, is the derivative of the density function

28 Surface normals (2) Estimate the gradient vector at the cube vertices. For each vertex : D(i,j,k) - density at pixel(i,j) in slice k, length of the cube edges. slices distance

29 Surface normals (3) Linearly interpolate the gradient at the point of intersection. Dividing the gradient by it’s length produce the unit normal at the vertex. On a surface the direction of the gradient vector is the normal to this surface. Keep only 4 slices in memory in order to calculate at all vertices of the cube.

30 Marching Cubes Algorithm (Lorenson, Cline 1987) Calculate index Read 4 slices into memory look at table Form a cube from 2 slices Interpolate normals use densities find intersection Output : triangle vertices & normals Calculate a unit normals

31 Efficiency Enhancement Take advances of pixels, lines and slice coherence. 3 new edges need to be interpolated for each cube (for interior cubes) instead of 12. Decrease the number of triangles by reducing the slice resolution - averaging 4 pixels into one.

32 Coherence

33 Desired properties of the reconstruction Agree with the data –should not create new features –should contain all existing features Correct topology Position and rotation invariance Surface continuity

34 constructed model original surface outside point inside point X = 0.5mm Z = 5mm Surface quality Non uniform sampling in the X-Y and Z planes causes “steps” results.

35 Sampling at a higher rate 5mm between slices 1mm between slices

36 Face ambiguities a b c efg d

37 Holes

38 Dealing with ambiguity (1) Supersampling - interpolate to obtain new values which are used to disambiguate. 1. calculate each face separately 2. disambiguate by calculating the value of the center of face.

39 Dealing with ambiguity (2) Voxel Topology - evaluate vertex adjacencies and check consistency in order to disambiguate. The surface should separate not only “on”- ”off” voxels but also “on” voxels that are not locally adjacent.

40 18 - adjacencies 26 - adjacencies 6 - adjacencies

41 Create objects that are connected according to pre-defined adjacency Resolve face ambiguity and objects can be unambiguously recover from it’s surface. Advantage : No need to hold actual data values (gray levels), but binary data. No need to interpolate Faster

42 Dealing with ambiguity (3) Use tetrahedra and not cubes to decide where the surface intersects. Decompose each cube to 5 tetrahedra with 4 voxels.

43

44 No ambiguous cases. 14 ways that surface can pass through tetrahedron reduced by rotation and complementary symmetry to 2 cases : disadvantage : higher number of polyhedral faces recommended : preprocessing merging procedure

45 Tetrahedra - problems Non uniform topology on the voxels. 2 voxels are adjacent iff they lay in the same tetrahedron : T-adjacency. Result : Not translation invariant - the surface construction depends also on the position of the objects ambiguous surface construction.

46 Single surface surrounding all the “on” voxels - many disjoint surfaces - Example : 3D - checker board

47 Conclusions Wildly used in today’s applications. Problems: ambiguity, self intersection construct high number of triangles. Recommended - surface simplification as post-processing step


Download ppt "Surface Reconstruction from 3D Volume Data. Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes."

Similar presentations


Ads by Google