分数阶傅里叶变换与信息熵怎么用于信号处理?
天马行空的理解与思考方式:分数阶傅里叶变换与信息熵怎么用于信号处理?
ChiX-Y
快速学习,快速尝试,快速失败
已关注
35 人赞同了该文章
这篇文章希望能写的有趣,同时有质量,学习就是要多维度多角度!
信息熵怎么用于各类信号处理?(信号特征提取?信号识别与分类?)
一.什么是信息熵?
热力学中的热熵是表示分子状态混乱程度的物理量,而信息熵的概念是用来描述信源的不确定度的;信息论之父香农曾在论文中提出“任何信息都存在冗余,冗余大小与信息中每个符号(数字、字母或单词)的出现概率或者说不确定性有关。”香农借助热力学概念,把信息中排除了冗余后的平均信息量称为“信息熵”。
通常,一个信源发送出什么符号是不确定的,衡量它可以根据其出现的概率来度量。出现的概率大,则不确定性小,所提供的信息量就少;反之不确定性就大。
根据以上定义和描述,可以得到不确定性函数应具有的两个条件:
①不确定性函数 f 是概率 p 的减函数;②两个独立符号所产生的不确定性应等于各自不确定性之和,即 f(p1,p2)=f(p1)+f(p2) ,这是不确定性函数的可加性。
同时满足以上两个条件的函数 f 是对数函数,即 f(p)=log1p=−log(p)
在信源中,考虑的不是某一单个符号发生的不确定性,而是要考虑这个信源所有可能发生情况的平均不确定性。若某个信源可以出现n种符号来传递信息: U1...Ui...Un ,对应的概率为: p1...pi...pn ,且各种符号的出现彼此独立。这时,信源的平均不确定性应当为单个符号不确定性 −log(pi) 的统计平均值(E),称为信息熵,即 H(U)=E[−log(pi)]=−∑i=1npilog(pi)
上式中的对数一般取2为底,单位为比特。
离散的信源信息熵具有:①非负性 ②对称性 ③确定性 ④极值性
二.分数阶傅里叶变换
为了能让信息熵更好的在信号处理中派上用场,需要先学习一种更高级的信号处理数学工具
分数阶傅里叶变换
这里真的很想吐槽一下,网上关于分数阶傅里叶变换的学习资料真的是蛮少的,很多“大佬”对于这个数学方法的描述就是列出来一大堆复杂而又难懂的数学公式,看懂了数学公式,理清了推导过程也只是“知其然,而不知其所以然”,所以承担着掉几根头发的代价...我想到了一种以图像来理解分数阶傅里叶变换本质思想的方法,这将有助于后续的信号处理应用。当然,如果有数学系大佬指出其中理解不妥的地方,那真的非常感激!
我们不着急从这个复杂的数学方法入手,作为一个基本的工科生,我们一定是学过傅里叶变换的,如果你在平日的学习中习惯于思考,那么你一定会记得傅里叶变换就是在“帮助我们换个角度看世界”。
“世界变化无常,可换个角度,或许只是已经写好的乐章。”
傅爷爷告诉我们,任何周期函数(非周期函数需要无数个),都可以由许多不同振幅,不同相位的正弦波叠加而来。我们看一下下面这一张来自维基百科的图。
最前面那条黑色的函数曲线(矩形波),可以由后面多条正弦曲线叠加而成,这些依不同颜色排列而成的正弦曲线就是组合成为矩形波的各个频率分量。细心的你可能发现中间有一些直线,这些直线是振幅为0的正弦曲线,这就说明为了组成不同的曲线,有些频率成分是不需要的!
OK,既然我们已经回忆了一般的傅里叶变换做了什么事情,那我们接下来就可以想一下,一条时间维度上的信号曲线到底换了怎么样的角度而到了我们想要频域空间呢??必须要天马行空的想想,这对于帮助我们理解分数阶傅里叶变换有着至关重要的作用!
我们看下面这张图:
一开始,我(ChiX-Y)站在垂直时间轴而平行于频率轴的方向,这个时候我看到的就是那一条红色的曲线(它由后面许多不同频率成分的正弦波叠加而成),从这个角度看到的红色曲线其实就是时间域上的信号曲线了,ok,那么我要换什么角度才能够看到频域世界里这条曲线的模样呢?我想你们一定已经想到了,对,就是逆时针旋转90°以后,从侧面方向来看这一天红色曲线!!!(如下图)
我走到上图中的这个角度以后,我看到各个频率成分的正弦曲线就是一条条平行于Z轴的竖线,而此时的横轴是频率轴,怎么样?熟悉吗?这不就是我们一直以来求的频谱吗!!!
所以我们完全可以这么去解释傅里叶变换:信号的Fourier变换可以看成将其在时间轴上逆时针旋转 π/2到频率轴上的!换句好理解的话来讲,信号的Fourier变换就是从时间轴角度转了90°到频率轴上来看到的新世界!
OK,既然我想到了以这么一种立体而又形象的角度去看待傅里叶变换,那么接下来的分数阶傅里叶变换就容易解释了!
所谓的分数阶傅里叶变换就是换更多的角度去看待问题,怎么解释?
就是我在从初始位置走向90°方位的时候,并不是一次性的就走过去了,而是每走一定的角度就停下来看一看我们在当前角度下能够看到红色信号曲线的什么特征与特性,并记录每个角度下“频率域”的频谱,这么做是因为大部分的信号都是非平稳信号,仅仅用傅里叶变换不足以分析其显著的特征,运用分数阶傅里叶变换主要是能选取信息最集中的角度去分析。
大家想想,分析问题的角度越多,是不是解决问题的方法就越完善呢?
到这里我希望大家是能够理解了我分析这个数学方法的角度,也希望各位能够从复杂的数学公式中跳脱出来,真正理解了分数阶傅里叶变换到底做了什么事情,做到了这一点,让我想到了利用信息熵来做信号处理的一种思路!
三.信息熵+分数阶傅里叶变换->信号处理
如果理解了前文我所写的全部内容,那么接下来这个信号处理的思路就真的很简单了,算是自己的一些想法吧,我拿心电信号来举例子:
(1)采集一段心电信号并做预处理,获得信号d
(2)对信号d进行n个阶次(n个角度,大家懂的!)的分数阶傅里叶变换,从而进一步得到每一个阶次变换的幅度谱 Fi
(3)对幅度谱 Fi归一化后,计算每一个幅度谱的信息熵,n个阶次对应n个信息熵,从而得到一个n点长的向量[E1,...,Ei,...,En],这个向量就可以作为心电信号所提取的特征,然后进一步用于算法的学习与信号分类。
这样的思路我认为有两个优势:第一是从更多的角度去提取信号的特征,使得信号特征更为丰富与全面,能够提升对信号分类与识别准确率;第二是利用信息熵有效缓解了角度过而导致的特征过于复杂的问题,因为一个角度的信息熵只有一个值哦!
四.有趣的感悟
我们眼中的世界就像是一条条时域中的曲线,变换多端,毫无规律,难以预测......但或许真的存在一种角度,能够看到其实我们的世界真的没有那么复杂,它只是一场已经安排好的音乐会,每一个音符都已经注定会出现,就像是频谱中一条条平行于Z轴的直线,简单清晰。
编辑于 2021-08-13 12:25
相关文章:

分数阶傅里叶变换与信息熵怎么用于信号处理?
天马行空的理解与思考方式:分数阶傅里叶变换与信息熵怎么用于信号处理? ChiX-Y 快速学习,快速尝试,快速失败 已关注 35 人赞同了该文章 这篇文章希望能写的有趣,同时有质量,学习就是要多维度多角度&…...

web3.0 开发实践
优质博文:IT-BLOG-CN 一、简介 Web3.0也称为去中心化网络,是对互联网未来演进的一种概念性描述。它代表着对现有互联网的下一代版本的设想和期望。Web3.0的目标是通过整合区块链技术、分布式系统和加密技术等新兴技术,构建一个更加去中心化…...

【华为HCIP实战课程三十】中间到中间系统协议IS-IS路由渗透及TAG标识详解,网络工程师
一、路由泄露 1、默认情况Level 1不会学到Level2的明细路由,L2可以学到L1的明细路由 2、FIB数据转发,路由负载,通过随机数据中的五元组hash,hash值决定数据走哪条链路 R1设备ping和telnet通过抓包查看走的都是S1/0/0接口 抓包进行过滤;ip.a…...
大模型论文精华-20241104
工具而不是对等:框架如何影响人们对 Teams 中 AI 代理的看法 研究问题 随着人工智能技术的发展及其在团队环境中日益广泛的应用,人们对于如何理解和评价AI代理的态度和看法变得尤为重要。该研究关注于探讨不同框架下人们对AI代理的感知差异,…...
mac ssh 连接 linux 服务器
生成 SSH 密钥对 打开终端: 你可以通过 Spotlight 搜索 “Terminal” 打开终端。 生成密钥对: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" 手动复制公钥(可选) 如果 ssh-copy-id 命令不可用࿰…...

