一、获取代码方式

获取代码方式1:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

获取代码方式2:
完整代码已上传我的资源:【语音合成】基于matlab线性预测系数和预测误差语音合成【含Matlab源码 564期】

备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、线性预测合成简介

线性预测合成方法是目前比较简单和实用的一种语音合成方法,它以其低数据率、低复杂度、低成本,受到特别的重视。20世纪60年代后期发展起来的L.PC语音分析方法可以有
效地估计基本语音参数,如基音、共振峰,谱、声道面积函数等,可以对语音的基本模型给出精确的估计, 而且计算速度较快。因此, LPC语音合成器利用LPC语音分析方法, 通过分析自然语音样本, 计算出LPC系数, 就可以建立信号产生模型, 从而合成出语音。线性预测合成模型是一种“源一滤波器”模型,由白噪声序列和周期脉冲序列构成的激励信号,经过选通、放大并通过时变数字滤波器(由语音参数控制的声道模型),就可以再获得原语音信号。这种参数编码的语音合成器的原理框图如图10-2所示。图10-2所示的线性预测合成的形式有两种:一种是直接用预测器系数a构成的递归型合成滤波器;另一种合成的形式是采用反射系数k构成的格型合成滤波器。

直接用预测器系数a,构成的递归型合成滤波器机构如图10-3所示。用该方法定期地改变激励参数u(n)和预测器系数a,能合成出语音。这种结构简单而直观,为了合成一个语音样本,需要进行p次乘法和p次加法。合成的语音样本由下式决定:

式中,a;为预测器系数;G为模型增益;u(n)为激励;合成语音样本为s(n);p为预测器

阶数。
直接式的预测系数滤波器结构的优点是简单、易于实现,所以曾被广泛采用,其缺点是合成语音样本需要很高的计算精度。这是因为这种递归结构对系数的变化非常敏感,系数的微小变化都可以导致滤波器极点位置发生很大变化,甚至出现不稳定现象。所以,由于预测系数a,的量化所造成的精度下降,使得合成的信号不稳定,容易产生振荡的情况。而且预测系数的个数p变化时,系数a,的值变化也很大,很难处理,这是直接式线性预测法的缺点。
另一种合成的形式是采用反射系数构成的格型合成滤波器。合成语音样本由下式决定:

式中,G为模型增益;u(n)为激励;k,为反射系数;b,(n)为后向预测误差;p为预测器
阶数。
由式(10-2)可看出,只要知道反射系数、激励位置(即基音周期)和模型增益就可由后向误差序列迭代计算出合成语音。合成一个语音样本需要(2p-1)次乘法和(2p-1)次加法。采用反射系数k,的格型合成滤波器结构,虽然运算量大于直接型结构,却具有一系列优点:其参数k,具有|k,|<1的性质,因而滤波器是稳定的;同时与直接结构形式相比,它对有限字长引起的量化效应灵敏度较低。此外,基音同步合成需对控制参数进行线性内插,以得到每个基音周期起始处的值。然而预测器系数本身却不能直接内插,但可以证明,可对部分相关系数进行内插,如果原来的参数是稳定的,则结果必稳定。无论选用哪一种滤波器结构形式, LPC合成模型中所有的控制参数都必须随时间不断修正。
在实际进行语音合成时,除了构成合成滤波器之外,还必须在有浊音的情况下,将一定基音周期的脉冲序列作为音源;在清音的情况下,将白噪声作为音源。由此可知,必须进行浊音/清音的判别和确定音源强度。
对于基音周期的检测,上述章节已经进行了相关介绍。对于语音合成来说,常采用去掉
共振峰影响后的最后一级残差信号eP(前向预测误差)的自相关函数的方式。这个残差信
号的自相关函数也叫变形自相关函数r,(n),它除了可用来检测基音周期之外,也可用来区别浊音/清音等。在r,(0)之后找出r,(n)取峰值时的T,即从n=0开始,搜索基音周期可能存在的3~15ms的区间,从而求出这个周期。同样对于浊音/清音的判别方法,也可以采用误差信号r,(n)。采用r.(n)的一个方法是利用r,(T)/r,(0)这个比值,如果是浊音的话,r.(T)则相当于r.(n)的一个极值。所以可以设定r,(T)/r,(0)的比值在0.18以下为清音,在0.25以上为浊音。

三、部分源代码

clear all; clc; close all;[x, fs] = audioread('girl.wav');           % 读入数据文件

四、运行结果

五、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]韩纪庆,张磊,郑铁然.语音信号处理(第3版)[M].清华大学出版社,2019.
[2]柳若边.深度学习:语音识别技术实践[M].清华大学出版社,2019.

【语音合成】基于matlab线性预测系数和预测误差语音合成【含Matlab源码 564期】相关推荐

  1. 【Matlab语音处理】声音信号频谱分析仪【含GUI源码 325期】

    一.代码运行视频(哔哩哔哩) [Matlab语音处理]声音信号频谱分析仪[含GUI源码 325期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊, ...

  2. 【Matlab图像检索】综合特征图像检索【含GUI源码 395期】

    一.代码运行视频(哔哩哔哩) [Matlab图像检索]综合特征图像检索[含GUI源码 395期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...

  3. 【Matlab肌电信号】肌电信号处理【含GUI源码 966期】

    一.代码运行视频(哔哩哔哩) [Matlab肌电信号]肌电信号处理[含GUI源码 966期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余继周,杨 ...

  4. 【Matlab条形码识别】二维条形码识别【含GUI源码 607期】

    一.代码运行视频(哔哩哔哩) [Matlab条形码识别]二维条形码识别[含GUI源码 607期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...

  5. 【Matlab电力负荷预测】粒子群优化支持向量机短期电力负荷预测【含GUI源码 751期】

    一.代码运行视频(哔哩哔哩) [Matlab电力负荷预测]粒子群优化支持向量机短期电力负荷预测[含GUI源码 751期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 ...

  6. 【Matlab生物电信号】生物电信号仿真【含GUI源码 684期】

    一.代码运行视频(哔哩哔哩) [Matlab生物电信号]生物电信号仿真[含GUI源码 684期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]董兵,超于毅,李 ...

  7. 【Matlab语音分析】语音信号分析【含GUI源码 1718期】

    一.代码运行视频(哔哩哔哩) [Matlab语音分析]语音信号分析[含GUI源码 1718期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊,郑铁 ...

  8. 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】

    一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...

  9. 【Matlab人脸识别】BP神经网络人脸识别(含识别率)【含GUI源码 891期】

    一.代码运行视频(哔哩哔哩) [Matlab人脸识别]BP神经网络人脸识别(含识别率)[含GUI源码 891期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...

  10. 【Matlab人脸识别】形态学教室人数统计(带面板)【含GUI源码 1703期】

    一.代码运行视频(哔哩哔哩) [Matlab人脸识别]形态学教室人数统计(带面板)[含GUI源码 1703期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]孟 ...

最新文章

  1. 流程图函数’怎么画_原来函数可以这么美!
  2. 计算机学院心理节活动,计算机学院成功举办 “说出你的故事” 心理交流互助活动...
  3. Linux学习笔记十四周一次课(5月9日)
  4. GML、SVG、VML的比较
  5. 图像处理之直方图均衡MATLAB代码实现
  6. Unity 5 来了!引领开发引擎进入次时代
  7. JavaFX游戏(四连环)
  8. 语录系统2.0随机一段话源码
  9. 计算机学科专业基础综合961,2017年北京航空航天大学计算机学院961计算机学科专业基础综合之数据结构考研强化模拟题...
  10. python pyecharts map不显示_pyecharts 地图不显示问题
  11. 我是不是得工作恐惧症了
  12. 推荐几个rpm包下载网站
  13. 在哪可以找c语言编程的答案,c语言程序设计课后习题答案.doc
  14. 智能选择:单位转换(unit conversion)
  15. PhotoShop制作gif动态广告效果示例
  16. 华为笔记本都是Linux版本,华为笔记本装上linux系统而非Windows系统 这是为何
  17. SAP系统开发里程碑 2022 刘欣
  18. wtg linux双系统,说走就走的WTG系统 国民好物aigo固态硬盘让你随时随地双系统
  19. K_A08_004 基于 STM32等单片机驱动MX1919模块按键控制直流电机正反转加减速启停
  20. 东华助手 v1.6.5

热门文章

  1. webpack配置路径及hash版本号,利用html-webpack-plugin自动生成html模板
  2. SELECT COUNT用法
  3. ajax.net 的使用方法--摘自网上
  4. python并发编程之多进程
  5. 20200113每日一句
  6. 20191210每日一句
  7. unity 插件 color picker htc手柄控制,扣动扳机生成三维点线
  8. Atitit 过去五年的技术趋势与没落技术聚合去重 Attilax认为重要的取出了移动端特有的等。。运维等,,只保留了开发部分的趋势 目录 1. 技术趋势 1 2. 3. 不建议的技术 4 4
  9. Atititi. naming spec 联系人命名与remark备注指南规范v5 r99.docx
  10. Atitit 图像处理 常用8大滤镜效果 Jhlabs 图像处理类库 java常用图像处理类库