分类筛选
分类筛选:

检测算法毕业论文怎么写 和基于改进YOLOv2网络的遗留物检测算法类论文写作技巧范文

版权:原创标记原创 主题:检测算法范文 类别:职称论文 2024-04-05

《基于改进YOLOv2网络的遗留物检测算法》

本文是检测算法方面论文写作技巧范文与YOLOv2和YOLOv2网络和算法有关论文写作技巧范文。

 摘 要:为了提高在复杂环境下检测遗留物体的准确度和实时性,提出了一种基于改进YOLOv2网络的遗留物检测算法.该算法在YOLOv2网络结构基础上结合残差网络,将浅层和深层特征多次融合,在基本不增加原有模型计算量和时间的情况下,提高了监控画面中检测小体积遗留物体的性能;同时以YOLOv2目标检测为基础,排除驻留行人和动物等非物体目标的干扰,并对目标筛选得到的可疑目标跟踪计时,停留时间超过阈值的目标标记为遗留物.以PETS2006和iGLIDS作为数据集进行实验,结果表明:该算法在提高遗留物检测准确度的同时缩短了处理时间,对人流密集的复杂环境抗干扰能力强.

关键词:YOLOv2网络;遗留物检测;残差网络

中图分类号:TS195.644       文献标志码:A       文章编号:1673G3851(2018)05G0325G08

0 引 言

遗留物是指由运动主体携带进监控场景中,并在场景中保持静止超过一定时间阈值的物体[1].遗留物检测是公共安全领域中智能视频监控的重要部分,并且与我们的生活息息相关.在公共场所下,视频监控下物品遗留现象发生普遍,尤其是在商场、学校、地铁站等人流密集环境下.目前已有学者提出许多不同的遗留物检测算法.张超等[2]通过建立不同更新频率的高斯背景模型获取场景中静止物体,根据物体的颜色轮廓以及先验知识来进行遗留物分析,但是该方法没有考虑场景中行人的干扰,误检率大.Tripathi等[3]使用背景差分法提取前景对象,检测连续帧前景对象的轮廓特征以得到静止目标,通过基于边缘的物体识别方法排除驻留行人得到遗留物.但是这种算法很容易将行人肢体和其他运动主体误检为遗留物目标.叶立仁等[4]利用局部更新的混合高斯模型与改进的三帧差分法获取前景目标,通过HOG 行人检测排除驻留行人得到遗留物.但是HOG 行人检测的处理时间相对较长,影响了遗留物检测的实时性.Lin等[5]结合短期和长期背景模型提取背景对象,采用基于代码模式的时态转换识别静态目标区域,通过分析遗留物主人的回溯轨迹判断候选区域是否含有遗留物,但是这种方法对于行人拥挤的复杂环境下的抗干扰能力不强.

卷积神经网络具有提取图像高层特征的优势[6],在图像分类研究的基础上,该算法在目标检测领域取得了突破性进展.Redmon等[7]在YOLO 算法基础上优化模型结构提出了YOLOv2算法,该算法的检测速度和准确率都达到了令人满意的效果.在检测速度为67fps情况下,YOLOv2在VOC2007数据集上平均准确率可以达到76.8%[8].目标检测与遗留物检测的前景目标提取有很多相似之处,都需要在场景中快速地发现目标物体.复杂环境下背景差分提取目标会导致遗留物检测较高的误检率[9],同时克服场景中行人干扰大大降低了实时性[10G11].因此,本文采用取得最佳检测效果的YOLOv2网络,代替传统的前景目标提取进行遗留物检测.

本文提出了一种基于改进YOLOv2网络的遗留物检测算法.将YOLOv2网络用于遗留物检测,能够排除复杂环境下驻留行人和动物等指定非物体目标的干扰,以满足智能监控系统处理的实时性和准确性要求;在YOLOv2网络结构基础上引入深度残差网络,对浅层低分辨特征和深层特征融合,在基本不增加原有模型计算量和时间情况下,提高检测小体积遗留物的性能.

1 遗留物检测算法

1.1 YOLOv2网络及其改进

YOLOv2网络结构参照SSD和YOLO 的网络结构,以DarknetG19(包含19个卷积层、5个最大值池化层)为基础模型进行特征提取,YOLOv2检测网络如图1所示.与YOLO 在结构上相比,YOLOv2将分类网络改成检测网络,去除了原网络最后一个卷积层,增加了三个尺寸为3×3,通道数为1024的卷积层,并且在每个卷积层后面跟一个尺寸1×1的卷积层,输出维度是检测所需数量;YOLOv2采用固定框(Anchorboxes)代替全连接层来预测目标框(Boundingboxes),利用kGmeans算法[12]对VOC2007+2012数据集的目标框进行聚类分析,自动选择anchor最佳的大小和数量.同时移除一个池化层来使卷积层输出分辨率提高,将网络输入尺寸由448×448改为416×416,使得特征图只有一个中心,较大的物品更有可能出现在图像中心.同时卷积层降采样参数factor设为32,使得输入卷积网络分辨率416×416图像最后一层获取13×13特征图.YOLOv2整个网络均为卷积操作,很好地保留了空间信息,让卷积特征图每个特征点和原图中的每个网格(cell)对应.FasterRGCNN 和SSD 在不同层次的特征图上运行RPN 来获得多尺度的适应性,而YOLOv2通过添加一个转移层(Passthroughlayer)连接高低分辨率特征图,将上一层获取的26×26×512的特征图转化为13×13×2048的特征图,与原来的深层特征相连接.

YOLOv2网络对13×13卷积特征图中的每个网格预测5个目标框,同时每一个目标框预测5个值,分别为tx,ty,tw ,th,to,其中前四个是坐标,to 是置信度.YOLOv2通过相对于网格坐标来预测目标框的中心位置,如图2所示.如果网格距离图像左下角的边距为(cx,cy)以及该网格对应预定固定框的宽高分别为(pw ,ph),那么预测值可以表示为:

其中:σ 定义为sigmoid激活函数,将函数限定[0,1],用来预测相对于网络中心的偏移;σ(tx)是预测目标框的中心相对网络左上角的横坐标,σ(ty)是纵坐标;σ(to)是预测目标框的置信值.

YOLOv2网络只包括卷积层和池化层,能够随时改变输入图像分辨率.在训练时每隔十轮便改变模型的输入分辨率继续训练,使模型适应不同的输入分辨率,同时增强对不同分辨率图像的鲁棒性.模型对不同分辨率的处理速度不同,分辨率小的处理速度更快,因此YOLOv2网络能够根据需求调节准确率和处理速度.在分辨率较低情况下,YOLOv2不仅在准确率上与FastRGCNN 持平,同时处理速度可以达到90fps.

YOLOv2在目标检测方面取得了很好的效果,但其并不完全适用检测视频监控画面中小体积遗留物目标.对于小目标检测,往往更依赖浅层特征,但原网络结构中前面的19个卷积层和4个池化层进行特征提取后,高分辨率的浅层特征几乎不再利用,导致对应特征图上的特征往往难以得到充分训练.深度残差网络(ResNets)采用残差块作为网络的基本组成部分,在原始卷积层外增加捷径通道构成残差块结构,残差块示意图如图3所示,假设残差块输入为x,要拟合的函数映射为H (x),定义另外一个残差映射F(x)=H (x)-x,则原始映射函数H (x)被表示为H (x)=F(x)+x.ResNets利用残差块将网络对H (x)的学习变为对F(x)的学习,同时残差映射F(x)的优化要比原始映射H (x)要简单.ResNets通过捷径跳跃绕过一些层的连接,使高低层特征相加融合,将浅层的误差向上一层传播,浅层的高分辨率特征得到更充分训练,在很大程度上解决DCNN 随着深度增加而带来的梯度消失现象[13],提高了小目标训练精度的效果.

对于卷积神经网络,不同深度对应着不同层次的语义特征,浅层网络分辨率高,获得更多细节特征,深度网络分辨率低,获得更多的是语义特征[14].本文在YOLOv2网络结构基础上作出改进,结合ResNets将网络前面的19个卷积层和4个池化层,通过增加额外的跨层连接改成残差网络,对浅层高分辨和深层低分辨率特征信息进行不断融合,构成如图4所示的YOLOv2GA 网络.YOLOv2GA 网络加强了不同分辨率、不同语义强度的高低层特征融合,图5为YOLOv2GA 网络中的残差网络,为减少训练过程中的计算量和资源空间,选择原网络中池化处理后得到的特征图进行融合,将第11层与第14层特征堆叠到不同通道,其中在第11层提取第3层特征图卷积池化处理后得到第14层26×26特征图,从而将浅层分辨率104×104特征图与低分辨率26×26的特征图相融合.同时增加额外的跨层连接网络第22层与第25层,其中在第23层提取第8层特征图卷积池化处理后得到第25层13×13特征图,从而将浅层分辨率52×52特征图与低分辨率13×13的特征图相融合,最后将融合后的特征图再经卷积池化处理得到13×13×1024特征图.训练过程中高层的梯度通过相加融合向浅层传播,减缓了YOLOv2网络层数过多而造成的梯度消失现象,同时使得浅层特征图上的特征得到充分利用,在基本不增加原有模型计算量和时间情况下,提高了小目标物体检测的性能.两次浅层和深层特征融合分别表示为:

