郑 正,许小进,谢晨江,简海林,刘志伟
(1.山东核电有限公司,山东 海阳 265116;2.国核电站运行服务技术有限公司,上海 200233;3.东华大学机械工程学院,上海 201620)
核电站燃料组件工作环境恶劣,在装配应力和热应力的影响下,长时间工作会导致组件变形,引发组件破损,增加核事故发生概率。燃料组件上管座作为提供燃料组件抓取和燃料组件定位载体,其特征尺寸常可用来评价燃料组件位置是否正确。机器视觉是以现代光学为基础,集光电子学、计算机图像处理、图形学、信号处理等科学技术于一体的现代测量技术[1-2]。根据测量光源,该技术可分为主动视觉和被动视觉测量。主动视觉测量具有在线非接触测量、特征识别明显、测量精度高等特点[3],适用于特殊恶劣环境下的物体检测。本文使用主动视觉测量技术,完成了对燃料组件上管座的尺寸测量,解决了单目视觉无法获取深度信息的问题。
线结构光扫描系统由线结构光三维测量模块、传动机构模块和信息处理模块三部分组成,系统框架如图1所示。三维测量模块通过已标定相对位置关系的相机和线结构光,获取线结构光与被测对象相交线上的点所对应的空间坐标。传动机构模块通过驱动三维测量模块和被测物体相对平移运动,采集整个路径上的平面信息。信息处理模块通过对图片进行分析计算并拟合点云数据,最终实现三维重构。
图1 线结构光扫描系统框架
被测燃料组件待测尺寸为L=(213.37±0.5)mm、H1=(66±0.5)mm、H2=(90±0.5)mm。上管座外形如图2所示。
图2 上管座外形示意图
系统硬件参数如下:相机分辨率1 920×1 080;单个像素尺寸5.5×5.5 μm;镜头焦距16 mm;相机焦点至线结构光发射点的距离S为300 mm;相机光路与水平面夹角θ为60°;传动机构步距为0.1 mm。
系统软件参数如下:开发系统win7;开发平台vs2013、qt5.8.0;库函数opencv3.1、pcl1.8.0。
系统检测要求如下:仪器量程300 mm;尺寸测量精度0.5 mm(工作距离0.5 m)。
线结构光测量空间模型如图3所示。由线结构光发射器发射出一个很窄的光平面,当光平面与物体相交时,便会形成一条相交线。该相交线由于物体表面形状的不同,导致相机采集的图像中的线结构光条纹产生扭曲和断裂。相交线上的每一个点与焦点和线结构光发射点之间都对应着一个简单的三角几何关系。在进行重建时,通过二维图像结合三角法原理,即可恢复物体的三维特征。
图3 空间模型
由该模型可求得空间点至线结构光发射点的水平距离Zp:
(1)
式中:S为激光发射点与相机焦点的水平距离;f为焦距;x为图像坐标点与中心的水平距离;θ为相机光路与基线之间的夹角。
同理可得空间点距离线结构光发射点的垂直距离Yp:
(2)
式中:y为图像坐标点距离中心的垂直距离。
由于相机光路与水平面的夹角θ决定了相机的视野范围,同时也影响了图像对于被测物体尺寸的分辨能力,因此θ的选择至关重要。
(3)
图4 空间尺寸与θ之间的关系图
(4)
式中:L为像平面的宽度。
结合式(3)和式(4),即可根据实际测量距离选择合适的θ,从而在获得较好采样效果的同时,得到较高的分辨率。
2.3.1 相机标定
在实际应用中,由于相机的镜头的制造以及安装过程都难以避免误差,因此数学模型需要考虑镜头畸变及光轴中心偏移造成的影响。在线性成像模型下,假设任意一个三维点所成的图像坐标为(X0,Y0)。由于光轴中心偏移,图像的实际中心坐标为(u0,v0),因畸变影响而产生的实际图像坐标为(Xd,Yd)。
此时,两个图像坐标之间的关系为[4-5]:
(5)
式中:Dx、Dy为非线性畸变因子,它们和点在图像中的位置有关。
Dx、Dy与Xd、Yd之间的关系可表示为:
(6)
式中:k1、k2、k3分别为2阶、4阶、6阶的径向畸变因子;p1、p2为切向畸变因子;r=Xd2+Yd2。
本文选用棋盘格标定板,采用的标定工具是Matlab标定工具箱。通过对二十张含有不同方向标定板的角点分析,最终可以获得四组参数组。第一组是fc。fc中的两个数据分别是kx和ky,即焦距归一化成像平面上的成像点坐标到图像坐标的放大系数。第二组是cc,代表光轴中心的图像坐标(u0,v0)。第三组参数为alpha_c,对应于图像坐标v的摄像机的实际y轴与理想y轴之间的夹角。最后一组参数是kc1~kc5,分别对应了式(6)中的径向和切向畸变因子。通过对这些拍摄图像的参数进行重映射,即可完成相机的标定。
2.3.2 线结构光矫正
由于之前的模型是以线结构光器平面与相机坐标系y方向平行为基础的,所以需要对线结构光器进行矫正。标定采用的是哈量0级加工精度量块,标定过程如下。
①利用初步搭建的系统,对量块进行拍摄。
②提取投影到量块上的线结构光条纹中心坐标,并用最小二乘法拟合中心线方程。
③计算直线与计算机图像y轴之间的夹角θ。
④根据夹角θ,对线激光器进行角度调节。
⑤重复步骤①至步骤④,直至夹角θ小于0.01°。
线结构光发射器发射出的线结构光本身具有宽度,照射在不同反射率的材料上会导致相机拍摄到的线结构光条纹宽度不同。因此,需要提取出线结构光条的中心坐标。提取的步骤可分为以下六步。
①标定矫正。
根据2.3.1节中的标定结果完成图像坐标点的重映射,从而消除同步变带来的影响。
②灰度化。
采集到的图像分为R、G、B三个分量。为了便于计算,通常将图像转为灰度图像,转换公式为:
Gray=0.299×R+0.587×G+0.114×B
(7)
转换过后的图像既能保留线结构光的原有信息,又能提高图像的处理速度。
③图像滤波。
由于现实环境以及设备的质量都并非理想状态,在传输过程中也有可能出现随机干扰,使得图像中不可避免地出现随机信号,即噪声。噪声在采样的各个过程中都会产生,导致最终计算结果不尽如人意。因此,对于图像噪声的平滑抑制是图像处理的重要内容。
本文使用的滤波方法为高斯滤波[6]。高斯滤波是根据高斯函数来选择权值的线性平滑滤波器。采用该方法滤波,可以在对图像细节进行模糊的同时,更多地保留图像总体的灰度分布特征。图像滤波前后对比如图5所示。
图5 图像滤波对比图
由图5可以看出,滤波前的图像中灰度分布较离散,滤波后的灰度分布较平滑。由此表明,图像滤波有利于结构光中心条纹的提取。
④伽马校正。
灰度值的取值范围为0~255,取值范围较小,因此灰度值的总体对比度不高,不利于阈值的设定。伽马校正[7]是对输入图像的灰度值进行非线性操作,使得输入与输出之间呈现指数关系:
(8)
式中:γ为调节系数。
本文需要提高高灰度处的分辨率。因此,设置γ的值为5,得到伽巴校正前后对比,如图6所示。
图6 伽马校正对比图
由图6可以看出,经过伽马校正后,灰度较高区域的分辨率得到了显著提高。
⑤阈值提取及改进。
阈值提取的过程中,传统方法是设定一个阈值,仅保留大于阈值部分的信息。但由于线结构光的能量随着距离的传播逐渐衰弱,被测物体又具有较强的反光,导致在近距离处的反光强度大于或等于较远处的线结构光强度,使得在提取过程中出现了提取不全或噪点过多的问题。针对此问题,在传统阈值法的基础上进行了改进。线结构光的强度虽然随着距离的不同在图像中呈现不同的分布,然而线结构光的亮度在每一行始终是近似于高斯分布。因此,改进的阈值提取方法可以分为以下三步:①计算出图像中每一行的最大灰度值并计算总的平均值;②根据平均值设定总体阈值来过滤背景;③对单行设定阈值,灰度的范围由每行的最大灰度值决定。
改进的方法既剔除了背景,又完整地保留了结构光条纹的完整信息。阈值提取及改进对比如图7所示。
图7 阈值提取及改进对比图
⑥计算亚像素坐标。
经过之前的处理,每一行的结构光灰度值分布如图8所示。
图8 结构光灰度分布图
此时,坐标点仍停留在像素级。为获得更高的精度,需要进行亚像素计算。亚像素的计算采用的是梯度重心法[8]。
根据线结构光条的粗细以及中心坐标(i,c)确定待处理范围2r,并在此范围内计算出各点之间的梯度:
G(i,j)=|V(i,j+1)-V(i,j)|
(9)
式中:V为对应点的灰度值。
梯度的对应位置由线性插值得出:
(10)
重心的计算公式为:
(11)
由以上公式,即可计算出线结构光条纹的亚像素坐标(Ci,y)。
根据亚像素坐标(Ci,y)以及式(1)、式(2),结合扫描系统的空间位置,即可计算出空间点对应的点云数据。
本文利用上述线结构光扫描系统,结合相机与线结构光器同步标定的方法,对组件进行了三维重构验证。
①通过扫描机构系统,分别对核燃料组件的六个方向进行扫描。
②选择两组点云,一组为参考点云、另一组为待变换点云。在两组点云中选取三组共同特征点,通过三组特征点解出正交旋转矩阵R和平移矢量T,对待变换点云通过R和T进行重映射,完成粗匹配。新坐标与旧坐标的变换公式如下:
(12)
③完成粗匹配后,使用改进的点云拼接算法[9],对点云进行进一步的准确匹配。
④三维模型重建采用的是贪婪投影三角化算法[10],搜索方法为kdtree,搜索的范围是20。三维模型重建如图9所示。
图9 三维模型重建图
使用本系统对核燃料组件进行了4组试验,依次检测了长、宽、高三个方向上的尺寸,并与标准值进行了比较。测量误差如表1所示。
由表1可知,平均误差率为0.27%。试验结果显示,计算值与测量值误差均小于0.5 mm,表明基于主动视觉的线结构光测量系统重建上管座组件数据与实物有很好的一致性,能够达到实际应用精度需求。
表1 测量误差
本文将线扫描三维测量技术用于核用燃料组件上管座的特征识别,通过三维线扫描测量系统和水平传动机构获取组件表面三维轮廓数据。针对组件点云数据,分块拟合,最终实现了组件上管座特征尺寸测量和三维重建。试验结果表明,该方法能满足核燃料组件上管座测量精度,可实现核电站上管座非接触测量,上管座特征尺寸测量误差在0.5 mm之内。