语音导航方法、装置、电子设备、存储介质以及程序产品与流程

文档序号:30076553发布日期:2022-05-18 03:26阅读:96来源:国知局
语音导航方法、装置、电子设备、存储介质以及程序产品与流程

1.本技术涉及导航技术领域,具体涉及一种语音导航方法、装置、电子设备、存储介质以及程序产品。


背景技术:

2.随着社会的进步,导航成为人们生活不可缺少的部分。其中,导航是指根据用户输入的导航意图确定与其对应的导航业务,并执行该导航业务。例如,用户输入的导航意图是导航去火车站,则导航系统根据导航去火车站的导航意图导航至火车站。但由于根据导航意图确定导航去火车站的导航过程逻辑复杂,例如,导航系统需要根据导航意图的关键词确定搜索目的地,并基于搜索的目的地确定最终目的地,进而基于用户当前位置与最终目的地确定语音导航信息,导致导航系统查找去火车站的导航逻辑繁琐,进而导致导航效率低下。


技术实现要素:

3.为解决上述技术问题,本技术的实施例提供了一种语音导航方法、装置、电子设备、存储介质以及程序产品。
4.根据本技术实施例的一个方面,提供了一种语音导航方法,所述语音导航方法应用于语音导航系统,所述语音导航系统包括状态机,所述状态机包括多个导航状态以及不同导航状态之间的转移关系,所述方法包括:
5.识别输入的第一导航语音对应的第一导航意图;
6.从所述状态机的导航状态中确定与所述第一导航意图相匹配的目标导航状态;
7.执行以所述目标导航状态作为起始状态的第一导航状态转移流程,以获得与所述第一导航意图对应的语音导航信息。
8.根据本技术实施例的一个方面,提供了一种语音导航装置,所述语音导航装置应用于语音导航系统,所述语音导航系统包括状态机,所述状态机包括多个导航状态以及不同导航状态之间的转移关系,所述语音导航装置包括:
9.语音意图识别模块,配置为识别输入的第一导航语音对应的第一导航意图;
10.第一确定模块,配置为从所述状态机的导航状态中确定与所述第一导航意图相匹配的目标导航状态;
11.第一执行模块,配置为执行以所述目标导航状态作为起始状态的第一导航状态转移流程,以获得与所述第一导航意图对应的语音导航信息。
12.根据本技术实施例的一个方面,提供了一种电子设备,包括:
13.存储器,存储有计算机可读指令;
14.处理器,读取存储器存储的计算机可读指令,以执行上述任一项的语音导航方法。
15.根据本技术实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述
的语音导航方法。
16.根据本技术实施例的一个方面,还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上所述的语音导航方法中的步骤。
17.在本技术的实施例提供的技术方案中,是利用状态机结合语音导航技术实现语音导航信息的确定,具体通过在状态机的导航状态中确定与第一导航意图相匹配的目标导航状态,从而确定以目标导航状态作为起始状态的第一导航状态转移流程,进而执行第一导航状态转移流程,以获取与第一导航意图对应的语音导航信息,由此结合状态机对导航语音的导航意图进行导航处理,即将繁琐逻辑封装成一导航状态转移流程,使导航处理过程层次清晰,避免了直接利用第一导航意图确定其对应的语音导航信息所带来的繁琐逻辑,提高了语音导航的导航效率。
18.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
19.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
20.图1是一示例性实施例示出的现有语音导航方法的流程示意图;
21.图2是另一示例性实施例示出的现有语音导航方法的流程示意图;
22.图3是本技术的一示例性实施例示出的语音导航方法的实施环境示意图;
23.图4是本技术的一示例性实施例示出的语音导航方法的流程图;
24.图5是本技术的一示例性实施例示出的状态机的效果示意图;
25.图6是图3所示的语音导航方法中的一具体实施环境示意图;
26.图7是图3所示的语音导航方法中一示例性实施例的流程图;
27.图8是图7所示实施例中的步骤s720在一示例性的实施例中的流程图;
28.图9是图7所示实施例中的步骤s720在另一示例性的实施例中的流程图;
29.图10是图9所示的语音导航方法中一具体实施环境示意图;
30.图11是图3所示的语音导航方法中另一示例性实施例的流程图;
31.图12是图11所示实施例中的步骤s1120在一示例性的实施例中的流程图;
32.图13是图11所示实施例中的步骤s1120在另一示例性的实施例中的流程图;
33.图14是本技术的一示例性实施例示出的语音导航装置的框图;
34.图15示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
35.这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
36.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
37.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
38.在本技术中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
39.首先说明的是,导航是一种基于用户输入的导航意图确定与其对应的导航业务,并执行该导航业务的技术,是确定并指导车辆或行人等对象从当前位置移动到目的位置的过程。在更广泛的意义上,导航可以指涉及确定位置和方向的任何技能或研究。导航领域通常划分为陆地导航、海洋导航、空中导航和空间导航四个领域,本技术的实施例则涉及陆地导航。具体地,本技术的实施例涉及利用状态机结合语音导航技术,并应用与语音导航系统,实现根据导航意图流程化地确定语音导航信息。
40.现有语音导航技术在接收到用户的导航语音后,会对导航语音对应的识别结果进行语义和导航语音逻辑上的处理,进而确定导航语音对应的语音导航信息。但存在确定导航语音对应的语音导航信息的过程中,各个语音导航逻辑相互独立,导致确定语音导航信息的繁琐逻辑。
41.例如以基于用户输入的导航语音导航车辆去火车站的应用场景为例,对现有技术中的语音导航技术进行说明。虽然现有技术中导航去火车站的过程存在火车站检索、检索结果展示及路径规划等导航逻辑,但是在实际确定时,各个导航逻辑独立运行,容易导致确定导航语音对应的语音导航信息的导航逻辑混乱或繁琐。基于上述语音导航技术所存在的问题,本技术的发明人在研发过程中发现语音导航中最常见的功能存在以下特点,第一,语音导航过程中的同一时刻只需一种导航逻辑;第二,语音导航过程中的相同导航逻辑可重复使用。
42.例如,以导航回家过程中的语音交互流程进行说明,详情可参阅图1。如图1所示,语音导航回家的过程包括语音询参、检索、poi(point of interest)兴趣点展示、选择poi以及路线规划等多个语音导航逻辑。在其他导航去某地的语音导航过程中存在和导航回家相同的语音导航逻辑。
43.又例如,以确定地点a在哪的语音导航过程进行说明,详情可参阅图2。如图2所示,语音导航确定地点a在哪的过程包括检索、poi(point of interest)兴趣点列表展示、选择poi以及poi详情显示。在确定某地具体在哪的语音导航过程同样存在和确定地点a在哪相同的语音导航逻辑。
44.基于此,确定每一导航语音对应的导航意图具有相同或相似的语音导航逻辑。因此,本技术的实施例利用状态机结合语音导航技术,封装导航语音对应导航意图的语音导航转移流程,使得基于导航语音能够快速确定其对应的语音导航信息,进而提高了语音导航的效率。
45.图3是本技术涉及的一种实施环境的示意图。如图3所示,车辆行驶过程中通过智
能终端310上安装的导航地图软件来实现导航,导航地图软件会基于用户的导航语音向导航服务端320进行信息确认请求,之后导航服务端320基于智能终端310接收的导航语音,确定与导航语音对应的导航意图,进而根据导航意图确定目标导航状态,从而执行以目标导航状态为起始状态的第一导航状态转移流程,以确定与导航意图对应的语音导航信息。并通过智能终端310向导航地图软件发送语音导航信息。
46.其中,图1所示的智能终端310可以是智能手机、车载电脑、平板电脑、笔记本电脑或者可穿戴设备等任意支持安装导航地图软件的终端设备,但并不限于此。图1所示的导航服务端320是导航服务器,例如可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,在此也不进行限制。智能终端310可以通过3g(第三代的移动信息技术)、4g(第四代的移动信息技术)、5g(第五代的移动信息技术)等无线网络与导航服务端320进行通信,本处也不对此进行限制。
47.请参阅图4,图4是本技术的一示例性实施例示出的语音导航方法的流程图。该方法可以应用于图3所示的实施环境,并由该实施环境中的导航服务端320具体执行。应理解的是,该方法也可以适用于其它的示例性实施环境,并由其它实施环境中的设备具体执行,本实施例不对该方法所适用的实施环境进行限制。
48.示例性的,本实施例揭示的语音导航方法所适用的智能终端中可以安装有导航sdk(software development kit,软件开发工具包,是为特定的软件包、软件框架、操作系统等建立应用软件时的开发工具集合),而本实施例揭示的方法具体实现为该导航sdk对外提供的一项或多项功能。
49.下面以导航服务器作为具体的执行主体来对本技术实施例提出的语音导航方法进行详细介绍。
50.如图4所示,在一示例性的实施例中,语音导航方法至少包括步骤s410至步骤s420,详细介绍如下:
51.步骤s410,识别输入的第一导航语音对应的第一导航意图。
52.首先需要说明的是,第一导航语音为用户输入,具体可以为语音输入。第一导航意图为用户想要实现的语音导航业务或语音导航功能,包括但不限于导航去某地、周边检索、地点查询、添加收藏、添加途径点、查询道路状态以及查询道路限速等。
53.导航服务器对用户输入的第一导航语音进行分析识别,确定第一导航语音对应的第一导航意图。在具体实施例中,导航服务器可以通过确定第一导航语音对应的导航文本,提取导航文本的文本特征,利用文本特征与预设文本特征进行逐一对比确定第一导航意图。在其他实施例中,导航服务器还可利用深度神经网络模型对输入的导航语音进行识别处理,进而确定第一导航意图。本实施例对导航服务器识别确定第一导航意图的方式不作限定。
54.步骤s420,从状态机的导航状态中确定与第一导航意图相匹配的目标导航状态。
55.状态机是指一个数学模型,一般是指一张状态转换图。在本实施例中,状态机包括多个导航状态以及不同导航状态之间的转换关系。状态机中的每一导航状态对应一导航意图,也即状态机的导航状态中存在与导航意图相匹配的导航状态。详情可参阅图5,图5是本
申请的一示例性实施例示出的状态机的效果示意图。如图5所示,状态机中的rootstate为状态机的根状态,该根状态的一级子状态包括导航去某地navitopoi、周边搜索nearbyseacrch、地点查询querylocation、添加收藏addfavorite、添加途径点addpassing、查询道路路况queryroutetraffic以及查询剩余时间queryroute等。其中,每个根状态的一级子状态还包括与其对应的二级子状态。如图5,一级子状态导航去某地navitopoi还包括二级子状态有poi列表showpoilist和仅有目的地getpoibyname。其他一级子状态的二级子状态如图所示,在此不进行重复赘述。
56.进一步需要说明的是,考虑到语音导航的复杂逻辑,每一一级子导航状态可以为其他一级子导航状态的二级子导航状态或者三级子导航状态等,以形成以一级子导航状态为起始状态的导航状态转移流程。进而实现语音导航功能的逻辑组合,也即流程化语音导航功能,避免独立地对每个语音导航功能逻辑进行代码维护,提高了每个导航状态转移流程对应的代码维护效率。
57.在本实施例中,与第一导航意图相匹配的目标导航状态也即图5所示状态机中根状态的一级子导航状态。
58.导航服务器在确定第一导航意图后,搜索状态机中的导航状态,确定与第一导航意图相匹配的目标导航状态。
59.步骤s430,执行以目标导航状态作为起始状态的第一导航状态转移流程,以获得与第一导航意图对应的语音导航信息。
60.第一导航状态转移流程为导航状态和导航状态之间的转移关系形成的状态流转流程,具体以目标导航状态作为起始状态进行流转,以流转至第一导航状态转移流程中的末端导航状态。
61.语音导航信息为基于执行第一导航状态转移流程确定的导航路径。导航路径是用户当前位置与目的地之间的路线,其是基于执行第一导航状态转移流程所确定的目的地和用户当前位置所得到。
62.需要说明的是,目的地可通过检索第一导航意图中的位置信息对应的关键词;或者,基于第一导航意图中的位置信息对应的关键词进行周边检索或者沿途检索,进而确定目的地位置。
63.另外需要说明的是,在本技术的具体实施方式中,涉及到用户位置相关数据,当本技术的实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
64.导航服务器确定以目标导航状态作为起始状态的第一导航状态转移流程,并执行第一导航状态转移流程,以得到与第一导航意图对应的语音导航信息。
65.需要说明的是,由于导航意图的不唯一性,确定的与导航意图相匹配的目标导航状态有所不同。换句话说,状态机中包括多个目标导航状态。每一目标导航状态均可作为起始状态,进而执行对应的导航状态转移流程,得到不同导航意图对应的语音导航信息。
66.为了清楚描述上述实施例,以下基于图5中的状态机结合导航去火车站的具体应用场景对上述实施例进行说明。详情可参阅图6,图6为用户导航去火车站的语音导航示例。
67.具体地,导航服务器接收到用户输入的第一导航语音后,触发状态机从根状态变更至目标导航状态,也即导航去某地状态navitopoi。导航服务器将第一语音意图“导航去
火车站”中的火车站与预设火车站列表进行比较,在确定用户输入的火车站不存在于预设的火车站列表中时,变更目标导航状态至目标导航状态的下一导航状态,也即仅有目的地状态getpoibyname。导航服务器设定用户输入的火车站是否为预设的公司或家。若否,则变更目的地状态getpoibyname为目的地检索状态getpoibysearch,并基于输入的火车站进行检索,确定检索结果。
68.需要说明的是,考虑到导航服务器基于火车站检索到多个检索结果时,导航服务器可将多个检索结果通过用户交互界面ui(user interface)反馈给用户。也即图5中状态机所处的showpoilist状态。用户对用户交互界面ui的检索结果进行选择确定。导航服务器基于用户的选择,确定导航去火车站的导航意图对应的语音导航信息。
69.进一步地,考虑到用户使用导航服务器时正在驾驶汽车等,若仅设置通过用户交互界面ui确定检索结果,可能提高用户驾驶汽车的危险性。为此,本实施例中,也可设置语音播报的形式,逐个播报检索结果。例如,检索结果1为火车西站,检索结果2为火车东站,检索结果3为火车北站等。用户基于语音播报的检索结果,语音输出检索结果的选择,例如,选择检索结果1。
70.还需要说明的是,导航服务器利用火车站进行检索处理时,可以调用检索模型进行检索,也即图5状态机中的poisearchmode,以提高检索效率。
71.可以看出,本实施例的语音导航方法利用状态机结合语音导航技术确定语音导航技术。具体通过在状态机的导航状态中确定与第一导航意图相匹配的目标导航状态,从而确定以目标导航状态作为起始状态的第一导航状态转移流程,进而执行第一导航状态转移流程,以获取与第一导航意图对应的语音导航信息,由此结合状态机对导航语音的导航意图进行导航处理,即将繁琐逻辑封装成一导航状态转移流程,使导航处理过程层次清晰,避免了直接利用第一导航意图确定其对应的语音导航信息所带来的繁琐逻辑,提高了语音导航的导航效率。
72.在上述实施例的基础上,考虑到存在第一导航状态转移流程中某一转移条件无法满足预设的状态转移条件等问题,导致检测到转移失败的转移关系。换句话说存在第一导航状态转移流程中某一转移关系无法将当前导航状态变更为当前导航状态的下一导航状态的情况。为此,本实施例针对以上技术问题,提供在以下解决方案。
73.如图7所示,在上述示例性的实施例中,语音导航方法至少还包括步骤s710至步骤s730,详细介绍如下:
74.步骤s710,在执行第一导航状态转移流程的过程中,若检测到转移失败的转移关系,则从状态机的导航状态中选取第一导航状态。
75.转移关系为导航状态转移流程中两导航状态之间的变更条件,在当前转移关系满足预设转移关系时,两导航状态中前一导航状态变更至后一导航状态。
76.第一导航状态为不存在于第一导航状态转移流程中的导航状态。
77.为了提高语音导航的获取效率,导航服务器在检测到转移失败的转移关系时,从状态机的导航状态中选取第一导航状态,使得在检测到转移失败时状态机能够通过第一导航状态,实现导航状态转移流程的执行。
78.步骤s720,确定第二导航状态转移流程,第二导航状态转移流程以目标导航状态作为起始状态,且包含第一导航状态。
79.第二导航状态转移流程包括第一导航状态和目标导航状态。第二导航状态转移流程以目标导航状态为起始状态转移经过第一导航状态至第二导航状态转移流程中的最末导航状态。
80.步骤s730,执行第二导航状态转移流程,以获得与第一导航意图对应的语音导航信息。
81.导航服务器执行以目标导航状态作为起始状态转移经过第一导航状态至第二导航状态转移流程中的最末导航状态所对应的第二导航状态转移流程,进而得到与第一导航意图对应的语音导航信息。
82.需要说明的是,导航服务器执行第二导航状态转移流程时,需要以目标导航状态变更至第二导航状态的相反转移流程,流转至目标导航状态。进而执行以目标导航状态作为第二导航状态转移流程的起始状态,并转移经过第二导航状态的导航状态转移流程。
83.可以看出,本实施例的导航服务器通过在检测到转移失败的转移关系时,从状态机的导航状态中选取第一导航状态,并确定包括第一导航状态和目标状态的第二导航状态转移流程,使得执行第二导航状态转移流程时能够复用第一导航状态转移流程中的部分导航状态转移流程,提高了语音导航信息的获取效率,节省导航服务器的运算工作量。
84.图8是图7所示实施例中的步骤s720在一示例性的实施例中的流程图。如图8所示,确定第二导航状态转移流程的过程可以包括步骤s810至步骤s830,详细介绍如下:
85.步骤s810,确定检测到转移失败的转移关系时状态机所处的第二导航状态,并从第一导航状态转移流程中确定第一子转移流程。
86.第二导航状态既为第一导航状态转移流程中的导航状态,也为第二导航状态转移流程中的导航状态。具体为第二导航状态转移流程中位于目标导航状态和第一导航状态所对应的子转移流程中的一导航状态。
87.第一子转移流程为第一导航状态转移流程中的一部分。具体为第一导航状态转移流程中从目标导航状态转移至第二导航状态所对应的子转移流程。
88.导航服务器根据确定的第二导航状态,获取第一导航状态转移流程中从目标导航状态转移至第二导航状态所对应的导航状态转移流程为第一子转移流程。
89.步骤s820,确定从第一导航状态流转至第一最终导航状态的第二子转移流程。
90.第一最终导航状态为第二导航状态转移流程中位于最末端的导航状态。
91.第二子转移流程为第二导航状态转移流程中的一部分。具体为第二导航状态转移流程中从第一导航状态流转至第一最终导航状态所对应的导航状态转移流程。
92.导航服务器根据确定的第一导航状态,获取第一导航状态转移至第一最终导航状态所对应的导航状态转移流程作为第二子转移流程。
93.步骤s830,由第一子转移流程和第二子转移流程形成第二导航状态转移流程。
94.基于第一子转移流程和第二子转移流程,确定第二导航状态转移流程。其中,第二导航状态转移流程是以目标导航状态作为起始状态转移经过第二导航状态、第一导航状态至第一最终导航状态的导航状态转移流程。
95.需要说明的是,导航服务器执行第二导航状态转移流程时,需要以目标导航状态变更至第二导航状态的相反转移流程,流转至目标导航状态。进而执行以目标导航状态作为第二导航状态转移流程的起始状态,并转移经过第二导航状态的导航状态转移流程。
96.可以看出,导航服务器在检测到转移失败的转移关系时,确定状态机所处的第二导航状态以及第一导航状态,使得第二导航状态转移流程能够复用第一导航状态转移流程中的第一子转移流程,实现了导航状态的组合使用,提高了语音导航信息的获取效率,节省导航服务器的运算工作量。
97.图9是图7所示实施例中的步骤s720在另一示例性的实施例中的流程图。如图9所示,确定第二导航状态转移流程的过程还可以包括步骤s910至步骤s930,详细介绍如下:
98.步骤s910,确定检测到转移失败的转移关系时状态机所处的第二导航状态,并从第一导航状态转移流程中确定第一子转移流程。
99.本步骤的详细描述可参阅上述步骤s810,在此不进行重复赘述。
100.步骤s920,从第一导航状态转移流程中确定转移关系位于第二导航状态之后的第三导航状态,并确定从第一导航状态流转至第三导航状态所对应的第三子转移流程。
101.第三导航状态既为第一导航状态转移流程中的导航状态,也为第二导航状态转移流程中的导航状态。具体为第一导航状态转移流程中转移关系位于第二导航状态之后的导航状态。
102.第三子转移流程为第二导航状态转移流程中的一部分。具体为第二导航状态转移流程中从第一导航状态流转至第三导航状态所对应的导航状态转移流程。
103.导航服务器根据从第一导航状态转移流程中确定的第三导航状态,确定从第一导航状态流转至第三导航状态所对应的导航状态转移流程为第三子转移流程。
104.具体地,在步骤s920之后,导航服务器还可从状态机的导航状态中确定第四导航状态。第四导航状态用于实现用户语音交互的功能。
105.第四导航状态为第二导航状态转移流程中的导航状态,不属于第一导航状态转移流程中的导航状态。具体为第三子转移流程中的导航状态。
106.导航服务器构建依次在第一导航状态、第四导航状态以及第三导航状态之间流转的导航状态转移流程以作为第三子转移流程。
107.步骤s930,将第一导航状态转移流程中从第三导航状态流转至第一最终导航状态所对应的导航状态转移流程作为第四子转移流程,由第一子转移流程、第三子转移流程和第四子转移流程形成第二导航状态转移流程。
108.第四子转移流程既为第一导航状态流程中的一部分,也为第二导航状态中的一部分。具体为第二导航状态转移流程中从第三导航状态流转至第一最终导航状态所对应的导航状态转移流程。
109.导航服务器根据从第一导航状态转移流程中确定的第四子转移流程,并由第一子转移流程、第三子转移流程和第四子转移流程形成第二导航状态转移流程。
110.为了清楚描述上述实施例,以下基于图5中的状态机结合导航去火车站的具体应用场景对上述实施例进行说明。详情可参阅图10,图10为用户导航去公司的语音导航示例。
111.具体地,导航服务器接收到用户输入的第一导航语音后,触发状态机从根状态变更至目标导航状态,也即导航去某地状态navitopoi。导航服务器将第一语音意图“导航去公司”中的公司与预设公司列表进行比较,在确定用户输入的公司不存在于预设的公司列表中时。转移目标导航状态至目标导航状态的下一导航状态,也即仅有目的地状态getpoibyname。导航服务器确定本地公司是否存在。若否,则确定第一导航状态,也即添加
收藏状态addfavorite。导航服务器基于第一导航状态确定第四导航状态,也即交互状态nonekeywor,第四导航状态用于语音询问用户“您需要把哪里设置为公司”。响应于用户对公司的设置,例如为滨海大厦,导航服务器将用户对“滨海大厦”的设置,转移至第三导航状态,也即目的地检索状态getpoibysearch,以基于确定的公司设置,确定最终的检索结果。
112.需要说明的是,考虑到导航服务器基于公司检索到多个检索结果时,导航服务器可将多个检索结果通过用户交互界面ui(user interface)反馈给用户。也即图5中状态机所处的showpoilist状态。用户对用户交互界面ui的检索结果进行选择确定。导航服务器基于用户的选择,确定导航去公司的导航意图对应的语音导航信息。
113.进一步地,考虑到用户使用导航服务器时正在驾驶汽车等,若仅设置通过用户交互界面ui确定检索结果,可能提高用户驾驶汽车的危险性。为此,本实施例中,也可设置语音播报的形式,逐个播报检索结果,进而使得用户基于语音播报的检索结果顺序语音选择最终的检索结果。例如,语音播报第一个检索结果为滨海大厦,第二个检索结果为临海大厦等。用户基于语音播报的检索结果,语音输出检索结果的选择,例如,用户语音选择第一个检索结果滨海大厦。
114.其中,在检索结果众多时,可考虑分页进行播报。也即按页逐个播报检索结果。当用户确定当前页无最终检索结果时,可语音输入下一页,以使导航服务器可播放当前页的下一页中的检索结果,直至语音选择到最终的检索结果。
115.可以看出,本实施例的导航服务器在检测到转移失败的转移关系时,确定状态机所处的第二导航状态,并确定第三导航状态,进而确定第三子转移流程和第四子转移流程,并基于第一子转移流程、第三子转移流程和第四子转移流程形成第二导航状态转移流程。使得第二导航状态转移流程能够复用第一导航状态转移流程中的第一子转移流程和第四子转移流程,实现了导航状态的组合使用,提高了语音导航信息的获取效率,节省导航服务器的运算工作量。
116.在上述实施例的基础上,考虑到由于网络原因,存在还未执行完第一导航状态转移流程时,接收到第二导航语音。若等导航服务器执行完第一语音意图对应的语音导航信息,再确定第二导航语音对应的语音导航信息,则可能导致导航服务器处理繁琐,且不利于导航状态转移流程对应代码的维护。为此,本实施例为解决上述技术问题,提供在以下解决方案。
117.如图11所示,在上述示例性的实施例中,语音导航方法至少还包括步骤s1110至步骤s1130,详细介绍如下:
118.步骤s1110,在执行第一导航状态转移流程的过程中,若接收到第二导航语音,则确定与第二导航语音对应的第二导航意图匹配的第五导航状态。
119.第二导航语音为用户输入,具体可以为语音输入。
120.第二导航意图为用户想要实现的语音导航功能或语音导航业务,包括但不限于导航去某地、周边检索、地点查询、添加收藏、添加途径点、查询道路状态以及查询道路限速等。
121.第五导航状态不为第一导航状态转移流程中的导航状态。
122.导航服务器通过对第二导航语音进行解析处理,确定第二导航语音对应的第二导航意图,并在状态机中确定与第二导航意图匹配的第五导航状态。
123.步骤s1120,根据第五导航状态确定第三导航状态转移流程。
124.第三导航状态转移流程包括第五导航状态。
125.导航服务器根据第五导航状态确定第三导航状态转移流程。
126.步骤s1130,执行第三导航状态转移流程,以获得与第二导航意图对应的语音导航信息。
127.导航服务器执行包括第五导航状态的第三导航状态转移流程,进而得到与第二导航意图对应的语音导航信息。
128.可以看出,本实施例的导航服务器在执行第一导航状态转移流程的过程中,若接收到第二导航语音,则确定包括第五导航状态的第三导航状态转移流程,并执行第三导航状态转移流程,进而提高了语音导航信息的获取效率。
129.图12是图11所示实施例中的步骤s1120在一示例性的实施例中的流程图。如图12所示,根据第五导航状态确定第三导航状态转移流程的过程可以包括步骤s1210至步骤s1230,详细介绍如下:
130.步骤s1210,确定接收到第二导航语音时状态机所处的第六导航状态,并从第一导航状态转移流程中确定第五子转移流程。
131.第六导航状态为第一导航状态转移流程中的导航状态,也为第三导航状态转移流程中的导航状态。
132.第五子转移流程是第一导航状态转移流程中的部分导航转移流程。具体为以目标导航状态流转至第六导航状态对应的导航状态转移流程。
133.导航服务器确定第六导航状态,并从第一导航状态流程中确定以目标导航状态为起始状态流转至第六导航状态对应的导航状态转移流程为第五子导航状态。
134.步骤s1220,确定从第五导航状态流转至第二最终导航状态的第六子转移流程。
135.第二最终导航状态为第三导航状态转移流程中位于最末端的导航状态。
136.第六子转移流程为从第五导航状态流转至第二最终导航状态所对应的导航状态转移流程。
137.导航服务器将从第五导航状态流转至第二最终导航状态所对应的导航状态转移流程确定为第六子转移流程。
138.步骤s1230,由第五子转移流程和第六子转移流程形成第三导航状态转移流程。
139.第三导航状态转移流程由第五子转移流程和第六子转移流程所形成。
140.进一步地,导航服务器在执行第三导航状态转移流程,以获取与第二导航意图对应的语音导航信息时,需以第五子转移流程的相反流转方向流转至目标导航状态。进而从目标导航状态开始执行第三导航状态转移流程。换句话说,导航服务器在接收到第二导航语音时,将第六导航状态转移回目标导航状态,方便从目标导航状态开始复用第一导航状态转移流程中的第五子转移流程,直至执行完包括第五子转移流程的第三导航语音转移流程。
141.可以看出,本实施例的导航服务器在执行第一导航状态转移流程的过程中,若接收到第二导航语音,则确定第五导航状态,进而确定第六子转移流程和第五子转移流程,并基于第六子转移流程和第五子转移流程形成第三导航状态转移流程,使得第三导航状态转移流程能够复用第一导航状态转移流程中的第五子转移流程,实现了导航状态的组合使
用,提高了语音导航信息的获取效率,节省导航服务器的运算工作量。
142.图13是图11所示实施例中的步骤s1120在另一示例性的实施例中的流程图。如图13所示,根据第五导航状态确定第三导航状态转移流程的过程还可以包括步骤s1310至步骤s1330,详细介绍如下:
143.步骤s1310,确定接收到第二导航语音时状态机所处的第六导航状态,并确定从目标导航状态流转至第六导航状态的第五子转移流程。
144.本步骤的详细描述可参阅上述步骤s1210,在此不进行重复赘述。
145.步骤s1320,以第五子转移流程的相反流转方向,流转至目标导航状态。
146.第五子转移流程的相反流转方向为以目标导航状态流转至第六导航状态的相反流转方向。
147.为了复用现有的导航状态转移流程,导航服务器需在接收到第二导航语音时,将状态机所处的第六导航状态反向流转至目标导航状态。
148.步骤s1330,从目标导航状态流转至根状态,以在根状态下从状态机的导航状态中确定与第二导航意图相匹配的目标导航状态,并根据与第二导航意图相匹配的目标导航状态确定第三导航状态转移流程。
149.根状态为状态机中的最初状态。
150.考虑到基于第二导航意图所确定的目标导航状态可能存在与第一导航状态转移流程中的目标导航状态不相一致。此时,导航服务器需从状态机的导航状态中确定与第二导航意图相匹配的目标导航状态,并将目标导航状态反向流转至根状态,以从根状态流转经过与第二导航意图相匹配的目标导航状态至第二最终导航状态,也即第三导航状态流转流程的最末端的导航状态。
151.可以看出,本实施例的导航服务器在接收到第二导航语音时,若现有的第一导航状态转移流程无法复用时,则通过以第五自流转流程的相反流转方向,流转至根状态,以根状态作为起始状态流转经过第二导航意图对应的目标导航状态直至第二最终导航状态。实现了导航状态的扩展,进而提高了语音导航信息的获取效率。
152.图14是本技术的一示例性实施例示出的语音导航装置的框图。该装置可以应用于图3所示的实施环境。该装置也可以适用于其它的示例性实施环境,并具体配置在其它设备中,本实施例不对该装置所适用的实施环境进行限制。
153.如图14所示,该示例性的语音导航装置应用于语音导航系统,该语音导航系统包括状态机,状态机包括多个导航状态以及不同导航状态之间的转移关系,语音导航装置1400包括:
154.语音意图识别模块1410,配置为识别输入的第一导航语音对应的第一导航意图。
155.第一确定模块1420,配置为从状态机的导航状态中确定与第一导航意图相匹配的目标导航状态。
156.第一执行模块1430,配置为执行以目标导航状态作为起始状态的第一导航状态转移流程,以获得与第一导航意图对应的语音导航信息。
157.在该示例性的语音导航装置中,通过在状态机的导航状态中确定与第一导航意图相匹配的目标导航状态,从而确定以目标导航状态作为起始状态的第一导航状态转移流程,进而执行第一导航状态转移流程,以获取与第一导航意图对应的语音导航信息,避免了
直接利用第一导航意图确定其对应的语音导航信息所带来的繁琐逻辑,结合状态机对导航语音的导航意图进行导航处理,即将繁琐逻辑封装成一导航状态转移流程,使导航处理过程层次清晰,提高了语音导航的导航效率。
158.在上述示例性的实施例基础上,语音导航装置1400还包括:
159.导航状态选取模块,配置为在执行第一导航状态转移流程的过程中,若检测到转移失败的转移关系,则从状态机的导航状态中选取第一导航状态。
160.第二确定模块,配置为确定第二导航状态转移流程,第二导航状态转移流程以目标导航状态作为起始状态,且包含第一导航状态。
161.第二执行模块,配置为执行第二导航状态转移流程,以获得与第一导航意图对应的语音导航信息。
162.在另一示例性的实施例中,第二确定模块包括:
163.第一子确定模块,配置为确定检测到转移失败的转移关系时状态机所处的第二导航状态,并从第一导航状态转移流程中确定第一子转移流程,第一子转移流程是从目标导航状态流转至第二导航状态对应的导航状态转移流程。
164.第二子确定模块,配置为确定从第一导航状态流转至第一最终导航状态的第二子转移流程,第一最终导航状态为第二导航状态转移流程中位于最末端的导航状态。
165.第三子确定模块,配置为由第一子转移流程和第二子转移流程形成第二导航状态转移流程。
166.在另一示例性的实施例中,第二确定模块还包括:
167.第四子确定模块,配置为确定检测到转移失败的转移关系时状态机所处的第二导航状态,并从第一导航状态转移流程中确定第一子转移流程。
168.第五子确定模块,配置为从第一导航状态转移流程中确定转移关系位于第二导航状态之后的第三导航状态,并确定从第一导航状态流转至第三导航状态所对应的第三子转移流程。
169.第六子确定模块,配置为将第一导航状态转移流程中从第三导航状态流转至第一最终导航状态所对应的导航状态转移流程作为第四子转移流程,由第一子转移流程、第三子转移流程和第四子转移流程形成第二导航状态转移流程。
170.在另一示例性的实施例中,第五子确定模块还包括:
171.语音交互模块,配置为从状态机的导航状态中确定第四导航状态,第四导航状态用于实现用户语音交互。
172.第三子转移流程构建模块,配置为构建依次在第一导航状态、第四导航状态以及第三导航状态之间流转的导航状态转移流程以作为第三子转移流程。
173.在上述示例性的实施例基础上,语音导航装置1400还包括:
174.导航状态确定模块,配置为在执行目标导航状态对应的导航状态转移流程的过程中,若接收到第二导航语音,则确定与第二导航语音对应的第二导航意图匹配的第五导航状态。
175.第三确定模块,配置为根据第五导航状态确定第三导航状态转移流程。
176.第三执行模块,配置为执行第三导航状态转移流程,以获得与第二导航意图对应的语音导航信息。
177.在另一示例性的实施例中,第三确定模块包括:
178.第七子确定模块,配置为确定接收到第二导航语音时状态机所处的第六导航状态,并从第一导航状态转移流程中确定第五子转移流程,第五子转移流程是从目标导航状态流转至第六导航状态对应的导航状态转移流程。
179.第八子确定模块,配置为确定从第五导航状态流转至第二最终导航状态的第六子转移流程。
180.第九子确定模块,配置为由第五子转移流程和第六子转移流程形成第三导航状态转移流程。
181.在另一示例性的实施例中,第三执行模块包括:
182.导航状态第一流转模块,配置为以第五子转移流程的相反流转方向流转至目标导航状态。
183.子执行模块,配置为从目标导航状态开始执行第三导航状态转移流程。
184.在另一示例性的实施例中,第三确定模块包括:
185.第十子确定模块,配置为确定接收到第二导航语音时状态机所处的第六导航状态,并确定从目标导航状态流转至第六导航状态的第五子转移流程。
186.导航状态第二流转模块,配置为以第五子转移流程的相反流转方向,流转至目标导航状态。
187.第十一子确定模块,配置为从目标导航状态流转至根状态,以在根状态下从状态机的导航状态中确定与第二导航意图相匹配的目标导航状态,并根据与第二导航意图相匹配的目标导航状态确定第三导航状态转移流程。
188.需要说明的是,上述实施例所提供的语音导航装置与上述实施例所提供的语音导航方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的语音导航装置在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
189.本技术的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现上述各个实施例中提供的语音导航方法。
190.图15示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。需要说明的是,图15示出的电子设备的计算机系统1500仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
191.如图15所示,计算机系统1500包括中央处理单元(central processing unit,cpu)1501,其可以根据存储在只读存储器(read-only memory,rom)1502中的程序或者从储存部分1508加载到随机访问存储器(random access memory,ram)1503中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在ram 1503中,还存储有系统操作所需的各种程序和数据。cpu 1501、rom 1502以及ram 1503通过总线1504彼此相连。输入/输出(input/output,i/o)接口1505也连接至总线1504。
192.以下部件连接至i/o接口1505:包括键盘、鼠标等的输入部分1506;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声
器等的输出部分1507;包括硬盘等的储存部分1508;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分1509。通信部分1509经由诸如因特网的网络执行通信处理。驱动器1510也根据需要连接至i/o接口1505。可拆卸介质1511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1510上,以便于从其上读出的计算机程序根据需要被安装入储存部分1508。
193.特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1509从网络上被下载和安装,和/或从可拆卸介质1511被安装。在该计算机程序被中央处理单元(cpu)1501执行时,执行本技术的系统中限定的各种功能。
194.需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
195.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
196.描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
197.本技术的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前所述的语音导航方法。该计算机可读存储介质可以
是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
198.本技术的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的语音导航方法。
199.上述内容,仅为本技术的较佳示例性实施例,并非用于限制本技术的实施方案,本领域普通技术人员根据本技术的主要构思和精神,可以十分方便地进行相应的变通或修改,故本技术的保护范围应以权利要求书所要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1