Skip to content

Euro-BioImaging/bioio-ome-tiff

 
 

Repository files navigation

bioio-ome-tiff

Build Status PyPI version License Python 3.11–3.13

A BioIO reader plugin for reading OME TIFF files using tifffile


Documentation

See the full documentation on our GitHub pages site - the generic 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

Installation

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

Example Usage (see full documentation for more examples)

Install bioio-ome-tiff alongside bioio:

pip install bioio bioio-ome-tiff

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_ome_tiff

img = BioImage("my_file.ome.tiff", reader=bioio_ome_tiff.Reader)
img.data

OmeTiffWriter

Import for the writer:

from bioio_ome_tiff.writers import OmeTiffWriter

The OmeTiffWriter lets you save image data to OME-TIFF files, supporting:

  • Single- or multi-scene datasets with explicit dimension order
  • Custom channel names, colors, and physical pixel sizes
  • Automatic generation and validation of OME-XML metadata
  • BigTIFF output for large (>2 GB) images

Example Usage

# Write a TCZYX dataset to OME-TIFF
image = numpy.ndarray([1, 10, 3, 1024, 2048])
OmeTiffWriter.save(image, "file.ome.tif")
# Write data with a specific dimension order
image = numpy.ndarray([10, 3, 1024, 2048])
OmeTiffWriter.save(image, "file.ome.tif", dim_order="ZCYX")
# Write multi-scene data, specifying channel names
image0 = numpy.ndarray([3, 10, 1024, 2048])
image1 = numpy.ndarray([3, 10, 512, 512])
OmeTiffWriter.save(
    [image0, image1],
    "file.ome.tif",
    dim_order="CZYX",  # will be applied to both scenes
    channel_names=[["C00", "C01", "C02"], ["C10", "C11", "C12"]],
)
# Write data with a custom compression scheme
image = numpy.ndarray([1, 10, 3, 1024, 2048])
OmeTiffWriter.save(
    image,
    "file.ome.tif",
    tifffile_kwargs={
        "compression": "zlib",
        "compressionargs": {"level": 8},
    },
)

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.

About

A BioIO reader plugin for reading Tiff files in the OME format.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 98.9%
  • Just 1.1%