As you have already tried for basic segmentation approaches, according to my initial observation all bubbles are also quite challenging. Yes, it seems quite daunting, but sometimes when you try multiple methods in a row, sometimes some methods fit well to get acceptable results. Now your main questions:
- What is the best method for detecting the bubbles?
Ans: It can’t easy to directly say this works for bubble detection, until works on similar test data. The acceptable approach based on types test images. One method may fit for one approach, but it not necessarily to be fit for other water bubble test databases. The complexity of segmentation depends on possibility of separation of ROI from its backgrounds, sometimes naked eye can give the sufficient hints of level of complexity associated.
- Assuming that we are able to find some reasonable bubbles in a frame, how can we use it to improve the detection in other frames?
Ans: As one method works as satisfactory label (or Best fit among), it may work for others frames, as it has been seen that all frame having similar backgrounds, again note “Best fit among”
Suggestion (Unsupervised): As you have tried the edge and thresholding, more than that there are so many popular seg approaches, like Otsu, watershed (I feel it may work some extent), region growing approach, watershed shed gradient based (Please refer Gonzalez Digital Image Processing Book) and more. Another way, you can try all these approaches after doing some sort of pre-processing, like contrast enhancement or other basic Gray level transformation, so that it helps to get more accurate results. Believe me, sometime I personally experienced some amazing results after doing some sort of good pre-processing steps before segmentation.
Kalyan Acharjya 😊