560 字
3 分钟
[计算机视觉] 图像金字塔与图像融合

所谓金字塔就是将原图处理成一系列不同分辨率的版本,形成一个金字塔结构

高斯金字塔#

用于降采样

步骤:

  1. 对图像进行高斯模糊,去除高频信息,防止混叠(伪影)
  2. 对模糊后的图像进行下采样,通常是删除偶数行和偶数列的像素
  3. 重复上述步骤,直到达到所需的层数

拉普拉斯金字塔#

是高斯金字塔的逆过程,用于图像重建

步骤:

  1. 从高斯金字塔的最底层开始,逐层向上进行重建
  2. 对比当前高一层(低分辨率)的高斯金字塔图像进行上采样,通常是插值
  3. 将上采样后的图像与当前层的高斯金字塔图像进行相减,得到拉普拉斯金字塔的当前层,所以拉普拉斯金字塔的每一层都是高斯金字塔相邻两层之间的差异图像

拉普拉斯金字塔每层和高斯金字塔的对应层具有相同的分辨率,但总层数比高斯金字塔少一层

图像融合#

步骤:

  1. 分别构建两张图像的高斯金字塔(GA, GB)和拉普拉斯金字塔(LA, LB)
  2. 根据要融合的方式,构造一个蒙版(比如左右融合,就是一侧全为255,另一侧全为0),并计算蒙版的高斯金字塔(GM)
  3. 在金字塔每一层ii,根据蒙版的权重进行融合得到新的拉普拉斯金字塔: Lfusedi=GMiLAi+(1GMi)LBiL_{fused}^i = GM^i \cdot LA^i + (1 - GM^i) \cdot LB^i
  4. 从融合后的新拉普拉斯金字塔的最底层开始,逐层向上进行重建,得到最终的融合图像

这种方式融合的图像在边界处过渡自然,避免了直接拼接可能出现的明显边界问题,同时保留了两张图像的细节信息

重建方法#

拿到高斯金字塔最顶层nn的最小分辨率图像,逐层向下重建:

Gfusedn1=Lfusedn1+Upsample(Gfusedn)G_{fused}^{n-1} = L_{fused}^{n-1} + \text{Upsample}(G_{fused}^n)

最后得到Gfused0G_{fused}^0,即融合后的图像

实现时应使用浮点数而非u8,避免负数和精度问题

[计算机视觉] 图像金字塔与图像融合
https://a1kari8.github.io/posts/cv/pyramid_fuse/
作者
A1kari8
发布于
2026-05-30
许可协议
CC BY-NC-SA 4.0