版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选文档一、课程设计题目去除干扰蜂鸣音1.目的:把握信号时频域分析方法,正确理解采样定理,精确理解滤波器的概念。2.内容:供应一个包含某人说话语音片段的声音文件,但该语音信号被一个包含有几个谐波重量的蜂鸣信号干扰了。用Matlab的wavread命令读取该声音文件。留意,该命令可以同时得到声音文件的采样率和采样位宽,请查阅Matlab的挂念文件。(1) 用快速傅立叶变换(FFT)计算并画出声音信号的频谱,列写出蜂鸣信号的谐波频率。(2) 思考如何将这些蜂鸣音去除?将去除了蜂鸣音的语音片段播放出来,认真倾听并写下语音片段中人物所说的话。留意:由于只能播放实信号,因此记得提取信号的实部。Matla
2、b命令:wavread, wavplay, fft, fftshift, fir1, filter, plot, figure.二、设计思路用waveread()函数读取音频和其采样率和采样位宽,对读取的音频信号使用fft()函数进行快速傅立叶变换并绘出得到的频谱。观看频谱分析噪声(蜂鸣信号)的谐波频率分布,选择合适的滤波模式将噪声信号的谐波滤去,便可以得到去除噪声后的人声。设计滤波器的频域特性便成了除去噪声并留下原声的关键,我们留意到所学的采样定理以及一维sinc函数(辛格函数),然而汉宁窗可以看作是3个矩形时间窗的频谱之和,或者说是 3个型函数之和,而括号中的两项相对于第一个谱窗向左、右各
3、移动了/T,从而使旁瓣相互抵消,消去高频干扰和漏能。它适用于非周期性的连续信号。利用它的选择特性使用fir1()建立一个汉宁窗函数,并用filter()函数进行滤波,去除噪声部分。最终用play()函数播放音频检查效果。三、设计过程1.音频的读取和分析先将原始音频文件读入,audio0, Fs, nbits = wavread('C:UsersAdministratorDesktopsignalbuzz.wav');%按路径读取音频存入audio0变量,并用Fs变量记录采样率,nbits变量记录采样位宽。其中,Fs=11025 #采样率为11025Hznbits=32 #采样带
4、为32p0=audioplayer(audio0,Fs);%将audio0载入音频播放器play(p0);%并进行播放subplot(2,1,1);%分屏绘图plot(audio0);%绘制原始音频时域图,如下图所示title('时域');%标注题目k=fft(audio0,Fs);%对原始音频进行快速傅立叶变换subplot(2,1,2); plot(abs(k);%绘制原始音频频域图title('频域'); 频域图如图1下图所示 图1 原声时域频域图像此时,在时域中杂乱分布的声音信号变换到频域中将噪声谐波所分布的频域中显得尤为清楚简洁,这样就不难发觉干扰信号
5、主要分布在0-1000Hz以内,由于听到的噪声比人声大得多,我们又画出了,声音强度的时域和频域图像,figure;subplot(2,1,1);plot(audio0); plot(20*log10(abs(audio0)/max(abs(audio0); %绘制原始音频声音强度的频域图ylabel('分贝/dB');xlabel('时间/ms');title('时域');k=fft(audio0,Fs);subplot(2,1,2);plot(abs(k);plot(20*log10(abs(abs(k)/max(abs(abs(k); %绘制
6、原始音频声音强度的频域图ylabel('分贝/dB');xlabel('频率/Hz');title('频域');figure;subplot(2,1,1);plot(abs(k);ylabel('振幅/A');xlabel('频率/Hz');set(gca,'XLim',0 1000);set(gca,'XTick',0:20:1000);得到如图2所示的声音强度的时域和频域图像 图2 原声声音强度时域频域图像从频域图中我们仍旧发觉了四个特别尖峰,再次明显的证明白干扰信号主要分布在0
7、-1000Hz以内;为了跟清楚地和观看干扰信号的频域分布状况,我们进一步绘制这一范围的图像,进行局部深化争辩。plot(abs(k);%重绘图像set(gca,'XLim',0 1000);%更改显示范围为0-1000set(gca,'XTick',0:20:1000);%更改坐标步长为20 图3 噪声局部频域放大图观看图像可发觉,干扰信号的谐波频率为:220Hz、440Hz、660Hz、880Hz,在放大后发觉噪声信号为4个几乎对称的三角波,而非单位冲击,结合以上几个图,我们分析得到干扰信号主要分布在0-1000Hz以内,而人声是大部分分布于大于1000Hz区
8、间的,由此我们想到了对频率具有选择特性的滤波器,且此处需要设计一个高通滤波器,以将位于0-1000Hz以内的噪声滤掉,留下大于1000Hz人声信号。2.滤波器的设计由于干扰信号的谐波频率为:220Hz、440Hz、660Hz、880Hz,而人类说话的频率或许在300-3400Hz,而干扰信号格外大,需要一个滤波器来实现将大约高于1000Hz的信号保留,低于1000Hz的信号滤掉,观看分贝图,发觉大部分噪声分布在40dB以内,因此阻带最小衰减不应小于40dB依据上表显示各种窗函数的参数特点,选择hanning窗滤波,利用其可以使旁瓣相互抵消频域特性,据此可设定合适的参数设计一个hanning窗函
9、数高通滤波器。fp=1000;fs=900;%通带频率fp,阻带频率fswp=2*fp*pi/Fs;ws=2*fs*pi/Fs;%归一化边界频率wc=(wp+ws)/2/pi;%归一化中心频率wdp=wp-ws;#过渡带宽N=ceil(12*pi/wdp);%由窗函数主瓣宽和过渡带宽,求得窗函数最小长度N=N+mod(N,2);%高通滤波器N必为奇数HPfir=fir1(N,wc,'high',hanning(N+1);%设计高通hanning窗滤波器HPfir该滤波器的主要参数为:通带边界为1000Hz,阻带边界为900Hz,阻带衰减不小于40dB。接下来在时域和频域直观地呈
10、现其滤波特性,再依据滤波效果对其参数做微调,figure;%新建图像subplot(2,1,1);plot(HPfir);%绘制滤波器时域图像title('滤波器时域');subplot(2,1,2);plot(abs(fft(HPfir);%绘制滤波器频域图像title('滤波器频域');得到图4所示的滤波器时域和频域特性图。 图4 基于汉宁函数的高通滤波器时域频域图由图4可见该滤波器的截止频率大约在900Hz-1000Hz之间,完全符合设计的目的,滤波器设计完成之后,对原始音频信号进行滤波处理:audio1=filter(HPfir,1,audio0);%使
11、用filter函数对原声做一维数字滤波p1=audioplayer(audio1,Fs);figure;%新建滤波后的图像subplot(2,1,1);plot(audio1); %绘制滤波后的时域图像title('滤波后时域');k0=fft(audio1,Fs);%对滤波后的信号做快速傅里叶变换subplot(2,1,2);plot(abs(k0);%绘制滤波后的频域图像title('滤波后频域');此时,我们得到了如图5所示的滤波后的时域频域图像 图5 滤波后时域频域图最终由于处理后的声音信号幅度较小,听不清楚,需要对音频信号进行增幅处理。audio1=a
12、udio1*10;%增幅处理p1=audioplayer(audio1,Fs);play(p1);%播放处理后的音频至此,设计结束,我们获得了去除噪音后较为清楚的、完整的人声信号。四、源代码audio0, Fs, nbits = wavread('C:UsersxufanyunDesktopsignalbuzz.wav');p0=audioplayer(audio0,Fs);subplot(2,1,1);plot(audio0);ylabel('振幅/A');xlabel('时间/ms'); title('时域');k=fft(a
13、udio0,Fs);subplot(2,1,2);plot(abs(k);ylabel('振幅/A');xlabel('频率/Hz');title('频域');figure;subplot(2,1,1);plot(audio0); plot(20*log10(abs(audio0)/max(abs(audio0); ylabel('分贝/dB');xlabel('时间/ms');title('时域');k=fft(audio0,Fs);subplot(2,1,2);plot(abs(k);plot(
14、20*log10(abs(abs(k)/max(abs(abs(k); ylabel('分贝/dB');xlabel('频率/Hz');title('频域');figure;subplot(2,1,1);plot(abs(k);ylabel('振幅/A');xlabel('频率/Hz');set(gca,'XLim',0 1000);set(gca,'XTick',0:20:1000);fp=1000;fs=900;wp=2*fp*pi/Fs;ws=2*fs*pi/Fs;wc=(wp
15、+ws)/2/piwdp=wp-ws;N=ceil(8*pi/wdp)N=N+mod(N,2);HPfir=fir1(N,wc,'high',hanning(N+1);figure;subplot(2,1,1);plot(HPfir);title('滤波器时域');subplot(2,1,2);plot(abs(fft(HPfir);title('滤波器频域');audio1=conv(audio0,HPfir);audio1=filter(HPfir,1,audio0)p1=audioplayer(audio1,Fs);figure;subpl
16、ot(2,1,1);plot(audio1); title('滤波后时域');k0=fft(audio1,Fs);subplot(2,1,2);plot(abs(k0);title('滤波后频域');xlabel('f(Hz)');audio1=audio1*10;p1=audioplayer(audio1,Fs);wavwrite(audio1,Fs,nbits,'C:UsersAdministratorDesktopsignalbuzz2.wav'五、结论我们将包含有几个谐波重量的蜂鸣信号干扰了的人声信号读入到MATLAB当中
17、,对读取的音频信号做出其时域图,并用使用fft()函数进行快速傅立叶变换并绘出得到的含有噪声信号的频域图,此时,我们清楚地在频谱图里面看到4个峰值,说明干扰信号的谐波频率为:220Hz、440Hz、660Hz、880Hz。于是我们依据所学的采样定理、辛格函数以及汉宁窗函数去除旁瓣噪声信号的特性等信号与系统和数学学问设计了汉宁高通滤波器,将频率高于1000Hz的信号保留,而将低于1000Hz全部截取,再对幅度较小的处理后的信号做增幅处理。通过信号处理后得到的清楚的内容为:“这里是,电子科技高校。”六、参考文献1Yang,W.Y. 等 著;郑宝玉 等 译 国外电子与通信教材系列:信号与系统(MATLAB版)电子工业出版社 2012;2美 Alan V.Oppenheim,美 Alan S.Willsky,美 S.Hamid Nawab 著;刘树棠 译 国外电子与通信教材系列:信号与系统(其次版)电子工业出版社 2014;3美 艾伦·V.奥本海姆(Alan V.Oppenheim),Ronaid W.Schafer 著;黄建国,刘树棠,张国梅 译国外电子与通信教材系列:离散时间信号处理(第3版) Discrete Time Signal Processing, Third Edit
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 13030.1-2026船舶电力推进系统技术条件第1部分:低压交流
- 2025年中江县卫生健康系统事业单位医疗卫生辅助岗笔试真题
- 2025年济宁市属事业单位招聘笔试真题
- 钦州市钦北区竞争选调城区学校教师考试真题2025
- 供热保障检修应急预案(3篇)
- 办公房租赁合同模板办公空间租赁协议二篇
- 2026年云南(高考)历史真题试卷及参考答案
- 2026年山东小升初(语文)考试真题带答案
- 2026年四川(中考)物理考试试卷及答案
- 2026年青海高职单招(英语)真题试卷附答案
- NB-T+10488-2021水电工程砂石加工系统设计规范
- 江西省南昌市事业单位招聘考试(职业能力倾向测验)题库附解析答案
- 《中电联团体标准-220kV变电站并联直流电源系统技术规范》
- 《水电工程水土保持生态修复技术规范》
- 2023年妇幼健康职业技能竞赛-危重新生儿救治试题及答案
- git使用培训课件
- 树立正确婚恋观 走好幸福军旅路
- 经济法概论(财经类) 自考复习资料 自考
- 直肠及肛管超声诊断
- RB/T 124-2018能源管理体系建筑业施工企业认证要求
- GB/T 4208-2017外壳防护等级(IP代码)
评论
0/150
提交评论