有 2 个信号 A(t)、B(t) 代表输出功率。A是延时输出。如何实现这个公式
Cross_cor(delay)=[A(t + delay) − <A(t)>]*[B(t) − <B(t)>] / {[A(t)-<A(t)]^2 * [B(t)-<B(t)]^2} ^2
- 我不明白分子意味着什么?
- 如何绘制彩色地图或类似冲浪图的东西,从而可以用不同的颜色看到不同的区域。
- 如何获得作为延迟移位时间函数的互相关图(延迟 X 轴,Y 轴上的 Cross_corr),以便可视化峰值?
有 2 个信号 A(t)、B(t) 代表输出功率。A是延时输出。如何实现这个公式
Cross_cor(delay)=[A(t + delay) − <A(t)>]*[B(t) − <B(t)>] / {[A(t)-<A(t)]^2 * [B(t)-<B(t)]^2} ^2
我会说 [X] 是 X 的平均值:
R(dt) = [(A(t + dt) - [A(t)]) * (B(t) - [B(t)])]/(std(A) * std(B))
分子采用两个函数 A(t) 和 B(t) 并将它们居中,这就是减去平均值的作用。我可以创建两个新函数,让这一切看起来更容易一些:
C(t) = A(t) - [A(t)] D(t) = B(t) - [B(t)]
然后:
R(dt) = [C(t + dt) * D(t)]/(std(C) * std(D))
现在我将这两个函数相乘并取平均值。如果这两个函数彼此精确地移动,这将是 1,这意味着正相关。
您可以通过执行以下操作在 Matlab 中执行此操作:
a = randn(1,50);
b = randn(1,50);
x1 = mean((a - mean(a)) .* (b - mean(b)))/(std(a) * std(b))
这给了我在 dt = 0 的交叉点,对于另一个 dt 做:
x2 = mean((a(2:50) - mean(a(2:50))) .* (b(1:49) - mean(b(1:49))))/(std(a) * std(b))