码迷,mamicode.com
首页 > 其他好文 > 详细

小波去噪

时间:2018-07-06 01:26:59      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:blog   get   二次   突变   计算   不能   csdn   实现   最大   

 

 

在实际的工程应用中,所分析的信号可能包含许多尖峰或突变部分,并且噪声也不是平稳的白噪声。

对这种信号的降噪处理,用传统的傅立叶变换分析,显得无能为力,因为它不能给出信号在某个时间点上的变化情况。

通常情况下有用信号表现为低频部分或是一些比较平稳的信号,而噪声信号则表现为高频的信号。

 

处理 小波系数!

三个基本的步骤:

(1)对含噪声信号进行小波变换;

(2)对变换得到的小波系数进行某种处理,以去除其中包含的噪声;

(3)对处理后的小波系数进行小波逆变换,得到去噪后的信号。

小波去噪方法的不同之处集中在第一步。

 

信号映射到小波域,根据噪声和噪声的小波系数在不同尺度上具有不同的性质和机理,对含噪信号的小波系数进行处理。

减少剔除噪声产生的小波系数,最大限度的保留真实信号的系数。

 小波去噪实现步骤

(1)二维信号的小波分解。选择一个小波和小波分解的层次N,然后计算信号s到第N层的分解。

(2)对高频系数进行阈值量化。对于从1~N的每一层,选择一个阈值,并对这一层的高频系数进行软阈值量化处理。

(3)二维小波重构。根据小波分解的第N层的低频系数和经过修改的从第一层到第N的各层高频系数,计算二维信号的小波重构。

 图像去噪:小波变换法_席光荣_新浪博客 http://blog.sina.com.cn/s/blog_165027efc0102xazm.html

小波去噪Matlab程序如下:

clc
clear all
%读取图像
X=imread(lena.jpg);
X_gray=rgb2gray(X);
subplot(221);
image(X_gray);
imshow(X_gray);
title(原始图像);
%生成含有噪声的图像并显示
init=2055615866;
randn(seed,init);
X_gray=double(X_gray);
%添加随机噪声
X_noise=X_gray+8*randn(size(X_gray));
subplot(222);
imshow(uint8(X_noise));
title(含噪图像);
%用小波函数coif2对图像进行两层分解
[c l]=wavedec2(X_noise,2,coif2);
n=[1,2];
% 设置阈值向量,对高频小波系数进行阈值处理
p=[10.28,24.08];
nc=wthcoef2(h,c,l,n,p,s);
% 图像的二维小波重构
X1=waverec2(nc,l,coif2);
subplot(223);
imshow(uint8(X1));
title(第一次消噪声后的图像);
mc=wthcoef2(v,nc,l,n,p,s);
% 图像的二维小波重构
X2=waverec2(mc,l,coif2);
subplot(224);
imshow(uint8(X2));
title(第二次消噪声后的图像);

 技术分享图片

 

小波图像去噪及matlab实例 - CSDN博客 https://blog.csdn.net/mingtian715/article/details/60873875

小波去噪DWT - CSDN博客 https://blog.csdn.net/study_000/article/details/71077254

 

小波去噪

标签:blog   get   二次   突变   计算   不能   csdn   实现   最大   

原文地址:https://www.cnblogs.com/wxl845235800/p/9270824.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!