详解使用Python PIL对指定文件夹中的所有图片进行修改

  • Post category:Python

首先,需要明确Python PIL是一个Python库,主要用于图像处理和图像数据的操作。下面是使用Python PIL对指定文件夹中的所有图片进行修改的完整攻略。

步骤1:安装Python PIL库

在命令行中输入以下指令来安装PIL库:

pip install Pillow

步骤2:打开指定文件夹并遍历所有图片

使用Python的os模块打开指定文件夹并遍历该文件夹中的所有图片,使用以下代码来实现:

import os
from PIL import Image

# 设置要修改的图片所在的文件夹路径
folder_path = 'image_folder'

# 遍历文件夹中的所有图片
for filename in os.listdir(folder_path):
    if filename.endswith('.jpg') or filename.endswith('.png'):
        # 打开图片
        img = Image.open(os.path.join(folder_path, filename))

        # 写下你的图片修改代码

步骤3:对图片进行修改

在遍历到每个图片后,使用PIL的Image模块对其进行修改。下面是两个示例:

示例1:对图片进行裁剪并保存

# 裁剪到指定的区域并保存
box = (100, 100, 400, 400)
img = img.crop(box)
img.save(os.path.join(folder_path, 'cropped_' + filename))

示例2:对图片进行缩放并保存

# 缩放图片并保存
size = (300, 300)
img = img.resize(size)
img.save(os.path.join(folder_path, 'resized_' + filename))

完整代码

下面是完整代码:

import os
from PIL import Image

# 设置要修改的图片所在的文件夹路径
folder_path = 'image_folder'

# 遍历文件夹中的所有图片
for filename in os.listdir(folder_path):
    if filename.endswith('.jpg') or filename.endswith('.png'):
        # 打开图片
        img = Image.open(os.path.join(folder_path, filename))

        # 对图片进行修改并保存
        box = (100, 100, 400, 400)
        img = img.crop(box)
        img.save(os.path.join(folder_path, 'cropped_' + filename))

这是一个将图片裁剪并保存的示例。你可以根据需要修改代码来实现不同的文件处理功能。

注意:以上内容涉及到文件操作,请在执行代码前备份好你需要处理的文件,以防误操作导致数据丢失。