ssd模型和kalman滤波器的电子围栏实现方法

2020-11-20 22:55刘启道罗云吉赵立平范志英陈世坤
装备维修技术 2020年5期
关键词:深度学习

刘启道 罗云吉 赵立平 范志英 陈世坤

摘要:随着深度学习理论和计算机硬件技术的发展,使得基于深度学习的图像目标检测任务的性能远远超过了以往基于特征提取方法的性能,图像目标检测技术在检测精度和实时性上已经达到工程化应用的要求。在视频监控电子围栏应用中关键的问题有两个1、在保证较高召回率的前提下精确的检测出目标物体的位置和类别,2、对检测到的目标物体进行准确的跟踪,克服各种光线变化、目标区域发生遮挡、物体形状扭曲等因素的干扰。在本文中我们提出了一种基于深度神经网络模型ssd和kalman滤波器的电子围栏工程化应用方法,在本文中我们深入的分析了各种基于深度学习模型的目标检测方法的性能,并对比了kalman滤波器跟踪技术和粒子滤波器跟踪技术在图像目标跟踪场景中的性能差异,我们的分析结果显示ssd物体检测模型能够很好的在检测精度和算法时间复杂度之间找到一个较好的平衡点,而kalman滤波器跟踪能够有效的克服目标区域的遮挡、性变干扰,两个结合实现的电子围栏应用误报率为0.5%。

关键词:深度学习  SSD模型  YOLO模型  kalman滤波  粒子滤波

1引言

目前我国已经进入了信息化高速发展的时期,信息化进程中出现的各项新成果已经逐步进入到了我们的日常生活中。计算机视觉技术是人工智能的重要组成部分,它由计算机图形学发展而来已经有了非常悠久的历史。要將计算机视觉技术成功的应用到实际生产中我们就必须实现三个基本的任务1、图像分类,2、目标检测;3、实例分割。由于深度学习技术的出现imageNet上的图像分类任务已经被基本解决,目前计算机视觉技术中还存在目标检测和实例分割两大具有挑战性的任务。在生产和生活中我们常常需要对一些区域进行实时的监控和无人值守即电子围栏,如果采用人工的方式对监控的内容进行研判那么将严重的影响系统的客观性、实时性、准确性[1]。因此,我们需要研究出一种能够实时准确检测图像中物体的算法,以及在克服外界各种干扰的一种目标跟踪算法以实现电子围栏应用。

目前我们通过使用大量电子传感器如红外对射来实现电子围栏功能,但是这种系统需要在监控场景周围部署非常多的传感器和附属设备才能实现电子围栏。除此以外,也不利于系统管理人员的交互式部署,部署和拆除需要耗费大量的人力物力。所以研究一种基于视频图像处理技术的电子围栏应用技术有很的社会实用价值,为人工自能技术从理论走向实用化做出了有利的证明。传统的基于图像的目标检测算法主要是采用滑窗和特征提取的方式来完成目标检测任务的[2],常用的特征提取算子有hog特征[3],haar特征, hog特征可以被认为是尺度不变性特征变换和形状内容特征的一种重要改进,为了平衡特征不变性(如平移变换,尺度变换,光照强度变换)和非线性性(如不同类别目标之间的差异)这个算子在空间上计算均匀致密网格的梯度方向直方图特征。为了检测不同尺度的目标,hog算子在保持检测窗口不变的情况下需要对原始输入的图像进行多次缩放。由于使用了密集网格和滑动窗口的策略这种目标检测方法不能被广泛的应用到生产种。

