This release is a pre-release and may not be stable for production use.
Snakemake workflow: dvp-imaging-pipeline
A Snakemake workflow for Scalable processing of DVP imaging data with snakemake.
Usage
Detailed information about input data and workflow configuration can also be found in the workflow/config/README.md.
Deployment options
- Clone this repository or download it via (
Code > Download ZIP)
git clone https://github.com/MannLabs/dvp-imaging-pipeline.git
- Change your working directory into the repository
cd path/to/dvp-imaging-pipeline
- Create and activate the environment that provides snakemake. The environment is named
snakemakebyenvironment.yaml.
conda env create -n snakemake --file environment.yaml && conda activate snakemake
- Test your setup on a small artificial dataset before running the workflow on your own data
snakemake --cores 2 --sdm conda --directory workflow --configfile tests/integration/config/config.yaml
Results (spatialdata objects, logs, and plots) are written to tests/integration/results.
- Adapt the configuration files
Adjust options in the config file workflow/config/config.yaml. Use the test file tests/integration/config/config.yaml as template.
- Run the workflow
Run the workflow locally (not recommended for large datasets).
snakemake --cores all --sdm conda --directory workflow --configfile workflow/config/config.yaml
For large datasets, submit the workflow to a SLURM cluster instead, see HPC below.
HPC
You can run this workflow on a high-performance computing cluster.
On the cluster, create the snakemake base environment:
conda env create --file environment.yaml
Then submit the provided workflow script on a cluster. Please check the script and the official snakemake slurm plugin documentation to learn about relevant flags and settings.
cd workflow
sbatch snakemake.sbatch
Logging
Monitor the progress of the workflow in the workflow directory with snkmt, see also the documentation.
The snkmt logger is not part of environment.yaml and has to be installed into the snakemake environment separately:
pip install snakemake-logger-plugin-snkmt
Add --logger snkmt to the snakemake calls above, then follow the run from the workflow directory:
snkmt console
Install utility functions
The utility functions used by the workflow (source in src/) are published as the python package dvpimg.
conda create -n dvpimg python=3.12 -y && conda activate dvpimg
# only pre-releases are available so far
pip install --pre dvpimg
To install the version in this repository instead, run pip install . from the repository root.
Components
See the documentation for more information on the individual components and detailed instructions on their configuration.
References
(alphabetical order)
dvp-io: MannLabs/dvp-io. Lucas Diedrich (2025). https://github.com/MannLabs/dvp-io.git
Harpy: saeyslab/harpy. Saeys Lab (2025). https://github.com/saeyslab/harpy.git
Lazyslide: Zheng, Y., Abila, E., Chrenková, E., Winkler, J. & Rendeiro, A. F. LazySlide: accessible and interoperable whole slide image analysis. 2025.05.28.656548 Preprint at https://doi.org/10.1101/2025.05.28.656548 (2025).
Snakemake Köster, J., Mölder, F., Jablonski, K. P., Letcher, B., Hall, M. B., Tomkins-Tinch, C. H., Sochat, V., Forster, J., Lee, S., Twardziok, S. O., Kanitz, A., Wilm, A., Holtgrewe, M., Rahmann, S., & Nahnsen, S. Sustainable data analysis with Snakemake. F1000Research, 10:33, 10, 33, 2021. https://doi.org/10.12688/f1000research.29032.2.
Spatialdata: Marconato, L. et al. SpatialData: an open and universal data framework for spatial omics. Nat Methods 1–5 (2024) doi:10.1038/s41592-024-02212-x.
Citation
If you use this workflow in a paper, don't forget to give credits to the authors by citing the URL of this repository or its DOI.
DVP-Imaging-Pipeline [Computer software]. https://github.com/MannLabs/dvp-imaging-pipeline.git
Metadata
Release files for dvpimg 0.0.1a43
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dvpimg-0.0.1a43.tar.gz | 721.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dvpimg-0.0.1a43-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 828.4 kB
Release files / dvpimg-0.0.1a43.tar.gz
| Download URL | dvpimg-0.0.1a43.tar.gz |
|---|---|
| Size | 721.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e752732aaa19070e094a4703aa28347c5544b975b5c866c79110bcb403981953
|
|
BLAKE2b-256 checksum How to use checksums |
60eb998daa507b693d170ce476af89d56f4d22ffe973ff7b59027c49405925b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.
Transparency logRelease files / dvpimg-0.0.1a43-py3-none-any.whl
| Download URL | dvpimg-0.0.1a43-py3-none-any.whl |
|---|---|
| Size | 106.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
44dfe9387e33c3784b80f24550f3f68786620d11b5c485eb4fc1776e08444489
|
|
BLAKE2b-256 checksum How to use checksums |
4401cfc9202a4efe141b5dff80f18bd3eada7a261ed28f989ba6ba59a589a4f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.
Transparency log