Python实现批量一张一张读取图片
在日常工作和生活中,我们经常需要处理大量的图片文件,而且有时候需要对这些图片进行一些批量处理的操作。在Python中,有很多强大的库可以帮助我们实现这些功能,比如PIL(Python Imaging Library)或者其后继者Pillow库。本文将介绍如何使用Python批量一张一张读取图片,并展示一些示例代码。
安装Pillow库
在使用Python读取图片之前,首先需要安装Pillow库。你可以使用pip命令来安装Pillow库,只需要在命令行中输入以下命令:
pip install Pillow
安装完成后,就可以开始使用Pillow库来操作图片文件了。
读取单张图片
在Python中,可以使用Pillow库来读取单张图片。下面是一个简单的示例代码,演示了如何读取一张图片并显示:
from PIL import Image
# 打开一张图片
img = Image.open('example.jpg')
# 显示图片
img.show()
以上代码中,我们首先导入Image
类,然后使用Image.open()
方法打开一张图片,并使用show()
方法显示这张图片。你只需要将example.jpg
替换为你自己的图片路径即可。
批量读取图片
有时候,我们需要批量读取图片并对这些图片进行处理。下面是一个示例代码,演示了如何批量读取指定文件夹下的所有图片:
import os
from PIL import Image
# 指定图片文件夹路径
folder_path = 'images/'
# 遍历文件夹中的所有文件
for file_name in os.listdir(folder_path):
if file_name.endswith('.jpg') or file_name.endswith('.png'):
# 拼接文件路径
file_path = os.path.join(folder_path, file_name)
# 打开图片
img = Image.open(file_path)
# 处理图片
# 这里可以添加你的处理逻辑
以上代码中,我们首先指定了一个图片文件夹的路径'images/'
,然后使用os.listdir()
函数遍历文件夹中的所有文件。对于每一个以.jpg
或.png
结尾的文件,我们使用Image.open()
方法打开图片并进行处理。
示例:批量缩放图片
下面是一个示例代码,演示了如何批量读取图片并对这些图片进行缩放操作:
import os
from PIL import Image
# 指定图片文件夹路径
folder_path = 'images/'
# 指定缩放比例
scale = 0.5
# 遍历文件夹中的所有文件
for file_name in os.listdir(folder_path):
if file_name.endswith('.jpg') or file_name.endswith('.png'):
# 拼接文件路径
file_path = os.path.join(folder_path, file_name)
# 打开图片
img = Image.open(file_path)
# 缩放图片
width, height = img.size
new_size = (int(width * scale), int(height * scale))
img_resized = img.resize(new_size)
# 保存图片
img_resized.save('resized_' + file_name)
以上代码中,我们指定了一个缩放比例scale
,然后对每张图片进行缩放操作,并保存为新的文件。
总结
本文介绍了如何使用Python批量一张一张读取图片,并展示了一些示例代码。通过Pillow库,我们可以方便地对图片文件进行操作,实现各种图片处理需求。希望本文对你有所帮助,谢谢阅读!
gantt
title Python批量读取图片示例代码甘特图
section 读取单张图片
打开图片: done, 2022-10-01, 1d
显示图片: done, after 打开图片, 1d
section 批量读取图片
遍历文件夹: done, 2022-10-02, 1d
批量处理: done, after 遍历文件夹, 2d
section 示例:批量缩放图片
缩放图片: done