Paddle3D
Paddle3D copied to clipboard
在SMOKE的配置文件中,我改了input_size 到1920,1080后,会报错如下。(保持原input_size时能正常训练)请问是为什么
Traceback (most recent call last):
File "/project/train/src_repo/Paddle3D/tools/train.py", line 181, in <module>
main(args)
File "/project/train/src_repo/Paddle3D/tools/train.py", line 176, in main
trainer.train()
File "/project/train/src_repo/Paddle3D/paddle3d/apis/trainer.py", line 219, in train
self.cur_iter)
File "/project/train/src_repo/Paddle3D/paddle3d/apis/pipeline.py", line 27, in training_step
outputs = model(sample)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 917, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 907, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/project/train/src_repo/Paddle3D/paddle3d/models/detection/smoke/smoke.py", line 72, in forward
features = self.backbone(images)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 917, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 907, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/project/train/src_repo/Paddle3D/paddle3d/models/backbones/dla.py", line 73, in forward
x = self.base(x)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 917, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 907, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/project/train/src_repo/Paddle3D/paddle3d/models/backbones/dla.py", line 180, in forward
x = getattr(self, 'level{}'.format(i))(x)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 917, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 907, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/project/train/src_repo/Paddle3D/paddle3d/models/backbones/dla.py", line 379, in forward
x1 = self.tree1(x, residual)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 917, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 907, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/project/train/src_repo/Paddle3D/paddle3d/models/backbones/dla.py", line 379, in forward
x1 = self.tree1(x, residual)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 917, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 907, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "/project/train/src_repo/Paddle3D/paddle3d/models/backbones/dla.py", line 278, in forward
out += residual
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/math_op_patch.py", line 264, in __impl__
return math_op(self, other_var, 'axis', axis)
ValueError: (InvalidArgument) Broadcast dimension mismatch. Operands could not be broadcast together with the shape of X = [8, 256, 68, 120] and the shape of Y = [8, 256, 67, 120]. Received [68] in X is not equal to [67] in Y at i:2.
[Hint: Expected x_dims_array[i] == y_dims_array[i] || x_dims_array[i] <= 1 || y_dims_array[i] <= 1 == true, but received x_dims_array[i] == y_dims_array[i] || x_dims_array[i] <= 1 || y_dims_array[i] <= 1:0 != true:1.] (at /data/jenkins_workspace/workspace/paddle_release/paddle/fluid/operators/elementwise/elementwise_op_function.h:240)
[operator < elementwise_add > error]
麻烦问一下,是不是input_size的长宽只能是16的倍数
@stevenk12 感谢反馈,这个问题看起来应该是我们dlanet在处理上下采样时没处理好,这个问题我们后续修复下