从稀疏数据创建PNG图像

时间:2015-11-14 20:50:54

标签: python image-processing png python-imaging-library sparse-matrix

我想在Python中存储PNG图像,其中RGB值由列表

给出
entries = [
    [1, 2, [255, 255, 0]],
    [1, 5, [255, 100, 0]],
    [2, 5, [0, 255, 110]],
    # ...
    ]

(行,列,RGB三元组),以及默认值[255, 255, 255]和有关图像总尺寸的信息。

使用PIL,我当然可以将entries转换为密集的m - by - n - by - 3矩阵,但这并不是&# 39;适应记忆;矩阵维数可以达到数万。

是否有其他方法可以使用上述信息创建PNG图像?

2 个答案:

答案 0 :(得分:5)

PurePNG library逐行写入文件,只需要行迭代器:

    <h1>Formulario AMP</h1>
<p>Ingresa registros</p>
<form target="_top" action-xhr="test" method="post" name="test">
  <input type="hidden" name="authenticity_token" value="<%= form_authenticity_token %>" />
  <input type="text" name="name" value="Ingresa un registro!">
  <input type="submit"/>
</form>

答案 1 :(得分:2)

你可以这样做:

from PIL import Image

sparse = [
    [1, 2, [255, 255, 0]],
    [1, 5, [255, 100, 0]],
    [2, 5, [0, 255, 110]],
    ]

im = Image.new("RGB", (20, 20), (255, 255, 255))
for item in sparse:
    x, y, color = item
    im.putpixel((x, y), tuple(color))

im.save("schlomer.png")
im.show()