如何使用PyPNG和2d Python列表制作2d图像
因此,在阅读自述文件时,我希望看到以下代码:如何使用PyPNG和2d Python列表制作2d图像,python,pypng,Python,Pypng,因此,在阅读自述文件时,我希望看到以下代码: import png R = 10 G = 255 B = 0 color = [[ (R,G,B), (R,G,B), (R,G,B) ], [ (R,G,B), (R,G,B), (R,G,B) ]] png.from_array(color, 'RGB').save("small_smiley.png") 输出2x3图像 但是,我得到了断言错误(没有提供描述) 我做错什么了吗?有没有一种方法可以将2D python列表转换
import png
R = 10
G = 255
B = 0
color = [[ (R,G,B), (R,G,B), (R,G,B) ],
[ (R,G,B), (R,G,B), (R,G,B) ]]
png.from_array(color, 'RGB').save("small_smiley.png")
输出2x3图像
但是,我得到了断言错误(没有提供描述)
我做错什么了吗?有没有一种方法可以将2D python列表转换为比使用PyPNG更容易的图像文件
谢谢PyPNG的
from_array
不支持三维矩阵
从_array的源注释中:
“三维”一词的使用是为了营销目的
只有它实际上不起作用。请容忍我们。同时
享用免费小吃(如有要求),请使用
二维数组
相反,考虑NUMPY/PIL/OpenCV方法。
编辑:以下代码可以使用numpy和枕头工作:
from PIL import Image # Pillow
import numpy as np # numpy
R = 10
G = 255
B = 0
color = [[ (R,G,B), (R,G,B), (R,G,B) ],
[ (R,G,B), (R,G,B), (R,G,B) ]]
img = Image.fromarray(np.asarray(color, dtype=np.uint8))
img.save('small_smiley.png')
有了PyPNG,你的代码现在就可以工作了 从使用纯python列表到PNG没有出路吗?@dcheng有,在我的回答中链接的另一个问题上有一个替代列表。我还将编辑此答案,向您展示如何使用numpy和pillow创建PNG文件。