Egomotion

Egomotion is defined as the 3D motion of a camera within an environment[1]. In the field of computer vision, egomotion refers to estimating a camera's motion relative to a rigid scene[2]. An example of egomotion estimation would be estimating a car's moving position relative to lines on the road or street signs as observed from the car itself. The estimation of egomotion is important in autonomous robot navigation applications[3].

Overview

The goal of estimating the egomotion of a camera is to determine the 3D motion of that camera within the environment using a sequence of images taken by the camera[4]. The process of estimating a camera's motion within an environment involves the use of visual odometry techniques on a sequence of images captured by the moving camera[5]. This is typically done using feature detection to construct an optical flow from two image frames in a sequence[1] generated from either single cameras or stereo cameras[5]. Using stereo image pairs for each frame helps reduce error and provides additional depth and scale information[6].

Features are detected in the first frame, and then matched in the second frame. This information is then used to make the optical flow field for the detected features in those two images. The optical flow field illustrates how features diverge from a single point, the focus of expansion. The focus of expansion can be detected from the optical flow field, indicating the direction of the motion of the camera, and thus providing an estimate of the camera motion.

There are other methods of extracting egomotion information from images as well, including a method that avoids feature detection and optical flow fields and directly uses the image intensities[1].

See also

References

  1. ^ a b c Irani, M.; Rousso, B.; Peleg S. (June 1994). "Recovery of Ego-Motion Using Image Stabilization". IEEE Computer Society Conference on Computer Vision and Pattern Recognition: 21–23. http://www.vision.huji.ac.il/papers/ego-mtn-cvpr94.pdf. Retrieved 7 June 2010. 
  2. ^ Burger, W.; Bhanu, B. (Nov 1990). "Estimating 3D egomotion from perspective image sequence". IEEE Transactions on Pattern Analysis and Machine Intelligence 12 (11): 1040–1058. http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=61704. Retrieved 7 June 2010. 
  3. ^ Shakernia, O.; Vidal, R.; Shankar, S. (2003). "Omnidirectional Egomotion Estimation From Back-projection Flow". Conference on Computer Vision and Pattern Recognition Workshop 7: 82. http://cis.jhu.edu/~rvidal/publications/OMNIVIS03-backflow.pdf. Retrieved 7 June 2010. 
  4. ^ Tian, T.; Tomasi, C.; Heeger, D. (1996). "Comparison of Approaches to Egomotion Computation". IEEE Computer Society Conference on Computer Vision and Pattern Recognition: 315. http://www.cs.duke.edu/~tomasi/papers/tian/tianCvpr96.pdf. Retrieved 7 June 2010. 
  5. ^ a b Milella, A.; Siegwart, R. (January 2006). "Stereo-Based Ego-Motion Estimation Using Pixel Tracking and Iterative Closest Point". IEEE International Conference on Computer Vision Systems: 21. http://asl.epfl.ch/aslInternalWeb/ASL/publications/uploadedFiles/21_amilella_EgoMotion_rev_publication.pdf. Retrieved 7 June 2010. 
  6. ^ Olson, C. F.; Matthies, L.; Schoppers, M.; Maimoneb M. W. (June 2003). "Rover navigation using stereo ego-motion". Robotics and Autonomous Systems 43 (4): 215–229. http://faculty.washington.edu/cfolson/papers/pdf/ras03.pdf. Retrieved 07 June 2010.