卷积与方向边缘响应
逐项计算卷积核如何响应局部边缘。
边缘与相邻位置之间的数值变化有关。将邻域一侧与另一侧相减,可以消除均匀区域的响应,并突出发生变化的位置。卷积核把这种比较写成一组局部权重,使系数与响应之间的关系能够精确计算。
局部线性滤波器对邻域数值进行加权求和。其响应取决于系数排列、空间方向、边界处理与数值尺度。固定边缘检测器提供了一个可完整计算的例子,也为后续讨论卷积网络中的可训练系数建立运算基础。
1. 互相关与卷积
对于单通道输入 ,以及以中心为原点编号的 核 ,互相关定义为:
数学卷积则使用相反的空间偏移:
等价地,可以先翻转卷积核的空间方向,再执行互相关。许多神经网络库将不翻转核的运算也称为卷积,因此在比较系数或响应正负号前,需要先声明采用的约定。[1]
下文的数值例子采用互相关、步幅一,以及一圈复制填充。复制填充用最近的边界值延拓输入。这些条件保持输入的空间尺寸,并明确规定边界位置的计算方式。
2. 方向 Sobel 算子
水平方向 Sobel 核为:
这一分解将水平差分与竖直方向的加权求和结合。由于核系数总和为零,常数区域的响应为零。对于水平线性变化 ,每一行的差分为 ;再按 加权,得到:
因此,在单位网格间距下,除以八可得到这一特定线性变化的斜率。未归一化算子带有尺度因子,解释响应幅度时需要保留这一点。竖直边界沿水平方向发生数值变化,所以会产生较强的水平响应。[2]
3. 完整的局部计算
考虑局部区域:
将对应元素相乘后求和,得到:
中间一行的非零权重绝对值为二,因此贡献是上下两行各自贡献的两倍。若反转数值变化方向,响应符号也反转为 。正负号区分变化方向,单独保留绝对值则会丢失这一区别。
4. 数值输入与响应图
测试输入的高度为 128、宽度为 192。在坐标 、 内,数值为 220;其他位置为 20。以 为中心的区域,恰好对应上述计算。这些数值定义的是合成数值输入,并非模型实测输出。

对于这一输入,水平响应的最大绝对值为 800,显示图按下式生成:

分母 800 仅适用于当前输入。对于任意零至 255 的输入值,核的正权重总和为四,因此理论最大绝对响应可达 。用于显示的归一化不应与滤波器原始输出混淆。
5. 方向与解释范围
竖直方向算子为 。组合两个方向可定义梯度幅值 ,但上图只显示 。因此,水平响应为零并不表示不存在边界;水平边界可能在另一个方向上产生响应。
较大的响应也不能确定物体类别。固定滤波器根据指定系数测量局部方向变化。在 CNN 中,系数可以由任务训练获得,但底层的滑动加权求和仍然保留为基本计算单元。 [2]