一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

实时音频处理方法和装置、计算机存储介质、电子设备与流程

2022-06-08 11:35:08 来源:中国专利 TAG:


1.本公开实施例涉及计算机技术领域,具体而言,涉及一种实时音频处理方法、实时音频处理装置、计算机存储介质以及电子设备。


背景技术:

2.在诸多日常使用场景中,我们都需要对原本的声音进行处理,得到预设的音效,例如,在即时通信平台中发送语音消息时,将自己的声音变成萝莉或者大叔的声音。
3.相关技术中,可以通过以下两种方式对声音进行变声。一个是对原始语音信号进行变速不变调处理,将原始语音信号持续的时间拉长或者缩短,而原始语音信号的采样频率以及基频没有发生变化;另一种是,对原始语音信号进行变调不变速处理,保证原始语音信号持续时间和采样频率不变的同时,将原始语音信号的基因频率变大或者变小。
4.但是,上述两种变声方法都存在局限性,均不能对一句话中的单字做不同比例的修改,即,无法对汉字的声调进行改变。
5.因此,需要提供一种新的实时音频处理方法。
6.需要说明的是,在上述背景技术部分发明的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现要素:

7.本公开的目的在于提供一种实时音频处理方法、实时音频处理装置、计算机存储介质以及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的无法对汉字的声调进行改变的问题。
8.根据本公开的一个方面,提供一种实时音频处理方法,包括:
9.获取当前音频,对所述当前音频进行降噪处理,得到降噪语音信号;
10.通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果;
11.对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数;
12.通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频。
13.在本公开的一种示例性实施例中,通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果,包括:
14.设置所述降噪语音信号的前置无话段帧数;
15.对所述降噪语音信号进行分帧加窗,获取所述降噪语音信号的帧数;
16.在确定所述降噪语音信号的帧数小于所述前置无话段帧数时,所述降噪语音信号的检测结果为无话段。
17.在本公开的一种示例性实施例中,通过所述降噪语音信号的帧数,对所述降噪语
音信号进行有话段检测,得到检测结果,还包括:
18.在确定所述降噪语音信号的帧数大于所述前置无话段帧数时,获取预设的所述降噪语音信号的初始能量阈值以及过零率阈值;
19.获取所述降噪语音信号中帧数位于所述前置无话段帧数之前的帧,通过位于所述前置无话段帧数之前的帧的能量以及过零率,对所述初始能量阈值以及所述过零率阈值进行更新,得到第一能量阈值以及第一过零率阈值;
20.通过所述第一能量阈值以及所述第一过零率阈值,对所述降噪语音信号中帧数位于所述前置无话段帧数后面的帧进行判断,得到所述降噪语音信号的检测结果。
21.在本公开的一种示例性实施例中,通过所述第一能量阈值以及所述第一过零率阈值,对所述降噪语音信号中帧数位于所述前置无话段帧数后面的帧进行判断,得到所述降噪语音信号的检测结果,包括:
22.获取所述降噪语音信号中帧数位于所述前置无话段帧数之后的每一帧的能量以及过零率;
23.当位于所述前置无话段帧数后面的每一帧的能量大于所述第一能量阈值,以及每一帧的过零率大于所述第一过零率阈值时,所述降噪语音信号的检测结果为有话段。
24.在本公开的一种示例性实施例中,对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数,包括:
25.建立输出语音信号与所述降噪语音信号之间的关系,并通过所述输出语音信号定义线性预测器;
26.通过所述输出语音信号与所述线性预测器的差值,得到线性预测误差;
27.利用所述线性预测误差得到最小均方误差,通过所述最小均方误差,得到所述降噪语音信号的线性预测方程组;
28.对所述线性预测方程组求解,得到与所述降噪语音信号对应的声道模型的声道模型参数以及增益系数。
29.在本公开的一种示例性实施例中,通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频,包括:
30.获取所述声道模型的传递函数,通过所述声道模型参数、所述增益系数以及所述传递函数,得到声道模型;
31.当所述降噪语音信号的检测结果为无话段时,利用高斯白噪声冲击所述声道模型,得到与所述降噪语音信号对应的输出信号;
32.当所述降噪语音信号的检测结果为有话段时,获取预设的基音周期;
33.利用所述预设的基音周期的脉冲串冲击所述声道模型,得到与所述降噪语音信号对应的输出信号;
34.将所述输出信号的每一帧进行叠加,得到与所述当前音频对应的目标音频。
35.在本公开的一种示例性实施例中,将所述输出信号的每一帧进行叠加,得到与所述当前音频对应的目标音频,包括:
36.获取所述输出信号中相邻两帧的帧重叠;
37.通过三角窗对所述帧重叠进行加窗并叠加,得到叠加后的语音信号;
38.对所述叠加后的语音信号进行平滑处理得到与所述当前音频对应的目标音频。
39.根据本公开的一个方面,提供一种实时音频处理装置,包括:
40.降噪模块,用于获取当前音频,对所述当前音频进行降噪处理,得到降噪语音信号;
41.检测结果获取模块,用于通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果;
42.声道模型确定模块,用于对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数;
43.目标音频生成模块,用于通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频。
44.根据本公开的一个方面,提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一示例性实施例所述的实时音频处理方法。
45.根据本公开的一个方面,提供一种电子设备,包括:
46.处理器;以及
47.存储器,用于存储所述处理器的可执行指令;
48.其中,所述处理器配置为经由执行所述可执行指令来执行上述任一示例性实施例所述的实时音频处理方法。
49.本公开实施例提供的一种实时音频处理方法,获取当前音频,对所述当前音频进行降噪处理,得到降噪语音信号;通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果;对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数;通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频;一方面,由于当得到降噪语音信号之后,对降噪语音信号进行有话段检测,得到当前音频的检测结果,并且对降噪语音信号进行线性预测分析,得到与当前音频对应的声道模型,最后根据检测结果以及声道模型得到与当前音频对应的目标音频,解决了现有技术中无法对汉字的声调进行改变的问题,提高了实时音频处理的效率;另一方面,对降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数,保证了输出的目标音频与接收到的当前音频中包括的汉字的一致性。
50.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
51.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
52.图1示意性示出根据本发明示例实施例的一种实时音频处理方法的流程图。
53.图2示意性示出根据本发明示例实施例的一种实时音频处理系统的框图。
54.图3示意性示出根据本发明示例实施例的一种通过降噪语音信号的帧数对降噪语音信号进行有话段检测的方法流程图。
55.图4示意性示出根据本发明示例实施例的另一种通过降噪语音信号的帧数对降噪
语音信号进行有话端检测的方法流程图。
56.图5示意性示出根据本发明示例实施例的一种根据第一能量阈值以及第一过零率阈值对降噪语音信号中帧数位于前置无话段帧数之后的帧进行判断得到降噪语音信号的检测结果的方法流程图。
57.图6示意性示出根据本发明示例实施例的一种对降噪语音信号进行线性预测分析得到声道模型的声道模型参数以及增益系数的方法流程图。
58.图7示意性示出根据本发明示例实施例的一种通过检测结果以及声道模型的声道模型参数和增益系数,得到与当前音频对应的目标音频的方法流程图。
59.图8示意性示出根据本发明示例实施例的一种将输出信号的每一帧进行叠加,得到与当前音频对应的目标音频的方法流程图。
60.图9示意性示出根据本发明示例实施例的一种实时音频处理装置的框图。
61.图10示意性示出根据本发明示例实施例的用于实现上述实时音频处理方法的电子设备。
具体实施方式
62.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本发明的各方面变得模糊。
63.此外,附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
64.在诸多日常场景中,都需要对原本的声音进行处理,得到想要的音效。例如,在即时通信平台中发送语音消息时,将自己的声音变成萝莉或者大叔的声音;在直播中,主播可以使用变声器之类的软件对自己的声音进行变声。
65.相关技术中,存在两种变声方式:一种是,对原始语音信号进行变速不变调处理,将原始语音信号持续的时间拉长或者缩短,而原始语音信号的采样频率以及基音频率没有发生改变;另一种是,对原始语音信号进行变调不变速处理,保证原始语音信号持续时间和采样频率不变的同时,将原始语音信号的基音频率变大或者变小,例如,设置变调因子,通过变调因子对原始音频中的字段基音频率进行调整,当变调因子为1.2时,无论原始音频中字段的基音频率是200hz还是1000hz,都会被放大1.2倍。
66.但是,对中文等一些具有声调的语言体系来说,声调的变化为一段语音信号带来了感情色彩,即,语气的变化,声调的变化通常和基音频率的变化息息相关,例如,阴平(第
一声)发音的字通常基音频率变化不大,近似一条直线,而阳平(第二声)发音的字通常基音频率有明显的上升趋势,因此,上述两种变声方式均不能对汉字的声调进行改变。
67.基于上述一个或者多个问题,本示例实施方式中首先提供了一种实时音频处理方法,该方法可以运行于设备终端,该设备终端可以包括台式计算机、便携式计算机、智能手机和平板电脑等等;当然,本领域技术人员也可以根据需求在其他平台运行本发明的方法,本示例性实施例中对此不做特殊限定。
68.参考图1所示,该实时音频处理方法可以包括步骤s110-步骤s140:
69.步骤s110.获取当前音频,对所述当前音频进行降噪处理,得到降噪语音信号;
70.步骤s120.通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果;
71.步骤s130.对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数;
72.步骤s140.通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频。
73.上述实时音频处理方法,获取当前音频,对所述当前音频进行降噪处理,得到降噪语音信号;通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果;对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数;通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频;一方面,由于当得到降噪语音信号之后,对降噪语音信号进行有话段检测,得到当前音频的检测结果,并且对降噪语音信号进行线性预测分析,得到与当前音频对应的声道模型,最后根据检测结果以及声道模型得到与当前音频对应的目标音频,解决了现有技术中无法对汉字的声调进行改变的问题,提高了实时音频处理的效率;另一方面,对降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数,保证了输出的目标音频与接收到的当前音频中包括的汉字的一致性。
74.以下,对本公开示例实施例的实时音频处理方法中涉及的各步骤进行详细的解释以及说明。
75.首先,对本公开示例实施例的应用场景以及发明目的进行解释以及说明。具体的,本公开示例实施例可以应用于通信平台或者直播场景中,对用户或者主播的声音的声调进行改变。
76.在本公开中,以接收到的当前音频为基础,对当前音频进行降噪处理,削弱接收到的当前音频中的噪声信号,保留当前音频的语音信号;当得到降噪语音信号之后,对降噪语音信号进行有话段检测,得到降噪语音信号的检测结果,并且,对降噪语音信号逐帧进行线性预测分析,得到与当前语音对应的声道模型的声道模型参数和增益系数,保证了通过该声道模型输出的目标音频与获取的当前音频中包括的汉字的一致性;最后,通过降噪语音信号的检测结果以及声道模型,得到与当前音频对应的目标音频,实现了对实时音频的处理,以及完成了对当前音频中包括的汉字的声调的改变,提高了实时音频处理的效率。
77.其次,对本公开实例实施例中涉及到的实时音频处理系统进行解释以及说明。参考图2所述,该实时音频处理系统可以包括:降噪模块210、话段检测模块220、声道模型参数预测模块230以及目标音频合成模块240;其中,降噪模块210,用于对获取到的当前音频进
行降噪处理,得到降噪语音信号;话段检测模块220,与降噪模块210网络连接,用于获取降噪模块210处理得到的降噪语音信号,通过得到的降噪语音信号的帧数以及降噪语音信号中包括的每一帧的能量以及过零率,得到降噪语音信号的检测结果,其中,降噪语音信号的检测结果为有话段或者无话段;声道模型参数预测模块230,与降噪模块210网络连接,用于获取话段检测模块220中检测结果为有话段的降噪语音信号,对检测结果为有话段的降噪语音信号进行线性预测分析,得到与当前音频对应的声道模型参数以及增益系数,通过该声道模型参数和增益系数可以得到与当前音频对应的声道模型,保证了通过该声道模型输出的目标音频与当前音频中包括的汉字的一致性;目标音频合成模块240与话段检测模块220、声道模型参数预测模块230网络连接,用于获取话段检测模块220中得到的检测结果以及声道模型参数预测模块230中得到的声道模型,当当前话段的检测结果为有话段时,通过预设的基音周期的脉冲串冲击声道模型,得到输出信号;当当前话段的检测结果为无话段时,利用高斯白噪声冲击声道模型,得到输出信号。当得到声道模型的输出信号之后,对得到的输出信号的每一帧进行叠加,得到与当前音频对应的目标音频。
78.以下,将结合图2对步骤s110-步骤s140进行详细的解释以及说明。
79.在步骤s110中,获取当前音频,对所述当前音频进行降噪处理,得到降噪语音信号。
80.在语音通讯或者直播等实时场景中,通过麦克风收入的语音信号总会携带一些环境噪声,通常认为噪声和语音信号是独立的,即,接收到的当前音频x(t)是由语音信号s(t)和随机高斯白噪声n(t)相加组成,x(t)=s(t) n(t)。为了提高对接收到的当前音频的处理效率,在接收到当前音频后,可以对当前音频进行降噪处理,得到降噪语音信号。在对当前音频进行降噪时,由于随机高斯白噪声的频率高于纯净语音信号的频率,因此,可以选择低通滤波器对当前音频x(t)中的随机高斯白噪声进行过滤,在本示例实施中,可以通过时域iir滤波器对当前音频进行降噪处理,其中,iir滤波器的采样率包括但不限于16000hz、32000hz、44100hz、48000hz等,在本示例实施例中,对滤波器的采样信号不做具体限定。
81.在步骤s120中,通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果。
82.在本示例实施例中,参考图3所示,通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果,可以包括步骤s310-步骤s330:
83.步骤s310.设置所述降噪语音信号的前置无话段帧数;
84.步骤s320.对所述降噪语音信号进行分帧加窗,获取所述降噪语音信号的帧数;
85.步骤s330.在确定所述降噪语音信号的帧数小于所述前置无话段帧数时,所述降噪语音信号的检测结果为无话段。
86.以下,将对步骤s310-步骤s330进行解释以及说明。具体的,在对降噪语音信号进行有话段检测时,首先,设置降噪语音信号的前置无话段帧数,该前置无话段帧数的值可以为5帧,也可以为10帧,在本示例实施例中对前置无话段帧数的值不做具体限定,当前置无话段帧数为10帧时,对应的时间约为0.1秒,因此,可以用前置无话段帧数对降噪语音信号进行初步判断,当接收到的降噪语音信号的帧数小于前置无话段帧数时,该接收到的降噪语音信号可以被判定为无话段;然后,对降噪语音信号进行分帧,并对分帧后的降噪语音信号进行加窗,得到降噪语音信号的帧数;通过加窗防止了频谱泄露,其中,在对降噪语音信
号进行分帧时,当降噪语音信号的长度为l,分帧的帧长为lw,帧移为li时,分帧后的总帧数为(l-lw)/li 1;对分帧后的降噪语音信号进行加窗时窗函数可以为矩形窗,也可以为海宁窗,还可以为汉明窗,在本示例实施例中对窗函数不做具体限定;当得到降噪语音信号的帧数后,可以对降噪语音信号的帧数与前置无话段帧数进行对比,当降噪语音信号的帧数小于前置无话段帧数时,该降噪语音信号的检测结果为无话段。
87.进一步的,当降噪语音信号的帧数大于前置无话段帧数时,参考图4所示,通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果,还可以包括步骤s410-步骤s430:
88.步骤s410.在确定所述降噪语音信号的帧数大于所述前置无话段帧数时,获取预设的所述降噪语音信号的初始能量阈值以及过零率阈值;
89.步骤s420.获取所述降噪语音信号中帧数位于所述前置无话段帧数之前的帧,通过位于所述前置无话段帧数之前的帧的能量以及过零率,对所述初始能量阈值以及所述过零率阈值进行更新,得到第一能量阈值以及第一过零率阈值;
90.步骤s430.通过所述第一能量阈值以及所述第一过零率阈值,对所述降噪语音信号中帧数位于所述前置无话段帧数后面的帧进行判断,得到所述降噪语音信号的检测结果。
91.以下,将对步骤s410-步骤s430进行进一步的解释以及说明。具体的,在确定降噪语音信号的帧数大于前置无话段帧数时,获取预设的降噪语音信号的初始能量阈值以及过零率阈值;然后,获取降噪语音信号中位于前置无话段帧数之前的帧,通过降噪语音信号中位于前置无话段帧数之前的每一帧的能量以及过零率阈值对初始能量阈值以及过零率阈值进行更新,得到第一能量阈值ti以及第一过零率阈值wj:
[0092][0093][0094]
其中,在等式(1)中,s为降噪语音信号的帧数;在对初始能量阈值进行更新得到第一能量阈值ti时,对于降噪语音信号中位于前置无话段帧数之前的任一帧i,主要通过该第i帧的能量e以及第i帧的前一帧更新得到的能量阈值t
i-1
得到。在等式(2)中,s为降噪语音信号的帧数;在对过零率阈值进行更新得到第一过零率值wj时,对于降噪语音信号中位于前置无话段帧数之前的任一帧j,主要通过该第j帧的过零率zcr以及第j帧的前一帧更新得到的过零率阈值w
j-1
得到。进一步的,第i帧的能量e见等式(3),第j帧的过零率zcr见等式(4):
[0095][0096][0097]
其中,s为降噪语音信号的帧数,x[i]为第i个样本点的语音信号。
[0098]
当得到第一能量阈值以及第一过零率阈值之后,可以根据第一能量阈值以及第一过零率阈值对降噪语音信号中位于前置无话段帧数之后的帧进行判断,进而得到降噪语音信号的检测结果。
[0099]
再进一步的,在本示例实施例中,参考图5所示,通过所述第一能量阈值以及所述第一过零率阈值,对所述降噪语音信号中帧数位于所述前置无话段帧数后面的帧进行判断,得到所述降噪语音信号的检测结果,可以包括步骤s510以及步骤s520:
[0100]
步骤s510.获取所述降噪语音信号中帧数位于所述前置无话段帧数后面的每一帧的能量以及过零率;
[0101]
步骤s520.当位于所述前置无话段帧数之后的每一帧的能量大于所述第一能量阈值,以及每一帧的过零率大于所述第一过零率阈值时,所述降噪语音信号的检测结果为有话段。
[0102]
以下,将对步骤s510、步骤s520进行进一步的解释以及说明。具体的,首先,获取降噪语音信号中位于前置无话段帧数之后的每一帧的能量以及过零率,对每一帧的能量与第一过零率阈值进行相比,对每一帧的过零率与第一过零率阈值进行相比,在确定降噪语音信号中位于前置无话段帧数之后的每一帧的能量大于第一能量阈值以及每一帧的过零率大于第一过零率阈值时,该降噪语音信号被标记为有话段,即,该降噪语音信号的检测结果为有话段。
[0103]
在本示例实施例中,通过更新初始能量阈值、过零率阈值以及设置前置无话段帧数,当降噪语音信号的帧数小于前置无话段帧数时,将该降噪语音信号标记为无话段,当降噪语音信号的帧数不小于前置无话段帧数时,通过降噪语音信号中位于前置无话段帧数之前的每一帧的能量对初始能量阈值进行更新,得到第一能量阈值,以及每一帧的过零率对过零率阈值进行更新,得到第一过零率阈值,通过第一能量阈值以及第一过零率阈值对位于前置无话段帧数之后的每一帧进行判断,得到降噪语音信号的检测结果,提高了降噪语音信号的有话段检测的效率。
[0104]
在步骤s130中,对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数。
[0105]
其中,线性预测分析是指,一个语音信号的采样值可以用过去若干个语音采样值的线性组合来逼近,可以通过实际语音采样值和线性预测值之间差值的最小均方误差逼近来决定唯一的一组预测系数。即,线性预测分析的目的是确定与降噪语音信号对应的声道模型。
[0106]
在本示例实施例中,参考图6所示,对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数,可以包括步骤s610-步骤s640:
[0107]
步骤s610.建立输出语音信号与所述降噪语音信号之间的关系,并通过所述输出语音信号定义线性预测器;
[0108]
步骤s620.通过所述输出语音信号与所述线性预测器的差值,得到线性预测误差;
[0109]
步骤s630.利用所述线性预测误差得到最小均方误差,通过所述最小均方误差,得到所述降噪语音信号的线性预测方程组;
[0110]
步骤s640.对所述线性预测方程组求解,得到与所述降噪语音信号对应的声道模型的声道模型参数以及增益系数。
[0111]
以下,将对步骤s610-步骤s640进行进一步的解释以及说明。具体的,首先,建立通过声道模型输出语音信号与输入至该声道模型的降噪语音信号之间的关系,其中,输出语音信号与降噪语音信号之间的关系可以参考等式(5):
[0112][0113]
其中,y[n]为第n个时刻降噪语音信号通过声道系统输出的语音信号,s为降噪语音信号的帧数,ai为声道模型的声道模型参数,g为增益系数,x[n]为第n个时刻输入声道模型的降噪语音信号。
[0114]
在建立好输出语音信号与降噪语音信号之间的关系之后,可以通过输出语音信号定义线性预测器p[n],参考等式(6):
[0115][0116]
当得到输出语音信号y[n]以及线性预测器p[n]之后,可以通过输出语音信号y[n]与线性预测器p[n]之间的差值,得到线性预测误差,如等式(7):
[0117][0118]
线性预测分析的基本问题是寻找一组声道模型参数ai,使得线性预测误差e[n]在某个准则下最小,而该声道模型参数即为声道模型的近似替代。其中,准则可以为最小均方误差准则,也可以为其他准则,在本示例实施例中对准则不做具体限定。当准则为最小均方误差准则时,可以通过线性预测误差得到最小均方误差e[e],如等式(8):
[0119][0120]
声道模型参数ai对e[e]的偏导数应该为0时,最小均方误差e[e]最小,因此,可以通过求偏导数可以建立线性预测方程组,如等式(9)
[0121][0122]
在等式(9)中,1≤j≤0。对等式(9)进行求解,即可得到声道模型的声道模型参数ai以及增益系数g。
[0123]
通过对降噪语音信号中包括的每一帧语音信号的线性预测分析,得到与降噪语音信号对应的声道模型,提高了通过该输出声道模型输出的语音信号与输入的降噪语音信号中包括的文字的一致性。
[0124]
在步骤s140中,通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频。
[0125]
在本示例实施例中,参考图7所示,通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频,可以包括步骤s710-步骤s750:
[0126]
步骤s710.获取所述声道模型的传递函数,通过所述声道模型参数、所述增益系数以及所述传递函数,得到声道模型;
[0127]
步骤s720.当所述降噪语音信号的检测结果为无话段时,利用高斯白噪声冲击所述声道模型,得到与所述降噪语音信号对应的输出信号;
[0128]
步骤s730.当所述降噪语音信号的检测结果为有话段时,获取预设的基音周期;
[0129]
步骤s740.利用所述预设的基音周期的脉冲串冲击所述声道模型,得到与所述降噪语音信号对应的输出信号;
[0130]
步骤s750.将所述输出信号的每一帧进行叠加,得到与所述当前音频对应的目标音频。
[0131]
以下,将对步骤s710-步骤s750进行解释以及说明。具体的,首先,通过预测得到的
声道模型参数ai以及增益系数g之后,可以获取声道模型的传递函数,通过该传递函数得到声道模型的具体表达形式,声道模型的传递函数如等式(10):
[0132][0133]
其中,h(z)为声道模型的传递函数,a(z)和b(z)是关于z的多项式,z为输入声道模型的降噪语音信号,g为增益系数,为了便于计算,可以采用全极点模型来表示传递函数,即令a(z)=1时,此时传递函数如等式(11)
[0134][0135]
可以将线性预测分析得到的声道模型参数ai以及增益系数g带入等式(11)中,得到声道模型的具体表达形式;然后,当降噪语音信号的检测结果为无话段时,通过高斯白噪声冲击如等式(11)所示的声道模型,得到与当前音频对应的输出语音信号;当降噪语音信号的检测结果为有话段时,获取预设的基音周期,利用预设的基音周期的脉冲串冲击如等式(11)所示的声道模型,得到与接收到的当前音频对应的输出语音信号;最后,对输出信号的每一帧进行叠加,得到与当前音频对应的目标音频。
[0136]
在本示例实施例中,根据线性时不变的性质,输入语音信号的周期也是输出语音信号的周期,在语音信号中的周期被称为基音周期,该基音周期的倒数是基音频率,因此,通过固定的基音周期可以生成基音频率不变的语音信号,去掉了当前音频中包括的汉字的声调,达到了拉平音频中声调的效果。
[0137]
进一步的,还可以对预设的基音周期的值进行修改,可以实现拉高或者降低当前音频的基音频率,实现改变说话人性别的效果。
[0138]
在本示例实施例中,参考图8所示,将所述输出信号的每一帧进行叠加,得到与所述当前音频对应的目标音频,可以包括步骤s810-步骤s830:
[0139]
步骤s810.获取所述输出信号中相邻两帧的帧重叠;
[0140]
步骤s820.通过三角窗对所述帧重叠进行加窗并叠加,得到叠加后的语音信号;
[0141]
步骤s830.对所述叠加后的信号进行平滑处理得到与所述当前音频对应的目标音频。
[0142]
以下,将对步骤s810-步骤s830进行解释以及说明。具体的,当得到输出语音信号之后,由于输出语音信号相邻两帧之间存在重叠,其重叠大小为帧长减去帧移,因此,在对输出语音信号进行叠加是不能简单直接相加,可以采用两个三角窗对输出语音信号相邻两帧之间的重叠部分进行加窗之后再进行叠加。因此,首先,获取输出信号中相邻两帧之间的帧重叠,通过两个三角窗对帧重叠进行加窗,并对加窗之后的输出语音信号进行叠加,得到叠加后的语音信号,对该叠加后的语音信号进行平滑处理,得到与当前音频对应的目标音频。其中,可以采用中值滤波器对叠加后的语音信号中相位不连续的地方进行平滑处理,得到目标音频。
[0143]
当相邻两帧语音信号分别为x1[n]和x2[n],相邻两帧重叠部分长度即为l0,则两个三角窗可以参考等式(12)以及等式(13):
[0144]
[0145][0146]
叠加后的语音信号为等式(14)
[0147]
y[n]=w1[n]*x1[n] w2[n]*x2[n],n=1,2,

