Parameter Controlled Volume Thinning Nikhil Gagvani Deborah Silver

Download Report

Transcript Parameter Controlled Volume Thinning Nikhil Gagvani Deborah Silver

Parameter Controlled
Volume Thinning
Nikhil Gagvani
Deborah Silver
Introduction
Algorithm for the Distance Transform
 Skeleton Extraction
 Algorithm for the Centerline
 Reconstruction

The Neighbors of a Voxel

A voxel is the smallset unique element of
the volume.
F-Neighbors
E-Neighbors
V-Neighbors
Voxels
object-voxels
 background-voxels
 boundary-voxels 000000…

0000…
00…
S
_
S
BV
Distance Transform in 2D

(1/2)
The distance transform of a simple shape.
Distance Transform in 2D
(2/2)
Distance Transform in 3D

(1/6)
The distance transform at a voxel p = {x,y,z} is
defined as
DT p  min {dt (( x, y, z ), (i, j, k )) : (i, j, k )  BV }
( i , j ,k )

dt
: the distance from voxel(x,y,z) to voxel(i,j,k)
 BV : the set of boundary voxels
Distance Transform in 3D

We compute the distance
distance metric.



F-neighbor : 3
E-neighbor : 4
V-neighbor : 5
(2/6)
d t using a <3,4,5> weighted
Distance Transform in 3D

(3/6)
Algorithm
 Init
 First

pass
Calculate the Distance transform of boundary-voxels.
 Second

pass
Propagate the boundary inward.
Distance Transform in 3D

(4/6)
Init

For all voxels p  S , assign a distance transform DT p  
S
_
S
Distance Transform in 3D

(5/6)
First pass
 Calculate
the Distance transform of boundary-voxels
For all voxels p  S that have a (F/E/V) neighbor q  S
{
DT p  (3 for face/ 4 for edge/ 5 for vertex);
Add p to BV ;
}
S
_
S
BV
Distance Transform in 3D

(6/6)
Second pass
 Propagate
the boundary inward
Repeat for all p  BV
Find all voxels r  S which are (F/E/V) neighbors of p ;
Assign DTr  min{ DTr , DT p  (3 or 4 or 5) } ;
Remove p from BV ;
Add r to BV ;
until no DTr is modified
S
_
S
BV
Skeleton Extraction

(1/12)
Definition 1
a voxel p has a distance transform DT p , the Ball
B(p) associated with p is the set of object voxels q
such that the distance from p to q is less then DT p .
 If
DT p
p
S
_
S
Skeleton Extraction

(2/12)
Definition 2
 The
ball for an object voxel is maximal if it is not
contained in the ball of any other voxel.

Observation
 The
set of voxels whose balls are maximal is sufficient
to reconstruct the object.
Skeleton Extraction

(3/12)
Minimal set for reconstruction
 The
ball of a voxel may not be completely contained
in that of another, but may be contained in the union
of the balls of several other voxels.
not essential
Black voxel
Gray voxel
a
b
c
Skeleton Extraction

(4/12)
Definition 3
 The
witness for a voxel p is any 26-neighbor q such that
the distance transform of q, DTq  DT p  ( 3 or 4 or 5 ).
Thus, if a voxel q is a witness for a voxel p, B ( q)  B ( p )
DT p
p
S
_
S
Skeleton Extraction

(5/12)
Claim 1
 The
ball of a voxel p must be contained in the ball of
one of its 26 neighbor if it is to be contained in the ball
of any other voxel in the object.
p
S
_
S
Skeleton Extraction
(6/12)

To find non-witness voxels, the 26-neighbors of all object
voxels need to be scanned. (brute force approach)

Rather than grow the ball for every neighbor and scan
for containment in the union of balls, a simple approach
is to average the DT value of the neighbors qi of p.
Skeleton Extraction

(7/12)
Definition 4
 the
mean of the neighbors’ distance transform (MNT)


26
MNTp
i 1
DTqi
26
, p, qi  S , qi is a 26-neighbor of p.
If MNTp < DTp , add p to the skeleton.
MNTp = 4
Skeleton Extraction

(8/12)
Thinness parameter (TP)
 We
introduce the TP, that allows control over the
removal of non-witness voxels yielding skeletons of
varying density.

Condition 1
 If
MNTp < DTp – TP , add p to the skeleton.
Low value of TP
Thick
High value of TP
Thin
Skeleton Extraction

A maple leaf and it’s skeleton
TP = 0


(9/12)
TP = 2
TP = 4
TP = 6
The Complexity of this algorithm is therefore O(N) ,
where N is the number of object-voxels.
These skeletal voxels are not generally connected.
(Spanning Tree)
Skeleton Extraction

Trachea
a. The segmented trachea
b. Skeleton with a thinness = 2.5
c. The minimum spanning tree of the skeletal voxels
(10/12)
Skeleton Extraction

Effact of the Thinness Parameter
(11/12)
Skeleton Extraction

Skeleton of S shape
(12/12)
Algorithm for the Centerline
(1/4)

A centerline is a curve that is centered with
respect to the object boundaries.

It can serve as the path for a virtual camera in
surgical path planning.

It is a semi-automatic algorithm in which the user
specifies end-points for centerline generation.
Algorithm for the Centerline

SK : the set of skeleton voxels.
p1 and p2 : the end-points of the centerline , p1,p2  SK
F : subdivision parameter (“ fineness ”)
(2/4)
Algorithm for the Centerline

Centerlines for Surgical Navigation
(3/4)
Algorithm for the Centerline

Centerlines for Surgical Navigation
(4/4)
Reconstruction (1/3)

In order to reconstruct the object from the
skeletal voxels, balls of radius equal to the
distance transform value have to be constructed.

A path terminates when its value is less than or
equal to 3 but greater than zero.

The quality of reconstruction depends upon the
thinness of the skeleton.
Reconstruction (2/3)

Lossless reconstruction
Reconstruction (3/3)

Lossy reconstruction