Skip to main content

Run patch-based classification on pathology whole slide images.

Project description

WSInfer: deep learning inference on whole slide images

Original H&E Heatmap of Tumor Probability

🔥 🚀 Blazingly fast pipeline to run patch-based classification models on whole slide images.

Continuous Integration Documentation Status Version on PyPI Supported Python versions Published in npj Precision Oncology

See https://wsinfer.readthedocs.io for documentation.

The main feature of WSInfer is a minimal command-line interface for running deep learning inference on whole slide images. Here is an example:

wsinfer run \
   --wsi-dir slides/ \
   --results-dir results/ \
   --model breast-tumor-resnet34.tcga-brca

Installation

WSInfer can be installed using pip or conda. WSInfer will install PyTorch automatically if it is not installed, but this may not install GPU-enabled PyTorch even if a GPU is available. For this reason, install PyTorch before installing WSInfer.

Install PyTorch first

Please see PyTorch's installation instructions for help installing PyTorch. The installation instructions differ based on your operating system and choice of pip or conda. Thankfully, the instructions provided by PyTorch also install the appropriate version of CUDA. We refrain from including code examples of installation commands because these commands can change over time. Please refer to PyTorch's installation instructions for the most up-to-date instructions.

You will need a new-enough driver for your NVIDIA GPU. Please see this version compatibility table for the minimum versions required for different CUDA versions.

To test whether PyTorch can detect your GPU, check that this code snippet prints True.

python -c 'import torch; print(torch.cuda.is_available())'

Install WSInfer

WSInfer can be installed with pip or conda (from conda-forge).

Pip

To install the latest stable version, use

python -m pip install wsinfer

To install the bleeding edge (which may have breaking changes), use

python -m pip install git+https://github.com/SBU-BMI/wsinfer.git

Conda

To install the latest stable version, use

conda install -c conda-forge wsinfer

If you use mamba, simply replace conda install with mamba install.

Developers

Clone this GitHub repository and install the package (in editable mode with the dev extras).

git clone https://github.com/SBU-BMI/wsinfer.git
cd wsinfer
python -m pip install --editable .[dev]
pre-commit install

We use pre-commit to automatically run various checks during git commit.

Citation

If you find our work useful, please cite our paper!

Kaczmarzyk, J.R., O’Callaghan, A., Inglis, F. et al. Open and reusable deep learning for pathology with WSInfer and QuPath. npj Precis. Onc. 8, 9 (2024). https://doi.org/10.1038/s41698-024-00499-9

@article{kaczmarzyk2024open,
  title={Open and reusable deep learning for pathology with WSInfer and QuPath},
  author={Kaczmarzyk, Jakub R. and O'Callaghan, Alan and Inglis, Fiona and Gat, Swarad and Kurc, Tahsin and Gupta, Rajarsi and Bremer, Erich and Bankhead, Peter and Saltz, Joel H.},
  journal={npj Precision Oncology},
  volume={8},
  number={1},
  pages={9},
  year={2024},
  month={Jan},
  day=10,
  doi={10.1038/s41698-024-00499-9},
  issn={2397-768X},
  url={https://doi.org/10.1038/s41698-024-00499-9}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wsinfer-0.6.1.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

wsinfer-0.6.1-py3-none-any.whl (43.4 kB view details)

Uploaded Python 3

File details

Details for the file wsinfer-0.6.1.tar.gz.

File metadata

  • Download URL: wsinfer-0.6.1.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for wsinfer-0.6.1.tar.gz
Algorithm Hash digest
SHA256 b201dd2213178bbdf5b7ee037a360cd7c5a1983738a83f9f5ef22efbbae6c422
MD5 f3b25d41345ea4c0730a8a40522a96f6
BLAKE2b-256 0dbe2061ea18f85cb29b560ec5bde92a5c593a40d676672fabb940c4f31a8d81

See more details on using hashes here.

File details

Details for the file wsinfer-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: wsinfer-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 43.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for wsinfer-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1177b1685e8d1b95b2eff3f57694b53290e6d9c1c8a93e4a5a947e9752e98a8d
MD5 dc71a4816b14361ed4055edd444b27b5
BLAKE2b-256 f11f921a1c30e473bd7c8f2993e997d557f3ee4c5dec33d37bef8dc93e83751a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page