Compare Tracking Sequences¶
The algorithm compares two tracking streams with timestamps in terms of certain error metrics.
Input¶
Two tracking streams with timestamps.
Output¶
Statistics over the tracking samples for the two error metrics: Absolute Trajectory Error (ATE) and Relative Pose Error (RPE). Statistics for these two will be logged to the console and are accessible in the API. For details regarding the metrics consider reading this paper.
Description¶
The algorithm requires two tracking streams with timestamps and can deal with duplicated (timestamp, matrix) pairs. The timestamps are necessary to define the correspondances between the tracking streams. Given those the streams are preregistered to make them use a common coordinate system. If Use auto alignment is not set, this preregistration is skipped and the error will be equal to the pose between two matching sample pairs of the two streams.
The following configuration options are possible:
- Compute ate: Flag that indicates if the ATE should be calculated
- Compute rpe: Flag that indicates if the RPE should be calculated
- Ref idx: Index (0 or 1) of the reference tracking stream
- Use auto alignment: Flag that indicates if the auto alignment should be applied before the matching stream poses are compared
- Use interpolation: If set, linear interpolation of rotation angle and translation is performed based on the timestamps, otherwise nearest neighbour interpolation is used
- Use timestamp filtering ate: If set, only tracking samples with a timestamp with a maximal distance of Timestamp filtering ate max distance are considered a match, also double matches are not possible
- Timestamp filtering ate max distance: Maximal temporal distance between two matching samples from each tracking stream, used for timestamp filtering in ATE
- Use timestamp filtering rpe: If set, only tracking samples with a timestamp with a maximal distance (median based threshold) are considered a match
- Iter delta rpe: Integer value that represents a skip factor for target timestamps to be used
- Allow duplicates: If set, duplicates in (timestamp, matrix) pairs are accepted and only counted once
- Error convention rpe: Specifies the way of computing the relative pose error.
Paper
:- error = (Q_i^-1 * Q_i+1)^-1 * (P_i^-1 * P_i+1)
EvalScripts
:- error = (P_i+1^-1 * P_i)^-1 * (Q_i+1^-1 * Q_i)