[Insight-users] Registration Algo

Luis Ibanez luis.ibanez at kitware.com
Sat Aug 7 20:47:29 EDT 2004


Hi Luke,

Yes, you can get better accuracy than 2 to 3 pixels.

In fact with algorithms such as Demons,  FEM and BSplines
you usually get to that level as long as the 'real' deformation
of the image can be described with the deformation paradigm
of each one the respective methods above.

Even the methods in the ITK basic registration framework can
achieve subpixel accuracy, as long as you use Linear or BSpline
interpolation and you choose a Transform that is apropriate for
describing the misregistration.

Again..  
the question of whether this result is acceptable or not, is
something that you have to ask to the Doctor that will use
your registration. Furthermore, the question should be asked
in terms of *millimeters* and not in terms of pixels. Since at
the end, what the Doctor needs is a physical system of reference
where she/he will cut with a scalpel or a laser, or aim a cyberknife,
or insert a surgical needle.

The question of correcteness should be asked in terms of how much
harm can a patient suffer if the Doctor is misled by 2 or 3 milimeters
(or their pixel equivalents).


 From the Mathematical/Algorithmic point of view it is clear
that you can get better registrations than 2 to 3 pixels away.

The questions are:  

  1)   "Do you really need it ?"

  2)  "Can your application afford the computing time
          required to achive such accuracy"  ?

Note also that the application will define "where" in the image
do you care about the registration accuracy. You probably achieve
different levels of accuracy in different regions of the image.

If your applications is the treatment of brain tumors, the
accuracy on the registration of the neck muscles is certainly
irrelevant compared to the accuracy required for brain
structures.  If you apply blindly a mathematical rule of
accuracy, you may end up preferring registrations with
lower quality for the brain, in order to reduce the errors of
regions like the neck.

Image registration is not and "end" but a "mean". Its correctness
can only be evaluated in the context of a medical application.
Unless, of course, you are only interested in publising papers...



Regards,



     Luis


------------------
Luke wrote:

