import cv2
import numpy as np
import matplotlib.pyplot as plt


# alpha blend
def alpha_blend(img1, img2, alpha):
	# blend
	out = img * alpha + img2 * (1 - alpha)
	out = out.astype(np.uint8)
	return out

# Read image
img = cv2.imread("imori.jpg").astype(np.float32)

# Read blend target image
img2 = cv2.imread("thorino.jpg").astype(np.float32)

out = alpha_blend(img, img2, alpha=0.6)
    
# Save result
cv2.imwrite("out.jpg", out)
cv2.imshow("result", out)
cv2.waitKey(0)
cv2.destroyAllWindows()
pythonを用いて、アルファブレンドにより、imori.jpgとthorino.jpgを6:4の割合で画像を合成せよ。

アルファブレンドとは透明度（アルファ値）を設定することにより画像の透明度を設定する方法である。
OpenCVでは透明度のパラメータはないが、PILなどのライブラリでは存在する。
ここではその透明度を手動で設定する。

二つの画像を重ね合わせたい時などに、この手法は有効である。

img1とimg2を1:1の割合で重ね合わせたい時は、次式となる。
alphaの値を変えることで重ねる時の重みを変えることができる。

alpha = 0.5
out = img1 * alpha + img2 * (1 - alpha)