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.