traveller59 / second.pytorch

SECOND for KITTI/NuScenes object detection
MIT License
1.72k stars 722 forks source link

How to evaluate different Lidar-Data #340

Open simaker opened 4 years ago

simaker commented 4 years ago

Hi, i have a different Lidar data set and I want to classify objects with SECOND. How and in which step can i change the Kitti data to my own data. I have no labels and no images according to the Data. The training with Kitti has worked

Thank you

chrispiro commented 4 years ago

Hello,

I have the same problem, I would like to use the pre-trained model to perform inference on arbitrary Lidar data.

Is this possible? Is the data preparation step essential for this to work?

Thanks in advance!

simaker commented 4 years ago

it is possible. Just convert your data that it fits the KITTI-Format (add reflection intesity if necessary). Then replace your data with the data in the KITTI Dataset. The datapreparation steps are essential, because they create GT and remove points outside the visible area of the camera. For inference put your data in the testfolder and use the train.py -evaluate skript and comment the lines, that are connected to GT. Also change in the Config to kitti_infos_test.pkl. if you have further questions, feel free to ask them.

chrispiro commented 4 years ago

Thank you for the reply,

How can I run create_data.py if I don't have any training file?

The script create_data.py gives an error if I don't have the training files or if I miss some .bin files in the velodyne test folder.

Let's say I just have one .bin file on which I want to do inference (it can also be of the kitti dataset, so we eliminate the conversion problem). Can I do this without having all the files?

Thank you in advance!

simaker commented 4 years ago

just create the whole KITTI-Dataset and replace your files with the files in the Testfolder and use the modified evaluation step. The results (coordinates etc. ) will be stored in the .pkl file. You only need to replace the .bin files, since the camera data will only be used for indexing and visualization in the viewer

chrispiro commented 4 years ago

Ok! Thank you for your advice! It's very helpful.

I will update here with the progress of my work.

chrispiro commented 4 years ago

Hello,

I'm still stuck with the problem because I am using google colab and it's difficult to use all the dataset. Google colab disk space isn't large enough and if I want to load all the data from google drive it's very slow.

That's why I would prefer to just use a subset of the test set (just 100 .bin files out of 7580) and perform inference on this subset using the pre-trained model.

Is there a way to do this without importing the training set and the other test files?

Thank you in advance!

simaker commented 4 years ago

I'm not shure but i think you have to have to edit the train and val and test txt files. Tere it is defined what files are used for training or inference (test.txt)

chrispiro commented 4 years ago

Ok, thank you very much! I was able to use just the files I needed by modifying the .txt files located in second.pytorch/second/data/ImageSets/