[Insight-users] ICP error calculation

Luis Ibanez luis.ibanez at kitware.com
Wed Jan 30 20:17:39 EST 2008


Hi Alireza

You may want to read about the Iterative Closest Point algorithm.

     http://en.wikipedia.org/wiki/Iterative_Closest_Point

Follow the documents in the "External Links".



The method is as follows:

You have two sets of Points: FixedSet and MovingSet.


0) The Transform parameters are initialized
    (This part is your responsibility).


For N iterations:

1) For every given point of the MovingSet,
    the metric finds the closest point in the
    FixedSet.  That point is assigned at its
    correspondant in this iteration.

2) With all the correspondances established
    in step (1), the Metric computes the distances
    between all the pais of points (fixed,moving).
    [itkEuclideanDistancePointMetric.txx: lines 85-136]

3) The metric value (multi-value) is passed to the
    optimizer.

4) The optimizer decides what changes to apply to the
    Transform parameters.

Go for Next iteration.

The optimizer stops when the maximum number of iterations
(that you provide) is reached, or when the gradient of the
metric goes below a certain value (that you provide), or
when the metric itself (the sum of distances) goes below
a certain value (that you provide).


If you want to get familiar with this method you should
start by playing with the examples, and run them with
the following parameters:

   IterativeClosestPoint2.exe
       IterativeClosestPointFixedPoints2.txt
       IterativeClosestPointMovingPoints2.txt

  The two .txt files can be found in

       Insight/Examples/Data



     Regards,


         Luis




---------------------
kambiz rakhshan wrote:
> Hello Luis,
>  
> Can any body let me know how exactly Iterativeclosestpoint2 works with 
> out knowing the correspondence points? I Understood that the iteration 
> starts by the predefined initiated transform,and it will continue until 
> it reaches the convergence criterion!!!but how?
> I mean how the optimizer works without knowing the correspondence 
> points?How the error is calculated?
> I have some problem with the concept of this point set 
> registration!!!!!!!!!!!
> Any help is appreciated.
>  
> Thank in advance,
> Alireza
> 
> 
> */Luis Ibanez <luis.ibanez at kitware.com>/* wrote:
> 
> 
>     Hi Kambiz,
> 
>     You can see the errors by adding a Command/Observer, as it is shown
>     in the Example:
> 
> 
>     Insight/Examples/Patented/IterativeClosestPoint1.cxx
> 
>     This will show you the error values at every iteration.
> 
>     If you really want to see only the final value, then you could
>     simply call
> 
> 
>     std::cout << "Value = " << optimizer->GetCachedValue() << std::endl;
> 
>     at the end of the program.
> 
> 
>     Note that in order to interpret this value correctly, you have
>     to pay attention to the settings of the Metric. In particular
>     whether you asked the Metric to compute the Distance or the
>     squared Distance.
> 
> 
>     Regards,
> 
> 
>     Luis]
> 
> 
> 
> 
>     ----------------------
>     kambiz rakhshan wrote:
>      > Hi all,
>      > I have implement the iterative closesct point2 algorithm on my
>     pointsets
>      > with out knowing the correspondance.Know I want to know how can I
>      > calculate the error?I have used the same optimizar and transform and
>      > matric.Can anybody let me know how can I see the error?I mean is
>     there
>      > any command that I need to add to the code to bring out the error?
>      > Thanks in advance,
>      > Kambiz
>      >
>      >
>     ------------------------------------------------------------------------
>      > Be a better friend, newshound, and know-it-all with Yahoo!
>     Mobile. Try
>      > it now.
>      >
>      > >
>      >
>      >
>      >
>     ------------------------------------------------------------------------
>      >
>      > _______________________________________________
>      > Insight-users mailing list
>      > Insight-users at itk.org
>      > http://www.itk.org/mailman/listinfo/insight-users
> 
> 
> ------------------------------------------------------------------------
> Looking for last minute shopping deals? Find them fast with Yahoo! 
> Search. 
> <http://us.rd.yahoo.com/evt=51734/*http://tools.search.yahoo.com/newsearch/category.php?category=shopping> 
> 


More information about the Insight-users mailing list