一种双声源的声音信号分离方法和拾音器

文档序号:1339719 发布日期:2020-07-17 浏览:15次 >En<

阅读说明:本技术 一种双声源的声音信号分离方法和拾音器 (Sound signal separation method of double sound sources and sound pickup ) 是由 黄海 刘佳 隆弢 于 2020-04-01 设计创作,主要内容包括:本发明实施例提供了一种双声源的声音信号分离方法和拾音器,将混合声音信号划分为语音帧,估计语音帧达麦克风阵列中不同阵元组合的时延差,然后根据确定的时延差判断语音帧的传播方向,根据传播方向实时分离出不同声源对应的声音信号并输出。通过广义互相关算法进行时延估计,不仅能够准确的估计时延,而且能够保证算法的运算量较低,使算法在实时系统中能够更准确、高效地跟踪声源方位,从而实现对第一声源和第二声源的声音信号进行自动分离。(The embodiment of the invention provides a sound signal separation method of double sound sources and a sound pick-up, wherein a mixed sound signal is divided into speech frames, the time delay difference of the speech frames reaching different array element combinations in a microphone array is estimated, then the propagation direction of the speech frames is judged according to the determined time delay difference, and sound signals corresponding to different sound sources are separated in real time according to the propagation direction and output. The time delay estimation is carried out through the generalized cross-correlation algorithm, so that not only can the time delay be accurately estimated, but also the calculation amount of the algorithm is ensured to be low, the algorithm can more accurately and efficiently track the sound source direction in a real-time system, and the sound signals of the first sound source and the second sound source are automatically separated.)

一种双声源的声音信号分离方法和拾音器

技术领域

本发明涉及语音处理技术领域,尤其是涉及一种双声源的声音信号分离方法和拾音器。

背景技术

近年来,随着语音识别技术的飞速发展,多路语音识别场景中对实时声源分离技术提出迫切的技术需求。比如,在某些重要会议场景中,实时会议记录,以及记录质量都有着举足轻重的作用。但就目前实际市场而言,会议记录或是依靠人工现场进行记录和整理;或是先期视频录制再后期回放进行整理。而这两种方式,都是一项非常耗时和繁琐的人力工作。可以通过录音的方式记录声音信号,但是当需要回放某一内容时,需要回放整段录音,耗时较长。

现有技术中也存在对声源定向的技术,但是这些技术普遍存在定位准确度低、实时跟踪性差的问题,此外,声源分离存在切换不及时、语音分离存在误判等问题。

由此,在实际应用过程中,声源分离技术定位准确性低、声源分离存在切换不及时、语音分离存在误判。

发明内容

本发明实施例提供一种双声源的声音信号分离方法和拾音器,用以解决现有技术中的声源分离技术定位准确性低、声源分离存在切换不及时、语音分离存在误判的问题。

针对以上技术问题,第一方面,本发明的实施例提供了一种双声源的声音信号分离方法,包括:

接收来自第一声源和第二声源的混合声音信号;

将接收的混合声音信号划分为预设帧长的语音帧,对每一语音帧进行传播方向判断,确定每一语音帧对应的传播方向;

根据各语音帧对应的传播方向分离出来自所述第一声源的声音信号和来自所述第二声源的声音信号。

第二方面,本发明的实施例提供了本发明的实施例提供了一种声音信号分离装置,包括:

接收模块,用于接收来自第一声源和第二声源的混合声音信号;

处理模块,用于将接收的混合声音信号划分为预设帧长的语音帧,对每一语音帧进行传播方向判断,确定每一语音帧对应的传播方向;

分离模块,用于根据各语音帧对应的传播方向分离出来自所述第一声源的声音信号和来自所述第二声源的声音信号。

第三方面,本发明的实施例提供一种拾音器,

包括麦克风阵列单元、处理单元和输出单元;所述麦克风阵列单元包括麦克风阵列和音频编码单元;

所述麦克风阵列单元用于将采集的声音信号发送到处理单元;

所述处理单元用于执行以上任一项所述的双声源的声音信号分离方法,分离出来自所述第一声源的声音信号和来自所述第二声源的声音信号,将来自所述第一声源的声音信号和来自所述第二声源的声音信号分别发送到所述输出单元;

所述输出单元用于分别输出来自所述第一声源的声音信号和来自所述第二声源的声音信号;

其中,所述音频编码单元用于将麦克风阵列接收的声波转化为电信号,得到声音信号。

第四方面,本发明的实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以上所述的双声源的声音信号分离方法的步骤。

第五方面,本发明的实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以上所述的双声源的声音信号分离方法的步骤。

本发明的实施例提供了一种双声源的声音信号分离方法和拾音器,将混合声音信号划分为语音帧,估计语音帧达麦克风阵列中不同阵元组合的时延差,然后根据确定的时延差判断语音帧的传播方向,根据传播方向实时分离出不同声源对应的声音信号并输出。通过广义互相关算法进行时延估计,不仅能够准确的估计时延,而且能够保证算法的运算量较低,使算法在实时系统中能够更准确、高效地跟踪声源方位,从而实现对第一声源和第二声源的声音信号进行自动分离。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一个实施例提供的一种双声源的声音信号分离方法的流程示意图;

