Skip to main content

arcadia-microscopy-tools

uv

This repository contains a Python package called arcadia_microscopy_tools. The purpose of this Python package is for facilitating analysis of large-scale microscopy datasets generated by Arcadia's imaging suite which includes several microscopes:

  • Nikon ECLIPSE Ti2-E (Hina)
  • Nikon ECLIPSE Ni-E (Babu Frik)
  • Leica Stellaris 8 (The Borg)

This package provides tooling for image preprocessing, cell/particle segmentation, morphology analysis, fluorescence quantification, and batch processing pipelines. Supports ND2 files from Nikon microscopes via nd2 and LIF files from Leica microscopes via liffile. The package integrates with popular scientific Python libraries for streamlined high-content screening and quantitative microscopy workflows.

Installation

Basic installation

Install the core package with essential dependencies:

pip install arcadia-microscopy-tools

Optional dependencies

Install with optional features using extras:

  • [segmentation] - Cellpose for cell/particle segmentation
  • [compute] - Modal for cloud-based processing
  • [all] - All optional dependencies
# Example: install with segmentation support
pip install "arcadia-microscopy-tools[segmentation]"

# Or install all optional dependencies
pip install "arcadia-microscopy-tools[all]"

Usage

Loading microscopy images

Load a Leica LIF file from The Borg:

from pathlib import Path
from arcadia_microscopy_tools import MicroscopyImage
from arcadia_microscopy_tools.leica import list_image_names

# LIF files can contain multiple images — list them first
lif_path = Path("path/to/image.lif")
print(list_image_names(lif_path))  # e.g. ['Series001', 'Series002']

# Load a specific image by name
image = MicroscopyImage.from_lif_path(lif_path, image_name="Series001")

Load a Nikon ND2 file from Hina:

# Load an example ND2 file from the test suite
example_nd2_path = Path("src/arcadia_microscopy_tools/tests/data/example-multichannel.nd2")
image = MicroscopyImage.from_nd2_path(example_nd2_path)

MicroscopyImage objects work the same way across both instrument formats:

# Access basic properties
image.shape          # Array shape: (4, 256, 256)
image.sizes          # Dimension mapping: {'C': 4, 'Y': 256, 'X': 256}
image.channels       # List of Channel objects: [BrightfieldChannel(), FluorescenceChannel(...), ...]
image.num_channels   # Number of channels: 4
image.dimensions     # Axes present: <DimensionFlags.MULTICHANNEL: 1>
image.metadata       # Combined instrument and optional sample metadata
image.intensities    # Raw pixel data as a NumPy array

Working with channels

Extract intensity data for specific channels:

from arcadia_microscopy_tools.channels import DAPI

# Get intensity data for a specific channel
dapi_intensities = image.get_channel_intensities(DAPI)

# The returned array preserves temporal/spatial dimensions
dapi_intensities.shape  # (256, 256)

For more examples, see the docs/examples directory.

Contributing

See how we recognize feedback and contributions to our code.

Metadata

Release files for arcadia-microscopy-tools 0.5.0

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

Source distribution (sdist)

Source distribution for arcadia-microscopy-tools 0.5.0
File Size Uploaded
arcadia_microscopy_tools-0.5.0.tar.gz 3.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for arcadia-microscopy-tools 0.5.0
File Interpreter ABI Platform
arcadia_microscopy_tools-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 5.0 MB

Release files / arcadia_microscopy_tools-0.5.0.tar.gz

Download URL arcadia_microscopy_tools-0.5.0.tar.gz
Size 3.2 MB
Tags Source
SHA-256 checksum
How to use checksums
c7f1f59ccd72fd01bba93acd5cff6b35591ad58ccada23104c6b5e9e8fe5f7b7
BLAKE2b-256 checksum
How to use checksums
25daacc880ccafb63878f2fa23f06eb38d1a93209175a8ce1f3f7bd62a79f465
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / arcadia_microscopy_tools-0.5.0-py3-none-any.whl

Download URL arcadia_microscopy_tools-0.5.0-py3-none-any.whl
Size 1.9 MB
Tags Python 3
SHA-256 checksum
How to use checksums
18b333e70179871eeaebea1edcc5972eb129d99caea23cc98b839c153f7c195e
BLAKE2b-256 checksum
How to use checksums
49541d2579bd2b5aeaf7e771586ff73324a16befa6c068d59955188dd6067116
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

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