A friend of mine is working at an institute for nano-membranes. Currently they are using ImageJ and do a lot of manual (in my opinion inaccurate) work to process some membrane "photos" (images generated by a measurement process, I have remove the label at the bottom, which contains lens type, scale etc.). The results are mediocre and the director wants to change the software. However from what I discovered it's the lack of any knowledge in image processing that's the issue and no software can fix that.
One of the main goals is to find a way to calculate the pore size (yes, the pores are not circular at all so it's a different type of diameter :D). In order to do that they are converting the image to 8-bit mono and based on a manually set threshold attempt to generate a binary one. From there they do I don't know what but the final result is rather poor.
I checked one of the photos (image below). From years back when I was doing some image processing I know that adjusting contrast, smoothing, equalizing the histo etc. are vital pre-processing steps to ensure optimal results. Apparently no one at the institute knows that.
While looking at the photo and experimenting with it I noticed that there is an illumination problem on the horizontal axis. This is visible even before generating a binary image:
From left to right the image is getting darker. This (among other issues) would explain the weird results they are getting when the binary image shows up. From what I see the right most membrane wall (not the pores) is probably as dark as part of the pores on the left most side.
I gave a task to my friend to ask around what's up with the illumination in that microscope they are using but meanwhile I would like to explore a way to artificially compensate for this issue.
I did some digging and apparently converting to YUV and equalizing the luma (Y) should work. I would like to also explore other methods so that I can compare the final results. Any help would be appreciated.