मुझे एक साधारण समस्या है लेकिन इसका कोई अच्छा समाधान नहीं मिल रहा है।Numpy array को PIL छवि में बदलने के लिए कैसे करें matplotlib colormap
मैं एक numpy 2 डी सरणी लेना चाहता हूं जो एक ग्रेस्केल छवि का प्रतिनिधित्व करता है, और इसे matplotlib colormaps में से कुछ लागू करते समय इसे एक आरजीबी पीआईएल छवि में परिवर्तित करना चाहता है।
मैं pyplot.figure.figimage
कमांड का उपयोग करके एक उचित पीएनजी उत्पादन प्राप्त कर सकते हैं:
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')
हालांकि मैं इस अनुकूलन मैं क्या चाहते हैं सकता है (शायद StringIO का उपयोग कर जनहित याचिका छवि प्राप्त करते हैं), मुझे आश्चर्य है कि वहाँ है अगर ऐसा करने का एक आसान तरीका नहीं है, क्योंकि यह छवि दृश्यता की एक बहुत ही प्राकृतिक समस्या प्रतीत होता है। मान लें, इस तरह कुछ:
colored_PIL_image = magic_function(array, cmap)
पढ़ने के लिए धन्यवाद!
पूरी तरह से काम करने वाले कोड के लिए, आप रेफरी कर सकते हैं: [क्या पाइथन की पीआईएल का उपयोग करके ग्रे-स्केल छवि को रंगीन लोगों में बदलने के लिए कोई अच्छा रंग नक्शा है?] (Http://stackoverflow.com/questions/43457308/is-there-any- अच्छा-रंग-नक्शा-टू-कन्वर्ट-ग्रे-स्केल-इमेज-टू-रंगीन-एक-उपयोग-पी) – Adam