Can anyone help me to solve this error in regionprops().
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
This is the code.The stats is a table, in that MajorAxisLength() and MinorAxisLength() is showing as 0*0 (double)
gray = imread('CYST RENAL-37.jpg');
grayImage = rgb2gray(gray);
level = graythresh(gray);
BW = imbinarize(gray,level);
stats = regionprops('table',BW,'Centroid',...
'MajorAxisLength','MinorAxisLength');
centers = stats.Centroid;
diameters = mean([stats.MajorAxisLength stats.MinorAxisLength],2);
radii = diameters/2;
Pls help me to solve this error. Any help is appreciated
3 comentarios
Walter Roberson
el 24 de Mayo de 2021
Also I wonder if using "equivalent diameter" property would happen to be appropriate for your case.
Respuestas (1)
Walter Roberson
el 25 de Mayo de 2021
gray = imread('CYST RENAL-37.jpg');
grayImage = rgb2gray(gray);
BW = imbinarize(grayImage);
stats = regionprops('table',BW,'Centroid',...
'MajorAxisLength','MinorAxisLength');
centers = stats.Centroid;
diameters = mean([stats.MajorAxisLength stats.MinorAxisLength],2);
radii = diameters/2;
You were trying to imbinarize() the RGB image, not the gray image.
Also, imbinarize() automatically determines the threshold by calling graythresh if you do not pass in a level.
0 comentarios
Ver también
Categorías
Más información sobre Image Segmentation and Analysis en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!