一种中英文混合语音识别方法与流程
本发明属于语音识别技术领域,具体来说是一种中英文混合语音识别方法。
背景技术:
随着信息全球化的发展,多语以及多语通信成为越来越普遍的现象。单语音识别系统不能够对多语通信进行有效的识别,建立能够识别多种语言、语音信号的语音识别系统是语音识别技术的一个新的任务。
中文是目前使用者最多的语言,英语是使用者分布最广的语言,因此建立一个中英文双语识别系统具有很好的应用前景。
现有技术中第一种中文和英文双语语音识别系统的实现方案为:把中文语音识别器和英文语音识别器集成在一起,先对输入的语音数据进行语种识别,然后根据语种识别的结果调用相应的语音识别器,从而实现中文和英文双语语音识别的任务。
现有技术中第二种中文和英文双语语音识别系统的实现方案为:根据语言学知识或者数据驱动的办法实现中文和英文模型的参数共享,降低模型混淆度,在此基础上训练出中英文共享的声学模型和语言模型。这样只使用一个识别器就可以识别中文、英文和中英文混合的语音信号。
但是上述第一种方案需要前期进行大量的模型训练,成本较高,而第二种方案只在模型层次上利用语言学知识或者数据驱动进行模型参数共享,造成参数共享不充分,中英文模型混淆度较大,进而造成中文和英文双语语音识别系统的识别性能不够准确。
技术实现要素:
1.发明要解决的技术问题
本发明的目的在于解决现有的中英文混合语音识别准确度不高的问题。
2.技术方案
为达到上述目的,本发明提供的技术方案为:
本发明的一种中英文混合语音识别方法,采集中英文混合语音后,将语音按照一定的帧长划分为若干段语音信号,且分段重叠率为40%,对分段后的语音信号进行高通滤波,滤波后进行加窗处理,得到每段语音信号的加窗函数,并计算判断是否为静音段,对非静音段的语音信号进行中文识别判断,当识别成功则输出该段中文且设定语种标识为1,当识别失败设定语种标识为0并进行英文识别,将识别成功则输出该段英文且更新语种标识为0,识别失败则设定语种标识为1重新进行中文识别。
优选的,将语音按照一定的帧长划分为若干段语音信号具体为按一定的帧长l划分为n语音段,控制帧长,使每段语音尽量只包含一个字,分段重叠率为40%,每一段的语音信号记为xa(n)。
优选的,所述加窗处理具体为通过以下公式(1)和公式(2)进行计算
ya(n)=xa(n)*w(n)(2);
其中,w(n)为窗函数,n为语音帧数。
计算得到加窗函数ya(n)。
优选的,判断语音信号是否为静音段具体为通过公式(3)和公式(4)计算各语音段的短时能量e(a)与过零率z(a)的值,并将短时能量e(a)与过零率z(a)进行加权,权值分别为k1、k2,加权判断函数h(a)的计算公式(5)并设置阈值hset,若h(a)≥hset为语音段,若h(a)<hset则该段为静音段;
h(a)=k1e(a)+k2z(a)(5)
其中,阈值hset为10,权值k1、k2分别为
优选的,对每段语音信号进行判断是否为静音段,若两段语音段间包含静音段,则将静音段舍去,两段语音段不处理,视为两个单字或单词;若两段语音段之间不包含静音段,则将两段语音段组合,视为一个语音段,视为一个字或单词。
优选的,进行中文识别具体为将非静音段的语音信号与中文库数据库进行匹配,所述中文库数据库包含基本生活常用单字(词),不包含英文派生的中文同音字(词),当匹配成功则输出该段中文且设定语种标识为1;若匹配失败,则将不匹配的语音段与该语音段前后语音段组合进行中文识别,匹配成功,则输出该段中文且设定语种标识为1,匹配失败,设定语种标识为0进行英文识别。
优选的,进行英文识别具体为对语种标识为0的语音信号与英文数据库进行匹配,其中英文数据库包含基本生活常用单词,不包含中文派生的英文同音字(词),当匹配成功,则输出该段英文且设定语种标识为0;若匹配失败,则将不匹配的语音段与该语音段前后语音段组合后进行英文识别,若匹配成功,则输出该段英文且设定语种标识为0,若匹配失败时设定语种标识为1继续判断。
3.有益效果
采用本发明提供的技术方案,与现有技术相比,具有如下有益效果:
本发明的一种中英文混合语音识别方法,采集中英文混合语音后,将语音按照一定的帧长划分为若干段语音信号,且分段重叠率为40%,对分段后的语音信号进行高通滤波,滤波后进行加窗处理,得到每段语音信号的加窗函数,并计算判断是否为静音段,对非静音段的语音信号进行中文识别判断,当识别成功则输出该段中文且设定语种标识为1,当识别失败设定语种标识为0并进行英文识别,将识别成功则输出该段英文且更新语种标识为0,,识别失败则设定语种标识为1重新进行中文识别。通过将语音分成若干段语音信号并判断是否为静音段,可以有效的提高识别效率,同时,分别对每段语音信号进行中文识别,识别失败则进行英文失败,可以有效保证中英文识别的准确度。
附图说明
图1为本发明的混合语音识别的总体流程图;
图2为语音语种标识为1时的识别流程图;
图3为语音语种标识为0时的识别流程图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述,附图中给出了本发明的若干实施例,但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例,相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同;本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明;本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
实施例1
参照附图1-附图3,本实施例的一种中英文混合语音识别方法,采集中英文混合语音后,将语音按照一定的帧长划分为若干段语音信号,且分段重叠率为40%,对分段后的语音信号进行高通滤波,滤波后进行加窗处理,得到每段语音信号的加窗函数,并计算判断是否为静音段,对非静音段的语音信号进行中文识别判断,当识别成功则输出该段中文且设定语种标识为1,当识别失败设定语种标识为0并进行英文识别,将识别成功则输出该段英文且更新语种标识为0,,识别失败则设定语种标识为1重新进行中文识别。通过将语音分成若干段语音信号并判断是否为静音段,可以有效的提高识别效率,同时,分别对每段语音信号进行中文识别,识别失败则进行英文失败,可以有效保证中英文识别的准确度。
将语音按照一定的帧长划分为若干段语音信号具体为按一定的帧长l划分为n语音段,控制帧长,使每段语音尽量只包含一个字,分段重叠率为40%,每一段的语音信号记为xa(n)。通过控制帧长,使每段语音尽量只包含一个字,可以提高整体识别的准确度,因为单字识别比词语识别更加简单和准确,同时分段重叠率为40%,可以有效保证连续的语音段之间存在连续,降低由于分段将字的语音进行分割的情况,保证识别准确性和全面性。
加窗处理具体为通过以下公式(1)和公式(2)进行计算
ya(n)=xa(n)*w(n)(2);
其中,w(n)为窗函数,n为语音帧数。
计算得到加窗函数ya(n)。加窗后可以减小语音分段时的泄漏。
判断语音信号是否为静音段具体为通过公式(3)和公式(4)计算各语音段的短时能量e(a)与过零率z(a)的值,并将短时能量e(a)与过零率z(a)进行加权,权值分别为k1、k2,加权判断函数h(a)的计算公式(5)并设置阈值hset,若h(a)≥hset为语音段,若h(a)<hset则该段为静音段;
h(a)=k1e(a)+k2z(a)(5)
其中,阈值hset为10,权值k1、k2分别为
对每段语音信号进行判断是否为静音段,若两段语音段间包含静音段,则将静音段舍去,两段语音段不处理,视为两个单字或单词;若两段语音段之间不包含静音段,则将两段语音段组合,视为一个语音段,视为一个字或单词。
进行中文识别具体为将非静音段的语音信号与中文库数据库进行匹配,所述中文库数据库包含基本生活常用单字(词),不包含英文派生的中文同音字(词),当匹配成功则输出该段中文且设定语种标识为1;若匹配失败,则将不匹配的语音段与该语音段前后语音段组合进行中文识别,匹配成功,则输出该段中文且设定语种标识为1,匹配失败,设定语种标识为0进行英文识别。
进行英文识别具体为对语种标识为0的语音信号与英文数据库进行匹配,其中英文数据库包含基本生活常用单词,不包含中文派生的英文同音字(词),当匹配成功,则输出该段英文且设定语种标识为0;若匹配失败,则将不匹配的语音段与该语音段前后语音段组合后进行英文识别,若匹配成功,则输出该段英文且设定语种标识为0,若匹配失败时设定语种标识为1继续判断。
以上所述实施例仅表达了本发明的某种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制;应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围;因此,本发明专利的保护范围应以所附权利要求为准。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除