APP下载

通用码本语音矢量编码算法研究

2019-06-15杨超刘云飞徐向旭刘传辉朱弘

现代电子技术 2019年12期

杨超 刘云飞 徐向旭 刘传辉 朱弘

摘  要: 基于预测编码、SOM自主神经网络矢量编码和Huffman编码的联合编码算法(PV算法)压缩效果虽然较好,但它在对每段语音编码时,都需要利用该段语音信号,通过SOM自主神经网络训练得到码本,算法复杂、耗时。为此文中提出从具有一般特征的多段语音信号中通过SOM自主神经网络训练提取码本,所有的语音信号段PV编码都统一用该码本,不需要对每一段语音信号编码都做一次提取码本的运算,这样不仅节省了每段语音PV编码时用于训练码本的时间,也节省了需要编码的专用码本的信息,减小了码率。实验结果显示,通用码本的PV编码算法在保证一定语音质量的条件下,是可行的。文中提出的编码算法在语言压缩编码方面具有较高的研究价值和很好的应用前景。

关键词: PV编码; 矢量编码; 语音信号编码; 神经网络训练; 通用码本; 专用码本

中图分类号: TN911.3?34                      文献标识码: A                       文章编号: 1004?373X(2019)12?0165?03

Abstract: The joint encoding algorithm based on the predictive coding, SOM autonomous neural network vector coding and Huffman coding (PV algorithm) has a good combination effect, but is complex and time?consuming when used to obtain the codebook by means of the SOM autonomous neural network training since the speech signal segment needs to be used during the encoding of each speech segment. Therefore, the SOM autonomous neural network training is proposed in this paper to extract the codebook from multiple speech signal segments with general features. The codebook is used for PV coding of all speech signal segments. There is no need to perform a codebook extraction operation for encoding of each speech signal segment, which not only saves the codebook training time for PV coding of each speech segment, but also saves the information of specific codebooks that need to encode, and reduces the bit rate. The experimental results show that the PV coding algorithm of the general codebook is feasible under the condition of guaranteeing a certain speech quality, and the coding algorithm proposed in this paper has a high research value and good application prospect in the aspect of language compression coding.

Keywords: PV coding; vector coding; speech signal coding; neural network training; general codebook; specific codebook

0  引  言

語音编码的目的是减少表示语音信号的码元数量[1],早在1972年,ITU?T发布A/μ率 64 Kb/s,脉冲编码调制语音编码标准G.711 [2]。目前语音编码的基本算法主要有波形编码、混合编码和参数编码[3]。一种基于预测编码、SOM自主神经网络[4?7]矢量编码[8?10]和Huffman编码的联合编码算法(以下简称PV编码算法)属于波形编码[11],其码率达到12.8 Kb/s,小于采用ADPCM编码算法的波形编码标准G.72的码率32 Kb/s(波形编码的最小码率)。但是PV算法中的SOM自主神经网络矢量的训练样本采用的是待传输的信号,缺点是每传送一段语音信号,就需要对SOM自主神网络进行一次训练,工作量比较大。本文提出PV算法中的SOM神经网络的矢量量化的码矢(本)采用通用码矢(本),这样不需要每传输一段语音就对SOM神经网络训练一次,文中将研究PV编码算法中矢量量化采用通用码本的编解码效果,旨在找到码率变化范围较小的条件下,减少PV编码算法的运算量和运算时间的算法。

1  PV算法

图1为2维PV算法编码部分程序流程图。以此类推,n维PV算法是将一列语音信号转变为n列,然后进行线性预测和n维矢量量化。

图1  2维PV算法编码程序流程图

2  通用矢量码本PV算法实验结果与分析

专用码本PV编码算法中,对SOM自主神经网络的训练样本源自待传输的语音信号,这样的码本只对待传输的信号量化误差小。通用码本的SOM神经网络训练样本源自众多的常用的语音信号,这样从统计意义上来说,通用码本对一般语音信号的矢量量化误差小。

实验中,先选取了男声、女声和男声音乐混合声音3段信号。因为8维64码矢PV语音编码具有较小的码率,这里按照8维PV编码算法的编码原理,对3段信号分别进行8列线性预测并计算误差,得到3个长度分别是5 000,6 017,5 016的8列(维)的误差矩阵,将三段誤差矢量拼在一起形成了一个16 033的8维矩阵,送入到SOM自主神经网络训练。为了得到64个码本,神经网络的输出设定为64。据神经网络的训练结果,得到8维PV编码算法的64码矢的通用码本。压缩率和信噪比的计算公式为: [压缩率=编码后二进制码总位数初始信号二进制码总位数×100%] (1)

式中:原始信号的功率为[Ps];语音信号的噪声功率[Pn]。

