Surface Reconstruction from 3D Volume Data - PowerPoint PPT Presentation

About This Presentation
Title:

Surface Reconstruction from 3D Volume Data

Description:

SPECT (Single Photon Emission Computed Tomography) Parallel slices at ... boundary following (left hand on the wall). sequential scanning. 2. Surface tiling ... – PowerPoint PPT presentation

Number of Views:61
Avg rating:3.0/5.0
Slides: 48
Provided by: yael8
Category:

less

Transcript and Presenter's Notes

Title: Surface Reconstruction from 3D Volume Data


1
Surface Reconstructionfrom3D 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
(No Transcript)
5
(No Transcript)
6
(No Transcript)
7
(No Transcript)
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
2D-based reconstruction problems (2)
  • Inherent asymmetry
  • the XY plane is treated differently than the
    other planes.
  • This cause the algorithm to be dependent of the
    objects orientation.

16
3D Based Reconstruction
  • Define 3D elements as VOXELS and the connectivity
    between them. Two representations

Boundary element as a vertex
Boundary element as a face
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 28 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
(No Transcript)
26
Positioning the Surface
  • Find the exact location of the surfaces vertices
    on the voxels edges.
  • The original vertices gray levels are linearly
    interpolated.
  • Higher order interpolation can be used but
    experiments show little improvement.

240
200
180
The Range 310 lt I lt 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 its 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)
Calculateindex
Read 4 slicesinto memory
look at table
Form a cube from 2 slices
Interpolate normals
use densitiesfind intersection
Output trianglevertices normals
Calculate a unitnormals
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
Surface quality
  • Non uniform sampling in the X-Y and Zplanes
    causes steps results.

Z 5mm
constructed model
X 0.5mm
35
Sampling at a higher rate
36
Face ambiguities
a
c
d
b
e
f
g
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
(No Transcript)
41
  • Create objects that are connected according to
    pre-defined adjacency
  • Resolve face ambiguity and objects can be
    unambiguously recover from its 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
(No Transcript)
44
  • No ambiguous cases.
  • 14 ways that surface can pass through tetrahedron
    reduced by rotation and complementary symmetry to
    2 cases
  • disadvantage higher number ofpolyhedral 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
Example 3D - checker board
47
Conclusions
  • Wildly used in todays applications.
  • Problems ambiguity, self intersection
  • construct high number of triangles.
  • Recommended - surface simplification as
    post-processing step
Write a Comment
User Comments (0)
About PowerShow.com