引言:
在當今社群媒體和數位文化的時代,圖片已經成為人們日常生活中不可或缺的一部分。然而,有時我們需要對大量的圖片進行一些相同的操作,例如調整大小、裁剪、旋轉等。手動處理這些圖片是非常耗時且乏味的。因此,利用Python對圖片進行批次處理將大大提升效率。本文將介紹如何使用Python的Pillow庫對圖片進行批次處理,並提供對應的程式碼範例。
第一步:安裝Pillow函式庫
在開始之前,我們需要先安裝Pillow函式庫。在命令列中輸入以下命令即可完成安裝:
pip install pillow
第二步:導入所需的庫和模組
在編寫Python程式碼之前,我們需要導入所需的庫和模組。在程式碼中新增以下行:
from PIL import Image import os
第三步:設定輸入和輸出資料夾路徑
在進行批次處理之前,我們需要設定輸入和輸出資料夾的路徑。以下範例假設我們的輸入資料夾路徑為'input_folder',輸出資料夾路徑為'output_folder'。你可以根據自己的需求修改這些路徑。
input_folder = 'path/to/input_folder' output_folder = 'path/to/output_folder'
第四步:寫圖片處理函數
在寫主循環之前,我們先寫一個處理圖片的函數。以下範例展示如何調整圖片大小並儲存到輸出資料夾:
def process_image(input_path, output_path, width, height): image = Image.open(input_path) resized_image = image.resize((width, height)) resized_image.save(output_path)
在這個函數中,我們首先使用Image.open()
開啟輸入圖片,並透過呼叫resize()
方法調整圖片大小。最後,我們使用save()
方法將處理後的圖片儲存到指定的輸出路徑。
可以根據自己的需求在這個函數中加入其它圖片處理操作,例如裁剪、旋轉等。
第五步:遍歷輸入資料夾並進行批次處理
現在我們可以編寫主循環來遍歷輸入資料夾中的所有圖片,並對每張圖片進行批次處理。以下範例展示如何遍歷輸入資料夾並呼叫上述的圖片處理函數:
for filename in os.listdir(input_folder): if filename.endswith('.jpg') or filename.endswith('.png'): input_path = os.path.join(input_folder, filename) output_path = os.path.join(output_folder, filename) process_image(input_path, output_path, 800, 600)
在這個範例中,我們使用os.listdir()
函數來取得輸入資料夾中的所有檔案名,並透過os.path.join()
函數將檔案名稱與資料夾路徑拼接成完整的檔案路徑。
然後,我們使用endswith()
方法來檢查檔案名稱的後綴是否為".jpg"或".png",以便僅處理這些圖片檔案。
最後,我們呼叫上述process_image()
函數,傳遞輸入路徑、輸出路徑、所需的圖片大小作為參數。在此範例中,我們將圖片大小設定為800x600像素。
總結:
透過使用Python的Pillow庫,我們可以輕鬆地對圖片進行批次處理。本文介紹如何使用Pillow庫對圖片進行調整大小的範例,並提供了完整的程式碼範例。你可以根據自己的需求擴展這些程式碼來添加其他的圖片處理操作。開始使用Python對圖片進行大量處理,提升工作效率吧!
以上內容是關於如何使用Python對圖片進行批次處理的簡介。無論是在個人專案中還是在商業應用中,這些技巧都能幫助您節省時間和精力。希望本文能為您提供協助。
參考文獻:
以上是如何使用Python對圖片進行批次處理的詳細內容。更多資訊請關注PHP中文網其他相關文章!