首页 > 专利 > 长安大学 > 一种辅助驾驶中压线检测方法专利详情

一种辅助驾驶中压线检测方法   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2019-06-26
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2019-10-29
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2021-06-22
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2039-06-26
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201910559581.5 申请日 2019-06-26
公开/公告号 CN110287884B 公开/公告日 2021-06-22
授权日 2021-06-22 预估到期日 2039-06-26
申请年 2019年 公开/公告年 2021年
缴费截止日
分类号 G06K9/00G06K9/32G06K9/62G06T5/00G06T5/20G06T7/13G06T7/136G06T7/187G06T7/194 主分类号 G06K9/00
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 3
权利要求数量 4 非专利引证数量 1
引用专利数量 0 被引证专利数量 0
非专利引证 1、CN 108846397 A,2018.11.20CN 106373218 A,2017.02.01CN 106097332 A,2016.11.09CN 109145713 A,2019.01.04CN 105760812 A,2016.07.13CN 108846397 A,2018.11.20CN 108648233 A,2018.10.12CN 108345855 A,2018.07.31王建华等“.车辆压线检测方法”《.电子科技》.2016,第26卷(第2期),卢军等.“基于视觉的小型冲压件识别定位研究”《.陕西科技大学学报》.2017,第35卷(第4期),;
引用专利 被引证专利
专利权维持 3 专利申请国编码 CN
专利事件 转让 事务标签 公开、实质审查、授权、权利转移
申请人信息
申请人 第一申请人
专利权人 长安大学 当前专利权人 合肥九州龙腾科技成果转化有限公司
发明人 黄鹤、屈卉、刘博宇、牛梓豪、李尚朋、汪贵平、王会峰、许哲、茹锋、黄莺、惠晓滨 第一发明人 黄鹤
地址 陕西省西安市南二环路中段 邮编 710064
申请人数量 1 发明人数量 11
申请人所在省 陕西省 申请人所在市 陕西省西安市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
西安通大专利代理有限责任公司 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
范巍
摘要
本发明公开了一种辅助驾驶中压线检测方法,与现有最新ImageAI检测识别技术结合,能够准确识别图像中的目标车辆,且能够利用Hough变换准确提取车道线,并能经过前后轮位置估计方法准确估计车轮位置,最终通过图像融合以及像素点RGB值提取准确检测车辆的压线情况,具有良好的检测精度。
  • 摘要附图
    一种辅助驾驶中压线检测方法
  • 说明书附图:图1
    一种辅助驾驶中压线检测方法
  • 说明书附图:图2
    一种辅助驾驶中压线检测方法
  • 说明书附图:图3
    一种辅助驾驶中压线检测方法
  • 说明书附图:图4
    一种辅助驾驶中压线检测方法
  • 说明书附图:图5
    一种辅助驾驶中压线检测方法
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2023-02-14 专利权的转移 登记生效日: 2023.02.02 专利权人由长安大学变更为合肥九州龙腾科技成果转化有限公司 地址由710064 陕西省西安市南二环路中段变更为230000 安徽省合肥市蜀山经济开发区井岗路电商园一期2号楼203
2 2021-06-22 授权
3 2019-10-29 实质审查的生效 IPC(主分类): G06K 9/00 专利申请号: 201910559581.5 申请日: 2019.06.26
4 2019-09-27 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种辅助驾驶中压线检测方法,其特征在于,包括以下步骤:
步骤1:获取车辆在公路上行驶的交通图像,并获取感兴趣区域,即从交通图像中以方框截取出被测车辆和车道线所在的区域;
步骤2:对步骤1中获得的感兴趣区域进行灰度处理;
步骤3:对步骤2中获得的灰度图进行平滑处理;
步骤4:采用Canny边缘检测的方法,对步骤3获得的图像进行边缘检测,获得图像的边缘;
步骤5:将步骤4得到的图像在进行车道线参数提取后,进行Hough变换得到车道线;
步骤6:对步骤1中获得的感兴趣区域进行车辆目标检测;
步骤7:对步骤6中车辆目标检测后的图像进行定位并取出;
步骤8:对步骤7中得到的图像采用GrabCut算法进行车辆的交互式前景提取;
GrabCut算法具体为:输入一个矩形,矩形外的所有区域必为背景,矩形框内的图像是未知的,计算机使用一个高斯混合模型对前景和背景建模,再使用mincut算法后,区分前景和背景,其中GrabCut函数中的掩模图像采用掩码图像模式;
步骤9:对步骤8获得的车辆区域图像进行中值滤波以及图像二值化处理;
采用中值滤波函数medfilt2对步骤8获得的车辆区域图像进行中值滤波处理,采用imbinarize函数对中值滤波后的图像进行二值化处理;
步骤10:对步骤9获得的图像进行删除小面积连通域处理,使图像仅留下最大的连通域,即目标车辆区域;
利用bwareaopen函数删除图像中小面积连通域,其格式为BW2=bwareaopen(BW,P,conn),此函数用来删除二值图像BW中面积小于P的对象,默认情况下conn使用8邻域,此函数处理后即得到图像中的最大连通域,即目标车辆区域;
步骤11:对步骤10获得的车辆区域图像进行绘制最小外接矩形处理,并获取该矩形的宽高比,该值即为车辆近似的宽高比;
绘制车辆区域最小外接矩形的方法为:对于一个凸多边形O来说,其拥有两对和x及y方向上四个端点相切的切线,四条线确定了一个凸多边形的外接矩形,假设按照顺时针顺序输入一个凸多边形的n个顶点:①计算该凸多边形的外接矩形的四个端点,称之为xminO,xmaxO,yminO,ymaxO;②通过四个点构造凸多边形O的四条切线,该四条切线确定了两个卡壳集合;③如果一条切线 与凸多边形一条边重合,那么计算由这四条切线决定的矩形的面积,并且保存为当前最小值,否则将当前最小值定义为无穷大;④顺时针旋转线直到其中一条切线和凸多边形的一条边重合;⑤计算新矩形的面积,并且和当前最小值比较,如果小于当前最小值则更新,并保存确定最小值的矩形信息;⑥重复步骤④和步骤⑤,直到线旋转过的角度大于90度;⑦输出外接矩形的最小面积;⑧绘制凸多边形O的最小外接矩形;
步骤12:对步骤10获得的图像进行区域边界追踪处理,以获取车辆区域的轮廓边缘坐标;
获取车辆区域的轮廓边缘坐标的方法为:对图像中的每一个前景像素点都进行边缘追踪算法得到连通域边缘轮廓像素点,并将连通域边缘轮廓像素点坐标存进自定义数组coor中;
步骤13:对步骤12获得的车辆轮廓坐标进行条件判断,估计并画出车辆的前后轮位置;
估计车辆后轮位置的方法为:遍历coor数组中的所有坐标值,分别找到其中与图像左下角与右下角的距离最近的两个像素点,这两个像素点的连线Line1即为车辆的后轮位置;
估计车辆前轮位置的方法分为两种情况:其一,当步骤11中获取的宽高比whb<阈值Q时,即车辆倾斜程度较小时,认为图像中车辆前轮连线由车辆后轮连线直接向垂直方向上移h得到,其中h为目标车辆前后轮之间的距离;其二,当宽高比whb≥阈值Q时,即车辆倾斜程度较大时,通过遍历coor数组中坐标值,找到横坐标最小或最大的像素点Leftpoint,当车辆前轮向左倾斜,则取横坐标最小的像素点为左前轮位置,当车辆前轮向右倾斜,则取横坐标最大的像素点,此点即为车辆的右前轮位置,左前轮位置通过以Leftpoint为起点,绘制与两后轮位置连线Line1斜率相同且长度相同的线段Line2得到;
步骤14:对步骤13获得的车辆前后轮位置估计图像与步骤5得到的车道线图像进行小波变换图像融合,并检测车道线与车前、后轮连接线是否相交,若相交说明车辆压线;否则说明车辆未压线;
步骤13获得的车辆前后轮位置估计图像A与步骤5得到的车道线图像B进行融合,所用的方法具体如下:
步骤14.1:将两张图像转化为double类型;
步骤14.2:对步骤13获得的车辆前后轮位置估计图像A与步骤5得到的车道线图像B进行二层分解,建立图像的小波塔型分解;
步骤14.3:对各分解层分别进行融合处理,各分解层上的不同频率分量采用不同的融合算子进行融合处理,最终得到融合后的小波金字塔;
步骤14.4:对融合后所得小波金字塔进行小波重构,所得到的重构图像即为融合图像,而在最终的融合图像中,图像A与图像B中的显著目标,即车道线与车前、后轮连接线都被保留;
步骤14.5:对所得融合图像进行观察检测,即对融合图像各个像素点进行RGB数值筛选,若筛选出交点处像素点,则证明目标车辆压线;若没有筛选出交点处像素点,则证明目标车辆没有压线。

