基于深度学习算法的织物疵点检测方法与流程

文档序号:12126326阅读:1679来源:国知局
基于深度学习算法的织物疵点检测方法与流程

本发明涉及织物疵点检测技术领域,特别是涉及一种基于深度学习算法的织物疵点检测方法。



背景技术:

我国是纺织大国,纺织产业在社会经济中占有重要地位,其中织物质量是关键,织物疵点的检测更是重中之重。目前,绝大多数生产线还在用人工进行疵点检测,人工检测的速度慢、效率低,很容易受检测人员的主观影响而漏检和错检。随着机器视觉的不断发展,图像处理技术和机器学习算法也逐渐应用到纺织行业中,这些技术的发展使得疵点检测实现自动化,从而达到快速和高效的目的。

如今,国内外学者发表了大量的相关文章和研究成果,不断涌现出新方法,稳步地提升了科研水平,但是较为成熟的自动检测系统却很少,其区分疵点能力有限,然而更为先进的自动检测系统毕竟是少数。一些外国公司研发的织物自动检测系统,主要是存在一些缺陷,如他们分辨织物疵点类型的能力有限,实际应用的高成本,局限性大等等。



技术实现要素:

本发明所要解决的技术问题是提供一种基于深度学习算法的织物疵点检测方法,能够自动识别疵点,并对识别出的疵点进行分类。

本发明解决其技术问题所采用的技术方案是:提供一种基于深度学习算法的织物疵点检测方法,包括以下步骤:

(1)采用图像预处理技术对织物原图进行噪声滤除和图像增强;

(2)运用Daubechies小波变换的方法对预处理后的织物图像进行分解重构,再对重构后的水平、垂直和对角线三个方向上的图像进行特征提取,构成图像的特征向量;

(3)运用多隐含层的BP神经网络模型对提取出的织物图像的特征向量进行分析和处理,实现对织物图像中的疵点进行识别和分类。

所述步骤(1)中还包含将彩色的织物原图进行灰度化处理和采用权值法将三维图像矩阵转换成二维矩阵的步骤。

所述步骤(1)采用使用高斯滤波的方式实现噪声滤除,采用压缩动态范围和直方图均衡的方式实现图像增强。

所述步骤(2)采用db8小波函数对织物图像进行Daubechies小波变换。

所述步骤(2)中特征提取时主要提取图像的能量、方差、极差和熵这四个参数。

所述步骤(3)具体包括:设定神经网络各初始参数,包括隐含层层数、各层神经元的个数及其权值w和偏置值b,构建基本的神经网络模型;设定构建的神经网络模型中的训练目标最小误差、学习速率和最大允许训练步数;将数据导入输入层,递归计算网络输出;计算输出误差,并修改权值;重复上述步骤,直至误差在预期值内或超出训练次数限制;最终得到适合织物图像的深度学习检测模型,并利用得到的检测模型对提取出的织物图像的特征向量进行分析和处理,实现对织物图像中的疵点进行识别和分类;其中,神经网络模型的训练样本为织物图像,网络输入为织物图像的特征向量,网络输出为织物图像样本是否存在疵点以及疵点类型的情况。

所述多隐含层的BP神经网络模型包含:输入层,10层隐含层和输出层;其中,对织物图像进行特征向量提取之后,再对其特征向量进行归一化处理,使其值处于相近的数量级;将归一化后的特征向量作为输入信号送入输入层中;在隐含层中,每一隐含层的节点个数根据公式y=2n+1来确定,y为每一隐含层的节点个数;n为输入层节点个数。

有益效果

由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:

本发明先通过采用图像预处理的技术实现噪声滤除和图像增强的目的,然后运用Daubechies小波变换的方法对织物图像进行分解重构,再对重构后的水平、垂直和对角线三个方向上的图像进行特征提取,构成图像的特征向量,最后运用深度学习网络模型对提取出的织物图像特征向量进行分析和处理,利用多隐含层的BP神经网络模型实现对织物图像中的疵点进行识别和分类。

附图说明

图1为本发明的实施例的流程框图;

图2为本发明实施例中织物疵点原图;

图3为本发明实施例中图像处理效果图;

图4为本发明实施例中小波变换重构图;

图5为本发明实施例中深度学习模型结构图;

图6为本发明实施例中深度学习模型输出图;

图7为使用单隐含层BP模型的输出图。

具体实施方式

下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

本发明的实施方式涉及一种基于深度学习算法的织物疵点检测方法,如图1所示,其主要包括图像预处理步骤、图像特征提取步骤和深度学习网络识别步骤。

图像预处理步骤,主要是将现场拍摄的织物图片(见图2)传入计算机中,首先对这些图片进行图像灰度化、图像滤波处理、压缩动态范围和直方图均衡化处理。图3是预处理后的效果图。

图像特征提取步骤,主要是先运用db8小波函数对织物图像进行尺度为2的小波分解,然后对分解后高频分量做小波重构,再从重构图中提取图像的特征向量。图4为小波变换重构图。

深度学习网络识别步骤,主要是采用多隐含层的BP神经网络作为深度学习网络模型。将得到的特征向量投入训练好的网络中,得到是否为完好织物(0,0,0)的结果。同时,对存在的疵点进行分类,主要分为经向疵点(0,0,1)、纬向疵点(0,1,0)、区域型疵点(1,0,0)和离散型疵点(1,0,1)。

具体检测方法如下:

图像预处理步骤,主要是将现场拍摄的1100张不同织物图片样本传入计算机中,首先对这些样本图片进行图像灰度化处理,采用权值法将三维图像矩阵转换成二维矩阵;其次进行图像滤波处理,运用高斯滤波器将图像中的噪声滤除;然后对图像进行压缩动态范围和直方图均衡化处理,采用对数变换的形式对图片进行增强。

其中,图像灰度化处理是将彩色图片转换成灰度图片处理,将图像矩阵从三维变为二维,大大减少了计算量,有利于提高检测速度。图像滤波处理使用高斯滤波能够在尽可能保留原图信息的情况下很好地滤除织物图片中的噪声,压缩动态范围和直方图均衡化可以对织物图像进行增强,这有利于疵点的识别和分类。

图像预处理步骤是在实时拍照中对图像进行包括图像灰度化、图像滤波、压缩动态范围和直方图均衡化等操作,其处理程序是固定的,这有利于提高运行速度。

图像特征提取步骤,主要是先运用db8小波函数对织物图像进行尺度为2的小波分解,然后对分解后的水平、垂直和对角线三个方向上的高频分量做小波重构,再从三个方向的重构图中分别提取能量、方差、熵和极差这四个参数作为图像的特征值。

本实施方式中采用db8小波函数对织物图像进行小波变换,能够从不同角度对图像进行分析和处理,有助于进行图像的特征提取。

深度学习网络识别步骤,主要是采用多隐含层的BP神经网络作为深度学习网络模型。其中训练样本为上述的织物图像,网络输入为织物图像的特征向量,网络输出为织物图像样本是否存在疵点以及疵点类型的情况,由于输入样本的数值大小不一,差距较大,需要进行输入数据归一化处理。其次构建网络并进行网络的初始化工作,设置隐含层个数设为10,每一隐含层的节点个数一般根据公式来确定,其中,n为输入层节点个数,并对学习速率、训练目标最小误差和最大允许训练步数进行初始化。然后开始深度学习网络的训练,将大量的输入输出训练样本投入网络y=2n+1中,进行网络中的权值训练,最终得到带有各个新权值的深度学习网络模型。最后进行网络测试,将测试结果与预期值进行对比,以便评估该网络模型的训练结果,并对网络参数进行修正。

最后,得到适合织物图片的深度学习检测模型。

本方法的核心算法为深度学习算法,在进行疵点检测时,使用深度学习网络模型,它能够描述复杂的非线性关系,这有利于提高疵点检测的准确性。

本实施方式的深度学习网络模块采用多隐含层的BP神经网络模型,一般的BP网络具有一层或两层隐含层,而本方法采用的多隐含层模型能够大大提高其所能描述系统的非线性复杂程度,从而更加准确地进行拟合。

如图4所示,所述多隐含层的BP神经网络模型包含:输入层,10层隐含层和输出层。

其中,对织物图像进行特征向量提取之后,再对其体征向量进行归一化处理,使其值处于相近的数量级,这样可以减小计算误差,避免输出饱和现象出现,增加网络的收敛速度,使程序的运行效果更好;将归一化后的特征向量作为输入信号送入输入层中;在隐含层中,隐含层的层数设为10,每一隐含层的节点个数一般根据公式来确定,其公式为:y=2n+1,其中,n为输入层节点个数。本实施方式中的输入层节点为12个,因此,根据公式y=2n+1计算得出隐含层节点的个数为25。

其中,多隐含层的BP神经网络算法的步骤如下:

步骤1、设定神经网络各初始参数,包括隐含层层数、各层神经元的个数及其权值w和偏置值b,构建基本的神经网络模型;

步骤2、设定模型中的训练目标最小误差、学习速率和最大允许训练步数;

步骤3、将数据导入输入层,递归计算网络输出;

步骤4、计算输出误差,并修改权值。

步骤5、重复步骤1~步骤4,直至误差在可接受范围内或超出训练次数限制。

多隐含层的BP神经网络模型可以有效地利用反向传播的性质修改权值,从而更好地进行拟合。如图6所示,采用多隐含层的BP神经网络模型的预测输出与期望输出十分接近。图7是使用单隐含层BP模型的输出图,通过图7发现,采用单隐含层BP神经网络模型的预测输出明显低于期望输出。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1