我知道MATLAB的conv2
和corr2
的等效函数是scipy.signal.correlate
和scipy.signal.convolve
。但是函数imfilter
具有处理数组边界外部的属性。与symmetric
,replicate
和circular
一样。 Python可以做那些事吗
答案 0 :(得分:5)
只是添加一些可靠的代码,我想在python中使用$factory->define(Category::class, function (Faker\Generator $faker) {
... }
等效的简单2-D图像和过滤器(内核)。我发现以下结果与MATLAB相同:
package/xoco70/my-plugin/src
对于给定的问题,这将有效:
/vendor/xoco70/my-plugin/src/
请注意,由于某种原因,MATLAB会返回预期答案的转置。
有关更多选项,请参阅文档here。
修改1:
MATLAB提供了更多选项,记录为here。具体来说,如果我们希望使用imfilter(A, B)
选项,我们有MATLAB代码(例如):
import scipy.ndimage
import numpy as np
scipy.ndimage.correlate(A, B, mode='constant').transpose()
这与python等价:
scipy.ndimage.correlate(A, B, mode='nearest').transpose()
注意MATLAB中的'conv'
与python中的SciPy中的imfilter(x, f, 'replicate', 'conv')
相同。
答案 1 :(得分:2)
使用功能scipy.ndimage.filters.correlate
和scipy.ndimage.filters.convolve