gnss_lib_py: Analyzing GNSS Data with Python

Derek Knowles,Ashwin Vivek Kanhere,Daniel Neamati,Grace Gao
2024-04-13
Abstract:This paper presents gnss_lib_py, a Python library used to parse, analyze, and visualize data from a variety of GNSS (Global Navigation Satellite Systems) data sources. The gnss_lib_py library's ease of use, modular capabilities, testing coverage, and extensive documentation make it an attractive tool not only for scientific and industry users wanting a quick, out-of-the-box solution but also for advanced GNSS users developing new GNSS algorithms. gnss_lib_py has already demonstrated its usefulness and impact through presentation in academic conferences, use in research papers, and adoption in graduate-level university course curricula.
Robotics
What problem does this paper attempt to address?
This paper introduces a Python library called gnss libpy, which aims to simplify the parsing, analysis, and visualization of Global Navigation Satellite System (GNSS) data. The library addresses the complexity and confusion encountered when dealing with GNSS data from different sources, providing a modular, user-friendly, and well-documented tool suitable for a wide range of users from beginners to advanced researchers. gnss libpy supports multiple data formats, including RINEX and NMEA, and automatically converts them into a unified data structure called NavData, facilitating subsequent algorithm processing. It also includes basic positioning algorithms, anomaly detection capabilities, and visualization tools. In addition, gnss libpy has been applied in multiple research papers and adopted by graduate courses at Stanford University, aiding students in quickly understanding and processing GNSS data and promoting teaching and research in the field of GNSS.