一种基于深度卷积神经网络的车流密度估计方法与流程

文档序号:11143500阅读:1685来源:国知局
一种基于深度卷积神经网络的车流密度估计方法与制造工艺

本发明涉及一种基于深度卷积神经网络的车流密度估计方法,属于智能交通技术领域。



背景技术:

随着科学技术的发展和人民生活水平的提高,车已经成为了人们出行、运输不可或缺的交通工具。道路上各种机动车辆随处可见,汽车交通让人们感受现代化生活便捷舒适的同时,也体现出了道路设施的滞后性与有限性。交通拥堵会带来车辆等待时间长,交通事故的发生,以及环境污染等一系列不容忽视的问题。为了解决以上问题,智能交通应运而生。车辆计数与车流密度检测是智能交通的重要内容。车辆个数和车流密度是反映道路上车辆拥挤程度的最直观的指标,直接反映了道路上车辆的密集程度和交通堵塞状况。车辆个数和车流密度同时也对道路通行能力的研究十分有用。此外,随着道路上车辆的增多,汽车尾气污染已经成为大气污染的重要组成部分,严重威胁着人们的身体健康和生活环境,对于汽车尾气的相关研究已经迫在眉睫,刻不容缓。尾气的污染和道路的阻塞程度也有一定的关系,车辆拥堵程度大,阻塞时间长,尾气排放量增大,对环境的影响也增大,因此,车流密度和车辆数与地区汽车尾气污染程度密切相关,有必要对道路车流密度和车辆数进行实时的检测。

对于车辆的计数,最开始是使用环形线圈的方法,该方法根据电磁感应原理将环形线圈与车辆检测器构成一个简单的计数系统,它的传感器是一个埋设在路面下,通有一定交变电流的环形线圈。车辆通过环形线圈时,引起线圈回路电感量的变化,检测器便检测出有车辆经过,计数器的数字加一。这种方法在车距较小时,检测精度大大降低,从而影响计数准确性。且该方法是针对运动中的车辆,而本发明所需研究的是某一瞬间对一段道路上的车辆进行计数。在道路下埋线圈也会影响道路使用,不便于维修,因此,当前的方法多是基于道路视频图像进行一系列图像处理,得到车辆的计数。

对于视频的区域车辆计数方法,包括帧间差分法和背景差分法。帧间差分法是当图像序列中出现异常物体运动时,帧与帧之间会出现较为明显的差别,通过差分后得到的绝对值,确定图像序列中是否物体运动。帧间差分法对慢速运动和静止的物体不敏感,不能准确检测静止物体。背景差分法,即当前视频帧和一张背景图像相比较,如果同位置的像素特征存在一定程度的差别,则当前视频帧中这些位置的像素点就构成前景运动目标。背景差分法可以检测静态目标,但是背景建模受光照、目标物等影响,不能得到实时、准确的背景图像,造成车辆计数的误差。

在北京中星微电子有限公司王磊、王皓、黄英申请、2010年1月6日公开、公开号为CN100578563C、发明名称为“基于视频图像的车辆计数方法”的中国发明专利申请中,提出从预定的帧图像开始,根据收集的该多帧图像中每个像素点的像素值,计算该预定帧视频图像的每个像素在预定时刻的像素值的概率密度值,确定所述视频图像中的前景图像,前景图像中面积大于一给定值的区域为运动的车辆,跟踪检测出的车辆,获得新出现的车辆数量以及离开的车辆的数量。该发明申请利用了背景建模的方法检测前景点,为保证获得的前景像素点的准确性,获得好的背景图像至关重要,一方面由于前景车辆目标的存在,给背景建模工作增加了难度,另一方面,对于室外道路环境,光照变化、背景扰动等都会引起背景图像发生变化,为背景建模工作带来困难。

车流密度是指单位长度车道上,某一瞬间所存在的车辆数,一般用辆/(km×车道)表示。目前,车流密度主要通过感应线圈、红外检测器、微博雷达等检测器得到时间占有率,定性判断车流密度大小,即时间占有率大,车流密度越大。这种方法没有定量的测量车流密度。另一种方法时根据检测器得到的流量和速度数据,根据公式:流量=速度×密度,计算得到车流密度,这种方法在流量和速度检测出现较大误差时,检测结果出现较大出入。

