【发布时间】:2019-11-25 23:13:21
【问题描述】:
我正在尝试使用像素的 alpha 值与黑色强度成正比的蒙版移除图像的背景。例如,给定以下输入图像和蒙版,结果包含“褪色”区域:
结果:
注意褪色区域。基本上我是在模仿Photoshop中的图层蒙版功能。
我可以使用二进制阈值将蒙版转换为 alpha,但我想知道如何使 alpha 成比例。二进制阈值代码如下:
mask = cv2.imread(mask_path, 0)
mask2 = np.where(mask<50, 0, 1).astype('uint8')
img = img * mask2[:, :, np.newaxis]
_, alpha = cv2.threshold(mask2, 0, 255, cv2.THRESH_BINARY)
png = np.dstack((img, alpha))
cv2.imwrite(dest_path, png)
我想这可能无关紧要,因为图层掩码可能不需要阈值。
【问题讨论】:
-
请澄清您所说的“使 alpha 成比例”是什么意思。当您正确二值化时,您可以摆脱褪色区域。你想发生什么。请举个例子。