傅里叶级数、傅里叶变换、小波变换、离散余弦变换的理解

目录

    • 1. 傅里叶级数
    • 2.傅里叶变换

1. 傅里叶级数

功能:能把任意周期性函数展开成一系列正弦、余弦函数的和。

公式:

f ( x ) = a 0 2 + ∑ n = 1 ∞ ( a n cos ⁡ ( 2 π n x T ) + b n sin ⁡ ( 2 π n x T ) ) 傅里叶系数 a n = 2 T ∫ x 0 x 0 + T f ( x ) ⋅ cos ⁡ ( 2 π n x T ) d x , n ∈ { 0 } ⋃ N b n = 2 T ∫ x 0 x 0 + T f ( x ) ⋅ sin ⁡ ( 2 π n x T ) d x , n ∈ N \begin{gathered} f(x)=\frac{a_0}2+\sum_{n=1}^{\infty}\left(a_n\cos(\frac{2\pi nx}T)+b_n\sin(\frac{2\pi nx}T)\right) \\ \text{傅里叶系数} \\ a_{n}=\frac{2}{T}\int_{x_{0}}^{x_{0}+T}f(x)\cdot\cos(\frac{2\pi nx}{T})dx,n\in\{0\}\bigcup\mathbb{N} \\ b_{n}={\frac{2}{T}}\int_{x_{0}}^{x_{0}+T}f(x)\cdot\sin({\frac{2\pi nx}{T}})dx,n\in\mathbb{N} \end{gathered} f(x)=2a0+n=1(ancos(T2πnx)+bnsin(T2πnx))傅里叶系数an=T2x0x0+Tf(x)cos(T2πnx)dx,n{0}Nbn=T2x0x0+Tf(x)sin(T2πnx)dx,nN

比如下图的一个函数能够被一系列周期为2 π \pi π的正弦函数展开:
在这里插入图片描述
加加减减后周期仍是2 π \pi π,调整正弦、余弦函数前面的系数(振幅)就可以慢慢逼近原函数了。

下面我们尝试把周期变成更一般的T,则正弦、余弦函数可写成:
s i n ( 2 π n T x ) c o s ( 2 π n T x ) \begin{array}{l}sin(\frac{2\pi n}Tx)\\\\cos(\frac{2\pi n}Tx)\end{array} sin(T2πnx)cos(T2πnx)

前面的系数( a n , b n a_n, b_n an,bn)我们可以通过几何的角度进行理解:

首先要有个先验知识就是正弦、余弦函数可以看成无限维的向量,并且两个向量的内积为0,即正弦余弦函数是正交的。
在这里插入图片描述
无限维向量内积:
在这里插入图片描述
因此傅里叶变换可看成是由一组正交基构成的:
在这里插入图片描述
每个正交向量就是:{1,0,0},{0,cos(2pi n/T x),0},{0,0,sin(2pin/Tx)}

在这里插入图片描述
那么如何求系数呢 就是这些坐标:
例如:其中c1,c2是坐标
在这里插入图片描述
在这里插入图片描述
扩展到傅里叶:
在这里插入图片描述
bn类似的。

2.傅里叶变换

在这里插入图片描述
随着函数周期变大,频域上的点会越来越密集,若一个非周期函数,则频域图中的点连续:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
而傅里叶变换就是求出当周期无穷大时,对应的这个连续的频域图曲线。

首先把傅里叶级数用欧拉公式换一下:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
F(w)就是频域曲线。
另外还可以再改造一下,把前面系数移进去:

F ( w ) = ∫ − ∞ + ∞ f ( x ) ⋅ e − j 2 π w x d x F(w)=\int_{-\infty}^{+\infty}f(x)\cdot e^{-j2\pi wx}dx F(w)=+f(x)ej2πwxdx

同理可得二维傅里叶变换:
F ( u , v ) = ∫ − ∞ + ∞ ∫ − ∞ + ∞ f ( x , y ) ⋅ e − j 2 π ( u x + v y ) d x d y F(u, v)=\int_{-\infty}^{+\infty}\int_{-\infty}^{+\infty}f(x,y)\cdot e^{-j2\pi (ux+vy)}dxdy F(u,v)=++f(x,y)ej2π(ux+vy)dxdy
二维傅里叶反变换:
f ( x , y ) = ∫ − ∞ + ∞ ∫ − ∞ + ∞ F ( u , v ) ⋅ e j 2 π ( u x + v y ) d u d v f(x, y)=\int_{-\infty}^{+\infty}\int_{-\infty}^{+\infty}F(u,v)\cdot e^{j2\pi (ux+vy)}dudv f(x,y)=++F(u,v)ej2π(ux+vy)dudv

