XuyangBai / TransFusion

[PyTorch] Official implementation of CVPR2022 paper "TransFusion: Robust LiDAR-Camera Fusion for 3D Object Detection with Transformers". https://arxiv.org/abs/2203.11496
Apache License 2.0
619 stars 76 forks source link

reproduced performance #32

Closed AndyYuan96 closed 2 years ago

AndyYuan96 commented 2 years ago

Hi, I use 8 v100 to train pillar_L.py, no change for config, kill after epoch15, and comment the gtaug, my final mAP is 0.5326, NDS: 0.6094, do you think is normal? as lower more than 1 point than readme.md result, what is the variance of result after training multi times?

AndyYuan96 commented 2 years ago

I use pytorch1.6 and cuda10.1, other mmdetection3d related environments is same with you.

AndyYuan96 commented 2 years ago

what's more, can you give me some advise for how to train LC.py, I download imgpretrained model from mmdetection3d, and in config file, model's dict, I add pertained = {'img': model.pth}, does it is ok? as I see lots of log say mis match, I am not familiar with mmdetection3d.

XuyangBai commented 2 years ago

Hi, I use 8 v100 to train pillar_L.py, no change for config, kill after epoch15, and comment the gtaug, my final mAP is 0.5326, NDS: 0.6094, do you think is normal? as lower more than 1 point than readme.md result, what is the variance of result after training multi times?

The performance gap seems to be larger than the normal disturbance. Could you please share the detailed results (mATE, mAOE, etc) and your training log?

what's more, can you give me some advise for how to train LC.py, I download imgpretrained model from mmdetection3d, and in config file, model's dict, I add pertained = {'img': model.pth}, does it is ok? as I see lots of log say mis match, I am not familiar with mmdetection3d.

If you use the same mmdet3d version with me, you can use the following script to combine the pretrained TransFusionL and the 2D backbone

img = torch.load('img_backbone.pth', map_location='cpu')
pts = torch.load('transfusionL.pth', map_location='cpu')
new_model = {"state_dict": pts["state_dict"]}
for k,v in img["state_dict"].items():
    if 'backbone' in k or 'neck' in k:
        new_model["state_dict"]['img_'+k] = v
torch.save(new_model, "fusion_model.pth")

Then you can set the load_from of your config file to the path of fusion_model.pth

AndyYuan96 commented 2 years ago

Hi, I use 8 v100 to train pillar_L.py, no change for config, kill after epoch15, and comment the gtaug, my final mAP is 0.5326, NDS: 0.6094, do you think is normal? as lower more than 1 point than readme.md result, what is the variance of result after training multi times?

The performance gap seems to be larger than the normal disturbance. Could you please share the detailed results (mATE, mAOE, etc) and your training log?

what's more, can you give me some advise for how to train LC.py, I download imgpretrained model from mmdetection3d, and in config file, model's dict, I add pertained = {'img': model.pth}, does it is ok? as I see lots of log say mis match, I am not familiar with mmdetection3d.

If you use the same mmdet3d version with me, you can use the following script to combine the pretrained TransFusionL and the 2D backbone

img = torch.load('img_backbone.pth', map_location='cpu')
pts = torch.load('transfusionL.pth', map_location='cpu')
new_model = {"state_dict": pts["state_dict"]}
for k,v in img["state_dict"].items():
    if 'backbone' in k or 'neck' in k:
        new_model["state_dict"]['img_'+k] = v
torch.save(new_model, "fusion_model.pth")

Then you can set the load_from of your config file to the path of fusion_model.pth

can I send the picture of the log to your email? as the file in in my company's computer.

XuyangBai commented 2 years ago

Sure, you can send it to xbaiad@connet.ust.hk

XuyangBai commented 2 years ago

@AndyYuan96 I haven't received your email.

AndyYuan96 commented 2 years ago

@AndyYuan96 I haven't received your email.

Sorry,I sent to you quickly。

AndyYuan96 commented 2 years ago

@AndyYuan96 I haven't received your email.

I try to use my school email and gmail email, both can't send email to xbaiad@connet.ust.hk, the reason is that system can't find connet.ust.hk.

AndyYuan96 commented 2 years ago

@AndyYuan96 I haven't received your email.

Hi,xuyang,now I can reproduce the result of pillar backbone, it’s gtaug problem, with batch_size=4, I can get map 55.58, nds 63.01, thanks for sharing the great work.

XuyangBai commented 2 years ago

Hi, thanks for your feedback, what do you mean by it's gt aug problem? could you explain a little bit as someone else might also meet this problem.

wzc9401 commented 1 year ago

@AndyYuan96 I haven't received your email.

Hi,xuyang,now I can reproduce the result of pillar backbone, it’s gtaug problem, with batch_size=4, I can get map 55.58, nds 63.01, thanks for sharing the great work.

@AndyYuan96 Hi, what's the gt aug problem? I maybe meet the same problem with you. thanks for your reply