好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

短时语音预处理.pdf

3页
  • 卖家[上传人]:E****
  • 文档编号:108553573
  • 上传时间:2019-10-24
  • 文档格式:PDF
  • 文档大小:148.40KB
  • / 3 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 短时语音处理短时语音处理 Wavread: [y, Fs, nbits] = wavread(filename) y:采样数据 Fs:采样频率 nbits:每个编码数据的比特位 读取语音信号:读取语音信号: [wavsignal,fs,bit]=wavread('*.wav'); 分帧处理说明: 语音信号因为是准稳态信号,在处理时常把信号分帧,每帧长度约 10ms-30ms,在这一区 间内把语音信号看作为稳态信号,而只有稳态的信息才能进行信号处理 Framelength:帧长帧长 若采样率为8KHz,则帧长一般可取10ms-30ms(视具体采样率等其他因素), 此处可设置为256 Frameshift:帧移帧移 帧移后的每一帧信号都有上一帧的成分,防止两帧之间的不连续语音信号虽然短时可以 认为平稳,但是由于人说话并不是间断的,每帧之间都是相关的,加上帧移可以更好地与 实际的语音相接近一般帧移取帧长的 1/3-1/2此处则可为 128 帧长与帧移关系图: Framenumber:帧数帧数 总帧长: framemember=fix((length(wavsignal)-frmelength+frameshift)/frameshift); fix: 向0靠拢取整,即最后一帧若不足帧移则舍去。

      Framesignal:帧信号帧信号 求取帧信号(i为所对应的第i帧语音信号): framesignal= wavsignal((i-1)*frameshift+1:(i- 1)*frameshift+framelength); 对帧信号加汉明窗:对帧信号加汉明窗: h=hamming(framelength); framesignal=framesignal.*h; 由于直接对信号(加矩形窗)截断会产生频率泄露,为了改善频率泄露的情况,加非矩形 窗,一般都是加汉明窗,因为汉明窗的幅频特性是旁瓣衰减较大,主瓣峰值与第一个旁瓣 峰值衰减可达40db 测试代码: L=64; wvtool(hamming(L)) signal:信号信号 对信号的归一化处理 signal=signal/max(abs(signal)); Energy:短时能量短时能量 E= 𝑁 ∑ 𝑛 = 1 𝑥[𝑛]2 energy=framesignal.*framesignal; sfft:短时傅里叶变换短时傅里叶变换 即对帧信号framesignal做傅里叶变换 自相关:自相关: (1)自相关函数 对于离散的语音信号x(n),它的自相关函数定义为: R(k)=Σx(n)x(n-k), 如果信号x(n))具有周期性,那么它的自相关函数也具有周期性,而且周期与信号x(n)的 周期性相同。

      自相关函数提供了一种获取周期信号周期的方法在周期信号周期的整数倍上, 它的自相关函数可以达到最大值,因此可以不考虑起始时间,而从自相关函数的第一个最大值 的位置估计出信号的基音周期,这使自相关函数成为信号基音周期估计的一种工具 (2)短时自相关函数 语音信号是非平稳的信号,所以对信号的处理都使用短时自相关函数短时自相关函数 是在信号的第N个样本点附近用短时窗截取一段信号,做自相关计算所得的结果 Rm(k)=Σx(n)x(n-k) 式中,n表示窗函数是从第n点开始加入 Matlab code: for k=1:length(framesignal) Rm(k)=0; for n=(k+1):framelength Rm(k)=Rm(k)+framesignal(n)*framesignal(n-k); end end 语音测试文件: 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.