This release is a pre-release and may not be stable for production use.
Cytoland
Robust virtual staining of landmark organelles from label-free microscopy.
Part of the VisCy monorepo.
Paper: Robust virtual staining in Nature Machine Intelligence
Installation
# From the VisCy monorepo root
uv pip install -e "applications/cytoland"
Usage
Training and prediction use the shared viscy CLI provided by viscy-utils:
# Training (pick a model-specific config)
uv run --package cytoland viscy fit -c examples/configs/vscyto3d/finetune.yml
# Training with Spotlight loss
uv run --package cytoland viscy fit -c examples/configs/vscyto3d/train_spotlight.yml
# Prediction
uv run --package cytoland viscy predict -c examples/configs/vscyto3d/predict.yml
The YAML config determines which model and data module to use via class_path:
model:
class_path: cytoland.engine.VSUNet
data:
class_path: viscy_data.hcs.HCSDataModule
Tutorials and demos
Scripts and tutorials live under examples/:
| Folder | What it demonstrates |
|---|---|
examples/VS_model_inference/ |
Python API inference demos for VSCyto2D, VSCyto3D, VSNeuromast, and TTA-augmented sliding-window prediction |
examples/vcp_tutorials/ |
Virtual Cell Platform quick-start and organism-specific walkthroughs (HEK293T, neuromast) |
examples/dl-course-exercise/ |
Image-translation course exercise (training from scratch + evaluation) — used at DL@MBL and DL@Janelia |
examples/phase_contrast/ |
Phase-contrast tutorial and demo workflows |
examples/configs/ |
YAML configs for viscy fit / viscy predict across models (VSCyto2D/3D, VSNeuromast, FNet3D, dynacell) |
All demo scripts are written as jupytext-style percent-cell .py files.
Regenerate paired .ipynb notebooks with jupytext --to ipynb solution.py
if you prefer the notebook UI.
Models
| Model | Input | Output | Architecture |
|---|---|---|---|
| VSCyto3D | Phase3D | Nuclei + Membrane | FCMAE / UNeXt2 |
| VSCyto2D | Phase2D | Nuclei + Membrane | UNeXt2 |
| VSNeuromast | DIC | Multiple fluorescent markers | UNeXt2 |
| FNet3D | Transmitted light | Fluorescence | Unet3d (Ounkomol et al. 2018) |
FNet3D note: All spatial dimensions (Z, Y, X) must be divisible by
2^depth(default depth=4 requires divisibility by 16). Seeexamples/configs/fnet3d/fit.yml.
Benchmark note: FNet3D and SEC61B benchmarks now launch from
applications/dynacell/. Cytoland copies are transitional legacy — seeexamples/configs/dynacell/andexamples/configs/fnet3d/.
References
Liu, Hirata-Miyasaki et al., 2025
@article{liu2025robust,
title = {Robust virtual staining of landmark organelles},
author = {Liu, Ziwen and Hirata-Miyasaki, Eduardo and Pradeep, Soorya and others},
journal = {Nature Machine Intelligence},
year = {2025},
doi = {10.1038/s42256-025-01046-2},
}
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cytoland-0.1.0a0.tar.gz.
File metadata
- Download URL: cytoland-0.1.0a0.tar.gz
- Upload date:
- Size: 1.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84938b851f39b03d5d5614850625719cf9bdaf87d741591d606693445a182ffe
|
|
| MD5 |
415bce5acf6963ace87210f300806c3f
|
|
| BLAKE2b-256 |
0603aa7f39d30225ac3f8d36e10d5c7da85e7503bac279b28dc87105c6c1fe6b
|
Provenance
The following attestation bundles were made for cytoland-0.1.0a0.tar.gz:
Publisher:
release.yml on mehta-lab/VisCy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cytoland-0.1.0a0.tar.gz -
Subject digest:
84938b851f39b03d5d5614850625719cf9bdaf87d741591d606693445a182ffe - Sigstore transparency entry: 2521282286
- Sigstore integration time:
-
Permalink:
mehta-lab/VisCy@4b62365c0df25929bffc7f01b3bb2d1c11d69cce -
Branch / Tag:
refs/tags/cytoland-v0.1.0a0 - Owner: https://github.com/mehta-lab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4b62365c0df25929bffc7f01b3bb2d1c11d69cce -
Trigger Event:
release
-
Statement type:
File details
Details for the file cytoland-0.1.0a0-py3-none-any.whl.
File metadata
- Download URL: cytoland-0.1.0a0-py3-none-any.whl
- Upload date:
- Size: 14.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e81dee70a2ba539b6ee089f499ed843b659cb8ffd143f48ec6bbfc8cf6de467
|
|
| MD5 |
90c4062a186f2d2ea6e2ea11cea63be5
|
|
| BLAKE2b-256 |
fa185cda7f26a67c0915456900cfccabbf5ddeabc1b2d1ba2bef618242894da9
|
Provenance
The following attestation bundles were made for cytoland-0.1.0a0-py3-none-any.whl:
Publisher:
release.yml on mehta-lab/VisCy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cytoland-0.1.0a0-py3-none-any.whl -
Subject digest:
6e81dee70a2ba539b6ee089f499ed843b659cb8ffd143f48ec6bbfc8cf6de467 - Sigstore transparency entry: 2521282614
- Sigstore integration time:
-
Permalink:
mehta-lab/VisCy@4b62365c0df25929bffc7f01b3bb2d1c11d69cce -
Branch / Tag:
refs/tags/cytoland-v0.1.0a0 - Owner: https://github.com/mehta-lab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4b62365c0df25929bffc7f01b3bb2d1c11d69cce -
Trigger Event:
release
-
Statement type: