Surface Nets

Embed Size (px)

Citation preview

  • 8/14/2019 Surface Nets

    1/20

    MERL - A Mitsubishi Electric Research Lab

    Constrained Elastic

    SurfaceNets:

    generating smooth surfaces from

    binary segmented data

    Sarah F. F. Gibson

    MERL - A Mitsubishi Electric Research Lab

    Binary Databinary segmentation produces rough,

    unrealistic models

    need models with smooth surfaces for high

    quality rendering and for modeling physical

    interactions

  • 8/14/2019 Surface Nets

    2/20

    MERL - A Mitsubishi Electric Research Lab

    Artifacts from Binary Data

    polygon rendered medial meniscus

    from MRI @ 0.27x0.27x0.25 mm resolution

    volume rendered knee bones

    from MRI @ 0.27x0.27x1.4 mm resolution

    MERL - A Mitsubishi Electric Research Lab

    Surface Smoothing

    existing techniques:

    1) local smoothing (e.g. low pass filtering of the

    binary data) and then surface construction using

    an algorithm such as Marching Cubes

    2) global smoothingby warping a

    parameterized surface to fit the binary surface

  • 8/14/2019 Surface Nets

    3/20

    MERL - A Mitsubishi Electric Research Lab

    Low-pass Filtering

    low pass filtering smoothes local features

    but does not remove terraces unless the

    filter size is quite large

    MERL - A Mitsubishi Electric Research Lab

    Problems with Local Smoothing

    low pass filtering removes fine detail

    indiscriminately

    local filtering does not remove terracing

    artifacts unless the filter size is large

    additional smoothing and decimation of the

    Marching Cubes surface is done without

    reference to the original data

  • 8/14/2019 Surface Nets

    4/20

    MERL - A Mitsubishi Electric Research Lab

    Global Smoothing

    global smoothing by warping a

    parameterized surface to find a

    minimum energy surface

    example from I. Takanahi et al, SUNY-SB

    MERL - A Mitsubishi Electric Research Lab

    Problems with Global Smoothing

    choosing the number of grid points in the

    parameterized model depends on the

    amount of detail in the surface

    tradeoffs between smoothness and surfacedetail is made by setting global parameters

  • 8/14/2019 Surface Nets

    5/20

    MERL - A Mitsubishi Electric Research Lab

    Constrained Elastic SurfaceNets

    MERL - A Mitsubishi Electric Research Lab

    Constrained Elastic SurfaceNets

    initialize an elastic net of surface nodes at the

    resolution of the data to fit the binary surface

    relax the net to smooth the surface while

    constraining the nodes using the binary data

    attain a globally smooth surface that is locally

    faithful to the original segmentation

  • 8/14/2019 Surface Nets

    6/20

    MERL - A Mitsubishi Electric Research Lab

    Algorithm in 2Dcell

    sample point

    interior data sample

    MERL - A Mitsubishi Electric Research Lab

    Algorithm in 2D

    1) locate surface cells

    surface cell

    interior data sample

  • 8/14/2019 Surface Nets

    7/20

    MERL - A Mitsubishi Electric Research Lab

    Algorithm in 2D

    2) place a SurfaceNet node at the center of

    each surface cell

    X X X

    X X

    X X

    Xinterior data sample

    X SurfaceNet node

    MERL - A Mitsubishi Electric Research Lab

    Algorithm in 2D

    interior data sample

    3) establish links between 4-connected

    surface nodes

    X X X

    X X

    X X

    X

    X SurfaceNet nodeSurfaceNet link

  • 8/14/2019 Surface Nets

    8/20

    MERL - A Mitsubishi Electric Research Lab

    Algorithm in 2D

    interior data sample

    4) adjust node positions to relax the SurfaceNet

    while remaining within the original surface cell

    X X X

    X

    X

    X

    X

    X

    X SurfaceNet node

    SurfaceNet link

    MERL - A Mitsubishi Electric Research Lab

    2D Examples

    initial

    initial

  • 8/14/2019 Surface Nets

    9/20

    MERL - A Mitsubishi Electric Research Lab

    2D Examples

    initial 1 iteration

    initial 1 iteration

    MERL - A Mitsubishi Electric Research Lab

    2D Examples

    initial 1 iteration 30 iterations

    initial 1 iteration 20 iterations

  • 8/14/2019 Surface Nets

    10/20

    1

    MERL - A Mitsubishi Electric Research Lab

    Topological Considerations

    For ambiguous surface topologies:

    MERL - A Mitsubishi Electric Research Lab

    Topological ConsiderationsMarching Cubes makes arbitrary decisions

    about surface topology

  • 8/14/2019 Surface Nets

    11/20

    1

    MERL - A Mitsubishi Electric Research Lab

    Topological Considerations

    Marching Cubes makes arbitrary decisions

    about surface topology

    MERL - A Mitsubishi Electric Research Lab

    Topological ConsiderationsSurface Nets maintain surface ambiguity for

    later high level processing

    X

    X

    X

    X

    X XXX

  • 8/14/2019 Surface Nets

    12/20

    1

    MERL - A Mitsubishi Electric Research Lab

    3D Algorithm

    1) locate surface cells

    2) place a SurfaceNet node at the center of

    each surface cell

    3) establish links between 6-connected

    surface nodes

    4) adjust node positions to relax the

    SurfaceNet while remaining within the

    original surface cell

    MERL - A Mitsubishi Electric Research Lab

    3D Examples

    original surface 1 relaxation 2 relaxations 3 relaxations 4 relaxations

    5 relaxations 6 relaxations 7 relaxations 8 relaxations 9 relaxations

    10 relaxations 15 relaxations

    Binary sphere:

    radius 30 voxels

  • 8/14/2019 Surface Nets

    13/20

    1

    MERL - A Mitsubishi Electric Research Lab

    3D Examples

    original surface 1 relaxation 12 relaxations

    Femur, 0.27 x 0.27 x 1.0 mm resolution

    MERL - A Mitsubishi Electric Research Lab

    Building a Surface Triangle Model

    Nice Properties of SurfaceNets:

    1) surface triangles can be generated automatically

    from the structure of the SurfaceNet

    2) the triangle model only needs to be constructed

    once

    as the surface relaxes, the topology is maintained and

    only the triangle vertex positions and normals change

  • 8/14/2019 Surface Nets

    14/20

    1

    MERL - A Mitsubishi Electric Research Lab

    Surface Triangulation

    each SurfaceNet node has 6 possible links

    and hence 12 possible triangles

    rightleft

    top

    bottom

    front

    back

    x

    MERL - A Mitsubishi Electric Research Lab

    Surface Triangulation

    front-back face

    rightleft

    top

    bottom

    front

    back

    x

  • 8/14/2019 Surface Nets

    15/20

    1

    MERL - A Mitsubishi Electric Research Lab

    Surface Triangulation

    left-right face

    rightleft

    top

    bottom

    front

    back

    x

    MERL - A Mitsubishi Electric Research Lab

    Surface Triangulation

    top-bottom face

    rightleft

    top

    bottom

    front

    back

    x

  • 8/14/2019 Surface Nets

    16/20

    1

    MERL - A Mitsubishi Electric Research Lab

    construct the triangles for each node based

    on the presence or absence of links to the

    nodes 6 possible neighbors

    orient triangles to point out of the

    segmented object by referencing the binary

    segmentation

    Surface Triangulation

    MERL - A Mitsubishi Electric Research Lab

    Examples

    brain atlas, segmented data courtesy of SPL, Brigham and Womens Hospital

  • 8/14/2019 Surface Nets

    17/20

    1

    MERL - A Mitsubishi Electric Research Lab

    Examples

    volume rendered brain from smoothed SurfaceNet

    MERL - A Mitsubishi Electric Research Lab

    Examples

    surface model of the femur

    from SurfaceNets,

    rendered with OpenGL

    surface model of the femur

    after low-pass filtering,

    Marching Cubes, and

    rendering with Vtk

  • 8/14/2019 Surface Nets

    18/20

    1

    MERL - A Mitsubishi Electric Research Lab

    Examples

    abdominal arteries, segmented data courtesy of SPL, Brigham and Womens Hospital

    MERL - A Mitsubishi Electric Research Lab

    SurfaceNets:

    removes terracing

    artifacts

    preserves fine detail

    remains faithful to theoriginal segmentation

    Binary Segmentation

    Smooth Surface

    Model

    Polygon

    Rendering

    Volume

    Rendering

    SurfaceNets

  • 8/14/2019 Surface Nets

    19/20

    1

    MERL - A Mitsubishi Electric Research Lab

    Thanks

    data and binary segementations from the

    Surgical Planning Lab, Brigham and

    Womens Hospital

    Mike Leventon for Vtk and Marching Cubes

    example

    MERL - A Mitsubishi Electric Research Lab

  • 8/14/2019 Surface Nets

    20/20

    MERL - A Mitsubishi Electric Research Lab

    Why Use Binary Segmented Data?