下载此文档

基于MATLAB的语音信号加回声技术的实现.doc


文档分类:通信/电子 | 页数:约7页 举报非法文档有奖
1/7
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/7 下载此文档
文档列表 文档介绍
《数字信号处理》课程设计报告基于MATLAB的语音信号加回声技术的实现基于MATLAB的语音信号加回声技术的实现一、设计目的回波是现代通信中影响通信质量的噪声干扰。本课程设计要求用MATLAB语言编程实现回波信号的产生。在进一步娴熟运用matlab这种以数值计算和数据图示为主的计算机软件的同时,加深对声频信号中噪声的认识。掌握MATLAB程序设计,为以后的毕业设计奠定一定的基础。设计任务提取一段音频信号,用MATLAB自带的函数功能读取语音信号,通过延迟叠加产生回波信号信号来模拟回声。三、设计原理1,语音信号采集:使用现成的“*.wav”格式的声音信号,matlab会自动进行16khz的采样。2,声音信号的读取:使用MATLAB中的wavread()函数读取,记录信号,采样率fs。3,带回波信号的产生:利用MATLAB中的基本矩阵计算产生原始信号的延迟以及只有一个衰减延迟的回波信号附加到原始信号回波信号。四、[n]的产生1、制作一段wav格式的音频,然后把它存放到对应程序段所在的磁盘中,用MATLAB函数wavread()将其提取出来绘制其时域波形对此音频信号用FFT作谱分析,用plot()函数绘制其图形。信号采集程序如下:%声音信号的提取[x,fs]=wavread('');%把语音信号进行加载入Matlab仿真软件平台中wavplay(x,fs);%回放语音信号。或者sound(x,fs)figure(1);N=length(x);%求语音信号的长度subplot(3,1,1);plot(x(1:N));title('原始信号波形');y=fft(x,N);%傅立叶变换subplot(3,1,2);plot(abs(y));title('原始信号幅值');subplot(3,1,3);plot(angle(y));title('原始信号相位');2,产生的原是信号的波形,以及其幅度、相位谱如下所示:[n]的产生1,参数的设置:,因此,。,即最小延迟量N=*fs=*16000=3200。在已有声音信号x的基础上产生带回声的声音信号,可以表达为在于娜信号的基础上叠加其延时的分量。假设只有一个回声的情况下,可简化其模型为y(n)=x(n)+ax(n-N)A为反射系数;N为延迟时间。这里设N=3200a=,利用矩阵置零产生x的延迟,以及得到y信号:为了保证图像的完整性,对读取的信号先延长4000个采样点,将原始信号延长3200个采样点,然后再在后面补上800个点,得到如下代码:%回波的产生[x,fs]=wavread('');%把语音信号进行加载入Matlab仿真软件平台中。N=length(x);%语音信号的长度。x1=x(1:N);x2=x(1:N);x1=[x1,zeros(1,4000)];%zeros(1,4000)产生1行3000列全零矩阵加到x1后面。x2=[zeros(1,3200),*x2,zeros(1,800)];%N+3200+x=N+4000,得x=800y=x1+x2;%加入回音的信号。figure(2);subplot(3,1,1);

基于MATLAB的语音信号加回声技术的实现 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数7
  • 收藏数0 收藏
  • 顶次数0
  • 上传人花花世界
  • 文件大小40 KB
  • 时间2019-05-19