[Insight-users] Slice Registration: Landmark based rigid transform

Karthik Krishnan Karthik.Krishnan at kitware.com
Thu May 12 16:15:05 EDT 2005


Kevin H. Hobbs wrote:

>On Thu, 2005-05-12 at 14:41 -0400, Karthik Krishnan wrote:
>  
>
>>Kevin:
>>
>>You are probably looking for a landmark transform in ITK. There are a few based on TPS
>>http://www.itk.org/Insight/Doxygen/html/classitk_1_1ThinPlateSplineKernelTransform.html
>>http://www.itk.org/Insight/Doxygen/html/classitk_1_1ThinPlateR2LogRSplineKernelTransform.html
>>http://www.itk.org/Insight/Doxygen/html/classitk_1_1ElasticBodyReciprocalSplineKernelTransform.html
>>http://www.itk.org/Insight/Doxygen/html/classitk_1_1ElasticBodySplineKernelTransform.html
>>http://www.itk.org/Insight/Doxygen/html/classitk_1_1VolumeSplineKernelTransform.html
>>
>>
>>    
>>
>
>I'll have to take a look at the paper to see if those might be of use I
>can't really tell from the Doxygen.
>
>  
>
They may be overkill for your application

>>Unfortunately it looks like there isn't a rigid landmark based method of initializaing registration. It would be nice to have a LandmarkBasedTransformInitializer just like
>>the CenteredTransformInitializer class. If you need one, let me know and I can add one to ITK. (for rigid and affine transforms). If you would like to do that, it would be perfect. Let me know. 
>>
>>    
>>
>
>I'm a bit confused by the "Initializer" part.  At least with
>registration pins.  I guess I'm thinking once the pins line up the
>registration is done.  That's why the pins are there.
>
>  
>
True. The CenteredTransformInitializer has nothing to do with 
registration either. Its just a helper class that finds the transform 
which aligns the fixed and moving images with their geometrical/moments 
center. Just turns out that its used to initialize transform prior to 
registration. As I understand you need something similar that finds the 
transform based on fiducial markers.

>>For reference see VTK:  Hybrid/vtkLandmarkTransform. 
>>It takes any number of landmarks (1 to n) and finds the appropriate rigid/affine transform that aligns the two images in a least squares sense. 
>>
>>Thanks
>>regards
>>karthik
>>
>>    
>>
>
>
>The vtkLandmarkTransform sounds very much like what I want.  I'll look
>at VTK landmarks too and see if I see a clear path.  I'm beginning to
>think that this is easier than I thought it was this morning.  All I
>have to do is find the pins in each image, record their positions, and
>translate the images. 
>
This is exactly what the vtkLandmarkTransform does. It also accounts for 
the fact that you might be specifying more (or less pins than needed). 
For example:  3 markers is sufficient to find a unique rigid tranform 
between two volumes. But you might be specifying 4. In that case, it 
will find the best fit rigid transform that minimizes the distance 
between the markers in a least squares sense.

> I could even find them automatically with the
>feature extraction and have them marked as spatial objects just like in
>The software guide ch 9.5 and the example.
>  
>



More information about the Insight-users mailing list