Skip to content

[TIM'2024] Official codes of AM-Align: Globally Optimal Estimation of Accelerometer-Magnetometer Misalignment

Notifications You must be signed in to change notification settings

JokerJohn/AM_Align

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

AM-Align: Globally Optimal Estimation of Accelerometer-Magnetometer Misalignment

License GitHub Stars GitHub Issues

AM-Align is a globally optimal method for solving the accelerometer-magnetometer(AM) alignment problem. The package provides a complete set of algorithms, including intrinsic calibration, making it a convenient solution for improving the accuracy and robustness of inertial navigation systems.

image-20240323132209365
Intrinsic calibration AM-Align
image-20240323132150859 image-20240323132242986
image-20240323133201734

News

Features

  • Globally optimal solution for accelerometer-magnetometer alignment
  • Robust to insufficient and outlier-corrupted data
  • Requires only four pairs of measurements for complete calibration
  • Efficient and accurate computation using the polynomial eigenvalue technique

Prerequisites

  • C++11 or newer
  • CMake 3.10 or newer
  • Eigen3

Installation

  1. Clone the repository:
git clone https://github.com/JokerJohn/AM_Align
  1. Build the project:
cd AM-Align
mkdir build && cd build
cmake ..
make

Usage

  1. Prepare your accelerometer and magnetometer data in the required format.

  2. Run the intrinsic calibration:

./am_align_calibration --acc_data /path/to/acc_data --mag_data /path/to/mag_data
  1. Run the AM-Align alignment estimation:
./am_align --acc_data /path/to/calibrated_acc_data --mag_data /path/to/calibrated_mag_data
  1. Integrate the estimated alignment into your LIO initialization process.

For more detailed usage instructions and examples, please refer to the documentation.

Contributing

We welcome contributions to AM-Align! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request. For major changes, please discuss them with the authors first.

Before contributing, please read our contributing guidelines and code of conduct.

License

AM-Align is released under the MIT License.

Citation

If you use AM-Align in your research, please cite our paper:

@ARTICLE{xhu2024amalign,
  author={Hu, Xiangcheng and Wu, Jin and Xue, Bohuan and Zhu, Yilong and Jia, Mingkai and Qi, Yuhua and Jiang, Yi and Tan, Ping and Zhang, Wei},
  journal={IEEE Transactions on Instrumentation and Measurement}, 
  title={AM-Align: Globally Optimal Estimation of Accelerometer-Magnetometer Misalignment}, 
  year={2025},
  volume={},
  number={},
  pages={1-1},
  keywords={Accelerometer;magnetometer;sensor alignment;misalignment calibration;attitude estimation},
  doi={10.1109/TIM.2025.3541657}}

Acknowledgments

We would like to thank the following authors for their contributions and support.

Contact

For questions, comments, or suggestions, please contact xhubd@connect.ust.hk.

About

[TIM'2024] Official codes of AM-Align: Globally Optimal Estimation of Accelerometer-Magnetometer Misalignment

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published