DriveWorks SDK Reference
5.14.77 Release
For Test and Development only

Egomotion.h File Reference

Detailed Description

NVIDIA DriveWorks API: Egomotion Methods

Description: This file defines the motion models estimating the pose of the vehicle.

Definition in file Egomotion.h.

Go to the source code of this file.

Typedefs

typedef struct dwEgomotionObject const * dwEgomotionConstHandle_t
 Const Egomotion Handle. More...
 
typedef struct dwEgomotionObject * dwEgomotionHandle_t
 Egomotion Handle. More...
 

Functions

DW_API_PUBLIC dwStatus dwEgomotion_addIMUMeasurement (const dwIMUFrame *imu, dwEgomotionHandle_t obj)
 Adds an IMU frame to the egomotion module. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_addOdometry (dwMotionModelMeasurement measuredType, float32_t measuredValue, dwTime_t timestamp, dwEgomotionHandle_t obj)
 Notifies the egomotion module of a new odometry measurement. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_addVehicleIOState (dwVehicleIOSafetyState const *safeState, dwVehicleIONonSafetyState const *nonSafeState, dwVehicleIOActuationFeedback const *actuationFeedback, dwEgomotionHandle_t obj)
 Notifies the egomotion module of a changed vehicle state. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_addVehicleState (const dwVehicleIOState *state, dwEgomotionHandle_t obj)
 Notifies the egomotion module of a changed vehicle state. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_applyRelativeTransformation (dwTransformation3f *vehicleToWorldAtB, const dwTransformation3f *vehicleAToB, const dwTransformation3f *vehicleToWorldAtA)
 Applies the estimated relative motion as returned by dwEgomotion_computeRelativeTransformation to a given vehicle pose. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_computeBodyTransformation (dwTransformation3f *const transformationAToB, dwEgomotionRelativeUncertainty *const uncertainty, dwTime_t const timestamp, dwCoordinateSystem const coordinateSystemA, dwCoordinateSystem const coordinateSystemB, dwEgomotionConstHandle_t const obj)
 Compute the transformation between two coordinate systems at a specific timestamp and the uncertainty of this transform. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_computeRelativeTransformation (dwTransformation3f *poseAtoB, dwEgomotionRelativeUncertainty *uncertainty, dwTime_t timestamp_a, dwTime_t timestamp_b, dwEgomotionConstHandle_t obj)
 Computes the relative transformation between two timestamps and the uncertainty of this transform. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_computeSteeringAngleFromIMU (float32_t *steeringAngle, float32_t *inverseSteeringR, const dwIMUFrame *imuMeasurement, dwEgomotionConstHandle_t obj)
 Computes steering angle of the vehicle based on IMU measurement. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_estimate (dwEgomotionResult *pose, dwEgomotionUncertainty *uncertainty, dwTime_t timestamp_us, dwEgomotionConstHandle_t obj)
 Estimates the state for a given timestamp. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getEstimation (dwEgomotionResult *result, dwEgomotionConstHandle_t obj)
 Gets the latest state estimate. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getEstimationTimestamp (dwTime_t *timestamp, dwEgomotionConstHandle_t obj)
 Gets the timestamp of the latest state estimate. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getGyroscopeBias (dwVector3f *gyroBias, dwEgomotionConstHandle_t obj)
 Get estimated gyroscope bias. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getHistoryElement (dwEgomotionResult *pose, dwEgomotionUncertainty *uncertainty, size_t index, dwEgomotionConstHandle_t obj)
 Returns an element from the motion history that is currently available. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getHistorySize (size_t *size, dwEgomotionConstHandle_t obj)
 Returns the number of elements currently stored in the history. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getMotionModel (dwMotionModel *model, dwEgomotionConstHandle_t obj)
 Returns the type of the motion model used. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getUncertainty (dwEgomotionUncertainty *result, dwEgomotionConstHandle_t obj)
 Gets the latest state estimate uncertainties. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_hasEstimation (bool *result, dwEgomotionConstHandle_t obj)
 Check whether estimation is available. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_initialize (dwEgomotionHandle_t *obj, const dwEgomotionParameters *params, dwContextHandle_t ctx)
 Initializes the egomotion module. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_initParamsFromRig (dwEgomotionParameters *params, dwConstRigHandle_t rigConfiguration, const char *imuSensorName, const char *vehicleSensorName)
 Initialize egomotion parameters from a provided RigConfiguration. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_initParamsFromRigByIndex (dwEgomotionParameters *params, dwConstRigHandle_t rigConfiguration, uint32_t imuSensorIdx, uint32_t vehicleSensorIdx)
 Same as dwEgomotion_initParamsFromRig however uses sensor indices in rigConfiguration instead of their names. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_release (dwEgomotionHandle_t obj)
 Releases the egomotion module. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_reset (dwEgomotionHandle_t obj)
 Resets the state estimate and all history of the egomotion module. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_steeringAngleToSteeringWheelAngle (float32_t *steeringWheelAngle, float32_t steeringAngle, dwEgomotionHandle_t obj)
 Convert steering angle to steering wheel angle. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_steeringWheelAngleToSteeringAngle (float32_t *steeringAngle, float32_t steeringWheelAngle, dwEgomotionHandle_t obj)
 Convert steering wheel angle to steering angle. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_update (dwTime_t timestamp_us, dwEgomotionHandle_t obj)
 Runs the motion model estimation for a given timestamp. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_updateIMUExtrinsics (const dwTransformation3f *imuToRig, dwEgomotionHandle_t obj)
 This method updates the IMU extrinsics to convert from the IMU coordinate system to the vehicle rig coordinate system. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_updateVehicle (const dwVehicle *vehicle, dwEgomotionHandle_t obj)
 This method updates the egomotion module with an updated vehicle. More...