[Insight-users] Re: about pointset registration
Luis Ibanez
luis.ibanez at kitware.com
Tue Sep 13 16:08:56 EDT 2005
Hi Yixun,
Yes, ITK provides Thin PlateSplines,
as well as three other variants of Kernel Splines.
Please see the Doxygen documentation.
http://www.itk.org/Insight/Doxygen/html/classitk_1_1KernelTransform.html
However, Kernel Splines are not necessarily faster
than BSplines.
You may want to run some performance tests and
submit them as a paper to the Insight Journal.
http://www.insightsoftwareconsortium.org/InsightJournal/
Just make sure to compile everything for "Release".
Debug builds are not appropriate for code profiling.
Regards,
Luis
---------------------------
Yixun Liu wrote:
> Thank you for your help!
>
> If I use the BSpline with 8*8*8 control points to intepolate the point cloud I should optimize the cost funtion with 512*3 parameters.It will take a long time. So I intend to use thin-plate Spline to intepolate the point cloud. Does ITK support it?
>
> Regards,
>
> Yixun Liu
>
>
> ----- Original Message -----
> From: "Luis Ibanez" <luis.ibanez at kitware.com>
> To: "Yixun Liu" <yxliu at fudan.edu.cn>
> Cc: <insight-users at itk.org>
> Sent: Tuesday, September 13, 2005 9:48 PM
> Subject: Re: about pointset registration
>
>
>
>>
>>Hi Yixun,
>>
>>
>>1) Yes, you can use any ITK Transform for registring
>> Point Sets.
>>
>>
>>2) When you say "very very slow" what do you mean ?
>> minutes ? hours ?
>>
>> Please be more specific.
>>
>> Also: did you compiled your code for "Release" ?
>> the difference in performance between Debug and Release
>> can easily be a ratio of 10:1
>>
>>
>>3) The BSpline transform is computationally demanding.
>> You should first use an Affine transform in order to align
>> the two point sets, then use the resulting Affine transform
>> as the "Bulk" transform in the Bspline deformable transform,
>> and refine the registration.
>>
>>
>>4) Iterative closest point tends to take long time when you
>> use it as a N x M problem. You may want to use the option
>> of generating a Distance map from one of the point sets
>> first, as illustrated in the Examples in the directory
>>
>> Examples/Patented
>>
>> Ahh... by the way... the Iterative Closest Point algorithm
>> is patented. You need a license from General Motors in order
>> to use this algorithm, whether you are in a commercial or
>> academic institutions (academic institutions are not exempted
>> from Patent laws).
>>
>>
>>
>> SOFTWARE PATENTS AND ALGORITHM PATENTS ARE DETRIMENTAL FOR
>> THE PROGRESS OF SCIENCE AND TECHNOLOGY. PLEASE HELP TO VOTE
>> AGAINST SOFTWARE PATENTS
>>
>> For more information look at:
>>
>> http://lpf.ai.mit.edu/
>>
>> http://en.wikipedia.org/wiki/Software_patent
>>
>>
>>
>> Regards,
>>
>>
>>
>> Luis
>>
>>
>>
>>-----------------
>>Yixun Liu wrote:
>>
>>>Hi,
>>>I need to register two pointsets. Each of them has about
>>>1000 points. The transform is Bspline. The control points is 9X9X5, the
>>>spacing is 3X4X4. The Metric is IterativeClosestPointMetric. The
>>>Optimizer is LevenbergMarquardtOptimizer. I only set the number of
>>>interation to 1. However, the registration runs very very slowly. This
>>> may be caused by optimizer. Which optimizer should I use? Does ITK
>>>suppor the non-rigid pointset registration?
>>>
>>>Regards,
>>>
>>>Yixun Liu
>>
>
>
More information about the Insight-users
mailing list