一种多通道含风噪语音信号的处理方法及系统与流程

未命名 08-15 阅读:76 评论:0


1.本发明涉及语音处理技术领域,具体地,涉及一种多通道含风噪语音信号的处理方法及系统。


背景技术:

2.麦克风(mic)在采集语音信号过程中,不可避免地会受到周围环境影响,其中就包括有风环境下产生的风噪。对于多mic电子设备,由于环境风都具有一定的吹风方向,所以各个mic通道采集到的语音信号中含风噪情况不尽相同。
3.通常情形下,各个mic拾取的语音信号差异不会很大,但是因为风有风向,所以各个通道mic拾取的风噪可能有较大差异,且风噪大的通道其整个通道的能量也大。为提高多mic电子设备的音频处理质量,有必要实时从多个mic通道中选择风噪含量最少的通道进入后续的语音处理。


技术实现要素:

4.本发明实施例提供了一种多通道含风噪语音信号的处理方法及系统,能够实时有效地从多个mic通道中准确识别风噪含量最少的最优通道作为输出。
5.依据本发明的第一方面,提供了一种多通道含风噪语音信号的处理方法,所述方法包括:
6.对多个麦克风实时输入的多通道信号分别进行分帧和时频变换预处理;
7.根据麦克风位置对所述多通道信号进行分组,每个通道组包括至少2个通道信号;
8.以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪;
9.在确定所有通道组或者部分通道组不含有风噪时,将不含风噪的通道组内的所有通道的语音信号逐帧进行波束融合后输出;
10.在确定所有通道组均含有风噪时,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出。
11.在一优选实施例中,所述结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出,包括:
12.从全部通道信号中逐帧选择出能量最小和能量次小的两个通道,将所述两个通道的能量进行相除,如果相除所得商数在接近1的预设范围内,则对所述两个通道计算各自的累计频谱平均重心因子,并选择累计频谱平均重心因子数值较大者对应的通道信号进行输出,否则选择能量最小的通道信号进行输出。
13.作为上述方案的改进,所述方法还包括:
14.在输出通道信号过程中,将当前帧选择的通道编号与上一帧输出的通道编号进行比较,若相等,则直接输出当前帧选择的通道编号的通道信号;
15.若不相等,则继续输出上一帧输出的通道编号的通道信号直至达到预设保持帧数。
16.作为上述方案的进一步改进,所述方法还包括:
17.通道切换后,将上一帧通道编号的通道信号与当前帧通道编号的通道信号逐帧进行加权平滑,得到加权平滑的语音信号,其中当前帧通道编号的通道信号的权重逐帧增大;
18.逐帧输出所述加权平滑的语音信号直至达到预设平滑帧数。
19.在一优选实施例中,所述累计频谱平均重心因子的计算过程包括:
20.根据每帧的帧幅频乘积与帧幅值的比值得到单帧频谱重心因子,其中所述帧幅频乘积由每帧的所有频点的幅值与对应频率的乘积之和得到,所述帧幅值由每帧的所有频点的幅值之和得到;
21.对当前累计帧内的所有的单帧频谱重心因子之和求平均得到所述累计频谱平均重心因子。
22.依据本发明的第二方面,提供了一种多通道含风噪语音信号的处理系统,所述系统包括:
23.预处理模块,用于对多个麦克风实时输入的多通道信号分别进行分帧和时频变换预处理;
24.位置分组模块,用于根据麦克风位置对所述多通道信号进行分组,每个通道组包括至少2个通道信号;
25.风噪检测模块,用于以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪;
26.波束融合模块,用于在确定所有通道组或者仅部分通道组不含有风噪时,将不含风噪的通道组内的所有通道信号逐帧进行波束融合后输出;
27.通道选择模块,用于在确定所有通道组均含有风噪时,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出。
28.在一优选实施例中,所述通道选择模块包括:
29.能量筛选单元,用于在确定所有通道组均含有风噪时,从全部通道信号中逐帧选择出能量最小和能量次小的两个通道;
30.能量比较单元,用于将所述能量筛选单元选择出的所述两个通道的能量进行相除,判断相除所得商数是否在接近1的预设范围内;
31.频谱重心因子计算单元,用于对所述两个通道计算各自的累计频谱平均重心因子;
32.第一通道选择单元,用于在所述能量比较单元判断所述两个通道的能量相除所得商数在接近1的预设范围内时,选择累计频谱平均重心因子数值较大者对应的通道信号进行输出;
33.第二通道选择单元,用于在所述能量比较单元判断所述两个通道的能量相除所得商数不在接近1的预设范围内时,选择能量最小的通道信号进行输出。
34.作为上述方案的改进,所述系统还包括:
35.通道保持模块,用于在输出通道信号过程中,,将当前帧选择的通道编号与上一帧输出的通道编号进行比较,若相等,则直接输出当前帧选择的通道编号的通道信号;若不相等,则继续输出上一帧输出的通道编号的通道信号直至达到预设保持帧数。
36.作为上述方案的改进,所述系统还包括:
37.平滑切换模块,用于通道切换后,将上一帧通道编号的通道信号与当前帧通道编号的通道信号逐帧进行加权平滑,得到加权平滑的语音信号,其中当前帧通道编号的通道信号的权重逐帧增大;逐帧输出所述加权平滑的语音信号直至达到预设平滑帧数。
38.在一优选实施例中,所述频谱重心因子计算单元计算所述累计频谱平均重心因子的过程包括:
39.根据每帧的帧幅频乘积与帧幅值的比值得到单帧频谱重心因子,其中所述帧幅频乘积由每帧的所有频点的幅值与对应频率的乘积之和得到,所述帧幅值由每帧的所有频点的幅值之和得到;
40.对当前累计帧内的所有的单帧频谱重心因子之和求平均得到所述累计频谱平均重心因子。
41.依据本发明的第三方面,提供了一种电子设备,包括多个麦克风、存储器和处理器,所述多个麦克风分别实时采集周围环境的语音信号得到多通道信号;
42.所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行,以实现前述的多通道含风噪语音信号的处理方法。
43.依据本发明的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序当被处理器执行时,实现前述的多通道含风噪语音信号的处理方法。
44.本发明的有益效果是:
45.本发明实施例利用各mic拾取到的不同通道语音信号中含风噪大小不同的特点,综合考虑了音频信号的时域特征和频域特征,在确定所有通道的语音信号均含有风噪时,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出,这样既利用了含风噪大的通道其通道能量也大的特点,通过时域能量判决策略选择能量最小的通道信号进行输出,同时为了克服单一依据能量最小判决策略可能陷入局部最优,又利用了风噪能量多集中于低频的特点,通过频域频谱识别能量频率分布情况,选择频谱重心最高的通道信号进行输出,予以解决最优通道选择过程中误选出次优通道的问题,从而可实时有效地从多个通道中准确识别风噪含量最少的最优通道进行输出。
附图说明
46.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。在附图中:
47.图1示出了本发明一个实施例的多通道含风噪语音信号的处理方法的流程示意图;
48.图2示出了一种分帧示意图;
49.图3(a)~图3(d)示出了本发明一个实施例的风从正面吹时4个通道信号的时域波形图和相应频谱图,其中图3(a)对应l1通道,图3(b)对应r1通道,图3(c)对应r2通道,图3(d)对应l2通道;
50.图4示出了风从正面吹时对图3的4个通道信号依据信号能量最小判决策略仿真输出的时域波形图和相应频谱图;
51.图5(a)~图5(d)示出了本发明一个实施例的风从左侧吹时4个通道信号的时域波形图和相应频谱图,其中图5(a)对应l1通道,图5(b)对应r1通道,图5(c)对应r2通道,图5(d)对应l2通道;
52.图6示出了风从左侧吹时对图5的4个通道信号依据能量最小仿真判决策略输出的时域波形图和相应频谱图;
53.图7示出了与图5(b)对应的r1通道和与图5(c)对应的r2通道各自的gck曲线;
54.图8示出了本发明一个实施例的通道切换后输出信号在通道保持和平滑切换改进前后的频谱局部对比图;
55.图9示出了本发明一个实施例的多通道含风噪语音信号的处理系统的结构示意图;
56.图10示出了本发明一个实施例的通道选择模块的结构示意图;
57.图11为本发明一个实施例提供的一种电子设备的结构示意图。
具体实施方式
58.下面将参照附图更详细地描述本发明实施例。提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。
59.图1示出了本发明一个实施例的多通道含风噪语音信号的处理方法的流程示意图。参见图1所示,本发明的方法包括如下步骤s110至步骤s150:
60.步骤s110,对多个麦克风实时输入的多通道信号分别进行分帧和时频变换预处理。
61.本步骤s110对多通道信号分别进行的预处理包括:在时域上进行分帧,参见图2,图2示出了一种分帧示意图,每帧长度和重叠长度(或帧移)可以根据需要设置,一般每帧时长在7.5ms~15ms左右,并对每帧时域数据进行加窗短时傅里叶变换得到每帧的频域信号。
62.步骤s120,根据麦克风位置对所述多通道信号进行分组,每个通道组包括至少2个通道信号。
63.电子设备上的多个麦克风,因其空间位置上的不同,采集的声音信号也会存在差异,在有风的情况下,每个麦克风实时输入的通道信号中既有语音信号又有风噪。但通常情形下,各个通道的语音信号能量差异不会很大,但是因为风有风向,所以各个通道的风噪能量可能有较大差异。
64.根据麦克风位置对多通道信号进行分组,每个通道组包括至少2个通道信号,这种分组方式可以将位置靠近的麦克风划分到同一个通道组,保证同一个通道组内的各通道拾取的风噪大小接近。
65.在接下来的描述中,为便于仿真和行文说明,以4个通道为例,可将其分为l和r左右两组,为方便描述,4个通道的编号分别记为l1、l2和r1、r2。
66.需要说明的是,对于其他多通道数量,例如3个通道,可以通过共用中间位置的mic
分为左右两组。再例如6个通道,可以分为3组,每组包括2个通道,当然也可以分为2组,每组包括3个通道。至于具体如何分组,需要结合产品硬件设计和布局,再行调整。
67.步骤s130,以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪。
68.风噪检测可以采用任一现有方法,例如双通道风噪检测方法,其可基于目前常用的chi-square算法实现风噪检测,本发明对采用的具体风噪检测方法不限定,故也不做详细描述。
69.在上述的4个通道示例中,对l和r两个通道组,以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪。程序中根据检测结果,可以返回不同的值,例如l和r侧都无风时,返回0,l侧有风时,返回1,r侧有风时,返回2,l和r侧都有风时,返回3。
70.步骤s140,在确定所有通道组或者部分通道组不含有风噪时,将不含风噪的通道组内的所有通道信号逐帧进行波束融合后输出。
71.继续上述的4个通道示例,无风时,返回值为0,则对4个通道信号逐帧进行波束融合后输出;有风但风的风向较为固定时,会检测到仅单侧通道组含有风噪,另一侧通道组不含有风噪,即返回值为1或2,则仅对不含风噪的l或r侧的两通道信号逐帧进行波束融合后输出。
72.通过将不含风噪的通道组内的所有通道信号逐帧进行波束融合后输出,既可保证输出信号不含风噪,也使得输出信号能量较大。
73.步骤s150,在确定所有通道组均含有风噪时,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出。
74.继续上述的4个通道示例,有风且风的风向不固定时,会检测到双侧通道组都含有风噪,返回值为3,考虑到含风噪大的通道其通道能量也大的特点,此时期望的处理是,通过时域能量判决策略在4个通道中选择一能量最小的通道信号进行输出。采用的算法公式如下:
[0075][0076][0077]
上两式中,表示第ch通道、第k帧的输入信号,s
k,out
表示第k帧的输出信号,n为每帧采样点数,i为每帧采样序号。
[0078]
下面结合具体的4个通道信号进行说明。
[0079]
图3(a)~图3(d)示出了本发明一个实施例的风从正面吹时4个通道信号的时域波形图和相应频谱图,其中图3(a)对应l1通道,图3(b)对应r1通道,图3(c)对应r2通道,图3(d)对应l2通道。
[0080]
首先整体说明下图3(a)~图3(d):每幅图包括上下两部分,上半部分为时域波形图,其纵坐标标识的是信号幅值,下半部分为频谱图,其纵坐标标识的是信号频率,上下两部分共用横坐标,横坐标标识的是时间t。后面的各类似附图说明同上,不再赘述。
[0081]
考虑到各个通道接收到的语音信号差异不大,但含风噪多少不同,对比图3(a)~
图3(d),可以看到风从正面吹时4个通道拾取的风噪大小有所区别。依据能量最小通常能选择到风噪含量最低的最优通道,仿真输出结果如图4所示,图4示出了风从正面吹时对图3的4个通道信号依据信号能量最小判决策略仿真输出的时域波形图和相应频谱图。
[0082]
然而,由于4个mic坐标位置各不相同,加上风向随时会发生改变,接收到的含噪语音信号幅值大小存在差异,不含风噪通道信号幅值不一定实时都比含风噪通道信号幅值小,因此单一依据信号能量最小判决策略可能会误选次优通道。
[0083]
图5(a)~图5(d)示出了本发明一个实施例的风从左侧吹时4个通道信号的时域波形图和相应频谱图,其中图5(a)对应l1通道,图5(b)对应r1通道,图5(c)对应r2通道,图5(d)对应l2通道。比较图5(a)~图5(d),可以看到风从左侧吹时,左侧通道组(l1通道和l2通道)风噪含量比较多,右侧通道组(r1通道和r2通道)风噪含量比较少,而且全部时间段内最优通道是图5(b)对应的r1通道。
[0084]
图6示出了风从左侧吹时对图5的4个通道信号依据能量最小判决策略仿真输出的时域波形图和相应频谱图。然而从图6中的框线部分可以看到,频谱图中有一些竖线,说明依据能量最小判决策略输出的通道是在r1通道和r2通道间进行切换选择的,也即是说,输出的全部帧并非一直为最优的r1通道,而是有部分帧输出的是次优的r2通道。
[0085]
为避免最优通道选择过程中单一依据能量最小判决策略误选出次优通道,考虑到风噪能量多集中于低频的特点,本步骤s150还结合频域频谱识别能量频率分布情况,选择频谱重心最高的通道信号进行输出,予以解决最优通道选择过程中误选出次优通道的问题,从而可实时有效地从多个通道中准确识别风噪含量最少的最优通道进行输出。
[0086]
在一个优选实施例中,本步骤s150的“结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最大的通道信号进行输出”,具体包括:
[0087]
从全部通道信号中逐帧选择出能量最小和能量次小的两个通道,将所述两个通道的能量进行相除,如果相除所得商数在接近1的预设范围内,则对所述两个通道计算各自的累计频谱平均重心因子,并选择累计频谱平均重心因子数值较大者对应的通道信号进行输出,否则选择能量最小的通道信号进行输出。
[0088]
在确定所有通道组均含有风噪时,本优选实施例首先根据时域能量判决策略从全部通道信号中逐帧选择出能量最小和能量次小的两个通道,排除掉能量较大也即含风噪较多的其他通道,这样可以降低复杂度,缩小通道选择范围,减少后续的计算量,且不会实质影响到最优通道选择的准确性。
[0089]
为获取通道的频域频谱分布情况,本优选实施例引入了单通道累计频谱平均重心因子,其计算过程如下:
[0090]
根据每帧的帧幅频乘积与帧幅值的比值得到单帧频谱重心因子,其中所述帧幅频乘积由每帧的所有频点的幅值与对应频率的乘积之和得到,所述帧幅值由每帧的所有频点的幅值之和得到;
[0091]
对当前累计帧内的所有的单帧频谱重心因子之和求平均得到所述累计频谱平均重心因子。
[0092]
上述计算过程通过计算公式表述如下:
[0093]
第一步:计算出单帧频谱重心因子:
[0094][0095]
上式3中,k表示第k帧,fk(i)表示第k帧傅里叶变换后的第i个频点的幅值,m为短时傅里叶变换点数,fi为第i个频点对应的频率,fs为采样频率。
[0096]
另外,考虑到频谱具有对称性,只需要计算前半部分的频点也即m/2+1个频点即可。
[0097]
第二步:计算累计频谱平均重心因子:
[0098][0099]
通过对当前累计帧内的所有的单帧频谱重心因子之和求平均,均一化处理当前累计帧内的所有的单帧频谱重心因子,该均一化处理相当于对频谱重心进行时域上的平均平滑,避免单帧计算的鲁棒性差。
[0100]
针对图5示出的风从左侧吹时4个通道信号,依据能量最小判决策略可以很容易或很直观地排除掉左侧通道组的l1通道和l2通道,然而对右侧通道组的r1通道和r2通道,需要分别逐帧计算累计频谱平均重心因子gck。
[0101]
图7示出了与图5(b)对应的r1通道和与图5(c)对应的r2通道各自的gck曲线,横坐标标识的是时间t,纵坐标标识的是信号频率。其中上面的gck曲线对应r1通道,下面的gck曲线对应r2通道。由图7可以看出,含风噪少的r1通道其gck值大,说明其累计频谱平均重心较高,含风噪多的r2通道其gck值小,说明其累计频谱平均重心较低,因此通过比较gck曲线大小,也即通过比较累计频谱平均重心的高低,可以较明显区分出r1通道和r2通道各自的含风噪情况。
[0102]
本优选实施例,在逐帧依据能量最小判决策略选择一通道信号进行输出时,首先从全部通道中选择出能量最小和能量次小的两个通道,记为index1和index2,将这两个通道的能量energy(index1)和energy(index2)进行相除,如果相除所得商数energy(index1)/energy(index2)在接近1的预设范围内,例如在0.8~1.2范围内,说明这两个通道的能量比较接近,为避免误选出次优通道,接着对这两个通道分别计算gck值,并输出gck值较大者对应的通道信号,排除掉含低频能量较多也即含风噪较多的通道信号;如果相除所得商数energy(index1)/energy(index2)不在接近1的预设范围内,说明这两个通道的能量相差比较大,此时直接输出能量最小的通道,并不会发生误选出次优通道的情况。
[0103]
综上所述,本发明提供的多通道含风噪语音信号的处理方法,首先对多个麦克风实时输入的多通道信号进行分帧和时频变换预处理,并根据麦克风位置对多通道信号进行分组,方便以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪;在确定所有通道组或者部分通道组不含有风噪的情况下,则将不含风噪的通道组内的所有通道信号逐帧进行波束融合后输出,这样既保证了输出信号不含风噪也使得输出信号能量较大;
在确定所有通道组均含有风噪的情况下,考虑到不含风噪通道信号幅值不一定实时比含风噪通道信号幅值小的实际情况,为避免误选出次优通道,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出。
[0104]
可见,本发明的方法利用各mic拾取到的不同通道语音信号中含风噪大小不同的特点,综合考虑了音频信号的时域特征和频域特征,既利用了含风噪大的通道其通道能量也大的特点,通过时域能量判决策略选择能量最小的通道信号进行输出,同时为了克服单一依据能量最小判决策略可能陷入局部最优,又利用了风噪能量多集中于低频的特点,通过频域频谱识别能量频率分布情况,选择频谱重心最高的通道信号进行输出,予以解决最优通道选择过程中误选出次优通道的问题,从而可实时有效地从多个通道中准确识别风噪含量最少的最优通道进行输出。
[0105]
在输出通道信号过程中,还可能会出现通道间频繁切换带来的切换点频谱突变的问题,导致在频谱突变处产生噪声,影响听感。
[0106]
在一个改进实施例中,为了减少通道间的频繁切换,本发明的方法还包括:
[0107]
将当前帧选择的通道编号与上一帧输出的通道编号进行比较,若相等,则直接输出当前帧选择的通道编号的通道信号;
[0108]
若不相等,则继续输出上一帧输出的通道编号的通道信号直至达到预设保持帧数。
[0109]
上述改进实施例能够实现通道保持,减少通道间的频繁切换。其程序实现示例如下:
[0110]
当前帧,假设通道编号index的通道能量最小,与prev_index(代表上一帧能量最小通道编号)比较,若相等,则直接输出通道编号index的通道信号。若不等,则将预设保持帧数channel_swtich_hold(表示保持若干帧不切换的帧数)减1,同时继续输出通道编号prev_index的通道信号,直到channel_swtich_hold等于0时进行通道切换,同时将切换标志位isswitch置1,也即将切换标志位isswitch置为真,当然也可以采用其他标志位方式,例如true/false等。channel_swtich_hold设置一个正的初始值(例如数值5),并在通道切换后和判断通道编号index与prev_index相等时进行重置。
[0111]
在另一改进实施例中,为了避免通道切换后出现的切换点频谱突变问题,本发明的方法还进一步包括:
[0112]
通道切换后,将上一帧通道编号的通道信号与当前帧通道编号的通道信号逐帧进行加权平滑,得到加权平滑的语音信号,其中当前帧通道编号的通道信号的权重逐帧增大;
[0113]
逐帧输出所述加权平滑的语音信号直至达到预设平滑帧数。
[0114]
上述的改进实施例可以通过下述公式进行实现:
[0115]sk,out
=(1-w[i])*s
k,in
(prev_index)+w[i]*s
k,in
(index)
ꢀꢀꢀ
式5
[0116]
式5中,s
k,in
(prev_index)表示上一帧通道编号的第k帧输入的语音信号,s
k,in
(index)表示当前帧通道编号的第k帧输入的语音信号,s
k,out
表示第k帧输出的加权平滑的语音信号,w[i]表示权值,其取值在0~1范围内;i为权值序号,i的取值范围为0~预设平滑帧数,w[i]随i值的增大依次增大;每输出一帧所述加权平滑的语音信号将所述预设平滑帧数减一,直至所述预设平滑帧数等于0时完成平滑切换过程;
[0117]
将上述切换标志位isswitch重置为0,也即将切换标志位isswitch置为假,同时将上一帧通道编号prev_index更新为当前帧通道编号index。
[0118]
通道切换后,输出信号是由prev_index和index二个通道信号采用上式5进行加权平滑而成,其中权值w[i]根据实验设置,如[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0],w[i]随i值的增大依次增大,可以逐帧增大当前帧通道编号index的通道信号的权重,实现通道间的平滑切换,避免切换点的频谱突变。
[0119]
图8示出了本发明一个实施例的通道切换后输出信号在通道保持和平滑切换改进前后的频谱局部对比图,其中图8(a)对应改进前,图8(b)对应改进后。对比图8(a)和图8(b)可以看出,在图8(a)箭头标识的位置处,频谱图中有竖线,说明这些位置存在频谱突变,而在图8(b)对应位置处,频谱图中未发现竖线,说明通过通道保持和平滑切换改进后,消除了这些位置处的频谱突变。
[0120]
与前述的多通道含风噪语音信号的处理方法同属于一个技术构思,本发明还提供了一种多通道含风噪语音信号的处理系统。图9示出了本发明一个实施例的多通道含风噪语音信号的处理系统的结构示意图,参见图9所示,本发明的系统包括:
[0121]
预处理模块910,用于对多个麦克风实时输入的多通道信号分别进行分帧和时频变换预处理;
[0122]
位置分组模块920,用于根据麦克风位置对所述多通道信号进行分组,每个通道组包括至少2个通道信号;
[0123]
风噪检测模块930,用于以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪;
[0124]
波束融合模块940,用于在确定所有通道组或者仅部分通道组不含有风噪时,将不含风噪的通道组内的所有通道信号逐帧进行波束融合后输出;
[0125]
通道选择模块950,用于在确定所有通道组均含有风噪时,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出。
[0126]
在一优选实施例中,参见图10,图10示出了本发明一个实施例的通道选择模块的结构示意图,所述通道选择模块950包括:
[0127]
能量筛选单元9501,用于在确定所有通道组均含有风噪时,从全部通道信号中逐帧选择出能量最小和能量次小的两个通道;
[0128]
能量比较单元9502,用于将所述能量筛选单元9501选择出的所述两个通道的能量进行相除,判断相除所得商数是否在接近1的预设范围内;
[0129]
频谱重心因子计算单元9503,用于对所述两个通道计算各自的累计频谱平均重心因子;
[0130]
第一通道选择单元9504,用于在所述能量比较单元9502判断所述两个通道的能量相除所得商数在接近1的预设范围内时,选择累计频谱平均重心因子数值较大者对应的通道信号进行输出;
[0131]
第二通道选择单元9505,用于在所述能量比较单元9502判断所述两个通道的能量相除所得商数不在接近1的预设范围内时,选择能量最小的通道信号进行输出。
[0132]
上述各单元中,频谱重心因子计算单元9503的计算前提是,能量比较单元9502判
断所述两个通道的能量相除所得商数在接近1的预设范围内。第一通道选择单元9504与第二通道选择单元9505是互斥关系。
[0133]
在一优选实施例中,所述频谱重心因子计算单元9503计算累计频谱平均重心因子的过程包括:
[0134]
根据每帧的帧幅频乘积与帧幅值的比值得到单帧频谱重心因子,其中所述帧幅频乘积由每帧的所有频点的幅值与对应频率的乘积之和得到,所述帧幅值由每帧的所有频点的幅值之和得到;
[0135]
对当前累计帧内的所有的单帧频谱重心因子之和求平均得到所述累计频谱平均重心因子。
[0136]
在一个改进实施例中,为了减少通道间的频繁切换,本发明的系统还包括:
[0137]
通道保持模块,用于在输出通道信号过程中,将当前帧选择的通道编号与上一帧输出的通道编号进行比较,若相等,则直接输出当前帧选择的通道编号的通道信号;若不相等,则继续输出上一帧输出的通道编号的通道信号直至达到预设保持帧数。
[0138]
在另一个改进实施例中,为了避免通道切换后出现的切换点频谱突变问题,本发明的系统还包括:
[0139]
平滑切换模块,用于通道切换后,将上一帧通道编号的通道信号与当前帧通道编号的通道信号逐帧进行加权平滑,得到加权平滑的语音信号,其中当前帧通道编号的通道信号的权重逐帧增大;逐帧输出所述加权平滑的语音信号直至达到预设平滑帧数。
[0140]
本发明的多通道含风噪语音信号的处理系统中的各个模块的实现过程,可以参见上述的方法实施例,在此不再赘述。
[0141]
与前述的多通道含风噪语音信号的处理方法及系统同属于一个技术构思,本发明还提供了一种电子设备。图11为本发明一个实施例提供的一种电子设备的结构示意图。参见图11,本发明提供的电子设备包括:多个麦克风、存储器和处理器,其中多个麦克风分别实时采集周围环境的语音信号得到多通道信号;存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行,以实现前述的多通道含风噪语音信号的处理方法,在此不再赘述。
[0142]
在硬件层面上,该电子设备还可以选择性的包括显示面板、接口模块、通信模块、扬声器等硬件。存储器、处理器以及显示面板、接口模块、通信模块、扬声器、多个麦克风等之间可以通过内部总线相互连接,该内部总线可以是isa(industry standard architecture,工业标准体系结构)总线、pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
[0143]
本发明还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个计算机程序,该一个或多个计算机程序当被处理器执行时,实现前述的多通道含风噪语音信号的处理方法,在此也不再赘述。
[0144]
本领域内的技术人员应明白,本发明各实施例可提供为方法、系统、电子设备或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或软件和硬件相结合实施例的形式。而且,本发明可采用在一个或多个包含有计算机程序的计算机可读存储
介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0145]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0146]
以上仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

技术特征:
1.一种多通道含风噪语音信号的处理方法,其特征在于,所述方法包括:对多个麦克风实时输入的多通道信号分别进行分帧和时频变换预处理;根据麦克风位置对所述多通道信号进行分组,每个通道组包括至少2个通道信号;以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪;在确定所有通道组或者部分通道组不含有风噪时,将不含风噪的通道组内的所有通道信号逐帧进行波束融合后输出;在确定所有通道组均含有风噪时,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出。2.根据权利要求1所述方法,其特征在于,所述结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最大的通道信号进行输出,包括:从全部通道信号中逐帧选择出能量最小和能量次小的两个通道,将所述两个通道的能量进行相除,如果相除所得商数在接近1的预设范围内,则对所述两个通道计算各自的累计频谱平均重心因子,并选择累计频谱平均重心因子数值较大者对应的通道信号进行输出,否则选择能量最小的通道信号进行输出。3.根据权利要求1或2所述方法,其特征在于,所述方法还包括:在输出通道信号过程中,将当前帧选择的通道编号与上一帧输出的通道编号进行比较,若相等,则直接输出当前帧选择的通道编号的通道信号;若不相等,则继续输出上一帧输出的通道编号的通道信号直至达到预设保持帧数。4.根据权利要求3所述方法,其特征在于,所述方法还包括:通道切换后,将上一帧通道编号的通道信号与当前帧通道编号的通道信号逐帧进行加权平滑,得到加权平滑的语音信号,其中当前帧通道编号的通道信号的权重逐帧增大;逐帧输出所述加权平滑的语音信号直至达到预设平滑帧数。5.根据权利要求2所述方法,其特征在于,所述累计频谱平均重心因子的计算过程包括:根据每帧的帧幅频乘积与帧幅值的比值得到单帧频谱重心因子,其中所述帧幅频乘积由每帧的所有频点的幅值与对应频率的乘积之和得到,所述帧幅值由每帧的所有频点的幅值之和得到;对当前累计帧内的所有的单帧频谱重心因子之和求平均得到所述累计频谱平均重心因子。6.一种多通道含风噪语音信号的处理系统,其特征在于,所述系统包括:预处理模块,用于对多个麦克风实时输入的多通道信号分别进行分帧和时频变换预处理;位置分组模块,用于根据麦克风位置对所述多通道信号进行分组,每个通道组包括至少2个通道信号;风噪检测模块,用于以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪;波束融合模块,用于在确定所有通道组或者仅部分通道组不含有风噪时,将不含风噪的通道组内的所有通道信号逐帧进行波束融合后输出;
通道选择模块,用于在确定所有通道组均含有风噪时,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出。7.根据权利要求6所述系统,其特征在于,所述通道选择模块包括:能量筛选单元,用于在确定所有通道组均含有风噪时,从全部通道信号中逐帧选择出能量最小和能量次小的两个通道;能量比较单元,用于将所述能量筛选单元选择出的所述两个通道的能量进行相除,判断相除所得商数是否在接近1的预设范围内;频谱重心因子计算单元,用于对所述两个通道计算各自的累计频谱平均重心因子;第一通道选择单元,用于在所述能量比较单元判断所述两个通道的能量相除所得商数在接近1的预设范围内时,选择累计频谱平均重心因子数值较大者对应的通道信号进行输出;第二通道选择单元,用于在所述能量比较单元判断所述两个通道的能量相除所得商数不在接近1的预设范围内时,选择能量最小的通道信号进行输出。8.根据权利要求6或7所述系统,其特征在于,所述系统还包括:通道保持模块,用于在输出通道信号过程中,将当前帧选择的通道编号与上一帧输出的通道编号进行比较,若相等,则直接输出当前帧选择的通道编号的通道信号;若不相等,则继续输出上一帧输出的通道编号的通道信号直至达到预设保持帧数。9.根据权利要求8所述系统,其特征在于,所述系统还包括:平滑切换模块,用于通道切换后,将上一帧通道编号的通道信号与当前帧通道编号的通道信号逐帧进行加权平滑,得到加权平滑的语音信号,其中当前帧通道编号的通道信号的权重逐帧增大;逐帧输出所述加权平滑的语音信号直至达到预设平滑帧数。10.一种电子设备,包括多个麦克风、存储器和处理器,所述多个麦克风分别实时采集周围环境的语音信号得到多通道信号;所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行,以实现权利要求1~5中任一项所述的多通道含风噪语音信号的处理方法。11.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序当被处理器执行时,实现权利要求1~5任一项所述的多通道含风噪语音信号的处理方法。

技术总结
本发明公开了一种多通道含风噪语音信号的处理方法及系统,包括:对多通道信号分别进行分帧和时频变换预处理;根据麦克风位置对所述多通道信号进行分组,每个通道组包括至少2个通道信号;以通道组为单位对每个通道组分别进行风噪检测以确定是否含有风噪;在确定所有通道组或者部分通道组不含有风噪时,将不含风噪的通道信号逐帧波束融合后输出;在确定所有通道组均含有风噪时,结合通道的时域能量大小和频域频谱分布情况从全部通道信号中逐帧选择出能量最小或频谱重心最高的通道信号进行输出。本发明可实时有效地从多个通道中准确识别风噪最少的最优通道进行输出。别风噪最少的最优通道进行输出。别风噪最少的最优通道进行输出。


技术研发人员:侯天峰
受保护的技术使用者:歌尔股份有限公司
技术研发日:2023.05.05
技术公布日:2023/8/14
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