CN115564792A - 基于八叉树区域生长的焊接路径提取方法 - Google Patents
基于八叉树区域生长的焊接路径提取方法 Download PDFInfo
- Publication number
- CN115564792A CN115564792A CN202211147387.4A CN202211147387A CN115564792A CN 115564792 A CN115564792 A CN 115564792A CN 202211147387 A CN202211147387 A CN 202211147387A CN 115564792 A CN115564792 A CN 115564792A
- Authority
- CN
- China
- Prior art keywords
- point
- octree
- welding
- algorithm
- 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.)
- Pending
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
- G06T7/181—Segmentation; Edge detection involving edge growing; involving edge linking
-
- 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/155—Segmentation; Edge detection involving morphological operators
-
- 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
Abstract
本发明涉及一种基于八叉树区域生长的焊接路径提取方法,包括如下步骤:取焊接图,通过基于K‑近邻搜索的法向量估计算法,计算每个点的法向量,计算出K个近邻点的协方差矩阵,再采用如下主成分分析法计算出协方差矩阵的最小特征值对应的特征向量即为估计的法向量。利用八叉树体素化点云。通过激光扫描仪测距和允许的近邻点最大角度偏差,得出实际需要计算的邻域点个数。划分的体素格大小需要保证准确包含所有的邻域点。采用剩余阈值作为八叉树终止划分的依据。基于三维点云算法得到焊缝,通过八叉树的区域生长算法划分出焊缝所在区域,并提取轮廓,得到焊缝的形态,对获取的工件点云进行区域划分并提取焊缝形态。
Description
技术领域
本发明涉及一种基于八叉树区域生长的焊接路径提取方法,属于区域生长算法技术领域。
背景技术
如何在坡口焊接中准确有效地提取焊件上的焊缝,从而获取焊接的路径,是目前焊接领域的研究热点之一。目前工业领域应用最多的是结构光中心线提取,在焊接过程中数据易受到弧光干扰,从而影响该算法的分割效果。
发明内容
发明目的:针对上述现有存在的问题和不足,本发明的目的是提供一种基于八叉树区域生长的焊接路径提取方法,基于三维点云算法处理焊接区域得到焊缝,通过八叉树的区域生长算法划分出焊缝所在区域,并对该区域进行轮廓提取,得到焊缝的形态,对获取的工件点云进行区域划分并提取焊缝形态。
技术方案:为实现上述发明目的,本发明采用以下技术方案:
一种基于八叉树区域生长的焊接路径提取方法,包括如下步骤:
步骤1:取焊接图,通过基于K-近邻搜索的法向量估计算法,计算每个点的法向量,计算出K个近邻点的协方差矩阵,再采用如下主成分分析法计算出协方差矩阵的最小特征值对应的特征向量即为估计的法向量:
步骤2:计算估计的点组成的表面曲率,设协方差矩阵有三个特征向量,分别是λ0,λ1,λ2,且λ0≤λ1≤λ2,曲率δ表示为:
将每个点的曲率按升序排序,并选取最小曲率的点作为种子开始生长,设置输入的点云集合为{A},区域集合{Rc},种子集合{Sc},所有点的曲率集合为{c},法向量集合为{N},当种子点的邻域点与种子点之间的法向量夹角小于设定的夹角阈值时,则认为该点与种子点属于同一区域如果此点的曲率小于设定的阈值,则将该点设置为新的种子点,按照上述算法进行新一轮的区域生长,直到所有种子点生长完毕且原始点云中的点全部转化为区域生长的点;
步骤3:利用八叉树体素化点云,确定输入点云数据的最小包围盒,以此作为八叉树生长的根节点或零级节点,在分割时会根据点云密度的最小值初始化体素的大小,即根据点云中最稀疏的部分来确定分割粒度,这样可以确保在后续的分割中不会出现分割区域间断的情况。点云的密度计算如下:
其中,k代表八叉树邻域范围内的点,rk代表从计算的点到邻域最远点的间距;
步骤4:通过激光扫描仪测距和允许的近邻点最大角度偏差,得出实际需要计算的邻域点个数,如下式所示:
其中,常数12代表此比例可以达到基于体素法向量估计的最优值;
步骤5:划分的体素格大小需要保证准确包含所有的邻域点,所以体素格边长要大于公式(3.3)所计算的值:
步骤6:采用剩余阈值作为八叉树终止划分的依据,剩余阈值的计算如下:
其中,k表示体素内所有邻域点的个数,d表示体素内各点到由中心点和该中心点的法向量拟合的平面的距离。
进一步的,步骤3中具体步骤为:以根节点为起点,将包围盒内的空间进行八叉树递归划分,并将个数大于等于三的非空子节点的指针存储于它的上一级节点中,以确保每个节点中的指针都能指向它的子节点,增加树的深度,并且从父节点到子节点的所有链接均为单向,所有非空节点都被分成八个相同的子节点,从而使同一深度上所有体素大小相同。
有益效果:与现有技术相比,本发明具有以下优点:为了解决焊缝结构光中心线提取算法中存在的弧光干扰等问题,本基于三维点云的焊缝提取方案,以取得焊接区域的形态。对于坡口增材而言,第一层焊缝的轮廓会为第二层焊接提供路径的信息,并且一层一道焊的焊接质量的好坏将直接影响后续层数的焊接效果。而第二层焊缝则为第三层的焊接提供路径指引,决定了第三层焊接是否能完美填充坡口,因此,前两层焊缝的提取将变得尤为重要。利用八叉树区域生长算法对工件的一层一道焊焊缝进行识别并提取,在实验结果上相比于传统的点云区域生长算法F1-score提高了5.93个百分点;与RANSAC对比,F1-score则提升12.40个百分点。在第二层的提取效果尽管不及在一层一道焊的提取效果,但与基于点的区域生长算法和RANSAC相比,仍然是最优的,以F1-score为评价指标,分别高于基于点区域生长算法4.43个百分点,高于RANSAC算法10.21个百分点。通过对分割出的一层一道焊和坡口第二层焊区域进行边缘提取,得出焊接区域的轮廓线,并且与实际值之间的平均误差分别为0.138mm和0.18mm,可以为后续的增材提供焊接引导,验证了本算法在坡口增材中的精确性。
附图说明
图1是本发明的实施例的实验工件示意图;
图2是本发明的实施例的坡口焊接道数编号图;
图3是本发明的八叉树工作原理;
图4是本发明的八叉树剩余阈值法处理点云效果对比图,
图中:(a)为原始点云数据,(b)为经过八叉树剩余阈值法处理之后的数据;
图5是本发明的八叉树区域生长算法流程图;
图6是本发明的实施例的数据获取平台外观示意图;
图7是本发明的实施例的期望分割区域示意图,
图中:(a)~(c)为扫描完整工件特征标记图,(d)为扫描不完整工件特征标记图;
图8是本发明的实施例的八叉树区域生长算法在数据集上的提取效果示意图,
图中:(a)~(c)为扫描完整工件区域提取效果;(d)为扫描不完整工件区域提取效果;
图9是本发明的实施例的基于点的区域生长算法提取效果图,
图中:(a)~(c)为扫描完整工件区域提取效果;(d)为扫描不完整工件区域提取效果;
图10是本发明的实施例的RANSAC提取效果图,
图中:(a)~(c)为扫描完整工件区域提取效果;(d)为扫描不完整工件区域提取效果;
图11是本发明的实施例的八叉树区域生长算法在1组为真实值时,不同工件多层多道焊提取效果图,
图中:(a1)~(a2)为二层一道焊;(b1)~(b2)为二层二道焊;
图12是本发明的实施例的八叉树区域生长算法在2组为实验提取结果时,不同工件多层多道焊提取效果图,
图中:(c1)~(c2)为二层一道焊;(d1)~(d2)为二层二道焊;
图13是本发明的实施例的基于点区域生长算法和RANSAC算法在坡口二层提取效果,
图中:(a1)~(a2)为区域生长算法在坡口第二层的提取效果,(b1)~(b2)RANSAC在坡口第二层的提取效果;
图14是本发明的实施例的单道单层坡口焊件目标区域轮廓提取效果图,
图中:(a1)~(a3)为扫描焊件焊接区域;(b1)~(b3)为焊接区域轮廓提取图;
图15是本发明的实施例的单道单层坡口焊件目标区域轮廓提取效果图,
图中:(a4)为扫描焊件焊接区域,(b4)为焊接区域轮廓提取图,(a5)为人工标注焊件区域,(b5)为人工标注焊接区域轮廓;
图16是本发明的实施例的坡口第二道二层目标区域轮廓提取效果图,
图中:(a1)(a2)为第二层第一道焊接区域,(b1)~(b2)为焊接区域轮廓;
图17是本发明的实施例的坡口第二道二层目标区域轮廓提取效果图,
图中:(a3)(a4)为第二层第二道焊接区域,(b3)~(b4)为焊接区域轮廓。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
1.算法原理
本发明采用坡口焊件为60度V型槽焊件,焊接层数最高为三层,材质为304不锈钢,工件厚度为2cm。实验工件如图1所示。焊件的焊接层数为一层,焊接道数为一道,焊接道数编号如图2所示。对于坡口焊接而言,第一层焊缝的轮廓会为第二层焊接提供路径的信息,并且第一层的焊接质量的好坏将直接影响后续层数的焊接效果。而第二层焊缝则为第三层的焊接提供路径指引,决定了第三层焊接是否能完美填充坡口,因此,前两层焊缝的提取将变得尤为重要。
在大坡口增材焊接中,往往会产生因为焊道表面形状复杂、焊道表面粗糙度不统一等原因而导致生成点云的形状不规则,从而导致增材区域提取的困难。所以针对上述问题,本发明通过对现有的点云分割算法的改进,在原有算法的基础上添加八叉树的数据结构,使其能够准确地提取到焊缝所在区域,并通过轮廓提取算法得到区域轮廓线,进一步得到焊缝。
1.1区域生长算法
作为最初的点云分割算法,Hough变换算法和RANSAC算法通过拟合模型来分离点云的特征,在点云数量不多,且点云形状较为简单的情况下可以达到很好的鲁棒性,但是随着应用场景的复杂,数据量的增多,它们呈现出一定局限。这两种算法都是通过拟合平面达到分割的目的,对噪声较为敏感的,从而影响分割的结果。其次,Hough和RANSAC算法都需要人工设置拟合平面的参数,对于形状特征复杂的点云数据,精度会严重下降。
区域生长算法(Region growing)对形态复杂的点云数据具有较高的精度,可以弥补上述算法的不足。通过计算每个点的法向量和曲率并选取曲率最小的点作为种子点进行区域生长。具体算法实现如下:
(1)计算每个点的法向量。运用基于K-近邻搜索的法向量估计算法,计算出K个近邻点的协方差矩阵。采用主成分分析法(Principal Component Analysis,PCA)计算出协方差矩阵的最小特征值对应的特征向量即为估计的法向量:
(2)计算估计的点组成的表面曲率。假设协方差矩阵有三个特征向量,分别是λ0,λ1,λ2,且λ0≤λ1≤λ2,曲率δ可表示为:
由主成分分析法计算出的法向量只能代表物体表面的曲率分布,这是不明确的。简而言之,它不可能反映物体的内部和外部,需要一个约束方程来使它们都朝向视点。以观察者角度作为视点,用表示,表示每个点的方向,则约束方程可以表示为:
(3)将每个点的曲率按升序排序,并选取最小曲率的点作为种子开始生长,这样从平坦的区域生长可以减小分割平面的数量。
设置输入的点云集合为{A},区域集合{Rc},种子集合{Sc},所有点的曲率集合为{c},法向量集合为{N}。
当种子点的邻域点与种子点之间的法向量夹角小于设定的夹角阈值时,则认为该点与种子点属于同一区域。更进一步地,如果此点的曲率小于设定的阈值,则将该点设置为新的种子点,按照上述算法进行新一轮的区域生长,直到所有种子点生长完毕且原始点云中的点全部转化为区域生长的点。
原始的区域生长算法平滑阈值和曲率阈值均需要人为调节,在面对形状复杂的点云时不能保持很好的鲁棒性。因此,本章提出一种基于八叉树自适应的区域生长算法,以弥补人工调参的不足。
1.2基于八叉树的区域生长算法
八叉树是一种基于三维空间的数据格式,在点云处理中,八叉树可以将点云栅格化处理,建立点与点之间的层级结构,方便点的近邻搜索与特征估计,使得数据有序,易于检索。
利用八叉树体素化点云的步骤如下:
(1)首先确定输入点云数据的最小包围盒,以此作为八叉树生长的根节点或零级节点。以根节点为起点,将包围盒内的空间进行八叉树递归划分,并将非空子节点(个数大于等于三)的指针存储于它的上一级节点中,以确保每个节点中的指针都能指向它的子节点,增加树的深度,并且从父节点到子节点的所有链接是单向的,提高特征检索效率。所有非空节点都被分成八个相同的子节点,从而使同一深度上所有体素大小相同。八叉树的工作原理如图3所示。
(2)在分割时会根据点云密度的最小值初始化体素的大小,即根据点云中最稀疏的部分来确定分割粒度,这样可以确保在后续的分割中不会出现分割区域间断的情况。点云的密度计算如下:
其中,k代表八叉树邻域范围内的点,rk代表从计算的点到邻域最远点的间距。通过激光扫描仪测距和允许的近邻点最大角度偏差,可以得出实际需要计算的邻域点个数,如下式所示:
其中,常数12代表此比例可以达到基于体素法向量估计的最优值。
划分的体素格大小需要保证准确包含所有的邻域点,所以体素格边长要大于公式(3.3)所计算的值:
(3)与其他终止八叉树划分的条件不同,本章采用剩余阈值作为八叉树终止划分的依据。剩余阈值的计算如下:
其中,k表示体素内所有邻域点的个数,而d表示体素内各点到由中心点和该中心点的法向量拟合的平面的距离。剩余阈值根据每个体素内点的稀疏性不同而调节,达到了真正的自适应,其处理点云的效果如图4所示。图4(a)表示原始的点云数据。图4(b)表示经过剩余阈值法划分的点云数据。可以看到,这种剩余阈值自适应将为之后的特征估计和区域增长提供结构化信息,并节省算法的时间复杂度。
据此提出基于八叉树的区域生长算法(Octree-based Region growing)用于分割焊缝,算法的主要流程如下:
(1)对输入的点云进行体素化处理,对于每一个非空节点,对节点里的点集做法向量估计,得到该体素的法向量。其算法原理与区域生长中的法向量估计算法相似同的是区域生长算法的法向量估计通过KD-tree搜索点的邻域点来实现,体素内的法向量估计是对所有体素内的点进行计算,得出体素法向量的值。
(2)根据步骤(1)得到每个体素内的法向量,从而可以确定每个体素内点的拟合平面,计算每个点到拟合平面的距离di,如下式所示:
结合公式(3.9)可以得出每个体素的剩余值,并对所有非空体素的剩余值进行升序排列,方便后续的区域生长种子点的选取。
(3)与传统的区域生长算法相似,选取剩余值最小的体素作为种子体素进行生长,并把此种子体素剩余值的两倍作为八叉树区域生长的初值。设定种子体素集合为{Sc′},区域集合为{Rc′},先把种子体素放到这两个集合中,然后通过八叉树搜索该种子体素的相邻体素,计算这两个体素的法向量夹角是否小于平滑阈值。如果满足平滑条件,则进一步判断相邻体素剩余值是否小于剩余阈值,如果小于,则将其作为新的种子体素进行生长,直到所有体素都合并到不同区域为止,具体的算法流程图如图5所示。
2.八叉树区域生长算法实验结果及分析
2.1实验平台
本实验采用威布三维扫描仪REEYEE 5M,该扫描仪采用蓝光扫描技术,可以扫描表面颜色偏暗或鎏金的物体,具有极高的扫描精度,单帧扫描精度可达0.007mm,采集速度小于1.5秒,生成点云的点距在0.04mm~0.16mm之间,采用500万像素的高速相机,且配备有内置光栅,USB3.0接口控制,自带的软件包含点云处理模块,导出的三维点云可用点云处理软件进行数据交互。选用的工件为厚度2cm的304不锈钢,焊缝长度200mm,坡口样式为60度的V型坡口。焊接机器人为ABB机器人。采用REEYEE 5M三维蓝光扫描仪获取点云数据,坡口焊件由夹板固定,防止焊接过程中工件受热产生形变,影响采集效果。数据采集平台如图6所示。
2.2实验判别标准
全局一致性误差和局部一致性误差可以很好地诠释分割地实际值与目标之间差异性与一致性,当实际分割区域数量与真实值不一致时,一致性误差可以很好的检测出分割的效果,但是当模型过分割或欠分割时,一致性误差不能很好对其进行检测。
针对传统一致性误差评判的不足,本章采用机器学习中的分类判别标准精确率(Precision),召回率(Recall)和F1-score作为点云分割的评判指标。对于目标检测和分类,精确率可以评价模型对负样本的敏感度,精确率越高,对负样本的敏感度就越高。而召回率可以反应模型对正样本的判别能力,召回率越高,说明模型对识别正样本的能力就越强。
设置一个预期分割效果的真实值,上面的分割片段记为mj,而实验中的分割片段记为ai,当分割的点pi属于ai∩mj时,记该点为TP(True Positive),若该点属于ai\mj,则记该点为FP(False Positive),反之,如果是mj\ai,则该点记为FN(False Negative)。为此,精确率和召回率的计算如下:
精确率代表模型对对错误样本的敏感度,而召回率则表示模型对正样本的区分能力。但是评估模型的指标有时并不依赖于单一的判别标准。如果需要模型同时保持对负样本的敏感性和对正样本的识别能力,就需要依据实际要求对精确率和召回率赋予相应的权值。引入Fβ-score作为综合评判标准,计算方式如下:
其中,β反映了模型在分类检测中的侧重程度,当β<1时,召回率占据较大的权重,为了提升Fβ的值,模型需要增大精确率,说明此模型偏重模型对样本中负样本的鉴别能力。反之,当β>1时,精确率权重较大,模型更侧重于对正样本判别能力。当β=1时,精确率与召回率权重相等,此时Fβ退化为F1-score,F1-score值越大,说明模型越稳健。
使用精确率、召回率和F1-score可以在目标检测和分类模型上达到良好的评估效果,但是在分割模型上则依赖于真实值的选取,真实值选择的标准不同,评判的结果也会有较大的差异。前人的点云分割模型采用精确率和召回率作为衡量指标,以分割片段的数量与真实值之间的差异作为评判的标准,却没有考虑每一个分割片段的大小,缺失严谨性。针对上述缺点,本章采取真实分割区域与实际分割区域之间的共有点数量的多少作为评判标准,在此基础上运用精确率,召回率和F1-score三边测量对实验结果进行评估。
2.3第一层焊缝提取实验结果与分析
为了验证本章提出基于八叉树的区域生长算法在实验对象上的鲁棒性,采取本章提出的基于模型的RANSAC平面拟合方法与传统基于点的区域生长算法作为对照试验,并在一层一道焊工件上进行实验结果的评估。
数据集包括三维激光扫描仪完整扫描的一层一道焊数据和有噪声扫描不完整的数据,在这些数据上人工标记出期望的分割区域,以计算分割算法的精确率、召回率和F1-score的值,作为算法的输入数据集。人工标记的区域如图7所示。
本实验的软件平台为Visual Studio 2019,操作系统为Windows 10,中央处理器为Intel(R)Core(TM)i7-10700 CPU@2.90GHz,内存为16GB。本实验共采集到100组点云数据。为了验证本发明提出的八叉树区域生长算法的实际分割效果,将该算法分别用于扫描完整的工件以及扫描不完整的工件,并与原始区域生长算法、基于平面模型的RANSAC算法分割效果进行对比,判断本发明的算法是否具有优越性与鲁棒性。
图8显示的是八叉树区域生长算法在扫描工件上实际的提取效果,通过与图8中红色标记区域的比较可以得知,本章提出的算法在扫描完整的工件上具有良好的鲁棒性,不仅可以分割出平面和坡口,还可以准确识别出增材区域。对于缺失了部分结构的点云数据而言,本章提出的算法依然能快速定位并分割目标区域,具有良好的适应性。对于具有杂散点的数据,该算法提取的效果可能会因为这些离群点的存在产生一些噪声(如图7(b),(d),(f)中的深色细线),但是依然可以准确地提取出焊缝部分。
为了更进一步说明本章算法的提取效果,将基于点的区域生长算法和基于平面模型的RANSAC算法在同一组数据集上的测试效果作为比对。基于点的区域生长算法在一层一道焊的提取效果如下图所示。从图9(b)和图9(d)可以看出,相比于八叉树区域生长算法,基于点的区域生长算法并没有完全提取出一层一道焊接区域,提取的部分焊接区域掺杂有深色噪声点云。
RANSAC在一层一道的实验结果如图10所示。可以看出,在图10(c)中,RANSAC把焊缝区域划分成了不同的部分,出现了过分割的情况,从而导致算法性能降低。在图10(d)中,RANSAC将工件的上表面平滑区域视为不同的组成部分(见图中蓝色和绿色区域),出现了过分割的情况,导致精确率大幅下降。对比相同数据集下八叉树区域生长算法,RANSAC提取一层一道焊的完整性远远不及八叉树区域生长算法的完整性。
为了准确评估八叉树区域生长算法、基于点的区域生长算法、RANSAC在一层一道焊的分割效果,本发明采用在数据集上平均精确率,召回率与F1-score作为评价指标。实验结果如表1所示。
表1八叉树区域生长算法、区域生长算法、RANSAC效果对比
通过对上述实验数据的分析可得,基于八叉树的区域生长算法无论是在对负样本(离群点,噪声)的敏感性(精确率),还是在对正样本(即与真实值重合的点)的判别能力上(召回率)相比于传统的区域生长算法精确率提高了2个百分点,召回率提高了9.83个百分点,F1-score提高了5.93个百分点。与八叉树算法相比,基于点的区域生长算法在召回率上远远小于八叉树算法的召回率。基于八叉树的区域生长算法与RANSAC对比,在精确率上提升了8.72个百分点,召回率提高了12.11个百分点,F1-score提升了12.40个百分点。
2.4第二层焊缝提取结果与分析
八叉树区域生长算法可以根据焊道的形状进行准确的自适应分割,准确提取出焊缝所在的区域,为下一层的焊接提供引导。为了测试八叉树区域生长算法在多层多道上的鲁棒性,以坡口焊件的第二层为例,比较其和第一层第一道焊提取效果的差异。如图11~12所示,为八叉树区域生长算法在第二层的提取效果图。
从图中可以看出,八叉树区域生长算法在多层多道焊上的提取效果不及单道单层的提取效果,为了更准确地评估该算法在多层多道焊的实际效果,利用平均精确率和召回率以及F1-score作为评估指标与一层一道焊的结果进行对比,对比的结果如下表所示。
表2八叉树区域生长算法在不同焊接层道的提取效果
由表2可得,因为第二层第二道焊的形态特征不如第一层第一道焊明显,第二层第一道焊和第二层第二道焊之间形态过于接近导致算法不能很好地识别两者的具体差异,八叉树区域生长算法在多层多道焊的性能明显低于一层一道焊的性能。在二层一道焊的分割平均精确率为76.3%,相比于一层一道焊降低了4.7个百分点;在二层二道焊分割的精确率为74.5%,相比于一层一道焊降低了6.5个百分点,但仍然能较为准确地分割出第二层焊缝的形态。
为了完整评估八叉树区域生长算法在坡口第二层焊的提取效果,本章采用基于点的区域生长算法与RANSAC算法分割坡口第二层焊,评估它的实验效果。
基于点的区域生长算法和RANSAC算法的分割效果如图13所示。
将八叉树算法在二层一道焊和二道焊的提取效果与基于点的区域生长算法和RANSAC相比,仍然以精确率,召回率和F1-score作为评估指标,得出的实验数据如表3所示。
表3基于点区域生长算法、RANSAC和八叉树算法在多层多道焊提取效果
由表3可以得出,八叉树区域生长算法在第二层的提取效果尽管不及在一层一道焊的提取效果,但与基于点的区域生长算法和RANSAC相比,仍然是最优的,以F1-score为评价指标,分别高于基于点区域生长算法4.43个百分点,高于RANSAC算法10.21个百分点。
焊接区域轮廓提取实验
在验证区域生长算法在一层一道焊工件上具有可行性之后,需要对提取出的区域做边缘提取,得到焊接路径的特征,为了测试边缘提取算法的可行性以及该算法对不同形态的焊缝的适应能力,本章采集了多个单层单道和二层二道坡口焊件,对该算法进行测试,轮廓提取算法效果如图14~17所示。
由实验结果可以得出,边缘提取算法对于单层单道和坡口第二层焊接区域具有良好的提取效果,为了更进一步说明该算法的可实施性,结合上图工件数据,本章利用实验结果与人工标记的距离误差(Point Distance Error,PDE)来评估,将网络分割出的轮廓线与真实值进行对比,计算实验样本与真实值之间的点的距离,验证该实验的可行性。点距离误差公式的计算如下式所示:
其中,xi代表轮廓提取算法得到的点,xi′代表人工提取的点。上式表示算法计算出来的点和人工标记的点之间整体的误差值。
一层一道焊实验最终效果如表4所示:
表4一层一道焊轮廓提取效果
坡口第二层焊的实验提取效果如表5所示。
表5第二层焊接轮廓提取效果
从上表得知,本章的边缘提取算法误差在一层一道焊的平均值为0.138mm,在坡口第二层的平均值为0.18mm。
综上,轮廓提取算法可以应用坡口焊接路径提取中。
为了解决焊缝结构光中心线提取算法中存在的弧光干扰等问题,本章提出基于三维点云的焊缝提取方案,以取得焊接区域的形态。对于坡口增材而言,第一层焊缝的轮廓会为第二层焊接提供路径的信息,并且一层一道焊的焊接质量的好坏将直接影响后续层数的焊接效果。而第二层焊缝则为第三层的焊接提供路径指引,决定了第三层焊接是否能完美填充坡口,因此,前两层焊缝的提取将变得尤为重要。利用八叉树区域生长算法对工件的一层一道焊焊缝进行识别并提取,在实验结果上相比于传统的点云区域生长算法F1-score提高了5.93个百分点;与RANSAC对比,F1-score则提升12.40个百分点。在第二层的提取效果尽管不及在一层一道焊的提取效果,但与基于点的区域生长算法和RANSAC相比,仍然是最优的,以F1-score为评价指标,分别高于基于点区域生长算法4.43个百分点,高于RANSAC算法10.21个百分点。
通过对分割出的一层一道焊和坡口第二层焊区域进行边缘提取,得出焊接区域的轮廓线,并且与实际值之间的平均误差分别为0.138mm和0.18mm,可以为后续的增材提供焊接引导,验证了本章算法在坡口增材中的精确性。
Claims (2)
1.一种基于八叉树区域生长的焊接路径提取方法,其特征在于:包括如下步骤:
步骤1:取焊接图,通过基于K-近邻搜索的法向量估计算法,计算每个点的法向量,计算出K个近邻点的协方差矩阵,再采用如下主成分分析法计算出协方差矩阵的最小特征值对应的特征向量即为估计的法向量:
步骤2:计算估计的点组成的表面曲率,设协方差矩阵有三个特征向量,分别是λ0,λ1,λ2,且λ0≤λ1≤λ2,曲率δ表示为:
将每个点的曲率按升序排序,并选取最小曲率的点作为种子开始生长,设置输入的点云集合为{A},区域集合{Rc},种子集合{Sc},所有点的曲率集合为{c},法向量集合为{N},当种子点的邻域点与种子点之间的法向量夹角小于设定的夹角阈值时,则认为该点与种子点属于同一区域如果此点的曲率小于设定的阈值,则将该点设置为新的种子点,按照上述算法进行新一轮的区域生长,直到所有种子点生长完毕且原始点云中的点全部转化为区域生长的点;
步骤3:利用八叉树体素化点云,确定输入点云数据的最小包围盒,以此作为八叉树生长的根节点或零级节点,在分割时会根据点云密度的最小值初始化体素的大小,即根据点云中最稀疏的部分来确定分割粒度,这样可以确保在后续的分割中不会出现分割区域间断的情况。点云的密度计算如下:
其中,k代表八叉树邻域范围内的点,rk代表从计算的点到邻域最远点的间距;
步骤4:通过激光扫描仪测距和允许的近邻点最大角度偏差,得出实际需要计算的邻域点个数,如下式所示:
其中,常数12代表此比例可以达到基于体素法向量估计的最优值;
步骤5:划分的体素格大小需要保证准确包含所有的邻域点,所以体素格边长要大于公式(3.3)所计算的值:
步骤6:采用剩余阈值作为八叉树终止划分的依据,剩余阈值的计算如下:
其中,k表示体素内所有邻域点的个数,d表示体素内各点到由中心点和该中心点的法向量拟合的平面的距离。
2.根据权利要求1所述的基于八叉树区域生长的焊接路径提取方法,其特征在于:步骤3中具体步骤为:以根节点为起点,将包围盒内的空间进行八叉树递归划分,并将个数大于等于三的非空子节点的指针存储于它的上一级节点中,以确保每个节点中的指针都能指向它的子节点,增加树的深度,并且从父节点到子节点的所有链接均为单向,所有非空节点都被分成八个相同的子节点,从而使同一深度上所有体素大小相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211147387.4A CN115564792A (zh) | 2022-09-19 | 2022-09-19 | 基于八叉树区域生长的焊接路径提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211147387.4A CN115564792A (zh) | 2022-09-19 | 2022-09-19 | 基于八叉树区域生长的焊接路径提取方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115564792A true CN115564792A (zh) | 2023-01-03 |
Family
ID=84741593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211147387.4A Pending CN115564792A (zh) | 2022-09-19 | 2022-09-19 | 基于八叉树区域生长的焊接路径提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115564792A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117226855A (zh) * | 2023-11-15 | 2023-12-15 | 泉州华中科技大学智能制造研究院 | 一种基于三维点云的焊缝打磨轨迹规划方法 |
-
2022
- 2022-09-19 CN CN202211147387.4A patent/CN115564792A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117226855A (zh) * | 2023-11-15 | 2023-12-15 | 泉州华中科技大学智能制造研究院 | 一种基于三维点云的焊缝打磨轨迹规划方法 |
CN117226855B (zh) * | 2023-11-15 | 2024-03-15 | 泉州华中科技大学智能制造研究院 | 一种基于三维点云的焊缝打磨轨迹规划方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108681525B (zh) | 一种基于车载激光扫描数据的路面点云强度增强方法 | |
WO2018107939A1 (zh) | 一种基于边缘完备度的图像分割最优识别方法 | |
CN115082683A (zh) | 一种基于图像处理的注塑缺陷检测方法 | |
CN110060338B (zh) | 一种基于bim模型的预制构件点云识别方法 | |
CN115861317A (zh) | 基于机器视觉的塑胶模具生产缺陷检测方法 | |
CN115797354B (zh) | 用于检测激光焊接焊缝外观缺陷的方法 | |
CN116740072B (zh) | 基于机器视觉的道路表面缺陷检测方法及系统 | |
CN111488769A (zh) | 基于光斑发散尺寸的无监督式融合点云超体素化方法 | |
CN115578398A (zh) | 一种基于区域增长法的焊缝点云分割方法 | |
CN112099046A (zh) | 基于多值体素模型的机载lidar三维平面检测方法 | |
CN115564792A (zh) | 基于八叉树区域生长的焊接路径提取方法 | |
CN115082472B (zh) | 一种轮毂模具浇注成型产品的质量检测方法及系统 | |
Hui et al. | Wood and leaf separation from terrestrial LiDAR point clouds based on mode points evolution | |
CN117274167A (zh) | 一种基于三维信息的成形焊缝外观缺陷提取方法 | |
CN115656182A (zh) | 基于张量投票主成分分析的板材点云缺陷检测方法 | |
CN109359680B (zh) | 爆破岩块自动识别和块度特征提取方法及装置 | |
CN116432052B (zh) | 一种新能源汽车模具用夹具质量检测方法 | |
CN116452826A (zh) | 基于机器视觉的遮挡情况下煤矸石轮廓估计方法 | |
Samdangdech et al. | Log-end cut-area detection in images taken from rear end of eucalyptus timber trucks | |
CN115578390B (zh) | 一种用于除氧器的焊接控制方法 | |
CN117036971A (zh) | 自适应局部空谱一致下的机载LiDAR数据建筑物提取方法 | |
CN116721144A (zh) | 一种基于点云切片的锥形孔尺寸测量方法 | |
CN114937211B (zh) | 基于不变对象的遥感影像变化检测方法 | |
CN116363427A (zh) | 一种三维点云自动分类算法 | |
CN112381948B (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 |