CN115508841A - 一种路沿检测的方法和装置 - Google Patents
一种路沿检测的方法和装置 Download PDFInfo
- Publication number
- CN115508841A CN115508841A CN202110631370.5A CN202110631370A CN115508841A CN 115508841 A CN115508841 A CN 115508841A CN 202110631370 A CN202110631370 A CN 202110631370A CN 115508841 A CN115508841 A CN 115508841A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- road edge
- cloud data
- group
- points
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/02—Systems using the reflection of electromagnetic waves other than radio waves
- G01S17/06—Systems determining position data of a target
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请提供了一种路沿检测的方法和装置,在路沿点云数据的确定过程中结合了单扫描层内和多扫描层间的特征,不会因为点云数据的稀疏性滤除远处的有效点云数据,导致检测距离变短,有效提升了路沿检测的距离及精度。路沿检测的方法,包括:根据多个点云层数据中每个点云层数据的层内特征和与所述每个点云层数据相邻的点云层数据之间的层间特征确定路沿点云数据;根据所述路沿点云数据确定初始路沿,并根据所述初始路沿确定路沿种子点,所述初始路沿用于表示路沿检测开始时确定的路沿,所述路沿种子点用于表示所述路沿的真实状况;根据所述路沿种子点确定所述路沿对应的参数化方程。
Description
技术领域
本申请涉及自动驾驶领域,更具体的,设计一种路沿检测的方法和装置。
背景技术
自动驾驶是人工智能领域的一种主流应用,自动驾驶技术依靠计算机视觉、雷达、监控装置和全球定位系统等协同合作,让机动车辆可以在不需要人类主动操作下,实现自动驾驶。自动驾驶的车辆使用各种计算系统来帮助将乘客从一个位置运输到另一位置。一些自动驾驶车辆可能要求来自操作者(诸如,领航员、驾驶员、或者乘客)的一些初始输入或者连续输入。自动驾驶车辆准许操作者从手动模操作式切换到自东驾驶模式或者介于两者之间的模式。由于自动驾驶技术无需人类来驾驶机动车辆,所以理论上能够有效避免人类的驾驶失误,减少交通事故的发生,且能够提高公路的运输效率。因此,自动驾驶技术越来越受到重视。
对于自动驾驶平台而言,环境感知是智能车辆平台与周围交通场景的交互端口,也是智能车辆平台运动决策、规划控制系统的前端输入。环境感知的性能直接决定了自动驾驶平台行驾驶任务的稳定性。而在环境感知中,鲁棒的路沿(道路边界)检测作为其核心任务之一,在车辆防碰撞中具备关键作用。
发明内容
本申请提供一种路沿检测的方法和装置,在路沿点云数据的确定过程中结合了单扫描层内和多扫描层间的特征,不会因为点云数据的稀疏性滤除远处的有效点云数据,导致检测距离变短,有效提升了路沿检测的距离及精度。
第一方面,提供了一种路沿检测的方法,应用于车辆中,所述车辆包括激光雷达,包括:根据多个点云层数据中每个点云层数据的层内特征和与所述每个点云层数据相邻的点云层数据之间的层间特征确定路沿点云数据;根据所述路沿点云数据确定初始路沿,并根据所述初始路沿确定路沿种子点,所述初始路沿用于表示路沿检测开始时确定的路沿,所述路沿种子点用于表示所述路沿的真实状况;根据所述路沿种子点确定所述路沿对应的参数化方程。
根据本申请实施例,在路沿点云数据的确定过程中结合了单扫描层内和多扫描层间的特征,不会因为点云数据的稀疏性滤除远处的有效点云数据,有效提升了路沿检测的距离及精度。
结合第一方面,在第一方面的某些实现方式中,所述层内特征包括斜率特征,数目特征或反射强度特征中的至少一个;其中,所述斜率特征用于指示所述每个点云层数据中分布方向与所述车辆的行驶方向的夹角小于第三阈值的点云数据,所述数目特征用于指示所述每个点云层数据中邻域的点云数据的数目大于第四阈值的点云数据,所述反射强度特征用于指示所述每个点云层数据中反射率大于第五阈值的点云数据。
结合第一方面,在第一方面的某些实现方式中,所述层间特征包括层间距离特征或层间数目特征中的至少一个;其中,所述层间距离特征用于指示所述每个点云层数据中与相邻点云层数据之间距离小于第六阈值的点云数据,所述层间数目特征用于指示所述每个点云层数据中在相邻点云层数据的邻域中的点云数据的数目大于第七阈值的点云数据。
根据本申请实施例,确定路沿点云数据方法中结合了单个点云层数据的特征和相邻两个点云层数据之间的特征,不会因为点云数据的稀疏性滤除远处的有效点云数据,导致检测距离变短,有效提升了路沿检测的距离。经实际的路测数据测试,所设计特征基本符合真实交通场景中绝大数的路沿的实际特征。
结合第一方面,在第一方面的某些实现方式中,所述根据所述初始路沿确定路沿种子点,包括:根据初始路沿确定第一组种子点和第一组候选点,所述第一组种子点中的每个点云数据与所述初始路沿的距离小于第一阈值,所述第一组种子点用于表示所述路沿的第一部分的真实状况,所述第一组候选点是所述路沿点云数据中除所述第一组种子点以外的点云数据;根据第一组种子点和所述第一组候选点确定第二组种子点,所述第二组种子点用于表示所述路沿的第二部分的真实状况;将所述第一组种子点和所述第二组种子点确定为所述路沿种子点。
根据本申请实施例,根据第一组种子点和第一组候选点对路沿对应的点云数据的分布情况进行预测,通过多次迭代不断更新路沿种子点,进一步提升路沿检测的检测距离及检测效果。
结合第一方面,在第一方面的某些实现方式中,所述根据第一组种子点和所述第一组候选点确定第二组种子点,包括:根据所述第一组种子点和所述第一组候选点确定第二组种子点和第二组候选点,所述第二组候选点是所述路沿点云数据中除所述第一组种子点和所述第二组种子点以外的点云数据;所述将所述第一组种子点和所述第二组种子点确定为所述路沿种子点,包括:根据所述第一组种子点,所述第二组种子点和所述第二组候选点确定第三组种子点,将所述第一组种子点,所述第二组种子点和所述第三组种子点确定为所述路沿种子点,所述第三组种子点用于表示所述路沿的第三部分的真实状况。
根据本申请实施例,根据第一组种子点,所述第二组种子点和所述第二组候选点多次迭代不断更新路沿种子点,进一步提升路沿检测的检测距离及检测效果。
结合第一方面,在第一方面的某些实现方式中,所述根据第一组种子点和所述第一组候选点确定第二组种子点,还包括:根据所述第一组种子点确定第一组关键种子点,所述第一组关键种子点中的点云数据与栅格化后的所述第一组种子点中的栅格对应,所述第一关键种子点中的点云数据的坐标值为其对应的所述第一组种子点中的栅格中点云数据的坐标均值,所述第一关键种子点中的点云数据的权重由对应的栅格中的点云数据的数量确定;根据所述第一组候选点确定第一组关键候选点,所述第一组关键候选点中的点云数据与栅格化后的所述第一组候选点中的栅格对应,所述第一关键候选点中的点云数据的坐标值为其对应的所述第一组候选点中的栅格中点云数据的坐标均值,所述第一关键候选点中的点云数据的权重由对应的栅格中的点云数据的数量确定;根据所述第一组关键种子点和所述第一组关键候选点确定所述第二组种子点。
根据本申请实施例,由于路沿预测模型的计算开销与输入的数据正相关,因此,在不影响预测精度的情况下,为降低后续步骤中路沿预测模型的计算开销,可以将第一组种子点和第一组候选点栅格化,根据栅格化后的第一组种子点和第一组候选点确定第一组关键种子点和第一组关键候选点。
结合第一方面,在第一方面的某些实现方式中,所述根据所述第一组关键种子点和所述第一组关键候选点确定所述第二组种子点,包括:根据所述第一组关键种子点和所述第一组关键候选点通过路沿预测模型确定第一组预测点,所述第一组预测点用于表示所述路沿的第二部分的预测状况;将所述第一组关键候选点中满足第一条件的点云数据确定为所述第二组种子点中的点云数据,所述第一条件为与所述第一组路沿预测点中的点云数据之间的偏差小于第二阈值;其中,所述路沿预测模型是通过机器学习得到的。
根据本申请实施例,路沿预测模型可以是基于高斯过程回归建立的模型。由于高斯过程回归是一种非参数模型,不要求道路具有特定的形状,因此,对于曲率变化较大的道路或者施工路段等难点场景,高斯过程回归能较好地预测道路的路沿分布情况,从而提升路沿预测过程中的精准度。
结合第一方面,在第一方面的某些实现方式中,所述根据所述路沿点云数据确定初始路沿,包括:根据所述路沿点云数据在俯视平面投影的点云数据确定初始路沿。
根据本申请实施例,为降低计算成本,可以将确定的路沿点云数据先投影在俯视平面中,俯视平面可以认为是水平面或道路所在平面。
结合第一方面,在第一方面的某些实现方式中,所述根据所述路沿点云数据在俯视平面投影的点云数据确定初始路沿,包括:根据所述在俯视平面投影的点云数据确定多个初始直线段;根据多个初始直线段确定初始路沿。
根据本申请实施例,利用霍夫变换可以在投影后的路沿点云数据中确定多个初始直线段,多个初始直线段可以用于表示路沿。但是,由于真实道路场景中,只有一部分道路的路沿分布符合直线分布,所以需要对多个初始直线段进行筛选,并将筛选后的多个初始直线段进行合并,从而形成初始路沿,初始路沿可以作为后续方法的基准。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:根据原始点云数据确定所述多个点云层数据;其中,所述原始点云数据为所述激光雷达获取的点云数据,所述多个点云层数据为自车坐标系下的二维的点云数据。
根据本申请实施例,原始点云数据可以是激光雷达获得的一帧对应的点云数据,或者,也可以是多帧对应的点云数据。即本申请实施例提供的路沿检测的方法可以根据激光雷达每一帧的点云数据输出路沿结果,也可以根据多帧的点云数据输出路沿结果,可以根据实际的应用场景进行选择。
结合第一方面,在第一方面的某些实现方式中,所述根据原始点云数据确定所述多个点云层数据,包括:根据所述原始点云数据在球面投影后的点云数据生成点云特征图;根据所述点云特征图确定所述多个点云层数据。
根据本申请实施例,将三维的点云数据降维为二维的点云数据,并将二维的点云数据在点云特征图中表示,大大降低其计算成本,提升方法整体的计算效率。
结合第一方面,在第一方面的某些实现方式中,所述点云特征图包括点云深度图和点云索引图。
根据本申请实施例,点云特征图可以是点云深度图和点云索引图,或者也可以是其他类型的点云特征图,本申请对此并不做限制。
第二方面,提供了一种路沿检测装置,包括:处理单元,用于:根据多个点云层数据中每个点云层数据的层内特征和与所述每个点云层数据相邻的点云层数据之间的层间特征确定路沿点云数据;根据所述路沿点云数据确定初始路沿,并根据所述初始路沿确定路沿种子点所述初始路沿用于表示路沿检测开始时确定的路沿,所述路沿种子点用于表示所述路沿的真实状况;根据所述路沿种子点确定所述路沿对应的参数化方程。
结合第二方面,在一些可能的实现方式中,所述层内特征包括斜率特征,数目特征或反射强度特征中的至少一个;其中,所述斜率特征用于指示所述每个点云层数据中分布方向与所述车辆的行驶方向的夹角小于第三阈值的点云数据,所述数目特征用于指示所述每个点云层数据中邻域的点云数据的数目大于第四阈值的点云数据,所述反射强度特征用于指示所述每个点云层数据中反射率大于第五阈值的点云数据。
结合第二方面,在一些可能的实现方式中,所述层间特征包括层间距离特征或层间数目特征中的至少一个;其中,所述层间距离特征用于指示所述每个点云层数据中与相邻点云层数据之间距离小于第六阈值的点云数据,所述层间数目特征用于指示所述每个点云层数据中在相邻点云层数据的邻域中的点云数据的数目大于第七阈值的点云数据。
结合第二方面,在一些可能的实现方式中,所述处理单元具体用于:根据初始路沿确定第一组种子点和第一组候选点,所述第一组种子点中的每个点云数据与所述初始路沿的距离小于第一阈值,所述第一组种子点用于表示所述路沿的第一部分的真实状况,所述第一组候选点是所述路沿点云数据中除所述第一组种子点以外的点云数据;根据第一组种子点和所述第一组候选点确定第二组种子点,所述第二组种子点用于表示所述路沿的第二部分的真实状况;将所述第一组种子点和所述第二组种子点确定为所述路沿种子点。
结合第二方面,在一些可能的实现方式中,所述处理单元还具体用于:根据所述第一组种子点和所述第一组候选点确定第二组种子点和第二组候选点,所述第二组候选点是所述路沿点云数据中除所述第一组种子点和所述第二组种子点以外的点云数据;所述将所述第一组种子点和所述第二组种子点确定为所述路沿种子点,包括:根据所述第一组种子点,所述第二组种子点和所述第二组候选点确定第三组种子点,将所述第一组种子点,所述第二组种子点和所述第三组种子点确定为所述路沿种子点,所述第三组种子点用于表示所述路沿的第三部分的真实状况。
结合第二方面,在一些可能的实现方式中,所述处理单元还具体用于:根据所述第一组种子点确定第一组关键种子点,所述第一组关键种子点中的点云数据与栅格化后的所述第一组种子点中的栅格对应,所述第一关键种子点中的点云数据的坐标值为其对应的所述第一组种子点中的栅格中点云数据的坐标均值,所述第一关键种子点中的点云数据的权重由对应的栅格中的点云数据的数量确定;根据所述第一组候选点确定第一组关键候选点,所述第一组关键候选点中的点云数据与栅格化后的所述第一组候选点中的栅格对应,所述第一关键候选点中的点云数据的坐标值为其对应的所述第一组候选点中的栅格中点云数据的坐标均值,所述第一关键候选点中的点云数据的权重由对应的栅格中的点云数据的数量确定;根据所述第一组关键种子点和所述第一组关键候选点确定所述第二组种子点。
结合第二方面,在一些可能的实现方式中,所述处理单元还具体用于:根据所述第一组关键种子点和所述第一组关键候选点通过路沿预测模型确定第一组预测点,所述第一组预测点用于表示所述路沿的第二部分的预测状况;将所述第一组关键候选点中满足第一条件的点云数据确定为所述第二组种子点中的点云数据,所述第一条件为与所述第一组路沿预测点中的点云数据之间的偏差小于第二阈值;其中,所述路沿预测模型是通过机器学习得到的。
结合第二方面,在一些可能的实现方式中,所述处理单元还具体用于:根据所述路沿点云数据在俯视平面投影的点云数据确定初始路沿。
结合第二方面,在一些可能的实现方式中,所述处理单元还具体用于:根据所述在俯视平面投影的点云数据确定多个初始直线段;根据多个初始直线段确定初始路沿。
结合第二方面,在一些可能的实现方式中,所述装置还包括:获取单元,用于获取原始点云数据;所述处理单元还用于:根据所述原始点云数据确定所述多个点云层数据;其中,所述原始点云数据为激光雷达获取的点云数据,所述多个点云层数据为自车坐标系下的二维的点云数据。
结合第二方面,在一些可能的实现方式中,所述处理单元还具体用于:根据所述原始点云数据在球面投影后的点云数据生成点云特征图;根据所述点云特征图确定所述多个点云层数据。
结合第二方面,在一些可能的实现方式中,所述点云特征图包括点云深度图和点云索引图。
第三方面,提供一种路沿检测装置的控制装置,包括至少一个存储器和至少一个处理器,所述至少一个存储器用于存储程序,所述至少一个处理器用于运行所述程序,以实现第一方面所述的方法。
第四方面,提供一种芯片,包括至少一个处理单元和接口电路,所述接口电路用于为所述至少一个处理单元提供程序指令或者数据,所述至少一个处理单元用于执行所述程序指令,以实现第一方面所述的方法或者支持所述第二方面所述的装置的功能实现。
第五方面,提供一种计算机可读存储介质,所述计算机可读介质存储用于设备执行的程序代码,该程序代码被所述设备执行时,实现第一方面所述的方法。
第六方面,提供一种终端,包括第二方面所述的路沿检测装置,或者,第三方面所述的控制装置,或者,第四方面所述的芯片。进一步,该终端可以为智能运输设备(车辆或者无人机)、智能家居设备、智能制造设备、测绘设备或者机器人等。该智能运输设备例如可以是自动导引运输车(automated guided vehicle,AGV)、或无人运输车。
附图说明
图1是本申请实施例适用的一种车辆的功能框图。
图2是本申请实施例适用的一种自动驾驶系统的示意图。
图3是本申请实施例的一种云侧指令自动驾驶车辆的应用示意图。
图4是本申请实施例的自动驾驶系统的框架图。
图5是本申请实施例提供的一种路沿检测的方法400的流程图。
图6是本申请实施例提供的一种确定多个点云层数据的方法500的流程图。
图7是本申请实施例提供的一种确定路沿点云数据的方法600的示意图
图8是本申请实施例提供的斜率特征的示意图。
图9是本申请实施例提供的多个点云层数据的示意图。
图10是本申请实施例提供的邻域的示意图。
图11是本申请实施例提供的一种确定路沿种子点的方法700的流程图。
图12是本申请实施例提供的一种确定路沿种子点的示意图。
图13是本申请实施例提供的一种路沿预测模型的训练方法的示意性流程图。
图14是本申请实施例提供的一种更新路沿种子点的方法的流程图。
图15是本申请实施例提供的确定栅格中关键点种子点的示意图。
图16是本申请实施例提供的路沿检测的迭代效果图。
图17是本申请实施例提供的一种路沿检测装置的示意性结构图。
图18是本申请实施例提供的一种路沿检测装置的控制装置的示意性结构图。
具体实施方式
为了便于理解,下文首先介绍几个本申请涉及到的概念和术语。
激光雷达(light detection and ranging,LiDAR):是以发射探测光束探测目标的位置、速度等特征量的雷达系统。其工作原理是向目标发射探测信号(探测光束),然后将接收到的从目标反射回来的信号(目标回波)与发射信号进行比较,作适当处理后,就可获得目标的有关信息,如目标距离、方位、高度、速度、姿态、甚至形状等参数,从而对飞机、导弹等目标进行探测、跟踪和识别。
点云数据:是指在一个3D坐标系中的一组向量的集合。这些向量通常以x,y,z的3D坐标的形式表示,一般主要代表一个物体的外表面几何形状,除此之外点云数据还可以附带RGB信息,即每个坐标点的颜色信息,或者是其他的信息。
点云层数据:是指激光雷达中单个发射探测光束探测目标后所获得的点云数据,每个点云层数据对应于激光雷达中的一个探测光束。
帧,可以理解为激光雷达每次通过探测光束对目标进行探测时,所获得的点云数据的集合。
栅格化:栅格即像素,栅格化即将矢量图形转化为位图(栅格图像)。最基础的栅格化算法将多边形表示的3D场景渲染到二维(2-dimension,2D)表面。
点云深度图(depth image):也叫距离影像,是指将从激光雷达原点到场景中各点的距离(深度)值作为像素值的图像。
点云索引图(index image):是指将点云数据由3D场景转换到2D场景后,不同点云数据对应的标签作为像素值所组成的图像,以便将2D场景还原至3D场景。
自车坐标系:是指车辆中所有传感器共用的坐标系。例如,车辆中可以包括激光雷达,可见光相机和定位装置,其中,激光雷达,可见光相机和定位装置所获取数据分别处在不同的坐标系中,为方便车辆的处理器对这些数据进行统一处理,需要将这些数据均转换到同一的坐标系中进行处理。
本申请实施例所提供的路沿检测的方法和/或装置可以应用于各类车辆。这些方法和/或装置既可以应用于人工驾驶,又可以应用于辅助驾驶,还可以应用于自动驾驶。下面结合附图,对本申请实施例的技术方案进行介绍。
图1是本申请实施例适用的一种车辆的功能框图。其中,车辆100可以是人工驾驶车辆,或者可以将车辆100配置可以为完全或部分地自动驾驶模式。
在一个示例中,车辆100可以在处于自动驾驶模式中的同时控制自车,并且可通过人为操作来确定车辆及其周边环境的当前状态,确定周边环境中的至少一个其他车辆的可能行为,并确定其他车辆执行可能行为的可能性相对应的置信水平,基于所确定的信息来控制车辆100。在车辆100处于自动驾驶模式中时,可以将车辆100置为在没有和人交互的情况下操作。
车辆100中可以包括各种子系统,例如,行进系统110、传感系统120、控制系统130、一个或多个外围设备140以及电源160、计算机系统150和用户接口170。
可选地,车辆100可以包括更多或更少的子系统,并且每个子系统可包括多个元件。另外,车辆100的每个子系统和元件可以通过有线或者无线互连。
示例性地,行进系统110可以包括用于向车辆100提供动力运动的组件。在一个实施例中,行进系统110可以包括引擎111、传动装置112、能量源113和车轮114/轮胎。其中,引擎111可以是内燃引擎、电动机、空气压缩引擎或其他类型的引擎组合;例如,汽油发动机和电动机组成的混动引擎,内燃引擎和空气压缩引擎组成的混动引擎。引擎111可以将能量源113转换成机械能量。
示例性地,能量源113可以包括汽油、柴油、其他基于石油的燃料、丙烷、其他基于压缩气体的燃料、乙醇、太阳能电池板、电池和其他电力来源。能量源113也可以为车辆100的其他系统提供能量。
示例性地,传动装置112可以包括变速箱、差速器和驱动轴;其中,传动装置112可以将来自引擎111的机械动力传送到车轮114。
在一个实施例中,传动装置112还可以包括其他器件,比如离合器。其中,驱动轴可以包括可耦合到一个或多个车轮114的一个或多个轴。
示例性地,传感系统120可以包括感测关于车辆100周边的环境的信息的若干个传感器。
例如,传感系统120可以包括定位系统121(例如,全球定位系统(globalpositioning system,GPS)、北斗系统或者其他定位系统)、惯性测量单元(inertialmeasurement unit,IMU)122、雷达123、激光测距仪124、相机125以及车速传感器126。传感系统120还可以包括被监视车辆100的内部系统的传感器(例如,车内空气质量监测器、燃油量表、机油温度表等)。来自这些传感器中的一个或多个的传感器数据可用于检测对象及其相应特性(位置、形状、方向、速度等)。这种检测和识别是自主车辆100的安全操作的关键功能。
其中,定位系统121可以用于估计车辆100的地理位置。IMU122可以用于基于惯性加速度来感测车辆100的位置和朝向变化。在一个实施例中,IMU 122可以是加速度计和陀螺仪的组合。
示例性地,雷达123可以利用无线电信息来感测车辆100的周边环境内的物体。在一些实施例中,除了感测物体以外,雷达123还可用于感测物体的速度和/或前进方向。
示例性地,激光测距仪124可以利用激光来感测车辆100所位于的环境中的物体。在一些实施例中,激光测距仪124可以包括一个或多个激光源、激光扫描器以及一个或多个检测器,以及其他系统组件。
示例性地,相机125可以用于捕捉车辆100的周边环境的多个图像。例如,相机125可以是静态相机或视频相机。
示例性地,车速传感器126可以用于测量车辆100的速度。例如,可以对车辆进行实时测速。测得的车速可以传送给控制系统130以实现对车辆的控制。
如图1所示,控制系统130为控制车辆100及其组件的操作。控制系统130可以包括各种元件,比如可以包括转向系统131、油门132、制动单元133、计算机视觉系统134、路线控制系统135以及障碍规避系统136。
示例性地,转向系统131可以操作来调整车辆100的前进方向。例如,在一个实施例中可以为方向盘系统。油门132可以用于控制引擎111的操作速度并进而控制车辆100的速度。
示例性地,制动单元133可以用于控制车辆100减速;制动单元133可以使用摩擦力来减慢车轮114。在其他实施例中,制动单元133可以将车轮114的动能转换为电流。制动单元133也可以采取其他形式来减慢车轮114转速从而控制车辆100的速度。
如图1所示,计算机视觉系统134可以操作来处理和分析由相机125捕捉的图像以便识别车辆100周边环境中的物体和/或特征。上述物体和/或特征可以包括交通信息、道路边界和障碍物。计算机视觉系统134可以使用物体识别算法、运动中恢复结构(structurefrom motion,SFM)算法、视频跟踪和其他计算机视觉技术。在一些实施例中,计算机视觉系统134可以用于为环境绘制地图、跟踪物体、估计物体的速度等等。
示例性地,路线控制系统135可以用于确定车辆100的行驶路线。在一些实施例中,路线控制系统135可结合来自传感器、GPS和一个或多个预定地图的数据以为车辆100确定行驶路线。
如图1所示,障碍规避系统136可以用于识别、评估和避免或者以其他方式越过车辆100的环境中的潜在障碍物。
在一个实例中,控制系统130可以增加或替换地包括除了所示出和描述的那些以外的组件。或者也可以减少一部分上述示出的组件。
如图1所示,车辆100可以通过外围设备140与外部传感器、其他车辆、其他计算机系统或用户之间进行交互;其中,外围设备140可包括无线通信系统141、车载电脑142、麦克风143和/或扬声器144。
在一些实施例中,外围设备140可以提供车辆100与用户接口170交互的手段。例如,车载电脑142可以向车辆100的用户提供信息。用户接口116还可操作车载电脑142来接收用户的输入;车载电脑142可以通过触摸屏进行操作。在其他情况中,外围设备140可以提供用于车辆100与位于车内的其它设备通信的手段。例如,麦克风143可以从车辆100的用户接收音频(例如,语音命令或其他音频输入)。类似地,扬声器144可以向车辆100的用户输出音频。
如图1所述,无线通信系统141可以直接地或者经由通信网络来与一个或多个设备无线通信。例如,无线通信系统141可以使用3G蜂窝通信;例如,码分多址(code divisionmultiple access,CDMA))、EVD0、全球移动通信系统(global system for mobilecommunications,GSM)/通用分组无线服务(general packet radio service,GPRS),或者4G蜂窝通信,例如长期演进(long term evolution,LTE);或者,5G蜂窝通信。无线通信系统141可以利用无线上网(WiFi)与无线局域网(wireless local area network,WLAN)通信。
在一些实施例中,无线通信系统141可以利用红外链路、蓝牙或者紫蜂协议(ZigBee)与设备直接通信;其他无线协议,例如各种车辆通信系统,例如,无线通信系统141可以包括一个或多个专用短程通信(dedicated short range communications,DSRC)设备,这些设备可包括车辆和/或路边台站之间的公共和/或私有数据通信。
如图1所示,电源160可以向车辆100的各种组件提供电力。在一个实施例中,电源160可以为可再充电锂离子电池或铅酸电池。这种电池的一个或多个电池组可被配置为电源为车辆100的各种组件提供电力。在一些实施例中,电源160和能量源113可一起实现,例如一些全电动车中那样。
示例性地,车辆100的部分或所有功能可以受计算机系统150控制,其中,计算机系统150可以包括至少一个处理器151,处理器151执行存储在例如存储器152中的非暂态计算机可读介质中的指令153。计算机系统150还可以是采用分布式方式控制车辆100的个体组件或子系统的多个计算设备。
例如,处理器151可以是任何常规的处理器,诸如商业可获得的中央处理器(central processing unit,CPU)。
可选地,该处理器可以是诸如专用集成电路(application specific integratedcircuit,ASIC)或其它基于硬件的处理器的专用设备。尽管图1功能性地图示了处理器、存储器、和在相同块中的计算机的其它元件,但是本领域的普通技术人员应该理解该处理器、计算机、或存储器实际上可以包括可以或者可以不存储在相同的物理外壳内的多个处理器、计算机或存储器。例如,存储器可以是硬盘驱动器或位于不同于计算机的外壳内的其它存储介质。因此,对处理器或计算机的引用将被理解为包括对可以或者可以不并行操作的处理器或计算机或存储器的集合的引用。不同于使用单一的处理器来执行此处所描述的步骤,诸如转向组件和减速组件的一些组件每个都可以具有其自己的处理器,所述处理器只执行与特定于组件的功能相关的计算。
在此处所描述的各个方面中,处理器可以位于远离该车辆并且与该车辆进行无线通信。在其它方面中,此处所描述的过程中的一些在布置于车辆内的处理器上执行而其它则由远程处理器执行,包括采取执行单一操纵的必要步骤。
在一些实施例中,存储器152可包含指令153(例如,程序逻辑),指令153可以被处理器151来执行车辆100的各种功能,包括以上描述的那些功能。存储器152也可包括额外的指令,比如包括向行进系统110、传感系统120、控制系统130和外围设备140中的一个或多个发送数据、从其接收数据、与其交互和/或对其进行控制的指令。
示例性地,除了指令153以外,存储器152还可存储数据,例如,道路地图、路线信息,车辆的位置、方向、速度以及其它这样的车辆数据,以及其他信息。这种信息可在车辆100在自主、半自主和/或手动模式中操作期间被车辆100和计算机系统150使用。
如图1所示,用户接口170可以用于向车辆100的用户提供信息或从其接收信息。可选地,用户接口170可以包括在外围设备140的集合内的一个或多个输入/输出设备,例如,无线通信系统141、车载电脑142、麦克风143和扬声器144。
在本申请的实施例中,计算机系统150可以基于从各种子系统(例如,行进系统110、传感系统120和控制系统130)以及从用户接口170接收的输入来控制车辆100的功能。例如,计算机系统150可以利用来自控制系统130的输入以便控制制动单元133来避免由传感系统120和障碍规避系统136检测到的障碍物。在一些实施例中,计算机系统150可操作来对车辆100及其子系统的许多方面提供控制。
可选地,上述这些组件中的一个或多个可与车辆100分开安装或关联。例如,存储器152可以部分或完全地与车辆100分开存在。上述组件可以按有线和/或无线方式来通信地耦合在一起。
可选地,上述组件只是一个示例,实际应用中,上述各个模块中的组件有可能根据实际需要增添或者删除,图1不应理解为对本申请实施例的限制。
可选地,车辆100可以是在道路行进的自动驾驶汽车,可以识别其周围环境内的物体以确定对当前速度的调整。物体可以是其它车辆、交通控制设备、或者其它类型的物体。在一些示例中,可以独立地考虑每个识别的物体,并且基于物体的各自的特性,诸如它的当前速度、加速度、与车辆的间距等,可以用来确定自动驾驶汽车所要调整的速度。
可选地,车辆100或者与车辆100相关联的计算设备(如图1的计算机系统150、计算机视觉系统134、存储器152)可以基于所识别的物体的特性和周围环境的状态(例如,交通、雨、道路上的冰等等)来预测所述识别的物体的行为。
可选地,每一个所识别的物体都依赖于彼此的行为,因此,还可以将所识别的所有物体全部一起考虑来预测单个识别的物体的行为。车辆100能够基于预测的所述识别的物体的行为来调整它的速度。换句话说,自动驾驶汽车能够基于所预测的物体的行为来确定车辆将需要调整到(例如,加速、减速、或者停止)稳定状态。在这个过程中,也可以考虑其它因素来确定车辆100的速度,诸如,车辆100在行驶的道路中的横向位置、道路的曲率、静态和动态物体的接近度等等。
除了提供调整自动驾驶汽车的速度的指令之外,计算设备还可以提供修改车辆100的转向角的指令,以使得自动驾驶汽车遵循给定的轨迹和/或维持与自动驾驶汽车附近的物体(例如,道路上的相邻车道中的轿车)的安全横向和纵向距离。
上述车辆100可以为轿车、卡车、摩托车、公共汽车、船、飞机、直升飞机、割草机、娱乐车、游乐场车辆、施工设备、电车、高尔夫球车、火车、和手推车等,本申请实施例不做特别的限定。
在一种可能的实现方式中,上述图1所示的车辆100可以是自动驾驶车辆,下面对自动驾驶系统的进行详细描述。
图2是本申请实施例适用的一种自动驾驶系统的示意图。
如图2所示的自动驾驶系统包括计算机系统201,其中,计算机系统201包括处理器203,处理器203和系统总线205耦合。处理器203可以是一个或者多个处理器,其中,每个处理器都可以包括一个或多个处理器核。显示适配器207(video adapter),显示适配器可以驱动显示器209,显示器209和系统总线205耦合。系统总线205可以通过总线桥211和输入输出(I/O)总线213耦合,I/O接口215和I/O总线耦合。I/O接口215和多种I/O设备进行通信,比如,输入设备217(如:键盘,鼠标,触摸屏等),媒体盘221(media tray),(例如,CD-ROM,多媒体接口等)。收发器223可以发送和/或接受无线电通信信息,摄像头255可以捕捉景田和动态数字视频图像。其中,和I/O接口215相连接的接口可以是USB端口225。
其中,处理器203可以是任何传统处理器,比如,精简指令集计算(reducedinstruction set computer,RISC)处理器、复杂指令集计算(complex instruction setcomputer,CISC)处理器或上述的组合。
可选地,处理器203可以是诸如专用集成电路(ASIC)的专用装置;处理器203可以是神经网络处理器或者是神经网络处理器和上述传统处理器的组合。
可选地,在一些实施例中,计算机系统201可位于远离自动驾驶车辆的地方,并且可与自动驾驶车辆无线通信。在其它方面,本申请所述的一些过程在设置在自动驾驶车辆内的处理器上执行,其它由远程处理器执行,包括采取执行单个操纵所需的动作。
计算机系统201可以通过网络接口229和软件部署服务器249通信。网络接口229可以是硬件网络接口,比如,网卡。网络227可以是外部网络,比如,因特网,也可以是内部网络,比如以太网或者虚拟私人网络(virtual private network,VPN)。可选地,网络227还可以是无线网络,比如WiFi网络,蜂窝网络等。
如图2所示,硬盘驱动接口和系统总线205耦合,硬件驱动器接口231可以与硬盘驱动器233相连接,系统内存235和系统总线205耦合。运行在系统内存235的数据可以包括操作系统237和应用程序243。其中,操作系统237可以包括解析器(shell)239和内核(kernel)241。shell 239是介于使用者和操作系统之内核(kernel)间的一个接口。shell可以是操作系统最外面的一层;shell可以管理使用者与操作系统之间的交互,比如,等待使用者的输入,向操作系统解释使用者的输入,并且处理各种各样的操作系统的输出结果。内核241可以由操作系统中用于管理存储器、文件、外设和系统资源的那些部分组成。直接与硬件交互,操作系统内核通常运行进程,并提供进程间的通信,提供CPU时间片管理、中断、内存管理、IO管理等等。应用程序243包括控制汽车自动驾驶相关的程序,比如,管理自动驾驶的汽车和路上障碍物交互的程序,控制自动驾驶汽车路线或者速度的程序,控制自动驾驶汽车和路上其他自动驾驶汽车交互的程序。应用程序243也存在于软件部署服务器249的系统上。在一个实施例中,在需要执行自动驾驶相关程序247时,计算机系统201可以从软件部署服务器249下载应用程序。
例如,应用程序243还可以是自动驾驶汽车和路上车道线交互的程序,也就是说可以实时跟踪车道线的程序。
例如,应用程序243还可以是控制自动驾驶车辆进行自动泊车的程序。
示例性地,传感器253可以与计算机系统201关联,传感器253可以用于探测计算机201周围的环境。
举例来说,传感器253可以探测路上的车道,比如可以探测到车道线,并能够在车辆移动(如正在行驶)过程中实时跟踪到车辆前方一定范围内的车道线变化。又例如,传感器253可以探测动物,汽车,障碍物和人行横道等,进一步传感器还可以探测上述动物,汽车,障碍物和人行横道等物体周围的环境,比如:动物周围的环境,例如,动物周围出现的其他动物,天气条件,周围环境的光亮度等。
可选地,如果计算机201位于自动驾驶的汽车上,传感器可以是摄像头,红外线感应器,化学检测器,麦克风等。
示例性地,在车道线跟踪的场景中,传感器253可以用于探测车辆前方的车道线,从而使得车辆能够感知在行进过程中车道的变化,以据此对车辆的行驶进行实时规划和调整。
示例性地,在自动泊车的场景中,传感器253可以用于探测车辆周围的库位和周边障碍物的尺寸或者位置,从而使得车辆能够感知库位和周边障碍物的距离,在泊车时进行碰撞检测,防止车辆与障碍物发生碰撞。
在一个示例中,图1所示的计算机系统150还可以从其它计算机系统接收信息或转移信息到其它计算机系统。或者,从车辆100的传感系统120收集的传感器数据可以被转移到另一个计算机对此数据进行处理,下面以图3为例进行介绍。
图3是本申请实施例的一种云侧指令自动驾驶车辆的应用示意图。
如图3所示,来自计算机系统312的数据可以经由网络被传送到云侧的服务器320用于进一步的处理。网络以及中间节点可以包括各种配置和协议,包括因特网、万维网、内联网、虚拟专用网络、广域网、局域网、使用一个或多个公司的专有通信协议的专用网络、以太网、WiFi和HTTP、以及前述的各种组合;这种通信可以由能够传送数据到其它计算机和从其它计算机传送数据的任何设备,诸如调制解调器和无线接口。
在一个示例中,服务器320可以包括具有多个计算机的服务器,例如负载均衡服务器群,为了从计算机系统312接收、处理并传送数据的目的,其与网络的不同节点交换信息。该服务器可以被类似于计算机系统312配置,具有处理器330、存储器340、指令350、和数据360。
示例性地,服务器320的数据360可以包括车辆周围道路情况的相关信息。例如,服务器320可以接收、检测、存储、更新、以及传送与车辆道路情况相关的信息。
例如,车辆周围道路情况的相关信息包括与车辆周围的其它车辆信息以及障碍物信息。
图4是本申请实施例的自动驾驶系统的框架图,自动驾驶系统的框架图中的一些模块可以位于图2中所示的处理器203中。
如图4所示,自动驾驶系统可以包括环境感知模块,车辆定位模块,决策规划模块和车辆控制模块。
其中,环境感知模块可以根据传感器获取的传感器数据进行路沿检测,车道线检测,目标障碍物检测和交通标识检测等环境检测,用于确定车辆当前所处的驾驶环境。车辆定位模块可以根据传感器获取的传感器数据确定车辆当前的行驶姿态(位置及行驶速度等)。决策规划模块可以根据环境感知模块和车辆定位模块输出的结果确定车辆下一时刻的行驶策略(行驶角度及行驶速度等)。车辆控制模块可以根据形式策略确定车辆控制量(各个部件需要调整的参数),以实现自动驾驶。
应理解,环境感知模块是智能车辆平台与周围交通场景的交互端口,也是智能车辆平台运动决策、规划控制系统的前端输入。环境感知模块的性能直接决定了自动驾驶平台执行驾驶任务的稳定性。而在环境感知模块中,鲁棒的路沿(道路边界)检测作为其核心任务之一,在车辆防碰撞中具备关键作用。
本申请提供了一种基于激光雷达的路沿检测的方法和装置,经过路测的实际数据测试,在现实交通场景能够实现鲁棒、精确的路沿检测,大大提高了路沿的检测距离,可以适用于车辆的自动驾驶系统或高级驾驶辅助系统(advanced driving assistancesystem,ADAS)。
图5是本申请实施例提供的一种路沿检测的方法400的流程图。图5所示的方法可以由自动驾驶装置来执行,该自动驾驶装置可以是云服务设备,也可以是终端设备,也可以是由云服务设备和终端设备构成的系统。例如,方法400可以运行于车载计算机等运算能力足以用来执行该自动驾驶方法的装置上,车载计算机的算力能够满足30Hz或者更高的更新率。示例性地,方法400可以由图1中的计算机系统150、图2中的计算机系统201、或者图3中的计算机系统312或服务器320执行。
方法400包括步骤S410至步骤S440。下面对步骤S410至步骤S440进行详细说明。
S420,根据多个点云层数据中每个点云层数据的层内特征和与该点云数据相邻的点云层数据之间的层间特征确定路沿点云数据。
其中,结合激光雷达的多个探测光束获得多个点云层数据中的每个点云层数据的层内特征和与每个点云层数据相邻的点云层数据之间的层间特征确定路沿点云数据。由于路沿点云数据的确定过程中结合了单扫描层内和多扫描层间的特征,不会因为点云数据的稀疏性滤除远处的有效点云数据,导致检测距离变短,有效提升了路沿检测的距离。
S430,根据路沿点云数据确定初始路沿,并根据初始路沿确定路沿种子点。
其中,路沿点云数据中的点云数据是与路沿相关的点云数据,初始路沿用于表示路沿检测开始时确定的路沿,路沿种子点用于表示路沿的真实状况。根据路沿点云数据进行直线提取,对直线进行筛选、合并后作为初始路沿。对路沿点云数据和初始路沿进行数据关联,路沿点云数据中点云数据与初始路沿的距离小于第一阈值则为关联成功,作为第一路沿种子点,反之,关联失败则为第一路沿候选点。并且,可以根据第一路沿种子点和第一种子候选点通过路沿预测模型预测路沿种子点,以不断更新路沿种子点种的点云数据。
应理解,在初始路沿生成的部分,由于没有直接限制由路沿点云数据进行直线提取的线段数目,对于复杂道路(弯道或多分叉路口)的适应性更好,不只适用于某一种单一的道路结构。
S440,根据路沿种子点确定路沿对应的参数化方程。
其中,对路沿种子点中的点云数据进行拟合,得到路沿的参数化方程,该参数化方程可以应用于车辆的自动驾驶系统或ADAS,用于表示真实的路沿。
方法400还可以包括步骤S410,根据原始点云数据确定多个点云层数据。
其中,原始点云数据可以是车辆的激光雷达获取的点云数据,具体的,可以是激光雷达中多个激光发射单元通过探测光束对目标进行探测获取的点云数据。
应理解,原始点云数据可以是激光雷达获得的一帧对应的点云数据,或者,也可以是多帧对应的点云数据。即本申请实施例提供的路沿检测的方法可以根据激光雷达每一帧的点云数据输出路沿结果,也可以根据多帧的点云数据输出路沿结果,可以根据实际的应用场景进行选择。
图6是本申请实施例提供的一种确定多个点云层数据的方法500的流程图,可以对应于上述方法400中的步骤S410。
方法500包括步骤S510至步骤S550。下面对步骤S510至步骤S550进行详细说明。
S510,获取原始点云数据。
利用激光雷达中多个激光发射单元发射探测光束对目标区域的空间环境进行探测,获得目标区域的空间环境的原始点云数据,原始点云数据可以是三维的点云数据。
S520,原始点云数据去噪。
原始点云数据中存在一些位置不在驾驶任务关注范围内的点云数据,例如,坐标在地面以下的点云数据,坐标远高于地面的点云数据,可通过其三维空间坐标对原始点云数据中的数据点或噪声点进行简单的初步滤除。
S530,坐标系转换。
原始点云数据是在激光雷达的坐标系下生成的,需要将其转化到自车坐标系下,激光雷达的坐标系和自车坐标系之间存在三维空间的旋转、平移关系,可用4×4的齐次坐标变换矩阵进行转换,其中4×4的齐次坐标变换矩阵包含3×3的空间旋转矩阵和3×1的空间平移向量。应理解,本申请实施例仅以4×4的齐次坐标变换矩阵举例,在实际应用中,也可以使用其他方式实现激光雷达的坐标系和自车坐标系之间的转换。
S540,原始点云数据降维,并生成点云特征图。
由于原始点云数据为三维的点云数据,对三维的点云数据进行处理(特征提取)的过程中可能会消耗大量的计算成本,导致方法整体的计算效率过低。因此,可以将三维的点云数据降维为二维的点云数据,并将二维的点云数据在点云特征图中表示,大大降低其计算成本,提升方法整体的计算效率。例如,可以利用球面投影将三维的点云数据转换成二维的点云数据,球面投影公式如下:
其中,(x,y,z)为激光雷达获取的三维的点云数据的空间坐标,(u,v)为三维的点云数据经过球面投影在点云特征图中的对应像素的坐标,Row为激光雷达中激光发射单元的数目,Col为在水平方向将空间展开划分的区间数目,fdown为激光雷达水平以下扫描的垂直视场角,f为激光雷达的垂直视场角(包括水平以下扫描的垂直视场角fdown及水平以上扫描的垂直视场角fup),Rang为点云数据与激光雷达的空间距离。
在一个实施例中,点云特征图可以是点云深度图和点云索引图,或者也可以是其他类型的点云特征图,本申请对此并不做限制。
S550,确定多个点云层数据。
可以根据原始点云数据生成点云特征图确定自车坐标系下的二维的多个点云层数据。
图7是本申请实施例提供的一种确定路沿点云数据的方法600的示意图,可以对应于上述方法400中的步骤S420。
本实施例提供的技术方案利用激光雷达获取点云数据,结合每个点云层数据的层内特征和与该点云层数据相邻的点云层数据之间的层间特征进行路沿点云数据的提取。
其中,层内特征可以包括斜率特征,数目特征或反射强度特征中的至少一个。层间特征可以包括层间距离特征或层间数目特征中的至少一个。
层内特征:
斜率特征:如图8所示,用于指示在单个点云层数据中分布方向与车辆的行驶方向的夹角θ小于第三阈值的点云数据。分布方向可以理解为在单个点云层数据中第一点云数据与相邻的点云数据的连线形成的方向,第一点云数据可以是单个点云层数据中任意一个点云数据。在实际的交通场景中,车辆在两侧路沿之间行驶,因此,路沿点云数据的分布方向与车辆行驶方向之间的夹角在一个较小的范围波动。对于自车坐标系下的单个点云层数据,如果在二维平面内下与其相邻的点云数据的连线形成的方向和行驶方向的角度差值在一定范围内,则可以判断其为路沿点云数据。
数目特征:用于指示单个点云层数据中邻域的点云数据的数目大于第四阈值的点云数据。如图9所示,根据激光雷达获取的点云数据特性,探测光束照射在路沿上所获得的点云数据的密度值大于照射在路面上所获得的点云数据的密度值。因此,路沿点云数据中的每个点云数据在对应的单个点云层数据中的邻域中的点云数据的数目须大于第四阈值。如图10中的(a)所示,单个点云层数据中的邻域可以理解为该点云数据在其点云层数据内相邻的两个区域,例如,该点云数据在第一点云层数据的区域3内,其邻域为区域2和区域4。或者,也可以理解为该点云数据在其点云层内相邻的多个区域,例如,该点云数据在第一点云层数据的区域3内,其邻域为区域1,区域2,区域3和区域4。
反射强度特征:用于指示所述单个点云层数据中反射率大于第五阈值的点云数据。通过该特征可以通过反射率强度特征可以滤除一些反射率较低的路沿噪声点。例如,可以滤除由于下雨天的雨水,空气中的灰尘等因素引入的一些反射率较低的路沿噪声点。或者,在另一种方案中,在实际的交通道路中,路沿的材质一般都为反射率强度较高的材料,因此,也可以通过反射率大于第五阈值的点云数据确定为路沿点云数据。
层间特征:
层间距离特征:用于指示与相邻点云层数据之间距离小于第六阈值的点云数据。如图9所示,激光雷达中每个激光发射单元都有固定的垂直照射角度(与垂直于路边的方向所呈角度),因此,照射在水平路面上的点云数据呈环状分布。但是由于路沿是垂直与路面的平面,导致相邻两个点云层数据之间的点云数据的距离变小。因此如果点云数据与相邻点云层数据之间距离小于第六阈值,则可以判断其为路沿点云数据。
层间数目特征:用于指示点在相邻点云层数据的邻域中的点云数据的数目大于第七阈值的点云数据。如图9所示,根据激光雷达获取的点云数据特性,探测光束照射在路沿上所获得的点云数据的密度值大于照射在路面上所获得的点云数据的密度值。因此,路沿点云数据中的每个点云数据在对应的相邻的点云层数据中的邻域中的点云数据的数目须大于第七阈值。如图10中的(b)所示,相邻的点云层数据中的邻域可以理解为该点云数据在相邻点云层数据内相邻的两个区域,例如,该点云数据在第一点云层数据的区域1内,其邻域为第二点云层数据的区域2和第三点云层数据的区域2。或者,也可以理解为该点云数据在相邻点云层数据内相邻的多个区域,例如,该点云数据在第一点云层数据的区域3内,其邻域为第二点云层数据的区域1,区域2和区域3和第三点云层数据的区域1,区域2和区域3。
应理解,本实施例提供的确定路沿点云数据方法中结合了单个点云层数据的特征和相邻两个点云层数据之间的特征,不会因为点云数据的稀疏性滤除远处的有效点云数据,导致检测距离变短,有效提升了路沿检测的距离。经实际的路测数据测试,所设计特征基本符合真实交通场景中绝大数的路沿的实际特征。
图11是本申请实施例提供的一种确定路沿种子点的方法700的流程图,可以对应于上述方法400中的步骤S430。
方法700包括步骤S710至步骤S730。下面对步骤S710至步骤S730进行详细说明。
S710,根据路沿点云数据确定初始路沿。
其中,为降低计算成本,可以将确定的路沿点云数据先投影在俯视平面中,如图12中的(a)所示,俯视平面可以认为是水平面或道路所在平面。利用霍夫变换可以在投影后的路沿点云数据中确定多个初始直线段,如图12中的(b)所示,多个初始直线段可以用于确定路沿的初始状况。但是,由于真实道路场景中,只有一部分道路的路沿分布符合直线分布,所以需要对多个初始直线段进行筛选,并将筛选后的多个初始直线段进行合并,从而形成初始路沿,如图12中的(c)所示,初始路沿可以作为后续方法的基准。
应理解,霍夫变换仅仅是一种通过变换空间实现直线段提取的方法,在实际应用中也可以通过其他方式获取多个初始直线段,本申请对此并不做限制。
对多个初始直线段的筛选过程可以包括去除初始直线段中长度较短或斜率朝向与车辆行驶方向差异较大的直线段。
对筛选后的多个初始直线段合并过程可以包括将初始直线段中斜率差异较小、起始点距离较近的直线段合并为新的直线段,最终得到初始路沿。
由于将路沿点云数据投影在俯视平面中提取初始直线段,相比在三维空间中直接计算的开销更小。同时,在初始路沿生成的部分,由于没有直接限制初始直线段的数目,对于复杂道路的适应性更好,不只适用于某一种单一的道路结构,例如直线道路。
S720,根据初始路沿确定第一组种子点和第一组候选点。
其中,可以根据与初始路沿之间的距离确定第一组种子点和第一组候选点,第一组种子点用于表示路沿的第一部分的真实状况,第一组候选点是路沿点云数据中除第一组种子点以外的点云数据。路沿点云数据中与初始路沿之间的距离小于第一阈值的点云数据可以作为第一组种子点的点云数据,大于或等于第一阈值的点云数据可以作为第一组候选点中的点云数据,如图12中的(d)所示。第一组种子点可以作为路沿种子点,可以用于表示路沿的真实状况。
S730,根据第一组种子点和第一组候选点确定路沿种子点。
其中,根据第一组种子点和第一组候选点通过路沿预测模型对路沿对应的点云数据的分布情况进行预测,通过多次迭代不断更新路沿种子点,进一步提升路沿检测的检测距离及检测效果。例如,可以根据第一组种子点和所述第一组候选点确定第二组种子点和第二组候选点,将第一组种子点和第二组种子点确定为路沿种子点,第二组种子点用于表示路沿的第二部分的真实状况,第二组候选点是路沿点云数据中除第一组种子点和第二组种子点以外的点云数据。根据第一组种子点,第二组种子点和第二组候选点确定第三组种子点和第三组候选点,将第一组种子点,第二组种子点和第三组种子点确定为路沿种子点,依照该方法多次迭代不断更新路沿种子点,第三组种子点用于表示路沿的第三部分的真实状况,第三组候选点是路沿点云数据中除第一组种子点,第二组种子点和第三组种子点以外的点云数据。应理解,路沿的第一部分,路沿的第二部分和路沿的第三部分可以是不同的,路沿的第一部分,路沿的第二部分和路沿的第三部分可以是连续的,用于共同表示连续的路沿。
图13是本申请实施例提供的一种路沿预测模型的训练方法的示意性流程图,该模型可以应用于图11所示的方法700中S730,用于多次迭代不断更新路沿种子点。该模型可以是基于高斯过程回归建立的模型。
图13所示的方法可以由图1中的计算机系统150、图2中的计算机系统201、或者图3中的计算机系统312或服务器320等运算能力较强的设备来执行。图13所示的方法包括步骤S801至S804,下面分别对这几个步骤进行详细的介绍。
S801,标注路沿真值。
在激光雷达获取的点云数据中手动标注路沿真值,路沿真值为激光雷达获取的点云数据中路沿对应的真实值。
应理解,在标注过程中,应挑选多种道路结构场景、多种路沿种类以保证数据的一般性,以增神经网络强模型的鲁棒性和适应性。
S802,构建训练数据集,训练数据集中包括多个手动标注路沿真值。
S803,训练路沿预测模型的参数。
其中,由于路沿预测模型可以是基于高斯过程回归建立的模型,高斯过程回归是一种非参数模型,但是,其核函数包括超参数,超参数需要通过训练得到。可以通过训练数据集中的路沿真值利用最大化边缘对数似然来训练核函数的超参数。
应理解,由于高斯过程回归是一种非参数模型,不要求道路具有特定的形状,因此,对于曲率变化较大的道路或者施工路段等难点场景,高斯过程回归能较好地预测道路的路沿分布情况。
或者,也可以通过其他的机器学习方式获得路沿预测模型的参数,本申请对此并不做限制,可以根据实际的生产或设计需要进行调整。
S804,构建路沿预测模型。
根据训练得到的高斯过程回归的核函数的超参数构建路沿预测模型,通过该模型可以对路沿种子点进行更新,以提升路沿检测的检测距离及检测效果。路沿预测模型属于机械学习领域,也可以通过其他方式获取该模型,本申请对此并不做限制。
图14是本申请实施例提供的一种更新路沿种子点的方法的流程图,可以对应于上述方法700中的步骤S730。
方法800包括步骤S810至步骤S830。下面对步骤S810至步骤S830进行详细说明。
S810,确定第一组关键种子点和第一组关键候选点。
由于路沿预测模型的计算开销与输入的数据正相关,因此,在不影响预测精度的情况下,为降低后续步骤中路沿预测模型的计算开销,可以将第一组种子点和第一组候选点栅格化,根据栅格化后的第一组种子点和第一组候选点确定第一组关键种子点和第一组关键候选点。
如图15所示,可以根据一个栅格内的种子点确定其对应的关键点。关键点的坐标值可以为栅格内点云数据的坐标均值。同时,为了避免了噪声对路沿预测结果的影响,可以根据栅格内的点云数据的数目确定关键点的权重,并生成对应的权重矩阵,关键点由(x,y,权重(weight))表示。即可以将点云数据的数目输入样本权重函数,样本权重函数设计如下式所示。应理解,对于一个栅格内的候选点确定其对应的关键点,也可以采用上述方案。
其中,n为栅格内点云数据的数目,n1和n2分别为栅格内点云数据的阈值(上限及下限)。
S820,根据路沿预测模型确定路沿预测点。
基于上述通过图13所示的方法训练的路沿预测模型生成路沿预测点,路沿预测点可以用于表示路沿的预测状况。路沿预测模型可以预先训练,作为离线部分设置在自动驾驶系统或ADAS中。
其中,关键种子点作为路沿预测模型的训练数据,关键候选点作为路沿预测模型的测试数据。在预测过程中,路沿预测点的x坐标值选取关键候选点的x坐标值,y坐标值为通过路沿预测模型得到的数值。
S830,根据路沿预测点更新路沿种子点。
若路沿预测点与关键候选点之间的偏差小于阈值,则将关键候选点对应的栅格内的候选点更新为路沿种子点并从候选点中剔除;反之,保留为候选点。
路沿预测点与关键候选点之间的偏差可利用下式计算:
应理解,S820和S830可以为迭代步骤,可以通过路沿预测点更新路沿预测模型的训练数据和测试数据,从而多次迭代不断更新路沿种子点。例如,在初始状态时,由第一组关键种子点和第一组关键候选点分别作为路沿预测模型的训练数据和测试数据,根据获得的第一组路沿预测点,可以将第一组关键候选点中与第一组路沿预测点之间的偏差小于阈值的点云数据作为第二组关键种子点,剩余的关键候选点作为第二组关键候选点。此时,路沿种子点可以包括第一组关键种子点和第二组关键种子点对应的栅格中的点云数据。在第一次迭代时,可以将第一组关键种子点和第二组关键种子点作为路沿预测模型的训练数据,第二组关键候选点作为路沿预测模型的测试数据,根据获得的第二组路沿预测点,可以将第二组关键候选点中与第二组路沿预测点之间的偏差小于阈值的点云数据作为第三组关键种子点,剩余的关键候选点作为第三组关键候选点。通过上述步骤可以多次迭代,对路沿种子点更新,以获得更远的路沿检测距离。如图16所示,通过多次迭代,路沿种子点中的点云数据不断增加,路沿检测的距离不断增加。
同时,通过路沿预测点可以判断远处稀疏的点云数据是否为噪声点,不损失有效的点云数据,对于激光雷达产生的路沿的特征点噪声也具备一定的鲁棒性,提升路沿检测的精度。由于采用多次迭代的方式更新路沿种子点,因此,在大弯道路段、城区低矮路沿路段、施工区域路段等复杂路段依然具备较好的检测效果。
S840,判断是否退出迭代。
可以根据实际的设计需求设置结束迭代的条件,当满足该条件时,退出迭代,输出当前确定的路沿种子点,当不满足该条件时,继续进行步骤S820和S830。
例如,结束迭代的条件可以是判断候选点中点云数据的数目是否小于或等于数量阈值。若小于或等于数量阈值则退出迭代并输出确定的路沿种子点;若大于数量阈值则判断迭代次数是否大于或等于迭代次数阈值,若大于或等于迭代次数阈值则退出迭代并输出确定的路沿种子点;反之将更新后的关键种子点和关键候选点分别作为路沿预测模型的训练数据和测试数据,直至满足迭代退出条件。或者,结束迭代的条件也可以是路沿种子点中的点云数据大于数量阈值,本申请对此并不做限制,可以根据实际的情况调整结束迭代的条件。
应理解,输出的路沿种子点可以通过上述方法400中的S430对路沿种子点中的点云数据进行拟合,得到路沿的参数化方程,可以应用于车辆的自动驾驶系统或ADAS。
本申请实施例提供的路沿检测的方法基本满足高速路段和城区路段的绝大数道路结构,适用于复杂道路场景。初始路沿的生成过程中未采用聚类算法去除远处稀疏的点云数据,通过后续路沿预测模型判断远处稀疏的点云数据是否为噪声点,不损失有效的点云数据。同时,在通过路沿预测模型进行与测试,对输入的数据栅格化并提取关键点及权重,提高了路沿预测模型的迭代计算效率。路沿检测的结果的平均输出频率可达50Hz;基于实际路测数据,通过40线激光雷达检测路沿,其平均检测距离可达50m以上。
图17是本申请实施例提供的路沿检测装置900的示意性框图。图17所示的路沿检测装置900包括处理单元910和获取单元920。
处理单元910和获取单元920可以用于执行本申请实施例的路沿检测方法,例如,上述方法400至800中的任意一种。
处理单元910可以用于:根据多个点云层数据中单个点云层数据的特征和相邻两个点云层数据之间的特征确定路沿点云数据;根据所述路沿点云数据确定初始路沿,并根据所述初始路沿确定路沿种子点,所述路沿种子点用于表示所述路沿的真实状况;根据所述路沿种子点确定所述路沿的参数化方程。
在一个实施例中,所述处理单元910具体用于:根据初始路沿确定第一组种子点和第一组候选点,所述第一组种子点中的每个点云数据与所述初始路沿的距离小于第一阈值;根据第一组种子点和所述第一组候选点确定第二组种子点;将所述第一组种子点和所述第二组种子点确定为所述路沿种子点。
在一个实施例中,所述处理单元910还具体用于:根据所述第一组种子点和所述第一组候选点确定第二组种子点和第二组候选点;所述将所述第一组种子点和所述第二组种子点确定为所述路沿种子点,包括:根据所述第一组种子点,所述第二组种子点和所述第二组候选点确定第三组种子点,将所述第一组种子点,所述第二组种子点和所述第三组种子点确定为所述路沿种子点。
在一个实施例中,所述处理单元910还具体用于:根据所述第一组种子点确定第一组关键种子点,所述第一组关键种子点中的点云数据与栅格化后的所述第一组种子点中的栅格对应,所述第一关键种子点中的点云数据的坐标值为其对应的所述第一组种子点中的栅格中点云数据的坐标均值,所述第一关键种子点中的点云数据的权重由对应的栅格中的点云数据的数量确定;根据所述第一组候选点确定第一组关键候选点,所述第一组关键候选点中的点云数据与栅格化后的所述第一组候选点中的栅格对应,所述第一关键候选点中的点云数据的坐标值为其对应的所述第一组候选点中的栅格中点云数据的坐标均值,所述第一关键候选点中的点云数据的权重由对应的栅格中的点云数据的数量确定;根据所述第一组关键种子点和所述第一组关键候选点确定所述第二组种子点。
在一个实施例中,所述处理单元910还具体用于:根据所述第一组关键种子点和所述第一组关键候选点通过路沿预测模型确定第一组预测点;将所述第一组关键候选点中满足第一条件的点云数据确定为所述第二组种子点中的点云数据,所述第一条件为与所述第一组路沿预测点中的点云数据之间的偏差小于第二阈值;其中,所述路沿预测模型是根据数据集训练得到的,所述数据集包括多个训练数据,每个训练数据包括所述路沿真值,所述路沿真值为所述激光雷达获取的点云数据中所述路沿对应的真实值。
在一个实施例中,所述处理单元910还具体用于:根据所述路沿点云数据在俯视平面投影的点云数据确定初始路沿。
在一个实施例中,所述处理单元910还具体用于:根据所述在俯视平面投影的点云数据确定多个初始直线段;根据多个初始直线段确定初始路沿。
在一个实施例中,所述单个点云层数据的特征包括斜率特征,数目特征和反射强度特征;其中,所述斜率特征用于指示所述单个点云层数据中分布方向与所述车辆的行驶方向的夹角小于第三阈值的点云数据,所述数目特征用于指示所述单个点云层数据中邻域的点云数据的数目大于第四阈值的点云数据,所述反射强度特征用于指示所述单个点云层数据中反射率大于第五阈值的点云数据。
在一个实施例中,所述相邻两个点云层数据之间的特征包括层间距离特征和层间数目特征;其中,所述层间距离特征用于指示与相邻点云层数据之间距离小于第六阈值的点云数据,所述层间数目特征用于指示在相邻点云层数据的邻域中的点云数据的数目大于第七阈值的点云数据。
在一个实施例中,所述获取单元920,用于获取原始点云数据;处理单元910还用于:根据所述原始点云数据确定所述多个点云层数据;其中,所述原始点云数据为激光雷达获取的点云数据,所述多个点云层数据为自车坐标系下的二维的点云数据。
在一个实施例中,所述处理单910元还具体用于:根据所述原始点云数据在球面投影后的点云数据生成点云特征图;根据所述点云特征图确定所述多个点云层数据。
在一个实施例中,所述点云特征图包括点云深度图和点云索引图。
图18是本申请实施例提供的一种路沿检测装置的控制装置的示意性结构图。
探测装置的控制装置1300包括至少一个处理单元1310和接口电路1320。可选地,还可以包括存储器1330,存储器1330用于存储程序。
当所述程序在至少一个处理单元1310中运行时,所述至少一个处理单元1310用于执行前文所述的路沿检测的方法。
一种设计中,从功能上划分,控制装置中可以存在多个处理单元,不同的处理单元执行不同的控制功能,多个处理单元与执行中央控制的处理单元通信,以与所述处理单元执行信息和数据的通信。例如,第一处理单元用于控制激光雷达,第二处理单元用于处理激光雷达获取的原始点云数据,第三处理单元用于执行模数转换,例如模拟数字转换器ADC电路等,第四处理单元用于执行光电信号转换,例如光电二极管电路等,和/或第五处理单元执行数字信号处理。
这些处理单元可以为各种类型的处理器、集成电路、现场可编程门阵列FPGA等形态,本申请不具体限定,以能实现上述功能的构成形态集成在芯片上为准。为表述方便,处理单元也可以称为处理器。进一步,上述处理单元可以集成在一块芯片上或者分散在多片芯片上,本申请也不做具体限定,以具体设计为准。
本申请实施例还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质具有程序指令,当所述程序指令被直接或者间接执行时,使得前文中的方法得以实现。
本申请实施例中,还提供了一种包含指令的计算机程序产品,当其在计算设备上运行时,使得计算设备执行前文中的方法,或者使得所述计算设备实现前文中的装置的功能。
本申请实施例还提供一种芯片系统,其特征在于,所述芯片系统包括至少一个处理单元和接口电路,所述接口电路用于为所述至少一个处理单元提供程序指令或者数据,所述至少一个处理器用于执行所述程序指令,以实现前文中的方法。
本申请实施例还提供了一种终端,包括前文所述的路沿检测装置。进一步地,该终端可以为智能运输设备(车辆或者无人机)、智能家居设备、智能制造设备、测绘设备或者机器人等。该智能运输设备例如可以是自动导引运输车(automated guided vehicle,AGV)、或无人运输车。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元、模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (29)
1.一种路沿检测的方法,应用于车辆中,所述车辆包括激光雷达,其特征在于,包括:
根据多个点云层数据中每个点云层数据的层内特征和与所述每个点云层数据相邻的点云层数据之间的层间特征确定路沿点云数据;
根据所述路沿点云数据确定初始路沿,并根据所述初始路沿确定路沿种子点,所述初始路沿用于表示路沿检测开始时确定的路沿,所述路沿种子点用于表示所述路沿的真实状况;
根据所述路沿种子点确定所述路沿对应的参数化方程。
2.根据权利要求1所述的方法,其特征在于,
所述层内特征包括斜率特征,数目特征或反射强度特征中的至少一个;
其中,所述斜率特征用于指示所述每个点云层数据中分布方向与所述车辆的行驶方向的夹角小于第三阈值的点云数据,所述数目特征用于指示所述每个点云层数据中邻域的点云数据的数目大于第四阈值的点云数据,所述反射强度特征用于指示所述每个点云层数据中反射率大于第五阈值的点云数据。
3.根据权利要求1或2所述的方法,其特征在于,
所述层间特征包括层间距离特征或层间数目特征中的至少一个;
其中,所述层间距离特征用于指示所述每个点云层数据中与相邻的点云层数据之间距离小于第六阈值的点云数据,所述层间数目特征用于指示所述每个点云层数据中在相邻的点云层数据的邻域中的点云数据的数目大于第七阈值的点云数据。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述根据所述初始路沿确定路沿种子点,包括:
根据初始路沿确定第一组种子点和第一组候选点,所述第一组种子点中的每个点云数据与所述初始路沿的距离小于第一阈值,所述第一组种子点用于表示所述路沿的第一部分的真实状况,所述第一组候选点是所述路沿点云数据中除所述第一组种子点以外的点云数据;
根据第一组种子点和所述第一组候选点确定第二组种子点,所述第二组种子点用于表示所述路沿的第二部分的真实状况;
将所述第一组种子点和所述第二组种子点确定为所述路沿种子点。
5.根据权利要求4所述的方法,其特征在于,所述根据第一组种子点和所述第一组候选点确定第二组种子点,包括:
根据所述第一组种子点和所述第一组候选点确定第二组种子点和第二组候选点,所述第二组候选点是所述路沿点云数据中除所述第一组种子点和所述第二组种子点以外的点云数据;
所述将所述第一组种子点和所述第二组种子点确定为所述路沿种子点,包括:
根据所述第一组种子点,所述第二组种子点和所述第二组候选点确定第三组种子点,将所述第一组种子点,所述第二组种子点和所述第三组种子点确定为所述路沿种子点,所述第三组种子点用于表示所述路沿的第三部分的真实状况。
6.根据权利要求4或5所述的方法,其特征在于,所述根据第一组种子点和所述第一组候选点确定第二组种子点,还包括:
根据所述第一组种子点确定第一组关键种子点,所述第一组关键种子点中的点云数据与栅格化后的所述第一组种子点中的栅格对应,所述第一关键种子点中的点云数据的坐标值为其对应的所述第一组种子点中的栅格中点云数据的坐标均值,所述第一关键种子点中的点云数据的权重由对应的栅格中的点云数据的数量确定;
根据所述第一组候选点确定第一组关键候选点,所述第一组关键候选点中的点云数据与栅格化后的所述第一组候选点中的栅格对应,所述第一关键候选点中的点云数据的坐标值为其对应的所述第一组候选点中的栅格中点云数据的坐标均值,所述第一关键候选点中的点云数据的权重由对应的栅格中的点云数据的数量确定;
根据所述第一组关键种子点和所述第一组关键候选点确定所述第二组种子点。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第一组关键种子点和所述第一组关键候选点确定所述第二组种子点,包括:
根据所述第一组关键种子点和所述第一组关键候选点通过路沿预测模型确定第一组预测点,所述第一组预测点用于表示所述路沿的第二部分的预测状况;
将所述第一组关键候选点中满足第一条件的点云数据确定为所述第二组种子点中的点云数据,所述第一条件为与所述第一组路沿预测点中的点云数据之间的偏差小于第二阈值;
其中,所述路沿预测模型是通过机器学习得到的。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述根据所述路沿点云数据确定初始路沿,包括:
根据所述路沿点云数据在俯视平面投影的点云数据确定初始路沿。
9.根据权利要求8所述的方法,其特征在于,所述根据所述路沿点云数据在俯视平面投影的点云数据确定初始路沿,包括:
根据所述在俯视平面投影的点云数据确定多个初始直线段;
根据多个初始直线段确定初始路沿。
10.根据权利要求1至9中任一项所述的方法,其特征在于,所述方法还包括:
根据原始点云数据确定所述多个点云层数据;
其中,所述原始点云数据为所述激光雷达获取的点云数据,所述多个点云层数据为自车坐标系下的二维的点云数据。
11.根据权利要求10所述的方法,其特征在于,所述根据原始点云数据确定所述多个点云层数据,包括:
根据所述原始点云数据在球面投影后的点云数据生成点云特征图;
根据所述点云特征图确定所述多个点云层数据。
12.根据权利要求11所述的方法,其特征在于,所述点云特征图包括点云深度图和点云索引图。
13.一种路沿检测装置,其特征在于,包括:
处理单元,用于:
根据多个点云层数据中每个点云层数据的层内特征和与所述每个点云层数据相邻的点云层数据之间的层间特征确定路沿点云数据;
根据所述路沿点云数据确定初始路沿,并根据所述初始路沿确定路沿种子点,所述初始路沿用于表示路沿检测开始时确定的路沿,所述路沿种子点用于表示所述路沿的真实状况;
根据所述路沿种子点确定所述路沿对应的参数化方程。
14.根据权利要求13所述的装置,其特征在于,
所述层内特征包括斜率特征,数目特征或反射强度特征中的至少一个;
其中,所述斜率特征用于指示所述每个点云层数据中分布方向与所述车辆的行驶方向的夹角小于第三阈值的点云数据,所述数目特征用于指示所述每个点云层数据中邻域的点云数据的数目大于第四阈值的点云数据,所述反射强度特征用于指示所述每个点云层数据中反射率大于第五阈值的点云数据。
15.根据权利要求13或14所述的装置,其特征在于,
所述层间特征包括层间距离特征或层间数目特征中的至少一个;
其中,所述层间距离特征用于指示所述每个点云层数据中与相邻点云层数据之间距离小于第六阈值的点云数据,所述层间数目特征用于指示所述每个点云层数据中在相邻点云层数据的邻域中的点云数据的数目大于第七阈值的点云数据。
16.根据权利要求13至15中任一项所述的装置,其特征在于,所述处理单元具体用于:
根据初始路沿确定第一组种子点和第一组候选点,所述第一组种子点中的每个点云数据与所述初始路沿的距离小于第一阈值,所述第一组种子点用于表示所述路沿的第一部分的真实状况,所述第一组候选点是所述路沿点云数据中除所述第一组种子点以外的点云数据;
根据第一组种子点和所述第一组候选点确定第二组种子点,所述第二组种子点用于表示所述路沿的第二部分的真实状况;
将所述第一组种子点和所述第二组种子点确定为所述路沿种子点。
17.根据权利要求16所述的装置,其特征在于,所述处理单元还具体用于:
根据所述第一组种子点和所述第一组候选点确定第二组种子点和第二组候选点,所述第二组候选点是所述路沿点云数据中除所述第一组种子点和所述第二组种子点以外的点云数据;
所述将所述第一组种子点和所述第二组种子点确定为所述路沿种子点,包括:
根据所述第一组种子点,所述第二组种子点和所述第二组候选点确定第三组种子点,将所述第一组种子点,所述第二组种子点和所述第三组种子点确定为所述路沿种子点,所述第三组种子点用于表示所述路沿的第三部分的真实状况。
18.根据权利要求16或17所述的装置,其特征在于,所述处理单元还具体用于:
根据所述第一组种子点确定第一组关键种子点,所述第一组关键种子点中的点云数据与栅格化后的所述第一组种子点中的栅格对应,所述第一关键种子点中的点云数据的坐标值为其对应的所述第一组种子点中的栅格中点云数据的坐标均值,所述第一关键种子点中的点云数据的权重由对应的栅格中的点云数据的数量确定;
根据所述第一组候选点确定第一组关键候选点,所述第一组关键候选点中的点云数据与栅格化后的所述第一组候选点中的栅格对应,所述第一关键候选点中的点云数据的坐标值为其对应的所述第一组候选点中的栅格中点云数据的坐标均值,所述第一关键候选点中的点云数据的权重由对应的栅格中的点云数据的数量确定;
根据所述第一组关键种子点和所述第一组关键候选点确定所述第二组种子点。
19.根据权利要求18所述的装置,其特征在于,所述处理单元还具体用于:
根据所述第一组关键种子点和所述第一组关键候选点通过路沿预测模型确定第一组预测点,所述第一组预测点用于表示所述路沿的第二部分的预测状况;
将所述第一组关键候选点中满足第一条件的点云数据确定为所述第二组种子点中的点云数据,所述第一条件为与所述第一组路沿预测点中的点云数据之间的偏差小于第二阈值;
其中,所述路沿预测模型是通过机器学习得到的。
20.根据权利要求13至17中任一项所述的装置,其特征在于,所述处理单元还具体用于:
根据所述路沿点云数据在俯视平面投影的点云数据确定初始路沿。
21.根据权利要求20所述的装置,其特征在于,所述处理单元还具体用于:
根据所述在俯视平面投影的点云数据确定多个初始直线段;
根据多个初始直线段确定初始路沿。
22.根据权利要求13至21中任一项所述的装置,其特征在于,所述装置还包括:
获取单元,用于获取原始点云数据;
所述处理单元还用于:
根据所述原始点云数据确定所述多个点云层数据;
其中,所述原始点云数据为激光雷达获取的点云数据,所述多个点云层数据为自车坐标系下的二维的点云数据。
23.根据权利要求22所述的装置,其特征在于,所述处理单元还具体用于:
根据所述原始点云数据在球面投影后的点云数据生成点云特征图;
根据所述点云特征图确定所述多个点云层数据。
24.根据权利要求23所述的装置,其特征在于,所述点云特征图包括点云深度图和点云索引图。
25.一种路沿检测装置的控制装置,其特征在于,包括至少一个存储器和至少一个处理器,所述至少一个存储器用于存储程序,所述至少一个处理器用于运行所述程序,以实现权利要求1至12中任一项所述的方法。
26.一种芯片,其特征在于,包括至少一个处理单元和接口电路,所述接口电路用于为所述至少一个处理单元提供程序指令或者数据,所述至少一个处理单元用于执行所述程序指令,以实现权利要求1至12中任一项所述的方法。
27.一种计算机可读存储介质,其特征在于,所述计算机可读介质存储用于设备执行的程序代码,该程序代码被所述设备执行时,实现如权利要求1至12中任一项所述的方法。
28.一种终端,其特征在于,所述终端包括权利要求13-24任一项所述的路沿检测装置,或者,如权利要求25所述的控制装置,或者,如权利要求26所述的芯片。
29.如权利要求28所述的终端,其特征在于,所述终端为智能运输设备、智能制造设备、智能家居设备或者测绘设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110631370.5A CN115508841A (zh) | 2021-06-07 | 2021-06-07 | 一种路沿检测的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110631370.5A CN115508841A (zh) | 2021-06-07 | 2021-06-07 | 一种路沿检测的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115508841A true CN115508841A (zh) | 2022-12-23 |
Family
ID=84500158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110631370.5A Pending CN115508841A (zh) | 2021-06-07 | 2021-06-07 | 一种路沿检测的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115508841A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115825982A (zh) * | 2023-02-02 | 2023-03-21 | 深圳煜炜光学科技有限公司 | 一种下雨环境下无人机点云数据扫描实现方法和系统 |
-
2021
- 2021-06-07 CN CN202110631370.5A patent/CN115508841A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115825982A (zh) * | 2023-02-02 | 2023-03-21 | 深圳煜炜光学科技有限公司 | 一种下雨环境下无人机点云数据扫描实现方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110550029B (zh) | 障碍物避让方法及装置 | |
JP7540641B2 (ja) | 自動運転方法、関連装置及びコンピュータ読み取り可能記憶媒体 | |
WO2022027304A1 (zh) | 一种自动驾驶车辆的测试方法及装置 | |
CN113792566B (zh) | 一种激光点云的处理方法及相关设备 | |
CN116324661A (zh) | 基于激光雷达数据的地面高度估计 | |
CN112543877B (zh) | 定位方法和定位装置 | |
US20230048680A1 (en) | Method and apparatus for passing through barrier gate crossbar by vehicle | |
WO2022142839A1 (zh) | 一种图像处理方法、装置以及智能汽车 | |
WO2021110166A1 (zh) | 道路结构检测方法及装置 | |
WO2022051951A1 (zh) | 车道线检测方法、相关设备及计算机可读存储介质 | |
WO2022062825A1 (zh) | 车辆的控制方法、装置及车辆 | |
US20240017719A1 (en) | Mapping method and apparatus, vehicle, readable storage medium, and chip | |
CN114255275A (zh) | 一种构建地图的方法及计算设备 | |
CN112810603B (zh) | 定位方法和相关产品 | |
CN113885045A (zh) | 车道线的检测方法和装置 | |
CN116135654A (zh) | 一种车辆行驶速度生成方法以及相关设备 | |
CN113799794B (zh) | 车辆纵向运动参数的规划方法和装置 | |
WO2021159397A1 (zh) | 车辆可行驶区域的检测方法以及检测装置 | |
CN115508841A (zh) | 一种路沿检测的方法和装置 | |
CN115100630B (zh) | 障碍物检测方法、装置、车辆、介质及芯片 | |
WO2022022284A1 (zh) | 目标物的感知方法及装置 | |
CN114556251B (zh) | 用于确定车辆可通行空间的方法和装置 | |
WO2022061725A1 (zh) | 交通元素的观测方法和装置 | |
US20230391358A1 (en) | Retrofit vehicle computing system to operate with multiple types of maps | |
CN118613824A (zh) | 一种障碍物检测方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |