CN116645661B - 一种防重码检测方法及系统 - Google Patents
一种防重码检测方法及系统 Download PDFInfo
- Publication number
- CN116645661B CN116645661B CN202310933209.2A CN202310933209A CN116645661B CN 116645661 B CN116645661 B CN 116645661B CN 202310933209 A CN202310933209 A CN 202310933209A CN 116645661 B CN116645661 B CN 116645661B
- Authority
- CN
- China
- Prior art keywords
- image
- dimensional code
- gaussian noise
- code
- gray
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000002265 prevention Effects 0.000 title description 2
- 238000001514 detection method Methods 0.000 claims abstract description 82
- 239000013598 vector Substances 0.000 claims abstract description 74
- 239000011159 matrix material Substances 0.000 claims abstract description 42
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 34
- 238000000605 extraction Methods 0.000 claims abstract description 9
- 238000012545 processing Methods 0.000 claims description 28
- 238000004422 calculation algorithm Methods 0.000 claims description 17
- 238000012549 training Methods 0.000 claims description 17
- 230000009466 transformation Effects 0.000 claims description 7
- 238000012935 Averaging Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 6
- 238000011176 pooling Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 10
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000001795 light effect Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/146—Methods for optical code recognition the method including quality enhancement steps
- G06K7/1473—Methods for optical code recognition the method including quality enhancement steps error correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/28—Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请提供一种防重码检测方法及系统,通过对目标物件上的二维码进行图像提取得到二维码灰度图像,向二维码灰度图像中加入高斯噪声点得到高斯噪声图像集合并获取重码检测矩阵,采用卷积神经网络提取高斯噪声图像集合中各个高斯噪声图像的特征向量得到特征向量集合,将特征向量集合中特征向量转化为对应的哈希字符串,分别确定哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列,根据相似度序列和重码检测矩阵,确定目标物件上二维码的重复特征值,当重复特征值高于预设阈值时判定所述目标物件上的二维码与所述对比二维码出现重码,从而实现无需搬运目标物件即可进行防重码检测,避免二维码在使用和识别过程中产生冲突。
Description
技术领域
本申请涉及二维码检测技术领域,更具体的说,本申请涉及一种防重码检测方法及系统。
背景技术
二维码是用某种特定的几何图形按一定规律在平面的二维方向上分布的黑白相间的图形记录数据符号信息的方式,其在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理。
物件上的二维码通常由打标机进行自动打标产生,但在断电或者断网等异常情况下,有时会出现将最后一次任务的二维码重新打印出来,从而发生二维码重码的现象,重码是指生成的多个二维码具有相同的内容,导致二维码在使用和识别过程中产生冲突或混淆,甚至使得二维码无法识别。
发明内容
本申请提供一种防重码检测方法及系统,以解决现有技术中物件上的二维码出现重码现象,导致二维码在使用和识别过程中产生冲突的技术问题。
为解决上述技术问题,本申请采用如下技术方案:
第一方面,本申请提供一种防重码检测方法,包括如下步骤:
识别存在二维码的目标物件,并对所述目标物件上的二维码进行图像提取,得到二维码图像;
对所述二维码图像进行二值化处理,得到二维码灰度图像;
向所述二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取所述高斯噪声图像集合的重码检测矩阵;
采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量,得到各个高斯噪声图像的特征向量集合;
将所述特征向量集合中各个高斯噪声图像的特征向量转化为各个高斯噪声图像对应的哈希字符串,分别确定所述各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列;
根据所述相似度序列和所述重码检测矩阵,确定目标物件上二维码的重复特征值,判断所述重复特征值是否高于预设阈值,当所述重复特征值高于预设阈值时,目标物件上的二维码与所述对比二维码出现重码,输出报警信号。
在一些实施例中,对目标物件上的二维码进行图像提取,得到二维码图像包括如下步骤:
通过尺度不变特征转换图像检测算法检测目标物件上二维码的特征点,进而通过特征点匹配找到物体表面上的二维码图像区域,得到非矩形的二维码图像;
对所述非矩形的二维码图像进行透视变换,得到二维码图像。
在一些实施例中,对所述二维码图像进行二值化处理,得到二维码灰度图像具体可以包括如下步骤:
将所述二维码图像中的各个像素RGB值取平均或加权平均得到灰度化的二维码图像;
设置灰度阈值,将所述灰度化的二维码图像中,灰度值低于所述灰度阈值的像素点设为黑色像素点,灰度值高于所述灰度阈值的像素点设为白色像素点。
将所述灰度化的二维码图像中的黑色像素点灰度值置0,将所述灰度化的二维码图像中的白色像素点灰度值置120。
在一些实施例中,采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量包括如下步骤:
设置所述高斯噪声图像集合中各个高斯噪声图像的标签;
构建由卷积层、池化层和全连接层组成的卷积神经网络模型;
将所述高斯噪声图像集合划分为训练集和测试集,其中所述训练集用于训练卷积神经网络模型,所述测试集用于评估模型的性能;
将所述训练集的图像和图像对应的标签输入所述卷积神经网络模型,通过反向传播算法和随机梯度下降优化算法对所述卷积神经网络模型进行训练;
使用训练好的卷积神经网络模型,将所述高斯噪声图像集合中各个高斯噪声图像输入所述训练好的卷积神经网络模型中,在卷积神经网络模型的卷积层对所述高斯噪声图像集合的特征向量进行提取。
在一些实施例中,将所述特征向量集合中各个高斯噪声图像的特征向量集合转化为与所述高斯噪声图像数量相同的哈希字符串包括:
对所述特征向量集合中的特征向量进行归一化处理,得到归一化特征向量集合;
采用局部敏感哈希算法构建局部敏感哈希表,通过所述局部敏感哈希表映射所述特征向量集合中的各个特征向量到哈希空间,得到与所述高斯噪声图像数量相同的哈希字符串。
在一些实施例中,采用YOLO实时目标检测算法对场景图像进行目标物件检测,从而识别出存在二维码的目标物件。
在一些实施例中,所述加入高斯噪声点的选定区域是二维码灰度图像中的存储区。
第二方面,本申请提供一种防重码检测系统,所述防重码检测系统包括:
二维码图像提取模块,用于识别存在二维码的目标物件,并对所述目标物件上的二维码进行图像提取,得到二维码图像;
二维码图像二值化处理模块,用于对所述二维码图像进行二值化处理,得到二维码灰度图像;
重码检测矩阵确定模块,用于向所述二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取所述高斯噪声图像的重码检测矩阵;
特征向量集合确定模块,用于采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量,得到各个高斯噪声图像的特征向量集合;
相似度序列确定模块,用于将所述特征向量集合中各个高斯噪声图像的特征向量转化为各个高斯噪声图像对应的哈希字符串,分别确定所述各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列;
重码检测模块,用于根据所述相似度序列和所述重码检测矩阵,确定目标物件上二维码的重复特征值,判断所述重复特征值是否高于预设阈值,当所述重复特征值高于预设阈值时,判定所述目标物件上的二维码与所述对比二维码出现重码,输出报警信号。
第三方面,本申请提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有代码,所述处理器被配置为获取所述代码,并执行上述的防重码检测方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的防重码检测方法。
本申请公开的实施例提供的技术方案具有以下有益效果:
本申请提供的防重码检测方法及系统中,首先对目标物件上的二维码进行图像提取并进行二值化处理,得到二维码灰度图像,向二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取重码检测矩阵,采用卷积神经网络提取高斯噪声图像集合中各个高斯噪声图像的特征向量,得到特征向量集合,将特征向量集合中特征向量转化为对应的哈希字符串,分别计算各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列,根据相似度序列和重码检测矩阵,确定目标物件上二维码的重复特征值,判断重复特征值是否高于预设阈值,当重复特征值高于预设阈值时,判定目标物件上的二维码与对比二维码出现重码情况,输出报警信号,无需搬运目标物件即可进行二维码重码检测,降低了二维码的错误率,避免二维码在使用和识别过程中产生冲突。
附图说明
图1是根据本申请一些实施例所示的防重码检测方法的示例性流程图;
图2是根据本申请一些实施例所示的防重码检测系统的示例性硬件和/或软件的示意图;
图3是根据本申请一些实施例所示的应用防重码检测方法的计算机设备的结构示意图。
实施方式
本申请核心是首先对目标物件上的二维码进行图像提取并进行二值化处理,得到二维码灰度图像,向二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取重码检测矩阵,采用卷积神经网络提取高斯噪声图像集合中各个高斯噪声图像的特征向量,得到特征向量集合,将特征向量集合中特征向量转化为对应的哈希字符串,分别计算各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列,根据相似度序列和重码检测矩阵,确定目标物件上二维码的重复特征值,判断重复特征值是否高于预设阈值,当重复特征值高于预设阈值时,判定目标物件上的二维码与对比二维码出现重码情况,输出报警信号,无需搬运目标物件即可进行二维码重码检测,降低了二维码的错误率,避免二维码在使用和识别过程中产生冲突,改良了二维码用户的使用体验。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。参考图1,该图是根据本申请一些实施例所示的防重码检测方法的示例性流程图,该防重码检测方法100主要包括如下步骤:
在步骤S101,识别存在二维码的目标物件,并对所述目标物件上的二维码进行图像提取,得到二维码图像。
在一些实施例中,可以在较大范围内拍摄带有目标物件的场景图像,再采用基于深度学习的目标检测算法进行目标物件识别,从而在场景信息中识别出表面存在二维码的目标物件,进而对目标物件上的二维码图像进行提取,得到目标物件上的二维码图像。
具体实现时,也可以采用YOLO实时目标检测算法对场景图像进行目标物件检测,从而识别出存在二维码的目标物件,具体实现时,可以将输入图像划分为一个固定大小的网格,再对每个网格单元预测多个边界框和相应的类别概率,进而对边界框进行筛选,选择概率最高的边界框作为最终的目标检测结果,目标检测结果即包含目标物件的边界框,此外,在目标检测的过程中,还可以使用非极大值抑制来移除重叠较多的边界框,以减少冗余检测。
在一些实施例中,对目标物件上的二维码进行图像提取,得到二维码图像包括如下步骤:
首先,使用特征点检测算法来检测图像中的特征点,并通过特征点匹配找到物体表面上的二维码图像区域,其中,特征点匹配可以使用特征描述子来计算特征点之间的相似性,具体实现时,所述特征点检测算法可以采用SIFT图像检测算法,此时用于表示特征点之间的相似性的特征描述子为SIFT描述子。
在所述物件图像中切割所述二维码图像区域,由于相机角度和物件畸变,此时得到的部分图像为非矩形的二维码图像,还需要对所述非矩形的二维码图像进行透视变换,具体实现时,可以通过图像处理中常用的OpenCV等图像处理库,通过输入的二维码的特征点坐标和目标区域的形状,计算出透视变换矩阵,该透视变换矩阵描述了如何将特征点区域变换为目标区域,将该透视变换矩阵应用到原始的特征点区域图像上,即可得到经过透视变换后的图像,这时二维码图像的形状将被纠正,得到完整的二维码图像。
在步骤S102,对所述二维码图像进行二值化处理,得到二维码灰度图像。
在一些实施例中,对所述二维码图像进行二值化处理,得到二维码灰度图像具体可以包括如下步骤:
将所述二维码图像中的各个像素RGB值取平均或加权平均得到灰度化的二维码图像;
设置灰度阈值,将所述灰度化的二维码图像中,灰度值低于所述灰度阈值的像素点设为黑色像素点,灰度值高于所述灰度阈值的像素点设为白色像素点;
将所述灰度化的二维码图像中的黑色像素点灰度值置0,将所述灰度化的二维码图像中的白色像素点灰度值置120。
需要说明的,对所述二维码图像进行二值化处理,是为了获得更加准确的二维码图像,避免部分彩色二维码以及拍摄得到的二维码图像中的光影效果对后续的重码检测产生干扰。
在步骤S103,向所述二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取所述高斯噪声图像集合的重码检测矩阵。
在一些实施例中,所述加入高斯噪声点的选定区域可以是二维码灰度图像中的存储区,需要说明的,二维码根据其功能不同将二维码图像划分为三个区域,分别为定位区、功能区以及存储区,其中定位区主要用于二维码识别时的图像定位,格式区用于存储二维码的版本以及格式信息,存储区用于存储二维码内含有的内容数据,因此定位区和格式区中的二维码图案存在较大重复,无需加入高斯噪声点用于增强图像区分。
此外,需要说明的,高斯噪声点的幅值决定了噪声的强度,即引入图像的随机扰动程度,通过增加高斯噪声的幅值,会使两张图片中的图像特征更加明显和突出,这样,两张图片在视觉上的差异也会更加显著,当提取两张图片的哈希字符串进行图像识别时,由于高斯噪声的随机性,每个噪声点的位置和幅值都是不同的,因此会在哈希字符串中引入更多的差异性,使得后续的防重码步骤能够更好地区分两张二维码图片。
需要说明的,所述高斯噪声点为在二维方向上均服从正态概率密度分布的噪声点,具体实现时,可以通过计算机产生X、Y方向上的正态分布序列,将所述X、Y方向上的正态分布序列分别作为高斯噪声点在所述二维码灰度图像中X、Y方向上的坐标,根据所述高斯噪声点的坐标向所述二维码灰度图像中加入相同灰度的高斯噪声点,当所述高斯噪声点与二维码的像素点重合时,二者灰度叠加,具体实现时,也可以通过修改二维码灰度图像中对应点的灰度值或在原有的二维码灰度图像上叠加噪声图像来实现高斯噪声点的添加。
在一些实施例中,所述高斯噪声点的幅值为单个所述高斯噪声点的灰度值,具体实现时,可以取所述二维码灰度图像所有像素点的最大灰度值与灰度值上限的差值作为所述高斯噪声点的最大幅值,在零到该最大幅值的区间内根据需要的高斯噪声图像的数量取均匀分布,得到多个高斯噪声点的幅值,由所述多个高斯噪声幅值根据数值大小排列,得到重码检测矩阵,例如,在一些实施例中,当所述二维码灰度图像中所有像素点的最大灰度值为120,需要的高斯噪声图像为10张,一般的灰度图像中灰度值范围为[0,255],此时根据零到所述二维码灰度图像中所有像素点的最大灰度值与灰度值范围上限的差值得到区间[0,135],在该区间内取均匀分布,得到多个高斯噪声点的幅值,将所述多个高斯噪声幅值根据数值大小排列,得到重码检测矩阵[0,15,30,45,60,75,90,105,120,135],该重码检测矩阵中存在的元素即为加入的高斯噪声点的幅值,其中,所述重码检测矩阵中存在的元素与所述高斯噪声图像集合中的高斯噪声图像存在一一对应关系,每一张高斯噪声图像在所述重码检测矩阵中均能找到其对应的高斯噪声幅值,例如,通过向所述二维码灰度图像中加入幅值为15的高斯噪声点,得到高斯噪声图像中与所述重码检测矩阵中值为15的元素相对应的高斯噪声图像,进而根据所述重码检测矩阵向所述二维码灰度图像中加入其他幅值的高斯噪声点,得到由高斯噪声图像组成的高斯噪声图像集合,在一些实施例中,所述高斯噪声图像结合中高斯噪声图像的顺序对应所述重码检测矩阵中元素顺序。
在步骤S104,采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量,得到各个高斯噪声图像的特征向量集合。
需要说明的,所述特征向量为图像处理中常用的从图像中提取的具有代表性的数值表示,可以捕捉到图像的结构、纹理、颜色等特征信息,在一些实施例中,采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量的过程中,卷积神经网络是一种包括卷积层和池化层等特殊结构的深度神经网络,每个网络层由若干神经元组成,具有宽度、高度和深度三维特征,可在数据训练的过程中不断学习权重和偏置常量等信息。与常用的全连接网络不同,卷积神经网络的进步之处在于:减少了层与层之间的连接方式,不再是上下两层每个神经元之间彼此相连,而是利用卷积的方式实现分区域连接,使用不同的区域大小即感受也能实现不同的识别效果,并节省计算量和参数量,下面给出一个采用卷积神经网络神经网络对所述高斯噪声图像集合进行特征向量提取的优选实施例,具体包括如下步骤:
设置所述高斯噪声图像集合中各个高斯噪声图像的标签;
构建特征提取由卷积层、池化层和全连接层组成的卷积神经网络模型;
将所述高斯噪声图像集合划分为训练集和测试集。训练集用于训练卷积神经网络模型,测试集用于评估模型的性能;
使用训练集的图像和图像对应标签,通过反向传播算法和随机梯度下降优化方法训练卷积神经网络模型,训练过程中,模型将学习识别图像中的特征和区分不同类别;
最后使用训练好的卷积神经网络模型,将带有高斯噪声点的二维码图像输入模型中,可以在卷积神经网络模型的卷积层对所述高斯噪声图像集合的特征向量进行提取,这里不做限定。
在步骤S105,将所述特征向量集合中各个高斯噪声图像的特征向量转化为各个高斯噪声图像对应的哈希字符串,分别确定所述各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列。
在一些实施例中,将所述特征向量集合中各个高斯噪声图像的特征向量集合转化为与所述高斯噪声图像数量相同的哈希字符串包括:
对所述特征向量集合中的特征向量进行归一化处理,得到归一化特征向量集合,需要说明的,对提取的特征向量进行归一化处理可以消除不同图像之间的尺度和范围差异,具体实现时,也可以通过对所述特征向量进行标准化处理得到归一化特征向量。
根据局部敏感哈希(Locality Sensitive Hashing,LSH)算法的原理,构建LSH哈希表来映射所述特征向量集合中的各个特征向量到哈希空间,得到所述高斯噪声图像数量相同的哈希字符串,其中,LSH哈希表由多个哈希函数组成,每个哈希函数将特征向量映射为一个二进制哈希码,对所述特征向量使用LSH哈希表进行哈希编码,生成对应的哈希字符串,即,通过对所述特征向量集合中的单个特征向量使用一个哈希函数进行映射,得到对应二进制的哈希字符串。
在一些实施例中,所述相似度序列包含所述与高斯噪声图像数量相同的哈希字符串分别与对比二维码图像的哈希字符串的相似度,所述对比二维码为需要进行重码检测的二维码,具体实现时,可以提前识别对比二维码的哈希字符串存储在计算机中,用于与所述高斯噪声图像的哈希字符串进行相似度比对。
需要说明,用于对比的哈希字符串位数相同,即所有哈希字符串具有相同的字符串长度,所述高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度可以通过两个哈希字符串间的欧式距离、汉明距离与均方误差的乘积确定,具体的确定过程也可以通过下式表示,即:
其中,为所述高斯噪声图像集合中第/>张高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,/>为第/>张高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的汉明距离,/>为哈希字符串长度,/>为第/>张高斯噪声图像对应的哈希字符串中的第/>个字符,/>为对比二维码图像的哈希字符串的第/>个字符。
根据上式可以确定各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,进而将各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度组成序列,该集合即为所述相似度序列。
在步骤S106,根据所述相似度序列和所述重码检测矩阵,确定目标物件上二维码的重复特征值,判断所述重复特征值是否高于预设阈值,当所述重复特征值高于预设阈值时,目标物件上的二维码与所述对比二维码出现重码情况,输出报警信号。
需要说明的,所述对比二维码为需要与目标物件上的二维码进行重码检测的二维码,所述重复特征值为目标物件上的二维码与对比二维码的重复率表征,当所述重复特征值高于依据经验标定的预设阈值时,说明目标物件上的二维码与对比二维码之间的重复率过高,此时可以判断二维码出现重码,进而可以对所述选定物件进行后续处理,例如,重新生成二维码,并对选定物件进行二维码烧录。
在一些实施例中,所述相似度序列中的相似度与所述重码检测矩阵具有一一对应的相似关系,例如,所述相似度序列中高斯噪声图像集合中第C张高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,与所述重码检测矩阵中的第C个元素对应,因此可以根据所述重码检测矩阵对所述相似度序列中的相似度做指数加权融合后得到最终的重复特征值,进而根据所述重复特征值判断物件上的二维码是否与对比二维码出现重码情况。
具体实现时,所述重复特征值还可以根据下式确定,即:
其中,为重复特征值,/>为所述相似度序列的方差,/>为所述高斯噪声图像集合中第/>张高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,/>为所述重码检测矩阵中的第/>个元素,/>为所述二维码灰度图像中所有像素点的最大灰度值,/>为所述相似度序列中的相似度个数,/>为以自然对数为底的指数函数。
另外,本申请的另一方面,在一些实施例中,本申请提供一种防重码检测系统,参考图2,该图是根据本申请一些实施例所示的防重码检测系统的示例性硬件和/或软件的示意图,该防重码检测系统200包括:二维码图像提取模块201、二维码图像二值化处理模块202、重码检测矩阵确定模块203、特征向量集合确定模块204、相似度序列确定模块205以及重码检测模块206,分别说明如下:
二维码图像提取模块201,本申请中二维码图像提取模块201主要用于识别存在二维码的目标物件,并对所述目标物件上的二维码进行图像提取,得到二维码图像;
二维码图像二值化处理模块202,本申请中二维码图像二值化处理模块202主要用于对所述二维码图像进行二值化处理,得到二维码灰度图像;
重码检测矩阵确定模块203,本申请中重码检测矩阵确定模块203主要用于向所述二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取所述高斯噪声图像的重码检测矩阵;
特征向量集合确定模块204,本申请中特征向量集合确定模块204主要用于采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量,得到各个高斯噪声图像的特征向量集合;
相似度序列确定模块205,本申请中相似度序列确定模块205主要用于将所述特征向量集合中各个高斯噪声图像的特征向量转化为各个高斯噪声图像对应的哈希字符串,分别确定所述各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列;
重码检测模块206,本申请中重码检测模块206主要用于根据所述相似度序列和所述重码检测矩阵,确定目标物件上二维码的重复特征值,判断所述重复特征值是否高于预设阈值,当所述重复特征值高于预设阈值时,目标物件上的二维码与所述对比二维码出现重码情况,输出报警信号。
另外,本申请还提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有代码,所述处理器被配置为获取所述代码,并执行上述的防重码检测方法。
在一些实施例中,参考图3,该图是根据本申请一些实施例所示的应用防重码检测方法的计算机设备的结构示意图。上述实施例中的防重码检测方法可以通过图3所示的计算机设备来实现,该计算机设备包括至少一个处理器301、通信总线302、存储器303以及至少一个通信接口304。
处理器301可以是一个通用中央处理器(central processing unit,CPU)、特定应用集成电路(application-specific integrated circuit,ASIC)或一个或多个用于控制本申请中的防重码检测方法的执行。
通信总线302可包括一通路,在上述组件之间传送信息。
存储器303可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only Memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘或者其它磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器303可以是独立存在,通过通信总线302与处理器301相连接。存储器303也可以和处理器301集成在一起。
其中,存储器303用于存储执行本申请方案的程序代码,并由处理器301来控制执行。处理器301用于执行存储器303中存储的程序代码。程序代码中可以包括一个或多个软件模块。上述实施例中相似度序列的确定可以通过处理器301以及存储器303中的程序代码中的一个或多个软件模块实现。
通信接口304,使用任何收发器一类的装置,用于与其它设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。
在具体实现中,作为一种实施例,计算机设备可以包括多个处理器,这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
上述的计算机设备可以是一个通用计算机设备或者是一个专用计算机设备。在具体实现中,计算机设备可以是台式机、便携式电脑、网络服务器、掌上电脑(personaldigital assistant,PDA)、移动手机、平板电脑、无线终端设备、通信设备或者嵌入式设备。本申请实施例不限定计算机设备的类型。
另外,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的防重码检测方法。
综上,本申请实施例公开的一种防重码检测方法及系统中,首先对目标物件上的二维码进行图像提取并进行二值化处理,得到二维码灰度图像,向二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取重码检测矩阵,采用卷积神经网络提取高斯噪声图像集合中各个高斯噪声图像的特征向量,得到特征向量集合,将特征向量集合中特征向量转化为对应的哈希字符串,分别计算各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列,根据相似度序列和重码检测矩阵,确定目标物件上二维码的重复特征值,判断重复特征值是否高于预设阈值,当重复特征值高于预设阈值时,判定目标物件上的二维码与对比二维码出现重码情况,输出报警信号,无需搬运目标物件即可进行二维码重码检测,降低了二维码的错误率,避免二维码在使用和识别过程中产生冲突,改良了二维码用户的使用体验。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种防重码检测方法,其特征在于,包括如下步骤:
识别存在二维码的目标物件,并对所述目标物件上的二维码进行图像提取,得到二维码图像;
对所述二维码图像进行二值化处理,得到二维码灰度图像;
向所述二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取所述高斯噪声图像集合的重码检测矩阵;
采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量,得到各个高斯噪声图像的特征向量集合;
将所述特征向量集合中各个高斯噪声图像的特征向量转化为各个高斯噪声图像对应的哈希字符串,分别确定所述各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列;
根据所述相似度序列和所述重码检测矩阵,确定目标物件上二维码的重复特征值,判断所述重复特征值是否高于预设阈值,当所述重复特征值高于预设阈值时,判定所述目标物件上的二维码与所述对比二维码出现重码,输出报警信号;
其中,所述重码检测矩阵为所述高斯噪声图像集合中各个高斯噪声图像对应的高斯噪声幅值组成的集合,获取所述重码检测矩阵具体为:将所述二维码灰度图像所有像素点的最大灰度值与灰度值上限的差值作为所述高斯噪声点的最大幅值,在零到该最大幅值的区间内根据高斯噪声图像的数量取均匀分布,得到多个高斯噪声点的幅值,由多个高斯噪声幅值根据数值大小排列,得到重码检测矩阵。
2.如权利要求1所述的方法,其特征在于,对目标物件上的二维码进行图像提取,得到二维码图像具体包括:
通过尺度不变特征转换图像检测算法检测目标物件上二维码的特征点,进而通过特征点匹配找到物体表面上的二维码图像区域,得到非矩形的二维码图像;
对所述非矩形的二维码图像进行透视变换,得到二维码图像。
3.如权利要求1所述的方法,其特征在于,对所述二维码图像进行二值化处理,得到二维码灰度图像具体包括:
将所述二维码图像中的各个像素RGB值取平均或加权平均得到灰度化的二维码图像;
设置灰度阈值,将所述灰度化的二维码图像中,灰度值低于所述灰度阈值的像素点设为黑色像素点,灰度值高于所述灰度阈值的像素点设为白色像素点;
将所述灰度化的二维码图像中的黑色像素点灰度值置0,将所述灰度化的二维码图像中的白色像素点灰度值置120。
4.如权利要求1所述的方法,其特征在于,采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量具体包括:
设置所述高斯噪声图像集合中各个高斯噪声图像的标签;
构建由卷积层、池化层和全连接层组成的卷积神经网络模型;
将所述高斯噪声图像集合分为训练集和测试集,其中所述训练集用于训练卷积神经网络模型,所述测试集用于评估模型的性能;
将所述训练集的图像和图像对应的标签输入所述卷积神经网络模型,通过反向传播算法和随机梯度下降优化算法对所述卷积神经网络模型进行训练;
使用训练好的卷积神经网络模型,将所述高斯噪声图像集合中各个高斯噪声图像输入所述训练好的卷积神经网络模型中,在卷积神经网络模型的卷积层对所述高斯噪声图像集合的特征向量进行提取。
5.如权利要求1所述的方法,其特征在于,将所述特征向量集合中各个高斯噪声图像的特征向量集合转化为与所述高斯噪声图像数量相同的哈希字符串具体包括:
对所述特征向量集合中的特征向量进行归一化处理,得到归一化特征向量集合;
采用局部敏感哈希算法构建局部敏感哈希表,通过所述局部敏感哈希表映射所述特征向量集合中的各个特征向量到哈希空间,得到与所述高斯噪声图像数量相同的哈希字符串。
6.如权利要求1所述的方法,其特征在于,采用YOLO实时目标检测算法对场景图像进行目标物件检测,从而识别出存在二维码的目标物件。
7.如权利要求1所述的方法,其特征在于,所述选定区域是二维码灰度图像中的存储区。
8.一种防重码检测系统,其特征在于,包括:
二维码图像提取模块,用于识别存在二维码的目标物件,并对所述目标物件上的二维码进行图像提取,得到二维码图像;
二维码图像二值化处理模块,用于对所述二维码图像进行二值化处理,得到二维码灰度图像;
重码检测矩阵确定模块,用于向所述二维码灰度图像中选定区域加入不同幅值的高斯噪声点,得到高斯噪声图像集合并获取所述高斯噪声图像的重码检测矩阵;
特征向量集合确定模块,用于采用卷积神经网络提取所述高斯噪声图像集合中各个高斯噪声图像的特征向量,得到各个高斯噪声图像的特征向量集合;
相似度序列确定模块,用于将所述特征向量集合中各个高斯噪声图像的特征向量转化为各个高斯噪声图像对应的哈希字符串,分别确定所述各个高斯噪声图像对应的哈希字符串与对比二维码图像的哈希字符串的相似度,得到相似度序列;
重码检测模块,用于根据所述相似度序列和所述重码检测矩阵,确定目标物件上二维码的重复特征值,判断所述重复特征值是否高于预设阈值,当所述重复特征值高于预设阈值时判定所述目标物件上的二维码与所述对比二维码出现重码,输出报警信号;
其中,所述重码检测矩阵为所述高斯噪声图像集合中各个高斯噪声图像对应的高斯噪声幅值组成的集合,获取所述重码检测矩阵具体为:将所述二维码灰度图像所有像素点的最大灰度值与灰度值上限的差值作为所述高斯噪声点的最大幅值,在零到该最大幅值的区间内根据高斯噪声图像的数量取均匀分布,得到多个高斯噪声点的幅值,由多个高斯噪声幅值根据数值大小排列,得到重码检测矩阵。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有代码,所述处理器被配置为获取所述代码,并执行如权利要求1至7任一项所述的防重码检测方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的防重码检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310933209.2A CN116645661B (zh) | 2023-07-27 | 2023-07-27 | 一种防重码检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310933209.2A CN116645661B (zh) | 2023-07-27 | 2023-07-27 | 一种防重码检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116645661A CN116645661A (zh) | 2023-08-25 |
CN116645661B true CN116645661B (zh) | 2023-11-14 |
Family
ID=87625168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310933209.2A Active CN116645661B (zh) | 2023-07-27 | 2023-07-27 | 一种防重码检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116645661B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109977250A (zh) * | 2019-03-20 | 2019-07-05 | 重庆大学 | 融合语义信息和多级相似性的深度哈希图像检索方法 |
CN110503697A (zh) * | 2019-08-14 | 2019-11-26 | 江苏海洋大学 | 一种基于随机噪声机制的虹膜特征隐藏方法 |
CN110895570A (zh) * | 2018-08-24 | 2020-03-20 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
JP2020115376A (ja) * | 2016-04-12 | 2020-07-30 | シナプティクス・ジャパン合同会社 | 画像処理装置、プログラム、記録媒体及び方法 |
CN113283263A (zh) * | 2021-04-06 | 2021-08-20 | 安徽农业大学 | 一种针对二维码错码、漏码、重码的校验方法 |
CN114387480A (zh) * | 2021-12-21 | 2022-04-22 | 航天信息股份有限公司 | 一种人像加扰的方法及装置 |
CN114913513A (zh) * | 2021-10-12 | 2022-08-16 | 北京九章云极科技有限公司 | 一种公章图像的相似度计算方法、装置、电子设备和介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014132830A1 (ja) * | 2013-02-28 | 2014-09-04 | 株式会社 日立メディコ | 画像処理装置、磁気共鳴イメージング装置および画像処理方法 |
JP7357454B2 (ja) * | 2019-03-25 | 2023-10-06 | 三菱電機株式会社 | 特徴特定装置、特徴特定方法及び特徴特定プログラム |
-
2023
- 2023-07-27 CN CN202310933209.2A patent/CN116645661B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020115376A (ja) * | 2016-04-12 | 2020-07-30 | シナプティクス・ジャパン合同会社 | 画像処理装置、プログラム、記録媒体及び方法 |
CN110895570A (zh) * | 2018-08-24 | 2020-03-20 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN109977250A (zh) * | 2019-03-20 | 2019-07-05 | 重庆大学 | 融合语义信息和多级相似性的深度哈希图像检索方法 |
CN110503697A (zh) * | 2019-08-14 | 2019-11-26 | 江苏海洋大学 | 一种基于随机噪声机制的虹膜特征隐藏方法 |
CN113283263A (zh) * | 2021-04-06 | 2021-08-20 | 安徽农业大学 | 一种针对二维码错码、漏码、重码的校验方法 |
CN114913513A (zh) * | 2021-10-12 | 2022-08-16 | 北京九章云极科技有限公司 | 一种公章图像的相似度计算方法、装置、电子设备和介质 |
CN114387480A (zh) * | 2021-12-21 | 2022-04-22 | 航天信息股份有限公司 | 一种人像加扰的方法及装置 |
Non-Patent Citations (1)
Title |
---|
二维连续点阵码印刷质量检测系统设计与实现;王亚男;《中国优秀硕士学位论文全文数据库 (工程科技Ⅰ辑)》(第3期);B024-846 * |
Also Published As
Publication number | Publication date |
---|---|
CN116645661A (zh) | 2023-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xie et al. | Multilevel cloud detection in remote sensing images based on deep learning | |
CN108121991B (zh) | 一种基于边缘候选区域提取的深度学习舰船目标检测方法 | |
CN110348264B (zh) | 一种qr二维码图像校正方法及系统 | |
CN109343920B (zh) | 一种图像处理方法及其装置、设备和存储介质 | |
Zhang et al. | Road recognition from remote sensing imagery using incremental learning | |
CN108960280B (zh) | 一种图片相似度检测方法及系统 | |
CN111401387B (zh) | 异常样本构建方法、装置、计算机设备和存储介质 | |
CN112307919B (zh) | 一种基于改进YOLOv3的单证图像中数字信息区域识别方法 | |
US20200005078A1 (en) | Content aware forensic detection of image manipulations | |
CN107578011A (zh) | 视频关键帧的判定方法及装置 | |
CN112836625A (zh) | 人脸活体检测方法、装置、电子设备 | |
CN112101386B (zh) | 文本检测方法、装置、计算机设备和存储介质 | |
CN110942473A (zh) | 一种基于特征点网格化匹配的运动目标跟踪检测方法 | |
CN110516731B (zh) | 一种基于深度学习的视觉里程计特征点检测方法及系统 | |
CN108960246B (zh) | 一种用于图像识别的二值化处理装置及方法 | |
CN114913422A (zh) | 一种岩溶石山山区水土流失野外监测装置 | |
CN111291712B (zh) | 基于插值的cn和胶囊网络的森林火灾识别方法及装置 | |
CN114155285A (zh) | 基于灰度直方图的图像配准方法 | |
CN113963295A (zh) | 视频片段中地标识别方法、装置、设备及存储介质 | |
CN112560856A (zh) | 车牌检测识别方法、装置、设备及存储介质 | |
CN116645661B (zh) | 一种防重码检测方法及系统 | |
CN111325199B (zh) | 一种文字倾斜角度检测方法及装置 | |
CN116415210A (zh) | 图像侵权检测方法、装置及存储介质 | |
CN110766708A (zh) | 基于轮廓相似度的图像比较方法 | |
CN113537158B (zh) | 一种图像目标检测方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |