一种机器人控制方法、机器人装置及机器人设备与流程

文档序号:11208231
一种机器人控制方法、机器人装置及机器人设备与流程

本发明涉及机器人控制领域,尤其涉及一种机器人控制方法、机器人装置及机器人设备。



背景技术:

当前机器人应用相对还处于相对初级阶段,大多以对话聊天为主,即使有部分机器人能够执行其他任务,体验也并不是很好。

发明人发现相关技术至少存在以下问题:以用户要求机器人取一个东西为例,机器人只能通过语音识别得知用户要的是什么东西,大概在什么位置,然后去寻找用户所说的物品。如果所处空间较大的话,搜索范围也较大,失败率较高,用户体验较差。另一方面,用户很多时候并不希望详细的描述这个物品在哪儿,什么样子,而只是指一下和望一眼,而当前机器人显然无法获知用户的视线,也就无法知道用户所看的到底是什么物体。



技术实现要素:

本发明针对现有技术的机器人根据用户较简单的语音指示去寻找目标,存在搜索范围较大,失败率较高,用户体验较差的技术问题,以及现有技术的机器人由于无法获知用户的视线,也就无法知道用户所看的到底是什么物体的技术问题,提供一种机器人控制方法、机器人装置及机器人设备,技术方案如下:

本发明实施例提供一种机器人控制方法,包括:

建立参照坐标系;

捕捉用户注视方向,获取机器人视线角度,获取机器人位置,获取机器人与用户之间的直线距离,根据所述机器人视线角度、所述机器人位置以及所述机器人与用户之间的直线距离实时计算所述用户注视方向相对所述参照坐标系的注视平面;

机器人平滑扫描所述注视平面,以搜寻用户注视方向上的指示目标。

本发明实施例还提供一种机器人装置,包括:

坐标系建立模块,用于建立参照坐标系;

捕捉和计算模块,用于捕捉指示目标的用户注视方向,获取机器人视线角度,获取机器人位置,获取机器人与用户之间的直线距离,根据所述机器人视线角度、所述机器人位置以及所述机器人与用户之间的直线距离实时计算所述用户注视方向相对所述参照坐标系的注视平面;

扫描模块,用于机器人平滑扫描所述注视平面,以搜寻用户注视方向上的指示目标。

本发明实施例还提供一种机器人设备,包括至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令程序,所述指令程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的方法。

本发明实施例还提供一种包括软件代码部分的计算机程序产品,所述软件代码部分被配置用于当在计算机的存储器中运行时执行上述的方法步骤。

本发明实施例的有益效果在于,本发明实施例提供的机器人控制方法包括:建立参照坐标系;捕捉用户注视方向,获取机器人视线角度,获取机器人位置,获取机器人与用户之间的直线距离,根据所述机器人视线角度、所述机器人位置以及所述机器人与用户之间的直线距离实时计算所述用户注视方向相对所述参照坐标系的注视平面;至少一个机器人平滑扫描所述注视平面,以搜寻用户注视方向上的指示目标。相对于现有技术的机器人根据用户较简单的语音指示去寻找目标,本发明实施例提供的方法中机器人平滑扫描所述注视平面来搜索指示目标,搜索范围较小,搜索失败率较低,提升搜索准确率,用户体验较好;而且相对于现有技术的机器人由于无法获知用户的视线,本发明实施例提供的方法中机器人可以捕捉用户注视方向,并实时计算所述注视方向相对所述参照坐标系的注视平面,通过扫描所述注视平面从而可以获知用户所注视的到底是什么目标,搜寻所述指示目标的成功率较高,用户体验更好。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1是本发明实施例提供的机器人设备的应用环境图;

图2a、2b和2c是本发明实施例提供的机器人控制方法的场景俯视图;

图3是本发明实施例提供的机器人控制方法的流程示意图;

图4是本发明另一实施例提供的机器人控制方法的流程示意图;

图5是本发明又一实施例提供的机器人装置的结构框图;

图6是本发明实施例提供的机器人装置的结构框图;

图7是本发明实施例提供的机器人设备的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本说明书中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是用于限制本发明。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。

此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

