mikacuy / pointnetvlad

PointNetVLAD: Deep Point Cloud Based Retrieval for Large-Scale Place Recognition, CVPR 2018
MIT License
351 stars 72 forks source link

A question about trasplanting the model to KITTI dataset. #3

Closed songjiaxina closed 5 years ago

songjiaxina commented 5 years ago

Hi! Thanks for your great work and code release. Recently I am also doing some research on 3d-relocalization. After reading your paper and part of code, I am trying to convert the kitti data to the format which this code can run. And I wonder how strong is the generalization ability of this model? Will the recall decrease much? Have you tested before? Great thanks!!

mikacuy commented 5 years ago

Hi. I haven't tested on KITTI before because the work mainly uses datasets where an area is repeatedly visited multiple times under different weather/lighting conditions. That's why the Oxford dataset was chosen as the initial benchmark.

When training on Oxford and then testing on the inhouse datasets, there was a decrease in performance of about ~15%, but top 1% accuracy was still above 60%, so the method should be feasible. But after fine-tuning, the results went back up again. I suspect that issue is not only on generalization of the model design, but also that the training data is limited (especially compared to image datasets) that caused the decrease in performance when tested on unseen datasets.

songjiaxina commented 5 years ago

OK! Great! Thanks for your details!!

kxhit commented 4 years ago

@songjiaxina Hi! Have you tested the code on KITTI dataset? Is there any preprocessing code of KITTI dataset? Thanks!

kxhit commented 4 years ago

Hi! @mikacuy @songjiaxina I test the refined pretrained model on KITTI odometry dataset. I get the submaps by using ground truth poses and preprocessing similar to the paper. The PR curve appears good. However, PointNetVLAD seems not robust enough to rotation. Note that sequence 08 has reverse loop. I will try to train on KITTI dataset and I believe the results will be better.

sequence 00: 00_PV_pr_curve

with random rotation around z-axis (yaw): 00_PV_pr_curve

sequence 02: 02_PV_pr_curve

with random rotation around z-axis (yaw): 02_PV_pr_curve

sequence 05: 05_PV_pr_curve

with random rotation around z-axis (yaw): 05_PV_pr_curve

sequence 08: 08_PV_pr_curve

with random rotation around z-axis (yaw): 08_PV_pr_curve