讲话状态的切换方法及装置、通话系统与流程

文档序号:15455784发布日期:2018-09-15 01:03阅读:259来源:国知局

本发明涉及声音处理技术领域,具体而言,涉及一种讲话状态的切换方法及装置、通话系统。



背景技术:

相关技术,在实时通话系统中,通常要对语音信号做自动回声消除处理(aec)。如果没有aec的话,说话一端会听到自己的回声,从而造成不好的体验。回声产生的机制是:说话者的语音传输到远程设备,远程设备的扬声器播放出这些声音,然后在远程的麦克风就会接收到扬声器的直达声和房间回声,这些信号再通过通信系统发回到说话者的设备上,通过扬声器播放出来,就形成了回声。由于这个时间通常比较长,所以讲话者听到这个回声会很不适。所以在通话系统中通常会有一个aec模块来消除回声。如图1所示,声音路线会有a1和a2两种路线,这时声音检测装置会检测到回声,同时讲话者会听到回声,造成混响。这时,在相对封闭的环境中,若要检测当前的讲话状态,会由于混响造成讲话状态的误判,如在有扬声器采集的讲话状态和讲话人讲话的状态判断时,容易会在讲话人讲话停顿时,由于混响的原因,系统误判断为扬声器和讲话人同时发出声音的状态,这样就会导致讲话状态出现误判,通话系统出现误差,会造成通话质量的降低,甚至出现通话噪音的情况。例如,在一种声音采集通话系统中,定义两个讲话的房间a和房间b,在房间a和房间b同时讲话时,定义为双端讲话,在房间a讲话且房间b不讲话,定义为近端讲话,在房间a不讲话且房间b讲话,定义为远端讲话,若在远端讲话出现停顿时,会很容易出现由于混响,导致房间a中的声音采集设备仍然采集到声音,将当前讲话状态误判为双端讲话或者近端讲话,这时,就会造成讲话状态出现误差,声音采集出现噪音等情况,播放出的声音让用户感到不适,用户的体验感下降。

针对上述的相关技术中由于房间内的混响,导致通话系统判断当前讲话状态出现误差,造成用户体验感下降的技术问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种讲话状态的切换方法及装置、通话系统,以至少解决相关技术中由于房间内的混响,导致通话系统判断当前讲话状态出现误差,造成用户体验感下降的技术问题。

根据本发明实施例的一个方面,提供了一种讲话状态的切换方法,所述切换方法应用于通话设备中,所述通话设备至少包括声音采集单元、声音播放单元,所述声音采集单元用于采集声音输入信号,所述声音播放单元用于播放出声音参考信号,其中声音输入信号、所述声音参考信号对应有声音波形能量值,所述方法包括:获取声音输入信号和声音参考信号;对所述声音输入信号和所述声音参考信号进行预处理,确定出声音输出信号;检测声音输入能量值、声音参考能量值,以及声音输出能量值,其中,所述声音输入能量值为所述声音输入信号对应的波形能量值,所述声音参考能量值为所述声音参考信号对应的波形能量值,所述声音输出能量值为所述声音输出信号对应的能量值;对所述声音输出能量值和所述声音输入能量值进行计算,得到声音能量比值;根据所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态;判断所述目标讲话状态与当前讲话状态是否相同,其中,所述当前讲话状态为历史时间段内的讲话状态;在判断出所述目标讲话状态与所述当前讲话状态不相同的情况下,将所述当前讲话状态切换为所述目标讲话状态。

进一步地,所述当前讲话状态为下述之一:静音状态、远端讲话状态、双端讲话状态、近端讲话状态,其中,所述静音状态为第一通话设备和第二通话设备都不发出声音的讲话状态,所述远端讲话状态为第一通话设备不发出声音、第二通话设备发出声音的讲话状态,所述双端讲话状态为所述第一通话设备和第二通话设备都发出声音的讲话状态,所述近端讲话状态为所述第一通话设备发出声音、第二通话设备不发出声音的讲话状态。

进一步地,根据所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态包括:根据所述声音输入信号和所述声音参考信号,确定第一波形信号相关值;根据所述声音输入信号和所述声音输出信号,确定第二波形信号相关值;在所述声音输入能量值大于第一预设阈值,所述声音参考能量值大于第二预设阈值、所述第一波形信号相关值大于第三预设阈值、所述第二波形信号相关值低于第四预设阈值且所述声音能量比值低于第五预设阈值的情况下,确定所述目标讲话状态为所述远端讲话状态;在所述声音输入能量值大于第六预设阈值,所述声音参考能量值大于第七预设阈值、所述第一波形信号相关值低于第八预设阈值、所述第二波形信号相关值大于第九预设阈值且所述声音能量比值大于第十预设阈值的情况下,确定所述目标讲话状态为所述双端讲话状态;在所述声音输入能量值大于第十一预设阈值,所述声音参考能量值低于第十二预设阈值、所述第一波形信号相关值低于第十三预设阈值、所述第二波形信号相关值大于第十四预设阈值且所述声音能量比值大于第十预设阈值的情况下,确定所述目标讲话状态为所述近端讲话状态;在所述声音输入能量值低于第十五预设阈值且所述声音参考能量值低于第十六预设阈值的情况下,确定所述目标讲话状态为所述静音状态。

进一步地,对所述声音输入信号和所述声音参考信号进行预处理,确定出声音输出信号包括:对所述声音输入信号和所述声音参考信号进行自适应滤波处理,得到滤波后的声音信号;将所述滤波后的声音信号作为所述声音输出信号。

进一步地,根据所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态包括:获取多个声音输入幅度值,其中,所述声音输入幅度值为所述声音输入信号对应的声音波形幅度值;根据所述多个声音输入幅度值,确定声音幅度包络线;对所述声音幅度包络线进行分析,确定幅度包络斜率值;根据所述幅度包络斜率值、所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态。

进一步地,根据所述幅度包络斜率值、所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态包括:判断所述幅度包络斜率值是否大于预设斜率值;在判断出所述幅度包络斜率值大于预设斜率值的情况下,确定讲话声音状态为第一状态;在判断出所述幅度包络斜率值不大于预设斜率值的情况下,确定所述讲话声音状态为第二状态;根据所述讲话声音状态、所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态。

进一步地,根据所述讲话声音状态、所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态包括:根据所述声音输入信号和所述声音参考信号,确定第一波形信号相关值;根据所述声音输入信号和所述声音输出信号,确定第二波形信号相关值;在所述声音输入能量值大于第一预设阈值,所述声音参考能量值大于第二预设阈值、所述第一波形信号相关值大于第三预设阈值、所述第二波形信号相关值低于第四预设阈值且所述声音能量比值低于第五预设阈值的情况下,确定所述目标讲话状态为远端讲话状态;在所述声音输入能量值大于第六预设阈值,所述声音参考能量值大于第七预设阈值、所述第一波形信号相关值低于第八预设阈值、所述第二波形信号相关值大于第九预设阈值、所述声音能量比值大于第十预设阈值的情况下,以及所述讲话声音状态为第一状态时,确定所述目标讲话状态为双端讲话状态;在所述声音输入能量值大于第十一预设阈值,所述声音参考能量值低于第十二预设阈值、所述第一波形信号相关值低于第十三预设阈值、所述第二波形信号相关值大于第十四预设阈值、所述声音能量比值大于第十预设阈值的情况下,以及所述讲话声音状态为第一状态时,确定所述目标讲话状态为近端讲话状态;在所述声音输入能量值低于第十五预设阈值且所述声音参考能量值低于第十六预设阈值的情况下,确定所述目标讲话状态为静音状态。

根据本发明实施例的另一方面,还提供了一种讲话状态的切换装置,所述切换装置应用于通话设备中,所述通话设备至少包括声音采集单元、声音播放单元,所述声音采集单元用于采集声音输入信号,所述声音播放单元用于播放出声音参考信号,其中声音输入信号、所述声音参考信号对应有声音波形能量值,所述装置包括:获取单元,用于获取声音输入信号和声音参考信号;预处理单元,用于对所述声音输入信号和所述声音参考信号进行预处理,确定出声音输出信号;检测单元,用于检测声音输入能量值、声音参考能量值,以及声音输出能量值,其中,所述声音输入能量值为所述声音输入信号对应的波形能量值,所述声音参考能量值为所述声音参考信号对应的波形能量值,所述声音输出能量值为所述声音输出信号对应的能量值;计算单元,用于根据所述声音输出能量值和所述声音输入能量值进行计算,得到声音能量比值;确定单元,用于根据所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态;判断单元,用于判断所述目标讲话状态与当前讲话状态是否相同,其中,所述当前讲话状态为历史时间段内的讲话状态;切换单元,用于在判断出所述目标讲话状态与所述当前讲话状态不相同的情况下,将所述当前讲话状态切换为所述目标讲话状态。

进一步地,所述当前讲话状态为下述之一:静音状态、远端讲话状态、双端讲话状态、近端讲话状态,其中,所述静音状态为第一通话设备和第二通话设备都不发出声音的讲话状态,所述远端讲话状态为第一通话设备不发出声音、第二通话设备发出声音的讲话状态,所述双端讲话状态为所述第一通话设备和第二通话设备都发出声音的讲话状态,所述近端讲话状态为所述第一通话设备发出声音、第二通话设备不发出声音的讲话状态。

进一步地,所述确定单元包括:第一确定模块,用于根据所述声音输入信号和所述声音参考信号,确定第一波形信号相关值;第二确定模块,用于根据所述声音输入信号和所述声音输出信号,确定第二波形信号相关值;第三确定模块,用于在所述声音输入能量值大于第一预设阈值,所述声音参考能量值大于第二预设阈值、所述第一波形信号相关值大于第三预设阈值、所述第二波形信号相关值低于第四预设阈值且所述声音能量比值低于第五预设阈值的情况下,确定所述目标讲话状态为所述远端讲话状态;第四确定模块,用于在所述声音输入能量值大于第六预设阈值,所述声音参考能量值大于第七预设阈值、所述第一波形信号相关值低于第八预设阈值、所述第二波形信号相关值大于第九预设阈值且所述声音能量比值大于第十预设阈值的情况下,确定所述目标讲话状态为所述双端讲话状态;第五确定模块,用于在所述声音输入能量值大于第十一预设阈值,所述声音参考能量值低于第十二预设阈值、所述第一波形信号相关值低于第十三预设阈值、所述第二波形信号相关值大于第十四预设阈值且所述声音能量比值大于第十预设阈值的情况下,确定所述目标讲话状态为所述近端讲话状态;第六确定模块,用于在所述声音输入能量值低于第十五预设阈值且所述声音参考能量值低于第十六预设阈值的情况下,确定所述目标讲话状态为所述静音状态。

进一步地,所述预处理单元包括:处理模块,用于对所述声音输入信号和所述声音参考信号进行自适应滤波处理,得到滤波后的声音信号;第七确定模块,用于将所述滤波后的声音信号作为所述声音输出信号。

进一步地,所述确定单元还包括:获取模块,用于获取多个声音输入幅度值,其中,所述声音输入幅度值为所述声音输入信号对应的声音波形幅度值;第八确定模块,用于根据所述多个声音输入幅度值,确定声音幅度包络线;第九确定模块,用于对所述声音幅度包络线进行分析,确定幅度包络斜率值;第十确定模块,用于根据所述幅度包络斜率值、所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态。

进一步地,第十确定模块包括:判断子模块,用于判断所述幅度包络斜率值是否大于预设斜率值;第一确定子模块,用于在判断出所述幅度包络斜率值大于预设斜率值的情况下,确定讲话声音状态为第一状态;第二确定子模块,用于在判断出所述幅度包络斜率值不大于预设斜率值的情况下,确定所述讲话声音状态为第二状态;第三确定子模块,用于根据所述讲话声音状态、所述声音输入能量值、所述声音参考能量值和所述声音能量比值,确定目标讲话状态。

根据本发明实施例的另一方面,还提供了一种通话系统,其特征在于,所述通话系统应用于上述任一项所述的讲话状态的切换方法,其中,所述通话系统至少包括多个通话设备,每个所述通话设备中至少包括:声音采集单元、声音播放单元,所述声音采集单元用于采集声音输入信号,所述声音播放单元用于播放出声音参考信号。

进一步地,所述通话系统还包括:声音滤除模块,所述声音滤除模块用于对声音输入信号和声音参考信号进行自适应滤波处理,其中,所述声音滤除模块至少包括:自动回声消除处理模块aec。

根据本发明实施例的另一方面,还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述任意一项所述的讲话状态的切换方法。

根据本发明实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述任意一项所述的讲话状态的切换方法。

在本发明实施例中,可以先获取到声音输入信号和声音参考信号,并对该声音输入信号和声音参考信号进行预处理,从而确定出声音输出信号,之后,可以检测声音输入能量值、声音参考能量值和声音输出能量值,对声音输出能量值和声音输入能量值进行计算,确定出声音能量比值,进而根据上述的声音信号能量值、声音参考能量值、声音能量比值,确定出目标讲话状态,在目标讲话状态与当前讲话状态不相同时,切换至目标讲话状态。在该实施例中,可以通过对声音输入信号、声音参考信号和对应的能量值的检测,确定出是否需要切换讲话状态,根据声音能量比值和声音输入能量值和声音参考能量值,可以更准确的确定讲话状态,对于声音信号出现短暂变化,并不会由于短暂的声音信号的变化,造成讲话状态的误判,也不会改变讲话状态,若声音信号能量值出现变化,则通过能量比值、声音输入能量值、声音参考能量值和预设的数值进行比较,确定出是否需要切换讲话状态,即可以通过声音能量比值,提高讲话状态检测的准确性,进而解决相关技术中由于房间内的混响,导致通话系统判断当前讲话状态出现误差,造成用户体验感下降的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据相关技术中一种声音检测的示意图;

