一种基于神经网络的声源定位方法[发明专利]
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 201711428934.5
(22)申请日 2017.12.26
(71)申请人 北京大学
地址 100871 北京市海淀区颐和园路5号北
京大学
(72)发明人 曲天书 吴玺宏 黄炎坤
(74)专利代理机构 北京君尚知识产权代理事务
所(普通合伙) 11200
代理人 司立彬
(51)Int.Cl.
G01S 5/22(2006.01)
(54)发明名称
一种基于神经网络的声源定位方法
(57)摘要
本发明公开了一种基于神经网络的声源定
位方法。
本发明对所有传输路径的传递函数,即
传递特性进行建模,通过深度学习的方式从大量
数据中学习到声音信号在传播过程中由于散射
体的存在或环境等原因造成的相位和幅度变化
规律,通过神经网络可以恢复到原始的相位和幅
度,最后结合时间差和幅度差两个定位线索进行
声源定位。
本发明利用了已知的时延信息,再利
用深度神经网络恢复原始的相位和幅度,并有效
地结合了时间信息和幅度信息进行定位,显著提
高了抗噪性能。
权利要求书1页 说明书5页 附图6页CN 108318862 A 2018.07.24
C N 108318862
A
1.一种基于神经网络的声源定位方法,其步骤包括:
1)根据各待扫描的声源位置信息和各声音信号采集单元的位置信息,计算各声源的声音信号传输到每一声音信号采集单元的时延;其中,τls 表示声源s到第l个声音信号采集单元的时延;
2)扫描每一所述声源的位置,根据步骤1)得到的时延对声音信号采集单元信号进行相应的时延补偿;其中,时刻n扫描声源s的位置时,对第l个声音信号采集单元采集的信号x l 进行时延补偿后的信号为
3)将步骤2)时延补偿后的时域信号输入到对应的DNN模型中,通过DNN模型进行相位和幅度的恢复,并输出估计的源信号;其中,
将信号输入DNN ls 模型,DNN ls 模型表示声源s 和第l个声音信号采集单元对应传输路径的DNN模型;训练得到DNN ls 模型的方法为:将第l个声音信号采集单元接收到的声音信号时域表示作为该深度神经网络模型的输入,将声源s 的声音信号时域表示作为该深度神经网络模型的输出监督信息,训练得到该DNN ls 模型;时刻n扫描声源s的位置时DNN ls
模型输出的源信号l=1,...,M,M为声音信号采集单元总数;
4)对于每一扫描位置,计算M个估计的源信号的互相关系数和;
5)重复步骤2)~4),当扫描完全部所述声源的位置后,分别计算出一互相关系数和;根据互相关系数和选取相关度最大值对应的声源位置作为估计的声源位置。
2.如权利要求1所述的方法,其特征在于,根据时刻n 扫描声源s 的位置时输出的M 个估计的源信号,计算得到的声源s 的互相关系数和
为
其中,Corr(x(n),y(n))是指信号x(n),y
(n)的互相关系数。
3.如权利要求1所述的方法,其特征在于,训练得到DNN模型的训练数据为实际采集的数据,即利用在设定位置播放声源信号,声音信号采集单元阵列采集所述声源信号。
4.如权利要求3所述的方法,其特征在于,所述声源信号为白噪声。
5.如权利要求1所述的方法,其特征在于,训练得到DNN模型的训练数据为仿真生成的数据。
6.如权利要求1~5任一所述的方法,其特征在于,所述声音信号采集单元为麦克风。
权 利 要 求 书1/1页CN 108318862 A
一种基于神经网络的声源定位方法
技术领域
[0001]本发明属于阵列信号处理技术领域,涉及麦克风阵列和声源定位方法,具体涉及一种基于神经网络的声源定位方法。
背景技术
[0002]语音是人类信息交流中最基本、最直接的工具。
现代通信技术一般用麦克风进行语音信号的采集,然后根据不同应用的需求进行存储、处理和转发。
将多个麦克风组成阵列,可以有效地利用接收信号间的冗余来实现声源定位、语音增强、语音分离等功能。
基于麦克风阵列的声源定位是近年来语音信号处理领域的一大研究热点,声源定位技术在视频电话会议、机器人定位、语音增强等场景都扮演着非常重要的角色。
[0003]对于近年来的声源定位技术,按照定位的原理,声源定位技术一般可分成以下五类:基于可控波束形成、基于时延差估计、基于高分辨率谱估计、基于传递函数逆滤波和基于神经网络。
[0004]基于可控波束形成的定位算法是通过波束形成补偿阵列各通道间的时延并计算出可控响应功率,功率最大的位置即为声源位置,典型的算法有SRP-PHAT。
基于时延差估计的定位算法是通过估计到达时间差,根据时延差和阵列的空间几何位置来推断出声源位置,典型的算法有GCC。
基于高分辨率谱估计的定位算法是基于对阵列信号的协方差矩阵进行特征分解,从而得到与信号分量相对应的信号子空间及噪声子空间,利用两子空间估计目标方位,典型的算法有MUSIC。
然而这些传统定位算法都只利用了通道间时间差的定位线索,没有利用到通道间强度差的定位线索,而且当存在散射体,存在衍射现象时,无法准确估计时延,定位误差非常大。
[0005]基于传递函数的定位算法是通过实测每个声源到每个麦克风的传输特性,即传递函数,通过逆滤波操作得到源信号进行定位。
测量到准确的传递函数是一件非常困难的事,需要在无噪声的环境下播放指定信号才有可能通过计算得到传递函数,并且传递函数是不完全准确,但在现实情况是不满足的,当测量过程中有噪声时,测得的传递函数效果很差,甚至奔溃。
[0006]最近研究主要集中在基于神经网络的定位算法,这类研究基本需要预先提取特征,然后利用神经网络学习特征到方位角的映射。
目前,基于神经网络的定位算法,大部分需要特征提取这一环节,而且只学习到方位角的一个映射,无法直接恢复源信号。
发明内容
[0007]针对现有技术存在的技术问题,本发明提出一种基于神经网络的声源定位方法,旨在通过学习的方式学习到声音信号在传播过程中由于散射体的存在或环境等原因造成的相位和幅度的变化,结合时间差和幅度差两个定位线索进行声源定位,并在实际充满噪声的环境下,该方法仍可进行推广应用。
[0008]本发明中所提出的基于神经网络的声源定位方法的基本思想是对所有传输路径
的传递函数,即传递特性进行建模,通过深度学习的方式从大量数据中学习到声音信号在传播过程中由于散射体的存在或环境等原因造成的相位和幅度变化规律,通过神经网络可以恢复到原始的相位和幅度,最后结合时间差和幅度差两个定位线索进行声源定位。
本发明的重要创新之处在于它利用了已知的时延信息,再利用深度神经网络恢复原始的相位和幅度,并有效地结合了时间信息和幅度信息进行定位,显著提高了抗噪性能。
[0009]声音信号从一个位置传输到另一个位置的过程中,由于受到外界的干扰,声音信号的相位和幅度会发生变化,其变化过程可以由传递函数刻画。
本发明在对传递函数建模问题上,是利用多个深度神经网络模型(DNN模型)对所有传输路径的传递函数进行建模,具体为一个DNN模型对一个传输路径的传递函数进行建模。
DNN模型的输入是麦克风接收到的声音信号时域表示,时域表示中的一个采样点对应DNN模型中的一个输入神经元,DNN的输出监督信息使用的是源信号时域表示,同样也是一个采样点对应一个神经元。
DNN模型学习的是接收信号到源信号的一个映射,属于神经网络的回归问题。
关于训练数据的获取,可仿真生成,也可实际采集,即利用在定点播放声源信号,麦克风阵列采集信号即可。
为了使模型适用于宽带信号的声源定位问题上,可选择使用白噪声作为声源信号。
[0010]本发明的技术方案为:
[0011]一种基于神经网络的声源定位方法,其步骤包括:
[0012]1)根据各待扫描的声源位置信息和各声音信号采集单元的位置信息,计算各声源的声音信号传输到每一声音信号采集单元的时延;其中,τls表示声源s到第l个声音信号采集单元的时延;
[0013]2)扫描每一所述声源的位置,根据步骤1)得到的时延对声音信号采集单元信号进行相应的时延补偿;其中,时刻n扫描声源s的位置时,对第l个声音信号采集单元采集的信号x l进行时延补偿后的信号为
[0014]3)将步骤2)时延补偿后的时域信号输入到对应的DNN模型中,通过DNN模型进行相
位和幅度的恢复,并输出估计的源信号;其中,将信号输入DNN ls)模型,DNN ls模型表示声源s和第l个声音信号采集单元对应传输路径的DNN模型;训练得到DNN ls模型的方法为:将第l个声音信号采集单元接收到的声音信号时域表示作为该深度神经网络模型的输入,将声源s的声音信号时域表示作为该深度神经网络模型的输出监督信息,训练得到该D N N l s模型;时刻n扫描声源s的位置时D N N l s模型输出的源信号
M为声音信号采集单元总数;
[0015]4)对于每一扫描位置,计算M个估计的源信号的互相关系数和;
[0016]5)重复步骤2)~4),当扫描完全部所述声源的位置后,分别计算出一互相关系数和;根据互相关系数和选取相关度最大值对应的声源位置作为估计的声源位置。
[0017]进一步的,根据时刻n扫描声源s的位置时输出的M个估计的源信号,计算得到的声
源s的互相关系数和为其中,Corr(x(n),y
(n))是指信号x(n),y(n)的互相关系数。
[0018]进一步的,训练得到DNN模型的训练数据为实际采集的数据,即利用在设定位置播
放声源信号,声音信号采集单元阵列采集所述声源信号。
[0019]进一步的,所述声源信号为白噪声。
[0020]进一步的,训练得到DNN模型的训练数据为仿真生成的数据。
[0021]进一步的,所述声音信号采集单元为麦克风。
[0022]本发明提出的基于神经网络的声源定位方法的基本框架如图1所示,该方法是一个扫描的方法,其中主要包括以下几个部分:
[0023]计算时延:对于待扫描的每个声源位置和每个麦克风,计算声音信号从声源位置传输到麦克风位置的时延。
[0024]补偿时延:在每次扫描过程中,对多通道麦克风信号分别进行相应时延的补偿。
[0025]通过DNN恢复相位和幅度:对于时延补偿后的信号,将其输入到对应的DNN中,使信号恢复到原始相位和幅度。
[0026]通道间一致性计算:对于某一个声源位置来说,麦克风阵列恢复出多通道信号,计算恢复出的多通道信号的互相关系数和,作为通道间一致性的指标。
[0027]估计目标声源位置:对位置空间所有的待扫描的声源位置,分别进行上述几个操作,计算得出声源位置对应的互相关系数和,取相关系数和最大对应的声源位置作为最终估计的声源位置。
[0028]与现有技术相比,本发明的积极效果为:
[0029]本发明利用了已知的时延信息,再利用深度神经网络恢复原始的相位和幅度,并有效地结合了时间信息和幅度信息进行定位,显著提高了抗噪性能。
[0030]本发明在噪声环境下仍能够进行训练和应用,具有较强的鲁棒性。
附图说明
[0031]图1为基于神经网络的声源定位方法的基本框图;
[0032]图2为本发明使用的DNN模型结构示意图;
[0033]图3为本发明所用球模型以及麦克风分布示意图;
[0034]图4为本发明所提方法与基线分别在白噪声和语音信号的定位指向图;[0035](a)声源信号为白噪声,方位角为0°,(b)声源信号为白噪声,方位角为15°,[0036](c)声源信号为语音信号,方位角为0°,(d)声源信号为语音信号,方位角为15°;[0037]图5为本发明所提方法与基线在不同信噪比下不同信号类别的定位性能曲线;[0038](a)声源信号为白噪声,(b)声源信号为语音信号;
[0039]图6为本发明方法在不同信噪比数据下训练得到的模型的定位性能曲线。
具体实施方式
[0040]下面参照本发明的附图,更详细地描述本发明的最佳实施例。
图1所示为本发明提出的基于神经网络的声源定位方法的基本框图,本发明方法的具体实现步骤包括计算时延、补偿时延、通过DNN恢复相位和幅度、通道间一致性计算和估计目标声源位置。
各步骤的具体实现过程如下:
[0041] 1.计算时延
[0042]待扫描的每个声源位置和每个麦克风位置都是已知的,则时延也是已知信息,可
以直接使用,即可以根据位置计算两者距离,再结合声速计算声音信号从声源位置传输到麦克风位置的时延,即
[0043]
[0044]其中,τls表示候选声源s与第l个麦克风的时延,d ls为候选声源s与第l个麦克风的距离,ν为声速。
[0045] 2.补偿时延
[0046]麦克风阵列位置保持不变,声源遍历空间每一方位的定位过程,称之为扫描。
在每次扫描过程中,由步骤1可计算出声音信号在每个传输路径的时延,因此,就某个声源位置来说,需对多通道麦克风信号分别进行相应时延的补偿,即
[0047]
[0048]其中,M表示麦克风数,n为时刻,x l为第l个麦克风采集的信号,为在时刻n,声源位置为s时,对第l个麦克风采集的信号x l进行时延补偿,得到补偿后的信号。
[0049] 3.通过DNN恢复相位和幅度
[0050]将时延补偿后的时域信号输入到对应的DNN中,通过DNN进行相位和幅度的恢复,并输出估计的源信号,即
[0051]
[0052]其中,DNN ls表示声源s和第l个麦克风对应传输路径的DNN模型,其模型结构可参见图2。
[0053] 4.通道间一致性计算
[0054]对于某一个扫描位置来说,能恢复出多通道原始信号,计算恢复出的多通道信号的互相关系数和,作为通道间一致性的指标,即
[0055]
[0056]其中,Corr(x(n),y(n))是指信号x(n)、y(n)的互相关系数,SCorr(s)表示对于候选声源s的互相关系数和。
[0057] 5.估计目标声源位置
[0058]理论上若扫描到的候选声源位置与真实声源位置一致时,恢复出的多路源信号是一致的,即互相关系数和最大。
通过对假定空间H中的所有声源位置进行扫描,分别计算出互相关系数和,最后,选取相关度最大的一个候选声源位置作为估计的声源位置,即
[0059]
[0060]下面结合具体实施例说明本发明的优点。
[0061]本发明使用传递函数生成仿真信号,分别在安静和噪声条件下测试所提定位方法在仿真信号上的定位性能。
定位性能的评价指标包括定位指向性以及抗噪性能。
实验使用SRP-PHAT作为基线。
声源信号分别选用高斯白噪声信号、TIMIT语音数据库中的语音信号。
噪声情况下的信噪比变化范围为-40dB至25dB。
[0062] 1.DNN结构
[0063]在本实例中,DNN模型使用四层的前馈全连接神经网络,如图2所示,每层的神经元数都为4096(由于帧长为4096个采样点),前三层的激活函数为tanh,最后一层为回归层,不设置激活函数,模型使用均方误差(MSE)作为代价函数,优化算法为Adam算法。
[0064] 2.传递函数
[0065]实验使用刚性球作为散射体,其表面水平均匀分布有6个麦克风,如图3所示。
球半径为8.75cm。
声源与麦克风位于同一水平面内,与球中心的距离恒定为3m。
麦克风的水平角在0度到360度内变化,变化步长为60度。
传递函数由Duda等人给出的球模型计算得到。
[0066] 3.信号仿真
[0067]实验使用声源卷积传递函数生成仿真信号,声源信号共有两种:高斯白噪声信号和TIMIT语音数据库中的语音信号。
语音中的静音会干扰实验,因此在实验前手动切除其中的静音段。
实验向仿真信号各通道中加入同等强度的高斯白噪声,各通道间高斯白噪声相互独立,信号的采样率为48kHz。
每种条件(声源位置、声源类型)下,统计本发明所提方法与基线方法定位结果。
[0068] 4.实验结果
[0069]在该实验中,选取了干净的高斯白噪声信号、语音信号分别用本发明提出的方法和基线方法进行定位,观察这两个方法在不同种类信号的定位指向性,如图4所示。
从图上可看出,本发明提出的方法的指向性好于基线方法,当训练数据和测试数据分布越匹配时,定位性能越好。
[0070]为了验证该模型在充满噪声的实际环境下仍能工作,本实验使用不同信噪比(-40dB~25dB)的加噪信号进行定位实验,源信号有高斯白噪声、语音信号,分别用本发明提出的方法和基线方法进行定位测试,两者的定位平均角度误差如图5。
从图上可以看出,使用本发明提出的方法进行定位时,当SNR降至-15dB开始出现误差。
然而,使用基线方法进行定位时,会在-12dB处提早出现误差,总体抗噪性能提升了3dB。
[0071]在上述定位实验中,模型是通过干净的信号进行训练得来,得到了很好的定位效果。
为了检验模型的鲁棒性,探究是否在实际充满噪声的情况还能训练和使用模型,故增加了鲁棒性评测实验。
训练数据分别在干净高斯白噪声信号的基础上加入不同信噪比(-10dB ~10dB,间隔为5dB)的噪声作为训练数据,其定位性能如图6。
从图可看出,该方法在噪声环境下仍能够进行训练和应用,具有较强的鲁棒性。
[0072]尽管为说明目的公开了本发明的具体实施例和附图,其目的在于帮助理解本发明的内容并据以实施,但是本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。
因此,本发明不应局限于最佳实施例和附图所公开的内容。
图1
图2
图3
图4
图5
图6。