estimateGravityRotation
Estimate gravity rotation using IMU measurements and factor graph optimization
Since R2023a
Syntax
Description
The estimateGravityRotation
function estimates the gravity
rotation that helps transform input poses to the local navigation reference frame of IMU using
IMU measurements and factor graph optimization. The gravity rotation transforms the gravity
vector from the local navigation reference frame of IMU to the pose reference
frame.
The accelerometer measurements contain constant gravity acceleration that does not contribute to motion. You must remove this from the measurements for accurate fusion with other sensor data. The input pose reference frame may not always match the local navigation reference frame of IMU, North-East-Down (NED) or East-North-Up (ENU) in which the gravity direction is known. So, it is necessary to transform the input poses to the local navigation frame to remove the known gravity effect. The estimated rotation helps align the input pose reference frame and local navigation reference frame of IMU.
[
estimates the rotation required to transform the gravity vector from the local navigation
reference frame of IMU (NED or ENU) to the input pose reference frame.gRot
,info
] = estimateGravityRotation(poses
,gyroscopeReadings
,accelerometerReadings
,Name=Value
)
Note
Input poses must be in the initial IMU reference frame unless you specify the
SensorTransform
name-value argument, then the poses can be in a
different frame.
Examples
Input Arguments
Output Arguments
References
[1] Campos, Carlos, Richard Elvira, Juan J. Gomez Rodriguez, Jose M. M. Montiel, and Juan D. Tardos. “ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual–Inertial, and Multimap SLAM.” IEEE Transactions on Robotics 37, no. 6 (December 2021): 1874–90. https://doi.org/10.1109/TRO.2021.3075644.
Extended Capabilities
Version History
Introduced in R2023a