图像金字塔
通过逐步降采样构建的多分辨率数据结构,用于在目标检测和模板匹配中实现尺度不变性。
图像金字塔是一种层次化数据结构,由同一图像在逐渐降低的分辨率下的多个副本组成。金字塔底部是原始全分辨率图像,每个后续层级是其下方层级的缩小版本。这种结构使算法能够高效地在多个尺度上运行。
最常见的两种类型是高斯金字塔和拉普拉斯金字塔。高斯金字塔通过反复应用高斯低通滤波器后以 2 倍因子降采样来构建。第 0 层是原始图像,第 1 层宽高减半,第 k 层的分辨率为原始图像的 1/2^k。在 OpenCV 中,cv2.pyrDown() 执行一级缩减。
- 高斯金字塔:每一层对前一层进行平滑和子采样。整个金字塔的内存占用约为原始图像大小的 4/3
- 拉普拉斯金字塔:存储相邻高斯层级之间的差异,捕获每个尺度的边缘和细节信息。广泛用于图像融合和无缝合成
- 尺度因子:虽然 2 倍因子是标准设置,但 SIFT 等特征检测器使用更精细的间隔(如
2^(1/3))以获得更好的尺度定位
图像金字塔有广泛的应用。在目标检测中,固定大小的检测器应用于金字塔的每个层级,而非在多个尺寸上扫描滑动窗口,将计算成本从尺度数量的二次方降低到线性。在模板匹配中,粗到精策略先在低分辨率下缩小候选区域,再在全分辨率下精细化。现代深度学习架构如特征金字塔网络 (FPN) 基于这一概念生成多尺度特征图,实现跨目标尺寸的精确检测。