焊缝运动轨迹的自动示教方法和装置与流程

文档序号:17940814发布日期:2019-06-18 23:04阅读:243来源:国知局
焊缝运动轨迹的自动示教方法和装置与流程

本申请涉及机器人控制技术领域,具体涉及一种焊缝运动轨迹的自动示教方法和装置。



背景技术:

焊接机器人在当前的工业生产中应用特别广泛,目前在所有的工业机器人中,用于焊接的机器人占比可达40%以上。

用焊接机器人进行作业时,必须预先对机器人发出指令,规定机器人应该完成的动作和作业的具体内容,这个指示过程称之为对机器人的示教,或者称之为对机器人的编程。对机器人的示教内容通常存储在机器人的控制装置内,通过存储内容的再现,机器人就能实现人们所要求的动作和要求人们赋予的作业内容。

示教内容主要由两部分组成,一是机器人焊缝运动轨迹的离线示教,二是机器人作业条件的离线示教。机器人焊缝运动轨迹的离线示教主要是对为了完成某一作业,焊丝端部所要运动的轨迹,包括运动类型和运动速度的示教。机器人作业条件的示教主要是为了获得好的焊接质量,对焊接条件进行示教,包括被焊金属的材质、板厚、对应焊缝形状的焊枪姿势、焊接参数、焊接电源的控制方法等。

相关技术中,上述机器人焊缝运动轨迹离线示教方法针对不同焊缝,需要通过人工将焊缝焊接轨迹全部示教出来。当焊接工件的结构或焊缝形状及位置变化较大时,离线示教会耗费大量的人力成本和时间成本;由于加工误差的存在,同一种结构工件及焊缝也存在一定差异,使用离线示教的轨迹可能会影响焊接质量。

近年来,深度学习在图像识别、立体视觉等领域取得了突飞猛进的成果。传统的焊接机器人迫切需要采用最新的ai技术来提高劳动生产率,提高焊接质量。



技术实现要素:

为至少在一定程度上克服相关技术中存在的问题,本申请提供一种焊缝运动轨迹的自动示教方法和装置。

根据本申请实施例的第一方面,提供一种焊缝运动轨迹的自动示教方法,包括:

获取待焊接物体的彩色图像和三维点云图像;

对所述彩色图像进行处理,定位出焊缝区域;

根据所述彩色图像与所述三维点云图像之间的对应关系,在所述三维点云图像中提取出焊缝区域的局部点云图像;

根据提取的所述局部点云图像确定焊缝的起点和终点。

进一步地,所述对所述彩色图像进行处理,包括:

使用卷积神经网络对所述彩色图像进行处理,所述卷积神经网络是预先训练的卷积神经网络模型。

进一步地,所述使用卷积神经网络对所述彩色图像进行处理,包括:

通过第一神经网络对所述彩色图像进行处理,得到焊缝区域在所述彩色图像中的矩形区域位置;

通过第二神经网络对所述矩形区域内的图像进行处理,得到焊缝区域。

进一步地,所述第一神经网络为物体检测神经网络,所述第二神经网络为物体分割神经网络。

进一步地,所述彩色图像与所述三维点云图像之间的对应关系为:像素坐标之间的对应关系。

进一步地,所述在所述三维点云图像中提取出焊缝区域的局部点云图像,包括:

将所述彩色图像的像素的坐标转换为齐次坐标形式;

根据所述彩色图像与深度图像之间的对应关系,将所述彩色图像的像素的齐次坐标转换为空间坐标;

根据相机的自身参数,将所述空间坐标转换为所述三维点云图像的像素的齐次坐标;

根据所述三维点云图像的像素的齐次坐标提取出焊缝区域的局部点云图像;

其中,所述深度图像与所述三维点云图像是通过同一个摄像头获取的。

进一步地,所述根据提取的所述局部点云图像确定焊缝的起点和终点,包括:

对所述局部点云图像进行去噪处理;

对去噪处理后的图像进行平面分割,得到两个平面方程;

计算两个平面方程的交线的方程,并转化为该交线对应的向量;

定位出所述局部点云图像中沿所述向量方向的最大和最小值点;

计算出以所述向量为法向量,分别过上述最大和最小值点的两个平面;

计算出两个平面与所述交线的两个交点;

将两个交点中坐标x方向离焊接机器人较近的交点作为焊缝的起点,另一个交点作为焊缝的终点。

进一步地,所述对所述局部点云图像进行去噪处理,包括:

对所述局部点云图像进行滤波,去除其中的无效点及离群点;

对滤波后的图像进行下采样。

进一步地,所述对去噪处理后的图像进行平面分割,包括:

使用ransac算法将点云图像分割成两个平面。

根据本申请实施例的第二方面,提供一种焊缝运动轨迹的自动示教装置,包括:

获取模块,用于获取待焊接物体的彩色图像和三维点云图像;

定位模块,用于对所述彩色图像进行处理,定位出焊缝区域;

提取模块,用于根据所述彩色图像与所述三维点云图像之间的对应关系,在所述三维点云图像中提取出焊缝区域的局部点云图像;

确定模块,用于根据提取的所述局部点云图像确定焊缝的起点和终点。

本申请的实施例提供的技术方案可以包括以下有益效果:

该方法针对不同摆放姿态、不同焊缝形状的角接直焊缝焊接物体,均能自动提取出待焊接焊缝,避免了焊接过程中大量的人工示教重复操作。该方法使用人工智能和传统方法结合的技术方案,大大增强了焊缝检测和定位的精确度和鲁棒性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1是根据一示例性实施例示出的一种焊缝运动轨迹的自动示教方法的流程图。

图2是根据一示例性实施例示出的一种深度图像及其数据结构。

图3是根据一示例性实施例示出的一种三维点云图像及其数据结构。

图4是物体检测神经网络(faster-rcnn)的结构示意图。

图5是物体分割神经网络(mask-rcnn)的结构示意图。

图6是faster-rcnn检测得到的结果示意图。

图7是mask-rcnn分割得到的结果示意图。

图8是根据一示例性实施例示出的一种焊缝运动轨迹的自动示教装置的电路框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

图1是根据一示例性实施例示出的一种焊缝运动轨迹的自动示教方法的流程图。如图所示,该方法包括以下步骤:

步骤s1:获取待焊接物体的彩色图像和三维点云图像;

步骤s2:对所述彩色图像进行处理,定位出焊缝区域;

步骤s3:根据所述彩色图像与所述三维点云图像之间的对应关系,在所述三维点云图像中提取出焊缝区域的局部点云图像;

步骤s4:根据提取的所述局部点云图像确定焊缝的起点和终点。

本发明针对焊接机器人,设计了一种通过立体视觉及人工智能技术实现焊缝自动检测定位,从而完成焊缝自动示教的方法。

该方法针对不同摆放姿态、不同焊缝形状的角接直焊缝焊接物体,均能自动提取出待焊接焊缝,避免了焊接过程中大量的人工示教重复操作。该方法使用人工智能和传统方法结合的技术方案,大大增强了焊缝检测和定位的精确度和鲁棒性。

在步骤s1中,获取图像需要相应的视觉传感器。本发明的一些实施例中,所使用的视觉传感器为立体相机,该立体相机可得到的数据包括rgb彩色图像、深度图像、三维点云图像。需要说明的是,该立体相机包括rgb摄像头和3d摄像头,rgb摄像头用于获取彩色图像,3d摄像头用于获取深度图像和三维点云图像。

图2是根据一示例性实施例示出的一种深度图像及其数据结构。深度图像的数据结构定义为一个[x,y]的矩阵,其中x和y分别代表深度图中某一点的平面位置,而z为数据本身。需要说明的是,深度图像与彩色图像的像素位置是一一对应的。在立体相机获取彩色图像和深度图像之后,该立体相机内部会自动将彩色图像和深度图像之间的像素进行对应。

图3是根据一示例性实施例示出的一种三维点云图像及其数据结构。三维点云图像的跟深度图像类似,但是存储的数据为[x,y,z]信息。

本发明是针对角接形成的直焊缝设计的。立体相机针对各种不同形状、摆放位置多变的焊接工件,得到上述传感数据,从而自动检测并定位其中的角接直焊缝,得到该焊缝的起点和终点,生成焊接机器人焊枪沿焊缝运动时起点和终点的位置信息,完成针对该焊缝的自动示教。本发明的总体思路是:

(1)首先,使用卷积神经网络对焊接工件进行检测,针对不同形状的工件,采用物体检测与物体分割神经网络相结合的方案,提取其中的关键特征,在图像中完成焊接工件的焊缝区域的检测及初步定位。

(2)然后,采用深度神经网络与传统机器学习方法相结合的技术方案,完成在roi区域内焊缝三维点云图像的进一步划分。

(3)最后,根据焊缝的拓扑结构和先验知识,完成待焊接焊缝的精确定位,得到该焊缝的起点和终点的位置信息。

上述过程,从整体到局部,层层深入,递进地完成了焊接工件中焊缝的检测和定位,实现了焊接机器人焊缝的自动示教。

进一步地,所述对所述彩色图像进行处理,包括:

使用卷积神经网络对所述彩色图像进行处理,所述卷积神经网络是预先训练的卷积神经网络模型。

进一步地,所述使用卷积神经网络对所述彩色图像进行处理,包括:

通过第一神经网络对所述彩色图像进行处理,得到焊缝区域在所述彩色图像中的矩形区域位置;

通过第二神经网络对所述矩形区域内的图像进行处理,得到焊缝区域。

进一步地,所述第一神经网络为物体检测神经网络,所述第二神经网络为物体分割神经网络。

焊缝区域的提取过程是:

焊缝区域提取使用物体检测神经网络和物体分割神经网络相结合的技术方案,首先使用faster-rcnn网络对rgb彩色图像中焊缝区域进行检测,得到焊缝区域在图像中的矩形区域位置;然后使用mask-rcnn网络在上面已经得到的矩阵区域图像中,将焊缝区域正确地分割得到。faster-rcnn和mask-rcnn网络不是本发明的内容,将这两者分步骤应用于焊缝区域的提取为本发明的内容,faster-rcnn和mask-rcnn的神经网络结构如图4和5所示。

其中faster-rcnn检测得到的结果如图6所示,图中虚线框中的区域为faster-rcnn检测输出的结果区域。

mask-rcnn分割得到的结果如图7所示,图中虚线框中的区域为mask-rcnn分割输出的结果区域。

进一步地,所述彩色图像与所述三维点云图像之间的对应关系为:像素坐标之间的对应关系。

进一步地,所述在所述三维点云图像中提取出焊缝区域的局部点云图像,包括:

将所述彩色图像的像素的坐标转换为齐次坐标形式;

根据所述彩色图像与深度图像之间的对应关系,将所述彩色图像的像素的齐次坐标转换为空间坐标;

根据相机的自身参数,将所述空间坐标转换为所述三维点云图像的像素的齐次坐标;

根据所述三维点云图像的像素的齐次坐标提取出焊缝区域的局部点云图像;

其中,所述深度图像与所述三维点云图像是通过同一个摄像头获取的。

进一步地,所述根据提取的所述局部点云图像确定焊缝的起点和终点,包括:

对所述局部点云图像进行去噪处理;

对去噪处理后的图像进行平面分割,得到两个平面方程;

计算两个平面方程的交线的方程,并转化为该交线对应的向量;

定位出所述局部点云图像中沿所述向量方向的最大和最小值点;

计算出以所述向量为法向量,分别过上述最大和最小值点的两个平面;

计算出两个平面与所述交线的两个交点;

将两个交点中坐标x方向离焊接机器人较近的交点作为焊缝的起点,另一个交点作为焊缝的终点。

进一步地,所述对所述局部点云图像进行去噪处理,包括:

对所述局部点云图像进行滤波,去除其中的无效点及离群点;

对滤波后的图像进行下采样。

进一步地,所述对去噪处理后的图像进行平面分割,包括:

使用ransac算法将点云图像分割成两个平面。

提取出焊缝区域之后,针对rgb彩色图像中分割得到的区域,进一步提取得到其中的焊缝直线方程,具体过程为:

(1)根据rgb彩色图像中分割得到的焊缝区域,确定对应的三维点云图像中的焊缝区域。设(x0,y0)为rgb彩色图像中焊缝区域中的一个像素坐标,将该坐标写为齐次坐标向量形式prgb=[x0,y0,1.0],trgb为rgb摄像头的内参矩阵,trgb-1为trgb的逆矩阵,该像素坐标对应的深度图像上的深度数为d0,则将该像素坐标转换为相对rgb摄像头的空间坐标prgb3d如下:

prgb3d=d0·trgb-1·prgb

得到prgb3d的形式为[x1,y1,z1],转换为齐次坐标形式为prgb3d=[x1,y1,z1,1.0],trgb23d为rgb摄像头到3d摄像头的外参矩阵,得到该点相对于3d摄像头的空间坐标p3d3d如下:

p3d3d=trgb23d·prgb3d

得到p3d3d的形式为[x2,y2,z2,1.0],转换为非齐次坐标形式为p3d3d=[x2,y2,z2],t3d为3d摄像头的内参矩阵,得到对应三维点云图像中的像素的齐次坐标p3d如下:

p3d=t3d·p3d3d

(2)对得到的三维点云图像区域进行滤波,去除其中的无效点及离群点,并对该点云图像区域进行下采样,使得后续步骤可以更快完成,保证算法的实时性。

(3)对下采样后的点云图像进行平面分割,使用ransac算法将该区域点云图像分割成两个平面,得到两个平面方程。

(4)计算得到上述两个平面的交线方程,并转化为该交线方程对应的向量。

(5)得到该点云图像区域沿上述向量方向的最大和最小值点,并得到以上述交线向量为法向量,过上述最大和最小值点的两个平面。

(6)得到最大值点平面和最小值点平面与上述交线的交点,这两个交点就是角接直焊缝的两个顶点。

(7)将这两个顶点中坐标x方向离焊接机器人较近的点作为焊缝的起点,另外的点作为焊缝的终点。

图8是根据一示例性实施例示出的一种焊缝运动轨迹的自动示教装置的电路框图。参照图8,该装置包括:

获取模块,用于获取待焊接物体的彩色图像和三维点云图像;

定位模块,用于对所述彩色图像进行处理,定位出焊缝区域;

提取模块,用于根据所述彩色图像与所述三维点云图像之间的对应关系,在所述三维点云图像中提取出焊缝区域的局部点云图像;

确定模块,用于根据提取的所述局部点云图像确定焊缝的起点和终点。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本发明针对焊接机器人,设计了一种通过立体视觉及人工智能技术实现焊缝自动检测定位,从而完成焊缝自动示教的方法。

(1)针对不同摆放姿态、不同焊缝形状的角接直焊缝焊接物体,均能自动提取出待焊接焊缝,避免了焊接过程中大量的人工示教重复操作。

(2)使用人工智能和传统方法结合的技术方案,大大增强了焊缝检测和定位的精确度和鲁棒性。

(3)采用从整体到局部,层层递进提取焊缝的方法,符合精确定位的基本规律,达到了可在工业中应用的效果。

可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。

需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1