本文共 1449 字,大约阅读时间需要 4 分钟。
darknet detector valid data/obj.data yolov4.cfg backup/yolov4_last.weights
运行上述命令后,会在文件夹下生成<comp4_det_test_xxx.txt>文件
python reval_voc_py3.py --voc_dir D:\github\darknet\build\darknet\x64\scripts\VOCdevkit --year 2020 --image_set test --classes data/obj.names donkey
这里的命令行参数解释如下:
""" parser = argparse.ArgumentParser(description='Re-evaluate results') parser.add_argument('output_dir', nargs=1, help='results directory', type=str) # 结果保存路径 parser.add_argument('--voc_dir', dest='voc_dir', default='scripts/VOCdevkit', type=str) #voc数据集路径 parser.add_argument('--year', dest='year', default='2020', type=str) #年份 parser.add_argument('--image_set', dest='image_set', default='test', type=str) # txt文件名称 parser.add_argument('--classes', dest='class_file', default='data/obj.names', type=str) # 类别路径
如果报下图中的错误:!!! cachefile = D:\github\darknet\build\darknet\x64\scripts\VOCdevkit\annotations_cache\annots.pkl
找到所在的路径,删除annotations_cache文件夹即可由于我时隔一个月又运行的,之前改了voc_ecal_py3.py文件,自己忘记了,导致一直出现一个错误:
修改了半个小时,才发现原因,以后改了文件后要及时改回去,谨此铭记!!python drawPR.py
import _pickle as cPickleimport matplotlib.pyplot as pltfr = open('honkey_pr.pkl', 'rb') # 这里open中第一个参数需要修改成自己生产的pkl文件inf = cPickle.load(fr)fr.close()x = inf['rec']y = inf['prec']plt.figure()plt.xlabel('recall')plt.ylabel('precision')plt.title('PR cruve')plt.plot(x, y)plt.savefig('pr.eps',dpi=600,format='eps')plt.show()print('AP:', inf['ap'])
转载地址:http://sxwni.baihongyu.com/