Python - 如何使用 Open-cv 或 PIL 将 24 位 PNG 图像转换为 32 位

我想将 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)


叮当猫咪
浏览 430回答 2
2回答

DIEA

我查看了christmas.png您链接到的代码中的图像,它似乎是一个带有调色板和 8 位 alpha 通道的 624x8 像素图像。假设示例图像有效,您可以通过获取 PNG 图像并添加完全不透明的 alpha 通道来制作具有相同特征的图像,如下所示:#!/usr/local/bin/python3from PIL import Image# Load the image and convert to 32-bit RGBAim = Image.open("image.png").convert('RGBA')# Save resultim.save("result.png")我生成了一个渐变图像并应用了该处理并得到了这个,所以也许你可以尝试一下:
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python