Grouping boundary points of several ROIs
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi,
I have 6 region of interests (ROI) and their boundary points and centroids. I got this boundary points randomly through MATLAB programming. Do you have an idea how to group them according to corresponding ROIs in MATLAB? I need individual ROI's boundary points for further calculations.
I have applied Kmeans and it didn't work.
5 commentaires
DGM
le 23 Juin 2021
Yes, but like I said, bear in mind which one is "first", "second", etc. The label array L contains a map of each object it found in the image, each labeled with their ordinal value. In this case, the objects are numbered [5 6 4 3 2 1] from top to bottom.
Réponse acceptée
DGM
le 23 Juin 2021
Modifié(e) : DGM
le 23 Juin 2021
This may be extraneous, but if you don't need the boundary coordinates for anything other than finding the extrema, consider this instead:
inpict = imread('lumber.png')>128;
% you'll need the centroid anyway
S = regionprops(inpict,'centroid','extrema');
imshow(inpict); hold on
for n = 1:numel(S)
% calculate the right and left extrema of this object
rextrema = mean(S(n).Extrema(3:4,:),1);
lextrema = mean(S(n).Extrema(7:8,:),1);
% for sake of demonstration, show where the extrema are
plot(rextrema(1),rextrema(2),'*')
plot(lextrema(1),lextrema(2),'*')
end
3 commentaires
Image Analyst
le 23 Juin 2021
For next time, look up bwboundaries() - better than boundary(). Also look up bwferet() if you want extrema locations and distances.
DGM
le 23 Juin 2021
That's a good point. I was assuming the goal was to find the horizontal extrema instead of the maximal diameter.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Image Segmentation and Analysis dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!