基于神经网络的近场源到达角估计方法与流程

文档序号:16396420发布日期:2018-12-25 19:51阅读:268来源:国知局
基于神经网络的近场源到达角估计方法与流程

本发明属于信号处理技术领域,尤其涉及一种近场源的一维到达角估计方法。

背景技术

到达角估计是空间信源无源测向技术的核心,是阵列信号处理中一个重要的研究课题。传统到达角估计主要通过music方法、esprit方法及其衍生方法进行。music方法是将阵列接收数据分解为信号子空间和噪声子空间,然后利用导向矢量扫描噪声子空间的方式进行到达角估计。由于此过程中导向矢量必须扫描整个空间,运算量巨大,从而导致无法实现对数据的实时处理。而且music方法在低信噪比小角度间隔情况下到达角估计性能很差。此外对于相干波源来说,由于相干波源阵列接收信号的信号子空间会滑入噪声子空间中,导致信号子空间维度缺失,music方法将彻底失效。esprit方法对于相干信号亦存在同样的问题。



技术实现要素:

针对music方法、esprit方法存在的非相干信号低信噪比下小间隔角度到达角估计效果不佳以及相干信号完全失效的问题,本发明的目的是提供一种基于神经网络的近场源到达角估计方法,可以改善相干信号以及低信噪比下的非相干信号的到达角估计效果。

基于神经网络的近场源到达角估计方法,包括以下步骤:

步骤一、传感器阵列接收入射信号训练区间内的n组训练信号;

k个训练信号的m次采样得到一组训练数据,然后将训练信号整体旋转一个角度,传感器阵列获取下一组训练数据,直至遍历整个训练区间,共得到n组训练数据;

步骤二、构建训练数据的协方差矩阵;

第n组训练数据的协方差矩阵n=1,…,n;

训练数据的协方差矩阵中各元素的值根据以下公式计算:

式中的x(n)-p表示第-p个阵元的第n组训练数据,表示第p个阵元的第n组训练数据的转置复共轭,为第n组训练数据的第k个训练信号的方差,为噪声方差,δ(·)表示狄利克雷函数,d为传感器阵列中相邻阵元之间的间距,λk为第k个训练信号的波长,θ(n)k为第n组训练数据的第k个训练信号的到达角,p=0,…,p,p为传感器阵列中心一侧布置的阵元数量;

步骤三、构建用于对神经网络进行训练的训练数据集合ω,训练数据集合其中,为归一化数据协方差矩阵,θ为到达角矩阵;

将每一组训练数据的协方差矩阵中上三角区域的元素置于一个列向量中,得到该组训练数据对应的特征列向量,n组训练数据的特征列向量组成训练数据复数矩阵,对训练数据复数矩阵中的每个元素分别取实部和取虚部,得到训练数据实部矩阵和训练数据虚部矩阵,将训练数据实部矩阵和训练数据虚部矩阵按列排放,构造训练数据特征矩阵;将训练数据特征矩阵的每一行元素分别进行归一化处理,得到归一化训练数据协方差矩阵到达角矩阵θ由n组训练数据的k个训练信号的到达角组成;

步骤四、利用训练数据集合ω对神经网络进行训练;

神经网络包含1个输入层、l个隐层及1个输出层,训练包括前向过程和反向过程,前向过程中将归一化训练数据协方差矩阵的列元素作为训练输入数据按列输入到神经网络中,通过神经网络的输入层依次向后传递,输出层的输出值为神经网络最终的输出结果;反向过程中计算神经网络的输出结果与对应的训练信号的到达角之间的误差矩阵为神经网络的输出结果输出结果,θn为与输出结果对应的k个训练信号的到达角,根据误差矩阵构建损失函数errorn(k)表示第n组训练数据的第k个信号的角度误差矩阵,k=1,2,...,k,当损失函数的值小于预设值则训练过程结束,反之则利用误差反向传播算法计算神经网络中各层权值矩阵对应的修正值矩阵以及各层阈值矩阵对应的修正值矩阵,利用权值矩阵和阈值矩阵各自对应的修正值矩阵对原权值矩阵和原阈值矩阵进行修正;

修正后,将归一化训练数据协方差矩阵的下一列元素输入到神经网络中,重复前向过程和反向过程,直至损失函数的值小于预设值,神经网络的训练过程完成;

步骤五、利用训练好的神经网络计算测试信号的到达角估计值:

传感器阵列接收训练区间范围内的n’组测试信号,k个测试信号的m次采样数据得到一组测试数据,然后将测试信号整体旋转一个角度,传感器阵列获取下一组测试数据,直至遍历整个训练区间,共得到n’组测试数据;

构建测试数据的协方差矩阵,第n’组测试数据的协方差矩阵

n’=1,…,n’,测试数据的协方差矩阵中各元素的值根据以下公式计算:

式中的x(n′)-p为第-p个阵元的第n’组测试数据,为第p个阵元的第n’组测试数据的转置复共轭,为第n’组测试数据的第k个测试信号的方差,为噪声协方差,λk为第k个测试信号的波长,θ(n′)k为第n’组测试数据的第k个测试信号的到达角;

构造归一化测试数据协方差矩阵,将一组测试数据的协方差矩阵中上三角区域元素置于一个列向量中,得到该组测试数据对应的特征列向量,所有测试数据的特征列向量组成测试数据复数矩阵,对测试数据复数矩阵中的每个元素分别取实部和取虚部,对应得到测试数据实部矩阵和测试数据虚部矩阵,将测试数据实部矩阵和测试数据虚部矩阵按列排放,构造测试数据特征向量;利用步骤三中得到训练数据特征矩阵的各行元素的最大值、最小值对测试数据特征向量的每一行元素进行归一化,得到归一化测试数据协方差矩阵;

计算测试信号的到达角估计值:将归一化测试数据协方差矩阵的列元素作为测试输入数据,输入到步骤四训练好的神经网络中,神经网络通过前向过程计算测试信号的到达角的估计值。

更具体的,所述传感器阵列为均匀对称线性阵列。

更具体的,所述传感器阵列共有2p+1个阵元,坐标原点处设置一个阵元,在原点两侧分别对称布置p个阵元,相邻阵元之间的间距为d,d=λmin/4,λmin为入射信号的最小波长。

更具体的,步骤三中归一化处理的过程如下:根据公式对训练数据特征矩阵中每一行的每个元素进行处理,式中的r′jj(n)表示训练数据特征矩阵中第jj个行向量r′jj里的第n个元素,r″jj表示训练数据特征矩阵中第jj个行向量r′jj所有元素中的最大值,r″′jj表示训练数据特征矩阵中第jj个行向量r′jj所有元素中的最小值,jj=1,2,…,p2+3p+2。

更具体的,步骤四中,将归一化训练数据协方差矩阵的第n列元素作为训练输入数据,n=1,…,n,通过神经网络的输入层输入到第一个隐层中,并根据得到第一个隐层的输出值y1(n)output,第一个隐层的输出值y1(n)output作为第二个隐层的输入值并继续由计算得到第二个隐层的输出值y2(n)output,重复上述过程,将一个隐层的输出值作为下一个隐层的输入值不断计算,直到得到第l个隐层的输出值将第l个隐层的输出值作为输出层的输入值并根据计算神经网络最终的输出结果其中,w10为第一个隐层和输入层之间的初始权值矩阵,w20为第二个隐层和第一个隐层之间的初始权值矩阵,为第一个隐层的初始阈值矩阵,为第二个隐层的初始阈值矩阵,为输出层的初始阈值矩阵。

更具体的,将到达角估计值代入阵列接收信号导向矢量中,利用music方法对测试数据进行处理,得到与测试数据对应的music谱峰图,谱峰图中峰值对应的距离值即为测试信号的距离参数。