近年来深度学习技术的出现打破了这种限制,在图像识别和分类这个领域取得了举世瞩目的成绩,将识别的精度提升到了与人类相当的水平。因为在深度学习中特征提取的步骤是通过机器自动完成的不在受人工的控制,对特征表达的节点达到了几百万个甚至上亿个。目前,Faster Rcnn[4]模型在图像识别和分类领域是最优的模型,但是其在检测效率上远远落后于SSD模型[5]和YOLO模型[6]。从目标检测算法基本结构和步骤出发我们将目标检测算法划分为了两种类型1、一阶段检测算法如YOLO系列算法、SSD系列算法;2、二阶段检测算法如RCNN系列。相比两种检测算法一阶段检测算法的检测速度要快于二阶段检测算法;而在检测精度上来看二阶段检测算法要高于一阶段检测算法。在信号处理领域内kalman滤波器和粒子滤波器一直都是线性滤波和非线性滤波的代表,在视频目标跟踪中为了达到实时性要求,我们不能够采用比较复杂深度特征而只能选择较为简单的位置和颜色特征,所以在颜色特征不明显的目标区域,粒子滤波器跟踪效果没有kalman滤波器的跟踪效果好,在目标区域发生遮挡情况下也同样存在这样的问题,故在本文中我们选择kalman滤波器作为目标跟踪的算法。在本文中我们通过工地检控过程中拍摄的行人视频图像作为数据源,我们在公开的数据集coco和voc上对我们的模型(yolov3, yolo-tiny, mobile-ssd)进行了训练,然后我们使用opencv中的dnn模块对模型进行加载检测目标,最后使用kalman滤波器对目标进行跟踪在时间序列上对目标的轨迹进行判断。

2 算法流程

根据对工地监控场景图像的观察研究并结合实际工程应用的硬件条件,在本文中我们将采用mobile ssd模型作为在图像中检测物体目标的检测器,而选择kalman滤波器做为目标跟踪的算法,在下文中我们将详细介绍mobile ssd物体检测模型和kalman滤波器的基本原理。

2.1目标检测ssd模型

mobile ssd物体检测是通过使用深度神经网络具有强大拟合能力来实现在图像中检测物体的位置和类别,它记录了训练数据集中卷积特征图上区域特征与物体类别和物体精确位置之间的关系(统一的多任务回归网络)。ssd模型网络架构如图1所示,单网络模型的检测速度要远远快于双网络模型,所以目前能够对视频流进行实时性检测的只有SSD和YOLO模型,两个模型在网络的整体结构上是一致的,SSD模型是在YOLO初级模型的基础上加入了多尺度和多种层次信息融合的思想,故我们以SSD模型为例对网络模型做简要的介绍。

SSD物体识别模型的工作原理为:(1)输入一张待识别的图像和在训练过程中所标识的每一个识别目标的真实边框;(2)我们通过卷积的方法来评价不同尺度的特征图上每一个位置的不同纵横比例的默认边框小集合;(3)我们预测每一个默认边框的形状偏移和与每个待识别目标类的相似信度。

2.2 目标跟踪kalman滤波

卡尔曼滤波[7]一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。斯坦利·施密特(Stanley Schmidt)首次实现了卡尔曼滤波器。卡尔曼在NASA埃姆斯研究中心访问时,发现他的方法对于解决阿波罗计划的轨道预测很有用,后來阿波罗飞船的导航电脑使用了这种滤波器。 关于这种滤波器的论文由Swerling (1958), Kalman (1960)与 Kalman and Bucy (1961)发表。数据滤波是去除噪声还原真实数据的一种数据处理技术, Kalman滤波在测量方差已知的情况下能够从一系列存在测量噪声的数据中,估计动态系统的状态. 由于, 它便于计算机编程实现, 并能够对现场采集的数据进行实时的更新和处理, Kalman滤波是目前应用最为广泛的滤波方法, 在通信, 导航, 制导与控制等多领域得到了较好的应用。

Kalamn滤波是对离散数据线性滤波问题的最优解,这个滤波器可以在求解一个容易受到高斯白噪声干扰的线性系统的最优估计中被推导出来。在给定一个离散时间过程时可以使用以下的方程组来确定一个线性系统。

系统状态模型:

观测模型:

kalman滤波算法描述了对估计和误差方差的有效线性测量更新,Kalman滤波算法可以被划分为两个部分:1 时间更新(预测)方程,2 测量更新方程。

