语音特征提取的处理方法、装置、计算机设备和存储介质转让专利

申请号 : CN201910969131.3

文献号 : CN110858478B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 曹堉棋彭博傅金泉顾渝骢高婧洁曹书红

申请人 : 杭州智芯科微电子科技有限公司

摘要 :

本发明公开了语音特征提取的处理方法、装置、计算机设备和存储介质,其中,语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将该偶数序列和该奇数序列,分别输入为复数信号的实部和该复数信号的虚部;将该复数信号输入预设快速傅里叶变换FFT框架模型,对该复数信号进行FFT变换输出该复数信号的信号频谱,其中,该预设快速傅里叶变换FFT框架模型包括一级基2^2模块和二级基2^3模块;将该复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取该语音信号的频谱数据,解决了复杂的FFT结构导致语音识别芯片的运转效率低下,对语音识别的时效性和功耗影响很大的问题,提高了语音识别的实效性和运行效率,降低了语音识别芯片的功耗。

权利要求 :

1.一种语音特征提取的处理装置,其特征在于,所述装置包括:抽取模块,用于将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入为复数信号的实部和所述复数信号的虚部;

变换模块,用于将所述复数信号输入预设快速傅里叶变换FFT框架模型,对所述复数信号进行FFT变换输出所述复数信号的信号频谱,其中,所述预设快速傅里叶变换FFT框架模型包括一级基2^2模块和二级基2^3模块;

实序列变换模块,用于将所述复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取所述语音信号的频谱数据。

2.根据权利要求1所述装置,其特征在于,将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入为复数信号的实部和所述复数信号的虚部包括以下之一:获取到512点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入256点的复数信号实部和虚部;

获取到256点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入128点的复数信号实部和虚部。

3.根据权利要求1所述装置,其特征在于,所述装置还包括:

提取模块,用于将所述频谱数据输入Mel滤波器,进行倒谱运算,提取所述语音信号的语音包络特征。

4.根据权利要求3所述装置,其特征在于,所述装置还包括:

神经网络识别模块,用于获取所述语音信号的语音包络特征之后,所述语音包络特征进行编码后,输入神经网络训练模型进行语音识别。

5.一种语音特征提取的处理方法,其特征在于,所述方法包括:将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入为复数信号的实部和所述复数信号的虚部;

将所述复数信号输入预设快速傅里叶变换FFT框架模型,对所述复数信号进行FFT变换输出所述复数信号的信号频谱,其中,所述预设快速傅里叶变换FFT框架模型包括一级基2^

2模块和二级基2^3模块;

将所述复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取所述语音信号的频谱数据。

6.根据权利要求5所述方法,其特征在于,将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入为复数信号的实部和所述复数信号的虚部包括以下之一:获取到512点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入256点的复数信号实部和虚部;

获取到256点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入128点的复数信号实部和虚部。

7.根据权利要求5所述方法,其特征在于,将所述复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取所述语音信号的频谱数据之后,所述方法包括:将所述频谱数据输入Mel滤波器,进行倒谱运算,提取所述语音信号的语音包络特征。

8.根据权利要求7所述方法,其特征在于,获取所述语音信号的语音包络特征之后,所述方法包括:所述语音包络特征进行编码后,输入神经网络训练模型进行语音识别。

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求5至8中任一项所述方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求5至8中任一项所述的方法的步骤。

说明书 :

语音特征提取的处理方法、装置、计算机设备和存储介质

技术领域

[0001] 本发明涉及语音识别领域,具体而言,涉及语音特征提取的处理方法、装置、计算机设备和存储介质。

背景技术

[0002] 在语音识别的过程中,语音特征提取是非常重要的一个环节,原始语音数据经过梅尔倒谱系数(Mel-scaleFrequency Cepstral Coefficients,简称为MFCC)的特征提取,其过程包括短时傅里叶变换(short time Fourier transform,简称为STFT)、梅尔滤波(Mel-filter)、取log、离散余弦变换(discrete cosine transform,简称为DCT)等步骤,之后将提取的语音特征编码通过神经网络训练识别其信息内容。在此过程中快速傅里叶变换(fast Fourier transform,简称为FFT),是一种实现傅里叶变换的快速算法,实现FFT的方法多样,通常为基2为底的时域抽取蝶形算法(cooley-turkey算法)。FFT可以使离散傅里叶变换(Discrete Fourier Transform,简称为DFT)的时间复杂度从n^2减小到nlogn。
[0003] FFT中一个蝶形运算需要一个加法器和一个乘法器,有些地方的运算还涉及到复数的部分,消耗硬件资源、结构复杂,复杂的FFT结构导致语音识别芯片的运转效率低下,对语音识别的时效性和功耗影响很大
[0004] 针对相关技术中,复杂的FFT结构导致语音识别芯片的运转效率低下,对语音识别的时效性和功耗影响很大的问题,目前尚未提出有效的解决方案。

发明内容

[0005] 针对相关技术中,复杂的FFT结构导致语音识别芯片的运转效率低下,对语音识别的时效性和功耗影响很大的问题,本发明提供了语音特征提取的处理方法、装置、计算机设备和存储介质,以至少解决上述问题。
[0006] 根据本发明的一个方面,提供了一种语音特征提取的处理装置,所述装置包括:
[0007] 抽取模块,用于将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入为复数信号的实部和所述复数信号的虚部;
[0008] 变换模块,用于将所述复数信号输入预设快速傅里叶变换FFT框架模型,对所述复数信号进行FFT变换输出所述复数信号的信号频谱,其中,所述预设快速傅里叶变换FFT框架模型包括一级基2^2模块和二级基2^3模块;
[0009] 实序列变换模块,用于将所述复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取所述语音信号的频谱数据。
[0010] 在其中一个实施例中,将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入为复数信号的实部和所述复数信号的虚部包括以下之一:
[0011] 获取到512点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入256点的复数信号实部和虚部;
[0012] 获取到256点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入128点的复数信号实部和虚部。
[0013] 在其中一个实施例中,所述装置还包括:
[0014] 提取模块,用于将所述频谱数据输入Mel滤波器,进行倒谱运算,提取所述语音信号的语音包络特征。
[0015] 在其中一个实施例中,所述装置还包括:
[0016] 神经网络识别模块,用于获取所述语音信号的语音包络特征之后,所述语音包络特征进行编码后,输入神经网络训练模型进行语音识别。
[0017] 根据本发明的另一个方面,还提供了一种语音特征提取的处理方法,所述方法包括:
[0018] 将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入为复数信号的实部和所述复数信号的虚部;
[0019] 将所述复数信号输入预设快速傅里叶变换FFT框架模型,对所述复数信号进行FFT变换输出所述复数信号的信号频谱,其中,所述预设快速傅里叶变换FFT框架模型包括一级基2^2模块和二级基2^3模块;
[0020] 将所述复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取所述语音信号的频谱数据。
[0021] 在其中一个实施例中,将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入为复数信号的实部和所述复数信号的虚部包括以下之一:
[0022] 获取到512点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入256点的复数信号实部和虚部;
[0023] 获取到256点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将所述偶数序列和所述奇数序列,分别输入128点的复数信号实部和虚部。
[0024] 在其中一个实施例中,将所述复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取所述语音信号的频谱数据之后,所述方法包括:
[0025] 将所述频谱数据输入Mel滤波器,进行倒谱运算,提取所述语音信号的语音包络特征。
[0026] 在其中一个实施例中,获取所述语音信号的语音包络特征之后,所述方法包括:
[0027] 所述语音包络特征进行编码后,输入神经网络训练模型进行语音识别。
[0028] 根据本发明的另一个方面,还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述方法的步骤。
[0029] 根据本发明的另一个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述的方法的步骤。
[0030] 通过本发明,将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将该偶数序列和该奇数序列,分别输入为复数信号的实部和该复数信号的虚部;将该复数信号输入预设快速傅里叶变换FFT框架模型,对该复数信号进行FFT变换输出该复数信号的信号频谱,其中,该预设快速傅里叶变换FFT框架模型包括一级基2^2模块和二级基2^3模块;将该复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取该语音信号的频谱数据,解决了复杂的FFT结构导致语音识别芯片的运转效率低下,对语音识别的时效性和功耗影响很大的问题,提高了语音识别的实效性和运行效率,降低了语音识别芯片的功耗。

附图说明

[0031] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0032] 图1是根据本发明实施例的一种语音特征提取的处理方法的流程图一;
[0033] 图2是根据本发明实施例的FFT框架模型的级联架构示意图;
[0034] 图3是根据本发明实施例的Radix22模块单元的示意图;
[0035] 图4是根据本发明实施例的蝶形运算单元的示意图;
[0036] 图5是根据本发明实施例Radix23算法单元结构的示意图;
[0037] 图6是根据本发明实施例的一种语音特征提取的处理方法的流程图二;
[0038] 图7是根据本发明实施例的种语音特征提取的处理装置的结构框图。

具体实施方式

