Peterisfar / YOLOV3

yolov3 by pytorch
MIT License
196 stars 53 forks source link

IndexError: Caught IndexError in DataLoader worker process 1. #22

Closed jiangzeshuo closed 4 years ago

jiangzeshuo commented 4 years ago

File "train.py", line 99, in train for i, (imgs, label_sbbox, label_mbbox, label_lbbox, sbboxes, mbboxes, lbboxes) in enumerate(self.train_dataloader): File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 801, in next return self._process_data(data) File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 846, in _process_data data.reraise() File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/_utils.py", line 369, in reraise raise self.exc_type(msg) IndexError: Caught IndexError in DataLoader worker process 1. Original Traceback (most recent call last): File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/worker.py", line 178, in _worker_loop data = fetcher.fetch(index) File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in data = [self.dataset[idx] for idx in possibly_batched_index] File "/home/aistudio/work/newyolov3/YOLOV3/utils/datasets.py", line 36, in getitem img_mix, bboxes_mix = self.parse_annotation(self.__annotations[item_mix]) File "/home/aistudio/work/newyolov3/YOLOV3/utils/datasets.py", line 84, in parse_annotation img, bboxes = dataAug.Resize((self.img_size, self.img_size), True)(np.copy(img), np.copy(bboxes)) File "/home/aistudio/work/newyolov3/YOLOV3/utils/data_augment.py", line 97, in call bboxes[:, [0, 2]] = bboxes[:, [0, 2]] * resize_ratio + dw IndexError: too many indices for array 当我在跑第一个epoch的时候运行60个batchsize出现上述问题

Peterisfar commented 4 years ago

File "train.py", line 99, in train for i, (imgs, label_sbbox, label_mbbox, label_lbbox, sbboxes, mbboxes, lbboxes) in enumerate(self.train_dataloader): File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 801, in next return self._process_data(data) File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 846, in _process_data data.reraise() File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/_utils.py", line 369, in reraise raise self.exc_type(msg) IndexError: Caught IndexError in DataLoader worker process 1. Original Traceback (most recent call last): File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/worker.py", line 178, in _worker_loop data = fetcher.fetch(index) File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/home/aistudio/work/torch1/pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in data = [self.dataset[idx] for idx in possibly_batched_index] File "/home/aistudio/work/newyolov3/YOLOV3/utils/datasets.py", line 36, in getitem img_mix, bboxes_mix = self.parse_annotation(self.__annotations[item_mix]) File "/home/aistudio/work/newyolov3/YOLOV3/utils/datasets.py", line 84, in parse_annotation img, bboxes = dataAug.Resize((self.img_size, self.img_size), True)(np.copy(img), np.copy(bboxes)) File "/home/aistudio/work/newyolov3/YOLOV3/utils/data_augment.py", line 97, in call bboxes[:, [0, 2]] = bboxes[:, [0, 2]] * resize_ratio + dw IndexError: too many indices for array 当我在跑第一个epoch的时候运行60个batchsize出现上述问题

不知道你这是什么问题,你可以调试看看,据我所知别人下载下来是可以用,没有你这个问题

jiangzeshuo commented 4 years ago

谢谢已经解决,我设置了自己的数据集,是自身数据集的问题,在voc的时候当一个xml的diffcult全为1时,之后在图像增广的时候会出现以上问题,