DriveWorks SDK Reference

| 0.6.67 Release

Egomotion.h File Reference

Detailed Description

NVIDIA DriveWorks API: Egomotion Methods

Description: This file defines the motion model to predict vehicle's pose.

Definition in file Egomotion.h.

Go to the source code of this file.

Data Structures

struct  dwEgoMotionParameters
 Holds initialization parameters for the EgoMotion module. More...
 
struct  dwEgomotionResult
 Holds egomotion results that contain multiple fields. More...
 
struct  dwEgoMotionSensorCharacteristics
 Sensor measurement noise characteristics for the individual used sensors. More...
 
struct  dwEgomotionUncertainty
 Holds egomotion result uncertainties. More...
 

Typedefs

typedef struct dwEgomotionObject * dwEgomotionHandle_t
 

Enumerations

enum  dwEgomotionDataField {
  DW_EGOMOTION_ROLL = 1 << 3,
  DW_EGOMOTION_PITCH = 1 << 4,
  DW_EGOMOTION_YAW = 1 << 5,
  DW_EGOMOTION_VEL_X = 1 << 6,
  DW_EGOMOTION_VEL_Y = 1 << 7,
  DW_EGOMOTION_VEL_Z = 1 << 8,
  DW_EGOMOTION_ACC_X = 1 << 9,
  DW_EGOMOTION_ACC_Y = 1 << 10,
  DW_EGOMOTION_ACC_Z = 1 << 11,
  DW_EGOMOTION_GYR_X = 1 << 12,
  DW_EGOMOTION_GYR_Y = 1 << 13,
  DW_EGOMOTION_GYR_Z = 1 << 14,
  DW_EGOMOTION_GPS_LAT = 1 << 15,
  DW_EGOMOTION_GPS_LON = 1 << 16,
  DW_EGOMOTION_GPS_ALT = 1 << 17
}
 Defines flags that indicate valid data fields. More...
 
enum  dwMotionModel {
  DW_EGOMOTION_ODOMETRY = 1 << 0,
  DW_EGOMOTION_IMU_ODOMETRY = 1 << 1 | DW_EGOMOTION_ODOMETRY,
  DW_EGOMOTION_IMU_ODOMETRY_GPS = 1 << 2 | DW_EGOMOTION_IMU_ODOMETRY
}
 Defines the egomotion models. More...
 
enum  dwMotionModelMeasurement {
  DW_EGOMOTION_MEASURMENT_VELOCITY = 0,
  DW_EGOMOTION_MEASURMENT_STEERINGANGLE = 1
}
 Defines motion measurements. More...
 

Functions

DW_API_PUBLIC dwStatus dwEgomotion_addGPSMeasurement (const dwGPSFrame *location, dwEgomotionHandle_t obj)
 Adds location measurement to the egomotion module. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_addIMUMeasurement (const dwIMUFrame *imu, dwEgomotionHandle_t obj)
 Adds an inertial motion unit measurement to the egomotion module. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_addOdometry (dwMotionModelMeasurement measuredType, float32_t measuredValue, dwTime_t timestamp_us, dwEgomotionHandle_t obj)
 Notifies the egomotion module of a new odometry measurement. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_applyRelativeTransformation (dwTransformation *newVehicle2World, const dwTransformation *poseOld2New, const dwTransformation *oldVehicle2World)
 Applies the estimated relative motion as returned by dwEgomotion_computeRelativeTransformation() to a given vehicle pose. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_computeRelativeTransformation (dwTransformation *poseAtoB, dwTime_t timestamp_a, dwTime_t timestamp_b, dwEgomotionHandle_t obj)
 Computes the relative pose between two timestamps in the past. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_estimate (dwEgomotionResult *pose, dwEgomotionUncertainty *sigma, dwTime_t timestamp_us, dwEgomotionHandle_t obj)
 Runs the motion model estimation for a given timestamp and predicts motion as it would happen for the provided timestamp. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getEstimation (dwEgomotionResult *result, dwEgomotionHandle_t obj)
 Gets the current estimated pose. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getEstimationTimestamp (dwTime_t *timestamp_us, dwEgomotionHandle_t obj)
 Gets the timestamp of the available estimation result. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getHistoryEntry (const dwEgomotionResult **pose, const dwEgomotionUncertainty **sigma, dwTime_t *timestamp_us, size_t index, dwEgomotionHandle_t obj)
 Returns an entry from the motion history that is currently available. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getHistorySize (size_t *num, dwEgomotionHandle_t obj)
 Returns the number of elements currently stored in the motion history. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getMotionModel (dwMotionModel *model, dwEgomotionHandle_t obj)
 Returns the type of the motion model used. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_getUncertainty (dwEgomotionUncertainty *result, dwEgomotionHandle_t obj)
 Gets the current estimation uncertainties. 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_release (dwEgomotionHandle_t *obj)
 Releases the egomotion module. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_reset (dwEgomotionHandle_t obj)
 Resets the egomotion module. More...
 
DW_API_PUBLIC dwStatus dwEgomotion_update (dwTime_t timestamp_us, dwEgomotionHandle_t obj)
 Runs the motion model estimation for a given timestamp. More...