欢迎来到天天文库
浏览记录
ID:48012016
大小:339.24 KB
页数:4页
时间:2020-01-14
《MatLab理想低通滤波及高通滤波实现高频增强实验报告.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验作业5:1、用理想低通滤波器在频率域实现低通滤波程序代码:I=imread('d:/3.jpg');forj=1:bI=rgb2gray(I);figure(1),imshow(I);distance=sqrt((i-a0)^2+(j-b0)^2);title('原图像');ifdistance<=dh=1;s=fftshift(fft2(I));elseh=0;figure(2);end;imshow(abs(s),[]);s(i,j)=h*s(i,j);title('图像傅里叶变换所得频谱');end;[a,b]=size(s);end;a0=ro
2、und(a/2);s=uint8(real(ifft2(ifftshift(s))));b0=round(b/2);figure(3);d=10;imshow(s);fori=1:atitle('低通滤波所得图像');滤波d=102、用理想高通滤波器在频率域实现高频增强I=imread('d:/3.jpg');fori=1:aI=rgb2gray(I);forj=1:bfigure(1),imshow(I);title('原图像');distance=sqrt((i-a0)^2+(j-b0)^2);s=fftshift(fft2(I));ifdistanc
3、e<=dh=0;figure(2);elseh=1;imshow(abs(s),[]);end;title('图像傅里叶变换所得频谱');s(i,j)=(p+q*h)*s(i,j);figure(3);end;imshow(log(abs(s)),[]);end;s=uint8(real(ifft2(ifftshift(s))));title('图像傅里叶变换取对数所得频谱figure(4);');imshow(s);title('高通滤波所得图像');[a,b]=size(s);a0=round(a/2);figure(5);b0=round(b/2);
4、imshow(s+I);title('高通滤波所得高频d=10;增强图像');p=0.2;q=0.5;心得体会:这次按照低通滤波器和高通滤波器的定义,按照低通滤波的过程,一步一步写,先是进行傅里叶变换,再对其频谱进行平移,使其中心位于中心,再对此时的频谱进行‘圆形滤波’,刚开始纠结于公式,要怎么想出一个H(s)的滤波器的表达式,然后再进行相乘,后来没有想出来,就直接在每次循环里面直接进行乘法运算,如:fori=1:aforj=1:bdistance=sqrt((i-a0)^2+(j-b0)^2);ifdistance<=dh=1;elseh=0;end;s
5、(i,j)=h*s(i,j);end;end;后来低通滤波这么一写,高通滤波也就挺简单的了,没怎么想,把上面那个h=1和h=0的位置调换一下就变成了高通滤波器,至于高频增强,就改用了s(i,j)=(p+q*h)*s(i,j);在想滤波器表达式怎么写的时候找了好多资料,结果别人的程序都没看懂,后来看到稍微有点接近的,就吸取了那种写法,写出以上程序。
此文档下载收益归作者所有