A user-friendly GNSS Time Series Prediction toolbox combining Deep Learning and Signal Decomposition
TS_Predictor is an open-source MATLAB toolbox for predicting Global Navigation Satellite System (GNSS) coordinate time series. It integrates signal decomposition methods with machine learning and deep learning models, providing a complete workflow from raw data preprocessing to prediction accuracy assessment.
- Data Import: Supports multiple formats from NGL, PBO, and CEA data centers
- Preprocessing: Missing data interpolation, outlier detection, offset correction, CME removal
- Signal Decomposition: EMD, EEMD, CEEMD, CEEMDAN, ICEEMDAN, VMD
- Prediction Models: SVM, RBF, ELM, BP, LSTM, GRU
- Accuracy Evaluation: RMSE, MAE, sMAPE, R², and unified WQE index
- Visualization: Interactive plots and exportable results
- MATLAB 2024b or later
- Deep Learning Toolbox
- Signal Processing Toolbox
- Statistics and Machine Learning Toolbox
-
Download or clone this repository:
git clone https://github.com/SpaceGeodesyLab/TS_Predictor.git
-
Open MATLAB and navigate to the TS_Predictor directory
-
Right-click on
TS_predictor.mlappinstalland select Install -
After installation, TS_Predictor will appear in the Apps toolbar
-
Click the TS_Predictor icon to launch the program
TS_Predictor accepts GNSS time series from:
- Nevada Geodetic Laboratory (NGL):
.txtformat - Plate Boundary Observatory (PBO):
.csvand.posformats - China Earthquake Administration (CEA):
.txtformat
Use the Data Conversion module to convert your data to the unified CSV format.
The preprocessing module (based on gCMEbox) provides:
- Interpolation: Kriging-Kalman filtering for missing data
- Outlier detection: IQR and MAD methods
- Offset correction: Weighted least-squares fitting
- CME removal: PCA, ICA, FastICA, vbICA
Select a decomposition method to separate your time series into components:
| Method | Description | Best for |
|---|---|---|
| EMD | Empirical Mode Decomposition | Basic separation |
| EEMD | Ensemble EMD | Reducing mode mixing |
| CEEMDAN | Complete Ensemble EMD with Adaptive Noise | Cleaner separation |
| ICEEMDAN | Improved CEEMDAN | Best overall performance |
| VMD | Variational Mode Decomposition | Known number of modes |
Choose a prediction model:
| Model | Type | Characteristics |
|---|---|---|
| SVM | Machine Learning | Good for small datasets |
| RBF | Machine Learning | Fast training |
| ELM | Machine Learning | Very fast, less accurate |
| BP | Neural Network | Classic approach |
| LSTM | Deep Learning | Best for long sequences |
| GRU | Deep Learning | Good balance of speed/accuracy |
Recommended: ICEEMDAN + GRU for most GNSS applications.
Compare models using multiple metrics:
- RMSE: Root Mean Square Error
- MAE: Mean Absolute Error
- sMAPE: Symmetric Mean Absolute Percentage Error
- R²: Coefficient of determination
- WQE: Weighted Quality Evaluation (unified metric)
Results are exported to Excel for further analysis.
Test data from 10 GNSS stations in Yunnan, China (2010-2025) is provided in the Test data folder.
% Example workflow
% 1. Launch TS_Predictor from Apps toolbar
% 2. Load test data from 'Test data/YNTC.csv'
% 3. Apply preprocessing (interpolation, outlier removal)
% 4. Decompose using ICEEMDAN (default parameters)
% 5. Predict using GRU model
% 6. Evaluate and export resultsTS_Predictor/
├── main/ # Core application files
├── gCMEbox_v5/ # Preprocessing toolbox
├── Test data/ # Example GNSS time series
├── TS_predictor.mlappinstall # Installation package
├── LICENSE # MIT License
└── README.md # This file
If you use TS_Predictor in your research, please cite:
@article{he2025ts_predictor,
title={TS_Predictor: An Open-Source Toolbox for GNSS Time Series Prediction Combining Deep Learning and Signal Decomposition},
author={He, Xiaoxing and Zhou, Yu and Li, Jun and Kermarrec, Ga{\"e}l and Fernandes, Rui and Montillet, Jean-Philippe},
journal={SoftwareX},
year={2025},
note={Submitted}
}- gCMEbox - GNSS Common Mode Error extraction toolbox
- Hector - GNSS time series noise analysis
- TSAnalyzer - GNSS time series analysis
- Xiaoxing He - Jiangxi University of Science and Technology - xxh@jxust.edu.cn
- Yu Zhou - Jiangxi University of Science and Technology
- Jun Li - Chang'an University
- Gaël Kermarrec - Leibniz University Hannover
- Rui Fernandes - University of Beira Interior
- Jean-Philippe Montillet - University of Beira Interior
This work was supported by:
- National Natural Science Foundation China (42364002, 42474028)
- Natural Science Foundation of Jiangxi (20252BAC220015, 20252BAC200264)
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Issues: GitHub Issues
- Email: xxh@jxust.edu.cn
SpaceGeodesyLab | Jiangxi University of Science and Technology