图2是根据本发明实施例的一种通话设备处理多个声音信号的示意图;

图3是根据本发明实施例的讲话状态的切换方法的流程图;

图4a是根据本发明实施例的一种麦克风采集的讲话人的声音波形的示意图;

图4b是根据本发明实施例的一种扬声器播出声音信号的声音波形的示意图;

图5是根据本发明实施例的通话系统的示意图;

图6是根据本发明实施例的讲话状态的切换装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本申请实施例,提供了一种讲话状态的切换方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

下述实施例可以应用于各种通话系统或者通话设备,本发明中的通话系统可以包括但不限于:音视频会议通话系统、智能音箱通话控制系统、移动设备(如手机)通话系统、家居设备通话系统、汽车电子通话系统中、蓝牙音响通话系统、运动手环通话系统中等,通话设备可以包括但不限于:音视频会议设备、智能音箱设备、移动通信设备、家居设备、汽车电子设备、蓝牙音响设备、运动手环等。具体地,该通话系统可以应用于各种环境中,包括但不限于:音视频会议环境、家居通话环境、智能音响控制环境中,其中,音视频会议环境可以是指远程音视频会议,例如,通过ip电话进行远程会议聊天的环境中,可以是在各公司的会议室中进行,其中,ip电话可以是指在因特网上实现实时传送语音信号的一种新型的电信业务,ip电话可以采用分组交换技术进行语音实时通话,在通话时,重点需要注意回声对通话造成的影响。

在本申请中的通话系统中,可以包括多个通话设备,通话设备中可以包括麦克风、扬声器、处理中心、滤波模块,通过扬声器可以播放出通话设备接收到其他通话设备发出的语音信号,通过麦克风可以采集扬声器发出的语音信号、讲话人发出的讲话语音信号、房间回声信号,通过滤波模块可以对扬声器的语音信号进行自适应滤波处理,保证通话设备输出的语音信号为讲话人发出的语音信号,目前一般采用自动回声消除处理(aec,acousticechochancellor)进行回声处理,目前的aec一般是使用自适应滤波器的方式来消除回声。如图2所示,通过自适应滤波器可以对声音信号进行滤除,结合输入信号可以得到输出信号,在滤除时:根据参考信号(即当前扬声器播放的信号,通常为对方(即远端)说话的声音)和麦克风信号(输入信号)自动构造出一个自适应滤波器(即滤波器的自适应过程,在这个过程中假设房间里除了扬声器声音之外,没有其他声音,此时叫做远端单讲状态),这个滤波器的效果等价于扬声器、房间、麦克风等系统综合起来的传递函数。当后面要播放的数据到来时,经过这个滤波器就能预测出从麦克风传回来的回声信号。然后用实际麦克风接收到信号减去这个预测出来的信号,就能把回声消除,从而只保留房间里讲话人的声音(假设此时房间里及远端同时有人讲话,此时叫做双讲状态,也叫doubletalk)。当远端没有人讲话,只有本地房间内有人讲话时,叫做近端单讲状态。当两个通话设备都不发出声音,叫做静音状态。

在aec处理过程中,我们需要去检测静音状态、远端单讲状态、近端单讲状态、双端讲话状态,从而进行一些控制和参数调整。例如在双讲状态,不要再去更新自适应滤波器系数,降低非线性回声的抑制量等。

相关的检测方法一般是通过如图2中的输入信号(即麦克风采集到的信号)和输出信号(即最终我们想要的信号)的相关性、输入信号和参考信号(即扬声器播放的信号)的相关性来判断。即可以通过自适应滤波器对扬声器发出的参考信号进行过滤,保证讲话人通过麦克风发出的输入信号到达处理中心,以保证发出的输出信号为讲话人讲话语音信号,下面介绍其检测的基本原理:

1、静音状态。此时输入信号、参考信号的能量都很小。

2、远端讲话状态。此时输入信号基本上都是参考信号,所以输入信号和参考信号之间的相关性很高。同时,由于自适应滤波器将混在输入信号中的参考信号基本上都滤除了,所以此时输出信号基本为0,因此输入信号和输出信号之间的相关性很小。

3、双端讲话状态。此时输入信号中除了包含参考信号之外,还包含房间内讲话人的语音信号,所以此时输入信号和参考信号之间的相关性就会较低(假设扬声器播放的声音和讲话人的语音信号之间不相关)。同时,由于输出信号中含有输入信号中滤除了参考信号之后的语音信号部分,所以输入信号和输出信号之间的相关性较大。

4、近端讲话状态。此时输入信号基本上只包含本地语音信号,参考信号基本为0。所以输入信号和输出信号之间的相关性较大,输入信号和参考信号之间的相关性很小。

相关技术中,当房间混响比较严重时,在两个字中间的停顿处会容易出现从远端讲话状态往双端讲话状态或近端讲话状态跳动的情况。原因如下:当房间混响严重时,在两个字中间的停顿处,此时参考信号已经减小甚至消失,但扬声器播放的信号通过房间多次反射后,出现了一定量的延迟,这样看上去就很像是双端讲话状态或近端讲话状态,按照之前的算法就会很容易出现误判。

而通过本申请的下述实施例可以提高讲话状态(或者通话状态)的判断准确度,对声音信号的能量值进行检测,准确切换讲话状态,并且本申请中,对于由远端讲话状态至近端讲话状态或双端讲话状态的切换,需要先确定声音能量包络是否处于上升状态,在能量包络处于上升状态时,根据声音能量值的大小和声音能量比值的大小,确定出是否切换至近端讲话状态或者双端讲话状态,对于在远端讲话状态,出现房间混响时,即使讲话发生停顿,由于声音能量值处于较低状态,这时仅可以确定能量比值较大,只能说明近端有人讲话的可能性较大,需要进一步结合声音能量包络和声音能量相关性确定是否切换讲话状态,但不会立刻切换至近端讲话状态或者双端讲话状态,这样就可以避免讲话状态的跳动,降低讲话状态误判率,提高讲话状态判断的准确度。

而对于其他的讲话状态的切换,也可以根据声音能量值的判断,确定出是否切换讲话状态;并且本申请中还可以通过对声音信号形成的幅度包络线进行计算,确定出幅度包络线斜率,以预测是否为混响声音信号,在预测可能为混响声音信号的情况下,并不进行讲话状态的切换,从而降低讲话状态的误判率,例如,在远端讲话状态中,若近端发生混响,此时,可以根据能量幅度包络线,预测可能发生混响,不会切换至近端讲话状态或者双端讲话状态,提高讲话状态切换的准确度。在确定出幅度包络线斜率呈现明显上升时,表明当前近端可能有人讲话,麦克风接收到近端讲话人的讲话声音,此时可以切换至近端讲话状态,若确定远端也有人讲话,则可以切换至双端讲话状态。即可以通过声音信号对应的声音信号幅度值,确定出切换的讲话状态。这样也可以控制讲话状态的切换,不会因为混响导致讲话状态的切换出现错误的情况,提高通话质量。

并且,本申请实施例还可以应用于各种智能控制设备中,例如,智能音响设备、智能电视设备、智能空调设备等,用户可以通过语音指令直接控制这些智能控制设备,不会因为混响,导致智能控制设备出现接收指令的误差,通过本申请中对声音信号的能量值的判断,确定出当前讲话状态。

对于相关技术中的声音滤除模块(如aec)无法在房间混响比较严重的情况下,对声音播放设备(如扬声器)播放的声音进行有效滤除,导致讲话状态出现误判的情况,本申请可以通过声音信号能量值的检测,确定声音信号的变化,提高讲话状态的切换准确度,以改善相关技术处声音信号滤除不足的情况。

以下结合优选的实施步骤对本发明进行说明,图3是根据本发明实施例的讲话状态的切换方法的流程图,应用于通话设备中,通话设备至少包括声音采集单元、声音播放单元,声音采集单元用于采集声音输入信号,声音播放单元用于播放出声音参考信号,其中声音输入信号、声音参考信号对应有声音波形能量值,如图3所示,该方法包括如下步骤:

步骤s302,获取声音输入信号和声音参考信号。

其中,本发明中的通话设备可以为多个,以两个通话设备为例(本申请中并不限制通话设备的数量,可以大于等于两个通话设备),包括第一通话设备和第二通话设备,该第一通话设备(对应第一讲话人讲话)和第二通话设备(对应第二讲话人讲话)都会包括声音采集单元、声音播放单元,也可以包括声音处理单元,若第一讲话人通过第一通话设备进行讲话,麦克风会采集到第一讲话人发出的声音信号,将该信号作为声音输入信号,可以利用声音处理单元进行声音处理,并将声音信号发送至第二通话设备中,第二通话设备在接收到声音信号后,会通过第二通话设备中的声音播放单元(如扬声器)进行声音播放,第二讲话人在听到后,可能会相对应发出声音,这时,第二通话设备的麦克风在采集信号时,就会出现由于声音播放单元播放的声音的回声信号和讲话人发出的讲话声音信号同时被第二通话设备中的声音采集单元采集到,一般情况下,需要通过对滤波模块(如aec)对声音播放单元发出的声音信号和回声信号进行滤波处理,以保证麦克风采集到讲话人讲话的声音信号,在该实施例中,可以在前述判断各个讲话状态的基础上,通过声音信号和声音能量值,更准确的确定出目标讲话状态,从而提高目标讲话状态的准确性。

对于上述的声音播放单元在播放声音后,会对播放的声音进行声音信号采集,以得到声音参考信号。

其中,在本申请中的通话设备切换讲话状态时,可以是先检测出当前讲话状态,该当前讲话状态可以理解为历史时间段内最后时刻的讲话状态。当前讲话状态可以为下述之一:静音状态、远端讲话状态、双端讲话状态、近端讲话状态,其中,静音状态为第一通话设备和第二通话设备都不发出声音的讲话状态,远端讲话状态为第一通话设备不发出声音、第二通话设备发出声音的讲话状态,双端讲话状态为第一通话设备和第二通话设备都发出声音的讲话状态,近端讲话状态为第一通话设备发出声音、第二通话设备不发出声音的讲话状态。这里以第一通话设备为当前用户所在的通话设备,并不会通话设备有具体的限定,不同的用户对应的通话设备不同,本申请中以两个通话设备为例进行说明,但本申请并不会限定通话设备的数量。

步骤s304,对声音输入信号和声音参考信号进行预处理,确定出声音输出信号。

对于步骤s304,对声音输入信号和声音参考信号进行预处理,确定出声音输出信号可以包括:对声音输入信号和声音参考信号进行自适应滤波处理,得到滤波后的声音信号;将滤波后的声音信号作为声音输出信号。

即可以将采集到的声音信号进行滤波处理,以得到声音输出信号,该声音输出信号中保证与讲话人讲话的声音信号相对应。

步骤s306,检测声音输入能量值、声音参考能量值,以及声音输出能量值,其中,声音输入能量值为声音输入信号对应的波形能量值,声音参考能量值为声音参考信号对应的波形能量值,声音输出能量值为声音输出信号对应的能量值。

其中,在采集声音信号时,会相应采集到声音波形,每个声音信号都会对应有声音振幅幅度,该振幅幅度一般用于表示声音的音量,而声音的能量值可以是声音振幅的幅度值的倍数(如两倍),通过对声音振幅幅度值的计算,可以确定出声音能量值。本申请中重点得到声音输入信号对应的能量值和声音参考信号(即扬声器播放的声音信号)的能量值,在对声音输入信号和声音参考信号进行处理后,可以得到声音输出信号,并确定出声音输出信号对应的能量值。

步骤s308,对声音输出能量值和声音输入能量值进行计算,得到声音能量比值。

步骤s310,根据声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

步骤s312,判断目标讲话状态与当前讲话状态是否相同,其中,当前讲话状态为历史时间段内的讲话状态。

步骤s314,在判断出目标讲话状态与当前讲话状态不相同的情况下,将当前讲话状态切换为目标讲话状态。

通过上述步骤,可以先获取到声音输入信号和声音参考信号,并对该声音输入信号和声音参考信号进行预处理,从而确定出声音输出信号,之后,可以检测得到声音输入能量值、声音参考能量值和声音输出能量值,并确定出声音能量比值,进而根据声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态,在目标讲话状态与当前讲话状态不相同时,切换至目标讲话状态。在该实施例中,可以通过对声音输入信号、声音输出信号和对应的能量值的检测,确定出是否需要切换讲话状态,根据声音能量比值和声音输入能量值和声音参考能量值,可以更准确的确定讲话状态,对于声音信号出现短暂变化,并不会由于短暂的声音信号的变化,造成讲话状态的误判,也不会改变讲话状态,若声音信号能量值出现变化,则通过能量比值、声音输入能量值、声音参考能量值和预设的数值进行比较,确定出是否需要切换讲话状态,即可以通过声音能量比值,提高讲话状态检测的准确性,进而解决相关技术中由于房间内的混响,导致通话系统判断当前讲话状态出现误差,造成用户体验感下降的技术问题。

对于上述实施例中的步骤s310,根据声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态包括:根据声音输入信号和声音参考信号,确定第一波形信号相关值;根据声音输入信号和声音输出信号,确定第二波形信号相关值;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,确定目标讲话状态为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值且声音能量比值大于第十预设阈值的情况下,确定目标讲话状态为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值且声音能量比值大于第十预设阈值的情况下,确定目标讲话状态为近端讲话状态;在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,确定目标讲话状态为静音状态。

其中,预设能量比值可以包括但不限于:第五预设阈值、第十预设阈值,该第五预设阈值和第十预设阈值是一种判别因子,本申请中对于具体的数值不做限定,如第五预设阈值为0.5,第十判别因子为0.5。

本申请中对于上述第一预设阈值至第十六预设阈值的具体数值不做限定,可以根据通话设备采集声音信号的准确度和房间大小以及房间回声处理,设置对应的预设阈值。

其中,在当前讲话状态为静音状态时,将当前讲话状态切换为目标讲话状态包括:根据声音输入信号和声音参考信号,确定第一波形信号相关值;根据声音输入信号和声音输出信号,确定第二波形信号相关值;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,将静音状态切换为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值且声音能量比值大于第十预设阈值的情况下,将静音状态切换为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值且声音能量比值大于第十预设阈值的情况下,将静音状态切换为近端讲话状态。

另外,在当前讲话状态为远端讲话状态时,将当前讲话状态切换为目标讲话状态包括:在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,将远端讲话状态切换为静音状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值且声音能量比值大于第十预设阈值的情况下,将远端讲话状态切换为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四设阈值且声音能量比值大于第十预设阈值的情况下,将远端讲话状态切换为近端讲话状态。

其中,在当前讲话状态为近端讲话状态,将当前讲话状态切换为目标讲话状态包括:在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,将近端讲话状态切换为静音状态;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,将近端讲话状态切换为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值且声音能量比值大于第十预设阈值的情况下,将近端讲话状态切换为双端讲话状态。

可选的,在当前讲话状态为双端讲话状态,将当前讲话状态切换为目标讲话状态包括:在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,将双端讲话状态切换为静音状态;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,将双端讲话状态切换为远端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四设阈值且声音能量比值大于第十预设阈值的情况下,将双端讲话状态切换为近端讲话状态。

本申请通过上述实施例,可以通过声音输入信号、声音参考信号,确定出声音输出信号,并确定出每个声音信号对应的能量值,计算出声音输出信号的能量值和声音输入信号的能量值的能量比值,进而根据能量比值、声音信号之间的相关性,确定目标讲话状态,这样可以提高讲话状态的检测准确度,对于通话系统(如音视频会议系统)有明显的通话质量的提高。

其中,在检测目标讲话状态的过程中,是在判别讲话状态(包括现有技术中的确定静音状态、近端讲话状态、远端讲话状态、双端讲话状态)的基础上,进一步通过声音信号能量来判别目标讲话状态,在判别时,结合声音输出信号能量值和声音输入能量值的能量比值、声音输入信号和声音输出信号的相关性、声音输入信号和声音参考信号的相关性,通过多个条件共同确定目标讲话状态。即可以通过能量比值的判别条件和声音信号的相关性,提高目标讲话状态检测的准确度。

对于上述的能量比值判别条件,由于声音信号是随着声音振幅变化的,即可以表示在检测到能量比值较大时,表明声音输出信号能量值较高,这时判别近端可能会有人讲话,进一步通过声音信号之间的相关性,确定是否近端是否有人讲话,从而根据讲话状态,切换讲话状态,如只有近端的人讲话,则切换为近端讲话状态,若判别近端有人讲话的同时、远端也有人讲话,可以切换为双端讲话状态。

需要说明的是,根据声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态包括:获取多个声音输入幅度值,其中,声音输入幅度值为声音输入信号对应的声音波形幅度值;根据多个声音输入幅度值,确定声音幅度包络线;对声音幅度包络线进行分析,确定幅度包络斜率值;根据幅度包络斜率值、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。即可以根据输入信号的幅度值或者幅度功率来判断讲话状态。

另外,根据幅度包络斜率值、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态包括:判断幅度包络斜率值是否大于预设斜率值;在判断出幅度包络斜率值大于预设斜率值的情况下,确定讲话声音状态为第一状态;在判断出幅度包络斜率值不大于预设斜率值的情况下,确定讲话声音状态为第二状态;根据讲话声音状态、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

在采集声音时,一般会采集到多个声音信号,以形成声音波形,其中,声音波形可以是声源(如讲话人)发出声音对应的声音波形,在本发明中可以通过相应的声源检测装置检测声音波形。声音波形对应的幅度值可以是用正弦波表示的参数,其可以包括振幅和频率,即声音变化的高度和变化的频率,振幅可以表示音量,频率可以表示音调。通过获取声源发出的声音的幅度和声音频率,确定出声音波形,从声源开始发出声音到结束发声,可以得到一个完整的声音波形。

其中,在得到一个完整的声音波形时,会检测多个声音信号,每个声音信号对应有声音振幅的幅度和变化频率,其中,声音振幅的幅度可以是音量的高度,不同的声音信号,其声音幅度是不同的。本发明中,利用每一个声音波形中振幅幅度表示声音波形中的多帧数据的能量值(如声音信号能量值为声音振幅幅度值的两倍),即每帧数据的能量值是不断变化的,一般而言,声音波形中的能量值由开始的很小的能量值,上升到高度能量值,然后能量值会下降,直到结束发声时,能量值也会消失。声音波形是相对于声音信号线上下波动的,声音波形中的振幅幅度会随着时间的推移和讲话人声音信号上下波动,则对应的声音信号能量值也会上下波动。

对于本发明实施例,在获取声音输入幅度值之前,还可以包括:采集多个声音信号,得到声音波形;对声音波形进行分帧处理,得到多个声音信号帧,其中,每个声音信号帧对应的声音信号的数量是相同的。

即可以对声源发出的声音信号进行采集,确定出声音波形,然后可以将采集到的声音信号进行分帧处理,本发明中可以设置每帧的声音信号的数量是一致的,例如,每帧声音信号长度为n,该n可以是根据不同的声音波形自行设置,如128。

其中,可以先确定出每个声音波形对应的包络线,一般而言,随着声音高低的变化幅度,包络线也是先上升然后下降,在开始上升时,可以表示声源开始发声,在包络线开始下降时,表示声源要结束发声。本发明中,通过对声音幅度包络线进行分析,确定出幅度包络斜率值,通过斜率值与预设斜率值的对比,确定出声音信号状态变化。

可选的,在根据幅度包络斜率值、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态时,可以包括:判断幅度包络斜率值是否大于预设斜率值;在判断出幅度包络斜率值大于预设斜率值的情况下,确定讲话声音状态为第一状态;在判断出幅度包络斜率值不大于预设斜率值的情况下,确定讲话声音状态为第二状态;根据讲话声音状态、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

根据讲话声音状态、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态包括:根据声音输入信号和声音参考信号,确定第一波形信号相关值;根据声音输入信号和声音输出信号,确定第二波形信号相关值;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,确定目标讲话状态为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值、声音能量比值大于第十预设阈值的情况下,以及讲话声音状态为第一状态时,确定目标讲话状态为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值、声音能量比值大于第十预设阈值的情况下,以及讲话声音状态为第一状态时,确定目标讲话状态为近端讲话状态;在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,确定目标讲话状态为静音状态。

即在判断目标讲话状态为近端讲话状态或双端讲话状态时,可以先通过能量比值和声音信号的相关性,判断目标讲话状态,在这个判断过程中,进一步通过能量包络斜率增加判别条件,以提高检测目标讲话状态的准确度,第一状态可以为声音幅度或能量包络处于上升的状态,例如,在确定目标讲话状态为近端讲话状态或双端讲话状态时,需要进一步确定能量包络处于上升状态,这样才会进行切换。这样在远端讲话状态时,即使房间内出现混响,由于近端房间内无人讲话,混响所对应的声音能量包络线处于下降状态,由于能量包络整体处于下降状态,并不会切换到近端讲话状态或者双端讲话状态,即可以减少混响所造成的目标讲话状态的误判。

在该实施方式中,可以通过包络线斜率的判断,辅助能量比判别的条件,预测房间的声音信号为混响声音信号,若是仅判别出当前声音信号为混响声音信号,近端没有人讲话,则不需要切换讲话状态。对于混响声音信号,其可能是由于房间内的封闭状态,造成的声音反射,最后造成声音混乱的情况,这种情况下,仅仅只是声音信号的反射,在声音信号反射的过程中,若没有人讲话,则反映在声音波形中的声音信号所对应的能量值是呈现下降状态的,这时,虽然房间内有声音信号,但不需要切换切换讲话状态,仍然是远端讲话状态。这样就可以通过包络线斜率,预测房间内产生混响,不需要进行讲话状态的切换,减少混响造成的影响。

而另外一种情况,在远端讲话时,若近端有人讲话,即使房间内由于混响,造成声音信号呈现明显上升状态,此时,并不会对状态切换造成影响,由于声音信号的能量值总体呈现上升状态,可以根据讲话状态,切换为近端讲话状态或双端讲话状态,声音信号的混响仅仅只是提高声音波形中声音振幅的幅度和能量值,而根据能量比值确定讲话状态的情况,仍然是正常的。本发明中可以通过增加能量比值的判别条件,来提高检测目标讲话状态的准确度,另外通过增加声音包络线斜率的判别条件,减少混响发生时,干扰讲话状态的判别,进一步提高讲话状态的判别。

上述的预设斜率值可以是自行设置的数值,例如,0,并且第一状态可以表示声音幅度处于上升状态(例如,通过字母e为1表示第一状态),而第二状态可以表示不处于上升状态的状态(如通过字母e表示第二状态)。

在该实施例中,可以增加对输入信号或输出信号的幅度或功率包络判断,看当前幅度或功率包络是增大还是减小。当近端有人开始讲话时,幅度或能量包络应该是上升的。而当远端讲话结束时,虽然会有延迟的混响信号在,但其幅度或能量是逐渐下降的。如图4a所示,为麦克风采集到的信号,而图4b为扬声器采集到的参考信号,为参考信号(即喇叭播放的信号)的波形。在图4a和图4b中的上方黑色线路可以理解包络线,在黑色竖线的位置,参考信号已经接近零,但由于混响的影响,输入信号依然很强,此时按照相关技术中的方法判断,就会误判为双讲或近端单讲状态。但从幅度或能量包络判断来看,黑线处是在下降的,因此可以根据这个信息判断出此时不应该进行状态切换。类似的,当近端有人开始讲话时,会出现图中前半部分的包络上升,因此在判断是否需要往双讲或近端单讲状态切换时,可以通过包络是否上升来判断,只有当上述判决条件都满足且幅度或能量包络是上升时,才能切换到双讲或近端单讲状态。增大还是减小的判决,可以根据前几帧的历史功率信息(对应声音信号能量值)来判断,也可以仅根据当前帧和上一帧的能量值来判断。举一个只根据当前帧和上一帧来判断的简单例子,假设上一帧功率为p0,当前帧功率为p1,那么当p1>p0*1.03时(其中1.03为一个判决因子,需根据具体情况设定),则判断为能量在上升。

通过上述的实施例,可以利用声音信号对应的波形信号和声音幅度,确定出声音信号变化对应的波形斜率值,通过声音包络变化斜率值可以更准确的切换讲话状态。

下面结合一种可选的实施例对本发明进行进一步地说明。

可选的,本申请实施例可以利用如图2所示的通话设备声音信号处理中,在实施例用符号pmic表示输入信号的能量,符号pref表示参考信号的能量,符号cmicref表示输入信号和参考信号之间的相关性(取值为0~1之间,0表示不相关,1表示完全相关),符号cmicout表示输入信号和输出信号之间的相关性(取值为0~1之间,0表示不相关,1表示完全相关)。

静音状态:pmic<a,pref<b;

远端讲话状态:pmic>c,pref>d,cmicref>e,cmicout<f;

双端讲话状态:pmic>h,pref>i,cmicref<j,cmicout>k;

近端讲话状态:pmic>l,pref<m,cmicref<n,cmicout>o;

其中a-o为判决门限,需根据具体实际情况调整确定。

其中,具体在通话设备进行状态切换时,可以通过如下步骤:

11,获取一帧数据,包括输入信号(对应于上述实施例中的声音输入信号)和参考信号(对应于上述的声音参考信号)。

12,做自适应滤波处理,得到输出信号(对应于上述实施例的声音输出信号)。

13,计算输入信号、参考信号、输出信号的功率pmic、pref、pout。

14,计算输出信号和输入信号能量比,即r=pout/pmic。

15,计算输入信号和参考信号的相关性cmicref。

16,计算输入信号和输出信号的相关性cmicout。

17,判断幅度或能量包络是否处于上升状态,如果是,则e=1,否则e=0。

18,根据计算结果进行状态切换,

若当前状态为静音状态,则

如果pmic>c且pref>d且cmicref>e且cmicout<f且r<q,则切换到远端讲话状态;

否则,如果pmic>h且pref>i且cmicref<j且cmicout>k且r>p且e=1,则切换到双端讲话状态;

否则,如果pmic>l且pref<m且cmicref<n且cmicout>o且r>p且e=1,则切换到近端讲话状态。

若当前状态为远端讲话状态,则

如果pmic<a且pref<b,则切换到静音状态;

否则,如果pmic>h且pref>i且cmicref<j且cmicout>k且r>p且e=1,则切换到双端讲话状态;

否则,如果pmic>l且pref<m且cmicref<n且cmicout>o且r>p且e=1,则切换到近端讲话状态。

若当前状态为近端单讲状态,则

如果pmic<a且pref<b,则切换到静音状态;

否则,如果pmic>c且pref>d且cmicref>e且cmicout<f且r<q,则切换到远端讲话状态;

否则,如果pmic>h且pref>i且cmicref<j且cmicout>k且r>p且e=1,则切换到双端讲话状态;

若当前状态为双端讲话状态,则

如果pmic<a且pref<b,则切换到静音状态;

否则,如果pmic>c且pref>d且cmicref>e且cmicout<f且r<q,则切换到远端讲话状态;

否则,如果pmic>l且pref<m且cmicref<n且cmicout>o且r>p且e=1,则切换到近端讲话状态。

在上述实施例中,增加输出信号和输入信号能量比的判决条件,即r=pout/pmic。当r大于一定值p时,表明通过自适应滤波器后,剩余信号比较多,则说明有近端语音信号。当r小于一定值q时,表明通过自适应滤波器后,剩余信号较少,则说明没有近端语音信号或近端语音信号很小。因此在满足上述背景描述的前提下,要切换到双讲或近端单讲状态,需要判断r是否大于给定的门限值p(即确认近端有语音信号)。而要切换到远端单讲状态时,需要判断r是否小于给定的门限值q(即确认近端没有语音信号)。

根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述任意一项的讲话状态的切换方法。

根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述任意一项的讲话状态的切换方法。

根据本发明实施例的另一方面,还提供了一种通话系统,通话系统应用于上述任一项的讲话状态的切换方法。

图5是根据本发明实施例的通话系统的示意图,如图5所示,该通话系统至少包括多个通话设备,多个通话设备中至少包括第一通话设备51和第二通话设备52,其中,每个通话设备中至少包括:声音采集单元、声音播放单元。

其中,上述声音采集单元用于采集声音输入信号,声音播放单元用于播放出声音参考信号,通过设备中还可以包括声音处理单元,该声音处理单元用于对声音输入信号和声音参考信号进行处理得到声音输出信号。可选的,声音采集单元至少包括:麦克风,声音播放单元至少包括:扬声器。

另外,该通话系统还可以包括:声音滤除模块,声音滤除模块用于对声音输入信号和声音参考信号进行自适应滤波处理,其中,声音滤除模块至少包括:自动回声消除处理模块aec。

图6是根据本发明实施例的讲话状态的切换装置的示意图,如图6所示,该切换装置应用于通话设备中,通话设备至少包括声音采集单元、声音播放单元,声音采集单元用于采集声音输入信号,声音播放单元用于播放出声音参考信号,其中声音输入信号、声音参考信号对应有声音波形能量值,装置包括:获取单元61,用于获取声音输入信号和声音参考信号;预处理单元62,用于对声音输入信号和声音参考信号进行预处理,确定出声音输出信号;检测单元63,用于检测声音输入能量值、声音参考能量值,以及声音输出能量值,其中,声音输入能量值为声音输入信号对应的波形能量值,声音参考能量值为声音参考信号对应的波形能量值,声音输出能量值为声音输出信号对应的能量值;计算单元64,用于根据声音输出能量值和声音输入能量值进行计算,得到声音能量比值;确定单元65,用于根据声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态;判断单元66,用于判断目标讲话状态与当前讲话状态是否相同,其中,当前讲话状态为历史时间段内的讲话状态;切换单元67,用于在判断出目标讲话状态与当前讲话状态不相同的情况下,将当前讲话状态切换为目标讲话状态。

上述实施例中,通过获取单元61先获取到声音输入信号和声音参考信号,并通过预处理单元62对该声音输入信号和声音参考信号进行预处理,从而确定出声音输出信号,通过检测单元63检测声音输入能量值、声音参考能量值和声音输出能量值,然后,可以通过计算单元64确定出声音能量比值,进而通过确定单元65根据声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态,之后,可以通过判断单元66判断目标讲话状态与当前讲话状态是否相同,最后可以利用切换单元67在判断出目标讲话状态与当前讲话状态不相同的情况下,将当前讲话状态切换为目标讲话状态。在该实施例中,可以通过对声音输入信号、声音输出信号和对应的能量值的检测,确定出是否需要切换讲话状态,根据声音能量比值和声音输入能量值和声音参考能量值,可以更准确的确定讲话状态,对于声音信号出现短暂变化,并不会由于短暂的声音信号的变化,造成讲话状态的误判,也不会改变讲话状态,若声音信号能量值出现变化,则通过能量比值、声音输入能量值、声音参考能量值和预设的数值进行比较,确定出是否需要切换讲话状态,即可以通过声音能量比值,提高讲话状态检测的准确性,进而解决相关技术中由于房间内的混响,导致通话系统判断当前讲话状态出现误差,造成用户体验感下降的技术问题。

可选的,当前讲话状态为下述之一:静音状态、远端讲话状态、双端讲话状态、近端讲话状态,其中,静音状态为第一通话设备和第二通话设备都不发出声音的讲话状态,远端讲话状态为第一通话设备不发出声音、第二通话设备发出声音的讲话状态,双端讲话状态为第一通话设备和第二通话设备都发出声音的讲话状态,近端讲话状态为第一通话设备发出声音、第二通话设备不发出声音的讲话状态。

其中,上述的确定单元65包括:第一确定模块,用于根据声音输入信号和声音参考信号,确定第一波形信号相关值;第二确定模块,用于根据声音输入信号和声音输出信号,确定第二波形信号相关值;第三确定模块,用于在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,确定目标讲话状态为远端讲话状态;第四确定模块,用于在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值且声音能量比值大于第十预设阈值的情况下,确定目标讲话状态为双端讲话状态;第五确定模块,用于在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值且声音能量比值大于第十预设阈值的情况下,确定目标讲话状态为近端讲话状态;第六确定模块,用于在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,确定目标讲话状态为静音状态。

需要说明的是,上述的预处理单元62可以包括:处理模块,用于对声音输入信号和声音参考信号进行自适应滤波处理,得到滤波后的声音信号;第七确定模块,用于将滤波后的声音信号作为声音输出信号。

需要说明的是,确定单元65还可以包括:获取模块,用于获取多个声音输入幅度值,其中,声音输入幅度值为声音输入信号对应的声音波形幅度值;第八确定模块,用于根据多个声音输入幅度值,确定声音幅度包络线;第九确定模块,用于对声音幅度包络线进行分析,确定幅度包络斜率值;第十确定模块,用于根据幅度包络斜率值、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

对于上述的,第十确定模块包括:判断子模块,用于判断幅度包络斜率值是否大于预设斜率值;第一确定子模块,用于在判断出幅度包络斜率值大于预设斜率值的情况下,确定讲话声音状态为第一状态;第二确定子模块,用于在判断出幅度包络斜率值不大于预设斜率值的情况下,确定讲话声音状态为第二状态;第三确定子模块,用于根据讲话声音状态、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

另外,上述的第三确定子模块还可以根据声音输入信号和声音参考信号,确定第一波形信号相关值;根据声音输入信号和声音输出信号,确定第二波形信号相关值;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,确定目标讲话状态为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值、声音能量比值大于第十预设阈值的情况下,以及讲话声音状态为第一状态时,确定目标讲话状态为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值、声音能量比值大于第十预设阈值的情况下,以及讲话声音状态为第一状态时,确定目标讲话状态为近端讲话状态;在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,确定目标讲话状态为静音状态。

上述的讲话状态的切换装置还可以包括处理器和存储器,上述获取单元61、预处理单元62、检测单元63、计算单元64、确定单元65、判断单元66和切换单元67等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来减少混响对通话过程中讲话状态的确定造成的干扰。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。

根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述任意一项的讲话状态的切换方法。

根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述任意一项的讲话状态的切换方法。

本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:获取声音输入信号和声音参考信号;对声音输入信号和声音参考信号进行预处理,确定出声音输出信号;检测声音输入能量值、声音参考能量值,以及声音输出能量值,其中,声音输入能量值为声音输入信号对应的波形能量值,声音参考能量值为声音参考信号对应的波形能量值,声音输出能量值为声音输出信号对应的能量值;对声音输出能量值和声音输入能量值进行计算,得到声音能量比值;根据声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态;判断目标讲话状态与当前讲话状态是否相同,其中,当前讲话状态为历史时间段内的讲话状态;在判断出目标讲话状态与当前讲话状态不相同的情况下,将当前讲话状态切换为目标讲话状态。

可选地,当前讲话状态为下述之一:静音状态、远端讲话状态、双端讲话状态、近端讲话状态,其中,静音状态为第一通话设备和第二通话设备都不发出声音的讲话状态,远端讲话状态为第一通话设备不发出声音、第二通话设备发出声音的讲话状态,双端讲话状态为第一通话设备和第二通话设备都发出声音的讲话状态,近端讲话状态为第一通话设备发出声音、第二通话设备不发出声音的讲话状态。

可选地,上述处理器在执行程序时,还可以根据声音输入信号和声音参考信号,确定第一波形信号相关值;根据声音输入信号和声音输出信号,确定第二波形信号相关值;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,确定目标讲话状态为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值且声音能量比值大于第十预设阈值的情况下,确定目标讲话状态为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值且声音能量比值大于第十预设阈值的情况下,确定目标讲话状态为近端讲话状态;在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,确定目标讲话状态为静音状态。

可选地,上述处理器在执行程序时,还可以对声音输入信号和声音参考信号进行自适应滤波处理,得到滤波后的声音信号;将滤波后的声音信号作为声音输出信号。

可选地,上述处理器在执行程序时,还可以获取多个声音输入幅度值,其中,声音输入幅度值为声音输入信号对应的声音波形幅度值;根据多个声音输入幅度值,确定声音幅度包络线;对声音幅度包络线进行分析,确定幅度包络斜率值;根据幅度包络斜率值、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

上述处理器在执行程序时,还可以判断幅度包络斜率值是否大于预设斜率值;在判断出幅度包络斜率值大于预设斜率值的情况下,确定讲话声音状态为第一状态;在判断出幅度包络斜率值不大于预设斜率值的情况下,确定讲话声音状态为第二状态;根据讲话声音状态、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

上述处理器在执行程序时,还可以根据声音输入信号和声音参考信号,确定第一波形信号相关值;根据声音输入信号和声音输出信号,确定第二波形信号相关值;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,确定目标讲话状态为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值、声音能量比值大于第十预设阈值的情况下,以及讲话声音状态为第一状态时,确定目标讲话状态为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值、声音能量比值大于第十预设阈值的情况下,以及讲话声音状态为第一状态时,确定目标讲话状态为近端讲话状态;在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,确定目标讲话状态为静音状态。

本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:获取声音输入信号和声音参考信号;对声音输入信号和声音参考信号进行预处理,确定出声音输出信号;检测声音输入能量值、声音参考能量值,以及声音输出能量值,其中,声音输入能量值为声音输入信号对应的波形能量值,声音参考能量值为声音参考信号对应的波形能量值,声音输出能量值为声音输出信号对应的能量值;对声音输出能量值和声音输入能量值进行计算,得到声音能量比值;根据声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态;判断目标讲话状态与当前讲话状态是否相同,其中,当前讲话状态为历史时间段内的讲话状态;在判断出目标讲话状态与当前讲话状态不相同的情况下,将当前讲话状态切换为目标讲话状态。

可选地,当前讲话状态为下述之一:静音状态、远端讲话状态、双端讲话状态、近端讲话状态,其中,静音状态为第一通话设备和第二通话设备都不发出声音的讲话状态,远端讲话状态为第一通话设备不发出声音、第二通话设备发出声音的讲话状态,双端讲话状态为第一通话设备和第二通话设备都发出声音的讲话状态,近端讲话状态为第一通话设备发出声音、第二通话设备不发出声音的讲话状态。

可选地,上述数据处理设备在执行程序时,还可以根据声音输入信号和声音参考信号,确定第一波形信号相关值;根据声音输入信号和声音输出信号,确定第二波形信号相关值;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,确定目标讲话状态为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值且声音能量比值大于第十预设阈值的情况下,确定目标讲话状态为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值且声音能量比值大于第十预设阈值的情况下,确定目标讲话状态为近端讲话状态;在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,确定目标讲话状态为静音状态。

可选地,上述数据处理设备在执行程序时,还可以对声音输入信号和声音参考信号进行自适应滤波处理,得到滤波后的声音信号;将滤波后的声音信号作为声音输出信号。

可选地,上述处理器在执行程序时,还可以获取多个声音输入幅度值,其中,声音输入幅度值为声音输入信号对应的声音波形幅度值;根据多个声音输入幅度值,确定声音幅度包络线;对声音幅度包络线进行分析,确定幅度包络斜率值;根据幅度包络斜率值、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

上述数据处理设备在执行程序时,还可以判断幅度包络斜率值是否大于预设斜率值;在判断出幅度包络斜率值大于预设斜率值的情况下,确定讲话声音状态为第一状态;在判断出幅度包络斜率值不大于预设斜率值的情况下,确定讲话声音状态为第二状态;根据讲话声音状态、声音输入能量值、声音参考能量值和声音能量比值,确定目标讲话状态。

上述数据处理设备在执行程序时,还可以根据声音输入信号和声音参考信号,确定第一波形信号相关值;根据声音输入信号和声音输出信号,确定第二波形信号相关值;在声音输入能量值大于第一预设阈值,声音参考能量值大于第二预设阈值、第一波形信号相关值大于第三预设阈值、第二波形信号相关值低于第四预设阈值且声音能量比值低于第五预设阈值的情况下,确定目标讲话状态为远端讲话状态;在声音输入能量值大于第六预设阈值,声音参考能量值大于第七预设阈值、第一波形信号相关值低于第八预设阈值、第二波形信号相关值大于第九预设阈值、声音能量比值大于第十预设阈值的情况下,以及讲话声音状态为第一状态时,确定目标讲话状态为双端讲话状态;在声音输入能量值大于第十一预设阈值,声音参考能量值低于第十二预设阈值、第一波形信号相关值低于第十三预设阈值、第二波形信号相关值大于第十四预设阈值、声音能量比值大于第十预设阈值的情况下,以及讲话声音状态为第一状态时,确定目标讲话状态为近端讲话状态;在声音输入能量值低于第十五预设阈值且声音参考能量值低于第十六预设阈值的情况下,确定目标讲话状态为静音状态。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1