import os
from PIL import Image
# 定义函数,将处理后的图片存储到新文件夹中
def save_image(image, path):
# 创建文件夹(如果不存在)
folder = os.path.dirname(path)
if not os.path.exists(folder):
os.makedirs(folder)
# 保存图片
image.save(path)
# 遍历文件夹中的所有文件,并处理图片文件
input_dir = '/path/to/input/folder' # 输入文件夹路径
output_dir = '/path/to/output/folder' # 输出文件夹路径
for dirpath, dirnames, filenames in os.walk(input_dir):
# 遍历所有子文件夹
for dirname in dirnames:
# 构造子文件夹路径
subdir = os.path.join(dirpath, dirname)
# 遍历子文件夹中的所有图片文件
for filename in os.listdir(subdir):
# 构造图片文件路径
filepath = os.path.join(subdir, filename)
# 读取图片文件
image = Image.open(filepath)
# 处理图片(例如:缩放、旋转、增加滤镜等)
new_image = image.rotate(45)
# 构造新的图片文件路径
new_filepath = os.path.join(output_dir, subdir, filename)
# 将处理后的图片存储到新的文件夹中
save_image(new_image, new_filepath)
def save_image(image, path):
# 创建文件夹(如果不存在)
folder = os.path.dirname(path)
if not os.path.exists(folder):
os.makedirs(folder)
# 保存图片
image.save(path)
# 遍历文件夹中的所有文件,并处理图片文件
input_dir = '/path/to/input/folder' # 输入文件夹路径
output_dir = '/path/to/output/folder' # 输出文件夹路径
for dirpath, dirnames, filenames in os.walk(input_dir):
# 遍历所有子文件夹
for dirname in dirnames:
# 构造子文件夹路径
subdir = os.path.join(dirpath, dirname)
# 遍历子文件夹中的所有图片文件
for filename in os.listdir(subdir):
# 构造图片文件路径
filepath = os.path.join(subdir, filename)
# 读取图片文件
image = Image.open(filepath)
# 处理图片(例如:缩放、旋转、增加滤镜等)
new_image = image.rotate(45)
# 构造新的图片文件路径
new_filepath = os.path.join(output_dir, subdir, filename)
# 将处理后的图片存储到新的文件夹中
save_image(new_image, new_filepath)
在上述代码中,我们使用了Python自带的os模块和PIL库。通过os.walk函数,可以遍历文件夹中的所有文件和子文件夹。使用PIL库中的Image.open函数可以读取图片文件,并进行相应的处理。最后,通过自定义的save_image函数,将处理后的新图片存储到指定的输出文件夹中。