小波分析

2023-11-13

本文首先介绍了从傅里叶变换到小波变换的发展史,然后着重强调了小波变换的两种作用——时频分析多分辨率分析,最后讲了一下吉布斯效应等相关知识。

FT(傅里叶变换),通过将信号分解成正余弦函数(把三角函数当做函数空间的基),将时域信号转化为频域信号。缺点是只适用于平稳性信号,在频域图上不能获得对应频率的时间信息。


 


由上图可以看到,对于频域成分相同的信号,即使信号在时域上的分布不一样,FFT变换后的频域图却几乎完全一样。所以说,FFT只可以获得一段信号总体上包含哪些成分,但是对各成分出现的时间并无所知。因此时域相差很大的信号FFT之后的频域图可能完全相同。

 

短时傅里叶变换

STFT(短时傅里叶变换)添加时域信息的方法是设置窗格,认为窗格内的信号是平稳信号,对窗格内的信号分段进行FT分析。优点是可以获得频域信息的同时可以获得时域信息。缺点是窗格大小很难设置。

STFT的方法及效果如下图:

这里写图片描述


 

STFT的窗格问题如下:

这里写图片描述 
这里写图片描述 
这里写图片描述 
这里写图片描述 
这里写图片描述

由上面的图可以看到,窄窗口时间分辨率高、频率分辨率低;宽窗口时间分辨率低,频率分辨率高。对于时变的非稳态信号,高频适合小窗口,低频适合大窗口。可是STFT的窗口是固定的,因此需要寻求别的方法。

小波变换

WT(小波变换),将傅里叶变换的基给换了—— 将无限长的三角函数基换成了有限长的会衰减的小波基,这样不仅可以获取频率,还可以定位到时间

傅里叶变换

傅里叶变换,通过相互正交的三角函数信号和原信号在无穷上进行积分,积分越大表明信号越相似,包含该频率的三角信号也就越多。

最后,每一个f值对应了一个积分值,获得了频率图。

这里写图片描述 
 
这里写图片描述

 

小波变换

小波变换的原理类似傅里叶变换,只是把三角函数基换成了小波基。与傅里叶变换不同,小波变换有两个变量:scaletranslationscale控制小波函数的收缩,其导数即为频率translation控制小标函数的平移,平移量对应时间。通过信号的伸缩平移,可以得到某种重合情况,这样积分也会得到一个极大值,不同的是,得到频率成分的同时,还可以知道该频率的时间位置

这里写图片描述 
这里写图片描述 
这里写图片描述

最后得到的也是三维的图像:

这里写图片描述

scale是频率的倒数,translation代表时间

三种变换的对比:

这里写图片描述

傅里叶变换,选择正弦函数作为基函数,然后考察的到的展开式的性质。 
对于小波分析,首先提出想要的性质,然后推导出基函数。

连续小波分析

小波的一个思想是在时间和频率两个方面提供有效的局部化,另一个中心思想是多分辨率,即信号的分解是按照不同分辨率的细节一层一层进行的。

 

 

小波比傅里叶拟合突变信号效果更好,还可以根据不同的需要更换小波基以获得更好的效果。 

 

这里写图片描述

 

它的作用:高维数据因为其计算代价昂贵(纬度高计算必然昂贵)和建立索引结构的困难(空间索引结构往往面临着“维度灾”),因此有对其进行数据压缩的需求,即对高维数据进行降维,傅里叶变换和小波变换都可以用来做这件事,具体说来就是,傅里叶变换用不同频率的三角函数的和去拟合原始信号,对于每个单独的三角函数,只需要记录其相位和幅度即可。信息论可以证明,对于一个长度为n的离散信号(计算机中所有的信号都肯定是离散的),可以分解为n个三角函数的线性组合,这n个三角函数的频率是按2的指数倍递增的,这两种表示方法是等价的,也就是从后者(三角函数的信息:相位、幅度)可以完美地重构出前者。而原始信号中的主要信息都集中在低频分量上,高频分量往往是噪音,因此我们可以对变换后的三角函数系数只保留其前k个系数,而忽略剩余的高频部分,这样就将数据降为了k维,由于高频大多是噪音,因此丢失信息并不多。 
以上说的是傅里叶变换,小波变换也是一样的,只不过它使用的基底函数不是三角函数,而是所谓的小波函数,所谓“小波函数”是一族函数,需要满足1.均值为0;2.在时域和频域都局部化(不是蔓延整个坐标轴的),满足这两条的函数就是小波函数,有很多,最简单的是Haar Wavelet。所以小波分析或者说小波变换要做的就是将原始信号表示为一组小波基的线性组合,然后通过忽略其中不重要的部分达到数据压缩或者说降维的目的

 



