Академический Документы
Профессиональный Документы
Культура Документы
Abstract—Human body orientation estimation from orientation tracking, which not only provides the sourceless
microinertial/magnetic sensor units is highly important for property but also offers the low-cost solution for long-period
synthetic environments, robotics, and other human–computer orientation monitoring in daily life environment. A typical
interaction applications. In practice, the main challenge is
how to deal with linear acceleration interference and magnetic inertial/magnetic sensor module contains a three-axis gyro-
disturbance which always cause significant attitude-estimation scope, accelerometer, and magnetometer. The gyroscope senses
errors. In this paper, we present a novel quaternion-based the angular rate which can be numerically integrated to ob-
Kalman filter with vector selection scheme for accurate human tain the orientation, but the integration is subject to bound-
body orientation estimation using an inertial/magnetic sensor less orientation drift error. Usually, the accelerometer and the
unit. In the proposed algorithm, the gyroscope measurement is
used as an input to construct the linear process equation, and the magnetometer mainly measure the gravity and local magnetic
accelerometer and magnetometer measurements are manipulated field with respect to the global coordinate system resolved
to establish the linear pseudomeasurement equation. A linear in the sensor local coordinate system, so the accelerometer
Kalman filter is then deployed to estimate the body orientation. and magnetometer measurements can provide two constant
In the Kalman filter framework, a vector selection scheme is reference vectors (the gravity for the vertical reference and the
designed to protect the algorithm against undesirable conditions
such as temporary intensive movement and magnetic disturbance local magnetic field for the horizontal reference) to compensate
and enable it to acquire more accurate orientation estimation. The the gyroscope integration error [6]. However, the accelerometer
experimental results have shown that the proposed algorithm can and magnetometer measurements may also be disturbed by
provide accurate attitude estimations with regard to the ground linear acceleration interference and magnetic disturbance, so
truth. a proper scheme to fuse all three types of measurements is
Index Terms—Inertial sensing, Kalman filter, orientation track- required.
ing, quaternion, vector selection. Extensive research has been performed on how to fuse
inertial and magnetic sensor measurements for accurate ori-
I. I NTRODUCTION entation estimation. For example, Foxlin [7] proposed a com-
plementary separate-bias Kalman filter, which was designed
A CCURATE ESTIMATION of human body segment ori-
entation plays significant roles for various applications
such as virtual reality, rehabilitation robotics, sports science,
for head-tracking applications. Zhu and Zhou [8] determined
joint angles in axis/angle form using data from three-axis
and human–computer interaction [1]. Traditional orientation- accelerometer, gyroscope, and magnetometer mounted on the
determination methods are mainly based on multiple structured inboard and outboard sides of the joint. Yan and Yuan [9]
high-resolution cameras to capture IR-reflective marks in a described an orientation-tracking algorithm that used low-cost
dedicated studio, such as Vicon [2] and BTS [3]. Although they sensor modules to take two-axis measurements of gravity and
offer good overall system accuracy, they are very expensive the local magnetic field. Yun et al. [10] proposed an extended
and are not affordable to the general public [4]. However, the Kalman filter to estimate the orientation of human limb using
applications would be tremendously benefited if the orientation a combination of inertial sensors and magnetic sensors. We
can be measured in an unconstrained environment by a sensing also had the similar work on fusing the inertial and magnetic
system that does not require any external sources [5]. sensor measurements for upper limb movement estimation [11],
The rapid development of microinertial and magnetic sen- [12]. However, the aforementioned methods are only suitable
sors has enabled the research into accurate body segment for smooth moving rigid body movement and are not applicable
to situations where relatively large linear acceleration exists due
to dynamic motion. Furthermore, the aforementioned methods
also require stability of the surrounding magnetic environment;
Manuscript received January 12, 2012; revised February 23, 2012; accepted therefore, they are problematic for many of the real-world appli-
February 24, 2012. Date of publication June 8, 2012; date of current version
September 14, 2012. The Associate Editor coordinating the review process for
cations when the linear acceleration and magnetic disturbance
this paper was Dr. Salvatore Baglio. are not ignorable. To make the orientation-estimation method
Z.-Q. Zhang is with the Department of Computing, Imperial College more robust and more resilient to the temporary linear acceler-
London, SW7 2AZ London, U.K. (e-mail: z.zhang@imperial.ac.uk).
X.-L. Meng and J.-K. Wu are with Sensor Networks and Applications Re- ation interference and magnetic disturbance, a number of ad hoc
search Center, Graduate University of Chinese Academy of Sciences, Beijing solutions have been proposed. For instance, Veltink and Luinge
100049, China (e-mail: mengxiaoli07@mails.gucas.ac.cn; jkwu@gucas.ac.cn). [13] proposed a model to separate the gravitational acceleration
Color versions of one or more of the figures in this paper are available online
at http://ieeexplore.ieee.org. and the linear acceleration and then derived the inclination from
Digital Object Identifier 10.1109/TIM.2012.2196397 3-D accelerometers, but it could only deal with situations when
the linear acceleration was very small. Young [14] tried to corresponds to the axes of three orthogonally mounted inertial
estimate the linear accelerations of inertial sensors attached to sensors and magnetometer. To facilitate our analysis, in what
rigid bodies in order to improve the accuracy of sensor measure- follows, the body coordinate system is assumed to coincide
ments. The method was based on the assumption that the length with the sensor coordinate system.
between sensor and rotation center was known. Sabatini [15] For description convenience, we use the following notations:
developed a quaternion-based extended Kalman filter, where T
YGt = (YGt,x , YGt,y , YGt,z ) , gyroscope measurement vector
the perturbed situations are handled by switching observation
at time t;
variances. Similarly, Sun et al. [16] proposed to calculate the
YAt accelerometer measurement vector at time t;
confidence of accelerometer and magnetometer measurements, t
YM magnetometer measurement vector at time t;
but the method needed to compute the Jacobian matrix (partial
g vector of the gravitational field resolved in global
derivatives) of measurement functions with respect to the orien-
coordinate system;
tation, which involved very heavy computational loads. Kang
m vector of the magnetic field resolved in global coordi-
and Park [17] introduced an attitude-estimation method using
nate system.
an extended Kalman filter with a fuzzy-logic-based tuning
algorithm. Four fuzzy rules were designed to change the char-
acteristics of the filter to ensure confidence of the outputs of the
A. Quaternion Rotation Operator and Representation
gyros, but the method could only be used for 2-DOF orientation
estimation. In summary, although some efforts have been made From the Euler’s rotation theorem, we know that any rotation
to overcome the temporary linear acceleration interference and can be expressed as a single rotation about a certain axis for a
magnetic disturbance, significant problems still remain. specific angle. Let
In this paper, we propose a quaternion-based Kalman filter ⎡ ⎤
for accurate estimation of human body segment orientation. Our u1
main goal is to design a computationally efficient orientation u = ⎣ u2 ⎦ (1)
algorithm which is resilient to the temporary linear acceleration u3
interference and magnetic disturbance.
1) To make the Kalman filter more computationally efficient be the unit vector (unique except for sign) which represents
and to avoid linearization and computing the Jacobian the rotation axis remaining unchanged during the rotation, and
matrix (partial derivatives) of measurement equation, the let β be the magnitude of rotation angle with its sign being
gyroscope measurement is used as an input to construct determined by the rotation axis. The Euler parameters can be
the linear process equation, and the accelerometer and defined by a scale and a vector as
magnetometer measurements are manipulated to build
the linear pseudomeasurement equation. A linear Kalman β
q0 = cos (2)
filter is then invoked to estimate the body orientation. 2
⎡ ⎤ ⎡ ⎤
2) To deal with the temporary linear acceleration interfer- q1 u1
ence and magnetic disturbance and provide more reliable ⎣ q2 ⎦ = u sin β β ⎣ u2 ⎦
= sin (3)
quaternion estimation, a vector selection scheme is de- 2 2
q3 u3
signed. The scheme can well protect the algorithm against
undesirable conditions such as temporary intensive move-
which obey the following constraint:
ment and magnetic disturbance and enable it to compute
more accurate orientation estimation.
q12 + q22 + q32 + q02 = 1. (4)
Detailed experiments are conducted to validate the proposed
method, and the good performance of the experimental results
has shown the feasibility and effectiveness of the proposed These four parameters are also referred to as a unit quaternion
orientation estimation and analysis algorithm. [18], which is commonly written in the form
The rest of this paper is organized as follows. In Section II,
the proposed quaternion-based Kalman filter is described, q = (q1 , q2 , q3 , q0 ). (5)
including the quaternion representation, quaternion process
model, linear pseudomeasurement equations, and vector selec- In this paper, unit quaternion is selected to represent the
tion scheme. Performance evaluation is detailed in Section III. rotation and orientation of the body segment because it does not
Finally, conclusion is given in Section IV. suffer from the singularity problem, which is associated with
Euler angles/rotation matrix [19]. Moreover, the quaternion is
a relatively computationally efficient parameterization since,
II. P ROPOSED A PPROACH
as opposed to Euler angles, it does not involve trigonometric
In a typical application, a strap-down inertial and magnetic functions to compute the rotation matrix and has only one
measurement unit is attached to the rigid body, represented redundant parameter, as opposed to the six redundant elements
by a body frame B, whose orientation is to be determined of the rotation matrix [20].
with respect to a global coordinate system G. Meanwhile, the Let us consider a pair of 3 × 1 vectors b = [b1 , b2 , b3 ]T
sensor unit also has its own sensor coordinate frame S, which and r = [r1 , r2 , r3 ]T resolving in the body frame B and in
ZHANG et al.: QUATERNION-BASED KALMAN FILTER WITH VECTOR SELECTION FOR ACCURATE TRACKING 2819
the reference frame G, respectively, which are related by the where I4×4 is the identity matrix of dimension 4 × 4. The
quaternion rotation q as matrix R(YGt ) has the following properties:
2 2
b r R YGt = − YGt · I4×4
= q −1 ⊗ ⊗q (6)
0 0
3 2
R YGt = − YGt · R YGt
where ⊗ represents quaternion multiplication and q −1 is the
4 4
R YGt = YGt · I4×4
inverse quaternion of q as
5 4
R YGt = YGt · R YGt
q −1 = (−q1 , −q2 , −q3 , q0 ). (7) 6
6
R YGt = − YGt · I4×4 (14)
Premultiplying (6) by q, we can get
and so on. By substituting these properties into (13), we can get
b r t t
q⊗ = ⊗q (8) |YG | Δt 1 |YG | Δt
0 0 Θt = cos ·I4×4 + t sin ·R YGt .
2 |YG | 2
where (15)
b
q⊗ = R(b)q C. Vector Selection and Pseudolinear Measurement Model
0
⎡ ⎤ In (12), we use the gyroscope measurements directly as the
0 −b3 b2 b1
⎢ b 0 −b1 b2 ⎥ input to the process model, which is subject to unbounded
R(b) = ⎣ 3 ⎦ (9) integration drift error. To compensate the drift, accelerometer
−b2 b1 0 p3
−b1 −b2 −b3 b0 and magnetometer measurements should be fused with the
gyroscope measurements together. However, the accuracy for
r the drift compensation is determined by the reliability of the
⊗ q = L(r)q
0 accelerometer and magnetometer measurements YAt and YM t
,
⎡ ⎤ which can be disturbed by linear acceleration interference and
0 r3 −r2 r1
⎢ −r 0 r1 r2 ⎥ magnetic disturbance. Therefore, we need to detect whether the
L(r) = ⎣ 3 ⎦. (10) sensor measurements YAt and YM t
are perturbed and replace
r2 −r1 0 r3
−r1 −r2 −r3 0 the degraded measurements with more reliable ones. Since
gyroscope measurements are only dominated by the angular
Denoting H(b, r) = R(b) − L(r), we can get the following velocity regardless of the kinematic conditions and the mag-
property for b and r: netic environment, they can be considered as more reliable
information than the degraded measurements of accelerometer
H(b, r)q = 0. (11) and magnetometer. It should be noted that the unbounded
orientation error involved in the integration step in (12) mainly
comes from the accumulation of the gyro measurement error,
B. Process Model but such error in a short period is much smaller than the errors
The process model describes the dynamic relationship be- caused by severely degraded YAt and YM t
.
tween the states of any two successive time steps. Here, the Based on the reason mentioned earlier, the new measurement
purpose is to estimate the quaternion to represent the rigid body vectors stA and stM are obtained through the numerical integra-
segment orientation, so we can define the state vector for the tion of the gyro measurement as given in (12). The predicted
t
Kalman filter as qt directly. The relationship between qt and quaternion q̂t−1 is based on the gyroscope measurements YGt
qt−1 can be written as [21] and quaternion estimation q̂t−1 at t − 1 as
t
q̂t−1 = Θt q̂t−1 . (16)
qt = Θt qt−1 + et (12)
Hence, the new vectors stA and stM can be replaced by the
where Δt is the sampling rate (we set to 0.01 s in our imple- following equations/conditions:
mentation) and et is the process noise which is assumed to ⎧
⎪ t−1,t t
be zero-mean additional Gaussian white noise with covariance ⎪
⎨ Y A , if g − Y A > A1
matrix Q. Θt = exp{(1/2)R(YGt )Δt}. We can rewrite matrix
stA = t−1,t t (17)
exponential Θt using its Taylor series expansion as ⎪ or Y − Y
A > A2
⎪
⎩ t
A
2 YA , otherwise
1
1 1
t ⎧
Θt = I4×4 + R YGt Δt + R YG Δt ⎪ t−1,t t
2 2! 2 ⎪ YM , if m − YM
⎨ > M1
3 stM = t−1,t t (18)
1 1
t ⎪ or Y − Y
M > M2
+ R YG Δt + · · · (13) ⎪
⎩ t
M
3! 2 YM , otherwise
2820 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 61, NO. 10, OCTOBER 2012
TABLE I
F OUR C ASES OF V ECTOR S ELECTION . C ASE I: S LOW M OTION W ITH
N O M AGNETIC D ISTURBANCE ; C ASE II: S LOW M OTION BUT
W ITH M AGNETIC D ISTURBANCE ; C ASE III: FAST M OTION
W ITH N O M AGNETIC D ISTURBANCE ; C ASE IV: FAST
M OTION BUT W ITH M AGNETIC D ISTURBANCE
Φt qt = 0 (19)
where
H (stA , g)
Φt = . (20)
H (stM , m)
Φt qt + vt = 0 (21)
TABLE III
E STIMATED ATTITUDE C OMPARISON B ETWEEN P ROPOSED
M ETHOD W ITH /W ITHOUT V ECTOR S ELECTION AND
T HAT OF BTS O PTICAL S YSTEM
Fig. 7. Magnitude of the accelerometer output: Fast motion but with magnetic
disturbance.
IV. C ONCLUSION
In this paper, we have presented a novel 3-DOF orientation-
estimation algorithm. In the proposed algorithm, the gyroscope
measurement was used as an input to construct the linear
process model, and the accelerometer and magnetometer mea-
surement equations were manipulated to establish the linear
pseudomeasurement equation. Based on the linear process
model and the linear measurement model, a linear Kalman filter
was adopted to fuse all the sensor measurements. Furthermore,
to deal with the temporary linear acceleration interference and
magnetic disturbance and provide more reliable quaternion
estimation, a vector selection scheme was designed based on
the Kalman-filter-predicted measurement. Experimental results
have shown that the proposed method could well deal with
Fig. 9. Orientation-estimation result: Fast motion but with magnetic
disturbance. undesirable conditions such as temporary intensive movement
and magnetic disturbance and acquire more accurate orientation
TABLE IV estimation.
E STIMATED ATTITUDE C OMPARISON B ETWEEN P ROPOSED
M ETHOD W ITH /W ITHOUT V ECTOR S ELECTION AND
T HAT OF BTS O PTICAL S YSTEM
R EFERENCES
[1] S. S. Hemami and A. R. Reibman, “No-reference image and video quality
estimation: Applications and human-motivated design,” Signal Process.
Image Commun., vol. 25, no. 7, pp. 469–481, Aug. 2010.
[2] M. Senesh and A. Wolf, “Motion estimation using point cluster method
and Kalman filter,” J. Biomech. Eng., vol. 131, no. 5, pp. 051008-1–
051008-7, May 2009.
[3] M. Galli, V. Cimolin, P. Patti, D. Ferrario, G. Heaney, G. Albertini, and
R. Freedland, “Quantifying established clinical assessment measures
using 3D-movement analysis in individuals with Down syndrome,”
Disability Rehabilit., vol. 32, no. 21, pp. 1768–1774, 2010.
[4] H. Zhou and H. Hu, “Reducing drifts in the inertial measurements of
wrist and elbow positions,” IEEE Trans. Instrum. Meas., vol. 59, no. 3,
Cases I–IV, which reduce the effects of the acceleration inter- pp. 575–585, Mar. 2010.
ference and the magnetic disturbance to the orientation estima- [5] J. Lee and E. Park, “Minimum-order Kalman filter with vector selector
tion and result in more accurate orientation estimation. Again, for accurate estimation of human body orientation,” IEEE Trans. Robot.,
vol. 25, no. 5, pp. 1196–1201, Oct. 2009.
small RMS error and excellent correlation coefficient show the [6] X. Yun and E. Bachmann, “Design, implementation, and experimental
significant performance improvement using the vector selection results of a quaternion-based Kalman filter for human body motion track-
scheme over the traditional nonvector selection method. ing,” IEEE Trans. Robot., vol. 22, no. 6, pp. 1216–1227, Dec. 2006.
[7] E. Foxlin, “Inertial head-tracker sensor fusion by a complimentary
The Kalman filter jumps to Case IV when both the accel- separate-bias Kalman filter,” in Proc. VRAIS, 1996, pp. 185–194.
eration interference and the magnetic disturbance exist, which [8] R. Zhu and Z. Zhou, “A real-time articulated human motion tracking
means that the orientation is acquired via the gyroscope in- using tri-axis inertial/magnetic sensors package,” IEEE Trans. Neural
Syst. Rehabil. Eng., vol. 12, no. 2, pp. 295–302, Jun. 2004.
tegration directly. Due to the inherent gyroscope integration [9] Z. Yan and K. Yuan, “An orientation tracking algorithm valid in a hemi-
drift, the Kalman filter should jump out of Case IV before the sphere space based on the gravity field and the earth magnetic field,” in
drift is accumulated severely. In our experiment, each magnetic Proc. Int. Conf. Inf. Acquisition, 2004, pp. 236–239.
[10] X. Yun, E. Bachmann, and R. McGhee, “A simplified quaternion-based
disturbance only lasted very shortly for less than 1 s when algorithm for orientation estimation from Earth gravity and magnetic field
the acceleration interference exists, so the Kalman filter can measurements,” IEEE Trans. Instrum. Meas., vol. 57, no. 3, pp. 638–650,
switch back to Case I or Case III in time to avoid significant Mar. 2008.
[11] Z.-Q. Zhang and J.-K. Wu, “A novel hierarchical information fusion
orientation-estimation error. method for three-dimensional upper limb motion estimation,” IEEE
We also noticed that the major drawback of the proposed Trans. Instrum. Meas., vol. 60, no. 11, pp. 3709–3719, Nov. 2011.
method was that it could out deal with long-time interference, [12] Z. Zhang, W. Wong, and J. Wu, “Ubiquitous human upper-limb motion
estimation using wearable sensors,” IEEE Trans. Inf. Technol. Biomed.,
either due to fast movement or due to ferromagnetic materials. vol. 15, no. 4, pp. 513–521, Jul. 2011.
This is mainly because the inherent gyroscope drift cannot be [13] H. Luinge and P. Veltink, “Inclination measurement of human movement
compensated when accelerometer or magnetometer measure- using a 3-D accelerometer with autocalibration,” IEEE Trans. Neural Syst.
Rehabil. Eng., vol. 12, no. 1, pp. 112–121, Mar. 2004.
ment is disturbed for long. In our future work, we will try to [14] A. Young, “Use of body model constraints to improve accuracy of inertial
integrate more sensors, such as cameras, in to provide addi- motion capture,” in Proc. Int. Conf. Body Sens. Netw., 2010, pp. 180–186.
tional information to further compensate the gyroscope drift. [15] A. Sabatini, “Quaternion-based extended Kalman filter for determining
orientation by inertial and magnetic sensing,” IEEE Trans. Biomed. Eng.,
In summary, the aforementioned analysis has shown that vol. 53, no. 7, pp. 1346–1356, Jul. 2006.
the proposed vector selection method can deal with temporary [16] S. Sun, X. Meng, L. Ji, and J. K. Wu, “Adaptive sensor data fusion in
linear acceleration interference and magnetic disturbance. Even motion capture,” in Proc. 13th Int. Conf. Inf. Fusion, 2010, pp. 1–8.
[17] C. Kang and C. Park, “Attitude estimation with accelerometers and gyros
when these two interferences exist simultaneously, the vector using fuzzy tuned Kalman filter,” in Proc. Eur. Control Conf., 2009,
selection method can still get accurate orientation estimation. pp. 3713–3718.
2824 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 61, NO. 10, OCTOBER 2012
[18] N. Trawny and S. Roumeliotis, “Indirect Kalman filter for 3D attitude Jian-Kang Wu received the B.Sc. degree from the
estimation,” Univ. Minnesota, Dept. Comp. Sci. Eng., Minneapolis, MN, University of Science and Technology of China
Tech. Rep., 2005, vol. 2. (USTC), Hefei, China, in 1970 and the Ph.D. degree
[19] G. Vass, “Avoiding gimbal lock,” Comput. Graphics World, vol. 32, no. 6, from Tokyo University, Tokyo, Japan, in 1992.
pp. 10–11, 2009. Prior to his current position, he was the Principal
[20] D. Choukroun, “Novel methods for attitude determination using vector Scientist and Department Manager with the New
observations,” Ph.D. thesis, Israel Inst. Technol., Haifa, Israel, 2003. Initiatives Department, Institute for Infocomm Re-
[21] D. Choukroun, I. Bar-Itzhack, and Y. Oshman, “Novel quaternion Kalman search (I2 R), Singapore, Singapore, (known as Kent
filter,” IEEE Trans. Aerospace and Electronic Systems, vol. 42, no. 1, Ridge Digital Labs (KRDL), from 1998 to 2001,
pp. 174–190, Jan. 2006. and Institute of System Science (ISS) before 1998).
He created new research initiatives in the areas of
neuroinformatics, physioinformatics, and embedded sensor network systems
Zhi-Qiang Zhang received the B.E. degree in com- in I2 R and led a series of large international collaborative projects in KRDL
puter science and technology from the School of and ISS. He was a Full Professor with the USTC until 1993. He has also
Electronic Information Engineering, Tianjin Univer- been with the universities in the U.S., U.K., Germany, France, and Japan. He
sity, Tianjin, China, in 2005 and the Ph.D. degree is currently a Professor with the Graduate University of Chinese Academy
from Sensor Networks and Applications Research of Sciences, Beijing, China, where he is directing the Sensor Networks and
Center, Graduate University of Chinese Academy of Applications Research Center, which is jointly operated by the Graduate
Sciences, Beijing, China, in 2010. University of Chinese Academy of Sciences and the Institute of Automation,
He is currently a Research Associate with the De- Chinese Academy of Sciences. He is an author of 18 patents, more than 100
partment of Computing, Imperial College London, papers, and five books.
London, U.K. His research interests include body Dr. Wu was a recipient of nine distinguished awards from the nation and the
sensor network, information fusion, and target track- Chinese Academy of Sciences, Beijing. He pioneered several research studies
ing with about 20 publications in these areas in top journals and conferences. in the area of visual information processing, including adaptive image coding
in the late 1970s, object-oriented Geographic Information System in the early
1980s, face-recognition technology in 1992, content-based multimedia index-
ing and retrieval in the 1990s, and rights management for multimedia contents
Xiao-Li Meng received the B.E. degree in communi-
cation engineering from Tianjin University, Tianjin, in the late 1990s. He initiated and led three large international collaborative
laboratories. He was regarded as “an exceptionally bright visionary” by U.S.
China, in 2007. She is currently working toward
Giga Information Group.
the Ph.D. degree from the Sensor Networks and
Applications Research Center, Graduate University
of Chinese Academy of Sciences, Beijing, China.
Her research interests include human motion
tracking, microsensor gait analysis, and information
fusion.