一种基于深度学习和距离-多普勒序列的人体行为识别方法与流程

文档序号:18705504发布日期:2019-09-17 23:38阅读:783来源:国知局
一种基于深度学习和距离-多普勒序列的人体行为识别方法与流程

本发明属于雷达信号处理、深度学习和模式识别的交叉领域,涉及基于微多普勒雷达的人体目标检测和行为识别等相关应用。



背景技术:

雷达向被测区域发射在特定载频频率上具有一定带宽的脉冲信号或连续的电磁波信号,当被测区域存在具有一定雷达散射截面(radarcross-section)的探测目标时,电磁波信号照射到探测目标后形成回波信号,由于目标相对雷达的运动会给反射信号带来多普勒效应,因此回波信号的频率会被探测目标的运动状态所调制,从而使得回波信号中携带被测目标的运动信息。而对于非刚体运动目标(如人体),目标各个组成部分除质心平动以外的振动、转动和加速运动等微小的运动就是微动,雷达由于其感知特性对于目标的微动具有很高的灵敏性,因此可以广泛地用于人体行为的探测、识别、追踪和预测。当前,微多普勒雷达已经被广泛地应用于军事和民用场景中的各个方面,如军事探测、安保监控、反恐行动和安全任务、灾后幸存者搜救、无人驾驶汽车等等。

人体行为识别是当前模式识别领域的一个研究热点。人体行为识别通过某种特定的传感器对被测人体目标进行探测,将采集到的数据进行处理和分析,进而识别出被测目标当前正在进行的行为。通过对人体目标行为进行识别,可以支持智能家居系统以、智能安保系统和无人驾驶汽车的智能决策,具有重要的理论意义和应用前景。当前针对人体行为识别问题的研究,光学传感器是主流的研究方向,算法针对基于光学传感器采集到的时频信号进行人体行为的识别。但是光学传感器存在着种种限制条件:光学传感器依赖光照环境,无法实现夜间识别;光学传感器无法处理遮挡问题;光学传感器受雨天和雾天等外界环境因素影响较大。而相比于光学传感器,微多普勒雷达对外界环境因素不敏感,在雨天、雾天以及夜晚均可实现目标的探测;且微多普勒雷达无视目标的遮挡,可以实现穿墙探测。因此基于微多普勒信号的人体行为探测逐渐成为研究热点。

2012年,alexander等人在大型数据库imagenet的图像分类竞赛中,凭借其提出的新型卷积神经网络模型alexnet一举夺得比赛冠军头衔,并且获得准确度远超第二名的好成绩,使得深度学习卷积神经网络再次成为研究的热点,并在以后几年内的图像处理和模式识别领域中掀起了研究热潮。目前学者已经提出基于深度学习的微多普勒人体行为识别方法,但是在模型架构上大多忽略了微多普勒信号的特性和时序特点,因此存在一些弊端。

[1]sundermeyerm,schlüterr,neyh.lstmneuralnetworksforlanguagemodeling[c]//thirteenthannualconferenceoftheinternationalspeechcommunicationassociation.2012.

[2]huangg,liuz,vandermaatenl,etal.denselyconnectedconvolutionalnetworks[c]//proceedingsoftheieeeconferenceoncomputervisionandpatternrecognition.2017:4700-4708.

[3]chenvc,lif,hoss,etal.micro-dopplereffectinradar:phenomenon,model,andsimulationstudy[j].ieeetransactionsonaerospaceandelectronicsystems,2006,42(1):2-21.

[4]kimy,moont.humandetectionandactivityclassificationbasedonmicro-dopplersignaturesusingdeepconvolutionalneuralnetworks[j].ieeegeoscienceandremotesensingletters,2016,13(1):8-12.



技术实现要素:

本发明的目的是提供一种使用卷积神经网络和循环神经网络两种网络进行融合对微多普勒信号进行建模,利用深度学习的自动学习特征的能力实现人体行为的识别的方法。技术方案如下:

一种基于深度学习和距离-多普勒序列的人体行为识别方法,包括下列步骤:

(1)雷达数据集的构建:采用超宽带uwb脉冲多普勒雷达模块进行人体行为信号的采集。在雷达模块上搭载两枚定向天线进行信号的增益和定向采集;将采用到的信号进行时序的距离-多普勒处理,生成距离-多普勒序列,每一组距离-多普勒序列作为一个单独的数据,并为每一个距离-多普勒数据打上标签,构建训练集和测试集。

(2)卷积神经网络模型对距离-多普勒谱图进行建模:在卷积神经网络中的第一层引入多尺度卷积层,通过1×1、3×3、5×5和7×7四种尺度卷积核的卷积层实现在不同感受野内的感知,在每种尺寸的卷积层后连接线性整流函数relu,并在不同尺度的卷积层中加入适当的边缘像素填充以保持输出特征图尺寸一致;多尺度卷积层之后连接常规卷积层和池化层进行下采样;在网络的深层对高级语义特征处理过程中,通过构建密集连接的卷积神经网络单元提高高级语义特征的利用率,通过3×3和1×1的小尺度卷积层进行堆叠并将中间层进的特征进行密集地跨层连接实现,配置归一化层避免梯度消失,并且设计卷积层以削减输出特征图的数量,通过对卷积神经网络每层进行调参和部署,使得卷积神经网络的结构达到最优。

(3)循环神经网络的构建:利用距离-多普勒序列的时序特性,将卷积神经网络提取的距离-多普勒特征按照时间顺序组织成连续的特征序列,然后搭建循环神经网络对其进行时序建模和分析;引入循环神经网络的变体:门控循环单元,构建一个密集连接的双向门控循环单元,对特征序列正反两种顺序进行建模,从而最大化利用上下文信息;并且在门控循环单元中构建密集连接结构,实现网络的纵向压缩和横向扩展;最后将卷积神经网络和构建好的循环神经网络进行级联,搭建端到端的深度学习网络架构,通过递归运算实现人体行为的识别。

(4)端到端人体行为识别网络的训练:将构建好的实测数据集进行裁剪、放缩进行预处理然后在深度学习框架pytorch中转换为张量,利用pytorch搭建出所设计的卷积神经网络和循环神经网络,并将两者进行级联;对于训练集中的距离-多普勒序列,每次随机选取一批序列输入到端到端的神经网络中进行训练,将所有训练数据按批次输入到网络进行一次训练定义为一个epoch,训练过程利用自适应矩估计优化器adam实现最优化计算,利用反向传播算法bp进行梯度回传,从而对端到端网络中的权重进行训练迭代。损失函数选取互熵损失函数从而实现利用softmax分类器对数据进行人体行为的分类。

附图说明

图1rd帧序列示意图(跑步)

图2卷积神经网络结构

图3密集连接单元结构示意图

图4gru内部运算示意图

具体实施方式

本发明利用信号处理算法将采集到的微多普勒人体行为信号进行距离-多普勒(range-doppler,rd)处理,生成距离-多普勒帧序列(range-dopplersequence),即rd序列。利用卷积神经网络和循环神经网络的变体门控循环单元两种网络进行融合,对微多普勒信号进行特征提取和时序建模,实现人体行为识别。为了对本发明进行更清楚的进一步阐述,将对发明的每个实施步骤进行详细描述:

1.雷达数据集的构建

本发明利用timedomain公司研制的pulson440(p440)超宽带脉冲多普勒雷达模块用于实测人体行为数据的采集。在超宽带雷达的接收端搭载两枚定向天线,雷达的中心频率为4.3ghz,带宽为1.7ghz,有效频率为3.1-4.8ghz。雷达的脉冲采样为16.39ghz,脉冲重复频率(pulserepetitionfrequency,prf)为368hz。在数据采集过程中选取四位不同的受试者作为被测目标,每位受试者在距离雷达1米到5米的径向范围内进行运动,共演示七种人体行为:跑步、行走、跳跃、拳击、踱步、爬行、站立。每位受试者针对每种行为演示2到4次,最终获得73组采集。

