[Insight-users] Parameter scales for registration (second try)
Joël Schaerer
joel.schaerer at gmail.com
Mon May 13 05:56:03 EDT 2013
Hi Nick,
What I called the "first scaling" is the application of scales that is
done before gradient normalization, in the AdvanceOneStep method:
itkRegularStepGradientDescentBaseOptimizer.cxx
187 for ( unsigned int i = 0; i < spaceDimension; i++ )
188 {
189 transformedGradient[i] = m_Gradient[i] / scales[i];
190 previousTransformedGradient[i] =
191 m_PreviousGradient[i] / scales[i];
192 }
The "second scaling" would be my proposed change, replacing
itkRegularStepGradientDescentOptimizer.cxx
42 for ( unsigned int j = 0; j < spaceDimension; j++ )
43 {
44 newPosition[j] = currentPosition[j] + transformedGradient[j] *
factor;
45 }
46
with
itkRegularStepGradientDescentOptimizer.cxx
42 for ( unsigned int j = 0; j < spaceDimension; j++ )
43 {
44 newPosition[j] = currentPosition[j] + transformedGradient[j] *
factor / scales[j];
45 }
46
basically a second application of the parameter scales.
I hope this is clearer?
joel
On 07/05/2013 23:22, Nick Tustison wrote:
> Hi Joel,
>
> Also, could you clarify your question a bit? The snippet of interest in
> the old itkRegularStepGradientOptimizer is
>
> for(unsigned int j=0; j<spaceDimension; j++)
> {
> newPosition[j] = currentPosition[j] + transformedGradient[j] * factor;
> }
>
> When you write of "first scaling" are you referring to multiplication by
> "factor"?
>
> Nick
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20130513/d0737004/attachment.htm>
More information about the Insight-users
mailing list