您好,欢迎访问三七文档
4‐1图像噪声实验目的:掌握图像高斯噪声、瑞利噪声、伽马(爱尔兰)噪声、指数分布噪声、均匀分布噪声、脉冲噪声(椒盐噪声)的实现方法.实验内容:使用imnoise2生成高斯噪声、瑞利噪声、伽马(爱尔兰)噪声、指数分布噪声、均匀分布噪声、脉冲噪声(椒盐噪声)噪声,观察样本噪声图像和它们的直方图的区别%%例4.2各种噪声clcclearr=imnoise2('gaussian',100000,1,0,1);bins=100;hist(r,bins)title('gaussian')r=imnoise2('uniform',100000,1,0,1);bins=100;figure,hist(r,bins)title('uniform')r=imnoise2('salt&pepper',1000,1,0.1,0.27);bins=100;figure,hist(r,bins)title('salt&pepper')r=imnoise2('lognormal',100000,1);bins=100;figure,hist(r,bins)title('lognormal')r=imnoise2('rayleigh',100000,1,0,1);bins=100;figure,hist(r,bins)title('rayleigh')r=imnoise2('exponential',100000,1);bins=100;figure,hist(r,bins)title('exponential')r=imnoise2('erlang',100000,1);bins=100;figure,hist(r,bins)title('erlang')4‐2噪声参数估计实验目的:掌握噪声参数的估计和周期噪声的生成方法。实验内容:1.使用imnoise3添加空间正弦噪声,观察不同参数下噪声的区别2.使用histroi估计不同的噪声类型及噪声参数%%例4.3imnoise3clcclearC=[064;0128;3232;640;1280;-3232];[r,R,S]=imnoise3(512,512,C);imshowMy(S,[])imfinfoMy(S)title('[6个]指定冲击的正弦噪声周期频谱[1]')imshowMy(abs(R),[])imshowMy(r,[])imfinfoMy(r)title('[6个]相应的正弦噪声周期模式[1]')%S1=fftshift(S);%imshowMy(S1,[])%figure,mesh(S)C1=C/2;[r,R,S]=imnoise3(512,512,C1);imshowMy(S,[])title('[6个]指定冲击的正弦噪声周期频谱[2]')imshowMy(r,[])title('[6个]相应的正弦噪声周期模式[2]')C2=[632;-22];[r,R,S]=imnoise3(512,512,C2);imshowMy(S,[])title('[2个]指定冲击的正弦噪声周期频谱[3]')imshowMy(r,[])title('[2个]相应的正弦噪声周期模式[3]')A=[15];[r,R,S]=imnoise3(512,512,C2,A);imshowMy(1-S,[])%有两个不清楚的点,因为其振幅较小title('[2个][使用非默认的不同振幅]指定冲击的正弦噪声周期频谱[4]')imshowMy(r,[])title('[2个][使用非默认的不同振幅]相应的正弦噪声周期模式[4]')%%imnoise3clcclearC1=[632];[r,R,S]=imnoise3(512,512,C1);imshowMy(S,[])title('[1个]指定冲击的正弦噪声周期频谱[1]')imshowMy(r,[])title('[1个]相应的正弦噪声周期模式[1]')C2=[-22];[r,R,S]=imnoise3(512,512,C2);imshowMy(S,[])title('[1个]指定冲击的正弦噪声周期频谱[2]')imshowMy(r,[])title('[1个]相应的正弦噪声周期模式[2]')C3=[632;-22];A=[15];[r,R,S]=imnoise3(512,512,C3,A);imshowMy(1-S,[])%有两个不清楚的点,因为其振幅较小title('[2个][使用非默认的不同振幅]指定冲击的正弦噪声周期频谱[1]')imshowMy(r,[])title('[2个][使用非默认的不同振幅]相应的正弦噪声周期模式[1]')C3=[632;-22];A=[51];[r,R,S]=imnoise3(512,512,C3,A);imshowMy(1-S,[])%有两个不清楚的点,因为其振幅较小title('[2个][使用非默认的不同振幅]指定冲击的正弦噪声周期频谱[2]')imshowMy(r,[])title('[2个][使用非默认的不同振幅]相应的正弦噪声周期模式[2]')%%例4.4估计噪声参数交互式选取区域产生的直方图clcclearf=imread('noisy_image.tif');imshow(f)title('原始含噪声图像')[B,c,r]=roipoly(f);figure,imshow(B)[p,npix]=histroi(f,c,r);figure,bar(p,1)title('交互式选取区域产生的直方图')axistight[v,unv]=statmoments(p,2)%????X=imnoise2('gaussian',npix,1,unv(1),sqrt(unv(2)));figure,hist(X,130)title('使用函数[imnoise2]产生的高斯数据的直方图')%axis([03000140])axistight%%掩模的使用方法P114clcclearf=imread('noisy_image.tif');imshow(f)[B,c,r]=roipoly(f);roi=f(B);size_f=size(f)class_f=class(f)size_B=size(B)class_B=class(B)size_roi=size(roi)%列向量4‐3空间滤波实验目的:掌握空间滤波方法.实验内容:1.使用spfilt实现逆调和滤波器、最大和最小滤波器,观察不同滤波器滤波效果的区别2.使用adpmedian实现自适应中值滤波实验步骤:%%例4.5spfilt空间噪声滤波器clcclearf=imread('lena.jpg');imshowMy(f)title('原始图像')[M,N]=size(f);R=imnoise2('salt&pepper',M,N,0.1,0);c=find(R==0);gp=f;gp(c)=0;imshowMy(gp)title('被概率为0.1的胡椒噪声污染的图像')R=imnoise2('salt&pepper',M,N,0,0.1);c=find(R==1);gs=f;gs(c)=255;imshowMy(gs)title('被概率为0.1的盐粒噪声污染的图像')fp=spfilt(gp,'chmean',3,3,1.5);imshowMy(fp)title('用阶为Q=1.5的3*3反调和滤波器对[被概率为0.1的胡椒噪声污染的图像]滤波的结果')fs=spfilt(gs,'chmean',3,3,-1.5);imshowMy(fs)title('用阶为Q=-1.5的3*3反调和滤波器对[被概率为0.1的盐粒噪声污染的图像]滤波的结果')fpmax=spfilt(gp,'max',3,3);imshowMy(fpmax)title('用3*3最大滤波器对[被概率为0.1的胡椒噪声污染的图像]滤波的结果')fsmin=spfilt(gs,'min',3,3);imshowMy(fsmin)title('用3*3最小滤波器对[被概率为0.1的盐粒噪声污染的图像]滤波的结果')%%例4.6自适应中值滤波adpmedianclcclearf=imread('lena.jpg');imshowMy(f)title('原始图像')g=imnoise(f,'salt&pepper',0.25);%噪声点有黑有白imshowMy(g)title('被概率为0.25椒盐噪声污染的图像')f1=medfilt2(g,[77],'symmetric');imshowMy(f1)title('用7*7中值滤波器对[被概率为0.25椒盐噪声污染的图像]滤波的结果')f2=adpmedian(g,7);imshowMy(f2)title('用Smax=7的自适应中值滤波器对[被概率为0.25椒盐噪声污染的图像]滤波的结果')实验总结:通过对第四章前三节的学习,我了解到了图像退化/复原处理的模型,在退化过程中被建模为一个退化函数和一个加性噪声项,并且退化函数和加性噪声的信息越多,所复原出来的图像就越接近原图。然后是用imnoise和自定义的imnoise2、imnoise3对图像添加噪声并绘制他们的直方图,最后使用空间噪声滤波等来进行图像的复原,明白了怎么对含有椒盐和盐白点的图像进行处理,收获颇多。
本文标题:数字图像处理4
链接地址:https://www.777doc.com/doc-5415105 .html