Hi Jim,

The gold-standard for microscopy formats is (imho) the BioFormats library:
http://www.openmicroscopy.org/site/support/bio-formats5/supported-formats.html

which includes support for .nd2.

The CellProfiler team recently released Python bindings for that library:
http://pythonhosted.org/python-bioformats/

I've been successfully using that to load up some 5D (3D + time + channels) Leica microscopy stacks. I recommend you try that, and focus contributions there.

The IO module in skimage is due for a major cleanup, and I don't think we are ready to support fully nD stacks yet. What I would like to do eventually is to make it easier to call BioFormats from skimage.io. But before that, we are aiming to *properly* support jpg, png, and tif stacks. See a recent discussion on this mailing list for details.

Thanks for the interest!

Juan.



On Mon, Jul 21, 2014 at 9:23 PM, <jim@rybarski.com> wrote:
I'm looking for something that can directly read .nd2 files (an undocumented Nikon format that seems to be similar to multipage TIFFs). I've found this: https://pythonhosted.org/SLOTH/_modules/sloth/read_nd2.html which sorta works, though I'd like to clean it up and get it working in scikit-image. But before I dive into that, I'd like to know:

1) Is there a better implementation somewhere, or does anyone have experience parsing .nd2 files?
2) Since the format can contain hierarchical and multidimensional image sets, would this require a new kind of abstraction for the io module? To give a concrete example, the microscope data I'm working with contains 16 fields of view from different xy-positions on the sample slide, and in each field of view there are three images for each time index (different fluorescence filters). So while it would make sense to use io.MultiImage for any given combination of field-of-view and filter, it wouldn't make sense to do so for the entire nd2 file. I'm thinking perhaps there could be some kind of intermediary object that allows you to drill down through the hierarchy and at the end it returns a MultiImage object, or something like that.

I'd appreciate any suggestions and I'd love to hear what everyone thinks. Thanks!

--
You received this message because you are subscribed to the Google Groups "scikit-image" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scikit-image+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.