MATLAB语音信号采集及处理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
%三次回声滤波器频谱图
figure(4)
subplot(2,1,1);plot(abs(YY2));
%经傅里叶变换之后的信号的幅值
title(' 幅值 ');
subplot(2,1,2);plot(angle(YY2));
%经傅里叶变换之后的信号的相位
回声:
程序:
[x,fs,bits]=wavread('D:\3yang.wav',[1 40000]);% 读取语音信号 n1=0:2000;
b=x(:,1);
% 产生单声道信号
N=3; yy2=filter(1,[1,zeros(1,80000/(N+1)),0.7],[b',zeros(1,40000)]);
%
求出语音信号的长度
y1=fft(x,n) ;
%
傅里叶变换
y2=fftshift(y1);
%
对频谱图进行平移
f=0:fs/n:fs*(n-1)/n;
%
得出频点
subplot(2,1,1);
plot(t/2,x)
%
做原始语音信号的时域图形
title(' 原始信号时域波形图 ');
subplot(2,1,2);
MATLAB课程设计报告
课题:语音信号采集与处理
目录
一、实践目的 ............................................................................................................3... 二、实践原理: ........................................................................................................3... 三、课题要求: ........................................................................................................3... 四、 MATLAB 仿真 ..................................................................................................4...
fy1=fft(f1); w1=0:fs/(N-1):fs;
figure(2); subplot(1,1,1); plot(w1,abs(fy1)); title(' 信息信号的频谱 '); f2=cos(22000*pi*t); figure(3); subplot(1,1,1); fy2 = fft(f2); N2=length(f2); w2=fs/N*[0:N-1]; plot(w2,abs(abs(fy2))); title(' 载波信号的频谱 ');
短时谱”对于非平稳信号 , 它是非周期
的, 频谱随时间连续变化 , 因此由傅里叶变换得到的频谱无法获知其在各个时刻的频谱特
性。如果利用加窗的方法从语音流中取出其中一个短断
, 再进行傅里叶变换 , 就可以得到该
语音的短时谱。
三、课题要求:
○1 利用 windows 自带的录音机或者其它录音软件,录制几段语音信号(要有几种不同
fp1=0; fs1=5000; As1=100; wp1=2*pi*fp1/fs; ws1=2*pi*fs1/fs; BF1=ws1-wp1; wc1=(wp1+ws1)/2; M1=ceil((As1-7.95)/(2.286*BF1))+1; N1=M1+1; beta1=0.1102*(As1-8.7); Window=(kaiser(N1,beta1)); b1=fir1(M1,wc1/pi,Window); figure(6); subplot(1,1,1);
f1=f1(:,1); f3=f1'.*f2; figure(4); subplot(1,1,1); fy3 = fft(f3); plot(w1,abs(abs(fy3))); title(' 已调信号的频谱 '); sound(f3,fs,nbits);
f4=f3.*f2; figure(5); subplot(1,1,1); fy4=fft(f4); plot(w1,abs(abs(fy4))); title(' 解调信号的频谱 '); sound(f4,fs,nbits);
plot(f,abs(y2));
title(' 原始信号频谱图 ')
仿真波形 :
○1 门铃:
○2 和弦: ○3 男女声:
2、调制与解调:
首先画出语音信号的时域波形,然后对语音信号进行频谱分析。在
Matlab 中可以利
用函数 fft 对信号行快速傅里叶变换 , 得到信号的频谱特性, 从而加深对频谱特性的理解。
figure(3)
subplot(2,1,1);plot(yy2);
% 三次回声滤波器时域波形
title(' 三次回声滤波器时域波形 ');
YY2=fft(yy2);
% 对三次回声信号做 FFT 变换
subplot(2,1,2);plot(n1(1:1000),YY2(1:1000)); title(' 三次回声滤波器频谱图 ');
一、实践目的
本次课程设计的课题为《基于 MATLAB的语音信号采集与处理》 ,学会运用 MATLAB的信
号处理功能,采集语音信号,并对语音信号进行滤波及变换处理,观察其时域和频域特性,
加深对信号处理理论的理解,并为今后熟练使用
MATLAB进行系统的分析仿真和设计奠定基
础。
此次实习课程主要是为了进一步熟悉对 matlab 软件的使用, 以及学会利用 matlab 对声
1、频谱分析: ...................................................................................................4... 2、调制与解调: ...............................................................................................5... 3、信号变化: ...................................................................................................8...
3、信号变化:
快放:
[x,fs,nbits]=wavread('D:\1huan.wav') w=2 ; M=w*fs; wavplay(x,M);
慢放:
[x,fs,nbits]=wavread('D:\1huan.wav') w=0.8 M=w*fs; wavplay(x,M);
倒放:
[x,fs,Nbits]=wavread('D:\1huan.wav'); y0=flipud(x); sound(y0,fs);
程序: clear; dt=1/44100; fs=44100; [f1,fs,nbits]=wavread('D:\1huan.wav'); figure(1); subplot(1,1,1); N=length(f1); t=0:1/fs:(N-1)/fs; plot(t,f1); title(' 信息信号的时域波形 ');
号进行快速傅立叶变换, 在一个窗口同时画出信号的时域波形图和频谱图,
分析语音信号的
频谱特点
程序:
fs =22050;
Nbits =16;
[x,fs,Nbits] =wavread('D:\matlab\22hexian.wav') ; %
读声音文件
n=length(x);
t=0:1/fs:(length(x)-1)/fs;
○6 对语音信号加噪,然后进行滤波,分析不同的滤波方式对信号的影响。 ○7 利用 MATLAB GUI 制作语音信号采集与分析演示系统。
四、 MATLAB 仿真
1、频谱分析:
用 WINDOWS下的录音机,用单声道录制一段音乐或声音,时间在
5S 内。然后 MATLAB
软件平台下, 利用函数 WAVREA对D 语音信号进行采样, 记住采样频率和采样点数。 对语音信
的声音,要有男声、女声)。
○2 对录制的语音信号进行频谱分析,确定该段语音的主要频率范围百度文库由此频率范围判
断该段语音信号的特点(低沉 or 尖锐)。
○3 利用采样定理,对该段语音信号进行采样,观察不同采样频率(过采样、欠采样、
临界采样)对信号的影响。
○4 对采集到的语音信号进行调制与解调,观测调制与解调前后信号的变化。 ○5 实现语音信号的快放、慢放、倒放、回声、男女变声。
freqz(b1,1,512); title('FIR 低通滤波器的频率响应 '); f4_low = filter(b1,1, f4); plot(t,f4_low); title(' 滤波后的解调信号时域波形 '); sound(f4_low,fs,nbits);
f5=fft(f4_low); figure(7); subplot(1,1,1); plot(w1,abs(f5)); title(' 滤波后的解调信号频谱 '); 仿真波形:
音信号这种实际问题进行处理,将理论应用于实际,加深对它的理解。
二、实践原理:
利用 MATLAB对语音信号进行分析和处理, 采集语音信号后, 利用 MATLAB软件平台进行
频谱分析; 并对所采集的语音信号加入干扰噪声, 对加入噪声的信号进行频谱分析, 设计合
适的滤波器滤除噪声,恢复原信号。语音信号的“
快放: ..........................................................................................................8... 慢放: ..........................................................................................................8... 倒放: ..........................................................................................................8... 回声: ..........................................................................................................8... 男女变声: ..................................................................................................9... 4、信号加噪 .....................................................................................................1..0. 5、用窗函数法设计 FIR 滤波器 .....................................................................1..1 FIR 低通滤波器: ......................................................................................1..2 FIR 高通滤波器: ......................................................................................1..3 FIR 带通滤波: ..........................................................................................1..4