复杂场景下基于CTPN的离线文本快速检测技术研究毕业论文
2021-11-06 23:23:33
摘 要
我们的身边每天都有大量的图片信息需要我们去挖掘理解。自然场景图片当中的文本常常是呈不规则方向排列的,与图片中其他要素的区分边界也不是那么明显。在这个数据爆发的新时代,深度学习技术成为了目标检测的一个强有力工具,它通过构建深层网络来学习图片的高层特征,帮助我们进行文字检测提取。
本课题编程实现了一个基于CTPN的复杂场景文本检测程序,输入的图片首先通过VGG网络提取空间特征,然后进行文本区域提取,该部分方法是滑动窗口法结合LSTM神经网络实现,最后把检测到的文本框合并。
本课题以Tensorflow为深度学习库,以Python作为开发语言,完成了文本检测模型的编程工作,对于输入的图像,能够输出检测文本框在图像当中的坐标以及文本框的置信度,并且在原图中画出文本框。
关键词:深度学习;卷积神经网络;文字检测
Abstract
There are a lot of picture information around us every day that we need to dig and understand. The text in the natural scene image is often arranged in an irregular direction, and the distinction between the text and other elements in the image is not so obvious. In this new era of data explosion, deep learning technology has become a powerful tool for target detection. It can learn the high-level features of images by building a deep network, and help us to detect and extract text.
In this paper, a ctpn based text detection program for complex scenes is programmed. Firstly, the input image is extracted by VGG network, and then the text area is extracted. This part of the method is realized by sliding window method combined with LSTM neural network. Finally, the detected text box is combined.
In this project, tensorflow is used as the deep learning library, Python is used as the development language to complete the programming of the text detection model. For the input image, it can output the coordinates of the detection text box in the image and the confidence of the text box, and draw the text box in the original image.
Key words:deep learning;convolutional neural network;text detection
目录
摘要 I
Abstract II
第1章 绪论 1
1.1 选题背景 1
1.2 研究的目的及意义 1
1.3 国内外研究及现状 1
1.4 研究内容及组织形式 2
第2章 开发工具及介绍 4
2.1 Tensorflow简介 4
2.2 Anaconda简介 4
2.3 Spyder简介 5
2.4 本章小结 5
第3章 CTPN文字检测算法原理 6
3.1 CTPN算法结构 6
3.2 特征提取模块 6
3.3 文本区域提取模块 7
3.4 序列特征编码模块 9
3.5 文本框构造 10
3.6 本章小结 11
第4章 程序实现及分析 12
4.1 VGGnet提取特征 12
4.2 文本区域提取 13
4.2.1 anchors生成 13
4.2.2 BLSTM序列特征编码 14
4.2.3 文本框proposals生成 14
4.3 文本框合并 15
4.4 本章小结 16
第5章 总结和展望 17
5.1 总结 17
5.2 展望 18
参考文献 19
致谢 20
第1章 绪论
1.1 选题背景
在生活中,我们每天都通过自己的双眼接受到大量的图像信息,例如电器标签、购物发票、张贴的海报等,而往往我们所关注的就是这些图片里面的文字信息。随着人类科技技术的进步,人类可以通过各种各样的数码设备去获得图像,并且保存和传播图像。对于那些蕴含着文字信息的图像,如果单纯以人眼去一张张观察以读取其中的文字,无疑是十分低效的。因此,人类需要知道如何利用计算机来自动而且智能地分析图像,并且提取出其中的文字,对图像做出直观明确的解释。
传统的OCR技术可以用于图像中的文本提取,准确率也较高,然而它需要图像中文字非常的规整,背景与文字的可分开性高,它并不适合用于从自然场景图像中提取文字信息[1]。这个时代的硬件能力在飞速提升,这直接导致了深度学习在各个领域的热门应用。通过神经网络来完成复杂场景中的文本检测任务,对自然图像中的文字区域进行有效的定位和精确的捕获[2]。
1.2 研究的目的及意义
在复杂场景里获得的图像里常包含文字信息,如何对其进行检测是一个很有价值的研究课题,首先是对于本身的文字检测这种目标检测内容有着意义,其次也对于深度学习和人工智能的理论研究有重大的参考价值。图像中所包含的文本信息常能让人最迅速理解图像,往往我们仅仅是观察图像中的文字就可以理解这幅图像。图像中的文字检测是一个广泛的研究,跟大家平常生活或者是工作都有着千丝万缕的联系,它可以用于票据和身份证件等标准凭据的信息读取和查询、基于视觉的汽车导航等众多场合[3],给人们的生活带来方便。
在本课题中,将采用CTPN算法对图像中的文字进行检测,综合应用卷积神经网络和循环神经网络这两种神经网络,卷积神经网络可以帮助我们提取图像的高层特征,然后再用循环神经网络来检查图片的序列特性,从而得到复杂场景中的图片里的文本框预测位置,检测出其中的文字。
1.3 国内外研究及现状
深度学习在检测任务上主要有两种方法,一种是基于提议区域,先预测目标所处位置,然后使用回归的方法对目标进行定位,另一种是基于回归的方法直接检测图像中的目标[4]。RCNN将分类问题转换成检测问题,这是目标检测领域一个开创性的工作。通过Regression(回归)方法直接对图像中的文本进行检测,这种方法并不需要对各个可能区域去求解预测值,而是可以对输入图像的文本位置直接进行预测,回归计算出它的坐标以及概率,所以这种算法的速度方面得到了非常不错的改进,然而相比之下,区域提议的方法显然在检测精度时略胜一筹[5]。YOLO采用单卷积神经网络,将目标检测问题转换为直接从图像中提取回归框和分类概率的回归问题。SSD(单神经网络的多目标检测)参考了YOLO算法,把求解目标检测框和置信度作为回归任务,而且还采用了Faster R-CNN所介绍的anchor来进行目标区域回归,集众人所长,SSD算法用锚框回归的目标检测框,检测得快而且保证了准确度。Bai等人根据前述SSB算法的锚框回归机制,设计了一种改良版的文本检测算法,速度更快精度更高,该算法会依据输入的文本特点生成各种大横纵比的anchor,在网络构造方面,将原本大小为3的卷积核改为大小1x5,强化了网络感受矩形空间的能力,对于横纵比较大的文本也有较好的输出。
余峥,王晴晴,吕岳等人提出一种基于特征融合的深度神经网络,主要是构建一个多维度的复杂网络,将传统的神经网络提取出来的高维特征和底层特征融合在一起,提高网络整体的性能,从而直接预测不同尺度的文本。方清等提出了一种快速的自然场景水平文本检测算法,主要使用多个卷积通道的并联结构设计一个特征提取网络,而卷积通道的卷积核使用大小都不相同,以便对提取更加有效特征,然后将网络提取到的特征和回归检测模型对接,从而提高了文本检测的速度和计算。