minwoo0611 / MA-LIO

Asynchronous Multiple LiDAR-Inertial Odometry using Point-wise Inter-LiDAR Uncertainty Propagation
GNU General Public License v2.0
287 stars 36 forks source link

Running problems on public datasets #5

Closed baibai09 closed 1 year ago

baibai09 commented 1 year ago

Very good work! When I use a single LIDAR, it always crashes. I have tried various solutions to this problem, but none of them have been successful. As a result, I am turning to you for help.

  1. LIO-SAM Dataset walk The map will drift and the program will crash. err10 err11

  2. utbm dataset utbm The program just crashes err09

minwoo0611 commented 1 year ago

Dear @baibai09,

Firstly, thank you for testing MA-LIO. I find that a bit more information would greatly assist me in fully understanding and addressing the issue at hand.

Could you elaborate on how you have modified the code to accommodate different datasets?

Resolving the issue using solely the image you shared presents a significant challenge. Additional related materials, such as snippets of your code change, would be highly beneficial in facilitating a more efficient and accurate troubleshooting process.

Additionally, I have not yet executed tests using the UTBM dataset. Nonetheless, the LIO-SAM walking dataset is functioning without any issues when interfaced with the MA-LIO system.

Screenshot from 2023-07-03 07-01-54

Screenshot from 2023-07-03 07-02-11

baibai09 commented 1 year ago

Thank you very much for your reply!

Here are some of my configuration changes and the code: Is it because I'm using Ubuntu 18.04, not Ubuntu 20.04?

err14 err10 err11 err12

minwoo0611 commented 1 year ago

Thank you for sharing your code!

The things you change are all correct! However, the extrinsic between LiDAR and IMU seems be false.

When we see the config.yaml of LIO-SAM, the extrinsic between two sensors is [-1, 0, 0, 0, 1, 0, 0, 0, -1]. In LIO-SAM, extrinsic calibration is defined as IMU to LiDAR; however, our definitions is LiDAR to IMU (In fact, it does not a problem in the problem as the inverse of extrinsic is sams) with the form of quaterion [qw, qx, qy, qz]. Therefore, the extrinsic_R in yaml file should be changed as [0, 0, 1, 0].

I hope that this answer can solve you problem.

baibai09 commented 1 year ago

Thank you for your assistance. Unfortunately, the issue persists even after I changed the external reference. I will continue to investigate the problem. Thank you again for your response.