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.2.0.tar.gz (60.9 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.2.0-py3-none-any.whl (58.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for bioio-3.2.0.tar.gz
Algorithm Hash digest
SHA256 731211b43b3c5438cbf597f915a98dcd1be29814b0a67e5a1e89ab38fe746538
MD5 207357afffb190dc9475575a9c9dfd57
BLAKE2b-256 21290534e35d8bcbe24b7626625352acb2d606fb3f290c2e39fa0e1085f08b67

See more details on using hashes here.

Provenance

The following attestation bundles were made for bioio-3.2.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.2.0-py3-none-any.whl.

File metadata

  • Download URL: bioio-3.2.0-py3-none-any.whl
  • Upload date:
  • Size: 58.7 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b25b424de47b877de184c14b0d0836f2a9c678b0c36a338eb6e526f0f74fa359
MD5 1fd3d6836af7a8ce002316ab5edd55aa
BLAKE2b-256 ae5f96a446d850b19d1bdb5bbb0d49eec2efa6b396cd5efb6d1e5d84cf03cad9

See more details on using hashes here.

Provenance

The following attestation bundles were made for bioio-3.2.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