图2是本发明另一个实施例提供的麦克风阵列的示意图;

图3是本发明另一个实施例提供声源分离算法流程框图;

图4是本发明另一个实施例提供的双声源分离应用场景示意图;

图5是本发明另一个实施例提供的A与B的对话的声音信号示意图;

图6是本发明另一个实施例提供的分离后的A的声音信号示意图;

图7是本发明另一个实施例提供的分离后的B的声音信号示意图;

图8是本发明另一个实施例提供的双声源实时分离拾音器结构的结构图;

图9是本发明另一个实施例提供的声源分离算法实现区域示意图;

图10是本发明另一个实施例提供的实际场景中双声源分离的测试结果对比示意图;其中,a表示A和B的对话语音,b表示分离出的A的语音,c表示分离出的B的对话语音。

具体实施方式

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

图1为本发明实施例提供的双声源的声音信号分离方法的流程示意图,参见图1,该方法包括以下步骤:

步骤101:接收来自第一声源和第二声源的混合声音信号;

步骤102:将接收的混合声音信号划分为预设帧长的语音帧,对每一语音帧进行传播方向判断,确定每一语音帧对应的传播方向;

步骤103:根据各语音帧对应的传播方向分离出来自所述第一声源的声音信号和来自所述第二声源的声音信号。

本实施例提供的方法由计算机、服务器、对声音信号进行处理的设备(例如,拾音器)执行。预设帧长的变化范围通常为几毫秒到几十毫秒之间,例如,本实施例选取预设帧长为4ms。相邻的语音帧之间存在重叠时间,例如,重叠率为75%。

本实施例提供了一种双声源的声音信号分离方法和拾音器,将混合声音信号划分为语音帧,估计语音帧达麦克风阵列中不同阵元组合的时延差,然后根据确定的时延差判断语音帧的传播方向,根据传播方向实时分离出不同声源对应的声音信号并输出。通过广义互相关算法进行时延估计,不仅能够准确的估计时延,而且能够保证算法的运算量较低,使算法在实时系统中能够更准确、高效地跟踪声源方位,从而实现对第一声源和第二声源的声音信号进行自动分离。

进一步地,在上述实施例的基础上,所述将接收的混合声音信号划分为预设帧长的语音帧,对每一语音帧进行传播方向判断,确定每一语音帧对应的传播方向,包括:

将接收的混合声音信号划分为所述预设帧长的语音帧;

根据接收所述混合声音信号的麦克风阵列中阵元的位置,确定不同阵元组合对应的最大时延差,获取最大时延差大于预设阈值的阵元组合,作为选定阵元组合;

对各语音帧中任一目标语音帧,通过广义互相关函数,确定每一选定阵元组合接收所述目标语音帧的时延差,根据每一选定阵元组合接收所述目标语音帧的时延差,确定所述目标语音帧的传播方向;

其中,阵元组合为麦克风阵列中任意两个麦克风阵元的组合;相邻的语音帧之间存在重叠时间。

进一步地,在上述各实施例的基础上,所述根据接收所述混合声音信号的麦克风阵列中阵元的位置,确定不同阵元组合对应的最大时延差,获取最大时延差大于预设阈值的阵元组合,作为选定阵元组合,包括:

根据公式确定所述麦克风阵列中不同阵元组合对应的最大时延差,获取最大的三个最大时延差所对应的阵元组合,作为选定阵元组合;

其中,为由麦克风阵元i和麦克风阵元j组成的阵元组合对应的最大时延差,dij为在麦克风阵列中麦克风阵元i和麦克风阵元j之间的距离,c=340m/s为声速,fs=16kHz为采样频率,表示向上取整。

以下以图2所示的呈线性式排布的麦克风阵列为例,介绍如何确定选定阵元组合的过程:

定义图2中的麦克风阵元M8到麦克风阵元M1的方位为0°方向,麦克风阵元M1到麦克风阵元M8的方向为180°方向,相邻的麦克风阵元之间的间距为d=11mm。

通过公式计算各阵元组合对应的最大时延差后,取最大的三个最大时延差所对应的阵元组合,即M1和M8阵元组合、M1和M7阵元组合、M2和M8阵元组合、M1和M6阵元组合、M2和M7阵元组合和M3和M8阵元组合,这些阵元组合为选定阵元组合。后续通过选定阵元组合对应的时延差确定声音信号的传播方向。

进一步地,在上述各实施例的基础上,所述对各语音帧中任一目标语音帧,通过广义互相关函数,确定每一选定阵元组合接收所述目标语音帧的时延差,包括:

对各语音帧中任一目标语音帧,通过公式计算每一选定阵元组合接收所述目标语音帧的时延差;

其中,表示选定阵元组合中的麦克风阵元i和麦克风阵元j接收所述目标语音帧的时延差,Xik')和分别表示麦克风阵元i和麦克风阵元j接收到的声音信号的频谱,表示对Xik')和进行快速傅里叶变换后的结果。

具体地,通过广义互相关函数计算时延差的过程为:

对于M1和M8阵元组合,根据M1接收的声音信号和M8接收的声音信号,通过公式计算M1和M8接收所述语音帧中声音信号的时延差其中,同理,得到由 分别得到时延差

进一步地,在上述各实施例的基础上,

所述对各语音帧中任一目标语音帧,通过广义互相关函数,确定每一选定阵元组合接收所述目标语音帧的时延差,根据每一选定阵元组合接收所述目标语音帧的时延差,确定所述目标语音帧的传播方向,包括:

将最大时延差相同的选定阵元组合划分在同一分组中;

通过广义互相关函数,确定每一选定阵元组合接收所述目标语音帧的时延差,根据每一选定阵元组合接收所述目标语音帧的时延差,计算每一分组中选定阵元组合的时延差的平均值,作为分组时延差;

根据每一分组的分组时延差和每一分组的设定判断标准判断所述目标语音帧传播方向。

进一步地,在上述各实施例的基础上,

所述根据每一分组的分组时延差和每一分组的设定判断标准判断所述目标语音帧传播方向,包括:

对任一分组,统计所述分组中,分组时延差小于所述分组的设定判断标准的第一数量,以及分组时延差大于所述分组的设定判断标准的第二数量;

若所述第一数量大于所述第二数量,则所述目标语音帧的传播方向为第一方向,若所述第一数量小于所述第二数量,所述目标语音帧的传播方向为第二方向。

其中,对于任一分组,所述分组的设定判断标准等于所述分组的最大时延差的一半。

其中,对选定阵元组合进行分组,包括:使得最大时延差相同的选定阵元组合划分在同一组中。

进一步地,每一分组的设定判断标准为该分组中阵元组合的最大时延差的一半。

例如,上述选定阵元组合进行分组的分组情况如下:

第一分组:M1,M8阵元组合;

第二分组:M1,M7阵元组合、M2,M8阵元组合;

第三分组:M1,M6阵元组合、M2,M7阵元组合、M3,M8阵元组合。

第一分组的分组时延差为第二分组的分组时延差为第三分组的分组时延差为

设定第一分组的设定判断标准为第二分组的设定判断标准为第三分组的设定判断标准为设定label<0时表示麦克风阵元M8到麦克风阵元M1的方位,表示为0°方向,label>0麦克风阵元M1到麦克风阵元M8的方向,表示为180°方向。

若τ1小于(对应label=-1),则第一数量加1,若τ1大于(对应label=1),则第二数量加1。若τ2小于(对应label=-1),则第一数量加1,若τ2大于(对应label=1),则第二数量加1。若τ3小于(对应label=-1),则第一数量加1,若τ3大于(对应label=1),则第二数量加1。

若第一数量cnt1大于cnt2,则该语音帧对应的声源为在M8到M1的方向上的第一声源,第一数量cnt1小于cnt2,则该语音帧对应的声源为在M1到M8的方向上的第二声源。

由上述方法确定每一语音帧对应的声源后,即可将双声源的的声音信号分离开。

进一步地,在上述各实施例的基础上,所述根据各语音帧对应的传播方向分离出来自所述第一声源的声音信号和来自所述第二声源的声音信号,包括:

根据各语音帧对应的传播方向,确定由传播方向为所述第一方向的各语音帧组成的声音信号,作为来自所述第一声源的声音信号;

根据各语音帧对应的传播方向,确定由传播方向为所述第二方向的各语音帧组成的声音信号,作为来自所述第二声源的声音信号。

具体来说,将传播方向均为第一方向的语音帧组成的声音信号作为所述第一声源的声音信号,将传播方向均为第二方向的语音帧组成的声音信号作为所述第二声源的声音信号;其中,所述第一声源位于所述第一方向的反方向上,所述第二声源位于所述第二方向的反方向上。

图3为本实施例提供的双声源的声源分离的流程示意图,参见图3,在声源A和声源B的交谈过程中,麦克风阵列接收声音信号,通过计算判断声音信号的传播方向,根据传播方向分离出由不同声源发出的声音信号,将不同声源的声音信号经过两路通道,进行增强后输出,以便对每一声源输出清晰的语音。

总体来说,本实施例提供的方法包括步骤:(1)先估计声源信号到不同麦克风组合的时延差;(2)根据得到的时延估计判断声源方向;(3)对不同方向的声源进行实时分离。

以双声源为例,假设本实施例中麦克风阵列如图2所示,且麦克风阵列中每一麦克风阵元采用8个驻极体全向麦克风,呈线性式排布,定义M8到M1的方位为0°方向,M1到M8的方向为180°方向,麦克风之间的间距为d=11mm。接收到声音信号后,声源分离的计算过程具体如下:

(1)选择权重函数Φ(ωk'),此时选择Φ(ωk')=1;

(2)进行短时处理。将麦克风接收到的信号分成有一定重合比例的短时语音帧,帧长可从几毫秒到几十毫秒。在双声源分离算法中,选择帧长为4ms,重叠率为75%。通过分帧,获得时刻t的一组阵元组合输出信号:

{xn(t),xn(t+1),…,xn(t+K-1)},n=1,2,3,6,7,8;

(3)估计xn(t)的频谱:

其中,FFT{·}为快速傅里叶变换;

(4)计算不同麦克风组合之间的最大时延点:

其中dij表示麦克风i与麦克风j之间的距离,c=340m/s为声速,fs=16kHz为采样频率,为向上取整;

(5)根据将麦克风组合分为三组,即最大时延点相等的划分为一组:

①M1,M8麦克风对;

②M1,M7麦克风对、M2,M8麦克风对;

③M1,M6麦克风对、M2,M7麦克风对、M3,M8麦克风对;

(6)分别计算步骤(5)中的三组麦克风组中不同麦克风对的广义互相关函数:

其中,IFFT{·}为快速傅里叶逆变换;

同理可得:

(7)获得三组麦克风组中不同麦克风对的时延估计:

同理可得:

(8)由此可得出三个时延:

(9)语音活动检测-Voice Activity Detection,VAD:根据互相关函数的峰值设定适当的门限值,高于门限值则判断当前帧为语音信号;而低于门限值则判断当前帧为噪声信号,取上一帧的时延值作为当前帧的时延值;

(10)对每一分组取最大时延点的一半作为判断标准,设判断角度方向的标志值为label,即

对应于label=-1;

对应于label=1;

同理设定如下判断标准:

对应于label=-1;

对应于label=1;

对应于label=-1;

对应于label=1;

当前帧为语音信号时,对label的计算采用滤波器进行平滑处理,使算法性能更加鲁棒;当前帧为噪声信号时,取上一帧的label值作为当前帧的label值;

(11)根据label值判断声源方向:

label<0判断为0°方向;

label>0判断为180°方向;

(12)分别统计判断为0°方向的个数cnt1和判断为180°方向的个数cnt2:

cnt1>cnt2该帧观测语音信号最终判断为0°方向;

cnt1<cnt2该帧观测语音信号最终判断为180°方向;

(13)优化代码,对语音分离时的误判进行处理,从而实现双声源的自动分离。

以下对广义互相关算法(Generalized Cross-Correlation,GCC)进行介绍:

广义互相关算法(GCC)是目前使用最多的时延估计算法。该方法计算高效,并且决策延迟短,因此具有良好的目标跟踪能力。此外,该方法在系统中易于实现,尤其在信噪比较高的场景中效果较好。然而,在混响较强的室内环境中,GCC算法的估计结果可能会有误差,但不会导致整个分离算法的崩溃。

假设声场中某方向上有一个未知声源,则麦克风陈列(N个阵元)第n个阵元的输出信号可表示如下:

假设声场中某方向上有一个未知声源,则麦克风陈列(N个阵元)第n个阵元的输出信号可表示如下:

xn(k)=ans(k-Dn)+bn(k),n=1,2,…N (1)

其中an是声音传播衰减因子,并且满足0≤an≤1;Dn对应于从未知声源到麦克风n的传播时间延迟;s(k)是说话人或扬声器发出的声音,即声源信号,本质上频谱是宽带的;bn(k)为第n个麦克风接收到的加性噪声。假定bn(k)服从零均值的高斯分布,且与声源信号s(k),以及其他麦克风上接收的噪声信号均统计不相关。

在该信号模型下,第i个麦克风与第j个麦克风之间的信号时延差可以表示为:

τij=Dj-Di (2)

其中,i,j=1,2,…,N,并且i≠j。时延估计的目标就是根据观测信号xn(k)得到τij的估计值

根据上述广义互相关算法,假设我们只有两个麦克风,则它们的输出信号分别记为x1(k)和x2(k),它们的互相关函数定义为:

其中,E[·]表示数学期望,将x1(k)和x2(k)代入互相关函数(3)可得:

由于bn(k)是高斯白噪声,且与声源信号、其他麦克风上接收的噪声信号均不相关,因此根据公式(4),我们容易得出在p=D2-D1时取得最大值。因此,x1(k)和x2(k)的相对到达时间差为:

其中,p∈[-τmaxmax],τmax是最大可能时延。

公式(5)的数字实现时,互相关函数(Cross Correlation Function,CCF)未知并且需要估计,通常的做法是用时间平均来替换公式(3)中定义的统计平均。

假设在时刻t我们有一组xn观测样本,即{xm(t),xm(t+1),…,xm(t+k-1),…,xm(t+K-1)},m=1,2,其相应的互相关函数可以通过下式进行估计:

或者由下式来估计:

其中K是语音帧的大小。式(6)和式(7)之间的区别是前者是有偏估计,而后者是无偏估计。由于前者的估计方差较低并且渐近无偏,因此在许多应用中被广泛采用。

此外,估计互相关函数还可通过离散傅里叶正变换和离散傅里叶逆变换来实现,即:

其中,

为角频率,

是xn(k)在时间t的短时离散傅里叶变换。(6)和(8)都产生相同的互相关函数估计。然而,由于后者可以使用快速傅立叶变换和快速傅立叶逆变换更高效地实现互相关函数,因此它已被广泛应用于系统中。

综上可知,广义互相关方法通过对传感器输出之间的互功率谱进行加权来实现的,这种加权处理已能够有效地提高时延估计的性能。结合公式(1)中的信号模型,采用GCC方法估计x1(k)和x2(k)的相对到达时间差:

其中

是广义互相关函数,

是x1(k)和x2(k)的互功率谱,(·)*为复共轭,Φ(ω'k)为加权函数(有时也称为预滤波),因此加权互功率谱为

在实际系统中,互功率谱的估计通常是将瞬时值替代期望值来实现,即

基于GCC的一类算法中有多种成员算法取决于如何选择加权函数Φ(ωk')。不同的加权函数具有不同的性质,如相位变换(Phase Transform,PHAT)可以更好地抵抗加性噪声;平滑相干变换(Smoothed Coherence Transform,SCOT)可以提高对混响环境下多径效应的鲁棒性;此外,还可根据使用需求对不同加权函数进行组合。通常,加权函数应根据具体的应用场合和相应的使用条件进行选择。

基于上述实施例,上述算法实现步骤流程框图如图3所示,虚线框中为本专利中声源分离方法的步骤,虚线框外为后期可能用到的扩展。例如,分离后的双通道语音可分别通过波束形成或者语音增强等算法进一步降低各种噪声对语音质量的影响。

本发明提出的实时分离拾音器是为了解决问答形式的双声源实时分离问题。目前大多数已有的声源定向普遍存在定位准确度低、实时跟踪性差的问题,此外,声源分离存在切换不及时、语音分离存在误判等问题。

在上述声音信息分离的方法中,需要说明的是,双声源实时分离拾音器的声源分离方法,可用的全向麦克风为驻极体或MEMS麦克风。

为了进一步解释本实施例,麦克风阵列可用驻极体全向麦克风为8个,或大于等于2个的其它数目,可用于均匀线性阵列、非均匀线性阵列、圆环形阵列及其它任意阵列排布;可扩展为3路、4路以及多路声源分离。

本申请基于麦克风阵列的双声源实时分离拾音器的声源分离方法及结构,应用的基于时延估计的声源分离算法,该方法首先估计语音帧达麦克风阵列中不同阵元组合的时延差,然后根据确定的时延差判断语音帧的传播方向,根据传播方向实时分离出不同声源对应的声音信号并输出。通过广义互相关算法进行时延估计,不仅能够准确的估计时延,而且能够保证算法的运算量较低,使算法在实时系统中能够更准确、高效地跟踪声源方位,从而实现对第一声源和第二声源的声音信号进行自动分离。

本发明提出的分离拾音器是为了满足双声源语音信号的实时分离和提取,以便完成不同声源信号的语音识别和记录。解决了现有技术中存在的如下问题:(1)说话人判别。要求算法能够实时跟踪说话人,判定是谁在说话。当说话人发生改变时,算法能够快速做出判断,并给出正确结果。(2)语音增强。要求算法能够增强期望语音,同时抑制或者抵消干扰语音的影响。例如,当感兴趣的语音来源于声源1时,需要增强的期望信号是语音1,同时抑制或者抵消语音2的影响。反之亦然。(3)声源分离。要求算法将不同声源的语音信号进行分离,同时将相同说话人的语音进行提取。

第二方面,本申请提供了一种拾音器,包括麦克风阵列单元、处理单元和输出单元;所述麦克风阵列单元包括麦克风阵列和音频编码单元;

所述麦克风阵列单元用于将采集的声音信号发送到处理单元;

所述处理单元用于执行以上所述的双声源的声音信号分离方法,分离出来自所述第一声源的声音信号和来自所述第二声源的声音信号,将来自所述第一声源的声音信号和来自所述第二声源的声音信号分别发送到所述输出单元;

所述输出单元用于分别输出来自所述第一声源的声音信号和来自所述第二声源的声音信号;

其中,所述音频编码单元用于将麦克风阵列接收的声波转化为电信号,得到声音信号。

进一步地,在上述各实施例的基础上,所述麦克风阵列中的麦克风阵元的排列方式包括,均匀线性阵列、非均匀线性阵列和圆环形阵列。

进一步地,在上述各实施例的基础上,所述麦克风阵列中的麦克风阵元为驻极体全向麦克风或MEMS麦克风。

进一步地,在上述各实施例的基础上,所述麦克风阵列中的麦克风阵元的灵敏度为-29dB±1dB,频率响应大于或等于100Hz且小于或等于10kHz,信噪比大于或等于60dB。

进一步地,麦克风呈圆柱状,直径为9.7mm,高度为4.5mm。

实际上,图2中所示的均匀线性阵列的麦克风阵列,当声源A和声源B分别位于该麦克风阵列两端时,可以很好的实现对声源A和声源B的语音分离。为了提高声源分离的效果,声源A和声源B可以位于如图9所示的区域内,即声源A可以位于麦克风阵列0°方向,且与0°方向夹角为60°的锥形范围内,声源B可以位于麦克风阵列180°方向,且与180°方向夹角为60°的锥形范围内。

进一步地,在上述各实施例的基础上,所述处理单元包括采集编码单元、FPGA处理单元和DSP处理单元;

所述采集编码单元接收所述麦克风阵列单元发送的声音信号,对声音信号进行第一预处理,将经过第一预处理的声音信号采用时分复用的方式传输到所述FPGA处理单元;

所述FPGA处理单元对接收到的声音信号进行第二预处理,并将经过第二预处理的声音信号传输到所述DSP处理单元;

所述DSP处理单元对接收的声音信号进行分离,确定来自所述第一声源的声音信号和来自所述第二声源的声音信号,将来自所述第一声源的声音信号和来自所述第二声源的声音信号分别发送到所述FPGA处理单元,由所述FPGA处理单元将来自所述第一声源的声音信号和来自所述第二声源的声音信号分别发送到所述输出单元;

其中,所述第一预处理包括对声音信号进行增益控制、A/D模数转换和自动电平控制;所述第二预处理包括串并转换、数据缓存、高通滤波和并串转换。

麦克风阵列是由一定数量的麦克风按照某种特定的空间几何分布排列而成的一种信号拾取装置。阵列参数包括:麦克风数目,阵列-孔径,麦克风阵元间距,麦克风空间分布形式等几何参数。麦克风阵列信号处理,是对麦克风阵列采集到的目标声音信号,利用阵元信号之间的统计特性,进行相关性分析和混合处理,从而实现声源定向、声源分离、和信号增强等需求。因此,基于麦克风阵列的信号处理技术已逐渐发展成为数字信号处理领域的一个热点研究话题。

以下对申请提供的双声源的声音信号分离方法和拾音器的应用进行介绍:

应用方式:拾音器的麦克风阵列如图2所示,采用8个驻极体全向麦克风,呈线性式排布,0°方向为1号麦克风,180°方向为8号麦克风,该版本拾音器是针对双声源的分离,应用场景示例如图4所示。在图4中,交谈双方面对面采用一问一答的形式,即A和B不同时讲话。线性阵列拾音器的摆放,例如0°方向对准男士A,180°方向对准女士B。通过本专利提出的双声源实时分离拾音器进行录音,将A和B的对话进行自动实时分离,从两个音频通道分别单独输出。

双声源实时分离拾音器,通过对不同使用场景下进行多组重复长时间测试,均能有效并且准确地自动分离出交谈双方语音,同时拾音器长时间保持稳定运行。其中一组测试结果中A和B的对话语音、分离后A的语音、分离后B的语音分别如图5、图6和图7所示,图5中虚线表示为判断不同声源的标志。当标志值大于0时判断为A语音,当标志值小于0时判断为B语音,从而分离交谈双方的语音;从图6和图7中可以看出,语音分离及时,基本无分离错误,语音的起始和结束没有误判。

双声源实时分离拾音器能准确快速的自动分离不同声源的语音,可能适用多种应用场景有,且不限于以下使用场景:

场景示例1:审讯室场景。

在公安机关的审讯室中,警官对犯罪嫌疑人进行犯罪行为的调查取证以及讯问过程,是重要的执法环节。传统的询问笔录通常由专门的书记员进行整理,记录编辑工作量大;大量情况下,谈话进行快,记录慢,整理后的讯问笔录容易出现某些重要问题的遗漏;同时,某些询问过程中问题的细节,需要后期反复通过录音来回顾。

场景示例2:服务大厅或银行柜台。

为了提高服务质量,传统的调研方式通常采用问卷形式,需要人们空出时间来配合填写问卷。后期问卷的整理也将耗费大量的人力和时间。通过本申请提供的分离方法能够实时分离出服务人员和被服务人员的语音信息,从而判断服务人员的服务质量。

双声源实时分离拾音器,通过对不同使用场景下进行多组重复长时间测试,均能有效并且准确地自动分离出交谈双方语音,同时拾音器长时间保持稳定运行。图10中a、b、c所示分别为一组测试结果中A和B对话语音、分离后A语音、分离后B语音。其中,a中虚线表示为判断不同声源的标志。当标志值大于0时判断为A语音,当标志值小于0时判断为B语音,从而分离交谈双方的语音。从b和c中可以看出,语音分离及时,基本无分离错误,语音的起始和结束没有误判。

图8为本实施例提供的拾音器的结构示意图,参见图8,该双声源实时分离拾音器结构,包括:

电源管理单元,用于给麦克风阵列单元、采集编码单元、FPGA(FieldProgrammable Gate Array)处理单元、DSP(Digital Signal Processor)处理单元、音频输出单元提供电源,负责整个系统的电源管理;

(1)麦克风阵列单元,包括8个全向驻极体差分麦克风和差分信号调理电路,8个麦克风在电路板上呈直线排布形成麦克风线性阵列,相邻麦克风的中心距为11±0.1mm;8个全向驻极体差分麦克风将音频声波信号转换为电信号,经差分调理电路处理后输入到音频编码单元;

(2)采集编码单元,用于将麦克风阵列单元1的8通道的模拟音频输入信号转换成音频数字信号,通过采用2片高性能音频采集编码芯片,并行完成麦克风阵列单元的8路音频信号的增益控制、A/D模数转换(Analog-to-Digital Converter,A/D)、自动电平控制(Automatic Level Control);采集编码单元,通过IIS(Integrated Interchip Sound)总线,采用时分复用的方式将转换后的音频数字信号传输给FPGA处理单元的采集处理模块;

(3)FPGA处理单元,包括FPGA采集处理模块、FPGA输出处理模块;FPGA采集处理模块,包括TDM时序模块、数据处理模块、TDM从时序模块;

TDM(Time Division Multiplex)时序模块,用于实现信号采集的时序产生和数据处理、缓存功能;

数据处理模块,用于对采集编码单元传输的数据进行预处理,包括:串并转换、数据缓存、高通滤波、并串转换;

TDM从时序模块,用于生成TDM从时序,通过与来自DSP处理单元的McASP0(Multichannel Audio Serial Port 0)总线的TDM时序通信,将经过数据处理模块预处理的8通道音频数字信号,通过时分复用的方式输入到DSP处理单元;

DSP处理单元,包括短时傅立叶变换(Short-Time Fourier Transform,STFT)STFT、声源分离模块、语音增强模块、短时傅里叶反变换(Inverse STFT,ISTFT)ISTFT模块,用于将以dMAX方式接收到的来自McASP0总线的8通道音频信号分别分割成小的信号帧,帧长为4ms,即64点,相邻帧之间的重叠率为75%,窗长为256点,并对短时帧信号进行滤波处理;

短时帧信号通过DSP处理单元内的256点的短时傅立叶STFT从时域变换到频域;

DSP处理单元的声源分离模块,用于在频域内通过双声源分离算法实现声源分离,实现正前方(如图9中的0°±60°)和正后方(如图9中的180°±60°)的指定锥形区域内的一对一对讲的实时分离;

DSP处理单元的语音增强模块,用于对声源分离后的两通道语音信号进行波束形成、语音降噪、去混响,在频域内实现消除干扰、噪声、混响,用于提取出两通道期望音频信号;

256点的短时傅里叶反变换ISTFT模块,用于利用重叠相加求和,将两通道期望音频信号变换到时域,得到重建后的实时分离增强的两通道音频信号;

(4)DSP处理单元通过McASP1(Multichannel Audio Serial Port1)总线,以TDM方式将实时分离增强的两通道音频信号传输到FPGA处理单元的FPGA输出处理模块;

FPGA输出处理模块,用于实现信号输出的时序产生和数据处理、缓存:

用于生成TDM从时序,接收DSP处理单元实时分离增强的两通道音频信号,并将数据进行缓存;

用于生成两路IIS主时序,将实时分离增强的两通道音频信号传输到音频输出单元;

(5)音频输出单元,通过IIS总线与FPGA输出处理模块连接,用于分别驱动两路IIS总线:IIS1总线、IIS2总线;

IIS1总线,用于将两路音频数据传输给音频D/A,将音频数字信号转换为模拟信号,并输出到音频功放驱动单元;

(6)音频功放驱动单元,用于将模拟信号放大,并与3.5mm耳机立体声接口相连接,用于实现600欧姆非平衡输出;

IIS2总线,用于将两路音频数字信号传输给USB to IIS Bridge声卡桥接芯片,并转换成USB包,用于实现音频信号的USB异步传输,并将拾音器虚拟成计算机标准USB声卡,用于实现即插即用。

基于上述实施例,采集编码单元主要采用2片高性能音频采集编码芯片,并行完成8路音频信号的增益控制、模数转换、自动电平控制。系统采用16kHz采样率,24bit采样精度。通过麦克风接收的模拟音频输入信号首先通过PGA(Programmable Gain Amplifier)放大,然后输入到A/D进行模数转换,ALC实现PGA增益自动地随模拟音频输入信号幅度而调整,ALC能随时跟踪、监视PGA输出的音频信号电平;当音频输入信号增大时,ALC电路自动降低PGA的增益,当输入信号减小时,ALC电路自动增大PGA的增益,以使采集到的音频信号幅值稳定在某一水平或者在某一较小范围内波动,从而增加了系统的动态输入范围。采集编码单元将8通道的模拟音频输入信号转换成音频数字信号后,通过IIS总线,采用时分复用的方式传输给FPGA处理单元的采集处理模块。

FPGA处理单元的采集处理模块主要实现信号采集的时序产生和数据处理、缓存等功能;对采集编码单元传输的数据进行串并转换、数据缓存、高通滤波、并串转换等预处理;生成TDM从时序,通过与来自DSP处理单元的McASP0总线的TDM时序通信,将经过预处理的8通道音频数字信号通过时分复用的方式输入到DSP处理单元。

DSP处理单元是整个声源分离拾音器的核心。首先DSP以dMAX方式接收来自McASP0总线的数据;其次分别将接收到的8通道音频信号分割成小的信号帧,帧长为4ms,即64点,相邻帧之间的重叠率为75%,窗长为256点,可选汉明窗或凯塞窗对短时帧信号进行滤波处理;然后将这些帧信号通过256点的短时傅立叶变换从时域变换到频域;在频域内实现双声源分离算法,实现正前方(0°±60°)和正后方(180°±60°)的指定锥形区域内,如图8所示的一对一对讲的实时分离;分离之后的两通道语音信号,分别通过语音增强算法,包括波束形成、语音降噪、去混响,在频域内实现消除干扰、噪声、混响,提取出两通道期望音频信号;然后分别利用重叠相加求和,通过256点的短时傅里叶反变换将估计的两通道期望音频信号变换到时域,得到重建后的实时分离增强的两通道音频信号;最后DSP处理单元通过McASP1总线通过TDM方式将实时分离增强的两通道音频信号传输到FPGA处理单元的输出处理模块。

FPGA处理单元的输出处理模块主要实现信号输出的时序产生和数据处理、缓存等功能;生成TDM从时序,接收DSP处理单元实时分离增强的两通道音频信号,并将数据进行缓存。FPGA处理单元的输出处理模块生成两路IIS主时序,将实时分离增强的两通道音频信号传输到音频输出单元。

音频输出单元通过IIS总线连接FPGA处理单元的输出处理模块,分别驱动两路IIS总线;IIS1总线将两路音频数据传输给音频D/A,将音频数字信号转换为模拟信号,然后输出到音频功放驱动单元,音频功放驱动单元将模拟信号放大,接3.5mm耳机立体声接口,实现600欧姆非平衡输出;IIS2总线将两路音频数字信号传输给USB(Universal Serial Bus,USB)to IIS Bridge声卡桥接芯片,转换成USB包,实现音频信号的USB异步传输,将拾音器虚拟成计算机标准USB声卡,实现即插即用。

本发明提出的双声源实时分离拾音器,能够将警官和犯罪嫌疑人谈话自动分离,从两个音频通道分别输出;根据语音质量,分离后的双通道语音可直接接入后端多通道语音识别系统,进行语音的实时识别和记录,自动形成讯问记录。也可再分别通过算法(如波束形成、语音增强等)进行进一步处理,降低各种噪声的对识别性能的影响。后期,书记员也可进行人工校准。该系统在提高询问记录准确性的同时,较大减少了书记员讯问笔录的工作量。此外,利用分离出的犯罪嫌疑人声音,建立犯罪嫌疑人声纹库,未来还可辅助办案,进一步提高公安侦查破案的效率和能力。

本发明提出的双声源分离拾音器能够将工作人员和群众的对话自动分离,从两个音频通道分别单独输出。部门中心可根据分离的语音信息评估群众需求和服务质量,动态掌握窗口工作情况。

本发明提出的双声源实时分离拾音器可扩展性较强,可以基于线阵、环阵或其它阵形,本发明尽管给出的例子是基于均匀线性阵列的,其可用于均匀线性阵列,也可用于非均匀线性阵列以及圆形阵列。本发明根据实际场景需求,利用声源定向算法得出多个声源的角度,从而实现多通道声源实时分离,如扩展成的环阵多声源实时分离,可应用于多人会议系统,能将不同参会者的发言实时自动分离并输出,然后接入后端多通道语音识别转写系统,可实现语音的实时转写,高效完成会议纪要。本发明可用于双声源分离,也可扩展为3路、4路以及多路声源分离。

本发明专利提出的基于GCC时延估计算法的双声源实时分离技术,利用GCC算法快速准确的时延估计性能,能有效分离出说话人双方交谈的语音。并且,对说话人转换间存在的语音起始和结束部分,也进行了有效的处理,使算法性能更加鲁棒。更为重要的是,本专利采用的声源分离算法复杂度低,并且在实际系统中实时运行。

最后应说明的是:以上各实施例仅用以说明本发明的实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明的实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明的实施例各实施例技术方案的范围。

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于深度学习的实时音乐转录与曲谱匹配方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!