声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1736|回复: 2

[小波] 如何改进这个模极大算法滤波程序?

[复制链接]
发表于 2007-5-4 20:40 | 显示全部楼层 |阅读模式

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

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

x
%____进行模极大值的处理:
C=0.8;
%此参数需要调节,为了在最大尺度上设定合适阈值,以确定最大尺度上该保留的模极大值点。
D4_wpeak=wpeak(level,:);
M=max(D4_wpeak);
Thr=C*M/level; %阈值计算,可参考论文:"3mm波段脉冲雷达系统研究和小波去噪分析"。
D4_wpeak=D4_wpeak.*(abs(D4_wpeak)>Thr);
%模极大值的处理方式:
%在尺度j上极大值点位置,构造一个搜索区域,
%在尺度j-1中,极大值点落在该区域的点保留,其他的置0;
D3_wpeak=wpeak(level-1,:);
D4_p=(D4_wpeak~=0);
O_d4=3;%该参数确定在上一级搜索极大值的范围,可以调整。
for P_d4=O_d4:(length(D4_wpeak)-O_d4);
    if D4_p(P_d4)==1;
        for i=1:O_d4-1;
        D4_p(P_d4-i)=1;
        end ;
    end;     
end;
D3_wpeak=D3_wpeak.*D4_p;
D2_wpeak=wpeak(level-2,:);
D3_p=(D3_wpeak~=0);
O_d3=3;%该参数确定在上一级搜索极大值的范围,可以调整。
for P_d3=O_d3:(length(D3_wpeak)-O_d3);
    if D3_p(P_d3)==1;
        for i=1:O_d3-1;
        D3_p(P_d3-i)=1;
        end ;
    end;     
end;
D2_wpeak=D2_wpeak.*D3_p;
%第一层单独处理,在第二层极大值点位置上,保留第一层相应极大值点:
D1_wpeak=wpeak(1,:);
D2_p=(D2_wpeak~=0);
D1_wpeak=D1_wpeak.*D2_p;
wpeak=[D1_wpeak' D2_wpeak' D3_wpeak' D4_wpeak'];
wpeak=wpeak';

滤波之后的图,最后信号失真的厉害,不知道什么原因,小弟把模极大去噪的程序贴了出来,哪个大虾帮忙看看,能改进一下吗?谢谢。。。附件是整个程序。

Denoise_w_Mod_sim_1.m

4.06 KB, 下载次数: 23

主程序

P_gama.m

369 Bytes, 下载次数: 18

子程序

P_y.m

835 Bytes, 下载次数: 19

子程序

Py_Pgama.m

894 Bytes, 下载次数: 19

子程序

回复
分享到:

使用道具 举报

 楼主| 发表于 2007-5-5 09:50 | 显示全部楼层
哪位大虾帮我看看啊。我该如何改进一下。。。
 楼主| 发表于 2007-5-6 16:56 | 显示全部楼层
怎么没人懂吗。。。急啊。。。。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-9-22 23:29 , Processed in 0.063562 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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