当前位置:文档之家› MATLAB课程设计--语音信号的采集与处理

MATLAB课程设计--语音信号的采集与处理

MATLAB课程设计--语音信号的采集与处理
MATLAB课程设计--语音信号的采集与处理

MATLAB 课程设计

学院:电气信息工程学院

课题:语音信号的采集与处理

班级:电信 1201

语音信号的采集与处理

一、实验要求

(1)本课程设计要求掌握 MATLAB 语言特性、数学运算和图形表示;掌握MATLAB 程序设计方法在信息处理方面的一些应用;掌握在 Windows 环境下,利用 MATLAB 进行语音信号采集与处理的基本方法。

(2)本课程设计分为基础与综合设计题目,其中基础题目为 MATLAB 基本训练(必做);对于综合设计题,需按照任务书要求,对设计过程所进行的有关步骤进行理论分析,并对完成的设计作出评价,总结自己整个设计工作中的经验教训、收获;在课设最后一天提交课程设计报告,报告必须按照统一格式打印,装订成册。

二、实验内容

1、利用 windows 自带的录音机或者其它录音软件,录制几段语音信号(要有几种不同的声音,要有男声、女声)。

2、对录制的语音信号进行频谱分析,确定该段语音的主要频率范围,由此频率范围判断该段语音信号的特点(低沉 or 尖锐?)

3、利用采样定理,对该段语音信号进行采样,观察不同采样频率(过采样、欠采样、临界采样)对信号的影响。这里涉及到采样下重采样的问题,请大家思考如何去做。

4、实现语音信号的快放、慢放、倒放、回声、男女变声。

5、对采集到的语音信号进行调制与解调,观测调制与解调前后信号的变化。

6、对语音信号加噪,然后进行滤波,分析不同的滤波方式对信号的影响。

7、如果精力和时间允许,鼓励利用 MATLAB GUI 制作语音信号采集与分析演示系统。

三、MATLAB仿真

任务一(陈康负责)

1.利用频谱的分析

利用Windows下的录音机,录制一段男生和女生的语音,存为*.WA V的文件。然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。首先画出语音信号的时域波形;然后对语音号进行快速傅里叶变换(FFT变换),得到信号的频谱特性,分析语音信号频谱。

源程序:

fs=44100;

[x,fs,Nbits] =wavread('E:\GQQQ\leo') ;

derta_fs = fs/length(x);

t=0:1/44100:(length(x)-1)/44100;

sound(x,fs) ; %对加载的语音信号进行回放

figure(1)

plot(t,x) %做原始语音信号的时域图形

title('原始语音信号');

xlabel('time n');

ylabel('fuzhi n');

n=length(x); %求出语音信号的长度

y1=fft(x,n) ; %傅里叶变换

w=1/n*[0:n-1]*fs;

figure(2)

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(y1)*2/n)); %做原始语音信号的FFT频谱图

title('原始语音信号FFT频谱')

频谱分析对比

运行结果:

女生:

频谱分析:从300hz到2000hz都有分布,主要集中在300—1200Hz,声音尖锐,是女生频谱。

男生:

频谱分析:从200hz到1000hz都有分布,集中在300—1000Hz声音低沉,是男生频谱。

任务二(詹筱珊负责)

利用采样定理,对该段语音信号进行采样,观察不同采样频率(过采样、欠采样、临界采样)对信号的影响。这里涉及到采样下重采样的问题,请大家思考如何去做。

源程序:

clear;

[y,fs,bits]=wavread('E:\GQQQ\WOMAN'); %x语音数据fs采样频率bits采样点数

sound(y,fs,bits); %话音回放

n = length (y) ; %求出语音信号的长度

derta_fs = fs/length(y);

Y=fft(y,n); %傅里叶变换

figure(1);

subplot(2,1,1);

plot(y);

title('原始信号波形');

subplot(2,1,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(Y)*2/n));

title('原始信号频谱');grid

y1=decimate(y,2); %采样频率为22050Hz,过采样

fs1=fs/2;

sound(y1,fs1,bits); %话音回放

n1 = length (y1) ; %求出语音信号的长度

derta_fs = fs/length(y1);

Y1=fft(y1,n1); %傅里叶变换

figure(2);

subplot(2,1,1);

plot(y1);

title('过采样信号波形');

subplot(2,1,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(Y1)*2/n1));

title('过采样信号频谱');grid

y2=decimate(y,4); %每4个取一个,采样频率为11025Hz接近临界采样

fs2=fs/4;

sound(y2,fs2,bits); %话音回放

n2 = length (y2) ; %求出语音信号的长度

derta_fs = fs/length(y2);

Y2=fft(y2,n2); %傅里叶变换

figure(3);

subplot(2,1,1);

plot(y2);

title('临界采样信号波形');

subplot(2,1,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(Y2)*2/n2)); title('临界采样信号频谱');grid

y3=decimate(y,8); %抽取函数,频率变为原来1/8,欠采样

fs2=fs/8;

sound(y2,fs2,bits); %话音回放

n3 = length (y3) ; %求出语音信号的长度

derta_fs = fs/length(y3);

Y3=fft(y3,n3); %傅里叶变换

figure(4);

subplot(2,1,1);

plot(y3);

title('欠采样信号波形');

subplot(2,1,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(Y3)*2/n3)); title('欠采样信号频谱');grid

运行结果:

任务三(郭前负责)

实现语音信号的快放、慢放、倒放、回声、男女变声

源程序:

%变速-快放%

fs=25600;

[z,fs,nbits]=wavread('E:\GQQQ\leo'); %读取声音文件

derta_fs = fs/length(z);

x=z(:,1); %读入的y矩阵有两列,取第1列

y1=voice(x,1.5); %调整voice()第2个参数转换音调,>1降调,<1升调,y1为x转换后的声音

w=1.5;

F=w*fs; %w>1为快放,w<1为慢放

sound(y1,F)

N=length(x); M=length(y1);

n=0:N-1; m=0:M-1;

X= fft(x); Y=fft(y1); %傅里叶变换

T=1/fs; T1=1/(fs*w);

f=n/N*fs; f1=m/M*fs*w;

t=n*T; t1=m*T1;

figure;

subplot(2,1,1);

plot(t,x);

xlabel('t/s');ylabel('幅值');title('转换前的波形');

subplot(2,1,2);

plot(t1,y1);

xlabel('t/s');ylabel('幅值');title('转换后的波形');

figure;

subplot(2,1,1);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(X))*2/N); xlabel('frequency/Hz');ylabel('幅值');title('转换前的频谱');

subplot(2,1,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(Y))*2/N); xlabel('frequency/Hz');ylabel('幅值');title('转换后的频谱');

快放:

快放之后时间缩短。

慢放:

慢放之后时间变长。

倒放

fs=22050;

[x,fs,Nbits]=wavread('E:\GQQQ\leo');

t=0:1/22050:(length(x)-1)/22050;%对加载的语音信号进行回放

y=flipud(x) %对加载的语音信号实现翻转函数figure(1)

subplot(2,1,1);

plot(x); %声音的时域波形

title('原声音的波形');

subplot(2,1,2);

plot(y);

title('倒放后声音的波形');

wavplay(y,fs);

回声:

[y,fs,nbits]=wavread('E:\GQQQ\WOMAN') ;

x=y(:,1);

z=[zeros(50000,1);x]; %延时50000个点

x1=[x;zeros(50000,1)]; %使原声音长度与延时后相等y1=x1+0.4*z; %原声+延时衰减

figure(2)

subplot(2,1,1);

plot(x); %声音的时域波形

title('原声音的波形');

subplot(2,1,2);

plot(y1);

title('加入回声的波形');

sound(5*y1,fs,nbits);

男声转换为女声

[y,fs,nbits]=wavread('E:\GQQQ\leo'); %读取声音文件

x=y(:,1); %读入的y矩阵有两列,取第1列

y1=voice(x,0.71); %调整voice()第2个参数转换音调,>1降调,<1升调,y1为x转换后的声音

N=length(x); M=length(y1);

n=0:N-1; m=0:M-1;

X= fft(x); Y=fft(y1); %傅里叶变换

Fs=2*fs; %2倍频

T=1/Fs; T1=1/Fs*0.71;

f=n/N*Fs; f1=m/M*Fs/0.71;

derta_Fs =Fs/length(x);

derta_Fs1 =Fs/length(y1);

t=n*T; t1=m*T1;

figure;

subplot(2,1,1);

plot(t,x);

xlabel('t/s');ylabel('magnitude');title('转换前的波形');

subplot(2,1,2);

plot(t1,y1);

xlabel('t/s');ylabel('magnitude');title('转换后的波形');

figure;

subplot(2,1,1);

plot([-Fs/2:derta_Fs:Fs/2-derta_Fs],abs(fftshift(X)*2/N));

xlabel('frequency/Hz');ylabel('magnitude');title('转换前的频谱');

subplot(2,1,2);

plot([-Fs/2:derta_Fs1:Fs/2-derta_Fs1],abs(fftshift(Y)*2/M)); xlabel('frequency/Hz');ylabel('magnitude');title('转换后的频谱'); sound(y1,fs,nbits);

男声转换为女声

女声转换为男声

Voice函数调用

function Y=voice(x,f)

%更改采样率使基频改变 f>1降低;f<1升高

f=round(f*1000);

d=resample(x,f,1000);

%时长整合使语音文件恢复原来时长

W=400;

Wov=W/2;

Kmax=W*2;

Wsim=Wov;

xdecim=8;

kdecim=2; X=d';

F=f/1000;

Ss =W-Wov;

xpts = size(X,2);

ypts = round(xpts / F);

Y = zeros(1, ypts);

xfwin = (1:Wov)/(Wov+1);

ovix = (1-Wov):0; newix = 1:(W-Wov);

simix = (1:xdecim:Wsim) - Wsim;

padX = [zeros(1, Wsim), X, zeros(1,Kmax+W-Wov)];

Y(1:Wsim) = X(1:Wsim); lastxpos = 0; km = 0;

for ypos = Wsim:Ss:(ypts-W)

xpos = round(F * ypos);

kmpred = km + (xpos - lastxpos);

lastxpos = xpos;

if (kmpred <= Kmax)

km = kmpred;

else

ysim = Y(ypos + simix);

rxy = zeros(1, Kmax+1);

rxx = zeros(1, Kmax+1);

Kmin = 0;

for k = Kmin:kdecim:Kmax

xsim = padX(Wsim + xpos + k + simix);

rxx(k+1) = norm(xsim);

rxy(k+1) = (ysim * xsim');

end

Rxy = (rxx ~= 0).*rxy./(rxx+(rxx==0));

km = min(find(Rxy == max(Rxy))-1);

end

xabs = xpos+km;

Y(ypos+ovix) = ((1-xfwin).*Y(ypos+ovix)) +

(xfwin.*padX(Wsim+xabs+ovix));

Y(ypos+newix) = padX(Wsim+xabs+newix);

end

end

任务四(丁睿智负责)

(1)调制:语音信号与高频正弦载波相调制,比较其频谱变化,回放信号,比较是与众语音信号变化。将调制后的信号进行解调,回放信号,比较时域中语音信号变化。

所谓调制,就是在传送信号的一方将所要传送的信号附加在高频振荡上,再由天线发射出去。这里高频振荡波就是携带信号的运载工具,也叫载波。振幅调制,就是由调制信号去控制高频载波的振幅,直至随调制信号做线性变化。在线性调制系列中,最先应用的一种幅度调制是全调幅或常规调幅,简称为调幅(AM)。在频域中已调波频谱是基带调制信号频谱的线性位移;在时域中,已调波包络与

调制信号波形呈线性关系。

设正弦载波为:c(t)=Acos(00t w ?+)式中,A 为载波幅度; 0w 为载波角频率;0? 为载波初始相位(假设0?=0).

调制信号(基带信号)为m(t)。根据调制的定义,振幅调制信号(已调信号)一般可以表示为 :)cos()(t s 0m t w t Am =)

( 设调制信号)(t m 的频谱为)(w m ,则已调信号)(t s m 的频谱为)(w s m

:[])()(2

)(00w w M w w M A

w s m -++=

标准调幅波(AM )产生原理:

调制信号是只来来自信源的调制信号(基带信号),这些信号可以是模拟的,亦可以是数字的。为首调制的高频振荡信号可称为载波,它可以是正弦波,亦可以是非正弦波(如周期性脉冲序列)。载波由高频信号源直接产生即可,然后经过高频功率放大器进行放大,作为调幅波的载波,调制信号由低频信号源直接产生,二者经过乘法器后即可产生双边带的调幅波。

设载波信号的表达式为t w 0cos ,调制信号的表达式为t w A t m m m cos )(=,则调幅信号的表达式为[]t w t m A t s AM 00cos )()(+=

(2)解调

从高频已调信号中恢复出调制信号的过程称为解调(demodulation ),又称为检波(detection )。对于振幅调制信号,解调(demodulation )就是从它的幅度变化上提取调制信号的过程。解调(demodulation )是调制的逆过程。

可利用乘积型同步检波器实现振幅的解调,让已调信号与本地恢复载波信号相乘并通过低通滤波可获得解调信号。

调制与解调: 源程序:

clear;

[f1,fs,nbits]=wavread('E:\GQQQ\WOMAN'); %读入录音文件 dt=1/fs;

figure(1); %控制画图窗口1

subplot(2,1,1); %将多个图画到一个平面,2行1列,共2个子图,定位第1个图进行操作 N=length(f1);

derta_fs = fs/length(f1); %设置频率间隔 t=0:1/fs:(N-1)/fs;

plot(t,f1); % 以t 为横坐标,f1为纵坐标绘制连线图 title('信息信号的时域波形'); %加标题

fy1=fft(f1);

w1=0:fs/(N-1):fs;

subplot(2,1,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fy1)*2/N));

title('信息信号的频谱');

f2=cos(22000*pi*t);

fy2 = fft(f2);

N2=length(f2);

w2=fs/N*[0:N-1];

figure(2);

subplot(2,2,1);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fy2)*2/N));

title('载波信号的频谱');

f1=f1(:,1);

f3=f1'.*f2;

subplot(2,2,2);

fy3 = fft(f3);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fy3)*2/N));

title('已调信号的频谱');

sound(f3,fs,nbits); %播放语音信号

f4=f3.*f2;

subplot(2,1,2);

fy4=fft(f4);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fy4)*2/N));

title('解调信号的频谱');

sound(f4,fs,nbits);

fp1=0;

fs1=5000;

As1=100;

wp1=2*pi*fp1/fs;

ws1=2*pi*fs1/fs;

BF1=ws1-wp1;

