ITK Deformable Registration - PowerPoint PPT Presentation

1 / 50
About This Presentation
Title:

ITK Deformable Registration

Description:

Title: ITK Architecture Document presentation format: On-screen Show Other titles: Times New Roman Arial StarSymbol Wingdings Courier New Default Design Bitmap Image ... – PowerPoint PPT presentation

Number of Views:459
Avg rating:3.0/5.0
Slides: 51
Provided by: wikiNami
Category:

less

Transcript and Presenter's Notes

Title: ITK Deformable Registration


1
ITK Deformable Registration
Demons Methods
2
Deformable Registration
Deformable Registration
3
Deformable Transforms
Deformable Transforms
4
Deformable Transformation
y
y
Transform
x
x
Fixed Image
Moving Image
5
Deformable Transformation
y
y
Transform
x
x
Fixed Image
Moving Image
6
Deformable Transformation
y
y
Transform
x
x
Fixed Image
Moving Image
7
Image Resampling
Interpolator
FixedImage
Resample Image Filter
MovingImage
DeformedImage
Transform
8
Image Resampling
Interpolator
FixedImage
Resample Image Filter
MovingImage
High Order Polynomials
Orthogonal Basis
Splines
Explicit Vector Field
DeformedImage
Transform
9
Kernel Splines Transforms
Target Landmarks
Source Landmarks
Displacement Vectors
Interpolated Values
10
Kernel Spline Transforms
  • Thin Plates
  • Thin Plates R2 log R
  • Elastic Body
  • Elastic Body Reciprocal
  • Volume

11
Kernel Spline Transforms
InsightApplications / ThinPlateSplines
12
Resampling Kernel Spline Transform
include "itkImage.h" include "itkResampleImageFi
lter.h" include "itkLinearInterpolateImageFunctio
n.h" include "itkElasticBodySplineKernelTransform
.h" typedef itkImagelt char, 2 gt
ImageType ImageTypeConstPointer fixedImage
GetFixedImage() ImageTypeConstPointer
movingImage GetMovingImage() typedef
itkLinearInterpolateImageFunctionlt
ImageType,
double gt
InterpolatorType InterpolatorTy
pePointer interpolator InterpolatorTypeNew()
typedef itkResampleImageFilterlt ImageType,
ImageType gt FilterType FilterTypeP
ointer resampler FilterTypeNew()
13
Resampling Kernel Spline Transform
  • typedef itkElasticBodySplineKernelTransformlt
    double, 2 gt
    TransformType
  • TransformTypePointer transform
    TransformTypeNew()
  • resampler-gtSetInterpolator( interpolator )
  • resampler-gtSetInput( movingImage )
  • ImageTypeRegionType region fixedImage-gtGetBuff
    eredRegion()
  • resampler-gtSetSize( region-gtGetSize() )
  • resampler-gtSetOutputStartIndex(
    region-gtGetIndex() )
  • resampler-gtSetOutputSpacing( fixedImage-gtGetSpacin
    g() )
  • resampler-gtSetOutputOrigin( fixedImage-gtGetOrigin(
    ) )

14
Resampling Kernel Spline Transform
resampler-gtSetTransform( transform ) typedef
TransformTypePointSetType
PointSetType PointSetTypePointer
sourceLandmarks PointSetTypeNew() PointSetTyp
ePointer targetLandmarks PointSetTypeNew()
transform-gtSetSourceLandmarks( sourceLandmarks
) transform-gtSetTargetLandmarks( targetLandmarks
) typedef PointSetTypePointsContainer
PointsContainer PointsContainerPointer
sources sourceLandmarks-gtGetPoints() PointsCont
ainerPointer targets targetLandmarks-gtGetPoint
s()
15
Resampling Kernel Spline Transform
  • sources-gtReserve( numberOfLandmarks )
  • targets-gtReserve( numberOfLandmarks )
  • typedef PointSetTypePointType PointType
  • PointType source
  • PointType target
  • for( int i 0 i lt numberOfLandmarks i )
  • inputFile gtgt source
  • inputFile gtgt target
  • sources-gtInsertElement( i, source )
  • targets-gtInsertElement( i, target )
  • transform-gtComputeWMatrix()
  • resampler-gtUpdate() // Finally !!

