振镜激光扫描测量系统误差分析与补偿 下载: 1739次
1 引言
线结构光测量技术因其具有精度高、非接触、结构简单和稳定性高等特点而被广泛应用于尺寸测量[1]、焊缝识别[2]、机器视觉[3]和逆向工程[4-5]等诸多领域。传统的线结构光测量系统通常使用机械扫描平台来实现对被测对象的三维扫描测量,但扫描装置的惯性较大,造成测量速度较慢,而且整个系统的体积较大且成本较高[6]。
振镜扫描技术与线结构光测量技术的结合可以很好地解决这一问题,线激光经过振镜反射后投射到被测对象的表面,同步控制振镜转动与图像采集即可完成三维扫描测量。振镜扫描技术具有高速、高精度和小体积等诸多优点,因此可以实现高速的自扫描测量,并增强了系统的集成性与便携性。李旭东等[7]设计了双振镜点扫描三维形貌测量系统,该系统可以实现对远距离、大尺寸物体的测量。Wagner等[8]开发了一套二维振镜点结构光扫描三维测量系统,使用该系统对病人头部软组织特征进行测量和三维重建,测量精度达到0.3285 mm。Chi等[9]设计了一套水下一维振镜线结构光扫描系统,该系统对水下标准球的测量精度达到0.25 mm。Yu等[10]设计了用于工业自动化生产线的一维振镜扫描系统,系统标定后的实验测量精度为0.05 mm。
目前关于振镜结构光扫描测量系统的研究主要集中在系统的标定工作上[11-13],但对于系统的误差分析却少有具体的研究。由于振镜系统的引入,对于传统的固定式线结构光测量系统的误差分析模型[14]将不再完全适用,因此需要针对振镜扫描测量系统来建立新的误差分析模型。本文首先搭建一套振镜线结构光扫描系统,并提出一种新的系统标定方法。在此基础上,建立系统的误差模型并对其进行理论分析。最后,提出一种基于查表法的转动误差补偿策略。
2 系统搭建与标定
2.1 测量原理
与传统的线结构光测量系统相似,振镜扫描测量系统同样基于激光三角法原理而设计。不同之处在于,振镜扫描测量系统中的光平面与摄像机不再相对固定,位置会随着振镜的转动而改变。激光器发出的线激光经过振镜镜片反射后照射在被测物体的表面上,在物体表面上发生漫反射后被相机捕获并成像,应用三角测距原理可以求解得到被测物体表面的三维形貌信息,如
图 1. 振镜激光扫描测量系统的工作原理示意图
Fig. 1. Working principle diagram of galvanometer laser scanning measurement system
2.2 系统搭建
振镜激光扫描测量系统由相机、激光器和振镜三部分组成,如
图 2. 振镜激光扫描测量系统的结构示意图
Fig. 2. Structure diagram of galvanometer laser scanning measurement system
理论上转轴穿过反射镜且与线激光平面的反射轴重合,但反射镜有厚度,则对称安装的方式会导致镜面偏移而产生测量误差,因此设计一种非对称的联轴器来补偿这一偏移,联轴器上、下两部分存在1 mm的偏心距离,镜片厚度为2 mm,这可以保证电机转轴刚好穿过镜片。非对称的联轴器如
2.3 系统标定
整个系统的标定分为两步:1)标定相机以获取相机的内参矩阵,标定装置在不同姿态下对应的外参矩阵;2)标定不同角度下的光平面方程,以求解振镜坐标系相对于相机坐标系的刚体变换矩阵。实验设计一种由双棋盘格组成的标定装置,其可以快速完成相机的标定并可以获取大量用于拟合光平面的标志点。
2.3.1 标定装置
将两块相互固定的12×9棋盘格标定板作为标定装置,并使用其快速标定相机和系统。使用机械阻尼铰链将两块完全相同的棋盘格标定板连接成V字形,通过调整铰链可以使两标定板在0°~180°之间的任意角度保持固定,从而获得最佳的标定结果。系统标定过程中,标定装置的夹角固定为135°以保证两棋盘格标定板均位于相机景深范围内,如
图 3. 联轴器与振镜镜片的连接示意图。(a)轴侧图;(b)主视图
Fig. 3. Connection diagram of coupling and galvanometer lens. (a) Isometric view; (b) front view
图 4. 标定装置的结构示意图。(a)侧视图;(b)轴侧图
Fig. 4. Schematic of calibration device. (a) Side view; (b) isometric view
2.3.2 相机标定
根据针孔投影模型可建立像素坐标系OP-uv与世界坐标系OW-XWYWZW之间的映射关系,表达式为
式中:Ki和Ke分别表示待标定的内参矩阵和外参矩阵;ρ表示空间比例因子;fx=f/dx,fy=f/dy,f表示镜头的物理焦距,dx和dy表示CCD(Charge Coupled Device)相机的像素尺寸;(u0,v0)表示图像的主点坐标;R和T分别表示相机坐标系与世界坐标系刚体变换的旋转矩阵与平移向量;0T为1×3的零矩阵。
上述模型为理想情况下的针孔模型,对于实际的相机成像系统还需要考虑镜头的畸变,则实际像素坐标(ud,vd)与理想像素坐标(u,v)的关系可表示为
式中:k1和k2表示畸变参数。相机标定的过程即为求解Ki、Ke、k1和k2的过程。关于相机标定的方法已提出很多,如Tisa两步法[15]、自标定法[16]和张氏标定法[17]等,其中张氏标定法因其具有设计灵活与高精度的特点而被广泛使用,实验采用张氏标定法对相机进行标定。
标定过程中,将标定物以不同的姿态放置在相机视场内并拍摄若干张图像。由于每张标定图像中含有两幅棋盘格图案,因此在标定前需要对图像进行分割,使得分割后的每幅图像只包含一幅完整的棋盘格图案,且图案在图像坐标系中的位置不变。标定结束后,可以得到相机的内参矩阵和棋盘格标定板在各个姿态下对应的外参矩阵。
2.3.3 系统标定
系统标定的核心在于将光平面的约束条件和相机成像模型统一到同一个坐标系下,从而确定二维像素坐标与三维物理坐标之间的映射关系,而系统标定前需要定义并建立系统中的各个坐标系。OC-XCYCZC为相机模型中的相机坐标系,O1-xy为图像物理坐标系;OU-XUYUZU和OD-XDYDZD分别为建立在上、下两个棋盘格标定板上的世界坐标系,坐标原点分别为各自棋盘格的左上角点,X轴和Y轴的方向分别为棋盘格的行和列方向,Z轴方向根据右手定则确定,如
图 5. 上、下两标定板上的世界坐标系
Fig. 5. World coordinate system on upper and bottom calibration plates
相机标定完成后,保持标定物的最后一个位姿不变,将振镜转动角度依次设置为ω1,ω2,…,ωn(n≥4)并分别采集n幅激光条纹图像。采集到的激光条纹图像为一条折线,折线的两端分别位于上、下标定板上,如
对于上标定板中的激光条纹,根据世界坐标系的定义可知上标定板中所有点的ZU=0,因此(1)式可改写为
式中:RU和TU分别表示上标定板世界坐标系相对于相机坐标系的旋转矩阵和平移向量;(XU,YU,0)表示上标定板中的点在世界坐标系下的坐标。其余参数已通过相机标定来获得,因此可以计算不同控制电压下激光条纹的三维坐标(XU,YU,0)。根据相机坐标系与世界坐标系之间的刚体变换关系可知
式中:(XUC,YUC,ZUC)表示上标定板中的激光条纹在相机坐标系中的坐标;RU和TU分别为
联合(3)~(6)式,求解可得
对于下标定板中的激光条纹,根据世界坐标系的定义可知下标定板中所有点的ZD=0,因此(1)式可改写为
式中:RD和TD分别表示下标定板世界坐标系相对于相机坐标系的旋转矩阵和平移向量;(XD,YD,0)表示下标定板中的点在世界坐标系下的坐标。其余参数已通过相机标定来获得,因此可以计算不同控制电压下激光条纹的三维坐标(XD,YD,0)。根据相机坐标系与世界坐标系之间的刚体变换关系可知
式中:(XDC,YDC,ZDC)表示下标定板中的激光条纹在相机坐标系中的坐标。RD和TD分别为
联合(8)~(11)式,求解可得
设光平面的方程为Ax+By+Cz+D=0,其中A、B、C和D为方程参数,(x,y,z)为点的坐标。对于任意转动角度ωn,对上述计算得到的激光条纹三维坐标进行最小二乘拟合可得光平面的单位法向量nn=(in,jn,kn)。
设振镜坐标系的XG轴、YG轴和ZG轴在相机坐标系的单位方向向量分别为nx=(ax,bx,cx)、ny=(ay,by,cy)和nz=(az,bz,cz)。根据振镜坐标系的定义以及反射定律可知
由于n≥4,因此(13)式为一个超定方程,求解该方程可得nx。由振镜坐标系的定义可知,YG轴与各个光平面的法向量垂直,故有
由于n≥4,因此(14)式为一个超定方程,求解该方程可得ny。进一步根据三坐标轴互相垂直可得nz=nx×ny。
理想情况下,所有激光平面应相交于YG轴所在的直线,但存在安装误差,实际情况为YG轴上存在一点P(x0,y0,z0)到所有光平面的距离最近,联立所有光平面方程并进行最小二乘求解即可获得该点的坐标,因此YG轴所在直线的方程为
设振镜坐标系原点在相机坐标系中的坐标(xG,yG,zG),由振镜坐标系的定义得yG=0,联立(15)式可得
根据定义可得振镜坐标系相对于相机坐标系的旋转矩阵RG和平移向量TG分别为
以相机坐标系为中间坐标系,可建立振镜坐标系与像素坐标系之间的映射关系,表达式为
根据反射定律可知激光平面转动的角度φ=2ω,则激光平面的约束条件为
联立(19)式和(20)式便可通过点的像素坐标求解得到其在振镜坐标系下的三维坐标。
3 测量模型与误差分析
3.1 测量模型
在理想的安装情况下,YG轴与YC轴平行,因此对于任一固定的YG轴,系统的测量模型如
图 7. 振镜扫描测量系统的模型示意图
Fig. 7. Schematic of model of galvanometer scanning measurement system
根据
进一步整理可得
(22)式即为简化后的二维测量模型,其中B、θ和f可以通过相机标定来得到,因此系统的标定精度会通过以上参数来反映。φ和p为扫描过程中实时计算得到的参数,其误差同样为三维坐标的测量误差。
3.2 误差分析
对于一个标定好的振镜扫描测量系统,若不考虑系统标定本身的精度,则测量误差主要来源于光平面定位误差Δφ和激光条纹中心提取误差Δp。以下通过控制变量法来分析两种误差的误差传递函数在振镜扫描过程中的变化规律。
3.2.1 光平面定位误差
将保证控制变量为前提,对以下理想过程进行误差分析。对一垂直于ZG轴且距离点OG为l的理想平面进行测量,并假设Δp=0。对(22)式两边取微分可得Δφ的误差传递函数,表达式为
对于搭建的系统,f=8 mm,激光平面的转动范围为-20°~20°,B=130 mm,L=300 mm,则根据
图 8. 不同方向下Δφ的误差传递函数曲线。(a)X轴方向;(b)Z轴方向
Fig. 8. Error transfer function curves of Δφ in different directions. (a) X axis direction; (b) Z axis direction
从
3.2.2 光条纹中心提取误差
激光条纹中心线的提取误差是导致测量误差的最直接原因之一,若认为激光条纹中心线的提取误差始终为一个恒定值,并且假设Δφ=0,对(22)式两边取微分可得Δp的误差传递函数,表达式为
(24)式中的系统参数与3.2.1节相同,同理计算可得不同z值的误差传递函数曲线,如
图 9. 不同方向下Δp的误差传递函数。(a)X轴方向;(b)Z轴方向
Fig. 9. Error transfer function curves of Δp in different directions. (a) X axis direction; (b) Z axis direction
从
上述讨论的前提是Δp值始终保持不变,但实际扫描过程中Δp值会受到被测物体表面形貌变化的影响。激光条纹的线宽随着入射光与被测物表面法线的夹角变大而变大,这会导致中心线的提取误差变大,模型如
图 10. 表面特性对Δp值的影响。(a)激光倾斜照射物体示意图;(b)灰度质心与几何中心之间的偏移曲线
Fig. 10. Effect of surface properties on Δp value. (a) Schematic of obliquely irradiated object with laser; (b) offset curves between gray centroid and geometric center
3.2.3 系统标定误差
系统的标定误差主要来源于光平面方程误差和系统安装误差两个方面。由系统标定原理可知,在空间中每两条相交的激光条纹可以确定一个光平面方程,因此激光条纹坐标的提取精度将直接决定光平面拟合的精度。此外,相机标定参数误差会导致激光条纹坐标产生误差,进而导致光平面方程产生拟合误差。
系统安装误差主要来源于光平面与振镜转轴的安装误差,理想情况下入射光平面会严格通过振镜转轴的轴线,计算多个反射光平面的交线即可标定轴线方程。实际的装配过程中总是会存在系统安装误差,而入射光平面与转轴存在相交和平行两种可能的偏移情况,如
图 11. 系统安装误差示意图。(a)光平面与转轴相交;(b)光平面与转轴平行
Fig. 11. Schematic of system installation error. (a) Light plane intersects axis of rotation; (b) light plane is parallel to axis of rotation
4 实验
4.1 系统标定实验
首先采用张氏标定法对相机进行标定,两块12×9的棋盘格相互固定且呈V字形,格子边长为10 mm,标定装置实物如
最后两幅棋盘格图像对应的平均重投影误差分别为0.0079 pixel和0.0076 pixel,这表明相机标定的精度很高。保持标定装置的最后一个姿态不变,打开激光器并调整相机曝光,控制振镜转动9次并同时采集标定图像,采用标定算法对9个光平面进行拟合,得到相机坐标系下的光平面如
图 13. 相机坐标系下光平面的拟合结果及其局部放大图
Fig. 13. Fitting results of light plane in camera coordinate system and its partial enlarged view
从
4.2 转角误差补偿
系统标定完成后,对一棋盘格标定板进行扫描测量,而三维点云在垂直方向上存在明显的起伏波动,并且同一条激光条纹的点云之间不存在这种偏差,因此偏差应主要来源于激光平面的定位误差。
为了进一步确定点云波动的具体误差来源,控制振镜从0°开始转动,步进角度设置为ω=0.1°,扫描线数设置为90,利用双棋盘格标定装置来计算标定得到90个激光平面的方程并计算相邻光平面之间的夹角,结果如
4.2.1 误差补偿策略
针对存在的Δφ,当伺服电机在固定的角度范围内转动时,转动误差为系统误差和随机误差的组合,即多次转动的夹角误差曲线存在重复性,因此可以通过多次标定来计算每个角度的转动误差。由于第一个光平面的理论角度为0°,且光平面转动的步长为0.2°,因此对于扫描过程中第s个光平面,其理论角度位置为0.2(s-1),故误差计算公式为
式中:δs表示第s个光平面处的角度误差;φs表示第s个光平面的实际角度位置,通过拟合计算光平面而得到。重复进行10次标定实验,在每个光平面处根据(27)式来计算角度误差,取10次计算结果的平均值作为该位置处最终的角度误差,结果如
误差曲线标定完成后,采用查表法对任意位置处的编码器角度值进行补偿,从而得到真实的激光平面角度并进行三维重建。
4.2.2 补偿效果测试
为了评估误差补偿效果,对棋盘格平板进行扫描测量,三维重建前后得到的点云如
图 16. 棋盘格平板的三维点云。(a)原始图像;(b)误差补偿后
Fig. 16. Three-dimensional point cloud of checkerboard flat panel. (a) Original image; (b) after error compensation
这表明误差补偿对三维重建的精度有明显提升。
为了进一步验证误差补偿对测量精度的提升效果,对陶瓷标准球进行测量以估计系统测量误差,结果如
图 17. 陶瓷标准球。(a)实物图;(b)三维点云
Fig. 17. Ceramic standard ball. (a) Physical image; (b) 3D point cloud
将标准球随机放置在L=250 mm附近的10个位置处,使用误差补偿后的系统对其进行10次测量,某次测量得到的三维点云如
测量得到的结果如
表 1. 误差补偿前标准球的测量结果
Table 1. Measurement results of standard ball before error compensation
|
表 2. 误差补偿后标准球的测量结果
Table 2. Measurement results of standard ball after error compensation
|
图 18. 不同情况下的误差曲线。(a)标准球直径;(b)球心距
Fig. 18. Error curves under different conditions. (a) Standard ball diameter; (b) ball center distance
表 3. 误差补偿对RSME和标准差的影响
Table 3. Influence of error compensation on RSME and standard deviation
|
从
最后,使用误差补偿后的系统对3D打印模型和石膏模型进行扫描测量,并对多个视角的点云进行拼接和表面三维重建,结果如
图 19. 3D打印模型和石膏模型的测量结果。(a)模型实物;(b)三维点云;(c)主视图;(d)侧视图
Fig. 19. Measurement results of 3D printed models and plaster models. (a) Real models; (b) 3D point clouds; (c) front views; (d) side views
5 结论
搭建一套振镜式线结构光扫描测量系统,并提出一种操作简单和成本较低的系统标定方法,该方法可以快速完成相机标定和系统标定。随后建立振镜扫描系统的测量模型并对系统测量误差进行详细分析。针对振镜电机存在较大转动定位误差的问题,提出一种基于查表法的误差补偿方法,通过多次标定来估算并补偿定位误差。使用陶瓷标准球对系统的测量误差进行评估,实验结果表明补偿后的测量精度有较大的提升,同时测量误差的标准差显著降低,因此该补偿方法能够有效提升系统的测量精度和稳定性。需要指出的是,该方法不能完全消除转动误差对系统测量精度的影响,因此系统的测量精度仍有较大的提升空间。后续工作将通过补偿系统存在的非线性误差以及激光线中心提取误差来进一步提高测量精度。
[1] 魏英杰. 基于线结构光的发动机叶片轮廓测量方法研究[D]. 成都: 电子科技大学, 2017: 4- 7.
Wei YJ. The research on measurement method of engine blade profile based on line structured light[D]. Chengdu: University of Electronic Science and Technology of China, 2017: 4- 7.
[2] 雷正龙, 沈健雄, 黎炳蔚, 等. 基于自动阈值的窄间隙端接焊缝识别技术[J]. 光学学报, 2018, 38(8): 0815011.
[3] 尹仕斌, 任永杰, 刘涛, 等. 机器视觉技术在现代汽车制造中的应用综述[J]. 光学学报, 2018, 38(8): 0815001.
[4] Park S C, Chang M. Reverse engineering with a structured light system[J]. Computers & Industrial Engineering, 2009, 57(4): 1377-1384.
[5] Yang S M, Shi X Y, Zhang G F, et al. A dual-platform laser scanner for 3D reconstruction of dental pieces[J]. Engineering, 2018, 4(6): 796-805.
[6] 解则晓, 张安祺. 超大尺度线结构光传感器内外参数同时标定[J]. 光学学报, 2018, 38(3): 0315001.
[7] 李旭东, 崔磊, 赵慧洁, 等. 双振镜点扫描三维形貌测量系统[J]. 光学精密工程, 2010, 18(7): 1648-1653.
[8] Wagner B, Stüber P, Wissel T, et al. Accuracy analysis for triangulation and tracking based on time-multiplexed structured light[J]. Medical Physics, 2014, 41(8): 082701.
[9] Chi S K, Xie Z X, Chen W Z. A laser line auto-scanning system for underwater 3D reconstruction[J]. Sensors, 2016, 16(9): 1534.
[10] Yu C Y, Chen X B, Xi J T. Modeling and calibration of a novel one-mirror galvanometric laser scanner[J]. Sensors, 2017, 17(1): 164.
[12] 解则晓, 迟书凯, 王晓敏, 等. 基于共面法的结构光自扫描测量系统参数标定方法[J]. 中国激光, 2016, 43(3): 0308003.
[13] Yang S M, Yang L L, Zhang G F, et al. Modeling and calibration of the galvanometric laser scanning three-dimensional measurement system[J]. Nanomanufacturing and Metrology, 2018, 1(3): 180-192.
[14] 周利民, 胡德洲, 卢秉恒. 激光扫描三角法测量精度因素的分析与研究[J]. 计量学报, 1998( 2): 3- 5.
Zhou LM, Hu DZ, Lu BH. A study of the precision factors of the laser scanning triangulation method[J]. Acta Metrologica Sinica, 1998( 2): 3- 5.
[15] Tsai R. A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses[J]. IEEE Journal on Robotics and Automation, 1987, 3(4): 323-344.
[16] Faugeras OD, Luong QT, Maybank SJ. Camera self-calibration: theory and experiments[M] ∥Sandini G. Computer vision-ECCV'92. Lecture notes in computer science. Heidelberg: Springer, 1992, 588: 321- 344.
[17] Zhang ZY. Flexible camera calibration by viewing a plane from unknown orientations[C]∥Proceedings of the Seventh IEEE International Conference on Computer Vision, September 20-27, 1999, Kerkyra, Greece. New York: IEEE, 1999: 666- 673.
Article Outline
王腾, 杨树明, 李述胜, 袁野, 胡鹏宇, 刘涛, 贾书海. 振镜激光扫描测量系统误差分析与补偿[J]. 光学学报, 2020, 40(23): 2315001. Teng Wang, Shuming Yang, Shusheng Li, Ye Yuan, Pengyu Hu, Tao Liu, Shuhai Jia. Error Analysis and Compensation of Galvanometer Laser Scanning Measurement System[J]. Acta Optica Sinica, 2020, 40(23): 2315001.