通过OpenCV在另一个(HDR)中插入图像的遮罩区域

时间:2019-08-23 07:49:02

标签: python image opencv image-processing

我有两个图像和一个面具。第一个图像(im1)是我的源图像,第二个(im2)是需要在im1中插入其区域的图像,而第三个图像(mask)在该区域中包含1。需要粘贴。所有图像具有相同的大小(H*W*3)。应当注意,im1是HDR(.exr格式)。 通过OpenCV阅读

im1 = .imread(im1, cv2.IMREAD_ANYCOLOR | cv2.IMREAD_ANYDEPTH)[:,:,0:3]
im2 = ...
mask = ...

如何在mask中传输图像im2的遮罩区域(包含在im1数组中)而没有任何信息丢失(除遮罩区域之外没有变化)?

1 个答案:

答案 0 :(得分:0)

通常,您将使用OpenCV的copyTo()方法将一个图像或遮罩的图像区域从一个Mat复制到另一个。 不幸的是,此功能在OpenCV Python绑定中不可用。

this answer中有此功能的Python解决方法,您可以改用它。