当前位置:文档之家› 基于ADPCM的语音信号编解码

基于ADPCM的语音信号编解码

基于ADPCM的语音信号编解码
基于ADPCM的语音信号编解码

基于ADPCM的语音信号编解码

班级:电子与通信工程

姓名:

学号:

目录

一、语音压缩编码简介 .................................................................................................- 2 -

1.1 语音压缩技术的现状及发展方向........................................................................- 2 -

1.2 语音压缩编码分类................................................................................................- 2 -

1.3 语音信号压缩的基本原理....................................................................................- 2 -

1.4 语音压缩编码性能的评价指标............................................................................- 3 -

二、G.721编码及算法实现 ................................................................................................- 4 -

2.1自适应差分脉冲编码调制ADPCM .......................................................................- 4 -

2.2 G.721各部分算法介绍 ..........................................................................................- 5 -

三、仿真结果.......................................................................................................................- 9 -

四、分析与总结................................................................................................................ - 11 -

五、仿真程序.................................................................................................................... - 12 -

六、参考文献.................................................................................................................... - 15 -

摘要

自适应差分脉冲编码调制(ADPCM)是运用了自适应技术、脉冲编码调制、差值调制技术,对PCM(脉冲编码调制)语音信号进行再压缩。本报告从ADPCM编码基础理论出发,基于对G721标准的分析和理解,对语音压缩编码算法进行了仿真,包括了一下几个模块,自适应预测,快速非锁定因子的计算,单频信号的判定,窄带信号瞬变判定,自适应速度控制,量化矩阵自适应因子的计算,自适应量化编码,自适应逆量化,量化器标度因子自适应的选取,速度控制。然后,实现了一个ADPCM的编码器程序。最后,基于对编码器的研究,进行了解码输出的仿真。

一、语音压缩编码简介

语音信号的数字化传输一直是通信发展的主要方向之一,语音的数字通信和模拟通信相比,无疑具有更好的效率和性能,这主要体现在:具有更好的语音质量:具有更强的抗干扰性,并易于进行加密;可节省带宽,能够更有效的利用网络资源;更加易于存储和处理。最简单的数字化方法是直接对语音信号进行模数转换,只要满足一定的采样率和量化要求,就能够得到高质量的数字语音,但这时语音的数据量仍旧很大,因此在进行传输和存储之前,往往要对其进行压缩处理,以减少其传输码率或存储量,即进行压缩编码。传输码率也称为数码率或编码速率,表示每秒传输语音信号所需的比特数。

1.1 语音压缩技术的现状及发展方向

语音压缩编码技术的发展是十分迅速的,CELP的编码速率较低,但复杂度较高,可以在4.8kb/s左右的码速率上获得较高质量的语音,是当今中低速率语音编码技术的主流技术之一,许多国际标准化组织及机构纷纷将这一编码方案作为语音编码标准。在对其改善质量、降低复杂度、减少编码延迟等方面都提出了不少新的方法,使CELP在实践中得到广泛应用。随着DSP技术的发展,CELP技术还具有一定的潜力,例如将G.729扩展到6.4kb/s,用于TDMA/CDMA移动无线系统和DCME。目前,语音压缩编码技术主要有两个努力方向:一个是中低速率的语音编码的实用化,及如何使用化过程中进一步减低编码速率和提高其抗干扰、抗噪声能力;另一个是如何进一步的降低其编码速率,目前已能在5kb/s-6kb/s的速率上获得高质量的重建语音,下一个目标则是要在4kb/s的速率上获得短延时、高质量的重建语音。特别是对中长延时编码,人们正在研究其更低速率(如400b/s-1200b/s)的编码算法,在这个过程中当编码速率降至2.4kb/s速率以下时,CELP算法即使应用更高效的量化技术也无法达到预期的指标,需要其它一些更符合低速率编码要求的算法,目前比较好的算法还有正弦变换编码(STC)、混合激励线性预测编码(MELPC)、时频域插值编码(TFI)、基音同步激励线性预测编码(PSELP)等,同时还要求引入新的分析技术,如非线性预测、多精度时频分析技术(包括子波变换技术)、高阶统计分析技术等,这些技术更能挖掘人耳听觉掩蔽等感知机理,更能以类似人耳的特性作语音的分析与合成,使语音编码系统更接近于人类听觉器官的处理方式工作,从而在低速率语音编码的研究上取得突破。

1.2 语音压缩编码分类

语音编码按编码方式分为3类:波形编码、参数编码、混合编码。波形编码是将时间域或变换域信号直接变换为数字信号,力求使重建语音波形保持原始语音信号的波形形状。参数编码又称声码器编码,它是将信源信号在频域或其他变换域提取特征参数,然后对这些特征参数重建语音信号。混合编码将波形编码和参数编码结合起来,克服了波形编码和参数编码的缺点,吸收了它们的长处,能够在低速率上得到高质量的合成语音。

1.3 语音信号压缩的基本原理

在数字通信中,语音信号被编码为二进制数字序列,通过信道传输或存储,在经过解码

后恢复为可懂的语音。将语音信号编码为二进制数字序列后再经传输或储存有其独特的优点。例如,可摆脱传输或存储中噪声的干扰。模拟传输信道的噪声总是要使语音信号发生畸变,而数字通信只要有足够的通信站,就能排除所有噪声的影响;另一方面,磁带录音机存储模拟信号时要受磁带噪声和其他噪声的影响,而采用计算机存储数字语音信号时,惟一的失真来自模数转换前的低通滤波。另外,数字编码的信号还便于处理和加密、再生与转发,也可与其他信号复用一个信道,设备便于集成等。

最简单的语音编码方法是对其直接进行模/数变换;只要其取样率足够高,量化每个样本的比特数足够大,那么就能保证解码恢复的语音信号有非常好的音质,而且也不会丢失有用信息。可是对语音信号直接进行数字化其所需数码率太高,比如普通电话通信中采用8KHZ 取样率,如用12bit进行量化,则数码率为96kbit/s,这样大的数码率即使对很大容量的传输信道也是难以承受的。而语音信号用PCM编码后,数码率为64kbit/s,不进行压缩很难用调制解调器在电话线路上传输,所以必须进行压缩编码。

对语音进行编压缩码的基本依据有两个。一是,从产生的物理机理和语音结构的性质来看,语音信号中存在较大的冗余度。从信息保持的角度讲,只有当信源本身具有冗余度,才能对其进行压缩。语音压缩实质上就是识别语音中的冗余度并设法去除掉它们。冗余度最主要部分可以分别从时域或频域来考虑,归纳起来有以下几个方面:1,语音信号样本间的相关性很强,即其短时谱不平坦。2,浊音语音段具有准周期性。3,声道的形状及其变化比较慢。4,传输码值的概率分布是非均匀的。

