利用手头上已有的numpy数组,我们可以先将掩码扩展到三个维度:
# Case 1: original mask is OpenCV mask (foreground values 255)
mask = np.dstack([(mask > 0)]*3)
# Case 2: original mask is already boolean
mask = np.dstack([mask]*3)
随后使用蒙版将图像复制过去:
np.copyto(background, foreground, where=mask)
_, extended_mask = np.broadcast_arrays(source1, mask[..., None])
。它起作用了。我也会尝试你的代码,看看能否让它更快。谢谢你的帮助! :) - Train Heartnetnp.copyto
来叠加带有透明度的掩码吗?例如,如果我们想要在 RGBA 图像的意义上将船上物体叠加在背景上,并带有一定程度的透明度。 - Luca Clissa