高维数据因为其计算代价昂贵(纬度高计算必然昂贵)和建立索引结构的困难(空间索引结构往往面临着“维度灾”),因此有对其进行数据压缩的需求,即对高维数据进行降维,傅里叶变换和小波变换都可以用来做这件事,具体说来就是,傅里叶变换用不同频率的三角函数的和去拟合原始信号,对于每个单独的三角函数,只需要记录其相位和幅度即可。信息论可以证明,对于一个长度为n的离散信号(计算机中所有的信号都肯定是离散的),可以分解为n个三角函数的线性组合,这n个三角函数的频率是按2的指数倍递增的,这两种表示方法是等价的,也就是从后者(三角函数的信息:相位、幅度)可以完美地重构出前者。而原始信号中的主要信息都集中在低频分量上,高频分量往往是噪音,因此我们可以对变换后的三角函数系数只保留其前k个系数,而忽略剩余的高频部分,这样就将数据降为了k维,由于高频大多是噪音,因此丢失信息并不多。 
以上说的是傅里叶变换,小波变换也是一样的,只不过它使用的基底函数不是三角函数,而是所谓的小波函数,所谓“小波函数”是一族函数,需要满足1.均值为0;2.在时域和频域都局部化(不是蔓延整个坐标轴的),满足这两条的函数就是小波函数,有很多,最简单的是Haar Wavelet。所以小波分析或者说小波变换要做的就是将原始信号表示为一组小波基的线性组合,然后通过忽略其中不重要的部分达到数据压缩或者说降维的目的

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

小波分析 的相关文章

  • Baseline、Benchmark&SOTA

    Baseline Baseline A baseline is a value or starting point on a scale with which other values can be compared 通俗的讲 一个算法被称
  • pytorch/torch安装简明教程

    LINUX上安装 0 进入官网https pytorch org 按照你的系统以及配置 获取安装命令 1 安装gpu版本的torch cuda包 用于torch调用gpu加速库 pip install torch 1 5 0 cu101 t
  • 李宏毅 机器学习笔记 Classification

    1 绪论 Classification Probabilistic Generative Model 本节课讲的是基于概率生成模型的分类 分类任务本质上是找到一个函数 函数的输入是输入数据 输出是类别 应用范围比较广 例如信用卡评分 医学诊
  • 文本分类(六):使用fastText对文本进行分类--小插曲

    需要注意的问题 1 linux mac 平台 2 标签中的下划线是两个 两个 两个 环境说明 python2 7 linux 自己打自己脸 目前官方的包只能在linux mac环境下使用 误导大家了 对不起 测试facebook开源的基于深
  • 线性回归线性关系、非线性关系、常见函数导数、损失函数与优化算法、正规方程与单变量函数梯度下降、多变量函数梯度下降

    一 线性回归概述 线性回归 Linear regression 是利用回归方程 函数 对一个或多个自变量 特征值 和因变量 目标值 之间关系进行建模的一种分析方式 特点 只有一个自变量的情况称为单变量回归 多于一个自变量情况的叫做多元回归
  • graphviz安装及使用、决策树生成

    一 graphviz下载安装 下载网址 http www graphviz org download 选择合适版本下载 1 1 双击安装 1 2 点击下一步 1 3 点击我接受 1 4 添加至系统路径 勾选添加至当前用户的系统路径 创建桌面
  • 周志华《Machine Learning》学习笔记(17)--强化学习

    上篇主要介绍了概率图模型 首先从生成式模型与判别式模型的定义出发 引出了概率图模型的基本概念 即利用图结构来表达变量之间的依赖关系 接着分别介绍了隐马尔可夫模型 马尔可夫随机场 条件随机场 精确推断方法以及LDA话题模型 HMM主要围绕着评
  • statsmodels.tsa.stattools.adfuller 的用法

    statsmodels tsa stattools adfuller x maxlag None regression c autolag AIC store False regresults False source 增广Dickey F
  • 机器学习——几种分类算法的汇总

    https www cnblogs com Zhi Z p 8912396 html
  • 基于时间序列的短期数据预测--ARMA模型的设计与实现(每个步骤附实现源码)

    本文demo源码 实验数据 传送门 引言 前面我有分享两篇关于时间序列模型的文章 一篇是 Holt Winters模型原理分析及代码实现 python 一篇是 LSTM模型分析及对时序数据预测的具体实现 python实现 holt wint
  • ML-数据分析模板

    文章目录 机器学习 数据分析模板 Objective Data Set Information Attribute Information INPUT 单特征与缺失值展示 Feature Cleaning Engineering 标签转换
  • ML-熵、条件熵、信息增益

    通俗理解条件熵 特征选择之信息增益法 必看 系统介绍了熵 条件熵 信息增益的概念及推导 条件熵的计算 必看 知乎前三个回答都看一下 有关于熵 条件熵 信息增益的实践 我通过例子一步一步讲解这个概念 在决策树算法的学习过程中 信息增益是特征选
  • Compressed Sparse Column format(CSC)

    CSR Compressed Sparse Row format 和CSC Compressed Spare Column format 都是一种稀疏矩阵的存储格式 这里分别给出实例 假设有如下矩阵 1360
  • 关于pickle的load,loads等

    基础知识 python自带的file函数只能存储和读取字符串格式的数据 pickle可以存储和读取成其他格式比如list dict的数据 来自 https www zhihu com question 38355589 如需更详细 关于lo
  • 最大似然估计(ML)

    1 说明 最大似然估计 Maximum Likelihood Estimation ML 是一种在给定观察数据情况下 来评估模型参数的算法 它属于一种统计方法 用来求一个样本集的相关概率密度函数的参数 例如 统计全校人口的身高 我们已知身高
  • ML--HMM(隐马尔可夫模型及python的实现1)

    1 综述 隐马尔可夫模型是马尔可夫模型的进一步发展 马尔可夫模型是马尔可夫过程的模型化 可以用图1 a 的框图形象表示 它把一个总随机过程看成一系列状态的不断转移 图1 b 是隐马尔可夫模型 1 1几个需要理解的概念 a 马尔可夫性 如果一
  • N 元组与对

    在 Ocaml 中 具有不同元数的元组具有不同的类型和值构造函数 let a 1 2 3 val a int int int 1 2 3 let b 1 2 3 val b int int int 1 2 3 请注意 第二个示例 b 比第一
  • 为什么我的 ML 函数推断的类型与我预期的不同?

    我做了一个函数 它的名字是maptree 下面是我的代码 datatype a tree LEAF of a NODE of a tree a tree fun maptree f NODE X Y NODE maptree f X map
  • ML 中 ref 函数的用法

    考虑到 ref 运算符 我很难理解它的应用以及以下指令的含义 1 在这个定义中我定义什么 val ref x ref 9 val x 9 int 2 我在这里用 ref x ref 12 做什么 val x ref 8 val x ref
  • fn 类型的 ml 函数:'a -> 'b

    功能 fn a gt b 现在 有没有可以定义并具有这种类型的函数 标准机器学习中该函数签名有两种可能的实现 一种使用异常 另一种使用递归 val raises a gt b fn a gt raise Fail some error In

随机推荐

  • 通过anaconda在linux服务器离线安装python3(聚类)环境并通过pycharm远程调试

    一 环境准备 1 可远程连接192 168 172 81上的环境 下载pycharm破解 可参考 https blog csdn net weixin 34890168 article details 81563291 配置本地文件与服务器
  • setInterval 让它刚进页面时执行一次,然后根据设置的间隔时间执行;clearInterval清除setInterval。

    可以在页面加载后先立即执行一次任务 然后再设置定时器 例如 假设你想要每隔一分钟就执行一次某个函数 myFunc 可以这样实现 function myFunc 要执行的代码 立即执行一次任务 myFunc 每隔一分钟执行一次任务 setIn
  • Excel的使用——比对俩列内容的相同与不同,并突出显示

    情景 最近做一个功能 实时查询数据 想要看不同时刻查出来的数据有什么区别 数据量太大 一条一条对比坚持太费时间了 所以可以导出Excel 然后对比俩列内容就可以了 这样的灵感还是来自于一个甲方的客户 感谢他给了我一种检测数据的方式 方法 将
  • 数据埋点:前端页面PV/UV的触发和交互

    数据埋点是数据分析的基础 依据埋点数据中我们可以开展数据清洗 数据归因 分析模型 AB测试等工作 如今数据分析可以说是当前最热门的技能了 不管是产品 运营还是设计都可以明显感知到各大平台 公众号都在使劲的推送 各种9 9秒杀课程 1元限时体
  • (转)玩4K必备知识:HDMI1.4、2.0、2.0a、2.0b接口参数对比

    HDMI接口又叫高清晰度多媒体接口 英文 High Definition Multimedia Interface HDMI 这是一种数字化视频 音频接口技术 是适合影像传输的专用型数字化接口 其可同时传送音频和影像信号 且无需在信号传送前
  • mybatis 动态sql 源码解析

    mybatis 动态sql 测试例子 java程序 xml文件 调试 直接进入到解析select语句的地方 进入 解析xml 进入buildStatementFromContext 依然是交给XMLStatementBuilder解析 核心
  • python飞机大战实战演练代码

    以下是主函数 import pygame from plane sprites import class PlaneGame object 飞机大战主游戏 def init self print 游戏初始化 1 创建游戏的窗口 self s
  • 澄清并发编程工具CountDownLatch的误区

    无论你对CountDownLatch的认知是通过看资料还是看博客 很多人都会存在一些误区 现在我也是站在巨人 某些大牛 的肩膀上去总结下这些误区 并把CountDownLatch的含义及用法仔细的演示一遍 1 常见误区 误区一 CountD
  • 【华为OD】

    目录 一 题目描述 二 输入描述 三 输出描述 用例 四 题目解析 五 Java玩法 六 JavaScript玩法 一 题目描述 某云短信厂商 为庆祝国庆 推出充值优惠活动 现在给出客户预算 和优惠售价序列 求最多可获得的短信总条数 二 输
  • 2021年江苏省职业院校技能大赛中职 网络信息安全赛项试卷--web安全渗透测试解析

    2021年江苏省职业院校技能大赛中职 网络信息安全赛项web安全渗透测试 2021年江苏省web安全渗透测试任务书 2021年江苏省web安全渗透测试任务书解析 如果有不懂得地方可以私信博主 欢迎交流 需要环境得 可以加博主联系方式 202
  • Ansible学习笔记2

    Ansible是Python开发的自动化运维工具 集合了众多运维工具 Puppet cfengine chef func fabric 的优点 实现了批量系统配置 批量程序部署 批量运行命令等功能 特点 1 部署简单 2 默认使用ssh进行
  • idea的代码文本距离左边很远问题解决

    idea的代码文本距离左边很远问题解决 刚才看了篇文章 是关于idea 2021 1版本 看起来挺好 然后忍不住尝试了一下 但是不知道做了什么操作 突然代码的左边距离行号非常远 然后找了很多文章 也没找到解决办法 重新安装idea仍旧没解决
  • springboot2.0集成ShardingSphere-jdbc5.0-alpha所遇到的一些坑

    在springboot 2 5 3中配置使用ShardingSphere 5 0 alpha遇到了不少的坑 现在总结如下 1 没有使用shardingsphere jdbc core spring boot starter 在使用Shard
  • centos下安装apache

    下载所需要的包 wget http mirrors tuna tsinghua edu cn apache httpd httpd 2 4 54 tar gz wget http mirrors tuna tsinghua edu cn a
  • GnuTLS recv error (-110): The TLS connection was non-properly terminated问题的解决方案

    我在使用git clone branch 3 4 depth 1 https github com opencv opencv git命令的时候 遇到如下问题 fatal unable to access https github com
  • Radware负载均衡项目配置实战解析之一初识RADWARE(VIP与FARM配置)

    在近期的项目中 接触负载均衡设备RADWARE比较多 可能有很多朋友对这个设备还不是很了解 所以我把具体项目实战中的Radware配置应用与大家做一个分享交流 RADWARE是一家智能应用网络解决方案的全球领先供应商 主要生产应用交付和网络
  • Ubuntu下无法打开终端

    在安装某个版本的python并进行一系列自己也看不懂的配置之后 突然发现终端无法打开了 具体来说就是从桌面点击没有用 ctrl alt T也打不开 只能从选择文件夹 右击选择终端打开时可以 然后开始救赎之路 打开vscode的终端 或pyc
  • Python开发难学吗?简单易用适合初学者入门

    Python开发难学吗 适合初学者吗 Python入门阶段零基础学员打好基础是非常重要的 在非常高的抽象计算中 高级的Python程序设计非常难学 高级程序语言不等于简单 但对于初学者和完成普通任务Python语言是非常简单易用的 Pyth
  • 四、【服务器】服务器入门——常见单位

    U 高度单位 U 是UNIT的缩写 1U 4 445cm 是一种表示机架服务器外部尺寸的单位 指的是高度或者说厚度 规定这个尺寸是为了使得服务器保持适当的尺寸 在机柜安装的时候需要注意到留好安装高度 机架服务器通常宽度在19英寸 高度为1U
  • 小波分析

    本文首先介绍了从傅里叶变换到小波变换的发展史 然后着重强调了小波变换的两种作用 时频分析和多分辨率分析 最后讲了一下吉布斯效应等相关知识 FT 傅里叶变换 通过将信号分解成正余弦函数 把三角函数当做函数空间的基 将时域信号转化为频域信号 缺