基于激光线扫描传感器的大自由曲面测量系统

2012-04-21 01:55康岩辉
传感器与微系统 2012年12期
关键词:对应点曲面激光

康岩辉,张 恒

(中国计量科学研究院,北京100013)

0 引 言

在现代工业生产中,尤其是在航天航空、汽车、模具制造等领域,具有复杂自由曲面外形的大型零件越来越多,而且对零件的结构和外形要求非常高,传统人工测量的方式已不能满足现代化生产对自由曲面测量的要求[1],如何准确、快速地对产品的曲面进行测量成为研究热点之一。

以激光传感器为代表的光学非接触测量方式具有速度快、效率高、精度好等优点,日益广泛地应用于测量领域[2~4],其中,基于线结构光原理的激光扫描传感器结构简单、测量方便可靠。但由于线扫描传感器本身无运动结构[5,6],同时也受测量对象、测量范围等限制,往往单一的传感器并不能完成自由曲面的测量,需要进行与可移动设备进行组合,并利用数据拼合、坐标系统一、误差分析等若干技术才能实现高精度、高效率、多角度、大范围的自由曲面测量。本文将激光线扫描传感器应用于大型自由曲面测量系统,首先阐述其系统结构和组成,着重针对数据获取后的处理技术进行研究,并用实验验证该系统的测量精度与测量效果。

1 测量系统结构

测量系统的基本结构如图1 所示,该系统以激光线扫描传感器为数据获取装置,将大范围移动机构(如机器人手臂)作为传感器运动载体,实现对大型自由曲面的自动扫描;利用计算机将传感器测量数据与运动机构位姿数据进行处理,进行坐标系统一与数据拼合重构等,最终得到曲面的形貌。

图1 测量系统结构Fig 1 Structure of measurement system

1.1 激光扫描传感器

测量数据采集所使用的nxSensor-I 型传感器是美国nextWare 公司生产的一种基于激光三角法测量原理获取三维空间中不透明物体表面形状的新型传感器,如图2 所示。它具有先进的数字成像技术与实时数据采集处理功能;具有嵌入式数字信号处理器(DSP),用于专用的从实时图像数据计算出3D 坐标,无需图像采集卡;对于动态跟踪对象具有自动学习和自动跟踪功能;与计算机通过USB 接口进行通信;可通过外部和内部软件触发;有低功耗休眠模式,耗电量少。

图2 nxSensor-I 型传感器示意图Fig 2 Schematic diagram of nxSensor-I type sensor

1.2 大范围移动机构

激光线扫描传感器本身只能获取光平面与被测表面交线上的坐标数据,要实现扫描测量则必须由运动机构带动。工业机器人能够进行旋转、平移运动,技术成熟,是实现大范围扫描测量的理想移动载体[7]。

工业机器人手臂是由6 个转轴组成的空间六连杆开链机构,各个轴的转动具有一定的范围。本系统所采用的IRB2400 型机器人,6 根轴的运动范围分别为:- 180°~180°,-100°~110°,-60°~65°,- 200°~ 200°,- 120°~ 120°,-400°~400°。机械手臂的每个关节都由AC 伺服电机驱动,且每个AC 伺服电机都安装了编码器和刹车机构。此外,工业机器人还配备有一块串口测量板(SMB),负责将编码器的模拟量转换为数字量。

2 自由曲面的数据处理技术

激光扫描传感器输出数据为一条直线上的若干点坐标,则测量系统得到的是各条直线上所有坐标组成的大量点云数据。这些点云由机器人在不同位姿下采集,由于各种误差的存在(如机器人运动误差等),往往不能很好地统一到同一坐标系下,除进行必要的参数标定和运动学误差校正外,还需要利用点云拼合技术才能实现大范围的精确测量。

2.1 曲面点云拼合

点云拼合(point cloud registration)技术是通过某种变换将两组不同区域的点云数据中的共同部分对齐,使得不同区域的点云共同部分能够正确地匹配和搭接。ICP(iterative closest point)算法,也称为迭代最近点法,是计算机视觉研究者Besl P J 和Mckay N D 于1992 年提出的最典型的拼合方法[8],它主要是通过点与点之间的距离最小进行坐标变换的求解。该算法在数据拼合中具有很好的效果[9]。