二维离散傅里叶变换:
F ( u , v ) = ∑ m = 0 M − 1 ∑ n = 0 N − 1 f ( x , y ) ⋅ e − j 2 π ( u x / M + u y / N )   F(u, v) = \sum_{m=0}^{M-1} \sum_{n=0}^{N-1} f(x, y) \cdot e^{-j 2\pi(ux/M + uy/N)} \ F(u,v)=m=0M1n=0N1f(x,y)ej2π(ux/M+uy/N) 

  f ( x , y ) = 1 M N ∑ u = 0 M − 1 ∑ v = 0 N − 1 F ( u , v ) ⋅ e j 2 π ( u x / M + u y / N )   \ f(x, y) = \frac{1}{MN} \sum_{u=0}^{M-1} \sum_{v=0}^{N-1} F(u, v) \cdot e^{j 2\pi(ux/M + uy/N)} \  f(x,y)=MN1u=0M1v=0N1F(u,v)ej2π(ux/M+uy/N) 

  1. 小波变换

暂时放个链接在这小波变换

  1. 离散余弦变换
    离散余弦变换其实就是傅里叶变换的实数部分
    F ( u , v ) = λ ( u ) λ ( v ) ∑ x = 0 N 1 − 1 ∑ y = 0 N 2 − 1 f ( x , y ) cos ⁡ ( π u 2 x + 1 2 N 1 ) cos ⁡ ( π v 2 y + 1 2 N 2 ) λ ( ω ) = { 1 N , i f   ω = 0 2 N , o t h e r w i s e \begin{aligned}F(u,v)&=\lambda(u)\lambda(v)\sum_{x=0}^{N_1-1}\sum_{y=0}^{N_2-1}f(x,y)\cos\left(\pi u\frac{2x+1}{2N_1}\right)\cos\left(\pi v\frac{2y+1}{2N_2}\right)\\\\\lambda(\omega)&=\begin{cases}\sqrt{\frac1N},&\mathrm{if~}\omega=0\\\sqrt{\frac2N},&\mathrm{otherwise}&\end{cases}\end{aligned} F(u,v)λ(ω)=λ(u)λ(v)x=0N11y=0N21f(x,y)cos(πu2N12x+1)cos(πv2N22y+1)= N1 ,N2 ,if ω=0otherwise

f ( x , y ) = ∑ u = 0 N 1 − 1 ∑ v = 0 N 2 − 1 λ ( u ) λ ( v ) F ( u , v ) cos ⁡ ( π u 2 x + 1 2 N 1 ) cos ⁡ ( π v 2 y + 1 2 N 2 ) \begin{aligned}f(x,y) & =\sum_{u=0}^{N_1-1}\sum_{v=0}^{N_2-1}\lambda(u)\lambda(v)F(u,v)\cos\left(\pi u\frac{2x+1}{2N1}\right)\cos\left(\pi v\frac{2y+1}{2N2}\right)\end{aligned} f(x,y)=u=0N11v=0N21λ(u)λ(v)F(u,v)cos(πu2N12x+1)cos(πv2N22y+1)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

机器学习(三) -- 特征工程(1)

系列文章目录 机器学习(一) -- 概述 机器学习(二) -- 数据预处理(1-3) 机器学习(三) -- 特征工程(1-2) 未完待续…… 目录 系列文章目录 前言 一、特征…

nginx 一、安装与conf浅析

文章目录 一、安装nginxdocker方式安装linux方式安装Ubuntu 或 Debian 系统:CentOS 或 RHEL 系统: macOS 系统(使用 Homebrew):Windows 系统: 二、nginx.conf浅析 Nginx(发音为“engine-x”&…

服务器CentOs8 安装RocketMQ 4.9.4

前置条件 安装好java环境 下载、上传、解压 下载二进制包 传送门 上传到服务器,这里上传到了/usr/local目录下 解压: unzip rocketmq-all-4.9.4-bin-release.zip移动到新的文件夹 mv /rocketmq-all-4.9.4-bin-release /rocketmq修改配置 修改conf下…

第 378 场 LeetCode 周赛题解

A 检查按位或是否存在尾随零 枚举&#xff1a;枚举两个元素的组合即可 class Solution { public:bool hasTrailingZeros(vector<int> &nums) {int n nums.size();for (int i 0; i < n; i)for (int j 0; j < i; j)if ((nums[i] | nums[j]) % 2 0)return tru…

Python从入门到精通总结规划

Python从入门到精通专栏&#xff1a;http://t.csdnimg.cn/4Lals 时光飞逝&#xff0c;转眼间我们的Python从入门到精通专栏已经接近尾声。 在这里&#xff0c;向大家表示最诚挚的感谢。感谢你们一直以来对Python学习的热情&#xff0c;以及对本专栏的持续关注和支持。 回顾过去…

还在苦苦寻找PPT模板?这5个好用的PPT模板网站来拯救你!

行走职场&#xff0c;一大傍身的能力就是制作PPT&#xff0c;不过每回留给我们制作PPT的时间非常少&#xff0c;时间紧任务重&#xff0c;想在短时间内制作出高颜值的PPT&#xff0c;少不了平时有意识地收藏好看的PPT模板或PPT模板网站。 为方便各位找到可在工作中使用的PPT模…

数据结构学习 jz34 二叉树中和为某一值的路径

关键词&#xff1a;回溯 二叉树 前序遍历 路径记录 因为我没有仔细接触过二叉树的遍历过程&#xff0c;所以我是懵懵懂懂按照dfs的方法写的。没想到写对了&#xff0c;看了解答发现这叫做二叉树的前序遍历。用时29min。 这让我明白了前序遍历和dfs原来是有相同之处的。&#…

从零学算法17

17.给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;。注意 1 不对应任何字母。 示例 1&#xff1a; 输入&#xff1a;digits “23” 输出&#xff1a;[…

GLTF编辑器实现逼真的石门模型

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 在凹凸贴图中&#xff0c;每个像素点都包含了一个法线向量&#xff0…

【开源项目】超经典数字孪生智慧物流园

数字孪生物流园管理系统&#xff0c;具有仓储管理智能化、运输管理自动化、物流管理系统化、共享服务平台化等特点。飞渡科技基于数字孪生、物联网IOT、人工智能等新一代信息技术&#xff0c;以智能设备为基底&#xff0c;通过人、物、资源、系统等多方数据的传递和交互&#x…

记一次canal除坑记录

记一次canal除坑记录 错误信息 Caused by :com.alibaba.otter.canal.parse.exception.CanalParseException: column size is not match for table 问题处理 今天对Canal相关程序进行升级&#xff0c;原监听的表及业务都正常&#xff1b;遇到新增加的表时总是不走&#xff1b;…

【第七在线】智能商品系统是否可以帮助预测新品的销售表现?

智能商品系统在鞋服企业商品运营中的应用已经成为一种趋势。随着技术的发展和数据的积累&#xff0c;智能化已经成为企业提高运营效率和市场竞争力的重要手段。其中&#xff0c;智能商品系统通过对大量销售数据的分析&#xff0c;可以帮助预测新品的销售表现&#xff0c;为企业…

Linux驱动(三)platform总线驱动

1、前言 Platform总线是Linux内核中用于管理嵌入式系统中的设备的一种总线类型。它允许设备驱动程序通过一组标准的接口与嵌入式系统中的硬件设备进行通信。 Platform总线维护了一个驱动链表和一个设备链表&#xff0c;当有新的设备添加后会通过自身的match函数遍历驱动链表查…

【mac-m1 docker 安装upload-labs靶场】

1.搜索upload-labs docker search upload-labs 2.下载upload-labs docker pull c0ny1/upload-labs 3.启动 docker run -it -d --name uploadlabs -p 80:80 c0ny1/upload-labs --platform linux/amd64 4.访问127.0.0.1:80 注意点&#xff1a;后续使用的时候会报错 需要手动创…

LeetCode-无重复字符的最长子串(3)

题目描述&#xff1a; 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串 的长度。 代码&#xff1a; class Solution {public int lengthOfLongestSubstring(String s) {Set<Character> occnew HashSet<Character>();int lens.length();int…

Local server not started, start with 报错python -m weditor

一、python -m weditor 如图报错 Local server not started, start with 报错 二、解决方案 右上角选择新的无痕窗口下&#xff0c;然后打开 http://localhost:17310/ 即可

VMware Tools 启动脚本未能在虚拟机中成功运行。如果您在此虚拟机中配置了自定义启动脚本,请确保该脚本没有错误。您也可以提交支持请求,报告此问题。

问题描述&#xff1a;今天打开centos7虚拟机就是直接打不开了报了下面的错误&#xff0c;也没有动任何东西&#xff0c;点确定后&#xff0c;也是依然没有反应 问题原因&#xff1a;可能是虚拟机中的内存满了&#xff0c;需要清理内存 解决方法如下 首先cmd打开终端敲入如下命…

linux磁盘管理实验1

1.在安装好的linux系统中新加一块硬盘&#xff0c;将硬盘分成2个主分区&#xff0c;和2个逻辑分区&#xff0c;将其中一个逻辑分区设置成vfat&#xff08;FAT32&#xff09;分区&#xff0c;并实现开机自动挂载所有分区。 答&#xff1a;添加一个硬盘为sdb 分成2个主分区&#…

LLM增强LLM;通过预测上下文来提高文生图质量;Spikformer V2;同时执行刚性和非刚性编辑的通用图像编辑框架

文章首发于公众号&#xff1a;机器感知 LLM增强LLM&#xff1b;通过预测上下文来提高文生图质量&#xff1b;Spikformer V2&#xff1b;同时执行刚性和非刚性编辑的通用图像编辑框架 LLM Augmented LLMs: Expanding Capabilities through Composition 本文研究了如何高效地组…

面试算法96:字符串交织

题目 输入3个字符串s1、s2和s3&#xff0c;请判断字符串s3能不能由字符串s1和s2交织而成&#xff0c;即字符串s3的所有字符都是字符串s1或s2中的字符&#xff0c;字符串s1和s2中的字符都将出现在字符串s3中且相对位置不变。例如&#xff0c;字符串"aadbbcbcac"可以由…