点云数据的拟合方法和系统转让专利

申请号 : CN201711377019.8

文献号 : CN108230377B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 邵远征张志超董逢武周莉向涛周诚

申请人 : 武汉国安智能装备有限公司

摘要 :

本发明提供一种点云数据的拟合方法和系统,其中方法包括:根据上一次迭代获得的旋转矩阵和平移矩阵,对上一次迭代的基准模型中的所有三角面片进行刚体变换,获得本次迭代的基准模型;从目标模型中一一匹配与所述本次迭代的基准模型中每个三角面片符合拟合条件的三角面片,将匹配成功的两个三角面片构成一组面片对;获得本次迭代的旋转矩阵和平移矩阵;根据判断本次迭代的最小二乗和与上一次迭代的最小二乘和的差值的绝对值小于阈值,两组点云数据完成拟合。本发明将面片进行匹配,大幅节约了处理时间,同时减少了相似点匹配造成的误匹配,增强了抗噪声干扰的能力,克服了原始ICP算法在转角过大之后不准确的问题,提供了配准精度。

权利要求 :

1.一种点云数据的拟合方法,其特征在于,包括:

S1、根据上一次迭代获得的旋转矩阵和平移矩阵,对上一次迭代的基准模型中的所有三角面片进行刚体变换,获得本次迭代的基准模型;

S2、从目标模型中一一匹配与所述本次迭代的基准模型中每个三角面片符合拟合条件的三角面片,将匹配成功的两个三角面片构成一组面片对;

S3、以本次迭代的所有面片对中的基准面片与相应的目标面片间拟合参数的最小二乘和为依据,获得本次迭代的旋转矩阵和平移矩阵;

S4、根据判断本次迭代的最小二乘和与上一次迭代的最小二乘和的差值的绝对值小于阈值,获知停止迭代过程,两组点云数据完成拟合;

其中,所述目标模型和基准模型分别为待测物体的两组三角网表面模型,所述符合拟合条件通过两个三角面片间拟合参数最小且拟合参数差值符合阈值判断;

所述步骤S2具体包括:

S2.1、将本次迭代的基准模型中的三角面片作为基准面片,从所述目标模型中选取一个与该基准面片拟合参数最小的三角面片,作为预选面片;

S2.2、根据所述预选面片与该基准面片的拟合参数符合阈值,获知该预选面片为该基准面片的目标面片,将该基准面片与目标面片构成一个面片对;

所述拟合参数为面片间距或面片夹角中的一种。

2.如权利要求1所述的拟合方法,其特征在于,当所述拟合参数为面片间距时,所述步骤S3具体包括:根据本次迭代的基准模型的重心坐标,对各基准面片的重心坐标进行平移,获得平移后的各基准面片的重心坐标;根据所述目标模型的重心坐标,对各目标面片的重心坐标进行平移,获得平移后的各目标面片的重心坐标;

根据所述平移后的各基准面片的重心坐标、平移后的各目标面片的重心坐标、面片对的个数以及旋转矩阵,构建以所有面片对中的基准面片与相应的目标面片间距离的最小二乘和函数;

求解使所述最小二乘和函数最小的旋转矩阵,作为本次迭代的旋转矩阵;根据所述基准模型的重心坐标、目标模型的重心坐标以及所述本次迭代的旋转矩阵,获得本次迭代的平移矩阵。

3.如权利要求2所述的拟合方法,其特征在于,

所述基准模型的重心坐标的获取方法为:获取各基准面片的重心坐标,将各基准面片的重心坐标的平均值,作为基准模型的重心坐标;

所述目标模型的重心坐标的获取方法为:获取各目标面片的重心坐标,将各目标面片的重心坐标的平均值,作为目标模型的重心坐标。

4.如权利要求1所述的拟合方法,其特征在于,其特征在于,所述步骤S1之前,所述拟合方法还包括:采集所述待测物体的两组点云数据,对两组点云数据分别进行三角构网,获得两组三角网表面模型,将其中一组三角网表面模型作为所述基准模型,将另一组三角网表面模型作为所述目标模型。

5.如权利要求4所述的拟合方法,其特征在于,所述三角构网的方法为泊松表面重建算法。

6.如权利要求4所述的拟合方法,其特征在于,所述两组点云数据均通过深度相机获取。

7.一种点云数据的拟合系统,其特征在于,包括:

基准模型变换单元,用于根据上一次迭代获得的旋转矩阵和平移矩阵,对上一次迭代的基准模型中的所有三角面片进行刚体变换,获得本次迭代的基准模型;

面片对单元,用于从目标模型中一一匹配与所述本次迭代的基准模型中每个三角面片符合拟合条件的三角面片,将匹配成功的两个三角面片构成一组面片对;

刚性变换单元,用于以本次迭代的所有面片对中的基准面片与相应的目标面片间拟合参数的最小二乘和为依据,获得本次迭代的旋转矩阵和平移矩阵;

拟合单元,用于根据判断本次迭代的最小二乗和与上一次迭代的最小二乘和的差值的绝对值小于阈值,获知停止迭代过程,两组点云数据完成拟合;

其中,所述目标模型和基准模型分别为待测物体的两组三角网表面模型,所述符合拟合条件通过两个三角面片间拟合参数最小且拟合参数差值符合阈值判断;

所述步骤S2具体包括:

S2.1、将本次迭代的基准模型中的三角面片作为基准面片,从所述目标模型中选取一个与该基准面片拟合参数最小的三角面片,作为预选面片;

S2.2、根据所述预选面片与该基准面片的拟合参数符合阈值,获知该预选面片为该基准面片的目标面片,将该基准面片与目标面片构成一个面片对;

所述拟合参数为面片间距或面片夹角中的一种。

说明书 :

点云数据的拟合方法和系统

技术领域

[0001] 本发明涉及点云扫描测绘技术领域,更具体地,涉及点云数据的拟合方法和系统。

背景技术

[0002] 点云是在同一空间参考系下表达目标空间分布和目标表面特性的海量点集合。点云的属性包括空间分辨率,点位精度,表面法向量等。在获取物体表面每个采样点的空间坐标后,得到的是一个点的集合,称之为“点云”(Point Cloud)。
[0003] 迭代最近点算法(英文全称:Iterative Closest Point,英文简称:ICP)是目前应用比较广泛的点云拟合算法。ICP算法本质上是基于最小二乘法的最优配准方法,该算法根据点之间的距离选择对应关系点对,以此来计算最优刚体变换,直到满足配准的收敛要求。
[0004] 通过扫描方法获得的点云数据存在一些扫描过程中产生的噪点,由于ICP算法是根据对应点对来计算变换矩阵,因此很容易受到噪点的影响,并且由于对应点对的个数非常大,处理起来非常耗时。

发明内容

