edwardzhou130 / Panoptic-PolarNet

Implementation for Panoptic-PolarNet (CVPR 2021)
BSD 3-Clause "New" or "Revised" License
169 stars 31 forks source link

Please upload files for Nuscenes #15

Open kaxapatel opened 2 years ago

kaxapatel commented 2 years ago

Good work. Are you planning to upload a dataset_nuscenes and train_nuscenes files? I really want to test it.

edwardzhou130 commented 2 years ago

Thanks for your interest in our work!

You can find our dataloader for nuScenes segmentation task in our PolarNet repo (https://github.com/edwardzhou130/PolarSeg/blob/master/dataloader/dataset_nuscenes.py). You will need to change the dataloader to load the panoptic nuScenes annotations rather than semantic annotations.

Our panoptic segmentation results on nuScenes in the paper were trained and evaluated based on our self-generated gt labels, which are different than the actual gt released officially by nuScenes (released after CVPR 2021). We currently have not plan to release those scripts and weights for this reason. However, You can find the reproduced results of our method on the panoptic nuscenes paper.

kaxapatel commented 2 years ago

Thank You for your reply. But my concern is regarding preprocessing task. Can you upload instance_preprocess_nuscenes.pyfile? and I also want to point out for Panoptic you have used some augmentation so how can I use the code from Polarseg? can you guide me?

edwardzhou130 commented 2 years ago

The process for nuScenes preprocessing is similar to SemanticKITTI. You will need to add the same function like this https://github.com/edwardzhou130/Panoptic-PolarNet/blob/3a72f2380a4e505e191b69da596f521a9d9f1a71/dataloader/dataset.py#L72-L116 to save all instance point clouds in a database. The differences between nuScenes and SemnticKITTI are:

  1. The path to load and save the data.
  2. The class label. Panoptic nuScenes saves the gt as 1000*semnatic + instance
  3. You probably also need to create a similar yaml file for nuScenes.
jwma0725 commented 2 years ago

@edwardzhou130 Thanks for your work. Is your generating own panoptic label same as 1000*semantic + instance in Nuscenes? And I also want to know if the pre-trained model is same as semantickitti. Thanks again.

edwardzhou130 commented 2 years ago

@jwma0725 I used the same format in semanticKITTI (instance id is stored in the upper 16bits). The model is trained separately for semanticKITTI and nuscenes because their class and data distribution are different. But you can use the pretrained model in one dataset as the pretrained weight for the other (I did not try this though).

jwma0725 commented 2 years ago

@edwardzhou130 Thanks for your reply. I still have some questions, as follows:

  1. Can you tell me how to get pre-train model about Nuscenes? Or are you planning to upload the pre-train Nuscenes model?
  2. Is there any difference between “Panoptic_SemKITTI.pt”model and “pretrained_weight/Panoptic_SemKITTI_PolarNet.pt”model? Thanks!
edwardzhou130 commented 2 years ago
  1. We have no plan to upload our previous model because it is trained and evaluated on a different annotation than the official panoptic nuscenes.
  2. pretrained_weight/Panoptic_SemKITTI_PolarNet.pt is the saved weight I got from running the training script. And it can be used to produce the result we reported in the paper.
kaxapatel commented 2 years ago

Thank you for your response @edwardzhou130. I am trying as you told me but getting this error when I try to run dataloader. Screenshot from 2022-07-24 13-05-22 . I have changed lidarseg to panopticseg in line 124.