2014-10-25 2 views
0

давайте рассмотрим следующий кодкорреляционный анализ двух сигналов в MATLAB

>> load relatedsig.mat; 
>> [C1,lag1] = xcorr(T1,S); 
[C2,lag2] = xcorr(T2,S); 

figure 
ax(1) = subplot(211); 
plot(lag1/Fs,C1,'k'); 
ylabel('Amplitude'); 
grid on 
title('Cross-correlation between Template 1 and Signal') 
ax(2) = subplot(212); 
plot(lag2/Fs,C2,'r'); 
ylabel('Amplitude'); 
grid on 
title('Cross-correlation between Template 2 and Signal') 
xlabel('Time(secs)'); 
axis(ax(1:2),[-1.5 1.5 -700 700 ]) 
>> 

У меня есть вопрос, связанный с этой частью - plot(lag1/Fs,C1,'k');

почему мы разделяющей лаги на частоту выборки? Заранее спасибо

ответ

1

Fs скажите вам, сколько образцов в секунду ваш сигнал был записан!

Итак, когда вы делите свое отставание по частоте дискретизации, вы просто конвертировали положение задержки в секундах.

он сообщает вам, сколько секунд задержки было возвращено корреляцией!

+0

другими словами? чтобы выразить это простым способом –

+0

точно, вы можете проверить для себя, сопоставить два сигнала, например, с одной секундой, и посмотреть результат в секундах 'lagfromcorrelation/Fs' – ederwander

+0

нет, я имею в виду, как мы можем преобразовать ваш ответ по-разному , поэтому это означает, что после того, сколько секунд два взаимосвязанных сигнала? –

Смежные вопросы