本文同步于微信公众号:3D视觉前沿,欢迎大家关注。
1 引言
刚体的6D位姿估计,是指估计相机坐标系下物体的6D位姿,即3D位置和3D姿态,此时原始物体本身的坐标系可以看作是世界坐标系,也即得到原始物体所在世界系到相机系的RT变换。刚体是指物体不会弯曲变形(手),也不存在活动关节(胳膊)。刚体的6D位姿估计的意义在于能够获得物体的精确姿态,支撑对于物体的精细操作,主要应用于机器人抓取领域和增强现实领域。在机器人抓取领域,主流的方法是估计已知物体的6D位姿,进而获得抓取器的目标6D抓取位姿。在增强现实领域,可以在物体上叠加虚拟元素,随着物体的移动而保持和物体相对位姿不变。随着SLAM等技术的成熟,机器人已经能够在空间中进行很好的定位,但如果想要和环境中的物体进行交互,物体的6D位姿估计是必需的技术,也会持续成为研究热点。本文来自论文https://arxiv.org/abs/1905.06658,涉及的论文也都可以在论文中找到,也包含于 GitHub,转载请注明出处,有错误请指正,欢迎大家多交流 ^ _ ^
2 回顾
刚体的6D位姿估计按照使用的输入数据,可以分为基于2D图像的方法和基于3D点云的方法。早期基于2D图像的6D位姿估计方法处理的是纹理丰富的物体,通过提取显著性特征点,构建表征性强的描述符获得匹配点对,使用PnP方法恢复物体的6D位姿。对于弱纹理或者无纹理物体,可以使用基于模板的方法,检索得到最相似的模板图像对应的6D位姿,也可以通过基于机器学习的投票的方法,学习得到最优的位姿。
随着2011年以kinect为代表的的廉价深度传感器的出现,在获取RGB图像的同时可以获得2.5D的Depth图像,进而可以辅助基于2D图像的方法。为了不受纹理影响,也可以只在3D空间操作,此时问题变成获取的单视角点云到已有完整物体点云的part-to-whole配准问题。如果物体几何细节丰富,可以提取显著性3D特征点,构建表征性强的描述符获得3D匹配点,使用最小二乘获得初始位姿;也可以使用随机采样点一致算法(Ransac)获得大量候选6D位姿,选择误差最小的位姿。
自2012年始,深度学习在2D视觉领域一骑绝尘,很自然的会将深度学习引入到物体6D位姿估计,而且是全方位的,无论是基于纯RGB图像、RGB和Depth图像、还是只基于3D点云,无论是寻找对应、寻找模板匹配、亦或是进行投票,都展现了极好的性能。
随着在实例级物体上的6D位姿估计趋于成熟,开始涌现了类别级物体6D位姿估计的方法,只要处理的物体在纹理和几何结构上近似,就可以学习到针对这一类物体的6D位姿估计方法,这将极大提升这项技术在机器人抓取或者AR领域的实用性。
本文分别介绍基于2D图像和基于3D点云的,基于对应(Correspondence-based)、模板(Template-based)和投票(Voting-based method)的物体6D位姿估计方法,综合如下表。
表1 刚体6D位姿估计方法综述
3 基于对应的方法
这类方法的是指寻找输入数据和已有物体的完整3D点云之间的对应,如果输入的是2DRGB图像,可找到2D像素点和3D物体点之间的对应,进而使用PnP算法计算;如果输入的是3D点云,则可以使用3D特征描述符寻找输入点云中3D点和已有完整物体3D点之间的对应,使用最小二乘法获得6D位姿;两类输入都可以使用局部配准方法如ICP进行优化。