[ITK-users] IterativeClosestPoint2 example: how to get better results

Matt McCormick matt.mccormick at kitware.com
Thu Aug 13 18:08:38 EDT 2015


Hello,

On Thu, Aug 13, 2015 at 4:06 AM, D'Isidoro  Fabio <fisidoro at ethz.ch> wrote:
> I am trying to use the IterativeClosestPoint2 example on the fixed and
> moving point sets in attachment (called “src” and “dest” point sets).
>
>
>
> The ground truth is “properly ordered dest = Transform(src)”, where:
>
>
>
> Euler angles:  (0.349065850398866, 0.349065850398866, 0.349065850398866)
>
> Translations: (4.1335200571234, 5.90820985238168, 7.04748773837622)
>
>
>
> (the dest_point set in attachment is randomly reshuffled)
>
>
>
>>>> If I use srx = fixed, dest = moving, the registration results is:
>
>
>
> Euler angles:  (-0.327201, -0.36953, -0.47291)
>
> Translations: (-6.28471, -2.64212, -1.50835)
>
>
>
>>>> If I use dest = fixed, src = moving, the registration results is:
>
>
>
> Euler angles:  (0.44595, 0.20655, 0.36423)
>
> Translations: (6.28471, 2.64212, 1.50835)
>
>
>
>
>
>
>
> Question 1):
>
>
>
> Given that “properly ordered dest = Transform(src)”, according to the guide
> src should be the fixed point set. Am I wrong?
>

This is a bit confusing because it is different from transforms with
images, but the src should be the moving point set.  See:

  http://itk.org/gitweb?p=ITK.git;a=blob;f=Modules/Registration/Common/include/itkEuclideanDistancePointMetric.hxx;h=af1b04e91ed9126777134db3dfca6ef05810fc60;hb=HEAD#l87


> Question 2):
>
>
>
> I am not happy with the results, given that there is no additional noise
> (the underlined values refer to error angles of up to 8 degrees and 3 mm
> errors). I am surprised because there is no additional noise to the data, so
> I would expect an accurate registration. Are my results normal? How could I
> improve the results? Should I change the optimizer, or the transform?

Could the code be shared that generated the inputs?

Thanks,
Matt


More information about the Insight-users mailing list