opencv-python addWeighted() 错误 - 输入参数的大小不匹配
opencv-python addWeighted() error - Sizes of input arguments do not match
我有一个简单的代码来尝试 opencv 图像与 addWeighted()
的混合
功能。它向我显示
的错误
Sizes of input arguments do not match
以下是我的代码
import cv2
import numpy as np
img1 = cv2.imread('/home/jianyepa/Downloads/gtr1.jpg')
img2 = cv2.imread('/home/jianyepa/Downloads/r1.png')
dst = cv2.addWeighted(img1,0.7,img2,0.3,0)
cv2.imshow('dst', dst)
cv2.waitkey(0)
cv2.destroyAllWindows
我已经用 img.shape
检查了两个图像的大小和通道,两个图像都显示 (720, 1280, 3)。我不知道为什么会出现此错误。
请协助。谢谢。
可能出现的问题列表:
- 图片的大小和通道数不匹配
- 或者两张图片的文件类型可能不同。
你的情况,不是第一次。两张图片大小相同,通道数也相同。
但问题在于不同的图像文件类型。 .png
文件有另一个通道称为 alpha 通道,它在 .jpg
文件中不存在。这会导致你的问题。
我有一个简单的代码来尝试 opencv 图像与 addWeighted()
的混合
功能。它向我显示
Sizes of input arguments do not match
以下是我的代码
import cv2
import numpy as np
img1 = cv2.imread('/home/jianyepa/Downloads/gtr1.jpg')
img2 = cv2.imread('/home/jianyepa/Downloads/r1.png')
dst = cv2.addWeighted(img1,0.7,img2,0.3,0)
cv2.imshow('dst', dst)
cv2.waitkey(0)
cv2.destroyAllWindows
我已经用 img.shape
检查了两个图像的大小和通道,两个图像都显示 (720, 1280, 3)。我不知道为什么会出现此错误。
请协助。谢谢。
可能出现的问题列表:
- 图片的大小和通道数不匹配
- 或者两张图片的文件类型可能不同。
你的情况,不是第一次。两张图片大小相同,通道数也相同。
但问题在于不同的图像文件类型。 .png
文件有另一个通道称为 alpha 通道,它在 .jpg
文件中不存在。这会导致你的问题。