Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Curvature-Based Registration For Slice Interpolation Of
Medical Images
Ahmadreza Baghaie, Zeyun Yu
College Of Engineering And Applied Science, University Of Wisconsin - Milwaukee
Sept 3, 2014
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 1 / 27
Content
1 Introduction
2 Literature Review
3 Image Registration
4 Motivation
5 Proposed Method
6 Results and Discussion
7 Conclusion
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 2 / 27
Introduction
What is slice interpolation?
Using modern image modalities, like CT and MRI, a sequence of
images are provided from body organs that can be used in building
3D models.
The resolution of the images is not identical in all three directions.
This asymmetry in the resolution causes problems such as
step-shaped iso-surfaces and discontinuity in structures in 3D
reconstructed models.
Fig.1 A series of slices of human brain
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 3 / 27
Literature Review
What has been done before?
In general, methods of interpolation can be divided into two groups:
Scene-based interpolation:
In scene based interpolation methods, the final result of interpolation is
directly computed from the intensity values of input images.
Linear and cubic spline interpolation methods are two examples of this
group.
The major advantages of these methods are their simplicity and low
computation complexity.
They suffer from blurring effects in object boundaries, which makes
their results non-realistic and visually unpleasing.
Object-based interpolation:
In object based methods, extracted information from objects contained
in input images are used in order to guide the interpolation into a more
accurate result.
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 4 / 27
Literature Review
Registration based slice interpolation methods are based on two important
assumptions:
The consecutive slices contain similar anatomical features.
The registration method is capable of finding the appropriate
transformation map to match these similar features.
What did we do?
In the present work, we developed a novel image registration based
method for slice interpolation using curvature registration method.
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 5 / 27
Image Registration
Image Registration
Given two images, reference (Re) and template (Te), image
registration is the process of finding a valid and optimal spatial
transformation such that the transformed template image matches
the reference image.
Two different classes:
Parametric: rigid, affine, landmark-based, FFT-based, spline, etc.
Non-parametric: diffusion, fluid, curvature, elastic, etc.
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 6 / 27
Image Registration
Image registration is an ill-posed inverse problem.
The process has three components:
1 a deformation model;
2 an objective function to be optimized;
3 an optimization method.
A general objective function can be defined as:
E[u] = D[Re, Te ◦ u] + αS
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 7 / 27
Image Registration
Distance measure:
Sum of Squared Differences (SSD);
Mutual Information (MI);
Cross-Correlation (CC);
Normalized Gradient Fields (NGF);
etc....
Smoothness term:
Elastic registration;
Fluid registration;
Diffusion registration;
Curvature registration;
etc....
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 8 / 27
Motivation
Motivation
Image registration is called a single direction model because the
reference image is fixed and only the template image is moving.
This causes asymmetry in the results in such a way that if we fix the
template image and try to find the transformation needed for the
reference image to match the template image (backward registration),
the results of forward and backward registration are not the exact
opposite of each other.
Usually in image registration based slice interpolation, first the two
images are registered and then the in-between slice is reconstructed
using interpolation techniques along the displacement field.
Here we combined these two steps together!
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 9 / 27
Proposed Method
Curvature-based slice interpolation
Assuming 2 input images, R1 and R2,
and assuming linear displacement for
corresponding points in the two images:
E[u] = D[R1 ◦ −u, R2 ◦ u] + αS[u]
where
R ◦ u = R(x + u)
,x being the image grid.
Fig.2 Known slices (top and
bottom) with the unknown
slice (middle)
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 10 / 27
Proposed Method
SSD is defined as:
D = [R1 ◦ −u, R2 ◦ u] :=
1
2
||R1(x − u) − R2(x + u)||2
L2
=
1
2 Ω
(R1(x − u) − R2(x + u))2
dx
Smoothness term is defined as:
S[u] =
1
2
2
l=1 Ω
(∆ul )2
dx
where ∆ is the curvature operator, and the summation is computed over
two dimensions of the images and the integral is computed inside the
domain of the image.
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 11 / 27
Proposed Method
In order to minimize the above mentioned joint functional, computing the
Gateaux derivative of E[u] and equaling that to zero to find the minimum
point, an Euler-Lagrange PDE equation is resulted like follows:
f (x, u(x)) + αAcurv
[u](x) = 0
where
Acurv
[u] = ∆2
u
and
f (x, u(x)) = (R2(x + u) − R1(x − u)).( R1(x − u) + R2(x + u))
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 12 / 27
Proposed Method
To solve this PDE, a time-stepping implicit iteration method can be
considered:
∂tuk+1
= f (x, uk
(x, t)) + αAcurv
[uk+1
](x, t)
Using a finite difference approximation of the derivative with time step τ
and also collecting the grid points in a lexicographical ordering, the
discretized version is as follows:
(In + ατAcurv
)Uk+1
l = Uk
l + τFk
l , l = 1, 2.
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 13 / 27
Proposed Method
Assuming m × n pixel images as input, Acurv will be of the size mn × mn!
Therefore a fast Discrete Cosine Transform (DCT) solver is used.
The set of coefficients for the DCT solver:
di,j = −4 + 2cos
(i − 1)π
m
+ 2cos
(j − 1)π
n
Therefore
Uk+1
l = IDCT[V ]
where
Vi,j = Gi,j [1 + ταd2
i,j ]−1
and
G = DCT[Uk
l + τFk
l ], l = 1, 2
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 14 / 27
Proposed Method
Algorithm
Initialization: τ, α, X, U0 = 0, di,j ;
for k = 0 to convergence do
Computing Forces: Fk
l
% Solving The Linear System %
for l = 1 to 2 do: G = DCT[Uk
l + τFk
l ], l = 1, 2
for i = 1 to m do:
for j = 1 to n do: Vi,j = Gi,j [1 + ταd2
i,j ]−1,
end for
end for
Uk+1
l = IDCT[V ],
end for
end for
Interpolation: Result = R1(X−UFinal )+R2(X+UFinal )
2
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 15 / 27
Results and Discussion
Examples
Some tests were conducted to see the performance of the method in
comparison to an intensity based method: Linear Interpolation;
Even though there are more sophisticated intensity based methods,
like cubic spline, still, since these methods only work based on the
intensities and not the objects and their changes between frames,
they act the same as linear interpolation.
Tests:
1 Synthetic images: non-rigid circles;
2 Medical images: temporal MRI of heart;
3 Medical images: CT images of brain;
4 Medical images: CT database of brain.
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 16 / 27
Results and Discussion
Example 1: non-rigid circles
Fig 3. Reconstruction of 3 in-between slices using linear interpolation
(bottom) and proposed method (top)
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 17 / 27
Results and Discussion
Example 2: Medical images: temporal MRI of heart
Fig 4. Temporal MRI of the heart muscle
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 18 / 27
Results and Discussion
Example 2: Medical images: temporal MRI of heart
Fig 5. Results of linear interpolation (left, 84.20) and proposed method
(right, 52.52)
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 19 / 27
Results and Discussion
Example 2: Medical images: temporal MRI of heart
Fig 6. Close-up of the heart muscle for linear (left) and proposed method
(right)
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 20 / 27
Results and Discussion
Example 3: Medical images: CT images of brain
Fig 7. Sequence of CT brain images
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 21 / 27
Results and Discussion
Example 3: Medical images: CT images of brain
Fig 8. Results of linear (left, 71.67), non-modified (middle, 45.36) and
proposed (right 42.72) method
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 22 / 27
Results and Discussion
Example 3: Medical images: CT images of brain
Fig 9. Close-up of the results of linear (left), non-modified (middle) and
proposed method
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 23 / 27
Results and Discussion
Example 4: Medical images: CT database of brain
79 slices of size 217 × 181 pixel;
interpolation of the evenly numbered slices;
more than 2.5 % improvement in mean MSD.
Method Linear Non-modified Proposed
MSD 118.7852 56.0765(52.78%) 54.6450(53.99%, 2.56%)
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 24 / 27
Results and Discussion
Discussion
Moving both frames:
1 Reduces the computational time for convergence;
2 Can avoid local minima caused by large displacements.
Integrating the linear interpolation, reduces the need to interpolate
along the displacement fields to just a simple averaging.
Step time, τ is fixed here, but can be more optimized using a line
search method for faster and more robust convergence.
Regarding α:
1 Small α ⇒ Non-smooth displacement;
2 Big α ⇒ More rigid displacement.
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 25 / 27
Conclusion
Conclusion
A new registration-based slice interpolation method is introduced;
Linear displacement between corresponding points is integrated in the
optimization process;
Higher accuracy and speed were achieved in comparison to linear
interpolation and non-modified methods, respectively.
C/C++ or GPU implementation of the methods are next steps for
achieving higher speeds.
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 26 / 27
Conclusion
Any Questions?
Thank you very much!
Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 27 / 27

