发明内容
本发明实施例提供一种语音信号的发送及接收方法,用以在保证根据声学特征参数进行模式识别的准确性和重建语音信号质量的基础上,减小对网络带宽传输资源的占用。
对应的,本发明还提供了一种语音信号的发送及接收装置。
本发明实施例提供的技术方案如下:
一种语音信号的发送方法,包括:
对原始语音信号进行编码,得到语音压缩码流;
对编码所产生的语音压缩码流进行解码处理,获得重建语音信号;
分别提取原始语音信号和重建语音信号的声学特征参数,并根据提取到的声学特征参数,确定原始语音信号的声学特征参数和重建语音信号的声学特征参数之间的残差值;
对确定的声学特征参数之间的残差值进行编码,得到特征参数残差值码流;
将所述语音压缩码流和特征参数残差值码流发送给接收方。
一种语音信号的发送装置,包括:
语音信号编码单元,用于对原始语音信号进行编码,得到语音压缩码流;
语音信号解码单元,用于对语音信号编码单元所产生的语音压缩码流进行解码处理,获得重建语音信号;
声学特征参数提取单元,用于分别从原始语音信号和语音信号解码单元所得到的重建语音信号中提取声学特征参数;
声学特征参数残差值确定单元,用于根据声学特征参数提取单元提取得到的原始语音信号的声学特征参数和重建语音信号的声学特征参数,确定原始语音信号的声学特征参数和重建语音信号的声学特征参数之间的残差值;
特征参数残差值编码单元,用于对声学特征参数残差值确定单元所确定的声学特征参数之间的残差值进行编码,得到特征参数残差值码流;
码流发送单元,用于将语音信号编码单元所得到的语音压缩码流和特征参数残差值编码单元所得到的特征参数残差值码流发送给接收方。
一种语音信号的接收方法,包括:
从接收到的码流中得到语音压缩码流和特征参数残差值码流;
对语音压缩码流进行解码处理,获得重建语音信号;
提取所述重建语音信号中的声学特征参数;
对特征参数残差值码流进行解码处理,获得原始语音信号中的声学特征参数和重建语音信号中的声学特征参数之间的残差值;
将所述声学特征参数之间的残差值与从重建语音信号中提取的声学特征参数相加,将相加结果作为原始语音信号的声学特征参数。
一种语音信号的接收装置,包括:
码流接收单元,用于接收码流,并从接收到的码流中得到语音压缩码流和特征参数残差值码流;
语音信号解码单元,用于对码流接收单元所得到的语音压缩码流进行解码,获得重建语音信号;
声学特征参数提取单元,用于从语音信号解码单元所得到的重建语音信号中提取声学特征参数;
特征参数残差值解码单元,用于对码流接收单元所得到的特征参数残差值码流进行解码,获得原始语音信号中的声学特征参数和重建语音信号中的声学特征参数之间的残差值;
声学特征参数确定单元,用于将声学特征参数残差值解码单元所得到的声学特征参数之间的残差值与声学特征参数提取单元所得到的重建语音信号的声学特征参数相加,将相加结果作为原始语音信号的声学特征参数。
一种语音信号的编码方法,包括:
接收输入的语音信号;检测所输入的语音信号中是否出现了预定的异常事件,并根据检测结果确定语音信号的异常度值;根据所述异常度值控制语音信号的编码速率。
一种语音信号的编码系统,包括:
语音信号接收单元,用于接收输入的语音信号;
异常事件检测单元,用于检测语音信号接收单元所接收到的语音信号中是否出现了预定的异常事件,并根据检测结果确定语音信号的异常度值;
语音编码单元,用于对语音信号接收单元接收的语音信号进行编码;
码率控制单元,用于根据异常事件检测单元检测到的异常度值控制语音编码单元对语音信号进行编码的编码速率。
本发明实施例充分利用了重建语音信号与原始语音信号之间存在相似性的特点,在发送方对分别从原始语音信号和重建语音信号中提取的声学特征参数之间的残差值进行编码,得到声学特征参数残差值码流,声学特征参数残差值码流与现有技术中对原始语音信号的声学特征参数进行编码所获得的声学特征参数码流相比,所占用的网络传输带宽资源更少,因此,本发明实施例提出的技术方案在保证语音信号接收方根据声学特征参数进行模式识别的准确性和重建语音信号质量的基础上,减小了语音信号发送方向语音信号接收方发送的码流所占用的网络传输资源。
具体实施方式
下面结合各个附图对本发明实施例的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。
在本发明实施例中,发送方的功能可以由客户端来实现,接收方的功能可以由服务器来实现。
请参照附图3,本发明实施例的主要实现原理流程如下:
步骤10,发送方,对原始语音信号进行编码压缩,通过语音信号解码器对编码压缩所产生的语音压缩码流进行解码处理获得重建语音信号,分别提取原始语音信号和重建语音信号中的声学特征参数,并根据提取到的声学特征参数信息,求取原始语音信号中的声学特征参数和重建语音信号中的声学特征参数之间的残差值,然后对求取的声学特征参数残差值进行编码压缩,得到特征参数残差值码流,将对原始语音信号编码压缩所获得的语音压缩码流和特征参数残差值码流进行复用后得到的复用码流发送给服务器。
步骤20,接收方,对接收到的复用码流解复用,分别获得语音压缩码流和特征参数残差值码流;并对语音压缩码流进行解码处理获得重建语音信号,对特征参数残差值码流进行解码处理,获得原始语音信号中的声学特征参数和重建语音信号中的声学特征参数之间的残差值;将获得的声学特征参数残差值与从重建语音信号中提取的声学特征参数相加,将相加结果作为用来进行模式识别的声学特征参数。
请参照附图4,在步骤10中,在分别提取原始语音信号和重建语音信号中的声学特征参数之前,进一步还需要对原始语音信号进行延迟调整,以保证调整之后的原始语音信号和重建语音信号之间保持同步。在对原始语音信号中的声学特征参数和重建语音信号中的声学特征参数之间的残差值进行编码压缩时,要采用矢量量化的编码压缩方法。
请参照附图5,在步骤20中,在对特征参数残差值码流进行解码处理生成声学特征参数残差值时,采用的解码方法与步骤10中对声学特征参数残差值进行编码压缩的方法相对应,即要采用矢量量化的解码方法。
以下将结合具体实例对上述方法进行进一步的说明:
请参照附图4,发送方,首先通过语音信号编码器对原始语音信号进行编码压缩,获得语音压缩码流。具体方法如下:在对原始语音信号进行编码时,首先通过异常事件检测单元检测原始语音信号中是否出现了异常事件(例如尖叫声、枪声、爆炸声等),并根据检测结果确定原始语音信号的异常度值;码率控制单元根据异常事件检测单元所确定出的异常度值控制语音信号的编码速率。将原始语音信号分解为高频语音信号和低频语音信号,对于高频语音信号时,使用相当少的比特对原始语音信号进行频谱扩展(Bandwidth Expansion,BWE)编码;对于低频语音信号时,使用在基于代数码激励线性预测的方法(ACELP)和变换激励编码(TCX,transform coded excitation)技术之间切换的核心编码器进行编码。
然后,通过语音信号解码器对语音压缩码流进行解码,生成重建语音信号,这里需要指明的是,语音信号解码器中使用的解码方法与语音信号编码器中使用的编码方法相对应。
对所获得的重建语音信号进行延迟调整,使得调整后的重建语音信号与原始语音信号保持同步后,分别提取原始语音信号和重建语音信号中的声学特征参数。由于美尔频率倒谱(MFCC,Mel-frequencey cepstral coefficients)系数具有良好的模式识别性能和抗噪声特点,因此在本实施例中,选择MFCC系数作为用来进行模式识别的声学特征参数。输入的原始语音信号S(n)为重叠短时帧,每帧的时间长度为25ms,相邻帧之间的时移为10ms,每10ms计算一次MFCC系数。声学特征参数为14维矢量,其具体包括13维MFCC系数及一维短时帧的对数能量。
请参照附图6,从原始语音信号中提取MFCC系数作为声学特征参数的方法具体包括以下步骤:
第一步,对输入的原始语音信号进行噪声消除处理,得到噪声消除后的原始语音信号S′(n)。噪声消除处理用于降低背景噪声,提高原始语音信号的信噪比。
第二步,对噪声消除处理后的原始语音信号S′(n)进行预加重处理,预加重处理用于提升S′(n)的高频部分,使S′(n)的频谱较为平坦,便于后续进行频谱分析。预加重处理可以通过一个一阶高通滤波器来实现,预加重处理后得到的信号Spe(n)与S′(n)的关系如下:
Spe(n)=S′(n)-0.9S′(n-1);
此外,确定帧的对数能量 其中N=400,为原始语音信号的采样频率;
第三步,对预加重处理后的语音信号Spe(n)进行加窗处理,在本实施例中,所使用的加窗窗口为N=400的汉明(Hamming)窗,加窗处理后的语音信号为:
第四步,对加窗处理后的语音信号S
pe_w(n)进行快速傅里叶(FFT,FastFourier Transform)变换处理,以确定语音信号S
pe_w(n)的频谱。即先通过补零将具有N个样本的语音信号S
pe_w(n)扩展为有512个样本的语音信号
对扩展后的语音信号
进行快速FFT变换,确定语音信号的频谱X(bin)如下:
第五步,根据语音信号的频谱X(bin),确定语音信号的功率谱P(bin)为:
P(bin)=|X(bin)|2,0≤bin≤NFFT,/2,其中NFFT=512;
第六步,对语音信号的功率谱X(bin)进行Mel滤波处理,可以通过23(M=23)个三角带通滤波器对语音信号的功率谱X(bin)进行滤波处理来实现。语音信号的功率谱在Mel域被分为M个子带,每个子带对应一个三角形窗口,相邻子带之间有50%的重叠部分,对落在每个三角形窗口内的功率谱求和得到Mel滤波处理后的结果fbank(n),(n=1,...,M);
第七步,对Mel滤波处理后的结果进行取自然对数的处理,结果为E(n):
E(n)=ln(fbank(n)),n=1,...,M;
第八步,对第七步取自然对数的结果进行离散余弦变换(DCT,DiscreteCosine Transform)处理,得到13个倒谱系数,即0阶至12阶的MFCC系数:
根据上述8个步骤,可以分别确定由13个倒谱系数和对数能量ln(E)构成的14维的原始语音信号的声学特征参数y1(t),同理可确定由13个倒谱系数和对数能量ln(E)构成的14维的重建语音信号的声学特征参数y2(t),二者相减,可以得到声学特征参数残差值y(t):
y(t)=[C(1),C(2),C(3),C(4),C(5),C(6),C(7),C(8),C(9),C(10),C(11),C(12),C(0),ln(E)]T,其中C(i)分别表示第i阶MFCC系数。
采用分裂矢量量化的方法对上述声学特征参数残差值y(t)进行编码压缩处理,具体如下:
首先,按照每组2个将声学特征参数残差值y(t)中的14维向量分为7组,对于每组向量分别用独立的编码表Qi,i+1进行量化,进行矢量量化时根据加权欧氏距离确定矢量量化时的失真度,选择编码表中与该组向量最接近的码字,然后通过对该选择的码字进行编码实现对该组向量进行编码。然后将7组向量的编码码流组合在一起作为声学特征参数残差值y(t)的编码压缩码流,具体计算方式如下:
其中,
表示编码表Q
i,i+1的第j个码字,(N
i,i+1-1)为编码表Q
i,i+1所包含码字的数量,W
i,i+1为编码表Q
i,i+1的加权矩阵,idx
i,i+1(t)为矢量量化所得到的[y
i(t),y
i+1(t)]
T在编码表Q
i,i+1中的码字索引值。
加权矩阵具体如下:
矢量量化时所使用的编码表Qi,i+1可以基于LBG(Linde Buzo Gray)方法通过训练得到,其中下表1给出了对声学特征参数残差值进行矢量量化时所使用的7个编码表的大小,对于包含16个码字的编码表,可以使用4bit码流对编码表中的码字进行编码;对于包含8个码字的第6个编码表,可以使用3bit码流对编码表中的码字进行编码;对于包含64个码字的第7个编码表,可以使用6bit码流对编码表中的码字进行编码,因此可以使用29bit(4+4+4+4+4+3+6=29)码流对声学特征参数残差值进行编码,由于声学特征参数的采样时间间隔为10ms,因此将声学特征参数残差值进行编码后,特征参数码流所占用的网络传输带宽为2900bps。
表1:声学特征参数残差值的矢量量化编码表信息
编码表 | 编码表所包含的码字数量 | 编码表对应的特征参数向量 |
Q0,1 | 16 | [c(1),c(2)] |
Q2,3 | 16 | [c(3),c(4)] |
Q4,5 | 16 | [c(5),c(6)] |
Q6,7 | 16 | [c(7),c(8)] |
Q8,9 | 16 | [c(9),c(10)] |
Q10,11 | 8 | [c(11),c(12)] |
Q12,13 | 64 | [c(0),ln(E)] |
而在现有的语音识别系统中,对从原始语音信号中提取的声学特征参数y1(t)进行编码压缩时,矢量量化时所使用的编码表信息如下表2所示,对于包含64个码字的前5个编码表,可以使用6bit码流对编码表中的码字进行编码;对于包含32个码字的第6个编码表,可以使用5bit码流对编码表中的码字进行编码;对于包含256个码字的第7个编码表,可以使用8bit码流对编码表中的码字进行编码。因此,总共需要43bit(6×5+5+8=43)来对从原始语音信号中提取的声学特征参数进行编码,在采样时间间隔为10ms时,对从原始语音信号中提取的声学特征参数进行编码后,生成的特征参数码流所占用的网络传输带宽为4300bps。
表2:原始语音信号中声学特征参数的矢量量化编码表信息
编码表 | 编码表所包含的码字数量 | 编码表对应的特征参数向量 |
Q0,1 | 64 | [c(1),c(2)] |
Q2,3 | 64 | [c(3),c(4)] |
Q4,5 | 64 | [c(5),c(6)] |
Q6,7 | 64 | [c(7),c(8)] |
Q8,9 | 64 | [c(9),c(10)] |
Q10,11 | 32 | [c(11),c(12)] |
Q12,13 | 256 | [c(0),ln(E)] |
综上可见,本发明实施例充分利用了重建语音信号与原始语音信号之间存在相似性的特点,考虑到重建语音信号与原始语音信号之间的残差值与原始语音信号相比,前者的取值范围要小于后者的取值范围,因此原始语音信号中的声学特征参数和重建语音信号中的声学特征参数之间的声学特征参数残差值的取值范围,要小于原始语音信号中的声学特征参数的取值范围,在同样的失真度条件下对二者进行编码压缩时,表征声学特征参数残差值的编码表中的码字数量要远小于表征原始语音信号声学特征参数中的编码表的码字数量,因此在进行矢量编码压缩后,声学特征参数残差值码流比原始语音信号中的声学特征参数码流所占用的网络传输带宽资源要少。比如在上一具体实施例中,采用本发明方案对声学特征参数残差值进行编码处理得到的特征参数码流所占用的网络传输带宽,相对于直接采用现有技术对原始语音信号中的声学特征参数进行编码处理得到特征参数码流所占用的网络传输带宽减少了(4300-2900)/4300=32.5%。
相应地,本发明实施例还提供了一种语音信号的发送装置,请参照附图7,该装置包括语音信号编码单元710、语音信号解码单元720、声学特征参数提取单元730、声学特征参数残差值确定单元740、声学特征参数残差值编码单元750和码流发送单元760,具体如下:
语音信号编码单元710,用于对输入的原始语音信号进行编码,得到语音压缩码流;
语音信号解码单元720,用于对语音信号编码单元710所产生的语音压缩码流进行解码处理,获得重建语音信号;
声学特征参数提取单元730,用于分别从原始语音信号中提取原始语音信号的声学特征参数,从语音信号解码单元720所得到的重建语音信号中提取重建语音信号的声学特征参数,在本实施例中声学特征参数为14维矢量,具体是13维MFCC系数和一维短时帧对数能量;
声学特征参数残差值确定单元740,用于根据声学特征参数提取单元730得到的原始语音信号的声学特征参数和重建语音信号的声学特征参数,确定原始语音信号的声学特征参数和重建语音信号的声学特征参数之间的残差值;
声学特征参数残差值编码单元750,用于对声学特征参数残差值确定单元740所确定的声学特征参数之间的残差值进行编码,得到特征参数残差值码流,在编码时采用分裂矢量量化的方法;
码流发送单元760,用于将语音信号编码单元710所得到的语音压缩码流和声学特征参数残差值编码单元750所得到的特征参数残差值码流发送给接收方。
请参照附图8,码流发送单元包括:码流复用子单元810和码流发送子单元820,其中,
码流复用子单元810,用于将语音信号编码单元所得到的语音压缩码流和特征参数残差值编码单元所得到的特征参数残差值码流进行复用,得到复用后的码流;码流发送子单元820,用于将码流复用子单元810所得到的码流发送给接收方。
所述语音信号的发送装置还包括:同步处理单元,用于对原始语音信号和语音信号解码单元得到的重建语音信号进行同步处理;声学特征参数提取单元分别从同步处理单元同步处理后的原始语音信号和重建语音信号中提取声学特征参数。
请参照附图9,语音信号编码单元包括语音信号分解子单元910、低频语音信号编码子单元920和高频语音信号编码子单元930,其中,
语音信号分解子单元910,用于将原始语音信号分解为低频语音信号和高频语音信号;
低频语音信号编码子单元920,用于对语音信号分解子单元910输出的低频语音信号,使用在基于代数码激励线性预测的方法和变换激励编码技术之间切换的核心编码器进行编码;
高频语音信号编码子单元930,用于对语音信号分解子单元910输出的高频语音信号,使用相当少的比特对原始语音信号进行频谱扩展编码。
此外,请参照附图10,本发明实施例还提供了一种语音信号的接收装置,包括:码流接收单元101、语音信号解码单元102、声学特征参数提取单元103、声学特征参数残差值解码单元104和声学特征参数确定单元105,其中,
码流接收单元101,用于接收码流,并从接收到的码流中得到语音压缩码流和声学特征参数残差值码流;
语音信号解码单元102,用于对码流接收单元101所得到的语音压缩码流进行解码,以获得重建语音信号,采用的解码方法与发送方对语音信号进行编码压缩的方法相对应,即低频部分采用代数码激励线性预测和变换激励编码技术对应的解码技术,高频部分使用频谱扩展解码技术,最后使用合成单元将解码得到高频信号和低频信号合并得到重建的语音信号。
声学特征参数提取单元103,用于从语音信号解码单元102所得到的重建语音信号中提取声学特征参数;
声学特征参数残差值解码单元104,用于对码流接收单元101所得到的声学特征参数残差值码流进行解码,获得原始语音信号的声学特征参数和重建语音信号的声学特征参数之间的残差值;
声学特征参数确定单元105,用于将声学特征参数残差值解码单元104所得到的声学特征参数之间的残差值与声学特征参数提取单元103所得到的重建语音信号的声学特征参数相加,将相加结果作为原始语音信号的声学特征参数。
请参照图11,码流接收单元包括:
码流接收子单元111,用于接收发送方发送的码流;以及
解复用处理子单元112,用于对码流接收子单元111所接收到的码流进行流。
上述语音信号的发送装置和语音信号的接收装置中的声学特征参数提取单元从原始语音信号或重建语音信号中提取声学特征参数的详细处理过程,请参照上述方法实施例的对应处理过程,这里不再详细赘述。
本发明实施例还提供了一种语音信号编码系统,请参照图12,该系统包括语音信号接收单元121、异常事件检测单元122、码率控制单元123和语音编码单元124,其中,
语音信号接收单元121,用于接收输入的语音信号;
异常事件检测单元122,用于检测语音信号接收单元121所接收到的语音信号中是否出现了预定的异常事件,并根据检测结果确定语音信号的异常度值;
语音编码单元124,用于对语音信号接收单元121接收的语音信号进行编码;
码率控制单元123,用于根据异常事件检测单元122检测到的异常度值控制语音编码单元124对语音信号进行编码的编码速率。
该语音信号编码系统适应于在上述语音信号的发送装置中,对原始语音信号进行编码,即实现语音信号编码单元的功能。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。