基于希尔伯特包络谱的基音频率估计方法与流程
本发明涉及一种属于信号处理技术领域的语音基音频率估计方法,更确切地说,本发明涉及一种基于希尔伯特包络谱的基音频率估计方法。
背景技术:
发浊音时声带以准周期的方式振动,声带振动的频率称为基音频率。基音频率估计在许多语音信号处理领域起着重要的作用,广泛用于语音识别、语音情感识别、语音编码以及病理语音检测等领域。这些应用的性能取决于基音频率估计的准确性。目前存在的基音频率估计方法可大致分为时域和变换域方法。时域方法大多是基于自相关函数、互相关函数和平均幅度差函数的。变换域方法经常在频域实现,常用的方法有基于谐波模型的方法。
基音频率只存在于浊音部分,所以在进行基音频率估计之前要进行浊音和非浊音检测。浊音和非浊音检测是在语音信号中判别出声带振动的区域,即浊音信号。非浊音包括清音和静音部分。浊音和非浊音检测在语音识别、语音编码、语音增强等领域具有广泛的应用。浊音和非浊音检测检测方法可大致分为时域方法和谱域方法。时域方法利用和浊音相关的特征,比如能量、周期、短时自相关、过零率等。谱域方法利用浊音谱的谐波特征。另外还有基于统计模型的方法,包括隐马尔科夫模型、高斯混合模型、深度神经网络模型等。
由于频率和幅度的非平稳变化导致浊音信号是准周期性的,这增大了基音频率估计的难度。不同人,在不同情绪下所产生的浊音信号的基音频率变化范围很大,使得基音频率的准确估计更不容易。有效的浊音检测和准确的基音频率估计对提高基音频率估计方法的性能至关重要。
技术实现要素:
本发明所要解决的技术问题是克服了现有基音频率估计方法在基音频率变化范围大时不能准确跟踪基音频率的变化的问题,提供了一种基于希尔伯特包络谱的基音频率估计方法。
为解决上述技术问题,本发明是采用如下技术方案实现的,所述的基于希尔伯特包络谱的基音频率估计方法的步骤如下:
1)输入语音信号:
输入语音信号用s[n]表示,采样频率fs,为减少低频偏差,利用y[n]=s[n]-s[n-1]进行差分计算得到差分信号y[n];
2)计算差分群延迟因子;
3)计算差分群延迟因子的希尔伯特包络谱:
利用
4)提取差分群延迟因子的希尔伯特包络谱的相关特征;
5)浊音和非浊音检测:
把输入语音信号s[n]取成和f[l]一样长,分别对s[n]和f[l]进行分帧,帧长均为l,帧移均为
6)利用差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度的均值特征对浊音进行基音频率估计。
技术方案中所述的计算差分群延迟因子是指:
1)对差分信号y[n]进行分帧,帧长为ns个采样点,帧移1个采样点,帧总数为nf;
2)为了在频域获得光滑的谱,在时域对一帧信号加两次零时间窗,零时间窗函数为
3)为了减少分帧产生的截断效应,再一次加窗,得到加窗的信号x[n],这里窗函数为
4)利用g(k)=xr(k)yr(k)+xi(k)yi(k)得到群延迟因子g(k),其中,k=0,1,2,…,m-1,xr(k)和xi(k)为信号x[n]的m点离散傅立叶变换系数的实部和虚部,yr(k)和yi(k)为信号nx[n]的m点离散傅立叶变换系数的实部和虚部,其中n=0,1,…,ns-1;
5)对群延迟因子g(k)进行两次差分计算,得到差分群延迟因子c(k),
技术方案中所述的提取差分群延迟因子的希尔伯特包络谱的相关特征是指:
1)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度分别为p1、p2和p3,则前三个谱峰幅度的均值特征为
2)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱峰对应的频率分别为f1、f2和f3,则对应频率的谱峰强度的均值特征为
3)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的第一个谱峰和第二个谱峰幅度的差值为d1,第二个谱峰和第三个谱峰幅度的差值为d2,则前三个谱峰幅度差值的均值特征为
4)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱谷幅度分别为q1、q2和q3,则前三个谱谷幅度的均值特征为
5)设
6)每一帧得到的5个特征分别为f1、f2、f3、f4和f5,对于一段语音信号所有帧利用
7)把归一化后的5个特征
技术方案中所述的利用差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度的均值特征对浊音进行基音频率估计是指:
1)利用计算差分群延迟因子、计算差分群延迟因子的希尔伯特包络谱与提取差分群延迟因子的希尔伯特包络谱的相关特征步骤对浊音的差分信号v[n]计算差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度的均值特征fv1;
2)一段浊音信号得到的特征为fv1[i],i=1,2,…,nvf,nvf为浊音的差分信号v[n]分得的帧数,对fv1[i]进行5点中值平滑和3点中值平滑,平滑后用fv1-p[i]表示;
3)利用nadaraya-watson核加权平均函数
4)平滑后的谱峰幅度的均值特征fv1-pp(j),j=1,2,…,nvf具有周期性的峰值,如果两个连续峰值位置间隔小于2ms,则为虚假谱峰,去掉;
5)去掉虚假谱峰的均值特征fv1-pp(j),j=1,2,…,nvf相邻两个峰值位置的间隔对应基音周期,求其倒数,得到浊音信号的基音频率的估计。
与现有技术相比本发明的有益效果是:
1.本发明所述的基于希尔伯特包络谱的基音频率估计方法利用差分群延迟因子的希尔伯特包络谱的相关特征分别进行浊音检测和浊音的基音频率估计,简化了算法,使其便于实现。
2.本发明所述的基于希尔伯特包络谱的基音频率估计方法能很好地解决基音频率变化较大时基音频率估计不准确的问题,提高了基音频率估计方法的性能,对改善语音情感识别、病理语音检测方法的性能具有重要的意义。
附图说明
下面结合附图对本发明作进一步的说明:
图1是本发明所述基于希尔伯特包络谱的基音频率估计方法的流程框图;
图2是高兴情感语音中一段浊音的时域波形图;
图3是本发明所述基于希尔伯特包络谱的基音频率估计方法对图2所示浊音估计得到的基音频率图。
具体实施方式
下面结合附图对本发明作详细的描述:
参阅图1,本发明所述的基于希尔伯特包络谱的基音频率估计方法的步骤如下:
1.输入语音信号
输入语音信号用s[n]表示,采样频率fs,为减少低频偏差,利用y[n]=s[n]-s[n-1]进行差分计算得到差分信号;
2.计算差分群延迟因子
1)对差分信号y[n]进行分帧,帧长为ns个采样点,帧移1个采样点,帧总数为nf;
2)为了在频域获得光滑的谱,在时域对一帧信号加两次零时间窗,零时间窗函数为
3)为了减少分帧产生的截断效应,再一次加窗,得到加窗的信号x[n],这里窗函数为
4)利用g(k)=xr(k)yr(k)+xi(k)yi(k)得到群延迟因子g(k),其中,k=0,1,2,…,m-1,xr(k)和xi(k)为信号x[n]的m点离散傅立叶变换系数的实部和虚部,yr(k)和yi(k)为信号nx[n]的m点离散傅立叶变换系数的实部和虚部,其中n=0,1,…,ns-1;
5)对群延迟因子g(k)进行两次差分计算,得到差分群延迟因子c(k),
3.计算差分群延迟因子的希尔伯特包络谱
利用
4.提取差分群延迟因子的希尔伯特包络谱的相关特征
1)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度分别为p1、p2和p3,则前三个谱峰幅度的均值特征为
2)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱峰对应的频率分别为f1、f2和f3,则对应频率的谱峰强度的均值特征为
3)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的第一个谱峰和第二个谱峰幅度的差值为d1,第二个谱峰和第三个谱峰幅度的差值为d2,则前三个谱峰幅度差值的均值特征为
4)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱谷幅度分别为q1、q2和q3,则前三个谱谷幅度的均值特征为
5)设
6)每一帧得到的5个特征分别为f1、f2、f3、f4和f5,对于一段语音信号所有帧利用
7)把归一化后的5个特征
5.浊音和非浊音检测
把输入语音信号s[n]取成和f[l]一样长,分别对s[n]和f[l]进行分帧,帧长均为l,帧移均为
6.利用差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度的均值特征对浊音进行基音频率估计
1)利用步骤2、步骤3和步骤4中1)对浊音的差分信号v[n]计算差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度的均值特征fv1;
2)一段浊音信号得到的特征为fv1[i],i=1,2,…,nvf,nvf为浊音的差分信号v[n]分得的帧数,对fv1[i]进行5点中值平滑和3点中值平滑,平滑后用fv1-p[i]表示;
3)利用nadaraya-watson核加权平均函数
4)平滑后的谱峰幅度的均值特征fv1-pp(j),j=1,2,…,nvf具有周期性的峰值,如果两个连续峰值位置间隔小于2ms,则为虚假谱峰,去掉;
5)去掉虚假谱峰的均值特征fv1-pp(j),j=1,2,…,nvf相邻两个峰值位置的间隔对应基音周期,求其倒数,得到浊音信号的基音频率的估计。
实施例
语音信号来自中科院自动化所录制的casia情感语音库,选取一句高兴的情感语音,用matlab仿真软件进行仿真实验,实验步骤如下:
1.输入语音信号
输入语音信号用s[n]表示,采样频率fs=16000hz,为减少低频偏差,利用y[n]=s[n]-s[n-1]进行差分计算得到差分信号y[n];
2.计算差分群延迟因子
1)对差分信号y[n]进行分帧,帧长为ns个采样点,帧移1个采样点,帧总数为nf,ns=48;
2)为了在频域获得光滑的谱,在时域对一帧信号加两次零时间窗,零时间窗函数为
3)为了减少分帧产生的截断效应,再一次加窗,得到加窗的信号x[n],这里窗函数为
4)利用g(k)=xr(k)yr(k)+xi(k)yi(k)得到群延迟因子g(k),其中,k=0,1,2,…,m-1,xr(k)和xi(k)为信号x[n]的m点离散傅立叶变换系数的实部和虚部,yr(k)和yi(k)为信号nx[n]的m点离散傅立叶变换系数的实部和虚部,其中n=0,1,…,ns-1;
5)对群延迟因子g(k)进行两次差分计算,得到差分群延迟因子c(k),
3.计算差分群延迟因子的希尔伯特包络谱
利用
4.提取差分群延迟因子的希尔伯特包络谱的相关特征
1)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度分别为p1、p2和p3,则前三个谱峰幅度的均值特征为
2)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱峰对应的频率分别为f1、f2和f3,则对应频率的谱峰强度的均值特征为
3)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的第一个谱峰和第二个谱峰幅度的差值为d1,第二个谱峰和第三个谱峰幅度的差值为d2,则前三个谱峰幅度差值的均值特征为
4)在频率[fmin,fmax]范围内,设差分群延迟因子的希尔伯特包络谱的前三个谱谷幅度分别为q1、q2和q3,则前三个谱谷幅度的均值特征为
5)设
6)每一帧得到的5个特征分别为f1、f2、f3、f4和f5,对于一段语音信号所有帧利用
7)把归一化后的5个特征
5.浊音和非浊音检测
把输入语音信号s[n]取成和f[l]一样长,分别对s[n]和f[l]进行分帧,帧长均为l,帧移均为
6.利用差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度的均值特征对浊音进行基音频率估计
1)利用步骤2、步骤3和步骤4中1)对浊音的差分信号v[n]计算差分群延迟因子的希尔伯特包络谱的前三个谱峰幅度的均值特征fv1;
2)一段浊音信号得到的特征为fv1[i],i=1,2,…,nvf,nvf为浊音的差分信号v[n]分得的帧数,对fv1[i]进行5点中值平滑和3点中值平滑,平滑后用fv1-p[i]表示;
3)利用nadaraya-watson核加权平均函数
4)平滑后的谱峰幅度的均值特征fv1-pp(j),j=1,2,…,nvf具有周期性的峰值,如果两个连续峰值位置间隔小于2ms,则为虚假谱峰,去掉;
5)去掉虚假谱峰的均值特征fv1-pp(j),j=1,2,…,nvf相邻两个峰值位置的间隔对应基音周期,求其倒数,得到浊音信号的基音频率的估计。
图2为高兴情感语音中的一段浊音的时域波形图。从图2中可以看出,这段浊音信号周期性不是很好,幅度变化较大,周期变化明显,即基音频率变化较大。图3是利用本发明所述的基于希尔伯特包络谱的基音频率估计方法估计得到的图2的基音频率。从图3可以看出,本发明方法能很好的对周期性不是很好的浊音信号进行基音频率估计,并且能准确跟踪基音频率的变化。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除