CN118003339B - 一种基于人工智能的机器人分拣控制算法 - Google Patents
一种基于人工智能的机器人分拣控制算法 Download PDFInfo
- Publication number
- CN118003339B CN118003339B CN202410411147.3A CN202410411147A CN118003339B CN 118003339 B CN118003339 B CN 118003339B CN 202410411147 A CN202410411147 A CN 202410411147A CN 118003339 B CN118003339 B CN 118003339B
- Authority
- CN
- China
- Prior art keywords
- timber
- robot
- representing
- action
- ith
- 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.)
- Active
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 39
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 21
- 230000009471 action Effects 0.000 claims abstract description 118
- 239000002023 wood Substances 0.000 claims abstract description 57
- 238000003709 image segmentation Methods 0.000 claims abstract description 9
- 239000013598 vector Substances 0.000 claims description 50
- 238000000034 method Methods 0.000 claims description 34
- 210000000078 claw Anatomy 0.000 claims description 24
- 238000013528 artificial neural network Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 13
- 238000011156 evaluation Methods 0.000 claims description 11
- 238000012502 risk assessment Methods 0.000 claims description 11
- 238000012549 training Methods 0.000 claims description 11
- 230000007613 environmental effect Effects 0.000 claims description 7
- 238000012546 transfer Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 6
- 238000004088 simulation Methods 0.000 claims description 6
- 238000000547 structure data Methods 0.000 claims description 6
- 238000003062 neural network model Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 238000005457 optimization Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000006073 displacement reaction Methods 0.000 claims description 3
- 230000005484 gravity Effects 0.000 claims description 3
- 238000002372 labelling Methods 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 3
- 230000010391 action planning Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 12
- 230000011218 segmentation Effects 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000036544 posture Effects 0.000 description 3
- 230000005855 radiation Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000009514 concussion Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Abstract
本发明涉及人工智能技术领域,公开了一种基于人工智能的机器人分拣控制算法,包括以下步骤:步骤101,采集木料堆的X光图像;步骤102,对X光图像进行图像分割和标记;步骤103,基于采集的X光图像来生成点云数据;步骤104,对生成的点云数据进行标记;步骤105,基于被标记的点云数据进行建模获得木料堆的三维模型;步骤106,使用策略生成算法来生成机器人的动作;步骤107,控制机器人执行步骤106中生成的机器人的动作;本发明的算法整体流程自动化程度高,只需要输入X光图像就可以自动完成木料识别、建模和动作规划,大大提高了木料分拣效率以及有效地避免机器人抓取木料导致木料堆的坍塌问题的发生。
Description
技术领域
本发明涉及人工智能领域,更具体地说,它涉及一种基于人工智能的机器人分拣控制算法。
背景技术
家具厂生产的原料包括多种木料,木料需要从砍伐地运输到加工地进行加工,在加工之前需要将多种木料进行分拣,为了节约空间,多种刚砍伐的木料被随机堆放在分拣地,对于交叠堆放的木料,由于物体种类多样、姿态和位置随机,这为机器人抓取木料的路径规划带来了深度挑战。此时,高端的视觉系统和机器学习技术被广泛介入使用。高精度的三维视觉系统提供了物体位置和姿态的精确测量;计算机视觉算法辅助提取物体特征和识别目标;深度学习技术则帮助从过往的抓取行为和结果中学习以优化路径规划。
现有技术中一般是识别上层可见的木料的姿态和位置,然后使用从上至下逐层抓取可见的木料的方法来规划路径,但上述方式存在一些问题,例如,堆放的木料可能由上层贯穿至下层,上层木料的移动可能会因连带影响下层木料而引发整个木料堆的不稳定,甚至坍塌。
发明内容
本发明提供一种基于人工智能的机器人分拣控制算法,解决上述提出的技术问题。
本发明提供了一种基于人工智能的机器人分拣控制系统,包括以下模块:
X光图像采集模块,用于采集木料堆的X光图像;
图像处理模块,用于对X光图像进行图像分割和标记,X光图像中的像素被标记的类别包括:属于木料的轮廓和不属于木料的轮廓;
点云数据生成模块,基于采集的X光图像来生成点云数据;
点云数据标记模块,用于对点云数据进行标记;
三维模型建立模块,基于被标记的点云数据进行建模获得木料堆的三维模型;
动作生成模块,使用策略生成算法来生成机器人的动作;
控制模块,控制机器人执行生成的机器人的动作。
一种基于人工智能的机器人分拣控制算法,包括以下步骤:
步骤101,采集木料堆的X光图像;
步骤102,对X光图像进行图像分割和标记,X光图像中的像素被标记的类别包括:属于木料的轮廓和不属于木料的轮廓;
步骤103,基于采集的X光图像来生成点云数据;
步骤104,对生成的点云数据进行标记,点云数据的类别包括:属于木料的轮廓的点云和不属于木料的轮廓的点云;
步骤105,基于被标记的点云数据进行建模获得木料堆的三维模型;
步骤106,使用策略生成算法来生成机器人的动作;
步骤107,控制机器人执行步骤106中生成的机器人的动作。
在一个优选的实施方式中,在步骤106中,使用策略生成算法来生成机器人的动作的方法包括:
步骤一、定义状态空间:对于木料堆的每个木料,记录木料在木料堆内的位置、姿态以及堆叠的状态;
步骤二、定义动作空间:动作空间包括了机器人可以执行的所有可能的动作;
将动作细分为:
定位:移动到特定木料上方的动作;
抓取:降低抓取装置并进行合适的闭合以夹住木料;
转动:在夹持木料的状态下,进行必要的转动以调整木料的姿态;
提升:抬起木料以离开原位置;
移动:带着木料移到新的位置;
放置:在目标位置释放木料;
抽取动作的定义:
旋转:定义为旋转木料。
水平移动:定义为在三维空间内移动木料,需要移动的方向和移动距离;
连续动作的转换为离散动作:
将连续动作离散化,例如将旋转分成几个固定的角度步长,将移动分成几个固定的距离步长。
步骤三、设计奖惩函数:
每当执行一个动作,系统都需要提供反馈信息,表明该动作的结果,在每一轮推荐后,根据动作的执行质量、环境影响、严重错误惩罚和任务完成奖励,计算一个即时奖励;
步骤四、初始化深度神经网络模型并开始训练,深度神经网络的输入是木料状态向量和机器人动作的信息,输出是该状态-动作对的估计值,深度神经网络的参数通过梯度下降等优化算法进行训练;
步骤五、模型的更新,根据-贪心策略选择一个动作,获得即时奖励和下一状态;将转移数据存储到回放缓冲区/>中;从/>中随机抽取一批转移数据,计算目标/>值:如果下一状态为终止状态,目标/>值为即时奖励,否则,目标/>值为即时奖励与下一状态/>值的折扣和,/>值由目标网络给出;通过最小化预测/>值和目标/>值的均方误差,更新深度神经网络模型的参数/>;每隔一定步数,将主网络的参数/>复制给目标网络的参数/>,重复步骤,直到收敛或达到最大迭代次数。
在一个优选的实施方式中,奖励函数的计算公式为:
其中,表示即时奖励值,/>表示木料与目标位置之间的距离误差,/>表示最大可能的距离误差,/>表示机械手动作影响到的其他木料数量,/>表示第一指示函数,如果发生如木料掉落或碰撞,则/>,否则/>,/>表示第二指示函数,如果机械手将木料分拣任务成功完成,则/>,否则/>,/>、/>、/>、/>分别表示第一、第二、第三、第四权重系数;第一、第二、第三、第四权重系数决定了执行质量、环境影响、严重错误惩罚和任务完成奖励四者在总奖励中的相对重要性。
在一个优选的实施方式中,将图结构数据输入图神经网络,图神经网络包括第一隐藏层和全连接层,第一隐藏层输出每个节点的第二节点矢量,全连接层输入第二节点矢量,输出一个动作向量;
一个动作向量包括机器人转动的角度、机器人移动的向量和机器人抓取的角度,其中机器人转动的角度表示以机器人的机器爪轴线为转动的轴线,机械爪是用来抱夹木料的,因此可以通过可旋转的机械爪来带动木料自转;机器人移动的向量表示以机械爪当前位置为原点,机械爪移动到下一位置的向量。
在一个优选的实施方式中,第一隐藏层的计算公式如下:
表示第i个节点的第二节点矢量,第二节点矢量为更新之后的节点矢量,/>和/>分别表示第i和j个节点的第一节点矢量,/>和/>分别表示第一和第二权重参数,/>表示第一隐藏层的权重矢量,/>表示与第i个节点直接连接的节点的集合,/>表示/>和邻居节点/>之间的注意力权重。
在一个优选的实施方式中,运用物理模拟软件模拟机器人的抓取动作对每次抓取进行风险评估的方法包括以下步骤:
步骤一、采集机械人抓取动作数据;
步骤二、动作方式建模;
步骤三、根据机器人的动作方式,调整机器人的分拣木料路径的控制点的位置和机械爪的动作方式,生成符合机器人的该种动作方式特点的路径变体;
步骤四、根据机器人的该种动作方式特点的路径变体,物理仿真生成出机器人路径的分拣动画;
步骤五、基于物理仿真的分拣动画,对每次机器人即将执行的抓取动作进行风险评估,预测机器人的抓取动作对整个木料堆产生的影响。
在一个优选的实施方式中,风险评估模型的计算公式为:
其中,表示机械人的机械爪抓取第i根木料动作的风险值,/>表示抓取第i根木料前后的稳定性分数,/>表示抓取第i根木料的动作路径上,第i根木料与木料堆的碰撞风险分数,/>表示抓取第i根木料前后,木料堆扰动评估分数,/>、/>、/>分别表示第一、第二、第三参数,当风险值越大表明该抓取动作的风险越大,需要进行优化或重新规划,反之,若风险值在可接受范围内,则该动作安全可行。
在一个优选的实施方式中,抓取过程中木料的稳定性分数的计算公式如下:
其中,表示抓取第i根木料前后的稳定性分数,/>表示第i根木料重心与地面之间的高度,/>表示第i根木料与机械爪之间的重合面积,/>表示木料在三维空间中与水平面之间的夹角,抓取前后稳定性分数的差值可以衡量抓取动作对第i根木料稳定性的影响程度,/>表示第i根木料的重要性权重,基于木料处于木料堆中的位置和尺寸设置;
抓取过程中木料与木料堆的碰撞风险分数的计算公式如下:
其中,表示抓取第i根木料的动作路径上第i根木料与木料堆的碰撞风险分数,表示第i根木料与木料堆的其他木料碰撞次数,/>表示第i根木料与木料堆的其他木料碰撞的最大力度,/>、/>分别为第一、第二碰撞参数;
抓取过程中木料堆受到的扰动评估分数的计算公式如下:
其中,表示抓取第i根木料前后,木料堆扰动评估分数,/>表示抓取第i根木料后整个木料堆的位移向量之和,/>表示抓取第i根木料前整个木料堆的尺寸,木料堆的尺寸可以采用木料堆的体积表示。
一种存储介质,其存储了非暂时性计算机可读指令,其特征在于,当非暂时性计算机可读指令由计算机执行时,能够执行如上述的一种基于人工智能的机器人分拣控制算法中的步骤。
本发明的有益效果在于:本发明利用X光成像技术和图像分割算法准确识别木料的轮廓和位置信息,再将图像数据转换为三维点云数据,结合标记信息还原出木料堆的三维模型,利用强化学习算法,自主生成机器人分拣木料堆中木料的动作序列,提高了系统的灵活性和适应性,整体流程自动化程度高,只需要输入X光图像就可以自动完成木料识别、建模和动作规划,大大提高了木料分拣效率以及有效地避免机器人抓取木料导致木料堆的坍塌问题的发生。
附图说明
图1是本发明的基于人工智能的机器人分拣控制算法的流程图;
图2是本发明的基于人工智能的机器人分拣控制系统的框图。
图中:100、X光图像采集模块;200、图像处理模块;300、点云数据生成模块;400、点云数据标记模块;500、三维模型建立模块;600、动作生成模块;700、控制模块。
具体实施方式
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,可以在不脱离本说明书内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。另外,相对一些示例所描述的特征在其他例子中也可以进行组合。
如图1所示,一种基于人工智能的机器人分拣控制算法,包括。
步骤101,采集木料堆的X光图像;
布置X光设备采集木料堆的X光图像,布置X光设备需要将X光源置于木料堆的一侧,而X光探测器则置于木料堆的另一侧,一个X光源与一个X光探测器对应,且一个X光源与一个X光探测器为一组X光设备,在木料堆的外围布置多组X光设备,每一组X光设备均能够获得一张对应视角的木料堆的X光图像,所有的X光图像的格式和大小均相同;
需要说明的是,探测器的位置应确保所有操作人员都不会暴露在X射线之下,所有人员在X射线开启时应该处在屏蔽区或远离X射线的范围,X射线的辐射性并没有残留效应,因此只需考虑在扫描时的辐射危险即可,又由于本发明应用于机器人自动化的领域,因此工作人员是远程遥控操作的,一般不需要考虑现场的X光扫描的辐射危险。
步骤102,对X光图像进行图像分割和标记,X光图像中的像素被标记的类别包括:属于木料的轮廓和不属于木料的轮廓;
使用U-Net模型对X光图像进行图像分割和标记方法步骤如下:
一、收集步骤101中的X光图像,对每张X光图像进行像素级别的标注,将X光图像中的每个像素标记为“属于木料的轮廓”或“不属于木料的轮廓”两类之一,将标注后的图像划分为训练集、验证集和测试集;
二、构建U-Net模型,使用Python库构建U-Net模型,U-Net的编码器部分通过卷积和最大池化逐层提取X光图像的特征,解码器部分则通过上采样和跳跃连接来逐步恢复特征的空间维度,最后一层使用1*1卷积将特征映射到“属于木料的轮廓”或“不属于木料的轮廓”两类的像素标签;
三、模型训练,为模型选择合适的损失函数,如交叉熵损失或Dice损失,选择优化器,如Adam或SGD,以批次的形式输入训练数据,使用标签对训练损失进行反向传播,在验证集上监控模型性能,决定是否需要早停或调整超参数;
四、模型评估,在测试集上评估模型的分割性能,计算像素级的评估指标,如精确率、召回率、F1分数和IoU(交并比),可视化分割结果,检查模型在识别木料轮廓和非木料区域的能力;
五、预测及后处理,对新的X光图像输入模型进行预测,对模型输出应用阈值或其他后处理策略以获得最终的分割结果,分割结果为X光图像中所有的像素均被分割出来,并且没有像素均被标记类别,可选地使用形态学操作等传统图像处理方法来优化分割轮廓。
可以利用深度学习模型如U-Net或Mask R-CNN等,这些模型能够学习识别和标记X光图像中每块木料的轮廓,即使是相互重叠的部分。
步骤103,基于采集的X光图像来生成点云数据;
生成点云数据的方法,包括以下步骤:
一、从每个X光图像中提取属于木料的轮廓特征点。这些特征点在每张图像中都应该是可识别的,并在其他图像中有对应的点;
二、对提取的属于木料的轮廓特征点进行匹配,确定各个X光图像之间同一属于木料的轮廓特征点的对应关系;
三、利用匹配上属于木料的轮廓特征点及其在每张图像中的位置,通过三角测量(Triangulation)确定每个点在三维空间中的坐标;
四、根据三维坐标创建点云数据集,其中每个点由一个三维向量表示;三维向量由X、Y、Z轴坐标表示,选择第一张X光图像的左下侧顶点作为坐标系的原点。
步骤104,对生成的点云数据进行标记,步骤103中的点云来源于X光图像中的像素,因此步骤103中的点云与X光图像中的像素具有映射关系,通过映射关系对步骤103中的点云进行标记,先将点云来源的X光图像中的像素被标记的类别进行汇总,如果点云来源的X光图像中的像素被标记为属于木料的轮廓的像素的类别的数量大于一半,则将该点云标记为属于木料的轮廓的点云,否则将该点云标记为不属于木料的轮廓的点云;
例如,采集了4张X光图像,其中4张X光图像中对应木料堆中某一点的像素有3张X光图像中对应木料堆中该点的像素被标记为属于木料的轮廓的像素,有1张X光图像中对应木料堆中该点的像素被标记为不属于木料的轮廓的像素,则需要将该点云标记为属于木料的轮廓的点云。
步骤105,基于被标记的点云数据进行建模获得木料堆的三维模型;
将多组被标记为木料的轮廓的像素生成的点云数据融合成一个完整的点云模型,使用三维建模软件对点云进行表面重建,生成木料堆的三维模型。
步骤106,使用策略生成算法来生成机器人的动作;
步骤107,控制机器人执行步骤106中生成的机器人的动作。
在本发明的一个实施例中,在步骤106中,策略生成算法为Q-learning算法,使用Q-learning算法生成机器人的动作的方法包括:
将木料在三维空间内位置、姿态以及堆叠的状态信息编码为状态向量;
状态向量的维度取决于所纳入的特征数量和编码方式;
例如,可以使用卷积神经网络(CNN)提取X光图像的特征作为木料状态特征;
CNN通过多层卷积和池化操作,自动提取X光图像的高层特征,如纹理、尺寸等;
状态向量将木料在三维空间内位置、姿态以及堆叠的特征按顺序拼接的;
定义状态空间:
对于每个木料,记录其在三维空间内位置、姿态以及堆叠的状态;
木料的位置用三维坐标表示,木料的姿态用欧拉角的方式表示,木料的堆叠的状态用木料上方和下方临近木料编号表示;
当机器人处于特定状态时,它将根据Q值来选择下一个执行的动作,也就是抽取动作的一个子步骤;
定义动作空间:动作空间包括了机器人可以执行的所有可能的动作;
将动作细分为:
定位:移动到特定木料上方的动作;
抓取:降低抓取装置并进行合适的闭合以夹住木料;
转动:在夹持木料的状态下,进行必要的转动以调整木料的姿态;
提升:抬起木料以离开原位置;
移动:带着木料移到新的位置;
放置:在目标位置释放木料;
抽取动作的定义:
旋转:定义为旋转木料。
水平移动:定义为在三维空间内移动木料,需要移动的方向和移动距离。
连续动作的转换为离散动作:
将连续动作(如旋转的角度、移动的距离)离散化,例如将旋转分成几个固定的角度步长,将移动分成几个固定的距离步长。
设计奖惩函数:
在Q-learning中,策略是由状态到动作的映射;每当执行一个动作,系统都需要提供反馈信息,表明该动作的结果,在每一轮推荐后,根据动作的执行质量、环境影响、严重错误惩罚和任务完成奖励,计算一个即时奖励;
奖励函数的计算公式为:
其中,表示即时奖励值,/>表示木料与目标位置之间的距离误差,/>表示最大可能的距离误差,/>表示机械手动作影响到的其他木料数量,/>表示第一指示函数,如果发生如木料掉落或碰撞,则/>,否则/>,/>表示第二指示函数,如果机械手将木料分拣任务成功完成,则/>,否则/>,/>、/>、/>、/>分别表示第一、第二、第三、第四权重系数;第一、第二、第三、第四权重系数决定了执行质量、环境影响、严重错误惩罚和任务完成奖励四者在总奖励中的相对重要性,第一、第二、第三、第四权重系数的设置可以根据木料分拣的需求来调整,例如,如果动作的执行质量被认为是最重要的,可以给/>分配更大的数值。
需要说明的是,利用深度学习和模式识别算法来分析传感器数据,区分和标定每一块木料的位置、大小和可能的接触点,及其相互之间的关系,可以将来自不同类型传感器的数据进行综合分析,以获得更完整的环境模型,有利于确定木料堆中各物体之间的相互作用,预测抓取行为的后果;
使用深度神经网络表示Q函数近似器:
使用深度神经网络来近似Q函数,深度神经网络的输入是木料状态向量和机器人动作的信息,输出是该状态-动作对的估计值;
深度神经网络的参数通过梯度下降等优化算法进行训练;
目标网络:
除了主深度神经网络外,还维护一个目标网络;
目标网络的架构与主深度神经网络相同;
目标网络的参数定期从主网络复制,用于计算目标Q值;
使用目标网络可以提高训练的稳定性,避免目标值的震荡;
经验回放:
在推荐过程中,将每一轮的转移数据存储到一个回放缓冲区/>中;
其中,表示机器人抓取的木料前木料堆的状态向量,/>表示为机器人的动作,/>表示机器人的动作的奖励,/>表示机器人抓取的木料后木料堆的状态向量;
在训练深度神经网络时,随机从回放缓冲区中抽取一批转移数据作为训练样本;
-贪心探索:
在选择机器人的动作时,以的概率随机选择一个动作,以1减/>的概率选择/>值最高的动作;
1≥≥0,初始值为0.1。
按指数规律衰减,如每1000步衰减为原来的0.9倍。
随着训练的进行,的值逐渐衰减,使探索逐渐减少,利用逐渐增加;
探索和利用的平衡可以避免算法过早陷入局部最优;
推荐模型的训练过程包括:
初始化主深度神经网络和目标网络的参数和/>;
重复以下步骤,直到收敛或达到最大迭代次数;
根据-贪心策略选择一个动作,获得即时奖励和下一状态;
将转移数据存储到回放缓冲区中;
从中随机抽取一批转移数据,计算目标/>值:
如果下一状态为终止状态,目标值为即时奖励,否则,目标/>值为即时奖励与下一状态/>值的折扣和,/>值由目标网络给出;
通过最小化预测值和目标/>值的均方误差,更新主深度神经网络(Q-network)的参数/>;
每隔一定步数,将主网络的参数复制给目标网络的参数/>。
在本发明的另一个实施例中,在步骤106中,策略生成算法为采用图神经网络模型生成机器人的动作,方法如下:
图的定义:基于x光图像中的信息构建图结构数据,图结构数据中包括节点和边,一个节点表示一个木料或机器人,两个节点之间存在边的条件是:
这两个节点均表示木料,并且这两个木料相互交叉;
这两个节点中一个表示木料,另一个表示机器人,该木料被机器人夹持;
图结构数据还包括每个节点对应的第一节点矢量;
表示木料的节点的第一节点矢量根据木料所在三维空间的位置信息编码获得;
表示机器人的节点的第一节点矢量根据机器人的动作信息编码获得;
木料所在三维空间的位置信息和机器人的动作信息都可以被文本信息所表示,也可以采用文本编码的方式获得对应的第一节点矢量;
将图结构数据输入图神经网络,图神经网络包括第一隐藏层和全连接层,第一隐藏层输出每个节点的第二节点矢量,全连接层输入第二节点矢量,输出一个动作向量;
一个动作向量包括机器人转动的角度、机器人移动的向量和机器人抓取的角度,其中机器人转动的角度表示以机器人的机器爪轴线为转动的轴线,机械爪是用来抱夹木料的,因此可以通过可旋转的机械爪来带动木料自转;机器人移动的向量表示以机械爪当前位置为原点,机械爪移动到下一位置的向量;
第一隐藏层的计算公式如下:
表示第i个节点的第二节点矢量,第二节点矢量为更新之后的节点矢量,/>和/>分别表示第i和j个节点的第一节点矢量,/>和/>分别表示第一和第二权重参数(可训练的参数),/>表示第一隐藏层的权重矢量(可训练的参数),/>表示与第i个节点直接连接的节点的集合,/>表示/>和邻居节点/>之间的注意力权重;
在本发明的一个实施例中,在抓取前,可以运用物理模拟软件模拟机器人的抓取动作对每次抓取进行风险评估,以判断上述输出的机器人的动作是否安全可行;
风险评估的方法包括以下步骤;
步骤一、采集机械人抓取动作数据;
在实际分拣过程中,使用视频采集和动作捕捉等设备记录机器人的机械爪的动作数据;
动作数据包括机械爪的路径数据、动作序列数据(如夹、转、移动等)和力度数据;
其中,机械爪的路径数据通过动作捕捉采集的机械爪移动轨迹得到;动作序列数据的获取通过机械爪位置的变化幅度和方向,判断是夹、转、移动的动作,将识别出的动作类型和持续时间与时间戳对齐,生成动作序列数据;力度数据的获取通过机器爪之间的压力传感器采集得到。
对机器人的机械爪的动作数据进行预处理,预处理方法包括滤波、平滑、归一化等,用于提高数据质量;
步骤二、动作方式建模;
将预处理后的机器人的机械爪的动作数据分割成一个个动作片段,每个动作片段包含一定长度的轨迹、动作和力度序列;
使用时间序列聚类算法(如DTW、K-means等)对动作片段进行聚类,获得机械人的动作方式;
每个聚类中心表示机械人的一种动作方式,包含机械人的该种动作方式的平均轨迹、动作和力度序列;
步骤三、根据机器人的动作方式,调整机器人的分拣木料路径的控制点的位置和机械爪的动作方式,生成符合机器人的该种动作方式特点的路径变体;
步骤四、根据机器人的该种动作方式特点的路径变体,物理仿真生成出机器人路径的分拣动画;
步骤五、基于物理仿真的分拣动画,对每次机器人即将执行的抓取动作进行风险评估,预测机器人的抓取动作对整个木料堆产生的影响;
考虑木料稳定性、碰撞风险、整体木料堆扰动三个因素,建立风险评估模型;
风险评估模型的计算公式为:
其中,表示机械人的机械爪抓取第i根木料动作的风险值,/>表示抓取第i根木料前后的稳定性分数,/>表示抓取第i根木料的动作路径上,第i根木料与木料堆的碰撞风险分数,/>表示抓取第i根木料前后,木料堆扰动评估分数,/>、/>、/>分别表示第一、第二、第三参数,当风险值越大表明该抓取动作的风险越大,需要进行优化或重新规划,反之,若风险值在可接受范围内,则该动作较为安全可行。
在本发明的一个实施例中,抓取过程中木料的稳定性分数的计算公式如下:
其中,表示抓取第i根木料前后的稳定性分数,/>表示第i根木料重心与地面之间的高度,/>表示第i根木料与机械爪之间的重合面积,/>表示木料在三维空间中与水平面之间的夹角,抓取前后稳定性分数的差值可以衡量抓取动作对第i根木料稳定性的影响程度,/>表示第i根木料的重要性权重,基于木料处于木料堆中的位置和尺寸设置,例如,将木料堆分为上中下三层,若该木料贯穿上中下三层,则给木料分配一个较高的权重/>,将木料堆中的木料按尺寸大小顺序排列,基于木料所处的序号,给木料分配相应的权重/>;
在本发明的一个实施例中,抓取过程中木料与木料堆的碰撞风险分数的计算公式如下:
其中,表示抓取第i根木料的动作路径上第i根木料与木料堆的碰撞风险分数,表示第i根木料与木料堆的其他木料碰撞次数,/>表示第i根木料与木料堆的其他木料碰撞的最大力度,/>、/>分别为第一、第二碰撞参数;
在本发明的一个实施例中,抓取过程中木料堆受到的扰动评估分数的计算公式如下:
其中,表示抓取第i根木料前后,木料堆扰动评估分数,/>表示抓取第i根木料后整个木料堆的位移向量之和,/>表示抓取第i根木料前整个木料堆的尺寸,木料堆的尺寸可以采用木料堆的体积表示。/>
如图2所示,一种基于人工智能的机器人分拣控制系统,包括以下模块:
X光图像采集模块100,用于采集木料堆的X光图像;
图像处理模块200,用于对X光图像进行图像分割和标记,X光图像中的像素被标记的类别包括:属于木料的轮廓和不属于木料的轮廓;
点云数据生成模块300,基于采集的X光图像来生成点云数据;
点云数据标记模块400,用于对点云数据进行标记;
三维模型建立模块500,基于被标记的点云数据进行建模获得木料堆的三维模型;
动作生成模块600,使用策略生成算法来生成机器人的动作;
控制模块700,控制机器人执行生成的机器人的动作。
一种存储介质,其存储了非暂时性计算机可读指令,当非暂时性计算机可读指令由计算机执行时,能够执行如上述的一种基于人工智能的机器人分拣控制算法中的步骤。
上面对本实施例的实施例进行了描述,但是本实施例并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本实施例的启示下,还可做出很多形式,均属于本实施例的保护之内。
Claims (6)
1.一种基于人工智能的机器人分拣控制算法,其特征在于,包括以下步骤:
步骤101,采集木料堆的X光图像;
步骤102,对X光图像进行图像分割和标记,X光图像中的像素被标记的类别包括:属于木料的轮廓和不属于木料的轮廓;
步骤103,基于采集的X光图像来生成点云数据;
步骤104,对生成的点云数据进行标记,点云数据的类别包括:属于木料的轮廓的点云和不属于木料的轮廓的点云;
步骤105,基于被标记的点云数据进行建模获得木料堆的三维模型;
步骤106,使用策略生成算法来生成机器人的动作;
步骤107,控制机器人执行步骤106中生成的机器人的动作;
在步骤106中,使用策略生成算法来生成机器人的动作的方法包括:
步骤一、定义状态空间:对于木料堆的每个木料,记录木料在木料堆内的位置、姿态以及堆叠的状态;
步骤二、定义动作空间:动作空间包括了机器人能执行的所有可能的动作;
将动作细分为:
定位:移动到特定木料上方的动作;
抓取:降低抓取装置并进行合适的闭合以夹住木料;
转动:在夹持木料的状态下,进行必要的转动以调整木料的姿态;
提升:抬起木料以离开原位置;
移动:带着木料移到新的位置;
放置:在目标位置释放木料;
抽取动作的定义:
旋转:定义为旋转木料;
水平移动:定义为在三维空间内移动木料,需要移动的方向和移动距离;
连续动作的转换为离散动作:
将连续动作离散化;
步骤三、设计奖惩函数:
每当执行一个动作,系统都需要提供反馈信息,表明该动作的结果,在每一轮推荐后,根据动作的执行质量、环境影响、严重错误惩罚和任务完成奖励,计算一个即时奖励;
步骤四、初始化深度神经网络模型并开始训练,深度神经网络的输入是木料状态向量和机器人动作的信息,输出是该状态-动作对的估计值,深度神经网络的参数通过梯度下降优化算法进行训练;
步骤五、模型的更新,根据-贪心策略选择一个动作,获得即时奖励和下一状态;将转移数据存储到回放缓冲区/>中;从/>中随机抽取一批转移数据,计算目标/>值:如果下一状态为终止状态,目标/>值为即时奖励,否则,目标/>值为即时奖励与下一状态/>值的折扣和,/>值由目标网络给出;通过最小化预测/>值和目标/>值的均方误差,更新深度神经网络模型的参数;每隔一定步数,将主网络的参数/>复制给目标网络的参数/>,重复步骤,直到收敛或达到最大迭代次数;
奖励函数的计算公式为:;
其中,表示即时奖励值,/>表示木料与目标位置之间的距离误差,/>表示最大可能的距离误差,/>表示机械手动作影响到的其他木料数量,/>表示第一指示函数,如果发生木料掉落或碰撞,则/>,否则/>,/>表示第二指示函数,如果机械手将木料分拣任务成功完成,则/>,否则/>,/>、/>、/>、/>分别表示第一、第二、第三、第四权重系数;第一、第二、第三、第四权重系数决定了执行质量、环境影响、严重错误惩罚和任务完成奖励四者在总奖励中的相对重要性;
将图结构数据输入图神经网络,图神经网络包括第一隐藏层和全连接层,第一隐藏层输出每个节点的第二节点矢量,全连接层输入第二节点矢量,输出一个动作向量;
一个动作向量包括机器人转动的角度、机器人移动的向量和机器人抓取的角度,其中机器人转动的角度表示以机器人的机器爪轴线为转动的轴线,机械爪是用来抱夹木料的,通过可旋转的机械爪来带动木料自转;机器人移动的向量表示以机械爪当前位置为原点,机械爪移动到下一位置的向量;
第一隐藏层的计算公式如下:;
;
;
;
表示第i个节点的第二节点矢量,第二节点矢量为更新之后的节点矢量,/>和/>分别表示第i和j个节点的第一节点矢量,/>和/>分别表示第一和第二权重参数,/>表示第一隐藏层的权重矢量,/>表示与第i个节点直接连接的节点的集合,/>表示/>和邻居节点/>之间的注意力权重。
2.根据权利要求1所述的一种基于人工智能的机器人分拣控制算法,其特征在于,运用物理模拟软件模拟机器人的抓取动作对每次抓取进行风险评估的方法包括以下步骤:
步骤一、采集机械人抓取动作数据;
步骤二、动作方式建模;
步骤三、根据机器人的动作方式,调整机器人的分拣木料路径的控制点的位置和机械爪的动作方式,生成符合机器人的动作方式特点的路径变体;
步骤四、根据机器人的该种动作方式特点的路径变体,物理仿真生成出机器人路径的分拣动画;
步骤五、基于物理仿真的分拣动画,对每次机器人下一步执行的抓取动作进行风险评估,预测机器人的抓取动作对整个木料堆产生的影响。
3.根据权利要求2所述的一种基于人工智能的机器人分拣控制算法,其特征在于,风险评估模型的计算公式为:;
其中,表示机械人的机械爪抓取第i根木料动作的风险值,/>表示抓取第i根木料前后的稳定性分数,/>表示抓取第i根木料的动作路径上,第i根木料与木料堆的碰撞风险分数,表示抓取第i根木料前后,木料堆扰动评估分数,/>、/>、/>分别表示第一、第二、第三参数,当风险值越大表明该抓取动作的风险越大,需要进行优化或重新规划,反之,若风险值在可接受范围内,则该抓取动作安全可行。
4.根据权利要求3所述的一种基于人工智能的机器人分拣控制算法,其特征在于,抓取过程中木料的稳定性分数的计算公式如下:;
其中,表示抓取第i根木料前后的稳定性分数,/>表示第i根木料重心与地面之间的高度,/>表示第i根木料与机械爪之间的重合面积,/>表示木料在三维空间中与水平面之间的夹角,抓取前后稳定性分数的差值可以衡量抓取动作对第i根木料稳定性的影响程度,/>表示第i根木料的重要性权重,基于木料处于木料堆中的位置和尺寸设置;
抓取过程中木料与木料堆的碰撞风险分数的计算公式如下:
;
其中,表示抓取第i根木料的动作路径上第i根木料与木料堆的碰撞风险分数,/>表示第i根木料与木料堆的其他木料碰撞次数,/>表示第i根木料与木料堆的其他木料碰撞的最大力度,/>、/>分别为第一、第二碰撞参数;
抓取过程中木料堆受到的扰动评估分数的计算公式如下:
;
其中,表示抓取第i根木料前后,木料堆扰动评估分数,/>表示抓取第i根木料后整个木料堆的位移向量之和,/>表示抓取第i根木料前整个木料堆的尺寸,木料堆的尺寸采用木料堆的体积表示。
5.一种实施权利要求1-4任意一项所述的基于人工智能的机器人分拣控制算法的控制系统,其特征在于,包括以下模块:
X光图像采集模块(100),用于采集木料堆的X光图像;
图像处理模块(200),用于对X光图像进行图像分割和标记,X光图像中的像素被标记的类别包括:属于木料的轮廓和不属于木料的轮廓;
点云数据生成模块(300),基于采集的X光图像来生成点云数据;
点云数据标记模块(400),用于对点云数据进行标记;
三维模型建立模块(500),基于被标记的点云数据进行建模获得木料堆的三维模型;
动作生成模块(600),使用策略生成算法来生成机器人的动作;
控制模块(700),控制机器人执行生成的机器人的动作。
6.一种存储介质,其存储了非暂时性计算机可读指令,其特征在于,当非暂时性计算机可读指令由计算机执行时,能够执行如权利要求4所述的一种基于人工智能的机器人分拣控制算法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410411147.3A CN118003339B (zh) | 2024-04-08 | 一种基于人工智能的机器人分拣控制算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410411147.3A CN118003339B (zh) | 2024-04-08 | 一种基于人工智能的机器人分拣控制算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118003339A CN118003339A (zh) | 2024-05-10 |
CN118003339B true CN118003339B (zh) | 2024-06-07 |
Family
ID=
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182689A (zh) * | 2016-12-08 | 2018-06-19 | 中国科学院沈阳自动化研究所 | 应用于机器人搬运打磨领域的板状工件三维识别定位方法 |
RU2745380C1 (ru) * | 2020-09-03 | 2021-03-24 | Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) | Способ и система захвата объектов с помощью роботизированного устройства |
CN113954072A (zh) * | 2021-11-05 | 2022-01-21 | 中国矿业大学 | 一种视觉引导的木门工件智能识别定位系统及方法 |
CN115240087A (zh) * | 2022-06-29 | 2022-10-25 | 国网山西省电力公司晋城供电公司 | 基于双目立体视觉及激光点云的树障定位分析方法及系统 |
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182689A (zh) * | 2016-12-08 | 2018-06-19 | 中国科学院沈阳自动化研究所 | 应用于机器人搬运打磨领域的板状工件三维识别定位方法 |
RU2745380C1 (ru) * | 2020-09-03 | 2021-03-24 | Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) | Способ и система захвата объектов с помощью роботизированного устройства |
CN113954072A (zh) * | 2021-11-05 | 2022-01-21 | 中国矿业大学 | 一种视觉引导的木门工件智能识别定位系统及方法 |
CN115240087A (zh) * | 2022-06-29 | 2022-10-25 | 国网山西省电力公司晋城供电公司 | 基于双目立体视觉及激光点云的树障定位分析方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112476434B (zh) | 一种基于协作机器人的视觉3d取放方法及系统 | |
CN109960880B (zh) | 一种基于机器学习的工业机器人避障路径规划方法 | |
CN111203878B (zh) | 一种基于视觉模仿的机器人序列任务学习方法 | |
JP7100426B2 (ja) | ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法 | |
Cao et al. | Suctionnet-1billion: A large-scale benchmark for suction grasping | |
CN112297013B (zh) | 一种基于数字孪生和深度神经网络的机器人智能抓取方法 | |
CN110238840B (zh) | 一种基于视觉的机械臂自主抓取方法 | |
CN105082132A (zh) | 力-扭矩任务的快速机器人模仿学习 | |
JP2018202550A (ja) | 機械学習装置、機械学習方法、および機械学習プログラム | |
CN109159113A (zh) | 一种基于视觉推理的机器人作业方法 | |
CN115070780B (zh) | 基于数字孪生的工业机器人抓取方法、装置及存储介质 | |
CN114029951A (zh) | 基于深度相机的机器人自主识别智能抓取方法 | |
Zhao et al. | Towards robotic assembly by predicting robust, precise and task-oriented grasps | |
Pretorius et al. | Evolutionary robotics applied to hexapod locomotion: A comparative study of simulation techniques | |
US20210031365A1 (en) | System and method for predicting robotic tasks with deep learning | |
CN118003339B (zh) | 一种基于人工智能的机器人分拣控制算法 | |
CN118003339A (zh) | 一种基于人工智能的机器人分拣控制算法 | |
CN112045680A (zh) | 一种基于行为克隆的布料码垛机器人控制系统及控制方法 | |
CN116276973A (zh) | 基于深度学习的视觉感知抓取训练方法 | |
KR102452315B1 (ko) | 딥러닝과 마커를 이용한 비전인식을 통한 로봇 제어장치 및 그 방법 | |
CN114131603A (zh) | 基于感知增强和场景迁移的深度强化学习机器人抓取方法 | |
WO2023014369A1 (en) | Synthetic dataset creation for object detection and classification with deep learning | |
Su et al. | A fully automatic calibration for vision-based selective compliance assembly robot arm and its application to intelligent wafer inspection scheduling | |
Li et al. | Grasping Detection Based on YOLOv3 Algorithm | |
US20240013542A1 (en) | Information processing system, information processing device, information processing method, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |