For a binay image, how to plot a circle by using the centroid of the white pixel region for any given radius.
3 views (last 30 days)
Show older comments
Accepted Answer
Vinai Datta Thatiparthi
on 16 Jul 2019
Hi!
It appears to me that you want to calculate the centroid of the white spot in your image, and using this centroid value as the center, plot a circle of any radius.
The first part of the question, i.e. finding the centroid of the circle can be evaluate as follows –
im = imread('figure.jpeg'); % Your figure
imBin = imbinarize(im);
imBin = imfill(imBin, 'holes');
BW = regionprops(logical(imBin), 'centroid');
imshow(imBin);
hold on;
plot(BW.Centroid(1),BW.Centroid(2),'bx')
The value of the centroid of this image is stored in the variable ‘BW’.
The output is -
(I snipped this output to enhance readability)
Coming to the second part of your question, please refer to this link here to get the relevant steps to plotting a circle with a given center and radius.
0 Comments
More Answers (0)
See Also
Categories
Find more on Image Filtering and Enhancement 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!