-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
multiscales subsetting #90
Comments
Let me give you an idea here, this subsetting strategy work very well in when you do subset based zooming in voltron using pyramid images: https://github.com/BIMSBbioinfo/ImageArray
|
Thanks for the link, and yeah, I got that part (i.e., scaling down indices to subset low-res.). However, this doesn't resolve my confusion. Specifically,
|
Based on the code here, I would answer my question by: the low-res. is kept completely in case indices don't map. E.g.,
|
I thought a lot about this when I was programming pyramids, for large images this small ceilling and floor operations to not really matter (you can interactively see it), but for small examples it looks a bit weird. |
Yeah, it's quite intelligent/elegant that little |
Just sticking my nose in. Comments in code can be really crucial, maybe linking back to these issues. Explaining the seq chunk fullly may ward off technical debt payments down the road; apologies if it is already there. |
Alright, I have implemented the above as a temporarily working version. However, I still believe this needs to be given more thought... Specifically, |
This is a good point and I think we should bring this up in the next SpatialData meeting at scverse. Now that I think about it, we have never tried this on SpatialData-python right ? does it do floor/ceiling ? Also one question though, what operation you believe will mess up the images if the floor/ceiling applied to scaled indices ? The only case I ever imagine the pyramid scheme is in fact needed ... is for visualisation where you load the lower memory allocating array. Everything else, say learning embeddings and making predictions on image tiles could be done on the actual large image. Lets think more though i agree .... |
It's not clear to me how to implement subsetting of multiscale
ZarrArrays
. E.g., say we have scales 4x4 and 2x2. Then the only subsets that could be propagated to all resolutions would be 1..2 and 3..4, which would keep the 1st and 2nd low-res. index, respectively. How is this handled on the Python side? Shall we simply restrict to valid indices (i.e., throw an error)? Or drop low-res. scales that don't comply, e.g., when subsetting 2..3 (potentially with an argumentdrop=TRUE/FALSE
, defaultFALSE
, that would make users aware/in control of this)? ...perhaps worth thinking about whether Mike Smith has this on his radar, i.e., representing the pyramid beyond one layer at a time.The text was updated successfully, but these errors were encountered: