transform mask from circle to ring

10 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

Image Analyst
Image Analyst il 14 Ago 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);

Più risposte (0)

Prodotti


Release

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by