• Ingen resultater fundet

ApplicationtoAirwayWallsinCTImagesJensPetersen OptimalNetSurfaceSegmentation

N/A
N/A
Info
Hent
Protected

Academic year: 2022

Del "ApplicationtoAirwayWallsinCTImagesJensPetersen OptimalNetSurfaceSegmentation"

Copied!
64
0
0

Indlæser.... (se fuldtekst nu)

Hele teksten

(1)

Faculty of Science

Optimal Net Surface Segmentation

Application to Airway Walls in CT Images Jens Petersen

(2)

Introduction

Wu and Chen’s optimal net surface problems1:

• Globally optimal solution (given the graph discretization).

• Multiple surfaces in multiple dimensions.

• Surface cost functions and geometric constraints.

• Polynomial time solution using maximum flow algorithms.

(3)

Introduction - Comparison with Graph Cut

2

Advantages:

• Can optimally deal with more than two labels.

• Initial knowledge of surface orientation and position can be used to develop shape priors.

Disadvantages:

• The sought surface(s) must be terrain-like within some initially known transformation.

(4)

Optimal Net Surface Problem

Goal: Find some terrain-like surface.

(5)

Optimal Net Surface Problem

Graph vertices belong to a disjoint set of columnsVB.

0 1 2 3 4

(6)

Optimal Net Surface Problem

A net surfaceN inG is a subset ofV, such that:

• Each vertex inN belongs to exactly one column inVB

• There exists exactly one vertex in each column belonging toN.

0 1 2 3 4

(7)

Optimal Net Surface Problem

The optimal net surface problem:

min

N

 X

ik∈N

w(ik) + X

{ik,jl}∈N

fi,j(|k−l|)

0 1 2 3 4

(8)

Optimal Net Surface Problem

Vertex cost function (positive).

min

N

 X

ik∈N

w(ik)+ X

{ik,jl}∈N

fi,j(|k−l|)

0 1 2 3 4

(9)

Optimal Net Surface Problem

Cost of all vertices in the surface.

min

N

 X

ik∈N

w(ik)+ X

{ik,jl}∈N

fi,j(|k−l|)

0 1 2 3 4

w(a2)

w(b1)

w(c0)

w(d1) w(e3)

+

+ +

+

(10)

Optimal Net Surface Problem

Edge cost function (convex, non-decreasing).

min

N

 X

ik∈N

w(ik) + X

{ik,jl}∈N

fi,j(|k−l|)

0 1 2 3 4

(11)

Optimal Net Surface Problem

Cost of all vertex pairs in the surface.

min

N

 X

ik∈N

w(ik) + X

{ik,jl}∈N

fi,j(|k−l|)

0 1 2 3 4

fa,b(1)

fb,c(1)

fc,d(2)

fd,e(1)

+

+

+

(12)

Optimal Net Surface Problem

Multiple dependent surfaces, how?

(13)

Optimal Net Surface Problem

Multiple dependent surfaces, how?

• Add a sub-graph of columns for each surface.

• Inter-surface constraints easily added.

(14)

Optimal Net Surface Problem

Multiple dependent surfaces, how?

• Add a sub-graph of columns for each surface.

• Inter-surface constraints easily added.

(15)

Optimal Net Surface - Minimum Cut Graph

Goal:

• Optimal surface(s) given by top-most vertices in minimum cut source set.

How?

a b

0 1 2 3 4

(16)

Optimal Net Surface - Minimum Cut Graph

Goal:

• Optimal surface(s) given by top-most vertices in minimum cut source set.

How?

• Add source and sink nodes.

• Force solution to be a net surface.

• Implement vertex cost function.

• Implement edge cost function.

a b

0 1 2 3 4

s t

8 8

(17)

Optimal Net Surface - Minimum Cut Graph

Goal:

• Optimal surface(s) given by top-most vertices in minimum cut source set.

How?

• Add source and sink nodes.

• Force solution to be a net surface.

• Implement vertex cost function.

• Implement edge cost function.

a b

0 1 2 3 4

s t

8888

8888

(18)

Optimal Net Surface - Minimum Cut Graph

Goal:

• Optimal surface(s) given by top-most vertices in minimum cut source set.

How?

• Add source and sink nodes.

• Force solution to be a net surface.

• Implement vertex cost function.

• Implement edge cost function.

a b

0 1 2 3 4

w(a0) w(a1) w(a2) w(a3)

w(b0) w(b1) w(b2) w(b3) w(a4)

w(b4)

(19)

Optimal Net Surface - Minimum Cut Graph

Goal:

• Optimal surface(s) given by top-most vertices in minimum cut source set.

How?

• Add source and sink nodes.

• Force solution to be a net surface.

• Implement vertex cost function.

• Implement edge cost function.

a b

0 1 2 3 4

(20)

Optimal Net Surface - Minimum Cut Graph

Goal:

• Optimal surface(s) given by top-most vertices in minimum cut source set.

How?

• Add source and sink nodes.

• Force solution to be a net surface.

• Implement vertex cost function.

• Implement edge cost function.

gi,j(x) =

0 ifx<0

fi,j(1) ifx= 0

fi,j(x+ 1)2fi,j(x)+

fi,j(x1) ifx>0 Assume WLOG:fi,j(0) = 0 and note:gi,j(x)0.

a b

0 1 2 3 4

(21)

Optimal Net Surface - Minimum Cut Graph

Goal:

• Optimal surface(s) given by top-most vertices in minimum cut source set.

How?

• Add source and sink nodes.

• Force solution to be a net surface.

• Implement vertex cost function.

• Implement edge cost function.

gi,j(x) =

0 ifx<0

fi,j(1) ifx= 0

fi,j(x+ 1)2fi,j(x)+

fi,j(x1) ifx>0 Assume WLOG:fi,j(0) = 0 and note:gi,j(x)0.

a b

0 1 2 3 4

ga,b(2-2)

ga,b(2-1)

ga,b(2-0)

(22)

Optimal Net Surface - Minimum Cut Graph

Goal:

• Optimal surface(s) given by top-most vertices in minimum cut source set.

How?

• Add source and sink nodes.

• Force solution to be a net surface.

• Implement vertex cost function.

• Implement edge cost function.

gi,j(x) =

0 ifx<0

fi,j(1) ifx= 0

fi,j(x+ 1)2fi,j(x)+

fi,j(x1) ifx>0 Assume WLOG:fi,j(0) = 0 and note:gi,j(x)0.

a b

0 1 2 3 4

(23)

Optimal Net Surface - Minimum Cut Graph

gi,j(x) =

0 ifx<0

fi,j(1) ifx= 0

fi,j(x+ 1)2fi,j(x)+

fi,j(x1) ifx>0 Example cut:

w(a3) +w(b0)+3ga,b(0) + 2ga,b(1) +ga,b(2)

a b

0 1 2 3 4

(24)

Optimal Net Surface - Minimum Cut Graph

gi,j(x) =

0 ifx<0

fi,j(1) ifx= 0

fi,j(x+ 1)2fi,j(x)+

fi,j(x1) ifx>0 Example cut:

w(a3) +w(b0)+3ga,b(0) + 2ga,b(1) +ga,b(2) w(a3) +w(b0)+3fa,b(1) + 2(fa,b(2)2fa,b(1) +

fa,b(0)) +fa,b(3)2fa,b(2) +fa,b(1) =

a b

0 1 2 3 4

(25)

Optimal Net Surface - Minimum Cut Graph

gi,j(x) =

0 ifx<0

fi,j(1) ifx= 0

fi,j(x+ 1)2fi,j(x)+

fi,j(x1) ifx>0 Example cut:

w(a3) +w(b0)+3ga,b(0) + 2ga,b(1) +ga,b(2) w(a3) +w(b0)+3fa,b(1) + 2(fa,b(2)2fa,b(1) +

fa,b(0)) +fa,b(3)2fa,b(2) +fa,b(1) = w(a3) +w(b0)+fa,b(3)

a b

0 1 2 3 4

(26)

