面向机器人RGBD视觉感知的6D位姿估计方法及系统
文献发布时间:2023-06-19 12:18:04
技术领域
本发明属于计算机视觉处理领域,具体涉及一种面向机器人RGBD视觉感知的6D位姿估计方法及系统。
背景技术
物体6D位姿是指拍摄当前图像时刻,相机坐标系相对于原始物体所在的世界系,发生的平移和旋转变换。近年来,物体6D位姿估计在机器人装配、自动驾驶和增强现实等领域得到了广泛的应用。尤其是在机器人装配领域,由于对实时性和准确性的要求很高,RGBD相机下的物体位姿估计一直是一个具有挑战性的问题。针对物体位姿估计,一直存在如下几个挑战:1、如何满足操作的实时性;2、处理光照变化的影响;3、物体之间的互相遮挡等。在精细化的场景下,普通的3D目标定位技术已经不能满足精确性和实时性的需求。而对目标姿态的精确估计也能允许使用更加灵巧的手势进行柔性抓取与装配。
传统的6D目标估计方法主要分为基于对应的方法和基于模板的方法。基于对应的方法先找到现有三维模型的二维像素点与三维点之间的对应关系,然后采用透视n点(PnP)算法求解姿态,然而,这类方法严重依赖于手工制作的特征,这导致其在无纹理对象上的性能较差。基于模板的方法从标记有地面真实6D物体姿态的模板中找到最相似的模板,但不能适应光照变化和遮挡等复杂环境。
随着近几年来深度学习理论的逐步发展,基于深度学习的3D视觉技术已被成功应用于智能制造、智能驾驶等各个领域并取得了很高的效果。基于卷积神经网络(CNN)的图像特征提取可以使模型学习到最有利的特征,从而避免了手工特征的局限性。有些方法直接使用深度卷积网络来回归对象的3D位置和3D旋转。然而,现有方法大都极度依赖颜色信息而忽略了深度信息,导致了在颜色信息受限时(如极端光照、复杂场景等)的结果不够鲁棒。一方面,由于深度相机的局限性只能获得2.5D的点云信息,并且随着遮挡等问题越来越少,少量的深度信息对于位姿估计的贡献极为有限;另一方面,目前对于深度信息的特征提取技术现在也应用起来较为复杂,不够准确,目前仍需要一种有效的方法将深度信息用于物体的位姿估计。
发明内容
本发明的目的之一在于提供一种面向机器人RGBD视觉感知的6D位姿估计方法,该方法通过多分辨率的物体全局拓扑特征提取模块弥补深度信息匮乏的缺陷,并采用基于投票的机制得到最终位姿;同时本方法高效,便捷。
本发明的目的之二在于提供基于面向机器人RGBD视觉感知的6D位姿估计方法的系统。
本发明提供的这种面向机器人RGBD视觉感知的6D位姿估计方法,包括如下步骤:
S1.获取物体在不同环境和不同光照下的RGBD图片;
S2.对得到的RGBD图片进行物体图像分隔;
S3.训练分割的物体图像,生成位姿估计模型,对物体进行位姿估计。
所述的步骤S2,具体包括如下步骤:
A1.对步骤S1获取的RGBD图片,使用标注工具对不同物体进行标注,制作图像分割训练数据集;
A2.利用步骤A1制作的图像分割训练数据集,对图像分割网络进行训练,使得图像分割网络能够分割出每个物体在图像中的所有像素点;分割过程具体为,获取单帧的RGB图像,输入至分割网络中获得每个物体的前景掩码,并按此前景掩码裁剪出只包含该物体的RGB图像和深度图像。
所述的步骤S3,具体包括如下步骤:
B1.采用步骤S1获取的RGBD图片,使用3D标注工具对图片下的物体的3D位置和3D旋转进行标注,制作位姿估计训练数据集;
B2.利用步骤A2得到的每个物体的RGB图片、深度图片以及该物体的点云模型,分别进行特征提取;
B3.将步骤B2得到的特征进行逐像素级的融合,并输入位姿估计网络中,利用步骤B1制作的位姿估计训练数据集对位姿估计网络进行训练,使得该网络能估计出目标的3D位置和3D旋转。
步骤B2,特征提取具体包括如下步骤:
C1.用基于卷积神经网络的图像特征提取算法提取得到目标的颜色特征;
C2.使用基于PointNet的点云特征提取网络提取得到目标的深度特征;
C3.使用基于多分辨率的点云拓扑特征提取网络提取得到目标的拓扑特征。
步骤B3,训练过程具体为,采用一种基于全连接网络的结构为每一个像素计算出一个长度为7的向量,长度为7的向量分别代表3D的物体偏移、3D的目标旋转和一个置信度,并采用如下损失函数进行训练:
其中,L
L
其中,M为像素的数量;j为其中一个像素;k为另一个像素;R为真实的旋转向量;x
本发明还提供了一种基于面向机器人RGBD视觉感知的6D位姿估计方法的系统,包括图像获取模块、图像分割模块、颜色特征提取模块、深度特征提取模块、拓扑特征提取模块和物体位姿估计模块;图像获取模块连接图像分割模块,图像分割模块分别连接颜色特征模块、深度特征提取模块和拓扑特征提取模块,同时,颜色特征模块、深度特征提取模块和拓扑特征提取模块分别连接物体位姿估计模块;图像获取模块用于获取物体的图像;图像分割模块对获取的图像进行分割,并将分割后的图像发送到颜色特征模块、深度特征提取模块和拓扑特征提取模块中;颜色特征提取模块获取物体的颜色特征;深度特征提取模块用于获取物体的深度特征;拓扑特征提取模块用于获取物体的全局拓扑特征;颜色特征模块、深度特征提取模块和拓扑特征提取模块将获取的特征发送到物体位姿估计模块,物体位姿估计模块对物体进行6D位姿估计。
图像分割模块具体为,利用基于编码器-解码器架构的图像分割网络对图片下的每一个物体进行像素级的分割,以避免杂乱背景造成的影响和减少计算量。
颜色特征提取模块,具体为利用基于卷积神经网络的深度学习模型对分割后的RGB图片进行特征提取,获取该物体的颜色特征;深度特征提取模块,具体为利用基于PointNet的深度学习模型对分割后的点云信息进行特征提取,获得该物体的深度特征;拓扑特征提取模块,具体为利用一种多分辨率的点云特征提取模块的物体模型的全局拓扑特征进行提取,以对不充足的深度信息进行补充。
物体位姿估计模块,具体为将颜色特征、深度特征和拓扑特征进行逐像素融合并为每一个像素都进行回归得到相对于相机坐标的3D位置、3D旋转和一个置信度,最后投票选择置信度最高的像素的位姿作为最终结果。
本发明提供的这种面向机器人RGBD视觉感知的6D位姿估计方法及系统,利用物体图像分割和特征提取进行位姿估计,有效的减少背景对结果的干扰并大大减少计算量,并能够在50ms内快速估计出相机坐标下所有待抓取物体的3D位置和3D旋转,以便做出多样的抓握手势和找出准确的抓取点。
附图说明
图1为本发明方法的流程示意图。
图2为本发明系统的结构示意图。
图3为本发明实施例的结构示意图。
具体实施方式
如图1为本发明方法的流程示意图。本发明提供的这种面向机器人RGBD视觉感知的6D位姿估计方法,包括如下步骤:
S1.获取物体在不同环境和不同光照下的RGBD图片;
S2.对得到的RGBD图片进行物体图像分隔;
S3.训练分割的物体图像,生成位姿估计模型,对物体进行位姿估计。
所述的步骤S2,具体包括如下步骤:
A1.对步骤S1获取的RGBD图片,使用标注工具对不同物体进行标注,制作图像分割训练数据集;
A2.利用步骤A1制作的图像分割训练数据集,对图像分割网络进行训练,使得图像分割网络能够分割出每个物体在图像中的所有像素点;若像素点的数量过少,则无效;否则,根据4个边界切割图片得到该物体的区域;具体为,获取单帧的RGB图像,输入至分割网络中获得每个物体的前景掩码,并按此前景掩码裁剪出只包含该物体的RGB图像和深度图像。
所述的步骤S3,具体包括如下步骤:
B1.采用步骤S1获取的RGBD图片,使用3D标注工具对图片下的物体的3D位置和3D旋转进行标注,制作位姿估计训练数据集;
B2.利用步骤A2得到的每个物体的RGB图片、深度图片以及该物体的点云模型,分别做三部分的特征提取,特征提取包括如下步骤:
C1.用基于卷积神经网络的图像特征提取算法提取得到目标的颜色特征;
C2.使用基于PointNet的点云特征提取网络提取得到目标的深度特征;
C3.使用基于多分辨率的点云拓扑特征提取网络提取得到目标的拓扑特征。
B3.将步骤B2得到的特征进行逐像素级的融合,并输入位姿估计网络中,利用步骤B1制作的位姿估计训练数据集对位姿估计网络进行训练,使得该网络能估计出目标的3D位置和3D旋转。
训练过程具体为,采用一种基于全连接网络的结构为每一个像素计算出一个长度为7的向量,长度为7的向量分别代表3D的物体偏移、3D的目标旋转和一个置信度,并采用如下损失函数进行训练:
其中,L
L
其中,M为像素的数量;j为其中一个像素;k为另一个像素;R为真实的旋转向量;x
如图2为本发明系统的结构图;本发明提供的这种面向机器人RGBD视觉感知的6D位姿估计方法及系统,包括图像获取模块、图像分割模块、颜色特征提取模块、深度特征提取模块、拓扑特征提取模块和物体位姿估计模块;图像获取模块连接图像分割模块,图像分割模块分别连接颜色特征模块、深度特征提取模块和拓扑特征提取模块,同时,颜色特征模块、深度特征提取模块和拓扑特征提取模块分别连接物体位姿估计模块;图像获取模块用于获取物体的图像;图像分割模块对获取的图像进行分割,并将分割后的图像发送到颜色特征模块、深度特征提取模块和拓扑特征提取模块中;颜色特征提取模块获取物体的颜色特征;深度特征提取模块用于获取物体的深度特征;拓扑特征提取模块用于获取物体的全局拓扑特征;颜色特征模块、深度特征提取模块和拓扑特征提取模块将获取的特征发送到物体位姿估计模块,物体位姿估计模块对物体进行6D位姿估计。
图像分割模块,利用基于编码器-解码器架构的图像分割网络对图片下的每一个物体进行像素级的分割,以避免杂乱背景造成的影响和减少计算量。颜色特征提取模块,利用基于卷积神经网络的深度学习模型对分割后的RGB图片进行特征提取,获取该物体的颜色特征。深度特征提取模块,利用基于PointNet的深度学习模型对分割后的点云信息进行特征提取,获得该物体的深度特征。拓扑特征提取模块,利用一种多分辨率的点云特征提取模块的物体模型的全局拓扑特征进行提取,以对不充足的深度信息进行补充。物体位姿估计模块,将颜色特征、深度特征和拓扑特征进行逐像素融合并为每一个像素都进行回归得到相对于相机坐标的3D位置、3D旋转和一个置信度,最后投票选择置信度最高的像素的位姿作为最终结果。
如图3为本发明实施例的结构示意图。在具体实施过程中,包括如下步骤:
步骤一、获取大量待抓握物体在不同环境、不同光照条件下的RGBD图片,并对其进行两部分的标注:
(1)、标注包含所有物体的区域用于实例分割;
(2)、标注所有物体相对于相机的偏移和旋转用于位姿估计。
步骤二、获取单帧的RGB图像,输入至实例分割网络中获得每个物体的前景掩码,并按此掩码裁剪出只包含该物体的RGB图像和深度图像。
步骤三、分别对裁剪后的RGB图像和深度图像进行特征提取;对于RGB图像特征提取,可采用任意一种编码器-解码器架构的网络结构,如PSPNet、SegNet和RefineNet等;对于深度图像的特征提取,本发明先将其转换为点云格式,然后采用pointNet的主干网络进行特征提取,并将其与对应的像素的图像特征进行拼接。
步骤四、采用一种多分辨率的网络结构对物体模型的拓扑特征进行提取;具体为,首先使用最点距离采样方式对物体模型的点云进行三次采样,得到点云数量分别为[256,512,1024]的点云信息,然后采用权值共享的MLP网络对不同分辨率的点云信息进行提取,得到3个128×1的特征向量,进一步将三个特征向量进行横向拼接得到128×3的特征矩阵,再经过一个MLP网络得到一个128×1的特征向量,最终将这个向量复制N份拼接到每一个像素的特征中,这样,每一个像素就获得了一部分物体模型的拓扑特征。
步骤五、采用一种基于全连接网络的结构为每一个像素计算出一个长度为7的向量,分别代表3D的物体偏移、3D的目标旋转和一个置信度,并采用如下损失函数进行训练:
其中,L
L
其中,M为像素的数量;j为其中一个像素;k为另一个像素;R为真实的旋转向量;x
步骤六、训练完成后,将摄像头拍摄到的RGBD图像作为整个系统的输入,为每一个物体得到若干个像素的3D偏移、3D旋转和置信度,然后选取置信度最高的结果作为最终结果。
在具体实施过程中,在步骤二中采用PSPNet作为图像特征提取网络,分别在LineMOD和YCB-Video数据集上进行了实验;本发明在LineMOD和YCB-Video数据集上的实验结果如表1所示:
表1
ADD和ADD(S)为两个性能指标(越大越好),Ours为本发明所得出的结果。其中,ADD为估计出的目标与真是目标之间平均距离不超过2cm的准确率,ADD(S)计算方式与ADD一致,但是考虑到了对称目标的旋转。
- 面向机器人RGBD视觉感知的6D位姿估计方法及系统
- 面向工业零件6D位姿估计的方法及计算机可读存储介质