Content uploaded by Carlos Lopez-Franco

Author content

All content in this area was uploaded by Carlos Lopez-Franco on May 18, 2015

Content may be subject to copyright.

3

Paracatadioptric Geometry using

Conformal Geometric Algebra

Carlos López-Franco

Computer Science Department, University of Guadalajara,

Mexico

1. Introduction

Computer vision provides non-contact measurements of the world, extending the robot

ability to operate in circumstances and environments which can not be accurately

controlled. The use of visual observations to control the motions of robots has been

extensively studied, this approach is referred in literature as visual servoing.

Conventional cameras suffer from a limited field of view. One effective way to increase the

field of view is to use mirrors in combination with conventional cameras. The approach of

combining mirrors with conventional cameras to enhance sensor field of view is referred as

catadioptric image formation.

In order to be able to model the catadioptric sensor geometrically, it must satisfy the

restriction that all the measurements of light intensity pass through only one point in the

space (effective viewpoint). The complete class of mirrors that satisfy such restriction where

analyzed by Baker and Nayar [1]. In [2] the authors deal with the epipolar geometry of two

catadioptric sensors. Later, in [3] a general model for central catadioptric image formation

was given. Also, a representation of this general model using the conformal geometric

algebra was showed in [4].

Visual servoing applications can be benefit from sensors providing large fields of view. This

work will show how a paracatadioptric sensor (parabolic mirror and a camera) can be used

in a visual servoing task for driving a nonholonomic mobile robot.

The work is mainly concerned with the use of projected lines extracted from central

catadioptric images as input of a visual servoing control loop. The paracatadioptric image of

a line is in general a circle but sometimes it could be a line. This is something that should be

taken into account to avoid a singularity in the visual servoing task.

In this work we will give a framework for the representation of image features in parabolic

catadioptric images and their transformations. In particular line images in parabolic

catadioptric images are circles. While of course conics and therefore circles can be

represented in the projective plane we will provide a much more natural representation

utilizing the conformal geometric algebra (CGA).

In CGA the conformal transformations are linearized using the fact that the conformal

group on Rn is isomorphic to the Lorentz group on Rn+1. Hence nonlinear conformal

transformations on Rn can be linearized by representing them as Lorentz transformations

and thereby further simplified as versor representation. These versors can be applied not

Open Access Database www.i-techonline.com

Source: Computer Vision, Book edited by: Xiong Zhihui,

ISBN 978-953-7619-21-3, pp. 538, November 2008, I-Tech, Vienna, Austria

Computer Vision

30

only to points but also to all the CGA entities (spheres, planes, circles, lines and point-pairs).

In this model a b c represents the circle thought the three points. If one of these points is a

null vector e∞ representing the point at infinity, then a ∧ b ∧ e∞ represents the straight line

trough a and b as a circle through infinity. This representation could not be available

without the concept of null vector.

In contrast with other catadioptric sensors the paracatadioptric sensors have certain

properties that make them very interesting. One important property is that paracatadioptric

projection is conformal, this motivate us to use the conformal geometric algebra to represent

it. Thus the paracatadioptric projection can be expressed linearly using versors of CGA. The

advantage of our framework is that the projection can be applied to circles and lines in the

same way as it does for points. That advantage has a tremendous consequence since the

nonlinearity of the paracatadioptric image has been removed. As a result the input features

for the visual servoing control loop can be handled effectively in order to design an efficient

vision-based control scheme.

The rest of this paper is organized as follows: The next section will give a brief introduction

to the conformal geometric algebra. In section 3 we show the equivalence between

inversions on the sphere and the parabolic projections. Then, in section 4 we show the

paracatadioptric image formation using the proposed framework. Later, in section 5 an

application of a paracatadioptric stereo sensor is given. Finally, the conclusions are in

section 6.

2. Conformal geometric algebra

In general, a geometric algebra [5] Gn is a n-dimensional vector space Vn over the reals R.

The geometric algebra is generated defining the geometric product as an associative and

multilinear product satisfying the contraction rule

(1)

where ε is −1, 0 or 1 and is called the signature of ei. When ei ≠ 0 but its magnitude |ei| is

equal to zero, ei is called null vector.

The geometric product of a geometric algebra Gp,q,r for two basis ei and ej is defined as

(2)

Thus, given a n-dimensional vector space Vn with an orthonormal basis {e1, e2, ...en} its

corresponding geometric algebra is generated using the geometric product. We can see that

for a n-dimensional vector space, there are 2n ways to combine its basis using the geometric

product. Each of this product is called a basis blade. Together they span all the space of the

geometric algebra Gn.

We also denote with Gp,q a geometric algebra over V p,q where p and q denote the signature of

the algebra. If p ≠ 0 and q = 0 the metric is euclidean Gn, if non of them are zero the metric is

Paracatadioptric Geometry using Conformal Geometric Algebra

31

pseudoeuclidean. A generic element in Gp,q is called a multivector. Every multivector M can

be written in the expanded form

(3)

where represents the blade of grade i. The geometric product (denoted juxtaposition)

of vectors is defined with a scalar part called the inner product and an outer product, which

is a non scalar quantity, for example the outer product of a and b is

(4)

The conformal geometric algebra [5] is the geometric algebra over an homogeneous

conformal space. This framework extends the functionality of projective geometry to include

circles and spheres. Furthermore, the dilations, inversions, rotations and translations in 3D

becomes rotations in the 5D conformal geometric algebra. These transformations can not

only be applied to points or lines, but to all the conformal entities (points, lines, planes,

point pairs, circles and spheres).

In the conformal geometric algebra (CGA) we firstly add two extra vector basis e+ and e− to

our R3 Euclidean space {e1, e2, e3, e−, e+}, where = 1 and = −1. We denote this algebra

with G4,1 to show that four basis vectors square to +1 and one basis vector square to −1. In

addition we define

(5)

we note that they are null vectors since . The vector e0 can be interpreted as

the origin of the coordinate system, and the vector e∞ as the point at infinity. A few useful

properties (easily proved) about this basis are

(6)

Where E = e+ ∧ e− is called the Minkowski plane.

To specify a 3-dimensional Euclidean point in an unique form in this 5-dimensional space,

we require the definition of two constraints. The first constraint is that the representation

must be homogeneous, that is X and X represent the same point in the Euclidean space.

The second constraint requires that the vector X be a null vector (X2 = 0). The equation that

satisfies these constraints is

(7)

Computer Vision

32

where x ∈ Rn and X ∈ Nn+1. Note that this is a bijective mapping. From now and in the rest

of the paper the points X are named conformal points and the points x are named Euclidean

points. A conformal point (7) lies on the intersection of the null cone Nn+1 and the

hyperplane Pn+1(e∞, e0), that is

(8)

A sphere on the CGA can be defined as

(9)

To test for incidence of a point X with an entity S expressed in the inner product null space

(IPNS) we use

(10)

A point in the CGA is represented using (9), but setting the radius r = 0 we get (7). Also note

that if x = 0 in (7) we get the point e0 of (5) corresponding to the origin of Rn. One interesting

thing about the conformal points is that their inner product

(11)

is a directly representation of the Euclidean distance between the two points. Thus, the inner

product has now a geometric meaning due to the concept of null vectors. Therefore, the

square of a conformal point X2 = XX = X ·X +X ∧X = X ·X = 0 represents the Euclidean

distance with itself.

In the CGA two multivectors represent the same object if they differ by just a non zero scalar

factor, that is

(12)

Thus, multiplying (9) with a scalar λ we get

(13)

if we calculate the inner product of the above equation with respect to the point at infinity e∞

(14)

Paracatadioptric Geometry using Conformal Geometric Algebra

33

we have recover the scalar factor λ. Therefore, if we want to normalize a sphere S (i.e. λ = 1)

we apply

(15)

The same equation can be applied to points, remember that they are nothing but spheres of

zero radius. For other objects the common normalization is by its magnitude that is

(16)

where represents the i-vector part of the multivector M.

An important operation that is used in the geometric algebra is called reversion, denoted by

”~” and defined by

(17)

2.1 Geometric objects representation

The geometric objects can also be defined with the outer product of points that lie on the

object. For example, with four points we define the sphere

(18)

The incidence of a point X with the sphere S* expressed in the outer product null space

(OPNS) is

(19)

Both representation of the sphere (S and S*) are dual to each other, i.e. orthogonal to each

other in the representative conformal space. Therefore, the representations are equivalent if

we multiply them by the pseudoscalar Ic = e1 ∧ e2 ∧ e3 ∧ e+ ∧ e−, thus

(20)

If one of the points of the sphere (18) is the point at infinity, then the sphere becomes a plane

(a flat sphere with infinite radius)

(21)

Similarly, the outer product of three points defines a circle C* = A ∧ B ∧ C, and if one of the

points of the circle is at infinity (C* = A∧B ∧e∞) then the circle becomes a line (a flat circle

with infinite radius), see (Table 1). The line can also be defined as the outer product of two

spheres

(22)

Computer Vision

34

which is the line passing through the centers of the spheres S1 and S2. If instead of two

spheres we take one sphere and a point

(23)

then the line passes through the center of the sphere S and point X.

A complete list of the entities and their representations are given in (Table 1). The table

shows a geometric object called point-pair, which can be seen as the outer product of two

points

(24)

The point-pair represents a 1-dimensional sphere, and it can be the result of the intersection

between: a line and a sphere, two circles or three spheres. In addition, if one of the points is

the point at infinity

(25)

then we get a special point-pair which is called flat-point. If the intersection between two

lines exists, then they intersect in one point X and also at the point at infinity. It also can be

the result of the intersection between a line and a plane.

Table 1. Entities in conformal geometric algebra

2.2 Conformal transformations

A transformation of geometric objects is said to be conformal if it preserves angles. Liouville

was the first that proved that any conformal transformation on Rn can be expressed as a

composite of inversions and reflections in hyperplanes. The CGA G4,1 allows the computation

of inversions and reflections with the geometric product and a special group of multivectors

called versors.

2.3 Objects rigid motion

In conformal geometric algebra we can perform rotations by means of an entity called rotor

which is defined by

(26)

Paracatadioptric Geometry using Conformal Geometric Algebra

35

where l is the bivector representing the dual of the rotation axis. To rotate an entity, we

simply multiply it by the rotor R from the left and the reverse of the rotor from the right,

If we want to translate an entity we use a translator which is defined as

(27)

With this representation the translator can be applied multiplicatively to an entity similarly

to the rotor, by multiplying the entity from the left by the translator and from the right with

the reverse of the translator:

Finally, the rigid motion can be expressed using a motor which is the combination of a rotor

and a translator: M= TR, the rigid body motion of an entity is described with

For more details on the geometric algebra and CGA, the interested reader is referred to view

[5–9].

3. Paracatadioptric projection and inversion

In this section we will see the equivalence between the paracatadioptric projection and the

inversion. The objective of using the inversion is that it can be linearized and represented by

a versor in the conformal geometric algebra. This versor can be applied not only to points

but also to point-pairs, lines, circles, spheres and planes.

The next subsection shows the equivalence between the paracatadioptric projection and the

inversion, later the computation of the inversion using will be shown.

3.1 Paracatadioptric projection

The parabolic projection of a point is defined as the intersection

of the line xf (where f is the parabola’s focus) and the parabolic mirror, followed by an

orthographic projection. The orthographic projection is to a plane perpendicular to the axis

of the mirror.

The equation of a parabola with focal length p, whose focus is at the origin is

(28)

The projection of the point x to the mirror is

(29)

where λ is defined as

(30)

Finally, the point xp is projected onto a plane perpendicular to the axis of the parabola. The

reason for this is that any ray incident with the focus is reflected such that it is perpendicular

to the image plane.

Computer Vision

36

3.2 Relationship between inversion and parabolic projection

The inversion of a point x ∈ G3 with respect to sphere centered at the origin, and radius r, is

a point x’ ∈ G3 lying on the line defined by the point x and the origin, if x’ is the inverse of

the point x then

(31)

When the sphere is centered at the point c ∈ G3, the inverse of the point x is defined as

(32)

As we already mention, the parabolic projection of a point x can be found with (30). Now,

given a sphere centered at the origin with radius p, see Fig. 1. The projection of the point x

on the sphere is simply

(33)

Fig. 1. Parabolic projection.

Note that there are three similar triangles in Fig. 1, which can be seen clearly in Fig. 2. The three

triangles are : NSQ, NPS and SPQ. Therefore

which is the exactly the inversion of a point with respect to a circle centered at N and radius

Thus we have that

(34)

Thus, the parabolic projection of a point x is equivalent to the inversion of a point , where

the point lies on a sphere s centered at the focus of the parabola and radius p, with respect to

a sphere s0, centered at n and radius 2p, see Fig. 3. To prove this equivalence we can use the

definitions of the parabolic projection and inversion. With the definition of inversion (31) we

have the following equation

(35)

where n = pe3 ∈ G3.

(36)

Paracatadioptric Geometry using Conformal Geometric Algebra

37

Fig. 2. The three similar triangles of the stereographic projection

thus, the projected point is

(37)

The constant is equal to

(38)

which is exactly the same value of the scalar λ from the parabolic projection (30). Therefore,

we can conclude that the parabolic projection (29) and the inversion (37) of the point x are

equivalent.

Fig. 3. Equivalence between parabolic projection and inversion

3.3 Inversion and the conformal geometric algebra

In the conformal geometric algebra, the conformal transformations are represented as

versors [7]. In particular, the versor of the inversion is a sphere, and it is applied in the same

way as the rotor, or the translator. Given a sphere of radius r centered at c represented by

the vector

(39)

the inversion of a point X with respect to S is

Computer Vision

38

(40)

To clarify the above equation, let us analyze the special case when S is a unit sphere,

centered at origin. Then S reduces to

(41)

thus (40) becomes

(42)

The first term e+xe+ is equal to

(43)

The term is equivalent to

(44)

Finally, the last term is

(45)

Rewriting (42) we have

(46)

From the above equation we recognize the Euclidean point

(47)

which represents the inversion of the point x. The case of the inversion with respect to an

arbitrary sphere is

(48)

where f(x) is equal to (37), the inversion in Rn. The value σ represents the scalar factor of the

homogeneuos point.

The interesting thing about the inversion in the conformal geometric algebra is that it can be

applied not only to points but also to any other entity of the CGA. In the following section

we will see how the paracatadioptric image formation can be described in terms of the CGA.

Paracatadioptric Geometry using Conformal Geometric Algebra

39

4. Paracatadioptric image formation and conformal geometric algebra

In the previous section we saw the equivalence between the parabolic projection and the

inversion. We also saw how to compute the inversion in the CGA using a versor, in this case

the versor is simply the sphere where the inversion will be carried out. In this section we

will define the paracatadioptric image formation using the CGA.

Given a parabolic mirror with a focal length p, the projection of a point in the space through

the mirror followed by an orthographic projection can be handled by two spheres. Where

the first sphere is centered at the focus of the mirror, and its radius is p. This sphere can be

defined as

(49)

The second sphere S0 can be defined in several ways, but we prefer to define it with respect

to a point N on the sphere S (i.e. N · S = 0). If we compare the point equation (7) with the

sphere equation (9), we can observe that the sphere has an extra term thus if we

extract it to the point N we get a sphere centered at N and with radius r. The sphere S0 is

defined as

(50)

where 2p is the radius of the sphere. With these two spheres the image formation of points,

circles and lines will be showed in the next subsections.

4.1 Point Images

Let X be a point on the space, its projection to the sphere can be found by finding the line

passing through it and the sphere center, that is

(51)

then, this line is intersected with the sphere S

(52)

Where Zs is a point-pair the paracatadioptric projection of this point can

be found with

(53)

which is also a point pair The paracatadioptric projection of the point

closest to X, can be found with

(54)

and then with

Computer Vision

40

(55)

The point Xc is the projection of the point X onto the catadioptric image plane, which is

exactly the same point obtained through a parabolic and orthographic projections (Fig. 4).

Fig. 4. Point projection onto the catadioptric image plane

4.2 Back projection of point images

Given a point Xc on the catadioptric image (Fig. 4), its projection to the sphere is simply

(56)

Since the point Xs and the sphere center lie on the line , it can be calculated as

(57)

The original point X lies also on this line, but since we have a single image the depth can not

be determined and thus the point X can no be calculated.

4.3 Circle images

The circle images can be found in the same way as for points images. To see that, let

X1,X2,X3 be three points on the sphere S, the circle defined by them is

(58)

which can be a great or a small circle. The projection of the circle onto the catadioptric image

is carried out as in (55)

(59)

Where could be a line, but there is no problem since it is represented as a circle with one

point at infinity.

The back projection of a circle (or line) that lie on the catadioptric image plane, can be

found easily with

Paracatadioptric Geometry using Conformal Geometric Algebra

41

(60)

In Fig. 5 the projection of circles on the sphere to the catadioptric image plane is shown.

Fig. 5. Projection of circles on the sphere.

4.4 Line images

To find the paracatadioptric projection of a line L* in the 3D space (Fig. 59), we first project

the line to the sphere S. The plane defined by the line L* and the sphere S is

(61)

then the projection of the line L* onto the sphere is

(62)

where Cs is a great circle. Finally the paracatadioptric projection of L* can be found with the

inversion of the circle Cs, that is

(63)

Fig. 6. Projection of a line in the space

5. Robot control using paracatadioptric lines

The problem to be solved is the line following with a mobile robot. The mobile robot is a

nonholonomic system with a paracatadioptric system. We assume that the camera optical

Computer Vision

42

axis is superposed with the rotation axis of the mobile robot. Thus, the kinematic screw is

only composed with a linear velocity v along the e1 axis and an angular velocity ω.

The problem will be solved using paracatadioptric image of lines. One of those lines is the

paracatadioptric image of the desired line Cd and the other one is the current

paracatadioptric image of the tracked line C. These lines will be projected to the sphere and

then to a perspective plane Πp, in this planes the image projection are straight lines. Finally,

with the lines on the perspective plane we will compute the angular and lateral deviations.

Consider the paracatadioptric image Cd of the desired 3D line the inverse

paracatadioptric projection of Cd can be found with

(64)

Then the plane where the circle lies is defined as

(65)

Finally, the intersection of the plane with the perspective plane is

(66)

this line is the projection of the paracatadioptric image line into the perspective plane

. The perspective plane can be defined as

(67)

where and

(68)

The expression S ∧ S∧e∞ represents the line passing through the centers of both spheres (S

and S0). The value of the scalar δ can be defined arbitrarily.

The current paracatadioptric line C can be projected into the line L in the perspective plane

in similar way using the above equations, see Fig. 7.

Fig. 7. a) Paracatadioptric projection of the desired and current line. b) Projection of the

paracatadioptric lines into the perspective plane.

The lines and , on the perspective plane, define a rotor which can be computed with

(69)

Paracatadioptric Geometry using Conformal Geometric Algebra

43

where represents the geometric product of the two lines. The angle between the lines

is then

(70)

which represents the angular deviation. The lateral deviation can be found with the signed

distance between the lines, the signed distance between the lines is

(71)

The angular and lateral deviations are used in a dynamic controller ,proposed in [10], to

generate the robot’s angular velocity. The dynamic controller is

(72)

where the control gains are defined as

(73)

(74)

The value of is left free to specify faster or slower systems, and where ξ is usually set to

1/2. The trajectories of the paracatadioptric images and the current paracatadioptric line

are show in Fig. 8. These trajectories confirm that task is correctly realized. In Fig. 9 the angular

an lateral deviations of the current paracatadioptric image with respect to the desired image

are shown. These figures show that both deviations are well regulated to zero.

a) b)

Fig. 8. a) Tracked line in the paracatadioptric image. b) Trajectory of the projected lines in

the paracatadioptric image.

6. Conclusions

In this work a comprehensive geometric model for paracatadioptric sensors has been

presented. The model is based on the equivalence between paracatadioptric projection and the

inversion. The main reason for using the inversion is that it can be represented by a versor (i.e.

a special group of multivectors) in the CGA. The advantage of this representation is that it can

be applied not only to points but also to point-pairs, lines, circles, spheres and planes.

Computer Vision

44

The paracatadioptric projection and back-projection of points, point-pairs, circles, and lines is

simplified using the proposed framework. This will allow an easier implementation of

paracatadioptric sensors in more complex applications.

Fig. 9. a) Angular deviation. b) Lateral Deviation.

The proposed framework has been used to control a nonholonomic robot, with a

paracatadioptric sensor. The input to the control scheme are the paracatadioptric images of

the desired and current lines. With help of the proposed model the paracatadioptric images

are back projected to sphere, and then projected to a perspective plane. Then, the lines on

the perspective plane are used to compute the angular and lateral deviations. Finally, with

these values the angular velocity of the robot can be computed using a dynamic controller.

The application showed that is not necessary to have 3D measurements of the scene to solve

the task, indeed it is possible to solve it from image data only.

7. References

Baker, S., Nayar, S.: A theory of catadioptric image formation. In Proc. Int. Conf. on

Computer Vision (1998) 35–42

Svoboda, T., P.T., Hlavac, V.: Epipolar geometry for panoramic cameras. In Proc. 5th

European Conference on Computer Vision (1998) 218–231

Geyer, C., Daniilidis, K.: A unifying theory for central panoramic systems and practical

implications. Proc. Eur. Conf. on Computer Vision (2000) 445–461

Bayro-Corrochano, E., L´opez-Franco, C.: Omnidirectional vision: Unified model using

conformal geometry. Proc. Eur. Conf. on Computer Vision (2004) 318–343

Hestenes, D., Li, H., Rockwood, A.: New algebraic tools for classical geometry. In Sommer,

G., ed.: Geometric Computing with Clifford Algebra. Volume 24., Berlin

Heidelberg, Springer-Verlag (2001) 3–26

Bayro-Corrochano, E., ed.: Robot perception and action using conformal geometric algebra.

Springer- Verlag, Heidelberg (2005)

Li, H., Hestenes, D.: Generalized homogeneous coordinates for computational geometry. In

Sommer, G., ed.: Geometric Computing with Clifford Algebra. Volume 24., Berlin

Heidelberg, Springer-Verlag (2001) 27–60

Rosenhahn, B., Gerald, S.: Pose estimation in conformal geometric algebra. Technical Report

Number 0206 (2002)

Perwass, C., Hildenbrand, D.: Aspects of geometric algebra in euclidean, projective and

conformal space. Technical Report Number 0310 (2003)

Canudas de Wit, E., S.B., Bastian, G., eds.: Theory of Robot Control. Springer-Verlag (1997)

Geyer, C., Daniilidis, K.: Paracatadioptric camera calibration. IEEE Transactions on Pattern

Analysis and Machine Intelligence 24 (2002) 687–695