技术领域
[0001] 本
发明属于语音管理技术领域,涉及一种管理方法和系统,特别是涉及一种语音冲突管理方法、系统、计算机可读存储介质及设备。
背景技术
[0002] 目前常用的双系统智能
电子系统在其上的
操作系统发生切换时,为了节省物理资源,系统会将正在运行的应用暂停或者退出,这里将操作系统简称为系统。
[0003] 现有方案的
缺陷是:在双系统都接收到用户输入的语音信息时,双系统都会处理语音信息,那么这样就会造成语音冲突,无法正确识别用户的语音信息,更无法正确执行用户的命令。
[0004] 因此,如何提供一种语音冲突管理方法、系统、计算机可读存储介质及设备,以解决
现有技术在存在双系统时,无法有效处理语音冲突,以导致无法正确执行用户的命令等缺陷,实已成为本领域技术人员亟待解决的技术问题。
发明内容
[0005] 鉴于以上所述现有技术的缺点,本发明的目的在于提供一种语音冲突管理方法、系统、计算机可读存储介质及设备,用于解决现有技术在存在双系统时,无法有效处理语音冲突,以导致无法正确执行用户的命令的问题。
[0006] 为实现上述目的及其他相关目的,本发明一方面提供一种语音冲突管理方法,应用于具有双操作系统的设备,所述语音冲突管理方法包括:令双操作系统中的第一操作系统收录的语音信息,并将该语音信息提供给双操作系统中的第二操作系统;发送所述语音信息,并接收所述第一操作系统对所述语音信息的第一识别结果和所述第二操作系统对所述语音信息的第二识别结果;根据所述第一识别结果和第二识别结果,对若干已制定的管理策略进行仲裁,以便所述第一操作系统或所述第二操作系统根据仲裁的管理策略进行相应的响应处理。
[0007] 于本发明的一
实施例中,所述第一操作系统将所述语音信息通过
进程间通信方式提供给所述第二操作系统。
[0008] 于本发明的一实施例中,所述语音信息的第一识别结果包括与所述第一操作系统对应的服务端从所述语音信息识别出的场景、与所述第一操作系统对应的服务端的反馈时间、与场景相应的域名、场景的
置信度和/或若触发多轮场景,每一场景对应的标识符;所述语音信息的第二识别结果包括与所述第二操作系统对应的服务端从所述语音信息识别出的场景、与所述第二操作系统对应的服务端的反馈时间、与场景相应的域名、场景的置信度和/或若触发多轮场景,每一场景对应的标识符。
[0009] 于本发明的一实施例中,已制定的管理策略中第一管理策略为将与所述第一操作系统对应的服务端的反馈时间和与所述第二操作系统对应的服务端的反馈时间与预设响应时间进行比较;若与所述第一操作系统对应的服务端的反馈时间未超出所述预设响应时间,与所述第二操作系统对应的服务端的反馈时间超出所述预设响应,则忽略所述第二识别结果,使用所述第一识别结果;若与所述第一操作系统对应的服务端的反馈时间超出所述预设响应时间,与所述第二操作系统对应的服务端的反馈时间未超出所述预设响应,则忽略所述第一识别结果,使用所述第二识别结果。
[0010] 于本发明的一实施例中,已制定的管理策略中第二管理策略为根据与场景相应的域名进行场景划分,并优先使用预先确定的第一识别结果或第二识别结果。
[0011] 于本发明的一实施例中,已制定的管理策略中第三管理策略为若第一识别结果和第二识别结果中与场景相应的域名相同,将第一识别结果中的场景的置信度与第二识别结果中场景的置信度进行比较,若第一识别结果中的场景的置信度大于第二识别结果中场景的置信度,优先使用第一识别结果;若第一识别结果中的场景的置信度小于第二识别结果中场景的置信度,优先使用第二识别结果。
[0012] 于本发明的一实施例中,已制定的管理策略中第四管理策略为若第一识别结果中与场景相应的域名和第二识别结果中与场景相应的域名不一致,且第一识别结果中场景的置信度超过预定置信度
阈值,则优先使用第一识别结果;若第一识别结果中与场景相应的域名和第二识别结果中与场景相应的域名不一致,且第二识别结果中场景的置信度超过预定置信度阈值,则优先使用第二识别结果;若第一识别结果中场景的置信度和第二识别结果中场景的置信度均低于所述预定置信度阈值,则优先使用预先确定的第一识别结果或第二识别结果。
[0013] 于本发明的一实施例中,已制定的管理策略中第五管理策略为若触发多轮场景,则从已存储的若干场景对应的识别结果中,优先选择多轮场景中第一场景对应的识别结果。
[0014] 本发明另一方面提供一种语音冲突管理系统,应用于具有双操作系统的设备,所述语音冲突管理系统包括:控
制模块,用于令双操作系统中的第一操作系统收录的语音信息,并将该语音信息提供给双操作系统中的第二操作系统;通信模块,用于发送所述语音信息,并接收所述第一操作系统对所述语音信息的第一识别结果和所述第二操作系统对所述语音信息的第二识别结果;仲裁模块,用于根据所述第一识别结果和第二识别结果,对若干已制定的管理策略进行仲裁,以便所述第一操作系统或所述第二操作系统根据仲裁的管理策略进行相应的响应处理。
[0015] 本发明又一方面提供一种计算机可读存储介质,其上存储有
计算机程序,该程序被处理器执行时实现所述语音冲突管理方法。
[0016] 本发明另一方面提供一种设备,包括:处理器及
存储器;所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述设备执行所述语音冲突管理方法。
[0017] 如上所述,本发明的语音冲突管理方法、系统、计算机可读存储介质及设备,具有以下有益效果:
[0018] 本发明所提供的语音冲突管理方法、系统、计算机可读存储介质及设备可以有效处理双系统上出现的语音冲突现象,正确执行用户的语音命令。
附图说明
[0019] 图1显示为本发明的语音冲突管理方法于一实施例中的流程示意图。
[0020] 图2显示为本发明的语音冲突管理系统于一实施例中的原理结构示意图。
[0021] 元件标号说明
[0022] 2 语音冲突管理系统
[0024] 22 通信模块
[0025] 23 仲裁模块
[0026] S11~S13 步骤
具体实施方式
[0027] 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本
说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0028] 需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0029] 实施例一
[0030] 本实施例提供一种语音冲突管理方法,应用于具有双操作系统的设备,所述语音冲突管理方法包括:
[0031] 令双操作系统中的第一操作系统收录的语音信息,并将该语音信息提供给双操作系统中的第二操作系统;
[0032] 发送所述语音信息,并接收所述第一操作系统对所述语音信息的第一识别结果和所述第二操作系统对所述语音信息的第二识别结果;
[0033] 根据所述第一识别结果和第二识别结果,对若干已制定的管理策略进行仲裁,以便所述第一操作系统或所述第二操作系统根据仲裁的管理策略进行相应的响应处理。
[0034] 以下将结合图示对本实施例所提供的语音冲突管理方法进行详细描述。本实施例应用于具有双操作系统的设备,例如,第一操作系统为Linux系统,第二操作系统为Android系统。
[0035] 请参阅图1,显示为语音冲突管理方法于一实施例中的流程示意图。如图1所示,所述语音冲突管理方法具体包括以下几个步骤:
[0036] S11,令双操作系统中的第一操作系统收录的语音信息,并将该语音信息提供给双操作系统中的第二操作系统。
[0037] 例如,令Linux系统收录语音信息,并所述语音信息通过
进程间通信方式(IPC方式)提供给Android系统。
[0038] 所述语音信息为双Mic收录的录音及参考音(2channel/16bit/16KHZ/PCM)。
[0039] S12,发送所述语音信息,并接收所述第一操作系统对所述语音信息的第一识别结果和所述第二操作系统对所述语音信息的第二识别结果。
[0040] 在本实施例中,将所述语音信息分别发送至与所述第一操作系统对应的服务端和与所述第二操作系统对应的服务端。
[0041] 在本实施例中,所述语音信息的第一识别结果包括与所述第一操作系统对应的服务端从所述语音信息识别出的场景、与所述第一操作系统对应的服务端的反馈时间、与场景相应的域名、场景的置信度和/或若触发多轮场景,每一场景对应的标识符。
[0042] 例如,Linux端的语音信息的第一识别结果,包括相应的domain及置信度及是否触发多轮场景,每一场景对应的ID序号。
[0043] 所述语音信息的第二识别结果包括与所述第二操作系统对应的服务端从所述语音信息识别出的场景、与所述第二操作系统对应的服务端的反馈时间、与场景相应的域名、场景的置信度和/或若触发多轮场景,每一场景对应的标识符。
[0044] 例如,Android端的语音信息的第二识别结果包括相应的domain及置信度及是否触发多轮场景,每一场景对应的ID序号。
[0045] S13,根据所述第一识别结果和第二识别结果,对若干已制定的管理策略进行仲裁,以便所述第一操作系统或所述第二操作系统根据仲裁的管理策略进行相应的响应处理。
[0046] 在本实施例中,已制定的管理策略中第一管理策略为将与所述第一操作系统对应的服务端的反馈时间和与所述第二操作系统对应的服务端的反馈时间与预设响应时间进行比较;
[0047] 若与所述第一操作系统对应的服务端的反馈时间未超出所述预设响应时间,与所述第二操作系统对应的服务端的反馈时间超出所述预设响应,则忽略所述第二识别结果,使用所述第一识别结果;
[0048] 若与所述第一操作系统对应的服务端的反馈时间超出所述预设响应时间,与所述第二操作系统对应的服务端的反馈时间未超出所述预设响应,则忽略所述第一识别结果,使用所述第二识别结果。
[0049] 例如,Linux端的反馈时间超出预设响应时间,Android端反馈时间未超出预设响应时间,则忽略Linux端的识别结果,直接使用Android端的识别结果。
[0050] 已制定的管理策略中第二管理策略为根据与场景相应的域名(domain)进行场景划分,并优先使用预先确定的第一识别结果或第二识别结果。
[0051] 例如,从语音信息中识别的场景为美食、酒店、航旅等相关的domain时,则优先使用Android端的识别结果。
[0052] 已制定的管理策略中第三管理策略为若第一识别结果和第二识别结果中与场景相应的域名相同,将第一识别结果中的场景的置信度与第二识别结果中场景的置信度进行比较,若第一识别结果中的场景的置信度大于第二识别结果中场景的置信度,优先使用第一识别结果;若第一识别结果中的场景的置信度小于第二识别结果中场景的置信度,优先使用第二识别结果。
[0053] 例如,Linux端的识别结果中场景的置信度高于Android端的识别结果中场景的置信度,那么则优先使用Linux端的识别结果;Linux端的识别结果中场景的置信度低于Android端的识别结果中场景的置信度,那么则优选使用Android端的识别结果。
[0054] 已制定的管理策略中第四管理策略为若第一识别结果中与场景相应的域名和第二识别结果中与场景相应的域名不一致,且第一识别结果中场景的置信度超过预定置信度阈值,则优先使用第一识别结果;若第一识别结果中与场景相应的域名和第二识别结果中与场景相应的域名不一致,且第二识别结果中场景的置信度超过预定置信度阈值,则优先使用第二识别结果;若第一识别结果中场景的置信度和第二识别结果中场景的置信度均低于所述预定置信度阈值,则优先使用预先确定的第一识别结果或第二识别结果。
[0055] 例如,Linux端的识别结果中与场景相应的域名与Android端的识别结果中与场景相应的域名不一致,则优先使用其中置信度超过预定置信度阈值(如80%)对应的Linux端或Android端对应的识别结果。Linux端的识别结果和Android端的识别结果中的置信度都低于预定置信度阈值(如80%),则优选使用预先确定的Linux端的识别结果。
[0056] 已制定的管理策略中第五管理策略为若触发多轮场景,则从已存储的若干场景对应的识别结果中,优先选择多轮场景中第一场景对应的识别结果,以确保多轮场景是由某端完整处理。
[0057] 本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述语音冲突管理方法。本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的
硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0058] 本实施例所提供的语音冲突管理方法可以有效处理双系统上出现的语音冲突现象,正确执行用户的语音命令。
[0059] 实施例二
[0060] 本实施例提供一种语音冲突管理系统,需要说明的是,应理解以
下管理系统的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以
软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,x模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上x模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成
电路,具有
信号的处理能
力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成
逻辑电路或者软件形式的指令完成。
[0061] 例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC),或,一个或多个
微处理器(digitalsingnalprocessor,简称DSP),或,一个或者多个现场可编程
门阵列(FieldProgrammableGateArray,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如
中央处理器(CentralProcessingUnit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
[0062] 请参阅图2,显示为语音冲突管理系统于一实施例中的原理结构示意图。如图2所示,语音冲突管理系统2包括控制模块21、通信模块22及仲裁模块23。
[0063] 所述控制模块21用于令双操作系统中的第一操作系统收录的语音信息,并将该语音信息提供给双操作系统中的第二操作系统。其中,所述控制模块21控制所述第一操作系统将所述语音信息通过进程间通信方式提供给所述第二操作系统。
[0064] 与所述控制模块21耦合的通信模块22用于发送所述语音信息,并接收所述第一操作系统对所述语音信息的第一识别结果和所述第二操作系统对所述语音信息的第二识别结果。在本实施例中,所述通信模块22将所述语音信息分别发送至与所述第一操作系统对应的服务端和与所述第二操作系统对应的服务端。与所述第一操作系统对应的服务端和与所述第二操作系统对应的服务端会从所述语音信息中识别场景,并反馈第一识别结果和第二识别结果。
[0065] 在本实施例中,所述语音信息的第一识别结果包括与所述第一操作系统对应的服务端从所述语音信息识别出的场景、与所述第一操作系统对应的服务端的反馈时间、与场景相应的域名、场景的置信度和/或若触发多轮场景,每一场景对应的标识符。
[0066] 所述语音信息的第二识别结果包括与所述第二操作系统对应的服务端从所述语音信息识别出的场景、与所述第二操作系统对应的服务端的反馈时间、与场景相应的域名、场景的置信度和/或若触发多轮场景,每一场景对应的标识符。
[0067] 与所述通信模块22耦合的仲裁模块23用于根据所述第一识别结果和第二识别结果,对若干已制定的管理策略进行仲裁,以便所述第一操作系统或所述第二操作系统根据仲裁的管理策略进行相应的响应处理。
[0068] 在本实施例中,已制定的管理策略中第一管理策略为将与所述第一操作系统对应的服务端的反馈时间和与所述第二操作系统对应的服务端的反馈时间与预设响应时间进行比较;
[0069] 若与所述第一操作系统对应的服务端的反馈时间未超出所述预设响应时间,与所述第二操作系统对应的服务端的反馈时间超出所述预设响应,则忽略所述第二识别结果,使用所述第一识别结果;
[0070] 若与所述第一操作系统对应的服务端的反馈时间超出所述预设响应时间,与所述第二操作系统对应的服务端的反馈时间未超出所述预设响应,则忽略所述第一识别结果,使用所述第二识别结果。
[0071] 已制定的管理策略中第二管理策略为根据与场景相应的域名(domain)进行场景划分,并优先使用预先确定的第一识别结果或第二识别结果。
[0072] 已制定的管理策略中第三管理策略为若第一识别结果和第二识别结果中与场景相应的域名相同,将第一识别结果中的场景的置信度与第二识别结果中场景的置信度进行比较,若第一识别结果中的场景的置信度大于第二识别结果中场景的置信度,优先使用第一识别结果;若第一识别结果中的场景的置信度小于第二识别结果中场景的置信度,优先使用第二识别结果。
[0073] 已制定的管理策略中第四管理策略为若第一识别结果中与场景相应的域名和第二识别结果中与场景相应的域名不一致,且第一识别结果中场景的置信度超过预定置信度阈值,则优先使用第一识别结果;若第一识别结果中与场景相应的域名和第二识别结果中与场景相应的域名不一致,且第二识别结果中场景的置信度超过预定置信度阈值,则优先使用第二识别结果;若第一识别结果中场景的置信度和第二识别结果中场景的置信度均低于所述预定置信度阈值,则优先使用预先确定的第一识别结果或第二识别结果。
[0074] 已制定的管理策略中第五管理策略为若触发多轮场景,则从已存储的若干场景对应的识别结果中,优先选择多轮场景中第一场景对应的识别结果,以确保多轮场景是由某端完整处理。
[0075] 实施例三
[0076] 本
申请实施例提供的再一种设备,包括:处理器、存储器、收发器、通信
接口和
系统总线;存储器和
通信接口通过系统总线与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于和其他设备进行通信,处理器和收发器用于运行计算机程序,使设备执行如上语音冲突管理方法的各个步骤。
[0077] 上述提到的系统总线可以是外设部件互连标准(PeripheralPomponentInterconnect,简称PCI)总线或扩展工业标准结构(ExtendedIndustryStandardArchitecture,简称EISA)总线等。该系统总线可以分为
地址总线、
数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于实现
数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含
随机存取存储器(RandomAccessMemory,简称RAM),也可能还包括
非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
[0078] 上述的处理器可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是
数字信号处理器(DigitalSignalProcessing,简称DSP)、
专用集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC)、
现场可编程门阵列(Field-ProgrammableGateArray,简称FPGA)或者其他
可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0079] 综上所述,本发明所提供的语音冲突管理方法、系统、计算机可读存储介质及设备可以有效处理双系统上出现的语音冲突现象,正确执行用户的语音命令。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
[0080] 上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的
权利要求所涵盖。