When transforming DataTree elements, discard scales resulting in zero shape #948
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements a fix for #947.
Problem summary:
spatialdata.transform
transforms each of the scales of a multi-scale image and it can happen that (especially lower resolution) scales result in shape 0. One one hand it doesn't make sense to keep zero shape scales, on the other this leads to an error later on when the scale factors of the resulting image are extracted.Fix proposed in this PR: scales resulting in zero shape are discarded, similarly to the postprocessing of
bounding_box_query
:spatialdata/src/spatialdata/_core/query/_utils.py
Lines 116 to 126 in 7604a3d
In the case of 'scale0' resulting in zero shape, the PR proposes to raise an error.
Happy to work on any review points!