I am working on a project where there is a high chance of overlapping particles in the images as partciles are coming down from the conveyor belt in the mining industry. I am also working on the hardware system to minimize the overlapping but none the less the images might have a certain level of overlapping. I am sharing my raw and processed image using imageJ Fiji. Please suggest me a good direction in this regards.Sample image after Processing in ImageJ And Raw Picture. My Goal is to find the size and shape of each particle. This is only possible if i successfully remove the overlapping between the particles. Thanks.
-
1Try to elaborate some more on your problem, it will make a better question! For instacnce what are the expected result you want to achieve and what do you get – Simson Sep 14 '19 at 11:37
-
@Simson thanks for the response. I have modified my scenario and let me know if you get the problem statement or it is still ambiguous for you thanks. – Salman Sep 14 '19 at 12:04
2 Answers
The particle splitting you are looking for is watershed analysis. Given that you seem to want detailed quantification in 2D, you might consider looking into the BioVoxxel plugin, which you can add to your installation of FIJI through the "Update..." command, then adding the update site.
The plugin's ImageJ site is here: https://imagej.net/BioVoxxel_Toolbox
It contains an extended particle analyzer (for 2D images), as well as a good watershed function, that should work for the shapes that you are trying to split. It may not split them perfectly, but if the overlap isn't too high, it should be sufficient for your purposes.

- 157
- 1
- 1
- 10
-
thank you so much. I have looked into it and I think it might be a good point to start from thanks. – Salman Sep 18 '19 at 09:20
-
The solution you provided worked for me. BioVoxxel is really something with provide amazing solution to the problems. – Salman Sep 25 '19 at 09:48
A longer term and more involved approach that you could take would involve using the above BioVoxxel plugin, or even just what you've already been doing, to create a training set for a neural network that will do this for you automatically in real time. Like I said, much more involved, and not exactly an answer to the question, but, perhaps, a more efficient/accurate solution over time. If this is something you are interested in, I might be able to point you in the right direction.

- 92
- 8
-
First of all thanks for the answer. I really appreciate it. You mean to say I need to develop a training set for a neural network and try to keep the shapes. I am familiar with the machine learning techniques but I might need a good understanding of this particular problem. How we can exactly maintain the training dataset while doing so with imageJ or matlab. I have been thinking to do with machine learning as it can improve results with time. But surely if you can help me I would appreciate that. Thanks. – Salman Sep 18 '19 at 09:15
-
Hey Salman, I'm very much a beginner in this space, but, from my limited understanding, it seems that, if the above method works for you to generate appropriate results, you will produce a training set over time, so long as you keep the original, and you can tell easily which original corresponds to which processed image. It doesn't help solve your problem in the short term, but it might make things easier in the long run. As for the ML tools, I've been hearing good things about openCV, TensorFlow, and PyTorch (the last of which seems to be shooting up in popularity very quickly) – ekiely Sep 18 '19 at 17:11
-
If you're comfortable with Python, check this link out: https://scikit-image.org/docs/stable/auto_examples/segmentation/plot_watershed.html#sphx-glr-auto-examples-segmentation-plot-watershed-py – ekiely Sep 19 '19 at 16:23
-
-
BioVoxxel worked for me. Thank you so much for the support you have provided really appreciate that. – Salman Sep 25 '19 at 09:49