CN103093757B - 一种窄带码流转换为宽带码流的转换方法 - Google Patents

一种窄带码流转换为宽带码流的转换方法 Download PDF

Info

Publication number
CN103093757B
CN103093757B CN201310033941.0A CN201310033941A CN103093757B CN 103093757 B CN103093757 B CN 103093757B CN 201310033941 A CN201310033941 A CN 201310033941A CN 103093757 B CN103093757 B CN 103093757B
Authority
CN
China
Prior art keywords
unit
env
code stream
centerdot
vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201310033941.0A
Other languages
English (en)
Other versions
CN103093757A (zh
Inventor
陈喆
殷福亮
李文月
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dalian University of Technology
Original Assignee
Dalian University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dalian University of Technology filed Critical Dalian University of Technology
Priority to CN201310033941.0A priority Critical patent/CN103093757B/zh
Publication of CN103093757A publication Critical patent/CN103093757A/zh
Application granted granted Critical
Publication of CN103093757B publication Critical patent/CN103093757B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种窄带码流转换为宽带码流的转换方法,所述的装置包括扩展单元和训练单元,所述的扩展单元包括窄带码流分离单元、窄带码流解析单元、窄带能量计算单元、码书映射单元、函数映射单元、高频时域包络及频域包络编码单元、高频能量编码单元、码流合成单元以及高频能量解码单元。所述的方法包括以下步骤:窄带码流解析;码书映射;窄带能量计算;函数映射;编码和码流合成。本发明第一次实现了将G.729编码得到的窄带码流扩展成可以作为G.729.1解码器输入的宽带码流,可以直接将现有电话通信网络传来的窄带码流直接通过G.729.1解码输出得到宽带语音,实现了宽带终端对窄带终端的兼容。

Description

一种窄带码流转换为宽带码流的转换方法
技术领域
本发明涉及一种通信技术,特别是一种窄带码流转换为宽带码流的转换方法。
背景技术
语言是人们互相交流的主要载体,语音是语言的声学表现,故语音通信一直是通信技术研究的重要组成部分。早期通信网络从无到有的建设过程中,由于技术、成本、系统复杂度等诸多原因,所支持的语音带宽大多设计成刚好能满足基本的通信要求。例如:公用电话网(PSTN)有效频率范围仅是0.3~3.4KHz。GSM数字蜂窝电话有效带宽不超过4KHz。普通调幅广播有效带宽不超过5KHz。在提高通信质量的研究过程中人们发现,较窄的带宽已成为语音品质提升的一个主要瓶颈。尽管有一些宽带音频编码标准可以直接利用,但从尽可能降低编码速率、减少音质损失等方面考虑,主要针对语音的宽带(0.05~7KHz)语音编码研究仍然是热点。从国际电信联盟ITU、第三代合作伙伴计划3GPP等标准化组织近年来不断推出新的宽带语音编码标准上,就不难看到这一点。但这些宽带语音编码标准对码流格式、编码速率等改变很大,没有考虑对既有通信网络及协议的兼容,因此支持这些编码标准的终端设备在现有通信网络条件下,无法获得期望的宽带性能。换句话说,只有在发送终端、接收终端和通信网络均支持宽带语音传输标准的情况下,才能获得宽带的语音品质。通信网络的升级是一个复杂、漫长、渐进的过程,如何尽早在现有网络传输条件下获得宽带语音的品质就成为一个亟待解决的现实问题。人工语音带宽扩展方式无疑是此问题的一个有效的解决办法。所谓的人工语音带宽扩展是仅仅利用窄带语音的信息来重建宽带语音的过程。
随着处理器速度的提高和宽带语音编码技术的进步,从1980年代末和1990年代初期开始人们开始研究带宽扩展方法。下面结合几篇中国专利,对现有技术中的带宽扩展技术进行简要介绍。现有技术中提出了多个应用于带宽扩展技术及改进现有技术的方案:
1、在申请于2002年10月30日、公开于2005年3月2日、公开号为CN1589469A的专利中提出:一种基于频谱折叠和噪声整形技术的带宽扩展方案。该方案先对窄带音频信号的至少一部分进行频谱折叠产生频谱折叠后的音频信号,在对频谱折叠后的音频信号至少一部分进行噪声整形产生整形后的噪声信号,最后通过合并器将整形后的噪声信号和频谱折叠后的音频信号合并为宽带信号。本方案的特征在于通过将整形后的噪声信号与频谱折叠后的信号合并可以屏蔽由频谱折叠引入的金属声音。
2、在申请于2006年9月8日、公开于2008年3月12日、公开号为CN101140759A的专利中,申请人提出了一种音频或语音信号的带宽扩展方案。该方案先求模拟语音或音频信号中的高频信号分量的频谱包络,再在频域空间将频谱包络与高频信号分量对应的低频信号分量进行合成,得到重建的高频信号分量,将频域的高频信号变换到时域空间的高频信号。
3、在申请于2009年7月31日、公开于2011年3月23日、公开号为CN1601990253A的专利中,申请人公开了一种带宽扩展方法及其装置。在该方案中先将一段时域信号通过预处理分为高频部分和低频部分,并变换到频域,计算得到带宽扩展所需参数,进而实现带宽扩展。
上述方案都需要将传输的窄带码流完全解码后再进行带宽扩展,且后两项技术还涉及到了时频变换,所以这些方案的计算量和系统时延都比较大,使处理成本上升、音质下降,甚至在媒体网关等密集处理系统完全无法应用。
发明内容
为解决现有技术存在的上述问题,本发明要设计一种既可以提高窄带语音通信质量又可以降低算法运算量和系统时延的窄带码流转换为宽带码流的转换装置及转换方法。
为了实现上述目的,本发明的技术方案如下:
一种窄带码流转换为宽带码流的装置的转换方法,在进行窄带码流到宽带码流的在线转换之前,对于工作语种需要且仅需要一次“离线”建立转换时所需要的映射关系,即进行窄带码流转换成宽带码流时所需转换关系的训练;在完成训练后再进行窄带码流转换成宽带码流,具体包括以下步骤:
A、窄带码流解析
A1、窄带码流分离
窄带码流分离单元将接收到的窄带码流前18bit分离出来,即为L0、L1、L2、L3,其中第1bit是L0,第2bit到第8bit是L1,第9bit到第13bit是L2,第14bit到第18bit是L3。第一层的最后14bit即为GA1、GA2、GB1、GB2,其中第67bit到第69bit是GA1,第70bit到第72bit是GA2,第73bit到第76bit是GB1,第77bit到第80bit是GB2;
A2、窄带LSP重建
LSP重建单元接收窄带码流分离单元分离出的L0、L1、L2、L3,并通过码书搜索得到窄带的LSP,具体实现步骤如下:
A21、LSP量化系数重建
LSP量化系数重建单元根据L0、L1、L2、L3解析出LSP的量化输出具体实现如下:
l ^ i = L 1 i ( L 1 ) + L 2 i ( L 2 ) i = 1 , · · · , 5 L 1 i ( L 1 ) + L 3 i - 5 ( L 3 ) i = 6 , · · · , 10 - - - ( 1 )
其中L1是10维的2bit码书,L2、L3是5维的5bit码书;
A22、LSP量化系数重置
LSP量化系数重置单元根据LSP量化系数重建单元输出的LSP量化输出,完成LSP量化系数的重置,具体实现如下:
式(1)中的循环变量i取值范围从2到10,每次增加1。每次循环中执行:若满足 l ^ i - 1 > l ^ i - J 条件,则执行 l ^ i - 1 = ( l ^ i + l ^ i - 1 - J ) / 2 , l ^ i = ( l ^ i + l ^ i - 1 + J ) / 2 操作。
LSP量化系数重置单元共执行上述循环两次,其中第一次循环时令J=0.0012,第二次循环时令J=0.0006;
A23、当前帧LSP量化系数重建
当前帧LSP量化系数重建单元根据LSP量化系数内插单元输出的内插后的LSP系数,重建出当前m帧的LSP量化系数qi m,具体实现如下:
q ^ i m = ( 1 - Σ n = 1 4 p ^ i , n ) l ^ i m + Σ n = 1 4 p ^ i , n l ^ i m - n i = 1 , · · · , 10 - - - ( 2 )
其中,当m<0时 为滑动平均预测器的系数,可以由L0码书搜索得到。
A24、当前帧LSP系数滤波
当前帧LSP系数滤波单元根据当前帧LSP量化系数重建单元输出的当前帧的LSP量化系数滤波操作,具体实现如下:
A241、按照i的升序排列
A242、如果 q ^ i < 0.005 , q ^ i = 0.005 .
A243、如果 q i + 1 ^ - q i ^ - 0.0391 < 0 , q i + 1 ^ = q i ^ + 0.0391 , i=1,…,9。
A244、如果 q 10 ^ > 3.135 , q 10 ^ = 3.135 ;
A3、反射系数重建
A31、线性预测系数重建
LSP到线性预测系数转换单元根据谱包络重建单元输出的当前帧的LSP系数,完成线性预测系数的重建工作;
A311、不同于A22循环变量的循环变量i取值范围从1到5,每次增加1。
每次变量i循环时
①f1(i)=-2q2i-1f1(i-1)+2f1(i-2)。
②循环变量j取值范围从i-1到1,每次循环变量j循环时,执行f1 [i]=f1 [i-1](j)-2q2i-1f1 [i-1](j-1)+f1 [i-1](j-2)操作。
其中,f1(0)=1,f1(-1)=0。将q2i-1替换成q2i即可得到f2(i)。
A312、 f 1 ` = f 1 ( i ) + f 1 ( i - 1 ) i = 1 , . . . , 5 f 2 ` = f 2 ( i ) - f 2 ( i - 1 ) i = 1 , . . . , 5 - - - ( 3 )
A313、 a i = 05 f 1 ` ( i ) + 0.5 f 2 ` ( i ) i = 1 , . . . , 5 0.5 f 1 ` ( 11 - i ) - 0.5 f 2 ` ( 11 - i ) i = 6 , . . . , 10 - - - ( 4 )
A32、反射系数重建
线性预测系数到反射系数转换单元根据LSP转换成线性预测系数单元输出的线性预测系数ai,完成反射系数ki的重建,具体实现如下:
A321、 a m ( m ) = - k m ;
A322、 a m - 1 ( i ) = [ a m i + k m a m ( m - i ) ] / ( 1 - k i ) ;
其中,m=10,9,…,1,i=1,2,…,m-1,
A4、残差能量计算
A41、自适应码书增益解析
自适应码书增益解析单元根据宽带码流分离单元分离出的GA1,GB1,解析出固定码书增益,具体实现如下:
g ^ p = yA 1 ( GA 1 ) + yB 1 ( GB 1 ) - - - ( 5 )
A42、固定码书增益解析
固定码书增益解析单元根据宽带码流分离单元分离出的GA2,GB2,解析出固定码书增益,具体实现如下:
g ^ c = g ` c ^ ( yA 2 ( GA 2 ) + yB 2 ( GB 2 ) ) - - - ( 6 )
其中是预测的固定码书增益,yA1和yA2是3bit、2维的码书,yB1和yB2是4bit、2维的码书;
A43、残差能量计算
残差能量计算单元根据自适应码书增益解析单元输出的自适应码书增益和固定码书增益解析单元输出的固定码书增益计算第i帧的残差能量Ei,具体实现如下:
E i = ( g p ^ ) 2 + ( g ^ c ) 2 - - - ( 7 )
B、码书映射
码书映射单元将每一窄带语音帧LSP扩展到高频语音帧时域包络及频域包络,具体方法如下:
码书映射单元将窄带语音码流解码得到的窄带语音帧LSP进行低频码书搜索,得到其码字所在的行号,并在高频码书中输出此行的数据作为对应的高频时域包络及频域包络。
所述的码字指码书的一行。所述的码书是将每一语音帧的k个特征参数做为一个1×k维矢量,将一段语音的多个语音帧的特征矢量分成n类并求每一类的1×k维的质心矢量,n个质心矢量按行排列即得到该段语音的对应的码书,每个质心矢量即为一个码字。所述的码书搜索是将窄带码流解码得到的窄带语音帧谱包络数据作为输入矢量与码书中的每个码字求差的平方,找出与输入向量误差最小的码字,用此码字代替输入向量并输出码字所在行即索引号。
C、窄带能量计算
窄带能量计算单元根据窄带码流解析单元得到的反射系数ki,i=1,2,…,10以及第i帧的残差能量Ei计算第i帧的窄带能量具体实现如下:
E x i = E i &Pi; i = 1 10 ( 1 - k i 2 ) - - - ( 8 )
D、函数映射
函数映射单元将窄带能量计算单元计算得的窄带语音的能量,作为映射函数的输入,所得到的函数值即为所对应的高频部分能量。
E、编码
E1、高频能量编码
高频能量编码单元完成函数映射单元映射出的高频能量MT的编码,具体为:在对数域以3dB为步长对MT实现5bit量化,得到编码后的高频能量码流。
E2、高频包络编码
E21、高频能量解码
高频能量解码单元将高频能量编码单元输出的高频能量码流解码,得到编码前量化后的高频能量
E22、时域包络去直流分量
时域包络去直流分量单元利用高频能量解码单元输出的高频能量完成高频时域包络的去直流分量工作,具体实现如下:
T env M ( i ) = T env ( i ) - M ^ T , i = 0 , &CenterDot; &CenterDot; &CenterDot; , 15 - - - ( 9 )
其中,Tenv(i)为去直流分量前的时域包络,为去直流分量后的时域包络。
E23、频域包络去直流分量
频域包络去直流分量单元利用高频能量解码单元输出的高频能量高频能量完成高频频域包络的去直流分量工作,具体实现如下:
F env M ( i ) = F env ( i ) - M ^ T , i = 0 , &CenterDot; &CenterDot; &CenterDot; , 11 - - - ( 10 )
其中,Fenv(i)为去直流分量前的频域包络,为去直流分量后的频域包络。
E24、时域包络2分裂
时域包络2分裂单元将去直流分量后的时域包络分裂成两个8维的矢量,具体实现如下:
T env , 1 = ( T env M ( 0 ) , T env M ( 1 ) , . . . , T env M ( 7 ) ) T env , 2 = ( T env M ( 8 ) , T env M ( 9 ) , . . . , T env M ( 15 ) ) - - - ( 11 )
E25、频域包络3分裂
频域包络3分裂单元将去直流分量后的频域包络分裂成三个4维的矢量,具体实现如下:
F env , 1 = ( F env M ( 0 ) , F env M ( 1 ) , F env M ( 2 ) , F env M ( 3 ) ) F env , 2 = ( F env M ( 4 ) , F env M ( 5 ) , F env M ( 6 ) , F env M ( 7 ) ) F env , 3 = ( F env M ( 8 ) , F env M ( 9 ) , F env M ( 10 ) , F env M ( 11 ) ) - - - ( 12 )
E26、时域包络编码单元
时域包络编码单元将时域谱包络2分裂单元的输出的两个8维矢量都用7bit进行量化,得到编码后时域包络码流。
E27、频域包络编码单元
频域包络编码单元将频域包络3分裂单元的输出的Fenv,1,Fenv,3都用5bit进行量化,Fenv,3用4bit进行量化,得到编码后频域包络码流。
F、码流合成
码流合成单元将已有的窄带码流和编码单元编码所得到的高频码流按照G.729.1的码流格式填充到码流的Layer3合成宽带码流。
本发明所述的窄带码流转换成宽带码流时所需转换关系的训练方法,包括以下步骤:
G1、码书映射关系的训练
映射码书训练单元在扩展单元工作之前先对一帧数为LEN、时长为180分钟的宽带语音码流样本经宽带码流解析单元部分解码得到低频LSP和对应的高频时域包络以及频域包络,然后经低频LSP和高频时域包络及频域包络矢量组合单元、矢量分类单元以及码书生成单元生成码书映射单元所需要的两个一一对应的低频码书和高频码书。
G11、宽带码流分离
宽带码流分离单元将G.729.1的宽带码流每20毫秒帧中两个10毫秒帧第一层的前18bit分离出来即为L0、L1、L2、L3,其中第1bit是L0,第2bit到第8bit是L1,第9bit到第13bit是L2,第14bit到第18是L3。第一层的最后14bit即为GA1、GA2、GB1、GB2,其中第67bit到第69bit是GA1,第70bit到第72bit是GA2,第73bit到第76bit是GB1,第77bit到第80bit是GB2。每20ms帧第三层的前5bit分离出来即为MU,第6bit到第12bit即为T1,第13bit到第18bit即为T2,第19bit到第23bit即为F1,第24bit到第28bit即为F2,第29bit到第32bit即为F3;
G12、低频码流解析
低频码流解析单元对宽带码流分离单元分离出的低频码流进行解析,解析方法同步骤A;
G13、高频码流解析
G131、高频能量解析
高频能量解析单元将宽带码流分离单元分离出的MU码字解码得到高频能量
G132、高频时域及频域包络解析
高频时域包络及频域包络解析单元接收宽带码流分离单元分离出的高频谱包络码字T1、T2、F1、F2、F3,并到相应的码书中查找相应的矢量其中
T ^ env , 1 M = ( T ^ env M ( 0 ) , T ^ env M ( 1 ) , &CenterDot; &CenterDot; &CenterDot; , T ^ env M ( 7 ) )
T ^ env , 1 M = ( T ^ env M ( 8 ) , T ^ env M ( 9 ) , &CenterDot; &CenterDot; &CenterDot; , T ^ env M ( 15 ) )
F ^ env , 1 M = ( F ^ env M ( 0 ) , F ^ env M ( 1 ) , F ^ env M ( 2 ) , F ^ env M ( 3 ) )
F ^ env M = ( F ^ env M ( 4 ) , F ^ env M ( 5 ) , F ^ env M ( 6 ) , F ^ env M ( 7 ) )
F ^ env , 3 M = ( F ^ env M ( 8 ) , F ^ env M ( 9 ) , F ^ env M ( 10 ) , F ^ env M ( 11 ) )
并根据高频能量解析单元解析得到高频能量对高频时域包络及频域包络码流进行解码,得到解码后的高频时域包络(i=0,1,…,15)和频域包络(j=0,1,…,11),具体实现步骤如下:
T ^ env ( i ) = T ^ env M ( i ) + M ^ T ; ( i = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 15 ) - - - ( 13 )
F ^ env ( j ) = F ^ env M + M ^ T ; ( j = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 11 ) - - - ( 14 )
G14、低频LSP和高频时及频域包络矢量组合
低频LSP和高频时及频域包络矢量组合单元分别将宽带码流解析单元解析出的每一语音帧的10维LSP、16维时域包络以及12维的频域包络 F ^ env ( j ) ( j = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 11 ) 按照先是10维LSP,再是16维时域包络 T ^ env ( i ) ( i = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 15 ) , 最后是12维的频域包络的顺序组成一个38维的矢量;
G15、矢量分类
矢量分类单元采用动态聚类的方法将低频LSP和高频时域包络及频域包络矢量组合单元的输出的总数为LEN个的38维矢量,以10维的低频LSP作为聚类对象进行分类,得到矢量分类的结果。
G16、码书生成
码书生成单元分别利用算术求平均的方法和加权求平均的方法求取前10维LSP的质心矢量以及后28维高频时域包络及频域包络的质心矢量,具体实现如下:
G161、低频码书生成
低频码书生成单元利用算术求平均的方法,分别计算矢量分类结果中每一类的前10维矢量LSP的均值,所求得的结果即为该类质心矢量,将每一类的质心矢量按行排列即得到低频码书。
G162、高频码书生成
高频码书生成单元利用加权求平均的方法,计算矢量分类单元输出的分类结果中每一类的后28维时域包络及频域包络质心矢量。先是利用算术求平均的方法分别求出每一类所有矢量的均值作为该类的初始质心矢量,然后求出每一个矢量与所在类质心矢量的距离,再用加权求质心的方法求出新质心,判断初始质心的1范数与新质心的1范数相对差的绝对值是否满足门限要求,若不满足则令新质心为初始质心,再用相同加权求质心的算法求出新质心,依次迭代直到二者1范数相对差的绝对值满足门限要求时退出迭代,并将此质心作为此类的质心。将所有类的质心矢量按行排列得到与低频码书一一对应的高频码书。具体实现方法如下:
G1621、初始质心矢量计算
初始质心矢量计算单元先利用简单算术求平均的方法,计算矢量分类单元输出的分类结果中每一类的后28维高频时及频域包络初始质心,计算公式如下:
aver 0 [ ind [ j ] ] [ k ] = 1 n &Sigma; j = 0 n x [ j ] [ k ] , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - ( 15 )
在此计算公式中,n为某一类中的矢量数目,x[j][k]表示第j个高频时域包络及频域包络矢量,ind[j]表示矢量x[j][k]所在的类,aver0[ind[j]][k]表示第ind[j]类的初始质心矢量。
G1622、矢量与其所在类质心矢量距离的计算
矢量与其所在类质心矢量距离的计算单元分别求出每一矢量与所在类质心矢量的距离,计算公式如下:
dist [ j ] = &Sigma; k = 0 M ( x [ j ] [ k ] - aver 0 [ ind [ j ] ] [ k ] ) 2 , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - ( 16 )
在此计算公式中dist[j]表示x[j][k]与所在类质心矢量的距离。
G1623、新质心矢量计算
新质心矢量计算单元用加权求平均的方法求出新质心矢量,计算公式如下:
w [ i ] = &Sigma; ind [ j ] = i 1 dist [ j ] - - - ( 17 )
aver [ i ] [ k ] = &Sigma; k = 0 M x [ j ] [ k ] w [ i ] &times; 1 dist [ j ] , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - ( 18 )
在该单元中w[i]表示该类中所用矢量与质心矢量距离倒数的和。aver[i][k]表示第i类的新质心矢量。
G1624、新质心和初始质心矢量1范数计算
新质心和初始质心矢量1范数计算单元计算新质心矢量和初始质心矢量之间的1范数,计算公式如下:
sum 0 = &Sigma; k = 0 M | aver 0 [ i ] [ k ] | sum = &Sigma; k = 0 M | aver [ i ] [ k ] | - - - ( 19 )
sum0和sum分别表示初始质心矢量和新质心矢量的1范数。
G1625、判断
判断单元判断初始质心的1范数与新质心的1范数相对差的绝对值是否满足门限要求,计算公式如下:
| sum 0 - sum | sum &le; 10 - 3 - - - ( 20 )
当门限要求不满足时,令aver0[i][k]=aver[i][k],并重复步骤G1622-G1625,直到所有分类的质心矢量都满足门限要求时,不再重复,此时的质心矢量即为分类的质心矢量,这些质心矢量组成高频码书。
G2、能量映射函数关系的训练
能量映射函数训练单元接收低频码流解析单元输出的第i语音帧的低频能量和高频码流解析单元输出的高频能量利用最小二乘法拟合出总数为LEN帧的高低频能量之间的函数关系具体实现步骤如下:
c = ( 1 LEN &Sigma; i = 0 LEN - 1 E x i M T i ) - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) ( 1 LEN &Sigma; i = 0 LEN - 1 M T i ) 1 LEN &Sigma; i = 0 LEN ( E x i ) 2 - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) 2 - - - ( 21 )
d = ( 1 LEN &Sigma; i = 0 LEN - 1 ( E x i ) 2 ) - ( 1 LEN &Sigma; i = 0 LEN - 1 M T i ) ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) ( 1 LEN &Sigma; i = 0 LEN E x i M T i ) 1 LEN &Sigma; i = 0 LEN ( E x i ) 2 - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) 2 - - - ( 22 ) .
与现有技术相比,本发明具有以下有益效果:
1、本发明第一次实现了将G.729编码得到的窄带码流扩展成可以作为G.729.1解码器输入的宽带码流。在现实应用中则体现在:经过本发明可以直接将现有电话通信网络传来的窄带码流直接通过G.729.1解码输出得到宽带语音即不需要先将窄带码流解码得到窄带语音再对语音进行扩展,实现了宽带终端对窄带终端的兼容。
2、本发明是在宽带接收端采用人工扩展窄带语音码流,仅利用窄带语音的信息来重建宽带语音,不需要发送端和网络具备宽带信号通信的能力。本发明在不改变既有电话网络基础上显著提高了宽带终端接收到的窄带语音的质量和可懂性,宽带码流解码后可以得到宽带语音,该语音不再像窄带码流解码后的窄带语音那样“闷闷的”——其自然度和可懂度都提高了,使语音听起来更加自然,满足了某些对语音质量要求较高场合的要求。
3、本发明对宽带码流的恢复是通过恢复时域包络、频域包络和能量实现的,而不是采用现有技术装置通过恢复谱包络和激励信号实现的,因为人工激励与真实激励之间相关性很弱,彼此匹配不好,所以现有技术合成的语音噪声感强烈,尤其是在浊音段。而本发明输出的宽带码流经过普通G.729.1解码器解码后,语音高频噪声感不明显,更接近原始宽带语音的听觉效果。
4、本发明不需要对窄带码流完全解码、然后完全编码得到宽带码流,只需部分解码,即只需解码得到窄带LSP、反射系数以及残差能量,只需编码由本发明扩展得到的高频参数,即直接编码高频能量、高频时域包络和高频频域包络等信息。故本发明节省了窄带解码和窄带编码的运算量和算法时延,运算量为先完全窄带解码、后完全宽带编码方式的30%,时间延迟降低了28.9375毫秒。
5、本发明对高频时域包络和频域包络求分类中心时,利用了迭代加权求平均的方法,此方法可以有效减小一些偏离中心很远的少数点对质心的影响,使得分类方法更准确。
附图说明
本发明共有附图24张,其中:
图1是G.729比特分配图。
图2是G.729.1码流格式。
图3是G.729.1Layer3比特分配图。
图4是窄带码流转换为宽带码流的转换装置示意图。
图5是扩展单元示意图。
图6是窄带码流解析单元示意图。
图7是LSP重建单元示意图。
图8是反射系数重建单元示意图。
图9是残差能量重建单元示意图。
图10是高频时域包络及频域包络编码单元示意图。
图11是训练单元示意图。
图12是宽带码流解析单元示意图。
图13是高频码流重建模块示意图。
图14是映射码书训练单元示意图。
图15是码书生成单元示意图。
图16是高频码书生成单元示意图。
图17是窄带码流解码后的语音语谱图示例(成年男声)。
图18是本发明转换的宽带码流解码后的语音语谱图示例(成年男声)。
图19是窄带码流解码后的语音语谱图示例(成年女声)。
图20是本发明转换的宽带码流解码后的语音语谱图示例(成年女声)。
图21是窄带码流解码后的语音语谱图示例(男童声)。
图22是本发明转换的宽带码流解码后的语音语谱图示例(男童声)。
图23是窄带码流解码后的语音语谱图示例(女童声)。
图24是本发明转换的宽带码流解码后的语音语谱图示例(女童声)。
图中:1、扩展单元,2、训练单元,11、窄带码流分离单元,12、窄带码流解析单元,13、窄带能量计算单元,14、码书映射单元,15、函数映射单元,16、高频时域包络及频域包络编码单元,17、高频能量编码单元,18、码流合成单元,19、高频能量解码单元,21、宽带码流分离单元,22、宽带码流解析单元,23、映射码书训练单元,24、能量映射函数训练单元,121、LSP重建单元,122、反射系数重建单元,123、残差能量重建单元,161、时域包络去直流分量单元,162、频域包络去直流分量单元,163、时域包络2分裂单元,164、频域包络3分裂单元,165、时域包络编码单元,166、频域包络编码单元,221、低频码流解析单元,222、高频码流解析单元,1211、LSP量化系数重建单元,1212、LSP量化系数重置单元,1213、当前帧LSP量化系数重建单元,1214、当前帧LSP量化系数滤波单元,1221、LSP转换成线性预测系数单元,1222、线性预测系数到反射系数转换单元,1231、固定码书增益解析单元,1232、自适应码书增益解析单元,1233、残差能量计算单元,2221、高频时域包络及频域包络解析单元,2222、高频能量解析单元,231、低频LSP和高频时域包络及频域包络矢量组合单元,232、矢量分类单元,233、码书生成单元22331、低频码书生成单元,2332、高频码书生成单元,23321、初始质心矢量计算/更新单元,23322、矢量与其所在类质心矢量距离的计算单元,23323、新质心矢量计算单元,23324、新质心矢量和和初始质心矢量1范数计算单元,23325、判断单元。
具体实施方式
下面结合附图对本发明进行进一步地描述。如图1-16所示,一种窄带码流转换为宽带码流的转换装置,包括扩展单元1和训练单元2,所述的训练单元2为扩展单元1提供扩展工作所需的映射关系,只在扩展单元1工作前“离线”地运行一次;
所述的扩展单元1包括窄带码流分离单元11、窄带码流解析单元12、窄带能量计算单元13、码书映射单元14、函数映射单元15、高频时域包络及频域包络编码单元16、高频能量编码单元17、码流合成单元18以及高频能量解码单元19,所述的窄带码流分离单元11的输入端输入G.729窄带码流,输出端与窄带码流解析单元12的输入端相连;所述的窄带码流解析单元12的输入端与窄带码流分离单元11的输出端相连、其输出端分别与码书映射单元14和窄带能量计算单元13连接;所述的码书映射单元14的输入端与窄带码流解析单元12的输出端相连并接收训练单元2提供的映射码书,其输出端与高频时域包络及频域包络编码的输入端相连;所述的窄带能量计算单元13经函数映射单元15和高频能量编码单元17与码流合成单元18连接;所述的函数映射单元15的输入端与窄带能量计算单元13的输出端相连并接受训练单元2提供的映射函数;所述的高频时域包络及频域包络编码单元16的一端与码书映射单元14连接、其另一端与码流合成单元18连接;所述的高频能量编码单元17的输入端与函数映射单元15的输出端相连,输出端分别与码流合成单元18以及高频能量解码单元19的输入端相连;所述的高频能量解码单元19的输出端与高频时域包络及频域包络编码单元16相连;所述的码流合成单元18的输出端输出G.729.1宽带码流;
所述的窄带码流解析单元12包括LSP重建单元121、反射系数重建单元122、残差能量重建单元123,所述的LSP重建单元121的输入端与窄带码流分离单元11的输出端相连、输出端与码书映射单元14输入端和反射系数重建单元122的输入端相连;所述的反射系数重建单元122的输出端与窄带能量计算单元13的输入端相连,所述的残差能量重建单元123的输入端与窄带码流分离单元11的输出端相连、其输出端与窄带能量计算单元13的输入端相连;所述的LSP为线谱对Linespectrumparis的简称;
所述的LSP重建单元121包括LSP量化系数重建单元1211、LSP量化系数重置单元1212、当前帧LSP量化系数重建单元1213和当前帧LSP量化系数滤波单元1214,所述的LSP量化系数重建单元1211的输入端与宽带码流分离单元21的输出端相连、其输出端与LSP量化系数重置单元1212的输入端相连;所述的LSP量化系数重置单元1212的输入端与LSP量化系数重建单元1211的输出端相连、其输出端与当前帧LSP量化系数重建单元1213的输入端相连;所述的当前帧LSP量化系数重建单元1213的输出端与当前帧LSP量化系数滤波单元1214的输入端相连;所述的当前帧LSP量化系数滤波单元1214的输出端与码书映射单元14的输入端和反射系数重建单元122的输入端相连;
所述的反射系数重建单元122包括LSP转换成线性预测系数单元1221、线性预测系数到反射系数转换单元1222;LSP转换成线性预测系数单元1221的输入端与LSP重建单元121的输出端相连,输出端与线性预测系数到反射系数转换单元1222的输入端相连;线性预测系数到反射系数转换单元1222的输入端与LSP转换成线性预测系数单元1221的输出端相连,输出端与窄带能量计算单元13相连;
所述的残差能量计算单元1233包括固定码书增益解析单元1231、自适应码书增益解析单元1232、残差能量计算单元1233;固定码书增益解析单元1231和自适应码书增益解析单元1232的输入端都与宽带码流分离单元21的输出端相连、其输出端都与残差能量计算单元1233的输入端相连;所述的残差能量计算单元1233的输出端与窄带能量计算单元13的输入端相连;
所述的高频时域包络及频域包络编码单元16包括时域包络去直流分量单元161、时域包络2分裂单元163、频域包络去直流分量单元162、频域包络3分裂单元164、时域包络编码单元165以及频域包络编码单元166;所述的时域包络去直流分量单元161和频域包络去直流分量单元162的输入端都与码书映射单元14相连、同时又都与高频能量解码单元19相连,其输出端分别与时域包络2分裂单元163和频域包络3分裂单元164的输入端相连;所述的时域包络2分裂单元163和频域包络3分裂单元164的输出端都与码流合成单元18相连;
所述的训练单元2包括宽带码流分离单元21、宽带码流解析单元22、映射码书训练单元23和能量映射函数训练单元24;所述的宽带码流分离单元21的输入端输入G.729.1宽带码流样本,其输出端与宽带码流解析单元22的输入端相连;所述的宽带码流解析单元22的输出端分别与映射码书训练单元23的输入端和能量映射函数训练单元24的输入端相连;所述的映射码书训练单元23为扩展单元1提供映射码书,能量映射函数训练单元24为扩展单元1提供映射函数;
所述的宽带码流解析单元22包括低频码流解析单元221和高频码流解析单元222,所述的低频码流解析单元221的输入端与宽带码流分离单元21的输出端相连,其输出端分别与映射码书训练单元23的输入端和能量映射函数训练单元24的输入端相连;所述的高频码流解析单元222的输入端与宽带码流分离单元21的输出端相连,其输出端分别与映射码书训练单元23的输入端和能量映射函数训练单元24的输入端相连;
所述的训练单元2的低频码流解析单元221的组成和连接方式同扩展单元1的窄带码流解析单元12;
所述的高频码流解析单元222包括高频时域包络及频域包络解析单元2221和高频能量解析单元2222,所述的高频时域包络及频域包络解析单元2221的输入端与宽带码流分离单元21的输出端和高频能量解析单元2222的输出端相连、其输出端与映射码书训练单元23的输入端相连;所述的高频能量解析单元2222的输入端与宽带码流分离单元21的输出端相连、其输出端分别与高频时域包络及频域包络解析单元2221的输入端和能量映射函数训练单元24的输入端相连;
所述的映射码书训练单元23包括低频LSP和高频时域包络及频域包络矢量组合单元231、矢量分类单元232以及码书生成单元233,所述的低频LSP和高频时域包络及频域包络矢量组合单元231的输入端与宽带码流解析单元22的输出端相连、其输出端与矢量分类单元232的输入端相连;所述的矢量分类单元232的输出端与码书生成单元233的输入端相连;所述的码书生成单元233的输出端输出映射码书;
所述的码书生成单元233包括低频码书生成单元2331和高频码书生成单元2332,所述的低频码书生成单元2331和高频码书生成单元2332的输入端都与矢量分类单元232相连,其输出端分别输出映射码书中低频码书和高频码书;
所述的高频码书生成单元2332,包括初始质心矢量计算/更新单元23321、矢量与其所在类质心矢量距离的计算单元23322、新质心矢量计算单元23323、新质心和初始质心矢量1范数计算单元23324和判断单元23325,所述的初始质心矢量计算/更新单元23321的输入端输入高频时、频域包络数据并与判断单元23325的输出端连接,其输出端分别连接矢量与其所在类质心矢量距离的计算单元23322的输入端以及新质心和初始质心矢量1范数计算单元23324的输入端,所述的矢量与其所在类质心矢量距离的计算单元23322的输出端与新质心矢量计算单元23323的输入端连接,所述的新质心矢量计算单元23323的输出端与新质心和初始质心矢量1范数计算单元23324连接,所述的判断单元23325的输入端与新质心和初始质心矢量1范数计算单元23324连接、其输出端输出高频码书并与初始质心矢量计算/更新单元23321连接。
一种窄带码流转换为宽带码流的装置的转换方法,在进行窄带码流到宽带码流的在线转换之前,对于工作语种需要且仅需要一次“离线”建立转换时所需要的映射关系,即进行窄带码流转换成宽带码流时所需转换关系的训练;在完成训练后再进行窄带码流转换成宽带码流,具体包括以下步骤:
A、窄带码流解析
A1、窄带码流分离
窄带码流分离单元11将接收到的窄带码流前18bit分离出来,即为L0、L1、L2、L3,其中第1bit是L0,第2bit到第8bit是L1,第9bit到第13bit是L2,第14bit到第18bit是L3;第一层的最后14bit即为GA1、GA2、GB1、GB2,其中第67bit到第69bit是GA1,第70bit到第72bit是GA2,第73bit到第76bit是GB1,第77bit到第80bit是GB2;
A2、窄带LSP重建
LSP重建单元121接收窄带码流分离单元11分离出的L0、L1、L2、L3,并通过码书搜索得到窄带的LSP,具体实现步骤如下:
A21、LSP量化系数重建
LSP量化系数重建单元1211根据L0、L1、L2、L3解析出LSP的量化输出具体实现如下:
l ^ i = L 1 i ( L 1 ) + L 2 i ( L 2 ) i = 1 , &CenterDot; &CenterDot; &CenterDot; , 5 L 1 i ( L 1 ) + L 3 i - 5 ( L 3 ) i = 6 , &CenterDot; &CenterDot; &CenterDot; , 10 - - - ( 1 )
其中L1是10维的2bit码书,L2、L3是5维的5bit码书;
A22、LSP量化系数重置
LSP量化系数重置单元1212根据LSP量化系数重建单元1211输出的LSP量化输出,完成LSP量化系数的重置,具体实现如下:
式1中的循环变量i取值范围从2到10,每次增加1;每次循环中执行:若满足 l ^ i - 1 > l ^ i - J 条件,则执行 l ^ i - 1 = ( l ^ i + l ^ i - 1 - J ) / 2 , l ^ i = ( l ^ i + l ^ i - 1 + J ) / 2 操作;
LSP量化系数重置单元1212共执行上述循环两次,其中第一次循环时令J=0.0012,第二次循环时令J=0.0006;
A23、当前帧LSP量化系数重建
当前帧LSP量化系数重建单元1213根据LSP量化系数内插单元输出的内插后的LSP系数,重建出当前m帧的LSP量化系数qi m,具体实现如下:
q ^ i m = ( 1 - &Sigma; n = 1 4 p ^ i , n ) l ^ i m + &Sigma; n = 1 4 p ^ i , n l ^ i m - n i = 1 , &CenterDot; &CenterDot; &CenterDot; , 10 - - - ( 2 )
其中,当m<0时 为滑动平均预测器的系数,可以由L0码书搜索得到;
A24、当前帧LSP系数滤波
当前帧LSP系数滤波单元根据当前帧LSP量化系数重建单元1213输出的当前帧的LSP量化系数滤波操作,具体实现如下:
A241、按照i的升序排列
A242、如果 q ^ i < 0.005 . q ^ i < 0.005 ;
A243、如果 q i + 1 ^ - q i ^ - 0.0391 < 0 , q i + 1 ^ = q i ^ + 0.0391 , i=1,…,9;
A244、如果 q 10 ^ > 3.135 , q 10 ^ = 3.135 ;
A3、反射系数重建
A31、线性预测系数重建
LSP到线性预测系数转换单元根据谱包络重建单元输出的当前帧的LSP系数,完成线性预测系数的重建工作;
A311、不同于A22循环变量的循环变量i取值范围从1到5,每次增加1;
每次变量i循环时
①f1(i)=-2q2i-1f1(i-1)+2f1(i-2);
②循环变量j取值范围从i-1到1,每次循环变量j循环时,执行f1 [i]=f1 [i-1](j)-2q2i-1f1 [i-1](j-1)+f1 [i-1](j-2)操作;
其中,f1(0)=1,f1(-1)=0;将q2i-1替换成q2i即可得到f2(i);
A312、 f 1 ` = f 1 ( i ) + f 1 ( i - 1 ) i = 1 , . . . , 5 f 2 ` = f 2 ( i ) - f 2 ( i - 1 ) i = 1 , . . . , 5 - - - ( 3 )
A313、 a i = 05 f 1 ` ( i ) + 0.5 f 2 ` ( i ) i = 1 , . . . , 5 0.5 f 1 ` ( 11 - i ) - 0.5 f 2 ` ( 11 - i ) i = 6 , . . . , 10 - - - ( 4 )
A32、反射系数重建
线性预测系数到反射系数转换单元1222根据LSP转换成线性预测系数单元1221输出的线性预测系数ai,完成反射系数ki的重建,具体实现如下:
A321、 a m ( m ) = - k m ;
A322、 a m ( i ) = a m - 1 ( i ) - k m a m - 1 ( i - 1 ) ;
其中,m=10,i=1,2,…,m-1,
A4、残差能量计算
A41、自适应码书增益解析
自适应码书增益解析单元1232根据宽带码流分离单元21分离出的GA1,GB1,解析出固定码书增益,具体实现如下:
g ^ p = yA 1 ( GA 1 ) + yB 1 ( GB 1 ) - - - ( 5 )
A42、固定码书增益解析
固定码书增益解析单元1231根据宽带码流分离单元21分离出的GA2,GB2,解析出固定码书增益,具体实现如下:
g ^ c = g ` c ^ ( yA 2 ( GA 2 ) + yB 2 ( GB 2 ) ) - - - ( 6 )
其中是预测的固定码书增益,yA1和yA2是3bit、2维的码书,yB1和yB2是4bit、2维的码书;
A43、残差能量计算
残差能量计算单元1233根据自适应码书增益解析单元1232输出的自适应码书增益和固定码书增益解析单元1231输出的固定码书增益计算第i帧的残差能量Ei,具体实现如下:
E i = ( g p ^ ) 2 + ( g ^ c ) 2 - - - ( 7 )
B、码书映射
码书映射单元14将每一窄带语音帧LSP扩展到高频语音帧时域包络及频域包络,具体方法如下:
码书映射单元14将窄带语音码流解码得到的窄带语音帧LSP进行低频码书搜索,得到其码字所在的行号,并在高频码书中输出此行的数据作为对应的高频时域包络及频域包络;
所述的码字指码书的一行;所述的码书是将每一语音帧的k个特征参数做为一个1×k维矢量,将一段语音的多个语音帧的特征矢量分成n类并求每一类的1×k维的质心矢量,n个质心矢量按行排列即得到该段语音的对应的码书,每个质心矢量即为一个码字;所述的码书搜索是将窄带码流解码得到的窄带语音帧谱包络数据作为输入矢量与码书中的每个码字求差的平方,找出与输入向量误差最小的码字,用此码字代替输入向量并输出码字所在行即索引号;
C、窄带能量计算
窄带能量计算单元13根据窄带码流解析单元12得到的反射系数ki,i=1,2,…,10以及第i帧的残差能量Ei计算第i帧的窄带能量具体实现如下:
E x i = E i &Pi; i = 1 10 ( 1 - k i 2 ) - - - ( 8 )
D、函数映射
函数映射单元15将窄带能量计算单元13计算得的窄带语音的能量,作为映射函数的输入,所得到的函数值即为所对应的高频部分能量;
E、编码
E1、高频能量编码
高频能量编码单元17完成函数映射单元15映射出的高频能量MT的编码,具体为:在对数域以3dB为步长对MT实现5bit量化,得到编码后的高频能量码流;
E2、高频包络编码
E21、高频能量解码
高频能量解码单元19将高频能量编码单元17输出的高频能量码流解码,得到编码前量化后的高频能量
E22、时域包络去直流分量
时域包络去直流分量单元161利用高频能量解码单元19输出的高频能量完成高频时域包络的去直流分量工作,具体实现如下:
T env M ( i ) = T env ( i ) - M ^ T , i = 0 , &CenterDot; &CenterDot; &CenterDot; , 15 - - - ( 9 )
其中,Tenv(i)为去直流分量前的时域包络,为去直流分量后的时域包络;
E23、频域包络去直流分量
频域包络去直流分量单元162利用高频能量解码单元19输出的高频能量高频能量完成高频频域包络的去直流分量工作,具体实现如下:
F env M ( i ) = F env ( i ) - M ^ T , i = 0 , &CenterDot; &CenterDot; &CenterDot; , 11 - - - ( 10 )
其中,Fenv(i)为去直流分量前的频域包络,为去直流分量后的频域包络;
E24、时域包络2分裂
时域包络2分裂单元163将去直流分量后的时域包络分裂成两个8维的矢量,具体实现如下:
T env , 1 = ( T env M ( 0 ) , T env M ( 1 ) , . . . , T env M ( 7 ) ) T env , 2 = ( T env M ( 8 ) , T env M ( 9 ) , . . . , T env M ( 15 ) ) - - - ( 11 )
E25、频域包络3分裂
频域包络3分裂单元164将去直流分量后的频域包络分裂成三个4维的矢量,具体实现如下:
F env , 1 = ( F env M ( 0 ) , F env M ( 1 ) , F env M ( 2 ) , F env M ( 3 ) ) F env , 2 = ( F env M ( 4 ) , F env M ( 5 ) , F env M ( 6 ) , F env M ( 7 ) ) F env , 3 = ( F env M ( 8 ) , F env M ( 9 ) , F env M ( 10 ) , F env M ( 11 ) ) - - - ( 12 )
E26、时域包络编码单元165
时域包络编码单元165将时域谱包络2分裂单元的输出的两个8维矢量都用7bit进行量化,得到编码后时域包络码流;
E27、频域包络编码单元166
频域包络编码单元166将频域包络3分裂单元164的输出的Fenv,1,Fenv,3都用5bit进行量化,Fenv,3用4bit进行量化,得到编码后频域包络码流;
F、码流合成
码流合成单元18将已有的窄带码流和编码单元编码所得到的高频码流按照G.729.1的码流格式填充到码流的Layer3合成宽带码流。
本发明所述的窄带码流转换成宽带码流时所需转换关系的训练方法,包括以下步骤:
G1、码书映射关系的训练
映射码书训练单元23在扩展单元1工作之前先对一帧数为LEN、时长为180分钟的宽带语音码流样本经宽带码流解析单元22部分解码得到低频LSP和对应的高频时域包络以及频域包络,然后经低频LSP和高频时域包络及频域包络矢量组合单元231、矢量分类单元232以及码书生成单元233生成码书映射单元14所需要的两个一一对应的低频码书和高频码书;
G11、宽带码流分离
宽带码流分离单元21将G.729.1的宽带码流每20毫秒帧中两个10毫秒帧第一层的前18bit分离出来即为L0、L1、L2、L3,其中第1bit是L0,第2bit到第8bit是L1,第9bit到第13bit是L2,第14bit到第18是L3;第一层的最后14bit即为GA1、GA2、GB1、GB2,其中第67bit到第69bit是GA1,第70bit到第72bit是GA2,第73bit到第76bit是GB1,第77bit到第80bit是GB2;每20ms帧第三层的前5bit分离出来即为MU,第6bit到第12bit即为T1,第13bit到第18bit即为T2,第19bit到第23bit即为F1,第24bit到第28bit即为F2,第29bit到第32bit即为F3;
G12、低频码流解析
低频码流解析单元221对宽带码流分离单元21分离出的低频码流进行解析,解析方法同步骤A;
G13、高频码流解析
G131、高频能量解析
高频能量解析单元2222将宽带码流分离单元21分离出的MU码字解码得到高频能量
G132、高频时域及频域包络解析
高频时域包络及频域包络解析单元2221接收宽带码流分离单元21分离出的高频谱包络码字T1、T2、F1、F2、F3,并到相应的码书中查找相应的矢量其中
T ^ env , 1 M = ( T ^ env M ( 0 ) , T ^ env M ( 1 ) , &CenterDot; &CenterDot; &CenterDot; , T ^ env M ( 7 ) )
T ^ env , 1 M = ( T ^ env M ( 8 ) , T ^ env M ( 9 ) , &CenterDot; &CenterDot; &CenterDot; , T ^ env M ( 15 ) )
F ^ env , 1 M = ( F ^ env M ( 0 ) , F ^ env M ( 1 ) , F ^ env M ( 2 ) , F ^ env M ( 3 ) )
F ^ env M = ( F ^ env M ( 4 ) , F ^ env M ( 5 ) , F ^ env M ( 6 ) , F ^ env M ( 7 ) )
F ^ env , 3 M = ( F ^ env M ( 8 ) , F ^ env M ( 9 ) , F ^ env M ( 10 ) , F ^ env M ( 11 ) )
并根据高频能量解析单元2222解析得到高频能量对高频时域包络及频域包络码流进行解码,得到解码后的高频时域包络(i=0,1,…,15)和频域包络(j=0,1,…,11),具体实现步骤如下:
T ^ env ( i ) = T ^ env M ( i ) + M ^ T ; ( i = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 15 ) - - - ( 13 )
F ^ env ( j ) = F ^ env M + M ^ T ; ( j = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 11 ) - - - ( 14 )
G14、低频LSP和高频时及频域包络矢量组合
低频LSP和高频时及频域包络矢量组合单元分别将宽带码流解析单元22解析出的每一语音帧的10维LSP、16维时域包络以及12维的频域包络 F ^ env ( j ) ( j = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 11 ) 按照先是10维LSP,再是16维时域包络 T ^ env ( i ) ( i = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 15 ) , 最后是12维的频域包络的顺序组成一个38维的矢量;
G15、矢量分类
矢量分类单元232采用动态聚类的方法将低频LSP和高频时域包络及频域包络矢量组合单元2231的输出的总数为LEN个的38维矢量,以10维的低频LSP作为聚类对象进行分类,得到矢量分类的结果;
G16、码书生成
码书生成单元233分别利用算术求平均的方法和加权求平均的方法求取前10维LSP的质心矢量以及后28维高频时域包络及频域包络的质心矢量,具体实现如下:
G161、低频码书生成
低频码书生成单元2331利用算术求平均的方法,分别计算矢量分类结果中每一类的前10维矢量LSP的均值,所求得的结果即为该类质心矢量,将每一类的质心矢量按行排列即得到低频码书;
G162、高频码书生成
高频码书生成单元2332利用加权求平均的方法,计算矢量分类单元232输出的分类结果中每一类的后28维时域包络及频域包络质心矢量;先是利用算术求平均的方法分别求出每一类所有矢量的均值作为该类的初始质心矢量,然后求出每一个矢量与所在类质心矢量的距离,再用加权求质心的方法求出新质心,判断初始质心的1范数与新质心的1范数相对差的绝对值是否满足门限要求,若不满足则令新质心为初始质心,再用相同加权求质心的算法求出新质心,依次迭代直到二者1范数相对差的绝对值满足门限要求时退出迭代,并将此质心作为此类的质心;将所有类的质心矢量按行排列得到与低频码书一一对应的高频码书;具体实现方法如下:
G1621、初始质心矢量计算
初始质心矢量计算单元先利用简单算术求平均的方法,计算矢量分类单元232输出的分类结果中每一类的后28维高频时及频域包络初始质心,计算公式如下:
aver 0 [ ind [ j ] ] [ k ] = 1 n &Sigma; j = 0 n x [ j ] [ k ] , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - ( 15 )
在此计算公式中,n为某一类中的矢量数目,x[j][k]表示第j个高频时域包络及频域包络矢量,ind[j]表示矢量x[j][k]所在的类,aver0[ind[j]][k]表示第ind[j]类的初始质心矢量;
G1622、矢量与其所在类质心矢量距离的计算
矢量与其所在类质心矢量距离的计算单元23322分别求出每一矢量与所在类质心矢量的距离,计算公式如下:
dist [ j ] = &Sigma; k = 0 M ( x [ j ] [ k ] - aver 0 [ ind [ j ] ] [ k ] ) 2 , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - ( 16 )
在此计算公式中dist[j]表示x[j][k]与所在类质心矢量的距离;
G1623、新质心矢量计算
新质心矢量计算单元23323用加权求平均的方法求出新质心矢量,计算公式如下:
w [ i ] = &Sigma; ind [ j ] = i 1 dist [ j ] - - - 17
aver [ i ] [ k ] = &Sigma; k = 0 M x [ j ] [ k ] w [ i ] &times; 1 dist [ j ] , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - 18
在该单元中w[i]表示该类中所用矢量与质心矢量距离倒数的和;aver[i][k]表示第i类的新质心矢量;
G1624、新质心和初始质心矢量1范数计算
新质心矢量和初始质心矢量1范数计算单元23324计算新质心矢量和初始质心矢量之间的1范数,计算公式如下:
sum 0 = &Sigma; k = 0 M | aver 0 [ i ] [ k ] | sum = &Sigma; k = 0 M | aver [ i ] [ k ] | - - - 19
sum0和sum分别表示初始质心矢量和新质心矢量的1范数;
G1625、判断
判断单元23325判断初始质心的1范数与新质心的1范数相对差的绝对值是否满足门限要求,计算公式如下:
| sum 0 - sum | sum &le; 10 - 3 - - - ( 20 )
当门限要求不满足时,令aver0[i][k]=aver[i][k],并重复步骤G1622-G1625,直到所有分类的质心矢量都满足门限要求时,不再重复,此时的质心矢量即为分类的质心矢量,这些质心矢量组成高频码书;
G2、能量映射函数关系的训练
能量映射函数训练单元24接收低频码流解析单元221输出的第i语音帧的低频能量和高频码流解析单元222输出的高频能量利用最小二乘法拟合出总数为LEN帧的高低频能量之间的函数关系具体实现步骤如下:
c = ( 1 LEN &Sigma; i = 0 LEN - 1 E x i M T i ) - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) ( 1 LEN &Sigma; i = 0 LEN - 1 M T i ) 1 LEN &Sigma; i = 0 LEN ( E x i ) 2 - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) 2 - - - ( 21 )
d = ( 1 LEN &Sigma; i = 0 LEN - 1 ( E x i ) 2 ) - ( 1 LEN &Sigma; i = 0 LEN - 1 M T i ) ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) ( 1 LEN &Sigma; i = 0 LEN E x i M T i ) 1 LEN &Sigma; i = 0 LEN ( E x i ) 2 - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) 2 - - - ( 22 ) .
本发明的测试结果如下:
为了验证本发明方法的有效性,我们进行了计算机仿真实验。在实验中,将扩展出的宽带码流经G.729.1解码后,得到宽带语音,然后对该语音进行客观和主观测试,其中客观测试采用谱失真测度和语谱图,主观测试采用国际上通用的平均意见分(MOS)的测量方法。
1、一种把窄带码流转换成宽带码流装置的客观测试
本发明用谱失真测度对本发明进行客观测试。谱失真测度的定义为
fac [ k ] = 4 N &Integral; &pi; 2 &pi; 20 l og 10 ( | A org k ( e j&omega; ) | A post k ( e j&omega; ) ) d&omega;
D HC = 1 k &Sigma; k = 1 K &Integral; &pi; 2 &pi; ( 20 log 10 | A org k ( e j&omega; ) | | A post k ( e j&omega; ) | - fac [ k ] ) 2 d&omega;
其中fac[k]是增益补偿因子,是原始宽带语音第K帧的包络,为窄带语音经2倍插值(补0)后的宽带语音或扩展得到的宽带语音的第k帧包络。在实验中,实验参数为:训练阶段所用的语音来自TIMIT语音数据库,宽带语音的时长为20s,采样率为16KHz。测试阶段所用的语音分别为时长为200s、采样率为8KHz的窄带语音和与其对应的时长为200s、采样率为16KHz的宽带语音。
对本发明方法扩展得到的宽带码流经G.729.1解码器解码后得到的语音和未经扩展的窄带码流经G.729解码后的语音,分别计算其谱失真测度,结果如表1、2所示。
表1语音谱失真测试结果1
表2语音谱失真测试结果2
从本发明语音谱失真测试结果可见,本发明扩展出的宽带码流解码后语音谱失真明显减小。
图17-24对不同语音分别绘出它的原始窄带语音的语谱图、本发明方法扩展的宽带语音的语谱图。
从四组语谱图中的本发明方法扩展的宽带语音的语谱图和原始窄带语音的语谱图可以看出,本发明恢复出来的宽带语音的高频部分明显增加。从语谱图可以看出,本发明能准确地恢复出窄带信号所对应的高频部分,从而实现了窄带码流到宽带码流的转换。
2、本发明效果的主观测试
本发明采用平均意见得分(MOS)方法进行主观测试。在测试过程中,邀请40位不同专业的人士,在对测试内容完全不知情的情况下,对两组来自TIMIT语音数据库时长为200s、采样率为8KHz的窄带语音和与其对应的扩展的时长为200s、采样率为16KHz的宽带语音进行测试。测试结果分别如表3、表4所示。
表3主观测试结果1
语音1 MOS得分
原始8KHz语音 3.02
本发明方法扩展的16KHz语音 3.95
表4主观测试结果2
语音2 MOS得分
原始8KHz语音 3.03
本发明方法扩展的16KHz语音 3.93
从本发明语音主观测试结果可见,本发明扩展出的宽带码流解码得到语音的MOS分与原始窄带码流解码得到的语音MOS分相比,明显提高了。可见该发明可以提高通信语音的质量。
本发明中矢量分类所用的聚类方法采用的是动态聚类中的C-均值算法。参考文献是:边肇祺,张学工等,《模式识别(第二版)》,清华大学出版社。

Claims (2)

1.一种窄带码流转换为宽带码流的转换方法,其特征在于:在进行窄带码流到宽带码流的在线转换之前,对于工作语种需要且仅需要一次“离线”建立转换时所需要的映射关系,即进行窄带码流转换成宽带码流时所需转换关系的训练;在完成训练后再进行窄带码流转换成宽带码流,具体包括以下步骤:
A、窄带码流解析
A1、窄带码流分离
窄带码流分离单元(11)将接收到的窄带码流前18bit分离出来,即为L0、L1、L2、L3,其中第1bit是L0,第2bit到第8bit是L1,第9bit到第13bit是L2,第14bit到第18bit是L3;第一层的最后14bit即为GA1、GA2、GB1、GB2,其中第67bit到第69bit是GA1,第70bit到第72bit是GA2,第73bit到第76bit是GB1,第77bit到第80bit是GB2;
A2、窄带LSP重建
LSP重建单元(121)接收窄带码流分离单元(11)分离出的L0、L1、L2、L3,并通过码书搜索得到窄带的LSP,具体实现步骤如下:
A21、LSP量化系数重建
LSP量化系数重建单元(1211)根据L0、L1、L2、L3解析出LSP的量化输出具体实现如下:
l ^ i = L 1 i ( L 1 ) + L 2 i ( L 2 ) i = 1 , &CenterDot; &CenterDot; &CenterDot; , 5 L 1 i ( L 1 ) + L 3 i - 5 ( L 3 ) i = 6 , &CenterDot; &CenterDot; &CenterDot; , 10 - - - ( 1 )
其中L1是10维的2bit码书,L2、L3是5维的5bit码书;
A22、LSP量化系数重置
LSP量化系数重置单元(1212)根据LSP量化系数重建单元(1211)输出的LSP量化输出,完成LSP量化系数的重置,具体实现如下:
式(1)中的循环变量i取值范围从2到10,每次增加1;每次循环中执行:若满足 l ^ i - 1 > l ^ i - J 条件,则执行 l ^ i - 1 = ( l ^ i + l ^ i - 1 - J ) / 2 , l ^ i = ( l ^ i + l ^ i - 1 + J ) / 2 操作;
LSP量化系数重置单元(1212)共执行上述循环两次,其中第一次循环时令J=0.0012,第二次循环时令J=0.0006;
A23、当前帧LSP量化系数重建
当前帧LSP量化系数重建单元(1213)根据LSP量化系数内插单元输出的内插后的LSP系数,重建出当前m帧的LSP量化系数具体实现如下:
q ^ i m = ( 1 - &Sigma; n = 1 4 p ^ i , n ) l ^ i m + &Sigma; n = 1 4 p ^ i , n l ^ i m - n , i = 1 , &CenterDot; &CenterDot; &CenterDot; , 10 - - - ( 2 )
其中,当m<0时为滑动平均预测器的系数,可以由L0码书搜索得到;
A24、当前帧LSP系数滤波
当前帧LSP系数滤波单元根据当前帧LSP量化系数重建单元(1213)输出的当前帧的LSP量化系数滤波操作,具体实现如下:
A241、按照i的升序排列
A242、如果 q ^ i < 0.005 , q ^ i = 0.005 ;
A243、如果 q i + 1 ^ - q i ^ - 0.0391 < 0 , q i + 1 ^ = q i ^ + 0.0391 , i = 1 , . . . , 9 ;
A244、如果 q ^ 10 > 3.135 , q ^ 10 = 3.135 ;
A3、反射系数重建
A31、线性预测系数重建
LSP到线性预测系数转换单元根据谱包络重建单元输出的当前帧的LSP系数,完成线性预测系数的重建工作;
A311、不同于A22循环变量的循环变量i取值范围从1到5,每次增加1;
每次变量i循环时
①f1(i)=-2q2i-1f1(i-1)+2f1(i-2);
f2(i)=-2q2if1(i-1)+2f2(i-2);
②循环变量j取值范围从i-1到1,每次循环变量j循环时,执行f1 [i](j)=f1 [i-1](j)-2q2i-1f1 [i-1](j-1)+f1 [i-1](j-2)
f2 [i](j)=f2 [i-1](j)-2q2if1 [i-1](j-1)+f2 [i-1](j-2)操作;
其中,f1(0)=1,f1(-1)=0,f2(0)=1,f2(-1)=0;
这里,f1(i)、f2(i)的含义为:随循环变量i变化的临时中间变量;f1 [i](j)、f2 [i](j)的含义为:循环变量为i时,求出的第j个临时中间变量f1、f2,j=i-1,i-2,…,1;f1 [i-1](j)、f2 [i-1](j)的含义为:循环变量为i-1时,求出的第j个临时中间变量f1、f2,j=i-1,i-2,…,1
A312、 f 1 ` ( i ) = f 1 ( i ) + f 1 ( i - 1 ) i = 1 , . . . , 5 f 2 ` ( i ) = f 2 ( i ) - f 2 ( i - 1 ) i = 1 , . . . , 5 - - - ( 3 )
其中,f1`(i)、f2`(i)的含义为:计算线性预测系数ai时,使用的临时中间变量;
A313、 a i = 0.5 f 1 ` ( i ) + 0.5 f 2 ` ( i ) i = 1 , . . . , 5 0.5 f 1 ` ( 11 - i ) - 0.5 f 2 ` ( 11 - i ) i = 6 , . . . , 10 - - - ( 4 )
A32、反射系数重建
线性预测系数到反射系数转换单元(1222)根据LSP转换成线性预测系数单元(1221)输出的线性预测系数ai,完成反射系数ki的重建,具体实现如下:
A321、 a m ( m ) = - k m ;
A322、 a m - 1 ( i ) = [ a m i + k m a m ( m - i ) ] / ( 1 - k i ) ;
其中,m=10,9,…,1,i=1,2,…,m-1,
A4、残差能量计算
A41、自适应码书增益解析
自适应码书增益解析单元(1232)根据宽带码流分离单元(21)分离出的GA1,GB1,解析出固定码书增益,具体实现如下:
g ^ p = y A 1 ( GA 1 ) + y B 1 ( GB 1 ) - - - ( 5 )
A42、固定码书增益解析
固定码书增益解析单元(1231)根据宽带码流分离单元(21)分离出的GA2,GB2,解析出固定码书增益,具体实现如下:
g ^ c = g ` ^ c ( y A 2 ( GA 2 ) + y B 2 ( GB 2 ) ) - - - ( 6 )
其中是预测的固定码书增益,yA1和yA2是3bit、2维的码书,yB1和yB2是4bit、2维的码书;
A43、残差能量计算
残差能量计算单元(1233)根据自适应码书增益解析单元(1232)输出的自适应码书增益和固定码书增益解析单元(1231)输出的固定码书增益计算第i帧的残差能量Ei,具体实现如下:
E i = ( g p ^ ) 2 + ( g c ^ ) 2 - - - ( 7 )
B、码书映射
码书映射单元(14)将每一窄带语音帧LSP扩展到高频语音帧时域包络及频域包络,具体方法如下:
码书映射单元(14)将窄带语音码流解码得到的窄带语音帧LSP进行低频码书搜索,得到其码字所在的行号,并在高频码书中输出此行的数据作为对应的高频时域包络及频域包络;
所述的码字指码书的一行;所述的码书是将每一语音帧的k个特征参数做为一个1×k维矢量,将一段语音的多个语音帧的特征矢量分成n类并求每一类的1×k维的质心矢量,n个质心矢量按行排列即得到该段语音的对应的码书,每个质心矢量即为一个码字;所述的码书搜索是将窄带码流解码得到的窄带语音帧谱包络数据作为输入矢量与码书中的每个码字求差的平方,找出与输入向量误差最小的码字,用此码字代替输入向量并输出码字所在行即索引号;
C、窄带能量计算
窄带能量计算单元(13)根据窄带码流解析单元(12)得到的反射系数ki,i=1,2,…,10以及第i帧的残差能量Ei计算第i帧的窄带能量具体实现如下:
E x i = E i &Pi; i = 1 10 ( 1 - k i 2 ) - - - ( 8 )
D、函数映射
函数映射单元(15)将窄带能量计算单元(13)计算得的窄带语音的能量,作为映射函数的输入,所得到的函数值即为所对应的高频部分能量;
E、编码
E1、高频能量编码
高频能量编码单元(17)完成函数映射单元(15)映射出的高频能量MT的编码,具体为:在对数域以3dB为步长对MT实现5bit量化,得到编码后的高频能量码流;
E2、高频包络编码
E21、高频能量解码
高频能量解码单元(19)将高频能量编码单元(17)输出的高频能量码流解码,得到编码前量化后的高频能量
E22、时域包络去直流分量
时域包络去直流分量单元(161)利用高频能量解码单元(19)输出的高频能量完成高频时域包络的去直流分量工作,具体实现如下:
T env M ( i ) = T env ( i ) - M ^ T , i = 0 , &CenterDot; &CenterDot; &CenterDot; , 15 - - - ( 9 )
其中,Tenv(i)为去直流分量前的时域包络,为去直流分量后的时域包络;
E23、频域包络去直流分量
频域包络去直流分量单元(162)利用高频能量解码单元(19)输出的高频能量高频能量完成高频频域包络的去直流分量工作,具体实现如下:
F env M ( i ) = F env ( i ) - M ^ T , i = 0 , &CenterDot; &CenterDot; &CenterDot; , 11 - - - ( 10 )
其中,Fenv(i)为去直流分量前的频域包络,为去直流分量后的频域包络;
E24、时域包络2分裂
时域包络2分裂单元(163)将去直流分量后的时域包络分裂成两个8维的矢量,具体实现如下:
T env . 1 = ( T env M ( 0 ) , T env M ( 1 ) , . . . , T env M ( 7 ) ) T env , 2 = ( T env M ( 8 ) , T env M ( 9 ) , . . . , T env M ( 15 ) ) - - - ( 11 )
E25、频域包络3分裂
频域包络3分裂单元(164)将去直流分量后的频域包络分裂成三个4维的矢量,具体实现如下:
F env , 1 = ( F env M ( 0 ) , F env M ( 1 ) , F env M ( 2 ) , F env M ( 3 ) ) F env , 2 = ( F env M ( 4 ) , F env M ( 5 ) , F env M ( 6 ) , F env M ( 7 ) ) F env , 3 = ( F env M ( 8 ) , F env M ( 9 ) , F env M ( 10 ) , F env M ( 11 ) ) - - - ( 12 )
E26、时域包络编码单元(165)
时域包络编码单元(165)将时域谱包络2分裂单元的输出的两个8维矢量都用7bit进行量化,得到编码后时域包络码流;
E27、频域包络编码单元(166)
频域包络编码单元(166)将频域包络3分裂单元(164)的输出的Fenv,1,Fenv,3都用5bit进行量化,Fenv,3用4bit进行量化,得到编码后频域包络码流;
F、码流合成
码流合成单元(18)将已有的窄带码流和编码单元编码所得到的高频码流按照G.729.1的码流格式填充到码流的Layer3合成宽带码流。
2.根据权利要求1所述的一种窄带码流转换为宽带码流的转换方法,其特征在于:所述的窄带码流转换成宽带码流时所需转换关系的训练方法,包括以下步骤:
G1、码书映射关系的训练
映射码书训练单元(23)在扩展单元(1)工作之前先对一帧数为LEN、时长为180分钟的宽带语音码流样本经宽带码流解析单元(22)部分解码得到低频LSP和对应的高频时域包络以及频域包络,然后经低频LSP和高频时域包络及频域包络矢量组合单元(231)、矢量分类单元(232)以及码书生成单元(233)生成码书映射单元(14)所需要的两个一一对应的低频码书和高频码书;
G11、宽带码流分离
宽带码流分离单元(21)将G.729.1的宽带码流每20毫秒帧中两个10毫秒帧第一层的前18bit分离出来即为L0、L1、L2、L3,其中第1bit是L0,第2bit到第8bit是L1,第9bit到第13bit是L2,第14bit到第18是L3;第一层的最后14bit即为GA1、GA2、GB1、GB2,其中第67bit到第69bit是GA1,第70bit到第72bit是GA2,第73bit到第76bit是GB1,第77bit到第80bit是GB2;每20ms帧第三层的前5bit分离出来即为MU,第6bit到第12bit即为T1,第13bit到第18bit即为T2,第19bit到第23bit即为F1,第24bit到第28bit即为F2,第29bit到第32bit即为F3;
G12、低频码流解析
低频码流解析单元(221)对宽带码流分离单元(21)分离出的低频码流进行解析,解析方法同步骤A;
G13、高频码流解析
G131、高频能量解析
高频能量解析单元(2222)将宽带码流分离单元(21)分离出的MU码字解码得到高频能量
G132、高频时域及频域包络解析
高频时域包络及频域包络解析单元(2221)接收宽带码流分离单元(21)分离出的高频谱包络码字T1、T2、F1、F2、F3,并到相应的码书中查找相应的矢量其中
T ^ env , 1 M = ( T ^ env M ( 0 ) , T ^ env M ( 1 ) , &CenterDot; &CenterDot; &CenterDot; , T ^ env M ( 7 ) )
T ^ env , 1 M = ( T ^ env M ( 8 ) , T ^ env M ( 9 ) , &CenterDot; &CenterDot; &CenterDot; , T ^ env M ( 15 ) )
F ^ env , 1 M = ( F ^ env M ( 0 ) , F ^ env M ( 1 ) , F ^ env M ( 2 ) , F ^ env M ( 3 ) )
F ^ env M = ( F ^ env M ( 4 ) , F ^ env M ( 5 ) , F ^ env M ( 6 ) , F ^ env M ( 7 ) )
F ^ env , 3 M = ( F ^ env M ( 8 ) , F ^ env M ( 9 ) , F ^ env M ( 10 ) , F ^ env M ( 11 ) )
并根据高频能量解析单元(2222)解析得到高频能量对高频时域包络及频域包络码流进行解码,得到解码后的高频时域包络和频域包络 F ^ env ( j ) , ( j = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 11 ) , 具体实现步骤如下:
T ^ env ( i ) = T ^ env M ( i ) + M ^ T ; ( i = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 15 ) - - - ( 13 )
F ^ env ( j ) = F ^ env M + M ^ T ; ( j = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 11 ) - - - ( 14 )
G14、低频LSP和高频时及频域包络矢量组合
低频LSP和高频时域及频域包络矢量组合单元分别将宽带码流解析单元(22)解析出的每一语音帧的10维LSP、16维时域包络以及12维的频域包络按照先是10维LSP,再是16维时域包络 T ^ env ( i ) ( i = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 15 ) , 最后是12维的频域包络 F ^ env ( j ) ( j = 0,1 , &CenterDot; &CenterDot; &CenterDot; , 11 ) 的顺序组成一个38维的矢量;
G15、矢量分类
矢量分类单元(232)采用动态聚类的方法将低频LSP和高频时域包络及频域包络矢量组合单元(231)的输出的总数为LEN个的38维矢量,以10维的低频LSP作为聚类对象进行分类,得到矢量分类的结果;
G16、码书生成
码书生成单元(233)分别利用算术求平均的方法和加权求平均的方法求取前10维LSP的质心矢量以及后28维高频时域包络及频域包络的质心矢量,具体实现如下:
G161、低频码书生成
低频码书生成单元(2331)利用算术求平均的方法,分别计算矢量分类结果中每一类的前10维矢量LSP的均值,所求得的结果即为该类质心矢量,将每一类的质心矢量按行排列即得到低频码书;
G162、高频码书生成
高频码书生成单元(2332)利用加权求平均的方法,计算矢量分类单元(232)输出的分类结果中每一类的后28维时域包络及频域包络质心矢量;先是利用算术求平均的方法分别求出每一类所有矢量的均值作为该类的初始质心矢量,然后求出每一个矢量与所在类质心矢量的距离,再用加权求质心的方法求出新质心,判断初始质心的1范数与新质心的1范数相对差的绝对值是否满足门限要求,若不满足则令新质心为初始质心,再用相同加权求质心的算法求出新质心,依次迭代直到二者1范数相对差的绝对值满足门限要求时退出迭代,并将此质心作为此类的质心;将所有类的质心矢量按行排列得到与低频码书一一对应的高频码书;具体实现方法如下:
G1621、初始质心矢量计算
初始质心矢量计算单元(23321)先利用简单算术求平均的方法,计算矢量分类单元(2232)输出的分类结果中每一类的后28维高频时及频域包络初始质心,计算公式如下:
aver 0 [ ind [ j ] ] [ k ] = 1 n &Sigma; j = 0 n x [ j ] [ x ] , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - ( 15 )
在此计算公式中,n为某一类中的矢量数目,x[j][k]表示第j个高频时域包络及频域包络矢量,ind[j]表示矢量x[j][k]所在的类,aver0[ind[j]][k]表示第ind[j]类的初始质心矢量;
G1622、矢量与其所在类质心矢量距离的计算
矢量与其所在类质心矢量距离的计算单元(23322)分别求出每一矢量与所在类质心矢量的距离,计算公式如下:
dist [ j ] = &Sigma; k = 0 M ( x [ j ] [ k ] - aver 0 [ ind [ j ] ] [ k ] ) 2 , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - ( 16 )
在此计算公式中dist[j]表示x[j][k]与所在类质心矢量的距离;
G1623、新质心矢量计算
新质心矢量计算单元(23323)用加权求平均的方法求出新质心矢量,计算公式如下:
w [ i ] = &Sigma; ind [ j ] = i 1 dist [ j ] - - - ( 17 )
aver [ i ] [ k ] = &Sigma; k = 0 M x [ j ] [ k ] w [ i ] &times; 1 dist [ j ] , k = 1,2 , &CenterDot; &CenterDot; &CenterDot; , 28 - - - ( 18 )
在该单元中w[i]表示该类中所用矢量与质心矢量距离倒数的和;aver[i][k]表示第i类的新质心矢量;
G1624、新质心和初始质心矢量1范数计算
新质心矢量和初始质心矢量1范数计算单元(23324)计算新质心矢量和初始质心矢量之间的1范数,计算公式如下:
sum 0 = &Sigma; k = 0 M | aver 0 [ i ] [ k ] | sum = &Sigma; k = 0 M | aver [ i ] [ k ] | - - - ( 19 )
sum0和sum分别表示初始质心矢量和新质心矢量的1范数;
G1625、判断
判断单元(23325)判断初始质心的1范数与新质心的1范数相对差的绝对值是否满足门限要求,计算公式如下:
| sum 0 - sum | sum &le; 10 - 3 - - - ( 20 )
当门限要求不满足时,令aver0[i][k]=aver[i][k],并重复步骤G1622-G1625,直到所有分类的质心矢量都满足门限要求时,不再重复,此时的质心矢量即为分类的质心矢量,这些质心矢量组成高频码书;
G2、能量映射函数关系的训练
能量映射函数训练单元(24)接收低频码流解析单元(221)输出的第i语音帧的低频能量和高频码流解析单元(222)输出的高频能量利用最小二乘法拟合出总数为LEN帧的高低频能量之间的函数关系具体实现步骤如下:
c = ( 1 LEN &Sigma; i = 0 LEN - 1 E x i M T i ) - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) ( 1 LEN &Sigma; i = 0 LEN - 1 M T i ) 1 LEN &Sigma; i = 0 LEN - 1 ( E x i ) 2 - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) 2 - - - ( 21 )
d = [ 1 LEN &Sigma; i = 0 LEN - 1 ( E x i ) 2 ] ( 1 LEN &Sigma; i = 0 LEN - 1 M T i ) - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) ( 1 LEN &Sigma; i = 0 LEN - 1 E x i M T i ) 1 LEN &Sigma; i = 0 LEN - 1 ( E x i ) 2 - ( 1 LEN &Sigma; i = 0 LEN - 1 E x i ) 2 - - - ( 22 ) .
CN201310033941.0A 2012-01-17 2012-01-17 一种窄带码流转换为宽带码流的转换方法 Expired - Fee Related CN103093757B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310033941.0A CN103093757B (zh) 2012-01-17 2012-01-17 一种窄带码流转换为宽带码流的转换方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310033941.0A CN103093757B (zh) 2012-01-17 2012-01-17 一种窄带码流转换为宽带码流的转换方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN2012100141176A Division CN102543089B (zh) 2012-01-17 2012-01-17 一种窄带码流转换为宽带码流的转换装置

Publications (2)

Publication Number Publication Date
CN103093757A CN103093757A (zh) 2013-05-08
CN103093757B true CN103093757B (zh) 2014-10-29

Family

ID=48206262

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310033941.0A Expired - Fee Related CN103093757B (zh) 2012-01-17 2012-01-17 一种窄带码流转换为宽带码流的转换方法

Country Status (1)

Country Link
CN (1) CN103093757B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103457703B (zh) * 2013-08-27 2017-03-01 大连理工大学 一种g.729到amr12.2速率的转码方法
CN110534122B (zh) * 2014-05-01 2022-10-21 日本电信电话株式会社 解码装置、及其方法、记录介质
CN104715756A (zh) * 2015-02-10 2015-06-17 百度在线网络技术(北京)有限公司 音频数据的处理方法及装置
CN111262891B (zh) * 2018-11-30 2022-04-29 成都鼎桥通信技术有限公司 一种宽窄带融合下的数据推送方法和系统
CN110839108A (zh) * 2019-11-06 2020-02-25 维沃移动通信有限公司 一种降噪方法及电子设备
CN111899748B (zh) * 2020-04-15 2023-11-28 珠海市杰理科技股份有限公司 基于神经网络的音频编码方法及装置、编码器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1750124A (zh) * 2004-09-17 2006-03-22 哈曼贝克自动系统股份有限公司 带限音频信号的带宽扩展
CN101236745A (zh) * 2007-01-12 2008-08-06 三星电子株式会社 用于带宽扩展编码和解码的方法、设备和介质
CN101521014A (zh) * 2009-04-08 2009-09-02 武汉大学 音频带宽扩展编解码装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101171098B1 (ko) * 2005-07-22 2012-08-20 삼성전자주식회사 혼합 구조의 스케일러블 음성 부호화 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1750124A (zh) * 2004-09-17 2006-03-22 哈曼贝克自动系统股份有限公司 带限音频信号的带宽扩展
CN101236745A (zh) * 2007-01-12 2008-08-06 三星电子株式会社 用于带宽扩展编码和解码的方法、设备和介质
CN101521014A (zh) * 2009-04-08 2009-09-02 武汉大学 音频带宽扩展编解码装置

Also Published As

Publication number Publication date
CN103093757A (zh) 2013-05-08

Similar Documents

Publication Publication Date Title
CN103093757B (zh) 一种窄带码流转换为宽带码流的转换方法
CN108447495B (zh) 一种基于综合特征集的深度学习语音增强方法
JP2956548B2 (ja) 音声帯域拡大装置
CN101140759B (zh) 语音或音频信号的带宽扩展方法及系统
KR101213840B1 (ko) 복호화 장치 및 복호화 방법, 및 복호화 장치를 구비하는 통신 단말 장치 및 기지국 장치
US9135923B1 (en) Pitch synchronous speech coding based on timbre vectors
CN100550712C (zh) 一种信号处理方法和处理装置
CN102682777B (zh) 一种衰减因子的获取方法和获取装置
CN102652336B (zh) 声音信号复原装置以及声音信号复原方法
CN102543089B (zh) 一种窄带码流转换为宽带码流的转换装置
CN105070293A (zh) 基于深度神经网络的音频带宽扩展编码解码方法及装置
RU2463674C2 (ru) Кодирующее устройство и способ кодирования
CN103325375A (zh) 一种极低码率语音编解码设备及编解码方法
CN103714822B (zh) 基于silk编解码器的子带编解码方法及装置
JPH08123484A (ja) 信号合成方法および信号合成装置
JPH10319996A (ja) 雑音の効率的分解と波形補間における周期信号波形
US20050114123A1 (en) Speech processing system and method
Qian et al. Combining equalization and estimation for bandwidth extension of narrowband speech
US5819224A (en) Split matrix quantization
EP1497631B1 (en) Generating lsf vectors
CN101770777B (zh) 一种线性预测编码频带扩展方法、装置和编解码系统
JP2004302259A (ja) 音響信号の階層符号化方法および階層復号化方法
JP4578145B2 (ja) 音声符号化装置、音声復号化装置及びこれらの方法
CN111243608A (zh) 一种基于深度自编码机低速率语音编码方法
Kwon et al. Bandwidth Extension of G. 729 speech coder using search-free codebook mapping

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141029

Termination date: 20180117

CF01 Termination of patent right due to non-payment of annual fee