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

复杂曲面零件表面自适应扫描方法

2022-07-16 19:09:02 来源:中国专利 TAG:


1.本发明涉及零件扫描领域,具体涉及一种复杂曲面零件表面自适应扫描方法。


背景技术:

2.现有的激光熔覆修复案例中,大多采用手持式激光扫描仪获取复杂零件表面点云,并采用商业软件进行表面重构。这样的方案有两个明显的缺陷:1、手持式扫描仪需要贴相当数量的标签点,且扫描结果不具备零件的位置信息,后期需要在机器人坐标系下进行标定;2、商业软件为追求表面重构的平顺性,往往会对突变的缺陷区域进行平滑拟合,这种刻意的拟合破坏了表面缺陷形貌的真实性,会严重影响后期修复的精确性。
3.同时,人工采用手持式扫描仪在扫描零件时,因为无法确定零件上的哪些区域已经扫描过,经常造成零件上很多区域重复扫描,造成扫描点云太过密集,导致生成的文件过大,增加了后期处理负担;另外也容易出现部分区域没有扫描到,造成得到的零件模型文件部分区域缺失。
4.因此,为解决以上问题,需要一种有效的复杂曲面零件表面自适应扫描方法。


技术实现要素:

5.有鉴于此,本发明的目的是克服现有技术中的缺陷,提供复杂曲面零件表面自适应扫描方法,能够有效地解决人工手持扫描出现的对零件过度扫描或者零件部分区域扫描缺失的问题,并能提高扫描的精度和速率。
6.本发明的复杂曲面零件表面自适应扫描方法,包括如下步骤:
7.s1.确定参考平面,以参考平面作为扫描面对零件进行网格扫描,得到若干网格区域,并计算每个网格区域的网格中心点在参考平面上的xy坐标;
8.s2.将零件表面的三角形面片投影到参考平面,得到若干投影三角形,统计位于投影三角形内的网格中心点,得到网格中心点集合p
in

9.所述p
in
={p1,p2,p3,

,pm},pm为第m个网格中心点,所述第m个网格中心点对应于第m个三角形面片;
10.s3.基于网格中心点集合p
in
确定网格中心点的位姿矩阵集合t
in;projected

11.s4.将零件设置到工作台,采集零件的点云信息,并将所述点云信息与零件模型的顶点信息进行点云配准,实现对位姿矩阵集合t
in;projected
的点云变换,得到点云变换后的位姿矩阵集合t
task

12.s5.基于位姿矩阵集合t
task
确定扫描目标的位姿矩阵集合t
task1

13.s6.基于位姿矩阵集合t
task1
调整对m个网格中心点进行逐一扫描的扫描路径顺序,使得对m个网格中心点进行逐一扫描的扫描路径之和最小,并将取得最小时设置的扫描顺序作为最优扫描顺序;
14.s7.按照最优扫描顺序对m个网格中心点进行逐一扫描。
15.进一步,根据如下步骤确定参考平面:
16.s11.获取零件的原始设计模型;
17.s12.对零件的原始设计模型进行几何信息提取,得到零件的顶点信息、三角形面片信息以及三角形面片单位法向量信息;
18.s13.获取所有顶点的xy坐标点,并将包括所有顶点xy坐标点的平面作为参考平面。
19.进一步,基于网格中心点集合p
in
确定网格中心点的位姿矩阵集合t
in;projected
,具体包括:
20.s31.将网格中心点集合p
in
中网格中心点的xy坐标分别代入对应的三角形面片的平面方程,得到各网格中心点的z轴坐标,进而得到各网格中心点的xyz坐标;
21.s32.统计各网格中心点的xyz坐标以及各网格中心点分别对应的三角形面片单位法向量,得到网格中心点的位姿矩阵集合t
in;projected

22.所述t
in;projected
={t1,t2,t3,

,tm},tm为第m个网格中心点的位姿矩阵。
23.进一步,得到点云变换后的位姿矩阵集合t
task
,具体包括:
24.将所述点云信息与零件模型的顶点信息进行点云配准,得到点云变换矩阵t0;
25.将矩阵t0与位姿矩阵集合t
in;projected
相乘,得到位姿矩阵集合t
task
;所述t
task
={t
′1,t
′2,t
′3,

,t
′m},t
′m为位姿矩阵tm经过点云变换后的位姿矩阵。
26.进一步,基于位姿矩阵集合t
task
确定扫描目标的位姿矩阵集合t
task1
,具体包括:
27.确定处于工作台的扫描设备到零件的扫描距离l,得到扫描变换矩阵t1;
28.将矩阵t1与位姿矩阵集合t
task
相乘,得到位姿矩阵集合t
task1

