Скажем, у меня есть изображение размером 3841 x 7195 пикселей. Я хотел бы сохранить содержимое фигуры на диске, в результате получится образ точного размера, который я укажу в пикселях.
Нет оси, нет названий. Только изображение. Я лично не забочусь о DPI, так как я хочу только указать размер изображения, который занимает экран на диске в пикселях.
Я прочитал другие темы, и все они, кажется, делают преобразования в дюймах, а затем определяют размеры фигуры в дюймах и настройка dpi в некотором роде. Я бы хотел избежать возможности потери точности, которая может возникнуть в результате преобразования пикселей в дюймы.
Я пробовал с:
w = 7195
h = 3841
fig = plt.figure(frameon=False)
fig.set_size_inches(w,h)
ax = plt.Axes(fig, [0., 0., 1., 1.])
ax.set_axis_off()
fig.add_axes(ax)
ax.imshow(im_np, aspect='normal')
fig.savefig(some_path, dpi=1)
не повезло (Python жалуется, что ширина и высота должны быть ниже 32768 (?))
Из всего, что я видел, matplotlib
требует, чтобы размер фигуры указывался в inches
и dpi
, но меня интересует только пиксели, которые фигура занимает на диске. Как я могу это сделать?
Чтобы уточнить: я ищу способ сделать это с помощью matplotlib
, а не с другими библиотеками для сохранения изображений.