对于这个基本问题,我真的感到很抱歉,但是我对OpenCV和图像处理一般还是陌生的,经过一段时间的摸索,仍无法解决。
这就是我想要做的:
我有一个透明的PNG图片:
我为此创建了一个二进制掩码,透明区域为黑色,对象为白色:
现在,我有另一幅这样的图像,具有相同的尺寸:
现在,我希望将第一个图像(实际对象)的白色蒙版部分叠加到该图像上。我该怎么做?
答案 0 :(得分:2)
利用这里有numpy数组的事实,我们可以首先将蒙版扩展到三个维度:
mask = np.dstack([(mask > 0)]*3) # original mask is cv 255 mask
mask = np.dstack([mask]*3) # original mask is already boolean
然后使用遮罩复制图像:
np.copyto(background, foreground, where=mask)
答案 1 :(得分:2)