close all
clear all
I=imread('ck.bmp')%读取图像
subplot(3,3,1)
imshow(I) %显示原始图像
title('原始图像')
P1=imnoise(I,'gaussian',0.02) %加入高斯躁声
subplot(3,3,2)
imshow(P1)%加入高斯躁声后显示图像
title('加入高斯噪声后的图像')
I1=im2double(P1)%将彩图序列变成双精度
I2=rgb2gray(I1)%将彩色图变成灰色图
[thr, sorh, keepapp]=ddencmp('den','wv',I2)
I3=medfilt2(I2,[9 9])%中值滤波
I4=wdencmp('gbl',I2,'sym4',2,thr,sorh,keepapp)%小波除噪
I5=imresize(I4,1.5,'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')%canny图像边缘提取
h=fspecial('gaussian',5)%高斯滤波
BW6=edge(I5,'zerocross',[ ],h)%zerocross图像边缘提取
figure
subplot(1,3,1)%图划分为一行三幅图,第一幅图
imshow(I2)%绘图
title('灰度图')
subplot(1,3,2)
imshow(I3)
title('中值滤波后图')
subplot(1,3,3)
imshow(I4)
title('小波除噪后图')
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算子')
save datI4 I4
ck1
function ck1
load datI4 I4%导入数据I4
figure
plot(I4)
U=I4
save datU U%存入数据U
I4=I4-0.4438
for i=1:166
for j=1:189
if I4(i,j)<=0
I4(i,j)=0
else
I4(i,j)=1
end
end
end
figure
plot(I4)
B=sum (sum(I4))
上面是我毕业设计用到的一些程序,图像名字'ck.bmp',我毕业设计也是关于图像处理的,不过跟你的方向不同,我是处理图像中的缺陷,希望对你有所帮助。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)