吉林工程技术师范学院课程设计论文
第一章 绪论
1.1选题目的、意义
语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴的
学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。通过语音传递信息是人类最重要、最有效、最常用和最方便的交换信息形式。同时,语言也是人与机器之间进行通信的重要工具,它是一种理想的人机通信方式,因而可为计算机、自动化系统等建立良好的人机交互环境,进一步推动计算机和其他智能机器的应用,提高社会的信息化和自动化程度。
语音信号处理是一门新兴的学科,同时又是综合性的多学科领域和涉及面很广的交叉学科。虽然从事这一领域研究的人员主要来自信号与信息处理及计算机应用等学科,但是它与语音学、语言学、声学、认知科学、生理学、心理学等许多学科也有非常密切的联系。 语音信号处理技术的应用极其广泛,涉及工业、军事、交通、医学、民用等各个领域,其中最重要的包括语音编码、语音合成、语音识别以及语音增强等。
1.2设计要求
本次课程设计是用MATLAB对含噪的语音信号同时在时域和频域进行滤波处理和分析,
在MATLAB应用软件下设计一个简单易用的图形用户界面(GUI),来解决一般应用条件下的各种语音信号的处理。
1.3研究内容及难点
对所采集的语音信号加入干扰噪声,对语音信号进行回放,感觉加噪前后声音的
变化,分析原因,得出结论。并对其进行FFT频谱分析,比较加噪前后语音信号的波形及频谱,对所得结果进行分析,阐明原因,得出结论。
用所设计的滤波器对含噪语音信号进行滤波。对滤波后的语音信号进行FFT频谱分析。画出处理过程中所得各种波形及频谱图。对语音信号进行回放,感觉滤波前后声音的变化。比较滤波前后语音信号的波形及频谱,对所得结果和滤波器性能进行频谱分析,阐明原因,得出结论。
1
吉林工程技术师范学院课程设计论文
第二章 语音信号处理理论基础
2.1 系统基本概述
图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。GUI的广泛应用是当今计算机发展的重大成就之一,他极大地方便了非专业用户的使用人们从此不再需要死记硬背大量的命令,取而代之的是可以通过窗口、菜单、按键等方式来方便地进行操作。
目前,随着数字化信号处理技术的不断提高,单片机,数字信号处理器以及语音处理大规模集成电路的进步,语音合成,语音识别,语音存储和回放技术的应用越来越广泛.本文提出的体积小巧,功耗低的数字化语音存储与回放系统将完全可以替代传统的语音录放系统.
2.2 系统基本原理
语音采集原理是,人耳能听到的声音是一种频率范围为20Hz20kHz,而一般语音频率最高为3.4kHz.语音的采集是指语音声波信号经麦克风和高频放大器转换成有一定幅度的模拟量电信号,然后再转换成数字量的全过程.
本次设计的基本原理是对语音的录音和放音进行数字化控制.其中,关键技术在于:为了增加语音存储时间,提高存储器的利用率,采用了非失真压缩算法对语音信号进行压缩后再存储,而在回放是再进行解压缩;同时,对输入语音信号进行数字滤波以抑制杂音和干扰,从而确保了语音回放的可靠质量.
通过设计一个GUI实验箱,并添加相应的控制控件,添加一个声音文件,通过MATLAB编程,使其通过各种按钮实现语音信号处理的各种功能,最后做成一个完整的语音信号处理实验箱。
2
吉林工程技术师范学院课程设计论文
第三章 系统方案论证
3.1 设计理论依据
3.1.1采样定理
在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中,最高频率fmax的2倍时,则采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5-10倍;采样定理又称乃奎斯特定理。
3.1.2 采样频率
采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调、衡量声卡、声音文件的质量标准。采样频率越高,即采样的间隔时间越短,则在单位时间内计算机得到的声音样本数据就越多,对声音波形的表示也就越精确,采样频率与声音频率之间有一定的关系,根据奈奎斯特理论,只有采样频率高于声音信号最高频率的2倍的时候,才能把数字信号表示的声音还原成为原来的声音,这就是说采样频率是衡量声卡采集、记录和还原声音文件的质量标准。
3.1.3 采样位数与采样频率
采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时候使用数字声音信号的二进制为数。采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。
采样位数和采样频率对于音频接口来说是最为重要的两个基本指标,也是选择音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。每增加一个采样位数相当于力度范围增加了6dB。采样位数越多则捕捉到的信号越精确。对于采样率来说你可以想象它类似一个照相机。显然采样率越高,计算机提取的图片越多,对于原始 的还原也越加精确。
3
吉林工程技术师范学院课程设计论文
第四章 GUI设计实现
4.1 整体图
4.1 GUI图
4.2 GUI各形成图
4.2.1 语音信号的短时分析 Matlab编程实验步骤:
1.新建M文件,扩展名为“.m”,编写程序; 2.选择File/Save命令,将文件保存在F盘中; 3.在Command Window窗中输入文件名,运行程序; Matlab部分函数语法格式:
读wav文件: x=wavread(`filename`) 数组a及b中元素相乘: a.*b
创建图形窗口命令: figure 绘图函数: plot(x)
坐标轴: axis([xmin xmax ymin ymax]) 坐标轴注解: xlabel(`?`) ylabel(`?`)
4
吉林工程技术师范学院课程设计论文
图例注解: legend( `?`)
一阶高通滤波器: y=filter([1-0.09375],1,x) 分帧函数: f=enframe(x,len,inc)
x为输入语音信号,len指定了帧长,inc指定帧移,函数返回为n×len的一个矩阵
[x]=wavread('3.wav'); sound(x); figure;
subplot(4,1,1); plot(x);
axis([1 length(x) -1 1]); ylabel('Speech');
enhance=filter([1-0.9375],1,x); FrameLen=240; FrameInc=80;
yframe=enframe(x,FrameLen,FrameInc); amp1=sum(abs(yframe),2); subplot(4,1,2); plot(amp1);
axis([1 length(amp1) 0 max(amp1)]); ylabel('Amp');
legend('amp1=∑│x│');
amp2=sum(abs(yframe.*yframe),2); subplot(4,1,3); plot(amp2);
axis([1 length(amp2) 0 max(amp2)]); ylabel('Energy'); legend('amp1=∑│x*x│');
tmp1=enframe(x(1:end-1),FrameLen,FrameInc); tmp2=enframe(x(2:end),FrameLen,FrameInc); signs=(tmp1.*tmp2)<0; diffs=(tmp1-tmp2)>0.02;
5