DriveWorks SDK Reference
3.0.4260 Release
For Test and Development only

RadarDopplerMotion Interface

Detailed Description

Provides estimation of the speed and heading of the radar observing doppler based radar measurements.

Note
SW Release Applicability: These APIs are available in both NVIDIA DriveWorks and NVIDIA DRIVE Software releases.

Data Structures

struct  dwRadarDopplerMotion
 Defines the radar motion. More...
 

Typedefs

typedef struct dwRadarDopplerMotionObject * dwRadarDopplerMotionHandle_t
 Handle to a radar-motion module object. More...
 

Functions

DW_API_PUBLIC dwStatus dwRadarDopplerMotion_getCUDAStream (cudaStream_t *stream, dwRadarDopplerMotionHandle_t obj)
 Gets CUDA stream used by the radar Doppler motion. More...
 
DW_API_PUBLIC dwStatus dwRadarDopplerMotion_getMotion (dwRadarDopplerMotion *motion, dwRadarDopplerMotionHandle_t obj)
 Gets the available radar motion estimation result. More...
 
DW_API_PUBLIC dwStatus dwRadarDopplerMotion_initialize (dwRadarDopplerMotionHandle_t *obj, cudaStream_t stream, dwContextHandle_t ctx)
 Creates and initializes a GPU-based radar motion estimation module. More...
 
DW_API_PUBLIC dwStatus dwRadarDopplerMotion_processAsync (const dwRadarScan *radarScan, dwRadarDopplerMotionHandle_t obj)
 Process the dwRadarScan and compute the radar motion. More...
 
DW_API_PUBLIC dwStatus dwRadarDopplerMotion_release (dwRadarDopplerMotionHandle_t obj)
 Releases the radar Doppler motion module. More...
 
DW_API_PUBLIC dwStatus dwRadarDopplerMotion_reset (dwRadarDopplerMotionHandle_t obj)
 Resets the radar Doppler motion module. More...
 
DW_API_PUBLIC dwStatus dwRadarDopplerMotion_setCUDAStream (cudaStream_t stream, dwRadarDopplerMotionHandle_t obj)
 Sets the CUDA stream for CUDA related operations. More...
 

Data Structure Documentation

◆ dwRadarDopplerMotion

struct dwRadarDopplerMotion
Data Fields
float32_t confidenceHeading Confidence for heading estimate.
float32_t confidenceSpeed Confidence for radial speed estimate (range: [0, 1))
dwMatrix2f covariance Estimation error covariance for (heading, radial speed)
float32_t heading Radar heading direction (the direction of radar sensor velocity) in sensor space (radian)
dwTime_t hostTimestamp_us Host timestamp of the computed radar motion (us)
dwRadarRange radarRange radar range type
float32_t speed Radar speed (the magnitude of radar sensor velocity) in sensor space (m/s)

Typedef Documentation

◆ dwRadarDopplerMotionHandle_t

typedef struct dwRadarDopplerMotionObject* dwRadarDopplerMotionHandle_t

Handle to a radar-motion module object.

Definition at line 87 of file DopplerMotionEstimator.h.

Function Documentation

◆ dwRadarDopplerMotion_getCUDAStream()

DW_API_PUBLIC dwStatus dwRadarDopplerMotion_getCUDAStream ( cudaStream_t *  stream,
dwRadarDopplerMotionHandle_t  obj 
)

Gets CUDA stream used by the radar Doppler motion.

Parameters
[out]streamThe CUDA stream currently used.
[in]objA handle to the lane detection module.
Returns
DW_INVALID_HANDLE - If the given object handle is invalid, null or of wrong type .
DW_INVALID_ARGUMENT - if given stream is invalid
DW_SUCCESS

◆ dwRadarDopplerMotion_getMotion()

DW_API_PUBLIC dwStatus dwRadarDopplerMotion_getMotion ( dwRadarDopplerMotion motion,
dwRadarDopplerMotionHandle_t  obj 
)

Gets the available radar motion estimation result.

Parameters
[out]motionA pointer to the last estimated motion.
[in]obj- RadarDopplerMotion handle.
Returns
DW_INVALID_HANDLE - If the given object handle is invalid, null or of wrong type .
DW_INVALID_ARGUMENT - if given bestPair is invalid
DW_NOT_AVAILABLE - if currently no solution is available, i.e. no call to dwRadarDopplerMotion_processAsync() was performed
DW_SUCCESS

◆ dwRadarDopplerMotion_initialize()

DW_API_PUBLIC dwStatus dwRadarDopplerMotion_initialize ( dwRadarDopplerMotionHandle_t obj,
cudaStream_t  stream,
dwContextHandle_t  ctx 
)

Creates and initializes a GPU-based radar motion estimation module.

Parameters
[out]obj- A pointer to the radar Doppler motion handle.
[in]stream- The CUDA stream to use for CUDA operations of the radar motion estimator.
[in]ctx- Specifies the handler to the context to create radar Doppler motion.
Returns
DW_BAD_CAST - If the provided context handle is invalid.
DW_INVALID_ARGUMENT - If the params of number of radars is invalid, or any pointers are null
DW_SUCCESS

◆ dwRadarDopplerMotion_processAsync()

DW_API_PUBLIC dwStatus dwRadarDopplerMotion_processAsync ( const dwRadarScan radarScan,
dwRadarDopplerMotionHandle_t  obj 
)

Process the dwRadarScan and compute the radar motion.

Parameters
[in]radarScan- dwRadarScan to compute motion for.
[in]obj- RadarDopplerMotion handle.
Returns
DW_INVALID_HANDLE - If the given object handle is invalid, null or of wrong type .
DW_INVALID_ARGUMENT - if given radarScan is invalid
DW_SUCCESS

◆ dwRadarDopplerMotion_release()

DW_API_PUBLIC dwStatus dwRadarDopplerMotion_release ( dwRadarDopplerMotionHandle_t  obj)

Releases the radar Doppler motion module.

Parameters
[in]objA handle to the doppler motion object.
Returns
DW_INVALID_HANDLE - If the given object handle is invalid , , null or of wrong type.
DW_SUCCESS

◆ dwRadarDopplerMotion_reset()

DW_API_PUBLIC dwStatus dwRadarDopplerMotion_reset ( dwRadarDopplerMotionHandle_t  obj)

Resets the radar Doppler motion module.

Parameters
[in]objA handle to the doppler motion object.
Returns
DW_INVALID_HANDLE - If the given object handle is invalid, null or of wrong type .
DW_SUCCESS

◆ dwRadarDopplerMotion_setCUDAStream()

DW_API_PUBLIC dwStatus dwRadarDopplerMotion_setCUDAStream ( cudaStream_t  stream,
dwRadarDopplerMotionHandle_t  obj 
)

Sets the CUDA stream for CUDA related operations.

Note
The ownership of the stream remains by the callee.
Parameters
[in]streamThe CUDA stream to be used. Default is the one passed during initialization.
[in]objA handle to the lane detector module for which to set CUDA stream.
Returns
DW_INVALID_HANDLE - If the given object handle is invalid, null or of wrong type .
DW_SUCCESS