icwt
连续一维小波变换逆
语法
描述
例子
语音信号的连续小波反变换
基于指定小波的连续小波反变换
对语音样本进行连续小波变换,用凹凸小波代替默认的莫尔斯小波重构样本。
负载mtlbdt = 1 / f;t = 0: dt元素个数(mtlb) * dt-dt;
获取类。
bumpmtlb = cwt (mtlb Fs,“撞”);
得到反CWT。将信号均值加到输出中。
xrec = icwt (bumpmtlb,“撞”SignalMean =意味着(mtlb));
绘制原始信号和重建信号。
情节(t, mtlb)包含(“秒”) ylabel (“振幅”)举行在情节(t, xrec“r”)举行从轴紧传奇(“原始”,“重建”)
如果你的电脑有声卡,你可以听到原始和重建信号。
要播放原始信号,取消后面两行注释% p = audioplayer(mtlb,Fs);% (p)玩要播放重构的信号,取消下两行注释% px = audioplayer(xrec,Fs);% (px)玩
重建Frequency-Localized数据
从CWT中提取信息,重构神户地震数据的频域近似。采样频率为1hz。提取的信息对应于[0.030 - 0.070]Hz范围内的频率。
负载科比
获取类。然后求出CWT的逆,并将信号均值加回到重构数据中。CWT不保留信号均值。
(慢性疲劳综合症,f) = cwt(科比,1);xrec = icwt(cfs,[],f,[0.030 0.070],SignalMean=mean(kobe));
绘制原始数据和重构数据。
次要情节(2,1,1)情节(科比)网格在标题(“原始数据”) ylabel (“振幅”)轴紧次要情节(2,1,2)情节(xrec)网格在标题(带通滤波重建[0.030 0.070]Hz);包含(“时间(s)”) ylabel (“振幅”)轴紧
从特定时间段重构数据
利用连续小波反变换重建了基于2 ~ 8年周期的厄尔尼诺数据的近似。
加载厄尔尼诺数据并获得其CWT。数据每月抽样一次。若要获得以年为单位的周期,请指定采样间隔为1/12年。
负载ninoairdata[cfs,时期]= cwt(尼诺,年(1/12));
获得2 - 8年期间的反CWT。
Xrec = icwt(cfs,[],period,[years(2) years(8)]);
绘制重构数据的CWT,并将其与原始数据的CWT进行比较。
类(尼诺,年(1/12))
ans = proplistener带有属性:对象:{[1x1 Axes]}源:{[1x1 matlab.graphics.internal.GraphicsMetaProperty]} EventName: 'PostSet'回调:@changeYTickLabels Enabled: 1递归:0
标题(“原始数据”)
类图(xrec年(1/12))
ans = proplistener带有属性:对象:{[1x1 Axes]}源:{[1x1 matlab.graphics.internal.GraphicsMetaProperty]} EventName: 'PostSet'回调:@changeYTickLabels Enabled: 1递归:0
标题(“基于2-8年周期的近似”)
及时将原始数据与重构数据进行比较。
图副图(2,1,1)图(datayear,nino)网格在甘氨胆酸ax =;斧子。XTickLabel =”;轴紧标题(“原始数据”)子图(2,1,2)图(数据年,xrec)网格在轴紧包含(“年”)标题(“2-8年厄尔尼诺数据”)
时变趋势复杂数据重构
在复值数据集的连续小波变换中加入一个趋势并进行重构。
获取NPG2006数据集的CWT。
负载npg2006.matcfs = cwt (npg2006.cx);
根据数据创建一个时变趋势。
趋势= smoothdata (npg2006.cx,“movmean”, 100);
得到CWT逆,并添加趋势。绘制原始数据和重构数据。
xrec = icwt (cfs SignalMean =趋势);情节([真正的(xrec)”(npg2006.cx)])网格在标题(“真正的价值”)传说(“趋势”,“原始”)轴紧
图图([imag(xrec)' imag(npg2006.cx)])网格在标题(“虚拟价值”)传说(“趋势”,“原始”)轴紧
利用分析滤波器组重构信号
加载心电图波形。创建一个具有周期性边界处理的CWT滤波器组,可以应用于波形。
负载wecgfb = cwtfilterbank (SignalLength =长度(wecg),边界=“周期”);
得到滤波器组中小波滤波器和尺度滤波器的双边频率响应。
psif = freqz (fb, FrequencyRange =“双侧”, IncludeLowpass = true);
使用滤波器组来获得波形的CWT。还可以得到变换的缩放系数。
[cfs, ~, ~, scalcfs] = wt (fb, wecg);
使用分析滤波器组重构输入。近似合成滤波器,或对偶框架,被用来反演变换。
[], xrecAN = icwt (cfs ScalingCoefficients = scalcfs,...AnalysisFilterBank = psif);
使用默认的Morlet单积分公式重构输入。
[], xrecSI = icwt (cfs ScalingCoefficients = scalcfs);
比较最大重构误差。
说说=规范(xrecAN -wecg正)
说说= 6.6613 e-16
errSI =规范(xrecSI -wecg正)
errSI = 0.4037
情节都重建。
subplot(2,1,1) plot([xrecAN' wecg])轴紧传奇(“合成过滤器”,“原始”位置=“eastoutside”)副图(2,1,2)图([xrecSI' wecg])轴紧传奇(“单一积分”,“原始”位置=“eastoutside”)
输入参数
慢性疲劳综合症
- - - - - -连续小波变换系数
矩阵
连续小波变换系数,用复值矩阵表示。慢性疲劳综合症
的输出是类
函数。
如果慢性疲劳综合症
为二维矩阵,icwt
假设CWT是从实值信号中获得的。如果慢性疲劳综合症
是一个三维矩阵,icwt
假设CWT是从复值信号中获得的。对于三维矩阵,第一页慢性疲劳综合症
正(逆时针)分量的CWT和第二页的慢性疲劳综合症
是负(顺时针)分量。这些页面分别代表了CWT的分析和反分析部分。
数据类型:单
|双
复数的支持:是的
wname
- - - - - -分析小波
莫尔斯”
(默认)|“埃莫”
|“撞”
用于反CWT的解析小波,具体为以下之一:
“莫尔斯”
- - - - - -莫尔斯波“埃莫”
——Morlet小波“撞”
——撞小波
指定的小波必须与用于获得CWT的小波相同。默认的莫尔斯小波使用一个对称参数, ,即3和60的时间带宽。
freqrange
- - - - - -频率范围
双元素向量|2×2矩阵
返回连续小波变换逆值的频率范围,指定为双元素向量或2乘2矩阵。
如果
慢性疲劳综合症
为二维矩阵,freqrange
必须是一个二元向量。如果
慢性疲劳综合症
是一个三维矩阵,freqrange
可以是两个元素的向量或2乘2的矩阵。如果
freqrange
是一个矢量,icwt
的正分量(解析分量)和负分量(反解析分量)在相同频率范围内反转CWT慢性疲劳综合症
.如果
freqrange
是一个2 × 2矩阵,第一行包含正部分的频率范围吗慢性疲劳综合症
(第一页)和第二行包含的负部分的频率范围慢性疲劳综合症
(第二页)。
对于一个向量,的元素freqrange
必须严格递增并包含在频率向量的范围内f
.对于一个矩阵,每一行freqrange
必须严格递增和包含在的范围内f
.f
为CWT中得到的比例-频率转换。对于复值信号的反转,可以指定一行freqrange
作为一个零向量。如果第一行freqrange
为零向量,在反演中只使用负数(反解析部分)。
如果您指定freqrange
,您还必须指定f
.
例如[0 0;1/10的1/4)
在频率范围内反转负(顺时针)分量(1/10 1/4)
.在执行反转之前,先将正(逆时针)分量设置为全零。同样的,[1/10的1/4;0 0]
通过选择频率范围来反转CWT(1/10 1/4)
从正(逆时针)分量,并设置负分量为全零。
数据类型:单
|双
期
- - - - - -时间
向量
对应于CWT系数矩阵行的时间段慢性疲劳综合症
,指定为一个向量。期
的输出类
,当CWT使用持续时间
输入。
数据类型:持续时间
periodrange
- - - - - -时间范围
双元素向量|2×2矩阵
返回连续小波变换逆值的周期范围,指定为双元素向量或2乘2矩阵。
如果
慢性疲劳综合症
为二维矩阵,periodrange
必须是两个元素的持续时间向量。如果
慢性疲劳综合症
是一个三维矩阵,periodrange
可以是持续时间的双元素向量,也可以是持续时间的2乘2矩阵。如果
periodrange
是一个持续时间的向量,icwt
的正分量(解析分量)和负分量(反解析分量)在相同频率范围内反转CWT慢性疲劳综合症
.如果
periodrange
是一个2 × 2的持续时间矩阵吗?第一行包含的正部分的周期范围慢性疲劳综合症
(第一页)和第二行包含的负数部分的周期范围慢性疲劳综合症
(第二页)。
对于一个向量,的元素periodrange
必须严格递增并包含在周期向量的范围内期
.的元素periodrange
而且期
必须有相同的单位。对于一个矩阵,每一行periodrange
必须严格递增并包含在周期向量p的范围内。对于复值信号的反演,可以指定一行periodrange
作为零持续时间的向量。如果第一行periodrange
是持续时间为零的向量,在反演中只使用负数(反解析部分)。
如果您指定periodrange
,您还必须指定期
.
例如(秒秒(0)(0);秒(1/10)秒(1/4)
在周期范围内对负(顺时针)分量进行反转(秒(1/10)秒(1/4))
.在执行反转之前,先将正(逆时针)分量设置为全零。同样的,(秒(1/10)秒(1/4);秒秒(0)(0))
通过选择周期范围来反转CWT(1/10 1/4)
从正(逆时针)分量,并设置负分量为全零。
数据类型:持续时间
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。
例子:xrec = icwt (cfs,“撞”,VoicesPerOctave = 10)
的逆CWT慢性疲劳综合症
使用凹凸小波,每个八度10个声音。
在R2021a之前,名称和值之间用逗号隔开,并括起来的名字
在报价。
例子:xrec = icwt(cfs,"WaveletParameters",[3 40],"SignalMean",sigmean)
使用莫尔斯(3,40)小波和信号均值反演CWTsigmean
.
TimeBandwidth
- - - - - -莫尔斯小波的时间带宽
60
(默认)|大于3小于等于120的标量
莫尔斯小波的时间带宽,指定为大于3小于等于120的标量。指定的time-bandwidth值必须与类
.假设莫尔斯小波的对称性为3。
如果您指定TimeBandwidth
,您不能指定WaveletParameters
.
方法,则此语法无效AnalysisFilterBank
名称-值参数。
数据类型:单
|双
WaveletParameters
- - - - - -莫尔斯小波的对称性和时间带宽
(3、60)
(默认)|标量的二元向量
莫尔斯小波的对称性和时间带宽,指定为双元标量向量。矢量的第一个元素是对称, ,第二个元素是时间带宽。指定的小波参数必须与CWT中使用的值相同。
如果您指定WaveletParameters
,您不能指定TimeBandwidth
.
方法,则此语法无效AnalysisFilterBank
名称-值参数。
数据类型:单
|双
SignalMean
- - - - - -信号的意思是
标量|向量
信号的意思是加到icwt
输出,指定为标量或向量。如果信号均值是一个向量,那么它的长度必须与小波系数矩阵的列大小相同慢性疲劳综合症
.
如果
慢性疲劳综合症
为二维矩阵,则信号均值必须为实值标量或向量。如果
慢性疲劳综合症
为三维矩阵,则信号均值必须为复值标量或向量。
因为类
不保留信号均值,反CWT默认为零均值信号。将非零信号均值添加到频率受限或周期受限的重构中,将零频率分量添加到重构中。
方法,则此语法无效AnalysisFilterBank
名称-值参数。
数据类型:单
|双
复数的支持:是的
ScalingCoefficients
- - - - - -比例系数
实值或复值向量
的可选输出,在CWT逆中使用的缩放系数,指定为实值或复值向量类
.的长度ScalingCoefficients
等于的列大小慢性疲劳综合症
.
如果您只指定
ScalingCoefficients
没有AnalysisFilterBank
参数时,使用单积分逼近法得到CWT的逆。如果您指定
ScalingCoefficients
与AnalysisFilterBank
参数时,使用合成滤波器来获得反向CWT。
不能同时指定两者SignalMean
而且ScalingCoefficients
名称-值参数。
数据类型:单
|双
复数的支持:是的
AnalysisFilterBank
- - - - - -分析滤光片
实值矩阵
用于反转CWT的分析过滤器组,指定为矩阵。在反演过程中使用了近似合成滤波器或对偶框架。在大多数情况下,使用近似合成滤波器可以得到更精确的信号重构。如果指定分析筛选器,则忽略小波名称输入。
要使用分析过滤器,您必须使用ExtendSignal
设置为假
在类
同样,边界
设置为“周期”
在cwtfilterbank
.获取分析筛选器freqz
滤波器组的对象函数FrequencyRange = "双侧"
而且IncludeLowpass = true
.
数据类型:单
|双
VoicesPerOctave
- - - - - -每个八度的声音数
10
(默认)|1 ~ 48之间的整数
在转换CWT时使用的每个八度的声音数,指定为1到48之间的整数。CWT音阶使用每个八度的特定数量的声音进行离散化。每个八度的声音数必须与获得CWT时使用的值相同。
你不能指定每个八度的声音数量如果你指定了频率,f
或持续时间,期
.方法,则此语法无效AnalysisFilterBank
名称-值参数。
数据类型:单
|双
输出参数
xrec
-一维连续小波反变换
实值或复值行向量
逆1维连续小波变换,作为实值或复值行向量返回。
数据类型:单
|双
复数的支持:是的
更多关于
参考文献
莉莉,J. M.和S. C.奥尔海德。作为解析小波的超族的广义莫尔斯小波。IEEE信号处理汇刊60,不。11(2012年11月):6036-41。https://doi.org/10.1109/TSP.2012.2210890。
莉莉,j.m.,和S.C.奥尔海德。解析小波的高阶性质。IEEE信号处理汇刊57岁的没有。1(2009年1月):146-60。https://doi.org/10.1109/TSP.2008.2007607。
[3]莉莉,j.m。jLab: Matlab的数据分析包1.6.2版本。2016.http://www.jmlilly.net/jmlsoft.html。
莉莉,j.m和j.c。Gascard。时变椭圆信号的小波脊诊断及其在海洋涡旋中的应用。地球物理学中的非线性过程13日,没有。5(2006年9月14日):467-83。https://doi.org/10.5194/npg - 13 - 467 - 2006。
[5] Duval-Destin, M. A. Muschietti, B. Torresani。连续小波分解,多分辨率和对比分析。数学分析杂志24日,没有。3(1993年5月):739-55。https://doi.org/10.1137/0524045。
[6] Daubechies,英格丽德。关于小波的十讲.CBMS-NSF应用数学区域会议系列61。费城,宾夕法尼亚州:工业与应用数学学会,1992年。
[7]托伦斯,克里斯托弗,吉尔伯特P.康波。《小波分析实用指南》美国气象学会公报79年,没有。1(1998年1月1日):61-78。https://doi.org/10.1175/1520 - 0477 (1998) 079 < 0061: APGTWA > 2.0.CO; 2。
Holschneider, M.和Tchamitchian博士。" Riemann '不可微'函数的点分析"发明Mathematicae105年,没有。1(1991年12月):157-75。https://doi.org/10.1007/BF01232261。
扩展功能
C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。
版本历史
介绍了R2016bR2022a:icwt
行为改变
如果在指定的频率范围或周期范围内反转CWT,则必须在这些输入之前加上小波名称或默认莫尔斯小波的空输入。
功能 | 结果 | 而不是使用 | 兼容性的考虑 |
---|---|---|---|
xrec = icwt (cfs, f, freqrange) |
错误 | xrec = icwt (cfs, [], f, freqrange) 或xrec = icwt(慢性疲劳综合症,”莫尔斯”,f, freqrange) |
如果只是进行设置,则不必指定默认莫尔斯小波名称=值 参数。例如,xrec = icwt (cfs TimeBandwidth = 40) . |
xrec = icwt (cfs, f, freqrange Name =值) |
错误 | xrec = icwt (cfs, [], f, freqrange Name =值) 或xrec = icwt(慢性疲劳综合症,”莫尔斯”,f, freqrange Name =值) |
|
xrec = icwt (cfs,期间,periodrange) |
错误 | xrec = icwt (cfs,[],期间,periodrange) 或xrec = icwt(慢性疲劳综合症,”莫尔斯”,期间,periodrange) |
|
xrec = icwt (cfs,期间,periodrange, Name =值) |
错误 | xrec = icwt (cfs,[],期间,periodrange, Name =值) 或xrec = icwt(慢性疲劳综合症,”莫尔斯”,期间,periodrange, Name =值) |
R2022a:数据类型的小波和缩放系数必须匹配icwt
如果您指定ScalingCoefficients
,标度系数必须与小波系数具有相同的数据类型慢性疲劳综合症
.两组系数必须是单精度或双精度。
的小波和缩放系数输出类
和wt
的方法cwtfilterbank
始终保持相同的数据类型。
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。