Skip to main content

bioio-czi

Build Status PyPI version License: GPL v3 Python 3.10–3.13

A BioIO reader plugin for reading CZIs using pylibczirw (default) or aicspylibczi.


Documentation

See the bioio documentation on our GitHub pages site - the general use and installation instructions there will work for this package.

Information about the base reader this package relies on can be found in the bioio-base repository here.

This plugin attempts to follow the latest specification for the CZI file format from Carl Zeiss Microscopy (currently v1.2).

Installation

Install bioio-czi alongside bioio:

pip install bioio bioio-czi

Stable Release: pip install bioio-czi
Development Head: pip install git+https://github.com/bioio-devs/bioio-czi.git

pylibczirw vs. aicspylibczi

bioio-czi can operate in pylibczirw mode (the default) or aicspylibczi mode.

Feature pylibczirw mode aicspylibczi mode
Read CZIs from the internet
Read single tile from tiled CZI
Read single tile's metadata from tiled CZI
Read elapsed time metadata*
Handle CZIs with different dimensions per scene**
Read stitched mosaic of a tiled CZI

The primary difference is that pylibczirw supports reading CZIs over the internet but cannot access individual tiles from a tiled CZI. To use aicspylibczi, add the use_aicspylibczi=True parameter when creating a reader. For example: from bioio import BioImage; img = BioImage(..., use_aicspylibczi=True).

*Elapsed time metadata include the following. These are derived from individual subblock metadata.

  • BioImage(...).time_interval
  • BioImage(...).standard_metadata.timelapse_interval
  • BioImage(...).standard_metadata.total_time_duration

**The underlying pylibczirw reader only exposes per-scene X and Y dimensions. Files that do not have consistent dimensions per scene may be read incorrectly in pylibczirw mode.

Example Usage (see full documentation for more examples)

Basic usage

from bioio import BioImage

path = (
    "https://allencell.s3.amazonaws.com/aics/hipsc_12x_overview_image_dataset/"
    "stitchedwelloverviewimagepath/05080558_3500003720_10X_20191220_D3.czi"
)

img = BioImage(path)
print(img.shape)  # (1, 1, 1, 5684, 5925)

Note: accessing files from the internet is not available in aicspylibczi mode.

Individual tiles with aicspylibczi

img = BioImage(
    "S=2_4x2_T=2=Z=3_CH=2.czi",
    reconstruct_mosaic=False,
    include_subblock_metadata=True,
    use_aicspylibczi=True
)
print(img.dims)  # <Dimensions [M: 8, T: 2, C: 2, Z: 3, Y: 256, X: 256]>
subblocks = img.metadata.findall("./Subblocks/Subblock")
print(len(subblocks))  # 192
print(img.get_image_data("TCZYX", M=3).shape)  # (2, 2, 3, 256, 256)

The M dimension is used to select a specific tile.

Stitched mosaic with pylibczirw

img = BioImage("S=2_4x2_T=2=Z=3_CH=2.czi")
print(img.dims)  # <Dimensions [T: 2, C: 2, Z: 3, Y: 487, X: 947]>

All 8 tiles are stitched together. Where tiles overlap, the pixel value is the pixel value from the tile with the highest M-index.

Explicit Reader

This example shows a simple use case for just accessing the pixel data of the image by explicitly passing this Reader into the BioImage. Passing the Reader into the BioImage instance is optional as bioio will automatically detect installed plug-ins and auto-select the most recently installed plug-in that supports the file passed in.

from bioio import BioImage
import bioio_czi

img = BioImage("my_file.czi", reader=bioio_czi.Reader)
img.data

Issues

Click here to view all open issues in bioio-devs organization at once or check this repository's issue tab.

Development

See CONTRIBUTING.md for information related to developing the code.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bioio_czi-2.9.1.tar.gz (2.2 MB view details)

Uploaded Source

Built Distribution

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

bioio_czi-2.9.1-py3-none-any.whl (2.2 MB view details)

Uploaded Python 3

File details

Details for the file bioio_czi-2.9.1.tar.gz.

File metadata

  • Download URL: bioio_czi-2.9.1.tar.gz
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for bioio_czi-2.9.1.tar.gz
Algorithm Hash digest
SHA256 ac175e30d0caa489763b94ea8c66fb3a3e924dc54eeeb0a27b31fd8b06325a1f
MD5 e6b4b107347d3be82fa3796ae227a197
BLAKE2b-256 ca2ed251668f3414f54b6524e7c5f89ddfb2b6771502b3933cf156504c3fadc6

See more details on using hashes here.

Provenance

The following attestation bundles were made for bioio_czi-2.9.1.tar.gz:

Publisher: ci.yml on bioio-devs/bioio-czi

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_czi-2.9.1-py3-none-any.whl.

File metadata

  • Download URL: bioio_czi-2.9.1-py3-none-any.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for bioio_czi-2.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f1cd49dc4762dda2d8532f31d341a895d874f214e90f4edb3fa8c020767ef314
MD5 e352da59b27c6229fc8fcad881493614
BLAKE2b-256 b4c80d229adc41a3da10eda9c51f3aabe63c43aa83353b085e6afc79e3659c5f

See more details on using hashes here.

Provenance

The following attestation bundles were made for bioio_czi-2.9.1-py3-none-any.whl:

Publisher: ci.yml on bioio-devs/bioio-czi

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

Release history Release notifications | RSS feed

This release

2.9.1 This release

2 files

2.9.0

2 files

2.8.0

2 files

2.7.2

2 files

2.7.1

2 files

2.7.0

2 files

2.6.1

2 files

2.6.0

2 files

2.5.0

2 files

2.4.2

2 files

2.4.1

2 files

2.4.0

2 files

2.3.0

2 files

2.2.0

2 files

2.1.0

2 files

2.0.0

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

0.9.0

2 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