16
Kernel Spline Transforms
VolView ITK Plugin
17
Kernel Spline Transforms
VolView ITK Plugin
18
Deformable Transforms
Deformation Fields
19
Deformation Vector Field
ParaView http//www.paraview.org
20
Warp Image Filter
include "itkImage.h" include "itkWarpImageFilter
.h" include "itkLinearInterpolateImageFunction.h"
typedef itkImagelt char, 2 gt
ImageType ImageTypeConstPointer fixedImage
GetFixedImage() ImageTypeConstPointer
movingImage GetMovingImage() typedef
itkLinearInterpolateImageFunctionlt
ImageType,
double gt
InterpolatorType InterpolatorTy
pePointer interpolator InterpolatorTypeNew()
typedef itkVectorlt float, 2 gt
VectorType typedef itkImagelt VectorType , 2 gt
VectorFieldType VectorFieldTypePointer
vectorField GetVectorField()
21
Warp Image Filter
  • typedef itkWarpImageFilterlt ImageType,
  • ImageType,
  • VectorFieldType gt WarpFilterType
  • WarpFilterTypePointer warpFilter
    WarpFilterTypeNew()
  • warpFilter-gtSetInterpolator( interpolator )
  • warpFilter-gtSetInput( movingImage )
  • warpFilter-gtSetOutputSpacing( fixedImage-gtGetSpaci
    ng() )
  • warpFilter-gtSetOutputOrigin( fixedImage-gtGetOrigin
    () )
  • warpFilter-gtSetDeformationField( vectorField )
  • warpFilter-gtUpdate()
  • ImageTypeConstPointer deformedImage
    warpFilter-gtGetOutput()

22
Demons Registration
Demons Registration
23
Demons Registration
Demons is a Family of Algorithms
24
Demons Registration
Demons Type 0
25
Demons Registration Type 0
Transform
Scene
Model
26
Demons Registration Type 0
Transform
Scene
Gradients
Model
27
Demons Registration Type 0
Transform
Scene
Forces
Model
28
Demons Registration
Demons Type 1
29
Demons Registration Type 1
Transform
Scene
Model
Vector Field
30
Demons Registration Type 1
Transform
Scene
Model
Vector Field
31
Demons Registration Type 1
Transform
Scene
Model
Vector Field
32
Demons Registration Type 1
Transform
Scene
Model
Vector Field
33
Demons Registration Type 1
Gradient
Scene
34
Demons Registration Type 1
Current Estimation
Intensity
Space
Gradient
Desired Displacement
Scene
35
Demons Registration Type 1
Transform
Scene
Model
Vector Field
36
Demons Registration Type 1
Scene
37
Demons Registration Type 1
Iterations
Previous Field
Gaussian Smoothing
38
Demons Registration Type 1
( s m ) . Grad(s)
V
Grad(s)2
( s m ) . Grad(s)
V
Grad(s)2 (s-m)2
K
39
Image Registration Framework
FixedImage
Increment Computation
PDE Solver
MovingImage
Interpolator
DeformationField
Transform
40
Demons Registration Type 1
include "itkImage.h" include "itkDemonsRegistrat
ionFilter.h" typedef itkImagelt char, 2 gt
ImageType ImageTypeConstPointer fixedImage
GetFixedImage() ImageTypeConstPointer
movingImage GetMovingImage() typedef
itkVectorlt float, 2 gt VectorType typedef
itkImagelt VectorType , 2 gt VectorFieldType t
ypedef itkDemonsRegistrationFilterlt
ImageType, ImageType,
VectorFieldType gt DemonsType DemonsType
Pointer demons DemonsTypeNew()
41
Demons Registration Type 1
  • demons-gtSetFixedImage( fixedImage )
  • demons-gtSetMovingImage( movingImage )
  • demons-gtSetNumberOfIterations( 200 )
  • demons-gtSetStandardDeviations( 1.0 )
  • demons-gtUpdate()
  • ImageTypeConstPointer vectorField
    demons-gtGetOutput()

42
Demons Registration Type 1
Scene
43
Demons Registration Type 1
Model
44
Demons Registration Type 1
After Registration
45
Demons Registration Type 1
Scene
46
Demons Registration Type 1
Scene
47
Requirements
Fixed and Moving images should have the same
intensity distribution !
48
Eventual Preprocessing
- Histogram Matching Filter- Anisotropic
Diffusion Filtering
49
Image Registration Framework
FixedImage
Increment Computation
PDE Solver
MovingImage
Interpolator
DeformationField
Transform
Resampler
MovingRegistered
50
Enjoy ITK !
Write a Comment
User Comments (0)
About PowerShow.com