的时候肯定是autocorrelation最大的时候,即自己与自己最为相关; 在的时候,在的时候,会得到第二大的值,即移动一个周期后做相关。
Demo Code
for i = 1:length(signal_list) - 1
name = strsplit(matFiles(i).name, '.');
name = name{1};
[autocor, lag] = xcorr(signal_list{i}, 200);
figure;
plot(lag, autocor, 'LineWidth', 1);
xlabel('Lag');
ylabel('Auto-correlation');
title(['Auto-correlation for ', name]);
grid on;
grid minor;
[~, max_idx] = max(autocor);
disp(max_idx);
freq = 1 / (max_idx * 1 / fs);
disp(freq)
fprintf('Signal %s freq: %f\n', name, freq);
end