EPlaneFinder Class

A EPlaneFinder object is used to search an E3DPlane in an EPointCloud.
The algorithm searches the largest plane in terms of number of "inliers". A point is an "inlier" when its distance to the plane is smaller than a specified threshold (parameter "maximum distance").
Another parameter specifies the expected ratio of inliers over the total number of points in the point cloud (by default, this is set to 0.3).
For more control, you can also set the expected ratio of inliers as a range, when a single number is given the behavior is equivalent to a range (number/2, number).
The method Find throws an error if it cannot achieve a proportion of inliers better than the min of the range. It stops as soon as the max of the range is achieved.
Reducing the size of the range increases speed.
A decimation is applied by default to accelerate the search.
Furthermore, the expected normal to the plane and/or up to two points contained in the plane may be specified.
The method EPlaneFinder::Find processes an EPointCloud object and returns an E3DPlane object when a sufficiently good plane is found in the input point cloud.
The returned plane is the result of fitting an EPlaneFitter on the inliers.

Namespace: Euresys::Open_eVision::Easy3D

Methods

Disables the default decimation.
The decimation should be disabled when the input point cloud is already decimated.
Enables the default decimation which reduces the input point cloud by drawing points randomly.
This decimation is enabled by default. The decimation accelerates the search.
Creates an EPlaneFinder object.
Searches the biggest plane in the supplied EPointCloud. If a sufficiently good plane is found, a E3DPlane object is returned.
Otherwise an exception is thrown.
Sets/gets the expected ratio of inliers in the EPointCloud.
Sets/gets the expected ratio of inliers in the EPointCloud.
Sets/gets the maximum distance of an inlier to the plane.
Returns the expected normal direction (that has been set by EPlaneFinder::SetNormal)
Returns the angle tolerance around the expected normal (that has been set by EPlaneFinder::SetNormal)
Sets/gets the number of points surviving the decimation. Using the setter enables the decimation if it wasn't already. if numberOfPointsAfterDecimation is bigger than the point cloud size, no decimation occurs.
Returns the number of points set (this will be either 0, 1 or 2).
Returns an E3DPoint the plane is constrained to contain (that has been set by EPlaneFinder or EPlaneFinder::SetTwoPoints)
Set seed to a custom value, by default, the random seed used is randomly determined.
Returns true if the default decimator is enabled (enabled by default).
Returns true if the expected normal direction has been set (not set by default).
Returns true if the seed was set to a custom value.
Loads the plane finder configuration. The given ESerializer must have been created for reading.
Assignment operator.
Saves the plane finder configuration. The given ESerializer must have been created for writing.
Sets/gets the expected ratio of inliers in the EPointCloud.
Sets/gets the expected ratio of inliers in the EPointCloud.
Sets/gets the maximum distance of an inlier to the plane.
Sets the expected normal direction and the tolerance around it. These values are used to limit the scope of the plane search.
If the angular tolerance is not specified, a default value of 5 degrees is assumed.
If the tolerance is specified, the value should be strictly positive and correspond to less than 90 degrees.
Sets/gets the number of points surviving the decimation. Using the setter enables the decimation if it wasn't already. if numberOfPointsAfterDecimation is bigger than the point cloud size, no decimation occurs.
Sets one point that the plane will be constrained to contain.
Set seed to a custom value, by default, the random seed used is randomly determined.
Sets two points that the plane will be constrained to contain.
Unsets the normal vector definition.
Unsets the 1 or 2 points that the plane is constrained to contain.
Reset seed to its default state of being randomly initialized.

EPlaneFinder Class

A EPlaneFinder object is used to search an E3DPlane in an EPointCloud.
The algorithm searches the largest plane in terms of number of "inliers". A point is an "inlier" when its distance to the plane is smaller than a specified threshold (parameter "maximum distance").
Another parameter specifies the expected ratio of inliers over the total number of points in the point cloud (by default, this is set to 0.3).
For more control, you can also set the expected ratio of inliers as a range, when a single number is given the behavior is equivalent to a range (number/2, number).
The method Find throws an error if it cannot achieve a proportion of inliers better than the min of the range. It stops as soon as the max of the range is achieved.
Reducing the size of the range increases speed.
A decimation is applied by default to accelerate the search.
Furthermore, the expected normal to the plane and/or up to two points contained in the plane may be specified.
The method EPlaneFinder::Find processes an EPointCloud object and returns an E3DPlane object when a sufficiently good plane is found in the input point cloud.
The returned plane is the result of fitting an EPlaneFitter on the inliers.

Namespace: Euresys.Open_eVision.Easy3D

Properties

Sets/gets the expected ratio of inliers in the EPointCloud.
Sets/gets the expected ratio of inliers in the EPointCloud.
Sets/gets the maximum distance of an inlier to the plane.
Returns the angle tolerance around the expected normal (that has been set by EPlaneFinder::SetNormal)
Sets/gets the number of points surviving the decimation. Using the setter enables the decimation if it wasn't already. if numberOfPointsAfterDecimation is bigger than the point cloud size, no decimation occurs.
Returns the number of points set (this will be either 0, 1 or 2).
Sets one point that the plane will be constrained to contain.
Set seed to a custom value, by default, the random seed used is randomly determined.

Methods

Disables the default decimation.
The decimation should be disabled when the input point cloud is already decimated.
Enables the default decimation which reduces the input point cloud by drawing points randomly.
This decimation is enabled by default. The decimation accelerates the search.
Creates an EPlaneFinder object.
Searches the biggest plane in the supplied EPointCloud. If a sufficiently good plane is found, a E3DPlane object is returned.
Otherwise an exception is thrown.
Returns the expected normal direction (that has been set by EPlaneFinder::SetNormal)
Returns an E3DPoint the plane is constrained to contain (that has been set by EPlaneFinder or EPlaneFinder::SetTwoPoints)
Returns true if the default decimator is enabled (enabled by default).
Returns true if the expected normal direction has been set (not set by default).
Returns true if the seed was set to a custom value.
Loads the plane finder configuration. The given ESerializer must have been created for reading.
Assignment operator.
Saves the plane finder configuration. The given ESerializer must have been created for writing.
Sets the expected normal direction and the tolerance around it. These values are used to limit the scope of the plane search.
If the angular tolerance is not specified, a default value of 5 degrees is assumed.
If the tolerance is specified, the value should be strictly positive and correspond to less than 90 degrees.
Sets two points that the plane will be constrained to contain.
Unsets the normal vector definition.
Unsets the 1 or 2 points that the plane is constrained to contain.
Reset seed to its default state of being randomly initialized.