>On the note of registration accuracy, I did some registration on two MRI 3D
>volume( aquired at different time )and on transverse plane the registration
>looks good however on dorsal plane there are slice rotation, which may lead
>to 2-3 pixel difference.
>
>I have tried to improve my algorithm, but no improvement yet. I am wondering
>if the above result is generally acceptable in term of registration. Or,
>there is an algorithm that can achieve subpixel accuracy?
>
>----- Original Message ----- 
>From: "Luis Ibanez" <luis.ibanez at kitware.com>
>To: "V Narasinga Rao" <vaiju at cse.iitb.ac.in>
>Cc: "Insight Users" <insight-users at itk.org>
>Sent: Friday, August 06, 2004 9:58 PM
>Subject: Re: [Insight-users] Registration Algo
>
>
>  
>
>>Hi Vaijanath
>>
>>Validation of registration is an ill-defined problem.
>>
>>Even more when dealing with multi-modality and with
>>deformable registration.
>>
>>There is no "right" response for a registration problem.
>>
>>You will only be able to find a deformation that is
>>"good enough" for a particular application given the
>>constratints of total computation time and memory
>>consumption.
>>
>>You can always improve a registration at the price
>>of consuming more computation time and more memory.
>>
>>If you don't have a defined applications, you can not
>>have a criterion that will tell you what is "good
>>enough". In fact, if you don't have an application,
>>then you don't have a problem either because there
>>is no purpose in registering the images    :-)
>>
>>Without an application in mind, what you are doing
>>is running an optimization method without a stopping
>>criterion.
>>
>>You can, of course, do things like producing fusion
>>images with transparency or color encoding for visual
>>evaluation. But that will mostly be useful for producing
>>nice illustrations for publishing papers, and that only
>>helps your CV.
>>
>>Your registration method "is" correct if it helps a
>>Doctor to provide improved health care to a patient.
>>
>>
>>If you are doing registration of PET-CT chances are
>>that you are dealing with cancer patients, and that
>>your potential medical applications are
>>
>>   1) Radiation treatment
>>   2) Ressection surgery
>>   3) Biopsy
>>   4) Radiofrequency ablation
>>   5) Chemoteraphy evaluation
>>
>>For each one of them, you will have different requirements
>>on the precision with which organs and the tumor should
>>be localized, and therefore with what precision you should
>>register the two images. The application will also define
>>how much computation time it makes sense to invest in the
>>registration process.
>>
>>
>>
>>    Regards,
>>
>>
>>       Luis
>>
>>
>>
>>-----------------------
>>V Narasinga Rao wrote:
>>
>>    
>>
>>>Respected Luis,
>>>
>>>You have been an great help to me from the time I have joined ITK
>>>mailing list. First of all sorry for a delayed mail, as i was not well
>>>for a long time.
>>>
>>>Now abt. the registration algorithm, that I have written. I wanted to
>>>get elastic 3D registration, so I Thought of an algorithm where i will
>>>use curve fitting or deformable registration on the slices and affine
>>>transform as a whole on the volume to get the desired results.
>>>
>>>So far i have registered successfully CT - PET modality ( I have little
>>>knowledge of the instruments). I first loaded the all the slices, to
>>>generate the volume. Then sort of normalized teh volumes to have same
>>>origin. After that i registered every slices individually. The slices
>>>were registered with local transformations, while keeping in mind the
>>>global scope. Once i was able to successfully then I did global
>>>transformation to get the entire volume.
>>>
>>>So far I am able to register in around 2 mins. two slices CT - PET, of
>>>which CT is 512 X 512 which PET is 128 X 128.
>>>
>>>Now as for Validation, Well i am not sure the nature of application, but
>>>i guess i will be doing registration of uni ani multi-modal.
>>>
>>>Please let me know weather the method that i have implemented is
>>>correct, Or you would like to see the output and then decide.
>>>
>>>I will mail you the results with timming if you require so.
>>>
>>>But before finishing off, I would like to thankyou for all the trouble
>>>that you have taken in replying me back, also i owe you a lot for
>>>whatever i have implemented for the registration code.
>>>
>>>I joined ITK w/o any knowledge of Imaging, now I can atleast defend the
>>>algorithms that i have written. You have done a lot for me, and i would
>>>like to help you out in anywork that you want.
>>>
>>>Once again Thanks for the help that you all people have shown to me.
>>>
>>>Regards
>>>Vaijanath.
>>>
>>>
>>>On Tue, 3 Aug 2004, Luis Ibanez wrote:
>>>
>>>      
>>>
>>>>Hi Narasinga,
>>>>
>>>>Please do the following
>>>>
>>>>
>>>>
>>>>1) Read the tutorial on Image Registration
>>>>
>>>>http://www.itk.org/CourseWare/Training/RegistrationMethodsOverview.pdf
>>>>
>>>>
>>>>
>>>>2) Read the chapter on Image Registration from the
>>>>  ITK Software Guide
>>>>
>>>>   http://www.itk.org/ItkSoftwareGuide.pdf
>>>>
>>>>
>>>>
>>>>
>>>>The method you describe sounds pretty much like the BSpline
>>>>deformable registration illustrated in the example
>>>>
>>>>
>>>>      Insight/Examples/Registration/
>>>>                DeformableRegistration4.cxx
>>>>
>>>>
>>>>
>>>>
>>>>3) ITK is N-Dimensional. In ITK you don't do registration
>>>>  slice by slice. Instead you use the native dimensionality
>>>>  of the datasets.
>>>>
>>>>
>>>>
>>>>
>>>>4) Validation is only possible in the context of
>>>>
>>>>   3.1) A clinical application
>>>>   3.2) A defined set of image modalities
>>>>   3.3) A specific computation time allowable.
>>>>
>>>>  Please let us know what your clinical application
>>>>  is, what are your image modalities and what are
>>>>  the time demands of your clinicians.
>>>>
>>>>
>>>>
>>>>
>>>>Regards,
>>>>
>>>>
>>>>   Luis
>>>>
>>>>
>>>>
>>>>
>>>>-----------------------
>>>>V Narasinga Rao wrote:
>>>>
>>>>        
>>>>
>>>>>Hi,
>>>>>
>>>>>I have just written an algorithm which registers two images
>>>>>(multi-modality) in Matlab and now i want to shift it to ITK, what is
>>>>>the best way to do it. Also how to validate teh registration
>>>>>algorithm that i ave written. It's absurd question, but since i am
>>>>>not from medical field sp for me it's more important question.
>>>>>
>>>>>
>>>>>I would like you all to just have a look at my algo
>>>>>for each slice.
>>>>>
>>>>>1. Step 1. Find the region, do it for both images.
>>>>>2. Step 2. Enclose the region with an rectangle, by little geometry
>>>>>the scale and rotation parametr can be found out.
>>>>>3. Step 3. Once you know the scaling and rotation factor apply this
>>>>>to the second image.
>>>>>4. Step 4. Now use curve fitting to fit the curve, thus allignment
>>>>>will happen. 5. Step 5. One you have curve fitted now apply the
>>>>>original images on this binary image and now calculate teh MI to find
>>>>>weather the images are really registrable.
>>>>>
>>>>>This entire process can take place for all the sslices in parallel
>>>>>          
>>>>>
>way/
>  
>
>>>>>Currently it is implemented in matlab and has been giving output,
>>>>>ofcourse no validation regarding the registration has been done.
>>>>>
>>>>>
>>>>>
>>>>>_______________________________________________
>>>>>Insight-users mailing list
>>>>>Insight-users at itk.org
>>>>>http://www.itk.org/mailman/listinfo/insight-users
>>>>>
>>>>>          
>>>>>
>>>>
>>>>
>>>>
>>>>        
>>>>
>>
>>
>>_______________________________________________
>>Insight-users mailing list
>>Insight-users at itk.org
>>http://www.itk.org/mailman/listinfo/insight-users
>>
>>    
>>
>
>_______________________________________________
>Insight-users mailing list
>Insight-users at itk.org
>http://www.itk.org/mailman/listinfo/insight-users
>
>  
>






More information about the Insight-users mailing list