任维佳, 杜玉红, 左恒力, 袁汝旺
(1. 天津工业大学 机械工程学院, 天津 300387; 2. 天津工业大学 天津市现代机电装备技术重点实验室, 天津 300387)
棉花中的异性纤维是影响棉花质量及棉纺织品质量的主要因素之一[1],世界棉花贸易组织称其为纤维性外来杂质,常见的有人类头发、动物毛发、丝线、布块、丙纶丝、黄麻纤维、塑料绳、树皮、野草、羽毛等[2]。异性纤维来源广泛且种类繁多,若不及时剔除,则会造成纱线断裂或出现疵点的现象,降低纱线和纺织质量,影响企业效益[3]。如何高效、准确地检测剔除棉花中异性纤维已经成为当今纺织行业的重要研究课题。
目前,国内外主要采用图像处理的方法[4-6]实现棉花中异性纤维的检测和剔除,将CCD相机采集到的图像进行图像增强、边缘检测、图像分割等算法处理[7],找出异性纤维与棉纤维的差异,实现棉花中异性纤维的识别和剔除。本文主要针对国内外异性纤维图像处理算法中的边缘检测和图像分割进行总结,分析各边缘检测算子的优缺点,研究不同分割方法的分割效果,为棉花中异性纤维的在线检测及其系统提供技术理论基础。
异性纤维检测技术主要由图像采集系统、图像处理系统、控制单元以及异性纤维剔除系统组成。其检测原理是在棉花通道上配备工业级图像采集系统,利用CCD相机对输送设备上移动的棉花进行扫描,将采集到的图片信息送到计算机,反馈棉花中是否存在异性纤维及其位置等信息,利用工控机驱动对应位置电磁阀,控制喷嘴开通,实现棉花异性纤维的剔除。异性纤维图像处理检测方法示意图如图1所示。
图1 异性纤维检测方法示意图Fig.1 Diagram of foreign fiber detection method
由图1可知,在异性纤维图像处理过程中,欲取得优质的图像,除提升硬件设备性能以外,选择合适的图像色彩修正和图像处理方法至关重要。适合的图像彩色修正方法可极大限度地提高图像质量,而针对不同异性纤维的物理特性选择恰当的图像处理算法并进行优化,有利于提高异性纤维的检出率。算法是否恰当直接影响异性纤维检测结果的准确性与可靠性[8]。
图像的边缘是图像的基本特征,图像中具有不同灰度等级的2个区域边界分割位,其目的是标识图像中亮度差异性较大的像素点。异性纤维边缘检测是实现异性纤维图像分割、特征提取和图像分析的前提,是图像处理算法的重要组成部分。图像的边缘位于区域属性发生突变的地方,在图像中具有最大的不确定性,也是图像信息最集中处,所以总结异性纤维图像边缘检测的相关研究非常重要。
图像边缘检测方法有一阶微分算子Roberts、Prewitt、Sobel、Canny、Kirsch等和二阶微分算子Laplacian、LOG等,利用导数极值点或零点进行目标图像的边缘检测[9-10]。
Roberts算子是一种利用局部差分算子寻找异性纤维边缘的算法,Roberts算子为2×2算子模板。王飞等[11]为快速识别带有异性纤维原棉图像的边缘,利用Roberts算子直接通过局部差分法寻找图像边缘,较好地实现了对水平和垂直方向边缘的检测,但由于缺少对图像的平滑处理,Roberts算子对噪声敏感,因此,其适合噪声少且边缘明显的图像检测。Roberts算子是一种一阶微分算子,提出较早且算子较为简单,该算子对目标与背景差异性大,且噪声较少的图像处理效果较好,但边缘定位效果不理想。异性纤维大都比较细小,对图像细节要求比较高,Roberts算子大都用于检测噪点少,与棉花有鲜明对比的异性纤维。
Prewitt算子是将2×2模板扩大到3×3模板计算图像的差分算子,将方向差分运算与局部平均相结合,取最大值作为像素点的输出值,去掉图像的部分伪边缘,对噪声有抑制效果。
Lu等[12]通过Prewitt算子进行边缘检测获得纤维的形状特征,验证了数字分析方法对涤/棉混纺纤维测量的可行性,但需进行一系列灰度反演、中值滤波去噪和二值化,运算量较大。王冬等[13]利用Prewitt算子边缘检测法进行边缘检测,对12种典型白色异性纤维样本的正确识别率达到93.7%,为异性纤维分拣机的设计提供了新途径。Chen等[14]基于Prewitt算子提出了一种空间域图像和S信道增强的叠加图像检测算法,利用2种增强方法优势互补的特点,有效地分离目标和背景,实现棉花的相关检测。Prewitt算子的边缘检测结果在水平和垂直方向较明显,适用于噪声较多、灰度渐变的异性纤维图像。由于检测边缘较粗,Prewitt算子适合于检测异性纤维与棉花背景有较大差异的图像。
Sobel边缘检测算子是离散微分算子,通过计算出某2个方梯度值Gx和Gy,梯度越大越有可能是边缘。另外,Sobel算子在Prewitt算子基础上加以改进,有较好的平滑效果。Chen等[15]为去除棉纱异物纤维图像中的条纹,采用方向图和Sobel算子计算粗糙集的粗糙度,对异性纤维图像进行去噪,取得了较好的去噪效果。Wang等[16]基于Sobel算子提出用于检测棉绒中异性纤维的快速图像分割算法,对110幅含有伪异物的图像进行测试,其算法平均速度为每幅图像0.67 s。夏彬等[17]使用Sobel算子进行图像平滑处理时,虽然在一定程度上可去除噪声,但产生的边缘较粗。Sobel算子对灰度渐变和噪声较多的图像处理效果较好,但对边缘定位不是很准确,因此,在改进边缘定位的情况下,Sobel算子常用于异性纤维检测。
类似于Sobel算子,Kirsch算子也是利用图像中某点的梯度幅值作为像素的灰度值。Kirsch算子由8个卷积模板组成,方向依次以步长为45°为间隔(从 0°~315°),其中0°对应的是垂直边缘,如图2所示。数字0~7代表8个卷积模板。对每个像素点都用8个模板进行卷积,每个卷积值取绝对值,再利用max{temp0,temp1,temp2,temp3,temp4,temp5,temp6,temp7}求出最大卷积值,并以该值作为点的灰度值。Kirsch算子需要从8个方向进行卷积运算,并进行最值比较,运算量比较大。
图2 Kirsch算子卷积模板方向Fig.2 Kirsch operator convolution template direction
王小东等[10]利用现场可编程逻辑门阵列(FPGA) 器件的并行处理能力,优化Kirsch算子的运算过程,并采用分步比较的方式节省了运算量,提高了运算速度。Huang等[18]针对图像噪声、边缘不清晰等问题,提出了一种基于灰度关联度和Kirsch算子的边缘检测算法,更准确地检测出边缘信息,并具有一定的抗噪性。Kirsch算子使用8个核进行卷积运算,使输出最大的卷积核序号即是边缘方向的编码,该算子可适用于噪声多、边缘连续性较好的异性纤维图像检测。
Canny边缘检测算子是John F. Canny于1986年开发出来的多级边缘检测算法,是边缘检测的一种标准算法,目标是找到最优的图像边缘。
Chen等[19]为有效地将棉花中的异性纤维检测出来,开发了一种改进的Canny检测器来分割原棉中的丝状异物纤维,可检测出棉花中丙纶丝等白色透明异性纤维。向军等[20]为提取出高精度的印花图案边缘信息,利用Canny算子检测图案边缘,并比较了其他边缘检测算子分割印花织物图案的效果发现,Canny算子分割效果最好。Canny算子不易受噪声干扰,能够检测到真正的弱边缘。该算子有利于检测细小的异性纤维,较广泛用于异性纤维检测。
Laplacian算子是一种二阶微分算子,其物理意义可理解为梯度的散度,该算子随坐标轴的旋转其梯度结果保持不变,根据产生的陡峭交叉点来识别目标图像边缘。
王欣[21]使用Laplacian算子进行边缘增强,有助于减少一些线状的伪异性纤维(草叶等)分割后产生断裂的现象,提出Laplacian边缘锐化和改进中值滤波结合的图像增强算法。陈铭明[22]研究了基于一阶差分与二阶差分的Sobel算子与Laplacian算子对棉花异性纤维提取的效果发现,Laplacian算子并未扩大棉花与背景之间的边缘,且异性纤维更为突出。Zheng等[23]设计了一种基于拉普拉斯特征映射算法的迭代缺陷检测方法,其以碳纤维增强塑料(CFRP)为研究对象进行迭代分割,实现了图像无损伤自动识别。当关注边缘点的位置而忽略其周围实际灰度差时,一般选用Laplacian算子提取图像的边缘。
Laplacian算子对图像进行操作实现边缘检测时,对离散点和噪声比较敏感。LOG算子的原理是对图像进行高斯卷积滤波降噪处理,再采用Laplacian算子进行边缘检测,提高算子对噪声和离散点的鲁棒性,典型的为5×5模板。
王飞等[11]针对高效识别原棉图像与含杂分析的问题,利用LOG算子进行适用性分析,记录检测效果、检测耗时、检测概率3个方面的变化发现,当图像分辨率达到1 642像素× 1 800像素时耗时增幅达到1 s左右。李晓慧等[24]采用LOG算子对棉纤维图像进行分割,得到差值的标准差为1.173 787, 差值的整体离散性小,验证了LOG算子在棉纤维图像分割中的有效性。马永杰等[25]利用改进的LOG算子提取检测目标的轮廓边缘和前景目标边缘,有效地消除了图像阴影,提高了算法的鲁棒性。LOG算子综合考虑了边缘的检测以及噪声的抑制,对包含阴影部分的异性纤维图像处理效果较好。
边缘检测后的图像为二值图像,需对二值图像运用形态学操作来分割目标,所以可将边缘检测看作是图像分割的一个前提,但图像分割不一定非要用边缘检测。本文对所列各边缘检测方法的优缺点进行归纳总结如表1所示。
表1 各边缘检测算子的优缺点Tab.1 Advantages and disadvantages of edge detectionalgorithms
异性纤维图像分割是根据异性纤维图像的灰度、颜色、纹理和形状等特征,将图像划分为若干特定的差异性区域,要求同一区域内特征的相似性较高,不同区域间的差异性明显[26]。每种图像特征的提取方法都有多种,例如提取形状特征的一系列边缘检测方法和提取颜色特征的直方图法等。常见的有基于阈值、基于边缘和基于区域的分割方法。
阈值法是基于异性纤维图像的灰度特征来计算阈值,根据图像中像素灰度值与域值的差值大小将目标像素分到相应的类别中。选择合适的准则函数求解最佳灰度阈值是基于阈值分割检测方法的关键步骤。阈值的选取通常有经验阈值和自适应阈值。在实际应用中,经验阈值较为常用;自适应阈值在自动化过程中常用,自适应算法需要选择自适应阈值。
3.1.1 基于Otsu阈值分割的检测方法
Otsu方法是一种常用的全局自适应阈值处理方法,针对灰度图像进行运算,首先为图像选择1个初始阈值将图像中灰度等级分为2类,计算2类灰度值的类间方差,通过不断调整分割阈值使其类间方差达到最大,此时得到最佳全局分割阈值。
若直接使用Otsu方法,在棉花背景杂乱和光照不均的情况下,分割效果会受到影响。Zhang等[27]基于新型贝叶斯加权K-Means方法,在光亮度降低或棉花颜色变化的情况下依然能够准确识别棉花中的异性纤维。Peker等[28]采用混合高斯模型和基于像素概率分布的阈值转换模拟棉花颜色的分布,避免了棉层厚度和棉花颜色对异性纤维检测的影响。Guo等[29]对采集的彩色图像进行三通道分解,通过伽马平差函数对图像的非均匀光照进行校正,再采用Otsu方法对三通道图像做分割处理,并进行信息融合实现棉花中异性纤维的检测,但需要预先解决由于电压波动而造成的棉花照明强度不稳定问题。Wang等[30]分解出G通道图像将其分割成小块,分析直方图信息得到包含异性纤维的块,使用Otsu方法对每块进行分割,利用形态学运算消除小噪声并连接断开的部分,发现无论是块状异性纤维还是细长状异性纤维,都能被清晰地分割出来。Fang等[31]首先利用贝叶斯分类器检测潜在目标,然后利用Otsu方法识别区域,区域增强后选取得分最高的区域实现对棉花中透明薄膜的检测。
在Otsu的基础上,刘健庄等[32]在1993年提出了二维Otsu算法,其同时考虑像素的灰度值分布和邻域像素的平均灰度值分布,得到1个二维矢量的域值,并根据二维测度准则确定最佳域值,提升了算法的抗噪声能力,但该算法计算时间较长,不适合在线检测要求。图3示出Otsu与二维Otsu方法分割对比图。
图3 图像分割效果对比Fig.3 Image segmentation effect comparison. (a) Original image; (b) Grayscale image; (c) Otsu method image; (d) Two-dimensional Otsu method
王昊鹏等[33]对白色异性纤维和皮棉灰度直方图进行分析改进了二维Otsu算法,在计算目标和背景的概率和时,考虑了二维灰度直方图副对角线区域的概率和,缩小了二维Otsu算法阈值对的取值范围,检测效果与二维Otsu算法几乎相同,但运算时间大大减少,满足在线检测的精确性与实时性要求。
3.1.2 其他阈值分割检测方法
一些其他的阈值分割方法也有较好的检测效果。Sahdra等[34]通过将RGB图像转换为YDbDR颜色空间图像,识别RGB图像中的亮度和色相信息,并采用迭代阈值分割方法对亮度和色相图像进行二值化,实现图像亮度和色度信息的融合。Gulati等[35]将棉花中异性纤维的RGB图像转换成HIS、YDbDR、YCbCR等相应的颜色空间形式,根据图像的阈值进行分析和融合,并给出一个基于平均值、方差和时间等参数的效果。Kaur等[36]通过将RGB图像转换为YDbDR颜色空间图像,对图像阈值分析后使用主成分分析法进行图像融合,有利于检测棉花中的白色异性纤维。Kan等[37]提出一种基于背景估计阈值的图像分割方法来检测异性纤维及其数量,针对灰度值分布均匀的目标图像,域值法分割效果较好,但对目标与背景相对复杂的图像分割效果不佳,该方法未考虑目标的空间信息。王昊鹏等[38]将图像的像素点按灰度值分类,把所有相邻类间方差看做一个粒子种群,基于改进的混沌粒子群算法,对白色异性纤维的识别准确率达到98.6%。师红宇等[39]通过小波多层分解实现图像中不同频率信息成分的分离,采用最大类间方差法对多分辨率差分子图进行二值化以分割出异性纤维的信息,最后将分割后的子图进行信息融合,实现异性纤维的检测,如图4所示。
图4 文献[39]检测效果Fig.4 Reference [39] method detection effect. (a) Original image; (b) Approximate difference molecular map; (c) Vertical difference molecular map; (d) Level difference molecular map; (e) Approximate difference molecular map segmentation; (f) Vertical difference molecular map segmentation; (g) Level difference molecular map segmentation; (h) Fusion image
边缘像素是图像中灰度突变的一类像素,而边缘是相连边缘像素的集合,边缘两侧的背景灰度与边缘差异明显。基于边缘特征分割的检测方法首先检测边缘像素,再将边缘像素连接起来构成边界形成分割,从而实现棉花中异性纤维的检测。
Agrawal等[40]使用高度改进的Chan-vese算法对棉花图像进行分割,提取棉杆的轮廓特征并确定其位置,实现了棉花中棉杆的检测,若初始迭代轮廓定位出现误差,则最终检测结果无法保证。李国辉等[41]通过提取多个方向的特征向量融合成特征图进行二值分割,再应用形态特征分离目标与背景,该方法对棉花中的白色异性纤维分割效果较好。张馨等[42]通过改进数学形态学的边缘检测方法得到灰度梯度图,选取最佳分割阈值实现灰度图的分割,该方法可直接对高分辨率棉花异性纤维彩色图像进行分割,分割效果较好,且计算速度提高2倍。由于异性纤维在图像中的目标小,对细小异性纤维描述不足,基于边缘特征分割的检测方法需要使用高速、高分辨率相机采集的图像进行边缘分割处理,对于颜色和背景相近的异性纤维需结合特征图进行形态特征分割。
纹理是一种图像中同质现象的视觉特征,反映的是一个区域中像素灰度级的空间分布属性,体现了物体表面具有缓慢变化或周期性变化的表面结构组织排列属性。纹理特征的提取方法分为统计方法、模型法、信号处理法和结构方法等。统计方法中的灰度共生矩阵(GLCM)方法是分析图像纹理特征的重要方法,其通过获取角二阶矩、相关性、熵等纹理描述进行图像分析。
Wang等[43]利用灰度共生矩阵对白色异性纤维的纹理特征进行分析,采用熵阈值法对棉花中的白色异性纤维进行分割,同时对灰度级进行不等距分段压缩,在保证检测精度的同时缩短了计算时间。李丽[44]针对棉花中异性纤维检测识别不准确的问题,基于图像分割算法以及灰度共生矩阵等,提出了改进的二维Otsu算法和基于灰度共生矩阵的二维Otsu算法,实现了皮棉中异性纤维的检测,同时分别提高了异性纤维识别技术的实时性和精确度。刘加岭[45]通过改进二维Otsu算法,采用纹理特征图像并以纹理参数为阈值,识别阈值与棉花相近的异性纤维,实现棉花中异性纤维的检测。汪峰等[46]通过对棉亚麻纤维纹理特征进行预处理,提取灰度共生矩阵能量、惯性矩、相关性、熵等4个特征向量,利用形态特征和纹理特征相结合的方式进行识别,准确率达到94.4%,发现利用形态特征和纹理特征相结合的方式比使用单一方法的识别准确率高。灰度共生矩阵结合阈值法可实现棉花中白色异性纤维的分割,另外灰度共生矩阵的熵可用来有效判别皮棉中是否含有白色异性纤维。
研究表明,分割效果越好或特征差异越明显,检出率也越高。为提高图像分割效果,单一特征的提取由单一向着多算法融合的趋势发展。对异性纤维图像分割算子进行归纳:基于阈值图像分割包括全局阈值T=T[p(x,y)],局部阈值T=T[f(x,y),p(x,y)], 动态阈值T=T[x,y,f(x,y),p(x,y)],该方法计算简单、效率高且抗噪能力强,对目标和背景差异性显著的异性纤维图像处理效果较好,但域值选取是首要考虑的问题;基于边缘特征分割方法是最早的一类分割方法之一,基于边缘的分割依赖于由边缘检测算子找到的图像边缘,对边缘不连续的图像必须采用后续处理将边缘合并为边缘链,该方法的重点就是尽可能地获取边缘信息;基于纹理特征分割方法是将一幅纹理类别不同的图像分为几个区域,其中每一区域具有一致性或相似性,根据纹理特征的不同可以辨别不同物体目标。
随着异性纤维图像处理技术的不断发展,棉花中异性纤维的检出率和检测精度均有明显提升。本文对国内外棉花异性纤维边缘检测方法与图像分割方法进行分析,研究现状归纳如下。
1) 大多文献结论都是在实验条件下得出的,采集静止或低速状态下的棉花图像,进行特定地异性纤维图像检测。而在实际生产中棉花异性纤维的分布没有规律,且不同批次的棉花颜色存在差别。需要根据实践中具体异性纤维的种类、含量、物理特性等选择适合的检测算法和参数设置,并搭建合理检测平台以满足实际生产需要。
2) 边缘检测是数字图像处理中的重要内容之一,也是实现图像分割和特征提取的基础。Roberts算子是最古老的一种,也是最简单的一种,因为在部分功能上的限制,该算子的使用明显少于其他几种算子。Laplacian算子定位精度高,适合用于检测彩色和细小的异性纤维,而Roberts算子对目标与背景差异性大且噪声较少的异性纤维图像处理效果较好。其中LOG算子是对Laplacian算子的一种升级,经高斯处理降低了噪声对算子的影响,对包含阴影部分的异性纤维图像处理效果较好。Prewitt算子、Sobel算子都具有较好的平滑效果,对白色、近棉色和透明薄膜类异性纤维的检测效果较好。Canny算子不易受噪声干扰,能够检测到真正的弱边缘,对检测白色且边缘模糊的异性纤维效果较好。Kirsch算子虽然抑制噪声效果良好,但得到的异性纤维检测边缘较粗,在棉花与异性纤维有明显差异的情况下常用该算法。
3) 图像分割是图像分析的重要组成部分。基于阈值的分割方法计算简单、效率高,不考虑空间特征,对噪声比较敏感,其中Otsu阈值分割方法在棉花异性纤维图像处理上得到了广泛的应用,对彩色异性纤维分割效果较好,另外对隐藏的异性纤维的边缘也有较好的分割效果。基于边缘检测的分割方法是最早一类分割方法之一,该方法需要尽可能地获取图像的边缘信息,对边缘不连续的图像需采取边缘合并等处理,对边缘明显且连续的异性纤维图像分割效果较好。与异性纤维的形态特征不同,纹理特征反映的是一个区域中像素灰度级的空间分布,基于纹理特征分割是根据纹理特征的不同,辨别不同物体目标,对白色异性纤维有较好的分割效果,且形态特征和纹理特征相结合的方法可提高异性纤维识别的准确率。
4) 为提高棉花中异性纤维的检出率,文献中多采用边缘检测算子和分割算子相结合的方法,改进单一算子的缺陷,从图像细节信息、边缘与背景的模糊程度、边缘定位、多参数、高精度等方面提高异性纤维检测效果。
棉花异性纤维检测中将来可开展的研究工作有:1)提高检测算法的普适性,无论是单一边缘检测算法还是单一分割检测算法,均存在不足,尚未出现可检测出棉花中全部异性纤维的检测算法,开发普适性好的算法以降低成本和减少计算量,可从依据边缘检测算法进行多特征共同提取,满足不同异性纤维分割入手;2)提高检测精度,以图像边缘检测算法和图像分割算法为研究手段,从图像边缘定位、图像细节、背景信息以及抗噪能力等方面研究图像处理效果,同时要在保证精度的前提下提升检测速度;3)提高图像采集质量,高质量图像是获得良好异性纤维分割效果的前提,在满足计算量的要求下,应使用高速、高分辨率相机采集异性纤维图像;4)优化检测方法,深度学习网络模型和框架不断迭代更新,可通过大量异性纤维图像信息对检测模型进行大量训练和参数调优,以保证异性纤维检测精度。