Taking io/sbx.py as a blueprint (as well as io functions for other file format as points of comparison), I created io/isxd.py, and added the necessary data format code elsewhere in the package to enable successful direct reading of isxd files by suite2p.
Providing a sample 9000x512x512 (time x height x width; fs=30Hz) isxd movie as input provided the exact same outputs as when providing the same movie in its original tiff format. That being said, there were a few differences between io/.py modules for distinct file format (beyond the dependency/package needed for reading the movie file format, there were different dimensionalities of the imported movie matrix, and sometimes extra steps), so in the near future I will do a second pass in the code to bulletproof it and take into account possible edge cases (e.g., providing a list of isxd vs just one).
But in the meantime, our suite2p fork can now read isxd files!!
Taking io/sbx.py as a blueprint (as well as io functions for other file format as points of comparison), I created io/isxd.py, and added the necessary data format code elsewhere in the package to enable successful direct reading of isxd files by suite2p.
Providing a sample 9000x512x512 (time x height x width; fs=30Hz) isxd movie as input provided the exact same outputs as when providing the same movie in its original tiff format. That being said, there were a few differences between io/.py modules for distinct file format (beyond the dependency/package needed for reading the movie file format, there were different dimensionalities of the imported movie matrix, and sometimes extra steps), so in the near future I will do a second pass in the code to bulletproof it and take into account possible edge cases (e.g., providing a list of isxd vs just one).
But in the meantime, our suite2p fork can now read isxd files!!