[Insight-users] Transform
Luis Ibanez
luis.ibanez at kitware.com
Fri Aug 13 14:21:20 EDT 2004
Hi Pandu,
Please read the Doxygen documentation for this class
http://www.itk.org/Insight/Doxygen/html/classitk_1_1ScaleSkewVersor3DTransform.html
The number of paramters is specified in the documentation
of the GetParameters() method.
http://www.itk.org/Insight/Doxygen/html/classitk_1_1ScaleSkewVersor3DTransform.html#z1326_1
The dimension of the array of scaling parameters must
match the numbe of paramters in the Transform.
You can simply call the method:
transform->GetNumberOfParameters()
The GradientDescent optimizer is a reasonable choice here.
However notice that the choice of the optimizer depends
more on the characteristics of the ImageMetric than on the
characteristics of the Transform.
Regards,
Luis
-------------------
Pandu Jugnu wrote:
> Hi Luis,
>
> As per you recommendation I am using
> ScaleSkewVersor3DTransform. I had few questions about
> it. How many parameters does it support? 9 or 12?
> Also, while setting up the optimier using the
> following code:
>
> typename OptimizerType::ScalesType scales(
> m_Transform->GetNumberOfParameters() );
> scales.Fill( 1.0);
>
> for ( int j = 4; j < 7; j++ )
> {
> scales[j] = m_TranslationScale;
> }
>
> I am a bit confused if i have to change the "for" loop
> to run from 6 to 9 or 9 to 12.
>
> I am using the GradientDescentOptimizer along with
> this transform. Is this is a good choice.
>
> Thanks Luis
> Pandu
>
>
>
> --- Luis Ibanez <luis.ibanez at kitware.com> wrote:
>
>
>>Hi Pandu,
>>
>>In that case you may want to use the
>>ScaleSkewVersor3DTransform
>>
>>
>
> http://www.itk.org/Insight/Doxygen/html/classitk_1_1ScaleSkewVersor3DTransform.html
>
>>
>>This transform supports the combination of rigid and
>>scaling transforms.
>>
>>
>>Regards,
>>
>>
>> Luis
>>
>>
>>-----------------------------------------------
>>Pandu Jugnu wrote:
>>
>>
>>>Hi Luis,
>>>
>>>Thanks for your last email. It really helped clear
>>
>>my
>>
>>>doubts. I have one more question.
>>>I am trying to incorporate ScaleTransform along
>>
>>with
>>
>>>the QuaternionRigidTransform in
>>
>>MultiResMIRegistration
>>
>>>application so that I can take care of the scaling
>>
>>in
>>
>>>addition to tranlation and rotation.
>>>I went over the Doxygen files for ScaleTransform.
>>
>>But
>>
>>>I am not sure how to implement it along with
>>>QuaternionRigidTransform in the application.
>>>
>>>Can you guide me as how to accomplish this?
>>>
>>>I appreciate your help Luis.
>>>Thanks
>>>Pandu
>>>--- Luis Ibanez <luis.ibanez at kitware.com> wrote:
>>>
>>>
>>>
>>>>Hi Pandu,
>>>>
>>>>This MultiResMIRegistration application uses a
>>>>
>>>> QuaternionRigidTransform
>>>>
>>>>for performing the registration. The presence of
>>>>the AffineTransform is required for converting
>>>>the QuaternionRigidTransform into an Affine
>>>>transform and returning it for being used
>>
>>elsewhere.
>>
>>>>An Affine transform can represent a rigid
>>
>>transform
>>
>>>>without any lose of precision. In practice you can
>>>>use the Affine transform as a 'generic' transform
>>>>that can internally represt
>>>>
>>>> - Rotation transforms
>>>> - Scaling transforms
>>>> - Translation transforms
>>>> - Rigid transforms
>>>> - Similarity transforms
>>>> - Shearing transforms
>>>> - Reflection transforms
>>>>
>>>>In this way, no matter which one of the above
>>>>transforms
>>>>in actually used for performing the registration,
>>>>you could
>>>>always return the results represented in an Affine
>>>>transform.
>>>>
>>>>
>>>>No reason to worry,
>>>>Just continue enjoying your reading of the code.
>>>>
>>>>
>>>>Please let us know if you have further questions.
>>>>
>>>>
>>>>
>>>> Thanks
>>>>
>>>>
>>>> Luis
>>>>
>>>>
>>>>-----------------------
>>>>Pandu Jugnu wrote:
>>>>
>>>>
>>>>
>>>>>Hi Luis
>>>>>
>>>>>I was going over the code for
>>>>
>>>>MultiResMIRegistration
>>>>
>>>>
>>>>>application. I read in the guide that this
>>>>
>>>>application
>>>>
>>>>
>>>>>uses "QuaternionRigidTransform" but I noticed the
>>>>>presence of "Affine Transform" in the code too.
>>>>>Can you put some light on this as of why are we
>>>>
>>>>using
>>>>
>>>>
>>>>>the Affine transform in this example.
>>>>>
>>>>>Thanks in advance.
>>>>>Pandu
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>_______________________________
>>>Do you Yahoo!?
>>>Express yourself with Y! Messenger! Free. Download
>>
>>now.
>>
>>>http://messenger.yahoo.com
>>>_______________________________________________
>>>Insight-users mailing list
>>>Insight-users at itk.org
>>>http://www.itk.org/mailman/listinfo/insight-users
>>>
>>
>>
>>
>>
>>
>
>
>
>
>
> __________________________________
> Do you Yahoo!?
> New and Improved Yahoo! Mail - 100MB free storage!
> http://promotions.yahoo.com/new_mail
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>
More information about the Insight-users
mailing list