Following up here, I think I’ve narrowed down the code difference:
By my read on the left we have the SetOptimizerScalesFromIndexShift, where the point shift is calculated by computing the Euclidean distance between Index differences. I think that means that this method would be susceptible to having weird scales from anisotropic fixed images.
Meanwhile, on the right we have SetOptimizerScalesFromPhysicalShift where “real space” Euclidean distance is calculated for the shifts.
I think this means that maximumStepSizeInPhysicalUnits is interpreted differently based on the scales estimator? Maybe also other parameters in the optimizer?
