i=imread('C:\Users\24734\Pictures\multisim和ad截图\二值形态学4.jpg');
i=rgb2gray(i);
im=dither(i);
bw2=edge(im, 'sobel');
bw3=edge(im, 'log');
subplot(122);imshow(bw2);title('sobel');
subplot(121);imshow(bw3);title('log');
方法一 利用 edge函数
运用 sobel/reboerts/prewitt/log/canny等算子进行边缘检测。
canny算子连续性最强。
(原理目前不赘述,等哪天要用了再补充)
i=imread('C:\Users\24734\Pictures\multisim和ad截图\二值形态学4.jpg');
i=rgb2gray(i);
im=dither(i);
bw2=bwperim(im);
bw3=bwperim(im,8);
subplot(122);imshow(bw2);title('bw2');
subplot(121);imshow(bw3);title('bw3');
方法二 现成的函数bwperim(name,coon)
coon为连通值,默认为4,也可以为八。
close all;clear all;clc;
i=imread('C:\Users\24734\Pictures\multisim和ad截图\二值形态学4.jpg');
i=rgb2gray(i);
im=dither(i);
se = strel('square',2);
J = imdilate(im,se);
K = imerode(im,se);
L = J-K;
subplot(122);imshow(im);title('im');
subplot(121);imshow(L);title('L');
方法三 利用膨胀和腐蚀,用腐蚀的减去膨胀的。
`
效果如下: