Hey Brad, In the v4 framework, the use of the “InitializationEvent” is to indicate the start of a new multiresolution level. The “IterationEvent” is invoked in the optimizers. I think the MultiResolutionIterationEvent is a good idea and so I’ll take a look at your patch as soon as I can.
Nick On Jun 6, 2014, at 8:38 AM, Bradley Lowekamp <[email protected]> wrote: > 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 <[email protected]> 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 <[email protected]> >> 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 >> > _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Kitware offers ITK Training Courses, for more information visit: http://kitware.com/products/protraining.php Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ Follow this link to subscribe/unsubscribe: http://www.itk.org/mailman/listinfo/insight-developers
