cwtfilterbank

连续小波变换滤波器组

描述

使用cwtfilterbank以产生连续小波变换(CWT)滤波器组。在滤波器组小波使用的是默认的解析莫尔斯(3,60)小波。你可以改变时间带宽和对称性参数莫尔斯小波,调整莫尔斯小波满足您的需求。您还可以使用分析的Morlet(的Gabor)小波或碰撞小波。当在时间 - 频率分析多个信号,提高计算效率,可以预先计算一次过滤器,然后再通过滤波器组作为输入来英担。随着滤波器组,你可以想像在时间和频率小波。您还可以创建滤波器组具有特定频率或周期范围,并测量3分贝带宽。您可以确定在滤波器组中小波的品质因数。

创建

描述

FB= cwtfilterbank产生连续小波变换(CWT)滤波器组FB。滤波器被归一化,使得峰值幅度为所有通带是近似等于2的默认滤波器组被设计用于与1024个样本的信号。默认滤波器组使用的分析莫尔斯(3,60)小波。滤波器组使用默认秤:每倍频程近似10个小波带通滤波器(每倍频程10周的声音)。最高频率通带被设计成量值下降到奈奎斯特频率峰值的一半。

正如所实现的,CWT使用L1归一化。当L1归一化后,不同尺度的等振幅振荡分量在连续小波变换中具有相同的幅度。L1归一化提供了更准确的信号表示。振荡分量的振幅与对应小波系数的振幅一致。看到正弦和小波系数振幅

FB可以被用作用于输入英担