近年来,随着计算机技术、信息技术、通讯技术、微电子技术的飞速发展,移动机器人技术得到了广泛的应用,例如扫地机器人、餐馆传菜机器人以及可与人对话聊天的机器人等。机器人在向目标跟踪移动的过程中,可通过全球卫星导航系统(Global Navigation Satellite System,GNSS)和超宽带(Ultra Wideband,UWB)与预先布设的网络节点共同完成定位,通过GNSS和UWB的定位方式,机器人能够获知精度持续稳定的位置信息,可实现复杂环境下较高精度地定位。当然,也可以采用其他机器人定位方式,本发明实施例对此不做限制。

机器人上一般搭载一个或多个摄像头,例如,在机器人的脸部设置摄像头,相当于人的眼睛。光轴,即光学系统的对称轴,摄像头的光轴为通过镜头中心的线,光束(光柱)的中心线,光束绕此轴转动,不应有任何光学特性的变化。

相对于相关技术的机器人根据用户较简单的语音指示去寻找目标,用户很多时候并不希望详细的描述这个物品在哪儿,什么样子,而只是指一下和望一眼,而相关技术的机器人显然无法获知用户的视线,也就无法知道用户注视的到底是什么物品。另一方面,在两人或多人谈论一样物品时,时常也会出现只是指一下看一下来指示的情况,机器人对这种情况因为不知道到底指的哪一样东西,就无法将语音信息与对应的物品做关联,自然也就很难收集到用户谈论物品的有效信息。

因此,如果本发明实施例提供一种机器人控制方法,旨在使机器人获知用户在注视的是什么,或者至少获知用户的视线,则可以大幅缩小范围,较容易获悉目标。

图1为本发明实施例提供的机器人控制方法的应用环境。如图1所示,该应用环境包括:用户100、机器人200和物品300。当用户100在和机器人200交谈过程中或者和其他人交谈过程中,提到并注视附近的某样物品300时,对机器人说道“Tom,帮我把那本书递过来”,该机器人200需要得到用户100的视线方向来更准确的知道用户要求的书是哪一本。

图2a、2b为本发明实施例提供的机器人控制方法的场景环境的俯视图。AM直线为机器人视线角度,具体为机器人视线光轴。假设用户100所处空间俯视图如图2a、2b所示,以左下角位置为参照坐标系的坐标(0,0)点,用户处于C点,对机器人S说:“Tom,帮我把那本书递过来”,一边说着一边望向并指向处于位置T的一本书。机器人此时刻可能正直视用户,也可能之前正在处理别的工作,此刻正将头转向用户但还没完全直视用户,只是用户出现在了视野范围内。

这个时刻,如果听到呼叫的机器人自身视角中能够看到用户的脸,则可通过具体脸部识别分析算法确定其面向方向(面向正方向)与机器人光轴的夹角(也可通过其他算法,只要得到此数据即可),进而也就可计算出用户面向方向在当前坐标系中的绝对方向。下面具体阐述机器人控制方法。

如图3所示,本发明实施例提供的机器人控制方法包括:

步骤101、建立参照坐标系;

可以采用上述机器人定位方式,对室内环境定位,设立真实空间的某个点为坐标原点(0,0)点。根据室内定位,机器人任何时刻都可获取自身位置,计算自身所处的坐标。

步骤102、捕捉指示目标的用户注视方向,获取机器人视线角度,获取机器人位置,获取机器人与用户之间的直线距离,根据所述机器人视线角度、所述机器人位置以及所述机器人与用户之间的直线距离实时计算所述用户注视方向相对所述参照坐标系的注视平面。

所述注视平面在三维空间中为垂直于地面的平面,俯视所述注视平面得到用户注视方向所在直线。即为图2a、2b所示的CB直线。图2a与图2b的不同之处在于,在参照坐标系中,图2a的机器人位于图中所示用户的右侧,图2b的机器人位于图中所示用户的左侧。

进一步地,机器人视线角度为机器人视线光轴。根据所述机器人视线角度、所述机器人位置以及所述机器人与用户之间的直线距离实时计算所述用户注视方向相对所述参照坐标系的注视平面具体包括:

根据所述机器人位置计算所述机器人在参照坐标系的坐标(m,n)并计算所述机器人视线光轴与所述参照坐标系X轴的夹角γ;根据所述机器人视线角度、机器人位置和用户位置计算用户位置和机器人位置的连线所在直线与所述机器人视线光轴的夹角β;计算所述用户位置和机器人位置的连线所在直线与用户注视方向所在直线的夹角α;根据所述机器人视线光轴与参照坐标系X轴的夹角γ、所述用户位置和机器人位置的连线所在直线与所述机器人视线光轴的夹角β、所述用户位置和机器人位置的连线所在直线与用户注视方向所在直线的夹角α和所述机器人与用户之间的直线距离实时计算所述注视方向相对所述参照坐标系的注视平面。

如图2a、2b所示,所述用户位置为C点,指示目标的位置为B点,所述机器人位置为A点,沿用户位置C点画与所述参照坐标系Y轴平行的纵向线,沿机器人位置A点画与所述参照坐标系X轴平行的横向线,横向线与纵向线垂直相交于D点,横向线与用户注视方向所在直线相交于E点,根据三角形内角和定理的推论:三角形的一个外角等于和它不相邻的两个内角和,通过如下算式,计算ACE三角形在E点的外角θ:

θ=α+β+γ;

值得说明的是,图2a中θ=α+β+γ;、图2b中,θ=α-β+γ。β的取值,机器人视线角度逆时针转动夹角β到用户位置时,则定义β的值为正数;机器人视线角度顺时针转动夹角β到用户位置时,则定义β的值为负数。

在三角形ACD中,通过如下算式,计算AD和CD:

AD=d*cos(180°-β-γ)=-d*cos(β+γ);

CD=d*sin(180°-β-γ)=d*sin(β+γ);

在所述参照坐标系中,O为原点,横向线与Y轴相交于F点,机器人位置A点坐标为(m,n),可知m=FA;n=OF;用户位置C点坐标为(j,k),可知j=FA-AD,k=OF+CD,将AD、CD、m和n代入,可得C点坐标(m+d*cos(β+γ),n+d*sin(β+γ));

将用户注视方向所在直线设定为一次方程y=k*x+b;此处k=tanθ=tan(α+β+γ);

代入如上C点坐标(m+d*cos(β+γ),n+d*sin(β+γ)),可得:

b=y–k*x=n+d*sin(β+γ)-tan(α+β+γ)*(m+d*cos(β+γ));

所述用户注视方向所在直线一次方程为:

y=tan(α+β+γ)*x+n+d*sin(β+γ)-tan(α+β+γ)*(m+d*cos(β+γ));

所述注视平面为以(m+d*cos(β+γ),n+d*sin(β+γ))为起始点,沿着一次方程y=tan(α+β+γ)*x+n+d*sin(β+γ)-tan(α+β+γ)*(m+d*cos(β+γ))向前的方向并且垂直于地面的平面。

在一些实施例中,捕捉用户注视方向,可根据所述用户注视方向生成搜寻用户指示目标的信号;根据所述搜寻用户指示目标的信号获取机器人视线角度,获取机器人位置,获取机器人与用户之间的直线距离。

用户在与其他人交谈过程中,用户注视了指示目标,此时,机器人可以主动捕捉用户注视方向,也可以根据用户的指令,例如上文中用户跟机器人的对话:“Tom,帮我把那本书递过来”,这种语音指令,而捕捉用户注视方向。机器人可以主动捕捉用户注视方向时,并不需要用户发出指令。

如果用户发出了指令,则机器人接收由用户发出的搜寻目标指令,根据搜寻目标指令捕捉用户注视方向。

步骤103、机器人平滑扫描所述注视平面,以搜寻用户注视方向上的指示目标。

具体地,机器人的数量可为一个或多个。可选地,间隔预设时长平滑扫描所述注视平面,以搜寻用户注视方向上的指示目标。间隔预设时长具体为0.1秒-5秒,结合机器人视角以及机器人摄像头拍摄图像的分辨率等设定。

具体地,控制至少一个机器人的摄像头焦点落在所述注视平面在所述用户位置到所述用户指示目标之间的部分平面内,以搜寻用户注视方向上的指示目标。

