图像处理与视觉感知复习--频率域图像增强图像变换

news2024/10/25 10:33:09

文章目录

  • 图像变换与信号分解
  • 正弦信号与傅里叶级数
  • 傅里叶变换
  • 离散傅里叶变换(DFT)
  • 频率域滤波

图像变换与信号分解

空间域:就是像素域,在空间域的处理是在像素级的处理,如像素级的叠加。
频率域:任何一个波形都可以分解用多个正弦波之和。每个正弦波都有自己的频率和振幅。所以任意一个波形信号又自己的频率和振幅的集合。
为了有效和快速的对图像进行处理和分析,常常需要将原定义在图像空间的图像以某种形式转换到另外一些空间,并利用这些空间的特有性质方便地进行一定的加工,最后在转换回图像空间以得到所需要的效果。这些转换方法称为图像变换技术。

傅里叶变换也被喻为图像的第二种语言。

信号频谱代表了信号在不同频率分量成分的大小,能够提供比时域信号波形更直观,丰富的信息。

正弦信号与傅里叶级数

两个函数正交的充要条件是:他们的内积为0

Q&A:

  1. 怎样的信号是我们需要的“简单”信号?
    正交信号 { 正、余弦三角函数 复指数函数 正交信号 \begin{cases} 正、余弦三角函数\\ \\ 复指数函数 \end{cases} 正交信号 正、余弦三角函数复指数函数
  2. 他们遵循什么样的组合规律?

定理1:组成三角级数的函数系 1 , cos ⁡ x , sin ⁡ x , c o s 2 x , s i n 2 x , . . . , c o s   n x , s i n   n x 1, \cos x, \sin x, cos 2x, sin 2x, ..., cos\ nx, sin\ nx 1,cosx,sinx,cos2x,sin2x,...,cos nx,sin nx [ − π , π ] [- \pi, \pi] [π,π] 上正交, 即其中任意两个不同的函数之积在 [ − π , π ] [-\pi, \pi] [π,π] 上的积分等于0

定理:设周期为 2 l 2l 2l 的周期函数 f ( x ) f(x) f(x) 满足收敛定理条件,则它的傅里叶展开式为
f ( x ) = a 0 2 + ∑ n = 1 ∞ ( a n cos ⁡ n π x l + b n sin ⁡ n π x l ) 其中 { a n = 1 l ∫ − l l f ( x ) c o s n π x l d x b n = 1 l ∫ − l l f ( x ) s i n n π x l d x f(x) = \frac{a_0}{2} + \sum_{n = 1}^{\infty}(a_n \cos \frac{n\pi x}{l} + b_n \sin \frac{n \pi x}{l})\\ 其中\\ \begin{cases} a_n = \frac{1}{l} \displaystyle\int^l_{-l} f(x) cos \frac{n \pi x}{l}dx\\ \\ b_n = \frac{1}{l} \displaystyle\int^l_{-l} f(x) sin \frac{n \pi x}{l} dx \end{cases} f(x)=2a0+n=1(ancoslx+bnsinlx)其中 an=l1llf(x)coslxdxbn=l1llf(x)sinlxdx

傅里叶变换

对于周期函数我们可以通过傅里叶级数去描述任何一个周期函数。
然而,对于非周期函数,我们就需要傅里叶变换而不是傅里叶级数来描述了

连续时间傅里叶变换:
X ( j w ) = ∫ − ∞ ∞ x ( t ) e − j w t d t X(jw) = \int_{- \infty}^{\infty} x(t) e^{-jwt} dt X(jw)=x(t)ejwtdt
连续时间傅里叶反变换:
x ( t ) = 1 2 π ∫ − ∞ ∞ X ( j w ) e j w d w x(t) = \frac{1}{2\pi} \int_{-\infty}^\infty X(jw) e^{jw} dw x(t)=2π1X(jw)ejwdw
X ( j w ) X(jw) X(jw) 称为频谱密度函数,简称为频谱。

欧拉公式:
e i x = c o s x + i ⋅ s i n x , i 为虚数单位 e^{ix} = cos x + i \cdot sinx, i为虚数单位 eix=cosx+isinx,i为虚数单位
常见的傅里叶变换对

原函数象函数
e − β t u ( t ) e^{-\beta t} u(t) eβtu(t) 1 β + j w \dfrac{1}{\beta + jw} β+jw1
δ ( t ) \delta(t) δ(t) 1 1 1
1 1 1 2 π δ ( w ) 2 \pi \delta(w) 2πδ(w)
δ ( t − t 0 ) \delta (t - t_0) δ(tt0) e − j w t 0 e^{-jwt_0} ejwt0
u ( t ) u(t) u(t) 1 j w + π δ ( w ) \dfrac{1}{jw} + \pi \delta(w) jw1+πδ(w)
s i n w 0 t sin w_0 t sinw0t j π [ δ ( w + w 0 ) − δ ( w − w 0 ) ] j \pi [ \delta (w + w_0) - \delta (w - w_0) ] [δ(w+w0)δ(ww0)]
c o s w 0 t cos w_0 t cosw0t π [ δ ( w + w 0 ) + δ ( w − w 0 ) ] \pi [\delta (w + w_0) + \delta (w - w_0)] π[δ(w+w0)+δ(ww0)]

其中 u ( t ) u(t) u(t) 为单位脉冲函数 u ( t )    { 1 ,    t > 0 0 ,    t < 0 u(t)\ \ \begin{cases}1, \ \ t > 0 \\ \\ 0, \ \ t < 0 \end{cases} u(t)   1,  t>00,  t<0

傅里叶变换的性质

在这里插入图片描述
在这里插入图片描述

离散傅里叶变换(DFT)

一维离散傅里叶变换
对于一个连续函数 f ( x ) f(x) f(x) 等间隔采样可以得到一个离散序列。设采样点数为 N N N, 则这个离散序列可表示为 { f ( 0 ) , f ( 1 ) , . . . f ( N − 1 ) } \{ f(0), f(1), ... f(N-1) \} {f(0),f(1),...f(N1)}。 令 x x x 为离散时变量, u u u 为离散频率变量,则可以将离散傅里叶变换对定义为:
正变换: F ( u ) = 1 N ∑ x = 0 N − 1 f ( x ) e − j 2 π u x N ( u = 0 , 1 , 2... N − 1 ) F(u) = \dfrac{1}{N} \sum^{N - 1}_{x = 0} f(x) e^{ - \dfrac{j 2 \pi ux}{N}}(u = 0, 1, 2... N - 1) F(u)=N1x=0N1f(x)eNj2πux(u=0,1,2...N1)
逆变换: f ( x ) = ∑ u = 0 N − 1 F ( u ) e j 2 π u x N ( x = 0 , 1 , 2... N − 1 ) f(x) = \sum^{N - 1}_{u = 0} F(u) e^{\dfrac{j 2 \pi u x}{N}}(x = 0, 1, 2 ... N - 1) f(x)=u=0N1F(u)eNj2πux(x=0,1,2...N1)

二维离散傅里叶变换
F ( u , v ) = 1 M N ∑ x = 0 M − 1 ∑ y = 0 N − 1 f ( x , y ) e − j 2 π ( u x M + v y N ) F(u, v) = \dfrac{1}{MN}\sum^{M - 1}_{x = 0} \sum^{N - 1}_{y = 0} f(x, y) e^{- j 2 \pi (\dfrac{ux}{M} + \dfrac{vy}{N})} F(u,v)=MN1x=0M1y=0N1f(x,y)ej2π(Mux+Nvy)
f ( x , y ) = ∑ u = 0 M − 1 ∑ v = 0 N − 1 F ( u , v ) e j 2 π ( u x M + v y N ) f(x, y)= \sum^{M - 1}_{u = 0} \sum^{N - 1}_{v = 0} F(u, v) e^{j 2 \pi (\dfrac{ux}{M} + \dfrac{vy}{N})} f(x,y)=u=0M1v=0N1F(u,v)ej2π(Mux+Nvy)

例:
在这里插入图片描述

傅里叶比变换的幅度谱与相位谱

  • 幅度谱告诉我们图像中某种频率的成分有多少
  • 相位谱告诉我们频率成分位于图像的什么位置

通常情况我们只关心幅度谱

从幅度谱中我们可以看出明亮线反应图像的灰度级变化,这正是图像的轮廓处,明亮线和原始图像的轮廓线是垂直的。如果原始图像中有圆形区域,那么幅度谱中也呈圆形分布
在这里插入图片描述
相位谱较幅度谱更能影响图像的形状,通常,幅度决定图像的强弱,相位决定图像的频率。

频率域滤波

  • 陷波滤波器
    H ( u , v ) = { 0   , ( u , v ) = ( M / 2 , N / 2 ) 1   , 其他 H(u, v)= \begin{cases} 0\ , (u, v) = (M / 2, N / 2)\\ 1\ , 其他 \end{cases} H(u,v)={0 ,(u,v)=(M/2,N/2)1 ,其他

    • 设置 F ( 0 , 0 ) = 0 F(0, 0) = 0 F(0,0)=0(结果图像的平均值为0), 而保留其他傅里叶变换的频率成分不变
    • 除了原点处有凹陷外,其他均是常量函数
    • 由于图像平均值为0而产生整体平均灰度级的降低
    • 用于识别由特定的、局部化频域成分引起的空间图像效果
  • 低通滤波器:使低频通过而使高频衰减的滤波器

    • 被低通滤波的图像比原始图像少尖锐的细节部分,而突出平滑过渡部分
    • 对比空间域滤波的平滑处理,如均值滤波器
  • 高通滤波器:是高频通过而使低频衰弱的滤波器

    • 被高通滤波的图像比原始图像少灰度级的平滑过渡,而突出边缘等细节部分
    • 对比空间域的梯度算子、拉普拉斯算子

在这里插入图片描述
结论:

  • 高斯低通滤波器不能达到有相同截止频率的二阶巴特沃斯低通滤波器的平滑效果
  • 高斯低通滤波器没有振铃
  • 如果需要严格控制低频和高频之间截止频率的过渡,选用巴特沃斯低通滤波器,代价是可能产生振铃

重点
频率域的滤波步骤:

  1. ( − 1 ) x + y (-1)^{x + y} (1)x+y 乘以输入图像进行中心变换
    f ( x , y ) ( − 1 ) x + y ⇔ F ( u − M 2 , v − N 2 ) f(x, y) (-1)^{x + y } \Leftrightarrow F(u - \frac{M}{2}, v - \frac{N}{2}) f(x,y)(1)x+yF(u2M,v2N)

  2. 计算1中的二维离散傅里叶变换,即求 F ( u , v ) F(u, v) F(u,v)

  3. 用滤波器函数 H ( u , v ) H(u, v) H(u,v) 乘以 F ( u , v ) F(u, v) F(u,v)

  4. 计算3中结果的二维离散傅里叶逆变换

  5. 得到4中结果的实部

  6. ( − 1 ) x + y (-1)^{x+y} (1)x+y乘以5中的结果,取消输入图像的乘数

Q&A

  • 空间滤波和频率滤波的异同点?
    • 在使用非线性滤波时,应当在空间域进行处理。当使用线性滤波时,可以在空间域进行也可以在频率域进行,在空间域线性滤波时,滤波器的尺寸应该远远小于图像的尺寸。在频率域滤波,需要使用正向变换和逆变换。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1842536.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【类型转换】C++中char、char*、int、string相互转换函数及string转不同进制数函数

参考资料&#xff1a;cplusplus官方资料strtol 函数用法 总结&#xff1a; 1、这些在做编程题处理输入数据时常用&#xff0c;需要牢记。

【CT】LeetCode手撕—23. 合并 K 个升序链表

目录 题目1- 思路2- 实现⭐23. 合并 K 个升序链表——题解思路 3- ACM 实现 题目 原题连接&#xff1a;23. 合并 K 个升序链表 1- 思路 模式识别&#xff1a;合并 K 个链表 ——> 优先队列 思路 借助优先队列&#xff0c;每次从 k 个链表中&#xff0c;各取一个元素&…

前 OpenAI 首席科学家建「安全超级智能」实验室;Meta 重组元宇宙团队丨 RTE 开发者日报 Vol.228

开发者朋友们大家好&#xff1a; 这里是 「RTE 开发者日报」 &#xff0c;每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE&#xff08;Real-Time Engagement&#xff09; 领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「…

Cytoscape之操作界面介绍

Cytoscape 简介 Cytoscape是一个专注于开源网络可视化和分析的软件。软件的核心部分提供了网络显示、布局、查询等方面的基本功能。软件的核心可以通过插件架构进行扩展&#xff0c;这样就能快速地开发出新的功能。 Cytoscape 源自系统生物学&#xff0c;用于将生物分子交互网…

springboot+vue+mysql+mybatis 二手交易平台

springbootvuemysqlmybatis 二手交易平台 相关技术 javaspringbootmybatismysqlvueelementui

Jenkins For Windows编译构建C#项目环境搭建(完整版)

安装Jenkins 下载Windows安装包 官方下载地址 选择稳定版&#xff0c;这里下载的是最新版&#xff0c;如需下载指定版本点击 以前的发行版 配置java环境 下载 java jdk 17 jdk17官方下载链接 这里下载的是msi版本的安装包 安装jdk17 双击运行安装包&#xff0c;一直下…

企业微信内嵌H5项目接入聊天功能

产品需求是,在列表中把符合条件的列表接入聊天功能,以下是详细步骤: 1.引入企业微信 <script src"https://res.wx.qq.com/wwopen/js/jsapi/jweixin-1.0.0.js"></script> 2.获取wx签名(必须要) /*** 获取wx签名**/ export function getWxJsApi(data) {r…

通过Socket通信实现局域网下Amov无人机连接与数据传输

1.局域网下的通信 1.1 局域网 厂家提供的方式是通过Homer图数传工具(硬件)构建的amov局域网实现通信连接. 好处是通信距离足够长,支持150m;坏处是"局部",无法访问互联网. &#xff3b;&#xff29;&#xff2d;&#xff21;&#xff27;&#xff25;&#xff1a;…

使用Python进行音频处理和机器学习

使用Python进行音频处理和机器学习的简介 从高层次上讲&#xff0c;任何机器学习问题都可以分为三种任务&#xff1a;数据任务&#xff08;数据收集&#xff0c;数据清理和特征形成&#xff09;&#xff0c;培训&#xff08;使用数据特征构建机器学习模型&#xff09;和评估&am…

学习新语言方法总结(一)

随着工作时间越长&#xff0c;单一语言越来越难找工作了&#xff0c;需要不停地学习新语言来适应&#xff0c;总结一下自己学习新语言的方法&#xff0c;这次以GO为例&#xff0c;原来主语言是PHP &#xff0c;自学GO 了解语言特性&#xff0c;知道他是干嘛的 go语言&#xff0…

Pikachu靶场--XSS

参考借鉴 Pikachu靶场之XSS漏洞详解_pikachu xss-CSDN博客 一个视频讲清楚XSS跨站脚本&#xff08;CTF教程&#xff0c;Web安全渗透测试入门&#xff09;_bilibili 反射型xss(get) 输入payload&#xff1a;<script>alert(123)</script> 解决一&#xff1a;在URL框内…

安装MySQL5.7版本步骤遇到问题

方法一&#xff1a;下载zip版本&#xff08;我用的这个&#xff09; 参考视频&#xff08;已收藏&#xff09;&#xff1a;windows安装MySQL5.7_哔哩哔哩_bilibili 下载zip压缩包的MySQL的网址&#xff1a;上面这个视频中有哦。 my.ini文件内容如下&#xff1a; [client] p…

动手学自然语言处理:解读大模型背后的核心技术

自从 ChatGPT 横空出世以来&#xff0c;自然语言处理&#xff08;Natural Language Processing&#xff0c;NLP&#xff09; 研究领域就出现了一种消极的声音&#xff0c;认为大模型技术导致 NLP “死了”。在某乎上就有一条热门问答&#xff0c;大家热烈地讨论了这个问题。 有…

部署RAC到单实例ADG(11G)

服务器信息 主库RAC环境信息 主库RAC基本环境 节点1 节点2 OS centos 7.9 centos 7.9 数据库版本 11.2.0.4 11.2.0.4 规格 1C4G 1C4G 主机名 racdb01 racdb02 public ip 192.168.40.135 192.168.40.145 vip 192.168.40.13 192.168.40.14 private ip 192…

Pikachu靶场--文件上传

参考借鉴 Pikachu靶场之文件上传漏洞详解_皮卡丘文件上传漏洞-CSDN博客 文件上传漏洞&#xff1a;pikachu靶场中的文件上传漏洞通关_pikachu文件上传通关-CSDN博客 client check 在桌面新建一个文件夹&#xff0c;准备一个hello.php文件&#xff0c;文件写入如下代码 <?p…

【C++】类和对象(三)构造与析构

文章目录 一、类的6个默认成员函数二、 构造函数干嘛的&#xff1f;语法定义特性综上总结什么是默认构造函数&#xff1f; 三、析构函数干嘛的 &#xff1f;语法定义析构顺序 一、类的6个默认成员函数 如果一个类中什么成员都没有&#xff0c;简称为空类。空类中并不是真的什么…

还在为Android开发找不到图片测试资源发愁吗? DummyImage来助你加速开发

使用 DummyImage 模拟电影应用数据 在开发和测试过程中&#xff0c;模拟数据是不可或缺的工具。它可以帮助我们在没有真实数据的情况下测试应用程序的功能和性能。本文将介绍如何使用 [DummyImage]https://dummyimage.com生成占位符图像来模拟电影应用的数据&#xff0c;并深入…

零拷贝之MMAP:内存映射

零拷贝之MMAP:内存映射 减少cpu拷贝次数 减少时间约为1倍 import java.io.File; import java.io.RandomAccessFile; import java.nio.MappedByteBuffer; import java.nio.channels.FileChannel;//零拷贝之MMAP:内存映射 减少cpu拷贝次数 减少时间约为1倍public static void mai…

人工智能的头号威胁:投毒攻击

随着掌管数字生活入口的万亿美元俱乐部企业——苹果公司跳入人工智能&#xff08;AI&#xff09;赛道&#xff0c;AI技术民主化的大幕正式拉开&#xff0c;同时也将AI安全问题推向舆论的风口浪尖。 根据瑞银本周一的智能手机调查报告&#xff0c;在中国以外的智能手机用户中&am…

搭建取图系统app源码开发,满足广泛应用需求

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 前言 图片已成为信息传递的重要媒介&#xff0c;广泛应用于各个领域。为满足日益增长的图片需求&#xff0c;搭建一款高效的取图系统&#xff0c;可以为用户提供便捷、全面的…