使用mmdet时设置好网络后,为什么训练的时候,起初很正常,但经过几个epoch后(不固定,可能只经过一个epoch,也可能经过几十个epoch),可能会忽然跳出这样的错误IndexError: list index out of range。可以给我一些问题地解决建议吗?非常感谢
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] 170/170, 5.6 task/s, elapsed: 30s, ETA: 0sTraceback (most recent call last):
File "G:/swinmask/Swin-Transformer-Object-Detection/tools/train.py", line 187, in <module>
main()
File "G:/swinmask/Swin-Transformer-Object-Detection/tools/train.py", line 176, in main
train_detector(
File "G:\swinmask\Swin-Transformer-Object-Detection\mmdet\apis\train.py", line 185, in train_detector
runner.run(data_loaders, cfg.workflow)
File "d:\program\anaconda3\envs\swin_det\mmcv-1.3.17\mmcv\runner\epoch_based_runner.py", line 127, in run
epoch_runner(data_loaders[i], **kwargs)
File "d:\program\anaconda3\envs\swin_det\mmcv-1.3.17\mmcv\runner\epoch_based_runner.py", line 54, in train
self.call_hook('after_train_epoch')
File "d:\program\anaconda3\envs\swin_det\mmcv-1.3.17\mmcv\runner\base_runner.py", line 307, in call_hook
getattr(hook, fn_name)(self)
File "G:\swinmask\Swin-Transformer-Object-Detection\mmdet\core\evaluation\eval_hooks.py", line 147, in after_train_epoch
key_score = self.evaluate(runner, results)
File "G:\swinmask\Swin-Transformer-Object-Detection\mmdet\core\evaluation\eval_hooks.py", line 176, in evaluate
eval_res = self.dataloader.dataset.evaluate(
File "G:\swinmask\Swin-Transformer-Object-Detection\mmdet\datasets\coco.py", line 417, in evaluate
result_files, tmp_dir = self.format_results(results, jsonfile_prefix)
File "G:\swinmask\Swin-Transformer-Object-Detection\mmdet\datasets\coco.py", line 362, in format_results
result_files = self.results2json(results, jsonfile_prefix)
File "G:\swinmask\Swin-Transformer-Object-Detection\mmdet\datasets\coco.py", line 299, in results2json
json_results = self._segm2json(results)
File "G:\swinmask\Swin-Transformer-Object-Detection\mmdet\datasets\coco.py", line 267, in _segm2json
if isinstance(segms[i]['counts'], bytes):
IndexError: list index out of range
私信你了,具体讨论下
你用我这个训练一下试试报错不报错, 如有帮助给个采纳, 给个关注不迷路,下个问题艾特俺
http://t.csdn.cn/DTltR
越界了。你看下标签是不是和图片对不起来
不知道你这个问题是否已经解决, 如果还没有解决的话:问题分析:
"IndexError: list index out of range"错误通常发生在使用索引访问列表时,索引超出了列表的范围。在训练mmdet模型中出现这个错误可能有几个原因:
解决方案:
以下是一些可能的解决方案,用来解决"IndexError: list index out of range"错误:
希望以上解决方案能帮助到您解决问题。祝您顺利完成mmdet模型的训练!如果还有其他问题,请随时提问。