Can not achieve the reported result
Tom-Huang opened this issue · comments
Tom-Huang commented
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!