Skip to content

Add .vsi/.qptiff/.zvi/.afi support via slideio - #15

Merged
rushin682 merged 1 commit into
mainfrom
vsi-support
Sep 20, 2026
Merged

rushin682 merged 1 commit into
mainfrom
vsi-support

Conversation

@rushin682

Copy link
Copy Markdown
Collaborator

Summary

  • Add SlideioImageConverter, a third ImageConverter backend (alongside OpenSlide and Bioio) reading .vsi, .qptiff, .zvi, .afi via slideio. Streams level 0 through a new SlideioTiledSource, never materializing a full whole-slide plane in memory.
  • slideio added as a required dependency (numpy-only wheels, BSD-3-Clause).
  • OpenSlideImageConverter and SlideioImageConverter now raise if the source has no physical pixel size, instead of silently assuming 1.0 um/px; both converters and convert_to_ometiff (CLI: --mpp) accept an mpp= override for sources with none.
  • Fix a downsample_plane bug where halving a single-channel "minisblack" plane swapped height/width from the second sub-level onward (dormant until now since the only existing caller squeezes to 2D first).
  • Docs, changelog, and notebook updates reflecting the new suffixes.

Test plan

  • tests/test_converter.py extended with coverage for SlideioImageConverter, SlideioTiledSource, and the downsample_plane fix.

🤖 Generated with Claude Code

@read-the-docs-community

Copy link
Copy Markdown

Documentation build overview

📚 spatialrefinery | 🛠️ Build #34661615 | 📁 Comparing c4847ae against latest (799472d)

  🔍 Preview build  

5 files changed · ± 5 modified

± Modified

@codecov

codecov Bot commented Sep 20, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 96.47887% with 5 lines in your changes missing coverage. Please review.
✅ Project coverage is 74.53%. Comparing base (799472d) to head (c4847ae).

Files with missing lines Patch % Lines
src/spatialrefinery/core/converter.py 96.47% 5 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #15      +/-   ##
==========================================
+ Coverage   72.36%   74.53%   +2.16%     
==========================================
  Files          14       14              
  Lines        1516     1653     +137     
==========================================
+ Hits         1097     1232     +135     
- Misses        419      421       +2     
Files with missing lines Coverage Δ
src/spatialrefinery/core/converter.py 90.20% <96.47%> (+4.54%) ⬆️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@rushin682
rushin682 merged commit 3a3bac2 into main Sep 20, 2026
9 checks passed
@rushin682
rushin682 deleted the vsi-support branch September 20, 2026 15:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant