3.3 语音信号的时频分析
利用MATLAB中的“wavread”命令来读入(采集)语音信号,将它赋值给某一向量。再对其进行采样,记住采样频率和采样点数。下面介绍Wavread 函数几种调用格式。 1、y=wavread(file)
功能说明:读取file所规定的wav文件,返回采样值放在向量y中。 2、[y,fs,nbits]=wavread(file)
功能说明:采样值放在向量y中,fs表示采样频率(hz),nbits表示采样位数。 3、y=wavread(file,N)
功能说明:读取钱N点的采样值放在向量y中。 4、y=wavread(file,[N1,N2])
功能说明:读取从N1到N2点的采样值放在向量y中。 接下来,对语音信号speech off.wav进行采样。其程序如下: [y,fs,nbits]=wavered ( speech off.wav );
功能说明:把语音信号加载入MATLAB 仿真软件平台中
然后,画出语音信号的时域波形,再对语音信号进行频谱分析。MATLAB提供了快速傅里叶变换算法FFT计算DFT的函数fft,其调用格式如下:
Xk=fft(xn,N)
参数xn为被变换的时域序列向量,N是DFT变换区间长度,当N大于xn的长度时,fft函数自动在xn后面补零。,当N小于xn的长度时,fft函数计算xn的前N个元素,忽略其后面的元素。
第 6 页 共 23页