一种反光工件的6DoF位姿估计方法
技术领域
本申请涉及机器视觉
技术领域
,尤其涉及一种反光工件的6DoF位姿估计方法。背景技术
由于光线变化、场景遮挡和对象截断,6DoF成为机器人抓取任务,增强现实等应用的重要组成部分,特别是金属零件,由于其表面的反光、随意摆放时相互遮挡等非结构化因素,导致给物体的位姿估计任务带来巨大的挑战。
目前,对于上述问题通过如在提取SURF特征的基础上利用近似最近邻算法对零件进行识别等都只是针对外形规整且整齐摆放的零件,而对于外形复杂且任意堆叠摆放的零件位姿估计缺乏深入的研究。但是工件是镀锌材质,且表面不平整,导致反光严重,因此无论是进行多角度光线调整或者是喷涂适量的显像剂都无法通过realsense等工具对其进行完整的3D建模,而solidwork等建模软件虽然能达到一定的效果,但与工件真实状态有很大的差别。另一方面,目前基于关键点的方法大多是使用对象的3D包围框的8个顶点作为关键点,而相对于点云信息缺失导致的工件外形上的不完整,使得关键点不在工件内部则不能很好的处理关键点检测问题。从而导致现有工业机器人对金属等工件的抓取任务中,由于工件表面的反光或者由于随意摆放时相互遮挡等非结构化因素导致位姿估计效果较差。
发明内容
本申请提供了一种反光工件的6DoF位姿估计方法,用于解决现有工业机器人对金属等工件的抓取任务中,由于工件表面的反光或者由于随意摆放时相互遮挡等非结构化因素导致位姿估计效果较差的技术问题。
有鉴于此,本申请第一方面提供了一种反光工件的6DoF位姿估计方法,所述方法包括:
分别通过卷积神经网络和点云网络提取反光工件的特征;
采用分治特征提取算法将所述特征均分为若干个子集;
对若干个所述子集进行融合后输入到深度霍夫投票网络,输出各个所述子集的3D关键点;
通过RANSAC拟合算法对每个所述3D关键点进行拟合,得到6DoF位姿估计结果。
可选地,所述通过卷积神经网络和点云网络提取反光工件的特征,具体包括:
将所述反光工件的点云数据分别输入到卷积神经网络和点云网络中,提取所述反光工件的特征,所述特征包括:所述反光工件的表面信息、点云及对应的法线映射中的几何信息。
可选地,所述采用分治特征提取算法将所述特征均分为若干个子集,具体包括:根据聚类算法将所述特征分为具有相同语义标签的若干个所述子集。
可选地,所述对若干个所述子集进行融合后输入到深度霍夫投票网络,输出各个所述子集的3D关键点,具体包括:
对若干个所述子集进行融合后,通过所述深度霍夫投票网络的共享感知机对每个所述子集进行投票,再传递到所述深度霍夫投票网络的聚类模块进行处理,得到各个所述子集的3D关键点。
从以上技术方案可以看出,本申请具有以下优点:
本申请提供了一种反光工件的6DoF位姿估计方法,包括:首先分别通过卷积神经网络和点云网络提取反光工件的特征,特征包括:反光工件的表面信息、点云及对应的法线映射中的几何信息;接着采用分治特征提取算法将特征均分为若干个子集;然后对若干个子集进行融合后输入到深度霍夫投票网络,输出各个子集的3D关键点;最后通过RANSAC拟合算法对每个3D关键点进行拟合,得到6DoF位姿估计结果。
本申请的反光工件的6DoF位姿估计方法,首先利用卷积神经网络提取反光工件的表面信息,同时使用点云网络提取出点云及其法线映射中的几何信息,接着采用分治特征提取算法将特征均分为若干个子集,然后利用深度霍夫投票网络来检测子集的3D关键点,这种密集的2D-3D对应关系对反光等造成工件信息缺损严重的场景具有鲁棒性,最后通过RANSAC这种无参数拟合限制的投票方法对预测关键点进行6DoF位姿参数估计,对于光照导致的噪声问题具有更高的容忍度,使得反光严重的情况下准确率更高。从而解决了现有工业机器人对金属等工件的抓取任务中,由于工件表面的反光或者由于随意摆放时相互遮挡等非结构化因素导致位姿估计效果较差的技术问题。
附图说明
图1为本申请实施例中一种反光工件的6DoF位姿估计方法实施例一的流程示意图;
图2为本申请实施例中一种反光工件的6DoF位姿估计方法实施例二的流程示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,申请人在考虑到由于由于随意摆放时相互遮挡等非结构化因素导致导致反光工件的信息不完整,因此把反光问题导致的信息缺失适当转换为遮挡问题,通过直接处理点云数据,利用深度霍夫投票网络能够根据看得见的部分,对信息明显的部分的点进行投票,即使信息不完整导致的判断关键点可能不在工件表面等情况推断出金属工件的关键点位置。以下是本申请的具体方法。
请参阅图1,图1为本申请实施例中一种反光工件的6DoF位姿估计方法实施例一的流程示意图。
本申请实施例提供的一种反光工件的6DoF位姿估计方法,包括:
步骤101、分别通过卷积神经网络和点云网络提取反光工件的特征。
需要说明的是,本实施例将反光工件的点云数据输入到卷积神经网络进行提取得到反光工件的表面特征和几何信息,其中点云数据不局限于扫描获得,可以是由RGB-D图像的深度信息转换得到;同时将点云数据输入到点云网络提取点云及其法线映射中的几何信息;从而得到反光工件的特征。
步骤102、采用分治特征提取算法将特征均分为若干个子集。
本实施例的子集是根据相同的语义标签进行分类,也就是说将相同语义标签的特征分为一类。
本实施例的分治的特征提取技术,需要说明的是:
在光照或遮挡等条件下工件的信息缺失严重,点云获取不完整,各个局部特征由于不确定性因素导致联系减弱,由单个区域工件的真实点进行的投票所得关键点可能不在工件表面,所以在特征提取阶段就开始将工件的点云数据均匀分成P个子部分(子集),经过语义分割后的2D特征点分类为各个子集投票后,再将他们的特征进行汇总分类,本申请提出的分段投票机制为工件不同部分的特征聚合提供了上下文联系,并在一定程度上提高了特征提取效率。
给定一组由可见部分组成的子集点和属于同一实例I的一组已选择关键点
设xi为3D坐标,fi为提取出的特征,将pi表示为pi=[xi;fi]
提取到每个子集中点的特征后,计算出他们中第i个点相对已选第j个关键点的偏移
然后根据下述损失函数监督学习:
其中,表示地面真值平移偏移量,M是所选目标关键点的总量,N是子集的总量。
通过这样分组提取特征再汇总,通过并行的方式进一步改善了特征提取。
步骤103、对若干个子集进行融合后输入到深度霍夫投票网络,输出各个子集的3D关键点。
深度霍夫投票网络是由多个共享感知机组成的关键点检测模块和语义分割模块。其中语义分割模块强制模型提取实例上的全局和局部特征来区分不同的对象,有助于在对象上定位一个点,有利于关键点推理过程。因此,本实施例在对若干个子集进行融合后输入到深度霍夫投票网络,需要说明的是,每个子集中的投票是由共享感知机独立处理,然后传递给投票聚类模块处理,从而得到各个子集的3D关键点。
步骤104、通过RANSAC拟合算法对每个3D关键点进行拟合,得到6DoF位姿估计结果。
需要说明的是,由于反光等因素造成的点云数据离散性很大,存在就唔多噪声,而RANSAC算法更适用于这种由于光照强度等不确定性因素导致的无参数拟合限制的场景,有利于实现最后的拟合。因此本实施例通过RANSAC拟合算法对每个3D关键点进行拟合,从而得到反光工件的6DoF位姿估计结果。
本实施例的反光工件的6DoF位姿估计方法,首先利用卷积神经网络提取反光工件的表面信息,同时使用点云网络提取出点云及其法线映射中的几何信息,接着采用分治特征提取算法将特征均分为若干个子集,然后利用深度霍夫投票网络来检测子集的3D关键点,这种密集的2D-3D对应关系对反光等造成工件信息缺损严重的场景具有鲁棒性,最后通过RANSAC这种无参数拟合限制的投票方法对预测关键点进行6DoF位姿参数估计,对于光照导致的噪声问题具有更高的容忍度,使得反光严重的情况下准确率更高。从而解决了现有工业机器人对金属等工件的抓取任务中,由于工件表面的反光或者由于随意摆放时相互遮挡等非结构化因素导致位姿估计效果较差的技术问题。
以上为本申请实施例中提供的一种反光工件的6DoF位姿估计方法的实施例一,以下为本申请实施例中提供的一种反光工件的6DoF位姿估计方法的实施例二。
请参阅图2,图2为本申请实施例中一种反光工件的6DoF位姿估计方法实施例二的流程示意图。
本申请实施例提供的一种反光工件的6DoF位姿估计方法,包括:
步骤201、将反光工件的点云数据分别输入到卷积神经网络和点云网络中,提取反光工件的特征,特征包括:反光工件的表面信息、点云及对应的法线映射中的几何信息。
本实施例步骤201与实施例一步骤101描述相同,请参见步骤101描述,在此不再赘述。
步骤202、根据聚类算法将特征分为具有相同语义标签的若干个子集。
步骤203、对若干个子集进行融合后,通过深度霍夫投票网络的共享感知机对每个子集进行投票,再传递到深度霍夫投票网络的聚类模块进行处理,得到各个子集的3D关键点。
对于步骤202和203,本实施例基于VoteNet的投票聚类和分类技术,需要说明的是:
使用聚类算法来区分具有相同语义标签的不同实例和相同实例上的点对目标关键点投票,通过均匀抽样和根据空间一致性分组对投票进行聚类。
从一组投票中,利用3D欧几里得空间中基于{yi}的最远点采样,对K个投票的子集进行采样,得到k=1,...K,然后通过找出每个的3D位置邻近投票来形成K个聚类:
其中,(3+C)为语义分割模块后的特征子集数。
基于PointNet的多层感知机聚合技术,需要说明的是::
给定一个投票群集C={wi},i=1,...,n,wj表示簇中心,wi=[zi;hi],zi∈R3作为投票区域,hi∈RC作为投票特征。为了使用局部投票的几何图形,我们通过z′i=(zi-zj)/r将投票位置转换为局部归一化坐标。然后将集合输入通过类似PointNet的模块传递,生成集群p(C):
每个子集中的投票由MLP1独立处理,然后最大汇聚到单个特征向量并传递给MLP2,来自不同投票的信息在MLP2中进一步合并。
步骤204、通过RANSAC拟合算法对每个3D关键点进行拟合,得到6DoF位姿估计结果。
本实施例步骤204与实施例一步骤104描述相同,请参见步骤104描述,在此不再赘述。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法,可以通过其它的方式实现,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:用于识别交通标志牌的方法及装置