安全帽佩戴检测算法

描述

安全帽佩戴监控是铁路工程施工人员安全管理中的重点和难点,它对检测算法的准确 率与检测速度都有较高的要求。本文提出一种基于神经网络架构搜索的安全帽佩戴检测算法 NAS-YOLO。该神经网络架构由上、下行操作单元组成,采用二进制门策略对网络架构进行更 新,通过数据驱动的方式自动确定合适的神经网络体系结构。实验结果表明,NAS-YOLO算法 在准确率、召回率及平均检测速度方面均优于实时目标检测算法 YOLOv3,可以在工程施工中 对施工人员安全帽佩戴情况进行实时监控。
关键词 安全帽佩戴;神经网络架构搜索;自动检测;检测算法;实时监控

引言
施工现场环境复杂多变,人群密集,频繁出现工 人不遵守规章所引发的伤亡事故,安全帽作为一 种常见的防护用具,能够有效减轻外来危险源对头 部的伤害,因此,实时监控施工场所工人安全帽佩戴 情况至关重要。 然而人工监管费时费力,无法满足 安全生产要求。 以计算机视觉为技术支撑的智能监 控系统有人力成本低、检测效率高等优势,为自动监 测施工现场工人佩戴安全帽情况的方案落地提供了 技术方向

人工智能

 

1. 安全帽监控系统逻辑架构
安全帽监控系统的逻辑结构主要分为视频采集、智能视频分析和监控中心3个模块,如图1所示。视频采集模块负责通过摄像机进行视频采 集;智能视频分析模块是通过算法实现目标检测、分类,并进行行为和事件检测,同时还负责对违规行为发出报警信息,是安全帽监控系统的核心模块;监控中心与监控人员直接交互,起到对整个监控系统进行监视和管理的作用。
安全帽监控系统首先由视频采集模块获取视频 数据;再由智能视频分析模块利用目标检测技术提取出视频中的动态目标,同时进行分类;然后,将分类得到的目标信息与预先设定好的报警准则进行逻辑判断,如符合预定准则,则智能视频分析模块向监控中心发送预警或报警信息;如不符合预定准则,则继续进行目标检测[8]。目标检测与分类是通 过人工智能技术(即深度神经网络) 来完成的。与 常用的深度神经网络算法不同,这里介绍通过 NAS算法自动搜索合适的神经网络架构。

2.YOLOv3检测模型
YOLOv3 的主干网络为 Darkent-53,其中,包含53个卷积层和5个残差块,整体网络结构如图 2 所 示。 每个残差块包含残差单元,而残差单元由DBL组件组成,DBL 组件中包括卷积、批量归一化和 Leaky reiu激活函数。 残差单元由DBL通过相加而 成,残差块由DBL和残差单元构成,其中,残差块借 鉴ResNet的思想,增强了特征融合能力。 YOLOv3 通过改变卷积核的步长来实现张量的尺度变换,输 出 3 个不同大小的尺度。

YOLOv3网络结构

3. NAS算法
NAS 算法是自动机器学习领域的热点算法之 一,可通过数据特征自动找到合适的神经网络架 构[9] 。该算法的原理是光定义搜索空间;然后,通 过搜索策略找出候选网络架构,对候选网络进行评 估;最后,根据评估结果进行下一轮的搜索。由于 NAS 的根本思想是探索各种潜在的解决方案,搜 索空间越大,需要训练与评估的架构就越多,消耗 的资源与时间就越多。因此,搜索空间的设定将直 接影响计算开销。目前 NAS 的主流设计方法为先 基于单元 (cell) 的架构进行设计,再将单元堆叠 在主干网络上,构成整体网络架构,并由此限制搜 索空间大小。换言之,大型网络是由多个单元组成 的,而单元的结构是由整个网络共享的[10] ,因此主 干网络的选择也十分重要。
目前主流的目标检测算法是 Fast r-cnn[11] 系列 算法,首先使用神经网络生成待检测预选定位框, 再对预选定位框进行调整和分类,属于两阶段算 法,虽然精度高,但实时性不强。而YOLO (You Only Look Once)[12] 系列的一阶段算法采用了回归 的思想,直接在图像上回归出预选定位框,同时预 测预选定位框所属类别。YOLO 系列算法的检测 精度虽然略低于 Fast r-cnn 系列,但是运行速度 快,能够很好地完成实时目标检测任务。另外,还 有 SSD (Single Shot MultiBox Detector)[13] 算法,结合了回归思想和预选定位框机制,使得检测速度和准确率都得到提升。YOLO 系列算法经过不断 更新,其中 YOLOv3[14] 结合了多种网络设计技 巧,包括了SSD算法中的多尺度特征融合策略[15] , 进一步提高了网络的检测性能。因此,本文以 YOLOv3 为基础框架,设计了基于神经网络架构 搜 索 的 YOLO 网 络 , 即 NAS-YOLO。 NASYOLO由2种单元架构组成,分别是下行单元和上 行单元,并通过基于单元的搜索方式,确定其最终 网络拓扑结构。

