一种用于智能机器人的语音交互数据获取方法及装置与流程

文档序号:12677369阅读:434来源:国知局
一种用于智能机器人的语音交互数据获取方法及装置与流程

本发明涉及机器人技术领域,具体地说,涉及一种用于智能机器人的语音交互数据获取方法及装置。



背景技术:

随着科学技术的不断发展,信息技术、计算机技术以及人工智能技术的引入,机器人的研究已经逐步走出工业领域,逐渐扩展到了医疗、保健、家庭、娱乐以及服务行业等领域。而人们对于机器人的要求也从简单重复的机械动作提升为具有拟人问答、自主性及与其他机器人进行交互的智能机器人,人机交互也就成为决定智能机器人发展的重要因素。因此,提高智能机器人的人机交互能力,改善智能机器人的用户体验,成为本领域技术人员亟需解决的重要问题。



技术实现要素:

为解决上述问题,本发明提供了一种用于智能机器人的语音交互数据获取方法,其包括:

用户位置确定步骤,接收用户输入的唤醒词并进行解析及声源定位,得到所述用户的位置信息;

波束信息确定步骤,获取当前头部位置数据,根据所述当前头部位置数据和用户的位置信息确定所述头部及用户的相对角度,并根据所述相对角度确定头部转向用户后需要打开的波束,得到待打开波束信息;

头部转动步骤,根据所述相对角度生成相应的头部转动指令,并根据所述待打开波束信息生成相应的波束打开指令来接收用户输入的语音交互数据。

根据本发明的一个实施例,在所述波束信息确定步骤中,

根据所述当前头部位置数据和用户的位置信息,确定所述用户当前对应的波束信息;

根据所述用户当前对应的波束信息以及相对角度,确定头部转向用户后需要打开的波束,得到待打开波束信息。

根据本发明的一个实施例,在所述波束信息确定步骤中,

根据所述头部及用户的相对角度确定机器人头部的转动信息,根据所述转动信息和所述用户当前对应的波束信息,确定所述待打开波束信息。

根据本发明的一个实施例,如果所述用户的位置超过所述智能机器人的头部的转动范围,则输出用于提示用户改变自身位置的多模态指示信息。

根据本发明的一个实施例,所述智能机器人的头部向左转动角度范围及向右转动角度范围均为[0,75°]。

本发明还提供了一种用于智能机器人的语音交互数据获取装置,其包括:

用户位置确定模块,其用于接收用户输入的唤醒词并进行解析及声源定位,得到所述用户的位置信息;

波束信息确定模块,其用于获取当前头部位置数据,根据所述当前头部位置数据和用户的位置信息确定所述头部及用户的相对角度,并根据所述相对角度确定头部转向用户后需要打开的波束,得到待打开波束信息;

头部转动模块,其用于根据所述相对角度生成相应的头部转动指令,并根据所述待打开波束信息生成相应的波束打开指令来接收用户输入的语音交互数据。

根据本发明的一个实施例,所述波束信息确定模块配置为根据所述当前头部位置数据和用户的位置信息,确定所述用户当前对应的波束信息,随后根据所述用户当前对应的波束信息以及相对角度,确定头部转向用户后需要打开的波束,得到待打开波束信息。

根据本发明的一个实施例,所述波束信息确定模块配置为根据所述头部及用户的相对角度确定机器人头部的转动信息,根据所述转动信息和所述用户当前对应的波束信息,确定所述待打开波束信息。

根据本发明的一个实施例,还包括:

指示信息输出模块,其用于在所述用户的位置超过所述智能机器人的头部的转动范围时,输出用于提示用户改变自身位置的多模态指示信息。

根据本发明的一个实施例,所述智能机器人的头部向左转动角度范围及向右转动角度范围均为[0,75°]。

