我对RGBA和ARGB颜色模型有很多疑问。
RGBA和ARGB色彩空间有什么区别。这是关于Alpha,红色,绿色和蓝色通道的安排吗?
就我而言,我想阅读jpg扩展名的图片。我可以从图像中提取alpha通道吗?
使用jpg扩展名的图像。如何在python中将图像转换为RGBA色彩空间?以下是我的初始代码:
frame = cv2.imread("image.jpg", -1)
print( frame[0,0])
上面的print语句仅显示RGB值。我将如何包含alpha通道?
答案 0 :(得分:3)
RGBA和ARGB色彩空间有什么区别。这是关于Alpha,红色,绿色和蓝色通道的安排吗?
是的,it's all about the arrangement。
在我的情况下,我想阅读jpg扩展名的图像。我可以从图像中提取alpha通道吗?
没有。 JPG doesn't support transparency。您需要其他格式(如PNG)来存储Alpha通道。
使用带jpg扩展名的图像。如何在python中将图像转换为RGBA色彩空间?
您正在使用IMREAD_UNCHANGED
(-1
)加载图片,"If set, return the loaded image as is (with alpha channel, otherwise it gets cropped)."
如果您的图片有Alpha通道(例如PNG),那么您就完成了。否则,就像你的情况一样,将图像读作BGR(默认为IMREAD_COLOR
),然后转换为BGRA:
frame = cv2.imread("image.jpg")
bgra = cv.cvtColor(frame, cv.COLOR_BGR2BGRA)
您可以使用以下方式检查图像的the number of channels:
height, width, channels = img.shape
BGRA的 channels
必须为4。