cupyx.scipy.signal.oaconvolve#

cupyx.scipy.signal.oaconvolve(in1, in2, mode='full', axes=None)[source]#

使用重叠相加法计算两个 N 维数组的卷积。

使用重叠相加法计算 in1in2 的卷积,输出大小由 mode 参数确定。对于大型数组,此方法通常比 convolve 快;当一个数组比另一个大得多时,通常比 fftconvolve 快。但是,当只需要少量输出值或数组形状非常相似时,此方法可能较慢,并且只能输出浮点数组(整数或对象数组输入将被转换为浮点数)。

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

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

  • mode (str) –

    指定输出的大小

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

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

    • 'same': 输出大小与 in1 相同,以 'full' 输出为中心

  • axes (标量标量元组None) – 计算卷积的轴。默认为所有轴。

返回:

卷积结果

返回类型:

cupy.ndarray