,l0ꢀꢀꢀꢀꢀꢀ
(14)
[0148]
本公开示例实施例提供的实时音频处理方法至少具有以下优点:一方面,获取当当前音频之后,可以对接收到的当前音频进行有话段检测,提高了实时音频处理的效率;另一方面,对当前音频进行降噪处理后得到的降噪语音信号进行逐帧线性预测分析,得到与当前音频对应的声道模型,保证了通过该声道模型得到的输出语音信号中包括的汉字与当前音频中包括的汉字的一致性。
[0149]
本公开示例实施例还提供了一种实时音频处理装置,参考图9所示,可以包括:降噪模块910、检测结果获取模块920、声道模型确定模块930以及目标音频生成模块940。其中:
[0150]
降噪模块910,用于获取当前音频,对所述当前音频进行降噪处理,得到降噪语音信号;
[0151]
检测结果获取模块920,用于通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果;
[0152]
声道模型确定模块930,用于对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数;
[0153]
目标音频生成模块940,用于通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频。
[0154]
上述实时音频处理装置中各模块的具体细节已经在对应的实时音频处理方法中进行了详细的描述,因此此处不再赘述。
[0155]
在本公开的一种示例性实施例中,通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果,包括:
[0156]
设置所述降噪语音信号的前置无话段帧数;
[0157]
对所述降噪语音信号进行分帧加窗,获取所述降噪语音信号的帧数;
[0158]
在确定所述降噪语音信号的帧数小于所述前置无话段帧数时,所述降噪语音信号的检测结果为无话段。
[0159]
在本公开的一种示例性实施例中,通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果,还包括:
[0160]
在确定所述降噪语音信号的帧数大于所述前置无话段帧数时,获取预设的所述降噪语音信号的初始能量阈值以及过零率阈值;
[0161]
获取所述降噪语音信号中帧数位于所述前置无话段帧数之前的帧,通过位于所述前置无话段帧数之前的帧的能量以及过零率,对所述初始能量阈值以及所述过零率阈值进行更新,得到第一能量阈值以及第一过零率阈值;
[0162]
通过所述第一能量阈值以及所述第一过零率阈值,对所述降噪语音信号中帧数位于所述前置无话段帧数后面的帧进行判断,得到所述降噪语音信号的检测结果。
[0163]
在本公开的一种示例性实施例中,通过所述第一能量阈值以及所述第一过零率阈值,对所述降噪语音信号中帧数位于所述前置无话段帧数后面的帧进行判断,得到所述降
噪语音信号的检测结果,包括:
[0164]
获取所述降噪语音信号中帧数位于所述前置无话段帧数之后的每一帧的能量以及过零率;
[0165]
当位于所述前置无话段帧数后面的每一帧的能量大于所述第一能量阈值,以及每一帧的过零率大于所述第一过零率阈值时,所述降噪语音信号的检测结果为有话段。
[0166]
在本公开的一种示例性实施例中,对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数,包括:
[0167]
建立输出语音信号与所述降噪语音信号之间的关系,并通过所述输出语音信号定义线性预测器;
[0168]
通过所述输出语音信号与所述线性预测器的差值,得到线性预测误差;
[0169]
利用所述线性预测误差得到最小均方误差,通过所述最小均方误差,得到所述降噪语音信号的线性预测方程组;
[0170]
对所述线性预测方程组求解,得到与所述降噪语音信号对应的声道模型的声道模型参数以及增益系数。
[0171]
在本公开的一种示例性实施例中,通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频,包括:
[0172]
获取所述声道模型的传递函数,通过所述声道模型参数、所述增益系数以及所述传递函数,得到声道模型;
[0173]
当所述降噪语音信号的检测结果为无话段时,利用高斯白噪声冲击所述声道模型,得到与所述降噪语音信号对应的输出信号;
[0174]
当所述降噪语音信号的检测结果为有话段时,获取预设的基音周期;
[0175]
利用所述预设的基音周期的脉冲串冲击所述声道模型,得到与所述降噪语音信号对应的输出信号;
[0176]
将所述输出信号的每一帧进行叠加,得到与所述当前音频对应的目标音频。
[0177]
在本公开的一种示例性实施例中,将所述输出信号的每一帧进行叠加,得到与所述当前音频对应的目标音频,包括:
[0178]
获取所述输出信号中相邻两帧的帧重叠;
[0179]
通过三角窗对所述帧重叠进行加窗并叠加,得到叠加后的语音信号;
[0180]
对所述叠加后的语音信号进行平滑处理得到与所述当前音频对应的目标音频。
[0181]
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0182]
此外,尽管在附图中以特定顺序描述了本发明中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
[0183]
在本发明的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
[0184]
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或
程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
[0185]
下面参照图10来描述根据本发明的这种实施方式的电子设备1000。图10显示的电子设备1000仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0186]
如图10所示,电子设备1000以通用计算设备的形式表现。电子设备1000的组件可以包括但不限于:上述至少一个处理单元1010、上述至少一个存储单元1020、连接不同系统组件(包括存储单元1020和处理单元1010)的总线1030以及显示单元1040。
[0187]
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1010执行,使得所述处理单元1010执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元1010可以执行如图1中所示的步骤s110:获取当前音频,对所述当前音频进行降噪处理,得到降噪语音信号;s120:通过所述降噪语音信号的帧数,对所述降噪语音信号进行有话段检测,得到检测结果;s130:对所述降噪语音信号进行线性预测分析,得到声道模型的声道模型参数和增益系数;s140:通过所述检测结果以及所述声道模型的声道模型参数和增益系数,得到与所述当前音频对应的目标音频。
[0188]
存储单元1020可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)10201和/或高速缓存存储单元10202,还可以进一步包括只读存储单元(rom)10203。
[0189]
存储单元1020还可以包括具有一组(至少一个)程序模块10205的程序/实用工具10204,这样的程序模块10205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0190]
总线1030可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0191]
电子设备1000也可以与一个或多个外部设备1100(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1000交互的设备通信,和/或与使得该电子设备1000能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1050进行。并且,电子设备1000还可以通过网络适配器1060与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1060通过总线1030与电子设备1000的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1000使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0192]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本发明实施方式的方法。
[0193]
在本发明的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能
够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
[0194]
根据本发明的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0195]
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0196]
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0197]
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0198]
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0199]
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
[0200]
本领域技术人员在考虑说明书及实践这里发明的发明后,将容易想到本发明的其他实施例。本技术旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未发明的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由权利要求指出。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献