"regionprops" detecting one line only

4 visualizaciones (últimos 30 días)
Abdul Hannan Qureshi
Abdul Hannan Qureshi el 6 de Jun. de 2022
Comentada: Abdul Hannan Qureshi el 6 de Jun. de 2022
If anyone can identify why I am getting width of one line only.
L1 = bwlabel(s);
vislabels(L1)
k=regionprops(L1,'Area','Perimeter','Centroid');
score= (([k.Area])/([k.Perimeter]/2))
figure, imshow(s);
morespace=10;
for cnt = 1:width(k)
text(k(cnt).Centroid(1),k(cnt).Centroid(2)+morespace,...
num2str(score(cnt))+" sq cm",'FontSize',12,'color','red');
end
s.mat is attached. Kindly advise.

Respuesta aceptada

Simon Chan
Simon Chan el 6 de Jun. de 2022
load('s.mat')
L1 = bwlabel(s);
%vislabels(L1); % Ignore the user created function
k=regionprops(L1,'Area','Perimeter','Centroid');
score= (([k.Area])./([k.Perimeter]/2)); % Use ./ instead of /
figure, imshow(s);
morespace=10;
for cnt = 1:length(k) % Use length instead of width
text(k(cnt).Centroid(1),k(cnt).Centroid(2)+morespace,...
num2str(score(cnt))+" sq cm",'FontSize',12,'color','red');
end

Más respuestas (0)

Categorías

Más información sobre Get Started with Image Processing Toolbox en Help Center y File Exchange.

Productos


Versión

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by