Określanie i zapisywanie figury o dokładnym rozmiarze w pikselach

Powiedzmy, że mam obraz o rozmiarze 3841 x 7195 pikseli. Chciałbym zapisać zawartość rysunku na dysku, w wyniku czego powstał obrazdokładny rozmiar Określam w pikselach.

Bez osi, bez tytułów. Tylko obraz. Osobiście nie dbam o DPI, ponieważ chcę tylko określić rozmiar obrazu na ekranie dyskuw pikselach.

przeczytałeminny wątkii wszystkie wydają się wykonywać konwersje na cale, a następnie określać wymiary figury w calach i w pewien sposób dostosowywać dpi. Chciałbym uniknąć radzenia sobie z potencjalną utratą dokładności, która mogłaby wynikać z konwersji pikseli na cale.

Próbowałem z:

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)

bez powodzenia (Python narzeka, że ​​szerokość i wysokość muszą być poniżej 32768 (?))

Ze wszystkiego, co widziałem,matplotlib wymaga określenia wielkości rysunku winches idpi, ale interesuje mnie tylkopiksele postać zajmuje dysk. Jak mogę to zrobić?

Aby wyjaśnić: szukam sposobu, aby to zrobićmatplotlib, a nie z innymi bibliotekami oszczędzającymi obraz.

questionAnswers(3)

yourAnswerToTheQuestion