计算输入序列XY的互相关。通过连线数据至XY输入端可确定要使用的多态实例,也可手动选择实例。


icon

一维互相关

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

其中符号⊗表示相关。

互相关的离散实现如下。h代表序列,其索引可以为负,N是输入序列X的元素个数,M是序列Y中元素的个数,并假设超出序列XY的索引元素等于零,如下列等式所示:

xj = 0, j < 0 或 jN

yj = 0, j <0或 jM

该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提供偏差和无偏差两种归一化。

  1. 有偏见的归一化

    如果 归一化有偏差的,LabVIEW会按以下方式应用有偏差的归一化:

    Rxy(偏差)j =

    对于 j =0,1,2,..., M+ N-2

    其中 Rxyxy 之间的交叉相关,没有归一化。

  2. 无偏的归一化

    如果 归一化无偏的,则LabVIEW应用无偏的归一化,如下所示:

    Rxy(无偏差)j =

    对于 j =0,1,2,..., M+ N-2

    其中 Rxyxy 之间的交叉相关,没有归一化。 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的列数 XY 范围外的索引元素等于零,如以下关系所示:

x(m,n) = 0, m < 0 或 mM1 或 n < 0 或 nN1

y(m,n)=0,m<0或 mM2 或n<0或 nN2

输出矩阵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。