Firstly, I’m quite new to coding so I apologise for any oversight on my part. I always try to find the answers myself, but I’m a bit stumped with this question.

I’ve been using MATLAB to create a function to ‘dilate’ a binary region in a matrix, but the process takes a little while to complete (about 5 minutes for a 5GB image (7500,7500,12 matrix dimensions)). Originally I designed the function to iteratively go through each pixel and ask ‘if img(y,x,z) ==1’ then apply function. The function being overlaying a predefined matrix containing a binary disk on the img coord. I sped this up with the ind2sub function, but the FIJI version is still much much faster.

I assume the FIJI function only applies a similar function to the outer pixels of a defined ‘region of interest’ found through some sort of connectivity function?

I’ve checked: ImageJ (Java2HTML), but can’t seem to find the code for the process ‘dilate’ or the filter ‘maximum…’ in FIJI, and was wondering if anyone could help me understand just why FIJI functions are so efficient? I’m not from a computer science background so I would appreciate a detailed and clear explanation or some references to sites which can provide the info.

Thanks in advance,

T.J.