在照片拼接中混合伪影

信息处理 图片 拼接 照片
2021-12-27 09:53:50

我正在开发一个使用多波段混合的照片拼接应用程序。我需要摆脱在某些地方出现的令人不快的边缘:

在此处输入图像描述

这是重叠区域(左 - 添加到马赛克的新图像,右 - 当前马赛克包含背景像素上新图像的像素以改善混合,中间 - 混合蒙版):

在此处输入图像描述

如果我只是根据掩码计算左右图像之间的加权平均值,结果当然是可以的。但是,这会留下可见的接缝,因为两个图像的曝光通常略有不同。

因此,所有三个图像都需要连续模糊才能构建高斯金字塔 - 这是金字塔的一层的样子:

在此处输入图像描述

您可以看到混合蒙版的顶部“接触”了边框。高斯模糊滤波器反映在图像边界上,这会导致低频带不准确。

我对图像进行了着色以使问题更加明显:

在此处输入图像描述

我不确定如何模糊蒙版,以便它可以很好地处理重叠区域边缘。

几点建议:

  • 改变模糊滤镜的行为(如何?)
  • 扩展混合蒙版的区域,使一个部分永远不会“接触”边框
  • 更新加权蒙版,使生成的混​​合蒙版更加“边缘感知”

还有其他建议/提示吗?

1个回答

我通过在重叠区域添加某些填充解决了这个问题。

有属于image1、image2、背景和重叠的像素。重叠的像素根据邻域连续重新标记为 image1 或 image2。

此填充将为模糊留出一些空间,以便重叠的锐利边缘不会出现变化。

另一种处理是光度校准,即增益补偿和渐晕消除。这最小化甚至消除了低频段的差异。

最后,模糊必须避免背景像素(通常是黑色)渗入图像中。这可以通过 alpha 混合或使用此处描述的二进制掩码来完成。

也可以减少重叠的边缘和角落附近的模糊量。不幸的是,这会降低混合算法的性能,并且结果有些不受控制(因为模糊是不均匀的)。

最后,梯度域混合提高了边缘附近的质量,因为它不依赖于固定大小的高斯模糊。