资源描述:
《数字图像处理频域滤波与图像变换》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验四频域滤波与图像变换编码实验目的通过实验了解频域高频和低频滤波器对图像处理的效果,了解离散余弦变换在图像变换编码中的作用。1.载入图像’cameraman.tif’,加入椒盐噪声,编程设计一阶巴特沃斯低通滤波器,改变滤波器的参数,观察并比较滤波效果。closeall;clearall;I1=imread('pout.tif');subplot(2,3,1),imshow(I1);title('原始图像')I2=imnoise(I1,'salt&pepper');subplot(2,3,2)im
2、show(I2);title('加噪图像');f=double(I2);g=fft2(f);g=fftshift(g);[N1,N2]=size(g);n=1;d0=5;n1=fix(N1/2);n2=fix(N2/2);fori=1:N1forj=1:N2d=sqrt((i-n1)^2+(j-n2)^2);h=1/(1+0.414*(d/d0)^(2*n));result(i,j)=h*g(i,j);endendresult=ifftshift(result);X2=ifft2(result);
3、X3=uint8(real(X2));subplot(2,3,3),imshow(X3);title('Butterworth低通滤波器,d0=5');d0=11;n1=fix(N1/2);n2=fix(N2/2);fori=1:N1forj=1:N2d=sqrt((i-n1)^2+(j-n2)^2);h=1/(1+0.414*(d/d0)^(2*n));result(i,j)=h*g(i,j);endendresult=ifftshift(result);X2=ifft2(result);X3=
4、uint8(real(X2));subplot(2,3,4),imshow(X3);title('d0=11');d0=25n1=fix(N1/2);n2=fix(N2/2);fori=1:N1forj=1:N2d=sqrt((i-n1)^2+(j-n2)^2);h=1/(1+0.414*(d/d0)^(2*n));result(i,j)=h*g(i,j);endendresult=ifftshift(result);X2=ifft2(result);X3=uint8(real(X2));subp
5、lot(2,3,5),imshow(X3);title('d0=25');d0=50n1=fix(N1/2);n2=fix(N2/2);fori=1:N1forj=1:N2d=sqrt((i-n1)^2+(j-n2)^2);h=1/(1+0.414*(d/d0)^(2*n));result(i,j)=h*g(i,j);endendresult=ifftshift(result);X2=ifft2(result);X3=uint8(real(X2));subplot(2,3,6),imshow(X3
6、);title('d0=50');由图可知,由于对噪声模型的估计不准确,使用巴特沃斯滤波器在平滑了噪声的同时,也使图像模糊了,随着截断频率的增加,图像的模糊程度减小,滤除噪声的效果也越来越差。2.载入图像’trees.tif’,编程设计二阶巴特沃斯高通滤波器,观察到图像中各区域边界得到增强,而图中原来比较平滑区域内部的灰度动态范围被压缩,整幅图变得比较昏暗。closeall;clearall;I1=imread('trees.tif');subplot(1,2,1),imshow(I1);titl
7、e('原始图像');f=double(I1);g=fftshift(fft2(f));[N1,N2]=size(g);n=2;d0=5;n1=fix(N1/2);n2=fix(N2/2);fori=1:N1forj=1:N2d=sqrt((i-n1)^2+(j-n2)^2);ifd==0h==0;elseh=1/(1+(d0/d)^(2*n));endresult(i,j)=h*g(i,j);endendresult=ifftshift(result);X2=ifft2(result);X3=ui
8、nt8(real(X2));subplot(1,2,2),imshow(X3);title('Butterworth高通滤波器');从高通滤波器后的图像可见,图像昏暗,很多细节看不清了,这是由于图像的大部分能量集中在低频区域,而高频使图中各区域的边界得到较明显增强的同时滤掉了低频成分,使图中原来比较平滑区域内部的灰度动态范围被压缩,整幅图变得比较昏暗。3.载入图像,将图像划分成8*8的图象块,计算它们的DCT系数,并且只保留64个DCT系数中的10个,然后对每个图象块利用这10个系