张建伟, 张光龙, 周 敬
(成都大学 信息科学与工程学院, 四川 成都 610106)
金属壳体作为密封制品在食品、化工与医疗行业得到广泛的应用.金属壳体材料的生产过程需要极为严格的控制和监测,由于不同行业对壳体金属材料要求各异,同时不同金属材料对温度的适应力及对大气压的耐受力有着不同等级的要求,所以壳体厚度直接影响了制品的质量及生产成本.金属壳体大多数的贮藏环境需要抽真空,由于不同材质和厚度的材料抗压能力不同,因此金属壳体设计过程中有一个关键的实验就是对抽真空的壳体长时间形变监测,形变监测过程通常由人工长时间多次数的记录和分析来完成.视觉测量作为一种非接触式测量方法,具有结构简单、测量方便等优点[1].随着智能制造的不断发展,视觉测量技术在工业、航天及人工智能等领域得到了广泛应用.在复杂环境中要对关键设备进行形变的测量确实比较困难,但在工业生产中智能视觉检测已经不可或缺[2].为了使监测更智能与高效,本研究提出了基于三角法的视觉测量技术来实现形变数据的实时监测.本研究方法可在长时间无人值守的情况下对物体形变进行实时监测,在保证设备装置的安全性和可靠性的同时获取准确的数据信息.同时,实验仿真数据表明,在特定场所中金属壳体形变测量的测量精度高于人工测量精度.
本研究的形变测量算法采用中值滤波,中值滤波最大的优点就是不改变图像的细节结构的同时还可以去除图像的噪点.
中值滤波方法的原理如下:针对待处理的当前像素,选择一个由其邻近的若干个像素组成的模板,对模板的像素由小到大进行排序,再用模板的中值替代原像素的值.
对于二维图像3×3的中值滤波的公式如下,
g(x,y)=med{f(x-1,y-1),f(x,y-1),
f(x+1,y-1),f(x-1,y),f(x,y),
f(x+1,y),f(x-1,y+1),
f(x,y+1),f(x+1,y+1)}
(1)
式中,f(x±1,y±1)是像素f(x,y)的邻近像素,med是取所有值的中值.
数字图像是由有限数量的元素组成的,每个元素都有一个特殊的位置和数值.组成数字图像的基本单位是像素,即,数字图像是像素的集合[3].模板匹配算法实际上是通过滑窗的方式将模板与原图的子图进行对比来寻找模板与子图的相似性.假如存在模板T(W×M),将其叠放在原图S(H×N)上平移,则称原图为被搜素图,而在被搜索图上模板覆盖的那块区域称为子图Sij,(i,j)为子图左上角在被搜索图S上的坐标[4],搜索范围为,
1≤i≤W-M,1≤j≤H-N
(2)
算法通过比较T和Sij的相似性,完成模板匹配过程.
对于模板T和子图Sij的匹配程度,本研究采用欧式距离相似性函数[5]来衡量,
(3)
将式(1)右边展开得,
(4)
式中,Sij为子图,T为模板.第1项和第3项在选定模板之后就是定值.相似度其实只取决于第2项,对于欧式距离而言,值越大相似性越低,即第2项值越小越相似.将中间项归一化为,
(5)
当R(i,j)=1时,表示模板与子图完全相等.
为了进一步提高定位精度,本研究进一步通过匹配的相关系数进行高斯曲面拟合[6],并求其极值来达到亚像素精度.
本研究的高精度视觉形变测量是采用单目相机三角测距结合图像匹配算法实现的.单目测距原理示意图如图1所示.
图1单目测距原理图
测量算法的原理是:利用小孔成像模型,从相似三角形之间的关系获取相机焦距f,再计算物体到相机的距离[7].假设有一个宽度为W的目标或物体,本研究将这个目标放在距离相机为D的位置,用相机对物体进行拍照并测量物体的像素宽度P,这样就得出相机焦距的公式,
F=(P*D)/W
(6)
相机移动后,需获取新距离D′,由式(6)可得,
D′=(W*F)/P
(7)
最后,根据相似三角形的原理计算出相应的位移量.
因为单金属表面的纹理较少,算法无法提取有效特征进行配准和测量.为了实现智能的金属壳体形变的高精度测量,本研究先在金属壳外壁贴上特征标识,然后采用高分辨率工业面阵相机进行标识图像的数据采集.
采集到数据后的图像测量算法是本研究系统的核心.算法首先对图像使用中值滤波降噪,以减少噪声对图像的干扰,然后利用模板匹配对标识进行配准,寻找到匹配的最优亚像素位置.亚像素位置的像素坐标在电荷耦合器件(Charge-coupled device,CCD)上的物理坐标配合三角测量,完成形变变化量的解算,最终算法将测量结果进行趋势分析和输出显示.其中,形变测量采用的三角法是基于单目成像测距原理实现的.算法流程如图2所示.
图2形变测量算法流程图
本研究的金属外壳形变测量系统以工业相机为核心,再加上光源、标识、显示器、前端处理器及服务器等外围设备.该工业相机与传统的网络摄像机图像处理平台[8]类似,可以通过网络进行数据传输.测量系统的框图如图3所示.
在实际系统设计时需要对一个金属壳外壁的中心区域进行形变实时测量,由于该区域本身的纹理较少且反光严重,对提取和测量形成干扰,不易直接采集特征,给高精度的测量造成障碍.因此,为了保证提取质量和测量精度,本研究在金属壳外壁中心区域增加标识特征,其重要目的在于增强目标的特征并提高特征提取精度.常见的标识有圆形、同心圆或十字形等,如图4所示.
图3形变测量系统框图
图4常见标识类型
为了确保在不同环境光照状态下对标识有清晰的成像,本研究对被测设备表面进行打光.在固定光源的情况下,本研究通过触发CCD相机获取标识特征数据信息,并采用上述高精度模板匹配方法在连续帧中配准特征位置.当标识特征未发生变化时,则说明金属壳外壁无形变产生.当标识特征发生变化时,则证明金属壳外壁发生了形变.形变测量示意图如图5所示.图6为所采用的标识在CCD中的成像示意图.
图5形变测量示意图
图6标识在CCD中的成像示意图
在CCD中标识的像素位移可以通过式(3)与式(4)的模板匹配计算得到,再根据单目测距原理及三角测量法的原理推导出形变测量关系.标识在CCD中的像素位置变化可以通过三角测量法转化为实际空间的物理位移变化.形变测量原理图如图7所示.
图7形变测量原理示意图
根据相似三角形原理可以得到,
(8)
式中,L1为焦距,L2为物距,M为物体高度,θ为45°.
形变测量系统的工作流程如图8所示.系统首先通过套接字创建网络通信接口,然后初始化工业相机,开始连续采集金属壳体相关变形的数据信息.如果采集时间超时,则通知后台服务器工位异常.如果采集正常,则进行实时形变测量和数据分析.最后,系统将该工位的计算数据和结果传输给后台的服务器,以便后期进行追溯和分析.
图8形变测量系统流程图
在2.5 GHz Inter i5-7300处理器及8 GiB内存的Windows 10系统下,本研究利用Visual Studio 2016和OpenCv 3.1.0软件配置环境对形变测量算法进行实际验证.为了方便产生形变,由于较厚金属不便于快速实验,因此,本研究的实验采用较薄的铝制壳体.
图9为形变测量原始图.本研究通过按压金属壳体表面引起形变,同时利用单目相机获取图像数据结合形变测量算法进行处理,得出结果并显示.为了提高测量精度,本研究通过粘贴标签来降低反光且增加纹理特征,降低测量误差.测量结果如图10所示.
图9形变测量原始图
图10形变测量结果图
在实验中,为了对比实际形变测量结果的误差,本研究采用了高精度红外激光距离测量仪对同一位置进行同步测量来作为实际形变值.该测量仪的精度为5 μm,因此可以用于验证该视觉测量的精度[9].同时,本研究将高精度测量设备的激光测量点对准标识中心,当垂直向下按压金属壳体引起形变.为了保证测量算法和高精度测量设备读数的一致性,本研究同时对两处的测量数据进行记录,随机选取其中的8组形变测量数据如表1与表2所示.
表1与表2中,高精度测量仪的数据为实际值,本研究的算法值为测量值,绝对误差和相对误差均由以上数据得出.从表1可知,基于视觉的形变测量算法的均方根误差为0.016 mm,平均误差为0.014 mm,最大相对误差在2%左右.从表2可知,均方根误差为0.026 mm,平均误差为0.023 mm,最大相对误差不大于4%.
表1 形变测量数据1
表2 形变测量数据2
另外,本研究也将测量到的数据提取出来进行形变量分析,如图11所示.图11为采集点和形变量的关系图,分析采集数据的主要方法是函数拟合法.
图11形变量分析
由图11(a)和图11(b)不难看出,拟合后的函数近似线性函数,如果该函数结合材料力学相关理论则有助于获取更进一步的实验结论.
工业产品的形变测量在其生产过程中至关重要,本研究采用基于视觉的形变测量算法,将测量误差控制在4%左右,精度在0.03 mm以内,优于人工的0.05 mm.同时,该系统可实现无人参与的实时监测和数据分析,极大地提高了金属壳制品研究过程中数据分析和开发的效率.