JokerJohn / LIO_SAM_6AXIS

LIO_SAM for 6-axis IMU and GNSS.
628 stars 123 forks source link

can not run with exp11_lower_gallery.bag. Please have a look. Thanks a lot #56

Closed lucianzhong closed 1 year ago

lucianzhong commented 1 year ago

roslaunch lio_sam_6axis hilti_pandar.launch

rosbag play exp11_lower_gallery.bag

Get problem and lio_sam crashed:

[ WARN] [1697603513.903255622]: Large velocity, reset IMU-preintegration! terminate called after throwing an instance of 'gtsam::IndeterminantLinearSystemException' what():
Indeterminant linear system detected while working near variable 7061644215716937728 (Symbol: b0).

Thrown when a linear system is ill-posed. The most common cause for this error is having underconstrained variables. Mathematically, the system is underdetermined. See the GTSAM Doxygen documentation at http://borg.cc.gatech.edu/ on gtsam::IndeterminantLinearSystemException for

JokerJohn commented 1 year ago

Have you tried other data sequences in the HLITI dataset, and encountered the same issue? If so, it's highly likely that there's a problem with the LIDAR IMU extrinsic parameters setting. Please ensure that after the extrinsic transformation, the coordinate axes of the IMU align with those of the LIDAR. You may refer to these issues for further guidance. issue20

lucianzhong commented 1 year ago

I have not tried other HLITI dataset. Probably the extrinsic is wrong. Which HLITI dataset have you successfully tried ? 09 is ok or not?

lucianzhong commented 1 year ago

By the way, can lio_sam give accurate height and pitch angle ? I have tried an up_slope from underground park lot,then down slope into this park lot, the height and pitch angle are not accurate until close loop detected.

JokerJohn commented 1 year ago

In fact, about a year ago, I conducted tests on many sequences within the HILTI2022 dataset and confirmed that there was no issue with the extrinsic parameters setting. Recently, I haven't tried it and am not sure whether the preset extrinsics in the code I provided remain consistent with the original. It's worth noting that the HILTI dataset utilizes a PandarXT32 for LiDAR, which has a different coordinate system definition compared to Velodyne/Ouster, etc. If I remember correctly, it's front x, left y, which is 90 degrees different from the traditional coordinate system. You might want to verify that, and you can refer to this issue for further details ISSUE4 Additionally, I recommend that you use the relatively simpler data sequences exp01, exp02, exp03, exp04, and exp05.

image
lucianzhong commented 1 year ago

Thanks a lot.

Please have a look

By the way, can lio_sam give accurate height and pitch angle ? I have tried an up_slope from underground park lot,then down slope into this park lot, the height and pitch angle are not accurate until close loop detected.

JokerJohn commented 1 year ago

By the way, can lio_sam give accurate height and pitch angle ? I have tried an up_slope from underground park lot,then down slope into this park lot, the height and pitch angle are not accurate until close loop detected.

I believe there might be some difficulty. LIO-SAM-6AXIS often performs well on ground robots since its initialization only requires a 6-axis IMU. In situations like going up and down stairs, there might be a lack of features which could lead to failure or a significant decrease in accuracy. I suggest you try using FAST-LIO2 which is based on the direct method; the filter framework might be more robust for such scenarios. Coupled with a reasonable loop closure (similar to LIO-SAM), and by filtering out the loops at the staircases through height filtering, this issue should be able to be resolved.

lucianzhong commented 1 year ago

Got you. Thanks for the replay.