In robotics and computer vision, visual odometry is the process of determining the position and orientation of a robot by analyzing the associated camera images. It has been used in a wide variety of robotic applications, such as on the Mars Exploration Rovers.
In navigation, odometry is the use of data from the movement of actuators to estimate change in position over time through devices such as rotary encoders to measure wheel rotations. While useful for many wheeled or tracked vehicles, traditional odometry techniques cannot be applied to mobile robots with non-standard locomotion methods, such as legged robots. In addition, odometry universally suffers from precision problems, since wheels tend to slip and slide on the floor creating a non-uniform distance traveled as compared to the wheel rotations. The error is compounded when the vehicle operates on non-smooth surfaces. Odometry readings become increasingly unreliable over time as these errors accumulate and compound over time.
Visual odometry is the process of determining equivalent odometry information using sequential camera images to estimate the distance traveled. Visual odometry allows for enhanced navigational accuracy in robots or vehicles using any type of locomotion on any surface.
Most existing approaches to visual odometry are based on the following stages.
- Acquire input images: using either single cameras., stereo cameras, or omnidirectional cameras.
- Image correction: apply image processing techniques for lens distortion removal, etc.
- Feature detection: define interest operators, and match features across frames and construct optical flow field.
- Check flow field vectors for potential tracking errors and remove outliers.
- Estimation of the camera motion from the optical flow.
- Periodic repopulation of trackpoints to maintain coverage across the image.
An alternative to feature-based methods is the "direct" or appearance-based visual odometry technique which minimizes an error directly in sensor space and subsequently avoids feature matching and extraction.
- Maimone, M.; Cheng, Y.; Matthies, L. (2007). "Two years of Visual Odometry on the Mars Exploration Rovers". Journal of Field Robotics 24 (3): 169–186. doi:10.1002/rob.20184. Retrieved 2008-07-10.
- Chhaniyara, Savan; KASPAR ALTHOEFER ;LAKMAL D. SENEVIRATNE (2008). "Visual Odometry Technique Using Circular Marker Identification For Motion Parameter Estimation". Advances in Mobile Robotics: Proceedings of the Eleventh International Conference on Climbing and Walking Robots and the Support Technologies for Mobile Machines, Coimbra, Portugal. The Eleventh International Conference on Climbing and Walking Robots and the Support Technologies for Mobile Machines 11. World Scientific, 2008.
- Nister, D; Naroditsky, O.; Bergen, J (Jan 2004). "Visual Odometry". Computer Vision and Pattern Recognition, 2004. CVPR 2004. 1. pp. I–652 – I––659 Vol.1. doi:10.1109/CVPR.2004.1315094.
- Comport, A.I.; Malis, E.; Rives, P. (2010). "Real-time Quadrifocal Visual Odometry". In Guest Editors, F. Chaumette, P. Corke and P. Newman. International Journal of Robotics Research, Special issue on Robot Vision 29 (2-3): 245–266. doi:10.1177/0278364909356601.
- Scaramuzza, D.; Siegwart, R. (October 2008). "Appearance-Guided Monocular Omnidirectional Visual Odometry for Outdoor Ground Vehicles". IEEE Transactions on Robotics: 1–12. Retrieved 2008-10-20.
- Corke, P.; Strelow, D.; Singh, S. "Omnidirectional visual odometry for a planetary rover". Intelligent Robots and Systems, 2004.(IROS 2004). Proceedings. 2004 IEEE/RSJ International Conference on 4.
- Campbell, J.; Sukthankar, R.; Nourbakhsh, I.; Pittsburgh, I.R. "Techniques for evaluating optical flow for visual odometry in extreme terrain". Intelligent Robots and Systems, 2004.(IROS 2004). Proceedings. 2004 IEEE/RSJ International Conference on 4.
- Sunderhauf, N.; Konolige, K.; Lacroix, S.; Protzel, P. (2005). "Visual odometry using sparse bundle adjustment on an autonomous outdoor vehicle". Levi, Schanz, Lafrenz, and Avrutin, editors, Tagungsband Autonome Mobile Systeme: 157–163. Retrieved 2008-07-10.
- Konolige, K.; Agrawal, M.; Bolles, R.C.; Cowan, C.; Fischler, M.; Gerkey, B.P. (2006). "Outdoor mapping and navigation using stereo vision". Proc. of the Intl. Symp. on Experimental Robotics (ISER). Retrieved 2008-07-10.
- Olson, C.F.; Matthies, L.;Schoppers, M.; Maimone, M.W. (2002). "Rover navigation using stereo ego-motion". Robotics and Autonomous Systems 43: 215–229. Retrieved 2010-06-06.
- Cheng, Y.; Maimone, M.W.; Matthies, L. (2006). "Visual Odometry on the Mars Exploration Rovers". IEEE Robotics and Automation Magazine 13 (2): 54–62. doi:10.1109/MRA.2006.1638016. Retrieved 2008-07-10.
- Zaman, M. (2007). "High Precision Relative Localization Using a Single Camera". Robotics and Automation, 2007.(ICRA 2007). Proceedings. 2007 IEEE International Conference on.
- Zaman, M. (2007). "High resolution relative localisation using two cameras". Journal of Robotics and Autonomous Systems (JRAS) (Elsevier): 685–692.