Functions to configure the AQS12 Segmentor object. More...
Data Structures | |
struct | CVMAQS12SEGMENTOR3DClustering |
Parameters for clustering a point cloud to the 12 faces of the AQS12 piece. More... | |
Enumerations | |
enum | CVMAQS12SegmentationMethod { CVMSM_KmeansClustering = 1 , CVMSM_PointCloudNormalDeviationClustering } |
Contains the possible segmentation methods for the faces of AQS12 piece. More... | |
enum | CVMAQS12SEGMENTOR3DFilterFeature { CVMAQS12_None = 0 , CVMAQS12_Planarity , CVMAQS12_Variation , CVMAQS12_Sphericity } |
Contains possible features for point cloud filtering (pre- processing step for the segmentation). More... | |
Functions | |
cvbres_t | CVMAQS12CreateSegmentorForDensePointCloud (CVMAQS12SegmentationMethod SegmentationMethod, CVMAQS12SEGMENTOR3D &Segmentor) |
Creates a default AQS12 segmentor for dense point clouds. More... | |
cvbres_t | CVMAQS12CreateSegmentorForPointCloud (CVMAQS12SegmentationMethod SegmentationMethod, CVMAQS12SEGMENTOR3D &Segmentor) |
Creates a default AQS12 segmentor for dense or sparse point clouds. More... | |
cvbres_t | CVMAQS12CreateSegmentorForRangeMap (CVMAQS12SegmentationMethod SegmentationMethod, CVMAQS12SEGMENTOR2D &Segmentor) |
Creates a default AQS12 segmentor for range maps with default range map ignore value equal zero. More... | |
cvbres_t | CVMAQS12SegmentorDensePointCloudGetWindowSize (CVMAQS12SEGMENTOR3D Segmentor, cvbdim_t &WindowSize) |
Gets window size for calculation of normals (used for the classification of the AQS12 faces). More... | |
cvbres_t | CVMAQS12SegmentorDensePointCloudSetWindowSize (CVMAQS12SEGMENTOR3D Segmentor, cvbdim_t WindowSize) |
Sets window size segmentor for calculation of normals (used for the classification of the AQS12 faces). More... | |
cvbres_t | CVMAQS12SegmentorPointCloudDisablePreprocessingFilterGeometricFeature (CVMAQS12SEGMENTOR3D Segmentor) |
Disables filtering the point cloud. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudDisablePreprocessingResample (CVMAQS12SEGMENTOR3D Segmentor) |
Disables resampling the point cloud. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudDisablePreprocessingScaleXZ (CVMAQS12SEGMENTOR3D Segmentor) |
Disables scaling in x and z. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudGetClustering (CVMAQS12SEGMENTOR3D Segmentor, CVMAQS12SEGMENTOR3DClustering &Parameter) |
Gets the parameters for clustering AQS12 points into 12 faces. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudGetPreprocessingFilterGeometricFeature (CVMAQS12SEGMENTOR3D Segmentor, CVMAQS12SEGMENTOR3DFilterFeature &Feature, double &Threshold, size_t &NumberNeighbors) |
Gets the parameters for filtering the point cloud using a geometric feature. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudGetPreprocessingResample (CVMAQS12SEGMENTOR3D Segmentor, size_t &NumberVoxel) |
Gets the parameters for resampling the point cloud. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudGetPreprocessingScaleXZ (CVMAQS12SEGMENTOR3D Segmentor, double &FactorX, double &FactorZ) |
Gets the parameters for scaling in x and z. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudSetClustering (CVMAQS12SEGMENTOR3D Segmentor, const CVMAQS12SEGMENTOR3DClustering &Parameter) |
Sets the parameters for clustering AQS12 points into 12 faces. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudSetPreprocessingFilterGeometricFeature (CVMAQS12SEGMENTOR3D Segmentor, const CVMAQS12SEGMENTOR3DFilterFeature &Feature, double Threshold, size_t NumberNeighbors) |
Sets the parameters for filtering the point cloud using a geometric feature. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudSetPreprocessingResample (CVMAQS12SEGMENTOR3D Segmentor, size_t NumberVoxel) |
Sets the parameters for resampling the point cloud. More... | |
cvbres_t | CVMAQS12SegmentorPointCloudSetPreprocessingScaleXZ (CVMAQS12SEGMENTOR3D Segmentor, double FactorX, double FactorZ) |
Sets the parameters for scaling in x and z. More... | |
cvbres_t | CVMAQS12SegmentorRangeMapGetIgnoreValue (CVMAQS12SEGMENTOR2D Segmentor, double &Value) |
Gets range map ignore value of an AQS12 segmentor for range maps. More... | |
cvbres_t | CVMAQS12SegmentorRangeMapGetWindowSize (CVMAQS12SEGMENTOR2D Segmentor, cvbdim_t &WindowSize) |
Gets window size for calculation of normals (used for the classification of the AQS12 faces). More... | |
cvbres_t | CVMAQS12SegmentorRangeMapSetIgnoreValue (CVMAQS12SEGMENTOR2D Segmentor, double Value) |
Sets range map ignore value to AQS12 segmentor for range maps. More... | |
cvbres_t | CVMAQS12SegmentorRangeMapSetWindowSize (CVMAQS12SEGMENTOR2D Segmentor, cvbdim_t WindowSize) |
Sets window size segmentor for calculation of normals (used for the classification of the AQS12 faces). More... | |
Functions to configure the AQS12 Segmentor object.
Contains the possible segmentation methods for the faces of AQS12 piece.
Contains possible features for point cloud filtering (pre- processing step for the segmentation).
The feature is calculated using a given number of neighbor points. The filtering can be configured with function CVMAQS12SegmentorPointCloudSetPreprocessingFilterGeometricFeature.
Enumerator | |
---|---|
CVMAQS12_None | No feature is calculated. |
CVMAQS12_Planarity | Planarity is calculated. |
CVMAQS12_Variation | Variation is calculated. |
CVMAQS12_Sphericity | Sphericity is caculated. |
cvbres_t CVMAQS12CreateSegmentorForDensePointCloud | ( | CVMAQS12SegmentationMethod | SegmentationMethod, |
CVMAQS12SEGMENTOR3D & | Segmentor | ||
) |
Creates a default AQS12 segmentor for dense point clouds.
CVC3DCreateCalibratedPointCloudFromRangeMap
. Before creating the cloud, set the range map ignore value with function CVC3DCalibratorSetRangeMapIgnoreValue
. All pixels with this value will be interpreted as non-confident.[in] | SegmentationMethod | Segmentation method to be applied (so far only CVMSM_KmeansClustering is supported). |
[out] | Segmentor | Variable to receive the resulting segmentor object. |
cvbres_t CVMAQS12CreateSegmentorForPointCloud | ( | CVMAQS12SegmentationMethod | SegmentationMethod, |
CVMAQS12SEGMENTOR3D & | Segmentor | ||
) |
Creates a default AQS12 segmentor for dense or sparse point clouds.
CVC3DCreateCalibratedPointCloudFromRangeMap
. Before creating the cloud, set the range map ignore value with function CVC3DCalibratorSetRangeMapIgnoreValue
. All pixels with this value will be interpreted as non-confident.[in] | SegmentationMethod | Segmentation method to be applied. |
[out] | Segmentor | Variable to receive the resulting segmentor object. |
cvbres_t CVMAQS12CreateSegmentorForRangeMap | ( | CVMAQS12SegmentationMethod | SegmentationMethod, |
CVMAQS12SEGMENTOR2D & | Segmentor | ||
) |
Creates a default AQS12 segmentor for range maps with default range map ignore value equal zero.
[in] | SegmentationMethod | Segmentation method to be applied (so far only CVMSM_KmeansClustering is supported). |
[out] | Segmentor | Variable to receive the resulting segmentor object. |
cvbres_t CVMAQS12SegmentorDensePointCloudGetWindowSize | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
cvbdim_t & | WindowSize | ||
) |
Gets window size for calculation of normals (used for the classification of the AQS12 faces).
If WindowSize is set to zero, the window size will be calculated automatically.
[in] | Segmentor | Dense point cloud segmentor object. |
[out] | WindowSize | Side length of squared window. |
cvbres_t CVMAQS12SegmentorDensePointCloudSetWindowSize | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
cvbdim_t | WindowSize | ||
) |
Sets window size segmentor for calculation of normals (used for the classification of the AQS12 faces).
If WindowSize is set to zero, the window size will be calculated automatically. If it is an even number, it will be extended with one.
[in] | Segmentor | Dense point cloud segmentor object to be modified. |
[in] | WindowSize | Side length of squared window. |
cvbres_t CVMAQS12SegmentorPointCloudDisablePreprocessingFilterGeometricFeature | ( | CVMAQS12SEGMENTOR3D | Segmentor | ) |
Disables filtering the point cloud.
[in] | Segmentor | Segmentor object where filtering should be disabled. |
cvbres_t CVMAQS12SegmentorPointCloudDisablePreprocessingResample | ( | CVMAQS12SEGMENTOR3D | Segmentor | ) |
Disables resampling the point cloud.
[in] | Segmentor | Segmentor object where resampling should be disabled. |
cvbres_t CVMAQS12SegmentorPointCloudDisablePreprocessingScaleXZ | ( | CVMAQS12SEGMENTOR3D | Segmentor | ) |
Disables scaling in x and z.
[in] | Segmentor | Segmentor object where scaling should be disabled. |
cvbres_t CVMAQS12SegmentorPointCloudGetClustering | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
CVMAQS12SEGMENTOR3DClustering & | Parameter | ||
) |
Gets the parameters for clustering AQS12 points into 12 faces.
The faces of the AQS12 piece are clustered by a condition region growing clustering algorithm on point clouds. The points are grouped by similar normals.
[in] | Segmentor | Segmentor object. |
[out] | Parameter | Parameters to configure clustering. |
cvbres_t CVMAQS12SegmentorPointCloudGetPreprocessingFilterGeometricFeature | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
CVMAQS12SEGMENTOR3DFilterFeature & | Feature, | ||
double & | Threshold, | ||
size_t & | NumberNeighbors | ||
) |
Gets the parameters for filtering the point cloud using a geometric feature.
[in] | Segmentor | Segmentor object. |
[out] | Feature | Geometric feature used for filtering |
[out] | Threshold | Threshold for feature to remove points |
[out] | NumberNeighbors | Number of neighbors used to calculate geometric feature (if it is below 2, it will be calculated considering the number of points in cloud). |
cvbres_t CVMAQS12SegmentorPointCloudGetPreprocessingResample | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
size_t & | NumberVoxel | ||
) |
Gets the parameters for resampling the point cloud.
The point cloud is downsized via an octree resampling. The parameter NumberVoxel specifies the approximate number of voxel (points) the resampled point should have. Note, that the real number of points can strongly deviate from this value depending on the distribution of the points in the cloud.
[in] | Segmentor | Segmentor object. |
[out] | NumberVoxel | Desired (approximate) number of voxel the resampled point cloud should have. |
cvbres_t CVMAQS12SegmentorPointCloudGetPreprocessingScaleXZ | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
double & | FactorX, | ||
double & | FactorZ | ||
) |
Gets the parameters for scaling in x and z.
The proportions (X:Y:Z) of the point cloud will be FactorX:1:FactorZ after scaling.
[in] | Segmentor | Segmentor object. |
[out] | FactorX | Width of point cloud relative to length. |
[out] | FactorZ | Height of point cloud relative to length. |
cvbres_t CVMAQS12SegmentorPointCloudSetClustering | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
const CVMAQS12SEGMENTOR3DClustering & | Parameter | ||
) |
Sets the parameters for clustering AQS12 points into 12 faces.
The faces of the AQS12 piece are clustered by a condition region growing clustering algorithm on point clouds. The points are grouped by similar normals.
[in] | Segmentor | Segmentor object. |
[in] | Parameter | Parameters to configure clustering. |
cvbres_t CVMAQS12SegmentorPointCloudSetPreprocessingFilterGeometricFeature | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
const CVMAQS12SEGMENTOR3DFilterFeature & | Feature, | ||
double | Threshold, | ||
size_t | NumberNeighbors | ||
) |
Sets the parameters for filtering the point cloud using a geometric feature.
[in] | Segmentor | Segmentor object. |
[in] | Feature | Geometric feature used for filtering. |
[in] | Threshold | Threshold for feature to remove points (valid range is [0;1]). |
[in] | NumberNeighbors | Number of neighbors used to calculate geometric feature (if it is below 2, it will be calculated considering the number of points in cloud). |
cvbres_t CVMAQS12SegmentorPointCloudSetPreprocessingResample | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
size_t | NumberVoxel | ||
) |
Sets the parameters for resampling the point cloud.
The point cloud is downsized via an octree resampling. The parameter NumberVoxel specifies the approximate number of voxel (points) the resampled point should have. Note, that the real number of points can strongly deviate from this value depending on the distribution of the points in the cloud.
[in] | Segmentor | Segmentor object. |
[in] | NumberVoxel | Desired (approximate) number of voxel the resampled point cloud should have. |
cvbres_t CVMAQS12SegmentorPointCloudSetPreprocessingScaleXZ | ( | CVMAQS12SEGMENTOR3D | Segmentor, |
double | FactorX, | ||
double | FactorZ | ||
) |
Sets the parameters for scaling in x and z.
The proportions (X:Y:Z) of the point cloud will be FactorX:1:FactorZ after scaling.
[in] | Segmentor | Segmentor object. |
[in] | FactorX | Width of point cloud relative to length. |
[in] | FactorZ | Height of point cloud relative to length. |
cvbres_t CVMAQS12SegmentorRangeMapGetIgnoreValue | ( | CVMAQS12SEGMENTOR2D | Segmentor, |
double & | Value | ||
) |
Gets range map ignore value of an AQS12 segmentor for range maps.
[in] | Segmentor | Segmentor object |
[out] | Value | Range map values to be ignored during the segmentation. |
cvbres_t CVMAQS12SegmentorRangeMapGetWindowSize | ( | CVMAQS12SEGMENTOR2D | Segmentor, |
cvbdim_t & | WindowSize | ||
) |
Gets window size for calculation of normals (used for the classification of the AQS12 faces).
If WindowSize is set to zero, the window size will be calculated automatically.
[in] | Segmentor | Segmentor object. |
[out] | WindowSize | Side length of squared window. |
cvbres_t CVMAQS12SegmentorRangeMapSetIgnoreValue | ( | CVMAQS12SEGMENTOR2D | Segmentor, |
double | Value | ||
) |
Sets range map ignore value to AQS12 segmentor for range maps.
[in] | Segmentor | Segmentor object to be modified |
[in] | Value | Range map values to be ignored during the segmentation. |
cvbres_t CVMAQS12SegmentorRangeMapSetWindowSize | ( | CVMAQS12SEGMENTOR2D | Segmentor, |
cvbdim_t | WindowSize | ||
) |
Sets window size segmentor for calculation of normals (used for the classification of the AQS12 faces).
If WindowSize is set to zero, the window size will be calculated automatically. If it is an even number, it will be extended with one.
[in] | Segmentor | Range map segmentor object to be modified. |
[in] | WindowSize | Side length of squared window. |