逻辑卷建立
逻辑卷 lvm逻辑卷即为:logical volume manager逻辑管理卷,是linux系统下管理硬盘分区的一种机制,lvm适合于管理大型存储文件,用户可以动态的对磁盘进行扩容 作用 lvm:linux系统的一个重要的存储技术 不同的硬盘的不…...

算法深度剖析:前缀和
文章目录 前言一、一维前缀和模板二、二维前缀和模板三、寻找数组的中心下标四、除自身以外数组的乘积五、和为 K 的子数组六、和可被 K 整除的子数组七、连续数组八、矩阵区域和 前言 本章将深度剖析前缀和,以及总结前缀和模板。 前缀和是一种在算法和数据处理中…...

【双目视觉标定】——1原理与实践
0 前言 双目视觉定位是目前机器(机器人)等领域中使用得非常广泛的视觉定位技术,双目视觉是模拟人的视觉系统利用两个不同位置的摄像头的视差来确定物体的位置。由于有需要采集两个摄像头的图像共同参与计算,所以双目相机装配要求…...
Java学习笔记(十二)
Mysql explain Extra MySQL的EXPLAIN语句是优化数据库查询的重要手段,其中的Extra列包含了不适合在其他列中显示但十分重要的额外信息。以下是对Extra列的详细介绍及举例: 一、Using filesort 解释:表示MySQL会对数据使用一个外部的索引排序…...
《Java 实现希尔排序:原理剖析与代码详解》
目录 一、引言 二、希尔排序原理 三、代码分析 1. 代码整体结构 2. main方法 3. sort方法(希尔排序核心逻辑) 四、测试结果 一、引言 在排序算法的大家族中,希尔排序是一种改进的插入排序算法,它通过将原始数据分成多个子序…...

RDMA驱动学习(二)- command queue
为了实现用户对网卡硬件的配置,查询,或者执行比如create_cq等命令,mellanox网卡提供了command queue mailbox的机制,本节将以create_cq为例看下这个过程。 command queue(后续简称cmdq)是一个4K对齐的长度…...
H2 Database IDEA 源码 DEBUG 环境搭建
H2 Database IDEA 源码 DEBUG 环境搭建 基于最新的 version-2.3.230 拉取分支。 git remote add h2 https://github.com/h2database/h2database.git git fetch h2 git checkout -b version-2.3.230 version-2.3.230使用 # 启动 java -jar h2*.jar# H2 shell 方式使用 java …...
nginx系列--(三)--http
本文主要介绍http模块accept read流程,!!!请求对应的响应直接在read流程里就会返回给用户,而不需要通过write事件,和redis一样,基本都不通过eventloop write事件来发送响应给客户端,…...

