123456789101112131415161718192021222324252627282930 |
- import PF2.VectorMask
- import cv2
- import numpy
- class Mask:
- def __init__(self, image, width, height):
- self.image = image
- self.mask = PF2.VectorMask.VectorMask()
- self.mask.set_dimentions(width, height)
- def get_mask_preview(self, image):
- mask = self.mask.get_mask_map()
- if(type(mask) == numpy.ndarray):
- w, h = image.shape[:2]
- print(w, h)
- # Bits per pixel
- bpp = float(str(image.dtype).replace("uint", "").replace("float", ""))
- # Pixel value range
- np = float(2 ** bpp - 1)
- mask = cv2.resize(mask, (h, w), interpolation=cv2.INTER_AREA)
- inverted_map = (mask * -1) + 1
- image[0:, 0:, 2] = (np * mask) + (image[0:, 0:, 2] * inverted_map)
- return image
|