COCO数据集可视化
import json
import os.path
import matplotlib.pyplot as plt
import cv2
with open(r'annotations/instances_val.json') as f:
coco_data = json.load(f)
for i in coco_data["images"]:
image_path = i["file_name"]
image = cv2.imread(image_path)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
image_id = i["id"]
annotations = [ann for ann in coco_data['annotations'] if ann['image_id'] == image_id]
plt.figure(figsize=(12, 8))
plt.imshow(image)
ax = plt.gca()
for ann in annotations:
bbox = ann['bbox']
rect = plt.Rectangle((bbox[0], bbox[1]), bbox[2], bbox[3], fill=False, edgecolor='red', linewidth=2)
ax.add_patch(rect)
# plt.show()
plt.savefig(f"result/{image_path.split("\\")[-3] + '_' + os.path.basename(image_path)}")
825





