英语原文共 6 页,剩余内容已隐藏,支付完成后下载完整资料
基于三维激光雷达和整体激光点云的智能汽车路沿检测
摘 要
对于在高速公路和城市道路中行驶的智能汽车来说,路沿的检测和追踪是至关重要的。在本文中,我们提出了一种利用三维激光雷达数据和激光点云特征的快速和稳定的路沿检测算法。三维激光雷达提供的距离和反射强度数据被分解为高度数据和投影于平面上的数据。首先,针对每根扫描线利用平面投影的范围和密度数据以及线段特征来探测左右路沿。然后,通过高度数据来确定每次线扫描的路沿点。激光点云特征用来加快前述的两次检测过程。最后,用抛物线模型和RANSAC算法来拟合左右路沿点,生成汽车控制参数。我们提出的方法和特征能够实现快速而可靠的路沿检测。实验表明该算法在不同条件下的各种高速公路和城市道路中都有很好的表现。
1引言
智能汽车的一个关键任务就是实现稳健的环境感知。对于智能汽车在高速公路和城市道路中自主驾驶来说,对道路边界——也就是路沿的探测,是重要且必要的。激光扫描器或者激光雷达因为他们的高分辨率和广阔的视角而被广泛地用于这个任务。同时也是因为他们是主动传感器,这使得它们可以提供精确的距离和亮度测量而不被天气照明和阴影干扰。被动传感器如摄像头,也可以用于路沿的检测,但是摄像头的画面常常被光线和阴影影响,使得很难辨别路沿的像素和其它像素。同时,距离的测量不能直接从图像中获得。激光雷达的优势使得它在路沿检测中能够比摄像头更精确和稳定的完成任务。
大多已发表的基于激光雷达的路沿检测系统采用的是二维激光雷达,这意味着它的扫描是沿着平面进行的通常扫描角度小于180°。每次扫描取得一个范围和角度次序。虽然当每一次扫描之取得少量测量量时检测会变得更快,但是当一次扫描取得的路沿片段中只有很少一点测量量时探测路沿会变得很困难。
三维激光雷达近年来被广泛的应用发展得也很快。不像其它激光雷达只有一个扫描平面,三维激光雷达有数个扫描平面使得在一段扫描内就可以形成关于距离和密度的三维点云。这使得对真实三维环境的模拟更逼真,当有大量路沿上的点时对路沿的检测也就更简单。除此之外,一长段路沿片段可以在单次扫描中获得。然而,大量的点对路沿检测算法提出了巨大的挑战。
在本文中,我们专注于那些行驶在高速公路和城市道路的智能汽车的路沿检测问题,这些道路有着10到15厘米高的用于分割人行道和行车到的路沿。我们提出一种稳定地实时检测路沿的方法。本文的主要贡献是:首先,我们把三维激光雷达数据分解为高度数据和平面投影数据,并且分别用这两种数据来检测路沿。其次,我们提出用ILP特征来加快检测速度。再次,范围和反射强度信息被用于检测阶段,使得结果更加精确。最后,抛物线模型和RANSAC算法被应用于塑造路沿形状,并且计算出汽车控制指令以供自主驾驶。实验结果表明,我们的系统在不同环境下的高速公路和城市道路都表现得很好,即使有一些弯道和不平的道路。
本文结构如下。在第二章中,列出了一些有代表的关于检测的研究。第三章描述了 ILP特征的提出。接着,第四章讲诉了检测算法的详细细节。第五章出示了一些实验结果。最后,第六章写了结论和未来的工作计划。
2相关研究
许多道路边界检测算法和系统已经发展几十年了,包括一些路面检测算法,这些路面检测算法同样可以用来检测边界。在本章中,我们用“边界”这个词来指代所有的道路边界而不仅仅是路沿,这些边界用来划分可行区域(行车道)和不可行区域(人行道,停车道等)。
虽然有些系统使用摄像头来作为传感器[1] [2],但是大多数的系统还是采用的二维激光雷达来检测边界[3]。二维雷达只有一个扫描平面,这意味着在一次扫描中,对于一定距离的路段只有一小段道路边界会包含在扫描数据中,道路边界检测算法通常与GPS/IMU和距离信息相结合将探测结果的连续框图投影到相同的坐标框图中。当车辆行驶时,道路边界会被模型化,同时使用卡尔曼滤波来追踪[5]。在[4]第一次介绍了使用激光雷达来做道路边界检测。他们提出了一种基于卡尔曼滤波的拓展方法,这种方法使用通过二维扫描激光雷达获得的检测亮来实现路沿的快速检测和追踪[4]。在[7]中提出了一种方法,这种方法结合上升信号和投影在平面上的信号用一种两级的方法来检测道路和道路边界,这种方法快速且可靠[7]。一种多目标的交互模型方法,基于概率值的确定路沿存在的方法和精确估计道路边缘位置的方法在[6]中提出[6]。
在最近几年,三维激光雷达发展和推行得很迅速。用三维激光雷达探测道路边界的一个显著的优势是整个道路边界的一长段区间可以在单一一次扫描时段被检测和模型化。同时,因为相邻扫描线的连续性这样的检测更精确。在[8]中用绕垂直轴旋转的二维雷达构造一个三维激光雷达来检测道路路沿和交叉路口[8]。虽然这种系统很便宜,但是低速的旋转经常使实时应用变得很困难。Velodyne 三维激光雷达,在我们使用的一种在[9]中提到的基于局部斜度测量的快速的基于图像的分割平面和对象的方法中也用到了这种雷达[9]。据我们所知,我们是第一个用真实三维激光雷达来探测道路路沿的人。
除了上述使用单一的传感器的系统之外,有些系统基于摄像头和激光雷达传感器的融合检测道路标记和道路边界。道路标记和道路边界信息的融合会使智能汽车的导航更可靠。
3 三维雷达和IPL特征
在我们的道路路沿检测系统中,Velodyne HDL-64ES2三维激光雷达安装在THIV-Ⅱ智能车的顶部。这种雷达在一个圆柱中包含了64个独立激光器。雷达以10赫兹的频率旋转来提供360度的场景视角,并且覆盖了从 2°到 -24.8°的角度范围。角度分辨率是0.09°。每一次扫描都产生大约130000测量值。每个测量值或者说点,包含位置坐标(x,y,z),光强度I,扫描线顺序(1-64),距离d,和旋转角度theta;isin;(-180°,180°)当theta;=0恰好在车辆前方时。从激光雷达获得的未经处理的数据都是按扫描线顺序c来整理的,在每一次线扫描中,数据点都依据旋转角度按升序整理,这很适于ILP特征的计算。图一中展示了THIV-Ⅱ智能车和Velodyne三维激光雷达,同时还有由摄像头拍摄的典型的实际道路画面和相应的由Velodyne三维激光雷达生成的三维点云图。360°视角内的所有物体都由这些三维点云明确的表达。
为了加速检测过程,我们首先提取每条扫描线的ILP特征,这些特征在扫描线的窗口下能快速的计算三维点云特征的总和。既然每条扫描线的的点是按theta;的升序排列,我们按公式(1)定义了一些ILP特征,在公式(1)中j表示扫描线当中的一个点,而i表示ILP特征;x,y,z表示每个点j的坐标值。
当获得一个新的激光雷达点画面时,对应于所有扫描线的ILP特征可以在检测步骤之前计算。获得上述的所有ILP特征只需要对所有点扫描一次。所有的ILP特征可以迭代计算。例如(i)可以根据等式(2)计算,其他的一些ILP特征也是如此。
正如上诉提及的,每条扫描线的点依据旋转角度theta;按升序排列,这减少了ILP特征的计算量。因为我们只考虑汽车前方的点,我们只计算-90°le;theta;le;90°范围内的点的ILP特征,这使得我们只要计算所有点中的一半就行了。
4 使用三维激光雷达检测道路路沿
本章中我们提出了我们的道路路沿的检测算法。我们的算法包含两步。第一步,我们通过移除z轴来将所有的激光雷达点投影在x-y平面上,并且用线段特征来检测道路路沿。第二步,我们通过z方向的高度变化来考虑用上升数据检测道路路沿。最后,路沿点是上两步路沿检测点的结合。
4.1 x-y平面上的路沿检测
图2中是单线扫描投影于x-y平面的一个简单模型。蓝点是路面表面的点,黄点是路沿点。红点是路沿外的未定义的点,比如人行道上的点,在路沿检测时不会过多的考虑。
图2 单扫描线的点模型
我们分别考虑扫描线。对于每条扫描线上的点,我们应用一个包含N点的滑窗,可以从边缘移动到中央。在每一个滑窗中,最好的线性拟合和点密度之间最大的差值会被计算出来。线性拟合需要的参数在等式(3)中列出。
利用ILP特征,等式(3)可以直接计算出来,而不需要计算窗口中点的和。例如,
误差由等式(4)表示。
同样,等式(4)中的所有求和可以直接包含在ILP特征中。相邻两个滑动窗口中有重叠,可以用ILP特征来替代对每个窗口中的数据求和以节省很多计算。为了能过检测左右路沿,两个滑动窗口在theta;=0处分别正转和反转。 如果满足下列要求,则窗口i中的点属于路沿点:
1.拟合曲线有很小的斜度:lt;(车辆平行于路沿行驶),
2.拟合曲线有很小的偏差:lt;(属于路沿的点必须在一条线上),
3.窗口中的密度值不同:-gt;。
上诉,,分别是斜度,偏差,密度差的阈值。
对于每条扫描线,如果一个点不属于路沿点,那么我们认为这个点属于道路。如果一个点被检测为路沿上的点,这标记所有这个窗口中的点为路沿上的点。并且将他们赋值于或者,作为路沿点的候选点,同时将所有窗口外的点标记为未定义的点。然后我们移向另一条扫描线,并重置滑动窗口至中央。
虽然我们专注于道路路沿检测的问题,但是道路边界不总是由路沿或者其他一些类似路沿的东西定义。有时候道路边界仅仅是白线或者草丛。在这种情况下,激光束的反射强度曲线就很重要了。在我们的系统中,强度值也很有帮助,因为道路表面和边界总是有不一样的强度值。如果滑动窗口中的强度值不同,这说明窗口穿过了路沿区域。
图3展示了三条相邻扫面线的检测结果。我们设定N=6,=0.2,=0.001,=10。点的颜色和图2中的一样。属于道路的点和属于路沿的点被正确地检测和标记。左边路沿以外的点都挤在一起了因为左边人行道有一点坡度,使得激光雷达点的投影向右移了。
图3 x-y平面上相邻扫描线的路沿检测结果
4.2 利用高度数据检测路沿
路沿检测的下一步是使用高度数据来辨别路沿点和道路点。在实际道路环境中,道路表面常常顺滑的弯曲,这使得很难将整个道路表面模拟成一个平面。另外,人行道通常都是平的,并且只比道路表面高10到15厘米。如果我们从道路表面中的点中拟合一个最好的平面,人行道和道路表面通常被结合在一形成一个平面。为了能使用高度数据找到路沿点,我们仍然使用滑动窗口通过一条条扫描线来检测路沿点。
对于每一条扫描线,滑动窗口包含M点从中央移动到边界。在每一个滑动窗口中,我们比较这些点的平均高度和最后一个点的高度。如果最后一个点的高度值比平均高度值高且超过阈值,那么最后一个点被标记为路沿点的候选。如果在下一个滑动窗口中没有候选点,则前一个候选点被视为错误警告并且移除。如果存在至少L个连续的路沿候选点,则认为路沿被发现,之前所有的候选点被添加至整体路沿候选点,设定为或者。
ILP特征在滑动窗口计算平均高度值时也很有帮助。对于窗口i,有平均高度为:
图4是扫描线的高度数据和路沿检测结果。我们设定M=20,L=6,=0.03m。左右路沿被正确无误的探测标记为黄色。点的颜色和图2中的一致。此外,我们可以发现道路右边是路沿,但是左边是一个斜坡没有明显的路沿,算法依然可以定义道路表面的边界。另外,道路表面是顺滑的曲面,但是这对我们的算法没影响。
4.3 道路路沿的拟合
前面所提及的算法是基于单线扫描并且每次扫描先检测的路沿只是整个路沿的一小段。因此,为了描述整个路沿,一个整体路沿模型必须引用来拟合这些局部路沿线段并且使路沿参数化。用于自动驾驶的车辆控制参数也可以从路沿模型中生成。对于高速公路和城市道路,我们找到了一种抛物线模型来适应这种任务。注意到我们没有强行把左右路沿视为平行,因为某些环境下道路宽度的改变使得左右路沿并不平行。左右路沿的拟合分别使用和中的候选点。RANSAC算法用于去除和中的偏离点。
图5中是左右路沿的模型拟合结果。蓝绿色的点和黄色的点分辨表示左路沿和右路沿。红色和蓝色的曲线表示左右路沿的拟合曲线。绿色的曲线是车辆行驶的目标曲线。在这个场景中,行人和自行车生在车前方生成了一些错误的路沿候选点,但是我们还是可以获得一个很好的模型拟合结果。
图5 左右路沿的模型拟合结果
对于自动驾驶来说,控制参数需要在模型当中生成。我们首先产生一条目标曲线供汽车追踪。目标曲线是包含左右路沿的一条曲线,x= y ,其中
K是系数指示目标曲线的位置。K=0.5表示目标曲线是道路的中间线。如果路沿拟合得好,车辆所在位置的道路宽度可以根据w=-来估计。
在只有一边路沿能被成功拟合的情况下,我们通过当前的路沿和道路宽度来估计另一边。
将目标曲线放到坐标框架中,我们可以获得车辆前方的预估曲线点。车辆和预估点之间的距离与车速之间的比值控制着间隔时间。每帧图中的预估点的位置和方向被投影在一个局部导航坐标图中,并且一条新的抛物线依据最后几帧图的预估点拟合出来。在局部坐标图中的从目标曲线到预估距离的车辆的侧面补偿和偏航角Psi;可以依据下式计算:
5 实验结果
在本章中,我们展示了在实际高速公路和城市道路中路沿检测的结果。我们首先评估了我们提出的ILP特征的表现。表1列出了使用和不使用ILP特征时的平均过程时间。平面和高度表示检测是在x-y平面上或是使用高度数据。很容易发现在使用ILP特征时速度要快很多。当数据量很大时,使用ILP特征能节省很多计算。
图6中显示了在各种道路和环境当中的测试结果。图6(a)是在一条宽广的有其它车辆的高速公路上的测量结果,这些车辆遮挡了部分路沿点。图6(b)是在有很多车辆和自行车的城市道路。虽然有些检测点离真实
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[140693],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。