通过Wireshark抓包分析,体验HTTP请求的一次完整交互过程
目录 一、关于Wireshark 1.1、 什么是Wireshark 1.2、下载及安装 二、HTTP介绍 2.1、HTTP请求过程介绍 2.2 、TCP协议基础知识 2.2.1、概念介绍 2.2.2、TCP协议的工作原理 2.2.3、三次握手建立连接 2.3.4、四次挥手断开连接 2.3、Wireshark抓包分析过程 2.3.1、三次握…...

Requestium:Python中的Web自动化新贵
文章目录 Requestium:Python中的Web自动化新贵背景:为何选择Requestium?Requestium是什么?如何安装Requestium?简单的库函数使用方法场景应用常见Bug及解决方案总结 Requestium:Python中的Web自动化新贵 背…...

2024版红娘金媒10.3婚恋相亲系统源码小程序(亲测)
1. 红娘服务 红娘服务模块是该系统的一大特色。专业红娘会通过分析用户的个人资料和偏好, 为用户提供精准的配对建议和个性化服务。用户可以预约红娘服务,通过红娘的介入,提升配对成功率。 2. 相亲活动 相亲活动模块用于组织和管理线下或线…...
k8s-实战——ES集群部署
文章目录 yaml文件es-pvc.yamles-svc.yamles-cluster-sts.yaml创建elasticsearch集群yaml文件 es-pvc.yaml 通过nfs服务进行新增pv并通过labels关联pvc前置准备需要提前准备pv的服务器以及挂在路径--- apiVersion: v1 kind: PersistentVolume metadata:name: nfs-es-pv-data-...

无人机的就业前景怎么样?
无人机的就业前景在当前及未来一段时间内都非常广阔。随着低空经济的蓬勃发展,无人机在农业、公安、测绘、交通、应急救援、影视拍摄等多个领域得到了广泛应用,对无人机操控员和相关专业人才的需求也随之急剧增加。 一、无人机操控员的就业前景 1. 高需…...

【学习】软件测试中V模型、W模型、螺旋模型三者介绍
在软件工程的星辰大海之中,存在着三种独特的航路图:V模型、W模型以及螺旋模型。它们分别以各自的方式描绘了软件开发与测试的不同旅程。 首先映入眼帘的是V模型——一个以垂直线条贯穿始终的简洁图形。这个模型如同一座倒立的“V”字形山峰,…...

Kafka存储机制大揭秘:从日志结构到清理策略的全面解析
文章目录 一、前言二、日志存储结构1.日志文件结构2.topic3.partition4.segment索引文件5.message结构6.message查找过程 三、存储策略1.顺序写2.页缓存3.零拷贝4.缓存机制 四、日志格式演变1.V0 版本2.V1 版本3.V0/V1消息集合4.V2 版本消息格式5.V2版本消息集合 五、偏移量维护…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
基于服务器使用 apt 安装、配置 Nginx
🧾 一、查看可安装的 Nginx 版本 首先,你可以运行以下命令查看可用版本: apt-cache madison nginx-core输出示例: nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...

三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...
LRU 缓存机制详解与实现(Java版) + 力扣解决
📌 LRU 缓存机制详解与实现(Java版) 一、📖 问题背景 在日常开发中,我们经常会使用 缓存(Cache) 来提升性能。但由于内存有限,缓存不可能无限增长,于是需要策略决定&am…...

论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing
Muffin 论文 现有方法 CRADLE 和 LEMON,依赖模型推理阶段输出进行差分测试,但在训练阶段是不可行的,因为训练阶段直到最后才有固定输出,中间过程是不断变化的。API 库覆盖低,因为各个 API 都是在各种具体场景下使用。…...
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么?它的作用是什么? Spring框架的核心容器是IoC(控制反转)容器。它的主要作用是管理对…...