APP下载

基于Basler工业相机图像的丝绸表面缺陷检测

2019-07-08刘新

软件导刊 2019年6期

刘新

摘 要:在缺陷检测过程中,由于光照角度和亮度等因素导致采集的图像亮度较小,对比度不明显,使用一般相机采集某些材料表面图像时不能取得较好的效果。工业相机成像质量通常高于普通相机,因此利用Basler工业相机获取丝绸材料表面缺陷,基于图像处理缺陷检测技术提取丝绸表面缺陷图像。首先对图像进行灰度转换,得到单通道灰度图像,以便进行图像二值化处理。由于二值化图像有噪声点,用简单的模糊处理无法有效消除,需对图像进行开运算。将图像腐蚀后再进行膨胀,基本上可解决图像噪声问题,根据最后提取的图像轮廓进行筛选,提取出轮廓缺陷。经过检测发现,该算法对工业工件表面缺陷提取更准确,效果更好,可高效检测丝绸表面缺陷,提高生产效率。

关键词:Basler工业相机;丝绸表面缺陷检测;形态学膨胀;图像腐蚀;轮廓提取

DOI:10. 11907/rjdk. 182627

中图分类号:TP317.4文献标识码:A文章编号:1672-7800(2019)006-0167-04

Abstract: In the process of defect detection, due to some reasons such as illumination angle and brightness, the brightness of the captured images is relatively small, and the contrast is not obvious. Cameras with general performances can not achieve good results for some materials' surface image acquisition. Industrial cameras typically have higher imaging quality than normal cameras. This paper mainly uses Basler industrial camera to obtain the defects of silk material surface, and extracts the image of silk surface defect obtained based on image processing defect detection technology. The first step is to perform grayscale conversion on the image to obtain a single-channel grayscale image, which is beneficial to image binarization. Since the binarized image still has some noise points, the mere use of the blurring of these noise points does not produce good effects. Therefore, the image is opened first, and the image is etched to obtain an image that is eroded to basically solve the problem of image noise, the resulting image contour extraction and screening finally extracts contour defects. After the final test, the algorithm has achieved good results in the extraction of surface defects of some industrial workpieces, and it is more accurate and efficient to detect defects on the silk surface and improve production efficiency.

Key Words: Basler industrial camera; silk surface defect detection; morphological expansion; image corrosion; contour extraction

0 引言

由于受生產工艺、机械精度等不确定因素的影响,丝绸产品常出现多种表面缺陷。由于传统人工检测方法存在主观因素影响和肉眼局限性,不能满足客户对产品的质量要求;同时普通相机图像分辨率较低,因此,本文使用Basler工业相机采集产品图像。近年来,随着科学技术的发展与进步,机器视觉和图像处理技术被应用于丝绸缺陷检测,虽然利用Basler工业相机采集图像的技术已被应用于多个领域,但针对纹理复杂、缺陷较多且表面凹凸与缺陷几乎相似的丝绸表面缺陷检测研究,目前国内还属于空白状态。同时虽然Basler工业相机采集的图像精度较高,但实时图像与标准图像在空间上不可能完全对齐,所以在缺陷检测之前需要先将实时图与标准图配准。

本文在经典图像配准算法的基础上,结合实际技术要求,提出适合于丝绸缺陷检测系统的图像配准算法。针对纯文本图像,首先采用基于数学形态学和霍夫变换求其旋转变换参数[1],然后利用基于傅立叶相位相关原理的方法求其平移变换参数[2]。基于几种典型缺陷检测算法提出一种新的基于边缘检测算子锐化及几何特征的滑动矩形窗图像差分检测方法,该方法在滑动矩形窗后得到差分图像,再利用八邻域的概念对具有一定实际意义、一定面积的缺陷区域进行颜色标记,最后统计标号个数i,根据i是否大于零判断该丝绸产品是否为缺陷品。

针对Basler工业相机获取的图像对比度较低的问题,首先提高图像亮度和对比度 [3-4],然后设定阈值,对图像进行二值化操作[5],再对图像进行腐蚀操作,去除图像斑点状噪声[6],由于腐蚀处理会使图像边界信息有所损失,需对图像进行膨胀操作[7],在消除噪声的同时保留图像缺陷基本轮廓,最后对图像进行轮廓提取和面积计算[8],利用阈值筛选出缺陷部分轮廓,从而完成图像缺陷轮廓提取[9]。该缺陷检测技术可应用于丝绸生产线产品进给,应用本文提出的图像配准算法与缺陷检测算法进行丝绸缺陷在线检测实验,验证算法可行性。

1 图像亮度值与对比度提升

在利用机器视觉系统采集丝绸表面缺陷图像时,由于光照角度和亮度等原因导致图像亮度较小,对比度不强,所以图像中部分缺陷表现不明显,此时进行图像识别和缺陷提取无法达到理想效果,需对图像进行预处理提高图像对比度和亮度值[10]。

4 图像轮廓提取与轮廓筛选

对图像进行二值阈值处理及生态学操作可明显减少图像噪声点,对图像进行Canny边缘提取的效果有明显提升作用[17]。基于上述情况对图像进行轮廓查找、轮廓面积计算,然后进行面积筛选 ,可取得很好的效果。

图像轮廓提取有多种方法,本文主要应用基于收缩理论的轮廓提取算法,收缩法初始时定义一个大轮廓作为原始轮廓,顺时针寻找收缩点,不断收缩原始轮廓,直至无法找到收缩点,最终得到图像轮廓。算法复杂度虽较高,但初始轮廓易确定。本文首先定义一个矩形(轮廓周围最小矩形左上角点和右下角点)轮廓边界,然后基于收缩理论,利用点的8连通性和边缘的4连通性提取图像轮廓[18],最后寻找到最小包围矩形轮廓,图像轮廓后需进行轮廓区域面积计算,通过轮廓面大小筛选有缺陷区域的轮廓值。最终提取得到图像缺陷部分的轮廓,筛选出有一定实际意义、一定面积的缺陷区域进行绿颜色标记,最后统计标号个数i,根据i是否大于零判断该丝绸产品是否为缺陷品。

轮廓绘制及筛选代码如下:

findContours(thresholdImage, contours, hierarchy, CV_RETR_CCOMP, CHAIN_APPROX_SIMPLE);

for (int i = 0; i < contours.size(); i++)

{

RotatedRect box = minAreaRect(Mat(contours[i]));

Point2f vertex[4];

box.points(vertex);

double aera = contourArea(contours[i]);

for(int i = 0; i < contours.size(); i++)

{

minRects[i] = minAreaRect(Mat(contours[i]));

Scalar color = Scalar(rng.uniform(0,255),rng.uniform(0,255), rng.uniform(0,255));

drawContours(dst, contoursPloy, i, color, 1,8,std::vector(), 0, Point(0, 0));

Point2f rectPoints[4];

minRects[i].points(rectPoints);

for (int j = 0; j < 4; j++)

{

line(dst, rectPoints[j], rectPoints[(j+1)%4], color, 1, 8, 0);

}

}

cout << "第" << i << "个面积是:" << aera;

if(aera>3 && aera < 10)

{

continue;

}

for (int j = 0; j <= 3; j++)

{

line(rawImage, vertex[j], vertex[(j + 1) % 4], Scalar(0, 255, 56), 2, LINE_AA);

}

}

5 結果分析与展示

首先大幅提升图像对比度和亮度值,再对图像进行二值化和形态学处理,得到噪声点较小的图像,然后提取图像轮廓,通过轮廓像素面积对图像进行筛选,得到丝绸表面轮廓面积较小的缺陷,最终提取出效果如图3所示。图像缺陷部分展现得非常明显,整个图像没有任何干扰该缺陷的因素和噪声。

6 结语

针对图像不同的缺陷,需利用不同的算法思想对图像进行合理处理。本次实验目的主要是提取丝绸表面凸起缺陷,通过对图像进行二值化和形态学处理得到噪声点较小的图像,在此基础之上提取图像轮廓,根据轮廓像素面积对图像进行筛选,经过一系列处理,最终得到了比较满意的实验结果。该技术如运用到制造业工厂,不仅可大幅缩减人力、物力,还能极大提高产品生产效率。

参考文献:

[1] 刘春媛,夏勇,张灵,等. 基于数学形态学和霍夫变换的方法求其旋转变换参数[J]. 图像处理技术,2017(6):55-60.

[2] 王云,叶含笑,吴洪潭,等. 基于傅立叶相位相关原理的方法求其平移变换参数[J]. 图像处理,2010(7):51-53+56.

[3] 谢文达,邱竣鸿,王垒. 实际且快速的图像对比度增强方法[J]. 计算机研究与发展,2013,50(4):787-799.

[4] 方明,李洪娜,雷立,等. 低照度视频图像增强算法综述[J]. 长春理工大学学报:自然科学版,2016,39(3): 56-64+69.

[5] 胡斌,宫宁生. 一种改进的Otsu阈值分割算法[J]. 微电子学与计算机,2009 ,26(12):153-155.

[6] 沈阳,宓超,凤宇飞. 形态学开运算在车型图像去噪中的应用[J].  中国科技信息,2015(18):52-53.

[7] 黎伟,刘观仕,姚婷. 膨胀土裂隙图像处理及特征提取方法的改进[J]. 岩土力学,2014,35(12):3619-3626.

[8] 王培珍,丁海涛,刘纯利,等. 基于结构元的煤显微图像轮廓提取算法[J]. 煤炭学报2014 ,20(s1):285-288.

[9] 陈至坤,潘晓娣,王福斌,等. 基于Radon变换的图像轮廓提取方法研究[J]. 传感器与微系统,2010,29(2):63-65+68.

[10] 王俊平,李锦. 图像对比度增强研究的进展[J]. 电子科技2013,26(5):160-165.

[11] 张涛,巫红英,李蒙,等. 一种提高图像对比度和视觉质量的新型区域背光算法[J]. 2017,(39)12:1888-1897.

[12] 吴东,郝明. 基于图像对比度的舰船目标成像算法[J]. 电子测量技术,2017(12):110-116.

[13] 行军,韩宪忠,王克俭,等. 基于最大方差阈值法的火车票图像二值化处理[J]. 计算机应用与软件,2012(7):249-253.

[14] 胡敏,李梅,汪榮贵. 改进的Otsu算法在图像分割中的应用[J]. 电子测量与仪器学报,2010(5):443-449.

[15] 杨红,崔艳. 基于开运算暗通道和优化边界约束的图像去雾算法[J]. 光子学报,2018(6): 244-250.

[16] 刘耀军,张姗梅. 基于有限自动化的二值图像的开运算[J]. 图像、图形与多媒体,2012,31(12):39-42.

[17] 吴翔,于微波,马艳辉,等.  一种新的改进Canny图像边缘检测算法[J]. 影像科学与光化学,2016,34(1): 116-121.

[18] 邹柏贤,林京壤. 图像轮廓提取方法研究[J]. 计算机工程与应用,2008,44(25):161-165.

[19] 戴天虹,吴以. 基于OTSU算法与数学形态学的木材缺陷图像分割[J]. 森林工程,2014,30(2):52-55.

[20] 马永强,王顺利,孙伟,等. 基于高斯金字塔和拉普拉斯金字塔融合的图像对比度增强算法研究[J]. 信息与电脑:理论版,2018,398(4):38-40.

(责任编辑:江 艳)