Machine Vision  v1.2.13

Pose information along with a quality indicator for VISLAM. More...

#include <mvVISLAM.h>

Detailed Description

Pose information along with a quality indicator for VISLAM.

Parameters
poseQualityQuality of the pose (no pose is provided if MV_TRACKING_STATE_INITIALIZING or MV_TRACKING_STATE_FAILED). If the IMU measurement range or bandwidth is exceeded, MV_TRACKING_STATE_LOW_QUALITY is returned. In normal operation, poseQuality should correspond to MV_TRACKING_STATE_HIGH_QUALITY.
bodyPoseBody pose estimate in rotation-translation matrix form \([ R_{sb} | T_{sb} ]\). \(T_{sb}\) is the estimate of the translation of the origin of the body (b) or accelerometer frame relative to the spatial (s) frame in the spatial frame (meters). The spatial frame corresponds to the body frame at initialization. \(R_{sb}\) is the estimate of the corresponding rotation matrix.
gravityCameraPoseGravity-aligned pose of camera estimate in rotation-translation matrix form \([ R_{cs'} | T_{cs'} ]\). \(T_{cs'}\) is the estimate of the translation of the origin of the camera frame (c) relative to the gravity aligned spatial (s') frame in the camera frame (meters). The gravity aligned spatial frame corresponds to the body frame at initialization rotated to compensate for pitch and roll. \(R_{cs'}\) is the estimate of the corresponding rotation matrix.
errCovPoseError covariance matrix for bodyPose estimate.
timeAlignmentCamera IMU time misalignment estimate (seconds).
velocityVelocity estimate, \(v_{sb}\), of origin of accelerometer (b=body) in spatial frame (m/s). The spatial frame corresponds to the body frame at initialization.
errCovVelocityError covariance for velocity estimate \(v_{sb}\) ((m/s)^2).
angularVelocityAngular velocity estimate in body (accelerometer) frame (rad/s).
gravityGravity vector estimate in spatial frame (m/s^2). The spatial frame corresponds to the body frame at initialization.
errCovGravityError covariance for gravity estimate in spatial frame ((m/s^2)^2).
wBiasGyro bias estimate (rad/s).
aBiasAccelerometer bias estimate (m/s^2).
RbgAccelerometer gyro rotation matrix estimate (b = body = accelerometer, g = gyro).
aAccInvInverse of accelerometer scale and non-orthogonality estimate.
aGyrInvInverse of gyro scale and non-orthogonality estimate.
tbcAccelerometer-camera translation misalignment vector estimate (meters). \(t_{bc}\) is the estimate of the translation of the origin of the camera (c) frame relative to that of the body (b) or accelerometer frame in the body frame.
RbcAccelerometer-camera rotational misalignment matrix estimate. Can be used together with tbc to rotate vector in camera frame \(x_c\) to IMU frame \(x_{imu}\) via \([R_{bc}|t_{bc}]x_c = x_{imu}\).
errorCodeError code (includes reasons for reset) bit:
  • 0: Reset: covariances not positive-definite
  • 1: Reset: IMU exceeded range
  • 2: Reset: IMU bandwidth too low
  • 3: Reset: not stationary at initialization
  • 4: Reset: no features for x seconds
  • 5: Reset: insufficient constraints from features
  • 6: Reset: failed to add new features
  • 7: Reset: exceeded instant velocity uncertainty
  • 8: Reset: exceeded velocity uncertainty over window
  • 10: Dropped IMU samples
  • 11: Intrinsic camera calibration questionable
  • 12: Insufficient number of good features to initialize
  • 13: Dropped camera frame
  • 14: Dropped GPS velocity sample
  • 15: Sensor measurements with uninitialized time stamps or uninitialized uncertainty (set to 0) If a reset occurs, the last "good" pose will be used after initialization. To reset the pose, call mvVISLAM_Reset( mvVISLAM* pObj, bool resetPose ) with resetPose set to true.
timeTime stamp of pose in nanoseconds in system time.