灭火器位置检测方法、装置、设备及存储介质与流程

文档序号:25424301发布日期:2021-06-11 21:37阅读:169来源:国知局
灭火器位置检测方法、装置、设备及存储介质与流程

本发明涉及图像识别处理技术领域,特别是涉及一种灭火器位置检测方法、装置、设备及存储介质。



背景技术:

灭火器在固定位置摆放是有要求的,各个分拨场地需要根据实际情况合理的放置灭火器于适当的位置。目前而言,快递分拨中心管理并没有充分利用摄像头的监督作用,更多的是依靠安保组进行管理,安保组不能做到全方位、全时段监控,因此有必要充分利用安装的摄像头进行分析,让摄像头可以实现自动化监控灭火器。



技术实现要素:

本发明所要解决的技术问题是提供一种灭火器位置检测方法、装置、设备及存储介质,实现全方位、全时段监控。

本发明解决其技术问题所采用的技术方案是:提供一种灭火器位置检测方法,包括以下步骤:

(1)获取多个场景图像;

(2)对所述多个场景图像进行标注得到多个训练图像数据;

(3)将所述多个训练图像数据输入至深度卷积神经网络中进行训练,建立检测模型;其中,所述深度卷积神经网络为fasterrcnn模型,包括efficientnet层、rpn网络层、感兴趣区域池化层和分类层;

(4)获取待检测的监控视频,并将所述监控视频输入所述检测模型进行逐帧检测,输出检测结果。

所述步骤(2)具体为:调用图片标注工具,对所述场景图像中的货物进行选取,得到场景区域图像,并对所述场景区域图像进行区域信息标注,得到训练图像数据。

所述步骤(3)具体为:

将所述训练图像数据输入所述efficientnet层进行特征提取,得到第一特征图;

将所述第一特征图输入所述rpn网络层进行目标物体检测处理,采用抑制处理得到第一候选区域图;

将所述第一特征图和所述第一候选区域图输入所述感兴趣区域池化层进行映射处理,得到第一候选特征图;

将所述第一候选特征图输入所述分类层进行识别处理,得到第一候选特征图中的目标物体类别和位置;

调用损失函数计算第一候选特征图中的目标物体类别的分类损失和第一候选特征图中的目标物体位置的回归损失,并根据所述分类损失和回归损失对所述fasterrcnn模型的参数进行调整,直至所述fasterrcnn模型收敛,得到检测模型。

所述efficientnet层通过复合系数同时调整网络的深度、宽度和输入训练图像数据分辨率以放大网络,其中所述复合系数通过以下方式确定:

通过基线网络来调节确定最佳的网络深度缩放系数α、网络宽度缩放系数β和网络输入训练图像数据分辨率缩放系数γ;

将所述最佳的网络深度缩放系数α、网络宽度缩放系数β和网络输入训练图像数据分辨率缩放系数γ扩展或放大到比所述基线网络更大的网络中;

判断所述比所述基线网络更大的网络的准确率和效率是否均超过了阈值,若超过则把所述最佳的网络深度缩放系数α、网络宽度缩放系数β和网络输入训练图像数据分辨率缩放系数γ作为复合系数。

所述采用抑制处理得到第一候选区域图具体为:

计算经过rpn网络层进行目标物体检测处理后得到的n个重叠的包围框的置信度;

选择置信度最高的作为建议框进行处理,得到新的置信度得分,将置信度得分最高的包围框进行保存;

去掉所述置信度得分最高的包围框,得到n-1个重叠的包围框,并重复上一步骤直至最后一个包围框;

将保存的包围框的置信度得分与预设的阈值进行比较,去掉置信度得分小于阈值的包围框,得到第一候选区域图。

所述步骤(4)具体为:

获取待检测的监控视频;

将所述监控视频输入所述efficientnet层逐帧进行特征提取,得到第二特征图;

将所述第二特征图输入所述rpn网络层进行目标物体检测处理,采用抑制处理得到第二候选区域图;

将所述第二特征图和所述第二候选区域图输入所述感兴趣区域池化层进行映射处理,得到第二候选特征图;

将所述第二候选特征图输入所述分类层进行识别处理,得到第二候选特征图中的目标物体类别和位置。

所述步骤(2)和步骤(3)之间还包括对所述多个训练图像数据进行增强处理,具体为:

对所述训练图像数据的三个rgb通道的矩阵分别进行分解;

利用顶部奇异值进行反转变化,得到新的rgb矩阵;

根据得到的新的rgb矩阵创建新的真彩色图片,作为最终训练图像数据。

