closeall
clearall
I=imread(\'tig.jpg\');%读取图像
I1=im2double(I);%将彩图序列变成双精度
I2=rgb2gray(I1);%将彩色图变成灰色图
[thr,sorh,keepapp]=ddencmp(\'den\',\'wv\',I2);
I3=wdencmp(\'gbl\',I2,\'sym4\',2,thr,sorh,keepapp);%小波除噪
I4=medfilt2(I3,[99]);%中值滤波
I5=imresize(I4,0.2,\'bicubic\');%图像大小
BW1=edge(I5,\'sobel\');%sobel图像边缘提取
BW2=edge(I5,\'roberts\');%roberts图像边缘提取
BW3=edge(I5,\'prewitt\');%prewitt图像边缘提取
BW4=edge(I5,\'log\');%log图像边缘提取
BW5=edge(I5,\'canny\');蕁ny图像边缘提取
h=fspecial(\'gaussian\',5);%高斯滤波
BW6=edge(I5,\'zerocross\',[],h);%zerocross图像边缘提取
figure;
subplot(1,3,1);%图划分为一行三幅图,第一幅图
imshow(I2);%绘图
figure;
subplot(1,3,1);
imshow(BW1);
title(\'Sobel算子\');
subplot(1,3,2);
imshow(BW2);
title(\'Roberts算子\');
subplot(1,3,3);
imshow(BW3);
title(\'Prewitt算子\'); |