一种新型深度卷积神经网络运动车辆检测方法与流程

文档序号:11134661阅读:612来源:国知局
一种新型深度卷积神经网络运动车辆检测方法与制造工艺

本发明属于汽车防撞技术领域,涉及一种用于运动车辆的识别方法,尤其涉及一种用于利用单目摄像头的汽车辅助驾驶技术,该技术实现了对运动车辆检测以及跟踪。



背景技术:

作为现代化先进交通工具,汽车改变了人们的生活方式,推动了社会经济的发展和人类文化的进步,给人们的生活带来极大便利的同时,也带来了严重的交通安全问题。为了减少交通事故和人员伤亡,各国都在积极的研究对策,利用各种方法和措施来减少交通事故的发生。不仅如此,汽车辅助驾驶系统与汽车未来的发展方向密切相关,在不远的未来,汽车驾驶一定会变得简单便捷,对人员的驾驶技术水平高低的依赖一定会变得越来越低,直至实现完全自动驾驶。而要实现自动驾驶,汽车必须具备可靠的车辆识别检测系统,这是安全行车的前提条件和重要保障,是走向自动驾驶技术这一万里长征的第一步。

近年来由于电子技术的飞跃发展,使得相关技术日新月异,尤其是信息产业的迅速发展,使得运动车辆的目标检测与跟踪技术成为可能。运动车辆的识别系统分成目标检测与目标跟踪两部分内容。前者是根据视频拍摄所得的道路信息中检测出前方出现的运动车辆,起到检测跟踪的数据初始化作用;后者是在检测出运动目标车辆的基础上,对运动车辆进行跟踪检测,实时锁定住目标车辆,为汽车防撞系统的后续步骤做准备,如:为计算车辆的间距以及车辆的测速提供初始化信息等。

汽车辅助驾驶系统在技术上存在的一个最大问题是检测的实时性,此外在跟踪系统中如何更有效准确地的识别出前方运动车辆也是研究汽车辅助驾驶系统必须要考虑的问题。通常情况下,用传统的运动车辆检测方法会存在这一下问题:1)在提取候选区域之前,系统需要先对样本库车辆图片进行大量学习,然后在候选区域验证步骤中用简化的Lucas-Kanade树形分类对假设区域进行匹配,因此系统的准确性依赖于样本图片的覆盖面;2)该方法主要针对的是单目标车辆的检测和跟踪,在实际运用中系统的鲁棒性不强,不具备实用性;3)该检测系统进行正常检测工作的前提是光线良好且不具备复杂地形,而不具备在黑夜中正常工作的能力。为了解决这些问题,本发明提出了一种基于新型卷积神经网络的运动车辆检测框架算法,提高了整个检测的准确率。



技术实现要素:

本发明针对现有检测以及跟踪方法的不足,提供了一种基于新型卷积神经网络的运动车辆检测方法。

首先,本发明使用了一个全新的运动车辆检测框架,该框架包括三个模块。第一部分是视频源输入模块,该模块对前期图像的进行预处理工作。该模块记录了摄像机提供的图片,并将图片的格式转换成能够被录像处理模块处理的格式,如:解压缩,旋转,去除交叉图片等。第二部分与第三部分共同共同实现对新型运动车辆目标检测过程。第二部分是提取候选区域模块,该模块通过使用改进后的卷积神经网络对输入模块的视频图片进行假设区域提取操作。第三部分是候选区域进行验证处理模块,该模块确保输出正确的目标车辆位置信息。同时,滤除由系统毛刺噪声而引入的干扰像素点,提高检测精度。

本发明解决其技术问题所采用的技术方案包括如下步骤:

步骤1.将前期图像进行预处理。

所述的预处理包括解压缩、旋转、去除交叉图片等。

步骤2.采用一个LeNet-5卷积神经网络结构进行候选区域提取。该神经网络结构由卷积层特征提取和BP神经网络两部分组成,且卷积层共有5层。

2-1.卷积层的输入为一段视频中经过预处理的单帧图片(说明:单帧图片表示在学习部分卷积层中的输入图片,同时在后文中的检测部分也表示待检测图片),将该图片传入卷积层的S1层,分别与x个5×5的不同类型车辆的卷积核进行卷积,得到x个可能包含不同类型车辆特征信息的特征图。

2-2.在卷积层的C2层对特征图进行下采样。

2-3.将压缩后的特征图在卷积层S3重新与5×5大小的卷积核进行运算。

该处卷积的目的在于对压缩后的特征图进行模糊处理,弱化运动车辆的位移区别。由于此时数据量仍然很大,因此需要进一步操作。

2-4.对卷积层的C4层继续进行(2,2)尺寸的池化操作,得到卷积层的S5层。

2-5.将得到的卷积层的S5层经过重构(此处重构即为将特征图层与卷积核进行卷积运算后进行按序排列,顺序为卷积特征的排列顺序)得到卷积层的F6层,该层即为输出的检测结果,由于输出的检测结果要包含这x种不同类型车辆的检测结果,因此在F6层中需要输出x个5×5特征图来表示所对应车辆类型的检测结果,并将每种车辆类型的检测判断结果按序输出。

在整个卷积神经网络中,单帧图片输入值卷积层的不同特征图层,其相同位置的像素点在后一图层的运算结果通过计算得到:

yij=fks({xsi+δi,sj+δj},0<=δi,δj<=k)

其中,由于LeNet-5的卷积层运算过程只取决于相对空间坐标,故把(i,j)位置上的数据向量记作xij。式中的k是核的大小,s是子采样因子,fks决定了图层的类型:卷积或者激活函数的非线性等。δi,δj指代在(si,sj)位置上的上下左右偏移增量。

在卷积层S1与S3层中进行的特征提公式为:

其中,代表第l层的第j个特征图,kl表示第l层所采用的卷积核,而bl表示经过第l层卷积以后所产生的偏置,Mj表示卷积核中的像素点第j个位置。

其中BP神经网络结构采用其经典的结构,包含输入层、隐含层以及输出层三部分。其中中输入层为250个神经元,隐含层也为250个神经元,输出层神经元也为5个。在BP神经网络中的激活函数为:

对于上述将单帧图片进行卷积提取特征和,通过BP神经网络进行权值的训练可以整合归纳,称之为卷积神经网络编码体系。通过卷积神经网络的特征提取以后,对原测试图片进行了尺寸的变换,因此在提取候选区域时需要将图片的尺寸恢复到原图片大小。采用卷积神经网络解码体系,对编码后的输出图层(此处的输出图层为F6层处的结果特征图)进行解码,同时还进行智能像素点标记。卷积解码过程与卷积编码过程操作相反,升采样操作与上述降采样操作也是相反的,其表达式为:

上式中,up(·)为升采样计算方法,表示第l+1层的第j个特征图层的权值参数,此运算法则是将图像通过与Kronecker算子作运算使得输入图像在水平和垂直方向复制n次,将输出图像的参数值恢复到降采样之前。由此再将分类完的特征图像迭代返回,得到分类后的输出特征图。综合卷积神经网络与编解码智能像素标记体系,构建出整个检测算法的框架图。通过该算法的检测可以实现对道路路况图片中车辆进行实时分类标记,同一类的车辆用相同的像素值表示。

步骤3.采用中值滤波对候选区域进行验证。

由于在处理过程中引入噪声或者在卷积编解码后对像素点进行标记时产生个别的误差,导致选取的候选区域可能会有一定误差,所以在候选区域验证过程中采用中值滤波法滤除误判点,来提炼检测效果。通常经过二维中值滤波后的输出可以由计算所得:

g(x,y)=med{f(x-k,y-l),(k,l∈W)}

其中,f(x,y),g(x,y)分别为提取候选区域模块的输出结果图像和候选区域验证后的图像。W为二维模板,通常为3×3或者5×5区域。

经过候选区域验证模块后,目标车辆的位置信息已经被提取,到此运动车辆检测的过程已经结束,检测的目的也已达到。

由于本方法采用的是卷积神经网络的检测方法,因此在将此方法应用前需要对神经网络进行参数的训练并且寻找特定的卷积核。本方法采用HCM(Hard c-means)算法训练得到五种类型车辆的卷积核,该算法是一种无监督学习的聚类算法。设有车辆样本集X={Xi|Xi∈RP,i=1,2,...,N},可以将车辆分成c类,与LeNet分类结果相统一,可以用5×N阶矩阵U来表示分类结果,U中的元素uil为:

式中Xl表示车辆样本集中的样本。

HCM算法的具体步骤:

(1)确定车辆聚类类别数c,2≤c≤N,其中N为样本个数;

(2)设置允许误差ε,考虑到c种车辆类型的差异,因此取允许误差值为0.01;

(3)任意指定初始分类矩阵Ub,初始b=0;

(4)根据Ub和下式计算c个中心矢量Ti

U=[u1l,u2l,···,uNl]

(5)按照预定方法进行更新Ub为Ub+1

其中dil=||Xl-Ti||,即第l个样本Xl到第i个中心Ti之间的欧式距离。

(6)通过将前后更新的矩阵范数进行比较,若||Ub-Ub+1||<ε则停止;否则置,b=b+1,返回(4);

(7)由此达到样本特征提取的效果,即能够有效区分车辆类型,采用迭代LMS(最小二乘法)调节隐层间的连接权重ωij,利用输入样本{Xi|Xi∈NP,i=1,2,...,N}及其对应的实际输出样本{Di|Di∈Rq,i=1,2,...,N}使式(12)中的能量函数最小:

从而达到调节权重ωij的目的。ωij的调节公式为:

本发明对解决智能辅助驾驶系统起到关键的助理作用,能够有效检测出前方运动车辆,为车辆跟踪以及后续的防撞系统解决了技术壁垒。整个辅助驾驶系统不仅解决了交通安全、提高道路吞吐量、降低恶性交通事故发生率、还减少生命财产损失。从提高社会经济效益来说,这一发明具有极大的现实意义和广阔的应用前景。

附图说明

图1是本发明对道路前方运动车辆检测的示意图模型;

图2是本发明的系统框架模型;

图3是本发明中车辆检测所采用的卷积神经网络结构图;

图4是本发明中BP神经网络中的单个神经元结构示意图。

图中,1.本车以v1的速度向前运行,2.前车以v2的速度向前运行,3.车道左边线,4.车道右边线,5.神经元的结点输入,6.神经元输入的权重系数,7.神经元中对应的计算表达式,8.神经元的输出。

具体实施方式

以下结合附图对本发明做进一步说明。

本发明采用卷积神经网络方法结合机器学习技术对前方运动车辆检测。具体场景如附图1所示,带有前置摄像头的本车1和前车2分别以v1和v2的速度在道路上行驶,辆车之间相距S,本车根据摄像头所拍摄到的前方道路视频,通过本方法检测出视频中的运动车辆。为了能够有效检测出前方运动车辆,本方法构建全新的检测框架如附图2,并构建特定卷积神经网络LetNet-5,该卷积神经网络结构中使用的卷积核仅仅用于提取车辆特征,而不再提取其余的物体特征(如房屋、天空和树木等)。其中,卷积核是通过训练所得出的5个5×5矩阵块,这5个卷积核分别代表了小汽车、多功能用途车、大卡车、公交车和面包车的各类特征,具体如附图3所示。此卷积神经网络结构分成两部分对待检测图片进行检测。卷积层对图片进行特征提取,BP神经网络进行特征匹配,得出检测结果。

卷积神经网络中卷积层共有5层,其输入为一段视频中的单帧图片(或单幅图像),该图片预先经过与处理,处理后图像大小为32×32,相当于最初数据量达到1024,然后将该图片传入S1层,分别与5个5×5的不同类型车辆的卷积核进行卷积,得到5个可能包含不同类型车辆特征信息的特征图,每个特征图大小为(32-5+1)×(32-5+1)=28×28。由此,特征图的数据量由1024减少到784个。接下来,在C2层将特征图进行下采样,选择(2,2)尺寸进行池化,因此特征图大小进一步压缩为14。再将压缩后的特征图在卷积层S3重新与5×5大小的卷积核进行运算,得到大小为(14-5+1)×(14-5+1)=10×10的特征图。该处卷积的目的在于对图像进行模糊处理,弱化运动车辆的位移区别。由于此时数据量仍然很大,因此对C4层继续进行(2,2)尺寸的池化操作,得到S5层,其特征图层的大小为5×5。然后将得到的S5层经过重构得到F6层,该层即为输出的检测结果,由于检测输出要包含这5种不同类型车辆的检测结果,因此在F6层中需要输出10个5×5特征图来表示所对应车辆类型的检测结果,故图2中的n取值为10。最后将每种车辆类型的检测判断结果按序输出。在卷积层中,每一个特征图层运算的过程都可以用公式(1)计算得到。卷积层中关于卷积核的运算可以用公式(2)计算所得。

yij=fks({xsi+δi,sj+δj},0<=δi,δj<=k) (1)

在LeNet-5的各个卷积层中计算方法是将卷积核与前一层提取的特征图进行卷积,该过程中的卷积核是可以进行训练的,然后再将得到的结果通过激活函数得到输出特征图。经过卷积层以后,卷积神经网络中的卷积核会共享相同的权重参数,从而提取出图像的局部特征。而降采样过程是通过对卷积层中得到的特征图进行降采样操作:

而BP神经网络结构中输入层为250个神经元,隐含层也为250个神经元,输出层神经元也为5个。即附图4中的N取值为250,Y取值为5。在BP神经网络中的激活函数如公式(4)所示。

通过以上两个步骤完成了卷积神经网络编码体系,解码体系需要对编码后的输出特征图像进行解码,同时还进行智能像素点标记。卷积解码过程与卷积编码过程操作相反,升采样操作与上述降采样操作也是相反的,其表达式为:

上式中,up(·)为升采样计算方法,此运算法则是将图像通过与Kronecker算子作运算使得输入图像在水平和垂直方向复制n次,将输出图像的参数值恢复到降采样之前。up(·)具体表达式为:

由此再将分类后的特征图像迭代返回,得到分类后的输出特征图。通过该算法的检测可以实现对道路路况图片中显示的物体进行实时分类标记,同一类的物体用相同的像素值表示。经过将待检测图片进行分类后,可以按指定的像素值提取出目标车辆(包括小汽车、大卡车、面包车、多功能用途车以及公交车五类车型)。此五类车型都用不同的像素值进行标记,因此可以有效提取出目标车辆的位置信息,以此作为感兴趣区域。

由于系统可能会在处理过程中引入噪声或者在卷积编解码后对像素点进行标记时产生个别的误差,导致选取的候选区域可能会有一定误差,所以本文在候选区域验证过程中采用中值滤波法滤除误判点,来提炼检测效果。本方法采用的中值滤波函数为:

g(x,y)=med{f(x-k,y-l),(k,l∈W)} (8)

经过候选区域验证模块后的输出结果后,目标车辆的位置信息已经被成功提取,可以为下一步的跟踪提供准确的车辆位置信息。到此运动车辆检测的过程已经结束,检测的目的也已达到。

由于神经网络中的神经元权重参数需要同过训练习得,HCM(Hard c-means)算法训练得到五种类型车辆的卷积核,该算法是一种无监督学习的聚类算法。设有车辆样本集X={Xi|Xi∈RP,i=1,2,...,N},可以将车辆分成5类,与LeNet分类结果相统一,可以用5×N阶矩阵U来表示分类结果(N取值为10),U中的元素uil为:

式中Xl表示车辆样本集中的样本,Ai表示车辆的分类,其中A1代表小汽车、A2代表多功能用途车、A3代表面包车、A4代表大卡车以及A5代表公交车。

HCM算法的具体步骤:

(1)确定车辆聚类类别数c,文中c=5(2≤c≤N,其中N为样本个数);

(2)设置允许误差ε,考虑到5种车辆类型的差异,因此取允许误差值为0.01;

(3)任意指定初始分类矩阵Ub,初始b=0;

(4)根据Ub和下式计算c个中心矢量Ti

U=[u1l,u2l,···u5l]

(5)按照预定方法进行更新Ub为Ub+1

其中dil=||Xl-Ti||,即第l个样本Xl到第i个中心Ti之间的欧式距离。

(6)通过将前后更新的矩阵范数进行比较,若||Ub-Ub+1||<ε则停止;否则置,b=b+1,返回(4);

(7)由此达到样本特征提取的效果,即能够有效区分车辆类型,采用迭代LMS(最小二乘法)调节隐层间的连接权重ωij,利用输入样本{Xi|Xi∈NP,i=1,2,...,N}及其对应的实际输出样本{Di|Di∈Rq,i=1,2,...,N}使式(12)中的能量函数最小:

从而达到调节权重ωij的目的。ωij的调节公式为:

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