<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">You could also try going straight to a numeric library, using <a href="http://eigen.tuxfamily.org/dox/classEigen_1_1JacobiSVD.html">singular value decomposition</a> to find your 3x4 transformation matrix. PointsVector*Matrix=AnotherPointsVector. It could hardly get any simpler for a numeric library.<br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">HTH</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 11, 2015 at 5:23 PM, Matt McCormick <span dir="ltr"><<a href="mailto:matt.mccormick@kitware.com" target="_blank">matt.mccormick@kitware.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Matias,<br>
<br>
The examples for each class are linked in the class doxygen page [1].<br>
There is a Wiki example for the LandmarkBasedTransformInitializer [2].<br>
<br>
HTH,<br>
Matt<br>
<br>
[1] <a href="http://www.itk.org/Insight/Doxygen/html/classitk_1_1LandmarkBasedTransformInitializer.html" rel="noreferrer" target="_blank">http://www.itk.org/Insight/Doxygen/html/classitk_1_1LandmarkBasedTransformInitializer.html</a><br>
<br>
[2] <a href="http://www.itk.org/Insight/Doxygen/html/WikiExamples_2Registration_2LandmarkBasedTransformInitializer_8cxx-example.html#_a3" rel="noreferrer" target="_blank">http://www.itk.org/Insight/Doxygen/html/WikiExamples_2Registration_2LandmarkBasedTransformInitializer_8cxx-example.html#_a3</a><br>
<div><div class="h5"><br>
On Wed, Nov 11, 2015 at 5:15 PM, Matias Montroull <<a href="mailto:matimontg@gmail.com">matimontg@gmail.com</a>> wrote:<br>
> Thanks, it is indeed the case you describe.. Is there an ITK example I can<br>
> use as reference to implement the landmarkbasedtransform?<br>
> Matias.<br>
><br>
> El mié., 11 de nov. de 2015 a la(s) 7:09 p. m., Andras Lasso<br>
> <<a href="mailto:lasso@queensu.ca">lasso@queensu.ca</a>> escribió:<br>
>><br>
>> It seems that you want to do a simple landmark registration (you touch<br>
>> exactly the same points with the stylus, in the same order, as you defined<br>
>> in the image). If this is the case, then you should not use ICP but<br>
>> itk::LandmarkBasedTransformInitializer (with optional preprocessing step to<br>
>> determine the scale), as it is done in this Slicer module:<br>
>><br>
>><br>
>> <a href="https://github.com/Slicer/Slicer/blob/master/Modules/CLI/FiducialRegistration/FiducialRegistration.cxx" rel="noreferrer" target="_blank">https://github.com/Slicer/Slicer/blob/master/Modules/CLI/FiducialRegistration/FiducialRegistration.cxx</a><br>
>><br>
>><br>
>><br>
>> Andras<br>
>><br>
>><br>
>><br>
>><br>
>><br>
>> From: Community [mailto:<a href="mailto:community-bounces@itk.org">community-bounces@itk.org</a>] On Behalf Of Matias<br>
>> Montroull<br>
>> Sent: Wednesday, November 11, 2015 4:58 PM<br>
>> To: Matt McCormick <<a href="mailto:matt.mccormick@kitware.com">matt.mccormick@kitware.com</a>><br>
>> Cc: <a href="mailto:insight-users@itk.org">insight-users@itk.org</a> Users <<a href="mailto:insight-users@itk.org">insight-users@itk.org</a>><br>
>> Subject: Re: [ITK] [ITK-users] Pointset registration<br>
>><br>
>><br>
>><br>
>> Yes, here it goes..<br>
>><br>
>><br>
>><br>
>> you will notice there are points that I had to repeat, the original<br>
>> dataset was 4 points on each file and I was getting warnings:  Number of<br>
>> unknowns(12) greater than number of data (4)<br>
>><br>
>><br>
>><br>
>> "puntosfijos.txt" is the fixed pointsets<br>
>><br>
>> "puntosflotantes.txt" is the moving pointset..<br>
>><br>
>><br>
>><br>
>> Thanks for your help.<br>
>><br>
>><br>
>><br>
>> Matias.<br>
>><br>
>><br>
>><br>
>> El mié., 11 de nov. de 2015 a la(s) 6:43 p. m., Matt McCormick<br>
>> <<a href="mailto:matt.mccormick@kitware.com">matt.mccormick@kitware.com</a>> escribió:<br>
>><br>
>> Hi Matias,<br>
>><br>
>> Can the datasets be shared?<br>
>><br>
>> Thanks,<br>
>> Matt<br>
>><br>
>> On Wed, Nov 11, 2015 at 4:38 PM, Matias Montroull <<a href="mailto:matimontg@gmail.com">matimontg@gmail.com</a>><br>
>> wrote:<br>
>> > Thanks.<br>
>> ><br>
>> > Here's another question, it seems I need 12 points to perform the<br>
>> > registration and obtain the matrix, now, the results I'm getting are not<br>
>> > very good. We have the algorithm programmed manually (not using ITK) and<br>
>> > when we compare the results are different (way too different).<br>
>> > I just pulled the example and modified to 3 dimensions and changed the<br>
>> > translationtransform to an affine transform. Is there an example using<br>
>> > Affine that I can check? I'm thinking is not just changing the<br>
>> > transform,<br>
>> > there may be other variables I need to tweak..<br>
>> > Matias.<br>
>> ><br>
>> > El mié., 11 de nov. de 2015 a la(s) 5:51 p. m., Dženan Zukić<br>
>> > <<a href="mailto:dzenanz@gmail.com">dzenanz@gmail.com</a>> escribió:<br>
>> >><br>
>> >> Nowhere, which means it's the >> operator's standard white-space<br>
>> >> separators (spaces, tabs, newlines).<br>
>> >><br>
>> >> On Wed, Nov 11, 2015 at 3:03 PM, Matias Montroull <<a href="mailto:matimontg@gmail.com">matimontg@gmail.com</a>><br>
>> >> wrote:<br>
>> >>><br>
>> >>> by the way, where in the code is the space separator specified?<br>
>> >>><br>
>> >>> El mié., 11 de nov. de 2015 a la(s) 5:02 p. m., Matias Montroull<br>
>> >>> <<a href="mailto:matimontg@gmail.com">matimontg@gmail.com</a>> escribió:<br>
>> >>>><br>
>> >>>> that worked! Thanks for the advise, I was under the impression that<br>
>> >>>> points needed to be separated by ";"<br>
>> >>>> Thanks again<br>
>> >>>><br>
>> >>>> El mié., 11 de nov. de 2015 a la(s) 5:00 p. m., Dženan Zukić<br>
>> >>>> <<a href="mailto:dzenanz@gmail.com">dzenanz@gmail.com</a>> escribió:<br>
>> >>>>><br>
>> >>>>> By looking at the code, the numbers should be separated by space,<br>
>> >>>>> not<br>
>> >>>>> semicolon. Can you try that?<br>
>> >>>>><br>
>> >>>>> HTH<br>
>> >>>>><br>
>> >>>>> On Wed, Nov 11, 2015 at 2:51 PM, Matias Montroull<br>
>> >>>>> <<a href="mailto:matimontg@gmail.com">matimontg@gmail.com</a>><br>
>> >>>>> wrote:<br>
>> >>>>>><br>
>> >>>>>> Hi Dženan, thanks for the suggestion, I tried that example and I<br>
>> >>>>>> think<br>
>> >>>>>> I'm missign something as my disk drive became crazy.<br>
>> >>>>>> I basically created 2 txt files with a set of 4 points each in this<br>
>> >>>>>> format:<br>
>> >>>>>> -0.585938;92.406328;38.200<br>
>> >>>>>> 44.7654;52.73442;61.000<br>
>> >>>>>> -53.5;49.218792;68.200<br>
>> >>>>>> -1.757814;81.445382;70.600<br>
>> >>>>>><br>
>> >>>>>> second file has the same format but different numbers of course.<br>
>> >>>>>><br>
>> >>>>>> Is there anything wrong with how I entered the point sets in both<br>
>> >>>>>> files?<br>
>> >>>>>><br>
>> >>>>>> As you can see it is 3 points per line separated by this character<br>
>> >>>>>> ";"<br>
>> >>>>>><br>
>> >>>>>> Thanks,<br>
>> >>>>>><br>
>> >>>>>> Matias.<br>
>> >>>>>><br>
>> >>>>>><br>
>> >>>>>> El mar., 10 de nov. de 2015 a la(s) 6:16 p. m., Dženan Zukić<br>
>> >>>>>> <<a href="mailto:dzenanz@gmail.com">dzenanz@gmail.com</a>> escribió:<br>
>> >>>>>>><br>
>> >>>>>>> Have you seen these two examples:<br>
>> >>>>>>><br>
>> >>>>>>><br>
>> >>>>>>> <a href="http://www.itk.org/Doxygen/html/Examples_2RegistrationITKv3_2IterativeClosestPoint3_8cxx-example.html" rel="noreferrer" target="_blank">http://www.itk.org/Doxygen/html/Examples_2RegistrationITKv3_2IterativeClosestPoint3_8cxx-example.html</a><br>
>> >>>>>>><br>
>> >>>>>>><br>
>> >>>>>>> <a href="http://www.itk.org/Doxygen/html/Examples_2RegistrationITKv4_2IterativeClosestPoint3_8cxx-example.html" rel="noreferrer" target="_blank">http://www.itk.org/Doxygen/html/Examples_2RegistrationITKv4_2IterativeClosestPoint3_8cxx-example.html</a><br>
>> >>>>>>><br>
>> >>>>>>> HTH<br>
>> >>>>>>><br>
>> >>>>>>> On Tue, Nov 10, 2015 at 3:18 PM, Matias Montroull<br>
>> >>>>>>> <<a href="mailto:matimontg@gmail.com">matimontg@gmail.com</a>> wrote:<br>
>> >>>>>>>><br>
>> >>>>>>>> Hi,<br>
>> >>>>>>>><br>
>> >>>>>>>> I have 2 sets of points (one is points on an image and another<br>
>> >>>>>>>> one<br>
>> >>>>>>>> is points on a NDI tracker) and I need to obtain the<br>
>> >>>>>>>> transformation matrix.<br>
>> >>>>>>>> What would be the best method? I'm currently using a Solver but<br>
>> >>>>>>>> I'd like to<br>
>> >>>>>>>> implement this using ITK and better if it is SimpleITK.<br>
>> >>>>>>>><br>
>> >>>>>>>> Thank you!<br>
>> >>>>>>>><br>
>> >>>>>>>> Matias.<br>
>> >>>>>>>> --<br>
>> >>>>>>>> Matias<br>
>> >>>>>>>><br>
>> >>>>>>>> _____________________________________<br>
>> >>>>>>>> Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
>> >>>>>>>><br>
>> >>>>>>>> Visit other Kitware open-source projects at<br>
>> >>>>>>>> <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
>> >>>>>>>><br>
>> >>>>>>>> Kitware offers ITK Training Courses, for more information visit:<br>
>> >>>>>>>> <a href="http://www.kitware.com/products/protraining.php" rel="noreferrer" target="_blank">http://www.kitware.com/products/protraining.php</a><br>
>> >>>>>>>><br>
>> >>>>>>>> Please keep messages on-topic and check the ITK FAQ at:<br>
>> >>>>>>>> <a href="http://www.itk.org/Wiki/ITK_FAQ" rel="noreferrer" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
>> >>>>>>>><br>
>> >>>>>>>> Follow this link to subscribe/unsubscribe:<br>
>> >>>>>>>> <a href="http://public.kitware.com/mailman/listinfo/insight-users" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/insight-users</a><br>
>> >>>>>>>><br>
>> >>>>>>><br>
>> >>>>>> --<br>
>> >>>>>> Matias<br>
>> >>>>><br>
>> >>>>><br>
>> >>>> --<br>
>> >>>> Matias<br>
>> >>><br>
>> >>> --<br>
>> >>> Matias<br>
>> >><br>
>> >><br>
>> > --<br>
>> > Matias<br>
>> ><br>
>> > _____________________________________<br>
>> > Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
>> ><br>
>> > Visit other Kitware open-source projects at<br>
>> > <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
>> ><br>
>> > Kitware offers ITK Training Courses, for more information visit:<br>
>> > <a href="http://www.kitware.com/products/protraining.php" rel="noreferrer" target="_blank">http://www.kitware.com/products/protraining.php</a><br>
>> ><br>
>> > Please keep messages on-topic and check the ITK FAQ at:<br>
>> > <a href="http://www.itk.org/Wiki/ITK_FAQ" rel="noreferrer" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
>> ><br>
>> > Follow this link to subscribe/unsubscribe:<br>
>> > <a href="http://public.kitware.com/mailman/listinfo/insight-users" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/insight-users</a><br>
>> ><br>
>><br>
>> --<br>
>><br>
>> Matias<br>
><br>
> --<br>
> Matias<br>
_____________________________________<br>
Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at<br>
<a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Kitware offers ITK Training Courses, for more information visit:<br>
<a href="http://www.kitware.com/products/protraining.php" rel="noreferrer" target="_blank">http://www.kitware.com/products/protraining.php</a><br>
<br>
Please keep messages on-topic and check the ITK FAQ at:<br>
<a href="http://www.itk.org/Wiki/ITK_FAQ" rel="noreferrer" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://public.kitware.com/mailman/listinfo/insight-users" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/insight-users</a><br>
</div></div>_______________________________________________<br>
Community mailing list<br>
<a href="mailto:Community@itk.org">Community@itk.org</a><br>
<a href="http://public.kitware.com/mailman/listinfo/community" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/community</a><br>
</blockquote></div><br></div>