更具体地,机器人搜寻用户注视方向上的指示目标,并不一定需要移动过去,如果机器人站立的位置刚好位于所述注视平面上,则机器人只需沿着注视平面前进或后退即可。如果机器人站立的位置刚好可以很清晰的捕捉到所述注视平面,以及可平滑扫描所述注视平面,则机器人只需转动头部即可。此时,则控制至少一个机器人视线光轴从所述用户位置往所述用户指示目标偏转并获取偏转后视线光轴;根据所述机器人在参照坐标系的坐标计算所述偏转后视线光轴与所述参照坐标系X轴的夹角γ′;根据所述机器人位置计算所述机器人在参照坐标系的坐标;根据所述机器人在参照坐标系的坐标、所述偏转后视线光轴与参照坐标系X轴的夹角γ′和所述注视平面计算偏转后摄像头的对焦距离;根据所述偏转后视线光轴和所述偏转后摄像头的对焦距离控制所述机器人的摄像头的焦点落在所述注视平面在所述用户位置到所述用户指示目标之间的部分平面内,以搜寻所述用户指示目标。

本发明实施例的有益效果在于,本发明实施例提供的机器人控制方法包括:建立参照坐标系;捕捉用户注视方向,获取机器人视线角度,获取机器人位置,获取机器人与用户之间的直线距离,根据所述机器人视线角度、所述机器人位置以及所述机器人与用户之间的直线距离实时计算所述用户注视方向相对所述参照坐标系的注视平面;至少一个机器人平滑扫描所述注视平面,以搜寻用户注视方向上的指示目标。相对于现有技术的机器人根据用户较简单的语音指示去寻找目标,本发明实施例提供的方法中机器人平滑扫描所述注视平面来搜索指示目标,搜索范围较小,搜索失败率较低,提升搜索准确率,用户体验较好;而且相对于现有技术的机器人由于无法获知用户的视线,本发明实施例提供的方法中机器人可以捕捉用户注视方向,并实时计算所述注视方向相对所述参照坐标系的注视平面,通过扫描所述注视平面从而可以获知用户所注视的到底是什么目标,搜寻所述指示目标的成功率较高,用户体验更好。

如果机器人所处位置不佳,需要移动以靠近注视平面,找到可以清晰的捕捉到所述注视平面,以及可平滑扫描所述注视平面的位置,需要控制机器人移动。

随着机器人或人的位置变化或视线角度变化,如上的m,n,d,α,β,γ都会变化,因此不管是人在运动还是机器人在运动,该计算应取用户注视方向的那一刻的所有数据作为计算参数,因为这条一次方程的直线是不会变的,只取决于用户指示的那一刻。

得到用户注视方向所在直线的一次方程,机器人只要追踪这条线上的点即可。不管自身位置在哪儿,都可以得到自身视线与此线的距离,也就是摄像头的对焦距离。机器人可以站在某处一边转动头部一边实时计算对焦距离,以使头部转动过程中始终使对焦点保持在这条线上(在俯视图中是一条线,在三维空间中是一个垂直于地面的平面,使头部转动过程中始终使对焦点保持在注视平面上),当然,机器人也可能根据地形变化,障碍物遮挡等原因不得不在移动过程中找寻之前用户视线上的物体,但同样只要实时计算即可。如下图所示,机器人将在自身运动过程中平滑扫描从C点开始的CB直线,以搜寻用户所指示目标。

在一些实施例中,机器人控制方法还包括:

步骤105、在机器人自身运动过程中获取自身实时位置和实时视线角度,确定机器人实时视线角度与所述注视平面的交线以及对焦距离,在移动过程中,根据对焦距离图像扫描所述交线周围区域,直至识别出所述注视平面上用户注视的指示目标。

进一步地,机器人通过图形搜索法平滑扫描所述交线周围区域;当搜寻到至少两个符合用户指示目标图形的目标时,发出请求确认的请求;如果用户对请求确认的请求给予响应,给出确认结果,则机器人根据所述请求确认的请求返回的确认结果选取其中一个符合用户指示目标图形的目标作为所述户指示目标。

具体地,机器人实时视线角度为机器人实时视线光轴。所述在机器人自身运动过程中获取自身实时位置和实时视线角度,确定机器人实时视线角度与所述注视平面的交线以及对焦距离包括:

图2c是本发明实施例提供的机器人控制方法的中机器人移动过程中的场景示意图。在图2c中,在机器人自身运动过程中获取自身实时位置为A′点,根据所述机器人实时位置计算机器人在参照坐标系的实时坐标(p,q)并计算机器人实时视线光轴与所述参照坐标系X轴的夹角γ″;所述机器人实时视线光轴与所述用户注视方向所在直线的交点为H,则可知A′H的距离为所述对焦距离;

