1.本发明属于计算机听觉技术领域,具体涉及虚拟听觉系统。
背景技术:
2.人们越来越多地与计算设备交互并且依靠这些设备来获得信息、推荐和其他服务以帮助他们进行日常任务。但是在这些交互中计算设备理解用户所说的语句和意图仍然是个困难的技术问题。在这种交互中,用户常常因其计算机化的个人助理应用或服务无法理解他们、他们的意图或预期他们的需求而感到沮丧。
3.语音识别包括用于将所讲的词转换成文本的处理。通常,语音识别系统将口头发声映射成一系列计算机可读语音,并且对那些语音与和词相关的已知语音模式进行比较。例如,麦克风可以接受下述模拟信号,所述模拟信号被转换成此后被划分成更小段的数字形式。可对数字段与所讲语言的元素进行比较。根据该比较以及对发出那些语音的环境的分析,系统能够识别语音。
4.典型的语音识别系统可以包括识别模型、语言模型、以及字典。简言之,识别模型包括可组合以生成词语、短语等等的集合的各个语音的数字表示。语言模型分配一系列词语将一起在特定句子或短语中出现的概率。字典将语音序列转换成语言模型可理解的词语。
技术实现要素:
5.有鉴于此,本发明的主要目的在于提供虚拟听觉系统,本发明通过将声波转换为三角波,再对三角波进行分解,以实现单个语音的识别,完成了针对乱序的或者无序的语音数据的识别,具有识别准确率高的优点。
6.为达到上述目的,本发明的技术方案是这样实现的:虚拟听觉系统,所述系统包括:声波获取部,配置用于获取待识别的乱序的语音数据的声波;三角波生成部,配置用于对声波进行解析,生成声波对应的三角波;分隔部,配置用于对生成的三角波进行分割,以得到多个子三角波,每个子三角波表征语音数据的一个发音;时序确定部,配置用于基于子三角波的特征,为子三角波确定一个时序;所述子三角波的特征包括:子三角波的长度、相位和幅度;发音识别部,配置用于基于子三角波进行发音识别,以确定子三角波对应的发音;时序冲突解决部,配置用于当多个子三角波的时序相同时,基于每个子三角波的发音,将相同时序的子三角波分别重新分配不同的时序;识别语音生成部,基于每个子三角波的发音和时序,将所有的发音进行连接,生成识别语音。
7.进一步的,所述系统还包括:语音调整部,配置用于对识别语音进行特征提取,以判断特征提取结果是否匹配预设的历史特征模板,若不匹配,则将相邻的设定数量的发音进行乱序重置,按照乱序重置后的时序,将发音进行连接,重新进行特征提取和将特征提取结果与历史特征模板进行匹配,循环执行上述步骤,直到特征提取结果与历史特征模板相匹配。
8.进一步的,所述声波获取部在获取待识别的乱序的语音数据的声波时,将按照获取声波的先后顺序,按照设定的间隔,将声波划分为多个声波段,并为每个声波段标注序号。
9.进一步的,所述三角波生成部对声波进行解析,生成声波对应的三角波的方法包括:首先生成声波的包络波形,生成的包络波形中与声波高点对应的点进行标注,同时在两个高点间,确定两个声波低点,也在包络波形中进行标注;所述声波高点为声波中某个幅度高于左右相邻的n个点的点;所述声波低点为声波中某个幅度低于左右相邻的n个点的点;将包络波形中的标注与声波高点对应的点与包络波形中标注与声波低点对应的点中距离最远的点进行连接,最后,去除包络波形中其他部分,得到三角波。
10.进一步的,所述分隔部对生成的三角波进行分割,以得到多个子三角波的方法包括:三角波中的每三个点组成的三角形视为一个待分离子三角波,将所有待分离子三角波与相邻的待分离子三角波的重叠部分进行分配后,从三角波中分离出来,得到子三角波。
11.进一步的,所述将所有待分离子三角波与相邻的待分离子三角波的重叠部分进行分配的方法执行以下步骤:计算每个待分离子三角波的面积,比对待分离子三角波的面积与相邻的待分离子三角波的面积进行比较,两者相较后,面积大的待分离子三角波获得重叠部分,面积小的待分离子三角波失去重叠部分。
12.进一步的,所述基于子三角波的特征,为子三角波确定一个时序的方法执行以下步骤:基于每个子三角波的特征,使用时序值计算公式计算子三角波的时序值,按照时序值的大小,为每个子三角波分配时序;所述时序值计算公式使用如下公式进行表示:;其中,为子三角波的长度,定义为子三角波的底边的长度;为子三角波的幅度,为子三角波的幅度。
13.进一步的,所述发音识别部基于子三角波进行发音识别,以确定子三角波对应的发音的方法执行以下步骤:获取一组用于训练的子三角波以及与其匹配的发音的波形,建立子三角波与发音的关联模型,得到发音字典;再根据发音字典确定三角波对应的发音。
14.进一步的,所述发音字典的建立过程包括:获取一组用于训练的子三角波以及与其匹配的发音的波形;提取子三角波中的fiiterbank特征和发音的波形中的离散余弦变换的fiiterbank特征;将所述发音的波形中的离散余弦变换的fiiterbank特征作为训练后的高斯混合模型的输入数据,获取所述训练后的高斯混合模型输出的第一似然概率矩阵;将所子三角波中的filterbank特征作为训练后的二维循环神经网络模型的输入特征,分别进行时间维度和层次维度的计算,获取输出的包含有时间维度和层次维度信息的后验概率矩阵;根据所述后验概率矩阵和所述第一似然概率矩阵采用训练后的隐马尔可夫模型计算得到目标似然概率矩阵;所述目标似然概率矩阵表征每个发音的波形与子三角波的对应关系,完成发音字典的建立。
15.进一步的,所述对识别语音进行特征提取,以判断特征提取结果是否匹配预设的历史特征模板的方法包括:获取一组用于训练的语音,采用基于时域的特征提取对用于训练的语音进行特征提取,得到历史特征模板;所述历史特征模板表征语音的自然规律;对识别语音进行基于时域的特征提取,得到特征提取结果,再判断特征提取结果是否匹配预设的历史特征模板。
16.本发明的海量信息搜索系统,具有如下有益效果:
1.准确率较高:本发明针对乱序的语音提出了识别的方法,在进行识别时,通过建立语音字典的方式,提升了准确率。
17.2.效率高:本发明通过三角波的生成来提升效率,相较于包络波,其复杂度更小,算法效率更高。
附图说明
18.图1为本发明实施例提供的虚拟听觉系统的系统结构示意图;图2为本发明实施例提供的虚拟听觉系统的生成三角波的原理示意图;图3为本发明实施例提供的虚拟听觉系统的进行重新排序的原理示意图。
具体实施方式
19.下面结合附图及本发明的实施例对本发明的方法作进一步详细的说明。
20.实施例1如图1所示,虚拟听觉系统,所述系统包括:声波获取部,配置用于获取待识别的乱序的语音数据的声波;三角波生成部,配置用于对声波进行解析,生成声波对应的三角波;分隔部,配置用于对生成的三角波进行分割,以得到多个子三角波,每个子三角波表征语音数据的一个发音;时序确定部,配置用于基于子三角波的特征,为子三角波确定一个时序;所述子三角波的特征包括:子三角波的长度、相位和幅度;发音识别部,配置用于基于子三角波进行发音识别,以确定子三角波对应的发音;时序冲突解决部,配置用于当多个子三角波的时序相同时,基于每个子三角波的发音,将相同时序的子三角波分别重新分配不同的时序;识别语音生成部,基于每个子三角波的发音和时序,将所有的发音进行连接,生成识别语音。
21.具体的,现有的语音识别技术在进行语音识别时,都倚赖于语音的有序性,有序的语音存在规律,在识别时能够为识别提供依据,进而提高识别的准确率。
22.乱序的语音由于不具备规律性,使用常规的语音识别技术难以进行识别。
23.三角波是包络波的一种,其通过进一步的对包络波进行简化,以降低波形的复杂度,提升识别的效率。虽然三角波降低了包络波的复杂度,在物理层面上降低了信息量,由此可能会带来准确率的降低。但本发明是针对无序的语音进行识别,针对这种情况的语音进行识别,即便是完整的包络波,其准确率相较于三角波的提升也相当有限。
24.在实际过程中,使用三角波和使用包络波进行语音识别,在准确率上,并没有明显的区别。换言之,在乱序语音识别时,使用三角波可以提升效率,但没有降低准确率。
25.实施例2在上一实施例的基础上,所述系统还包括:语音调整部,配置用于对识别语音进行特征提取,以判断特征提取结果是否匹配预设的历史特征模板,若不匹配,则将相邻的设定数量的发音进行乱序重置,按照乱序重置后的时序,将发音进行连接,重新进行特征提取和将特征提取结果与历史特征模板进行匹配,循环执行上述步骤,直到特征提取结果与历史特征模板相匹配。
26.具体的,本发明在针对识别语音,还添加了一个语音调整的部分。该部分的功能旨在提升最终的结果的准确性。因为本发明除了识别乱序语音的每个发音以外,还对乱序语
音进行了重新的排序,以得到有序的语音。虽然该过程的难度很大,在本发明中的方法仅在一定程度上实现,无法100%的得到由于语音,因为本发明的语音调整本质上没有使用基于语义分析的方法。但本发明的方法相较于语义分析的方法,却具有效率高的优点。
27.参考图3,针对乱序部分进行重新排序时,可能会将有意义的表达转换为无异议的表达,由此在每一次进行重新排序时,都会出现这种情况,而使得整个算法出现无限次循环的情况。因此在进行重新的排序时,可以通过设定一个阈值次数来进行限制,以保证在达到阈值次数后,停止排序。
28.实施例3在上一实施例的基础上,所述声波获取部在获取待识别的乱序的语音数据的声波时,将按照获取声波的先后顺序,按照设定的间隔,将声波划分为多个声波段,并为每个声波段标注序号。
29.具体的,对每个生波段进行标注旨在为后续的结果分析提供依据。进一步的,本发明可以在最终结果上再对语音调整部调整后得到的结果进行分段,得到多个声波段,以便与乱序的语音数据的声波段进行对比。基于多次对比的结果,可以为后续的乱序语音的分析提供依据。
30.如使用神经网络的方法,通过多次比对的结果,作为训练数据,以生成神经网络的模型,该模型可以对后续的结果进行校正。使用有监督的方法,提升准确率。
31.实施例4在上一实施例的基础上,所述三角波生成部对声波进行解析,生成声波对应的三角波的方法包括:首先生成声波的包络波形,生成的包络波形中与声波高点对应的点进行标注,同时在两个高点间,确定两个声波低点,也在包络波形中进行标注;所述声波高点为声波中某个幅度高于左右相邻的n个点的点;所述声波低点为声波中某个幅度低于左右相邻的n个点的点;将包络波形中的标注与声波高点对应的点与包络波形中标注与声波低点对应的点中距离最远的点进行连接,最后,去除包络波形中其他部分,得到三角波。
32.具体的,n值为一个设定值,取正整数。左右相邻的点的数量需要相等,均为n。
33.语音识别主要有以下五个问题:
⒈
对自然语言的识别和理解。首先必须将连续的讲话分解为词、音素等单位,其次要建立一个理解语义的规则。
34.⒉
语音信息量大。语音模式不仅对不同的说话人不同,对同一说话人也是不同的,例如,一个说话人在随意说话和认真说话时的语音信息是不同的。一个人的说话方式随着时间变化。
35.⒊
语音的模糊性。说话者在讲话时,不同的词可能听起来是相似的。这在英语和汉语中常见。
36.⒋
单个字母或词、字的语音特性受上下文的影响,以致改变了重音、音调、音量和发音速度等。
37.⒌
环境噪声和干扰对语音识别有严重影响,致使识别率低。
38.实施例5参考图2,在上一实施例的基础上,所述分隔部对生成的三角波进行分割,以得到多个子三角波的方法包括:三角波中的每三个点组成的三角形视为一个待分离子三角波,
将所有待分离子三角波与相邻的待分离子三角波的重叠部分进行分配后,从三角波中分离出来,得到子三角波。
39.具体的,重叠部分的分配基于语音的自然规律理论。在现有技术中,语音具备自然规律。一种理论是,通常在语音的波形中,发音持续时间更长,声音更响亮的部分或者单词或者发音往往占据主要地位,表现在波形中,这个部分的波形占比较大。虽然与其邻接的部分会与其有部分重叠,但重叠部分于邻接部分的意义影响较小。
40.实施例6在上一实施例的基础上,所述将所有待分离子三角波与相邻的待分离子三角波的重叠部分进行分配的方法执行以下步骤:计算每个待分离子三角波的面积,比对待分离子三角波的面积与相邻的待分离子三角波的面积进行比较,两者相较后,面积大的待分离子三角波获得重叠部分,面积小的待分离子三角波失去重叠部分。
41.具体的,声学特征的提取与选择是语音识别的一个重要环节。声学特征的提取既是一个信息大幅度压缩的过程,也是一个信号解卷过程,目的是使模式划分器能更好地划分。由于语音信号的时变特性,特征提取必须在一小段语音信号上进行,也即进行短时分析。这一段被认为是平稳的分析区间称之为帧,帧与帧之间的偏移通常取帧长的1/2或1/3。通常要对信号进行预加重以提升高频,对信号加窗以避免短时语音段边缘的影响。
42.实施例7在上一实施例的基础上,所述基于子三角波的特征,为子三角波确定一个时序的方法执行以下步骤:基于每个子三角波的特征,使用时序值计算公式计算子三角波的时序值,按照时序值的大小,为每个子三角波分配时序;所述时序值计算公式使用如下公式进行表示:;其中,为子三角波的长度,定义为子三角波的底边的长度;为子三角波的幅度,为子三角波的幅度。
43.具体的,乱序的语音如果在最终能够组成一个有序的完整的有意义的语音。则其必然存在潜在的语音内部的规律。这种规律所需要满足一定的时序,这种时序的规律为本发明所提出的算法表达。
44.实施例8在上一实施例的基础上,所述发音识别部基于子三角波进行发音识别,以确定子三角波对应的发音的方法执行以下步骤:获取一组用于训练的子三角波以及与其匹配的发音的波形,建立子三角波与发音的关联模型,得到发音字典;再根据发音字典确定三角波对应的发音。
45.实施例9在上一实施例的基础上,所述发音字典的建立过程包括:获取一组用于训练的子三角波以及与其匹配的发音的波形;提取子三角波中的fiiterbank特征和发音的波形中的离散余弦变换的fiiterbank特征;将所述发音的波形中的离散余弦变换的fiiterbank特征作为训练后的高斯混合模型的输入数据,获取所述训练后的高斯混合模型输出的第一似然概率矩阵;将所子三角波中的filterbank特征作为训练后的二维循环神经网络模型的输入特征,分别进行时间维度和层次维度的计算,获取输出的包含有时间维度和层次维度信息的后验概率矩阵;根据所述后验概率矩阵和所述第一似然概率矩阵采用训练后的隐马尔可夫模型计算得到目标似然概率矩阵;所述目标似然概率矩阵表征每个发音的波形与子三角
波的对应关系,完成发音字典的建立。
46.具体的,fiiterbank特征一般使用如下过程得到:预加重,作用就是为了消除发声过程中,声带和嘴唇造成的效应,来补偿语音信号受到发音系统所压抑的高频部分。并且能突显高频的共振峰。分帧,将语音信号分为帧,通常帧长=20~40ms,帧移=10ms(具体视情况而定)。加窗,对每帧信号加一个hamming/hanning窗,使每帧信号两端衰减至接近0。stft,得到向量特征,并将能量(幅值)谱转化为功率谱(通过平方)。mel滤波,通过mel滤波器组进行滤波,以得到符合人耳听觉习惯的声谱,最后通常取对数将单位转换成db。
47.但在本发明中,利用fiiterbank特征进行了其他利用,本发明使用高斯混合模型针对用于训练的子三角波来得到第一似然概率矩阵。该第一似然概率矩阵又和离散余弦变化后的fiiterbank特征基于二维循环神经网络模型得到的后验概率矩阵采用训练后的隐马尔可夫模型计算得到目标似然概率矩阵,由此来得到发音字典。
48.实施例10在上一实施例的基础上,所述对识别语音进行特征提取,以判断特征提取结果是否匹配预设的历史特征模板的方法包括:获取一组用于训练的语音,采用基于时域的特征提取对用于训练的语音进行特征提取,得到历史特征模板;所述历史特征模板表征语音的自然规律;对识别语音进行基于时域的特征提取,得到特征提取结果,再判断特征提取结果是否匹配预设的历史特征模板。
49.具体的,包络检波(envelope-demodulation)是基于滤波检波的振动信号处理方法,尤其对初期故障和信噪比较低的故障信号识别能力强。将一段时间长度的高频信号的峰值点连线,就可以得到上方(正的)一条线和下方(负的)一条线,这两条线就叫包络线。包络线就是反映高频信号幅度变化的曲线。对于等幅高频信号,这两条包络线就是平行线。 当用一个低频信号对一个高频信号进行幅度调制(即调幅)时,低频信号就成了高频信号的包络线。
50.需要说明的是,上述实施例提供的系统,仅以上述各功能单元的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能单元来完成,即将本发明实施例中的单元或者步骤再分解或者组合,例如,上述实施例的单元可以合并为一个单元,也可以进一步拆分成多个子单元,以完成以上描述的全部或者单元功能。对于本发明实施例中涉及的单元、步骤的名称,仅仅是为了区分各个单元或者步骤,不视为对本发明的不当限定。
51.所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的存储装置、处理装置的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。
52.本领域技术人员应能够意识到,结合本文中所公开的实施例描述的各示例的单元、方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,软件单元、方法步骤对应的程序可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法
来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
53.术语“第一”、“另一部分”等是配置用于区别类似的对象,而不是配置用于描述或表示特定的顺序或先后次序。
54.术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者单元/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者单元/装置所固有的要素。
55.至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术标记作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
56.以上所述,仅为本发明的较佳实施例而已,并非配置用于限定本发明的保护范围。