傅里叶变换尺度变换性质_图像处理之傅里叶变换

article/2025/6/18 0:01:54

如果你对傅里叶变换到底是干嘛的不太熟悉,可参考:0704:傅里叶变换

这里主要说一下傅里叶变换应用于图像处理,显示原图像的频谱图像.

在Python中,实现傅里叶的变换主要有两种方法,一种是使用numpy,一种是OpenCV.

1.numpy

① 傅里叶变换

函数1:numpy.fft.fft2()

功能:实现傅里叶变换;

返回:一个复数数组.

ed8a3babe5931eba12e58eab2dfe184b.png
图1 fft2函数
复数包括实数与虚数,复数可以写成: z=a+bi .
其中a为实部,b为虚部,i为虚数单位,当a、b都不为0时,
z为虚数.当b=0时,z为实数. 当a=0时,z为纯虚数.

函数2:numpy.fft.fftshift()

功能:将零频率分量移到频谱中心.

c3a4e5d53fcb3d93e2d00b25231ace36.png
图2 fftshif函数

函数3:20*np.log(np.abs(fshift))

功能:傅里叶变换得到的结果是一个复数数组,不能直接用于显示图像,要想得到频谱灰度图像,我们需要一个映射,把复数映射[0, 255]之间.

af0c155b94200fd68721e82bde68424e.png
图3 映射函数

实验1:

import 

3a69543fcd4c26e1439200807b8c2668.png
图4 原图像与频谱图像

Q1:现在我们得到频谱图,现在我们应该想一个问题,我们对图像作傅里叶变换是为了啥?

A1:

★ 傅里叶变换变换可以得到高频与低频,针对高频与低频处理,可以实现不同的目的;

★ 傅里叶变换是可逆的,通过逆傅里叶变换,可以恢复原图像;

★ 如果对高频与低频进行处理,然后进行逆傅里叶变换,所做的处理会反映到逆变换图像上.

附加:在数据可视化方面,推荐看这篇文章:0704:matplotlib: 数据可视化

前面提到了逆傅里叶变换,那怎么做呢?

② 逆傅里叶变换

函数:np.abs(i_img)

功能:设置值范围

3875fcdddbfe5fd758813b63ed6f0387.png
图5 设置值范围

实验2:

import 

4ba67276a46f5194567685e0ab53c498.png
图6 原图像与逆变换图像

2. 高通滤波

① 低频、高频

低频对应图像内变化较为缓慢的灰度分量. 例如:在一幅广袤的绿色大草原上,一大片绿色就代表着低频(没什么变化).

高频对应图像内变化较快的灰度分量,是由灰度的尖锐过度造成的,例如:如果这个大草原上,有一只雄狮,狮子的边缘就代表着高频.

② 滤波

接受(通过)或拒绝一定频率的分量,就称为为滤波.

通过低频的滤波器,称为低通滤波器.

通过高频的滤波器,称为高能滤波器.

③ 频域滤波

Q2:前面,我们已经说过傅里叶变换,逆傅里叶变换,现在我们该怎么在频域的基础上,对图像进行处理呢?

A2:对图像进行傅里叶变换,修改频谱图像,然后IDFT返回到图像域.

特殊目的:图像增强、图像去噪、边缘检测、特征提取、压缩、加密等等.

衰减高频而通过低频,低通滤波器,将模糊一幅图像.

衰减低频而通过高频,高通滤波器,将增强尖锐的边缘,但是会导致图像的对比度下降(丢失了低频细节信息).

★ 高通滤波

频谱图像中,中间较亮的部分是低频信息(像素值比较大),我们可以通过设置低频部分的像素值来减弱低频,如图7所示:

3285310b77f7cd46a2f5ae0cf8190a07.png
图7 高通滤波

44bb6eccac10ae8ccdda407cdf856df4.png
图8 频谱腌膜图像

实验3:

import 

008c3f436bf586c4f1a775c7bc880786.png
图9 高通滤波效果

3.OpenCV

① 傅里叶变换

函数2:cv2.dft()

c0e33fffab2ada301122fa4d0435eed8.png
图10 dft函数

函数2:

e8fcbdd46371f14a1a20a13b54904156.png
图11 fftshift函数

函数3:

cv2.magnitude(参数1,参数2)

其实这个函数的作用与numpy数组:np.abs(fshift)是一回事,np.abs(fshift)是求复数数组fshift中每个复数的大小(注:fshift是一个 一维的复数数组),而cv2.dft()返回的是一个 二维数组(一维是复数的实部,一个是复数的虚部).

