用Alpha生成Trimp图的方法(python)

用Alpha生成Trimp图的方法(python)

文章目录:

  • 一、Alpha图生成Trump图(方法一)
  • 二、

一、Alpha图生成Trump图(方法一)

__Author__ = 'Shliang'
import numpy as np
import cv2 as cv


def generate_trimap(alpha):
    fg = np.array(np.equal(alpha, 255).astype(np.float32))
    # fg = cv.erode(fg, kernel, iterations=np.random.randint(1, 3))
    kernel = cv.getStructuringElement(cv.MORPH_ELLIPSE, (3, 3))
    unknown = np.array(np.not_equal(alpha, 0).astype(np.float32))
    unknown = cv.dilate(unknown, kernel, iterations=np.random.randint(1, 20))
    trimap = fg * 255 + (unknown - fg) * 128
    cv.imwrite("trimp.jpg", trimap)
    return trimap.astype(np.uint8)


if __name__ == "__main__":
    alpha = cv.imread("girl.jpg")
    generate_trimap(alpha)

效果一般
Alpha图:
用Alpha生成Trimp图的方法(python)_第1张图片


生成的Trimp图:
用Alpha生成Trimp图的方法(python)_第2张图片

二、

后续更新

在这里插入图片描述



在这里插入图片描述
♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠

你可能感兴趣的:(4—图像处理算法和数学理论,9—opencv-python,Pillow图像处理,Trimp)