Skip to content

Trajectory Accuracy and Error Evaluation

George Kouros edited this page Aug 30, 2019 · 2 revisions

Now that you have all watched Stereo Visual Odometry and Visual SLAM in action, it is time to do what Kapernikov does best…
Manage Data

Task 1: Extend the C++ or Python ros node in trajectory_evaluation package that extracts trajectory and ground truth messages. You will be provided with rosbag and csv files and you can choose either to write a ROS subscriber or a simple csv parser. You can also work with a rosbag dataset or trajectory and ground truth csv files for convenience. Download them and put them in /path/to/tech-session-visual-odometry/datasets/gazebo/. You can play the rosbag dataset with:

$ rosbag play /path/to/rosbllag-dataset.bag # add -l for playing in a loop

Task 2: Create fancy plots of the trajectories
Task 3: Clean the data (align and interpolate in time)
Task 4: Calculate and plot translation (x,y,z) and rotation (wx,wy,wz,w) errors
Task 5: Create more fancy plots. You can get some ideas from: link (Optional) Task6: Create a new rosbag file including trajectory, ground truth AND the optimized map graph of VSLAM (topic: (/ackermann_vehicle)/rtabmap/mapGraph), align the three and apply tasks 2-5.

Further instructions:

  1. Use gazebo_stereo_odometry_and_GT_last_messages.bag with two simple ros subscriber to receive the two messages
  2. Or create a csv parser for the gazebo_trajectory_ground_truth.csv and gazebo_trajectory.csv
Clone this wiki locally