How to find repetitive patterns using autocorrelation

3 次查看(过去 30 天)
My aim is to find repetitive patterns in an audio clip. I need to find one 'bar' of audio and I think autocorrelation should do justice. But just how do I go about this? I'm not sure what to do after using the xcorr function. For eg, in a simple case where the values could be x=[1 2 3 1 2 3 1 2 3], and ac=xcorr(x); what do I do next to extract just [1 2 3]?

回答(1 个)

Jason Kaeding
Jason Kaeding 2011-7-6
Wouldn't you see spikes in your xcorr result corresponding to the period of the signal? If you can find the spacing (N) between two spikes, then you would just extract x(1:N) where N is your period length. You might need to shift (1:N) depending on the location of your reference spike.
You would have to define some rules/math to determine where the "spikes" are.

类别

Help CenterFile Exchange 中查找有关 Electrophysiology 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by