CN110293550A - 机械臂移动控制方法、装置和智能设备 - Google Patents
机械臂移动控制方法、装置和智能设备 Download PDFInfo
- Publication number
- CN110293550A CN110293550A CN201810236152.XA CN201810236152A CN110293550A CN 110293550 A CN110293550 A CN 110293550A CN 201810236152 A CN201810236152 A CN 201810236152A CN 110293550 A CN110293550 A CN 110293550A
- Authority
- CN
- China
- Prior art keywords
- mechanical arm
- mentioned
- tail end
- trained
- executing agency
- 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
Classifications
-
- 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/1602—Programme controls characterised by the control system, structure, architecture
-
- 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
-
- 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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0014—Image feed-back for automatic industrial control, e.g. robot with camera
-
- 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
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Manipulator (AREA)
Abstract
本申请实施例公开了一种机械臂移动控制方法、装置和智能设备,上述机械臂移动控制方法包括:获取目标物体的图像,所述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的;将所述目标物体的图像输入预先训练的神经网络模型,确定所述机械臂末端执行机构相对所述目标物体的方向和在所述方向上所述机械臂末端执行机构相对所述目标物体的距离;根据确定的方向和距离,控制所述机械臂移动。本申请可以实现通过目标物体的图像,获取机械臂末端执行机构相对目标物体的方向和在上述方向上相对目标物体的距离,提高获取的结果的准确率,进而提高控制机械臂移动的速度和精度。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种机械臂移动控制方法、装置和智能设备。
背景技术
现有相关技术中,通过机械臂抓取物体时,需要拍摄目标物体的图像,通过检测和识别上述图像对目标物体的位置进行定位,然后移动机械臂,配合点云抓取等技术完成对目标物体的抓取。
但是,现有相关技术中,通过目标物体的图像无法对目标物体进行准确的定位,只能确定目标物体所在的大概位置,从而导致机械臂对目标物体抓取的速度较慢、效率较低,并且抓取精度不高。
发明内容
本申请的实施例提供一种机械臂移动控制方法、装置和智能设备,以实现通过目标物体的图像,获取机械臂末端执行机构相对目标物体的方向和在上述方向上相对目标物体的距离,提高获取的结果的准确率,进而提高控制机械臂移动的速度和精度。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,本申请实施例提供一种机械臂移动控制方法,包括:获取目标物体的图像,所述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的;将所述目标物体的图像输入预先训练的神经网络模型,确定所述机械臂末端执行机构相对所述目标物体的方向和在所述方向上所述机械臂末端执行机构相对所述目标物体的距离;根据确定的方向和距离,控制所述机械臂移动。
其中在一种具体的实施方式中,所述控制所述机械臂移动之后,还包括:再次获取所述目标物体的图像;将再次获取的所述目标物体的图像输入所述神经网络模型,再次确定所述机械臂末端执行机构相对所述目标物体的方向;根据再次确定的方向和预设的移动距离,控制所述机械臂移动。
其中在一种具体的实施方式中,所述控制所述机械臂移动之后,还包括:对所述目标物体进行预设操作。
其中在一种具体的实施方式中,所述预设操作为抓取操作。
其中在一种具体的实施方式中,所述神经网络模型为卷积神经网络模型。
第二方面,本申请实施例提供一种第一方面中神经网络模型的训练方法,包括:获取训练样本,所述训练样本包括训练物体的图像、获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;将所述训练样本输入待训练的神经网络模型的输入层,对所述待训练的神经网络模型进行训练,所述待训练的神经网络模型的输出结果包括所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;当所述输出结果满足预设条件时,获得训练好的神经网络模型。
其中在一种具体的实施方式中,所述神经网络模型包括5个卷积层和4个全连接层,每个层对应的激活函数为线性整流函数,每个全连接层后设置了dropout层;所述神经网络模型的每个输出结果均设置了softmax层。
其中在一种具体的实施方式中,所述训练样本采用如下方式生成:将所述机械臂末端执行机构调整到预设位置;从所述预设位置开始,沿预设方向,按照预设的距离间隔移动所述机械臂,通过所述机械臂末端执行机构上设置的视觉传感器获取所述训练物体的图像,并记录获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离。
其中在一种具体的实施方式中,所述获得训练好的神经网络模型之后,还包括:将所述训练物体的图像输入所述神经网络模型,确定所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;根据确定的方向和距离,控制所述机械臂移动;通过所述机械臂末端执行机构上设置的视觉传感器再次获取所述训练物体的图像,并记录再次获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;将再次获取的所述训练物体的图像、再次获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离输入到所述神经网络模型的输入层,对所述神经网络模型进行再次训练。
第三方面,本申请实施例提供一种机械臂移动控制装置,包括:获取模块,用于获取目标物体的图像,所述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的;确定模块,用于将所述获取模块获取的目标物体的图像输入预先训练的神经网络模型,确定所述机械臂末端执行机构相对所述目标物体的方向和在所述方向上所述机械臂末端执行机构相对所述目标物体的距离;控制模块,用于根据所述确定模块确定的方向和距离,控制所述机械臂移动。
其中在一种具体的实施方式中,所述获取模块,还用于在所述控制模块控制所述机械臂移动之后,再次获取所述目标物体的图像;所述确定模块,还用于将所述获取模块再次获取的所述目标物体的图像输入所述神经网络模型,再次确定所述机械臂末端执行机构相对所述目标物体的方向;所述控制模块,还用于根据所述确定模块再次确定的方向和预设的移动距离,控制所述机械臂移动。
其中在一种具体的实施方式中,上述机械臂移动控制装置还包括:操作模块,用于在所述控制模块控制所述机械臂移动之后,对所述目标物体进行预设操作。
其中在一种具体的实施方式中,所述预设操作为抓取操作。
第四方面,本申请实施例提供一种第三方面中神经网络模型的训练装置,包括:获取模块,用于获取训练样本,所述训练样本包括训练物体的图像、获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;训练模块,用于将所述获取模块获取的训练样本输入待训练的神经网络模型的输入层,对所述待训练的神经网络模型进行训练,所述待训练的神经网络模型的输出结果包括所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;所述获取模块,还用于当所述输出结果满足预设条件时,获得训练好的神经网络模型。
其中在一种具体的实施方式中,所述神经网络模型包括5个卷积层和4个全连接层,每个层对应的激活函数为线性整流函数,每个全连接层后设置了dropout层;所述神经网络模型的每个输出结果均设置了softmax层。
其中在一种具体的实施方式中,所述神经网络模型的训练装置还包括:确定模块和控制模块;所述确定模块,用于在所述获取模块获得训练好的神经网络模型之后,将所述训练物体的图像输入所述神经网络模型,确定所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;所述控制模块,用于根据所述确定模块确定的方向和距离,控制所述机械臂移动;所述获取模块,还用于通过所述机械臂末端执行机构上设置的视觉传感器再次获取所述训练物体的图像,并记录再次获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;所述训练模块,还用于将所述获取模块再次获取的所述训练物体的图像、再次获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离输入到所述神经网络模型的输入层,对所述神经网络模型进行再次训练。
第五方面,本申请实施例提供一种智能设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现第一方面提供的方法。
第六方面,本申请实施例提供一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面提供的方法。
第七方面,本申请实施例提供一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行第一方面提供的方法。
第八方面,本申请实施例提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现第二方面提供的方法。
第九方面,本申请实施例提供一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第二方面提供的方法。
第十方面,本申请实施例提供一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行第二方面提供的方法。
本申请实施例提供的机械臂移动控制方法、装置和智能设备,获取目标物体的图像之后,将上述目标物体的图像输入预先训练的神经网络模型,确定上述机械臂末端执行机构相对目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离,然后根据确定的方向和距离,控制上述机械臂移动,由于上述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的,因此目标物体的图像的采集更加便捷高效,并且由于在训练神经网络模型时,在不同条件下采集训练物体的图像,提高了训练样本的多样性,因此提高了训练获得的神经网络模型的精确度,进而将上述目标物体的图像输入预先训练的神经网络模型,可以提高获取的上述机械臂末端执行机构相对目标物体的方向和在上述方向上相对目标物体的距离的准确率,从而可以提高控制机械臂移动的速度和精度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请机械臂移动控制方法一个实施例的流程图;
图2为本申请机械臂移动控制方法另一个实施例的流程图;
图3为本申请机械臂移动控制方法另一个实施例的流程图;
图4为本申请神经网络模型的训练方法一个实施例的流程图;
图5为本申请神经网络模型的训练方法另一个实施例的流程图;
图6为本申请神经网络模型的训练方法再一个实施例的流程图;
图7为本申请机械臂移动控制装置一个实施例的结构示意图;
图8为本申请机械臂移动控制装置另一个实施例的结构示意图;
图9为本申请神经网络模型的训练装置一个实施例的结构示意图;
图10为本申请神经网络模型的训练装置另一个实施例的结构示意图;
图11为本申请智能设备一个实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
图1为本申请机械臂移动控制方法一个实施例的流程图,如图1所示,上述机械臂移动控制方法可以包括:
步骤101,获取目标物体的图像,上述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的。
步骤102,将上述目标物体的图像输入预先训练的神经网络模型,确定上述机械臂末端执行机构相对上述目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离。
其中,上述神经网络模型可以为卷积神经网络模型。
本实施例的一种实现方式中,上述机械臂末端执行机构相对上述目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离可以为:上述机械臂末端执行机构相对上述目标物体的直线方向,在上述直线方向上,上述机械臂末端执行机构相对上述目标物体的直线距离。
本实施例的另一种实现方式中,上述机械臂末端执行机构相对上述目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离可以包括:上述机械臂末端执行机构相对上述目标物体的左右方向和在左右方向上上述机械臂末端执行机构相对上述目标物体的左右距离,以及上述机械臂末端执行机构相对上述目标物体的前后方向和在前后方向上上述机械臂末端执行机构相对上述目标物体的前后距离。
上述两种实现方式中,上述机械臂末端执行机构可以处于与上述目标物体的高度适应的高度,也就是说,上述机械臂末端执行机构的高度不需调整;当然,上述机械臂末端执行机构也可以处于与上述目标物体的高度不适应的高度,这样,上述两种实现方式中,上述机械臂末端执行机构相对上述目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离还可以包括:上述机械臂末端执行机构相对上述目标物体的竖直方向,在上述竖直方向上上述机械臂末端执行机构相对上述目标物体的竖直距离。
步骤103,根据确定的方向和距离,控制上述机械臂移动。
上述机械臂移动控制方法中,获取目标物体的图像之后,将上述目标物体的图像输入预先训练的神经网络模型,确定上述机械臂末端执行机构相对目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离,然后根据确定的方向和距离,控制上述机械臂移动,由于上述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的,因此目标物体的图像的采集更加便捷高效,并且由于在训练神经网络模型时,在不同条件下采集训练物体的图像,提高了训练样本的多样性,因此提高了训练获得的神经网络模型的精确度,进而将上述目标物体的图像输入预先训练的神经网络模型,可以提高获取的上述机械臂末端执行机构相对目标物体的方向和在上述方向上相对目标物体的距离的准确率,从而可以提高控制机械臂移动的速度和精度。
图2为本申请机械臂移动控制方法另一个实施例的流程图,如图2所示,本申请图1所示实施例中,步骤103之后,还可以包括:
步骤201,再次获取上述目标物体的图像。
步骤202,将再次获取的上述目标物体的图像输入上述神经网络模型,再次确定上述机械臂末端执行机构相对上述目标物体的方向。
步骤203,根据再次确定的方向和预设的移动距离,控制上述机械臂移动。
其中,上述预设的移动距离的大小可以在具体实现时,根据系统性能和/或实现需求等自行设定,本实施例对上述预设的移动距离的大小不作限定,举例来说,上述预设的移动距离可以为5毫米。
也就是说,本实施例中,在控制上述机械臂移动之后,可以进行末端伺服,具体地,可以在控制上述机械臂移动之后,再次获取上述目标物体的图像,然后将再次获取的上述目标物体的图像输入上述神经网络模型,将再次获取的上述目标物体的图像输入上述神经网络模型之后,仅获取上述神经网络模型的输出结果中上述机械臂末端执行机构相对上述目标物体的方向,然后根据上述机械臂末端执行机构相对上述目标物体的方向和预设的移动距离,控制上述机械臂移动,以进行末端伺服,进一步提高控制机械臂移动的精度。
图3为本申请机械臂移动控制方法另一个实施例的流程图,如图3所示,本申请图1所示实施例中,步骤103之后,还可以包括:
步骤301,对上述目标物体进行预设操作。
其中,上述预设操作可以为抓取操作;当然,上述预设操作还可以为其他操作,本实施例对上述预设操作的具体操作形式不作限定。
图4为本申请神经网络模型的训练方法一个实施例的流程图,本实施例对图1所示实施例中神经网络模型的训练方法进行介绍。如图4所示,上述神经网络模型的训练方法可以包括:
步骤401,获取训练样本,上述训练样本包括训练物体的图像、获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离。
其中,上述训练样本采用如下方式生成:
将上述机械臂末端执行机构调整到预设位置,从上述预设位置开始,沿预设方向,按照预设的距离间隔移动上述机械臂,通过上述机械臂末端执行机构上设置的视觉传感器获取上述训练物体的图像,并记录获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
在具体实现时,可以将上述机械臂末端执行机构调整到与训练物体相适应的高度,在后续控制机械臂移动时不调整上述机械臂的高度,然后控制机械臂末端执行机构在上述高度上,沿左右方向和/或前后方向,每次移动预设的距离间隔通过上述机械臂末端执行机构上设置的视觉传感器获取上述训练物体的图像,并记录获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
同时,为提高训练样本的多样性,在获取训练样本的图像的过程中需不断变化场景的光照条件(包括亮度、颜色和/或光源个数等),从而获取不同光照条件下的图像数据。
步骤402,将上述训练样本输入待训练的神经网络模型的输入层,对上述待训练的神经网络模型进行训练。
本实施例中,为了提高神经网络模型的泛化能力,在将上述训练样本输入待训练的神经网络模型的输入层之后,会进行加噪声及颜色变换等图像处理操作。
其中,上述待训练的神经网络模型的输出结果包括上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离。
本实施例的一种实现方式中,上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离可以为:上述机械臂末端执行机构相对上述训练物体的直线方向,在上述直线方向上,上述机械臂末端执行机构相对上述训练物体的直线距离。
本实施例的另一种实现方式中,上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离可以包括:上述机械臂末端执行机构相对上述训练物体的左右方向和在左右方向上上述机械臂末端执行机构相对上述训练物体的左右距离,以及上述机械臂末端执行机构相对上述训练物体的前后方向和在前后方向上上述机械臂末端执行机构相对上述训练物体的前后距离。
上述两种实现方式中,上述机械臂末端执行机构可以处于与上述训练物体的高度适应的高度,也就是说,上述机械臂末端执行机构的高度不需调整;当然,上述机械臂末端执行机构也可以处于与上述训练物体的高度不适应的高度,这样,上述两种实现方式中,上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离还可以包括:上述机械臂末端执行机构相对上述训练物体的竖直方向,在上述竖直方向上上述机械臂末端执行机构相对上述训练物体的竖直距离。
在具体实现时,上述神经网络模型的输出结果可以包括以下3个方面:
(1)上述机械臂末端执行机构相对上述训练物体的左右方向和/或前后方向,或者上述机械臂末端执行机构相对上述训练物体保持不动;
(2)在左右方向上上述机械臂末端执行机构相对上述训练物体的左右距离,以5mm为单位,共36类;
(3)在前后方向上上述机械臂末端执行机构相对上述训练物体的前后距离,以5mm为单位,共26类。
上述神经网络模型可以包括5个卷积层和4个全连接层,各个层对应的激活函数为线性整流函数(Rectified Linear Unit;以下简称:ReLU),并在个别卷积层后面设置了最大池化层用于进一步提取高阶特征,在每个全连接层后面设置了dropout层,用于减轻神经网络模型训练过程中的过拟合现象;同时,上述神经网络模型针对上述神经网络模型的每个输出结果均增加了softmax层,用于获取每个输出结果的对应分类。
在训练上述神经网络模型时,可以在深度学习框架tensorflow上进行模型训练,包括梯度反向传播和参数更新。
步骤403,当上述输出结果满足预设条件时,获得训练好的神经网络模型。
具体地,上述输出结果满足预设条件可以包括:第一向量与第二向量之间的误差小于预设阈值,其中,第一向量为上述输出结果中由上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离组成的向量;第二向量为上述训练样本中由获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离组成的向量;上述预设阈值可以在具体实现时,根据系统性能和/或实现需求等自行设定,本实施例对上述预设阈值的大小不作限定。
上述神经网络模型的训练方法中,在不同条件下采集训练物体的图像,提高了训练样本的多样性,因此提高了训练获得的神经网络模型的精确度,进而将上述目标物体的图像输入预先训练的神经网络模型,可以提高获取的上述机械臂末端执行机构相对目标物体的方向和在上述方向上相对目标物体的距离的准确率,从而可以提高控制机械臂移动的速度和精度。
图5为本申请神经网络模型的训练方法另一个实施例的流程图,如图5所示,本申请图4所示实施例中,步骤403之后,还可以包括:
步骤501,将上述训练物体的图像输入上述神经网络模型,确定上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
步骤502,根据确定的方向和距离,控制上述机械臂移动。
步骤503,通过上述机械臂末端执行机构上设置的视觉传感器再次获取上述训练物体的图像,并记录再次获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
步骤504,将再次获取的上述训练物体的图像、再次获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离输入到上述神经网络模型的输入层,对上述神经网络模型进行再次训练。
也就是说,本实施例中,在控制上述机械臂移动之后,可以再次获取训练样本,然后将再次获取的训练样本输入到上述神经网络模型的输入层,对上述神经网络模型进行再次训练,再次训练时,只训练上述机械臂末端执行机构相对上述训练物体的方向对应的权值,控制上述方向上上述机械臂末端执行机构相对上述训练物体的距离的权值保持不变,从而可以实现在控制上述机械臂移动之后,进行末端伺服,进一步提高控制机械臂移动的精度。进行末端伺服之后,上述机械臂在对目标物体进行抓取操作时,可以有效提高抓取目标物体的成功率。
图6为本申请神经网络模型的训练方法再一个实施例的流程图,如图6所示,本申请图4所示实施例中,步骤403之后,还可以包括:
步骤601,将上述训练物体放于上述机械臂前方不同位置。
步骤602,通过上述机械臂末端执行机构上设置的视觉传感器获取上述训练物体的图像。
步骤603,将上述训练物体的图像输入训练好的神经网络模型,确定上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
步骤604,根据确定的方向和距离,控制上述机械臂移动,以验证上述神经网络模型的精确度。
本实施例中,在获得训练好的神经网络模型之后,可以将目标物体放于机械臂末端执行机构前方的不同位置,然后控制上述机械臂移动,以验证上述神经网络模型的精确度。
图7为本申请机械臂移动控制装置一个实施例的结构示意图,本实施例中的机械臂移动控制装置可以实现本申请图1~图3所示实施例提供的机械臂移动控制方法。如图7所示,上述机械臂移动控制装置可以包括:获取模块71、确定模块72和控制模块73;
其中,获取模块71,用于获取目标物体的图像,上述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的。
确定模块72,用于将获取模块71获取的目标物体的图像输入预先训练的神经网络模型,确定上述机械臂末端执行机构相对上述目标物体的方向和在上述方向上上述机械臂末端执行机构相对上述目标物体的距离。
其中,上述神经网络模型可以为卷积神经网络模型。
本实施例的一种实现方式中,上述机械臂末端执行机构相对上述目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离可以为:上述机械臂末端执行机构相对上述目标物体的直线方向,在上述直线方向上,上述机械臂末端执行机构相对上述目标物体的直线距离。
本实施例的另一种实现方式中,上述机械臂末端执行机构相对上述目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离可以包括:上述机械臂末端执行机构相对上述目标物体的左右方向和在左右方向上上述机械臂末端执行机构相对上述目标物体的左右距离,以及上述机械臂末端执行机构相对上述目标物体的前后方向和在前后方向上上述机械臂末端执行机构相对上述目标物体的前后距离。
上述两种实现方式中,上述机械臂末端执行机构可以处于与上述目标物体的高度适应的高度,也就是说,上述机械臂末端执行机构的高度不需调整;当然,上述机械臂末端执行机构也可以处于与上述目标物体的高度不适应的高度,这样,上述两种实现方式中,上述机械臂末端执行机构相对上述目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离还可以包括:上述机械臂末端执行机构相对上述目标物体的竖直方向,在上述竖直方向上上述机械臂末端执行机构相对上述目标物体的竖直距离。
控制模块73,用于根据确定模块72确定的方向和距离,控制上述机械臂移动。
上述机械臂移动控制装置中,获取模块71获取目标物体的图像之后,确定模块72将上述目标物体的图像输入预先训练的神经网络模型,确定上述机械臂末端执行机构相对目标物体的方向和在上述方向上机械臂末端执行机构相对上述目标物体的距离,然后控制模块73根据确定的方向和距离,控制上述机械臂移动,由于上述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的,因此目标物体的图像的采集更加便捷高效,并且由于在训练神经网络模型时,在不同条件下采集训练物体的图像,提高了训练样本的多样性,因此提高了训练获得的神经网络模型的精确度,进而将上述目标物体的图像输入预先训练的神经网络模型,可以提高获取的上述机械臂末端执行机构相对目标物体的方向和在上述方向上相对目标物体的距离的准确率,从而可以提高控制机械臂移动的速度和精度。
图8为本申请机械臂移动控制装置另一个实施例的结构示意图,本实施例中,获取模块71,还用于在控制模块73控制上述机械臂移动之后,再次获取上述目标物体的图像;
确定模块72,还用于将获取模块71再次获取的上述目标物体的图像输入上述神经网络模型,再次确定上述机械臂末端执行机构相对上述目标物体的方向;
控制模块73,还用于根据确定模块72再次确定的方向和预设的移动距离,控制上述机械臂移动。
其中,上述预设的移动距离的大小可以在具体实现时,根据系统性能和/或实现需求等自行设定,本实施例对上述预设的移动距离的大小不作限定,举例来说,上述预设的移动距离可以为5毫米。
也就是说,本实施例中,在控制模块73控制上述机械臂移动之后,可以进行末端伺服,具体地,可以在控制模块73控制上述机械臂移动之后,获取模块71再次获取上述目标物体的图像,然后确定模块72将再次获取的上述目标物体的图像输入上述神经网络模型,将再次获取的上述目标物体的图像输入上述神经网络模型之后,确定模块72仅获取上述神经网络模型的输出结果中上述机械臂末端执行机构相对上述目标物体的方向,然后控制模块73根据上述机械臂末端执行机构相对上述目标物体的方向和预设的移动距离,控制上述机械臂移动,以进行末端伺服,进一步提高控制机械臂移动的精度。
进一步地,上述机械臂移动控制装置还可以包括:
操作模块74,用于在控制模块73控制上述机械臂移动之后,对上述目标物体进行预设操作。
其中,上述预设操作为抓取操作;当然,上述预设操作还可以为其他操作,本实施例对上述预设操作的具体操作形式不作限定。
图9为本申请神经网络模型的训练装置一个实施例的结构示意图,本实施例中的神经网络模型的训练装置可以实现本申请图4~图6所示实施例提供的神经网络模型的训练方法,本实施例中的神经网络模型的训练装置用于对图7和图8所示实施例中的神经网络模型进行训练。如图9所示,上述神经网络模型的训练装置可以包括:获取模块91和训练模块92;
其中,获取模块91,用于获取训练样本,上述训练样本包括训练物体的图像、获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
其中,上述训练样本采用如下方式生成:
将上述机械臂末端执行机构调整到预设位置,从上述预设位置开始,沿预设方向,按照预设的距离间隔移动上述机械臂,通过上述机械臂末端执行机构上设置的视觉传感器获取上述训练物体的图像,并记录获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
在具体实现时,可以将上述机械臂末端执行机构调整到与训练物体相适应的高度,在后续控制机械臂移动时不调整上述机械臂的高度,然后控制机械臂末端执行机构在上述高度上,沿左右方向和/或前后方向,每次移动预设的距离间隔通过上述机械臂末端执行机构上设置的视觉传感器获取上述训练物体的图像,并记录获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
同时,为提高训练样本的多样性,在获取训练样本的图像的过程中需不断变化场景的光照条件(包括亮度、颜色和/或光源个数等),从而获取不同光照条件下的图像数据。
训练模块92,用于将获取模块91获取的训练样本输入待训练的神经网络模型的输入层,对上述待训练的神经网络模型进行训练,上述待训练的神经网络模型的输出结果包括上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离。
本实施例中,为了提高神经网络模型的泛化能力,在将上述训练样本输入待训练的神经网络模型的输入层之后,会进行加噪声及颜色变换等图像处理操作。
其中,上述待训练的神经网络模型的输出结果包括上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离。
本实施例的一种实现方式中,上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离可以为:上述机械臂末端执行机构相对上述训练物体的直线方向,在上述直线方向上,上述机械臂末端执行机构相对上述训练物体的直线距离。
本实施例的另一种实现方式中,上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离可以包括:上述机械臂末端执行机构相对上述训练物体的左右方向和在左右方向上上述机械臂末端执行机构相对上述训练物体的左右距离,以及上述机械臂末端执行机构相对上述训练物体的前后方向和在前后方向上上述机械臂末端执行机构相对上述训练物体的前后距离。
上述两种实现方式中,上述机械臂末端执行机构可以处于与上述训练物体的高度适应的高度,也就是说,上述机械臂末端执行机构的高度不需调整;当然,上述机械臂末端执行机构也可以处于与上述训练物体的高度不适应的高度,这样,上述两种实现方式中,上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离还可以包括:上述机械臂末端执行机构相对上述训练物体的竖直方向,在上述竖直方向上上述机械臂末端执行机构相对上述训练物体的竖直距离。
在具体实现时,上述神经网络模型的输出结果可以包括以下3个方面:
(1)上述机械臂末端执行机构相对上述训练物体的左右方向和/或前后方向,或者上述机械臂末端执行机构相对上述训练物体保持不动;
(2)在左右方向上上述机械臂末端执行机构相对上述训练物体的左右距离,以5mm为单位,共36类;
(3)在前后方向上上述机械臂末端执行机构相对上述训练物体的前后距离,以5mm为单位,共26类。
上述神经网络模型可以包括5个卷积层和4个全连接层,各个层对应的激活函数为线性整流函数(Rectified Linear Unit;以下简称:ReLU),并在个别卷积层后面设置了最大池化层用于进一步提取高阶特征,在每个全连接层后面设置了dropout层,用于减轻神经网络模型训练过程中的过拟合现象;同时,上述神经网络模型针对上述神经网络模型的每个输出结果均增加了softmax层,用于获取每个输出结果的对应分类。
在训练模块92训练上述神经网络模型时,可以在深度学习框架tensorflow上进行模型训练,包括梯度反向传播和参数更新。
获取模块91,还用于当上述输出结果满足预设条件时,获得训练好的神经网络模型。
具体地,上述输出结果满足预设条件可以包括:第一向量与第二向量之间的误差小于预设阈值,其中,第一向量为上述输出结果中由上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离组成的向量;第二向量为上述训练样本中由获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上机械臂末端执行机构相对上述训练物体的距离组成的向量;上述预设阈值可以在具体实现时,根据系统性能和/或实现需求等自行设定,本实施例对上述预设阈值的大小不作限定。
上述神经网络模型的训练装置中,在不同条件下采集训练物体的图像,提高了训练样本的多样性,因此提高了训练获得的神经网络模型的精确度,进而将上述目标物体的图像输入预先训练的神经网络模型,可以提高获取的上述机械臂末端执行机构相对目标物体的方向和在上述方向上相对目标物体的距离的准确率,从而可以提高控制机械臂移动的速度和精度。
图10为本申请神经网络模型的训练装置另一个实施例的结构示意图,与图9所示的神经网络模型的训练装置相比,不同之处在于,图10所示的神经网络模型的训练装置还可以包括:确定模块93和控制模块94;
确定模块93,用于在获取模块91获得训练好的神经网络模型之后,将上述训练物体的图像输入上述神经网络模型,确定上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离;
控制模块94,用于根据确定模块93确定的方向和距离,控制上述机械臂移动;
获取模块91,还用于通过上述机械臂末端执行机构上设置的视觉传感器再次获取上述训练物体的图像,并记录再次获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离;
训练模块92,还用于将获取模块91再次获取的上述训练物体的图像、再次获取上述训练物体的图像时上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离输入到上述神经网络模型的输入层,对上述神经网络模型进行再次训练。
也就是说,本实施例中,在控制模块94控制上述机械臂移动之后,可以再次获取训练样本,然后训练模块92将再次获取的训练样本输入到上述神经网络模型的输入层,对上述神经网络模型进行再次训练,再次训练时,只训练上述机械臂末端执行机构相对上述训练物体的方向对应的权值,控制上述方向上上述机械臂末端执行机构相对上述训练物体的距离的权值保持不变,从而可以实现在控制上述机械臂移动之后,进行末端伺服,进一步提高控制机械臂移动的精度。进行末端伺服之后,上述机械臂在对目标物体进行抓取操作时,可以有效提高抓取目标物体的成功率。
进一步地,在获取模块91获得训练好的神经网络模型之后,还可以将上述训练物体放于上述机械臂前方不同位置。然后获取模块91通过上述机械臂末端执行机构上设置的视觉传感器获取上述训练物体的图像。训练模块92将上述训练物体的图像输入训练好的神经网络模型,确定上述机械臂末端执行机构相对上述训练物体的方向和在上述方向上上述机械臂末端执行机构相对上述训练物体的距离,控制模块94根据确定的方向和距离,控制上述机械臂移动,以验证上述神经网络模型的精确度。
本实施例中,在获取模块91获得训练好的神经网络模型之后,可以将目标物体放于机械臂末端执行机构前方的不同位置,然后控制模块94控制上述机械臂移动,以验证上述神经网络模型的精确度。
图11为本申请智能设备一个实施例的结构示意图,上述智能设备可以包括存储器、处理器及存储在上述存储器上并可在上述处理器上运行的计算机程序,上述处理器执行所述计算机程序时,可以实现本申请图1~图3所示实施例提供的机械臂移动控制方法。
其中,上述智能设备可以为机械臂,当然上述智能设备也可以为其他智能设备,本实施例对上述智能设备的具体形式不作限定。
图11示出了适于用来实现本申请实施方式的示例性智能设备12的框图。图11显示的智能设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图11所示,智能设备12以通用计算设备的形式表现。智能设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
智能设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被智能设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。智能设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图11未显示,通常称为“硬盘驱动器”)。尽管图11中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
智能设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该智能设备12交互的设备通信,和/或与使得该智能设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,智能设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图11所示,网络适配器20通过总线18与智能设备12的其它模块通信。应当明白,尽管图11中未示出,可以结合智能设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本申请实施例提供的机械臂移动控制方法。
本申请还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时实现本申请图1~图3所示实施例提供的机械臂移动控制方法。
上述非临时性计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(Read Only Memory;以下简称:ROM)、可擦式可编程只读存储器(ErasableProgrammable Read Only Memory;以下简称:EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network;以下简称:LAN)或广域网(Wide Area Network;以下简称:WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本申请实施例还提供一种计算机程序产品,当上述计算机程序产品中的指令由处理器执行时,执行本申请图1~图3所示实施例提供的机械臂移动控制方法。
本申请实施例还提供一种计算机设备,上述计算机设备可以包括存储器、处理器及存储在上述存储器上并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时,可以实现本申请图4~图6所示实施例提供的神经网络模型的训练方法。
上述计算机设备可以为个人计算机(Personal Computer;以下简称:PC)或笔记本电脑等智能终端设备,也可以为服务器,本实施例对上述计算机设备的形态不作限定。
本实施例中,上述计算机设备可以采用图11所示的结构实现,在此不再赘述。
本申请实施例还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时实现本申请图4~图6所示实施例提供的神经网络模型的训练方法。
本申请实施例还提供一种计算机程序产品,当上述计算机程序产品中的指令由处理器执行时,执行本申请图4~图6所示实施例提供的神经网络模型的训练方法。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例中可能采用术语“第一”、“第二”、“第三”等来描述各种连接端口和标识信息等,但这些连接端口和标识信息等不应限于这些术语。这些术语仅用来将连接端口和标识信息等彼此区分开。例如,在不脱离本申请实施例范围的情况下,第一连接端口也可以被称为第二连接端口,类似地,第二连接端口也可以被称为第一连接端口。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种机械臂移动控制方法,其特征在于,包括:
获取目标物体的图像,所述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的;
将所述目标物体的图像输入预先训练的神经网络模型,确定所述机械臂末端执行机构相对所述目标物体的方向和在所述方向上所述机械臂末端执行机构相对所述目标物体的距离;
根据确定的方向和距离,控制所述机械臂移动。
2.一种神经网络模型的训练方法,其特征在于,包括:
获取训练样本,所述训练样本包括训练物体的图像、获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;
将所述训练样本输入待训练的神经网络模型的输入层,对所述待训练的神经网络模型进行训练,所述待训练的神经网络模型的输出结果包括所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;
当所述输出结果满足预设条件时,获得训练好的神经网络模型。
3.一种机械臂移动控制装置,其特征在于,包括:
获取模块,用于获取目标物体的图像,所述目标物体的图像为机械臂末端执行机构上设置的视觉传感器采集的;
确定模块,用于将所述获取模块获取的目标物体的图像输入预先训练的神经网络模型,确定所述机械臂末端执行机构相对所述目标物体的方向和在所述方向上所述机械臂末端执行机构相对所述目标物体的距离;
控制模块,用于根据所述确定模块确定的方向和距离,控制所述机械臂移动。
4.一种神经网络模型的训练装置,其特征在于,包括:
获取模块,用于获取训练样本,所述训练样本包括训练物体的图像、获取所述训练物体的图像时所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;
训练模块,用于将所述获取模块获取的训练样本输入待训练的神经网络模型的输入层,对所述待训练的神经网络模型进行训练,所述待训练的神经网络模型的输出结果包括所述机械臂末端执行机构相对所述训练物体的方向和在所述方向上所述机械臂末端执行机构相对所述训练物体的距离;
所述获取模块,还用于当所述输出结果满足预设条件时,获得训练好的神经网络模型。
5.一种智能设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1所述的方法。
6.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1所述的方法。
7.一种计算机程序产品,其特征在于,当所述计算机程序产品中的指令由处理器执行时,执行如权利要求1所述的方法。
8.一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求2所述的方法。
9.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求2所述的方法。
10.一种计算机程序产品,其特征在于,当所述计算机程序产品中的指令由处理器执行时,执行如权利要求2所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810236152.XA CN110293550B (zh) | 2018-03-21 | 2018-03-21 | 机械臂移动控制方法、装置和智能设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810236152.XA CN110293550B (zh) | 2018-03-21 | 2018-03-21 | 机械臂移动控制方法、装置和智能设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110293550A true CN110293550A (zh) | 2019-10-01 |
CN110293550B CN110293550B (zh) | 2021-06-18 |
Family
ID=68025391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810236152.XA Active CN110293550B (zh) | 2018-03-21 | 2018-03-21 | 机械臂移动控制方法、装置和智能设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110293550B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104827483A (zh) * | 2015-05-25 | 2015-08-12 | 山东理工大学 | 一种基于gps与双目视觉定位的移动机械手物体抓取方法 |
CN106874914A (zh) * | 2017-01-12 | 2017-06-20 | 华南理工大学 | 一种基于深度卷积神经网络的工业机械臂视觉控制方法 |
CN107169519A (zh) * | 2017-05-18 | 2017-09-15 | 重庆卓来科技有限责任公司 | 一种工业机器人视觉系统及其示教方法 |
CN107186708A (zh) * | 2017-04-25 | 2017-09-22 | 江苏安格尔机器人有限公司 | 基于深度学习图像分割技术的手眼伺服机器人抓取系统及方法 |
CN107220601A (zh) * | 2017-05-18 | 2017-09-29 | 西北工业大学 | 一种基于在线置信度判别的目标抓捕点预测方法 |
CN107253195A (zh) * | 2017-07-31 | 2017-10-17 | 中南大学 | 一种运载机器人手臂操控自适应混合学习映射智能控制方法及系统 |
CN107393542A (zh) * | 2017-06-28 | 2017-11-24 | 北京林业大学 | 一种基于双通道神经网络的鸟类物种识别方法 |
-
2018
- 2018-03-21 CN CN201810236152.XA patent/CN110293550B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104827483A (zh) * | 2015-05-25 | 2015-08-12 | 山东理工大学 | 一种基于gps与双目视觉定位的移动机械手物体抓取方法 |
CN106874914A (zh) * | 2017-01-12 | 2017-06-20 | 华南理工大学 | 一种基于深度卷积神经网络的工业机械臂视觉控制方法 |
CN107186708A (zh) * | 2017-04-25 | 2017-09-22 | 江苏安格尔机器人有限公司 | 基于深度学习图像分割技术的手眼伺服机器人抓取系统及方法 |
CN107169519A (zh) * | 2017-05-18 | 2017-09-15 | 重庆卓来科技有限责任公司 | 一种工业机器人视觉系统及其示教方法 |
CN107220601A (zh) * | 2017-05-18 | 2017-09-29 | 西北工业大学 | 一种基于在线置信度判别的目标抓捕点预测方法 |
CN107393542A (zh) * | 2017-06-28 | 2017-11-24 | 北京林业大学 | 一种基于双通道神经网络的鸟类物种识别方法 |
CN107253195A (zh) * | 2017-07-31 | 2017-10-17 | 中南大学 | 一种运载机器人手臂操控自适应混合学习映射智能控制方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110293550B (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200361082A1 (en) | Machine learning methods and apparatus for robotic manipulation and that utilize multi-task domain adaptation | |
CN110363058B (zh) | 使用单触发卷积神经网络的用于避障的三维对象定位 | |
CN104200237B (zh) | 一种基于核化相关滤波高速自动多目标跟踪方法 | |
US11325252B2 (en) | Action prediction networks for robotic grasping | |
US10282623B1 (en) | Depth perception sensor data processing | |
CN109131348B (zh) | 一种基于生成式对抗网络的智能车驾驶决策方法 | |
CN109682392A (zh) | 基于深度强化学习的视觉导航方法及系统 | |
CN109145680A (zh) | 一种获取障碍物信息的方法、装置、设备和计算机存储介质 | |
CN108171257A (zh) | 细粒度图像识别模型训练及识别方法、装置及存储介质 | |
CN107479368A (zh) | 一种基于人工智能的训练无人机控制模型的方法及系统 | |
CN114097004A (zh) | 基于视觉嵌入的自主任务性能 | |
US11900244B1 (en) | Attention-based deep reinforcement learning for autonomous agents | |
CN109118532A (zh) | 视觉景深估计方法、装置、设备及存储介质 | |
CN109711285A (zh) | 识别模型的训练、测试方法和装置 | |
CN112766595B (zh) | 一种指挥控制装置、方法、系统、计算机设备及介质 | |
Maher et al. | Realtime human-UAV interaction using deep learning | |
CN110489182A (zh) | 一种带有自主导航模块的机器人云平台设计方法 | |
KR20180086548A (ko) | 사용자 인터랙션을 위한 제스처 인식 방법 및 시스템 | |
JP2022081613A (ja) | 自動運転特徴の特定方法、装置、設備、媒体及びコンピュータプログラム | |
US20100217955A1 (en) | Routing across multicore networks using real world or modeled data | |
CN105447886A (zh) | 动感影院播放控制方法 | |
CN113268143A (zh) | 一种基于强化学习的多模态人机交互方法 | |
CN110293550A (zh) | 机械臂移动控制方法、装置和智能设备 | |
CN112132880A (zh) | 一种基于稀疏测量和单目rgb图像的实时稠密深度估计方法 | |
CN114998573B (zh) | 一种基于rgb-d特征深度融合的抓取位姿检测方法 |
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 |