Tôi có một vấn đề đơn giản nhưng không thể tìm thấy một giải pháp tốt cho nó.Làm thế nào để chuyển đổi mảng Numpy sang hình ảnh PIL áp dụng matplotlib colormap
Tôi muốn lấy một mảng 2D dạng khối đại diện cho hình ảnh thang độ xám và chuyển đổi hình ảnh thành hình ảnh RGB PIL trong khi áp dụng một số bản đồ màu matplotlib.
tôi có thể có được một sản lượng PNG hợp lý bằng công pyplot.figure.figimage
lệnh:
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')
Mặc dù tôi có thể thích ứng này để có được những gì tôi muốn (có thể sử dụng StringIO làm có được hình ảnh PIL), tôi tự hỏi nếu có không phải là một cách đơn giản hơn để làm điều đó, vì nó có vẻ là một vấn đề rất tự nhiên về trực quan hóa hình ảnh. Giả sử như sau:
colored_PIL_image = magic_function(array, cmap)
Cảm ơn bạn đã đọc!
Đối với mã hoạt động đầy đủ, bạn có thể tham khảo: [Có bản đồ màu nào tốt để chuyển đổi hình ảnh có tỷ lệ màu xám thành hình ảnh đầy màu sắc bằng cách sử dụng PIL của python không?] (Http://stackoverflow.com/questions/43457308/is-there-any- color-color-map-to-convert-gray-scale-image-to-colorful-ones-using-p) – Adam