此刻,我的代码将彩色图像转换为灰度图像。问题在于,它会使透明像素变成白色或黑色。
这是我到目前为止所拥有的:
import cv2
img = cv2.imread("watch.png",cv2.IMREAD_GRAYSCALE)
cv2.imwrite("gray_watch.png",img)
以下是图片供参考: Watch.png
答案 0 :(得分:1)
我发现仅使用PIL即可实现:
from PIL import Image
image_file = Image.open("convert_image.png") # opens image
image_file = image_file.convert('LA') # converts to grayscale w/ alpha
image_file.save('output_image.png') # saves image result into new file
这也保留了图像的透明度。 “ LA”是一种彩色模式。您可以在这里找到其他模式:https://pillow.readthedocs.io/en/3.1.x/handbook/concepts.html#concept-modes