将2D矩阵的每一行与向量进行卷积

时间:2020-01-23 12:47:38

标签: python numpy convolution

我有一个1000000x1000(MxN)的矩阵 A 。我还有另一个大小为L的向量 b 。我需要将2D矩阵 A 的每一行与向量 b 卷积。如何在python中执行此操作?

我尝试过, C = np.convolve(A, b)

但是我说错了

in convolve return multiarray.correlate(a, v[::-1], mode)
ValueError: object too deep for desired array

1 个答案:

答案 0 :(得分:1)

尝试scipy's convolve2d

C = scipy.signal.convolve2d(A, b)

只需确保len(b.shape) == 2(这是一个二维数组,一维大小为1)

这将起作用,因为b过滤器将在A的每一行上滑动,在C中产生新行,然后跨步到下一行,执行相同的操作,创建另一行,然后等等。

相关问题