第3章 人类话音编码.docx

上传人:b****5 文档编号:7380065 上传时间:2023-01-23 格式:DOCX 页数:18 大小:124.51KB
下载 相关 举报
第3章 人类话音编码.docx_第1页
第1页 / 共18页
第3章 人类话音编码.docx_第2页
第2页 / 共18页
第3章 人类话音编码.docx_第3页
第3页 / 共18页
第3章 人类话音编码.docx_第4页
第4页 / 共18页
第3章 人类话音编码.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

第3章 人类话音编码.docx

《第3章 人类话音编码.docx》由会员分享,可在线阅读,更多相关《第3章 人类话音编码.docx(18页珍藏版)》请在冰豆网上搜索。

第3章 人类话音编码.docx

第3章人类话音编码

第3章人类话音编码

随着数字电话和数据通信容量日益增长的迫切要求,而又不希望明显降低传送话音信号的质量,除了提高通信带宽之外,对话音信号进行压缩是提高通信容量的重要措施。

另一个可说明话音数据压缩的重要性的例子是,用户无法使用28.8kb/s的调制解调器来接收因特网上的64kb/s话音数据流,这是一种单声道、8位/样本、采样频率为8kHz的话音数据流。

ITU-TSS为此制定了并且继续制定一系列话音(speech)数据编译码标准。

其中,G.711使用μ律和A律压缩算法,信号带宽为3.4kHz,压缩后的数据率为64kb/s;G.721使用ADPCM压缩算法,信号带宽为3.4kHz,压缩后的数据率为32kb/s;G.722使用ADPCM压缩算法,信号带宽为7kHz,压缩后的数据率为64kb/s。

在这些标准基础上还制定了许多话音数据压缩标准,例如G.723,G.723.1,G.728,G.729和G.729.A等。

本章将重点介绍话音编码的基本思想,而详细计算则留给那些开发和具体设计编译码器软硬件的读者去研究。

3.1话音编码概要

3.1.1话音波形的特性

了解话音波形的基本特性对声音数据的压缩编码、声音的识别和文本-声音的转换等都有很重要的意义。

  当肺部中的受压空气沿着声道通过声门发出时就产生了话音。

普通男人的声道从声门到嘴的平均长度约为17厘米,这个事实反映在声音信号中就相当于在1ms数量级内的数据具有相关性,这种相关称为短期相关(short-termcorrelation)。

声道也被认为是一个滤波器,这个滤波器有许多共振峰,这些共振峰的频率受随时间变化的声道形状所控制,例如舌的移动就会改变声道的形状。

许多话音编码器用一个短期滤波器(shorttermfilter)来模拟声道。

但由于声道形状的变化比较慢,模拟滤波器的传递函数的修改不需要那么频繁,典型值在20ms左右。

  压缩空气通过声门激励声道滤波器,根据激励方式不同,发出的话音分成三种类型:

浊音(voicedsounds),清音(unvoicedsounds)和爆破音(plosivesounds)。

1.浊音浊音是一种称为准周期脉冲(quasi-periodicpulses)激励所发出的音,这种准周期脉冲是在声门打开然后关闭时中断肺部到声道的气流所产生的脉冲。

声门打开和关闭的速率呈现为音节(pitch)的大小,它的速率可通过改变声道的形状和空气的压力来调整。

浊音表现出在音节上有高度的周期性,其值在2~20ms之间,这个周期性称为长期周期性(long-termperiodicity)。

图3-01表示了某一浊音段的波形,音节周期大约8ms。

这一浊音段的功率谱密度(powerspectraldensity,PSD)如图3-02所示。

 

图3-01浊音段的波形举例

 

图3-02浊音段的功率谱密度举例

 

2.清音清音是由不稳定气流激励所产生的,这种气流是在声门处在打开状态下强制空气在声道里高速收缩产生的,如图3-03所示。

这一清音段的功率谱密度PSD和图3-04所示。

图3-03清音段的波形举例

图3-04清音段的功率谱密度举例

 

