发明内容
本发明的目的提供一种基于深度学习目标检测与动态背景建模的商店跨门经营检测方法,该商店跨门经营检测方法能够自动检测获得存在跨门经营行为的商贩。
为实现上述发明,采用的技术方案如下:
一种基于深度学习目标检测与动态背景建模的商店跨门经营检测方法,包括以下步骤:
(1)获取道路监控视频,并将该道路监控视频截成帧图像;
(2)利用店面检测模型获取帧图像中的店面所在位置;
(3)当视频视角固定时,划分帧图像中店面外道板区域,并利用改进的ViBe方法对道板区域进行背景建模差分处理,获得店外物体,然后,利用店外物体分类模型对店外物体进行分类,获得店外物体的类别;
(4)当视频视角不固定时,利用物体检测模型对帧图像进行检测,获得帧图像中的物体所在位置及类别,然后,根据物体所在位置,筛选得到店外物体及类别;
(5)当店外物体属于店面经营物体时,即进行跨门经营报警;
所述店外物体分类模型由VGG网络经训练得到,所述店面检测模型和物体检测模型均由VGG网络和Faster R-CNN网络组成的学习网络经训练得到。
其中,所述店面检测模型和物体检测模型对应的学习网络包括:
VGG网络,用于由10个卷积层和3个最大池化层、2个全连接层组成,10个卷积层和3个最大池化层用于提取输入图像的特征,输出特征图;第一个全连接层用于将特征图连接成1*1*4096维的向量并输出,第二个全连接层用于对1*1*4096维的向量中的物体进行分类,输出物体类别及分类置信度;
RPN,接收VGG网络输出的特征图,用于在VGG网络输出的特征图中,提取可能存在目标的矩形候选区域ROI;
ROI池化层,连接在RPN与第一个全连接层之间,接收VGG网络输出的特征图和RPN输出的矩形候选区域ROI,用于将矩形候选区域ROI映射到特征图上后输出特征图;
第三全连接层,连接于第一全连接层之后,用于对1*1*4096维的向量中ROI框选的物体进行边界确定,输出物体坐标。
具体地,所述VGG网络包括:
第一层、第二层均为卷积核为3*3,通道数为64的卷积层,输出尺寸为960*640的特征图;
第三层为第一最大值池化层,将尺寸为960*640的特征图压缩至尺寸为480*320的特征图;
第四层、第五层均为卷积核为3*3,通道数为128的卷积层,输出尺寸为480*320的特征图;
第六层为第二最大值池化层,将尺寸为480*320的特征图压缩至尺寸为240*160的特征图;
第七层、第八层均为卷积核为3*3,通道数为256的卷积层,输出尺寸为240*160的特征图;
第九层为卷积核为1*1,通道数为256的卷积层,输出尺寸为240*160的特征图;
第十层为第三最大值池化层,将尺寸为240*160的特征图压缩至尺寸为60*40的特征图;
第十一层、第十二层均为卷积核为3*3,通道数为512的卷积层,输出尺寸为60*40的特征图;
第十三层为卷积核为1*1,通道数为512的卷积层,输出尺寸为60*40的特征图;
第十四层为1*1*4096的全连接层,输出1*1*4096维的向量。
第十五层为1*1*N的全连接层,用于对1*1*4096维的向量中的物体进行分类,输出物体类别及分类置信度,N为类别总数。
与现有技术相比,本发明具有的有益效果为:
本发明提供的商店跨门经营检测方法结合深度学习技术和改进的ViBe方法能够自动化地实现跨门经营检测功能,利用现有的城市道路视频监控网络,有效地提高城市管理部门的效率,减少人力成本。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
图1是本发明提供的基于深度学习目标检测与动态背景建模的商店跨门经营检测方法的流程图。如图1所示,本实施例提供的商店跨门经营检测方法包括以下步骤:
S101,获取道路监控视频,并将该道路监控视频截成帧图像。
具体地,以每秒1~5帧的频率将该道路监控视频截成帧图像。更具体地,以每秒1帧的频率将该道路监控视频截成帧图像。商店跨门经营的物体的流动性相对比较弱,以每秒1帧的频率截取帧图像,根据该些帧图像足以准确地获得店面信息和物体信息,且能够降低数据量,节省计算开销。
S102,利用店面检测模型获取帧图像中的店面所在位置。
本实施例利用的店面检测模型是由VGG网络和Faster R-CNN网络组成的学习网络经训练得到。如图2所示,店面检测模型对应的学习网络包括VGG网络、RPN、ROI池化层以及第三全连接层。
如图2、图3所示,VGG网络包括:
第一层、第二层均为卷积核为3*3,通道数为64的卷积层,输出尺寸为960*640的特征图;
第三层为第一最大值池化层,将尺寸为960*640的特征图压缩至尺寸为480*320的特征图;
第四层、第五层均为卷积核为3*3,通道数为128的卷积层,输出尺寸为480*320的特征图;
第六层为第二最大值池化层,将尺寸为480*320的特征图压缩至尺寸为240*160的特征图;
第七层、第八层均为卷积核为3*3,通道数为256的卷积层,输出尺寸为240*160的特征图;
第九层为卷积核为1*1,通道数为256的卷积层,输出尺寸为240*160的特征图;
第十层为第三最大值池化层,将尺寸为240*160的特征图压缩至尺寸为60*40的特征图;
第十一层、第十二层均为卷积核为3*3,通道数为512的卷积层,输出尺寸为60*40的特征图;
第十三层为卷积核为1*1,通道数为512的卷积层,输出尺寸为60*40的特征图;
第十四层为1*1*4096的全连接层,输出1*1*4096维的向量。
第十五层为1*1*N的全连接层,用于对1*1*4096维的向量中的物体进行分类,输出物体类别及分类置信度,N为类别总数。
RPN,连接在卷积核为1*1,通道数为512的卷积层之后,接收卷积核为1*1,通道数为512的卷积层输出的特征图,用于在特征图中,提取可能存在目标的矩形候选区域ROI。
ROI池化层,连接在RPN与第一个全连接层之间,接收卷积核为1*1,通道数为512的卷积层输出的特征图和RPN输出的矩形候选区域ROI,用于将矩形候选区域ROI映射到特征图上后输出特征图。
尺寸为1*1*4的全连接层,连接于第一全连接层之后,用于对1*1*4096维的向量中ROI框选的物体进行边界确定,输出物体坐标。
训练样本的构建:以大量店面图像及对应的标签作为训练样本,店面图像来自于道路监控视频中截取的帧图像,还可以来自于从网络中爬取的大量店面图像,为这些店面图像进行分类,形成店面图像对应的标签。
利用上述构建的训练样本对上述网络进行训练,当网络收敛或达到迭代次数后,确定网络参数,即获得店面检测模型。
当店面检测模型确定后,将待检测的帧图像输入至该店面检测模型后,即可以获得店面的类别及店面所在位置。
S103,判断视频视角是否固定,若是,执行S104~S106,否则,执行S107~S108。
在本实施例中,根据视频视角是否固定,采用两种方案判断物体是否为跨店经营商品。当视频视角固定,即每一帧拍摄到的店面位置不变时,则利用改进的ViBe方法确定店外物体,然后再用店外物体分类模型对店外物体进行分类;当视频视角不固定时,采用物体检测模型确定帧图像中的物体分类和物体所在位置,然后根据物体所在位置确定店外物体。
S104,划分帧图像中店面外道板区域。
具体地,本实施中采用人工方式在图像中划分店面外道板的位置。
S105,利用改进的ViBe方法对道板区域进行背景建模差分处理,获得店外物体。
采用改进的ViBe方法进行背景建模差分,获得动态的前景图像。由于流动的行人、车辆等物体也会被判断为前景图像,需要进行基于时间的滤波操作,即滤除存在时间较短的前景目标,剩下的即为长时间存在的前景物体。若前景物体位于已划分出的道板上,则认为是店外物体。
传统的ViBe方法,使用了深度为N的背景,通过随机像素替换的方法进行背景建模。处理每一帧时,都需要对背景模型进行更新,因此开始需要给定一个初始模型。对于当前帧图像中的每一个像素,在N个背景中随机选取一个背景,用该像素替换该背景中相同位置的像素。
ViBe方法中有关键参数R与Nmin,用于前景、背景的差分选取。对于当前帧图像中的每一个像素,都要判断其属于背景还是前景。具体方法是,取N个背景中相同位置的总共N个像素,计算当前像素与这N个像素灰度值之间的欧氏距离,统计N个点中与当前像素点点的欧氏距离小于R的点的数量,若数量大于Nmin,则判断当前像素点为前景,否则判断为背景。由此可知,参数N的大小,能够影响背景更替速度的快慢,N越小,背景变化越快。参数R与Nmin能够影响差分的效果,R越小,Nmin越大,则差分效果越明显。
考虑到实际的道路监控情况,监控探头往往会在风吹、雨滴等干扰下发生细微的抖动,或者因为探头旋转,在同一个角度预制位上产生一定的偏差,此时监控画面会产生一定程度上的细微偏移,导致背景与实际场景的错位;跨门经营检测有别于普通的动态物体检测,跨门经营的行为相对来说动态性不强,店外物体图像变化缓慢。
上述的传统ViBe方法并不适用于如跨门经营这种动态物体的检测,因此,对传统的ViBe方法进行改进,以满足对动态物体的检测。具体地,在改进的ViBe方法中:当进行背景像素替换时,针对N个目标背景图,从当前像素点以及其上下左右四邻域内4个像素点中随机选取一个像素点替换每个目标背景图中与当前像素点相同位置的像素点。
假设当前帧的坐标为(i,j)的当前像素点为则像素点的上下左右四个邻域内4个像素点分别为则从像素点以及这5个像素点中随机选择一个像素点替换像素点 表示第k个目标背景图中坐标为(i,j)的像素点。这样,在进行背景像素替换时,增加了空间上的随机因素,可以有效地降低图像轻微偏差产生的影响。
再者,在改进的ViBe方法中:当进行背景像素替换时,针对N个目标背景图,从当前像素点以及其八邻域内8个像素点中随机选取一个像素点替换每个目标背景图中与当前像素点相同位置的像素点。
假设当前帧的坐标为(i,j)的当前像素点为则像素点的八个邻域内8个像素点分别为 则从像素点 以及这9个像素点中随机选择一个像素点替换像素点 表示第k个目标背景图中坐标为(i,j)的像素点。这样,在进行背景像素替换时,增加了空间上的随机因素,可以有效地降低图像轻微偏差产生的影响。
此外,在处理跨门经营问题时,为更稳定地进行背景建模差分,需要降低帧率,调整参数,减慢背景更替的速度。由于“不存在店外经营”与“存在店外经营”两种状态之间的转换,并不是快速的转换过程,因此需要减慢背景更替的速度,以延长差分算法能够起效的时间。增大N参数能有效减慢背景更替速度,但同时会提高算法的时间、空间复杂度。考虑到跨门经营检测的动态性不高,时间周期长,因此本发明并不对每一帧都进行处理,而是每1秒取1帧图像,同时设参数N=15~25,具体地,设置参数N=20,进行ViBe算法的改进,能够同时满足检测准确率与实时性的要求。
S106,利用店外物体分类模型对店外物体进行分类,获得店外物体的类别。
利用改进的ViBe方法虽然能够确定店外物体,但是不能确定店外物体的类别,也就是无法区分店外物体是否为店面经营物体,此时需要采用店外物体分类模型对店外物体进行分类,以确定店外物体的类别。
在本实施例中,店外物体分类模型是以图3所示的VGG网络经训练得到。以大量物体图像及对应的标签作为训练样本,物体图像来自于道路监控视频中截取的帧图像,还可以来自于从网络中爬取的大量物体图像,为这些物体图像进行分类,形成物体图像对应的标签。利用上述构建的训练样本对图3所示的VGG网络进行训练,当网络收敛或达到迭代次数后,确定网络参数,即获得物体分类模型。这里的物体是指可以经营销售的产品,如水果、衣服、箱包、饰品等,对于店外的垃圾桶、共享单车等公共设施,并不属于本发明所述的物体范围内,即不对此类物体进行分类。
当物体分类模型确定后,将改进的ViBe方法获得的店外物体图片输入至该物体分类模型后,即可以获得店外物体的类别。
S107,利用物体检测模型对帧图像进行检测,获得帧图像中的物体所在位置及类别。
当监控探头视角不固定,即存在移动情况时,那么拍摄到的店面位置将存在变化,此时难以寻找道板位置。此时采用物体检测模型对帧图像进行检测,确定帧图像中的物体所在位置及类别。
本实施例利用的物体检测模型是如图2所示的由VGG网络和Faster R-CNN网络组成的学习网络经训练得到。
以大量物体图像及对应的标签作为训练样本,物体图像来自于道路监控视频中截取的帧图像,还可以来自于从网络中爬取的大量物体图像,为这些物体图像进行分类,形成物体图像对应的标签。利用上述构建的训练样本对图2所示的学习网络进行训练,当网络收敛或达到迭代次数后,确定网络参数,即获得物体检测模型。当物体检测模型确定后,将待检测的帧图像输入至该物体检测模型后,即可以获得物体的类别及物体所在位置。
S108,根据物体所在位置,筛选得到店外物体及类别。
利用物体检测模型对帧图像进行检测,虽然能够获得物体的类别及所在位置,但并不确定哪些是店外物体,本发明只对店外物体进行检测,因此,根据获得的物体所在位置筛选处于店外的物体及物体类别。
S109,当店外物体属于店面经营物体时,即进行跨门经营报警。
虽然经过S104~S108已经确定了店外物体及类别,但有些店外物体不属于店面经营物体,则这些店外物体并不属于跨门经营,因此,还需要根据店面经营物体类型,对店外物体进行筛选,当店外物体属于店面经营物体时,才认为这些店外物体属于跨门经营,对此进行跨门经营报警。
本实施例提供的商店跨门经营检测方法结合深度学习技术,能够自动化地实现跨门经营检测功能,利用现有的城市道路视频监控网络,有效地提高城市管理部门的效率,减少人力成本。
以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。