coco数据集可视化ground truth 标签 保存至另一个文件夹
时间: 2023-07-09 07:42:57 浏览: 276
好的,您可以使用以下代码来实现将COCO数据集的ground truth标签可视化,并将它们保存至另一个文件夹:
```python
import os
import numpy as np
import cv2
from pycocotools.coco import COCO
# 初始化 COCO api
dataDir = 'path/to/coco/dataset'
dataType = 'train2017'
annFile = os.path.join(dataDir, 'annotations', 'instances_{}.json'.format(dataType))
coco = COCO(annFile)
# 获取所有图片的 ID
imgIds = coco.getImgIds()
# 循环遍历所有图片
for imgId in imgIds:
# 获取图片信息
img = coco.loadImgs(imgId)[0]
# 获取标注信息
annIds = coco.getAnnIds(imgIds=img['id'], iscrowd=None)
anns = coco.loadAnns(annIds)
# 读取图片
img_path = os.path.join(dataDir, dataType, img['file_name'])
img = cv2.imread(img_path)
# 绘制标注框和类别
for ann in anns:
bbox = ann['bbox']
x, y, w, h = bbox
x2, y2 = x + w, y + h
cv2.rectangle(img, (int(x), int(y)), (int(x2), int(y2)), (0, 255, 0), 2)
cv2.putText(img, coco.loadCats(ann['category_id'])[0]['name'], (int(x), int(y)-10), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)
# 保存标注图片至另一个文件夹
save_path = os.path.join(dataDir, 'annotations_vis', img['file_name'])
cv2.imwrite(save_path, img)
```
这段代码会遍历COCO数据集中的所有图片,读取其标注信息并将其可视化,然后将可视化后的图片保存至`path/to/coco/dataset/annotations_vis`文件夹中。您可以根据自己的需求修改代码来适应不同的数据集和文件夹结构。
阅读全文