面向自动修补的圆柱特征孔洞识别

2021-07-06 12:14王春香周国勇纪康辉
图学学报 2021年3期
关键词:边界点孔洞圆柱

王春香,刘 流,周国勇,纪康辉

面向自动修补的圆柱特征孔洞识别

王春香,刘 流,周国勇,纪康辉

(内蒙古科技大学机械学院,内蒙古 包头 014010)

对于型面复杂且含有大量孔洞的点云模型,目前逆向软件和修补算法皆存在单孔逐一修补时效率较低、人机交互过多;多孔同时修复精度不高、特征丢失等问题。因此,有必要实现以孔洞的分类识别为前提,以特征保持为目标的高效、高精度的点云孔洞分类自动修补方式。基于上述想法,提出一种在孔洞识别的基础上将圆柱特征孔洞与一般类型孔洞分类的方法。首先,借助最大角度识别准则提取孔洞边界点集合,通过欧式聚类算法分割并统计孔洞总数,然后利用RANSAC算法和设定的距离阈值提取模型中的圆柱特征孔洞。实验结果表明,该方法不仅可提取模型中直径大小不同的多个圆柱特征孔洞,而且能估算出较为准确的圆柱面几何参数,实现了面向自动修补技术的一类特征孔洞的识别。

点云模型;孔洞识别;自动修补;聚类算法;RANSAC算法

逆向工程CAD建模过程中,完整且准确的点云模型是后续曲面重构的基础。而获取数据时会因零件本身部分损坏、测量环境及设备自身原理的缺陷等因素导致点云数据缺失,形成孔洞,因此在逆向零件CAD模型前,通常要进行点云孔洞的识别与修补[1]。而在实际逆向产品时点云模型中大量孔洞的出现,使逆向软件在串行修补时存在人机交互量大、效率低、用时长等问题;同时对于型面复杂的模型,软件修补效果较差、精度不高,因而,利用计算机算法自动分类识别与修补是解决精度和效率的必然选择。而在识别过程中对孔洞分类提取可以保证模型特征的多样性,为后续插值修补提供充分必要的几何信息。对含有像销孔、圆柱孔等的工程类零件中的圆柱特征孔洞作为一类重要特征保持的孔洞类型理应先进行分类提取,即从一般孔洞中将其分离。其中,圆柱特征孔洞定义为:扫描过程中因销孔和圆柱孔的孔过深或孔径较小导致未能采集完整圆柱面点云数据形成的具有一定深度的数据缺失孔洞;一般孔洞定义为:由于遮挡和反光等因素导致样件表面点云数据不完整形成的自由形状的孔洞。

针对散乱点云的孔洞识别方法,文献[2]利用扩展空心球算法,将定义的模式点到样点的偏移距离与带宽的比值大小来提取点云模型中的特征点。文献[3]通过分析每个点的邻域所定义的协方差矩阵的特征值来检测尖锐边缘特征点;文献[4]使用二元分类器给出每个点的轮廓分数,并选择最佳轮廓以提取边界点。尽管文献[2-4]在孔洞识别方面取得一定效果,但其过程并未对模型中的孔洞进行分类,只是单纯针对孔洞边界点进行提取。文献[5]使用类似于霍夫变换算法(Hough)实现了低密度点云下天然气管道和法兰的总数检测;文献[6]通过对相互连接的共面三角形进行分组,分析平面和顶点簇之间的关系,确定模型内部的实心孔而不是几何形状不规则的多边形缺失区域。但文献[5-6]的实现皆是建立在点云数据完好且点云质量较高的情况下,并预先设定圆柱面项目模块才能达到一定的检测效果。实质上二者实现的是从一个包含多种形状类型的模型中分割圆柱面点云数据,并非是完成点云模型中圆柱特征孔洞的提取。文献[7]以边界连通性为依据将点云孔洞分为间隙孔洞和普通孔洞;文献[8]根据空间结构将孔洞分为水平孔和竖直孔;文献[9]基于模型表面孔洞形状将其分为封闭孔洞、半封闭孔洞和岛屿孔洞。但文献[7-9]皆是在边界点连线后通过形状或空间位置对孔洞进行分类。基于此,针对现阶段面向自动修补技术的识别方法中还没有相关方法实现孔洞的分类提取,本文提出一种无须数据转化的面向自动修补的圆柱特征孔洞识别方式以减少人为干预、提高识别效率。

本文在采用最大角度准则识别孔洞边界点的基础上,综合了聚类分割算法和随机采样一致性算法(random sample consensus,RANSAC),通过设定距离阈值实现对模型中圆柱特征孔洞的提取。

1 孔洞边界点识别

样点邻域在其局部微切平面投影后,非边界点的邻域点会均匀分布在样点周围,如图1(a)所示;而边界点的邻域点会在一定角度范围内分布,如图1(b)所示。通过比较与设定的角度阈值的大小关系来判断该样本点是否为孔洞边界点[10]。

图1 非边界点和边界点邻域分布((a)非边界点;(b)边界点)

1.1 邻域选取与微切平面拟合

通过计算协方差矩阵最小特征值对应的特征向量再结合点法式平面方程求得样点局部微切平面方程。

1.2 边界点判定

(3) 规定从平面法线所指一侧向平面投影时的逆时针方向为各向量间角度的正方向。

图2 角度顺时针排序

2 圆柱特征孔洞识别

2.1 孔洞聚类分割

欧式聚类算法是一种以空间2点间欧式距离作为参考的一种聚类方法,因其简单易行、可靠性高而广为使用[12]。由于上述集合L中包含模型中所有孔洞边界点,因此,该部分利用KD-tree数据索引结构结合欧式聚类算法从L中分离出每个孔洞边界点集合以确定孔洞数量,保证后续特征孔洞提取的准确性。

2.2 特征孔洞识别

1981年MATAS和CHUM[13]首先提出RANSAC算法,因其鲁棒性强、稳定、对噪声点不敏感等特性被广泛应用于机器视觉和数字图像处理等领域。基本思想为:根据具体问题确定目标函数,然后利用可以计算出目标函数初始值的最小数据点集估计参数初始值,通过初始参数值和预先设定的距离阈值将数据点划分为内点(满足估计参数的点)和外点(不满足估计参数的点);通过次迭代选取内点数最多点集为模型最优点集,最后以模型最优点集重新估算目标函数的最终参数值[14]。

三维空间圆柱面模型数学方程为

(2) 计算该类中其余点到初始圆柱体模型表面的垂直距离,即

(3) 计算垂直距离d的标准偏差,即

图3 部分圆柱面点云俯视图

(6) 依次计算每个孔洞边界点到所求得的最终圆柱模型参数中轴线的距离,即

(8) 按以上步骤遍历每个聚类结果,提取出模型中所有圆柱特征孔洞,算法结束。

圆柱特征孔洞识别流程如图4所示。

图4 圆柱特征孔洞识别流程图

3 实验及结果分析

本文在Intel(R)core(TM)i3-6100HCPU@3.70 GHz、4.00 GB内存、操作系统为Windows 7的计算机上基于点云库PCL(Point Cloud Library)以Visual studio 2017为平台,用C++语言实现以上算法。

3.1 圆柱特征孔洞识别效果分析

为验证识别效果与算法有效性,本文使用激光扫描仪采集尺寸为275.28 mm×105.82 mm×62.48 mm的链轨节点云模型和尺寸为128.65 mm×97.37 mm× 88.96 mm阀体点云模型进行测试。其中,邻域选取时值的确定和角度阈值的大小既是影响孔洞识别效果的决定性因素,更是实现圆柱特征孔识别的重要前提。值或值过小,易出现过识别现象;反之过大,则出现欠识别现象。相比较而言,2个参数中值对识别效果影响较大,以图5(b)中孔洞Ⅱ和Ⅲ为例,如图6所示。对比分析可知,当角小于133°时,最大角度算法会将模型中所有直角边棱线及附近邻域点带上的点误判为边界点,而使边界点数过多即过识别现象严重;当角大于136°时,随着角度逐渐增加,边界点数目会逐渐减少即欠识别现象更加明显,且角度在133°~136°之间时,提取的边界点数目趋近稳定并接近真实孔洞边界点。同时为获得模型中准确的圆柱孔洞数目及排除噪声点影响,欧式聚类距离阈值及最小聚类点数应合理设定。值越小,聚类数越多;反之,聚类数越少。为排除算法将直线型孔洞边界点集误判为直径较大的圆柱特征孔的情况,算法中拟合半径范围不宜设置过大。表1为实验中各参数值的设定结果。

图5 阀体识别效果图((a)孔洞边界点识别结果;(b)圆柱特征孔洞识别结果)

图6 角度阈值对提取边界点数的影响

在图7(a)和图5(a)中,红色点云为模型中孔洞边界点,圆柱孔洞提取后结果如图7(b)和图5(b)所示,其中绿色点代表模型中一般孔洞边界点,红色点表示圆柱特征孔洞边界点。

首先,从图7(b)和图5(b)的识别效果来看,本文方法可实现同一模型中多个圆柱特征孔洞的并行提取。其次,图7(b)中的孔洞Ⅰ和孔洞Ⅲ以及图5(b)中的孔洞Ⅰ、Ⅱ和Ⅲ其直径大小在5~60 mm间均有体现,差异较为明显,但仍能达到较为理想的识别效果。另一方面,在阀体点云模型中,实际存在较多圆柱特征孔洞,以图中所标注的孔洞为例,其孔洞中心方向各异,本文方法在该情况下仍可实现准确识别;其次,图7(b)中的孔洞Ⅲ可以理解为在圆柱面内存在局部点云数据缺失孔洞,与数据完全缺失形成的类截断式孔洞Ⅰ和Ⅱ为不同种类型的圆柱特征孔洞。但本文方法也可实现提取,表明其通用性。

通过分析图7和图5识别过程和识别效果易发现,虽然在边界点识别过程中出现了一些离群噪声点和一些受点云质量影响的误判点,但对模型中圆柱特征孔洞的提取并无影响,如图7(a)和图5(a)中标记的噪声点1~4,说明该方法在识别性能上具有一定抗噪性和鲁棒性。

表1 模型参数值

图7 链轨节识别效果图((a)孔洞边界点识别结果;(b)圆柱特征孔洞识别结果)

3.2 圆柱特征孔洞参数拟合值分析

对于链轨节和阀体模型采用最大角度准则算法识别出孔洞总数分别为11个和21个,与Geomagic Wrap 2020对点云数据封装后形成的孔洞数目相同,RANSAC算法分别提取到5个和18个圆柱特征孔洞,与真实模型中圆柱特征孔洞个数一致。多次试验结果表明,本文方法计算出的圆柱特征孔洞直径与软件Cloud Compare测定的孔洞直径近似相同。随机选取2个模型中圆柱特征孔洞,以图7(b)和图5(b)中标注的孔洞为例,其提取出的圆柱特征孔洞直径见表2。

表2 模型中圆柱孔洞直径(mm)

利用RANSAC算法计算圆柱面模型各参数值时,模型内点距离值会影响内点数目的多少,其过大或过小均会导致拟合精度产生相应误差。按照表1中值设定,受点云质量影响,可在±0.2 mm范围内浮动,其不影响圆柱特征孔洞直径拟合值,若超过0.2 mm算法拟合的直径会出现一定误差,表明本文方法具有一定的稳定性。以链轨节模型中孔洞Ⅰ和孔洞Ⅱ为例(图8),本文方法在计算出圆柱特征孔洞直径的同时,还获得了圆柱轴线中心坐标和方向向量的参数估计值,见表3。以上参数的确定可有效避免修补过程中出现的函数映射关系不准确和插值点存在精度误差等问题,为实现高质量的点云孔洞修补提供较为可靠的理论插值数据点。

图8 稳定性分析

表3 模型中圆柱特征孔洞其他参数估计值

4 结 论

4.1 成果与意义

本文集成了孔洞边界点提取算法、聚类算法和改进的RANSAC算法,在仅通过点云数据相对坐标且不需要借助任何数据类型转化的情况下,实现了点云模型中圆柱特征孔洞与一般孔洞的分类提取;该方法不仅可同时识别出模型中多个直径不一且方向各异的圆柱特征孔洞,还可估算出每个圆柱特征孔洞的直径、轴线中心坐标和方向向量等基本几何参数,为实现高效自动修补技术提供了充分的理论基础,有效减少了点云孔洞误补的概率、提高了效率、为逆向建模的准确性提供了可靠保障。

4.2 缺点及不足

因不同测量设备的空间坐标初始点不同,本文方法拟合得到的圆柱特征孔洞基本几何参数中除直径可以进行精度评估外,其他参数因现阶段逆向软件无法导出其准确值进而未能评定其精度。对于零件中的通孔,可利用上述参数直接插值完成修补,但对于盲孔因数据缺失严重,无法计算出孔深具体值。

[1] 徐进, 柯映林. 点云部分缺失条件下边界曲面直接拟合技术[J]. 机械工程学报, 2010, 46(3): 135-140.XU J, KE Y l. Boundary surface straight fitting technique with the constraints of incomplete point cloud[J]. Journal of Mechanical Engineering, 2010, 46(3): 135-140 (in Chinese).

[2] 孙殿柱, 刘华东, 史阳, 等. 基于核密度估计的散乱点云边界特征提取[J]. 农业机械学报, 2013, 44(12): 275-279.

SUN D Z,LIU H D, SHI Y, et al. Boundary feature abstraction of unorganized points based on kernel density estimation[J]. Transactions of the Chinese Society for Agricultural Machinery, 2013, 44(12): 275-279 (in Chinese).

[3] BAZAZIAN D, CASAS J R, RUIZ-HIDALGO J. Fast and robust edge extraction in unorganized point clouds[C]//2015 International Conference on Digital Image Computing: Techniques and Applications (DICTA). New York: IEEE Press, 2015: 1-8.

[4] HACKEL T, WEGNER J D, SCHINDLER K. Contour detection in unstructured 3d point clouds[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2016: 1610-1618.

[5] MAALEK R, LICHTI D D, WALKER R, et al. Extraction of pipes and flanges from point clouds for automated verification of prefabricated modules in oil and gas refinery projects[J]. Automation in Construction, 2019, 103: 150-167.

[6] WANG Y H, LIU R J, LI F, et al. An effective hole detection method for 3D models[C]//2012 Proceedings of the 20th European Signal Processing Conference. New York: IEEE Press, 2012: 1940-1944.

[7] ATTENE M, CAMPEN M, KOBBELT L. Polygon mesh repairing: an application perspective[J]. ACM Computing Surveys, 2013, 45(2): 3472-3476.

[8] FIOLKA T, ROUATBI F, BENDER D. Automated detection and closing of holes in aerial point clouds using an UAS[EB/OL]. [2020-09-19]. https://www.int-arch-photogramm-remote-sens-spatial-inf-sci.net/XLII-2-W6/101/2017/.

[9] 李松, 马聪聪, 陆帆, 等. 基于多向波前法的岛屿孔洞修补[J]. 中国机械工程, 2019, 30(20): 2473-2479.

LI S, MA C C, LU F, et al. Island hole repairing based on multi-directional advancing method[J]. China Mechanical Engineering, 2019, 30(20): 2473-2479 (in Chinese).

[10] BENDELS G H, SCHNABEL R, KLEIN R. Detecting holes in point set surfaces[J]. Journal of WSCG, 2006, 14(13): 89-96.

[11] HOPPE H, DEROSE T, DUCHAMP T, et al. Surface reconstruction from unorganized points[J]. ACM SIGGRAPH Computer Graphics, 1992, 26(2): 71-78.

[12] 宗长富, 文龙, 何磊. 基于欧几里得聚类算法的三维激光雷达障碍物检测技术[J]. 吉林大学学报: 工学版, 2020, 50(1): 107-113.

ZONG C F, WEN L, HE L. Object detection based on Euclidean clustering algorithm with 3D laser scanner[J]. Journal of Jilin University: (Engineering and Technology Edition), 2020, 50(1): 107-113 (in Chinese).

[13] MATAS J, CHUM O. Randomized RANSAC withT,dtest[J]. Image and Vision Computing, 2004, 22(10): 837-842.

[14] XU X B, FEI Z W, TAN Z Y, et al. Improved calibration method based on the RANSAC approach and an improved gray centroid method for a laser-line-based structured light system.[J]. Applied Optics, 2019, 58(35):9603-9613.

Cylindrical feature hole recognition for automatic repair

WANG Chun-xiang, LIU Liu, ZHOU Guo-yong, JI Kang-hui

(School of Mechanical Engineering, Inner Mongolia University of Science and Technology, Baotou, Inner Mongolia, 014010, China)

For the point cloud model with complex profiles and many holes, the existing reverse software and repair algorithm exhibit such problems as lower efficiency and excessive human-computer interaction in hole-by-hole repairing, as well as low repair accuracy and loss of features in multi-hole repairing. Therefore, it is necessary to develop an efficient and high-precision automatic repair mode aiming for feature preserving based on identification and classification of holes in point clouds. Based on the above ideas, a hole recognition-based method was proposed for separating cylindrical feature holes from general types of holes. First, boundary points of holes were extracted and collected following the criterion of maximum angle recognition; the total number of holes was calculated with Euclidean clustering. After that, cylindrical feature holes in the model were extracted using RANSAC and the set distance threshold. According to experimental results, the method can both extract from the model multiple cylindrical feature holes of different diameters, and make estimate of geometric parameters of the cylindrical surface more accurately. In this way, the automatic repairing-oriented identification of a specific type of feature holes can be achieved.

point cloud model;hole identification; automatic repair; clustering algorithm; RANSAC algorithm

TP 391

10.11996/JG.j.2095-302X.2021030511

A

2095-302X(2021)03-0511-06

2020-11-25;

2021-01-21

25 November,2020;

21 January,2021

包头市科技发展计划项目(2019Z3004-6)

Science and Technology Development Plan Projects of Baotou (2019Z3004-6)

王春香(1962-),女,内蒙古包头人,教授,硕士,硕士生导师。主要研究方向为逆向工程技术、快速成型技术。E-mail:wcxcxw@126.com

WANG Chun-xiang (1962-), femaler, professor, master. Her main research interests cover reverse engineering technology and rapid prototyping technology. E-mail: wcxcxw@126.com

猜你喜欢
边界点孔洞圆柱
圆柱的体积计算
扩散与幂率蠕变联合控制的孔洞受约束长大模型研究
“圆柱与圆锥”复习指导
一种面向孔洞修复的三角网格复杂孔洞分割方法
基于安全性的自主环境探索算法的改进方法
区分平面中点集的内点、边界点、聚点、孤立点
走路时,我们会踩死细菌吗
多阈值提取平面点云边界点的方法
基于网格聚类中边界点的处理
铝合金薄板在疲劳载荷下孔洞聚合试验中的材料损失