denoising using wavelet

5 次查看(过去 30 天)
hajer
hajer 2011-11-25
How i can do denoising of 2-D signals with wavelet by using matlab cods ? plz help me :(

采纳的回答

Wayne King
Wayne King 2011-11-25
编辑:John Kelly 2014-5-27
I'm not sure why your original post was about 2-D and it turns out that you have 1-D signals.
Yes, what you have done is basically correct. You could also use wden().
  2 个评论
hajer
hajer 2011-11-25
plz how i can differentiation between 1-D and 2-D
also , if i have signal extracted from ECG device and it mix from mother and fetus signal
is it 1-D or 2-D ???????
Sorry for the inconvenience
Wayne King
Wayne King 2011-11-25
Hi, 2-D is an image, a function of two variables. ECG is 1-D signal. It is a function of one variable (time -- even though it is sampled).
If you have two ECG signals, you have two 1-D signals.

请先登录,再进行评论。

更多回答(2 个)

Wayne King
Wayne King 2011-11-25
Hi, You have a couple of options.
1.) use wavemenu. Enter wavemenu at the command line and then choose, Wavelet 2-D, or SWT Denoising 2-D. Starting in R2011b, you can generate MATLAB code for your denoising directly from the wavemenu GUI.
From the command line, you can use wavedec2 and wdencmp, for decimated 2-D Wavelet denoising, and swt2 and wthresh or stationary wavelet 2-D denoising.
There are some good User's Guide examples of using the GUI and generating MATLAB code for 2-D denoising here:
and here:
Note that the generated code in these examples also shows you how to implement 2-D wavelet denoising from the command line.
  1 个评论
hajer
hajer 2011-11-25
thanks very much Wayne King ....
if i have two mixed ecg signals
and i added some noise to signals
then i called ddencmp and wdencmp functions
like this
% load 2 ecg signals
x1 = repmat(ecg(50), 1, 8);
x2 = repmat(ecg(25), 1, 16);
%plotting commands
figure (1),
subplot(2,1,1),plot(x1)
title(strcat(['Original signals' ]));
subplot(2,1,2),plot(x2)
%mixed signal
s=[x1;x2];
A=randn(10,2);
mixed = A*s;
%Noise
noise = randn(10,length(mixed)).*0.18;
signalWithNoise=mixed+noise;
%----------------denoising------------%
[thr,sorh,keepapp] = ddencmp('den','wv',signalWithNoise);
xd =wdencmp('gbl',signalWithNoise,'sym10',10,thr,sorh,keepapp);
is denoising right or not ??

请先登录,再进行评论。


shivangi b
shivangi b 2016-9-8
编辑:Walter Roberson 2016-9-11
sir,
for image de-noising using stationary wavelet transform and threshold techiques I have used
THR = wthrmngr('sw1ddenoLVL',METHOD,SWTDEC,SCAL)
command swtdec =db1,scal= 2 ,method ='rigsure'.
couldn't decompose the original image and hard and soft threshold used . plz replay me sir id:shivangisbv@gmail.com
  1 个评论
Geoff Hayes
Geoff Hayes 2016-9-11
As this isn't an answer to the posted question, please delete and post as your own question.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Denoising and Compression 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by