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]:
mask1 = np.array(Image.open('data/src/gradation_h.jpg').resize(src1.shape[1::-1], Image.BILINEAR))

In [4]:
mask1 = mask1 / 255

In [5]:
dst = src1 * mask1 + src2 * (1 - mask1)

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


In [7]:
mask2 = np.array(Image.open('data/src/horse_r.png').resize(src1.shape[1::-1], Image.BILINEAR))

In [8]:
mask2 = mask2 / 255

In [9]:
dst = (src1 * mask1 + src2 * (1 - mask1)) * mask2

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