1.2 遗留物分析

视频监控画面经过YOLOv2GA 实时检测后,获取每帧图像检测到的目标坐标(x,y,w,h)和类别值type.复杂场景中经常有行人、动物等运动目标驻留和静止行人肢体摆动,检测时容易将其误检为遗留物,因此对于检测到的目标,根据目标类别值过滤运动目标,排除运动目标对检测的干扰.本文采用比较两个目标的类别值和重叠度IOU,将每帧过滤后的目标依次筛选划分到背景、可疑、遗留物队列,并定义队列deque<objInfo,pair<time,objStatus?其中:objInfo表示目标信息,即目标坐标和类别;time表示对目标统计的时间,即目标静止时间timeStatic和目标消失时间timeLost;objStatus 表示目标状态,即背景、可疑、遗留物状态.

图6中:npre表示当前帧检测到的目标数量,nbrg和nsus分别表示上一帧背景、可疑队列中目标的数量.如图6所示,在目标类别值相同情况下,依次比较当前帧目标分别与背景、可疑队列中的目标是否重合,即比较两个目标重心在x 轴或y 轴方向上的距离与两个目标的长或宽一半相加的距离.若两个目标不重合,则重叠度为0,判断当前帧目标为新可疑目标,状态值记为可疑并存入可疑队列.两个目标重叠情况下按式(4)计算重叠度:

当前帧目标与背景、可疑队列目标重叠度比较结果按照式(5)进行筛选.若IOUi,j<Tiou ,则表示当前帧的第j 个目标是背景队列的目标,继续比较当前帧第j+1个目标.若IOUi,j <Tiou ,IOUk,j >Tiou ,说明当前帧第j 个目标与上一帧可疑队列的第k 个目标对应,且认为该目标依然保持静止,对timeStatic 值加1,timeLost 值清零;若IOUi,j <Tiou ,IOUk,j<Tiou ,则认为当前帧第j 个目标是新检测到的目标,存入可疑队列,状态值记为可疑.同时也说明上一帧可疑队列第k 个目标物体发生移动或被遮挡,对timeLost值加1,timeStatic 值清零.

得到划分后的背景、可疑队列,将可疑队列中timeStatic 值大于静止时间阈值的目标,对其再次目标类别值过滤,以防漏检现象.若非运动目标,将其状态值记为遗留物存入遗留物队列.同时对遗留物队列中的目标消失计时,若timeLost 值超过消失时间阈值Tl,删除其目标数据.

1.3 遗留物检测算法与实现

遗留物检测算法的步骤为:

a)对720p视频帧进行YOLOv2GA 目标检测,检测得到当前帧num 个目标的坐标和类别值.b)根据目标类别值过滤行人、动物等指定非物体目标.计算当前帧过滤后目标与背景、可疑队列目标的重叠度IOU.

c)比较两个目标的类别值和重叠度,将过滤后的目标筛选划分到背景、可疑队列.

d)对可疑队列中目标跟踪计时,若目标timeStatic值大于阈值Ts,则将其状态值记为遗留物,存入遗留队列中;否则转到步骤e).

e)对遗留物队列中的目标消失计时,若目标timeLost值超过Tl,则将删除其目标数据.

实现本文算法的伪代码为:

2 实验结果与分析

本文实验环境为:IntelCoreCPUi7G4790k4.00GHz,32G 内存,NvidiaGeforeceGTX1080,Ubuntu16.04,64位操作系统,使用Darknet框架.2.1 YOLOv2GA 网络实验结果与分析

实验采用VOC 数据集(VOC2007+2012)和COCO数据集来训练YOLOv2GA 网络,在初始学习率为0.001条件下训练160次,训练至60次和90次的时候,学习率变为原来的1/10.网络调整学习率的策略policy为STEPS,冲量momentu系数设置为0.9;每次迭代(batch)训练的图像数量为64,最大迭代次数为210000;在迭代次数为100、80000、120000次时学习率发生变化(steps=100,80000,120000),学习率变化的比率为10.0、0.1、0.1,与steps中的参数对应.

图7为选取迭代次数0到9×103,YOLOv2与YOLOv2GA 网络的loss值随着迭代次数变化.loss值表示网络计算预测的目标框boxes与标定框groundtruth之间的误差,loss值越低,表明该网络检测目标准确度越高.在两种网络网络迭代200次内,loss值快速大幅度下降,之后随着迭代次数增加缓慢下降趋于平稳.总体上YOLOv2GA 网络的loss值低于YOLOv2网络,表明本文提出的YOLOv2GA网络的检测目标准确度要高于原网络.图8、图9分别表示YOLOv2和YOLOv2GA 网络对存在小目标的图像检测效果,YOLOv2GA 网络基本检测出图像中存在的小目标物体,YOLOv2网络对检测小目标物体漏检率较大,表明本文提出的YOLOv2GA 网络通过将浅层高分辨率特征与深层特征融合,提高了检测小目标物体的准确度.

2.2 遗留物算法实验结果与分析

为了验证本文算法在实际复杂环境下的效果,本文采用PETS2006数据集[15]、iGLIDS数据集[16]和自制数据集进行测试.由于本文算法采用单摄像头进行实验测试,实验选取数据集中同一个相机的视图序列帧进行测试.将重叠率阈值设置为70%,即目标类别值相同情况下,重叠率大于70%的两个目标判定为同一目标.将可疑队列中静止时间达到4s的可疑目标判断为遗留物,对消失时间超过3s的物体作出消失处理.由于视频帧率为25fps,因此静止时间阈值Ts 为100帧,消失时间阈值Tl 为75帧.

图10、图11分别是本文算法对PETS2006和iGLIDS序列帧的检测结果.在人流拥挤的公共场所,本文算法能有效的排除场景中行人带来的干扰,场景中遗留的行李箱和无人看管的包都能被准确检测出,并且被检测出的遗留物通过矩形框标记出作为报警的依据.

本文算法对PETS2006和iGLIDS数据集不同序列的检测结果如表1所示.PETS2006序列中的场景相对比较简单,没有太多的遮挡和和行人驻留,算法对序列S1GS4检测的误检率为0.iGLIDS数据集序列场景复杂度由简单到难,算法通过YOLOv2GA 检测有效排除了场景中行人肢体移动和部分遮挡产生的干扰,依次检测出场景中放置的多个遗留物.实验结果充分表明了本文算法对复杂环境的抗干扰能力强.

本文还对自制数据集的视频序列进行测试,测试结果如图12.图12(a)演示了本文算法将放置场景中不同位置的遗留物依次检测出.图12(b)演示了从存在少数行人驻留到人员流动密集的场景下,本文算法均能克服存在的干扰影响,在保证准确率的同时,快速标记出被放置的遗留物.

为了进一步验证本文算法在复杂环境下的准确度和实时性,选取DAOCS(Detectingabandonedobjectsincrowedscenes)算法[17]、YOLOv2GAOD(YOLOv2Gabandoneddetectingobjects)算法,与本文提出的算法进行对比,实验结果如图13和图14所示.

从图13和图14可以看出,三种算法对iGLIDS两组序列帧检测结果对比.在人流拥挤、行人驻留较多的复杂场景下,DAOCS算法能够检测出场景中放置的遗留物,但是采用的HOG 行人检测对场景中行人的肢体移动和部分遮挡产生的干扰难以排除,导致了遗留物较高的误检率.YOLOv2GAOD算法跟本文算法相比较,YOLOv2GAOD 算法在两组检测中都漏检了场景中体积较小的遗留物.本文算法提高了对场景中小物体检测准确度,从而降低了对遗留物检测的误检率.

DAOCS算法和本文算法在视频帧位置上的处理时间如图15所示.由图15可知,本文算法对测试视频每帧图像的处理时间基本上小于38ms.同时相比DAOCS算法,处理时间明显减少.本文iGLIDS测试视频的帧率为25fps,采用本文算法对每帧视频图像的平均处理时间为23ms,可以满足智能监控系统处理的实时性.

3 结 语

本文构建了YOLOv2GA 网络结构,该网络可以更好地适应遗留物检测的特点,提高检测体积较小遗留物性能.同时以YOLOv2目标检测为基础,对目标筛得到的可疑目标跟踪计时后,及时检测出场景中放置的遗留物,对场景中存在的多个遗留物体进行标记.通过以PETS2006和iGLIDS作为数据集实验证明,本文算法能很好地适用于不同复杂度的场景,同时能有效克服复杂环境中存在的干扰影响,在很大程度上保证了遗留物检测的实时性和准确性.但是目前本文算法的部分阈值参数需人工对复杂度不同的环境做出调整,今后会对算法阈值参数的自适应取值问题深入研究,以实现对不同复杂度环境的自适应能力.

检测算法论文参考资料:

毕业论文抄袭率检测

论文查重检测

paperfree论文检测

论文抄袭率检测

论文检测

论文字数检测

归纳总结:该文是一篇大学硕士与检测算法本科检测算法毕业论文开题报告范文和相关优秀学术职称论文参考文献资料,关于免费教你怎么写YOLOv2和YOLOv2网络和算法方面论文范文。

和你相关的