如何用python生成带图片名称和标签的.txt文件
时间: 2024-09-30 22:01:50 浏览: 38
python实现对文件中图片生成带标签的txt文件方法
在Python中,你可以使用`os`, `PIL`(Python Imaging Library,即Pillow库的替代品)以及`csv`模块来生成包含图片名称和标签的`.txt`文件。以下是一个简单的示例:
```python
import os
import csv
# 假设我们有一个图像文件夹images,并有对应的标签文件夹labels
image_folder = 'images'
label_folder = 'labels'
# 获取每个文件夹下的文件列表
image_files = [f for f in os.listdir(image_folder) if os.path.isfile(os.path.join(image_folder, f))]
label_files = [f[:-4] for f in os.listdir(label_folder) if f.endswith('.txt')] # 假设标签文件名与图片文件名一致,只是缺少'.txt'
# 创建一个新的csv.writer对象
with open('image_labels.txt', 'w', newline='') as txt_file:
writer = csv.writer(txt_file)
# 写入每张图片的路径和对应的标签
for img_name, label_name in zip(image_files, label_files):
img_path = os.path.join(image_folder, img_name)
label_path = os.path.join(label_folder, label_name + '.txt')
# 检查文件是否存在
if os.path.exists(img_path) and os.path.exists(label_path):
with open(label_path, 'r') as labelfile:
label_content = labelfile.read().strip() # 读取标签内容并去除首尾空白
writer.writerow([img_path, label_content])
else:
print(f"Skipped {img_name} or {label_name}, file not found.")
阅读全文