J'ai un problème simple, mais je ne trouve pas de bonne solution.
Je veux prendre un tableau NumPy 2D qui représente une image en niveaux de gris, et le convertir en une image RGB PIL tout en appliquant certaines des cartes de couleurs de matplotlib.
Je peux obtenir un résultat PNG raisonnable en utilisant la commande pyplot.figure.figimage
commandement :
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')
Bien que je puisse adapter cela pour obtenir ce que je veux (probablement en utilisant StringIO pour obtenir l'image PIL), je me demande s'il n'y a pas un moyen plus simple de le faire, puisque cela semble être un problème très naturel de visualisation d'images. Disons quelque chose comme ceci :
colored_PIL_image = magic_function(array, cmap)