с помощью matplotlib, изображение может быть сохранено с определенным размером
, вот пример
diamond = np.array([[ 0, 0, 0, 0, 255, 0, 0, 0, 0],
[ 0, 0, 0, 255, 0, 255, 0, 0, 0],
[ 0, 0, 255, 0, 0, 0, 255, 0, 0],
[ 0, 255, 0, 0, 0, 0, 0, 255, 0],
[255, 0, 0, 0, 0, 0, 0, 0, 255],
[ 0, 255, 0, 0, 0, 0, 0, 255, 0],
[ 0, 0, 255, 0, 0, 0, 255, 0, 0],
[ 0, 0, 0, 255, 0, 255, 0, 0, 0],
[ 0, 0, 0, 0, 255, 0, 0, 0, 0]], dtype=uint8)
с этим массивом, мы можем сохранить изображение на диск
size = 36
my_dpi = mpl.rcParams['figure.dpi']
plt.subplots(figsize=(size/my_dpi, size/my_dpi))
plt.axis('off')
plt.imshow(diamond, cmap=mpl.cm.binary)
plt.savefig('diamond.png')
файл 'diamond.png' находится под разрешением 36 * 36.
аналогичный код не работает с подушкой
size = 36
my_dpi = mpl.rcParams['figure.dpi']
plt.subplots(figsize=(size/my_dpi, size/my_dpi))
plt.axis('off')
img = Image.fromarray(diamond, 'L')
img.save('diamond.jpg')
plt.imshow(img)
разрешение 'diamond.jpg' составляет9 * 9.
есть ли способ, чтобы подушка сохранила изображение под разрешением 36 * 36?