物体的三维识别与6D位姿估计:PPF系列论文介绍(二)——PPF-MEAM

作者:袁野

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.

原文地址:https://www.cnblogs.com/YongQiVisionIMAX/p/12627915.html

时间: 2024-10-05 23:51:40

物体的三维识别与6D位姿估计:PPF系列论文介绍(二)——PPF-MEAM的相关文章

物体的三维识别与6D位姿估计:PPF系列论文介绍(一)

作者:袁野 Date:2020-03-27 来源:物体的三维识别与6D位姿估计:PPF系列论文介绍(一) 一.前言 近年来随着消费级深度设备的普及,深度相机引导机械臂完成抓取成为热点话题.其中,物体识别与位姿估计是械臂完成抓取的关键.关于物体识别与位姿估计可以分为传统手工提取特征方法和基于深度学习的方法.下面主要介绍传统经典方法——基于点对特征的(PPF)系列方法. 2019年ICCV在韩国举行的"6D Object Pose Estimation Challenge" 中,基于PPF

物体的三维识别与6D位姿估计:PPF系列论文介绍(四)

作者:仲夏夜之星 Date:2020-04-14 来源:物体的三维识别与6D位姿估计:PPF系列论文介绍(四) 文章“3D Pose Estimation of Daily ObjectsUsing an RGB-D Camera”2012发表在IEEE/RSJInternational Conference on Intelligent Robots and Systems上,这篇文章对原始点对特征(PPF)作了一个很大的改进. 本文创新点 本文提出了一种利用深度和颜色信息的物体姿态估计算法.

相机位姿估计1_1:OpenCV:solvePnP二次封装与性能测试

关键词:OpenCV::solvePnP 文章类型:方法封装.测试 @Author:VShawn([email protected]) @Date:2016-11-27 @Lab: [email protected] 前言 今天给大家带来的是一篇关于程序功能.性能测试的文章,读过<相机位姿估计1:根据四个特征点估计相机姿态>一文的同学应该会发现,直接使用OpenCV的solvePnP来估计相机位姿,在程序调用上相当麻烦,从一开始的参数设定到最后将计算出的矩阵转化为相机的位姿参数,需要花费近两百

3D目标检测&amp;6D姿态估计之SSD-6D算法--by leona

最近的研究主要以6D检测为主,本篇介绍基于2D检测器SSD的3D检测器SSD-6D. 1)论文链接:https://arxiv.org/pdf/1711.10006.pdf   训练部分代码链接:https://github.com/wadimkehl/ssd-6d 2)介绍: 许多3D检测器都是基于视角的(view based),生成一系列离散的目标视角用于后续视频序列的特征计算.在测试过程中,从不同的离散视角对场景进行采样,然后计算特征,并与目标数据库匹配来建立训练视角和场景位置的对应.此处

相机位姿估计3:根据两幅图像的位姿估计结果求某点的世界坐标

关键词:相机位姿估计,单目尺寸测量,环境探知 用途:基于相机的环境测量,SLAM,单目尺寸测量 文章类型:原理说明.Demo展示 @Author:VShawn @Date:2016-11-28 @Lab: [email protected] 目录 <相机位姿估计0:基本原理之如何解PNP问题> <相机位姿估计1:根据四个特征点估计相机姿态> <相机位姿估计1_1:OpenCV:solvePnP二次封装与性能测试> <相机位姿估计2:[应用]实时位姿估计与三维重建相

相机位姿估计2:[应用]实时位姿估计与三维重建相机姿态

关键词:相机位姿估计 OpenCV::solvePnP labview三维图片 文章类型:应用展示+Demo演示 @Author:VShawn([email protected]) @Date:2016-12-12 @Lab: [email protected] 前言 本文将展示一个实时相机位姿估计的例程,其中的原理在前文中已经说过了,再利用<相机位姿估计1_1:OpenCV.solvePnP二次封装与性能测试>中构建的类,使得程序处理更加简单.本例程利用HSV空间,跟踪红色的特征点,将跟踪到

物体三维识别论文介绍——基于霍夫投票

作者:袁野 Date:2020-04-02 来源:物体三维识别论文介绍——基于霍夫投票 文章“Objectrecognition in 3D scenes with occlusions and clutter by Hough voting”发表在2010年,提出了一个经典的将霍夫投票思想用于三维场景目标识别的方法,在杂乱场景和有遮挡情况下取得了不错的效果.这一思想在近年的文章中被多次引用,一些深度学习的方法也有该投票思想的影子.该方法已在PCL库中有简易实现.一.算法框架算法借助点云三位特征

[转]三维数字地球发布平台探索--几款开源软件介绍

先写想法: 想做个简单的地形漫游,于是考虑在ww直接开发,或找个控件形式的开发组件. 最大的期望有: 1. 支持google的sketchup,快速智能三维建模 2. 设计模式做好点,最好先做成组件形式,然后开发应用程序 3. 性能再好点,对于索引技术,内存管理等等 4. 客户端独立版本 和客户服务器端耦合版本的优化 5. 放点服务器的资料. .net平台 1.WorldWind      知名度很高,介绍也很全.链接在这里NASAWorld Wind     目前分为.net版本和java版本

6D姿态估计从0单排——看论文的小鸡篇——Model Based Training, Detection and Pose Estimation of Texture-Less 3D Objects in Heavily Cluttered Scenes

这是linemod的第二篇,这一篇把训练从online learning 变成了 使用3D model, 并且对于检测结果用 3种方法: color.Pose.Depth来确保不会有false positive.感觉有种不忘初心的感觉(笑 基于linemod,是前一篇的改良 initial version of LINEMOD has some disadvantages. First, templates are learnede online, which is difficule to c