将A′H所在直线设定为一次方程y=k*x+b,此处k=tanγ″,代入k和x、y,可得:

b=y–k*x=q–tan(γ″)*p;

继而得到A′H所在直线的一次方程为:

y=tan(γ″)*x+q–tan(γ″)*p;

联合求解A′H所在直线和用户注视方向所在直线的二元方程:

y=tan(α+β+γ)*x+n+d*sin(β+γ)-tan(α+β+γ)*(m+d*cos(β+γ));

y=tan(γ″)*x+q–tan(γ″)*p;

求解出的(x,y)即为机器人摄像头实时视线光轴与所述用户注视方向所在直线的交点H点坐标;

根据H点坐标和A点坐标计算A′H的距离,为所述对焦距离:

因为机器人在移动过程中或者摄像头转动时,p,q,γ″都可能改变。因此,该计算应该是随着机器人的移动或转动实时进行的,如每秒30次(实际次数取决于机器人的移动或转动速度,计算频率越高则越准确,但计算量也将增大,具体计算频率在此不做限定)。

上述确定机器人实时视线角度与所述注视平面的交线以及对焦距离的过程,与识别出所述注视平面上用户注视的指示目标之后移动过去取到指示目标的移动过程是分开控制的。识别出指示目标后,根据对焦距离,也就是机器人位置与指示目标的距离,机器人的姿态等,控制机器人往指示目标行进,即可去取指示目标。再提供获取机器人位置,计算机器人坐标,获取机器人与用户之间的直线距离,结合室内静态环境、动态障碍物等,规划机器人行走路径,将指示目标拿给用户。

确定机器人实时视线角度与所述注视平面的交线以及对焦距离的过程,与识别出所述注视平面上用户注视的指示目标之后移动过去取到指示目标的移动过程也可以一起控制,此时,控制机器人移动,在移动过程中,根据对焦距离图像扫描所述交线周围区域,直至识别出所述注视平面上用户注视的指示目标,再控制机器人往对焦距离(对焦指示目标的对焦距离)为零的位置上移动,即可到达指示目标。

本发明实施例的有益效果在于,本实施例提供的机器人控制方法,在机器人自身运动过程中获取自身实时位置和实时视线角度,确定机器人实时视线角度与所述注视平面的交线以及对焦距离。以此实现控制机器人的摄像头焦点落在所述注视平面,以此拍摄到清晰的可能包含指示目标的图像,该图像具体为交线周围区域的图像。在移动过程中,可根据对焦距离图像扫描所述交线周围区域,直至识别出所述注视平面上用户注视的指示目标,需要的参数均可实时获取,可较快捷且准确地识别出指示目标,用户体验较好。

上述技术方案是通过对用户的面部角度分析得到一个和机器人视线光轴的角度α,而如果一个机器人听到呼叫时看到的是用户的背面,则通过脸部识别与分析的技术将无法确定用户面向的方向与光轴间的角度,这种时候应先转到用户的前方或侧方,只要能看到用户的脸即可(有可能需要用户重新指示一下刚才的命令,重新确定一下用户的面部朝向与视线光轴的夹角)。另一方面,如果有其他的算法能够通过图像识别的方式从用户后方也能判定出用户面部正对的方向与光轴的夹角。再或者,用户周围有其他机器人能够获取到用户位置和机器人位置的连线所在直线的一次方程,同样也可以同步给被命令的机器人。具体地,机器人控制方法还包括:

步骤104、所述机器人包括用于与同一坐标系下的机器人联网的网络模块,所述网络模块用于共享所述注视平面的数据。

本发明实施例的有益效果在于,通过机器人的网络模块与同一坐标系下的机器人联网,共享所述注视平面的数据,机器人控制服务器可根据多个机器人当前处理任务的状态,结合机器人的位置,面向角度等,通过计算或分析,控制其中一个机器人去搜寻用户注视方向上的指示目标,可整体上让多个机器人协调工作,提高工作效率,快速满足用户需求,提升用户体验。其中,同一坐标系为所述参照坐标系。

在又一实施例中,如图4所示,机器人搜寻到用户注视方向上的指示目标后,还可有进一步的处理。所述机器人控制方法还包括:

步骤106、提取所述指示目标的目标特征信息,存储所述目标特征信息至目标目录。

机器人控制服务器上,或者机器人自动的存储器上,可设置目标目录来存储目标特征信息。

目标特征信息可以为目标的各种属性,如名称、所处位置、归属、形状、大小、颜色、价格、用户的喜欢程度、购买途径或购买原因等等。

提取所述指示目标的目标特征信息具体为通过图形搜索方法提取,视频特征提取,也可以通过用户的语音数据提取。具体地,在一些实施例中,如图4所示,所述机器人控制方法还包括:

步骤107、获取用户的语音数据与视频数据,识别所述用户的语音数据与视频数据的关键信息,将目标特征信息与所述关键信息进行匹配得到关联的关键信息,在目标目录中存储所述关联的关键信息至对应的目标特征信息下以更新目标特征信息。

在目标目录中,目标特征信息字段有多个属性,通过目标特征信息与关键信息进行匹配得到关联的关键信息,然后给对应的目标特征信息增加关联的关键信息的属性列,这样,目标特征信息字段的属性增加了,相对于更新了目标特征信息。

例如,机器人控制方法还可以在两人或多人对话时,更好的帮助机器人收集信息。如机器人在闲置状态或者还有能力通过听觉和视觉关注周围人时,如果听到且看到多人正在对话,且过程中出现某人向另外一个人或多个人指示了某物时,机器人依然可以应用此方法知道大家在谈论什么(通过获取用户的语音数据与视频数据),对该物体的评论如何(识别所述用户的语音数据与视频数据的关键信息),甚至可以加入讨论,也就是将听觉信息和视觉信息得以关联(将目标特征信息与所述关键信息进行匹配找出关联的关键信息),继而也就收集了相关用户信息,之后可以借此与用户更加智能的聊天。比如,两人正在讨论一个家里装饰的瓷花瓶,主人可能边注视花瓶边对客人说:“看这个怎么样?我超级喜欢”,客人可能回答:“这个花纹确实很漂亮,不错不错,在哪儿买的?”……按照传统的方法,机器人能够听到两方的对话,但并不一定能得知正在讨论的是什么物品,也就造成收集的语音信息是完全没有用处的。而结合本实施例的机器人控制方法,机器人有更大的概率通过视觉得知用户讨论的物品,并将语音信息与视觉上的该物体做关联,得知用户非常喜欢这个花瓶,购买地点,购买金额等等信息,使机器人对用户的了解更多,借此为用户提供更理想更智能的服务。

在再一个实施例中,体现机器人与用户聊天,或机器人参与多人之间的讨论。如图4所示,所述机器人控制方法还包括:

步骤108、所述机器人在判断用户聊天后,收集用户聊天的语音数据和视频数据,识别所述用户聊天的语音数据和视频数据的主题信息,将更新后目标特征信息与所述主题信息进行匹配,根据匹配结果完成与用户的语音与视频交流。

机器人与用户进行语音与视频交流时,机器人判断到用户在于其聊天,例如捕捉到用户的视线落在自身的头部,或者用户扫视了机器人并喊出机器人的名字等,则判断为用户在与机器人聊天。机器人先获取用户聊天的语音数据和视频数据,识别出述用户聊天的语音数据和视频数据的主题信息,调用更新后目标目录的目标特征信息,将更新后目标特征信息与所述主题信息进行匹配,以输出与用户交流的内容,可以输出语音或动作,机器人更加智能化,可为用户提供更理想更智能的服务,提升用户体验。

本发明实施例还提供一种机器人装置400,如图5所示,机器人装置400包括坐标系建立模块401、捕捉和计算模块402和扫描模块403。

坐标系建立模块401,用于建立参照坐标系;

捕捉和计算模块402,用于捕捉指示目标的用户注视方向,获取机器人视线角度,获取机器人位置,获取机器人与用户之间的直线距离,根据所述机器人视线角度、所述机器人位置以及所述机器人与用户之间的直线距离实时计算所述用户注视方向相对所述参照坐标系的注视平面;

扫描模块403,用于机器人平滑扫描所述注视平面,以搜寻用户注视方向上的指示目标。