Optimal Net Surface - Minimum Cut Graph

Infinite cost edges→hard constraints.

• Change at most one index.

a b

0 1 2 3 4

8888

(27)

Optimal Net Surface - Minimum Cut Graph

Infinite cost edges→hard constraints.

• Force solution in one column to be above or same level as other.

a b

0 1 2 3 4

88888

(28)

Graph Space - How?

Easy if the sought surface (or contour):

• Is terrain-like.

• Can be easily ’unfolded’: tubular, star-shaped, etc.

However most surfaces are not like that.

(29)

Graph Space - Different Approaches

Approach of Liu et al.3:

• Initial rough segmentation.

• Columns at surface points in normal direction.

• Length: distance to the inner and outer medial axes.

3

(30)

Graph Space - Different Approaches

Approach of Liu et al.3:

• Initial rough segmentation.

• Columns at surface points in normal direction.

• Length: distance to the inner and outer medial axes.

3

(31)

Graph Space - Different Approaches

Approach of Liu et al.3:

• Initial rough segmentation.

• Columns at surface points in normal direction.

• Length: distance to the inner and outer medial axes.

3

(32)

Graph Space - Different Approaches

Approach of Liu et al.3:

Columns can be too short.

3

(33)

Graph Space - Different Approaches

Approach of Liu et al.3:

Poor results in regions with high curvature!

3

(34)

Graph Space - Flow Lines

Our approach4:

• Combine regularization of the rough initial segmentation with computation of columns.

• Columns constructed as greatest ascent/descent flow lines from surface points in the smoothed initial segmentation.

(35)

Graph Space - Flow Lines

Our approach4:

• Combine regularization of the rough initial segmentation with computation of columns.

• Columns constructed as greatest ascent/descent flow lines from surface points in the smoothed initial segmentation.

Advantages:

• Well suited for surfaces with high curvature.

• Noise and small errors can be removed by increasing regularization.

• Surfaces do not self-intersect.

(36)

Graph Space - Flow Lines

1 Compute rough initial segmentation obtaining a binary image.

2 Convolve binary image with some regularization filter.

3 Trace flow lines from surface points of the initial segmentation inward and outward.

4 Find surfaces using an optimal net surface method with columns following the flow lines.

(37)

Graph Space - Flow Lines

1 Compute rough initial segmentation obtaining a binary image.

2 Convolve binary image with some regularization filter.

3 Trace flow lines from surface points of the initial segmentation inward and outward.

4 Find surfaces using an optimal net surface method with columns following the flow lines.

(38)

Graph Space - Flow Lines

1 Compute rough initial segmentation obtaining a binary image.

2 Convolve binary image with some regularization filter.

3 Trace flow lines from surface points of the initial segmentation inward and outward.

4 Find surfaces using an optimal net surface method with columns following the flow lines.

(39)

Graph Space - Flow Lines

1 Compute rough initial segmentation obtaining a binary image.

2 Convolve binary image with some regularization filter.

3 Trace flow lines from surface points of the initial segmentation inward and outward.

4 Find surfaces using an optimal net surface method with

(40)

Application to Airway Walls in CT Images

Why do we want to segment airway walls in CT?

• Relevant in connection with Chronic Obstructive Pulmonary Disease (COPD).

Airway lumen narrowing.

Airway wall thickening.

• Two surface problem→inner and outer wall surface.

(41)

Application to Airway Walls in CT Images

(42)

Application to Airway Walls in CT Images

Initial segmentation Lo et al.5:

• Segmentation of the lumen surface.

Cost functions:

• Vertex cost: weightings of the intensity derivatives.

• Edge cost:

Linear non-smoothness penalty for each surface.

Linear surface separation penalty.

(43)

Results - Visualizations

(a) Inner Surface (b) Outer Surface

(44)

Results - Cross-sections near bifurcations

Flow line columns with Gaussian regularization

Medial axes + normal direction columns

(45)

Results - Manual Annotations

319 Manually annotated cross-sectional slices.

