 Research Article
 Open Access
 Published:
Pose estimation by extended Kalman filter using noise covariance matrices based on sensor output
ROBOMECH Journal volume 7, Article number: 36 (2020)
Abstract
This paper presents an extended Kalman filter for pose estimation using noise covariance matrices based on sensor output. Compact and lightweight nineaxis motion sensors are used for motion analysis in widely various fields such as medical welfare and sports. A nineaxis motion sensor includes a threeaxis gyroscope, a threeaxis accelerometer, and a threeaxis magnetometer. Information obtained from the three sensors is useful for estimating joint angles using the Kalman filter. The extended Kalman filter is used widely for state estimation because it can estimate the status with a small computational load. However, determining the process and observation noise covariance matrices in the extended Kalman filter is complicated. The noise covariance matrices in the extended Kalman filter were found for this study based on the sensor output. Postural change appears in the gyroscope output because the rotational motion of the joints produces human movement. Therefore, the process noise covariance matrix was determined based on the gyroscope output. An observation noise covariance matrix was determined based on the accelerometer and magnetometer output because the two sensors’ outputs were used as observation values. During a laboratory experiment, the lower limb joint angles of three participants were measured using an optical 3D motion analysis system and nineaxis motion sensors while participants were walking. The lower limb joint angles estimated using the extended Kalman filter with noise covariance matrices based on sensor output were generally consistent with results obtained from the optical 3D motion analysis system. Furthermore, the lower limb joint angles were measured using nineaxis motion sensors while participants were running in place for about 100 s. The experiment results demonstrated the effectiveness of the proposed method for human pose estimation.
Introduction
Compact and lightweight nineaxis motion sensors have been developed through advances in microelectromechanical systems technology; they have come to be used for motion analysis in widely various fields [1,2,3,4,5,6,7,8]. The nineaxis motion sensors are applicable both indoors and outdoors because of their portability. Several experiments have been conducted to measure the motion of a skier gliding down a slope and jumping off a hill using motion sensors [9, 10]. The nineaxis motion sensors include a threeaxis gyroscope, a threeaxis accelerometer, and a threeaxis magnetometer. Using information obtained from the motion sensors, several sensor fusion algorithms have been proposed for pose estimation: as one example, a sensor fusion algorithm that can correct gyroscope drift using information obtained from the other two sensors has been used for human pose estimation during daily activities and exercise [11,12,13]. Furthermore, a sensor fusion algorithm able to correct the magnetometer output using information obtained from a gyroscope has been used for pose estimation in a variable magnetic field [14, 15]. The Kalman filter [16,17,18,19,20] and the complementary filter [21,22,23,24,25] are some pose estimation methods using sensor fusion.
The Kalman filter estimates the system state with a small computational load. Nevertheless, determining the process and observation noise covariance matrices in the Kalman filter is complicated. For a case in which the process and observation noise covariance matrices are timeinvariant, the estimation accuracy might decrease if the sensor output noise increases. Moreover, the noise of the sensor output might vary because of longterm measurements. For that reason, adjusting the noise covariance matrices based on sensor output is important.
To estimate the lower limb joint angles for this study, a method was devised to determine the process and observation noise covariance matrices in the extended Kalman filter based on sensor output. The postural change appears in the gyroscope output because the rotational motion of the joints produces human movement. Therefore, the process noise covariance matrix was set based on the gyroscope output. When the accelerometer output increased, the observation noise covariance matrix was set to increase. The observation noise covariance matrix was also set to increase when the magnetometer output drastically changed. During a laboratory experiment, the lower limb joint angles of three participants were measured using an optical 3D motion analysis system and nineaxis motion sensors while the participants were walking. Several studies have demonstrated that an optical 3D motion analysis system measured human movement with high accuracy. Therefore, the system is used for verifying the pose estimation accuracy in widely diverse fields [26,27,28,29]. We verified the accuracy of the proposed method by comparing its results to those of an optical 3D motion analysis system. Furthermore, the lower limb joint angles were measured using nineaxis motion sensors while the participants were running in place. Finally, the effectiveness of the proposed method was verified using experiment results.
Measurement method
Definition of rollpitchyaw
The 3D posture of the sensor is represented by the roll angle (\(\phi\)) around the xaxis, the pitch angle (\(\theta\)) around the yaxis, and the yaw angle (\(\psi\)) around the zaxis. The reference coordinate system is a righthanded system with a vertical zaxis. The counterclockwise rotation is defined as positive. The reference coordinate system and the definition of the joint angles are presented in Fig. 1.
Rollpitchyaw calculation
For this study, Euler angles (roll, pitch, and yaw) were calculated using nineaxis motion sensors. The nineaxis motion sensor (SSWS1792; Sports Sensing Co., Ltd.) used for this study includes a threeaxis gyroscope (± 1500 dps), a threeaxis accelerometer (± 16 G), and a threeaxis magnetometer (± 10 Gauss). The 38 × 53 × 11 mm sensor weighs 30 g.
The initial roll and pitch angles were calculated using the accelerometer output at rest [30, 31]. The relation between the acceleration sensor output and the gravitational acceleration in the reference coordinate system is expressed using Eq. (1) because the accelerometer measures only the.
gravitational acceleration while at rest:
where.
Therein, ^{i}A denotes the accelerometer output, ^{o}A represents the acceleration in the reference coordinate system, and g stands for gravitational acceleration. For the experiment, sensors 1, 2, 3, and 4 were placed respectively on the waist, left thigh, left shank, and left foot. In addition, the rotational matrix from the sensor coordinate system to the reference system ^{o}R_{i} is the following:
Then, the accelerometer output ^{i}A is represented by substituting Eq. (2) into Eq. (1) as shown below:
The initial roll and pitch angles using Eq. (3) are:
where ^{i}A_{x}, ^{i}A_{y}, and ^{i}A_{z} respectively denote the accelerometer output for the x, y, and z axes. Therein, ^{i}φ_{A} and ^{i}θ_{A} respectively denote the initial roll and pitch.
To correct the yaw angle, calculations require the roll ^{i}φ_{A}, pitch ^{i}θ_{A}, and magnetometer output as:
where ^{i}m_{x}, ^{i}m_{y}, and ^{i}m_{z} respectively denote the magnetometer outputs for the x, y, and z axes. Therein, ^{c,i}m_{x}, ^{c,i}m_{y}, and ^{c,i}m_{z} respectively represent the corrected magnetic field data for the x, y, and z axes. The positive directions of ^{c,i}m_{x}, ^{c,i}m_{y}, and ^{c,i}m_{z} coincide with those of each axis of the reference coordinate system in Fig. 1. The xaxis pointed in the direction of the azimuth at 112.5 degrees (eastsoutheast). The yaxis pointed in the direction at the azimuth of 202.5 degrees (southsouthwest) in the reference coordinates.
The following equation is used for calculating yaw:
where \({}^{i}\psi_{m}\) denotes the azimuth on the x–y plane of the reference coordinates in Fig. 1.
The differential Euler angles in the reference coordinate system are the following:
Therein, \({}^{i}\dot{\phi }\), \({}^{i}\dot{\theta }\), and \({}^{i}\dot{\psi }\) respectively represent the differential roll, pitch, and yaw angles, \({}^{i}\omega_{y}\) and \({}^{i}\omega_{z}\) respectively stand for the gyroscope output for the x, y, and z axes. Then the roll, pitch, and yaw angles are calculated by substituting Eq. (8) into Eq. (9):
Extended Kalman filter
Statespace model
The roll, pitch, and yaw angles of each sensor placed on the lower limb are estimated by the sensor fusion using the extended Kalman filter. The nonlinear state equation was developed using Eq. (9). The nonlinear observation equation was developed using Eq. (7) and the acceleration sensor output. The nonlinear state and observation equations are shown respectively in Eqs. 10 and 11:
where,
In those equations, \({}_{t}\), \({}^{i}\theta_{t}\), and \({}^{i}\psi_{t}\) respectively denote Euler angles of the sensor placed on each lower limb segment, as estimated using the extended Kalman filter. Ts stands for the sampling time. In addition, \({}^{i}\omega_{x,t}\), \({}^{i}\omega_{v,t}\), and \({}^{i}\omega_{z,t}\) respectively denote the gyroscope outputs for the x, y, and z axes. Also, \({}^{i}A_{{S_{x} }}\), \({}^{i}A_{{S_{y} }}\), and \({}^{i}A_{{S_{z} }}\) respectively express the accelerometer output for the x, y, and z axes. Therein, \({}^{i}w_{t}\)and \({}^{i}v_{t}\) denote white noise.
Yaw angle \({}^{i}\psi_{m}\), which was calculated using the magnetometer output, and the accelerometer output were used as the observation values in Eq. (11). Equation (1) represents the relation between the accelerometer output and gravitational acceleration. Consequently, the right side of Eq. (1) was used in \({}^{i}H\left( {{}^{i}x_{t} } \right)\) of the observation equation. Although the proportion of the centrifugal acceleration and the tangential acceleration in the accelerometer output would have increased during exercise, these acceleration components were processed as observation noise. In addition, \({}^{i}\psi_{m} = {}^{i}\psi_{t}\)is a simple equation representing the relation between the magnetometer output and the yaw angle of the state values. Therefore, the yaw angle \({}^{i}\psi_{t}\) of the state value was used in \({}^{i}H\left( {{}^{i}x_{t} } \right)\) of the observation equation.
The partial derivatives of \({}^{i}F\left( {{}^{i}x_{t} , {}^{i}\omega_{t} } \right)\) and \({}^{i}H\left( {{}^{i}x_{t} } \right)\) are shown below:
Then, the prediction step [Eqs. (14) and (15)] and the filtering step [Eqs. (18), (19), (20)] are calculated using the nonlinear discretetime system represented by Eqs. (10) and (11)] . Here, Eq. (16) and Eq. (17) are used for calculating the likelihood of the statespace model:
In those equations, \({}^{i}P\) represents the error covariance matrix, \({}^{i}V\) denotes the prediction error matrix, \({}^{i}B\) stands for the prediction error variance matrix, and \({}^{i}K\) denotes the Kalman gain. Therein, \({}^{i}Q\) and \({}^{i}R\) respectively denote the covariance matrices of process noise \({}^{i}{w}_{t}\) in the nonlinear state equation and observation noise \({}^{i}{v}_{t}\) in the nonlinear observation equation.
Noise covariance matrices based on sensor output
The process and observation noise covariance matrices in the extended Kalman filter were determined based on the statespace model dynamics and the sensor noise. The postural change appears in the gyroscope output because the rotational motion of the joints produces human movement. Consequently, the process noise covariance matrix was determined based on the gyroscope output as presented below:
where,
In those expressions, \({}^{i}\omega_{x,t}\), \({}^{i}\omega_{y,t}\), and \({}^{i}\omega_{z,t}\) respectively stand for the gyroscope output for x, y, and z axes. Also a and b are adjusting parameters. For this study, a and b were determined to maximize the loglikelihood (\({}_{{}}^{i} LL\)) shown in Eq. (22):
In that equation, N stands for the number of timeseries data; j represents timeseries. In addition, \({}^{i}{B}_{j}\) expresses the prediction error variance; \({}^{i}{V}_{j}\) signifies the prediction error.
The observation noise covariance matrices must be set at a high value when the sensor noise increases [32]. Therefore, the observation noise covariance matrix was determined based on the accelerometer and magnetometer output because the two sensor outputs were used as observation values [33]. The observation noise covariance matrix is presented below:
where,
In the matrix, \({}_{{}}^{c, i} m_{x,t}\), \({}_{{}}^{c, i} m_{y,t}\), and \({}_{{}}^{c, i} m_{z,t}\) respectively denote corrected magnetic field data for the x, y, and z axes. In addition, \(\overline{m}\) represents the average value of the magnetometer output over the entire measurement time. Furthermore, ^{i}A_{x,t}, ^{i}A_{y,t}, and ^{i}A_{z,t} respectively express the accelerometer outputs for the x, y, and z axes. Therein, c, d, e, and f are adjusting parameters. In addition, c, d, e, and f were determined to maximize the loglikelihood (LL) shown in Eq. (22). Several studies have proposed process and observation noise covariance matrices based on sensor output [31, 33]. In those earlier studies, noise covariance matrices were produced after calculating the deviation of each sensor using many equations. The adjusting parameters a to f in the noise covariance matrices are determined simply using only loglikelihood calculations presented in Eq. (22). In addition, interaction between the process noise covariance and observation noise covariance is considered in loglikelihood calculations.
The roll, pitch, and yaw angles in the sensor i coordinate system obtained from the sensor fusion are converted into the rotational matrix of the reference coordinate system using Eq. (2). The lower limb joint angles are calculated by substituting Eq. (2) into Eq. (24) as shown below:
In that equation, ^{i−1}R_{i} denotes the rotational matrix from the sensor i coordinate system to the sensor i1 system. The hip joint angle is estimated using the output of the two sensors placed on the waist and thigh. The knee joint angle is estimated using the output of the two sensors placed on the thigh and shank. The ankle joint angle is estimated using the output of the two sensors positioned on the shank and foot.
Verification experiment
Participants and experiment conditions
Three healthy participants (A, B, and C) were examined during the experiment. Anthropometric data are shown in Table 1. After maintaining the upright posture for about 5 s, the first step that a participant took was with the left foot. They were instructed to walk using a natural stride in time with a metronome (70 bpm). Measurement started simultaneously when a participant started to maintain the upright posture. The measurements finished when the participant placed the right foot flat on the floor during the sixth step. Following an explanation of the purpose and requirements of the study, the participants gave their written informed consent to participate in the study. Study approval was obtained from the Research Ethics Board, Kogakuin University, and National Institute of Technology, Akita College.
During the experiment, kinematic data were collected using an optical 3D motion analysis system (Bonita 10; Vicon Motion Systems Ltd.), two force plates (9286; Kistler Japan Co. Ltd.), and four nineaxis motion sensors in synchronization. The heel strike and toe off were ascertained from force plate data. The sensors were placed on the waist, left thigh, left shank, and left foot using doublesided tape and elastic straps. The sensor positions are presented in Fig. 2. Definitions of the length of the thigh, shank, and foot were referred from reports of earlier research [34]. Positions of reflective markers for the optical 3D motion analysis system were found by reference to the Vicon Plugin Gait model. The sampling frequencies of the nineaxis motion sensors, the optical 3D motion analysis system, and the force plates were 100 Hz.
Results
Table 2 shows parameters a to f in the walking experiment, which were found to maximize the loglikelihood in Eq. (22). In the walking experiment, more or less equivalent parameters were obtained for all participants.
The joint angles of participant A are depicted in Fig. 3. Black solid curves represent results obtained from the optical 3D motion analysis system. Red solid curves represent results obtained from the extended Kalman filter using the noise covariance matrices based on sensor output, hereinafter designated as NBS. Orange solid curves represent results obtained from NBS, which used gyroscope output for the process noise covariance matrix and which used a constant value for the observation noise covariance matrix, hereinafter designated as NBS (Only process noise). Green solid curves represent results obtained from NBS, which used the constant value for the process noise covariance matrix and which used accelerometer and magnetometer output for the observation noise covariance matrix, hereinafter designated as NBS (Only observation noise). Blue solid curves present results obtained from the extended Kalman filter using the constant noise covariance, hereinafter designated as CNC. In addition, Ωω (= 0.0005), Ωm (= 1500), and Ωa (= 1500) of CNC were determined to maximize the log likelihood (LL) shown in Eq. (22). The horizontal axis shows the normalized time, where one gait cycle is 100%. One gait cycle in Fig. 3 extends from the beginning of the stance phase of the left leg (the third step) until the end of the swing phase. Table 3 shows root mean square errors (RMSE) between the estimated results and the results obtained from the 3D motion analysis system.
Joint angles obtained from the three NBSs and CNC are generally consistent with the results obtained using the optical 3D motion analysis system. Results show the same tendency for joint angle variation as that found in an earlier study [35].
The ankle joint angle obtained from NBS (Only process noise) is generally consistent with results obtained using the optical 3D motion analysis system at the dorsiflexion peak after toeoff. The ankle joint angle obtained from NBS (Only observation noise) is much smaller than the result obtained from the optical 3D motion analysis system. The results indicate that the process noise covariance matrix based on the gyroscope output contributed to increased accuracy of the dorsiflexion peak during the swing phase.
In the early stance phase and the end of the swing phase, the ankle joint angle obtained from NBS (Only process noise) is much smaller than the result obtained from the optical 3D motion analysis system, whereas the ankle joint angle obtained from NBS (Only observation noise) is generally consistent with the result obtained using the optical 3D motion analysis system. The results indicate that the observation noise covariance matrix based on the accelerometer and magnetometer output contributed to increased accuracy at the early stance phase and at the end of the swing phase. Therefore, the process noise covariance matrix based on the gyroscope output and the observed noise covariance matrix based on the accelerometer and magnetometer output might have contributed to the increased accuracy at different phases.
For knee and hip joint angles, all results show the same tendency. However, NBS (red line) has the smallest RMSE in all results of all three joints. The results show that using both processes of noise covariance matrix based on the gyroscope output and the observed noise covariance matrix based on the accelerometer and magnetometer output might have contributed to increased accuracy. The two noise covariance matrices seem to have influenced one another.
Running experiment
Participants and experiment conditions
The nineaxis motion sensors measured lower limb joint angles of the same participants while they were running in place to verify the effectiveness of NBS when continuously capturing data of fastmoving participants. The nineaxis motion sensors were placed in the same positions as those used for the verification experiment. The measurement time was about 100 s. During the experiment, kinematic data were collected using an optical 3D motion analysis system with four nineaxis motion sensors in synchronization. Participants were instructed to run in place in time with a metronome (150 bpm) after maintaining the upright posture for about 5 s. The sampling frequencies of the nineaxis motion sensors and the optical 3D motion analysis system were 100 Hz.
Results
Table 4 shows parameters a to f for the running.
experiment, which were determined to maximize the loglikelihood in Eq. (22). From the running experiment, different parameters were obtained among the joints. In addition, parameters a, c, and e for running measurements tended to be larger than those in the walking measurement. The results indicate that the noise covariance matrices for the running experiment might have had larger values because the process and observation noise can increase if the motion velocity increases.
The estimated joint angles of participant A are presented in Figs. 4, 5, and 6. In each of Figs. 4, 5, and 6, panels (a) present results obtained over the entire measurement time. Panels (b) present results obtained between 33 s and 35.5 s from the start of measurements. In each of Figs. 4, 5, and 6, panels (b) are used for a detailed examination of the results. Black solid curves present results obtained from the optical 3D motion analysis system. Red solid curves present results obtained from NBS. Blue solid curves present results obtained from CNC.
The estimated ankle joint angle using NBS.
in Fig. 4(a) changes periodically between − 25° and 25° over the entire measurement time, which is generally consistent with results obtained using the optical 3D motion analysis system. The estimated ankle joint angle using CNC in Fig. 4(a) changes periodically between − 70° and 0° over the entire measurement time. Although the waveform of the result obtained using CNC in Fig. 4(b) is similar to the result obtained using NBS, the result obtained using CNC is much smaller than that obtained using NBS. Additionally, the waveform of the result obtained using CNC has a larger dorsiflexion peak than that obtained using NBS at about 33.7, 34.4, and 35.2 s.
The estimated knee joint angle obtained using NBS in Fig. 5(a) changes periodically between 20° and 110° over the entire measurement time, which are generally consistent with the results obtained using the optical 3D motion analysis system. Whereas the estimated knee joint angle using CNC in Fig. 5(b) changes periodically between − 60° and 0° over the entire measurement time. Although the waveform of the result obtained using CNC in Fig. 5(b) is similar to the result obtained using NBS, the result obtained using CNC is much smaller than that obtained using NBS. Additionally, the waveform of the result obtained using CNC has a smaller flexion peak than that obtained using NBS at about 33.6, 34.35, and 35.2 s.
The hip joint angle estimated using NBS in Fig. 6(a) changes periodically between 10° and 35° over the entire measurement time, which are generally consistent with results obtained using the optical 3D motion analysis system. The estimated knee joint angle using CNC in Fig. 6(a) changes periodically between − 35° and − 15° over the entire measurement time. Although the waveform of the result obtained using CNC in Fig. 6(b) is similar to the result obtained using NBS, the result obtained using CNC is much smaller than that obtained using NBS. All results obtained for the other two participants showed similar tendencies. The results demonstrated the effectiveness of the extended Kalman filter using NBS.
Conclusions
For this study, a method for ascertaining the process and observation noise covariance matrices in the extended Kalman filter based on sensor output was constructed to estimate the lower limb joint angles. The lower limb joint angles of the three healthy participants during walking and running were estimated using the method. Results yielded the following conclusions.

1.
The joint angles obtained from the extended Kalman filter using the process and observation noise covariance matrices based on sensor output were generally consistent with results obtained using the optical 3D motion analysis system in the verification experiment.

2.
In the running motion analysis, the results obtained using noise covariance matrices based on sensor output indicated that the estimated joint angles changed periodically within an appropriate range. The results obtained using the constant noise matrices covariance indicated that the estimated joint angles changed abnormally.
Noise covariance matrices based on sensor output can be effective for accurate pose estimation because noise covariance matrices can be timevariable when continuously capturing human motion with longterm measurements. The proposed method is expected to be useful for estimating motion in sports and healthcare applications.
References
 1.
King K, Yoon SW, Perkins NC, Najaf K (2008) Wireless MEMS inertial sensor system for golf swing dynamics. Sens Actuators, A 141(2):619–630
 2.
Favre J, Aissaoui R, Jolles BM, Guise JA, Aminian K (2009) Functional calibration procedure for 3D knee joint angle description using inertial sensors. J Biomech 42(14):2330–2335
 3.
Ameli S, Naghdy F, Stirling D, Naghdy G, Aghmesheh M (2017) Objective clinical gait analysis using inertial sensors and six minute walking test. Pattern Recogn 63:246–257
 4.
Nüesch C, Roos E, Pagenstert G, Mündermann A (2017) Measuring joint kinematics of treadmill walking and running: Comparison between an inertial sensor based system and a camerabased system. J Biomech 57:32–38
 5.
Kruk E, Schwab AL, Helm FCT, Veeger HEJ (2018) Getting in shape: Reconstructing threedimensional longtrack speed skating kinematics by comparing several body pose reconstruction techniques. J Biomech 69:103–112
 6.
Bavan L, Surmacz K, Beard D, Mellon S, Rees J (2019) Adherence monitoring of rehabilitation exercise with inertial sensors: a clinical validation study. Gait Posture 70:211–217
 7.
Hullfish TJ, Qu F, Stoeckl BD, Gebhard PM, Mauck RL, Baxter JR (2019) Measuring clinically relevant knee motion with a selfcalibrated wearable sensor. J Biomech 89(24):105–109
 8.
Nazarahari M, Noamani A, Ahmadian N, Rouhani H (2019) Sensortobody calibration procedure for clinical motion analysis of lower limb using magnetic and inertial measurement units. J Biomech 85(6):224–229
 9.
Hirose K, Doki H, Koda S, Nagasaku K (2011) Studies of the dynamic analysis and motion measurement of skiing turn using extended Kalman filter. Trans Jpn Soc Mech Eng, Series C 77(774):470–480 ((in Japanese))
 10.
Chardonnens J, Favre J, Cuendet F, Gremion G, Aminian K (2013) A system to measure the kinematics during the entire ski jump sequence using inertial sensors. J Biomech 46(1):56–62
 11.
Hirose K, Doki H, Kondo A (2012) Studies of orientation measurement in sports using inertial and magnetic field sensors. Jpn Soc Sports Ind 22(2):255–262 ((in Japanese))
 12.
Saito A, Miyawaki K, Kizawa S, Kobayashi Y (2018) A study of estimating the knee joint angle during walking using the motion sensors (Focusing on the effect of centrifugal acceleration and tangential acceleration). Trans JSME. https://doi.org/10.1299/transjsme.1700488 (in Japanese)
 13.
Saito A, Miyawaki K, Komatsu A, Iwami T (2018) A study of sensor position for thigh and lower leg motion sensors during walking (Focusing on the knee sagittal plane angle). Trans JSME. https://doi.org/10.1299/transjsme.1800263 (in Japanese)
 14.
Kondo A, Doki H, Hirose K (2013) A study of calibration method of magnetic field sensor for body motion measurement using inertial sensor. Proc Sports Eng Human Dyn. https://doi.org/10.1299/jsmeshd.2013._2121 (in Japanese)
 15.
Saito A, Nara Y, Miyawaki K (2019) A study of estimating knee joint angle using motion sensors under conditions of magnetic field variation. Trans JSME. https://doi.org/10.1299/transjsme.1900061 (in Japanese)
 16.
Rigatos GG (2010) Extended Kalman and Particle Filtering for sensor fusion in motion control of mobile robots. Math Comput Simul 81(3):590–607
 17.
Adachi S, Maruta I (2012) Fundamentals of Kalman filter. Tokyo Denki University Press, Tokyo, pp 95–111
 18.
Ran C, Deng Z (2012) Selftuning weighted measurement fusion Kalman filtering algorithm. Comput Stat Data Anal 56(6):2112–2128
 19.
Kamil M, Chobtrong T, Günes E, Haid M (2014) Lowcost object tracking with MEMS sensors, Kalman filtering and simplified twofiltersmoothing. Appl Math Comput 235:323–331
 20.
Zheng Z, Qiu H, Wang Z, Luo S, Lei Y (2019) Data fusion based multirate Kalman filtering with unknown input for online estimation of dynamic displacements. Measurement 131:211–218
 21.
Baerveldt AJ, Klang R (1997) A lowcost and lowweight attitude estimation system for an autonomous helicopter. In: Proceedings of IEEE International Conference on Intelligent Engineering Systems. https://doi.org/10.1109/INES.1997.632450.
 22.
Mahony RE, Hamel T, Pflimlin JM, (2005) Complementary filter design on the special orthogonal group SO(3). In: Proceedings of the 44th IEEE Conference on Decision and Control, and the European Control Conference 2005. https://doi.org/10.1109/CDC.2005.1582367
 23.
Euston M, Coote P, Mahony R, Kim J, Hamel T (2008) A complementary filter for attitude estimation of a fixedwing UAV. In: Proceedings of 2008 IEEE/RSJ International Conference of Intelligent Robots and Systems. https://doi.org/10.1109/IROS.2008.4650766
 24.
Mahony R, Hamel T, Pflimlin JM (2008) Nonlinear complementary filters on the special orthogonal group. IEEE Trans Autom Control 53(5):1203–1218
 25.
Sugihara T, Masuya K, Yamamoto M (2013) A complementary filter for highfidelity attitude estimation based on decoupled linear/nonlinear properties of inertial sensors. J Robot Soc Jpn 31(3):251–262 ((in Japanese))
 26.
Aoki K (2008) The brandnew technology: Motion analysis system. J Soc Biomech 32(3):167–172 ((in Japanese))
 27.
Ehara Y (2008) The VICON. J Soc Biomech 32(2):107–111 ((in Japanese))
 28.
Syam PN, Sheila G, Graham A, Rami A, Weijie W (2010) A method to calculate the centre of the ankle joint: a comparison with the Vicon® PluginGait model. Clin Biomech 25(6):582–587
 29.
Stief F, Böhm H, Michel K, Schwirtz A, Döderlein L (2013) Reliability and accuracy in threedimensional gait analysis: a comparison of two lower body protocols. J Appl Biomech 29:105–111
 30.
Vaganay J, Aldon MJ, Fournier A (1993) Mobile robot attitude estimation by fusion of inertial data.In: Proceedings of the IEEE International Conference on Robotics and Automation. https://doi.org/10.1109/ROBOT.1993.291995
 31.
Jurman D, Jankovec M, Kamnik R, Topic M (2007) Calibration and data fusion solution for the miniature attitude and heading reference system. Sens Actuators, A 138(2):411–420
 32.
Hirose K, Kondo A (2014) Special issues no. 3: measurement technique for ergonomics. Jpn J Ergon 50(4):182–190 ((in Japanese))
 33.
Miyamoto G, Sonobe M, Shibata K, Hirose K (2019) Development of gait measurement system using IMU sensors. Proc Chugoku and Shikoku Reg Conf . https://doi.org/10.1299/jsmecs.2019.57.1001 ((in Japanese))
 34.
Ae M, Tang H, Yokoi T (1992) Estimation of inertia properties of the body segments in Japanese athletes. Biomechanism 11:23–33 ((in Japanese))
 35.
Yamamoto H, Yanagida Y (2011) The various patterns of knee angle in the stance phase. Soc Phys Ther Sci 26(2):269–273 ((in Japanese))
Acknowledgements
Not applicable
Funding
This work was supported by JSPS KAKENHI Grant Number JP 20K19588.
Author information
Affiliations
Contributions
AS conceived the study and drafted the manuscript. AS and KM carried out all experiments and analyzed the data. YK and SK participated in the research design and sequence alignment. All authors read and approved the final manuscript.
Corresponding author
Ethics declarations
Competing interests
The authors declare that they have no competing interests.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Saito, A., Kizawa, S., Kobayashi, Y. et al. Pose estimation by extended Kalman filter using noise covariance matrices based on sensor output. Robomech J 7, 36 (2020). https://doi.org/10.1186/s4064802000185y
Received:
Accepted:
Published:
Keywords
 Kalman filter
 Motion sensor
 Noise covariance matrix
 Pose estimation
 Sensor fusion