网络图像的文本检测

 2022-05-14 07:05

论文总字数:38528字

\documentclass[bachelor,nocolorlinks, printoneside]{seuthesis}

\usepackage{CJK,CJKnumb}

\usepackage{amsmath}

\usepackage{amsfonts}

\usepackage{bm}

\usepackage{algorithm}

\usepackage{algorithmicx}

\usepackage{algpseudocode}

\usepackage{subfigure}

\usepackage{amssymb,amsthm}

\usepackage{listings}

\usepackage{setspace}

\usepackage[framed,numbered,autolinebreaks,useliterate]{mcode}

\newtheorem{thm}{定理}[section]

\newtheorem{defn}{定义}[section]

\newtheorem{lemma}{引理}[section]

\newtheorem{prop}{命题}[section]

\newtheorem{rem}{备注}[section]

\floatname{algorithm}{算法}

\renewcommand{\algorithmicrequire}{\textbf{输入:}}

\renewcommand{\algorithmicensure}{\textbf{输出:}}

\setlength{\baselineskip}{22pt}

\begin{document}

\categorynumber{000}

\UDC{000}

\secretlevel{公开}

\studentid{07115109}

\title{网络图像的文本检测}{}{Text Detection of Network Image}{subtitle}

\author{刘安琪}{Anqi LIU}

\advisor{赵璇} {Xuan Zhao}

\defenddate{答辩日期}

\authorizedate{学位授予日期}

\department{数学}{department name}

\duration{2019年1月1日—2019年5月30日}

\address{东南大学李文正图书馆数学学院}

\maketitle

\begin{abstract}{深度学习计算机视觉,OCR,网络图像中的文本检测与识别,字体分割,路径选择,图像增强

}

本文基于传统OCR技术框架研究改进深度学习文字检测及识别系统。对于传统图像文本检测方法,通过灰度聚类等特征提取方法,批量标准化处理对数据集进行预处理,运用核密度估计及分水岭算法进行图片切割及背景去除使得系统能够很好地应对复杂背景的文字切割。同时结合了语言模型,由Viterbi—Beam Search算法动态规划得到最优的识别组合,大大提高了文字识别准确度。\\

对于深度学习的图像识别的实验部分,运用EAST等检测算法,同时对比分析了基于VGG16和MobileNets的优劣。在给出的测试集中,使用快速局域感知NMS提高识别正确率。然后,对检测出的字符区域进行RCNN-CTC网络的识别分别得到0.478和0.624的F1-Score。经检验,模型识别率和召回率均得到了显著的提升且在显著性检测方面绘制了PR-curve 曲线图进行对比。\\

最后根据像素分类器指标和识别评价指标对模型进行评价,从基于UNet的损失函数的改进,边缘检测长边检测预测的准确度及图像增强三个方面对模型提出改进。

\end{abstract}

\begin{englishabstract}{Deep learning computer vision, OCR, Text detection and recognition in Network Images, Font segmentation, Path selection, Image enhancement}

Based on the traditional OCR technology framework, this paper studies and improves the text detection and recognition system of in-depth learning. For the traditional image text detection method, the system can deal with the text cutting of complex background well by gray clustering and other feature extraction methods, batch standardization processing to preprocess the data set, image cutting and background removal using kernel density estimation and watershed algorithm. At the same time, combined with language model, the best combination of recognition is obtained by dynamic programming of Viterbi-Beam Search algorithm, which greatly improves the accuracy of text recognition.\\

For the experimental part of image recognition based on in-depth learning, EAST and other detection algorithms are used, and the advantages and disadvantages of VGG16 and MobileNets are compared and analyzed. In the given test set, fast local sensing NMS is used to improve the recognition accuracy. Then, the detected character regions are identified by RCNN-CTC network and the F1-Score of 0.478 and 0.624 are obtained respectively. After testing, the MAE (mean absolute error) between the image and the truth map in the detection standard database has been obtained, and the PR-curve curve has been drawn.\\

Finally, the model is evaluated according to the index of pixel classifier and the index of recognition. The model is improved from three aspects: the improvement of loss function based on UNet, the accuracy of edge detection and prediction, and image enhancement.

\end{englishabstract}

\tableofcontents

\begin{Main}

\chapter{绪论}

\section{研究背景}

\par{在近几年大量带标签数据集的产生以及计算机算力得到大幅度提升的背景下迅速发展,深度学习神经网络在计算机视觉中的应用也是大放异彩,各种深度学习网络框架呼之欲出。数字化时代每天都会在网络上产生成千上万张网络图片,由于图片中的文本种类繁多,网络平台不容易给这些图片进行分类,同时也给政府的监管工作带来麻烦。动用人力来对图片进行归类和文字识别需要耗费大量时间和精力。因此, 网络文本识别技术能够帮助维护良好的网购环境,保障消费者权益,有着重要的研究意义和实用价值。\\

本文利用padlepadle及Tensorflow,搭建深度学习网络模型,利用数据集对模型进行训练、优化,利用优化后的传统OCR模型和改进的深度学习模型对网络图像及场景文字进行文字检测与识别。

}

\subsection{研究基础}

\par{关于文本检测,这是计算机视觉的一个领域。为了建立文本检测,首先要了解对象本地化。对于图像分类任务,其中一个算法查看这张图片,并可能负责说这是文本图片,这就是分类。网络中构建来解决这个图像后面的问题是用本地化进行分类,这意味着不仅要给这个图片贴上文本的标签,而且算法也要负责放置边界框,或在图像中文本位置周围绘制红色矩形,这就是所谓的本地化分类问题,是指弄清楚文字在照片中的位置。 现在图片中可能有多个对象,必须检测所有对象并将其本地化。如果是在复杂背景下做这项工作,那么可能不仅需要检测其他文字,还需要检测其他物品。本地化问题的分类和分类通常有一个对象,试图识别和定位一个物体的图像。但是在检测问题中可能有多个对象。事实上,在一张图片中,甚至可能有多个不同类别的对象。因此,图像分类思想对于本地化分类很有用。}

\par{在图像分类问题中,可以将图片输入confnet层产生一个向量特征,它被输入到一个输出预测子句的SoftMax单元。因此,如果你正在建造一辆自动驾驶的汽车,对象类别可能有行人、汽车、摩托车或背景。所以如果没有行人,没有汽车,没有摩托车,然后可能有一个输出背景。这些是您的类,它们的SoftMax可能有四个输出,这是标准的分类问题。如果你想把车定位在图片中,要做到这一点,可以改变神经网络,让更多的输出单元输出一个边界框。给出边界框之后,可以使用监督学习使算法不仅输出一个类标签,输出四个参数,告诉我们检测到的对象的边界框在哪里。}

\subsection{理论研究意义和实际应用价值}

\par{。计算机视觉是目前快速发展的领域之一,深度学习的计算机视觉现在能帮助自动驾驶汽车判断其周围的其他汽车和行人的位置以躲避他们,也使面部识别比从前任何时候都要好。我们中的一部分人也许很快或已经能使用面部识别解锁手机甚至打开门 如果你查看一下你的手机,我相信会有很多应用为你们展示食物的图片,酒店的图片或一些有趣的风景图片。部分开发这些应用的公司正使用深度学习向你展示最具吸引力,最美或最相关的图片。我认为深度学习甚至催生了新的艺术形式 ,因此我认为计算机视觉的深度学习吸引了我也许也能吸引大家的原因主要有两个:首先计算机视觉的急速发展能产生全新的应用,而这在几年前是不可能的。通过学习这些技术,也许你将能够发明这些新产品和应用 ;第二个原因 即使你最终没能亲身开发计算机视觉系统,在产生新的神经网络架构和算法的方面 实际上也启发产生了许多与其他领域的交叉。

}

\section{文献综述}

复杂背景及场景文本的检测与识别一直是计算机视觉领域的研究热点。传统方法依赖于人工设计的功能,基于笔划宽度变换\cite{1}和最大稳定极值区域\cite{2}的方法最先被提出应用于文字识别和字符切割领域。张等人\cite{3}利用文本的局部对称性,设计了文本区域检测的各种功能。Fastext\cite{4}是一个快速文本检测系统,它应用于快速关键点检测仪。黄等人\cite{5}首先使用MSER找到候选项,然后使用深度卷积网络作为强分类器。贾德伯格等人\cite{6}以滑动窗口的方式扫描图像,卷积神经网络(ConvNet) 和滑动窗口(sliding windows)检测的算法进行目标检测。但是滑动窗口检测有一个很大的缺点就是它的计算成本。因为裁剪出了很多不同的正方形的图像并让每个图像都单独通过卷积神经网络的运算。如果使用了一个不密集的步长,一个很大的步长那么通过卷积神经网络的窗口数量会减少但是比较粗糙的颗粒度会影响算法表现 而如果你用了比较精细的颗粒度也就是很小的步长,那么这些小区域的数量会巨大,将他们全部通过卷积神经网络意味着很高的计算成本。很小的步长最终很难在图像中精确地定位到目标,幸运的是,这个计算成本的问题有一个很好的解决方案更确切地说,滑动窗口目标检测器 可以用卷积的形式(convolutionally)来更高效地实现。田等\cite{7}开发了垂直锚并构建了一个CNN-RNN联合模型来检测水平文本行。与这些方法不同,张等人\cite{8}建议使用FCN\cite{9}生成热图,并使用分量投影进行方向估计。这些方法在标准基准上取得了优异的性能。然而它们主要由多个阶段和组成部分组成,例如通过过滤后的假阳性去除、候选聚合、线条形成和单词匹配,许多阶段和组件可能需要彻底的调优,从而导致次优性能,并增加整个通道的处理时间。周等人在\cite{10}中,设计了一个基于深度FCN的管道,它直接针对文本检测的最终目标:字或文本行级别检测。该模型放弃了不必要的中间组件和步骤,并允许端到端的培训和优化。结果系统配备了一个单独的、轻量化的神经网络,在性能和速度上都明显优于以前的所有方法。\cite{11} RussGirshik提出了快速的R-CNN算法,它基本上是R-CNN算法,但带有滑动窗口的卷积实现。因此,最初的实现实际上会一次对区域进行一个分类。到目前为止,R-CNN使用了滑动窗口的卷积实现,这让R-CNN的速度加快了不少。结果表明,快速R-CNN算法的一个问题是提出区域的聚类步骤仍然很慢。W. Liu\cite{12}等人提出了一种利用单深度神经网络检测图像中物体的方法,简称为称为ssd,它将边界框的输出空间离散为一组默认框,这些框具有不同的纵横比和每个要素地图位置的比例。 与其他单级方法相比,SSD具有更好的精度,即使输入图像尺寸较小,超过了相对先进的更快的R-CNN模型。之后\cite{13}J. Redmon等人介绍了一种新的目标检测方法Yolo,在计算上更有效率而且可以精确输出边界框的问题 YOLO算法就是一个比较好的能精确输出边界框的算法 YOLO的全称是You Only Look Once 这个算法是由Joseph Redmon Santosh Divvala、RossGirshick和AliFarhadi提出,事实上YOLO算法的一个好处也是它一直很流行的原因是它是通过卷积实现的 它实际上运行起来非常快 所以它甚至可以运用在实时的目标识别上。

\cite{14}目前比较先进的物体检测网络依靠区域建议算法来假设物体的位置。SPPNET和快速R-CNN等技术的进步减少了这些检测网络的运行时间,使区域预测计算成为一个瓶颈。\cite{15} RPN是一个完全卷积的网络,它同时预测每个位置的对象边界和对象得分。RPN经过端到端的培训,生成高质量的区域建议,由快速R-CNN检测。执行区域建议的方法是运行一个称为分段算法的算法,该算法在右侧产生这个输出,以便找出可能是对象的内容。例如,分割算法要做的是找到大约2000个点,并在大约2000个点周围放置边界框,只在那些2000个点上计算交叉熵,相比于在每个位置运行整个图像这可能是一个小得多的区域。事实证明R-CNN算法仍然很慢,所以有一系列的工作来探索如何加速这个算法。因此,基本的R-CNN算法与所提出的区域采用某种算法,对于每个区域输出标签。通过简单的交替优化,RPN和快速的R-CNN可以被训练来共享卷积特征。Chatfield\cite{16}提出了一种简单且可扩展的检测算法,其方法结合了两个关键的观点:(1)一种方法可以将大容量卷积神经网络(CNN)应用到自下而上的区域方案中,以便对对象进行定位和分段。

\cite{17}J. Uijlings等人讨论了生成对象识别中可能使用的对象地址的问题,介绍了选择性搜索,它结合了详尽搜索和细分的优势。与全面搜索相比,位置数量的减少使得能够使用更强的机器学习技术和更强的外观模型进行对象识别。\\

如果参考物体探测文献,有一套叫做区域建议的想法,对计算机视觉也有很大的影响。如果回忆起滑动窗口的想法,可以卷积地运行算法,但是算法的一个缺点是它只是交叉激发了很多明显没有对象的区域。因此,本文中引用的Russ Girshik、Jeff Donahue、Trevor Darrell和Jitendra Malik\cite{18}提出的是一种称为R-CNN的算法,它所做的就是只选择几个有意义的区域来管理,与其在每个窗口上运行滑动窗口,不如只选择几个窗口,在几个窗口上运行CrossFire。R-CNN算法的一个缺点是它实际上非常慢,多年来,R-CNN算法有了一些改进。邵庆仁、开明和、罗斯·吉希克和简森\cite{19},提出了更快的R-CNN算法,它使用卷积神经网络而不是传统的分割算法。Rithms在这些区域上提出了一个blob,最终运行速度比快速的r-cnn算法快得多。虽然,我认为R-CNN算法更快,但大多数实现通常还是比Yolo算法慢一点。因此,区域建议想法在计算机视觉领域有着相当大的影响。\\

目前性能最好的对象检测器采用检测方案来指导对象搜索,从而避免在图像之间进行详尽的滑动窗口搜索。尽管检测方案的普及和广泛使用,但在目标检测过程中使用它们时要权衡哪些是不清楚的。我们对12种提案方法进行了深入分析,并对提案重复性、Pascal、Imagenet和MS Coco上的地面实况注释调用以及它们对DPM、R-CNN和快速R-CNN检测性能的影响进行了四条基线。我们的分析表明,对于目标检测,提高建议的定位精度与提高召回率同样重要。我们引入了一个新的度量,即平均召回(ar),它既奖励高召回,也奖励良好的本地化,并与检测性能惊人地相关。我们的研究结果显示了现有方法的共同优点和缺点,并为选择和调整建议方法提供了见解和指标。

\cite{20}Y. LeCun等人提出了一种反向传播网络在手写数字识别中的应用。数据的最小预处理是必需的,但是网络的体系结构是高度受限的,并且专门为任务设计的。网络的输入由独立数字的标准化图像组成。该方法在提供的zipcode数字上有1\%的错误率和大约9\%的拒绝率。为了解决像素的分割问题,\cite{21}提出了一种新的渐进式规模扩展网络(PSENET),它是一种基于分段的检测器。这种方法能够有效地区分相邻的文本实例,并且对任意形状都具有鲁棒性。在文本识别方面\cite{22}提供了一个端到端的车牌检测和识别管道,以及新的深度CNN,不仅计算成本低,而且在几个基准上优于竞争方法,在现有的基准上进行了一些实验,并取得了领先的结果。CNN经过训练并进行微调,使其在不同条件下(例如姿势、灯光、遮挡等方面的变化,并且可以跨多种方式工作。\\

\chapter{网络及自然场景中的文本检测及识别方法}

\section{传统OCR技术框架}

\par{

定位图片中的文字区域因受到图片拍摄质量和类文字背景的干扰,使得检测结果中包含非常多的非文字区域,而目前从候选区域区分出真正文字区域主要两种方法,用规则判断或轻量级的神经网络模型进行区分。\\

下面介绍基于传统OCR框架处理网络图像文字识别: 分割出单字后接着用分类器进行识别,并在这步基于统计上的先验信息定义了一个简单的优化函数,可看做语言模型。因假定各状态相互独立并与上一状态没有联系,故不可避免存在语义上的错误。而如何基于现有的输出序列,对序列进行语义上的修正,最直观的想法就是用隐马尔可夫模型(HiddenMarkovModel,HMM) 。在给定O序列情况下,通过维特比算法,找出最优序列S。

}

\subsection{基本流程}

\par{

预处理$

\rightarrow

$

降噪(滤波,光照处理)$

\rightarrow

$

图像增强$

剩余内容已隐藏,请支付后下载全文,论文总字数:38528字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;