当前位置: 首页 > news >正文

当图像开始跳舞:用Matlab玩转频率域滤镜

标题:基于matlab的理想滤波器和巴特沃斯滤波器设计 关键词:一阶巴特沃斯滤波器 理想滤波器 二维傅里叶变换 fft2 描述:对任意图像进行灰度化,然后进行二维傅里叶变化,设定一个阈值,对高频或者低频信号进行滤波操作。 通过设置阈值,选择类型可设置理想低通,理想高通滤波器和一阶巴特沃斯高通和一阶巴特沃斯低通滤波器。 基于matlab的图像处理小实验,

最近在折腾图像处理的时候发现,频率域滤波像给照片开了上帝视角——原本藏在像素背后的高频细节和低频轮廓突然变得可控。今天咱们拿Matlab当画笔,试试怎么用理想滤波器和巴特沃斯滤波器给图像做"美颜"。

先抓张图进来折腾:

% 灵魂画手的第一步 img = imread('lena.jpg'); gray_img = rgb2gray(img); figure(1), imshow(gray_img), title('原图:等待滤镜的素颜照')

!图1:原图

接下来要进入核心环节——二维傅里叶变换。这时候图像会变成频域里的一团星云:

% 施展空间魔法 f_img = fft2(double(gray_img)); f_shift = fftshift(f_img); magnitude = log(abs(f_shift)+1); figure(2), imshow(magnitude,[]), title('频域星云图')

!图2:频域分布

重点来了,咱们先做个理想低通滤波器试试。这玩意儿就像个暴君,对超出阈值的频率直接封杀:

% 专制型滤镜生成器 [M,N] = size(gray_img); D0 = 30; % 试试把这个值调到15看看会发生什么 u = 0:(M-1); v = 0:(N-1); [V,U] = meshgrid(v,u); D = sqrt((U-floor(M/2)).^2 + (V-floor(N/2)).^2); ideal_LP = double(D <= D0);

!图3:理想低通效果

看这个滤镜模板,边缘锋利得像菜刀切出来的。这种简单粗暴的方式虽然有效,但处理后的图像边缘总带着奇怪的振铃,就像给照片套了个劣质相框。

这时候就该巴特沃斯滤波器出场了。一阶的设计让它像个温和的管家,对频率成分的过渡处理得更圆滑:

% 温柔版滤镜配方 n = 1; % 一阶设计 butter_HP = 1./(1 + (D./D0).^(2*n)); figure(4), mesh(butter_HP), title('巴特沃斯曲面')

!图4:巴特沃斯模板

把这两个滤镜往频域信号上一套,效果立竿见影:

% 理想低通实战 filtered_ideal = f_shift .* ideal_LP; f_ishift_ideal = ifftshift(filtered_ideal); img_back_ideal = real(ifft2(f_ishift_ideal)); % 巴特沃斯高通表演 butter_HP = 1 - butter_HP; % 秒变高通 filtered_butter = f_shift .* butter_HP; f_ishift_butter = ifftshift(filtered_butter); img_back_butter = real(ifft2(f_ishift_butter));

最后对比看看处理效果:

% 作品展示环节 figure(5) subplot(121),imshow(img_back_ideal,[]),title('理想低通:柔光效果') subplot(122),imshow(img_back_butter,[]),title('巴特沃斯高通:边缘提取')

!图5:对比效果

玩的时候注意几个关键点:

  1. fftshift就像个搬运工,把低频部分搬到频谱图中心
  2. 恢复图像时用real()是因为计算时可能残留微小虚部
  3. D0这个阈值相当于滤镜的力度旋钮,调太小会丢失细节

下次想更刺激的话,可以试试把巴特沃斯的阶数调高,看看会不会出现类似理想滤波器的效果。或者做个滑块交互界面,实时看滤镜变化——不过那就是另一个故事了。

http://www.jsqmd.com/news/139813/

相关文章:

  • 元旦
  • 数据增强-window warping
  • 2025年末GEO优化公司优质实力推荐清单:优质公司核心竞争力全解析 - 速递信息
  • 知名AI搜索优化公司推荐,南方网通引领行业新风尚 - 工业设备
  • SQL 经典面试题
  • 从化精品咖啡推荐:TOP5选择攻略 - 品牌测评家
  • 【电动车】基于多目标优化遗传算法NSGAII的峰谷分时电价引导下的电动汽车充电负荷优化研究附Matlab代码
  • 2025国内最新工业通风软管厂家 TOP5 评测!服务于广州广东等地优质企业榜单发布,优质公司赋能各行业通风系统升级 - 全局中转站
  • 2025信创大事件盘点:从“根基”到“生态”,自主之路迈入新纪元
  • linux命令
  • 信誉好、实力强的 AI 搜索优化公司推荐 - 工业品网
  • 2025年终AI搜索优化服务商TOP推荐:影响大模型答案的核心变量全解析 - 速递信息
  • 从化精品咖啡店排名:权威榜单与深度测评 - 品牌测评家
  • 试验任务6
  • 强化学习人类反馈新训练法:SeRA算法详解
  • 抽象
  • 2025国内最新风管/通风管/软管/高温管/伸缩管品牌首要推荐嵘鑫风管:服务于广州广东湖南等地,优质厂家深耕通风领域,这家实力出圈 - 全局中转站
  • 2025年终AI搜索优化服务商优质推荐:2025年度最佳实战效果榜单 - 速递信息
  • 有实力且靠谱!售后完善的 AI 搜索优化专业公司推荐 - 工业品网
  • 实用指南:2025认证杯数学建模D题思路分享(附源码,论文)
  • uniapp开发微信公众号使用fixed固定定位,苹果手机出现内容不显示问题
  • 靠谱且性价比高的 AI 搜索优化公司推荐 - 工业品网
  • agc011_e 题解
  • 开箱 NVIDIA DGX Spark:iPad mini尺寸实现千万亿次算力
  • 有实力的AI搜索优化品牌企业,为您的业务赋能 - 工业设备
  • 服装批发市场新浪潮:数字化时代的采购决策与优选指南 - 速递信息
  • 推荐靠谱AI搜索优化企业,南方网通实力出众 - 工业设备
  • 高性价比AI搜索优化公司推荐:南方网通信誉卓越 - 工业设备
  • AI编程智能体工作原理及使用注意事项
  • 详细分析Java8中的CompletableFuture异步编程类(附Demo)