傅里叶变换的一些总结
傅里叶变换的一些总结
1.三角函数的正交性
三角函数系:{1(cos(0x)),sin(x),cos(x),sin(2x),cos(2x),sin(3x),cos(3x),...,sin(nx),cos(nx)}\{ 1(cos(0x)), sin(x),cos(x),sin(2x),cos(2x),sin(3x),cos(3x),...,sin(nx),cos(nx) \}{1(cos(0x)),sin(x),cos(x),sin(2x),cos(2x),sin(3x),cos(3x),...,sin(nx),cos(nx)}
从三角函数系中任选两个函数,他们的乘积在[−π,π][-\pi,\pi][−π,π]上的积分具有一定的正交性。(正交,理解:两个二维向量,内积为0,图像上表示为垂直关系,例子:向量a={a1,a2,...,an}a = \{a_1,a_2,...,a_n\}a={a1,a2,...,an}和向量b={b1,b2,...,bn}b = \{b_1,b_2,...,b_n\}b={b1,b2,...,bn}的内积为0,即a1b1+a2b2+...+anbn=0a_1b_1 + a_2b_2 + ... + a_nb_n = 0a1b1+a2b2+...+anbn=0)。
∫−ππsin(nx)cos(mx)=0∫−ππsin(nx)sin(mx)=0,m≠n∫−ππcos(nx)cos(mx)=0,m≠n\int_{-\pi}^{\pi} sin(nx)cos(mx) = 0 \\ \int_{-\pi}^{\pi} sin(nx)sin(mx) = 0,~~~~ m \ne n \\ \int_{-\pi}^{\pi} cos(nx)cos(mx) = 0,~~~~ m \ne n \\ ∫−ππsin(nx)cos(mx)=0∫−ππsin(nx)sin(mx)=0, m=n∫−ππcos(nx)cos(mx)=0, m=n
证明,利用三角函数积化和差化简。
2.周期为2π2\pi2π的连续函数
f(t)=f(t+2π)f(t) = f(t + 2\pi)f(t)=f(t+2π),展开为傅里叶级数为:
f(t)=a0+a1cos(t)+b1sin(t)+a2cos(2t)+b2sin(2t)+...+a∞cos(∞t)+b∞sin(∞t)=a0/2+∑n=1∞ancos(nt)+∑n=1∞bnsin(nt)(1)f(t) = a_0 + a_1cos(t) +b_1sin(t)+a_2cos(2t) + b_2sin(2t) +...+a_\infty cos(\infty t)+b_\infty sin(\infty t) \\ = a_0/2 + \sum_{n=1}^\infty a_ncos(nt) + \sum_{n=1}^\infty b_nsin(nt) \tag {1} f(t)=a0+a1cos(t)+b1sin(t)+a2cos(2t)+b2sin(2t)+...+a∞cos(∞t)+b∞sin(∞t)=a0/2+n=1∑∞ancos(nt)+n=1∑∞bnsin(nt)(1)
a0=1π∫−ππf(t)dtan=1π∫−ππf(t)cos(nt)dtbn=1π∫−ππf(t)sin(nt)dt(2)a_0 = \frac 1\pi\int_{-\pi}^{\pi}f(t)dt \\ a_n = \frac 1\pi\int_{-\pi}^{\pi}f(t)cos(nt)dt \\ b_n = \frac 1\pi\int_{-\pi}^{\pi}f(t)sin(nt)dt \tag{2} a0=π1∫−ππf(t)dtan=π1∫−ππf(t)cos(nt)dtbn=π1∫−ππf(t)sin(nt)dt(2)
求解a0a_0a0,对等式(1)(1)(1)两边求积分∫−ππdt\int_{-\pi}^{\pi}dt∫−ππdt,∫−ππ∑n=1∞bnsin(nt)dt=0\int_{-\pi}^{\pi}\sum_{n=1}^\infty b_nsin(nt)dt=0∫−ππ∑n=1∞bnsin(nt)dt=0 ,∫−ππ∑n=1∞ancos(nt)dt=0\int_{-\pi}^{\pi}\sum_{n=1}^\infty a_ncos(nt)dt=0∫−ππ∑n=1∞ancos(nt)dt=0
求解ana_nan,对等式(1)(1)(1)两边求积分∫−ππcos(kx)dt\int_{-\pi}^{\pi}cos(kx)dt∫−ππcos(kx)dt,化简。
求解bnb_nbn,对等式(1)(1)(1)两边求积分∫−ππsin(kx)dt\int_{-\pi}^{\pi}sin(kx)dt∫−ππsin(kx)dt,化简。
3.周期为2l的连续函数
f(t)=f(t+2l)f(t) = f(t+2l)f(t)=f(t+2l),其傅里叶级数为:
f(t)=a0/2+∑n=1∞ancos(nωt)+∑n=1∞bnsin(nωt)(3)f(t) =a_0/2 + \sum_{n=1}^\infty a_ncos(n\omega t) + \sum_{n=1}^\infty b_nsin(n\omega t) \tag {3} f(t)=a0/2+n=1∑∞ancos(nωt)+n=1∑∞bnsin(nωt)(3)
利用周期为2π2\pi2π的傅里叶级数进行换元(换元法),令x=πt/l,t=lx/πx = \pi t/l,t = lx/\pix=πt/l,t=lx/π。
构造函数:f(t)=f(lx/π)=g(x)f(t) = f(lx/\pi) = g(x)f(t)=f(lx/π)=g(x),根据(1)和(2),g(x)g(x)g(x)可以分解为傅里叶级数。将x替换为t,进行化简。其中,周期T=2l,ω=2πTT=2l,\omega = \frac {2\pi}TT=2l,ω=T2π
a0=2T∫−llf(t)dtan=2T∫−llcos(nωt)f(t)dtbn=2T∫−llsin(nωt)f(t)dt(4)a_0 = \frac 2T \int_{-l}^l f(t)dt \\ a_n = \frac 2T \int_{-l}^l cos(n\omega t)f(t)dt \\ b_n = \frac 2T \int_{-l}^l sin(n\omega t)f(t)dt \tag{4} a0=T2∫−llf(t)dtan=T2∫−llcos(nωt)f(t)dtbn=T2∫−llsin(nωt)f(t)dt(4)
4.连续周期傅里叶级数的指数形式
欧拉公式:eiθ=cos(θ)+isin(θ)e^{i\theta} = cos(\theta) + isin(\theta)eiθ=cos(θ)+isin(θ),
正弦函数可以使用指数表示:cos(θ)=eiθ+e−iθ2,sin(θ)=−i(eiθ−e−iθ2)cos(\theta) = \frac{e^{i\theta} + e^{-i\theta}}{2},sin(\theta) = -i(\frac{e^{i\theta} - e^{-i\theta}}{2})cos(θ)=2eiθ+e−iθ,sin(θ)=−i(2eiθ−e−iθ)
将正弦函数带入公式(4),得:
f(t)=1T∑n=−∞∞CneinωtCn=∫0Tf(t)e−nωtdt(5)f(t) = \frac 1T \sum_{n=-\infty}^{\infty}C_ne^{in\omega t} \\ Cn =\int_{0}^{T}f(t)e^{-n\omega t} dt\tag{5} f(t)=T1n=−∞∑∞CneinωtCn=∫0Tf(t)e−nωtdt(5)
其中,CnC_nCn为傅里叶系数,ω=2πT\omega = \frac {2\pi}Tω=T2π为基角频率,TTT为周期。
5.连续函数的傅里叶变换
公式(5)中,函数的周期为T,若T−>∞T->\inftyT−>∞,则函数并不是周期函数,ω=2πT\omega = \frac {2\pi}Tω=T2π,T−∞,ω−0,ω=nx+1ω−nxω=ΔωT-\infty,\omega-0,\omega = n_{x +1}\omega -n_{x}\omega = \Delta\omegaT−∞,ω−0,ω=nx+1ω−nxω=Δω。
感受现象,若为非周期函数,函数的周期趋近于∞\infty∞,而ω、Δω\omega、\Delta\omegaω、Δω趋近于0,离散的频谱变成了连续的频谱。
根据积分的基本定义,黎曼和,即∫abf(x)dx=(f(b)−f(a))∗Δx\int_a^bf(x)dx = (f(b) - f(a)) *\Delta x∫abf(x)dx=(f(b)−f(a))∗Δx,对f(t)f(t)f(t)和CnC_nCn进行变换:
Cn=∫0Tf(t)e−nωtdt=∫−∞∞f(t)e−nωtf(t)=1T∑n=−∞∞Cneinωt=Δω2π∑n=−∞∞Cneinωt=12π∫−∞∞Cneinωtdnω=12π∫−∞∞F(ωx)eiωxtdωx(6)Cn =\int_{0}^{T}f(t)e^{-n\omega t} dt \\ = \int_{-\infty}^{\infty}f(t)e^{-n\omega t} \\ f(t) = \frac 1T\sum_{n=-\infty}^{\infty} C_n e^{in\omega t} \\ = \frac {\Delta\omega}{2\pi} \sum_{n=-\infty}^{\infty} C_n e^{in\omega t} \\ = \frac {1}{2\pi}\int_{-\infty}^\infty C_n e^{in\omega t}dn\omega \\ = \frac {1}{2\pi}\int_{-\infty}^\infty F(\omega_x) e^{i\omega_x t}d\omega_x \tag{6} Cn=∫0Tf(t)e−nωtdt=∫−∞∞f(t)e−nωtf(t)=T1n=−∞∑∞Cneinωt=2πΔωn=−∞∑∞Cneinωt=2π1∫−∞∞Cneinωtdnω=2π1∫−∞∞F(ωx)eiωxtdωx(6)
其中记nω=ωx,Cn=F(ωx)n\omega = \omega_x,Cn = F(\omega_x)nω=ωx,Cn=F(ωx)。
总结,连续函数的傅里叶变换为
F(ωx)=∫−∞∞f(t)e−iωxtd(t)f(t)=12π∫−∞∞F(ωx)eiωxtdωx(7)F(\omega_x) =\int_{-\infty}^\infty f(t)e^{-i\omega_x t} d(t)\\ f(t)= \frac {1}{2\pi}\int_{-\infty}^\infty F(\omega_x) e^{i\omega_x t}d\omega_x \tag{7} F(ωx)=∫−∞∞f(t)e−iωxtd(t)f(t)=2π1∫−∞∞F(ωx)eiωxtdωx(7)
6.周期序列的离散傅里叶变换
fN(k)f_N(k)fN(k)表示一个周期为N的离散时间序列,fN(k)=fN(k+lN)f_N(k) = f_N(k+lN)fN(k)=fN(k+lN),对于连续周期信号,可以分解为一系列角频率为nω(n=0,1,−1,2,−2,...,)n\omega(n=0,1,-1,2,-2,...,)nω(n=0,1,−1,2,−2,...,)的虚指数之和eiωnte^{i\omega n t}eiωnt,同样周期为N的序列同样可以展开为多个虚指数之和eiωnk=ein2πNke^{i\omega n k} = e^{i n \frac {2\pi}N k}eiωnk=einN2πk,这些虚指数序列需要满足:ein2πNk=ei(n+lN)2πNke^{i n \frac {2\pi}N k} = e^{i (n + lN) \frac {2\pi}Nk}einN2πk=ei(n+lN)N2πk , (理由,离散序列的频域是周期的,周期同样为N),因此周期序列fN(k)f_N(k)fN(k)的傅里叶级数展开式可以使用有限项表示,取第一个周期n=0,1,2,...,N−1n=0,1,2,...,N-1n=0,1,2,...,N−1,则其展开式可以写为:
fN(k)=∑k=0N−1CnejnωkCn=1N∑k=0N−1fN(k)e−jnωk=1NFn(nω)Fn(nω)=∑k=0N−1fN(k)e−jnωk(8)f_N(k) = \sum_{k=0}^{N-1}C_ne^{jn\omega k} \\ C_n = \frac 1N \sum_{k=0}^{N-1}f_N(k)e^{-jn\omega k} = \frac 1N F_n(n\omega) \\ F_n(n\omega) = \sum_{k=0}^{N-1}f_N(k)e^{-jn\omega k} \tag{8} fN(k)=k=0∑N−1CnejnωkCn=N1k=0∑N−1fN(k)e−jnωk=N1Fn(nω)Fn(nω)=k=0∑N−1fN(k)e−jnωk(8)
公式8中,ω=2πN\omega=\frac {2\pi}{N}ω=N2π是一个常数,离散傅里叶系数变换以及逆变换。
7.有限长序列的离散傅里叶变换 (周期)
为了引用周期序列的知识,将有序序列f(n)f(n)f(n)延扩为周期序列fN(k)f_N(k)fN(k).
对于周期序列fn(k)f_n(k)fn(k),第一个周期k=0,...,N−1k=0,...,N-1k=0,...,N−1定义为主值区间,可以将f(k)f(k)f(k)看作fN(k)f_N(k)fN(k)的主值区间序列。根据公式8,周期序列的傅里叶变换都只限于主值区间,因而将种种变换引申到相同的有限长序列,定义为有限长序列的离散傅里叶变换。
F(n)=DFT[f(k)]=∑k=0N−1f(k)e−i2πNknf(k)=iDFT[F(n)]=1N∑k=0N−1f(k)ei2πNknF(n) = DFT[f(k)] = \sum_{k=0}^{N-1}f(k)e^{-i\frac {2\pi}Nkn} \\ f(k) = iDFT[F(n)] = \frac 1N \sum_{k=0}^{N-1}f(k)e^{i\frac {2\pi}Nkn} F(n)=DFT[f(k)]=k=0∑N−1f(k)e−iN2πknf(k)=iDFT[F(n)]=N1k=0∑N−1f(k)eiN2πkn
参考:
https://www.bilibili.com/video/BV1Et411R78v/?spm_id_from=333.788.recommend_more_video.1 (连续傅里叶变换的推导)
http://www.elecfans.com/soft/49/52/2020/202002131164102.html(离散傅里叶变换的由来)
傅里叶变换的一些总结相关推荐
- 《OpenCV3编程入门》学习笔记5 Core组件进阶(五)离散傅里叶变换(DFT)
第5章 Core组件进阶 5.5 离散傅里叶变换(Discrete Fourier Transform,DFT) 5.5.1 离散傅里叶变换原理 1.对一张图像使用傅里叶变换就是把它分解成正弦和余弦, ...
- 【opencv】(8) 傅里叶变换,高通低通滤波器
图像处理一般分为空间域处理和频率域处理. 空间域处理是直接对图像内的像素进行处理.主要划分为灰度变换核空间滤波两种形式,灰度变换对图像内的单个像素进行处理,滤波处理涉及对图像质量的改变. 频率域处理是 ...
- 傅里叶变换之看不懂就掐死我教程
原文出处: 韩昊 1 2 3 4 5 6 7 8 9 10 作 者:韩 昊 知 乎:Heinrich 微 博:@花生油工人 知乎专栏:与时间无关的故事 谨以此文献给大连海事大学的吴楠老师,柳晓鸣老师, ...
- 深入浅出的讲解傅里叶变换(完整)
原文出处: 韩昊 我保证这篇文章和你以前看过的所有文章都不同,这是 2012 年还在果壳的时候写的,但是当时没有来得及写完就出国了--于是拖了两年,嗯,我是拖延症患者-- 这篇文章的核心思想就是: 要 ...
- python fft库有哪些_Python图像处理库PIL中快速傅里叶变换FFT的实现(一)
离散傅里叶变换(discrete Fouriertransform)傅里叶分析方法是信号分析的最基本方法,傅里叶变换是傅里叶分析的核心,通过它把信号从时间域变换到频率域,进而研究信号的频谱结构和变化规 ...
- 《数据科学家养成手册》傅里叶变换与反傅里叶变换笔记
最早的电话使用的模拟信号原理图 (1)声音通过金属振动膜感应声波来影响磁场和电流,并将这种带有金属振动膜振动的"信息"的电流传递给另一端 (2)另一端则进行反向工作,把不断变化的电 ...
- 傅里叶变换取代Transformer自注意力层,谷歌这项研究GPU上快7倍、TPU上快2倍
视学算法报道 转载自:机器之心 机器之心编辑部 来自谷歌的研究团队表明,将傅里叶变换取代 transformer 自监督子层,可以在 GLUE 基准测试中实现 92% 的准确率,在 GPU 上的训练时 ...
- 这次终于彻底理解了傅里叶变换
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 原文链接:https://github.com/Jezzamonn ...
- 使用傅里叶变换进行图像边缘检测
今天我们介绍通过傅里叶变换求得图像的边缘. 什么是傅立叶变换? 简单来说,傅里叶变换是将输入的信号分解成指定样式的构造块.例如,首先通过叠加具有不同频率的两个或更多个正弦函数而生成信号f(x),之后, ...
- 【学习笔记】超简单的快速傅里叶变换(FFT)(含全套证明)
整理的算法模板合集: ACM模板 目录 一.概念概述 二.前置知识 1. 多项式 2. 复数 4. 欧拉公式证明 3. 复数的单位根 / 单位向量 三.FFT 算法概述 四.离散傅里叶变换(DFT) ...
最新文章
- c语言自增自减5运算符详解,巧用C语言中的自增自减运算符
- 解决: Your ApplicationContext is unlikely to start due to a @ComponentScan of the default
- Oracle中Select语句完整的执行顺序
- lk部分没有msm8937相关目录原因(指向msm8952)
- 手把手教你如何建立自己的Linux系统
- linux查看nginx昅 电视,PHP实现查询汉字笔画、笔画排序、笔画统计
- 理解PeopleSoft HRMS人力资源管理系统
- 计算日期差的方法c语言,C语言计算日期差的方法示例
- onetab丢失崩溃怎么办?快试试我这个类似功能的插件吧,也可以当做插件开发入门教程
- Android中的PendingIntent 原理
- 苹果手机上滑动会卡顿_苹果手机Safari浏览器下滑动卡顿的问题
- windows录屏_Windows电脑怎么录制屏幕?查看电脑自动录屏方法
- 【Python百日基础系列】Day02-Python语法基础
- 什么是过拟合?过拟合的10个解决办法都有哪些?
- 【C语言】C语言中赋值语句规则
- compat-wireles的理解
- 【图像转换】基于matlab灰度图像转换彩色图像【含Matlab 1233期】
- Race_Condition_Vulnerability
- linux smit工具,Aix操作系统SMIT工具
- 西门子smart200与台达MS300变频器通讯程序 触摸屏与plc以太网通讯,PLC与变频器通讯485口相连
热门文章
- 三星堆火了,VR科技如何唤醒千年文明?
- 关于虾皮无货源一件代发你了解多少?详讲虾皮物流发货流程
- 实现内网穿透,个人电脑秒变服务器
- python repl_Python 3.8新特征之asyncio REPL
- python多久可以入门_python自学要多久能学会
- 在Mac上使用android studio调试android手机
- MATLAB/Simulink当真,开环Buck、闭环Buck、双闭环Buck仿真;开环控制的半桥LLC谐振变换器,全桥LLC谐振变换器和电压闭环控制的半桥LLC
- 2016清华集训滚粗记
- python人工智能之:六边形矩阵热图程序实战篇(一)
- 通过opencv标记图片以及写入Excel小方法