wh200720041 / floam

Fast LOAM: Fast and Optimized Lidar Odometry And Mapping for indoor/outdoor localization IROS 2021

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

question about optimization

AlexSeongJu-sr opened this issue · comments

commented

Hi. For the first, thank you for sharing ur excellent work to us.
By the way, I'm confused with some implementation.

As far as I know, LOAM algorithms uses 2 optimizations - 1 for lidar odometry, the other for lidar mapping.
but as I look through ur code, I see just 1 optimization in
'odomEstimationClass.cpp in OdomEstimationClass::updatePointsToMap' function.
and from the name of kdtree - kdtreeSurfMap, I guess it is for lidar-mapping algorithm. Where is the other lidar-odometry algorithm gone?
Am I missing something?

Another question :
in function 'updatePointsToMap' in odomEstimationClass.cpp, there is a variable odom_prediction.
Eigen::Isometry3d odom_prediction = odom * (last_odom.inverse() * odom);
What does this mean? is it predicting the next odometry by previous displacement?
is it in the original paper?

Thank you.

Hi @djflstkddk:

Thanks for posting questions here.

The first optimization is often used for distortion compensation. However, it is not significant for vehicles moving in low speed. To reduce the computational cost, it is removed.

the second question, it is a linear motion prediction of the next pose, which helps to speed up pose convergence. It is different from the original paper.

Hi @djflstkddk:

Thanks for posting questions here.

The first optimization is often used for distortion compensation. However, it is not significant for vehicles moving in low speed. To reduce the computational cost, it is removed.

the second question, it is a linear motion prediction of the next pose, which helps to speed up pose convergence. It is different from the original paper.

Many thanks for your answer. It is true that removing motion compensation saves computational time. But it would be a better way to add this function as an alternative option and let the user to choose whether to use it.