Top Banner
ITK The Insight Segmentation & Registration Toolkit Martin Urschler Institute for Computer Graphics and Vision Graz University of Technology
41

ITK The Insight Segmentation & Registration Toolkit

Feb 11, 2016

Download

Documents

HUBERT

ITK The Insight Segmentation & Registration Toolkit. Martin Urschler Institute for Computer Graphics and Vision Graz University of Technology. Contents. What is ITK? Background Concepts Examples Filters Segmentation Rigid and Deformable Registration Conclusion. What is ITK?. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ITK  The Insight Segmentation & Registration Toolkit

ITK The Insight Segmentation &

Registration Toolkit

Martin Urschler

Institute for Computer Graphics and VisionGraz University of Technology

Page 2: ITK  The Insight Segmentation & Registration Toolkit

ContentsWhat is ITK?BackgroundConcepts

Examples FiltersSegmentationRigid and Deformable Registration

Conclusion

Page 3: ITK  The Insight Segmentation & Registration Toolkit

What is ITK?(Medical) Image Processing in C++SegmentationRegistrationNo Graphical User Interface (GUI)Bindings to Qt, Fltk

No VisualizationBindings to Kitware VTK, VolView

Page 4: ITK  The Insight Segmentation & Registration Toolkit

Short HistoryNLM ITK @ www.itk.org1999: NIH grant for 3 years to develop open source medical seg. & reg. toolkitInsight Software Consortium:GE Corporate R&D Kitware (vtk, VolView)UNC, UT, UPenn

Page 5: ITK  The Insight Segmentation & Registration Toolkit

How To Integrate ITK?

Page 6: ITK  The Insight Segmentation & Registration Toolkit

What Does One Need?

Page 7: ITK  The Insight Segmentation & Registration Toolkit

Concepts (I)C++ Generic Programming (Templates)Data PipelineSupport for Multi-ThreadingEvents and ObserversSmart PointersObject Factories for Data ManagementTCL and Python wrappingsExtreme Programming

Page 8: ITK  The Insight Segmentation & Registration Toolkit

Concepts (II)

Page 9: ITK  The Insight Segmentation & Registration Toolkit

Concepts (III)Data Pipeline

Page 10: ITK  The Insight Segmentation & Registration Toolkit

Concepts (IV)vxl – vnl library (vxl.sourceforge.net)C++ wrapper around netlib (fortran) (specialized) matrix & vector classesMatrix decompositions (svd, …)Real polynomials and root finderOptimization (levenberg-marquardt,

gradient descent, …)

Page 11: ITK  The Insight Segmentation & Registration Toolkit

Itk::Image & itk::MeshImage< PixelType, Dimension >RegionsLargestPossibleBufferedRequested

Mesh< PointType, Dimension, MeshTrait > Indexed face set

Page 12: ITK  The Insight Segmentation & Registration Toolkit

Spatial ObjectsScene Graph - Object hierarchyStores transformationsCheck if points are inside SO, …E.g. Image, Surface, Landmark, Tube, Ellipse, …

Page 13: ITK  The Insight Segmentation & Registration Toolkit

Basic Filters

Data Pipeline

e.g. Threshold, Casting, Intensity Mapping, Gradient, Mean, Median, Binary & Grayscale Morphology, (Recursive) Gaussian-Blur, Canny Edge Detect, Laplacian, Anisotropic Diffusion, Bilateral Filtering,

DistanceMap, Image Resampling, …

Page 14: ITK  The Insight Segmentation & Registration Toolkit

SegmentationPartitioning images into meaningful pieces, e.g. delineating regions of anatomical interest.

Edge based – find boundaries between regions Pixel Classification – metrics classify regions Region based – similarity of pixels within a

segment

Page 15: ITK  The Insight Segmentation & Registration Toolkit

Segmentation Pipeline

Page 16: ITK  The Insight Segmentation & Registration Toolkit

Segmentation Pipeline

Page 17: ITK  The Insight Segmentation & Registration Toolkit

SegmentationRegion Growing, different criterionsConnected thresholdNeighbourhood connectedConfidence connected

Statistical model of region (mean, std-dev)Fuzzy connected

Unsharp definition of an affinity relation.

Page 18: ITK  The Insight Segmentation & Registration Toolkit

Watershed Segmentation

Page 19: ITK  The Insight Segmentation & Registration Toolkit

Watershed Segmentation

Level 1

Page 20: ITK  The Insight Segmentation & Registration Toolkit

Watershed Segmentation

Level 2

Page 21: ITK  The Insight Segmentation & Registration Toolkit

