【发布时间】:2022-02-15 03:43:29
【问题描述】:
我正在尝试根据蒙版图像裁剪图像并将裁剪后的图像粘贴到新的背景图像上。我能够做到这一点,但裁剪后的图像是灰色而不是原始图像中的颜色
从上图中可以看出,裁剪后的图像颜色与原始源猫图像的颜色不同,裁剪后的图像是灰色的,而在原始图像中它包含金黄色。
我的代码如下来执行这个
import cv2
src1=cv2.imread('cat.jpg',0)
mask=cv2.imread('mask_cat.jpg',0)
ret, thresh1 = cv2.threshold(mask, 0, 255, cv2.THRESH_BINARY)
src1 [thresh1==0] = 0
h, w = src1.shape
red = (0, 0, 0)
width, height = 1742, 815
back =cv2.cvtColor( create_blank(width, height, rgb_color=red),cv2.COLOR_BGR2GRAY)
hh, ww = back.shape
yoff = round((hh-h)/2)
xoff = round((ww-w)/2)
result = back.copy()
result[yoff:yoff+h, xoff:xoff+w] = src1
如何在裁剪后的图像中获得与裁剪位置的原始源颜色相同的颜色?任何解决此问题的建议或帮助将不胜感激。
【问题讨论】:
-
这能回答你的问题吗? OpenCV - Apply mask to a color image
-
@Bilal Noo,我尝试了这种方法,但我仍然得到灰色图像
-
“我尝试过这种方法......”,你能告诉我你是如何应用这种方法的吗?
标签: python python-3.x opencv image-processing computer-vision