主要内容

小波去噪

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

消除干扰信号

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

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

图中包含2个轴对象。标题为Original Signal的Axes对象1包含一个类型为line的对象。标题为noissignal的Axes对象2包含一个类型为line的对象。

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

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

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

你也可以使用非模拟小波变换去噪信号。使用非模拟小波变换将信号降噪到4级。将结果与原始信号一起绘制出来。

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

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

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

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

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

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

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

thrParams [SIGDEN, ~, ~, 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”)举行

图中包含一个axes对象。坐标轴对象包含两个line类型的对象。

绘制去噪后的信号。

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

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

降噪图像

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

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

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

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

注意图像中的边缘并没有被去噪处理平滑掉。

另请参阅

|

Baidu
map