一种NVOC低速窄带声码器的语音数据处理方法与流程

文档序号:23724648发布日期:2021-01-26 14:59阅读:866来源:国知局
一种NVOC低速窄带声码器的语音数据处理方法与流程
一种nvoc低速窄带声码器的语音数据处理方法
技术领域
[0001]
本发明属于声码器数字语音压缩技术领域,尤其是一种nvoc低速窄带声码器的语音数据处理方法。


背景技术:

[0002]
随着通信技术的高速发展,频率和资源显得尤为宝贵,与模拟语音通信系统相比,数字语音通信系统具有抗干扰性强、保密性号、易于集成等特点,而在这其中低速声码器担当着重要角色。
[0003]
目前,语音编码算法大都建立在人类发声器官的声学模型基础上。人的发声器官由声门、声道和其它辅助器官组成。实际语音的产生过程是声门产生的振动被声道滤波器调制后经口鼻等辐射所得,可以用如下公式表示为
[0004]
s(n)=h(n)*e(n)
[0005]
其中,s(n)表示语音信号,h(n)为声道滤波器单位冲激响应,e(n)为声门振动信号。
[0006]
为了清晰地表示语音信号,可以从频谱特点上分别描述声门和声道,如何高效量化声门和声道的特征参数,这是参数编码这一类算法要达到的目标。
[0007]
声码器属于参数编码一类,低速窄声码器就是压缩语音信号的数字表示,用较少的比特(bit)还原出与原是语音最为相似语音的方法。随着数字信号处理硬件的效率猛增,加上声码器的加速研究,使得声码器已经大量使用。
[0008]
现有的低速窄带声码器包括两种码率:2.4kbps、2.2kbps(用于加密),信道fec码率为1.2kbps,语音编解码和fec都以8k采样20毫秒为一帧进行编码和解码。
[0009]
但仍存在如下问题:(1)利用时域相关性提取基因参数,容易算错;(2)由于声音不经过降噪,当有噪音时提取的声音参数不准确;(3)方言声音失真;(4)由于窄带低速编码压缩比较高,当信道质量不佳存在误码时语音质量低。


技术实现要素:

[0010]
本发明的目的在于克服现有技术的不足,提出一种设计合理、语音质量高且对方言适应性强的nvoc低速窄带声码器的语音数据处理方法。
[0011]
本发明解决其现实问题是采取以下技术方案实现的:
[0012]
一种nvoc低速窄带声码器的语音数据处理方法,包括以下步骤:
[0013]
步骤1、编码端对原始语音数字信号的初始化配置和分析处理,首先对原始语音数字信号进行去噪声处理,然后判断当前语音信号是否为话音,若当前语音信号为话音,则提取话音中的基音后计算出基音周期和各子带清音和浊音数值参数;
[0014]
步骤2、在步骤1计算得到的基音周期、清音和浊音数值参数的基础上对线谱对、基音值、增益参数、残差补偿增益和码本矢量的参数进行提取和量化,得到声音量化参数;
[0015]
步骤3、提取步骤2的声音量化参数后,将该声音量化参数合成语音,经过压噪再提
升语音质量,并当参数恢复失败后或语音合成失败后进行声音重建。
[0016]
而且,所述步骤1具体步骤包括:
[0017]
(1)对原始语音数字信号s(n)进行去噪声处理,得到去噪声后的语音数据s1(n)和原始数据s(n)的0~4000hz的声音频谱特性;
[0018]
(2)采用vad激活检测技术判断去噪声处理后的当前语音信号是否为话音,得到话音数据s2(n);
[0019]
(3)提取话音数据s2(n)的基音;
[0020]
(4)计算出基音周期和各子带清音和浊音数值参数。
[0021]
而且,所述步骤1第(1)步的具体步骤包括:
[0022]

采用高通滤波器对语音数据去除直流成分,提高高频分量,对低频进行衰减;
[0023]

加窗信号,采用窗长为n的海明窗,通过交叠傅里叶变换以得到在频谱上的能量分布,得到去噪声后的语音数据s1(n)和原始语音数字信号s(n)的0~4000hz的声音频谱特性。
[0024]
而且,所述步骤1第(2)步的具体方法为:
[0025]
根据人耳的听觉特性,对去噪声后的语音数据s1(n)进行子带滤波并计算子带信号的电平,根据下示公式估计信噪比,和预先设定的门限值比较,进而判断当前语音信号是否是话音:
[0026][0027]
式中,a是当前帧的信号电平值,b为根据前几帧估计得到的当前信号电平值;
[0028]
而且,所述步骤1第(3)步的具体方法为:
[0029]
使用截止频率为bhz的低通滤波器对话音数据s2(n)进行低通滤波,并采用二阶逆滤波器对低通滤波后的语音数据进行逆滤波后,根据如下公式计算二阶逆滤波的输出信号的自相函数,提取基音:
[0030][0031]
其中,n为所述步骤1所述(1)提及窗函数窗长,s
w
(i)为所述步骤1第(3)步所述二阶逆滤波输出信号。
[0032]
而且,所述步骤1第(4)步的具体步骤包括:
[0033]