[0005] 本发明提供一种克服上述问题或者至少部分地解决上述问题的点云数据的拟合方法和系统。
[0006] 根据本发明的一个方面,提供一种点云数据的拟合方法,其特征在于,包括:
[0007] S1、根据上一次迭代获得的旋转矩阵和平移矩阵,对上一次迭代的基准模型中的所有三角面片进行刚体变换,获得本次迭代的基准模型;
[0008] S2、从目标模型中一一匹配与所述本次迭代的基准模型中每个三角面片符合拟合条件的三角面片,将匹配成功的两个三角面片构成一组面片对;
[0009] S3、以本次迭代的所有面片对中的基准面片与相应的目标面片间拟合参数的最小二乘和为依据,获得本次迭代的旋转矩阵和平移矩阵;
[0010] S4、根据判断本次迭代的最小二乗和与上一次迭代的最小二乘和的差值的绝对值小于阈值,获知停止迭代过程,两组点云数据完成拟合;
[0011] 其中,所述目标模型和基准模型分别为待测物体的两组三角网表面模型,所述符合拟合条件通过两个三角面片间拟合参数最小且拟合参数差值符合阈值判断。
[0012] 优选地,所述步骤S2具体包括:
[0013] S2.1、将本次迭代的基准模型中的三角面片作为基准面片,从所述目标模型中选取一个与该基准面片拟合参数最小的三角面片,作为预选面片;
[0014] S2.2、根据所述预选面片与该基准面片的拟合参数符合阈值,获知该预选面片为该基准面片的目标面片,将该基准面片与目标面片构成一个面片对。
[0015] 优选地,所述拟合参数为面片间距或面片夹角中的一种。
[0016] 优选地,所述步骤S3具体包括:
[0017] 当拟合参数为面片间距时,根据本次迭代的基准模型的重心坐标,对各基准面片的重心坐标进行平移,获得平移后的各基准面片的重心坐标;根据所述目标模型的重心坐标,对各目标面片的重心坐标进行平移,获得平移后的各目标面片的重心坐标;
[0018] 根据所述平移后的各基准面片的重心坐标、平移后的各目标面片的重心坐标、面片对的个数以及旋转矩阵,构建以所有面片对中的基准面片与相应的目标面片间距离的最小二乘和函数;
[0019] 求解使所述最小二乘和函数最小的旋转矩阵;根据所述基准模型的重心坐标、目标模型的重心坐标以及所述使所述最小二乘和函数最小的旋转矩阵,获得所述平移矩阵。
[0020] 优选地,所述基准模型的重心坐标的获取方法为:获取各基准面片的重心坐标,将各基准面片的重心坐标的平均值,作为基准模型的重心坐标;所述目标模型的重心坐标的获取方法为:获取各目标面片的重心坐标,将各目标面片的重心坐标的平均值,作为目标模型的重心坐标。
[0021] 优选地,所述步骤S1之前还包括:
[0022] 采集所述待测物体的两组点云数据,对两组点云数据分别进行三角构网,获得两组三角网表面模型,将其中一组三角网表面模型作为所述基准模型,将另一组三角网表面模型作为所述目标模型。
[0023] 优选地,所述三角构网的方法为泊松表面重建算法。
[0024] 优选地,所述两组点云数据均通过深度相机获取。
[0025] 根据本发明的另一个方面,还提供一种点云数据的拟合系统,包括:
[0026] 基准模型变换单元,用于根据上一次迭代获得的旋转矩阵和平移矩阵,对上一次迭代的基准模型中的所有三角面片进行刚体变换,获得本次迭代的基准模型;
[0027] 面片对单元,用于从目标模型中一一匹配与所述本次迭代的基准模型中每个三角面片符合拟合条件的三角面片,将匹配成功的两个三角面片构成一组面片对;
[0028] 刚性变换单元,用于以所有面片对中的基准面片与相应的目标面片间拟合参数的最小二乘和为依据,获得本次迭代的旋转矩阵和平移矩阵;
[0029] 拟合单元,用于根据判断本次迭代的最小二乗和与上一次迭代的最小二乘和的差值的绝对值小于阈值,获知停止迭代过程,两组点云数据完成拟合;
[0030] 其中,所述目标模型和基准模型分别为待测物体的两组三角网表面模型,所述符合拟合条件通过两个三角面片间拟合参数最小且拟合参数差值符合阈值判断。
[0031] 本发明提出的点云数据的拟合方法和系统,通过三角构网,将面片进行匹配,而不是将所有点进行匹配,大幅节约了处理时间,同时减少了相似点匹配造成的误匹配,通过拟合参数的最小二乘和为依据进行匹配,增强了抗噪声干扰的能力,同时利用点云数据间的拓扑结构关系,克服了原始ICP算法在转角过大之后不准确的问题,提供了配准精度。

附图说明

[0032] 图1为根据本发明实施例的点云数据的拟合方法的流程示意图;
[0033] 图2为根据本发明实施例的点云数据的拟合系统的功能框图。

具体实施方式

