本发明属于深度学习和计算机视觉,具体涉及一种基于yolov5的吸烟行为检测算法。
背景技术:
1、吸烟与全球不断增长的恶性肿瘤、心脑血管疾病和呼吸系统疾病等慢性非传染性疾病高度相关,是导致疾病和早死的主要危险因素之一。而且公共场所吸烟不仅危害自身与他人健康,还会因烟头的不恰当处理引发火灾事故,造成严重经济损失和生命损失。因此,吸烟目标检测,既可以有效减少人群接触烟草烟雾,减轻公众的疾病负担,还可以清洁室内外空气环境,减少相关的经济损失。
2、早期对烟草的控制主要是通过人力监督、禁烟令以及利用烟雾传感器对空气中的烟雾成分进行检测。采用人力监督和禁烟令的方法需要花费巨大的人力和物力,而烟雾传感器检测空气成分的方法受场所通风性和空间大小的影响,容易导致检测精度大幅下降。
3、随着人工智能快速发展,深度学习方法能够提取出更抽象、更深层次的特征,可以使模型的泛化性更好。但将烟支作为小目标检测对象面临较大挑战,基于深度学习的检测算法仍存在检测速度慢、检测精度低、难以准确检测到小目标以及在复杂环境中存在误检、漏检的问题。
技术实现思路
1、针对上述研究的问题,本发明的目的在于:为了解决在日常生活和公共场所等环境中的吸烟行为检测以及硬件资源部署问题,提供了一种基于yolov5的吸烟行为检测算法。
2、为了解决上述技术问题,本发明采用的技术方案如下:
3、一种基于yolov5的吸烟行为检测算法及应用,包括如下步骤:
4、s1:通过互联网收集吸烟数据集,寻找基于目标检测的烟支图片数据集。并对数据集进行扩充处理,以及对扩充后的数据做过采样数据增强处理;
5、进一步的,所述s1的具体步骤为:
6、s1.1:通过网络工具和视频截取以及摄像头采集来进行烟支目标及吸烟行为的数据集制作,所收集的数据集包括不同角度、不同环境、不用光照条件。
7、s1.2:通过多场景采集吸烟图片和视频,将视频中烟支目标图片截取出来,并对图片进行手工标注与通过互联网寻找的基于目标检测的烟支图片数据集合并构成新的烟支检测数据集。并且通过旋转、缩放、平移等处理进一步扩充数据集。
8、s1.3:针对小目标检测过程中训练数据中的烟支目标再现性较差,采用过采样(oversampling)处理。在训练目标检测模型时,对包含小目标的图像进行复制,使得小目标在训练数据中出现的次数增加,从而提高小目标的权重,有利于模型更好地学习小目标的特征。
9、通过以上步骤可以解决烟支目标检测数据集稀缺的问题。
10、s2:对yolov5n 6.0网络模型进行改进,采用卷积神经网络(cnn)和注意力机制(attention)结构融合为transformer形式的混合模型作为主干特征提取网络改进csp结构,并将其命名为cbsbot,并通过将ciou损失函数优化为siou,实现更精准的边界框预测,同时将高效注意力机制coordinate attention(ca)融入到主干网络特征提取的最后一层;
11、进一步的,所述s2的具体步骤为:
12、s2.1:将yolov5n主干特征提取网络替换为cbsbot,进行烟支特征提取,cbsbot结构改进原始的csp结构块中的瓶颈结构,提高模型的特征提取能力,进一步减少参数,提高模型推理速度,使网络延迟最小化,适用于硬件部署。
13、s2.2:注意力机制ca,融入到主干特征提取网络,不仅获取了通道信息,还考虑了方向相关的位置信息,有助于模型更好的定位和识别目标,同时不会带来过多的计算量,较为轻量化。
14、s2.3:在边界框检测过程中,通过将损失函数ciou优化为siou。进一步考虑了真实框和预测框之间的向量角度,改进后的损失函数提高了边界框的回归精度,加快了训练收敛速度,改善了烟支目标检测过程中存在的误检、漏检等问题。
15、损失函数siou,考虑了所需回归之间的向量角度,重新定义了惩罚指标,包括角度损失、距离损失、形状损失和iou损失四部分。siou损失函数表达式如下所示:
16、
17、在目标检测开始的训练过程中,大多数预测框和真实框不相交,引入角度损失使两框之间的距离实现快速收敛。角度损失函数表达式如下所示:
18、
19、
20、
21、
22、距离损失函数描述了中心点之间的距离,并且考虑角度损失问题,其惩罚项与角度损失呈正相关,α趋向于0时距离损失函数的贡献大大降低,反之,当α越接近45°损失函数贡献越大。距离损失函数表达式如下所示:
23、
24、
25、iou损失函数检测是真实框和预测框的交并比。iou损失函数表达式如下所示:
26、
27、角度损失和距离损失两种损失函数定义了预测框的运动方向和运动距离,形状损失函数对预测框的宽高信息进行惩罚,控制对形状损失的关注程度,避免过于关注形状损失而降低对预测框的移动。距离损失函数表达式如下所示:
28、
29、
30、
31、通过以上步骤可以得到模型参数量较小的、精度与速度效果较好的目标检测算法。
32、s3:在改进yolov5n网络模型基础上,将网络模型部署到硬件设备,与智能监控设备相结合,更好的帮助公共场所禁烟。
33、进一步的,所述s3的具体步骤为:
34、s3.1:将优化后的yolov5n模型部署到检测控制模块,并进行环境配置,将检测模块通过usb串口与云台摄像头连接,通过hdmi/dp串口与监控管理平台通信实现吸烟报警功能。
35、s3.2:利用检测模块将云台摄像头采集的数据分别传送给arduino微控制模块和监控管理平台。
36、s3.3:利用自动控制或手动控制方法通过arduino控制模块驱动舵机转动,实现吸烟行为的追踪。
37、与现有技术相比,本发明的有益效果是:借助互联网方式收集烟支目标检测数据集并解决了数据集数量缺少的问题。针对yolov5n网络模型参数量大、小目标检测精度低、存在误检及漏检的问题、以及检测速度慢不易于硬件部署无法满足日常需求等问题,提出了改进的yolov5n模型,改进模型结构降低参数量、提高模型检测速度。将优化后的网络模型进行硬件部署,应用到公共禁烟场所,在现实生活中进行应用。
1.一种基于yolov5的吸烟行为检测算法,其特征在于,包括以下几个步骤:
2.根据权利要求1所述的一种基于yolov5的吸烟行为检测算法,其特征在于,所述步骤s1的具体步骤为:
3.根据权利要求1所述的一种基于yolov5的吸烟行为检测算法,其特征在于,所述步骤s2的具体步骤为:
4.根据权利要求1所述的一种基于yolov5的吸烟行为检测算法,其特征在于,所述步骤s3的具体步骤为: