0
Research Papers

# Pose Changes From a Different Point of ViewOPEN ACCESS

[+] Author and Article Information
Gregory S. Chirikjian

Department of Mechanical Engineering,
Johns Hopkins University,
Baltimore, MD 21218
e-mail: gchirik1@jhu.edu

Robert Mahony

College of Engineering and Computer Science,
The Australian National University,
Canberra ACT 2601, Australia
e-mail: robert.mahony@anu.edu.au

Sipu Ruan

Department of Mechanical Engineering,
Johns Hopkins University,
Baltimore, MD 21218
e-mail: ruansp@jhu.edu

Jochen Trumpf

College of Engineering and Computer Science,
The Australian National University,
Canberra 2601, ACT, Australia
e-mail: jochen.trumpf@anu.edu.au

1Corresponding author.

Contributed by the Mechanisms and Robotics Committee of ASME for publication in the JOURNAL OF MECHANISMS AND ROBOTICS. Manuscript received September 22, 2017; final manuscript received December 22, 2017; published online February 27, 2018. Assoc. Editor: Andrew P. Murray.

J. Mechanisms Robotics 10(2), 021008 (Feb 27, 2018) (12 pages) Paper No: JMR-17-1315; doi: 10.1115/1.4039121 History: Received September 22, 2017; Revised December 22, 2017

## Abstract

For more than a century, rigid-body displacements have been viewed as affine transformations described as homogeneous transformation matrices wherein the linear part is a rotation matrix. In group-theoretic terms, this classical description makes rigid-body motions a semidirect product. The distinction between a rigid-body displacement of Euclidean space and a change in pose from one reference frame to another is usually not articulated well in the literature. Here, we show that, remarkably, when changes in pose are viewed from a space-fixed reference frame, the space of pose changes can be endowed with a direct product group structure, which is different from the semidirect product structure of the space of motions. We then show how this new perspective can be applied more naturally to problems such as monitoring the state of aerial vehicles from the ground, or the cameras in a humanoid robot observing pose changes of its hands.

<>

## Introduction

In elementary courses on manipulator kinematics, students learn that the motion from A to B (as seen in A) can be expressed as a homogeneous transformation, written here as $AHB$, and likewise from B to C. They also learn that the concatenation of rigid-body motions when going from frame A to C is then the product of these transformations, $AHC=AHB BHC$, and that $AHB−1= BHA$. In addition, they learn that the spatial transformation describing this relative motion from A to B (as seen in A) is “the same” as the transformation that converts the coordinates of position vectors seen relative to B back into the coordinates of the same positions as seen in A. This is a natural description of motion for serial kinematic structures, as put forth in Ref. [1]. This sequential mechanical view of kinematics has proved its worth over many years, however, it is inherently based on a confounding of the role of coordinates and spatial transformations.

In this paper, we consider the question of how to properly model the change from one pose to another when considered from a third point of view corresponding to an observer. This scenario is depicted in the context of a humanoid robot in Fig. 1 in which frames A and B describe the pose of the robot's hand at two different times, and O is the frame attached to the head where the visual sensors of the robot are placed. A similar scenario arises in the ground-based remote control of aerial vehicles in which case O would be the ground frame. A key contribution of the paper is to show that (at least in many robotics applications) such a pose change should not be modeled as a Euclidean motion of space, but rather as a translation and rotation of the frame A (representing an initial pose) to move it to the position and orientation of frame B (representing a final pose) without moving the whole of space along with the frame. To make this point, we argue that movements of frames (either a Euclidean motion or a pose change) should be modeled by a group action acting on an appropriate space representing the poses. The group associated with rigid-body or Euclidean motion is the special Euclidean group SE(3) and it acts on points in Euclidean three-space. When a frame of reference A is fixed to Euclidean space, then a Euclidean motion of space will carry the frame along with it to a new location and orientation characterized by a second frame B. It is well known that the change in position and orientation from frame A to frame B fully characterizes the Euclidean motion of space, however, it is less well known that its expression in terms of a homogeneous transformation $AHB$ is dependent on the observer. In particular, we show that when this Euclidean motion is expressed from the point of view of a separate observer O, the resulting element of the matrix group SE(3) is not the same element that would be obtained if the observer is located at the origin of frame A, the classical formulation of Euclidean motion in robotics.

We go on to consider the action of a different group, the pose change group, on the space of poses (represented by frames). The pose change group, PCG(3), is the direct product of the special orthogonal group SO(3) and the additive translation group $ℝ3$. To emphasize the difference with the special Euclidean group, we initially use pairs (R, t) of rotations R and translations t to describe both groups so that the difference in the group laws becomes immediately apparent. We illustrate how the direct-product group structure articulated here results in geodesics on pose space that can be more natural in some trajectory-generation applications. We believe that this observation has significant implications in modeling, path planning, and control for pose change when observed from a position that is not the pose itself.

Perhaps, the closest work to ours in the recent literature is that in Ref. [2], which introduces the cross-motion-invariant group, CMI(3). This is a direct product of the unit quaternions (or equivalently Spin(3)) and $ℝ3$. The motivations of that work and of ours are significantly different for two reasons: (i) in Ref. [2], the goal is a reformulation of classical invariant descriptions of Euclidean motions using CMI(3) in place of SE(3), whereas our goal is not that at all—we introduce a formulation for describing pose changes that varies with the perspective of an observer; (ii) in Ref. [2], there are no three-index quantities defined or used, whereas in our formulation three-index quantities figure prominently. Moreover, we show that the purpose of the pose change group, PCG(3), is not to describe Euclidean motions. To emphasize this point, we disambiguate four concepts that are often conflated, poses, coordinate transformations, pose changes, and Euclidean motions, by explaining what the differences between these concepts are.

The remainder of the paper is structured as follows. First, the traditional view of Euclidean motions as elements of the group SE(3) is reviewed. We then review the mathematics of coordinate changes, which is known in kinematics but is more often used in computer vision. We then review elements of screw theory, focusing on the screw parameters of Euclidean motions that are invariant under coordinate changes (or changes in perspective). Then, we take a mathematical view to explain the differences between spaces of poses, pose changes, Euclidean motions, and coordinate transformations, all of which are different mathematical objects that get conflated in the robot kinematics literature. The paper concludes with an application of the new view of pose changes to a trajectory generation problem.

The literature on kinematics is vast and spans multiple centuries. The earliest, and most fundamental, work on kinematics was formulated in a coordinate-free setting both for pure rotations [35] and full Euclidean motions [6,7]. Such formulations were put forth in an era in which the computational benefits of coordinates had not yet been realized. But this also endows such works with an elegance that is sometimes lacking in recent work. Modern treatments of kinematics can be found in Refs. [816]. A mainstay of robot kinematics is screw theory, which is described in detail in works including [1722]. The part of this paper that reviews the group-theoretic and screw-theoretic aspects of Euclidean motions follows that in Ref. [23].

The group of rigid-body motions, SE(3), consists of pairs (R, t), where R ∈ SO(3) is a rotation and $t∈ℝ3$ is a translation. The group law is Display Formula

(1)$(R1,t1)°(R2,t2)=(R1R2,R1t2+t1)$

From this law, and the fact that the identity element is (I, 0), it follows that the inverse of a rigid-body displacement is:

$(R,t)−1=(R,−RTt)$

where T denotes the transpose of a matrix.

Given a point $x∈ℝ3$, an element (R, t) ∈ SE(3) acts as Display Formula

(2)$(R,t)·x=Rx+t$

and this satisfies the definition of a (left) group action. That is

$((R1,t1)°(R2,t2))·x=(R1,t1)·((R2,t2)·x)$

and

$(I,0)·x=x$

Written slightly more abstractly, if (G, °) is a group and X is a set, then (G, °) is said to act on X if there is an operation ⋅ (called an “action”), such that for the group identity eG and every pair g1, g2G, we have Display Formula

(3)$e·x=x and (g1°g2)·x=g1·(g2·x)∈X$

Homogeneous transformation matrices of the form Display Formula

(4)$H(R,t)=(Rt0T1)$
are traditionally used to represent rigid-body displacements [1,9,13]. It is easy to see by the rules of matrix multiplication and the composition rule for rigid-body motions that
$H((R1,t1)°(R2,t2))=H(R1,t1)H(R2,t2)$

Likewise, the inverse of a homogeneous transformation matrix represents the inverse of a motion

$H((R,t)−1)=[H(R,t)]−1$

In this notation, vectors in $ℝ3$ are augmented by appending a “1” to form a vector Display Formula

(5)$X=(x1)$

and this preserves the properties of the group action, computed as a matrix vector product.

As a prelude to what follows, consider labeled reference frames and the Euclidean composition of motions Display Formula

(6)$H( AARB , AAtB)H(BBRC , BBtC)=H(AARB BBRC , AARB BBtC+ AAtB)$

where the superscript denotes the frame in which motions are described, and the subscripts denote the location of frames before and after the motion is applied. The result of the above equation is then $H(AARC , AAtC)$. But since $AARB BBtC=BAtC$, it follows that for translations it is possible to write

$AAtC= AAtB+ BAtC$

This elementary and well-known statement will be of use later when everything is observed from a different frame, O.

## Difference Between Pose, Coordinate Transforms, Pose Changes, and Euclidean Motions

A Euclidean motion is a handedness-preserving isometry of Euclidean space. Such motions can be described using the group-theoretic tools in Sec. 2. Under the action of a Euclidean motion, all points in Euclidean space move as a single rigid-body. A Euclidean motion that takes frame A to frame B is a well-defined object even without introducing any coordinates or a frame of reference in which to observe the motion.

A pose is different from a Euclidean motion in that it describes a position and orientation (or frame) in space. Simply put, if a (right-handed) frame is marked on Euclidean space, the result is a pose. Such a pose (or a set of poses) can exist as a geometric construction without coordinates.

A change of pose is a conversion of one pose into another. For example, given a moving finite rigid body with a body-fixed reference frame, the reference frame is initially at one pose at the initial time and then it is at another pose at a subsequent time. We emphasize that this is different from a Euclidean motion where a copy of the whole of Euclidean space attached to the body moves with it and maps back into itself as the body undergoes the motion.

Once a global reference frame is established, then both poses and Euclidean motions can be described using homogeneous matrices. Such matrices can also play a different role as coordinate transformations to describe the motion from different perspectives. That is, whereas the phenomena of Euclidean motions and pose changes are well defined regardless of how they are observed, when seeking to express such phenomena numerically, coordinate frames must be drawn both in the object that moves and in a fixed copy of Euclidean space. Coordinate transformations then describe two distinctly different changes in perspective: (1) changes in the space-fixed reference frame in which motions and poses are described; (2) changes in the way reference frames are attached to moving bodies.

Section 4 describes in precise mathematical terms how coordinate changes affect the homogeneous transformations describing Euclidean motions.

## Conjugation and Change of View

The group-theoretic treatment reviewed in Sec. 2 uses “light” notation that suppresses information about which frames the displacements are viewed from. For example, the Cartesian coordinates of the position of a point in $x∈ℝn$ depend on which frame the point is viewed from.

To make this point clear, we now introduce four frames of reference: O, A, B, and C, and use “heavy” notation. Then, $Ox, Ax, Bx, and Cx$ are the coordinates of x as seen in O, A, B, and C, respectively.2 This much is common knowledge in the fields of robotics, mechanisms, and computer vision. What is less commonly known is that a three-indexed rigid-body motion of the form [24] Display Formula

(7)$AOHB=H(AORB,AOdB)$
is required to avoid ambiguity when considering the rigid-body displacement from A to B as seen in O. Usually in robotics and mechanism kinematics, $AAHB$ is considered, which allows for simpler notation such as $AHB$. But to make the fundamental points in this paper, we keep all three indices. Figure 2 illustrates the various reference frames used throughout this paper.

Within the three frame context, traditional statements about the concatenation of reference frames such as

$AHB BHC=AHC$
are instead written as Display Formula
(8)$AAHB BBHC=AAHC$

Moreover, from Fig. 3, it is clear that translations viewed from the same reference frame can all be related by traditional vector arithmetic. For example

$AOtB=OOtB−OOtA , BOtC=OOtC−OOtB$

(9)$AOtC=AOtB+BOtC=OOtC−OOtA$

This much is clear simply from classical vector arithmetic.

Another way to understand this is to simply observe that when performing the multiplication in Eq. (8), the resulting translation is

$AAtC=AAtB+ AARB BBtC=AAtB+BAtC$
which in turn can be converted to the first equality in Eq. (9) by premultiplication by $OORA$.

We have used the notation $AOdB$ in Eq. (7) to emphasize the fact that this vector is not the translation vector from the origin of frame A to the origin of frame B but rather the vector describing the displacement of the origin of frame O under the action of the Euclidean motion of space that is represented by $AOHB$.

We now examine the relationship between $AOHB, AAHB$, and $OOHA$. Let x be a specific point in Euclidean space and let X be its description in homogeneous coordinates as in Eq. (5). The coordinates of this can be described in any reference frame. For example, if $AX$ is the homogeneous description of x as seen in frame A, then

$OX=OHAAX$

We have used the calligraphic notation $OHA$ to emphasize that in this context we are not considering a Euclidean motion $OHA$ of space, indeed we are talking about a single fixed point in space x, but a coordinate transformation of how this point is represented by the entries of the vector X.

Alternatively, if this point is moved to a new point $x′$ by the same Euclidean motion that moves frame A to frame B, then Display Formula

(10)$AX′=AAHB AX$

This motion of the point x to the new point $x′$ should not be confused with the coordinate change Display Formula

(11)$AX′=AHBBX′$

The relationship that links these two equations is the fact that the coordinates of the points x and $x′$ are the same when viewed in the correct reference frames, that is

$BX′=AX$

and that the matrix equation Display Formula

(12)$AHB=AAHB$
holds, i.e., both objects have the same numerical representation in the matrix group SE(3) although they have very different conceptual meanings. Indeed, this is where Eq. (8) comes from.

Expressions analogous to those above which involve the frame O include

$OX′=AOHB OX , OX=OHA AX=OOHA AX$

Combining the above equations and localizing using the fact that x is an arbitrary point yields Display Formula

(13)$AOHB= OHA AAHB OHA−1= OOHA AAHB OOHA−1$

Such conjugation/similarity transformations are well-known in kinematics [9,13,25,26]. The three index notations used here are inspired by Stramigioli [24]. In the present context, $AAHB$ describes a Euclidean motion, whereas $OHA$ is a coordinate transformation whose matrix representation is the same as that of the Euclidean motion $OOHA$. The result of the conjugation in Eq. (13) is again a Euclidean motion, but now seen with respect to a different coordinate system.

Performing the matrix multiplications in Eq. (13) gives rotation and translation parts

$AORB= OORA AARB OORA−1$

(14)$AOdB=(I−AORB)OOtA+ AOtB$

where Display Formula

(15)$AOtB= OORA AAtB$

To clarify further the concept of a three-index translation vector, let x denote a point in space, which can be thought of as the origin of a reference frame X. Then, for example, the translation $AOtX$ is actually the position of x relative to the origin of A, but as seen from the orientation of O.

Note from Eq. (14) that Display Formula

(16)$AOdB ≠ AOtB$

To repeat what was stated earlier, $AOtB$ is the translation vector from the origin of frame A to the origin of frame B as seen in O, and $AOdB$ is the vector describing the displacement of the origin of frame O under the action of the Euclidean motion of space that is represented by $AOHB$. Therefore, it should be no surprise that these are not equal since they are two completely different things. But given $AAHB$ and $OOHA$, all the necessary information exists to interconvert between $AOdB$ and $AOtB=OORA AAtB$.

It can also be shown that homogeneous transforms describing concatenated displacements ABC all observed from frame O can be written as3Display Formula

(17)$AOHC= BOHC AOHB$

Explicitly

$BOHC AOHB=( OOHB BBHC OOHB−1)( OOHA AAHB OOHA−1)$

The parentheses are only for emphasis and can be removed. Then, using the fact that

$OOHB−1 OOHA= AAHB−1$
allows for the simplification
$BOHC AOHB= OOHB BBHC OOHA−1$

But premultiplying by $I=OOHA OOHA−1$ and using the fact that Display Formula

(18)$AAHB= OOHA−1 OOHB$

gives

$BOHC AOHB= OOHA AAHB BBHC OOHA−1$

This, in combination with Eq. (8), gives Eq. (17).

As a consequence, the rotational parts of Eq. (17) follow as Display Formula

(19)$AORC= BORC AORB$

We note in passing that substituting Eq. (18) into Eq. (13) gives Display Formula

(20)$AOHB= OOHB OOHA−1$

These concepts are now demonstrated with concrete numerical examples in the planar case.

In Fig. 4, five planar reference frames are shown. Each can be described relative to the world frame, W, as an (R, t) pair of the form

$(R,t)=( cos θ−sin θt1 sin θ cos θt2)$

and the corresponding homogeneous transformation H(R, t) ∈ SE(2) is the 3 × 3 matrix padded by a third row of the form [0, 0, 1]. Explicitly

$(WWRW, WWtW)=(100010) (WWRA, WWtA)=(1/21/21/2−1/21/21/2) (WWRB, WWtB)=(011−100) (WWRC, WWtC)=(−1/21/21/2−1/2−1/2−1/2) (WWRO, WWtO)=(−1000−1−1)$

The goal then becomes describing $A*HB, B*HC$, and $A*HC$, when * = W or O. Using usual SE(2) calculations, we can find from the above

$AAHB=WWHA−1 WWHB and BBHC=WWHB−1 WWHC$

and from this

$AAHC=WWHA−1 WWHC=AAHB BBHC$
as usual. Moreover
$OOHA=WWHO−1 WWHA$

Three-index transforms from the perspective of W are obtained as Display Formula

(21)$AWHB=WWHA AAHB WWHA−1= WWHB WWHA−1$

and similarly Display Formula

(22)$BWHC=WWHC WWHB−1 and AWHC=WWHC WWHA−1$

Clearly

$AWHC=BWHC AWHB$

In this particular example

$( AARB, AAtB)=(1/21/21/2−1/21/21/2−1) ( BBRC, BBtC)=(1/21/21/2−1−1/21/21/2) ( AARC, AAtC)=(011−10−1) ( OORA, OOtA)=(−1/2−1/2−1/21/2−1/2−1/2−1)$

The motions implied by these homogeneous transformations (which are equivalent to pose changes because the left-hand subscripts and superscripts match) are displayed with curved arrows in Fig. 4.

Direct evaluation of Eqs. (21) and (22) gives

$( AWRB, AWdB)=(1/21/20−1/21/20) ( BWRC, BWdC)=(1/21/20−1/21/20) ( AWRC, AWdC)=(010−100)$

From these, the translations $AWdB, BWdC$, and $AWdC$, which are all zero, can be extracted directly. This should be no surprise because the Euclidean motion that moves the whole plane transforming A into B has a pole at the origin of W. The same is true for the motion that moves B to C and A to C.

In contrast, the translations

$AWtB=(1−1/2−1/2) BWtC=(1/2−1−1/2) AWtC=(0−2)$
are simply the vectors describing the relative positions of origins of the frames expressed in the orientation of W.

It is not difficult to compute the homogenous transformations

$AOHB=OOHA AAHB OOHA−1$

and similarly for $BOHC$ and $AOHC$. From these, the translation parts of these homogeneous transformations, $AOdB, BOdC$, and $AOdC$, can be extracted. And it can be verified that Eq. (13) holds. Explicitly

$AOdB=(1/21/2−1) BOdC=(1/21/2−1) AOdC=(1−1)$

and these vectors are displayed in Fig. 5 together with the vectors

$AOtB=(1/2−11/2) BOtC=(1−1/21/2) AOtC=(02)$

This figure is Fig. 4 rotated 180 deg around the origin of the world frame W to make it easier to visually inspect that the coordinates in the above vectors (as described in O) are plausible.

Clearly, $AOdB$ is not the translation from A to B as described from the perspective of O, but $AOtB$ is; and similarly for the other transformations. What this means is that using the mathematical apparatus designed to describe Euclidean motions is not the appropriate one for describing pose changes in the special case when the left subscripts and superscripts do not match. This is what motivates the development of the formulation in this paper. Clearly, the translations expressed in terms of numerical components above simply add as $AOtB+BOtC=AOtC$ and they each point from the correct starting point to the correct final one.

## Screw Parameters

According to Chasles' theorem for finite displacements [7]: (1) every motion of a rigid body can be considered as a translation in space and a rotation about a point; (2) every spatial displacement of a rigid body can be equivalently affected by a single rotation about an axis and translation along the same axis.

This forms the foundation for Screw Theory, as developed in Refs. [17], [19], and [20].

In screw theory, the axis in space is described by a line

$L(t)=p+tn, ∀ t∈ℝ$

where n is the unit vector pointing along the line and p is the unique vector pointing to the screw axis and intersecting it at a right angle. Therefore, pn = 0.

Any Euclidean motion viewed as a screw displacement can be expressed in terms of (n, p) and the motion parameters (θ, d), i.e., the angle of rotation and the distance traveled around/along n, are given as Display Formula

(23)$H(n,p,θ,d)=(eθn̂(I−eθn̂)p+dn0T1)$

where Display Formula

(24)$n̂=(0−n3n2n30−n1−n2n10)$
is the skew-symmetric matrix, wherein n1, n2, and n3 are the components of n.

The screw axis parameters (n, p) and motion parameters (θ, d) can be extracted from a given rigid displacement (R, d). Since this is widely known for pure rotations, half the problem is already solved, i.e., n and θ are calculated from $R=eθn̂$ by using Euler's axis-angle expression Display Formula

(25)$eθn̂=I+sin θ n̂+(1−cos θ)n̂2$

and observing that Display Formula

(26)$tr(R)=1+2 cos θ and R−RT=2 sin θ n̂$
which can be solved for θ and $n̂$, the skew-symmetric matrix associated with n.

Since

$(I−R)p+dn=d and p·n=0$
it follows from $n·eθn̂p=n·p=0$ that:
Display Formula
(27)$d=d·n$

It is known that θ and d are invariant under conjugation by arbitrary motions [23] and so the screw parameters $(AθB , AdB)$ depend only on the two frames A and B. Interestingly, from Eqs. (14) and (27), we have Display Formula

(28)$AdB= AOdB · AOnB= AOtB · AOnB$

Therefore, the screw parameters $(AθB , AdB)$ that are invariant to the choice of O can be obtained either from $AOHB=H(AORB , AOdB)$ or from $(AORB , AOtB)$.

## Describing Pose Changes as Direct Product Operations

An altogether different way to describe changes in pose is formulated in this section. Suppose we are sitting at a space-fixed frame O and we are watching frame A move to frame B. We will see the origin of A move to the origin of B. This gives the vector $AOtB$. Again, this is not the same as $AOdB$. Similarly, the rotational part of the displacement as seen from this reference frame will be of the form Display Formula

(29)$AORB=exp( AθB AOn̂B)$
which is evaluated using Eq. (25).

Here $AθB$ does not depend on O because it is one of the conjugation-invariant quantities for SE(3) as discussed in Sec. 5. But the vector $AOnB$ obviously does depend on the coordinate system from which it is viewed.

Since $AOnB=OORA AAnB$, we can use the well-known fact that for any vector $s∈ℝ3$ and any rotation matrix Q ∈ SO(3), the skew-symmetric matrix associated with Qs can be expressed as

$Qŝ=QŝQT$

Combining this with the general property of the matrix exponential that

$exp(PSP−1)=P exp(S) P−1$

(for any $S,P∈ℝn×n$ with P invertible) gives in the present case of n = 3 and Q−1 = QT that

$AORB= OORA AARB OORAT$

where $Q=OORA$ and $S=AθB AOn̂B$. This formula for $AORB$ is just the rotational part of Eq. (13).

Given two rotation-translation pairs $( AORB , AOtB)$ and $( BORC , BOtC)$ (where the actual translations $AOtB$ and $BOtC$ are used instead of $AOdB$ and $BOdC$), a simple rule for moving from A to C follows by combining Eqs. (19) and (9). That is, the combination of

$AORC= BORC AORB$

and

$AOtC= BOtC+AOtB$
defines a direct product of the rotation and translation groups Display Formula
(30)$( AORC,AOtC)=( BORC,BOtC) • ( AORB,AOtB)$

This direct product defines the pose change group Display Formula

(31)$PCG(3)=SO(3)×ℝ3$

###### Change of Observer Frame.

An action of the pose change group PCG(3) on pose space can be defined as Display Formula

(32)$(Q,ξ) ⊙ (R,t) ≐ (QRQT,Qt)$

where $(Q,ξ)∈PCG(3)$. Note that the right-hand side of Eq. (32) does not depend on $ξ∈ℝ3$. In other words, the $ℝ3$ part of $PCG(3)=SO(3)×ℝ3$ acts trivially. The action $⊙$ is associated with a change of observer frame as follows.

If the motion from A to B is viewed from frame 1 rather than frame O, the resulting homogeneous transformation is Display Formula

(33)$A1HB=OOH1−1 AOHB OOH1$

Obviously, as a consequence Display Formula

(34)$A1RB=OOR1T AORB OOR1$
which is also the rotational part of the pose change parameters resulting by changing the observer from O to 1. Figure 6 shows how this change in the observer frame affects the observed motion.

A natural question to ask is how the translational part of the pose change parameters is affected by changing the observer from O to 1. One way to calculate this would be to first convert $AOtB$ to $AOdB$ and use similarity transformation. Then, Eq. (33) could be calculated and then the resulting $A1dB$ could be converted $A1tB$.

Rather than doing this, we can calculate a clean expression for $A1tB$ directly, cf., Fig. 7. Since

$A1tB=11RA AAtB and AOtB=OORA AAtB$
we have
$11RAT A1tB= AAtB= OORAT AOtB$

Therefore

$A1tB= 11RA OORAT AOtB$

This can be written as Display Formula

(35)$A1tB= 11RO AOtB$

Combining Eqs. (34) and (35) and using Eq. (32) gives Display Formula

(36)$( A1RB , A1tB)=( 11R0,0) ⊙ ( AORB , AOtB)$

###### Change of Body-Fixed Frame.

In this subsection, we think of pose change as modeling the motion of a frame that is attached to a rigid body. This means that we interpret frame A as where that body-fixed frame is before motion of the body and frame B as where it goes to after motion. We now ask the question what happens when we change the body-fixed frame representing the rigid body from A to $A¯$ before motion and from B to $B¯$ after motion. Since the relative pose of $A¯$ to A as seen in A is the same as the pose of $B¯$ relative to B as seen in B, we can say

$AAHA¯=BBHB¯≐Δ$

(37)$A¯A¯HB¯=Δ−1 AAHBΔ$

as is clear from Fig. 8. Then, in analogy with the way $AOHB$ was defined earlier

$A¯OHB¯=OOHA¯ A¯A¯HB¯ OOHA¯−1$

Then, manipulating the expressions for $AOHB$ and $A¯OHB¯$, and letting R0 be implicitly defined by

$H(R0,d0)= OOHA¯ Δ−1 OOHA−1=OOHA¯ (OOHA Δ)−1$

Notice that $OOHA Δ=OOHA AAHA¯=OOHA¯$, then, $H(R0,d0)=OOHA¯ OOHA¯−1=I$, which also gives $R0=I$.

Then, using the direct-product calculus, the rotational parts follow in the same way as above, and Fig. 9 shows how the translational part of the pose changes behave. Putting these parts together gives the direct-product rule Display Formula

(38)$( A¯ORB¯,A¯OtB¯)=(I,BOtB¯)•( AORB,AOtB)•(I,AOtA¯)−1$
which is not a conjugation as in SE(3), but is equally convenient.

Remark 6.1. Two distinct actions of PCG(3) on Euclidean space can be defined Display Formula

(39)$(R,t) ⊙1 x ≐ t+x ,(R,t) ⊙2 x ≐ Rx$

Both $⊙1$ and $⊙2$ satisfy the definition of an action in Eq. (3). Note that $( AORB,AOtB) ⊙2 AOtX= BOtX′$. It then follows that

$( AORB,AOtB) ⊙1 (( AORB,AOtB) ⊙2 AOtX)= AOtX′$

The effect of the above is the same as the SE(3) action describing Euclidean motion in Eq. (2), although this construction is artificial in the context of pose changes modeled by PCG(3) acting on pose space.

## Applications

As motivated in the introduction, an observer at frame O will observe the pose change from A to B in terms of the parameters $(AORB,AOtB)$ rather than the Euclidean displacement parameters $AOHB=H(AORB,AOdB)$. This is the main reason for our exploration of this approach. A consequence is the direct-product structure and associated actions and transformation rules discussed in Sec. 6. Below, we show that this endows PCG(3) with a bi-invariant metric.

###### Bi-Invariant Metrics.

It has been well-known for quite some time that SE(3) does not have nontrivial bi-invariant distance/metric functions [2730]. Yet measuring distance between poses remains important both in kinematics [31,32] and in motion planning [33]. Therefore, either left-invariant or right-invariant metrics are chosen. Usually, left-invariance is more meaningful. When making this choice, the lack of bi-invariance means that

$dSE(3)(H0H1,H0H2)=dSE(3)(H1,H2)$

but

$dSE(3)(H0H1H0−1,H0H2H0−1)≠dSE(3)(H1,H2)≠dSE(3)(H1H0,H2H0)$
for general homogeneous transformations H0, H1, H2 ∈ SE(3). Though SE(3) metrics can exhibit bi-invariance for special pairs of motions [34], it would be nice if bi-invariance could be used as a general feature of metrics. Unfortunately, this is not possible.

However, the direct product structure does tolerate bi-invariance. Namely, if

$dℝ3(x,y)=‖x−y‖p$
is any p-norm, it is invariant under translational shifts. If dSO(3)(R1, R2) is any bi-invariant norm for SO(3) (such as the Frobenius norm $‖R1−R2‖F$ or $‖ log(R1TR2)‖$, then
$dPCG(3)((R1,t1),(R2,t2))=dℝ3(x,y)+dSO(3)(R1,R2)$
will be bi-invariant under the direct product. That is
$dPCG(3)((R0,t0)•(R1,t1),(R0,t0)•(R2,t2))=dPCG(3)((R1,t1),(R2,t2))=dPCG(3)((R1,t1)•(R0,t0),(R2,t2))•(R0,t0))$

We mention the existence of bi-invariant PCG(3) metrics in passing to open up a discussion in the community about its potential efficacy. That said, care must be taken when interpreting this bi-invariance because the actions of PCG(3) are very different from the usual SE(3) action. One application area where metrics have a role in interpolating paths between poses (or motions). Section 7.2 illustrates how motions observed from O are interpolated.

###### Path Generation.

Consider the task of an observer designing a trajectory to take frame A to frame B where the design is undertaken in the observer's frame of reference O. Applying the SE(3) machinery and using geodesic interpolation, one obtains a trajectory that starts at $OOHA$ at τ = 0 and ends at $OOHB$ at τ = 1 as

$H(τ)=exp(τ log (AOHB)) OOHA$

Here, the SE(3) exponential and logarithm are matrix operations. This generates the helical tracjectory shown in Fig. 10.

In contrast, for PCG(3), the analogous approach leads to

$(R(τ),t(τ))=(exp(τ log (AORB)) , AOtBτ) • (OORA,OOtA)$
the straight line trajectory shown in Fig. 10.

The configurations of frame A and frame B used in the figure are summarized in Table 1.

Both the SE(3) and PCG(3) trajectories may be appropriate in different contexts; however, in many kinematics applications, it would seem more natural to use trajectories generated by the pose change group PCG(3) carrying a bi-invariant metric.

###### Path Smoothing by Interpolating Through Multiple Points.

Suppose we have multiple configurations defined on the trajectory of a moving robot, e.g., a quadrotor. By applying the path generation method proposed in Sec. 7.2, which only uses two points for the interpolation, the resulting path is not smooth. So in this subsection, we deal with the problem of smoothing a path by interpolating through multiple points, which can be achieved in Euclidean space, SE(3) and PCG(3). This subsection starts to review the interpolation method in Euclidean space through multiple points, and extends to interpolation in SE(3) and PCG(3).

###### Interpolation in Euclidean Space Through Multiple Points.

Suppose we have a sequence of n discrete points in m dimensional Euclidean space, i.e., $xk(τk)∈ℝm$, where k = 1,…, n and $τk∈ℝ$. We seek to fit the points by a polynomial with degree (n − 1), which passes through the given points. The polynomial can be expressed as $p(τ)=∑i=0n−1aiτi$, where $ai∈ℝm,i=0,…,n−1$, are vector coefficients of the polynomial, and $τ∈ℝ$ is the parameterized time that defines the polynomial.

We then can fit a polynomial to the given points by satisfying the following condition: Display Formula

(40)$xk=∑i=0n−1aiτki∀k∈{1,…,n}$

Stacking in matrix form gives Display Formula

(41)$(τ1n−1τ1n−2…τ11τ2n−1τ2n−2…τ21……………τnn−1τnn−2…τn1)(an−1Tan−2T…a0T)=(x1Tx2T…xnT)$

The matrix storing the time steps on the left-hand side is called Vandermonde matrix. And solving the system of equations gives the coefficients ak, k = 1,…, n.

###### Interpolation in SE(3) and PCG(3) Through Multiple Points.

The idea of interpolation in Euclidean space can be extended to SE(3) and PCG(3) as follows. Suppose we are given a sequence of n discrete frames. By the logarithm map, we can convert the frame representations to the Lie Algebra, and for both SE(3) and PCG(3) cases, we can get 6D vectors correspondingly, denoted by $ξk∈ℝ6$. By using the interpolation in 6D Euclidean space, we can get the coefficients for the polynomial fit $ai,i=0,…,(n−1)∈ℝ6$. Then, the new sequence of discrete points in SE(3) or PCG(3) can be achieved by exponentiating back from the Lie Algebra. Explicitly,

(a) For Hk = H(Rk, dk) ∈ SE(3), the 6D vector representation in the Lie Algebra can be calculated as Display Formula

(42)$ξ̂k=log(Hk)=( log(Rk)vk0T0)=(ω̂kv0T0), then ξk=(ωkvk)$

We then fit ξk in Euclidean space and get Display Formula

(43)$ξ(τ)=∑i=0n−1aiτi=(ω(τ)v(τ)) s.t. ξ(τk)=ξk$

And the exponential mapping is, therefore, defined as Display Formula

(44)$H(τ)=exp(ω̂(τ)v(τ)0T0)$

(b) For (Rk, tk) ∈ PCG(3), the 6D vector is obtained alternatively as $ξk=(ωktk)$. And similar to SE(3), we fit a polynomial and get $ξ(τ)$, then exponentiate back as $(eω̂(τ),t(τ))$.2

Figure 11 shows the results of interpolating the framed trajectory of a quadrotor by using two adjacent midway points and multiple points on SE(3) and PCG(3). Table 2 summarizes the parameters used in the above example.

Remark 7.1. The above mapping works only when the rotational angle difference between any point and the origin is less than π, since the logarithm and exponential mapping on SO(3) breaks at angle π. In order to avoid such situation, we can take the average $μ=exp(1/n∑k=1n(log(Hk)))$4 of the frames, calculate the shifted relative frames {μ−1Hk}, interpolate using multiple shifted frames, and transform back to the global frame. Figure 12 shows the trajectories of interpolation in SE(3) and PCG(3) as well as the mean of the frames.

Remark 7.2. The initial time steps used for interpolations can be parameterized evenly or based on the distance of the given points, which will affect the parameters of the polynomial in different ways.

Explicitly, the time-step can be defined as evenly distributed over an interval, i.e., τ ∈ [0, 1], and the step $Δτ=1/(n−1)$. Alternatively, if we define a distance metric between adjacent sample points, i.e., Lk = d(xk, xk+1)5, the time steps can be defined as $Δτk=Lk/(∑k=1n−1Lk)$, so τk+1 = τk + Δτk, where k = 1,…, (n − 1). This parameterization corresponds to the distribution of time steps with the given points, which alleviates the deviation of the interpolated curve. Figure 13 shows the effect on the interpolated curves with different parameterizations of time steps. Table 3 summarizes the configuration of each frame used in the example.

If we choose evenly distributed time steps, the interpolated curve deviates significantly when two points are close to each other (such as poses 1 and 2, highlighted in Fig. 13), while choosing the distance-related time steps alleviates such effect.

## Conclusions

Whereas in the kinematics of machines and linkages, changes in pose are indistinguishable from Euclidean motions, when viewed from an independent third frame pose changes and Euclidean motions obey different composition and transformation rules. This paper articulates these subtle differences. The calculus of Euclidean motions and how they change with perspective and under coordinate changes is well established. This is reviewed here to compare and contrast with our contribution, which is the development of an analytical framework for the composition of pose changes as a direct product operation, together with direct product actions and rules for changes of perspective changes. Implications for bi-invariant metrics are also explored.

## Funding Data

• Division of Information and Intelligent Systems, National Science Foundation (Grant No. IIS-1619050).

• Office of Naval Research Global (Grant No. N00014-17-1-2142).

## References

Denavit, J. , and Hartenberg, R. S. , 1955, “ A Kinematic Notation for Lower-Pair Mechanisms Based on Matrices,” ASME J. Appl. Mech., 22, pp. 215–221.
Adorno, B. V. , and Fraisse, P. , 2017, “ The Cross-Motion Invariant Group and Its Application to Kinematics,” IMA J. Math. Control Inf., 34(4), pp. 1359–1378.
Cayley, A. , 1843, “ On the Motion of Rotation of a Solid Body,” Cambridge Math. J., 3, pp. 224–232.
Euler, L. , 1758, “ Du Mouvement de Rotation des Corps Solides Autour d'un Axe Variable,” Mémoires de l'Académie des Sciences de Berlin, 14, pp. 154–193.
Rodrigues, O. , 1840, “ Des lois géométriques qui régissent les déplacements d'un système solide dans l'espace, et de la variation des coordonnées provenant de ces déplacements considérés independamment des causes qui peuvent les produire,” J. Math. Pures Appl., 5, pp. 380–440.
Blaschke, W. , and Müller, H. R. , 1956, Ebene Kinematik, Verlag von R. Oldenbourg, Munich, Germany.
Chasles, M. , 1830, “ Note sur les propriétés générales du système de deux corps semblables entre eux et placés d'une manière quelconque dans l'espace; et sur le déplacement fini ou infiniment petit d'un corps solide libre,” Férussac, Bull. Sci. Math., 14, pp. 321–326.
Altmann, S. L. , 2005, Rotations, Quaternions, and Double Groups, Dover, Mineola, NY.
Bottema, O. , and Roth, B. , 1979, Theoretical Kinematics, Dover, Mineola, NY.
Angeles, J. , 1988, Rational Kinematics, Springer-Verlag, New York.
Herve, J. M. , 1999, “ The Lie Group of Rigid Body Displacements, a Fundamental Tool for Machine Design,” Mech. Mach. Theory, 34(5), pp. 719–730.
Karger, A. , and Novák, J. , 1985, Space Kinematics and Lie Groups, Gordon and Breach Science Publishers, New York.
McCarthy, J. M. , 1990, Introduction to Theoretical Kinematics, MIT Press, Cambridge, MA.
Murray, R. M. , Li, Z. , and Sastry, S. S. , 1994, A Mathematical Introduction to Robotic Manipulation, CRC Press, Boca Raton, FL.
Ravani, B. , and Roth, B. , 1983, “ Motion Synthesis Using Kinematic Mapping,” ASME J. Mech. Transm. Autom. Des., 105(3), pp. 460–467.
Selig, J. M. , 2005, Geometrical Fundamentals of Robotics, 2nd ed., Springer, New York.
Ball, R. S. , 1900, A Treatise on the Theory of Screws, Cambridge University Press, Cambridge, UK.
Crane , C. D., III ., and Duffy, J. , 2008, Kinematic Analysis of Robot Manipulators by Carl D. Crane III (2008-01-28)1623, Cambridge University Press, Cambridge, UK.
Davidson, J. K. , and Hunt, K. H. , 2004, Robots and Screw Theory: Applications of Kinematics and Statics to Robotics, Oxford University Press, Oxford, UK.
Duffy, J. , Hunt, H. E. M. , and Lipkin, H. , eds., 2000, Proceedings of a Symposium Commemorating the Legacy, Works, and Life of Sir Robert S. Ball, Cambridge University Press, Cambridge, UK.
Lipkin, H. , 1985, “Geometry and Mappings of Screws With Applications to the Hybrid Control of Robotic Manipulators,” Ph.D. thesis, University of Florida, Gainesville, FL.
Rooney, J. , 1978, “ A Comparison of Representations of General Spatial Screw Displacements,” Environ. Plann. B, 5(1), pp. 45–88.
Chirikjian, G. S. , and Kyatkin, A. B. , 2016, Harmonic Analysis for Engineers and Applied Scientists, Dover, Mineola, NY.
Stramigioli, S. , 2001, “ Nonintrinsicity of References in Rigid-Body Motions,” ASME J. Appl. Mech., 68(6), pp. 929–936.
Legnani, G. , Casolo, F. , Righettini, P. , and Zappa, B. , 1996, “ A Homogeneous Matrix Approach to 3D Kinematics and Dynamics—I: Theory,” Mech. Mach. Theory, 31(5), pp. 573–587.
Selig, J. , 2006, “ Active Versus Passive Transformations in Robotics,” Rob. Autom. Mag., 13(1), pp. 79–84.
Fanghella, P. , and Galletti, C. , 1995, “ Metric Relations and Displacement Groups in Mechanism and Robot Kinematic,” ASME J. Mech. Des., 117(3), pp. 470–478.
Kazerounian, K. , and Rastegar, J. , 1992, “Object Norms: A Class of Coordinate and Metric Independent Norms for Displacement,” Flexible Mech., Dynam. Anal., 47, pp. 271–275.
Martinez, J. M. R. , and Duffy, J. , 1995, “ On the Metrics of Rigid Body Displacement for Infinite and Finite Bodies,” ASME J. Mech. Des., 117(1), pp. 41–47.
Park, F. C. , 1995, “ Distance Metrics on the Rigid-Body Motions With Applications to Mechanism Design,” ASME J. Mech. Des., 117(1), pp. 48–54.
Larochelle, P. M. , Murray, A. P. , and Angeles, J. , 2007, “ A Distance Metric for Finite Sets of Rigid-Body Displacements Via the Polar Decomposition,” ASME J. Mech. Des., 129(8), pp. 883–886.
Lin, Q. , and Burdick, J. W. , 2000, “ Objective and Frame-Invariant Kinematic Metric Functions for Rigid Bodies,” Int. J. Rob. Res., 19(6), pp. 612–625.
Amato, N. M. , Bayazit, O. B. , Dale, L. K. , Jones, C. , and Vallejo, D. , 1998, “ Choosing Good Distance Metrics and Local Planners for Probabilistic Roadmap Methods,” IEEE International Conference on Robotics and Automation (ICRA'98), Leuven, Belgium, May 20, pp. 630–637.
Chirikjian, G. S. , 2015, “ Partial Bi-Invariance of SE(3) Metrics,” ASME J. Comput. Inf. Sci. Eng., 15(1), p. 011008.
View article in PDF format.

## References

Denavit, J. , and Hartenberg, R. S. , 1955, “ A Kinematic Notation for Lower-Pair Mechanisms Based on Matrices,” ASME J. Appl. Mech., 22, pp. 215–221.
Adorno, B. V. , and Fraisse, P. , 2017, “ The Cross-Motion Invariant Group and Its Application to Kinematics,” IMA J. Math. Control Inf., 34(4), pp. 1359–1378.
Cayley, A. , 1843, “ On the Motion of Rotation of a Solid Body,” Cambridge Math. J., 3, pp. 224–232.
Euler, L. , 1758, “ Du Mouvement de Rotation des Corps Solides Autour d'un Axe Variable,” Mémoires de l'Académie des Sciences de Berlin, 14, pp. 154–193.
Rodrigues, O. , 1840, “ Des lois géométriques qui régissent les déplacements d'un système solide dans l'espace, et de la variation des coordonnées provenant de ces déplacements considérés independamment des causes qui peuvent les produire,” J. Math. Pures Appl., 5, pp. 380–440.
Blaschke, W. , and Müller, H. R. , 1956, Ebene Kinematik, Verlag von R. Oldenbourg, Munich, Germany.
Chasles, M. , 1830, “ Note sur les propriétés générales du système de deux corps semblables entre eux et placés d'une manière quelconque dans l'espace; et sur le déplacement fini ou infiniment petit d'un corps solide libre,” Férussac, Bull. Sci. Math., 14, pp. 321–326.
Altmann, S. L. , 2005, Rotations, Quaternions, and Double Groups, Dover, Mineola, NY.
Bottema, O. , and Roth, B. , 1979, Theoretical Kinematics, Dover, Mineola, NY.
Angeles, J. , 1988, Rational Kinematics, Springer-Verlag, New York.
Herve, J. M. , 1999, “ The Lie Group of Rigid Body Displacements, a Fundamental Tool for Machine Design,” Mech. Mach. Theory, 34(5), pp. 719–730.
Karger, A. , and Novák, J. , 1985, Space Kinematics and Lie Groups, Gordon and Breach Science Publishers, New York.
McCarthy, J. M. , 1990, Introduction to Theoretical Kinematics, MIT Press, Cambridge, MA.
Murray, R. M. , Li, Z. , and Sastry, S. S. , 1994, A Mathematical Introduction to Robotic Manipulation, CRC Press, Boca Raton, FL.
Ravani, B. , and Roth, B. , 1983, “ Motion Synthesis Using Kinematic Mapping,” ASME J. Mech. Transm. Autom. Des., 105(3), pp. 460–467.
Selig, J. M. , 2005, Geometrical Fundamentals of Robotics, 2nd ed., Springer, New York.
Ball, R. S. , 1900, A Treatise on the Theory of Screws, Cambridge University Press, Cambridge, UK.
Crane , C. D., III ., and Duffy, J. , 2008, Kinematic Analysis of Robot Manipulators by Carl D. Crane III (2008-01-28)1623, Cambridge University Press, Cambridge, UK.
Davidson, J. K. , and Hunt, K. H. , 2004, Robots and Screw Theory: Applications of Kinematics and Statics to Robotics, Oxford University Press, Oxford, UK.
Duffy, J. , Hunt, H. E. M. , and Lipkin, H. , eds., 2000, Proceedings of a Symposium Commemorating the Legacy, Works, and Life of Sir Robert S. Ball, Cambridge University Press, Cambridge, UK.
Lipkin, H. , 1985, “Geometry and Mappings of Screws With Applications to the Hybrid Control of Robotic Manipulators,” Ph.D. thesis, University of Florida, Gainesville, FL.
Rooney, J. , 1978, “ A Comparison of Representations of General Spatial Screw Displacements,” Environ. Plann. B, 5(1), pp. 45–88.
Chirikjian, G. S. , and Kyatkin, A. B. , 2016, Harmonic Analysis for Engineers and Applied Scientists, Dover, Mineola, NY.
Stramigioli, S. , 2001, “ Nonintrinsicity of References in Rigid-Body Motions,” ASME J. Appl. Mech., 68(6), pp. 929–936.
Legnani, G. , Casolo, F. , Righettini, P. , and Zappa, B. , 1996, “ A Homogeneous Matrix Approach to 3D Kinematics and Dynamics—I: Theory,” Mech. Mach. Theory, 31(5), pp. 573–587.
Selig, J. , 2006, “ Active Versus Passive Transformations in Robotics,” Rob. Autom. Mag., 13(1), pp. 79–84.
Fanghella, P. , and Galletti, C. , 1995, “ Metric Relations and Displacement Groups in Mechanism and Robot Kinematic,” ASME J. Mech. Des., 117(3), pp. 470–478.
Kazerounian, K. , and Rastegar, J. , 1992, “Object Norms: A Class of Coordinate and Metric Independent Norms for Displacement,” Flexible Mech., Dynam. Anal., 47, pp. 271–275.
Martinez, J. M. R. , and Duffy, J. , 1995, “ On the Metrics of Rigid Body Displacement for Infinite and Finite Bodies,” ASME J. Mech. Des., 117(1), pp. 41–47.
Park, F. C. , 1995, “ Distance Metrics on the Rigid-Body Motions With Applications to Mechanism Design,” ASME J. Mech. Des., 117(1), pp. 48–54.
Larochelle, P. M. , Murray, A. P. , and Angeles, J. , 2007, “ A Distance Metric for Finite Sets of Rigid-Body Displacements Via the Polar Decomposition,” ASME J. Mech. Des., 129(8), pp. 883–886.
Lin, Q. , and Burdick, J. W. , 2000, “ Objective and Frame-Invariant Kinematic Metric Functions for Rigid Bodies,” Int. J. Rob. Res., 19(6), pp. 612–625.
Amato, N. M. , Bayazit, O. B. , Dale, L. K. , Jones, C. , and Vallejo, D. , 1998, “ Choosing Good Distance Metrics and Local Planners for Probabilistic Roadmap Methods,” IEEE International Conference on Robotics and Automation (ICRA'98), Leuven, Belgium, May 20, pp. 630–637.
Chirikjian, G. S. , 2015, “ Partial Bi-Invariance of SE(3) Metrics,” ASME J. Comput. Inf. Sci. Eng., 15(1), p. 011008.

## Figures

Fig. 1

Demonstrating the three-frame scenario with a separate observer frame O for a humanoid robot

Fig. 2

Relationship between the frames O, A, B, and C

Fig. 3

Translation vectors  OOtA, OOtB, OOtC, AOtB, BOtC

Fig. 4

Demonstration of the difference between  AWdB and  AWtB, BWdC and  BWtC, AWdC and  AWtC (note that  AWdB=BWdC=AWdC=0)

Fig. 5

Demonstration of  AOdB, BOdC, AOdC and  AOtB, BOtC, AOtC

Fig. 6

Transformation of the observer frame from O to 1

Fig. 7

Coordinates of all vectors computed in frame 1 instead of frame O

Fig. 8

Conjugation resulting from changing body-fixed frames

Fig. 9

AOtA¯+A¯OtB¯=AOtB+BOtB¯

Fig. 10

Comparison of geodesic trajectories for SE(3) and PCG(3)

Fig. 11

Comparisons of interpolation using multiple frames and two adjacent frames. Dashed curves: SE(3); Solid curves: PCG(3); Dotted curves: lines that connect poses. (a) Multiple frames and (b) adjacent frames.

Fig. 12

Comparisons of interpolation by shifting according to the mean of frames. Dashed curves: SE(3); Solid curves: PCG(3); Dotted curves: lines that connect poses. (a) Mean (μ) of frames in SE(3)  (0.96590.2586−0.00857.5−0.25860.9638−0.064615−0.00850.06460.997815) and (b) Mean (μ) of frames in PCG(3) (0.96590.2586−0.00859.6656−0.25860.9638−0.064615.9882−0.00850.06460.997812.2066).

Fig. 13

Comparisons of interpolation based on different parameterizations of time steps. Dashed curves: SE(3); Solid curves: PCG(3); Dotted curves: lines that connect poses. (a) Fitted curves based on evenly distributed time steps and (b) fitted curves based on distance-related time steps.

## Tables

Table 1 Start and end poses of the moving frame (relative to O)
Table 2 Pose of each frame (relative to the world frame)
Table 3 Pose of each frame (relative to the world frame)

## Discussions

Some tools below are only available to our subscribers or users with an online account.

### Related Content

Customize your page view by dragging and repositioning the boxes below.

Related Journal Articles
Related Proceedings Articles
Related eBook Content
Topic Collections