{'fraction_non_alphanumeric': 0.026704545454545453, 'fraction_numerical': 0.0022727272727272726, 'mean_word_length': 5.13588850174216, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Field Testing and Evaluation of Single-Receiver GPS Odometry for Use in Robotic Navigation

Mobile robots rely on odometry to navigate in areas where localization fails. Visual odometry (VO), for instance, is a common solution for obtaining robust and consistent relative motion estimates of the vehicle frame. In contrast, Global Positioning System (GPS) measurements are typically used for absolute positioning and localization. However, when the constraint on absolute accuracy is relaxed, accurate relative position estimates can be found with one single-frequency GPS receiver by using time-differenced carrier phase (TDCP) measurements. In this paper, we implement and field test a single-receiver GPS odometry algorithm based on the existing theory of TDCP. We tailor our method for use on an unmanned ground vehicle (UGV) by incorporating proven robotics tools such as a vehicle motion model and robust cost functions. In the first half of our experiments, we evaluate our odometry on its own via a comparison with VO on the same test trajectories. After 4.3 km of testing, the results show our GPS odometry method has a 79% lower drift rate than a proven stereo VO method while maintaining a smooth error signal despite varying satellite availability. GPS odometry can also make robots more robust to catastrophic failures of their primary sensor when added to existing navigation pipelines. To prove this, we integrate our GPS odometry solution into Visual Teach and Repeat (VT&R), an established visual, path-following navigation framework. We perform further testing to show it can maintain accurate path following and prevent failures in challenging conditions including full camera dropouts. Code is available at https://github.com/utiasASRL/cpo.