基于基音周期模型的语音识别(编辑修改稿)内容摘要:
为窗长至少应大于两个基音周期。 窗长应该选的更长一些,避免第一最大峰值点与基音周期不一致,窗长长了就可以更清楚的了解自相关函数的波形,更有利于检测。 计算起来不方便,近年来高速数字信号处理 器 (DSP)的使用,使让这一算法简单有效。 N 越小,误差越大,好处是运算时较简便。 所以要选择适当的 N 值。 用短时平均能量进行清 /浊音的判断 在基音检测的同时,应进行清 /浊音判断,因为可将浊音 /清音特征看作与周期 /非周期相同的特征,所以可以简化问题,浊 /清音往往按自相关函数和预测误差的自相关函数的峰值来决定。 但是在无周期性的有声区内,这种方法不能起作用,所以就经常采用其他的参数来提高精确度。 辅助参数主要有 :语音信号能量;过零数;自相关函数;线性预测系数。 下面 采用语音信号能量法: 语音信号 { x ( n) } 的某帧信号的短时平均能量 En 的定义为 : 攀枝花学院本科毕业设计(论文) 2 基音检测常用的算法 7 nNnm mnwmxEn 12)]()([ () 式中 ,w ( n) 为窗函数。 N 为窗长。 令 h( n) = w2 ( n) ,则有 )(*)()( 212 nhnxmnhmxE Nnmn ) 窗口加权短时平均能量 En, 冲激相应 h(n)的选取直接影响着短时能量的计算。 通常 N的选择与语音的基音周期相关联系,一般要求窗长为几个基音周期的数量级。 由于语音基音频率范围为 50Hz到 500Hz,因此折中选择帧长为 10到 20ms。 通过En的高低来判定浊音向清音的转化。 语音信号的分帧是采用可移动的有限长度的窗口进行加权来实现。 选择的原则是:使得短时能量既能及时跟踪语音能量的缓变规律,同时又对语音振幅一个基音周期内的瞬时变化有显著平滑的作用。 本算法中窗口选择矩形窗: 1, 0 n N1 W(n)= ( ) 0, 其他 图 (a)原信号 (b)自相关函数攀枝花学院本科毕业设计(论文) 2 基音检测常用的算法 8 图 (a)原信号 (b)自相关函数 短时自相关函数的算法是基音周期估计常用的方法,特别适用于噪声环境下的基音提取。 语音的浊音信号具有准周期性,所以在自相关函数基音周期的整数倍的地方取最大值,计算相邻两个最大峰值之间的距离,就可以估计出基音周期。 观察浊音信号的自相关函数图,实际上,真正反映基音周期的只是少数几个峰,其它的多数峰都是由于声道的共振特性引起的。 由于丰富的谐波成分使得语音信号波形变得复杂。 常常会出现检测的结果是实际结果的 2 倍或者 1/2,就使得基音检测相当困难。 如图 (a)是一帧的原 始语音信号, (b)是经过自相关函数的语音信号,可以看出峰值是自相关函数在基音周期处,峰值点之间的间隔的平均值就是基音周期,如图 (b)所示可以看出自相关函数检测出的基音周期是原始信号基音周期的一半,因为谐波峰值点 (箭头所示 )的影响,就会出现上述缺点中所说的倍频现象。 平均幅度差函数法 短时平均幅度差函数的介绍,如果信号 x(n)是标准的周期信号,则相距为周期的整数倍的样点上的幅度值是相等的,二者差值为零。 对于浊音信号,在周期整数倍上,这个差值不为零,但也小,就可以采用计算短时平均幅度差函 数中两相邻谷值间的距离进行基音周期估值。 这里使用修正的短时平均幅度差函数加矩形窗,定义为: ,1,0,)()()( 10 Nn nxnxFn ..., N1 ( ) 攀枝花学院本科毕业设计(论文) 2 基音检测常用的算法 9 如果 x(n)具有周期 = P, 2P, ...时 , Fn( )具有最小值。 因 为 ()nF只需加、减法和取绝对值等的计算,比较简单。 很容易在硬件上实现,所以使得短时平均幅度差函数法在基音检测中使用得相对比较普遍。 实验证明:静音环境环境下或是噪声较小时, AMDF 法的检测结果比较好;语音环境恶劣或信噪比较低情况下,检测的效果就比较差,准确度不高。 如图 (a)是一帧原始语音信号, (b)是这帧语音信号的 AMDF 函数,从图中能看出 AMDF 法在基音周期处表现为谷低,通过计算这些谷低之间的间隔的平均值就可以得到基音周期。 如图 (a)是在这帧语音信号中加入信噪比是 2dB 噪声后所得到的波形,由图 (b)看出来了它的平均幅度差函数中有很多谐波分量,基音峰值点受到这些谐波分量的很大影响,在基音周期的判断时就有出入。 图 ( a)原信号 (b)平均幅度差函数 攀枝花学院本科毕业设计(论文) 2 基音检测常用的算法 10 图 (a)加噪信号 (b) 平均幅度差函数 本章小结 对于语音信号在检测之前先进行预处理即利用中心削波处理,然后详细讲解了 ACF,AMDF 的基音检测算法。 自相关函数先进行基音周期估计时先分清浊音和清音,再去寻找的是最大峰值点的位置,而 AMDF 寻找的是它的最小谷值点的位置;自相关函数法具有很好的抗噪性,但易受半频、倍频错误影响,而平均幅度差函数法只需加法、减法和取绝对值等计算,算法简单,运算量相比自相关函数法大为减少,易于硬件实现。 两种算法对纯净的语音信号都能取得较好的检测精度但 是由于语音信号的复杂多变,以及噪声等因素的影响,这些方法都有一定的局限性。 基于语音信号短时平稳性,它们的优点 是比较简单,主要应用于只需要平均基音周期作为参数的语音识别。 攀枝花学院本科毕业设计(论文 ) 3 基于 Matlab 基音周期的检测 11 3 基于 Matlab 基音周期的检测 语音文件的录制与读入 1. 利用 windows 附件中的录音机功能录制 23 秒的 .wav 语音文件,并以 a 为文件名保存到 Matlab/work 的文件夹中。 : 开始 /程序 /附件 /娱乐 /录音机。 “我到北京去” 录音(按 键), 然后到 23 秒时停止(按键); C:/Matlab/work 中,文件名为 , ,采样频率选 11KHz, 16 位,单声道; 攀枝花学院本科毕业设计(论文 ) 3 基于 Matlab 基音周期的检测 12 2. 打开 Matlab 并新建一 .m文件; .m文件中用 y=wavread(‘’)命令读入语音文件。 语音信号的采样和分帧 语音在 Matlab上的实现:以 ,在 Matlab上进行语音的采样与分帧。 打开 Matlab并新建一 .m文件,运行: x=wavread(39。 39。 )。 %读取声音文件 figure(1)。 stem(x,39。 .39。 )。 %显示声音信号的波形 得到的波形如下: “采样”是指从语音信号中选取一段样本,一般取样点数为帧长的整数倍。 短时分析是将语音信号分为一段一段的来处理,每一段就称为一“帧”。 分帧时需要对语音信号进行加窗操作,窗口长度的选择非常重要,窗口长度过短会使得分析窗内没有包含足够的数据点来进行周期判断,且短时能量变 化剧烈;窗口长度过长,短时能量是一段长时间的平均,不但不能反映出语音信号基频的细节变化部分,而且使得计算量增大。 窗口长度至少要大于基音周期的两倍。 一般窗长选为 120240点,分帧模块主要完成将取样模块中获得的语音样值点分为若干个语音帧。 攀枝花学院本科毕业设计(论文 ) 3 基于 Matlab 基音周期的检测 13 图 a1原始语音波形 对语音信号采样,通过 matlab对语音文件“ ”计算得知其语音长度为,若采样频率为 11KHz,共计 27500个采样点。 采样模块从采样频率为 11KHz的语音信号中截取 1秒到 2秒这一时间段,取了 11000个样点进行分析 ,取帧长为20ms,即每帧为 220个样点值,共分为 50帧。 打开 Matlab,运行: x=wavread(39。 39。 )。 %读取声音文件 x=x(11001:22020)。 figure(1)。 stem(x,39。 .39。 )。 %显示声音信号的波形 得到波形如下: 攀枝花学院本科毕业设计(论文 ) 3 基于 Matlab 基音周期的检测 14 图 a1采样信号波形 中心削波法的程序及其波形图: a=wavread(39。 39。 ); L=length(x)。 m=max(a)。 for i=1:L a(i)=a(i)/m。 end m=max(a)。 n=min(a)。 ht=(m+n)/2。 for i=1:L。 a(i)=a(i)ht。 end figure(1)。 subplot(2,1,1)。 plot(a,39。 k39。 )。 axis([0,1711,1,1])。 title(39。 中心削波前语音波形 39。 )。 攀枝花学院本科毕业设计(论文 ) 3 基于 Matlab 基音周期的检测 15 xlabel(39。 样点数 39。 )。 ylabel(39。 幅度 39。 )。 coeff=。 th0=max(a)*coeff。 for k=1:L。 if a(k)=th0 a(k)=a(k)th0。 elseif a(k)=(th0)。 a(k)=a(k)+th0。 else a(k)=0。 end end m=max(a)。 for i=1:L。 a(i)=a(i)/m。 end subplot(2,1,2)。 plot(a,39。 k39。 )。 axis([0,1711,1,1])。 title(39。 中心削波后语音波形’); xlabel(39。 样点数 39。 )。 ylabel(39。 幅度 39。 )。 得到的结果如下: 攀枝花学院本科毕业设计(论文 ) 3 基于 Matlab 基音周期的检测 16 图 中心削波前和中心削波后的波形 语音信号基音周期的检测 短时自相关函数法检测基音周期 对每一帧信号进行自相关运算程序如下: x=wavread(39。 39。 )。 n=220。 %取 20ms的声音片段,即 220个样点 for m=1:length(x)/n。 %对每一帧求短时自相关函数 for k=1:n。 Rm(k)=0。 for i=(k+1):n。 Rm(k)=Rm(k)+x(i+(m1)*n)*x(ik+(m1)*n)。 end end。基于基音周期模型的语音识别(编辑修改稿)
相关推荐
,而高频声波在空气中很快就衰减了。 (2) 植被和气流的吸收 声波在大气中传播同时还要受到地面植被吸收和气流吸收,植被声吸收系数在高频段较大,低频段很小,在传播距离小于 200m 时,植被吸收系数很小。 [4] 环境对声传播的影响 声波在大气中传播时,除了球面波发散引起的声衰减以及由于声波的反射、衍射和散射引起的损失外,还有由环境和其他条件引起的逾量衰减,它包括下述几种因素:雨、雪、雾等气象条件
族是否构成正交性 ,若信号损失部分后仍 能传递同样的信息量 ,则称此信号有冗余,冗 余的大小程度称为冗余度。 连续小 波变换的尺度因子 a和移位因子 b都是连续变化的 ,冗余度很大,为了减小冗余 度 ,可以将尺度因子a 和移位因子 b 离散化。 现在的问题是 ,怎样离散化才能得 到构成空间 )(2 RL 的正交小波基。 由连续小波变换的时 — 频分析得知 质因数不变 ,因此我们可以对尺度因子
{ if(k 5 == 0) { coutendl。 cout39。 \t39。 [k].name。 } else { cout39。 \t39。 [k].name。 } }将景点的名称打印在显示屏上,最后是一个 switch()。 的选择语句,提示游客根据选择来进入到相关的操作界面实现程序的基本功能。 查找介绍函数的详细设计 当游客选择了要查找景点的信息的介绍这一项功能的时候
1 kkkk =arctan() 同理 2020 年 拟合图如图 9所示 : 图 9 拟合可得 : z= + 倾 斜 (z轴与 xy 平面的夹角 ):对 z求一阶导 z39。 = +=tan( ) 7 7 0 . 9 6 7 7 0 . 9 8 771 7 7 1 . 0 2 7 7 1 . 0 4 7 7 1 . 0 6 7 7 1 . 0 8 7 7 1 .
变频技术的 核心技术之一。 从最初采用模拟电路完成三角调制波和参考正弦波比较,产生 正弦脉宽调制 SPWM 信号以控制功率器件的开关开始,到目前采用全数字化方 案,完成优化的实时在线的 PWM 信号输出。 从 PWM 模式优化中得到了诸多的优 化模式,其中以鞍形波 PWM 模式效果最佳。 由于 PWM 可以同时实现变频变压反 抑制谐波的特点,由此在交流传动乃至其它能量变换系统中得到广泛应用。
存密码 、并且通过 LCD 显示屏和 LED 灯直观地显示各密码锁各种状态,用继电器模拟锁的状态,用户可以自定义设置 6 位的数字密码,系统还具有报警功能,该系统基本 能够实现本文能够提出的功能和要求。 本设计也存在不足,缺陷一,单重的密码锁不能满足较高的安全需要。 缺陷二,该系统对电的依赖比较大,必须使 24C04 一直保持供电状态,当断电后不能正常工作。 缺点三,在按键按下时