我在做一个图像处理项目。我有2个RGB图像,我想通过重叠2个输入图像来创建一个新图像
这是我的2个输入图像:
我使用cv2“添加”方法来实现这一点。但结果并不是希望的结果
结果如下:
我不想在我的红色条纹上有透明的图案。我想要一些不透明的东西,它覆盖了图片1上的裂缝
这是我的代码:
img1 = cv2.imread(r"C:\Users\francois.bock\Desktop\crack.jpg")
img1 = cv2.cvtColor(img1, cv2.COLOR_BGR2RGB)
img2 = cv2.imread(r"C:\Users\francois.bock\Desktop\line.png")
img2 = cv2.cvtColor(img2, cv2.COLOR_BGR2RGB)
# Adding two images
add = cv2.add(img1, img2)
#Display the image
img = PImage.fromarray(add)
img.show()
我还天真地尝试添加如下两幅图像:
add = img1 + img2
add = add.astype(np.uint8)
但结果更为奇怪
我还使用了cv2“addWeighted”方法,但它也提供了一个透明条带
所以我的问题是,有没有一个简单的方法来添加两个没有透明度的图像?先谢谢你
您可以使用直线Numpy进行此操作:
如果您的图像中有蓝色和绿色或任何其他颜色线,您可以使用以下方法:
相关问题 更多 >
编程相关推荐