不明白scipy.ndimage.filters.convolve的模式

3 投票
1 回答
3399 浏览
提问于 2025-04-18 02:49

函数 scipy.ndimage.filters.convolve 有一个 mode 参数,用来处理边界的不同方式:

mode : {'reflect','constant','nearest','mirror', 'wrap'}

我知道 Matlab 中有一个 imfilter 函数,并假设以下是用来描述边界处理方式的关键词对应关系:

imfilter      convolve

(scalar)      'constant'
'symmetric'   'mirror'
'replicate'   'nearest'
'circular'    'reflect'   ---- Am I right?

问题:

  1. 我理解的都对吗?
  2. 模式 'wrap' 是干嘛的?

1 个回答

2

等价表几乎是正确的,唯一的错误是“circular”,应该改成“wrap”。

imfilter      convolve

(scalar)      'constant'
'symmetric'   'mirror'
n.a.          'reflect'
'replicate'   'nearest'
'circular'    'wrap'

在表中提到的“reflect”卷积模式在matlab中没有对应的选项;最相似的是'symmetric'(它们的区别在于,'reflect'会复制边缘的元素,而'mirror'则不会)。

参考资料:

撰写回答