本发明所提供的用于智能机器人的语音交互数据获取方法能够在智能机器人的头部发生转动后,精确的确定应该打开的波束,这样能够在实现机器人的头部随交互用户转动的同时,保证对用户语音的接收,进而既提高了智能机器人的类人性,又保证了智能机器人的智能性,大大提高智能机器人的人机交互水平。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要的附图做简单的介绍:

图1是根据本发明一个实施例的用于智能机器人的语音交互数据获取方法的实现流程示意图;

图2是根据本发明另一个实施例的用于智能机器人的语音交互数据获取方法的实现流程示意图;

图3是根据本发明一个实施例的智能机器人的波束示意图;

图4是根据本发明一个实施例的智能机器人头部转动后的波束示意图;

图5是根据本发明一个实施例的用于智能机器人的语音交互数据获取装置的结构示意图。

具体实施方式

以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。

同时,在以下说明中,出于解释的目的而阐述了许多具体细节,以提供对本发明实施例的彻底理解。然而,对本领域的技术人员来说显而易见的是,本发明可以不用这里的具体细节或者所描述的特定方式来实施。

另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

为了获取不同方向上的声波信号,智能机器人通常设置有麦克风阵列,当检测到唤醒词后,智能机器人可以打开麦克风阵列的波束,以接收用户的交互语音。假如用户在智能机器人的正前方并发出唤醒语音,那么此时智能机器人的头部不需要转动,可以通过麦克风阵列来采集用户说话位置的音频,此时只需打开机器人正前方的波束,实现智能机器人与用户的语音交互。

但是,如果用户的位置不在智能机器人的正前方,而是在智能机器人的侧面发出唤醒语音,那么智能机器人也就会需要打开相应的侧面对应的波束。然而,如果智能机器人将头部由正面转至该用户的位置处,那么之前所确定的要打开波束的位置也发生了变化,这样也就导致无法正常采集到用户的后续语音信息。

针对现有技术中所存在的上述问题,本发明提供了一种新的用于智能机器人的语音交互数据获取方法,该方法能够在智能机器人的头部发生转动后,精确地确定应该打开的波束,从而使得机器人的头部随交互用户转动的同时,保证对用户语音的接收。

为了更加清楚地阐述本发明所提供的用于智能机器人的语音交互数据获取方法的实现原理、实现过程以及优点,以下分别结合不同的实施例来对该语音交互获取方法作进一步地说明。

实施例一:

图1示出了本实施例所提供的用于智能机器人的语音交互数据获取方法的实现流程示意图。

如图1所示,本实施例所提供的用于智能机器人的语音交互数据获取方法首先在步骤S101中接收用户输入的唤醒词并对其进行解析以及声源定位,从而得到该用户的位置信息。

声源定位技术是利用声学与电子装置接收目标声场信息以确定目标声源位置的一种技术。本实施例所提供的方法在步骤S101中利用获取声音信号后,并通过对声音信号进行处理,在空间域中确定出一个或多个声源的平面或空间坐标,即得到声源(即用户)的位置信息。

在得到用户的位置信息后,如图1所示,该方法会在步骤S102中获取当前头部位置数据,即机器人头部相对机器人坐标系的转动角度。随后,该方法会在步骤S103中根据上述步骤S101中所获取到的用户的位置信息以及步骤S102中所获取到的当前头部位置数据来确定头部以及用户的相对角度,并在步骤S104中根据上述相对角度确定头部转向用户后需要打开的波束,即待打开波束信息。

在得到待打开波束信息后,该方法会在步骤S105中根据机器人头部与用于之间的相对角度来生成相应的头部转动指令以控制机器人头部转动到用户位置。当机器人头部转动到用户位置处后,该方法还会在步骤S106根据步骤S104中所确定出的待打开波束信息来打开相应波束,从而实现对该用户所发出的声音的获取。

实施例二:

图2示出了本实施例所提供的用于智能机器人的语音交互数据获取方法的实现流程示意图。

如图2所示,本实施例所提供的用于智能机器人的语音交互数据获取方法首先在步骤S201中接收用户输入的唤醒词并对其进行解析以及声源定位,从而得到该用户的位置信息。需要指出的是,本实施例中,上述步骤S201的具体实现原理以及实现过程与上述实施例一中步骤S101的实现原理以及实现过程类似,故在此不再对步骤S201的相关内容进行赘述。

在得到用户的位置信息后,该方法会在步骤S202中根据用户的位置信息来判断用户的位置是否超过智能机器人的头部转动范围。本实施例中,智能机器人的头部的初始位置(正前方)为180°,其头部左右转动范围均在[0,75°]范围内。因此,如果用户的位置不处于[105°,255°]范围内,那么该用户的位置也就超过了智能机器人的头部转动范围。

本实施例中,如果用户的位置超过了智能机器人的头部转动范围,那么该方法也就会在步骤S209中生成并输出相应的多模态指示信息,以提示用户改变自身位置。

而如果用户的位置没有超过智能机器人的头部转动范围,那么该方法则会在步骤S203中获取当前头部位置数据,并在步骤S204中根据当前头部位置数据和用户位置信息确定该用户当前对应的波束信息以及机器人头部与用户之间的相对角度。

图3示出了本实施例中智能机器人的波束示意图,图4输出了智能机器人头部转动后的波束示意图。如图3所示,本实施例中,智能机器人通过四个波束来获取机器人四周360度范围内的声音信号,其中,第一波束(即波束0)用于获取[0,45°]以及[315°,360°]范围内的声音信号,第二波束(即波束1)用于获取[225°,315°]范围内的声音信号,第三波束(即波束2)用于获取[135°,225°]范围内的声音信号,第四波束(即波束3)用于获取[45°,135°]范围内的声音信号。

如果用户处于智能机器人正前方(即180°位置)时,智能机器人会打开第三波束(即波束2)来采集用户发出的语音信号。而如图3所示,当智能机器人头部处于右转45°的状态(即机器人头部朝向225°时),如果用户处于170°位置,那么此时智能机器人将利用第四波束(即波束3)来获取用户发出的语音信号。

本实施例中,该方法优选地根据用户的位置信息和机器人的当前头部位置数据,来确定用户当前对应的波束信息。具体地,该方法首先根据机器人的当前头部位置数据确定当前头部相对初始位置(即朝向正前方)的转动角度,随后再根据用户的位置信息以及头部相对初始位置的转动角度来确定用户的相对角度,最后在根据用户的相对角度来确定用户当前对应的波束信息。

其中,该方法优选地采用如下表达式来计算用户的相对角度θ1

θ1=θ23 (1)

其中,θ2表示用户位置角信息,θ3表示当前头部相对初始位置(即朝向正前方)的转动角度。

例如,机器人头部在左侧150°位置处,那么其相对于初始位置的转动角度θ3即为θ3=180°-150°=30°,即当前头部相对于其初始位置左转了30°。而如果机器人头部在右侧210°位置处,那么其相对于初始位置的转动角度θ3即为θ3=180°-210°=-30°,即当前头部相对于其初始位置右转了30°。

假设机器人头部在左侧150°位置处,用户的位置处于120°位置处,那么根据表达式(1)可以确定出该用户的相对角度θ1为150°。而根据图3可以知道,该用户当前对应的波束信息将为第三波束(即波束2)。

在得到用户当前对应的波束信息后,该方法也就可以根据用户与机器人头部的相对角度来确定待打开波束信息。具体地,如图2所示,该方法会在步骤S205中根据用户与机器人头部的相对角度可以确定出机器人头部的转动信息,随后再在步骤S206中根据机器人头部的转动信息以及当前用户所对应的波束信息来确定出打开波束信息。

具体地,本实施例中,智能机器人的头部的左右转动范围均在[0,75°]范围内,因此该方法优选地根据下表所示的数据来确定待打开波束信息。

表1