在重庆大学赵敏、孙棣华、刘卫宁、廖孝勇、梅登申请、2016年5月18日公开、公开号为CN104123840B、发明名称为“基于视频检测技术的车流密度定性判别方法”的中国发明专利申请中,首次根据当前摄像头采集的视频图像,划定监控图像中的感兴趣区域,计算图像的分形维数,对分形维数计算结果进行统计分析,待判断图像的分形维数大于给定阈值的图像块数目统计结果是否大于给定的比例系数,如果大于给定的比例系数则判定当前场景车流密度大,否则判定当前场景车流密度小。该发明申请虽然不需要进行车辆目标的提取,但它同时也不能获得具体的车辆数,只能定性的判断车流密度大小,缺乏对于车流密度检测的准确性和定量分析的能力。



技术实现要素:

本发明技术解决问题:克服现有技术的不足,提供一种基于深度卷积神经网络的车流密度估计方法,大大提高了车辆计数和车流密度估计的准确性和实时性。

本发明技术解决方案:一种基于深度卷积神经网络的车流密度估计方法,包括以下步骤:

1、离线训练

1.1)从已有的不同的道路场景的视频终端监控视频中,选取不同密度车流量的视频图像分成训练集图像和验证集图像。

1.2)对将要进行离线训练和在线检测的视频图像进行预处理:

1.2.1)提取灰度图,将卷积神经网络的输入图像块从RGB空间变换到灰度空间;

1.2.2)把得到的灰度图像块的像素归一化到[0,1]的范围内。

1.3)获取离线训练用到的不同尺度图像块:

1.3.1)每张训练图像,随机选取固定像素大小的多个图像块,同时对每个图像块镜像翻转来达到数据增强的目的。最终将这些固定像素大小的图像块送入卷积神经网络中训练。

1.3.2)利用s个不同尺度的图像金字塔,使输入的图像块具有对应的尺度,同时卷积神经网络也有相应的s个子网络。这样,第一级金字塔对应于原始的输入图像块,剩下的级别,取原始图像块中心的1/s大小,得到不同尺度的图形块;

1.4)获取标准分布密度图

1.4.1)每张图像中的车辆用点标注,得到每辆车的位置坐标和每张图中总的车辆数。

1.4.2)对于网络的训练标签即标准分布密度图的生成,通过高斯核函数在图像中每个标记点卷积得到。已知输入图像可以表示为m×n的矩阵:x∈Rm×n,则该输入图像x所对应的标准分布密度可以表示为:式中:Nc为图像中的车辆数,表示图像中每个像素的位置,xi为第i辆车在图像中的位置,δ(·)为单位冲击函数,*为卷积操作,为标准差为σi的高斯核。

1.5)车辆计数模型的设计

构造一个卷积神经网络作为车辆计数模型,所述卷积神经网络包含第一部分,即含有不同尺度图像块输入的多个子网络结构和第二部分,即融合不同尺度分布密度图信息的全连接网络结构,其中第一部分得到不同尺度图像块的分布密度图,每个子网络结构均相同,即卷积神经网络的每个子网络具有相同的卷积层数,各个对应的卷积层有相同大小和个数的卷积核,使用相同的激活函数;每个子网络输入不同尺度的图像块,输出对应尺度的分布密度图;第二部分,利用全连接层融合不同尺度分布密度图,得到两个学习目标即分布密度图和车辆计数,每个目标连接多个全连接层,其中最后一层两个并列的全连接层不同,其余的全连接层共享。

离线训练阶段两个学习目标均采用欧氏距离计算损失。在两个并列全连接层的后面各连接一个欧氏距离损失层,第一个欧氏距离损失层用来计算卷积神经网络估计的分布密度图和标准分布密度图之间的欧氏距离:式中,F(Xi;Θ)为第i幅输入图像估计的分布密度图,Xi为第i幅输入图像的图像矩阵,Θ为待学习参数,N为输入图像的总数量,Di为第i幅输入图像的标准分布密度图矩阵;第二个欧氏距离损失层用来计算卷积神经网络估计的车辆数和标准车辆数之间的欧氏距离:式中,M(Xi;Θ)为第i幅输入图像的车辆个数的估计值,Xi为第i幅输入图像的图像矩阵,Θ为待学习参数,N为输入图像的总数量,Mi为第i幅输入图像的标准车辆数;

1.6)训练车辆计数模型

1.6.1)利用步骤1.5)的方法构建一个车辆计数的深度卷积神经网络结构;

1.6.2)对卷积神经网络中的参数初始化,一般卷积层的卷积核用标准差为0.01的高斯函数初始化,偏置初始化为0;

1.6.3)卷积神经网络初始化后,冻结卷积神经网络目标为车辆计数的最后一层全连接层,优先开始训练估计分布密度图的卷积神经网络,计算输入的训练集图像经过卷积神经网络各层后得到的结果与标准分布密度图之间的损失,即欧式距离:L1(Θ),然后采用随机梯度下降法在每一次优化迭代中更新整个卷积神经网络的参数,在迭代一定次数后把验证集图像输入卷积神经网络得到输出与标准分布密度图之间的损失,直到损失收敛到一个设定的阈值后暂停训练;

