声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1869|回复: 7

[小波] 毕设求助,硬阈值去噪

[复制链接]
发表于 2010-5-17 11:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
小波自学了很长时间,感觉还是略懂皮毛。毕设做不出来,愁得我寝食难安:'( 。把问题提出来,请各位帮帮忙,万分感谢!
    我用的是一维信号,有用信号是1.25khz,采样频率200khz.假设信号时淹没在高斯白噪声当中。我要做的工作是利用小波把1.25khz的信号提取出来。我每一帧取256个点,采用mallat算法利用db4小波进行5层分解,这样第5层的低频信号就是0-3.125khz.其余所有的小波系数置为零(硬阈值去噪)。然后单支重构,得到滤波后的信号。然后进行FFT变换,取第3个点(200K/256再乘以2得到1.5625Khz,与1.25khz最接近),就是我想得到的近似的1.25Khz的信号。这是我的基于DSP的算法流程。有几个问题不清楚,选择DB4小波基是否合适?信号重构时的硬阈值去噪方法可行么?是说可能有振铃现象伪吉布斯现象,有影响吗?
回复
分享到:

使用道具 举报

发表于 2010-5-17 14:47 | 显示全部楼层
为什么只选择256点呢?我计算的时候发现点越多,吉布斯现象越不明显啊!而且你这个应该不算小波去噪吧,单支重构后采用FFT变换的第3个点近似,同直接计算FFT变换取第三个点近似,结果没什么区别。

评分

1

查看全部评分

 楼主| 发表于 2010-5-17 20:17 | 显示全部楼层
本帖最后由 wdhd 于 2016-9-21 11:01 编辑
原帖由 songjianjiang 于 2010-5-17 14:47 发表
为什么只选择256点呢?而且你这个应该不算小波去噪吧,单支重构后采用FFT变换的第3个点近似,同直接计算FFT变换取第三个点近似,结果没什么区别。

每一帧取的点太多的话,影响DSP系统整体速度。课题要求必须要用小波,我只想到用来去噪了........
发表于 2010-5-18 11:45 | 显示全部楼层
我用matlab验证过了,代码如下:
t = 1:256;
y = sin(2*pi*t*1.25/200) + randn(1,256);
[c,l] = wavedec(y,5,'db4');
a5 = wrcoef('a',c,l,'db4',5);
yr = sin(2*pi*t*1.25/200);
plot(t,y,'-k',t,a5,'-r',t,yr,'-b')
验证的结果表明,采用db4小波滤波的效果还是蛮不错的,附图中,黑色的表示原始曲线;红色的滤波后的曲线,蓝色的表示理论曲线。
但是我想说明的是:你的边界延拓一般要采用matlab的方法;同时单支重构后采用FFT变换的第3个点近似,同直接计算FFT变换取第三个点近似结果是严格一致的(用模拟数据计算过),所以你不能用FFT计算的第三个点表示你计算得到的近似的1.25Khz的信号。

[ 本帖最后由 songjianjiang 于 2010-5-18 11:54 编辑 ]
小波滤波.JPG

评分

1

查看全部评分

 楼主| 发表于 2010-5-18 13:01 | 显示全部楼层
本帖最后由 wdhd 于 2016-9-21 11:01 编辑
原帖由 songjianjiang 于 2010-5-18 11:45 发表
你的边界延拓一般要采用matlab的方法;同时单支重构后采用FFT变换的第3个点近似,同直接计算FFT变换取第三个点近似结果是严格一致的(用模拟数据计算过),所以你不能用FFT计算的第三个点表示你计算得到的近似的1.25Khz的信号。

多谢这位前辈的热心帮助。我经matlab仿真后db4滤波效果是不错,但是相位不好,不过这个关系不大。sym小波效果看起来也不错,在这两者中如何选择有点犯难。Mallat算法我用到了周期延拓。
重构后的信号还是时域上的,如何取出1.25Khz频率上的信号呢?
发表于 2010-5-19 14:04 | 显示全部楼层
db4小波不是对称的,sym小波是对称的,理论上讲sym小波要好一点。如果采用频谱第三个点幅值做1.25khz的信号大小的话,小波去噪失去了本身的价值。要计算1.25khz信号幅值大小,你可以采取重构信号的中间160个点的总值替代幅值——这只是个人意见,权当抛砖引玉了。
 楼主| 发表于 2010-5-19 22:44 | 显示全部楼层
本帖最后由 wdhd 于 2016-9-21 11:01 编辑
原帖由 songjianjiang 于 2010-5-19 14:04 发表
你可以采取重构信号的中间160个点的总值 ...

这句话不明白,160个点?为什么呢
发表于 2010-5-20 09:23 | 显示全部楼层
取一个完整周期啊,200Khz采样频率采集1.25kHz的信号,一个完整的周期是160个点。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-16 18:00 , Processed in 0.085134 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表