Hello,

After a recent change to ITK some random sampling is now being seeded by the 
wall clock instead of a fixed integer[1]. While one can globally set the seed 
to a fixed value. I am thinking it would be best to allow the user to control 
which components are “fixed” random verses “wall clock” random, to aid in 
reproducibility and what not.

In SimpleITK I have a test for the Optimizer’s scales estimator that began 
failing to my surprise[1] with the ITK updated locally. I expected some 
registration related to random sampling of the virtual domain to change but I 
was surprised about the Optimizer’s scales. So what is interesting:

1) The Euler2DTransform is not being classified as an Affine transform by the 
parameter estimator.
2) The random sampling strategy is used for the parameter scale estimator.
3) There is no way to set the specific seed used for this random image 
iteration. The further oddity is that the ImageRandomIterators use a global 
singleton, so if you did set a seed for the iterator, it modified the global 
singleton, there by having global side effects.

The parameters estimator is an interesting case for “wall clock” randomness. 
The small differences in the parameter scales due to randomness get amplified 
over the optimization process of registration.

What to do? How can we provide control of the scales estimator’s randomness?

Thanks,
Brad





[1] 
https://github.com/InsightSoftwareConsortium/ITK/commit/4e6c5bd69a8c24181fee18901ea232084f6ab785
[2] 
https://github.com/SimpleITK/SimpleITK/blob/69bb27bde3250a0db591bfa111a5bd2f44de0ef5/Testing/Unit/sitkImageRegistrationMethodTests.cxx#L844-L873
[3] 
https://github.com/InsightSoftwareConsortium/ITK/blob/6b8108dd6a05cd32dee20e5f1fd29e47d7f31a77/Modules/Numerics/Optimizersv4/include/itkRegistrationParameterScalesEstimator.hxx#L397
_______________________________________________
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://public.kitware.com/mailman/listinfo/insight-developers

Reply via email to