一种基于双目摄像机和车底阴影的前方车辆检测方法与流程

文档序号:18870874发布日期:2019-10-14 19:32阅读:189来源:国知局
一种基于双目摄像机和车底阴影的前方车辆检测方法与流程

本发明涉及计算机视觉领域,尤其涉及到一种基于双目摄像机和车底阴影的前方车辆检测方法。



背景技术:

在基于计算机视觉的车载辅助驾驶系统中,对道路前方车辆的检测有着非常广泛的应用。但目前依然存在检测效果不理想等问题,使其应用受到很大的限制。

基于前方车辆车底阴影来实现车辆检测是一种常用方法;但因受到光照和环境的影响,车底阴影很不容易和道路、车辆本身等区分开,导致对车底阴影的检测很容易出现误检;尽管可以在后续处理过程中使用其他方法来弥补,但是也不能完全消除这些误检。

使用双目摄像机可以从两个角度同时捕获前方车辆的图像,通过差分算法则很容易去掉道路、车辆本身对车底阴影检测的干扰,具有较好的应用效果和潜力。



技术实现要素:

本发明提供了一种基于双目摄像机和车底阴影的前方车辆检测方法,通过布置双目摄像机检测以及交叉验证等技术,可提升对前方车辆检测效果。

一种基于双目摄像机和车底阴影的前方车辆检测方法,其特征在于,包括以下步骤。

步骤1,使用双目摄像机同时获取前方车辆的实时视频,对其提取视频图像,获得左图像和右图像。

步骤2,对左右图像做差分操作,得到差分图像。

步骤3,用二值化处理方法差分图像进行处理,得到二值图像。

步骤4,使用滤波方法对二值图像进行处理,得到滤波图像。

步骤5,使用形态学开运算对滤波图像进行处理,得到轮廓图像。

步骤6,对轮廓图像计算闭合轮廓,根据其位置形状大小,得到候选车辆阴影轮廓。

步骤7,根据候选车辆阴影轮廓,初步确定候选车辆区域。

步骤8,在左图像中利用分类器验证各候选车辆区域是否是车辆。

步骤9,在右图像中进行交叉验证,最终确定前方车辆所在的区域。

所述双目摄像机,是指按水平方向布置并构成双目系统的双摄像机系统。

所述车辆为在道路上行驶的机动车,一般具有较大的占地面积,在通常情况下行驶时车底阴影清晰可见。

所述步骤2,包括:

左图像和右图像的图像尺寸和大小相同;

所述对左右图像做差分操作,是指左右图像对应点像素值直接相减,得到差分图像。

所述步骤3,包括:

二值化处理方法可以使用阈值分割方法,如otsu(大津法),这是一种自适应阈值分割法;也可以使用双阈值分割以及其他方法。

所述步骤4,包括:

滤波方法可以选用中值滤波方法,它是一种简单有效的噪声去除方法,在去除孤立细小毛刺的同时,保留了轮廓的完整性;也可以使用均值滤波以及其他方法。

所述步骤5,包括:

形态学开运算是计算机图像处理的一种形态学方法,其主要思想是对图像进行先腐蚀后膨胀的操作。

所述步骤6,包括:

利用闭合轮廓检测算法,在轮廓图像中检测出所有闭合轮廓;

计算所有闭合轮廓的外接矩形,外接矩形的中心设定为轮廓中心;

在图像中设定一个方形或梯形的检测区域,轮廓中心在该检测区域外的轮廓直接去除;

计算闭合轮廓在左图像或右图像中对应区域的平均灰度值,大于设定的阈值时直接去除;

设定一个矩形大小范围和长宽比范围;外接矩形不满足大小范围和长宽比范围时,直接去除;

计算闭合轮廓及其外接矩形的7个hu不变矩,并计算与标准车辆阴影矩形轮廓之间的距离;距离大于给定阈值时直接去除;

通过上述筛选,留下的轮廓是最终的候选车辆阴影轮廓。

所述步骤7,包括:

根据先验知识,考虑到图像中车底阴影的上方就是车辆,将车底阴影按比例向上方扩大,形成候选车辆区域;

所述候选车辆阴影轮廓,指图像中可能是车辆阴影的轮廓;

所属候选车辆区域,指图像中可能是车辆的区域。

所述步骤8,包括:

可以使用基于harr-like特征的adaboost分类器,确定上述候选车辆区域中是否有车辆;

haar-like特征可以反映图像在特定方向上的灰度变化特征,可以很好地描述车辆这类刚性物体;adaboost分类器是一种级联分类器,将多个简单的弱分类器级联组合成为强分类器,能保证高检出率的同时有低误检率;

使用基于harr-like特征的adaboost分类器时需要预先进行训练,才能使用;

也可以使用其他分类器来检测上述候选车辆区域中是否有车辆。

所述步骤8,还包括:

也可以先在右图像中进行候选区域车辆检测,相应地步骤9是在左图像中进行交叉验证。

所述步骤9,包括:

针对右图像的交叉验证,是指若在左图像中候选车辆区域检测到车辆后,还需要在右图像中对应候选车辆区域检测是否有车辆;

可以在左右候选区域进行特征点检测和匹配,以确定是同一车辆。

步骤2的主要目的是获取双目差分图像。双目摄像机在得到左右图像时,由于拍摄的同步性,使得两幅图像仅仅存在视角差异;由于这些视角差异,使得差分图像相比于原始图像,可以较好地突出对应位置像素值差异较大的区域,而相同或相似的区域则会被去除,因此在差分操作后,前方视景中将突显出图像中的轮廓特征,车底阴影作为其中一个重要的轮廓也将被显示出来。

步骤3-5的目的是根据差分图像获取车底阴影轮廓。对差分图像的阈值分割,可去除多余的轮廓信息和部分细小的毛刺、噪声,车底阴影区域将更加明显;对二值图像进行滤波处理可以使图像更加平滑,且可进一步去除图像中的毛刺、噪声;开运算可删除图像中一些不包含结构元素的轮廓,断开狭窄轮廓,可去掉细小的突出部分,从而得到较为平滑的轮廓图像。

步骤6的主要目的是去除所有的多余轮廓。主要通过车辆及其阴影的先验知识;

车底阴影的轮廓一定是一个闭合轮廓,因此去掉所有的非闭合轮廓;

根据摄像机视角,前方车辆的阴影只可能出现在图像中的某个区域内,通过区域的划设可以去掉轮廓特征明显但不会是车底阴影的轮廓,比如建筑物和标志牌等;

考虑到车底阴影区域在图像中偏黑,其灰度值偏小,设置计算区域平均灰度值阈值设置可以去除一些高亮度区域;

考虑到车底阴影的大小和长宽比,过大或过小的区域都可能是误检,通过轮廓外接矩形的大小和长宽比计算,可以剔除一些尺寸不符合车底阴影特点的区域;

考虑到车底的阴影形状接近于矩形,考虑到hu不变矩对尺度变化、旋转以及平移性具有不变性,可以用来候选轮廓与其外接矩形的相似度,从而去掉外接矩形不规则的轮廓。

所述步骤7-9的目的是获取候选车辆区域,并对其进行了初步验证和交叉验证。

本发明通过双目摄像机,获得前方车辆两个视角的图像;差分运算去掉了相似区域保留了不同区域,前方车辆阴影将作为明显的轮廓得以显现;通过二值化和滤波和形态学运算,可以去除毛刺和噪声;根据闭合轮廓计算以及轮廓的形状、大小、位置等先验知识,可以剔除绝大部分干扰,得到候选车辆阴影轮廓,并得到候选车辆区域;使用基于haar-like特征的adaboost分类器可以检测出该区域是否有车辆;使用交叉验证可更进一步减少误检,最终确认前方车辆所在的区域。

附图说明

图1为本发明系统总体流程图;

图2为检测区域设置示意图;

图3为标准车辆阴影矩形轮廓示意图;

图4为车辆阴影扩展到车辆区域示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施的技术方案进行清楚、完整地描述。

本发明提供一种基于双目摄像机和车底阴影的前方车辆检测方法,包括5个步骤。

步骤1,使用双目摄像机同步获取图像,得到差分图像;

图像大小可使用640*480分辨率;本实施例后续参数均针对该分辨率;其他分辨率可以类推;

可对左图像和右图像分别进行对比度和亮度调整,使其基本一致;

得到差分图像是指对左右图像做差分操作,即左右图像对应点像素值直接相减,得到差值图;差值图中小于0的部分,可以直接置0,也可以取其绝对值,得到差分图像;

差分操作时,可用左图像减右图像,也可用右图像减左图像。

步骤2,对差分图像进行二值化、滤波、形态学等处理,得到轮廓图像;

二值化处理方法可以使用阈值分割方法,如otsu(大津法),这是一种自适应阈值分割法;也可以使用双阈值分割以及其他方法;

滤波处理可以选用中值滤波方法,它是一种简单有效的噪声去除方法,中值滤波可以使用3x3模板;也可以使用均值滤波以及其他方法;

形态学处理可以使用形态学开运算,即对图像进行先腐蚀后膨胀的操作,开运算的参数可设为:采用默认锚点位置、尺寸大小为(10,6)的矩形内核。

步骤3,根据轮廓闭合以及轮廓的位置、形状和大小,确定候选车辆阴影轮廓,并确定候选车辆区域;

轮廓闭合检测可以采用常规的轮廓闭合算法,如opencv中的cvfindcontours函数以及cv_retr_external参数,以便只检测最外围轮廓;

轮廓的位置计算指计算闭合轮廓的外接矩形,将外接矩形的中心设定为轮廓中心。

可根据以下规则去除多余的轮廓:

在图像中设定一个方形或梯形的检测区域,如设置整个图像的下方2/3区域,轮廓中心在该检测区域外的轮廓直接去除,如图2所示;

设定一个矩形大小范围和长宽比范围;外接矩形不满足大小范围和长宽比范围时,直接去除;根据经验,矩形的像素大小范围为:宽度[30,200],高度[10,200],长宽比范围为[2,6];如宽度小于30像素高度小于10像素的轮廓、长宽比小于2或者大于6的轮廓都会被去除;

闭合轮廓的hu不变矩可使用常规的求解算法,如使用opencv中的humoments函数可计算7个hu不变矩;

标准车辆阴影矩形轮廓是包含一个640*480的二值图片,里面包含一个200*50、线宽为2的矩形,如图3所示;计算该图片的轮廓及其7个不变矩;

计算与标准车辆阴影轮廓(矩形)不变矩之间的距离;距离计算公式如下:

其中,mai和mbi分别为a、b两个的七个不变矩的值,m(a,b)为a,b轮廓的距离;

距离大于给定阈值时直接去除;该阈值可设为2.15。

通过上述筛选,留下的轮廓是最终的候选车辆阴影轮廓;

将该阴影区域宽度的4/3倍作为车辆候选区域的宽度及高度,即车辆候选区域是边长为4/3阴影区域宽度的正方形;

车辆的底部一般位于车辆阴影处,车辆候选区域将车辆阴影区域作为下边界,向图像上方对称扩展,如图4所示。

步骤4,对左图中的候选车辆区域,用分类器进行验证,检测该区域是否存在车辆;

可以使用harr-like和adaboost分类器,确定上述候选车辆区域中是否有车辆;

haar-like特征可以反映图像在特定方向上的灰度变化特征,可以很好地描述车辆这类刚性物体;adaboost分类器是一种级联分类器,将多个简单的弱分类器级联组合成为强分类器,能保证高检出率的同时有低误检率;

使用harr-like和adaboost分类器时需要预先进行训练,才能使用;

一般情况下的训练样本参数可设置为:分类器器层数为20层,分类器每一层的最小检测率为0.999,分类器每一层的最大误检率为0.5,每一层的正样本数为3000,负样本数为5000,并且图片大小为20*20,使用特征为haar特征的基本模型;如opencv中使用cvbooststarttraining函数的对应参数对应为:numstages=20,minhitrate=0.999,maxfalsealarmrate=0.5,numpos=3000,numneg=5000,w=20,h=20,mode=basic,featuretype=haar;

也可以使用其他分类器来检测上述候选车辆区域中是否有车辆。

步骤5,在右图中对应区域进行交叉验证,最终确定前方车辆所在区域;

针对右图像的交叉验证,是指若在左图像中候选车辆区域检测到车辆后,还需要在右图像中对应候选车辆区域检测是否有车辆;

是否为同一车辆,可以在左右候选区域进行特征点检测和匹配,若特征点匹配率达到80%以上,确定是同一车辆。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;或者修改各个步骤的使用顺序,而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围;本发明各种阈值及范围的取值,也会因为装置具体的参数不同而有所改变。

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