Skip to main content
. 2021 Jan 19;21(2):664. doi: 10.3390/s21020664
Algorithm 1: Point-cloud-noise removal
Input: Raw data of point cloud {pin}
Output: Object point cloud {pfilterout} without noise.
(1) Establishing the spatial topological relationship of the source data using the k-d tree.
(2) Obtaining the maximum and minimum values of the three coordinate axes in the point cloud and searching six boundary points with xmin, ymin, zmin, xmax, ymax and zmax respectively. A radius-density-based outlier filter is used on these six points. If they are outliers, then delete and repeat this step. Otherwise, proceed to the next step.
(3) Building up the MOBB, rotating it with Euler’s formula and removing BN points using a pass-through filter.
(4) Removing ON points using the radius-density-based outlier filter for all points.
(5) For each point of data, computing the normal vector n of the selected point p by principal component analysis (PCA). Computing the components of the normal vector n and the view vector nv projection on the xoz plane of the camera coordinate space separately, and then obtaining angle θ through the cosine theorem.
(6) Comparing θ and θangle and removing FPN points.
(7) Performing Operations 4 through 7 on all points and outputting point {pfilterout}.