英语原文共 5 页
使用卷积神经网络进行二维码检测
Tzu-Han Chou, Chuan-Sheng Ho, Yan-Fu Kuo
摘要--条形码长期以来一直用于数据存储。在复杂背景图像中检测和定位条形码是条形码自动读取过程中一个重要而又具有挑战性的步骤。提出了一种定位和分割二维快速响应(QR)条形码的算法。定位涉及到卷积神经网络,可以检测部分二维码。然后应用多数投票来确定条形码的位置。然后利用图像处理算法对背景条码进行分割。实验结果表明,该方法对具有旋转和变形的二维码具有较强的鲁棒性。
一、介绍
条形码是带有编码数据的符号,可以被光学扫描仪读取。条形码最初由一系列不同厚度和空间的平行线组成。由于线型图案的存储容量有限,条形码后来演变成二维图形,如矩形和圆点。这些二维几何条码,又称二维条码,近年来在各个领域得到了广泛的应用。在复杂背景图像中检测任意位置和旋转的二维条码对于减少用户在条码解码过程中所涉及的交互量至关重要。本研究旨在利用卷积神经网络(CNNs)检测快速响应(QR)条形码。
图像中条形码的自动定位问题已经在一些文献中得到了解决。Zhang等人建立了基于文本和形状特征的非均匀照明和透视畸变ID条形码检测方法。Zamberletti等人提出了一种基于多层感知器网络的角度变ID条码检测算法。Xu等人开发了一种基于编码曝光算法的模糊二维条形码检测方法。Ohbuchi等人提出了一种二维码检测器,用于搜索图像中的查找模式。Leong等人利用加速鲁棒特性引入了条码关键点和行识别。虽然这些方法对某些条形码有较高的检出率,但它们的性能可能受到不同环境条件的影响。上述方法基于使用特定条件的先验知识手工制作的特性。手工修改功能是劳动密集型和费时的。此外,手工制作的特征不适当或不足可能导致检测率不理想。
作者就职于台湾大学生物工业机电工程系(电子邮件:pizzaI5425@ gmail.com)。
作者就职于台湾大学生物工业机电工程系(电子邮件:dOI631007@ntu.edu.tw)。
作者就职于台湾大学生物工业机电工程系(通讯作者提供电话:2-33665329;传真:2 - 23627620;电子邮件:ykuo@ntu.edu.tw)。
CNNs是多层感知器分类器。它们由卷积和子样本操作组成,灵感来自于视觉皮质[6]。与其他假设方法相比,CNNs是直接使用原始图像开发的,而其他假设方法通常需要事先知道defme手工设计的特征作为分类器输入。该方法对噪声和变化具有较强的鲁棒性。LeCun等[7-9]提出了利用反向传播进行识别的深度网络设计策略,并提出了一种CNN架构,该架构因其在手写数字识别方面的出色表现而流行起来。然后提出了其他的CNNs用于人脸检测[1,11],识别车牌[12],跟踪行人运动[13],读取速度标志[14],识别面部表情[15]。
这项工作的目的是在复杂的背景下定位任意方向和尺度的二维码。具体目标是(1)收集大量二维码作为数据库,(2)使用CNN识别局部图像斑块是否是部分二维码,(3)使用优化的图像处理方法分割二维码位置,(4)评价模型的性能。
二、简易的方法
该方法利用CNN分类器判断局部图像的局部patch是否为局部二维码。该检测过程首先采用空间金字塔对输入图像进行缩放,然后将缩放后的图像分割成多个局部patch。局部patch采用CNN分类器进行局部二维码检测。一旦检测结果为阳性,应用区域涂片技术对相同二维码的patch进行检测。然后利用优化的图像处理技术,包括霍夫变换和透视控制,对条码图像进行背景分割,测试流程如图1所示。
图1
- 部分二维码的路径库
建立了二维码图像和非二维码图像数据库。在图像采集过程中,利用在线条码生成器随机生成200个版本7的二维码。然后用一台电照相打印机(LaserJet M1132, HP;(600dpi),每个模块的尺寸为IS mil。二维码打印输出的图像由条形码扫描仪(9200系列,密码学实验室)获取,模拟二维条形码扫描的过程。在采集过程中,二维码打印输出被放置在距离扫描仪大约10和20厘米的地方。距离设置为二维码图像的模块大小约为4和7像素。从条形码图像的背景区域(如文本、数字和空白区域)采集非二维码图像。
从数据库中创建了用于后续CNN分类器开发的训练样本。样本为部分二维码图像的贴片。在创建样本patch的过程中,对图像进行下采样,建立不同模块大小的二维码。然后将重新标定的图像以不重叠的方式分割成32 - 32个patch。最终采集到989个二维码贴片和3180个背景贴片。
- CNN结构
在[9]的基础上,开发了一种用于识别部分QR斑块的CNN系统。系统的输入是一个3232像素的图像补丁。该网络确定该补丁是否是二维码的一部分。CNN系统由6层组成,包括两个卷积层c1和C2,两个子采样层S1和S2,两个分类层Nl和N2(图2)。这些特征图具有可训练特征提取器的功能。Nl层和N2层由完全连接的神经元组成。将提取的特征输入Nl层和N2层进行分类。
c1层和C2层分别包含6个28x28像素的feature map和12个9x9像素的feature map。在特征图计算过程中,首先对SxS像素的上一层和可训练的核矩阵进行卷积运算。每个卷积矩阵都用可训练的偏置进行求和,并输入一个乙状元函数形成一个特征图。因此,层Cl包含IS6 (2Sx6 6)可训练参数,层C2包含312 (2Sx 12 12)可训练参数。层SI包含6个14x14像素的feature map,层S2包含12个SxS像素的feature map。这些特征图是在Cl和C2的特征图上由2倍于subs amp ling的结果。Nl层和N2层是经典的多层感知器网络。N 1层包含300个神经元,每个神经元连接到S2层的一个像素。N2层由2个神经元组成,与N l层所有神经元完全连接,N2神经元是N 1加偏态下所有神经元加权和的s形函数的输出。因此,第N层和第N2层包含600个可训练权重和2个可训练偏差。用N2神经元的输出值对输入图像进行二维码或背景分类。
利用随机反向传播训练了CNN模型的1070个参数。该算法对训练数据进行了洗牌,并将其按批次进行排序。随后,这些批次被用于通过反向传播更新模型参数。训练数据的随机性增加了训练过程中跳出局部极小值的概率,从而提高了收敛性。该系统经过2000个世代所有批次的循环训练。
图二、CNN结构
- 检测二维码的变化范围
采用空间金字塔(SP)[11]对不同尺度的二维码进行检测。在SP过程中,对输入图像进行不同尺度的子采样,形成一个图像金字塔(图3),然后将图像分割成几个patch (32x32)。该贴片采用开发的CNN分类器进行二维码检测。一旦检测到,子采样图像中patch的位置将被投影回输入图像,用于后续的处理。本研究将待检测二维码模块的目标距离设置为3 - 13像素。由于训练样本的模块大小约为2和3.5像素,因此将SP因子设置为0.7、0.5和0.3(表1)。
图三、图像的金字塔式搜索
表1、检测的二维码范围
- 条形码碎片
应用图像处理技术确定图像中条码的完整区域,进行进一步解码(图4),确定过程包括区域涂抹、降噪、条码识别三个步骤。在区域模糊过程中,首先采用布拉德利阈值法对原始图像进行二值化。条形码的模块大小由两个连续的QR-code patch中的黑白区域切换频率决定。然后应用模块大小生成一个结构元素,用于后续的边缘检测、形态闭合和形态填充。生成的图像应该包含一个完整的二维码图像blob。其次,利用形态学开孔来减少图像中的噪声闪烁。然后,识别出与QR-patch阳性检测密度最高相关的blob为条码区域。用霍夫变换检测斑点周围的边界。最后,利用透视变换将扭曲后的条码[4]还原为一个正方形区域(图5)
图4、条形码碎片步骤
图5、透视反变换的说明
三、实验结果和分析
A测试数据组的结果
使用125张从网路上搜集或由台湾台北密文实验室提供的影像,评估本方法的效能;图6). qr码图像可在http://goo.gl/e3bXj9上访问。图像背景复杂,光照不均匀。图片中的二维码有不同的版本、模块大小、旋转和倾斜角度。该方法的精度达到95.2%。图6为检测结果。
图6、测试数据组的结果
B、模糊鲁棒性和模块大小灵敏度
研究了该分类器的模糊鲁棒性和模块大小敏感性。在模糊鲁棒性分析中,我们收集了1798块部分二维码。这些patch没有被包含在CNN模型训练中,被开发的分类器积极地分类为QR patch。使用带有3x - 3掩模的高斯平滑滤波器对这些补片进行模糊处理。滤波的标准差(SD)范围为0 ~ 2.5,增量为0.1(图7),然后将模糊的patch输入CNN分类器。
图7、样本模糊路径的鲁棒性分析
图8显示了使用不同SD进行模糊处理的patch的检测率。当SD为0.5时,检出率仍然相当高(9.8%)。SD达到0.5后,检出率明显下降。但即使SD为2.5,其检出率也达到了82.5%。
图8、高斯平滑的标准差
分析了不同模块大小的qr码补丁的检测率。每个模块大小分别为3、5、7和9像素,获得20张qr码图像。然后将图像裁剪成小块以测试检测率。图9显示了使用不同SP因子对不同模块大小的检测率。从图中可以看出,采用较高的SP因子可以检测到模块尺寸较小的二维码。相比之下,SP因子越低,模块尺寸越大的二维码检测率越高。SP因子0.5表示不同模块大小的检测率相对一致,以每模块大小7像素的二维码为主导检测。
图9、不同模块大小在SP因子中的检出率
四、结论
本文提出了一种用于复杂背景图像中二维码检测的框架。该方法使用CNN和SP方案识别不同模块大小的部分条形码补丁。然后将检测到的同一条码的patch从背景中连接并分割出来进行解码。这种局部条码patch检测策略使得识别具有较大失真度的条码成为可能。分析表明,该方法对条形码图像的模糊、旋转和光照均匀性具有较强的鲁棒性。从125个二维码组成的数据库中,该方法的检出率达到了95.2%。
参考文献
[I] C. Zhang, J. Wang, S. Han, and M. Vi, 'Automatic Real-Time Barcode Localization in Complex Scenes,' in Image Processing. 2006 IEEE 1m. Cotif#39;, pp. 497-500.
[2] A. Zamberletti, I. Gallo, and S. Albertini. 'Robust Angle Invariant ID Barcode Detection,' in Pattern Recognition (ACPR). 2013 2nd IAPR Asian Con!
[3] W. Xu, and S. McCloskey, '20 Barcode localization and motion deblurring using a flutter shutter camera,' in Applications of Computer Vision (WACV). 2011 iEEE Workshop, pp.159-165.
[4] E. Ohbuchi, H. Hanaizumi, and L.A. Hock, 'Barcode readers using the camera device in mobile phones,' in Cybenvorlds. 2004 im. Cotif#39;, pp.260-265.
[5] L. K. Leong, and W. Vue, 'Extraction of 20 barcode using keypoint selection and line detection,' in Advances in Multimedia Information Processing-PCM 2009. Springer, pp. 826-835.
[6] D. H. Hube1, and T.N. Wiesel, 'Receptive fields, binocular interaction and functional architecture in the cat#39;s visual cortex,' The Journal of physiology, 1962. 160(1), pp.106-154.
[7] Y. LeCun, 'Generalization and network design strategies,' Connections in Perspective. North-Holland, Amsterdam, 1989, pp. 143-55.
[8] Y. LeCun, B. Boser, J. S. Denker, D. Henderson, R. E. Howard, W. Hubbard, and L. O. Jackel, 'Handwritten digit recognition with a back-propagation network,' in Advances in neural information processing systems. 1990. Citeseer.
[9] Y. LeCun, L. Bottou, Y. Bengio, and P. Haff
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。