人工智能

3.1 架构搜索方式
对二值化的路径更新使用了 Cai H 等[20] 提出 的二进制门方法。这是一种数据驱动的方式,具体 操作如下。 1) 在训练网络权重参数时,先冻结架构参数, 并为每批输入的数据随机选取二进制门,根据二进 制门得到存活路径。 2) 在训练数据集中,通过标准梯度下降,更 新存活路径的权值参数。 3) 在训练架构参数时,先冻结权重参数,后 重置二进制门,更新并验证数据集中的架构参数。 这2个更新步骤以替代方式执行,一旦完成架构参 数的训练,就可以通过修剪冗余路径来导出紧凑的 架构。 每次架构参数的更新只涉及2条路径,从而将 内存需求降低到训练紧凑模型的相同水平。

3.2 模型训练
使用安全帽佩戴检测数据集对 NAS-YOLO 算 法进行训练。该数据集共有 7 581 张图像,包含 9 044 个佩戴了安全帽的人像 (正样本),以及 111 514 个普通人像 (没有佩戴安全帽,即负样 本)。随机选取数据集中一半的图像作为训练集, 另一半作为验证集,使用二进制门搜索策略对神经 网络架构进行搜索。其中,批量的大小设置为 8, 共进行了200期的架构搜索优化。 网 络 权 重 训 练 中 , 选 用 随 机 梯 度 下 降 (Stochastic Gradient Descent,SGD) 优化器,动 量 设 置 为 0. 95, 余 弦 学 习 率 从 0. 025 衰 减 到 0. 01,权重衰减为 0. 0003。架构参数 α 的训练使 用 Adam 优化器[21],学习率设置为 0. 0003,重 量 衰 减 设 置 为 0. 0001。 使 用 1 块 GeForce RTX 2080ti GPU 对 整 个 架 构 搜 索 , 大 约 需 要 2 天 时间

4. 结果验证与分析
4.1 算法训练
YOLOv3和NAS-YOLO训练过程中的损失函 数曲线 (Loss Curve) 分别见图2和图3。图中, 损失值越小,表示训练出的模型与数据集的真实模 型越接近;在2次训练过程中,网络损失均保持稳 定下降趋势,YOLOv3在迭代 10 000次左右收敛, NAS-YOLO在迭代 40 000次左右收敛,说明训练 基本顺利;与图2的曲线相比,图3的曲线收敛于 一个更小的值,说明改进后的模型更接近数据集的 真实模型。

4.2 算法测试
将完成模型训练NAS-YOLO网络与现有的目 标检测网络进行对比,并将几种算法分别应用于安 全帽监控系统中,进行安全帽佩戴状态的自动识 别。随机选取2名工地管理人员,对视频中施工人 员是否佩戴安全帽进行识别与判断。一名管理人员 先做出判断,另一名再对其判断结果进行审查与修 正。将2名管理人员的识别判断结果作为真值,评 估 NAS-YOLO 与 SSD、 Fast r-CNN、 YOLOv3 算法的实际应用准确度和运行速度。与其他方法相比,NASYOLO的平均准确率(mean Average Precision,mAP) 最高,达 96. 72%;处理速度也最快,检测速度可达59. 6FPS (Frames Per Second);但召回率略低 于 Fast r-CNN,而 Fast r-CNN 运行速度慢,无法 应用于实时的目标检测任务。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分