XCORR of two harmonic signals has a triangular shape. Why?

조회 수: 8 (최근 30일)
Artem Smirnov
Artem Smirnov 2017년 11월 30일
편집: Christoph F. 2017년 11월 30일
Hello! I have two signals (H and Z), which are almost harmonic. Both vectors contain 4018 elements each (I attach the picture). I want to calculate cross correlation between them, and what I get is shown on the second picture. My code is simple:
C=xcorr(H,Z,'coeff')
What can be the reason of such triangular shape? I tried to calculate xcorr of sin and cos, and even added trend to one of them, but it's not triangular, it must be also harmonic... Why can this happen?

답변 (1개)

Christoph F.
Christoph F. 2017년 11월 30일
편집: Christoph F. 2017년 11월 30일
> What can be the reason of such triangular shape?
The reason is that both signals have a significant DC component/offset. Try removing it. For example
C=xcorr(H-mean(H),Z-mean(Z),'coeff')
or a more sophisticated method like highpass filtering or forward-backward highpass filtering with filtfilt.

카테고리

Help CenterFile Exchange에서 Correlation and Convolution에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by