NVIDIA DriveOS Linux NSR SDK API Reference

7.0.3.0 Release
Clusterer.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2018-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: LicenseRef-NvidiaProprietary
4  *
5  * NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
6  * property and proprietary rights in and to this material, related
7  * documentation and any modifications thereto. Any use, reproduction,
8  * disclosure or distribution of this material and related documentation
9  * without an express license agreement from NVIDIA CORPORATION or
10  * its affiliates is strictly prohibited.
11  */
12 
29 #ifndef DW_CLUSTERER_H_
30 #define DW_CLUSTERER_H_
31 
32 #include <dw/core/context/Context.h>
33 #include <dw/core/base/Types.h>
34 #include <dw/image/Image.h>
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40 typedef struct dwClustererParams
41 {
46  uint32_t minSamples;
51  uint32_t maxSampleCount;
53 
57 typedef struct dwClustererObject* dwClustererHandle_t;
58 
72 dwStatus dwClusterer_initParams(dwClustererParams* const clustererParams);
73 
92 dwStatus dwClusterer_initialize(dwClustererHandle_t* const obj, dwClustererParams const* const clustererParams,
93  dwContextHandle_t const ctx);
94 
109 
126 
143 
158 dwStatus dwClusterer_bindInput(dwRectf const* const* const boxes, float32_t const* const* const weights,
159  uint32_t const* const boxesCount, dwClustererHandle_t const obj);
160 
176 dwStatus dwClusterer_bindOutput(int32_t** const clusterLabels, uint32_t* const clusterLabelsCount,
177  uint32_t* const clusterCount, dwClustererHandle_t const obj);
178 
179 #ifdef __cplusplus
180 }
181 #endif
182 
183 #endif // DW_CLUSTERER_H_
dwClustererHandle_t
struct dwClustererObject * dwClustererHandle_t
Handle to a Clusterer.
Definition: Clusterer.h:57
dwClustererParams
struct dwClustererParams dwClustererParams
dwRectf
Defines a rectangle with floating point numbers.
Definition: GeometricTypes.h:67
ctx
DW_API_PUBLIC dwPointCloudRangeImageCreatorParams const *const const dwContextHandle_t ctx
Definition: PointCloudRangeImageCreator.h:293
dwClusterer_release
DW_API_PUBLIC dwStatus dwClusterer_release(dwClustererHandle_t const obj)
Releases the Clusterer module.
dwClusterer_reset
DW_API_PUBLIC dwStatus dwClusterer_reset(dwClustererHandle_t const obj)
Resets the Clusterer module.
dwClusterer_process
DW_API_PUBLIC dwStatus dwClusterer_process(dwClustererHandle_t const obj)
Runs DBScan clusterer on given bounding boxes and returns labels for each bounding box in the same or...
dwClusterer_initParams
DW_API_PUBLIC dwStatus dwClusterer_initParams(dwClustererParams *const clustererParams)
Initializes Clusterer parameters with default values.
dwClustererParams::minSamples
uint32_t minSamples
Minimum number of samples required to form a dense region.
Definition: Clusterer.h:46
dwClusterer_bindOutput
DW_API_PUBLIC dwStatus dwClusterer_bindOutput(int32_t **const clusterLabels, uint32_t *const clusterLabelsCount, uint32_t *const clusterCount, dwClustererHandle_t const obj)
Bind the ouput of the clusterer to list of cluster labels.
float32_t
float float32_t
Specifies POD types.
Definition: BasicTypes.h:41
dwClustererParams::maxSampleCount
uint32_t maxSampleCount
Maximum number of samples that will be given as input. Default value is 100.
Definition: Clusterer.h:51
dwClustererParams::epsilon
float32_t epsilon
Maximum distance from the core box to be considered within a region. Default value is 0....
Definition: Clusterer.h:43
dwClustererParams::minSumOfWeights
float32_t minSumOfWeights
Minimum sum of weights required to form a dense region.
Definition: Clusterer.h:49
dwClusterer_initialize
DW_API_PUBLIC dwStatus dwClusterer_initialize(dwClustererHandle_t *const obj, dwClustererParams const *const clustererParams, dwContextHandle_t const ctx)
Initializes a Clusterer module.
dwContextHandle_t
struct dwContextObject * dwContextHandle_t
Context handle.
Definition: Context.h:74
dwStatus
dwStatus
Status definition.
Definition: ErrorDefs.h:27
DW_API_PUBLIC
#define DW_API_PUBLIC
Definition: Exports.h:38
obj
const NvSciSyncObj *const obj
Definition: wfdext.h:120
dwClustererParams
Definition: Clusterer.h:40
dwClusterer_bindInput
DW_API_PUBLIC dwStatus dwClusterer_bindInput(dwRectf const *const *const boxes, float32_t const *const *const weights, uint32_t const *const boxesCount, dwClustererHandle_t const obj)
Binds the input for clusterer.