基于结构嵌入和深度神经网络的雷达HRRP识别方法与流程

文档序号:16661201发布日期:2019-01-18 22:58阅读:387来源:国知局
基于结构嵌入和深度神经网络的雷达HRRP识别方法与流程

本发明属于雷达目标识别领域,具体的讲,涉及一种基于高分辨距离像结构嵌入特征和深度神经网络的雷达高分辨距离像识别方法。



背景技术:

雷达高分辨距离像(hrrp)是用宽带雷达信号获取的目标散射点子回波在雷达视线方向投影的矢量和,它包含了目标的尺寸和散射点分布等重要结构信息,并且易于获取和快速处理。如今已经成为了雷达自动目标识别(ratr)领域的一个重要的研究方向,因此利用hrrp进行目标识别已经成为当前研究的热点。针对雷达hrrp识别的一些经典的模型如基于hrrp的一阶统计特性的模板匹配分类器(mcc-tmm)和基于融合一阶和二阶hrrp特性的自适应高斯分类器(agc),基于主成分分析(pca)子空间投影模型等都是将hrrp样本作为一个整体来考虑的,未考虑到样本内部结构的相关性。鉴于这一特性,后来又发展出了基于hrrp样本内部结构特性的隐马尔可夫模型(hmm)和基于注意力机制的循环神经网络模型,它们均利用了hrrp背后所隐含的固定空间结构特性来进行识别。目前已有不少文献应用基于hrrp样本内部结构特性的方法对雷达hrrp的时域特征以及雷达整体hrrp序列进行实验,并且取得了很好的识别效果,然而在实际应用中,还存在以下几个主要的问题:(1)hmm在模型的建立过程中,假设信号符合一阶马尔可夫性,即当前时间点上的信号仅和前一个时间点信号相关,应用该方法对雷达hrrp的时域特征、谱图特征识别时,雷达hrrp特征的当前局部特征结构仅依赖于上一个局部特征结构,未能进一步发掘样本各局部特征结构之间隐含的整体物理结构相关性,尚存在很大改进空间;(2)基于注意力机制的循环神经网络模型为单向的循环神经网络模型,只能朝着一个方向建立依赖性,未能很好的利用hrrp整体的结构信息;(3)基于注意力机制的循环神经网络模型中所采用的循环神经网络过于简单,未使用长短时记忆(lstm)单元,其循环神经网络的输出会过度的依赖于局部的结构,而很难顾全全局性的信息。由于这些问题的存在,大大限制了它们在实际工程中的应用,因此解决以上存在的问题在实际工程应用中是十分有意义的。



技术实现要素:

本发明针对上述提到的应用hmm模型和基于注意力机制的循环神经网络模型进行雷达hrrp目标识别中存在的几点不足,提出了一种基于高分辨距离像结构嵌入特征与深度神经网络的雷达高分辨距离像目别方法,首先提取数据的时域特征并对提取出的时域特征进行切分和非均匀量化编码得到其局部结构的编码,然后利用局部结构和其周围数个局部结构的关系得到其编码之间的共现矩阵,进而通过该共现矩阵得到数据的结构嵌入特征,然后再将提取出的嵌入特征送入由全连接层和基于lstm的双向循环神经网络构成的深度神经网络进行训练,最后利用softmax层对hrrp进行识别并得到识别结果。

为实现上述目的,本发明的技术方案为一种基于结构嵌入和深度神经网络的雷达hrrp识别方法,包括以下步骤;

s1:采集数据集,将q个雷达采集到的hrrp数据集依据目标的种类进行合并,每种种类的数据分别在不同数据段里选择训练样本和测试样本,在训练集和测试集样本的选取过程中,保证所选取训练集的数据与雷达所成姿态涵盖测试数据集与雷达所成的姿态。

s2:对经过s1所挑选数据集中的每一个样本使用补偿对齐法进行对齐,得到对齐后的数据;

s3:对s2处理后的每一个样本进行能量归一化处理,得到归一化后的数据;

s4:对经过s3处理后的雷达训练目标数据,提取时域特征作为识别特征,并用于训练;

s5:循环切分经过处理后的数据集,设定切分的向量长度为p,使p为2的幂级数,如4;之后对数据集内的每一个hrrp样本,将其移位p-1次并进行连接;

s6:提取样本的嵌入表示特征,将每一个经过s5处理后的hrrp样本按10级进行非均匀量化;设定窗口值,初始化一个空矩阵,并依次统计量化向量在窗长度下共现的次数,对矩阵中的对应元素赋值;最后对矩阵中的每个元素限制其动态范围,根据共现矩阵得到hrrp训练样本的结构嵌入特征;

s7:构建深度神经网络模型,并利用hrrp训练样本的结构嵌入特征训练该模型。该深度神经网络模型由三部分组成:首先是一个全连接网络层,用于嵌入特征降维,然后将降维后的数据输入至基于lstm(长短时记忆网络)的双向循环神经网络,最后采用softmax层对双向循环神经网络的输出进行识别;

测试阶段:

s8:对由s1采集到的测试数据进行训练阶段的步骤s2、s3、s4、s5和s6操作;

s9:将经过s8所提取的嵌入表示特征送入s7构建的深度神经网络得到测试样本所对应的目标。

进一步的,步骤s1中各类目标训练集和测试集样本数的比例为8:2,将挑选的数据集记作其中xi表示第i个样本,yk表示第k种目标,一共采集了5种目标,i0表示样本总数。

进一步的,步骤s2具体操作步骤如下:

s2.1:由s1所选的数据集t中的每个样本皆为256维度,原始数据样本表示为:xi=[x1,x2,...,x256];

s2.2:将三个原始样本按照横向粘贴在一起构成一个256×3新样本数据样本,表示为x′i=abs([xi,xi,xi])=[x′1,x′2,…,x′768],其中abs(·)为对其中每个元素的值取绝对值;

s2.3:构建一个256维的序列l=[l1,l2,…,l256],其中li=exp(-k|i-128.5|),k表示控制因子,k>0,|·|表示求绝对值操作;

s2.4:求得到d之后,从x'中取出第d+1到第d+256个连续的点作为对齐后的数据x”=[x'd+1,x'd+2,…,x'd+256];

s2.5:将t数据集中的每一个样本重复步骤s2.2、s2.3以及s2.4操作得到对齐后的样本数据,记为t1。

进一步的,步骤s3中,归一化公式如下:

其中||·||2表示求2范数。

进一步的,步骤s4中,从x″′i内提取每一帧的时域特征作为识别特征,记作其中x(c)表示的是第c个目标的训练样本的时域特征集,其中提取时域特征之后的第i个样本记作c为目标总数.

进一步的,步骤s5具体操作步骤如下:

s5.1:其中i指示第i个目标,k指示的是第k个hrrp;

s5.2:设定切分的向量的长度为p,使得为p为2的幂级数;

s5.3:对数据集内的每一个样本,将其移位p-1次并进行连接,

进一步的,步骤s6具体操作步骤如下:

s6.1:对经过s5处理后的每一个按10级进行非均匀量化,得到其量化编码特征其中对于每个元素:

若y<e-3.6,则量化为0

若e-3.6≤y<e-3.2,则量化为1

若e-3.2≤y<e-2.8,则量化为2

若e-2.8≤y<e-2.4,则量化为3

若e-2.4≤y<e-2.0,则量化为4

若e-2.0≤y<e-1.6,则量化为5

若e-1.6≤y<e-1.2,则量化为6

若e-1.2≤y<e-0.8,则量化为7

若e-0.8≤y<e-0.4,则量化为8

若e-0.4≤y<e0,则量化为9

s6.2:设定窗口值k,计算向量与向量之间共同出现的矩阵;

s6.3:首先初始化一个空矩阵,记作v={vij}i=0,1…9999,j=0,1…9999,即初始化的空矩阵有10000行和10000列,其中0000代表取出来的列向量[yi,yi+1,yi+2,yi+3]t的量化编码为[0,0,0,0]t,其余的也是一样,矩阵中的每一个元素vij为量化编码i和量化编码j之间的共现次数;

s6.4:依次统计列向量之间在窗长度下共现的次数,如若窗k=3(为保证左右对称,k一般取奇数),则当循环至向量的时候,统计其左侧和其右侧不同向量共同出现的次数,我们遍历所有的量化编码特征,将不同量化编码特征共同出现的总次数对应地记录在空矩阵v中,其中vij为量化编码特征与量化编码特征共同出现的次数,其中i1、i2、i3和i4分别代表i的千位、百位、十位以及个位数字,j1、j2、j3和j4分别代表j的千位、百位、十位以及个位数字;

s6.4:对矩阵v中的每个元素限制其动态范围,公式如下:v′ij=10ln(1+vij),并将更新后的矩阵记作v'={v″′ij};

s6.5:根据循环切分的结果去v'中查找所对应的嵌入表示,如中的第m列为[0,1,3,8]t,即v'中行标号为第0138所对应的行向量即为该列的嵌入表示,该嵌入表示为10000×1维的,依次查找中每一列所对应的嵌入表示并记录,遍历中所有列之后即可得到的嵌入表示矩阵a,其中a=[a1(10000×1),a2(10000×1),…,a256(10000×1)],其中ai(10000×1)代表第i列所对应的嵌入表示,ai为10000×1维的向量。

进一步的,步骤s7具体操作步骤如下:

s7.1:构建一层全连接神经网络,设置第一层(输入层)神经元数目为10000,第二层(输出层)神经元数目为300,将经过步骤s6.5处理后的a按列切分依次送入全连接神经网络,得到输出

z=[z1=f(wija1+b),z2=f(wija2+b),…,z256=f(wija256+b)],其中zi代表第i个输出,为300×1维的,wij代表输入层第i个神经元到输出层第j个神经元的权重,b代表输入层神经元到输出层神经元的偏置,所有的神经元共享偏置;

s7.2:构建基于lstm(长短时记忆网络)的双向循环神经网络,具体操作步骤如下:

s7.2.1:双向循环神经网络为两个单向其方向相反的循环神经网络(前向网络和反向网络)的结合,在每一个时刻t,网络的输出由这两个方向相反的单向循环神经网络共同决定,设置n_in=256,n_step=300,n_nums=128,n_cls=5,其中n_in=256基于lstm的双向循环神经网络的输入层神经元数目,n_step=300代表每一个神经元的输入向量,为一个300×1的向量,n_nums=128代表lstm隐藏层神经元的数目,n_cls=5代表输出层神经元数目,即代表所挑选的目标类别数目为5类;

s7.2.2:对双向循环神经网络的权重和偏置进行初始化,输入层和隐层之间的权重记为w1,其维度为shape1=(n_in,n_nums),隐层和输出层之间的权重记为w2,其维度为shape2=(n_nums,n_cls),权重初始化采用服从均值为0,方差为1的高斯分布,输入层和隐层之间的偏置记为bias1,其维度为shape3=(n_nums),隐层和输出层之间的偏置记为bias2,其维度为shape4=(n_cls),均初始化为常量1,双向的初始状态皆记为state=0,前向循环神经网络的所有时刻共享前向的权重,偏置和初始,反向也是如此;

s7.2.3:由s7.1可知,全连接神经网络的输出z作为循环神经网络的输入,则循环神经网络第一层的输出为x1_out=tanh(z×w1+bias1),同时作为隐层的输入,其中tanh(·)是激活函数,根据tensorflow中的计算公式

lstm_fw_cell=tf.contrib.rnn.basiclstmcell(n_nums,forget_bias=1.0)

lstm_bw_cell=tf.contrib.rnn.basiclstmcell(n_nums,forget_bias=1.0)

output,_,_=tf.contrib.rnn.static_bidirectional_rnn(lstm_fw_cell,lstm_bw_cell,x1_out)

其中,lstm_fw_cell代表前向的循环神经网络,lstm_bw_cell代表反向循环神经网络,forget_bias=1.0代表lstm不会忘记任何信息,output,_,_分别代表x1_out经过隐层后的输出,前向循环神经网络和反向循环神经网络被更新后的状态,取出序列中的最后一个x2_out=output[-1]作为输出层的输入,x3=tanh(x2_out×w2+bias2),为双向循环神经网络每一个时刻256个输出的组合,256个输出中每一个序列的维度是n_cls,x3={x31,x32,x33,x34,x35};

s7.3:构建softmax层,将x3作为softmax分类器的输入特征,进行分类,由s1可知雷达hrrp样本来自5个不同的目标,训练得到softmax回归模型的参数集θ之后,雷达hrrp样本的特征x3对应于第i个目标的概率值p(i|x3)定义为:

其中,i表示目标的标号,i=1,2,…,5,5为总目标数,θi表示对应于目标i的参数,表示归一化向量,使雷达hrrp样本对应于所有目标模型的概率和为1。

本发明的有益效果是:

1、本发明加入了基于lstm的双向循环神经网络,该网络不仅可以较好的从两个方向上利用hrrp样本所蕴含的局部物理结构信息的依赖关系,并且基于lstm结构的循环神经网络较原始神经网络可更好的存储和利用全局结构信息。

2、现有技术仅利用了hrrp中的一阶马尔可夫性,它只注重于当前距离单元和之前距离单元的局部结构关系而忽略了各距离单元之间整体所存在的物理关系,在本发明中,通过对hrrp的局部结构提取其嵌入式特征表示可以更好地反映该局部结构之间存在的关联。

3、本发明所采用的双向循环神经网络方法可以朝着两个方向建立局部机构的依赖关系,相比单向循环神经网络可以更好地利用hrrp整体的结构信息。

附图说明

图1:基于高分辨距离像结构嵌入特征与深度神经网络的雷达高分辨距离像识别方法的步骤流程图。

具体实施方式

参照图1,为本发明的一种基于高分辨距离像结构嵌入特征与深度神经网络的雷达高分辨距离像识别技术流程图,具体实施步骤如下:

s1:采集数据集,将q个雷达采集到的hrrp数据集依据目标的种类进行合并,每种种类的数据分别在不同的数据段里选择训练样本和测试样本,在训练集和测试集样本的选取过程中,保证所选取的训练集的数据与雷达所成姿态涵盖测试数据集与雷达所成的姿态。各类目标训练集和测试集样本数的比例为8:2,将挑选的数据集记作其中xi表示第i个样本,yk表示第k种目标,一共采集了5种目标,i0表示样本总数。

s2:对经过s1所提取数据集中的每一个样本做对齐预处理,具体操作步骤如下:

s2.1:由s1所选的数据集t中的每个样本皆为256维度,原始数据样本表示为:xi=[x1,x2,...,x256]

s2.2:将三个原始样本按照横向粘贴在一起构成一个256×3新样本数据样本,表示为x′i=abs([xi,xi,xi])=[x′1,x'2,…,x'768],其中abs(·)为对其中每个元素的值取绝对值;

s2.3:构建一个256维的序列l=[l1,l2,…,l256],其中li=exp(-k|i-128.5|),k表示控制因子,k>0,|·|表示求绝对值操作;

s2.4:求得到d之后,从x'中取出第d+1到第d+256个连续的点作为对齐后的数据x”=[x'd+1,x'd+2,…,x'd+256];

s2.5:将t数据集中的每一个样本重复步骤s3.2、s3.3以及s3.4操作得到对齐后的样本数据,记为t1;

s3:对t1中的每一个样本进行能量归一化,得到归一化后的数据,归一化公式如下:

其中||·||2表示求2范数;

s4:对经过s3处理后的雷达训练目标数据,从xi”'内提取每一帧的时域特征作为识别特征,记作其中x(c)表示的是第c个目标的训练样本的时域特征集,其中提取时域特征之后的第i个样本记作c为目标总数;

s5:循环切分经过处理后的数据集,具体操作步骤如下:

s5.1:其中i指示第i个目标,k指示的是第k个hrrp;

s5.2:设定切分的向量的长度为p,使得为p为2的幂级数,如4;

s5.3:对数据集内的每一个样本,将其移位p-1次并进行连接,

举例说明切分:

切分:切分后的数据集可以表示为

s6:提取样本的嵌入表示特征,具体操作步骤如下:

s6.1:对经过s5处理后的每一个按10级进行非均匀量化,得到其量化编码特征其中对于每个元素:

若y<e-3.6,则量化为0

若e-3.6≤y<e-3.2,则量化为1

若e-3.2≤y<e-2.8,则量化为2

若e-2.8≤y<e-2.4,则量化为3

若e-2.4≤y<e-2.0,则量化为4

若e-2.0≤y<e-1.6,则量化为5

若e-1.6≤y<e-1.2,则量化为6

若e-1.2≤y<e-0.8,则量化为7

若e-0.8≤y<e-0.4,则量化为8

若e-0.4≤y<e0,则量化为9

s6.2:设定窗口值k,计算向量与向量之间共同出现的矩阵;

s6.3:首先初始化一个空矩阵,记作v={vij}i=0,1…9999,j=0,1…9999,即初始化的空矩阵有10000行和10000列,其中0000代表取出来的列向量[yi,yi+1,yi+2,yi+3]t的量化编码为[0,0,0,0]t,其余的也是一样,矩阵中的每一个元素vij为量化编码i和量化编码j之间的共现次数;

s6.4:依次统计列向量之间在窗长度下共现的次数,如若窗k=3(为保证左右对称,k一般取奇数),则当循环至向量的时候,统计其左侧和其右侧不同向量共同出现的次数,我们遍历所有的量化编码特征,将不同量化编码特征共同出现的总次数对应地记录在空矩阵v中,其中vij为量化编码特征与量化编码特征共同出现的次数,其中i1、i2、i3和i4分别代表i的千位、百位、十位以及个位数字,j1、j2、j3和j4分别代表j的千位、百位、十位以及个位数字;

s6.4:对矩阵v中的每个元素限制其动态范围,公式如下:v′ij=10ln(1+vij),并将更新后的矩阵记作v'={v′ij};

s6.5:根据循环切分的结果去v'中查找所对应的嵌入表示,如中的第m列为[0,1,3,8]t,即v'中行标号为第0138所对应的行向量即为该列的嵌入表示,该嵌入表示为10000×1维的,依次查找中每一列所对应的嵌入表示并记录,遍历中所有列之后即可得到的嵌入表示矩阵a,其中a=[a1(10000×1),a2(10000×1),…,a256(10000×1)],其中ai(10000×1)代表第i列所对应的嵌入表示,ai为10000×1维的向量;

s7:构建深度神经网络,该深度神经网络由三部分组成:首先是一个全连接网络层用于嵌入特征降维,然后降维后的数据输入至基于lstm(的双向循环神经网络,最后采用softmax层对双向循环神经网络的输出进行识别,具体操作步骤如下:

s7.1:构建一层全连接神经网络,设置第一层(输入层)神经元数目为10000,第二层(输出层)神经元数目为300,将经过步骤s6.5处理后的a按列切分依次送入全连接神经网络,得到输出

z=[z1=f(wija1+b),z2=f(wija2+b),…,z256=f(wija256+b)],其中zi代表第i个输出,为300×1维的,wij代表输入层第i个神经元到输出层第j个神经元的权重,b代表输入层神经元到输出层神经元的偏置,所有的神经元共享偏置;

s7.2:构建基于lstm(长短时记忆网络)的双向循环神经网络,具体操作步骤如下:

s7.2.1:双向循环神经网络为两个单向其方向相反的循环神经网络(前向网络和反向网络)的结合,在每一个时刻t,网络的输出由这两个方向相反的单向循环神经网络共同决定,设置n_in=256,n_step=300,n_nums=128,n_cls=5,其中n_in=256基于lstm的双向循环神经网络的输入层神经元数目,n_step=300代表每一个神经元的输入向量,为一个300×1的向量,n_nums=128代表lstm隐藏层神经元的数目,n_cls=5代表输出层神经元数目,即代表所挑选的目标类别数目为5类;

s7.2.2:对双向循环神经网络的权重和偏置进行初始化,输入层和隐层之间的权重记为w1,其维度为shape1=(n_in,n_nums),隐层和输出层之间的权重记为w2,其维度为shape2=(n_nums,n_cls),权重初始化采用服从均值为0,方差为1的高斯分布,输入层和隐层之间的偏置记为bias1,其维度为shape3=(n_nums),隐层和输出层之间的偏置记为bias2,其维度为shape4=(n_cls),均初始化为常量1,双向的初始状态皆记为state=0,前向循环神经网络的所有时刻共享前向的权重,偏置和初始,反向也是如此;

s7.2.3:由s7.1可知,全连接神经网络的输出z作为循环神经网络的输入,则循环神经网络第一层的输出为x1_out=tanh(z×w1+bias1),同时作为隐层的输入,其中tanh(·)是激活函数,根据tensorflow中的计算公式

lstm_fw_cell=tf.contrib.rnn.basiclstmcell(n_nums,forget_bias=1.0)

lstm_bw_cell=tf.contrib.rnn.basiclstmcell(n_nums,forget_bias=1.0)

output,_,_=tf.contrib.rnn.static_bidirectional_rnn(lstm_fw_cell,lstm_bw_cell,x1_out)

其中,lstm_fw_cell代表前向的循环神经网络,lstm_bw_cell代表反向循环神经网络,forget_bias=1.0代表lstm不会忘记任何信息,output,_,_分别代表x1_out经过隐层后的输出,前向循环神经网络和反向循环神经网络被更新后的状态,取出序列中的最后一个x2_out=output[-1]作为输出层的输入,x3=tanh(x2_out×w2+bias2),为双向循环神经网络每一个时刻256个输出的组合,256个输出中每一个序列的维度是n_cls,x3={x31,x32,x33,x34,x35};

s7.3:构建softmax层,将x3作为softmax分类器的输入特征,进行分类,由s1可知雷达hrrp样本来自5个不同的目标,训练得到softmax回归模型的参数集θ之后,雷达hrrp样本的特征x3对应于第i个目标的概率值p(i|x3)定义为:

其中,i表示目标的标号,i=1,2,…,5,5为总目标数,θi表示对应于目标i的参数,表示归一化向量,使雷达hrrp样本对应于所有目标模型的概率和为1;

测试阶段:

s8:对由s1采集到的测试数据进行训练阶段的步骤s3、s4、s5、s6和s7操作;

s9:将经过s8所提取的嵌入表示特征送入s7构建的基于深度神经网络的模型进行测试求得最后的结果,并通过最大后验概率来对样本进行判决,将测试样本分类到最大目标条件似然值所对应的目标

其中e代表模型判断x3属于5个类别分别会有一个对应的概率,从判断的5个概率中挑选最大概率所属的类别赋给e,即为所判定的雷达目标。

经过上述9个步骤,即可得到本发明所提出的一种基于高分辨距离像结构嵌入与深度神经网络的雷达高分辨距离像识别模型。

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