Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

FFT vs. Pwelch

963 views
Skip to first unread message

Milad

unread,
Apr 21, 2009, 6:47:01 PM4/21/09
to
Hi,

I am trying to remove a motion artifact (and its harmonics) from my EMG signal, and I am facing 2 problems.

1) I have been using Pwelch (and CPSD) to get the freq. spectrum. When I took the FFT of the same signal I noticed that the powers are different from what Pwelch (or CPSD) gives. I know this is a dummy question, but why are the powers of freq. different for FFT vs. Pwelch?

2) I need to remove specific frequencies from the spectrum and then reconstruct the signal. I am currently taking the FFT, then making the power of the undesirable freqs equal "0", and then taking the ifft. Is this a proper method, if not what other ways can this be done?

Thanks,
Milad

julius

unread,
Apr 21, 2009, 7:13:05 PM4/21/09
to
On Apr 21, 6:47 pm, "Milad " <milad...@hotmail.com> wrote:
> Hi,
>
> I am trying to remove a motion artifact (and its harmonics) from my EMG signal, and I am facing 2 problems.
>
> 1)  I have been using Pwelch (and CPSD) to get the freq. spectrum. When I took the FFT of the same signal I noticed that the powers are different from what Pwelch (or CPSD) gives. I know this is a dummy question, but why are the powers of freq. different for FFT vs. Pwelch?

Pwelch is a spectrum estimator. It computes an averaged squared
magnitude of the Fourier
transform of a signal. In short, it computes a set of smaller FFTs
(using sliding windows),
computes the magnitude square of each, and averages them.

Also, note the display default for Pwelch is in dB (logarithmic).

>
>  2) I need to remove specific frequencies from the spectrum and then reconstruct the signal. I am currently taking the FFT, then making the power of the undesirable freqs equal "0", and then taking the ifft. Is this a proper method, if not what other ways can this be done?

Notch filter, comb filter, etc.

>
> Thanks,
> Milad

Milad

unread,
Apr 21, 2009, 7:44:01 PM4/21/09
to
julius <jul...@gmail.com> wrote in message <e089058a-56de-438d...@k38g2000yqh.googlegroups.com>...

> On Apr 21, 6:47=A0pm, "Milad " <milad...@hotmail.com> wrote:
> > Hi,
> >
> > I am trying to remove a motion artifact (and its harmonics) from my EMG s=

> ignal, and I am facing 2 problems.
> >
> > 1) =A0I have been using Pwelch (and CPSD) to get the freq. spectrum. When=
> I took the FFT of the same signal I noticed that the powers are different =
> from what Pwelch (or CPSD) gives. I know this is a dummy question, but why =

> are the powers of freq. different for FFT vs. Pwelch?
>
> Pwelch is a spectrum estimator. It computes an averaged squared
> magnitude of the Fourier
> transform of a signal. In short, it computes a set of smaller FFTs
> (using sliding windows),
> computes the magnitude square of each, and averages them.
>
> Also, note the display default for Pwelch is in dB (logarithmic).
>
> >
> > =A02) I need to remove specific frequencies from the spectrum and then re=
> construct the signal. I am currently taking the FFT, then making the power =
> of the undesirable freqs equal "0", and then taking the ifft. Is this a pro=

> per method, if not what other ways can this be done?
>
> Notch filter, comb filter, etc.
>
> >
> > Thanks,
> > Milad

Thanks for the help on the Pwelch concept.

I read a paper from Fratini [2008] JEKM which used notch filters too. I'm just a little skeptical since I want to reconstruct the signal, and worried that notch filtering will change the EMG signal too too much, compared to removing specific freqs.

Thanks again though,
Milad

TideMan

unread,
Apr 21, 2009, 8:55:44 PM4/21/09
to
On Apr 22, 11:44 am, "Milad " <milad...@hotmail.com> wrote:
> julius <juli...@gmail.com> wrote in message <e089058a-56de-438d-a04e-19df9a222...@k38g2000yqh.googlegroups.com>...

When you remove those freqs, you must be sure to also remove the power
at the corresponding negative freq, ie if you zero at index i, then
you must also zero at N+2-i, where N is the no of data.

julius

unread,
Apr 22, 2009, 8:01:23 AM4/22/09
to
On Apr 21, 7:44 pm, "Milad " <milad...@hotmail.com> wrote:
> julius <juli...@gmail.com> wrote in message <e089058a-56de-438d-a04e-19df9a222...@k38g2000yqh.googlegroups.com>...

You really should post this on comp.dsp.

It depends on the relative bandwidths of your desired signal and the
interfering
signal. Notch filter, zero-ing specific frequencies, all are filter-
based techniques.
Notch filters can be made very narrow. FFT-based techniques are
limited by
the frequency-domain resolution that you have access to. Regardless,
filter-
based techniques affect both the good and the bad parts of the
signal.

There are also noise cancellation techniques that estimate the noise
signal
and then subtract it off the received signal. They can better
preserve the good
parts of the signal, but you need to be able to estimate the noise
signal
sufficiently accurately.

Julius

Rune Allnor

unread,
Apr 22, 2009, 10:12:12 AM4/22/09
to
On 22 Apr, 00:47, "Milad " <milad...@hotmail.com> wrote:
> Hi,
>
> I am trying to remove a motion artifact (and its harmonics) from my EMG signal, and I am facing 2 problems.
>
> 1)  I have been using Pwelch (and CPSD) to get the freq. spectrum. When I took the FFT of the same signal I noticed that the powers are different from what Pwelch (or CPSD) gives. I know this is a dummy question, but why are the powers of freq. different for FFT vs. Pwelch?

Because the DFT and Welch methods are different tools that
do fdifferent jobs for different purposes.

The DFT just shifts signal representation from one basis to
another, and ought to have preserved the norm, were it not
for established practice and some computational issues. The
signal can be reconstructed frm the DFT domain back to
time domain by using an inverse DFT.

Welch's method is a power spectrum estimation method.
This means first of all that the computed result is
a power spectrum, not a 'raw' spectrum, which in turns
means that you can not reconstruct the signal. Second,
Welch's method uses a variety of computational tricks
to come up with 'good' PSD estimates, whic mean that
the results might not be directly comparable with the
output of the DFT.

>  2) I need to remove specific frequencies from the spectrum and then reconstruct the signal. I am currently taking the FFT, then making the power of the undesirable freqs equal "0", and then taking the ifft. Is this a proper method, if not what other ways can this be done?

This is the naive way every data analysis neophyte try
first.

If you have any interest in the end data, use filters.
Details depend a bit on specifics, but try notch or
comb filters.

Rune

0 new messages