namespace mola::factors
Overview
namespace factors { // classes class FactorAngularVelocityIntegration; class FactorAngularVelocityIntegrationPose; class FactorConstLocalVelocity; class FactorConstLocalVelocityPose; class FactorGnssEnu; class FactorGnssMapEnu; class FactorTrapezoidalIntegrator; class FactorTrapezoidalIntegratorPose; class FactorTricycleKinematic; class MapGravityFactor; class MeasuredGravityFactor; class Pose3RotationFactor; // global functions bool imu_accel_looks_like_gravity(const gtsam::Vector3& measuredAcc); bool imu_quaternion_looks_valid(double qw, double qx, double qy, double qz); gtsam::Rot3 imu_apply_enu_azimuth_correction(const gtsam::Rot3& rawAttitude, double azimuthOffsetDeg); } // namespace factors
Global Functions
bool imu_accel_looks_like_gravity(const gtsam::Vector3& measuredAcc)
Returns true if the given accelerometer reading looks like a plausible gravity vector, accepting either raw m/s^2 units (norm ~9.8) or an already-normalized (“g”) unit vector (norm ~1.0), as reported by different IMU drivers.
bool imu_quaternion_looks_valid(double qw, double qx, double qy, double qz)
Returns true if the given IMU absolute-orientation quaternion (w,x,y,z) is finite and normalized, i.e. safe to convert into a gtsam::Rot3.
gtsam::Rot3 imu_apply_enu_azimuth_correction( const gtsam::Rot3& rawAttitude, double azimuthOffsetDeg )
Applies the fixed ENU-convention correction (yaw=0 => East) plus a user-calibrated azimuth offset (e.g. sensor mounting or magnetic declination) to a raw IMU attitude reading, so the result can be compared against poses expressed in the ENU frame.