时间更新预测方程:

这些方程在时间上将系统的状态从k时刻转移到k+1时刻,从当前状态和误差的协方差的估计去获得对下一个时刻的先验估计。

测量更新矫正方程:

这个观测更新方程将一个新的观测值加入到一个先验估计中,这个先验估计是从时间更新方程中获取到的一个改进的后验估计中。为了将Kalman滤波理论应用到我们的实际视频图像目标跟踪过程中,我们将跟踪目标的系统状态向量定义为:x=[x,y,w,h,dx,dy],系统的测量定义为:z=[x,y,w,h],结合时间更新预测方程和测量更新方程就可以对目标进行跟踪。

3 实验分析

在本文中我们使用的行人检测模型的训练数据来自于coco2017数据集和voc2007、voc2012数据集,行人样本的统计结构如下:训练集70584个,测试集6098个。我们采用tensorflow1.x中提供的物体检测api对mobile ssd模型进行了训练,在实验过程中我们使用的硬件配置为i7第八代12核,显卡为GEFORCE GTX1080TI,ubuntu18.04系统,tensorflow1.9版本,cuda9.0,cudnn7.1.4。我们分别对比了yolov3模型,yolov3-tiny模型,mobile ssd模型在cpu和gpu下的检测性能,测试图像的分辨率为512*512,测试结果如下表1所示。

从表1中我们可以看到,对于同尺寸输入图像mobile ssd模型的检测速度是最快的在cpu硬件运行条件下检测帧率已经达到了准实时的效果,在我们真实的电子围栏应用中我们不需要那么高的检测帧率。在50米景深的监控范围内,视频分析算法的帧率能搞达到5fps即可以满足电子围栏分析的要求。在检测到行人目标后我们将对目标区域进行kalman滤波跟踪我们选择目标区域的中心坐标和矩形框的大小作为目标区域的状态,将区域的中心坐标作为系统的观测值,对目标区域进行跟踪,跟踪的效果如图2所示。

4 结论

随着信息化技术的发展各种数据都以几何倍数增长,硬件技术的发展使得运算和存储设备的性能有了极大的提升,基于以上两方面的原因促使了大数据和人工智能时代的到来。人们对智能化的无人值守应用的需求越来越迫切,在本文中我们提出了一种基于mobile ssd物体检测模型和kalman滤波器跟踪中的电子围栏解决方案,首先,我们通过coco数据集和voc数据集训练一个行人检测的模型;之后我们通过opencv中的dnn模块对物体检测模型进行加载检测出输入图像中的目标物体;最后我们使用kalman滤波器对目标区域进行跟踪得目标区域得轨迹,通过目标区域与围栏区域进行进行交跨关系来实现电子围栏的功能。

参考文献:

[1]刘海中,电子围栏中心监控平台的设计与开发,华中师范大学硕士论文,2012.

[2]P.Viola and B.J.Jones,Robust real-time face detection, Internatinal jaurnal of conputer vision, vol,57,no,2,pp.137-154,2004

[3]N.Dala and B.tringgs,Histograms of oriented gradients for hunman detection,in Conputer vison add pattern Recognition,2005,CVRP 2005.

[4]Grishick R. Fast R CNN[C]. IEEE International conference on Computer Vision. 2015.

[5] WeiLiu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, SSD:Single Shot MultiBox Detector. In:CVPR(2017).

[6] Joseph Redmon, Santosh Divvala, Ross Girshick, Ali Farhadi, You Only Look Once: Unified, Real-Time Object Detection. In:CVPR.(2016).

[7] Rudolf Emil Kalman, A New Approach to Linear Filtering and Prediction Problems, 1960.

猜你喜欢
深度学习
从合坐走向合学:浅议新学习模式的构建
面向大数据远程开放实验平台构建研究
基于自动智能分类器的图书馆乱架图书检测
搭建深度学习的三级阶梯
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
利用网络技术促进学生深度学习的几大策略
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究