active shape models suppose we have a statistical shape model –trained from sets of examples how...

26
Active Shape Models • Suppose we have a statistical shape model – Trained from sets of examples • How do we use it to interpret new images? • Use an “Active Shape Model” • Iterative method of matching model to image

Upload: daisy-pennix

Post on 01-Apr-2015

216 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Active Shape Models

• Suppose we have a statistical shape model– Trained from sets of examples

• How do we use it to interpret new images?

• Use an “Active Shape Model”

• Iterative method of matching model to image

Page 2: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Building Models

• Require labelled training images– landmarks represent correspondences

Page 3: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Building Shape Models

• Given aligned shapes, { }

• Apply PCA

• P – First t eigenvectors of covar. matrix

• b – Shape model parameters

ix

Pbxx

Page 4: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Hand Shape Model

1 Varying b2 Varying b 3 Varying b

Page 5: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Active Shape Models

• Match shape model to new image

• Require:– Statistical shape model– Model of image structure at each point

Model Point

Model of Profile

Page 6: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Placing model in image

• The model points are defined in a model co-ordinate frame

• Must apply global transformation,T, to place in image

Model Frame Image

Pbxx

)( PbxX T),,,;( sYXT ccx

Page 7: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

ASM Search Overview

• Local optimisation

• Initialise near target– Search along profiles for best match,X’– Update parameters to match to X’.

),( ii YX

Page 8: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Local Structure Models

• Need to search for local match for each point

• Model– Strongest edge

– Correlation

– Statistical model of profile

Page 9: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Computing Normal to Boundary

Tangent Normal ),(),( xyyx ttnn ),( yx tt

),( 11 ii YX

),( 11 ii YX

22

),(),(

yx

yxyx

dd

ddtt

11

11

iiy

iix

YYd

XXd

(Unit vector)

Page 10: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Sampling along profiles

Model boundary

Model point

Profile normal to boundary

Interpolate at these points

,...2,1,0,1,2...

),(),(

i

nsnsiYX ynxn

),( YX

xnns

ynns

ns

),( along length of steps Take yxn nns

Page 11: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Noise reduction

• In noisy images, average orthogonal to profile– Improves signal-to-noise along profile

1ig2ig

3ig

321i 25.05.025.0g Use iii ggg

,...)g,g,g,g,g(...,

is profile Sampled

2101-2-g

Page 12: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Searching for strong edges

)(xg

x

dx

xdg )(

))1()1((5.0)(

xgxgdx

xdg

Select point along profile at strongest edge

Page 13: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Profile Models

• Sometimes true point not on strongest edge

• Model local structure to help locate the point

Strongest edge True position

Page 14: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Statistical Profile Models

• Estimate p.d.f. for sample on profile

• Normalise to allow for global lighting variations

• From training set learn

g

)(gp

Page 15: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Profile Models

• For each point in model– For each training image

• Sample values along profile

• Normalise

– Build statistical model • eg Gaussian PDF using eigen-model approach

Page 16: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Searching Along Profiles

• During search we look along a normal for the best match for each profile

)(xg

x

))(( xp g

)(xg

Form vector from samples about x

Page 17: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Search algorithm

• Search along profile

• Update global transformation, T, and parameters, b, to minimise

2|)(| PbxX T

),( ii YX

Page 18: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Updating parameters

• Find pose and model parameters to minimise

• Either– Put into general optimiser– Use two stage iterative approach

2|),,,;(|),,,,( sYXTsYXf cccc PbxXb

Page 19: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Updating Parameters2|),,,;(|),,,,( sYXTsYXf cccc PbxXb

2|)(|minimise which ),,,( find and Fix PbxXb TsYX cc

2|)(|minimises which find and ),,,(Fix PbxXb TsYX cc

))(( 1 xXPb TT

Repeat until convergence:

Analytic solution exists (see notes)

Page 20: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Update step

• Hard constraints

• Soft constraints

• Can also weight by quality of local match

tp)p(T bPbxX subject to |)(| Minimise 2

ii λ||b 3 e.g.

)(log/|)()(| Minimise 2r

21 )p( T bPbxX

Page 21: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Multi-Resolution Search

• Train models at each level of pyramid– Gaussian pyramid with step size 2– Use same points but different local models

• Start search at coarse resolution– Refine at finer resolution

Page 22: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Gaussian Pyramids

• To generate image at level L– Smooth image at level L-1 with gaussian filter

(eg (1 5 8 5 1)/20)– Sub-sample every other pixel

Each level half the size of the one below

Page 23: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Multi-Resolution Search

• Start at coarse resolution

• For each resolution– Search along profiles for best matches– Update parameters to fit matches– (Apply constraints to parameters)– Until converge at this resolution

Page 24: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

ASM Example : Hip Radiograph

Page 25: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

ASM Example: Spine

Page 26: Active Shape Models Suppose we have a statistical shape model –Trained from sets of examples How do we use it to interpret new images? Use an “Active Shape

Active Shape Models

• Advantages– Fast, simple, accurate– Efficient to extend to 3D

• Disadvantages– Only sparse use of image information– Treat local models as independent