1. 简介
ICCV 2021
论文:https://openaccess.thecvf.com/content/ICCV2021/papers/Hui_Pyramid_Point_Cloud_Transformer_for_Large-Scale_Place_Recognition_ICCV_2021_paper.pdf
代码: https://github.com/fpthink/PPT-Net
之前介绍的TransLoc3D与这篇文章思想类似。
2. 动机
本质上就是使用了金字塔层级架构。然后分别用点Transformer提取特征,VLAD编码特征。
其中学习不同区域之间的关联性: 金字塔 点transformer模块 + 图嵌入
本质上也是得益于金字塔架构的性能提升。
3. 方法
整体框架:
整体网络架构包括二个部分:
- 金字塔点Transformer,其本质上就是提取不同分辨率下的特征,构成金字塔
- 金字塔VLAD,本质就是把1中不同分辨率的特征分别VLAD,然后拼接起来作为最终的全局描述子;
在第二个部分当中,拼接的部分使用到了门限机制来生成最终的全局描述子。
图嵌入模块:
作用:为每个点构建几何上的局部领域表达。
输入:每个点及其KNN临近点
输出:每个点的局部嵌入表达
具体操作:
- 每个点云,使用FPS采样N个点,为其构成KNN图。
- 1的KNN图 输入给 图卷积 来构建每个采样点的局部嵌入。
这里采样没有使用PointNet++里的Query ball的模式,原因:这样可以捕获点云不同密度区域的特征。
图卷积部分包括两部分:
-
局部特征:使用EdgeConv[50]来描述 每个点的局部邻居 的 局部几何结构。
公式说明:
第 i i i个点的坐标 p i ∈ R 3 p_i \in\mathbb{R}^3 pi∈R3
第 i i i个点的特征 x i ∈ R C x_i\in \mathbb{R}^C xi∈RC
j j j反应了第 i i i个点的第 j j j个邻居。
局部残差捕获:坐标残差: △ p j i = p j − p i \triangle \mathbf{p}_{ji}=\mathbf{p}_j-\mathbf{p}_i