一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种用于零件表面质量检测的点云配准方法及装置

2022-06-25 05:28:03 来源:中国专利 TAG:


1.本发明涉及图像处理技术领域,具体涉及一种用于零件表面质量检测的基于几何特征拟合的点云配准方法及装置。


背景技术:

2.近几年来,零件表面质量三维检测技术已在工业制造领域广泛应用。其关键步骤为点云配准,即零件表面扫描得到的点云数据与通过三维软件创建的标准模型精确对齐。
3.基于三维检测技术进行零件表面质量检测一般是通过将零件扫描点云与标准模型配准后,两点云作差进行对比评估实现,因此,保证点云配准精度和稳定性极其重要。点云配准一般包括扫描点云预处理和配准两个阶段,在预处理阶段,通过体素栅格下采样减少点云数据量,实现保持点云结构的基础上降低数据处理难度;通过半径滤波、高斯滤波等滤波处理,实现点云降噪,去除离散点。在配准阶段,由于零件扫描点云与通过三维软件建模得到的标准模型处于两个不同的坐标系下,初始位置相隔较远,且点云方向未知,为保证配准精度,进行初始配准获得初始变换矩阵,为精配准提供良好的初始位置;然后在初始配准的基础上,采用icp(iterative closest point,迭代最近点)算法进行精配准,通过不断迭代优化点云中最近点距离,实现两点云的精确对齐。
4.由于零件的扫描环境一般较为复杂,通常存在辅助工具、地面等背景,扫描点云中除待测零件点云外可能会存在包含零件点云等多个高密度点云簇,常规滤波处理对离散噪点等干扰信息较为有效,但对于高密度点云簇的干扰,通常无法得到良好的预处理效果,从而也会影响点云配准精度与稳定性。


技术实现要素:

5.本发明针对现有技术中存在的技术问题,利用零件具有柱面、球面等几何特征的特点,提出一种基于几何特征拟合的点云数据预处理及配准方法及装置。
6.本发明解决上述技术问题的技术方案如下:
7.第一方面,本发明提供一种用于零件表面质量检测的点云配准方法,包括:
8.s1,分别获取待测零件扫描点云集合p以及待测零件对应的标准模型q,并对所述扫描点云集合p进行预处理得到点云集合p
t

9.s2,将点云集合p
t
与标准模型q进行初始配准;
10.s3,根据零件表面所具有的几何特征将点云集合p
t
划分成基础部分p0与几何特征部分p1~pn,并构建基础部分和几何特征部分中各点与标准模型q中各点的匹配点对;其中基础部分为非几何特征部分,n为零件表面所具有的几何特征数量;
11.s4,利用基础部分和几何特征部分对应的匹配点对,计算协方差矩阵并进行奇异值分解,分别计算得到p0~pn对应的变换参数r为旋转矩阵,t为平移矩阵;
12.s5,根据零件表面具有的几何特征及其点云数据占比,为基础部分和几何特征部
分分配不同的权重θk,并计算总体变换参数
13.s6,利用总体变换参数v变换待测零件的扫描点云,并重复步骤s3~s5,直至满足迭代终止条件,输出配准结果。
14.进一步的,将待测零件的扫描点云集合p
t
与标准模型q进行初始配准时,包括:
15.构建标准模型q的kd-tree结构,对于扫描点云集合p
t
中的各点p,利用kd-tree在标准模型q中搜索最近点q,构成n个匹配点对。
16.进一步的,所述的几何特征的权重根据下式进行分配:
[0017][0018]
式中,n为匹配点对数量,n(pk)为n个匹配点对中几何特征pk的数量。
[0019]
进一步的,步骤s5还包括:
[0020]
1)判断变换后的扫描点云与标准模型的配准误差是否小于误差函数阈值;
[0021]
2)判断迭代次数是否达到设定的最大迭代次数;
[0022]
若1)或2)任一判断结果为是,则表示满足迭代终止条件。
[0023]
进一步的,所述配准误差通过下式计算:
[0024][0025]
式中,pi表示第i个匹配点对中待测零件扫描点云中的点,qi表示第i个匹配点对中标准模型q中的点。
[0026]
进一步的,所述预处理,包括:
[0027]
s601,对于未经预处理的扫描点云数据集p,根据点云密度将连续分布的点聚类,将扫描点云数据集划分成m个点云簇集合{c1,c2,...,cm};
[0028]
s602,根据待测零件的几何特征建立模型方程为:m=f(x,y,z,s,d),(x,y,z)为数据集p中点p的坐标值,s为求解模型所需的最少点的数量,该模型存在固有特征与模型表面上的点满足关系d;
[0029]
s603,选取一个点云簇集合c
l
,l=1~m,并从点云簇集合c
l
中随机选择一个至少包含s个点的子集s,将子集s中各点的坐标根据模型方程m进行拟合得到模型m
*

[0030]
s604,对于点云簇集合c
l
中其余点p
t
,计算其与模型m
*
的固有特征关系d
*
的偏离值评价误差erro(p
t
)=|d
*-d|;若erro(p
t
)≤max erro,则保留该点,max erro为预设的误差阈值;当保留点的数量大于设定值时,则点云簇集合c
l
即为待测零件对应的扫描点云p
t
;删除除点云簇集合c
l
外的其他点云簇集合。
[0031]
进一步的,步骤s604还包括:
[0032]
当保留点的数量大于设定值时,利用所保存的点根据最小二乘法拟合出新的几何模型并替换m
*

[0033]
第二方面,本发明提供一种用于零件表面质量检测的点云配准装置,包括:
[0034]
数据获取及预处理模块,分别获取待测零件扫描点云集合p以及待测零件对应的标准模型q,并对所述扫描点云集合p进行预处理得到点云集合p
t

[0035]
初始配准模块,将点云集合p
t
与标准模型q进行初始配准;
[0036]
点云划分及匹配点对构建模块,根据零件表面所具有的几何特征将点云集合p
t
划分成基础部分p0与几何特征部分p1~pn,并构建基础部分和几何特征部分中各点与标准模型q中各点的匹配点对;其中基础部分为非几何特征部分,n为零件表面所具有的几何特征数量;
[0037]
第一变换参数计算模块,利用基础部分和几何特征部分对应的匹配点对,计算协方差矩阵并进行奇异值分解,分别计算得到p0~pn对应的变换参数r为旋转矩阵,t为平移矩阵;
[0038]
第二变换参数计算模块,根据零件表面具有的几何特征及其点云数据占比,为基础部分和几何特征部分分配不同的权重θk,并计算总体变换参数利用总体变换参数v变换待测零件的扫描点云;
[0039]
终止条件判断及输出模块,用于判断是否满足迭代终止条件,若满足则输出配准结果。
[0040]
第三方面,本发明提供一种电子设备,包括:
[0041]
存储器,用于存储计算机软件程序;
[0042]
处理器,用于读取并执行所述计算机软件程序,进而实现本发明第一方面所述的一种用于零件表面质量检测的点云配准方法。
[0043]
第四方面,本发明提供一种非暂态计算机可读存储介质,所述存储介质中存储有用于实现本发明第一方面所述的一种用于零件表面质量检测的点云配准方法的计算机软件程序。
[0044]
本发明的有益效果是:本发明利用零件具有柱面、球面等几何特征的特点,提出一种基于几何特征拟合的点云数据预处理及配准方法,对于存在大量背景及噪声的扫描点云能够提高配准稳定性,并提高配准精度及速度。
附图说明
[0045]
图1为本发明实施例提供的一种用于零件表面质量检测的点云预处理及配准方法流程示意图;
[0046]
图2为本发明实施例提供的引入集合特征权重的icp配准算法流程图;
[0047]
图3为本发明实施例提供的一种用于零件表面质量检测的点云配准装置结构示意图;
[0048]
图4为本发明实施例提供的一种电子设备实施例示意图;
[0049]
图5为本发明实施例提供的一种非暂态计算机可读存储介质实施例示意图。
具体实施方式
[0050]
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0051]
本发明实施例以锥齿轮零件为对象,对本方案进行说明。其中齿轮标准模型采用solidworks建模得到,并对模型表面均匀采样。
[0052]
如图1所示,本发明提供一种用于零件表面质量检测的点云预处理及配准方法,主要包括预处理和配准两个部分。
[0053]
1、预处理阶段:
[0054]
由于零件的扫描环境一般较为复杂,通常存在辅助工具、地面等背景,扫描点云中除待测零件点云外可能会存在包含零件点云等多个高密度点云簇,常规滤波处理对离散噪点等干扰信息较为有效,但对于高密度点云簇的干扰,通常无法得到良好的预处理效果,从而也会影响点云配准精度与稳定性。
[0055]
本发明实施例利用基于密度聚类以及几何特征拟合的预处理算法对待测零件的扫描点云数据集进行预处理。
[0056]
为了降低噪声,去除离散群点,在获取待测零件扫描点云后利用点云数据间的距离差异,进行基于密度聚类的点云划分。
[0057]
步骤1.1,对于点云数据集p,根据点云密度将连续分布的点聚类,使任一点的r
*
邻域内数量满足num》minnum,minnum为给定邻域最小数量,从而将点云数据集p划分成m个点云簇集合{c1,c2,...,cm}。对于同一点云簇集合中的任意两点pa和pb满足distance(pa,pb)≤r
*
,即同一点云簇集合中任意两点间的距离小于等于r
*
。在本实施例中,设置近邻搜索半径r
*
=1.2mm,邻域内最少点数量minnum=10,为了滤掉噪声及背景部分,设定聚类需要的最少点数目为10k。
[0058]
通过零件中所存在的平面、圆柱、球等几何特征拟合解决点云簇集合中目标点云的判断与提取问题。
[0059]
根据待测零件的几何特征建立模型方程为:m=f(x,y,z,s,d),(x,y,z)为扫描点云数据集p中点p的坐标值,s为求解模型所需的最少点的数量,该模型存在固有特征与模型表面上的点满足关系d。
[0060]
步骤1.2,由于锥齿轮具有圆柱几何特征,因此构建圆柱模型方程。以轴线作为圆柱模型的固有特征,则圆柱表面上任一点p(x,y,z)到圆柱轴线的距离满足关系d=r,r为圆柱底面半径。记圆柱轴线的单位向量(i,j,k),轴线上任一点p0(x0,y0,z0),则圆柱模型方程为:
[0061]
(x-x0)2 (y-y0)2 (z-z0)2=r2 [i(x-x0) j(y-y0) k(z-z0)]2[0062]
求解圆柱模型至少需要7个点求出x0、y0、z0、i、j、k、r7个参数,即s=7。
[0063]
步骤1.3,选取一个点云簇集合c
l
,l=1~m,并从点云簇集合c
l
中随机选择一个至少包含s个点的子集s,将子集s中各点的坐标根据模型方程m进行拟合得到模型m
*

[0064]
步骤1.4,对于点云簇集合c
l
中其余点p
t
,计算其与模型m
*
的固有特征关系d
*
的偏离值评价误差erro(p
t
)=|d
*-d|;若erro(p
t
)≤maxerro,则保留该点,maxerro为预设的误差阈值;当保留点的数量大于设定值时,则点云簇集合c
l
即为待测零件对应的扫描点云p
t
;删除除点云簇集合c
l
外的其他点云簇集合。
[0065]
由于通过erro(p
t
)≤maxerro保留的点,与模型m
*
之间存在一定误差,因此在保留的点的数量大于设定值时,利用最小二乘法重新拟合模型并更新m
*
。同时为了进一步保证拟合准确度,可以从点云簇集合中多次选择不同的子集s,根据满足误差的点的数量或调整误差阈值,确定最优几何模型。
[0066]
2、配准阶段
[0067]
本发明实施例在配准阶段在传统icp算法中引入几何特征权重进行改进,即先采用传统icp算法对经过预处理后的待测零件的扫描点云集合p
t
与标准模型q进行初始配准,再根据零件表面具有的几何特征及其点云数据占比,为每种几何特征分配不同的权重,然后求解变换矩阵r、t,使预处理后扫描点云pt经过平移、旋转变换后与标准模型q对齐。其算法流程如图2所示。
[0068]
步骤2.1,针对经过预处理的待测零件对应的扫描点云p
t
,根据零件表面所具有的几何特征将扫描点云集合p
t
划分成基础部分p0与几何特征部分p1~pn;其中基础部分为非几何特征部分,n为零件表面所具有的几何特征数量。
[0069]
步骤2.2,为了提高点云搜索速度,构建标准模型q的kd-tree结构。
[0070]
步骤2.3,对于扫描点云集合p
t
中的各点,利用kd-tree在q中搜索最近点,构成n个匹配点对。
[0071]
步骤2.4,利用n个匹配点对,计算协方差矩阵并进行奇异值分解,分别计算得到p0~pn对应的变换参数r为旋转矩阵,t为平移矩阵。
[0072]
步骤2.5,根据零件表面具有的几何特征及其点云数据占比,根据下式为每种几何特征分配不同的权重θk:
[0073][0074]
式中,n为匹配点对数量,n(pk)为n个匹配点对中几何特征pk的数量。
[0075]
然后计算总体变换参数
[0076]
利用总体变换参数v变换待测零件的扫描点云,并重复步骤2.3~s2.5,直至满足迭代终止条件,输出配准结果。
[0077]
1)判断变换后的扫描点云与标准模型的配准误差是否小于误差函数阈值;
[0078]
2)判断迭代次数是否达到设定的最大迭代次数;
[0079]
若1)或2)任一判断结果为是,则表示满足迭代终止条件。
[0080]
所述配准误差通过下式计算:
[0081][0082]
式中,pi表示第i个匹配点对中待测零件扫描点云中的点,qi表示第i个匹配点对中标准模型q中的点。
[0083]
本发明方法利用零件具有柱面、球面等几何特征的特点,提出一种基于几何特征拟合的点云数据预处理及配准方法,对于存在大量背景及噪声的扫描点云能够提高配准稳定性,并提高配准精度及速度。
[0084]
基于上述方法,本发明实施例还提供一种用于零件表面质量检测的点云配准装置,如图3所示,包括:
[0085]
数据获取及预处理模块,分别获取待测零件扫描点云集合p以及待测零件对应的标准模型q,并对所述扫描点云集合p进行预处理得到点云集合p
t

