【学习记录】Yolox检测踩坑记录

1.我们现在已经训练好了yolox的模型,但是在使用我们训练好的去测试我们训练出来的模型的精度的时候我是遇到了几个坑。首先先上图,我训练出模型最后打印出来的mAP值和我们训练出来的结果权重文件。

我们通常使用的权重文件是YOLOX-main下的best_ckpt.pth​文件。 

 2. 踩坑记录之我们直接拿训练好的权重去测试,就会发现我们目标框的标签名字很奇怪,并不是我们自己数据集的标签,所以在我们去测试我们模型的准确性的时候我们需要修改tools下的demo.py。我们需要修改三个地方,如下所示:

#1.首先我们在代码的15行import的时候需要加上VOC_CLASSES
14 from yolox.data.data_augment import ValTransform
15 from yolox.data.datasets import COCO_CLASSES, VOC_CLASSES
16 from yolox.exp import get_exp


#2.我们需要在代码的105行的cls_names原来的给注释了,修改为cls_names=VOC_CLASSES,
100 class Predictor(object):
101     def __init__(
102         self,
103         model,
104         exp,
105         cls_names=VOC_CLASSES,
106         #cls_names=COCO_CLASSES,
107         trt_file=None,
108         decoder=None,


#3.我们需要给295行代码中的COCO_CLASSES改为VOC_CLASSES。
295     predictor = Predictor(model, exp, VOC_CLASSES, trt_file, decoder, args.device, args.legacy)

296     #predictor = Predictor(model, exp, COCO_CLASSES, trt_file, decoder, args.device, args.legacy)

297     current_time = time.localtime()

298     if args.demo == "image":

 3.接下来我们就可以进行测试了​。

#测试单张照片
python tools/demo.py image -f ./yolox_voc_s.py -c /home/jsj/YOLOX/YOLOX_outputs/yolox_voc_s/best_ckpt.pth --path /home/jsj/img/img745.jpg --conf 0.25 --nms 0.45 --tsize 640 --save_result --device gpu

#批量测试
python tools/demo.py image -f ./yolox_voc_s.py -c /home/jsj/YOLOX/YOLOX_outputs/yolox_voc_s/best_ckpt.pth --path /home/jsj/img/ --conf 0.25 --nms 0.45 --tsize 640 --save_result --device gpu

#视频测试
python tools/demo.py video -f ./yolox_voc_s.py -c /home/jsj/yolox/YOLOX-main/YOLOX_outputs/yolox_voc_s/best_ckpt.pth --path /home/jsj/yolox/demo1.avi --conf 0.25 --nms 0.45 --tsize 576 --save_result --device gpu

本博主新开公众号,欢迎大家扫码关注支持一下,感谢。

 

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值