如图2所示,在确定出机器人头部与用户之间的相对角度以及待打开波束信息后,该方法会在步骤S207中根据机器人头部与用于之间的相对角度来生成相应的头部转动指令以控制机器人头部转动到用户位置。当机器人头部转动到用户位置处后,该方法还会在步骤S208根据步骤S206中所确定出的待打开波束信息来打开相应波束,从而实现对该用户所发出的声音的获取。

需要指出的是,本实施例所公开的智能机器人所包含的波束数量以及机器人头部的转动范围仅仅是为了更加清楚、方便地阐述本发明所提供的语音交互数据获取方法的实现原理以及实现过程,在本发明的其他实施例中,智能机器人所包含的波束数量以及机器人头部的转动范围还可以根据实际需要设定为其他合理值,本发明不限于此。

从上述描述中可以看出,本发明所提供的用于智能机器人的语音交互数据获取方法能够在智能机器人的头部发生转动后,精确的确定应该打开的波束,这样能够在实现机器人的头部随交互用户转动的同时,保证对用户语音的接收,进而既提高了智能机器人的类人性,又保证了智能机器人的智能性,大大提高智能机器人的人机交互水平。

本发明还提供了一种用于智能机器人的语音交互数据获取装置,图5示出了该语音交互数据获取装置的结构示意图。

如图5所示,本实施例所提供的语音交互数据获取装置优选地包括:用户位置确定模块501、波束信息确定模块502、头部转动模块503以及提示信息输出模块504。其中,用户位置确定模块501用于接收用户输入的唤醒词并对其进行解析以及声源定位,从而得到该用户的位置信息。

本实施例中,用户位置确定模块501确定出用户的位置信息后,会根据用户的位置信息来判断用户的位置是否超过了智能机器人的头部的转动范围。其中,如果用户的位置超过了智能机器人的头部的转动范围,那么用户位置信息确定模块501将向与之连接的指示信息输出模块504发送相应的控制指令,以控制指示信息输出模块504输出相应的多模态指示信息,以提示用户改变自身位置。

而如果用户的位置没有超过智能机器人的头部的转动范围,那么用户位置确定模块501在得到用户的位置信息后,会将用户的位置信息传输至与之连接的波束信息确定模块502。本实施例中,波束信息确定模块502会获取当前头部位置数据,随后根据上述用户位置信息以及当前头部位置数据确定出头部以及用户的相对角度,并根据头部以及用户的相对角度确定头部转向用户后需要打开的波束,从而得到待打开波束信息。

本实施例中,头部转动模块503与波束信息确定模块502连接,其能够根据波束信息确定模块502所传输来的头部与用户的相对角度生成头部转动指令来控制机器人头部进行转动。在机器人头部转动到相应位置后,头部转动模块503还会根据波束信息确定模块502传输来的待打开波束信息打开相应波束,从而利用该波束来获取用户所输入的语音交互数据。

需要指出的是,本实施例中,波束信息确定模块502以及头部转动模块503实现其各自功能的具体原理以及过程既可以与上述实施例一中步骤S102至步骤S106所阐述的内容相同,也可以与上述实施例二中步骤S203至步骤S208所阐述的内容相同,故在此不再对波束信息确定模块502以及头部转动模块503的相关内容进行赘述。

应该理解的是,本发明所公开的实施例不限于这里所公开的特定结构或处理步骤,而应当延伸到相关领域的普通技术人员所理解的这些特征的等同替代。还应当理解的是,在此使用的术语仅用于描述特定实施例的目的,而并不意味着限制。

说明书中提到的“一个实施例”或“实施例”意指结合实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,说明书通篇各个地方出现的短语“一个实施例”或“实施例”并不一定均指同一个实施例。

虽然上述示例用于说明本发明在一个或多个应用中的原理,但对于本领域的技术人员来说,在不背离本发明的原理和思想的情况下,明显可以在形式上、用法及实施的细节上作各种修改而不用付出创造性劳动。因此,本发明由所附的权利要求书来限定。

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