【技术实现步骤摘要】
一种基于脉冲神经网络的安全帽佩戴检测方法
[0001]本专利技术涉及计算机视觉和深度学习领域,特别是一种基于脉冲神经网络的安全帽佩戴检测方法。
技术介绍
[0002]在工地实际施工的过程中,安全帽事故发生往往是工人没有正确佩戴安全帽从而导致了事故的发生,发生的每一起安全事故都是对整个社会的一个警醒。正确佩戴安全帽是生产安全重要的一环,从而准确高效的安全帽检测则是帮助施工单位降低事故率的保障。随着计算机目标检测技术的发展,为实现安全帽佩戴检测带来新思路,现在大多数计算机视觉的方法是基于卷积神经网络的,虽然卷积神经网络的安全帽佩戴检测方法可以达到比较高的检测精度,但是其能耗过高是一个严重的缺点。
[0003]随着类脑研究的逐渐深入,具有仿生学特性的脉冲神经网络受到越来越多的关注,其由离散脉冲时间序列作为输入/输出的神经元模型构成,模拟了实际生物神经网络中的独特机制。脉冲神经网络实现了对输入信息的高效处理,其也具有信息高效处理的强大潜力,且相比于人工神经网络,脉冲神经网路具有事件驱动和低功耗的特性。但由于脉冲神经网络中脉冲不可微的特殊性,训练脉冲神经网络也是一个难题。目前一个方法是训练DNN,然后将训练好的权值迁移到网络结构相似的SNN上面,这种方法能够避免直接训练SNN的困难,但在DNN到SNN转换的过程中有比较大的精度损失,并且需要较高的时间步长。
技术实现思路
[0004]本专利技术的目的在于提供一种基于脉冲神经网络的安全帽佩戴检测方法,以实现低时间步长,低误差,低精度损失的高性能DNN到Sp ...
【技术保护点】
【技术特征摘要】
1.一种基于脉冲神经网络的安全帽佩戴检测方法,其特征在于,包括以下步骤:步骤S1、以YOLOv3
‑
tiny网络模型为基础,对网络模型进行改造,获得用于训练的DNN网络模型;步骤S2、获取含有佩戴安全帽人物样本和未佩戴安全帽人物样本的安全帽检测数据集,划分为训练集和测试集;步骤S3、利用安全帽佩戴图像训练DNN网络模型得到网络的权值;步骤S4、依据DNN网络模型构建用于安全帽佩戴检测的Spiking YOLO网络模型;步骤S5、将训练好的权值迁移到构建的Spiking YOLO网络模型;步骤S6、将待检测安全帽佩戴图像输入到Spiking YOLO网络模型;步骤S7、Spiking YOLO网络模型输出安全帽佩戴预测结果,并用检测框标记。2.根据权利要求1所述的基于脉冲神经网络的安全帽佩戴检测方法,其特征在于,步骤S1中,以YOLOv3
‑
tiny网络模型为基础,对网络模型进行改造,获得用于训练的DNN网络模型,具体如下:S11、将stride为2的Maxpool层替换成stride为2的Conv层;S12、去除stride为1的Maxpool层;S13、将激活函数Leaky ReLU替换成Clip
‑
FLoor函数;S14、将Upsample层替换成Transposed Convolution层。3.根据权利要求2所述的所述的基于脉冲神经网络的安全帽佩戴检测方法,其特征在于,所述S13中,将神经元激活函数Leaky ReLU替换成Clip
‑
FLoor函数,其函数表达式为:其中,a
l
是神经网络激活值,z
l
是l
‑
1层网络的加权输出,λ
l
是DNN中l层可训练阈值,L是DNN中的量化步长,取16,是超参数向量,控制激活函数的位移,取0.5。4.根据权利要求1所述的所述的基于脉冲神经网络的安全帽佩戴检测方法,其特征在于,步骤S2,获取含有佩戴安全帽人物样本和未佩戴安全帽人物样本的安全帽检测数据集,并随即按一定比例划分为训练集和测试集,具体如下:S21、对现有的安全帽佩戴检测图片用labeling标注工具进行标注,得到安全帽检测图像数据集标注文件;S22、按照9∶1的比例将该数据集划分为训练集和测试集;S23、将标注文件由XML格式转换为VOC格式。5.根据权利要求2所述的所述的基于脉冲神经网络的安全帽佩戴检测方法,其特征在于,步骤S3利用安全帽佩戴图像训练DNN网络模型得到网络的权值,具体如下:S31、对安全帽佩戴训练数据集使用K
‑
means聚类的算法来获得anchor boxes的大小;S32、修改网络分类的类别数为2;S33、输入安全帽数据集训练图片到DNN网络;S34、网络得到预测,标签与预测结果对比得到loss,反向传播;S35、优化器优化权值,最后得到训练过后的DNN网络权重。6.根据权利要求1所述的基于脉冲神经网络的安全帽佩戴检测方法,其特征在于,步骤
S4中,依据DNN网络模型构建用于安全帽佩戴检测的SpikingYOLO网络模型,具体如下:S41、构建与改造过后的YOLOv3
‑
tiny一样的网络结构;S42、将激活函数为Clip
‑
FLoor的神经元替换换成IF神经元,从而构建完成Spiking YOLO网络模型,其中IF神经元膜电位更新公式如下:m
l
(t)=v
l
(t
‑
1)+W
l
x
l
‑1(t)s
l
(t)=H(m
l
(t)
‑
θ
l
)v
l
(t)=m
l
(t)
‑
s
l
(t)θ
l
x
l
(t)=s
l
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。