2.根据权利要求1所述的一种辅助驾驶中压线检测方法,其特征在于,步骤3中采用高斯滤波进行平滑处理。

3.根据权利要求1所述的一种辅助驾驶中压线检测方法,其特征在于,步骤4中进行Canny边缘检测的具体步骤为:
步骤4.1:计算高斯平滑处理后的图片中在每个点的梯度,变化值越大表明是边缘的概率越高,计算梯度的时候使用了卷积,相关计算如下:
式中,Gx为x方向梯度,Gy为y方向梯度,G为梯度,θ为x和y两个方向梯度的夹角;
步骤4.2:非极大抑制,计算完梯度后,对整幅图像进行扫描,去除非边界上的点,具体是将每个像素点的梯度值与梯度方向上的两个点进行比较,当且仅当这个点的梯度值最大才保留,否则舍弃;
步骤4.3:设置两个阈值low_threshold、high_threshold,在经步骤4.2得到的图像中,由步骤4.1所求的每个点的梯度gradient与阈值的关系如下:
(1)gradient≤low_threshold:丢弃此点,即该点不是边界点;
(2)gradient≥high_threshold:保留此点,即该点是边界点;
(3)low_threshold
4.根据权利要求3所述的一种辅助驾驶中压线检测方法,其特征在于,步骤6中所述的车辆目标检测方法为:首先下载用于目标检测的RetinaNet模型文件,再使用ImageAI实现目标检测任务;
步骤7中对图像的定位取出方法为:记录车辆目标检测后的图像中的左上角顶点和右下角顶点坐标,再遍历图像中的所有点,将矩形区域以外的像素点的颜色改成黑色,最后保存修改像素点后的图像。
说明书

