主要内容

小波去噪

这个例子展示了如何使用小波去噪信号和图像。由于小波将数据中的特征定位到不同的尺度,因此可以在去除噪声的同时保留重要的信号或图像特征。小波去噪或小波阈值背后的基本思想是小波变换导致许多现实信号和图像的稀疏表示。这意味着小波变换将信号和图像特征集中在几个大量级小波系数中。小波系数的值小通常是噪声,您可以“缩小”这些系数或删除它们而不影响信号或图像质量。在设定系数阈值后,使用小波逆变换重构数据。

去噪信号

为了说明小波去噪,创建一个有噪声的“颠簸”信号。在这种情况下,你有原始信号和有噪声的版本。

rng默认的;[X,XN] = wnoise(“疙瘩”10倍根号(6));次要情节(211)情节(X);标题(原始信号的);AX = gca;斧子。YLim = [0 12];次要情节(212)情节(XN);标题(噪声信号的);AX = gca;斧子。YLim = [0 12];

图中包含2个轴对象。标题为Original Signal的Axes对象1包含一个类型为line的对象。标题为“噪声信号”的Axes对象2包含一个类型为line的对象。

将信号降噪到4级使用wdenoise使用默认设置。wdenoise使用抽取小波变换。将结果与原始信号一起绘制。

xd = wdenoise(XN,4);图;情节(X,“r”)举行;情节(xd)传说(原始信号的的去噪信号“位置”“NorthEastOutside”)轴;持有

图中包含一个轴对象。axis对象包含2个line类型的对象。这些对象代表原始信号,去噪信号。

你也可以使用未消噪的小波变换去噪信号。再次使用未消噪小波变换将信号降噪到4级。将结果与原始信号一起绘制。

xdMODWT = wden(XN,“modwtsqtwolog”“年代”“mln”4“sym4”);图;情节(X,“r”)举行;情节(xdMODWT)传说(原始信号的的去噪信号“位置”“NorthEastOutside”)轴;持有

图中包含一个轴对象。axis对象包含2个line类型的对象。这些对象代表原始信号,去噪信号。

你可以看到,在这两种情况下,小波去噪都去除了相当数量的噪声,同时保留了信号中的尖锐特征。这是基于傅里叶去噪的一个挑战。在基于傅里叶的去噪或滤波中,您应用低通滤波器来去除噪声。然而,当数据具有高频特征(如信号中的峰值或图像中的边缘)时,低通滤波器会平滑这些特征。

你也可以用小波去噪不均匀的信号。导入并检查显示一段时间内用电量的信号的一部分。

负载leleccum;指数= 2000:3450;X = leceleccum (indx);情节(x)网格

图中包含一个轴对象。axis对象包含一个line类型的对象。

在大约采样500之后,信号似乎有更多的噪声。因此,您需要在信号的初始部分使用不同的阈值。你可以使用cmddenoise确定去噪和去噪信号的最佳间隔数。在本例中,使用'db3'小波并将数据分解到第3级。

[SIGDEN,~,thrParams,~,BestNbOfInt] = cmddenoise(x,“db4”3);

显示间隔数和分隔间隔的示例值。

BestNbOfInt
BestNbOfInt = 2
thrParams {1} (: 1:2)
ans =2×21 412 412 1451

确定了两个区间。标记两段之间边界的样本是412。如果你绘制信号并标记两个信号段,你会看到样本412前后的噪声确实有所不同。

情节(x);地块([412 412],[100 550],“r”)举行

图中包含一个轴对象。axis对象包含2个line类型的对象。

绘制去噪后的信号。

情节(SIGDEN)标题(的去噪信号

图中包含一个轴对象。标题为降噪信号的axes对象包含一个类型为line的对象。

去噪图像

你也可以使用小波去噪图像。在图像中,边缘是图像亮度快速变化的地方。在去噪图像时保持边缘对感知质量至关重要。虽然传统的低通滤波去噪,但它往往会使边缘光滑,并对图像质量产生不利影响。小波能够去除噪声,同时保留感知上重要的特征。

加载一个噪声图像。去噪图像使用wdenoise2使用默认设置。默认情况下,wdenoise2使用双正交小波bior4.4.要显示原始图像和去噪图像,不提供任何输出参数。

负载(“jump.mat”) wdenoise2(跳)

图中包含2个轴对象。标题为Original Image的坐标轴对象1包含一个Image类型的对象。标题为降噪图像的坐标轴对象2包含一个图像类型的对象。

请注意,图像中的边缘并没有被去噪过程平滑掉。

另请参阅

|