一种车载激光点云分割方法及系统与流程

文档序号:20833617发布日期:2020-05-22 16:35阅读:372来源:国知局
一种车载激光点云分割方法及系统与流程
本发明涉及三维激光雷达点云数据处理
技术领域
,特别涉及一种车载激光点云分割方法及系统。
背景技术
:点云聚类方法是激光雷达信号处理的重要环节,尤其是在智能辅助驾驶系统中,激光雷达作为不可或缺的传感器之一,其精度与感知细节较其他传感器有很大优势,因此其信号处理更需要一套更加准确的方法。例如对地面点的分离问题以及非地面点的障碍物识别以及聚类问题都是研究的热点问题。虽然现在一些三维点云聚类方法已经有了一些成熟的方法,但这些方法只是在理论方面得到了验证,在实际应用过程中仍然存在着诸多问题。诸如实时性方面的问题,精度达不到实际要求的问题。基于车载的激光雷达需要面对多种工况,而算法参数若得不到及时的修正则没有办法满足系统的实际需求,面对不同路况、不同天气的影响,需要建立满足不同条件下的点云分割方法。传统方法采用随机抽样一致性算法(ransac),在对地面点进行处理时往往把所有地面点拟合成一个大平面,存在以下的问题:一是该假设仅在平坦的路面上有良好的分离效果,但在具有坡度或者不平路面上分离效果较差,所以现有方法在实际应用的过程中存在一定的问题。针对非地面点的问题,传统方法采用基于密度的聚类方法(dbscan),该算法需要调节两个参数,传统方法通常是对两个参数计算后直接进行应用,在部分应用场景下取得了良好的效果。但在诸多的应用场景中,往往需要对参数进行调节以满足实际情况的要求,从而获得更佳的聚类效果。综上,在对点云进行地面点和非地面点进行处理时,还存在待改进的空间。技术实现要素:本发明的目的是针对现有技术路线的不足,提供一种车载激光点云分割方法及系统,该方法操作简单,易于执行,可以有良好的精度且可以满足智能辅助驾驶系统实时性的要求。第一方面,本发明实施例提供一种车载激光点云分割方法,包括:利用车载激光雷达采集原始点云数据;对所述原始点云数据进行预处理;将经预处理后的点云数据,通过阈值的地面拟合算法,计算得到分离的地面点云与非地面点云;利用改进的聚类算法对所述非地面点云数据,进行聚类操作,得到聚类结果;对所述聚类结果进行体素化处理,并结合所述地面点云数据,得到最终的分割结果。在一个实施例中,对所述原始点云数据进行预处理,包括:对所述原始点云信号进行滤波降采样获得有效数据;针对所述有效数据建立k-dtree数据结构;移除离群点,得到单帧环境信息。在一个实施例中,经预处理后的点云数据,通过阈值的地面拟合算法,计算得到分离的地面点云与非地面点云,包括:将经预处理后的点云数据,根据地面分段数据按x轴进行分块;对每个分块内的点云数据,基于z轴坐标进行排序;选取一部分z轴坐标较小的种子点,对地平面进行拟合,并判断是否达到迭代次数;所述迭代次数与所述地面分段数相同;当达到迭代次数时,根据预设阈值划分地面点,得到分离的地面点云与非地面点云;所述预设阈值为点到面的距离;当未达到迭代次数时,重新选择种子点。在一个实施例中,对地平面进行拟合,包括:假设为每个分块拟合的地面为平面,记平面方程:ax+by+cz=d通过奇异值分解方法求解a、b、和c,d的取值通过计算种子点的坐标平均值求得,进而得到拟合的平面方程。在一个实施例中,利用改进的聚类算法对所述非地面点云数据,进行聚类操作,得到聚类结果;包括:对所述非地面点云数据,根据驾驶场景从预设参数表中选择对应的参数特征,选用dbscan算法进行聚类操作,得到聚类结果;所述预设参数表包括:多种驾驶场景分别对应的多种典型工况下的参数特征。第二方面,本发明还提供一种车载激光点云分割系统,包括:采集模块,利用车载激光雷达采集原始点云数据;预处理模块,用于对所述原始点云数据进行预处理;拟合分离模块,用于将经预处理后的点云数据,通过阈值的地面拟合算法,计算得到分离的地面点云与非地面点云;聚类模块,用于利用改进的聚类算法对所述非地面点云数据,进行聚类操作,得到聚类结果;分割模块,用于对所述聚类结果进行体素化处理,并结合所述地面点云数据,得到最终的分割结果。在一个实施例中,所述预处理模块,具体用于对所述原始点云信号进行滤波降采样获得有效数据;针对所述有效数据建立k-dtree数据结构;移除离群点,得到单帧环境信息。在一个实施例中,所述拟合分离模块,包括:分块子模块,用于将经预处理后的点云数据,根据地面分段数据按x轴进行分块;排序子模块,用于对每个分块内的点云数据,基于z轴坐标进行排序;拟合子模块,用于选取一部分z轴坐标较小的种子点,对地平面进行拟合;分离子模块,用于判断是否达到迭代次数;所述迭代次数与所述地面分段数相同;当达到迭代次数时,根据预设阈值划分地面点,得到分离的地面点云与非地面点云;当未达到迭代次数时,重新选择种子点;所述预设阈值为点到面的距离。在一个实施例中,所述拟合子模块,具体用于:假设为每个分块拟合的地面为平面,记平面方程:ax+by+cz=d通过奇异值分解方法求解a、b、和c,d的取值通过计算种子点的坐标平均值求得,进而得到拟合的平面方程。在一个实施例中,所述聚类模块,具体用于:对所述非地面点云数据,根据驾驶场景从预设参数表中选择对应的参数特征,选用dbscan算法进行聚类操作,得到聚类结果;所述预设参数表包括:多种驾驶场景分别对应的多种典型工况下的参数特征。本发明的优点在于,与现有技术相比,本发明提出的一种车载激光点云分割方法,包括:利用车载激光雷达采集原始点云数据;对所述原始点云数据进行预处理;将经预处理后的点云数据,通过阈值的地面拟合算法,计算得到分离的地面点云与非地面点云;利用改进的聚类算法对所述非地面点云数据,进行聚类操作,得到聚类结果;对所述聚类结果进行体素化处理,并结合所述地面点云数据,得到最终的分割结果。实现对行车的可行驶区域进行分析。该方法操作简单,易于执行,可以有良好的精度且可以满足智能辅助驾驶系统实时性的要求。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。附图说明附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:图1为本发明中提供的车载激光点云数据的分割方法的流程图。图2为本发明中提供的原始点云数据预处理的流程图。图3为本发明中提供的分割地面与非地面点处理的流程图。图4为本发明中提供的基于查表的聚类算法的流程图。图5为本发明中提供的具体实施例中车载激光点云数据的分割流程图。图6为本发明中提供的车载激光点云数据的分割系统的框图。图7为本发明中提供的又一种车载激光点云分割系统的框图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。参照图1所示,本发明实施例提供一种车载激光点云分割方法,包括:s1、利用车载激光雷达采集原始点云数据;s2、对所述原始点云数据进行预处理;s3、将经预处理后的点云数据,通过阈值的地面拟合算法,计算得到分离的地面点云与非地面点云;s4、利用改进的聚类算法对所述非地面点云数据,进行聚类操作,得到聚类结果;s5、对所述聚类结果进行体素化处理,并结合所述地面点云数据,得到最终的分割结果。本实施例中,首先对原始信号进行采集,之后对采集到的车载激光雷达信号进行预处理,得到单帧环境信息;之后对地面点和非地面点进行分离;再之后对非地面点进行聚类操作,基于改进的聚类算法,通过迭代过程得到最终的聚类结果,得到最终的障碍物信息,最后结合地面点和障碍物列表进行聚类结果分析,对行车的可行驶区域进行分析。该方法操作简单,易于执行,可以有良好的精度且可以满足智能辅助驾驶系统实时性的要求。下面分别对上述各个步骤进行详细说明。在一个实施例中,上述步骤s2参照图2所示,为预处理流程图。对原始点云信号进行滤波降采样获得有效数据,建立k-dtree数据结构;移除离群点,得到单帧环境信息。滤波是为了降低原始点云信号中的噪声影响,降采样用于对原始点云信号数量进行减少,用以提高算法处理速度。k-dtree是一种计算机用的数据结构,建立其目的是为了提高算法的搜索速度。本实施例中,首先利用基于车载的激光雷达采集初始的点云信号,原始的点云信号中包含了众多信息,具体包括有用信息,比如:道路标识、道路边界线、道路路面坑洼、道路坡度及障碍物;无用信息,比如噪声点。在对原始点云信号进行处理,为后续步骤点云信号的聚类提供支持和保障,旨得到聚类结果指导智能汽车的辅助驾驶过程。采集完原始的点云以后,对点云信号进行预处理,预处理的具体步骤包括滤波,降采样。滤波比如可选用radiusoutlierremoval移除离群点的算法进行处理,该算法包含了两个参数,根据多次试验对两个参数进行确定,给定参考值,对噪声点进行滤除。由于该算法计算量较大,引入可以降低计算量并提高搜索速度的k-dtree算法,移除离群点,删除噪声点。该算法可以对k维数据进行有效的快速查找操作,以提供算法运行效率。降采样采用的算法为随机简单随机采样算法,可以删除冗余数据,得到部分有效的数据。由于车载激光雷达的数据处理要求准确且高效,简单随机采样将所有数据随机搅拌后进行抽取,由于其运算简单,保证了其运算效率,同时也能保证其准确性。在一个实施例中,上述步骤s3参照图3所示,为本发明的地面点分离流程图。利用基于阈值的地面拟合算法对滤波后信号进行处理,将地面点与非地面点分离。对上述单帧点云信息进行分析得到环境信息,单帧点云信息(信号)经过了预处理后较原始信号相比具有更为准确的环境信息。首先进行地面点分离。地面点分离是整个流程处理的关键,由于地面点包含了坡度等信息,同时也影响了后续聚类的准确性。具体步骤包含以下几部分:首先将点云按x轴进行分块,根据系统实时性要求以及计算机性能进行选取,分块之后对每块点云基于z轴坐标进行排序,初选一部分种子点,其数值记为nseed,nseed值的选取与点云数量与分块数目选择有关。具体来说,nseed值应当与点云信号中的扫描点数成正相关,以32线激光雷达为例,可以取nseed=20,其他线数的激光雷达按相应相应的增加或减少。根据选取的种子点对地面进行拟合。此处认为每个分块拟合的地面为平面,记平面方程如:ax+by+cz=d通过奇异值分解方法求解a、b和c;d的取值通过计算种子点的坐标平均值求得,进而得到拟合的平面方程。之后根据设定好的迭代次数对平面拟合方程进行迭代,用以提高拟合平面的准确度。达到迭代次数后,根据设定好的高度阈值thd最终对地面点进行选取,完成地面点与非地面点的分离;d≤thseed,d为点到面的距离。比如:根据车载激光雷达的应用场景,诸如高速公路,城市道路等不同应用场景。以城市道路行车速度为主要依据,考虑到地面相对较为平坦,因此将地面分为三段进行处理。以将地面点分为三段为例:即将所有点云在x方向三等分;其次对每个分段内的点按z方向进行排序,同时选取z坐标最小的20个点为种子点;选取种子点之后,根据种子点求其协方差矩阵,之后对其协方差矩阵进行奇异值分解,得到三个特征矩阵,根据奇异值分解的求解方式,可以得到每个小分段内的平面方程值,之后根据种子点的坐标值求所有种子点的平均值,得到平面方程的d值。至此,平面方程可以唯一确定。根据求得的平面方程以及种子点阈值重新求得地面种子点。最后,考虑计算量以及精度要求,对该过程进行3次迭代,得到最终的地面方程以及分离出的地面点。至此地面点分离过程结束,点云可被分为地面点和非地面点。此部分分离过程是以分段的形式进行处理的,因此可以利用现代基于gpu的并行计算的优势对运算过程进行加速,以保证算法运行效率。在一个实施例中,步骤s4参照图4所示,为对非地面点进行聚类处理的流程图,用以得到障碍物信息。聚类算法选用dbscan算法,dbscan算法是一种基于密度的聚类方法,其有两个参数需要设定,分别是核心点eps以及最少采样点数min_samples,以提高聚类精度。本发明实施例中,通过构建典型场景的参数规则表,如表一所示:表一典型工况下dbscan算法参数表epsmin_samples高速公路0.028城市道路0.0110该表一只是示意性的举例,其具体参数的设定需要根据激光雷达的摆放位置、激光雷达线数进行进一步确定,不能构成对本发明的限定。同时根据聚类的结果即目标物数量对算法的两个参数进行修正,以满足算法的合理性要求。通过得到前方以及侧方的点云信息,得到障碍物信息列表,最后步骤s5通过体素的方式对目标物进行体素化处理,得到最终的障碍物信息。最终结合目标物信息以及地面信息分析可行驶区域,为规划与决策算法奠定基础。即:将非地面点云信号利用一种改进的基于密度的聚类算法对非地面点进行聚类操作。聚类参数的选择建立通过自建表(如上述表一所示)查询获得。具体的获取方式如下:首先根据不同驾驶场景确定出几种典型工况下的参数特征,诸如城市道路、高速公路等,基于此得到典型场景下的参数表。针对实际应用,由系统内部率先分析驾驶场景,其次选择算法参数;对聚类结果进行迭代处理,用以调整算法参数以及聚类数目,迭代的条件为聚类结果的目标数量,根据首次得到的聚类结果进行参数调整,满足最终的聚类数目以及精度要求。对最终的聚类结果进行体素化处理,即将每个聚类结果抽象成一个长方体实体,最后进行可视化分析,以供算法进行参数调整。得到最终的目标物信息以及地面信息,进而可以对可行驶区域进行分析。下面通过一个详细的实施例来说明:分为提供一种分段的地面点拟合方法,之后提供一种基于查表的聚类方法。可参照图5所示:1、首先读取点云信号,记为ptoriginal。2、其次对ptoriginal进行预处理,预处理包含降采样,建立k-dtree以及滤波等处理。3、对ptoriginal在x方向上进行排序,记为ptx。4、根据地面分段数nseg将ptx等分,记为分段规则为将x方向等分。5、针对每个内根据z方向进行排序,记为6、根据初选地面种子点数nseed在每个选取地面种子点,选取规则为以z坐标尽量小为优先,选取的种子点记为7、针对求协方差矩阵,记为8、对进行奇异值分解,得到三个特征矩阵,记为u,s,v,三者都为3×3矩阵。9、假设每个小的分段为平面,记每个小平面为ax+by+cz=d,其中a=v(2,0)b=v(2,1)c=v(2,2),其中d的值为种子点坐标的平均值。10、根据得到的平面方程以及种子点阈值thseed求得新的地面种子点,其规则为:d≤thseed,d为点到面的距离。11、根据迭代次数niter的值对上述过程6到9进行迭代,得到最终的拟合方程以及地面点。12、对非地面点利用基于密度的聚类方法(dbscan)进行处理,针对处理结果中类别数过多的问题,通过自建参数表中调取相应的参数用以减少类别数过多的问题,进而保证聚类效果的合理性。13、对聚类结果进行体素化处理,生成目标物;同时结合地面信息,得到最终的分割结果。基于同一发明构思,本发明实施例还提供了车载激光点云的分割系统,由于该系统所解决问题的原理与前述车载激光点云的分割方法相似,因此该系统的实施可以参见前述方法的实施,重复之处不再赘述。第二方面,参照图6所示,本发明还提供一种车载激光点云分割系统,包括:采集模块61,利用车载激光雷达采集原始点云数据;预处理模块62,用于对所述原始点云数据进行预处理;拟合分离模块63,用于将经预处理后的点云数据,通过阈值的地面拟合算法,计算得到分离的地面点云与非地面点云;聚类模块64,用于利用改进的聚类算法对所述非地面点云数据,进行聚类操作,得到聚类结果;分割模块65,用于对所述聚类结果进行体素化处理,并结合所述地面点云数据,得到最终的分割结果。在一个实施例中,所述预处理模块62,具体用于对所述原始点云信号进行滤波降采样获得有效数据;针对所述有效数据建立k-dtree数据结构;移除离群点,得到单帧环境信息。在一个实施例中,所述拟合分离模块63,包括:分块子模块631,用于将经预处理后的点云数据,根据地面分段数据按x轴进行分块;排序子模块632,用于对每个分块内的点云数据,基于z轴坐标进行排序;拟合子模块633,用于选取一部分z轴坐标较小的种子点,对地平面进行拟合;分离子模块634,用于判断是否达到迭代次数;所述迭代次数与所述地面分段数相同;当达到迭代次数时,根据预设阈值划分地面点,得到分离的地面点云与非地面点云;当未达到迭代次数时,重新选择种子点;所述预设阈值为点到面的距离。在一个实施例中,所述拟合子模块,具体用于:假设为每个分块拟合的地面为平面,记平面方程:ax+by+cz=d通过奇异值分解方法求解a、b、和c,d的取值通过计算种子点的坐标平均值求得,进而得到拟合的平面方程。在一个实施例中,所述聚类模块64,具体用于:对所述非地面点云数据,根据驾驶场景从预设参数表中选择对应的参数特征,选用dbscan算法进行聚类操作,得到聚类结果;所述预设参数表包括:多种驾驶场景分别对应的多种典型工况下的参数特征。第三方面,如图7所示,可预先将算法布置在计算平台中,计算平台中接入车载激光雷达,通过车载电源对激光雷达和计算平台进行供电,激光雷达的数据接入至计算平台中进行处理,算法经gpu并行运算进行加速,从而保证系统的实时性需求,最终得到障碍物信息以及地面信息。最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1