一文读懂傅里叶变换处理图像的原理 !!

简介: 一文读懂傅里叶变换处理图像的原理 !!

前言

图 (a): (从左到右) (1) 原始图片 (2) 使用高斯低通滤波器 (3) 使用高斯高通滤波器. 本文中的原始图像来自OpenCV Github示例。

数字图像现在已经成为我们日常生活的一部分。因此,数字图像处理变得越来越重要。如何提高图像的分辨率或降低图像的噪声一直是人们热门话题。傅里叶变换可以帮助我们解决这个问题。我们可以使用傅立叶变换将灰度像素模式的图像信息转换成频域并做进一步的处理

今天,我将讨论在数字图像处理中,如何使用快速傅立叶变换,以及在Python中如何实现它。操作流程如下 (从左到右):

图(b)

  1. 实现快速傅里叶变换,将灰度图像转换为频域
  2. 零频域部分的可视化与集中
  3. 应用低/高通滤波器过滤频率
  4. 离散
  5. 实现快速傅里叶逆变换生成图像数据

让我们深入到每一部分,找出这些步骤背后的理论。


快速傅里叶变换

图 (c): (从左到右) (1)原始图像 (2) FFT 频谱的可视化输出 (3) 集中化 (4) 离散化 (5) 逆向FFT

与现实生活中的光波和声波不同,由于像素的不连续性,数字图像是离散的。这意味着我们应该实现离散傅立叶变换(DFT)而不是傅立叶变换。然而,离散傅立叶变换(DFT)常常太慢而不实用,这就是我选择快速傅立叶变换(FFT)进行数字图像处理的原因。

第一步:计算二维快速傅里叶变换

快速傅里叶变换(FFT)处理的结果是一个很难直接可视化的复数数组。因此,我们必须把它转换成二维空间。这里有两种方法可以可视化这个快速傅里叶变换(FFT)结果:①. 频谱;②. 相位角。

图 (d): (从左到右t) (1) 频谱 (2) 相位角

从图(d)(1)可以看出,四个角上有一些对称图案。这些图案可以在下一步中转换到图像的中心。

频谱图像中的白色区域显示出较高的频率。频谱图像中的角表示低频域。因此,结合以上两点,角上的白色区域表明:在低/零频域中存在高频率,这对于大多数图像来说是非常正常的情况。

另一方面,很难从图(d)(2)中识别出任何明显的图案,这并不代表快速傅立叶变换(FFT)的相位角完全没有用处,因为相位保留了图像所必需的形状特征。

第二步:将零频域部分移到频谱中心

二维快速傅立叶变换(FFT)具有平移和旋转特性,因此我们可以在不丢失任何信息的情况下移动频谱。我把零频域部分移到了频谱的中心,这使得频谱图像对人类更为可见。此外,这种转换可以帮助我们轻松实现高通/低通滤波器。

步骤3:与步骤2相反。将零频域部分移回原位置

步骤4:与步骤1相反。计算二维快速傅里叶逆变换。

步骤3和步骤4的过程是将频谱信息转换回灰度图像。它可以通过应用逆向移位和快速傅立叶变换(FFT)的逆运算来实现。

编码

在Python中,我们可以利用Numpy模块中的numpy.fft  轻松实现快速傅立叶变换(FFT)运算操作。

在理解了傅里叶变换背后的基本理论之后,我们就可以研究如何控制频谱输出来处理图像了。首先,我们需要了解低/高通滤波器。

低通滤波器

图 (e):低通滤波器是一种只允许低频谱通过的滤波器。图像中的低频谱意味着像素值变化缓慢。例如,图像中颜色变化较小的平滑区域(如新空白白纸的中心)被视为低频谱内容。

由于低通滤波器的输出只允许低频通过,对噪声等高频谱内容进行了阻塞,使得处理后的图像具有较少的噪声像素。因此,低通滤波器被广泛应用于图像的去噪。

高通滤波器

图(f):相反,高通滤波器是只允许高频谱通过的滤波器。图像中的高频谱意味着像素值变化很大。例如,图像中颜色变化较大的边缘区域,如两张重叠的白纸和黑纸之间的边缘,被认为是高频谱内容。

在图像中,通过做适当的重复计算来锐化原图像,能用适当的重复计算来锐化原始图像的图像,从高通滤波器的输出可获得图像中的边缘。这将增强原始图像的清晰度,使边缘更加清晰。

从图e(5)和图f(5),我们可以注意到这两个滤波器呈现不同的特性。低通滤波器倾向于保留图像中的整体信息。另一方面,高通滤波器试图辨别出图像中的变化

理想的滤波器

图(g):(从左到右)(1)使用D₀=50的低通滤波器 (2)使用D₀=50的高通滤波器

公式 (1):在理想低通滤波器的公式中,D₀是合理常量,D(u,v)是频域中一点(u,v)与频域矩形中心之间的距离

在理想滤波器背后的概念非常简单:给定一个半径值D₀作为阈值,低通滤波器图(g)(1)在阈值下H(u,v)等于1,在阈值以上H(u,v)等于0。

公式(2):在理想高通滤波器的公式中,D₀是合理常量,D(u,v)是频域中一点(u,v)与频域矩形中心之间的距离

巴特沃思(Btterworth)滤波器

图(h):(从左到右) (1) 使用n=20,D₀=50的Butterworth 低通滤波器(2) 使用n=20,D₀=50的Butterworth 高通滤波器

图 (i):(从左到右) (1)使用n=3的Butterworth 低通滤波器 (2)使用n=3的Butterworth高通滤波器

公式(3):在Butterworth低通滤波器的公式中, D₀是一个合理常量, D(u,v)是频域中一点(u,v)与频域矩形中心之间的距离

与理想滤波器不同的是,巴特沃斯滤波器没有明显的不连续性,使得通过的频率和被过滤的频率之间有明显的边界。巴特沃斯滤波器在函数中引入了一个新的参数n。当操作n时,它影响着通过的频率和被过滤的频率之间边界的清晰程度。图(h)和图(i)

公式(4):在Butterworth高通滤波器的公式中, D₀是一个合理常量,D(u,v)是频域中一点(u,v)与频域矩形中心之间的距离

高斯(Gaussian)滤波器

图 (j):(从左到右) (1) 使用D₀=50的高斯低通滤波器 (2) 使用D₀=50的高斯低通滤波器

公式 (5):在高斯低通滤波器的公式中,D₀是一个合理常量,D(u,v)是频域中一点(u,v)与频域矩形中心之间的距离

与巴特沃斯滤波器相比,高斯滤波器产生的边界更平滑。通过的频谱和被过滤的频谱之间的边界非常模糊,这便可以更平滑的处理图像。

公式 (6):在高斯高通滤波器的公式中,D₀是一个合理常量,D(u,v)是频域中一点(u,v)与频域矩形中心之间的距离

滤波器比较

图 (k):(从左到右) 理想滤波器, n=10的Butterworth滤波器和D₀=50 的高斯滤波器

把所有不同的过滤器放在图(k)中,以总结我们在过滤器设计中所做的工作。从左到右,圆的边缘变得模糊,这将对输出结果产生不同的影响

总体上来看,巴特沃斯滤波器是介于理想滤波器和高斯滤波器之间的滤波器。

低通滤波器的结论

图 (l): (从左到右) (1) 理想滤波器的输出 (2)巴特沃斯滤波器的输出 (3) D₀=50时高斯滤波器的输出

图(l)显示所有三个滤波器都是低通滤波器,因为输出图像保留了整个图像信息。此外,我们可以很容易地注意到高斯滤波器由于低失真比其他两个滤波器表现更好。理想滤波器产生大量波形噪声的原因是,理想滤波器的设计阻塞了距离原点一定半径以外的所有信息。因此,有些信息会在没有任何平滑的情况下急剧中断。相反,巴特沃斯滤波和高斯滤波是平滑的阻塞在距离原点一定半径之外的信息,这使得图像更平滑,失真更小。

高通滤波器的结论

图 (m): (从左到右) (1) 理想滤波器的输出 (2)巴特沃斯滤波器的输出 (3) D₀=50时高斯滤波器的输出

毫无疑问,图(m)中的滤波器是高通滤波器,因为输出结果只捕获边缘。在滤波器中,高通滤波器结果的差异类似于低通滤波器结果。与巴特沃斯滤波器和高斯滤波器相比,理想滤波器的滤波结果有很多失真。

总结

傅里叶变换是处理二维信息的有力工具。FFT允许我们在另一个维度处理图像,这带来了更大的灵活性。

来源:小白学视觉

目录
相关文章
|
6天前
|
人工智能 定位技术 SEO
我学 GEO 第 15 天:终于知道AI GEO该如何做?
我是暴走的莉莉酱,边旅行边研究AI GEO的数字游民。专注普通人如何提升“AI可见度”——让AI在回答用户问题时准确识别、理解并推荐你。不讲玄学,只做可测、可调、可持续的GEO实践。
422 125
|
8天前
|
机器学习/深度学习 人工智能 调度
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
HappyHorse 1.1 是新一代视频生成大模型,全面升级动态表现力、角色一致性、指令遵循、视觉质感与音画协同能力。支持I2V/T2V/R2V三类生成,适配短剧、电商广告、品牌营销等场景,提供高质、流畅、可控的AI视频生产力。
713 5
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
|
6天前
|
缓存 人工智能 运维
阿里云618百炼大模型Qwen3.7-Max功能、免费试用、订阅计费、配置接入详解
Qwen3.7-MAX是阿里云百炼平台推出的通义千问3.7系列旗舰大语言模型,专为智能体时代复杂任务打造,依托阿里云全域算力与自研技术,在逻辑推理、长文本处理、代码工程、长周期自主执行等领域达到行业顶尖水平。2026年618期间,该模型推出多重免费试用权益、按量计费5折、订阅套餐优惠等专属福利,覆盖个人开发者、团队与企业全场景需求,以下从核心功能、免费试用、订阅计费、配置接入四方面展开详细解析。
416 123
|
4天前
|
人工智能 自然语言处理 API
阿里云Token Plan团队版解析:功能、三档套餐与省钱订阅指南
阿里云百炼平台推出的Token Plan团队版,是面向企业与团队的AI大模型订阅服务,以Credits为统一计量单位,整合文本与图像生成模型,提供团队管理、数据安全、多工具兼容等核心能力,解决团队零散订阅AI服务的管理混乱、成本失控、数据安全等痛点。本文将从核心定位、套餐详情、计费规则、团队管理、工具兼容、便宜订阅技巧等方面,全面解析Token Plan团队版,帮助企业与团队高效、低成本地使用AI服务。
309 108
|
5天前
|
存储 人工智能 数据可视化
别再手动复制 Skill 了:多 Agent 时代的 Skill 管理方案
多 Agent 场景下 Skill 的统一管理与同步。
262 123
|
19天前
|
缓存 测试技术 API
Qwen 3.7 Plus 与 Max 实测:性价比与多模态能力差异解析(2026)
2026 年 6 月 1 日,阿里悄无声息地发布了 Qwen 3.7 Plus,距 Qwen 3.7 Max 上线刚好 11 天。同样的 1M 上下文,同样的 35 小时自治上限。但价格才是头条:Plus 是 0.40/M输入,Max是 2.50/M——便宜约 6 倍——并且还能看图、看视频。Vision Arena 上 Plus 已经排到 #16。所以这周真正值得讨论的问题不是”要不要为视觉能力买单”,而是”Max 凭什么用 6 倍价格换来 2 个百分点的 benchmark 领先”。
|
12天前
|
缓存 人工智能 运维
GLM 5.2自托管全流程实战:硬件选型、vLLM/SGLang部署与成本盈亏测算
2026年智谱发布GLM 5.2超大混合专家模型,区别于以往仅开放API的闭源大模型,该模型权重以MIT开源协议对外发布,企业与开发者可完整下载、本地审计、私有化部署,实现数据不出环境、自定义微调、自主调度推理资源。GLM 5.2拥有753B总参数,原生支持百万级上下文窗口,在代码生成、长文档推理、数学逻辑等多项基准测试中对标国际顶尖商用模型,是首款可完整自托管的前沿代码向大模型。
940 0
|
13天前
|
Linux 程序员 数据格式
【2026最新】Notepad++下载、安装和使用一篇搞定(附中文版安装包)
Notepad++ 是一款免费开源、轻量高效的 Windows 文本编辑器,支持 C/Python/HTML 等 80+ 语言语法高亮、代码折叠、正则替换、编码转换及插件扩展,专为程序员与文本处理用户打造,完美替代系统记事本。(239字)