[Insight-users] how to do 2D to 3D ICP
Alireza Salamy
alireza_sal2000 at yahoo.com
Sun Apr 8 12:23:01 EDT 2007
Hi Luis,
I think that I got the answer of my previous question which was :''In which part of the code iterativeclosestpoint2.cxx shall we make some changes to use ItkRigid3DPerspectiveTransform.h instead of ItkEuler3DTranform.h?''
Now I would like to check out with you if I get the right idea or not:
#include"ItkRigid3DPerspectiveTransform.h" instead of #include "itkEuler3DTransform.h"
#include"ItkCenterTransformInitializer.h" I must add this header file.
Typedef itk::Rigid3DPerspectiveTransform.h<double>TransformType; instead of
typedef itk::Euler3DTransform< double > TransformType;
type itk::CenteredTransformInitializer<TransformType,
FixedPointsetType,
MovingPointsetType>TransformInitializerType;
I Must add the above line
TransformInitializerType::Pointer Initializer=TransformInitializerType::New();
I must add the above line
initializer->SetTransform( transform );
initializer->SetFixedpointSet( fixedPointSet->GetOutput() );
initializer->SetMovingImage( movingPointSet->GetOutput() );
initializer->GeometryOn();
initializer->InitializeTransform();
transform->SetAngle( 0.0 );
registration->SetInitialTransformParameters( transform->GetParameters() );
I must add the above lines also
after that we Scale the translation components of the Transform in the Optimizer in the same way that IterativeClosestPoint2.CXX do and than connect all the components require for registration.Are these the required changes for coverting ItkEuler3DTranform.h to ItkRigid3DPerspectiveTransform.h in the IterativePointset2.CXX?
The second question is :If I gonna write the above algorithm,Shall I make the changes on IterativeClosestPoint2.CXX or I have to launch a new project?if I have to launch a new project,how can I write the Cmake.list to build my project?
Thank you very much for your useful help.
Alireza
Luis Ibanez <luis.ibanez at kitware.com> wrote:
Hi Alireza,
1) I assume that your collection of 2D points are the
projections in a plane, of points that originally
were in 3D. Is that right ?
2) If so, you can use as a transform the:
http://www.itk.org/Insight/Doxygen/html/classitk_1_1Rigid3DPerspectiveTransform.html
Regards,
Luis
-----------------------
Alireza Salamy wrote:
> Hi all users,
> I would like to know how can we calculate the rotation from versor?Are
> the three first parameter in the solution of Itarative closestpoint2,versor?
> the second question is related to 2D/3D point set registration.Can any
> body tell me in which part of the code of Itarativeclosestpoint2 shall I
> make some changes to convert it from 3D/3D pointset registration to
> 2D/3D pointset registration?
> thanks alot,
> Alireza
>
>
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
---------------------------------
Don't get soaked. Take a quick peek at the forecast
with theYahoo! Search weather shortcut.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://public.kitware.com/pipermail/insight-users/attachments/20070408/231ddc79/attachment.html
More information about the Insight-users
mailing list