[Insight-users] Affine transformation with convergence on metric value
Siddharth Srivastava
siddys at gmail.com
Tue Nov 8 14:10:12 EST 2011
Hi all,
I want the affine transform to converge on the change on metric value
across iterations.
The various components in my registration are defined as below:
typedef itk::AffineTransform<coordRepType, 2> TransformType;
typedef itk::RegularStepGradientDescentOptimizer OptimizerType;
typedef itk::MeanSquaresImageToImageMetric< BFrameType, BFrameType >
MetricType;
typedef itk::LinearInterpolateImageFunction< BFrameType, coordRepType >
InterpolatorType;
typedef itk::ImageRegistrationMethod<BFrameType, BFrameType>
RegistrationType;
I looked at the examples available on the net with similar approaches, but
the closest examples I
could find was specifying the minimum step length as the stopping
criterion. I already have a Command
Observer attached to the filter to observe the metric value per iteration,
so I can calculate the change
as the registration progresses. I was wondering how I can
1) specify the change in metric value as a stopping criterion, and
2) send a terminate (or equivalent) command to the
registration process when metric_previous - metric_current attains a
certain threshold, after which it should
return the current parameters?
If someone can point me to a good example on the net, that would be great
too. Or maybe a mail thread on
a similar topic which I missed....
I am still struggling why my release version crashes with a
SystemAccessViolation while definine a SmartPointer
to the registration object (my earlier mail, using ITK 3.20.0), but for
now, to maintain continuity, I wanted to move forward with the
rest of the implementation...
Thanks for all the help,
Sid.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20111108/0b8991fb/attachment.htm>
More information about the Insight-users
mailing list