---------原理介绍:
(1)首先计算出来各点的曲率值,将曲率值按照从小到大的顺序进行排序。
(2)设置一空的种子点序列和一个空的聚类数组。
(3)选取曲率最小的点放入上述种子点序列中。
(4)从序列中拿出来一个种子点搜索其邻域。
(5)搜索到邻域后,这些点先过法线夹角阈值,通过的保留到聚类数据,然后再从这些通过法线夹角阈值的点中,检查是否通过曲率阈值,通过的加入种子点序列。即比较邻域点的法线与当前种子点法线之间的夹角,如果小于阈值将该邻域点加入聚类数组。再从这些小于法线阈值的点中判断是否小于曲率阈值,如果小于则将该邻域点加入种子序列。
(6)结束后删除用过的种子点,用下一个种子点重复第(4)(5)步,直至种子点序列清空为止。
(7)从曲率排序的点中,即从小到大的排序,取聚类数组中没有的点作为种子点,重复第(2)(3)(4)(5)(6)步骤。
可以理解为,聚类出的同一个平面上的点,曲率小于某一阈值(设置的曲率阈值),才可以当作种子点,继续生长。
曲率阈值和法相量夹角阈值都是需要提前设置的。首先将曲率从小到大排序,选取最小的加入种子序列,这时候种子序列里只有一个点,然后拿出种子序列中的一个点(这时候也就是这个刚放进去的唯一的点),