How to fill a black area with circles?

5 views (last 30 days)
Ryan Moore
Ryan Moore on 10 Mar 2020
Answered: Nikhil Sonavane on 13 Mar 2020
I'm using imfindcircles() of the Image Processing Toolbox to scan a simple rectangular image for black circles. When the dots are clumped, a region becomes black and imfindcircles() doesn't identify any circles. I've attached an example image and scan.
I'd like to flood/fill that region with circles anyway but am unsure how to proceed. The circles can overlap, or not, either is fine.
A script using the attached input file, resulting in the attached output file.
clc;
clear all;
close all;
dots_center(imread("10_2.png"),6,1)
function centers = dots_center(image,pixeldiameter,sensitivity)
[centers,radii] = imfindcircles(image,[pixeldiameter pixeldiameter],'ObjectPolarity','dark','Sensitivity',sensitivity)
hold on;
imshow(image);
h = viscircles(centers,radii);
end
  2 Comments
Ralf U.
Ralf U. on 11 Mar 2020
It does not identify any circles because there are none. And there is no way to tell, where they were. So the only thing left for you is guessing.
You can randomly fill the black areas with circles, although you would generate data, that did not exist in the first place. Depending on what you want to do with the result, it might get corrupted.
Ryan Moore
Ryan Moore on 11 Mar 2020
Yes you're right it wouldn't be technically correct, but this is just for a rough first order approximation.
If I was able to randomly fill the black areas with circles, it would be more informative for my needs than it's current state.

Sign in to comment.

Answers (1)

Nikhil Sonavane
Nikhil Sonavane on 13 Mar 2020
The area which you are concerned about is just a accumulation of black pixels. From the image there is no way to find the exact circles by which the black area is created unless you find a method with which the original image is created. But given only the image you won't be able to get fill the black region with circles.

Community Treasure Hunt

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

Start Hunting!