discrete fourier transform

조회 수: 4 (최근 30일)
thangam
thangam 2011년 10월 27일
hi everyone,
i want to analyze the signal with disturbance using DFT and suppress those disturbance. so pls give me an idea to suppress the disturbance.
thank you in advance.

채택된 답변

Wayne King
Wayne King 2011년 10월 27일
Hi, probably the easiest thing to do is to look at the data's spectrum and identify which frequency content you want to retain. Then, design a filter to attenuate those frequency regions you do not want to retain.
You can use spectrum.periodogram to look at the spectrum. Then, you can use fdesign.lowpass, fdesign.bandpass, fdesign.highpass to design a filter for your data.

추가 답변 (5개)

thangam
thangam 2011년 10월 31일
thanks for ur reply sir.
Fs=1000;
t=0:1/Fs:.3;
x=cos(2*pi*t*200)+randn(size(t));
Hs=spectrum.periodogram; % Use default values
psd(Hs,x,'Fs',Fs)
if this is the case.how do i know which frequency i want to retain and which frequency regions i do not want to retain. how can i design the filters by setting cutoff those unwanted frequency. i want to do this for DFT sir.
thank u in advance.

Wayne King
Wayne King 2011년 10월 31일
Fs=1000;
t=0:1/Fs:.3;
x=cos(2*pi*t*200)+randn(size(t));
Hs=spectrum.periodogram; % Use default values
plot(psd(Hs,x,'Fs',Fs))
Then visually inspect the spectrum to see where you would like to pass and where you would like to attenuate. Also note how many dB you would like to attenuate.
  댓글 수: 1
thangam
thangam 2011년 11월 1일
here i am having trouble in designing filters. how can we design filters for specific signal sir.

댓글을 달려면 로그인하십시오.


thangam
thangam 2011년 11월 1일
thanks for ur reply.
you told to design filters for unwanted frequencies.
but here i am having trouble in designing filters. how can we design filters for specific unwanted frequency signal sir.
  댓글 수: 1
Wayne King
Wayne King 2011년 11월 1일
you have to provide more detail if somebody is going to help you.
Did you read the reference material for fdesign?

댓글을 달려면 로그인하십시오.


thangam
thangam 2011년 11월 5일
in the following program, it filters noises and if i use this same program for different signal without making difference in fdesign.lowpass,there also it eliminates noises. why the same design eliminates noises in other signals too.
Is the lowpass filter alone is enough for all signal and in what way we design filters for separate signals.
load noisdopp; x = noisdopp;
Hs=spectrum.periodogram; % Use default values
psd(Hs,x,'fs',fs)
d = fdesign.lowpass('Fp,Fst,Ap,Ast',0.2, 0.22, 1, 60);
f = design(d, 'equiripple'); % Design an FIR equiripple filter
info(f) % View information about filter
designmethods(d,'iir'); % List the available IIR design methods
f = design(d, 'ellip') % Design an elliptic IIR filter (SOS)
fvtool(f)
output = filter(f,x);
plot(output)
thank you

Wayne King
Wayne King 2011년 11월 5일
Hi, because the filter has been designed as a lowpass filter. When you filter a signal, you multiply its Fourier transform by the Fourier transform of the filter impulse response.
You have designed a lowpass filter, so its action on any input signal is to lowpass filter it and since much of what we call "noise" is higher-frequency oscillations, you get an output with less noise.
However, people often design filters with specific specifications and goals in mind, so it can very well be that a filter that works well in one scenario, must be redesigned to work in another.

카테고리

Help CenterFile Exchange에서 Filter Design에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by