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

一种麦克风阵列的拾音方法、电子设备及存储介质与流程

2021-10-09 11:56:00 来源:中国专利 TAG:阵列 麦克风 电子设备 可读 计算机


1.本发明属于麦克风阵列拾音领域,涉及一种鲁棒性麦克风阵列拾音方法、电子设备及计算机可读存储介质。


背景技术:

2.视频会议系统是人们协同办公的必备工具,受新冠疫情影响,线上协同办公模式越来越受青睐,语音拾音作为视频会议系统的重要入口因此受到了广泛关注。当前视频会议系统的主流拾音方式是单麦拾音,虽然单麦拾音实现简单,但受限于灵敏度、复杂声反射环境等因素,拾音距离较短,而麦克风阵列拾音通过利用更多的空间信息,具有增益高、抑制噪声和混响能力强等优点,可以进一步加强拾音距离。
3.广义旁瓣消除(generalized sidelobe cancelling,gsc)算法由于能够将约束最优问题转化为无约束问题,因此在麦克风阵列拾音工程中得到了广泛应用。传统的gsc算法对误差比较敏感,方向失配、麦克风通道不一致、混响等因素都会导致期望信号对消,从而降低语音质量,尽管在后续发展中有了一系列改进,但存在不足。


技术实现要素:

4.本发明的目的是提供一种麦克风阵列的拾音方法、电子设备及计算机可读存储介质,进一步提高语音质量。
5.根据本发明的第一个方面,一种麦克风阵列的拾音方法,包括如下步骤:
6.s1、对麦克风阵列接收的语音信号进行固定波束形成,将所述麦克风阵列的波束形成方向指向估计的预期波达方向;
7.s2、对步骤s1处理的语音信号进行阻塞处理,以阻塞来自所述预期波达方向的信号,只保留非预期波达方向的信号;
8.s3、以步骤s2处理后的信号作为参考信号,通过第一滤波器滤除步骤s1处理后的语音信号中的非预期波达方向的信号,保留所述预期波达方向的信号;
9.所述拾音方法还包括如下步骤:
10.s4、根据下式(i)计算步骤s3中第一滤波器的更新因子,更新第一滤波器的系数,
[0011][0012]
其中,为第m个麦克风通道的第一滤波器的更新因子,snr
f,d
(ω,l)为y
f,d
(ω,l)的信噪比,y
f,d
(ω,l)为步骤s1处理后的信号y
f
(ω,l)经延迟处理后的延迟信号,snr
m
(ω,l)为步骤s2处理后的信号u
m
(ω,l)的信噪比,m=1

m,m是麦克风通道数,ω是角频率,l是帧下标。
[0013]
根据一个优选方面,步骤s4具体包括:
[0014]
s4

1、估计出y
f,d
(ω,l)中的噪声,将y
f,d
(ω,l)的能量除以该噪声,获得信噪比
snr
f,d
(ω,l);
[0015]
s4

2、估计出u
m
(ω,l)中的噪声,将u
m
(ω,l)的能量除以该噪声,获得信噪比snr
m
(ω,l);
[0016]
s4

3、根据式(i)计算更新因子,根据式
[0017]
对第一滤波器的系数进行自适应更新,其中,是当前帧的第一滤波器的系数,是下一帧的第一滤波器的系数,μ为步长因子,y(ω,l)为步骤s3处理后的信号输出,y(ω,l)*为y(ω,l)的共轭,为u
m
(ω,l)的平滑能量。
[0018]
根据一个优选方面,步骤s2中,采用第二滤波器对步骤s1处理后的语音信号进行阻塞处理,所述拾音方法还包括如下步骤:
[0019]
s5、根据下式(ii)计算步骤s2中的第二滤波器的更新因子,更新第二滤波器的系数,
[0020][0021]
其中,为第m个麦克风通道的第二滤波器的更新因子,为y
f
(ω,l)的平滑能量,为u
m
(ω,l)的平滑能量,thr
bm
为预设阀值参数。
[0022]
更优选地,步骤s5具体包括:
[0023]
s5

1、估计y
f
(ω,l)的平滑能量
[0024]
s5

2、估计u
m
(ω,l)的平滑能量
[0025]
s5

3、根据式(ii)计算更新因子,根据式
[0026]
对第二滤波器进行自适应更新,其中是当前帧的第二滤波器的频域系数,是下一帧的第二滤波器的中间频域系数,u
m
(ω,l)
*
为u
m
(ω,l)的共轭,是y
f
(ω,l)经过概率补偿后的信号y
c
(ω,l)的平滑能量,μ为步长因子;
[0027]
将频域系数转换为时域系数其中n
l 1
是离散时间下标,并根据下式对做约束,
[0028][0029]
将约束完以后的再做fft变换转化为下一帧的第二滤波器频域系数
进入下一轮的滤波和系数更新,其中low_bound
m
(n
l 1
)和high_bound
m
(n
l 1
)分别为预设滤波器系数的上限和下限;
[0030]
滤波器系数上下限作如下限定:
[0031][0032]
其中max{}是取最大数,t
max
是在允许波达方向空间[θ

θ
err
,θ θ
err
]两通道之间的最大延迟,θ是预期波达方向,θ
err
是允许的最大方向误差。
[0033]
根据一个优选方面,所述步骤s2具体包括:
[0034]
s2

1、对步骤s1处理后的语音信号进行延迟形成信号z
m,d
(ω,l);
[0035]
s2

2、根据各麦克风通道的所述信号z
m,d
(ω,l)的相位差估计信号存在波达方向一定范围内[θ

θ
err
,θ θ
err
]的概率,θ是预期波达方向,θ
err
是允许的最大方向误差;
[0036]
s2

3、根据式y
c
(ω,l)=prob(ω,l)y
f
(ω,l)进行概率补偿得到y
c
(ω,l);
[0037]
s2

4、根据式滤波输出,其中,是第m个麦克风通道的第二滤波器的频域系数;
[0038]
s2

5、对第二滤波器的系数进行自适应更新。
[0039]
更优选地,步骤s2

2具体如下:
[0040]
s2
‑2‑
1、根据式将相邻麦克风通道的相位进行相减获得相位差其中angle{}为取信号相位,unwrap{}为通过连续相加或相减2π让相位差处在区间[

π,π]之内,z
m 1,d
(ω,l)和z
m,d
(ω,l)分别为相邻两个麦克风通道经延迟处理的信号;
[0041]
s2
‑2‑
2、根据式将相位差转化为时间差
[0042]
s2
‑2‑
3、根据允许的最大范围误差角度θ
err
,换算成允许的最大时间差如果真实获得的时间差在之内,则认为此时期望信号大概率存在允许的波达方向空间内,如果不在此区间内,则认为此时期望信号大概率不存在允许的波达方向空间内;预先设定概率函数在内尽量为1,在此区间外尽量为0,其中s和α为预设参数;根据预设的概率函数pr(t)和时间差换算出概率prob
m
(ω,l),则令信号存在允许波达方向空间内的总概率因子为
[0043]
s2
‑2‑
4、对总概率因子prob(ω,l)进行纠正,令其如下式所示,
[0044][0045]
其中,ω0为预设的分界频率。
[0046]
进一步地,s满足当时,pr(t)=0.707。
[0047]
根据一个优选方面,步骤s1中,根据估计的波达方向对麦克风接收信号x
m
(ω,l)进行延迟操作获得z
m
(ω,l),其中,x
m
(ω,l),m=1...m为麦克风阵列接收信号的stft变换,将信号z
m
(ω,l)送入步骤s2中;对延迟对齐以后的信号进行相加获得信号将信号y
f
(ω,l)进行延迟处理后得到信号y
f,d
(ω,l)并送入步骤s3中。
[0048]
根据一个优选方面,步骤s3中,根据式进行滤波输出,其中是第一滤波器的系数。
[0049]
优选地,第一滤波器为naf滤波器。
[0050]
优选地,第二滤波器为ccaf滤波器。
[0051]
根据本发明的第二个方面,一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的拾音方法。
[0052]
根据一个优选且具体的方面,所述电子设备为远程会议设备。
[0053]
根据本发明的第三个方面,一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现如上所述的拾音方法。
[0054]
本发明采用以上方案,相比现有技术具有如下优点:
[0055]
本发明的拾音方法,可以在整个频段内较好的滤除预设波达方向的信号,同时保留输出非预设波达方向的信号,可以有效降低波达方向估计误差的敏感度,同时利用信噪比估计确定何时更新mc滤波器系数更新,进一步提高语音质量。
附图说明
[0056]
为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0057]
图1为根据本发明实施例的一种拾音方法的示意图;
[0058]
图2为根据本发明实施例对第一滤波器的更新原理示意图;
[0059]
图3为麦克风阵列示意图;
[0060]
图4为估计人声方向为0度时的仿真结果图;
[0061]
图5为估计人声方向为10度时的仿真结果图。
具体实施方式
[0062]
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域的技术人员理解。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。
[0063]
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术的说明书中使用的措
辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
[0064]
参照图1所示,麦克风阵列拾取的语音信号经过fbf、abm、mc及control四个部分的模块处理。下面对各个部分的运行过程进行详细描述。
[0065]
fbf(fixed beamforming)模块:固定波束形成,将固定麦克风波束形成方向指向估计的波达方向,增强来自波达方向的语音。
[0066]
1、如图1所示,x
m
(ω,l),m=1

