Been training PointPillars for a while and I’ve started modifying more parameters in the training spec file, not just batch_size, num_epochs and lr, etc…
By default, the classes of objects to be detected consist of Car, Pedestrians and Cyclist. Now I would like to train a model to just detect pedestrians.
Considering that we would train a PointPillar model for use in places like a room in a warehouse or factory, meaning that the space may not be too wide and I don’t really need to feed too many small pedestrian objects to train the network if the expected work range in the scene may not exceed 30m or even shorter. That’s why I modified a few more parameters, including xmax in point_cloud_range and filter_by_min_points for class Pedestrian.
I visited the following link to try to get more info, but still had no clue what those parameters would actually do to the model.
I tried modifying xmax to be values that aren’t 69.12, but so far only a few of them would work.
To name a few, 23, 46 and 50. I may encounter error messages by setting it to be some other values like 45 or 30.
Update: Tho the training worked at first with xmax being set to 23, the training crashed in the middle of the process.
Does the value of point_cloud_range affect the network structure?
File "</usr/local/lib/python3.10/dist-packages/nvidia_tao_pytorch/pointcloud/pointpillars/scripts/train.py>", line 3, in <module>
File "<frozen pointcloud.pointpillars.scripts.train>", line 203, in <module>
File "<frozen pointcloud.pointpillars.scripts.train>", line 187, in <module>
File "<frozen pointcloud.pointpillars.scripts.train>", line 160, in main
File "<frozen pointcloud.pointpillars.tools.train_utils.train_utils>", line 126, in train_model
File "<frozen pointcloud.pointpillars.tools.train_utils.train_utils>", line 60, in train_one_epoch
File "<frozen pointcloud.pointpillars.pcdet.models>", line 155, in model_func
File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1527, in _call_impl
return forward_call(*args, **kwargs)
File "<frozen pointcloud.pointpillars.pcdet.models.detectors.pointpillar>", line 30, in forward
File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1527, in _call_impl
return forward_call(*args, **kwargs)
File "<frozen pointcloud.pointpillars.pcdet.models.backbones_2d.base_bev_backbone>", line 121, in forward
RuntimeError: Sizes of tensors must match except in dimension 1. Expected size 125 but got size 126 for tensor number 1 in the list.
The value of the size 125 shown in the message may vary depending on what value I set to xmax.
The spec file:
pointpillars_pedestrian_only.txt (5.1 KB)
Uploading a .yaml file isn’t allowed here so I converted it to be .txt.
5 posts - 2 participants