3D Point Cloud Registration for Localization using a Deep Neural Network Auto-Encoder阅读笔记

      • LORAX(LOcalization by Registration using a deep Auto-encoder reduced Cover Set)
        • 1. Random Sphere Cover Set (RSCS)
        • 2. Selection of a Normalized Local Coordinate System for each Super-point
        • 3. Depth Map Projection
        • 4. Saliency Detection and Filtration
        • 5. Deep Auto-Encoder Dimension Reduction
        • 6. Selecting Candidates for Matching
        • 7. Coarse Registration by Localized Search
        • 8. Iterative Closest Point Fine-tuning

  这是一篇采用机器学习的点云配准的论文,简单来说就是通过将点云用一个个球体分成很多个小快,对每一块投影成深度图,然后采用深度神经网络对深度图进行特征压缩,最后压缩成一个5 × × 2的矩阵做为一个特征,也就是我们所说的描述子(descriptor)。通过这些描述子的位置关系可以进行粗配准,最后文章也还是采用了ICP进行精配准。原文链接:3D Point Cloud Registration for Localization Using a Deep Neural Network Auto-Encoder。


LORAX(LOcalization by Registration using a deep Auto-encoder reduced Cover Set)

  文中提出了一个超点(Super-Points,SP)的概念,其实就是由部分点云构成的一个大的集合,构成方法会在下文中提出。文中首先定义了一个全局场景是有大型的户外场景融合构成,然后定义了本地场景是在全局场景的一个随机位置随机角度采集的。文章的总体思路为以下几步:
  

1. Random Sphere Cover Set (RSCS)

  使用超点来定义整个处理流程的基本单元。为了能够覆盖点云的绝大部分,文中采用了以下的迭代步骤来定义这些超点:
  

  • 随机选择一个不属于任何 SP S P 的点 P P
  • 使用点 P P 做为中心,以 Rsphere R s p h e r e 为半径,所有位于这么一个圆内的点都被定义为这个新的 SP S P 所包含的点

Rsphere R s p h e r e 的计算公式如下:

Rsphere(34π0.642mVloval)13 R s p h e r e ≈ ( 3 4 ⋅ π ⋅ 0.64 2 m ⋅ V l o v a l ) 1 3

  其中, 0.64 0.64 的意思时在这种随机的球面分块中,不重复的球面将占到整个物体的 64% 64 % Vloval V l o v a l 为包含这个待处理点云的球面的体积。 m m 是指最后阶段用于匹配的特征的个数,由于后面会有算法剔除掉一些特征,所以这里取 2m 2 m 以保证最后可以用来选择的特征的个数。

2. Selection of a Normalized Local Coordinate System for each Super-point

  这一步是为每个 SP S P 建立一个归一化的本地坐标系,目的是为了下一步压缩成深度图做准备。坐标的原点即为 SP S P 的质心(centriod),三个轴的方向是通过对这个 SP S P 的协方差矩阵(covariance matrix)进行SVD(Singular Value Decomposition)分解得到。Z轴被设定为第三个特征向量。通过把SP分为离散的弧度片并统计为极线直方图(polar ),x轴为值最高的方向。

3. Depth Map Projection

  在每个点被转化为本地坐标系后就可以直接经行比较,但是由于点的密度的不同以及随机噪声,比较的结果会十分不可靠。因此需要对其经行降维处理。所有的点的 x,y x , y 轴被投影在一个 dim1×dim1 d i m 1 × d i m 1 的图片网格上,而他们的高度则通过求平均映射成深度图。最后把这个图片剪裁成 dim2×dim2 d i m 2 × d i m 2 (文中取 dim1=64 d i m 1 = 64 dim2=32 d i m 2 = 32 )以消去SP的圆形边界,如下图中红色虚线框所示:
  

3D Point Cloud Registration for Localization using a Deep Neural Network Auto-Encoder阅读笔记_第1张图片

4. Saliency Detection and Filtration

  为了提高配准的速度和质量,文中通过密度(density),几何性质(geometric properties),显著性水平(saliency levels)这三个方面来减少不相关的SPs。
  

  • Density Test:如果一个SP包含的点少于 Nd N d 将会被删去,如果他与他的K近邻个SP的包含的点明显要少的话也会被删去
  • Geometric Quality Test:所有的SP的Z轴都会被记录下来,那些Z轴值较低的SP,也就是说比较平的平面,会被删去
  • Saliency Test:将全局点云的SP的深度图转换为 d2im2 d i m 2 2 长的列向量,并对其进行PCA分析,并利用前三个特征向量对其进行重建,拥有相同的几何信息的SP将会被删去。这样避免了分布在不同区域但是有着类似的SP的匹配的可能性

5. Deep Auto-Encoder Dimension Reduction

  为了压缩特征,才用了一个拥有4个全连接的隐藏层,每一层和输入的dropout之间采用sigmoid非线性激励函数。其网络结构如下:
  

3D Point Cloud Registration for Localization using a Deep Neural Network Auto-Encoder阅读笔记_第2张图片

  
  更多的神经网络部分可以参考原文,最终每个SP被压缩成如下图中间层Compact Representation所示的 5×2 5 × 2 的这么一个矩阵,称为SAF(The SP auto-encoder based Feature)将被用于配准。
  
3D Point Cloud Registration for Localization using a Deep Neural Network Auto-Encoder阅读笔记_第3张图片

6. Selecting Candidates for Matching

  通过检测SAF之间的欧式距离,来自本地的每个SP都与来自全局的K领域个SP建立配对关系,若从 i+1 i + 1 开始距离显著增大,则 i+1 i + 1 K K 的候选都将被删去。

  为了解决6自由度的问题我们至少需要3个匹配对,文中为了提高鲁棒性使得 m=3 m = 3 。采用了RANSAC最终得到5个最佳的变换矩阵。

8. Iterative Closest Point Fine-tuning

  最后分别采用这5个矩阵使用ICP,选取最后结果最好的那个做为LORAX的输出。

你可能感兴趣的:(3D Point Cloud Registration for Localization using a Deep Neural Network Auto-Encoder阅读笔记)