本测量系统的ICP 算法基本思路为:有2 个待拼接的点集A,B,假设A 是目标点集,B 是参考点集,它固定不动,A 点集需要拼合到B 点集所在的参考坐标系下;A,B 点集中有重合的区域,对A 中需要参加匹配的点云,在B 中寻找最近点,并建立合适的目标函数;理论上,当2 个数据完全匹配时,目标函数应为零,但是由于噪声的存在,并不总是存在对应点,因此,目标函数最小表示在噪声和误差存在时,能获得最佳的匹配解,从而使得A 点集正确地拼合到B点集所在的坐标系下。

已知点集 A = {a1,a2,…,an},点集 B = {b1,b2,…,bm},它们的初始坐标变换矩阵为R0,T0,寻找平移矩阵和旋转矩阵使得误差函数

最小,η 是由R 和T 构成的坐标变换关系。对于采用点对点的ICP 算法,误差函数可以表示为

其中,bki是点ai在点集B 中的对应点。

对于点到平面的ICP 算法,误差函数可以表示为

其中,Si是点ai在点集B 中对应点bki的切平面。

采用点对点的误差函数,具体实现步骤如下:

1)若A 是目标点集,B 是参考点集,对点集A 中的每一点 ai∈A,在 B 中寻找与它距离最近的点 bki,其中,bki代表了第k 次迭代的对应点,即

其中,d(ai,bki)为两点的欧氏距离。若ai的三维坐标为(x1,y1,z1),bki的三维坐标为(x2,y2,z2),则

2)建立距离最小误差函数

式中 R,T 分别为点集A 坐标系与点集B 坐标系之间转换关系的旋转矩阵、平移矩阵,bki(i =1,2,…,n)是点集B中与ai对应的点,按照刚体变换求解R,T,使得式(6)的值最小。

3)将求解出的R,T 作用于点集A,点集A 中的所有数据变为Rai+ T。

4)一般一次求解并不能求得最优的R,T,因此,需要多次进行迭代,并且给出终止迭代的条件。假设k 次迭代求得的旋转矩阵和平移矩阵分别为Rk,Tk,误差函数的值为errork,则点集A 中的数据变为 Rkai+Tk,按照步骤(1)和步骤(2)计算出k +1 次迭代的旋转矩阵Rk+1和平移矩阵 Tk+1,误差函数值为 errork+1,若|errork- errork+1| ≤ε(ε为设定的阈值),则停止迭代。

2.2 对应点求取策略

对于测量系统采集的数据而言,相邻姿态下的点集只有部分点云是重合的,在采用上述ICP 算法时,会导致不重合部分的点参与计算,出现求解结果错误[10]。为尽量减少错误点云对拼合精度的影响,需要通过一定选择方法将错误点剔除,具体方法为:设定一个距离阈值,当计算的对应点距离大于此阈值时,则删除这对点,该阈值可以根据均值或者方差来估计。

ICP 算法另外一个关键部分是高效地寻找最近点,最近点寻找的好坏会影响最终拼接的精度和算法的收敛速度。

目前,也有很多学者在最近点寻找算法上做出了很大的贡献,如Greenspan M 等人提出了球面三角形约束的最近邻域方法[11];Zhang Z Y 优化了搜索结构,即常用的 k-d树搜索,加快了搜索速度[12]。

本文在此基础上采用了一种新的最近点寻找方法。首先在重叠区域的不同位置选取几部分点集,这样可以减少参与计算的点云数量。设点集为P,其内部的点为pi,在点集P 中寻找点pi的k 个邻近点;采用最小二乘算法拟合出点pi的切平面,计算切平面的法矢向量npi,得到一条通过点pi,方向为npi的直线l;在对应点集Q 中寻找距离直线l 最近的点qi,采用同样的方法得到点的切平面S;将点pi沿法向量npi投影在切平面S 上,投影点q'i即是点pi的对应点。

在实际寻找过程中,可能会出现错误的对应点。为减少对应点对求取结果的影响,引入相对距离阈值ε。假如存在两组对应点{pi|q'i},{pj|q'j},它们应该满足式‖pi-pj‖≈‖q'i-q'j‖,因此,对于点集P 和Q 中的每个点对检查下式是否成立

设置一个元素数为n 的一维数组count[n],当式(7)成立时,对应的 count[i]和 count[j]均增加 1。再给定一个百分比阈值t%,若count[k]< n×t%,则认为{pk|q'k}是错误的对应点,应予以剔除。

3 实 验

3.1 平面测量精度评价

鉴于对自由曲面测量的精度验证有一定困难,可以对系统测量平面的误差进行评价,反映其测量精度水平。测量前,激光线扫描传感器和传感器与机器人之间的手眼关系已经过精确标定,机器人的运动学参数误差也进行了校正。

用Leica AT901 激光跟踪仪与T-Scan 组成测量系统,如图3 所示,对某一加工标准件的上、下两平面进行扫描测量,然后利用本文的测量系统也对其进行测量,最终以两者扫描结果的均方根(RMS)误差来评价测量系统平面测量的精度,如表1 所示。根据仪器手册,T-Scan 在5 m 范围内测量平面的不确定度(包含因子k =2)为± (95 +3L ×10-6)μm,(其中,L 为测量距离,m)。

图3 被测量工件Fig 3 Workpiece for measurement

表1 上下表面误差Tab 1 Top and bottom surface errors

3.2 自由曲面测量实验

采用本系统对一白车身的车门覆盖件进行扫描测量。由于车门的面积比较大,实验中只设置了7 条扫描路径,机器人按照路径运动,对车门进行扫描,如图4 所示。

图4 车门扫描实验Fig 4 Scan experiment of car door

扫描的点云数据如图5(a)所示,若将其局部进行放大,会发现不同路径下扫描的点云存在如图5(b)所示的错位现象。

图5 拼合前的点云数据图Fig 5 Diagram of point cloud datas before registration

每条路径下采集的数据均有重叠的区域,因此,可采用ICP 算法将7 个不同路径下扫描的数据拼合在一起,效果如图6 所示。由此可见,应用ICP 算法有效减小了运动机构等引入的误差,使大型自由曲面的整体测量精度得到提高。图7(a),(b)所示分别为以三角网格形式和光照渲染模式下的数据点云重构结果。

4 结 论

图6 拼合后的点云数据图Fig 6 Diagram of point cloud datas after registration

图7 点云重构后的车门图Fig 7 Diagram of car door after point cloud reconstruction

本文提出了基于激光线扫描传感器的大型自由曲面测量系统,讨论了其基本原理与组成结构。为解决因移动机构的运动误差导致大范围曲面测量精度不高的问题,研究了其中的曲面点云拼合等技术,在很大程度上提高了曲面拼合的精度。实验验证结果表明:该系统实现了对大型自由曲面较高精度的非接触测量。

[1] 屈玉福,浦昭邦,赵慧洁.基于单目视觉的自由曲面三维坐标测量方法[J].仪器仪表学报,2006,27(10):1318 -1321.

[2] 张宏伟,张国雄,秦 鹏,等.双目视觉检测技术在自由曲面测量中的应用[J].机械工程学报,2004,40(7):110 -113.

[3] 李旭东,崔 磊,赵慧洁,等.双振镜点扫描三维形貌测量系统[J].光学精密工程,2010,18(7):1648 -1653.

[4] 何炳蔚,周小龙.线激光三维测量仪中视觉传感器规划方法研究[J].中国激光,2010,37(6):1618 -1625.

[5] 段 宇,刘常杰,劳达宝,等.基于视觉检测站线结构光传感器的标定方法[J].传感器与微系统,2010,29(4):126 -128.

[6] 王艳庆,程伟德,张 华,等.激光视觉传感器对不连续焊缝的识别[J].传感器与微系统,2011,30(5):8 -11.

[7] 王 一,任永杰,刘常杰,等.工业机器人视觉检测系统的现场标定技术[J].传感器与微系统,2010,29(2):83 -86.

[8] Besl P J,McKay N D.A method for registration of 3-D shapes[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1992,14(2):239 -256.

[9] Blais G,Levine M D.Registering multiview range data to create 3D computer graphics[J].IEEE Transactions on Patten Analysis and Machine Intelligence,1995,17(8):820 -824.

[10] 董明晓,郑康平.一种点云数据噪声点的随机滤波处理方法[J].中国图像图形学报,2004,9(2):245 -248.

[11] Greenspan M,Godin G.A nearest neighbor method for efficient ICP[C]∥Proceedings of the 3rd International Conference on 3D Digital Imaging and Modeling,2001:161 -168.

[12] Zhang Z Y.Iterative point matching for registration of free-form curves and surfaces[J].International Journal of Computer Vision,1994,13(2):119 -152.

猜你喜欢
对应点曲面激光
凸四边形的若干翻折问题
三点定形找对应点
Er:YAG激光联合Nd:YAG激光在口腔临床医学中的应用
一种高速激光落料线
激光诞生60周年
“一定一找”话旋转
请给激光点个赞
相交移动超曲面的亚纯映射的唯一性
圆环上的覆盖曲面不等式及其应用
比较大小有诀窍