训练一个epoch后数组越界报错

训练一个epoch后报错

pytorch 在跑yolov3代码时,可以训练一个epoch,然后报错,内容如下:
训练一个epoch后数组越界报错竟然是数组越界。先说解决方法,在classes_names最后一行加个空白行:
训练一个epoch后数组越界报错代码可以正常运行了。

debug过程
在读取classes_names时设置断点,输出classes_names:

训练一个epoch后数组越界报错发现只有一个标签,明明设置的是两个标签,只读到了dog,没有读入cat。

进入load_classes函数中,发现该函数是以换行符读取每行数据的:
训练一个epoch后数组越界报错
这就导致第二个标签cat没读入,加个空白行即可读入第二个标签。