互相关
- 更新时间2025-07-30
- 阅读时长5分钟
计算输入序列X和Y的互相关。通过连线数据至X和Y输入端可确定要使用的多态实例,也可手动选择实例。

一维互相关
序列x(t)和y(t)的互相关Rxy(t)由以下等式定义:

其中符号⊗表示相关。
互相关的离散实现如下。h代表序列,其索引可以为负,N是输入序列X的元素个数,M是序列Y中元素的个数,并假设超出序列X和Y的索引元素等于零,如下列等式所示:
xj = 0, j < 0 或 j ≥ N且
yj = 0, j <0或 j ≥ M。该VI使用下列等式获取h的元素。

j = –(N–1), –(N–2), … , –1, 0, 1, … , (M–2), (M–1)
输出序列Rxy的元素与序列h中的元素
Rxyi = hi – (N–1)i = 0, 1, 2, … , N+M–2。
不能使用负数索引LabVIEW数组,t = 0位置对应的互相关值是输出序列Rxy的第N个元素。因此,Rxy代表互该VI移位N次索引后的相关值。
下列程序框图为索引该VI的一种方法。

下图是以上程序框图的运行结果。

如需使互相关计算更精确,在某些情况下需归一化。该VI提供偏差和无偏差两种归一化。
-
有偏见的归一化
如果 归一化 是 有偏差的,LabVIEW会按以下方式应用有偏差的归一化:
Rxy(偏差)j =
对于 j =0,1,2,..., M+ N-2
其中 Rxy 是 x 和 y 之间的交叉相关,没有归一化。
-
无偏的归一化
如果 归一化 是 无偏的,则LabVIEW应用无偏的归一化,如下所示:
Rxy(无偏差)j =
对于 j =0,1,2,..., M+ N-2
其中 Rxy 是 x 和 y 之间的交叉相关,没有归一化。 f(j )是:

二维互相关
该VI依据下列公式计算二维互相关:

i = –(M1–1), … , –1, 0, 1, … , (M2–1) and j = –(N1–1), … , –1, 0, 1, … , (N2–1)
M1是矩阵X的行数,
N1 是矩阵 X的列数, M2 是矩阵 Y的行数, N2 是矩阵 Y的列数, X 和 Y 范围外的索引元素等于零,如以下关系所示:x(m,n) = 0, m < 0 或 m ≥ M1 或 n < 0 或 n ≥ N1
且
y(m,n)=0,m<0或 m ≥ M2 或n<0或 n ≥ N2。
输出矩阵Rxy的元素与h中的元素
Rxy(I,j) = h(i–(M1–1), j–(N1–1)) for i = 0, 1, 2, … , M1+M2–2和j = 0, 1, 2, … , N1+N2–2。