/ / Konvertovať celé číslo na obrázok PNG v Pythone - python, png

Celočíselné pole previesť obrázok PNG v Pythone - python, png

Snažil som sa previesť celočíselné pole hodnôt RGB na obrázok PNG. Ako môžem vygenerovať nasledujúci obrázok z nasledujúceho celočíselného poľa?

tu zadajte popis obrázku

"""This is a 3D integer array. Each 1D array inside this array is an RGBA value"""
"""Now how can I convert this RGB array to the PNG image shown above?"""
rgbArray = [
[[255,0,0], [255, 0, 0], [255, 0, 0], [255, 0, 0], [0,0,255], [0,0,255], [0,0,255], [0,0,255]],
[[255,0,0], [255, 0, 0], [255, 0, 0], [255, 0, 0], [0,0,255], [0,0,255], [0,0,255], [0,0,255]],
[[255,0,0], [255, 0, 0], [255, 0, 0], [255, 0, 0], [0,0,255], [0,0,255], [0,0,255], [0,0,255]],
[[255,0,0], [255, 0, 0], [255, 0, 0], [255, 0, 0], [0,0,255], [0,0,255], [0,0,255], [0,0,255]],
[[0,0,255], [0,0,255], [0,0,255], [0,0,255], [255, 0, 0], [255, 0, 0], [255, 0, 0], [255, 0, 0]],
[[0,0,255], [0,0,255], [0,0,255], [0,0,255], [255, 0, 0], [255, 0, 0], [255, 0, 0], [255, 0, 0]],
[[0,0,255], [0,0,255], [0,0,255], [0,0,255], [255, 0, 0], [255, 0, 0], [255, 0, 0], [255, 0, 0]],
[[0,0,255], [0,0,255], [0,0,255], [0,0,255], [255, 0, 0], [255, 0, 0], [255, 0, 0], [255, 0, 0]],
]

odpovede:

5 pre odpoveď č. 1

Môžete použiť Python Imaging Library previesť RGB dátové body na väčšinu štandardných formátov.

from PIL import Image

newimage = Image.new("RGB", (len(rgbArray[0]), len(rgbArray)))  # type, size
newimage.putdata([tuple(p) for row in rgbArray for p in row])
newimage.save("filename.png")  # takes type from filename extension

ktorá vyrába: Výstup PIL

Na .save() metóda môže tiež použiť argument formátu, PNG by tento výstup nastavil na PNG.

(Odporúčame nainštalovať Vankúš vidlice ako je viac aktívne udržiavané a pridáva správne balenie a podporu Python 3).


1 pre odpoveď č. 2

Na Python Imaging Library (PIL) je vhodný pre väčšinu zobrazovacích potrieb v Pythone. Obrazový modul obsahuje a fromstring funkcie a save funkcia, ktorá by mala presne robi \ t