Difference between revisions of "Projects:RegistrationEvaluation"
Jfishbaugh (talk | contribs) |
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/") |
||
(14 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | Back to [[Algorithm:Utah2|Utah 2 Algorithms]] | ||
+ | __NOTOC__ | ||
= Evaluation of Registration = | = Evaluation of Registration = | ||
Line 5: | Line 7: | ||
propose the development of a testbed, where registration packages can be compared and parameters suitable for a given domain (e.g. multi-modal brain registration) | propose the development of a testbed, where registration packages can be compared and parameters suitable for a given domain (e.g. multi-modal brain registration) | ||
can be determined. | can be determined. | ||
+ | |||
+ | = Registration Packages = | ||
+ | |||
+ | The following are current registration packages being considered for this project. | ||
+ | |||
+ | == ITK == | ||
+ | |||
+ | http://itk.org/. | ||
+ | |||
+ | http://public.kitware.com/Wiki/ITK_Image_Registration. | ||
+ | |||
+ | == Slicer3 RegisterImages == | ||
+ | |||
+ | https://www.slicer.org/wiki/Modules:RegisterImages-Documentation-3.4. | ||
+ | |||
+ | == IRTK (Rview) == | ||
+ | |||
+ | http://www.doc.ic.ac.uk/~dr/software/usage.html. | ||
= Example 1: Fixing Artifacts in DWI = | = Example 1: Fixing Artifacts in DWI = | ||
Line 18: | Line 38: | ||
is not present. | is not present. | ||
− | === Affine Registration == | + | === Affine Registration === |
− | We now consider different registration packages applied to this problem. | + | Here we will restrict our investigation to affine transformations between images. We now consider different registration packages applied to this problem. |
− | == ITK == | + | ==== ITK ==== |
Using ITK modules, we wrote an application to perform 2D affine transformation with the following parameters: | Using ITK modules, we wrote an application to perform 2D affine transformation with the following parameters: | ||
Line 30: | Line 50: | ||
:'''Optimization''': RegularStepGradientDescentOptimizer with a minimum step length of 0.001, a maximum step length of 1.0, 200 iterations, and a relaxation factor of 0.8. | :'''Optimization''': RegularStepGradientDescentOptimizer with a minimum step length of 0.001, a maximum step length of 1.0, 200 iterations, and a relaxation factor of 0.8. | ||
− | [[Image: | + | The image below shows the same slices as the previous image after the registration process was conducted. The jagged edges present in the original corrupted |
+ | data are significantly reduced after slice by slice registration with the b0 volume. | ||
+ | |||
+ | [[Image:itk_all_fixed.png|550px]] | ||
+ | |||
+ | We can also look at a volume rendering of a particular volume to garner more evidence that the correction has worked. The image below shows a volume rendering of the original data on the left | ||
+ | and the corrected data on the right for the 006 gradient direction. Again, note the smoothness of the corrected data; the artifacts present in the original data are significantly reduced. | ||
+ | |||
+ | [[Image:itk_fixed_volume_006.png|550px]] | ||
+ | |||
+ | ==== Slicer3 RegisterImages ==== | ||
+ | |||
+ | Work in progress. | ||
+ | |||
+ | ==== IRTK ==== | ||
+ | |||
+ | Work in progress. | ||
+ | |||
+ | == Method 2: 3D Registration == | ||
+ | |||
+ | The problem can be alleviated by 3D registration between a corrupted volume and the b0 volume, in which we assume the artifact | ||
+ | is not present. | ||
+ | |||
+ | === Affine Registration === | ||
+ | |||
+ | Here we will restrict our investigation to an affine transformation between images. We now consider different registration packages applied to this problem. | ||
+ | |||
+ | ==== ITK ==== | ||
+ | |||
+ | Work in progress. | ||
− | + | ==== Slicer3 RegisterImages ==== | |
+ | |||
+ | Work in progress. | ||
+ | |||
+ | ==== IRTK ==== | ||
+ | |||
+ | Work in progress. | ||
= Testbed = | = Testbed = | ||
+ | |||
+ | Work in progress. |
Latest revision as of 18:03, 10 July 2017
Home < Projects:RegistrationEvaluationBack to Utah 2 Algorithms
Evaluation of Registration
We are interested in comparing existing registration packages to determine how registration in Slicer3 can be improved. This work focuses on examining various packages researchers are currently using for registration and comparing results on a set of examples representative of common registration tasks. Finally, we propose the development of a testbed, where registration packages can be compared and parameters suitable for a given domain (e.g. multi-modal brain registration) can be determined.
Registration Packages
The following are current registration packages being considered for this project.
ITK
http://public.kitware.com/Wiki/ITK_Image_Registration.
Slicer3 RegisterImages
https://www.slicer.org/wiki/Modules:RegisterImages-Documentation-3.4.
IRTK (Rview)
http://www.doc.ic.ac.uk/~dr/software/usage.html.
Example 1: Fixing Artifacts in DWI
The DWI data consists of 13 volumes -- a b0 and 12 gradient directions. This process was conducted 3 times per patient for a total of 39 volumes. The image below shows a particular slice in all 12 gradient directions and all 3 scans where the artifacts can clearly be seen in some of the gradient directions.
Method 1: Slice by Slice 2D Registration
The problem can be alleviated by 2D registration between slices of a corrupted volume with the corresponding slice from the b0 volume, in which we assume the artifact is not present.
Affine Registration
Here we will restrict our investigation to affine transformations between images. We now consider different registration packages applied to this problem.
ITK
Using ITK modules, we wrote an application to perform 2D affine transformation with the following parameters:
- Similarity Metric: MattesMutualInformationImageToImageMetric with 24 bins and 10000 samples per bin.
- Interpolation: LinearInterpolateImageFunction
- Optimization: RegularStepGradientDescentOptimizer with a minimum step length of 0.001, a maximum step length of 1.0, 200 iterations, and a relaxation factor of 0.8.
The image below shows the same slices as the previous image after the registration process was conducted. The jagged edges present in the original corrupted data are significantly reduced after slice by slice registration with the b0 volume.
We can also look at a volume rendering of a particular volume to garner more evidence that the correction has worked. The image below shows a volume rendering of the original data on the left and the corrected data on the right for the 006 gradient direction. Again, note the smoothness of the corrected data; the artifacts present in the original data are significantly reduced.
Slicer3 RegisterImages
Work in progress.
IRTK
Work in progress.
Method 2: 3D Registration
The problem can be alleviated by 3D registration between a corrupted volume and the b0 volume, in which we assume the artifact is not present.
Affine Registration
Here we will restrict our investigation to an affine transformation between images. We now consider different registration packages applied to this problem.
ITK
Work in progress.
Slicer3 RegisterImages
Work in progress.
IRTK
Work in progress.
Testbed
Work in progress.