【Matlab】基于A律13折线的PCM语音编解码系统(GUI设计、simulink、附完整代码)

【Matlab】PCM语音编解码


一.绪论

1.1 研究背景

随着信息技术的高速发展,现代通信技术,尤其是语音信 处理技术已经在日常生活中得到十分广泛的运用,如无线通信,军事通信,蓝牙通信等一系列专用通信系统等。而在语音信 处理的过程中十分重要的一环便是压缩编码技术,可分为三类:波形编码,参数编码及混合编码等。其中以脉冲编码调制(即PCM,Pluse Code Modulation)为代表的波形编码在语音信 处理的过程中应用最为广泛,是数字通信系统发展的一次飞跃。

1.2 PCM技术的研究现状

脉冲编码调制的概念是1937年由法国工程师AlecReeres最早提出来的。随着集成电路技术的飞速发展,超大规模集成电路的PCM编、解码器出现,使它在光纤通信、数字微波通信、卫星通信、信 处理、军事及民用电子技术领域发挥着越来越重要的作用。PCM是一种将模拟语音信 进行数字化的技术,同时也是语音波形编码的一种。目前广泛应用于通信、计算机、数字仪表、遥控遥测等领域,其应用广度和深度也在不断地扩展和深化。随着全球数字化、信息化的不断推进,脉冲编码调制会有更加良好的发展、应用前景。

在语音通信中,通常采用8位的PCM编码就能够保证满意的通信质量。典型电话信 的抽样频率是8000Hz。故在采用这类非均匀量化编码器时,典型的数字电话传输比特率为64 kb/s。

在计算机应用中,能够达到最高保真水平的就是PCM编码,被广泛用于素材保存及音乐欣赏,CD、DVD以及我们常见的 WAV文件中均有应用。因此,PCM约定俗成了无损编码,因为PCM代表了数字音频中最佳的保真水准,并不意味着PCM就能够确保信 绝对保真,PCM也只能做到最大程度的无限接近。要算一个PCM音频流的码率是一件很轻松的事情,采样率值×采样大小值×声道数 bps。一个采样率为44.1KHz,采样大小为16bit,双声道的PCM编码的WAV文件,它的数据速率则为 44.1K×16×2 =1411.2 Kbps。我们常见的Audio CD就采用了PCM编码,一张光盘的容量只能容纳72分钟的音乐信息。

1.3 研究内容

本次设计针对PCM的编解码及其特点进行探究,并基于MATLAB对PCM通信系统进行仿真,其研究内容主要有以下几个部分:
①利用Matlab编写PCM编解码相关函数程序,并调用PCM编解码函数,分别以一个正弦波和鸟的语音信 作为输入信 ,实现仿真,验证PCM编解码的正确性。
②采用Matlab中的Simulink进行PCM编解码仿真,噪声影响与性能分析。
③采用GUI界面操作完成语音输入,PCM编码,PCM解码,语音还原输出等一系列操作。此处调用①中的程序进行上述功能的实现。


二. PCM编解码的基本原理

2.1 PCM语音编码原理

通常我们把从模拟信 抽样、量化,直到变换成为二进制符 的基本过程,称为脉冲编码调制,简称脉码调制。PCM编码的过程,实际上就是将一个语音信 进行“抽样-量化-编码”的一个过程。它是将模拟信 变换成二进制信 的一种常用方法。PCM编码的具体步骤如下:
①对模拟信 按信 自身的频率特点(如正弦信 依据采样定理以其信 带宽2倍以上的频率提取抽样值,语音信 依据其自身的频率Fs,为精确表示信 ,一般要保留10kHz以下的频谱成分,G.711标准中规定PCM的抽样频率为8kHz)进行抽样
②对该模拟信 的各个抽样值进行量化,其实质是能够用数字量来表示在时域上离散的各个抽样值。在该过程中,会因为量化精度而产生量化误差,量化精度越高自然量化误差也就越小。而常用的量化方式有均匀量化和非均匀量化两种。
由于在均匀量化时,由量化器信噪比公式(S/N)=M可得量化器的信噪比随着量化电平数M的增加而显著提高,当小信 输入时,量化间隔也会变小,其量化噪声的平均功率也会变小,此时小信 量噪比便难以达到要求;而由于语音信 中小电压出现的概率较大,并且非均匀量化噪声对大小信 的影响大致相同,因此采用非均匀量化来改善语音信 中小信 的量噪比。
在PCM语音编码中,主要是对抽样值先进行压缩再进行均匀量化来实现非均匀量化,并通常采用8位PCM编码来保证PCM编解码系统的通信质量。
③在PCM编码中,一般采用A压缩律进行对抽样值的压缩,即具有如下式特性的压缩律:

图2-1 A律13折线律的特性曲线

在13折线律中采用的折叠码有8位。其中第一位c1表示量化值的极性正负。后面的7位分为段落码和段内码两部分,用于表示量化值的绝对值。其中第2至4位(c2 c3 c4)是段落码,共计3位,可以表示8种斜率的段落;其他4位(c5 ~ c8)为段内码,可以表示每一段落内的16种量化电平。段内码代表的16个量化电平是均匀划分的。所以,这7位码总共能表示27 = 128种量化值。在下面的表2-1中给出了段落码和段内码的编码规则。
表2-1 段落码和段内码的编码规则

图2-2 PCM编码的原理框图

2.2 PCM语音解码原理

接收端实现PCM解码的原理框图如图2-3所示,其主要原理为逐次比较A/D转换。

图3-1 正弦波信 产生与采样代码

图3-4 PCM编码函数中采样信 的量化部分

br>

图3-8 正弦信 PCM编码结果

3.3 PCM解码

根据PCM解码的相关原理,可设计出PCM解码函数如图3-9所示,调用代码如图3-10所示,解码效果图如图3-11所示。

图3-12 PCM编解码系统示意图

在图3-12中,我们以一个幅值为1,频率为1Hz的正弦波为例,先通过量化模块将正弦波量化,然后将量化后的信 通过对其进行编码,译码和解码,并设置其采样8位2进制编码,3位2进制解码,随后将解码过后的信 通过一个低通滤波器,滤除其中的高频噪声,从而将原来量化过后的信 在[0,1]区间上进行进行还原。

图3-14 PCM编码模块设置示意图

图3-16 PCM编解码输出示意图

/p>

3.5 PCM编解码的GUI实现

此处采用GUI界面操作完成语音输入,PCM编码,PCM解码,语音还原输出,界面如图3-17所示,语音输入与语音还原输出后的对比图如图3-18所示。语音输入部分采用matlab内部自带的鸟叫声作为输入。

图3-18 语音输入与PCM语音还原输出后的对比图

四.性能分析

4.1 具体信 分析

此处主要对该信 进行失真度分析的测试,如图3-19所示。可得到失真度的大小为0.002321,说明对应具体信 而言,PCM编解码后的输出信 还原度较高。


声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月18日
下一篇 2021年1月18日

相关推荐