Difference between revisions of "Tutorial Geometric Vision"

From BoofCV
Jump to navigationJump to search
(Rewrote text and added to algorithm list)
Line 1: Line 1:
= Geometric Computer Vision Tutorial =
= Geometric Computer Vision Tutorial =


A major component of 3D computer vision is the study of [http://en.wikipedia.org/wiki/Epipolar_geometry epipolar geometry], the geometry of two viewsBoofCV provides many standard algorithms for mathematically describing features across two views and more.  Below is a list of these algorithms.  The API is still being worked on and a more detailed tutorial will be written later on.
The low level mathematics used to estimate the scene's structure and camera ego motion are contained in the Geometric Vision package in BoofCVMost of the standard algorithms in this field are provided with numerious options for comptuing and refining constructs such as the Fundamental/Essential matrix, Trifocal Tensor, camera pose, and points/lines.


'''AS A WHOLE THIS CODE SHOULD BE CONSIDERED EXPERIMENTAL'''
These algorithms are typically used in structure from motiom (SFM) and their correct usage is not trivial, see below for a list of books on the subject.  The API is still being refined to help make this process easier.  As is typical with BoofCV, most of the documentation on usage is provided in the form of examples and JavaDoc comments.


Recommend Reading:
When reviewing the JavaDoc pay close attention to the type of inputs it takes (e.g. pixel or normalized image coordinates) and the direction of the reference frame transform.  Pixels refers to coordinates in the image while normalized image coordinates are in Euclidean space and found by multiplying pixels by the inverse of the intrinsic camera calibration matirx.
 
== Examples ==
 
* [[Example_Fundamental_Matrix| Compute Fundamental Matrix]]


* [http://www.amazon.com/gp/product/0387008934/ref=as_li_ss_tl?ie=UTF8&tag=boofcv-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=0387008934 Yi Ma, et. al., "An Invitation to 3-D Vision"]
** Algebraic approach to 3D vision.
** Easy to use as a reference.
* [http://www.amazon.com/gp/product/0521540518/ref=as_li_ss_tl?ie=UTF8&tag=boofcv-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=0521540518 R. Hartley, and A. Zisserman, "Multiple View Geometry in Computer Vision"]
** Geometric approach and the most popular book on this subject. 
** More content and good algorithms. 
** Mediocre index and tendency to not define terms in some chapters.


== Algorithm List ==


Algorithm List
* Fundamental/Essential Matrix 8+ Points
* Fundamental/Essential Matrix 8+ Points
* Fundamental/Essential Matrix 7 Points
* Fundamental/Essential Matrix 7 Points
Line 27: Line 24:
** Sampson Error
** Sampson Error
** Transfer Error
** Transfer Error
* Efficient PnP 4-Point
* Linear 6 Point Pose  
* Linear 6 Point Pose  
* Linear Pixel Depth
* Linear Pixel Depth
* Perspective-N-Point (PnP)
** Efficient PnP 4-Point (EPnP)
** P3P Grunert
** P3P Finsterwalder
** Non-linear optimization
* Triangulation Geometric
* Triangulation Geometric
* Triangulation Linear
* Triangulation Linear
Line 35: Line 36:
** Sampson Error
** Sampson Error
** Euclidean Error
** Euclidean Error
* Trifocal Tensor
** Linear 7 point
* Decompose Essential
* Decompose Essential
* Decompose Homography
* Decompose Homography
Line 43: Line 46:
** Uncalibrated
** Uncalibrated


Examples
== Camera Model ==
* [[Example_Fundamental_Matrix| Compute Fundamental Matrix]]
 
ADD TO THIS
 
= Recommend Reading =


Related
* [http://www.amazon.com/gp/product/0387008934/ref=as_li_ss_tl?ie=UTF8&tag=boofcv-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=0387008934 Yi Ma, et. al., "An Invitation to 3-D Vision"]
* Zhang 99 Camera Calibration
** Algebraic approach to 3D vision.
* Various different feature trackers and detectors
** Easy to use as a reference.
* [http://www.amazon.com/gp/product/0521540518/ref=as_li_ss_tl?ie=UTF8&tag=boofcv-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=0521540518 R. Hartley, and A. Zisserman, "Multiple View Geometry in Computer Vision"]
** Geometric approach and the most popular book on this subject. 
** More content and good algorithms. 
** Mediocre index and tendency to not define terms in some chapters.

Revision as of 05:43, 6 November 2012

Geometric Computer Vision Tutorial

The low level mathematics used to estimate the scene's structure and camera ego motion are contained in the Geometric Vision package in BoofCV. Most of the standard algorithms in this field are provided with numerious options for comptuing and refining constructs such as the Fundamental/Essential matrix, Trifocal Tensor, camera pose, and points/lines.

These algorithms are typically used in structure from motiom (SFM) and their correct usage is not trivial, see below for a list of books on the subject. The API is still being refined to help make this process easier. As is typical with BoofCV, most of the documentation on usage is provided in the form of examples and JavaDoc comments.

When reviewing the JavaDoc pay close attention to the type of inputs it takes (e.g. pixel or normalized image coordinates) and the direction of the reference frame transform. Pixels refers to coordinates in the image while normalized image coordinates are in Euclidean space and found by multiplying pixels by the inverse of the intrinsic camera calibration matirx.

Examples


Algorithm List

  • Fundamental/Essential Matrix 8+ Points
  • Fundamental/Essential Matrix 7 Points
  • Essential Matrix 5 Points
  • Fundamental Matrix Non-linear Optimization
    • Sampson Error
    • Epipolar Error
  • Homography 4 Points (Linear)
  • Homography Optimization
    • Sampson Error
    • Transfer Error
  • Linear 6 Point Pose
  • Linear Pixel Depth
  • Perspective-N-Point (PnP)
    • Efficient PnP 4-Point (EPnP)
    • P3P Grunert
    • P3P Finsterwalder
    • Non-linear optimization
  • Triangulation Geometric
  • Triangulation Linear
  • Triangulation Optimization
    • Sampson Error
    • Euclidean Error
  • Trifocal Tensor
    • Linear 7 point
  • Decompose Essential
  • Decompose Homography
  • Bundle Adjustment
    • Dense (inefficient/slow)
  • Stereo Rectification
    • Calibrated
    • Uncalibrated

Camera Model

ADD TO THIS

Recommend Reading