语音编码的第二个依据是利用人类听觉的某些特性。人耳听不到或感知不灵敏的语音分量可视为冗余(这种冗余可看作为主观上的冗余),所以可以利用人耳感知模型,去除掉人耳感觉不灵敏的语音分量,而重构后的语音质量不明显下降。

总之,利用冗余度或者是听觉上的制约,可以压缩表示语音信号的必要信息,从而可降低传输速率或存储容量

脉冲编码的基本框图:

1.4 语音压缩编码性能的评价指标

语音编码的根本目标就是在尽可能低的编码速率条件下,重建得到尽可能高的语音合成质量,同时还应尽量减小编码延时和算法复杂度,因此编码效率、编码语音质量评价、编解码延时以及算法的复杂度就成了评价一个语音编码算法性能的基本指标。

编码速率直接反应了语音编码对语音信息的压缩程度。编码速率可以用“比特/秒”来度量,它代表总的编码速率。现在大部分编码标准都是固定速率编码,其范围为0.8-64kbit/s。其中,保密电话的编码速率最低,其原因是它的通信信道带宽限定在4.8kbit/s一下。数字蜂窝移动电话和卫星电话编码器的编码速率为3.3-13kbit/s,它使数字蜂窝系统的容量可以达到模拟系统的多倍。

编码语音质量评价分为主观评价和客观评价。主观评价方法是基于一组测听者对原始语

音与合成语音进行对比试听,然后根据某种事先规定好的尺度标准来对失真语音划分等级的。主要反映的是测听者主观上对语音质量或者可懂度的一种感知。客观评价算法在理想情况下需要在没有原始语音下对语音进行评价。需要结合不同的处理过程的知识,包括底层处理和高层处理。现有的评价方法局限于要知道原始的语音信号,并且多数只能模拟在底层的处理过程。

编解码延时一般用单次编解码所需的时间来表示,在实时语音通信系统中,语音编解码延时同线路传输延时的作用一样,对系统的通信质量有很大影响。过长的语音延时会使通信双方产生交谈困难,而且会产生明显的回声而干扰人的正常思维。对于公用电话网,编解码延时通常要求不超过5-10ms,而对于移动蜂窝通信系统,允许最大延时不超过100ms,算法复杂度主要影响到语音编解码器的硬件实现,它决定了硬件实现的复杂度、体积、功率和成本等。对一些复杂的语音编码算法,一般编码算法的复杂度与语音质量有密切关系。再同样速率的情况下,复杂一些的算法将会获得更好一些的语音质量。同时,算法的复杂度与硬件实时实现也有密切关系。

二、G.721编码及算法实现

2.1自适应差分脉冲编码调制ADPCM

ADPCM将脉冲编码调制、差值调制和自适应技术三者结合起来,进一步利用语音信号样点间的相关性,并针对语音信号的非平稳特点,使用了自适应预测和自适应量化,在32kbit/s速率上能够给出网络等级语音质量,从而符合进入公共网的要求。图是G.721算法的框图,其中虚线部分是解码器框图。由图中可以看出,编码器中嵌入一个解码器,使得编码器的自适应修正完全取决于信号的反馈值。这个反馈值与解码器的输出是一致的,所以后续的差值采样就补偿了量化误差,从而避免了量化误差的积累。

图2-1 G.721编码器原理框图

2.2 G.721各部分算法介绍

(1)、求采样值s(k)和其估计值s e (k)之差

d()()()e k s k s k =- (2.2.1) (2)自适应量化d(k)并编码输出I(k)

2I()log ()()k d k y k =- (2.2.2)

其中,I(k)还含有以为符号。表 给出了I(k)的编码值。y(k)是量化阶矩自适应因子,它由调整短时能量变化较快的语音信号的y u (k)和调整数据类慢变信号的y l (k)两部分,经速度调整因子a l (k)加权平均而成

()()(1)[1()](1)l u l y k a k y k a k y k =?-+-- 01l a ≤≤ (2.2.3)

对快变信号,()l a k 趋于1,而对慢变信号()l a k 趋于0。

(3)阶矩自适应因子

55()(12)()2[()]

u y k y k I k ω--=-+称快速非锁定标度因子,它的取值范围在

1.06()10u y k ≤≤ 区间,对应的的线性域 1.0610min max 2

2.085,21024?==?==。

55()(12)()2[()]u y k y k I k ω--=-+ (2.2.4)

[()]I k ω的取值如表所示

表2-2

[()]I k ω的取值

为适应语音预测差值信号中的基音引起的能量突变,[()]I k ω的高端取值都很大。对于带内数据,信号短时能量基本上是平稳的,阶矩自适应采用

66()(12)(1)2()l l u y k y k y k --=--+ (2.2.5)

式中,()l y k 称为锁定标度因子。 (4)速度控制

()l a k 是速度控制因子,它是通过I(n)的长时平均幅度值()ml d k 与短时平均幅度值()ms d k 相差求出的。它反应了预测余量信号的变化率。

函数F[I(k)]的取值如下表

表2-3 F[I(k)]的取值 当余量信号短时能量平稳时,I(k)的统计特性随时间变化很小,()ml d k 与()ms d k 相差不大。

而当余量信号短时能量起伏较大时,他们出现差值。利用这一特性先计算中间参数

()p a k :

433

4

(12)(1)2,|d (k)-d (k)|2d (k)()(12)(1),p ms ml ml p a k a k a k ----?--+≥?=?--??

当其他情况 (2.2.6) 显然,当I()k 幅度变化较大时()2p a k →,而差别较小时,()0p a k →。条件()3y k <表明输入信号很小,处于轻音段或噪声段,这是也有()2p a k →,以便使量化器处于快速自适应状态来等待输入信号的突然变化。量化器速度控制因子()l a k 通过对()p a k 限幅得到

1(1)1()(1)(1)1p l p

p a k a k a k a k -≥?

=?

--

迟效应可以防止自适应速度过早变慢,从而避免脉冲沿产生太大的畸变。

(5)自适应逆量化器输出

()()q d ()2y k I k k += (2.2.8)

(6)自适应预测

预测器采用6阶零点,二阶极点的模型。预测信号为

2

1()(1)()()e i r ez i s n a n s n i s n ==--+∑ (2.2.9)

6

1

()(1)()ez j q j s n b n d n j ==--∑ (2.2.10)

重建信号为

()()()r e q s n s n d n =+ (2.2.11)

极点、零点预测器系数分别是i a 和j b 。其调整方式为

87()(12)(1)2sgn[()]sgn[()]j j b n b n dq n dq n j --=--+?- (2.2.12)

此式隐含差|()|2j b n ≤,为保证算法稳定,二阶极点预测器系数限制如下

2|()|0.75;a n ≤412|()|1()2a n a n -≤-- (2.2.13)

它们的调整方式为

8811()(12)(1)32sgn[()]sgn[(1)]a n a n p n p n --=--+??-

2.2.14)

7722()(12)(1)2sgn[()]{sgn[(2)][(1)]sgn[(1)]}a n a n p n p n f a n p n --=--+?---?-(2.2.15)

式中 ()()()ez p n dq n s n =+

11111

1

42()2sgn[]1

2

a a f a a a ≤

?=?

?>当当 (2.2.16)

(7)单频和瞬变调整

当ADPCM 编码器遇到频移键控信号(FSK )或其他窄带瞬变信号时,需要将系统从慢速自适应状态强制性地调整到快速自适应状态。为此,引入单频信号判定条件d t 和窄带信号瞬变判据r t :

1,()0.71875

0,d a n t <-?=?

?若其他 (2.2.17) ()

r 1,t d ()|24.20,

yl n d q n t ?>=?

?(n)=1同时|其他 (2.2.18)

当t d (n)=1时,认为出现了单频信号或频率瞬变。这时强制将量化器处于快速自适应状态。当r ()1t n =时,还需将()i a n 和()j b n 同时置零。采用这些措施后,G.721 ADPCM 可以传递4.8kbit/s 的FSK 信号。同时p a 的判定也由下式决定

4334(12)(1)2,d ()()2()y(n)<3t (n)=1()1,()1(12)(1)p ms ml ml d p r p a n n d n d n a n t n a n ----?--+-≥?==??--?

若或或其他(2.2.19)

当ADPCM 与PCM 之间发生换码级联时,需要在ADPCM 内部进行PCM 级联同步调整。方法是在解码端将重建信号()r s n 重新编码成ADPCM 码()dx I n 并与输入的I(n)比较,根据差值调整重建()r s n 的电平级别。经过同步调整过程,ADPCM 可以有效地防止同步级联误差累积

三、仿真结果

图 3-1 解码前后语音信号波形

图3-2 自适应预测前后波形

0500100015002000

250030003500400045005000

样点数原始信号幅度

原始语音信号

0500100015002000

250030003500400045005000

样点数

解码输出信号幅度

解码输出信号

050010001500

2000250030003500400045005000

-1

-0.500.51

样点数

原始信号幅度

原始语音信号

0500100015002000

250030003500400045005000

-2

-1012

样点数

自适应预测信号幅度

自适应预测语音信号

图3-3 预测误差图

图3-4 语音信号编码图

0500100015002000

250030003500400045005000

0.20.40.60.811.21.4

1.6

1.8样点数

采样值与估计值误差

预测信号误差图

0500100015002000250030003500400045005000

-2

-1.5-1-0.500.511.5

2

图3-5 自适应逆量化后输出波形

四、分析与总结

通过图3-1原始语音信号经过ADPCM 的波形,可以看出信号经过编解码后,还是可以较好的恢复出来,虽然局部有些地方没能完全恢复。图3-2是算法中对自适应预测信号和原始语音信号做出的对比,从图中可以看出,自适应预测的波形有一些失真,幅度更加平坦。图3-3是对原始语音信号的采样值与其估计值之差。总体来讲绝对误差偏大了一些,而这也正好和图3-2吻合。图3-4是对语音信号编码后的图形,由于样点数过多,导致点数密集而使下部分几乎连成一片,但通过其峰值只有几个离散值还是可以较明显的看出是编码信号。 图3-5是自适应逆量化后的输出波形,相比图3-4,此图更为杂乱些。

报告的难点在于对标准算法的分析和理解基础上,对标准算法中描述的各个子功能框图的算法实现。因为报告的实现程序,仅仅用于对标准算法的理解与研究,在具体的实际运用中,根据需要的不同,可能无法做到普遍通用,还需要对算法进行更多的研究。

0500100015002000

250030003500400045005000

-2.5

-2-1.5-1-0.50

0.511.5

2样点数

幅度

自适应逆量化器输出

五、仿真程序

%主程序

clc

clear all;

coe=[1,0,1,0,0,0,0,0,0,0,0];

coe1=[0,0,0];

coe2=[0,0,0,0,0,0,0,0,0,0];

coe3=[0];

Dqk=zeros(1,7);

fid=fopen('zy7.txt','rt');

a=fscanf(fid,'%e\n');

fclose(fid);

fid=fopen('zy7.721.txt','wt');

zyp0=size(a,1);

for i=1:size(a,1)

Slk=a(i);

Yk_pre=coe2(1);

Sek_pre=coe2(2);

Ik_pre=coe2(3);

Ylk_pre_pre=coe2(4);

Srk_pre=coe2(5);

Srk_pre_pre=coe2(6);

a2=coe2(7);

Tdk_pre=coe2(8);

Trk_pre=coe2(9);

Num=coe2(10);

coe2(10)=coe(10)+1;

[Sek,coe]=Sek_com(Srk_pre,Srk_pre_pre,Dqk,coe);

zyp1(1,i)=(Sek);

Dk=Dk_com(Slk,Sek);

zyp2(1,i)=abs(Dk);

Yuk_pre=yu_result(Yk_pre,wi_result(abs(Ik_pre)));

if Yuk_pre<1.06

Yuk_pre=1.06;

elseif Yuk_pre>10.00

Yuk_pre=10.00;

end

Ylk_pre=yl_result(Ylk_pre_pre,Yuk_pre);

zyp3(1:i)=Ylk_pre;

Trk_pre=Trk_com(a2,Dqk(6),Ylk_pre);

zyp4(1:i)=Trk_pre;

Tdk_pre=Tdk_com(a2);

zyp5(1:i)=Tdk_pre;

[Alk,coe1]=Alk_com(Ik_pre,Yk_pre,coe1,Tdk_pre,Trk_pre);

if Alk<0.0

Alk=0.0;

elseif Alk>1.0;

Alk=1.0;

end

[Yk,coe3]=Yk_com(Ik_pre,Alk,Yk_pre,coe3);

Ik=Ik_com(Dk,Yk);

%

zyp6(1,i)=Ik;

Yk_pre=Yk;

Srk_pre_pre=Srk_pre;

Sek_pre=Sek;

Ylk_pre_pre=Ylk_pre;

Ik_pre=Ik;

coe2(1)=Yk;

coe2(6)=Srk_pre;

coe2(2)=Sek;

coe2(4)=Ylk_pre;

coe2(3)=Ik;

Dqk(1)=Dqk(2);

Dqk(2)=Dqk(3);

Dqk(3)=Dqk(4);

Dqk(4)=Dqk(5);

Dqk(5)=Dqk(6);

Dqk(6)=Dqk(7);

Dqk(7)=Dqk_com(Ik_pre,Yk_pre);

zyp7(1,i)=Dqk(7);

Srk_pre=Srk_com(Dqk(7),Sek_pre);

zyp8(1:i)=Srk_pre;

coe2(5)=Srk_pre;

fprintf(fid,'%f\n',coe2(5));

end

fid=fopen('zy7.721.txt','rt');

b=fscanf(fid,'%e\n');

%子程序

%采样值与其估值差值函数

function d=Dk_com(Slk,Sek)

Dk=Slk-Sek;

d=Dk;

%快速非锁定标度因子计算函数

function yu=yu_result(y_now,wi_now)

yu=(1-2^(-5))*y_now+2^(-5)*wi_now;

yu=yu;

%锁定标度因子计算函数

function yu=yu_result(y_now,wi_now)

yu=(1-2^(-5))*y_now+2^(-5)*wi_now;

yu=yu;

%单频信号判定子程序

function Tdk=Tdk_com(A2k)

if(A2k<-0.71875)%(A2k<-0.71875)

Tdk=1;

else Tdk=0;

end

Tdk=Tdk;

%窄带信号瞬变判定子函数

function Trk=Trk_com(A2k,Dqk,Ylk)

if((A2k<-0.71875)&(fabs(Dqk)>pow(24.2,Ylk)))

Trk=1;

else Trk=0;

end

Trk=Trk;

%自适应速度控制和自适应预测子函数

function[h,coel]=Alk_com(Ik_pre,Yk_pre,coel,Tdk_pre,Trk_pre)

Dmsk_p2=coel(1);

Dmlk_p2=coel(2);

Apk_pre2=coel(3);

Dmsk_p1=(1-2^(-5))*Dmsk_p2+2^(-5)*fi_result(abs(Ik_pre));

Dmlk_p1=(1-2^(-7))*Dmlk_p2+2^(-7)*fi_result(abs(Ik_pre));

coel(1)=Dmsk_p1;

coel(2)=Dmlk_p1;

if ((abs(Dmsk_p1-Dmlk_p1)>=2^(-3)*Dmlk_p1)|(Yk_pre<3)|(Tdk_pre==1)); %if ((abs(Dmsk_p1-Dmlk_p1)>=2^(-3)*Dmlk_pl)|(Yk_pre<3)|(Trk_pre==1)) Apk_prel=(1-2^(-4))*Apk_pre2+2^(-3);

elseif(Trk_pre==1) Apk_prel=1;

else Apk_prel=(1-2^(-4))*Apk_pre2;

end

coel(3)=Apk_prel;

end

六、参考文献

【1】李文元, 张毓忠. 数字音频压缩自适应变换编码算法的研究[J]. 信号处理, 1998(3):245-248.

【2】高红令, 崔文惠, 周辉. 自适应编码研究动态[C]// 中国航空学会信号与信息处理专业全国学术会议. 2003.

【3】房建, 左涛, 陈婷. 数字音频压缩编码技术及其应用[J]. 信息技术, 2004, 28(2):9-11.

【4】张雪峰, 张耀军, 潘赟. 数字音频压缩编码技术研究[J]. 电脑知识与技术:学术交流, 2007, 3(15):852-853.

【5】杨伟超. 数字音频压缩编码技术及其应用分析[J]. 科研, 2016(7):00124-00124.

【6】吴力勤. 基于ADPCM语音压缩编码算法的研究与实现[D]. 四川大学, 2006.

IIR滤波器语音去噪处理

课程设计(论文) 题目基于IIR数字滤波器的有噪语音信号的 处理 课程设计(论文)任务书学院:电气工程学院 题目:基于IIR数字滤波器的有噪语音 信号的处理

起止时间:2016年10月25日至16年11月20日 学生姓名: 专业班级: 指导教师: 教研室主任: 院长: 2016年11 月20 日

摘要:滤波器设计在数字信号处理中占有极其重要的地位,IIR滤波器是滤波器设计的重要组成部分。课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪声语音信号进行时域,频域分析和滤波。通过理论推导得出相应结论,再利用MATLAB 作为编程工具进行计算机实现。在设计实现的过程中,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB 作为辅助工具完成设计中的计算与图形的绘制。通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具处理工具箱可以有效快捷地设计IIR数字滤波器,结果的各项性能指标均达到指定要求。 关键词:MATLAB;IIR滤波器;有噪音语音信号

Abstract: filter design plays an important role in digital signal processing, IIR filter is an important part of the filter design. Research based on MATLAB design and implementation of the noise processing of speech signal, the theory of knowledge of the integrated use of digital signal processing in time domain of speech signal plus noise, frequency domain analysis and filtering. Through theoretical derivation corresponding conclusion using MATLAB as a programming tool for computer implementation. In the design process, with Butterworth, Chebyshev and bilinear method of IIR digital filter design, and use MATLAB as a tool Complete the drawing calculation and graphic design. Through the simulation and frequency characteristic analysis on the design of filter, MATLAB signal processing tools processing toolbox can effectively and quickly design IIR digital filter based on the results of the performance indicators to meet the specified requirements. Keywords: MATLAB; IIR filter; noisy speech signal

语音信号处理与及其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对含噪声的语音信号进行频谱分析及滤波 一、实验内容 录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;在语音信号中增加正弦噪声信号(自己设置几个频率的正弦信号),对加入噪声信号后的语音信号进行频谱分析;给定滤波器的性能指标,采用窗函数法和双线性变换设计数字滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比试听,分析信号的变化。 二、实现步骤 1.语音信号的采集 利用Windows下的录音机,录制一段自己的话音,时间在1 s内。然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,(可用默认的采样频率或者自己设定采样频率)。 2.语音信号的频谱分析 要求首先画出语音信号的时域波形;然后对语音号进行快速傅里叶变换,得到信号的频谱特性。 在采集得到的语音信号中加入正弦噪声信号,然后对加入噪声信号后的语音号进行快速傅里叶变换,得到信号的频谱特性。并利用sound试听前后语音信号的不同。

分别设计IIR和FIR滤波器,对加入噪声信号的语音信号进行去噪,画出并分析去噪后的语音信号的频谱,并进行前后试听对比。 3.数字滤波器设计 给出数字低通滤波器性能指标:如,通带截止频率fp=10000 Hz,阻带截止频率fs=12000 Hz(可根据自己所加入噪声信号的频率进行阻带截止频率设置),阻带最小衰减Rs=50 dB,通带最大衰减Rp=3 dB(也可自己设置),采样频率根据自己语音信号采样频率设定。

报告内容 一、实验原理 含噪声语音信号通过低通滤波器,高频的噪声信号会被过滤掉,得到清晰的无噪声语音信号。 二、实验内容 录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;在语音信号中增加正弦噪声信号(自己设置几个频率的正弦信号),对加入噪声信号后的语音信号进行频谱分析;给定滤波器的性能指标,采用窗函数法和双线性变换设计数字滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比试听,分析信号的变化。给出数字低通滤波器性能指标:如,通带截止频率fp=10000 Hz,阻带截止频率fs=12000 Hz (可根据自己所加入噪声信号的频率进行阻带截止频率设置),阻带最小衰减Rs=50 dB,通带最大衰减Rp=3 dB(也可自己设置),采样频率根据自己语音信号采样频率设定。 三、实验程序 1、原始信号采集和分析 clc;clear;close all; fs=10000; %语音信号采样频率为10000 x1=wavread('C:\Users\acer\Desktop\voice.wav'); %读取语音信号的数据,赋给x1 sound(x1,40000); %播放语音信号 y1=fft(x1,10240); %对信号做1024点FFT变换 f=fs*(0:1999)/1024; figure(1); plot(x1) %做原始语音信号的时域图形 title('原始语音信号'); xlabel('time n'); ylabel('fuzhi n'); figure(2); plot(f,abs(y1(1:2000))); %做原始语音信号的频谱图形 title('原始语音信号频谱') xlabel('Hz'); ylabel('fuzhi');

MATLAB变声器

MATLAB变声器 电子工程学院 摘要 语音信号处理中的变声处理已经有了比较成熟的算法,本文阐述了变声算法的基础原理,利用数字滤波器,自相关法,LPC,LPC系数求根法等方法在MATLAB上改变语音信号的基频和共振峰以实现变声,并总结了现有变声算法的缺陷,对用不同的变换域能否改进变声算法做了粗略分析。 关键词:变声算法,LPC,变换域

目录 研究背景 (3) 变声原理 (3) 语音基本概念 (3) 变声原理 (4) 变声过程 (5) 分帧处理 (5) 计算LPC系数 (5) 计算原始激励 (6) 计算基音周期 (6) 计算激励能量 (7) 合成脉冲序列 (7) 更改声道参数 (7) 合成变声语音 (8) 程序设计 (8) 传统变声算法缺陷 (9) 合成激励与原始激励差别较大 (9) 不能实现定向变声 (10) 实现定向变声的猜想 (11) 小波域是否存在恒定音色参数粗略分析 (12) 统计上的变换是否利于寻找恒定音色参数猜想 (12) 下一步研究计划 (12)

研究背景 语音信号是人们日常生活中十分常见的信号,语音也是人与人之间传递信息的一种十分重要的方式。随着智能终端以及互联网的普及,语音信号大量地以数字形式出现,语音信号处理变得越来越重要,变声处理是语音信号处理的基础之一,所以在这样的大背景下,研究变声算法并改进变声算法是很有意义而且有必要的。 另一方面,传统的变声算法是对发声过程的简单模拟进行语音合成,在模拟过程中改变参数以实现变声,而传统的变声算法存在一些缺陷,若要改进变声算法使其更灵活有效,那么细致的研究传统的变声算法是很有必要的。 变声原理 语音基本概念 1. 声道:声道是很多动物及人类都有的一个腔室,从声源产生的声音经由此处滤出。人的声道包括声道则包括喉腔、咽头、口腔和鼻腔。 2. 基音:一般的声音都是由发音体发出的一系列频率、振幅各不相同的振动复合而成的。这些振动中有一个频率最低的振动,由它发出的音就是基音,其余为泛音。发音体整体振动产生的音,叫做基音,决定音高;发音体部分振动产生的音,叫做泛音,决定音色;基音和泛音结合一起而形成的音,叫做复合音,日常我们所听到的声音多为复合音。 3.共振峰:共振峰是指在声音的频谱中能量相对集中的一些区域,共振峰是语音音质的决定因素,反映了声道(共振腔)的物理特征。声音在经过共振腔时,受到腔体的滤波作用,使得频域中不同频率的能量重新分配,一部分因为共振腔的共振作用得到强化,另一部分则受到衰减,得到强化的那些频率在时频分析的语图上表现为浓重的黑色条纹。由于能量分布不均匀,强的部分犹如山峰一般,故而称之为共振峰。在语音声学中,共振峰决定着元音的音质,在计算机音乐中,共振峰是决定音色和音质的重要参数。 4,短时平稳特性:语音信号是一种随时间而变化的信号,主要分为浊音和清音两大类。浊音的基音周期、清浊音信号幅度和声道参数等都随时间而缓缓变化。由于发生器官的惯性运动,可以认为在一小段时间里(一般为10~30ms)语音信号的频域特性近似不变,即语音信号具有短时平稳性。因而处理语音信号之前要把语

语音信号分析与处理2011

数字信号处理实验二:语音信号分析与处理 学号 姓名 注:1)此次实验作为《数字信号处理》课程实验成绩的重要依据,请同学们认真、独立完成,不得抄袭。 2)请在授课教师规定的时间内完成; 3)完成作业后,请以word 格式保存,文件名为:学号+姓名 4)请通读全文,依据第2及第3 两部分内容,认真填写第4部分所需的实验数据,并给出程序内容。 1. 实验目的 (1) 学会MATLAB 的使用,掌握MATLAB 的程序设计方法 (2) 掌握在windows 环境下语音信号采集的方法 (3) 掌握MATLAB 设计FIR 和IIR 滤波器的方法及应用 (4) 学会用MATLAB 对语音信号的分析与处理方法 2. 实验内容 录制一段自己的语音信号,对录制的语音信号进行采样,画出采样后语音信号的时域波形和频谱图,确定语音信号的频带范围;使用MATLAB 产生白噪声信号模拟语音信号在处理过程中的加性噪声并与语音信号进行叠加,画出受污染语音信号的时域波形和频谱图;采用双线性法设计出IIR 滤波器和窗函数法设计出FIR 滤波器,画出滤波器的频响特性图;用自己设计的这两种滤波器分别对受污染的语音信号进行滤波,画出滤波后语音信号的时域波形和频谱图;对滤波前后的语音信号进行时域波形和频谱图的对比,分析信号的变化;回放语音信号,感觉与原始语音的不同。 3. 实验步骤 1)语音信号的采集与回放 利用windows 下的录音机或其他软件录制一段自己的语音(规定:语音内容为自己的名字,以wav 格式保存,如wql.wav ),时间控制在2秒之内,利用MATLAB 提供的函数wavread 对语音信号进行采样,提供sound 函数对语音信号进行回放。 [y,fs,nbits]=wavread(file), 采样值放在向量y 中,fs 表示采样频率nbits 表示采样位数。Wavread 的更多用法请使用help 命令自行查询。 2)语音信号的频谱分析 利用fft 函数对信号进行频谱分析 3)受白噪声干扰的语音信号的产生与频谱分析 ①白噪声的产生: N1=sqrt (方差值)×randn(语音数据长度,2)(其中2表示2列,是由于双声道的原因) 然后根据语音信号的频谱范围让白噪声信号通过一个带通滤波器得到一个带限的白噪声信号 N2; 带通滤波器的冲激响应为: h B (n )= ))((sin ))((sin 1122απ ωπωαπωπω---n c n c c c c c

语音信号滤波去噪

一、设计的目的和意义 数字滤波器和快速傅立叶变换(FFT)等是语音信号数字处理的理论和技术基础,是20世纪60年代形成的一系列数字信号处理的理论和算法。在数字信号处理中,滤波器的设计占有极其重要的地位。而其中,FIR数字滤波器和IIR数字滤波器是重要组成部分。Matlab具有功能强大、简单易学、编程效率高等特点,深受广大科技工作者的喜爱。特别是Matlab中还具有信号分析工具箱,所以对于使用者,不需要具备很强的编程能力,就可以方便地进行信号分析、处理和设计。利用Matlab中的信号处理工具箱,可以快速有效的设计各种数字滤波器。本论文基于Matlab语音信号处理的设计与实现,综合运用数字信号处理的相关理论知识,对加噪声语音信号进行时域、频域分析并滤波。而后通过理论推导得出相应结论,再利用Matlab作为编程工具进行计算机实现工作。 本次课程设计的课题为《基于DSP的语音信号滤波去噪》,运用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用脉冲响应不变法设计的一个满足指标的巴特沃斯IIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析,根据结果和学过的理论得出合理的结论。 二、设计原理: 2.1 巴特沃斯滤波器 巴特沃斯滤波器是电子滤波器的一种。巴特沃斯滤波器的特点是通频带的频率响应曲线最平滑。巴特沃斯滤波器的特性是通频带内的频率响应曲线最大限度平坦,没有起伏,而在组频带则逐渐下降为零。在振幅的对数对角频率的波得图上,从某一边界角频率开始,振幅随着角频率的增加而逐步减少,趋向负无穷大。 其振幅平方函数具有如2-1式: 式中,N为整数,称为滤波器的阶数,N越大,通带和阻带的近似 性越好,过渡带也越陡。如下图2.1所示:

基于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语音信号的采集................................................................................. 错误!未定义书签。

视频会议声音回声的调试方法

视频会议声音回声的调试方法 在视频会议中如果出现回声,大致有如下原因,按照不同问题分别调整即可: 1、物理环境问题: 1)音箱和话筒的位置靠的太近,特别是音箱的朝向正对话筒。从音箱出来的声音又从话筒返回去了,从而造成回声。 2)会议室墙壁没有做隔音,特别是硬墙壁更容易回声,有些会议室较小也会回声比较严重。针对以上情况的判定比较简单,如果关掉话筒(关话筒上的开关,或调音台对应话筒的 音量开关)后回声消失,就可以基本判定是这类原因。针对这个问题通过调整调音台的参数是无法解决的,只能让双方的声音都小一些,或改变音箱和话筒的位置来解决,开启终端上的“回声抵消”参数也会改善这个问题。如果会场后侧也有音箱的话,也可以考虑把前面的 音箱关掉或者声音小一些。 2、设备安装问题 各设备间没有做等电位或接地,按照要求各设备必须做等电位连接(各设备机壳用单独 的电线串接起来)然后统一做接地。如果设备间不做等电位连接,各设备工作的时候的参考 0点不一致,导致各设备的电位不一致,当设备间有信号线连接的时候,信号线就充当了等电位的地线,就有各种电流通过,因此形成干扰。解决方法就是用较粗的地线做等电位连接。 3、调音台参数调整问题 由于各显示的调音台型号参数都不统一,这里以2个会场的调音台为例来说明。由于会议终端到调音台有2根接线,分别是输出和输入,对应调音台的输入和输出,即输出->输入、输入->输出,在调音台上把终端输出的声音又送回到终端的输入了,这样对声音就是一个环路,说话的时候很容易有回声。调音台环路的判断方法是,关闭对方的话筒开关还能听到回声,但是从MCU控制台关闭对方的话筒就没回声了,大多是对方调音台环路的问题。如果还有回声那么有可能是本地调音台的问题,大多是声音旋钮调的太高了。 1>主会场的调音台 1)接线如下 有4路话筒分别接1234输入,终端的输出接19/20路输入的ST3通道。调音台的FX输出接终端的输入。

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

基于MATLAB的语音信号分析与处理 [摘要]语音信号的处理是一门非常重要的学科,如今普遍应用在电话通信、助听器等方面。本次设计主要是为了在MATLAB软件的帮助下处理一段加噪的声音信号,该过程会涉及到采样定理,傅立叶变换等理论和算法在设计过程中的实际应用。在本次设计中,我们关注的是在驱除噪声污染是所需要的滤波器的选择,充分比较各种优缺点后,再利用滤波器来驱除杂音。通过滤波前后的声音的频谱图的比较,来了解滤波器的特性和作用,并得到本次设计的结果。 [关键词]:语音信号;MATLAB;傅立叶变换;滤波器

目录 摘要 (Ⅰ) 1 绪论 (1) 1.1 课题的研究背景及意义 (1) 1.1 设计任务 (1) 2 语音信号处理的基本理论知识 (1) 2.1 采样频率和采样位数 (1) 2.2 采样定理 (1) 2.3 IIR数字滤波器 (2) 2.4 FIR数字滤波器 (2) 2.5 IIR数字滤波器和FIR数字滤波器的比较 (3) 2.6 倒谱 (3) 3 语音信号处理和理论方案 (3) 3.1 语音信号的采集 (3) 3.2 语音信号的处理 (4) 3.3 系统框图 (4) 4 语音信号处理的实例分析. (5) 4.1语音文件在MATLAB平台上的录入与打开 (5) 4.2原始语音信号频谱分析及仿真 (5) 4.3加噪语音信号频谱分析及仿真 (8) 4.4去噪及仿真 (13) 4.5 语音信号的回放 (18) 4.6结合去噪后的频谱图对比两种方式滤波的优缺点 (18) 5 总结. (19) 6 致谢. (19) 参考文献 (20)

1绪论 1.1课题的研究背景及意义 语言是我们人类所特有的功能,它是传承和记载人类几千年文明史,没有语言就没有我们今天人类的文明。语音是语言最基本的表现形式,是相互传递信息最重要的手段,是人类最重要、最有效、最常用和最方便的交换信息的形式。 语音信号处理属于信息科学的一个重要分支,大规模集成技术的高度发展和计算机技术的飞速前进,推动了这一技术的发展;它是研究用数字信号处理技术对语音信号进行处理的一门新兴学科,同时又是综合性的多学科领域和涉及面很广的交叉学科,因此我们进行语言信号处理具有时代的意义。 1.2设计任务 本设计先完成语音信号的采集,然后设计低通,带通等滤波器对采集到的语音信号进行滤波处理,分析语音信号各频率段的特性。并对所采集的语音信号加入不同的干扰噪声,对加入噪声的信号进行频谱分析,针对受干扰语音信号的特点设计不同的滤波器,对加噪信号进行滤波,恢复原信号。把原始语音信号、加噪语音信号和滤波后的信号进行时域变换和频域变换,画出它们的时域波形和频域波形图,从视觉角度比较分析滤波的效果。 2语音信号处理的基本理论知识 2.1采样频率和采样位数 采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调,衡量声卡、声音文件的质量标准。采样频率越高,即采样的间隔时间越短,则在单位时间内计算机得到的声音样本数据就越多,对声音波形的表示也越精确。采样频率与声音频率之间有一定的关系,根据奎斯特理论,只有采样频率高于声音信号最高频率的两倍时,才能把数字信号表示的声音还原成为原来的声音。这就是说采样频率是衡量声卡采集、记录和还原声音文件的质量标准。 采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时所使用数字声音信号的二进制位数。采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。 采样位数和采样率对于音频接口来说是最为重要的两个指标,也是选择音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。每增加一个采样位数相当于力度范围增加了6dB。采样位数越多则捕捉到的信号越精确。 2.2 采样定理 在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中,最高频率fmax

MATLAB对语音信号加随机噪声及去噪程序

%对语言信号做原始的时域波形分析和频谱分析[y,fs,bits]=wavread('C:\Documentsand?Settings\Administrator\桌面\cuocuo.wav'); %??sound(y,fs)??????%回放语音信号 n=length(y)??%选取变换的点数? y_p=fft(y,n);??????%对n点进行傅里叶变换到频域 f=fs*(0:n/2-1)/n;???%对应点的频率 figure(1) subplot(2,1,1); plot(y);????????????????????%语音信号的时域波形图 title('原始语音信号采样后时域波形'); xlabel('时间轴') ylabel('幅值A') subplot(2,1,2); plot(f,abs(y_p(1:n/2)));?????%语音信号的频谱图 title('原始语音信号采样后频谱图'); xlabel('频率Hz'); ylabel('频率幅值'); %对音频信号产生噪声 ??L=length(y)????????%计算音频信号的长度 ??noise=0.1*randn(L,2);??%产生等长度的随机噪声信号(这里的噪声的大小取决于随机函数的幅度倍数) ??y_z=y+noise;????????%将两个信号叠加成一个新的信号——加噪声处理??? ??%sound(y_z,fs) %对加噪后的语音信号进行分析 n=length(y);??%选取变换的点数? y_zp=fft(y_z,n);??????%对n点进行傅里叶变换到频域 f=fs*(0:n/2-1)/n;???%对应点的频率 figure(2) subplot(2,1,1); plot(y_z);????????????????????%加噪语音信号的时域波形图 title('加噪语音信号时域波形'); xlabel('时间轴') ylabel('幅值A') subplot(2,1,2); plot(f,abs(y_zp(1:n/2)));?????%加噪语音信号的频谱图 title('加噪语音信号频谱图'); xlabel('频率Hz'); ylabel('频率幅值');

语音信号处理试验教程

语音信号处理试验 实验一:语音信号时域分析 实验目的: (1)录制两段语音信号,内容是“语音信号处理”,分男女声。 (2)对语音信号进行采样,观察采样后语音信号的时域波形。 实验步骤: 1、使用window自带录音工具录制声音片段 使用windows自带录音机录制语音文件,进行数字信号的采集。启动录音机。录制一段录音,录音停止后,文件存储器的后缀默认为.Wav。将录制好文件保存,记录保存路径。男生女生各录一段保存为test1.wav和test2.wav。 图1基于PC机语音信号采集过程。 2、读取语音信号 在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中。 3、编程获取语音信号的抽样频率和采样位数。 语音信号为test1.wav和test2.wav,内容为“语音信号处理”,两端语音保存到工作空间work文件夹下。在M文件中分别输入以下程序,可以分两次输入便于观察。 [y1,fs1,nbits1]=wavread('test1.wav') [y2,fs2,nbits2]=wavread('test2.wav') 结果如下图所示 根据结果可知:两端语音信号的采样频率为44100HZ,采样位数为16。 4、语音信号的时域分析 语音信号的时域分析就是分析和提取语音信号的时域参数。进行语音分析时,最先接触到并且夜市最直观的是它的时域波形。语音信

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

摘要 (2) 1 设计目的与要求 (3) 2 设计步骤 (4) 3 设计原理及内容 (5) 3.1 理论依据 (5) 3.2 信号采集 (6) 3.3 构造受干扰信号并对其FFT频谱分析 (8) 3.4 数字滤波器设计 (9) 3.5 信号处理 (10) 总结 (12) 致谢 (13) 参考文献 (14)

用MATLAB对语音信号进行分析与处理,采集语音信号后,在MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。 数字滤波器是数字信号处理的基础,用来对信号进行过滤、检测和参数估计等处理。IIR数字滤波器最大的优点是给定一组指标时,它的阶数要比相同组的FIR滤波器的低的多。信号处理中和频谱分析最为密切的理论基础是傅立叶变换(FT)。离散傅立叶变换(DFT)和数字滤波是数字信号处理的最基本内容。 关键词:MATLAB;语音信号;加入噪声;滤波器;滤波

1. 设计目的与要求 (1)待处理的语音信号是一个在20Hz~20kHz频段的低频信号 (2)要求MATLAB对语音信号进行分析和处理,采集语音信号后,在MATLAB平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器进行滤除噪声,恢复原信号。

2. 设计步骤 (1)选择一个语音信号或者自己录制一段语音文件作为分析对象; (2)对语音信号进行采样,并对语音信号进行FFT频谱分析,画出信号的时域波形图和频谱图; (3)利用MATLAB自带的随机函数产生噪声加入到语音信号中,对语音信号进行回放,对其进行FFT频谱分析; (4)设计合适滤波器,对带有噪声的语音信号进行滤波,画出滤波前后的时域波形图和频谱图,比较加噪前后的语音信号,分析发生的变化; (5)对语音信号进行回放,感觉声音变化。

音频信号分析与处理

实验三音频信号的分析与处理1 一、实验目的 1.掌握音频信号的采集以及运用Matlab软件实现音频回放的方 法; 2.掌握运用Matlab实现对音频信号的时域、频谱分析方法; 3.掌握运用Matlab设计RC滤波系统的方法; 4.掌握运用Matlab实现对加干扰后的音频信号的进行滤波处理 的方法; 5.锻炼学生运用所学知识独立分析问题解决问题的能力,培养学 生创新能力。 二、实验性质 设计性实验 三、实验任务 1.音频信号的采集 音频信号的采集可以通过Windows自带的录音机也可以用专用的录制软件录制一段音频信号(尽量保证无噪音、干扰小),也可以直接复制一段音频信号,但必须保证音频信号保存为.wav的文件。 2.音频信号的时域、频域分析 运用Matlab软件实现对音频信号的打开操作、时域分析和频域分析,并画出相应的图形(要求图形有标题),并打印在实验报告中(注意:把打印好的图形剪裁下来,粘贴到实验报告纸上)。 3.引入干扰信号 在原有的音频信号上,叠加一个频率为100KHz的正弦波干扰信号(幅度自定,可根据音频信号的情况而定)。 4.滤波系统的设计 运用Matlab实现RC滤波系统,要求加入干扰的音频信号经过RC滤波系统后,能够滤除100KHz的干扰信号,同时保留原有的音频信号,要求绘制出RC滤波系统的冲激响应波形,并分析其频谱。

