CN112070769B - 一种基于dbscan的分层点云分割方法 - Google Patents
一种基于dbscan的分层点云分割方法 Download PDFInfo
- Publication number
- CN112070769B CN112070769B CN202010985203.6A CN202010985203A CN112070769B CN 112070769 B CN112070769 B CN 112070769B CN 202010985203 A CN202010985203 A CN 202010985203A CN 112070769 B CN112070769 B CN 112070769B
- Authority
- CN
- China
- Prior art keywords
- point
- cluster
- main body
- layer
- point cloud
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10032—Satellite or aerial image; Remote sensing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30181—Earth observation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于DBSCAN的分层点云分割方法。首先采用CSF分离地面点以及非地面点;非地面点分割过程,首先按照一定的高度将点云垂直方向进行分层,然后对每一层在XOY平面上的投影点进行DBSCAN聚类,获取每个聚类的中心点,然后将所有聚类出的中心点投影至XOY平面,利用DBSCAN聚类出每一个物体主体,继而对每个主体每层进行判断其主体点是否存在,并判断每个簇中包含的物体数,最后针对存在多个物体的簇再进行分割处理。本发明方法针对侧视点云数据的分割,可以保证场景中大部分主体的提取,且具有一定的鲁棒性,尤其在以树木为主的场景中有着较好的表现,本发明方法得到的结果对点云分割之后的点云分类和点云三维重建有着一定的意义。
Description
技术领域
本发明涉及LiDAR点云数据信息提取技术领域,具体涉及一种基于DBSCAN的分层点云分割方法。
背景技术
传统三维激光扫描技术是测绘技术中继GPS系统后的又一次新的突破,其利用激光测距的原理,能够快速、精确、连续地获取物体表面大量密集点的三维坐标、反射强度等信息,目前广泛应用于森林生态、城市变化检测、城市道路检测和规划以及机器人环境感知等领域。然而,由于点云数据分布不均匀,不具备语义信息,甚至大部分点云数据均不包含颜色信息,对点云数据处理和应用造成了较大的干扰,因此,目前虽然在点云配准、分类以及三维建模等方面均取得了一定的研究成果,但是这些方法主要针对某些特定的数据集或者需要处理者对数据和算法有着一定的理解认识,仍然无法实现对点云数据快速、自动、高精度处理。
点云分割是进行点云分类、三维建模等工作的必要前提,现有的点云分割方法主要有基于边缘的分割方法、基于模型的分割方法、基于图的分割方法以及基于聚类的分割方法。其中基于边缘的分割方法将检测到的点云属性急剧变化的区域视为边缘区域,从而勾勒出点云的边缘地带,以边缘作为分界线进行分割,该类方法原理简单,分割速度快,但容易受到噪声影响,因此不适合处理较为复杂的点云数据;基于模型的方法中大部分算法基于1981年Fischer提出的RANSAC算法(随机采样一致性算法)发展而来,该算法将物体视为规则几何形态(平面、正方体、球体等)的结合,通过对原始几何形态的数学模型进行拟合,对点云数据进行分割,该算法处理速度快、且对噪声不敏感,但无法识别不规则形状的物体,无法处理复杂点云;基于图的分割方法将点云中的点视为图的顶点,将点与点的连线视为边,将点与点的相似度作为边的权重值,将不同分割区域的相似度达到最小,同一分割区域的相似度达到最大作为分割目标,基于图的分割方法可以处理大规模的复杂点云,且对噪声不敏感,然而,该算法实现困难且分割速度较慢;而基于聚类的方法能够聚类出任何形状的簇,而点云数据也有着各种各样的形状,因此基于聚类的方法很适合于点云数据的分割,该算法基于点的属性将具有相似属性的点聚在一起,该算法适合处理大规模复杂场景的点云,且一般均自带有去噪的功能,容易实现且计算简单,但是很难确定精确的边界,容易出现过分割或者分割不足的情况。
基于密度的聚类算法是基于数据集在空间分布中的稀疏程度来对数据集进行聚类的,因而不需要预先设定簇的数量,适合于对未知内容的数据集进行聚类。其中,DBSCAN算法(Density-Based Spatial Clustering ofApplications withNoise)是其中最为经典的算法,它以选定对象的单位超球状区域内所包含的数据对象的数量作为标准来衡量选定对象的密度。例如,针对点云数据(仅包含x、y、z属性)中的任意一点,DBSCAN能获取距离该点的一定半径内的点的数量代表该点的密度。而DBSCAN的基本流程为:
(1)从数据中任意一未标记点p出发,获取距离该点一定范围(Eps)内的近邻点个数,如果近邻点个数小于最小点数(MinPts),则认为点p为噪声点,重新开始第(1)步,否则认为该点为核心点,并创建核心点队列N以及新簇C,并将点p加入核心点队列N以及新簇C中;
(2)遍历核心点队列N,获取Ni一定范围(Eps)内的近邻点Q,遍历所有近邻点,如果近邻点q未标记,则加入簇C,并且进行判定是核心点还是边缘点,如果为核心点,加入核心点队列N,如果为边缘点,则直接跳过;
(3)重复1~2步,当数据中所有点被标记则循环结束。
基于DBSCAN的聚类结果只与点云数据的稀疏程度有关,因此,DBSCAN算法能够发现点云中任何形状的簇并且有效识别噪声点,但是DNSCAN算法需要提前人工选择Eps和MinPts这2个参数,且聚类的准确性与Eps和MinPts的选择有关。
当Eps过小时,由于搜索区域变小,使区域内部分对象点的近邻点少于MinPts,从而被误判为噪声点,另外,部分自然簇也会因为局部区域无法达到密度要求而导致拆分。
当Eps过大时,由于搜索区域变大,可能会将很多噪声点归入簇中,而原本应该分离的若干个自然簇也会因为搜索半径变大而被错误地合并为一个簇。
当MinPts过小时,会导致大量对象被标记为核心点,从而将一些本不属于簇内的噪声点错误地归入簇。
当MinPts过大时,使大量点会因为近邻点无法达到MinPts而被误判为噪声点。
而在大场景点云数据中,由于场景复杂、点云数据获取密度不均匀等原因的影响,点云数据会存在缺失、相交、密度不均匀等问题,当使用参数统一的DBSCAN算法时,算法必定存在欠分割以及过分割的情况。近年来,也有学者通过基于数据本集自适应确定Eps或者MinPts,通过自适应确定参数的方法可以在一定程度上改进分割结果,但是由于场景点云数据本身存在缺失、相交情况,分割时仍然无法将因为缺失的若干部分视为整体或者将因为相交的部分进一步分割。
综上所述,DBSCAN算法不需要提前设定簇的数量,且能有效的发现噪声点,对点云数据使用时能够产生较好的分割结果;但是DBSCAN在处理点云时有着以下缺点:
1)需要提前选择Eps(邻域半径)和MinPts(邻域内最小点数)两个参数,然而在分割时,由于不同区域密度可能不同,因此固定的Eps和MinPts会导致同时存在过分割和欠分割;
2)由于点云数据本身存在数据缺失,因此可能同一物体会被聚类成多个物体;
3)DBSCAN在相交场景易造成欠分割。
本发明在DBSCAN的基础降低了Eps和MinPts的调整难度,使得Eps和MinPts在点云数据中有了调整依据,且能够识别垂直方向数据缺失和水平相交,并对水平相交部分进行分割处理,从而同时降低了单个物体的欠分割、过分割程度,保证了大部分物体的独立性。
发明内容
本发明的目的在于提供一种基于DBSCAN的分层点云分割方法,该方法可对室外场景侧视点云数据进行有效分割,为点云数据的进一步分类和三维建模等工作提供基础。
为实现上述目的,本发明的技术方案是:一种基于DBSCAN的分层点云分割方法,包括如下步骤:
步骤S0:通过地基激光扫描仪或者移动激光扫描仪获取侧视激光点云数据,并利用布料模拟滤波算法CSF对点云数据进行地面滤波分割地面点和非地面点;
步骤S1:对非地面点云基于层高H对点云数据进行垂直分层,且将每一层点云数据投影至XOY平面且进行一次DBSCAN聚类,并获取每个聚类簇的中心点;
步骤S2:根据大部分物体在不同高度的位置分布一致性,将所有中心点在XOY平面的投影进行一次DBSCAN聚类,提取每个物体主体;
步骤S3:基于每个物体的主体都是完整独立的假设,判断每一层每个簇中所包含的主体数,从而判断每一层的每个簇是否为多主体相交的簇;
步骤S4:遍历所有簇,如果簇中只包含一个物体,则认为该簇中所有点都属于该物体,而对于包含多个物体的簇,利用同一个物体之间垂直方向的连续性进行进一步分割处理。
在本发明一实施例中,所述步骤S0中利用布料模拟滤波算法CSF对点云数据进行地面滤波需要多次迭代滤波,当地面点与非地面点明显分割时,结束迭代。
在本发明一实施例中,所述步骤S1中层高H的确定是基于点云数据垂直方向的稀疏程度,当点云较稀疏时需要较大的H值来保证每个物体大部分层次中点云较为完整。
在本发明一实施例中,所述步骤S1的具体实现步骤如下:
步骤S11:遍历点云数据从而获取点云数据Z值的最大值和最小值,基于每一层层高H计算总层数以及数据中每个点所属的层;
步骤S12:分别获取每一层的所有点在XOY平面上的投影点,并对每一个点进行标记,记录该点所在的层数;
步骤S13:对每一层在XOY平面上的投影点进行一次DBSCAN聚类,得到每一层的聚类簇,然后对每个聚类簇计算聚类簇中所有点的中心点。
在本发明一实施例中,所述步骤S2中,主体指物体的主要部分,将对中心点聚类出的每一簇视为一个主体,将簇中的每一个中心点视为一个主体点,将每个主体点对应的簇称为主体簇。
在本发明一实施例中,所述步骤S2中DBSCAN聚类的具体实现步骤如下:
步骤S21:随机获取簇中一个未标记的点,获取该点的邻域半径Eps范围的近邻点,如果近邻点个数大于邻域内最小点数MinPts,则认为该点为核心点,加入核心点队列,且创建一个簇队列,否则为噪声点,重新开始步骤S21,其中Eps需要小于物体与物体之间的距离且足够大,而MinEps设置为0;
步骤S22:遍历核心点队列,获取每个核心点的Eps范围的近邻点,将所有近邻点加入簇中且标记,并对每个近邻点再次进行搜索Eps范围内的点,如果搜索到的点数大于MinPts,则认为该近邻点为核心点,加入核心点队列;
步骤S23:遍历核心点队列结束后,判定是否还存在未标记的点,如果存在,则重新开始步骤S21,否则结束循环。
步骤S13中DBSCAN的具体实现步骤与步骤S2中DBSCAN聚类步骤相同,但参数设置不同,S13中Eps需要小于主体与主体之间的距离,而MinPts要等于大部分物体所达到的层数。
在本发明一实施例中,所述步骤S3的具体实现步骤如下:
步骤S31:首先遍历每一个主体的每一层,判断该主体的每一层中是否存在主体点;
步骤S32:如果主体中的其中一层存在一个以上的主体点,则认为该主体点所对应的主体簇包含该主体所对应的物体的点,将该主体所对应的物体加入该主体簇包含物体的队列中;如果其中一层不存在主体点,则获取该层的位置簇,将位置簇与缺失主体的层中的每个簇分别进行一次AABB包围盒碰撞检测,如果检测与其中一个簇检测通过,则认为在该簇中包含该主体所对应的物体,将该主体所对应的物体加入该簇包含物体的队列中。
在本发明一实施例中,所述步骤S4中存在多个物体的簇进行分割的具体实现步骤如下:
步骤S41:获取每个物体相交簇所在层的位置簇,将每个物体的位置簇中的点云加入种子点云,并对每个种子点云中的点基于物体进行标记;
步骤S42:对相交簇中每个点搜索种子点云中的最近邻点,其最近邻点的标记作为该点的类别标记。
在本发明一实施例中,所述步骤S32中位置簇指可以代替该主体层缺失点云的位置的簇,其获取步骤为:当第n个主体第l层有缺失时,从第l层同时向上向下搜索,当搜索到其中一层时该主体在该层只包含一个主体簇,且主体簇经判定只含有一个物体,则该层的主体簇为所要获取的位置簇。
在本发明一实施例中,所述步骤S32中AABB包围盒碰撞检测的实现步骤为:
步骤S321:分别获取位置簇、判定簇的X、Y方向的最大值和最小值;
步骤S322:计算出两个包围盒的相交面积S1和需要判定的簇的面积S;
步骤S323:计算出相交面积在判定簇的比例S1/S是否大于阈值,大于阈值则认为碰撞,否则为无碰撞。
相较于现有技术,本发明具有以下有益效果:本发明利用了侧视点云数据丰富的垂直信息,能够识别垂直方向数据缺失和水平相交,并对水平相交部分进行分割处理,从而同时降低了单个物体的欠分割、过分割程度,保证大部分物体主体的提取,且具有一定的鲁棒性,尤其在以树木为主的场景中有着较好的表现;同时,在DBSCAN算法的基础上提高了计算效率。
附图说明
图1为本发明方法具体实施案例的技术流程示意图。
图2为原始点云和地面滤波结果示意图。
图3为分层聚类结果示意图。
图4为主体提取结果示意图。
图5为包围盒碰撞检测示意图。
图6为实例最终分割结果示意图。
具体实施方式
下面结合附图,对本发明的技术方案进行具体说明。
本发明提供了一种基于DBSCAN的分层点云分割方法,包括如下步骤:
步骤S0:通过地基激光扫描仪或者移动激光扫描仪获取侧视激光点云数据,并利用CloudCompare软件中的布料模拟滤波算法CSF对点云数据进行地面滤波分割地面点和非地面点;
步骤S1:对非地面点云基于层高H对点云数据进行垂直分层,且将每一层点云数据投影至XOY平面且进行一次DBSCAN聚类,并获取每个聚类簇的中心点;
步骤S2:根据大部分物体在不同高度的位置分布一致性,将所有中心点在XOY平面的投影进行一次DBSCAN聚类,提取每个物体主体;
步骤S3:基于每个物体的主体都是完整独立的假设,判断每一层每个簇中所包含的主体数,从而判断每一层的每个簇是否为多主体相交的簇;
步骤S4:遍历所有簇,如果簇中只包含一个物体,则认为该簇中所有点都属于该物体,而对于包含多个物体的簇,利用同一个物体之间垂直方向的连续性进行进一步分割处理。
以下为对本发明技术方案进行具体讲述。
如图1所示,本发明提供一种基于DBSCAN的分层点云分割算法,包括如下步骤:步骤S0:通过地基激光扫描仪或者移动激光扫描仪获取测试激光点云数据,利用CloudCompare软件中的CSF算法对点云数据进行地面滤波分割地面点和非地面点;步骤S1:对非地面点云基于一定高度H对点云数据进行垂直分层,且对每一层在XOY平面上的投影点进行一次DBSCAN聚类,并获取每个聚类簇的中心点;步骤S2:根据大部分物体在不同高度的位置分布一致性,将所有中心点在XOY平面的投影进行一次DBSCAN聚类,提取每个物体主体;步骤S3:基于每个物体的主体都是完整独立的假设,判断每一层每个簇中所包含的主体数,从而判断每一层的每个簇是否为多主体相交的簇;步骤S4:遍历所有簇,如果簇中只包含了一个物体,则认为该簇中所有点都属于该物体,而对于包含了多个物体的簇,利用同一个物体之间垂直方向的连续性进行进一步分割处理。下面为了让一般技术人员更好的理解本发明,以一处以树木为主的样地为例,运用本发明的方法进行点云分割的过程如下:
1、点云获取及其预处理
通过地面激光扫描仪获取样地的侧视点云数据集,如果为多站获取数据,则通过RISCAN PRO中手动配准对多站数据进行配准,将数据导出为txt格式,在CloudCompare软件中打开保存的数据,选择Plugins->CSF Filte,对数据进行多次CSF地面滤波,直到目视地面点分割完整为止。样地原始数据和获取的地面滤波结果可视化如图2所示。
2、分层聚类
当地面点与非地面点分割后,地面上的物体不再被地面点连接,我们便可以对非地面点进行进一步的精细的分割。以一定高度H对点云数据进行整体垂直分层,计算点云数据Z值的最大值和最小值,计算最大高差,利用最大高差除以每一层的高度H获取总层数,对每一个数据点计算该点所在的层数L,计算公式如公式1所示:
L=floor((z-z_min)/H) (公式1)
其中L为点p的层数,z为点p的Z值,z_min为点云Z值最小值,H为每一层的高度。
分层后对每一个点基于该点所在层数进行标记,将每一层的所有点分别投影至XOY平面进行DBSCAN聚类,因为不考虑噪声且希望尽可能将每一层的每一个物体都聚类至一个簇中,所以不考虑MinPts或者将MinPts设置为0,Eps的设置需要足够大使得能够保证每个物体聚类结果达到最优,但也需要小于物体与物体的主体之间的距离,否则会导致多个物体共用同一主体,从而导致欠分割。
本实例以样地内一小片区域的相交物体点云展示,其分层高度为0.4m,DBSCAN聚类算法中参数设置为Eps=0.5,MinPts=0,其分层结果如图3(a)所示,其中一层在XOY平面投影和聚类结果如图3(b)和(c)所示。
对每一层中聚类出的簇计算每个簇的中心点,计算方法为:
其中(xcenter,ycenter)为簇C的中心点坐标,(yi,yi)为簇C中第i个点的坐标,NC为簇C中所包含点的个数。
3、主体提取
将获取到的每个簇的中心点代表每个簇的位置,基于主体平面位置分布一致性,对所有中心点投影至XOY平面,对中心点进行一次DBSCAN聚类获得主体集,主体提取中Eps的取值会相对较小,Eps较大时会导致多主体融合而导致漏检,而太小时会导致部分主体点未检测从而导致分割错误。而另一个参数MinPts的设置基于大部分物体分层后存在的层数,而未达到MinPts层数的物体将会被忽略。
其中,位置簇指可以代替该主体层缺失点云的位置的簇,其获取步骤为:当第n个主体第l层有缺失时,从第l层同时向上向下搜索,当搜索到某一层时该主体在该层只包含一个主体簇,且主体簇经判定只含有一个物体,则该层的主体簇为合适的位置簇。
通过对样地分类聚类结果进行投影以及DBSCAN聚类算法,其聚类参数Eps=0.8,MinPts=8,图4(a)为原始点云中部分相交物体点云,其聚类主体结果如图4(b)所示。
4、主体分割
首先遍历上一步提取的每一个主体的每一层,判断每一层中是否存在主体点;如果主体中的某一层存在一个以上的主体点,则认为该主体点所对应的主体簇包含了该主体所对应的物体的点,将该主体所对应的物体加入该主体簇的包含物体的队列中。如果某一层不存在主体点,则获取位置簇与该存在缺失的主体层中每个簇分别进行一次AABB包围盒碰撞检测,如果检测与其中某一个簇检测通过,则认为在该簇中包含了该主体所对应的物体,将该主体所对应的物体加入该簇的包含物体队列中。
其中AABB包围盒碰撞检测过程为:分别获取位置簇和判定簇的X、Y方向的最大最小值,计算出两个包围盒的相交面积S1和需要判定的簇的面积S,计算出相交面积在判定簇的比例S1/S是否大于阈值,大于阈值则认为碰撞,否则为无碰撞。其碰撞检测示意图如图5所示,包围盒O为缺失层的合适代替的位置簇C的包围盒,A、B、C、D代表了该层中簇可能存在的位置,当阈值设为0.5时,A、B与O的交集占A的比例大于0.5,而C、D与O的交集占D的比例小于0.5,代表簇C包含了A、B所代表的物体,而不包含C、D所代表的物体。
遍历所有簇,如果簇中只包含了一个物体,则认为该簇中所有点都属于该物体,而对于包含了多个物体的簇,获取每个物体相交簇所在层的位置簇,将每个物体的位置簇中的点云加入种子点云,并对每个种子点云中的点基于物体进行标记,对相交簇中每个点搜索种子点云中的最近邻点,其最近邻点的标记作为该点的类别标记。最终每一点的标记结果就是该点最终的分割结果,其分割结果如图6所示。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
Claims (6)
1.一种基于DBSCAN的分层点云分割方法,其特征在于,包括如下步骤:
步骤S0:通过地基激光扫描仪或者移动激光扫描仪获取侧视激光点云数据,并利用布料模拟滤波算法CSF对点云数据进行地面滤波分割地面点和非地面点;
步骤S1:对非地面点云基于层高H对点云数据进行垂直分层,且将每一层点云数据投影至XOY平面且进行一次DBSCAN聚类,并获取每个聚类簇的中心点;
步骤S2:根据大部分物体在不同高度的位置分布一致性,将所有中心点在XOY平面的投影进行一次DBSCAN聚类,提取每个物体主体;
步骤S3:基于每个物体的主体都是完整独立的假设,判断每一层每个簇中所包含的主体数,从而判断每一层的每个簇是否为多主体相交的簇;
步骤S4:遍历所有簇,如果簇中只包含一个物体,则认为该簇中所有点都属于该物体,而对于包含多个物体的簇,利用同一个物体之间垂直方向的连续性进行进一步分割处理;
所述步骤S1的具体实现步骤如下:
步骤S11:遍历点云数据从而获取点云数据Z值的最大值和最小值,基于每一层层高H计算总层数以及数据中每个点所属的层;
步骤S12:分别获取每一层的所有点在XOY平面上的投影点,并对每一个点进行标记,记录该点所在的层数;
步骤S13:对每一层在XOY平面上的投影点进行一次DBSCAN聚类,得到每一层的聚类簇,然后对每个聚类簇计算聚类簇中所有点的中心点;
所述步骤S2中DBSCAN聚类的具体实现步骤如下:
步骤S21:随机获取簇中一个未标记的点,获取该点的邻域半径Eps范围的近邻点,如果近邻点个数大于邻域内最小点数MinPts,则认为该点为核心点,加入核心点队列,且创建一个簇队列,否则为噪声点,重新开始步骤S21,其中Eps需要小于物体与物体之间的距离且大于预设值,而MinEps设置为0;
步骤S22:遍历核心点队列,获取每个核心点的Eps范围的近邻点,将所有近邻点加入簇中且标记,并对每个近邻点再次进行搜索Eps范围内的点,如果搜索到的点数大于MinPts,则认为该近邻点为核心点,加入核心点队列;
步骤S23:遍历核心点队列结束后,判定是否还存在未标记的点,如果存在,则重新开始步骤S21,否则结束循环;
所述步骤S3的具体实现步骤如下:
步骤S31:首先遍历每一个主体的每一层,判断该主体的每一层中是否存在主体点;
步骤S32:如果主体中的其中一层存在一个以上的主体点,则认为该主体点所对应的主体簇包含该主体所对应的物体的点,将该主体所对应的物体加入该主体簇包含物体的队列中;如果其中一层不存在主体点,则获取该层的位置簇,将位置簇与缺失主体的层中的每个簇分别进行一次AABB包围盒碰撞检测,如果检测与其中一个簇检测通过,则认为在该簇中包含该主体所对应的物体,将该主体所对应的物体加入该簇包含物体的队列中;
所述步骤S4中存在多个物体的簇进行分割的具体实现步骤如下:
步骤S41:获取每个物体相交簇所在层的位置簇,将每个物体的位置簇中的点云加入种子点云,并对每个种子点云中的点基于物体进行标记;
步骤S42:对相交簇中每个点搜索种子点云中的最近邻点,其最近邻点的标记作为该点的类别标记。
2.根据权利要求1所述的一种基于DBSCAN的分层点云分割方法,其特征在于,所述步骤S0中利用布料模拟滤波算法CSF对点云数据进行地面滤波需要多次迭代滤波,当地面点与非地面点明显分割时,结束迭代。
3.根据权利要求1所述的一种基于DBSCAN的分层点云分割方法,其特征在于:所述步骤S1中层高H的确定是基于点云数据垂直方向的稀疏程度,当点云稀疏时需要预设的H值来保证每个物体大部分层次中点云完整。
4.根据权利要求1所述的一种基于DBSCAN的分层点云分割方法,其特征在于:所述步骤S2中,主体指物体的主要部分,将对中心点聚类出的每一簇视为一个主体,将簇中的每一个中心点视为一个主体点,将每个主体点对应的簇称为主体簇。
5.根据权利要求1所述的一种基于DBSCAN的分层点云分割方法,其特征在于:所述步骤S32中位置簇指代替该主体层缺失点云的位置的簇,其获取步骤为:当第n个主体第l层有缺失时,从第l层同时向上向下搜索,当搜索到其中一层时该主体在该层只包含一个主体簇,且主体簇经判定只含有一个物体,则该层的主体簇为所要获取的位置簇。
6.根据权利要求1所述的一种基于DBSCAN的分层点云分割方法,其特征在于:所述步骤S32中AABB包围盒碰撞检测的实现步骤为:
步骤S321:分别获取位置簇、判定簇的X、Y方向的最大值和最小值;
步骤S322:计算出两个包围盒的相交面积S1和需要判定的簇的面积S;
步骤S323:计算出相交面积在判定簇的比例S1/S是否大于阈值,大于阈值则认为碰撞,否则为无碰撞。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010985203.6A CN112070769B (zh) | 2020-09-18 | 2020-09-18 | 一种基于dbscan的分层点云分割方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010985203.6A CN112070769B (zh) | 2020-09-18 | 2020-09-18 | 一种基于dbscan的分层点云分割方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112070769A CN112070769A (zh) | 2020-12-11 |
CN112070769B true CN112070769B (zh) | 2022-06-03 |
Family
ID=73680693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010985203.6A Active CN112070769B (zh) | 2020-09-18 | 2020-09-18 | 一种基于dbscan的分层点云分割方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112070769B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112462347B (zh) * | 2020-12-28 | 2023-08-15 | 长沙理工大学 | 基于密度聚类的激光雷达点云快速分类滤波算法 |
CN112669461B (zh) * | 2021-01-07 | 2024-01-26 | 中煤航测遥感集团有限公司 | 机场净空安全检测方法、装置、电子设备及存储介质 |
CN112924974B (zh) * | 2021-01-21 | 2022-11-25 | 中国气象科学研究院 | 一种利用dbscan聚类算法识别云团的方法、装置及电子设备 |
CN112859108B (zh) * | 2021-01-28 | 2024-03-22 | 中国科学院南京土壤研究所 | 一种利用地面激光雷达数据提取复杂地形条件下林下植被覆盖度的方法 |
CN112785596B (zh) * | 2021-02-01 | 2022-06-10 | 中国铁建电气化局集团有限公司 | 基于dbscan聚类的点云图螺栓分割和高度测量方法 |
CN112802093B (zh) * | 2021-02-05 | 2023-09-12 | 梅卡曼德(北京)机器人科技有限公司 | 对象抓取方法及装置 |
CN113205139B (zh) * | 2021-05-06 | 2024-09-13 | 南京云智控产业技术研究院有限公司 | 一种基于密度聚类的无人艇水上球体检测方法 |
CN113034574B (zh) * | 2021-05-25 | 2021-09-14 | 广州市玄武无线科技股份有限公司 | 一种基于目标检测的商品地堆面积计算方法及系统 |
CN113901968B (zh) * | 2021-12-08 | 2022-02-25 | 华北理工大学 | 一种基于机器学习的铁路点云特征提取方法 |
CN114266780A (zh) * | 2022-02-28 | 2022-04-01 | 深圳市其域创新科技有限公司 | 一种建筑物单体化实例分割方法及装置 |
CN115512099B (zh) * | 2022-06-10 | 2023-06-02 | 探维科技(北京)有限公司 | 一种激光点云数据处理方法及装置 |
CN115236674B (zh) * | 2022-06-15 | 2024-06-04 | 北京踏歌智行科技有限公司 | 一种基于4d毫米波雷达的矿区环境感知方法 |
CN116740101B (zh) * | 2023-05-16 | 2024-03-12 | 中国信息通信研究院 | 用于点云对象的平面分割方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573705A (zh) * | 2014-10-13 | 2015-04-29 | 北京建筑大学 | 一种建筑物激光扫描点云数据的聚类方法 |
CN106780509A (zh) * | 2016-12-01 | 2017-05-31 | 山东交通学院 | 融合多维特征的建筑物点云层次聚类分割方法 |
CN107292276A (zh) * | 2017-06-28 | 2017-10-24 | 武汉大学 | 一种车载点云聚类方法及系统 |
CN110110802A (zh) * | 2019-05-14 | 2019-08-09 | 南京林业大学 | 基于高阶条件随机场的机载激光点云分类方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6845106B2 (ja) * | 2017-07-21 | 2021-03-17 | 株式会社タダノ | 点群データのクラスタリング方法、ガイド情報表示装置およびクレーン |
CN109961440B (zh) * | 2019-03-11 | 2021-06-18 | 重庆邮电大学 | 一种基于深度图的三维激光雷达点云目标分割方法 |
CN110046661A (zh) * | 2019-04-10 | 2019-07-23 | 武汉大学 | 一种基于上下文特征和图割算法的车载点云聚类方法 |
-
2020
- 2020-09-18 CN CN202010985203.6A patent/CN112070769B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573705A (zh) * | 2014-10-13 | 2015-04-29 | 北京建筑大学 | 一种建筑物激光扫描点云数据的聚类方法 |
CN106780509A (zh) * | 2016-12-01 | 2017-05-31 | 山东交通学院 | 融合多维特征的建筑物点云层次聚类分割方法 |
CN107292276A (zh) * | 2017-06-28 | 2017-10-24 | 武汉大学 | 一种车载点云聚类方法及系统 |
CN110110802A (zh) * | 2019-05-14 | 2019-08-09 | 南京林业大学 | 基于高阶条件随机场的机载激光点云分类方法 |
Non-Patent Citations (2)
Title |
---|
Combining Trunk Detection With Canopy Segmentation to Delineate Single Deciduous Trees Using Airborne LiDAR Data;Xiaohu Wang et al.;《IEEE Access》;20200518;第8卷;第99783-99796页 * |
Research on Power Line Segmentation and Tree Barrier Analysis;Peng Chi et al.;《2019 3rd International Conference on Electronic Information Technology and Computer Engineering (EITCE)》;20200518;第1395-1399页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112070769A (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112070769B (zh) | 一种基于dbscan的分层点云分割方法 | |
CN110570428B (zh) | 一种从大规模影像密集匹配点云分割建筑物屋顶面片的方法及系统 | |
CN106022381B (zh) | 基于车载激光扫描点云的路灯杆自动提取方法 | |
CN106650640B (zh) | 一种基于激光雷达点云局部结构特征的负障碍物检测方法 | |
CN107292276B (zh) | 一种车载点云聚类方法及系统 | |
CN111815776A (zh) | 综合机载和车载三维激光点云及街景影像的三维建筑物精细几何重建方法 | |
CN113920134B (zh) | 一种基于多线激光雷达的斜坡地面点云分割方法及系统 | |
CN114612488A (zh) | 建筑物单体化信息提取方法、计算机装置及存储介质 | |
CN115063555B (zh) | 高斯分布区域生长的车载LiDAR点云行道树提取方法 | |
CN110047036B (zh) | 基于极坐标格网的地面激光扫描数据建筑物立面提取方法 | |
CN109215112B (zh) | 一种单侧点云模型的标注方法 | |
CN108074232A (zh) | 一种基于体元分割的机载lidar建筑物检测方法 | |
CN117115012A (zh) | 一种道路路面点云标线分割去噪方法 | |
CN114119902A (zh) | 一种基于无人机倾斜三维模型的建筑物提取方法 | |
CN116824379A (zh) | 一种基于多维特征的激光点云建筑物轮廓渐进优化方法 | |
CN116258857A (zh) | 一种面向室外树木激光点云分割与提取方法 | |
CN111783722B (zh) | 一种激光点云的车道线提取方法和电子设备 | |
CN111861946B (zh) | 自适应多尺度车载激光雷达稠密点云数据滤波方法 | |
CN107993242B (zh) | 基于机载LiDAR点云数据缺失区域边界提取方法 | |
CN114972743A (zh) | 一种基于半径扩展的层次级单棵树木提取方法 | |
CN114063107A (zh) | 一种基于激光束的地面点云提取方法 | |
Hao et al. | Automatic building extraction from terrestrial laser scanning data | |
CN116071530B (zh) | 一种基于机载激光点云的建筑物屋顶体素化分割方法 | |
CN116579949B (zh) | 适用于城市多噪声环境下机载点云地面点滤波方法 | |
CN117765006A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |