Skip to main content

PRISM: A Python package for the inteRactive and Integrated analySis of Multiplexed tissue microarrays

License MIT PyPI Python Version tests codecov napari hub

NOTE: PRISM is still in heavy development. PRISM or napari-prism is a package and napari plugin designed for interactively processing, analysing and visualising multiplxed tissue microarrays.

Currently, end-to-end capabilities (i.e. starting from importing the raw image file, to basic spatial analysis of annotated cells) are available for images generated from the Akoya Phenocycler™-Fusion platform. However, the modular structure of the package allows for usage at any stage of processing and/or analysis, given a pre-built SpatialData object using readers from either spatialdata-io or sopa.

PRISM uses spatialdata as the core data framework, allowing for:

  1. The rich integration of tools from the (scverse) Python bioinformatics ecosystem with highly interactive graphical user interfaces from napari and napari-spatialdata.
  2. The storage of images, shapes, annotations and their linked AnnData objects in a standardized, FAIR-compliant data structure, addressing the non-standard and fragmented organization of files before, during, and after a multiplexed image analysis pipeline.

The package was designed to be used completely within the napari application and therefore require little to no knowledge of Python programming. Documentation for usage via the API is currently in progress.

Requirements

Install miniconda or anaconda.

Open the conda terminal and create a simple environment:

conda create -n prism python -c conda-forge

Activate the environment before executing the instructions in the Installation section.

conda activate prism

List of Dependencies (Version specific)

python>=3.10
spatialdata>=0.5.0
spatialdata-plot>=0.2.11
napari[all]
napari_matplotlib>=3.0.0
napari_spatialdata>=0.5.7
dask<2024.11.12
cellpose>=3.0.10
scanpy>=1.10.0
xarray

Installation: CPU only

Install this package via pip:

pip install napari-prism

Install the latest development version:

pip install git+https://github.com/clinicalomx/napari-prism.git@main

Installation: GPU-accelerated

General computations with RAPIDS and rapids-singlecell

General larger scale and/or computationally demanding functions can be accelerated with the NVIDIA RAPIDS suite. We utilise some packages from this suite, as well as the GPU-accelerated implementation of scanpy with rapids-singlecell.

  1. Check and configure the system requirements from RAPIDS.
    • Currently, only Linux distributions (or Windows systems with WSL2) are supported.
    • Install the CUDA12.2 or CUDA12.5 toolkit.
  2. Install the package together with RAPIDS and rapids-singlecell via pip:
pip install napari-prism[gpu] --extra-index-url=https://pypi.nvidia.com

Cell segmentation with Cellpose

To run cellpose on the GPU, install the CUDA version of PyTorch. You may need to remove any installed CPU versions of PyTorch.

The new cellpose v4 adopts the SAM foundation model for generalization. While this may reduce the need for fine-tuning, we find that this needs higher end GPUs with more VRAM. If this is an issue, consider installing Cellpose 3, i.e:

pip install cellpose<4

Getting Started

To start using napari-prism, please see the tutorials:

Contributing

Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.

License

Distributed under the terms of the MIT license, "napari-prism" is free and open source software

Issues

If you encounter any problems, please file an issue along with a detailed description.

Known Issues

Adding shapes like tma_envelopes may cause segmentation faults (https://github.com/napari/napari/issues/6709). A workaround is to uninstall triangle (pip uninstall triangle)

Citation

Rafael Tubelleza, Aaron Kilgallon, Chin Wee Tan, James Monkman, John F Fraser, Arutha Kulasinghe, PRISM: a Python package for interactive and integrated analysis of multiplexed tissue microarrays, NAR Genomics and Bioinformatics, Volume 7, Issue 3, September 2025, lqaf114, https://doi.org/10.1093/nargab/lqaf114

Metadata

Release files for napari-prism 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for napari-prism 0.1.7
File Size Uploaded
napari_prism-0.1.7.tar.gz 88.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for napari-prism 0.1.7
File Interpreter ABI Platform
napari_prism-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 89.0 MB

Release files / napari_prism-0.1.7.tar.gz

Download URL napari_prism-0.1.7.tar.gz
Size 88.9 MB
Tags Source
SHA-256 checksum
How to use checksums
2dbb6552064bca40db3eb6c2c4bf79b35708985157a15e785da154ce8ac28271
BLAKE2b-256 checksum
How to use checksums
2f9d53fb9de6b07096aeb036bf663d50f9ce58a9d05afd009f61dee77571be12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / napari_prism-0.1.7-py3-none-any.whl

Download URL napari_prism-0.1.7-py3-none-any.whl
Size 145.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c46d4730e45ca94b8b61684f240e2c3bf28bbe23cedbb3b453ade8b678ceae7d
BLAKE2b-256 checksum
How to use checksums
2cda0c9bc278bafa2d62771316ca99a0fc9f4f7ff8820d99a0ded7abe1129dec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page