CN115116137A - 基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法 - Google Patents
基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法 Download PDFInfo
- Publication number
- CN115116137A CN115116137A CN202210756317.2A CN202210756317A CN115116137A CN 115116137 A CN115116137 A CN 115116137A CN 202210756317 A CN202210756317 A CN 202210756317A CN 115116137 A CN115116137 A CN 115116137A
- Authority
- CN
- China
- Prior art keywords
- module
- network model
- yolo
- network
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法,该行人检测方法采用轻量化YOLO v5网络,将原版YOLO v5模型的Foucs层替换为卷积层以及将主干网络中的卷积替换为通道随机混合的分组卷积来轻量化模型,并利用时空记忆机制对网络检测结果进行修正,减少误识别,利用修正的检测结果进行行人位置检测,降低了模型的误识别率且减少了模型的硬件开销并提高了处理速度。采用本发明行人检测方法在数据集测试结果为:误识别率从7%降低至1%,处理速度从56FPS提升到74FPS。
Description
技术领域
本发明属于深度学习目标检测技术领域,具体为基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法。
背景技术
疫情期间紧张的人员配置以及人眼识别可能存在的偏差使得人员极易懈怠而产生疏忽和失误。
高校封闭式管理模式下采用监控室全天候值守维护校园安全存在以下问题:(1)监控画面多:大多数校区围墙的边界长达数公里,多达几十个摄像头和监控屏。(2)工作人员易出错:校园围墙发生违纪行为本就属于小概率事件,人对于小概率事件的不发生抱有侥幸心理。工作人员更加容易懈怠、疏忽和产生视觉疲劳发生漏判。(3)校方成本高:监控室安保人员薪资低,无法吸引就业人员。但对于校方来讲成本过高,因为实行八小时工作制需要雇佣三倍的就业人员和三倍的支出。(4)现有的检测方法误识别率较高且硬件开销大。
因此针对高校围墙边界进行智能监控是迫切之需,在此情况下,开发一种减少行人误识别和提高鲁棒性的轻量化方法和智能监控方法,有利于实现了校园疫情防控的智能处理和快速响应,更好的维护校园安全。
发明内容
针对现有技术存在的不足,本发明提供了基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法。该检测方法基于YOLO v5深度网络模型,在原模型的基础上设计了一种时空记忆机制并构建轻量化YOLOv5模型,从而减少行人检测的误识别和提高系统鲁棒性。并对模型采用通道洗牌和剪枝模型方法进行轻量化,加快模型的处理速度,更适合多路视频的处理和模型的部署。
本发明解决所述技术问题的技术方案是:设计基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法,该方法包括如下步骤:
第一步:构建训练数据库
1)采集监测地点不同场景的图像,图像采集的场景包括晴天、阴天、雨天和夜晚;根据行人距离摄像头的远近将采集到的图像中的人物目标划分为不同尺寸,其中面积小于32*32像素为小尺寸目标,在32*32像素至96*96像素之间为中尺寸目标,大于96*96像素为大尺寸目标;按以上三种人物目标尺寸 1:1:1的数量比挑选出图像,并对挑选出的图像进行数据增强,最后进行图像尺寸统一化操作,获得原始数据集;
2)数据集划分:对步骤1)中得到的原始数据集采用人工的方式添加标签,用矩形框分别标记出图像中的人物目标和围墙,并且按一定数量比例随机将原始数据集中的图像划分训练集和验证集;
第二步:构建轻量化YOLO v5网络模型
1)训练集的预处理:对第一步的步骤2)中得到的训练集进行数据增强;
2)搭建轻量化YOLO v5网络模型
轻量化YOLO v5网络模型为YOLO v5网络模型的改进结构,具体为将 YOLO v5网络模型的主干网络中顺接的Foucs模块、CBL模块、CSP1_1模块、 CBL模块、CSP1_3模块、CBL模块、CBL模块、CSP1_3模块、CBL模块、 CBL模块、CBL模块、SPP模块、CBL模块替换成顺接的2个CBL模块、SFB1 模块、2个SFB2模块、SFB1模块、7个SFB2模块、SFB1模块、SFB2模块、 CBS模块;轻量化YOLO v5网络模型的主干网络部分的输入首先输入到第一个CBL模块中,第二个SFB2模块的输出分别输入到与其顺接的SFB1模块和Neck 网络部分的第一个CBL模块,CBS模块的输出输入到YOLO v5网络模型的主干网络中的CSP2_1模块中,轻量化YOLO v5网络模型的其它部分结构与YOLO v5网络模型相同;
3)训练网络
采用在ImageNet得到的预训练权重初始化主干网络,使用kaiming正态分布初始化卷积层参数,网络的其余部分采用Xavier初始化;设置随训练代数呈阶梯下降的学习率,前50代冻结主干网络参数;
将步骤1)中完成预处理的训练集输入到完成初始化的轻量化YOLO v5网络模型中,利用主干网络部分进行特征提取与融合,利用分类和回归网络,得到人物目标的位置、类别和置信度,以及围墙的位置与置信度,将其与真实标签对比得到Loss值;根据Loss值采用SGD优化器,进行反向传播更新网络参数,直至Loss下降至预设,网络模型训练完成;
4)网络模型验证
对第一步的步骤2)中得到的验证集输入到步骤3)中完成训练的网络模型中,将网络模型输出的检测标签与真实标签对比,得到误识别率,当误识别率不大于10%时,保存网络模型当前参数,该网络模型为有效模型;当误识别率大于10%时,调整网络模型的初始参数,重新训练网络直至Loss下降至预设值,且验证集的误识别率不大于10%,保存网络模型当前参数,当前网络模型即为有效模型,网络模型验证完成;
第三步:利用轻量化YOLO v5网络模型与时空记忆机制模块进行行人位置检测
1)获取初步检测结果
将摄像头捕获到的视频流按帧输入到第二步中完成验证的轻量化YOLO v5 网络模型中,得到视频的帧序列图像的检测结果,每一幅图像的检测结果包括人物目标的位置、类别和置信度,以及围墙的位置与置信度,该检测结果为初步检测结果;
2)获取修正的检测结果
将初步检测结果输入到时空记忆机制模块中,时空记忆机制原理如下:
其中Pn+1表示视频序列图像的第n+1帧图像中人物目标的置信度;Δx和Δy 分别表示第n+1帧图像与第i帧图像中最临近人物目标的x轴和y轴的变化值,取值范围均为0~+∞;Pi表示网络模型输出的第i帧图像中的人物目标的置信度;表示向上取整;
上式中,f(x)表达式如下:
将时空记忆机制模块输出的预测下一帧图像中的人物目标的置信度替换掉对应帧的初步检测结果中的置信度,得到修正的检测结果;
3)行人位置检测
根据步骤2)中修正的检测结果中检测出的人物目标和围墙,当人物目标的轨迹与设定的围墙警戒线发生交叉或者低于某个阈值时,可判定为翻墙行为或者违规隔墙取物行为;以视频画面的左上角为坐标原点分别向右、向下设置 x轴、y轴正方向,建立二维坐标系,围墙的位置由人工给定,围墙警戒线近似为一条直线;xi,yi表示检测到的人物目标在同一坐标系下的坐标;其原理如下:
f(x,y)=Ax+By+C=0
表示围墙警戒线的位置,若
则表明有翻墙嫌疑;若
|f(xi,yi)|<t
则表明有隔墙取物嫌疑;其中xi,yi表示检测到第i帧图像中的人物目标的位置坐标,t表示设定的阈值,A、B、C为人工给定围墙位置时计算得到的常数参数。
与现有技术相比,本发明有益效果在于,本发明行人检测方法采用轻量化 YOLOv5网络,将原版YOLO v5模型的Foucs层替换为卷积层以及将主干网络中的卷积替换为通道随机混合的分组卷积来轻量化模型,并利用时空记忆机制对网络检测结果进行修正,减少误识别,利用修正的检测结果进行行人位置检测,降低了模型的误识别率且减少了模型的硬件开销并提高了处理速度。采用本本发明行人检测方法在数据集测试结果为:误识别率从7%降低至1%,处理速度从56FPS提升到74FPS。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要的附图作简单地介绍,以下附图是为了图示所选择的实施案例而非所有可能的实施方案。
图1为本发明行人检测方法一种实施例的轻量化YOLO v5网络模型结构图。
图2为YOLO v5网络模型结构图。
图3为图2中的Focus模块结构图。
图4为图2中的SPP模块结构图。
图5为图2中的CSP1_x模块结构图。
图6为图2中的CSP2_x模块结构图。
图7为YOLO v5网络模型中的CBL模块结构图。
图8为CSP1_x模块中的Res unit模块结构图。
图9为图1中的SFB1模块结构图。
图10为图1中的SFB2模块结构图。
图11为图2中的Focus模块的原理图。
图12为图1中的CBL*2模块的原理图。
图13为本发明行人检测方法一种实施例的时空记忆机制原理图。
图14为
函数图像。
图15为实施例中的监控室一组实时视频画面。
图16为采用本发明行人检测方法对图15的检测结果。
具体实施方式
以下对本发明实施例中的技术方案进行简洁明了的阐述,并对发明实施例中的附图进行解释说明。阐述的实施例仅为发明的部分实施例而不是全部。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供行基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法(简称行人检测方法),该方法包括如下步骤:
第一步:构建训练数据库
1)采集监测地点不同场景的图像,图像采集的场景包括晴天、阴天、雨天和夜晚。根据行人距离摄像头的远近将采集到的图像中的人物目标划分为不同尺寸,其中面积小于32*32像素为小尺寸目标,在32*32像素至96*96像素之间为中尺寸目标,大于96*96像素为大尺寸目标。按以上三种人物目标尺寸 1:1:1的数量比挑选出图像,并对挑选出的图像进行数据增强,最后进行图像尺寸统一化操作,获得原始数据集。数据增强能加强模型的泛化能力,增强手段包括镜像、剪裁、平移和缩放。
摄像头安装位置的不同以及行人到摄像头的距离会因行人移动而产生变化,于是监控视频中目标对象行人所占比例有所不同。在实际情况中大、中、小尺寸的目标对象都有可能出现,为保证模型在实际情况中的检测效果,故将数据中大、中、小尺寸目标对象数量占比设置为1:1:1,保证不同尺度的样本数量平衡。
2)数据集划分:对步骤1)中得到的原始数据集采用人工的方式添加标签,用矩形框分别标记出图像中的人物目标和围墙,并且按数量比例7:3随机将原始数据集中的图像划分训练集和验证集。
第二步:构建轻量化YOLO v5网络模型
1)训练集的预处理:对第一步的步骤2)中得到的训练集进行数据增强,增强方法包括锐化、直方图均衡化、颜色空间变化、添加不同种类的噪声和归一化方法、Mosaic数据增强。使得测试集的TSNE分布尽量处于训练集的TSNE 分布之中,提升模型的识别精度。
2)搭建轻量化YOLO v5网络模型
轻量化YOLO v5网络模型(参见图1)为YOLO v5网络模型(参见图2)的改进结构,具体的,为将YOLO v5网络模型的主干网络(Backbone)中顺接的 Foucs模块、CBL模块、CSP1_1模块、CBL模块、CSP1_3模块、CBL模块、 CBL模块、CSP1_3模块、CBL模块、CBL模块、CBL模块、SPP模块、CBL模块替换成顺接的2个CBL模块、SFB1模块、2个SFB2模块、SFB1模块、7个 SFB2模块、SFB1模块、SFB2模块、CBS模块。轻量化YOLO v5网络模型的主干网络部分的输入首先输入到第一个CBL模块中,第二个SFB2模块的输出分别输入到与其顺接的SFB1模块和Neck网络部分的第一个CBL模块,CBS模块的输出输入到YOLO v5网络模型的主干网络(Backbone)中的CSP2_1模块中,轻量化YOLO v5网络模型的其它部分结构与YOLO v5网络模型相同。
YOLO v5的主干网络组成部分包括:Foucs、CBL、SPP、CSP1_x和 CSP2_x。其中CBL代表卷积层、归一化层和激活层。Foucs层是在输入的特征图上进行下采样,将特征层的宽高减半通道数保持不变,输入的图像经过四路 Slice操作形成四路在不同位置进行下采样的特征层,然后再将结果进行Concat 操作,之后再经过一个CBL模块的处理后,输出Foucs层的输出。SPP为将输入的特征图按通道数分成三组分别进行Maxpool,再将结果进行Concat操作,之后再经过一个CBL模块的处理后,输出SPP模块的输出。CSP1_x模块的工作原理:首先串联的x个残差组件(CBL模块+Res unit模块+CONV)与一个卷积层并行,然后将两者的输出进行Concat操作,再依次经过BN层、Leaky relu激活函数处理后,输出CSP1_x模块的输出。CSP2_x模块的工作原理:首先串联的x 个CBLC模块(CBL模块+CONV)与一个卷积层并行,然后将两者的输出进行 Concat操作,再依次经过BN层、Leaky relu激活函数处理后,输出CSP2_x模块的输出。YOLO v5模型的主干网络以Foucs开头。
Shufflenet网络的主干网络的主要组成模块为SFB1、SFB2、CBS模块。 SFB1模块由CBL模块、DWB模块、Concat模块和Channel Shuffle模块构成,其中,一个DWB模块与一个CBL模块串联,x个由CBL模块、DWB模块、CBL模块构成的组件串联,上述两个串联部分为并行结构且其输出均输入到Concat模块;Concat模块将两部分的输入进行处理,其输出输入到Channel Shuffle模块,Channel Shuffle模块的输出为SFB1模块的输出。
SFB2模块由Channel split模块、CBL模块、DWB模块、CBL模块、Concat 模块和Channel Shuffle模块构成,SFB2模块的输入首先输入到Channel split模块,Channelsplit模块将多通道数组转换成独立的单通道数组。Channel split模块的输出一方面依次经过串联的x个由CBL模块、DWB模块、CBL模块构成的组件的处理后输入到Concat模块,Channel split模块的输出另一方面直接输入到Concat模块;Concat模块将两部分的输入进行处理,其输出输入到Channel Shuffle模块,Channel Shuffle模块的输出为SFB2模块的输出。
DWB模块表示Depthwise Separable Convolution卷积和BN层。DWB不同于传统卷积操作,卷积部分分为两步:第一步选择M个卷积核对原通道一对一卷积不求和生成M个通道;第二步再选择N个1*1卷积核对第一步中的M个通道的特征层进行卷积操作得到N个结果。SFB1模块不改变输入和输出通道数和特征图尺寸,当输入和输出通道数相同时,内存访问量MAC最小。SFB2模块为下采样,将特征图的宽高减半通道数翻倍。
Channel Shuffle模块表示将分组卷积形成的通道随机打乱。分组卷积是将特征层分成若干组分别进行卷积再进行Concat操作。单一使用分组卷积会导致各个通路的特征在各自的通路中前向传播而互不相交,由此会产生边界效应,得到的特征图比较局限,不适于整体特征的提取与融合。Channel Shuffle在通道分组之后让通道以一定排列方式组合融合,并进入下一次分组卷积。 Shufflenet网络的主干网络中,SFB1和SFB2交替排列组合。
轻量化YOLO v5网络模型为将YOLO v5模型的Foucs层替换为卷积层以及将其主干网络的其他部分替换为Shufflenet主干网络,保留YOLO v5模型的数据预处理方式。
根据Shufflenetv2中提出的准则之三,过多的碎片化操作会影响硬件的并行计算速度。Foucs层将输入的图像经过四路Slice操作形成四路特征层,该做法会导致通路过多,降低硬件并行度。故将其替换成普通的卷积层CBL。普通卷积的操作很大程度上依赖GPU的显存大小以及处理速度。在确保检测精度的前提下可以适当损失一定精度提高检测速度。
将YOLO v5原模型的主干网络中替换为Shufflenet主干网络,Shufflenet主干网络多为混合通道的分组卷积。单一使用分组卷积会导致各个通路的特征在各自的通路中前向传播而互不相交,不适于整体特征的提取与融合。在通道分组之后让通道以一定排列方式组合融合,并进入下一次分组卷积。
3)训练网络
采用在ImageNet得到的预训练权重初始化主干网络,使用kaiming正态分布初始化卷积层参数,网络的其余部分采用Xavier初始化。设置随训练代数呈阶梯下降的学习率,以便网络在训练初期寻求最优解,在训练后期有较好的收敛。前50代冻结主干网络参数。
将步骤1)中完成预处理的训练集输入到完成初始化的轻量化YOLO v5网络模型中,利用主干网络部分进行特征提取与融合,利用分类和回归网络,得到人物目标的位置、类别和置信度,以及围墙的位置与置信度,将其与真实标签对比得到Loss值。根据Loss值采用SGD(梯度下降)优化器,进行反向传播更新网络参数,直至Loss下降至预设,网络模型训练完成。
4)网络模型验证
对第一步的步骤2)中得到的验证集输入到步骤3)中完成训练的网络模型中,将网络模型输出的检测标签与真实标签对比,得到误识别率,当误识别率不大于10%时,保存网络模型当前参数,该网络模型为有效模型。当误识别率大于10%时,调整网络模型的初始参数,重新训练网络直至Loss下降至预设值,且验证集的误识别率不大于10%,保存网络模型当前参数,当前网络模型即为有效模型,网络模型验证完成。
第三步:利用轻量化YOLO v5网络模型与时空记忆机制模块进行行人位置检测
1)获取初步检测结果
将摄像头捕获到的视频流按帧输入到第二步中完成验证的轻量化YOLO v5 网络模型中,得到视频的帧序列图像的检测结果,每一幅图像的检测结果包括人物目标的位置、类别和置信度,以及围墙的位置与置信度,该检测结果为初步检测结果。
2)获取修正的检测结果
将初步检测结果输入到时空记忆机制模块中,时空记忆机制原理如下:
其中Pn+1表示视频序列图像的第n+1帧图像中人物目标的置信度;Δx和Δy 分别表示第n+1帧图像与第i帧图像中最临近人物目标的x轴和y轴的变化值,取值范围均为0~+∞;Pi表示网络模型输出的第i帧图像中的人物目标的置信度。表示向上取整。
上式中,f(x)表达式如下:
该时空记忆机制的实现思想为:下一帧图像中人物目标的置信度由时间序列上的前150帧图像中的人物目标的空间位置变化共同决定。该机制融合人物目标的时间维度和空间维度,预测下一帧图像中的人物目标的置信度。
将时空记忆机制模块输出的预测下一帧图像中的人物目标的置信度替换掉对应帧的初步检测结果中的置信度,得到修正的检测结果。
3)行人位置检测
根据步骤2)中修正的检测结果中检测出的人物目标和围墙(一般认为置信度大于0.5为存在目标),当人物目标的轨迹与设定的围墙警戒线发生交叉或者低于某个阈值时,可判定为翻墙行为或者违规隔墙取物行为。以视频画面的左上角为坐标原点分别向右、向下设置x轴、y轴正方向,建立二维坐标系,围墙的位置由人工给定,围墙警戒线近似为一条直线。xi,yi表示检测到的人物目标在同一坐标系下的坐标。其原理如下:
f(x,y)=Ax+By+C=0
表示围墙警戒线的位置,若
则表明有翻墙嫌疑。若
|f(xi,yi)|<t
则表明有隔墙取物嫌疑。其中xi,yi表示检测到第i帧图像中的人物目标的位置坐标,t表示设定的阈值,A、B、C为人工给定围墙位置时计算得到的常数参数。
实施例1
本实施例提供基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法,该方法用于校园安全智能监控异常识别,该方法包括如下步骤:
第一步:构建训练数据库
1)采集监测地点不同场景的图像,图像采集的场景包括晴天、阴天、雨天和夜晚。根据行人距离摄像头的远近将采集到的图像中的人物目标划分为不同尺寸,其中面积小于32*32像素为小尺寸目标,在32*32像素至96*96像素之间为中尺寸目标,大于96*96像素为大尺寸目标。按以上三种人物目标尺寸 1:1:1的数量比挑选出图像,并对挑选出的图像进行数据增强,获得原始数据集。数据增强能加强模型的泛化能力,增强手段包括镜像、剪裁、平移和缩放。
摄像头安装位置的不同以及行人到摄像头的距离会因行人移动而产生变化,于是监控视频中目标对象行人所占比例有所不同。在实际情况中大、中、小尺寸的目标对象都有可能出现,为保证模型在实际情况中的检测效果,故将数据中大、中、小尺寸目标对象数量占比设置为1:1:1,保证不同尺度的样本数量平衡。
某校老校区监控摄像头较少,监控室保卫处共24路视频。因无法获取到原视频的解析路线,于是采用外部工业摄像头采集监控画面。采用两个高清500 万像素XW500的USB工业相机和两个500万像素机器视觉工业镜头。该图像采集设备具有逐行扫描传感器、无压缩、无差补,高速2.0接口、传输速度 480Mb/s,实现与PC对接、实时显示图像的功能。采集不同场景的图像构建数据库,这些数据采集的场景包括晴天、雨天、阴天和夜晚。并根据现实中天气状况,对不同场景的样本数量的权重做相应处理。目标实例面积小于32*32 像素为小尺寸目标,在32*32像素至96*96像素之间为中尺寸目标,大于96*96 像素为大尺寸目标,根据实际场景权衡不同尺寸的目标对象所在图像中所占比例。摄像头安装位置的不同以及行人到摄像头的距离会因行人移动而产生变化,于是监控视频中目标对象行人所占比例有所不同。在实际情况中大、中、小尺寸的目标对象都有可能出现,为保证模型在实际情况中的检测效果,故将数据中大、中、小尺寸目标对象数量占比设置为1:1:1。保证不同尺度的样本保持平衡。
因短时间采集所得图像可能无法覆盖一年四季所有实际情况,故对所采集到的图像进行数据增强以扩充数据库,加强模型的泛化能力。增强手段包括镜像、剪裁、平移和缩放等。并将图像尺寸进行统一化操作,得到统一尺度的图像,形成原始数据集。本实施案例共采集样本2130张图像,经过数据增强后共 3500张样本图像,即原始数据集中包含3500张图像。
2)数据集划分:对步骤1)中得到的原始数据集采用人工的方式添加标签,用矩形框分别标记出图像中的人物目标和围墙,并且按数量比例7:3随机将原始数据集中的图像划分训练集和验证集。
第二步:构建轻量化YOLO v5网络模型
1)训练集的预处理:对第一步的步骤2)中得到的训练集进行Mosaic数据增强,使得测试集的TSNE分布尽量处于训练集的TSNE分布之中,提升模型的识别精度。
2)搭建轻量化YOLO v5网络模型
轻量化YOLO v5网络模型为YOLO v5网络模型的改进结构,具体的,为将 YOLO v5网络模型的主干网络(Backbone)中顺接的Foucs模块、CBL模块、 CSP1_1模块、CBL模块、CSP1_3模块、CBL模块、CBL模块、CSP1_3模块、 CBL模块、CBL模块、CBL模块、SPP模块、CBL模块替换成顺接的2个CBL模块、SFB1模块、2个SFB2模块、SFB1模块、7个SFB2模块、SFB1模块、SFB2 模块、CBS模块。轻量化YOLO v5网络模型的主干网络部分的输入首先输入到第一个CBL模块中,第二个SFB2模块的输出分别输入到与其顺接的SFB1模块和Neck网络部分的第一个CBL模块,CBS模块的输出输入到YOLO v5网络模型的主干网络(Backbone)中的CSP2_1模块中,轻量化YOLO v5网络模型的其它部分结构与YOLO v5网络模型相同。
YOLO v5的主干网络组成部分包括:Foucs、CBL、SPP、CSP1_x和 CSP2_x。其中CBL代表卷积层、归一化层和激活层。Foucs层是在输入的特征图上进行下采样,将特征层的宽高减半通道数保持不变,输入的图像经过四路 Slice操作形成四路在不同位置进行下采样的特征层,然后再将结果进行Concat 操作,之后再经过一个CBL模块的处理后,输出Foucs层的输出。SPP为将输入的特征图按通道数分成三组分别进行Maxpool,再将结果进行Concat操作,之后再经过一个CBL模块的处理后,输出SPP模块的输出。CSP1_x模块的工作原理:首先串联的x个残差组件(CBL模块+Res unit模块+CONV)与一个卷积层并行,然后将两者的输出进行Concat操作,再依次经过BN层、Leaky relu激活函数处理后,输出CSP1_x模块的输出。CSP2_x模块的工作原理:首先串联的x 个CBLC模块(CBL模块+CONV)与一个卷积层并行,然后将两者的输出进行 Concat操作,再依次经过BN层、Leaky relu激活函数处理后,输出CSP2_x模块的输出。YOLO v5模型的主干网络以Foucs开头。
Shufflenet网络的主干网络的主要组成模块为SFB1、SFB2、CBS模块。 SFB1模块由CBL模块、DWB模块、Concat模块和Channel Shuffle模块构成,其中,一个DWB模块与一个CBL模块串联,x个由CBL模块、DWB模块、CBL模块构成的组件串联,上述两个串联部分为并行结构且其输出均输入到Concat模块;Concat模块将两部分的输入进行处理,其输出输入到Channel Shuffle模块,Channel Shuffle模块的输出为SFB1模块的输出。
SFB2模块由Channel split模块、CBL模块、DWB模块、CBL模块、Concat 模块和Channel Shuffle模块构成,SFB2模块的输入首先输入到Channel split模块,Channelsplit模块的输出一方面依次经过串联的x个由CBL模块、DWB模块、CBL模块构成的组件的处理后输入到Concat模块,Channel split模块的输出另一方面直接输入到Concat模块;Concat模块将两部分的输入进行处理,其输出输入到Channel Shuffle模块,ChannelShuffle模块的输出为SFB2模块的输出。
DWB模块表示Depthwise Separable Convolution卷积和BN层。DWB不同于传统卷积操作,卷积部分分为两步:第一步选择M个卷积核对原通道一对一卷积不求和生成M个通道;第二步再选择N个1*1卷积核对第一步中的M个通道的特征层进行卷积操作得到N个结果。SFB1模块不改变输入和输出通道数和特征图尺寸,当输入和输出通道数相同时,内存访问量MAC最小。SFB2模块为下采样,将特征图的宽高减半通道数翻倍。
Channel Shuffle模块表示将分组卷积形成的通道随机打乱。分组卷积是将特征层分成若干组分别进行卷积再进行Concat操作。单一使用分组卷积会导致各个通路的特征在各自的通路中前向传播而互不相交,由此会产生边界效应,得到的特征图比较局限,不适于整体特征的提取与融合。Channel Shuffle在通道分组之后让通道以一定排列方式组合融合,并进入下一次分组卷积。 Shufflenet网络的主干网络中,SFB1和SFB2交替排列组合。
轻量化YOLO v5网络模型为将YOLO v5模型的Foucs层替换为卷积层以及将其主干网络的其他部分替换为Shufflenet主干网络,保留YOLO v5模型的数据预处理方式。
根据Shufflenetv2中提出的准则之三,过多的碎片化操作会影响硬件的并行计算速度。Foucs层将输入的图像经过四路Slice操作形成四路特征层,该做法会导致通路过多,降低硬件并行度。故将其替换成普通的卷积层CBL。普通卷积的操作很大程度上依赖GPU的显存大小以及处理速度。在确保检测精度的前提下可以适当损失一定精度提高检测速度。
将YOLO v5原模型的主干网络中替换为Shufflenet主干网络,Shufflenet主干网络多为混合通道的分组卷积。单一使用分组卷积会导致各个通路的特征在各自的通路中前向传播而互不相交,不适于整体特征的提取与融合。在通道分组之后让通道以一定排列方式组合融合,并进入下一次分组卷积。
特征融合部分,采用CSP1_x和CSP2_x两种模块。这两种模块的前面的卷积层都为下采样的作用,卷积核为3*3,步长为2。CSP1_x模块中间为x个残差块累加,CSP2_x模块中间为x个CBL累加。特征融合部分将主干网络中的不同位置的特征图进行信息融合并送入分类回归网络。分类回归网络使用 GIOU_Loss作为Bounding box的损失函数,使用交叉熵作为分类损失,有效解决边界框不重合的问题。
3)训练网络
采用在ImageNet得到的预训练权重初始化主干网络,使用kaiming正态分布初始化卷积层参数,网络的其余部分采用Xavier初始化,前50代冻结主干网络参数。设置随训练代数呈阶梯下降的学习率,学习率初始设置为0.002,以便网络在训练初期寻求最优解,在训练后期有较好的收敛。batch_size设为 16,最大迭代次数为300个epoch,正则项衰减权重5×e-4,前50代冻结主干网络参数。
将步骤1)中完成预处理的训练集输入到完成初始化的轻量化YOLO v5网络模型中,利用主干网络部分进行特征提取与融合,利用分类和回归网络,得到人物目标的位置、类别和置信度,以及围墙的位置与置信度,将其与真实标签对比得到Loss值。根据Loss值采用SGD(梯度下降)优化器,进行反向传播更新网络参数,直至Loss下降至预设,网络模型训练完成。
4)网络模型验证
对第一步的步骤2)中得到的验证集输入到步骤3)中完成训练的网络模型中,将网络模型输出的检测标签与真实标签对比,得到误识别率为1%,计算其AP值(平均正确率)为94.1%,该网络模型为有效模型,网络模型验证完成。
表1模型验证结果
Images | Labels | Ap | 误识别率 |
1050 | 6481 | 94.1% | 1% |
第三步:利用轻量化YOLO v5网络模型与时空记忆机制模块进行行人位置检测
1)获取初步检测结果
将摄像头捕获到的视频流按帧输入到第二步中完成验证的轻量化YOLO v5 网络模型中,得到视频帧序列图像的检测结果,每一幅图像的检测结果包括人物目标的位置、类别和置信度,以及围墙的位置与置信度,该检测结果为初步检测结果。
2)获取修正的检测结果
将初步检测结果输入到时空记忆机制模块中,时空记忆机制原理如下:
其中Pn+1表示视频序列图像的第n+1帧图像中人物目标的置信度;Δx和Δy 分别表示第n+1帧图像与第i帧图像中最临近人物目标的x轴和y轴的变化值,取值范围均为0~+∞;Pi表示网络模型输出的第i帧图像中的人物目标的置信度。表示向上取整。
上式中,f(x)表达式如下:
该时空记忆机制的实现思想为:下一帧图像中人物目标的置信度由时间序列上的前150帧图像中的人物目标的空间位置变化共同决定。该机制融合人物目标的时间维度和空间维度,预测下一帧图像中的人物目标的置信度。
将时空记忆机制模块输出的预测下一帧图像中的人物目标的置信度替换掉对应帧的初步检测结果中的置信度,得到修正的检测结果。
3)行人位置检测
根据步骤2)中修正的检测结果中检测出的人物目标和围墙(一般认为置信度大于0.5为存在目标),当人物目标的轨迹与设定的围墙警戒线发生交叉或者低于某个阈值时,可判定为翻墙行为或者违规隔墙取物行为。以视频画面的左上角为坐标原点分别向右、向下设置x轴、y轴正方向,建立二维坐标系,围墙的位置由人工给定,围墙警戒线近似为一条直线。xi,yi表示检测到的人物目标在同一坐标系下的坐标。其原理如下:
f(x,y)=Ax+By+C=0
表示围墙警戒线的位置,若
则表明有翻墙嫌疑。若
|f(xi,yi)|<t
则表明有隔墙取物嫌疑。其中xi,yi表示检测到第i帧图像中的人物目标的位置坐标,t表示设定的阈值,A、B、C为人工给定围墙位置时计算得到的常数参数。
本发明提出的行人检测方法误识别率低、模型轻量化和推理速度快,测试结果为:误识别率从7%降低至1%,处理速度从56FPS提升到74FPS。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
本发明未述及之处适用于现有技术。
Claims (4)
1.基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法,其特征在于,该方法包括如下步骤:
第一步:构建训练数据库
1)采集监测地点不同场景的图像,图像采集的场景包括晴天、阴天、雨天和夜晚;根据行人距离摄像头的远近将采集到的图像中的人物目标划分为不同尺寸,其中面积小于32*32像素为小尺寸目标,在32*32像素至96*96像素之间为中尺寸目标,大于96*96像素为大尺寸目标;按以上三种人物目标尺寸1:1:1的数量比挑选出图像,并对挑选出的图像进行数据增强,最后进行图像尺寸统一化操作,获得原始数据集;
2)数据集划分:对步骤1)中得到的原始数据集采用人工的方式添加标签,用矩形框分别标记出图像中的人物目标和围墙,并且按一定数量比例随机将原始数据集中的图像划分训练集和验证集;
第二步:构建轻量化YOLO v5网络模型
1)训练集的预处理:对第一步的步骤2)中得到的训练集进行数据增强;
2)搭建轻量化YOLO v5网络模型
轻量化YOLO v5网络模型为YOLO v5网络模型的改进结构,具体的,为将YOLO v5网络模型的主干网络中顺接的Foucs模块、CBL模块、CSP1_1模块、CBL模块、CSP1_3模块、CBL模块、CBL模块、CSP1_3模块、CBL模块、CBL模块、CBL模块、SPP模块、CBL模块替换成顺接的2个CBL模块、SFB1模块、2个SFB2模块、SFB1模块、7个SFB2模块、SFB1模块、SFB2模块、CBS模块;轻量化YOLO v5网络模型的主干网络部分的输入首先输入到第一个CBL模块中,第二个SFB2模块的输出分别输入到与其顺接的SFB1模块和Neck网络部分的第一个CBL模块,CBS模块的输出输入到YOLO v5网络模型的主干网络中的CSP2_1模块中,轻量化YOLO v5网络模型的其它部分结构与YOLO v5网络模型相同;
3)训练网络
采用在ImageNet得到的预训练权重初始化主干网络,使用kaiming正态分布初始化卷积层参数,网络的其余部分采用Xavier初始化;设置随训练代数呈阶梯下降的学习率,前50代冻结主干网络参数;
将步骤1)中完成预处理的训练集输入到完成初始化的轻量化YOLO v5网络模型中,利用主干网络部分进行特征提取与融合,利用分类和回归网络,得到人物目标的位置、类别和置信度,以及围墙的位置与置信度,将其与真实标签对比得到Loss值;根据Loss值采用SGD优化器,进行反向传播更新网络参数,直至Loss下降至预设,网络模型训练完成;
4)网络模型验证
对第一步的步骤2)中得到的验证集输入到步骤3)中完成训练的网络模型中,将网络模型输出的检测标签与真实标签对比,得到误识别率,当误识别率不大于10%时,保存网络模型当前参数,该网络模型为有效模型;当误识别率大于10%时,调整网络模型的初始参数,重新训练网络直至Loss下降至预设值,且验证集的误识别率不大于10%,保存网络模型当前参数,当前网络模型即为有效模型,网络模型验证完成;
第三步:利用轻量化YOLO v5网络模型与时空记忆机制模块进行行人位置检测
1)获取初步检测结果
将摄像头捕获到的视频流按帧输入到第二步中完成验证的轻量化YOLO v5网络模型中,得到视频的帧序列图像的检测结果,每一幅图像的检测结果包括人物目标的位置、类别和置信度,以及围墙的位置与置信度,该检测结果为初步检测结果;
2)获取修正的检测结果
将初步检测结果输入到时空记忆机制模块中,时空记忆机制原理如下:
其中Pn+1表示视频序列图像的第n+1帧图像中人物目标的置信度;Δx和Δy分别表示第n+1帧图像与第i帧图像中最临近人物目标的x轴和y轴的变化值,取值范围均为0~+∞;Pi表示网络模型输出的第i帧图像中的人物目标的置信度;表示向上取整;
上式中,f(x)表达式如下:
将时空记忆机制模块输出的预测下一帧图像中的人物目标的置信度替换掉对应帧的初步检测结果中的置信度,得到修正的检测结果;
3)行人位置检测
根据步骤2)中修正的检测结果中检测出的人物目标和围墙,当人物目标的轨迹与设定的围墙警戒线发生交叉或者低于某个阈值时,可判定为翻墙行为或者违规隔墙取物行为;以视频画面的左上角为坐标原点分别向右、向下设置x轴、y轴正方向,建立二维坐标系,围墙的位置由人工给定,围墙警戒线近似为一条直线;xi,yi表示检测到的人物目标在同一坐标系下的坐标;其原理如下:
f(x,y)=Ax+By+C=0
表示围墙警戒线的位置,若
则表明有翻墙嫌疑;若
|f(xi,yi)|<t
则表明有隔墙取物嫌疑;其中xi,yi表示检测到第i帧图像中的人物目标的位置坐标,t表示设定的阈值,A、B、C为人工给定围墙位置时计算得到的常数参数。
2.根据权利要求1所述的基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法,其特征在于,第一步的步骤1)中,图像数据增强的方式有镜像、剪裁、平移和缩放。
3.根据权利要求1所述的基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法,其特征在于,第一步的步骤2)中,训练集与验证集中的图像数量比为7:3。
4.根据权利要求1所述的基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法,其特征在于,第二步的步骤1)中,训练集进行数据增强方式为Mosaic数据增强。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210756317.2A CN115116137A (zh) | 2022-06-29 | 2022-06-29 | 基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210756317.2A CN115116137A (zh) | 2022-06-29 | 2022-06-29 | 基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115116137A true CN115116137A (zh) | 2022-09-27 |
Family
ID=83330398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210756317.2A Pending CN115116137A (zh) | 2022-06-29 | 2022-06-29 | 基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115116137A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116129298A (zh) * | 2022-11-15 | 2023-05-16 | 脉得智能科技(无锡)有限公司 | 基于时空记忆网络的甲状腺视频流结节识别系统 |
CN117576488A (zh) * | 2024-01-17 | 2024-02-20 | 海豚乐智科技(成都)有限责任公司 | 一种基于目标图像重建的红外弱小目标检测方法 |
-
2022
- 2022-06-29 CN CN202210756317.2A patent/CN115116137A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116129298A (zh) * | 2022-11-15 | 2023-05-16 | 脉得智能科技(无锡)有限公司 | 基于时空记忆网络的甲状腺视频流结节识别系统 |
CN116129298B (zh) * | 2022-11-15 | 2023-11-24 | 脉得智能科技(无锡)有限公司 | 基于时空记忆网络的甲状腺视频流结节识别系统 |
CN117576488A (zh) * | 2024-01-17 | 2024-02-20 | 海豚乐智科技(成都)有限责任公司 | 一种基于目标图像重建的红外弱小目标检测方法 |
CN117576488B (zh) * | 2024-01-17 | 2024-04-05 | 海豚乐智科技(成都)有限责任公司 | 一种基于目标图像重建的红外弱小目标检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109819208B (zh) | 一种基于人工智能动态监控的密集人群安防监控管理方法 | |
CN110119686B (zh) | 一种基于卷积神经网络的安全帽实时检测方法 | |
CN108388888B (zh) | 一种车辆识别方法、装置和存储介质 | |
CN109166094B (zh) | 一种基于深度学习的绝缘子故障定位识别方法 | |
CN111126325B (zh) | 一种基于视频的智能人员安防识别统计方法 | |
CN103824070B (zh) | 一种基于计算机视觉的快速行人检测方法 | |
CN109376637B (zh) | 基于视频监控图像处理的人数统计系统 | |
CN108985192A (zh) | 一种基于多任务深度卷积神经网络的视频烟雾识别方法 | |
CN115116137A (zh) | 基于轻量化YOLO v5网络模型与时空记忆机制的行人检测方法 | |
CN104320617B (zh) | 一种基于深度学习的全天候视频监控方法 | |
CN112287827A (zh) | 基于智慧灯杆的复杂环境行人口罩佩戴检测方法及系统 | |
CN112464911A (zh) | 基于改进YOLOv3-tiny的交通标志检测与识别方法 | |
CN110232361B (zh) | 基于三维残差稠密网络的人体行为意图识别方法与系统 | |
CN111597920B (zh) | 一种自然场景下的全卷积单阶段的人体实例分割方法 | |
CN110532937B (zh) | 基于识别模型与分类模型进行列车前向目标精准识别的方法 | |
CN109272487A (zh) | 一种基于视频的公共区域内人群的数量统计方法 | |
CN111414807A (zh) | 一种基于yolo技术的潮水识别与危机预警方法 | |
CN115346169B (zh) | 一种睡岗行为检测方法及系统 | |
CN109919223B (zh) | 基于深度神经网络的目标检测方法及装置 | |
CN114495010A (zh) | 一种基于多特征学习的跨模态行人重识别方法及系统 | |
CN115294519A (zh) | 一种基于轻量化网络的异常事件检测及预警方法 | |
CN115049948A (zh) | 基于神经网络模型的无人机巡检方法、装置及相关设备 | |
CN115690730A (zh) | 基于单分类和异常生成的高铁接触网异物检测方法及系统 | |
CN113486712B (zh) | 一种基于深度学习的多人脸识别方法、系统和介质 | |
CN109359545B (zh) | 复杂低空环境下一种协同监视方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |