Xenium cell segmentation mask export requires coordinate flipping among y-axis
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 28/100
- Tipo di issue
- Bug
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- data-visualization
Direzione di ricerca
Riproduci l’esportazione segnalata usando il Xenium breast dataset, l’oggetto spatialdata ottenuto da sd.read_zarr, rasterio.transform.from_bounds, rasterize e tiff.imwrite. Confronta le convenzioni delle coordinate e determina dove si verifica l’inversione dell’asse y; il lavoro è completato quando le maschere esportate sono allineate ai risultati di espressione senza un flip manuale non spiegato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I have a script that pulls the cell segmentation mask from a spatialdata io object from Xenium and exports it as a tiff for our visualization software. The data are taken from this publicly available breast dataset:
sdata = sd.read_zarr(zarr_path)
cells = sdata.shapes['cell_boundaries']
x_min, y_min = np.min((adata.obsm['spatial']), axis=0)
x_max, y_max = np.max((adata.obsm['spatial']), axis=0)
transform = rasterio.transform.from_bounds(x_min, y_min, x_max,
y_max, int(x_max - x_min), int(y_max - y_min))
shapes = [(geom, idx) for idx, geom in enumerate(cells.geometry)]
mask = rasterize(shapes=shapes, out_shape=(int(y_max - y_min), int(x_max - x_min)),
transform=transform, dtype='int32')
tiff.imwrite(f"mask.tiff", mask)
However, upon exporting the mask to tiff format, the coordinates in the y-axis are flipped:
If I flip the mask array among the y-axis prior to export, the mask now aligns with the expression results:
tiff.imwrite(f"mask.tiff", np.flip(mask, axis=0))
- Lingua principale
- Python
- Stelle
- 103
- Fork
- 64
- Merge medio
- 1h 8m
- PR unite (30g)
- 3
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di scverse/spatialdata-io
-
documentation
Difficoltà 2/5 Mezza giornata Idoneità per principianti 65/100
scverse/spatialdata-io#161 · 13 commenti ·
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 58/100
scverse/spatialdata-io#422 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
scverse/spatialdata-io#419 · 1 commento ·
-
MCMICRO reader does not support new nf-core/mcmicro output formatsForse già presa @adamjtaylor l’ha presa 79 giorni fa. Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 48/100
scverse/spatialdata-io#409 · 1 reazione ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 52/100
scverse/spatialdata-io#408 ·
Tutte le issue di scverse/spatialdata-io
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue Stellar Wave trivial
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
StellarCanary/ProtocolCanary-Fixtures#258 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
IBM/ai-atlas-nexus#295 ·
I maintainer di solito rispondono entro 6 giorni
-
github_actions
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
Hochfrequenz/aibap.mcp#578 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
mishraprafful/multihull#150 ·
I maintainer di solito rispondono entro 1 giorno