cutout arbitrary chunks from a serials of 2D image sections in hdf5 format
- only support cutout, no writting
- used as normal Julia array
- support negative coordinate
Note that we only support UInt8 data type for now, should be easy to extend if neccesary.
Pkg.add("H5SectionsArrays")
using H5SectionsArrays
ba = H5SectionsArray("path/of/dataset/")
a = ba[101:300, -99:100, 1:3]
The section format follows the convention of ImageRegistration.jl
this file, called registry.txt should contain a few columns:
filename 0 offset-x offset-y size-x size-y true.
here is an example:
2,33_aligned    0   -293    -344    56834   25126   true
2,34_aligned    0   -1352   -1761   59385   28240   true
2,35_aligned    0   -1291   -1438   58320   27505   true
2,36_aligned    0   -1907   -1471   59306   27474   true
2,37_aligned    0   -1912   -2105   59320   28603   true
the hdf5 file should contain several datasets:
- img: the image array
- offset: a vector containing x,y offsets
- size: the size of the imgdataset
For details please take a look of the test script runtests.jl, which construct a fake dataset.