在OpenCV图像拼接中混合瑕疵

时间:2016-03-01 22:54:01

标签: opencv alpha blending image-stitching opencv-stitching

我正在使用OpenCV来混合一组预先扭曲的图像。作为输入,我有一些4通道图像(* .png或* .tif),我可以从中提取bgr图像和带有与图像(白色)和背景(黑色)相关的区域的alpha蒙版。图像和蒙版都是Blender模块cv::detail::Blender::blend的输入。

当我使用羽毛(alpha)混合时,结果是可以的,但是,我想避免重影效果。当我使用多波段时,一些伪像出现在图像的边缘:

enter image description here

问题类似于提出here的问题,并解决了here。问题是,如果解决方案是创建二进制掩码(我已经从alpha通道中提取),它对我不起作用。如果我在两个图像之间的过度填充中添加填充,它会从背景中获取像素并使结果更加混乱。

我想这可能与函数pyrUppyrDown有关,因为创建高斯和拉普拉斯金字塔的模糊可能会应用于整个图像,而不仅仅是正面alpha区域。在任何情况下,我都不知道如何使用这些功能解决问题,我找不到另一种有效的解决方案。

当我使用多分辨率混合的另一种实现时,它完美地工作,但是,我对集成OpenCV的多波段实现非常感兴趣。知道如何解决这个问题?

1 个答案:

答案 0 :(得分:0)