机器人操作系统环境下的应用内指令解析优化方法和装置与流程

文档序号:12718928阅读:152来源:国知局
机器人操作系统环境下的应用内指令解析优化方法和装置与流程

本发明涉及智能机器人领域,具体地说,涉及一种机器人操作系统环境下的应用内指令解析优化方法方法和装置。



背景技术:

目前机器人处理语义解析包含两个部分,一是机器人客户端独立处理一些比较独立的系统指令,如:“停止”、“关机”等。另一个是将用户指令通过网络,传输给后台。由后台解析指令,如:“唱一首歌”等。

然而,由后台来解析指令的方式存在两个弊端,一是由于大部分指令需要请求后台,所以机器人处理用户指令时间过长,影响用户体验。二,大量请求将增加后台服务器压力。

因此,需要一种能够提高智能机器人的解析能力同时又能提高用户体验速度的技术方案。



技术实现要素:

本发明的目的在于,提供来一种机器人操作系统环境下的应用内指令解析优化方法解决上述技术问题。为此,本发明的方法包括以下步骤:

接收用户的多模态输入数据并判断是否要安装相应的应用;

如果需要安装应用,则向云端服务器请求下载安装包并在本地安装所述应用,其中所述安装包中包括针对所述应用的指令解析包;

结合所述指令解析包来进一步解析所述多模态输入数据以生成多模态输出数据并进行输出。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化方法,优选的是,

如果在机器人操作系统正在运行应用的过程中接收多模态输入数据,则直接调用该应用已有的指令解析包对所述多模态输入数据中包含的用户指令进行解析。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化方法,优选的是,

在机器人操作系统中还包括应用解析平台,所述指令解析包通过将配置好的解析规则导入所述应用解析平台而产生。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化方法,优选的是,

所述指令解析包根据对所述多模态输入数据中包含的用户指令的解析来通过本地资源或者通过云端服务器来实现所述用户指令所要求的功能。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化方法,优选的是,

在向云端服务器请求下载安装包并在本地安装所述应用时,将安装包中的指令解析包添加到操作系统的能力库中,在操作系统接收到用户指令后,先检查与能力库中存储的可处理的指令是否匹配,如不匹配,再发送到云端服务器进行处理,如匹配,则在本地进行解析并进行处理。

根据本发明的另一个方面,还提供了一种机器人操作系统环境下的应用内指令解析优化装置,所述装置包括:

多模态数据接收单元,其用以接收用户的多模态输入数据并判断是否要安装相应的应用;

安装包请求单元,其用以在需要安装应用的情况下,向云端服务器请求下载安装包并在本地安装所述应用,其中所述安装包中包括针对所述应用的指令解析包;

多模态数据输出单元,其用以结合所述指令解析包来进一步解析所述多模态输入数据以生成多模态输出数据并进行输出。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化装置,优选的是,

如果在机器人操作系统正在运行应用的过程中接收多模态输入数据,则直接调用该应用已有的指令解析包对所述多模态输入数据中包含的用户指令进行解析。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化装置,优选的是,

在机器人操作系统中还包括应用解析平台,所述指令解析包是通过将配置好的解析规则导入所述应用解析平台,然后通过所述平台的处理而导出产生的。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化装置,优选的是,

所述指令解析包根据对所述多模态输入数据中包含的用户指令的解析来通过本地资源或者通过云端服务器来实现所述用户指令所要求的功能。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化装置,优选的是,

在向云端服务器请求下载安装包并在本地安装所述应用时,将安装包中的指令解析包添加到操作系统的能力库中,在操作系统接收到用户指令后,先检查与能力库中存储的可处理的指令是否匹配,如不匹配,再发送到云端服务器进行处理,如匹配,则在本地进行解析并进行处理。

本发明的有利之处在于,通过本发明实现了在机器人安装应用时,同时支持将应用解析包导入机器人本地解析的库中,从而提升机器人本地解析能力。在减少非必要网络传输成本的同时减小了后台服务器的压力,从而提高用户产品体验的速度。

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

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例共同用于解释本发明,并不构成对本发明的限制。附图中:

图1显示了一种在机器人操作系统下进行指令解析的方法流程图;

图2显示了根据本发明一个实施例的机器人操作系统环境下的应用内指令解析优化的总体方法流程图;

图3显示了根据本发明一个实施例的机器人操作系统环境下的应用内指令解析优化的详细流程图;以及

图4显示了根据本发明一个实施例的机器人操作系统环境下的应用内指令解析优化装置的结构框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,以下结合附图对本发明实施例作进一步地详细说明。

