Eroding and dilating an image

I need help. This code is to dilate and erode the image. How can I fix it?

 采纳的回答

Line 3 has two equals signs on it. You can't do that. And ~ doesn't work for a gray scale image. You can do
c = imread('cameraman.tif');
se = strel('disk', 5, 0);
a = imerode(c, se);
subplot(1, 2, 1);
imshow(a);
dilatedImage = imdilate(imcomplement(c), se);
subplot(1, 2, 2);
imshow(dilatedImage);

更多回答(1 个)

you could try these codes that I found:
% Dilating and eroding an image
% Original image
im = imread('circbw.tif');
subplot(2,3,1);
imshow(im);
[x,y] = size(im);
title(sprintf('Original image (%dx%d)', x,y));
%% Dilation
% Create a structuring element
se = strel('square', 3);
% Dilate the image with the structuring element
im1 = imdilate(im, se);
subplot(2,3,2);
imshow(im1);
title('Dilated image');
%% Erosion
% Create a structuring element
se = strel('square', 3);
im2 = imerode(im, se);
subplot(2,3,3);
imshow(im2);
title('Eroded image');
%% Erosion und Dilation are dual:
se = strel('square', 3);
im3 = 1 - imerode(1-im, se);
subplot(2,3,5);
imshow(im3);
title('Eroded Background');
im4 = 1 - imdilate(1-im, se);
subplot(2,3,6);
imshow(im4);
title('Dilated Background');

类别

帮助中心File Exchange 中查找有关 Image Processing Toolbox 的更多信息

产品

版本

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by