关于yolov3在训练自己数据集时容易出现的bug集合,以及解决方法

早先写了一篇关于yolov3训练自己数据集的博文Pytorch实现YOLOv3训练自己的数据集

其中很详细的介绍了如何的训练自定义的数据集合,同时呢笔者也将一些容易出现的bug写在了博文中,想着的是可以帮助到大家。很荣幸这一篇博客收到了,大家的认可。最近一段时间有很多的学长、学姐、学弟、学妹询问其中出现的问题。可是问的都是我没有遇到过的,很尴尬

今天我花了一下午的时间,解决了这几个问题,接下来进行分享。

笔者的开发环境为:

ubuntu18.04
PyTorch 1.1.0
anaconda
opencv-python
tqdm
matplotlib
pycocotools
详细请参考:Pytorch实现YOLOv3训练自己的数据集

  • 问题1:AssertionError: Shapefile out of sync, please delete data/test.shapes and rerun
    在这里插入图片描述
    这个问题的话需要将data文件下的test.shapes删了,再重新运行makeTxt.py和voc_labels.py即可。报错的原因:因为Shapefile的不同步,可能用于训练其他的任务,没有即使的改回来导致的。
  • 问题2:在生成将voc生成txt时,打开txt后是空白
    在这里插入图片描述
    这是因为voc_label.py下的classes = ["name"] 和你标注的不一致。例如,使用labelImg标注的为face,那么你在编写时就应该在voc_label.py下写classes = ["face"]
  • 问题3:可视化,记得有一个学姐问我,咋不可以可视化,我当时忘了,导致她花了很长时间去解决这个bug,很尴尬,心疼学姐,哈哈哈。。。。
    其实很容易解决,只需要在训练完成后,打开命令行输入命令:
python3 -c "from project import utils; utils.plot_results()"

即可在根目录下看到。
在这里插入图片描述
在这里插入图片描述

  • 问题4 windows环境下路径问题
  • 问题描述:有些小伙伴在按照笔者的步骤进行自定义数据集训练时,出现了如下的报错信息:
    在这里插入图片描述
  • 问题的原因:由于笔者是在linux环境下进行的实验,所以没有出现这种情况。这个问题出现的原因是由于windows系统部分符号的不敏感,所以导致这种情况。
  • 解决方法:
    打开dataset.py,把162行换成163行即可
    在这里插入图片描述
    总结:由于笔者能力有限,在叙述上难免有不准确的地方,还请谅解。最后希望疫情快快结束,祝武汉加油,一线的工作者你们辛苦了!!!!!!
posted @ 2022-05-11 16:38  陶陶Name  阅读(161)  评论(0编辑  收藏  举报