This package does slam/odometry evaluation according to metrics in https://ieeexplore.ieee.org/document/6385773
- Relative pose error at time step i:
where:
-
- ground truth pose in SE(3) at time step , a.k.a. homogeneous transformation matrix -
- ground truth pose in SE(3) at time step -
- estimated pose in SE(3) at time step , a.k.a. homogeneous transformation matrix -
- estimated pose in SE(3) at time step
- Relative pose error of the whole trajectory:
where:
-
- translational part of matrix , indexes
- Average relative pose error over possible time intervals
where:
-
- step size, in this implementation the biggest step size is half of the trajectory size
This is a ros package, so you should have ros installed, the only additional requirement is Eigen3 https://eigen.tuxfamily.org/dox/TopicCMakeGuide.html
- Build package
catkin build slam_evaluation
- Run executable
rosrun slam_evaluation slam_evaluation
The package subscribes on 2 topics: both of them should be of type nav_msgs::Odometry
. Their initial names are: /unitree_odom
and /loam_odom
After all the calculations resulting rmse is published into topic rmse