Isosurface Extractions II - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

Isosurface Extractions II

Description:

The main idea: ... Idea 1: the arcs connect the extrema points will intersect all isocontours ... Idea 2: the open isocontours will intersect with boundary ... – PowerPoint PPT presentation

Number of Views:102
Avg rating:3.0/5.0
Slides: 23
Provided by: hanwe3
Category:

less

Transcript and Presenter's Notes

Title: Isosurface Extractions II


1
Isosurface Extractions (II)
3D Isosurface
2D Isocontour
2
Contour Propagation
Basic Idea Given an initial cell that contains
isosurface, the remainder of the isosurface can
be found by propagation
Initial cell A Enqueue B, C Dequeue
B Enqueue D Until the FIFO queue becomes
empty
Breadth-First Search
3
Challenges
Need to know the initial cells!
The Key Problem For any given isovalue C, we
need to find the initial cells (seed calls) to
start the propagation
4
Solutions
  • Extrema Graph (Itoh vis95)
  • Seed Sets (Bajaj volvis96)

Problem Statement Given a scalar field with a
cell set G, find a subset S G, such that for
any given isovalue C, the set S contains initial
cells to start the propagation. We need search
through S for an arbitrary, but S is usuall much
smaller than G.
We will talk about extrema graph
5
Extrema Graph
  • The main idea
  • There is at least one extreme point (local min or
    max) inside a closed isosurface, unless there is
    no interior point inside the isosurface
  • There is at least one boundary cell intersected
    by an open isosurface

6
Extrema Graph
  • Idea 1 the arcs connect the extrema points will
    intersect all isocontours (except the open ones)
  • Idea 2 the open isocontours will intersect with
    boundary cells

7
Seed Set Finding
  • Processing the data with the following 3 steps
  • Extraction of extreme points
  • Construction of an extrema graph
  • Arcs that connect extreme points
  • Collection of boundary cells

8
Extreme Point
  • Definition An extreme point is a grid point
    whose scalar value is maximum or minimum in all
    cells that share the grid point

0
4
3
O(N) to find Extreme points Need to visit all
cells
13
8
7
11
9
5
11
Not a exteme point
extreme point
9
Constructing Extreme Graph
E2
E1
Extreme Graph E, A E extrema points
A Arcs conneccts E
a1
a2
a3
E3
E4
a5
An arc consists of cells that connect extrema
points (we also store min/max of the arc)
a4
E7
a7
E5
a6
E6
E8
10
Construct Extreme Graph
  • You want to minimize the number of cells included
    in the arcs
  • Generating straight lines between close extreme
    points
  • Polygonal cell traversal

(1)
(2)
11
Boundary Cells
  • Only the extrema graph is not enough

Some open isocontours will not intersect with
extreme graph arcs
Include all Boundary Cells!!
12
Extract Isosurfaces
  • Algorithm
  • Given an isovalue
  • Search the arcs of the extrema graph (to find the
    arcs that have min/max contains the isovalue
  • Walk through the cells along each of the arcs to
    find the seed cells
  • Start to propagate from the seed cells
  • Search the cells along the boundary and find seed
    cells from there
  • Propagate open isocontours

13
Better Algorithm Needed
  • The above algorithm has the following problems
  • Processing cost is in proportion to the number of
    extreme points, which can be large
  • There can be a large number of boundary cells

14
Extreme Skeleton
  • Extreme Skeleton A set of cells that connects
    all extreme points while intersecting with all
    disjoint parts of isosurfaces (including open
    isosurfaces)
  • Based on a Volume Thinning algorithm

Volume thinning
Image thining
15
Volume Thinning
  • Start from the entire volume cells (default seed
    set)
  • Eliminating cells that will not affect the
    connectivity of its adjacent cells
  • Never eliminate cells that touch extreme points
  • Topology preserving (considering voids or through
    holes)

16
Volume Thinning
17
Algorithm
  • Classify each cell as c0, c1, c2, c3, c4 (assume
    tetrahedral cells) C0 means eliminated cells,
    and Ci means there are I adjacent non-eliminated
    cells
  • Start to eliminate c1 cells, then c2, c3 based on
    certain criteria
  • Every time a cell is eliminated, update the
    adjacent cells from Ci to Ci-1
  • Loop until no more cells can be eliminated

18
Criteria for Elimination
  • We can certainly eliminate C1 cells
  • C2 cells we try to see whether we can propagate
    from Ci to Cj (the adjacent cells) without going
    through Ck (the cell in question)

19
Criteria for Elimination
  • C3 cells Dont want eliminate cells on the
    boundary of void or through-hole that will break
    the connectivity of adjacent cells

20
Criteria for Elimination
Also, remember to remove cells that form bubbles
21
Prick the bubbles
22
Example of Thinning
Write a Comment
User Comments (0)
About PowerShow.com