将采集到的数据矩阵进行进一步处理,对每段信号减去自身的均值,实现平均背景杂波抑制,对每一段长信号按照时长为1秒的慢时间窗口进行基于滑动窗口的截取,截取出来的每一段信号时长即为1秒。将信号进行距离-多普勒处理后生成rd序列,然后对序列进行10帧/秒采样率进行采样,最终对于每段1秒的信号生成10帧连续的rd序列。每一帧的rd谱图处理为120×120大小的三通道彩色图像,横轴为多普勒维,纵轴为距离维,如图1所示。将生成的rd序列进行随机挑选,每种动作随机挑选出1000张谱图,即100个1秒的rd序列,构成测试集;挑选同样每种动作100个rd序列构建成测试集。

2.卷积神经网络的构建

构建基于密集连接单元的多尺度卷积神经网络,主要用于在端到端的深度学习网络中的浅层阶段,对每一帧rd谱图进行人体行为语义表示和rd特征提取,将每一帧rd谱图影射为一个包含人体目标行为信息的高维特征。卷积神经网络的结构如图2所示。

卷积神经网络的输入是120×120尺寸的三通道rd谱图,卷积层的第一层是一个多尺度卷积层。多尺度卷积层中包含四种卷积核,分别是尺寸为1×1、3×3、5×5和7×7。每种卷积的步长都为1,且分别进行尺寸为0、1、2、3的边缘像素填充(padding)。每种卷积的输出特征图的数量为16。每种尺度卷积操作之后连接一个线性整流函数(rectifiedlinearunit,relu),增加网络的非线性拟合能力。relu函数如公示(1)。

每种尺度的卷积和relu之后输出的特征图的数量相同,尺寸一致。之后将输出的所有特征图在通道维度上进行串联,作为多尺度卷积层的输出。多尺度卷积层的输出同时包含了多种尺寸感受野内的感知,可以同时提取局部细节特征和大尺度纹理特征,提升了卷积神经网络的特征表示能力。

多尺度卷积层之后连接一个3×3的最大池化层,对特征图进行下采样和降维。之后连接两个卷积核尺寸为3×3,卷积步长为1,边缘填充为1的卷积层,用作浅层特征的表示学习。两层卷积层之后都连接relu和批归一化(batchnormalization,bn)。bn通过对每批输入的数据或特征进行归一化从而加快收敛速度,避免梯度消失问题。两层卷积层之后连接一个2×2的最大池化层,完成浅层特征的提取。对于深层特征的处理,本发明设计基于密集连接卷积神经网络的结构对包含高级语义信息的深层rd特征进行处理。密集连接单元(denseblock,db)的结构如图3所示。密集连接单元的瓶颈(bottleneck)是卷积核尺寸为1×1的卷积层,bottleneck之后连接一个卷积核为3×3的卷积层。每个3×3的卷积层之后加入bn和relu,可以提高网络的非线性拟合能力,防止梯度爆炸和梯度消失,促进网络收敛。在db的运算过程中特征图的尺寸保持不变,并且每批3×3卷积层输出的特征图都要与之前的特征进行通道维度上的级联,实现密集连接。密集连接可以有效压缩网络层深,促进网络的信息流,并且可以大幅提升特征的利用率。网络连接两个db之后连接一个1×1的卷积层和2×2的最大池化层,削减特征图的数量和尺寸。之后网络再连接一个db和全连接层,输出对每一帧rd谱图的特征表示。

3.循环神经网络的构建

循环神经网络(recurrentneuralnetwork,rnn)是一类人工神经网络,循环神经网络的最大特点是以数据按照序列顺序进行输入,网络中运算单元按照序列数据的方向进行递归,网络中的神经元按照链式连接的规则形成一个闭合回路,实现序列的循环递归运算。循环神经网络每层神经元每一时刻的输出状态由两部分决定,分别是本时刻的输入和上一时刻的神经元状态。以序列维度展开的结构有助于处理具有较强世间序列性的信息,这种优势是卷积神经网络并不具备的。

