一种基于图像处理的水平尺气泡偏移量检测系统

2017-12-08 03:15:57单晓杭
计算机应用与软件 2017年11期
关键词:窗格水准气泡

单晓杭 范 超

(浙江工业大学机械工程学院 浙江 杭州 310014)

一种基于图像处理的水平尺气泡偏移量检测系统

单晓杭 范 超

(浙江工业大学机械工程学院 浙江 杭州 310014)

为了提高水准泡水平尺的关键部件在装配过程中的位置精度,同时也从一定程度上提高这一过程的自动化程度,设计一种基于机器视觉的水准泡中的气泡偏移量检测系统。首先通过图像水平方向的像素统计大致确定气泡的垂直位置。然后采用改进的梯度方法识别气泡以及刻度的水平位置。最后通过公式计算出气泡在水平方向上的偏移程度。实验结果验证了该方案在气泡位置检测中的有效性,相比较机器视觉系统检测,该方案成本较低,利于在工业生产环节推广使用。

机器视觉 像素统计 边缘检测

0 引 言

水平尺是一种主要用于测量平面水平、垂直程度的仪器[1]。除了完成一般的检测任务以外,有些水平尺还能够测量平面与水平面或者铅垂面之间的夹角是否在合理的误差范围内,在各行各业有着较为广泛的应用。水平尺有很多种类,其中气泡式水平尺具有很多优点,应用较为广泛。水平尺作为一种仪器因而其装配过程具有一定的精度要求,部分水平尺的装配过程要求有较高的精度。然而,在水平尺的实际装配过程中,一般需要凭借工人的肉眼观察来保证水准泡与水平尺壳体之间的定位关系。这一操作过程较易产生装配误差,在有些时候很难达到水平尺的装配精度要求。

随着制造业对于生产环节的自动化水平的要求越来越高,基于图像处理的机器视觉系统近些年来应用越来越广泛。顾名思义,机器视觉是一种模拟人类的视觉在一定程度上使机器具有模拟人眼进行生产过程检测的系统,其较高的精确性、一定程度的可重复性、较快的速度、较强的针对性[2]、较优的客观性以及成本的逐渐降低等特点使得其在工业自动化生产领域有着越来越广泛的应用,越来越受到更多自动化人士的青睐。

图像处理技术在水平尺的制造与装配过程中已经得到了一定程度的应用,有学者研究并实现了水平尺标定过程的视觉算法[3],但要实现工业应用仍需提高其在制造过程中的柔性。也有工程人员利用视觉系统实现了水平尺的装配生产,但生产柔性较低这一问题仍就存在,而且极其昂贵的机器视觉设备对于多数中小企业来说仍是一笔不小的投入。相比较而言,本文提出的图像处理方法可以较快适应多种型号水平尺的装配生产任务,而且其检测速率较快,测量精度也能满足要求,相对而言实现成本也较易接受。

在水准泡气泡偏移程度的检测中,对于气泡边缘的识别至关重要,获取气泡特定边缘的坐标值是计算气泡偏移量的前提,因此,边缘检测也就顺理成章的成为了气泡偏移量测量的中心任务。图像分割的边缘检测算法种类繁多[4],常用的边缘识别方法既包括Canny算子、Sobel算子[5]、Robinson算子[6],以及分水岭分割算法[7]等经典方法,也包括活动轮廓算法[8],以及水平集方法[9]等较为现代的方法。本文改进了传统的基于梯度的图像边缘识别算法,该方法受到图像噪声的影响较小。

1 图像获取

1.1 获取装置

本文设计的机器视觉系统(以下称视觉系统)由固定支架、智能相机、镜头、可调光源、工业PC,以及测试台组成(见图1)。固定支架用于固定工业相机以保持一定的拍摄距离和角度,可调光源有助于寻找较为合适的实验光照条件,测试台用于实现水准泡在装配过程中水平尺外壳工作面的水平。

图1 图像获取装置

借助于水平尺(已经装入水准泡)搬运机构,当水平尺到达装配测试台后,气阀工作驱动压紧装置使水平尺保持相对稳定。专用的伺服电机驱动螺丝刀旋转机构调整水准泡在水平尺中的倾斜程度, 从而实现水平尺这一装配过程。

1.2 装配的实现

机器视觉系统与装配调整系统(以下称调整系统)采用工业以太网通信,机器视觉系统读出气泡的偏移程度之后,驱动伺服电机以一定的步距调整水准泡两侧的调节螺丝。此时视觉系统更新气泡的偏移程度,伺服电机再做出相应调整,直至气泡的偏移程度控制在一定误差范围之内,从而实现这一装配过程。

调整系统的软件控制界面会给出传送带电机的工作状态、每个伺服电机的运行位移,以及气阀的其他控制组件的状态。

1.3 光源与照明

区别于对不同景物照射的需要,光源的选取需要参考物面的反射率、粗糙程度、起伏状况、测量主体特征等多种情况。由于气泡一般是处于半透明的液体(一般是乙醇)中,所以测试采用背光照明的方式。这样有助于产生黑白分明的被测物图像[10],有利于气泡偏移程度的测量。考虑到需要降低在相机上所生成的图像的亮度,我们选择与被测物(内有偏绿色的液体)色系差距较大的红色背光,这样有利于后期的图像分析与处理。而且,可见光中红光波长较短,因而穿透能力相对较强,有利于液体中气泡的检测。

2 图像预处理

2.1 滤 波

我们采用的是黑白工业相机,所获得的是256位的灰度图像(见图2),该图像由M×N个像素点组成。考虑到水准泡的液体可能会有一定的不均匀性,而且水准泡外壳可能会有装配过程中产生的轻微划痕出现,这些都会影响所获取的图像的灰度分布,对于个别非边缘的区域也可能出现灰度值较大的变化,从而在边缘提取的时候产生干扰测量结果的边缘信息。因此我们采用3×3的模板进行中值滤波(见图3),这样既能够降低不可避免的噪声,又能够在一定程度上避免模糊的图像,防止重要的边缘信息被淹没。

图2 拍摄到的原图像

图3 中值滤波后的图像

2.2 ROI 窗格的选取

选择先确定ROI区域,该ROI区域由M1×N1个像素点组成。我们这样做有两个原因:一方面由于所采用的工业相机感光元器件形状的限制,在取景的过程中不可避免地会拍摄到水准泡的某些气泡与刻度线以外的实体,这样就有可能提取到不需要的边缘信息,因而直接对被测气泡进行边缘提取的效果未必理想。另外考虑到调整装置与视觉系统之间的协调性,视觉系统作为控制过程的重要信息源,其信息处理速度尤为关键,因此先划分ROI区域是必要的。

我们选择划分出四个ROI窗格,分别涉及气泡的左右边缘的位置信息,以及左右两根刻度线的位置信息。

由于气泡的大致形状在装配过程中是基本不变的,我们在获取一帧灰度图像之后,以图像的垂直像素的索引为坐标,对每一个坐标相同的水平像素灰度值进行累加,得到与垂直方向索引(坐标)之间的关系。可以表示为:

(1)

求出SV(i)的所有极值点,这些极值点的索引构成的集合为:

S={i1,i2,…,ip}

集合S中的元素按照一定顺序排列得到集合S′:

S′={in1,in2,…,ink}in1

我们所要求的极值点需要符合条件:

(1) 极小值点与极大值点的排列顺序

我们以DV(ini)来描述极值点(ink,SV(ink))的方向,即:

(2)

那么要求满足:

DV(ink)=DV(ink+1)=-1,DV(ink+2)=1,1≤k≤p-3,k∈Z+。

(2) 两侧极值点连线的方向角在一定范围之内

(3)

KSmin与KSmax是事先选取的参数。

(3) 后面两个极值点之间的曲线变化趋势在一定范围之内

(4)

KL是事先选取的参数。

最终我们搜索到的一组极值点(inP,SV(inP)),(inP+1,SV(inP+1)),(inP+2,SV(inP+2)),它们位于黑色方框内(见图4)。则用于检测气泡位置的ROI窗格(见图5)的索引(坐标)可以表示为以下4个集合:

{(i,j)|SV(inP)≤i≤SV(inP+2),1≤j≤L}

{(i,j)|SV(inp)≤i≤SV(inp+2),N-L≤j≤N}