本发明解决其技术问题所采用的技术方案是:提供一种灭火器位置检测装置,包括:

获取模块,用于获取多个场景图像;

标注模块,用于对所述多个场景图像进行标注得到多个训练图像数据;

建模模块,用于将所述多个训练图像数据输入至深度卷积神经网络中进行训练,建立检测模型;其中,所述深度卷积神经网络为fasterrcnn模型,包括efficientnet层、rpn网络层、感兴趣区域池化层和分类层;

检测模块,用于获取待检测的监控视频,并将所述监控视频输入所述检测模型进行逐帧检测,输出检测结果。

本发明解决其技术问题所采用的技术方案是:提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述灭火器位置检测方法的步骤。

本发明解决其技术问题所采用的技术方案是:提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现上述的灭火器位置检测方法。

有益效果

由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:本发明通过对对场景图像进行标注的方式获得大量的训练图像数据,并利用大量的训练图像数据对特定的神经网络模型进行训练,得到较佳的建模参数,通过较佳的建模参数建立的检测模型可以更加准确地检测场景图像中的灭火器位置以判断灭火器是否放置在指定位置。另外,本发明通过复合系数调整神经网络的深度、宽度和输入图像分辨率来提高检测模型的检测速度和精度,通过抑制处理提高检测精度。

附图说明

图1是本发明实施方式灭火器位置检测方法的计算机设备的硬件结构图;

图2是本发明第一实施方式灭火器位置检测方法的流程图;

图3是本发明第二实施方式灭火器位置检测方法的流程图;

图4是本发明第三实施方式灭火器位置检测装置的结构示意图。

具体实施方式

下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

