Python:将sRGB颜色配置文件和alpha通道应用于图像

时间:2018-04-25 03:51:24

标签: python opencv png alpha color-profile

我一直无法尝试使用sRGB和Alpha通道保存png图像。我首先裁剪图像,然后像这样保存:

from PIL import Image
import cv2

inputPath = 'picture.png'
img = cv2.imread(inputPath)

crop_img = img[bounds[3]:bounds[2], bounds[1]:bounds[0]]
pth = name + ".png"
crop_img.save(pth)

然而,这会创建一个这样的文件:

我希望文件是这样的:

如何在python中获得此结果?

P.S。原始图像确实具有Alpha通道和sRGB颜色配置文件。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:3)

您可以按如下方式阅读图像。它会加载你的图像,包括alpha通道。

img = cv2.imread(inputPath,-1)

<强>更新

以下代码与documentation中的cv2.IMREAD_UNCHANGED=-1以来给出的答案相同。虽然上面的片段解决了这个问题,但使用它并不是一个好的编程习惯,因为它没有给出真正-1的内容。但是下面的代码片段给出了关于代码行为的明确想法。

img = cv2.imread(input,cv2.IMREAD_UNCHANGED)