python对不同文件夹下不同文件夹中的图片进行标注的代码
时间: 2024-05-09 16:16:56 浏览: 83
感谢您的提问,以下是我可以给出的代码:
```python
import os
import cv2
img_root = 'path/to/root/folder'
output_file = 'path/to/output/file.txt'
classes = ['class1', 'class2', 'class3'] # 标注类别列表
with open(output_file, 'w') as f:
for root, dirs, files in os.walk(img_root):
for filename in files:
if filename.endswith('.jpg') or filename.endswith('.png'):
img_path = os.path.join(root, filename)
# 使用OpenCV读取图片
img = cv2.imread(img_path)
# 展示图片并等待按键操作
cv2.imshow('image', img)
k = cv2.waitKey(0)
# 根据按键操作来写入标注结果
if k == ord('1'):
f.write('{} {}\n'.format(img_path, classes[0]))
elif k == ord('2'):
f.write('{} {}\n'.format(img_path, classes[1]))
elif k == ord('3'):
f.write('{} {}\n'.format(img_path, classes[2]))
# 关闭OpenCV窗口
cv2.destroyAllWindows()
```
这段代码可以遍历指定目录下的所有图片,并在展示每张图片后等待用户按键操作来标注该图的类别。标注结果将保存在指定的输出文件中。请注意,这并不是一个完整的标注工具,还需要根据实际需求进行适当的修改和改进。
阅读全文