gpt4 book ai didi

python - 使用 Open CV Python 将 alpha channel 添加到单色图像

转载 作者:太空狗 更新时间:2023-10-30 01:14:51 25 4
gpt4 key购买 nike

我一直在处理彩色图像 (RGB) 和带有 alpha channel 的彩色图像 (RGBA) 。从 RGBA 图像读取 alpha channel 非常简单,我什至可以拆分图像的 4 个 channel 。有什么方法可以将 alpha channel 添加到单色或灰度图像?另外,alpha channel 可以单独添加到 R、G、B channel 吗?

我用来读取透明图像并拆分 channel 的代码如下 -

import cv2
img = cv2.imread(image1_path,-1)

b = img[:,:,0]
g = img[:,:,1]
r = img[:,:,2]
a = img[:,:,3]

img_merge = cv2.merge((b,g,r,a))
cv2.imshow("img_merge",img_merge)

cv2.imshow("r channel",r)
cv2.imshow("g channel",g)
cv2.imshow("b channel",b)
cv2.imshow("a channel",a)
cv2.waitKey(0)
cv2.destroyAllWindows()

我使用的图片是-

RGBA Image

最佳答案

您不能创建 2 channel “亮度-alpha”图像,但是您可以通过复制灰度 channel 并向其添加 alpha channel ,仅使用灰度值将 1 channel 灰度图像转换为 BGRA。设 l 为灰度图像:

img_3gray = cv2.merge((l,l,l,a))

你也不能只将 alpha channel 应用于图像的一个 channel ,但你可以采用图像的单个 channel (例如,蓝色)并将其转换为灰度图像,就像我们之前所做的那样:

img_3blue = cv2.merge((b,b,b,a))

或者您可以只显示带 alpha 的蓝色 channel :

img_bzz = cv2.merge((b,z,z,a))

其中 z 全部为零。

关于python - 使用 Open CV Python 将 alpha channel 添加到单色图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27037987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com