跑一个基于MMDetection的水下声学图像目标检测实验,准备训练却得到如下报错:
Traceback (most recent call last):
File "/home/jndx/Uodac_sonar-master/./tools/train.py", line 265, in <module>
main()
File "/home/jndx/Uodac_sonar-master/./tools/train.py", line 254, in main
train_detector(
File "/home/jndx/Uodac_sonar-master/mmdet/apis/train.py", line 94, in train_detector
_dist_train(
File "/home/jndx/Uodac_sonar-master/mmdet/apis/train.py", line 174, in _dist_train
runner.run(data_loaders, cfg.workflow, cfg.total_epochs)
File "/home/jndx/anaconda3/lib/python3.9/site-packages/mmcv/runner/runner.py", line 359, in run
epoch_runner(data_loaders[i], **kwargs)
File "/home/jndx/anaconda3/lib/python3.9/site-packages/mmcv/runner/runner.py", line 262, in train
outputs = self.batch_processor(
File "/home/jndx/Uodac_sonar-master/mmdet/apis/train.py", line 74, in batch_processor
losses = model(**data)
File "/home/jndx/anaconda3/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)
File "/home/jndx/anaconda3/lib/python3.9/site-packages/torch/nn/parallel/distributed.py", line 886, in forward
output = self.module(*inputs[0], **kwargs[0])
File "/home/jndx/anaconda3/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)
File "/home/jndx/Uodac_sonar-master/mmdet/core/fp16/decorators.py", line 49, in new_func
return old_func(*args, **kwargs)
File "/home/jndx/Uodac_sonar-master/mmdet/models/detectors/base.py", line 137, in forward
return self.forward_train(img, img_meta, **kwargs)
File "/home/jndx/Uodac_sonar-master/mmdet/models/detectors/cascade_rcnn.py", line 189, in forward_train
x = self.extract_feat(img)
File "/home/jndx/Uodac_sonar-master/mmdet/models/detectors/cascade_rcnn.py", line 117, in extract_feat
x = self.backbone(img)
File "/home/jndx/anaconda3/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)
File "/home/jndx/Uodac_sonar-master/mmdet/models/backbones/resnet.py", line 588, in forward
x = self.conv1(x)
File "/home/jndx/anaconda3/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)
File "/home/jndx/anaconda3/lib/python3.9/site-packages/torch/nn/modules/conv.py", line 446, in forward
return self._conv_forward(input, self.weight, self.bias)
File "/home/jndx/anaconda3/lib/python3.9/site-packages/torch/nn/modules/conv.py", line 442, in _conv_forward
return F.conv2d(input, weight, bias, self.stride,
TypeError: conv2d() received an invalid combination of arguments - got (DataContainer, Parameter, NoneType, tuple, tuple, tuple, int), but expected one of:
* (Tensor input, Tensor weight, Tensor bias, tuple of ints stride, tuple of ints padding, tuple of ints dilation, int groups)
didn't match because some of the arguments have invalid types: (DataContainer, Parameter, NoneType, tuple, tuple, tuple, int)
* (Tensor input, Tensor weight, Tensor bias, tuple of ints stride, str padding, tuple of ints dilation, int groups)
didn't match because some of the arguments have invalid types: (DataContainer, Parameter, NoneType, tuple, tuple, tuple, int)
网上查阅资料debug,说是数据集的问题,但我检查没啥问题,广大网友能帮助帮助我吗?