We use cookies to distinguish you from other users and to provide you with a better experience on our websites. Close this message to accept cookies or find out how to manage your cookie settings.
To save content items to your account,
please confirm that you agree to abide by our usage policies.
If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account.
Find out more about saving content to .
To save content items to your Kindle, first ensure no-reply@cambridge.org
is added to your Approved Personal Document E-mail List under your Personal Document Settings
on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part
of your Kindle email address below.
Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations.
‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi.
‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
The textbook is primarily written for senior undergraduate and post graduate students studying in areas of computer science and engineering, and electrical engineering. However, as the subject covers various interdisciplinary areas, the book is also expected to be of interest to a larger readership in Science and Engineering. It has a comprehensive and balanced coverage of theory and applications of computer vision with a textbook approach providing worked out examples, and exercises. It covers theory and applications of some relatively recent advancements in technology such as on colour processing, deep learning techniques for processing images and videos, document processing, biometry, content based image retrieval, etc. It also delves with theories and processing in non-optical imaging systems, such as range or depth imaging, medical imaging and remote sensing imaging.
Some modern implementations of vector concepts rely heavily on a precise knowledge of time. Measurements of time, both ancient and modern, have always been heavily tied to Earth’s rotation, and so this rotation must be described in detail. I begin that task by describing Earth’s orientation relative to the solar system and the stars, and use a DCM to quantify Earth’s orientation at a given moment. This introduces the idea of Universal Time, UT1. Further concepts require a short discussion of relativity, both special and general, which I do by using a balloon to describe curved spacetime. The result is UTC, our modern ‘Greenwich Mean Time’. Measuring time over long periods is made easy through the concept of the Julian day, and so I discuss the Julian and Gregorian calendars. I include a detailed example of using these ideas to calculate the sight direction of a star at some time and place on Earth.
The previous chapter described Earth’s orientation. I now build on that to construct orbital theory with a greater emphasis on vectors and coordinates than is traditional in that subject. I use Euler angles, rotation sequences, and the theory constructed around these in previous chapters to simplify what can often be a confusing barrage of notation in orbital theory. I include two very detailed examples here: sighting an Earth satellite and sighting Jupiter.
Rigid-body dynamics uses vectors heavily, and in particular the angular velocity vector described in a previous chapter. I derive the main quantities and results of the subject: angular momentum, moment of inertia, torque, and the relevant conservation laws. Examples are the spinning top and precessing bicycle wheel. I also provide a detailed calculation of Earth’s precession period arising from the gravity of the Sun and Moon.
Vehicle attitude is typically quantified by a DCM, a quaternion, or a triplet of Euler angles. I discuss how each of these objects changes with attitude by deriving the well-known time derivative of each. That requires the concept of angular velocity, which I discuss in detail. I end the chapter by describing why time derivatives of Euler angles cause so much confusion to many practitioners.
I start by invoking the ‘fundamental rule of calculus notation’ to ensure the correct translation of an English sentence into the language of calculus. As examples, I derive the ‘rocket equation’ and the standard expression for the gravitational potential of a sphere. I discuss the importance of treating units properly. I make the important point that a frame is not the same as a system of coordinates. I distinguish between ‘proper vectors’ and ‘coordinates vectors’, which is needed for a proper understanding of transforming coordinates. Because the study of vehicle attitude is built on basis vectors, I show how to construct these from both an intuitive viewpoint and a purely mathematical viewpoint.
Unit basis vectors emerged from Hamilton’s quaternions, and quite literally form the basis of rotation and attitude. I begin with their role in the dot product, and then study the matrix determinant. This determines the handedness of any three vectors, which is necessary for building a right-handed cartesian coordinate system. That idea naturally gives rise to the cross product, which I study in some detail, including in higher dimensions. The chapter ends with comments on matrix multiplication, and in particular the fast multiplication of sparse 3×3 matrices that we use frequently later in the book.
This chapter begins the proper study of the closely related subjects of how to transform vector coordinates across bases, and how to quantify vehicle attitude. The direction-cosine matrix appears, and I discuss its properties. I then cover several in-depth examples of using it to describe aircraft attitude. Transforming coordinates leads to a discussion of the meaning of position, which serves to introduce homogeneous coordinates. I end with an example of calculating the motion of a ship.
Trigonometry is the basis of the book’s subject. I begin with length and angle, and then generalise to coordinates. This requires the important idea of a directed angle, which enables us to relate the sine and cosine of an angle to coordinates in any given orientation of a set of axes. I discuss the details of inverting the sine/cosine/tangent functions, and introduce a new function name to replace the inappropriate name “atan2” that often appears in the literature. The chapter ends with examples of calculating bearing and elevation.
Results of previous chapters come together here in the equations that model a vehicle’s position and attitude given a knowledge of, for example, its angular turn rates. These equations can seem perplexing at first glance, and so I derive them in careful steps, again making strong use of vectors and the frame dependence of the time derivative. I end with a detailed example of applying these equations to a spinning top.
Books on vehicle attitude and motion often use tensors in their analyses, and I have discussed the reasons for that in a previous chapter. But tensors also carry an esotericism arising from being used to quantify the curved spacetime of general relativity. And so I end the book by telling the inquisitive reader how tensors ‘work’ more generally, and how this more advanced topic makes quick work of calculating the gradient, divergence, laplacian, and curl of vector calculus. I end with a discussion of parallel transport, which has found its way into the exotic ‘wander azimuth’ axes used in some navigation systems.
I derive the important equation that relates the time derivative of a vector computed in one frame to that computed in another frame. I make the point that we must understand the distinction between frames and coordinates to appreciate what the equations are saying. That discussion leads naturally to the concept of centrifugal and Coriolis forces in rotating frames. I use the frame-dependent time derivative to derive some equations for robotics, and finish with a wider discussion of the time derivative for tensors and in fluid flow.
This chapter starts by showing that the DCM is a rotation matrix, and vice versa. I introduce Euler matrices as important examples of rotation matrices. I give examples extracting angle–axis information from a DCM. This chapter includes a study of what tensors are, and their role in this subject.
I introduce an important way to think about and construct a DCM: by implementing a yaw–pitch–roll sequence of rotations on a model aircraft. This does away with the widespread but rather involved method of describing the relative orientation of two axis sets by drawing them with a common origin. For this, we must distinguish the idea of a rotation in a sequence being about either a ‘space-fixed’ axis or a ‘carried-along’ axis. Users of these terms tend to fall into two groups, ‘active’ and ‘passive’. I state the ‘fundamental theorem of rotation sequences’, which does away with any need for the reader to stand in one group or the other. I also discuss the extraction of Euler angles from a DCM, and examine infinitesimal rotations. I discuss two methods of interpolating from an initial to a final orientation; one of these is used widely in computer graphics, but both methods must be discussed for the computer-graphics method to be understood. I end with a calculation of the position and attitude of a robot arm.
An important set of coordinates to understand is that of our oblate Earth. I derive the equations transforming latitude/longitude/height to and from the ECEF cartesian axes. I use the model aircraft of a previous chapter as an aid to visualise the rotation sequences that are useful for calculating NED or ENU coordinates at a given point on or near Earth’s surface. I use these in a detailed example of sighting a distant aircraft. This leads to a description of the ‘DIS standard’ designed for such scenarios. I also use these ideas in a detailed example of estimating Earth’s gravity at a given point, which is necessary for implementing inertial navigation systems.
A short chapter that describes the book’s content. It covers the core principles, and discusses some ways in which the book’s description of them differs from that of less technical descriptions.