Mam prosty problem, ale nie mogę znaleźć dobrego rozwiązania.
Chcę wziąć tablicę NumPy 2D, która reprezentuje obraz w skali szarości i przekonwertować ją na obraz RGB PIL, stosując niektóre z map kolorów matplotlib.
Mogę uzyskać rozsądny wynik w formacie PNG za pomocą pyplot.figure.figimage
polecenia:
dpi = 100.0
w, h = myarray.shape[1]/dpi, myarray.shape[0]/dpi
fig = plt.figure(figsize=(w,h), dpi=dpi)
fig.figimage(sub, cmap=cm.gist_earth)
plt.savefig('out.png')
Chociaż mógłbym to dostosować, aby uzyskać to, czego chcę (prawdopodobnie używając StringIO do uzyskania obrazu PIL), zastanawiam się, czy nie ma prostszego sposobu na zrobienie tego, ponieważ wydaje się to bardzo naturalny problem wizualizacji obrazu. Powiedzmy coś takiego:
colored_PIL_image = magic_function(array, cmap)