点击上方“小白学视觉”,选择“星标”公众号
重磅干货,第一时间送达
编辑:3D视觉工坊
本文由知乎作者GeometryHub授权转载,不得擅自二次转载。
原文链接:https://zhuanlan.zhihu.com/p/86044055
点云采样分类
点云采样的方法有很多种,常见的有均匀采样,几何采样,随机采样,格点采样等。下面介绍一些常见的采样方法。
格点采样
格点采样,就是把三维空间用格点离散化,然后在每个格点里采样一个点。具体方法如下:
1. 创建格点:如中间图所示,计算点云的包围盒,然后把包围盒离散成小格子。格子的长宽高可以用户设定,也可以通过设定包围盒三个方向的格点数来求得。
2. 每个小格子包含了若干个点,取离格子中心点最近的点为采样点,如右图所示。
格点采样的特点:
效率非常高
采样点分布比较均匀,但是均匀性没有均价采样高
可以通过格点的尺寸控制点间距
不能精确控制采样点个数
均匀采样
均匀采样的方法有很多,并且有一定的方法来评估采样的均匀性。这里介绍一种简单的均匀采样方法,最远点采样。具体方法如下:
输入点云记为C,采样点集记为S,S初始化为空集。
1. 随机采样一个种子点Seed,放入S。如图1所示。
2. 每次采样一个点,放入S。采样的方法是,在集合C-S里,找一点距离集合S距离最远的点。其中点到集合的距离为,这点到集合里所有点距最小的距离。如图2-6所示,采样点S的数量分别为2,4,10,20,100.
最远点采样的特点:
采样点分布均匀
算法时间复杂度有些高,因为每次采样一个点,都要计算集合到集合之间的距离。可以采用分治的方法来提高效率。
采样点一般先分布在边界附近,这个性质在有些地方是有用的,比如图元检测里面的点采样。
几何采样
几何采样,在点云曲率越大的地方,采样点个数越多。下面介绍一种简单的几何采样方法,具体方法如下:
输入是一个点云,目标采样数S,采样均匀性U
1.点云曲率计算比较耗时,这里我们采用了一个简单方法,来近似达到曲率的效果:给每个点计算K邻域,然后计算点到邻域点的法线夹角值。曲率越大的地方,这个夹角值就越大。
2.设置一个角度阈值,比如5度。点的邻域夹角值大于这个阈值的点,被放入几何特征区域G。这样点云就分成了两部分,几何特征区域G和其它区域。
3.均匀采样几何特征区域G和其它区域,采样数分别为S * (1 - U),S * U。
下图是一个均匀采样和几何采样的比较图,这个采样方法的特点:
几何特征越明显的区域,采样点个数分布越多
计算效率高
采样点局部分布是均匀的
稳定性高:通过几何特征区域的划分,使得采样结果抗噪性更强