将频域上0~4000等间隔的分为5个频段,分别为[0-500]hz,[500-1000]hz,[1000-2000]hz,[2000-3000]hz,[3000-4000]hz,利用如下公式计算每个区间内带通信号的自相关函数:
[0034][0035]
其中,“t”为连续时间自变量,”τ”为输入信号时延“*”是卷积算符,(
·
)
*
f
*
()为取共轭;
[0036]

将同一时间函数在瞬时t和t+a的两个值相乘积的平均值作为时间t的函数,它是信号与延迟后信号之间相似性的度量,当延迟时间为零时,则成为信号的均方值,此时它
的值最大,用该函数的最大值作为浊音强度,计算出各子带清浊音数值;
[0037]
而且,所述步骤2的具体步骤包括:
[0038]
(1)采用截止频率为ahz的高通滤波器对经过去噪后的语音数据滤波得到s3(n),加窗,计算自相关系数,用levinson-durbin递归算法求解线谱对参数,并采用三级矢量量化方案对得到线谱对参数进行参数量化;
[0039]
(2)将步骤1第(3)步中计算得到的基音值量化:将包含基音值的整数区间线性映射到[0~z]内,将z个数用m1比特表示;
[0040]
(3)将步骤1第(2)步中话音检测到的语音数据s2(n)经过二阶逆滤波器得到去除共振峰的影响的预测误差信号r(n),其中二阶你滤波器的系数为a1、a2≈1,增益参数用r(n)的rms表示,量化在对数域完成;
[0041]
(4)将步骤1第(4)步的计算频域分段后带通信号值的相关函数得到的最大值,量化为m2比特;
[0042]
(5)计算残差补偿增益,使用量化后的lsf参数计算线性预测系数,构成预测误差滤波器对输入语音s2(n)滤波,得到残差信号,残差信号长度为160点;
[0043]
(6)使用窗长为160点的哈明窗是对预测残差加窗,将加窗信号补0至512点,对其进行512点的复数fft,再利用频谱峰点检测算法找到前x次谐波对应的傅立叶变换值;
[0044]
(7)设p是量化基音,给定第i个谐波的初始位置为512i/p,峰点检测寻找以各次谐波的初始位置为中心,宽度在512/p个频率抽样内的最大峰值,该宽度被截短成一个整数;搜索的谐波次数限定为x和p/4中的较小者;谐波对应的系数随后被归一化,对此x维矢量,采用一个m3∈[0,48]比特的矢量码本进行量化,量化结果为m3∈[0,48]比特。
[0045]
而且,所述步骤3的将声音量化参数合成语音,的具体方法为:
[0046]
通过分成几个频带分别形成激励后相加通过合成滤波器,得到合成语音,然后再对合成语音进行后置滤波,得到解码合成语音数据,其中合成滤波器h(z)和后置滤波器h
pf
(z)的z变换传递函数如下:
[0047]
h(z)=1/a(z)
[0048][0049]
其中a(z)为1-az-1
,a为滤波器系数,上述所有公式中的z为复变量,具有实部和虚部,可令z=e
jw
,γ=0.56,β=0.75,μ由反射系数决定,μ的值取决于
[0050]
而且,在所述步骤1之前还包括如下步骤:
[0051]
初始化配置编码端,包括速率选择、编码端所用参数、系数以及滤波器编码端算法的初始化配置。
[0052]
而且,在所述步骤3之前还包括如下步骤:
[0053]
初始化配置解码端,包括速率选择、以及解码端算法的参数、滤波器系数的初始化配置。
[0054]
本发明的优点和有益效果:
[0055]
1、本发明是通过分析语音时域上的连续性和频域上的相关性而实现的算法,能在
低速率的情况下提供优良的语音质量、能在丢失300hz以下语音频率的应用中提供良好的语音质量且对方言有很强的适应性。
[0056]
2、本发明分两阶段进行实际参数的提取,更准确和更少的运算量,更准确的参数提取提高了声音质量,更少的运算量为使用者节省运算资源。
[0057]
3、本发明在误码时具有声音重建功能,该功能是基于过去参数计算当前参数,提升了误码时的声音质量。
[0058]
4、本发明通过噪声抑制功能抑制了噪声,提高了有噪音时提取的声音参数准确性,保证了声音质量。
[0059]
5、本发明采用基于各种地方话训练的码本,对方言适应性强。
[0060]
6、本发明是基于标准代码进行开发,规范可持续,易于移植到各种硬件平台。
附图说明
[0061]
图1为本发明的工作原理图。
具体实施方式
[0062]
以下结合附图对本发明实施例作进一步详述:
[0063]
本发明的一种nvoc低速窄带声码器的语音数据处理方法的输入参数是采样率为8000hz(每秒采集的语音信号样本数),分辨率为16比特的线性pcm语音数字信号;时域上,每20毫秒分析,频域上0~4000分多个频段进行分析。
[0064]
一种nvoc低速窄带声码器的语音数据处理方法,如图1所示,包括以下步骤:
[0065]
步骤1、初始化配置编码端,包括速率选择、编码端所用参数、系数以及滤波器编码端算法的初始化配置;
[0066]
步骤2、编码端对原始语音数字信号的初始化配置和分析处理:首先对原始语音数字信号进行去噪声处理,然后判断当前语音信号是否为话音,若当前语音信号为话音,则提取话音中的基音后计算出基音周期和各子带清音和浊音数值参数;
[0067]
所述步骤2具体步骤包括:
[0068]
(1)噪声抑制:对原始语音数字信号s(n)进行去噪声处理,得到噪声抑制后的语音数据s1(n)和原始数据s(n)的0~4000hz的声音频谱特性;
[0069]
所述步骤2第(1)步的具体步骤包括:
[0070]

