-
AssertionError: Label class 4 exceeds nc=4 in /xxxxxx解决方法
- 原因
- 解决方法:(以我的情况为例)
-
RuntimeError: result type Float can‘t be cast to the desired output type long int
- 原因
- 解决方法
- ImportError: libgthread-2.0.so.0: cannot open shared object file:
-
tensorboard :No dashboards are active for the current data set.
- 问题描述
- 解决方法
AssertionError: Label class 4 exceeds nc=4 in /xxxxxx解决方法
原因
一般是由于数据集的标签文件出现的类别数与自己设置的nc类别数不符。
例如我原本要检测5类目标,则标签序号为0、1、2、3、4,nc数设置为5,如图:
而‘4’这一类mAP太低,所以想去掉,于是只把nc数改为4,所以出现报错。
解决方法:(以我的情况为例)
方法1.nc数改为4,再把标签文件里所有‘4’类删掉;
方法2.还按nc数为5训练,最后mAP不计算‘4’类即可。
RuntimeError: result type Float can‘t be cast to the desired output type long int
原因
版本错误
解决方法
1.打开【utils】→【loss.py】;
2.ctrl+f搜索anchors = self.anchors[i]
,将其替换为:anchors, shape = self.anchors[i], p[i].shape
替换效果:
3.ctrl+f搜索indices.append
,将那一行代码替换为indices.append((b, a, gj.clamp_(0, shape[2] - 1), gi.clamp_(0, shape[3] - 1))) # image, anchor, grid
,替换效果:
4.保存运行,问题解决。
ImportError: libgthread-2.0.so.0: cannot open shared object file:
控制台执行两条命令即可:apt-get update apt-get install libglib2.0-dev
tensorboard :No dashboards are active for the current data set.
问题描述
训练过程中想用tensorboard查看,但在IDE中打不开,显示如图:
自己复制地址到浏览器打开,干脆变成这样:
解决方法
找到events文件,我使用的是YOLOv5 6.0,events文件在runs/teain/exp文件夹下,如图:
当然不同的exp如exp、exp2、exp3等等对应了不同的实验,每次实验都对应一个或多个(使用resume的话)events文件,找到你想打开的那一个,例如我想查看第二次实验(即exp2)的数据,则:文章来源:https://www.toymoban.com/news/detail-651185.html
tensorboard --logdir runs/train/exp2
打开弹出的网址即可发现问题解决:
注:本人使用的是云GPU,如果有一样的朋友需要注意,不能通过云GPU平台的terminal运行上述命令,否则还是没用。文章来源地址https://www.toymoban.com/news/detail-651185.html
到了这里,关于【YOLOv5】一些不常见的报错及解决【持续更新】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!