[ITK-dev] ImageRegistrationMethod tests and command call backs.
Bradley Lowekamp
blowekamp at mail.nih.gov
Fri Jun 6 08:38:03 EDT 2014
Nick,
It appears the v3 Registration methods used and "IterationEvent" while the v4 is using an "InitializationEvent". To get the test working with the call back I am tempted to change the to the prior "IterationEvent" that is used else where. Additionally, I was thinking to create a new event derived from the "IterationEvent" called "MultiResolutionIterationEvent" to further clarify things. Unfortunately, programs like ANTs would need to change to the "IterationEvent" or derived "MultiResolutionIterationEvent". Since the tests aren't working the way the look like they are suppose to I think this could be considered a "BUG".
Related to information available in callbacks/observers, the ImageRegistrationMethodv4 has the following accessors "CurrentMetricValue", "IsConverged", "CurrentConvergenceValue", which are 0 for the base Method but used for the SyN methods. What is the intention here? In SimpleITK I have to jump through a couple hoops to propagate this information from the Optimizer to the Method interface. This could be done in ITK, by adding call backs from the optimizer's iteration event to the update these attributes in the method. The other addition in SimpleITK I did was when a observer for an "IterationEvent" was added to the Method is actually added to the itk optimizer. This could also be added to ITK, by having the Method repeat the optimizer's iteration event.
Thanks for your thoughts when you have a moment,
Brad
On May 29, 2014, at 12:59 PM, Nicholas Tustison <ntustison at gmail.com> wrote:
> It might be a situation where I simply copied over code from another
> example not realizing that it wasn’t needed.
>
> Nick
>
>
> On May 29, 2014, at 12:10 PM, Bradley Lowekamp <blowekamp at mail.nih.gov> wrote:
>
>> Hello,
>>
>> I am looking at some of the ImageRegistrationMethodv4 tests. I noticed they have Command observers added to the method for the iteration even:
>>
>> https://github.com/InsightSoftwareConsortium/ITK/blob/master/Modules/Registration/RegistrationMethodsv4/test/itkSimpleImageRegistrationTest.cxx#L31
>> https://github.com/InsightSoftwareConsortium/ITK/blob/master/Modules/Registration/RegistrationMethodsv4/test/itkSimpleImageRegistrationTest.cxx#L197
>>
>> But the method doesn't emit iteration events so there is no output:
>>
>> http://open.cdash.org/testDetails.php?test=228724433&build=3347968
>>
>> I know I saw some test/example which had a nice observer, but I don't recall which ones...
>>
>> What's the intension here? How should this be fixed?
>>
>> Thanks,
>> Brad
>
More information about the Insight-developers
mailing list