Gaussian Blur
**高斯模糊(Gaussian blur)**是图像 与一个二维高斯核的卷积。它是计算机视觉中标准的低通滤波器:在进行任何基于导数的运算之前抑制高频噪声,并且是尺度空间(scale space)的数学基础。标准差为 的核为
平滑后的图像为 ,其中 表示卷积。在实践中,核会被截断到一个有限窗口内(常见的选择是半宽约为 ,因为高斯分布几乎所有的质量都集中在 范围内),并归一化使其元素之和为 1,从而保持图像的平均亮度不变。
关键性质
- 可分离性(Separability)。 二维高斯核可以分解为两个一维高斯核,。一次 的二维卷积(每个像素 )变成一次水平方向和一次垂直方向的卷积(每个像素 )。每一个正规的实现都会利用这一点。
- 级联(半群)性质。 先用 模糊,再用 模糊,等价于用单次 的模糊。这使得尺度空间金字塔可以基于上一层增量式地构建每一层,而不必每次都对原始图像重新模糊。
- 尺度空间唯一性。 高斯核是唯一能够在 增大时生成线性尺度空间且不引入虚假新结构的核(因果性,causality property)。这正是 SIFT 及相关检测器将尺度定义为”高斯模糊量”的原因。
- 噪声与定位精度的权衡。 更大的 能去除更多噪声,但也会抹去细节并使边缘/角点发生偏移。因此特征提取流水线在检测阶段使用较小的 ,只有在需要尺度不变性时才使用较大的 。
在导数计算中的作用
微分运算会放大噪声,因此梯度总是在平滑后的图像上计算。由于卷积与微分是可交换的,
可以直接与高斯的导数进行卷积。Harris 角点检测、Canny 边缘检测、KLT 跟踪以及光流都依赖以这种方式稳定后的梯度。SIFT 使用的高斯差分(Difference of Gaussians, DoG),
是尺度归一化高斯拉普拉斯算子的一种廉价近似,把两次模糊和一次减法变成了一个斑点(blob)检测器。
图像金字塔中的抗锯齿
在不先去除高于新奈奎斯特极限的频率成分的情况下对图像降采样,会产生走样(aliasing)伪影。因此图像金字塔在每次减半操作之前都会先施加一次高斯模糊——这就是经典的高斯金字塔。多尺度特征检测(ORB 的尺度层、KLT 的从粗到细跟踪)都依赖于这种预平滑操作被正确地执行。
实用说明
- 核大小的选择:给定 ,一个约 像素宽的窗口就能覆盖该核;反过来,当只给出核大小时,库会由此推导出 。窗口过小会截断高斯核并引入伪影。
- 反复使用箱式滤波器:根据中心极限定理,多次使用箱式(均值)滤波器进行卷积可以近似高斯滤波;这是在箱式滤波器几乎零成本的硬件(积分图像)上常用的技巧。
- 边界处理:卷积需要图像外部的数值;复制/反射填充的不同选择会微妙地改变靠近边界处的响应,这在图像边缘附近检测特征时会产生影响。
- 模糊并非总是敌人:故意对参考图像进行模糊可以扩大直接法/基于光度的对齐的收敛域,这也是为何(大幅平滑的)粗糙金字塔层要先进行对齐的原因之一。
对SLAM的意义
视觉SLAM中几乎每一个前端操作都涉及高斯模糊:基于梯度的检测器和跟踪器在求导前都会先平滑;SIFT 的整个检测流水线都建立在高斯尺度空间与 DoG 之上;ORB 和 KLT 都在高斯金字塔上运行以获得尺度鲁棒性;直接法则能从适度平滑扩大光度对齐收敛域中获益。理解 如何在噪声抑制与特征定位精度之间进行权衡,能够解释SLAM前端中许多实际的调参决策。