使用Python進行圖像批處理的方法示例
前言
在Python中進行圖像批處理可以使用多種庫,如 Pillow
、OpenCV
和 imageio
。這些庫可以用來執(zhí)行各種圖像處理任務,如調整大小、裁剪、旋轉、濾鏡應用等。以下是使用這些庫進行圖像批處理的示例。
使用 Pillow 進行圖像批處理
Pillow
是一個功能強大的圖像處理庫。下面是如何使用 Pillow
進行圖像批處理的基本示例:
- 安裝 Pillow
pip install pillow
- 批處理圖像
from PIL import Image import os def process_image(file_path, output_path): with Image.open(file_path) as img: # 示例處理:調整大小 img = img.resize((800, 800)) # 示例處理:應用濾鏡 img = img.convert('L') # 轉為灰度圖 img.save(output_path) def batch_process_images(input_folder, output_folder): if not os.path.exists(output_folder): os.makedirs(output_folder) for filename in os.listdir(input_folder): if filename.lower().endswith(('.png', '.jpg', '.jpeg')): file_path = os.path.join(input_folder, filename) output_path = os.path.join(output_folder, filename) process_image(file_path, output_path) # 示例使用 batch_process_images('input_images', 'output_images')
使用 OpenCV 進行圖像批處理
OpenCV
是一個功能強大的計算機視覺庫,適用于更復雜的圖像處理任務。下面是如何使用 OpenCV
進行圖像批處理的示例:
- 安裝 OpenCV
pip install opencv-python
- 批處理圖像
import cv2 import os def process_image(file_path, output_path): # 讀取圖像 img = cv2.imread(file_path) # 示例處理:調整大小 img = cv2.resize(img, (800, 800)) # 示例處理:將圖像轉換為灰度 img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.imwrite(output_path, img) def batch_process_images(input_folder, output_folder): if not os.path.exists(output_folder): os.makedirs(output_folder) for filename in os.listdir(input_folder): if filename.lower().endswith(('.png', '.jpg', '.jpeg')): file_path = os.path.join(input_folder, filename) output_path = os.path.join(output_folder, filename) process_image(file_path, output_path) # 示例使用 batch_process_images('input_images', 'output_images')
使用 imageio 進行圖像批處理
imageio
是另一個圖像處理庫,支持多種圖像格式和文件類型。
- 安裝 imageio
pip install imageio
- 批處理圖像
import imageio import os def process_image(file_path, output_path): img = imageio.imread(file_path) # 示例處理:調整大小 img_resized = imageio.imresize(img, (800, 800)) # 示例處理:轉換為灰度 img_gray = imageio.rgb2gray(img_resized) imageio.imwrite(output_path, img_gray) def batch_process_images(input_folder, output_folder): if not os.path.exists(output_folder): os.makedirs(output_folder) for filename in os.listdir(input_folder): if filename.lower().endswith(('.png', '.jpg', '.jpeg')): file_path = os.path.join(input_folder, filename) output_path = os.path.join(output_folder, filename) process_image(file_path, output_path) # 示例使用 batch_process_images('input_images', 'output_images')
總結
- Pillow 適合基本的圖像處理任務,如調整大小、裁剪、濾鏡應用等。
- OpenCV 適合更復雜的計算機視覺任務,如圖像變換、特征檢測等。
- imageio 提供了簡潔的接口,適用于讀取和保存各種圖像格式。
你可以根據(jù)具體的需求選擇合適的庫來進行圖像批處理。以上示例展示了如何處理圖像的基本任務,你可以在這些基礎上擴展和自定義更多的圖像處理功能。
以上就是使用Python進行圖像批處理的方法示例的詳細內(nèi)容,更多關于Python圖像批處理的資料請關注腳本之家其它相關文章!
相關文章
將TensorFlow的模型網(wǎng)絡導出為單個文件的方法
本篇文章主要介紹了將TensorFlow的網(wǎng)絡導出為單個文件的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04pycharm遠程連接服務器并配置python interpreter的方法
這篇文章主要介紹了pycharm遠程連接服務器并配置python interpreter的方法,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12解決pycharm不能自動補全第三方庫的函數(shù)和屬性問題
這篇文章主要介紹了解決pycharm不能自動補全第三方庫的函數(shù)和屬性問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Python利用Pillow(PIL)庫實現(xiàn)驗證碼圖片的全過程
這篇文章主要給大家介紹了關于Python利用Pillow(PIL)庫實現(xiàn)驗證碼圖片的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-10-10