MATLAB环境下一维时间序列信号的同步压缩小波包变换

时频分析相较于目前的时域、频域信号处理方法在分析时变信号方面,其主要优势在于可以同时提供时域和频域等多域信号信息,并清晰的刻画了频率随时间的变化规律,已被广泛用于医学工程、地震、雷达、生物及机械等领域。

线性时频分析方法是将信号分解为时域和频域中基的加权和,例如短时傅里叶变换STFT和小波变换WT。短时傅里叶变换利用短窗口沿时间尺度移动以对信号进行切片,可以获得每个片段的局部傅里叶谱,揭示信号的变化规律。由于海森堡不确定原理,STFT方法在达到最优时间位置时其时频分辨率较低,反之亦然。因此,该方法缺乏适应性,它只适用于分析在短时间窗尺度上的平稳信号,而不适用于分析信号中的高瞬态冲击信号。小波变换是一种重要的信号处理工具,利用可变窗同时兼顾高低频信号的分辨率,适用于非平稳信号分析。但也存在不足之处,小波变换对低频信号进行迭代分解,而对高频的细节信号没有进一步的处理。对于高频分量,小波变换具有较好的时间局域特性,但无法满足最佳频率分辨率的要求;对于低频分量,当达到最优频率分辨率时,而时间局部特性呈现出较差的状态。此外,小波变换还存在与母小波选择标准、边界失真、能量泄漏相关的问题。

二次时频分布主要属于Cohen类双线性时频能量分布,其中最常用的是Wigner-Ville分布及其变体。二次时频分布不包含任何窗函数,因此不受不确定性的影响,但是其交叉项在处理多分量信号中产生较大的影响。尽管这种干扰可以通过平滑处理来减弱,但平滑后的分布会变得模糊,降低时频分辨率。二次时频分析方法的理论中尽管有许多优良的性质,但是由于不能直接重构信号,限制了在实际问题中的应用。

为了提高时频分析的质量,众多学者已经开发了一些时频重分配方法。时频重分配方法是通过修改原始谱能量分布来提高原始线性或二次时频变换的可读性的后处理技术。重新分配后,频谱能量将集中在瞬时频率附近,避免了人为干预。Daubechies和Oberlin分别基于CWT和STFT提出了同步压缩变换SST。

SST方法是通过将时频系数压缩至瞬时频率的轨迹中进行设计的,提高了时频的分辨率并重建了原始信号。但在强噪声的干扰下SST方法的时频分辨率较低,并且由于其对真实瞬时频率分布的估计偏差而导致时频能量不集中。

同步压缩小波包变换方法首先将信号进行小波包变换得到小波包变换系数,然后求取信号的瞬时频率,最后对小波包变换系数沿信号瞬时频率方向进行压缩,从而将各频率成分清晰呈现于时频图中,可以提高时频分辨率。

程序运行环境为MATLAB R2018A,执行一维时间序列信号的同步压缩小波包变换,并给出了模拟信号和实际信号的例子。算法可迁移至金融时间序列,地震信号,语音信号,声信号,生理信号等一维时间序列信号。

部分代码如下:

% Inputs
%  x      input signal, a vector of length N
%
% Optional Inputs
%  is_real   Type of the transform
%          0: complex-valued wave packets
%          1: real-valued wave packets
%        [default set to 0]
%  is_unif   whether x is sampled on a uniform grid
%        0: No; 1: Yes
%  typeNUFFT  1: NUFFT by Air Force Lab
%        2: USFFT by E. Candes
%        3: NUFFT by L. Greengard and J.-Y. Lee
%        4: Direct non-uniform Fourier Transform
%  xo     non-uniform locations at which x is measured
%  NG     number of subsampled points in time
%  [R_low R_high]     The range of interested spectrum
%  rad     a parameter to adjust the size of supports of the mother wave packet in
%        the frequency domain, rad <= 2.
%  is_cos   Type of the window function
%          0: C^infinity window function
%          1: cosine window function
%        [default set to 0]
%  t_sc    scaling parameter for radius
%        [default set to 1-1/4]
%  red     redundancy parameter, red is a positive integer
%        [default set to 1]
%  epsl    threshold for instantaneous frequency estimates
%        [default set to 1e-2]
%  h      frequency band width per pixel in the synchrosqueezed
%        time-frequency representation
%        [default set to 1]
%  is_fac   0: do not increase the magnitude of high frequency wave
%        packet coefficients; 1: increase;
%        [default set to 1, better to visualize high frequency
%        instantaneous frequencies]
%  wedge_length_coarse
%        length of coarsest wedge
%        [default set to 4]
%
% Outputs
%  T_f     1D synchrosqueezed wave packet transform, a matrix with NG columns, each column represent frequency
%        information at a fixed time
%  coef    1D wave packet transform coefficients of x
%  kk     instantaneous frequency estimates from each wave packet
%        coefficient

