In [1]:
import cv2
import numpy as np
In [2]:
src = cv2.imread('data/src/lena.jpg')
In [3]:
mask = np.zeros_like(src)
In [4]:
print(mask.shape)
In [5]:
print(mask.dtype)
In [6]:
cv2.rectangle(mask, (50, 50), (100, 200), (255, 255, 255), thickness=-1)
cv2.circle(mask, (200, 100), 50, (255, 255, 255), thickness=-1)
cv2.fillConvexPoly(mask, np.array([[330, 50], [300, 200], [360, 150]]), (255, 255, 255))
cv2.imwrite('data/dst/opencv_draw_mask.jpg', mask)
Out[6]:
In [7]:
mask_blur = cv2.GaussianBlur(mask, (51, 51), 0)
cv2.imwrite('data/dst/opencv_draw_mask_blur.jpg', mask_blur)
Out[7]:
In [8]:
dst = src * (mask_blur / 255)
In [9]:
cv2.imwrite('data/dst/opencv_draw_mask_blur_result.jpg', dst)
Out[9]: