'Local periods' of a sinusoidal wave

Status
Not open for further replies.

^shapeshifter^

Newbie level 1
Joined
Oct 3, 2010
Messages
1
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,294
Recently I'm trying to solve a following problem:

Let's say that we have some data that has been created by sampling some sinusoidal wave (ie. a wave that "looks" like a sine wave in which frequency is changing over time in some unknown manner - it is still a continuous function, has values between -1 and 1, but sometimes it is "squashed", othertimes it is "widened"). What's more, our sampled data might be a little bit noisy.

What is the best way to estimate where each of the S-shaped part of this sinusoidal wave (by "S-shaped part" I mean something that looks like part of the graph of the standard sine wave on the interval [0, 2*pi]) has it's begining?

I tried to use autocorrelation and FFT, but using it on entire data is not a good solution, because a frequency of given sinusoidal wave can change over time. Tracing points in which the sine wave is crossing zero isn't good as well, because the noise can create some artificial points in which noised sinusoidal wave is reaching zero.

Have you got any ideas how to solve this problem efficiently?

PS. A good model of data on which we are operating can be build using the following Matlab functions:

WAVE = sin((0:0.01:8*pi).^1.75);
NOISE = 0.5*randn(1,length(WAVE));
WAVE = WAVE + NOISE;
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…