主要内容

小波时频分析

可视化信号的尺度图

描述

小波时频分析app是一个交互式工具,用于可视化实值和复值1-D信号的尺度图。尺度图是连续小波变换(CWT)的绝对值作为时间和频率的函数绘制。频率以对数刻度标出。有了这款应用,你可以:

  • 在MATLAB中访问所有1-D信号®工作空间

  • 同时导入多个信号

  • 调整默认参数并使用

  • 选择需要的解析小波

  • 调整解析莫尔斯小波对称性和时间带宽参数

  • 将CWT导出到您的工作区

  • 通过生成MATLAB脚本,在您的工作空间中重新创建规模图

  • 导入多个信号

有关更多信息,请参见使用小波时频分析仪App

打开小波时频分析软件

  • MATLAB工具条:在应用程序选项卡,在信号处理与通信,单击应用程序图标。

  • MATLAB命令提示符:输入waveletTimeFrequencyAnalyzer

例子

全部展开

加载三个1-D信号到MATLAB®工作空间:一个心电图信号,一个双曲啁啾信号,和NPG2006数据集。

负载wecg负载hyperbolchirp负载npg2006

提取复值信号npg2006结构数组。

npgdata = npg2006.cx;谁
名称大小字节类属性hyperbolchirp 2048x1 33759时间表npg2006 1x1 37184 struct npgdata 1117x1 17872 double complex wecg 2048x1 16384 double

开放小波时频分析并点击进口的信号.出现一个窗口,列出应用程序可以处理的所有工作区变量。

importSignals.png

选中所有信号,单击进口.在一个简短的、一次性的初始化之后,信号窗格中填充了导入信号的名称及其类型。在hyperbolchirp时,包含信号的时间表变量的名称被附加到时间表的名称后面:hyperbolchirp_hchirp.该应用程序显示突出显示的信号的标量图。标量图是使用使用默认设置。还绘制了显示边缘效应变得显著的影响锥。虚线白线外的灰色区域圈定了边缘效应显著的区域。默认情况下,频率以周期/样本为单位。

screenshot1.png

心电信号为实值。在信号窗格中,选择复值信号npgdata.显示标量图的正分量和负分量。

screenshot3.png

选择hyperbolchirp_hchirp.因为时间表包含时间信息,所以尺度图被绘制成频率的函数(以赫兹为单位),并使用时间表的行时间作为时间轴的基础。残疾人采样率字段显示根据行次数确定的采样率。

timetableScalo.png

加载双曲啁啾信号。

负载hyperbolchirp

开放小波时频分析并将信号导入到应用程序中。要访问参数设置,单击量图选项卡。默认情况下,应用程序显示使用分析莫尔斯(3,60)小波和使用默认设置。

通过单击,您可以随时将CWT参数重置为默认值重新设置参数.重置参数启用计算量图按钮。

screenshot4.png

使用(1,5)莫尔斯小波来可视化尺度图时间带宽积5。在状态栏中,出现说明有挂起更改的文本。的计算量图按钮现在已启用。如果你改为先设定对称到1时,应用程序会自动更改该值,因为对称值为1违反了比例的约束时间带宽积对称不应超过40。有关更多信息,请参见提示

screenshot5.png

现在设置对称到1,然后单击计算量图.该应用程序显示使用(1,5)莫尔斯小波获得的尺度图。

screenshot7.png

为了使用(6,50)莫尔斯小波可视化尺度图,首先设置时间带宽积50,对称到6,单击计算量图

输入信号

加载一个双曲啁啾信号到您的工作空间。

负载hyperbolchirp

可视化量图

开放小波时频分析然后导入信号。若要访问参数设置,请单击量图选项卡。默认情况下,应用程序显示使用莫尔斯(3,60)小波和使用默认设置。因为信号是一个时间表,标量图被绘制成频率的函数,单位为赫兹。时间轴是基于时间表的排时间。

量图选项卡,调整默认设置。指定Morse(5,20)小波。使用每个八度26个声音和周期性边界扩展来可视化尺度图。频率在对数刻度上标出。

2021 - 11 - 04 - _15 22 - 25. png

生成脚本

要调整尺度图中的频率轴刻度,首先在工作空间中再现小波分析。

生成一个脚本,在您的工作空间中重新创建规模图。从出口▼”菜单中,选择生成MATLAB脚本.在您的MATLAB®编辑器中打开一个无标题脚本。要在图中包含影响锥的边界,请添加第三个输出参数,细胞色素氧化酶,脚本中的函数调用。保存并执行脚本。的变量量图而且频率分别包含标量图和频率向量。

%的参数waveletParameters =(5、20);voicesPerOctave = 26;extendSignal = false;%计算类不带输出参数运行下面的函数调用来绘制结果[waveletTransform、频率、coi] = cwt (hyperbolchirp,...WaveletParameters = WaveletParameters,...VoicesPerOctave = VoicesPerOctave,...ExtendSignal = ExtendSignal);量图= abs (waveletTransform);

为了使用正确的时间轴绘制标量图,提取行时间向量,时间,从hyperbolchirp时间表。

dataTimes = hyperbolchirp.Time;

调整频率轴-线性刻度

使用pcolor函数绘制标量图。包括影响边界的锥体。频率以线性比例尺绘制。

pcolor (dataTimes、频率、量图)的阴影标题(“量图”)包含(“时间(s)”) ylabel (“频率(赫兹)”)举行情节(coi dataTimes,“w——”线宽= 2)colorbar

图中包含一个axes对象。标题为Scalogram的axis对象包含两个类型为surface、line的对象。

调整频率轴-对数刻度

要在对数刻度上绘制频率,请获取当前轴的句柄并设置YScale“日志”

甘氨胆酸AX =;设置(AX, YScale =“日志”

图中包含一个axes对象。标题为Scalogram的axis对象包含两个类型为surface、line的对象。

在MATLAB中,对数轴以10(几十)为幂。默认情况下,MATLAB将频率刻度设置为1、10和100,因为它们是最小和最大频率之间10的幂。若要添加更多的频率轴刻度,请获得中的最小和最大频率频率.在最小和最大频率之间创建一个对数间隔的频率集。请注意,返回从高到低的频率。

minf =频率(结束);maxf =频率(1);numfreq = 10;频率= logspace (log10 (minf) log10 (maxf) numfreq);

用新的频率替换频率轴刻度和标签。

斧子。YTickLabelMode =“汽车”;斧子。YTick =频率;

图中包含一个axes对象。标题为Scalogram的axis对象包含两个类型为surface、line的对象。

在CWT中,频率以2的幂计算。按2的幂创建频率嘀嗒和嘀嗒标签。

频率= 2 ^(圆(log2 (minf)):圆形(log2 (maxf)));斧子。YTickLabelMode =“汽车”;斧子。YTick =频率;

图中包含一个axes对象。标题为Scalogram的axis对象包含两个类型为surface、line的对象。

相关的例子

参数

分析小波用于计算CWT。有效的选项是莫尔斯Morlet,,分别指定了Morse, Morlet (Gabor)和bump小波。

指定莫尔斯小波的时间-带宽乘积为一个大于或等于的标量对称价值。的比率时间带宽积价值对称取值不能超过40。

的值时间带宽积而且对称对应于WaveletParameters名称-值参数

例子:设置时间带宽积到40,对称值设置为5相当于设置WaveletParameters名称-值参数类(…,WaveletParameters = 40[5],…)

将莫尔斯小波的对称参数指定为一个大于或等于1的标量。的比率时间带宽积价值对称取值不能超过40。

的值对称而且时间带宽积对应于WaveletParameters名称-值参数

指定用于CWT的每个八度的声音数,作为从1到48的整数。CWT音阶使用每个八度的特定数量的声音进行离散化。小波在频率和时间上的能量分布自动决定了最小和最大尺度。

编程使用

全部展开

waveletTimeFrequencyAnalyzer打开小波时频分析一旦app初始化,通过点击导入一个信号进行分析进口的信号

waveletTimeFrequencyAnalyzer (团体打开小波时频分析的标量图,并导入、生成和绘制团体使用使用默认设置。

团体是工作区中的一个变量。团体可以是:

  • 实值或复值向量

  • 单变量定期抽样时间表。

  • 单精度或双精度。

团体必须有至少四个样本。

默认情况下,应用程序以周期/样本为单位绘制频率函数的尺度图,并使用样本索引作为时间轴的基础。如果信号是一个时间表,那么应用程序绘制的尺度图作为频率的函数,以赫兹为单位,并使用时间表的行时间作为时间轴的基础。

限制

  • 生成的用于在工作空间中创建尺度图的MATLAB脚本使用信号窗格。如果该变量在MATLAB工作区中不存在,该脚本将抛出一个错误。如果发生错误,要么用原始信号的名称替换脚本中的变量名,要么在工作区中创建该变量。

  • 类的一个实例小波时频分析app在MATLAB会话中。

提示

  • 莫尔斯小波参数,时间带宽积而且对称,必须满足三个约束条件:

    • 对称,或者,必须大于等于1。

    • 时间带宽积必须大于或等于对称

    • 的比例时间带宽积对称不能超过40。

    为了防止使用无效设置来可视化规模图,应用程序会验证您更改的任何参数。如果你输入的值违反了约束,应用程序会自动用一个有效值替换它。新值可能不是所需的值。为了避免意外的结果,您应该确保您输入的任何值总是得到有效的设置。有关更多信息,请参见示例调整莫尔斯小波参数

版本历史

介绍了R2022a

Baidu
map