基于matlab的语音信号的采集与处理
Matlab实验——语音信号的录制和处理
基于 MATLAB 的语音信号分析与处理的实验设计1.实验目的综合运用数字信号处理的理论知识进行频谱分析和滤波器设计,通过理论推导得出相应结论,再利用 MATLAB 作为编程工具进行计算机实现,从而加深对所学知识的理解,建立概念。
2.实验基本要求①学会 MATLAB 的使用,掌握 MATLAB 的程序设计方法。
②掌握在 Windows 环境下语音信号采集的方法。
③掌握数字信号处理的基本概念、基本理论和基本方法。
④掌握 MATLAB 设计 FIR 和 IIR 数字滤波器的方法。
⑤学会用 MATLAB 对信号进行分析和处理。
3.实验内容录制一段自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用窗函数法或双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的语音信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;最后,用MATLAB 设计一信号处理系统界面。
4、采集系统说明:MATLAB函数;麦克风输入方式MATLAB中提供了强大的数据采集工具箱(DAQ-Data Acquisition Toolbox),可满足控制声卡进行数据采集的要求:%记录声音 wavrecord(n,fs,ch,dtype)%发送向量信号 waveplay(y,fs)%读取wave文件 wavread(file)%写wave文件 wavwrite(file),文件的后缀名为.wav%sound(y,fs) %向扬声器送出音频信号滤波函数说明:采用Kaiser Window FIR:Sampling Frequency: 8192Type:LowpassFc:956.6Beta:5。
基于Matlab的对语音信号采集处理及滤波器的设计
目录摘要 (2)1 课程设计实现 (3)1.1整体设计思路 (3)1.2整体实现过程 (3)1.2.1 信号的采样 (3)1.2.2 语音信号的读取 (5)1.2.3 语音信号的频谱分析 (6)1.2.4 噪声信号的构建 (7)1.2.5 加入噪声的语音信号的频谱 (8)2 数字滤波器的设计 (9)2.1滤波器的设计原理 (9)2.2滤波器的性能指标 (10)2.3IIR数字滤波器设计 (10)2.4FIR数字滤波器设计 (12)2.5滤波器对信号滤波 (13)2.6语音信号回放 (17)3 心得体会 (17)4 主要参考资料.............................................................. 错误!未定义书签。
附录.................................................................................... 错误!未定义书签。
摘要MATLAB 语言是一种数据分析和处理功能十分强大的计算机应用软件 ,它可以将声音文件变换为离散的数据文件 , 然后利用其强大的矩阵运算能力处理数据 ,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现等 , 信号处理是MATLAB 重要应用的领域之一。
本课程设计介绍了基于Matlab的对语音信号采集、处理及滤波器的设计,并使之实现的过程。
理解与掌握课程中的基本概念、基本原理、基本分析方法,用Matlab进行数字语音信号处理,并阐述了课程设计的具体方法、步骤和内容。
综合运用本课程的理论知识进行频谱分析以及滤波器设计,通过理论推导得出相应结论,并利用MATLAB作为工具进行实现,从而复习巩固课堂所学的理论知识,提高对所学知识的综合应用能力,并从实践上初步实现对数字信号的处理。
关键词: MATLAB 工具信号语音采集滤波器1 课程设计实现1.1整体设计思路Matlab 语言是一种数据分析和处理功能十分强大的计算机应用软件 ,它可以将声音文件变换为离散的数据文件 , 然后利用其强大的矩阵运算能力处理数据 ,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现等 , 信号处理是 Matlab 重要应用的领域之一。
基于Matlab语音信号的采集与分析
基于MATLAB 的语音信号分析和处理【摘要】:本文通过用三星手机系统自带录音机采集了一段语音,wav格式转换后再Matlab平台上对其进行了时域分析,频谱分析,分析语音信号的特性。
利用函数对采样频率进行控制,比较其波形。
通过对两段铃声(分别为男声、女声)进行分析初步找出男声女声的特点和区别。
应用Matlab平台对录制的语音信号加入噪声,对比加噪前后的语音信号的时域和频域特性,回放加噪语音信号。
【关键词】:语音信号;频域特性 ; 时域特性 ; 滤波器目录一、背景介绍1.1 语音信号的概述1.2 语音信号处理工具的选择二、语音信号的录制采集和分析2.1 语音信号的采集2.2 语音信号的读入与打开2.3 取不同采样频率得出的波形比较三、对男声、女声语音信号特点的分析3.1女声(vfemale.wav)男声(vmale.wav)的时域分析3.2女声(vfemale.wav)男声(vmale.wav)的频域分析四、加噪声与滤波处理分析4.1 高斯白噪声(SNR=30)4.2 单频正弦噪声五、心得与体会一、背景介绍1.1语音信号的概述语言是人类创造的,是人类区别于其他地球生命的本质特征之一。
人类用语言交流的过程可以看成是一个复杂的通信过程,为了获取便于分析和处理的语音信源,必须将在空气中传播的声波转变为包含语音信息并且记载着声波物理性质的模拟(或数字)电信号,即语音信号,因此语音信号就成为语音的表现形式或载体。
1.2语音信号处理工具的选择语音信号的进一步处理分析工作选用了Matlab平台。
Matlab是一种科学计算软件,专门以矩阵的形式处理数据。
Matlab将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,不断完善Matlab产品以提高产品自身的竞争能力Matlab的数据分析和处理功能十分强大,运用它来进行语音信号的分析、处理和可视化相当便捷。
在编程效率、程序可读性、可移植性和可扩充性上Matlab远远优于其它的高级编程语言,而且编程易学、直观,代码非常符合人们的思维习惯。
基于MATLAB的语音信号的采集与处理详解
数字信号处理课程设计题目:基于MATLAB的语音信号的采集与处理学院:皖西学院专业:通信工程班级:通信1001班学号:2010013461 2010013494姓名:刘敏纵大庆指导教师:何富贵摘要:本次课程设计题目为<<基于MATLAB的语音信号的采集与处理>>。
首先我们利用计算机上的录音软件获得语音信号,然后利用MATLAB对语音信号进行分析和处理,采集语音信号后,利用MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号!1.背景2. 设计目的 (2)3. 设计原理 (2)4. 设计过程 .......................................... ,,, 35. 实验代码及结果 (4)5.1 语音信号的采集 (4)5.2 语音信号加噪与频谱分析 ..................................... ,,,, 7 5.3 巴特沃斯滤波器的设计 .. (9)5.4 比较滤波前后语音信号波形及频谱 (10)6. 收获与体会 (12)参考文献 (13)1. 引言数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。
它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。
具有灵活、精确、抗干扰强、度快等优点。
数字滤波器,是数字信号处理中及其重要的一部分。
随着信息时代和数字技术的发展,受到人们越来越多的重视。
数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。
数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应(FIR, Finite Impulse Response)滤波器和无限冲激响应(IIR,Infin ite Impulse Resp on se) 滤波器。
基于MATLAB的语音信号录制采集和分析的程序设计
1 绪论1.1 课题的背景与意义通过语音传递倍息是人类最重要、最有效、最常用和最方便的交换信息的形式。
语言是人类持有的功能.声音是人类常用的工具,是相互传递信息的最主要的手段。
因此,语音信号是人们构成思想疏通和感情交流的最主要的途径。
并且,由于语言和语音与人的智力活动密切相关,与社会文化和进步紧密相连,所以它具有最大的信息容量和最高的智能水平。
现在,人类已开始进入了信息化时代,用现代手段研究语音信号,使人们能更加有效地产生、传输、存储、获取和应用语音信息,这对于促进社会的发展具有十分重要的意义。
让计算机能听懂人类的语言,是人类自计算机诞生以来梦寐以求的想法。
随着计算机越来越向便携化方向发展,随着计算环境的日趋复杂化,人们越来越迫切要求摆脱键盘的束缚而代之以语音输人这样便于使用的、自然的、人性化的输人方式。
作为高科鼓应用领域的研究热点,语音信号采集与分析从理论的研究到产品的开发已经走过了几十个春秋并且取得了长足的进步。
它正在直接与办公、交通、金融、公安、商业、旅游等行业的语音咨询与管理.工业生产部门的语声控制,电话、电信系统的自动拨号、辅助控制与查询以及医疗卫生和福利事业的生活支援系统等各种实际应用领域相接轨,并且有望成为下一代操作系统和应用程序的用户界面。
可见,语音信号采集与分析的研究将是一项极具市场价值和挑战性的工作。
我们今天进行这一领域的研究与开拓就是要让语音信号处理技术走人人们的日常生活当中,并不断朝更高目标而努力。
语音信号采集与分析之所以能够那样长期地、深深地吸引广大科学工作者去不断地对其进行研究和探讨,除了它的实用性之外,另一个重要原因是,它始终与当时信息科学中最活跃的前沿学科保持密切的联系.并且一起发展。
语音信号采集与分析是以语音语言学和数字信号处理为基础而形成的一门涉及面很广的综合性学科,与心理、生理学、计算机科学、通信与信息科学以及模式识别和人工智能等学科都有着非常密切的关系。
对语音信号采集与分析的研究一直是数字信号处理技术发展的重要推动力量。
基于MATLAB的语音信号的采集与分析
基于MATLAB的语音信号的采集与分析摘要:我们通过学习使用MA TLAB仿真软件实现语音信号分析,加深对信号与系统这门课程所学习内容的理解,锻炼自学能力和动手能力。
我们通过电脑的声卡采集声音信号,借助已有的知识和MATLAB对采集的声音信号进行时域波形和频域频谱的显示,研究男女声信号的差别,通过查找资料提取声音信号的基音频率,并通过大量测试确定门限值来自动判别男女声信号,最后对信号进行降采样处理并播放,重新绘制频谱图分析,验证抽样定理。
关键词:MA TLAB仿真、频谱分析、基音频率、降采样、抽样定理。
1.音频信号的采集我们所要分析的语音信号需要自行采集,所以信号分析的第一步就是采集音频信号。
实现音频信号的采集最简单的办法就是通过电脑的声卡直接进行采集,这样采集到的音频信号虽然已经被转化成了数字量存储在电脑中,但通过查询我们了解到电脑录音所使用的采样频率是为44100Hz,完全保证了人类耳朵能听到所有声音频率分量的无失真采集,如果通过MA TLAB软件采集还能够调节采样频率,所以能够完全满足我们实验的要求。
1.1使用MATLAB采集语音信号通过上网查询,我们了解到MATLAB有自带的音频信号采集函数audiorecord(),通过它可以在程序运行时即时采集音频信号进行存储并处理,并且可以通过改变输入参数来改变采样频率,可以直接模拟降采样的过程,直观地验证抽样定理。
但鉴于我们需要重复进行试验和演示,即时采集信号显得繁琐且不必要,而且会增加我们非界面化编程的难度,所以我们放弃了这种方法。
1.2使用电脑录音机采集语音信号通过电脑自带的录音机软件可以实现更简单的音频信号采集操作,虽然采样频率不可调节,但其固有的采样频率完全满足了我们对所采集信号的要求,可以通过MATLAB的降采样处理的到较低采样频率的信号。
这样采集的音频信号会直接以文件的形式存储在电脑中,方便我们随时进行调用,方便分析与演示,所以我们决定采用这种方式实现语音信号的采集。
MATLAB语音信号采集与处理
MATLAB课程设计报告课题:语音信号采集与处理目录一、实践目的 (3)二、实践原理: (3)三、课题要求: (3)四、MATLAB仿真 (4)1、频谱分析: (4)2、调制与解调: (5)3、信号变化: (8)快放: (8)慢放: (8)倒放: (8)回声: (8)男女变声: (9)4、信号加噪 (10)5、用窗函数法设计FIR滤波器 (11)FIR低通滤波器: (12)FIR高通滤波器: (13)FIR带通滤波: (14)一、实践目的本次课程设计的课题为《基于MATLAB的语音信号采集与处理》,学会运用MATLAB的信号处理功能,采集语音信号,并对语音信号进行滤波及变换处理,观察其时域和频域特性,加深对信号处理理论的理解,并为今后熟练使用MATLAB进行系统的分析仿真和设计奠定基础。
此次实习课程主要是为了进一步熟悉对matlab软件的使用,以及学会利用matlab对声音信号这种实际问题进行处理,将理论应用于实际,加深对它的理解。
二、实践原理:利用MATLAB对语音信号进行分析和处理,采集语音信号后,利用MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。
语音信号的“短时谱”对于非平稳信号, 它是非周期的, 频谱随时间连续变化, 因此由傅里叶变换得到的频谱无法获知其在各个时刻的频谱特性。
如果利用加窗的方法从语音流中取出其中一个短断, 再进行傅里叶变换, 就可以得到该语音的短时谱。
三、课题要求:○1利用windows 自带的录音机或者其它录音软件,录制几段语音信号(要有几种不同的声音,要有男声、女声)。
○2对录制的语音信号进行频谱分析,确定该段语音的主要频率范围,由此频率范围判断该段语音信号的特点(低沉or 尖锐)。
○3利用采样定理,对该段语音信号进行采样,观察不同采样频率(过采样、欠采样、临界采样)对信号的影响。
基于MATLAB的语音信号的处理
第一章语音信号的特点与采集第一节语音信号采集的介绍在Matlab环境中,主要可以通过以下几种方法驱动声卡,采集语音信号:1.将声卡作为对象处理采集语音信号Matlab将声卡作为对象处理,其后的一切操作都不与硬件直接相关,而是通过对该对象的操作来作用于硬件设备(声卡)。
操作时首先要对声卡产生一个模拟输入对象(ai),给ai对象添加一个通道设置采样频率后,就可以启动设备对象,开始采集数据,采集完成后停止对象并删除对象。
2.调用wavrecord功能函数采集语音信号。
wavrecord功能函数只适用于windows95/98/N平台,它使用windows声音输入设备录制声音。
函数调用方式:wavrecord(N,fs,ch,nbits); N:采集的样本数据量; fs:样本采集频率,为8000Hz、11025Hz、22050Hz和44100Hz之一,默认值为11025Hz; ch:样本采集通道,1为单声道,2为双声道,默认值为1(单声道); nbits:每个样本的位数(或称解析度),‘double’、‘single’或‘int16’为16位,‘uint8’为8位;3.运用audiorecorder对象采集语音信号audiorecorder(fs,nbits,ch)可以创设一个audiorecorder对象。
fs:样本采集频率,为8000Hz、11025Hz、22050Hz和44100Hz之一,默认值为8000Hz; nbits:每个样本的位数,8位或16位,默认值为8位; ch:样本采集通道,1为单声道,2为双声道,默认值为1(单声道); audiorecorder对象创设后,就可以进行相应的录音、暂停、停止、播放以及数据读取等操作。
第二节语音信号的特点通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点:①在频域内,语音信号的频谱分量主要集中在300~3400Hz 的范围内。
利用这个特点,可以用一个防混迭的带通滤波器将此范围内的语音信号频率分量取出,然后按8kHz 的采样率对语音信号进行采样,就可以得到离散的语音信号。
matlab语音信号采集与处理
matlab语音信号采集与处理Matlab是一种功能强大的数学软件,特别适合音频信号的处理和分析。
本文将介绍Matlab如何用于音频信号采集和处理的方法。
1. 音频信号采集Matlab可以在Windows和Mac OS X操作系统上直接访问音频硬件,比如麦克风。
Matlab的音频输入功能允许用户在Matlab中直接访问音频硬件,并处理输入的信号。
Matlab提供了许多函数和工具箱,方便用户采集和处理音频信号。
可以使用Matlab 的命令窗口和MATLAB代码框架,采集音频信号数据并保存为.mat文件。
以下是在Matlab中实现音频采集的示例代码:%% 定义音频采样率Fs和采样时间TFs = 8000; % HzT = 2; % s%% 创建一个录音器对象recorderrecorder = audiorecorder(Fs, 16, 1);%% 开始录制音频disp('开始录制音频...');recordblocking(recorder, T);%% 将信号保存为.mat文件disp('将信号保存为.mat文件...');filename = 'audioData.mat';save(filename, 'audioData', 'Fs');在这个示例代码中,定义音频采样率Fs和采样时间T。
开始录制音频,使用recordblocking函数,它采样时间为T。
使用getaudiodata函数获取录音器对象recorder的音频数据。
最后,使用save函数将音频数据保存为.mat文件。
Matlab是一种强大的工具,可用于处理和分析音频信号,例如过滤,时域和频域分析,频谱分析和语音识别等。
%% 加载.mat文件,分别为音频数据audioData和采样率Fsload('audioData.mat');%% 频谱分析disp('进行频谱分析...');N = length(audioData);xf = fft(audioData);Pxx = 1/(Fs*N) * abs(xf).^2;f = linspace(0, Fs/2, N/2+1);%% 滤波器设计disp('设计一个50Hz低通滤波器...');fc = 50; % HzWn = fc/(Fs/2);[b,a] = butter(4, Wn, 'low');%% 信号滤波disp('低通滤波信号...');y = filter(b, a, audioData);%% 绘图figure();subplot(2,1,1);plot(audioData);title('原始信号');xlabel('时间(s)')ylabel('幅值')在这个示例代码中,首先使用load函数加载以前保存的音频数据,分别为音频数据audioData和采样率Fs。
基于Matlab的声音信号采集与分析处理
文章编号:100622475(2005)0620091202收稿日期:2004209213作者简介:陈家焱(19792),男,江苏泗洪人,华东理工学院机电系助教,硕士研究生,研究方向:机电一体化。
基于Matlab 的声音信号采集与分析处理陈家焱,陈冬娇,张达响(东华理工学院机电系,江西南昌 330013)摘要:介绍了利用Matlab 软件采集与处理声音信号的方法,并结合蛋壳破损声音检测的应用实例,深入地分析了声音信号采集与处理的Matlab 实现。
关键词:声音信号采集;Matlab ;频谱分析中图分类号:TP391.42 文献标识码:ACollecting and Processing of Sound Signal with MatlabCHE N Jia 2yan ,CHE N D ong 2jiao ,ZH ANG Da 2xiang(Mechanical &E lectrical Engineering Department ,East China Institute of T echnology ,Nanchang 330013,China )Abstract :The method of collecting and processing of s ound signal with Matlab s oftware is introduced in this paper ,then ,a case of using s ound signal to detect crack eggs is combined for deeply analyzing its application.K ey w ords :collecting of s ound signal ;Matlab ;analyzing of frequency0 引 言声音信号的采集与分析处理在工程应用中是经常需要解决的问题,如何实时采集声音信号并对其分析处理,找出声音信号的特征在科学研究中是一项非常有意义的工作。
基于matlab语音信号的采集与分析
毕业论文(设计)题目:基于matlab语音信号的采集与分析姓名:学院:理学与信息科学学院专业:电子信息科学与技术班级:学号:指导教师:目录摘要 (I)ABSTRACT. .......................................................................................................................................... I I 1 绪论 (1)1.1选题的背景和意义 (1)1.2语音信号处理的进展 (2)2 系统设计的可行性研究 (4)2.1语音信号处理的概念 (4)2.2语音信号的特点 (4)2.3语音信号处理的要求及可行性 (5)2.4M ATLAB仿真软件简介 (5)3 系统设计 (7)3.1系统设计的理论依据 (7)3.2系统的详细设计 (9)3.2.1图形用户界面制作 (9)3.2.2 系统功能的实现 (10)4 系统调试及运行 (16)总结 (25)致谢 (27)参考文献: (28)基于matlab语音信号的采集与分析电子信息科学与技术专业马晓敏指导教师曹红波摘要:语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科。
语音信号处理的目的是得到某些参数以便高效传输或存储,或者是用于某种应用,如人工合成出语音、辨识出讲话者、识别出讲话内容、进行语音增强等[1]。
本文简要介绍了语音信号采集与分析的发展史以及语音信号的特征、采集与分析方法,并通过PC机录制一段声音,采集语音信号后,在MATLAB软件平台上进行频谱分析,并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。
利用MATLAB来读入(采集)语音信号,将它赋值给某一向量。
再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。
基于matlab的语音信号的采集与处理
目录第1 章前言................................................................... 0...-... - 第2 章语音信号分析处理的目的和要求.......................................... 1.. -2.1MATLAB 软件功能简介................................................. -..1...-.2.2 课程设计意义......................................................... -..2...-..第3 章语音信号的仿真原理.................................................... 2...- -第4 章语音信号的具体实现.................................................... 3...- -4.1 语音信号的采集........................................................ -..3...-..4.2 语音信号加噪与频谱分析................................................ -...5...-4.3 设计巴特沃斯低通滤波器................................................ -...6...-4.4 用滤波器对加噪语音滤波................................................ -...7...-4.5 比较滤波前后语音信号波形及频谱........................................ -...7.. -第5 章总结.................................................................. -...9...-... 参考文献 ......................................................................... - 10 -附录 ............................................................................. - 11 -语音信号的采集与处理第 1 章前言数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。
基于matlab的语音信号采集与分析—刘
基于matlab的语音信号采集与分析系统的设计现代语音信号的采集与分析技术是建立在声学测量理论和电子技术数字信号处理的一门高速发展的技术,其中信号的采集和分析仪器的小型化智能化,数字化以及多功能化的发展越来越快,分析速度也有了进一步的提高,但是一般的信号采集与分析系统价格昂贵,操作复杂,应用范围窄,基于以上不足,设计一款基于matlab的语音信号采集与分析系统,具体使用方便,价格便宜,通用性强等优点。
实现方法是:通过声卡将传感器采集到的模拟信号转换成数字信号以后,通过计算机运行matlab程序,实现对各项数据的分析。
声卡已经具备了足够高的采样频率和量化精度,且价格也比专业的数据采集卡便宜得多。
因此用声卡作为语音信号的采集设备,不仅能满足信号分析的要求,而且性价比也很高,即可以高精度、低成本地完成语音信号的实时采集与分析工作。
一般来说,人的听觉能感知的声音频率范围为20~20000Hz,在这一频率范围内可感知的声音强度为0~140dB,其中人耳比较敏感的区域在50~4000Hz。
因此,采集子系统的硬件参数可根据要分析的语音信号的频率和强度来确定。
将总的设计分为两部分:采集子系统的设计和分析子系统的设计。
采集子系统的设计内容包括:语音信号的实时采集,是由matlab控制PC机声卡将传感器得到的模拟信号转变成数字信号存储在计算机中。
分析子系统的设计内容包括:将采集的数字信号进行时域/频域分析及各项数值分析。
具体设计步骤:1、采集系统硬件安装将声音传感器与声卡的模拟输入端连接起来,注意减少干扰噪声。
因matlab7.0采用面向对象技术,在数据采集前需要用一个对象将声卡进行封装,创建对象后才可对声卡进行直接操作。
2、硬件设备初始化在matlab中为声卡生成一个操作对象,初始化该操作对象使之能与声卡建立通信,并增加数据通道和触发通道。
3、硬件设备配置根据声卡的工作特性和信号分析的设计要求,可设置相应的参数控制声卡的数据采集时的行为。
基于MATLAB对语音信号进行分析和处理
基于MATLAB对语音信号进行分析和处理一、设计目的1.学会MATLAB的使用,掌握MA TLAB的程序设计方法;2.掌握在Windows环境下语音信号采集的方法;3.掌握数字信号处理的基本概念、基本理论和基本方法;4.掌握MATLAB设计FIR和IIR数字滤波器的方法;5.学会用MA TLAB对信号进行分析和处理。
二、设计过程1、语音信号采集与分析运用windows下的录音机,录制一段自己的话音,时间为两秒。
然后在MATLAB 软件平台下,利用函数wavread对语音信号进行采样,再运用plot函数画出语音信号的时域波形,最后在语音信号频谱分析时运用fft对信号进行快速傅里叶变换,得到频谱特性图形。
人为设计一个固定频率5500Hz的噪声干扰信号。
噪声信号通常为随机序列,在本设计中用正弦序列代替,干扰信号构建命令函数为d=[Au*sin(2*pi*5500*t)]',给出的干扰信号为一个正弦信号,针对上面的语音信号 ,采集了其中一段。
再对噪音信号进行频谱变换得到其频谱图。
2、滤波器设计和运用滤波器进行滤波1 )窗函数和等波纹逼近法设计FIR滤波器及滤波首先根据阻带最小衰减选定窗口类型,然后调用fir1函数设计线性相位FIR数字滤波器,再用freqz函数画出其频谱图形,最后运用fftfilt函数对信号进行滤波。
而等波纹逼近法中则运用remez和remezord直接设计FIR滤波器,然后运用fftfilt函数对信号进行滤波。
2 )双线性变换法社设计IIR数字滤波器及滤波首先将数字滤波器的技术指标运用预畸校正法转换成模拟滤波器的设计指标:Ωph=2/T*tan(wp/2),然后用butter、cheby1设计各种模拟滤波器,再用bilinear函数进行模拟滤波器和数字滤波器之间的转换,最后用filter函数对语音信号进行滤波,并运用函数sound播放滤波后语音。
三、结果及分析1、用MATLAB对原始语音信号进行分析,画出它的时域波形和频谱时域波形和频谱:图1 原始语音信号图2 语音信号频率响应图图3 原始语音信号FFT与信号频谱2、给原始的语音信号加上一个高频余弦噪声,频率为5500hz。
基于MATLAB的语音信号录制采集和分析的程序设计
目录摘要 (2)Abstract (3)1 高斯白噪声在MATLAB中的生成与分析 (5)1.1 MATLAB生成高斯白噪声 (5)1.2高斯白噪声的时域分析 (6)1.3高斯白噪声的频域分析 (7)2FIR滤波器 (9)2.1FDATOOL工具箱 (9)2.2 FIR滤波器参数设置 (10)2.3生成FIR滤波器系数 (11)3噪声滤除 (13)3.1 滤除低频分量 (13)3.2滤波前后时域分析对比 (13)3.3滤波前后频域分析对比 (15)4 心得体会 (17)5 参考文献 (18)摘要MATLAB是美国MathWorks公司生产的一个为科学和工程计算专门设计的交互式大型软件,是一个可以完成各种精确计算和数据处理的、可视化的、强大的计算工具。
它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂数值计算的领域得到了广泛应用。
它不仅是一个在各类工程设计中便于使用的训‘算工具,而且也是一个在数学、数值分析和工程计算等课程教学中的优秀的教学工具,在世界各地的高等院校中十分流行,在各类工业应用中更有不俗的表现。
MATLAB可以在几乎所有的PC机和大型计算机上运行,适用于Windows、UNIX等多种系统平台。
本次设计主要采用MATLAB自带工具FDATOOL设计一个数字高通FIR滤波器。
数字滤波器根据其单位冲激响应函数的时域特性分为两种:无限长冲激响应(IIR) 滤波器和有限长冲激响应(FIR)滤波器。
IIR滤波器保留了模拟滤波器较好的幅度特性,设计简单有效。
但这些特性是以牺牲相位特性为代价而获得的,然而现在许多数据传输,图像处理系统都越来越多的要求系统具有线性相位特性。
在这方面,FIR 滤波器具有独特的优点,它可以保持严格的线性相位特性,因此越来越受到广泛的重视。
关键字: MATLAB FDATOOL 高斯噪声FIR滤波器AbstractMathWorks Inc. MATLAB is a U.S. production of scientific and engineering computing for a specially designed interactive large-scale software is a complete variety of accurate calculation and data processing, visualization, and powerful computational tools. It combines the precision in the calculation of an icon and in the application of mathematics, physics, chemistry, mechanical and electrical engineering, medicine, financial and other needs of the field of complex numerical calculations have been widely used. It is not only an engineering design in various easy to use training 'calculation tools, but also one in mathematics, numerical analysis and engineering calculations such as teaching the outstanding teaching tool in colleges and universities around the world in a very popular in various industrial applications in a more impressive performance. MATLAB can be in almost all PC-and large-scale run on a computer for Windows, UNIX and other platforms.The design mainly uses MATLAB tools FDATOOL own design of a digital high-pass FIR filter. Digital filter in accordance with its unit impulse response function of the time-domain characteristics are divided into two types: an infinite impulse response (IIR) filter and finite impulse response (FIR) filters. IIR filter retains a good range of characteristics of analog filters, design simple and effective. However, these features at the expense of the cost of the phase characteristics obtained, but now many data transmission, image processing systems are more and more demand system with linear phase characteristics. In this regard, FIR filters have unique advantages that it can maintain strict linear phase characteristics, so more and morewidely appreciatedKeywords: MATLAB FDATOOL Gaussian noise FIR Filter1 高斯白噪声在MATLAB中的生成与分析1.1 MATLAB生成高斯白噪声高斯白噪声:如果一个噪声,它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。
基于matlab的语音信号的采集和处理
电子科技大学课程设计报告课程名称:信号与系统设计名称:语音信号的采集和处理姓名:肖燕平学号: *************班级:通信九班指导教师:**起止日期:2012.12.15-2012.12.20基于MATLAB的语音信号的采集和处理摘要:本文介绍了一种基于matlab的语音信号的采集和处理设计实现方案。
声音是由物体的振动产生,以声波的形式在介质中传播,介质主要可分为固体,液体以及气体。
声波振动内耳的听小骨,这些振动被转化为微小的电子脑波,它就是我们觉察到的声音。
内耳采用的原理与麦克风捕获声波或扬声器的发音一样,它是移动的机械部分与气压波之间的关系。
在国际标准中,人声的频率范围是300Hz~3400Hz,不同的人或乐器产生的声音频率不一致,通过对声音信号的研究能够更好的处理声音信号的处理以及传输。
Matlab 作为一款主要面对科学计算、可视化以及交互式程序设计的高科技计算软件,能够很好的完成对声音信号的分析和处理,快速的得出声音信号的时域图以及频域图。
关键字:声音|、频率、时域图、频域图1绪论1.1课题研究目的及意义掌握语音信号采集的方法掌握一种语音信号基音周期提取方法了解Matlab的编程方法1.2本课题的设计要求及设计方案概述一:使用wavrecord录入自己的语音信号,使用save函数进行保存后使用wavplay 函数进行播放。
二:使用plot再画出该语音信号的时域波形,对原始波形进行用fft函数傅里叶变换后,使用plot画出其频谱。
三:设计切比雪夫的低通,高通,带通滤波器对原始信号进行滤波。
四:画出滤波后的信号时域、频域图五:考虑到国际标准人声的频率范围在300Hz~3400Hz,于是给原始语音信号加入3800hz的正弦高频噪声,再分析语音信号的特点。
六:设计低通计滤波器将高频噪声滤除。
2设计过程2.1本课题的设计要求1,使用wavrecord录入自己的语音信号,保存到一个数组后,再使用save函数进行保存文件,后使用wavplay函数进行播放。
信号与系统三级项目——基于matlab的语音信号采集与分析
信号与系统三级项目基于matlab的语音信号采集与分析:班级:电子信息工程2班课程名称:信号与系统指导教师:闫盛楠2017年6月基于Matlab的语音信号采集与分析〔燕山大学信息科学与工程学院〕摘要:此次三级项目的内容是:通过运用Matlab语言实现语音信号的采集、分析和处理。
在本次项目中,我们首先利用Matlab实现了对语音信号的采集,读取,然后对读入的声音信号进行了频域分析,之后定性与定量地判别了男女声,最终验证了抽样定理,得出了利用通信时对声音的采样应不低于8000Hz的结论。
前言:通过这次三级项目的实施,我们对Matlab语言的使用、信号的采集与分析及抽样定理都有了深刻的理解,我们将我们的理解与收获以报告的形式记录下来,以便于更好的总结。
在本次信号与系统的三级项目中,负责语音信号的采集与资料的收集,负责声音信号的读入、频谱分析、区分男女声以及书写报告,负责验证抽样定理,负责制作ppt。
在整个过程中,我们既有分工,又相互合作,共同解决棘手的问题。
最终完成了三级项目要求的内容:对男声女声的频谱有了较为深深刻的印象,可以简单的区分男女声音,验证了抽样定理的准确性并验证了可以对语音信号采用8kHz的采样速率的结论。
ⅠMatlab简介Matlab的全称是Matrix Laboratory,中文翻译名称是矩阵实验室,Matlab由美国Mathworks公司出品,用于算法计算、矩阵分析、数值计算、和将数据到达可视化的高级技术电脑语言和交互式环境。
主要包括Matlab和Simulink。
Matlab的功能有分析目的数值,计算各种矩阵,将科学数据以各种图形,图表形式展现出来,更在建立非线性动态系统模型和仿真方面拥有自己的优势。
在工程设计,科学研究等多方面科学研究领域发挥了强大的作用。
Matlab可以实现函数和数据的图形绘制,算法实现,图形用户界面的创建,矩阵运算,连接其他编程语言的程序等。
应用领域有信号处理与通信、图像处理、控制设计、工程设计。
MATLAB声音信号的采集与滤波处理
Matlab 实验报告(题目二)(题目二)声音信号的采集与滤波处理(采用IIR滤波器或FIR滤波器)参考资料:信号的采集、数字信号处理及滤波实例要求:(1)采集声音信号或打开已录好的声音文件,并显示其信号图与频域图。
(2)根据信号的特点,选用合适的滤波器,给定滤波器的规一化性能指标(参考指标,实际中依据每个同学所叠加噪声情况而定)例如:通带截止频率wp=0.25*pi, 阻通带截止频率ws=0.3*pi; 通带最大衰减Rp=1 dB; 阻带最小衰减Rs=15 dB,对信号进行滤波。
在Matlab中,可以利用函数fir1设计FIR滤波器,可以利用函数butte,cheby1和ellip设计IIR滤波器;利用Matlab中的函数freqz画出各滤波器的频率响应,滤波器设计完后,用filter函数用这些数字滤波器对含噪语音信号分别进行滤波处理。
(3)还原音乐信号,并画出其时域图与频域图,并与原始信号比较,且回放音乐信号。
(1)打开一个自己录制的音乐文件进行实验,这是实验程序:fs=22050; %语音信号采样频率为22050x1=wavread('e:\威尼斯的泪.wav'); %读取语音信号的数据,赋给变量x1sound(x1,22050); %播放语音信号y1=fft(x1,1024); %对信号做1024点FFT变换f=fs*(0:511)/1024;figure(1)plot(x1) %做原始语音信号的时域图形title('原始语音信号');xlabel('time n');ylabel('fuzhi n');figure(2)freqz(x1) %绘制原始语音信号的频率响应图title('频率响应图')figure(3)subplot(2,1,1);plot(abs(y1(1:512))) %做原始语音信号的FFT频谱图title('原始语音信号FFT频谱')subplot(2,1,2);plot(f,abs(y1(1:512)));title('原始语音信号频谱')xlabel('Hz');ylabel('fuzhi');实验效果(2)实验程序clear;fs=22050;x1=wavread('e:\威尼斯的泪.wav');f=fs*(0:511)/1024;t=0:1/22050:(length(x1)-1)/22050; %将所加噪声信号的点数调整到与原始信号相同%Au=1d=[0.5*cos(2*pi*1000*t)]'; %噪声为1kHz的余弦信号x2=x1+d;%sound(x1,8000);%pause(50);sound(x2,22050); %播放加噪声后的语音信号y2=fft(x2,1024);figure(1)plot(t,x2)title('加噪后的信号');xlabel('time n');ylabel('fuzhi n');figure(2)subplot(2,1,1);plot(f,abs(x1(1:512)));title('原始语音信号频谱'); xlabel('Hz');ylabel('fuzhi');subplot(2,1,2);plot(f,abs(x2(1:512))); title('加噪后的信号频谱'); xlabel('Hz');ylabel('fuzhi');实验效果(3)实验程序fs=22050; x1=wavread('e:\威尼斯的泪.wav');t=0:1/22050:(length(x1)-1)/22050;Au=0.5; d=[Au*cos(2*pi*8000*t)]';x2=x1+d;wp=0.25*pi;ws=0.3*pi;Rp=1;Rs=15;Fs=22050;Ts=1/Fs;wp1=2/Ts*tan(wp/2); %将模拟指标转换成数字指标ws1=2/Ts*tan(ws/2);[N,Wn]=buttord(wp1,ws1,Rp,Rs,'s'); %选择滤波器的最小阶数[Z,P,K]=buttap(N); %创建butterworth模拟滤波器[Bap,Aap]=zp2tf(Z,P,K);[b,a]=lp2lp(Bap,Aap,Wn);[bz,az]=bilinear(b,a,Fs); %用双线性变换法实现模拟滤波器到数字滤波器的转换[H,W]=freqz(bz,az); %绘制频率响应曲线figure(1)plot(W*Fs/(2*pi),abs(H))gridxlabel('频率/Hz')ylabel('频率响应幅度')title('Butterworth')f1=filter(bz,az,x2);figure(2)subplot(2,1,1)plot(t,x2) %画出滤波前的时域图title('滤波前的时域波形');subplot(2,1,2)plot(t,f1); %画出滤波后的时域图title('滤波后的时域波形');sound(f1,22050); %播放滤波后的信号F0=fft(f1,1024);f=fs*(0:511)/1024;figure(3)y2=fft(x2,1024);subplot(2,1,1);plot(f,abs(y2(1:512))); %画出滤波前的频谱图title('滤波前的频谱')xlabel('Hz');ylabel('fuzhi');subplot(2,1,2)F1=plot(f,abs(F0(1:512))); %画出滤波后的频谱图title('滤波后的频谱')xlabel('Hz');ylabel('fuzhi');实验结果:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。
目录第1章前言 ................................................................................................... 错误!未定义书签。
第2章语音信号分析处理的目的和要求 ................................................... 错误!未定义书签。
2.1MATLAB软件功能简介................................................................. 错误!未定义书签。
2.2课程设计意义 .................................................................................. 错误!未定义书签。
第3章语音信号的仿真原理..................................................................... 错误!未定义书签。
第4章语音信号的具体实现..................................................................... 错误!未定义书签。
4.1语音信号的采集................................................................................ 错误!未定义书签。
4.2语音信号加噪与频谱分析................................................................ 错误!未定义书签。
4.3设计巴特沃斯低通滤波器................................................................ 错误!未定义书签。
4.4用滤波器对加噪语音滤波................................................................ 错误!未定义书签。
4.5比较滤波前后语音信号波形及频谱................................................ 错误!未定义书签。
第5章总结................................................................................................... 错误!未定义书签。
参考文献......................................................................................................... 错误!未定义书签。
附录................................................................................................................. 错误!未定义书签。
语音信号的采集与处理第1章前言数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。
它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。
具有灵活、精确、抗干扰强、度快等优点。
数字滤波器, 是数字信号处理中及其重要的一部分。
随着信息时代和数字技术的发展,受到人们越来越多的重视。
数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。
数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应( IIR,Infinite Impulse Response)滤波器。
FIR滤波器结构上主要是非递归结构,没有输出到输入的反馈,系统函数H (z)在处收敛,极点全部在z = 0处(因果系统),因而只能用较高的阶数达到高的选择性。
FIR数字滤波器的幅频特性精度较之于IIR数字滤波器低,但是线性相位,就是不同频率分量的信号经过fir滤波器后他们的时间差不变,这是很好的性质。
FIR数字滤波器是有限的单位响应也有利于对数字信号的处理,便于编程,用于计算的时延也小,这对实时的信号处理很重要。
FIR滤波器因具有系统稳定,易实现相位控制,允许设计多通带(或多阻带)滤波器等优点收到人们的青睐[1]。
IIR滤波器采用递归型结构,即结构上带有反馈环路。
IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。
同时,IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯滤波器等。
第2章语音信号分析处理的目的和要求2.1 MATLAB软件功能简介MATLAB的名称源自Matrix Laboratory,1984年由美国Mathworks公司推向市场。
它是一种科学计算软件,专门以矩阵的形式处理数据。
MATLAB将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛的应用于科学计算、控制系统和信息处理等领域的分析、仿真和设计工作。
MATLAB软件包括五大通用功能,数值计算功能(Nemeric)、符号运算功能(Symbolic)、数据可视化功能(Graphic)、数字图形文字统一处理功能(Notebook)和建模仿真可视化功能(Simulink)。
其中,符号运算功能的实现是通过请求MAPLE内核计算并将结果返回到MATLAB命令窗口。
该软件有三大特点,一是功能强大;二是界面友善、语言自然;三是开放性强。
目前,Mathworks公司已推出30多个应用工具箱。
MATLAB在线性代数、矩阵分析、数值及优化、数值统计和随机信号分析、电路与系统、系统动力学、次那好和图像处理、控制理论分析和系统设计、过程控制、建模和仿真、通信系统以及财政金融等众多领域的理论研究和工程设计中得到了广泛应用。
MATLAB在信号与系统中的应用主要包括符号运算和数值计算仿真分析。
由于信号与系统课程的许多内容都是基于公式演算,而MATLAB借助符号数学工具箱提供的符号运算功能,能基本满足信号与系统课程的需求。
例如解微分方程、傅里叶正反变换、拉普拉斯正反变换和z正反变换等。
MATLAB在信号与系统中的另一主要应用是数值计算与仿真分析,主要包括函数波形绘制、函数运算、冲击响应与阶跃响应仿真分析、信号的时域分析、信号的频谱分析、系统的S域分析和零极点图绘制等内容。
数值计算仿真分析可以帮助学生更深入地理解理论知识,并为将来使用MATLAB进行信号处理领域的各种分析和实际应用打下基础[2]。
2.2课程设计意义本次课程设计的课题为《基于MATLAB的语音信号采集与处理》,学会运用MATLAB的信号处理功能,采集语音信号,并对语音信号进行滤波及变换处理,观察其时域和频域特性,加深对信号处理理论的理解,并为今后熟。
第3章语音信号的仿真原理利用MATLAB对语音信号进行分析和处理,采集语音信号后,利用MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。
语音信号的“ 短时谱”对于非平稳信号, 它是非周期的, 频谱随时间连续变化, 因此由傅里叶变换得到的频谱无法获知其在各个时刻的频谱特性。
如果利用加窗的方法从语音流中取出其中一个短断, 再进行傅里叶变换, 就可以得到该语音的短时谱。
MATLAB在信号与系统中的应用主要包括符号运算和数值计算仿真分析。
由于信号与系统课程的许多内容都是基于公式演算,而MATLAB借助符号数学工具箱提供的符号运算功能,能基本满足信号与系统课程的需求。
例如解微分方程、傅里叶正反变换、拉普拉斯正反变换和z正反变换等。
MATLAB在信号与系统中的另一主要应用是数值计算与仿真分析,主要包括函数波形绘制、函数运算、冲击响应与阶跃响应仿真分析、信号的时域分析、信号的频谱分析、系统的S域分析和零极点图绘制等内容。
数值计算仿真分析可以帮助学生更深入地理解理论知识,并为将来使用MATLAB进行信号处理领域的各种分析和实际应用打下基础[3]。
滤波器的设计可以通过软件或设计专用的硬件两种方式来实现。
随着MATLAB软件及信号处理工具箱的不断完善,MATLAB很快成为应用学科等领域不可或缺的基础软件。
它可以快速有效地实现数字滤波器的设计、分析和仿真,极大地减轻了工作量,有利于滤波器设计的最优化。
利用MATLAB中的随机函数产生噪声加入到语音信号中,模仿语音信号被污染,并对其进行频谱分析;设计巴特沃斯滤波器,并对被噪声污染的语音信号进行滤波,对滤波前后信号进行时域分析。
第4章语音信号的具体实现4.1语音信号的采集基于声卡进行数字信号的采集。
将话筒插入计算机的语音输入插口上,启动录音机。
按下录音按钮,对话筒说话,说完后停止录音。
要保存文件时,利用了计算机上的A/D转换器,把模拟的声音信号变成了离散的量化了的数字信号,放音时,它又通过D/A转换器,把保存的数字数据恢复为原来的模拟的声音信号。
在Matlab软件平台下可以利用函数wavread对语音信号进行采样,得到了声音数据变量x1,同时把x1的采样频率fs=22050Hz和数据位Nbits=16Bit放进了MATALB的工作空间。
图4.1为原始语音信号的时域图形。
图4.1 原始语音信号从图中可以看出在时域环境下,信号呈现出不规则的信号峰值。
通过freqz函数绘制原始语音信号的频率响应图4.2。
图4.2 语音信号频率响应图然后对语音信号进行频谱分析,在Matlab中可以利用函数fft对信号行快速傅里叶变换,得到信号的频谱图4.3,图4.3 原始语音信号FFT与信号频谱从图中可以看出对各个频点上的随机信号在频域进行抽样,抽样频率为22050Hz。
4.2语音信号加噪与频谱分析图4.4加噪后的信号时域图在Matlab中人为设计一个固定频率5500Hz的噪声干扰信号。
噪声信号通常为随机序列,在本设计中用正弦序列代替,干扰信号构建命令函数为d=[Au*sin(2*pi*5500*t)],给出的干扰信号为一个正弦信号,针对上面的语音信号,采集了其中一段。