Finding circles in a thresholded image
Ältere Kommentare anzeigen
I am trying to find the center, radius and area of a circle. The circles edge is a gradient from black to white so I am trying to threshold it so I can manipulate where the circles edge starts.
The image is:

My current code is:
clear all
clc
T1 = imread('T2.png');
figure(1)
imshow(T1)
% Threshold to find circles
BI = T1 < 10;
% Removes elements less than 10 pixels
BI = bwareaopen(BI, 10);
figure(2)
imshow(BI)
[centers, radii, metric] = imfindcircles(BI,[10 200]);%Finds circles between a b pixels
viscircles(centers, radii,'EdgeColor','b');%Draws on edge
Ar = radii'*3.14;%Finds area
%Outputs center, radius and Area
centers
radii
Ar
Akzeptierte Antwort
Weitere Antworten (1)
KSSV
am 30 Mai 2019
1 Stimme
Kategorien
Mehr zu Object Analysis finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!