以下是一个使用Python和OpenCV库实现“保留原始颜色的多图混合”的示例代码:
import cv2
import numpy as np
# 加载图像
image1 = cv2.imread('image1.jpg')
image2 = cv2.imread('image2.jpg')
# 将图像调整为相同的大小
image1 = cv2.resize(image1, (400, 400))
image2 = cv2.resize(image2, (400, 400))
# 将图像转换为浮点数格式
image1 = image1.astype(float)
image2 = image2.astype(float)
# 计算每个像素的混合值
alpha = 0.5
blended = cv2.addWeighted(image1, alpha, image2, 1-alpha, 0)
# 将图像的整数值调整回0-255范围
blended = np.clip(blended, 0, 255)
blended = blended.astype(np.uint8)
# 显示结果
cv2.imshow('Blended Image', blended)
cv2.waitKey(0)
cv2.destroyAllWindows()
在这个示例中,我们首先加载了两个图像image1.jpg
和image2.jpg
。然后,我们将两个图像调整为相同的大小,以便能够进行混合。接下来,我们将图像转换为浮点数格式,然后使用cv2.addWeighted()
函数进行混合,其中alpha
参数控制两个图像的混合程度。最后,我们将混合后的图像的像素值调整回0-255范围,并将其显示出来。
请注意,这只是一个示例,你可以根据自己的需求进行调整和修改。