Normal direction Flow line Dice coefficient 0.87±0.09 0.89±0.06 Contour distance (mm) 0.11±0.13 0.09±0.10

(46)

Results - Manual Annotations

319 Manually annotated cross-sectional slices.

Normal direction Flow line Dice coefficient 0.87±0.09 0.89±0.06 Contour distance (mm) 0.11±0.13 0.09±0.10

(47)

Results - Manual Annotations

319 Manually annotated cross-sectional slices.

Normal direction Flow line Dice coefficient 0.87±0.09 0.89±0.06 Contour distance (mm) 0.11±0.13 0.09±0.10

(48)

Results - Manual Annotations

319 Manually annotated cross-sectional slices.

Normal direction Flow line Dice coefficient 0.87±0.09 0.89±0.06 Contour distance (mm) 0.11±0.13 0.09±0.10

(49)

Results - Manual Annotations

319 Manually annotated cross-sectional slices.

Normal direction Flow line Dice coefficient 0.87±0.09 0.89±0.06 Contour distance (mm) 0.11±0.13 0.09±0.10

(50)

Results - Correlation with Lung Function

• 480 low dose (120 kV and 40 mAs), 0.78mm×0.78mm×1mm

• Measures: lumen volume (blue) and wall area percentage (green).

• Spearman correlation with FEV1 (% predicted).

1 2 3 4 5 6 7 8

−0.6

−0.4

−0.2 0 0.2 0.4 0.6

Generation

ρ

(51)

Questions?

Thank you!

(52)

Extra Slides: Graph in More Detail

(53)

Extra Slides: Graph in More Detail

(54)

Extra Slides: Graph in More Detail

(55)

Extra Slides: Graph in More Detail

(56)

Extra Slides: Graph in More Detail s

t

Cap. = Surface cost

Derivative weightings

Cost function

(57)

Extra Slides: Graph in More Detail s

t

Cap. = inf.

Prevent folding surfaces

(58)

Extra Slides: Graph in More Detail s

t

Cap.

= sm ooth

ness constr

aint

Linear soft

Smoothness constraint

(59)

Extra Slides: Graph in More Detail s

t

Inner (green), outer (blue)

Sub-graph for each surface

(60)

Extra Slides: Graph in More Detail s

t

Inner (green), outer (blue)

Sub-graph for each surface

(61)

Extra Slides: Graph in More Detail

Separation constraint

(62)

Extra Slides: Graph in More Detail

Cap. = Separ

ation cons traint

Linear soft

Separation constraint

(63)

Extra Slides: Graph in More Detail s

t

Minimum-cut

(64)

Extra Slides: Training

Data:

• 329 Cross-sectional images from 8 subjects.

• Randomly extracted perpendicular to and centered on airway centerline.

• Manually annotated with lumen and complete airway area.

Training:

• Inner and outer surface smoothness constraints.

• Inner and outer cost function derivative weightings.

• Separation constraint.

Method:

• Similar to coordinate search.

• Criteria: Dice coefficient.

Referencer

RELATEREDE DOKUMENTER

3.3 Lifting to higher potential – engineering competition in Helsinki, Finland .... Methodical

29 However, the same Study also performed a more detailed flow analysis in order to determine whether the induced flow deviations at the involved AC borders and the

When I asked The Head during our first meeting to explain what means and tools he used in his daily practice, he answered by explaining the reasoning behind his choice of using

We then introduce in Section 3 a useful notion of weak stratification and develop a transformation from ALFP clauses to weakly stratified clauses; the view is that violations of

The diastolic spectrum in normal subjects is dominated by low frequency noise which originates from several sources including flow in the larger arteries and

 NOTE 1 to entry: During consecutive time intervals values could be achieved by copying from an accumulating main register which contains actual values of e.g. thermal energy

▪ 11-18% energy savings by reversing the air flow in the test tunnel and 1.4 - 1.9 hours (5-7%) reduced freezing time. ▪ 10% energy savings by reversing the air flow in the

To prove the idea I will also create a language FlowCode that can be translated to Flow and a Flow compiler that can compile Flow to parallel code.. 2.2.1