MATLAB filter2/conv2 函数在 Python 语言中的等价函数

677
2023/8/20 7:48:25
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Python中,可以使用SciPy库的convolve2d函数来实现MATLAB中filter2conv2函数的功能。以下是一个示例代码:

import numpy as np
from scipy.signal import convolve2d
def filter2(mat, kernel):
return convolve2d(mat, kernel, mode='same')
# 示例用法
mat = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
kernel = np.array([[1, 0, -1],
[2, 0, -2],
[1, 0, -1]])
result = filter2(mat, kernel)
print(result)

在上面的示例中,mat是输入矩阵,kernel是卷积核。filter2函数返回了卷积后的结果。可以通过mode='same'参数来保持输出与输入矩阵的大小相同,与MATLAB的filter2函数的默认行为相对应。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: python如何保存生成的图片