-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to train model with BEVFusion on Kitti Dataset instead of nuScenes dataset? #2617
Comments
We haven't tried these, so you can try it yourself. But note that unlike nuScenes, which has six surround-view images, KITTI only has two foreground images, which may make it difficult for BEVFusion. |
Okay. Thank you @sunjiahao1999 for responding. If possible can you please check the following BEVFusion config for Kitti Dataset to see if everything looks good to you? When I am doing training using the following Kitti dataset config, I am getting the error "File "/data2/saket/tp_mmdetection3d-master/mmdetection3d/projects/BEVFusion/bevfusion/loading.py", line 135, in transform The above error is connected with def transform(self, results: dict) -> Optional[dict]: ("Call function to load multi-view image from files"). It does not have results dict. Is this problem connected with multi-view image? How can I solve the problem? Thank you so much! Config: voxel_size = [0.05, 0.05, 0.1] metainfo = dict(classes=class_names) model = dict( train_pipeline = [ test_pipeline = [ train_dataloader = dict( val_dataloader = dict( param_scheduler = [ db_sampler = dict( runtime settingsval_evaluator = dict( optim_wrapper = dict( Default setting for scaling LR automatically-
|
@sunjiahao1999, I was earlier using an older version of infos.pkl and was getting error "TypeError: The annotations loaded from annotation file should be a dict, but got <class 'list'>!". I updated the infos.pkl with new versions then the problem was solved. Do you still think this could be because of the older version of infos.pkl or it can be because of a changed dataset in config? Thank you so much! |
@schatur2 Thank you |
@lehnasamia, I am trying to train BEVFusion model with the kitti_config config by solving the above key_cam problem. |
I think it is a quite heavy work to transfer bevfusion to kitti. The structure of kitti_infos_train.pkl and nuscenes_infos_train.pkl are quite different, such as info[‘instances’] and info[‘images’]. So, in my opinion, to successfully train bevfusion on kitti, you should not only rewrite config.py but also the transformation function in loading.py. And now I am trying to do that. |
Okay @liyih. Please let me know once you have things setup on kitti dataset. Thank you so much! |
@schatur2 I have rewriten loading.py(projects/BEVFusion/bevfusion/loading_kitti.py) and config.py(projects/BEVFusion/configs/bev_kitti.py) and now the problem you mention before Copyright (c) OpenMMLab. All rights reserved.import copy import mmcv from mmdet3d.datasets.transforms import LoadMultiViewImageFromFiles @TRANSFORMS.register_module()
The config.py are as follows: custom_imports = dict( voxel_size = [0.05, 0.05, 0.1] model = dict( dataset settingsdataset_type = 'KittiDataset' train_pipeline = [
] test_pipeline = [ modality = dict(use_lidar=True, use_camera=True) val_dataloader = dict( optim_wrapper = dict( vis_backends = [dict(type='LocalVisBackend')] And you should add 'BEVLoadKittiImageFromFiles' into 'projects/BEVFusion/bevfusion/init.py' |
Hi @liyih, Great. Thank you. Looking at your errors it seems to me that this might be connected to the num_views in kitti dataset? Regards, |
Have you solved it? |
@Lcl159 I find there is an easy way to solve this problem. In the class DepthLSSTransform author put the depth as priori to calculate the distribution of LSS, so it needs to inverse the augmenting process to calculate the right depth. However, in the original paper it doesn't add any depth as prior and there is no performance loss. Due to the bug appears in the inverse the augmenting process when using KITTI, I advise to use LSSTransform instead of DepthLSSTransform. You can change it easily in config. |
Wow, that's great. Can you give me your contact info? |
Have you implemented bevfusion running on kitti? |
how do you reslove KeyError: 'img_path'"? |
ok i have already finished it ! |
@liuyuansheng624 |
13731082126微信联系
发自我的iPhone
…------------------ Original ------------------
From: Alranen ***@***.***>
Date: Mon,Mar 4,2024 11:39 AM
To: open-mmlab/mmdetection3d ***@***.***>
Cc: liuys ***@***.***>, Mention ***@***.***>
Subject: Re: [open-mmlab/mmdetection3d] How to train model with BEVFusion onKitti Dataset instead of nuScenes dataset? (Issue #2617)
|
yes i can please wechat 13731082126
发自我的iPhone
…------------------ Original ------------------
From: Dahjung Chung ***@***.***>
Date: Thu,Mar 7,2024 3:55 PM
To: open-mmlab/mmdetection3d ***@***.***>
Cc: liuys ***@***.***>, Mention ***@***.***>
Subject: Re: [open-mmlab/mmdetection3d] How to train model with BEVFusion onKitti Dataset instead of nuScenes dataset? (Issue #2617)
|
Hello,Have you solved it? |
Can you share me Kitti config file for BEVFusion? @liyih |
Hi @liyih , grate job, appreciate it. |
Model/Dataset/Scheduler description
Hello Everyone,
I am training mvxnet model with the default config file available in the repository, which is for the point_fusion and kitti dataset. I wanted to try other fusion methods with mvxnet model.
I see BEVFusion code added in the repository with the nuScenes dataset. What config settings I would need to change for adapting BEVFusion for Camera Lidar3d fusion with the Kitti dataset?
Thank you so much for your help!
Regards,
Saket
Open source status
Provide useful links for the implementation
No response
The text was updated successfully, but these errors were encountered: