python图片批量处理
时间: 2025-02-09 08:11:29 浏览: 44
### 如何使用Python进行图像的批处理操作
为了高效地完成图像的批处理任务,`Pillow` 库是一个非常实用的选择。该库提供了丰富的功能用于读取、保存多种图像文件格式以及修改这些图像[^3]。
#### 安装所需库
首先需要安装 `Pillow` 库,可以通过 pip 工具轻松完成这一过程:
```bash
pip install pillow
```
#### 图像批处理示例代码
下面提供一段简单的 Python 脚本作为例子,展示如何利用 Pillow 对一批图片执行尺寸调整并将其另存为新的文件:
```python
from PIL import Image
import os
def resize_images(input_folder, output_folder, size=(800, 600)):
"""
Resize all images in the input folder to specified dimensions and save them into an output directory.
:param input_folder: Path of source image files
:param output_folder: Destination path where resized images will be saved
:param size: Target resolution (width, height), default is set at 800x600 pixels
"""
if not os.path.exists(output_folder):
os.makedirs(output_folder)
for filename in os.listdir(input_folder):
try:
with Image.open(os.path.join(input_folder, filename)) as img:
img_resized = img.resize(size)
base_filename, ext = os.path.splitext(filename)
new_file_path = os.path.join(output_folder, f"{base_filename}_resized{ext}")
img_resized.save(new_file_path)
print(f"Processed {filename} -> Saved as {new_file_path}")
except Exception as e:
print(f"Failed processing file {filename}: ", str(e))
if __name__ == "__main__":
INPUT_DIR = "path/to/input/images"
OUTPUT_DIR = "path/to/output/resized_images"
resize_images(INPUT_DIR, OUTPUT_DIR)
```
这段脚本定义了一个函数 `resize_images()` ,接收三个参数:输入文件夹路径 (`input_folder`)、输出文件夹路径(`output_folder`) 及目标分辨率大小,默认设置为宽度800像素高600像素。对于给定目录下的每一个文件,尝试打开它作为一个图像对象,并对其进行缩放变换后存储到指定的目标位置。如果遇到任何错误,则会打印相应的警告信息而不是中断程序运行。
阅读全文
相关推荐

















