Homography

From Wikipedia, the free encyclopedia

Homography is a concept in the mathematical science of geometry. It is defined as a relation between two figures, such that any given point in one figure corresponds to one and only one point in the other, and vice versa.

Contents

[edit] Computer Vision Applications

In the field of computer vision, a homography is defined in 2 dimensional space as a mapping between a point on a ground plane as seen from one camera, to the same point on the ground plane as seen from a second camera. This has many practical applications, most notably it provides a method for compositing 2D or 3D objects into an image or video with the correct pose. The homography matrix is sometimes known as a homograph, a term which has a different meaning in linguistics.


[edit] 3D plane to plane equation

We have two cameras a and b, looking at points Pi in a plane.

Passing the projections of Pi from bpi in b to a point api in a:


{}^ap_i = K_a \cdot H_{ba} \cdot K_b^{-1} \cdot {}^bp_i

where Hba is

H_{ba} = R - \frac{t n^T}{d}

R is the rotation matrix by which b is rotated in relation to a; t is the translation vector from a to b; n and d are the normal vector of the plane and the distance to the plane respectively.

Ka and Kb are the cameras' intrinsic parameter matrices.

Image:Homography-transl.png

The figure shows camera b looking at the plane at distance d.

[edit] Mathematical definition

Given

p_{a} = \begin{bmatrix} x_{a}\\y_{a}\\1\end{bmatrix}, p_{b} = \begin{bmatrix} x_{b}\\y_{b}\\1\end{bmatrix}, \mathbf{H}_{ab} = \begin{bmatrix} h_{11}&h_{12}&h_{13}\\h_{21}&h_{22}&h_{23}\\h_{31}&h_{32}&h_{33} \end{bmatrix}

Then

p_{b} = \mathbf{H}_{ab}p_{a}

and

p_{a} = \mathbf{H}_{ba}p_{b}

where

\mathbf{H}_{ba} = \mathbf{H}_{ab}^{-1}.


[edit] See also

[edit] External links