1.本技术涉及自然语言处理技术领域,特别涉及一种语音处理方法、装置、计算机设备及存储介质。
背景技术:2.声学模型是语音识别系统中最为重要的部分之一。整句声学模型是声学模型中的一种,用于将一整段的语音一起计算。然而,由于一整段语音中各个语音的长度不一,在计算时需要对较短的语音进行补齐,从而导致存在大量冗余计算的问题。
技术实现要素:3.本技术实施例提供了一种语音处理方法、装置、计算机设备及存储介质,通过两个队列来存储语音长度不同的语音数据,使得在对语音数据进行前向计算时,不需要在语音长度较短的语音数据中填充大量的空白数据进行补齐,从而有效的减少了冗余计算。所述技术方案如下:
4.一方面,提供了一种语音处理方法,所述方法包括:
5.获取至少两个语音处理请求,所述至少两个语音处理请求携带至少两条语音数据;
6.基于第一队列和第二队列,对所述至少两条语音数据进行批量处理算法的前向计算,得到至少两个计算结果,所述第一队列用于存储语音长度满足目标条件的语音数据,所述第二队列用于存储语音长度不满足所述目标条件的语音数据;
7.将所述至少两个计算结果分别反馈至所述至少两个语音处理请求对应的线程。
8.另一方面,提供了一种语音处理装置,所述装置包括:
9.请求获取模块,用于获取至少两个语音处理请求,所述至少两个语音处理请求携带至少两条语音数据;
10.数据计算模块,用于基于第一队列和第二队列,对所述至少两条语音数据进行批量处理算法的前向计算,得到至少两个计算结果,所述第一队列用于存储语音长度满足目标条件的语音数据,所述第二队列用于存储语音长度不满足所述目标条件的语音数据;
11.结果反馈模块,用于将所述至少两个计算结果分别反馈至所述至少两个语音处理请求对应的线程。
12.在一种可选的实现方式中,所述数据计算模块,包括:
13.数据添加单元,用于将所述至少两条语音数据,分别添加至所述第一队列或所述第二队列;
14.循环计算单元,用于循环对所述第一队列和所述第二队列中的语音数据,进行所述批量处理算法的前向计算。
15.在一种可选的实现方式中,所述数据添加单元,用于对于所述至少两条语音数据中的任一语音数据,响应于所述语音数据的语音长度满足所述目标条件,将所述语音数据
添加至所述第一队列;响应于所述语音数据的语音长度不满足所述目标条件,将所述语音数据添加至所述第二队列。
16.在一种可选的实现方式中,所述数据计算模块,还包括:第一补齐单元,用于响应于所述第一队列中存储有不少于两条的语音数据,将所述第一队列中存储的语音数据补齐为第一目标长度,所述第一目标长度与所述第一队列中语音长度最长的语音数据的语音长度相等。
17.在一种可选的实现方式中,所述数据计算模块,还包括:第二补齐单元,用于响应于所述第二队列中存储有不少于两条的语音数据,将所述第二队列中存储的语音数据补齐为第二目标长度,所述第二目标长度与所述第二队列中语音长度最长的语音数据的语音长度相等。
18.在一种可选的实现方式中,所述请求获取模块,还用于获取至少两个新的语音处理请求,至少两个新的语音处理请求携带至少两条新的语音数据;
19.所述数据计算模块,还用于响应于所述第一队列中的语音数据还未开始处理,将所述至少两条新的语音数据中满足所述目标条件的语音数据添加至所述第一队列;
20.所述数据计算模块,还用于响应于所述第二队列中的语音数据还未开始处理,将所述至少两条新的语音数据中不满足所述目标条件的语音数据添加至所述第二队列。
21.在一种可选的实现方式中,所述请求获取模块,用于获取目标时长内接收到的所述至少两个语音处理请求。
22.另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一段计算机程序,所述至少一段计算机程序由所述处理器加载并执行以实现本技术实施例中的语音处理方法中所执行的操作。
23.另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一段计算机程序,所述至少一段计算机程序由处理器加载并执行以实现如本技术实施例中语音处理方法中所执行的操作。
24.再一方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序代码,所述计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行所述计算机程序代码,使得所述计算机设备实现如上述方面所述的语音处理方法中所执行的操作。
25.本技术实施例提供的技术方案带来的有益效果是:
26.在本技术实施例中,通过两个队列来存储语音长度不同的语音数据,使得在上述两个队列对语音数据进行批量处理算法的前向计算时,避免了批量处理过程中,在语音长度较短的语音数据中填充大量的空白数据进行补齐的问题,从而有效的减少了冗余计算,提高了计算效率。
附图说明
27.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
28.图1是根据本技术实施例提供的一种语音处理方法的实施环境示意图;
29.图2是根据本技术实施例提供的一种语音处理方法的流程图;
30.图3根据本技术实施例提供的另一种语音处理方法的流程图;
31.图4是根据本技术实施例提供的一种数据补齐的示意图;
32.图5是根据本技术实施例提供的一种语音处理方法的流程示意图;
33.图6是根据本技术实施例提供的一种语音处理装置的框图;
34.图7是根据本技术实施例提供的另一种语音处理装置的框图;
35.图8是根据本技术实施例提供的一种终端的结构框图;
36.图9是根据本技术实施例提供的一种服务器的结构示意图。
具体实施方式
37.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
38.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
39.以下对本技术实施例所涉及的一些技术进行解释。
40.区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。例如,在本技术实施例中获取的搜索行为信息为存储在区块链中的数据。
41.大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。随着云时代的来临,大数据也吸引了越来越多的关注,大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理数据库、数据挖掘、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。例如,本技术实施例基于大数据技术,在经过用户授权的前提先,获取用户的搜索行为信息。
42.自然语言处理(nature language processing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
43.机器学习(machine learning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学
习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
44.声学模型,语音识别系统中最为重要的部分之一,功能为将特征转化为输出概率,用于表征状态、音节等。声学模型包括流式声学模型和整句声学模型。流式声学模型,即将语音分成固定大小的数据块进行计算,常应用于在线字幕系统,智能音箱等对实时性有要求的场景。整句声学模型,即将一整段的语音一起计算,语音数据长度不一,场景为微信语音消息的语音转文字功能等对实时性不敏感的场景。
45.调度算法,是指深度学习模型,如上述声学模型,进行前向推理的算法过程,包括单线程顺序调度,多线程线性调度以及批量调度等算法。
46.批量调度算法,也即批量处理算法,用于对多条语音数据进行组合,然后由多线程完成神经网络的前向计算。例如,将一段时间内获取的多条语音数据进行组合并存入队列中,如果各语音数据的大小不一致,则对较短的语音数据补空白数据进行对齐,然后调用并行计算技术对上述队列中的语音数据进行前向计算,计算完后将计算结果分发给语音数据对应的线程。
47.前向计算,是指根据给定的输入,计算输出的过程。
48.本技术实施例提供的语音处理方法,能够由计算机设备执行。可选地,该计算机设备为终端或服务器。下面首先以计算机设备为服务器为例,介绍一下本技术实施例提供的语音处理方法的实施环境,图1是根据本技术实施例提供的一种语音处理方法的实施环境示意图。参见图1,该实施环境包括终端101和服务器102。
49.终端101和服务器102能够通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
50.可选地,本技术实施例中的终端101或者服务器102为区块链系统上的节点,在该区块链系统中的每个节点存储有区块链,且不同节点上的区块链存储的数据保持同步。
51.可选地,服务器102是独立的物理服务器,也能够是多个物理服务器构成的服务器集群或者分布式系统,还能够是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
52.在该实施环境中,服务器通过该语音处理方法,能够对语音处理请求携带的语音数据进行处理。
53.例如,本技术实施例提供的语音处理方法,应用于服务器上的声学模型中,该服务器获取终端发送的至少两个语音处理请求,然后基于两个队列,对该至少两个语音处理请求中携带的至少两条语音数据进行前向计算,然后将得到的至少两个计算结果,反馈给上述至少两个语音请求对应的线程,由上述线程反馈给终端。
54.在另一种实现方式中,以计算机设备为终端为例。可选地,终端101是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。本领域技术人员可以知晓,终端101的数量可以更多或更少。比如上述终端可以仅为一个,或者上述终端为几十个或几百个,或者更多数量。本技术实施例对终端的数量和设备类型不加以限定。
55.例如,本技术实施例提供的语音处理方法,应用于终端上的声学模型中,该终端获
取即时通信类应用程序发送的至少两个语音处理请求,然后基于两个队列,对该至少两个语音处理请求中携带的至少两条语音数据进行前向计算,然后将得到的至少两个计算结果,反馈给上述至少两个语音请求对应的线程,从而实现对即时通讯过程中的语音进行识别。
56.图2是根据本技术实施例提供的一种语音处理方法的流程图,如图2所示,在本技术实施例中以计算机设备为终端为例进行说明。该语音处理方法包括以下步骤:
57.201、终端获取至少两个语音处理请求,该至少两个语音处理请求携带至少两条语音数据。
58.在本技术实施例中,该语音处理请求可以为终端上的语音类应用程序发送的请求,该语音类应用程序为即时通信程序、实时翻译程序或者影音播放程序等。
59.202、终端基于第一队列和第二队列,对该至少两条语音数据进行批量处理算法的前向计算,得到至少两个计算结果,该第一队列用于存储语音长度满足目标条件的语音数据,该第二队列用于存储语音长度不满足该目标条件的语音数据。
60.在本技术实施例中,终端可以基于目标条件,将获取到的至少两条语音数据分别存储至第一队列或者第二队列,然后再进行批量处理算法的前向计算。批量处理算法用于批量处理语音数据,在对语音数据进行处理时,批量处理算法将不同长度的语音数据补齐为相同的长度。其中,该目标条件可以为语音长度长于预设语音长度,或者语音长度长于该至少两条语音数据的语音长度的均值,或者语音长度长于该至少两条语音数据中半数以上的语音数据的语音长度等,本技术实施例对此不进行限制。
61.203、终端将该至少两个计算结果分别反馈至该至少两个语音处理请求对应的线程。
62.在本技术实施例中,终端在得到前向计算的计算结果之后,将该计算结果分发至各语音处理请求对应的线程,然后由各线程基于接收到的计算结果继续进行处理,从而得到各语音数据对应的识别结果。
63.在本技术实施例中,通过两个队列来存储语音长度不同的语音数据,使得在上述两个队列对语音数据进行批量处理算法的前向计算时,避免了批量处理过程中,在语音长度较短的语音数据中填充大量的空白数据进行补齐的问题,从而有效的减少了冗余计算,提高了计算效率
64.图3根据本技术实施例提供的另一种语音处理方法的流程图,如图3所示,在本技术实施例中以计算机设备为终端为例进行说明。该语音处理方法包括以下步骤:
65.301、终端获取至少两个语音处理请求,该至少两个语音处理请求携带至少两条语音数据。
66.在本技术实施例中,该终端安装有语音类应用程序,该语音类应用程序为即时通信程序、实时翻译程序或者影音播放程序等,用于对采集到的语音进行识别,得到对应的文字,本技术实施例对该语音类应用程序不进行限制。该语音处理请求中携带有待处理的语音数据。
67.例如,该语音数据为终端上安装的即时通信程序采集到的聊天语音。或者,该语音数据为终端上安装的实时翻译程序采集到的待翻译语音。或者,该语音数据为终端上安装的影音播放程序中的正在播放的视频的音频。
68.在一种可选的实现方式中,终端能够每隔目标时长获取一次语音处理请求,也即终端获取在该目标时长内接收到的至少两个语音处理请求。该至少两个语音处理请求可以来自同一个线程,也可以来自不同的线程,本技术实施例对此不进行限制。其中,目标时长为10毫秒、20毫秒或者30毫秒等,终端上设置几十个socket(套接字)监听线程来监听语音处理请求,其中,socket是应用层与tcp/ip协议族通信的中间软件抽象层,是一组接口。
69.例如,目标时长为20毫秒,终端上设置48个socket监听线程,终端获取基于各socket监听线程接收到的语音处理请求,终端收集该20毫秒内该48个socket监听线程获取到的5个语音处理请求,该5个语音处理请求携带5个语音长度不同的语音数据。
70.302、终端将该至少两条语音数据,分别添加至第一队列或第二队列,该第一队列用于存储语音长度满足目标条件的语音数据,该第二队列用于存储语音长度不满足目标条件的语音数据。
71.在本技术实施例中,终端设置有两个队列,分别用于存储满足目标条件和不满足目标条件的语音数据,也即终端基于目标条件将获取到的语音数据划分为两类:一类满足目标条件,存储在第一队列;一类不满足目标条件,存储在第二队列。其中,该目标条件可以为语音长度长于预设语音长度,或者语音长度长于该至少两条语音数据的语音长度的均值,或者语音长度长于该至少两条语音数据中半数以上的语音数据的语音长度等,本技术实施例对此不进行限制。需要说明的是,批量处理算法在处理语音数据时,会通过空白数据对语音数据进行补齐。
72.在一种可选的实现方式中,对于上述至少两条语音数据中的任一语音数据,响应于该语音数据的语音长度满足目标条件,终端将该语音数据添加至第一队列;响应于该语音数据的语音长度不满足目标条件,将该语音数据添加至第二队列。通过基于目标条件确定语音数据存储的队列,使得相同队列中语音数据的语音长度差距不大。
73.例如,该目标条件为语音长度长于预设语音长度,预设语音长度为20秒。则对于语音长度长于20秒的语音数据,终端将其存储在第一队列,对于语音长度不长于20秒的语音数据,终端将其存储在第二队列。
74.又如,该目标条件为语音长度长于该至少两条语音数据的语音长度的均值,则终端获取该至少两条语音数据的语音长度的均值,然后依次将各语音数据的语音长度与该均值进行比较,将语音长度大于该均值的语音数据存储在第一队列,将语音长度不大于该均值的语音数据存储在第二队列。
75.再如,该目标条件为语音长度长于该至少两条语音数据中半数以上的语音数据的语音长度,则终端按照语音长度对该至少两条语音数据进行排序,然后将排序在前的一半语音数据存储在第一队列,将排序在后的另一半语音数据存储在第二队列。
76.在一种可选的实现方式中,终端属于同一队列的语音数据补齐为相同的长度。相应的,响应于第一队列中存储有不少于两条的语音数据,终端将第一队列中存储的语音数据补齐为第一目标长度,该第一目标长度与该第一队列中语音长度最长的语音数据的语音长度相等。响应于第二队列中存储有不少于两条的语音数据,将该第二队列中存储的语音数据补齐为第二目标长度,该第二目标长度与第二队列中语音长度最长的语音数据的语音长度相等。通过将队列中的语音数据补齐为相同的长度,能够便于执行后续的前向计算步骤。
77.例如,参见图4所示,图4是根据本技术实施例提供的一种数据补齐的示意图。如图4,以第一队列中存储的4条语音数据s0、s1、s2和s3为例,参见补齐前的黑色方块,s0的语音长度为3,s1的语音长度为2,s2的语音长度为4,s3的语音长度为2,则终端将s0、s1和s3的语音长度补齐为4,参见补齐后,其中白色方块表示空白数据。
78.303、终端循环对该第一队列和该第二队列中的语音数据,进行批量处理算法的前向计算。
79.在本技术实施例中,终端先处理第一队列中的语音数据,等到处理完毕后,再处理第二队列中的语音数据;或者,终端先处理第二队列中的语音数据,等到处理完毕后,再处理第一队列中的语音数据。对于任一队列,终端基于批量处理算法,采用并行计算的方式对该队列中的语音数据进行前向计算。
80.在一些实施例中,在请求高峰期,会出现终端处理速度慢于请求接收速度的情况,也即终端在处理两个队列中的语音数据的过程中,还能获取至少两个新的语音处理请求,其中,一个新的语音处理请求携带一条新的语音数据。响应于第一队列中的语音数据还未开始处理,则终端将该至少两条新的语音数据中满足目标条件的语音数据添加至第一队列。响应于该第二队列中的语音数据还未开始处理,将该至少两条新的语音数据中不满足目标条件的语音数据添加至第二队列。
81.可选地,换一种描述方式,对于任一队列,终端在同一周期内获取的语音数据为一组,如果终端在处理该队列中的语音数据时,该队列中包括两组或者两组以上的语音数据,则终端将该两组或者两组以上的语音数据合并为一个大组,并进行补齐,再采用并行计算的方式处理该队列中的语音数据。
82.例如,终端正在处理第一队列中的语音数据,第二队列中的语音数据还未开始处理,此时该第二队列包括一组语音数据,然后终端获取了至少两个新的语音处理请求,终端将该至少两条新的语音数据中不满足目标条件的语音数据添加至该第二队列,此时该第二队列包括两组语音数据。终端处理完第一队列中的语音数据之后,将第二队列中的两组语音数据进行合并然后处理,并且终端将上述至少两条新的语音数据中满足目标条件的语音数据添加至第一队列,此时第一队列包括一组语音数据。
83.304、终端将该至少两个计算结果分别反馈至该至少两个语音处理请求对应的线程。
84.在本技术实施例中,终端在得到前向计算的计算结果之后,将该计算结果分发至各语音处理请求对应的线程,然后由各线程基于接收到的计算结果继续进行处理,从而得到各语音数据对应的识别结果。
85.需要说明的是,上述步骤301至步骤304是终端基于声学模型进行前向计算的过程,本技术实施例对声学模型的结构不进行限制。为了使上述步骤301至步骤304所描述的语音处理方法更容易理解,参见图5所示,图5是根据本技术实施例提供的一种语音处理方法的流程示意图。如图5,终端基于socket监听线程循环监听语音处理请求。然后终端每隔t时长获取一次语音处理请求,一个语音请求中携带一条语音数据。终端将获取到的语音数据添加到第一队列或第二队列。终端循环对第一队列和第二队列中的语音数据进行前向计算。最后,终端将计算结果分别反馈给每个语音处理请求对应的线程。
86.在本技术实施例中,通过两个队列来存储语音长度不同的语音数据,使得在上述
两个队列对语音数据进行批量处理算法的前向计算时,避免了批量处理过程中,在语音长度较短的语音数据中填充大量的空白数据进行补齐的问题,从而有效的减少了冗余计算,提高了计算效率。
87.图6是根据本技术实施例提供的一种语音处理装置的框图。该装置用于执行上述语音处理方法中的步骤,参见图6,装置包括:请求获取模块601、数据计算模块602以及结果反馈模块603
88.请求获取模块,用于获取至少两个语音处理请求,该至少两个语音处理请求携带至少两条语音数据;
89.数据计算模块,用于基于第一队列和第二队列,对该至少两条语音数据进行批量处理算法的前向计算,得到至少两个计算结果,该第一队列用于存储语音长度满足目标条件的语音数据,该第二队列用于存储语音长度不满足该目标条件的语音数据;
90.结果反馈模块,用于将该至少两个计算结果分别反馈至该至少两个语音处理请求对应的线程。
91.在一种可选的实现方式中,参见图7,该数据计算模块602,包括:
92.数据添加单6021,用于将该至少两条语音数据,分别添加至该第一队列或该第二队列;
93.循环计算单元6022,用于循环对该第一队列和该第二队列中的语音数据,进行该批量处理算法的前向计算。
94.在一种可选的实现方式中,该数据添加单元6021,用于对于该至少两条语音数据中的任一语音数据,响应于该语音数据的语音长度满足该目标条件,将该语音数据添加至该第一队列;响应于该语音数据的语音长度不满足该目标条件,将该语音数据添加至该第二队列。
95.在一种可选的实现方式中,该数据计算模块,还包括:第一补齐单元6023,用于响应于该第一队列中存储有不少于两条的语音数据,将该第一队列中存储的语音数据补齐为第一目标长度,该第一目标长度与该第一队列中语音长度最长的语音数据的语音长度相等。
96.在一种可选的实现方式中,该数据计算模块,还包括:第二补齐单元6024,用于响应于该第二队列中存储有不少于两条的语音数据,将该第二队列中存储的语音数据补齐为第二目标长度,该第二目标长度与该第二队列中语音长度最长的语音数据的语音长度相等。
97.在一种可选的实现方式中,该请求获取模块601,还用于获取至少两个新的语音处理请求,至少两个新的语音处理请求携带至少两条新的语音数据;
98.该数据计算模块602,还用于响应于该第一队列中的语音数据还未开始处理,将该至少两条新的语音数据中满足该目标条件的语音数据添加至该第一队列;
99.该数据计算模块602,还用于响应于该第二队列中的语音数据还未开始处理,将该至少两条新的语音数据中不满足该目标条件的语音数据添加至该第二队列。
100.在一种可选的实现方式中,该请求获取模块601,用于获取目标时长内接收到的该至少两个语音处理请求。
101.在本技术实施例中,通过两个队列来存储语音长度不同的语音数据,使得在上述
两个队列对语音数据进行批量处理算法的前向计算时,避免了批量处理过程中,在语音长度较短的语音数据中填充大量的空白数据进行补齐的问题,从而有效的减少了冗余计算,提高了计算效率。
102.需要说明的是:上述实施例提供的语音处理装置在进行语音处理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的语音处理装置与语音处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
103.在本技术实施例中,计算机设备能够被配置为终端或者服务器,当计算机设备被配置为终端时,由终端作为执行主体来实施本技术实施例提供的技术方案,当计算机设备被配置为服务器时,由服务器作为执行主体来实施本技术实施例提供的技术方案,也可以通过终端和服务器之间的交互来实施本技术提供的技术方案,本技术实施例对此不作限定。
104.计算机设备被配置为终端时,图8是根据本技术实施例提供的一种终端800的结构框图。该终端800可以是便携式移动终端,比如:智能手机、平板电脑、mp3播放器(moving picture experts group audio layer iii,动态影像专家压缩标准音频层面3)、mp4(moving picture experts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
105.通常,终端800包括有:处理器801和存储器802。
106.处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
107.存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个计算机程序,该至少一个计算机程序用于被处理器801所执行以实现本技术中方法实施例提供的语音处理方法。
108.在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、显示屏805、摄像头组件806、音频电路807、定位组件808和电源809中的至少一种。
109.外围设备接口803可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
110.射频电路804用于接收和发射rf(radio frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wireless fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括nfc(near field communication,近距离无线通信)有关的电路,本技术对此不加以限定。
111.显示屏805用于显示ui(user interface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置在终端800的前面板;在另一些实施例中,显示屏805可以为至少两个,分别设置在终端800的不同表面或呈折叠设计;在另一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用lcd(liquid crystal display,液晶显示屏)、oled(organic light
‑
emitting diode,有机发光二极管)等材质制备。
112.摄像头组件806用于采集图像或视频。可选地,摄像头组件806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtual reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
113.音频电路807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路807还可以包括
耳机插孔。
114.定位组件808用于定位终端800的当前地理位置,以实现导航或lbs(location based service,基于位置的服务)。定位组件808可以是基于美国的gps(global positioning system,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
115.电源809用于为终端800中的各个组件进行供电。电源809可以是交流电、直流电、一次性电池或可充电电池。当电源809包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
116.在一些实施例中,终端800还包括有一个或多个传感器810。该一个或多个传感器810包括但不限于:加速度传感器811、陀螺仪传感器812、压力传感器813、指纹传感器814、光学传感器815以及接近传感器816。
117.加速度传感器811可以检测以终端800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器811可以用于检测重力加速度在三个坐标轴上的分量。处理器801可以根据加速度传感器811采集的重力加速度信号,控制显示屏805以横向视图或纵向视图进行用户界面的显示。加速度传感器811还可以用于游戏或者用户的运动数据的采集。
118.陀螺仪传感器812可以检测终端800的机体方向及转动角度,陀螺仪传感器812可以与加速度传感器811协同采集用户对终端800的3d动作。处理器801根据陀螺仪传感器812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。
119.压力传感器813可以设置在终端800的侧边框和/或显示屏805的下层。当压力传感器813设置在终端800的侧边框时,可以检测用户对终端800的握持信号,由处理器801根据压力传感器813采集的握持信号进行左右手识别或快捷操作。当压力传感器813设置在显示屏805的下层时,由处理器801根据用户对显示屏805的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
120.指纹传感器814用于采集用户的指纹,由处理器801根据指纹传感器814采集到的指纹识别用户的身份,或者,由指纹传感器814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器814可以被设置在终端800的正面、背面或侧面。当终端800上设置有物理按键或厂商logo时,指纹传感器814可以与物理按键或厂商logo集成在一起。
121.光学传感器815用于采集环境光强度。在一个实施例中,处理器801可以根据光学传感器815采集的环境光强度,控制显示屏805的显示亮度。具体地,当环境光强度较高时,调高显示屏805的显示亮度;当环境光强度较低时,调低显示屏805的显示亮度。在另一个实施例中,处理器801还可以根据光学传感器815采集的环境光强度,动态调整摄像头组件806的拍摄参数。
122.接近传感器816,也称距离传感器,通常设置在终端800的前面板。接近传感器816用于采集用户与终端800的正面之间的距离。在一个实施例中,当接近传感器816检测到用
户与终端800的正面之间的距离逐渐变小时,由处理器801控制显示屏805从亮屏状态切换为息屏状态;当接近传感器816检测到用户与终端800的正面之间的距离逐渐变大时,由处理器801控制显示屏805从息屏状态切换为亮屏状态。
123.本领域技术人员可以理解,图8中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
124.计算机设备被配置为服务器时,图9是根据本技术实施例提供的一种服务器的结构示意图,该服务器900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)901和一个或一个以上的存储器902,其中,该存储器902中存储有至少一条计算机程序,该至少一条计算机程序由该处理器901加载并执行以实现上述各个方法实施例提供的语音处理方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
125.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一段计算机程序,该至少一段计算机程序由计算机设备的处理器加载并执行以实现本技术实施例语音处理方法中计算机设备所执行的操作。
126.本技术实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。终端的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各种可选实现方式中提供的语音处理方法。
127.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
128.以上所述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。