表面法线和曲率可以很好的代表一个点的几何特征,计算较快且算法简单。但是他们不能捕获细节,它们只是点的近邻的几何特征的近似估计。因此,大多数的场景往往会包含很多有相似特征的点。
使用近似法来计算查询点的最近邻元素有两种常用的查询类型:
但是由于采样密度不同,可能会导致邻域的覆盖大小不同。
近邻搜索参数的确定可以当做特征提取的超参数,借鉴机器学习调超参数的方法:在一个取值区间内,每个超参数的具体值计算一次特征,计算得到的特征和类别标签的相关性(卡方检验、互信息等),取相关性最高的超参数值即为近邻尺寸值。
描述子的构建一般分为两个过程:特征编码(Signature)和直方图统计(Histogram),特征编码是关键,直方图是表述特征的分布情况,增强特征的鲁棒性。
局部特征常见的有各种几何特征描述子:PFH FPFH SHOT C-SHOT RSD 3D形状描述子等。
局部坐标系
Z轴的确立方法一般为:
\[M = \frac{1}{k}\sum^{k}_{i=0}(p_{i}-\hat{p})(p_{i}-\hat{p})^{T},\hat{p}=\frac{1}{k}\sum^{k}_{i=0}p_{i}\]
SHOT为其添加了一个距离参数,给邻域内较远的点分配较小的权重,具体如下:
\[M = \frac{1}{\sum_{i:d_{i} \le R}(R-d_{i})}\sum^{k}_{i=0}(R-d_{i})(p_{i}-\hat{p})(p_{i}-\hat{p})^{T}\]
同时,SHOT还使得X轴的方向指向局部表面点分布的高密度方向。Y轴由X轴和Z轴叉乘得到。
直方图特征描述
在得到局部坐标系后,对特征点的邻域分别沿径向(内外球)、经度和维度方向进行区域划分,分别是径向2划分,精度8划分和维度2划分,得到32个小区域。在每个小块内对角度、维度方向、经度方向和半径方向的四线性差值(具体的计算过程较为复杂)。经过计算可以得到每个邻域的特征向量。
SHOT描述还可以针对颜色和纹理信息进行扩展。
以其中任意一点pi为圆心,R为半径的区域内,按照对数距离间隔建立N个同心圆。再将其沿着圆周方向M等分,形成一个靶形模板。点pi到其他各点的向量简化为模板上各个扇区内的点数。这些点的统计分布称为点pi的形状上下文。可以看出轮廓不同点处的形状上下文是不同的。
若是需要对比两个物体的相似性,可以计算两者形状上下文矩阵的代价矩阵。
将2D形状描述子扩展到3D,做法如下:
具体的计算公式为:
\[w(p_{i}) = \frac{1}{p_{i}\sqrt[3]{V(j,k,l)}}\]
其中\(V(j,k,l)\)是箱子的体积,\(p_{i}\)是局部点密度。除以箱子的体积以进行标准化是为了补偿箱子的尺寸带来的变化。
常见的几何域全局特征有:VFH CVFH(在VFH的基础上解决了点云残缺的问题)
参考链接:
3d 激光点云物体分类https://blog.csdn.net/shaozhenghan/article/details/81346585
形状描述子 https://blog.csdn.net/shaozhenghan/article/details/81536008
原文:https://www.cnblogs.com/AnnaJuly/p/12350462.html