Level Set SegmentationModel n-dim. Surface movement as an evolving wavefrontSurface is zero level set of n+1-dim. function f

Solve PDE

( , ) ( ) ( , ) 0f x t v x f x tt

Page 22: ITK  The Insight Segmentation & Registration Toolkit

Level Set SegmentationDefine speed term v(x) to go to zero at edges – data fitting termSurface motion based on image features or intensities

Insight PDE solver framework

Page 23: ITK  The Insight Segmentation & Registration Toolkit

Level Set Segmentation

Page 24: ITK  The Insight Segmentation & Registration Toolkit

Level Set SegmentationExample: ThresholdLevelSetImageFilter

Page 25: ITK  The Insight Segmentation & Registration Toolkit

Level Set Segmentation

Page 26: ITK  The Insight Segmentation & Registration Toolkit

Combined SegmentationInitial model – confidence conn. region growFit to data using canny based level set filter

Page 27: ITK  The Insight Segmentation & Registration Toolkit

Registration FrameworkFind transformation mapping homologous points into each otherMany medical applications:Time series registrationMulti-modality image fusion (MR/CT –

SPECT, …)Atlas construction (for segmentation)

Page 28: ITK  The Insight Segmentation & Registration Toolkit

Registration FrameworkComponents:

Page 29: ITK  The Insight Segmentation & Registration Toolkit

Inverse MappingRelationship between points of two imagesOutput pixels are mapped back onto the input image

Avoids holes in outputInterpolate output pixel from input neighbourhood

Page 30: ITK  The Insight Segmentation & Registration Toolkit

Note on Spacing & OriginIn medical img. registration, a transform is rigid only with respect to physical coordinate and not pixel coordinatePhys.-Coord = Pixel-Coord * Img-Spacing + Img-Origin

Registration is always with respect to physical coordinates! -> make sure that image spacing and origin are set accordingly!

Page 31: ITK  The Insight Segmentation & Registration Toolkit

RegistrationitkTransform: Identity, Translation, Rotation, Similarity,

Affine, …Alternative 3D rigid transform:

Quaternion/VersorRigidTransform Exact representation of 3D rotation Versor leads to smoother parameter space for

optimization Avoids Gimbal Lock!

Page 32: ITK  The Insight Segmentation & Registration Toolkit

RegistrationitkInterpolateImageFunction:Choice: Efficiency vs. QualityNearestNeighbor (piecewise constant image)Linear (piecewise linear image)BSpline

Page 33: ITK  The Insight Segmentation & Registration Toolkit

RegistrationImageToImageMetric:Measure how well „moving“ image matches

fixed oneMean SquaresNormalized CorrelationMutual Information (different

implementations available)

Page 34: ITK  The Insight Segmentation & Registration Toolkit

RegistrationMutual Information:Entropies of images A,B: H(A), H(B)Joint entropy of A,B: H(A,B) If A and B independent H(A,B) = H(A)+H(B)Else difference is MI -> Minimize differenceProblem: estimate pdfs

for H(A), H(B), H(A,B)

Page 35: ITK  The Insight Segmentation & Registration Toolkit

RegistrationOptimizer:Conjugate GradientGradientDescentRegularStep GradientDescentEvolutionaryLevenberg-MarquardtSome specialized algorithms

Page 36: ITK  The Insight Segmentation & Registration Toolkit

RegistrationItk(MultiResolution)ImageRegistration class combines all componentsRobustness: Multiscale Approach

based on image pyramids

Translation to Rigid to Deformable

Coarse to fine grid strategy

Page 37: ITK  The Insight Segmentation & Registration Toolkit

Deformable RegistrationFEM-basedModel image as physical body on which

external forces actBody deforms to minimize external forceResistance of body to deformation serves

as regularizationFormulation as regularized variational

energy optimization

Page 38: ITK  The Insight Segmentation & Registration Toolkit

Deformable RegistrationBSplineDeformableTransformDeformable warpDeformation field by optimizing BSpline

coefficientsGrid positioning

Page 39: ITK  The Insight Segmentation & Registration Toolkit

Deformable RegistrationDemons algorithm (J.P. Thirion) Intra-Modality Image is set of iso-contours Regular grid of forces deforms image by pushing

contours in normal direction Displacement from optical flow equation with

regularization term

Useful for segmentation by registering to atlas.

Page 40: ITK  The Insight Segmentation & Registration Toolkit

Demons Algorithm Scheme

Page 41: ITK  The Insight Segmentation & Registration Toolkit

ConclusionVery useful for rapid prototypingStrongly growing community and code baseProblems:Very complexOverhead -> higher run-timesStill under development