CN114187312A - 目标物的抓取方法、装置、系统、存储介质及设备 - Google Patents
目标物的抓取方法、装置、系统、存储介质及设备 Download PDFInfo
- Publication number
- CN114187312A CN114187312A CN202010884213.0A CN202010884213A CN114187312A CN 114187312 A CN114187312 A CN 114187312A CN 202010884213 A CN202010884213 A CN 202010884213A CN 114187312 A CN114187312 A CN 114187312A
- Authority
- CN
- China
- Prior art keywords
- grabbing
- target object
- image
- information
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- 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/10004—Still image; Photographic image
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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
-
- 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/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及目标物的抓取方法、装置、系统、存储介质及设备。其中,目标物的抓取方法包括:获取目标物的目标物图像;将目标物图像输入识别模型,以得到目标物的特征信息;基于特征信息,生成抓取指令,目标物通过抓取指令控制执行器抓取目标物。采用本申请的技术方案通过基于人工智能的方法识别目标物的特征信息,再基于特征信息生成抓取指令,可以提高目标物的抓取成功率;另外,降低了更换元件的成本,提高了效率。
Description
技术领域
本申请涉及目标物的抓取技术领域,特别是涉及一种目标物的抓取方法、装置、系统、存储介质及设备。
背景技术
随着自动化或半自动化的发展,目标物的抓取在各个行业得到广泛应用,比如,用于实现目标物的供料,以插机等工业自动化技术领域为例,插机是指控制执行器将电子元件自动插入到PCB对应的插孔上,因此,需要首先控制执行器抓取电子元件,然后再带动电子元件插入到对应的插孔内,上述控制执行器抓取电子元件的过程即称为供料。这些电子元件在来料时位置往往存在一定的差异,比如:散状放置或者由供料带供应,因此要识别并成功抓取往往存在一定困难;另外,各种目标物往往千差万别,即使同一种类的目标物也会存在细微差异,而现有的自动化供料中,每次目标物哪怕发生细微变化时,都需要进行硬件的和/或软件的更改,提高了转换的成本,降低了工作效率。
发明内容
有鉴于此,本发明提供一种目标物的抓取方法、装置、系统、存储介质及设备。
本发明第一方面提供一种目标物的抓取方法,所述抓取方法包括:
获取所述目标物的目标物图像;
将所述目标物图像输入识别模型,以得到所述目标物的特征信息;
基于所述特征信息,生成抓取指令,通过所述抓取指令控制执行器抓取所述目标物。
在一个实施例中,所述目标物的特征信息为:所述目标物的位置信息、所述目标物的边缘图和/或所述目标物的关键标记的信息。
在一个实施例中,当所述目标物图像中包括多个目标物,所述将所述目标物图像输入识别模型之前还包括:
对所述目标物图像中的所述目标物提取边界框,使得输入所述识别模型的所述目标物图像为包括单个所述目标物的边界框图。
在一个实施例中,所述将所述目标物图像输入识别模型之前还包括:
对所述目标物图像中的所述目标物提取边缘,使得输入所述识别模型的所述目标物图像为所述目标物的边缘图。
在一个实施例中,所述基于所述特征信息,生成抓取指令之前包括:
基于得到的所述特征信息进行转换,以得到转换后的所述特征信息。
在一个实施例中,当所述特征信息为归属于多个目标物的所述目标物图像的全局关键标记的信息;所述基于得到的所述特征信息进行转换,以得到转换后的所述特征信息包括:
聚类所述全局关键标记,以得到归属于单个所述目标物的一组关键标记的所述特征信息。
在一个实施例中,所述特征信息为左图中的多组关键标记和右图中的多组关键标记;所述基于得到的所述特征信息进行转换,以得到转换后的所述特征信息包括:
将所述左图中的关键标记与所述右图中的关键标记遍历匹配,筛选出极线误差小于阈值的关键标记对;
将所述关键标记对投影,得到关键标记的姿态,使得所述转换后的所述特征信息为所述关键标记的姿态;和/或
当所述关键标记的姿态为多组或多个时,分别求取所述多组或多个关键标记的姿态中沿预设方向的分量与基准分量之间的差异;
将所述差异与所述预设标准比较,筛选出符合预设标准的一组或一个关键标记的姿态,使得所述转换后的所述特征信息为所述关键标记的姿态。
在一个实施例中,当基于所述识别模型得到的特征信息为关键标记的位置信息;所述基于得到的所述特征信息进行转换,得到转换后的所述特征信息包括:
基于所述关键标记的位置信息,求取所述目标物的位置信息,使得所述转换后的所述特征信息为所述目标物的位置信息。
在一个实施例中,当所述特征信息为所述关键标记或所述目标物的姿态;所述基于所述特征信息,生成抓取指令包括:
基于所述特征信息,以及基准抓取姿态,生成轨迹规划指令;其中,所述基准抓取姿态为基准关键标记或基准目标物在机械手的末端坐标系下的姿态;或基于所述特征信息,以及基准抓取姿态,求取抓取姿态;其中,所述基准抓取姿态为基准关键标记或基准目标物在机械手的末端坐标系下的姿态;
生成抓取指令,以控制所述执行器运动到所述抓取姿态,并抓取所述目标物。
在一个实施例中,所述求取抓取姿态包括:
求取所述关键标记或所述目标物在机械手的基坐标系下的姿态;
基于所述基准抓取姿态,求取所述抓取姿态;或
将所述基准抓取姿态转换为预设坐标系下的姿态;
将所述基准关键标记或所述基准目标物在所述预设坐标系下的姿态与所述关键标记或所述目标物在预设坐标系下的姿态进行匹配,得到最优的变换关系;
基于所述变换关系,求取所述抓取姿态;或
当所述特征信息为包括所述关键标记的2D图像,将所述2D图像与基准图的图库进行匹配,以得到所述抓取姿态。
在一个实施例中,所述特征信息为所述关键标记或所述目标物的位置信息;所述基于所述特征信息,生成抓取指令包括:
基于所述特征信息,结合所述特征信息与抓取点的关联关系,生成抓取姿态;
基于所述抓取姿态,生成所述抓取指令;或
基于所述特征信息,生成抓取姿态;
基于所述抓取姿态,生成所述抓取指令。
在一个实施例中,所述基于所述特征信息,生成抓取指令包括:
将所述特征信息输入轨迹规划模型,以得到所述抓取指令。
在一个实施例中,当所述特征信息为所述关键标记的信息,而所述关键标记的信息为执行器的抓取点的信息;所述基于所述特征信息,生成抓取指令为:
基于所述执行器的抓取点的信息,生成所述抓取指令。
在一个实施例中,所述目标物为异形元件。
本发明第二方面提供一种目标物的抓取装置,所述目标物的抓取装置包括:
图像获取模块,用于获取所述目标物的目标物图像;
信息识别模块,用于将所述目标物图像输入识别模型,以得到所述目标物的特征信息;
指令生成模块,用于基于所述特征信息,生成抓取指令,通过所述抓取指令控制执行器抓取所述目标物。
本发明第三方面提供一种目标物的抓取系统,所述抓取系统包括:执行器、图像传感器和控制装置;
所述控制装置分别通信连接所述执行器和所述图像传感器;
所述图像传感器,用于采集所述目标物图像;
控制装置,用于获取所述目标物的目标物图像;将所述目标物图像输入识别模型,以得到所述目标物的特征信息;基于所述特征信息,生成抓取指令,通过所述抓取指令控制执行器抓取所述目标物。
本发明第四方面提供给一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上面所述的目标物的抓取方法。
本发明第五方面提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上面所述的目标物的抓取方法。
通过基于人工智能的方法识别目标物的特征信息,再基于特征信息生成抓取指令,可以提高目标物的抓取成功率;另外,降低了更换元件的成本,提高了效率。
另外,基于人工智能的方法还能够同时筛选出属于正确摆放位置范围内的目标物,将不正确的摆放位置的目标物排除,可以帮助提高执行器在抓取目标物后完成后续动作的成功率。
附图说明
图1A为一个实施例中抓取系统的第一结构框图;图1B为一个实施例中抓取系统的第二结构框图;图1C为一个实施例中抓取系统的第三结构框图;
图2为一个实施例中计算机设备的第一结构框图;
图3A为一个实施例中左元件图像和右元件图像;图3B为一个实施例中加了边界框后的左元件图像和右元件图像;图3C为一个实施例中极线校正后的左元件图像和右元件图像;图3D为一个实施例中标注关键点后的左元件图像和右元件图像;图3E为一个实施例中包括单个异形元件的左边界框图和右边界框图;图3F为一个实施例中标注全局的关键点后的左元件图像和右元件图像;图3G为一个实施例中异形元件的点云图;
图4为一个实施例中目标物的抓取方法的第一流程示意图;
图5为一个实施例中目标物的抓取方法的第二流程示意图;
图6为一个实施例中目标物的抓取方法的第三流程示意图;
图7为一个实施例中目标物的抓取方法的第四流程示意图;
图8A为一个实施例中目标物的抓取方法的第五流程示意图;图8B为一个实施例中目标物的抓取方法的第六流程示意图;
图9为一个实施例中目标物的抓取方法的第七流程示意图;
图10为一个实施例中目标物的抓取方法的第八流程示意图;
图11为一个实施例中目标物的抓取方法的第九流程示意图;
图12为一个实施例中目标物的抓取方法的第十流程示意图;
图13为一个实施例中目标物的抓取方法的第十一流程示意图;
图14为一个实施例中目标物的抓取方法的第十二流程示意图;
图15为一个实施例中目标物的抓取方法的第十三流程示意图;
图16A为一个实施例中目标物的抓取方法的第十四流程示意图;图16B为一个实施例中目标物的抓取方法的第十五流程示意图;图16C为一个实施例中目标物的抓取方法的第十六流程示意图
图17A为一个实施例中基于特征信息以及基准抓取姿态求取执行器的抓取预备姿态方法的第一流程示意图;图17B为一个实施例中基于特征信息以及基准抓取姿态求取执行器的抓取预备姿态方法的第一流程示意图;
图18A为一个实施例中机械手、相机和目标物的坐标系变换关系的第一示意图;图18B为一个实施例中机械手和目标物的坐标系变换关系的第一示意图;图18C为一个实施例中机械手、相机和目标物的坐标系变换关系的第二示意图;图18D为一个实施例中机械手和目标物的坐标系变换关系的第二示意图;图18E为一个实施例中机械手、相机和目标物的坐标系变换关系的第三示意图;图18F为一个实施例中机械手、相机和目标物的坐标系变换关系的第四示意图;图18G为一个实施例中位于抓取姿态的机械手的第一示意图;
图19为一个实施例中目标物的抓取装置的第一结构框图;
图20为一个实施例中目标物的抓取装置的第二结构框图;
图21为一个实施例中目标物的抓取装置的第三结构框图;
图22为一个实施例中目标物的抓取装置的第四结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本发明实施例提供的目标物的抓取方法、装置、系统、存储介质及设备,可以应用于目标物的供料技术领域,通过基于人工智能的方法识别目标物的特征信息,再基于特征信息生成抓取指令,可以提高目标物的抓取成功率;另外,降低了更换元件的成本,提高了效率。需要说明的是,目标物可以为各种类型的目标物。在一个实施例中尤其适用于散状目标物,即不按照一定规律散乱摆放的物体,因为散状物的位置没有一定的规律,更难于成功抓取;或者尤其适用于异形元件,因为异形元件相对于规则形状目标物更难于准确识别和抓取,具体的,异形元件可以是指形状不是十分规整的目标物,比如:火牛、电感、线圈等电子元件、弹簧、小杯等等。
如图1A-1C所示,本发明实施例提供一种抓取系统10,该抓取系统10包括:执行器11、图像传感器12和控制装置13。
具体的,执行器11可以为直线电机或线性模组构建的XYZ平台等类似执行机构,气动、液压等或以气动、液压等传动方式构建的执行机构或者机械手等等。机械手可以为各种类型的机械手,比如:四轴机械手、六轴机械手等串联机械手或并联机械手。以串联机械手为例,串联机械手可以为多个驱动关节和连杆依次串联而成。位于机械手的末端的驱动关节的输出端设置一个或者多个末端工具111。末端工具可以是吸盘或者夹爪等等,通过末端工具抓取目标物。为方便理解,本具体实施例以执行器11为机械手11为例进一步详细说明。
需要说明的是,后面实施例提到的机械手的坐标系可以为:机械手的末端坐标系、机械手的工具坐标系或机械手的基坐标系。
具体的,机械手的末端坐标系可以指机械手的末端坐标系,比如:以位于机械手的末端的驱动关节的输出端的法兰盘的中心为原点建立的坐标系;机械手的工具坐标系可以指位于机械手的末端的工具的坐标系,比如:以工具的中心为原点建立的坐标系;机械手的基坐标系可以指机械手的基座坐标系,比如:以机械手的基座的中心为坐标系原点建立的坐标系。
图像传感器可以包括:照相机、摄像机、扫描仪或其他带有相关功能的设备(手机、电脑等)等。具体的,图像传感器可以为2D图像传感器,2D图像传感器采集2D图像数据(比如:RGB图像、黑白图像或灰度图像);或为3D图像传感器(比如:3D激光传感器、深度传感器)等,3D图像传感器采集3D图像数据,3D图像传感器的工作原理是通过向目标场景发射能量,再结合目标物反射回来的能量进行分析从而完成物体的3D信息的采集,比如:3D激光传感器可以是按照一定时间间隔向目标场景发射激光,并记录各个扫描点的信号从激光雷达到被测场景中的物体,随后又经过物体反射回到激光雷达的相隔时间,据此推算出物体表面与激光雷达之间的距离。
具体的,图像传感器的数量可以根据需要设计为一组或者多组,每组图像传感器可以包括一个或者多个图像传感器。图像传感器12可以固定在机械手11上(如图1A所示)和/或固定在机械手11外需要位置处(如图1B所示)。根据预先进行的机械手和图像传感器的标定结果,可以将图像传感器坐标系下的姿态信息和机械手坐标系下的姿态信息进行相互转换。为方便理解,本具体实施例以图像传感器固定在机械手上为例,进一步详细说明。
示例性的,如图1A或1B所示,本具体实施例的抓取系统可以包括两个2D照相机121、122(简称“双目相机”或“相机”)。通过对双目相机分别采集的左元件图像和右元件图像(以下简称“左图”和“右图”)进行匹配,分别得到左图和右图中的匹配点对,再基于三角测量的方法进行投影,可以得到左图和右图中的某一个匹配点对(比如:本实施例中的关键点)在图像传感器坐标系下的三维空间的姿态信息,或者进而生成整个异形元件的3D点云图(如图3G所示)。除此之外,如图1C所示,在一个实施例中,也可以只包括一个相机121,则可以预先设定多张参考图像,将相机121采集的元件图像与参考图像匹配,从而得到匹配后元件图像中的某个点在图像传感器坐标系下的三维空间的姿态信息;或者也可以直接基于获取的2D相机采集的2D图像得到关键点等的2D坐标信息。为方便理解,本具体实施例以双目相机为例进一步详细说明。
需要说明的是,姿态信息可以为针对目标物的预设坐标系的3d坐标;刚体在3维空间的运动可以用3d坐标(共6个自由度)描述,具体的,可以分为旋转和平移,各为3个自由度。刚体在3维空间的平移是普通的线性变换,可以使用一个3x1的向量描述平移位置;而旋转姿态常用的描述方式包括但不限于:旋转矩阵、旋转向量、四元数、欧拉角和李代数。
需要说明的是,对于2D图像传感器而言,为确定空间物体表面某点的三维几何姿态与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是图像传感器的成像参数,预先对每个图像传感器进行标定,可以求出图像传感器的内、外参数和/或畸变参数等成像参数。
需要说明的是,对于双目相机等而言,成像参数还可以包括结构参数,通常需要确定一个主相机,通过各个相机彼此之间进行标定,可以告诉其它相机怎么经过旋转和平移到达主相机现在位置。以双目相机为例,通过结构参数,便可以把左右相机获取的图像的每一个像素点之间的关系用数学语言描述,因此本实施例中所述的图像传感器坐标系下的姿态信息通常都是指目标物在主相机坐标系下的姿态信息。
控制装置13分别通过有线或者无线的方式通信连接机械手11和图像传感器12。
无线方式可以包括但不限于:3G/4G/5G、WIFI、蓝牙、WiMAX、Zigbee、UWB(ultrawideband),以及其它现在已知或将来开发的无线连接方式。
控制装置13根据预先固定的程序,结合人工输入的信息、参数或者机械手11、图像传感器12等采集的数据等生成数据、程序指令等,通过程序指令控制机械手11完成相应的抓取等动作。具体的,控制装置14可以位于机械手11外(如图1A-1C所示),也可以部分或全部位于机械手11上,本具体实施例不做限定。
具体的,控制装置13可以为可编程逻辑控制器(Programmable LogicController,PLC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、计算机终端(Personal Computer,PC)、工业控制计算机终端(Industrial Personal Computer,IPC)、数字信号处理器(Digital Signal Processer,DSP)、微控制单元(Microcontrollerunit,MCU)、服务器或包括终端和服务器的系统,并通过终端和服务器的交互实现等等。有关控制装置的具体限定可以参见下面实施例中有关目标物的抓取方法的限定。
本领域技术人员可以理解,图1A-1C和图2中示出的结构,仅仅是与本申请方案相关部分的结构框图,并不构成对本申请方案所应用于其上的系统、计算机设备、等的限定,具体的系统、计算机设备等可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
如图4所示,在一个实施例中,提供一种目标物的抓取方法,以该方法应用于图1A、1B所示的系统中的控制装置13为例,该抓取方法可以包括以下步骤:
步骤S110获取目标物的目标物图像;
步骤S120将目标物图像输入识别模型,以得到目标物的特征信息;
步骤S130基于特征信息,生成抓取指令,通过抓取指令控制执行器抓取目标物。
通过基于人工智能的方法识别目标物的特征信息,再基于特征信息生成抓取指令,可以提高目标物的抓取成功率;另外,降低了更换目标物的成本,提高了效率。
为方便理解,下面以目标物为异形元件中的电感,目标物图像为元件图像为例,对上述方法步骤进行进一步详细说明。
步骤S110获取目标物的目标物图像;
如图1A所示,示例性的,控制装置获取通过双目相机121、122分别采集并发送的左元件图像和右元件图像(以下简称“左图”和“右图”),左图和右图中可以只包括一个异形元件,或者往往包括多个异形元件(如图3A所示)
如图5所示,在一个实施例中,当元件图像中包括多个异形元件时,在步骤S120之前可以包括:
步骤S140对目标物图像中的目标物提取边界框,使得输入识别模型的目标物图像为包括单个目标物的边界框图;
通过对元件图像中的异形元件提取边界框,使得输出识别模型的元件图像为单个异形元件的边界框图(如图3E所示),这样可以方便识别模型对异形元件的关键点或异形元件的位置信息等特征信息的识别。
具体的,可以基于图像处理、人工智能、手动、基于激光测量等方法生成包围每个异形元件的2D或3D边界框(ROI)(如图3B所示)。
以人工智能方法为例,可以把目标物图像输入某些人工智能模型中,输出标注包围目标物的ROI的目标物图像。具体的,人工智能模型可以但不限于是:YOLO或者具有类似功能的其它模型。
另外,由于执行器带动抓取后的目标物执行后续操作时需要基于目标物的某些特定范围内的姿态,而基于YOLO等模型的人工智能的方法还能够同时筛选出为实现上述特定范围内的姿态而处于正确初始摆放位置范围内的目标物,将处于不正确摆放位置范围内的目标物筛选出来,从而提高基于抓取动作的后续操作的成功率。
示例性的,以插机动作为例,插机动作即指将抓取后的异形元件插入电路板的目标插孔内,为完成后续的插机动作,需要异形元件的引脚统一朝向某个预设方向范围内,一旦引脚方向超出预设方向的范围,由于执行器自身运动范围的限制,可能造成后续插机动作的失败,甚至损坏被插电路板等,通过上述方法可以将处于不正确摆放位置范围内的元件筛选出来,从而提高后续插机动作的成功率。
如图6所示,在一个实施例中,步骤S120之前还可以包括:
步骤S150对目标物图像中的目标物提取边缘,使得输入识别模型的目标物图像为目标物的边缘图。
具体的,边缘图的提取可以基于图像处理的方法、人工智能的方法等。通过基于边缘图输入识别模型,将原图中多余的背景等去除,可以帮助提高模型识别的精度。
比如:可以基于某些算子(比如:Canny算子、Sobel算子或robert算子)对图像进行处理,然后经过阈值处理得到边缘图;或者基于某些已经开发的软件提取边缘,比如:Matlab;或可以将表示边缘信息的梯度图作为边缘图;或者可以将元件图像输入经过训练的边缘图提取模型,以输出边缘图等。
通过转换成边缘图,基于边缘图进行识别,可以将目标物图像中的干扰信息排除,或者将同一类但具有一定差异的目标物应用在同一个识别模型下进行识别,帮助提高后续模型识别结果的精度和模型的泛化性,在一定程度上提高了对于目标物、环境等更换的适应能力。
步骤S120将目标物图像输入识别模型,以得到目标物的特征信息;
具体的,特征信息可以但不限于是:目标物的位置信息、目标物的边缘图和/或目标物的关键标记的信息。
具体的,关键标记的信息可以但不限于是:标注关键标记后的目标物图像(如图3D、3F所示);只包括关键标记的图像;关键标记在目标物图像中的位置信息(即在图像中的2D坐标信息);或关键标记在三维空间中的位置信息(即姿态信息)。需要说明的是,当识别模型输出的为标注关键标记后的目标物图像或只包括关键标记的图像,基于图像可以得到关键标记在图像中的2D坐标或者3D姿态信息,或者根据识别模型输出的关键标记的坐标或姿态信息,也可以映射得到在图像中对应的关键标记的图像。
其中,关键标记可以是指与目标物关联的点和/或线,其中,关键线可以看成多个连续的关键点的组合,为方便理解,本具体实施例以关键点为例进一步详细说明。该关键标记可以位于目标物上,也可以位于目标物外,比如:可以为目标物的最小包围盒(boundingbox)的各个顶点。
目标物的位置信息可以但不限于是:目标物在目标物图像中的2D坐标信息;或目标物在三维空间中的姿态信息。通常可以预先设定目标物的坐标系原点,以该坐标系原点的2D坐标或者三维空间的姿态信息作为目标物的位置信息。
需要说明的是,上述关键点或目标物的姿态信息,可以是指在图像传感器坐标系下的姿态信息,也可以为根据需要,基于预先的标定结果,转换到机械手等相关的坐标系下的姿态信息。
需要说明的是,当输入识别模型的为只包括单个目标物的边界框图(如图3E所示),模型输出的关键点信息可以是指归属于某个目标物的关键点信息,示例性的,如图3D所示,可以得知位于同一个边界框内的关键点为归属于同一个异形元件的关键点;或者当输入识别模型的为包括多个异形元件的元件图像,模型输出的关键点信息可以是指针对多个异形元件的全局的关键点信息(如图3F所示)。
如图3E所示,示例性的,以全局的关键点信息为例,可以直接将包括多个异形元件的元件图像输入识别模型,输出多个元件下的全局的关键点,然后再基于聚类的方法找到归属于某个元件的关键点,将归属于某个元件的关键点视为一组关键点,有利于基于关键点生成正确的控制指令,除此之外,还可以帮助提高后面实施例中步骤S461-步骤S462的匹配的精度、效率。
需要说明的是,聚类的方法可以包括但不限于:基于图像处理的方法(比如:基于提取边界框的方法,则可以将位于同一边界框内的关键点归属于同一异形元件)、人工智能的方法(比如:将全局关键点图像输入聚类识别模型,将得到的归属于某个异形元件的关键点的聚类结果)、统计学、激光传感器探测等方法。
具体的,上述识别模型可以包括但不限于是:各种卷积神经网络(ConvolutionalNeural Networks,CNN),常见的CNN模型可以但不限于是:LeNet,AlexNet,ZFNet,VGG,GoogLeNet,Residual Net,DenseNet,R-CNN,SPP-NET,Fast-RCNN,Faster-RCNN,YOLO,SSD,BB8,YOLO-6D,Deep-6dPose,PoseCNN,Hourglass,CPN以及其他现在已知或将来开发的网络模型结构。
人工智能模型的训练方法可以根据目标模型的用途等等的不同而不同,可以采用现在已有或将来开发的各种模型训练方法,比如:监督学习、半监督学习。以监督学习为例,可以将训练样本输入到具有初始参数的神经网络模型中,将模型的输出结果与已经预先标注的标准输出结果进行对比,根据差值不断更新模型的参数,直到满足预设条件。
通过采用人工智能的方法识别特征信息,相对传统的图像处理方法,对目标物或环境等发生变换时的适应性更强,在一定程度上减少了软/硬件修改的机率,提高了效率。
步骤S130基于特征信息,生成抓取指令,通过抓取指令控制执行器抓取目标物。
需要说明的是,本方法步骤中所述的特征信息可以为基于步骤S120中所述的人工智能的方法得到的特征信息,也可以为基于其它现在已有或将来开发的方法得到的特征信息,比如:将目标物图像与基准图像的图像库进行匹配,每个基准图像预先对应存储一关联的目标物的姿态,因此基于匹配的基准图像可以对应得到目标物的姿态信息。则步骤S120可以为基于目标物图像,求取目标物的特征信息,即可以通过各种现在已有或将来开发的方法基于目标物图像生成目标物的特征信息。
如图7所示,在一个实施例中,步骤S130之前还包括:
步骤S160基于特征信息进行转换,以得到转换后的特征信息。
如图13所示,在一个实施例中,步骤S160包括:
步骤S161聚类全局关键点,以得到归属于单个目标物的关键点的信息,使得转换后的特征信息为归属于单个目标物的一组关键点的信息。
根据上面实施例所述,当识别模型输出全局的关键点信息时,可以先基于聚类的方法将关键点划分为归属于某个元件,并视为一组关键点,然后基于下面实施例所述的基于关键点的信息,生成抓取指令的方法,生成相应的抓取指令。通过将关键点进行聚类,将属于同一目标物的关键点分为一类,有利于基于关键点生成正确的控制指令,除此之外,还可以帮助提高后面实施例中步骤S461-步骤S462的匹配的精度、效率。
如图14所示,在一个实施例中,当识别模型输出的目标物图像为边缘图时,步骤S160包括:
步骤S261转换边缘图,以得到目标物的位置信息和/或关键点的信息,使得转换后的特征信息为目标物的位置信息和/或关键点的信息。
根据上面实施例所述,当识别模型输出异形元件的边缘图时,可以先根据边缘图基于人工智能或者图像处理等方法进一步识别异形元件的位置信息和/或关键点的信息,再根据下面实施例所述的基于异形元件的或关键点的位置信息,生成抓取指令的方法,生成相应的抓取指令。
在一个实施例中,当上述特征信息为关键点或目标物在图像传感器坐标系下的姿态信息时,步骤S160还包括:将该姿态信息转换到机械手坐标系下,再基于机械手坐标系下的姿态信息,生成抓取指令;或者当特征信息为关键点或目标物的2D坐标信息时,可以基于2D坐标信息,求取关键点或目标物在图像传感器坐标系下的姿态信息,再将该姿态信息转换到机械手坐标系下,再基于机械手坐标系下的姿态信息,生成抓取指令;或者也可以直接基于关键点或异形元件的2D坐标信息生成抓取指令等。
示例性的,如图1A或1B所示,控制装置13获取通过双目相机121、122采集的异形元件的左图和右图(如图3A所示),直接将左图和右图输入已经训练好的识别模型,或者将左图和右图经过某些转换(比如:边界框提取和/或边缘提取)后输入已经训练好的识别模型,经过模型输出标注了2D关键点的左图和右图(如图3E或3F所示),进一步,针对该左图和右图中的2D关键点分别在左图和右图中的坐标信息,基于三角测量的方法进行投影,从而对应得到三维空间中的关键点在主相机坐标系下的姿态信息预测,进一步,根据预先的主相机坐标系和机械手坐标系之间的标定结果,将关键点或异形元件在主相机坐标系下的姿态信息转换到机械手坐标系下。
如图15所示,在一个实施例中,当识别模型输出的特征信息为关键点的位置信息时,步骤S160还可以包括:
步骤S361基于关键点的位置信息,求取目标物的位置信息,使得转换后的特征信息为目标物的位置信息。
在一个实施例中,可以基于CAD模型等预先建立关键点的位置信息和目标物的位置信息的关联关系,因此根据关键点的位置信息结合关联关系就可以求取目标物的位置信息。
如图16A所示,在一个实施例中,继续以双目相机为例,上述元件图像包括左图和右图,左图和右图中包括多个异形元件,将提取边界框后的元件图像(如图3E所示),输入识别模型,输出标注一组2D关键点(具体的,将归属于同一个异形元件的关键点设为一组,则每组可以包括一个或者多个关键点)后的元件图像,将输出的标注关键点后的边界框图重新拼接回原来的元件图像,可以得到如图3D所示的标注后的元件图像,则左图和右图中分别包括多组关键点,则步骤S160包括:
步骤S461将左图中的关键标记与右图中的关键标记遍历匹配,筛选出极限误差小于阈值的关键点对;
需要说明的是,除可以以归属于同一目标物的一组关键点作为一个整体进行匹配,得到极限误差,也可以以每个关键点为一个整体进行匹配,优选以归属于同一目标物的关键点为一组(每组关键点可以包括一个或者多个关键点),这样可以提高匹配的准确度,也提高了匹配的效率。
在一个实施例中,如图16C中所述,以左图和右图中包括多组关键点为例,除此之外,也可以为多个关键点,步骤S461可以进一步包括如下方法步骤:
步骤S4611遍历左图中的一组关键点;步骤S4612是否完成左图的遍历,若否,执行步骤S4613,若是,执行步骤S110’;步骤S4613遍历右图中的每组关键点,以从右图中选取与左图的该组关键点匹配的一组关键点;步骤S4614,判断是否遍历完右图中的关键点组,若否,执行步骤S4615,若是,执行步骤S4611;步骤S4615,判断左图和右图中的关键点组的极限误差是否小于阈值,若是,则右图中的一组或者多组关键点与左图中的某一组关键点组构成匹配的关键点对,基于该关键点对执行步骤S462,若否,执行步骤S4613。
具体的,以左图中按照一定顺序,比如:以位于左图的左上角的一组关键点开始,在右图中匹配与之小于极限误差的阈值的关键点,如果无法找到匹配的一组关键点,则继续按照预设顺序选取下一组关键点继续与右图匹配,直到找到相应的小于极限误差的阈值的一个或一组,或者多个或多组关键点为止。
示例性的,如图3C所示,以左图的一组关键点按照极限误差由小到大的顺序,在右图中可以依次找到1-8组对应的关键点,从中选出极限误差小于阈值的一组或者多组关键点,如果所有的极限误差都大于阈值,则在左图中按照预设的顺序找到下一组关键点,继续根据上面的方法进行寻找,直到在右图中找到符合上述条件的一组或者多组关键点为止,进而基于此生成指令以控制执行器抓取异形元件,然后重新获取新的通过双目相机采集的图像,重复上面的方法;如果直到最后在左图和右图中都没有找到符合条件的关键点对,则获取双目相机重新采集的新的左图和右图,继续重复上面的方法。
步骤S462基于关键点对转换得到关键点的姿态;
根据上面实施例所述,基于左图和右图中相匹配的关键点对,可以对应得到三维空间中对应的关键点。
需要说明的是,根据上面实施例中,如图3C所示,当针对左图中的某组关键点在右图中可以找到多个小于极线(epipolar line)误差的阈值的匹配关键点组时,则对应可以得到在三维空间的多组关键点。
具体的,通过极线校正的方法对左图和右图进行平行校正,然后以左图中的某个关键点为基准求取各关键点相对通过该关键点的极线的误差。在双目视觉中,通过极线校正,使得两个相机的光轴完全平行,这样才能够继续后续的三维重建等。具体的,可以将原图像像素坐标系通过内参矩阵转化成相机坐标系(和图像物理坐标系比较多了缩放和Z轴),通过旋转矩阵进行平行极线校正,然后通过畸变系数校正图像的相机坐标,校正后通过内参矩阵将相机坐标系转换成图像像素坐标系,并根据原图像坐标的像素值赋值给新的图像像素坐标系。
在一个实施例中,当识别模型直接输出多个或多组关键点的姿态,或者根据步骤S160中的某些转换方法转换得到多个或多组关键点的姿态信息时,步骤S160可以通过如下方法步骤,进一步筛选出符合预设标准的一个或一组关键点。如图16B所示,为方便理解,以基于步骤S461-步骤S462为例进一步详细说明。
步骤S463求取关键点的姿态中沿预设方向的分量与基准分量之间的差异;
具体的,预设分量可以根据需要设定为任意。
示例性的,如图1A所示,以相机固定在机械手上为例,可以设定沿高度的方向X为预设方向,因为通常相机需要调整到某个固定高度时,才能采集到效果最好的元件图像。具体的,可以生成指令,以控制机械手每次带动相机移动到沿X方向距离异形原件某个预设高度,这样异形元件或异形元件上的关键点在该相机坐标系下沿Z轴方向的分量基本保持一致,因此可以基于此,将不满足该预设分量的关键点挑选出来,则该关键点所在的关键点组视为不满足要求。
步骤S464将差异与预设标准比较,筛选出符合预设标准的一个或一组关键点的姿态。
具体的,步骤S464可以包括:将差异与预设标准比较,判断差异是否小于阈值,若是,则该关键点为目标的关键点;若否,按照上面实施例所述的各个方法重新获取新的关键点的姿态。
继续如图16C所示,示例性的,基于步骤S461-步骤S462,步骤S464可以为判断该差异是否小于阈值,若是,则该关键点为目标关键点,然后基于该关键点的姿态执行步骤S130,然后执行步骤S110’重新获取新的左图和右图,若否,返回执行步骤S4613遍历右图中的关键点,以从右图中选取新的与左图的关键点匹配的关键点。
需要说明的是,上面实施例所述的各个对特征信息进行转换的方法步骤,可以单独使用,也可以由至少两种方法结合以后实现。
如图8A或8B所示,在一个实施例中,当特征信息为关键点或目标物的姿态,步骤S130可以为基于特征信息,以及基准抓取姿态,生成轨迹规划指令,为方便理解,下面举例说明:
在一个实施例中,步骤S130可以包括如下方法步骤:
步骤S131基于特征信息,以及基准抓取姿态,求取抓取姿态;其中,基准抓取姿态为基准关键点或基准目标物在机械手的末端坐标系下的姿态;
需要说明的是,可以基于一组关键点的姿态信息,以及该组关键点与目标物的关联信息,从而求取目标物的姿态信息,基于目标物的姿态信息生成抓取指令,示例性的,可以基于目标物的CAD模型预先求取上述关键点与目标物的位置信息的关联信息;或者直接基于某个关键点的姿态信息,生成抓取指令;
如图17A所示,进一步,在一个实施例中,步骤S131可以包括如下方法步骤:
步骤S1311求取关键点或目标物在机械手的基坐标系下的姿态;
在一个实施例中,可以基于上面实施例的方法,得到关键点或异形元件在图像传感器坐标系下的姿态,进一步,如图18C所示,以相机固定在机械手上为例,然后基于机械手、相机和目标物的变换关系式Tor=Ttr*Tct*Toc求取Tor,其中,Trt为机械手基坐标系和末端坐标系的变换关系,具体的,可以根据机械手的各个驱动关节的编码器采集的运动变量参数,基于机械手运动学方程求取等;Tor为关键点或目标物的坐标系(以下简称“目标物坐标系”)和机械手基坐标系的变换关系(即上述关键点或目标物在机械手基坐标系下的姿态);Toc为目标物坐标系和图像传感器坐标系下的变换关系(即上述关键点或目标物在图像传感器下的姿态);Tct为相机和机械手之间的变换关系,基于预先生成的相机和机械手之间标定结果可知。
步骤S1312基于基准抓取姿态,求取抓取姿态;
如图18B所示,在一个实施例中,在示教状态下,基于机械手和目标物的变换关系式Pot_ref=Ttr*Tor,其中,Pot_ref为在示教状态下基准目标物坐标系和机械手的末端坐标系之间的变换关系,需要说明的是,为实现以基准抓取姿态抓取每一个目标物,以Pot_ref作为基准抓取姿态,则Pot_ref为固定值,在一个实施例中,如图18A所示,可以基于变换关系式Tor=Ttr*Tct*Toc求取Tor,因此,根据上面公式Pot_ref=Ttr*Tor,可以求取基准抓取姿态Pot_ref;
再如图18D所示,在实际中,基于关系式Ttr_new=Tot*Tor,由于Tot为Pot_ref,为已知固定值,根据步骤S1311中求取的Tor,可以求取真实的机械手的抓取姿态Ttr_new。
如图17B所示,进一步,在一个实施例中,步骤S131可以包括如下方法步骤:
步骤S2311将基准抓取姿态转换为预设坐标系下的姿态;
需要说明的是,预设坐标系可以根据需要设定为任意,在本具体实施例中,以机械手的基坐标系为预设坐标系为例进一步详细说明。
在一个实施例中,如图18E所示,将上面实施例得到的基准抓取姿态Pot_ref,基于关系式Por_ref=Ttr*Pot_ref,可以求取Por_ref。
步骤S2312将基准关键点或基准目标物在预设坐标系下的姿态与关键点或目标物在预设坐标系下的姿态进行匹配,得到最优的变换关系;
在一个实施例中,如图18E所示,根据上面实施例得到的关键点或目标物件在图像传感器坐标系下的姿态Poc,基于关系式Por=Ttr*Tct*Poc,可以求取关键点或目标物在机械手的基坐标系下的姿态Por;
具体的,如图18F所示,可以将基准关键点或基准目标物在机械手的基坐标系下的姿态Por_ref与关键点或目标物在机械手的基坐标系下的姿态Por通过旋转和/或平移变换进行最优的匹配,得到变换关系move_T。具体的,匹配方法可以基于最临近点(比如:Global-ICP RANSAC-ICP)、描述子(比如:FPFH、PPF)等方法,从而得到最优的变换关系。
在一个实施例中,以最邻近法为例,计算关键点的当前姿态在基准关键点中的投影;将投影与基准关键点的最邻近的点的位置进行比较,得到重投影误差;以最小化重投影误差为目标,更新关键点的当前姿态,直到重投影误差满足预设条件为止(比如:小于某个预设的阈值或更新达到某预设次数),从而得到变换关系。
需要说明的是,对于目标物上存在多个关键点的,该多个关键点为一组关键点,每组关键点同步进行变换,在一个实施例中,当上述预设条件为重投影误差小于某个预设的阈值时,可以是指该组内所有的关键点的重投影误差的和或均值小于某个阈值。
步骤S2313基于变换关系,求取执行器的抓取姿态。
如图18G所示,则抓取姿态Ttr_new=move_T*Ttr。
需要说明的是,当预设坐标系非为机械手的基坐标系时,还需要将上述变换关系转换到机械手的基坐标系下,然后基于上述方法求取抓取姿态。
进一步,在一个实施例中,步骤S131可以包括如下方法步骤:
当上述特征信息为包括标记的2D图像,将包括标记的2D图像与基准图的图库进行匹配,以得到抓取姿态。
具体的,可以预先建立在示教情况下的基准标记的2D基准图的图库;
其中,每个2D基准图可以基于目标物或目标物的3D模型(基准目标物),以及上述标定后的基准图像传感器的成像参数得到,且每个2D基准图同样对应一基准图像传感器坐标系和基准目标物坐标系的基准变换关系以及基准抓取姿态(如图18A所示,不同的基准变换关系对应了不同的基准抓取姿态)。
示例性的,以基准目标物的3D模型为例,可以将3D模型为中心的姿态空间离散化,目的是获得一个3D模型相对于基准图像传感器的坐标变换关系,想象一个以3D模型为中心,半径任意的球面,把基准图像传感器放在这个球面上移动,并对3D模型拍照,3D模型的姿态即与基准图像传感器在球面上的位置有关,图中每一个点都是一个视角,每一个视角都对应了一个姿态(即上述基准变换关系)。我们只需要估计出物体的姿态属于哪一个视角,即可得到其所对应的图像传感器和目标物的坐标变换关系,并建立一个2D基准图-基准变换关系-基准抓取姿态一一对应的关系表,并将该关系表预先存储在计算机可读存储介质内。这样当转化图在图库内轮询,并找到与之匹配的2D基准图时,则可以从存储介质内获取预先存储的该2D基准图对应的基准抓取姿态,以该基准抓取姿态为抓取姿态。
通过上面实施例所述的方法,通过以基准抓取姿态为基准,求取抓取姿态,可以更加方便准确的生成抓取姿态。
另外,通过上述方法,可以基于关键标记,生成抓取姿态,省略了先将关键标记的姿态转换为目标物的姿态的步骤,提高了效率,也减少了在转换过程中可能出现的误差;另外,通过关键标记可以为控制指令的生成提供更多的参考信息,从而更大程度上提高了抓取的成功率。
步骤S132基于抓取姿态,生成抓取指令,通过抓取指令控制执行器运动到抓取姿态并抓取目标物。
在一个实施例中,可以根据机械手的当前姿态和步骤S131求取的抓取姿态生成轨迹规划指令,以控制执行器由当前姿态运动到抓取姿态,比如:该轨迹规划指令可以为机械手由当前姿态运动到抓取姿态下的多个离散的点组成的轨迹,进一步,根据每个点再基于机械手的逆运动学方程,可以得到实现该轨迹的机械手的各个驱动关节的位移量、速度和/或角速度、以及加速度和/或角加速度的指令等。
具体的,可以基于抓取姿态直接生成抓取指令,以控制机械手运动到抓取姿态并控制工具抓取目标物;或者,也可以先生成运动指令,以控制机械手运动到抓取姿态,然后再生成抓取动作指令,以控制工具抓取目标物。
通过上面的方法,可以实现在一些需要以某个特定的基准抓取姿态完成目标物的抓取的情况下(比如:上面实施例所述的插机动作),实现对目标物的抓取。
如图9所示,在一个实施例中,当特征信息为关键点或目标物的位置信息,步骤S130可以包括:
步骤S231基于特征信息,结合特征信息与抓取点的关联关系,生成抓取姿态;
预先建立各特征信息与抓取点的关联关系,因此基于关联关系就可以求取抓取姿态。
示例性的,可以基于目标物的CAD模型预先求取上述关键点或目标物的位置信息与抓取点的关联信息;然后按照预设地址从存储器内调取关联信息,根据关联信息,当知道关键点或目标物的位置信息后,就可以求取抓取点的抓取位姿信息。
示例性的,以吸盘为机械手的工具,可以根据机械手的各个关节的运动变量参数,基于机械手的运动学方程求取工具的当前姿态,以抓取点的姿态为工具的目标姿态,因此生成轨迹规划指令。
步骤S232基于抓取姿态,生成抓取指令。
有关抓取指令的生成方法可以参见步骤S132中的相关描述,在此不再赘述。
如图10所示,在一个实施例中,当特征信息为关键点或目标物的位置信息,步骤S130可以包括:
步骤S331基于特征信息,生成抓取姿态;
步骤S332基于抓取姿态,生成抓取指令。
即基于特征信息直接通过图像处理或人工智能的方法等直接生成抓取点的抓取姿态。
如图11所示,在一个实施例中,关键点可以直接为抓取点,即通过识别模型直接输出抓取点的位置信息,再根据抓取点的位置信息生成抓取指令。
比如:直接以目标物的最大法向切线为抓取点的姿态,进而生成抓取姿态。
具体的,根据执行器末端的抓取点的姿态,基于机械手的逆运动学方程,可以得到机械手的各个驱动关节的位移量、速度/角速度、以及加速度和/或角加速度的控制指令。
如图12所示,在一个实施例中,步骤S130可以为将上述各特征信息输入经过训练的轨迹规划模型,以得到抓取指令。
应该理解的是,虽然图4-17的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图4-17的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图19所示,本发明实施例还提供一种目标物的抓取装置,所述抓取装置包括:
图像获取模块110,用于获取目标物的目标物图像;
信息识别模块120,用于将目标物图像输入识别模型,以得到目标物的特征信息;
指令生成模块130,用于基于关键点信息,生成抓取指令,通过抓取指令控制执行器抓取目标物。
如图20所示,在一个实施例中,抓取装置还包括:
边界提取模块140,用于对目标物图像中的单个目标物提取边界框,使得输入识别模型的目标物图像只包括单个目标物;
如图21所示,在一个实施例中,抓取装置还包括:
边缘提取模块150,用于对目标物提取边缘,使得目标物图像包括目标物的边缘图。
如图22所示,在一个实施例中,抓取装置还包括:
信息转换模块160,用于基于特征信息进行转换,以得到转换后的特征信息。
进一步,在一个实施例中,信息转换模块160包括:
关键聚类单元161,用于聚类全局关键点,以得到归属于单个目标物的关键点的信息,使得转换后的特征信息为归属于单个目标物的关键点的信息。
进一步,在一个实施例中,信息转换模块160包括:
边缘转换单元261,用于转换边缘图,以得到目标物的位置信息和/或关键点的信息,使得转换后的特征信息为目标物的位置信息和/或关键点的信息。
进一步,在一个实施例中,信息转换模块160包括:
位置求取单元361,用于基于关键点的位置信息,求取目标物的位置信息,使得转换后的所述特征信息为目标物的位置信息。
进一步,在一个实施例中,信息转换模块160包括:
遍历匹配单元461,用于将所述左图中的关键标记与所述右图中的关键标记遍历匹配,筛选出极线误差小于阈值的关键标记对;
姿态转换单元462,用于将关键标记对投影,得到关键标记的姿态,使得转换后的特征信息为关键标记的姿态。
进一步,在一个实施例中,信息转换模块160包括:
差异求取模块463,用于当关键标记的姿态为多个或多组时,分别求取多个或多组关键标记的姿态中沿预设方向的分量与基准分量之间的差异;
差异比较模块464,用于将差异与预设标准比较,筛选出符合预设标准的一组或一个关键标记的姿态,使得转换后的特征信息为关键标记的姿态。
进一步,在一个实施例中,指令生成模块130包括:
轨迹生成单元133,用于基于特征信息,以及基准抓取姿态,生成轨迹规划指令。
进一步,在一个实施例中,指令生成模块130包括:
姿态求取单元131,用于基于特征信息,以及基准抓取姿态,求取抓取姿态;其中,基准抓取姿态为基准关键点或基准目标物在机械手的末端坐标系下的姿态;
指令生成单元132,用于生成抓取指令,以控制所述执行器运动到所述抓取姿态,并抓取所述目标物。进一步,在一个实施例中,姿态求取单元131包括:
姿态求取部分1311,用于求取关键点或目标物在机械手的基坐标系下的姿态;
第一抓取求取部分1312,用于基于基准抓取姿态,求取抓取姿态;
进一步,在一个实施例中,姿态求取单元131包括:
姿态转换部分2311,用于将基准抓取姿态转换为机械手的基坐标系下的姿态;
姿态匹配部分2312,用于将基准关键点或基准目标物在机械手的基坐标系下的姿态与关键点或目标物在机械手的基坐标系下的姿态进行匹配,得到最优的变换关系;
第二抓取求取部分2313,用于基于变换关系,求取执行器的抓取姿态。
进一步,在一个实施例中,姿态求取单元131包括:
图像匹配部分3311,用于当特征信息为包括关键标记的2D图像,将2D图像与基准图的图库进行匹配,以得到抓取姿态。
在一个实施例中,指令生成模块130包括:
姿态生成单元231,用于基于特征信息,结合特征信息与抓取点的关联关系,生成抓取姿态;
指令生成单元232,用于基于抓取姿态,生成抓取指令。
关于上述目标物的抓取装置的具体限定可以参见上文中对于目标物抓取方法的限定,在此不再赘述。上述各个目标物抓取装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,如图2所示,提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述目标物的抓取方法的步骤。
在一个实施例中,提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述目标物的抓取方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,上述方法、装置、系统等中提到的图像传感器、执行器等等,即可以是真实环境下的真实的物体,也可以是仿真平台下的虚拟的物体,通过仿真环境以达到连接真实物体的效果。将依赖虚拟环境完成训练后的控制单元,移植到真实环境下,对真实的物体进行控制或者再训练,可以节省训练过程的资源和时间。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本说明书中在本发明的说明书中所使用的属于只是为了描述具体的实施方式的目的,不是用于限制本发明。
本发明的权利要求书和说明书及上述附图中的术语“第一”、“第二”、“第三”、“S110”、“S120”“S130”等等(如果存在)是用来区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换或在某些情况下同时发生,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”、“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如:包括了一系列步骤或者模块的过程、方法、系统、产品或机器人不必限于清楚地列出的那些步骤或者模块,而是包括没有清楚地列出的或对于这些过程、方法、系统、产品或机器人固有的其它步骤或模块。
需要说明的是,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的结构和模块并不一定是本发明所必须的。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (18)
1.一种目标物的抓取方法,其特征在于,所述抓取方法包括:
获取所述目标物的目标物图像;
将所述目标物图像输入识别模型,以得到所述目标物的特征信息;
基于所述特征信息,生成抓取指令,通过所述抓取指令控制执行器抓取所述目标物。
2.根据权利要求1所述的目标物的抓取方法,其特征在于,所述目标物的特征信息为:所述目标物的位置信息、所述目标物的边缘图和/或所述目标物的关键标记的信息。
3.根据权利要求1或2所述的目标物的抓取方法,其特征在于,当所述目标物图像中包括多个目标物,所述将所述目标物图像输入识别模型之前还包括:
对所述目标物图像中的所述目标物提取边界框,使得输入所述识别模型的所述目标物图像为包括单个所述目标物的边界框图。
4.根据权利要求1或2所述的目标物的抓取方法,其特征在于,所述将所述目标物图像输入识别模型之前还包括:
对所述目标物图像中的所述目标物提取边缘,使得输入所述识别模型的所述目标物图像为所述目标物的边缘图。
5.根据权利要求1或2所述的目标物的抓取方法,其特征在于,所述基于所述特征信息,生成抓取指令之前包括:
基于得到的所述特征信息进行转换,以得到转换后的所述特征信息。
6.根据权利要求5所述的目标物的抓取方法,其特征在于,当所述特征信息为归属于多个目标物的所述目标物图像的全局关键标记的信息;所述基于得到的所述特征信息进行转换,以得到转换后的所述特征信息包括:
聚类所述全局关键标记,以得到归属于单个所述目标物的一组关键标记的所述特征信息。
7.根据权利要求5所述的目标物的抓取方法,其特征在于,所述特征信息为左图中的多组关键标记和右图中的多组关键标记;所述基于得到的所述特征信息进行转换,以得到转换后的所述特征信息包括:
将所述左图中的关键标记与所述右图中的关键标记遍历匹配,筛选出极线误差小于阈值的关键标记对;
将所述关键标记对投影,得到关键标记的姿态,使得所述转换后的所述特征信息为所述关键标记的姿态;和/或
当所述关键标记的姿态为多组或多个时,分别求取所述多组或多个关键标记的姿态中沿预设方向的分量与基准分量之间的差异;
将所述差异与所述预设标准比较,筛选出符合预设标准的一组或一个关键标记的姿态,使得所述转换后的所述特征信息为所述关键标记的姿态。
8.根据权利要求5所述的目标物的抓取方法,其特征在于,当基于所述识别模型得到的特征信息为关键标记的位置信息;所述基于得到的所述特征信息进行转换,得到转换后的所述特征信息包括:
基于所述关键标记的位置信息,求取所述目标物的位置信息,使得所述转换后的所述特征信息为所述目标物的位置信息。
9.根据权利要求2所述的目标物的抓取方法,其特征在于,当所述特征信息为所述关键标记或所述目标物的姿态;所述基于所述特征信息,生成抓取指令包括:
基于所述特征信息,以及基准抓取姿态,生成轨迹规划指令;其中,所述基准抓取姿态为基准关键标记或基准目标物在机械手的末端坐标系下的姿态;或
基于所述特征信息,以及基准抓取姿态,求取抓取姿态;其中,所述基准抓取姿态为基准关键标记或基准目标物在机械手的末端坐标系下的姿态;
生成抓取指令,以控制所述执行器运动到所述抓取姿态,并抓取所述目标物。
10.根据权利要求9所述的目标物的抓取方法,其特征在于,所述求取抓取姿态包括:
求取所述关键标记或所述目标物在机械手的基坐标系下的姿态;
基于所述基准抓取姿态,求取所述抓取姿态;或
将所述基准抓取姿态转换为预设坐标系下的姿态;
将所述基准关键标记或所述基准目标物在所述预设坐标系下的姿态与所述关键标记或所述目标物在预设坐标系下的姿态进行匹配,得到最优的变换关系;
基于所述变换关系,求取所述抓取姿态;或
当所述特征信息为包括所述关键标记的2D图像,将所述2D图像与基准图的图库进行匹配,以得到所述抓取姿态。
11.根据权利要求2所述的目标物的抓取方法,其特征在于,所述特征信息为所述关键标记或所述目标物的位置信息;所述基于所述特征信息,生成抓取指令包括:
基于所述特征信息,结合所述特征信息与抓取点的关联关系,生成抓取姿态;
基于所述抓取姿态,生成所述抓取指令;或
基于所述特征信息,生成抓取姿态;
基于所述抓取姿态,生成所述抓取指令。
12.根据权利要求1或2所述的目标物的抓取方法,其特征在于,所述基于所述特征信息,生成抓取指令包括:
将所述特征信息输入轨迹规划模型,以得到所述抓取指令。
13.根据权利要求2所述的目标物的抓取方法,其特征在于,当所述特征信息为所述关键标记的信息,而所述关键标记的信息为执行器的抓取点的信息;所述基于所述特征信息,生成抓取指令为:
基于所述执行器的抓取点的信息,生成所述抓取指令。
14.根据权利要求1或2所述的目标物的抓取方法,其特征在于,所述目标物为异形元件。
15.一种目标物的抓取装置,其特征在于,所述目标物的抓取装置包括:
图像获取模块,用于获取所述目标物的目标物图像;
信息识别模块,用于将所述目标物图像输入识别模型,以得到所述目标物的特征信息;
指令生成模块,用于基于所述特征信息,生成抓取指令,通过所述抓取指令控制执行器抓取所述目标物。
16.一种目标物的抓取系统,其特征在于,所述抓取系统包括:执行器、图像传感器和控制装置;
所述控制装置分别通信连接所述执行器和所述图像传感器;
所述图像传感器,用于采集所述目标物图像;
控制装置,用于获取所述目标物的目标物图像;将所述目标物图像输入识别模型,以得到所述目标物的特征信息;基于所述特征信息,生成抓取指令,通过所述抓取指令控制执行器抓取所述目标物。
17.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-14任一项所述的目标物的抓取方法。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-14任一项所述的目标物的抓取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010884213.0A CN114187312A (zh) | 2020-08-28 | 2020-08-28 | 目标物的抓取方法、装置、系统、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010884213.0A CN114187312A (zh) | 2020-08-28 | 2020-08-28 | 目标物的抓取方法、装置、系统、存储介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114187312A true CN114187312A (zh) | 2022-03-15 |
Family
ID=80538937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010884213.0A Pending CN114187312A (zh) | 2020-08-28 | 2020-08-28 | 目标物的抓取方法、装置、系统、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114187312A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115359112A (zh) * | 2022-10-24 | 2022-11-18 | 爱夫迪(沈阳)自动化科技有限公司 | 一种高位料库机器人的码垛控制方法 |
CN115488876A (zh) * | 2022-06-22 | 2022-12-20 | 湖北商贸学院 | 一种基于机器视觉的机器人分拣方法和装置 |
-
2020
- 2020-08-28 CN CN202010884213.0A patent/CN114187312A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115488876A (zh) * | 2022-06-22 | 2022-12-20 | 湖北商贸学院 | 一种基于机器视觉的机器人分拣方法和装置 |
CN115359112A (zh) * | 2022-10-24 | 2022-11-18 | 爱夫迪(沈阳)自动化科技有限公司 | 一种高位料库机器人的码垛控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112476434B (zh) | 一种基于协作机器人的视觉3d取放方法及系统 | |
US11338435B2 (en) | Gripping system with machine learning | |
WO2018137445A1 (zh) | 一种基于ros系统的机械臂抓取方法及系统 | |
US9616569B2 (en) | Method for calibrating an articulated end effector employing a remote digital camera | |
CN110640730B (zh) | 生成用于机器人场景的三维模型的方法和系统 | |
WO2019114339A1 (zh) | 机械臂运动的校正方法和装置 | |
CN110580725A (zh) | 一种基于rgb-d相机的箱体分拣方法及系统 | |
CN107471218B (zh) | 一种基于多目视觉的双臂机器人手眼协调方法 | |
CN108161931A (zh) | 基于视觉的工件自动识别及智能抓取系统 | |
CN110480637B (zh) | 一种基于Kinect传感器的机械臂零件图像识别抓取方法 | |
CN113379849B (zh) | 基于深度相机的机器人自主识别智能抓取方法及系统 | |
CN113276106B (zh) | 一种攀爬机器人空间定位方法及空间定位系统 | |
CN110463376B (zh) | 一种插机方法及插机设备 | |
WO2019059343A1 (ja) | ワーク情報処理装置およびワークの認識方法 | |
CN112775959A (zh) | 机械手的抓取位姿确定方法及系统、存储介质 | |
EP3578321A1 (de) | Verfahren zum verwenden mit einer maschine zum erstellen einer erweiterte-realität-anzeigeumgebung | |
CN114187312A (zh) | 目标物的抓取方法、装置、系统、存储介质及设备 | |
CN115213896A (zh) | 基于机械臂的物体抓取方法、系统、设备及存储介质 | |
KR20220089463A (ko) | 피킹 로봇을 위한 비젼 분석 장치 | |
US20230150142A1 (en) | Device and method for training a machine learning model for generating descriptor images for images of objects | |
WO2022208963A1 (ja) | ロボット制御用のキャリブレーション装置 | |
CN114299039B (zh) | 一种机器人及其碰撞检测装置和方法 | |
CN115629066A (zh) | 一种基于视觉引导的面向自动配线的方法及装置 | |
CN109079777B (zh) | 一种机械臂手眼协调作业系统 | |
CN117340929A (zh) | 一种基于三维点云数据的柔性夹爪抓取处置装置及方法 |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230725 Address after: Floor 19, SF International Center, 182 Queen's Road East, Wan Chai, Hongkong, China Applicant after: Robotics Robotics Ltd. Address before: International Building # 25-17, 10 Ansen Road, Singapore Applicant before: Yuelunfa Temple |
|
TA01 | Transfer of patent application right |