The stupid question is the question not asked | |
PerlMonks |
Re: How do I find peaks in noisy data?by nothingmuch (Priest) |
on May 02, 2006 at 00:21 UTC ( [id://546794]=note: print w/replies, xml ) | Need Help?? |
compute the derivative of the wave pattern, and then whenever it is, say, over the last 4 samples by average larger than say .25 then you probably have a candidate for a peak. Keep looking till it stops rising, then try to find something with a proportionate declination in the derivative function.
If the noise is random you can use something like ent. This way you can look at long sample window and decide if it's got any islands or not in it. This can get false islands in, but is also more sensitive than There are more complicated algorithms, like the dolby stuff but that's probably overkill.
-nuffin zz zZ Z Z #!perl
In Section
Seekers of Perl Wisdom
|
|