pytorch yolov3训练或者剪枝时候会提示下面错误
File "/home/fut/miniconda3/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 435, in __next__ data = self._next_data() File "/home/fut/miniconda3/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 1085, in _next_data return self._process_data(data) File "/home/fut/miniconda3/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 1111, in _process_data data.reraise() File "/home/fut/miniconda3/lib/python3.8/site-packages/torch/_utils.py", line 428, in reraise raise self.exc_type(msg) cv2.error: Caught error in DataLoader worker process 7. Original Traceback (most recent call last): File "/home/fut/miniconda3/lib/python3.8/site-packages/torch/utils/data/_utils/worker.py", line 198, in _worker_loop data = fetcher.fetch(index) File "/home/fut/miniconda3/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/home/fut/miniconda3/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 44, in <listcomp> data = [self.dataset[idx] for idx in possibly_batched_index] File "/home/fut/myproj/ebike_person_prune_yolov3_spp_20210411/utils/datasets.py", line 426, in __getitem__ img, ratio, padw, padh = letterbox(img, self.batch_shapes[self.batch[index]], mode='rect') File "/home/fut/myproj/ebike_person_prune_yolov3_spp_20210411/utils/datasets.py", line 643, in letterbox img = cv2.copyMakeBorder(img, top, bottom, left, right, cv2.BORDER_CONSTANT, value=color) # add border cv2.error: OpenCV(4.5.1) /tmp/pip-req-build-ms668fyv/opencv/modules/core/src/copy.cpp:1445: error: (-215:Assertion failed) top >= 0 && bottom >= 0 && left >= 0 && right >= 0 && _src.dims() <= 2 in function 'copyMakeBorder' 这是因为前面缓存的shapes造成的,删除data文件夹下面train.shapes和test.shapes即可解决问题