CN116452842A - 基于注意力机制的精简点云数据集的聚类算法及装置 - Google Patents
基于注意力机制的精简点云数据集的聚类算法及装置 Download PDFInfo
- Publication number
- CN116452842A CN116452842A CN202310415453.XA CN202310415453A CN116452842A CN 116452842 A CN116452842 A CN 116452842A CN 202310415453 A CN202310415453 A CN 202310415453A CN 116452842 A CN116452842 A CN 116452842A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- point
- curvature
- data
- cluster
- 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
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 38
- 230000007246 mechanism Effects 0.000 title claims abstract description 35
- 238000005070 sampling Methods 0.000 claims abstract description 28
- 238000000034 method Methods 0.000 claims abstract description 12
- 238000012545 processing Methods 0.000 claims abstract description 11
- 238000007781 pre-processing Methods 0.000 claims abstract description 7
- 239000013598 vector Substances 0.000 claims description 13
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 6
- 238000012216 screening Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 2
- 230000002159 abnormal effect Effects 0.000 abstract description 4
- 238000001514 detection method Methods 0.000 abstract description 3
- 238000013459 approach Methods 0.000 description 6
- 238000012952 Resampling Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
- G06V10/7625—Hierarchical techniques, i.e. dividing or merging patterns to obtain a tree-like representation; Dendograms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/30—Noise filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于注意力机制的精简点云数据集的聚类算法及装置,方法包括:对点云数据集进行数据预处理;对经过预处理的数据进行密度和曲率的计算;使用基于Attention机制的带有噪声的层次密度聚类算法(HDBSCAN)根据密度和曲率,对点云数据集进行聚类;根据聚类结果对点云数据进行采样,缩小数据集规模,完成点云数据集精简;本发明可以对点云数据集进行有效的分割和筛选,去除噪声和异常点,能够有效地提高点云数据集的质量,减少数据集中的噪点和冗余数据,提高数据的准确性和可靠性;可以提高点云数据集的处理效率和精度,为点云相关领域的物体检测、目标跟踪等任务提供更精确、高效、可靠的数据支持。
Description
技术领域
本发明涉及的技术领域是机器学习和数据科学技术领域,尤其涉及一种基于注意力机制的精简点云数据集的聚类算法及装置。
背景技术
在各种应用场景中,点云数据集被广泛应用于三维建模、机器人导航、自动驾驶、虚拟现实等领域。然而,由于数据量大、质量参差不齐、分布不均匀等问题,点云数据集的分析和处理仍然是一个挑战。尤其是在一些需要高精度、高效率、高准确度的应用场景中,对点云数据集的质量要求更高,需要对其进行进一步的处理和优化。
点云数据集的改善方法主要有以下几种:数据清洗和去噪:通过滤波、平滑等方法,去除点云数据集中的噪声和异常点,以提高数据质量和精度,但数据清洗和去噪可能会损失一些有用信息,例如可能会误判一些真实点为噪声或异常点而被删除。数据重采样:通过对点云数据集进行重采样,可以将原始数据集中的点数减少或增加,以适应不同的应用场景和需求,但数据重采样可能会导致数据信息的损失或重复,例如降采样可能会导致数据集失去一些细节信息,而升采样可能会导致数据集中出现一些重复或无意义的点。数据增强和合成:通过将不同的点云数据集进行组合、叠加、变换等操作,可以生成更加丰富和多样的数据集,以提高数据集的覆盖范围和代表性,但数据增强和合成可能会引入一些虚假的数据信息或噪声,需要进行一定的筛选,以保证生成的数据集的质量和可靠性。
发明内容
本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
鉴于上述存在的问题,提出了本发明。
因此,本发明解决的技术问题是:点云数据集数据量大、质量参差不齐、分布不均匀的问题。
为解决上述技术问题,本发明提供如下技术方案:
第一方面,本发明实施例提供了一种基于注意力机制的精简点云数据集的聚类算法,包括:
对点云数据集进行数据预处理;
对经过预处理的数据进行密度和曲率的计算;
使用基于Attention机制的带有噪声的层次密度聚类算法根据密度和曲率(HDBSCAN),对点云数据集进行聚类筛选;
根据聚类结果对点云数据进行采样,缩小数据集规模,在维持精度不变的情况下,完成对点云数据集的精简。
作为基于注意力机制的精简点云数据集的聚类算法的一种优选方案,其中:
所述数据预处理包括:
对点云数据进行归一化处理,将数组中的数据限制在[0,1]范围内,公式为:
其中,X是原始数据,Xmin和Xmax分别是原始数据的最小值和最大值,
Xnorm是归一化后的数据。
作为基于注意力机制的精简点云数据集的聚类算法的一种优选方案,其中:
所述对经过预处理的数据进行密度和曲率的计算包括:
曲率C是表征点云数据中表面斜率变化的属性,是描述点云表面形貌信息的一种指标,包括平均曲率和高斯曲率,其计算公式为:
Cgaussian=λmax×λmin
λmax和λmin是点云上每个点的主曲率(过曲面上某个点上具有无穷个正交曲率,其中存在一条曲线使得该曲线的曲率为极大,这个曲率为极大值λmax,垂直于极大曲率面的曲率为极小值λmin),主曲率是通过点云上每个点的最小二乘法拟合得到的曲率半径的倒数;
使用协方差矩阵的特征值作为曲率半径,然后再计算曲率,具体的,构建k维树(kdtree),使用k维树查找每个点的最近邻点,并计算每个点的协方差矩阵;对每个协方差矩阵求特征值和特征向量,从而计算每个点的曲率;对曲率进行归一化处理,将其缩放到[0,1]范围内。
作为基于注意力机制的精简点云数据集的聚类算法的一种优选方案,其中:
所述对经过预处理的数据进行密度和曲率的计算还包括:
点云的密度是通过计算每个点周围邻域内的点的数量来估计,使用k维树,给定一个半径,计算每个点在给定半径的圆内所包含的点的数量,作为密度估计值;具体地,点的密度ρ可以用以下公式计算:
其中,n是数据集中数据点的数量,xi是第i个点的位置,ε是一个半径值,f(x)是指示函数,当其参数为真时返回1,否则返回0;
具体的,构建k维树,对于每个点,使用k维树查询点在半径内的邻居,并统计邻居的数量作为该点的密度值;对密度进行归一化处理,将其缩放到[0,1]范围内。
作为基于注意力机制的精简点云数据集的聚类算法的一种优选方案,其中:
所述对点云数据集进行聚类包括:
引入Attention机制,具体步骤如下:首先对每个输入向量通过线性变化来获得键(key)、查询(query)和值(value)三个向量;然后,对查询(query)和键
(key)进行相似度计算,得到注意力分数,具体的步骤为:将查询(query)和键(key)的点积作为注意力分数,输入到softmax函数,进行归一化,得到注意力权重;最后,根据注意力权重和值(value)的加权和得到注意力机制的输出;
使用基于KNN的方法计算数据点的密度,然后计算数据的相互可达距离,实现空间变换,公式如下:
corek(x)=d(x,Nk(x))
其中corek(x)是针对点x的距离其第k个最近点的核心距离,d(x,Nk(x))表示其距离第k个点的距离;
相互可达距离公式为:
dk(a,b)=max{corek(a),corek(b),d(a,b)}
dk(a,b)为a、b点相互可达距离;corek(a)为k近邻下点的核心距离;dk(a,b)为a、b点的欧氏距离。
作为基于注意力机制的精简点云数据集的聚类算法的一种优选方案,其中:
所述对点云数据集进行聚类还包括:构建距离加权图的最小生成树,具体的,通过Prim算法构建最小生成树,并按距离对树的边缘进行排序并迭代,为每个树的边缘创建一个新的合并集群;设置最小集群大小,压缩数据集层结构,采用λ=1/d计算各簇类的稳定性,并从数据集中提取稳定性更好的集群作为最终聚类结果,其中,评估稳定性的公式为:
∑p∈cluster(λp-λb)
其中,λp为p点脱离所在集群的λ值;λb为集群分裂为自身的λ值。
作为基于注意力机制的精简点云数据集的聚类算法的一种优选方案,其中:
所述根据聚类结果对点云数据进行采样包括:根据聚类结果,将簇标签为-1的点,也即噪声点,从点云数据中删除;计算每个簇的权重,所述每个簇的权重定义为每个簇包含的点数与聚类结果中总点数之比;为每个簇进行加权采样。
作为基于注意力机制的精简点云数据集的聚类算法的一种优选方案,其中:
所述为每个簇进行加权采样包括:对于一个簇A,先计算需要采样的点数,采样点数为簇A的权重乘以输入点云数据的总数,并向上取整;如果簇A内点的数量小于等于需要采样的点数,则直接将簇A内的所有点添加到采样结果中,否则,从簇A内随机抽样指定数量的点加入到采样结果中;从采样结果中选取指定数量的数据作为输出结果,保证每个点云数据的采样点数相同。
第二方面,本发明实施例提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任一实施例所述的基于注意力机制的精简点云数据集的聚类算法。
第三方面,本发明实施例提供了一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现所述的基于注意力机制的精简点云数据集的聚类算法。
本发明的有益效果:本方法可以对点云数据集进行有效的分割和筛选,去除噪声和异常点,能够有效地提高点云数据集的质量,减少数据集中的噪点和冗余数据,提高数据的准确性和可靠性;可以提高点云数据集的处理效率和精度,为点云相关领域的物体检测、目标跟踪等任务提供更精确、高效、可靠的数据支持。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
图1是本发明第一个实施例所述的基于注意力机制的精简点云数据集的聚类算法的整体流程图;
图2是本发明第二个实施例所述的基于注意力机制的精简点云数据集的聚类算法的仿真实例中经采样后的点云数据与原始数据可视化结果对比图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
同时在本发明的描述中,需要说明的是,术语中的“上、下、内和外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一、第二或第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
本发明中除非另有明确的规定和限定,术语“安装、相连、连接”应做广义理解,例如:可以是固定连接、可拆卸连接或一体式连接;同样可以是机械连接、电连接或直接连接,也可以通过中间媒介间接相连,也可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
实施例1
参照图1,为本发明的第一个实施例,该实施例提供了一种基于注意力机制的精简点云数据集的聚类算法,包括:
S1:对点云数据集进行数据预处理;
具体的,所述数据预处理包括:
对点云数据进行归一化处理,将数组中的数据限制在[0,1]范围内,公式为:
其中,X是原始数据,Xmin和Xmax分别是原始数据的最小值和最大值,Xnorm是归一化后的数据。
S2:对经过预处理的数据进行密度和曲率的计算;
具体的,所述对经过预处理的数据进行密度和曲率的计算包括:
曲率C是表征点云数据中表面斜率变化的属性,是描述点云表面形貌信息的一种指标,包括平均曲率和高斯曲率,其计算公式为:
Cgaussian=λmax×λmin
λmax和λmin是点云上每个点的主曲率(过曲面上某个点上具有无穷个正交曲率,其中存在一条曲线使得该曲线的曲率为极大,这个曲率为极大值λmax,垂直于极大曲率面的曲率为极小值λmin),主曲率是通过点云上每个点的最小二乘法拟合得到的曲率半径的倒数;
使用协方差矩阵的特征值来估计曲率半径,然后再计算曲率,具体的,构建k维树,使用k维树查找每个点的最近邻点,并计算每个点的协方差矩阵;对每个协方差矩阵求特征值和特征向量,从而计算每个点的曲率;对曲率进行归一化处理,将曲率缩放到[0,1]范围内。
更进一步的,点云的密度通过计算每个点周围邻域内的点的数量来估计,使用k维树,给定一个半径,计算每个点在给定半径的圆内所包含的点的数量,作为密度估计值;具体地,点的密度ρ可以用以下公式计算:
其中,n是数据集中数据点的数量,xi是第i个点的位置,ε是一个半径值,f(x)是指示函数,当其参数为真时返回1,否则返回0;
具体的,构建k维树,对于每个点,使用k维树查询点在半径内的邻居,并统计邻居的数量作为该点的密度值;对曲率进行归一化处理,将其缩放到[0,1]范围内。
应说明的是,点云数据集中常用的特征如下:
1.位置:点云数据集中最基本的特征就是每个点的位置信息,通常由x、y、z三个坐标值表示。这些坐标值可以用来计算点之间的距离和方向等信息。
2.颜色:点云数据集中的点通常还包含颜色信息,这些信息可以表示场景中的物体的颜色、光照强度等等。颜色信息通常由红、绿、蓝三个颜色通道的数值表示。
3.法向量:点云数据集中的点通常还包含法向量信息,用来表示每个点所处的曲面的方向和倾斜程度。法向量信息通常用来计算曲面的光照效果和表面细节等。
4.曲率:点云数据集中的点还可以包含曲率信息,表征点云数据中表面斜率变化的属性,是描述点云表面形貌信息的一种指标。曲率信息通常可以用来进行形状分析、物体检测等任务。
5.密度:密度信息指的是点云数据中每个单位区域(例如每个立方厘米)内包含的点的数量。在点云数据处理中,密度信息是非常重要的,因为它可以用来描述点云数据的采样密度、空间分布和表面细节等信息。
应说明的是,在点云分类任务中,不同形状的物体的密度和曲率往往是不同的,其最具有区分性,故本方法选择曲率和密度作为输入聚类算法的特征。
S3:使用基于Attention机制的带有噪声的层次密度聚类算法(HDBSCAN),根据密度和曲率,对点云数据集进行聚类筛选;
具体的,引入Attention机制,具体步骤如下:首先对每个输入向量通过线性变化来获得键(key)、查询(query)和值(value)三个向量;然后,对查询(query)和键(key)进行相似度计算,得到注意力分数,具体的步骤为:将查询(query)和键(key)的点积作为注意力分数,输入到softmax函数,进行归一化,得到注意力权重;最后,根据注意力权重和值(value)的加权和得到注意力机制的输出;
使用基于KNN的方法计算数据点的密度,然后计算数据的相互可达距离,实现空间变换,公式如下:
corek(x)=d(x,Nk(x))
其中corek(x)是针对点x的距离其第k个最近点的核心距离,d(x,Nk(x))表示其距离第k个点的距离;
相互可达距离公式为:
dk(a,b)=max{corek(a),corek(b),d(a,b)}
dk(a,b)为a、b点相互可达距离;corek(a)为k近邻下点的核心距离;dk(a,b)为a、b点的欧氏距离。
更进一步的,构建距离加权图的最小生成树,具体的,通过Prim算法构建最小生成树,并按距离对树的边缘进行排序并迭代,为每个树的边缘创建一个新的合并集群;设置最小集群大小,压缩数据集层结构,采用λ=1/d计算各簇的稳定性,并从数据集中提取稳定性更好的集群作为最终聚类结果,其中,评估稳定性的公式为:
∑p∈cluster(λp-λb)
其中,λp为p点脱离所在集群的λ值;λb为集群分裂为自身的λ值。
应说明的是,Attention机制是一种机器学习中常用的技术,用于对输入的信息进行加权处理,以便在模型中更好地捕捉相关的特征。Attention机制可以将不同部分的信息加权组合,以使模型更好地关注与所要求解的任务相关的信息,本方法将Attention机制引入到了带有噪声的层次密度聚类算法(HDBSCA N算法)中,以获得更好的特征。
S4:根据聚类结果对点云数据进行采样,缩小数据集规模,在维持精度不变的情况下,完成对点云数据集的精简。
具体的,所述根据聚类结果对点云数据进行采样包括:根据聚类结果,将簇标签为-1的点,也即噪声点,从点云数据中删除;计算每个簇的权重,所述每个簇的权重定义为每个簇包含的点数与聚类结果中总点数之比;为每个簇进行加权采样。
更进一步的,所述为每个簇进行加权采样包括:对于一个簇A,先计算需要采样的点数,采样点数为簇A的权重乘以输入点云数据的总数,并向上取整;如果簇A内点的数量小于等于需要采样的点数,则直接将簇A内的所有点添加到采样结果中,否则,从簇A内随机抽样指定数量的点加入到采样结果中;从采样结果中选取指定数量的数据作为输出结果,保证每个点云数据的采样点数相同。
实施例2
参照图2,为本发明的一个实施例,提供了一种基于注意力机制的精简点云数据集的聚类算法,为了验证本发明的有益效果,通过仿真实验进行科学论证。
本次测试的数据集为modelnet40_normal_resampled,该数据集是用于分类的点云数据集,包含了40个类别,训练集有9843个点云数据,验证集有2468个点云数据,每一个点云数据(txt格式)表示一个具体的类别对象,点云数据由很多的点组成,在ModelNet40数据集中,每个点包含6个维度的信息,分别是[x,y,z,nx,ny,nz],其中,(x,y,z)表示该点在空间中的坐标,(nx,ny,nz)表示该点在空间中的法向量。
首先读入每个点云数据的信息,进行密度计算(半径设置为1)和曲率计算,接着对所得到的密度和曲率特征进行归一化处理,并将其作为基于Attention机制的HDBSCAN聚类算法的输入(该算法的结果主要受两个参数的影响,这两个参数设置为min_cluster_size=80,min_sample=10),然后根据聚类结果进行数据的筛选和采样(采样点数n=5000),经采样后的点云数据可视化结果如图2,其中,图a为筛选过后的airplane,图b为官方数据的airplane,最后将筛选出的数据输入到pointnet++的分类网络中进行模型训练(batch_size=24,epoch=200,learning_rate=0.001),并进行验证,结果如表5-1所示。
表5-1模型准确率对比
模型 | 实例准确率 | 分类准确率 |
官方 | 0.905825 | 0.869462 |
本方法 | 0.940291 | 0.914231 |
表格中的实例准确率定义为:在测试集上正确分类的实例数与总实例数之间的比率,而不考虑类别。其公式如下:
其中k代表正确分类的实例数,n代表总实例数。
表格中的分类准确率是指分别计算每个类别的准确率,并对所有类的结果进行平均。其公式如下:
其中acci是类别i的预测准确率,M为类别总数。
分析表5-1可知,经过本方法筛选出的数据,训练出的模型比官方数据训练出来的模型在实例准确率和分类准确率上均有显著提升。这代表通过本方法筛选出了重要的数据,减少了数据集的规模,达到了精简数据集的目的。
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (10)
1.一种基于注意力机制的精简点云数据集的聚类算法,其特征在于,包括:
对点云数据集进行数据预处理;
对经过预处理的数据进行密度和曲率的计算;
使用基于Attention机制的带有噪声的层次密度聚类算法(HDBSCAN),根据密度和曲率,对点云数据集进行聚类筛选;
根据聚类结果对点云数据进行采样,缩小数据集规模,在维持精度不变的情况下,完成对点云数据集的精简。
2.如权利要求1所述的基于注意力机制的精简点云数据集的聚类算法,其特征在于,所述数据预处理包括:
对点云数据进行归一化处理,将数组中的数据限制在[0,1]范围内,公式为:
其中,X是原始数据,Xmin和Xmax分别是原始数据的最小值和最大值,Xnorm是归一化后的数据。
3.如权利要求1或2所述的基于注意力机制的精简点云数据集的聚类算法,其特征在于,所述对经过预处理的数据进行密度和曲率的计算包括:
曲率C是表征点云数据中表面斜率变化的属性,是描述点云表面形貌信息的一种指标,包括平均曲率和高斯曲率,其计算公式为:
Cgaussian=λmax×λmin
λmax和λmin是点云上每个点的主曲率(过曲面上某个点上具有无穷个正交曲率,其中存在一条曲线使得该曲线的曲率为极大,这个曲率为极大值λmax,垂直于极大曲率面的曲率为极小值λmin),主曲率是通过点云上每个点的最小二乘法拟合得到的曲率半径的倒数;
使用协方差矩阵的特征值作为曲率半径,然后再计算曲率,具体的,构建k维树(kdtree),使用k维树查找每个点的最近邻点,并计算每个点的协方差矩阵;对每个协方差矩阵求特征值和特征向量,从而计算每个点的曲率;对曲率进行归一化处理,将其缩放到[0,1]范围内。
4.如权利要求3所述的基于注意力机制的精简点云数据集的聚类算法,其特征在于,所述对经过预处理的数据进行密度和曲率的计算,还包括:
点云的密度是通过计算每个点周围邻域内的点的数量来估计的,使用k维树(kdtree),给定一个半径,计算每个点在给定半径的圆内所包含的点的数量,作为密度估计值;具体地,点的密度ρ可以用以下公式计算:
其中,n是数据集中数据点的数量,xi是第i个点的位置,ε是一个半径值,f(x)是指示函数,当其参数为真时返回1,否则返回0;
具体的,构建k维树,对于每个点,使用k维树查询点在半径内的邻居,并统计邻居的数量作为该点的密度值;对密度进行归一化处理,将其缩放到[0,1]范围内。
5.如权利要求4所述的基于注意力机制的精简点云数据集的聚类算法,其特征在于,所述对点云数据集进行聚类筛选包括:
引入Attention机制,具体步骤如下:首先对每个输入向量通过线性变化来获得键(key)、查询(query)和值(value)三个向量;然后,对查询(query)和键(key)进行相似度计算,得到注意力分数,具体的步骤为:将查询(query)和键(key)的点积作为注意力分数,输入到softmax函数,进行归一化,得到注意力权重;最后,根据注意力权重和值(value)的加权和得到注意力机制的输出;
使用基于KNN的方法计算数据点的密度,然后计算数据的相互可达距离,实现空间变换,公式如下:
corek(x)=d(x,Nk(x))
其中corek(x)是针对点x的距离其第k个最近点的核心距离,d(x,Nk(x))表示其距离第k个点的长度;
相互可达距离公式为:
dk(a,b)=max{corek(a),corek(b),d(a,b)}
dk(a,b)为a、b点相互可达距离;corek(a)为k近邻下点的核心距离;dk(a,b)为a、b点的欧氏距离。
6.如权利要求5所述的基于注意力机制的精简点云数据集的聚类算法,其特征在于,所述对点云数据集进行聚类筛选还包括:构建距离加权图的最小生成树,具体的,通过Prim算法构建最小生成树,并按距离对树的边缘进行排序并迭代,为每个树的边缘创建一个新的合并集群;设置最小集群大小,压缩数据集层结构,采用λ=1/d计算各簇类的稳定性,并从数据集中提取稳定性更好的集群作为最终聚类结果,其中,评估稳定性的公式为:
∑p∈cluster(λp-λb)
其中,λp为p点脱离所在集群的λ值;λb为集群分裂为自身的λ值。
7.如权利要求6所述的基于注意力机制的精简点云数据集的聚类算法,其特征在于,所述根据聚类结果对点云数据进行采样包括:根据聚类结果,将簇标签为-1的点,也即噪声点,从点云数据中删除;计算每个簇的权重,所述每个簇的权重定义为每个簇包含的点数与聚类结果中总点数之比;为每个簇进行加权采样。
8.如权利要求7所述的基于注意力机制的精简点云数据集的聚类算法,其特征在于,所述为每个簇进行加权采样包括:对于一个簇A,先计算需要采样的点数,采样点数为簇A的权重乘以输入点云数据的总数,并向上取整;如果簇A内点的数量小于等于需要采样的点数,则直接将簇A内的所有点添加到采样结果中,否则,从簇A内随机抽样指定数量的点加入到采样结果中;从采样结果中选取指定数量的数据作为输出结果,保证每个点云数据的采样点数相同。
9.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至8任意一项所述基于注意力机制的精简点云数据集的聚类算法的步骤。
10.一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至8任意一项所述基于注意力机制的精简点云数据集的聚类算法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310415453.XA CN116452842A (zh) | 2023-04-18 | 2023-04-18 | 基于注意力机制的精简点云数据集的聚类算法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310415453.XA CN116452842A (zh) | 2023-04-18 | 2023-04-18 | 基于注意力机制的精简点云数据集的聚类算法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116452842A true CN116452842A (zh) | 2023-07-18 |
Family
ID=87123354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310415453.XA Pending CN116452842A (zh) | 2023-04-18 | 2023-04-18 | 基于注意力机制的精简点云数据集的聚类算法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116452842A (zh) |
-
2023
- 2023-04-18 CN CN202310415453.XA patent/CN116452842A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110188228B (zh) | 基于草图检索三维模型的跨模态检索方法 | |
Unnikrishnan et al. | Toward objective evaluation of image segmentation algorithms | |
US8015125B2 (en) | Multi-scale segmentation and partial matching 3D models | |
JP2018205937A (ja) | 画像検索装置及びプログラム | |
US9323886B2 (en) | Performance predicting apparatus, performance predicting method, and program | |
CN110599506B (zh) | 一种复杂异形曲面机器人三维测量的点云分割方法 | |
US20090028442A1 (en) | Method And Apparatus For Determining Similarity Between Surfaces | |
CN101710422B (zh) | 基于全局流形原型聚类算法与分水岭算法的图像分割方法 | |
CN106257498A (zh) | 基于异构纹理特征的锌浮选工况状态划分方法 | |
CN106844620B (zh) | 一种基于视图的特征匹配三维模型检索方法 | |
CN104038792B (zh) | 用于iptv监管的视频内容分析方法及设备 | |
Haindl et al. | Model-based texture segmentation | |
CN106980878B (zh) | 三维模型几何风格的确定方法及装置 | |
CN117351371A (zh) | 一种基于深度学习的遥感图像目标检测方法 | |
CN111639712A (zh) | 一种基于密度峰值聚类和梯度提升算法的定位方法及系统 | |
CN111640138A (zh) | 一种目标跟踪方法、装置、设备及存储介质 | |
CN116452842A (zh) | 基于注意力机制的精简点云数据集的聚类算法及装置 | |
CN115588178A (zh) | 一种高精地图要素自动化提取的方法 | |
LU500715B1 (en) | Hyperspectral Image Classification Method Based on Discriminant Gabor Network | |
CN116089639A (zh) | 一种辅助三维建模方法、系统、装置和介质 | |
US9443443B2 (en) | Personalized studying path generating method in serious game | |
Gizatullin et al. | Method for Constructing Texture Features based on an Image Weight Model | |
CN114677530A (zh) | 一种基于小波形状描述子的聚类算法有效性评价方法、设备及介质 | |
CN114492665A (zh) | 一种基于图像结构相似度的故障诊断模型性能评价方法 | |
CN113936246A (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 |