Defines module to extract one 3D plane nearby the sensor.
Data Structures | |
struct | dwPlaneExtractorBoxFilterParams |
Defines parameters for point cloud box filter. More... | |
struct | dwPointCloudExtractedPlane |
Defines extracted 3D plane. More... | |
struct | dwPointCloudPlaneExtractorParams |
Defines plane extraction parameter. More... | |
Typedefs | |
typedef struct dwPointCloudPlaneExtractorObject * | dwPointCloudPlaneExtractorHandle_t |
struct dwPlaneExtractorBoxFilterParams |
Data Fields | ||
---|---|---|
dwOrientedBoundingBox3f | box | oriented bounding box |
uint32_t | maxPointCount | maximum number of accepted points |
struct dwPointCloudExtractedPlane |
Data Fields | ||
---|---|---|
dwVector3f | normal | normal vector of the ground plane |
float32_t | offset | offset distance of the ground plane to the coordinate origin |
dwTransformation3f | transformation | rotation and translation of the plane given the estimated normal vector and plane offset |
bool | valid | If this is false, it indicates the ransac plane fitting and optimization failed to produce a 3D ground plane, user should not use the estimated normal and offset. |
struct dwPointCloudPlaneExtractorParams |
Data Fields | ||
---|---|---|
dwPlaneExtractorBoxFilterParams | boxFilterParams | box filter parameters |
bool | cudaPipelineEnabled | Setting to true will process with CUDA pipeline. |
float32_t | maxInlierDistance | maximum inlier distance to the estimated plane |
uint32_t | maxInputPointCount | maximum number of points in input point cloud |
float32_t | minInlierFraction | minimum inlier percentage for ransac plane fitting |
uint32_t | optimizerIterationCount | optimization iteration number |
uint32_t | ransacIterationCount | ransac iteration number |
dwMatrix3f | rotation | rotation that aligns the point cloud with ground plane |
typedef struct dwPointCloudPlaneExtractorObject* dwPointCloudPlaneExtractorHandle_t |
Definition at line 58 of file PointCloudPlaneExtractor.h.
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_bindInput | ( | dwPointCloud const *const | pointCloud, |
dwPointCloudPlaneExtractorHandle_t const | obj | ||
) |
Binds point cloud buffer to plane extractor.
[in] | pointCloud | Pointer to point cloud buffer |
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_bindOutput | ( | dwPointCloud *const | inliers, |
dwPointCloud *const | outliers, | ||
dwPointCloudExtractedPlane *const | outputPlane, | ||
dwPointCloudPlaneExtractorHandle_t const | obj | ||
) |
Binds output buffers to point cloud plane extractor.
[out] | inliers | Pointer to output buffer stores inlier points (optional, can be null) |
[out] | outliers | Pointer to output buffer stores outlier points (optional, can be null) |
[out] | outputPlane | Pointer to extracted 3D plane |
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_getCUDAStream | ( | cudaStream_t *const | stream, |
dwPointCloudPlaneExtractorHandle_t const | obj | ||
) |
Gets CUDA stream of point cloud plane extractor.
[out] | stream | Pointer to CUDA stream handle |
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_getDefaultParameters | ( | dwPointCloudPlaneExtractorParams *const | params | ) |
Gets default point cloud plane extractor parameters.
[in] | params | Pointer to point cloud plane extractor parameter |
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_initialize | ( | dwPointCloudPlaneExtractorHandle_t *const | obj, |
dwPointCloudPlaneExtractorParams const *const | params, | ||
dwContextHandle_t const | ctx | ||
) |
Initializes point cloud plane extractor.
[out] | obj | Handle to point cloud plane extractor |
[in] | params | Pointer to point could plane extractor parameter |
[in] | ctx | Handle to the context |
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_process | ( | dwPointCloudPlaneExtractorHandle_t const | obj | ) |
Extracts 3D ground plane and stores the results to output buffer.
[in] | obj | Handle to point cloud plane extractor |
cudaPipelineEnabled
in dwPointCloudPlaneExtractorParams
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_release | ( | dwPointCloudPlaneExtractorHandle_t const | obj | ) |
Releases point cloud plane extractor.
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_reset | ( | dwPointCloudPlaneExtractorHandle_t const | obj | ) |
Resets point cloud plane extractor.
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPCPlaneExtractor_setCUDAStream | ( | cudaStream_t const | stream, |
dwPointCloudPlaneExtractorHandle_t const | obj | ||
) |
Sets CUDA stream of point cloud plane extractor.
[in] | stream | Handle to CUDA stream |
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_bindInput | ( | dwPointCloud const *const | pointCloud, |
dwPointCloudPlaneExtractorHandle_t const | obj | ||
) |
Binds point cloud buffer to plane extractor.
[in] | pointCloud | Pointer to point cloud buffer |
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_bindOutput | ( | dwPointCloud *const | inliers, |
dwPointCloud *const | outliers, | ||
dwPointCloudExtractedPlane *const | outputPlane, | ||
dwPointCloudPlaneExtractorHandle_t const | obj | ||
) |
Binds output buffers to point cloud plane extractor.
[out] | inliers | Pointer to output buffer stores inlier points (optional, can be null) |
[out] | outliers | Pointer to output buffer stores outlier points (optional, can be null) |
[out] | outputPlane | Pointer to extracted 3D plane |
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_getCUDAStream | ( | cudaStream_t *const | stream, |
dwPointCloudPlaneExtractorHandle_t const | obj | ||
) |
Gets CUDA stream of point cloud plane extractor.
[out] | stream | Pointer to CUDA stream handle |
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_getDefaultParameters | ( | dwPointCloudPlaneExtractorParams *const | params | ) |
Gets default point cloud plane extractor parameters.
[in] | params | Pointer to point cloud plane extractor parameter |
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_initialize | ( | dwPointCloudPlaneExtractorHandle_t *const | obj, |
dwPointCloudPlaneExtractorParams const *const | params, | ||
dwContextHandle_t const | ctx | ||
) |
Initializes point cloud plane extractor.
[out] | obj | Handle to point cloud plane extractor |
[in] | params | Pointer to point could plane extractor parameter |
[in] | ctx | Handle to the context |
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_process | ( | dwPointCloudPlaneExtractorHandle_t const | obj | ) |
Extracts 3D ground plane and stores the results to output buffer.
[in] | obj | Handle to point cloud plane extractor |
cudaPipelineEnabled
in dwPointCloudPlaneExtractorParams
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_release | ( | dwPointCloudPlaneExtractorHandle_t const | obj | ) |
Releases point cloud plane extractor.
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_reset | ( | dwPointCloudPlaneExtractorHandle_t const | obj | ) |
Resets point cloud plane extractor.
[in] | obj | Handle to point cloud plane extractor |
DW_API_PUBLIC dwStatus dwPointCloudPlaneExtractor_setCUDAStream | ( | cudaStream_t const | stream, |
dwPointCloudPlaneExtractorHandle_t const | obj | ||
) |
Sets CUDA stream of point cloud plane extractor.
[in] | stream | Handle to CUDA stream |
[in] | obj | Handle to point cloud plane extractor |