基于局部点云的抓取位姿检测方法、系统、设备及机器人
文献发布时间:2024-05-31 01:29:11
技术领域
本发明涉及机器人技术领域,尤其涉及一种基于局部点云的抓取位姿检测方法、系统、设备及机器人。
背景技术
随着经济和科技的迅速发展,机器人已经被广泛应用于工业、医疗、公共服务等领域。由于机器人的应用环境变得越来越复杂,人们对于机器人的自动化要求也越来越高。对于人类来说,对物体的视觉识别和操纵是一项相对简单的任务,但是对于机器人来说,物体抓取是机器人技术中基本但最具挑战性的任务。机器人通过识别和操纵物体实现与工作环境的交互。为了实现良好的抓取工作,机器人通常至少包括机械臂以及安装在机器臂末端的末端夹爪,机械臂是通过模拟人的手臂来设计的多自由度机械结构,机械臂的任务是将末端夹爪送到合适的位置,然后由末端夹爪具体执行抓取动作。目前,使用最为广泛还是带有示教功能的机械臂,它以其操作简单、入门快、定位精准等特点广泛应用于各行各业,该机械臂基于人工视觉先验知识为基础,采用编程以及拖动示教的方式提前设定抓取位置,使得机械臂只能以设置好的末端姿态前往设定位置执行设定抓取任务,一旦抓取点的位置变化或者存在障碍物,机械臂可能无法完成任务,只能重新编辑或者重新示教的方式实现功能,因此这种方法存在泛化能力差,灵活性差的问题。
不同于机器人在结构化环境下对待抓取目标的抓取,非结构环境往往具有高度动态性以及不确定性,其中的物体也往往是未知的,由于未知物体在模型数据库中没有相应的几何模型和外观信息,无法利用先验知识,由此非结构化环境下的自主抓取在精度和稳定性方面还存在很大的提升空间。
发明内容
为了解决现有技术所存在的技术问题,本发明提供一种基于局部点云的抓取位姿检测方法、系统、设备及机器人,实施时简单快捷,具有较强的实时性,可实现对待抓取目标的准确可靠的抓取。
本发明提供一种基于局部点云的抓取位姿检测方法,包括:确定局部抓取区域;所述局部抓取区域为全局场景中待抓取目标所在的局部点云区域;根据所述局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取所述待抓取目标的位姿数据。
根据本发明提供的一种基于局部点云的抓取位姿检测方法,所述确定局部抓取区域,包括:根据预设视觉引导算法从所述全局场景中选取中心点;从所述全局场景中割取所述局部抓取区域,所述局部抓取区域为以所述中心点为中心的几何邻域,所述几何邻域的尺寸为预设区域阈值。
根据本发明提供的一种基于局部点云的抓取位姿检测方法,所述根据预设视觉引导算法从所述全局场景中选取中心点,包括:利用ResNet网络生成所述全局场景的抓取热力图;根据抓取热力图进行全局引导,并基于所述抓取热力图的抓取置信度从所述全局场景中选取中心点。
根据本发明提供的一种基于局部点云的抓取位姿检测方法,所述根据预设视觉引导算法从所述全局场景中选取中心点,包括:基于预设目标检测算法和预设实例分割算法生成所述全局场景的检测分割结果图;根据所述检测分割结果图进行局部引导,并基于所述检测分割结果图的检测分割置信度确定所述全局场景中待抓取目标所在的局部检测网格;将所述局部检测网格的中心作为所述中心点。
根据本发明提供的一种基于局部点云的抓取位姿检测方法,所述根据所述局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取所述待抓取目标的位姿数据,包括:基于PointMLP的局部点云抓取检测模型编码器来提取所述局部抓取区域的特征向量;根据所述特征向量预测抓取所述待抓取目标的位姿数据;所述抓取所述待抓取目标的位姿数据包括抓取朝向预测头数据、抓取宽度预测头数据和抓取偏移预测头数据。
根据本发明提供的一种基于局部点云的抓取位姿检测方法,所述根据所述特征向量预测抓取所述待抓取目标的位姿数据,包括:根据所述特征向量和第一预设公式预测抓取所述待抓取目标的位姿数据;所述第一预设公式为:
G
其中,G
根据本发明提供的一种基于局部点云的抓取位姿检测方法,所述确定抓取所述待抓取目标的位姿数据之后,还包括:根据所述待抓取目标的位姿数据,基于交互式的目标导向抓取算法执行多功能下游抓取任务,所述多功能下游抓取任务包括特定目标抓取任务和场景级抓取任务。
本发明还提供一种基于局部点云的抓取位姿检测系统,包括:视觉引导模块,用于确定局部抓取区域;所述局部抓取区域为全局场景中待抓取目标所在的局部点云区域;抓取位姿数据确定模块,用于根据所述局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取所述待抓取目标的位姿数据。
本发明还提供一种机器人,包括上述的基于局部点云的抓取位姿检测系统。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于局部点云的抓取位姿检测方法。
本发明提供的一种基于局部点云的抓取位姿检测方法、系统、设备及机器人,该方法包括确定局部抓取区域;局部抓取区域为全局场景中待抓取目标所在的局部点云区域;根据局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取待抓取目标的位姿数据。该方法灵活高效,简单快捷,具有较强的实时性,可在多种复杂场景中实现对待抓取目标的准确可靠的抓取。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的基于局部点云的抓取位姿检测方法的流程示意图;
图2是本发明提供的基于局部点云的抓取位姿检测方法的原理示意图;
图3是本发明提供的视觉引导算法的原理示意图之一;
图4是本发明提供的视觉引导算法的原理示意图之二;
图5是本发明提供的智能抓取交互式界面机器人执行操作示意图;
图6是本发明提供的交互式的目标导向抓取算法的流程示意图;
图7是本发明提供的基于局部点云的抓取位姿检测系统的结构示意图;
图8是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
由于科学技术的进步和工业自动化进程的推动,智能机器人的相关研究取得了跨越式发展,在产业升级方面发挥着重大作用。机器人智能抓取技术是包括智能制造、服务行业和医疗辅助在内的各个领域中各种更加复杂的机器人智能操作任务的基础。
现有技术中,为使机器人能够稳定地完成抓取动作,通常会为机器人提供结构化场景,即先行将待抓取目标按照预定的位姿位置在生产线上,在此情况下,机器人只需要进行调试,即可按照设定的程序进行机械式的抓取动作,此种方式简单易操作。然而当待抓取目标出现外形或位置的变化时,可能带来抓取不稳定导致掉落,抓取位置错误导致无法抓起等问题,而其中最严重的后果就是抓取位置干涉导致碰撞,会给待抓取目标、夹持器、机械臂乃至整个机器人系统带来严重后果。
尽管机器人智能抓取技术如此重要,但是机器人抓取算法在许多不同场景中的抓取检效率和质量仍不能令人满意,尤其是在非结构化场景(未知物体、未知场景)的泛化性以及面向特定抓取目标的抓取方面并未有十分深入的研究与成熟的方案。
请参考图1,图1为本发明提供的基于局部点云的抓取位姿检测方法的流程示意图。
为了解决现有技术所存在的技术问题,本发明提供一种基于局部点云的抓取位姿检测方法,包括:
101:确定局部抓取区域;局部抓取区域为全局场景中待抓取目标所在的局部点云区域;
102:根据局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取待抓取目标的位姿数据。
目标抓取可分解为场景信息获取、抓取位姿检测、运动规划和动作执行等环节,其中最重要的环节是抓取位姿检测。考虑到现有技术的抓取检测算法对未知物体生成抓取质量差,以及对指定物体抓取计算结果不鲁棒、计算过程冗余的问题。本发明提供了一种基于局部点云的抓取位姿检测方法(FlexLoG),以抓取为中心视角,面向不同下游实际任务需求,进行多功能六自由度抓取位姿检测,基于局部点云抓取检测模型(LOG)构造,聚焦于局部点云的处理与分析,通过学习与场景和物体无关的几何特征,提升对未知物体的泛化性,消除了冗余计算,对未知物体的抓取质量有较大提升。同时可灵活地接入多种不同视觉引导算法,并能部署到二指夹具的六/七自由度机械臂上,实现物体通用抓取与交互式目标导向抓取。
在上述实施例的基础上:
请参考图2,图2为本发明提供的基于局部点云的抓取位姿检测方法的原理示意图。
请参考图3,图3为本发明提供的视觉引导算法的原理示意图之一。
请参考图4,图4为本发明提供的视觉引导算法的原理示意图之二。
作为一种优选的实施例,确定局部抓取区域,包括:根据预设视觉引导算法从全局场景中选取中心点;从全局场景中割取局部抓取区域,局部抓取区域为以中心点为中心的几何邻域,几何邻域的尺寸为预设区域阈值。
考虑到现有技术中目标抓取耗时长、计算量大、对未知物体生成抓取质量差,以及对指定物体抓取计算结果不鲁棒、计算过程冗余的问题,在本实施例中,通过视觉引导模块(FGM)确定局部抓取区域。视觉引导模块兼容特定目标抓取引导和场景级抓取引导,可聚焦多个局部抓取区域。本实施例能够使用不同的视觉引导方式,例如,抓取场景级热力图进行全局引导;特定目标抓取引导方法进行物体检测从而提供局部引导。具体的,首先RGBD图像作为全局场景输入,在视觉引导模块中,通过不同的引导方式选取可能的抓取中心点。将每个中心点转到三维空间中,然后割取以该点为中心的几何邻域(例如球形邻域)作为局部点云抓取检测模型的输入,该方法实施时简单快捷,在非结构化场景中表现出更大的灵活性和卓越的泛化能力,使其在更广泛的应用中更具适应性和有效性。
其中,预设区域阈值可以根据实际部署的不同夹具大小适当调整,从而达到更好的抓取效果与模型泛用性。
场景级抓取是以目标不可知的方式生成对整个场景的抓取。
作为一种优选的实施例,根据预设视觉引导算法从全局场景中选取中心点,包括:利用ResNet网络生成全局场景的抓取热力图;根据抓取热力图进行全局引导,并基于抓取热力图的抓取置信度从全局场景中选取中心点。
在本实施例中,利用ResNet网络生成全局场景的抓取热力图,并基于抓取热力图的抓取置信度从全局场景中选取中心点,指导图像空间中抓取位置的识别。例如,直接采用预训练的热力图检查点和graspness模型作为场景级引导,在有具体指导的情况下,默认聚合K=48个局部抓取区域。
graspness模型是可抓取性嵌入端到端三维神经网络结构,在单目点云上直接预测整个场景可行的抓取姿态,根据采样密度,抓取姿态可从数千到数万不等,整个过程仅需数十毫秒。基于全场景的密集的抓取姿态,后续任务可根据目标及运动约束选择合适的抓取位姿。
随着采样中心K的数量增加,热力图的分辨率也会增加,从而对可分割局部抓取区域进行更准确的描述。
作为一种优选的实施例,根据预设视觉引导算法从全局场景中选取中心点,包括:基于预设目标检测算法和预设实例分割算法生成全局场景的检测分割结果图;根据检测分割结果图进行局部引导,并基于检测分割结果图的检测分割置信度确定全局场景中待抓取目标所在的局部检测网格;将局部检测网格的中心作为中心点。
在本实施例中,基于预设目标检测算法(例如Grounding DINO目标检测算法)和预设实例分割算法(例如Segment Anything Model实例分割算法)生成所述全局场景的检测分割结果图(检测结果图或分割结果图),以局部区域抓取为中心的数据进行训练,基于检测分割结果图的检测分割置信度(检测或分割置信度)可以直接生成对目标部位的抓取检测网格(局部检测网格),以完成视觉定位。该方法允许直接处理局部点云,而不是整个场景,从而消除了冗余计算。并且在待抓取目标不可知的情况下确保了对待抓取目标的更高的抓取质量。具体的,首先以固定网格大小在场景中对2D网格中的像素进行均匀采样。每个网格中心与3D空间中的特定点相关,然后将其用作局部抓取区域聚合的中心。
值得注意的是,网格大小是可调整的,从而在抓取预测的质量和时间效率之间实现量身定制的平衡。
此外,本发明还可以很容易地结合局部可供性,以便于掌握特定目标抓取位姿数据。
作为一种优选的实施例,根据局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取待抓取目标的位姿数据,包括:基于PointMLP的局部点云抓取检测模型编码器来提取局部抓取区域的特征向量;根据特征向量预测抓取待抓取目标的位姿数据;抓取待抓取目标的位姿数据包括抓取朝向预测头数据、抓取宽度预测头数据和抓取偏移预测头数据。
作为一种优选的实施例,根据特征向量预测抓取待抓取目标的位姿数据,包括:根据特征向量和第一预设公式预测抓取待抓取目标的位姿数据;第一预设公式为:
G
其中,G
在本实施例中,基于预训练的局部点云抓取检测模型,聚焦在提取局部抓取区域中的与抓取生成相关的几何特征,进而再通过三个不同的分支预测头来预测与相应区域中心对齐的抓取的不同参数。具体的,利用PointMLP作为编码器来提取局部抓取区域的特征向量,并在效率和精度之间实现了更好的平衡。本发明避免了与抓取无关的物体信息或场景中其他干扰信息,能够生成更高质量的抓取,特别是对未知物体。同时也能够灵活的在视觉引导模块中接入不同的引导算法,从而实现多功能下游抓取任务(特定目标抓取生成或场景级抓取生成)。
假设通过不同的引导方法获得了多个分组局部抓取区域,本发明的目标是预测每个区域内的抓取位姿数据,如第一预设公式所示。
其中,f
为了更好地拟合预测区域内抓取的任务,一个区域级抓取g
g
其中,
考虑到实际抓取中心和区域中心之间可能存在错位。为了进一步提高抓取的精准性,引入了一个偏移量Δt=(Δx,Δy,Δz)∈R
g=(x
其中,g为全局场景下的抓取,x
局部点云抓取检测模型是一个能够仅利用局部信息预测高质量抓取的模型,表示为g
在局部点云抓取检测模型的宽度预测头中,根据预定义的范围,抓取宽度预测被视为一个回归问题,以避免与附近物体碰撞。这些预测的宽度涉及到重要的局部碰撞信息,随后在偏移头和朝向头中使用。沿着三个轴回归归一化的抓取位置偏移,从而细化每个区域内的抓取位置。
局部点云抓取检测模型处理变换的局部点T(f
为了有效地训练局部点云抓取模型,数据集包含区域点云和从现有场景级注释派生的局部抓取标签。数据集的创建包括选择潜在的抓取中心并裁剪它们周围的局部区域。
局部点云抓取模型的损失函数为:
其中,L为损失函数,a、b、c、d为各项损失函数的平衡系数,在本方案中分别为1、1、1、1,
请参考图5,图5为本发明提供的智能抓取交互式界面机器人执行操作示意图。
请参考图6,图6为本发明提供的交互式的目标导向抓取算法的流程示意图。
作为一种优选的实施例,确定抓取待抓取目标的位姿数据之后,还包括:根据待抓取目标的位姿数据,基于交互式的目标导向抓取算法执行多功能下游抓取任务,多功能下游抓取任务包括特定目标抓取任务和场景级抓取任务。
本发明还结合实际的真机机械臂平台部署实现了可以实现不同功能的机械臂抓取方案,不仅可以通过桌面级通用的抓取算法流程实现高效精确的通用物体抓取,并首次实现了交互式的目标导向抓取算法部署与应用,相比于以往方案计算资源消耗大大降低、运行效率大幅提升、总体抓取灵活性与可靠性大幅改善。
在真实场景抓取实验中,本发明在三种不同的实验场景下(杂乱场景、随机放置场景、交互式抓取场景)分别实现了96%、94%、94%的抓取成功率,证明了本方案在复杂场景抓取中的应用潜力。
具体的,通用物体抓取算法是:首先相机获取图像,然后根据图像进行全局抓取生成,并进行抓取可行性判断;在有可行抓取的情况下,进行路径规划,机械臂执行动作;在无可行抓取的情况下,结束抓取任务。
交互式的目标导向抓取算法是:首先相机获取图像,然后根据图像进行交互式目标选取,并进行目标导向抓取检测;在有可行抓取的情况下,进行路径规划,机械臂执行动作;在无可行抓取的情况下,执行相机获取图像的步骤;在无交互式目标选取的情况下,结束抓取任务。
下面对本发明提供的基于局部点云的抓取位姿检测系统进行描述,下文描述的基于局部点云的抓取位姿检测系统与上文描述的基于局部点云的抓取位姿检测方法可相互对应参照。
请参考图7,图7为本发明提供的基于局部点云的抓取位姿检测系统的结构示意图。
本发明还提供一种基于局部点云的抓取位姿检测系统,包括:视觉引导模块1,用于确定局部抓取区域;局部抓取区域为全局场景中待抓取目标所在的局部点云区域;抓取位姿数据确定模块2,用于根据局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取待抓取目标的位姿数据。
这样的框架系统能够更加灵活地适配不同的应用场景,有助于设计直观和多功能的机器人系统。
下面对本发明提供的机器人进行描述,下文描述的机器人与上文描述的基于局部点云的抓取位姿检测方法可相互对应参照。
本发明还提供一种机器人,包括上述的基于局部点云的抓取位姿检测系统。
图8示例了一种电子设备的结构示意图,如图8所示,该电子设备可以包括:处理器(processor)801、通信接口(Communications Interface)802、存储器(memory)803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信。处理器801可以调用存储器803中的逻辑指令,以执行基于局部点云的抓取位姿检测方法,该方法包括:确定局部抓取区域;局部抓取区域为全局场景中待抓取目标所在的局部点云区域;根据局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取待抓取目标的位姿数据。
此外,上述的存储器803中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的基于局部点云的抓取位姿检测方法,该方法包括:确定局部抓取区域;局部抓取区域为全局场景中待抓取目标所在的局部点云区域;根据局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取待抓取目标的位姿数据。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的基于局部点云的抓取位姿检测方法,该方法包括:确定局部抓取区域;局部抓取区域为全局场景中待抓取目标所在的局部点云区域;根据局部抓取区域,基于预训练的局部点云抓取检测模型确定抓取待抓取目标的位姿数据。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
- 一种单视角点云下基于域迁移的机器人抓取位姿检测方法
- 一种单视角点云下基于域迁移的机器人抓取位姿检测方法