掌桥专利:专业的专利平台
掌桥专利
首页

面向复杂场景的基于改进YOLOX的安全帽检测算法

文献发布时间:2024-04-18 20:02:18


面向复杂场景的基于改进YOLOX的安全帽检测算法

技术领域

本专利涉及计算机视觉中的目标检测任务,特别是一种面向复杂场景的基于改进YOLOX_s的安全帽检测算法。

背景技术

安全帽佩戴检测对特定作业区域里的施工人员的安全具有重要意义。随着科技的飞速进步以及经济的快速发展,安全帽佩戴检测技术在智能视频监控领域应用广泛。这些技术的引入可以极大节省企业的人力物力消耗以及保障相关作业区域的工作人员和企业的生命、财产安全。

安全帽检测算法主要分为传统的方法和基于深度学习的目标检测算法。传统的目标检测算法主要采用滑动窗口的方式来选取感兴趣区域。首先用SIFT,HOG等特征提取算法对每个窗口进行特征提取,然后使用SVM等算法对提取的特征进行分类,最终得到包含目标物体的窗口。传统的算法依赖于滑动窗口的大小以及滑动步长的设计,不同大小的滑动窗口以及滑动步长会导致算法出现大量冗余的候选框,而这会影响算法的性能以及检测速度。

基于深度学习的目标检测算法主要分为两阶段算法和一阶段算法。前者首先利用RPN网络生成感兴趣区域RoI,然后再把生成的区域进行分类,最后完成物体的检测,这种方法显著提升了检测精度,但也限制了检测速度,其代表算法有RCNN,FastRCNN,FasterRCNN等。后者代表算法有SSD和YOLO系列。SSD算法利用多层特征信息并使用固定框进行区域生成。YOLO算法使用一阶网络直接完成了物体检测,速度很快。YOLO系列包含YOLOv1,YOLOv2,YOLOv3,YOLOv4,YOLOv5以及YOLOX等六个版本。

YOLOX作为目前性能最佳的目标检测算法,其速度和精度都超过了前面5个版本,但在小物体检测以及遮挡等复杂环境中仍存在严重漏检。

发明内容

发明目的:本发明的目的是提供一种面向复杂环境的基于YOLOX_s的安全帽检测算法,解决复杂场景中对小目标、遮挡目标以及密集目标存在严重漏检、检测精度低的问题,弥补YOLOX算法尚未应用于计算机视觉中的安全帽检测任务的缺陷。

技术方案:本发明所述的一种面向复杂场景的基于改进YOLOX_s的安全帽检测算法包含以下步骤:

步骤1、构建安全帽检测数据集;

步骤1包含以下子步骤:

步骤1-1、使用爬虫技术从网上爬取安全帽数据集,并对数据集进行清理,筛选出合适的样本,将非.jpg格式图片、非安全帽图片、非人图片等数据样本进行剔除。

步骤1-2、使用labelImg工具对获取的纯净数据集进行标注,标注文件格式为PASCALVOC,标注文件与被标注图片同名。

步骤2、使用步骤1中标注好的数据集训练改进后的YOLOX_s算法;

步骤2包括以下子步骤:

步骤2-1、将原YOLOX_s算法的backbone部分中CSP1_X模块里的残差结构改为shuffleNet基本单元,应用改进后的YOLOX_s算法的backbone部分进行特征提取工作。

步骤2-2、在原YOLOX_s算法的neck部分基础上新增加一个更大尺寸的预测特征层,其尺寸为160×160,应用改进后的YOLOX_s算法的neck部分进行特征融合工作。

步骤2-3、将原YOLOX_s算法的obj分支的损失函数由BCE_Loss改为Focal_Loss,reg分支和cls分支的损失函数不变。

步骤2-4、应用原YOLOX_s算法的prediction部分进行预测。

本发明的有益效果是:本发明在YOLOX_s算法的基础上,有效改进了算法结构,在对原算法检测速率没有较大影响的同时降低了原算法的参数量,并提高了对小目标的检测精度以及降低了漏检率,从而精确高效的执行安全帽检测任务。

附图说明

在本专利申请的权利要求书中,具体地指出了本发明的主题,并清楚地对其提出了专利保护。然而参照下面的详细说明和附图,可以更好地理解本发明的有关结构和实现方法以及其目的、特征和优势。

图1为改进后的YOLOX_s算法结构图

图2为CSP1-X中残差结构图

图3为shuffleNet基本单元结构图

具体实施方式

下面结合附图进一步说明本发明的技术方案。

如图1所示,本发明的面向复杂场景的基于改进YOLOX_s的安全帽检测算法,包括以下步骤:

步骤1、构建安全帽检测数据集;

步骤1包含以下子步骤:

步骤1-1、使用爬虫技术从网上爬取安全帽数据集,并对数据集进行清理,筛选出合适的样本,将非.jpg、非.png格式图片、非安全帽图片、非人图片等数据样本进行剔除。

步骤1-2、使用labelImg工具对获取的纯净数据集进行标注,标注文件格式为PASCALVOC,标注文件与被标注图片同名。

步骤2、使用步骤1中标注好的数据集训练改进后的YOLOX_s算法;

步骤2包括以下子步骤:

步骤2-1、将原YOLOX_s算法的backbone部分中CSP1_X模块里的残差结构改为shuffleNet基本单元,应用改进后的YOLOX_s算法的backbone部分进行特征提取工作,如图2,图3所示。

步骤2-2、在原YOLOX_s算法的neck部分基础上新增加一个更大尺寸的预测特征层,其尺寸为160×160,应用改进后的YOLOX_s算法的neck部分进行特征融合工作。

步骤2-3、将原YOLOX_s算法的obj分支的损失函数由BCE_Loss改为Focal_Loss,reg分支和cls分支的损失函数不变。

Focal_Loss公式如下:

F

公式中,y代表样本标签,y∈{±1},p代表样本标签y=1,即预测为正样本时的预测概率,α代表正样本的权重,α∈[0,1],γ是一个聚焦因子,γ≥0。

对于该损失函数,有如下三个特性:

①对于正负样本的不均衡,可以通过引入α

②引入(1-p

③引入聚焦因子γ,γ越大,当p

步骤2-4、应用原YOLOX_s算法的prediction部分进行预测。

相关技术
  • 一种基于改进YOLOV5的面向复杂场景的安全帽检测方法
  • 一种基于改进YOLOX的安全帽检测方法、系统、设备及介质
技术分类

06120116582277