fixstars / cuda-bundle-adjustment

A CUDA implementation of Bundle Adjustment
Apache License 2.0
373 stars 46 forks source link

efficiency on orb-slam2 #1

Open HeadReaper-hc opened 4 years ago

HeadReaper-hc commented 4 years ago

Hi: Outstanding work. I would like to know if you have finished testing on ORB_SLAM2? Can it improve the efficiency of bundle adjustment or local bundle adjustment on ORB_SLAM2? Thanks!

atakagi-fixstars commented 4 years ago

Hi, @HeadReaper-hc

Thank you for your questions.

I would like to know if you have finished testing on ORB_SLAM2?

I have not tested enough, but show an example.

I tested stereo_kitti with sequences/00, where global bundle adjustment is called 4 times in total. Each BA time is shorten by cuda-bundle-adjustment. Note that the first BA of GPU(cuba) contains overhead time caused by memory allocations.

BA CPU(g2o) GPU(cuba)
1 3.96[sec] 1.11[sec]
2 6.78[sec] 0.75[sec]
3 9.16[sec] 1.04[sec]
4 11.84[sec] 1.46[sec]

If latencies (the delay between when an optimization is requested and when it finishes) matter, such as realtime online execution, I believe cuda-bundle-adjustment is efficient.

Regards,

HeadReaper-hc commented 4 years ago

Hi, @atakagi-fixstars Thank you for your result and the result is really amazing. Best regards.