coco数据集mAP评估
0 coco数据集划分说明
1 用yolo自带的评估
from ultralytics import YOLOmodel = YOLO("../spatial-perception/checkpoints/yolo11n.pt")metrics = model.val(data="./coco.yaml", save_json=True) ## save_json为True,可以把预测结果存成json文件, 便于评估或在线提交
2 用pycocotools 工具进行评估
代码:
https://github.com/leo038/coco_tools/blob/main/coco_eval.py
用pycocotools评估时, 需要把结果保存为coco格式的json文件。
结果:
2个评估结果略有差别, 但差别不大。
整体对比如下:
特别需要注意, yolo直接输出的类别id是从1到80。 而coco的数据集中标注的id是1到91, 这2个并不匹配, 如果不做一定的处理, 让它们匹配的话, 计算结果是错误的。 如下图所示 ,mAP值非常小, 接近于0 。