一种布匹表面缺陷检测方法与流程

文档序号:32166188发布日期:2022-11-12 04:45阅读:61来源:国知局
一种布匹表面缺陷检测方法与流程

1.本发明涉及图像数据处理技术领域,具体涉及一种布匹表面缺陷检测方法。


背景技术:

2.我国是纺织品加工和出口大国,纺织品在生产和进入市场之前必须经过织物表面色差、疵点、有害物质等检测,其中面料的疵点检测是保障产品质量的重要手段之一。目前,国内大多数纺织企业仍然通过人工检视的方法在机械式验布机上发现并标记疵点。这种人工检测方式容易受到心理、体力、环境的影响。根据工厂日常统计,在1个小时内,人工视觉大约能检测 300-500米布匹,人的目视集中力最多维持 20-30分钟,超过这个时间,人的眼睛就会产生疲劳,就会出现漏验。所以,人工检视布匹疵点检测效率低,出现误检、漏检的概率较高。
3.为了实现上述目的,本领域技术人员通过采集织物表面图像进行缺陷检测,检测过程中大部分是直接对其阈值分割或根据经纬线的连续性进行处理,但是因为纤维丝非常的细,再进行缺陷检测时特别容易受到噪声的影响,导致检测出来的缺陷不准确。现有技术中常采用同一个滤波窗口对图像进行滤波处理,若噪声较小,选用的滤波窗口也小的话,会对图像造成原本纹理进行了平滑使得图像的细节变模糊,若噪声较大,选用的滤波窗口也大的话,会对图像去除噪声不彻底。


技术实现要素:

4.为了解决现有技术中的不足,本发明提供一种布匹表面缺陷检测方法,该方法通过获取不同区域的梯度变化度及不同区域的噪点的分布密度,获得每个区域自适应滤波窗口。根据每个区域自适应滤波窗口来达到去除图像噪点的目的,然后根据去噪图像进行缺陷检测,能够更加准确的检测出布匹缺陷。
5.本发明的目的是提供一种布匹表面缺陷检测方法,包括以下步骤:获取待检测布匹表面的灰度图;根据灰度图获取灰度级函数;根据灰度级函数获取每个像素点不同方向的二阶梯度;将每个像素点不同方向中最大的二阶梯度模值对应的二阶梯度作为每个像素点的最大二阶梯度;将灰度图划分为多个区域;根据每个区域中每个像素点的最大二阶梯度,以及每个像素点的梯度方向获取每个区域的梯度变化度;获取每个区域的灰度直方图,根据灰度直方图获取每个区域噪声像素点划分的灰度级阈值;根据每个灰度级阈值将对应的每个区域像素点进行标记,以此获取每个区域中的多个标记像素点;获取每个区域中任意两个标记像素点的欧式距离;根据任意两个标记像素点的欧式距离获取每个区域的平均欧式距离;
根据每个区域的梯度变化度和平均欧式距离获取每个区域的去噪权重;根据每个区域的去噪权重获取每个区域的滤波窗口尺寸;根据每个区域的滤波窗口尺寸对待检测布匹表面的灰度图中每个对应区域进行高斯滤波,获取滤波去噪后的图像;再根据滤波去噪后的图像进行阈值分割获得缺陷区域。
6.在一实施例中,每个像素点不同方向的二阶梯度是按照以下步骤获取:根据灰度级函数获取每个像素点不同方向的一阶梯度;根据每个像素点不同方向的一阶梯度在进行一次梯度运算获取每个像素点不同方向的二阶梯度。
7.在一实施例中,所述不同方向包括水平方向、竖直方向、45度方向和135度方向。
8.在一实施例中,每个区域的梯度变化度的计算公式如下:式中,表示第像素点的最大二阶梯度;表示第像素点的最大二阶梯度的模值;表示第像素点的梯度方向;表示初始方向,所述初始方向设置为水平方向;表示第个区域中像素点的数量;表示第个区域的梯度变化度。
9.在一实施例中,获取每个区域噪声像素点划分的灰度级阈值过程中,是将每个区域灰度直方图中最大波峰的左侧波谷处对应的灰度级作为灰度级阈值。
10.在一实施例中,每个区域的滤波窗口尺寸是按照以下步骤获取:根据每个区域的去噪权重获取所有区域中对应的最大去噪权重和最小去噪权重;根据每个区域的去噪权重,以及所有区域中对应的最大去噪权重和最小去噪权重,获取每个区域的滤波窗口尺寸。
11.本发明的有益效果是:本发明提供的一种布匹表面缺陷检测方法,该方法通过灰度级函数获取每个像素点多个不同方向的二阶梯度,可以更加精确地提取到图像的边缘和纹理特征;通过计算不同区域标记像素点的密度,来表示噪点对不同区域噪声的分布,进而可依据每个区域的噪点的分布选择出更好的滤波窗口;本发明结合不同区域的梯度变化度及不同区域的噪点的分布密度获取每个区域自适应滤波窗口,从而根据每个区域的滤波窗口尺寸对待检测布匹表面的灰度图中每个对应区域进行高斯滤波,实现了对图像中不同区域进行自适应去噪,避免原本的纹理进行了平滑使得图像的细节变模糊,也避免对图像去除噪声不彻底;进而达到去除图像噪点的目的;再根据去噪图像进行缺陷检测,能够更加准确的检测出布匹缺陷。
12.本发明通过计算每个像素点多方向的二阶梯度,然后根据最大梯度作为梯度特征值,使得提取出来的边缘和纹理方向更加的准确;然后计算不同区域的噪声的影响程度,能够准确获得噪声的分布,能够使得选取的滤波窗口对图像的去噪更彻底。
附图说明
13.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
14.图1为本发明的一种布匹表面缺陷检测方法的实施例总体步骤的流程示意图。
具体实施方式
15.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
16.本发明主要针对布匹进行缺陷检测时,因为纤维丝比较细小,会因为采集图像时产生的噪声影响缺陷检测,使得检测的结果不准确。本发明通过获取自适应滤波窗口对图像进行去噪处理,再进行缺陷检测。
17.本发明提供的一种布匹表面缺陷检测方法,参见图1所示,包括以下步骤:s1、获取待检测布匹表面的灰度图;需要说明的是,对布匹的断经断纬缺陷进行检测时,需要采集布匹表面的图像,因为需要对纹理特征和灰度级特征进行分析,所以需要清晰的平整的图像。在本实施例中,通过布设工业相机采集阻燃纤维布匹表面的rgb图像,对表面纹理的平整度进行处理,为了防止因为图像自身的因素影响对纹理的规整性的判断,并对获得的图像进行灰度化处理;即获取待检测布匹表面的灰度图。
18.对布匹的断经断纬缺陷进行检测时,布匹的经纬线的纹理灰度变化不明显,且经纬线比较细,会因为噪声而影响缺陷检测的准确性,因此,在本实施例中对图像进行去噪,具体如下:s2、根据灰度图获取灰度级函数;根据灰度级函数获取每个像素点不同方向的二阶梯度;将每个像素点不同方向中最大的二阶梯度模值对应的二阶梯度作为每个像素点的最大二阶梯度。
19.需要说明的是,由于图像采集设备在组装调试的过程中,有时难免受到一些电磁干扰,甚至对图像的感兴趣区域引起噪声污染,并因此在得到采集的图像后,图像质量往往会与预期的有差异,如出现形状失真、亮度低、图像含严重噪声等情况。这些图像失真和带噪的情况若不加以处理,往往会严重影响图像中缺陷的识别。另外,在灰度图像中,每一个像素点的灰度值大小的不同,对应亮暗程度也不同。从亮区域进入到暗区域,或者从暗区域进入到亮区域,都会出现一条明显的边缘,如果边缘两边的亮度差别较大,代表边缘处的灰度变换越大,那么这条边缘也会越清晰,所设计的去噪模型中,在将图像的噪点去除的同时常常会模糊边缘信息。因此如果能够有效地提取出图像的各种边缘,再结合边缘保留的去噪方法,就可以实现在去噪中保留图像的边缘和纹理信息。
20.使用sobel算子对图像的水平和竖直方向的梯度进行提取,用和表示横向和
纵向的梯度值,那么该像素点的梯度值为,梯度方向为,sobel算子只显示水平和竖直两个方向,对图像中倾斜的边缘信息,不能够充分的提取出来;因此,在本实施例中,通过计算出多个方向的梯度,使得提取出来的边缘和纹理方向更加准确。也就是在竖直方向与水平方向的基础上,添加计算对角方向的梯度,分别用水平、竖直、45度方向和135度方向与含有噪声的图像进行卷积,就得到了图像比较全面的边缘和纹理特征。具体每个像素点不同方向的二阶梯度是按照以下步骤获取:根据灰度级函数获取每个像素点不同方向的一阶梯度;根据每个像素点不同方向的一阶梯度在进行一次梯度运算获取每个像素点不同方向的二阶梯度。其中,不同方向包括水平方向、竖直方向、45度方向和135度方向。
21.需要说明的是,灰度级函数是根据灰度图中每个像素点的坐标作为函数的输入值,而将每个像素点的灰度值作为函数的输出值而获取的,其中灰度级函数输出值也可视为灰度级,因为将每个灰度值作为灰度级,从而获取灰度级函数,记为;和分别表示像素点的坐标值;在本实施例中,根据灰度级函数分别在不同方向进行一次梯度计算获取不同方向的一阶梯度;则在水平方向的一阶梯度记为,在竖直方向的一阶梯度记为,在45度方向的一阶梯度记为,在135度方向的一阶梯度记为;需要说明的是,根据一阶梯度计算的二阶梯度,二阶梯度对图像边缘和纹理区域有着更强的数值变化,而且灰度图像的边缘产生两次响应,两次变化的零交叉点就是图像边缘的中间位置,因此利用二阶梯度算子可以更加精确地提取到图像的边缘和纹理。
22.在根据水平方向、竖直方向、45度方向和135度方向的一阶梯度再进行一次梯度计算分别获取每个像素点对应的水平方向、竖直方向、45度方向和135度方向的二阶梯度;四个方向的二阶梯度可以提取到像素点周围四个方向上的梯度,根据所求的四个方向的二阶梯度中选取最大的一个二阶梯度模值来作为该像素点的二阶梯度特征;二阶梯度特征指的是像素点的最大二阶梯度的模值;也就是在从每个像素点对应的水平方向、竖直方向、45度方向和135度方向的二阶梯度中选择最大的二阶梯度模值对应二阶梯度作为每个像素点的最大二阶梯度;记为;为此,从多个方向的二阶梯度可以提取图像各种倾斜方向的不规则纹理,因此本实施例选择二阶梯度特征对图像进行去噪。
23.s3、将灰度图划分为多个区域;需要说明的是,根据s2获得每个像素点的不同方向的一阶梯度和二阶梯度,多方向的二阶梯度特征的叠加可以更全面地表现图像中的边缘和纹理信息,因此本实施例中提出利用图像二阶梯度特征作为约束条件提高图像的去噪效果。因为噪声与原本图像的纹理之间有一定的差别,而不同区域的噪声对图像质量的影响不同,噪声越大,影响越大,因此需要选用不同的高斯滤波器,对图像进行去噪。为此将灰度图划分为多个区域,再根据图像不同区域噪声的变化,获得图像的梯度变化,根据噪声的影响程度不同,构建大小不同的高斯滤波器,对图像进行去噪,使得图像的去噪效果最佳。
24.在本实施例中,假设原始图像的大小为,为了获得准确的特征分布,对图像进行分区,因为较小的图像块在进行计算时,会更加准确。分区的办法为等大分块,将图像分为个区域。每个区域的图像大小为;在本实施例中,根据经验取。
25.s4、根据每个区域中每个像素点的最大二阶梯度,以及每个像素点的梯度方向获取每个区域的梯度变化度;需要说明的是,根据图像获得像素点的二阶梯度特征值,二阶梯度的变化能够反映像素点的细节变化。在布匹的纹理图像中,图像其经纬线的变化是有规律的,两条经线或纬线之间会形成较为平坦的区域,且在经线或纬线上也会形成平坦区域,只有经纬线的边缘会有较大的梯度变化,因此在没有噪声的图像中,图像的梯度变化是均匀的,只有在缺陷区域才会有梯度的无规律的变化;而在有噪声的图像中,因为噪声的分布是没有规律的,因此图像的梯度变化是随机的,其随机性表现在聚集程度的随机性与梯度方向的随机性。
26.因此在本实施例中,根据图像中每个像素点的最大二阶梯度的变化计算获得像素点的梯度变化程度;具体每个区域的梯度变化度的计算公式如下:式中,表示第像素点的最大二阶梯度;表示第像素点的最大二阶梯度的模值;表示第像素点的梯度方向;表示初始方向,所述初始方向设置为水平方向;表示第个区域中像素点的数量;表示第个区域的梯度变化度。表示第像素点的梯度方向与初始方向差的绝对值,因为不同梯度的像素点的梯度方向是不一样的,因此梯度的改变量也是不一样的;表示第个区域内像素点的梯度方向变化量的和;表示第个区域内像素点的梯度方向变化量量的数值;表示第个区域内每个像素点的最大二阶梯度模值的加和;表示第个区域中平均梯度大小与平均梯度变化量的大小的乘积,用来表示第个区域的梯度变化程度。
27.s5、获取每个区域的平均欧式距离;具体如下:获取每个区域的灰度直方图,根据灰度直方图获取每个区域噪声像素点划分的灰度级阈值;根据每个灰度级阈值将对应的每个区域像素点进行标记,以此获取每个区域中的多个标记像素点;其中,获取每个区域噪声像素点划分的灰度级阈值过程中,是将每个区域灰度直方图中最大波峰的左侧波谷处对应的灰度级作为灰度级阈值;获取每个区域中任意两个标记像素点的欧式距离;根据任意两个标记像素点的欧
式距离获取每个区域的平均欧式距离;需要说明的是,灰度直方图统计了图像在某一灰度级上的像素点的分布频数,本实施例将根据灰度直方图同一灰度级下的像素点分布在图像中的任意区域,因为不同区域的噪声的分布是不同的,因此同一灰度级的像素点在各个区域的分布也是不一样的。
28.在实施例中,首先获取每个区域灰度直方图,因为同一种颜色的布匹表面的灰度值的变化较小,处于经纬线的像素点的灰度值较小,处于平坦区域的像素点的灰度值大,而噪声的灰度值是最小的,因此每个区域对应的直方图上至少会出现三个波峰,并且属于布匹表面的像素点占据主要波峰区域;噪声的波峰较小,且分布在直方图的最左侧。通过直方图获得最大波峰的左侧波谷处对应的灰度级作为每个区域噪声像素点划分的灰度级阈值,则将图像分割成两个部分,处于的左侧可能为噪声的像素点,处于右侧则为图像中的平坦区域,虽然直方图无法对应原始图像的位置信息,但是在已知原始图像及其直方图的情况下,能够在原始图像找到对应灰度值的像素点。
29.根据每个灰度级阈值对应在原始的灰度图中,找到许多的离散像素点,也会有大量聚集的像素点;因此,将每个灰度级阈值将对应的每个区域像素点在图像中进行标记,标记的像素点为梯度变化的像素点,以此获取每个区域中的多个标记像素点;也就是不同的区域中所标记的像素点的分布不同,有些区域中标记的像素点较为离散,而在有些区域中标记的像素点存在大量聚集;进而获取一副含有标记的像素点的图像。需要说明的是,因为含噪图像的梯度会比无噪图像的梯度大;而噪声越大,梯度变化越大。为此,通过计算每个区域中具有梯度变化的像素点的密度,来表示噪点在不同区域噪声的分布。具体通过计算每个区域中平均欧式距离,作为每个区域梯度变化的像素点的密度;首先计算任意两个标记像素点之间的欧式距离,表示同一类元素之间的密度,距离越近,则密度越大。则每个区域中任意两个标记像素点之间的欧式距离计算公式如下:式中,表示第对的两个像素点之间的欧式距离;表示第个像素点的横纵坐标;表示第个像素点的横纵坐标;每个区域中平均欧式距离的计算公式如下:式中,表示第个区域的平均欧式距离;表示第个区域中第对的两个像素点之间的欧式距离;表示第个区域中有对两个像素点间的欧式距离;表示第个区域中对两个像素点间的欧式距离的加和;表示两两像素点之间组合的所有可能,分母中的2表示两个元素之间重复计算,所以需要除2。通过计算第个区域中的两两像素点之间的欧式距离,然后对所有距离求均值,表示第个区域的像素点的密度;则通过计算不同
区域标记像素点的密度,来表示噪点对不同区域噪声的分布。
30.s6、根据每个区域的梯度变化度和平均欧式距离获取每个区域的去噪权重;在本实施例中,通过计算获取的每个区域的梯度变化度与每个区域用平均欧式距离表示的噪点的分布密度;因为噪点的分布密度越大,所需要的滤波窗口越大,才能更好地滤除噪声。为此,根据不同区域的噪点的分布密度及梯度变化度计算获得不同区域的去噪权重,然后根据去噪权重获取自适应滤波窗口的大小,得到更好地去噪效果。则每个区域的去噪权重计算公式如下:式中,表示第个区域的去噪权重;表示第个区域的梯度变化度;表示第个区域的平均欧式距离,也表示噪点的分布密度;表示指数函数,通过指数函数计算去噪权重的目的是为了扩大权重值,使得变化微小的权重也能区分开;表示局部像素点梯度变化程度与噪点的分布密度的去噪权重,其梯度变化程度越大,密度越大,则去噪权重越大,所需的滤波窗口越大。
31.s7、获得缺陷区域;具体如下:根据每个区域的去噪权重获取每个区域的滤波窗口尺寸;根据每个区域的滤波窗口尺寸对待检测布匹表面的灰度图中每个对应区域进行高斯滤波,获取滤波去噪后的图像;根据滤波去噪后的图像进行阈值分割获得缺陷区域。
32.其中,每个区域的滤波窗口尺寸是按照以下步骤获取:根据每个区域的去噪权重获取所有区域中对应的最大去噪权重和最小去噪权重;根据每个区域的去噪权重,以及所有区域中对应的最大去噪权重和最小去噪权重,获取每个区域的滤波窗口尺寸。具体每个区域的滤波窗口尺寸计算公式如下:式中,表示第个区域的滤波窗口尺寸;其中,滤波窗口的长和宽均为;表示所有区域中对应的最大去噪权重,表示所有区域中对应的最小去噪权重;表示第个区域的去噪权重;表示权重的归一化值;乘以10是为了根据权重获得滤波窗口的尺寸,表示取整函数。依此类比获取每个区域的滤波窗口尺寸;再每个区域的滤波窗口尺寸对待检测布匹表面的灰度图中每个对应区域进行高斯滤波,获取滤波去噪后的图像。
33.在本实施例中,对获取的滤波去噪后的图像进行阈值分割,获得缺陷区域,从而能够更加准确的检测出布匹缺陷。
34.综上,本发明提供的一种布匹表面缺陷检测方法,该方法通过灰度级函数获取每个像素点多个不同方向的二阶梯度,可以更加精确地提取到图像的边缘和纹理特征;通过
计算不同区域标记像素点的密度,来表示噪点对不同区域噪声的分布,进而可依据每个区域的噪点的分布选择出更好的滤波窗口;本发明结合不同区域的梯度变化度及不同区域的噪点的分布密度获取每个区域自适应滤波窗口,从而根据每个区域的滤波窗口尺寸对待检测布匹表面的灰度图中每个对应区域进行高斯滤波,实现了对图像中不同区域进行自适应去噪,避免原本的纹理进行了平滑使得图像的细节变模糊,也避免对图像去除噪声不彻底;进而达到去除图像噪点的目的;再根据去噪图像进行缺陷检测,能够更加准确的检测出布匹缺陷。
35.本发明通过计算每个像素点多方向的二阶梯度,然后根据最大梯度作为梯度特征值,使得提取出来的边缘和纹理方向更加的准确;然后计算不同区域的噪声的影响程度,能够准确获得噪声的分布,能够使得选取的滤波窗口对图像的去噪更彻底。
36.以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1