本发明的实施方式可以在移动设备、计算机设备、或者类似的运算设备(如ecu)、系统中执行。以允许在计算机设备为例,图1是灭火器位置检测方法的计算机设备的硬件结构图。如图1所示,该计算机设备可以包括一个或多个(图中仅示出一个)处理器101(处理器101可以包括但不限于中央处理器cpu、图像处理器gpu、数字信号处理器dsp、微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于与用户交互的输入输出接口102、用于存储数据的存储器103、以及用于通信功能的传输装置104。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机设备还可以包括比图1中所示更多或更少的组件,或者具有与图1所示不同的配置。

输入输出接口102可以连接一个或多个显示器、触控屏等,用于显示从计算机设备传送的数据,还可以连接键盘、触控笔、触控板和/或鼠标等,用于输入诸如,选择、创建、编辑等的用户指令。

存储器103可用于存储应用软件的软件程序以及模块,例如与本发明实施方式中的灭火器位置检测方法对应的程序指令/模块,处理器101通过运行存储在存储器103内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的灭火器位置检测方法。存储器103可包括高速随机存储器,还可包括非易失性存储器,如一个或多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器103可进一步包括相对于处理器101远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输装置104用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机设备的通信供应商提供的互联网。在上述运行环境下,本发明提供了灭火器位置检测方法。

图2示出了本发明第一实施方式的灭火器位置检测方法的流程图,具体包括以下步骤:

步骤201,获取多个场景图像。

该场景图像可以通过布置在网点或分拨中心的摄像机获得,其中获取的数量需要足够多,并且获取的场景图像中不仅要包括有灭火器的图片,还要包括没有灭火器的图片。

步骤202,对所述多个场景图像进行标注得到多个训练图像数据。

本步骤中,标注场景图像时可以使用标注工具,例如labelimg标注工具。

通过labelimg标注工具,对所述场景图像中的货物区域进行选取,得到场景区域图像,并对所述样本区域图像进行区域信息标注,得到训练图像数据。

本实施方式中,labelimg工具首先执行openfile命令,再对所述场景图像中的货物区域进行选取,在createrectbox信息标注框中输入类别名称,最后在保存文件的路径下生成xml文件,xml文件的名字是和标注图片的名字一致,标注图像的时候,类别名称可以用小写字母,例如:电瓶车使用electromobile。

为了后续方便处理,可以将得到的训练图像数据集转换为voc2007数据集的格式,并将其进行保存在一个文件夹内。该文件夹内新建有如下文件夹:labels、imagesets、annotations、jpegimages、images。images文件夹用于存放场景图像的原图,其中存放的场景图像被重命名为“000005.dng”。jpegimages文件夹存放场景图像的原图的压缩格式,其将图像重命名为voc2007的“000005.jpg”,与场景图像的原图的文件名一一对应。标注文件保存到annotations文件夹,每个图像和标注得到的xml文件与jpegimages文件夹里面的一个图像,一一对应,且命名一致。在imagesets里再新建文件夹,命名为main,在main文件夹中生成四个txt文件,即:test.txt是测试集;train.txt是训练集和val.txt是验证集,其中,train是整个数据集的50%,test是整个数据集的25%,val是整个数据集的25%。txt文件中的内容为样本图像的名字(不带后缀)。例如:000002。

步骤203,将所述多个训练图像数据输入至深度卷积神经网络中进行训练,建立检测模型;其中,所述深度卷积神经网络为fasterrcnn模型,包括efficientnet层、rpn网络层、感兴趣区域池化层和分类层。

本步骤中采用的深度卷积神经网络为fasterrcnn模型。fasterrcnn模型有很多不同的实现方式,本实施方式中选择fasterrcnn的keras实现,其主要是为了后期能够方便部署。本实施方式中的fasterrcnn模型包括efficientnet层、rpn网络层、感兴趣区域池化层和分类层。其在训练时,具体步骤如下:

将所述训练图像数据输入所述efficientnet层进行特征提取,得到第一特征图;

将所述第一特征图输入所述rpn网络层进行目标物体检测处理,采用抑制处理得到第一候选区域图;

将所述第一特征图和所述第一候选区域图输入所述感兴趣区域池化层进行映射处理,得到第一候选特征图;

将所述第一候选特征图输入所述分类层进行识别处理,得到第一候选特征图中的目标物体类别和位置;

调用损失函数计算第一候选特征图中的目标物体类别的分类损失和第一候选特征图中的目标物体位置的回归损失,并根据所述分类损失和回归损失对所述fasterrcnn模型的参数进行调整,直至所述fasterrcnn模型收敛,得到检测模型。

本实施方式将efficientnet层作为fasterrcnn模型的主干网络,用于提取训练图像数据的特征,得到第一特征图,被提取的第一特征图被共享用于后续rpn网络层和感兴趣区域池化层。

卷积神经网络通常是在固定的资源预算下发展起来的,如果有更多的资源可用的话,则会扩大规模以获得更好的精度,比如可以提高网络深度、网络宽度和输入图像分辨率大小,但是通过人工去调整网络深度、网络宽度和输入图像分辨率的放大或缩小是很困难的,在计算量受限时放大哪个缩小哪个,这些都是很难去确定的,换句话说,这样的组合空间太大,人力无法穷举。基于上述背景,本实施方式使用一个简单而高效的复合系数来对网络深度、网络宽度和输入图像分辨率这三个维度进行调整以放大网络,这种方式不会像传统的方法那样任意缩放网络的维度,基于神经结构搜索技术获得最优的一组复合系数实现对网络的调整。因此本实施方式采用的efficientnet不仅比别的网络快很多,而且精度也更高。

该复合系数可以通过以下方式确定:

通过基线网络来调节确定最佳的网络深度缩放系数α、网络宽度缩放系数β和网络输入训练图像数据分辨率缩放系数γ;

将所述最佳的网络深度缩放系数α、网络宽度缩放系数β和网络输入训练图像数据分辨率缩放系数γ扩展或放大到比所述基线网络更大的网络中;

判断所述比所述基线网络更大的网络的准确率和效率是否均超过了阈值,若超过则把所述最佳的网络深度缩放系数α、网络宽度缩放系数β和网络输入训练图像数据分辨率缩放系数γ作为复合系数。

本实施方式中采用上述方法得到的最佳参数是α=1.2、β=1.1、γ=1.15。层数方向的次幂为1,分辨率和通道宽度方向为平方,当网络深度、网络宽度和输入图像分辨率统一缩放φ时,最终的计算量大约增加2φ

由此可见,通过复合系数来对网络深度、网络宽度和输入图像分辨率这三个维度进行调整,不会对网络的维度进行任意缩放,且保证了网络的精度,同时由于该方式的计算量增加有限,因此比普通的方式具有更快的速度。

rpn网络层,用于进行目标物体检测处理,采用抑制处理得到第一候选区域图。该层首先生成一堆不同尺度的锚窗口,对这些锚窗口进行裁剪过滤后通过softmax判断锚窗口内的图案属于前景或者后景,即判断是不是物体;同时,另一分支对锚窗口进行修正,形成较精确的候选区域。在采用rpn网络层得到候选区域时,可以通过抑制处理来消除多余的包围框,以找到最佳的物体检测位置。

具体地说,在rpn网络层中,首先生成多个不同尺寸的锚窗口,其中尺寸的大小是根据输入图像进行设置的,本实施方式中,会把任意大小的输入图像变形为800×600。多个不同尺度的锚窗口中长宽比为1:2的最大尺寸为352×704,长宽比为2:1的最大尺寸为736×384,其基本能够覆盖800x600的各个尺度和形状。也就是说,本实施方式为输入的每一个特征图像都配备了一组多尺度的锚窗口作为包围框,通过判断各个包围框中的内容为前景还是背景,即做一个二分类操作。本实施方式中的二分类操作通过softmax实现,为了便于softmax分类,可以在该softmax层前设置一个重塑层,即将待检测的包围框进行重塑得到多一个维度的信息,通过该多出来的一个维度信息来实现softmax的分类,之后再将其回复原状。

由于上述得到的包围框并不准确,因此还需要通过包围框进行裁剪过滤,本实施方式中采用的方式是通过线性回归来建模进行抑制处理,来实现对锚窗口的微调,值得注意的是,该方式只适用于锚窗口与目标比较接近的情况。最后对锚窗口进行修正,形成较精确的候选区域图。采用抑制处理得到第一候选区域图具体为:

计算经过rpn网络层进行目标物体检测处理后得到的n个重叠的包围框的置信度;选择置信度最高的作为建议框进行处理,得到新的置信度得分,将置信度得分最高的包围框进行保存;去掉所述置信度得分最高的包围框,得到n-1个重叠的包围框,并重复上一步骤直至最后一个包围框;将保存的包围框的置信度得分与预设的阈值进行比较,去掉置信度得分小于阈值的包围框,得到第一候选区域图。

例如,在检测到的场景图中的一个货物上有3个重叠的包围框,其置信度分别为0.9、0.7和0.85。首先选择得分最高的作为建议框进行处理,处理后得分变成了0.9、0.65和0.55。此时将得分最高的包围框进行保存,在剩下的两个包围框中再选择分数最高的包围框作为建议框进行处理,处理后的得分分别为0.65和0.45。最后在剩下的一个包围框中选择分数最高的包围框作为建议框进行处理,处理后得分不变。最终通过抑制处理后三个包围框的置信度分别为0.9、0.65和0.45,然后再将这些置信度分别与阈值进行比较,如果小于阈值,则将该包围框去掉,剩下的包围框则为第一获选区域图。

不难发现,通过上述方式对重叠的包围框计算置信度,将置信度最高的保存后再选出新的建议框进行计算,以此类推,如此排除了包围框叠加时各个包围框之间的影响,避免了误删包围框的可能,提高了检测的准确性。

感兴趣区域池化层,用于根据所述第一特征图和第一候选区域图提取出候选特征图。该感兴趣区域池化层的输入是rpn网络层产生的第一候选区域图和efficientnet层产生的第一特征图,通过遍历每个候选区域,这样就可以在原图基础上将产生的第一候选区域图映射到第一特征图上,从而在第一特征图上确定一个区域,从而得到第一候选特征图。

由于经过rpn网络层后得到的候选区域并不统一,其是对应多个尺度的,因此首先将其映射回所述第一特征图的尺度,再将每个候选区域对应的特征图像水平分为固定大小的网格,对网格的每一份都进行最大池化处理得到固定大小的第一候选特征图,如此处理后即使大小不同的候选区域,其输出结果仍是固定大小的,实现了固定长度的输出。

分类层,用于根据第一候选特征图确定物体的类别和精确位置。该层通过全连接和softmax可以对第一候选特征图进行具体类别的分类,即识别出是否为灭火器,再对候选区域进行精确定位,得到更为精确的位置,从而得到灭火器的具体位置。

分类层利用已经获得的第一候选特征图,通过全连接层与softmax计算每个候选目标具体属于那个类别(如灭火器,电瓶车等),输出概率向量;同时再次利用包围框获得每个目标的位置偏移量,用于得到更为精确的位置,以确定各个目标的位置。

将步骤202中得到的训练集输入至上述fasterrcnn模型中进行训练,可以得到较佳的建模参数,如此采用该较佳的建模参数建立的检测模型具有较高的检测准确性。在整个过程中,还可以通过验证集对训练好的检测模型进行验证,当检测模型达到一定的准确率后,便可进入下一步。

步骤204,获取待检测的监控视频,并将所述监控视频输入所述检测模型进行逐帧检测,输出检测结果。本步骤中,待检测的监控视频主要是对快递存储仓库的监控视频或者运输过程中的货仓监控视频。检测结果包括有灭火器和无灭火器,若检测结果为无灭火器,则将视频帧传输至监控终端进行报警;若有灭火器,则需要对灭火器的位置进行判断,判断是否在指定位置,若不在指定位置,则将视频帧传输至监控终端进行报警。本步骤的具体如下:

获取待检测的监控视频;

将所述监控视频输入所述efficientnet层逐帧进行特征提取,得到第二特征图;

将所述第二特征图输入所述rpn网络层进行目标物体检测处理,采用抑制处理得到第二候选区域图;

将所述第二特征图和所述第二候选区域图输入所述感兴趣区域池化层进行映射处理,得到第二候选特征图;

将所述第二候选特征图输入所述分类层进行识别处理,得到第二候选特征图中的目标物体类别和位置。

本实施例中,efficientnet层采用复合系数对网络的维度进行统一调整,提高了网络提取特征的速度和精度。同时rpn网络层在进行目标物体检测处理后还采用抑制处理将错误的包围框进行了删除,并且通过线性方式避免了采用单一阈值将正确的包围框删除的可能,提高了检测的准确性。

值得一提的是,所述将所述监控视频输入所述efficientnet层逐帧进行特征提取,得到第二特征图时,可以基于预置ffmpeg框架对所述监控视频进行分帧,得到多个视频帧;对所述各视频帧依次进行去噪、对比度增强、亮度和饱和度调整,得到多个标准视频帧;依次将所述各标准视频帧输入所述efficientnet层进行特征提取,得到所述各标准视频帧对应的第二特征图。

其中,ffmpeg框架包括编码器和解码器,ffmpeg框架通过编码器和解码器对监控视频进行视频编码和解码,从而实现对监控视频分帧,得到的视频帧噪点较多,因此需要对视频帧进行去除噪点,即降噪,再进行对比度增强、亮度和饱和度调整得到的视频帧更加清晰,使的后续进行检测时的识别度更高。

本发明的第二实施方式同样涉及一种灭火器位置检测方法,如图3所示,包括步骤301-步骤305,其中,步骤301、步骤302、步骤304和步骤305与第一实施方式相同,因此不再赘述,本实施方式与第一实施方式的区别在于,本实施方式中,在步骤302和步骤304之间还包括步骤303,对所述多个训练图像数据进行增强处理,具体为:

对所述训练图像数据的三个rgb通道的矩阵分别进行分解;利用顶部奇异值进行反转变化,得到新的rgb矩阵;根据得到的新的rgb矩阵创建新的真彩色图片,作为最终训练图像数据。

具体的,对于上述训练图像数据,三个矩阵m[r,g,b]表示rgb通道中的像素强度值,其中,每个矩阵的大小为r×c,其中,r和c分别表示行数和列数。m中的每个矩阵可以分解为三个子矩阵:m[r,g,b]=uσvt,其中,u是r×r的大小,σ是r×c的大小,vt是c×c的大小。u和v是正交矩阵,σ是对角矩阵,其条目沿主对角线按降序排列,并确定原始矩阵的秩。三个rgb通道分别进行分解。在σ中确定一定百分比的顶部奇异值之后,然后反转变换,并且得到的rgb矩阵创建新的真彩色图片。对于每个训练图像数据,应用所选顶部奇异值的45%、35%和25%比例的三个等级,为相同的训练图像数据生成三个近似图像。该方法保留了原始图像中的重要特征,同时产生了大量的幅值图像。

通过使用上述方法获得了大量的训练图像数据,与通常的方法相比,可以获得八倍的训练图像数据,使得针对不同场景的训练样本的数量可以更接近于每类中训练的最佳训练样本数。

图4示出了本发明第三实施方式的灭火器位置检测装置的结构示意图,该装置用于执行图2所示的方法流程,且该装置包括获取模块401、标注模块402、建模模块403以及检测模块404。

获取模块401,用于获取多个场景图像;

标注模块402,用于对所述多个场景图像进行标注得到多个训练图像数据;

建模模块403,用于将所述多个训练图像数据输入至深度卷积神经网络中进行训练,建立检测模型;其中,所述深度卷积神经网络为fasterrcnn模型,包括efficientnet层、rpn网络层、感兴趣区域池化层和分类层。

检测模块404,用于获取待检测的监控视频,并将所述监控视频输入所述检测模型进行逐帧检测,输出检测结果。

不难发现,本发明通过对对场景图像进行标注的方式获得大量的训练图像数据,并利用大量的训练图像数据对特定的神经网络模型进行训练,得到较佳的建模参数,通过较佳的建模参数建立的检测模型可以更加准确地检测场景图像中的灭火器位置以判断灭火器是否放置在指定位置。另外,本发明通过复合系数调整神经网络的深度、宽度和输入图像分辨率来提高检测模型的检测速度和精度,通过抑制处理提高检测精度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1