作者:袁野Date:2020-03-24来源:物体的三维识别与6D位姿估计:PPF系列论文介绍(二)——PPF-MEAM
文章“Point Pair Feature-Based Pose Estimation with Multiple Edge Appearance Models (PPF-MEAM) for Robotic Bin Picking”2018年发表在《Sensors》,是近年来ppf方法的一个代表性的继承与发展。一、算法主要框架
算法分为线下训练阶段和线上匹配阶段。如下图
线下阶段的目的是构建一个模型描述的哈希表,用于线上匹配阶段。首先借助CAD模型生成点云;然后提取N个视角的点云;对于每个视角的点云,提取点云的boundary points(下文称之为边缘点);对于边缘点,拟合切线,切线方向作为当前点的方向向量;计算四维特征,存储再哈希表中。
线上阶段的主要目的是识别场景中的目标实例,并计算位姿,使得机械臂的抓取成为可能。首先借助彩色相机和深度相机对场景进行拍摄,对二维图像进行边缘纹理提取,根据彩色相机和深度相机事先标定好的参数,将二维图像的纹理映射到三维空间,得到场景的边缘点;拟合切线,切线方向作为当前点的方向向量,计算四维特征,完成场景点对特征提取,并根据得到的特征查找哈希表,匹配场景点对和模型点对,借助霍夫投票来实现位姿估计;接着对所有候选位姿进行聚类,得到一系列候选位姿;最后借助ICP算法,对位姿进行优化。
二、边缘点切线方向的估计与四维特征的构建
针对点对构建四维特征,不仅需要点对的三维信息,还需要点对方向的三维信息。文章提出一个边缘点切线方向的估计的估计算法。
首先将场景点云划分成许多ROI区域。算法解释:首先将场景点云映射到XOY平面内,得到二维图,二维图每个像素的值为对应三维点的Index(因为文章使用的是organized point cloud,所以每个点都有Index);然后设计一个长方形模板Mrec,去遍历二维图片,将二维图片划分成许多子图;最后将各个子图映射回三维点云,便得到一系列子点云。具体算法如下:
然后在每个ROI点云区域中,求各个点的切线方向。算法解释:,对于每一个子点云i,遍历其中的每一个点j,由当前点Pj与其他点Pk连接成线,计算到这条线距离小于一定阈值的周围点的数量。该数量作为点Pk的得分;那么一定能找到一个得分最高的点Pk‘;将Pk’与Pj的连线斜率当作是点Pj的方向信息。具体算法如下:
这样便构建了点对之间的四维特征:三个角度一个长度。如图:
三、线下模型建立- Model Description with MEAM
所谓MEAM,是指:multiple edge appearance model。文章从六个角度提取CAD模型的appearance,并借助PCL库提取边缘得到edge,如下图。然后基于上一节的内容,提取所有模型的点对特征,并存储在哈希表中。
四、线上匹配
这部分主要就是传统的ppf方法。在场景点云中选择一定比例的点作为参考点,计算参考点与所有场景点构成的点对的四维特征,然后去查找线下建模得到的哈希表。与场景点对特征近似的模型点对特征就被提取出来。
建立临时坐标系,将互相匹配的场景点对(s)和模型点对(m),变换到同一个坐标系下面,如图
由图有公式:
那么场景点Si和模型对应点Mi的坐标变换关系就得出,即得出位姿。
对于一个场景参考点,匹配场景中其余的所有点,然后根据特征搜索哈希表,理论上讲每一个匹配都能对应出一个位姿。由于遮挡、特征重复等因素,并不是所有的位姿都是正确的。需要对位姿进行投票,票数较高的位姿更有可能成为候选位姿。Ppf原文中构建了二维投票表,对上述公式的α,mi进行投票,如下图,票数最高的α,mi决定的位姿,视作当前场景参考点得出的可靠位姿。
五、位姿优化
在上一节中,一个场景参考点能够算出一个可靠位姿,n个场景参考点有n个可能位姿,这些位姿是不尽相同的,甚至差异很大。需要对这些候选位姿进行聚类,同一个类中位姿的t向量差异和R矩阵的差异小于特定阈值。当前类的分数定义为:类中各个位姿在上节投票中获得的票数的总和。最终取分数较高的几个类中位姿的平均,作为最终候选位姿。
对最终候选位姿进行ICP优化,得到最终位姿。
六、实验效果
文章在模拟场景和实际场景分别比较了PPF与PPF-MEAM,无论是精度还是速度上,都有较大的提升。
模拟场景实验效果如下图:
真实场景实验效果:
参考文献
[1] Diyi L , Shogo A , Jiaqi M , et al. Point Pair Feature-Based Pose Estimation with Multiple Edge Appearance Models (PPF-MEAM) for Robotic Bin Picking[J]. Sensors, 2018, 18(8):2719-.
[2] Bertram Drost, Markus Ulrich, Nassir Navab,等. Model globally, match locally: Efficient and robust 3D object recognition[C]// 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. IEEE, 2010.