Aus*_*tin 7 python subset mscoco pycocotools
我正在使用 python coco api 来运行对象检测的评估。我有两个文件,一个ground truth json和一个results json。该COCO笔记本演示仅适用于所有类运行EVAL节目。如何只为一个特定的类或类的子集运行它?目前我正在这样做:
from pycocotools.coco import COCO
from pycocotools.cocoeval import COCOeval
annType = 'bbox'
cocoGt=COCO(gt_json)
cocoDt=cocoGt.loadRes(results_json)
imgIds=sorted(cocoGt.getImgIds())
# running evaluation
cocoEval = COCOeval(cocoGt,cocoDt,annType)
cocoEval.params.imgIds = imgIds
cocoEval.evaluate()
cocoEval.accumulate()
cocoEval.summarize()
Run Code Online (Sandbox Code Playgroud)
김윤영*_*김윤영 11
我参考这个页面(http://www.programmersought.com/article/3065285708/)
cocoEval = COCOeval(cocoGt,cocoDt,annType)
coco_eval.params.catIds = [1] #person id : 1
cocoEval.params.imgIds = imgIds
cocoEval.evaluate()
cocoEval.accumulate()
cocoEval.summarize()
Run Code Online (Sandbox Code Playgroud)
另外,我修改了 cocoapi/PythonAPI/pycocotools/cocoeval.py 来计算每个类别的 AP。https://github.com/kimyoon-young/centerNet-deep-sort/blob/master/tools/cocoeval.py 中的
第 458-464 行
结果如下。
类别:0:0.410733757610904 #person AP
类别:1:0.20226150054237374 #bird AP
....
类别:79:0.04993736566987926
(所有类别)mAP 0.0409.Average.Average.Average = 0.2709.040.09.0409.0409.0409.04090.0409.09509.Average
= 面积=全部| maxDets=100 ] = 0.280 #original
| 归档时间: |
|
| 查看次数: |
8440 次 |
| 最近记录: |