I used Weka trainable 3D segmentation to classify whole body computed tomography images.
I made a classifier to segment 5 different tissue in the images and then give this classifier to other user who will just have to apply it to get the final result.
However for a dataset of images I got this error multiple time :
java.lang.NegativeArraySizeException ij.process.StackProcessor.createKernelEllipsoid(StackProcessor.java:224) ij.process.StackProcessor.filter3D(StackProcessor.java:277) ij.plugin.Filters3D$1.run(Filters3D.java:109) at ij.process.StackProcessor.createKernelEllipsoid(StackProcessor.java:224) at ij.process.StackProcessor.filter3D(StackProcessor.java:277) at ij.plugin.Filters3D$1.run(Filters3D.java:109)
And at the end I got a stack result with no segmentation at all (all voxel value = 79255130).
I do not see what is different with this image compared to working images. CT are 16 bit image with value from -1024 to +1024.
To reproduce the problem here a link to the files (classifier and Dicom CT) : https://we.tl/3A9QZxXryf
(The CT stack is huge, I split it to small stacks of 10 images before calculation to not run out memory)
Maybe it is a bug in Weka plugin?
Thanks for your help and thanks to Weka team for their amazing job.