Detecting closely packed bubbles (diameter and outline) using MATLAB image processing

11 views (last 30 days)
Hello,
I have been trying to detect circles (or rather annular shapes). The attached image named "Bubble_Image.png" is the image that needs to be processed to get the final image "Final_detection.png" (attached here). I many ways especially, Brett Shoelson's article (https://blogs.mathworks.com/pick/2008/05/23/detecting-circles-in-an-image/) but I have not been successful. Please help. I want to detetct the bubbles within a certain pixel diameter range and then list the diameters of the detected biubbles.

Accepted Answer

Sindhu Karri
Sindhu Karri on 10 Nov 2020
Hii Punnag,
histeq”,”imfindcircles” functions are useful to detect circles
You can also refer to attached code for your use case:
A = imread('Bubble_Image.png');
A1=histeq(A);
imshow(A)
[centers, radii, metric] = imfindcircles(A1,[5 30],'EdgeThreshold',0.1);
viscircles(centers, radii,'Color','r');
Refer to below links for better understanding:
Refer to this link for detailed explanation
  1 Comment
Punnag Chatterjee
Punnag Chatterjee on 12 Nov 2020
This is a nice - short code. It does work, detecting I would say 80% of the circles. I will keep playing with the 'EdgeThreshold' , 'Sensitivity' and the other settings. Thanks.

Sign in to comment.

More Answers (0)

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!