[0034] 下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0035] 为了克服现有技术的上述问题,本发明提供一种点云数据的拟合方法,为了便于理解,在此先对本实施例及后续实施例中可能涉及到的相关概念进行解释说明:
[0036] 点云数据,是指扫描资料以点的形式记录,每一个点包含有三维坐标。
[0037] 旋转矩阵(英文名称:Rotation matrix)是在乘以一个向量的时候能改变向量的方向但不改变向量大小的效果并保持了手性的矩阵。在点云数据拟合过程中,通过对点云数据的面片利用旋转矩阵进行旋转,改变两个面片的夹角。
[0038] 平移矩阵,是指改变向量的方向但不改变向量大小的效果的向量。
[0039] 泊松表面重建算法是一种隐函数表面重建方法,例如,一个物体可用物体外为1,物体外为0的指示函数表示,通过求解出这个函数然后进行等值面提取,从而得到表面,求解这个函数的过程,就是构建一个泊松方程并对泊松方程进行求解的过程。
[0040] 最小二乘和,通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法可用于曲线拟合。
[0041] 结合图1,是本发明实施例的一种点云数据的拟合方法的流程示意图,该实施例描述了基于本发明的一种将同一待测物体的两组点云数据进行拟合的方法,该方法包括:
[0042] S101、根据上一次迭代获得的旋转矩阵和平移矩阵,对上一次迭代的基准模型中的所有三角面片进行刚体变换,获得本次迭代的基准模型。目标模型和基准模型分别为待测物体的两组三角网表面模型。
[0043] 需要说明的是,为了获取一个待测物体的扫描图像,常常需要从不同的角度对待测物体进行扫描,获得不同角度下的点云数据,为了将两个点云数据进行拟合,本发明实施例采用三角组网的形式将点云数据分割为不同的区域,相比以对应点对的形式进行组网,在候选匹配过程中匹配的次数大幅降低,耗时有明显降低,同时以面片进行匹配也能消除噪点的影响,拟合精度更高。
[0044] 本发明实施例中的一次迭代过程是指将基准模型中的三角面片通过旋转矩阵和平移矩阵进行刚体变换,再将变换后的基准模型中的三角面片重新匹配目标模型中的三角面片,最后求得下一次迭代所需的旋转矩阵和平移矩阵的过程。在第一次迭代过程中,由于不存在“上一次迭代获得旋转矩阵和平移矩阵”,可以将预设的旋转矩阵和平移矩阵作为步骤S101中对三角面片进行刚体变换的旋转矩阵和平移矩阵。
[0045] 作为本领域技术人员可以理解的是,对三角面片进行刚体变换的公式为:
[0046] xi’=R×xi+T
[0047] 其中,R表示旋转矩阵,T表示平移矩阵,xi表示三角面片中的第i个点,xi’表示刚性变换后的第i个点。
[0048] S102、从目标模型中一一匹配与本次迭代的基准模型中每个三角面片符合拟合条件的三角面片,将匹配成功的两个三角面片构成一组面片对。符合拟合条件通过两个三角面片间拟合参数最小且拟合参数符合阈值判断。
[0049] 需要注意的是,本发明实施例并不限定拟合参数的具体形式,例如可以用面片之间的距离、也可以用面片之间夹角,还可以用面片之间的颜色等等。通过计算目标模型中的三角面片与基准模型中的三角面片的拟合参数,必然可以从目标模型中获得一个拟合参数最小的三角面片,但是拟合参数最小并不意味着两个三角面片拟合度很高,因此,通过进一步设置阈值,如果拟合参数不符合阈值,则不组合为面片对,为后续步骤提高拟合精度。本步骤将基准模型的三角面片和目标模型中的三角面片构成一组面片对,将面片对作为后续有效计算拟合度的基础数据。
[0050] S103、以本次迭代的所有面片对中的基准面片与相应的目标面片间拟合参数的最小二乘和为依据,获得本次迭代的旋转矩阵和平移矩阵。
[0051] 在本发明实施例中,利用拟合参数的最小二乘和获得迭代所需的旋转矩阵和平移矩阵。通过求取所有面片对中基准面片与目标面片间拟合参数之和,将总和最小对应的旋转矩阵和平移矩阵,作为本次迭代的旋转矩阵和平移矩阵。
[0052] S104、根据判断本次迭代的最小二乗和与上一次迭代的最小二乘和的差值的绝对值小于阈值,获知停止迭代过程,两组点云数据完成拟合。需要说明的是,如果连续两次迭代的最小二乘和之差小于阈值,说明基准模型与目标模型已经非常接近,可以判断为拟合完成,停止迭代。
[0053] 本发明实施例通过三角构网,将面片进行匹配,而不是将所有点进行匹配,大幅节约了处理时间,同时减少了相似点匹配造成的误匹配,通过拟合参数的最小二乘和为依据进行匹配,增强了抗噪声干扰的能力,同时利用点云数据间的拓扑结构关系,克服了原始ICP算法在转角过大之后不准确的问题,提供了配准精度。
[0054] 在上述实施例的基础上,步骤S102具体包括:
[0055] 将本次迭代的基准模型中的三角面片作为基准面片,从所述目标模型中选取一个与该基准面片拟合参数最小的三角面片,作为预选面片;
[0056] 根据所述预选面片与该基准面片的拟合参数符合阈值,获知该预选面片为该基准面片的目标面片,将该基准面片与目标面片构成一个面片对。
[0057] 需要说明的是,预选面片仅仅是目标模型中与基准面片拟合参数最小的三角面片,代表与基准面片最相似的三角面片,但是拟合参数是否符合阈值才是最终将预选面片作为目标面片的考量,本实施例通过对目标模型中的三角面片进行两次筛选,保证了每个面片对都是符合后续计算最小二乘和条件的面片。
[0058] 在上述各实施例的基础上,拟合参数为面片间距或面片夹角中的一种。面片间距是指基准模型中的三角面片与目标模型中的三角面片的距离,可以通过两者重心的距离来计算,距离越小说明三角面片越接近,越容易拟合;面片夹角是指基准模型中的三角面片与目标模型中的三角面片之间的夹角,夹角越小则三角面片越接近,越容易拟合。
[0059] 在上述各实施例的基础上,本实施例以中心化处理分离旋转矩阵和平移矩阵的计算,步骤S103具体包括:
[0060] 根据基准模型的重心坐标,对各基准面片的重心坐标进行平移,获得平移后的各基准面片的重心坐标;根据目标模型的重心坐标,对各目标面片的重心坐标进行平移,获得平移后的各目标面片的重心坐标。
[0061] 以基准面片的重心坐标平移为例,若基准模型的重心坐标为 第i个基准面片的重心坐标为pi,则平移后的坐标 目标面片的重心坐标平移方法与基准面片重心坐标平移的方法一致,不再赘述。
[0062] 根据平移后的各基准面片的重心坐标、平移后的各目标面片的重心坐标、面片对的个数以及旋转矩阵,构建以所有面片对中的基准面片与相应的目标面片间距离的最小二乘和函数。
[0063] 在以面片间距为拟合参数的一个实施例中,最小二乘和函数为:
[0064]
[0065] 其中,E代表拟合参数的最小二乘和,N表示面片对的个数,R表示旋转矩阵,pi'和qi',表示第i个面片对中的基准面片和目标面片平移后的重心坐标,d(qi',R×pi')表示第i个面片对中刚性变换后的基准面片与目标面片的距离。
[0066] 求解使最小二乘和函数最小的旋转矩阵;根据基准模型的重心坐标、目标模型的重心坐标以及使最小二乘和函数最小的旋转矩阵,获得平移矩阵。
[0067] 具体地,在获得旋转矩阵后,将基准模型的重心坐标 和目标模型的重心坐标 以及旋转矩阵R带入公式: 可获得平移矩阵。
[0068] 在上述各实施例的基础上基准模型的重心坐标的获取方法为:获取各基准面片的重心坐标,将各基准面片的重心坐标的平均值,作为基准模型的重心坐标;目标模型的重心坐标的获取方法为:获取各目标面片的重心坐标,将各目标面片的重心坐标的平均值,作为目标模型的重心坐标。
[0069] 在上述各实施例的基础上,步骤S1之前还包括:
[0070] 采集待测物体的两组点云数据,对两组点云数据分别进行三角构网,获得两组三角网表面模型,将其中一组三角网表面模型作为基准模型,将另一组三角网表面模型作为目标模型。具体地,本发明各实施例的点云数据可以通过Tango、kinect或者其它深度相机进行采集。采集点云数据时应注意不能距离物体太远,因为传感器获取的深度数据精度随量测距离增加而降低;此外应避免让太阳光直射传感器,或者让传感器接近热源,因为太阳光谱和热源会对深度数据计算造成干扰。
[0071] 在上述各实施例的基础上,三角构网的方法为泊松表面重建算法。
[0072] 需要说明的是,由三维点集来重建表面在实践中有诸多困难,例如三维采样点分布不均匀、有噪声,且在一些区域缺乏数据。因此,重建方法要能拟合出三维点的表面拓扑关系,精准的拟合带有噪声的数据,能够抵抗噪声,且能合理的填补空洞。本发明实施例的泊松重建方法结合了全局和局部拟合方法的优点,不仅考虑了所有输入数据,而且不借助于空间分割或者合并,对噪声有较好的抵抗性。
[0073] 点云数据和三角网模型的指示函数之间存在一个内在关系,通过指示函数可以找到点云数据的表面,也即物体的表面。对于物体表面上任意一个的点,该点对应的三角网模型的指示函数的梯度等于三角网模型表面的内法线。而对于物体表面以外的点,该点对应的三角网模型的指示函数的梯度是一个几乎在任何地方都是零的向量场。
[0074] 将计算指示函数的问题简化为梯度算子的反算,即找到标量函数 使该标量函数的梯度最佳逼近点云数据定义的向量场,即:
[0075]
[0076] 其中,minx表示最佳逼近点云数据的标量函数; 表示标量函数的梯度;表示点云数据定义的向量场。
[0077] 如果使用散度算子,那么上述问题就转化为标准的泊松问题:计算标量函数 它的拉普拉斯算子(即梯度的散度)等于向量场 的散度,即:
[0078]
[0079] 其中,表示散度。
[0080] 泊松表面重建算法包括:对任意一组点云数据,将该点云数据在三维中转换为一个连续的向量场;获取与向量场在函数梯度上匹配的标量函数;在标量函数中提取等值面,获得该点云数据的三角网表面模型。
[0081] 具体地,选择一个函数空间,该函数空间满足以下条件:向量场 可以表达为在该函数空间的函数的线性总和。由上述内容可知,指示函数的梯度可以用向量场来表示,而向量场又是函数空间的函数的积分,因此指示函数的梯度与函数空间的曲面法线存在一个积分关系。由于物体的点云数据提供了精确、足够的信息,因此可以通过这些信息,利用离散求和近似计算出曲面法线的积分。
[0082] 标量函数的拟合,即找出一个与有向点集相匹配的标量函数。这一步的目的就是求解标量函数,使下式结果最小。这样做是为了使标量函数和定向量场更好的拟合。
[0083]
[0084] 其中,ρ表示向量场中的任意一点。
[0085] 通过使用欧拉-拉格朗日公式,求解泊松方程得出最小值。
[0086] 为了获取重建物体表面 首先选择一个等值,然后通过计算指示函数,提取对应该等值的等值面。选择等值使得提取的等值面密切逼近输入的样本点的位置。具体做法是通过在样本点的位置估计 (即位置估计值),然后使用平均值来提取等值面。
[0087] 这样的等值有一个属性:缩放 不会改变等值面。这样,知道了向量场 即使差一个乘常数,也能够提供足够的信息重建模型表面。
[0088] 根据本发明的另一个方面,还提供一种点云数据的拟合系统,如图2所示,该系统用于在前述各实施中将同一待测物体的两组点云数据进行拟合,因此,在前序各实施例中的拟合方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。
[0089] 如图所示,拟合系统包括:
[0090] 基准模型变换单元201,用于根据上一次迭代获得的旋转矩阵和平移矩阵,对上一次迭代的基准模型中的所有三角面片进行刚体变换,获得本次迭代的基准模型。
[0091] 需要说明的是,为了获取一个待测物体的扫描图像,常常需要从不同的角度对待测物体进行扫描,获得不同角度下的点云数据,为了将两个点云数据进行拟合,本发明实施例中的基准模型变换单元201采用三角组网的形式将点云数据分割为不同的区域,相比以对应点对的形式进行组网,在候选匹配过程中匹配的次数大幅降低,耗时有明显降低,同时以面片进行匹配也能消除噪点的影响,拟合精度更高。
[0092] 本发明实施例中的一次迭代过程是指将基准模型中的三角面片通过旋转矩阵和平移矩阵进行刚体变换,再将变换后的基准模型中的三角面片重新匹配目标模型中的三角面片,最后求得下一次迭代所需的旋转矩阵和平移矩阵的过程。在第一次迭代过程中,由于不存在“上一次迭代获得旋转矩阵和平移矩阵”,可以将预设的旋转矩阵和平移矩阵作为对三角面片进行刚体变换的旋转矩阵和平移矩阵。
[0093] 作为本领域技术人员可以理解的是,对三角面片进行刚体变换的公式为:
[0094] xi’=R×xi+T
[0095] 其中,R表示旋转矩阵,T表示平移矩阵,xi表示三角面片中的第i个点,xi’表示刚性变换后的第i个点。
[0096] 面片对单元202,用于从目标模型中一一匹配与本次迭代的基准模型中每个三角面片符合拟合条件的三角面片,将匹配成功的两个三角面片构成一组面片对。
[0097] 需要注意的是,本发明实施例并不限定面片对单元202所应用的拟合参数的具体形式,例如可以用面片之间的距离、也可以用面片之间夹角,还可以用面片之间的颜色等等。通过计算目标模型中的三角面片与基准模型中的三角面片的拟合参数,必然可以从目标模型中获得一个拟合参数最小的三角面片,但是拟合参数最小并不意味着两个三角面片拟合度很高,因此,通过进一步设置阈值,如果拟合参数不符合阈值,则不组合为面片对,为后续步骤提高拟合精度。本步骤将基准模型的三角面片和目标模型中的三角面片构成一组面片对,将面片对作为后续有效计算拟合度的基础数据。
[0098] 刚性变换单元203,用于以本次迭代的所有面片对中的基准面片与相应的目标面片间拟合参数的最小二乘和为依据,获得本次迭代的旋转矩阵和平移矩阵。
[0099] 在本发明实施例中,刚性变换单元203利用拟合参数的最小二乘和获得迭代所需的旋转矩阵和平移矩阵。通过求取所有面片对中基准面片与目标面片间拟合参数之和,将总和最小对应的旋转矩阵和平移矩阵,作为本次迭代的旋转矩阵和平移矩阵。
[0100] 拟合单元204,用于根据判断本次迭代的最小二乗和与上一次迭代的最小二乘和的差值的绝对值小于阈值,获知停止迭代过程,两组点云数据完成拟合;需要说明的是,如果连续两次迭代的最小二乘和之差小于阈值,说明基准模型与目标模型已经非常接近,可以判断为拟合完成,停止迭代。
[0101] 其中,目标模型和基准模型分别为待测物体的两组三角网表面模型,符合拟合条件通过两个三角面片间拟合参数最小且拟合参数差值符合阈值判断。
[0102] 本发明实施例通过三角构网,将面片进行匹配,若不是将所有点进行匹配,大幅节约了处理时间,同时减少了相似点匹配造成的误匹配,通过拟合参数的最小二乘和为依据进行匹配,增强了抗噪声干扰的能力,同时利用点云数据间的拓扑结构关系,克服了原始ICP算法在转角过大之后不准确的问题,提供了配准精度。
[0103] 以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0104] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
[0105] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。