采用高通滤波器对语音数据去除直流成分,提高高频分量,对低频进行衰减;
[0071]

加窗信号,采用窗长为n的海明窗,通过交叠傅里叶变换以得到在频谱上的能量分布,得到去噪声后的语音数据s1(n)和原始语音数字信号s(n)的0~4000hz的声音频谱特性。
[0072]
(2)话音检测:采用vad激活检测技术判断去噪声处理后的当前语音信号是否为话音,得到话音数据s2(n);
[0073]
所述步骤2第(2)步的具体方法为:
[0074]
根据人耳的听觉特性,对去噪声后的语音数据s1(n)进行子带滤波并计算子带信号的电平,根据下示公式估计信噪比,和预先设定的门限值比较,进而判断当前语音信号是否是话音:
[0075][0076]
式中,a是当前帧的信号电平值,b为根据前几帧估计得到的当前信号电平值;
[0077]
(3)基因估计第一阶段:提取话音数据s2(n)的基音;
[0078]
所述步骤2第(3)步的具体方法为:
[0079]
使用截止频率为bhz的低通滤波器对话音数据s2(n)进行低通滤波,并采用二阶逆滤波器对低通滤波后的语音数据进行逆滤波后,根据如下公式计算二阶逆滤波的输出信号的自相函数,提取基音:
[0080][0081]
其中,n为所述步骤1所述(1)提及窗函数窗长,s
w
(i)为所述步骤2第(3)步所述二阶逆滤波输出信号。
[0082]
在本实施例中,在频域,语音信号具有峰值和峰值的频率是基音的倍数关系,初步计算出可能的基音值或基音范围值;在时域,语音具有短时自相关性,若当原信号具有周期性,那么它的自相关函数也具有周期性,并且周期性与原信号的周期相同。且在周期整数倍时会出现峰值。清音信号无周期性,它的自相关函数会随着帧长的增大呈衰减趋势,浊音具有周期性,它的自相关函数在基因周期整数倍上具有峰值,使用截止频率为b hz的低通滤波器对语音数据s2(n)进行低通滤波,目的去除高频信号对基音提取的影响,其次采用二阶逆滤波器对低通滤波后的语音数据进行逆滤波,去除共振峰的影响,计算二阶逆滤波的输出信号的自相函数,提取基音:
[0083][0084]
在该帧的自相关函数中,除去第一个最大值后,该帧的基音值即为采样率/出现最大值时的帧长。
[0085]
(4)多子带清浊音判决第一阶段:计算出各子带清浊音数值
[0086]
所述步骤2第(4)步的具体步骤包括:
[0087]

