函数 > 矢量和矩阵 > 其他数组函数 > 卷积和互相关
  
卷积和互相关
convolve(S, K, [BC], [OV]) - 在具有任意相位的 2 个矢量 (1D) 或 2 个矩阵 (2D) 之间执行卷积。
按时间的卷积对应于按频率的乘积,反之亦然,其对数字滤波十分有用。
crosscorr(S, K, [BC], [OV]) - 实现具有任意相位的 2 个矢量 (1D) 或 2 个矩阵 (2D) 之间的互相关。
相关等同于卷积,有一个序列随时间反向,通常用于求解系统的脉冲响应。
crosscorr 函数可用于对图像进行相关处理。
crosscorr 函数合并了被弃用的函数 correlcorrel2d 的功能。
自变量
S 为表示输入信号的矢量或矩阵。数组元素可具有实数值或复数值。
K 为表示核的矢量或矩阵。数组元素可具有实数值或复数值。
BC (可选) 是一个整数自变量,用于指定要执行卷积的类型,可通过在建立相关性过程中指定如何处理矩阵边界来加以指定。 BC 可设置为 0 (默认)、1、2 或 3;其中:
0:线性 (或补零) - 超出矩阵边界的像素将被视为零。
1:循环 (或周期性环绕) - 超出矩阵边界的像素将被视为矩阵的周期性延拓。
2:反射 - 超出矩阵边界的像素将被视为沿矩阵的边界做镜面反射后的结果。
3:延拓 - 超出矩阵边界的像素将被视为矩阵中的最后一个值。
OV (可选) 是一个整数值或一个由两个整数值组成的矢量,用于指示第二个信号是否应用了偏移。它用于指定核矩阵 K 与输入信号矩阵 S 的初始行和列重叠 (相位相关性)。矢量的第一个元素指定行重叠,第二个元素指定列重叠。
最小重叠值不能小于 1,而最大重叠值不能大于核尺寸。
对于零相位相关性,必须定义重叠值以使核矩阵的原点位于核矩阵的中心;假定核矩阵为奇矩阵。这种情况下,应将这两个重叠参数分别设置为核矩阵行数和列数的二分之一。
对于一维互相关,行重叠值设置为 1。
对于二维互相关,默认重叠值按下列方式设置:
Row_overlap = K_rows − K_rows/2
Column_overlap = K_columns − K_columns/2