- About the Project
- Getting Started
- Usage
- Contributing
- License
- Contacts
- References
- Acknowledgements
- Funding
This repository implements a novel approach to odometry calibration independent of the robot's steering geometry. Also, other methods proposed in the literature are implemented for comparison purposes (as shown in the article elaborated).
- MATLAB R2020
- Synchronized odometry and ground-truth data
- CSV files
- See examples in the data/ folder
Metadata file: [directory/fileID_metadata.csv]
type , [ diff / tricyc / omni3 / omni4 ],
ngear , [ n ],
encRes, [ Ce ],
Li , [ l (diff/tricyc/omni3) / l1, l2 (omni4) ],
Di , [ D1 , D2 , ... , Dm ],
Thi, [ ThOff (tricyc) ],
N , [ N (total runs) ],
L , [ L (square side-length, only needed for UMBmark and Jung&Chung) ],
imarkers,[...], (not required)
gt_ti ,[...], (not required)
gt_tf ,[...], (not required)
odo_ti,[...], (not required)
odo_tf,[...], (not required)
Data files: [directory/fileID_run-[01..N].csv]
# Differential drive
[ time (s) ] , [ xgt (m) ] , [ ygt (m) ] , [ thgt (rad) ] , [ odoR (tcks/cycle) , odoL (tcks/cycle) ],
...
# Tricycle
[ time (s) ] , [ xgt (m) ] , [ ygt (m) ] , [ thgt (rad) ] , [ odoWh (tcks/cycle) , ThWh (tcks/cycle) ],
...
# Omnidirectional
[ time (s) ] , [ xgt (m) ] , [ ygt (m) ] , [ thgt (rad) ] , [ odo1 (tcks/cycle) , ..., odoM (tcks/cycle) ],
...
-
Clone the repository
git clone https://github.com/sousarbarb/odometry-calibration.git
-
Copy the metadata file and experiments data to the data/ folder
-
Execute the odometry calibration method (go to the respective
src
folders for further instructions):- OptiOdom: src, wiki
- Differential drive-only:
- Borenstein and Feng - The University of Michigan Benchmark (UMBmark): src, wiki, doi: 10.1109/70.544770
- Jung and Chung: src, wiki, doi: 10.1109/ICRA.2012.6224660
- Ivanjko et al.: src, wiki, link: https://www.researchgate.net/publication/268411270
- Ackerman/tricyle-only:
- Kallasi et al.: src, wiki, doi: 10.1016/j.robot.2017.04.019
- Omnidirectional-only:
- Lin et al.: src-omni3 / src-omni4, wiki, doi: 10.1109/ICCSE.2019.8845402
See Documentation for further details.
Example for a differential drive robot on an arbitrary path with the calibrated kinematic parameters computed by OptiOdom using a circular or an arbitrary calibration path:
Example for a tricycle robot on an arbitrary path with the calibrated kinematic parameters computed by OptiOdom using a circular or an arbitrary calibration path:
Example for a three-wheeled omnidirectional robot on an arbitrary path with the calibrated kinematic parameters computed by OptiOdom using a square or an arbitrary calibration path:
Additional media content is available on a YouTube playlist (link) to help perform different possible calibration paths for OptiOdom and the ones proposed in the odometry calibration methods considered in the article.
Any contributions that you make are greatly appreciated. Please proceed as follows:
- Fork the repository
- Create your feature branch (
git checkout -b feature/NameFeature
) - Commit your changes (
git commit -m 'Add some NameFeature'
) - Push to the branch (
git push origin feature/NameFeature
) - Open a pull request
Distributed under the MIT License. See LICENSE
for more information.
If you have any questions or you want to know more about the work developed by us, please contact one of the contributors of this project:
- Ricardo B. Sousa: [email protected] (corresponding author)
- Marcelo R. Petry: [email protected]
- Professor António Paulo Moreira: [email protected]
- Professor Paulo Costa: [email protected]
Project Link: https://github.com/sousarbarb/odometry-calibration
Sousa, R.B., Petry, M.R., Costa, P.G. et al. OptiOdom: a Generic Approach for Odometry Calibration of Wheeled Mobile Robots. J Intell Robot Syst 105, 39 (2022). https://doi.org/10.1007/s10846-022-01630-3 (preprint)
Sousa, R.B.: Odometry and Extrinsic Sensor Calibration on Mobile Robots. Master's Thesis, Faculty of Engineering of the University of Porto (FEUP), INESC TEC - Institute for Systemsand Computer Engineering, Technology and Science, Porto, Portugal. https://doi.org/10.13140/RG.2.2.27052.28802 (2020)
R. B. Sousa, M. R. Petry and A. P. Moreira, "Evolution of Odometry Calibration Methods for Ground Mobile Robots," 2020 IEEE International Conference on Autonomous Robot Systems and Competitions (ICARSC), 2020, pp. 294-299, doi: 10.1109/ICARSC49921.2020.9096154 (presentation)
- CRIIS - Centre for Robotics in Industry and Intelligent Systems from INESC TEC - Institute for Systems and Computer Engineering, Technology and Science
- Faculty of Engineering, University of Porto (FEUP)
This work is financed by the ERDF - European Regional Development Fund through the Operational Programme for Competitiveness and Internationalisation - COMPETE 2020 Programme, and by National Funds through the Portuguese funding agency, FCT - Fundação para a Ciência e a Tecnologia, within project SAICTPAC/0034/2015- POCI-01-0145-FEDER-016418. This work is also financed by the ERDF - European Regional Development Fund through the Operational Programme for Competitiveness and Internationalisation - COMPETE 2020 Programme within project POCI-01-0145-FEDER-006961, and by National Funds through the FCT - Fundação para a Ciência e a Tecnologia (Portuguese Foundation for Science and Technology) as part of project UID/EEA/50014/2013.