欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一文教會你使用Python批量縮放圖片

 更新時間:2022年02月20日 11:55:05   作者:肥學(xué)  
最近處理一些規(guī)格不一的照片,需要修改成指定尺寸便于打印,下面這篇文章主要給大家介紹了關(guān)于使用Python批量縮放圖片的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

導(dǎo)讀

為了解決圖片被改變大小后,比例保持不變(這樣就不會變形了)

圖片需要壓縮,避免填圖后的word文件太大通過Image模塊中的resize函數(shù),就能給解決如上問題。我們還是先按“修改時間”順序獲取圖片文件夾下的所有圖片的完整路徑

實(shí)際演示階段

我們需要做的事情就是將圖一變?yōu)閳D二 圖一:

圖二:

進(jìn)行等比例縮小。

#將圖片按修改時間排序(這樣才能與圖片的描述一致),將路徑存入列表,以便后面逐個插入圖片時調(diào)用
import  os
path = "pictures"
list_p = [path+"\\"+i for i in os.listdir(path)] #獲取圖片的文件名,并拼接完整路徑
list_p.sort(key=lambda path: os.path.getmtime(path)) #將列表中的文件按其修改時間排序,os.path.getmtime() 函數(shù)是獲取文件最后修改時間
list_p里面存放的就是該文件夾下的所有圖片路徑
'pictures\\z.jpg',
 'pictures\\x.jpg',
 'pictures\\w.jpg',
 'pictures\\y.jpg',
 'pictures\\orange-flowers-2471898.jpg',
 'pictures\\lime-631389.jpg',
 'pictures\\v.jpg',

然后導(dǎo)入Image模塊。for循環(huán)遍歷所有圖片的路徑,然后讀取圖片尺寸,x對應(yīng)寬度,y對應(yīng)高度。這里的單位是像素。壓縮圖片的關(guān)鍵參數(shù)是壓縮后的標(biāo)準(zhǔn)寬度x_s,我們Word模板中放置圖片的單元格寬度為6.25厘米。壓縮后的圖片分辨率是96,像素為230的時候,對應(yīng)長度是6.1厘米。以上換算可參考鏈接www.gaitubao.com/tools/pixel… 。但是按230像素的寬度壓縮后,自動填充到Word文檔中后,圖片寬度變成了8厘米,已經(jīng)超過單元格的寬度了。通過調(diào)試,最終將標(biāo)準(zhǔn)寬度設(shè)定為165像素,填入word中后,寬度是5.82厘米,比較適合單元格寬度。這個差異可能是換算的不精確導(dǎo)致。確定好標(biāo)準(zhǔn)寬度x_s后,高度y_s按照標(biāo)準(zhǔn)寬度乘上原始高寬比來確定,這樣就是保持比例壓縮,不會導(dǎo)致圖片變形。壓縮resize后,再保存到新的文件夾。

#按比例縮小圖片尺寸
from PIL import Image
for infile in list_p:
    im = Image.open(infile)
    (x,y) = im.size #讀取圖片尺寸(像素)
    x_s = 165 #定義縮小后的標(biāo)準(zhǔn)寬度 
    y_s = int(y * x_s / x) #基于標(biāo)準(zhǔn)寬度計算縮小后的高度
    out = im.resize((x_s,y_s),Image.ANTIALIAS) #改變尺寸,保持圖片高品質(zhì)
    out.save('pictures_new\\{}'.format(infile.split("\\")[-1]))

就這樣簡單的幾步我們就得到了想要的結(jié)果把圖片壓縮成了:

壓縮前:

結(jié)果:

詳細(xì)介紹該庫

上面的介紹是不是很簡單不過它只是PIL的一個功能下面我們詳細(xì)介紹一下。

Python Imaging Library ( PIL ) 給 Python 增加了圖像處理能力。

這個庫提供了廣泛的文件格式支持,高效的內(nèi)部展現(xiàn),以及十分強(qiáng)大的圖像處理能力。

讓我們看看這個庫的幾種可能用法:

1· 圖像存儲

PIL 設(shè)計用于圖像歸檔和圖像批量處理,你可以使用它建立縮略圖,轉(zhuǎn)換格式,打印圖片等等?,F(xiàn)在的版本可以驗證和讀取大量的圖片格式。寫入有意設(shè)計為只能寫入常用的文件格式。

2·圖像顯示 現(xiàn)在的版本包含了 Tk PhotoImage 和 BitmapImage 接口, 以及 Windows DIB interface,這有助于在 Windows 下使用。為了方便測試,還提供了 show() 方法,可以保存圖像到磁盤并顯示。

3·圖像處理 這個庫包含了基本的圖像處理功能,包括點(diǎn)操作,使用內(nèi)置卷積內(nèi)核過濾,色彩空間轉(zhuǎn)換。這個庫還支持更改圖像大小、旋轉(zhuǎn)、自由變換。有一個直方圖方法允許你統(tǒng)計圖像,這可以用于對比度增強(qiáng)和全局統(tǒng)計分析。

小面我貼一下文檔的一些入門介紹:

貼文檔做翻譯的事情我就不做了大家可以自己去看看。

文檔鏈接:傳送門

總結(jié)

到此這篇關(guān)于使用Python批量縮放圖片的文章就介紹到這了,更多相關(guān)Python批量縮放圖片內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python如何截圖保存的三種方法(小結(jié))

    Python如何截圖保存的三種方法(小結(jié))

    這篇文章主要介紹了Python如何截圖保存的三種方法(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • python二維碼操作:對QRCode和MyQR入門詳解

    python二維碼操作:對QRCode和MyQR入門詳解

    今天小編就為大家分享一篇python二維碼操作:對QRCode和MyQR入門詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python虛擬機(jī)字節(jié)碼教程之控制流實(shí)現(xiàn)詳解

    Python虛擬機(jī)字節(jié)碼教程之控制流實(shí)現(xiàn)詳解

    在本篇文章當(dāng)中主要給大家分析 python 當(dāng)中與控制流有關(guān)的字節(jié)碼,通過對這部分字節(jié)碼的了解,我們可以更加深入了解 python 字節(jié)碼的執(zhí)行過程和控制流實(shí)現(xiàn)原理
    2023-04-04
  • python ImageDraw類實(shí)現(xiàn)幾何圖形的繪制與文字的繪制

    python ImageDraw類實(shí)現(xiàn)幾何圖形的繪制與文字的繪制

    這篇文章主要介紹了python ImageDraw類實(shí)現(xiàn)幾何圖形的繪制與文字的繪制,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Python中輸出ASCII大文字、藝術(shù)字、字符字小技巧

    Python中輸出ASCII大文字、藝術(shù)字、字符字小技巧

    這篇文章主要介紹了Python中輸出ASCII大文字、藝術(shù)字、字符字小技巧,本文首先給出了ASCII大文字、藝術(shù)字、字符字的圖片效果,然后給出了Python中的實(shí)現(xiàn)方法,需要的朋友可以參考下
    2015-04-04
  • Python類的高級函數(shù)詳解

    Python類的高級函數(shù)詳解

    這篇文章主要介紹了Python類的高級函數(shù),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • pycharm 如何查看某一函數(shù)源碼的快捷鍵

    pycharm 如何查看某一函數(shù)源碼的快捷鍵

    這篇文章主要介紹了在pycharm中實(shí)現(xiàn)查看某一函數(shù)源碼的快捷鍵,具有很好的參考價值,希望能給大家做個參考,如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python對批量WAV音頻進(jìn)行等長分割的方法實(shí)現(xiàn)

    python對批量WAV音頻進(jìn)行等長分割的方法實(shí)現(xiàn)

    這篇文章主要介紹了python對批量WAV音頻進(jìn)行等長分割的方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Python利用keyboard模塊實(shí)現(xiàn)鍵盤記錄操作

    Python利用keyboard模塊實(shí)現(xiàn)鍵盤記錄操作

    模擬鍵盤操作執(zhí)行自動化任務(wù),我們常用的有pyautowin等自動化操作模塊。今天介紹的這個模塊叫做keyboard,它是純Python原生開發(fā),編譯時完全不需要依賴C語言模塊。一行命令就能完成安裝,非常方便,需要的可以了解一下
    2022-10-10
  • 調(diào)用其他python腳本文件里面的類和方法過程解析

    調(diào)用其他python腳本文件里面的類和方法過程解析

    這篇文章主要介紹了調(diào)用其他python腳本文件里面的類和方法過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11

最新評論