More Related Content

Curvature-Based Registration for Slice Interpolation of Medical Images

  • 1. Curvature-Based Registration For Slice Interpolation Of Medical Images Ahmadreza Baghaie, Zeyun Yu College Of Engineering And Applied Science, University Of Wisconsin - Milwaukee Sept 3, 2014 Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 1 / 27
  • 2. Content 1 Introduction 2 Literature Review 3 Image Registration 4 Motivation 5 Proposed Method 6 Results and Discussion 7 Conclusion Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 2 / 27
  • 3. Introduction What is slice interpolation? Using modern image modalities, like CT and MRI, a sequence of images are provided from body organs that can be used in building 3D models. The resolution of the images is not identical in all three directions. This asymmetry in the resolution causes problems such as step-shaped iso-surfaces and discontinuity in structures in 3D reconstructed models. Fig.1 A series of slices of human brain Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 3 / 27
  • 4. Literature Review What has been done before? In general, methods of interpolation can be divided into two groups: Scene-based interpolation: In scene based interpolation methods, the final result of interpolation is directly computed from the intensity values of input images. Linear and cubic spline interpolation methods are two examples of this group. The major advantages of these methods are their simplicity and low computation complexity. They suffer from blurring effects in object boundaries, which makes their results non-realistic and visually unpleasing. Object-based interpolation: In object based methods, extracted information from objects contained in input images are used in order to guide the interpolation into a more accurate result. Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 4 / 27
  • 5. Literature Review Registration based slice interpolation methods are based on two important assumptions: The consecutive slices contain similar anatomical features. The registration method is capable of finding the appropriate transformation map to match these similar features. What did we do? In the present work, we developed a novel image registration based method for slice interpolation using curvature registration method. Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 5 / 27
  • 6. Image Registration Image Registration Given two images, reference (Re) and template (Te), image registration is the process of finding a valid and optimal spatial transformation such that the transformed template image matches the reference image. Two different classes: Parametric: rigid, affine, landmark-based, FFT-based, spline, etc. Non-parametric: diffusion, fluid, curvature, elastic, etc. Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 6 / 27
  • 7. Image Registration Image registration is an ill-posed inverse problem. The process has three components: 1 a deformation model; 2 an objective function to be optimized; 3 an optimization method. A general objective function can be defined as: E[u] = D[Re, Te ◦ u] + αS Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 7 / 27
  • 8. Image Registration Distance measure: Sum of Squared Differences (SSD); Mutual Information (MI); Cross-Correlation (CC); Normalized Gradient Fields (NGF); etc.... Smoothness term: Elastic registration; Fluid registration; Diffusion registration; Curvature registration; etc.... Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 8 / 27
  • 9. Motivation Motivation Image registration is called a single direction model because the reference image is fixed and only the template image is moving. This causes asymmetry in the results in such a way that if we fix the template image and try to find the transformation needed for the reference image to match the template image (backward registration), the results of forward and backward registration are not the exact opposite of each other. Usually in image registration based slice interpolation, first the two images are registered and then the in-between slice is reconstructed using interpolation techniques along the displacement field. Here we combined these two steps together! Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 9 / 27
  • 10. Proposed Method Curvature-based slice interpolation Assuming 2 input images, R1 and R2, and assuming linear displacement for corresponding points in the two images: E[u] = D[R1 ◦ −u, R2 ◦ u] + αS[u] where R ◦ u = R(x + u) ,x being the image grid. Fig.2 Known slices (top and bottom) with the unknown slice (middle) Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 10 / 27
  • 11. Proposed Method SSD is defined as: D = [R1 ◦ −u, R2 ◦ u] := 1 2 ||R1(x − u) − R2(x + u)||2 L2 = 1 2 Ω (R1(x − u) − R2(x + u))2 dx Smoothness term is defined as: S[u] = 1 2 2 l=1 Ω (∆ul )2 dx where ∆ is the curvature operator, and the summation is computed over two dimensions of the images and the integral is computed inside the domain of the image. Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 11 / 27
  • 12. Proposed Method In order to minimize the above mentioned joint functional, computing the Gateaux derivative of E[u] and equaling that to zero to find the minimum point, an Euler-Lagrange PDE equation is resulted like follows: f (x, u(x)) + αAcurv [u](x) = 0 where Acurv [u] = ∆2 u and f (x, u(x)) = (R2(x + u) − R1(x − u)).( R1(x − u) + R2(x + u)) Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 12 / 27
  • 13. Proposed Method To solve this PDE, a time-stepping implicit iteration method can be considered: ∂tuk+1 = f (x, uk (x, t)) + αAcurv [uk+1 ](x, t) Using a finite difference approximation of the derivative with time step τ and also collecting the grid points in a lexicographical ordering, the discretized version is as follows: (In + ατAcurv )Uk+1 l = Uk l + τFk l , l = 1, 2. Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 13 / 27
  • 14. Proposed Method Assuming m × n pixel images as input, Acurv will be of the size mn × mn! Therefore a fast Discrete Cosine Transform (DCT) solver is used. The set of coefficients for the DCT solver: di,j = −4 + 2cos (i − 1)π m + 2cos (j − 1)π n Therefore Uk+1 l = IDCT[V ] where Vi,j = Gi,j [1 + ταd2 i,j ]−1 and G = DCT[Uk l + τFk l ], l = 1, 2 Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 14 / 27
  • 15. Proposed Method Algorithm Initialization: τ, α, X, U0 = 0, di,j ; for k = 0 to convergence do Computing Forces: Fk l % Solving The Linear System % for l = 1 to 2 do: G = DCT[Uk l + τFk l ], l = 1, 2 for i = 1 to m do: for j = 1 to n do: Vi,j = Gi,j [1 + ταd2 i,j ]−1, end for end for Uk+1 l = IDCT[V ], end for end for Interpolation: Result = R1(X−UFinal )+R2(X+UFinal ) 2 Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 15 / 27
  • 16. Results and Discussion Examples Some tests were conducted to see the performance of the method in comparison to an intensity based method: Linear Interpolation; Even though there are more sophisticated intensity based methods, like cubic spline, still, since these methods only work based on the intensities and not the objects and their changes between frames, they act the same as linear interpolation. Tests: 1 Synthetic images: non-rigid circles; 2 Medical images: temporal MRI of heart; 3 Medical images: CT images of brain; 4 Medical images: CT database of brain. Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 16 / 27
  • 17. Results and Discussion Example 1: non-rigid circles Fig 3. Reconstruction of 3 in-between slices using linear interpolation (bottom) and proposed method (top) Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 17 / 27
  • 18. Results and Discussion Example 2: Medical images: temporal MRI of heart Fig 4. Temporal MRI of the heart muscle Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 18 / 27
  • 19. Results and Discussion Example 2: Medical images: temporal MRI of heart Fig 5. Results of linear interpolation (left, 84.20) and proposed method (right, 52.52) Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 19 / 27
  • 20. Results and Discussion Example 2: Medical images: temporal MRI of heart Fig 6. Close-up of the heart muscle for linear (left) and proposed method (right) Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 20 / 27
  • 21. Results and Discussion Example 3: Medical images: CT images of brain Fig 7. Sequence of CT brain images Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 21 / 27
  • 22. Results and Discussion Example 3: Medical images: CT images of brain Fig 8. Results of linear (left, 71.67), non-modified (middle, 45.36) and proposed (right 42.72) method Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 22 / 27
  • 23. Results and Discussion Example 3: Medical images: CT images of brain Fig 9. Close-up of the results of linear (left), non-modified (middle) and proposed method Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 23 / 27
  • 24. Results and Discussion Example 4: Medical images: CT database of brain 79 slices of size 217 × 181 pixel; interpolation of the evenly numbered slices; more than 2.5 % improvement in mean MSD. Method Linear Non-modified Proposed MSD 118.7852 56.0765(52.78%) 54.6450(53.99%, 2.56%) Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 24 / 27
  • 25. Results and Discussion Discussion Moving both frames: 1 Reduces the computational time for convergence; 2 Can avoid local minima caused by large displacements. Integrating the linear interpolation, reduces the need to interpolate along the displacement fields to just a simple averaging. Step time, τ is fixed here, but can be more optimized using a line search method for faster and more robust convergence. Regarding α: 1 Small α ⇒ Non-smooth displacement; 2 Big α ⇒ More rigid displacement. Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 25 / 27
  • 26. Conclusion Conclusion A new registration-based slice interpolation method is introduced; Linear displacement between corresponding points is integrated in the optimization process; Higher accuracy and speed were achieved in comparison to linear interpolation and non-modified methods, respectively. C/C++ or GPU implementation of the methods are next steps for achieving higher speeds. Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 26 / 27
  • 27. Conclusion Any Questions? Thank you very much! Ahmadreza, Zeyun (CEAS-UWM) Slice Interpolation Sept 3, 2014 27 / 27