I recently published nd2reader, a Python library that reads .nd2 image files produced by NIS Elements. Most of the credit goes to the authors of SLOTH who figured out how nd2s are actually structured.
nd2reader improves on things in a few ways. It can associate metadata with individual images, so you can know the channel, timestamp, field of view and z-level of any particular image, which I believe is novel among all the nd2 reading libraries. It also provides a simple, easy-to-use interface and (most importantly to me) does not require Java alongside Python, as Bio-Formats does.
Since it's now in PyPI, you can install it with:
pip install nd2reader
Update: I handed over control of this project and no longer maintain it.