Skip to main content

Image reading, metadata management, and image writing for Microscopy images in Python

Project description

BioIO

Build Status Documentation PyPI version License Python 3.10–3.13

Image Reading, Metadata Conversion, and Image Writing for Microscopy Images in Pure Python


Documentation

See the full documentation on our GitHub pages site

Example Usage (see full documentation for more examples)

Install bioio alongside OME TIFF and OME ZARR plug-ins with pip (this example won't use the OME ZARR plug-in):

pip install bioio bioio-ome-tiff bioio-ome-zarr

from bioio import BioImage

# Get a BioImage object
img = BioImage("my_file.tiff")  # selects the first scene found
img.data  # returns 5D TCZYX numpy array
img.xarray_data  # returns 5D TCZYX xarray data array backed by numpy
img.dims  # returns a Dimensions object
img.dims.order  # returns string "TCZYX"
img.dims.X  # returns size of X dimension
img.shape  # returns tuple of dimension sizes in TCZYX order
img.get_image_data("CZYX", T=0)  # returns 4D CZYX numpy array

# Get the id of the current operating scene
img.current_scene

# Get a list valid scene ids
img.scenes

# Change scene using name
img.set_scene("Image:1")
# Or by scene index
img.set_scene(1)

# Use the same operations on a different scene
# ...

Plug-in Registry

Bioio handles a variety of different image types through specific plug-ins. The bioio-dev supported plug-ins can be found within this registry.

Plug-in Extension Repository
arraylike ArrayLike Built-In
bioio-czi .czi Repo
bioio-dv .dv, .r3d Repo
bioio-imageio .jpg, .png, Full List Repo
bioio-lif .lif Repo
bioio-nd2 .nd2 Repo
bioio-ome-tiff .ome.tiff, .tiff Repo
bioio-ome-tiled-tiff .tiles.ome.tif Repo
bioio-ome-zarr .zarr Repo
bioio-sldy .sldy, .dir Repo
bioio-tifffile .tif , .tiff Repo
bioio-tiff-glob .tiff (glob) Repo
bioio-bioformats Full List Repo

Each reader plugin should closely follow the specification laid out in bioio-base. As such, it is likely common that reader plugins won't distribute their own documentation and users should instead review bioio_base.reader.Reader for API documentation for the underlying Reader API. We encourage plugin authors to publish their own documentation if they change or include new features into their published image readers.

Writer Registry

BioIO supports a set of writer backends for exporting image data. The writer registry below lists maintained writer plug-ins.

Writer Extension Documentation
OmeTiffWriter .ome.tiff Repo
OMEZarrWriter .ome.zarr (OME-NGFF 0.4.0 and 0.5.0) Repo
TimeSeriesWriter .gif, .mp4, .mkv Repo
TwoDWriter .png, .bmp, .jpg, .mov, .avi, .mpg, .mpeg, .mp4, .mkv, .wmv, .ogg Repo

Writer Installation and Usage

Writers will be installed with the respective plugin. Once installed they can be imported via bioio.writers. ex. bioio.writers<Writer Name>

import numpy as np
from bioio.writers import OmeTiffWriter # with bioio-ome-tiff installed

image = np.random.rand(10, 3, 1024, 2048)
OmeTiffWriter.save(image, "file.ome.tiff", dim_order="ZCYX")

Issues

Click here to view all open issues in bioio-devs organization at once

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

bioio-3.3.0.tar.gz (60.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bioio-3.3.0-py3-none-any.whl (58.8 kB view details)

Uploaded Python 3

File details

Details for the file bioio-3.3.0.tar.gz.

File metadata

  • Download URL: bioio-3.3.0.tar.gz
  • Upload date:
  • Size: 60.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for bioio-3.3.0.tar.gz
Algorithm Hash digest
SHA256 45dd466dab857216b6b66076734f7281acbadbfd9e18e45bcdadb8841e93e8ca
MD5 6b6d197898f45dfac420e537d0be305b
BLAKE2b-256 990f2e6ef1db997626168f618835c87cca34da5c7de6a7a10d19c3f43f342c39

See more details on using hashes here.

Provenance

The following attestation bundles were made for bioio-3.3.0.tar.gz:

Publisher: ci.yml on bioio-devs/bioio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bioio-3.3.0-py3-none-any.whl.

File metadata

  • Download URL: bioio-3.3.0-py3-none-any.whl
  • Upload date:
  • Size: 58.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for bioio-3.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 da6c8f2cc081f63395986a1ef88e5778be9fb37ee4f444fcdad719e6fd6d1bc8
MD5 3b8afb06b11b34855ed3f8425841ecce
BLAKE2b-256 c4947609abde5ed45a91877e46111bfd0260de30d9a3a56e370f697cb783cd8e

See more details on using hashes here.

Provenance

The following attestation bundles were made for bioio-3.3.0-py3-none-any.whl:

Publisher: ci.yml on bioio-devs/bioio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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