[Insight-users] Registration method

Luis Ibanez luis.ibanez at kitware.com
Wed Dec 10 13:27:41 EST 2008


Hi Pierre,

Thanks for your detailed comments.

At this point there are not many "feature" analysis classes in ITK.

That being said, the descriptors proposed in the paper:
http://graphics.stanford.edu/~ngelfand/papers/global/gelfand-robust-global-05.pdf

seem to be easy to implement in ITK, simply by using the Neighborhood
Iterators or the Shaped Neighborhood iterators.

In fact the basic computation of volume inside an integration ball,
can be implemented as a slight variation of the Voting-based filters.

If you are interested in implementing these methods we will be happy
to provide guidance, and of course, we will strongly encourage you to
share the implementations with the ITK community by submitting the
resulting filters/classes as a contribution to the Insight Journal:

            http://www.insight-journal.org/


     Regards,


         Luis


-----------------------
Pierre JUILLARD wrote:
> Hi Nour and Luis,
> 
> 
> Thank you for your answer Luis It is also a subject of interest for me.
> 
> I have been studying publications describing different ICP algorithms 
> (one is mainly interesting: 
> http://www.cs.princeton.edu/~smr/papers/fasticp/fasticp_paper.pdf), as 
> well as others describing methods for the the global registration step.
> 
> As noticed, ICP methods are interesting only when the two data sets are 
> already (even if roughly) on top of each other. These methods can be 
> implemented with ITK. However, what about the global registration step?
> 
> Most particulary, I have read about a method described in this paper:
> http://graphics.stanford.edu/~ngelfand/papers/global/gelfand-robust-global-05.pdf
> and more particularly in this thesis:
> http://graphics.stanford.edu/~ngelfand/papers/thesis/thesis.pdf
> 
> It explains how to setup what seems a quite efficient method 
> (computation time as well as accuracy) to fufill the first step of 
> registration (even for datasets having just small overlapping areas): 
> the global registration method makes use of different concepts:
> 
> - it is a method using _shape descriptors_, based on _performing 
> integral operations on the underlying shape_, for identifying features 
> in the data and selecting potential correspondence points in the model.
> 
> - among the datasets, a scale-space representation of the volume 
> descriptor together with a persistence algorithm allows robustly 
> selecting feature points at multiple scales
> 
> - the quality of the correspondence based on the coordinates of the 
> feature points (selected using the integral volume descriptors) between 
> the target and the source datasets is evaluated with the _distance root 
> mean squared error_, or _dRMS_.
> 
> - if validated, a Correspondence Search is carried out.
> 
> 
> As this method seems quite efficient, do you know if it is possible to 
> implement it with ITK? Most notably, are the basic algortihms available 
> (I am thinking to classes that would compute over a dataset the integral 
> volume descriptor, the distance root mean square, branch-and-bound 
> algorithm, etc...)?
> 
> I thank you in avance for your help.
> 
> 
> Regards,
> 
> 
> Pierre
> 
> 
> 
> 
> 2008/12/7 Luis Ibanez <luis.ibanez at kitware.com 
> <mailto:luis.ibanez at kitware.com>>
> 
> 
>     Hi Nour,
> 
> 
>                 Welcome to ITK !
> 
> 
>     Yes,
>     you can do PointSet registration with ITK.
> 
> 
>     Please do the following:
> 
> 
>     1) Build ITK by turning ON the ITK_USE_REVIEW (advanced) flag in CMake.
> 
> 
>     2) Use the itkVTKPolyDataReader.h class that you can find in
>       Insight/Code/Review, in order to load the two polydata files
>       into ITK. This will read legacy files in .vtk format.
> 
>       If you have VRML file, then convert them first to .vtk files.
>       You can do this by using VTK readers and writers.
> 
> 
>     3) Use the ICP method, as described in the examples:
> 
>          Insight/Examples/Patented
>             IterativeClosestPoint1.cxx
>             IterativeClosestPoint2.cxx
>             IterativeClosestPoint3.cxx
> 
> 
>        Please note that the patent on the ICP method has expired,
>        so you don't have to worry about it at this point.
> 
> 
> 
>       Regards,
> 
> 
>          Luis
> 
> 
>     --------------------
>     Nour Mestiri wrote:
> 
>         Hi all ITK users,
>         I'm new with you so please don't blame me if my questions are
>         evident and try to help me if possible.
>         I wanna do the registration of 2 objects (polydatas generated
>         from vrml files).
>         Is it possible? Is there a code example which allows to make that?
>         Please i need help.
>         Thank you so much
> 
> 
> 
>         ------------------------------------------------------------------------
> 
>         _______________________________________________
>         Insight-users mailing list
>         Insight-users at itk.org <mailto:Insight-users at itk.org>
>         http://www.itk.org/mailman/listinfo/insight-users
> 
>     _______________________________________________
>     Insight-users mailing list
>     Insight-users at itk.org <mailto:Insight-users at itk.org>
>     http://www.itk.org/mailman/listinfo/insight-users
> 
> 


More information about the Insight-users mailing list