1)加载 COCO 数据集
from pycocotools.coco import COCO
# 加载注释文件coco = COCO('path/to/annotations.json')
# 获取所有类别的名称categories = coco.loadCats(coco.getCatIds())category_names = [cat['name'] for cat in categories]print(category_names)2)获取图片和注释
# 获取某个类别的图片 IDcatIds = coco.getCatIds(catNms=['person'])imgIds = coco.getImgIds(catIds=catIds)
# 加载图片信息images = coco.loadImgs(imgIds)print(images)
# 加载图片的标注信息annIds = coco.getAnnIds(imgIds=imgIds, catIds=catIds, iscrowd=None)annotations = coco.loadAnns(annIds)print(annotations)3)显示图片及其标注
import matplotlib.pyplot as pltimport skimage.io as io
# 显示图片image = images[0]img = io.imread(image['coco_url'])plt.imshow(img)plt.axis('off')
# 显示标注coco.showAnns(annotations)plt.show()4)评估模型性能
from pycocotools.cocoeval import COCOeval
# 加载模型预测结果coco_dt = coco.loadRes('path/to/detections.json')
# 创建 COCOeval 对象coco_eval = COCOeval(coco, coco_dt, 'bbox')
# 评估结果coco_eval.evaluate()coco_eval.accumulate()coco_eval.summarize()