python - 将 Alpha 通道添加到 RGB 图像
问题描述
如何将 alpha 通道添加到 png 图像?正是我有使用grabcut功能的背景,现在我想将它添加到png图像中。
之后,我想通过使用蒙版将 Alpha 通道设置为透明
img[np.all(img == [0, 0, 0, 255], axis=2)] = [0, 0, 0, 0]
解决方案
这是填充通道方法。
import cv2
# path to your own images
rgb = cv2.imread('images/5v63T_RGB.png')
alpha = cv2.imread('images/5v63T_Alpha.png')
rgba = cv2.cvtColor(rgb, cv2.COLOR_RGB2RGBA)
one_channel_alpha = cv2.cvtColor(alpha, cv2.COLOR_RGB2GRAY)
# fill alpha channel with image (needs to be same size)
rgba[:, :, 3] = one_channel_alpha
cv2.imshow("rgb", rgb)
cv2.imshow("alpha", one_channel_alpha)
cv2.imshow("rgba", rgba)
# you can't visualize alpha channel as transparency.
# the 32 bits PNG image, so let's save and use other view.
cv2.imwrite("images/result_rgba.png", rgba)
cv2.waitKey(0)
cv2.destroyAllWindows()
祝你好运。
推荐阅读
- javascript - 在引导模式对话框中使用 Javascript 选择文本在 IE11 中不起作用。但是,在 Chrome 中工作
- javascript - 如何制作具有独立变化变量的函数?
- spring-boot - Spring boot - 仅当 bean JavaMailSender 存在时自动配置
- r - 在 R 代码中传递 pfx 证书或在 R 中将 pfx 证书转换为 pem
- dhtmlx - DHHTMLX 6.0 Grid/Treegrid 未显示在 Vue 页面上
- velocity - 在 #if() #elseif() 语句中使用 #set() 指令
- r - 如何在闪亮的应用程序中将工作簿对象下载为 .xlsx 文件?
- python - 如何正确提取 Python 中 HTTP 响应中返回的 JSON 对象?
- powershell - 尝试从 powershell 运行 mkvmerge
- typescript - 找不到模块 logo.svg?inline - Typescript