# Detecting and segmenting bubbles in a video

7 views (last 30 days)
shayan Davani on 5 Jul 2020
Edited: KALYAN ACHARJYA on 5 Jul 2020
Hello all,
I'm trying to perform the video processing over a high-speed recorded video of bubbles moving up from a hot surface. I would like to extract some useful characteristics such as number of bubbles, their average diameter, and trickier ones such as their frequency, the location they are born (called nucleatio site). I have seen some people asking a similar question, and know that it is a a common segmentation problem. I have two main questions and appreciate your ideas and help in advance.
1) What is the best method for detecting the bubbles?
2) 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?
The motivation of Q 2 is that some bubbles appear in many frames but my detection algorithm misses them in some other frames (the background of a bubble changes as it rises). Same thing happens for the diameter.
Here is a sample of a frame:
And this is what I detected using some preprocessing, edging (Prewitt), and thresholding to intensify the edges and applying the imfindcircle.

KALYAN ACHARJYA on 5 Jul 2020
Edited: KALYAN ACHARJYA on 5 Jul 2020
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:
1. 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.
1. 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 😊