Abstract
When reconstructing 3D scene by an autonomous system we usually use a pin hole camera. To adopt the result for a human vision, this camera must be replaced by a human eye-like device. Therefore we derive certain characteristics of this model in an appropriate mathematical formalism. In particular, we escribe the general position of a human eye and its movements using the notions of geometric algebra. The assumption is that the eye is focused on distant targets. As the main result, we describe the eye position and determine all axes of rotation available in the eye general position in terms of geometric algebra. All the expressions are based on medically traced laws of Donders’ and Listing.
Similar content being viewed by others
Keywords
1 Introduction
This paper deals with human-like monocular vision. We assume that the eye is focused on distant targets. Theoretically, for a specific gaze direction, there are many appropriate eye positions that differ from each other by the rotation around the axis of the gaze direction. However, the medically proved Donders’ Law applies which states that there is only one eye position for a specific gaze direction.
There is another medically proved law, which is called Listing’s. This law says that when the eye gazes straight ahead, i.e. it is in the primary position, all movements can be obtained as rotations around an axis that lies in a plane perpendicular to the gaze direction, so-called Listing’s plane. The exact forms of Donders’ law and Listing’s law are provided in Sect. 3, for further details see [16].
The goal of this paper is to determine the possibilities of the eye movement depending on the gaze direction, i.e. the eye is in general position and is focused on targets in infinity. Our argumentation is based on Donders’ law and Listing’s law. For calculations we use geometric algebra \(\mathbb {G}_3\), which is suitable for point transformations such as the rotation around axes that pass through the origin of the coordinate system. Note that the properties and definitions of geometric algebras can be found in e.g. [2, 4, 5, 8, 13,14,15]. Let us mentioned applications in engineering in e.g. [7, 10, 12] and in image processing in e.g. [6, 9, 11]. Geometric algebras can also be successfully used for the description of binocular kinematics, see e.g. [1].
2 Geometric Algebra \(\mathbb {G}_3\)
Let us formally define element G of the algebra \(\mathbb {G}_3\) as
where \(a_i \in \mathbb {R}\), \(i \in \{0,1,...,7\}\) and \(\{1,\sigma _1,\sigma _2,\sigma _3,\sigma _{23},\sigma _{31},\sigma _{12},\sigma _{123}\}\) is a formal basis of a vector space. As the algebra operation on \(\mathbb {G}_3\) there is a multiplication, called geometric product, of two specific elements which satisfies the following identities:
In \(\mathbb {G}_3,\) let us consider the elements in the form
such that its Euclidean norm ||R|| is equal to 1, i.e.
Such elements are called rotors. Consequently, we define the conjugate rotor to rotor R as follows:
Alternatively, we can write the rotor \(R = a_0 + a_1\sigma _{23} + a_2\sigma _{31} + a_3\sigma _{12}\) in the goniometric form as follows:
where
Let us note that N then plays the role of the axis of rotation. Consequently, the conjugate rotor of the rotor (4) is of the form \(\overline{R} = \cos {\frac{\theta }{2}} - N\sin {\frac{\theta }{2}}\). The set of rotors together with the multiplication as in \(\mathbb {G}_3\) form a group [2] with the unit element \(e = 1\) and the inversion defined as \(R^{-1} = \overline{R}\). If we consider the Euclidean embedding of \(\mathbb {R}^3\) into \(\mathbb {G}_3\), we can represent a vector \(\overrightarrow{u} = (x,y,z) \in \mathbb {R}^3\) as the element of \(\mathbb {G}_3\) in the form \(U = x\sigma _1 + y\sigma _2 + z\sigma _3\). To rotate the vector \(U = x\sigma _1 + y\sigma _2 + z\sigma _3\) around axis \(N = n_1\sigma _{23} + n_2\sigma _{31} + n_3\sigma _{12}\), \(||N|| = 1\) by the angle \(\theta \) we only need to provide the following calculation:
where \(R = \cos {\frac{\theta }{2}} + N\sin {\frac{\theta }{2}}\). We received vector \(\widetilde{U}\) which indeed is the vector U rotated around the axis N by the angle \(\theta \) in the positive direction, see [14] for verification. For the composed rotation of a vector U by two successive rotors \(R_1\) and \(R_2\), we can use just one total rotor \(R = R_2R_1\). Indeed, because rotors form a group and therefore \(R^{-1}=\overline{R}\), the following assertion holds:
3 Donders’ Law and Listing’s Law
Let the eye look straight ahead w.r.t. the human proportions. Then we say that it’s in the primary position, see Fig. 1. In the eye there is a point through which all axes of rotation pass. This point is called the centre of the eye rotation. In this paper we understand the eye as a sphere whose centre is in the centre of the eye rotation.
Let \(H=(C,h_1,h_2,h_3)\) be the Cartesian coordinate system attached to the human head. Let C be both the centre of the eye rotation and the origin of the coordinate system. When the head is in the erected position, axis \(h_1\) is forward-facing and forward-oriented, axis \(h_2\) is horizontal and oriented to the left, axis \(h_3\) is vertical and oriented upwards, see Fig. 1. Let \(\overrightarrow{h}_1,\overrightarrow{h}_2,\overrightarrow{h}_3\) be the unit vectors fixed to the head that lie on the axes \(h_1, h_2,h_3,\) respectively, and \(\overrightarrow{e}_1,\overrightarrow{e}_2,\overrightarrow{e}_3\) be the unit vectors fixed to the eye in such a way that if the eye is in the primary position, then \(\overrightarrow{h}_1=\overrightarrow{e}_1,\overrightarrow{h}_2=\overrightarrow{e}_2,\overrightarrow{h}_3=\overrightarrow{e}_3\), see Fig. 1.
Let the head be in the erected position and the eye focused on the targets in infinity, then the following rules are valid:
Donders’ Law: The eye position is determined by the gaze direction, [3, 16].
Listing’s Law: When the eye is in the primary position, it can rotate around axes lying in plane that is perpendicular to the gaze direction only. This plane passes through the centre of rotation and is called the Listing’s plane, see Fig. 2, [3, 16].
4 Eye Position
In this Section we express the general position of the eye w.r.t. the gaze direction \(\overrightarrow{e}_1 = (p_1,p_2,p_3)\) in the primary position. We describe the position by means of the unit vectors \(\overrightarrow{e}_1=(p_1,p_2,p_3)\) and \(\overrightarrow{e}_3=(x_1,x_2,x_3)\) that are fixed to the eye, see Sect. 3 and Fig. 1.
First, we will express the vectors \(\overrightarrow{e}_1\) and \(\overrightarrow{e}_3\) in terms of \(\mathbb G_3\) as the elements \(E_1\) and \(E_3\) using the rotor \(R= a_0 + a_2\sigma _{31} + a_3\sigma _{12}\) which satisfies the Listing’s law, i.e. the appropriate axis of rotation is from the Listing’s plane.
where \(H_1,H_3\) are the images of the Euclidean embedding of the head-attached Cartesian coordinate system unit vectors \(h_1\) and \(h_3,\) respectively. Clearly we obtained that \(x_1 = -p_3\). Because the vectors \(\overrightarrow{e}_1\) and \(\overrightarrow{e}_3\) are orthogonal and unit, the following equalities for their standard scalar product hold:
For \(p_2 \not = 0\) we express \(x_2\) from (11) and substitute it in (12) consequently:
After several algebraic operations we obtain from (14) the following quadratic equation:
with discriminant
which has the following solution
If we substitute (16) in (13), we get
Now we need to determine the appropriate \(x_2\) and \(x_3\), respectively. If we substitute the coefficients of (9) for \((p_1,p_2,p_3)\) and the coefficients of (10) for \((x_1,x_2,x_3)\) into (16) and (17), respectively, we obtain the unique form of \(x_2\) and \(x_3\) as follows:
Therefore for \(p_2 \not = 0\) there is a solution:
For \(p_2 = 0,\) we derive from (11) and (12) the following assertions:
The solution for \(p_2=0\) is then of the form:
As a result, we obtained the description of the vector \(\overrightarrow{e}_3\) expressed by the coefficients of the gaze direction \(\overrightarrow{e}_1 = (p_1,p_2,p_3)\), see (20), (21) and (22). This determines the general position completely.
5 Velocity Plane in General Eye Position
In this section we want to determine the axes available for the rotation of the eye in general position. When the eye is in the primary position, it can rotate around the axes lying in the Listing’s plane only. These rotations are then expressed by the rotor \(R = a_0 + a_2\sigma _{31} + a_3\sigma _{12}\). Indeed, let us suppose that the eye can get from primary position to the position A by rotor R and another position B by different rotor \(R_1 = b_0 + b_2\sigma _{31} + b_3\sigma _{12}\), respectively. Now we want to express the transformation that moves the eye from the position B to some position C with the same gaze direction like in position A. Because Donders’ law is valid, the assertions \(A=C\) and \(R = R_2R_1\) must hold, see the calculation of the composed rotation at the end of Sect. 2. We determine the rotor \(R_2\) from the following equation:
Indeed, by right multiplication by \(\overline{R}_1\) we calculate
Therefore, the axes of rotation expressed by means of the rotors R and \(R_1\) of the eye in general position are of the form
Let us fix the coefficients \(b_0,b_2,b_3\) and let us consider the coefficients \(a_0,a_2,a_3\) as parameters. Then by elementary operations we derive from the initial system of linear equations the following:
The Eq. (23) provides the description of a plane that contains all available axes of rotation of the eye in general position. This plane is called the velocity plane.
Velocity plane is expressed by the coefficients of a general rotor \(R_1 = b_0 + b_2\sigma _{31} + b_3\sigma _{23}\) determined by the axis from the Listing’s plane, but we want to express this plane by the parameters of the gaze direction \(\overrightarrow{e}_1 = (p_1,p_2,p_3)\). We know from (9) that
Therefore we derived the following equations:
Consequently, we express the coefficients of the rotor \(R_1\) as follows:
Now we have the general equation of the velocity plane in terms of the coefficients of gaze direction \(\overrightarrow{e}_1 = (p_1,p_2,p_3)\), \(p_1 \not = -1\) in the form:
After multiplication by the term \(2\sqrt{{p_1 \over 2} + {1 \over 2}}\) we obtain:
Therefore we conclude that when the eye is focused in the general direction \(\overrightarrow{e}_1 = (p_1,p_2,p_3)\), it can rotate around axes lying within the plane (24).
References
Bayro-Corrochano, W.: Modeling the 3D kinematics of the eye in the geometric algebra framework. Pattern Recogn. 36(12), 2993–3012 (2003). https://doi.org/10.1016/S0031-3203(03)00180-8
Dorst, L., Fontijne, D., Mann, S.: Geometric Algebra for Computer Science: An Object-oriented Approach to Geometry, 1st edn. Morgan Kaufmann Publishers Inc., Burlington (2007)
Haslwanter, T.: Mathematics of three-dimensional eye rotations. Vision. Res. 35(12), 1727–1739 (1995). https://doi.org/10.1016/0042-6989(94)00257-M
Hestenes, D.: New Foundations for Classical Mechanics, 2nd edn. Kluwer Academic Publishers, Dordrecht (1999)
Hildenbrand, D.: Foundations of Geometric Algebra Computing. Springer, New York (2013). https://doi.org/10.1007/978-3-642-31794-1
Hrdina, J., Návrat, A.: Binocular computer vision based on conformal geometric algebra. Adv. Appl. Clifford Algebr. 27c, 1945–1959 (2017). https://doi.org/10.1007/s00006-017-0764-4
Hrdina, J., Návrat, A., Vašík, P., Matoušek, R.: Geometric control of the trident snake robot based on CGA. Adv. Appl. Clifford Algebr. 27, 621–632 (2017)
Hrdina, J., Vašík, P.: Notes on differential kinematics in conformal geometric algebra approach. In: Matoušek, R. (ed.) Mendel 2015. AISC, vol. 378, pp. 363–374. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-19824-8_30
Hrdina, J., Návrat, A., Vašík, P., Matoušek, R.: Geometric algebras for uniform colour spaces. Math. Methods Appl. Sci. 41, 4117–4130 (2018). https://doi.org/10.1002/mma.4489
Hrdina, J., Návrat, A., Vašík, P.: Control of 3-link robotic snake based on conformal geometric algebra. Adv. Appl. Clifford Algebr. 26, 1069–1080 (2016). https://doi.org/10.1007/s00006-015-0621-2
Hrdina, J., Návrat, A., Vašík, P., Matoušek, R.: Fish eye correction by CGA non-linear transformation. Math. Methods Appl. Sci. 41, 4106–4116 (2018). https://doi.org/10.1002/mma.4455
Hrdina, J., Návrat, A., Vašík, P., Matoušek, R.: CGA-based robotic snake control. Adv. Appl. Clifford Algebr. 27, 621–632 (2017). https://doi.org/10.1007/s00006-016-0695-5
Lounesto, P.: Clifford Algebra and Spinors, 2nd edn. Cambridge University Press, Cambridge (2006)
MacDonald, A.: Linear and Geometric Algebra. Third printing, corrected and slightly revised (2010)
Perwass, C.: Geometric Algebra with Applications in Engineering. Springer, New York (2009). https://doi.org/10.1007/978-3-540-89068-3
Wong, A.M.F.: Listing’s law: clinical significance and implications for neural control. Surv. Ophthalmol. 49(6), 563–575 (2004). https://doi.org/10.1016/j.survophthal.2004.08.002
Acknowledgements
This research was supported by a grant of the Czech Science Foundation no. 17-21360S, “Advances in Snake-like Robot Control” and by a Grant No. FSI-S-17-4464.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Stodola, M. (2019). Monocular Kinematics Based on Geometric Algebras. In: Mazal, J. (eds) Modelling and Simulation for Autonomous Systems. MESAS 2018. Lecture Notes in Computer Science(), vol 11472. Springer, Cham. https://doi.org/10.1007/978-3-030-14984-0_10
Download citation
DOI: https://doi.org/10.1007/978-3-030-14984-0_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-14983-3
Online ISBN: 978-3-030-14984-0
eBook Packages: Computer ScienceComputer Science (R0)