RuntimeError:Error(s) in loading state dict for YOLOX:

训练完模型后,运行YOLOX中的demo.py推理文件时发生错误,运行代码与错误如下:

运行代码

python tools/demo.py image -f exps/example/yolox_voc/yolox_voc_s.py -c YOLO_outputs/yolox_voc_s_1/best_ckpt.pth  --path assets/dog.jpg --conf 0.25 --nms 0.45 --tsize 640 --save_result --device [cpu/gpu]

注意:

 -f exps/example/yolox_voc/yolox_voc_s.py

指令中的这个一定要匹配,不是训练之前用来测试的yolox_s.py了,是你自己配置的。不改过来会一直报下面的错误的。

 当然,如果上面指令没问题,还是出现这个错误,那就是demo中的类别对应出错了。

拿我自己的举例,我使用的时VOC格式的数据集,但是demo文件中默认的是COCO_CLASSES,那这样肯定会报错,所以我们要在demo.py文件中改过来。

 首先,找到 yolox/data/datasets/_init_.py文件,在文件中添加以下代码:

from .voc_classes import VOC_CLASSES

 然后进入tools/demo.py文件

将大约在15行

from yolox.data.datasets import COCO_CLASSES

 改为

from yolox.data.datasets import VOC_CLASSES

 将大约100行左右的Predictor中的cls_names

改为

 

 将300行左右的函数

改为

 

运行不会报错,成功!NICE!

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值