Open dzenanz opened 2 months ago
In implementing this, the images could be cropped to the common region, or expanded to the largest containing region. For expansion, we would need to decide how to fill the padding. Perhaps go for the most convenient NearestNeighborExtrapolateImageFunction?
The current implementation assumes that the image are "congruent"? Aside from a different size, would this proposal allow for any other variations in geometry metadata? Are we comparing values physical or pixel space?
P.S.: If we are comparing image A and B, then a perhaps new flexible comparison option is to resample image B onto the grid of image A, then proceed with the existing comparison. This essentially remove the requirement for image B to be congruent with image A.
For ITKMontage
's tests, the origin is always the same, but size might differ. So change for this case would be relatively simple.
For the resampling approach, we should probably do it symmetrically, so both resample A to B, and B to A, and do existing comparison twice (in case one image a significantly bigger than the other). And do this only if the images are not congruent and the size tolerance was specified, otherwise do the classic comparison as before.
Are you willing to take this up this issue Brad?
It would be nice to clean up this flag in Montage:
InsightSoftwareConsortium/ITKMontage@06cacd6
(#226)
Description
Currently, the test image and its regression baseline must have the exact same size, as per: https://github.com/InsightSoftwareConsortium/ITK/blob/e41c4583c03c45fda7334111041aabb4b74e8465/Modules/Core/TestKernel/src/itkTestDriverInclude.cxx#L508-L514
Which causes this sort of failure:
This makes the regression test fail even if it would pass otherwise (with e.g.
--compareRadiusTolerance 1
and other tolerances).Expected behavior
Use
compareRadiusTolerance
for comparing image sizes (which would have backwards compatibility problems), or use a new flag for that purpose (which would not disturb existing comparisons).Actual behavior
There is no way to specify that image sizes could differ even a little.