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

Can not achieve the reported result

Tom-Huang opened this issue · comments

Hello, thank you very much for providing such great work for the community. I learned a lot from your code.

However, when I tried to evaluate the sequence 00 in the kitti dataset, I can not achieve the same relative translational error. I got 1.12% instead of the reported 0.51% on the README.md page. I save the lidar odometry result and convert it to kitti gt format with the following code:

 // read calib
Eigen::Matrix4d Tr;
Eigen::Matrix4d Tr_inv(Eigen::Matrix4d::Identity());
readCalib(calib_file, 0, Tr);

Tr_inv = Tr.inverse();

std::vector<Eigen::Matrix4d, Eigen::aligned_allocator<Eigen::Matrix4d>> lidar_poses;
readTraj(lidar_est_file, lidar_poses);

// transform the lidar traj to cam
std::vector<Eigen::Matrix4f, Eigen::aligned_allocator<Eigen::Matrix4f>> cam_poses;
auto first = Tr * lidar_poses.front().inverse();
for (auto& lidar_pose : lidar_poses) {
    auto cam_pose = first * lidar_pose * Tr_inv;
    cam_poses.push_back(cam_pose.cast<float>());
}

saveTraj(camera_seq_est_dir + seq + ".txt", cam_poses);

Is there anything wrong I did or do I need to tune some parameters in the system? If so, could you share how you tune the system? Thank you in advance!