本发明属于织物瑕疵检测,具体是涉及一种超轻量化布匹瑕疵检测算法。
背景技术:
1、织物瑕疵是指在织造过程中织物表面出现的瑕疵缺陷,这些瑕疵主要由设备故障、纱线问题、杂物夹入、不良加工、过度拉升等引起。传统的人工检测方法存在成本高、效率低等问题,而且人工检测方法受限于人员的主观因素,极易受疲劳、注意力不集中等因素影响而导致检测结果准确率降低,且在标准上很难达到统一,因此现有技术越来越倾向采用计算机技术自动检测织物表面的瑕疵。主要采取两种方式,一种是基于传统机器学习的目标检测算法,根据织物纹理、统计特征来进行布匹瑕疵检测。这些方法大多需要提前定义瑕疵特征,但由于织物瑕疵复杂多样,只是利用浅层特征提取的织物纹理分析的方法容易受外界光照不均匀或噪声的影响,导致瑕疵检测准确率低。同时,传统机器学习算法在海量数据集上的检测效果差,不适合在实际生产环境中推广应用。
2、另一种是基于深度学习的目标检测算法,虽然在某些方面表现较好,但同时有着一些缺陷。在基于unet算法的改进领域,无论是unet++、denseunet还是resunet,虽然通过融合不同模块使得三者分别在边缘细节、特征复用和深层网络的学习能力上各有所长,但无一例外的是带来了学习参数多、推理速度慢的问题。而在布匹瑕疵检测任务中,实时性是不可忽略的重要需求。模型的检测速度会随着模型的复杂程度变化,通常而言,越复杂的模型检测速度就越慢,但是检测的精度会越高。而高性能的计算对于硬件要求很高,这也就意味着企业的成本负担很重。当前环境下,算力资源处于供不应求的状态,模型的计算量越小,算力的负担就越轻,就越容易部署在嵌入式和移动端设备中。综上所述,开展超轻量化布匹瑕疵检测技术研究对于纺织企业有着重要的研究价值和意义。
3、cn115205274a的发明《一种基于轻量化级联网络的布匹瑕疵检测方法》告知:包括构造适用于布匹缺陷检测的yolov5s-gsbifpn轻量化检测模型。在主干网络特征提取阶段,设计了全新的双路注意力cspghostse结构,并通过堆叠多层cspghostse结构提取深层特征。在特征融合阶段使用了三层堆叠的加权双向金字塔bifpn结构,充分融合多尺度特征。其次针对检测缺陷特征不明显样本易出现误检的问题,提出了检测+分类的级联网络架构,对预测框进一步进行是否为瑕疵的二分类判断过滤误检。
技术实现思路
1、本发明要解决的技术问题是提供一种超轻量化布匹瑕疵检测算法,用以轻量化、高精度地对织物表面瑕疵进行检测。
2、为了解决上述技术问题,本发明提供一种超轻量化布匹瑕疵检测算法,过程包括采集带有瑕疵的布匹图片,然后在计算机中进行归一化处理后输入到ul-unet网络中,生成瑕疵预测掩膜,从而输出带有瑕疵位置和种类的织物瑕疵检测图片;
3、所述ul-unet网络包括均为六个block结构的编码器和解码器,编码器第一个block为卷积和最大池化组合,然后连续四个block为改进后的倒置残差模块和最大池化组合,最后一个block为改进后的倒置残差模块;解码器的第一个block为ghpa模块,然后依次是ghpa模块和双线性插值组合的两个block、卷积和双线性插值组合的两个block、卷积和双线性插值组合的一个block;编码器每个block下采样的输出和解码器前一个block的输出作为ppag模块的输入,ppag模块的输出再和解码器前一个block的输出逐元素相加后经过se模块作为下一层解码器block的输入;编码器最下层的block的输出经过非局部神经网络模块和se模块后作为解码器第一个block的输入。
4、作为本发明的一种超轻量化布匹瑕疵检测算法的改进:
5、所述归一化处理为:
6、
7、其中:xi为图片像素点的值,xi'为归一化以后的值,n为像素点总个数。
8、作为本发明的一种超轻量化布匹瑕疵检测算法的进一步改进:
9、所述改进后的倒置残差模块为:将倒置残差结构模块中的深度可分离卷积替换为ghpa模块。
10、作为本发明的一种超轻量化布匹瑕疵检测算法的进一步改进:
11、所述ppag模块包括二个并行的ag模块,将两个输入特征图同时送入两个ag模块中,再将两个ag的输出沿着通道维度进行拼接,再依次经过一个1*1的卷积和一个relu函数。
12、作为本发明的一种超轻量化布匹瑕疵检测算法的进一步改进:
13、所述ul-unet网络的训练过程为:
14、(1)采集带有瑕疵的布匹图片并标注瑕疵类型后作为标签图,然后经过预处理后分为训练集和测试集;
15、(2)将训练集中的布匹图片输入所述ul-unet网络生成分割掩膜,同时对于所述ul-unet网络中的ppag模块和解码器对应层的输出逐元素相加后的各层特征图均使用1*1卷积和双线性插值组合的模块进行预测,获得的六张掩膜与标签图进行损失函数的计算,并反向传播迭代优化模型参数,不断优化分割掩膜,训练模型得到更接近标签的权重;
16、(3)测试过程为将测试集中的布匹图片输入训练好的模型,生成分割掩膜,计算预测掩膜与标签图的交并比,采用准确率、漏检率作为评价指标,从而获得可在线使用的ul-unet网络。
17、作为本发明的一种超轻量化布匹瑕疵检测算法的进一步改进:
18、所述预处理包括归一化处理、随机水平翻转、随机垂直翻转和随机中心旋转。
19、作为本发明的一种超轻量化布匹瑕疵检测算法的进一步改进:
20、所述损失函数为focal loss和dice loss的组合损失函数:
21、loss=focalloss+diceloss (5)。
22、本发明的有益效果主要体现在:
23、本发明以远低于当前主流算法的计算量完成了布匹瑕疵检测任务,满足了布匹瑕疵检测所需的实时性的同时,显著降低了企业对于硬件配置的要求;本发明在降低模型复杂度的同时,保证了漏检率始终为0,确保了算法的可靠性;本发明克服了数据集不平衡的问题,提高了对于小目标瑕疵的检测效果,降低了误检率,解放了企业的人力资源。
1.一种超轻量化布匹瑕疵检测算法,其特征在于:过程包括采集带有瑕疵的布匹图片,然后在计算机中进行归一化处理后输入到ul-unet网络中,生成瑕疵预测掩膜,从而输出带有瑕疵位置和种类的织物瑕疵检测图片;
2.根据权利要求1所述的一种超轻量化布匹瑕疵检测算法,其特征在于:
3.根据权利要求2所述的一种超轻量化布匹瑕疵检测算法,其特征在于:
4.根据权利要求3所述的一种超轻量化布匹瑕疵检测算法,其特征在于:
5.根据权利要求4所述的一种超轻量化布匹瑕疵检测算法,其特征在于:
6.根据权利要求5所述的一种超轻量化布匹瑕疵检测算法,其特征在于:
7.根据权利要求6所述的一种超轻量化布匹瑕疵检测算法,其特征在于: