PCLIntensityRankFilter¶
- MLModule¶
genre
author
package
dll
definition
see also
Rank,PCLMemberCopy,PCLCopy,PCLPassThrough,PCLIndexFilter,cvBilateralFilter,PCLRadiusOutlierRemoval,PCLStatisticalOutlierRemoval,PCLBilateralFilterinherits from
keywords
points,clouds,PCL,smooth,blur,median,minimum,maximum,rank,quantile
Purpose¶
Performs a rank filtering on intensity replacements of neighbours for each points. For each point of the input point cloud the neighbours in the given Radius are searched. From all of these neighbours the intensity replacements are taken, sorted numerically upwards, and at Rank As Percentage position in the sorted list the output value is taken.
Since there is no fixed number of neighbours around any point the quantile on the sorted neighbour values cannot be given as a specific position, but only as a relative one; therefore Rank As Percentage is from [0,1]. See Rank As Percentage for details about exact mapping of values to quantiles. If less than one neighbour is found, the input value is passed through and the processed point is left unchanged.
The Rank As Percentage is also useful to perform gray value dilations/erosions which also equal to minimum/maximum operations when Rank As Percentage is 0 or 1.
The modified members (named also “intensity replacements”) of the points are:
intensity on pcl::XYZINormal points
curvature on pcl::XYZLNormal points
curvature on pcl::XYZRGBNormal points
none on pcl::PointXYZ points
Note that no spatial position of any point is changed, only the intensity replacements of the points are modified.
Windows¶
Default Panel¶
Input Fields¶
inputPCLObject0¶
- name: inputPCLObject0, type: MLBase¶
Connect a point cloud with points having a member usable as intensity which shall be filtered by the module. Point clouds without such a member in the points are supported, however, filtering has no effect.
Output Fields¶
outputPCLObject0¶
- name: outputPCLObject0, type: MLBase¶
Provides the filter result of the input pcl::PointCloud, if there is any, otherwise it will contain NULL output data. Corresponding indices produced by the filter are also provided in the output base object (currently only the default ones).
Parameter Fields¶
Visible Fields¶
Status¶
- name: status, type: String, persistent: no¶
see PCLModule.status
Radius¶
- name: radius, type: Double, default: 2¶
The radius of the sphere around each point in which neighbours points are searched.
Rank As Percentage¶
- name: rankAsPercentage, type: Double, default: 2¶
The percentage from [0,1] at which the ranked value shall be taken from (such as 0.5 = median-, 0.0 = minimum-, 1.0 = maximum-filtering).
Rank As Percentagevalues are always clamped against [0,1]. As an example: if four neighbour points with value (3, 7, 11, 19) are found in a distance of smaller or equalRadius, thenRank As Percentageranges [0,0.25[ are mapped to 3, [0.25,0.5[ to 7, [0.5, 0.75[ to 11, and [0.75,1] to 19.