jbwang1997 / OBBDetection

OBBDetection is an oriented object detection library, which is based on MMdetection.
Apache License 2.0
520 stars 111 forks source link

你好,关于今天更新代码后,IndexError: Caught IndexError in DataLoader worker process 0.和IndexError: list index out of range出现的问题。环境搭建没有问题,训练阶段报错。 #112

Open clin-fu opened 2 years ago

clin-fu commented 2 years ago

Traceback (most recent call last): File "./tools/train.py", line 153, in main() File "./tools/train.py", line 149, in main meta=meta) File "/raid/OBBDetection-master/mmdet/apis/train.py", line 133, in train_detector runner.run(data_loaders, cfg.workflow, cfg.total_epochs) File "/home/anaconda3/envs/obb/lib/python3.7/site-packages/mmcv/runner/epoch_based_runner.py", line 125, in run epoch_runner(data_loaders[i], **kwargs) File "/home/anaconda3/envs/obb/lib/python3.7/site-packages/mmcv/runner/epoch_based_runner.py", line 47, in train for i, data_batch in enumerate(self.data_loader): File "/home/anaconda3/envs/obb/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 435, in next data = self._next_data() File "/home/anaconda3/envs/obb/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 475, in _next_data data = self._dataset_fetcher.fetch(index) # may raise StopIteration File "/home/anaconda3/envs/obb/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/home/anaconda3/envs/obb/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 44, in data = [self.dataset[idx] for idx in possibly_batched_index] File "/raid/OBBDetection-master/mmdet/datasets/custom.py", line 187, in getitem data = self.prepare_train_img(idx) File "/raid/OBBDetection-master/mmdet/datasets/custom.py", line 210, in prepare_train_img return self.pipeline(results) File "/raid/OBBDetection-master/mmdet/datasets/pipelines/compose.py", line 40, in call data = t(data) File "/raid/OBBDetection-master/mmdet/datasets/pipelines/obb/base.py", line 348, in call self.base_rotate(results, matrix, w, h, img_bound) File "/raid/OBBDetection-master/mmdet/datasets/pipelines/obb/base.py", line 305, in base_rotate warped_polygons = warped_polygons[index] File "/raid/OBBDetection-master/mmdet/core/mask/structures.py", line 359, in getitem if isinstance(masks[0], np.ndarray): IndexError: list index out of range Traceback (most recent call last): File "/home/anaconda3/envs/obb/lib/python3.7/runpy.py", line 193, in _run_module_as_main "main", mod_spec) File "/home/anaconda3/envs/obb/lib/python3.7/runpy.py", line 85, in _run_code exec(code, run_globals) File "/home/anaconda3/envs/obb/lib/python3.7/site-packages/torch/distributed/launch.py", line 260, in main() File "/home/anaconda3/envs/obb/lib/python3.7/site-packages/torch/distributed/launch.py", line 256, in main cmd=cmd) subprocess.CalledProcessError: Command '['/home/anaconda3/envs/obb/bin/python', '-u', './tools/train.py', '--local_rank=1', 'work_dirs/faster_rcnn_orpn_r50_fpn_1x_ms_rr_dota10/faster_rcnn_orpn_r50_fpn_1x_ms_rr_dota10.py', '--launcher', 'pytorch']' returned non-zero exit status 1.

jbwang1997 commented 2 years ago

感谢您提的issue,我已经在最新的commit中进行了修改