图2为用8维PV编码算法的64码矢的通用码本对一段语音信号编译码的情况。从图中可以看出,译码恢复信号在时域和频域都保持了原始语音信号的基本特征和形状。播放还原声音,仍能较为清楚地听清语音内容,音色变化不大,存在少量噪声。信噪比为6.14 dB,压缩率为8.58%。

图2  通用码本语音信号恢复情况

表1为用5段声音做为训练样本,将它们拼接成长度为26 843的8维预测误差矩阵,通过SOM自主神经网络训练得到64个通用码本,并用该通用码本对10段声音做8维64码矢的PS编译码后恢复的声音情况。

表1  通用码本8维64码矢PV算法译码声音恢复情况

由表1可见,专用码本恢复的10段声音质量较通用码本的好,10段用通用码本恢复的语音中有8组样本恢复声音质量为良,语音内容能清楚辨别,音色变化较小;2组恢复声音质量较差,内容勉强听清,音色有变化,噪声较大较差。所以,虽然通用码本译码恢复的声音质量较专用码本差,但仍然可行。

3  结  论

虽然适当的选择参数可使PV算法编码码率值很小,但是,对每段语音编码时,都需要利用该段语音信号,通过SOM自主神经网络训练得到码本,算法复杂、耗时。本文提出从具有一般特征的多段语音信号中通过SOM自主神经网络训练提取码本,所有的语音信号段PV编码都用该码本,不需要对每一段语音信号编码都做一次提取码本的运算,这样不仅节省了每段语音PV编码时用于训练码本的时间,而且节省了需要编码的专用码本的信息,从而减少了码率。实验结果显示,通用码本的PV编码算法在保证一定语音质量的条件下,是可行的。

注:本文通讯作者为徐向旭。

参考文献

[1] 肖东,莫福源,陈庚,等.低码率语音编码中过渡帧对合成语音的影响[J].应用声学,2016,35(1):77?83.

XIAO Dong, MO Fuyuan, CHEN Geng, et al. Effects of transition frame on synthesized speech in low bit rate speech coding [J]. Journal of applied acoustics, 2016, 35(1): 77?83.

[2] 李晓明.语音与音频信号的通用编码方法研究[D].北京:北京工业大学,2014.

LI Xiaoming. Research on universal coding method for speech and audio signals [D]. Beijing: Beijing University of Technology, 2014.

[3] 梁冬蕾.音频语音联合编码算法研究[D].西安:西安电子科技大学,2010.

LIANG Donglei. Research on joint coding algorithm for audio speech [D]. Xian: Xidian University, 2010.

[4] 钱海军.基于BP神经网络的图像压缩的Matlab实现[J].电脑开发与应用,2011,24(12):77?79.

QIAN Haijun. Image compression based on neural network using Matlab [J]. Computer development & applications, 2011, 24(12): 77?79.

[5] 王龙,杜敦伟,白艳萍.SOM网络在雷达目标识别中的应用[J].科技视界,2015(16):52?53.

WANG Long, DU Dunwei, BAI Yanping. Application of SOM network in radar target recognition [J]. Science & technology vision, 2015(16): 52?53.

[6] 杨晨,闫薇.利用SOM网络模型进行聚类研究[J].网络安全技术与应用,2014(2):44?45.

YANG Chen, YAN Wei. Research on the clustering by using SOM network model [J]. Network security technology & application, 2014(2): 44?45.

[7] 邹瑜,帅仁俊.基于改进的SOM神经网络的医学图像分割算法[J].计算机工程与设计,2016,37(9):2533?2537.

ZOU Yu, SHUAI Renjun. Improved segmentation algorithm of medical images based on SOM neural network [J]. Computer engineering and design, 2016, 37(9): 2533?2537.

[8] 杨超,贺一君,任建存,等.码本均衡矢量编码算法[J].现代电子技术,2016,39(13):38?40.

YANG Chao, HE Yijun, REN Jiancun, et al. Codebook equilibrium algorithm for vector coding [J]. Modern electronics technique, 2016, 39(13): 38?40.

[9] 杨超,董世锟.矢量量化图像压缩方法[J].海军航空工程学院学报,2011,26(1):11?14.

YANG Chao, DONG Shikun. Image compression method based on vector quantization [J]. Journal of Naval Aeronautical and Astronautical University, 2011, 26(1): 11?14.

[10] MAKHOUL J, ROUCOS S, GISH H. Vector quantization in speech coding [J]. Proceeding of the IEEE, 1985, 73(11): 1551?1588.

[11] 杨超,刘云飞,徐向旭,等.基于预测编码和矢量编码的语音信号编码算法[J].现代电子技术,2018,41(24):128?131.

YANG Chao, LIU Yunfei, XU Xiangxu, et al. Speech signal coding algorithm based on predictive coding and vector coding [J]. Modern electronics technique, 2018, 41(24): 128?131.