[0086]
初始配准模块,将点云集合p
t
与标准模型q进行初始配准;
[0087]
点云划分及匹配点对构建模块,根据零件表面所具有的几何特征将点云集合p
t
划分成基础部分p0与几何特征部分p1~pn,并构建基础部分和几何特征部分中各点与标准模型q中各点的匹配点对;其中基础部分为非几何特征部分,n为零件表面所具有的几何特征数量;
[0088]
第一变换参数计算模块,利用基础部分和几何特征部分对应的匹配点对,计算协方差矩阵并进行奇异值分解,分别计算得到p0~pn对应的变换参数r为旋转矩阵,t为平移矩阵;
[0089]
第二变换参数计算模块,根据零件表面具有的几何特征及其点云数据占比,为基础部分和几何特征部分分配不同的权重θk,并计算总体变换参数利用总体变换参数v变换待测零件的扫描点云;
[0090]
终止条件判断及输出模块,用于判断是否满足迭代终止条件,若满足则输出配准结果。
[0091]
在此基础上,该系统还包括预处理模块,所述预处理模块包括:
[0092]
聚类模块,对于未经预处理的扫描点云数据集p,根据点云密度将连续分布的点聚类,将扫描点云数据集划分成m个点云簇集合{c1,c2,...,cm};
[0093]
模型构建模块,根据待测零件的几何特征建立模型方程为:m=f(x,y,z,s,d),(x,y,z)为数据集p中点p的坐标值,s为求解模型所需的最少点的数量,该模型存在固有特征与模型表面上的点满足关系d;
[0094]
拟合模块,选取一个点云簇集合c
l
,l=1~m,并从点云簇集合c
l
中随机选择一个至少包含s个点的子集s,将子集s中各点的坐标根据模型方程m进行拟合得到模型m
*