[0039] 下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0040] 在本发明的实施例中,提供了一种语音特征提取的处理方法,图1是根据本发明实施例的一种语音特征提取的处理方法的流程图一,如图1所示,该方法包括如下步骤:
[0041] 步骤S102,将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将该偶数序列和该奇数序列,分别输入为复数信号的实部和该复数信号的虚部;
[0042] 步骤S104,将该复数信号输入预设快速傅里叶变换FFT框架模型,对该复数信号进行FFT变换输出该复数信号的信号频谱,其中,该预设快速傅里叶变换FFT框架模型包括一级基2^2模块和二级基2^3模块;
[0043] 步骤S106,将该复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取该语音信号的频谱数据。
[0044] 通过上述步骤,在MFCC特征提取过程中,由于输入的语音信号是实信号,而傅里叶变换FFT是一个非保实变换,在现有技术中,对于实数信号的输入,FFT将其看作是虚部为零的复数信号,在计算过程中产生了一些无效计算,本发明的实施例通过对原始语音信号进行构造,将信号的一半作为虚部,减少FFT过程中的无效操作,最后通过傅里叶变换的共轭性和对称性,求得原始语音信号的频谱,解决了复杂的FFT结构导致语音识别芯片的运转效率低下,对语音识别的时效性和功耗影响很大的问题,提高了语音识别的实效性和运行效率,降低了语音识别芯片的功耗。
[0045] 在一个实施例中,现有技术的FFT架构是基2时域抽取算法,会产生多次复杂复数乘法运算,图2是根据本发明实施例的FFT框架模型的级联架构示意图,如图2所示,本发明的实施例的FFT框架模型通过一级基2^2(Radix22)、两级基2^3(Radix23)模块及RFFT单元的级联构成,而Radix23模块中每3级基2单元才会有一次复杂的复数乘法运算,前两级的复数乘法运算均可以用简单的加法运算实现,降低了运算的复杂度。
[0046] 在本实施例中,图3是根据本发明实施例的Radix22模块单元的示意图,如图3所示,Radix22模块单元将输入信号序列的FFT变换结果根据频率k对4取余来分解成4个子序列。每个子序列的FFT计算可进一步分解成两级基2蝶形运算单元实现。第一级基2蝶形运算单元BF2将后半部分的输入数据乘以-j后进行基2蝶形运算;第二级基2蝶形运算单元BF3将该级的输入数据乘以相应复杂旋转因子,执行复数乘法运算,上述方法的原理如公式1所示:
[0047]
[0048] 其中, 为旋转因子;BF1单元执行的运算如公式2所示:
[0049]
[0050]
[0051] BF2单元执行的运算如公式3所示:
[0052]
[0053] 由公式1、公式2和公式3可知,可用两个基2的蝶形运算方式来实现Radix22模块,其中将含有j的系数项合并到一起。相对于基2-FFT,所需旋转因子个数较少;相对于基4-FFT,蝶形结构简单,硬件易于实现。
[0054] 在本实施例中,图4是根据本发明实施例的蝶形运算单元的示意图,图5是根据本发明实施例Radix23算法单元结构的示意图,如图4和图5所示,Radix23蝶形运算将输入信号序列的FFT变换结果根据时域n对8取余来分解成8个序列,将原始数据分解得到包含8个序列的多组数据。将每组数据中每个序列的FFT分解成三级基2蝶形运算单元实现,按照流水线结构级联组成。第一级基2蝶形运算单元BF1与8点基2蝶形运算结构一致,计算结果的后1/4部分进行实部与虚部的对换,并将变换后的虚部取相反数;第二级基2蝶形运算单元BF2对BF1输出数据分两组进行基2蝶形运算,运算结果与对应的旋转因子W8单元进行复数乘法;第三级基2蝶形运算单元BF3进行基本的基2蝶形运算单元输出结果,上述Radix23算法单元方法的原理如公式4所示:
[0055]
[0056] 其中, 为旋转因子,BF1单元的运算如公式5所示:
[0057]
[0058]
[0059]
[0060]
[0061] BF2单元的运算如公式6所示:
[0062]
[0063] BF3单元的运算如公式7所示:
[0064]
[0065] 与现有技术中的基2算法相比,本发明实施例中的Radix23算法每3级基2单元才会有一次复杂的复数乘法运算,而前两级的复数乘法运算均可使用简单的加法运算实现,因此具有较低运算复杂度。
[0066] 在本实施例中,在现有技术中,FFT算法最初设计思想是计算输入为复数数据的频谱,在本发明的实施例中,为了充分利用FFT的计算性能,将语音信号的实序列分解成偶数序列和奇数序列,作为复数输入对应的实部和虚部,输入到Radix22-Radix23级联架构中计算信号频谱。得到计算结果后经过RFFT单元求解原始输入实序列的频谱数据。
[0067] RFFT单元计算实序列FFT的原理包括:如公式8和公式9所示,将语音信号的原始实序列XN分解成奇数序列Fr和偶数序列Gr,对应的FFT结果记为Fr和Gr。设YN=Fr+j*Gr,由公式10计算得到复数序列YN进行FFT变换后的结果Yr。
[0068]
[0069]
[0070]
[0071] 根据公式11、公式12和公式13,计算获得输入语音信号的实序列XN的FFT计算结果。
[0072]
[0073]
[0074]
[0075]
[0076] 在一个实施例中,语音信号的处理点数可以有多种选择,在该语音信号处理的点数为512的情况下,获取到512点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将该偶数序列和该奇数序列,分别输入256点的复数信号实部和虚部;
[0077] 该语音信号处理的点数为256的情况下,获取到256点语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将该偶数序列和该奇数序列,分别输入128点的复数信号实部和虚部。
[0078] 图6是根据本发明实施例的一种语音特征提取的处理方法的流程图二,如图6所示,该方法包括如下步骤:
[0079] 步骤S602,将该频谱数据输入Mel滤波器,进行倒谱运算,提取该语音信号的语音包络特征;
[0080] 步骤S604,该语音包络特征进行编码后,输入神经网络训练模型进行语音识别。
[0081] 通过上述步骤,提取了语音信号的语音包络特征后,输入神经网络训练模型中处理该语音信号,在具体的实施方式中,可以将上述语音特征提取的处理方法在一个语音识别处理芯片进行处理,解决了复杂的FFT结构导致语音识别芯片的运转效率低下,对语音识别的时效性和功耗影响很大的问题,提高了语音识别的实效性和运行效率,降低了语音识别芯片的功耗。
[0082] 应于上述一种语音特征提取的处理方法,在本实施例中,还提供了一种语音特征提取的处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的设备较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0083] 在一个实施例中,提供了种语音特征提取的处理装置,图7是根据本发明实施例的种语音特征提取的处理装置的结构框图,如图7所示,该装置包括:
[0084] 抽取模块72,用于将语音信号的实数序列,按奇偶分开为偶数序列和奇数序列,将该偶数序列和该奇数序列,分别输入为复数信号的实部和该复数信号的虚部;
[0085] 变换模块74,用于将该复数信号输入预设快速傅里叶变换FFT框架模型,对该复数信号进行FFT变换输出该复数信号的信号频谱,其中,该预设快速傅里叶变换FFT框架模型包括一级基2^2模块和二级基2^3模块;
[0086] 实序列变换模块76,用于将该复数信号的信号频谱输入实序列快速傅里叶变换RFFT单元,获取该语音信号的频谱数据。
[0087] 通过上述装置,抽取模块72将语音信号的实数序列分开为偶数序列和奇数序列输入为复数信号的实部和虚部,变换模块74将该复数信号输入预设快速傅里叶变换FFT框架模型输出该复数信号的信号频谱,实序列变换模块76将信号频谱输入实序列快速傅里叶变换RFFT单元获取该语音信号的频谱数据,解决了复杂的FFT结构导致语音识别芯片的运转效率低下,对语音识别的时效性和功耗影响很大的问题,提高了语音识别的实效性和运行效率,降低了语音识别芯片的功耗。
[0088] 在本发明的实施例中,以Radix 2^2and radix 2^3为底的RFFT,利用复平面0度,90度,180度,270度的对称性和交换性,与j,-j相乘可以简化为交换虚实部的值,提高计算效率,同时保留了radix-2的butterfly架构,减少硬件复杂度,RFFT将输入n点实信号按奇偶抽取成n/2点的复数信号,再进行n/2的FFT运算,减小计算复杂度,
[0089] 在本发明的实施例中,结合了上述Radix 2^2and radix 2^3两个不同的处理方式,计算复杂度较现有radix2 fft算法(当前主流)得到了极大的提升,尤其是大量减少了旋转因子使用数量(number of twiddle factor access),复数乘法数量(number of complex multiplications),复数加法数量(number of complex additions),以及所有运算总数(number of OPS)。具体提升的效果如下表1所示:
[0090] 表1
[0091]
[0092] 根据本发明的一个实施例中,还提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现上述实施例的该方法的步骤。
[0093] 根据本发明的另一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例的该的方法的步骤。
[0094] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0095] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0096] 以上该实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。