% 音频信号分析与处理 %% 打开和读取音频文件 clear all; % 清除工作区缓存 [y, Fs] = audioread('jyly.wav'); % 读取音频文件 VoiceWav = y(300000 : 400000, 1); % 截取音频中的一段波形 clear y; % 清除缓存 hAudio = audioplayer(VoiceWav, Fs); % 将音频文件载入audioplayer SampleRate = get(hAudio, 'SampleRate'); % 获取音频文件的采样率KHz T = 1/SampleRate; % 计算每个点的时间,即采样周期SampLen = size(VoiceWav,1); % 单声道采样长度 %% 绘制时域分析图 hFig1 = figure('Units', 'normalized', 'Position', [0 0.05 0.49 0.85]); t = T: T: (SampLen* T); subplot(2, 1, 1); % 绘制音频波形 plot(t, VoiceWav); % 绘制波形 title('音频时域波形图'); axis([0, 2.3, -0.5, 0.5]); xlabel('时间(s)'); ylabel('幅值(V)'); % 显示标题 %% 傅里叶变换 subplot(2, 1, 2); % 绘制波形 myfft(VoiceWav, SampleRate, 'plot'); % 傅里叶变换 title('单声道频谱振幅'); % 显示标题 xlabel('Frequency (Hz)'); ylabel('|Y(f)|'); play(hAudio); % 播放添加噪声前的声音 pause(3); %% 引入100KHz的噪声干扰 t = (0: SampLen-1)* T; noise = sin(2 * pi * 10000 * t); % 噪声频率100Khz,幅值-1V到+1V hFig2 = figure('Units', 'normalized', 'Position', [0.5 0.05 0.5 0.85]); subplot(2, 1, 1); % 绘制波形 plot(t(1: 1000), noise(1: 1000)); title('100KHz噪声信号'); % 显示标题 noiseVoice = VoiceWav+ noise'; % 将噪声加到声音里面 hAudio = audioplayer(noiseVoice, Fs); % 将音频文件载入audioplayer subplot(2, 1, 2); % 绘制波形 [fftNoiseVoice, f] = myfft(noiseVoice, SampleRate, 'plot'); title('音乐和噪声频谱'); % 显示标题 play(hAudio); % 播放添加噪声后的声音 pause(3);

数字信号处理--变声器报告

数字信号处理--变声器报告 1项目目标:把自己(男)的声音分别变成小孩的声音、女人的声音和老人的声音。 2变声原理:语音科学家将人类发声过程视作一个由声门源输送的气流经以声道、口、鼻腔组成的滤波器调制而成的。人类语 音可分为有声语音和无声语音,前者是由声带振动激励的 脉冲信号经声腔调制变成不同的音,它是人类语言中元音 的基础,声带振动的频率称为基频。无声语音则是声带保 持开启状态,禁止振动引发的。一般来说,由声门振动决 定的基频跟说话人的性别特征有关,如下表,而无声语音 则没有体现这个特征。说话人的个性化音色和语音的另外 一个声学参数——共振峰频率的分布有关。儿童由于声道 短,其共振峰频率高于成年人,成年女性的声道一般短于 成年男性,所以女性的共振峰频率一般高于男性。 表男声、女声和童声基频、共振峰频率关系表 由上可知,在进行性别变声时,主要考虑基频和共振峰频率的变化。当基频伸展,共振峰频率也同时伸展时,可由男声变成女声,女声变成童声;反之,基频收缩,共振峰频率也同时收缩时,则由童声变女声,女声变男声。为了获得自然度、真实感较好的变声效果,基

频和共振峰频率通常必须各自独立地伸缩变化如图1。 V1 男声变童声 V2 男声变女声 图1 基频和共振峰频率分布的变化 共振峰频率的改变是基于重采样实现的,从重采样原理知道,这也同时引发了基频的变化,为保证基频变化和共振峰频率变化的独立、互不相关,在基频移动时必须考虑抵消重采样带来的偏移,理论上只要基频检测足够精确,确实可以保证基频改变和共振峰频率改变间的互不相关。 3设计方案:1录入自己(小孩、女人、老人)的一段声音 2用MATLAB 做fft得到其频谱 3做fft频谱分析 4搬移和改变基 频、语速,实现变声 4程序流图

基于LabVIEW的变声器设计

基于LabVIEW的变声器设计 摘要:数字信号处理技术在语音信号的处理中具有十分重要的意义,是语音变换的处理方法之一。基于在语音变换时的技术要求,本文介绍了一种在基音同步叠加(PSOLA)算法的前提下,结合重采样技术实现语音变调不变速的方法,在分析变换理论及具体算法的基础上,利用LabVIEW编程实现语音的多种频率变换以及男∕女声变换。 关键词:基音同步叠加(PSOLA)算法; 重采样; 频谱搬移; 语音转换LabVIEW-based variable sound design Abstract: Digital signal processing technology is of great significance in speech signal processing, is one of the processing method of voice transformation. Based on the technical requirements in the voice change, this paper describes a synchronous overlap in pitch (PSOLA) algorithm premise resampling technique combining voice tone does not shift method, based on the analysis of specific algorithms transform theory and on the use of LabVIEW programming a variety of voice frequency conversion and male / female transformation. Keyword: PSOLA; resampling; spectrum shifting; V oice conversion 0 引言 在音频信号处理中,将源说话人语音中的个性特征转换成目标说话人语音的个性特征的语音信号处理技术,称为语音变换技术。人的语音说话特征分为音段特性与超音段特性以及语言特性,音段特征包括谱包络,谱激励;超音段特性包括基频,时长,幅度[1]。 近几年来,语音信号处理技术在实用化方面取得了很多突破性进展,例如,随着在对声学语音学统计模型的深入研究,像语音识别,基于语音段的建模方法等逐渐成为研究热点。在语音合成方面,基于基音同步叠加(PSOLA)算法的波形编辑和拼接技术得到广泛应用[2],PSOLA算法的优势在于能在不改变语音音段的音质的基础上,能改变体现语音自然度的韵律特征的变化,进而获得更高的清晰度。

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