Desiging a very simple filter (Very Basic Sort of)???
Afficher commentaires plus anciens
I want to generate a very simple Filter which removes the noise at-least little bit from a signal (Sinusoidal of 100Hz Frequency).
I don't want to use the complex filter's.
this is my Signal
fSampling = 10000; %Sampling Frequency
tSampling = 1/fSampling; %Sampling Time
L = 10000; %Length of Signal
t = (0:L-1)*tSampling; %Time Vector
F = 100; %Frequency of Signal
%%Signal without noise
xsig = sin(2*pi*F*t);
I calculate its Fourier Transform as Follow:-
NFFT = 2^nextpow2(L);
Xsig = fft(xsig,NFFT)/L;
f1 = fSampling/2*(linspace(0,1,NFFT/2+1));
plot(f1,2*abs(Xsig(1:NFFT/2+1)),'r');
grid on
axis([-50 500 0 1.1])
title('\itSingle-Sided Amplitude Spectrum of xsig(t)')
xlabel('\itFrequency (Hz) \rightarrow')
ylabel('|Xsig(f)| \rightarrow');
Then i add a Little bit of Noise into it as follow:-
xnoise = xsig + 0.45*randn(size(t));
Then calculates its Fourier Transform again...
Now i want to remove the noise from this signal and want to retrieve a pure sinusoidal signal..
Pls Some Body help me....
Réponse acceptée
Plus de réponses (2)
Arun Sharma
le 9 Juil 2012
0 votes
Arun Sharma
le 9 Juil 2012
0 votes
Catégories
En savoir plus sur MATLAB dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!