Eaphan / GLENet

GLENet: Boosting 3D Object Detectors with Generative Label Uncertainty Estimation [IJCV2023]
https://arxiv.org/abs/2207.02466
Apache License 2.0
186 stars 12 forks source link

FileNotFoundError: [Errno 2] No such file or directory: 'kitti/kitti_infos_train_ori.pkl' #7

Closed mihui20 closed 1 year ago

mihui20 commented 1 year ago

I have an error in the step 1.3: Generate and Save Label Uncertainty When I run 'change_gt_infos.py ', I cannot find 'kitti_infos_train_ori.pkl'. Traceback (most recent call last): File "change_gt_infos.py", line 14, in with open(file_path, 'rb') as f: FileNotFoundError: [Errno 2] No such file or directory: 'kitti/kitti_infos_train_ori.pkl' In which step was this file generated?

Eaphan commented 1 year ago

In the step of preparing data, we generate the data infos by running the following command:

python -m pcdet.datasets.kitti.kitti_dataset create_kitti_infos tools/cfgs/dataset_configs/kitti_dataset.yaml

Then we can get the original kitti/kitti_infos_trainpkl, it's used by change_gt_infos.py to generate files containing the label uncertainty.

mihui20 commented 1 year ago

Thank you for your answer. I still have some questions. Until I run 'change_gtinfos.py ', there is no ‘kittir infos train ori.pkl’ in the kitti folder But 'change gt Infos.py' needs to open this file. Do I need to build a 'kitti infos train ori.pkl' by myself to save uncertainty labels? I also have another question. If I want to train my dataset with your model, how can I obtain the kitti dbinfos train wconf V5.pkl and kitti infos train wconf_ v5.pkl

Eaphan commented 1 year ago

Q: Do I need to build a 'kitti infos train ori.pkl' by myself to save uncertainty labels? A: You can just rename the kitti infos_ train.pkl generated by "python -m pcdet.datasets.kitti.kitti_dataset create_kitti_infos tools/cfgs/dataset_configs/kittidataset.yaml" as kitti infos train ori.pkl.

Q: How can I obtain the kitti dbinfos train wconf V5.pkl and kitti infos train wconf v5.pkl? A: The files generated by change_gt_infos.py are 'kitti/kitti_infos_train_wconf_v4.pkl' and 'kitti/kitti_dbinfos_train_wconf_v4.pkl'. The filenames can also be *v5.pkl. You can just change the names by yourself.

mihui20 commented 1 year ago

Sorry, you may not understand what I mean. I would like to ask, you said in step 1.3 "We provide kitti_infos_train.pkl and kitti_dbinfos_train.pkl that contain tag uncertainty." How do I generate these two files using my own dataset?

Eaphan commented 1 year ago

If you want to use your own dataset, you can convert it to the format of KITTI. And use commands like "python -m pcdet.datasets.kitti.kitti_dataset create_kitti_infos tools/cfgs/dataset_configs/kitti_dataset.yaml" to generate required infopkl and gt_database."

mihui20 commented 1 year ago

If I use my own dataset, how do I get 'kitti/kitti infos train wconf v4.pkl' and 'kitti/kitti dbinfos train wconf v4.pkl'

Eaphan commented 1 year ago

I think there is nothing different from the steps described in readme.md except converting your dataset to the format of KITTI. In other words, your should organize your data like this: ├── data │ ├── kitti │ │ │── ImageSets │ │ │── training │ │ │ ├──calib & velodyne & label_2 & image_2 & planes │ │ │── testing │ │ │ ├──calib & velodyne & image_2

mihui20 commented 1 year ago

Thank you for your answer, but my dataset uses multiple views to generate pseudo point clouds. If I didn't have calib and image_ 2. How do I train this program?

Eaphan commented 1 year ago

It seems the calib, image_2 and planes are not necessary.

  1. You need to change the kitti_dataset.py to make it decouple from the calib file.
  2. You should not use the plane during training.