本发明涉及智能机器人技术领域,尤其涉及一种基于nao机器人抓取物体的方法。
背景技术:
随着人工智能技术的发展,由于nao机器人高度融合了自动化、机械、传感术、计算机、人工智能等多学科知识和研究成果,被广泛应用于日常生活和生产中。
现有技术中,在利用nao机器人来抓取物品方法中,通常需要对物体相对于机器人的位置进行定位,一般采用单目视觉定位方法。
本申请发明人在实现本发明的技术方案时,发现现有技术中至少存在如下问题:
现有采用单目视觉定位方法,对物体的定位并不精确,误差比较大,此外,机器人如果未成功抓取到物品,也无法得到反馈。
可见,现有技术中采用单目视觉定位的方法存在精度不高、实时性差的技术问题。
技术实现要素:
本发明实施例提供一种基于nao机器人抓取物体的方法,用以解决现有技术中采用单目视觉定位的方法存在精度不高、实时性差的技术问题。
本发明公开了一种基于nao机器人抓取物体的方法,所述方法包括:
利用预先设定的搜索路径基于颜色分割的方法找到并识别目标物体,获得包含所述目标物体的图像和所述目标物体的第一中心点像素坐标;
获得所述nao机器人的头部高度变化值与俯仰角的第一函数关系
根据所述第一函数关系,获得所述目标物体到所述nao机器人的距离与所述俯仰角的第二函数关系
获取所述图像的第二中心像素点坐标,其中所述第二中心像素点坐标为所述图像的中心像素坐标值;
根据所述第一中心点像素坐标和所述第二中心像素点坐标,获得所述目标物体相对于所述nao机器人的水平偏角和垂直偏角,其中所述垂直偏角为所述nao机器人的俯仰角;
根据所述垂直偏角和所述第二函数关系,获得所述目标物体到所述nao机器人的距离;
根据所述距离和所述水平偏角,获取所述nao机器人行走路线,以使所述nao机器人基于所述行走路线抓取所述目标物体。
可选地,所述利用预先设定的搜索路径基于颜色分割的方法找到并识别目标物体,获得包含所述目标物体的图像和所述目标物体的第一中心点像素坐标,包括:
利用机器人摄像头获取一帧图像并将其转化为hsv颜色空间的图像;
从所述hsv颜色空间的图像中获得所述目标物体图像,
根据所述目标物体图像,获得灰度图像;
对所述灰度图像进行优化处理和二值化处理,获得保留原有信息的图像;
根据保留原有信息的图像,获得所述目标物体的图像的第一中心点像素坐标。
可选地,所述根据保留原有信息的图像,获得所述目标物体的图像的第一中心点像素坐标,包括:
采用最小外接矩形框获得所述第一中心点像素坐标。
可选地,在根据所述第一函数关系,获得所述目标物体到所述nao机器人的距离与所述俯仰角的第二函数关系
采用同一距离进行多次测量求取平均值的方法,构建距离与俯仰角度相对应的离线查询表。
可选地,所述离线查询表中包含根据距离设置的不同间隔范围的数据。
可选地,所述根据所述第一中心点像素坐标和所述第二中心像素点坐标,获得所述目标物体相对于所述nao机器人的水平偏角和垂直偏角,包括:
根据公式
根据公式
可选地,所述根据所述距离和所述水平偏角,获取所述nao机器人行走路线,包括:
根据所述水平偏角,获得nao机器人的水平转动方向;
根据所述距离,获得所述nao机器人的行走距离;
根据所述水平转动方向和所述行走距离,获取所述nao机器人行走路线。
可选地,所述nao机器人基于所述行走路线抓取所述目标物体,包括:
所述nao机器人运动至所述目标物体的位置;
获得所述nao机器人手臂的抓取轨迹;
在所述目标物体的位置,根据所述抓取轨迹抓取所述目标物体。
可选地,在所述在所述目标物体的位置,根据所述抓取轨迹抓取所述目标物体之后,还包括:
获得所述nao机器人的手部电机值;
判断所述手部电机值是否大于预设值;
若大于,则通过语音反馈成功抓取物体;
否则,所述nao机器人进行重新定位抓取,以进行抓取反馈。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本申请实施例提供的一种基于nao机器人抓取物体的方法,由于实时获得了所述nao机器人的头部高度变化值与俯仰角的第一函数关系,并根据所述第一函数关系,获得所述目标物体到所述nao机器人的距离与所述俯仰角的第二函数关系,根据所述垂直偏角和所述第二函数关系,可以获得所述目标物体到所述nao机器人的距离;并根据所述距离和所述水平偏角,获取所述nao机器人行走路线,以使所述nao机器人基于所述行走路线抓取所述目标物体。由于可以根据垂直偏角和所述目标物体到所述nao机器人的距离与所述俯仰角第二函数关系,可以实时获取机器人的获得所述目标物体到所述nao机器人的距离。解决了现有技术中采用单目视觉定位的方法存在精度不高、实时性差的技术问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种基于nao机器人抓取物体的方法的流程图;
图2为本发明实施例中提供的方法中定位算法的计算原理示意图。
具体实施方式
本发明实施例提供一种基于nao机器人抓取物体的方法,用以解决现有技术中采用单目视觉定位的方法存在精度不高、实时性差的技术问题。实现了提高物体的定位精度和实时性技术效果。
本申请实施例中的技术方案,总体思路如下:
一种基于nao机器人抓取物体的方法,所述方法包括:利用预先设定的搜索路径基于颜色分割的方法找到并识别目标物体,获得包含所述目标物体的图像和所述目标物体的第一中心点像素坐标;获得所述nao机器人的头部高度变化值与俯仰角的第一函数关系
上述方法中,由于可以根据垂直偏角和所述目标物体到所述nao机器人的距离与所述俯仰角第二函数关系,可以实时获取机器人的获得所述目标物体到所述nao机器人的距离。解决了现有技术中采用单目视觉定位的方法存在精度不高、实时性差的技术问题。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本实施例提供一种基于nao机器人抓取物体的方法,请参见图1,所述方法包括:
步骤s101:利用预先设定的搜索路径基于颜色分割的方法找到并识别目标物体,获得包含所述目标物体的图像和所述目标物体的第一中心点像素坐标;
步骤s102:获得所述nao机器人的头部高度变化值与俯仰角的第一函数关系
步骤s103:根据所述第一函数关系,获得所述目标物体到所述nao机器人的距离与所述俯仰角的第二函数关系
步骤s104:获取所述图像的第二中心像素点坐标,其中所述第二中心像素点坐标为所述图像的中心像素坐标值;
步骤s105:根据所述第一中心点像素坐标和所述第二中心像素点坐标,获得所述目标物体相对于所述nao机器人的水平偏角和垂直偏角,其中所述垂直偏角为所述nao机器人的俯仰角;
步骤s106:根据所述垂直偏角和所述第二函数关系,获得所述目标物体到所述nao机器人的距离;
步骤s107:根据所述距离和所述水平偏角,获取所述nao机器人行走路线,以使所述nao机器人基于所述行走路线抓取所述目标物体。
上述方法中,由于可以根据垂直偏角和所述目标物体到所述nao机器人的距离与所述俯仰角第二函数关系,可以实时获取机器人的获得所述目标物体到所述nao机器人的距离。解决了现有技术中采用单目视觉定位的方法存在精度不高、实时性差的技术问题。
需要说明的是,本申请中,所述步骤s101和步骤s102的顺序不分先后,可以先执行步骤s101,也可以先执行步骤s102,在此不做限制。
下面,结合图1对本申请提供的抓取物品的方法进行详细介绍:
首先,执行步骤s101,利用预先设定的搜索路径基于颜色分割的方法找到并识别目标物体,获得包含所述目标物体的图像和所述目标物体的第一中心点像素坐标;
在本申请实施例中,具体为:
利用机器人摄像头获取一帧图像并将其转化为hsv颜色空间的图像;
从所述hsv颜色空间的图像中获得所述目标物体图像,
根据所述目标物体图像,获得灰度图像;
对所述灰度图像进行优化处理和二值化处理,获得保留原有信息的图像;
根据保留原有信息的图像,获得所述目标物体的图像的第一中心点像素坐标。
具体地,采用最小外接矩形框获得所述第一中心点像素坐标。
具体来说,上述优化处理可以为对获得的灰度图像先进行直方图均衡化处理,以提高图像的对比度和清晰度、对图像进行双边滤波处理,去除噪声点的干扰等等,对二值化图像进行腐蚀、膨胀,可以进一步有效去除噪声点,保留图像中原有信息。
接下来,执行步骤s102:获得所述nao机器人的头部高度变化值与俯仰角的第一函数关系
然后,执行步骤s103:根据所述第一函数关系,获得所述目标物体到所述nao机器人的距离与所述俯仰角的第二函数关系
具体地,目标定位时采用目标物体始终保持在视野中央,方便机器人实时定位物体,也符合人类抓取物体的习惯。考虑到机器人头部的俯仰角发生变化时,其机器人头部摄像头的高度也在不断的变化。本发明实施例根据机器人头部的硬件结构,参见图2推导出其高度变化值与俯仰角度的关系;将头部摄像头的高度表示成关于俯仰角的一个函数(即第一函数关系),并采用勾股定位算法中,可以得到的物体的定位算法(即第二函数关系),有效地提高了定位精度。
然后,执行步骤s104:获取所述图像的第二中心像素点坐标,其中所述第二中心像素点坐标为所述图像的中心像素坐标值。
具体来说,所述图像即为利用机器人摄像头获取的图像,所述图像包括物体和其他背景。
接着,执行步骤s105:根据所述第一中心点像素坐标和所述第二中心像素点坐标,获得所述目标物体相对于所述nao机器人的水平偏角和垂直偏角,其中所述垂直偏角为所述nao机器人的俯仰角。
具体地,获得所述目标物体相对于所述nao机器人的水平偏角和垂直偏角的步骤如下:
根据公式
根据公式
具体来说,(x,y)为所述第一中心像素坐标,(320,240)为所述第二中心像素坐标,图像的像素为640*480,角度60.9°、47.64°均为机器人摄像头的硬件值。
接着,执行步骤s106:根据所述垂直偏角和所述第二函数关系,获得所述目标物体到所述nao机器人的距离;
具体地,所述根据所述距离和所述水平偏角,获取所述nao机器人行走路线,包括:
根据所述水平偏角,获得nao机器人的水平转动方向;
根据所述距离,获得所述nao机器人的行走距离;
根据所述水平转动方向和所述行走距离,获取所述nao机器人行走路线。
最后,执行步骤s107:根据所述距离和所述水平偏角,获取所述nao机器人行走路线,以使所述nao机器人基于所述行走路线抓取所述目标物体。
具体地,所述nao机器人基于所述行走路线抓取所述目标物体,包括:
所述nao机器人运动至所述目标物体的位置;
获得所述nao机器人手臂的抓取轨迹;
在所述目标物体的位置,根据所述抓取轨迹抓取所述目标物体。
可选地,本发明实施例提供的基于nao机器人抓取物体的方法中,在根据所述第一函数关系,获得所述目标物体到所述nao机器人的距离与所述俯仰角的第二函数关系
采用同一距离进行多次测量求取平均值的方法,构建距离与俯仰角度相对应的离线查询表。
可选地,本发明实施例提供的基于nao机器人抓取物体的方法中,所述离线查询表中包含根据距离设置的不同间隔范围的数据。
具体来说,利用第二函数关系,并通过对同一距离进行多次测量求取平均值的方法,可以构建一个距离与角度相对应的离线查询表。由于因距离远近不同而识别定位精度也不同,查询表中物体距离可以从机器人脚中心位置前方20cm所对应的角度开始建表,表中20cm-70cm范围内间隔为1cm,70cm-150cm间隔为2cm,150cm-450cm范围内间隔为5cm,450cm外的物体机器人无法准确识别。具体的间隔范围可以根据实际情况设置,从而进一步提高定位精度。
可选地,在所述在所述目标物体的位置,根据所述抓取轨迹抓取所述目标物体之后,还包括:
获得所述nao机器人的手部电机值;
判断所述手部电机值是否大于预设值;
若大于,则通过语音反馈成功抓取物体;
否则,所述nao机器人进行重新定位抓取,以进行抓取反馈。
申请人通过大量的实验发现,不同的地面相对于机器人脚的摩擦因数不同,机器人在走向目标物体实施抓取的过程中常会出现脚步打滑而导致行走距离未能到达指定抓取点,最终导致抓取失败的现象。针对这一不定因素的影响,本发明实施例在不借助外界辅助设备的情况下,提出一种通过传感器获取手部电机角度值与预设值(例如取值为0.25)相比较的简单方法,来让机器人自主判断是否成功抓取到了物体。如果成功抓取,则机器人会通过扬声器说出“igraspit”;若因行走过程中机器人脚与地面的微小滑动等不定因素影响而导致机器人抓取失败,则机器人会反馈没有抓到并自主进行再次的定位抓取,直到抓取成功。
在具体的实施过程中,可以根据机器人末端执行器起始点位置和终点位置(即物体位置)插入四个关键帧,用于规划机器人手臂抓取的轨迹,上述步骤离线完成,然后通过nao机器人内置的函数positioninterpolation能够把末端执行器送到机器人坐标系下的指定位置,然后通过控制机器人的手部电机实施抓取,在此过程中,可以通过传感器获取手部电机的值,与预设值进行比较,若获取的值大于预设值,则机器人通过语音反馈抓到了物体。否则,机器人重新进行识别、定位、抓取。
需要说明的是,现有的基于nao机器人的单目定位方法无法获得物体的空间三维坐标,故本发明实施例中所抓取的物体高度为已知值,即物体z坐标已知;在上一步物体测距的同时我们可以测出物体相对于机器人正前方向上的偏移角,然后机器人通过旋转这个角度可以保证物体处于机器人正前方,即物体在机器人坐标系中y轴方向上的坐标为0;这样通过测得的物体的深度坐标x就可以确定物体相对于机器人坐标系的空间位置(x,0,z)。由nao机器人内置的函数positioninterpolation能够把末端执行器送到机器人坐标系下的指定位置,对目标点实施抓取操作。附:闭环反馈部分程序如下
进行再次抓取。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本申请实施例提供的一种基于nao机器人抓取物体的方法,由于实时获得了所述nao机器人的头部高度变化值与俯仰角的第一函数关系,并根据所述第一函数关系,获得所述目标物体到所述nao机器人的距离与所述俯仰角的第二函数关系,根据所述垂直偏角和所述第二函数关系,可以获得所述目标物体到所述nao机器人的距离;并根据所述距离和所述水平偏角,获取所述nao机器人行走路线,以使所述nao机器人基于所述行走路线抓取所述目标物体。由于可以根据垂直偏角和所述目标物体到所述nao机器人的距离与所述俯仰角第二函数关系,可以实时获取机器人的获得所述目标物体到所述nao机器人的距离。解决了现有技术中采用单目视觉定位的方法存在精度不高、实时性差的技术问题。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。