掌桥专利:专业的专利平台
掌桥专利
首页

一种基于深度学习的焊件表面二维码喷码恢复方法

文献发布时间:2024-04-18 19:58:30


一种基于深度学习的焊件表面二维码喷码恢复方法

技术领域

本发明涉及工业焊接图像处理技术领域,具体涉及一种基于深度学习的焊件表面二维码喷码恢复方法。

背景技术

二维码是一种利用特定几何图形按照一定分布规则排列的黑白相间图案,用于记录和传输数据信息。相比于传统的一维条形码,二维码具有许多优点,包括信息容量大、密度高、纠错能力强、安全性好和编码范围广等。同时,二维码还引入了校验纠错码,具备检测错误和恢复删除错误的功能。

二维码已在许多领域得到广泛应用。在商业领域中,它被用于扫码购物、促销活动、支付方式等。二维码可以提供便捷的购物体验和实时的交易信息。在医疗领域中,二维码可以用于医疗记录管理和药品追溯等。通过将二维码与患者的医疗信息和药品包装相关联,可以实现对患者的医疗信息以及药品生产流程的全程跟踪和管理。在工业领域中,二维码被应用于物流管理、生产流程追踪、设备维护等方面。通过将二维码标识与物品或设备相关联,可以实现自动化的数据收集和追踪,提高生产效率和管理水平。

在工业焊接过程中,焊件的标识对于质量追踪和溯源非常重要。目前,常用的标识方式之一是在焊件表面喷印或激光打标二维码,二维码包含生产编号、日期、产品名称、焊接工艺、焊接人员设备等信息。借助手持式条码读取器读取二维码信息,将其录入后台数据库中,后台数据库在上述信息的基础上,结合焊接生产过程中的参数信息,一方面用于焊接生产过程的监测管理和生产追溯,另一方面用于根据数据信息确定焊接方法设备等工艺。

然而,在实际生产中,由于环境光线、扫码器辅助光源造成入射光过强、光照不均等原因,可能会使二维码局部区域形成光斑、光晕,导致二维码识别度低无法正确解码的情况,这给后续的质量追踪和溯源带来了困难。为了解决这个问题,已经提出了一些基于图像处理的方法来恢复反光二维码。因此,传统的方法通常需要依赖人工特征提取和规则设计,无法适应复杂多变的实际场景,并且对图像质量要求较高。

发明内容

为解决现有技术的上述问题,本发明提供一种基于深度学习的焊件表面二维码喷码恢复方法。该方法通过利用深度学习算法对反光的二维码图像进行分析和处理,以实现扫码器对二维码的正确解码。。

具体的技术方案为:

基于深度学习的焊件表面二维码喷码恢复方法,所述方法包括:

步骤1数据准备:

收集一批焊件表面反光的二维码图像数据以及对应的清晰的二维码图像数据;

步骤2数据预处理:

通过多尺度的数据增强,扩充增加步骤1获得的原始数据集的数据量和多样性,能够适应不同的工业环境与场景;

步骤3划分数据集:

将步骤2预处理后的数据集划分为训练集、验证集和测试集;

步骤4训练集一次标注:

对训练集进行标注,标注出光斑、光晕的位置;

步骤5建立深度学习定位模型:

定位模型用于定位光斑、光晕区域;选用目标检测模型YOLOv8,使用步骤4中标注好光斑、光晕位置的训练集对所选模型进行训练,以学习光斑、光晕的特征和位置信息,训练结束后将YOLOv8训练好的best权重文件保存到本地,并把权值模型当作后续的预训练模型;

步骤6训练集二次标注:

对步骤5所定位的光斑、光晕区域再次进行标注,标注二维码数据信息;首先,提取光斑、光晕区域并以点为单位分割为小块,每个小块命名为“crop_x_y”的形式,其中x表示位于二维码中的行号,y表示位于二维码中的列号,同时,根据分割的小块定位到原清晰二维码相同区域获取小块颜色,从而将小块分别存放在“1”、“0”两个文件夹中,其中“1”中存放小块为白色,“0”中存放小块为黑色,两个文件夹中存放的小块对应的二维码光照强度应当相似;

步骤7建立深度学习恢复模型:

对步骤6中“1”、“0”两个文件夹中的图像数据建立深度学习恢复模型,恢复模型用于恢复二维码数据;选用MobileNet轻量级模型,训练恢复模型,提供仅包含光斑、光晕区域的黑白小块,训练结束后将训练结果返回原图像;

步骤8验证和准确性评估。

进一步的,所述方法中步骤1中图像从现场采集或者从现有图像来源获取,数据集具有足够多的样本,并且包含不同光照强度下的图像。

进一步的,所述方法中步骤2具体包括:

步骤2.1图像几何变换:

对图像进行缩放、裁剪、旋转操作;

步骤2.2图像二值化;

步骤2.3对比度增强:

对步骤2.2后的二值图像使用直方图均衡化、自适应直方图均衡化方法调整图像的对比度;

步骤2.4锐化

对步骤2.3后的增强图像使用锐化掩蔽方法来增强图像的边缘和细节;

步骤2.5去噪

使用中值滤波方法来去除噪声,将像素点周围窗口内的像素值进行排序,然后将中间值作为当前像素的值。

进一步的,所述方法中步骤2.2具体包括:

步骤2.2.1,使用OpenCV库中的cvtColor函数将步骤2.1后的彩色图像转换为灰度图像;

步骤2.2.2,选择一个适当的阈值来将灰度图像分割成目标物体和背景;

步骤2.2.3,使用opencv中的threshold函数将灰度图像转换为二值图像;

步骤2.2.4,将得到的二值图像保存到指定的目标位置等待进行后续处理和分析。

进一步的,所述方法中步骤3具体为:

70%的数据作为训练集,15%作为验证集,15%作为测试集。

进一步的,所述方法中步骤8具体包括:

步骤8.1模型评估指标:

选择准确率、召回率、精确率和F1分数评估指标来衡量模型的准确性和性能;

步骤8.2模型性能评估:

使用验证集对模型进行评估,计算模型在验证集上的指标数值;

步骤8.3错误分析:

对评估结果进行错误分析;

步骤8.4比较实验:

与其他定位模型进行比较实验,评估模型的相对性能;

步骤8.5超参数调优:

根据评估结果和错误分析,对模型的超参数进行调整,使用网格搜索、随机搜索方法来确定最佳超参数组合;

步骤8.6重复验证:

多次进行验证和评估,使用不同的验证集和随机初始化的模型。

进一步的,所述方法中二维码由libqrencode开源二维码生成库生成,采用点阵式图案的形式。

本发明的上述技术方案的有益效果如下:

本发明采用双模型恢复反光二维码,模型1选用目标检测模型YOLOv8,用于定位焊件表面二维码的光斑、光晕区域,模型2选用轻量级卷积神经网络模型MobileNet,用于恢复二维码光斑、光晕区域的数据信息。对于一定反光强度下的二维码,通过嵌入本文深度学习算法的扫描器进行解码时,无需进行调整光源、扫描角度、扫描距离等参数。

附图说明

图1为本发明的二维码恢复流程图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合具体实施例进行详细描述。

如图1所示,本发明中,通过利用深度学习算法对反光的二维码图像进行分析和处理,以实现扫码器对二维码的正确解码。

所述二维码由libqrencode开源二维码生成库生成,采用点阵式图案的形式。这种图案可以方便进行后续分析和处理,以提取二维码中所包含的信息。

所述方法包括:

步骤1数据准备

首先,需要收集一批焊件表面反光的二维码图像数据以及对应清晰的二维码图像数据。这些图像可以从现场采集或者从其他现有图像等来源获取。确保数据集具有足够多的样本,并且包含不同光照强度下的图像。图像的质量和清晰度对于后续的分析和处理非常重要。这些图像将作为训练数据用于深度学习模型的训练;

步骤2数据预处理

通过多尺度的数据增强,扩充增加步骤1获得的原始数据集的数据量和多样性,能够适应不同的工业环境与场景,包括:

步骤2.1图像几何变换

对图像进行缩放、裁剪、旋转等操作。确保数据集具有一致的尺寸和统一的格式;

步骤2.2图像二值化

步骤2.2.1,使用OpenCV库中的cvtColor函数将步骤2.1后的彩色图像转换为灰度图像。以此去除颜色信息,突出图像的亮度和对比度;

步骤2.2.2,选择一个适当的阈值来将灰度图像分割成目标物体和背景。可以手动选择阈值,或者使用自适应阈值等方法进行选择;

步骤2.2.3,使用opencv中的threshold函数将灰度图像转换为二值图像。如果手动选择阈值不够准确或者图像具有不均匀的照明条件,可以考虑使用OpenCV提供的adaptiveThreshold函数来实现自适应阈值化。自适应阈值将图像分成许多小区域,并根据每个区域的局部特性进行阈值选择;

步骤2.2.4,将得到的二值图像保存到指定的目标位置等待进行后续处理和分析;

步骤2.3对比度增强

对步骤2.2后的二值图像使用直方图均衡化、自适应直方图均衡化等方法调整图像的对比度,使得暗部和亮部之间的差异更加明显,达到增强图像的目的。当图像的全局对比度较低,且亮度分布不均匀的情况下,采用直方图均衡化通过对整个图像的像素值分布进行变换,将像素值映射到整个灰度级范围内,拉伸图像的像素值范围,使得暗部和亮部之间的差异更加明显,增强图像的视觉效果。当图像中存在局部对比度差异较大,如图像中有明暗交界处或者光照不均匀的情况下,采用自适应直方图均衡化通过将图像分成多个小区域,并对每个小区域内的像素进行直方图均衡化。每个小区域的均衡化操作是基于该区域内的像素值分布进行的,因此能够更好地保留图像的细节,并避免过度增强;

步骤2.4锐化