[0095]
评价筛选模块,对于点云簇集合c
l
中其余点p
t
,计算其与模型m
*
的固有特征关系d
*
的偏离值评价误差erro(p
t
)=|d
*-d|;若erro(p
t
)≤max erro,则保留该点,max erro为预设的误差阈值;当保留点的数量大于设定值时,则点云簇集合c
l
即为待测零件对应的扫描点云p
t
;保留点云簇集合c
l
,并删除其他点云簇集合。
[0096]
请参阅图4,图4为本发明实施例提供的电子设备的实施例示意图。如图4所示,本发明实施例提了一种电子设备500,包括存储器510、处理器520及存储在存储器520上并可在处理器520上运行的计算机程序511,处理器520执行计算机程序511时实现以下步骤:
[0097]
s1,分别获取待测零件扫描点云集合p以及待测零件对应的标准模型q,并对所述扫描点云集合p进行预处理得到点云集合p
t

[0098]
s2,将点云集合p
t
与标准模型q进行初始配准;
[0099]
s3,根据零件表面所具有的几何特征将点云集合p
t
划分成基础部分p0与几何特征部分p1~pn,并构建基础部分和几何特征部分中各点与标准模型q中各点的匹配点对;其中基础部分为非几何特征部分,n为零件表面所具有的几何特征数量;
[0100]
s4,利用基础部分和几何特征部分对应的匹配点对,计算协方差矩阵并进行奇异值分解,分别计算得到p0~pn对应的变换参数r为旋转矩阵,t为平移矩阵;
[0101]
s5,根据零件表面具有的几何特征及其点云数据占比,为基础部分和几何特征部分分配不同的权重θk,并计算总体变换参数
[0102]
s6,利用总体变换参数v变换待测零件的扫描点云,并重复步骤s3~s5,直至满足迭代终止条件,输出配准结果。
[0103]
请参阅图5,图5为本发明实施例提供的一种计算机可读存储介质的实施例示意图。如图5所示,本实施例提供了一种计算机可读存储介质600,其上存储有计算机程序611,该计算机程序611被处理器执行时实现如下步骤:
[0104]
s1,分别获取待测零件扫描点云集合p以及待测零件对应的标准模型q,并对所述扫描点云集合p进行预处理得到点云集合p
t

[0105]
s2,将点云集合p
t
与标准模型q进行初始配准;
[0106]
s3,根据零件表面所具有的几何特征将点云集合p
t
划分成基础部分p0与几何特征部分p1~pn,并构建基础部分和几何特征部分中各点与标准模型q中各点的匹配点对;其中基础部分为非几何特征部分,n为零件表面所具有的几何特征数量;
[0107]
s4,利用基础部分和几何特征部分对应的匹配点对,计算协方差矩阵并进行奇异值分解,分别计算得到p0~pn对应的变换参数r为旋转矩阵,t为平移矩阵;
[0108]
s5,根据零件表面具有的几何特征及其点云数据占比,为基础部分和几何特征部分分配不同的权重θk,并计算总体变换参数
[0109]
s6,利用总体变换参数v变换待测零件的扫描点云,并重复步骤s3~s5,直至满足迭代终止条件,输出配准结果。
[0110]
需要说明的是,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
[0111]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0112]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0113]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0114]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0115]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0116]
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献