Hi,
I tried to do a Max Z-projection using CLIJ2 in Fiji on a Virtual stack. It did not work and I got this error message
(Fiji Is Just) ImageJ 2.1.0/1.53g60; Java 1.8.0_172 [64-bit]; Windows 7 6.1; 13630MB of 73588MB (18%)
java.lang.NegativeArraySizeException
at net.haesleinhuepf.clij.converters.implementations.RandomAccessibleIntervalToClearCLBufferConverter.copyRandomAccessibleIntervalToClearCLBuffer(RandomAccessibleIntervalToClearCLBufferConverter.java:72)
at net.haesleinhuepf.clij.converters.implementations.RandomAccessibleIntervalToClearCLBufferConverter.convert(RandomAccessibleIntervalToClearCLBufferConverter.java:42)
at net.haesleinhuepf.clij.converters.implementations.ImagePlusToClearCLBufferConverter.convertLegacy(ImagePlusToClearCLBufferConverter.java:204)
at net.haesleinhuepf.clij.converters.implementations.ImagePlusToClearCLBufferConverter.convert(ImagePlusToClearCLBufferConverter.java:146)
at net.haesleinhuepf.clij.converters.implementations.ImagePlusToClearCLBufferConverter.convert(ImagePlusToClearCLBufferConverter.java:24)
at net.haesleinhuepf.clij.CLIJ.convert(CLIJ.java:475)
at net.haesleinhuepf.clij.CLIJ.push(CLIJ.java:406)
at net.haesleinhuepf.clij.macro.CLIJHandler.pushToGPU(CLIJHandler.java:267)
at net.haesleinhuepf.clij.macro.AbstractCLIJPlugin.run(AbstractCLIJPlugin.java:415)
at ij.plugin.filter.PlugInFilterRunner.processOneImage(PlugInFilterRunner.java:265)
at ij.plugin.filter.PlugInFilterRunner.<init>(PlugInFilterRunner.java:114)
at ij.IJ.runUserPlugIn(IJ.java:243)
at ij.IJ.runPlugIn(IJ.java:204)
at ij.Executer.runCommand(Executer.java:151)
at ij.Executer.run(Executer.java:66)
at java.lang.Thread.run(Thread.java:748)
At first I suspected it was a size issue (the image is around 6.4 GB) so I tried to run the Z-projection on the full image. It worked without a hitch.
So, my question is: Why does the Z-projection does not work in Virtual stacks? Is it because the full image needs to be loaded into FIJI in order to send it to the GPU?
Also, when I ran the Z-projection on the image (single channel, z-stack, time series) it loses the time dimension
I also tried the bounded Maximum Z-projection, and got the same result. Is the only work around to split all the time frames, run the CLIJ Maximum Z-projection and then concatenate them back?
Thank you for the attention.
Kind regards,
José Marques
Edit: GPU - GeForce GTX 970