门控循环单元(gatedrecurrentunit,gru)是rnn的一种新型变体,gru内部将rnn中的遗忘门和输入门进行简化合并为更新门,同时对内部信息的传递进行改动,混合了cell状态和隐藏状态、gru的结构和前向传播过程。

gru的结构如图4所示,其中σ是gru中的门控单元,h是gru中的隐藏状态,随着序列数据中每一个时刻的迭代的输入而更新,进一步又影响网络的输出。w分别是不同参数的权重,随着网络的迭代而更新。gru中的递归运算主要由更新门和重置门实现,更新门被用于调控上一个时刻的隐藏状态信息对本时刻状态的影响程度,更新门的数值越大代表上一时刻的隐藏状态对本时刻迭代的影响越大。重置门用于调控对上一时刻的隐藏状态的遗忘程度。gru内部的递归计算如公式所示:

zt=σ(wz·[ht-1,xt])(2)

rt=σ(wr·[ht-1,xt])(3)

其中zt和rt分别为t时刻的更新门和重置门,xt为t时刻gru的输入向量ht为t时刻gru内部的隐藏状态。

本发明拟采用密集连接的双向gru对时序的rd帧特征进行识别。在双向gru中数据的输入并非仅仅按照序列的固有顺序进行输入,还将序列完全颠倒次序,从结束到开始进行一次递归计算。双向gru在运算上本质是将一个序列按照正向顺序和逆向顺序分别进行递归运算,然后在网络中的每一层都对两种顺序递归运算的结果进行拼接输出。在大多数时序信号中,某一时刻先前的信号与当前时刻的信号有着很强的关联,同样某一时刻之后的信号也会与当前时刻保持很强的关联。同时将三层的双向gru中每一层的输入不仅是上一层的输出,同时还有之前所有gru层的输出向量,利用密集连接的结构实现网络的纵向压缩。双向gru通过对正向和逆向两种顺序对序列数据进行建模,充分提取了各时刻数据的上下文信息,大大提高了时序模型的性能。

双向gru之后将所有时刻的输出特征进行均值计算,输出一个高维向量,然后向量输入到一个全连接层内通过softmax实现人体行为的分类输出。其中隐层单元的维度设为512维,输入层的隐藏层节点数为1024。

4.端到端人体行为识别网络的训练

整个网络中卷积神经网络和循环神经网络两部分进行串联的连接,形成一个人体行为识别的端到端网络。网络的输入是距离-多普勒序列,输出是对序列进行人体行为分类的7维向量,实现端到端的智能分类。距离多普勒序列的每一帧都经过卷积神经网络进行距离-多普勒特征提取,处理每一帧的卷积神经网络权值共享。每一帧从卷积神经网络提取出一个包含人体行为信息的高级语义特征向量,将一个距离-多普勒序列提取出来的所有特征向量按照时序进行整合,输入到循环神经网络中进行时序迭代分析,进而实现人体行为的分类。网络的损失函数利用softmax的互熵损失函数。

整个网络的实现和数据的预处理通过深度学习框架pytorch实现。网络的训练方式采用自适应矩估计(adaptivemomentestimation,adam)算法动态调整参数更新步长,通过对梯度的一阶矩估计和二阶矩估计实现网络的动态收敛。adam的矩估计公式如下:

nt=μ*mt-1+(1-μ)*gt(6)

其中mt和nt是对回传梯度的一阶矩估计和二阶矩估计;是分别对一阶矩估计和二阶矩估计的矫正。实验所依赖的环境系统为linuxubuntu14.04操作系统,基于cuda和cudnn的gpu加速,利用nvidia公司的gtx1080tigpu和intel公司的e31231-v3cpu进行网络的训练。

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