Skip to content

Installation#

Work in Progress

This documentation is still incomplete and actively being updated. Some sections may be missing or subject to change.

Requirements#

Requirement Details
Python 3.12, 3.13
Operating System Windows, Linux, macOS

Install from PyPI#

Install the core package (metadata + pixel reading only — no OME-Zarr export or GUI):

pip install czitools

Feature extras#

czitools keeps the base install lean. Heavier features are opt-in extras:

Extra Install Adds
(core) pip install czitools Metadata + pixel reading (CziMetadata, read_6darray, read_field, read_well, HCS model)
omezarr pip install "czitools[omezarr]" OME-Zarr / OME-NGFF export + validation (czitools.export_tools)
omezarr-gui pip install "czitools[omezarr-gui]" Everything in omezarr plus the MagicGUI converter app and napari preview
all pip install "czitools[all]" All optional features (visualization, BioIO, NDV, export, GUI)
docs pip install "czitools[docs]" Documentation build toolchain (MkDocs)

Lazy imports — core stays lean

import czitools.export_tools never fails on a core-only install. The optional dependencies are only required when you actually call an export function; otherwise a clear error is raised:

ImportError: OME-Zarr export requires optional dependencies.
Install them with: pip install "czitools[omezarr]" (or "czitools[omezarr-gui]" for the GUI).

After installing omezarr-gui, launch the converter GUI via the console script:

czitools-omezarr-gui

The same installation also provides the HCS metadata inspector:

czi_hcs_check plate.czi

Install with all optional dependencies (visualization, OME-Zarr, GUI, NDV, etc.):

pip install "czitools[all]"

Local / Editable Install#

Useful for development or when working directly from a cloned repository.

Core only:

pip install -e .

With a single feature extra (for example OME-Zarr export):

pip install -e ".[omezarr]"

Full functionality:

pip install -e ".[all]"

Dependencies#

Core dependencies#

These are installed automatically with pip install czitools:

Package Purpose
pylibCZIrw>=5 Reading and writing CZI files
czifile Subblock-level CZI access
numpy Array operations
dask Chunked and lazy arrays
xarray Labelled multi-dimensional arrays
pandas Planetable data manipulation
python-box[all] Attribute-style metadata access
pydantic Data validation
loguru / colorlog Logging
progressbar2 Progress reporting
python-dateutil Date parsing

Optional dependencies ([all])#

Package Purpose
seaborn / plotly / matplotlib Plotting and visualization
PySide6 / qtpy / pyqtgraph Qt binding and visualization
colormap Colormap utilities
ngff-zarr / ome-zarr / zarr OME-Zarr export support
bioio / bioio-czi / bioio-ome-zarr BioIO readers
ndv[pyqt,vispy] NDV viewer integration
napari / napari-ome-zarr Interactive image visualization
scikit-image Image processing

OME-Zarr export dependencies ([omezarr])#

Required by czitools.export_tools for CZI → OME-Zarr conversion and validation:

Package Purpose
ngff-zarr>=0.47.0 Primary zarrista backend with incremental writes
ome-zarr>=0.19.2 Secondary write backend (Zarr v3)
zarr>=3.0 Direct dependency used by the ome-zarr backend
ome-zarr-models>=1.8,<2 OME-NGFF schema validation
psutil>=5.9 Available-memory metrics for Auto Dask concurrency

ngff-zarr uses zarrista for its read and write paths. TensorStore is no longer an ngff-zarr extra or a configurable export backend. czitools writes to local paths (or .ozx archives) and passes paths directly to ngff-zarr; the separate ome-zarr-py backend remains available and uses the direct zarr dependency above.

GUI dependencies ([omezarr-gui])#

Adds the MagicGUI converter application on top of [omezarr]:

Package Purpose
PySide6 Default Qt 6 binding for pip installs
magicgui / qtpy GUI widgets and Qt abstraction
napari Optional in-app preview of the result
napari-ome-zarr napari reader plugin for OME-Zarr

Conda / Pixi Environment#

A ready-to-use conda environment file is provided:

conda env create -f env_czitools.yml
conda activate czitools

Verify Installation#

import czitools
print(czitools.__version__)