The `num_classes` (80) in Shared2FCBBoxHead of MMDataParallel does not matches the l

:使用自己的coco数据训练:

Mmdetction 训练类别错误提示。


AssertionError: The num_classes (80) in Shared2FCBBoxHead of MMDataParallel does not matches the length of CLASSES 2) in CocoDataset

原因分析:

自己修改的本地和训练环境文件不符:

训练的时候加载的是:envs/mmdetection/lib/python3.7/site-packages/mmdet-2.26.0-py3.7.egg/mmdet
在这里插入图片描述

解决方案:

需要将修改后的配置文件,重新编译:

python setup.py install

如果还是报相同错误,就可以去envs/mmdetection/lib/python3.7/site-packages/mmdet-2.26.0-py3.7.egg/mmdet,看看需要更改的类别是否更改正确。
以coco数据, cascade为例。
mmdet\core\evaluation\class_names.py
mmdet\datasets\coco.py
检查以上文件在虚拟环境中。
base/models/cascade_rcnn_r50_fpn.py
检查以上文件中的num-class,(有三处,如下图):
The `num_classes` (80) in Shared2FCBBoxHead of MMDataParallel does not matches the l_第1张图片

如果还是不行,那就去看看训练日志:
在这里插入图片描述

重点看num_classes。

一般都是自己粗心大意了。
如果日志和虚拟环境都看不出什么问题,那就卸载重新装。

你可能感兴趣的:(安装配置,python,深度学习,人工智能)