Abstract
Visual Inertial Odometry (Visual Inertial Odometry (VIO) is a key technology for autonomous systems that enables accurate determination of a device’s location and orientation by combining data from cameras and inertial measurement units.
Unlock the possibilities of a new autonomous navigation era with cutting-edge Visual Inertial Technology Odometry (VIO) from Inertial Labs! This article explores the unique benefits of VIO for accurate, reliable, and GPS-independent navigation. Learn how VIO combines visual and inertial data for unprecedented accuracy in all conditions, from low light to complex and dynamic environments.
The sections will cover Introduction to Visual Inertial Odometry (VIO), Principles of VIO, advantages and limitations of VIO, and Inertial Labs’ Sensor Solution – Vision-Based Navigation. The conclusion will summarize the benefits of VIO and how Inertial Labs™ solutions can help navigate without a GNSS signal.
Section 1. Introduction to Visual Inertial Odometry (VIO)
Visual Inertial Odometry (VIO) is a technology used to determine the movement and orientation of an object in space by combining data from visual sensors (cameras) and inertial measurement units (IMUs). The main goal of VIO is to ensure reliable tracking of the position and orientation of an object despite external conditions and environmental changes.
The camera sends a stream of images that are analyzed to track key points and estimate changes in an object’s position. The IMU includes accelerometers and gyroscopes that measure acceleration and angular velocity. This data helps estimate short-term changes in position and orientation, especially in conditions where the quality of visual data may be compromised (e.g., in low light or without texture).
VIO is widely used in various applications that require precise position and orientation tracking, especially in environments where GPS is unavailable or inaccurate. Let’s look at the key areas where VIO shows its strengths:
- Robotics. VIO helps robots track their location and movements indoors, in factories, warehouses, and complex environments where GPS is unavailable. In particular, mobile robots with the VIO system can navigate with high precision while avoiding obstacles.
- Drones and unmanned aerial vehicles (UAVs). VIO allows drones to navigate in places where there is no GPS. Drones with VIO can perform missions autonomously, including terrain mapping, site inspections (bridges, buildings), monitoring emergency zones, and exploring hard-to-reach places.
- Augmented Reality (AR) and Virtual Reality (VR). VIO is used in AR glasses and mobile devices to track the user’s movements and superimpose virtual objects in the real world with high accuracy. This allows the user to interact with virtual objects that remain fixed in space.
- Autonomous vehicles. VIO provides reliable car tracking in environments where the GPS signal is weak or unavailable (e.g., tunnels, under bridges, parking lots). VIO helps vehicles accurately determine their location relative to nearby objects and plot a trajectory for autonomous parking.
- 3D Mapping and Modeling. VIO enables the creation of 3D models of buildings, spaces, and infrastructure without needing GPS, which is useful for builders, architects, and engineers. VIO helps inspect and monitor various objects, such as bridges, dams, tunnels, and industrial structures. It can accurately determine objects’ location, improving the quality and accuracy of data during inspection.
- Entertainment and film industry. VIO stabilizes the camera and tracks its position during filming, especially in dynamic and fast-changing scenes.
- Rescue and Search and Rescue Operations. In environments where GPS may not work (such as collapsed buildings, caves, or forests), VIO enables rescue drones or robots to navigate safely and accurately, helping to locate victims.
VIO technology opens many opportunities for autonomous devices, robotics, and mobile applications in environments where precise location and orientation tracking are critical, especially without GPS. It can be used to solve problems of navigation, control, modeling, and interaction with the real world, making it popular in various industries.
Brief historical background
VIO began to actively develop at the intersection of robotics and computer vision in the 2000s. Initially, IMU data was used separately for navigation, but given the accumulation of errors, researchers combined it with data from cameras to obtain more stable and accurate results. As a result, the researchers realized that the combination of IMU and cameras allows you to compensate for the shortcomings of each type of sensor [1 – 4]. VIO continues to evolve with new sensor technologies and machine learning techniques, opening up the prospect of improving the accuracy and capabilities of autonomous systems.
Section 2. Principles of VIO
Visual odometry
Modern approaches to visual odometry are based on the following stages (but are not the only ones):
1) Capturing images or videos using single, stereo, or omnidirectional cameras.
2) Data correction to eliminate lens distortion, etc.
3) Feature matching is the process of comparing and establishing correspondences between key points (or features) in different images, as shown in Figure 1 [5, 6].
Figure 1. Feature Matching Example [5].
Main stages feature matching process:
– Feature Detection. The first step is to find key points or features in the image that will be used for matching. Key points are characteristic areas of the image that are easy to identify, such as corners, edges, textures, and object contours. Basic methods: SIFT (Scale-Invariant Feature Transform), SURF (Speeded Up Robust Features), ORB (Oriented FAST and Rotated BRIEF), Harris Corner Detector [7].
– Feature Description. A feature vector is created for each key point found – a numerical description characterizes this feature. This description must be robust to scale, angle, and lighting changes. This step aims to ensure the ability to match points between images accurately.
– Feature Matching. This stage searches for matches between features found in different images. The closest feature vectors are considered potential matches.
– Matching Filtering. After matching, the matches are filtered to remove inaccurate or erroneous matches.
– Match evaluation and verification. The final step is to evaluate the quality of the matches. The remaining matches are checked to ensure they are consistent with the geometric transformations corresponding to the camera or object motion.
4) Construction of the optical flow field (Lucas-Kanade method) [8].
5) Checking flow field vectors for potential tracking errors and removing gaps.
6) Estimation of camera movement by optical flow.
7) Kalman filter for maintaining state estimate distribution [9].
8) Periodically replenish tracking points to maintain coverage across the entire image.
Inertial subsystem
IMU plays a key role in VIO thanks to its ability to give information about movement and object orientation in space. IMU uses accelerometers and gyroscopes to measure accelerations and angular speeds, allowing the VIO system to effectively track displacement and compensation flaws in visual data. More details on how it works IMU can be found at the links [10, 11].
IMU provides high-frequency acceleration, angular data speeds, and orientation angles, allowing you to track movement accurately in the short term. Data from the IMU is passed through filters (e.g., Kalman filter) to eliminate noise and predict short-term movement objects. They are then synchronized with visual data to create more accurate movement estimates. By combining information from both sources, VIO systems can process the data efficiently, improving overall tracking quality, Figure 2 [12].
Figure 2. Example of VIO system architecture [12].
Next, data synchronization and its critical importance for VIO systems will be examined.
Data synchronization
Synchronization of IMU and camera data in VIO systems is vital to creating accurate and reliable position and orientation estimates. Synchronization allows high-frequency IMU data to be combined with images to track movements in space accurately.
The IMU typically operates at a high frequency, 1000–2000 Hz, while cameras usually operate at 10–60 Hz. This means IMU data is received much more frequently than camera data and must be appropriately aligned to obtain accurate timing estimates, Figure 3. Some VIO systems use hardware synchronization, where the camera and IMU are locked to the same clock source (sync signal). This allows the devices to record data to a standard time marker and avoid timing mismatches. For example, high-end drones and robots often have hardware synchronization between the IMU and cameras.
Figure 3. Structure of VIO synchronization and optimization [13].
The combined visual and inertial data are fed through optimization algorithms to improve position determination accuracy.
Now that we have become familiar with the structure of VIO systems and examined the principles of their operation let’s move on to considering the advantages and limitations.
Section 3. Advantages and limitations of VIO
VIO is a powerful motion and orientation tracking technology that combines visual and inertial data. Although it is widely used in robotics, autonomous vehicles, and augmented reality, it has advantages and disadvantages.
Advantages:
- High accuracy and stability. Visual data provides high spatial accuracy, while inertial data compensates for errors due to a lack of visual information, such as low light or uniform textures.
- Autonomy. VIO does not require external data (e.g., GNSS) to operate, making it suitable for use indoors or in areas where the GNSS signal is unavailable or susceptible to Jamming or Spoofing. More information about GNSS limitations can be found at [14].
- High refresh rate. The IMU provides high-frequency data, allowing the VIO system to track motion even when moving quickly. This makes VIO useful for drones or other UAVs.
- Compact and low power consumption. VIO can be implemented on relatively small devices with minimal power consumption, making it ideal for mobile devices, drones, and autonomous vehicles. Unlike LiDAR and other complex sensors, cameras, and IMUs are cheaper and more compact.
- Drift Resistance. Thanks to the predictive ability of the IMU, the VIO system can operate quite stably and accurately at short and medium ranges, minimizing the drift that occurs when using visual or inertial data alone.
Limitations:
- Sensitivity to environmental conditions. The visual part of VIO depends on image quality, so in poor lighting, strong glare, and monotonous or poorly textured surfaces, there may be problems with accuracy. For example, the system may need to be corrected in dark rooms or when the lighting changes quickly.
- Limited stability over long distances. Although VIO compensates for drift using IMU data, errors can accumulate over long distances, mainly if no global correction system such as GPS or external reference marks exists. Without correction, errors can accumulate, reducing the accuracy of the system.
In summary, VIO is an effective technology for autonomous navigation and position tracking that is suitable for various applications. Its accuracy and autonomy make it indispensable for closed and confined spaces where the GNSS signal is unavailable. However, sensitivity to conditions, synchronization difficulties, and computational requirements may limit its use in some scenarios.
Section 4. Inertial Labs Sensor Solution – Vision-Based Navigation
With autonomous technologies such as driverless cars, drones, and robots, navigation accuracy and reliability requirements have become much higher. Visual Inertial Odometry (VIO) is an advanced technology that combines data from cameras and inertial sensors to provide accurate, real-time location and orientation of a device, even in low visibility or challenging environments.
Navigation in the absence of GPS
There are many reasons why users may need to operate when GPS is unavailable, whether the outage is due to terrain, spoofing/jamming, or something else.
With over 20 years of leadership in navigation solutions, Inertial Labs offers reliable navigation solutions for various applications, including those without GPS. One of these solutions is the innovative Visual Navigation System Module, figure 4, 5.
While other alternatives exist, including the standard ring laser gyro-based navigation system [15], VIO offers a much better price/performance ratio.
Figure 4. Visual Navigation Module. | Figure 5. Visual Processing Unit. |
Our product enables high accuracy even in low light, limited visibility, and dynamic environments. Integrating visual and inertial data helps the system determine the exact location and effectively compensates for distortions.
By purchasing VIO, the user gets:
- Accurate Trajectory Tracking
- Minimal Drift
- Reliable Navigation in GNSS-Denied Areas
VIO Accuracy
The accuracy of the system has been tested on actual flights. Trajectory shown on Figure 6. As can be seen, The VIO system (INS in red) closely follows the accurate GNSS trajectory (Cyan), demonstrating high accuracy even in GNSS-denied environments.
Figure 6. Flight trajectory.
The INS trajectory shows only minimal deviation from the GNSS path, indicating robust performance of the VIO in maintaining position. The VIO provides consistent and reliable navigation without relying on GNSS, validating its effectiveness for applications in GPS-denied environments.
Figure 7 shows the percentage error over the distance traveled, providing insight into the performance and accuracy of the VIO system during the flight.
Figure 7. Error Analysis Distance Traveled.
The overall mean error is <0.5% DT, indicating consistent performance in tracking the accurate trajectory throughout most of the flight.
Conclusion
Visual Inertial Odometry (VIO) is a powerful tool that changes autonomous systems’ navigation and positioning approach. By combining vision and inertial data, VIO provides accurate and interference-resistant solutions for the most challenging environments. This article covers the main algorithms of VIO and their key advantages, such as real-time operation, GPS independence, and high accuracy.
VIO is a breakthrough solution that opens a new era of autonomous navigation. By combining the accuracy of visual and inertial data, VIO provides uncompromising positioning, even when traditional technologies such as GPS fail. This technology is already transforming the field of unmanned vehicles, robots, and augmented reality applications, providing them with stability and high accuracy in all conditions.
Our new product is an innovative solution for improving the accuracy and stability of navigation in various conditions. With its help, you can integrate reliable and accurate positioning technologies into autonomous systems that are not dependent on external factors.
Inertial Labs is committed to providing high-quality solutions with customization and excellent value for money at an affordable price.
References
[1] Titterton, D H, et al. Strapdown Inertial Navigation Technology. London, UK, Peter Peregrinis Ltd. On Behalf Of The Institution Of Electrical Engineers, 2005.
[2] Colomina, I., and P. Molina. “Unmanned Aerial Systems for Photogrammetry and Remote Sensing: A Review.” ISPRS Journal of Photogrammetry and Remote Sensing, vol. 92, June 2014, pp. 79–97, https://doi.org/10.1016/j.isprsjprs.2014.02.013.
[3] Kraus, Karl. Photogrammetry. Walter de Gruyter, 1 Jan. 2007.
[4] Scaramuzza, Davide, and Friedrich Fraundorfer. “Visual Odometry [Tutorial].” IEEE Robotics & Automation Magazine, vol. 18, no. 4, Dec. 2011, pp. 80–92, rpg.ifi.uzh.ch/docs/VO_Part_I_Scaramuzza.pdf, https://doi.org/10.1109/mra.2011.943233. Accessed 3 Apr. 2022.
[5] Malche, Timothy. “What Is Feature Matching?” Roboflow Blog, 30 Oct. 2024, blog.roboflow.com/what-is-feature-matching/. Accessed 7 Nov. 2024.
[6] Cohen, Jeremy. “Visual Features & Tracking: The Fundamentals.” Welcome to the Library!, 24 Aug. 2021, www.thinkautonomous.ai/blog/visual-features-tracking-the-fundamentals/. Accessed 7 Nov. 2024.
[7] Tareen, Shaharyar Ahmed Khan, and Zahra Saleem. “A Comparative Analysis of SIFT, SURF, KAZE, AKAZE, ORB, and BRISK.” 2018 International Conference on Computing, Mathematics and Engineering Technologies (ICoMET), Mar. 2018, https://doi.org/10.1109/icomet.2018.8346440.
[8] Wikipedia Contributors. “Lucas–Kanade Method.” Wikipedia, Wikimedia Foundation, 14 Dec. 2019, en.wikipedia.org/wiki/Lucas%E2%80%93Kanade_method.
[9] Wikipedia Contributors. “Kalman Filter.” Wikipedia, Wikimedia Foundation, 27 Mar. 2019, en.wikipedia.org/wiki/Kalman_filter.
[10] Mendez, Maria. “How Does an INS Work?” Inertial Labs, 10 Oct. 2024, inertiallabs.com/how-does-an-ins-works/.
[11] Aboelmagd Noureldin. Fundamentals of Inertial Navigation, Satellite-Based Positioning and Their Integration. Heidelberg, Springer, 2013.
[12] Nguyen, Trung, et al. “CKF-Based Visual Inertial Odometry for Long-Term Trajectory Operations.” Journal of Robotics, vol. 2020, 3 June 2020, pp. 1–14, https://doi.org/10.1155/2020/7362952.
[13] Piao, Jin-Chun, and Shin-Dug Kim. “Adaptive Monocular Visual–Inertial SLAM for Real-Time Augmented Reality Applications in Mobile Devices.” Sensors, vol. 17, no. 11, 7 Nov. 2017, p. 2567, https://doi.org/10.3390/s17112567. Accessed 16 July 2019.
[14] Mendez, Maria. “What Are the Limitations of GNSS?” Inertial Labs, 2 Oct. 2024, inertiallabs.com/what-are-the-limitations-of-gnss/.
[15] GPS-Aided INS-FI Datasheet Revision, 1.5 FOG IMU-BASED, GPS-AIDED INERTIAL NAVIGATION SYSTEM INS-FI.