Skip to content
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

Implementation questions #2

Open
Mfertega opened this issue Jan 24, 2021 · 3 comments
Open

Implementation questions #2

Mfertega opened this issue Jan 24, 2021 · 3 comments

Comments

@Mfertega
Copy link

Hi @tjtanaa, first of all thank you. I have been working with your code and this package but I have a couple of questions. In your repository with the code you have 3 versions, the _v2, the v2_2 and the mtr. My application is for detecting cars, pedestrian and cyclists with an VLP-16. I know the version _v2_2 does not fit that porpoise, and I know the v2 version will work, but I don't understand clearly the mtr version.
Adding to this question, I would appreciate if you could tell me how do you have the kitti dataset arrange, in order to minimize the changes to your code.
The final question is about the training, I have training the neural network of the first repo but I always obtained bad results compared to the model submitted by the author and the paper, do you have a value of the loss for me to check or maybe the number of epochs?.
Thank you for your time.

@tjtanaa
Copy link
Owner

tjtanaa commented Jan 29, 2021

Hi @tjtanaa, first of all thank you. I have been working with your code and this package but I have a couple of questions. In your repository with the code you have 3 versions, the _v2, the v2_2 and the mtr. My application is for detecting cars, pedestrian and cyclists with an VLP-16. I know the version _v2_2 does not fit that porpoise, and I know the v2 version will work, but I don't understand clearly the mtr version.
Adding to this question, I would appreciate if you could tell me how do you have the kitti dataset arrange, in order to minimize the changes to your code.
The final question is about the training, I have training the neural network of the first repo but I always obtained bad results compared to the model submitted by the author and the paper, do you have a value of the loss for me to check or maybe the number of epochs?.
Thank you for your time.

@Mfertega .

  1. The working code should be v2_2. Moreover, for the version of pointpillar that I implemented does not classify foreground objects. Basically, it same as the original paper where a single detector is specialised for detecting single class object.

Please ignore the mtr. It refers to my toy dataset.

  1. Basically, I ported the preprocessing code from PointRCNN and abstracted their code a-bit into the det3d repository. It is my own repository for preprocessing point cloud data and hope to serve as a dataloader for point cloud dataset. However, in PointRCNN, their point cloud is in the camara coordinate system. So, in the point_pillar_custom_processors_v2_2.py, class PointPillarCustomDataGenerator(), I have convert the point cloud back to the velodyne coordinate system, since point pillar is supposed to take in the point cloud in a Z-up coordinate system.

  2. I have try bench-marking once. It doesn't reach the actual performance as the original paper but it is comparable. I did not further fine tune the model.

FYI, the dataset directory should imitate the PointRCNN dataset directory.

'det3dshould be installed as a python module into your environment throughpython setup.py install`

To generate the augmented training dataset, try running python det3d/tests/test_pc_kitti_database_generator.py from the det3d repository. But do change the path accordingly.

After generating the database, you could change the path in point_pillars_training_custom_run_v2_2 to the kitti dataset and the database.

@Mfertega
Copy link
Author

Mfertega commented Feb 3, 2021

There is not an easy way to implement the 3 different classes (car, pedestrian and cyclist) detection of the kitti dataset? Because the version implemented in the paper does classify the objects in multiple classes rigth?

Thanks for your time

@camlaedtke
Copy link

@Mfertega Did you resolve your issue? I think I am having a similar problem.

My goal is to implement the setup in the original repo with as few changes as possible. I corrected the various bugs outlined here, and then trained the model over 160 epochs (here is a notebook showing the changes I made and the training results).

Even though I made the corrections, the model still produces bad results. And if you look at the learning curves, the validation loss increases for some reason.

Any idea what's going on?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants