0

I need some help determining the frequencies of these small peaks. I know it should just be a FFT of the original function, but I am having trouble with the practical implementation.

Can someone help me how to do this - preferable using matlab.

not a busy cat http://dl.dropbox.com/u/4000492/fft/fft.png

mat-file: http://dl.dropbox.com/u/4000492/fft/fft.mat

Amro
  • 123,847
  • 25
  • 243
  • 454
Markus
  • 2,526
  • 4
  • 28
  • 35
  • What exactly do you want? A peak in the graph is a point, it has no frequency. – Andrey Rubshtein Oct 25 '11 at 09:58
  • Sorry, I may have been unclear. As you can see there are multiple peaks (it looks like a damped harmonic oscillator). I want the frequency of the occurrence of these peaks. – Markus Oct 25 '11 at 10:07
  • 2
    I can't download your data, but anyhow, I don't think that Fourier is the best choice here. Just find the local maximas, and find the distance between them. – Andrey Rubshtein Oct 25 '11 at 10:48
  • I know, this would be the easy solution. But it is only possible as long as the peaks are nice and visible. As you can see they get rather small. And more important, I do expect that the distance between the peaks will change. A fourier transform should be the easiest way confirm this - I think. – Markus Oct 25 '11 at 12:18
  • 2
    As pointed out by Andrey, it looks like your data does not contain enough peaks to estimate their frequency of occurence with FFT. For peak detections have a look at [peakdet](http://billauer.co.il/peakdet.html) which works quite well. – Aabaz Oct 25 '11 at 12:35

1 Answers1

0

You can try the last half of calculating a cepstrum. Take the log magnitude and FFT it. If there are enough peaks, it might give you a rough periodicity average.

hotpaw2
  • 70,107
  • 14
  • 90
  • 153