CVR-Lib last update 20 Sep 2009

Overview for estimation of geometric transformations

The estimation of a geometric transformation between two images is a complex task with many steps involved.

This page intents to provide a general overlook to all concepts related with the task, and the classes of the library used for this matter.

Steps involved

The steps involved are usually the following
  1. Computation of locations, i.e. of conspicuous places in both images. This can be done for instance with the cvr::fastHessianDetection.
  2. Computation of descriptors for the locations detected. Several descritor extractors can be used and their suitability for each application will be decisive in the selection of the proper class. See for instance cvr::surfLocalDescriptor.
  3. Finding the correspondences between the locations of both images. The success of the estimation depends on finding which points in a first image correspond to which points in the second image. For this task the "similarity" between the locations is computed by means of distances of the descriptors. See cvr::locationMatch for this task
  4. The estimation of the transformation

Estimation of the transformation

The estimation is a complex task and still a hot research topic. You can conceive the process in two levels: a robust estimator, whose goal is to detect and eliminate the "outliers" in the list of correspondences. The robust estimator, which can be cvr::ransacEstimation or cvr::prosacEstimation in turn use a "low-level" transformation estimation.

The library provide several classes for the low-level estimations of planar transformations (2D) or spatial transformation (3D):


Generated on Sun Sep 20 22:08:32 2009 for CVR-Lib by Doxygen 1.5.8