System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于聚类的堆场识别方法技术_技高网

一种基于聚类的堆场识别方法技术

技术编号:41068018 阅读:10 留言:0更新日期:2024-04-24 11:22
本发明专利技术公开了一种基于聚类的堆场识别方法,该方法为契合港口管理应用场景,通过多种数据筛选方式,排除误差点和干扰点,较精确获取所有堆场堆垛数据点,再使用聚类算法将各堆垛分隔,然后计算堆垛边界并对结果点抽稀,以减少最终输出点。具体步骤包括接收港口堆场的点云数据、Ransac算法粗略计算地面高度、筛选高于地面部分的数据点、DBSCAN聚类、八邻域搜索算法搜索各个堆附近的点、计算各个堆面积和体积、使用alpha shape算法计算各堆的边界点集、对边界点进行抽稀等。该方法可以应用于港口堆场的识别场景,并输出各个堆垛的边界点,为港口管理和运营提供支持。

【技术实现步骤摘要】

本专利技术涉及3d点云数据中堆场的识别,具体为一种基于聚类的堆场识别方法


技术介绍

1、堆场识别是现代物流和仓储管理中的关键问题之一,它涉及到对堆场内物品的精确识别和定位。传统的堆场识别方法通常依赖于人工检查和手动记录,这不仅费时费力,而且容易出现误差。

2、随着信息技术的迅猛发展,自动化堆场识别的研究逐渐转向了计算机视觉和机器学习技术。这些技术可以用于处理大量的图像数据,并从中提取有关堆场的信息。然而,面对复杂多变的堆场环境,传统的图像处理方法往往表现不佳,这导致了对更高级别的方法的需求。

3、基于聚类的堆场识别方法旨在将堆场内的物品划分成不同的群组或簇,每个簇代表相似的物品。这种方法的核心思想是通过相似性度量将物品进行自动分类,从而实现对堆场的快速识别。聚类方法在堆场管理中具有潜在的巨大优势,因为它们可以应对堆场内物品种类繁多、尺寸各异、摆放杂乱等挑战。

4、现有的堆场识别技术中,一些基于聚类的方法已经取得了显著的成就。它们利用图像处理和机器学习技术,包括k均值聚类、层次聚类、dbscan等,对堆场内的物品进行分组。这些方法通常需要大量的标记数据和训练,以提高准确性和鲁棒性。同时,它们还需要考虑堆场环境中的噪声、光线变化、物品重叠等问题,以确保可靠的识别。

5、然而,尽管现有技术中已经取得了一些进展,但是基于聚类的堆场识别方法仍然面临一些挑战,在目前市面上解决港口后方堆场识别问题的背景下,主要存在两方面的挑战。首先,现有方法未提供专门针对港口堆场的高效识别手段,以往方法虽然适用于其他地物,却未能充分考虑港口堆场的独特特征,因而导致识别精度不足,尤其在遥感大数据处理过程中,由于缺乏对港口堆场的特定关注,数据处理效率受到影响。

6、其次,目前的数据处理方式主要侧重于对遥感图像的直接提取,然而这种提取方式的核心问题在于处理大量原始数据,其中可能包含大量与港口堆场无关的信息,从而增加了数据处理的复杂性。此外,在已有的数据处理中,缺乏基于堆场特征进行图像分类的方法,导致对图像特征的提取不够准确,尤其在处理缺乏具体外形的矿石堆场时,需要不断根据实际场景进行修正和校正,这是当前技术所未解决的问题,为此此提供了一种基于聚类的堆场识别方法。


技术实现思路

1、本专利技术的目的是针对现有技术的缺陷,提供一种基于聚类的堆场识别方法,以解决上述
技术介绍
提出的问题。

2、为实现上述目的,本专利技术提供如下技术方案:一种基于聚类的堆场识别方法,使用多种数据筛选方式,精确获取堆垛数据点,再使用聚类算法得到各个堆垛,之后计算边界并对结果点抽稀;具体步骤如下:

3、s1:接收点云数据/读取点云数据文件,将数据经过ransac算法处理,粗略计算地面高度;地面高度可作为筛选数据的依据,以此减少后续计算量,并减少其他无关点对最终结果的影响;

4、s2:根据地面高度筛选出点云数据中高于地面的部分,再进行dbscan聚类,初步得到各堆垛的数据点;

5、s3:使用八邻域搜索算法以扩充各个堆垛数据点,精确获取堆垛数据,并结合各点的法向量,计算出精确的各个堆垛的所有点;

6、s4:根据s3中的堆垛点计算各个堆面积和体积,根据这些数据筛选干扰信息,如面积过小的堆,汽车或者是场景中的灯杆等;

7、s5:使用s4中的数据,结合alpha shape算法计算各堆的边界点集;

8、s6:对边界点集进行抽稀,减少输出结果点数量;