需要说明的是,本发明实施例提出的机器人装置400与本发明方法实施例提出的机器人控制方法基于相同的发明构思,方法实施例与装置实施例中的相应技术内容可相互适用,此处不再详述。

本发明实施例的有益效果在于,本发明实施例提供的机器人控制方法包括:建立参照坐标系;捕捉用户注视方向,获取机器人视线角度,获取机器人位置,获取机器人与用户之间的直线距离,根据所述机器人视线角度、所述机器人位置以及所述机器人与用户之间的直线距离实时计算所述用户注视方向相对所述参照坐标系的注视平面;至少一个机器人平滑扫描所述注视平面,以搜寻用户注视方向上的指示目标。相对于现有技术的机器人根据用户较简单的语音指示去寻找目标,本发明实施例提供的方法中机器人平滑扫描所述注视平面来搜索指示目标,搜索范围较小,搜索失败率较低,用户体验较好;而且相对于现有技术的机器人由于无法获知用户的视线,本发明实施例提供的方法中机器人可以捕捉用户注视方向,并实时计算所述注视方向相对所述参照坐标系的注视平面,通过扫描所述注视平面从而可以获知用户所注视的到底是什么目标,搜寻所述指示目标的成功率较高,用户体验更好。

如果机器人所处位置不佳,需要移动以靠近注视平面,找到可以清晰的捕捉到所述注视平面,以及可平滑扫描所述注视平面的位置,需要控制机器人移动。在一些实施例中,如图6所示,机器人装置400还包括:

确定和识别模块405,用于在机器人自身运动过程中获取自身实时位置和实时视线角度,确定机器人实时视线角度与所述注视平面的交线以及对焦距离,在移动过程中,根据对焦距离图像扫描所述交线周围区域,直至识别出所述注视平面上用户注视的指示目标。

本发明实施例的有益效果在于,本实施例提供的机器人装置400,在机器人自身运动过程中获取自身实时位置和实时视线角度,确定机器人实时视线角度与所述注视平面的交线以及对焦距离。以此实现控制机器人的摄像头焦点落在所述注视平面,以此拍摄到清晰的可能包含指示目标的图像,该图像具体为交线周围区域的图像。在移动过程中,可根据对焦距离图像扫描所述交线周围区域,直至识别出所述注视平面上用户注视的指示目标,需要的参数均可实时获取,可较快捷且准确地识别出指示目标,用户体验较好。

进一步地,所述机器人视线角度为机器人视线光轴,所述捕捉和计算模块402还用于:

根据所述机器人位置计算所述机器人在参照坐标系的坐标(m,n)并计算所述机器人视线光轴与所述参照坐标系X轴的夹角γ;根据所述机器人视线角度、机器人位置和用户位置计算用户位置和机器人位置的连线所在直线与所述机器人视线光轴的夹角β;计算所述用户位置和机器人位置的连线所在直线与用户注视方向所在直线的夹角α;

所述注视平面在三维空间中为垂直于地面的平面,俯视所述注视平面得到用户注视方向所在直线,设定为一次方程y=k*x+b,所述注视平面具体通过如下算式计算:

y=tan(α+β+γ)*x+n+d*sin(β+γ)-tan(α+β+γ)*(m+d*cos(β+γ));

式中,d为机器人与用户之间的直线距离;

所述注视平面为以(m+d*cos(β+γ),n+d*sin(β+γ))为起始点,沿着一次方程y=tan(α+β+γ)*x+n+d*sin(β+γ)-tan(α+β+γ)*(m+d*cos(β+γ))向前的方向并且垂直于地面的平面。

进一步地,所述机器人实时视线角度为机器人实时视线光轴,所述确定和识别模块405还用于:

根据所述机器人实时位置A′点计算机器人在参照坐标系的实时坐标(p,q)并计算机器人实时视线光轴与所述参照坐标系X轴的夹角γ″;所述机器人实时视线光轴与所述用户注视方向所在直线的交点为H,则可知A′H的距离为所述对焦距离;将A′H所在直线设定为一次方程y=k*x+b,所述对焦距离具体通过如下算式计算:

y=tan(γ″)*x+q–tan(γ″)*p;

联合求解A′H所在直线和用户注视方向所在直线的二元方程,解出的(x,y)即为机器人实时视线光轴与所述用户注视方向所在直线的交点H点坐标;

