我正在学习opencv python图像处理,所以我写了这段小代码,但我遇到了一个我不知道的错误';我不知道我错在哪里

我正在学习opencv python图像处理,所以我写了这段小代码,但我遇到了一个我不知道的错误';我不知道我错在哪里,python,opencv3.0,Python,Opencv3.0,这是我的代码给下面的图像添加,但它给我的错误 import numpy as np import cv2 coke = cv2.imread('coca cola.png') flower = cv2.imread('fall-autumn-red-season.jpg') img = cv2.addWeighted(coke,0.3,flower,0.7,0) cv2.imshow('image',img) cv2.waitKey(0) cv2.destroyAllWindows() 我

这是我的代码给下面的图像添加,但它给我的错误

import numpy as np
import cv2

coke = cv2.imread('coca cola.png')
flower = cv2.imread('fall-autumn-red-season.jpg')
img = cv2.addWeighted(coke,0.3,flower,0.7,0)

cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
我得到了这个错误

文件“D:/Python代码/image addition.py”,第6行,在 img=cv2.addWeighted(焦炭,0.3,花,0.7,0) cv2.error:OpenCV(3.4.3)C:\projects\OpenCV python\OpenCV\modules\core\src\arithm.cpp:659:error:(-209:输入参数的大小不匹配)操作既不是“array op array”(其中数组的大小和通道数相同),也不是“array op scalar”,也不是函数“cv::arithm\u op”中的“scalar op array”


如何删除错误

我无法测试,因为我没有您正在使用的图像,但请尝试此代码,并告诉我它现在是否工作。我在评论中解释了这个问题

import numpy as np
import cv2

coke = cv2.imread('coca cola.png')
coke1 = cv2.resize(coke,(500, 500), interpolation = cv2.INTER_AREA)
flower = cv2.imread('fall-autumn-red-season.jpg')
flower1 = cv2.resize(flower,(500, 500), interpolation = cv2.INTER_AREA)
img = cv2.addWeighted(coke1,0.3,flower1,0.7,0)

cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

据我所知,您正在尝试将add应用于两张不同大小的图片。在应用
addWeighted()
之前,请尝试将一幅图像的大小调整为第二幅图像的大小,或将两幅图像的大小调整为相同的大小。谢谢您的建议,先生,在您的建议之后,它对我起了作用。谢谢先生,它起了作用,但您犯了一个很小的错误,将flower2改为flower1,但我还是自己纠正了它。再次感谢