transform mask from circle to ring
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
abdelillah douhi
le 14 Août 2021
Commenté : abdelillah douhi
le 16 Août 2021
hello all,
i have a number of ROIs made with roipoly and i want to transform them to a ROI ring shape when i can set the thickness of the ring manually, the i dea is to keep the original ROI make a small dupliicate and place it inside and get the ring shape, if someone can help with that or have a better way to do it. image modified to clarify the final ROIs wanted.


regards
0 commentaires
Réponse acceptée
Image Analyst
le 14 Août 2021
Once you have the first mask, you can erode it by some then erase that from the original:
radius = 2; % Thickness of ring.
se = strel('disk', radius, 0);
smallerMask = imerode(mask, se);
% Erase it from original.
mask = mask & ~smallerMask;
% Or alternative way to do it that gives the same result:
% mask(smallerMask) = false;
If the thickness is known to be just one pixel, then you can use bwperim()
ringMask = bwperim(mask);
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!