{(i,j)|SV(inp)+BV≤i≤SV(inp+2)+BV,1≤j≤L}

{(i,j)|SV(inp)+BV≤i≤SV(inP+2)+BV,N-L≤j≤N}

图4 经过求和后垂直方向灰度值的分布图

图5 ROI窗格的选取结果(4个矩形框内)

3 图像处理

3.1 阈值计算

对于已经选取好的ROI窗格,我们先要确定边缘提取所需的阈值。由于ROI窗格里的气泡边缘部分在垂直维度具有连续性,易知当中的任一由水平维度相同的像素所组成的集合均含有边缘成分。

我们任取ROI窗格里的一行像素,对该行像素的每一个点与相邻的点作有向差分,算出该行像素水平索引(坐标)为i的点对应的像素梯度值:

I(i,j)-I(i+1,j)=di

(5)

假设我们得到的di所属的集合是:

D={di|1≤i≤N1-1}

设第r次出现了个数为q的符合条件的di(这里指di≤0) 时,我们得到集合:

D(r)={dnr,dnr+1,…,dnr+1-1}s≥q

D(r)与D(r-1)的关系可用下式说明:

D(r-1)={dnr-1,dnr-1+1,…,dnr-1}nr-nr-1≥q

统计D(r)中非正值的占比kq:

(6)

当kq≥Kq时,D(r)t=∅;否则D(r)t=D(r)。

得到该行像素所有的差分值之后,由这些值组成一个集合:

(7)

取出符合条件的s个数组成一个新的集合:

D″={dq1,dq2,…,dqs}

(q1

对于dqq,dq2,…,dqNr,当中最小的Nr个元素,求和乘以一个事先选取的阈值参数KT之后得到阈值:

(8)

3.2 边缘像素提取

我们首先提出两点假设:

1) 图像在非边缘区域的像素值在小范围内变化;

2) 图像非边缘区域像素值变化量(以任一点的像素值为参照)的均值较大时,只要适当放大间隔d,则像素变化值的均值接近于零。

计算所有距离为d的像素点间的灰度值之差:

(9)

图6 气泡左侧ROI窗格提取的边缘像素

图7 气泡右侧ROI窗格提取的边缘像素

图8 左侧刻度线ROI窗格提取的边缘像素

图9 右侧刻度线ROI窗格提取的边缘像素

3.3 目标边缘点的选择

图10 气泡左侧ROI窗格的SH(j)直方图

图11 气泡右侧ROI窗格的SH(j)直方图

图12 左侧刻度线ROI窗格的SH(j)直方图

图13 右侧刻度线ROI窗格的SH(j)直方图

(10)

我们引进记号E(P)表示关系式中所有满足条件P的自变量的值构成的集合,我们记:

(11)

其中:

dist(Vk)=max(Vk)-min(Vk)

(12)

我们对于所有满足条件:

(13)

的Vkl按下式计算得到vkl:

(14)

其中:VDmin、VDmax、VHmin、VHmax、Vdist都是事先选定的参数。

我们最终得到这样一组由数值vkl组成的集合V,根据V中元素的索引(坐标)选取合适的v=vK,则vK即为我们所要求的边缘位置坐标值。

图14简要地描述了算法整体实现的大致过程。判定框以后的右侧分支属于之前所述的算法,设置左侧分支的目的是为了避免由于读取了错误的图像,以及其他异常工况下的误操作,有利于提高整个系统的安全性和可靠性。

图14 算法的整体流程图

4 实验结果与分析

4.1 气泡偏移程度的计算

我们采用下面的公式计算气泡的水平偏移程度:

(15)

实验证明,该公式能较好地反映气泡在水准泡内的偏移程度。

4.2 实验结果

我们选取了几帧图像,在这些图像中气泡偏向不同的水平位置,我们得到了气泡偏移值,见图15-图17。

图15 气泡在水准泡内偏左侧图像

图16 气泡在水准泡内基本居中图像

图17 气泡在水准泡内偏右侧图像

我们以vBL、vBR、vLL、vLR分别表示气泡左侧边缘至图像左侧边缘的距离、气泡右侧边缘至对应ROI窗格在水平方向起始位置的距离、左侧刻度线的左侧边缘至图像左侧边缘距离、右侧刻度线的右侧边缘至对应ROI窗格在水平方向起始位置的距离。

实验过程中气泡在水准泡内的偏移状态、测得的数据以及计算得到的用于评价偏移程度的值L见表1。

表1 实验结果

5 结 语

现在已有工业专用的机器视觉系统可以完成本文所论述的气泡偏移量的检测,但由于其价格昂贵,在一定程度上限制了该技术的推广。本文在没有采用远心镜头情形下,尽管拍摄得到的图像中两侧的刻度出现了一定的视差和畸变,但是通过该算法依旧能够较好地实现检测的目标,而且事先能够自动实现ROI窗格,提高了对于目标的检测速率。但是,该算法仍有几点不足,期待在今后的研究中改进:一是算法中有一部分参数需要人工给定,这样就使得目标边缘的识别带有一定的主观性;二是算法中缺乏对于由普通镜头采集的照片视差的误差分析,从而可能会出现得到的偏移量得不到所需的较为苛刻的精度的情形。

[1] 魏煜.图像处理和模式识别在水平尺标定系统中的应用[D].杭州:浙江大学,2004.

[2] 刘阁.图像测量活学活用——原理、算法模型及DSP实现[M].北京:清华大学出版社,2015.

[3] 魏煜,朱善安.图像处理在水平尺标定系统中的应用[J].计算机应用研究,2004(21)12:168-169,172.

[4] 章毓晋.图像工程[M].北京:清华大学出版社,2013.

[5] Gonzalez R C,Woods R E,Eddins S L.Digital Image Processing Using MATLABZ[M].阮秋琦,译.北京:电子工业出版社,2014.

[6] 赵安科,魏雨,刘天时,等.基于直方图均衡化的Robinson图像边缘检测算法[J].计算机测量与控制,2016,24(6):230-232,236.

[7] 凌财进,增婷,张超,等.一种改进的基于分水岭的图像分割算法[J].计算机测量与控制,2016,24(6):214-217.

[8] 陈波,赖剑煌.用于图像分割的活动轮廓模型综述[J].中国图象图形学报,2007,12(1):11-20.

[9] 钱芸,张英杰.水平集的图像分割方法综述[J].中国图象图形学报,2008,13(1):12-18.

[10] 余文勇,石绘.机器视觉自动检测技术[J].中国科技信息,2013(24):184-184.

ADETECTIONSYSTEMOFBUBBLEOFFSETINLEVELBARBASEDONIMAGEPROCESSING

Shan Xiaohang Fan Chao

(CollegeofMechanicalEngineering,ZhejiangUniversityofScienceandTechnology,Hangzhou310014,Zhejiang,China)

In the assembling of the level bars, the accuracy of the position between the level bubble and the level bar is definitely important. The automation of this working also needs to be developed, so we have developed a system for achieving automatic detection. First, we found the vertical direction of the bubbles generally by counting the pixels in horizontal direction. Second, the offsets of the bubbles and the horizontal positions of the mark lines were detected by an optimized gradient method. Lastly, the relative offsets of the bubbles were calculated by the formation we designed. The effectiveness of this system was verified by analyzing the experimental results. Compared with machine vision system inspection, our scheme has lower cost and is beneficial to be popularized in industrial production.

Machine vision Pixels counting Edge detection

2016-11-25。单晓杭,高工,主研领域:机电控制,航天类军工项目的研发。范超,硕士生。

TP3

A

10.3969/j.issn.1000-386x.2017.11.021

猜你喜欢
窗格水准气泡
柠檬气泡水
欣漾(2024年2期)2024-04-27 15:19:49
SIAU诗杭便携式气泡水杯
新潮电子(2021年7期)2021-08-14 15:53:12
浮法玻璃气泡的预防和控制对策
一种改进的水准网条件平差算法
北京测绘(2021年1期)2021-02-05 11:43:46
古典艺术审美——闽南古厝特色窗格
少儿美术(2019年4期)2019-12-14 08:04:12
冰冻气泡
媲美激光光源的成像水准Acer宏碁E8620C
Windows 10三大隐含窗格应用
青岛国家水准原点网建设与维护
显示或隐藏“大纲”或“幻灯片”选项卡
微电脑世界(2009年7期)2009-07-31 04:55:28