基于神经网络的二维码识别算法
- 格式:pdf
- 大小:1.22 MB
- 文档页数:7
基于神经网络的印刷体数字识别算法的研究摘要印刷体数字识别(Printed Numeral Recognition)是光学字符识别技术(Optical Character Recognition, OCR)的一个分支,是文字识别的重要组成部分。
本文以VC为平台,运用人工神经网络的思想(主要采用BP神经网络),实现了对印刷体数字识别。
关键词数字识别;图像预处理;特征提取;神经网络引言目前,识别技术已经广泛地应用到了各个领域中。
为了达到对一幅图像中的数字进行识别的目的,我们要对图像进行一些处理,这些处理工作的好坏直接决定了识别的质量,这些处理技术依次为图像的读取、对读取的图像进行灰度变换、按照量化指标对灰度变换后的图像进行二值化、然后对二值化后的图像中的字符信息进行切分等。
在进行完上述预处理工作后进行特征提取,再输入到已经训练好的BP网络进行识别。
1 识别的流程识别的流程按照引言中的步骤进行,主要分为两大部分,第一部分为图像的预处理、第二部分为通过神经网络进行印刷体数字的识别。
预处理部分的流程:图像输入-灰度变换-图像二值化-紧缩重排-归一化调整-图像分割-特征提取。
神经网络数字识别的具体流程:样本训练-字符特征输入-识别并给出结果。
2 基于神经网络的特征提取算法概述图像在经过了前期的预处理后,由原来杂乱无章的字符变为了整齐排列的、大小相同的一列字符,在这里图像归一化后的宽度为8像素,高度为16像素,这样就大大方便了对字符特征的提取。
我们把提取的特征存储在特征向量里,然后把特征向量输入到神经网络中,这样就可以对字符进行识别了。
由以上的论述我们可以得出结论,特征提取的算法是整个识别过程的关键,它的好坏直接决定了识别的成败。
对图像中的字符进行特征提取的算法有很多,下面对几种重要的分别进行介绍。
2.1骨架特征提取法由于图像的来源不同,这就使得图像的线条所使用的像素不同,在图像上表现出来就是线条的粗细的不同,这样就使得它们的差别很大。
基于神经网络的识别算法在商品检测中的应用研究第一章:引言随着互联网和移动设备的普及,电子商务逐渐成为人们购物的主要方式。
但是,在传统实体店购物中,消费者可以直接接触商品,通过观察品质、颜色、质地等因素来判断商品的品质,并决定是否购买。
而在网络购物中,消费者只能依靠图片和文字描述来了解商品,这给商品的检测带来了很大的困难。
为了解决这一问题,许多商家开始使用基于神经网络的识别算法来实现自动商品检测,提高了商品检测的准确性和效率。
本文将重点讨论基于神经网络的识别算法在商品检测中的应用研究。
第二章:神经网络的介绍神经网络是模拟人脑神经元间信息传递过程的一种数学模型,可以实现非线性映射,具备自适应和学习能力。
神经网络的基本结构由神经元、连接权和偏置项组成。
神经网络训练的过程即优化连接权和偏置项的值,以最小化误差函数,从而实现模型的自动学习和预测。
神经网络的应用非常广泛,可以用来进行图像识别、语音识别、自然语言处理、智能控制等领域。
在本文中,将重点研究神经网络在商品检测中的应用。
第三章:商品检测中的问题及挑战商品检测主要涉及到图像处理和模式识别等技术,这些技术都属于计算机视觉领域,并且这些技术需要具有:1.准确性:商品检测需要对商品进行精确的检测和分类,以便消费者能更好地认识商品。
2.实时性:商品检测需要在商场内或者电商平台上进行计算,所以需要快速检测。
3.复杂性:商品涉及种类繁多、颜色各异、大小尺寸不一,因此需要处理的数据量大、复杂性高。
以上三点是商品检测中的主要问题和挑战,如何解决这些问题是本文的重点。
第四章:基于神经网络的商品检测算法基于神经网络的商品检测算法是一种有效的解决方案。
它使用深度学习和卷积神经网络(CNN)技术,以检测商品的图像为基础,实现自动化商品分类和识别。
卷积神经网络能够自动从输入数据中学习特征,并且对这些特征进行分类和识别。
首先,针对具体的商品类型,搜集大量数据,并对其进行压缩和预处理。
基于神经网络的手写数字识别算法设计与实现手写数字识别是计算机视觉和人工智能领域的经典问题之一。
在过去的几十年中,神经网络被广泛应用于手写数字识别任务,并取得了显著的成果。
本文将介绍一种基于神经网络的手写数字识别算法的设计和实现。
一、介绍手写数字识别是指将手写的数字图像转化为计算机可识别的数字。
目前,神经网络是最常用的用于手写数字识别的算法之一。
神经网络可以通过训练样本学习并自动提取特征,从而实现对手写数字的识别。
二、算法设计1. 数据集准备手写数字识别算法的训练离不开一个具有标签的大型数据集。
常用的数据集包括MNIST和自定义的数据集。
在这里,我们选择使用MNIST数据集作为训练和测试数据。
2. 神经网络结构设计神经网络的结构是手写数字识别算法的核心。
传统的神经网络结构包括输入层、隐藏层和输出层。
其中,输入层的神经元数量为输入图像的像素数,输出层的神经元数量为0-9的10个数字。
隐藏层的数量和每一层的神经元数量可以根据实际需求进行设计。
3. 特征提取神经网络可以通过前向传播的过程自动地提取输入图像的特征。
这些特征可以帮助神经网络更好地理解和区分不同的手写数字。
4. 权重训练神经网络中的权重是连接不同神经元之间的参数。
通过反向传播算法,可以根据损失函数来优化权重参数。
训练的目标是使神经网络能够准确地预测输入图像的数字标签。
5. 模型评估在训练完成后,我们需要对模型进行评估。
常用的评估指标包括准确率、精确率、召回率和F1分数等。
这些指标可以帮助我们了解模型在不同情况下的性能。
三、算法实现手写数字识别算法的实现可以使用编程语言如Python、MATLAB 等。
以下是一种Python实现的伪代码:```pythonimport numpy as np# 神经网络结构设计input_size = 784hidden_size = 100output_size = 10# 权重初始化w1 = np.random.randn(input_size, hidden_size) w2 = np.random.randn(hidden_size, output_size) # 前向传播def forward(x):# 输入层到隐藏层z1 = np.dot(x, w1)h1 = sigmoid(z1)# 隐藏层到输出层z2 = np.dot(h1, w2)out = sigmoid(z2)return out# 反向传播def backward(x, out, y):# 计算损失函数的导数delta2 = (out - y) * sigmoid_derivative(out)# 更新权重w2 -= learning_rate * np.dot(h1.T, delta2)w1 -= learning_rate * np.dot(x.T, np.dot(delta2, w2.T) * sigmoid_derivative(h1))# 模型训练for epoch in range(num_epochs):for i, (x, y) in enumerate(train_data):# 前向传播out = forward(x)# 反向传播backward(x, out, y)# 模型评估correct = 0total = 0for x, y in test_data:out = forward(x)prediction = np.argmax(out)if prediction == y:correct += 1total += 1accuracy = correct / total```四、总结本文介绍了基于神经网络的手写数字识别算法的设计和实现。
基于神经网络的图像识别和分类算法研究 近年来,随着深度学习技术的发展和普及,基于神经网络的图像识别和分类算法得以广泛应用,并在许多领域中取得了优异的表现。本文将探讨基于神经网络的图像识别和分类算法的研究现状、应用场景及其优势。
一、基于神经网络的图像识别和分类算法的研究现状 在深度学习技术中,神经网络是最具代表性的技术之一。神经网络具有非线性、自适应等优良性质,可以用于图像处理、语音处理、自然语言处理等众多领域。在图像识别和分类领域,神经网络通常采用卷积神经网络(Convolutional Neural Network,CNN)模型。
卷积神经网络是一种前向反馈神经网络,主要用于图像、音频等二维数据的分类和识别。它模仿了人类的视觉机制,通过多层卷积和池化操作提取出图像的特征,再通过全连接层将特征向量映射成分类结果。卷积神经网络结构相对简单,但在图像识别和分类任务中,表现出了非常出色的性能。
基于卷积神经网络的图像识别和分类算法研究已经发展了近二十年,随着深度学习算法的不断优化,这一技术也越来越成熟。2012年开始,由于AlexNet对深度学习算法的优化,大规模图像识别和分类中的错误率得以大大降低。随后,Google的Inception-v3、Facebook的ResNet、Microsoft的DenseNet等模型相继推出,将图像识别和分类的准确率提高到了一个新的高度。
二、基于神经网络的图像识别和分类算法的应用 基于神经网络的图像识别和分类算法被广泛应用于各个领域。以下列举几个应用场景:
1.人脸识别 人脸识别是近年来非常热门的应用之一,广泛应用于公安、金融、城市管理等领域。基于神经网络的人脸识别算法能够识别出复杂背景下的人脸,克服了传统算法的限制,同时具有更高的准确率和更低的误识别率。
2.智能安防 基于神经网络的图像识别和分类算法在智能安防领域也得到了广泛应用,能够识别出异常行为、人脸识别、车牌识别等。在实际应用中,它可以将传感器、摄像头等设备收集到的信息进行快速分类,快速确定是否存在危险。
基于神经网络的手写数字识别算法研究与应用近年来,随着神经网络在计算机科学领域的快速发展,基于神经网络的手写数字识别算法成为了一个备受关注的研究热点。
这一技术的应用非常广泛,如自动邮件识别、智能手机输入法、银行支票处理等。
本文旨在对基于神经网络的手写数字识别算法进行研究,并探索其在实际应用中的潜力。
手写数字识别问题可视为一个多分类任务,即将手写的数字图像分为0-9十个不同的类别。
神经网络是一种被广泛应用于图像分类问题的强大工具,它通过学习数据中的模式和特征来对输入图像进行分类。
本文将围绕神经网络在手写数字识别领域的研究和应用展开讨论。
首先,我们将介绍神经网络的基本原理。
神经网络是一种模拟人脑神经元网络结构的计算模型,它由多个神经元层组成。
每个神经元接收来自前一层神经元的输入,并通过激活函数对输入进行加权和求和,然后产生输出。
神经网络通过不断调整神经元之间的连接权重来优化模型,从而提高分类准确率。
在手写数字识别问题中,输入的图像是一个二维像素矩阵,每个像素点的灰度值表示了图像的特征。
我们可以将这个二维矩阵展开为一个一维向量,并将其作为神经网络的输入层。
为了提高模型的表达能力,我们可以在输入层之后添加多个隐藏层。
隐藏层的神经元数量和层数的选择需要进行实验和调优,以达到最佳的识别效果。
在神经网络的训练过程中,我们使用的是反向传播算法。
反向传播算法通过计算输出层与标签之间的误差,并将误差从输出层向隐藏层进行反向传播,不断调整神经元之间的连接权重。
通过多次迭代,神经网络能够逐渐学习到输入图像的模式和特征,提升识别准确率。
在具体的实践中,我们可以使用一些公开的手写数字数据集来训练和测试神经网络模型。
常用的数据集包括MNIST、NIST等。
这些数据集中包含了大量的手写数字图像样本,并且已经提供了对应的标签,可以用于模型的训练和评估。
除了基本的神经网络结构和训练算法之外,还有一些改进和优化技术可以应用于手写数字识别算法中。
基于神经网络的图像识别算法随着科技的发展,图像识别技术不断成熟,越来越多的产品和服务采用了这项技术。
其中神经网络是图像识别的一种常见算法,下面我们就来了解一下基于神经网络的图像识别算法。
一、神经网络的基本概念神经网络是一种模拟人脑神经元结构和功能的人工神经网络,通过模拟神经元的连接和交互实现计算。
神经网络有输入层、隐层和输出层三层结构,其中输入层是将原始数据输入网络的地方,输出层是输出网络结果的地方,隐层是一个或多个中间层,通过多个层之间的权重调整和激活函数的作用,最终实现对数据的分析和判断。
二、基于神经网络的图像识别算法1. 图像处理在进行图像识别前,首先需要对图像进行处理。
一般通过阈值处理、二值化、去噪等方式来消除干扰信息,使原始图像变为适用于神经网络处理的图像。
2. 神经网络结构神经网络结构对图像识别的效果有很大的影响。
一般我们采用多层感知机(Multi-Layer Perceptron,MLP)结构,即输入层、若干隐层和输出层。
其中,输入层和输出层的节点数需要与图像像素数和识别目标数量一致,隐层节点数需要根据实验调整。
3. 特征提取神经网络需要确定特征来建立分类模型。
常见的特征提取方法包括梯度直方图、Haar特征和SIFT特征等。
这些特征具有不变性和鲁棒性,可以减少图像噪声的影响,提高分类准确率。
4. 训练模型训练模型是图像识别的关键。
首先需要准备好训练数据和测试数据,通过前期准备好的特征提取方法对数据进行处理,然后通过反向传播算法、遗传算法、支持向量机等方法进行模型训练。
5. 分类识别训练好的模型可以对测试图像进行分类和识别。
分类的结果可以通过比较输出层的概率大小来确定识别结果。
三、基于神经网络的图像识别应用1. 人脸识别人脸识别是基于神经网络的图像识别的一种应用,可以应用于安防、考勤等领域。
通过训练好的模型对人脸图像进行分类和识别,可以实现快速自动化的人脸识别。
2. 智能家居智能家居是近年来兴起的一种趋势,其中涉及到的环境识别、物体识别等问题都可以采用基于神经网络的图像识别算法来解决。
2020年软 件2020, V ol. 41, No. 4作者简介: 李世成(1994–),男,研究生,主要研究方向:智能信息处理技术; 通讯作者: 东野长磊(1978–),男,讲师,主要研究方向:计算机视觉。
基于卷积神经网络的验证码识别李世成,东野长磊*(山东科技大学 计算机科学与工程学院,山东 青岛 266590)摘 要: 验证码识别与设计是目前人工智能领域的挑战性问题,验证码图片内容识别通过强制人机交互来抵御机器自动化攻击的,验证码是否能被批量识别可以用来衡量验证码设计的优劣。
目前已经有相对成熟的算法解决这类问题,但是仍然存在天花板有待突破。
首先本文对5000张验证码的样本集进行图片预处理,对验证码图片去噪点和切割操作。
然后利用添加了注意力模块的卷积神经网络训练样本集,并对另外5000张样本进行预测,测试集的准确率可以达到97.9%。
关键词: 验证码;二值化;卷积神经网络;CBAM中图分类号: TP183 文献标识码: A DOI :10.3969/j.issn.1003-6970.2020.04.037本文著录格式:李世成,东野长磊. 基于卷积神经网络的验证码识别[J]. 软件,2020,41(04):173 177Verification Code Recognition Based on Convolutional Neural NetworkLI Shi-cheng, DONG YE Chang-lei *(School of Computer Science and Engineering, Shandong University of Science and Technology,Qingdao 266590, Shandong, China )【Abstract 】: Captcha identification and design are currently challenging issues in the field of artificial intelligence. Captcha image content recognition resists automated machine attacks by forcing human-computer interaction. Whether captchas can be identified in batches can be used to measure the pros and cons of captcha design. At pre-sent, there are relatively mature algorithms to solve such problems, but there are still ceilings to be broken. Firstly, this paper pre-processes 5000 sample samples of captcha, and denoises and cuts the captcha pictures. Then using the convolutional neural network training sample set with the attention module added, and predicting another 5000 samples, the accuracy of the test set can reach 97.9%.【Key words 】: Verification code; Binarization; Convolutional neural network; CBAM0 引言验证码(CAPTCHA )是一种区分用户是计算机还是人的公共全自动程序。
基于神经网络算法的图像识别技术图像识别技术是人工智能领域的重要应用之一,通过神经网络算法实现的图像识别技术更是在近年来取得了突破性的进展。
本文将着重探讨基于神经网络算法的图像识别技术的原理、应用及未来发展方向。
一、神经网络算法在图像识别中的原理神经网络算法是一种模拟人脑神经系统的计算模型,其基本单元为人工神经元,并通过神经元之间的连接与传递信息来完成学习和图像识别任务。
在图像识别中,神经网络算法的原理可以简单描述为以下几个步骤:1. 数据预处理:将图像数据转化为神经网络可处理的格式,通常是将图像转化为像素矩阵。
2. 网络构建:建立神经网络的结构,确定网络的层数、每层的神经元数和连接方式等。
3. 前向传播:通过输入层将图像数据传递至输出层,逐层计算每个神经元的激励函数,最终得到神经网络的输出结果。
4. 反向传播:根据输出结果和实际标签之间的误差,通过调整神经元之间的连接权重,使得网络输出结果与实际标签更加接近。
5. 权值更新:根据误差反向传播的结果,更新神经元之间的连接权重,以提高网络的准确性。
二、基于神经网络算法的图像识别技术的应用1. 人脸识别:基于神经网络算法的人脸识别技术能够准确识别图像中的人脸并进行身份验证。
该技术在安防领域得到广泛应用,如门禁系统、刷脸支付等。
2. 物体识别:神经网络算法能够通过学习大量的物体图像,实现对不同物体的自动识别。
这在图像搜索、商品推荐等应用中有着广泛的应用前景。
3. 图像分类:神经网络算法能够通过学习图像特征,将图像分为不同的类别,如猫和狗的分类、车辆的品牌分类等。
这在广告投放、智能家居等领域有着重要的应用价值。
三、基于神经网络算法的图像识别技术的发展趋势1. 深度学习:深度学习是神经网络算法的重要分支,通过构建深层次的神经网络模型,能够更好地提取图像特征并实现更高水平的图像识别精度。
将深度学习与图像识别技术相结合,将会得到更加准确和可靠的图像识别结果。
2. 多模态融合:将图像识别技术与其他感知技术,如语音识别、视频识别等相结合,能够实现多种感知信息的综合利用,提高图像识别的准确率和鲁棒性。
基于神经网络的物体识别与检测算法研究与实现引言:神经网络作为一种重要的机器学习工具,其在物体识别与检测算法中已经取得了巨大进展。
本文将就基于神经网络的物体识别与检测算法进行深入研究与实现,并探讨其在实际应用中的潜在价值。
一、介绍神经网络在物体识别与检测中的作用神经网络是一种模仿人脑神经系统结构和功能的计算模型,具有较强的自学习、自适应能力。
在物体识别与检测领域,神经网络通过学习大量的样本数据,能够自动提取特征,实现对不同物体的准确分类和定位。
二、常用的神经网络模型与算法1. 卷积神经网络(Convolutional Neural Network,CNN)卷积神经网络是目前物体识别与检测中最常用的模型之一。
它通过卷积层、池化层和全连接层等结构,能够对图像进行高效的特征提取和分类。
2. 目标检测算法在物体识别与检测中,目标检测算法起到关键作用。
常见的目标检测算法包括:基于候选框的方法(如Selective Search、EdgeBoxes)、基于区域的方法(如R-CNN系列算法)、基于锚定框的方法(如Faster R-CNN、YOLO)等。
三、数据集的选择与预处理为了训练与测试神经网络模型,需要选择合适的数据集,并对数据进行预处理。
常见的物体识别与检测数据集包括:ImageNet、COCO、VOC等。
预处理的方法包括图像大小调整、图像增强、标签转换等。
四、网络模型的构建与训练1. 网络模型的构建神经网络模型的构建是物体识别与检测算法的核心任务之一。
根据具体需求和问题特点,选择合适的网络结构,并配置相应的层数、节点数和卷积核大小等。
2. 损失函数、优化器与训练策略损失函数的选取对于模型的训练和优化至关重要。
常用的损失函数包括交叉熵损失函数、均方误差损失函数等。
优化器的选择也会影响模型的收敛速度和准确性,常用的优化器有梯度下降法、Adam、RMSProp等。
此外,合理的训练策略如学习率的调整、正则化等,都对模型的性能有着重要影响。
基于神经网络的手写数字识别算法手写数字识别是计算机视觉领域中的一项重要任务,需要将手写的数字转化为计算机可识别的数字形式。
随着人工智能技术的发展,基于神经网络的手写数字识别算法因其高准确率和灵活性而变得越来越流行。
一、神经网络简介神经网络是一种仿真人类神经系统的智能算法,其基本元素是神经元。
神经网络的网络结构可以由数千个甚至数百万个神经元构成。
其中的神经元在接收到输入信号后,会对其进行加权求和,并使用激活函数将其转化为输出信号。
神经网络在处理输入数据时,其网络结构会进行逐层计算,将输入的数据逐步转化为输出信号。
通常,神经网络会在大量的训练数据中学习到输入输出之间的映射关系,以进一步提高其识别准确率。
二、手写数字识别算法手写数字识别算法是一项复杂的任务,需要通过大量的训练数据来学习手写数字的特征,并将其与其他相似的特征进行区分。
基于神经网络的手写数字识别算法实现了对手写数字的高效分类和识别。
1、神经网络结构基于神经网络的手写数字识别算法通常采用前向传播和反向传播的方式进行训练。
基本的网络结构包括输入层、隐藏层和输出层,其中输入层接收手写数字的像素信息,输出层输出数字的标记,隐藏层则起到对手写数字进行特征提取的作用。
2、数据预处理在神经网络训练过程中,数据预处理是非常关键的步骤。
对于手写数字识别任务,首先需要将图像数据预处理为标准的格式,通常是将图像大小转化为统一的像素大小,并将其转化为灰度图像。
此外,还需要进行数据归一化处理,以保证网络学习的稳定性。
3、训练过程在神经网络训练过程中,常常采用梯度下降法进行优化。
梯度下降法通过计算损失函数的梯度来更新神经网络的参数。
在每次迭代中,神经网络会根据训练数据样本的标签与网络输出之间的误差来更新权重和偏置项,以提高网络的识别准确率。
4、测试过程在测试过程中,手写数字的图像数据会通过训练好的神经网络进行识别。
一般来说,测试数据集与训练数据集不同,并且测试过程中不进行参数权重的更新。
基于卷积神经网络的手写数字识别算法研究手写数字识别算法在人工智能领域中有着广泛的应用和研究。
其中,基于卷积神经网络的手写数字识别算法成为了更为先进和优秀的技术之一。
在本文中,我们将深入探讨这种算法的原理和实现方法。
一、卷积神经网络简介卷积神经网络(Convolutional Neural Network,CNN)是一种深度学习模型,其最主要的目的是对输入的数据进行分类和识别。
卷积神经网络通常由多个卷积层、池化层、全连接层等组成。
卷积层是卷积神经网络中最重要的层之一,它能够从输入数据中提取出不同级别的特征,这些特征被称为卷积核或滤波器。
在进行卷积操作时,卷积核在输入数据上滑动,通过计算卷积核与输入数据的点积来提取出特征。
池化层是卷积神经网络中通常出现在卷积层之后的一种层,其主要功能是对卷积层输出的数据进行下采样,即将多个相邻的数据点合并成一个数据点。
这样可以减少输入数据的维度,提高计算效率。
全连接层是卷积神经网络中最后一层,其目的是将前面的卷积层和池化层输出的特征进行分类或者标记。
在全连接层中,每个神经元都与前一层中的所有神经元相连。
全连接层会计算出输入数据与各类别之间的相似度得分,并以此来进行分类。
二、手写数字识别算法实现卷积神经网络在手写数字识别中的应用,通常是采用MNIST数据集进行训练和测试。
该数据集包含了60,000个训练样本和10,000个测试样本。
每个样本都是28x28像素大小的灰度图像,图像中仅包含一个手写数字。
在卷积神经网络中,数据的预处理是非常重要的一步。
通常可以归一化处理,并将像素值放缩到[0,1]范围内。
这样做有助于加快训练过程,提高模型的准确率。
在实际的算法中,我们通常会进行以下几个步骤:1.首先,使用卷积核对输入图像进行卷积操作,提取出不同的特征;2.然后,通过池化操作对卷积层的输出进行下采样;3.在全连接层中,将汇总后的特征映射到标签输出,通过softmax函数进行计算,得出输入图像属于每个数字的概率值,最终选择概率值最大的标签作为正确的分类结果。
Computer Science and Application 计算机科学与应用, 2018, 8(10), 1552-1557 Published Online October 2018 in Hans. http://www.hanspub.org/journal/csa https://doi.org/10.12677/csa.2018.810169
Two-Dimensional Code Recognition Algorithm Based on Neural Network
Tongqing Xu, Haoliang Zhang, Guofeng Liu, Haojun Zhao, Enze Zhang, Can Zhang State Grid Jiangsu Electric Power Co., Ltd. Nanjing Power Supply Branch, Nanjing Jiangsu
Received: Oct. 6th, 2018; accepted: Oct. 17th, 2018; published: Oct. 24th, 2018
Abstract This paper mainly designs a recognition algorithm of incomplete two-dimensional codes. By de-signing a neural network with memory ability, the mapping relationship between incomplete two-dimensional codes and cable information is established. Thus, when two-dimensional codes are incomplete due to external reasons, the corresponding cable information can be read. In this algorithm, dynamic Lyapunov function is used to memorize pixel information of two-dimensional code by the state change of each neural network node. Firstly, image information of two-dimensional code is transmitted to two-dimensional code recognition module by two-dimensional code scan-ning device. Then, two-dimensional code image is transformed into a binary pixel matrix as a neural network. Next, the connection weights between neurons are trained by pixel matrix of source two-dimensional code to get corresponding weight matrix. Then, after the pixel matrix of incomplete two-dimensional code is input, neuron nodes adjust the state values until change of neuron state values is less than threshold value. Finally, cable information corresponding to the source two-dimensional code is read out from database.
Keywords Two-Dimensional Code Recognition, Neural Network, Cable Operation and Maintenance
基于神经网络的二维码识别算法 徐同庆,张昊亮,刘国峰,赵浩君,张恩泽,张 璨 国网江苏省电力有限公司南京供电分公司,江苏 南京
收稿日期:2018年10月6日;录用日期:2018年10月17日;发布日期:2018年10月24日 文章引用: 徐同庆, 张昊亮, 刘国峰, 赵浩君, 张恩泽, 张璨. 基于神经网络的二维码识别算法[J]. 计算机科学与应用, 2018, 8(10): 1552-1557. DOI: 10.12677/csa.2018.810169 徐同庆 等 摘 要 本文主要设计一种残缺二维码的识别算法,通过设计具备记忆能力的神经网络,建立残缺二维码与电缆信息的映射关系,从而在二维码因外界原因出现残缺的时候,能够读取与之对应的电缆信息。该算法中的神经网络采用动力学的Lyapunov函数,利用每个节点的状态变化记忆源二维码的像素信息,首先,利用二维码扫描装置,将二维码的图像信息传递给二维码识别模块;然后,将二维码图像转化为二值像素矩阵,作为神经网络的输入;接下来,利用源二维码的像素矩阵训练神经网络各个神经元之间的连接权值,得到相应的权值矩阵;随后,输入残缺二维码的像素矩阵之后,各神经元节点不断调整状态值,直到各神经元状态值的变化小于阈值之后,停止调整;最后,将神经元状态值矩阵对应源二维码的电缆信息,从数据库中读取出来。
关键词 二维码识别,神经网络,电缆运维
Copyright © 2018 by authors and Hans Publishers Inc. This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/
1. 引言 电网的可靠性影响着城市建设和发展的速度。其中,电缆下地是城市化建设的重要环节,也是提升供电可靠性的重要方法之一,因为地下电力电缆相比架空导线而言,不占地面空间,有专门的电缆隧道或通道,既不影响城市美观,又可避免风雨、雷电、污秽等自然灾害造成的影响,能够有效保障电能安全、稳定的供应。 为了目前电力地下电缆运维存在的问题,电力运维部门为每条电缆添加二维码,以此便于获取电缆信息数据,提升运维效率。此时,能否准确识别二维码成为获取电缆信息数据的关键问题。 目前,在二维码识别方面已经有较多研究成果[1]-[7]。文献[1]详细介绍了移动巡检系统的总体结构及系统组成,并描述了移动巡检系统的操作流程。文中所提巡检系统能够简化巡检工作流程,显著提高巡检的质量和效率。文献[2]就二维码尺寸联同钢管表面粗糙程度、钢管直径、二维码标刻深度等因子对二维码识别率的影响关系作了实证。文献[3] [4] [5]针对复杂条件下二维码识别技术在工业现场的应用研究与开发进行了深入研究,同时对图像采集、处理以及识别算法进行了深入的研究。除此之外,广东电网有限公司为解决手工录入数据、修改数据出错率较高的问题,利用二维码技术基于Android平台的移动终端作为开发环境,设计并实现基于Android移动终端的二维码识别系统。考虑了识别的速度、容错性以及通用性等方面的特性[6]。文献[7] [8] [9]针对设备巡检工作对企业业务的影响,搭建技术设备巡检平台和相应的分析、编解码方法。 然而,由于电缆所处的环境容易造成二维码的残缺,因此,亟需设计相应的二维码识别方法,提升残缺二维码的读取能力。针对上述问题,本文设计了基于神经网络的二维码识别算法(TDCRN,Two Dimensional Code Recognition algorithm based on Neural network),该算法中的神经网络采用动力学的Lyapunov函数,利用每个节点的状态变化记忆源二维码的像素信息,首先,利用二维码扫描装置,将二维码的图像信息传递给二维码识别模块;然后,将二维码图像转化为二值像素矩阵,作为神经网络的输入;接下来,利用源二维码的像素矩阵训练神经网络各个神经元之间的连接权值,得到相应的权值矩阵;
DOI: 10.12677/csa.2018.810169 1553 计算机科学与应用 徐同庆 等 随后,输入残缺二维码的像素矩阵之后,各神经元节点不断调整状态值,直到各神经元状态值的变化小于阈值之后,停止调整;最后,将神经元状态值矩阵对应源二维码的电缆信息,从数据库中读取出来。最后,通过实验验证了TDCRN算法有效性。 2. 问题模型
2.1. 问题描述 电力电缆铺设方式主要有电缆明沟、直埋和穿管,具有分布广、不可视等特点,同时,电缆沟内环境通常比较恶劣,电缆上面没有统一的挂牌标识,或已经破坏脱落,部分沟道内的电缆敷设十分混乱。在现场排查时需要反复探查。目前电缆采用塑料喷印标识牌或者铝制标识牌,塑料喷印标识牌容易褪色,造成电缆无法辨识,铝制标识牌容易被氧化腐蚀。 对地下电力电缆的管理以及维护工作难度较大,在日常维护抢修工作中,现有生产管理系统数据,只能提供大致数据,作用有限。缺乏精准的系统展示功能的情况下,对于不可见的地下电力设备资产的统计及分布,维护及巡查,成为了班组电力地下资产运行维护工作的难点及“痛处”,新的运维方式成为供电部门的迫切需求。为此,电力运维部门为每条电缆添加二维码,而残缺二维码识别问题成为影响电缆信息获取的重要原因。
2.2. 问题处理流程
针对残缺二维码识别遇到的问题,设计了基于神经网络的二维码识别算法,主要包括:神经网络训练流程和残缺二维码识别流程。具体处理流程见图1和图2。
Figure 1. Training process of neural network 图1. 神经网络训练流程
DOI: 10.12677/csa.2018.810169 1554 计算机科学与应用