I am developping a plugin to perform 3D texture analysis using GLCM. The concept is to look at pixel values in the neighborhood of the central pixel and count the cooccurence of pairs of values. I did a first version using imglib2 in groovy, and it works pretty smoothly. But my users didn’t have the same performances and I am convinced that it can be even better using CLIJ for such low-level operations !
As discussed with Robert @haesleinhuepf, I investigated the two functions he kindly suggested me,
generateTouchMatrix and generateTouchCountMatrix as ways to perform the GLCM creation.
Unfortunately, the first one create a table with boolean answer (1 if the pair exist on the image, 0 if not) and the second looks promising, but works only on the diamond neigborhood, not a cubic one, and is not designed to deal with cases where the pair of pixels share the same pixel values…
So, here I am, asking for new ideas !
My plan-B would be to look at OpenCL language and use custom code, but I dont know how hard it could be (if you have some good OpenCL Tutorial to share…).
My plan-C would be to wait for a CLIJ function closer to what I would like to do and advise my user to not perform image analysis on a toaster !
Thank you for your help