PointDSC: Robust Point Cloud Registration using Deep Spatial Consistency (PointDSC) 论文学习笔记小结
PointDSC工作基于利用空间一致性的Outlier Removal, 是对Spectral Match(SM)算法的改进与拓展。SM算法通过长度一致性构建对应关系间的相容图。随后使用特征分析来进行聚类,区分离群点和内点。其缺陷主要在于:长度一致性在很多场景下的辨别能力不够强(遂通过深度学习的特征进行取代)。离群点较多时可能出现反客为主的情况,inliers不能取得主宰的地位,特征分析会失效。
PointDSC主要由三个模块构成,一个是空间一致性特征引导的非局部几何特征提取模块SCNonlocal Module;可微分的谱匹配模块;最后是用于解决低重叠率情况的种子机制,类似RANSAC,选取多个置信度高的种子与其领域作为子集,求解R,t。选择全部点云下目标函数值最小的R与t。
SCNonlocal Module
SCNonlocal的架构如下:
其更新机制可以用该等式来描述:
fi=fi+MLP(∑j∣C∣softmaxj(αβ)g(fj))\boldsymbol{f}_{\boldsymbol{i}}=\boldsymbol{f}_{\boldsymbol{i}}+\mathrm{MLP}\left(\sum_{j}^{|C|} \operatorname{softmax}_{j}(\boldsymbol{\alpha} \boldsymbol{\beta}) g\left(\boldsymbol{f}_{j}\right)\right) fi=fi+MLP⎝⎛j∑∣C∣softmaxj(αβ)g(fj)⎠⎞
其中α\alphaα是非局部性系数,由提取特征的点乘相似度(nonlocal)计算而得,而β\betaβ是空间一致性系数,由如下等式计算而得:
βij=[1−dij2σd2]+,dij=∣∥xi−xj∥−∥yi−yj∥∣\beta_{i j}=\left[1-\frac{d_{i j}^{2}}{\sigma_{d}^{2}}\right]_{+}, d_{i j}=\left|\left\|\boldsymbol{x}_{\boldsymbol{i}}-\boldsymbol{x}_{\boldsymbol{j}}\right\|-\left\|\boldsymbol{y}_{i}-\boldsymbol{y}_{j}\right\|\right| βij=[1−σd2dij2]+,dij=∣∣∥xi−xj∥−∥∥yi−yj∥∥∣∣
[⋅]+[\cdot]_{+}[⋅]+是max(⋅,0)max(\cdot , 0)max(⋅,0)操作。σd\sigma_dσd是距离参数,用于控制参数对距离变化的敏感度。
这个度量一致性的表述方式值得学习。
通过SCNonlocal 模块,为输入的每一个点对对应关系cic_ici生成一个特征表示fif_ifi,用于后续的seed selection以及 spectral matching.
Seed Selection
由于先前提到的问题,在离群点较多的时候,inliers可能并不能占据主导地位,导致聚类失败。所以作者提出了Seed Selection策略。
Seed Selection 通过将SCNonlocal提取出的特征表述fif_ifi送入MLP,生成每个对应关系的初始置信度viv_ivi,然后应用非极大值抑制选择良好分布的,有较高置信度的种子。
Neural Spectral Matching
根据上面的种子,在特征空间进行KNN搜索,构建若干个子集。
在特征空间搜索看似不起眼,但是确实容易成为盲区。在特征空间搜索的话,构成的子集更容易有一致性。
对每一个子集,跟随SM算法的思路,首先构建其相容图。但不同于传统的SM,该工作不单单依赖于长度一致性,同时还结合了几何特征相似度去更好的处理一些特殊的模糊情况。相容性矩阵按如下等式构建:
Mij=βij∗γijγij=[1−1σf2∥fˉi−fˉj∥2]+\begin{array}{c} M_{i j}=\beta_{i j} * \gamma_{i j} \\ \gamma_{i j}=\left[1-\frac{1}{\sigma_{f}^{2}}\left\|\bar{f}_{i}-\bar{f}_{j}\right\|^{2}\right]_{+} \end{array} Mij=βij∗γijγij=[1−σf21∥∥fˉi−fˉj∥∥2]+
f‾i\overline{\boldsymbol{f}}_{i}fi 与f‾j\overline{\boldsymbol{f}}_{j}fj分别是L2-正则化后的特征向量,而σf\sigma_fσf与先前的σd\sigma_dσd类似,但由于是特征空间上的,该参数由网络自己学习。
特征空间的度量参数与长度一致性的距离参数相乘,就相当于构建相容图时结合了两种信息。
随后通过power iteration algorithm进行特征值分析,该过程是可微分的,特征值分析求解得到相容矩阵M\mathbf{M}M的主特征向量e\mathbf{e}e,因为主类是由inliers在统计意义上构成的,所以最大的特征向量的每一个元素都代表着一个对应关系的置信度。随后通过SVD求解:
R′,t′=argminR,t∑i∣C′∣ei∥Rxi+t−yi∥2\mathbf{R}^{\prime}, \mathbf{t}^{\prime}=\arg \min _{\mathbf{R}, \mathbf{t}} \sum_{i}^{\left|C^{\prime}\right|} \boldsymbol{e}_{\boldsymbol{i}}\left\|\mathbf{R} \boldsymbol{x}_{\boldsymbol{i}}+\mathbf{t}-\boldsymbol{y}_{\boldsymbol{i}}\right\|^{2} R′,t′=argR,tmini∑∣C′∣ei∥Rxi+t−yi∥2
在若干的seed及其构成的子集得到的若干R,tR,tR,t中,先通过:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zT410GfN-1618840377489)(68B9B58A5EE942F1B3198D89D7AD8C4B)]
选择最优的R,t,然后通过选择的R,t以及给定的阈值τ\tauτ,为每个对应关系给定outlier/inlier的标签,然后再将所有的inliers取来进行一次SVD求解,求精R,t。获得最后的结果。
Loss设计
Ltotal =Lsm+λLclass L_{\text {total }}=L_{s m}+\lambda L_{\text {class }} Ltotal =Lsm+λLclass
Lclass =BCE(v,w∗)L_{\text {class }}=\operatorname{BCE}\left(\boldsymbol{v}, \boldsymbol{w}^{*}\right) Lclass =BCE(v,w∗)
Lsm=1∣C∣2∑ij(γij−γij∗)2L_{s m}=\frac{1}{|C|^{2}} \sum_{i j}\left(\gamma_{i j}-\gamma_{i j}^{*}\right)^{2} Lsm=∣C∣21ij∑(γij−γij∗)2
w∗w^{*}w∗是真值R,t下的Label。 计算的是v
与真值的交叉熵。
γij\gamma_{i j}γij在两个对应关系都为inliers时取1,其余情况取0,与NSM的结果γ\gammaγ进行比较,计算损失函数。
PointDSC: Robust Point Cloud Registration using Deep Spatial Consistency (PointDSC) 论文学习笔记小结相关推荐
- Dual Graph Attention Networks for Deep Latent Representation of Multifaceted Social...》论文学习笔记
Dual Graph Attention Networks for Deep Latent Representation of Multifaceted Social Effects in Recom ...
- DCP(Deep Closest Point)论文阅读笔记以及详析
DCP论文阅读笔记 前言 本文中图片仓库位于github,所以如果阅读的时候发现图片加载困难.建议挂个梯子. 作者博客:https://codefmeister.github.io/ 转载前请联系作者 ...
- 【李宏毅机器学习】Tips for Deep Learning(p14) 学习笔记
李宏毅机器学习学习笔记汇总 课程链接 文章目录 Recipe if Deep Learning Do not always blame Overfitting 针对不同的状况使用不同的方法 在训练集上 ...
- 【李宏毅机器学习】Why Deep Learning(p15) 学习笔记
李宏毅机器学习学习笔记汇总 课程链接 这集语音部分属实听不明白了qaq 文章目录 Deep is better Fat+Short vs Thin+Tall Modularization 模块化 做d ...
- 【论文学习笔记】《A Review of Deep Learning Based Speech Synthesis》
基于深度学习的语音合成综述论文学习 文章目录 基于深度学习的语音合成综述论文学习 1 简介 2 语音合成概述 2.1 语音合成概念 2.2 语音合成发展历史 2.3 传统语音合成技术 2.3.1 拼接 ...
- Deep Graph Infomax(DGI) 论文阅读笔记
代码及论文github传送门 本文中出现的错误欢迎大家指出,在这里提前感谢w 这篇文章先锤了一下基于random walk的图结构上的非监督学习算法,指出了random walk算法的两个致命缺点. ...
- Robust Point Cloud Registration Framework Based on Deep Graph Matching (RGM) 简略分析
RGM使用DGCNN先抽象提取出局部特征,点云x,yx,yx,y的特征分别对应于FX,FY\mathcal{F}_{\mathbf{X}}, \mathcal{F}_{\mathbf{Y}}FX,F ...
- Robust Document Image Dewarping Method Using Text-Lines and Line Segments论文学习笔记
1 摘要 传统的基于文本行的文档去扭曲方法在处理复杂布局和/或非常少的文本行时会出现问题.当图像中没有对齐的文本行时,这通常意味着照片.图形和/或表格占据了输入的大部分.因此,对于健壮的文档去扭曲变形 ...
- Deep SORT: Simple Online and Realtime Tracking with a Deep Association Metric(论文阅读笔记)(2017CVPR)
论文链接:<Deep SORT: Simple Online and Realtime Tracking with a Deep Association Metric> ABSTRACT ...
最新文章
- C++成员变量指针和成员函数指针【The semantics of funcitons】
- linux命令: tree的c实现
- 安装环境 php5.2 mysql_ubuntu安装配置apache2+php5.2+mysql5环境教程
- ML之MLiR:利用多元线性回归法,从大量数据(csv文件)中提取五个因变量(输入运输任务总里程数、运输次数、三种不同的车型,预测需要花费的小时数)来预测一个自变量
- AI英特尔杯公开课:2019.06.27在线直播《研究生人工智能创新大赛—AI赋能,创新引领》课堂笔记和感悟(一)
- 直播预告 | TCCI追问研讨会第二期:双向脑机接口如何实现?
- fastreport字体自适应_FastReport 自动换行与行高自适应及自动增加空行
- Java,Scala,Guava和Trove集合-它们可以容纳多少数据?
- 几种常见的电话光端机连接图以及电话光端机的连接方式
- 解析Disruptor:写入ring buffer
- PCL中把点云拟合成曲面(附源代码)
- linux下安装xgboost
- 哈理工OJ 1151 追求(斐波那契变形【思维题目】)
- Docker的网络类型及驱动器
- 排序算法图解(一):冒泡排序与冒泡排序的优化
- 手写RPC(五) 核心模块网络协议模块编写 ---- 自定义协议
- lol8月21号服务器维护,8月21日lol维护公告最新 8.21lol维护到几点
- 正则只保留括号里的内容
- mybatis 的加载过程
- UML建模学成在线管理系统