对步骤2.3后的增强图像使用Unsharp Masking(锐化掩蔽)方法来增强图像的边缘和细节。Unsharp Masking是一种常用的图像增强技术,它通过对图像进行高通滤波,强化图像的边缘特征,使图像看起来更加清晰。对于反光二维码的图片,该方法可以帮助凸显出二维码的边缘和细节部分,提高二维码的清晰度和识别率。相比于拉普拉斯算子锐化,Unsharp Masking在保留图像细节的同时,能够有效抑制噪声的产生,并且不容易引入过多的伪影。因此,Unsharp Masking方法在处理反光二维码图片时,往往能够取得较好的效果;

步骤2.5去噪

针对反光二维码的图片,可以使用中值滤波方法来去除噪声,使图像更加清晰。中值滤波是一种常用的非线性滤波方法,它通过将像素点周围窗口内的像素值进行排序,然后将中间值作为当前像素的值,从而达到减少噪声的效果。相较于均值滤波和高斯滤波,中值滤波在去除噪声的同时保留了图像的边缘和细节信息,尤其适用于椒盐噪声等随机噪声的去除。对于反光二维码的图片,由于可能存在光照引起的噪声或其他干扰,使用中值滤波可以有效地降低这些噪声对二维码的影响,从而提高二维码的识别率和可读性;

步骤3划分数据集

将步骤2预处理后的数据集划分为训练集、验证集和测试集。使用70%的数据作为训练集,15%作为验证集,15%作为测试集;

步骤4训练集一次标注

对训练集进行标注,标注出光斑、光晕的位置;

步骤5建立深度学习模型1(定位模型)

模型1用于定位光斑、光晕区域。选用目标检测模型YOLOv8,使用步骤4中标注好光斑、光晕位置的训练集对所选模型进行训练,以学习光斑、光晕的特征和位置信息,训练结束后将YOLOv8训练好的best权重文件保存到本地,并把权值模型当作后续的预训练模型;

步骤6训练集二次标注

对步骤5所定位的光斑、光晕区域再次进行标注,标注二维码数据信息。首先,提取光斑、光晕区域并以点为单位分割为小块,每个小块命名为“crop_x_y”的形式,其中x表示位于二维码中的行号,y表示位于二维码中的列号,如“crop_4_12”表示位于二维码中第四行第12列的黑白小块。同时,根据分割的小块定位到原清晰二维码相同区域获取小块颜色,从而将小块分别存放在“1”、“0”两个文件夹中,其中“1”中存放小块为白色,“0”中存放小块为黑色,需要注意的是两个文件夹中存放的小块对应的二维码光照强度应当相似;

步骤7建立深度学习模型2(恢复模型)

对步骤6中“1”、“0”两个文件夹中的图像数据建立深度学习模型2,模型2用于恢复二维码数据。选用MobileNet轻量级模型,MobileNet采用深度可分离卷积(depthwiseseparable convolution)来代替常规卷积,可以大幅度减小模型的参数量和计算复杂度,方便地集成到各种移动和嵌入式设备上,从而实现在资源受限的设备上高效地进行推理,在参数数量和计算复杂度较低的情况下,仍然可以达到与传统模型(如VGG、ResNet等)相媲美的精度表现。通过使用多层深度可分离卷积层,MobileNet可以提取更复杂的特征信息,从而实现更好的分类或检测效果。训练模型时,提供仅包含光斑、光晕区域的黑白小块,训练结束后将训练结果返回原图像;

步骤8验证和准确性评估

步骤8.1模型评估指标

选择准确率、召回率、精确率和F1分数等评估指标来衡量模型的准确性和性能;

步骤8.2模型性能评估

使用验证集对模型进行评估,计算模型在验证集上的指标数值。根据评估结果,可以进一步优化模型或者调整模型的参数;

步骤8.3错误分析

对评估结果进行错误分析,查看模型在哪些情况下容易出错,并做出相应的改进措施。例如,如果模型在某种光晕形状下定位效果较差,可以考虑增加这种形状的训练样本;

步骤8.4比较实验

可以与其他定位模型进行比较实验,评估模型的相对性能。这有助于确定模型的优势和不足之处,并为进一步改进提供参考;

步骤8.5超参数调优

根据评估结果和错误分析,可以对模型的超参数进行调整,进一步提升模型性能。使用网格搜索、随机搜索等方法来确定最佳超参数组合;

步骤8.6重复验证

为了确认模型的稳定性和可靠性,可以多次进行验证和评估,使用不同的验证集和随机初始化的模型。这样可以得到更加可靠的评估结果,并避免过拟合;

本发明开发出了一种基于深度学习的焊件表面二维码喷码恢复方法,可以有效地恢复焊件表面上反光的二维码,提高对焊件信息的识别和追踪能力。

以上是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

相关技术
  • 4130材料防喷器壳体零件对接焊的一种方法
  • 一种焊件表面处理方法
  • 一种应用阴阳二维码套印喷码方法的喷码装置及其喷码工艺
  • 一种阴阳二维码套印喷码方法、喷码装置及其喷码工艺
技术分类

06120116502717