基于卷积递归神经网络的数码管液晶数字识别_第1页
基于卷积递归神经网络的数码管液晶数字识别_第2页
基于卷积递归神经网络的数码管液晶数字识别_第3页
基于卷积递归神经网络的数码管液晶数字识别_第4页
基于卷积递归神经网络的数码管液晶数字识别_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

绪论研究背景随着科学技术的不断进步,深度神经网络[1]技术在图像识别领域得到了广泛的应用。虽然深度神经网络技术在机器学习领域中取得了很多令人瞩目的研究成果,但是该领域仍然存在一些问题[2],如基于图像的序列识别等问题。在实际生活中包含了许多稳定的视觉对象,它们通常不会单独出现,而是由多个字符构成的序列,例如乐谱中的音符、数码管显示的液晶数字以及书籍中的文字。传统的文本识别都是对单个标签进行识别,而识别字符序列需要对一系列的对象标签进行预测识别。不同的序列对象在长度上也会有所不同,而深度卷积神经网络[3](DCNN)模型通常对具有固定维度的输入和输出进行识别操作,针对特定的序列问题尝试对这类问题提出解决方法,先对每一个字符[4]进行检测,检测到的字符采用DCNN模型对标注好的标签进行训练。但由于字符之间组合的序列数目巨大,因此不能采用DCNN模型训练识别。而深度神经网络的的一个分支循环神经网络[5](RNN)能够很好地解决字符序列之间问题。RNN的特点在于模型训练阶段只需要对识别的图片进行预处理得到特征序列,不用识别图片的文本位置进行标注。例如,Graves[6]等人在手写文本中提取一系列几何或图像特征,而Su和Lu[7]将输入的字符图像转换成序列HOG特征。由于RNN系统中的预处理步骤是独立出来的后续组件,所以RNN系统不能采用端到端的方法优化系统。因此关于图像序列识别的分析与研究也是个需要解决的问题,而卷积递归神经网络是专门为了这一类问题而设计的一个神经网络。即卷积循环神经网络[8](ConvolutionalRecurrentNeuralNetwork,CRNN)。近年来,伴随着人工智能技术[9]的不断的发展,各行业开始引入半自动或全自动的管理方式来代替人工管理。在工业领域中的管理方式也同样的在进行转变,由于数码管的价格便宜,使用方便等优势,在工业领域使用到的工业设备仍然有大部分设备使用到了数码管,工业自动化作为未来发展的必然趋势。由于使用环境和设计等因素,目前还有许多带有数码管的设备没有配备传输数据的接口,获取设备信息的方法只能人工读取,假设在工业上使用到的设备较多,那么相应的数码管数量也会变多,读取信息的工作量也会随之变大,且机械式的工作会让人产生厌倦感,这类机械式地工作完全可以利用现代人工智能技术代替人们工作。为了减少人们的工作量,本文借鉴了卷积递归神经网络对文本序列识别的识别方式,对卷积递归神经网络的数码管液晶数字识别[10]进行探讨研究。国内外研究现状图像识别技术[11]指的是利用计算机和现代信息两者的技术使计算机学习模拟人类认识、理解的过程[12],通过输入不同类型的图像对该图像进行特征提取及分类,最后做出对图像的预测。该技术在人工智能中得到了广泛应用,其中在图像识别算法中较为常用的是深度学习法[13]。在2012年的图像分类大赛——ImageNet[14]中,某小组首次采用深度学习法并取得了优异的成绩。在后续几年中人们相继提出了不同的模型,这些模型都是基于算法提出的。例如模板匹配模型,它会在识别图像时结合以前识别记录的数据,若当前的识别的图像和以前记录的数据相符合,则完成了对图像的识别。图像识别的模式识别[15]是在已有的知识储备和专家的自身经验相结合共同建立的,根据大量的数据信息,采用数学推理以及计算机技术的方法对不同的对象完成自主识别和评价的过程,比如对文字字符、形状、曲线、字符格式等。该过程主要包含两个部分,首先是图像的学习,该过程主要根据提取到的图像特征找出特征之间的不同之处;其次是效果的实现,利用图像特征的不同对输入的图像进行分类,通过分类得到对应的标签。总体来说,图像识别任务中包含了三个基本要素:第一个是图像分割[16],其作用是对输入的图像划分区域;第二个是特征提取[17],其作用是对图像划分的区域进行提取特征;最后是识别分类,其作用是利用提取到的特征完成预测识别。其中,图像识别的发展史可以分为文字字符识别、数字图像处理和识别以及物体识别三个主要阶段[18]。人们在1850年就开始了对字母、数字、符号等字符进行文字识别[19,20]技术的研究探讨。接着数字图像处理和识别也逐渐地纳入了人们的日常研究领域中。最后到物体识别这类高级计算机视觉领域,根据前者的字符、图像识别技术并结合各学科领域的研究方向,通过对三维世界的客体以及环境进行感知和认识的过程。目前,已经有许多图像识别技术得到了广泛的应用,如人脸识别[21]、车牌识别[22,23]等。而传统的卷积神经网络只能对单个字符进行识别,为了解决无法识别序列字符问题,近年所提出的于卷积递归神经网络[24]其结合了CNN和RNN的特点。CRNN模型对输入图片的大小没有固定的要求,通过输入不同的图片得到字符长度不同的文本结果。该模型能够直接对整个字符串标签预测,无需在训练前对每个字符进行详细的标注。此外,为了让CRNN模型的性能更加的高效,该模型舍弃了传统神经网络中的全连接层。根据上述特点使得CRNN模型非常适用于在自然场景文本识别[25]的任务中。它结合了CNN和RNN的特点能对序列对象进行识别,而数码管液晶数字识别也可看作一个场景文本识别任务,故本文将基于CRNN来完成数码管液晶数字识别任务。针对数码管液晶数字识别问题,本文采用了一种基于卷积递归神经网络对数码管液晶数字识别的方法。它将数码管内的文本看作一个字符序列,对数码管进行检测再进行字符识别,对整个数码管液晶图像的字符预测,实现了不用字符分割就能完成数码管字符识别的目的。本文整体结构安排对数码管液晶数字识别的研究主要由五章内容构成:第一章:绪论。本章主要介绍了卷积递归神经网络和数码管识别的研究背景及国内外现状,并对本文的整体结构做出安排。第二章:本章对数码管液晶数字识别研究涉及到的相关模型进行介绍。主要包含了CNN、RNN以及连接时序分类器,为了下一章节的卷积递归神经网络模型做铺垫。第三章:针对数码管液晶数字的检测问题。采用了一种基于CTPN模型的数码管液晶数字检测方法,首先介绍了检测模型的主要组成及参数。接着介绍了数据集和训练模型的处理过程并利用衡量模型性能的评估标准进行评估,最后对检测模型的性能进行评估并且与PSENet模型进行比较。第四章:针对数码管液晶数字的识别问题。采用了一种基于CRNN的数码管液晶数字识别方案,首先介绍了检测模型的主要组成及参数。接着介绍了数据集和训练模型的处理过程并利用衡量模型性能的评估标准进行评估,最后结合三、四章内容设计整体的流程,并展示整体的识别效果并且与chinsesocr_lite进行比较分析。第五章:总结与展望。针对本文的研究做出总结并提出将来着重的研究的几个方向。第二章相关模型介绍华南理工大学广州学院本科毕业设计(论文)相关模型介绍二十一世纪初期,GeoffreyHinton[26]等人提出的深度学习使得人工智能领域得到了飞速的发展,通过使计算机模仿人类进行学习,让机器来代替人们解决非形式化的一些任务。深度学习属于机器学习的范畴,它能够从大量的数据中根据数据的特征挖掘出数据之间的关系。深度学习虽然在精度上超越了许多机器的学习算法,但是其网络结构与传统的神经网络结构都是由输入层、隐藏层、输出层三层网络结构组成。为后续检测和识别的模型做准备,本章会对涉及到的模型结构和特点进行详细的介绍。卷积神经网络在20世纪80年代Fukushima基于感受野提出的神经认知机[27](Neocognitron)并作为卷积神经网络的首个实现网络应用于手写字母识别的多层自组织神经网络中。在1998年LeCun为了解决手写数字识别问题[28]提出了LeNet神经网络,并且其发表的论文可以说是卷积神经网络领域的第一篇经典之作。随着科学技术的发展和各种不同的图像识别竞赛,人们相继提出了不同的神经网络,如AlexNet、ZFNet、VGGNet、Inception系列、再到ResNet[29]系列等。卷积神经网络结构:人们之所以经常使用卷积神经网络,是由于其在处理二维图像具有可以降低计算量和良好的鲁棒性等优秀的特点。而卷积神经网络主要由3个网络层组成:(1)卷积层:卷积层在卷积神经网络的主要作用是提取输入图片数据的特征,而提取特征的操作由卷积层的卷积核负责,卷积核就像一个尺寸大小固定的扫描仪,在设置特定的步长后对输入的数据进行一次又一次地扫描来提取数据的特征,如图2-1所示通过卷积核对输入数据进行相应处理后识别出图像中的主要特征,最后将提取到的特征输出到池化层。图2-1卷积过程(2)池化层:池化层在卷积神经网络的作用是对原始数据的压缩以及减少参与模型的计算参数,从某种意义上对计算的效率有了一定的提升,可以看作为卷积神经网络中提取输入数据核心特征的一种方式。池化层可以分为2种,首先是最大池化层,其池化过程如(图2-2)所示,如果采用一个滑动窗口大小为2*2窗口、设置步长为2,通过卷积核操作后将图像划分了四个区域,每个区域都包含了4个数字,选出区域中最大的数字为输出结果。而平均池化层则是对框内的数字进行求和,平均后得出的数据作为输出结果。图2-2最大池化过程(3)全连接层:CNN中的输入层和输出层以连接的方式将两层之间全部的节点全部连接起来的网络层称之为全连接层,其起到的是对输入图像的数据在经过卷积以及池化操作后压缩的主要作用,并且依照压缩后获取的特征来完成CNN模型的分类任务。卷积神经网络的特点(1)局部感受野人们对外部世界的认知通常是从局部的一小部分区域再到整体区域的概况总结,恰好图像中的联系也是局部区域的像素点联系较为密切,对距离较远的像素点关联性较差,因此卷积神经网络的感知方式和人类的感知方式很像。CNN的每个神经元只需要对局部区域进行感知,并不用感知整体的图像,将局部区域感知到的信息在高层中整合就得到了图像整体的信息。卷积神经网络可以通过局部感受野降低参数的数目,如图2-3所示,输入的图像大小为1000*1000,如果隐含层的节点有106个,那么采用全连接方式的话,如图2-3左图它的权值参数则有1012个,而局部连接方式,如图2-3右图10*10大小的卷积核与每个神经元相连接,它的权值参数只有图2-3全连接和局部连接(2)权值共享虽然在局部连接操作后降低了一部分的参数,但总体来看模型的参数仍然汗多,因此需要通过权值共享来进一步地降低参数。在上述的局部连接中,权值参数是互为独立的,而权值共享可以理解为权值参数与输入图像的位置无关,无论隐含层中有多少个神经元,只要权值参数的权值是相同的那么这一部分的权值参数就能用到其他部分上,如果上述局部连接的每个神经元都是一样,那么108个权值参数就变为了只有100个。卷积神经网络结合这两种方法,从原来的1012循环神经网络在20世纪90年代Little提出的神经数学模型中的二元节点被美国学者JohnHopfield用于建立能够结合存储的神经网络,即Hopfield神经网络。虽然使用的二元节点在处理序列数据时不能得到很好的发挥,但是启发了学术界的学者们对循环神经网络的研究。在后续几年中,SeppHochreiter提出的长短期记忆神经网络[30](LSTM)解决了标准循环网络的长期依赖问题,并且根据LSTM网络提出了双向LSTM网络、门控循环单元网络[31]等神经网络。从而促进了循环神经网络的历史发展。循环神经网络结构如图2-4左图所示,与经典神经网络相对比,循环神经网络中的隐含层可以和各节点互相连接和自连接。循环神经网络隐含层的输入不仅与当前的输入层的输出层有关,而且与隐含层前一时刻的输出有关。如图2-4右图隐含层包含了2个输入。图2-4RNN网络结构及简化图如果将隐含层当前的输入按时间线进行展开,则循环神经网络如图2-5所示,在t时刻中除了RNN的第i层的神经元输入外,还有隐含层(t-1)时刻其自身的输出。因此循环神经网络的输出结果是受当前时刻的输入和之前所有时刻共同作用的结果,从而实现了对时间序列建模的目的。但是随着间隔不断地增大,RNN很容易产生“梯度消失”或“梯度爆炸”的问题,循环神经网络只能对信息的短期依赖关系建模,很难实现长期的依赖关系,长期依赖问题使循环神经网络不能得到广泛的应用。图2-5RNN时间线展开图LSTM网络结构LSTM是循环神经网络的特殊类型。如图2-6所示,LSTM网络中的单元结构含有一个Cell(细胞),Cell与三个门限结构相联系,门限分别是输入门、遗忘门和输出门,当信息输入到LSTM网络中,它可以根据输入的信息是否有用来判断该输入的信息是保留还是遗忘,它能很好地利用LSTM单元内部之间的联系来补足RNN的缺点,从而解决了标准循环神经网络的长期依赖问题,使得LSTM网络在语音识别、自然语言处理等与时间序列有关的领域得到了广泛的应用。图2-6LSTM单元结构LSTM网络结构特点循环神经网络都含有重复模块,在时间线展开简化图中,如图2-7(a)所示标准RNN网络的重复模块中结构简单只有单一的tanh[32]层,如图2-7(b)所示而LSTM网络的重复模块中含有四个交互层,包含了一个状态向量传输线和三个门限。其中,输入门决定了Cell存入的信息,先在sigmoid层更新需要的信息,然后在tanh层创建备选更新内容;遗忘门决定了输入的信息是否能够通过LSTM网络中的Cell,这是由遗忘门的sigmoid神经层来实现的,其输出的是0,1之间的一个数值向量,1表示“允许所有信息通过并且保留下来”、0表示“不允许任何信息通过并且完全遗忘”;输出门则决定了最后输出的信息。通过LSTM单元三个门限之间的相互结合,可以高效快速地将需要的信息进行保留并将无用信息遗忘,从而解决了标准循环神经网络的长期依赖问题。图2-7(a)标准循环神经网络的重复模块图2-7LSTM的重复模块连接时序分类器连接时序分类器[33](ConnectionistTemporalClassification,CTC)是由CravesAlex等人在二十世纪初期为了解决在实验时对实验数据进行标注的工程量问题而提出的。CTC主要用于语音识别领域[34],最初人们是制定规则来进行语音识别的,例如识别一段音频,文本的字符需要与音频的时间序列进行对齐,但是不同的人说话的语速不一样,因此制定的规则很难统一,文本的字符与音频的时间序列无法对齐,虽然可以手动调节字符在音频中的位置,但是数据量比较大的话那就需要花相当多的时间来进行这一项工作。而类似的问题也出现在数码管液晶数字识别中,由于数码管显示的数字字符长度不同,导致识别数码管的数字难以收敛。而恰好连接时序分类器能够很好地处理非对齐数码管液晶数字字符的识别任务。通过训练模型对输入数据的序列进行“学习”,并根据序列分布给出所有可能输出的结果,通过序列分布得到的结果输出最有可能的识别数据,这使得CTC在光学字符识别领域上得到广泛的应用。CTC的算法原理(1)对齐方式因为CTC的多个输入数据可以只对应一个标签,因此对输入输出之间的字符不用一一对其,只需知道输入和输出的对应关系就行了。但是这样的对齐方式存在两个问题,一是在语音识别时音频有些无声的部分也会有字符输出;二是无法准确地输出含有叠词的字符串,例如“h-h-e-l-l-l-o”本应该识别出的结果是“hello”,但是因为含有重复字符导致识别出的是“helo”。为了解决这个问题CTC算法通过引入新的占位符使得输入与输出对齐,如图2-8所示符号𝜖表示空白符号,在字符识别中的间距使用了该字符表示,在输出时将重复的字符和占位符舍去,非常合理地解决了输入与输出的对应关系。图2-8CTC具体流程(2)损失函数在训练模型时对输入数据的预测值与实际值之间的差值我们称之为损失,模型的好坏与损失值有关,损失越小则该模型越好,而计算该损失的函数就是损失函数。CTC算法的输入X和输出Y的关系可以用以下公式表示:pYY∗=而上述公式中pYX为最大化Y的后验概率,pt但是公式中的计算过程还是存有不足的,如图2-9(a)所示对于一个节点的输出,其包含有很多条路径,例如在时间长度为M的一个N分类任务中节点可能的输出路径就有MN条,这样计算每一条路径的话,模型的计算量就变得非常巨大。因此CTC算法通过采用动态规划算法的思想简化求解输出的计算过程,若从同一个节点输出到同样的输入节点,那么我们就将它们的路径看作一样的,将多条路径简化合并成一条,简化后如图图2-9CTC中的计算路径CTC的特点CTC算法主要包含以下特点:首先是CTC的假设条件独立中建立的,即每一时刻对节点的输入都是互相独立的。在光学字符识别中,每一时刻之间的输入都是含有语义信息关联的,因此在CTC中添加语言模型能够对模型的识别效果会有一定的提升;其次是CTC算法中的每一个输入X与输出Y之间存在单调对齐的约束,光学字符识别任务恰好与这一约束相符合;最后是CTC算法中输入的图像数据与输出标签存在多对一的映射关系,而光学字符识别任务的输入图像与输出标签也是多对一映射关系的。综合以上CTC算法的特点,因此在数码管液晶数字识别中使用CTC模型非常合适。第三章数码管液晶数字检测华南理工大学广州学院本科毕业设计(论文)数码管液晶数字检测CTPN[35]模型于2016年的文本检测论文中提出,直到现在这个网络框架仍然在OCR系统中得到广泛的应用,并对后续的文本检测算法(SegLink、EAST等)提供了新的一种思路。CTPN模型根据文本通常以水平直线的方式呈现以及字符之间存在一定的间隙的特点,实现了对文本字符较为精确地检测。其关键思想是对检测文本先拆分检测再整合,首先采用卷积神经网络将检测到的文本切分成n个候选框,接着对候选框进行分类判断框内的文本是否是一个类型,最后将同一类型的所有候选框合并,最后得到完整的检测文本。CTPN模型还引入双向LSTM网络结构,由于双向LSTM网络结构对序列上下文信息具有很强关联性,而文本的字符之间也具有很强的联系性,通过双向LSTM网络解决CTPN模型边界预测不准问题,以此提高该模型的性能。CTPN模型的网络结构CTPN模型主要采用的是CNN与RNN之间的互相结合,其中,卷积神经网络提取序列特征,循环神经网络对提取的序列特征进行识别检测,通过两者之间的无缝结合,使检测的准确度得到了提高。其中:(1)CNN卷积循环网络采用的是ResNet50模型,该模型采用了残差网络(ResidualNetwork)结构,该结构能够解决卷积神经网络在深层次中模型性能退化问题,其网络架构图如图3-1所示,ResNet50模型主要包含2部分:第一个是inputstem部分,该部分包括了卷积层和最大池化层,通过窗口尺寸大小为7*7,步长为2的卷积核对输入图像进行特征的提取,特征图的大小变为输入图像大小的一半,接着利用最大池化层使得图像的分辨率进一步的压缩。第二部分是对残差块的特征提取,该部分操作的基本思想是对输入特征图的通道数进行扩展以及对输入图像的压缩,在每一阶段中包含了1个下采样块和2个残差块,通过步长为2的卷积核压缩特征图的大小,在经过残差块时可以设置卷积的相关参数使得输入与输出的特征图大小保持一致,再利用相加处理避免了神经网络在深层次中的梯度消失或退化问题。图3-1ResNet网络构架(2)RNN如图3-2所示,CTPN在没引入RNN时,文本边界的候选框比较粗糙,文本附近的空白部分也被框选到候选框内,模型的性能较差。而检测的文本信息是由多个字符所构成的一个序列,检测的序列不是封闭、独立的,而是字符之间前后互相关联的,因此CTPN模型的循环神经网络是双向LSTM网络结构。在本文2.2.2节和2.2.3节已经对传统的LSTM网络进行了详细的介绍,传统的LSTM网络是单向的,输出的结果只与当前以及过去时刻有关。而在图像序列的识别任务中,我们需要用到过去时刻的数据同时也需要将来时刻关联的信息形成互补的关系。通过双向LSTM网络对连续字符之间的联系消除了CTPN模型的边界预测不准确的问题。图3-2CTPN目标检测效果实验环境与数据集实验环境本文实验使用的软硬件内容如表3.1所示。表格3SEQ表格\*ARABIC\s11实验平台名称类型性能硬件内存显卡中央处理器DDR41660Si5-9400f16G6G2.9GHz软件深度学习框架操作系统Pytorch、TensorFlowWindows————实验数据集制作及处理由于在网上没有公开的数据集,所以本文使用到的数据集都是自己制作的,数据集的具体制作及处理过程如下:该数据集主要由591张图像组成,其中用于训练的图片有541张,测试的图片50张,图片长度统一为3024,高度为4032,即3024*4032。这些图像主要有:对检测目标不用角度拍摄的照片、对检测目标改变字符串长度拍摄的照片以及在不同光线下进行拍摄的照片。在拍摄完照片之后,利用标注工具手动框选所有的照片的检测区域,在导出json文件后,利用文件内显示的图像坐标对每一张图片制作相应的文本标签,文本标签的内容以“X1,图3-3数据集图片CTPN模型的训练及分析训练细节本章训练采用ResNet50模型作为预训练权重参数,通过split_label对制作的数据集进行分割标签得到的新的图片和标签。利用制作出的新数据集和预训练模型在训练模型中进行文本检测训练,训练的图片名称和标签必须一致,该模型使用了adam算法进行优化。训练的主要参数设置有3部分:首先是最大迭代次数(epoch),当整个数据集的数据都在训练模型中训练了一遍则完成了一次迭代,训练模型每完成一次迭代都会得到一个新的模型,为后续检测主程序做准备;其次是学习率(Learningrate),训练出的模型性能与学习率有关,学习率设置大了学习速度快但容易出现损失值爆炸、振荡等现象,设置小了则学习速度和收敛速度较慢容易出现过拟合问题。学习率通常设置在0.01~0.00001之间,本次训练模型的学习率为0.00001,最后是BatchSize(批大小),模型的训练效果与BatchSize的大小也有关系,适当地增大BatchSize的大小能够提高梯度下降的准确性和内存的利用率,但盲目地增大可能会使得内存的容量承受不住,而且提高准确度所需要的时间也会边长,本次训练模型的BatchSize大小为1,在完成数据集的制作和训练模型的参数设置后就可以对模型进行训练了,最后将训练出的模型放到主程序中运行进行文本检测,根据检测绘制的坐标截取识别的文本为下一章文本识别做准备。模型的性能检测标准为了体现训练模型的性能,本节借鉴了Li[36]等人应用于车牌检测的评估标准提出了对数码管液晶数字检测的标准评估。(1)文本检测标准:Li等人在检测中提出了3个评估标准,分别是准确率和召回率和F值,利用这三个标准对CTPN模型检测出的结果进行评估,模型的准确率和召回率越高则表示该模型的性能越好,F值是综合准确率和召回率的标准。在数码管检测中,可以用公式(3-1,3-2,3-3)表示模型的准确率、召回率以及F值,假设测试集中含有50张检测图片,正确检测到数码管区域的有40个,此外还检测到20个区域并不是数码管,那么检测到的区域总数共60个,模型的准确率为66.6%、召回率为80%,F值为72.69%。准确率=召回率=检测到正确的数码管区域数F值=准确率∗召回率∗2模型的训练结果分析及比较为了检验CTPN模型在数码管液晶数字检测问题的有效性,通过Li等人提出的检测评估标准对该模型进行评估。CTPN模型采用ResNet50为预训练模型对制作的数据进行训练,在训练了10个epoch后,检测的部分结果如图3-4所示,按照3.3.2节的文本检测标准进行评估准确率在90%,召回率为100%,F值为94.7%,由于使用的是cup和硬件配置较差以及模型较大的原因,检测文本的所需时间平均在15秒左右。图3-4CTPN模型检测结果渐进式比例扩展网络[37](PSENet)是近年来新提出的一个检测网络,CTPN模型的检测效果与PSENet进行比较,在检测数码管的准确率、召回率等标准进行比较,两者的模型性能的都差不多。不同的是,CTPN与PSENet在检测速度上相比较,CTPN模型能够较快的检测出文本,在长短文本方面效果较好;CTPN检测文本的形状都是矩形的,PSENet能够检测弯曲和任何角度的文本检测。针对本文数码管液晶数字的检测,数码管在通常情况下不会有其他的形状都是矩形的,且显示的都是平行的长短文本。虽然PSENet能够检测比较复杂的文本,但结合数码管液晶数字检测的特点,CTPN模型更适用于数码管液晶数字检测中。本章小结针对数码管液晶数字的检测问题,本章采用了一种基于CTPN模型的数码管液晶数字检测的方案。首先对卷积递归神经网络的数码管液晶数字检测进行介绍,在第一节对文本检测的模型进行介绍,对文本检测的CTPN模型结构中重要的两部分的原理及其主要作用作出分析,同时介绍了模型的网络结构中各层参数;第二节介绍了本章数码管液晶数字检测使用到的实验环境和数据集的制作和处理过程;第三节介绍了训练模型中的细节和模型性能的评估标准,并利用这个标准对训练出的模型进行评估。并通过CTPN模型与PSENet效果进行比较得出更适用于数码管液晶数字检测的模型。总体来说,卷积递归神经网络的数码管液晶数字检测模型的平均检测的准确率达到了90%,召回率达到了100%,F值达到了94.7%。第四章数码管液晶数字识别华南理工大学广州学院本科毕业设计(论文)数码管液晶数字识别字符识别领域较为流行的是基于深度学习端对端的光学字符识别,该技术将字符的切割融入到字符识别中,不需要对字符进行分割这一环节,只需对字符识别的数据转化为序列的学习问题,虽然输入图像的尺寸大小和识别字符串的长度不同,但是通过CNN和RNN的操作处理后,再对输出的数据进行翻译就可以识别出输入图像的文本了。目前人们对端对端的OCR技术应用较为广泛的技术有CRNNOCR和attentionOCR。他们的网络结构采用的均是CNN+RNN,而这两种技术之间的主要区别在于如何处理神经网络提取到的特征信息在最后的输出层转化为预测结果,CRNN的对齐方式采用的是CTC算法,attention采取的则是attention机制。本章主要研究的是应用更加广泛的CRNN算法。CRNN-CTC模型是由卷积递归神经网络和连接时序分类器所构成的模型,该模型在自然场景文本识别[38]中得到广泛的应用。通过端对端的思想使得CRNN-CTC模型在输入与输出之间搭起一套能够承担识别任务的神经网络。CRNN模型的网络结构CRNN卷积循环神经网络如图4-1所示主要由CNN、RNN以及CTC共分为三部分组成:图4-1CRNN端对端数码管液晶数字识别网络结构(1)卷积层CRNN模型的卷积层采用的是VGG16[39]模型,其包含了标准CNN的卷积层和池化层,在图像输入到卷积循环神经网络后,卷积核对输入的图像进行特征的提取,因为卷积神经网络中的平移不变性使得卷积核能够在特征图从左到右、从上到下按顺序地提取特征序列,再通过池化操作对数据进行压缩。但是需要注意的是CRNN模型中训练的图像尺寸进行归一化,本章训练模型使用的图像尺寸为3*32*120。(2)循环层CRNN模型的循环层中采用了双向LSTM网络,利用提取的特征序列来预测序列中特征向量的标签分布。传统的LSTM网络是单向的,输出的结果只与当前以及过去时刻有关。而在图像序列的识别任务中,我们需要用到过去时刻的数据同时也需要将来时刻关联的信息形成互补的关系。因此本章采用了两个LSTM相结合如图4-2所示形成一个双向的LSTM网络结构,并且该网络结构中叠加多个双向LSTM网络结构使得提取的语义特征更加的高层次。在同一个神经网络中训练卷积层和循环层需要一层网络将这两层进行连接,而完成这一项任务的是自定义网络层“Map-to-Sequence”,该层的主要作用是将循环层输出的损失值通过反向传播映射成特征序列,最后将得到的特征序列反馈回卷积层。与传统的单个字符识别算法相比较,CRNN的循环层在获取字符序列之间信息能力上较强,可以通过字符串中字符之间的关联信息进行字符串识别,能够使模型的识别性能得到显著的提升。图4-2双向LSTM网络时间线展开图(3)转录层CRNN模型的转录层将循环层中预测每一时刻的标签转化成标签分布,根据循环层获取的标签分布进行重整合等操作,在操作后转化为最终的识别结果。转录层采用的是连接时序分类器,CTC模型的算法原理及特点已经在2.3.1节和2.3.2节中进行了介绍,对于最终输出的序列标签。本章采用的CRNN卷积循环神经网络结构参数如图4-3所示,可以从图3-4中看出,第一到第六个卷积层(C1~C6)中,卷积核的配置均保持一致,尺寸大小为3*3,步长为2、边界像素填充方式为Same,而第七个卷积层的卷积核尺寸大小为2*2,步长为1、边界像素填充方式为Valid。池化层采用的是最大池化层,第一二个池化层的池化窗口尺寸大小为2*2,步长为2,特征图的大小变为输入图像大小的一半,第三四个池化层与第一二个池化层的参数基本一样,但是池化窗口尺寸大小改为了为1*2,采用的并不是传统方形的池化窗口,通过改变池化窗口的尺寸大小使得特征图的宽度变得更大,使得特征序列更长。CRNN模型输入通道数为3、高为32、宽为120的图像,即输入图像尺寸为3*32*120。输入的图像通过卷积层以及最大池化层操作后得到512个1*8的特征图。在CRNN模型的卷积层中提取、压缩得到的特征向量作为输出通过自定义网络层输入到循环层,循环层中包含了两个双向LSTM网络,每个双向LSTM中隐含层的节点数为256,对输入的特征向量进行预测得到标签的概率分布。最后对循环层获取的标签分布进行重整合等操作,在操作后转化为数码管液晶数字字符最终的预测结果。图4-3CRNN卷积循环神经网络结构参数实验数据集制作及处理数据集的制作由于在网上没有公开的数据集,所以本文使用到的数据集都是自己制作的,本次共制作了2个数据集,分别是:数码管液晶数字识别模拟数据集、数码管液晶数字真实数据集。(1)数码管液晶数字识别模拟数据集:该数据集如图4-4所示主要由20000张模拟的图像组成,其中包含了18000张训练图片,200张测试图片,图像的尺寸大小为120*32。首先我们需要了解数码管的特点,数码管显示的文本主要由字符数字0到9、负号以及小数点构成,即共有12个字符类型,通过设置固定的字体、图像尺寸大小以及写入图像的内容,在规定的图像内随机生成背景颜色不同的字符串,图像的每个位置既可以是数字也可以是符号,利用模拟的图像来模拟数码管液晶数字图4-4模拟数据集(2)数码管液晶数字真实数据集:该数据集如图4-5所示主要由500张真实照片以及1500张添加了干扰因素的照片组成,其中包含了1800张训练图片,200张测试图片,图像的尺寸大小为120*32。通过人工手动处理拍摄的图片,对图片识别的区域进行裁剪、统一图像的尺寸大小,通过人工处理完之后对数据集进行预处理。图4-5真实数据集数据集的预处理因为在现实生活中识别数码管液晶数字会受到光照、污渍、拍摄角度等干扰因素影响使得识别的图像不会像模拟的数码管液晶数字那么清晰、整齐。为了能够更好地模拟在自然场景中的数码管图像,我们通过图像修改工具对图像随机加入添加高斯噪声、高斯模糊等处理来模拟数码管,最后将处理好的图片如表4.1所示,按10:1的比例分为训练集和测试集并对每一张照片名字和对应的内容做了文本标签,本文标签为“样本名称+样本内容”进行标注。在划分好训练集和测试集后使用lmdb将数据集的图片和标签转化为两个lmdb文件,为CRNN+CTC模型的训练做好准备。表4.1预处理图片原样本图片噪声处理后图片模糊处理后图片CRNN模型训练及分析训练细节CRNN-CTC模型中使用到的硬件环境需要配置warp_ctc,wrap_ctc目前不支持Windows系统,本章选择通过安装在Windows系统下安装Ubuntu子系统,该子系统能够在不改变本机系统的同时也能够进行Ubuntu系统的操作,唯一不足的就是只能使用CPU进行训练,相比使用GPU训练模型CPU训练的所需时间会长很多。在训练模型之前,准备的数据集必须注意的是输入的样本图片的尺寸大小要一致,图片的宽度可以随意调整,但是图片的高度必须是32。利用Getlmdb将制作的原始数据集转化为lmdb格式文件为后续训练识别文本模型做准备,在转换lmdb文件时由于版本问题使用python3运行会显示运行异常但是在python2版本运行就能够正常进行格式的转换。对CRNN-CTC模型进行训练时,使用了ADADELTA优化方法进行网络的优化,在训练之前需要对训练模型的参数进行设置,主要参数的作用在第三章CTPN模型的训练细节中已经作出了介绍,本章训练模型的最大迭代次数设置为1000,经过多次训练得出初始的学习率为0.0001较为合适,BatchSize(批大小)为32,在完成好模型参数设置后分别对制作出的两个数据集进行训练,在经过20个epoch后模拟数据集训练的模型accuracy(准确率)最佳正确率达到了92%,而真实数据集在训练了70个epoch后accuracy(准确率)最佳正确率达到了90%,最后将识别的文本图片和训练出的模型放入到文本识别主程序中进行文本识别,训练出的模型效果总的来说还算成功,识别文本的平均所需时间达到了0.2秒左右。模型的性能识别标准为了体现训练模型的性能,本节同样借鉴了Li等人应用于车牌识别的评估标准提出对数码管液晶数字识别的标准评估:文本识别评估标准主要包含两部分,分别是数码管识别准确率和字符识别准确率。数码管识别准确率可以定义为正确识别到的数码管的个数与数码管图片总数的比值,其中,正确识别到的数码管是指数码管内显示的字符和符号都要识别正确,只要有一个字符和符号识别错、识别多了或识别少了都不能看作为正确识别到的数码管。字符识别准确率则可以定义为正确识别到的字符数与识别的总字符数的比值,我们可以用公式(4-1,4-2)这两个准确率来表示文本识别的评估标准。数码管识别准确率=正确识别到的数码管的个数数码管图片总数的比值×100%字符识别准确率=正确识别到的字符数识别的总字符数×100%模型的训练结果及分析为了检验卷积递归神经网络的数码管液晶数字识别模型在数码管液晶数字识别问题的有效性,通过Li等人提出的识别评估标准对该模型进行评估。CRNN模型分别对模拟数据集和真实数据集进行训练,模拟数据集在训练了20个epoch后acc准确率从一开始的0达到0.92左右;真实数据集在训练了70个epoch后acc准确率从一开始的0达到0.9左右,与模拟图像相比,自然场景中的图像的准确率略低而且由于数据集的样本较少暂时只能识别固定长度的字符,识别的部分结果如图3-7所示。按照文本识别标准进行评估,表4.2所示前四行为模拟数据集训练出模型识别的结果,按照3.3.2节的文本识别标准进行评估由于放入图片较少模拟数据集的数码管识别准确率为75%,但实际的准确率为92%,字符识别准确率为97.5%,如表3.2所示后4行为真实数据集训练出模型识别的结果,真实数据集的数码管识别准确率为75%,但是实际的准确率为90%,字符识别准确率为95.6%。表4.2数码管液晶数字识别结果图片中间处理过程预测结果真实结果-0-0-4--4-882-660-440044826040044802604-0-0-3--6-0-4499-1--8-400360491840036049184-0-0-44-2-11-9-7-9-66-800421979680042197968-0-0-3--4-7-11-5-0--2-900347150290034715029111666666..11166.1-166.111133666..44136.4-136.4222222844...99284.9284.9444-444333666..7774436.7436.7数码管识别整体效果分析与比较结合第三章文本检测的CTPN模型和本章文本识别的CRNN-CTC模型,通过文本检测绘制出特定的区域轮廓,对检测到的该区域进行提取,利用文本检测到的目标放入到CRNN-CTC模型中进行识别具体流程如图4-6。图4-6数码管液晶数字识别具体流程整体效果如表4.3所示,可以看出识别定长数码管液晶数字的整体效果还是可以的根据个人随机取样统计整体模型的准确率在90%左右,由于文本检测所需时间较长,整体的识别所需时间在15秒左右,但是与最新提出的超轻量级OCR识别chineseocr_lite相比,该项目使用了轻量级的主干网络PSENet和CRNN模型。在同样使用CPU进行检测识别的情况下,CRNN-CTC+CTPN模型的检测识别速度还是较快些,而chineseocr_lite的优势在于在识别的效果上能够进行多行、多方向对文本检测识别的同时,该模型整体的大小也比CRNN-CTC+CTPN小很多,识别的文本行也不单单是矩形,chineseocr_lite能够对弯曲的文本进行识别。而CRNN-CTC+CTPN模型目前只能做的识别一行,与目前最新的chineseocr_lite进行相比还是略为逊色些。但在是数码管液晶数字检测识别任务中,识别的液晶数字文本是单行平行文本,CRNN-CTC+CTPN模型和chineseocr_lite的文本识别效果相差不大,CRNN-CTC+CTPN模型在检测速度上还略微快些。如果检测识别的是弯曲的、竖直的文本,这两者模型之间的识别效果就会有较为明显的差距,这也是本项目将来重点的研究方向。表4.3数码管液晶数字识别整体效果输入图像文本检测结果检测输出的图像预测结果真实结果-636.9-636.9239.8239.8333.3333.3本章小结针对数码管液晶数字的识别问题,本章采用了一种基于卷积递归神经网络的数码管液晶数字识别的方法。首先在第一节对文本识别的模型进行介绍,对文本识别的CRNN网络结构中重要的三部分的原理及其主要作用作出分析,同时介绍了网络结构中各层的参数;第二节介绍了本章数码管液晶数字识别使用到的两个数据集的制作和处理过程;第三节介绍了训练模型中的细节和模型性能的评估标准,并利用这个标准对训练出的模型进行评估。该模型的平均数码管液晶数字识别的准确率达到了91%,平均字符识别的准确率达到了96.55%。并对整体的识别效果与最近提出的超轻量级OCR识别chineseocr_lite的效果进行比较,在数码管液晶数字识别任务中两者识别效果相差不大,但是通过比较得出本设计的不足之处以及往后研究的方向。第五章总结与展望华南理工大学广州学院本科毕业设计(论文)总结与展望总结本文针对数码管液晶数字识别的问题。在了解到识别技术在各领域得到显著的效果后,结合各神经网络的相关模型原理及特点。首先通过检测模型对数码管图像进行文本检测、提取得到识别图像,再利用卷积递归神经网络对数码管液晶数字识别进行的研究。通过对其他文献的研究并结合自己的理解,对数码管液晶数字识别研究得到成果汇报如下:(1)基于卷积递归神经网络在国内外得到广泛的应用,并通过其他领域的实际案例对其原理进行理解。(2)基于卷积递归神经网络的网络结构设计,对其网络中使用到的神经网络结构与特点作出详细的介绍。(3)根据数码管液晶数字识别在自然场景中不能对特定区域进行识别的问题,针对数码管检测问题,采用了基于CTPN模型的数码管液晶数字检测方法进行检测,并对检测的文本进行标准评估,并且和PSENet检测效果进行分析比较。(4)针对数码管液晶数字的识别问题,采用了卷积递归神经网络的数码管液晶数字识别方法对文本进行识别和标准评估,最后将CTPN模型和CRNN+CTC模型相结合并且和chineseocr_lite进行效果比较。展望及存在问题本设计总体来说还算成功,在检测和识别方面都取得了一点小成绩,但是还是存在一些缺陷,需要在未来实践的过程中进行完善。为了提高模型性能,以后着重的研究方向有以下几点:(1)目前的识别只能对定长的数码管液晶数字进行识别,通过增大数据集数量以及优化网络结构,使得模型能够对不定长的数码管液晶数字进行识别。(2)可以结合到手机移动端中,通过手机拍摄数码管对液晶数字进行识别,使用起来更加的方便。(3)对多行的文本进行检测识别,进一步的提高模型的性能。参考文献参考文献[1]KrizhevskyA,SutskeverI,HintonG.ImageNetClassificationwithDeepConvolutionalNeuralNetworks[C]//NIPS.CurranAssociatesInc.2012.[2]R.B.Girshick,J.Donahue,T.Darrell,andJ.Malik.Richfeaturehierarchiesforaccurateobjectdetectionandsemanticsegmentation.InCVPR,2014.1,3[3]KrizhevskyA,SutskeverI,HintonG.ImageNetClassificationwithDeepConvolutionalNeuralNetworks[C]//NIPS.CurranAssociatesInc.2012.[4]BissaccoA,CumminsM,NetzerY,etal.PhotoOCR:ReadingTextinUncontrolledConditions[C]//IEEEInternationalConferenceonComputerVision.IEEE,2013.[5]朱群雄,孙锋.RNN神经网络的应用研究[J].北京化工大学学报(自然科学版),1998(01):88-92.[6]A.Graves,M.Liwicki,S.Fernandez,R.Bertolami,H.Bunke,andJ.Schmidhuber.Anovelconnectionistsystemforunconstrainedhandwritingrecognition.PAMI,31(5):855–868,2009.2[7]B.SuandS.Lu.Accuratescenetextrecognitionbasedonrecurrentneuralnetwork.InACCV,2014.2,6,7.[8]艾玲梅,叶雪娜.基于循环卷积神经网络的目标检测与分类[J].计算机技术与发展,2018,28(02):31-35.[9]Russell,StuartJ.ArtificialIntelligence:AModernApproach[M].2002.[10]于海跃,王晓飞.工厂仪表数码管数字的识别[J].电子世界,2019(08):140-142.[11]周宇杰.深度学习在图像识别领域的应用现状与优势[J].中国安防,2016,(07):75-78.[12]王继成.计算机图像处理技术的探析[J].信息记录材料,2018,019(003):69-71.[13]周飞燕,金林鹏,董军.卷积神经网络研究综述[J].计算机学报,2017,40(6):1230-1253.[14]DengJ,DongW,SocherR,etal.Imagenet:Alarge-scalehierarchicalimagedatabase[C]//2009IEEEComputerSocietyConferenceonComputerVisionandPatternRecognition(CVPR2009),20-25June2009,Miami,Florida,USA.IEEE,2009.[15]沈庭芝,方子文.数字图像处理及模式识别[M].1998.[16]JianboShi,Malik,J.Normalizedcutsandimagesegmentation[J].IEEETrans.patternAell,22(8):888-905.[17]?ivindDueTrier,JainAK,TaxtT.Featureextractionmethodsforcharacterrecognition-Asurvey[J].PatternRecognition:TheJournalofthePatternRecognitionSociety,1996,29(4):641-662.[18]张家怡.图像识别的技术现状和发展趋势[J].电脑知识与技术(21):395-396.[19]孙增辉.基于递归卷积网络的手写及场景文本识别的研究[D].华南理工大学,2018.[20]黄攀.基于深度学习的自然场景文字识别[D].浙江大学,2016.[21]W.ZHAO,R.CHELLAPPA,P.J.PHILLIPS,等.FaceRecognition:ALiteratureSurvey[J].AcmComputingSurveys,35(4):p.399-459.[22]马俊莉,莫玉龙,王明祥.一种基于改进模板匹配的车牌字符识别方法[J].小型微型计算机系统,2003,24(9).[23]Anagnostopoulos,C.N.E,Anagnostopoulos,I.E,Loumos,V,等.ALicensePlate-RecognitionAlgorithmforIntelligentTransportationSystemApplications[J].IEEETransactionsonIntelligentTransportationSystems,7(3):377-392.[24]ShiB,BaiX,YaoC.AnEnd-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论