节目制作中的说话人声音自动跟踪变调系统和方法转让专利

申请号 : CN200510022095.8

文献号 : CN1967657B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 欧阳睿章潘巧海龚俊杰

申请人 : 成都索贝数码科技股份有限公司

摘要 :

本发明节目制作中的说话人声音自动跟踪变调系统和方法,包括:声音采集单元(11),采集指定说话人的声音片断和待处理声音;声学模型设立单元(12),从采集的指定说话人声音片断求解最佳参数作为声学模型;声音过滤分割单元(13),将待处理声音过滤分割成说话音和非说话音;声音存贮单元(14),存贮声学模型、非说话音和非指定说话人声音;声音特征矢量提取单元(15),从说话音中提取声音特征矢量;说话音相似匹配过滤单元(16),将说话音的声音特征矢量与存储器中的声学模型的声音特征矢量比较。声音变调单元(17),将指定说话人声音变调;声音拼接单元(18),将变调后的说话人声音与未变调的其它声音按声音在时间上的先后顺序拼接成处理后的声音。

权利要求 :

1.节目制作中的说话人声音自动跟踪变调系统,包括:

声音采集单元(11),采集指定说话人的声音片断和待处理声音;

声学模型设立单元(12),从采集的指定说话人声音片断提取声音特征矢量并求解最佳参数作为声学模型;

声音过滤分割单元(13),将待处理声音过滤分割成说话音和非说话音;

声音存贮单元(14),存贮声学模型、非说话音和非指定说话人声音;

声音特征矢量提取单元(15),从说话音中提取声音特征矢量;

说话音相似匹配过滤单元(16),将说话音的声音特征矢量与声音存贮单元中的声学模型的声音特征矢量比较,匹配的则过滤出为指定说话人声音,不匹配的非指定说话人声音存贮待后合成;

声音变调单元(17),将指定说话人声音变调;

声音拼接单元(18),将变调后的说话人声音与包括非说话音的未变调的声音按声音在时间上的先后顺序拼接成处理后的声音,系统由N个指定说话人声音自动跟踪变调系统串行组成,上一个系统的声音拼接单元的输出接下一个系统的声音采集单元的输入,在每个系统中,对当前系统指定的说话人声音完成声学模型设立,声音过滤分割,声音特征矢量提取,指定说话人声音,声音变调,声音拼接的整个过程。

2.根据权利要求1所述的系统,其特征在于所述的声音变调单元包括:声音特征矢量提取单元(15)提取输入声音的倒谱系数或MFCC系数作为特征矢量,声学模型设立单元(12),对特征矢量的各分量的特征进行初始化,并对初始化参数进行多次重估和迭代,直到收敛为最佳参数的声音特征矢量。

3.根据权利要求1所述的系统,其特征在于所述声音过滤分割单元包括:静音过滤单元(131),过滤出静音段;环境音过滤单元(132),过滤出环境音。

4.根据权利要求1所述的系统,其特征在于所述声音变调单元包括:音频帧选取单元(171),选取一个最佳的帧长度,把指定说话人声音分成一系列与最佳帧长度等长的音频帧;音频帧重采样单元(172),将音频帧改变长度,从而改变频谱;相邻音频帧拼接单元(173),将改变语调后的音频帧拼接成完整的说话人声音输出。

5.节目制作中的说话人声音自动跟踪变调方法,包括如下步骤:

(1)建立说话人声学模型,从采集的指定说话人的声音片断中,声学模型设立单元提取声音特征矢量求解最佳参数作为声学模型并存贮声学模型,(2)声音过滤分割,由声音过滤分割单元将采集的待处理声音过滤分割成说话音和非说话音,将非说话音存贮,(3)提取说话音中的各个说话人的声音特征矢量,由声音特征矢量提取单元提取说话音中的各说话人声音的特征矢量,(4)从说话音中过滤出指定说话人声音,由说话音相似匹配过滤单元将当前说话人的声音特征矢量与声音存贮单元中的指定说话人声学模型进行相似匹配,从说话音中过滤出指定说话人声音,将非指定说话人声音存贮,(5)将过滤出的指定说话人声音变调,由声音变调单元将指定说话人声音变调,(6)各种声音拼接,由声音拼接单元将变调后的说话人声音与分割过滤出的未变调的声音根据这些声音段在采集的待处理声音中的先后位置关系依次排列拼接成完整的等长的处理后的声音,系统由N个指定说话人声音自动跟踪变调系统串行组成,上一个系统的声音拼接单元的输出接下一个系统的声音采集单元的输入,在每个系统中,针对当前系统指定的说话人声音建立声学模型,完成(1)-(6)的整个过程。

