咦?
这里为什么要记录rusu博士论文的内容?
PCL处理点云方便吧?
事实上,PCL也只不过是rusu在博士课题研究期间的附属产物而已,他把一些通用的代码开源出来以方便大家复用。所以嘛~ 研究一下rusu大牛博士期间做了什么也是挺有意思的。
下面废话不多说,简要记录一下他的博士论文框架,有理解不对的地方可以共同交流,有兴趣的同学可以直接去大Google搜文章仔细研读哈!
一. 绪论
- 之所以采用3维点云的方式是因为
A. 2d视觉的相机很容易受外界光的影响,曝光不足或光强变化剧烈等等
B. 2d视觉是世界到相机的投影变换,视野受限,在特征点匹配中容易把相似的不同物体误匹配。
- 在计算过程中的问题
A. 将输入点云转换成有意义的各个物体
B. 点云噪声影响很大,如何克服
- 本文介绍了三个部分
A. 第一个部分介绍了点云的集中特性表达,包括点的法向量,最近邻,特征直方图,快速特征直方图;
B. 第二个部分利用机器学习的方法来对点云进行模型分类;
C. 第三个部分是三个实验,第一个是将桌子上面的物体分类病抓取,第二个实验是实时鉴别门和门把手,第三个实验是实时slam。
二. 系统结构
- 点云输入
- 寻找最近邻
滤波—— 剔除外点
- 根据最近邻剔除最近邻距离大于整体均值标准差的点
- 或者根据同时拍摄的两幅图像找对应位置的点,看点间的距离是否大于阈值
下采样
- 法向量估计——PCA分析:协方差矩阵最小特征向量
- 曲率估计——协方差矩阵的特征值之比
- 特征直方图PFH
选取大于邻域范围的半径 建立范围内任意两点的局部坐标系和计算四元数 将所有的值投票简历直方图
- 快速特征直方图FPFH
与PFH不同的是计算点的邻域的PFH加权,而不是邻域内的任意两点
多视图配准
A. 初始配准- 选择各自距离大于阈值的点,在目标图像中找FPFH近似的一组候选点
- 对C中的点求若干最优的匹配点对,打到寻找初始匹配点
- 利用这些点求得旋转和平移初始的矩阵
- 调用ICP
B. ICP配准:容易陷入局部收敛,迭代次数过多
下采样
A. 均匀密度:格子取点
B. 弥补空洞:判断邻域内与某点的夹角序列,判断序列相邻值之差是否大于阈值
C. 聚类- 根据平面距离划分大区域
D. 寻找边界
- 通过点到直线距离拟合平面,根据曲率或者邻域夹角序列差判断边界
E. 分割
- 在聚类的基础上根据曲率和夹角变化进行更细致分割
F. 边界替代
- 在边界中随机取两点建立直线,判断和世界z轴平行垂直,最终用四点代替边界
模型分类
1) 启发式先验知识(第七章)
判断物体平面 判断物体把手的位置 根据位置关系判断物体类别
2) 机器学习训练
A. 双层结构——确定家具和背景(第七章)- 剔除水平面和垂直面地面和墙等 余下的点云分割——CRF学习方法
- 家具的分类 ——CRF学习
- 是为了在区域生长之后得到的物体数据来进行分类门、柜子、桌子等
B. 学习桌面物体的表面(第八章)
- R1 法向量估计的参数
- R2 PFH的计算参数—— 参数的选择 PFH来辨别物体不受物体大小影响?
最优辨识力的特征选取——计算几何位置的平均PFH,计算所有点到mean的距离,根据距离形成的分布确定初始聚类中心,聚类确定最优特征点是对每一个点进行训练和测试,得到每个点的几何位置改进的方案:将SVM转换成CRF条件概率图算法和FPFH直方图
C. 最终的GFPFH训练分类确定各个物体
- 修改FPFH权值,带有几何位置信息的点可以重建三角面片,确定抓取位置
- 利用每个类内的带有几何位置的点,训练SVM 分类成各个物体
- 利用八叉树数据结构得到全局的直方图来训练SVM 分类成各个物体
D. 物体参数拟合和面片重建(第九章)
RANSAC拟合各个类别,识别形状,形状参数拟合后,它的周围的小的聚类可以看作是把手,最后进行三围重建。最终物体的几何形状由参数形状构建,细小的把手等由外电进行三角面片重建。
Q:
为什么要机器学习两种标签?
同一类物体也有很多种 ,需要有具体的点云所在几何位置的属性才能更好的重建。
8.1写的几何位置的学习,利用了PFH,8.2更改了算法,8.3写的物体整体分类的学习,用的GFPFH。
三. 实验二 (自动开门任务)
检测门和门把
A. 检测门——利用先验知识限定门高宽,边界方向和平面法相
B. 检测门把——在门的点云中分离- 分离距离门的平面大于阈值的点
- 根据直方图分离与平面上的点相差较大的点
C. 将上述两种点合并进行重建 抓取
(转载请注明作者和出处: http://blog.csdn.net/gh234505 未经允许请勿用于商业用途)