Camera model

Pinhole Camera Model

Given a 3D point in world coordinate, we can calculate the corresponding image pixel (homogeneous coordinate):

where is internal camera parameters.

, which represent the camera rotation and translation in world coordinate, are external camera parameters.

Binocular Camera Model

Here, I also put the introduction of binocular camera model.

Fundamental and Essential Matrix

Fundamental and essential matrix are two important concepts in epipolar constraint. It has been widely used in various monocular 3D vision. Here are the derivations.

Given two correponded feature points in two images ( is the 3D point in world coordinate) and assuming the first camera is on orginal coordinate, we have below equations.

Since is a scalar and . We can put into for simplicity. . . So we have

We have below equation after combining them.

We left cross product on both sides, and the equation becomes

where is the cross product matrix. Since is a vector and it is vertical vector . We left multiply on both sides. Then we have Note that the scale in this estimation is undetermined. Because you can multiply any scalar number on essential matrix without violate the equation (i.e. the equation still holds when translation multiply any scalar number). This problem leads to the depth estimation (trianglation) is undetermined too. So monocular vision cannot calculate the exact scale information.

If we already have interal camera parameters , we can calculate the essential matrix from the a group of feature correspondences and then decomposite essential matrix to the external parameter . If we don’t have interal camera parameters, then we need to calculate the fundamental matrix and figure out the internal and external parameters at the same time.

I’d like to summarize some important properties about epipolar geometry as below:

1.The degree of freedom (DoF) of essential matrix is 5 (3 rotation + 3 translation - scale invariant), fundamental matrix is 7 (9 elements - scale invariant - determinant=0), homography matrix is 8 (9 elements - scale invariant). When it satisfies scale invariant, we can always marginalize out an element like force translation_Z = 1 or last matrix element = 1.

2.Essential matrix has two eigen values and they are the same. Fundamental matrix has two eigen values but they are different. The rank of E and F are both 2. A linear algebra conclusion: the sum of eigen values = the sum of diagonal elements. The multiplication of eigen values = the value of determinant

3.Fundamental matrix . is epipolar point in the second image, is homography matrix. The coefficients of epipolar line can be represented by .

Homography matrix

Sometimes, the fundamental or essential matrix could be ill-posed (e.g. no translation or all correspondence points are on a plane). The essential or fundamental decomposition could be degenerated.

In this case, we build a new model to calculate interal and external parameters.

Given a plane in world coordinate (usually we can assume the first camera coordinate is world coordinate), the plane can be formulated as below

where is the normal vector of plane. is a point on the plane. is the vertical distance between original coordinate and plane.

The corresponded feature points on two images should satisfy the below equation

Since , we can formulate a new equation

That is Note that the complete homography matrix should contain the depth information , like .

If we have a group of feature correspondences, then we can estimate homography matrix and decompose it to .

Trianglation (depth estimation)

There are several methods to estimate the depth of points, when we get the intrinsic and extrinsic camera parameters. Here I’d like to introduce one of them. First, we have

Combine them and we can get

Since are already known, we use for simplicity.

So we have

Multiple in both sides. We have

Since are already known, we can solve now. Then we can calculate .

Camera Model - Canyu Le