Skip to content

ansfl/MEMS-IMU-Denoising

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

                               

Introduction

Modern navigation solutions are largely dependent on the performances of the standalone inertial sensors, especially at times when no external sources are available. During these outages, the inertial navigation solution is likely to degrade over time due to instrumental noises sources, particularly when using consumer low-cost inertial sensors. Conventionally, model-based estimation algorithms are employed to reduce noise levels and enhance meaningful information, thus improving the navigation solution directly. However, guaranteeing their optimality often proves to be challenging as sensors performance differ in manufacturing quality, process noise modeling, and calibration precision. In the literature, most inertial denoising models are model-based when recently several data-driven approaches were suggested primarily for gyroscope measurements denoising. Data-driven approaches for accelerometer denoising task are more challenging due to the unknown gravity projection on the accelerometer axes. To fill this gap, we propose several learning-based approaches and compare their performances with prominent denoising algorithms, in terms of pure noise removal:

                   

Next, we compare their effectiveness over the well-known stationary coarse alignment procedure, where roll and pitch angles are being evaluated from specific forces. Based on the benchmarking results obtained in field experiments, we show that: (i) learning-based models perform better than traditional signal processing filtering; (ii) non-parametric kNN algorithm outperforms all state of the art deep learning models examined in this study; (iii) denoising can be fruitful for pure inertial signal reconstruction, but moreover for navigation-related tasks, as both errors are shown to be reduced up to one order of magnitude.

                         

Dataset

Inertial measurements used in this research are based on a dataset previously published in the paper The Autonomous Platform Inertial Dataset , using a unique device aligning between a Huawei P40 smartphone and an Inertial Lab MRU-P unit.

                                         

Here however, to ensure stationarity of the accelerometer measurements, samples were extracted from platform at complete rest, at a large number of platform orientations. This way, accelerometer readings are guaranteed to reflect gravity projection only in a variety of roll (ϕ) and pitch (θ) angles.

                   

Code

For convenience, two notebooks are provided, enabling reproduction of our results.

  • Full Mode (GPU recommended) - Full solution pipeline from training to inference.

  • Test Mode (GPU free) - Direct inference and comparison between competing models, by uploading pretrained model weights, trained over Intel i5-9600K CPU @ 3.70 GHz and NVIDIA GTX2080 GPU.

Directory tree

[root directory]
├── figures
├── data
├── execution
|   ├── Training Mode
|       └── *Training.ipynb*
|   └── Inference Mode
|       ├── *Inference.ipynb*
|       ├── RNN.pt
|       ├── Bi_LSTM.pt
|       └── Bi_GRU.pt
...
└── requirements.txt

Citation

If you found the experimental DATA useful for your research, please cite our paper:

@article{shurin2022autonomous,
  title={The Autonomous Platforms Inertial Dataset},
  author={Shurin, Artur and Saraev, Alex and Yona, Mor and Gutnik, Yevgeni and Faber, Sharon and Etzion, Aviad and Klein, Itzik},
  journal={IEEE Access},
  pages={10191--10201},
  year={2022},
  publisher={IEEE}
}

If you found the paper's CODE helpful in your research, please cite our paper:

@article{engelsman2023data,
  title={Data-driven denoising of stationary accelerometer signals},
  author={Engelsman, Daniel and Klein, Itzik},
  journal={Measurement},
  pages={113218},
  year={2023},
  publisher={Elsevier}
}