Skip to main content

Read Olympus/Evident OIR and POIR files

Project description

Oirfile is a Python library to read images and metadata from OIR (Olympus Image Format Raw) files and POIR archives (ZIP collections of OIR files) produced by Olympus/Evident FluoView fluorescence microscopy software.

Author:

Christoph Gohlke

License:

BSD-3-Clause

Version:

2026.3.28

DOI:

10.5281/zenodo.18916509

Quickstart

Install the oirfile package and all dependencies from the Python Package Index:

python -m pip install -U oirfile[all]

See Examples for using the programming interface.

Source code and support are available on GitHub.

Requirements

This revision was tested with the following requirements and dependencies (other versions may work):

Revisions

2026.3.28

  • Fix reading long line scan where Y exceeds per-frame height.

2026.3.8

  • Initial alpha release.

Notes

This library is in its early stages of development. Large, backwards-incompatible changes may occur between revisions.

Olympus/Evident is a manufacturer of microscopes and scientific instruments. Olympus Image Format Raw (OIR) files are proprietary formats written by Evident FluoView acquisition software to store microscopy images and metadata.

No public specification for the OIR file format exists. The format has been reverse-engineered from sample files.

OIR files begin with the magic bytes OLYMPUSRAWFORMAT followed by a header pointing to a block index at the end of the file. The block index lists offsets to typed blocks: UID blocks paired with PIXEL blocks (raw image planes), BMP blocks (bitmap thumbnails), FRAMEPROPERTIES blocks (per-frame XML with dimensions and axis positions), and METADATA blocks (XML documents for file info, LSM image settings, channels, axes, pixel size, acquisition parameters, annotations, overlays, and LUTs). Image data is organized as up to six dimensions: T (timelapse), L (lambda/spectral), Z (z-stack), C/S (channel or RGB sample), Y, and X. Each plane is stored as one or more PIXEL blocks identified by a structured UID encoding the plane’s dimensional indices and channel GUID. POIR files are ZIP archives containing one or more OIR files.

This library is not feature-complete. Unsupported features currently include reading BMP block data and writing OIR files.

The library has been tested with only a limited number of files.

Other implementations for reading OIR files are Image5D (C++) and bio-formats (Java).

Examples

Read an image and metadata from an OIR file:

>>> with OirFile('tests/data/Test.oir') as oir:
...     xml_metadata = oir.xml_metadata
...     oir.asxarray()
...
<xarray.DataArray 'Test.oir' (Z: 10, C: 4, Y: 640, X: 640)> Size: 33MB
array([[[[...]]]],
      shape=(10, 4, 640, 640), dtype=uint16)
Coordinates:
  * Z        (Z) float64 80B 6.115e+03 6.15e+03... 6.43e+03
  * C        (C) <U3 48B 'CH1' 'CH2' 'CH3' 'CH4'
  * Y        (Y) float64 5kB 0.0 0.003884... 2.482
  * X        (X) float64 5kB 0.0 0.003884... 2.482
Attributes...
    bitspersample:        12
    colortype:            GlayScale
    channel_wavelengths:  {'CH1': (None, None), 'CH2': (500.0, 600.0),...
    datetime:             2020-12-23T14:44:50.939+13:00

View the image and metadata in an OIR file from the console:

$ python -m oirfile tests/data/Test.oir

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

oirfile-2026.3.28.tar.gz (26.4 kB view details)

Uploaded Source

Built Distribution

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

oirfile-2026.3.28-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file oirfile-2026.3.28.tar.gz.

File metadata

  • Download URL: oirfile-2026.3.28.tar.gz
  • Upload date:
  • Size: 26.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for oirfile-2026.3.28.tar.gz
Algorithm Hash digest
SHA256 f4c9ed4c730e923d906c2203733827848a4300f76bb8c078e46e2842398c7cee
MD5 443b615ff43cc9d12cdf50659f57c821
BLAKE2b-256 2b36fef8d5b54518c644e9a294c8385db30b6e7b9e35127e121c8a5b30e5a60a

See more details on using hashes here.

File details

Details for the file oirfile-2026.3.28-py3-none-any.whl.

File metadata

  • Download URL: oirfile-2026.3.28-py3-none-any.whl
  • Upload date:
  • Size: 20.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for oirfile-2026.3.28-py3-none-any.whl
Algorithm Hash digest
SHA256 1bb62d6db2726588d52258ed07edc3bee8ab999912106f7e76e27dcf6e912ed5
MD5 4121b3dd51dd20ef160cdeab5e0bc1e8
BLAKE2b-256 a0fab911a91e6f3ac0ee38c298faeb98a342623f9ecb1068c8fe5f096519875b

See more details on using hashes here.

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