zoukankan      html  css  js  c++  java
  • 手机对话中的语音处理(三)


    本系列文章由 @YhL_Leo 出品。转载请注明出处。
    文章链接: http://blog.csdn.net/yhl_leo/article/details/50359479


    上一篇:博客手机对话中的语音处理(二)讲述了有声语音利用LP模型进行语音合成的整个流程,本文将讲述LP预測合成技术在无声语音(即噪声)中的使用。

    2.2 30毫秒无声语音的LP合成

    从上篇博客的语音波形图中选取一部分30毫秒的无声语音信号(这里选择2000~2239这段信号):

    input_frame=speech(2000:2239);
    plot(input_frame);



    图 1 语音波形

    绘制出其功率谱密度图。须要强调的是,我们如今处理的是噪声(并不是语音),所以採用平均周期频谱来估算功率谱密度(相比一个简单的周期频谱而言频率分辨率减少)。这里使用Matlab中的pwlech函数,默认将语音帧分为8个子帧,相邻之间重叠度为50%。

    pwelch(input_frame);



    图 2 功率谱密度图

    相同使用LP模型,p=10合成一个新的帧。

    合成的时候,使用all-pole滤波(使用预測残差的标准差σ作为其标准差)处理高斯白噪声帧:

    [ai, sigma_square]=lpc(input_frame,10);
    sigma=sqrt(sigma_square);
    excitation=randn(240,1);
    synt_frame=filter(sigma,ai,excitation);
    plot(synt_frame);



    图 3 合成语音波形

    相同绘制出其功率谱密度图:

    pwelch(synt_frame);



    图 4 合成音功率谱密度图

    非常明显,尽管合成音的波形与原音的波形基本没什么共同点,可是功率谱密度图还有些类似。

    这就是LP模型的噪声合成分析~

  • 相关阅读:
    平衡的括号(栈)
    二叉树遍历
    Ohana Cleans Up0101
    Missing number
    Django框架之模板层
    Django框架之路由层、视图层
    Django框架
    Django初识
    前端之bootstrap
    前端之BOM、DOM
  • 原文地址:https://www.cnblogs.com/zhchoutai/p/8323820.html
Copyright © 2011-2022 走看看