
利用Python根据标签将图片分类到不同文件夹的方法
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本文章介绍了如何使用Python编程语言和相关库(如os, shutil, PIL)来识别图片中的标签,并自动将其移动或复制至相应文件夹进行分类管理。
给定一个图像集,在该集合中的所有类别的图片均在一个文件夹内,并且有一个与图片名相匹配的表格来声明每张图片对应的类别(共有20个类别)。为了将这些图片根据表格中所给的类别分类到不同的子文件夹,可以使用以下代码进行操作:
1. 引入必要的库:
```python
import pandas as pd
import os
import shutil # 用于移动文件
```
2. 打开并读取表格文件(假设表格名为 list.csv):
```python
list = pd.read_csv(list.csv)
```
3. 根据类别将图片分到对应的子目录中。例如,如果 `CATEGORY_ID` 有0-19共20类,则可以遍历列表并使用以下代码进行分类:
```python
# 遍历表格中的每一行数据
for index, row in list.iterrows():
# 获取当前图片的文件名和类别ID(假设列名为 IMAGE_NAME 和 CATEGORY_ID)
image_name = str(row[IMAGE_NAME])
category_id = int(row[CATEGORY_ID])
# 创建对应的子目录,如果它不存在的话
if not os.path.exists(fcategory_{category_id}):
os.makedirs(fcategory_{category_id})
# 移动图片到相应的类别文件夹中
shutil.move(image_name, fcategory_{category_id}/{image_name})
```
这段代码会根据表格中的信息将所有图像分入20个不同的子目录,每个目录代表一个特定的类别。请确保在运行该脚本之前备份原始数据以防止意外丢失或错误操作导致的数据损坏。
全部评论 (0)