3.爆破音爆破音是在声道关闭之后产生的压缩空气然后突然打开声道所发出的音。

  某些音不能归属到上述三种音中的任何一种,例如在声门振动和声道收缩同时出现的情况下产生的摩擦音,这种音称为混合音。

  虽然各种各样的话音都有可能产生,但声道的形状和激励方式的变化相对比较慢,因此话音在短时间周期(20ms的数量级)里可以被认为是准定态(quasi-stationary)的,也就是说基本不变的。

从图3-01,-02,-03和-04中可以看到话音信号显示出的高度周期性,这是由于声门的准周期性的振动和声道的谐振所引起的。

话音编码器就是企图揭示这种周期性,目的是为了减少数据率而又尽可能不牺牲声音的质量。

3.1.2三种话音编译码器

  通常把已有的话音编译码器分成以下三种类型:

波形编译码器(waveformcodecs),音源编译码器(sourcecodecs)和混合编译码器(hybridcodecs)。

一般来说,波形编译码器的话音质量高,但数据率也很高;音源编译码器的数据率很低,产生的合成话音的音质有待提高;混合编译码器使用音源编译码技术和波形编译码技术,数据率和音质介于它们之间。

图3-05表示了目前这三种编译码器的话音质量和数据率的关系。

图3-05普通编译码器的音质与数据率

1.波形编译码器

  波形编译码的想法是,不利用生成话音信号的任何知识而企图产生一种重构信号,它的波形与原始话音波形尽可能地一致。

一般来说,这种编译码器的复杂程度比较低,数据速率在16kb/s以上,质量相当高。

低于这个数据速率时,音质急剧下降。

  最简单的波形编码是脉冲编码调制(pulsecodemodulation,PCM),它仅仅是对输入信号进行采样和量化。

典型的窄带话音带宽限制在4kHz,采样频率是8kHz。

如果要获得高一点的音质,样本精度要用12位,它的数据率就等于96kb/s,这个数据率可以使用非线性量化来降低。

例如,可以使用近似于对数的对数量化器(logarithmicquantizer),使用它产生的样本精度为8位,它的数据率为64kb/s时,重构的话音信号几乎与原始的话音信号没有什么差别。

这种量化器在20世纪80年代就已经标准化,而且直到今天还在广泛使用。

在北美的压扩(companding)标准是μ律(μ-law),在欧洲的压扩标准是A律(A-law)。

它们的优点是编译码器简单,延迟时间短,音质高。

但不足之处是数据速率比较高,对传输通道的错误比较敏感。

  在话音编码中,一种普遍使用的技术叫做预测技术,这种技术是企图从过去的样本来预测下一个样本的值。

这样做的根据是认为在话音样本之间存在相关性。

如果样本的预测值与样本的实际值比较接近,它们之间的差值幅度的变化就比原始话音样本幅度值的变化小,因此量化这种差值信号时就可以用比较少的位数来表示差值。

这就是差分脉冲编码调制(differentialpulsecodemodulation,DPCM)的基础—对预测的样本值与原始的样本值之差进行编码。

  这种编译码器对幅度急剧变化的输入信号会产生比较大的噪声,改进的方法之一就是使用自适应的预测器和量化器,这就产生了一种叫做自适应差分脉冲编码调制(adaptivedifferentialPCM,ADPCM)。

在20世纪80年代,国际电话与电报顾问委员会(InternationalTelephoneandTelegraphConsultativeCommittee,CCITT),现改为国际电信联盟-远程通信标准部(InternationalTelecommunicationsUnion-TelecommunicationsStandardsSection,ITU-TSS),就制定了数据率为32kb/s的ADPCM标准,它的音质非常接近64kb/s的PCM编译码器,随后又制定了数据率为16,24和40kb/s的ADPCM标准。

  上述的所有波形编译码器完全是在时间域里开发的,在时域里的编译码方法称为时域法(timedomainapproach)。

在开发波形编译码器中,人们还使用了另一种方法,叫做频域法(frequencydomainapproach)。

