基于计算机视觉的共享单车数量统计和密度估计的方法与流程

文档序号:18415044发布日期:2019-08-13 19:16阅读:754来源:国知局
基于计算机视觉的共享单车数量统计和密度估计的方法与流程

本发明涉及视频智能分析技术领域,具体涉及基于计算机视觉的共享单车数量统计和密度估计的方法。



背景技术:

近年来,共享单车在全国各地蓬勃发展,有效地解决了城市出行中最后一公里的难题。然而,共享单车在使用过程中出现供需失衡的现象,导致部分区域车满为患,严重堵塞人行道、影响市容市貌。目前,各大共享单车公司虽然可以通过单车上所安装的gps模块了解特定区域内单车的数量,但对于具体情况(如是否阻碍交通、摆放是否整齐)并不十分清楚,导致不能准确判断是否需要派运维人员前往清理,从而造成该清理的区域没有及时清理,不需要清理的地方人力浪费的现象。

随着道路监控系统的建设及深度学习的发展,通过计算机视觉技术对道路上共享单车的密度和数量进行分析已成为可能。当检测到某个监控区域下共享单车的数量或密度超过阈值时,系统便自动发送消息和截图给后台管理员,从而判断是否需要排运维人员前往清理,以此提高单车的管理效率。



技术实现要素:

本发明提出基于计算机视觉的共享单车数量统计和密度估计的方法。卷积神经网络(convolutionalneuralnetwork,cnn)实现了端对端的训练,无需人工设计和提取特征,经过多层卷积之后得到高层的语义特征,在图像识别、检测等领域得到广泛应用。将实时视频流的一帧图像输入到构建的cnn中,直接输出图像中包含的单车数量和对应密度估计图,一旦检测到数量大于阈值或密度过大时,视频分析系统发出警报,并记录下现场画面和数量,以便管理人员及时处理。

为实现上述目的,本发明提供如下技术方案:

一种基于计算机视觉的共享单车数量统计和密度估计的方法,大致包括以下步骤:

步骤(1):获取大量不同场景下含有共享单车的图片,并对其中每一辆单车进行标注,生成数据集;

步骤(2):对数据集进一步处理,采用高斯函数将原始的单车分布图转化为对应的密度分布图;

步骤(3):将数据集划分为训练数据集和测试数据集;

步骤(4):构建多列cnn模型;

步骤(5):将训练数据集作为cnn模型的输入,将对应输出的密度估计图与之前标注的密度分布图计算损失函数,反向传播训练模型。训练过程中,使用测试集数据对模型进行测试,若满足精度要求,则训练完成;

步骤(6):将训练好的cnn模型部署到视频分析系统中,分析视频监控设备采集的视频流数据,检测共享单车的数量和密度是否超标。

与现有技术相比,本发明的有益效果为:

现有的依靠gps模块确定共享单车数量的方法不能准确地了解实际情况,从而造成人力资源浪费、管理效率低下的结果。相比之下,本发明使用深度学习技术,能够完整地呈现现场情况和信息,且高度智能化,并能在视觉分析系统中长期稳定运行。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明中提供的基于计算机视觉的共享单车数量统计和密度估计方法的整体流程图;

图2为本发明中提供的cnn模型构建的结构示意图;

图3为本发明中提供的针对单张图中共享单车数量和密度检测的流程图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

如图1所示,本发明实施例中提供的基于计算机视觉的共享单车数量统计和密度估计方法的流程图。

本发明提供一种基于计算机视觉的共享单车数量统计和密度估计的方法的具体实施例,其主要包括如下步骤:

步骤(1):获取大量不同场景下含有共享单车的图片,获取图片的方式包括网络搜集下载和现场监控拍摄,图片格式为r、g、b三通道彩色图片。对图片进行标注,为方便标注,考虑到只检测单车的数量和密度分布而不检测单车的具体位置和大小,因此只对每一辆单车的鞍座中心点进行标注,形成一个数据集;

步骤(2):对数据集进一步处理,将原始的单车分布图转化为对应的密度分布图;

(2.1)、由于cnn模型为全卷积结构且涉及到两次最大池化(maxpooling)操作,因此网络接受任意长宽的输入图像且输出图像的长宽分别为输入的1/4。首先将原图长宽缩小到1/4得到缩略图。

(2.2)、采用基于几何适应的高斯核函数对步骤(2.1)得到的缩略图进行处理,由下式表示:

其中,为高斯核函数,xi为第i辆单车鞍座中心点,n为单车总数,为第i辆单车鞍座中心点xi与其最近的m个单车鞍座中心点到该单车鞍座中心点的平均距离。

测试结果验证,取m=4、α=0.3时效果最好。

步骤(3):将处理完的数据集划分为训练数据集和测试数据集,其中测试集占20%。

步骤(4):构建cnn模型的结构;

(4.1)、cnn模型的网络结构图如图2所示。整体采用3列卷积网络并行架构,每一列卷积网络采用的卷积核大小不同,分别为3×3、5×5和7×7,因此每一列的感受野大小不同,以更好地自适应远、近不同场景下共享单车密集摆放的特征。

(4.2)、每一列卷积网络使用4次卷积操作和2次最大池化操作且对每一层的输出都使用归一化(batchnormalization)操作和激活函数(relu),因此每一列最终输出的长宽为输入的1/4。

(4.3)、将3列的输出通过连接操作(concatenate)融合在一起,再通过一个卷积核大小为1×1的卷积层得到最终的密度估计图。由于整个网络没有使用全连接层,因此模型的输入图像可以是任意大小的,避免长宽缩放比例不同而导致失真。但输入图像也不宜过大,如实际使用时采用1080p(1920×1080)视频流,先将图像缩小到832×448,再输入到模型中,从而降低运算量并取得较高的准确率。

步骤(5):训练步骤(4)构建的cnn模型;

(5.1)、将训练样本分批次输入到cnn模型中;

(5.2)、训练过程中,将模型输出的密度估计图与之前标注的密度分布图计算损失函数,采用随机梯度下降法不断更新模型参数,损失函数如下所示:

其中,θ为模型待优化的参数,n为每一批训练图片的数量,xi为输入的图像,fi为xi对应标注的密度分布图,f(xi,θ)为cnn模型输出的密度估计图。

(5.3)、采用积分求和的方法对输出的密度估计图计算共享单车的数量,求和公式如下:

其中,y为输出的密度估计图,w、h分别为密度估计图的宽和高,将密度估计图上每个像素点的值求和即为该图中单车的数量。

(5.4)、经过大量迭代训练后,cnn模型输出的loss值收敛到较低;之后,每一轮迭代训练完成后,在测试集上对模型进行测试;若测试精度达到要求(总体数量正确率大于90%),则完成了整个训练过程,若测试精度没有达到要求,则回到步骤(5.1),继续训练;

步骤(6):将训练后的cnn模型部署在视觉分析系统中,分析视频流数据,实时检测共享单车的数量和密度,如图3所示。

(6.1)、通过rtsp协议获取实时视频流数据,解码后将yuv格式的帧序列转换为rgb格式,并缩放到832×448的分辨率大小。

(6.2)、将处理后的图像输入到cnn模型中,直接输出得到对应的密度估计图。

(6.3)、对密度估计图求和得到对应共享单车的数量。

(6.4)、判断共享单车的数量和密度是否大于阈值,若是,保存截图并发出告警;若否,继续检测。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。

尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

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