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

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.

 采纳的回答

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 个评论

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.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Image Processing and Computer Vision 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by