我正在尝试理解我的前任编写的代码。她没有在MATLAB中使用xcorr,而是采取了以下措施。显然这似乎有效。如果有人能解释,这里发生了什么,我真的很感激。她在下面的代码中通过计算下面的变量sym说这个模式是对称的。
close all hidden
t = 0:0.01:2*pi;
x = sin(t)
plot(x,'k')
mu = mean(x)
sigma = std(x)
y = (x-mu)/(sigma);
hold on
plot(y,'r')
yrev = y(end:-1:1);
hold on
plot(yrev)
hold on
sym = sum(y.*yrev/length(y))
plot(y.*yrev/length(y),'r*')
答案 0 :(得分:2)
sym
是y之间的normalised cross-correlation和y的反向。
sym
接近1,则y是对称函数。sym
接近零,则y是非对称函数sym
接近减1,则y是反对称函数 编辑:与xcorr
如果您按如下方式计算sym
,您将获得相同的结果:
sym = xcorr(y, yrev, 0, 'coeff')