由于神经网络是基于训练数据构造的,具有优异的非线性映射及泛化能力,利用训练数据可以反向建立起传感器阵列训练数据和到达角之间的映射关系。本发明将神经网络应用于近场源到达角估计,在建立传感器阵列训练数据和到达角之间的映射关系时可以将训练数据中的噪声、信噪比等干扰因素考虑进去,从而改良到达角的估计性能。而且神经网络的训练过程可以离线进行,训练好的神经网络具有优异的数据处理速度,可以实现对阵列接收数据的快速处理。

附图说明

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

图1为本发明实施例传感器阵列的位置示意图;

图2为本发明方法使用的神经网络结构示意图;

图3为本发明方法的流程图;

图4为本发明方法的近场相干信号散点图;

图5为本发明方法的近场相干信号神经网络输出图;

图6为music近场非相干信号到达角估计图;

图7为music近场非相干信号距离估计图。

图8为music近场相干信号到达角估计图;

图9为music近场相干信号距离估计图。

具体实施方式

为了让本发明的上述和其它目的、特征及优点能更明显,下文特举本发明实施例,并配合所附图示,做详细说明如下。

图1为本发明传感器阵列的示意图,s为信号源,本发明的传感器阵列为均匀对称线阵,阵列共有2p+1个阵元(传感器),坐标原点(阵列中心)处设置一个阵元,在坐标原点两侧分别对称布置p个阵元,相邻阵元之间的间距为d,d=λmin/4,λmin为入射信号的最小波长。

图2为本发明方法的流程图,本发明方法的步骤如下:传感器阵列接收k个不同频率的近场、窄带、非高斯独立平稳的声源信号;

步骤一、获取训练数据;传感器阵列在[-θ0,θ0]范围内对k个训练信号做m次快拍采样,得到一组训练数据xn,然后将信号源旋转一个固定的角度δφ,传感器阵列获取下一组训练数据xn+1,直至训练信号旋转遍历[-θ0,θ0],共得到n组训练数据x1,…,xn,…,xn,n=1,…,n;为了避免神经网络的性能下降,δφ的取值不宜太大,优选为1~10°,本实施例的δφ=1°;

[-θ0,θ0]表示训练区间,0≤θ0≤90°,训练区间的范围与来波信号的范围一致,只要确保信号的到达角被[-θ0,θ0]涵盖即可;例如当有两个信号时,第一信号的到达角为-10°,第二信号的到达角为30°,则θ0大于30°即可,可令θ0=35°或令θ0=40°;传感器阵列在[-θ0,θ0]范围内相邻训练信号间隔δθk(k-1)下对k个训练信号做m次快拍采样得到一组训练数据,相邻训练信号间隔δθ(n)k(k-1)为同一组训练数据中第k个训练信号的到达角θ(n)k与第k-1个训练信号的到达角θ(n)k-1之差,即δθ(n)k(k-1)=θ(n)k-θ(n)k-1,k=1,…,k,如δθ(1)21=θ(1)2-θ(1)1为第1组训练数据中第2个训练信号的到达角θ(1)2与第1个训练信号的到达角θ(1)1之差;信号旋转时是(信号源)整体旋转,k个训练信号相对传感器阵列中各阵元的距离(r1,…,rk,…,rk)不变,且相邻训练信号间隔δθ(n)k(k-1)也不变,rk为第k个训练信号到传感器阵列中心点的距离;

步骤二、构建训练数据的协方差矩阵[r1,…,rn,…,rn];

得到n组训练数据x1,…,xn,…,xn后,将各组训练数据各自进行对消,消除信号中的距离项因子,利用对消后的数据构建训练数据的协方差矩阵,rn表示第n组训练数据的协方差矩阵,即

训练数据的协方差矩阵中各元素的值根据以下公式计算:

其中,r(n)(-p,p)表示传感器阵列中第-p个阵元的第n组训练数据和第p个阵元的第n组训练数据的协方差,x(n)-p为第-p个阵元的第n组训练数据,表示第p个阵元的第n组训练数据的转置复共轭,m为快拍采样次数,为第n组训练数据的第k个训练信号的方差,为噪声协方差,δ(·)表示狄利克雷函数,d为传感器阵列中相邻阵元之间的间距,λk为第k个训练信号的波长,θ(n)k为第n组训练数据的第k个训练信号的到达角,j为虚数单位,r(n)(-p,p)只与各训练信号的到达角θk有关,距离项rk的影响被消除;

步骤三、构建用于对神经网络进行训练的训练数据集合ω;

训练数据集合ω利用训练数据的协方差矩阵(r1,…,rn,…,rn)和训练信号的到达角构建,训练数据集合其中,为归一化训练数据协方差矩阵,θ为到达角矩阵,θ=[θ1,…,θn,…,θn],θn为第n组训练数据的k个训练信号的到达角,θn=[θ(n)1,θ(n)2,…,θ(n)k]t

归一化训练数据协方差矩阵通过以下步骤构建:

提取一组训练数据的协方差矩阵中上三角区域的元素,并将这些元素置于一个列向量中,得到该组训练数据的特征列向量,即第n组训练数据的特征列向量r′n=[r(n)(0,0),…,r(n)(-p,p),r(n)(0,0),…,r(n)(1-p,p-1),r(n)(0,0),…,r(n)(2-p,p-2),…,r(n)(0,0)]t,n组训练数据的特征列向量r′1,…,r′n,…,r′n组成训练数据复数矩阵对训练数据复数矩阵中的每个元素分别取实部和取虚部,对应得到训练数据实部矩阵r″和训练数据虚部矩阵r″′,将训练数据实部矩阵r″和训练数据虚部矩阵r″′按列排放,构造训练数据特征矩阵r′,对训练数据特征矩阵r′的每一行分别进行归一化处理,得到归一化训练数据协方差矩阵

即训练数据特征矩阵其中,是由训练数据复数矩阵中各元素的实部构成的矩阵,re(·)表示对复数取实部,是由训练数据复数矩阵中各元素的虚部构成的矩阵,im(·)表示对复数取虚部,第n组训练数据的特征列向量r′n为维矩阵,训练数据复数矩阵维矩阵,训练数据实部矩阵r″和接收数据虚部矩阵r″′均为维矩阵,训练数据特征矩阵r′为(p2+3p+2)×n维矩阵;

归一化处理时,根据公式对训练数据特征矩阵r’中每一行的每个元素进行处理,式中的r′jj(n)表示训练数据特征矩阵r’中第jj个行向量r′jj里的第n个元素,r″jj表示训练数据特征矩阵r’中第jj个行向量r′jj所有元素中的最大值,r″′jj表示训练数据特征矩阵r’中第jj个行向量r′jj所有元素中的最小值,表示对r′jj(n)进行归一化处理后得到的数据,jj=1,2,…,p2+3p+2,n=1,…,n;对训练数据特征矩阵r’所有元素按上述公式归一化后得到归一化训练数据协方差矩阵

步骤四、利用训练数据集合ω对神经网络进行训练;

神经网络的结构为机器学习方法中的常规设计,包括输入层、隐层和输出层,本发明根据训练数据集合ω构建的神经网络包含1个输入层、l个隐层及1个输出层,训练包括前向过程和反向过程;输入数据时将训练数据集合ω中归一化训练数据协方差矩阵的元素的实部和虚部以两个实数的形式输入,输入层神经元的数量h=p2+3p+2,输入层神经元的数量根据归一化训练数据协方差矩阵的维度确认,等于它的行数,输出层神经元数目等于k,隐层神经元数目可以自由调节,l个隐层各层的神经元数量分别为l1,l2,…,ll;神经网络中各层的初始权值矩阵分别为w10为第一个隐层和输入层之间的初始权值矩阵,w10是一个l1×h维的矩阵,w20是第二个隐层和第一个隐层之间的初始权值矩阵,w20是一个l2×l1维的矩阵,以此类推,是输出层和第l个隐层之间的初始权值矩阵,是一个k×ll维矩阵;神经网络各层的初始阈值矩阵分别为b10是第一个隐层的初始阈值矩阵,是一个l1×1维的矩阵,是第二个隐层的初始阈值矩阵,是一个l2×1维的矩阵,以此类推,是第l个隐层的初始阈值矩阵,是ll×1维矩阵,为输出层的初始阈值矩阵,是一个k×1维的矩阵;权值矩阵和阈值矩阵中的l=1,2,…,l+1;

前向过程:将训练数据集合ω中归一化训练数据协方差矩阵的第n列元素作为训练输入数据,n=1,…,n,通过神经网络的输入层输入到第一个隐层中,并根据得到第一个隐层的输出值y1(n)output,y1(n)output是一个l1×1维的矩阵,第一个隐层的输出值y1(n)output作为第二个隐层的输入值并继续由计算得到第二个隐层的输出值y2(n)output,y2(n)output是一个l2×1维的矩阵,重复上述过程,将一个隐层的输出值作为下一个隐层的输入值不断计算,直到得到第l个隐层的输出值是一个ll×1维的矩阵,将第l个隐层的输出值作为输出层的输入值并根据计算神经网络最终的输出结果是一个k×1维的矩阵;

后向过程:构建输出结果与对应的k个训练信号的到达角θn之间的误差矩阵errorn是一个k×1维的矩阵,根据误差矩阵errorn构造损失函数errorn(k)表示第n组训练数据的第k个信号的角度误差矩阵,k=1,2,…,k,当损失函数jn的值小于预设值则训练过程结束,如果损失函数jn的值大于预设值(预设值为经验值,根据不同情况取值,如可取0.1或0.01等),则利用误差反向传播算法计算神经网络中各层权值矩阵对应的修正值矩阵以及各层阈值矩阵对应的修正值矩阵其中,η是学习率(学习率为经验值,根据不同情况取值,如可取0.001等),wl(n-1)表示以归一化训练数据协方差矩阵的第n-1列元素作为训练输入数据修正后得到的权值矩阵,表示归一化训练数据协方差矩阵的第n-1列元素作为训练输入数据修正后得到的阈值矩阵;利用权值矩阵和阈值矩阵各自对应的修正值矩阵对原权值矩阵和原阈值矩阵进行修正,得到修正权值矩阵和修正阈值矩阵并替换原权值矩阵和原阈值矩阵,wl(n)=wl(n-1)+δwl(n)

修正后,向神经网络输入归一化训练数据协方差矩阵的下一列元素重复前向过程和反向过程,再次计算神经网络的输出结果及其对应的k个信号的到达角θn+1之间的误差矩阵errorn+1和损失函数jn+1,若损失函数jn+1的值仍大于预设值,则对神经网络再次进行修正,继续以下一组训练输入数据重复上述前向过程和后向过程,直至损失函数的值小于预设值,得到最优权值矩阵和最优阈值矩阵神经网络的训练过程完成;若归一化训练数据协方差矩阵的n组训练输入数据全部计算过一次后损失函数的值仍大于预设值,则重新从归一化训练数据协方差矩阵的第一组训练输入数据开始重复前面的计算过程,直至损失函数的值小于预设值,神经网络的训练过程完成;

步骤五、利用训练好的神经网络计算测试信号的到达角估计值:

获取测试数据:测试数据是由传感器阵列接收k个近场、窄带、非高斯独立平稳的测试信号得到的数据,传感器阵列在[-θ0,θ0]范围内对k个测试信号做m次快拍采样,得到一组测试数据xc(n′),然后将测试信号旋转同一个固定角度δφ,传感器阵列获取下一组测试数据xc(n′+1),直至测试信号旋转遍历[-θ0,θ0],共得到n’组测试数据,n’=1,…,n’;本步骤中传感器阵列同样在[-θ0,θ0]范围内相邻测试信号间隔δθ′(n′)k(k-1)下对k个测试信号做m次快拍采样得到一组测试数据,xc(n′)的测试信号间隔δθ′(n′)k(k-1)的物理意义与步骤一中的相邻训练信号间隔δθ(n)k(k-1)的物理意义相同,也是指同一组接收数据中第k个测试信号的到达角与第k-1个测试信号的到达角之差,只是两者的具体数值不同;

构建测试数据的协方差矩阵[r′c(1),…,r′c(n′),…,r′c(n′)]:第n’组测试数据xc(n′)的协方差矩阵p=0,…,p,测试数据的协方差矩阵中各元素的值根据以下公式计算:式中的x(n′)-p为第-p个阵元的第n’组测试数据,为第p个阵元的第n’组测试数据的转置复共轭,为第n’组测试数据的第k个测试信号的方差,为噪声协方差,λk’为第k个测试信号的波长,θ(n′)k为第n’组测试数据的第k个测试信号的到达角;

构造归一化测试数据协方差矩阵:将每一组测试数据的协方差矩阵中的上三角区域的元素置于一个列向量中,得到该组测试数据对应的特征列向量,即第n’组测试数据的特征列向量r′c(n′)=[rc(n′)(0,0),…,rc(n′)(-p,p),rc(n′)(0,0),…,rc(n′)(1-p,p-1),rc(n′)(0,0),…,rc(n′)(2-p,p-2),…,rc(n′)(0,0)]t,n’组测试数据的特征列向量r′c(1),…,r′c(n′),…,r′c(n′)组成测试数据复数矩阵对测试数据复数矩阵中的每个元素分别取实部和取虚部,对应得到测试数据实部矩阵r″c和测试数据虚部矩阵r″′c,将测试数据实部矩阵r″c和测试数据虚部矩阵r″′c按列排放,构造测试数据特征矩阵r′c;利用步骤三中得到训练数据特征矩阵r′的各行元素的最大值r″jj、最小值r″′jj对测试数据特征矩阵r′c的每一行元素进行归一化,得到归一化测试数据协方差矩阵归一化的步骤与步骤三中归一化的步骤相同;

计算测试信号的到达角估计值:将归一化测试数据协方差矩阵r~c的元素输入到步骤四训练好的神经网络中,神经网络通过前向过程计算测试信号的到达角的估计值,前向过程和步骤四中的前向过程相同,也是将归一化测试数据协方差矩阵的列元素作为测试输入数据,通过神经网络的输入层输入到第一个隐层中,根据得到第一个隐层的输出值,每一层的输出值都作为下一层的输入值重复计算,最后一个隐层的输出值作为输出层的输入值并由计算得到第n’组测试信号的到达角估计值

进一步的,还可以根据得到的测试信号的到达角估计值计算信号的距离参数:利用神经网络计算得到的第n’组测试信号的到达角估计值将第n’组测试信号的到达角估计值代入阵列接收信号导向矢量中,r为第k个测试信号到传感器阵列中心点的距离,利用music方法对第n’组测试数据xc(n′)进行处理,得到的第n’组测试数据对应的music谱峰图,谱峰图中峰值对应的距离值即第n’组测试信号的距离参数。

本发明的效果可以通过以下的仿真结果进一步说明:

仿真实验条件如下:

两个不同频率的近场、互不相关窄带信号入射到由13个等间隔布置的阵元构成的传感器阵列,阵列中阵元间隔d等于0.25倍的波长。训练区间为[-40°,40°],训练角度间隔为5°和7°,为了更好的测试训练好的神经网络的泛化能力,设置两个训练角度间隔,在每个间隔下分别得到对应的训练数据集合,将两个训练数据集合合并作为训练数据,测试角度间隔为6°,δφ=1°。快拍数m为100,信噪比为20db,两个非相干信号频率设为两个相干信号频率设为仿真实验采用一个包含输入层、隐层、输出层的三层神经网络,其中输入层设置56个神经元,隐层设置50个神经元,输出层设置2个神经元,学习率η设置为0.5。仿真结果如图4至图9所示,其中,图4和图5为本发明方法的仿真图,图6至图9为常规的music方法仿真图,从图6和图7可以看出,非相干信号情况下music方法能够估计到达角和距离,从图8和图9可以看出,在信号相干的情况下传统的music方法已失效,而从图4和图5可以看出,在信号相干的情况下本发明方法仍然适用,由此可知本发明方法与music方法相比,具有更广的适用场景。

以上所述,仅是本发明的较佳实施例而已,并非对本发明做任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1