cuCIM - an extensible toolkit designed to provide GPU accelerated I/O, computer vision & image processing primitives for N-Dimensional images with a focus on biomedical imaging.
Project description
cuCIM
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 cuda-version=`<CUDA version>`
<CUDA version>
should be 11.2+ (e.g., 11.2
, 12.0
, etc.)
Conda (nightlies)
conda create -n cucim -c rapidsai-nightly -c conda-forge cucim cuda-version=`<CUDA version>`
<CUDA version>
should be 11.2+ (e.g., 11.2
, 12.0
, etc.)
PyPI
Install for CUDA 12:
pip install cucim-cu12
Alternatively install for CUDA 11:
pip install cucim-cu11
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.
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
Built Distributions
Hashes for cucim_cu11-24.10.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7881f1a0f9f2830ec5dc82ad65076742cee5265108be8b465852a7484824a258 |
|
MD5 | 97c4823fdb35004ba8d602ff7220d858 |
|
BLAKE2b-256 | 91174b4e84b2fdb7611e002033f9a1a8bb753e58ff8e2862c4330f00b2b6a906 |
Hashes for cucim_cu11-24.10.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f36fa9708c030837d892a48463ac5570a136a41800d5ba306cceda011c4e7923 |
|
MD5 | 038897a5cec09e7136f8edd3fc493c2d |
|
BLAKE2b-256 | 963866d2f08288280bfc440ee73c444620181a3678b618f6a50afeec63da65d1 |
Hashes for cucim_cu11-24.10.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b147d643e2418bfb454458ae4481c49c75fe700575984227bac1000389aaa267 |
|
MD5 | 2fdec2269e6709786f545226f3bdf24e |
|
BLAKE2b-256 | 214f52f60b50a0c9f04d1afebc83664592f31426632fc88dd880b7ebfa520ff1 |
Hashes for cucim_cu11-24.10.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4298ad123621be7d6bbee0b748f95ce8675b2301ac55f29ba6395bd9ef3e506a |
|
MD5 | 9c143ddb1696ddee654d27e75da2aebe |
|
BLAKE2b-256 | 0ae36ac44a0ffb08f1ce5ba5f319439cc7bb2f3794233dcc1cca79e521bb72fa |
Hashes for cucim_cu11-24.10.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e571b6637caed5e790f7a7d47e09abb62aa0c53544d15d705ab29370b081eb22 |
|
MD5 | 7f028e1cae5f24e865dbc59f2bf229cf |
|
BLAKE2b-256 | 95df04d2ae1c3ac87bfb9428d0001c4c1556226e2f559feb2a3e8ee44df3246a |
Hashes for cucim_cu11-24.10.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c11fce3e7e171c8fd615d3c5d45f6679fc458a6709e8512d9220e55c43a0f27b |
|
MD5 | 99f489e3650ab5c7a3a238e49b83fb07 |
|
BLAKE2b-256 | 6aba5f324cd8c0a55fb15385795f94ccf18a5853a2a5945f077e24364017b35c |