You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Zolfa ffc4d05fb1 fix: use https instead of ssh for submodule 1 month ago
.github/workflows Delete code-climate.yml 2 months ago
docs@42dbfdf18e Version 3.3.0 2 months ago
sphinx prepare hard fork 2 months ago
src/zolfa/nd2reader fix: don't track 1 month ago
tests prepare hard fork 2 months ago
.gitignore fix: don't track 1 month ago
.gitmodules fix: use https instead of ssh for submodule 1 month ago Create 3 years ago Update contributing 5 years ago
CONTRIBUTORS.txt Rebranding in anticipation of better metadata support (mainly for FRAP experiments). 6 years ago
COPYING Minor changes for dev branched version release 1 year ago
LICENSE version 3.0.1: Include LICENSE via for conda forge 6 years ago Update dependencies 2 months ago Update 2 months ago
pyproject.toml prepare hard fork 2 months ago
release.txt Update release.txt 2 months ago
requirements.txt Update dependencies 2 months ago
setup.cfg prepare hard fork 2 months ago prepare hard fork 2 months ago


Anaconda-Server Badge Anaconda-Server Badge Build status


nd2reader is a pure-Python package that reads images produced by NIS Elements 4.0+. It has only been definitively tested on NIS Elements 4.30.02 Build 1053. Support for older versions is being actively worked on. The reader is written in the pims framework, enabling easy access to multidimensional files, lazy slicing, and nice display in IPython.


The documentation is available here.


The package is available on PyPi. Install it using:

pip install nd2reader

If you don't already have the packages numpy, pims, six and xmltodict, they will be installed automatically if you use the script. Python >= 3.5 are supported.

Installation via Conda Forge

Installing nd2reader from the conda-forge channel can be achieved by adding conda-forge to your channels with:

conda config --add channels conda-forge

Once the conda-forge channel has been enabled, nd2reader can be installed with:

conda install nd2reader

It is possible to list all of the versions of nd2reader available on your platform with:

conda search nd2reader --channel conda-forge


nd2reader follows the pims framework. To open a file and show the first frame:

from nd2reader import ND2Reader
import matplotlib.pyplot as plt

with ND2Reader('my_directory/example.nd2') as images:

After opening the file, all pims features are supported. Please refer to the pims documentation.

Backwards compatibility

Older versions of nd2reader do not use the pims framework. To provide backwards compatibility, a legacy Nd2 class is provided.


If you'd like to help with the development of nd2reader or just have an idea for improvement, please see the contributing page for more information.

Bug Reports and Features

If this fails to work exactly as expected, please open an issue. If you get an unhandled exception, please paste the entire stack trace into the issue as well.


PIMS modified version by Ruben Verweij.

Original version by Jim Rybarski. Support for the development of this package was partially provided by the Finkelstein Laboratory.