scipy.ndimage.convolve1d函数计算结果的数学等价式咨询
一维卷积(constant模式)的数学等价式
当执行convolve1d(x1, x2, mode='constant')时,该操作对应标准线性卷积,对数组超出边界的部分以0填充。
假设:
- $x_1$是长度为$n$的数组,索引范围为$i = 0, 1, ..., n-1$
- $x_2$是长度为$p$的数组,索引范围为$j = 0, 1, ..., p-1$
卷积结果$S$的长度为$n + p - 1$,其中每个元素$S[k]$($k$的取值范围是$0 ≤ k ≤ n+p-2$)的数学表达式为:
$$
S[k] = \sum_{i=\max(0, k-p+1)}^{\min(n-1, k)} x_1[i] \cdot x_2[k - i]
$$
补充说明
当$k - i$不在$x_2$的有效索引范围(即$k-i < 0$或$k-i ≥ p$)时,对应的$x_2[k-i]$取值为0(这就是mode='constant'的补零规则),因此上述求和式也可等价写为:
$$
S[k] = \sum_{i=0}^{n-1} x_1[i] \cdot \begin{cases}
x_2[k-i] & \text{如果 } 0 ≤ k-i ≤ p-1 \
0 & \text{否则}
\end{cases}
$$
内容的提问来源于stack exchange,提问作者youssef boutaleb
相关产品推荐
相关产品推荐

