一种基于卷积神经网络CNN的声源定位算法[发明专利]
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 201710731343.9
(22)申请日 2017.08.23
(71)申请人 南京邮电大学
地址 210003 江苏省南京市鼓楼区新模范
马路66号
(72)发明人 万新旺 王吉 廖鹏程 陈中倩
(74)专利代理机构 南京知识律师事务所 32207
代理人 高娇阳
(51)Int.Cl.
G01S 5/18(2006.01)
G06N 3/04(2006.01)
(54)发明名称
一种基于卷积神经网络CNN的声源定位算法
(57)摘要
本发明提供了一种基于卷积神经网络CNN的
声源定位算法。
该方法通过引入鉴别互相关函数
的特征,利用Roomsim的仿真环境以及两个麦克
风所接收的信号,得到在带有混响和噪声环境下
的互相关函数,并分帧截取得到训练集和测试
集,对该特征进行训练得到卷积神经网络,即CNN
模型,训练过程中,采用ReLU函数作为激活函数,
并将测试集在该模型下进行声源定位估计,最后
采用贝叶斯决策来构建判决式决定测试样本的
类别,使得得条件概率p(r s |Y )最大的位置即为
估计出声源的真实位置。
这种算法的实现,有效
地解决了传统声源定位中噪声和混响的问题。
权利要求书1页 说明书5页 附图2页CN 107703486 A 2018.02.16
C N 107703486
A
1.一种基于卷积神经网络CNN的声源定位算法,其特征在于,包括以下步骤:
步骤1:利用Roomsim工具包模拟出在带有混响和噪声的室内环境,根据两个麦克风接收到的信号x 1(t)和x 2(t),
计算出麦克风接收信号的互相关函数再进行分帧截取及特征提取,得到训练集,为下一步的模型训练做准备。
步骤2:将互相关函数特征作为输入,按照一维CNN进行模型训练,训练过程中,激活函数采用ReLU函数,其数学表达式为:
f(x)=max(0,x) (1.12)
步骤3:计算出CNN模型参数后,即完成模型训练后,利用和生产训练数据一样的方法得到测试数据Y ',将其输入CNN模型后,利用贝叶斯决策来构建判决式决定测试样本的类别,即利用高斯概率模型对类条件概率密度P(z|C k )建模,然后根据贝叶斯决策最大化正确分
类率:
其中R k 表示决策域,即在决策域R k 内的样本都属于C k 类,此时只需要根据贝叶斯定理p (z ,C k )=p(C k |z)p(z),而p(z)对于所有项是相同的,所以只要找出后验概率p(C k |z)最大的类别即为样本z所属的类别,即声源的方位。
2.根据权利要求书1所述的一种基于卷积神经网络CNN的声源定位算法,其特征在于,步骤1所述的特征提取的具体步骤如下:
步骤1.1:声源位于训练位置r s ,s=1,2,...,k,麦克风阵记录下声源在该位置处发出的信号s(t);
步骤1.2:根据房间脉冲响应和声源信号计算得到麦克风接收到的混响信号x 1(t)和x 2(t);
步骤1.3:根据麦克风接收到的混响信号x 1(t)和x 2(t),经过预处理后,计算相位变换加
权广义互相关函数
步骤1.4:对进行分帧截取,得到训练集Y。
权 利 要 求 书1/1页CN 107703486 A
一种基于卷积神经网络CNN的声源定位算法
技术领域
[0001]本发明涉及一种基于神经网络CNN的声源定位算法研究,属于信息技术领域。
背景技术
[0002]对于声源定位算法来说,如何提高抗噪声和抗混响能力是长久以来的研究重心,在实际的环境下,当信噪比很小、混响严重的情况下,基于传统算法的改进措施很难有明显的效果。
此外当麦克风无法接收到声源的直达声时,也难以定位。
本发明提出使用卷积神经网络CNN鉴别相位变换加权广义互相关函数(GCC-PHAT)来进行声源定位。
实验表明,卷积神经网络CNN在低信噪比和严重混响环境下有更出色的定位性能。
[0003]卷积神经网络CNN是一种前馈神经网络,是受生物学上感受野的机制而提出的,CNN以其局部连接,局部权值共享的结构特性在语音识别和图像处理方面有着独特的优越性。
其思想是CNN由一组或多组卷积层和采样层构成,一个卷积层中包含若干个不同的卷积器,这些卷积器对语音的各个局部特征进行观察。
采样层通过对卷积层的输出结点做固定窗长的采样,减少下一层的输入结点数,从而控制模型的复杂度。
一般采样层采用最大采样算法,即对固定窗长内的结点选取最大值进行输出。
[0004]对于一维卷积神经网络,在采用卷积来代替全连接的卷积神经网络中,第l层的每一个神经元都只和l-1层的一个局部窗口内的神经元相连,构成一个局部连接网络。
第l层的第i个神经元的输入定义为:
[0005]
[0006]上述公式也可以写为:
[0007]
[0008]其中,f(x)为激活函数,本发明激活函数采用ReLU函数,
为l-1层神经元输出的加权偏置,为m维的滤波器,为其权
值,为神经元输入,b(l)为偏置,的下标从1开始,表
示卷积运算。
[0009]从公式(1.2)可以看出,w(l)对于所有的神经元都是相同的。
这也是卷积层的权值共享特性。
在卷积层里,我们只需要m+1个参数。
[0010]此外,在互相关函数特征的选取中,本发明利用Roomsim工具包模拟出在带有混响和噪声的室内环境,通过两个不同位置的麦克风接收信号x1(t)和x2(t)之间的广义互相关函数(GCC)可以在频域计算:
[0011]
[0012]式中,上标“*”表示复共轭,X1(ω)、X2(ω)分别是x1(t)、x2(t)的傅里叶变换,Ψ1,2
(ω)为加权函数。
[0013]为了增强互相关函数的抗混响能力,可以使用相位变化(PHAT)加权函数:
[0014]
[0015]将式(1.4)代入式(1.3),得到:
[0016]
[0017]在实际情况中,麦克风接收信号x1(t)和x2(t)经过加窗后,再由傅里叶变换求得X1 (ω)和X2(ω)。
如果房间脉冲响应的长度L比窗函数的长度短很多,则麦克风接收信号在频域可以表示为:
[0018]X n(ω)=H n(r s,ω)S(ω),n=1,2, (1.6)
[0019]式中,r s为声源位置,s(t)为在r s处的声源信号,声源到第n个麦克风的房间脉冲响应为h n(r s,t),L为房间脉冲响应的长度。
S(w)和H n(r s,t)分别是s(t)和h n(r s,t)的傅里叶变换。
[0020]将式(1.6)代入式(1.5),得到:
[0021]
[0022]由式(1.7)可知,麦克风阵接收信号x1(t)和x2(t)之间的GCC等于房间脉冲响应h1 (r s,t)和h2(r s,t)之间的GCC。
[0023]然而,在实际情况中房间脉冲响应的长度L比窗函数的长度大很多,则麦克风信号在频域只能近似表示为:
[0024]X n(ω)≈H n(r s,ω)S(ω),n=1,2, (1.8)
[0025]而且,麦克风阵接收信号x1(t)和x2(t)之间的GCC只能近似等于房间脉冲响应h1 (r s,t)和h2(r s,t)之间的GCC,即:
[0026]
[0027]当计算出长度取K帧的GCC-PHAT得到则特征数据集Y可由下式截取:
[0028]
[0029]其中round()为取整函数,D ij为第i个麦克风第j个麦克风之间的距离,f s为采样频率,c为声速,为了获得GCC-PHAT谱线上所有可能取得谱峰的时延点的
数据,从而转化为特征数据集,因子α设为1.67。
[0030]由式(1.10)可见,对于每一帧信号的互相关函数其维度为2τmax+1。
最后,可取得的由K帧数据形成的维度为(2τmax+1)×K的特征向量Y表示为:
[0031]Y=[y1,y2,...,y k-1,y k]T (1.11)
[0032]由此可以得到互相关函数的特征。
发明内容
[0033]针对在噪声和混响严重的情况下,提高声音信号抗噪声和抗混响能力,本发明提供了一种基于卷积神经网络CNN的声源定位算法。
该方法通过引入鉴别互相关函数的特征,利用Roomsim的仿真环境以及两个麦克风所接收的信号,得到在带有混响和噪声环境下的互相关函数,并分帧截取得到训练集和测试集,对该特征进行训练得到卷积神经网络,即CNN模型,训练过程中,采用ReLU函数作为激活函数,并将测试集在该模型下进行声源定位估计,最后采用贝叶斯决策来构建判决式决定测试样本的类别,使得得条件概率p(r s|Y)最大的位置即为估计出声源的真实位置。
这种算法的实现,有效地解决了传统声源定位中噪声和混响的问题。
[0034]本发明解决其技术问题所采取的技术方案是:一种基于卷积神经网络CNN的声源定位算法。
[0035]该技术方案步骤如下:
[0036]步骤1:利用Roomsim工具包模拟出在带有混响和噪声的室内环境,根据两个麦克
风接收到的信号x1(t)和x2(t),计算出麦克风接收信号的互相关函数再进行分帧截取及特征提取,得到训练集,为下一步的模型训练做准备。
[0037]特征提取具体步骤如下:
[0038]步骤1.1:声源位于训练位置r s,s=1,2,...,k,麦克风阵记录下声源在该位置处发出的信号s(t);
[0039]步骤1.2:根据房间脉冲响应和声源信号计算得到麦克风接收到的混响信号x1(t)和x2(t);
[0040]步骤1.3:根据麦克风接收到的混响信号x1(t)和x2(t),经过预处理后,计算相位变
换加权广义互相关函数
[0041]步骤1.4:对进行分帧截取,得到训练集Y;
[0042]步骤2:将互相关函数特征作为输入,按照一维CNN进行模型训练,训练过程中,激活函数采用ReLU函数,其数学表达式为:
[0043]f(x)=max(0,x) (1.12)
[0044]步骤3:计算出CNN模型参数后,即完成模型训练后,利用和生产训练数据一样的方法得到测试数据Y',将其输入CNN模型后,利用贝叶斯决策来构建判决式决定测试样本的类别,即利用高斯概率模型对类条件概率密度P(z|C k)建模,然后根据贝叶斯决策最大化正确分类率:
[0045]
[0046]其中R k表示决策域,即在决策域R k内的样本都属于C k类,此时只需要根据贝叶斯定理p(z,C k)=p(C k|z)p(z),而p(z)对于所有项是相同的,所以只要找出后验概率p(C k|z)最大的类别即为样本z所属的类别,即声源的方位。
[0047]有益效果:
[0048]1、本发明将声源的互相关函数的特征信息和CNN模型结合起来,适用于有强噪声和混响的声源定位。
[0049]2、本发明通过对声源的互相关函数特征的提取,数据采集方便简单,定位效果也较好。
附图说明
[0050]图1为本发明的方法流程图。
[0051]图2为本发明在不同噪声和混响情况下的定位精度示意图(T60=300ms)。
[0052]图3为本发明在不同噪声和混响情况下的定位精度示意图(T60=600ms)。
具体实施方式
[0053]下面结合说明书附图对本发明创造作进一步的详细说明。
[0054]如图1所示,一种基于卷积神经网络CNN的声源定位算法,包括以下内容:[0055]步骤1:利用Roomsim工具包模拟出在带有混响和噪声的室内环境,根据两个麦克
风接收到的信号x1(t)和x2(t),计算出麦克风接收信号的互相关函数再进行分帧截取及特征提取,得到训练集,为下一步的模型训练做准备。
[0056]特征提取具体步骤如下:
[0057]步骤1.1:声源位于训练位置r s,s=1,2,...,k,麦克风阵记录下声源在该位置处发出的信号s(t);
[0058]步骤1.2:根据房间脉冲响应和声源信号计算得到麦克风接收到的混响信号x1(t)和x2(t);
[0059]步骤1.3:根据麦克风接收到的混响信号x1(t)和x2(t),经过预处理后,计算相位变
换加权广义互相关函数
[0060]步骤1.4:对进行分帧截取,得到训练集Y;
[0061]步骤2:将互相关函数特征作为输入,按照一维CNN进行模型训练,训练过程中,激活函数采用ReLU函数,其数学表达式为:
[0062]f(x)=max(0,x) (1.12)
[0063]步骤3:计算出CNN模型参数后,即完成模型训练后,利用和生产训练数据一样的方法得到测试数据Y',将其输入CNN模型后,利用贝叶斯决策来构建判决式决定测试样本的类别,即利用高斯概率模型对类条件概率密度P(z|C k)建模,然后根据贝叶斯决策最大化正确
分类率:
[0064]
[0065]其中R k表示决策域,即在决策域R k内的样本都属于C k类,此时只需要根据贝叶斯定理p(z,C k)=p(C k|z)p(z),而p(z)对于所有项是相同的,所以只要找出后验概率p(C k|z)最大的类别即为样本z所属的类别,即声源的方位。
[0066]下面对本发明的基于CNN的声源定位算法在不同情况下分别进行比较验证,实验参数选取包括如下:
[0067](1)使用了Roomsim工具包模拟室内环境,它的尺寸为8m×6m×3m以及间距为0.4m 的一对麦克风。
整个数据集按1:1比例分成训练集和测试集,训练集数据作为算法输入,而测试集用于测试改进后的算法性能。
声源信号采用麻省理工学院TIMIT语音库的语音。
[0068](2)为了比较不同混响和噪声条件下CNN模型性能,实验参数分别设为:中等的混响时间T60=300ms(如图2)和严重的混响时间T60=600ms(如图3)这2种情况;加性白噪声信噪比为clean(无噪)、25dB、20dB、15dB、10dB和5dB这6种情况。
[0069]实验1:验证在无噪环境下用CNN模型进行声源定位的差错率的结果图。
[0070]实验2:验证在混响时间T60=300、600ms时,不同信噪比下CNN模型进行声源定位精度结果图。
[0071]对本领域技术人员而言,根据上述实施类型可以很容易联想其他的优点和变形。
因此,本发明不局限于以上实例,其仅仅作为例子对本发明的一种形态进行详细、示范性的说明。
在不背离本发明宗旨的范围内,本领域技术人员根据上述具体实例,通过各种等同替换所得到的技术方案,均应包含在本发明的权利要求范围及其等同范围之内。
图1
图2
图3。