48 #ifndef DW_IMAGEPROCESSING_FEATURE_DETECTOR_H_    49 #define DW_IMAGEPROCESSING_FEATURE_DETECTOR_H_    51 #include <dw/core/Config.h>   218     DW_DEPRECATED(
"WARNING: dwFeature2DDetectorConfig will be removed in the next major release, "   219                   "use dwFeature2DDetectorConfigNew instead");
   378 #pragma GCC diagnostic push   379 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"   381 DW_DEPRECATED(
"WARNING: dwFeature2DDetector_initDefaultParams will be removed in the next major "   382               "release, use dwFeature2DDetector_initDefaultParamsNew instead")
   384 #pragma GCC diagnostic pop   406 #pragma GCC diagnostic push   407 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"   409 DW_DEPRECATED(
"WARNING: dwFeature2DDetector_initDefaultParamsForCamera will be removed in the next "   410               "major release, use dwFeature2DDetector_initDefaultParamsForCameraNew instead")
   414 #pragma GCC diagnostic pop   443 #pragma GCC diagnostic push   444 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"   446 DW_DEPRECATED(
"WARNING: dwFeature2DDetector_initialize will be removed in the next major release, "   447               "use dwFeature2DDetector_initializeNew instead")
   450                                         cudaStream_t cudaStream,
   452 #pragma GCC diagnostic pop   468                                            cudaStream_t cudaStream,
   516                                      const uint32_t maskStrideBytes,
   517                                      const uint32_t maskWidth,
   518                                      const uint32_t maskHeight,
   519                                      dwFeature2DDetectorHandle_t obj);
   554                                              const float32_t* d_normalizedCrossCorrelation,
   555                                              dwFeature2DDetectorHandle_t obj);
   589                                                const float32_t* d_normalizedCrossCorrelation,
   590                                                dwFeature2DDetectorHandle_t obj);
   600                                                   dwFeature2DDetectorHandle_t obj);
   632 #endif // DW_IMAGEPROCESSING_FEATURE_DETECTOR_H_ NVIDIA DriveWorks API: Camera Methods 
 
Extended Harris Corner detector with more configurable parameters, more flexible, better quality but ...
 
uint32_t detectionLevel
for DW_FEATURE2D_DETECTOR_TYPE_EX only STD detector always detects on level 0 pyramid image...
 
Fast corner detector, quicker. 
 
float32_t detailThreshold
for DW_FEATURE2D_DETECTOR_TYPE_STD only features in the cell that have scores higher than this value ...
 
uint32_t NMSRadius
for DW_FEATURE2D_DETECTOR_TYPE_EX and DW_FEATURE2D_DETECTOR_TYPE_FAST9 STD detector use fixed NMSRadi...
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_initDefaultParamsForCamera(dwFeature2DDetectorConfig *params, const dwTransformation3f *cameraToRig, dwConstCameraModelHandle_t cameraHandle)
Initializes dwFeature2DDetector parameters with values best suited for the given camera using camera ...
 
NVIDIA DriveWorks API: Core Types 
 
float float32_t
Specifies POD types. 
 
struct dwImageObject * dwImageHandle_t
 
dwFeature2DSelectionMaskType
Feature distribution mask for extended detector. 
 
bool isMaskAdjustmentEnabled
for DW_FEATURE2D_DETECTOR_TYPE_EX only Switch to use mask adjusment 
 
dwFeature2DDetectorType
Defines different KLT tracking algorithms. 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_setMask(const uint8_t *d_mask, const uint32_t maskStrideBytes, const uint32_t maskWidth, const uint32_t maskHeight, dwFeature2DDetectorHandle_t obj)
Sets a mask to ignore areas of the image. 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_initDefaultParamsNew(dwFeature2DDetectorConfigNew *params)
Initializes dwFeature2DDetector parameters with default values. 
 
uint32_t harrisRadius
for DW_FEATURE2D_DETECTOR_TYPE_EX only STD detector use fixed harrisRadius = 1. 
 
float32_t detailThreshold
for DW_FEATURE2D_DETECTOR_TYPE_STD only features in the cell that have scores higher than this value ...
 
bool useHalf
for DW_FEATURE2D_DETECTOR_TYPE_EX only use half-precision floating point to calculate harris corner s...
 
float32_t gaussianMaskStDevX
for DW_FEATURE2D_DETECTOR_TYPE_EX only Ignored when not using DW_FEATURE2D_SELECTION_MASK_TYPE_GAUSSI...
 
dwProcessorType processorType
for DW_FEATURE2D_DETECTOR_TYPE_STD only set to DW_PROCESSOR_TYPE_PVA_0 or DW_PROCESSOR_TYPE_PVA_1 to ...
 
uint32_t detectionLevel
for DW_FEATURE2D_DETECTOR_TYPE_EX only STD detector always detects on level 0 pyramid image...
 
NVIDIA DriveWorks API: Core Methods 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_initialize(dwFeature2DDetectorHandle_t *obj, const dwFeature2DDetectorConfig *config, cudaStream_t cudaStream, dwContextHandle_t context)
Creates and initializes a feature Detector. 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_initDefaultParams(dwFeature2DDetectorConfig *params)
Initializes dwFeature2DDetector parameters with default values. 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_initializeNew(dwFeature2DDetectorHandle_t *obj, const dwFeature2DDetectorConfigNew *config, cudaStream_t cudaStream, dwContextHandle_t context)
Creates and initializes a feature Detector. 
 
NVIDIA DriveWorks API: Image Conversion and Streaming Functionality 
 
uint32_t imageHeight
Height of the images that the Detector runs on. 
 
output feature in uniform distribution 
 
uint32_t blockSize
for DW_PROCESSOR_TYPE_PVA_0 or DW_PROCESSOR_TYPE_PVA_1 only Block window size used to compute the Har...
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_release(dwFeature2DDetectorHandle_t obj)
Releases the feature Detector. 
 
uint32_t imageWidth
Width of the images that the Detector runs on. 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_detectFromImage(dwFeatureArray *outputDetections, dwImageHandle_t image, dwFeatureArray *preTrackedFeatures, const float32_t *d_normalizedCrossCorrelation, dwFeature2DDetectorHandle_t obj)
Detects new features and append them after old tracked features. 
 
dwFeature2DSelectionMaskType maskType
for DW_FEATURE2D_DETECTOR_TYPE_EX only STD detector always output UNIFORM distribution. 
 
output feature in 2D gaussian distribution which has more features in center area and less ones in bo...
 
uint32_t imageWidth
Width of the images that the Detector runs on. 
 
float32_t scoreThreshold
Threshold to filter out low latency points. 
 
dwStatus
Status definition. 
 
uint32_t maxFeatureCount
Upper bound on number of features handled. 
 
dwProcessorType
Processor type definitions. 
 
uint32_t numEvenDistributionPerCell
for DW_FEATURE2D_DETECTOR_TYPE_STD only Number of features to be appended after high frequency points...
 
uint32_t NMSRadius
for DW_FEATURE2D_DETECTOR_TYPE_EX and DW_FEATURE2D_DETECTOR_TYPE_FAST9 STD detector use fixed NMSRadi...
 
uint32_t cellSize
Cell size in pixel to split the image into cells. 
 
#define DW_DEPRECATED(msg)
 
uint32_t harrisRadius
for DW_FEATURE2D_DETECTOR_TYPE_EX only STD detector use fixed harrisRadius = 1. 
 
NVIDIA DriveWorks API: Pyramid 
 
Holds configuration parameters for a feature detector. 
 
uint32_t cellSize
Cell size in pixel to split the image into cells. 
 
dwProcessorType processorType
for DW_FEATURE2D_DETECTOR_TYPE_STD only set to DW_PROCESSOR_TYPE_PVA_0 or DW_PROCESSOR_TYPE_PVA_1 to ...
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_getValidTrackedCount(const uint32_t **d_validTrackedCount, dwFeature2DDetectorHandle_t obj)
dwFeature2DDetector_getValidTrackedCount 
 
const uint32_t DW_FEATURES2D_DETECTOR_MAX_CELL_SIZE
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_reset(dwFeature2DDetectorHandle_t obj)
Resets a feature Detector. 
 
dwFeature2DDetectorType type
Detecting algorithm defined by dwFeature2DDetectorType 
 
struct dwCameraModelObject const  * dwConstCameraModelHandle_t
A pointer to the handle representing a const calibrated camera. 
 
uint32_t gradientSize
for DW_PROCESSOR_TYPE_PVA_0 or DW_PROCESSOR_TYPE_PVA_1 only Gradient window size. ...
 
bool isMaskAdjustmentEnabled
for DW_FEATURE2D_DETECTOR_TYPE_EX only Switch to use mask adjusment 
 
uint32_t gradientSize
for DW_PROCESSOR_TYPE_PVA_0 or DW_PROCESSOR_TYPE_PVA_1 only Gradient window size. ...
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_getCUDAStream(cudaStream_t *stream, dwFeature2DDetectorHandle_t obj)
Gets the CUDA stream used by the feature Detector. 
 
struct dwContextObject * dwContextHandle_t
Context handle. 
 
bool useNewToOldMapFromPreTracked
Determines whether the detector uses dwFeatureArray::newToOldMap directly from input preTrackedFeatur...
 
struct dwFeature2DDetectorObject const  * dwConstFeature2DDetectorHandle_t
Handle representing a const feature detector. 
 
float32_t harrisK
Weigting K of the harris corner score defined as det(M) - K * trace(M) * trace(M), where M is the structural matrix 0.04 - 0.06 is used typically If set to zero the default value (5e-2) will be used. 
 
bool autoGenerateFeatureID
Determines whether the detector generates unique feature ids for new detections automatically. 
 
bool useNewToOldMapFromPreTracked
Determines whether the detector uses dwFeatureArray::newToOldMap directly from input preTrackedFeatur...
 
float32_t harrisK
Weigting K of the harris corner score defined as det(M) - K * trace(M) * trace(M), where M is the structural matrix 0.04 - 0.06 is used typically If set to zero the default value (5e-2) will be used. 
 
dwFeature2DSelectionMaskType maskType
for DW_FEATURE2D_DETECTOR_TYPE_EX only STD detector always output UNIFORM distribution. 
 
struct dwFeature2DDetectorObject * dwFeature2DDetectorHandle_t
Handle representing a feature detector. 
 
Standard Harris Corner detector with fixed parameters, quicker. 
 
float32_t gaussianMaskStDevY
for DW_FEATURE2D_DETECTOR_TYPE_EX only Ignored when not using DW_FEATURE2D_SELECTION_MASK_TYPE_GAUSSI...
 
NVIDIA DriveWorks API: Core Exports 
 
float32_t gaussianMaskCenterY
for DW_FEATURE2D_DETECTOR_TYPE_EX only Ignored when not using DW_FEATURE2D_SELECTION_MASK_TYPE_GAUSSI...
 
bool autoGenerateFeatureID
Determines whether the detector generates unique feature ids for new detections automatically. 
 
Holds configuration parameters for a feature detector. 
 
NVIDIA DriveWorks API: Feature Array and Feature History Array 
 
uint32_t imageHeight
Height of the images that the Detector runs on. 
 
dwFeature2DDetectorType type
Detecting algorithm defined by dwFeature2DDetectorType 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_initDefaultParamsForCameraNew(dwFeature2DDetectorConfigNew *params, const dwTransformation3f *cameraToRig, dwConstCameraModelHandle_t cameraHandle)
Initializes dwFeature2DDetector parameters with values best suited for the given camera using camera ...
 
uint32_t blockSize
for DW_PROCESSOR_TYPE_PVA_0 or DW_PROCESSOR_TYPE_PVA_1 only Block window size used to compute the Har...
 
uint32_t numEvenDistributionPerCell
for DW_FEATURE2D_DETECTOR_TYPE_STD only Number of features to be appended after high frequency points...
 
uint32_t maxFeatureCount
Upper bound on number of features handled. 
 
float32_t scoreThreshold
Threshold to filter out low latency points. 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_detectFromPyramid(dwFeatureArray *outputDetections, const dwPyramidImage *pyramid, dwFeatureArray *preTrackedFeatures, const float32_t *d_normalizedCrossCorrelation, dwFeature2DDetectorHandle_t obj)
Detects new features and append them after old tracked features. 
 
DW_API_PUBLIC dwStatus dwFeature2DDetector_setCUDAStream(cudaStream_t stream, dwFeature2DDetectorHandle_t obj)
Sets the CUDA stream for CUDA related operations. 
 
float32_t gaussianMaskCenterX
for DW_FEATURE2D_DETECTOR_TYPE_EX only Ignored when not using DW_FEATURE2D_SELECTION_MASK_TYPE_GAUSSI...