On Monday, September 26, 2016 at 9:59:15 AM UTC-4, David Smith wrote: > > I also don't need it to read image formats. Part of the reason behind > RawArray is to avoid standard image formats because they are not optimized > for large complex-float arrays. I just want to save multi-GB data arrays to > disk quickly and read them back quickly on a different machine, five years > later. >
Aside from a small ASCII header, it looks (from the specs) like NRRD can save a multidimensional complex floating-point array as just the raw data, i.e. a single "write" call. So I'm not sure what you mean by "not optimized". As for being able to read something 5 years later, using a pre-existing format with some kind of userbase seems to improve the odds of that. On Monday, September 26, 2016 at 10:03:20 AM UTC-4, David Smith wrote: > > Sorry I forgot to add: > > JuliaIO/Images.jl relies on having ImageMagick installed, whereas > RawArray.jl is a pure Julia solution without any dependencies. > The NRRD spec is not that complicated at first glance; it looks like it wouldn't be too hard to write a pure-Julia implementation of it. If you only want to support the subset of NRRD's functionality provided by RawArray, the implementation effort wouldn't be much harder than RawArray.