Is there some function in Matlab with which I can dilate only a small ROI in the image?

3 次查看(过去 30 天)
Is there some function in Matlab with which I can dilate only a small ROI in the image?

回答(1 个)

Brett Shoelson
Brett Shoelson 2011-2-7
Actually, it doesn't really matter how the ROI is defined, nor what shape it is. The function roifilt2 makes it easy. Here's a code snippet that will allow you to define a freehand ROI, and then dilate the image only within the selected ROI.
img = imread('coins.png');
imshow(img)
roi = imfreehand;
mask = roi.createMask;
func = @(x) imdilate(x,strel('disk',10));
partiallyDilated = roifilt2(img,mask,func);
imshow(partiallyDilated)
Cheers,
Brett

Community Treasure Hunt

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

Start Hunting!

Translated by