FB= cwtfilterbank(名称,值创建一个CWT滤波器组FB与由一个或多个指定的属性名称,值对参数。属性可以以任意顺序指定名1,值1,...,NameN,值N。在引号中每个属性的名称。

注意

你不能改变现有的滤波器组的属性值。举例来说,如果你有一个滤波器组FBSignalLength在2000年,您必须创建第二个过滤器组FB2与2001年的样品处理的信号。您不能分配不同的SignalLengthFB

属性

展开全部

的信号的长度,指定为一个正整数。信号必须至少有四个样本。

例:'SignalLength',1700

数据类型:

分析小波滤波器组使用,指定为“摩斯”“阿穆尔”,或“撞”。这些字符串指定的解析莫尔斯的Morlet(伽柏),并分别撞击小波,。默认的小波是分析莫尔斯(3,60)小波。

默认情况下,对于莫尔斯小波,频率响应衰减到奈奎斯特峰值幅度的50%。对于Morlet和bump小波,频率响应衰减到峰值幅度的10%。您可以通过设置过滤器组来改变衰减率FrequencyLimits属性。看到cwtfreqbounds

对于莫尔斯小波,你也可以使用参数化小波TimeBandwidthWaveletParameters属性。

例:“小波”,“碰撞”

每倍频程的声音要用于CWT,指定为偶数整数的4至48。CWT秤使用每倍频程的声音指定数目的离散的数。在频率和时间的小波变换的能量扩展自动确定的最小和最大尺度。

您可以使用cwtfreqbounds来确定小波滤波器组的频率范围。频率限制取决于参数,诸如子波的能量传播,每倍频程,信号长度和采样频率的声音的数目。

例:'VoicesPerOctave',20

数据类型:|

以赫兹为单位的采样频率,指定为正标量。如果未指定,频率是周期/样品中和奈奎斯特频率为1/2。要在指定时间尺度,使用SamplingPeriodPeriodLimits属性。

不能同时指定采样频率SamplingPeriod属性。

例:'SamplingFrequency',5

数据类型:|

小波滤波器组的频率范围,指定为具有正严格递增条目的两个元素的矢量。所述第一元素指定最低峰值通频带频率。频率必须大于或等于给小波峰值频率的乘积在赫兹和两个时间标准偏差由信号长度划分。最大频率和最小频率比的基体2的对数必须大于或等于1 /NV,其中NV每倍频程的声音的数量。的上限频率必须小于或等于奈奎斯特。

如果你指定了超出允许范围的频率限制,cwtfilterbank截断限制到最小和最大值。使用cwtfreqbounds以确定的小波变换不同参数化的频率限制。

如果使用的滤波器组一个采样周期,你不能指定FrequencyLimits属性。

例:“FrequencyLimits”“SamplingFrequency”, 20日,[1 5]

数据类型:

采样周期,指定为标量的持续时间。不能同时指定采样频率SamplingPeriod属性。

例:'SamplingPeriod',秒(0.5)

数据类型:持续时间

小波滤波器组的周期限制,指定为两元件持续时间阵列正严格递增的条目。的第一要素PeriodLimits指定最大峰值通带频率必须大于或等于两倍SamplingPeriod。最小周期的最大周期的比率的基部2的对数必须小于或等于-1 /NV,其中NV每倍频程的声音的数量。最大周期不能超过信号长度由小波的两个时间标准偏差和小波峰值频率的乘积。

如果您指定的允许范围之外期限的限制,cwtfilterbank截断限制到最小和最大值。使用cwtfreqbounds以确定的小波变换不同的参数化期间的限制。

如果使用的滤波器组的采样频率,你不能指定PeriodLimits属性。

例:'SamplingPeriod',秒(0.1), 'PeriodLimits',[秒(0.2)秒(1)]

数据类型:持续时间

莫尔斯小波时间 - 带宽积,指定为正标量。此属性是唯一有效的当小波属性“摩斯”。这个性质指定了莫尔斯小波与固定在3的对称参数(伽马)的时间带宽乘积。TimeBandwidth大于3的正数严格且小于或等于120。

所述的时间 - 带宽积越大,越扩散出来的小波是在时间和更窄的小波是在频率。莫尔斯的标准偏差在小波时间大约SQRT(TimeBandwidth / 2)。在频率的标准偏差大约是二分之一* SQRT(2 / TimeBandwidth)。看到广义Morse和分析的Morlet小波

TimeBandwidthWaveletParameters特性不能同时被指定。

用符号表示莫尔斯小波TimeBandwidthP2

例:'TimeBandwidth',20

数据类型:

莫尔斯小波参数,指定为二元向量。第一个元素是对称参数(gamma),它必须大于或等于1。第二个元素是时间带宽积,它必须严格大于。时间带宽积与伽马的比率不能超过40。

当= 3时,莫尔斯小波在频域内完全对称。偏度等于0。大于3的值为正偏度,小于3的值为负偏度。WaveletParameters如果是唯一有效的小波属性设置为“摩斯”

欲了解更多信息,请参阅莫尔斯小波

WaveletParametersTimeBandwidth特性不能同时被指定。

例:'WaveletParameters',[4,20]

信号的边界延伸,指定为“反射”“周期性”。确定如何在边界处处理数据。

例:“边界”,“周期性”

对象函数

重量 连续小波与滤波器组变换
freqz CWT滤波器组频率响应
小波 CWT滤波器组的时域小波
尺度 CWT滤波器组尺度
wavelet金宝appsupport CWT滤波器组时间支持金宝app
qfactor CWT滤波器组品质因数
powerbw CWT滤波器组3分贝带宽
centerFrequencies CWT滤波器组的带通中心频率
centerPeriods CWT滤波器组的带通中心时间

例子

全部收缩

创建一个连续小波变换滤波器组。

FB = cwtfilterbank
小波采样频率:1采样周期:[]周期限制:[]信号长度:1024频率限制:[]时间带宽:60小波参数:[]边界:“反射”

画出幅频响应。

freqz(神奇动物)

创建两个正弦波与16和64赫兹的频率。在1000Hz的数据进行采样。画出信号。

FS = 1E3;t = 0时:1 / FS:1-1 / FS;。X = COS(2 * PI * 64 * T)*(T> = 0.1&T <0.3)+ SIN(2 * PI * 16 * T)*(T> = 0.5&T <0.9);图(T,X)标题('信号'

为信号创建一个CWT滤波器组。绘制滤波器组中小波的频率响应。

FB = cwtfilterbank(“SignalLength”,numel(T),'采样频率',FS);freqz(FB)标题(“频率响应 - 莫尔斯(3,60)小波”

解析莫尔斯(3,60)小波是默认的小波滤波器组。小波具有时间 - 带宽积等于60创建第二滤波器组相同于第一滤波器组,而是使用解析莫尔斯(3,5)小波。积于第二滤波器组的小波的频率响应。

fb3x5 = cwtfilterbank (“SignalLength”,numel(T),'采样频率',FS,'TimeBandwidth',5);图freqz(fb3x5)标题(“频率响应 - 莫尔斯(3,5)小波”

观察频率响应比第一个滤波器组更宽。莫尔斯(3,60)小波比莫尔斯(3,5)小波在频率上有更好的局部化。将每个滤波器组应用到信号上,并绘制出最终的图像。观察莫尔斯(3,60)小波比莫尔斯(3,5)小波有更好的频率分辨率。

图CWT(X,“滤波器”,FB)标题('震级尺度图 - 莫尔斯(3,60)'

图CWT(X,“滤波器”fb3x5)标题('震级尺度图 - 莫尔斯(3,5)'

这个例子表明,振动分量的一个信号的幅度同意与相应的小波系数的幅值。

创建两个正弦波在时间不相交的支持组成的信号。金宝app一个正弦曲线具有32赫兹的频率和振幅等于1的其他正弦曲线具有64赫兹的频率和振幅等于2的信号在1000Hz一秒采样。画出信号。

frq1 = 32;AMP1 = 1;frq2 = 64;AMP2 = 2;FS = 1E3;t = 0时:1 / FS:1;X = AMP1 * SIN(2 * PI * frq1 * T)*(T> = 0.1&T <0.3)+ AMP2 * SIN(2 * PI * frq2 * T)*(T> 0.6吨<0.9);图(T,X)格xlabel(的时间(秒))ylabel ('振幅')标题('信号'

创建一个可以应用到信号CWT滤波器组。由于信号分量频率是已知的,设置滤波器组的频率范围,其包括已知的频率的窄范围。要确认的范围,绘制了滤波器组的幅频响应。

FB = cwtfilterbank(“SignalLength”,numel(X),'采样频率',FS,'FrequencyLimits'[20 100]);图freqz(FB)

使用英担和滤波器组绘制的信号量图。

图CWT(X,“滤波器”,FB)

执行这个脚本并使用一个数据游标来确认小波系数的振幅实际上等于正弦分量的振幅。

此示例示出了如何改变广义莫尔斯的时间带宽参数小波来近似解析Morlet小波。

广义莫尔斯小波是一类精确解析小波。莫尔斯小波有两个参数:对称性和时间带宽积。您可以改变这些参数来获得具有不同性质和行为的分析小波。有关其他信息,请参见莫尔斯小波以及其中的参考文献。

装载1995年神户大地震期间记录的地震数据。这些数据是地震仪(垂直加速度,纳米/ sq.sec)在20时56分51秒(北京时间),在塔斯马尼亚大学,澳大利亚霍巴特1月16日1995年开始记录的测量值,并且持续以1秒间隔51分钟。创建可应用于数据默认设置的CWT滤波器组。使用滤波器组来生成量图。

加载科比FB = cwtfilterbank(“SignalLength”元素个数(科比),'采样频率',1);英担(科比,“滤波器”,FB)

小波系数的幅度是在10兆赫至100兆赫的频率范围大。创建设置这些值频率限制的新的滤波器组。生成量图。

FB2 = cwtfilterbank(“SignalLength”元素个数(科比),'采样频率'1,'FrequencyLimits',[1E-2 1E-1]);英担(科比,“滤波器”,FB2)标题(“违约(60)莫尔斯”

默认情况下,cwtfilterbank使用(3,60)莫尔斯小波。使用分析Morlet小波具有相同频率的限制创建滤波器组。生成尺度图和与由所述(3,60)中产生的尺度图莫尔斯小波进行比较。

fbMorlet = cwtfilterbank (“SignalLength”元素个数(科比),'采样频率'1,'FrequencyLimits',[1E-1E 2-1],“小波”“阿穆尔”);英担(科比,“滤波器”,fbMorlet)标题(“分析的Morlet”

小波未在频率以及局部的(3,60)莫尔斯Morlet小波。然而,通过改变时间带宽的产品,你可以创建一个莫尔斯小波和类似Morlet小波的性质。

创建使用莫尔斯小波为30的时间带宽值滤波器组[2]与频率限制如上。产生地震仪数据量图。注意,涂抹的频率几乎相同的Morlet结果。

fbMorse = cwtfilterbank(“SignalLength”元素个数(科比),'采样频率'1,'FrequencyLimits',[1E-1E 2-1],'TimeBandwidth',30);英担(科比,“滤波器”,fbMorse)标题('(3,30)莫尔斯'

现在,检查与相关的小波fbMorletfbMorse滤波器。从两个滤波器组得到小波中心频率、滤波器频率响应和时域小波。确认中心频率几乎相同。

cfMorlet = centerFrequencies(fbMorlet);[frMorlet,fMorlet] = freqz(fbMorlet);[wvMorlet,tMorlet] =小波(fbMorlet);cfMorse = centerFrequencies(fbMorse);[frMorse,fMorse] = freqz(fbMorse);[wvMorse,tMorse] =小波(fbMorse);DISP([“中心频率个数:”,num2str(长度(cfMorlet))]);
中心频率数:34
DISP([“最大的区别:”num2str (max (abs (cfMorlet-cfMorse)))));
最大的区别:2.7756e-17

每个滤波器组包含相同数量的小波。选择一个中心频率,并绘制从每个滤波器组相关联的滤波器的频率响应。确认反应几乎是一样的。

WV = 13;图图(fMorlet,frMorlet(WV,:));保持情节(fMorse frMorse(西弗吉尼亚州,:));网格标题('频率响应')包含('频率')ylabel ('振幅')图例(“Morlet”'(3,30)莫尔斯'

绘制与相同的中心频率相关联的时域小波。确认他们几乎是一样的。

图副区(2,1,1)图(tMorlet,真正的(wvMorlet(WV,:)))保持情节(tMorse,实际(wvMorse(西弗吉尼亚州,:)))网格标题('真实')图例(“Morlet”'(3,30)莫尔斯')XLIM([ -  100 100])副区(2,1,2)情节(tMorlet,IMAG(wvMorlet(WV,:)))保持情节(tMorse图像放大(wvMorse(西弗吉尼亚州,:)))网格标题('假想')图例(“Morlet”'(3,30)莫尔斯')XLIM([ -  100 100])

这个例子说明增加时间带宽的乘积 P 2 小波创建了其包膜下更多振荡的小波莫尔斯。增加 P 2 变窄频率小波。

创建两个滤波器组。一个滤波器组具有默认TimeBandwidth60.值的第二滤波器组具有TimeBandwidth10.的值SignalLength两个滤波器组是4096个样本。

sigLen = 4096;FB60 = cwtfilterbank(“SignalLength”,sigLen);fb10 = cwtfilterbank (“SignalLength”,sigLen,'TimeBandwidth',10);

获取时域小波的滤波器组。

[psi60,T] =小波(FB60);[psi10,〜] =小波(FB10);

使用尺度功能查找每个滤波器组母小波。

sca60 =尺度(fb60);sca10 =尺度(fb10);[~,idx60] = min (abs (sca60-1));[~,idx10] = min (abs (sca10-1));m60 = psi60 (idx60:);m10 = psi10 (idx10:);

的时间带宽乘积更大FB60滤波器组,验证M60小波有其信封比多下振荡M10小波。

副区(2,1,1)情节(吨,ABS(M60))格保持情节(T,实(M60))情节(T,IMAG(M60))XLIM([ -  30 30])图例(“abs (m60)”'真正的(M60)''IMAG(M60)')标题(“TimeBandwidth = 60 ')副区(2,1,2)情节(吨,ABS(M10))格保持情节(T,实(M10))情节(T,IMAG(M10))XLIM([ -  30 30])图例('ABS(M10)''真正的(M10)''IMAG(M10)')标题('TimeBandwidth = 10'

对齐的峰M60M10幅频响应。验证的频率响应M60小波是比用于频率响应窄M10小波。

CF60 = centerFrequencies(FB60);CF10 = centerFrequencies(FB10);m60cFreq = CF60(idx60);m10cFreq = CF10(idx10);freqShift = 2 * PI *(m60cFreq-m10cFreq);X10 = M10 * EXP(1J * freqShift *( -  sigLen / 2:sigLen / 2-1));图图([ABS(FFT(M60))。 'ABS(FFT(×10))。'])格传说(“时间 - 带宽= 60”“时间 - 带宽= 10”)标题(级频率响应的

这个例子说明了如何服用的多个时间序列的CWT时使用CWT滤波器组提高了计算效率。

装载1995年神户大地震期间记录的地震数据。这些数据是地震仪(垂直加速度,纳米/ sq.sec)在20时56分51秒(北京时间),在塔斯马尼亚大学,澳大利亚霍巴特1月16日1995年开始记录的测量值,并且持续以1秒间隔51分钟。创建可应用于数据CWT滤波器组。

加载科比FB = cwtfilterbank(“SignalLength”元素个数(科比),'采样频率',1);

使用英担功能和获取数据250次的CWT。显示所使用的经过时间。

num = 250;抽动;对于K = 1:NUM CFS = CWT(神户);结束TOC
经过时间是6.551628秒。

现在使用的重量滤波器组的目标函数取数据的CWT。确认使用滤波器组更快。

抽动;对于K = 1:NUM CFS =重量(FB,神户);结束TOC
经过时间是3.782376秒。

这个例子说明了如何绘制在图插曲的CWT量图。

加载语音样本。在7418赫兹的数据进行采样。绘制默认CWT量图。

加载MTLB英担(MTLB,FS)

获得连续小波变换的信号,并且CWT的频率。

[CFS,FRQ] = CWT(MTLB,FS);

英担函数设置在尺度图的时间和频率轴。创建表示采样时间的载体。

TMS =(0:numel(MTLB)-1)/ FS;

在一个新的图中,绘制在上部副区的原始信号和下副区的尺度图。绘制对数刻度的频率。

图subplot(2,1,1) plot(tms,mtlb)轴标题(“信号与尺度图”)包含('时间(s)')ylabel ('振幅')副区(2,1,2)面(TMS,FRQ,ABS(CFS))轴阴影平面xlabel('时间(s)')ylabel ('频率(Hz)')设置(GCA,“yscale”“日志”

提示

  • 您使用滤波器组采取了信号的CWT的第一次,小波滤波器构造成具有相同的数据类型的信号。当你采用同样的滤波器组的信号具有不同的数据类型生成一条警告消息。更改数据类型带有重新设计或改变滤波器组的精度的成本。为了获得最佳性能,使用一致的数据类型。

  • 当内执行多个CWTS,例如一个for循环中,推荐的工作流程是先创建一个cwtfilterbank对象,然后使用重量目标函数。该工作流开销最小化,并最大限度地提高性能。看到使用CWT滤波器组多时间系列

兼容性的考虑

展开全部

不建议从R2018b开始

参考

[1] Lilly公司,J.M.,和S. C. Olhede。“广义莫尔斯小波作为小波分析的超家族。”IEEE TRANSACTIONS ON信号处理。卷。60,第11期,2012,第6036-6041。

[2] Lilly公司,J.M.,和S. C. Olhede。“小波分析的高阶属性”。IEEE TRANSACTIONS ON信号处理。卷。57,第1号,2009年,第146-160。

[3] Lilly公司,J. M.jLab:一个数据分析包Matlab的,1.6.2版。2016年http://www.jmlilly.net/jmlsoft.html。

[4] Lilly公司,J.M.“元素分析:分析在嘈杂的时间序列时间局部化事件基于小波的方法”。英国皇家学会学报A。卷473:20160776,2017年,第1-28页。dx.doi.org/10.1098/rspa.2016.0776。

扩展功能

介绍了在R2018a