View full-text article in PMC Sensors (Basel). 2018 Nov 8;18(11):3825. doi: 10.3390/s18113825 Search in PMC Search in PubMed View in NLM Catalog Add to search Copyright and License information © 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/). PMC Copyright notice Algorithm 1: The V-RBNN-based target detection. 1: // Background subtraction 2: PointXYZ::cloud_Base=Background_pointXYZ 3: PointXYZ::cloud_Cur=Current_pointXYZ 4: cloud_Octree←OctreeChangeDetector(PointXYZ) 5: // V-RBNN 6: calRanget←TargetRangeCal(history_que_cenBB_xyz[i]) 7: λ=7.0,bias=0.01 (//tunable constant parameters) 8: radius=λ/(hscan×vscan)×tan(FOV×(π/180))×calRanget+bias 9: cloud_cluster←SetRBNNRadius(cloud_Octree,radius) 10: // Outlier and occlusion removal 11: Outlier_remove←setMinNeighborsInRadius(cloud_cluster,nMin) 12: if ( diagBB>1 ) 13: Occlusion_remove=Outlier_remove−maxDiagBB 14: else 15: cloud_cluster_target=Outlier_remove 16: // Sequential position estimation 17: if ( calRanget<1||(calRanget−calRanget−1)>1000 ) 18: Final_target_BB←estimateBB(history_que_cenBB_xyz[i]) 19: else 20: Final_target_BB←drawBB(cloud_cluster_target)