RobustGNSS
Robust GNSS Processing With Factor Graphs
Install / Use
/learn @wvu-navLab/RobustGNSSREADME
RobustGNSS
<br/>Please see https://github.com/wvu-navLab/ICE for an updated implementation of the robust estimators presented in this repo as well as a new robust estimators titled Incremental Covariance Estmation (ICE).
<br/>This repository contains a modified version of GTSAM, which has been updated for GNSS signal processing. To enable RINEX file reading and GNSS observation modeling, the GPSTk library is utilized. A detailed description of the modification can be found in "Robust Navigation In GNSS Degraded Environment Using Graph Optimization". This software has been cleared for public release by the USAF Case # 88ABW-2017-3893
For information on incorporating carrier-phase observations, please see "Evaluation of Kinematic Precise Point Positioning Convergence with an Incremental Graph Optimizer". The software released with this paper can be found here: https://github.com/wvu-navLab/PPP-BayesTree.
<br/> <br/>If you utilize this software for an academic purpose, please consider using the following citation:
@article{watson2018robust,
title={Robust navigation in GNSS degraded environment using graph optimization},
author={Watson, Ryan M and Gross, Jason N},
journal={arXiv preprint arXiv:1806.08899},
year={2018}
}
<br/>
<br/>
## How to Install
1) Requirements/Recommendations
Required
- Boost -->
sudo apt-get install libboost-all-dev - CMake -->
sudo apt-get install cmake
Recommended
- Intel TBB -->
sudo apt-get install libtbb-dev - Intel MKL
2) Clone repository to local machine
- RobustGNSS -->
git clone https://github.com/wvu-navLab/RobustGNSS.git
3) Build
cd RobustGNSS/gtsam;
mkdir build;
cd build;
cmake ..
make
4) Test
Contained within the RobustGNSS/gtsam/gnssExamples directory are several examples. As an initial test, let's run the non-robust optimization script. First, move into the GTSAM build directory.
cd RobustGNSS/gtsam/build
Next, the RINEX file saved in the RobustGNSS/gtsam/gnssData directory must be converted to a format readable by GTSAM. ( It should be noted that GTSAM only looks for data files in the RobustGNSS/gtsam/gnssData directory, so all new data files must be stored there. )
./gnssExamples/rnx2Gtsam --obs dec12.16o --sp3 dec12.sp3 > ../gnssData/dec12.gtsam
Now, we can run the optimization script over the newly generated data file.
./gnssExamples/l2Example -i dec12.gtsam --dir test1 --writeENU
Finally, we can look at the ground trace of the solution,
cd test1;
gnuplot
plot 'enu.sol' using 2:3 with points
For a complete list of available options, run the command provided below.
./gnssExamples/l2Example -h
Related Skills
node-connect
337.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
337.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.3kCommit, push, and open a PR
