Extracting Branching Object Extracting Branching Object Geometry via CoresGeometry via Cores
Extracting Branching Object Extracting Branching Object Geometry via CoresGeometry via Cores
Doctoral Dissertation DefenseDoctoral Dissertation Defense
Yoni FridmanYoni Fridman
August 17, 2004August 17, 2004
Advisor: Stephen PizerAdvisor: Stephen Pizer
Doctoral Dissertation DefenseDoctoral Dissertation Defense
Yoni FridmanYoni Fridman
August 17, 2004August 17, 2004
Advisor: Stephen PizerAdvisor: Stephen Pizer
OutlineOutlineOutlineOutline
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Motivation: Endovascular Motivation: Endovascular EmbolizationEmbolization
Motivation: Endovascular Motivation: Endovascular EmbolizationEmbolization
Driving problem: Driving problem: Endovascular embolization Endovascular embolization of a cerebral aneurysmof a cerebral aneurysm
Driving problem: Driving problem: Endovascular embolization Endovascular embolization of a cerebral aneurysmof a cerebral aneurysm
Endovascular embolizationCourtesy Toronto Brain Vascular
Malformation Study Grouphttp://brainavm.uhnres.utoronto.ca/
Aneurysm in a DSA projection image
Motivation: Endovascular Motivation: Endovascular EmbolizationEmbolization
Motivation: Endovascular Motivation: Endovascular EmbolizationEmbolization
Difficulty: How to guide catheter to aneurysmDifficulty: How to guide catheter to aneurysm In 2D, projection overlap makes geometry of In 2D, projection overlap makes geometry of
vasculature ambiguousvasculature ambiguous In 3D, information lost when viewing 1 slice at a timeIn 3D, information lost when viewing 1 slice at a time
Difficulty: How to guide catheter to aneurysmDifficulty: How to guide catheter to aneurysm In 2D, projection overlap makes geometry of In 2D, projection overlap makes geometry of
vasculature ambiguousvasculature ambiguous In 3D, information lost when viewing 1 slice at a timeIn 3D, information lost when viewing 1 slice at a time
Axial slice of head MRA dataAneurysm in a DSA projection image
GoalGoalGoalGoal
Automatically extract representations of Automatically extract representations of anatomic objects from medical imagesanatomic objects from medical images
Automatically extract representations of Automatically extract representations of anatomic objects from medical imagesanatomic objects from medical images
3D vessel tree representationAxial projection image of head MRA data
Motivation: Radiation Treatment Motivation: Radiation Treatment PlanningPlanning
Motivation: Radiation Treatment Motivation: Radiation Treatment PlanningPlanning
Driving problem: 3D radiation treatment Driving problem: 3D radiation treatment planningplanning
Driving problem: 3D radiation treatment Driving problem: 3D radiation treatment planningplanning
Tumor in axial slice of abdominal CT dataCourtesy Shands Health Care
GoalGoalGoalGoal
Automatically extract representations of Automatically extract representations of anatomic objects from medical imagesanatomic objects from medical images
Automatically extract representations of Automatically extract representations of anatomic objects from medical imagesanatomic objects from medical images
3D kidney representation
Tumor in axial slice of abdominal CT dataCourtesy Shands Health Care
Blum’s medial axisBlum’s medial axisBlum’s medial axisBlum’s medial axis
The medial axis is a formulation that describes The medial axis is a formulation that describes objects by focusing on their middlesobjects by focusing on their middles Can be thought of as a skeleton or backboneCan be thought of as a skeleton or backbone Pioneered by Blum (Blum 1967, Blum & Nagle 1978) Pioneered by Blum (Blum 1967, Blum & Nagle 1978)
for biological structuresfor biological structures
The medial axis is a formulation that describes The medial axis is a formulation that describes objects by focusing on their middlesobjects by focusing on their middles Can be thought of as a skeleton or backboneCan be thought of as a skeleton or backbone Pioneered by Blum (Blum 1967, Blum & Nagle 1978) Pioneered by Blum (Blum 1967, Blum & Nagle 1978)
for biological structuresfor biological structures
An object and its medial axis
Overview of Cores (in 2D)Overview of Cores (in 2D)Overview of Cores (in 2D)Overview of Cores (in 2D)
A A corecore is a is a medial axismedial axis of an object at scale of an object at scale ((i.e.i.e., in a blurred image), in a blurred image)
Why at scale?Why at scale? To reduce image noiseTo reduce image noise So small indentations and So small indentations and
protrusions on the object protrusions on the object boundary are not reflected boundary are not reflected in the corein the core
A A corecore is a is a medial axismedial axis of an object at scale of an object at scale ((i.e.i.e., in a blurred image), in a blurred image)
Why at scale?Why at scale? To reduce image noiseTo reduce image noise So small indentations and So small indentations and
protrusions on the object protrusions on the object boundary are not reflected boundary are not reflected in the corein the core
A synthetic object and its core
Overview of Cores (in 2D)Overview of Cores (in 2D)Overview of Cores (in 2D)Overview of Cores (in 2D)
A A corecore is a is a medial axismedial axis of an object at scale of an object at scale ((i.e.i.e., in a blurred image), in a blurred image)
Each location on the Each location on the core stores orientation core stores orientation and radius informationand radius information
A A corecore is a is a medial axismedial axis of an object at scale of an object at scale ((i.e.i.e., in a blurred image), in a blurred image)
Each location on the Each location on the core stores orientation core stores orientation and radius informationand radius information
A synthetic object and its core
Cores as Object RepresentationsCores as Object RepresentationsCores as Object RepresentationsCores as Object Representations
An object’s core provides An object’s core provides a a discrete representation, discrete representation, at scaleat scale, of the object, of the object
This can be seen by This can be seen by taking the union of disks taking the union of disks centered along the core, centered along the core, with the given radiiwith the given radii
This representation is This representation is computed automaticallycomputed automatically
An object’s core provides An object’s core provides a a discrete representation, discrete representation, at scaleat scale, of the object, of the object
This can be seen by This can be seen by taking the union of disks taking the union of disks centered along the core, centered along the core, with the given radiiwith the given radii
This representation is This representation is computed automaticallycomputed automatically
Recreating an object from its core
Types of CoresTypes of CoresTypes of CoresTypes of Cores
Two mathematically distinct types of cores Two mathematically distinct types of cores have been studied:have been studied:
1.1. Maximum convexity cores (Morse 1994, Eberly 1996, Maximum convexity cores (Morse 1994, Eberly 1996, Damon 1998, Miller 1998, Damon 1999, Keller 1999)Damon 1998, Miller 1998, Damon 1999, Keller 1999)
2.2. Optimum parameter cores (Furst 1999, Aylward & Optimum parameter cores (Furst 1999, Aylward & Bullitt 2002)Bullitt 2002)
This dissertation deals with optimum This dissertation deals with optimum parameter cores; details laterparameter cores; details later
Two mathematically distinct types of cores Two mathematically distinct types of cores have been studied:have been studied:
1.1. Maximum convexity cores (Morse 1994, Eberly 1996, Maximum convexity cores (Morse 1994, Eberly 1996, Damon 1998, Miller 1998, Damon 1999, Keller 1999)Damon 1998, Miller 1998, Damon 1999, Keller 1999)
2.2. Optimum parameter cores (Furst 1999, Aylward & Optimum parameter cores (Furst 1999, Aylward & Bullitt 2002)Bullitt 2002)
This dissertation deals with optimum This dissertation deals with optimum parameter cores; details laterparameter cores; details later
Thesis StatementThesis StatementThesis StatementThesis Statement
Optimum parameter cores with branch-Optimum parameter cores with branch-handling and end-detection provide an handling and end-detection provide an effective means for extracting the branching effective means for extracting the branching geometry of tubular structures from 3D geometry of tubular structures from 3D medical images and for extracting the medical images and for extracting the branching geometry of general structures branching geometry of general structures from relatively low noise 3D medical from relatively low noise 3D medical images.images.
Optimum parameter cores with branch-Optimum parameter cores with branch-handling and end-detection provide an handling and end-detection provide an effective means for extracting the branching effective means for extracting the branching geometry of tubular structures from 3D geometry of tubular structures from 3D medical images and for extracting the medical images and for extracting the branching geometry of general structures branching geometry of general structures from relatively low noise 3D medical from relatively low noise 3D medical images.images.
OutlineOutlineOutlineOutline
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Core ComputationCore ComputationCore ComputationCore Computation
Optimize the derivative Optimize the derivative of Gaussians’ fit to the of Gaussians’ fit to the image by varying image by varying location, radius, and location, radius, and orientationorientation
Take a step forward Take a step forward and iterateand iterate
Optimize the derivative Optimize the derivative of Gaussians’ fit to the of Gaussians’ fit to the image by varying image by varying location, radius, and location, radius, and orientationorientation
Take a step forward Take a step forward and iterateand iterate
Initialize a Initialize a medial atommedial atom and place a derivative of and place a derivative of a Gaussian at the tips of two a Gaussian at the tips of two spokesspokes
Initialize a Initialize a medial atommedial atom and place a derivative of and place a derivative of a Gaussian at the tips of two a Gaussian at the tips of two spokesspokes
Computing the core of a synthetic object
Cores of 3D objects are generically 2D Cores of 3D objects are generically 2D (sheets). Objects represented by 2D cores are (sheets). Objects represented by 2D cores are called “slabs”called “slabs”
Special case: Cores of tubes are 1D (curves)Special case: Cores of tubes are 1D (curves)
Cores of 3D objects are generically 2D Cores of 3D objects are generically 2D (sheets). Objects represented by 2D cores are (sheets). Objects represented by 2D cores are called “slabs”called “slabs”
Special case: Cores of tubes are 1D (curves)Special case: Cores of tubes are 1D (curves)
Cores in 3D – Slabs and TubesCores in 3D – Slabs and TubesCores in 3D – Slabs and TubesCores in 3D – Slabs and Tubes
What is a Medial Atom?What is a Medial Atom?What is a Medial Atom?What is a Medial Atom?
A medial atom A medial atom mm = ( = (xx, r, , r, FF, , ) is an oriented ) is an oriented position with two spokes. In 3Dposition with two spokes. In 3D
(Morse 1994, Fritsch (Morse 1994, Fritsch et al.et al. 1995, Pizer 1995, Pizer et alet al. . 1998, Furst 1999, Pizer 1998, Furst 1999, Pizer et alet al. 2003). 2003)
A medial atom A medial atom mm = ( = (xx, r, , r, FF, , ) is an oriented ) is an oriented position with two spokes. In 3Dposition with two spokes. In 3D
(Morse 1994, Fritsch (Morse 1994, Fritsch et al.et al. 1995, Pizer 1995, Pizer et alet al. . 1998, Furst 1999, Pizer 1998, Furst 1999, Pizer et alet al. 2003). 2003)
xx is its location in 3-space is its location in 3-space r is its radius, or the length of two r is its radius, or the length of two
spokes, p and sspokes, p and s FF is a frame that defines its orientation is a frame that defines its orientation
b is the bisector of the spokesb is the bisector of the spokes
is its object angleis its object angle
xx is its location in 3-space is its location in 3-space r is its radius, or the length of two r is its radius, or the length of two
spokes, p and sspokes, p and s FF is a frame that defines its orientation is a frame that defines its orientation
b is the bisector of the spokesb is the bisector of the spokes
is its object angleis its object angle
xr
p
s
b
Medial atom geometry
My Medial AtomsMy Medial AtomsMy Medial AtomsMy Medial Atoms
I constrain I constrain to to /2, so /2, so mm = ( = (xx, r, , r, FF)) This improves This improves the resistance of core computationthe resistance of core computation
I constrain I constrain to to /2, so /2, so mm = ( = (xx, r, , r, FF)) This improves This improves the resistance of core computationthe resistance of core computation
to image noiseto image noise It is also less natural and affects core It is also less natural and affects core
computation in other wayscomputation in other ways I quantify these effects in the I quantify these effects in the
dissertation and show that the dissertation and show that the constraint is beneficial overallconstraint is beneficial overall
to image noiseto image noise It is also less natural and affects core It is also less natural and affects core
computation in other wayscomputation in other ways I quantify these effects in the I quantify these effects in the
dissertation and show that the dissertation and show that the constraint is beneficial overallconstraint is beneficial overall
xr
p
s
b
My medial atom geometry
What is the Medialness of a What is the Medialness of a Medial Atom Medial Atom mm??
What is the Medialness of a What is the Medialness of a Medial Atom Medial Atom mm??
MedialnessMedialness M( M(mm) is a scalar function that ) is a scalar function that measures the measures the fit of a medial atom to image datafit of a medial atom to image data A kernel K(A kernel K(mm) is created from ) is created from mm by placing two directional by placing two directional
derivatives of volumetric Gaussians, one at each spoke tip, derivatives of volumetric Gaussians, one at each spoke tip, with the derivatives taken in the spoke directionswith the derivatives taken in the spoke directions
MedialnessMedialness M( M(mm) is a scalar function that ) is a scalar function that measures the measures the fit of a medial atom to image datafit of a medial atom to image data A kernel K(A kernel K(mm) is created from ) is created from mm by placing two directional by placing two directional
derivatives of volumetric Gaussians, one at each spoke tip, derivatives of volumetric Gaussians, one at each spoke tip, with the derivatives taken in the spoke directionswith the derivatives taken in the spoke directions
),(),()( ˆˆ sxGDpxGDmKsp
x p
s
M(M(mm) is then computed ) is then computed by integrating image by integrating image intensities as weighted intensities as weighted by K(by K(mm))
M(M(mm) is then computed ) is then computed by integrating image by integrating image intensities as weighted intensities as weighted by K(by K(mm))
Maximizing MedialnessMaximizing MedialnessMaximizing MedialnessMaximizing Medialness
Given an approximate atom Given an approximate atom mm = ( = (xx, r, , r, FF), ), find find xx, r, and , r, and FF that maximize M( that maximize M(mm)) Let Let xx = (s, t, u) and = (s, t, u) and FF = (az, alt, = (az, alt, ))
u is in the spoke direction and (s, t) span the normal planeu is in the spoke direction and (s, t) span the normal plane az and alt are the azimuth and altitude of b, az and alt are the azimuth and altitude of b, is spin about bis spin about b
Maximize with respect to position and then parameters:Maximize with respect to position and then parameters:
This defines the optimum parameter cores I useThis defines the optimum parameter cores I use
Given an approximate atom Given an approximate atom mm = ( = (xx, r, , r, FF), ), find find xx, r, and , r, and FF that maximize M( that maximize M(mm)) Let Let xx = (s, t, u) and = (s, t, u) and FF = (az, alt, = (az, alt, ))
u is in the spoke direction and (s, t) span the normal planeu is in the spoke direction and (s, t) span the normal plane az and alt are the azimuth and altitude of b, az and alt are the azimuth and altitude of b, is spin about bis spin about b
Maximize with respect to position and then parameters:Maximize with respect to position and then parameters:
This defines the optimum parameter cores I useThis defines the optimum parameter cores I use
initinitinitinitopt
altazroptoptoptopt
initu
opt
altazrutsMaltazr
altazrutsMu
,,,,,,maxarg,,,
),,(,,,,maxarg
,,,
Core-FollowingCore-FollowingCore-FollowingCore-Following
Now we need to follow a 2D sheet – can’t Now we need to follow a 2D sheet – can’t simply step forwardsimply step forward
Rather, march along a gridRather, march along a grid
Now we need to follow a 2D sheet – can’t Now we need to follow a 2D sheet – can’t simply step forwardsimply step forward
Rather, march along a gridRather, march along a grid
Following the 2D core of a slab in 3D
2D core of a kidney
Core-FollowingCore-FollowingCore-FollowingCore-Following
I add two features to core-following that I add two features to core-following that improve its resistance to noise:improve its resistance to noise:
1.1. When optimizing medialness, I penalize significant When optimizing medialness, I penalize significant changes in radius and/or orientation between changes in radius and/or orientation between neighboring atomsneighboring atoms
2.2. I compute the core at a coarse sampling (taking large I compute the core at a coarse sampling (taking large steps between atoms) and then refine the samplingsteps between atoms) and then refine the sampling
I add two features to core-following that I add two features to core-following that improve its resistance to noise:improve its resistance to noise:
1.1. When optimizing medialness, I penalize significant When optimizing medialness, I penalize significant changes in radius and/or orientation between changes in radius and/or orientation between neighboring atomsneighboring atoms
2.2. I compute the core at a coarse sampling (taking large I compute the core at a coarse sampling (taking large steps between atoms) and then refine the samplingsteps between atoms) and then refine the sampling
Refining a core
Cores of TubesCores of TubesCores of TubesCores of Tubes
Cores of tubes are computed using medial Cores of tubes are computed using medial atoms with a set of (8) concentric spokesatoms with a set of (8) concentric spokes
The resulting core is a curveThe resulting core is a curve Problem: Euclidean optimization must cover 2 Problem: Euclidean optimization must cover 2
dimensions, not 1dimensions, not 1
Cores of tubes are computed using medial Cores of tubes are computed using medial atoms with a set of (8) concentric spokesatoms with a set of (8) concentric spokes
The resulting core is a curveThe resulting core is a curve Problem: Euclidean optimization must cover 2 Problem: Euclidean optimization must cover 2
dimensions, not 1dimensions, not 1
Computing the core of a tube
Solution: Pick any 2 directions Solution: Pick any 2 directions that span normal plane to core, that span normal plane to core, e.g.e.g., 2 orthogonal spokes, 2 orthogonal spokes
These cores are more noise-These cores are more noise-resistant than cores of slabsresistant than cores of slabs
Solution: Pick any 2 directions Solution: Pick any 2 directions that span normal plane to core, that span normal plane to core, e.g.e.g., 2 orthogonal spokes, 2 orthogonal spokes
These cores are more noise-These cores are more noise-resistant than cores of slabsresistant than cores of slabs
OutlineOutlineOutlineOutline
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Problem: Cores Don’t BranchProblem: Cores Don’t BranchProblem: Cores Don’t BranchProblem: Cores Don’t Branch
Problem: Cores don’t branch, so what happens Problem: Cores don’t branch, so what happens when a core reaches an object bifurcation?when a core reaches an object bifurcation?
Problem: Cores don’t branch, so what happens Problem: Cores don’t branch, so what happens when a core reaches an object bifurcation?when a core reaches an object bifurcation?
Cores of separate branches (in cross-section).
Core-following (in cross-section)
Solution: Jump to New CoresSolution: Jump to New CoresSolution: Jump to New CoresSolution: Jump to New Cores
Solution: Stop following the core when it reaches Solution: Stop following the core when it reaches an object bifurcation and jump to the new core(s)an object bifurcation and jump to the new core(s) One for a slab, two for a tubeOne for a slab, two for a tube
Solution: Stop following the core when it reaches Solution: Stop following the core when it reaches an object bifurcation and jump to the new core(s)an object bifurcation and jump to the new core(s) One for a slab, two for a tubeOne for a slab, two for a tube
Cores of separate branches (in cross-section).
Jumping to cores of new branches
Corner DetectionCorner DetectionCorner DetectionCorner Detection
Apply an affine-invariant corner detector to Apply an affine-invariant corner detector to the image: Ithe image: IuuuuIIvv
22
v is the gradient direction and u is the first eigenvector v is the gradient direction and u is the first eigenvector of the Hessian in the normal plane to vof the Hessian in the normal plane to v
Apply an affine-invariant corner detector to Apply an affine-invariant corner detector to the image: Ithe image: IuuuuIIvv
22
v is the gradient direction and u is the first eigenvector v is the gradient direction and u is the first eigenvector of the Hessian in the normal plane to vof the Hessian in the normal plane to v
Corner DetectionCorner DetectionCorner DetectionCorner Detection
Apply an affine-invariant corner detector to Apply an affine-invariant corner detector to the image: Ithe image: IuuuuIIvv
22
v is the gradient direction and u is the first eigenvector v is the gradient direction and u is the first eigenvector of the Hessian in the normal plane to vof the Hessian in the normal plane to v
Apply an affine-invariant corner detector to Apply an affine-invariant corner detector to the image: Ithe image: IuuuuIIvv
22
v is the gradient direction and u is the first eigenvector v is the gradient direction and u is the first eigenvector of the Hessian in the normal plane to vof the Hessian in the normal plane to v
A projection image Application of the corner detector
Maxima of cornerness
Corner DetectionCorner DetectionCorner DetectionCorner Detection
A spoke tip located at a maximum of A spoke tip located at a maximum of cornerness indicates a potential object branchcornerness indicates a potential object branch
A spoke tip located at a maximum of A spoke tip located at a maximum of cornerness indicates a potential object branchcornerness indicates a potential object branch
Core-following
A projection image Application of the corner detector
Maxima of cornerness
Rejection of False Positive BranchesRejection of False Positive BranchesRejection of False Positive BranchesRejection of False Positive Branches
Maxima of cornerness can also be false positivesMaxima of cornerness can also be false positives For example, bends in the objectFor example, bends in the object
Maxima of cornerness can also be false positivesMaxima of cornerness can also be false positives For example, bends in the objectFor example, bends in the object
Maxima of cornerness; red indicates false positive
Rejection of False Positive BranchesRejection of False Positive BranchesRejection of False Positive BranchesRejection of False Positive Branches
I reject false positives using combinations of I reject false positives using combinations of heuristics, heuristics, e.g.e.g., non-increasing radius along the , non-increasing radius along the corecore
I reject false positives using combinations of I reject false positives using combinations of heuristics, heuristics, e.g.e.g., non-increasing radius along the , non-increasing radius along the corecore
Maxima of cornerness; red indicates false positive
True branch False positive branch
Re-seeding Cores Along New Re-seeding Cores Along New BranchesBranches
Re-seeding Cores Along New Re-seeding Cores Along New BranchesBranches
Predict the locations and parameters of the Predict the locations and parameters of the new branches using geometric information new branches using geometric information from the computed corefrom the computed core
Prediction need not be accuratePrediction need not be accurate
Predict the locations and parameters of the Predict the locations and parameters of the new branches using geometric information new branches using geometric information from the computed corefrom the computed core
Prediction need not be accuratePrediction need not be accurate
Re-seeding cores of new branches
OutlineOutlineOutlineOutline
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Types of Object EndsTypes of Object EndsTypes of Object EndsTypes of Object Ends
I consider two types of object ends:I consider two types of object ends:1.1. Explicit endsExplicit ends, where an object is capped, where an object is capped
2.2. Implicit endsImplicit ends, where an object narrows until it is , where an object narrows until it is indiscernible in the imageindiscernible in the image
I consider two types of object ends:I consider two types of object ends:1.1. Explicit endsExplicit ends, where an object is capped, where an object is capped
2.2. Implicit endsImplicit ends, where an object narrows until it is , where an object narrows until it is indiscernible in the imageindiscernible in the image
DNA with explicit ends Blood vessel with an implicit end
Core TerminationCore TerminationCore TerminationCore Termination
Case 1: Stop following a core at an object endCase 1: Stop following a core at an object end Case 2: Stop following a core when there is Case 2: Stop following a core when there is
not enough evidence that you’re on an objectnot enough evidence that you’re on an object
Case 1: Stop following a core at an object endCase 1: Stop following a core at an object end Case 2: Stop following a core when there is Case 2: Stop following a core when there is
not enough evidence that you’re on an objectnot enough evidence that you’re on an object
DNA with explicit ends Blood vessel with an implicit end
Core TerminationCore TerminationCore TerminationCore Termination
Use Use local statistics on medialnesslocal statistics on medialness values to values to determine when we’ve lost track of the objectdetermine when we’ve lost track of the object At each step of core-following, create a set At each step of core-following, create a set S S of of
randomly positioned and oriented medial atoms randomly positioned and oriented medial atoms (yellow)(yellow) in a region surrounding the current atom, in a region surrounding the current atom, mm00 (blue) (blue)
Compute the medialness value of each atom in Compute the medialness value of each atom in SS mm00 is valid iff is valid iff
Use Use local statistics on medialnesslocal statistics on medialness values to values to determine when we’ve lost track of the objectdetermine when we’ve lost track of the object At each step of core-following, create a set At each step of core-following, create a set S S of of
randomly positioned and oriented medial atoms randomly positioned and oriented medial atoms (yellow)(yellow) in a region surrounding the current atom, in a region surrounding the current atom, mm00 (blue) (blue)
Compute the medialness value of each atom in Compute the medialness value of each atom in SS mm00 is valid iff is valid iff
SmM *30
OutlineOutlineOutlineOutline
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Demonstration: Core of a KidneyDemonstration: Core of a KidneyDemonstration: Core of a KidneyDemonstration: Core of a Kidney
Core of a kidney
Surface implied by the core
Demonstration: Core of a Kidney Demonstration: Core of a Kidney and Renal Arteryand Renal Artery
Demonstration: Core of a Kidney Demonstration: Core of a Kidney and Renal Arteryand Renal Artery
Cores of a kidney and adjoining renal artery
Surfaces implied by the cores
Demonstration: Cores of Blood Demonstration: Cores of Blood VesselsVessels
Demonstration: Cores of Blood Demonstration: Cores of Blood VesselsVessels
Axial, sagittal, and coronal MIP views of 3D head MRA data
Surfaces implied by cores of blood vessels
Analysis of the Effects of Object Analysis of the Effects of Object Geometry on CoresGeometry on Cores
Analysis of the Effects of Object Analysis of the Effects of Object Geometry on CoresGeometry on Cores
Using synthetic images (with known truth), I Using synthetic images (with known truth), I analyze the effects of object geometry on coresanalyze the effects of object geometry on cores For tubes: Width, bending, branching angle, branch size, For tubes: Width, bending, branching angle, branch size,
rate of tapering at endsrate of tapering at ends For slabs: Rate of narrowing, bending, branching angleFor slabs: Rate of narrowing, bending, branching angle
This analysis provides:This analysis provides: Validation of my methodsValidation of my methods The ability to predict performance on new objects and The ability to predict performance on new objects and
imagesimages A better understanding of the behavior of coresA better understanding of the behavior of cores
Using synthetic images (with known truth), I Using synthetic images (with known truth), I analyze the effects of object geometry on coresanalyze the effects of object geometry on cores For tubes: Width, bending, branching angle, branch size, For tubes: Width, bending, branching angle, branch size,
rate of tapering at endsrate of tapering at ends For slabs: Rate of narrowing, bending, branching angleFor slabs: Rate of narrowing, bending, branching angle
This analysis provides:This analysis provides: Validation of my methodsValidation of my methods The ability to predict performance on new objects and The ability to predict performance on new objects and
imagesimages A better understanding of the behavior of coresA better understanding of the behavior of cores
Tube WidthTube WidthTube WidthTube Width
Results:Results: Success of tubular core-following is related to object Success of tubular core-following is related to object
width and inversely related to image noisewidth and inversely related to image noise In MR, tubular core-following is reliable down to tubes In MR, tubular core-following is reliable down to tubes
of diameter 1 voxelof diameter 1 voxel
Results:Results: Success of tubular core-following is related to object Success of tubular core-following is related to object
width and inversely related to image noisewidth and inversely related to image noise In MR, tubular core-following is reliable down to tubes In MR, tubular core-following is reliable down to tubes
of diameter 1 voxelof diameter 1 voxel
0
20
40
60
80
100
0.5 1 1.5 2
Tube Diameter (voxels)
Co
res
Fo
llo
wed
Wit
hin
1
Vo
xel
of
Axi
s (%
)
Ultrasound MR 1/2 MR
Tube BendingTube BendingTube BendingTube Bending
Results:Results: Curvature and torsion are not a limiting factor in Curvature and torsion are not a limiting factor in
tubular core-followingtubular core-following Cores of sharply curved tubes can be followed by Cores of sharply curved tubes can be followed by
decreasing step sizedecreasing step size
Results:Results: Curvature and torsion are not a limiting factor in Curvature and torsion are not a limiting factor in
tubular core-followingtubular core-following Cores of sharply curved tubes can be followed by Cores of sharply curved tubes can be followed by
decreasing step sizedecreasing step size
0
0.25
0.5
0.75
1
1 2 4 8 ∞
Radius of Curvature (voxels)
Ste
p S
ize
(vo
xels
)
Ultrasound MR 1/2 MR
Tube Branching AngleTube Branching AngleTube Branching AngleTube Branching Angle
Results:Results: Tubular branch-handling is reliable in low-noise Tubular branch-handling is reliable in low-noise
images regardless of branching angleimages regardless of branching angle In ultrasound, failure rates were ~20% but all failures In ultrasound, failure rates were ~20% but all failures
were false negatives; there were were false negatives; there were no false positivesno false positives
Results:Results: Tubular branch-handling is reliable in low-noise Tubular branch-handling is reliable in low-noise
images regardless of branching angleimages regardless of branching angle In ultrasound, failure rates were ~20% but all failures In ultrasound, failure rates were ~20% but all failures
were false negatives; there were were false negatives; there were no false positivesno false positives
0
2040
60
80
100
0 22.5 45 90Branching Angle (degrees)
Bra
nche
s H
andl
ed (%
)
Ultrasound MR 1/2 MR
Tube Branch SizeTube Branch SizeTube Branch SizeTube Branch Size
Results:Results: Tubular branch-handling deteriorates when one branch Tubular branch-handling deteriorates when one branch
is significantly narrower than the other, particularly in is significantly narrower than the other, particularly in noisier imagesnoisier images
Results:Results: Tubular branch-handling deteriorates when one branch Tubular branch-handling deteriorates when one branch
is significantly narrower than the other, particularly in is significantly narrower than the other, particularly in noisier imagesnoisier images
0
2040
60
80
100
0.1 0.25 0.5Relative Branch Size
Bra
nche
s H
andl
ed (%
)
Ultrasound MR 1/2 MR
Tube Rate of End TaperingTube Rate of End TaperingTube Rate of End TaperingTube Rate of End Tapering
Results:Results: Core-following does not Core-following does not
continue past tube endscontinue past tube ends Core-following stops near tube Core-following stops near tube
ends in low-noise images, stops ends in low-noise images, stops earlier with increased noiseearlier with increased noise
Results:Results: Core-following does not Core-following does not
continue past tube endscontinue past tube ends Core-following stops near tube Core-following stops near tube
ends in low-noise images, stops ends in low-noise images, stops earlier with increased noiseearlier with increased noise
1/2 MR
61%
35%
3% 1%
0 1 2 3 4 5
MR
31%
6%2% 2%
59%
0 1 2 3 4 5
Ultrasound
12%
6%3% 4% 13%
62%
0 1 2 3 4 5
Core-termination errors
Slab Rate of NarrowingSlab Rate of NarrowingSlab Rate of NarrowingSlab Rate of Narrowing
Results:Results: Success of slab-like core-following is inversely related Success of slab-like core-following is inversely related
to both narrowing angle and image noiseto both narrowing angle and image noise Medialness is proportional to the cosine of the narrowing Medialness is proportional to the cosine of the narrowing
angleangle
Results are the same whether the object narrows or Results are the same whether the object narrows or widens in the direction of core-followingwidens in the direction of core-following
Results:Results: Success of slab-like core-following is inversely related Success of slab-like core-following is inversely related
to both narrowing angle and image noiseto both narrowing angle and image noise Medialness is proportional to the cosine of the narrowing Medialness is proportional to the cosine of the narrowing
angleangle
Results are the same whether the object narrows or Results are the same whether the object narrows or widens in the direction of core-followingwidens in the direction of core-following
0
20
40
60
80
100
0 15 30 45 60Narrowing Angle (degrees)
Sla
bs
Fo
llo
wed
(%
)
Ultrasound MR 1/2 MR
Slab BendingSlab BendingSlab BendingSlab Bending
Results:Results: Sharply bent slabs can be followed better by decreasing Sharply bent slabs can be followed better by decreasing
step size (like tubes)step size (like tubes) Failures occur occasionally (4% failure rate) due to Failures occur occasionally (4% failure rate) due to
intra-object interference (unlike tubes)intra-object interference (unlike tubes)
Results:Results: Sharply bent slabs can be followed better by decreasing Sharply bent slabs can be followed better by decreasing
step size (like tubes)step size (like tubes) Failures occur occasionally (4% failure rate) due to Failures occur occasionally (4% failure rate) due to
intra-object interference (unlike tubes)intra-object interference (unlike tubes)
Slab Branching AngleSlab Branching AngleSlab Branching AngleSlab Branching Angle
Results:Results: Success of slab-like branch-handling is related to Success of slab-like branch-handling is related to
branching angle and inversely related to image noisebranching angle and inversely related to image noise All failures were false negatives (like tubes)All failures were false negatives (like tubes)
Results:Results: Success of slab-like branch-handling is related to Success of slab-like branch-handling is related to
branching angle and inversely related to image noisebranching angle and inversely related to image noise All failures were false negatives (like tubes)All failures were false negatives (like tubes)
0
20
40
60
80
100
0 22.5 45 90
Branching Angle (degrees)
Bra
nch
es H
and
led
(%
)
Ultrasound MR 1/2 MR
OutlineOutlineOutlineOutline
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Motivation, Background, and Thesis StatementMotivation, Background, and Thesis Statement
Cores in 3DCores in 3D
Handling Branching Objects with CoresHandling Branching Objects with Cores
Ends of CoresEnds of Cores
Evaluation and ResultsEvaluation and Results
Scientific Contributions and Future WorkScientific Contributions and Future Work
Scientific ContributionsScientific ContributionsScientific ContributionsScientific Contributions
A robust implementation of 1D cores in 3DA robust implementation of 1D cores in 3D A system for handling branches using 1D cores A system for handling branches using 1D cores
in 3Din 3D A method for detecting ends of coresA method for detecting ends of cores An implementation of 2D cores with branch-An implementation of 2D cores with branch-
handling in 3Dhandling in 3D An analysis of the effects of object geometry An analysis of the effects of object geometry
on the performance of coreson the performance of cores
A robust implementation of 1D cores in 3DA robust implementation of 1D cores in 3D A system for handling branches using 1D cores A system for handling branches using 1D cores
in 3Din 3D A method for detecting ends of coresA method for detecting ends of cores An implementation of 2D cores with branch-An implementation of 2D cores with branch-
handling in 3Dhandling in 3D An analysis of the effects of object geometry An analysis of the effects of object geometry
on the performance of coreson the performance of cores
Future WorkFuture WorkFuture WorkFuture Work
Handle loops, not just tree topology, with tubular coresHandle loops, not just tree topology, with tubular cores
Handle slab-like children branching from tubular parentsHandle slab-like children branching from tubular parents
Improve the resistance of the slab-like method to noiseImprove the resistance of the slab-like method to noise
Integrate cores with a model-based method like m-reps to Integrate cores with a model-based method like m-reps to use prior information but still find unmodeled branchesuse prior information but still find unmodeled branches
Improve running timeImprove running time
Handle loops, not just tree topology, with tubular coresHandle loops, not just tree topology, with tubular cores
Handle slab-like children branching from tubular parentsHandle slab-like children branching from tubular parents
Improve the resistance of the slab-like method to noiseImprove the resistance of the slab-like method to noise
Integrate cores with a model-based method like m-reps to Integrate cores with a model-based method like m-reps to use prior information but still find unmodeled branchesuse prior information but still find unmodeled branches
Improve running timeImprove running time
AcknowledgementsAcknowledgementsAcknowledgementsAcknowledgements
Advisor: Steve PizerAdvisor: Steve Pizer
Committee: Stephen Aylward, Jim Damon, Guido Gerig, Committee: Stephen Aylward, Jim Damon, Guido Gerig, Jack SnoeyinkJack Snoeyink
MIDAG, Delphi Bull, and others in the departmentMIDAG, Delphi Bull, and others in the department
Funding: Office of Naval Research, National Institutes of Funding: Office of Naval Research, National Institutes of HealthHealth
Russell Taylor and NSRG, Bob Goldstein and his biology Russell Taylor and NSRG, Bob Goldstein and his biology lablab
My wife, AdeliaMy wife, Adelia
Advisor: Steve PizerAdvisor: Steve Pizer
Committee: Stephen Aylward, Jim Damon, Guido Gerig, Committee: Stephen Aylward, Jim Damon, Guido Gerig, Jack SnoeyinkJack Snoeyink
MIDAG, Delphi Bull, and others in the departmentMIDAG, Delphi Bull, and others in the department
Funding: Office of Naval Research, National Institutes of Funding: Office of Naval Research, National Institutes of HealthHealth
Russell Taylor and NSRG, Bob Goldstein and his biology Russell Taylor and NSRG, Bob Goldstein and his biology lablab
My wife, AdeliaMy wife, Adelia
Extracting Branching Object Extracting Branching Object Geometry via CoresGeometry via Cores
Extracting Branching Object Extracting Branching Object Geometry via CoresGeometry via Cores
Doctoral Dissertation DefenseDoctoral Dissertation Defense
Yoni FridmanYoni Fridman
August 17, 2004August 17, 2004
Advisor: Stephen PizerAdvisor: Stephen Pizer
Doctoral Dissertation DefenseDoctoral Dissertation Defense
Yoni FridmanYoni Fridman
August 17, 2004August 17, 2004
Advisor: Stephen PizerAdvisor: Stephen Pizer
Effects of Effects of Effects of Effects of
How does How does affect core computation affect core computation and medial atom geometry?and medial atom geometry? Cores may end sooner at branchesCores may end sooner at branches Cores shift slightlyCores shift slightly Response is weaker because spokes aren’t orthogonal Response is weaker because spokes aren’t orthogonal
to object boundariesto object boundaries
How does How does affect core computation affect core computation and medial atom geometry?and medial atom geometry? Cores may end sooner at branchesCores may end sooner at branches Cores shift slightlyCores shift slightly Response is weaker because spokes aren’t orthogonal Response is weaker because spokes aren’t orthogonal
to object boundariesto object boundaries
Why 3D Cores AreWhy 3D Cores AreBetter Than 2D CoresBetter Than 2D Cores
Why 3D Cores AreWhy 3D Cores AreBetter Than 2D CoresBetter Than 2D Cores
Using a larger number of Gaussian Using a larger number of Gaussian spokes integrates over a larger spokes integrates over a larger area, reducing the effects of noisearea, reducing the effects of noise
Using a larger number of Gaussian Using a larger number of Gaussian spokes integrates over a larger spokes integrates over a larger area, reducing the effects of noisearea, reducing the effects of noise
A slice of a synthetic 3D image of a bent tube, with the core computed successfully despite extreme noise
Constraining the Constraining the spokes to circular spokes to circular cross-sections cross-sections further reduces the further reduces the effects of noiseeffects of noise
Constraining the Constraining the spokes to circular spokes to circular cross-sections cross-sections further reduces the further reduces the effects of noiseeffects of noise
Computing the core of a tube
Penalties on MedialnessPenalties on MedialnessPenalties on MedialnessPenalties on Medialness
How exactly do I penalize medialness in slabs?How exactly do I penalize medialness in slabs? Separately penalize changes in radius, orientationSeparately penalize changes in radius, orientation No penalty for a small changeNo penalty for a small change Beyond that, penalize linearly with changesBeyond that, penalize linearly with changes
How exactly do I penalize medialness in slabs?How exactly do I penalize medialness in slabs? Separately penalize changes in radius, orientationSeparately penalize changes in radius, orientation No penalty for a small changeNo penalty for a small change Beyond that, penalize linearly with changesBeyond that, penalize linearly with changes
Re-seeding CoresRe-seeding CoresRe-seeding CoresRe-seeding Cores
Tubular Core-FollowingTubular Core-FollowingTubular Core-FollowingTubular Core-Following