I've come across a particularly difficult segmentation task. It's optical coherence tomography data, that has a lot of noise and, compared to the particle size (radius= ~3-6px), low resolution. This, combined with a many overlapping particles, has made it impossible for me to segment out the particles with decent accuracy. I've played around with thresholding, watershedding, morphological operators and h-dome transformation but couldn't come up with results that I've found satisfying.
The region of interest is already cropped out (inside of blue boundary): This is what 10 frames of the recording look like:
Maybe the darker surrounding, which is free of particles, could be used as a seed for some denoising algorithm?
Manual segmentation of some samples to use as training data for a machine learning approach does not seem feasible, as it is hard to tell what's an actual particle and what is noise. That being sad, a segmentation result that looks pretty believable would be okay for now. (However, I need to do particle tracking based on such data later...)
The best I could do yet was using h-dome transform with a bit of morphological operations (it's an enlarged crop of another sample):
What would be a reasonable approach to take the long shapes and divide them into several ones? They seem to be slightly overlapping particles in reality.
Any ideas on where to go from here? Some method I don't know of?
Thanks so much!