6.根据权利要求5所述的方法,其特征在于步骤(4)所说的相似匹配是计算当前说话人声音特征矢量与声学模型相似概率,当计算出的匹配相似度大于选定值时,则表示当前说话人声音为指定说话人声音,否则不是指定说话人声音。

7.根据权利要求6所述的方法,其特征在于将各个说话人声音特征矢量分为重叠的几部分,在每部分中,当前帧的判断以前面各帧的判断结果作为参考,计算该部分中指定说话人发的语音帧数与总帧数的比值最大,且大于选定值,就认定该部分是指定说话人发出的语音。

8.根据权利要求5所述的方法,其特征在于步骤(5)包括如下步骤:a.选取声音处理帧的帧长和起始位置;

b.通过限带插值法重采样;

c.用最大互相关系数法寻找最佳匹配区;

d.将最佳匹配区与前面已处理帧的淡入淡出区加权叠加。

说明书 :

节目制作中的说话人声音自动跟踪变调系统和方法

技术领域:

[0001] 本发明与影视节目制作中改变指定人的说话声音特征,使指定人不能从声音角度被识别的系统有关。
[0002] 背景技术:
[0003] 在影视节目(如新闻、访谈等)中,很多说话人不愿意暴露自己的真实身份,为了保护说话人,需要在后期制作时进行技术处理:打上马赛克,背对镜头,或者把人的脸放到阴影下等,使观众甚至认识他的人也无法从外表判断出他是谁,这在一定程度上达到了预期的目的。但是,对于熟悉说话人的观众,即使看不到说话人的脸,只要能听到说话人的声音,也会判断出说话人的身份。所以,只针对图像的保护处理,并不能真正的保护说话人的身份。
[0004] 目前,说话人声音保护的编辑工作都是基于专业硬件调音台及人工操作的方法,而且受到了很大的限制,例如:
[0005] (1)现场录音条件下,不能针对多个说话人声音混在一起时仅针对指定说话人声音进行实时变调处理。比如外景拍摄采访节目时,目前所能达到的是对所有的录制声音进行变调,包括主持人的声音,显然这是不符合要求的。
[0006] (2)后期制作中,对指定说话人声音段变调,需要首先手工标注说话人声音段起始和结束位置,这个工作量非常巨大。
[0007] (3)人工标注声音的起始和结束位置过程中,人工的方法通常不能做到一个最佳的标注,特别是在采访者和受访者的说话声音之间的间隔很小的情况下。为了逼近这个最佳标注,编辑者通常要反复听声音段,反复修改标注位置,可想而知,这种工作量有多么巨大。
[0008] (4)另外目前的硬件变调处理方法一般不能做到变调而不变长,对声音文件变调的同时也改变了声音文件的长度,通常会引起视频文件中声音和画面的不同步,给编辑工作带来很大的不方便。
[0009] 通过以上四点可以看出,目前的声音保护技术是不灵活的,编辑音频文件时工作量是巨大的,如果要处理大量的音频文件,需要大量的人力和时间,给节目的制作带来了巨大的困难。发明内容:
[0010] 本发明的目的是提供一种能自动对指定的一个或多个说话人声音变调、编辑、合成音频文件,声音保护技术灵活、方便,制作成本低的声音自动跟踪变调系统及其方法。 [0011] 本发明是这样实现的:
[0012] 本发明节目制作中的说话人声音自动跟踪变调系统,包括:
[0013] 声音采集单元11,采集指定说话人的声音片断和待处理声音;
[0014] 声学模型设立单元12,从采集的指定说话人声音片断提取声音特征矢量并求解最佳参数作为声学模型;
[0015] 声音过滤分割单元13,将待处理声音过滤分割成说话音和非说话音; [0016] 声音存贮单元14,存贮声学模型、非说话音和非指定说话人声音; [0017] 声音特征矢量提取单元15,从说话音中提取声音特征矢量;
[0018] 说话音相似匹配过滤单元16,将说话音的声音特征矢量与声音存储单元中的声学模型的声音特征矢量比较,匹配的则过滤出为指定说话人声音,不匹配的非指定说话人声音存贮待后合成;
[0019] 声音变调单元17,将指定说话人声音变调;
[0020] 声音拼接单元18,将变调后的说话人声音与包括非说话音的未变调的声音按声音在时间上的先后顺序拼接成处理后的声音,
[0021] 系统由N个指定说话人声音自动跟踪变调系统串行组成,上一个系统的声音拼接单元的输出接下一个系统的声音采集单元的输入,在每个系统中,对当前系统指定的说话人声音完成声学模型设立,声音过滤分割,声音特征矢量提取,指定说话人声音,声音变调,声音拼接的整个过程,
[0022] 所述的声音变调单元包括:特征矢量提取单元121,提取输入声音的倒谱系数或MFCC系数作为特征矢量,声学模型设立单元12,对特征矢量的各分量的特征进行初始化,并对初始化参数进行多次重估和迭代,直到收敛为最佳参数的声音特征矢量。 [0023] 所述的声音过滤分割单元包括:静音过滤单元131,过滤出静音段;环境音过滤单元132,过滤出环境音。
[0024] 所述的声音变调单元包括:音频帧选取单元171,选取一个最佳的帧长度,把指定说话人声音分成一系列与最佳帧长度等长的音频帧;音频帧重采样单元172,将音频帧改变长度,从而改变频谱;相邻音频帧拼接单元173,将改变语调后的音频帧拼接成完整的说话人声音输出。
[0025] 节目制作中的说话人声音自动跟踪变调方法,包括如下步骤:
[0026] (1)建立说话人声学模型,从采集的指定说话人的声音片断中,声学模型设立单元提取声音特征矢量求解最佳参数作为声学模型并存贮声学模型,
[0027] (2)声音过滤分割,由声音过滤分割单元将采集的待处理声音过滤分割成说话音和非说话音,将非说话音存贮,
[0028] (3)提取说话音中的各个说话人的声音特征矢量,由声音特征矢量提取单元提取说话音中的各说话人声音的特征矢量,
[0029] (4)从说话音中过滤出指定说话人声音,由说话音相似匹配过滤单元将当前说话人的声音特征矢量与声音存储单元中的指定说话人声学模型进行相似匹配,从说话音中过滤出指定说话人声音,将非指定说话人声音存贮,
[0030] (5)将过滤出的指定说活人声音变调,由声音变调单元将指定说话人声音变调。 [0031] (6)各种声音拼接,由声音拼接单元将变调后的说话人声音与分割过滤出的未变调的声音根据这些声音段在采集的待处理声音中的先后位置关系依次排列拼接成完整的等长的处理后的声音,
[0032] 系统由N个指定说话人声音自动跟踪变调系统串行组成,上一个系统的声音拼接单元的输出接下一个系统的声音采集单元的输入,在每个系统中,针对当前系统指定的说话人声音建立声学模型,完成(1)-(6)的整个过程。
[0033] 步骤(4)所说的相似匹配是计算当前说话人声音特征矢量与声学模型相似概率,当计算出的匹配相似度大于选定值时,则表示当前说话人声音为指定说话人声音,否则不是指定说话人声音。
[0034] 将各个说话人声音特征矢量分为重叠的几部分,在每部分中,当前帧的判断以前面各帧的判断结果作为参考,计算该部分中指定说话人发的语音帧数与总帧数的比值最大,且大于选定值,就认定该部分是指定说话人发出的语音。
[0035] 步骤(5)包括如下步骤:
[0036] a.选取声音处理帧的帧长和起始位置;
[0037] b.通过限带插值法重采样;
[0038] c.用最大互相关系数法寻找最佳匹配区;
[0039] d.将最佳匹配区与前面已处理帧的淡入淡出区加权叠加。
[0040] 由N个指定说话人声音自动跟踪变调系统串行组成,上一个系统的最终输入声音作为下一个系统的待处理声音输入,在每个系统中,针对当前系统指定的说话人事音建立声音学模型,完成步骤(1)-(6)的整个过程。
[0041] 本发明的说话人声音识别跟踪是基于文本无关的方法,这种方法只与说话人声音的生物特征相关,与说话的内容无关,脱离了语音文本识别繁重计算量的束缚。本发明中,用于识别跟踪的GMM模型完全脱离了文本的束缚,即根据说话人声音的生物特征创建了指定说话人的GMM声学模型,在实际跟踪识别中,无论说话人说什么内容,都可以准确地跟踪说话人。
[0042] 而且本系统在对声音变调的时候,不会改变说话人声音的语速和持续时间,不会影响采访节目播放的声音效果。同时该系统能够满足现场实时的自动变调或者后期超实时的变调处理两种需求。另外系统识别跟踪时能精确的标注说话人声音的起始和结束段,克服了人工标注的不准确。
[0043] 声音变调子单元中,变调前后的音频数据样点数完全一样,保证了说话人语速及声音持续时间不变;变调后的声音频谱特征与原有声音相差很大,人耳朵无法从变调后的声音识别出说话人,而且变调后的声音质量很好,没有引入任何噪声。总之,本发明的变调既达到了说话人不能从声音角度被识别身份的目的,也确保了节目播放的声音质量。 附图说明
[0044] 图1为本发明的系统框图。
[0045] 图2为声学模型设立单元框图。
[0046] 图3为声音过滤分割单元框图。
[0047] 图4为声音变调单元框图。
[0048] 图5为本发明的方法流程图。
[0049] 图6为有多个指定说话人的系统框图。

具体实施方式

[0050] 本发明包括如下步骤:
[0051] 1,说话人声学模型建立
[0052] 实施方法是:人工选定一段说话人的声音,输入到说话人选定及建模系统中,根据声音提取其特征矢量。利用提取出来的特征矢量,创建反映当前说话人说话特征的声学模型。为保证所建立的声学模型的效果,本发明在具体实施时要求初始选定的说话人声音片断持续时间大于一定时间(一般要求大于5秒)。
[0053] 1.1说话人声音特征矢量提取
[0054] 特征矢量提取即提取声音中表征说话人的基本特征,此特征应能有效地区分不同的说话人,且对同一说话人的声音变化保持相对稳定。在音频 识别中,最常用的特征矢量的是LPCC(Linear Prediction CepstrucmCoefficient)倒谱系数和MFCC(Mel-frequency Cepstrum Coefficients)系数。本发明以MFCC系数的提取为例,详细说明特征矢量提取的方法。
[0055] MFCC特征矢量的提取步骤分为:
[0056] (1)对输入声音进行快速傅立叶变换(FFT)。
[0057] (2)取傅立叶变换后频域数据模的平方为X(k),k为所对应的频率。 [0058] (3)对X(k)进行三角滤波。
[0059] X(k)经过三角滤波后得到一组系数m1,m2,...,mp(p为三角滤波器的个数),mi(i=1,2,..,,p)的计算公式为
[0060]
[0061] Ni为第i个三角滤波器的采样点数,Hi(k)是三角滤波器频率响应函数。 [0062] (4)利用余弦变换求倒谱系数Ci(i=1,2,...,n){Ci}i=1,2,..,12即为所求的MFCC特征矢量,本发明中取三角滤波器个数P=16,倒谱系数的维数n=12。
[0063] 1.2说话人声学模型创建
[0064] 说话人声学模型通常有两种统计模型,一种是隐马尔可夫模型,一种是高斯混合模型(GMM模型)。隐马尔可夫模型是用于文本有关的声学模型,高斯混合模型用于文本无关的声学模型。本发明以GMM模型为例详细说明说话人声学模型的建立过程。 [0065] 说话人GMM声学模型创建过程是利用上面提取的说话人声音特征矢量,并根据GMM算法,求解最佳模型参数的过程,即用最佳的声学模型参数代表说话人的声学特征。 [0066] GMM模型是多个高斯分量的加权和,它的模型参数包括高斯分量衡权值(Pi)、高斯分量的均值矢量 高斯分量的协方差矩阵(∑i),
[0067] 本发明中的协方差矩阵为对角矩阵。说话人GMM声学模型创建分为模型参数初始化阶段、模型参数优化阶段。
[0068] 1.2.1声学模型参数初始化
[0069] 说话人GMM声学模型由M(本发明中取的高斯模型维数M=32)个高斯分量组成,对模型参数初始化过程就是对各高斯分量的权值、各高斯分量的均值矢量、各高斯分量的协方差矩阵初始化。
[0070] (1)权值Pi(i=1,2,...,M)初始化
[0071]
[0072] (2)均值矢量 初始化
[0073] 从说话人声音中提取了多个特征矢量,随机的选M个特征矢量作为GMM模型均值矢量 的初始值。
[0074] (3)协方差矩阵∑i(i=1,2,...,M)初始化初始矩阵选为单位矩阵,[0075] GMM声学模型(λ)则可以表示为
[0076]
[0077] 1.2.2声学模型参数重估
[0078] 为使声学模型(λ)最好的表示说话人声音的特性,需要对初始设置的声学模型(λ)中的各参数(各高斯分量的权值Pi、各高斯分量的均值矢量 各高斯分量的协方差矩阵∑i,i=1,2,...,M)进行重估。经过重估后的新模型参数再作为当前参数进行下一次的重估,这样不停迭代直到模型收敛。本发明采用的重估方法是EM(expectation-maximization)方法。
[0079] 从说话人声音X中提取了T个M(M=12)维的MFCC特征矢量其中T为输入声音以40ms为一帧,分成的帧的数目。则说话人声音可表示为
参数重估表达式为
[0080] (1)各高斯分量的权值Pi重估
[0081]
[0082] (2)均值 的重估
[0083]
[0084] (3)协方差矩阵的重估
[0085]
[0086] 其中, 为第i高斯分量的协方差矩阵∑i, 为第i高斯分量的均值矢量, 是 在模型λ第i个高斯分量中的概率, 的表达式为
[0087]
[0088] 式中,pi是GMM声纹模型中上一次重估后的第i个高斯分量的权值, [0089]
[0090] 式中,D是特征矢量 的维数, 为受访者声学模型第i个高斯分量重估前的均值矢量;∑i为受访者声学模型第i个高斯分量重估前的协方差矩阵。
[0091] 这样,就得到了新的模型参数
[0092] (4)计算X在重估前的模型(λ)中的概率p(X|λ),同时计算X在重估后的模型 中的概率 其中,
[0093]
[0094] 式中,
[0095]
[0096] 其中,pi, 的表达式见1.2.2节, 计算方法与同p(X|λ)相同。当则 代替λ作为下一次重估的当前参数,从步骤1开始,反复迭代,直到 为止,则模型创建完成。 计算方与同p(X|λ),
[0097] 2.说话人声音识别跟踪子
[0098] 待处理的声音,通过声音过滤及分割处理,在一定程序上区分出说话声和非说话声,即如果输入声音段为非说话在声(如静音或者环境音),则该段声音肯定不是指定说话人声音,不需要对该段声音进行识别跟踪。反之,则提取当前声音段的特征矢量。把提取的特征矢量与创建好的指定说话人声学模型进行相似匹配,如果匹配成功,则当前声音段则为指定说话人的声音。
[0099] 2.1待识别声音预过滤
[0100] 用户在使用系统时,利用声音过滤及分割处理,区分出说话音和非说话音。 [0101] 也即非说话音不作为后面声音跟踪的输入,从而提高说话人声音识别跟踪的准确度。
[0102] 声音过滤及分割的方法是根据声音数据,计算声音的一些特征参数,从而区分出声音的类别。其中常用的特征参数有短时平均能量、过零率协方差、基本频率能量比、过零率周期等。下面利用这些特征参数,以静音、普通其它环境音的过滤方法为例进行详细说明。
[0103] 2.1.1静音过滤
[0104] 短时平均能量是指在一个短时音频帧内采样点所聚集的平均能量,对于静音,短时平均能量非常小,基本接近零,所以通过计算短时平均能量 可以过滤出静音段,计算方法如下。
[0105] 假定一段连续音频流x得到K个采样点,这K个采样点被分割成叠加率为50%的M个短时帧,每个短时帧和窗口函数大小假定为N,对于第m个实时帧,其短时平均能量计算公式为
[0106]
[0107] 其中,x(n)表示第m个短时帧中第n个采样值,w(n)是长度为N的窗口函数。 [0108] 2.1.2其它环境音过滤
[0109] 环境音的过滤方法是通过计算声音的过零率协方差和基本频率能量比率来实现的。对于普通的对话,过零率变化很大,其过零率协方差也就大。并且声音能量主要集中在200HZ-3.4KHZ之间,所以其基本频率能量也就大。
[0110] 过零率协方差的计算式为
[0111]
[0112] 其中,N为音频帧窗口的个数;xi为每个音频帧窗口的过零率;u为所有音频帧窗口的过零率数学期望;E(·)为数学期望运算符基本频率能量计算式为
[0113]
[0114] 其中,T表示声音的时间长度;n表示频谱分析时得到的频率范围;xj(k)表示在时间j频率范围在基本频率以内的声音能量;xj(i)表示在时间j所有频率带的能量。 [0115] 2.2待识别声音特征提取
[0116] 本发明提取的声学特征矢量计算方法见1.1节。
[0117] 2.3待识别声音中说话人声音识别跟踪
[0118] 2.3.1相似概率计算方法
[0119] 说话人声音跟踪的目的是把整个节目中关于指定说话人的声音段标注出来,其具体实施步骤是把2.2节提取的待识别声音的特征矢量与创建好了的指定说话人的声学模型进行相似匹配,计算特征矢量与指定说话人声学模型匹配相似概率。
[0120] 特征矢量与说话人声学模型(λ)匹配相似概率计算式为
[0121]
[0122] 式中, 是D维的待识别声音的特征矢量;pi(i=1,2,...,M)为说话人声学模型高斯分量的权值
[0123]
[0124] 式中, 为说话人声学模型第i个高斯分量的均值矢量;∑i为说话人声学模型第i个高斯分量协方差矩阵。
[0125] 当计算出的匹配相似度大于一定阈值时,则表示当前声音为指定说话人的声音,反之则当前声音不是指定说话人的声音。下面将对匹配相似度阈值的选取进行详细的讨论。
[0126] 2.3.2相似概率阈值的选取
[0127] 对于开集说话人识别,普通的做法是采用一个公共的阈值来确定接受还是拒绝当前的话者,然而这种固定阈值决策方法风险性大,效果不理想。
[0128] 本发明的话者决策方法是采用一种自适应的方法,根据GMM算法训练出一个当前说话人的相似概率阈值,其具体做法是首先用一段话者音频(≥5秒)建立一个GMM模型。利用2.3.1节匹配概率计算公式,计算出这段话者音频的每一帧与话者模型的匹配概率Pi(i=1,2,…N,N为当前音频的帧数),通过实验发现这些相似度概率服从正态分布,计算出这N个相似概率的均值u和标准差σ,99%以上的概率值都落入区间(u-3σ,u+3σ),取u-3σ作为当前说话人的相似度阈值。
[0129] 另外因为单独的一帧音频在进行识别时,可能会被误判,这样就会对最终的识别产生影响。为了使这种误判的可能性降低到几乎为零,需要对识别概率相似度进行优化。 [0130] 假设有一个待检测语音段,它的各个矢量分别为: 把这些特征矢量分为重叠的几部分,分法如下:
[0131]
[0132] 我们以每一部分作为判断的基本单元,即被认为是一个独立的测试音,在每一基本单元中,当前帧的判断以前面各帧的判断结果作为参考,最后计算该基本单元中哪个人发的语音帧数与总帧数的比值最大,且大于当前话者的相似概率阈值,就认为该单元是此人发出的语音。采用上述方法,我们对超过100多个说话人声音进行识别跟踪测试,无一出现误识别误跟踪的现象。
[0133] 3.说话人声音变调子系统
[0134] 目前的声音变调方法比较多,应用的比较多的方法有相位合成、时域基音同步交叠相加法、频域基音同步交叠相加法)、波形相似法。各种方法都有各自的优缺点,本发明以波形相似法为例详细说明声音变调的实现过程。
[0135] 把识别跟踪成功得到的说话人声音段输入到说话人声音变调子系统中,对声音进行变调处理,其具体实施步骤包括选取声音处理帧、声音帧的重采样、相邻声音帧的拼接。 [0136] 说话人声音变调子系统框图如附图(4)所示。
[0137] 3.1选取最佳音频帧
[0138] 选取声音处理帧主要包括帧长的选择和处理帧起始位置的选择,从而实现效果最佳的变调处理。
[0139] 3.1.1帧长的选择
[0140] 帧长是影响变调效果的一个重要因素,如果帧长选择的太小,低频部分就会失真,如果帧长选择过大又会引入不连续的回声,尤其在升调处理的时候更为明显。经过大量的测试,具体实施时帧长选择40ms(如果一段声音的采样频率为fs,那么一帧所包含的样点数为N=fs*40*0.001)比较合适。
[0141] 3.1.2音频帧起始位置的选择
[0142] 在选择下一步要处理的帧时,不能任意从原始声音段中选取,因为考虑到要保持变调前后声音时间长度不变,也就是样点个数不变,选取的每帧起点位置应由与前面已经输出帧的最后一点垂直对应的原始声音坐标点位置决定。
[0143] 3.2音频帧重采样
[0144] 通过重采样使声音的频谱收缩或扩展,从而达到变调的效果。离散信号的重采样方法有很多种,例如,拉格朗日插值、三次样条插值、贝塞尔样条插值等,这些方法多用在图形学等其它领域,对于音频领域却不理想,因为它们在改变声调的同时会引入噪声或金属音,影响了观众的听觉效果。因此我们采取限带插值法,该方法完全基于香农(Shannon)采样定理,插值后不会降低音频的质量。
[0145] 限带插值法公式如下:
[0146]
[0147] 其中, y(t)表示插入的数据,t表示插入点的坐标;x(n)表示原始信号的第n个数据;h(l)表示低通滤波响应系数,h end表示低通滤波响应系数总个数的一半,L表示采样点的间隔;η表示重采样系数,即变调系数;
[0148] 3.3相邻音频帧的拼接
[0149] 为保证语速和声音持续时间不变,当处理完一帧数据后,需要与前面处理过的数据进行拼接,形成完整的一段声音。但是,仅仅简单的将当前帧与前面处理帧叠加拼接,往往会带来相位的不连续,从而影响声音质量。所以,我们在拼接时,首先要在当前帧的搜索区域中寻找与前面已处理帧的淡入淡出区域最相似的匹配区,然后对二者进行淡入淡出加权叠加,使两帧的连接处平滑,保证波形的相似和相位的连续,不会破坏声音内容,不会引入噪声。
[0150] 相邻帧拼接主要包括寻找最佳匹配区和淡入淡出加权叠加两部分。 [0151] 3.3.1寻找最佳匹配区
[0152] 寻找最佳匹配区的方法一般有最大互相关系数法、最大归一化互相关系数法、最小平均幅度差系数法三种,本发明在具体实施时选用的是:最 大互相关系数法。 [0153] 计算方法如下:
[0154]
[0155] 其中,x1(n)是淡入淡出区的第n个数据,x2(k+n)是搜索区的第k个匹配区中第n个数据,N表示淡入淡出区域的长度,L表示搜索区域的长度;k是匹配区起始点的位置。使Cc最大的k值就是最佳匹配区的起始点位置。
[0156] 虽然该方法计算量比最小平均幅度差系数法偏大,但是寻找结果最为精确,而且我们用CPU的多媒体指令集编写该算法,使变调处理速度达到了超实时的运算效率。 [0157] 3.3.2淡入淡出加权叠加
[0158] 淡入淡出加权叠加中用到的是海明(Hamming)窗,Hamming窗函数表示如下: [0159]
[0160] 其中,N为Hamming窗的采样点数。
[0161] 拼接区加权叠加公式如下:
[0162]
[0163] 其中,Cross(n)是拼接区第n个数据,x1(n)是淡入淡出区的第n个数据,x2(n)是最佳匹配区的第n个数据。
[0164] 完成上述操作后,继续选定下一帧从3.1开始循环处理。
[0165] 4、声音拼接
[0166] 通过系统的识别跟踪及变调处理后,输入声音拼接单元的声音包括保持不变的声音段、识别跟踪成功并变调后的声音段。根据这些声音段在输入的待处理声音中的先后位置关系,依次的拼接排列在一起。从而实现输入声音与输出声音的等长。
[0167] 5、多个说话人声音自动跟踪变调
[0168] 以上各子系统的说明都是针对某一个指定说话人声音识别跟踪变调。 然而在实际就用中,通常事先指定几个说话人声音,在识别跟踪过程中,对几个说话人声音都需要做变调处理。所以本发明中多个说话人声音自动跟踪变调系统就是针对这种情况而设计的。 [0169] 该系统的实现方法是:系统由N个说话人声音跟踪变调系统串行组成,上一个系统的声音输出作为下一个系统的声音输入。在每个系统中,针对当前系统对应的说话人声音建立相应的声学模型,并利用声学模型对当前指定说话人的声音进行跟踪变调处理,然后把处理完成的声音输入到下一个系统中。下一个系统则用同样的方法对另外一个指定的说话人声音进行跟踪变调处理。从复此操作,直到所有指定说话人声音跟踪变调处理完成。系统串行的数目N由用户决定,比如需要对3个不同的说话人进行跟踪变调处理,则N=3。