hku-mars / BALM

An efficient and consistent bundle adjustment for lidar mapping
GNU General Public License v2.0
700 stars 151 forks source link

When will the "lidar inertial odometry application" be open sourced ? #45

Open DingFeng9313 opened 1 year ago

DingFeng9313 commented 1 year ago

Thank you for your excellent work. Looking forward to the "lidar-inertial odometry with sliding window optimization" work. I have a question. I noticed in your paper VII Application-A, only point-plane residual is used. Likewise in FAST-LIO where only point-plane registration is used while in many old loam paper, both point-plane and point-line registration is used. Is there any experiment showing that point-line registration will reduce pointcloud registration performance?

DingFeng9313 commented 1 year ago

Sorry, I didn't read the paper carefully. It already state the reason for dropping edge registration. Still the equations of BALM and BALM2 eludes me. Can you explain in short the difference between balm and balm2. As I understand, the frame is different, BALM2 lidar inertial system adopted FAST-LIO's Ikfom to compensate motion distortion, other than that, the principle behind optimization is the same. Am I correct?

Zale-Liu commented 1 year ago

BALM1 have to iterate each point to compute the Hessian matrix, while BALM2 can aggregate the points corresponding to one pose, as a point cluster. and thus, BALM2 does not require to iterate each point to compute the Hessian matrix. BALM2 can save much time than BALM1.

DingFeng9313 commented 1 year ago

thanks for your reply. As I read more on the code. I found variable fix_point in Class OCTO_TREE_NODE is not used in benchmark application. the size N is always 0 for each voxel. What it is used for. And tras_merge() function is not used as well. How to use it? Can you give a example?

Zale-Liu commented 1 year ago

The open-sourced code is simplified from the BALM2-LIO system (Experiment Application 1 in the paper). The variables you mentioned are used in the SLAM (LiDAR-Inertial odometry), but are not used in this project. That is also why the state in this project includes velocity and bias.