APP下载

基于灰度直方图反向投影的织物疵点图像分割

2016-03-02孙国栋艾成汉赵大兴

制造业自动化 2016年4期
关键词:疵点像素点直方图

孙国栋,林 松,艾成汉,赵大兴

(湖北工业大学 机械工程学院,武汉 430068)

0 引言

织物疵点检测是保证织物质量的重要手段,传统的人眼检测不仅人工成本高,而且效率低,而机器视觉检测方法可显著弥补人工检测的不足。目前,织物纹理特征的提取方法主要有统计方法、频谱方法和模型方法[1]。其中常用的统计方法包括灰度共生矩阵[2]和局部二值模式等;频谱方法包括傅里叶变换、Gabor变换和小波变换等;模型方法包括自回归模型和马尔科夫场等。以上这些方法各有优缺点,虽然有效果,但都具有一定的复杂度,耗时较长。

Michael J. Swain等[3]首先提出了颜色直方图反向投影用于目标定位,后来的相关研究也都集中于颜色直方图反向投影[4~7]。颜色直方图反向投影主要用于复杂背景中目标的检测与追踪,需要事先知道目标的颜色或面积信息,而织物疵点种类繁多,检测前无法确定有什么疵点,无法提供疵点的确切信息,且本文主要研究白坯布的疵点检测,获取的是灰度图像,因此颜色直方图反向投影并不适合本文的研究。但该方法具有借鉴意义,同时又考虑到目前的织物疵点检测算法都具有一定的复杂度,因此本文在此基础上提出基于灰度直方图的反向投影用于织物疵点检测。

1 灰度直方图反向投影的原理

所谓反向投影就是首先计算输入图像某一特征的直方图,然后用输入图像某一位置上的特征值对应于直方图的一个bin上的值来代替该特征值。用统计学术语可表述为:输出图像像素点的值是观测数组在某个分布(直方图)下的概率[8]。这个特征为灰度值时即为灰度直方图反向投影。某种灰度值在整幅图像中所占面积越大,其在直方图中的值越大,反向投影时,其对应的像素的新值就越大,这部分灰度值集中在纹理;反之,某种灰度值所占面积越小,其新值就越小,这部分灰度值集中在疵点。基于灰度直方图的反向投影计算公式为:

其中,bp(i, j)为在位置(i, j)处反向投影的像素值,b(i, j)表示图像中在位置(i, j)上的像素对应灰度直方图的第b(i, j)个bin,直方图共n个bin,qb(i,j)表示第b(i, j)个bin的值,qm表示灰度直方图第m个bin的值,max(qm)表示灰度直方图所有bin值中的最大值,用于反向投影图像的归一化。

在采集的织物图像中,疵点始终属于小部分区域,并且由于织物纹理的特性,按照式(1)所得到的反向投影图中疵点和非疵点的灰度值相距较近,不易区分。为了更有效更合理地检测出疵点,将反向投影的计算公式改为:

当图像进行灰度直方图统计后,如果灰度值对应的像素点个数小于255,则将像素点的个数作为这些像素点的灰度值;如果灰度值对应的像素点个数大于等于255,则这些像素点的灰度值全部置为255。这样处理可以过滤掉大部分非疵点的像素点,对剩余像素点的反向投影将更具有针对性。不论织物的纹理是何种方向,反向投影的这种特性都可以很好地屏蔽纹理,且简单实用,相比灰度共生矩阵和Gabor变换等需要确定纹理方向或者采用多个方向和尺度的特征,复杂度大大降低了。

2 算法流程及实验结果分析

2.1 算法流程

算法流程为:反向投影→闭运算→二值化→确定疵点。反向投影过程中,计算织物灰度图像的直方图时直方图维数,即bin的个数m对反向投影的图像有一定影响。经实验分析,m取80,效果较好。反向投影后的形态学处理是为了消除杂质点的干扰,不仅使有疵点的织物图像处理后只剩下疵点部分,而且使正常织物图像处理后不受影响。膨胀和腐蚀的结构元素大小取3×3的模板。闭运算后的图像为灰度图像,且存在一些独立的细小的杂质,因此需要采用二值化滤除这些杂质并对疵点定位。由于闭运算后的图像有明显的前景和背景,其直方图总体上呈双峰状态,且有明显波谷,故本文采用自适应的基本全局阈值分割法对图像进行二值化。

2.2 实验结果分析

部分疵点检测结果如图1所示,图1(a)为疵点图像,从左至右疵点依次为破洞、油污、断经、断纬、起球、断疵。图1(b)为各疵点对应的反向投影图,图1(c)为闭运算及二值化后的效果图。从实验结果可以看出这些疵点的检测效果都较好。

为了便于实验,以上给出的疵点图像均为所采集图像的一部分,实际检测时需对整幅图像进行分块处理。

3 本文算法与其他算法的比较

为了评价所提出的灰度直方图反向投影算法,将灰度直方图反向投影与Gabor滤波方法及灰度共生矩阵方法进行了用时比较。用Gabor滤波方法处理图像时一般会选择多个不同尺度和方向的Gabor滤波器组,在这里为了便于比较,只使用了单个的Gabor滤波器的实部来处理图像。Gabor滤波器的参数为:频率参数F=5,方向参数θ=0或π/2,尺度参数σ=π/2,比例参数λ=1。图像的灰度共生矩阵也有4个方向,在这里也只提取了一个方向的灰度共生矩阵,并且没有计算灰度共生矩阵的特征。灰度共生矩阵参数为:距离d=1,灰度级N=256。表1给出了三种算法的用时。测试图片为图1中的疵点图像,大小为200×200,用时均在VS2010和OpenCV 2.4.4平台下通过机器内部的高精度计数器获取,并取多次测试结果的平均值。主机配置为:处理器为Intel(R) Celeron(R) CPU G540 @ 2.50GHz,内存为2G。从测试数据可以看出直方图反向投影用时最少,是灰度共生矩阵的三分之一左右,是Gabor滤波的1/33左右。如果Gabor滤波方法使用多个Gabor滤波器,灰度共生矩阵方法计算所有方向的灰度共生矩阵并计算灰度共生矩阵的特征,那么这两种方法的耗时将更长。

图1 疵点检测结果

表1 三种算法的用时比较

4 结束语

本文提出了基于灰度直方图反向投影的织物疵点图像分割方法。该方法对织物的纹理具有很好的屏蔽作用,且适用于不同的织物纹理,通过六种疵点的实验结果验证了该方法的有效性。与两种常见的纹理特征提取方法的用时比较表明:基于灰度直方图反向投影的织物疵点图像分割方法不仅效果良好,而且复杂度低,用时较短,为织物疵点检测提供了新思路。下一阶段将研究在反向投影的基础上结合其他算法来检测织物疵点。

[1] Kumar A.Computer-vision-based fabric defect detection:a survey[J].IEEE Trans Ind Electron,2008,55(1):348-363.

[2] Haralick RM, Shanmugam K,Dinstein I.Textural features for image classification[J]. IEEE Transactions on Systems,Man and Cybernetics,1973,3(6):610-621.

[3] Swain MJ and Ballard DH. Color indexing[J].Int J Comput Vision, 1991,7(1):11-32.

[4] Ennesser F and Medioni G.Finding Waldo, or focus of attention using local color information[J].IEEE Trans Pattern Anal Mach Intell,1995,17(8):805-809.

[5] Agbinya JI and Rees D.Multi-object tracking in video[J].Real Time Imaging,1999,5(5):295-304.

[6] 张辰,赵红颖,钱旭.直方图反向投影多目标检测优化算法[J].计算机系统应用,2014,23(2):178-182+218.

[7] 章海兵,刘士荣,张波涛.H-S直方图反向投影结合特征点提取的双目视觉定位算法[J].控制理论与应用,2014,31(5):614-623.

[8] 刘瑞祯,于仕琪.OpenCV教程基础篇[M].北京:北京航空航天大学出版社,2007.

猜你喜欢

疵点像素点直方图
符合差分隐私的流数据统计直方图发布
基于Cascade RCNN 和二步聚类的织物疵点检测
基于总变差的织物疵点分割方法
喷丝板疵点检测系统设计
基于局部相似性的特征匹配筛选算法
基于FPGA的直方图均衡图像增强算法设计及实现
基于FPGA的图像疵点处理设计与实现
用直方图控制画面影调
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密