一种基于栅格映射的路面病害三维检测方法 |
|||||||
申请号 | CN202410132882.0 | 申请日 | 2024-01-31 | 公开(公告)号 | CN117974597A | 公开(公告)日 | 2024-05-03 |
申请人 | 同济大学; | 发明人 | 杜豫川; 李亦舜; 高紫月; 刘成龙; 吴荻非; | ||||
摘要 | 本 发明 公开了一种基于栅格映射的路面病害三维检测方法,包括:S1、通过三维 数据采集 设备采集路面的点 云 数据;S2、对路面点云数据进行去坡度的预处理;S3、通过RANSAC 算法 对预处理后的点云数据进行路面病害区域的初步点云分割;S4、通过DBSCAN算法对点云初步分割结果进行聚类,根据点云 密度 将初步分割结果划分为不同类型的簇;S5、提取点云簇的深度、宽度、长度及区域面积的信息作为路面病害检测的指标,根据路面病害的三维特征实现对分割簇的病害检测。根据本发明,可支持对路面病害的三维特征进行提取,并基于不同病害类型的先验知识进行病害的自动识别和检测。 | ||||||
权利要求 | 1.一种基于栅格映射的路面病害三维检测方法,其特征在于,包括以下步骤: |
||||||
说明书全文 | 一种基于栅格映射的路面病害三维检测方法技术领域[0001] 本发明涉及路面性能检测的技术领域,特别涉及一种基于栅格映射的路面病害三维检测方法。 背景技术[0002] 道路在服役过程中,由于交通荷载、气候变化、材料质量和施工工艺等多种因素的影响,出现的各种损坏、磨损和变形现象,将直接影响道路的使用性能和行车安全。为了及时有效地维护和修复道路,对路面病害实现准确识别至关重要。 [0003] 传统的路面病害自动化检测方法主要基于二维图像,由于摄像机的视角和光照条件变化,以及路面颜色和纹理的多样性,这些因素都可能导致图像中的病害信息失真或不准确。此外,路面病害往往具有复杂的三维特征,而二维图像难以捕捉路面病害的立体形状和深度信息,从而限制了检测精度和可靠性。因此利用三维相机采集的点云数据,并基于不同病害类型的先验知识,实现路面病害的自动识别和精细化检测具有重要意义。 发明内容[0004] 针对现有技术中存在的不足之处,本发明的目的是提供一种基于栅格映射的路面病害三维检测方法,可支持对路面病害的三维特征进行提取,并基于不同病害类型的先验知识进行病害的自动识别和检测。为了实现根据本发明的上述目的和其他优点,提供了一种基于栅格映射的路面病害三维检测方法,包括: [0005] S1、通过三维数据采集设备采集路面的点云数据; [0006] S2、对路面点云数据进行去坡度的预处理; [0008] S4、通过DBSCAN算法对点云初步分割结果进行聚类,根据点云密度将初步分割结果划分为不同类型的簇; [0009] S5、提取点云簇的深度、宽度、长度及区域面积的信息作为路面病害检测的指标,根据路面病害的三维特征实现对分割簇的病害检测。 [0010] 优选的,步骤S2中预处理包括点云数据去坡度,具体包括以下步骤: [0011] S21、获取所有点云数据的三维坐标集合O{(x1,y1,z1),(x2,y2,z2),…,(xn,yn,zn)}; [0012] S22、用多元线性回归拟合点云数据中的深度坐标z,获取回归系数b0,b1,b2; [0013] S23、计算去坡度后的点云数据三维坐标集合: [0014] O'{(x1,y1,z1‑b0‑b1x1‑b2y1),(x2,y2,z2‑b0‑b1x2‑b2y2),…,(xn,yn,zn‑b0‑b1xn‑b2yn)}。 [0015] 优选的,步骤S3中具体包括以下步骤: [0016] S31、随机采样:从点云数据中随机选取若干个点作为样本,并构建采样点云; [0017] S32、平面拟合:对采样点云进行平面拟合,适用奇异值分解估计平面参数; [0018] S33、计算内点、外点:计算每个点到拟合的平面的距离,如果距离小于设定阈值,则将该点标记为内点,否则标记为外点; [0019] S34、计算内点比例:计算内点的数量占整个点云的比例; [0020] S35、更新最佳结果:若当前的内点比例大于最佳内点比例,则更新最佳内点比例、最佳平面参数、最佳内点集合和最佳外点集合; [0021] S36、检查停止条件:检查最佳内点比例是否大于停止阈值,如果满足则停止迭代。 [0022] 优选的,步骤S4中具体包括以下步骤: [0023] S41、根据聚类稳定性选择超参数领域半径Eps和最小邻域数据点数MinPts:设置一系列合理的Eps和MinPts,运行DBSCAN算法计算每个聚类结果的轮廓系数,当轮廓系数越接近1,聚类结果越稳定,簇内样本的相似度越高; [0024] S42、从数据中随机选择一个点X; [0025] S43、判断一个点是否为核心点:查找到点X的距离小于等于Eps的所有点,并统计这些点的个数;如果在Eps范围内的数据点数量超过MinPts,则将该点标记为核心点并分配新的聚类标签,否则,该点将被标记为噪声; [0026] S44、如果X点是核心点,则检索从X点开始的所有密度可达点并将它们添加到同一个簇中; [0027] S45、访问当前点的所有邻居点,即距离小于Eps的点,如果邻居点还没有被分配到簇,则为其分配与点X相同的簇标签; [0028] S46、如果邻居点也是核心点,则递归访问其邻居点并将它们加入到同一个簇中,直到Eps范围内不再有核心点; [0029] S47、通过对每个未访问的核心样本重复步骤S44和S45来逐渐扩展聚类;直到所有核心样本都被访问过,并且数据集中的所有点都被分配到一个簇或标记为噪声,算法结束。 [0030] 优选的,步骤S5中具体包括以下步骤: [0031] S51、对不同簇内的点坐标进行统计分析,计算z坐标的平均值、不同点云簇在平面内的长度及宽度; [0032] S52、根据不同病害特征的先验知识设定统计量阈值; [0033] S53、将不同点云簇的统计量与设定阈值进行比较,从而实现路面病害的三维检测。 [0034] 本发明与现有技术相比,其有益效果是:该方法主要利用三维相机等设备采集的路面点云数据,经过去坡度等预处理后,利用RANSAC算法与DBSCAN算法对点云数据进行分割和聚类,并提取点云簇的特性作为路面病害检测的指标,根据路面病害的三维特征实现路面病害检测。本发明可以实现根据不同路面病害类型的三维特征进行准确的病害检测,提高路面病害的检测速度,降低人工或高精度设备的依赖,对于路面性能高频数字化检测具有重要意义。附图说明 [0035] 图1为根据本发明的基于栅格映射的路面病害三维检测方法的流程图; [0036] 图2为根据本发明的基于栅格映射的路面病害三维检测方法的实施例点云数据去坡度示意图; [0037] 图3为根据本发明的基于栅格映射的路面病害三维检测方法的实施例点云初步分割结果示意图; [0038] 图4为根据本发明的基于栅格映射的路面病害三维检测方法的实施例点云聚类结果示意图; [0039] 图5为根据本发明的基于栅格映射的路面病害三维检测方法的实施例车辙病害区域检测结果示意图。 具体实施方式[0040] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 [0041] 参照图1‑5,一种基于栅格映射的路面病害三维检测方法,包括以下步骤:第一步,数据采集:将三维相机等采集设备安装在检测车上,并俯视角度拍摄路面,采集连续的路面点云数据。 [0042] 第二步,预处理:对所述的路面点云数据去坡度等预处理。具体包括以下步骤: [0043] 取所有点云数据的三维坐标集合O{(x1,y1,z1),(x2,y2,z2),…,(xn,yn,zn)}; [0044] 利用最小二乘法拟合集合O,获取三维平面参数b0,b1,b2; [0045] 计算去坡度后的点云数据三维坐标集合O'{(x1,y1,z1‑b0‑b1x1‑b2y1),(x2,y2,z2‑b0‑b1x2‑b2y2),…,(xn,yn,zn‑b0‑b1xn‑b2yn)},去除坡度前后点云数据对比如图2所示。 [0046] 第三步,路面病害区域初步点云分割:利用RANSAC算法对所述的预处理后的点云数据进行路面病害区域的初步点云分割。计算方法如下: [0047] 随机采样:从点云数据中随机选取若干个点作为样本,并构建采样点云;随机选取3个点作为样本,构建采样点云。 [0048] 平面拟合:创建一个平面模型的实例,用于估计平面参数。对采样点云进行平面拟合,适用奇异值分解估计平面参数; [0049] 计算内点、外点:设置阈值为1.5,计算每个点到拟合的平面的距离,如果距离小于设定阈值,则将该点标记为内点,否则标记为外点; [0050] 计算内点比例:计算内点的数量占整个点云的比例; [0051] 更新最佳结果:最佳内点比例初始值为0,若当前的内点比例大于最佳内点比例,则更新最佳内点比例、最佳平面参数、最佳内点集合和最佳外点集合; [0052] 检查停止条件:设置最大迭代次数为100,在最大迭代次数内,检查最佳内点比例是否大于停止阈值(默认设置为1.0,即100%),如果满足则停止迭代。 [0053] 点云初步分割后的结果如图3所示。 [0054] 第四步,点云簇聚类:利用DBSCAN算法对点云初步分割结果进行聚类,根据点云密度将初步分割结果划分为不同类型的簇。计算方法如下: [0055] 根据聚类稳定性选择超参数领域半径Eps和最小邻域数据点数MinPts,设置Eps为0.1,MinPts为25; [0056] 从数据中随机选择一个点X; [0057] 判断一个点是否为核心点:查找到点X的距离小于等于Eps的所有点,并统计这些点的个数。如果在Eps范围内的数据点数量超过MinPts,则将该点标记为核心点并分配新的聚类标签,否则,该点将被标记为噪声; [0058] 如果X点是核心点,则检索从X点开始的所有密度可达点并将它们添加到同一个簇中; [0059] 访问当前点的所有邻居点,即距离小于Eps的点,如果邻居点还没有被分配到簇,则为其分配与点X相同的簇标签; [0060] 如果邻居点也是核心点,则递归访问其邻居点并将它们加入到同一个簇中,直到Eps范围内不再有核心点; [0061] 通过对每个未访问的核心样本重复以上步骤来逐渐扩展聚类; [0062] 直到所有核心样本都被访问过,并且数据集中的所有点都被分配到一个簇或标记为噪声,算法结束。 [0063] 点云聚类后的结果如图4所示。 [0064] 第五步,病害区域检测:根据路面病害的三维特征实现对分割簇的病害检测。计算方法如下: [0065] 对不同簇内的点坐标进行统计分析,计算z坐标的平均值、不同点云簇在平面内的长度、宽度等; [0066] 根据不同病害特征的先验知识设定统计量阈值; [0067] 将不同点云簇的统计量与设定阈值进行比较,从而实现路面病害的三维检测。如图5所示,是车辙病害区域的检测。 |