例如,在子带编码(sub-bandcoding,SBC)中,输入的话音信号被分成好几个频带(即子带),变换到每个子带中的话音信号都进行独立编码,例如使用ADPCM编码器编码,在接收端,每个子带中的信号单独解码之后重新组合,然后产生重构话音信号。

它的优点是每个子带中的噪声信号仅仅与该子带使用的编码方法有关系。

对听觉感知比较重要的子带信号,编码器可分配比较多的位数来表示它们,于是在这些频率范围里噪声就比较低。

对于其他的子带,由于对听觉感知的重要性比较低,允许比较高的噪声,于是编码器就可以分配比较少的位数来表示这些信号。

自适应位分配的方案也可以考虑用来进一步提高音质。

子带编码需要用滤波器把信号分成若干个子带,这比使用简单的ADPCM编译码器复杂,而且还增加了更多的编码时延。

即使如此,与大多数混合编译码器相比,子带编译码的复杂性和时延相对来说还是比较低的。

  另一种频域波形编码技术叫做自适应变换编码(adaptivetransformcoding,ATC)。

这种方法使用快速变换(例如离散余弦变换)把话音信号分成许许多多的频带,用来表示每个变换系数的位数取决于话音谱的性质,获得的数据率可低到16kb/s。

 2.音源编译码器

  音源编译码的想法是企图从话音波形信号中提取生成话音的参数,使用这些参数通过话音生成模型重构出话音。

针对话音的音源编译码器叫做声码器(vocoder)。

在话音生成模型中,声道被等效成一个随时间变化的滤波器,叫做时变滤波器(time-varyingfilter),它由白噪声—无声话音段激励,或者由脉冲串——有声话音段激励。

因此需要传送给解码器的信息就是滤波器的规格、发声或者不发声的标志和有声话音的音节周期,并且每隔10~20ms更新一次。

声码器的模型参数既可使用时域的方法也可以使用频域的方法确定,这项任务由编码器完成。

  这种声码器的数据率在2.4kb/s左右,产生的语音虽然可以听懂,但其质量远远低于自然话音。

增加数据率对提高合成话音的质量无济于事,这是因为受到话音生成模型的限制。

尽管它的音质比较低,但它的保密性能好,因此这种编译码器一直用在军事上。

3.混合编译码

  混合编译码的想法是企图填补波形编译码和音源编译码之间的间隔。

波形编译码器虽然可提供高话音的质量,但数据率低于16kb/s的情况下,在技术上还没有解决音质的问题;声码器的数据率虽然可降到2.4kb/s甚至更低,但它的音质根本不能与自然话音相提并论。

为了得到音质高而数据率又低的编译码器,历史上出现过很多形式的混合编译码器,但最成功并且普遍使用的编译码器是时域合成-分析(analysis-by-synthesis,AbS)编译码器。

这种编译码器使用的声道线性预测滤波器模型与线性预测编码(linearpredictivecoding,LPC)使用的模型相同,不使用两个状态(有声/无声)的模型来寻找滤波器的输入激励信号,而是企图寻找这样一种激励信号,使用这种信号激励产生的波形尽可能接近于原始话音的波形。

AbS编译码器由Atal和Remde在1982年首次提出,并命名为多脉冲激励(multi-pulseexcited,MPE)编译码器,在此基础上随后出现的是等间隔脉冲激励(regular-pulseexcited,RPE)编译码器、码激励线性预测CELP(codeexcitedlinearpredictive)编译码器和混合激励线性预测(mixedexcitationlinearprediction,MELP)等编译码器。

  AbS编译码器的一般结构如图3-06所示。

(a)编码器

 

(b)译码器

图3-06AbS编译码器的结构

 

  AbS编译码器把输入话音信号分成许多帧(frames),一般来说,每帧的长度为20ms。

合成滤波器的参数按帧计算,然后确定滤波器的激励参数。

从图3-06(a)可以看到,AbS编码器是一个负反馈系统,通过调节激励信号u(n)可使话音输入信号s(n)与重构的话音信号

之差为最小,也就是重构的话音与实际的话音最接近。

这就是说,编码器通过“合成”许多不同的近似值来“分析”输入话音信号,这也是“合成-分析编码器”名称的来由。

在表示每帧的合成滤波器的参数和激励信号确定之后,编码器就把它们存储起来或者传送到译码器。

在译码器端,激励信号馈送给合成滤波器,合成滤波器产生重构的话音信号,如图3-06(b)所示。

  在数据率为2.4kb/s~64kb/s的范围里,部分编码器的MOS分数大致如表3-01所示。

表3-01部分编码器的MOS分

编码器

MOS分

64kb/s脉冲编码调制(PCM)

4.3

32kb/s自适应差分脉冲编码调制(ADPCM)

4.1

16kb/s低时延码激励线性预测编码(LD-CELP)

4.0

8kb/s码激励线性预测编码(CELP)

3.7

3.8kb/s码激励线性预测编码(CELP)

3.0

2.4kb/s线性预测编码(LPC)

2.5

 

3.2脉冲编码调制(PCM)

3.2.1PCM的概念

脉冲编码调制(pulsecodemodulation,PCM)是概念上最简单、理论上最完善的编码系统,是最早研制成功、使用最为广泛的编码系统,但也是数据量最大的编码系统。

  PCM的编码原理比较直观和简单,它的原理框图如图3–07所示。

在这个编码框图中,它的输入是模拟声音信号,它的输出是PCM样本。

图中的“防失真滤波器”是一个低通滤波器,用来滤除声音频带以外的信号;“波形编码器”可暂时理解为“采样器”,“量化器”可理解为“量化阶大小(step-size)”生成器或者称为“量化间隔”生成器。

图3-07PCM编码框图

在第2章介绍声音数字化的时候,谈到声音数字化有两个步骤:

第一步是采样,就是每隔一段时间间隔读一次声音的幅度;第二步是量化,就是把采样得到的声音信号幅度转换成数字值。

但那时并没有涉及如何进行量化。

量化有好几种方法,但可归纳成两类:

一类称为均匀量化,另一类称为非均匀量化。

采用的量化方法不同,量化后的数据量也就不同。

因此,可以说量化也是一种压缩数据的方法。

3.2.2均匀量化

如果采用相等的量化间隔对采样得到的信号作量化,那么这种量化称为均匀量化。

均匀量化就是采用相同的“等分尺”来度量采样得到的幅度,也称为线性量化,如图3-08所示。

量化后的样本值Y和原始值X的差E=Y-X称为量化误差或量化噪声。

图3-08均匀量化

用这种方法量化输入信号时,无论对大的输入信号还是小的输入信号一律都采用相同的量化间隔。

为了适应幅度大的输入信号,同时又要满足精度要求,就需要增加样本的位数。

但是,对话音信号来说,大信号出现的机会并不多,增加的样本位数就没有充分利用。

为了克服这个不足,就出现了非均匀量化的方法,这种方法也叫做非线性量化。

3.2.3非均匀量化

非线性量化的基本想法是,对输入信号进行量化时,大的输入信号采用大的量化间隔,小的输入信号采用小的量化间隔,如图3-09所示。

这样就可以在满足精度要求的情况下用较少的位数来表示。

声音数据还原时,采用相同的规则。

  在非线性量化中,采样输入信号幅度和量化输出数据之间定义了两种对应关系,一种称为μ律压扩(companding)算法,另一种称为A律压扩算法。

图3-09非均匀量化

 

3.2.4μ律压扩

μ律(μ-Law)压扩(G.711)主要用在北美和日本等地区的数字电话通信中,按下面的式子确定量化输入和输出的关系:

式中:

x为输入信号幅度,规格化成-1 

 x 

 1;

  sgn(x)为x的极性;

  μ为确定压缩量的参数,它反映最大量化间隔和最小量化间隔之比,取100 

 μ 

 500。

  由于μ律压扩的输入和输出关系是对数关系,所以这种编码又称为对数PCM。

