matlab小波分析去除图像噪声,[求助]matlab编程:图像高斯噪声去除 基于小波

这是一个关于小波去噪的程序。你可以作参考。

% 本程序先生成一个“Blocks”信号,然后加上高斯白噪声,再用'db3'小波进行分解,

% 以说明信号和噪声在各个尺度上的表现。

clear all;

% 生成“Blocks”信号

M = 1/1024;

N = 1/M;

t =0:M:1-1/1024;

TPoint = [0.1,0.13,0.15,0.23,0.25,0.40,0.44,0.65,0.76,0.78,0.81];

h = [4,-5,3,-4,5,-4.2,2.1,4.3,-3.1,2.1,-4.2];

[aaa,TSize] = size(TPoint);

FBlock = zeros(N,1);

for j = 1:N

for i = 1:TSize

if (t(j) - TPoint(i))> 0

sgnt = 1;

elseif (t(j) - TPoint(i))< 0

sgnt  = -1;

else

sgnt =0;

end

FBlock(j) = FBlock(j) +h(i)*(1+sgnt)/2;

end

end

%sig=FBlock';

subplot(321)

plot(FBlock)

%title(' 原信号');

grid on;

% 加上白噪声

sigma=0.1;

sig= GWNoisy(FBlock',sigma);

subplot(323)

plot(sig)

%title(' 带噪信号');

grid on;

% 小波分解

[c,l]=wavedec(sig,2,'db3');

ca2=appcoef(c,l,'db3',2);

cd2=detcoef(c,l,2);

cd1=detcoef(c,l,1);

subplot(322)

plot(cd1)

subplot(324)

plot(cd2)

subplot(326)

plot(ca2)

dl=length(cd2)+length(cd1);

c1=[ca2,zeros(1,dl)];

y=waverec(c1,l,'db3');

subplot(325)

plot(y)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值