1.6.4)切换到车辆计数的训练,冻结目标为分布密度图的最后一层全连接层参数,开始学习目标为车辆计数的卷积神经网络,计算输入图像经过卷积神经网络各层后得到的结果与标准车辆数之间的损失,即欧式距离:L2(Θ);然后采用随机梯度下降法在每一次优化迭代中更新卷积神经网络的参数,在迭代一定次数后把验证集图像输入卷积神经网络得到输出与标准车辆数之间的损失,直到损失收敛到规定的阈值后暂停训练,切换到分布密度图的训练;轮换训练两个目标,直到损失值不再改变,最终得到车辆计数模型。

2、在线检测

由上述步骤1训练得到车辆计数模型后进行在线检测:

2.1)从视频终端监控视频中实时获取道路交通视频图像作为检测图像;

2.2)获得的检测图像,首先提取图像块,将图形块缩放到固定像素大小,输入到卷积神经网络中,这些输入的图像块通过卷积神经网络,产生对应的分布密度图和车辆数;

2.3)将卷积神经网络输出的分布密度图缩放到原始图像块大小并对像素值归一化;

2.4)将所有图像块得到的结果累加成一张与原始检测图相同大小的图像,由于图像块之间的重叠,每个位置最终的检测分布密度图要用累加的图像块的个数归一化;最终得到检测图的分布密度图,

3、车流密度估计

上述步骤2得到检测图像的分布密度图后计算车流密度:

3.1)按照道路信息划分感兴趣区域;

3.2)计算分布密度图中对应区域的像素和,得到感兴趣区域的车辆数;

3.3)根据视频图像中感兴趣区域的实际长度及公式密度=车辆数÷长度,计算出瞬时车流密度。

本发明与现有技术相比的优点在于:

(1)本发明通过深度卷积神经网络学习静态图像到车辆个数的映射,让神经网络学会车辆的底层特征和有高区分度的高层特征,避免了手工设计的特征的不准确和背景建模困难的问题。

(2)把车辆计数问题简化为密度估计的问题,从车辆分布密度图可以获得更多的信息,增加车辆计数的准确度。

(3)深度卷积神经网络有分布密度图和车辆数两个学习目标,这两个目标之间的相关性,可以相互促进,更好的学习,既可以得到车辆的分布密度图又可以得到单幅静止图像中车辆的个数。

(4)通过视频场景划分感兴趣区域,可以得到单个车道或多个车道的车辆个数,根据感兴趣区域中道路长度的先验信息,计算出单车道或多车道的瞬时车流密度。

附图说明

图1是本发明方法流程图;

图2是本发明深度卷积神经网络第一部分子网络结构图;

图3是本发明基于深度卷积神经网络车辆计数的模型结构示意图。

具体实施方式

下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。

本发明基于深度卷积神经网络的车流密度估计和车辆计数的方法,基于大量不同车流密度的样本,利用卷积神经网络自动提取具有高区分度的特征图,以多尺度金字塔图像块输入的多尺度卷积神经网络形成图像密度和车辆计数模型,通过对感兴趣区域的选取,可以计算出固定长度区间的瞬时车流密度,大大提高了车流密度检测的准确性和实时性。在训练阶段,训练多个不同尺度输入图像的卷积神经网络,从大量不同车流密度的样本中学习到车流密度的本质特征,再用全连接网络层学习多尺度分布密度图到整体图像分布密度图以及图像总车辆个数的映射,得到图像车辆分布密度图和图像车辆总数。在检测阶段,利用训练好的多尺度卷积神经网络模型对检测图像进行车辆计数,划分感兴趣区域后,可实现快速、准确的单车道或多车道车辆计数和瞬时车流密度估计。

本发明将车辆计数问题通过图像密度估计问题来解决,再通过感兴趣区域的车辆数计算瞬时车流密度。从一张图像到车辆个数是一个复杂非线性映射问题,卷积神经网络直接学习这种映射关系比较困难,将车辆计数问题转化为密度估计问题可以获得车辆分布的信息,一方面可以更好的估计图像中的车辆数目,另一方面可以同时得到车辆分布密度图和车辆数目。这种方法需要每张图像有一系列的车辆标注点,利用高斯核密度函数卷积生成分布密度图,作为训练的标签,生成的分布密度图的像素的和即为图像中车辆的个数。发明的深度卷积神经网络需要学习从一张图像到相应分布密度图之间的映射关系,利用这种关系可以同时得到估计的车辆分布密度图和车辆个数。

如图1所示,本发明基于深度卷积神经网络的车辆计数和车流密度估计的方法主要有离线训练、在线检测、车流密度估计三个阶段。

1、训练

1.1)获取训练样本

从已有的不同的道路场景的视频终端监控视频中,选取不同密度车流量的视频图像12000张,其中10000张用来训练,另外2000张用来验证。

1.2)图像预处理

对于卷积神经网络的输入图像块要进行预处理。首先,提取灰度图,将卷积神经网络的输入图像块从RGB空间变换到灰度空间,然后,把得到的灰度图像块的像素归一化到[0,1]的范围内。

1.3)提取不同尺度图像块

每张训练图像,随机选取115×115像素大小的800个图像块,同时对每个图像块镜像翻转来达到数据增强的目的,这样每幅训练图像有1600个图像块。这些图像块最终转换为72×72像素大小送入卷积神经网络中训练。摄像机拍摄的图像具有透视效应,即相同大小的物体表现为在离摄像机近的地方占有的像素个数大,而在远离摄像机、具有更高深度的地方占有的像素小。为了消除透视几何变换带来的畸变,利用s个不同尺度的图像金字塔,使输入的图像块具有对应的尺度,同时卷积神经网络也有相应的s个子网络。这样,第一级金字塔对应于原始的输入图像块,剩下的级别,取原始图像块中心的1/s大小。例如,如果卷积神经网络含有两个子网络,第一级金字塔相应于原始大小的输入图像块,第二级是截取原始图像块大小的50%。当卷积神经网络含有三个子网络,第二级和第三级金字塔分别为截取原始图像块大小的66%和33%。

1.4)生成标准分布密度图

每张图像中的车辆用点标注,得到每辆车的位置坐标和每张图像中总的车辆数。对于卷积神经网络的训练标签即标准分布密度图的生成,通过高斯核函数在图像中每个标记点卷积得到。已知输入图像可以表示为m×n的矩阵:x∈Rm×n,则该输入图像x所对应的标准分布密度可以表示为:式中:Nc为图像中的车辆数,表示图像中每个像素的位置,xi为第i辆车在图像中的位置,δ(·)为单位冲击函数,*为卷积操作,为标准差为σi的高斯核。基于卷积神经网络的车辆计数算法的目标是学习一个由输入图像x到该图像中的车辆分布密度的映射函数F:F:x→F(x)≈D(x),式中,F(x)为估计车辆分布密度图。为了学习F,需要解决如下问题:式中,F(x;Θ)为估计车辆分布密度图,Θ为待学习参数。一般来说,F是一个复杂非线性的映射。

1.5)车辆计数模型的设计

发明的用于车辆计数的卷积神经网络含有两个部分,即含有不同尺度图像块输入的多个子网络结构和融合多尺度分布密度图信息的全连接网络结构。

第一部分卷积神经网络的每个子网络除了输入的图像块尺度不同外,其他均相同,即卷积神经网络的每个子网络具有相同的层数,各个对应层有相同大小和个数的卷积核,使用相同的激活函数等。卷积神经网络的每个子网络单独训练,使每个子网络学习到不同尺度图像到对应分布密度图的映射关系,使卷积神经网络具有多尺度的特性,同时可以克服透视效应的影响。对于卷积神经网络的单个子网络,如图2所示,具有下列结构:每个子网络包含5个卷积层,第一个卷积层含有20个大小为7×7的卷积核,第二个卷积层含有40个5×5的卷积核,第一个卷积层和第二个卷积层后均紧接着一个2×2大小卷积核的最大池化层;第三个卷积层和第四个卷积层分别含有20个和10个5×5的卷积核,前四个卷积层后面均跟有线性修正单元(ReLU)激活函数层;最后,第五个卷积层为一个1×1的卷积层,它学习把第四个卷积层生成的10个特征图映射成一个与输入图像块对应的分布密度图。这样,卷积神经网络的每个子网络都得到对应的一张分布密度图,将得到的多张分布密度图串联送入卷积神经网络的第二部分。

如图3所示,第二部分卷积神经网络包含两个均含有512个神经元的全连接层Fc6和Fc7,后面跟着一个线性修正单元(ReLU)激活函数和一个dropout层,整个卷积神经网络的最后一层是两个并列的层,一个含有324个神经元的全连接层Fc8,它的输出的是车辆的分布密度图,另一个是含有1个神经元的全连接层Fc9,它输出的是图像中车辆的总个数。

正如上面提到的,发明的深度卷积神经网络需要学习到从一个图像块到一个车辆分布密度图的非线性映射,以及从一个图像块到车辆个数的非线性映射。因此,需要训练卷积神经网络来解决这个回归问题。为了达到这个目标,在卷积神经网络的最后两个并列全连接层的后面各连接一个欧氏距离损失层,第一个用来计算卷积神经网络估计的分布密度图和标准分布密度图之间的欧氏距离:式中,F(Xi;Θ)为第i幅输入图像的车辆分布密度估计图,Xi为第i幅输入图像的图像矩阵,Θ为待学习参数,N为输入图像的总数量,Di为第i幅输入图像的标准分布密度图矩阵。第二个用来计算卷积神经网络估计的车辆数和标准车辆数之间的欧氏距离:式中,M(Xi;Θ)为第i幅输入图像的车辆个数的估计值,Xi为第i幅输入图像的图像矩阵,Θ为待学习参数,N为输入图像的总数量,Mi为第i幅输入图像的标准车辆数。

1.6)训练车辆计数模型

采用随机梯度下降法训练卷积神经网络,在训练卷积神经网络时,首先要对卷积神经网络中的参数初始化,一般卷积层的卷积核用标准差为0.01的高斯函数初始化,偏置初始化为0。同时设置好学习率ε,对于训练集的h个样本{x(1),...,x(h)}和其对应的目标y(i),i∈[1,h],计算估计梯度其中i为第i个样本,Θ为学习的参数,f(x(i);Θ)为第i幅图像的估计结果,L(·)为估计结果与目标之间的损失,▽Θ为对Θ求导。则跟新后的参数为训练时,冻结卷积神经网络第三个全连接层Fc9,优先开始训练估计分布密度图的卷积神经网络,计算输入图像经过卷积神经网络各层后得到的结果与标准分布密度图之间的损失,即欧式距离:L1(Θ)。然后采用随机梯度下降法在每一次优化迭代中更新整个卷积神经网络的参数,在迭代一定次数后把验证集图像输入卷积神经网络得到输出与标准分布密度图之间的损失,直到损失收敛到一个设定的阈值后暂停训练,切换到车辆计数的训练。冻结Fc8网络层参数,开始训练目标为车辆计数的卷积神经网络,计算输入图像经过卷积神经网络各层后得到的结果与标准车辆数之间的损失,即欧式距离:L2(Θ)。然后采用随机梯度下降法在每一次优化迭代中更新卷积神经网络的参数,在迭代一定次数后把验证集图像输入卷积神经网络得到输出与标准车辆数之间的损失,直到损失收敛到规定的阈值后暂停训练,切换到分布密度图的训练。轮换训练两个目标,直到损失值不再改变,最终得到车辆计数模型。

2、检测

在检测时,获得一张检测图像,首先提取图像块,将图形块缩放到固定72×72像素大小,输入到卷积神经网络中。这些输入的图像块通过卷积神经网络,产生对应的分布密度图和车辆数。需要注意的是,由于每个子网络中存在两个最大池化层,输出的分布密度图是输入图像块尺寸的1/4大小,即18×18像素。因此,需要将估计的分布密度图缩放到输入图像块的大小。这样得到的分布密度图和没缩放之前的车辆计数不同,需要归一化。为了得到检测图最终完整的分布密度图,将所有图像块得到的结果累加成一张与原始检测图相同大小的图像。由于图像块之间的重叠,每个位置最终的分布密度图要用累加的图像块的个数归一化,最终得到检测图像的分布密度图。

3.车流密度估计

按照道路信息划分感兴趣区域,例如划分出某条单车道或多个车道的区域,计算分布密度图中对应区域的像素和,得到感兴趣区域的车辆数,再根据视频图像中感兴趣区域的实际长度及公式密度=车辆数÷长度,计算出瞬时车流密度。

(5)总之,本发明基于深度卷积网络学习静态图像到车辆个数的映射,让神经网络学会车辆的底层特征和有高区分度的高层特征,避免了手工设计的特征的不准确和背景建模困难的问题。并把计数问题简化为密度估计的问题,从车辆分布密度图可以获得更多的信息,增加车辆计数的准确度。深度卷积神经网络有分布密度图和车辆数两个学习目标,这两个目标之间的相关性,可以相互促进,更好的学习,既可以得到车辆的分布密度图又可以得到单幅静止图像中车辆的个数。通过视频场景划分感兴趣区域,可以得到单个车道或多个车道的车辆个数,根据感兴趣区域中道路长度的先验信息,计算出单车道或多车道的瞬时车流密度。本发明大大提高了车辆计数和车流密度估计的准确性和实时性。

尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

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