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)。我不知道为什么会出现此错误。

请协助。谢谢。

可能出现的问题列表:

  1. 图片的大小和通道数不匹配
  2. 或者两张图片的文件类型可能不同。

你的情况,不是第一次。两张图片大小相同,通道数也相同。

但问题在于不同的图像文件类型。 .png 文件有另一个通道称为 alpha 通道,它在 .jpg 文件中不存在。这会导致你的问题。