将频域上0~4000等间隔的分为5个频段,分别为[0-500]hz,[500-1000]hz,[1000-2000]hz,[2000-3000]hz,[3000-4000]hz,利用如下公式计算每个区间内带通信号的自相关函数:
[0088][0089]
其中,“*”是卷积算符,(
·
)
*
f
*
()为取共轭;
[0090]

将同一时间函数在瞬时t和t+a的两个值相乘积的平均值作为延迟时间t的函数,它是信号与延迟后信号之间相似性的度量,当延迟时间为零时,则成为信号的均方值,此时它的值最大,用该函数的最大值作为浊音强度,计算出各子带清浊音数值;
[0091]
步骤3、在步骤2计算得到的基音周期、清音和浊音数值参数的基础上对线谱对、基
音值、增益参数、残差补偿增益和码本矢量的参数进行提取和量化,得到声音量化参数;
[0092]
所述步骤3的具体步骤包括:
[0093]
(1)采用截止频率为a hz的高通滤波器对经过去噪后的语音数据滤波得到s3(n),加窗长为n2的汉明窗,计算自相关系数,用levinson-durbin递归算法求解线谱对参数,并采用三级矢量量化方案对得到线谱对参数进行参数量化,得到m1比特;
[0094]
(2)将步骤2第(3)步中计算得到的基音值量化:将包含基音值的整数区间线性映射到[0~z]内,将z个数用m2比特表示;
[0095]
(3)将步骤2第(2)步中话音检测到的语音数据s2(n)经过二阶逆滤波器得到去除共振峰的影响的预测误差信号r(n),其中二阶你滤波器的系数为a1、a2≈1,激励增益参数用r(n)的rms(平方的均值平凡根)表示,量化在对数域完成;
[0096]
(4)将步骤2第(4)步的计算频域分段后带通信号值的相关函数得到的最大值(即清浊音状态值),量化为m3比特;
[0097]
(5)计算频谱补偿增益,使用量化后的线性预测系数,构成预测误差滤波器对输入语音s2(n)滤波,得到残差信号,残差信号长度为160点;
[0098]
(6)使用窗长为160点的哈明窗是对预测残差加窗,将加窗信号补0至512点,对其进行512点的复数fft,再利用频谱峰点检测算法找到前x次谐波对应的傅立叶变换值;
[0099]
(7)设p是量化基音,给定第i个谐波的初始位置为512i/p,峰点检测寻找以各次谐波的初始位置为中心,宽度在512/p个频率抽样内的最大峰值,这个宽度被截短成一个整数。要搜索的谐波次数限定为x和p/4中的较小者。这些谐波对应的系数随后被归一化,对此x维矢量,采用一个m4∈[0,48]比特的矢量码本进行量化,量化结果为m4∈[0,48]比特。
[0100]
步骤4、初始化配置解码端,包括速率选择(2.2kbps还是2.4kbps)、以及解码端算法的参数、滤波器系数等的初始化配置;
[0101]
步骤5、提取步骤3的声音量化参数后,将该声音量化参数合成语音,经过压噪再提升语音质量,并当参数恢复失败后或语音合成失败后进行声音重建。
[0102]
所述步骤5的具体方法为:
[0103]
每一帧信号编码后的结果均为含线谱对、增益、基因周期、清浊音、矢量码本等量化成bit位后组成的数值。这些参数中,基音周期及清浊音值决定解码端用来合成语音信号的激励源,而根据上述编码端步骤1第(4)步,由于清浊音涵盖5个频段,故通过分成几个频带分别形成激励后相加通过合成滤波器及后置滤波,得到解码合成语音数据。其中,如果是清音帧,即清浊音数值bit全为0,采用随机数作为激励源,如果是浊音帧,则选取一周期性脉冲序列通过一个全通滤波器来生成激励源,激励源幅度受增益参数加权,样点长度取决于基因周期大小。全通滤波器h1(z)、合成滤波器h2(z)和后置滤波器h
pf
(z)的z变换传递函数如下:
[0104][0105]
[0106][0107]
其中a(z)为1-az-1
,a为滤波器系数,由编码端步骤3线谱对参数经p变换得到,p变换为高等数学变换,上述所有公式中的z为复变量,具有实部和虚部,可令z=e
jw
,γ=0.56,β=0.75,μ由反射系数决定,μ的值取决于
[0108]
可理解的,编解码的算法是对应的,解码端的输入参数格式和编码端的输出参数格式也是对应的,解码器解码一帧输出160个采样值,调用时需要和编码器速率统一。
[0109]
需要强调的是,本发明所述实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1