一种基于自适应阈值的点云精确配准方法与流程

文档序号:16253750发布日期:2018-12-12 00:15阅读:439来源:国知局
一种基于自适应阈值的点云精确配准方法与流程

本发明属于三维测量技术领域,具体涉及一种工业自动化检测过程中基于自适应阈值的点云精确配准方法。

背景技术

随着三维测量技术的发展,三维测量设备的测量精度越来越高,测量速度也越来越快,基于测量模型与cad模型对比分析的数字化三维检测方法已经成为工业检测行业的主要趋势。在这种检测方法中,通过三维测量设备获取被测工件表面三维点云数据后,需要预先将测量点云与cad模型进行对齐。这是因为测量点云是处于测量坐标系下,该坐标系一般建立在测量设备某个相机的光心处,而cad模型是根据其自身的设计坐标系获得的,当统一至同一坐标系下时,两者之间的位姿是不相同的。因此,为提高被测工件测量的准确度、保证被测工件制造精度和合格率,实现测量点云模型与cad模型的配准就成为数字化三维检测技术应用的一个关键。

虽然前人对点云配准技术已经有了比较详细的研究,但是对于测量点云与cad模型的精确配准还存在问题。在自动化三维检测过程中,一般会使用夹具、支具等测量辅具对测量姿态进行定位测量,并通过有效地预标定从而达到测量点云与cad模型点云粗略配准的效果,但也会导致测量数据中包含测量辅具等背景数据,影响后续的精确配准过程。

现有的一些方法虽然能够在一定程度上降低无关数据对点云精确配准结果的影响,但并不能很好的解决工业自动化检测数据中存在的大量无关数据对配准结果的影响。其根本原因在于这些方法无法有效地对工件数据和无关背景数据进行区分,在精确配准过程中仍然使用无关背景数据参与计算导致配准结果出现错误。



技术实现要素:

针对现有技术中存在的技术问题,本发明的目的在于提供了一种基于自适应阈值的点云精确配准方法,该方法能有效解决工业生产中自动化检测获取的三维点云与工业设计的cad模型由于无关背景数据导致的精确配准失败的问题。

为实现上述目的,本发明是通过以下技术方案实现的:

一种基于自适应阈值的点云精确配准方法,包括以下步骤:

(1)获取待测工件测量点云及cad模型点云;

(2)点云预处理:

(2a)建立kd-tree:对待测工件测量点云和cad模型点云分别建立kd-tree,并基于kd-tree求取待测工件测量点云和cad模型点云中每个点的k个近邻点;

(2b)设置收敛条件:设置迭代过程的收敛条件,所述收敛条件包括旋转收敛条件和平移收敛条件;

(3)对待测工件测量点云迭代进行刚性变换:

(3a)计算最近邻匹配点对:对待测工件测量点云pdata中的点pi使用步骤(2a)中构建的kd-tree在cad模型点云pmodel中查找对应的最近点qi,构成一组匹配点ci对并保留两点之间的距离遍历待测工件测量点云中的每个点,从而获得一个匹配点对集{ci};

(3b)计算自适应阈值:设置自适应阈值dadptive,遍历匹配点对集{ci},若则保留该点对,否则认为该点对是无关数据点对;剔除无关数据点对及待测工件测量点云pdata中的对应点pi,更新得到匹配点对集{ci′}以及测量点云pdata′;

(3c)去除误匹配:根据的数值大小对{ci′}中匹配点对由小到大进行排序,然后取前一定百分比的匹配点对构成{ci″}用于求解刚性变换矩阵;

(3d)计算刚性变换矩阵:在{ci″}中计算测量点云和cad模型点云对应的一组欧氏变换矩阵;

(3e)变换待测工件测量点云坐标:根据步骤(3d)中欧式变换矩阵对所述测量点云中每个点pi数据集通过矩阵乘法、旋转矩阵r和平移矩阵t计算得到相应的转换坐标;

(3f)判断步骤(3d)中求取的刚性变换矩阵是否满足步骤(2b)中设置的收敛条件,若满足条件,则配准过程结束;若不满足,则跳回步骤(3a)中进行下一次迭代。

进一步地,所述旋转收敛条件通过判断该次迭代过程中待测工件测量点云的旋转角度的余弦值cosθ是否大于给定的旋转阈值e来获得,若cosθ>e,则为旋转收敛;若cosθ≤e,则为旋转未收敛。

进一步地,所述平移收敛条件通过判断该次迭代过程中测量点云的平移距离d是否小于给定的平移阈值t来获得,若d<t,则为平移收敛;若d≥t,则为平移未收敛。

进一步地,所述步骤(3b)中自适应阈值其中为{ci}中匹配点对中两点之间距离的平均值,σ为{ci}中匹配点对中两点之间的距离的标准偏差,s为误差尺度因子。

进一步地,所述步骤(3d)中计算刚性变换矩阵的方法为:

首先令α、β、γ都很小且接近于0,将公式

变换为公式

然后根据公式

计算出通过奇异值分解的方法求解出绕x轴旋转角度α、绕y轴旋转角度β、绕z轴旋转角度γ、沿x轴平移大小tx、沿y轴平移大小ty、沿z轴平移大小tz,进而通过得到旋转矩阵r和平移矩阵t;其中,nc是匹配点对集{ci}中匹配点对的数目,ni是qi的法向量,α、β、γ分别表示待测工件测量点云绕x、y、z轴的旋转角度,rx(α)表示绕x轴旋转α角度所对应的旋转矩阵,ry(β)表示绕y轴旋转β角度所对应的旋转矩阵,rz(γ)表示绕z轴旋转γ角度所对应的旋转矩阵,rij代表矩阵第i行、第j列元素,r11=cosγcosβ、r12=-sinγcosα+cosγsinβsinα、r13=sinγsinα+cosγsinβcosα、r21=sinγcosβ、r22=cosγcosα+sinγsinβsinα、r23=-cosγsinα+sinγsinβcosα、r31=-sinβ、r32=cosβsinα、r33=cosβcosα。

与现有技术相比,本发明的有益效果在于:

(1)本发明的自适应阈值的点云精确配准方法,基于待测工件测量点云和cad模型点云计算出自适应阈值,并通过自适应阈值剔除无关数据的影响,对测量点云进行刚性变换达到精确配准目的。该方法有效解决工业生产中自动化检测获取的三维点云与工业设计的cad模型由于无关背景数据导致的精确配准失败的问题。

(2)本发明的自适应阈值的点云精确配准方法由于能有效区分无关背景数据,逐渐减少了过程中的计算量,因此提高了配准效率。

(3)本发明中采用对点云噪声和体外孤点抗干扰性能较好的点到面误差度量优化方法建立相应的数学模型,将非线性最小二乘问题转化为线性最小二乘问题,通过求解线性方程组得到欧式变换矩阵,该算法收敛速度更快,收效结果更好。

(4)本发明的方法在工业自动化检测环境下具有较高的鲁棒性。

附图说明

图1为本发明的基于自适应阈值的点云精确配准方法流程图。

图2为待测工件测量点云迭代刚性变换流程图。

具体实施方式

展示一下实例来具体说明本发明的某些实施例,且不应解释为限制本发明的范围。对本发明公开的内容可以同时从材料、方法和反应条件进行改进,所有这些改进,均应落入本发明的的精神和范围之内。

如图1所示,本发明个较佳实施例的自适应阈值的点云精确配准方法,其中涉及的测量点云模型可以是针对任何零部件、产品或装置进行测量而得到的点云模型,以下对本较佳实施例的配准方法进行示例性地说明。

1、获取待测工件测量点云及cad模型点云

首先分别用三维扫描仪从不同视角扫描物体表面和cad模型,获得待测工件测量点云及cad模型三维点云,取待测工件测量点云及cad模型点云分别作为目标点集p和源点集q。

2、点云预处理

(2a)建立kd-tree:对待测工件测量点云和cad模型点云分别建立kd-tree,并基于kd-tree求取待测工件测量点云和cad模型点云中每个点的k个近邻点。

其中,本发明中点云kd-tree的构建步骤如下:

1)分别求待测工件测量点云和cad模型点云中所有点在x、y、z维度上的方差;

2)将方差最大的维度设为split域;

3)将所有点按split域的值进行排序,取中值点作为根节点;

4)将split域的值小于中值点split域的值的点分配到左子空间,反之分配到右子空间;

5)对左子空间和右子空间分别重复步骤1)到4),直到只剩一个数据点。

(2b)设置收敛条件

本发明提出的方法主要原理是利用besl等于1992年在《ieeetransactionsonpatternanalysisandmachineintelligence》中提出的迭代最近点(iterativeclosestpoint,icp)算法对测量点云进行刚性变换达到精确配准目的,因此需要对迭代过程设置收敛条件。本方法中使用旋转收敛条件和平移收敛条件,当算法同时满足两个条件时判定为配准收敛,并限制算法最大迭代次数防止算法陷入死循环。

旋转收敛条件通过判断该次迭代过程中待测工件测量点云的旋转角度的余弦值cosθ是否大于给定的旋转阈值e来获得,若cosθ>e,则为旋转收敛;若cosθ≤e,则为旋转未收敛。平移收敛条件通过判断该次迭代过程中测量点云的平移距离d是否小于给定的平移阈值t来获得,若d<t,则为平移收敛;若d≥t,则为平移未收敛。

每次迭代过程中旋转矩阵用r表示:

式中α、β、γ分别表示待测工件测量点云绕x、y、z轴的旋转角度,rx(α)表示绕x轴旋转α角度所对应的旋转矩阵,ry(β)表示绕y轴旋转β角度所对应的旋转矩阵,rz(γ)表示绕z轴旋转γ角度所对应的旋转矩阵,rij代表矩阵第i行、第j列元素。

根据旋转矩阵的角-轴表示法可以得到cosθ的值,具体实现的数学公式如下所示:

平移收敛条件通过判断该次迭代过程中测量点云的平移距离d是否小于给定的平移阈值t来获得,是则平移收敛,否则未收敛。其中tx为沿x轴平移大小、ty为沿y轴平移大小、tz为沿z轴平移大小。

3、对待测工件测量点云迭代进行刚性变换

该步骤主要由计算最近邻匹配点对、计算自适应阈值、去除误匹配、计算刚性变换矩阵、变换测量点云坐标和判定是否继续迭代六个子步骤组成,具体流程如下附图2所示。

(3a)计算最近邻匹配点对

对待测工件测量点云pdata中的点pi使用步骤(2a)中构建的kd-tree在cad模型点云pmodel中查找对应的最近点qi,构成一组匹配点ci对并保留两点之间的距离遍历待测工件测量点云中的每个点,从而获得一个匹配点对集{ci}。

(3b)计算自适应阈值

设置自适应阈值其中为{ci}中匹配点对中两点之间距离的平均值,σ为{ci}中匹配点对中两点之间的距离的标准偏差,s为误差尺度因子;遍历匹配点对集{ci},若则保留该点对,否则认为该点对是无关数据点对;剔除无关数据点对及待测工件测量点云pdata中的对应点pi,更新得到匹配点对集{ci′}以及测量点云pdata′。

本实施例中的自适应阈值用于有效地对工件数据和无关背景数据进行区分,使无关背景数据在精确配准过程中不参与计算,从而提高配准结果准确率。

(3c)去除误匹配

在计算匹配点对的过程中,唯一的判断标准是欧式距离,难免会存在错误的匹配点对,因此需要对匹配点对进行筛选,本发明中采用百分比的方法选择匹配点对。根据的数值大小对{ci′}中匹配点对由小到大进行排序,然后取前一定百分比的匹配点对构成{ci″}用于求解刚性变换矩阵;

(3d)计算刚性变换矩阵

本发明中采用对点云噪声和体外孤点抗干扰性能较好的点到面误差度量优化方法建立相应的数学模型,然后通过求解相应的目标函数获得刚性变换矩阵,包括旋转矩阵r和平移矩阵t两部分,具体实现的数学公式如下所示:

其中,nc是匹配点对集{ci}中匹配点对的数目,ni是qi的法向量。求解过程中使用low于2004年在《chapelhill,universityofnorthcarolina》中提出的线性求解方法,由于待测工件测量点云和模型cad之间空间位置比较接近,所以可以认为α、β、γ都很小且接近于0,从而有sinθ≈θ,cosθ≈1,令t=(tx,ty,tz)t,进行一番推导可以将目标函数近似转化为如下所示:

然后根据公式计算出通过奇异值分解的方法求解出绕x轴旋转角度α、绕y轴旋转角度β、绕z轴旋转角度γ、沿x轴平移大小tx、沿y轴平移大小ty、沿z轴平移大小tz,进而通过得到旋转矩阵r和平移矩阵t;其中,α、β、γ分别表示待测工件测量点云绕x、y、z轴的旋转角度,rx(α)表示绕x轴旋转α角度所对应的旋转矩阵,ry(β)表示绕y轴旋转β角度所对应的旋转矩阵,rz(γ)表示绕z轴旋转γ角度所对应的旋转矩阵,rij代表矩阵第i行、第j列元素,r11=cosγcosβ、r12=-sinγcosα+cosγsinβsinα、r13=sinγsinα+cosγsinβcosα、r21=sinγcosβ、r22=cosγcosα+sinγsinβsinα、r23=-cosγsinα+sinγsinβcosα、r31=-sinβ、r32=cosβsinα、r33=cosβcosα。

(3e)变换待测工件测量点云坐标

根据步骤(3d)中求取的旋转矩阵r和平移矩阵t,利用刚体变换公式p1=r*p+t,对所述测量点云中每个点pi数据集计算得到相应的转换坐标。

(3f)判断步骤(3d)中求取的刚性变换矩阵是否满足步骤(2b)中设置的收敛条件,若满足条件,则配准过程结束;若不满足,则跳回步骤(3a)中进行下一次迭代。

本发明的自适应阈值的点云精确配准方法,基于待测工件测量点云和cad模型点云计算出自适应阈值,并通过自适应阈值剔除无关数据的影响,对测量点云进行刚性变换达到精确配准目的。该方法有效解决工业生产中自动化检测获取的三维点云与工业设计的cad模型由于无关背景数据导致的精确配准失败的问题。同时,由于能有效区分无关背景数据,逐渐减少了过程中的计算量,因此提高了配准效率

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1