目录

一、初始知识

二、理想LPF

三、高斯LPF

四、巴特沃斯(Butterworth)LPF

五、滤波器和频谱的卷积

六、完整代码

Python中OpenCV2下实现参见这里


一、初始知识

  1. 关于 distmatrix 的作用,见https://blog.csdn.net/qq_37385726/article/details/82697648,看源代码可以知道函数的意义。
  2. 但是,不懂函数的意义也没关系,只要记住,fftshift(distmatrix)生成的是各个坐标到中心坐标的距离即可
[M,N] = size(tif);
D = distmatrix(M,N);
dist = fftshift(D);   %距离矩阵(距中心)figure
subplot(1,2,1),mesh(D),title('distmatrix');
subplot(1,2,2),mesh(fftshift(D)),title('fftshift(distmatrix)');

  1. 关于傅里叶变换,知道频域滤波就知道傅里叶变换实现的是时域(空域)到频率域的转变,对于2D傅里叶变换,坐标(1,1) %Python中为(0,0)%是频率为0的直流信号,坐标(u,v)是在x方向频率为u,y方向频率为v的信号

二、理想LPF

由于生硬的过度,图像会产生振铃伪影。

% idea LPF
H1 = zeros(M,N);
radius = 35;
ind = dist <= radius;
H1(ind) = 1;
Hd1 = double(H1);

三、高斯LPF

% Gaussion LPF
sigma = 30;
H2 = exp(-dist.^2/2/sigma^2);
Hd2 = double(H2);

四、巴特沃斯(Butterworth)LPF

从函数图上看,更圆滑,用幂系数n可以改变滤波器的形状。n越大,则该滤波器越接近于理想滤波器

% Butterworth LPF
D0 = 30;
n = 3;
H3 = 1./(1+(dist/D0).^(2*n));
Hd3 = double(H3);

五、滤波器和频谱的卷积

I_dft = fft2(tif);   %原频谱
fts = fftshift(I_dft);  %shift后的频谱
ft_img1 = fts .* Hd1;
ft_img2 = fts .* Hd2;
ft_img3 = fts .* Hd3;

六、完整代码

tif = imread('C:\\Program Files\\MATLAB\\R2017a\\toolbox\\images\\imdata\\AT3_1m4_01.tif');
tif = im2double(tif);
I_dft = fft2(tif);   %原频谱
fts = fftshift(I_dft);  %shift后的频谱[M,N] = size(tif);
D = distmatrix(M,N);
dist = fftshift(D);   %距离矩阵(距中心)% idea LPF
H1 = zeros(M,N);
radius = 35;
ind = dist <= radius;
H1(ind) = 1;
Hd1 = double(H1);% Gaussion LPF
sigma = 30;
H2 = exp(-dist.^2/2/sigma^2);
Hd2 = double(H2);% Butterworth LPF
D0 = 30;
n = 3;
H3 = 1./(1+(dist/D0).^(2*n));
Hd3 = double(H3);ft_img1 = fftshift(I_dft) .* Hd1;
ft_img2 = fftshift(I_dft) .* Hd2;
ft_img3 = fftshift(I_dft) .* Hd3;subplot(1,4,1),imshow(tif),axis tight,title('initial');
subplot(1,4,2),imshow(real(ifft2(fftshift(ft_img1)))),axis tight,title('Ideal LPF');
subplot(1,4,3),imshow(real(ifft2(fftshift(ft_img2)))),axis tight,title('Guassion LPF');
subplot(1,4,4),imshow(real(ifft2(fftshift(ft_img3)))),axis tight,title('Butterworth LPF');

三类滤波器mesh后的形状:

频谱的变化如下:

Matlab之频域滤波下三大LPF相关推荐

  1. Matlab实现频域滤波——二维傅里叶变换、低通、高通

    目录 1.二维傅里叶变换 1.1二维傅里叶变换定义 1.2性质 2.低通滤波器 2.1理想低通滤波器 3.高通 1.二维傅里叶变换 1.1二维傅里叶变换定义 首先通过傅里叶变换将图像从空间域转换为频率 ...

  2. 频域滤波(matlab)

    频域滤波 频率域图像增强首先通过傅里叶变换将图像从空间域转变成频率域,然后在频率域内对图像进行处理,最后通过傅里叶反变换转换到空间域.频率域内的图像增强通常包括低通滤波.高通滤波.同态滤波等. 设f( ...

  3. matlab频域滤波处理,手动滤波,图像去网格背景:频域中手动选择目标区域进行滤波,滤掉噪声,灵活地达到理想的效果。

    目录 一.原理简介 二.现有方法 三.代码实现 四.测试结果图 一.原理简介 主要思路为:通过傅里叶变换,将图像显示在频率域中,通过观察频谱图,如果了解频谱图与原图之间的关联,可以较为容易地发现噪声在 ...

  4. c# 傅里叶变换 频域_傅里叶变换在MATLAB中的应用(频域滤波)

    点击上方蓝字  关注我们 本文主要讲述如何在MATLAB中实现频域滤波,那么,怎么实现呢,我们这里讲的所有的滤波都是通过傅里叶变换在频域中实现的,所有这部分和傅里叶变换渊源很深,至于傅里叶变换本身,我 ...

  5. matlab实现频域率滤波,基于Matlab的图像的频域滤波实现及研究.doc

    摘要:图像的频域滤波是图像增强的一种方法.图像增强是图像处理的方法之一,有频率域法和空间域法.频率域法把图像看成一种二维信号,对其进行二维傅里叶变换的信号增强,采用低通滤波法可以去掉图像的噪声:采用高 ...

  6. 分析频域滤波和空域滤波的各自特点_同态滤波原理及其matlab实现

    同态滤波(Homomorphic Filtering) 参考自<Digital Image Processing 3rd ed.>R. Gonzalez, p. 311-315 1. 同态 ...

  7. 【图像去噪】空域+频域滤波图像去噪【含GUI Matlab源码 914期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[图像去噪]基于matlab GUI空域+频域滤波图像去噪[含Matlab源码 914期] 获取代码方式2: 通过订阅紫极神光博客付费专栏 ...

  8. 频域平滑滤波 matlab,用MATLAB实现频域平滑滤波以及图像去噪代码

    用MATLAB实现频域平滑滤波以及图像去噪代码 提问时间:2018-01-18 19:06:50 是数字图象处理的实验,麻烦高人给个写好的代码,希望能在重要语句后面附上一定的说明,只要能在MATLAB ...

  9. matlab简单分析频域滤波和时域滤波

    华中科技大学<数字信号分析理论实践>第六单元 信号数字滤波的概念 学习总结记录 频域滤波 对信号进行低通滤波的一种快速方法,低频信号幅度设为1,负频率镜像过去,把虚部设为0 Fs = 20 ...

最新文章

  1. Hadoop大数据分布式文件系统hdfs的Java操作
  2. CSS之expression
  3. 初识组织社会学(part1)--勉为其难,不如顺其自然,在力所能及的层次上研究、解释问题
  4. SAP Data Intelligence API执行出错的排错之道
  5. 装 linux后 win7消失了,win7系统重装后ubuntu启动消失不见的解决方法
  6. java 屏蔽邮箱_使用javamail发送邮件的时候如何阻止附件内容输出到控制台
  7. 美团最好战的那个男人要走了
  8. 阿里 前端 规范_不懂源码的前端不是真正的前端
  9. EIGRP的扩展实验
  10. 利用图片指纹检测高相似度图片--相似图片搜索的原理
  11. Access2007数据库下载地址与AccessHelper
  12. 百度账号-登录教学【新手必看】
  13. 极链AI云丨图像转换代表作CycleGAN快速复现
  14. 开闭原则、迪米特法则、合成复用原则
  15. centos6下安装配置NFS
  16. C语言整理(待更新)
  17. PHP5.4发布:新特性与改动
  18. docker+docker-compose部署微服务项目
  19. 关于日期身份证等常用的正则表达式记录
  20. 如何给U盘或移动硬盘添加个性的图标? | 不着调软件

热门文章

  1. EventBus如何使用及一些常见场景
  2. 关于微信小程序A 与 微信小程序B 之间的跳转问题
  3. AES加密算法之行移位变换
  4. 为什么放大器上的输入电阻越大越好?输出电阻越小越好?
  5. 立体库核心干货|智能自动化立体库高承载高强耐受力高效率专用托盘
  6. (Mimics、ANSYS)医学三维重建
  7. VR元宇宙展会,带来全新线上展厅沉浸式体验
  8. 【深搜】小孩分油问题
  9. 用Python爬取并分析了B站最热排行榜,我发现了这些秘密
  10. 能给黑白照片自动上色的软件有哪些?这几款建议收藏