RAPIDS cuCIM is an open-source, accelerated computer vision and image processing software library for multidimensional images used in biomedical, geospatial, material and life science, and remote sensing use cases.
cuCIM offers:
- Enhanced Image Processing Capabilities for large and n-dimensional tag image file format (TIFF) files
- Accelerated performance through Graphics Processing Unit (GPU)-based image processing and computer vision primitives
- A Straightforward Pythonic Interface with Matching Application Programming Interface (API) for Openslide
cuCIM supports the following formats:
- Aperio ScanScope Virtual Slide (SVS)
- Philips TIFF
- Generic Tiled, Multi-resolution RGB TIFF files with the following compression schemes:
- No Compression
- JPEG
- JPEG2000
- Lempel-Ziv-Welch (LZW)
- Deflate
NOTE: For the latest stable README.md ensure you are on the main
branch.
- GTC 2022 Accelerating Storage IO to GPUs with Magnum IO [S41347]
- cuCIM's GDS API examples: https://github.com/NVIDIA/MagnumIO/tree/main/gds/readers/cucim-gds
- SciPy 2021 cuCIM - A GPU image I/O and processing library
- GTC 2021 cuCIM: A GPU Image I/O and Processing Toolkit [S32194]
Blogs
- Enhanced Image Analysis with Multidimensional Image Processing
- Accelerating Scikit-Image API with cuCIM: n-Dimensional Image Processing and IO on GPUs
- Accelerating Digital Pathology Pipelines with NVIDIA Claraโข Deploy
Webinars
Release notes are available on our wiki page.
Install cuCIM
Conda
Conda (stable)
conda create -n cucim -c rapidsai -c conda-forge cucim cudatoolkit=
<CUDA version>
<CUDA version>
should be 11.0+ (e.g., 11.0
, 11.2
, etc.)
Conda (nightlies)
conda create -n cucim -c rapidsai-nightly -c conda-forge cucim cudatoolkit=
<CUDA version>
<CUDA version>
should be 11.0+ (e.g., 11.0
, 11.2
, etc)
PyPI
pip install cucim
# Install dependencies for `cucim.skimage` (assuming that CUDA 11.0 is used for CuPy)
pip install scipy scikit-image cupy-cuda110
Notebooks
Please check out our Welcome notebook (NBViewer)
Downloading sample images
To download images used in the notebooks, please execute the following commands from the repository root folder to copy sample input images into notebooks/input
folder:
(You will need Docker installed in your system)
./run download_testdata
or
mkdir -p notebooks/input
tmp_id=$(docker create gigony/svs-testdata:little-big)
docker cp $tmp_id:/input notebooks
docker rm -v ${tmp_id}
Build/Install from Source
See build instructions.
Contributing Guide
Contributions to cuCIM are more than welcome! Please review the CONTRIBUTING.md file for information on how to contribute code and issues to the project.
Acknowledgments
Without awesome third-party open source software, this project wouldn't exist.
Please find LICENSE-3rdparty.md to see which third-party open source software is used in this project.
License
Apache-2.0 License (see LICENSE file).
Copyright (c) 2020-2022, NVIDIA CORPORATION.