根据H点坐标和A′点坐标计算A′H的距离,为所述对焦距离:

上述技术方案是通过对用户的面部角度分析得到一个和机器人视线光轴的角度α,如果用户周围有其他机器人能够获取到用户位置和机器人位置的连线所在直线的一次方程,同样也可以同步给被命令的机器人。

具体地,所述机器人包括用于与同一坐标系下的机器人联网的网络模块,所述网络模块用于共享所述注视平面的数据。

本发明实施例的有益效果在于,通过机器人的网络模块与同一坐标系下的机器人联网,共享所述注视平面的数据,机器人控制服务器可根据多个机器人当前处理任务的状态,结合机器人的位置,面向角度等,通过计算或分析,控制其中一个机器人去搜寻用户注视方向上的指示目标,可整体上让多个机器人协调工作,提高工作效率,快速满足用户需求,提升用户体验。其中,同一坐标系为所述参照坐标系。

在又一实施例中,机器人搜寻到用户注视方向上的指示目标后,还可有进一步的处理。所述机器人装置400还包括:

提取和存储模块406,用于提取所述指示目标的目标特征信息,存储所述目标特征信息至目标目录。

提取所述指示目标的目标特征信息具体为通过图形搜索方法提取,视频特征提取,也可以通过用户的语音数据提取。具体地,在一些实施例中,如图6所示,所述机器人装置400还包括:

识别和匹配模块407,用于获取用户的语音数据与视频数据,识别所述用户的语音数据与视频数据的关键信息,将目标特征信息与所述关键信息进行匹配得到关联的关键信息,在目标目录中存储所述关联的关键信息至对应的目标特征信息下以更新目标特征信息。

例如,机器人装置400还可以在两人或多人对话时,更好的帮助机器人收集信息。识别和匹配模块407用于获取及识别所述用户的语音数据与视频数据的关键信息,将目标特征信息与所述关键信息进行匹配找出关联的关键信息并存储更新。目标特征信息与所述关键信息进行匹配,机器人有更大的概率通过听觉或视觉得知用户讨论的物品,并将语音信息与视觉信息与该物体做关联,找出关联的关键信息,也即使机器人对用户的了解更多,使机器人更加智能化。

在再一个实施例中,体现机器人与用户聊天,或机器人参与多人之间的讨论。如图6所示,所述机器人装置400还包括:

匹配和交流模块408,用于机器人在判断用户聊天后,收集用户聊天的语音数据和视频数据,识别所述用户聊天的语音数据和视频数据的主题信息,将更新后目标特征信息与所述主题信息进行匹配,根据匹配结果完成与用户的语音与视频交流。

机器人与用户进行语音与视频交流时,先获取用户聊天的语音数据和视频数据,识别出述用户聊天的语音数据和视频数据的主题信息,调用目标目录的更新后目标特征信息,将更新后目标特征信息与所述主题信息进行匹配,以输出与用户交流的内容,可以输出语音或动作,使机器人更加智能化,提升用户体验。

图7是本发明实施例提供的机器人设备的硬件结构示意图。该机器人设备可以是任何合适执行机器人控制方法的机器人设备800。该机器人设备800还可以具有一个或者多个动力装置,用以驱动机器人沿特定的轨迹移动。

如图7所示,该设备包括:一个或多个处理器810以及存储器820,图7中以一个处理器810为例。

处理器810、存储器820可以通过总线或者其他方式连接,图7中以通过总线连接为例。

存储器820作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的机器人控制方法对应的程序指令/模块(例如,图5所示的坐标系建立模块401、捕捉和计算模块402和扫描模块403,图6所示的坐标系建立模块401、捕捉和计算模块402、扫描模块403、确定和识别模块405、提取和存储模块406、识别和匹配模块407和匹配和交流模块408)。处理器810通过运行存储在存储器820中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例机器人控制方法。

存储器820可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据机器人装置的使用所创建的数据等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器820可选包括相对于处理器820远程设置的存储器,这些远程存储器可以通过网络连接至机器人装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

所述一个或者多个模块存储在所述存储器820中,当被所述一个或者多个处理器810执行时,执行上述任意方法实施例中的机器人控制方法。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。所述的计算机软件可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1