Trouble with time lag between peaks

1 次查看(过去 30 天)
I have two series of data: (time,x) and (time,y) . My intention is to plot the time lag between the the peaks in x and y . Due to property of the system, the time interval between the successive peaks in X and Y is around 8. I have tried to use the function
[pks1,locs1]=findpeaks(x,'minpeakdistance',8);
[pks2,locs2]=findpeaks(y,'minpeakdistance',8);
In this way, after finding both peaks I could find the lag. The problem is due to the variation in noise level of both readings, I couldn't find the same number of peaks for both x and y, more to this, I can't maintain the distance 8 and some are way exaggerated. Is there anyway of tackling this problem , it's giving me hard time please help me.
  4 个评论
Image Analyst
Image Analyst 2013-4-4
Try http://snag.gy. Just do alt-printscreen to copy window into the clipboard, then go to snag.gy and type control-v and tell us the URL it gives you. Put a blank line and then click the colored image icon and paste the url between the pair of double angle brackets.
Ede gerlderlands
Ede gerlderlands 2013-4-4
编辑:Image Analyst 2013-4-4
The yellow dots are the peak points while the blue and magenta are the x and y values.

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2013-4-4
编辑:Image Analyst 2013-4-4
How do you know what is noise and what is a valid peak that you care about? Can you filter both signals with something and then compare denoised signals?
  1 个评论
Ede gerlderlands
Ede gerlderlands 2013-4-4
编辑:Ede gerlderlands 2013-4-4
I did try to filter out but all the effort was futile. Because I know what the time difference between the peaks should be , is there a way to find the first peak and maintain that time difference such as sliding window? the 'minpeakdistance' in findpeak doesn't solve this issue.

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by