wc1=(wp1+ws1)/2;

M1=ceil((As1-7.95)/(2.286*BF1))+1;

N1=M1+1;

beta1=0.1102*(As1-8.7);

Window=(kaiser(N1,beta1)); % 用kaiser窗函数

b1=fir1(M1,wc1/pi,Window); % fir1是用窗函数法设计线性相位FIRDF 的工具箱函数

figure(3);

freqz(b1,1,512);

title('FIR低通滤波器的频率响应'); %用于求离散系统频响特性的函数freqz f4_low = filter(b1,1, f4); %一维数字滤波器

plot(t,2*f4_low);

title('滤波后的解调信号时域波形');

sound(f4_low,fs,nbits);

f5=fft(f4_low);

figure(4);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(f5)*2/N));

title('滤波后的解调信号频谱');

任务五(吴亚明负责)

对语音信号加噪,然后进行滤波,分析不同的滤波方式对信号的影响

加噪

源程序:

[y,fs,nbits]=wavread ('E:\GQQQ\WOMAN');

N = length (y) ; %求出语音信号的长度

derta_fs = fs/length(y);

Noise=0.05*randn(N,2); %随机函数产生噪声

Si=y+Noise; %语音信号加入噪声

sound(Si,fs);

figure(1);

subplot(2,1,1);

plot(y);title('原语音信号的时域波形');

Y=fft(y); %傅里叶变换

subplot(2,1,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(Y)*2/N));

title('原语音信号的频域波形');

figure(2);

subplot(2,1,1);

plot(Si);title('加噪语音信号的时域波形');

S=fft(Si); %傅里叶变换

subplot(2,1,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(S)*2/N));

title('加噪语音信号的频域波形');

低通:

[y,fs,nbits]=wavread ('E:\GQQQ\WOMAN');

n = length (y) ; %求出语音信号的长度

derta_fs = fs/length(y);

noise=0.05*randn(n,2); %随机函数产生噪声

s=y+noise; %语音信号加入噪声

S=fft(s); %傅里叶变换

Ft=8000;

Fp=1000;

Fs=1200;

wp=2*pi*Fp/Ft;

ws=2*pi*Fs/Ft;

[n11,wn11]=buttord(wp,ws,1,50,'s'); %低通滤波器的阶数和截止频率

[b11,a11]=butter(n11,wn11,'s'); %S域频率响应的参数

[num11,den11]=bilinear(b11,a11,0.5); %利用双线性变换实现频率响应S域到Z域的变换

z11=filter(num11,den11,s); %直接滤波器实现

sound(z11,fs,nbits);

m11=fft(z11); %求滤波后的信号

subplot(2,2,1);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(S)*2/n));

title('滤波前信号的频谱');

grid;

subplot(2,2,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(m11)*2/n));

title('滤波后信号的频谱');

grid;

subplot(2,2,3);

plot(s);

title('滤波前信号的波形');

grid;

subplot(2,2,4);

plot(z11);

title('滤波后的信号波形’)

高通

[y,fs,nbits]=wavread ('E:\GQQQ\WOMAN');

n = length (y) ; %求出语音信号的长度

derta_fs = fs/length(y);

noise=0.001*randn(n,2); %随机函数产生噪声

s=y+noise; %语音信号加入噪声

S=fft(s); %傅里叶变换

Fp1=300;

Fs1=1000;

Ft=8000;

wp1=tan(pi*Fp1/Ft);

ws1=tan(pi*Fs1/Ft);

wp=1;

ws=wp1*wp/ws1;

[n13,wn13]=cheb1ord(wp,ws,1,50,'s'); %模拟的低通滤波器阶数和截止频率

[b13,a13]=cheby1(n13,1,wn13,'s'); %S域的频率响应的参数[num,den]=lp2hp(b13,a13,wn13); %S域低通参数转为高通的[num13,den13]=bilinear(num,den,0.5); %利用双线性变换实现频率响应S 域到Z域转换

z13=filter(num13,den13,s);

sound(z13);

m13=fft(z13); %求滤波后的信号

subplot(2,2,1);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(S)*2/n));

title('滤波前信号的频谱');

grid;

subplot(2,2,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(m13)*2/n));

title('滤波后信号的频谱');

grid;

subplot(2,2,3);

plot(s);

title('滤波前信号的波形');

grid;

subplot(2,2,4);

plot(z13);

title('滤波后的信号波形');

带通:

[y,fs,nbits]=wavread ('E:\GQQQ\WOMAN');

n = length (y) ; %求出语音信号的长度

derta_fs = fs/length(y);

Noise=0.05*randn(n,2); %随机函数产生噪声

s=y+Noise; %语音信号加入噪声

S=fft(s); %傅里叶变换

Ft=8000;

Fp=1000;

Fs=1200;

wp=2*Fp/Ft;

ws=2*Fs/Ft;

rp=1;

rs=50;

p=1-10.^(-rp/20); %通带阻带波纹

q=10.^(-rs/20);

fpts=[wp ws];

mag=[1 0];

dev=[p q];

[n12,wn12,beta,ftype]=kaiserord(fpts,mag,dev); %由kaiserord求滤波器的阶数和截止频率

b12=fir1(n12,wn12,kaiser(n12+1,beta)); %设计滤波器

z12=fftfilt(b12,s);

sound(z12,fs,nbits);

m12=fft(z12); %求滤波后的信号

subplot(2,2,1);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(S)*2/n));

title('滤波前信号的频谱');

grid;

subplot(2,2,2);

plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(m12)*2/n));

title('滤波后信号的频谱');

grid;

subplot(2,2,3);

plot(s);

title('滤波前信号的波形');

grid;

subplot(2,2,4);

plot(z12);

title('滤波后的信号波形');

课程设计总结:

陈康:

为期两周的课程设计让我们对于数字信号处理以及MATLAB软件有了更深的了解,让我们将课堂上学到的知识融会贯通起来。同时也让我们首先真实地感受到matlab功能的强大,它几乎可以完成任何数学计算;而在整个课程设计过程中,自己也体会到了自主学习的乐趣和意义。遇到问题,自己想都不想就直接问别人,或者干脆放弃是一种解决办法;而自己先思考,实在不会再问别人然后举

一反三是另外一种解决方案;而这其中的区别不仅仅是自己的态度,而且决定了你是不是真的通过课程设计学到了一些东西。遇到挫折,这是在所难免的,题目不会、资料找不到、运行之后提示错误等等这些已经是课程设计中的“家常便饭”了,但是只要我们有兴趣,肯去学,就能够搞定这些障碍,因为任何事情都是由不会到会,所以做课程设计也是锻炼自己的耐心的一个过程。

詹筱珊:

本次课程设计应用MATLAB验证时域采样定理,主要侧重于某些理论知识的灵活运用,以及一些关键命令的掌握理解与分析,初步掌握线性系统的设计方法,培养独立的工作能力。加深理解时域采样定理的概念,掌握利用MATLAB分析系统频率响应的方法,计算在临界采样·过采样·欠采样三种不同条件下恢复信号的误差,并总结采样频率对信号恢复产生误差的影响,从而验证时域采样定理。一·在上述实验当中,首先定义信号时采用了该信号的函数表达式形式。二·在MATLAB中求连续信号的频谱,应用的是傅里叶变换,这样实际运算的仍是对连续信号的采样结果,这里给予了足够高的采样频率,把其作为连续信号来考虑。三·实际中对模拟信号进行采样,需要根据最高截止频率fmax,按照采样定理的要求选择采样频率的两倍,即fs>2fmax。设计结果中对三种频率时采样分析总结:(1)欠采样即fs<2fmax,时域波形恢复过程中已经不能完整表示原信号,有了失真,从频谱上也可看出,同的频谱带互相重叠,已经不能体现原信号频谱的特点了,从而无法得到原来的信号。(2)临界采样即fs=2fmax,时域波形仍然不能恢复完整的原信号,信号只恢复过程中恢复了低频信号,从频率上便可看出,但仍然不可完全恢复原信号。(3)过采样即fs>2fmax,此时采样是成功的,它能够恢复原信号,从时域波形可看出,比上面采样所得的冲激脉冲串包含的细节要多,在频率中也没出现频谱的交叠,这样我们可以利用低通滤波器m(t)得到无失真的重建。

郭前:

此次MATLAB课程设计至此已经完全结束了。在这两周里,遇到了好多问题,比如,在编写函数的傅里叶变换时,由于网络上好多错误的程序导致我们做了很多无用功,不过经过自己的查询与尝试,终于将这个问题解决了,还有男女变声的问题。女生的声音很容易就变成了男生的声音,但是男生的声音却很难变成女生的声音。设计回声时,效果不怎么明显,于是就延迟了更久的时间,使得回声听的很明显。当然,设计过程中,老师帮助了我很多,在老师的细心指导下,使得这次课程设计完美结束。

丁睿智:

本次试验利用载波进行调制解调,同时,在进行相干解调时,使用FIR低通滤波器对调制信号进行解调,是的语音信号的噪音得到抑制。通过实验我懂得了调制和解调的意义:当有两段语音信号,为使得两段语音信号在传输过程中不相互干扰,这时我们可以考虑对这两段信号分别进行幅度调制,但载波的频率相距较远,然后分别对调制以后的信号进行传输,到接收端以后再将这两短信号进行解调,然后就可以分别得到这两短信号了。

语音信号处理与及其MATLAB实现分析

目录 摘要 (2) 第一章绪论 (3) 1.1 语音课设的意义 (3) 1.2 语音课设的目的与要求 (3) 1.3 语音课设的基本步骤 (3) 第二章设计方案论证 (5) 2.1 设计理论依据 (5) 2.1.1 采样定理 (5) 2.1.2 采样频率 (5) 2.1.3 采样位数与采样频率 (5) 2.2 语音信号的分析及处理方法 (6) 2.2.1 语音的录入与打开 (6) 2.2.2 时域信号的FFT分析 (6) 2.2.3 数字滤波器设计原理 (7) 2.2.4 数字滤波器的设计步骤 (7) 2.2.5 IIR滤波器与FIR滤波器的性能比较 (7) 第三章图形用户界面设计 (8) 3.1 图形用户界面概念 (8) 3.2 图形用户界面设计 (8) 3.3 图形用户界面模块调试 (9) 3.3.1 语音信号的读入与打开 (9) 3.3.2 语音信号的定点分析 (9) 3.3.3 N阶高通滤波器 (11) 3.3.4 N阶低通滤波器 (12) 3.3.5 2N阶带通滤波器 (13) 3.3.6 2N阶带阻滤波器 (14) 3.4 图形用户界面制作 (15) 第四章总结 (18) 附录 (19) 参考文献 (24)

摘要 数字信号处理是将信号以数字方式表示并处理的理论和技术。数字信号处理与模拟信号处理是信号处理的子集。 数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的。 数字信号处理的算法需要利用计算机或专用处理设备如数字信号处理器(DSP)和专用集成电路(ASIC)等。数字信号处理技术及设备具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等突出优点,这些都是模拟信号处理技术与设备所无法比拟的。 数字信号处理的核心算法是离散傅立叶变换(DFT),是DFT使信号在数字域和频域都实现了离散化,从而可以用通用计算机处理离散信号。而使数字信号处理从理论走向实用的是快速傅立叶变换(FFT),FFT的出现大大减少了DFT的运算量,使实时的数字信号处理成为可能、极大促进了该学科的发展。 MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple 并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。

基于Matlab的脑电波信号处理

做脑电波信号处理滴嘿嘿。。Matlab addicted Codes %FEATURE EXTRACTER function [features] = EEGfeaturetrainmod(filename,m) a = 4; b = 7; d = 12; e = 30; signals = 0; for index = 1:9; % read in the first ten EEG data because the files are numbered as ha11test01 rather than ha11test1. s = [filename '0' num2str(index) '.dat']; signal = tread_wfdb(s); if signals == 0; signals = signal; else signals = [signals signal]; end end for index = 10:1:m/2; % read in the rest of the EEG training data s = [filename num2str(index) '.dat']; signal = tread_wfdb(s); if signals == 0;

signals = signal; else signals = [signals signal]; end end %%%%% modification just for varying the training testing ratio ------ for index = 25:1:25+m/2; % read in the rest of the EEG training data s = [filename num2str(index) '.dat']; signal = tread_wfdb(s); if signals == 0; signals = signal; else signals = [signals signal]; end end %%%%%end of modification just for varying the training testing ratio----- for l = 1:m % exrating features (power of each kind of EEG wave forms) [Pxx,f]=pwelch(signals(:,l)-mean(signals(:,l)), [], [], [], 200); % relative power fdelta(l) = sum(Pxx(find(fa))); falpha(l) = sum(Pxx(find(fb))); fbeta(l) = sum(Pxx(find(fd))); fgama(l)= sum(Pxx(find(f>e))); % gama wave included for additional work

语音信号处理答案

二、问答题(每题分,共分) 、语音信号处理主要研究哪几方面的内容? 语音信号处理是研究用数字信号处理技术对语言信号进行处理的一门学科,语音信号处理的理论和研究包括紧密结合的两个方面:一方面,从语言的产生和感知来对其进行研究,这一研究与语言、语言学、认知科学、心理、生理等学科密不可分;另一方面,是将语音作为一 种信号来进行处理,包括传统的数字信号处理技术以及一些新的应用于语音信号的处理方法 和技术。 、语音识别的研究目标和计算机自动语音识别的任务是什么? 语音识别技术,也被称为自动语音识别,(),其目标是将人类的语音中的词汇内容转换为 计算机可读的输入,例如按键、二进制编码或者字符序列。 计算机自动语音识别的任务就是让机器通过识别和理解过程把语音信号转变为相应的文本 或命令的高技术。 、语音合成模型关键技术有哪些? 语音合成是实现人机语音通信,建立一个有听和讲能力的口语系统所需的两项关键技术,该系统主要由三部分组成:文本分析模块、韵律生成模块和声学模块。.如何取样以精确地抽取人类发信的主要特征,.寻求什么样的网络特征以综合声道的频率响应,.输出合成声音的质量如何保证。 、语音压缩技术有哪些国际标准? 二、名词解释(每题分,共分) 端点检测:就从包含语音的一段信号中,准确的确定语音的起始点和终止点,区分语音信号和非语音信号。 共振峰:当准周期脉冲激励进入声道时会引起共振特性,产生一组共振频率,称为共振峰频率或简称共振峰。 语谱图:是一种三维频谱,它是表示语音频谱随时间变化的图形,其纵轴为频率,横轴为时间,任一给定的频率成分在给定时刻的强弱用相应点的灰度或色调的浓淡来表示。 码本设计:就是从大量信号样本中训练出好的码本,从实际效果出发寻找好的失真测度定义 公示,用最少的搜素和计算失真的运算量。 语音增强:语音质量的改善和提高,目的去掉语音信号中的噪声和干扰,改善它的质量 三、简答题(每题分,共分) 、简述如何利用听觉掩蔽效应。 一个较弱的声音(被掩蔽音)的听觉感受被另一个较强的声音(掩蔽音)影响的现象称为人耳的“掩蔽效应”。人耳的掩蔽效应一个较弱的声音(被掩蔽音)的听觉感受被另一个较强的声 音(掩蔽音)影响的现象称为人耳的“掩蔽效应”。被掩蔽音单独存在时的听阈分贝值,或者 说在安静环境中能被人耳听到的纯音的最小值称为绝对闻阈。实验表明,—绝对闻阈值最小,即人耳对它的微弱声音最敏感;而在低频和高频区绝对闻阈值要大得多。在范围内闻阈随频率变化最不显著,即在这个范围内语言可储度最高。在掩蔽情况下,提高被掩蔽弱音的强度, 使人耳能够听见时的闻阈称为掩蔽闻阈(或称掩蔽门限),被掩蔽弱音必须提高的分贝值称为 掩蔽量(或称阈移)。 、简述时间窗长与频率分辨率的关系。 采样周期、窗口长度和频率分辨率△之间存在下列关系:△(*) 可见,采样周期一定时,△随窗口宽度的增加而减少,即频率分辨率相应得到提高,但同时时间分辨率降低;如果窗口取短,频率分辨率下降,而时间分辨率提高,因而二者是矛盾的。 、简述时域分析的技术(最少三项)及其在基因检测中的应用。()

基于Matlab的语音信号处理与分析

系(院)物理与电子工程学院专业电子信息工程题目语音信号的处理与分析 学生姓名 指导教师 班级 学号 完成日期:2013 年5 月 目录 1 绪论.............................................................................................................. 错误!未定义书签。 1.1课题背景及意义................................................................................. 错误!未定义书签。 1.2国内外研究现状................................................................................. 错误!未定义书签。 1.3本课题的研究内容和方法................................................................. 错误!未定义书签。 1.3.1 研究内容................................................................................ 错误!未定义书签。 1.3.2 开发环境................................................................................ 错误!未定义书签。 2 语音信号处理的总体方案............................................................................ 错误!未定义书签。 2.1 系统基本概述.................................................................................... 错误!未定义书签。 2.2 系统基本要求与目的........................................................................ 错误!未定义书签。 2.3 系统框架及实现................................................................................ 错误!未定义书签。 2.3.1 语音信号的采样.................................................................... 错误!未定义书签。 2.3.2 语音信号的频谱分析............................................................ 错误!未定义书签。 2.3.3 音乐信号的抽取.................................................................... 错误!未定义书签。 2.3.4 音乐信号的AM调制.............................................................. 错误!未定义书签。 2.3.5 AM调制音乐信号的同步解调............................................... 错误!未定义书签。 2.4系统设计流程图................................................................................. 错误!未定义书签。 3 语音信号处理基本知识................................................................................ 错误!未定义书签。 3.1语音的录入与打开............................................................................. 错误!未定义书签。 3.2采样位数和采样频率......................................................................... 错误!未定义书签。 3.3时域信号的FFT分析......................................................................... 错误!未定义书签。 3.4切比雪夫滤波器................................................................................. 错误!未定义书签。 3.5数字滤波器设计原理......................................................................... 错误!未定义书签。 4 语音信号实例处理设计................................................................................ 错误!未定义书签。 4.1语音信号的采集................................................................................. 错误!未定义书签。

基于MATLAB的语音信号处理系统设计(程序+仿真图)--毕业设计

语音信号处理系统设计 摘要:语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科。语音信号处理的目的是得到某些参数以便高效传输或存储,或者是用于某种应用,如人工合成出语音、辨识出讲话者、识别出讲话内容、进行语音增强等。本文简要介绍了语音信号采集与分析以及语音信号的特征、采集与分析方法,并在采集语音信号后,在MATLAB 软件平台上进行频谱分析,并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。利用MATLAB来读入(采集)语音信号,将它赋值给某一向量,再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波,然后我们还可以通过sound命令来对语音信号进行回放,以便在听觉上来感受声音的变化。 关键词:Matlab,语音信号,傅里叶变换,滤波器 1课程设计的目的和意义 本设计课题主要研究语音信号初步分析的软件实现方法、滤波器的设计及应用。通过完成本课题的设计,拟主要达到以下几个目的: 1.1.了解Matlab软件的特点和使用方法。 1.2.掌握利用Matlab分析信号和系统的时域、频域特性的方法; 1.3.掌握数字滤波器的设计方法及应用。 1.4.了解语音信号的特性及分析方法。 1.5.通过本课题的设计,培养学生运用所学知识分析和解决实际问题的能力。 2 设计任务及技术指标 设计一个简单的语音信号分析系统,实现对语音信号时域波形显示、进行频谱分析,

利用滤波器滤除噪声、对语音信号的参数进行提取分析等功能。采用Matlab设计语言信号分析相关程序,并且利用GUI设计图形用户界面。具体任务是: 2.1.采集语音信号。 2.2.对原始语音信号加入干扰噪声,对原始语音信号及带噪语音信号进行时频域分析。 2.3.针对语音信号频谱及噪声频率,设计合适的数字滤波器滤除噪声。 2.4.对噪声滤除前后的语音进行时频域分析。 2.5.对语音信号进行重采样,回放并与原始信号进行比较。 2.6.对语音信号部分时域参数进行提取。 2.7.设计图形用户界面(包含以上功能)。 3 设计方案论证 3.1语音信号的采集 使用电脑的声卡设备采集一段语音信号,并将其保存在电脑中。 3.2语音信号的处理 语音信号的处理主要包括信号的提取播放、信号的重采样、信号加入噪声、信号的傅里叶变换和滤波等,以及GUI图形用户界面设计。 Ⅰ.语音信号的时域分析 语音信号是一种非平稳的时变信号,它携带着各种信息。在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在与方便有效的提取并表示语音信号所携带的信息。语音信号分析可以分为时域和变换域等处理方法,其中时域分析是最简单的方法。 Ⅱ.语音信号的频域分析 信号的傅立叶表示在信号的分析与处理中起着重要的作用。因为对于线性系统来说,可以很方便地确定其对正弦或复指数和的响应,所以傅立叶分析方法能完善地解决许多信号分析和处理问题。另外,傅立叶表示使信号的某些特性变得更明显,因此,它能更

语音信号处理 (第2版)赵力 编著 语音信号处理勾画要点

语音信号处理(第2版)赵力编著 重点考点 第2章语音信号处理的基础知识 1.语音(Speech)是声音(Acoustic)和语言(Language)的组合体。可以这样定义语音:语音是由一连串的音组成语言的声音。 2.人的说话过程可以分为五个阶段:(1)想说阶段(2)说出阶段(3)传送阶段(4)理解阶段(5)接收阶段。 3.语音是人的发声器官发出的一种声波,它具有一定的音色,音调,音强和音长。其中,音色也叫音质,是一种声音区别于另一种声音的基本特征。音调是指声音的高低,它取决于声波的频率。声音的强弱叫音强,它由声波的振动幅度决定。声音的长短叫音长,它取决于发音时间的长短。 4.说话时一次发出的,具有一个响亮的中心,并被明显感觉到的语音片段叫音节(Syllable)。一个音节可以由一个音素(Phoneme)构成,也可以由几个音素构成。音素是语音发音的最小单位。任何语言都有语音的元音(Vowel)和辅音(Consonant)两种音素。 5.元音的另一个重要声学特性是共振峰(Formant)。共振峰参数是区别不同元音的重要参数,它一般包括共振峰频率(Formant Frequency)的位置和频带宽度(Formant Bandwidth)。 6.区分语音是男声还是女声、是成人声音还是儿童声音,更重要的因素是共振峰频率的高低。 7.浊音的声带振动基本频率称基音周期(或基音频率),F0表示。 8.人的听觉系统有两个重要特性,一个是耳蜗对于声信号的时频分析特性;另一个是人耳听觉掩蔽效应。 9.掩蔽效应分为同时掩蔽和短时掩蔽。 10.激励模型:一般分成浊音激励和清音激励。浊音激励波是一个以基音周期为周期的斜三角脉冲串。 11.声道模型:一是把声道视为由多个等长的不同截面积的管子串联而成的系统。按此观点推导出的叫“声管模型”。另一个是把声道视为一个谐振腔,按此推导出的叫“共振峰模型”。 12.完整的语音信号的数字模型可以用三个子模型:激励模型、声道模型和辐射模型的串联来表示。 13.语谱图:人们致力于研究语音的时频分析特性,把和时序相关的傅立叶分析的显示图形。 第三章语音信号分析 1.贯穿于语音分析全过程的是“短时分析技术”。 2.语音信号的数字化一般包括放大及增益控制、反混叠滤波、采样、A/D变换及编码(一般就是PCM码);预处理一般包括预加重、加窗和分帧等。 3.预滤波的目的有两个:

基于MATLAB的语音信号采集与处理

工程设计论文 题目:基于MATLAB的语音信号采集与处理 姓名: 班级: 学号: 指导老师:

一.选题背景 1、实践意义: 语音信号是一种非平稳的时变信号,它携带着各种信息。在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在于方便有效地提取并表示语音信号所携带的信息。所以理解并掌握语音信号的时域和频域特性是非常重要的。 通过语音相互传递信息是人类最重要的基本功能之一.语言是人类特有的功能.声音是人类常用工具,是相互传递信息的最重要的手段.虽然,人可以通过多种手段获得外界信息,但最重要,最精细的信息源只有语言,图像和文字三种.与用声音传递信息相比,显然用视觉和文字相互传递信息,其效果要差得多.这是因为语音中除包含实际发音容的话言信息外,还包括发音者是谁及喜怒哀乐等各种信息.所以,语音是人类最重要,最有效,最常用和最方便的交换信息的形式.另一方面,语言和语音与人的智力活动密切相关,与文化和社会的进步紧密相连,它具有最大的信息容量和最高的智能水平。 语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科,处理的目的是用于得到某些参数以便高效传输或存储;或者是用于某种应用,如人工合成出语音,辨识出讲话者,识别出讲话容,进行语音增强等. 语音信号处理是一门新兴的学科,同时又是综合性的多学科领域,

是一门涉及面很广的交叉学科.虽然从事达一领域研究的人员主要来自信息处理及计算机等学科.但是它与语音学,语言学,声学,认知科学,生理学,心理学及数理统计等许多学科也有非常密切的联系. 语音信号处理是许多信息领域应用的核心技术之一,是目前发展最为迅速的信息科学研究领域中的一个.语音处理是目前极为活跃和热门的研究领域,其研究涉及一系列前沿科研课题,巳处于迅速发展之中;其研究成果具有重要的学术及应用价值. 数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。具有灵活、精确、抗干扰强、度快等优点。 数字滤波器, 是数字信号处理中及其重要的一部分。随着信息时代和数字技术的发展,受到人们越来越多的重视。数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应( IIR,Infinite Impulse Response)滤波器。 FIR滤波器结构上主要是非递归结构,没有输出到输入的反馈,系统函数H (z)在处收敛,极点全部在z = 0处(因果系统),因而只能

《语音信号处理》期末考试试题

2011-2012学年第一学期 《语音信号处理》期末考试试题(A) 适用班级:时量:120分钟闭卷记分: 考生班级:姓名:学号: 注:答案全部写在答题纸上,写在试卷上无效! 一、填空题:(共7小题,每空2分,共20分) 1、矢量量化系统主要由编码器和组成,其中编码器主要 是由搜索算法和构成。 2、基于物理声学的共振峰理论,可以建立起三种实用的共振峰 模型:级联型、并联型和。 3、语音编码按传统的分类方法可以分为、和混合 编码。 4、对语音信号进行压缩编码的基本依据是语音信号的和人 的听觉感知机理。 5、汉语音节一般由声母、韵母和三部分组成。 6、人的听觉系统有两个重要特性,一个是耳蜗对于声信号的时 频分析特性;另一个是人耳听觉的效应。 7、句法的最小单位是,词法的最小单位是音节,音节可 以由构成。 二、判断题:(共3小题,每小题2分,共6分)

1、预测编码就是利用对误差信号进行编码来降低量化所需的比 特数,从而使编码速率大幅降低。() 2、以线性预测分析-合成技术为基础的参数编码,一般都是根据 语音信号的基音周期和清/浊音标志信息来决定要采用的激 励信号源。() 3、自适应量化PCM就是一种量化器的特性,能自适应地随着输 入信号的短时能量的变化而调整的编码方法。() 三、单项选择题:(共3小题,每小题3分,共9分) 1、下列不属于衡量语音编码性能的主要指标是()。 (A)编码质量(B)矢量编码(C)编码速率(D)坚韧性 2、下列不属于编码器的质量评价的是() (A)MOS (B)DAM(C)DRT(D)ATC 3、限词汇的语音合成技术已经比较成熟了,一般我们是采用() 作为合成基元。 (A)词语(B)句子(C)音节(D)因素 四、简答题:(共2小题,每小题12分,共24分) 1、画出矢量量化器的基本结构,并说明其各部分的作用。 2、试画出语音信号产生的离散时域模型的原理框图,并说明各 部分的作用。 五、简答题:(共5小题,前三小题,每题5分,后两小题,每题10分,共35分) 1、线性预测分析的基本思想是什么?

通信中的语音信号处理复习大纲

《通信中的语音信号处理》复习大纲 北科大版 1、了解语音信号处理的目的、实质和发展历史; 实质:是研究用数字信号处理技术对语音信号进行处理的一门学科 目的:通过处理得到一些反映语音信号重要特征的语音参数以便高效地传输或储存语音信号所包含的信息。 通过对语音信号进行某种运算以达到某种要求。 发展历史:1876年电话的发明,贝尔(Bell); 1939年声码器的研制成功—声源+声道; 1947年贝尔实验室发明语谱图仪—语音识别研究的开始; 50年代第一台口授打字机和英语单词语音识别器; 60年代出现了第一台以数字计算机为基础的孤立词语音识别器和有限连续语音识别器; 70年代动态规划技术、隐马尔可夫模型、线性预测技术和矢量量化码书生成方法用于语音编码和识别; 80、90年代语音处理技术产品化—IBM Tangora-5和Tangora-20英语听写机,Dragon Dictate 词汇翻译系统(70000),汉语听写机。 CMU语音组研制成功SPHINX系统(997,95.8%); 国内,清华大学、中科院声学所和中科院自动化所在汉语听写机研究方面有一定成果。 (除了属于这种LPC[线性预测分析法]的方法外,还开发了各种数字语音处理方法。到目前为止,相继实现了语音编码、语音分析、语音合成、语音修正、语音识别、说话者识别等各种具体应用系统。) 2、理解和掌握语音信号的表示和处理方法,常用的语音编码的采样率和相应的数字语音信号的速率; 1.语音表示方法的选择:要保存语音信号中的消息内容;表示形式要便于传输和存储、变换和处理,不至于严重损害消息的内容, 有用信息更易于被提取; 2. 语音信号数字表示的优点: 数字技术能完成许多很复杂的信号处理工作; 语音可以看成是音素的组合,具有离散的性质,特别适合于数字处理; 数字系统具有高可靠性、价廉、紧凑、快速等特点,很容易完成实时处理任务; 数字语音适于在强干扰信道中传输,易于和数据一起在通信网中传输,也易于进行加密传输。 3. 语音信号的数字表示方法:波形表示—采样和量化,保持波形;参数表示—激励源和模型参数(第二章) 语音信号的特点—短时平稳性 4. 处理方法:短时时域处理方法—短时能量、短时平均过零率以及短时自相关函数计算 短时频域分析—短时傅立叶分析 线性预测技术—本质上属于时域分析方法,但其结果可以是频域参数 倒谱和同态分析、矢量量化和隐马尔可夫模型 5. PCM编码:采样率:8000次/second,均匀量化:采样率12bps信号速率96kbps,非均匀量化:采样率8bps信号速率64kbps ADPCM:采样率:8khz速率:32kbps 3、理解语音信号的产生过程、发生机理和语音信号的声学特性; 产生过程:语音是说话人和听者之间相互传递的信号,传递的媒介是声波,说话人的发音器官做出发声动作,接着空气振动形成声波,声波传到听者的耳朵里,立刻引起听者的听觉反应 发生机理: 声学特性:频率:与音高有关;振幅:与响度有关。 4、理解和掌握语音信号浊音的基音频率、共振峰,及共振峰的计算方法; 浊音的基音频率(F0):由声带的尺寸、特性和声带所受张力决定,其值等于声带张开和闭合一次的时间的倒数。人类基音频率的范围在60Hz至450Hz左右。 共振峰(formant):声道是一个谐振腔,当激励的频率达到至声道的固有频率,则声道会以最大的振幅振荡,此时的频率称之为共振峰或共振峰频率。声道具有的一组共振峰,声道的频谱特性主要反映出这些共振峰的不同位置以及各个峰的频带宽度。共振峰及其带宽取决于声道某一瞬间的形状和尺寸,因而不同的语音对应于一组不同的共振峰参数。实际应用中,头三个共振峰最重要。

语音信号处理matlab实现

短时能量分析matlab源程序: x=wavread('4.wav'); %计算N=50,帧移=50时的语音能量 s=fra(50,50,x);%对输入的语音信号进行分帧,其中帧长50,帧移50 s2=s.^2;%一帧内各种点的能量 energy=sum(s2,2);%求一帧能量 subplot(2,2,1); plot(energy) xlabel('帧数'); ylabel('短时能量E'); legend('N=50'); axis([0,500,0,30]) %计算N=100,帧移=100时的语音能量 s=fra(100,100,x); s2=s.^2; energy=sum(s2,2); subplot(2,2,2); plot(energy) xlabel('帧数'); ylabel('短时能量E'); legend('N=100'); axis([0,300,0,30]) %计算N=400,帧移=400时的语音能量 s=fra(400,400,x); s2=s.^2; energy=sum(s2,2); subplot(2,2,3); plot(energy) xlabel('帧数'); ylabel('短时能量E'); legend('N=400'); axis([0,60,0,100]) %计算N=800,帧移=800时的语音能量 s=fra(800,800,x); s2=s.^2; energy=sum(s2,2); subplot(2,2,4); plot(energy) xlabel('帧数'); ylabel('短时能量E'); legend('N=800'); axis([0,30,0,200]) 分帧子函数: function f=fra(len,inc,x) %对读入语音分帧,len为帧长,inc为帧重叠样点数,x为输入语音数据 fh=fix(((size(x,1)-len)/inc)+1);%计算帧数 f=zeros(fh,len);%设一个零矩阵,行为帧数,列为帧长 i=1;n=1; while i<=fh %帧间循环 j=1; while j<=len %帧内循环 f(i,j)=x(n); j=j+1;n=n+1; end n=n-len+inc;%下一帧开始位置 i=i+1; end

实验一 基于Matlab的数字信号处理基本

实验一 基于Matlab 的数字信号处理基本操作 一、 实验目的:学会运用MA TLAB 表示的常用离散时间信号;学会运用MA TLAB 实现离 散时间信号的基本运算。 二、 实验仪器:电脑一台,MATLAB6.5或更高级版本软件一套。 三、 实验内容: (一) 离散时间信号在MATLAB 中的表示 离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。离散序列通常用)(n x 来表示,自变量必须是整数。 离散时间信号的波形绘制在MATLAB 中一般用stem 函数。stem 函数的基本用法和plot 函数一样,它绘制的波形图的每个样本点上有一个小圆圈,默认是空心的。如果要实心,需使用参数“fill ”、“filled ”,或者参数“.”。由于MATLAB 中矩阵元素的个数有限,所以MA TLAB 只能表示一定时间范围内有限长度的序列;而对于无限序列,也只能在一定时间范围内表示出来。类似于连续时间信号,离散时间信号也有一些典型的离散时间信号。 1. 单位取样序列 单位取样序列)(n δ,也称为单位冲激序列,定义为 ) 0() 0(0 1)(≠=?? ?=n n n δ 要注意,单位冲激序列不是单位冲激函数的简单离散抽样,它在n =0处是取确定的值1。在MATLAB 中,冲激序列可以通过编写以下的impDT .m 文件来实现,即 function y=impDT(n) y=(n==0); %当参数为0时冲激为1,否则为0 调用该函数时n 必须为整数或整数向量。 【实例1-1】 利用MATLAB 的impDT 函数绘出单位冲激序列的波形图。 解:MATLAB 源程序为 >>n=-3:3; >>x=impDT(n); >>stem(n,x,'fill'),xlabel('n'),grid on >>title('单位冲激序列') >>axis([-3 3 -0.1 1.1]) 程序运行结果如图1-1所示。 图1-1 单位冲激序列

(完整)《语音信号处理》期末试题总结,推荐文档

2011-2013学年 《语音信号处理》期末考试试题 适用班级:时量:120分钟闭卷记分: 考生班级:姓名:学号: 注:答案全部写在答题纸上,写在试卷上无效! 一、填空题:(每空2分) 1、矢量量化系统主要由编码器和译码器组成,其中编码器主要是由搜索算法和码书构成。P101 2、基于物理声学的共振峰理论,可以建立起三种实用的共振峰模型:级联型、并联型和混合型。P18 3、语音编码按传统的分类方法可以分为波形编码、参数编码和混合编码。P137 4、对语音信号进行压缩编码的基本依据是语音信号的冗余度和人的听觉感知机理。 P137-138 5、汉语音节一般由声母、韵母和声调三部分组成。P10 6、人的听觉系统有两个重要特性,一个是耳蜗对于声信号的时频分析特性;另一个是人耳听觉的掩蔽效应。P22 7、句法的最小单位是词,词法的最小单位是音节,音节可以由音素构成。P9 8、复倒谱分析中避免相位卷绕的算法,常用的有微分法和最小相位信号法。P62 9、语音信号处理也可以简称为语音处理,它是利用数字信号处理技术对语音信号进行处理的一门学科,包括语音编码、语音合成、语音识别、说话人识别和语音增强等五大分支。P3 10、语音信号处理也可以简称为语音处理,它是以数字信号处理和语音学为基础而形成的一个综合新的学科,包括发音语音学、声学语音学、听觉语音学和心理学等四大分支。P2,6 11、语音的四大要素:音质、音调、音强和音长。P9 12、人类发音过程有三类不同的激励方式,因而能产生三类不同的声音,即浊音、清音、和爆破音。P8 13、元音的一个重要声学特性是共振峰,它是区别不同元音的重要参数,它一般包括共振峰频率的位置和频带宽度。 14、语音信号的倒谱分析就是求取语音倒谱特征参数的过程,它可以通过同态信号处理来实现。P56 二、判断题:(每小题2分)√× 1、预测编码就是利用对误差信号进行编码来降低量化所需的比特数,从而使编码速率大幅降低。(×)P143 2、以线性预测分析-合成技术为基础的参数编码,一般都是根据语音信号的基音周期和清/浊音标志信息来决定要采用的激励信号源。(×)P181 3、自适应量化PCM就是一种量化器的特性,能自适应地随着输入信号的短时能量的变化而调整的编码方法。(×)P142 4、线性预测法正是基于全极点模型假定,采用时域均方误差最小准则来估计模型参数的。(×)P72 5、波形编码是依赖模型假定的语音编码方法。(×)P137 6、掩蔽效应是使一个声音A能感知的阀值因另一个声音B的出现而提高的现象,这时A叫

语音信号处理复习纲要

Ch1 绪论 §1.1 语音信号处理概述 一、语音、语音信号处理的名词解释 1、语音:是语言的声学表现,是声音和意义的结合体,是相互传递信息的重要手段,是人类最重要、最有效、最常用和最方便的交换信息的形式。 2、语音信号处理:是研究用数字信号处理技术对语音信号进行处理的一门学科,它是一门新兴的学科,同时又是综合性的多学科领域和涉及很广的交叉学科。 二、语音处理技术的应用领域 语音处理技术的应用领域包括:工业、军事、交通、医学、民用等。 三、语音信号采用数字处理的原因(数字语音的优点) 语音信号均采用数字处理,是因为数字处理与模拟处理相比具有许多优点: 1、数字技术能够完成许多很复杂的信号处理工作; 2、通过语音进行交换的信息本质上具有离散的性质,语音可以看做是音素的组合,适合数字处理; 3、数字系统具有高可靠性、廉价、快速等优点,容易完成实时处理任务; 4、数字语音适合在强干扰信道中传输,也易于加密传输。 四、语音学的名词解释 语音学:是研究言语过程的一门科学,它包括三个研究内容:发音器官在发音过程中的运动和语音的音位特性;语音的物理特性;以及听觉和语言感知。 §1.2 语音信号处理的发展概况 一、语音信号处理的发展史 1、1874年:电话的发明时现代语音通信的开端; 2、1939年:通道声码器技术; 3、40年代后期:语谱仪; 4、50年代初:第一台口授打字机和英语单词语音识别器; 5、60年代:Fant发表《语音产生的声学理论》; 6、70年代初:Flanagan著作《语音分析、合成和感知》; 7、90年代以来:语音识别的研究由实验室走向实用化。 二、语音编码、语音合成、语音识别名词解释 1、语音编码:语音编码技术是伴随着语音信号的数字化而产生的,目前主要应用在数字语音通信领域。 2、语音合成:语音合成的目的是使计算机能像人一样说话,它是一种人机语音通信技术,应用领域广泛。 3、语音识别:语音识别是使计算机判断出所说的话得内容,和语音合成一样也是一种人机语音通信技术。 为了实现人机语音通信,必须具备语音识别和语音理解两种功能 Ch2 基础知识 §2.2 语音产生的过程 一、现代语音学发展的三个分支:发音语音学、声学语音学、听觉语音学。 二、语音、清音、浊音的名词解释及语音的产生过程(名词解释、简答,集中备课) 1、语音:声音是一种波,能被人耳听到,振动频率在20Hz-20kHz之间。语音室声音的一种,它是由人的发音器官发出的、具有一定语法和意义的声音。语音的振动频率最高可达15kHz左右。 2、人类生成语音过程的第一阶段包括神经核肌肉的生理学阶段和产生语音波、传递语音波的物理阶段。 3、语音由声带振动或不经声带振动来产生,其中由声带振动产生的音统称为浊音,而不由声带振动产生的音统称为清音。浊音中包括所有的元音和一些辅音,清音包括另一部分辅音。

基于MATLAB的有噪声语音信号处理毕设

大学本科毕业设计论文 基于MATLAB的有噪声语音信号处理

摘要 滤波器设计在数字信号处理中占有极其重要的地位,FIR数字滤波器和IIR 滤波器是滤波器设计的重要组成部分。Matlab功能强大、简单易学、编程效率高,深受广大科技工作者的欢迎。特别是Matlab还具有信号分析工具箱,不需具备很强的编程能力,就可以很方便地进行信号分析、处理和设计。利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器。课题基于MATLAB 有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪声语音信号进行时域、频域分析和滤波。通过理论推导得出相应结论,再利用MATLAB作为编程工具进行计算机实现。在设计实现的过程中,使用窗函数法来设计FIR数字滤波器,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB作为辅助工具完成设计中的计算与图形的绘制。通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器,过程简单方便,结果的各项性能指标均达到指定要求。 关键词?数字滤波器;MATLAB;窗函数法;巴特沃斯; 切比雪夫; 双线性变换

Abstract ?Filterdesignin digital signal processingplaysan extre melyimportant role, FIR digital filters and IIR filter is an importan tpart of filter design.Matlab is powerful,easy to learn,programming efficiency,which was welcomed bythemajority ofsc ientists. Matlab alsohas a particular signalanalysis toolbox,it need nothave strongprogrammingskills can be easily signal analysis, processing and design. Using MATLAB Signal Processing Toolbox can quickly andefficiently design avarietyof digitalfilters. MATLAB basedon the noise issuespeech signal processing design and implementation of digital signalprocessing integrated use of the theoretical knowledge ofthe speechsignal plus noise, time domain, frequencydomainanalysis andfiltering. Thecorrespondingresults obtainedthroughtheoreticalderivation, and then use MATLAB as a programming toolfor computer implementation.Implemented inthe design process,usingthewindow function methodtodesign FIR digital filters with Butterworth, Chebyshev andbilinear Reform IIR digital filter design and use ofMATLAB as asupplementary tool to complete thecalculation and graphic design Drawing. Throughthesimulation of thedesigned filter and the frequency analysis shows thatusingMatlabSignal Processing Toolbox can quickly and easily design digital filters FIR andIIR,the processis simple and convenient, the results of the performance indicators to meetthe specifiedrequirements. ? Keywords: digital filter; MATLAB;Chebyshev;Butterworth;

相关主题
文本预览
相关文档 最新文档