ImarisHDF

Overview

HDF is a general binary hierarchical format.  Similar is many ways to XML, but not a directly human-readable.format.

Imaris ims files are implemented in HDF (version ??) .

Tools which are provided with the open-source HDF5 SDK can be used to analyse ImarisHDF files, and this way it is possible to determine the specific HDF structure used to .

We are interested in Imaris Filaments elements, which include tree datapoint position, diameter and connectivity data, as well as spine data.


Format specification:

ImarisHDF files can contain a large amount of different data.  The existence of relevant data can de determined from the NumberOfFilaments attribute.

No official documentation has been found for the Imaris implementation, however the h5dump program allows us to see quite clearly the following layout for Filament data..


    GROUP(Scene):GROUP(Content)
                    ATTRIB:NumberOfFilaments
                    GROUP(Filaments0):GROUP(GraphTracks)
                                            ATTRIB(Units)
                                            DATASET(GraphVertex) // ?
                                     :GROUP(Graphs)
                                            ATTRIB(Units)
                                            DATASET(Segments)    // <--- connectivity
                                            DATASET(Vertices)    // <--- vertex position/diameter + other info?

                    GROUP(Filaments1):GROUP(GraphTracks)
                                            ATTRIB(Units)
                                            DATASET(GraphVertex) // ?
                                     :GROUP(Graphs)
                                            ATTRIB(Units)
                                            DATASET(Segments)    // <--- connectivity
                                            DATASET(Vertices)    // <--- vertex position/diameter + other info?

etc...



References

<todo>

Links

HDF5  -  http://www.hdfgroup.org/
Imaris - http://www.imaris.com/

Examples

<todo>