logo资料库

Matlab语音信号滤波处理和频域分析.doc

第1页 / 共19页
第2页 / 共19页
第3页 / 共19页
第4页 / 共19页
第5页 / 共19页
第6页 / 共19页
第7页 / 共19页
第8页 / 共19页
资料共19页,剩余部分请下载后查看
湖 南 工 业 大 学 课 程 设 计 资 料 袋 计算机与通信 学院(系、部) 2010~2011 学年第 二 学期 课程名称: 指导教师: 学生姓名: 廖迎斌 专业班级 通信 082 班 学号 08408200805 设计题目: MATLAB 语言与应用 职称 语音信号的滤波处理及时频域分析 陈卫兵 教授 成 绩: 起止日期: 2010 年 6 月 6 日 至 2011 年 6 月 12 日 目录清单 序号 材料名称 资料数量 备注 课程设计任务书 课程设计说明书 1 1 张 1 2 3 4 5 6
湖南工业大学 课程设计任务书 2010 —2011 学年第 2 学期 计算机与通信 学院 通信工程 专业 通信 082 班级 课程名称: 设计题目: Matlab 语言及应用 语音信号的滤波处理及时频域分析 完成期限:自 2011 年 6 月 6 日至 2011 年 6 月 12 日共 1 周 一、设计的主要技术参数 每组一台电脑(附话筒和耳机), 电脑安装 MATLAB6.5 版本以上软件。 二、设计任务  主要内容: 1、录制一段 2s 左右的语音信号,并对录制的信号进行 8000Hz 采样,画出采样后语音 信号的时域波形和频谱图。 2、给定滤波器的性能指标,采用窗函数法设计滤波器,并画出滤波器的频率响应。各 滤波器的性能指标: (1)低通滤波器性能指标 fb=1000 Hz, fc=1200 Hz, As=100 dB, Ap=1 dB。 (2)高通滤波器性能指标 fc=4800 Hz, fb=5000 Hz As=100 dB, Ap=1 dB。 (3)带通滤波器性能指标 fb1=1200 Hz, fb2=3000 Hz, fc1=1 000 Hz, fc2=3200 Hz, As=100 dB, Ap=1 dB。 要求用窗函数法设计上面要求的 3 种 FIR 滤波器。 3、然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频 谱,并对滤波前后的信号进行对比,分析信号的变化。 4、回放语音信号。  主要任务: 语音信号的滤波处理及时频域分析 起止日期 工作内容 6 月 6 日 分组、任务分配、课题理解 6 月 6 日-6 月 8 日 功能分析、程序设计 6 月 9 日-6 月 11 日 程序调试、输出结果,指导老师检查 6 月 12 日 总结、书写课程设计报告 内 容 及 任 务 进 度 安 排
参 考 资 料 [1] 高西全、丁玉美编著.数字信号处理.西安:西安电子科技大学出版社,2008. [2] 丁玉美、高西全编著.数字信号处理学习指导.西安:西安电子科技大学出版社,2001. [3] 郑君里等编.信号与系统.北京:高等教育出版社,2000. [4] 刘树棠译.数字信号处理——使用 MATLAB.西安:西安交通大学出版社,2002. [5] 导向科技编著.MATLAB 程序设计与实例应用.北京:中国铁道出版社,2001. 指 导 教 师(签字): 系 ( 教 研 室 ) 主 任 ( 签字): 年 年 月 月 日 日
MATLAB 语言与应用 课程设计说明书 语音信号的滤波处理及时频域分析 起止日期: 2011 年 06 月 6 日 至 2016 年 06 月 12 日 学 生 姓 名 廖 迎 斌 班 学 成 通 信 082 班 08408200205 级 号 绩 指 导 教 师 ( 签 字 ) 计算机与通信学院 2011 年 6 月 12 日
课题名称 组 长 语音信号的滤波处理及时频域分析 人 数 4 人 陈潇逸 同组人员 廖迎斌、朱文军、刘沛 一、设计的要求 1、录制一段 2s 左右的语音信号,并对录制的信号进行 8000Hz 采样,画出 采样后语音信号的时域波形和频谱图。 2、给定滤波器的性能指标,采用窗函数法设计滤波器,并画出滤波器的频 率响应。各滤波器的性能指标: (1)低通滤波器性能指标 fb=1000Hz,fc=1200Hz,As=100dB,Ap=1dB。 (2)高通滤波器性能指标 fc=4800Hz,fb=5000Hz As=100dB,Ap=1dB。 (3)带通滤波器性能指标 fb1=1200Hz,fb2=3000Hz,fc1=1000Hz,fc2 =3200Hz,As=100dB,Ap=1dB。要求用窗函数法设计上面要求的 3 种 FIR 滤波 器。 3、然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时 域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化。 4、回放语音信号。 二、设计任务 1、录制一段 2S 左右的声音文件 2、设计三种滤波器对信号进行滤波(包括低通,高通和带通) 3、对滤波前后的波形进行比较 4、回放各个部分的语音信号 三、内容 1、语音信号的滤波处理,语音信号的时频域分析 2、滤波器的设计,滤波后的语音信号的效果 查找相关资料资料,录制一段 2S 左右的声音文件 设计三种滤波器对信号进行滤波(包括低通,高通和带通) 用设计的滤波器进行滤波,对滤波前后的波形进行比较 回放各个部分的语音信号 总结并书写报告 6 月 5 日 查找相关资料掌握语音信号的滤波处理及时频域分析 6 月 6 日至 6 月 7 日 完成实验的总体设计,分析时频域的信号图像 6 月 8 至 6 月 10 日 设计椭圆低通滤波器,设计高通滤波器,并且比较 两者的细节,设计带通滤波器,回放声音部分 6 月 11 日 比较信号各个时机的绘图情况和滤波后的声音效果 6 月 12 日 总结并书写报告 课 题 的 主 要 内 容 和 要 求 具 体 任 务 时 间 安 排
一、MATLAB 环境简介 MATLAB 语言是一种数据分析和处理功能十分强大的计算机应用软件,它可 以将声音文件变换为离散的数据文件,然后利用其强大的矩阵运算能力处理数 据,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现等, 信号处理是 MATLAB 重要应用的领域之一。 本课程设计介绍了基于 Matlab 的对语音信号采集、处理及滤波器的设计, 并使之实现的过程。理解与掌握课程中的基本概念、基本原理、基本分析方法, 用 Matlab 进行数字语音信号处理,并阐述了课程设计的具体方法、步骤和内容。 综合运用本课程的理论知识进行频谱分析以及滤波器设计,通过理论推导得出相 应结论,并利用 MATLAB 作为工具进行实现,从而复习巩固课堂所学的理论知识, 提高对所学知识的综合应用能力,并从实践上初步实现对数字信号的处理。 二、设计步骤 1、整体设计思路 Matlab 语言是一种数据分析和处理功能十分强大的计算机应用软件,它可 以将声音文件变换为离散的数据文件,然后利用其强大的矩阵运算能力处理数 据,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现等, 信号处理是 Matlab 重要应用的领域之一。本文是用 Matlab 对含噪的的语音信 号同时在时域和频域进行滤波处理和分析。 整个设计思路的设计原理示意图如图 1 所示: 2、整体实现过程 采样器的作用是把连续信号变为脉冲或数字序列。图中示出了一个连续信号 f(t)经采样器采样后变为离散信号的过程。
图 2 连续信号 f(t)经采样器采样后变为离散信号 图 2 中 f(t)为被采样的连续信号,S(t)为周期性窄脉冲信号,fs(t)为采 样后的离散信号,它用下式来表征:fs(t)=f(t)s(t) 采样信号的频率特性为: 如果|F*(jω)|中各个波形不重复搭接,相互间有一定的距离(频率)即若 即采样定理可叙述如下:如果采样周期满足下列条件,即: 式中ωmax 为连续信号 f(t)的最高次谐波的角频率,则采样信号 f*(t)就可 以无失真地再恢复为原连续信号 f(t)。需要指出的是,采样定理只是在理论上给 出了信号准确复现的条件。 我们可以利用 windows 自带的录音机录制语音文件,进行数字信号的采集。 (开始—程序—附件—娱乐—录音机,文件—属性—立即转换—8000KH z,8 位, 单声道)或其他软件,将话筒输入计算机的语音输入插口上,启动录音机,录制 一段自己的话音。然后在 MATLAB 软件平台下,利用函数 wavread 对语音信号进 行采样,记住采样频率和采样点数。通过 wavread 函数的使用进一步理解采样频 率、采样位数等概念。图 3 是基于 PC 机的语音信号采集过程:
声音 麦克风 声卡 滤波 采样 A/D 转换 Wav Windows 自带录音机 图3 语音采集过程 3、语音信号的读取 在 matlab 软件平台下,利用 wavread 函数对语音信号进行采样,记住采样 频率和采样点数。通过使用 wavread 函数,理解采样频率、采样位数等概念。 wavread 函数调用格式: y=wavread(file),读取 file 所规定的 wav 文件,返回采样值放在向量 y 中。 [y,fs,nbits]=wavread(file),采样值放在向量 y 中,fs 表示采样频率(hz), nbits 表示采样位数。 y=wavread(file,N),读取前 N 点的采样值放在向量 y 中。 y=wavread(file,[N1,N2]),读取从 N1 到 N2 点的采样值放在向量 y 中。 对语音信号“shiyan.wav”进行采样其程序如下: [y,fs,nbits]=wavread('shiyan.wav') 可知该语音信号的采样频率 fs = 8000Hz ,数据位 nbits = 16Bit。 4、语音信号的频谱分析 首先画出语音信号的时域波形,然后对语音信号进行频谱分析。在 Matlab 中 可以利用函数 fft 对信号行快速傅里叶变换,得到信号的频谱特性,从而加深对 频谱特性的理解。 其程序如下: N=length(y); y=wavread('shiyan.wav'); %把语音信号进行加载入 Matlab 仿真软件平台 中 sound(y,fs,nbits); %对加载的语音信号进行回放 Y=fft(y); figure(1); %快速傅里叶变换 %生成图 1 subplot(2 ,1 ,1);plot(y);title('原始信号波形'); subplot(2 ,1 ,2);plot(abs(Y));title('原始信号频谱'); 程序结果如下图 4:
分享到:
收藏