我想将 24 位 PNG 图像转换为 32 位,以便它可以显示在 LED 矩阵上。这是我使用的代码,但它将 24 位转换为 48 位
import cv2
import numpy as np
i = cv2.imread("bbb.png")
img = np.array(i, dtype = np.uint16)
img *= 256
cv2.imwrite('test.png', img)
最佳答案
我看了christmas.png
您链接到的代码中的图像,它似乎是带有调色板和 8 位 Alpha channel 的 624x8 像素图像。
假设示例图像有效,您可以通过获取 PNG 图像并添加一个完全不透明的 alpha channel 来制作具有相同特征的图像,如下所示:
#!/usr/local/bin/python3
from PIL import Image
# Load the image and convert to 32-bit RGBA
im = Image.open("image.png").convert('RGBA')
# Save result
im.save("result.png")
我生成了一个渐变图像并应用了该处理并得到了这个,所以也许你可以试试:
关于Python - 如何使用 Opencv 和 PIL 将 24 位 PNG 图像转换为 32 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52295414/