In [1]:
import numpy as np
from PIL import Image

In [2]:
src1 = np.array(Image.open('data/src/lena.jpg'))
src2 = np.array(Image.open('data/src/rocket.jpg').resize(src1.shape[1::-1], Image.BILINEAR))

In [3]:
print(src1.dtype)


uint8

In [4]:
dst = src1 * 0.5 + src2 * 0.5

In [5]:
print(dst.dtype)


float64

In [6]:
Image.fromarray(dst.astype(np.uint8)).save('data/dst/numpy_image_alpha_blend.jpg')


In [7]:
dst = src1 * 0.5 + src2 * 0.2 + (96, 128, 160)

In [8]:
print(dst.max())


311.1

In [9]:
dst = dst.clip(0, 255)

In [10]:
print(dst.max())


255.0

In [11]:
Image.fromarray(dst.astype(np.uint8)).save('data/dst/numpy_image_alpha_blend_gamma.jpg')