Image Processing Reference

In-Depth Information

10.4 Further Information

Equation
10.12
might seem a bit strange an unmotivated. An explanation requires

insides into the projective aspects of a camera, meaning how a 3D world point is

mapped into the sensor in the camera. An approximation of this mapping is the so-

called
pin-hole model
and from that Eq.
10.12
can be derived. The pin-hole model

is an approximation meaning that the equation is not a perfect mapping. If a more

precise mapping is required, then look into the field of (geometric)
camera calibra-

tion
. While the resulting math is a bit hard, the solution is simple. You print a paper

containing a chessboard and glue it onto a rigid object. Capture a number of images

where you hold the chessboard at different angles with respect to the camera and let

a program do the rest. The output from the program is a function that maps between

the two coordinate systems
(x, y)
and
(x
,y
)
. Both OpenCV and Matlab have good

implementations of this method.

Equation
10.12
can actually also be made more precise by using more than four

corresponding points, the more the better. This corresponds to expanding Eq.
10.17

by adding more equations. We will then have more equations than unknowns, which

is known as an overdetermined system.

Yet another method for finding the mapping between two coordinate systems

is the use of a look-up-table (LUT). We find a number of corresponding points

(usually many more than four), but instead of using them to calculate the mapping

we simply store them in a file. Later when the system needs to map a known point

P(x,y)
from
f(x,y)
to a point
P
(x
,y
)
in the other coordinate system
g(x
,y
)
,

we first find the four points in the file that are closest to
P(x,y)
and then combine

their respective mappings into
P
(x
,y
)
. Say the four closest points are
P
1
(x, y)
,

P
10
(x, y)
,
P
4
(x, y)
, and
P
7
(x, y)
. One approach is then to calculate the Euclidean

distance between each point and
P(x,y)
, yielding
d
1
,
d
10
,
d
4
, and
d
7
. The mapping

of
P(x,y)
can now be calculated as

1
/d
1

w

1
/d
10

w

P
(x
,y
)

P
1
(x
,y
)

P
10
(x
,y
)

=

·

+

·

1
/d
4

w

1
/d
7

w

P
4
(x
,y
)

P
7
(x
,y
)

+

·

+

·

(10.18)

1

d
1
+

1

d
10
+

1

d
4
+

1

d
7

w
=

where
P
1
(x
,y
)
is the mapping value for
P
1
(x, y)
found in the LUT.

10.5 Exercises

Exercise 1:
Explain the following concepts: homogeneous coordinates, interpola-

tion, homography.

Exercise 2:
Explain the following concepts and the underlying math: Translation,

scaling, rotation, shearing, affine transformation.