m为麦克风接收信号的stft变换,m是麦克风通道数,ω是频率,l是帧下标。
[0067]
2、图1中steering是根据估计的波达方向对麦克风接收信号x
m
(ω,l)进行延迟操作获得z
m
(ω,l),让来自波达方向的信号在时间上对齐。
[0068]
3、对延迟对齐以后的信号进行相加
[0069]
abm(adaptive blocking matrix)模块:用于阻塞来自波达方向θ的信号,只保留非波达方向的信号。一种常用的固定方式是将延迟对齐以后的信号z
m
(ω,l)进行两两相减,因为理论上对齐以后来自波达方向θ的信号一致,通过相减可以获得非波达方向的信号。但是在实际情况下,估计的波达方向和真实波达方向θ之间的误差会导致bm模块输出的信号中含有波达方向θ的信号,即期望信号泄露现象,从而会导致后续mc(multiple

input canceller)模块存在期望信号自消现象。为了解决此问题,本实施例采用联合空间信号存在概率因子和ccaf(coefficient

constrained adaptive filters)约束的自适应滤波器去降低期望信号泄露现象。
[0070]
1、delay模块延迟,为确保自适应滤波器因果性需要添加的延迟,经过延迟以后的信号为z
m,d
(ω,l)。
[0071]
2、prob{}是根据各通道信号的相位差估计信号存在波达方向一定范围内[θ

θ
err
,θ θ
err
]的概率,θ
err
是允许的最大方向误差。
[0072]
2.1、是将相邻通道的相位进行相减获得相位差,其中angle{}为取信号相位,因为相位以2π为周期,因此unwrap{}通过连续相加或相减2π,让相位差处在区间[

π,π]之内。
[0073]
2.2、将相位差转化为时间差ω为角频率。
[0074]
2.3、如果估计的波达方向和真实波达方向θ之间无误差,则时间差为0,否则不为0,根据允许的最大范围误差角度θ
err
,换算成允许的最大时间差如果真实获得的时间差在之内,则认为此时期望信号大概率存在允许的波达方向空间内,如果不在此区间内,则认为此时期望信号大概率不存在允许的波达方向空间内。预先设定一个概率函数在尽量为1,在此区间外尽量为0,其中s和α为预设参数,其中α为控制从预设时间范围之内到范围之外的陡峭程度,数值越大越陡峭,在确定完α的基础上,调整s满足当时,pr(t)=0.707。
根据预设的概率函数pr(t)和时间差换算出概率prob
m
(ω,l),则令信号存在允许波达方向空间内的总概率因子为
[0075]
2.4、考虑到在中高频处,在实际环境中由于受散射影响,中高频处相位差未必准确,因此在中高频处不考虑概率因子,令其为1,因此最终纠正后的总概率因子为,其中ω0为预设的分界频率:
[0076][0077]
3.y
c
(ω,l)=prob(ω,l)y
f
(ω,l)。
[0078]
4.滤波输出:其中u
m
(ω,l)和分别是第m通道输出和第二滤波器。
[0079]
5.第二滤波器系数更新,第二滤波器即图1中的ccaf滤波器采用常用的nlms算法在频域中进行自适应滤更新。
[0080]
其中u
m
(ω,l)
*
为u
m
(ω,l)的共轭,μ为步长因子,为y
c
(ω,l)的平滑能量,为更新因子,只能取1或者0,由control模块产生。
[0081]
在更新完频域滤波器系数以后,需要将频域系数转换为时域系数其中n
l 1
是离散时间下标,并对做约束
[0082][0083]
将约束完以后的再做fft变换转化为进入下一轮的滤波和系数更新,其中low_bound
m
(n
l 1
)和high_bound
m
(n
l 1
)分别预设的滤波器系数的上限和下限。通过预设滤波器系数的上限和下限,可以将abm的输出信号只保留除波达方向以外的信号。滤波器系数上下限一般做如下限定:
[0084][0085]
其中max{}是取最大数,t
max
是在允许波达方向空间[θ

θ
err
,θ θ
err
],两通道之间的最大延迟。
[0086]
ccaf算法核心是通过对滤波器系数做上下限限制来约束滤波器只滤除预设波达方向的信号,保留输出非预设波达方向的信号,而按照上述公式选择的限制在低频处仍会存在非预设波达方向的信号,不利于后续mc模块消除非预设波达方向的信号。而利用相位差判断信号是否处在预设波达方向在低频处较准,因此通过相位差判断信号是否处在预设波达方向内,如果存在,则概率接近为1,ccaf的参考输入信号基本不变,因此有利于ccaf去
除预设波达方向内的信号,如果不存在,则则概率接近为0,ccaf的参考输入信号基本为0,因此无论怎么更新,都无法去除非预设波达方向内的信号,有利于后续mc模块进一步消除噪声。
[0087]
abm模块利用联合空间信号存在概率因子和ccaf(coefficient

constrained adaptive filters)约束的自适应滤波器,可以在整个频段内较好的滤除预设波达方向的信号,同时保留输出非预设波达方向的信号。
[0088]
mc(multiple

input canceller)模块:利用abm的模块输出u
m
(ω,l)作为参考信号,滤除fbf输出信号中的非预设波达方向的信号,最大化只保留预设波达方向的信号。
[0089]
1.滤波输出:其中是第一滤波器即图1中的自适滤波器naf的系数。
[0090]
2.第一滤波器系数更新,naf采用常用的nlms算法在频域中进行自适应滤更新,同时对滤波器系数能量做限幅,如果总能量超过预设值,则按预设值进行归一化,否则保持不变。
[0091][0092]
其中y(ω,l)
*
为y(ω,l)的共轭,μ为步长因子,为u
m
(ω,l)的平滑能量,为更新因子,只能取1或者0,由control模块产生。
[0093]
control模块:通过各种约束,abm仍会存在少量预设波达方向的信号,如果这部分信号为语音信号,此时仍对mc模块进行更新滤波,则会损伤输出的语音。为降低损伤语音,需要判断何时进行更新滤波器系数。control模块中c是指比较器,snr是指求信噪比,e是指求平滑能量。
[0094]
产生:
[0095]
1、估计y
f
(ω,l)的平滑能量
[0096]
2、估计第m通道u
m
(ω,l)的平滑能量
[0097]
3、其中thr
bm
是预设阀值参数。
[0098]
产生:
[0099]
1、估计y
f,d
(ω,l)的信噪比snr
f,d
(ω,l):
[0100]
1.1、利用噪声方法估计出y
f,d
(ω,l)中的噪声,常用的单声通道噪声估计mcra方法,参考书籍“loizou,philipos c,《speech enhancement:theory and practice》”;
[0101]
1.2、将y
f,d
(ω,l)的能量除以1.1中的噪声,获得当前信噪比snr
f,d
(ω,l);
[0102]
2、同理估计u
m
(ω,l)的信噪比为snr
m
(ω,l);
[0103]
3、
[0104]
更新原理描述如下:
[0105]
参见图2,
[0106]

[0107]
v1(ω)=a1s(ω) b1n(ω)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0108]
v2(ω)=a2s(ω) b2n(ω)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0109]
g(ω)=v1(ω)

hv2(ω)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0110]
其中s(ω)是语音信号,n(ω)是噪声信号,ω为角频率,a1、a2、b1和b2是对应的权重系数,v1(ω)作为期望信号,v2(ω)为参考输入信号,则最优问题表达式为(下面为简单,省略符号ω):
[0111][0112]
其中e{}为求期望值。对公式(4)进行最优化求解可得最优解为:
[0113][0114][0115]
将公式(1)、(2)和(6)代入(3)可得
[0116][0117]
定义输入信噪比
[0118][0119]
定义输出信噪比
[0120][0121]
期望在经过自适应滤器以后,输出信号g的信噪比snro要大于原始信号v1的信噪比snr1[0122][0123]
其中将其代入公式(10)并化解得
[0124][0125]
其中
[0126][0127]
将公式(12)代入公式(11)得
[0128][0129]
因此如果想提升信噪比,得snr1snr2小于1。
[0130]
本算法中的abm模块利用联合空间信号存在概率因子和ccaf(coefficient

constrained adaptive filters)约束的自适应滤波器,可以在整个频段内较好的滤除预设波达方向的信号,同时保留输出非预设波达方向的信号,可以有效降低波达方向估计误差的敏感度,同时利用信噪比估计确定何时更新mc滤波器系数更新,进一步提高语音质量。
[0131]
仿真例
[0132]
参照图3所示,采用的麦克风阵列为三元均匀分布圆阵,以逆时旋转计算角度,三元阵角度分别为[90,210,330]度,圆周半径为4cm,目标人声处在0度方向,噪声源处在110度方向,信噪比为0db,算法abm中分界频率点为300hz,概率函数中的α设为4,最大允许误差方向为
±
10度,滤波器阶数为160,步长因子为0.1,延迟p为80,mc中滤波器阶数为160,中步长因子为0.1,延迟q为100,滤波器总约束能量开方值设为0.2。控制模块中thr
bm
取0.5。仿真时所用的信噪比约为6db。
[0133]
采用传统的gsc方法和本实施例的robust

gsc方法进行仿真,结果比对如下。
[0134]
估计人声方向为0度,即无误差,结果参见表1和图4。
[0135]
表1
[0136] gscrobust

gsc降噪(db)23.142118.0317pesq1.79432.3794
[0137]
估计人声方向为10度,即存在误差为10度,结果参见表2和图5。
[0138]
表2
[0139] gscrobust

gsc降噪(db)22.546317.8811pesq1.34032.3817
[0140]
从仿真中可以看出,在无误差的情况下,虽然robust

gsc的降噪比传统的gsc差一点,但是pesq值有较大提高,语音质量得到明显改善,而在有误差的情况下,传统的gsc语音质量会进一步下降,语音信号几乎全被消没了。因此提出的robust

gsc无论是降噪量还是pesq值并没有明显降低。
[0141]
上述实施例只为说明本发明的技术构思及特点,是一种优选的实施例,其目的在于熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限定本发明的保护范围。凡根据本发明的精神实质所作的等效变换或修饰,都应涵盖在本发明的保护范围之内。
再多了解一些

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

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

相关文章

  • 日榜
  • 周榜
  • 月榜