cupyx.scipy.signal.correlate#

cupyx.scipy.signal.correlate(in1, in2, mode='full', method='auto')[source]#

计算两个 N 维数组的互相关。

计算 in1in2 的互相关,输出大小由 mode 参数决定。

参数:
  • in1 (cupy.ndarray) – 第一个输入。

  • in2 (cupy.ndarray) – 第二个输入。应与 in1 具有相同的维度数。

  • mode (str) –

    指定输出的大小

    • 'full': 输出是完整的离散线性卷积(默认)

    • 'valid': 输出仅包含那些不依赖于零填充的元素。 in1in2 必须在每个维度上至少与另一个一样大。

    • 'same': - 输出与 in1 大小相同,相对于 'full' 输出居中

  • method (str) –

    指示用于计算的方法

    • 'direct'`: 卷积直接根据求和(卷积的定义)确定

    • 'fft'`: 使用傅里叶变换,通过调用 fftconvolve 执行卷积。

    • 'auto'`: 根据对哪个方法对参数更快进行估计,自动选择直接计算或 FFT 计算(默认)。

返回:

互相关结果。

返回类型:

cupy.ndarray

另请参阅

cupyx.scipy.ndimage.correlation()

另请参阅

scipy.signal.correlation()

注意

默认情况下,convolvecorrelate 使用 method='auto',它调用 choose_conv_method 使用预计算的值来选择最快的方法。对于相同的输入,CuPy 选择的卷积计算方法可能与 SciPy 不同。