2022最新!更面向工业场景:基于视觉方案不同挑战下的车道检测 原创
欢迎关注国内首个以自动驾驶技术栈为主线的交流学习社区!
微信公众号【自动驾驶之心】
Vision-Based Lane Detection and Tracking under Different Challenging Environmental Conditions
领域背景
由于突然的环境变化可能导致严重的车辆碰撞,当道路车道线的能见度较低、模糊或经常看不见时,驾驶非常困难。在车道线检测方面已经进行了大量的研究,大多数车道检测方法都存在四种主要问题:
- (i)由于时间(白天、夜晚)、天气、道路等变化而导致的突然照明变化;
- (ii)当车道线着色、侵蚀或堵塞时,部分或全部被遮挡;
- (iii)雨雪等恶劣天气造成的视野模糊;
- (iv)由于存在其他类似特征,如护栏、路面标记、道路,导致车道检测不正确分隔线、车辆线、树影等;
本文作者提出了一种鲁棒的车道检测和跟踪方法来检测车道线,该方法主要介绍了三个关键技术。首先,应用双边滤波器来平滑和保留边缘,引入了一个优化的强度阈值范围(OITR)来提高canny算子的性能,该算子检测低强度(有色、腐蚀或模糊)车道标记的边缘。第二,提出了一种稳健的车道验证技术,即基于角度和长度的几何约束(ALGC)算法,然后进行霍夫变换,以验证车道线的特征并防止不正确的车道线检测。最后,提出了一种新的车道线跟踪技术,即水平可调车道重新定位范围(HALRR)算法,该算法可以在左、右或两条车道标记在短时间内部分和完全不可见时跟踪车道位置。为了评估所提出方法的性能,论文使用了分辨率为1080x1920,分辨率为24帧/秒的DSDLDE数据集,其中视频帧包含不同的挑战场景。实验结果表明,平均检测率为97.36%,平均检测时间为29.06msec/帧,优于现有方法。
领域现状
车道线是道路的一个非常重要的部分,因为许多交通规则和法规都基于车道线,因此,高级驾驶员辅助系统的性能在很大程度上取决于车道线检测。准确率和鲁棒性是车道线检测两个最重要的特性。由于环境存在剧烈变化,因此检测车道线是非常困难的。车道线检测是不同高级驾驶员辅助系统(ADAS)的基本操作,例如车道偏离警告系统(LDWS)和车道保持辅助系统(LKAS)。一些汽车企业,如Mobileye、BMW、Tesla等,已经开发了包括车道偏离警告和车道保持辅助系统在内的产品。无论是汽车企业还是个人客户都接受了Mobileye系列ADAS产品和特斯拉Autopilot自动驾驶。由于其低成本、高精度和高速性能,目前大多数成熟的车道线检测辅助产品将camera用作主要传感器。
Aly[4]使用RANSAC样条拟合技术检测到城市街道的车道标记,在[5]中,算法快速准确地估计了消失点,估计的消失点确定了属于车道标记的线段。因此,它可以检测阴影下的车道,但当混淆路面标记或道路上存在行人过路时,它不起作用。在[6]中,作者使用了一种方法,在夜间道路、黄灯或白灯隧道、雨夜等照明条件下为车道线提供强边缘,但在极端条件下效果不佳,因为他们假设一个场景没有多个照明。[7] 通过检测消失点和建立自适应感兴趣区域(ROI),降低了计算复杂度,并能够检测黄灯隧道、日出、日落、雨天、夜晚等照明下的车道,但它无法检测强光反射下的车道、模糊车道标记、低太阳角情况和车道裂缝。在[8]中,通过基于投票图检测消失点、定义自适应ROI和使用车道颜色的不变性检测车道来克服照明变化影响。然而,他们的方法在一些极端条件下失败,如强光反射、车道标记模糊、低太阳角情况、车道裂缝等。[9]提出了一种基于时空图像的车道线检测算法,由于使用了每条扫描线上车道宽度的时间一致性,他们成功地检测到了曲率急剧的车道、车道变化、夜间道路、障碍物和镜头光斑。由于检测结果取决于车道线宽度,当车道线宽度在道路上增加或减少时,系统将无法检测车道。
[10]中提出了一个基于视觉的集成框架,该框架基于时空增量聚类,结合曲线拟合和格拉斯曼流形学习,用于车道检测、跟踪和路面标记检测。在[1]中,将梯度提示和颜色提示以及带有扫描线测试的线聚类一起处理以验证车道线特征的算法,他们在各种天气条件下成功地检测到了车道。然而,当车道由于路灯反射而不可见时,他们无法检测到车道标线,当车道线因夜间路灯或黄灯隧道的黄色背景而变得模糊时,他们也无法检测到黄色车道标线。
论文主要创新点
为了克服上述困难,作者提出了一种鲁棒的车道线检测和跟踪系统。为了减少照明效果并增强车道线边缘,在作者之前的论文[12]中首次在车道检测系统中使用了双边滤波器。因此,本文对灰度输入图像进行了双边滤波,以平滑和保留车道边缘。接下来,在边缘检测阶段接近优化的强度阈值范围(OITR),这提高了精明边缘检测器的性能,以增强和检测低强度(着色、侵蚀或模糊)车道标记的边缘。为了去除不需要的噪声线边缘区域,论文选择了一个感兴趣的区域,使用等腰梯形遮罩放置在水平轴的中间和垂直轴的三分之二(不包括下三分之一),以避免汽车mask边缘。为了检测感兴趣区域内的所有线条,使用了霍夫变换。通过霍夫变换检测到的线是候选车道线(CLL)。
这里,论文使用基于坡度的约束将候选左车道(CLL)线与候选右车道(CRL)线分离,提出了一种稳健的车道验证技术,即基于角度和长度的几何约束,以验证车道标记的特征并防止不正确的车道检测。最后,介绍了一种新的车道跟踪方法,即水平可调车道重新定位范围,它可以跟踪车道位置,提出方法的主要贡献是:
- 1)在边缘检测阶段接近优化的强度阈值范围(OITR),这提高了canny增强和检测低强度(着色、侵蚀或模糊)车道标记边缘的性能;
- 2)提出了一种稳健的车道验证技术,即基于角度和长度的几何约束(ALGC)算法,以验证车道线特征;
- 3)引入了一种新的车道跟踪方法,即水平可调车道重新定位范围(HALRR),以在左侧或右侧或两侧车道标线由于侵蚀或闭塞而在短时间内部分或完全不可见时,跟踪车道位置;
论文方法
这里,我们将提出的车道检测和跟踪方法分为四个主要部分:i)预处理,ii)特征提取,iii)车道检测和iv)车道跟踪,拟议车道检测方法的概述如图1所示。在预处理阶段,对提取的视频帧进行灰度处理,并使用双边滤波器去除噪声,同时保留边缘。接着,在特征提取阶段,通过OITR改进的canny边缘检测器检测边缘,并利用霍夫变换提取线的位置。然后,在车道检测阶段,提出了一种基于角度和长度的几何约束的鲁棒车道验证技术,成功地验证了候选车道线。最后,引入了一种鲁棒的车道线跟踪技术,提出了水平可调车道线重新定位范围,它利用前一帧的车道位置信息来预测当前帧的车道定位!
预处理
预处理是车道线检测过程的重要组成部分,预处理的目的是增强感兴趣的特征并减少噪声,论文通过灰度转换和噪声滤波对输入视频帧进行了预处理!
特征提取
在特征提取阶段,识别特定车道线特征,如边缘、纹理、长度、宽度或颜色等。在这种情况下,当照明条件急剧变化,尤其是在雨雪天气中,视野变得模糊和模糊时,很难通过颜色或纹理特征区分道路和车道。在各种照明条件和不利天气条件下,基于边缘的特征比基于颜色的特征更鲁棒。因此,在该方法中,论文考虑了边缘特征作为车道检测方法。
有很多边缘检测技术,如Sobel、Canny、Prewitt、Roberts等[15]将模糊方法应用于车道检测和Canny以获得更好的边缘检测。在[18]中,对canny和Sobel的性能进行了比较,实验表明canny优于Sobel。Canny是一个多步骤算法。首先,用高斯去除噪声,然后确定边缘梯度和方向。接下来,应用了一种称为非最大抑制的边缘细化技术。最后,利用双阈值方法检测并连接候选边缘。
这种双阈值方法使用两个阈值[𝑇𝑢, 𝑇𝑙] (𝑇𝑢 表示上强度阈值,𝑇𝑙 表示较低强度阈值)以找到感兴趣的边缘,高于上限的边缘像素被接受为边缘,低于阈值的边缘像素则被拒绝。仅当上阈值和下阈值之间的像素连接到上阈值的像素时,才会考虑它们。上限和下限之间的比率建议为3:1。
然而,为不同的照明条件选择准确的强度阈值范围是一个挑战。特别是,由于路面和车道线之间的强度差较小,很难检测彩色车道线(黄色、蓝色等)的边缘。下雨或下雪时视野模糊,这些彩色车道线几乎看不见。因此,作者提出了一个优化的强度阈值范围(OITR),该范围提高了canny算子检测彩色、模糊和模糊车道线的性能(这些车道线是由于不同的照明条件(如白天、夜晚、雨天、下雪等))。选择了上强度阈值𝑇𝑢=30 , 因为在低光或模糊可见度条件下,车道边缘像素的强度变低,较低的强度阈值设置为较高阈值的三分之一,即𝑇𝑙=10。
在图3(a)中,有两个输入帧,每个场景都有以下多重挑战:i)由于下雨天气,视野模糊;ii)左侧车道为黄色;iii)雨刮器遮住车道视野。在图3(b)和3(c)中,相应应用的强度阈值范围为[50,10]和[45,15]。在这两种情况下,部分检测到车道边缘。在图3(d)中,应用了强度阈值范围[30,10],在这种情况下,检测到了大多数车道边缘。
通过实验观察到,这是所有彩色车道线和所有照明条件下最优化的强度阈值范围(OITR),因为它可以应对上述多种挑战。然而,OITR将保留大量噪声边缘像素以及车道边缘像素,选择感兴趣的区域可以解决此问题。值得注意的是,车道线信息位于图像的下半部分,因此不需要整个图像来处理车道检测。数据集中的大部分视频都是通过将摄像机放置在挡风玻璃后面的中间位置来拍摄的。道路始终位于车辆前方,因为车辆向前行驶,因此,建议选择图像下方的ROI。本文选择了一个感兴趣的区域,使用放置在水平轴中间和垂直轴三分之二(不包括下三分之一)的等腰梯形mask,以避免汽车mask边缘。等腰梯形是底角相等的梯形,因此左侧和右侧长度也相等。此掩码有效地保留车道线边缘,同时去除不同数据集的其他噪声边缘。图4(d)显示了感兴趣区域选择的输出图像!
霍夫变换是一种特征提取方法,通过应用投票过程来检测图像中的形状,例如圆、线等。在提出的方法中,该算法用于识别由边缘创建的线的位置。每条线(x1,y1)和(x2,y2)的两点是霍夫变换的最终输出,因此,通过霍夫变换提取感兴趣区域内所有线的位置。由于在这些提取的线中只有一条左线和一条右线是车道线,因此这些线被称为候选车道(CL)线。在图4(a)中,显示了三个示例帧作为输入;在图4(b)、图4(c)、4(d)和图4(e)中,分别显示了用于双边滤波、canny边缘检测、感兴趣区域选择和霍夫变换的所有相应输出图像。
车道线检测
在每个帧中同时检测左车道和右车道边界称为车道检测,本文将车道检测任务分为以下步骤:a)将候选车道线(CLL)划分为左侧线和右侧线,b)车道验证。
霍夫变换成功检测到感兴趣区域内的所有线条,从图4(e)中可以看到,霍夫变换检测到了许多噪声线,包括车道线。所有这些线被称为候选车道(CL)线,因为其中车道线将被检测。这里使用基于坡度的约束将候选左车道线(CLL)与候选右车道线(CRL)分离。m是直线的垂直变化与水平变化的比率,如果y随x增加,直线的斜率为正;另一方面,如果y随x增加而减小,则斜率为负。左车道线总是具有负坡度,右车道线总是有正坡度,通过使用方程(3)计算斜率。基于坡度的约束已由等式(4)设置,因此,斜率m>0的线被识别为CRL线,斜率m<0被识别为CLL线,并且斜率m=0&m=∞ 作为假阳性:
有时,由于存在其他类似线条,例如护栏、路面标线、道路分隔线、交通标志、斑马线、汽车罩、车内物品(移动、导航设备、视频或图像捕捉设备)的反射、车辆线条、树木阴影等,会出现错误车道线检测。因此,车道验证对于过滤掉这些令人困惑的线条非常重要,值得注意的是,从帧到帧,车道线的垂直位置几乎保持不变,但车道线的水平位置(沿x轴)发生了变化,因此,我们设置了车道线与x轴形成的角度范围,以验证水平位置。测量小于90°的角度称为锐角,左车道与x轴形成锐角(逆时针),测量大于90°且小于180°的角度称为钝角,左车道与x轴形成钝角(逆时针)。因此,考虑到这两种类型的角度,定义了左车道和右车道的角度范围。左车道和x轴之间的角度(逆时针)定义为𝜃𝑙 右车道和x轴之间的角度(逆时针)定义为𝜃𝑟,根据锐角和钝角的定义𝜃𝑙 应小于90度𝜃𝑟 应大于90度且小于180度。
在左侧车道的情况下,为了最小化范围并最大限度地去除噪声线,选择了0至90°之间的中间值,即45°作为边界线。作者考虑了摄像机位置的变量c,因此,通过从45°中减去c来定义下限值,通过将c与45°相加来定义上限值。最后,角度范围(𝜃𝑙) 由x轴形成的左车道的[𝜋/4− 𝑐,𝜋/4 + 𝑐]。另一方面,对于右侧车道,选择了钝角范围的中间值,即135°作为边界线。因此,通过从135°中减去c来定义下限值,通过将c与135°相加来定义上限值。最后,角度范围(𝜃𝑟) 由x轴形成的右车道的长度为[3𝜋/4− 𝑐, 3𝜋/4 + 𝑐]。作者通过实验观察了许多具有各种挑战性情况的数据集,发现上述角度范围的考虑效果最好。在[20]中,他们确定了左车道(25,75)和右车道(105,155)的角度范围,其范围比论文的范围宽,因为论文的方法中定义的角度范围比他们的方法窄。因此比它们的方法可以消除更多干扰的线条。所有角度,𝜃 由等式(5)计算在等式(6)中示出了角度范围的表示:
应用基于角度的约束,得到过滤的候选左车道(FCLL)线和过滤的候选右车道(FCRL)线。但是,这种基于角度的约束无法删除一些与角度范围内的x轴形成角度或平行于车道线的混淆线。例如,护栏、道路分隔线、路缘石、桥梁栏杆、公路隧道的墙边缘、其它车辆、树木或建筑物的阴影、平行于车道的路面标记等,这些对象因其角度和位置而产生混乱的线条。为了避免这种类型的错误检测,作者提出了基于长度的几何约束。
通常,摄像机安装在汽车的中间,左右车道位于汽车的正前方,因此,车道线是所有其他混淆线中最长的一条。在某些情况下,车道线可能不是最长的线,但由于梯形的ROI,其他长线的一部分,如护栏线、道路分隔线、路缘石、桥梁栏杆、公路隧道墙等被取消。在虚线车道线的情况下,霍夫变换将虚线短线转换为一条长线,因此可以选择长度参数进行最终验证。作者取了一定数量的帧,测量了车道线、护栏、车辆边缘、平行其他车道、道路裂缝、隧道墙边缘等在角度范围内与x轴形成角度的不同线的长度,并计算了不同类型线的平均长度。
在图6中,比较了车道标线和其它线的长度,例如护栏、车辆边缘、道路裂缝边缘、隧道墙边缘、箭头路面、雨刮器等。指标表明车道线的长度比任何其他线长,作者观察到,在每一帧中,95%以上的车道线比任何其他线都长。最长的左线是真正的左车道线,最长的右线是真正右车道线。使用等式7,计算了每条FCLL线的长度,使用等式8,计算了每个FCRL线的长度。FCLL线中具有最大长度的线已被选择为左车道线(等式9),FCRL线中具有最小长度的线被选择为右车道线(方程式10)。
车道跟踪
使用前一帧的车道线标记位置来估计和预测下一帧车道线标记的位置称为车道跟踪,实施车道跟踪以跟踪车道位置的变化。有时,诸如雨、雪、路灯在潮湿道路上反射、阳光过度照射或闪亮的隧道灯等具有挑战性的条件会磨损车道线,挡风玻璃上的雨滴和道路上的雪也可能严重影响道路线的能见度。因此,开发一种能够检测车道线的车道跟踪系统非常重要,即使车道线在短时间内部分或完全不可见。对于车道跟踪,使用卡尔曼滤波器[21,22]、扩展卡尔曼滤波器[23]、退火粒子滤波器[24]和超级粒子滤波器[25],车道线位置P可以很容易地由两点定义(𝑥1.𝑦1)和(𝑥2.𝑦2)。在两个连续的视频帧之间,由于帧序列之间存在时间和空间连续性,因此不会有太多偏差。
从视频帧序列可以看出:车道的垂直位置保持几乎相同,但车道的水平位置显著变化。考虑到这些问题,作者提出了一种鲁棒的车道跟踪技术,称为车道水平可调车道重定位范围(HALRR)。在这种方法中,定义了一个沿x轴的可调整范围,该范围将相对于前一帧的车道位置进行调整。如果前一帧的车道线位置为𝑃𝑝(𝑥𝑝1.𝑦𝑝1.𝑥𝑝2.𝑦𝑝2)和下一帧的车道线位置为𝑃𝑛(𝑥𝑛1.𝑦𝑛1.𝑥𝑛2.𝑦𝑛2) 𝑃𝑛 将位于𝑃𝑝 或在右侧𝑃𝑝。 由于车道的位置不会垂直改变,𝑦𝑝1=𝑦𝑛1和𝑦𝑝2=𝑦𝑛2。
论文观察到,车道位置沿x轴(左侧和右侧)的偏差小于图像宽度的6%。如果车道位置的偏差为d,范围𝑥𝑛1为R1,𝑥𝑛2是R2,w是图像的宽度,那么d,R1,R2的表达式如下:
该技术可以有效地提高车道检测率。在采用车道跟踪之后,系统可以检测车道,即使在改变车道之后。该过程每帧仅需0.99ms,而卡尔曼滤波器每帧需2.36ms。
图7中展示了车道跟踪系统如何在改变车道时进行调整,在这里,通过从第515帧到第677帧的雨天视频中选取六帧,显示了车道改变场景,从图7(a)到7(e),车道改变发生了,跟踪系统可以跟踪车道。完全切换到左车道后,跟踪方法可以自动调整图7(f)中的车道线。
在图8中,展示了一些具有挑战性的情况,其中车道线部分或全部被侵蚀、虚线、未上漆或由于一些困难而看不见,例如,被雨刷遮挡、大雨造成的视野模糊、没有路灯的较暗路况、来自相反方向车辆的过度曝光前照灯、反光效果和挡风玻璃上路灯反射产生的光斑,论文提出的车道跟踪方法解决了所有这些困难。
实验结果
在来自DSDLDE[1]数据集的33323帧上实现了我们提出的方法,该数据集以24帧/秒的速度提供1080x1920分辨率。该数据集在美国和韩国拍摄,其中视频包括不同的挑战场景,如雨、雪、隧道进出时的突然光线变化、白天和夜间拍摄的照明变化。实验在30个分辨率为594x1056的视频片段上进行,这些视频片段包含超过33000帧。论文提出的方法解决了许多高度严酷的条件,即白天因阴影、隧道入口、极端阳光、隧道出口白光等造成的黑暗、夜间突然的照明变化,即其它车辆的前照灯或尾灯发出的光照、湿路、隧道入口和隧道出口上的道路光反射等。当车道被着色或侵蚀或路灯或隧道灯的颜色与车道颜色相同时,车道线与路面之间的对比度较低;由于存在与车道类似的线,即护栏、路面标记、道路分隔线、道路裂缝产生的线、车辆线等,导致车道线检测不正确,由于大雨或大雪导致的视野模糊,由于雨刷、雨滴的存在而导致的遮挡,以及车内任何物体的反射:移动设备、导航设备、视频或挡风玻璃上的图像捕捉设备。
图9显示了不同恶劣驾驶条件下成功的车道线检测和跟踪,在图9(a)、(b)、(c)中,隧道内的车道几乎看不见,因为灯光颜色和车道标记颜色相同。在图9(d)中,来自内部设备的光反射以及挡风玻璃上的前照灯和尾灯的耀斑使视野变得模糊。在图9(e)中,大雨造成的模糊视图和图(f)中,由于雨夜路灯反射,车道不可见。在图9(g)和9(h)中,分别显示了雪天的大雪和黑暗隧道入口。图9(i)显示了雪夜中的高速公路。
所有这些成功的检测都验证了该算法的鲁棒性,在表1中,论文显示了不同时间、天气和挑战条件下的车道标记检测率:
在晴朗的白天,平均车道检测率为98.07%,包括阴影、侵蚀车道线、被交通和路面标线堵塞的车道线、开裂的道路、隧道等不同条件。在雨天,平均车道识别率为96.85%,包括大雨、交通堵塞、车道变更、隧道内潮湿道路、丘陵和弯曲公路等条件。在雪天,平均车道检测率为95.29%,还包括侵蚀车道线、弯曲道路、隧道等不同条件,平均检测率为96.47%,包括一些硬条件,如褪色和未上漆的车道标线、潮湿道路上的路灯反射、同向和反向车辆的前照灯和尾灯闪烁、极暗(无路灯)和颠簸道路、尾灯反射、车道变换、导航装置反射和挡风玻璃上闪亮的桥梁灯反射、在下雪的夜晚,由于夜间下雪,车道的能见度非常差,平均检测率为94.19%。不同天气条件下的总检出率大于94%,平均检出率为97.36%。将所提出的方法与最近报道的其他方法进行了比较,并显示出相对较好的性能。在表2中,就检测率和每帧处理时间而言,所提出的算法的性能与之前的工作[1、8、9、11、19]的性能进行了比较。
表2显示,与其它作品相比,所提出算法的检测率非常出色,与其它最先进的作品相比,本文探索了更多与光线、道路和天气条件相关的挑战。尤其是,夜间下雪道路的视频剪辑在其它作品中效果不佳,处理时间甚至比任何其他算法都要短。结果表明,与其它具有强大和更快PC配置的算法相比,该方法具有更快的计算速度。然而,如图10所示,当雪形成类似车道线时,以及当隧道边缘形成类似车道的线时,所提出的算法未能检测到车道标记,存在一些车道标记错误检测的情况,可以通过在验证阶段添加更多参数来改进。
参考
[1] Vision-Based Lane Detection and Tracking under Different Challenging Environmental Conditions.
我之前在HarmonyOS手机上做过一个Demo。。。