【发布时间】:2015-08-28 13:52:06
【问题描述】:
我需要将 2 个 numpy.ndarrays 作为参数并逐个像素地遍历它们中的每一个,将 2 个值相加并除以 2。
本质上是创建两者的混合图像并将其作为 numpy.ndarray 返回
这是我想出的,但确实可以使用一些建议。
def blendImages(image1, image2):
it1 = np.nditer(image1)
it2 = np.nditer(image2)
for (x) in it1:
for (y) in it2:
newImage = (x + y) / 2
return newImage
【问题讨论】:
-
因为你包含了OpenCV标签,你可以使用
dst = cv2.addWeighted(img1,0.5,img2,0.5,0) -
关于 numpy 要记住的一点是,它会为您完成迭代(并且比原生 Python 快得多)。
-
谢谢 Miki,效果很好!我还在纠结这些功能,谢谢乔恩。
-
@yodish 很高兴它成功了。然后作为答案发布