1.本技术涉及声音控制领域,特别涉及一种啸叫抑制方法、系统、存储介质及耳机设备。
背景技术:2.在市场激励下,tws(true wireless stereo,真无线立体声)耳机的辅助听力功能愈来愈重要,辅助听力功能即对听损患者缺失频带进行增益放大。tws耳机中的扬声器和拾音麦克风之间距离较近,因此,拾音麦克风拾取到的声音信号s
mic
中除了包括纯净的声音信号s
i
,还包括一部分扬声器放大的声音信号s
l1
,拾音麦克风拾取到的声音信号s
mic
经耳机内部算法放大后发送给扬声器输出,多次循环,声音信号s
l1
无限的叠加以及放大,就会产生啸叫,啸叫会对听力带来二次伤害。因此,需要将声音信号s
mic
中的扬声器对应的声音信号s
l1
消除,从而抑制啸叫。
3.现有技术中,一般是通过自适应滤波器根据扬声器输出信号s
l0
估计扬声器被拾音麦克风拾取到的声音信号s
l1
,但是自适应滤波器只能对线性变化的信号进行估计,而tws耳机在实现其辅助听力功能时,会对相关频带进行增益放大,增益放大导致扬声器周围振动分子增多,从而使扬声器输出信号s
l0
发生非线性失真,相应的,扬声器输出信号s
l0
受tws耳机壳体内各部件反射后到拾音麦克风的反馈路径无法被准确预估,从而导致自适应滤波器无法准确估计出扬声器被拾音麦克风拾取到的声音信号s
l1
,也就无法消除拾音麦克风拾取到的声音信号s
mic
中的声音信号s
l1
,使得现有的啸叫抑制方案效果较差,给用户带来不良体验。
4.因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
技术实现要素:5.本技术的目的是提供一种啸叫抑制方法、系统、存储介质及耳机设备,不受线性信号或非线性信号的影响,能够阻断啸叫产生的条件,抑制啸叫。
6.为解决上述技术问题,本技术提供了一种啸叫抑制方法,包括:
7.提取拾音麦克风拾取的声音信号中的特征信息;
8.将所述特征信息输入预设的啸叫抑制神经网络模型,以便通过所述啸叫抑制神经网络模型输出扬声器的声音信号传输到所述拾音麦克风的路径信息;
9.根据所述路径信息计算所述扬声器的声音信号中被所述拾音麦克风拾取到的目标声音信号,将所述目标声音信号从所述拾音麦克风拾取的声音信号中消除。
10.可选的,所述扬声器的声音信号为通过反馈麦克风获取到的所述扬声器的声音信号。
11.可选的,所述提取拾音麦克风拾取的声音信号中的特征信息之前,该啸叫抑制方法还包括:
12.对所述拾音麦克风拾取的声音信号进行啸叫检测;
13.相应的,所述提取拾音麦克风拾取的声音信号中的特征信息的过程包括:
14.当判定啸叫发生,提取拾音麦克风拾取的声音信号中的特征信息。
15.可选的,所述对所述拾音麦克风拾取的声音信号进行啸叫检测的过程包括:
16.当所述拾音麦克风拾取的声音信号的时域的幅度大于第一预设值,或当所述拾音麦克风拾取的声音信号的频域的幅度大于第二预设值,判定啸叫发生。
17.可选的,该啸叫抑制方法还包括:
18.确定多组训练参数,每组所述训练参数包括纯净语音信号、所述拾音麦克风拾取的声音信号,所述扬声器的声音信号及模拟路径信息;
19.对每组所述训练参数进行特征提取得到特征信息;
20.根据各组所述训练参数的所述特征信息训练神经网络得到所述啸叫抑制神经网络模型。
21.可选的,对所述扬声器的声音信号进行特征提取得到特征信息的过程包括:
22.通过fbank对所述扬声器的声音信号进行特征提取得到特征信息。
23.可选的,所述提取拾音麦克风拾取的声音信号中的特征信息的过程包括:
24.将所述拾音麦克风拾取的声音信号的能量谱转换为功率谱;
25.对所述功率谱进行mel滤波得到目标声谱;
26.计算所述目标声谱的对数谱;
27.对所述对数谱进行dct转换,得到倒谱系数作为特征信息。
28.为解决上述技术问题,本技术还提供了一种啸叫抑制系统,包括:
29.提取模块,用于提取拾音麦克风拾取的声音信号中的特征信息;
30.处理模块,用于将所述特征信息输入预设的啸叫抑制神经网络模型,以便通过所述啸叫抑制神经网络模型输出扬声器的声音信号传输到所述拾音麦克风的路径信息;
31.消除模块,用于根据所述路径信息计算所述扬声器的声音信号中被所述拾音麦克风拾取到的目标声音信号,将所述目标声音信号从所述拾音麦克风拾取的声音信号中消除。
32.为解决上述技术问题,本技术还提供了一种存储介质,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如上任一项所述啸叫抑制方法的步骤。
33.为解决上述技术问题,本技术还提供了一种耳机设备,所述耳机设备包括如上文所述的存储介质。
34.本技术提供了一种啸叫抑制方法,首先基于神经网络构建啸叫抑制神经网络模型,将拾音麦克风拾取的声音信号中的特征信息输入到该啸叫抑制神经网络模型中,由于神经网络不受线性信号或非线性信号的影响,因此,该啸叫抑制模型可准确估计出扬声器的声音信号传输到拾音麦克风的路径信息,根据路径信息计算扬声器的声音信号中被拾音麦克风拾取到的目标声音信号,从拾音麦克风拾取的声音信号中将目标声音信号去除,即可阻断啸叫产生的条件,从而抑制啸叫。本技术还提供了一种啸叫抑制系统、存储介质及耳机设备,具有和上述啸叫抑制方法相同的有益效果。
附图说明
35.为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
36.图1为本技术所提供的一种啸叫抑制方法的步骤流程图;
37.图2为本技术所提供的一种啸叫抑制系统的结构示意图。
具体实施方式
38.本技术的核心是提供一种啸叫抑制方法、系统、存储介质及耳机设备,不受线性信号或非线性信号的影响,能够阻断啸叫产生的条件,抑制啸叫。
39.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
40.请参照图1,图1为本技术所提供的一种啸叫抑制方法的步骤流程图,该啸叫抑制方法包括:
41.s101:提取拾音麦克风拾取的声音信号中的特征信息;
42.具体的,本实施例应用于耳机设备,耳机设备包括拾音麦克风、辅助麦克风和扬声器,其中,拾音麦克风用于采集其所处环境中的声音信号,由于耳机设备中的拾音麦克风和扬声器距离较近,因此,拾音麦克风拾取到的声音信号中除了包括纯净的人声信号外,还可能包括扬声器的声音信号、噪音信号等。
43.一般的,拾音麦克风拾取到的声音信号会通过耳机设备内的降噪、放大等处理,然后送入扬声器,由扬声器输出,扬声器的声音信号再被麦克风拾取,如此循环,拾音麦克风拾取到的扬声器的声音信号无限叠加就会产生啸叫,啸叫会对听力产生二次伤害,为了抑制啸叫,就需要将拾音麦克风拾取到的声音信号中的扬声器的声音信号去除。
44.可以理解的是,麦克风拾取到的不同的声音信号会有各自不同的特征信息,为了使麦克风向扬声器发送的声音信号中仅包括纯净语音信号,需要准确获取麦克风拾取到的声音信号中的特征信息,该特征信息可以确定用于抑制啸叫的调整参数。
45.s102:将特征信息输入预设的啸叫抑制神经网络模型,以便通过啸叫抑制神经网络模型输出扬声器的声音信号传输到拾音麦克风的路径信息;
46.具体的,以麦克风拾取到的声音信号仅包括纯净语音信号和拾取到的扬声器输出信号为例进行说明,设麦克风拾取到的声音信号为x,纯净语音信号为s,被拾音麦克风拾取到的扬声器的声音信号即目标声音信号为n,x=s+n,本实施例的目的就是去除n。其中,拾音麦克风拾取到的扬声器的目标声音信号n为扬声器的声音信号y被耳机设备的壳体及壳体内的元件遮挡、反射后到达拾音麦克风的信号,那么壳体内壁以及壳体内的元件都可以看作是一个滤波器,因此,也可以理解为扬声器的完整声音信号y经壳体和壳体内的元件进行多次滤波得到的扬声器的目标声音信号n最终到达拾音麦克风,被拾音麦克风拾取。由于扬声器的完整声音信号y不同,其在壳体内传输时,到达拾音麦克风的传输路径可能也有所不同,也即不同的y可能会被不同的滤波器滤波,而n=f
×
y,f即扬声器的声音信号在耳机
设备的壳体内由扬声器传输到麦克风的路径信息,因此,要获取到准确的n,就要准确估计出f。
47.具体的,在助听器领域,由于其对听损患者缺失的某些频带进行增益放大后,会导致扬声器输出的信号发生非线性失真,现有技术的方案只能对线性信号的传输路径进行预估,发生非线性失真的部分的传输路径无法被准确估计。为解决信号非线性失真的问题,本实施例首先基于神经网络构建处理模型,即本步骤中的啸叫抑制神经网络模型,具体的,可选用rnn(recurrent neural network,循环神经网络)构建啸叫抑制神经网络模型。神经网络可不受信号线性或非线性的影响,将麦克风拾取到的声音信号的特征信息输入该啸叫抑制神经网络模型后,该啸叫抑制神经网络模型均可自动输出扬声器的声音信号在耳机设备的壳体内传输到拾音麦克风的路径信息,参照上文,该路径信息也可以理解为一组滤波器系数。
48.s103:根据路径信息计算扬声器的声音信号中被拾音麦克风拾取到的目标声音信号,将目标声音信号从拾音麦克风拾取的声音信号中消除。
49.具体的,考虑到估计目标声音信号时,需要以扬声器实际输出的声音信号做参考,在执行本步骤之前,还包括获取扬声器的声音信号的操作,根据获取到的扬声器的声音信号y和路径信息f计算被拾音麦克风拾取到的目标声音信号n,将目标声音信号y从拾音麦克风拾取的声音信号x中消除,那么拾音麦克风输入到扬声器的声音信号则仅包括纯净语音信号s,从而阻断啸叫产生的条件,进而抑制啸叫,避免啸叫对用户的听力产生二次损坏,提高耳机设备的竞争力。
50.可见,本实施例中,首先基于神经网络构建啸叫抑制神经网络模型,将拾音麦克风拾取的声音信号中的特征信息输入到该啸叫抑制神经网络模型中,由于神经网络不受线性信号或非线性信号的影响,因此,该啸叫抑制模型可准确估计出扬声器的声音信号传输到拾音麦克风的路径信息,根据路径信息计算扬声器的声音信号中被拾音麦克风拾取到的目标声音信号,从拾音麦克风拾取的声音信号中将目标声音信号去除,即可阻断啸叫产生的条件,从而抑制啸叫。
51.在上述实施例的基础上:
52.作为一种可选的实施例,扬声器的声音信号为通过反馈麦克风获取到的扬声器的声音信号。
53.参照上文,耳机设备还包括反馈麦克风,本实施例通过反馈麦克风来获取扬声器的声音信号,可以去除信号传输时延等因素,获取到更加精准的扬声器的声音信号,从而进一步保证对目标声音信号的准确估计。
54.作为一种可选的实施例,提取拾音麦克风拾取的声音信号中的特征信息之前,该啸叫抑制方法还包括:
55.对拾音麦克风拾取的声音信号进行啸叫检测;
56.相应的,提取拾音麦克风拾取的声音信号中的特征信息的过程包括:
57.当判定啸叫发生,提取拾音麦克风拾取的声音信号中的特征信息。
58.本实施例中,当获取到拾音麦克风拾取的声音信号后,先对该声音信号进行啸叫检测,即判断是否发生啸叫,发生啸叫再进行后续获取特征信息的操作,以减少数据处理量。由于发生啸叫的声音信号在频域或时域上都会有所体现,那么可以根据时域的幅度值
或频域的幅度值来判断是否发生啸叫。具体的,当拾音麦克风拾取的声音信号的时域的幅度大于第一预设值,或当拾音麦克风拾取的声音信号的频域的幅度大于第二预设值,判定啸叫发生;相应的,当拾音麦克风拾取的声音信号的时域的幅度小于或等于第一预设值,或当拾音麦克风拾取的声音信号的频域的幅度小于或等于第二预设值,判定啸叫未发生。
59.当然,除了可以通过上述方案实现啸叫检测,还可以通过其他方案实现,本实施例在此不作具体的限定。
60.作为一种可选的实施例,该啸叫抑制方法还包括:
61.确定多组训练参数,每组训练参数包括纯净语音信号、拾音麦克风拾取的声音信号,扬声器的声音信号及模拟路径信息;
62.对每组训练参数进行特征提取得到特征信息;
63.根据各组训练参数的特征信息训练神经网络得到啸叫抑制神经网络模型。
64.具体的,首先获取多组训练参数,训练参数包括已知的纯净语音信号、拾音麦克风拾取的声音信号、扬声器的声音信号及模拟路径信息,对上述各声音信号提取各自对应的特征信息,根据每组训练参数的特征信息训练神经网络,从而得到啸叫抑制神经网络模型。具体的,特征提取的特征参量为频域点的能量和,首先是对拾音麦克风拾取的声音信号进行特征提取,对纯净的语音源输出的纯净语音信号进行特征分析,对增益控制后的扬声器的声音信号进行特征提取,然后将上述提取结果和模拟路径,四个输入量化成矩阵进行输入和输出的幅值,来训练rnn得到啸叫抑制神经网络模型。在实际应用中,当有声音信号的特征信息输入该啸叫抑制神经网络模型中后,该抑制神经网络模型即可自动生成路径信息。
65.作为一种可选的实施例,对扬声器的声音信号进行特征提取得到特征信息的过程包括:
66.通过fbank(滤波器组)对扬声器的声音信号进行特征提取得到特征信息。
67.具体的,利用反馈麦克风拾取扬声器的声音信号,通过fbank提取该声音信号中的特征信息,特征信息中特征值的个数为22。
68.作为一种可选的实施例,提取拾音麦克风拾取的声音信号中的特征信息的过程包括:
69.将拾音麦克风拾取的声音信号的能量谱转换为功率谱;
70.对功率谱进行mel滤波得到目标声谱;
71.计算目标声谱的对数谱;
72.对对数谱进行dct转换,得到倒谱系数作为特征信息。
73.具体的,为便于分析将拾音麦克风拾取的声音信号的能量谱通过第一关系式转换为功率谱,其中,第一关系式为:
74.其中,|s
i
(k)|2为声音信号的傅里叶变换模平方,上述公式中,p表示功率,s表示傅里叶变换的频域值,k表示傅里叶变换的第k个点,n为区间长度。
75.然后参照第二关系式对功率谱进行mel滤波,将功率谱转换为符合人耳听觉习惯的声谱,然后再取对数,以将单位转换为db。第二关系式为:
[0076][0077]
其中,m表示第m个滤波器系数,特征提取有26个滤波器组,共有26个特征。
[0078]
最后参照第三关系式对倒数谱进行dct(dct for discrete cosine transform,离散余弦变换),保留dct的第2~13个系数,计算13维特征向量的一阶差分和二阶差分,以及能量值,得到39维的mfcc特征的倒谱系数。第三关系式为:
[0079][0080]
其中,c表示dct变换系统,n表示帧。
[0081]
可以理解的是,拾音麦克风拾取到的声音信号和反馈麦克风拾取到的声音信号经过上述特征提取后,获取到的特征信息中的特征值的个数为78个,将上述特征信息输入到啸叫抑制神经网络模型后,可获取到扬声器的声音信号在耳机设备内部由扬声器传输到拾音麦克风的路径信息,路径信息可以表示为27阶的滤波器系数,因此路径信息具体可包括27个向量。
[0082]
请参照图2,图2为本技术所提供的一种啸叫抑制系统的结构示意图,该啸叫抑制系统包括:
[0083]
提取模块11,用于提取拾音麦克风拾取的声音信号中的特征信息;
[0084]
处理模块12,用于将特征信息输入预设的啸叫抑制神经网络模型,以便通过啸叫抑制神经网络模型输出扬声器的声音信号传输到拾音麦克风的路径信息;
[0085]
消除模块13,用于根据路径信息计算扬声器的声音信号中被拾音麦克风拾取到的目标声音信号,将目标声音信号从拾音麦克风拾取的声音信号中消除。
[0086]
可见,本实施例中,首先基于神经网络构建啸叫抑制神经网络模型,将拾音麦克风拾取的声音信号中的特征信息输入到该啸叫抑制神经网络模型中,由于神经网络不受线性信号或非线性信号的影响,因此,该啸叫抑制模型可准确估计出扬声器的声音信号传输到拾音麦克风的路径信息,根据路径信息计算扬声器的声音信号中被拾音麦克风拾取到的目标声音信号,从拾音麦克风拾取的声音信号中将目标声音信号去除,即可阻断啸叫产生的条件,从而抑制啸叫。
[0087]
作为一种可选的实施例,扬声器的声音信号为通过反馈麦克风获取到的扬声器的声音信号。
[0088]
作为一种可选的实施例,该啸叫抑制系统还包括:
[0089]
检测模块,用于对拾音麦克风拾取的声音信号进行啸叫检测;
[0090]
相应的,提取拾音麦克风拾取的声音信号中的特征信息的过程包括:
[0091]
提取模块11,具体用于当判定啸叫发生,提取拾音麦克风拾取的声音信号中的特征信息。
[0092]
作为一种可选的实施例,对拾音麦克风拾取的声音信号进行啸叫检测的过程包括:
[0093]
当拾音麦克风拾取的声音信号的时域的幅度大于第一预设值,或当拾音麦克风拾取的声音信号的频域的幅度大于第二预设值,判定啸叫发生;
[0094]
当拾音麦克风拾取的声音信号的时域的幅度小于或等于第一预设值,或当拾音麦克风拾取的声音信号的频域的幅度小于或等于第二预设值,判定啸叫未发生。
[0095]
作为一种可选的实施例,该啸叫抑制系统还包括:
[0096]
训练模块,用于确定多组训练参数,每组训练参数包括纯净语音信号、拾音麦克风拾取的声音信号,扬声器的声音信号及模拟路径信息;对每组训练参数进行特征提取得到特征信息;根据各组训练参数的特征信息训练神经网络得到啸叫抑制神经网络模型。
[0097]
作为一种可选的实施例,对扬声器的声音信号进行特征提取得到特征信息的过程包括:
[0098]
通过fbank对扬声器的声音信号进行特征提取得到特征信息。
[0099]
作为一种可选的实施例,提取拾音麦克风拾取的声音信号中的特征信息的过程包括:
[0100]
将拾音麦克风拾取的声音信号的能量谱转换为功率谱;
[0101]
对功率谱进行mel滤波得到目标声谱;
[0102]
计算目标声谱的对数谱;
[0103]
对对数谱进行dct转换,得到倒谱系数作为特征信息。
[0104]
本技术还提供了一种存储介质,该存储介质可以包括:只读存储器(read
‑
only memory,rom)、随机存取存储器(random access memory,ram)等各种可以存储程序代码的介质。该存储介质上存储有计算机可执行指令,计算机可执行指令被处理器加载并执行时实现以下步骤:提取拾音麦克风拾取的声音信号中的特征信息;将特征信息输入预设的啸叫抑制神经网络模型,以便通过啸叫抑制神经网络模型输出扬声器的声音信号传输到拾音麦克风的路径信息;根据路径信息计算扬声器的声音信号中被拾音麦克风拾取到的目标声音信号,将目标声音信号从拾音麦克风拾取的声音信号中消除。
[0105]
本实施例首先基于神经网络构建啸叫抑制神经网络模型,将拾音麦克风拾取的声音信号中的特征信息输入到该啸叫抑制神经网络模型中,由于神经网络不受线性信号或非线性信号的影响,因此,该啸叫抑制模型可准确估计出扬声器的声音信号传输到拾音麦克风的路径信息,根据路径信息计算扬声器的声音信号中被拾音麦克风拾取到的目标声音信号,从拾音麦克风拾取的声音信号中将目标声音信号去除,即可阻断啸叫产生的条件,从而抑制啸叫。
[0106]
作为一种可选的实施例,存储介质中存储的计算机可执行指令被处理器加载并执行时,具体可以实现以下步骤:对拾音麦克风拾取的声音信号进行啸叫检测;当判定啸叫发生,提取拾音麦克风拾取的声音信号中的特征信息。
[0107]
作为一种可选的实施例,存储介质中存储的计算机可执行指令被处理器加载并执行时,具体可以实现以下步骤:当拾音麦克风拾取的声音信号的时域的幅度大于第一预设值,或当拾音麦克风拾取的声音信号的频域的幅度大于第二预设值,判定啸叫发生;当拾音麦克风拾取的声音信号的时域的幅度小于或等于第一预设值,或当拾音麦克风拾取的声音
信号的频域的幅度小于或等于第二预设值,判定啸叫未发生。
[0108]
作为一种可选的实施例,存储介质中存储的计算机可执行指令被处理器加载并执行时,具体可以实现以下步骤:确定多组训练参数,每组训练参数包括纯净语音信号、拾音麦克风拾取的声音信号,扬声器的声音信号及模拟路径信息;对每组训练参数进行特征提取得到特征信息;根据各组训练参数的特征信息训练神经网络得到啸叫抑制神经网络模型。
[0109]
作为一种可选的实施例,存储介质中存储的计算机可执行指令被处理器加载并执行时,具体可以实现以下步骤:通过fbank对扬声器的声音信号进行特征提取得到特征信息。
[0110]
作为一种可选的实施例,存储介质中存储的计算机可执行指令被处理器加载并执行时,具体可以实现以下步骤:将拾音麦克风拾取的声音信号的能量谱转换为功率谱;对功率谱进行mel滤波得到目标声谱;计算目标声谱的对数谱;对对数谱进行dct转换,得到倒谱系数作为特征信息。
[0111]
另一方面,本技术还提供了一种耳机设备,耳机设备包括上文任意一个实施例所描述的存储介质。
[0112]
对于本技术所提供的一种耳机设备的介绍请参照上述实施例,本技术在此不再赘述。
[0113]
本技术所提供的一种耳机设备具有和上述啸叫抑制方法相同的有益效果。
[0114]
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0115]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其他实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。