主要内容

一维抽取小波变换

本节介绍使用小波工具箱进行1-D临界采样小波分析的功能™ 软件

工具箱为一维信号分析提供了这些功能。有关更多信息,请参阅参考页。

分解函数分析

函数名

意图

DWT.

单层分解

波东

分解

wmaxlev

最大小波分解级别

合成重建功能

函数名

意图

idwt.

单层重建

waverec

全面重建

沃科夫

选择性重建

upcoef

单次重建

分解结构实用程序

函数名

意图

替代品

提取细节系数

阿普科夫

提取近似系数

upwlev.

重新求解分解结构

去噪与压缩

函数名

意图

Wddoise.

自动小波信号去噪(推荐)

wddoise2.

自动小波图像去噪(推荐)

ddencmp.

提供的默认值去噪与压缩

WBMPen.

小波1-D或2-D去噪的惩罚阈值

WDCBM.

小波1-D使用Birgé-Massart战略的阈值

WDENCMP.

小波去噪和压缩

瓦登

自动小波去噪

Wthrmngr.

阈值设置管理器

在本节中,您将学习如何

  • 加载信号

  • 对信号执行单级小波分解

  • 根据系数构造近似值和细节

  • 显示近似和细节

  • 用小波逆变换重新生成信号

  • 执行信号的多级小波分解

  • 提取近似和细节系数

  • 重建3级近似值

  • 重建1,2和3级详细信息

  • 显示多级分解的结果

  • 从3级分解中重建原始信号

  • 从信号中清除噪声

  • 细化分析

  • 压缩信号

  • 显示信号的统计和直方图

由于您可以从命令行或使用“小波分析器”应用程序执行分析,因此本节将介绍每种方法。

最后一小节讨论如何在磁盘和图形工具之间交换信号和系数信息。

使用命令行进行一维分析

这个例子涉及一个真实世界的信号-在3天的过程中测量的电消耗。该信号特别有趣,因为在进行测量时,监测设备出现缺陷时会引入噪声。小波分析有效地去除了噪声。

笔记

