Getting an RGBA array from a matplotlib image
我用
您可以使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 2, 1000) X, Y = np.meshgrid(x, x) data = np.sin((X-2)**3 + Y**4) im = plt.imshow(data) x = im.make_image() h, w, d = x.as_rgba_str() n = np.fromstring(d, dtype=np.uint8).reshape(h, w, 4) plt.figure() plt.imshow(n[:,:,0], cmap="gray", origin='lower') plt.show() |
原始图像:。
来自rgba数据的R通道(请注意,所有蓝色部分都是黑色的,因为其中没有红色部分):氧化镁