29.所述t
task1
={t
″1,t
″2,t
″3,

,t
″m},t
″m为扫描第m个网格中心点的位姿矩阵。
30.进一步,根据如下公式确定三角形面片的平面方程:
31.ax by cz d=0;
32.其中,a=(v
m2y-v
m1y
)*(v
m3z-v
m1z
)-(v
m3y-v
m1y
)*(v
m2z-v
m1z
),b=(v
m2z-v
m1z
)*(v
m3x-v
m1x
)-(v
m3z-v
m1z
)*(v
m2x-v
m1x
),c=(v
m2x-v
m1x
)*(v
m3y-v
m1y
)-(v
m3x-v
m1x
)*(v
m2y-v
m1y
),
33.d=a*v
m1x-b*v
m1y-c*v
m1z

34.v
m1x
为第m个三角形面片的第一个点的x坐标,v
m1y
为第m个三角形面片的第一个点的y坐标,v
m1z
为第m个三角形面片的第一个点的z坐标;v
m2x
为第m个三角形面片的第二个点的x坐标,v
m2y
为第m个三角形面片的第二个点的y坐标,v
m2z
为第m个三角形面片的第二个点的z坐标;v
m3x
为第m个三角形面片的第三个点的x坐标,v
m3y
为第m个三角形面片的第三个点的y坐标,v
m3z
为第m个三角形面片的第三个点的z坐标。
35.进一步,根据如下公式确定扫描变换矩阵t1:
[0036][0037]
其中,
[0038]
本发明的有益效果是:本发明公开的一种复杂曲面零件表面自适应扫描方法,通过在工作台上对零件进行扫描,在扫描前将零件表面进行分区并获取分区中心点的法向量信息,进而实现对每个区进行扫描,通过对扫描顺序进行优化,使得扫描任务路径之和最
小;本发明能够有效地解决人工手持扫描出现的对零件过度扫描或者零件部分区域扫描缺失的问题,并提高了扫描的精度和速率。
附图说明
[0039]
下面结合附图和实施例对本发明作进一步描述:
[0040]
图1为本发明的方法流程示意图;
[0041]
图2-(a)为本发明的零件分区侧视示意图;
[0042]
图2-(b)为本发明的零件分区俯视示意图;
[0043]
图3-(a)为本发明的零件网格中心点侧视图;
[0044]
图3-(b)为本发明的零件网格中心点俯视图;
[0045]
图4为本发明的网格中心点在零件上表面的位置示意图;
[0046]
图5为本发明的工作台扫描示意图;
[0047]
图6为本发明的优化前的扫描顺序示意图;
[0048]
图7为本发明的优化后的扫描顺序示意图;
[0049]
其中,1-六轴机器人,2-深度相机,3-条纹结构光扫描仪,4-零件。
具体实施方式
[0050]
以下结合说明书附图对本发明做出进一步的说明,如图所示:
[0051]
本发明的复杂曲面零件表面自适应扫描方法,包括如下步骤:
[0052]
s1.确定参考平面,以参考平面作为扫描面对零件进行网格扫描,得到若干网格区域,并计算每个网格区域的网格中心点在参考平面上的xy坐标;具体地,在参考平面上,通过高精度条纹结构光扫描仪的扫描,生成若干网格,若干网格将零件进行分区,所有区域正好将零件完全覆盖,如图2所示。根据已经生成的零件分区网格,计算出每个网格的中心点,并在参考平面上生成每个网格中心点,将网格中心点的数据记录到集合p
gridis
中,p
gridis
代表投影平面上所有网格中心点的集合,如图3所示。
[0053]
s2.将零件表面的三角形面片投影到参考平面,得到若干投影三角形,统计位于投影三角形内的网格中心点,得到网格中心点集合p
in

[0054]
所述p
in
={p1,p2,p3,

,pm},pm为第m个网格中心点,所述第m个网格中心点对应于第m个三角形面片;
[0055]
s3.基于网格中心点集合p
in
确定网格中心点的位姿矩阵集合t
in;projected

[0056]
s4.将零件设置到工作台,采集零件的点云信息,并将所述点云信息与零件模型的顶点信息进行点云配准,实现对位姿矩阵集合t
in;projected
的点云变换,得到点云变换后的位姿矩阵集合t
task

[0057]
s5.基于位姿矩阵集合t
task
确定扫描目标的位姿矩阵集合t
task1

[0058]
s6.基于位姿矩阵集合t
task1
调整对m个网格中心点进行逐一扫描的扫描路径顺序,使得对m个网格中心点进行逐一扫描的扫描路径之和最小,并将取得最小时设置的扫描顺序作为最优扫描顺序;
[0059]
s7.按照最优扫描顺序对m个网格中心点进行逐一扫描。在扫描零件的时候,要求机器人需要连续访问许多目标,机器人在任务间的行走时间是整个执行时间的重要组成部vm1x
)-(v
m3z-v
m1z
)*(v
m2x-v
m1x
),c=(v
m2x-v
m1x
)*(v
m3y-v
m1y
)-(v
m3x-v
m1x
)*(v
m2y-v
m1y
),
[0076]
d=a*v
m1x-b*v
m1y-c*v
m1z

[0077]vm1x
为第m个三角形面片的第一个点的x坐标,v
m1y
为第m个三角形面片的第一个点的y坐标,v
m1z
为第m个三角形面片的第一个点的z坐标;v
m2x
为第m个三角形面片的第二个点的x坐标,v
m2y
为第m个三角形面片的第二个点的y坐标,v
m2z
为第m个三角形面片的第二个点的z坐标;v
m3x
为第m个三角形面片的第三个点的x坐标,v
m3y
为第m个三角形面片的第三个点的y坐标,v
m3z
为第m个三角形面片的第三个点的z坐标。
[0078]
s32.统计各网格中心点的xyz坐标以及各网格中心点分别对应的三角形面片单位法向量,并将网格中心点在stl模型上的三维坐标和网格中心点对应stl模型三角面片的单位法向信息储存到集合p
in;projected
中。
[0079]
所述p
in;projected
={p1,p2,p3,

,pm;n1,n2,n3,

,nm};将集合p
in;projected
中每个点及对应的法向信息一起生成位姿矩阵,可以得到网格中心点的位姿矩阵集合t
in;projected
;其中,三维坐标表示位置,所述法向表示方向;所述t
in;projected
={t1,t2,t3,

,tm},tm为第m个网格中心点的位姿矩阵。
[0080]
本实施例中,步骤s4中,得到点云变换后的位姿矩阵集合t
task
,具体包括:
[0081]
将所述点云信息与零件模型的顶点信息进行点云配准,得到点云变换矩阵t0;迭代最近点(icp)算法是目前应用最广泛的点集配准方法之一。传统的输入3d点云的基于模板匹配的位姿估计方法主要为多种全局配准方法,如super4pcs和go-icp等,能够得到相对准确的6d位姿。go-icp算法在保证全局最优的同时加快了新方法的速度,解决了异常值健壮性问题。因此,本发明采用go-icp算法进行点云配准。
[0082]
其中,整个配准流程如图5所示,首先将相机安装在机械臂末端,通过深度相机获取零件的3d点云,之后,对已有的点云进行滤波和分割等预处理操作,利用go-icp算法与stl模型的点云进行点云配准,得到两点云间的最优变换矩阵t0;变换矩阵t0可以表示为:
[0083]
表示旋转矩阵;表示平移矩阵。
[0084]
将矩阵t0与位姿矩阵集合t
in;projected
相乘,得到位姿矩阵集合t
task
;所述t
task
={t
′1,t
′2,t
′3,

,t
′m},t
′m为位姿矩阵tm经过点云变换后的位姿矩阵。t
task
=t0t
in;projected

[0085]
本实施例中,步骤s5中,基于位姿矩阵集合t
task
确定扫描目标的位姿矩阵集合t
task1
,具体包括:
[0086]
确定处于工作台的扫描设备到零件的扫描距离l,得到扫描变换矩阵t1;其中,所述扫描距离为扫描仪扫描的工作距离,通过沿法向方向平移距离l,就可以得到机器人的扫描目标点,所述距离l取值为0.4m;
[0087]
则根据如下公式确定扫描变换矩阵t1:
[0088][0089]
其中,
[0090]
将矩阵t1与位姿矩阵集合t
task
相乘,得到位姿矩阵集合t
task1

[0091]
所述t
task1
=t1t
task
;所述t
task1
={t
″1,t
″2,t
″3,

,t
″m},t
″m为扫描第m个网格中心点的位姿矩阵。
[0092]
本实施例中,步骤s6中,利用经典的tsp算法,在任务空间度量中找到目标的最优访问顺序。将上一步得到的扫描目标集合t
task1
={t
″1,t
″2,t
″3,

,t
″m}利用tsp算法求解出它们在空间的最优扫描(访问)顺序。如图6、7所示,为优化前后的扫描顺序效果图。
[0093]
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
再多了解一些

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

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

相关文献