vectr-ucla / direct_lidar_odometry

[IEEE RA-L & ICRA'22] A lightweight and computationally-efficient frontend LiDAR odometry solution with consistent and accurate localization.
MIT License
882 stars 186 forks source link

Map generation #14

Closed Srichitra-S closed 2 years ago

Srichitra-S commented 2 years ago

Hi, How is the map generated? What algorithm is used? Can we upload a pcd map of the environment and then apply dlo just for localisation? I assumed dlo as a localisation algorithm, but it seems to take in the point cloud data from the bag file and generate a map on its own.

kennyjchen commented 2 years ago

Hi @Srichitra-S -- DLO is an odometry algorithm and generates both pose (6DOF) and map, which is represented by a set of keyed scans throughout the environment. The algorithm currently doesn't support pure localization on a provided map, but this should be pretty straightforward to implement for those who are interested. Note that depending on the map size and complexity, an initial pose may be required. See my comment here for more information: #11

JACKLiuDay commented 2 years ago

Hi @Srichitra-S -- DLO is an odometry algorithm and generates both pose (6DOF) and map, which is represented by a set of keyed scans throughout the environment. The algorithm currently doesn't support pure localization on a provided map, but this should be pretty straightforward to implement for those who are interested. Note that depending on the map size and complexity, an initial pose may be required. See my comment here for more information: #11

Hi, thank you for your great work. Does DLO have a map saving function, such as saving in pcd format?

kennyjchen commented 2 years ago

Hi @JACKLiuDay --

We've added a new service to save DLO's generated map into a .pcd in v1.4.0 per your request. To use it, please call the following command in a separate terminal window:

rosservice call /robot/dlo_map/save_pcd LEAF_SIZE SAVE_PATH
JACKLiuDay commented 2 years ago

Hi @JACKLiuDay --

We've added a new service to save DLO's generated map into a .pcd in v1.4.0 per your request. To use it, please call the following command in a separate terminal window:

rosservice call /robot/dlo_map/save_pcd LEAF_SIZE SAVE_PATH

Wow, it's awesome! Thank you for great work! We will test it soon.

HomieRegina commented 2 years ago

Hi, I have successfully run through the dataset named dlo_test.bag. But I still can't save successfully .pcb file. The following picture is my running result. image Could you please tell me how to deal this issue? Looking forward to your reply.

HomieRegina commented 2 years ago

Hi @JACKLiuDay --

We've added a new service to save DLO's generated map into a .pcd in v1.4.0 per your request. To use it, please call the following command in a separate terminal window:

rosservice call /robot/dlo_map/save_pcd LEAF_SIZE SAVE_PATH

By the way, do you have the dataset of the second video in License in README.md? We want to try that dataset. Could you please share it with us?

kennyjchen commented 2 years ago

Hi @HomieRegina -- don't forget to change the input arguments of the service call, e.g.

rosservice call /robot/dlo_map/save_pcd 0.25 ~/Downloads

Regarding the multilevel dataset, we'll need to look into if we can publicly share that or not. Thanks.

HomieRegina commented 2 years ago

Hi @HomieRegina -- don't forget to change the input arguments of the service call, e.g.

rosservice call /robot/dlo_map/save_pcd 0.25 ~/Downloads

Regarding the multilevel dataset, we'll need to look into if we can publicly share that or not. Thanks.

Thank you for your reply. But now I have a new problem. When I ran dlo_ test. bag yesterday, rviz can successfully display the map. However, it was not displayed when running today. I tried so many times and the program did not report an error. 图片 Do you know the reason and how to solve it?

kennyjchen commented 2 years ago

Might be a topic name mismatch if you modified the launch file. Try double-checking that.