Mapping Server Collaboration Architecture Design with OpenVSLAM for Mobile Devices
Abstract
:1. Introduction
2. Related Works
2.1. Markerless-Based AR
2.2. Visual SLAM
2.3. FastAPI-Based Mapping Server Architecture
3. Visual-SLAM-Based Mobile AR System
3.1. OpenVSLAM-Based Mobile AR System Architecture
3.2. Android-Based SLAM System Design
3.3. Visualization of a Map-BasedPoint Cloud
3.4. FastAPI Server
4. Experiments and Results
4.1. Experimental Environments
4.2. Experimental Results
5. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Esparza-Jiménez, J.O.; Devy, M.; Gordillo, J.L. Visual EKF-SLAM from Heterogeneous Landmarks. Sensors 2016, 16, 489. Available online: http://lps3.www.ncbi.nlm.nih.gov.libproxy.smu.ac.kr/pubmed/27070602 (accessed on 3 February 2022). [CrossRef] [PubMed]
- Chul Roh, H.; Hun Sung, C.; Jin Chung, M. Rapid SLAM using Simple Map Representation in Indoor Environment; IEEE: Piscataway, NJ, USA, 2013; pp. 225–229. [Google Scholar]
- Jung, S.; Choi, D.; Song, S.; Myung, H. Bridge Inspection Using Unmanned Aerial Vehicle Based on HG-SLAM: Hierarchical Graph-based SLAM. Remote Sens. 2020, 12, 3022. Available online: http://lps3.doaj.org.libproxy.smu.ac.kr/article/b28d031fbd6a40e59e70f9563ae11c95 (accessed on 3 February 2022). [CrossRef]
- Fan, T.; Wang, H.; Rubenstein, M.; Murphey, T. CPL-SLAM: Efficient and Certifiably Correct Planar Graph-Based SLAM Using the Complex Number Representation. TRO 2020, 36, 1719–1737. Available online: http://lps3.ieeexplore.ieee.org.libproxy.smu.ac.kr/document/9143200 (accessed on 3 February 2022). [CrossRef]
- Durrant-Whyte, H.; Bailey, T. Simultaneous localization and mapping: Part I. MRA 2006, 13, 99–110. Available online: http://lps3.ieeexplore.ieee.org.libproxy.smu.ac.kr/document/1638022 (accessed on 3 February 2022). [CrossRef] [Green Version]
- Peddie, J. Types of Augmented Reality. In Augmented Reality; Springer International Publishing: Cham, Switzerland, 2017; pp. 29–46. [Google Scholar]
- Piao, J.-C.; Kim, S.-D. Adaptive Monocular Visual–Inertial SLAM for Real-Time Augmented Reality Applications in Mobile Devices. Sensors 2017, 17, 2567. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Protobuf. Available online: https://developers.google.com/protocol-buffers (accessed on 3 February 2022).
- Aslan, M.F.; Durdu, A.; Yusefi, A.; Sabanci, K.; Sungur, C. A Tutorial: Mobile Robotics, SLAM, Bayesian Filter, Keyframe Bundle Adjustment and ROS Applications. In Robot Operating System (ROS); Springer International Publishing: Cham, Switzerland, 2021; pp. 227–269. [Google Scholar]
- Servières, M.; Renaudin, V.; Dupuis, A.; Antigny, N. Visual and Visual-Inertial SLAM: State of the Art, Classification, and Experimental Benchmarking. J. Sens. 2021, 2021, 1–26. Available online: http://lps3.dx.doi.org.libproxy.smu.ac.kr/10.1155/2021/2054828 (accessed on 3 February 2022). [CrossRef]
- Mur-Artal, R.; Montiel, J.M.M.; Tardos, J.D. ORB-SLAM: A Versatile and Accurate Monocular SLAM System. TRO 2015, 31, 1147–1163. Available online: http://lps3.ieeexplore.ieee.org.libproxy.smu.ac.kr/document/7219438 (accessed on 3 February 2022). [CrossRef] [Green Version]
- Mur-Artal, R.; Tardos, J.D. ORB-SLAM2: An Open-Source SLAM System for Monocular, Stereo, and RGB-D Cameras. TRO 2017, 33, 1255–1262. Available online: http://lps3.ieeexplore.ieee.org.libproxy.smu.ac.kr/document/7946260 (accessed on 3 February 2022). [CrossRef] [Green Version]
- Campos, C.; Elvira, R.; Rodríguez, J.J.G.; Montiel, J.M.M.; Tardós, J.D. ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM. IEEE Trans. Robot. 2021, 37, 1874–1890. Available online: https://arxiv.org/abs/2007.11898 (accessed on 3 February 2022). [CrossRef]
- Sumikura, S.; Shibuya, M.; Sakurada, K. OpenVSLAM, ACM. In Proceedings of the 27th ACM International Conference on Multimedia, Nice, France, 15 October 2019; pp. 2292–2295. [Google Scholar]
- El Filali, Y.; Krit, S. Augmented Reality Types and Popular Use Cases. In Proceedings of the 1st International Conference of Computer Science and Renewable Energies—ICCSRE; IEEE Digital Library: Piscataway, NJ, USA, 2019; pp. 107–110. ISBN 978-989-758-431-2. [Google Scholar] [CrossRef]
- Anonymous ARCore. Available online: https://developers.google.com/ar/develop (accessed on 3 February 2022).
- Apple ARKit. Available online: https://developer.apple.com/documentation/arkit (accessed on 3 February 2022).
- Rosinol, A.; Abate, M.; Chang, Y.; Carlone, L. Kimera: An Open-Source Library for Real-Time Metric-Semantic Localization and Mapping; IEEE: Piscataway, NJ, USA, 2020; pp. 1689–1696. [Google Scholar]
- Klein, G.; Murray, D. Parallel Tracking and Mapping for Small AR Workspaces; IEEE: Piscataway, NJ, USA, 2007; pp. 225–234. [Google Scholar]
- Engel, J.; Koltun, V.; Cremers, D. Direct Sparse Odometry. IEEE Trans. Pattern Anal. Mach. Intell. 2018, 40, 611–625. Available online: http://lps3.ieeexplore.ieee.org.libproxy.smu.ac.kr/document/7898369 (accessed on 3 February 2022). [CrossRef] [PubMed]
- Engel, J.; Schöps, T.; Cremers, D. LSD-SLAM: Large-Scale Direct Monocular SLAM. In Computer Vision—ECCV 2014; Springer International Publishing: Cham, Switzerland, 2014; pp. 834–849. [Google Scholar]
- Forster, C.; Pizzoli, M.; Scaramuzza, D. SVO: Fast Semi-Direct Monocular Visual Odometry; IEEE: Piscataway, NJ, USA, 2014; pp. 15–22. [Google Scholar]
- Schlegel, D.; Colosi, M.; Grisetti, G. ProSLAM: Graph SLAM from a Programmer’s Perspective; IEEE: Piscataway, NJ, USA, 2018; pp. 3833–3840. [Google Scholar]
- Muñoz-Salinas, R.; Medina-Carnicer, R. UcoSLAM: Simultaneous localization and mapping by fusion of keypoints and squared planar markers. Pattern Recognit. 2020, 101, 107193. Available online: https://lps3.dx.doi.org.libproxy.smu.ac.kr/10.1016/j.patcog.2019.107193 (accessed on 3 February 2022). [CrossRef] [Green Version]
- Anonymous Eigen. Available online: https://eigen.tuxfamily.org/index.php?title=Main_Page (accessed on 3 February 2022).
- Rainer Kümmerle, g2o. Available online: https://github.com/RainerKuemmerle/g2o (accessed on 3 February 2022).
- Muñoz-Salinas, R. Available online: https://github.com/OpenVSLAM-Community/FBoW (accessed on 3 February 2022).
- FastAPI. Available online: https://fastapi.tiangolo.com/ (accessed on 3 February 2022).
- Hsu, M. LLVM Techniques, Tips, and Best Practices Clang and Middle-End Libraries; Packt Publishing, Limited: Birmingham, UK, 2021. [Google Scholar]
- Pangolin. Available online: https://github.com/uoip/pangolin (accessed on 3 February 2022).
- Burri, M.; Nikolic, J.; Gohl, P.; Schneider, T.; Rehder, J.; Omari, S.; Achtelik, M.W.; Siegwart, R. The EuRoC micro aerial vehicle datasets. Int. J. Robot. Res. 2016, 35, 1157–1163. [Google Scholar] [CrossRef]
- Socket.IO. Available online: https://socket.io (accessed on 3 February 2022).
- Horn, B.K.P. Closed-form solution of absolute orientation using unit quaternions. J. Opt. Soc. Am. A Opt. Image Sci. Vis. 1987, 4, 629. [Google Scholar] [CrossRef]
- Aslan, M.F.; Durdu, A.; Sabanci, K.; Ropelewska, E.; Gültekin, S.S. A Comprehensive Survey of the Recent Studies with UAV for Precision Agriculture in Open Fields and Greenhouses. Appl. Sci. 2022, 12, 1047. [Google Scholar] [CrossRef]
Category | Kimera | PTAM | DSO | LSDSLAM | ORB-SLAM2 | ORB-SLAM3 | SVO | OpenVSLAM |
---|---|---|---|---|---|---|---|---|
Method | Indirect | Indirect | Direct | Direct | Indirect | Indirect | Hybrid | Indirect |
Density | Dense | Dense | Sparse | Semi-Dense | Sparse | Sparse | Sparse | Sparse |
Sensor | Mono Stereo IMU | mono | Mono Stereo IMU | mono | Mono Stereo RGBD | Mono Stereo RGBD IMU | Mono Stereo RGBD | Mono Stereo RGBD IMU |
Backend | GTSAM | - | - | g2o | g2o | g2o | - | g2o |
Geometry | Mesh/TSDF | points | points | points | points | points | points | points |
Type | Description |
---|---|
Motion-only BA | Optimize the pose of the current frame using the g2o library |
Local BA | pose optimization of co-visibility keyframes and new keyframes |
Loop Closing | pose graph optimization |
Full BA | added keyframes and key point updates |
Item | Desktop | Mobile Device |
---|---|---|
OS | Ubuntu 21.04 | Android 10 |
CPU | AMD Ryzen5 3600X 6-Core 3.79 GHz | ARM Cortex-A77 MP1 3.09 GHz ARM Cortex-A77 MP3 2.42 GHz ARM Cortex-A55 MP4 1.80 GHz |
Memory | 16 GB | 12 GB |
Item | Desktop (Pangolin) | Mobile Device (Unity) |
---|---|---|
CPU Usage (%) | 99 | 28 |
Memory Usage (%) | 23.1 | 8.3 |
Screen Resolution | 1920 × 1080 | 1280 × 720 |
Frame rate (FPS) | Avg. 30 | Avg. 25 |
Filename | Description |
---|---|
Frames.m4v | captured image |
Frames.txt | time stamp |
cam0 | image converted form Frames.m4v based on Frames.txt |
GPS.txt | pose data |
Accel.txt | acceleration data |
Gyro.txt | angular velocity data |
IMU.txt | inertia data |
config.yaml | camera setting value |
Sparse_Map_Unity.bin | sparse map created in Unity engine |
Sparse_PointCloud.ply | sparse point cloud |
Item | Description |
---|---|
Display Resolution | 1280 × 720 |
Recording Time (s) | 150 |
Number of Points | about 54,000 |
Frame rate (FPS) | avg. 40 |
Dataset | RMSE (m) | MEAN (m) | STD (m) |
---|---|---|---|
MH_01(Easy) | 3.110 | 2.863 | 1.213 |
MH_03(Medium) | 3.562 | 3.230 | 1.502 |
MH_04(Difficult) | 3.308 | 2.976 | 1.445 |
V1_01(Easy) | 0.912 | 0.832 | 0.375 |
V1_02(Medium) | 1.796 | 1.675 | 0.650 |
V1_03(Difficult) | 1.589 | 1.412 | 0.729 |
V2_01(Easy) | 1.611 | 1.559 | 0.406 |
V2_02(Medium) | 1.327 | 1.244 | 0.463 |
V2_03(Difficult) | 0.939 | 0.854 | 0.390 |
Average | 2.017 | 1.849 | 0.797 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Song, J.; Kook, J. Mapping Server Collaboration Architecture Design with OpenVSLAM for Mobile Devices. Appl. Sci. 2022, 12, 3653. https://doi.org/10.3390/app12073653
Song J, Kook J. Mapping Server Collaboration Architecture Design with OpenVSLAM for Mobile Devices. Applied Sciences. 2022; 12(7):3653. https://doi.org/10.3390/app12073653
Chicago/Turabian StyleSong, Jooeun, and Joongjin Kook. 2022. "Mapping Server Collaboration Architecture Design with OpenVSLAM for Mobile Devices" Applied Sciences 12, no. 7: 3653. https://doi.org/10.3390/app12073653
APA StyleSong, J., & Kook, J. (2022). Mapping Server Collaboration Architecture Design with OpenVSLAM for Mobile Devices. Applied Sciences, 12(7), 3653. https://doi.org/10.3390/app12073653