如图1所示,其中显示了一种在机器人操作系统下进行指令解析的大致流程图。该方法开始于步骤S101。一般地,起始步骤进行一系列参数初始化操作,为后续处理例如接收用户多模态数据进行准备。接下来,在步骤S102中,在用户需要发出指令的时候,准备接收用户的指令。这些指令的形式表现为多模态的方式,也就是说,用户既可以通过语音发出指令也可以通过屏幕输入文本的形式,甚或是手势等身体语言来发出指令。

当用户输入了指令以后,先由机器人操作系统解析该指令,判断指令是否符合本地解析条件。在一种情况下,主要判断该指令是否为系统通用指令,例如“开机”、“关机”等,步骤S103。如果是系统通用指令,则符合本地解析条件,就在机器人本地进行解析,步骤S104。得到的解析结果送到机器人操作系统的前端应用中进行执行,并输出。输出的方式可以采用多模态的方式进行,步骤S106。

如果不是系统通用指令,这就意味着本地解析失败。例如,当机器人在执行某应用时,如在自动照相模式,用户的多模态输入数据为“我想知道今天动物乐园发生了什么”这时的机器人的本地解析能力无法针对此指令提供解析结果,因此需要与云端服务器进行网络通信,以将指令发给后台(云端服务器)请求解析,步骤S105。云端服务器解析该指令的正确意图,然后把解析结果输出给机器人。最后再由机器人通过多模态方式反馈给用户。例如,机器人在得到正确的解析结果后,随即关闭当前照相应用,下载、安装并调用讲故事应用来随机播放故事列表中的任一个,以满足用户的需求。

类似地,即使当机器人正处于讲故事的应用中时,如果用户发出一条“换一个故事”的指令,机器人对该指令进行处理。然而由于该指令并不是一条通用的系统指令,而是与应用密切相关的用户指令。因此目前的机器人端还是无法处理这种应用内的用户指令。

另一方面,图灵机器人用户可根据需要添加应用,那么与该应用相关的解析指令无法全部包含在机器人本地解析能力库中。这种情况使得当前的机器人在解析用户指令环节中,绝大部分指令只能通过网络传输给后台,由后台解析用户指令。

可是这样的解析指令方式存在两个弊端,一是由于大部分指令需要请求后台,机器人处理用户指令时间过长,影响了用户体验。二是大量的请求将增加后台服务器的处理压力。

本发明将上述应用内的指令解析流程进行了优化,并据此提出了一种机器人操作系统环境下的指令解析方法。如图2所示,其中显示了机器人操作系统环境下的指令解析方法总体流程图。

在步骤S201中,当机器人接收到用户发送的多模态输入数据时,判断是否要安装相应的应用。如果判断的结果是系统需要安装应用,则系统会选择向云端服务器请求下载对应于该应用的安装包,并在本地安装所述应用,步骤S202。其中所述安装包中包括针对所述应用的指令解析包。

接下来,在步骤S203中,结合指令解析包来进一步解析用户发送的多模态输入数据以生成多模态输出数据并进行输出。

由此可知,本发明通过在接收用户的多模态输入指令时就会首先判断该指令是否与某应用有关,机器人操作系统本地是否安装过该应用,以及安装了该应用时是否具有指令解析包。在一个优选的实施例中,操作系统进一步地还会判断该指令解析包是否为最新版本。如果没有该应用,系统自动下载并安装应用,其中下载的安装包中自带指令解析包。

如果操作系统中已经安装了该应用,则调用机器人本地解析库来进行本地解析。本地解析库是保存在机器人本地的用以处理用户语音或文本指令的能力库。本地解析库可根据需要灵活地进行升级以添加应用的指令解析包,从而不断扩充其解析能力。

如:“唱一首歌”可直接在本地解析,“唱一首刘德华的冰雨”则需要机器人操作系统的后台也就是云端服务器来解析出相关数据。机器人操作系统解析后台用以解析机器人远程请求的用户指令(包括语音形式或者文本形式),返回给机器人决策后的解析结果与解析的相关数据。当开发人员的解析规则添加完成后,通过接口在操作系统后台导出相应的解析包。

如前所述,在应用安装时,需要同时将该应用的应用解析包导入机器人本地解析库,卸载也需同时将其删除。本发明的应用指令解析包符合统一的接口规范,具有应用相关解析能力,且能决定应用中的哪些功能可由本地来进行解析处理。

更为详细的操作系统环境下的指令解析优化方法流程参见图3。

与图1中的流程前部分类似地,方法开始于步骤S301。一般地,起始步骤进行一系列参数初始化操作,为后续处理例如接收用户多模态数据进行准备。接下来,在步骤S302中,在用户需要发出指令的时候,准备接收用户的指令。这些指令的形式表现为多模态的方式,也就是说,用户既可以通过语音发出指令也可以通过屏幕输入文本的形式,甚或是手势等动作发出指令。

接下来,在步骤S303中,判断机器人操作系统是否正在运行某应用,例如是否处于照相应用、讲故事应用、唱歌应用中。如果在机器人操作系统正在运行应用的过程中接收多模态输入数据,则直接调用该应用已有的指令解析包对多模态输入数据中包含的用户指令进行解析。具体地,如果是,则判断在该应用下是否具有解析能力,步骤S304。一个方式是判断该应用在本地对应的是否已安装有指令解析包,如果有的话,则调用本地指令解析库对该指令进行解析,步骤S311。如果没有指令解析包,则向云端服务器发送请求解析的消息,步骤S305。通过云端服务器的解算,得到用户指令的解析结果,机器人接收该解析结果,并根据解析结果中指示的用户意图执行相应的功能,以多模态方式输出针对指令的响应结果,步骤S312。

如果机器人操作系统不在运行与用户有关的指令的应用并且也不存在该应用,则询问是否需要安装该应用,步骤S307。如果需要安装应用,则系统请求云端服务器下载应用,步骤S309。如果不需要安装应用,则直接返回无法响应报告,步骤S308。

当云端服务器成功地将应用以及所附的指令解析包发送给机器人操作系统后,机器人在本地进行安装,步骤S310。

指令解析包根据对所述多模态输入数据中包含的用户指令的解析来通过本地资源或者通过云端服务器来实现所述用户指令所要求的功能。

在一个优选的例子中,在向云端服务器请求下载安装包并在本地安装所述应用时,可将安装包中的指令解析包添加到操作系统的能力库中,在操作系统接收到用户指令后,先检查与能力库中存储的可处理的指令是否匹配。如不匹配,再发送到云端服务器进行处理,如匹配,则在本地进行解析并进行处理。

特别地,如果用户需要将机器人中的某些应用删除,那么对应的指令解析包也会从操作系统的解析能力库中删除,从而节约一定的存储空间。

由于本发明的方法描述的是在计算机系统中实现的。该计算机系统例如可以设置在机器人的控制核心处理器中。例如,本文所述的方法可以实现为能以控制逻辑来执行的软件,其由机器人控制系统中的CPU来执行。本文所述的功能可以实现为存储在非暂时性有形计算机可读介质中的程序指令集合。当以这种方式实现时,该计算机程序包括一组指令,当该组指令由计算机运行时其促使计算机执行能实施上述功能的方法。可编程逻辑可以暂时或永久地安装在非暂时性有形计算机可读介质中,例如只读存储器芯片、计算机存储器、磁盘或其他存储介质。除了以软件来实现之外,本文所述的逻辑可利用分立部件、集成电路、与可编程逻辑设备(诸如,现场可编程门阵列(FPGA)或微处理器)结合使用的可编程逻辑,或者包括它们任意组合的任何其他设备来体现。所有此类实施例旨在落入本发明的范围之内。

因此,根据本发明的另一个方面,还提供了一种机器人操作系统环境下的应用内指令解析优化装置400。如图4所示,装置400包括:

多模态数据接收单元401,其用以接收用户的多模态输入数据并判断是否要安装相应的应用;

安装包请求单元402,其用以在需要安装应用的情况下,向云端服务器请求下载安装包并在本地安装所述应用,其中所述安装包中包括针对所述应用的指令解析包;

多模态数据输出单元403,其用以结合所述指令解析包来进一步解析所述多模态输入数据以生成多模态输出数据并进行输出。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化装置,优选的是,如果在机器人操作系统正在运行应用的过程中接收多模态输入数据,则直接调用该应用已有的指令解析包对所述多模态输入数据中包含的用户指令进行解析。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化装置,优选的是,在机器人操作系统中还包括应用解析平台。指令解析包是通过将配置好的解析规则导入所述应用解析平台,然后通过平台的处理而导出产生的。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化装置,优选的是,所述指令解析包根据对多模态输入数据中包含的用户指令的解析来通过本地资源或者通过云端服务器来实现所述用户指令所要求的功能。

在一个实施例中,根据本发明的机器人操作系统环境下的应用内指令解析优化装置,优选的是,在向云端服务器请求下载安装包并在本地安装所述应用时,将安装包中的指令解析包添加到操作系统的能力库中,在操作系统接收到用户指令后,先检查与能力库中存储的可处理的指令是否匹配,如不匹配,再发送到云端服务器进行处理,如匹配,则在本地进行解析并进行处理。

本发明的有利之处在于,通过本发明实现了在机器人安装应用时,同时支持将应用解析包导入机器人本地解析的库中,从而提升机器人本地解析能力。在减少非必要网络传输成本的同时减小了后台服务器的压力,从而提高用户产品体验的速度。

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

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

虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所公开的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

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