课程设计基于matlab的语音信号录制采集和分析的程序设计内容摘要:

文介绍的是语音信号的傅里叶分析法。 因为语音波是一个非平稳过程,因此 适用于周期、瞬变或平稳随机信号的标准傅里叶变换不能用来直接表示语音信号,而应该用短时傅里叶变换对语音信号的频谱进行分析,相应的频谱称为“短时谱 ” MATLAB 课程设计说明书 6 FFT 即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。 在 MATLAB 的信号处理工具箱中函数 FFT 和 IFFT 用于快速傅立叶变换和逆变换。 函数 FFT 用于序列快速傅立叶变换 ,其 调用格式 为y=fft(x), 其中, x 是序列, y 是序列的 FFT, x 可以为一向量或矩阵,若 x 为一向量, y 是 x 的 FFT 且 和 x 相同长度 ; 若 x 为一矩阵,则 y 是对矩阵的每一列向量进行 FFT。 如果 x 长度是 2 的幂次方,函数 fft 执行高速基- 2FFT 算法 , 否则 fft 执行一种混合基的离散傅立叶变换算法,计算速度较慢。 函数 FFT 的另一种调用格式 为 y=fft(x,N), 式中, x, y意义同前, N为正整数。 函数执行 N点的 FFT, 若 x 为向量且长度小于 N,则函数将 x 补零至长度 N; 若向量 x 的长度大于 N,则函数截短 x使之长度为 N; 若 x 为矩阵,按相同方法对 x进行处理。 图 原始语音信号的频谱 MATLAB 课程设计说明书 7 4 语音信号的加噪处理 所谓 高斯 噪声,是指没有任何时 迟相关时间序列,它只一个参数,代表噪声的强度,也即迟滞为 0 的滞后自协方差,而其余滞后自协方差统统为零。 标准 高斯 噪声:则是满足 N( 0, 1)标准正态分布的 高斯 噪声。 斯白噪声:如果一个噪声,它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。 热噪声和散粒噪声是高斯白噪声。 MATLAB 中产生高斯白噪声非常方便,可以直接应用 3个函数,一个是 WGN,另一个是 AWGN,还有一个 randn, WGN 用于产生高斯白噪声, AWGN 则用于在某一信号中加入高斯白噪声, randn 直接产生高斯分布序列。 1. WGN:产生高斯白噪声 y = wgn(m,n,p) 产生一个 m行 n列的高斯白噪声的矩阵, p 以 dBW为单位指定输出噪声的强度。 y = wgn(m,n,p,imp) 以欧姆 (Ohm)为单位指定负载阻抗。 y = wgn(m,n,p,imp,state) 重置 RANDN 的状态。 在数值变量后还可附加一些标志性参数: y = wgn(„,POWERTYPE) 指定 p的单位。 POWERTYPE 可以是 39。 dBW39。 , 39。 dBm39。 或 39。 linear39。 线性强度 (linear power)以瓦特 (Watt)为单位。 y = wgn(„,OUTPUTTYPE) 指定输出类型。 OUTPUTTYPE 可以是 39。 real39。 或39。 plex39。 2. AWGN:在某一信号中加入高斯白噪声 y = awgn(x,SNR) 在信号 x中加入高斯白噪声。 信噪比 SNR 以 dB 为单位。 x的强度假定为 0dBW。 如果 x 是复数,就加入复噪声。 y = awgn(x,SNR,SIGPOWER) 如果 SIGPOWER 是数值,则其代表以 dBW 为MATLAB 课程设计说明书 8 单位的信号强度;如果 SIGPOWER 为 39。 measured39。 ,则函数将在加入噪声之前测定信号强度。 y = awgn(x,SNR,SIGPOWER,STATE) 重置 RANDN 的状态。 y = awgn(„,POWERTYPE) 指定 SNR 和 SIGPOWER 的单位。 POWERTYPE可以是 39。 dB39。 或 39。 linear39。 如果 POWERTYPE 是 39。 dB39。 ,那么 SNR 以 d。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。