第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

以像素為單位指定并保存大小正確的圖形

以像素為單位指定并保存大小正確的圖形

寶慕林4294392 2019-11-25 11:21:35
假設(shè)我的圖像尺寸為3841 x 7195像素。我想將圖形的內(nèi)容保存到磁盤上,以得到我指定的確切大?。ㄒ韵袼貫閱挝唬┑膱D像。沒有軸,沒有標(biāo)題。只是圖像。我個人并不關(guān)心DPI,因為我只想指定圖像在磁盤中以像素為單位在屏幕上所占的大小。我讀過其他 線程,它們似乎都轉(zhuǎn)換為英寸,然后以英寸為單位指定圖形尺寸并以某種方式調(diào)整dpi。我想避免處理像素到英寸轉(zhuǎn)換可能導(dǎo)致的精度損失。我嘗試過:w = 7195h = 3841fig = 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,但是我只對圖形在磁盤中占據(jù)的像素感興趣。我怎樣才能做到這一點?需要說明的是:我正在尋找一種使用matplotlib而不是其他圖像保存庫的方法。
查看完整描述

3 回答

?
猛跑小豬

TA貢獻(xiàn)1858條經(jīng)驗 獲得超8個贊

根據(jù)tiago接受的響應(yīng),這是一個小型通用函數(shù),該函數(shù)將numpy數(shù)組導(dǎo)出到與該數(shù)組具有相同分辨率的圖像:


import matplotlib.pyplot as plt

import numpy as np


def export_figure_matplotlib(arr, f_name, dpi=200, resize_fact=1, plt_show=False):

    """

    Export array as figure in original resolution

    :param arr: array of image to save in original resolution

    :param f_name: name of file where to save figure

    :param resize_fact: resize facter wrt shape of arr, in (0, np.infty)

    :param dpi: dpi of your screen

    :param plt_show: show plot or not

    """

    fig = plt.figure(frameon=False)

    fig.set_size_inches(arr.shape[1]/dpi, arr.shape[0]/dpi)

    ax = plt.Axes(fig, [0., 0., 1., 1.])

    ax.set_axis_off()

    fig.add_axes(ax)

    ax.imshow(arr)

    plt.savefig(f_name, dpi=(dpi * resize_fact))

    if plt_show:

        plt.show()

    else:

        plt.close()

如tiago上次答復(fù)中所述,首先需要找到屏幕DPI,例如,可以在此處完成:http : //dpi.lv


我resize_fact在函數(shù)中添加了一個附加參數(shù),例如,您可以將圖像導(dǎo)出到原始分辨率的50%(0.5)。


查看完整回答
反對 回復(fù) 2019-11-25
  • 3 回答
  • 0 關(guān)注
  • 1384 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號