51eea2ba1e31c27dbeacd024df367053.png
图12 magnitude函数

实验4:

import 

4a464b8aab1c4b1ffa0cf340fe6f27c1.png
图13 效果图

② 逆傅里叶变换

函数1:cv2.idft()

aedb46bb27c3991c9d3b7ce246210d2d.png
图14 idft函数

函数2:numpy.fft.ifftshift()

13a4ffa4a8b9cfc0f60bfb62c12c841e.png
图15 ifftshift函数

实验5:

import 

c47ed38cc0c8078bda1f02ddea86475b.png
图16 逆傅里叶变换

4.低通滤波

低通滤波器:去掉高频,保留低频

c59faffd618d1cdb311318133e247521.png
图17 低通滤波器

实验6:

import 

2ff9ba89dd13a4e16850bacb5aabbbdb.png
图18 低通滤波

http://chatgpt.dhexx.cn/article/wGfy4hI0.shtml

相关文章

傅里叶变换的基本性质

文章目录 傅里叶变换的基本性质线性性质平移性质对称性质卷积性质 傅里叶变换的基本性质 总的来说,傅里叶变换有这样几个性质: 线性性质(Linearity)平移性质(Shift)对称性质(Symmetry&#xf…

傅里叶变换的性质(一)

线性性质 阶跃函数的傅里叶变换就是通过线性性质由直流分量和符号函数逼近出来的。 除了最基本的线性特性外,上节提到的对称性,也是傅里叶变换的一个重要性质。 奇虚实偶性 F ( − w ) ∣ F ( w ) ∣ e − j ϕ ( w ) R ( w ) − j X ( w ) F ∗ ( w …

【数字信号处理】傅里叶变换性质 ( 序列傅里叶变换共轭对称性质 | 实序列的幅频特性偶对称 | 实序列相频特性奇对称 | 示例说明 )

文章目录 一、实序列的 幅频特性 和 相频特性 对称性质二、性质由来三、示例说明 一、实序列的 幅频特性 和 相频特性 对称性质 如果 x ( n ) x(n) x(n) 序列是 " 实序列 " , 则有 : X ( e j ω ) X ∗ ( e − j ω ) X(e^{j \omega}) X^*(e^{-j \omega}) X(ejω)…

【傅里叶变换】5. 傅里叶变换的性质

f ( t t 0 ) < − > e j w t 0 X ( w ) f(tt_0) <-> e^{jwt_0}X(w) f(tt0​)<−>ejwt0​X(w) e j w 0 t f ( t ) < − > X ( w ∓ w 0 ) e^{jw_0t}f(t) <-> X(w∓w_0) ejw0​tf(t)<−>X(w∓w0​) 【 1. 线性 】 例&#xff1a; 【 2.…

《工程伦理》网课第二章课后习题答案

1.单选题 (1分) 2.单选题 (1分) 3.单选题 (1分) 4.单选题 (1分) 5.单选题 (1分) 6.多选题 (2分) 7.多选题 (2分) 8.多选题 (2分) 9.多选题 (2分) 10.判断题 (1分) 11.判断题 (1分) 12.判断题 (1分) 13.判断题 (1分) 14.判断题 (1分) 《工程伦理》网课第一章课后习题答案_u01189…

《带您走进西藏》网课章节测验及答案

带您走进西藏 西藏的一切&#xff0c;都让人的灵魂得到宁静。那些湖水、云朵、雪山、僧侣&#xff0c;都如镜子一样&#xff0c;映照出人们心灵的倒影。该课程主要介绍西藏的风土人情、文化习俗&#xff0c;带你领略西藏各地区的风景以及进藏的注意事项及准备工作。通过学习课…

【脑洞大开】智慧海洋网课答案

21世纪是海洋世纪,谁掌握了海洋,这门课程是由刘振泽老师主讲课程,相信吉林大学大学很多同学都认识, 那么智慧海洋尔雅答案下面开始。超星学习通智慧海洋答案 刘振泽 1.2 1【单选题】下列关于鲨鱼说法错误的是()。C A、在鲨鱼界,不少鲨鱼的性格都很温和。 B、鲨鱼的天敌…

网课《科研伦理与学术规范》课后答案2022-2023第二章

网课《科研伦理与学术规范》课后答案2022-2023第二章 网课《科研伦理与学术规范》课后答案2022-2023第二章 2022.11.11

知道python语言应用2020答案_热点:大学moocPython语言基础与应用答案

2020年智慧树网课答案为您详细解读azMisb热点&#xff1a;大学moocPython语言基础与应用答案的详情,题主的教授应该是想要同学们找出一个值得研究和讨论的theory&#xff0c;简单来说就是你论文探讨的中心。然后需要你们定topic&#xff0c;然后搜索大量靠谱的资料&#xff0c;…

尔雅大学计算机基础知识点,超星尔雅_大学计算机基础_章节测试答案

为把以&#xff0c;超星础章猛发我国修订学技制度准化展要制度工作求的和科程建一项局部经济是工设标适应社会术迅。 尔雅。 大学标本戏B.宣录像旅游电化传册方式.游教育是A。无色蓝色红色黄色&#xff0c;的色颜色金橙Ⅱ是素。变成淀粉遇碘颜色试液&#xff0c;蓝紫.棕红色黄色…

程序员如何开始做一个自己的 Side Project?

此系列文章我们开始聊一些软件开发人员如何开始动手写一些自己项目&#xff08;Side Project&#xff09;的思路与方法&#xff0c;以及过程中可能需要准备的知识&#xff0c;并分享一些相关的资源给大家。 1. 什么是 Side Project Side Project 对应的中文是副业、业余项目或…

如何用自己电脑做服务器,绑定域名建一个个人网站

推荐一个专注于Java的小众技术社区&#xff1a;Java之音 使用自己的电脑&#xff0c;下载一个tomcat服务器&#xff0c;并将域名解析到本机&#xff0c;这样就可以发布自己的网站了。不过&#xff0c;关机之后网站便登不上去了。这样做只是为了我们可以更好的开发调试自己的工…

【网站】如何做一个自己的视频网站

很喜欢一个小姐姐的影视作品&#xff0c;但是网上资源少的可怜&#xff0c;所以想去做一个视频网站&#xff0c;满足大家的观看需求。趁着天气凉快&#xff0c;开始行动&#xff01; 1.前端 网上查到很多开源的视频插件&#xff0c;最后我用到videojs这一款开源的视频播放器。…

自己一人如何去做一个web项目

三思而后行 当你被自己的想法激起心中豪情的时候&#xff0c;一定要按下心情&#xff0c;冷静的思考一下&#xff0c;思考点包括以下几个部分&#xff1a; 这个Web项目所需要的知识和能力是否在自己所掌握的范围内&#xff0c;这个是技术前提&#xff0c;如果项目本身技术复杂度…

nas怎么做网站服务器,如何在群晖nas搭建自己的网站?

1.下载如下5个软件 Web starion&#xff1a;用来配置WEB服务器&#xff0c;将来绑定域名就需要在这里进行。 MariaDB:必须要安装的基础程序&#xff0c;不然phpmyadmin无法运行。 Phpmyadmin&#xff1a;用于管理网站的数据库&#xff0c;不管您用哪款建站程序&#xff0c;都必…

如何建立一个属于自己的网站(小白教程)

多人都希望能有一个自己的博客网站&#xff0c;但是却只能停留在想的阶段&#xff0c;毕竟很多人其实是不懂开发技术的&#xff0c;但是实际上一个博客网站远远没有我们想想的那么复杂&#xff0c;即便是我们不懂技术也可以做一个自己的网站。那么接下就是具体操作了,那么我们首…

手把手教你做一个网页

摘要&#xff1a;搞嵌入式的要学习一点前端吗&#xff1f;那么前端是什么&#xff1f;是网页是网站吗&#xff1f;是也不全是。前端技术一般分为前端设计和前端开发&#xff0c;前端设计一般可以理解为网站的视觉设计&#xff0c;前端开发则是网站的前台代码实现&#xff0c;包…

从零开始搭建服务器,拥有一个属于自己的网站

创建一个属于自己&#xff0c;任何人都可以访问的网站&#xff08;最最最详细的步骤&#xff09; 这篇文章将从购买服务器一直到最后网站完成备案&#xff0c;详细说明整个过程&#xff0c;就算是不懂编程的人照样可以拥有属于自己的服务器和网站 必备条件&#xff1a; 1&…

做一个古诗词的html页面,制作一个古诗词的网页

如何制作一个属于自己的网页 做一个网站,需要注册域名、空间、制作网页。 不管制作什么样的网站,有二个必须的工作,一是注册域名,二是租用虚拟主机空间. 首先是注册域名。 域名注册.com(国际域名)和.cn(国内域名)为宜,域名最好不要太长、且有一定的意义、容易记,现在好的…