技术领域

[0001] 本发明属于图像处理技术领域,具体涉及一种辅助驾驶中压线检测方法。

背景技术

[0002] 众所周知,根据法规,机动车在公路上行驶,不允许倒车、逆行、穿越中央分隔带掉头或者在车道内停车,以及骑、轧车行道分界线或者在路肩上行驶,因此这就要求车辆在公路上行驶时不得压线。一方面,随着人们生活水平的提高,私家车的数量越来越多,这使得道路上的车辆越来越多,给执法部门执法带来了相当大的困难,另一方面,随着科技的发展,无人驾驶车辆逐步进入人们的生活,而且无人车在出厂前同样需要进行道路行驶压线检测,综上所述,一种便捷且准确的压线检测方法是非常必要的。

发明内容

[0003] 本发明的目的在于提供一种辅助驾驶中压线检测方法,以克服现有检测技术存在的缺陷,本发明与现有最新ImageAI检测识别技术结合,能够准确识别图像中的目标车辆,且能够利用Hough变换准确提取车道线,并能经过前后轮位置估计方法准确估计车轮位置,最终通过图像融合以及像素点RGB值提取准确检测车辆的压线情况,具有良好的检测精度。
[0004] 为达到上述目的,本发明采用如下技术方案:
[0005] 一种辅助驾驶中压线检测方法,包括以下步骤:
[0006] 步骤1:获取车辆在公路上行驶的交通图像,并获取感兴趣区域,即从交通图像中以方框截取出被测车辆和车道线所在的区域;
[0007] 步骤2:对步骤1中获得的感兴趣区域进行灰度处理;
[0008] 步骤3:对步骤2中获得的灰度图进行平滑处理;
[0009] 步骤4:采用Canny边缘检测的方法,对步骤3获得的图像进行边缘检测,获得图像的边缘;
[0010] 步骤5:将步骤4得到的图像在进行车道线参数提取后,进行Hough变换得到车道线;
[0011] 步骤6:对步骤1中获得的感兴趣区域进行车辆目标检测;
[0012] 步骤7:对步骤6中车辆目标检测后的图像进行定位并取出;
[0013] 步骤8:对步骤7中得到的图像采用GrabCut算法进行车辆的交互式前景提取;
[0014] 步骤9:对步骤8获得的车辆区域图像进行中值滤波以及图像二值化处理;
[0015] 步骤10:对步骤9获得的图像进行删除小面积连通域处理,使图像仅留下最大的连通域,即目标车辆区域;
[0016] 步骤11:对步骤10获得的车辆区域图像进行绘制最小外接矩形处理,并获取该矩形的宽高比,该值即为车辆近似的宽高比;
[0017] 步骤12:对步骤10获得的图像进行区域边界追踪处理,以获取车辆区域的轮廓边缘坐标;
[0018] 步骤13:对步骤12获得的车辆轮廓坐标进行条件判断,估计并画出车辆的前后轮位置;
[0019] 步骤14:对步骤13获得的车辆前后轮位置估计图像与步骤5得到的车道线图像进行小波变换图像融合,并检测车道线与车前、后轮连接线是否相交,若相交说明车辆压线;否则说明车辆未压线。
[0020] 进一步地,步骤3中采用高斯滤波进行平滑处理。
[0021] 进一步地,步骤4中进行Canny边缘检测的具体步骤为:
[0022] 步骤4.1:计算高斯平滑处理后的图片中在每个点的梯度,变化值越大表明是边缘的概率越高,计算梯度的时候使用了卷积,相关计算如下:
[0023]
[0024]
[0025]
[0026] 式中,Gx为x方向梯度,Gy为y方向梯度,G为梯度,θ为x和y两个方向梯度的夹角;
[0027] 步骤4.2:非极大抑制,计算完梯度后,对整幅图像进行扫描,去除非边界上的点,具体是将每个像素点的梯度值与梯度方向上的两个点进行比较,当且仅当这个点的梯度值最大才保留,否则舍弃;
[0028] 步骤4.3:设置两个阈值low_threshold、high_threshold,在经步骤4.2得到的图像中,由步骤4.1所求的每个点的梯度gradient与阈值的关系如下:
[0029] (1)gradient≤low_threshold:丢弃此点,即该点不是边界点;
[0030] (2)gradient≥high_threshold:保留此点,即该点是边界点;
[0031] (3)low_threshold
[0032] 进一步地,步骤6中所述的车辆目标检测方法为:首先下载用于目标检测的RetinaNet模型文件,再使用ImageAI实现目标检测任务;
[0033] 步骤7中对图像的定位取出方法为:记录车辆目标检测后的图像中的左上角顶点和右下角顶点坐标,再遍历图像中的所有点,将矩形区域以外的像素点的颜色改成黑色,最后保存修改像素点后的图像。
[0034] 进一步地,步骤8中GrabCut算法具体为:输入一个矩形,矩形外的所有区域必为背景,矩形框内的图像是未知的,计算机使用一个高斯混合模型对前景和背景建模,再使用mincut算法后,区分前景和背景,其中GrabCut函数中的掩模图像采用掩码图像模式;
[0035] 步骤9中采用中值滤波函数medfilt2对步骤8获得的车辆区域图像进行中值滤波处理,采用imbinarize函数对中值滤波后的图像进行二值化处理;
[0036] 步骤10中利用bwareaopen函数删除图像中小面积连通域,其格式为BW2=bwareaopen(BW,P,conn),此函数用来删除二值图像BW中面积小于P的对象,默认情况下conn使用8邻域,此函数处理后即得到图像中的最大连通域,即目标车辆区域。
[0037] 进一步地,步骤11中绘制车辆区域最小外接矩形的方法为:对于一个凸多边形O来说,其拥有两对和x及y方向上四个端点相切的切线,四条线确定了一个凸多边形的外接矩形,假设按照顺时针顺序输入一个凸多边形的n个顶点:①计算该凸多边形的外接矩形的四个端点,称之为xminO,xmaxO,yminO,ymaxO;②通过四个点构造凸多边形O的四条切线,该四条切线确定了两个卡壳集合;③如果一条切与凸多边形一条边重合,那么计算由这四条切线决定的矩形的面积,并且保存为当前最小值,否则将当前最小值定义为无穷大;④顺时针旋转线直到其中一条切线和凸多边形的一条边重合;⑤计算新矩形的面积,并且和当前最小值比较,如果小于当前最小值则更新,并保存确定最小值的矩形信息;⑥重复步骤④和步骤⑤,直到线旋转过的角度大于90度;⑦输出外接矩形的最小面积;⑧绘制凸多边形O的最小外接矩形。
[0038] 进一步地,步骤12中获取车辆区域的轮廓边缘坐标的方法为:对图像中的每一个前景像素点都进行边缘追踪算法得到连通域边缘轮廓像素点,并将连通域边缘轮廓像素点坐标存进自定义数组coor中。
[0039] 进一步地,步骤13中估计车辆后轮位置的方法为:遍历coor数组中的所有坐标值,分别找到其中与图像左下角与右下角的距离最近的两个像素点,这两个像素点的连线Line1即为车辆的后轮位置。
[0040] 进一步地,步骤13中估计车辆前轮位置的方法分为两种情况:其一,当步骤11中获取的宽高比whb<阈值Q时,即车辆倾斜程度较小时,认为图像中车辆前轮连线由车辆后轮连线直接向垂直方向上移h得到,其中h为目标车辆前后轮之间的距离;其二,当宽高比whb≥阈值Q时,即车辆倾斜程度较大时,通过遍历coor数组中坐标值,找到横坐标最小或最大的像素点Leftpoint,当车辆前轮向左倾斜,则取横坐标最小的像素点,当车辆前轮向右倾斜,则取横坐标最大的像素点,此点即为车辆的左前轮位置,右前轮位置通过以Leftpoint为起点,绘制与两后轮位置连线Line1斜率相同且长度相同的线段Line2得到。
[0041] 进一步地,步骤14中步骤13获得的车辆前后轮位置估计图像A与步骤5得到的车道线图像B进行融合,所用的方法具体如下:
[0042] 步骤14.1:将两张图像转化为double类型;
[0043] 步骤14.2:对步骤13获得的车辆前后轮位置估计图像A与步骤5得到的车道线图像B进行二层分解,建立图像的小波塔型分解;
[0044] 步骤14.3:对各分解层分别进行融合处理,各分解层上的不同频率分量采用不同的融合算子进行融合处理,最终得到融合后的小波金字塔;
[0045] 步骤14.4:对融合后所得小波金字塔进行小波重构,所得到的重构图像即为融合图像,而在最终的融合图像中,图像A与图像B中的显著目标,即车道线与车前、后轮连接线都被保留;
[0046] 步骤14.5:对所得融合图像进行观察检测,即对融合图像各个像素点进行RGB数值筛选,若筛选出交点处像素点,则证明目标车辆压线;若没有筛选出交点处像素点,则证明目标车辆没有压线。
[0047] 与现有技术相比,本发明具有以下有益的技术效果:
[0048] 在对车辆进行提取时,传统的语义分割方法,对计算机配置要求较高,本发明中调用ImageAI库,ImageAI提供4种不同的算法和模型来进行图像预测,并在ImageNet‑1000数据集上进行了训练,4种算法包括SqueezeNet,ResNet,InceptionV3和DenseNet,可以轻松实现多种物体的识别。
[0049] 在对车辆区域的前后轮位置进行估计时,能对车辆的不同情况通过宽高比与阈值的比较进行准确的车轮位置估计,大大提高了检测的准确性。
[0050] 在对车辆前后轮是否压线进行判断时,分别对车道线图像和车辆前后轮位置估计图像进行各个像素点RGB数值的提取,由于车道线与车前、后轮连接线交点处像素的RGB数值与未发生交点处像素RGB数值不同,故此可独立筛选出交点处像素点,最后若筛选出该像素点,则证明目标车辆压线;若没有筛选出该像素点,则证明目标车辆没有压线。

实施方案

[0057] 下面结合附图对本发明作进一步详细描述:
[0058] 参见图1,一种辅助驾驶中压线检测方法,具体步骤如下:
[0059] 步骤1:获取车辆在公路上行驶的交通图像,并获取感兴趣区域,即从交通图像中以方框截取出被测车辆和车道线所在的区域,初步实现定位功能,排除图像中多余元素的干扰;
[0060] 步骤2:对步骤1中获得的交通图像进行预处理即灰度处理;
[0061] 步骤3:对步骤2中获得的灰度图进行高斯平滑处理,即进行高斯滤波,高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。高斯滤波的具体操作是:用一个模板(或称卷积、掩模)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值。
[0062] 步骤4:采用Canny边缘检测的方法,对步骤3获得的图像进行边缘检测,获得图像的边缘;
[0063] 具体步骤为:
[0064] 步骤4.1:计算高斯平滑处理后的图片中每个点的梯度,变化值越大表明是边缘的概率越高,计算梯度的时候使用了卷积,相关计算如下:
[0065]
[0066]
[0067]
[0068] 式中,Gx为x方向梯度,Gy为y方向梯度,G为梯度,θ为x和y两个方向梯度的夹角;
[0069] 步骤4.2:非极大抑制,计算完梯度后,应该对整幅图像进行一个扫描,去除那些非边界上的点,具体是将每个像素点的梯度值与梯度方向上的两个点进行比较,当且仅当这个点的梯度值最大才保留,否则舍弃;
[0070] 步骤4.3:设置两个阈值low_threshold、high_threshold,在经步骤4.2处理后的图像中,由步骤4.1所求的每个点的梯度gradient与阈值的关系如下:
[0071] (1)gradient≤low_threshold:丢弃此点,即该点不是边界点;
[0072] (2)gradient≥high_threshold:保留此点,即该点是边界点;
[0073] (3)low_threshold
[0074] 这里的高低阈值都是因图片而异的,一般取高阈值为低阈值的3倍。
[0075] 步骤5:将步骤4得到的图像在进行车道线参数提取后,进行Hough变换得到车道线;
[0076] 步骤6:对步骤1中获得的交通图像进行车辆目标检测,首先下载用于目标检测的RetinaNet模型文件,再使用ImageAI实现目标检测任务;
[0077] 步骤7:对步骤6中车辆目标检测后的图像进行定位并取出,具体为:记录选中车辆目标检测后的图像中目标车辆矩形的左上角顶点和右下角顶点坐标,再遍历图像中的所有点,将矩形区域以外的像素点的颜色改成黑色,最后保存修改像素点后的图像;
[0078] 步骤8:采用GrabCut算法进行车辆的交互式前景提取,即输入一个矩形,矩形外的所有区域必为背景,矩形框内的图像是未知的,计算机会使用一个高斯混合模型(GMM)对前景和背景建模,再使用mincut算法后,区分前景和背景。其中GrabCut函数中的掩模图像可以采用矩形模式,也可以采用掩码图像模式,本步骤中采用的为后者,即可得到较好的车辆图像;
[0079] 步骤9:对步骤8获得的车辆区域图像进行中值滤波以及图像二值化处理,所用中值滤波函数为medfilt2,应用此函数可对图像进行中值滤波处理,且能较好地降低椒盐噪声的影响;imbinarize函数可用来对图像进行二值化处理;
[0080] 步骤10:对步骤9获得的图像进行删除小面积连通域处理,使图像仅留下最大的连通域,即车辆区域;可利用bwareaopen函数删除图像中面积较小的连通域。其格式为BW2=bwareaopen(BW,P,conn),此函数可用来删除二值图像BW中面积小于P的对象,默认情况下conn使用8邻域。此函数处理后即可得到图像中的最大连通域,即目标车辆区域;
[0081] 步骤11:对步骤10获得的车辆区域图像进行绘制最小外接矩形处理,并获取该矩形的宽高比,该值即为车辆近似的宽高比;
[0082] 绘制车辆区域最小外接矩形的方法为:对于一个凸多边形O来说,其拥有两对和x及y方向上四个端点相切的切线,四条线确定了一个多边形的外接矩形,但是除非多边形有一条水平的或是垂直的边,否则这个矩形的面积就不能算入最小面积中。然而,可以通过旋转线直到条件满足。假设按照顺时针顺序输入一个凸多边形的n个顶点:①计算该多边形的外接矩形的四个端点,称之为xminO,xmaxO,yminO,ymaxO;②通过四个点构造凸多边形O的四条切线,该四条切线确定了两个卡壳集合;③如果一条或两条线与一条边重合,那么计算由四条线决定的矩形的面积,并且保存为当前最小值,否则将当前最小值定义为无穷大;④顺时针旋转线直到其中一条和多边形的一条边重合;⑤计算新矩形的面积,并且和当前最小值比较,如果小于当前最小值则更新,并保存确定最小值的矩形信息;⑥重复步骤④和步骤⑤,直到线旋转过的角度大于90度;⑦输出外接矩形的最小面积;⑧绘制多边形O的最小外接矩形。
[0083] 可通过步骤11获得的车辆区域的最小外接矩形的宽高比whb来近似车辆的宽高比。
[0084] 步骤12:对步骤10获得的图像进行区域边界追踪处理,以获取车辆区域的轮廓边缘坐标;具体为:
[0085] ①从左到右、从上到下的顺序扫描图像,这样首先会找到目标物体最左上方的边界点(像素点)X0,其具有最小行数值和最小列数值的特点。在此我们定义一个变量temp,用来存储边界点的移动方向。当按照八领域方式检测边界时,初始化temp=3;②在最初边界点X0位置时,按照逆时针方向搜素以当前像素X0为中心的3*3领域,执行以下公式并按从以下方式计算的Res的方向开始寻找:(当temp为偶数时:Res=(temp+7)mod8;当temp为奇数时:Res=(temp+6)mod8)。当遇到新的边界时(找到的第一个与当前像素值相同的像素是一个新的边界元素Xn),更新temp。③如果当前的边界元素Xn等于第二个边界元素X1,而且前面一个边界元素Xn‑1等于X0,则停止;否则,重复第二步;④最终检测到的内边界由像素X0,X1,……,Xn‑2构成。由此得到连通域边缘轮廓像素点,并将连通域边缘轮廓像素点坐标存进自定义数组coor中;
[0086] 步骤13:对步骤12获得的数组coor中车辆轮廓坐标进行条件判断,估计并画出车辆的前后轮位置。通过计算所有坐标中分别与图像左下角以及右下角最近的两点,两点连线即为后轮位置;由于车辆可能会有不同程度的倾斜,汽车前轮位置估计有两种方式。
[0087] 估计车辆后轮位置的方法为:遍历步骤5得到的coor数组中的所有坐标值,分别找到其中与图像左下角与右下角的距离最近的两个像素点,它们的连线Line1即为车辆的后轮大致位置。
[0088] 估计车辆前轮位置的方法可分为两种情况,其一,当whb<阈值Q(即车辆倾斜程度较小)时:可认为图像中车辆前轮连线可由车辆后轮连线直接向垂直方向上移h得到,其中h为目标车辆实际车轮位置情况得到,不同车型的h不同。其二,当whb≥阈值Q(即车辆倾斜程度较大)时:可通过遍历coor数组中坐标值,找到横坐标最小(此处以车辆前轮向左倾斜为例,若车辆右斜,则应找到横坐标最大)的像素点Leftpoint,此点即为车辆的左前轮位置,右前轮位置可通过以Leftpoint为起点,绘制与两后轮位置连线Line1斜率相同且长度相同的线段Line2得到。
[0089] 步骤14:对步骤13获得的车辆前后轮位置估计图像与步骤5得到的车道线图像进行小波变换图像融合,并检测车道线与车前、后轮连接线是否相交。
[0090] 其中,将两张目标图像A、B进行融合所用的方法:
[0091] 步骤14.1:将两张图像转化为double类型,否则使用小波变换输出的会有大量大于1的存在,会导致图像显示有问题。
[0092] 步骤14.2:对图像进行二层分解,建立图像的小波塔型分解。
[0093] 步骤14.3:对各分解层分别进行融合处理,各分解层上的不同频率分量可采用不同的融合算子进行融合处理,最终得到融合后的小波金字塔,即在两张图像的小波分解中,绝对值较大的小波高频系数对应着亮度急剧变化的点,也就是图像中对比度变换较大的边缘特征,对两张照片同样的目标,目标明显的被保留下来,目标不明显的就被忽略,两张图像中的目标的小波变换系数将在不同的分辨率水平上占统治地位。
[0094] 步骤14.4:对融合后所得小波金字塔进行小波重构,所得到的重构图像即为融合图像,而在最终的融合图像中,图像A与图像B中的显著目标,即车道线与车前、后轮连接线都被保留,参见图2。
[0095] 步骤14.5:对所得融合图像进行观察检测,设计了一种基于Pixels的RGB提取判别法来对车辆是否压线进行判断,即对融合图像各个像素点进行RGB数值筛选,由于车道线与车前、后轮连接线交点处像素的RGB数值与未发生交点处像素RGB数值不同,故此可独立筛选出交点处像素点。最后若筛选出该像素点,则证明目标车辆压线;若没有筛选出该像素点,则证明目标车辆没有压线。
[0096] 本发明的具体思路是,分别提取出车道线和车辆,首先,在进行车道线提取的过程中,采用感兴趣区域ROI提取,灰度图转换,高斯平滑处理,Canny边缘检测,最后采用霍夫变换,将车道线较好提取出来,其次,在进行车辆提取的过程中,采用感兴趣区域ROI提取,ImageAI车辆识别,通过识别到的目标物的坐标将车辆区域锁定,最后利用GrabCut算法将车辆较好提取出。参见图4(e)、图4(f),在将车辆区域提取完毕后,首先,对其进行二值化处理,并绘出其最小外接矩形(图中用像素为GRB=(255,0,0)的矩形框标出)。其次,进行车辆的前后轮位置估计。其中车辆的两个后轮位置即为二值化图像中分别距离左下角和右下角最近的两个像素点,而车辆前轮位置估计时存在两种情况:当车辆倾斜程度较小时,如图5(a),车辆前轮连线可由车辆后轮连线直接向垂直方向上移h得到;当车辆倾斜程度较大时,如图5(b),可通过遍历二值化图像轮廓coor数组中坐标值,找到横坐标最小(此处以车辆前轮向左倾斜为例,若车辆右斜,则应找到横坐标最大)的像素点Leftpoint,此点即为车辆的左前轮位置,右前轮位置可通过以Leftpoint为起点,绘制与两后轮位置连线Line1斜率相同且长度相同的线段Line2得到。图5(c)、(d)为车辆区域图像和车道线图像融合后的效果图。图5(e)图像中无白色像素点,说明车轮线与车道线无交点,即不压线;图5(f)图像中有白色像素点,说明车轮线与车道线有交点,即压线。

附图说明

[0051] 图1是本发明流程示意图;
[0052] 图2是图像融合原理图;
[0053] 图3是提取车道线的过程,其中,(a)为感兴趣区域ROI,(b)灰度处理后的图像,(c)高斯平滑处理后的图像,(d)Canny边缘检测后的图像,(e)Hough变换后的图像(图中车道线用像素为RGB=[0,0,255]的直线表示);
[0054] 图4和图5是提取车辆的过程和车辆压线检测的过程。
[0055] 图5中,(a)为感兴趣区域ROI,(b)车辆目标检测后的图像,(c)车辆定位取出后的图像,(d)GrabCut算法提取后的图像,(e)、(f)为车辆区域最小外接矩形图像(图中用像素为RGB=[255,0,0]的矩形框表示);
[0056] 图5中,(a)为车辆前后轮位置估计情况一(图中车辆前、后轮的连接线都用像素为RGB=[0,255,0]的线段表示),(b)为车辆区域前后轮位置估计情况二(图中车辆前、后轮的连接线都用像素为RGB=[0,255,0]的线段表示),(c)、(d)为车辆区域与车道线融合后的图像,(e)、(f)为提取融合后的图像中车轮线连线与车道线的交点图像。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号