本发明属于图像处理技术领域,特别涉及一种面向智慧工地的目标检测方法及系统。
背景技术:
由于近年来建筑工地安全事故频发,工地现场管理难度变大,人工检测工地上安全性行为已经不能满足工地安全管理的严峻形势。在当前的智慧工地应用中,目标检测方法可以大大提高被测目标物体的检测准确度,然而当前的一些目标检测方法无论是在检测的实时性和精度上并不能很好地应用在环境复杂的施工工地场景下,反而需要消耗大量的硬件资源来弥补智能算法的不足,这就导致了智能检测方法的低效率,低成效以及高消耗。
目前在智慧工地检测方法中,为实现施工工地现场目标的快速、准确检测,很多工地会采用基于yolov3-tiny或者改进的yolov3-tiny目标检测算法对工地人员目标进行检测,这种方法具有不错的检测精度以及可以满足实时视频的需求。yolov3-tiny算法可以在提高实时检测的速度的前提下不会损失较高的准确率,能够及时检测施工现场是否存在安全性问题,但是对于工地上出现的多尺度远距离检测目标时,还是会出现目标漏检的情况。还有基于yolov3算法或者改进的yolov3安全帽检测方法对未正确佩戴安全帽人员进行跟踪计数,这个方法虽然准确率很高,但是如果要应用在对实时性检测要求较高的施工工地现场则需要付出很大的硬件代价以及消耗巨大算力。
当前对视频图片主要的预处理方法采用传统混合高斯模型对所采集的视频流进行背景建模,采用对背景实时动态更新的差分法或改进的vibes算法提取前景图像,通过图像空洞填充方法来解决像素点缺失以及区域性噪声抑制等问题。由于工地现场的环境噪声会对采集到的图像质量影响很大,目前主要采用中值滤波对图像进行滤波降噪,并且通过使用形态学分水岭方法对图像中的像素操作从而提取感兴趣区域的特征分量,为之后分析图像特征起到不可或缺的作用。
现有的针对智慧工地进行图片预处理的方法中,图像前景提取、图像空洞填充、图像滤波等方法对光线一致的图片采用相同的方法进行图像预处理时产生较为稳定的处理结果,但是对于光照差距较大、工地图片特征较为复杂、目标物体大小不一致以及可见度差异较大等图像信息,仍然采用传统的图像预处理方法的话,并不能产生理想的处理结果。目前智慧工地管理系统中往往采用单一深度学习算法在工地上进行目标检测,yolov3-tiny算法对工地上危险行为进行检测和报警,在实时场景中检测速度较好,但是牺牲一些识别精度;改进的yolov3对工地上是否正确佩戴安全帽进行检测和跟踪,但是系统功能较单一。fasterr-cnn、spp-net等模型也应用在智慧工地的目标检测的任务上,但其实时检测速度较慢。
这些算法使用广泛,但是由于他们实时性较低、功能单一,无法保证智慧工地管理系统的完善性和高效性。
技术实现要素:
本发明的目的在于提供一种面向智慧工地的目标检测方法及系统,以解决上述现有技术在工地中进行目标检测时所存在的技术问题。
为了实现上述目的,本发明采用如下技术方案:
本发明第一方面,提供一种面向智慧工地的目标检测方法,包括:
采集工地现场视频流文件,进行标准化处理,获得标准化处理后的图片;
将标准化处理后的图片输入预先训练好的改进的yolov3-tiny目标检测网络进行目标检测,输出识别结果。
本发明进一步的改进在于:采集工地现场视频流文件,进行标准化处理,获得标准化处理后的图片,具体包括:
将工地现场视频流文件,进行分帧处理,剔除视频流文件分帧处理后无目标的图片,并且将图片大小统一;然后对统一大小的图片进行标注处理,并生成xml文件;xml文件内包含图片名称、图片大小、目标类别以及边界框位置信息。
本发明进一步的改进在于:所述改进的yolov3-tiny目标检测网络包括主干网络和多尺度特征金字塔网络;
所述主干网络为将yolov3-tiny网络中resnet层替换为i-resnet层后获得的网络;
yolov3-tiny网络中最后三个特征层连接多尺度特征金字塔网络。
本发明进一步的改进在于:i-resnet网络包括:
n个第一3*3卷积层,每个第一3*3卷积层后连接bn层和leaky层;
f个1*1卷积层,每个1*1卷积层后连接bn层和leaky层;
n个第二3*3卷积层,每个第二3*3卷积层后连接bn层和leaky层。
本发明进一步的改进在于:m是特征层个数,m是根据卷积核和输出通道数确定的,m=输出通道数=卷积核个数;n代表进行第一3*3卷积的次数,f是1*1卷积的次数。
本发明进一步的改进在于:所述主干网络具体为darknet53特征提取网络。
本发明进一步的改进在于:预先训练好的改进的yolov3-tiny目标检测网络通过迁移学习方法训练获得。
本发明进一步的改进在于:预先训练好的改进的yolov3-tiny目标检测网络具体通过以下步骤训练获得:
采用迁移学习方法,应用训练集
然后把迁移学习得到的初始模型参数迁移到改进的yolov3-tiny模型中,进行二次训练;训练后通过测试集
本发明进一步的改进在于:训练集
第二方面,本发明还提供一种面向智慧工地的目标检测系统,所述系统包括:处理器以及与所述处理器耦合的存储器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现所述面向智慧工地的目标检测方法的方法步骤。
相对于现有技术,本发明具有以下有益效果:
本发明首先在网络结构方面,根据施工工地场景下目标的特点,对浅层信息进行强化重构,以降低小目标的漏检率,同时引入改进的残差网络增加网络深度和降低网络参数计算量,并且采用金字塔网络进行多尺度特征融合,以兼顾图像中大小工地目标的检测性能。
进一步的,在网络训练中,利用迁移学习策略进行网络模型的训练,以克服工地上目标图像样本集有限的问题;最后在视频检测中,利用帧间图像结构相似度进行选择性网络前向计算,以提高视频帧检测速率。
通过对施工现场不同时间段、不同天气情况、不同可见度以及不同目标物体大小情况下视频流文件的捕捉,对其进行分帧处理并剔除冗余数据,分别采集到上述多种情况下的图片数据,最终保证实时检测的准确性,并通过使用gpu可以保证目标检测算法在服务器运行中的运行效率。本发明充分优化yolov3-tiny算法优势,为智慧工地检测和管理系统提供完善的性能保证。
附图说明
构成本申请的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明一种面向智慧工地的目标检测方法的流程示意图;
图2为改进残差层网络块示意图;
图3为改进的残差层网络框架示意图;
图4为本发明一种面向智慧工地管理系统的目标检测系统的结构框图。
具体实施方式
下面将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
以下详细说明均是示例性的说明,旨在对本发明提供进一步的详细说明。除非另有指明,本发明所采用的所有技术术语与本申请所属领域的一般技术人员的通常理解的含义相同。本发明所使用的术语仅是为了描述具体实施方式,而并非意图限制根据本发明的示例性实施方式。
实施例1
请参阅图1至图3所示,本发明提供一种面向智慧工地的目标检测方法,包括以下步骤:
s1、数据集准备
s1.1、数据采集
采集工地现场视频流文件:海量收集不同时间段,不同日期,不同天气状况,以及不同可见度多种情况下的视频文件,其中包含人员佩戴安全安全帽以及未佩戴安全帽、是工地员工以及非工地员工等视频样本。
s1.2、数据标准化处理
将步骤1.1获得的工地现场视频流文件,在tensorflow算法开发框架下采用ffmpeg科学包进行分帧处理,剔除视频流文件分帧处理后无目标的图片,并且将图片大小统一在原图长宽(1920*1080)的基础上各缩减尺寸至原来的一半(960*540),获得标准化处理后的图片,用于训练数据。
s1.3、数据集制作
采用labelimg标注软件对步骤1.2标准化处理之后的图片进行标注处理,并生成xml文件。xml文件内包含图片名称、图片大小、目标类别以及边界框位置信息。其中,目标类别分为两类,标记为“safetyhelmet”以及“nosafetyhelmet”。将所标注的图片目标物体所在的位置记为
s2、搭建改进的yolov3-tiny目标检测网络
工地目标视频检测面临的一个问题是:在保证大目标高精度检测的同时,易出现小目标具有较高的漏检率。为此本发明首先对工地目标在yolo网络下提取的特征进行了可视化研究。发现其特征提取部分会产生很多冗余的特征信息,并且随着网络层数的逐渐加深,小目标特征不再存在。显然,对于工地上小目标的检测,既需要足够多的浅层特征图(featuremap)以提高其检测精度,又需要足够多的语义信息以区分目标和背景特征。本发明利用重构方法,在网络的特征提取部分,加强了对输入图像浅层特征信息的提取与重构利用。以分辨率为416×416像素大小的输入图片为例,在darknet平台下,利用yolov3-tiny网络模型,用已训练好的权重对工地上的测试集进行测试,对卷积网络逐层提取特征图,分别将conv2、conv3、conv4层的感受野进行了可视化。conv2层包含了更多的工地上小目标特征信息,包含较多的边缘、纹理信息。conv3层包含的小目标特征较少,而conv4包含了太多复杂背景特征,对目标检测会产生较大的干扰,且其感受野最大。可见,浅的卷积层对小目标比较敏感,更能提取小目标的形状、纹理等特征,故适当增加浅层网络能更好的保留小目标的有效信息。为了更有效的提取浅层特征,且充分利用上下层之间的语义信息,并增强对conv2层语义信息的提取效果,在图2中,将yolov3-tiny的maxpooling2层改为con-v3层,增加卷积层conv4层,卷积步长为1,不改变特征图尺寸,以便更好的提取conv4层特征,增加特征通道维度,在conv4层后增加最大池化层,用以改变特征图的尺寸。
为了实现在减少卷积层计算量的同时,增加网络深度以提高检测精度,本发明采用resnet提出的残差单元思想,在网络结构中增加了3*3卷积层、1*1卷积层和3*3卷积层网络块。其中第一个3*3卷积层的作用是提取特征;1*1卷积层是一个映射层,可以将输入的特征图映射到较低维度的张量,因为当输入和输出的通道数很大时,卷积核参数会增加很多,而加入1*1卷积层后可以降低输入通道数,由此卷积核参数以及运算复杂度也就降下来了。第二个3*3卷积层的步长为1,并增加了卷积核,故能够提取更多的特征。总之,该网络块结构不仅能增加网络的深度,提高检测精度,还能使网络计算参数减少,网络也更加轻量化,有利于实时性实现。
网络低层的目标语义信息比较少,但是目标位置信息准确;而网络高层的目标语义信息丰富,但是目标位置信息粗略。为了在工地目标检测中,能同时以较高精度检测大目标和小目标,本发明采用构造多尺度特征金字塔(fpn)的策略,通过网络连接的简单改变,在基本不增加原有模型计算量下,可大幅度提升目标检测的性能。多尺度特征金字塔可以将高层的语义信息与浅层的细节信息相结合,分别在不同层进行预测,在一定程度上可以平衡不同尺寸的目标,而且可以在不同的层上面输出对应的目标,不需要经过所有的层运算才输出对应的目标,起到一定的加速作用。本发明采用的改进网络结构中,利用fpn设置了三个yolo层进行预测,分别输出12*12、24*24、48*48三个预测尺度的特征,用于工地目标的回归检测。并且在每个预测尺度上,设有三个预设边界框(anchorbox),即每个网格预先定义三个不同尺寸、不同形状的边界框,然后从这些预先设定的边界框中找到与真实边界框误差最小的框,这样不仅能提高检测速率,而且还可以处理两个对象出现在同一个网格中的问题。
请参阅图2所示,本发明所搭建的改进的yolov3-tiny目标检测网络的主干网络是darknet53特征提取网络,本发明将darknet53特征提取网络中的resnet网络替换为i-resnet网络。
darknet53特征提取网络最后3层特征图,不仅在每个特征图上分别独立做预测,同时通过将小特征图上采样到与大的特征图相同大小,然后与大的特征图拼接做进一步预测(这就是特征金字塔的意思,全称为featurepyramidnetworks(fpn))。而yolov3-tiny主要用于对速度要求较高的速度,其实就是在yolov3的基础上去掉了一些特征层,只保留了2个独立预测分支。
本发明为了追求速度,采用的是改进的yolov3-tiny网络,但是又希望在此基础上提高检测的精度,在yolov3-tiny的主干网络上增加了i-resnet网络层,而i-resnet层是在resnet基础上进行的改进,而改进的部分就是在网络结构中增加了3*3卷积层、1*1卷积层和3*3卷积层网络块。图1的网络层模块就是图2中i-resnet的模块化。
请参阅图1和图2所示,i-resnet网络包括n个3*3卷积层,每个3*3卷积层后连接bn层和leaky层;f个1*1卷积层,每个1*1卷积层后连接bn层和leaky层;n个3*3卷积层,每个3*3卷积层后连接bn层和leaky层。图1中,m是特征层,它的个数是根据卷积核和输出通道数确定的,即特征层=输出通道数=卷积核个数,是网络中可以自己配置的参数。n代表进行3*3卷积的次数,可根据需要的网络深度设置。f是1*1卷积的次数。
darknet53特征提取网络最后三个特征层连接多尺度特征金字塔网络fpn,构成最终的改进的yolov3-tiny目标检测网络,最终输出3个预测结果。
s3、对改进的yolov3-tiny目标检测网络进行训练
将步骤1获得的训练集
训练过程:
s3.1、采用安全帽检测的训练集
s3.2、采用迁移学习方法,应用训练集
s3.3、然后把迁移学习得到的初始模型参数迁移到改进的yolov3-tiny模型中,进行二次训练;训练后通过测试集
s4、目标检测
采集工地现场视频流文件,进行标准化处理,获得标准化处理后的图片;将标准化处理后的图片,输入s3训练好的改进的yolov3-tiny目标检测网络进行目标检测,输出识别结果;图片中正常佩戴安全帽的人员通过绿框显示;未正常佩戴安全帽的人员红框显示并报警。
实验结果表明,本发明检测方法可以在不损失检测速度的前提下,较为准确地检测工地施工现场的目标,在精度precision,召回率recall,交并比iou,以及帧率fps上都有良好的表现,可以满足施工工地现场对检测精度和速度的要求。
表1
实施例2
请参阅图4所示,本发明提供一种面向智慧工地的目标检测系统,应用于智慧工地目标检测,所述系统包括:处理器以及与所述处理器耦合的存储器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现如实施例1所述的方法步骤。
本发明提出新的网络构建方法,根据施工工地现场被测目标的特点,对浅层信息进行强化重构,从而降低工地现场远距离小目标的漏检率;引入改进的残差网络增加网络深度和降低网络参数计算量,并且采用金字塔网络进行多尺度特征融合,以兼顾图像中大小被测目标的检测性能;在本发明的训练方法中,利用迁移学习策略进行网络模型的训练,以克服工地上被测图像样本集有限的问题;最后在工地的实时视频检测中,利用帧间图像结构相似度进行选择性网络前向计算,以提高视频帧检测速率。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
1.面向智慧工地的目标检测方法,其特征在于,包括:
采集工地现场视频流文件,进行标准化处理,获得标准化处理后的图片;
将标准化处理后的图片输入预先训练好的改进的yolov3-tiny目标检测网络进行目标检测,输出识别结果。
2.根据权利要求1所述的面向智慧工地的目标检测方法,其特征在于,采集工地现场视频流文件,进行标准化处理,获得标准化处理后的图片,具体包括:
将工地现场视频流文件,进行分帧处理,剔除视频流文件分帧处理后无目标的图片,并且将图片大小统一;然后对统一大小的图片进行标注处理,并生成xml文件;xml文件内包含图片名称、图片大小、目标类别以及边界框位置信息。
3.根据权利要求1所述的面向智慧工地的目标检测方法,其特征在于,所述改进的yolov3-tiny目标检测网络包括主干网络和多尺度特征金字塔网络;
所述主干网络为将yolov3-tiny网络中resnet层替换为i-resnet层后获得的网络;
yolov3-tiny网络中最后三个特征层连接多尺度特征金字塔网络。
4.根据权利要求3所述的面向智慧工地的目标检测方法,其特征在于,i-resnet网络包括:
n个第一3*3卷积层,每个第一3*3卷积层后连接bn层和leaky层;
f个1*1卷积层,每个1*1卷积层后连接bn层和leaky层;
n个第二3*3卷积层,每个第二3*3卷积层后连接bn层和leaky层。
5.根据权利要求4所述的面向智慧工地的目标检测方法,其特征在于,m是特征层个数,m是根据卷积核和输出通道数确定的,m=输出通道数=卷积核个数;n代表进行第一3*3卷积的次数,f是1*1卷积的次数。
6.根据权利要求3所述的面向智慧工地的目标检测方法,其特征在于,所述主干网络具体为darknet53特征提取网络。
7.根据权利要求1所述的面向智慧工地的目标检测方法,其特征在于,预先训练好的改进的yolov3-tiny目标检测网络通过迁移学习方法训练获得。
8.根据权利要求1所述的面向智慧工地的目标检测方法,其特征在于,预先训练好的改进的yolov3-tiny目标检测网络具体通过以下步骤训练获得:
采用迁移学习方法,应用训练集
然后把迁移学习得到的初始模型参数迁移到改进的yolov3-tiny模型中,进行二次训练;训练后通过测试集
9.根据权利要求8所述的面向智慧工地的目标检测方法,其特征在于,训练集
10.面向智慧工地的目标检测系统,其特征在于,所述系统包括:处理器以及与所述处理器耦合的存储器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至9中任一项所述面向智慧工地的目标检测方法的方法步骤。
技术总结