- Welcome
- Getting Started With the NVIDIA DriveWorks SDK
- Modules
- Samples
- Tools
- Tutorials
- SDK Porting Guide
- DriveWorks API
- More
This document will help you port your applications from DriveWorks SDK 3.5 to DriveWorks SDK 4.0.
DriveWorks main library was split into a collection of smaller libraries providing a subset of DriveWorks APIs to link against. Every user end application or library would need to link against a particular libdw_<module>.so
library instead, to gain access to the API subset.
Following APIs have been modified:
dwCalibrationEngine_addFeatureDetections
additionally takes feature statuses as an inputdwCalibrationEngine_initializeStereo
additionally takes the vehicle sensor index as an input and allows to perform calibration at low speedsupdateMasks
was removed from dwCameraModel_applyImageTransform()
.dwEgomotion_getHistoryElement
API signature has been changed. The function no longer provides pointers into the egomotion history, instead a copy of the requested element is provided.DW_EGOMOTION_MEASURMENT_VELOCITY
, DW_EGOMOTION_MEASURMENT_STEERINGANGLE
and DW_EGOMOTION_MEASURMENT_STEERINGWHEELANGLE
are removed from dwMotionModelMeasurement
.dwEgomotion_addOdometry
API has been deprecated. Use dwEgomotion_addVehicleState
going forward.dwEgomotion_update
API has been deprecated. Please set dwEgomotionParameters.automaticUpdate
to true
. This setting will become the default behavior in an upcoming release, at which point dwEgomotion_update
will be removed.The parameter siblingId
in dwSensorCamera_readFrame
has been removed. This is due to the fact each instance of a camera is a unit, resulting in no sibling logic anymore.
This release removed the following APIs:
dwSensorSerializer_attachTo
dwSensorSerializer_isAttached
dwSensorSerializer_detachFrom
Previously, each SensorSerializer instance was capable of serializing data from multiple sensors, and the APIs above relates to that specific functionality. Such functionality will be removed and each instance of SensorSerializer will only handle data from one sensor. If the users want to serialize data from multiple sensors, it is necessary to create multiple instance of SensorSerializer
This release can be used with update Aurix Firmware. Hardware timestamping and is not available with Aurix firmware version 4.0 and above. CAN data size limit is 8 bytes with Aurix firmware version 4.0 and above.
The data conditioner initializer dwDataConditioner_initialize()
will be deprecated and replaced with dwDataConditioner_initializeNew()
. The new API has an additional parameter that allows setting the maximum number of images that can be processed in one prepareData()
call. Previously the number was taken from the batch size of the model passed in to dwDataConditioner_initialize()
.
This release has removed the following previously deprecated APIs:
dwDNNTensor_create
and renamed:
dwDNNTensor_createNew
to dwDNNTensor_create
This release has removed the following previously deprecated APIs:
dwFeature2DDetectorConfig
dwFeature2DDetector_initDefaultParams
dwFeature2DDetector_initDefaultParamsForCamera
dwFeature2DDetector_initialize
and renamed:
dwFeature2DDetectorConfigNew
to dwFeature2DDetectorConfig
dwFeature2DDetector_initDefaultParamsNew
to dwFeature2DDetector_initDefaultParams
dwFeature2DDetector_initDefaultParamsForCameraNew
to dwFeature2DDetector_initDefaultParamsForCamera
dwFeature2DDetector_initializeNew
to dwFeature2DDetector_initialize
This release has removed the following previously deprecated APIs:
dwFeature2DTrackerConfig
dwFeature2DTracker_initDefaultParams
dwFeature2DTracker_initDefaultParamsForCamera
dwFeature2DTracker_initialize
and renamed:
dwFeature2DTrackerConfigNew
to dwFeature2DTrackerConfig
dwFeature2DTracker_initDefaultParamsNew
to dwFeature2DTracker_initDefaultParams
dwFeature2DTracker_initDefaultParamsForCameraNew
to dwFeature2DTracker_initDefaultParamsForCamera
dwFeature2DTracker_initializeNew
to dwFeature2DTracker_initialize
This release has removed DW_FEATURE2D_TRACKER_ALGORITHM_SFM
from dwFeature2DTrackerAlgorithm
, please use dwFeature2DTrackerConfigNew::enableSparseOutput=1
instead.
Following APIs have been modified:
dwFeature2DTrackerConfig::numTrackerDevicesPVA
was addedThis release moved the following headers:
dw/pointcloudprocessing/PointCloud.h
to dw/pointcloudprocessing/pointcloud/PointCloud.h
dw/pointcloudprocessing/PointCloudAccumulator.h
to dw/pointcloudprocessing/accumulator/PointCloudAccumulator.h
dw/pointcloudprocessing/PointCloudPlaneExtractor.h
to dw/pointcloudprocessing/planeextractor/PointCloudPlaneExtractor.h
dw/pointcloudprocessing/PointCloudStitcher.h
to dw/pointcloudprocessing/stitcher/PointCloudStitcher.h
dw/pointcloudprocessing/PointCloudBoxFilter.h
to dw/pointcloudprocessing/filter/PointCloudBoxFilter.h
dw/pointcloudprocessing/PointCloudICP.h
to dw/pointcloudprocessing/icp/PointCloudICP.h
dw/pointcloudprocessing/PointCloudRangeImageCreator.h
to dw/pointcloudprocessing/rangeimagecreator/PointCloudRangeImageCreator.h
Following APIs have been modified:
dwVehicleIOCommand::accelerationValue
has been replaced by dwVehicleIOCommand::lonAccelerationValue
dwVehicleIOCommand::accelerationValid
has been replaced by dwVehicleIOCommand::lonAccelerationValid
dwVehicleIOCommand::speedValid
was removeddwVehicleIOType
was updated to support only the core VehicleIO interfaces. dwVehicleIO_initialize
and dwVehicleIO_initializeFromDBC
should be replaced by dwVehicleIO_initializeFromRig
if previous interface types are desired.This release moved the following headers:
This release moved the following headers:
dw/core/Logger.h
to dw/core/logger/Logger.h
This release moved the following headers:
dw/core/NvMedia.h
to dw/core/system/NvMedia.h
dw/core/NvMediaExt.h
to dw/core/system/NvMediaExt.h
This release moved the following headers:
dw/core/Exports.h
to dw/core/base/Exports.h
dw/core/Status.h
to dw/core/base/Status.h
dw/core/Types.h
to dw/core/base/Types.h