步骤1、首先下载cocoAPI,进入pythonAPI文件夹Make一下
步骤2、使用 <./darknet detector valid cfg/coco.data cfg/yolov3-coco.cfg backup/yolov3-coco.weight>命令生成det的json文件,注意,在使用valid 这个命令的时候thresh参数应该设置第一点,可以在detector.c文件中的validate_detector这个方法中设置,另外,如果模型训练的是coco的个别类,在valid的时候需要修改detector.c最上面的coco_ids这个变量,具体怎么改自己去看看就知道了。
步骤3、jupyter notebook打开pycocoEvalDemo.ipynb把annFile和resFile这两个变量的路径修改为自己的,resFile修改为上一步valid生成的那个json文件的路径。
步骤4、修改第5个cell中的内容,原来这个cell中是去val2014中图片按images_id排完序后的前100张,这里需要修改为自己测试集的image id
import json
dts = json.load(open(resFile,'r'))
imgIds = [imid["image_id"] for imid in dts]
imgIds = sorted(list(set(imgIds)))
del dts
最后就从头run一次就可以了
另外,如果需要测试单独一个或者几个类的AP的时候,比如我要测试person+car的AP,需要在cocoEval.params.imgIds =