CN112017226A - 面向工业零件6d位姿估计的方法及计算机可读存储介质 - Google Patents
面向工业零件6d位姿估计的方法及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112017226A CN112017226A CN202010872000.6A CN202010872000A CN112017226A CN 112017226 A CN112017226 A CN 112017226A CN 202010872000 A CN202010872000 A CN 202010872000A CN 112017226 A CN112017226 A CN 112017226A
- Authority
- CN
- China
- Prior art keywords
- point
- parameter
- predicted
- key points
- parameter key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000003860 storage Methods 0.000 title claims abstract description 23
- 239000013598 vector Substances 0.000 claims abstract description 35
- 230000011218 segmentation Effects 0.000 claims abstract description 34
- 238000013528 artificial neural network Methods 0.000 claims abstract description 22
- 238000013507 mapping Methods 0.000 claims abstract description 20
- 238000012549 training Methods 0.000 claims abstract description 12
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 11
- 238000004088 simulation Methods 0.000 claims abstract description 11
- 238000009877 rendering Methods 0.000 claims abstract description 7
- 230000006870 function Effects 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 5
- 239000000463 material Substances 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 4
- 238000013519 translation Methods 0.000 claims description 3
- 238000012935 Averaging Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 10
- 230000001360 synchronised effect Effects 0.000 description 8
- 238000013135 deep learning Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 6
- 239000012636 effector Substances 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000007670 refining Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/66—Analysis of geometric attributes of image moments or centre of gravity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30164—Workpiece; Machine component
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种面向工业零件6D位姿估计的方法及计算机可读存储介质,方法包括:确定参数值与参数关键点的映射函数并构建有限个尺寸实例的三维模型库;基于所述三维模型库,通过物理引擎和渲染引擎的仿真生成堆叠数据集,并生成参数关键点标签和参数值标签,用于训练本技术方案所提出的神经网络;预测每个点到其所属工业零件的质心和参数关键点的空间偏移向量;通过聚类算法实现堆叠场景的个体分割,获得个体的预测质心,对逐点预测的参数关键点分类,获得个体的预测参数关键点及质心,然后计算逐点预测参数值,分类后获得个体的预测参数值,用于计算模板实例的参数关键点及质心;通过最小二乘拟合方法获得6D位姿估计结果。
Description
技术领域
本发明涉及位姿估计技术领域,尤其涉及一种面向工业零件6D位姿估计的方法及计算机可读存储介质。
背景技术
面向工业零件的6D位姿估计是计算机视觉领域的重要研究方向,对于推动工业的智能化、自动化发展有着至关重要的意义。随着深度学习和计算机视觉相关技术的快速发展,通过深度学习网络解决工业零件的6D位姿识别问题逐渐成为研究的主流趋势,但目前大多数基于深度学习的位姿估计方法在工业零件的应用上,存在着识别效率不足、识别精度不足、网络泛化能力不足等问题。
面向工业零件的6D位姿估计是指针对工业零件的特性,对散乱、多样的工业零件进行空间位置和姿态的预测。CN110910452A公布了一种基于深度学习的低纹理工业零件位姿估计方法,首先通过物理仿真获得工业散乱零件的数据集,然后基于位姿估计子网络,由RGB-D信息预测零件的初始位姿,再基于位姿细化子网络,迭代细化出满足精度要求的位姿。CN110930454A公布了一种基于边界框外关键点定位的六自由度位姿估计算法,通过输入的RGB信息,基于卷积神经网络先进行目标检测,然后定位目标三维边界框的8个顶点,再根据EPnP算法计算6D位姿。CN111251295A公布了一种应用于参数化零件的视觉机械臂抓取方法及装置,首先将点云信息通过参数化深度神经网络进行零件检索,获取参数化零件的尺寸信息和类别信息,确定目标模板,再基于目标模板进行点云配准获得6D位姿。
当前技术中常用的方法是通过语义分割解决零件尺寸多样性的问题,但是同一参数化模板下设计的零件可以有无限种可能,会根据生产需求而变动,一旦发生变动就需要重新建立模板检索库,而且精度也会随着零件类别增加而下降。因此,提供一种可以泛化应用于同种参数化模板下多种尺寸实例的6D位姿估计方法是本领域技术人员亟需解决的问题。
以上背景技术内容的公开仅用于辅助理解本发明的构思及技术方案,其并不必然属于本专利申请的现有技术,在没有明确的证据表明上述内容在本专利申请的申请日已经公开的情况下,上述背景技术不应当用于评价本申请的新颖性和创造性。
发明内容
本发明为了解决现有的问题,提供一种面向工业零件6D位姿估计的方法及计算机可读存储介质。
为了解决上述问题,本发明采用的技术方案如下所述:
一种面向工业零件6D位姿估计的方法,包括如下步骤:S1:在参数化模板上,根据几何特征,确定工业零件的参数值与参数关键点的映射关系,建立映射函数;对参数值进行均匀采样和排列组合,生成多个尺寸组合的实例,建立所述实例的三维模型库;S2:基于所述三维模型库,通过物理引擎和渲染引擎的仿真生成堆叠数据集,基于所述实例的参数值和映射函数,计算所述实例的参数关键点,并通过6D位姿标签转换获得堆叠场景中工业零件的参数关键点标签和参数值标签,用于训练神经网络;S3:实时识别时,将预处理后的实际场景的点云输入训练好的神经网络中,通过逐点回归网络预测每个点到其所属工业零件的质心和参数关键点的空间偏移向量;S4:根据逐点预测的到质心的空间偏移向量和所述点云的坐标,计算逐点预测的质心,通过聚类算法实现堆叠场景的个体分割;S5:根据逐点预测的到参数关键点的空间偏移向量和所述点云的坐标,计算逐点预测的参数关键点,个体分割后的所述点云通过平均计算获得个体的预测参数关键点;S6:根据逐点预测的质心和参数关键点,计算出逐点的预测参数值,个体分割后的所述点云通过平均计算获得个体的预测参数值,然后根据所述个体的预测参数值均值计算出模板实例的参数值,进行三维重构,实时确定所述模板实例并计算出所述模板实例的参数关键点坐标及质心;S7:所述模板实例的参数关键点及质心和个体的预测参数关键点及质心一一对应,进行最小二乘拟合,获得6D位姿估计结果。
优选地,获得堆叠场景中工业零件的所述参数关键点标签,同一个所述参数关键点具有至少一种取点方式时,选取仿真生成过程中距离仿真相机最近的参数关键点作为训练所述神经网络的参数关键点标签。
优选地,步骤S3包括如下步骤:S31:获取堆叠于固定的物料箱内的工业零件的目标点云;S32:将所述目标点云的坐标(np×3)输入到训练好的所述神经网络中,其中,np为目标点云里点的个数;S33:由特征提取网络生成逐点特征向量(np×ne),其中,ne为逐点特征向量的维度;S34:通过质心预测分支预测每个点到其所属所述工业零件的质心的空间偏移向量(np×3),同时通过参数关键点预测分支预测每个点到其所属所述工业零件的参数关键点的空间偏移向量(np×m×3),其中,m为参数关键点的个数;S35:根据空间偏移向量的逐点预测结果和点云坐标,即可计算出逐点预测的质心(np×3)和参数关键点(np×m×3)。
优选地,所述质心预测分支和所述参数关键点预测分支的损失函数为:
优选地,所述聚类算法包括均值漂移Mean Shift聚类、基于密度的DBSCAN聚类、基于密度的OPTICS聚类;通过所述聚类算法将质心的逐点预测结果(np×3)分成d类,属于同一类的预测结果通过平均计算获得该类的预测质心,由此获得d个工业零件的预测质心(d×3)。
优选地,根据个体分割结果获得分割后的点云,将参数关键点的逐点预测结果(np×m×3)进行分类,属于同一类的所述参数关键点通过平均计算获得该类的预测参数关键点,从而获得d个工业零件的预测参数关键点(d×m×3)。
优选地,参数值预测损失函数为:
优选地,通过最小化L最小二乘函数,找到旋转矩阵R和平移矩阵t,从而获得场景中每个工业零件的6D位姿估计结果:
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述方法的步骤。
本发明的有益效果为:提供一种面向工业零件6D位姿估计的方法及计算机可读存储介质,通过基于参数化模板的几何特征,可以预定义该模板与参数相关联的参数关键点,由逐点回归网络预测这些参数关键点,即可计算出该模板下各种尺寸实例的参数值,实现模板实例的三维重构,不依赖于模板库的检索也可实时确定模板实例,具有极强的通用性,节省大量模板库维护更新和计算时间。同时也可识别同种参数化模板下未知尺寸实例的参数关键点,从而识别出参数值并估计出6D位姿,泛化能力极强。
附图说明
图1是本发明实施例中一种面向工业零件6D位姿估计的方法的示意图。
图2是本发明实施例中一种面向工业零件6D位姿估计的流程的示意图。
图3(a)和图3(b)是本发明实施例中六角螺母零件族的不同尺寸实例
图4是本发明实施例中堆叠场景的仿真数据示意图。
图5是本发明实施例中神经网络结构示意图。
图6是本发明实施例中质心和参数关键点的逐点预测结果的方法示意图。
图7是本发明实施例中以六角螺母零件族为例的6D位姿识别应用流程和效果示意图。
图8是本发明实施例中一种面向工业零件6D位姿估计的装置硬件结构示意图。
具体实施方式
为了使本发明实施例所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。另外,连接既可以是用于固定作用也可以是用于电路连通作用。
需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征。在本发明实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
基于机器视觉的工业零件抓取技术可以提升产线的柔性制造能力,可广泛应用于涉及零件分拣和上下料的工序中。在典型的生产制造过程中,同种工业零件会随机散乱堆叠摆放在物料箱里,需要视觉***对工业零件进行个体分割,然后估计6D位姿,引导机械臂实现抓取。实际中的工业零件大多数基于参数化模板进行设计,同参数化模板的工业零件会根据生产需求改变具体的尺寸数值,实例的多样性要求深度学习网络需要具有极强的泛化能力。本发明将基于深度学习实现工业零件的个体分割、参数识别和6D位姿估计。
如图1所示,一种面向工业零件6D位姿估计的方法,包括如下步骤:
S1:在参数化模板上,根据几何特征,确定工业零件的参数值与参数关键点的映射关系,建立映射函数;对参数值进行均匀采样和排列组合,生成多个尺寸组合的实例,建立所述实例的三维模型库;
S2:基于所述三维模型库,通过物理引擎和渲染引擎的仿真生成堆叠数据集,基于所述实例的参数值和映射函数,计算所述实例的参数关键点,并通过6D位姿标签转换获得堆叠场景中工业零件的参数关键点标签和参数值标签,用于训练神经网络;
S3:实时识别时,将预处理后的实际场景的点云输入训练好的神经网络中,通过逐点回归网络预测每个点到其所属工业零件的质心和参数关键点的空间偏移向量;
S4:根据逐点预测的到质心的空间偏移向量和所述点云的坐标,计算逐点预测的质心,通过聚类算法实现堆叠场景的个体分割;
S5:根据逐点预测的到参数关键点的空间偏移向量和所述点云的坐标,计算逐点预测的参数关键点,个体分割后的所述点云通过平均计算获得个体的预测参数关键点;
S6:根据逐点预测的质心和参数关键点,计算出逐点的预测参数值,个体分割后的所述点云通过平均计算获得个体的预测参数值,然后根据所述个体的预测参数值均值计算出模板实例的参数值,进行三维重构,实时确定模板实例并计算出所述模板实例的参数关键点坐标及质心;
S7:所述模板实例的参数关键点及质心和个体的预测参数关键点及质心一一对应,进行最小二乘拟合,获得6D位姿估计结果。
进一步地,上述6D位姿估计结果可以传给计算机单元进行抓取位姿规划和抓取路径规划,计算机单元再引导机械臂单元完成工业零件的抓取。
本发明提出了一种新颖的神经网络结构,可以实现工业堆叠零件的6D位姿估计,通过逐点预测质心和参数关键点,可实现工业零件的个体分割、参数识别和6D位姿估计。同一参数化模板但不同尺寸的零件有着共同的特点:参数值的个数和类型具有不变性。因此,基于参数化模板的几何特征,可以预定义该模板与参数相关联的参数关键点,由逐点回归网络预测这些参数关键点,即可计算出该模板下各种尺寸实例的参数值,实现模板实例的三维重构,不依赖于模板库的检索也可实时确定模板实例,具有极强的通用性,节省大量模板库维护更新和计算时间。同时也可识别同种参数化模板下未知尺寸实例的参数关键点,从而识别出参数值并估计出6D位姿,泛化能力极强。
进一步地,本发明需要数据驱动。由于深度神经网络具有强大的学习能力,该发明可以学习同一参数化模板下各种实例的参数关键点,巧妙解决了同一参数化模板下设计的不同尺寸实例可以有无限种可能的难题,具有极强的通用性和应用价值。
与现有技术相比,现有技术主要针对某一种特定尺寸实例的6D位姿识别,而本发明提出了一种新颖的神经网络结构,适用于各类参数化零件的6D位姿识别;现有技术主要用不同的算法分别实现分割、参数识别、位姿估计,本发明可以同时实现个体分割、参数识别和位姿估计;现有技术的基于模板匹配的方法,需要构建点云模板库,根据语义分割结果进行检索,本发明应用时不依赖于模板库,根据识别的参数值进行三维重构,实时确定模板实例进行模板匹配;现有技术的基于模板库的方法无法检索未知尺寸实例,需要重新更新模板库并重新学习训练,本发明可泛化到同种参数化模板下未知尺寸实例的6D位姿识别。
通过本发明的方法可以面向工业零件实现个体分割、参数识别、6D位姿识别,并引导机械臂实现抓取任务;根据识别的参数,进行模板实例的三维重构,实时确定模板实例,不依赖于模板库检索,可节省模板库的建立和维护时间;神经网络经过同种参数化模板下有限个尺寸实例数据集的训练,可泛化到同种参数化模板下未知尺寸实例的6D位姿识别,通用性和泛化性极强。
如图2所示,下面详细说明本发明的方法:
一、建立参数与参数关键点映射函数和三维模型库
输入:参数化模板
输出:参数值与参数关键点映射函数和三维模型库
同一参数化模板的工业零件,其驱动参数个数和类型是固定不变的,因此可以为同一参数化模板的工业零件建立k个参数值与m个参数关键点坐标之间的映射函数:使得参数关键点与参数值相关联,每一种参数化模板的需要根据几何关系单独设计和预先定义。
如图3(a)和图3(b)所示,六角螺母零件族的不同尺寸实例,参数值个数始终有3个,分别为内半径r、外半径d和高h,参数关键点始终有3个,分别为p1、p2、p3,由于模板实例坐标系默认以质心作为原点,以z轴方向作为轴线方向,因此p1、p2、p3用参数值映射为所以六角螺母零件族参数值与参数关键点之间的映射函数表达式为:然后根据实际需求对参数值进行一定范围的均匀采样和排列组合,生成若干个实例的三维模型库,包括每个实例的obj文件、模板实例的参数值等。
二、构建不同尺寸实例的堆叠数据集并训练
输出:仿真堆叠数据集
如图4所示,基于三维模型库的obj文件,每个实例均通过物理引擎仿真模拟自由落体过程,生成堆叠场景,然后再通过渲染引擎进行场景渲染获得堆叠场景的深度图、分割图、6D位姿标签。
所采取的物理引擎和渲染引擎包括但不限于:Bullet、V-REP、Blender等。基于三维模型库里模板实例的参数值,由步骤一确定映射函数计算出每个模板实例的参数关键点坐标,然后通过6D位姿标签的转换,将模板实例的参数关键点转换到堆叠场景中,从而获得堆叠场景中每个物体的参数值标签和参数关键点标签。由于在场景中某些参数关键点具有歧义性,比如六角螺母零件族的p3关键点,有12种等效的取点方式,所以选取场景里距离相机视角最近的参数关键点(即相机坐标系的z值最小)作为网络学习的参数关键点标签,避免了歧义性的影响。全自动生成的仿真堆叠数据集,包括深度图、分割图、位姿标签、参数关键点标签、参数值标签等,用于本技术方案所提出的网络的离线训练。
三、实时识别时利用已训练的网络模型逐点预测质心和参数关键点
输入:场景点云
输出:质心和参数关键点的逐点预测结果
通过现成的三维视觉***采集场景点云,因工业零件大多数堆叠于固定的物料箱内,所以可以通过裁剪x、y、z三个维度的点云,获得剔除背景后的目标点云。
如图5所示,是本发明的神经网络结构示意图,将采样后的目标点云坐标(np×3)直接作为神经网络的输入,其中np为目标点云的个数,首先由特征提取网络生成逐点特征向量(np×ne),其中ne为逐点特征向量的维度,所采取的特征提取网络包括但不限于:PointNet,、PointNet++、PointSIFT、DGCNN等。然后通过质心预测分支预测每个点到其所属物体质心的空间偏移向量(np×3),同时通过参数关键点预测分支预测每个点到其所属物体参数关键点的空间偏移向量(np×m×3),其中,m为参数关键点的个数,如六角螺母零件族的m=3。根据空间偏移向量的逐点预测结果和点云坐标,即可计算出逐点预测的质心(np×3)和参数关键点(np×m×3)。在训练过程中,质心预测分支和参数关键点预测分支根据步骤二生成的质心标签(6D位姿标签的一部分)和参数关键点标签进行监督学习,用于梯度下降的两个分支损失函数均采用均方差损失(Mean Square Error,MSE):
如图6所示,上述方法的步骤为:
S31:获取堆叠于固定的物料箱内的工业零件的目标点云;
S32:将所述目标点云的坐标(np×3)输入到训练好的所述神经网络中,其中,np为目标点云的个数;
S33:由特征提取网络生成逐点特征向量(np×ne),其中,ne为逐点特征向量的维度;
S34:通过质心预测分支预测每个点到其所属所述工业零件的质心的空间偏移向量(np×3),同时通过参数关键点预测分支预测每个点到其所属所述工业零件的参数关键点的空间偏移向量(np×m×3),其中,m为参数关键点的个数;
S35:根据空间偏移向量的逐点预测结果和点云坐标,即可计算出逐点预测的质心(np×3)和参数关键点(np×m×3)。
四、对零件点云进行个体分割
输入:逐点预测的质心
输出:目标点云的个体分割结果
每个点预测其所属物体的质心,那么属于同一个零件的点云的预测结果会彼此靠近,因此可以通过聚类方法对质心的逐点预测结果(np×3)进行个体分割,即将目标点云分成d类,从而获得不同个体的点云。聚类方法包括但不限于:均值漂移Mean Shift聚类、基于密度的DBSCAN聚类、基于密度的OPTICS聚类等。将质心的逐点预测结果(np×3)分类,属于同一类的通过平均计算获得该类的预测质心,从而获得场景里d个个体的预测质心(d×3)。
五、对零件进行参数关键点预测
输入:逐点预测的参数关键点和个体分割结果
输出:个体的预测参数关键点
根据个体分割结果获得分割后的点云,可以将参数关键点的逐点预测结果(np×m×3)进行分类,属于同一类的通过平均计算获得该类的预测参数关键点,从而获得场景里d个个体的预测参数关键点(d×m×3)。
六、对零件进行参数识别
输入:逐点预测的质心与参数关键点、个体分割结果
输出:个体的预测参数值及模板实例参数关键点
根据参数化模板的几何特征,通过质心、参数关键点的逐点预测结果可以计算出参数值的逐点预测结果,即参数值可由质心和若干个参数关键点组合计算得到。如六角螺母零件族的参数计算如下:r=||p1-p2||,d=||p1-p3||,h=2×||p1-centroid||。
然后根据个体分割结果获得分割后的点云,可以将参数值的逐点预测结果(np×k)进行分类,属于同一类的通过平均计算获得该类的预测参数值,从而获得场景里d个个体的预测参数值(d×k)。根据个体的预测参数值均值计算出k个模板实例的参数值,可以在模板坐标系中进行三维重构,从而实时确定模板实例,并通过映射函数计算出该模板实例的参数关键点坐标(m×3),同时由于模板实例坐标系默认以质心作为原点,
七、对零件进行6D位姿识别并进行抓取
输入:模板实例的参数关键点及质心、个体的预测参数关键点及质心输出:个体的6D位姿预测结果
模板实例的参数关键点坐标及质心和场景中每个个体的预测参数关键点及质心进行最小二乘拟合,即通过最小化L最小二乘函数,找到旋转矩阵R和平移矩阵t,从而获得场景中每个个体的6D位姿估计结果。
如图7所示,以六角螺母零件族为例的6D位姿识别应用流程和效果示意图。首先,获取实际场景的目标点云1,然后通过训练好的神经网络进行特征提取,获取逐点预测的质心2和逐点预测的参数关键点3,对逐点预测的参数关键点分类得到个体分割4,获得个体的预测参数关键点及质心5,根据逐点预测的质心和参数关键点,计算出逐点的预测参数值,个体分割后的所述点云通过平均计算获得个体的预测参数值,然后根据所述个体的预测参数值均值计算出模板实例的参数值6,进行三维重构,实时确定目标模板实例并计算出所述目标模板实例的参数关键点坐标及质心7;目标模板实例的参数关键点及质心7和个体的预测参数关键点及质心5一一对应,进行最小二乘拟合,获得6D位姿估计结果8。最后,将工业零件堆叠场景的6D位姿预测结果传给计算机单元,进行抓取位姿规划和抓取路径规划,计算机单元再通过机械臂单元完成工业零件的上下料或分拣。
如图8所示,是一种面向工业零件6D位姿估计的装置硬件结构示意图。该装置包括信号采集单元、计算机单元、执行单元三个部分,三者通过总线相互连接,包括但不限于数据总线、控制总线等。信号采集单元包括三维立体相机和传感器,三维立体相机包括但不限于Kinect DK、EnsensoN35等立体相机,用于获取工业堆叠场景的深度图像;传感器包括但不限于位移传感器、光电传感器、压力传感器等,用于实时反馈抓取状态信息,若出现机械臂抓空或碰撞等危险情况可实现自动紧急制动。计算机单元包括处理器和存储器,处理器包括但不限于单核中央处理器、多核中央处理器等,用于程序的控制和数据的运算执行如上所述的方法;存储器包括但不限于只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)等,用于数据和指令的存储。执行单元包括机械臂和末端执行器,机械臂包括但不限于UR机械臂(Universal Robots)、KUKA机械臂等,用于执行规划好的抓取路径;末端执行器包括但不限于Robotiq85双指夹爪、AirPick真空夹具等,用于执行规划好的抓取位姿。在计算机单元中进行数据处理,首先由信号采集单元获取场景点云和实时传感器信号,在场景点云上应用本技术方案所提出的神经网络进行个体分割、参数识别和6D位姿估计,然后机械臂运动规划和末端执行器抓取规划模块根据6D位姿识别结果和传感器提供的实时抓取状态信息,规划出抓取顺序、抓取路径和抓取位姿等信息给执行单元,完成工业零件的抓取,其中机械臂运动规划和末端执行器抓取规划模块包括但不限于开源式机器人操作***(Robot Operating System)等。
本申请实施例还提供一种控制装置,包括处理器和用于存储计算机程序的存储介质;其中,处理器用于执行所述计算机程序时至少执行如上所述的方法。
本申请实施例还提供一种存储介质,用于存储计算机程序,该计算机程序被执行时至少执行如上所述的方法。
本申请实施例还提供一种处理器,所述处理器执行计算机程序,至少执行如上所述的方法。
所述存储介质可以由任何类型的易失性或非易失性存储设备、或者它们的组合来实现。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,ErasableProgrammable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,ElectricallyErasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,FerromagneticRandom Access Memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,SynchronousStatic Random Access Memory)、动态随机存取存储器(DRAM,DynamicRandom AccessMemory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic RandomAccessMemory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double DataRateSynchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
在本申请所提供的几个实施例中,应该理解到,所揭露的***和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上内容是结合具体的优选实施方式对本发明所做的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。
Claims (10)
1.一种面向工业零件6D位姿估计的方法,其特征在于,包括如下步骤:
S1:在参数化模板上,根据几何特征,确定工业零件的参数值与参数关键点的映射关系,建立映射函数;对参数值进行均匀采样和排列组合,生成多个尺寸组合的实例,建立所述实例的三维模型库;
S2:基于所述三维模型库,通过物理引擎和渲染引擎的仿真生成堆叠数据集,基于所述实例的参数值和映射函数,计算所述实例的参数关键点,并通过6D位姿标签转换获得堆叠场景中工业零件的参数关键点标签和参数值标签,用于训练神经网络;
S3:实时识别时,将预处理后的实际场景的点云输入训练好的神经网络中,通过逐点回归网络预测每个点到其所属工业零件的质心和参数关键点的空间偏移向量;
S4:根据逐点预测的到质心的空间偏移向量和所述点云的坐标,计算逐点预测的质心,通过聚类算法实现堆叠场景的个体分割;
S5:根据逐点预测的到参数关键点的空间偏移向量和所述点云的坐标,计算逐点预测的参数关键点,个体分割后的所述点云通过平均计算获得个体的预测参数关键点;
S6:根据逐点预测的质心和参数关键点,计算出逐点的预测参数值,个体分割后的所述点云通过平均计算获得个体的预测参数值,然后根据所述个体的预测参数值均值计算出模板实例的参数值,进行三维重构,实时确定所述模板实例并计算出所述模板实例的参数关键点坐标及质心;
S7:所述模板实例的参数关键点及质心和个体的预测参数关键点及质心一一对应,进行最小二乘拟合,获得6D位姿估计结果。
3.如权利要求2所述的面向工业零件6D位姿估计的方法,其特征在于,获得堆叠场景中工业零件的所述参数关键点标签,同一个所述参数关键点具有至少一种取点方式时,选取仿真生成过程中距离仿真相机最近的参数关键点作为训练所述神经网络的参数关键点标签。
4.如权利要求3所述的面向工业零件6D位姿估计的方法,其特征在于,步骤S3包括如下步骤:
S31:获取堆叠于固定的物料箱内的工业零件的目标点云;
S32:将所述目标点云的坐标(np×3)输入到训练好的所述神经网络中,其中,np为目标点云里点的个数;
S33:由特征提取网络生成逐点特征向量(np×ne),其中,ne为逐点特征向量的维度;
S34:通过质心预测分支预测每个点到其所属所述工业零件的质心的空间偏移向量(np×3),同时通过参数关键点预测分支预测每个点到其所属所述工业零件的参数关键点的空间偏移向量(np×m×3),其中,m为参数关键点的个数;
S35:根据空间偏移向量的逐点预测结果和点云坐标,即可计算出逐点预测的质心(np×3)和参数关键点(np×m×3)。
6.如权利要求5所述的面向工业零件6D位姿估计的方法,其特征在于,所述聚类算法包括均值漂移Mean Shift聚类、基于密度的DBSCAN聚类、基于密度的OPTICS聚类;
通过所述聚类算法将质心的逐点预测结果(np×3)分成d类,属于同一类的预测结果通过平均计算获得该类的预测质心,由此获得d个工业零件的预测质心(d×3)。
7.如权利要求6所述的面向工业零件6D位姿估计的方法,其特征在于,根据个体分割结果获得分割后的点云,将参数关键点的逐点预测结果(np×m×3)进行分类,属于同一类的所述参数关键点通过平均计算获得该类的预测参数关键点,从而获得d个工业零件的预测参数关键点(d×m×3)。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-9任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010872000.6A CN112017226B (zh) | 2020-08-26 | 2020-08-26 | 面向工业零件6d位姿估计的方法及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010872000.6A CN112017226B (zh) | 2020-08-26 | 2020-08-26 | 面向工业零件6d位姿估计的方法及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112017226A true CN112017226A (zh) | 2020-12-01 |
CN112017226B CN112017226B (zh) | 2023-10-31 |
Family
ID=73503298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010872000.6A Active CN112017226B (zh) | 2020-08-26 | 2020-08-26 | 面向工业零件6d位姿估计的方法及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112017226B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112651378A (zh) * | 2021-01-08 | 2021-04-13 | 刘连英 | 紧固件二维图纸的标注信息识别方法、设备及介质 |
CN113409392A (zh) * | 2021-06-28 | 2021-09-17 | 广东工业大学 | 一种反光工件的6DoF位姿估计方法 |
CN115049730A (zh) * | 2022-05-31 | 2022-09-13 | 北京有竹居网络技术有限公司 | 零件装配方法、装置、电子设备及存储介质 |
CN115201833A (zh) * | 2021-04-08 | 2022-10-18 | 中强光电股份有限公司 | 物件定位方法及物件定位*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8837839B1 (en) * | 2010-11-03 | 2014-09-16 | Hrl Laboratories, Llc | Method for recognition and pose estimation of multiple occurrences of multiple objects in visual images |
US20190355150A1 (en) * | 2018-05-17 | 2019-11-21 | Nvidia Corporation | Detecting and estimating the pose of an object using a neural network model |
CN111251295A (zh) * | 2020-01-16 | 2020-06-09 | 清华大学深圳国际研究生院 | 一种应用于参数化零件的视觉机械臂抓取方法及装置 |
US20200226786A1 (en) * | 2019-01-11 | 2020-07-16 | Microsoft Technology Licensing, Llc | Detecting pose using floating keypoint(s) |
CN111445523A (zh) * | 2020-03-25 | 2020-07-24 | 中国农业科学院农业信息研究所 | 果实位姿计算方法、装置、计算机设备及存储介质 |
US20200257862A1 (en) * | 2019-01-22 | 2020-08-13 | Fyusion, Inc. | Natural language understanding for visual tagging |
-
2020
- 2020-08-26 CN CN202010872000.6A patent/CN112017226B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8837839B1 (en) * | 2010-11-03 | 2014-09-16 | Hrl Laboratories, Llc | Method for recognition and pose estimation of multiple occurrences of multiple objects in visual images |
US20190355150A1 (en) * | 2018-05-17 | 2019-11-21 | Nvidia Corporation | Detecting and estimating the pose of an object using a neural network model |
US20200226786A1 (en) * | 2019-01-11 | 2020-07-16 | Microsoft Technology Licensing, Llc | Detecting pose using floating keypoint(s) |
US20200257862A1 (en) * | 2019-01-22 | 2020-08-13 | Fyusion, Inc. | Natural language understanding for visual tagging |
CN111251295A (zh) * | 2020-01-16 | 2020-06-09 | 清华大学深圳国际研究生院 | 一种应用于参数化零件的视觉机械臂抓取方法及装置 |
CN111445523A (zh) * | 2020-03-25 | 2020-07-24 | 中国农业科学院农业信息研究所 | 果实位姿计算方法、装置、计算机设备及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112651378A (zh) * | 2021-01-08 | 2021-04-13 | 刘连英 | 紧固件二维图纸的标注信息识别方法、设备及介质 |
CN112651378B (zh) * | 2021-01-08 | 2021-10-15 | 唐旸 | 紧固件二维图纸的标注信息识别方法、设备及介质 |
CN115201833A (zh) * | 2021-04-08 | 2022-10-18 | 中强光电股份有限公司 | 物件定位方法及物件定位*** |
CN113409392A (zh) * | 2021-06-28 | 2021-09-17 | 广东工业大学 | 一种反光工件的6DoF位姿估计方法 |
CN115049730A (zh) * | 2022-05-31 | 2022-09-13 | 北京有竹居网络技术有限公司 | 零件装配方法、装置、电子设备及存储介质 |
CN115049730B (zh) * | 2022-05-31 | 2024-04-26 | 北京有竹居网络技术有限公司 | 零件装配方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112017226B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112017226A (zh) | 面向工业零件6d位姿估计的方法及计算机可读存储介质 | |
Kumra et al. | Antipodal robotic grasping using generative residual convolutional neural network | |
CN109870983B (zh) | 处理托盘堆垛图像的方法、装置及用于仓储拣货的*** | |
Sayour et al. | Autonomous robotic manipulation: real‐time, deep‐learning approach for grasping of unknown objects | |
Alonso et al. | Current research trends in robot grasping and bin picking | |
Wang et al. | Grasping pose estimation for SCARA robot based on deep learning of point cloud | |
Wang et al. | Dexgraspnet: A large-scale robotic dexterous grasp dataset for general objects based on simulation | |
CN111251295A (zh) | 一种应用于参数化零件的视觉机械臂抓取方法及装置 | |
Park et al. | Development of robotic bin picking platform with cluttered objects using human guidance and convolutional neural network (CNN) | |
Cordeiro et al. | Bin picking approaches based on deep learning techniques: A state-of-the-art survey | |
Hu et al. | A grasps-generation-and-selection convolutional neural network for a digital twin of intelligent robotic grasping | |
Zhuang et al. | Instance segmentation based 6D pose estimation of industrial objects using point clouds for robotic bin-picking | |
Sun et al. | Robotic grasping using semantic segmentation and primitive geometric model based 3D pose estimation | |
Militaru et al. | Object handling in cluttered indoor environment with a mobile manipulator | |
Zhang et al. | Affordance-driven next-best-view planning for robotic grasping | |
Zhang et al. | Digital twin-enabled grasp outcomes assessment for unknown objects using visual-tactile fusion perception | |
CN113551661A (zh) | 位姿识别、轨迹规划方法、装置、***、存储介质及设备 | |
Chaudhuri et al. | Adversarial surround localization and robust obstacle detection with point cloud mapping | |
Sahu et al. | Shape features for image-based servo-control using image moments | |
Wang et al. | An environment state perception method based on knowledge representation in dual-arm robot assembly tasks | |
Fan et al. | A high-resolution network-based approach for 6D pose estimation of industrial parts | |
RU2745380C1 (ru) | Способ и система захвата объектов с помощью роботизированного устройства | |
Tekden et al. | Grasp transfer based on self-aligning implicit representations of local surfaces | |
Liang et al. | Visual reconstruction and localization-based robust robotic 6-DoF grasping in the wild | |
Jia et al. | Mechanical arm grasping and target recognition strategy based on the coarse-to-fine algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |