CN116912312A - 一种面向复杂曲面构件的三维孔类定位方法 - Google Patents
一种面向复杂曲面构件的三维孔类定位方法 Download PDFInfo
- Publication number
- CN116912312A CN116912312A CN202311190948.3A CN202311190948A CN116912312A CN 116912312 A CN116912312 A CN 116912312A CN 202311190948 A CN202311190948 A CN 202311190948A CN 116912312 A CN116912312 A CN 116912312A
- Authority
- CN
- China
- Prior art keywords
- point
- point cloud
- cloud data
- current
- points
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000012545 processing Methods 0.000 claims abstract description 16
- 239000013598 vector Substances 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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
-
- 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/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种面向复杂曲面构件的三维孔类定位方法,包括:获取点云数据,通过基于邻域夹角比较的方法识别点云数据中的轮廓,得到点云边界轮廓;对点云边界轮廓进行八叉树处理和搜索实现连通域划分,得到全部边界点云的聚类结果;聚类结果为多个圆孔轮廓;判断每个圆孔轮廓是否满足预设条件,若当前圆孔轮廓满足预设条件,则选择基于超定方程求解的方法拟合当前圆孔轮廓的三维圆孔,若当前圆孔轮廓不满足预设条件,则选择基于RANSAC法拟合当前圆孔轮廓的三维圆孔,得到参数定位信息,完成所有圆孔轮廓的定位。可适用于多种场景下的圆孔定位,鲁棒性强,有效提高定位的精度。
Description
技术领域
本发明属于三维视觉识别技术领域,特别是涉及一种面向复杂曲面构件的三维孔类定位方法。
背景技术
三维圆孔特征识别是一种重要的视觉处理技术,它在工业制造、逆向工程、检测和分析等领域中发挥着重要作用。例如在加工制造过程中,准确地检测和识别圆孔能帮助机器人或设备确定自身位置和方向,还可用于加工过程中的质量控制等;在逆向工程中可以快速而准确地获取被逆向分析的产品或部件的几何信息,包括圆孔的大小、位置、形状等等,提高逆向分析结果的准确性和可靠性;在检测分析方面,三维圆孔识别技术可以帮助自动化系统识别、定位和测量圆孔,以检测圆孔的尺寸、形状、位置等参数是否符合规范和标准,从而提高产品的质量和安全性。此外,圆孔识别还可以在制造过程中进行圆孔的实时监测,如果圆孔出现了偏差或异常,自动化系统可以及时调整加工参数,以纠正问题并避免不良后果,以保证加工质量和生产效率提高产品和系统的可靠性和性能。总之,研究点云圆孔特征识别算法对于发展机器视觉和图像处理领域具有重大的理论意义和实践意义。该研究不仅可以提高圆孔识别的精确度和效率,还可以为自动化视觉系统的研发和应用提供更广泛的思路和方法。
目前三维圆孔定位方法有基于几何特征的方法和基于机器学习的方法。基于几何特征方法需要大量人工参与设置参数,灵活性差,同时测量误差较大;基于机器学习的方法需要大量的计算资源和时间,同时训练模型的过程较为繁琐,实时性差。因此,亟需一种新的三维圆孔定位方法来解决上述问题。
发明内容
针对以上技术问题,本发明提供一种面向复杂曲面构件的三维孔类定位方法。
本发明解决其技术问题采用的技术方案是:
一种面向复杂曲面构件的三维孔类定位方法,方法包括以下步骤:
S100:获取点云数据,通过基于邻域夹角比较的方法识别点云数据中的轮廓,得到点云边界轮廓;
S200:对点云边界轮廓进行八叉树处理和搜索实现连通域划分,得到全部边界点云的聚类结果;聚类结果为多个圆孔轮廓;
S300:判断每个圆孔轮廓是否满足预设条件,若当前圆孔轮廓满足预设条件,则选择基于超定方程求解的方法拟合当前圆孔轮廓的三维圆孔,若当前圆孔轮廓不满足预设条件,则选择基于RANSAC法拟合当前圆孔轮廓的三维圆孔,得到参数定位信息,完成所有圆孔轮廓的定位。
优选地,S100包括:
S110:获取点云数据,对点云数据中的当前点进行邻域搜索得到投影点集,并计算最大夹角;
S120:判断最大夹角是否大于预设的夹角阈值;若是,则当前点为边界点并保存;若否,则该点不是边界点,进入点云数据的下一点,返回S110,直至遍历点云数据中的所有点。
优选地,S110包括:
S111:定义输入的点云,假设当前点为/>,选取/>表面邻域点集/>,对/>进行最小二乘平面拟合,拟合所得平面法向为/>的法线/>,其中,1≤i≤n,1≤j,k≤n;
S112:将N向的切平面投影,得到投影点集,经过投影后/>的位置不变;
S113:将投影点集以/>为中心,按照顺时针或逆时针的顺序,与/>连接形成一系列夹角/>,其中/>;
S114:找到中的最大夹角/>;
S120包括:当大于设置的角度阈值/>时,判定其为边界点;否则不是边界点,进入点云数据的下一点,返回S111,直至遍历点云数据中的所有点,得到边界点云。
优选地,S111中邻域点集N的选取方法具体为:
计算所有点云的平均距离;
在0.4π~0.8π之间选择角度阈值;
根据所有点云的平均距离和角度阈值得到轮廓提取最佳搜索半径:
,其中,/>为常数,R为待识别圆孔的半径;
以最佳搜索半径为圆内的所有点云选取为邻域点集N。
优选地,S200包括:
S210:对点云边界轮廓进行八叉树处理,通过Knn搜索将八叉树每个分块的中心点聚类;
S220:通过八叉树的体素搜索方式得到全部边界点云的聚类结果,其中,聚类结果为多个圆孔轮廓。
优选地,S210具体为:
S211将边界点云做八叉树处理,并将八叉树内部所有分块的中心点提取出来,重新组合成新的点云数据/>;
S212:从点云数据B选取一种子点,假设当前点为,对/>进行Knn搜索找到k个搜索点/>,并获取到搜索点/>与当前点/>的距离值,其中,1≤j≤n,1≤i≤k;
S213:设定距离阈值对D进行判定,当/>时,即可认定搜索点/>与当前点/>标签一致,标记;若/>,则认为搜索点/>与当前点/>标签不一致,跳过该点;其中,1≤i≤k;
S214:对点云数据B中未实现标记的点云重复S212和S213步骤,实现八叉树结构标签连通域聚类,得到带h个标签的点云,其中/>,...,/>,其中,1 < y < z < n,同时计算每个标签的点云数目是否在设定的聚类区间[min,max]内,如果不在,删除该标签,其中,min为聚类区间中点云数据的最小值,max为聚类区间中点云数据的最大值;
S220具体为:遍历T中每个标签聚类,定义中的每个点为新的起始点,搜索方法采用八叉树的体素搜索方式,搜索八叉树内部除中心点外的其余点,并对搜索后的点打上中心点相同的标签,最终输出h个聚类/>,/>,... ,/>,其中,1≤x≤h,1 < s < g < m。
优选地,预设条件包括:
当前圆孔轮廓中的点云数据噪音数量在预设噪音数量范围内、当前圆孔轮廓中的离群点数量在预设离群点数量范围内以及当前圆孔轮廓的圆孔半径在预设的半径范围内。
优选地,S300中选择基于RANSAC法拟合当前圆孔轮廓的三维圆孔,包括:
S310:对某一聚类点云,遍历所有点云,计算每个点/>与其最近的c个邻近点/>之间的平均距离/>;计算所有平均距离的均值/>与标准差/>,设定距离阈值/>,/>是比例系数;遍历点云/>,剔除平均距离/>大于/>的点,得到滤波后的点云数据集;
S320:从点云数据集中随机选取三个点并假设为内点子集X;根据内点子集X估计圆的参数模型,得到圆心坐标、半径和法向量;
S330:遍历除内点子集X以外的点云数据集中的所有数据,若数据点代入圆的参数模型后,得到的结果与内点子集X的估计结果误差在一定阈值内,则将当前数据点标记为内点,否则为外点;
S340:所有内点组成集合F,若F中内点的个数满足给定的内点个数阈值B,则用F中的所有内点重新估计模型参数,结束算法。
优选地,S340还包括:
若F中内点个数少于阈值E,则重新选择三个点,重复S320和S330,其中E小于B;
经过预设迭代次数阈值迭代后,选择一个内点数量最多的M集,用M集中所有内点估计模型参数,结束算法。
优选地,S300中选择基于超定方程求解的方法拟合当前圆孔轮廓的三维圆孔,包括:
S350:对某一聚类点云,根据提取的/>个三维坐标数据,通过最小二乘法求解平面法向量;其中/>,/>;
S360:由于圆弧上任意两点连线的中垂线必经过圆心,因此通过求解线性方程组可计算出圆心坐标:
;
其中,/>,/>,....,,/>,...,/>;
S370:遍历点云数据,计算每个点到圆心的距离,得到的平均距离作为圆的半径,计算式为:,其中圆心坐标,最终得到定位信息/>,G为所述聚类点云/>内的点云数据总数。
上述一种面向复杂曲面构件的三维孔类定位方法,可适用于多种场景下的圆孔定位,鲁棒性强,有效提高定位的精度。
附图说明
图1为本发明一实施例中一种面向复杂曲面构件的三维孔类定位方法流程图;
图2为本发明另一实施例中一种面向复杂曲面构件的三维孔类定位方法流程图;
图3为本发明一实施例中输入的点云数据;
图4为本发明一实施例中圆孔轮廓定位结果;
图5为本发明一实施例中圆孔定位结果;
图6为本发明一实施例中圆孔定位误差结果。
具体实施方式
为了使本技术领域的人员更好地理解本发明的技术方案,下面结合附图对本发明作进一步的详细说明。
在一个实施例中,如图1和图2所示,一种面向复杂曲面构件的三维孔类定位方法,方法包括以下步骤:
S100:获取点云数据,通过基于邻域夹角比较的方法识别点云数据中的轮廓,得到点云边界轮廓。
在一个实施例中,S100包括:
S110:获取点云数据,对点云数据中的当前点进行邻域搜索得到投影点集,并计算最大夹角;
S120:判断最大夹角是否大于预设的夹角阈值;若是,则当前点为边界点并保存;若否,则该点不是边界点,进入点云数据的下一点,返回S110,直至遍历点云数据中的所有点。
具体地,图3为本实施例中输入的点云数据,点云数量为226305个,圆孔半径R为2.5mm。
在一个实施例中,S110包括:
S111:定义输入的点云,假设当前点为/>,选取/>表面邻域点集/>,对/>进行最小二乘平面拟合,拟合所得平面法向为/>的法线/>,其中,1≤i≤n,1≤j,k≤n;
S112:将N向的切平面投影,得到投影点集,经过投影后/>的位置不变;
S113:将投影点集以/>为中心,按照顺时针或逆时针的顺序,与/>连接形成一系列夹角/>,其中/>;
S114:找到中的最大夹角/>;
S120包括:当大于设置的角度阈值/>时,判定其为边界点;否则不是边界点,进入点云数据的下一点,返回S111,直至遍历点云数据中的所有点,得到边界点云。
在一个实施例中,S111中邻域点集N的选取方法具体为:
计算所有点云的平均距离;
在0.4π~0.8π之间选择角度阈值;
根据所有点云的平均距离和角度阈值得到轮廓提取最佳搜索半径:
,其中,/>为常数,R为待识别圆孔的半径;
以最佳搜索半径为圆内的所有点云选取为邻域点集N。
进一步地,的具体取值与获取点云数据的设备有关,搜索数量与搜索半径的关系为:搜索数量=/>。实际选取范围内较小的半径可缩短运行时间。
在本实施例中,选择搜索半径的具体过程为:在实例中计算得到点云分辨率为0.056,经多次实验总结得该点云扫描仪的m值为8,角度阈值/>选择0.6π,由公式得最佳搜索半径/>的选择为/>,选择/>为0.48,得到轮廓识别结果如图4所示。
S200:对点云边界轮廓进行八叉树处理和搜索实现连通域划分,得到全部边界点云的聚类结果;聚类结果为多个圆孔轮廓。
在一个实施例中,S200包括:
S210:对点云边界轮廓进行八叉树处理,通过Knn搜索将八叉树每个分块的中心点聚类;
S220:通过八叉树的体素搜索方式得到全部边界点云的聚类结果,其中,聚类结果为多个圆孔轮廓。
在一个实施例中,S210具体为:
S211将边界点云做八叉树处理,并将八叉树内部所有分块的中心点提取出来,重新组合成新的点云数据/>;
S212:从点云数据B选取一种子点,假设当前点为,对/>进行Knn搜索找到k个搜索点/>,并获取到搜索点/>与当前点/>的距离值,其中,1≤j≤n,1≤i≤k;
S213:设定距离阈值对D进行判定,当/>时,即可认定搜索点/>与当前点/>标签一致,标记;若/>,则认为搜索点/>与当前点/>标签不一致,跳过该点;其中,1≤i≤k;
S214:对点云数据B中未实现标记的点云重复S212和S213步骤,实现八叉树结构标签连通域聚类,得到带h个标签的点云,其中/>,...,/>,其中,1 < y < z < n,同时计算每个标签的点云数目是否在设定的聚类区间[min,max]内,如果不在,删除该标签,其中,min为聚类区间中点云数据的最小值,max为聚类区间中点云数据的最大值;
S220具体为:遍历T中每个标签聚类,定义中的每个点为新的起始点,搜索方法采用八叉树的体素搜索方式,搜索八叉树内部除中心点外的其余点,并对搜索后的点打上中心点相同的标签,最终输出h个聚类/>,/>,... ,/>,其中,1≤x≤h,1 < s < g < m。
S300:判断每个圆孔轮廓是否满足预设条件,若当前圆孔轮廓满足预设条件,则选择基于超定方程求解的方法拟合当前圆孔轮廓的三维圆孔,若当前圆孔轮廓不满足预设条件,则选择基于RANSAC法拟合当前圆孔轮廓的三维圆孔,得到参数定位信息,完成所有圆孔轮廓的定位。
在一个实施例中,预设条件包括:
当前圆孔轮廓中的点云数据噪音数量在预设噪音数量范围内、当前圆孔轮廓中的离群点数量在预设离群点数量范围内以及当前圆孔轮廓的圆孔半径在预设的半径范围内。
具体地,当点云数据噪音较多或存在较多离群点或当圆孔半径过大时,选择基于RANSAC法拟合三维圆孔可实现较小误差。其他情况选择基于超定方程求解的方法拟合三维圆孔,其识别效果稳定且平均误差小。
在一个实施例中,S300中选择基于RANSAC法拟合当前圆孔轮廓的三维圆孔,包括:
S310:对某一聚类点云,遍历所有点云,计算每个点/>与其最近的c个邻近点/>之间的平均距离/>;计算所有平均距离的均值/>与标准差/>,设定距离阈值/>,/>是比例系数;遍历点云/>,剔除平均距离/>大于/>的点,得到滤波后的点云数据集;
S320:从点云数据集中随机选取三个点并假设为内点子集X;根据内点子集X估计圆的参数模型,得到圆心坐标、半径和法向量;
S330:遍历除内点子集X以外的点云数据集中的所有数据,若数据点代入圆的参数模型后,得到的结果与内点子集X的估计结果误差在一定阈值内,则将当前数据点标记为内点,否则为外点;
S340:所有内点组成集合F,若F中内点的个数满足给定的内点个数阈值B,则用F中的所有内点重新估计模型参数,结束算法。
在一个实施例中,S340还包括:
若F中内点个数少于阈值E,则重新选择三个点,重复S320和S330,其中E小于B;
经过预设迭代次数阈值迭代后,选择一个内点数量最多的M集,用M集中所有内点估计模型参数,结束算法。
在一个实施例中,S300中选择基于超定方程求解的方法拟合当前圆孔轮廓的三维圆孔,包括:
S350:对某一聚类点云,根据提取的/>个三维坐标数据,通过最小二乘法求解平面法向量;其中/>,/>;
S360:由于圆弧上任意两点连线的中垂线必经过圆心,因此通过求解线性方程组可计算出圆心坐标:
;
其中,/>,/>,....,,/>,...,/>;
S370:遍历点云数据,计算每个点到圆心的距离,得到的平均距离作为圆的半径,计算式为:,其中圆心坐标,最终得到定位信息/>,G为所述聚类点云/>内的点云数据总数。
具体地,最后绘制原始点云数据和拟合的空间圆,如图5所示;并显示圆心坐标、半径和法向量的数值,整合计算得到的定位误差如图6所示。
通过本发明所构思的以上技术方案,与现有技术相比,具有以下有益效果:
1.灵活性和易用性。圆孔轮廓识别时搜索半径和角度阈值的选择直接影响轮廓提取效果,参数过大或过小会导致边界轮廓被错误地标记为非边界或非边界被错误地标记为边界,同时参数设置不合理会导致计算的复杂度增加,运行时间增大。本发明可以根据圆孔大小确定算法中的搜索半径和角度阈值等参数,减少人工参与,提高了识别的灵活性和易用性。
2.适用于多种场景下的圆孔定位。由于不同应用圆孔定位场景下圆孔可能具有不同的尺寸和形状,本发明可计算出对应尺寸圆孔轮廓识别的最佳参数,具有一定的自适应性;同时还可根据点云特点选择不同的三维圆拟合方法,以适应不同场合下的圆孔准确定位。
3.鲁棒性强。本发明在两个方面提高算法的抗噪能力:一是连通域划分中通过设置聚类区间[min,max]滤去离群点;二是为进一步减小离群点对三维圆拟合的影响,采用改进的RANSAC法拟合三维圆,提高定位的精确度。
4.运行速度快且推广性强。深度学习定位圆孔的方法需要大量的计算资源和时间,而本发明可在短时间内实现多个圆孔和不同尺寸圆孔的定位。
以上对本发明所提供的一种面向复杂曲面构件的三维孔类定位方法进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种面向复杂曲面构件的三维孔类定位方法,其特征在于,所述方法包括以下步骤:
S100:获取点云数据,通过基于邻域夹角比较的方法识别所述点云数据中的轮廓,得到点云边界轮廓;
S200:对所述点云边界轮廓进行八叉树处理和搜索实现连通域划分,得到全部边界点云的聚类结果;所述聚类结果为多个圆孔轮廓;
S300:判断每个圆孔轮廓是否满足预设条件,若当前圆孔轮廓满足预设条件,则选择基于超定方程求解的方法拟合当前圆孔轮廓的三维圆孔,若当前圆孔轮廓不满足预设条件,则选择基于RANSAC法拟合当前圆孔轮廓的三维圆孔,得到参数定位信息,完成所有圆孔轮廓的定位。
2.根据权利要求1所述的方法,其特征在于,S100包括:
S110:获取点云数据,对所述点云数据中的当前点进行邻域搜索得到投影点集,并计算最大夹角;
S120:判断所述最大夹角是否大于预设的夹角阈值;若是,则当前点为边界点并保存;若否,则该点不是边界点,进入所述点云数据的下一点,返回S110,直至遍历所述点云数据中的所有点。
3.根据权利要求2所述的方法,其特征在于,S110包括:
S111:定义输入的点云,假设当前点为/>,选取所述/>表面邻域点集/>,对所述/>进行最小二乘平面拟合,拟合所得平面法向为/>的法线/>,其中,1≤i≤n,1≤j,k≤n;
S112:将所述N向所述的切平面投影,得到投影点集,经过投影后/>的位置不变;
S113:将所述投影点集以/>为中心,按照顺时针或逆时针的顺序,与/>连接形成一系列夹角/>,其中/>;
S114:找到中的最大夹角/>;
S120包括:当大于设置的角度阈值/>时,判定其为边界点;否则不是边界点,进入所述点云数据的下一点,返回S111,直至遍历所述点云数据中的所有点,得到边界点云。
4.根据权利要求3所述的方法,其特征在于,S111中所述邻域点集N的选取方法具体为:
计算所有点云的平均距离;
在0.4π~0.8π之间选择角度阈值;
根据所述所有点云的平均距离和所述角度阈值得到轮廓提取最佳搜索半径:
,其中,/>为常数,R为待识别圆孔的半径;
以所述最佳搜索半径为圆内的所有点云选取为邻域点集N。
5.根据权利要求4所述的方法,其特征在于,S200包括:
S210:对所述点云边界轮廓进行八叉树处理,通过Knn搜索将所述八叉树每个分块的中心点聚类;
S220:通过八叉树的体素搜索方式得到全部边界点云的聚类结果,其中,所述聚类结果为多个圆孔轮廓。
6.根据权利要求5所述的方法,其特征在于,S210具体为:
S211将所述边界点云做八叉树处理,并将所述八叉树内部所有分块的中心点提取出来,重新组合成新的点云数据/>;
S212:从所述点云数据B选取一种子点,假设当前点为,对所述/>进行Knn搜索找到k个搜索点/>,并获取到搜索点/>与所述当前点/>的距离值,其中,1≤j≤n,1≤i≤k;
S213:设定距离阈值对D进行判定,当/>时,即可认定所述搜索点/>与所述当前点/>标签一致,标记;若/>,则认为所述搜索点/>与所述当前点/>标签不一致,跳过该点;其中,1≤i≤k;
S214:对所述点云数据B中未实现标记的点云重复S212和S213步骤,实现八叉树结构标签连通域聚类,得到带h个标签的点云,其中/>,...,/>,其中,1 < y < z < n,同时计算每个标签的点云数目是否在设定的聚类区间[min,max]内,如果不在,删除该标签,其中,min为聚类区间中点云数据的最小值,max为聚类区间中点云数据的最大值;
S220具体为:遍历所述T中每个标签聚类,定义中的每个点为新的起始点,搜索方法采用八叉树的体素搜索方式,搜索八叉树内部除中心点外的其余点,并对搜索后的点打上中心点相同的标签,最终输出h个聚类/>,/>,... ,/>,其中,1≤x≤h,1 < s < g < m。
7.根据权利要求6所述的方法,其特征在于,所述预设条件包括:
当前圆孔轮廓中的点云数据噪音数量在预设噪音数量范围内、当前圆孔轮廓中的离群点数量在预设离群点数量范围内以及当前圆孔轮廓的圆孔半径在预设的半径范围内。
8.根据权利要求7所述的方法,其特征在于,S300中所述选择基于RANSAC法拟合当前圆孔轮廓的三维圆孔,包括:
S310:对某一聚类点云,遍历所有点云,计算每个点/>与其最近的c个邻近点/>之间的平均距离/>;计算所有平均距离的均值与标准差/>,设定距离阈值/>,/>是比例系数;遍历点云/>,剔除平均距离/>大于/>的点,得到滤波后的点云数据集;
S320:从所述点云数据集中随机选取三个点并假设为内点子集X;根据所述内点子集X估计圆的参数模型,得到圆心坐标、半径和法向量;
S330:遍历除所述内点子集X以外的所述点云数据集中的所有数据,若数据点代入所述圆的参数模型后,得到的结果与所述内点子集X的估计结果误差在一定阈值内,则将当前数据点标记为内点,否则为外点;
S340:所有内点组成集合F,若所述F中内点的个数满足给定的内点个数阈值B,则用所述F中的所有内点重新估计模型参数,结束算法。
9.根据权利要求8所述的方法,其特征在于,S340还包括:
若所述F中内点个数少于阈值E,则重新选择三个点,重复S320和S330,其中E小于B;
经过预设迭代次数阈值迭代后,选择一个内点数量最多的M集,用所述M集中所有内点估计模型参数,结束算法。
10.根据权利要求7所述的方法,其特征在于,S300中所述选择基于超定方程求解的方法拟合当前圆孔轮廓的三维圆孔,包括:
S350:对某一聚类点云,根据提取的/>个三维坐标数据,通过最小二乘法求解平面法向量;其中/>,/>;
S360:由于圆弧上任意两点连线的中垂线必经过圆心,因此通过求解线性方程组可计算出圆心坐标:
;
其中,/>,/>,....,/>,,/>...,;
S370:遍历点云数据,计算每个点到圆心的距离,得到的平均距离作为圆的半径,计算式为:,其中圆心坐标,最终得到定位信息/>,G为所述聚类点云/>内的点云数据总数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311190948.3A CN116912312B (zh) | 2023-09-15 | 2023-09-15 | 一种面向复杂曲面构件的三维孔类定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311190948.3A CN116912312B (zh) | 2023-09-15 | 2023-09-15 | 一种面向复杂曲面构件的三维孔类定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116912312A true CN116912312A (zh) | 2023-10-20 |
CN116912312B CN116912312B (zh) | 2023-12-01 |
Family
ID=88360767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311190948.3A Active CN116912312B (zh) | 2023-09-15 | 2023-09-15 | 一种面向复杂曲面构件的三维孔类定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116912312B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10186049B1 (en) * | 2017-03-06 | 2019-01-22 | URC Ventures, Inc. | Determining changes in object structure over time using mobile device images |
CN109596618A (zh) * | 2018-12-26 | 2019-04-09 | 太原理工大学 | 一种基于断面轮廓序列的微观多相结构三维建模测量方法 |
CN110599506A (zh) * | 2019-10-16 | 2019-12-20 | 湖南大学 | 一种复杂异形曲面机器人三维测量的点云分割方法 |
CN111222516A (zh) * | 2020-01-06 | 2020-06-02 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 印制电路板点云关键轮廓特征提取方法 |
CN112581519A (zh) * | 2020-12-21 | 2021-03-30 | 中广核工程有限公司 | 一种放射性废物包识别定位方法与装置 |
US20210174121A1 (en) * | 2019-06-30 | 2021-06-10 | Huazhong University Of Science And Technology | Method for extracting robot processing boundary of thin-walled part with small curvature based on three-dimensional point cloud |
CN113177477A (zh) * | 2021-04-29 | 2021-07-27 | 湖南大学 | 一种基于三维点云分析的目标检测识别方法 |
US20210233284A1 (en) * | 2018-10-12 | 2021-07-29 | Panasonic Intellectual Property Corporation Of America | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device |
CN114202470A (zh) * | 2021-11-12 | 2022-03-18 | 江苏核电有限公司 | 一种压力容器主螺栓孔螺纹三维重建及缺陷自动识别方法 |
CN114332366A (zh) * | 2021-12-24 | 2022-04-12 | 西运才 | 数字城市单体房屋点云立面3d特征提取方法 |
US20220254045A1 (en) * | 2021-02-09 | 2022-08-11 | Everypoint, Inc. | Determining Object Structure Using Physically Mounted Devices With Only Partial View Of Object |
CN116188544A (zh) * | 2022-12-29 | 2023-05-30 | 易思维(杭州)科技有限公司 | 一种结合边缘特征的点云配准方法 |
CN116597294A (zh) * | 2023-05-04 | 2023-08-15 | 北京航空航天大学杭州创新研究院 | Slam地图拓扑评估方法、装置、电子设备及存储介质 |
CN116701969A (zh) * | 2023-05-30 | 2023-09-05 | 西安交通大学 | 一种用于气膜孔点云的处理及轴线估计方法 |
-
2023
- 2023-09-15 CN CN202311190948.3A patent/CN116912312B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10186049B1 (en) * | 2017-03-06 | 2019-01-22 | URC Ventures, Inc. | Determining changes in object structure over time using mobile device images |
US20210233284A1 (en) * | 2018-10-12 | 2021-07-29 | Panasonic Intellectual Property Corporation Of America | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device |
CN109596618A (zh) * | 2018-12-26 | 2019-04-09 | 太原理工大学 | 一种基于断面轮廓序列的微观多相结构三维建模测量方法 |
US20210174121A1 (en) * | 2019-06-30 | 2021-06-10 | Huazhong University Of Science And Technology | Method for extracting robot processing boundary of thin-walled part with small curvature based on three-dimensional point cloud |
CN110599506A (zh) * | 2019-10-16 | 2019-12-20 | 湖南大学 | 一种复杂异形曲面机器人三维测量的点云分割方法 |
CN111222516A (zh) * | 2020-01-06 | 2020-06-02 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 印制电路板点云关键轮廓特征提取方法 |
CN112581519A (zh) * | 2020-12-21 | 2021-03-30 | 中广核工程有限公司 | 一种放射性废物包识别定位方法与装置 |
US20220254045A1 (en) * | 2021-02-09 | 2022-08-11 | Everypoint, Inc. | Determining Object Structure Using Physically Mounted Devices With Only Partial View Of Object |
CN113177477A (zh) * | 2021-04-29 | 2021-07-27 | 湖南大学 | 一种基于三维点云分析的目标检测识别方法 |
CN114202470A (zh) * | 2021-11-12 | 2022-03-18 | 江苏核电有限公司 | 一种压力容器主螺栓孔螺纹三维重建及缺陷自动识别方法 |
CN114332366A (zh) * | 2021-12-24 | 2022-04-12 | 西运才 | 数字城市单体房屋点云立面3d特征提取方法 |
CN116188544A (zh) * | 2022-12-29 | 2023-05-30 | 易思维(杭州)科技有限公司 | 一种结合边缘特征的点云配准方法 |
CN116597294A (zh) * | 2023-05-04 | 2023-08-15 | 北京航空航天大学杭州创新研究院 | Slam地图拓扑评估方法、装置、电子设备及存储介质 |
CN116701969A (zh) * | 2023-05-30 | 2023-09-05 | 西安交通大学 | 一种用于气膜孔点云的处理及轴线估计方法 |
Non-Patent Citations (2)
Title |
---|
JAN ELSEBERG等: "One billion points in the cloud-an octree for efficient processing of 3D laser scans", 《ISPRS JOURNAL OF PHOTOGRAMMETRY AND REMOTE SENSING》, pages 76 - 88 * |
钱晓硕等: "基于自适应补缺滤波的装配孔孔位提取方法", 《组合机床与自动化加工技术》, no. 5, pages 1 - 9 * |
Also Published As
Publication number | Publication date |
---|---|
CN116912312B (zh) | 2023-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107622499B (zh) | 一种基于目标二维轮廓模型的识别与空间定位方法 | |
CN105021124B (zh) | 一种基于深度图的平面零件三维位置和法向量计算方法 | |
CN106780557B (zh) | 一种基于光流法和关键点特征的运动目标跟踪方法 | |
CN106251353A (zh) | 弱纹理工件及其三维位姿的识别检测方法及系统 | |
CN114743259A (zh) | 位姿估计方法、位姿估计系统、终端、存储介质及应用 | |
CN111311618A (zh) | 一种基于高精度几何基元提取的圆弧工件匹配与定位方法 | |
CN110838145B (zh) | 一种室内动态场景的视觉定位与建图方法 | |
CN113538486A (zh) | 一种提高汽车钣金工件的识别与定位精度的方法 | |
CN112767426B (zh) | 一种目标匹配方法、装置和机器人 | |
CN111340834B (zh) | 基于激光雷达和双目相机数据融合的衬板装配系统及方法 | |
CN110472651B (zh) | 一种基于边缘点局部特征值的目标匹配与定位方法 | |
CN113012181B (zh) | 一种基于Hough变换的新型类圆形检测方法 | |
CN116912312B (zh) | 一种面向复杂曲面构件的三维孔类定位方法 | |
JP5046133B2 (ja) | 3次元曲面認識方法及びマニピュレーションシステム | |
CN113362358A (zh) | 一种动态场景下基于实例分割的鲁棒性位姿估计方法 | |
CN117058404A (zh) | 一种基于三维点云的多类型焊接坡口特征提取方法 | |
CN117085969A (zh) | 人工智能工业视觉检测方法、装置、设备及存储介质 | |
CN116958264A (zh) | 一种基于三维视觉的螺栓孔定位及位姿估计方法 | |
CN111932617A (zh) | 一种对规则物体实现实时检测定位方法和系统 | |
Chen et al. | A Framework for 3D Object Detection and Pose Estimation in Unstructured Environment Using Single Shot Detector and Refined LineMOD Template Matching | |
CN111127638B (zh) | 利用三维模板库实现工件突出标志位定位抓取点方法 | |
Xiong et al. | Local deformable template matching in robotic deburring | |
CN111291276A (zh) | 一种基于局部方向中心性度量的聚类方法 | |
CN116523984B (zh) | 一种3d点云定位及配准方法、设备和介质 | |
CN110443851B (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 |