掌桥专利:专业的专利平台
掌桥专利
首页

一种基于矢量化航拍图像的道路交通标线检测方法

文献发布时间:2024-01-17 01:23:17


一种基于矢量化航拍图像的道路交通标线检测方法

技术领域

本发明涉及道路标线检测和无人机视觉技术领域,尤其涉及一种基于矢量化航拍图像的道路交通标线检测方法。

背景技术

随着交通道路上车流量以及人流量的增多,清晰的道路交通标线可以帮助驾驶员安全驾驶。在交通执法巡查时,也可通过检测道路交通标线来监控是否有车辆违规行驶。在迅速发展的智能驾驶、无人驾驶等技术中,也广泛采用检测车道线的方法来辅助车辆进行车道保持。

现有的道路交通标线检测技术一般是以驾驶员的角度为基础,而该技术应用的单帧画面可视范围受限且识别的道路标线种类较少,不适用于航拍图像的处理。而针对无人机航拍图像的道路交通标线检测,则以正摄影像、直线型车道线检测为主。采用人工的方法,虽然可以准确检测出无人机低空航拍图像中的道路交通标线,但是费时费力、效率低下。

因此通过采用航拍图像去检测道路标线是必要的,避免人工方法的效率低下,同时避免传统方法检测道路标线带来的误差。

发明内容

本发明要解决的技术问题是针对上述现有技术的不足,提供一种基于矢量化航拍图像的道路交通标线检测方法,实现道路交通标线的检测。

为解决上述技术问题,本发明所采取的技术方案是:一种基于矢量化航拍图像的道路交通标线检测方法,包括以下步骤:

步骤1:获取航拍的道路图像;

通过规定无人机飞行的高度以及偏转角度,考虑环境因素后完成无人机对道路的拍摄;

步骤2:对获取的道路图像进行边缘增强预处理;

采用基于Sobel算子的边缘增强算法对航拍获取得到的道路图像进行预处理,以减轻图像中噪音的干扰,更好的提取出道路标线的边缘;

步骤3:对边缘增强预处理后的道路图像进行道路标线线段的提取,得到道路标线线段候选集合C,并输出每条道路标线的起点、中间点和终点这三个关键点;

使用LSD算法直接在边缘增强预处理后的道路图像进行道路标线线段提取,通过线段集合输出每条道路标线的起点、中间点和终点;

记边缘增强后图像为I

C=LSD(I

道路标线线段候选集合C中第i条线段c

其中,i=1、2、…、l,l为集合C中线段总数,

步骤4:使用裁剪算法对道路标线线段候选集合C中道路标线线段进行裁剪,实现数据增强;

使用Cohen-Sutherland裁剪算法判断被裁剪的线段是否位于矩形框内,以此对线段候选集合C中线段进行裁剪,具体包括以下步骤:

步骤4.1:确定被裁剪线段的端点坐标P

步骤4.2:对端点P

步骤4.3:如果Code1=Code2=0,则说明P1、P2两个端点都处于滑动矩形窗内部,那么被裁减的该直线段是完全可见的,应该予以保留,并执行步骤4.7;否则,执行步骤4.4;

步骤4.4:如果Code1&Code2≠0,则说明线段的两个端点P1、P2都处于滑动矩形窗的外部,那么被裁减的该直线段是完全不可见的,应当予以丢弃,并执行步骤4.8;否则,执行步骤4.5;

步骤4.5:判断端点P1在滑动矩形窗的位置,如果P1在矩形滑动窗口之内,则将端点P1和P2的编码和坐标进行交换,使端点P1始终保持在滑动矩形窗之外;

步骤4.6:按照从右到左的顺序,逐步检测端点P1的二进制区域编码,检测到第一个“1”时,则判定该直线段与滑动矩形窗的某条边交会,并求解直线段与该条边的交叉点P,由此该直线段被分为P1P、P2P两部分,并抛却P1P这段,将P和P1的坐标值进行互换,并重新执行步骤4.2,对新获得的直线段P2P进行判断;

步骤4.7:绘制滑动矩形窗内完全可见的部分即为当前道路标线线段P1P2;

步骤4.8:裁剪算法结束;

步骤5:使步骤4获得的裁剪后的道路标线线段图像作为道路标线样本集,对原始航拍图像I和道路标线样本集中的图像J进行特征提取,通过匈牙利匹配算法获得道路标线;

步骤5.1:对原始航拍图像I和样本集中的图像J分别构造Laplace矩阵L

分别对矩阵L

L

L

其中,λ

对正交矩阵S执行符号校正获得

步骤5.2:对初始匹配矩阵M进行行列规约:令该矩阵M从第一行至最后一行逐步减去当前所在行的最小元素,随后对每一列进行相同操作,使所获得的矩阵F中每行每列都出现零元素;

步骤5.3:将矩阵F中的非零元素替换成零元素,零元素替换成1元素,即获得新矩阵G;

步骤5.4:在新矩阵G中选出包含1元素最少的行,然后在该行中筛选出包含1元素最少的一列,选定此元素并将其所在行和列元素均进行置零;

步骤5.5:重复步骤5.3和5.4,直至新矩阵F中无1元素,获得一个独立1元素组;

步骤5.6:判断步骤5.5所得到的独立1元素组是否为初始匹配矩阵M的最大独立1元素组,如果不是,则再寻找可以扩路的方法对步骤5.5获得的独立1元素组进行扩张,得到初始匹配矩阵M的最大独立1元素组;如果独立1元素组中1元素的个数等于矩阵M阶数,则已经得到了原始航拍图像与样本集中航拍图像的匹配矩阵M的最优解,停止计算,进入步骤5.8;否则进入下一步骤5.7;

步骤5.7:采用增广路径的方法对矩阵F进行处理,获得中间状态矩阵;

做最少的直线来覆盖矩阵F的所有0元素,再在没有被直线覆盖的部分找出最小的元素;在被直线覆盖的各行减去所得的最小元素,在被直线覆盖的各列加上该最小元素,得到中间状态矩阵,返回步骤5.3;

步骤5.8:记步骤5.6得到最优解矩阵为Z;矩阵Z中的元素Z

采用上述技术方案所产生的有益效果在于:本发明提供的一种基于矢量化航拍图像的道路交通标线检测方法,通过坐标的自适应磁化提高了算法对车道线的检测和跟踪能力,同时会产生一些与车道线相关的特征信息。通过Laplace谱和匈牙利匹配算法实现航拍图片与样本集图像的匹配,然后结合上述特征信息和其他参数等信息,就可以基本确定车道线类型。在减少光照强度变化、天气和阴影对道路交通标线检测影响的同时简化了计算过程,减小了计算量,从而有效的实现了道路交通标线检测的机载实时处理,并且同时检测出道路交通标线,提高车道线检测的位置精度。

附图说明

图1为本发明实施例提供的一种基于矢量化航拍图像的道路交通标线检测方法的流程图;

图2为本发明实施例提供的航拍的道路图像;

图3为本发明实施例提供的提取道路标线线段的道路图像。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

本实施例中,一种基于矢量化航拍图像的道路交通标线检测方法,如图1所示,包括以下步骤:

步骤1:获取航拍的道路图像;

通过规定无人机飞行的高度以及偏转角度,考虑天气因素、阴影、时间等环境因素后完成无人机对道路的拍摄,如图2所示;

步骤2:对获取的道路图像进行边缘增强预处理;

采用基于Sobel算子的边缘增强算法对航拍获取得到的道路图像进行预处理,以减轻图像中阴影等噪音的干扰,更好的提取出道路标线的边缘;

Sobel算子在x、y方向的卷积核分别为:

利用上述卷积核对图像进行卷积运算,分别使得了垂直、水平边缘具有最大响应;Sobel算子计算图像水平和垂直一阶或二阶梯度的幅度和自变量值,最后计算沿角度方向的模量最大值并获得图像的边缘。

步骤3:对边缘增强预处理后的道路图像进行道路标线线段的提取,得到道路标线线段候选集合C,并输出每条道路标线的起点、中间点和终点这三个关键点;

为了从预处理后的道路图像中提取出包含道路标线的集合,需要进行线段提取。本发明通过使用LSD算法直接在边缘增强预处理后的道路图像进行道路标线线段提取,如图3所示,通过线段集合输出每条道路标线的起点、中间点和终点;

使用LSD算法直接在边缘增强预处理后的道路图像上进行线段提取,记边缘增强后图像为I

C=LSD(I

道路标线线段候选集合C中第i条线段c

其中,i=1、2、…、l,l为集合C中线段总数,

步骤4:使用裁剪算法对道路标线线段候选集合C中道路标线线段进行裁剪,实现数据增强;

使用Cohen-Sutherland裁剪算法判断被裁剪的线段是否位于矩形框内,以此对线段候选集合C中线段进行裁剪,具体包括以下步骤:

步骤4.1:确定被裁剪线段的端点坐标P

步骤4.2:对端点P

步骤4.3:如果Code1=Code2=0,则说明P1、P2两个端点都处于滑动矩形窗内部,那么被裁减的该直线段是完全可见的,应该予以保留,并执行步骤4.7;否则,执行步骤4.4;

步骤4.4:如果Code1&Code2≠0,则说明线段的两个端点P1、P2都处于滑动矩形窗的外部,那么被裁减的该直线段是完全不可见的,应当予以丢弃,并执行步骤4.8;否则,执行步骤4.5;

步骤4.5:判断端点P1在滑动矩形窗的位置,如果P1在矩形滑动窗口之内,则将端点P1和P2的编码和坐标进行交换,使端点P1始终保持在滑动矩形窗之外;

步骤4.6:按照从右(最低位)到左(最高位)的顺序,逐步检测端点P1的二进制区域编码,检测到第一个“1”时,则判定该直线段与滑动矩形窗的某条边交会,并求解直线段与该条边的交叉点P,由此该直线段被分为P1P、P2P两部分,并抛却P1P这段,将P和P1的坐标值进行互换,并重新执行步骤4.2,对新获得的直线段P2P进行判断;

步骤4.7:绘制滑动矩形窗内完全可见的部分即为当前道路标线线段P1P2;

步骤4.8:裁剪算法结束;

步骤5:使步骤4获得的裁剪后的道路标线线段图像作为道路标线样本集,对原始航拍图像I和道路标线样本集中的图像J进行特征提取,通过匈牙利匹配算法获得道路标线;

步骤5.1:对原始航拍图像I和样本集中的图像J分别构造Laplace矩阵L

分别对矩阵L

L

L

其中,λ

对正交矩阵S执行符号校正获得

步骤5.2:对初始匹配矩阵M进行行列规约:令该矩阵M从第一行至最后一行逐步减去当前所在行的最小元素,随后对每一列进行相同操作,使所获得的矩阵F中每行每列都出现零元素;

步骤5.3:将矩阵F中的非零元素替换成零元素,零元素替换成1元素,即获得新矩阵G;

步骤5.4:在新矩阵G中选出包含1元素最少的行,然后在该行中筛选出包含1元素最少的一列,选定此元素并将其所在行和列元素均进行置零;

步骤5.5:重复步骤5.3和5.4,直至新矩阵F中无1元素,获得一个独立1元素组;

步骤5.6:判断步骤5.5所得到的独立1元素组是否为初始匹配矩阵M的最大独立1元素组,如果不是,则再寻找可以扩路的方法对步骤5.5获得的独立1元素组进行扩张,(寻找可扩路的方法是指,在矩阵中找到一个包含0元素且不在当前独立1元素组中的元素,然后通过搜索算法(如深度优先搜索、广度优先搜索等)查找与该元素相邻的其他0元素,并尝试将其添加到当前独立1元素组中),得到初始匹配矩阵M的最大独立1元素组;如果独立1元素组中1元素的个数等于矩阵M阶数,则已经得到了原始航拍图像与样本集中航拍图像的匹配矩阵M的最优解,停止计算,进入步骤5.8;否则进入下一步骤5.7;

步骤5.7:采用增广路径的方法对矩阵F进行处理,获得中间状态矩阵;

做最少的直线来覆盖矩阵F的所有0元素,再在没有被直线覆盖的部分找出最小的元素;在被直线覆盖的各行减去所得的最小元素,在被直线覆盖的各列加上该最小元素,得到中间状态矩阵,返回步骤5.3;

步骤5.8:记步骤5.6得到最优解矩阵为Z;矩阵Z中的元素Z

矩阵Z实际上描述了原始图像和样本集图像之间特征点更好地匹配的情况。在步骤5.8得到最优解时的矩阵Z后,可以查看其中为1的元素所在行列。这些行和列分别对应于原始航拍图像中被选中作为匹配特征点的点和样本集中的航拍图像中被选中的点。如果存在一组匹配方案使得Z矩阵中的所有1元素构成了一个最大独立1元素集,那么可以得到一个最优的匹配结果,即每个特征点仅与一个其他特征点匹配,而没有任何冲突或重复的情况。因此,可以认为这个原始航拍图像与样本集中的航拍图像匹配了。同时,最大化矩阵Z中的权值和也意味着找到了最佳的匹配方案。具体地,这些1元素的位置表示了原始航拍图像的第i个特征点与样本集中的航拍图像中的第j个特征点匹配,即表示原始航拍图像中的第i个特征点与样本集中的航拍图像中的第j个特征点相似或相同。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。

技术分类

06120116174526