How many ways to determine signal frequency?

  • Thread starter Thread starter TimMiller
  • Start date Start date
  • Tags Tags
    Frequency Signal
Click For Summary

Discussion Overview

The discussion revolves around methods for determining the frequency of various biological signals, such as EEG and heart pulse data. Participants explore different mathematical transforms and techniques applicable to 1-D signal analysis, including the Discrete Fourier Transform (DFT), Fast Fourier Transform (FFT), wavelet transform, discrete cosine transform, and Hankel transform.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Mathematical reasoning

Main Points Raised

  • Tim seeks guidance on appropriate methods for determining signal frequency, particularly for 1-D data from biomedical measurements.
  • Some participants suggest that for simple waveforms, counting zero crossings may suffice for frequency determination.
  • For more complex signals like EKGs, additional processing is necessary to identify key waveform components before calculating heart rate.
  • Transform methods, particularly FFT, are proposed as suitable for signals with multiple frequency components, such as EEG waveforms.
  • Tim mentions that DFT can be used to find the frequency by identifying the coefficient with the maximum magnitude.
  • Some participants argue that for simply determining pulse rate, filtering the waveform and counting pulses may be more effective than using transforms.
  • There is a discussion about the advantages of FFT over DFT, particularly in terms of speed and data handling.

Areas of Agreement / Disagreement

Participants express varying opinions on the best methods for frequency determination, with no consensus reached on a single approach. Some advocate for transform methods, while others suggest simpler techniques may be more appropriate for specific applications.

Contextual Notes

Participants highlight the need for different approaches depending on the complexity of the signal and the specific requirements of the analysis, indicating that the choice of method may depend on the context of the data being analyzed.

TimMiller
Messages
1
Reaction score
0
Hi,

Does anyone have idea on how to determine signal frequency?

I am a first year graduate student in biomedicine and previously studied some general engineering, not really very versed in mathematics. We have lots of data measured from human to analysis, including EEG, heart pulse and others.

I would like to know what is the appropriate method to determine the frequency of a signal? For example, if you know a person’s heart is beating regularly which a man could count, how to count it with machine?

Since I just started working in this area, I would like to gather as much information as possible to do a comparison. For example, I heard from people that Discrete Fourier Transform might be used to determine frequency. DFT is of course in the undergraduate curriculum, but how to do that?

What about wavelet transform? I frequently saw its name associated with image processing, but most of the signals we process, such as EEG, are 1-D rather than 2-D image data. Does wavelet also apply to 1-D data? Can it be used for frequency determination?

And what about other types of transforms such as discrete cosine transform and Hankel transform? I would very much like to know how many methods already exist there.

Sincerely wish someone could give a survey on this topic, particularly for 1-D data.



Tim
 
Engineering news on Phys.org
TimMiller said:
Hi,

Does anyone have idea on how to determine signal frequency?

I am a first year graduate student in biomedicine and previously studied some general engineering, not really very versed in mathematics. We have lots of data measured from human to analysis, including EEG, heart pulse and others.

I would like to know what is the appropriate method to determine the frequency of a signal? For example, if you know a person’s heart is beating regularly which a man could count, how to count it with machine?

Since I just started working in this area, I would like to gather as much information as possible to do a comparison. For example, I heard from people that Discrete Fourier Transform might be used to determine frequency. DFT is of course in the undergraduate curriculum, but how to do that?

What about wavelet transform? I frequently saw its name associated with image processing, but most of the signals we process, such as EEG, are 1-D rather than 2-D image data. Does wavelet also apply to 1-D data? Can it be used for frequency determination?

And what about other types of transforms such as discrete cosine transform and Hankel transform? I would very much like to know how many methods already exist there.

Sincerely wish someone could give a survey on this topic, particularly for 1-D data.



Tim

Welcome to the PF, Tim.

If the waveform is simple and centered about zero volts, then you can just count the time between zero crossings and do a little math to give you a running frequency number.

If the waveform is more complicated like an EKG waveform, then you will need to do more processing to distinguish the P-Q-R-S-T parts of the waveform, and do some other processing to calculate the heart rate.

If your signal has a number of frequency components in it (like an EEG waveform), then yes, a transform method like an FFT is more what you would look at using.

I did a quick Google search on Biomedical Instrumentation, and got some good hits. You could look through them to find some good books or online sources of information on the typical signal processing that is done on biomedical signals:

http://www.google.com/search?source...entation&gs_upl=0l0l0l5777lllllllllll0&aqi=g5

.
 
berkeman said:
If your signal has a number of frequency components in it (like an EEG waveform), then yes, a transform method like an FFT is more what you would look at using.
.

berkeman,

I just learned that DFT can be used to calculate frequency. The method is simply finding the DFT coefficient with the maximum magnitude (not including the average component), which corresponds to the frequency.

Among the other transforms listed:
  1. Wavelet
  2. cosine/sine
  3. Hankel
Do you have any idea of which are applicable?


Tim
 
If you only want to know the pulse rate then I don't believe transforms are the right approach. Use a filter to "simplify" the waveform and then a counter to measure the time between pulses.
If you want to use more complicated techniques like transforms then have a look at LabVIEW.
 
Do you just want to derive the frequency from existing data or do you want to measure the frequency as you are taking the data? If the former, I recommend using the Fast Fourier Transform instead of the Discrete Fourier Transform. The differences are that the FFT is much faster but the data must be in packets of integral powers of 2. If the last packet doesn't work out to and integral power of 2, you can fill the rest of the packet with 0s.

If you input a large amount of data taken over minutes or longer, the pulse rate may vary somewhat and the result may show the pulse rate smeared over a small range of frequencies. By taking the data in smaller packets and using the FFT, not only will the processing be a lot faster but the frequency representation of each packet will be cleaner.
 

Similar threads

  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 68 ·
3
Replies
68
Views
6K
Replies
20
Views
3K
  • · Replies 14 ·
Replies
14
Views
5K
  • · Replies 46 ·
2
Replies
46
Views
6K
  • · Replies 23 ·
Replies
23
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 4 ·
Replies
4
Views
4K