出图如下:

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

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

相关文章

CS50x 2024 - Lecture 2 - Arrays

00:00:00 - Introduction 00:01:01 - Story Time 00:06:03 - Compiling make本身并不是编译器&#xff0c;实际上是一个自动运行编译器的程序&#xff0c;如c语言的clang clang -o hello hello.csrc/ $ clang -o hello hello_world.c /usr/bin/ld: /tmp/hello_world-67f51…

python+django高校教务选课成绩系统v0143

系统主要实现了以下功能模块&#xff1a; 本课题使用Python语言进行开发。基于web,代码层面的操作主要在PyCharm中进行&#xff0c;将系统所使用到的表以及数据存储到MySQL数据库中 使用说明 使用Navicat或者其它工具&#xff0c;在mysql中创建对应名称的数据库&#xff0c;并…

Minecraft的红石教程之电梯

一.前言 我记得是上初中的时候&#xff0c;就看到了这类电梯。现在我在看现在这类电梯的相关视频&#xff0c;大多是盗用创意未能领会其中的红石运作规律&#xff0c;于是我就删繁就简写了这篇。 二.步骤 1.材料 粘性活塞&#xff0c;黏液块&#xff0c;红石&#xff0c;红…

什么是CDR数字音频广播

一、什么是数字音频广播 CDR(China DigilalRadio)&#xff0c;即中国数字音领广播&#xff0c;是运用广播数字化技术&#xff0c;通过对音领信号进行信源编码、信道编码和载波调制传输&#xff0c;来实现数字音频广播业务和数据业务的播出。CDR与传统的FM调频广播相比&#xff…

SAP-PP-01-004物料主数据MRP视图参数

一、MRP1 MRP组 系统运行的 mrp 控制参数的组别。包含物料主数据中的一些 MRP 参数字段及工厂运行 MRP 控制设置参数&#xff0c;例如策略组、消耗模式、重计划期间、计划区间、计划时界、BOM 展开、计划订单转换的采购申请&#xff08;PR&#xff09;类型等。 工厂特定的物料…

你的立身之本是什么?

去年发生的一切&#xff0c;大到疫情、政治经济形势、行业的萎靡和震荡&#xff0c;小到身边的跳槽、裁员、公司倒闭……似乎都在告诉我们&#xff1a; 当冲击到来的时候&#xff0c;它是不会提前跟你打招呼的。 接下来的10年&#xff0c;我们所面临的不确定性&#xff0c;比起…

Mac电脑到手后的配置

一、Homebrew 1、Homebrew安装 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 桌面的Old_Homebrew文件夹&#xff0c;没有你需要的可以删除。 2、Homebrew卸载 /bin/zsh -c "$(curl -fsSL https://gitee.com/c…

C语言函数(三):数组和函数实现扫雷游戏

目录 1.扫雷游戏的分析和设计1.1.扫雷游戏的功能说明1.2.游戏的分析与设计1.2.1 数据结构的分析1.2.2 文件结构设计 2.扫雷游戏的代码实现 1.扫雷游戏的分析和设计 1.1.扫雷游戏的功能说明 使用控制台实现经典的扫雷游戏游戏可以通过菜单实现继续玩游戏或者退出游戏扫雷的棋盘…

ssm+vue的医药垃圾分类管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的医药垃圾分类管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结…

【Linux】Linux下的基本指令

Linux下的基本指令 Linux 的操作特点&#xff1a;纯命令行ls 指令文件 pwd命令Linux的目录结构绝对路径 / 相对路径&#xff0c;我该怎么选择&#xff1f; cd指令touch指令mkdir指令&#xff08;重要&#xff09;rmdir指令rm 指令&#xff08;重要&#xff09;man指令&#xff…

RocketMQ(二):领域模型(生产者、消费者)

1 生产者&#xff08;Producer&#xff09; 本节介绍Apache RocketMQ 中生产者的定义、模型关系、内部属性、版本兼容和使用建议。 1.1 定义 生产者是Apache RocketMQ 系统中用来构建并传输消息到服务端的运行实体。 生产者通常被集成在业务系统中&#xff0c;将业务消息按照要…

【MySQL】字符串函数的学习

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-J7VN4RbrBi51ozap {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

kali最新最简单安装

之前都是用iso镜像文件的 今年好多东西都删库了&#xff0c;所有还是要主要资源的保存 去官网找下载 一般来说都是用虚拟机的 下载完会是一个压缩文件&#xff0c; 解压&#xff0c;然后操作之前需要先下载虚拟机 打开方式用虚拟机打开 kali就按装好了

Spring Boot3统一结果封装

⛰️个人主页: 蒾酒 &#x1f525;系列专栏&#xff1a;《spring boot实战》 &#x1f30a;山高路远&#xff0c;行路漫漫&#xff0c;终有归途。 目录 前置条件 封装目的 常用格式 定义返回结果枚举类 定义返回结果封装类 对返回结果封装 测试封装 前置条件 已…

「daily updating」k3s + openfaas serverless bench 踩坑指南持续更新中

OpenFaas从入门到实战 – 踩坑指南 &#xff5c; k3dOpenFaas | deploy your first python function https://blog.alexellis.io/first-faas-python-function/ https://docs.openfaas.com/deployment/kubernetes/ 搭建环境&#xff1a;第一种方法失败&#xff0c;第二种方法…

【SpringBootStarter】自定义全局加解密组件

【SpringBootStarter】 目的 了解SpringBoot Starter相关概念以及开发流程实现自定义SpringBoot Starter(全局加解密)了解测试流程优化 最终引用的效果&#xff1a; <dependency><groupId>com.xbhog</groupId><artifactId>globalValidation-spring…

[职场] 大厂群面的基本题型 #学习方法#其他

大厂群面的基本题型 大厂群面的基本题型 群面&#xff0c;又叫做“无领导小组面试”。历年来是企业校招时&#xff0c;进行大批量刷人的有效方法。流行于互联网、快消、银行、四大等多个行业。因为难度大、情况复杂、淘汰率高&#xff0c;又被称为“死亡面试”。 无领导小组…

CSP-202012-2-期末预测之最佳阈值

CSP-202012-2-期末预测之最佳阈值 【70分思路】 本题的难点还是时间复杂度&#xff0c;暴力枚举会导致时间超限。对于每一个可能的阈值theta&#xff0c;代码都重新计算了整个predict数组&#xff0c;统计预测正确的数目&#xff0c;因为有两个嵌套的循环&#xff0c;使得时间…

计算机网络之一

目录 1.因特网概述 1.1网络、互连网&#xff08;互联网&#xff09;和因特网 1.2.因特网发展的三个阶段 1.3基于ISP的三层架构的因特网 1.4.因特网的组成 2.三种交换方式 2.1电路交换 2.2分组交换 1.因特网概述 1.1网络、互连网&#xff08;互联网&#xff09;和因特网…

Git分支常用指令

目录 1 git branch 2 git branch xx 3 git checkout xx 4 git checkout -b xx 5 git branch -d xx 6 git branch -D xx 7 git merge xx(含快进模式和冲突解决的讲解) 注意git-log: 1 git branch 作用&#xff1a;查看分支 示例&#xff1a; 2 git branch xx 作用&a…