我使用的是voc格式数据集,训练方法详见上篇博客:YOLOv3训练自己的VOC数据集
一、生成检测结果txt文本
./darknet detector valid cfg/voc.data cfg/yolov3-voc.cfg xx.weight
- 如果没加
-out选项则默认在results目录下生成txt文件,例如:comp4_det_test_car.txt - 将生成的txt文件更名为 类别名.txt,例如car.txt
二、借助voc_eval.py计算recall、precision等
- Faster RCNN的实现中即包含voc_eval.py,将其复制到当前项目目录下
- 新建compute.py
from voc_eval import voc_eval
rec,prec,ap = voc_eval('…/results/{}.txt','…/VOCdevkit/VOC2007/Annotations/{}.xml','…/VOCdevkit/VOC2007/ImageSets/Main/test.txt','car','.')
print(……)
- 注意随手删除运行目录下生成的annots.pkl,以防下一次运行出现问题
- 另外原项目examples/detector.c中包含
validate_detector_recall函数,也可借助其计算recall
参考:
https://blog.youkuaiyun.com/cgt19910923/article/details/80524173
https://blog.youkuaiyun.com/mieleizhi0522/article/details/79989754
https://blog.youkuaiyun.com/northeastsqure/article/details/54848665
本文介绍如何使用YOLOv3模型在VOC格式数据集上进行目标检测,并详细说明了生成检测结果txt文本的过程,以及如何利用voc_eval.py计算recall、precision和AP值,为模型性能评估提供全面指导。
10万+

被折叠的 条评论
为什么被折叠?



