APP下载

基于机器视觉的LED数码管检测

2020-07-14甘艳平

机械工程师 2020年6期
关键词:数码管直方图图像处理

甘艳平

(南京信息职业技术学院机电学院,南京210023)

0 引 言

LED数码管是一种广泛应用于仪器仪表的电子元器件,一般由7段发光二极管组成,通过控制7段发光二级管不同组合实现数字0~9的显示。在使用数码管的产品中,要求7段发光二极管正常发光,亮度一致,因此一般需要检测7段发光二极管的发光亮度与均匀性。目前检测的方法是通过点亮LED数码管,靠人眼来判断产品的亮度是否达标。该方法有着明显的缺点:1)工人工作劳动强度大,长时间注意力高度集中观察LED数码管,人眼判别视觉易疲劳,易出现检测纰漏,且判别标准不能数字化,存在主观性,被检测的产品中仍有部分不合格产品;2)随着人工成本的不断上涨,员工工资占产品生产成本的比重越来越大,企业负担也来越重,迫切需要降低人工成本。

针对LED数码管人工检测效率低、精度低、成本高的特点,基于机器视觉的LED数码管亮度检测方法提供了一种快捷有效的LED数码管客观、量化检测方法,能够实现LED数码管检测的标准化,直接系统地判断LED是否合格,克服现有技术中人工检测的主观性强、容易误判等缺点,同时可以降低企业生产成本。

1 检测装置

基于机器视觉的LED数码管检测装置结构如图1所示,该装置包括控制传送装置、图像采集装置、图像处理装置及产品分拣装置。

图1 LED检测装置

传送装置包括机架3、传送带11、电动机控制器15、电动机16。传送带11上标有记号,可以使LED数码管控制模块2居中安放。电动机控制器15和电脑1相连接,电脑1传送命令给电动机控制器15,控制电动机16旋转。

图像采集装置包括LED数码管控制模块2、暗箱4、CCD相机5、夹具8。暗室4的两侧使用遮光板,皮带轮滚动方向的两边使用遮光布。LED数码管控制模块2从左侧进入暗箱4,光电传感器7安装在暗箱4的上方,与电脑连接,用于检测LED数码管控制模块2是否到达指定位置。夹具8通过电脑控制上下升降,可以和LED数码管控制模块2实现联通,来点亮LED数码管。CCD相机5在LED数码管点亮后开始拍摄,同时为了实现LED数码管检测的量化,加上滤镜6,只透过LED数码管的主要光(前期通过光谱仪检测到LED数码管的峰值波长),CCD相机5和电脑1连接,将数据传输到电脑处理。

图像处理装置是一台电脑1,连接CCD照相机5、光电传感器7、夹具8、机械手9和电动机控制器15,电脑对CCD照相机5、光电传感器7的输入信号进行处理,同时对夹具8、机械手9、电动机控制器15输出控制信号。

产品分拣装置是一只机械手9,前端使用吸盘10,既可以有效利用LED数码管表面平整的特性,又可以防止使用关节抓手可能对LED数码管造成的损伤。机械手的基座13可以360°旋转,机械臂大臂12可以上下移动,由机械臂大臂12延伸出来的机械臂小臂14可以在直线方向上来回伸缩,这样一整套组合就可以完成在最远伸长量的任意范围内实现抓取和释放。

2 检测方法及判断流程

基于机器视觉的LED数码管检测过程为:传送装置用于将待检LED数码管传送至图像采集装置前,正对图像采集装置设有夹具,用于夹持待检LED数码管,夹具上设有电源接口(夹持待检LED数码管时进行供电),图像采集装置完成对待检LED数码管的图像采集,图像输入图像处理装置,图像处理装置中配置有软件程序以实现检测、对比及判断。图像采集完成,夹具松开LED数码管,产品分拣装置根据图像处理装置的输出完成对LED数码管的分拣,其中控制主机发出控制信号,驱动传动装置、图像采集装置和夹具的动作。

LED合格与否的判断方法:采集待测LED数码管亮灯状态下的图像,与正常LED数码管亮灯状态下的图像进行比对,比对采用横向投影直方图对比的方法,将正常LED数码管与待测LED数码管的横向投影直方图相减取绝对值,逐点求偏差,再取平均值和方差,做统计分析,得到亮度偏差的情况,然后再求两个横向投影直方图曲线的相关系数,用来分析两条横向投影直方图曲线相似性,得到两图像的相似性,根据相似性判断待测LED数码管是否合格。

3 检测过程及示例

3.1 硬件工作流程(如图3)

3.2 软件处理过程

1)图像处理软件的选择根据实际情况,选用MATLAB软件。MATLAB软件是一款专门用来解决数学问题的软件,可以进行数值分析、矩阵计算,也可将数据图形化。同时,该软件也可进行逆向处理,即将图像信息经过一系列算法转化为数字信息[1]。

2)背景预处理。

图2 机器视觉LED检测判断流程

图3 硬件工作流程图

a.图像灰度化处理。所谓灰度化处理就是把图片的色彩信息都去掉,只留下亮度信息,以灰度的形式表现出来,即把一个三维的图片信息转化到二维图像的过程,越亮的地方数值越大,越靠近255(255相当于白色),越暗的地方数值越靠近0(0相当于黑色)。图像灰度化处理的方法主要有4种,为获得最优的灰度化处理方案,经多次实验比较,检测系统增加了滤镜6(见图4),且采用加权平均法来进行灰度化处理。由于人眼对绿色、红色、蓝色的敏感度依次递减,所以按式f(i)=0.30R(i)+0.59G(i)+0.11B(i)对RGB三分量进行加权平均能得到较合理的灰度图像。

图4 正常LED数码管显示数字8的灰度直方图

b.数字边缘的提取。所谓边缘是指我们所需要的图像信息和背景之间,或者两个图像信息之间的分界线。边缘检测是图像处理中不可缺少的一个重要环节,也是实现边缘分割的基础[2]。本检测采用Canny算子来检测图像中数字的边缘,算法如下:

其中:BW是对结果的命名;edge是MATLAB软件里面自带的检测边缘函数;f是待处理图像名称;′canny′是选用的其中一种算法的名字,可以直接调用,不必自己编程;T可以是数组或数字;sigma是使用高斯滤波器进行运算时选择的标准差。经canny算法后,强边缘显示出来,弱边沿不显示。

3)数字定位。相机拍摄到的图片有很多信息是无用的,因此需要根据信息特征找到所需信息。由于LED数码管是一个恒定的矩形,因此先调用MATLAB中的strel函数来创建对象,即se=strel(′rectangle′,[40,40]),然后用工具进行膨胀和腐蚀,再用imclose和bwareaopen函数进行闭操作和移除小对象操作,从而勾勒出需要的数字区域,最后根据横向和纵向的固定数字裁剪出数字区域。

4)数字分割。为减小信息量,加快处理速度,同时不影响轮廓信息,对前述灰度化图进行二值化处理(将0~255里各数据选择一个值,大于这个值的变成255,小于这个值的变成0),采用Otsu阈值分割法来确定图像二值化分割的阈值[3]。算法如下:

图像经过定位和二值化之后,经左边界和右边界限定,分割出数字来。

图5 统计正常LED发光管显示数字8的横向直方图

5)横向累加。先用光谱仪找出正常发光的LED样本,根据统计特征匹配法,对正常样本的横向白色像素特征进行统计,得出正常LED数码管数字8的横向直方图如图5所示。

最后,将待检验的LED数码管点亮,经过图像采集、软件程序处理后,其显示数字在横向的向量累加值会出现固定的特征,比较待测LED的横向直方图与统计特征直方图的差异,判断待测品是否合格,最终实现对LED数码管的量化检测,如图6所示。

图6 合格与不合格LED数码管直方图对照

4 结 论

近年来,随着自动化技术的迅猛发展,机器视觉技术也得到了快速发展,为改变传统的人工检测LED数码管效率低、精度低、成本高等特点,人们不断地探索利用机器视觉检测LED的方案。本文提供了一种不同于直接用工业相机拍照、对比图片或检测灰度、亮度的方法,利用该方案可快捷、有效地进行LED数码管合格与否的量化检测,环境适应性强,稳定性好,值得借鉴。

猜你喜欢

数码管直方图图像处理
符合差分隐私的流数据统计直方图发布
人工智能辅助冠状动脉CTA图像处理和诊断的研究进展
微课教学设计之“数码管动态显示”
Arduino编程
基于ARM嵌入式的关于图像处理的交通信号灯识别
MC9S08FL16单片机数码管静态显示分析
单片机控制的四位数码管动态显示编程
用直方图控制画面影调
基于图像处理的机器人精确抓取的设计与实现
机器学习在图像处理中的应用