要去噪,Wddoise.小波信号丹机建议。

  1. 加载信号并选择用于小波分析的部分。

    加载Leleccum.;s=leleccum(1:3920);l_s=长度(s);
  2. 对信号执行单级小波分解。

    使用该信号对信号进行单级分解db1小波。

    [ca1,cd1] = dwt(s,“db1”);

    这将生成级别1近似值的系数(cA1和细节(CD1.)。

  3. 构造来自系数的近似和细节。

    构建1级近似和细节(A1D1)从系数cA1CD1.类型

    a1 = upcoef('一种',cA1,“db1”,1,l_s);d1 = upcoef('D',cd1,“db1”,1,l_s);

    A1 = IDWT(CA1,[],“db1”,l_s);D1 = IDWT([],CD1,“db1”,l_s);
  4. 显示近似和细节。

    显示级别的结果 - 一个分解,键入

    子图(1,2,1);情节(A1);标题(“近似A1”)子地块(1,2,2);地块(D1);标题(“详图D1”

  5. 使用逆小波变换再生信号。

    要查找逆变换,请输入

    A0=idwt(cA1,cD1,“db1”,l_s);err = max(abs(s-a0))
  6. 表演信号的多级小波分解。

    执行信号的3级分解(再次使用db1小波),类型

    [C,L]=wavedec(s,3,“db1”);

    第三级分解的所有分量(即第三级近似值和前三级细节)的系数被串联返回到一个向量C中。向量L给出每个分量的长度。

  7. 提炼近似与细节系数。

    要提取级别3近似系数C类型

    ca3 = appcoef(c,l,'db1',3);

    提取3级,2和1细节系数来自C类型

    CD3 = Detcoef(C,L,3);CD2 = Detcoef(C,L,2);CD1 = Detcoef(C,L,1);

    [CD1,CD2,CD3] =替代物(C,L,[1,2,3]);
  8. 重建第三层近似和1,2和3细节。

    要从中重建level 3近似值,请执行以下操作:C类型

    A3 = WRCOEF('A',C,L,'DB1',3);

    重建1,2和3级的细节C类型

    d1 = wrcoef('d',c,l,'db1',1);d2 = wrcoef('d',c,l,'db1',2);d3 = wrcoef('d',c,l,'db1',3);
  9. 显示a的结果多级分解。

    显示3级分解的结果,键入

    子图(2,2,1);绘图(A3);标题('近似a3')子图(2,2,2);绘图(D1);标题(“细节D1”)子图(2,2,3);绘图(D2);标题('细节D2')子图(2,2,4);绘图(D3);标题('细节D3')

  10. 从3级分解重构原始信号。

    从小波分解结构重建原始信号,键入

    a0 = waverec(c,l,'db1');err = max(abs(s-a0))
  11. 原油信号去噪。

    使用小波去除信号中的噪声需要识别哪些分量包含噪声,然后在没有这些分量的情况下重建信号。

    在本例中,我们注意到,随着越来越多的高频信息从信号中滤除,连续近似变得越来越少噪声。

    3级近似,A3,它与原始信号之间的比较非常清晰。

    将近似值与原始信号进行比较,键入

    子地块(2,1,1);地块;标题(“原始”);轴线偏离子地块(2,1,2);地块(A3);标题(“三级近似”);轴线偏离

    当然,在丢弃所有高频信息的过程中,我们也丢失了原始信号的许多最清晰的特征。

    最优的去噪需要一种更微妙的方法,称为阈值. 这涉及到仅丢弃超过特定限制的部分细节。

  12. 去除噪音门槛。

    让我们再次查看我们的3级分析的细节。

    显示细节D1D2D3类型

    子图(3,1,1);绘图(D1);标题('细节1');轴关闭子图(3,1,2);绘图(D2);标题(“细节2”);轴关闭子图(3,1,3);绘图(D3);标题('细节3');轴关闭

    大多数噪声发生在信号的后一部分,详细信息显示其最大的活动。如果我们通过限制其最大值限制细节的力量,怎么办?这将产生削减噪音的效果,同时留下细节不受他们的大部分持续时间。但是有更好的方法。

    注意CD1.CD2.CD3.我们只是MATLAB®向量,所以我们可以直接操纵每个向量,将每个元素设置为向量峰值或平均值的一部分。然后我们可以重建新的细节信号D1D2D3从阈值的系数。

    要对信号进行去噪,请使用ddencmp.命令计算默认参数和WDENCMP.命令执行实际的去噪,键入

    [thr,sorh,KEEPAP]=ddencmp('den','wv',s);clean=wdencmp('gbl',C,L,'db1',3,thr,sorh,KEEPAP);

    注意WDENCMP.使用分解的结果(CL.)我们已经计算过了。我们还指定了我们使用的db1小波进行原始分析,并指定全局阈值选项“gbl”. 看见ddencmp.WDENCMP.在参考页面中,有关使用这些命令的更多信息。

    显示原始和去噪信号,键入

    子批次(2,1,1);图则(s(2000:3920);;标题(“原件”)子标段(2,1,2);地块(清洁(2000:3920));标题(“去噪”)

    我们在这里只绘制了信号的嘈杂后半部分。请注意,我们如何消除噪音,而不会影响原始信号的清晰细节。这是小波分析的强度。

    虽然使用命令行功能去除信号中的噪声可能会很麻烦,但该软件的小波分析器应用程序包含一个易于使用的去噪功能,包括自动阈值。

    有关去噪过程的更多信息可以在以下部分中找到:

1-D使用小波分析仪应用分析

在本节中,我们将探讨与前一节相同的耗电信号,但我们将使用小波分析仪应用程序对信号进行分析和去噪。

笔记

使用小波分析仪应用程序来表示不再推荐信号。用小波信号丹机反而。

  1. 启动一维小波分析工具。

    在MATLAB提示符中,键入小波分析仪

    小波分析仪出现。

    点击小波1-D菜单项。

    1-D信号数据的离散小波分析工具出现。

  2. 加载一个信号。

    在matlab命令提示符下,键入

    加载lececcum;
    小波1-D工具,选择文件>从工作区导入。当。。。的时候从工作区导入将出现对话框,选择Leleccum.多变的。点击好啊导入电气消耗信号。

  3. 执行单级小波变换分解。

    为了开始我们的分析,让我们使用db1小波,就像我们在中使用命令行函数一样使用命令行进行一维分析

    在右上部分小波1-D工具,选择db1小波和单级分解。

    点击分析按钮。

    暂停计算后,工具将显示分解。

  4. 放大相关细节。

    使用小波分析仪应用的一个优点是您可以轻松放大信号的任何部分,并更详细地检查。

    拖动橡皮筋盒(通过按住鼠标左键)在要放大的信号的一部分上。在这里,我们选择了原始信号的嘈杂部分。

    点击x +按钮(位于屏幕底部)以水平缩放。

    小波1-D工具缩放所有显示的信号。

    另一个缩放控制更多或更少您对其预期的内容。这X-例如,按钮可水平缩小。历史记录功能可跟踪信号的所有视图。单击左箭头按钮可返回到以前的缩放级别。

  5. 表演多级分解。

    再次,我们将使用图形工具使用命令行函数来模拟前一节中所做的内容。使用使用的3级别分解信号db1小波:

    选择3.数量右上角的菜单,然后单击分析再次按钮。

    进行分解后,您将看到新分析出现在小波1-D工具。

    选择分解的不同视图

    显示模式菜单(中间右)允许您选择不同的小波分解视图。

    调用默认显示模式“完全分解模式”。其他备选方案包括:

    • 单独模式,“显示单独列中的详细信息和近似。

    • 叠加模式,“显示了叠加以不同颜色的单个曲线图的细节。近似绘制。

    • 树模式,“它显示分解树,原始信号和您选择的一个其他组件。单击分解树以选择要查看的信号组件。

    • “显示和滚动模式”,其中显示三个窗口。第一个显示叠加在您选择的近似值上的原始信号。第二个窗口显示您选择的详细信息。第三个窗口显示小波系数。

    • “Show and Scroll Mode(Stem Cfs)”与“Show and Scroll Mode”(显示和滚动模式)非常相似,只是它在第三个窗口中将小波系数显示为Stem图,而不是彩色块。

    您可以根据每次会话更改默认显示模式。从中选择所需的模式查看>默认显示模式子菜单。

    笔记

    压缩去噪窗户从窗户打开小波1-D工具将继承当前系数可视化属性(茎或彩色块)。

    根据您选择的显示模式,您可以通过以下方式访问其他显示选项更多显示选项按钮。

    这些选项包括抑制各种组件显示的能力,以及选择是否显示原始信号以及细节和近似值的能力。

  6. 消除信号中的噪音。

    小波分析器应用程序具有一个带有预定义阈值策略的去噪选项。这使得从信号中去除噪声非常容易。

    笔记

    不再推荐去噪选项。用小波信号丹机反而。

    打开去噪工具:单击去噪按钮,位于窗口的中间,在下面分析按钮。

    小波1-D去噪窗口出现。

    虽然有多种选项可用于微调去噪算法,但我们将接受软固定形式阈值和未宏的白噪声的默认值。这无标度白噪声选项对应于设置乘法阈值输入参数scal属于瓦登'一'.选择缩放白噪声对应于'sln'非白噪声对应于“mln”。有关更多信息,请参阅瓦登

    点击继续去噪按钮。

    去噪后的信号显示为叠加在原始信号上。该工具还绘制了两个信号的小波系数。原始细节系数显示在显示屏的左侧。为了在所有尺度上对分解级别进行时间对齐,在每个尺度上复制小波系数,以说明缺失的时间点再次,随着比例变得粗糙,系数呈现阶梯状外观。

    放大原始信号和去噪信号的绘图,以便更仔细地查看。

    拖动有关区域周围的橡皮筋盒,然后单击XY +按钮。

    去噪窗户可以放大你的视野。默认情况下,原始信号显示为红色,去噪信号显示为黄色。

    解雇小波1-D去噪窗口:单击关闭按钮。

    你不可能拥有去噪压缩Windows同时打开,所以关闭了小波1-D去噪窗口继续。当更新合成信号将出现对话框,单击。如果你点击是的, 这合成信号然后可用小波1-D主窗口。

  7. 细化分析。

    图形工具使您可以随时易于改进分析。到目前为止,我们研究了3级分析使用db1。让我们通过使用的电气消耗信号进行优化db3小波在5级。

    从列表中选择5数量右上角的菜单,然后选择db3子波菜单。点击分析按钮。

  8. 压缩信号。

    图形界面工具具有具有自动或手动阈值的压缩选项。

    提出压缩窗口:单击压紧按钮,位于窗口的中间,在下面分析按钮。

    压缩窗口出现。

    虽然您始终可以选择按级别阈值,但在这里,我们将利用全局阈值功能快速轻松地进行压缩。

    笔记

    如果您想尝试手动阈值,请选择按级别的阈值化选项从位于右上角的菜单中小波1-D压缩窗口。然后,位于该菜单下方的滑块控制与级别相关的阈值,由水平穿过窗口左侧图形的黄色虚线表示。也可以使用鼠标左键直接拖动黄色虚线。

    点击压紧按钮,位于右侧。

    在计算暂停后,电消耗信号以红色重新显示,压缩版本叠加为黄色。下面,我们放大了,仔细看看信号的嘈杂部分。

    您可以看到压缩过程删除了大部分噪声,但保留了99.99%的信号能量。

  9. 显示残差。

    来自小波1-D压缩工具,单击残差按钮。这更多关于小波1-D压缩的残差窗口出现。

    显示的统计数据包括趋势(平均值、模式、中位数)和离散度(范围、标准偏差)的测量值。此外,该工具还提供频率分布图(直方图和累积直方图)以及时间序列图:自相关函数和频谱。对于小波1-D去噪工具。

    解雇小波1-D压缩窗口:单击关闭按钮。当。。。的时候更新合成信号将出现对话框,单击不。

  10. 显示统计数据。

    您可以查看有关信号及其组件的各种统计信息。

    来自小波1-D工具,单击统计数据按钮。

    小波一维统计此时会出现一个窗口,默认情况下显示原始信号的统计信息。

    选择要检查其统计信息的合成信号或信号组件。单击相应的选项按钮,然后单击显示统计数据按钮。在这里,我们选择使用100个频带而不是30来检查合成信号,这是默认值:

    显示的统计数据包括趋势(平均值、模式、中位数)和离散度(范围、标准差)的度量。

    此外,该工具还提供频率分布图(直方图和累积直方图)。您可以使用直方图来自纽扣的按钮小波1-D窗户。

    点击近似选项按钮。将出现一个菜单,从中选择要检查的近似级别。

    选择级别1,然后再次单击显示统计数据按钮。统计显示为1级近似值。

从小波分析仪应用程序导入和导出信息

小波1-D图形界面工具允许您从磁盘和MATLAB工作区导入信息,并将信息导出到磁盘和MATLAB工作区。

将信息保存到磁盘

可以从中保存合成信号、系数和分解小波1-D磁盘的工具,可以在其中操作信息,然后稍后将其重新称为图形工具。

保存合成信号。您可以在计算机中处理信号小波1-D工具,然后将处理的信号保存到MAT文件(扩展或其他)。

例如,加载示例分析:文件>示例分析>基本信号>在5级DB3→SINES的总和,并对原始信号执行压缩或去噪操作。当你关闭时去噪压缩窗口,单击更新合成信号是的在对话框中。

然后,来自小波1-D工具,选择文件>保存>信号菜单选项。

出现一个对话框允许您为MAT文件选择一个文件夹和文件名。对于此示例,请选择名称合成词

要将信号加载到您的工作区,只需键入

装载合成器;

当使用除全局阈值的方法获得合成信号时,保存的结构是

谁是
姓名 尺寸 字节 班级
合成词 1x1000 8000 双重的大堆
三角洲 1x5 580 单元阵列
Wname. 1x3 6. CHAR阵列

合成信号由变量给出合成词。此外,由小波名称给出去噪或压缩过程的参数(Wname.)和所包含的水平相关阈值三角洲变量,它是长度5的单元阵列(与分解的水平相同)。

为了一世从1到5,thrParams{i}包含阈值间隔的较低和上限,阈值(因为允许间隔相关阈值,请参阅小波系数的一维自适应阈值化)。

例如,对于1级,

ThrParams {1} ANS = 1.0E + 03 * 0.0010 1.0000 0.0014

使用全局阈值方法获得合成信号时,所保存的结构是

姓名 尺寸 字节 班级
合成词 1x1000 8000 双阵列
瓦尔瑟 1x1. 8. 双阵列
Wname. 1x3 6. CHAR阵列

变量在哪里瓦尔瑟包含全局阈值:

valthr valthr = 1.2922

保存离散小波变换系数。小波1-D该工具允许您将离散小波变换(DWT)的系数保存到磁盘。工具箱在当前文件夹中使用您选择的名称创建MAT文件。

要从本分析保存DWT系数,请使用菜单选项文件>保存>系数

出现一个对话框,允许您指定用于存储系数的文件夹和文件名。

考虑实例分析:

文件>示例分析>基本信号> DB1在5级→Cantor Curve

将小波系数保存到文件后康托垫,在工作区中加载变量:

加载cantor whos
姓名 尺寸 字节 班级
女主角 1x2190 17520 双阵列
渴望 1x7 56. 双阵列
三角洲 0x0 0. 双阵列
Wname. 1x3 6. CHAR阵列

变量女主角包含离散小波系数。更准确地说,在上面的例子中女主角是串联系数的1×2190向量,并且渴望是一个向量,给出了每个组件的长度女主角

变量Wname.包含小波名称和三角洲由于合成信号不存在,因此为空。

节省分解。小波1-D该工具允许您将离散小波分析的整个数据集保存到磁盘。“工具箱”在当前文件夹中创建一个MAT文件,其名称由您选择,后跟扩展名WA1(小波分析1-D)。

打开小波1-D工具并加载示例性分析:

文件>示例分析>基本信号>在5级DB3→SINES的总和

要保存此分析中的数据,请使用菜单选项文件>保存>分解

出现一个对话框,允许您指定用于存储分解数据的文件夹和文件名。输入名称WDECEX1D.

将分解数据保存到文件后wdecex1d.wa1.,将变量加载到您的工作区中:

加载wdecex1d.wa1 -mat whos
姓名 尺寸 字节 班级
女主角 1x1023 8184 双阵列
data_name. 1x6 12. CHAR阵列
渴望 1x7 56. 双阵列
三角洲 0x0 0. 双阵列
wave_name. 1x3 6. CHAR阵列

笔记

在内部执行去噪或压缩时,也可以使用“保存”选项小波1-D工具。在小波1-D去噪窗口,您可以节省去噪和分解。相同的持有小波1-D压缩窗这样,您就可以在去噪和压缩窗口中保存许多不同的试验,而无需返回主窗口小波1-D在微调过程中的窗口。

笔记

在保存合成信号时,将分解或系数置于MAT文件时,没有必要文件扩展名。您可以为每个级别单独保存近似值或立即保存它们。

导出到工作区

小波1-D工具允许您以多种格式将一维小波分析导出到MATLAB工作区。

例如,加载示例分析Freqbrk.信号

小波1-D分析负载后,选择文件 - >导出到工作区

你有选择

  • 出口信号- 此选项导出合成信号矢量。

  • 出口系数- 此选项导出结构阵列中的小波和缩放系数,簿记载体和分析小波的向量。小波和缩放系数和簿记向量与输出相同波东

  • 出口分解- 此选项与此选项相同出口系数除了它还包含分析信号的名称。

  • 导出所有近似值-此选项导出一个L×N矩阵,其中L是数量并且n是输入信号的长度。矩阵的每一行是投影到相应级别的近似空间。例如,矩阵的第一行是投影到级别1的近似空间。

  • 导出所有细节-此选项导出一个L×N矩阵,其中L是数量并且n是输入信号的长度。矩阵的每一行是对应级别的细节(小波)空间投影。例如,矩阵的第一行是投影到1级的细节空间。

将信息加载到小波1-D工具中

您可以将信号、系数或分解加载到小波分析器应用程序中。您加载的信息可能是以前从应用程序导出的,然后在工作区中进行操作,也可能是最初从命令行生成的信息。

在任何一种情况下,您都必须遵守小波1-D工具,否则在尝试加载信息时将导致错误。

加载信号。将在MATLAB工作区中构建的信号加载到小波1-D工具,将信号保存在Mat文件中(扩展或其他)。

例如,假设您设计了一个名为的信号暖玛并希望在未来的时间里对其进行分析小波1-D工具。

拯救温暖的温莎

工作区变量疟玛必须是向量。

Sizwarma =尺寸(瓦拉)sizwarma = 1 1000

将此信号加载到小波1-D工具,使用菜单选项文件>加载>信号

出现一个对话框,可允许您选择要加载的相应的MAT文件。

笔记

文件中遇到的第一个一维变量被视为信号。变量按字母顺序检查。

加载离散小波变换系数。将离散小波变换系数加载到小波1-D工具时,必须首先将适当的数据保存在MAT文件中,该文件必须至少包含两个变量女主角渴望

变量女主角必须是DWT系数的向量(针对不同级别连接)和变量渴望指定每个组件的长度的向量女主角以及原始信号的长度。

在构建或编辑工作空间中的相应数据后,键入

保存myfile coefs wongs

使用文件>加载>系数菜单选项从小波1-D工具将数据加载到图形工具中。

出现一个对话框,允许您选择数据所在的文件夹和文件。

加载分解。将离散小波变换分解数据加载到小波1-D在图形界面中,必须首先将适当的数据保存在MAT文件中(扩展名为WA1或其他)。

MAT文件包含以下变量。

变量 地位 描述
女主角

要求的

级联DWT系数的向量

渴望

要求的

矢量指定组分的长度女主角并且原始信号

wave_name.

要求的

指定用于分解的小波名称的字符向量(例如。,db3

data_name.

可选的

指定分解名称的字符向量

在构建或编辑工作空间中的相应数据后,键入

保存myfile coefs longs wave_name

使用文件>加载>分解菜单选项从小波1-D将分解数据加载到图形工具中的工具。

出现一个对话框,允许您选择数据所在的文件夹和文件。

笔记

加载信号时,来自MAT文件的分解或系数,此文件的扩展是免费的。这扩展不是必需的。

也可以看看

|

相关话题