9、s7:输出边界点集,即完成点云数据中堆场识别。

10、作为本专利技术的一种优选技术方案,所述s1中地面高度的计算,具体包含以下步骤:

11、s11:首先设n为样本个数,k是求解模型需要的最少点的个数,并设置距离阈值;

12、s12:在n个样本中随机选择k个点,并对选中的k个点进行线性拟合;

13、s13:计算其他点到拟合模型的距离,如果小于阈值,该点被当作内点,否则认为是外点;

14、s14:重复m次,选择拟合内点数最多的结果,并利用所有内点重新进行拟合。

15、作为本专利技术的一种优选技术方案,所述s2中dbscan聚类的计算步骤如下:

16、s21:初始化所有点的label为-1;

17、s22:随机选择点,标签从1开始累加,找满足小于一定距离且未访问过的点,标记为同一类,并压入侯选栈;

18、s23:当前点若循环完成,则从候选栈中拿出顶点继续第s22步,至栈为空结束;

19、s24:计算各堆的面积和体积,筛选过小的堆,输出最终结果;

20、s25:使用八邻域算法,遍历各个堆垛周围的数据点,其法向量大于阈值即该数据点也是该堆垛的点。

21、作为本专利技术的一种优选技术方案,所述s5中结合alpha shape算法计算各堆的边界点集的具体步骤如下:

22、s51:筛选出高于地面10公分的所有点,以减少计算时间;

23、s52:设置一个判别半径r;

24、s53:假设数据集有n个无序点,过任意两点p1、p2绘制半径为r的圆,排除两点间距离为2r的情况,满足要求的圆有两个,如果任意一个圆内没有其他数据点,则认为点p1、p2是边界点,其连线p1p2为边界线段;

25、s54:n个数据点两两相连共可形成(n*(n-1))/2条线段,逐条进行判断求解。

26、作为本专利技术的一种优选技术方案,所述s6中对边界点集抽稀的具体工作流程为:

27、s61:每一条曲线的首末点虚连一条直线,求所有点与直线的距离,并找出最大距离值dmax;

28、s62:用dmax与限差d相比,若dmax<d,这条曲线上的中间点所有舍去,若dmax≥d,保留dmax相应的坐标点,并以该点为界,把曲线分为两部分;

29、s63:重复步骤s62,直至点数小于阈值;

30、s64:为进一步减少点数到20个以下,对步骤s63得到的结果再进行基于凸包的边界点计算得到最终结果。

31、本专利技术的有益效果是:本专利技术可以更好地利用高度与斜率信息,实现在较为精准的堆场边界识别,通过ransac算法初步计算地面高度,以dbscan聚类得到各堆垛数据点,并使用八邻域算法,以距离和法向量作为搜索目标,可精确得到各堆垛数据点。之后使用alpha shape和凸包算法计算边界,并使用抽稀算法减少输出点数,多种堆场识别方法的比较,本算法通过在业务数据上的测试,基本识别无误,并结合各点的法向量,各堆垛的面积进行筛选,减少灯杆、骑车等其他物体的误检率,在识别速度方面,本算法最快可在数秒内在千万量级点云数据中完成堆场识别,本专利技术的方法提高了堆场识别的准确率和可靠率,可以在港口管理中发挥重要作用,使用信息化手段进行堆场边界识别,减少人工投入,提升港口管理效率。

本文档来自技高网...

【技术保护点】

1.一种基于聚类的堆场识别方法,其特征在于:使用多种数据筛选方式,精确获取堆垛数据点,再使用聚类算法得到各个堆垛,之后计算边界并对结果点抽稀;具体步骤如下:

2.根据权利要求1所述的一种基于聚类的堆场识别方法,其特征在于:所述S1中地面高度的计算,具体包含以下步骤:

3.根据权利要求1所述的一种基于聚类的堆场识别方法,其特征在于:所述S2中DBSCAN聚类的计算步骤如下:

4.根据权利要求1所述的一种基于聚类的堆场识别方法,其特征在于:所述S5中结合alpha shape算法计算各堆的边界点集的具体步骤如下:

5.根据权利要求1所述的一种基于聚类的堆场识别方法,其特征在于:所述S6中对边界点集抽稀的具体工作流程为:

【技术特征摘要】

1.一种基于聚类的堆场识别方法,其特征在于:使用多种数据筛选方式,精确获取堆垛数据点,再使用聚类算法得到各个堆垛,之后计算边界并对结果点抽稀;具体步骤如下:

2.根据权利要求1所述的一种基于聚类的堆场识别方法,其特征在于:所述s1中地面高度的计算,具体包含以下步骤:

3.根据权利要求1所述的一种基于聚类的堆场识...

【专利技术属性】
技术研发人员:曲毅孙帆冯宇朱威李存华谭鑫孙豪杰
申请(专利权)人:江苏海洋大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1