Train a multihead model using the KITTI dataset
cyhasuka opened this issue · comments
Hello,
Thank you for the great work you've done!
I'm a beginner, and I currently have a model that I trained by myself based on the KITTI dataset using the methods provided by the OpenPCDet project team. However, it doesn't work properly with your code.
I tried to train a multi-head model using the KITTI dataset by modifying the pointpillar.yaml file with DENSE_HEAD: NAME: AnchorHeadMulti and added RPN_HEAD_CFGS based on the three object categories in the KITTI dataset. The model trained successfully and was converted into a TensorRT engine, but it doesn't run correctly.
The output time, IDs and scores are confusing, and the data in the demo_boxes.txt output file are all zeros.Here is an example output:
------------------------------------
Module Time
------------------------------------
Preprocess 8.81295 ms
Pfe 534.183 ms
Scatter 3.85605 ms
Backbone 80.4403 ms
Postprocess 8.5541 ms
Summary 636.175 ms
------------------------------------
id: 0 labels: 2
scores: 0.071332
id: 1 labels: 2
scores: 0.0552087
id: 2 labels: 0
scores: 0.117978
id: 3 labels: 0
scores: 0.111822
id: 4 labels: 0
scores: 0.110663
id: 5 labels: 0
scores: 0.108945
.......
id: 2476 labels: 0
scores: 0.0462514
id: 2504 labels: 539768118
scores: 0.161591
id: 2516 labels: 1685202208
scores: 0.161591
id: 2528 labels: 16873488
scores: 0.161591
id: 2544 labels: 17134530
scores: 0.646273
id: 3157 labels: 6146
scores: 0.63662
id: 3177 labels: 255
scores: 0.5
id: 3229 labels: 7
scores: 0.5
id: 3233 labels: 2
scores: 0.5
id: 3529 labels: -128
scores: 0.166667
id: 3541 labels: 6
scores: 0.0416667
id: 3549 labels: 0
scores: 1
demo_boxes.txt:
0 0 0 0 0 0 0
0 0 0 0 0 0 0
......
0 0 0 0 0 0 0
Could you please advise on how to resolve these issues? Any guidance you can provide would be greatly appreciated.
Thank you for your help!
checkout the RPN_HEAD_CFGS
classes layout in cbgs_pp_multihead.yaml and the output feature layout from backbone in postprocess.cu. They are all one-to-one correspondence, like
- cls_pred_0 := ['car']
- cls_pred_12 := ['truck', 'construction_vehicle']
If you want to modify the output categories from nuscenes to kitti, the following points need to be noted.
- Output variable of backbone (float*)
- The whole post-process function
In addition, I don't know your full running situation, maybe there also have some other problems. Please be patient with this, it's may a great learning process for you~
Good luck.
Thank you very much for your suggestions and proposed changes.
I will follow your approach and make relevant attempts, and will provide updates on the progress below. Once again, thank you for your generous assistance!