具体计算时,用μ=255,把对数曲线变成8条折线以简化计算过程。

3.2.5A律压扩

  A律(A-Law)压扩(G.711)主要用在欧洲和中国大陆等地区的数字电话通信中,按下面的式子确定量化输入和输出的关系:

    0

|x|

1/A

    1/A

|x|

1

式中:

x为输入信号幅度,规格化成-1

x

1;

   sgn(x)为x的极性;

   A为确定压缩量的参数,它反映最大量化间隔和最小量化间隔之比。

  A律压扩的前一部分是线性的,其余部分与μ律压扩相同。

具体计算时,A=87.56,为简化计算,同样把对数曲线部分变成折线。

  对于采样频率为8kHz,样本精度为13位、14位或者16位的输入信号,使用μ率压扩编码或者使用A率压扩编码,经过PCM编码器之后每个样本的精度为8位,输出的数据率为64kb/s。

这个数据就是CCITT推荐的G.711标准:

话音频率脉冲编码调制(PulseCodeModulation(PCM)ofVoiceFrequences)。

3.3PCM在通信中的应用

PCM编码早期主要用于话音通信中的多路复用。

一般来说,在电信网中传输媒体费用约占总成本的65%,设备费用约占成本的35%,因此提高线路利用率是一个重要课题。

提高线路利用率通常用下面两种方法:

  

(1)频分多路复用(frequency-divisionmultiplexing,FDM)

  这种方法是把传输信道的频带分成好几个窄带,每个窄带传送一路信号。

例如,一个信道的频带为1400Hz,把这个信道分成4个子信道(subchannels):

820~990Hz,1230~1400Hz,1640~1810Hz和2050~2220Hz,相邻子信道间相距240Hz,用于确保子信道之间不相互干扰。

每对用户仅占用其中的一个子信道。

这是模拟载波通信的主要手段。

  

(2)时分多路复用(time-divisionmultiplexing,TDM)

  这种方法是把传输信道按时间来分割,为每个用户指定一个时间间隔,每个间隔里传输信号的一部分,这样就可以使许多用户同时使用一条传输线路。

这是数字通信的主要手段。

例如,话音信号的采样频率f=8000Hz,它的采样周期=125μs,这个时间称为1帧(frame)。

在这个时间里可容纳的话路数24路制。

图3-10表示了结构。

图3-1024路PCM的帧结构

24路制的重要参数如下:

   

(1)每秒钟传送8000帧,每帧125μs。

   

(2)12帧组成1复帧(用于同步)。

   (3)每帧由24个时间片(信道)和1位同步位组成。

   (4)每个信道每次传送8位代码,1帧有24×8+1=193位(位)。

   (5)数据传输率R=8000×193=1544kb/s。

   (6)每一个话路的数据传输率=8000×8=64kb/s。

3.4增量调制与自适应增量调制

由于DM编码的简单性,它已成为数字通信和压缩存储的一种重要方法,很多人对最早在1946年发明的DM系统做了大量的改进和提高工作。

后来的自适应增量调制ADM系统采用十分简单的算法就能实现32kb/s~48kb/s的数据率,而且可提供高质量的重构话音,它的MOS评分可达到4.3分左右。

3.4.1增量调制(DM)

  增量调制也称△调制(deltamodulation,DM),它是一种预测编码技术,是PCM编码的一种变形。

PCM是对每个采样信号的整个幅度进行量化编码,因此它具有对任意波形进行编码的能力;DM是对实际的采样信号与预测的采样信号之差的极性进行编码,将极性变成“0”和“1”这两种可能的取值之一。

如果实际的采样信号与预测的采样信号之差的极性为“正”,则用“1”表示;相反则用“0”表示,或者相反。

由于DM编码只须用1位对话音信号进行编码,所以DM编码系统又称为“1位系统”。

  DM波形编码的原理如图3-12所示。

纵坐标表示“模拟信号输入幅度”,横坐标表示“编码输出”。

用i表示采样点的位置,x[i]表示在i点的编码输出。

输入信号的实际值用yi表示,输入信号的预测值用y[i+1]=y[i] 

 △表示。

假设采用均匀量化,量化阶的大小为△,在开始位置的输入信号y0=0,预测值y[0]=0,编码输出x[0]=1。

  现在让我们看几个采样点的输出。

在采样点i=1处,预测值y[1]=△,由于实际输入信号大于预测值,因此x[1]=1;…;在采样点i=4处,预测值y[4]=4△,同样由于实际输入信号大于预测值,因此x[4]=1;其他情况依此类推。

  从图3-12中可以看到,在开始阶段增量调制器的输出不能保持跟踪输入信号的快速变化,这种现象就称为增量调制器的“斜率过载”(slopeoverload)。

一般来说,当输入信号的变化速度超过反馈回路输出信号的最大变化速度时,就会出现斜率过载。

之所以会出现这种现象,主要是反馈回路输出信号的最大变化速率受到量化阶大小的限制,因为量化阶的大小是固定的。

  从图3-12中还可以看到,在输入信号缓慢变化部分,即输入信号与预测信号的差值接近零的区域,增量调制器的输出出现随机交变的“0”和“1”。

这种现象称为增量调制器的粒状噪声(granularnoise),这种噪声是不可能消除的。

图3-12DM波形编码示意图

  在输入信号变化快的区域,斜率过载是关心的焦点,而在输入信号变化慢的区域,关心的焦点是粒状噪声。

为了尽可能避免出现斜率过载,就要加大量化阶Δ,但这样做又会加大粒状噪声;相反,如果要减小粒状噪声,就要减小量化阶Δ,这又会使斜率过载更加严重。

这就促进了对自适应增量调制(adaptivedeltamodulation,ADM)的研究。

3.4.2自适应增量调制(ADM)

  为了使增量调制器的量化阶Δ能自适应,也就是根据输入信号斜率的变化自动调整量化阶Δ的大小,以使斜率过载和粒状噪声都减到最小,许多研究人员研究了各种各样的方法,而且几乎所有的方法基本上都是在检测到斜率过载时开始增大量化阶Δ,而在输入信号的斜率减小时降低量化阶Δ。

  例如,宋(Song)在1971描述的自适应增量调制技术中提出:

假定增量调制器的输出为1和0,每当输出不变时量化阶增大50%,使预测器的输出跟上输入信号;每当输出值改变时,量化阶减小50%,使粒状噪声减到最小,这种自适应方法使斜率过载和粒状噪声同时减到最小。

  又如,使用较多的另一种自适应增量调制器是由格林弗基斯(Greefkes)1970提出的,称为连续可变斜率增量调制(continuouslyvariableslopedeltamodulation,CVSD)。

它的基本方法是:

如果连续可变斜率增量调制器(continuouslyvariableslopedeltamodulator,CVSD)的输出连续出现三个相同的值,量化阶就加上一个大的增量,反之,就加一个小的增量。

  为了适应数字通信快速增长的需要,Motorola公司于80年代初期就已经开发了实现CVSD算法的集成电路芯片。

如MC3417/MC3517和MC3418/MC3518,前者采用3位算法,后者采用4位算法。

MC3417/MC3517用于一般的数字通信,MC3418/MC3518用于数字电话。

MC3417/MC3418用于民用,MC3517/MC3518用于军用。

3.5自适应差分脉冲编码调制

G.711使用A律或μ律PCM方法对采样率为8kHz的声音数据进行压缩,压缩后的数据率为64kb/s。

为了提高充分利用线路资源,而又不希望明显降低传送话音信号的质量,就要对它作进一步压缩,方法之一就是采用ADPCM。

3.5.1自适应脉冲编码调制(APCM)的概念

  自适应脉冲编码调制(adaptivepulsecodemodulation,APCM)是根据输入信号幅度大小来改变量化阶大小的一种波形编码技术。

这种自适应可以是瞬时自适应,即量化阶的大小每隔几个样本就改变,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1