描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787512425750
本书可作为从事语音信号处理的本科高年级学生、研究生或科研工程技术人员的辅助读物,也可作为从 事信号处理研究与应用的科研工程技术人员的参考用书。
前 言
我与计算机打交道已有40多年。在20世纪70年代初开始接触计算机,早使用的是晶体管的108乙机,用5孔电报纸带上机,用机器语言编程,调试一个小程序可能需要数周甚至数月。随着技术的发展,我曾使用过Nova1200、z80、Intel8086 / 80286 / 80386等,而编程使用的计算机语言也从汇编到BASIC、FORTRAN 等。数字信号处理基础的是快速傅里叶变换和数字滤波器,但在不同的机种用不同的编程语言都需要编制相应的基础性处理程序,这些都极其耗费时间和精力。
21世纪初我偶然接触到MATLAB语言,立刻被它的功能所吸引。MATLAB除了编程简单外,还有强大的工具箱(全世界的精英都为工具箱做贡献)。一些基础性的处理程序都已包含在工具箱中,不需要用户去从事这方面的开发工作,这样节省了大量的重复性的工作。对于用户来说,只须考虑怎样利用工具箱来实现自己的想法和算法。MATLAB的程序大部分不需要编译、链接等一套烦琐的过程,输入程序后就能运行。MATLAB是一种方便、实用、高效的计算机语言。
互联网的发展形成了很多以MATLAB为基础的科技讨论社区。在这些论坛社区里集中了来自社会各界和高校各学科各专业的MATLAB使用者、爱好者。我从2002年开始在国内一些成立较早的论坛社区如研学论坛和振动论坛等的信号处理版块中参与各类问题的解答。MATLAB中文论坛成立后,同样在信号处理版块经常与各种程度的MATLAB使用者打交道,解答使用者通常会遇到的一些问题。我发现在对语音信号进行处理的过程中,有好多用户对于怎么把MATLAB应用于语音处理不甚熟悉,这些因素促使我萌生了编写本书的想法。
运用MATLAB处理语音信号至少需要掌握三方面的知识:语音信号处理的基础理论、数字信号处理的基础理论和MATLAB的编程技术。本书的目的是帮助本科高年级学生和硕士研究生尽快掌握怎么把MATALB应用于语音信号的分析和合成中去,因此书中介绍了语音信号处理的基础知识,介绍了语音分析和合成的基本方法,以及相应的MATLAB函数和程序,读者以这些方法、函数和程序为基础,进一步去解决自己的问题,可少走一些弯路。书中介绍的各种方法都还有继续改善和拓展的空间,使它们更加完善,取得更好的效果。本书也适合于从事数字信号处理的广大高校师生和科研工作人员作为参考用书。但阅读本书的读者应掌握数字信号处理的基本知识,以及MATLAB编程的基本技能。
本书介绍语音信号分析和合成处理的基础、原理、方法和应用。全书共10章,具体内容如下:
第1章介绍语音信号处理的基础知识,如发音器官与听觉器官、语音信号的数学模型和语音信号感知特性等。
第2章和第3章介绍语音信号特征分析的基本处理技术,包括时域分析、频域分析、同态分析、DCT和MFCC分析、小波和小波包变换的分析以及EMD分析等方法。
第4章介绍线性预测分析方法。介绍了线性预测的模型、方程的建立、线性预测的自相关和自协方差解、线性预测的格型法解、由线性预测导出的其他参数和线谱对分析法等。
第5章介绍了带噪语音信号及预处理。介绍了信噪比的概念和带噪语音信号的产生,以及小二乘法消除趋势项和数字滤波等。
第6章介绍语音端点的检测方法。首先从能量和过零率导出通用的双门限单参数和双参数的端点检测,接着介绍相关法、方差法、谱距离法、谱熵法、能零比和能熵比法、小波变换和EMD分解法等的端点检测,后给出在低信噪比下端点检测的方法。
第7章介绍语音信号的减噪。介绍了利用自适应滤波器减噪、基本谱减法和改进谱减法的减噪,以及维纳滤波减噪等方法。
第8章介绍语音信号的基音检测技术。首先介绍了在基音检测中的端点检测和预滤波,接着分别介绍了倒谱法、自相关法、平均幅度差函数法和线性预测等方法的基音检测。这些方法中虽在基音检测后都进行了平滑处理,但在基音周期中都会有野点发生。这里提出了主体延伸的基音检测方法,并详细说明了该方法的原理和处理步骤,改善了基音检测的结果。本章的后介绍了带噪语音的基音检测技术。
第9章介绍语音的共振峰检测。首先介绍了在共振峰检测中的预加重和端点检测,接着介绍了倒谱法和线性预测法的共振峰检测,并在线性预测的基础上进一步介绍了简单LPC和改进的LPC对连续语音的共振峰检测。本章后介绍了HHT法的共振峰检测。
第10章介绍语音信号的合成算法。首先介绍了数据接叠的三种方法,在此基础上介绍了频谱参数的语音合成、线性预测系数和预测误差的语音合成、线性预测系数和基音参数的语音合成、基音和共振峰的语音合成。通过合成技术又介绍了语音信号的变速和变调算法,后介绍了波形拼接合成技术以及时域基音同步叠加(TD PSOLA)的合成方法。
在附录A 中以主体延伸基音检测法为例,说明了程序的调试和修改方法,以帮助读者调试和修改程序使之成为适合自己的应用函数和程序。
本书中除第1章外的各章均附有函数和程序。书中经常会调用的一些函数(自编函数或取自其他应用工具箱中的函数),已集中在basic_tbx工具箱中,在运行本书的程序前请把该工具箱设置(用set path设置)在工作路径下。当要运行EMD处理时,要把emd工具箱设置在工作路径下;当要运行主体延伸基音检测时,要把Pitch_ztlib工具箱设置在工作路径下;当要进行时域基音同步叠加语音合成时,要把psola_lib工具箱设置在工作路径下;当要应用本书提供的语音数据时,好把speech_signal设置在工作路径下。本书的所有函数和程序都在MATLAB R2009a版本下调试通过。
本书的读者作者在线交流平台为http://www.ilovematlab.cn/forum
173 1.html。本书作者将通过该平台与广大读者交流,解决大家在阅读本书过程中遇到的问题,分享彼此的学习经验,从而达到共同进步的目的。
在编写本书的过程中,作者得到了MATLAB中文论坛创始人张延亮(math)博士的指导和帮助,也得到了北京航空航天大学出版社陈守平编辑的支持与鼓励,中国语音学会会长、中国社会科学院人类学与民族学研究所鲍怀翘教授对本书的编写提出了不少宝贵意见,在此向他们表示衷心的感谢。
由于编写时间仓促,加之作者学识所限,书中如有错误和疏漏之处,恳请广大读者和各位专家批评指正。
评论
还没有评论。