24小时论文定制热线

热门毕设:土木工程工程造价桥梁工程计算机javaasp机械机械手夹具单片机工厂供电采矿工程
您当前的位置:论文定制 > 毕业设计论文 >
快速导航
毕业论文定制
关于我们
我们是一家专业提供高质量代做毕业设计的网站。2002年成立至今为众多客户提供大量毕业设计、论文定制等服务,赢得众多客户好评,因为专注,所以专业。写作老师大部分由全国211/958等高校的博士及硕士生设计,执笔,目前已为5000余位客户解决了论文写作的难题。 秉承以用户为中心,为用户创造价值的理念,我站拥有无缝对接的售后服务体系,代做毕业设计完成后有专业的老师进行一对一修改与完善,对有答辩需求的同学进行一对一的辅导,为你顺利毕业保驾护航
代做毕业设计
常见问题

Linux平台的图片文字识别系统

添加时间:2018/09/05 来源:吉林大学 作者:李润之
图片文字识别OCR软件应用广泛,打造一个算法优异、识别率高、并且可靠的OCR软件是很有应用前景的。该软件能直接明显的解放手动输入的工作,是立竿见影式的工具。由于当前的文字识别率还有很大的提升空间。
以下为本篇论文正文:

摘 要

  基于 Linux 平台的图片文字识别系统图片文字识别 OCR(Optical Character Recognition,光学字符识别)应用非常广泛。例如 DNA 序列图片识别;PDF 文字识别;车牌号码自动识别;手机上的手写输入识别等。近年来该应用更加广泛,必然出现在教育领域的一款手机应用,将手机把试卷拍照查询答案,首先就是图片文字识别处理。相信越来越有魔力的应用会继续产生。而图片文字识别唯一重要的标准就是识别率。现在的图片文字识别没有 100%的识别率,这也成为了图片文字识别应用发展的一大瓶颈,因此探索一个好的图片文字识别算法很有意义。

  图片文字识别涉及图片处理技术、模式识别技术、数据库存储等。本文图片文字识别基本流程一般是:获得图片、去噪处理、二值化处理、矫正图片、行查找、文字定位、细化处理、文字特征扫描、查询显示文字等处理过程。主要使用了 linux 下的 opencv 图像处理库,该库图像处理丰富,性能良好;文字的特征码存储在 Mysql 数据库中。图片识别计算量大,占用存储也比较多。因此性能和资源也是需要考虑的一个因素。文字识别结束后如果能根据上下文词汇进行二次校验将是提升准确率的一个好方法,由于本着着重研究识别算法的精确度,未包含该项步骤。在后续的工作中再考虑使用该方法进一步提升准确率。

  Opencv 提供了图片处理的基本函数,例如图片存储,数据矩阵的遍历等,去噪处理中的平滑处理、二值化处理等。矫正图片就是将图片按照文字的行摆正,该步骤是比较关键的一步,后面的行定位等都依赖于图片矫正。文字的行定位和文字定位即确定文字区域,方便文字特征扫描,细化处理是将文字细化为一个像素,而又不破坏连通性。细化处理是方便特征扫描而做的处理。数据库中存储文字特征码和 UTF8 编码对应起来。

  图片文字识别中包含了标点符号识别、汉字识别、英文字母识别等。本着主要针对印刷体文字识别。该项识别应用占大多数。其中汉字识别比较复杂,本文采用了独特的连通域扫描识别笔画,并根据笔画的位置产生特征码。笔画就是一笔不间断的书写而成的。在笔画识别过程中本文使用了笔画直线化概念,认为所有笔画都可以简单的分为直线和曲线,将文字简化为直线和曲线以及交叉点组成可以即精准右简化了文字特征码的扫描。

  本文阐述了整个图片文字识别系统的工作过程,以及使用的技术和算法。针对 opencv 的使用和数据库的使用。每一个处理过程都是需要试验来验证的。通过展示变化图片可以清晰的了解处理过程。经过大量试验验证了其准确性和稳定性。该图片文字识别系统满足了当初的设计意图。

  关键词:Opencv,Mysql,图片处理,细化算法

Abstract

  Image character recognition OCR (Optical Character Recognition, Optical Character Recognition) is widely used. Picture identification such as a DNA sequence; PDF text recognition; automatic plate number recognition; handwriting recognition input on the phone. In recent years the more widely, there will be a cell phone in the field of education applications, the mobile phone to take pictures query answer papers, the first is the image character recognition process. I believe more and more applications will continue to produce magic. The image character recognition only important criterion is the recognition rate. Now picture the character recognition is not 100% recognition rate, it has also become a major bottleneck image character recognition application development, and thus to explore a good image character recognition algorithm makes sense.

  Image character recognition relates to image processing, pattern recognition technology, database storage. This picture text recognition the basic process is generally: to get the picture, noise elimination process, binarization processing, image correction, line search, text positioning, thinning, text scanning feature, query and display text and other processing. The main use of the opencv image processing library under linux, the rich library of image processing and good performance; the text of the signature stored in Mysql database. Image recognition computationally intensive, take up storage will be more. Therefore, performance and resources are also a factor to be considered. After character recognition can be performed if the context vocabulary secondary calibration would be a good way to improve the accuracy rate of recognition algorithm because the spirit focuses on accuracy, not included in this step. In the follow-up work and then consider using this method to further enhance accuracy.

  Opencv provides basic image processing functions, such as image storage, data matrix, etc. traverse, noise elimination process of smoothing, binarization processing.

  Corrected image is to straighten the image according to the text of the line, this step is relatively critical step for positioning behind so dependent on image correction. For positioning and text anchor text that is determined text area, convenient scanning text features, refinement process is to refine the text of a pixel, without destroying connectivity. Refining is a convenient feature to scan and do the processing. Text stored in the database correspond signatures and UTF8 encoding.

  Image character recognition includes punctuation recognition, character recognition, letter recognition. In the mainly for the printed text recognition. The identification applications majority. Where character recognition is more complex, this article uses a unique scanning recognition strokes connected domain and generate signatures based on the location of the stroke. Stroke is a continuous writing made. In stroke recognition process used herein, the straight strokes of the notion that all strokes can be simply divided into lines and curves, text simplified to lines and curves and intersections that is precisely the right composition can simplify the text signature scanning.

  This paper describes the working process of the whole image character recognition systems, and techniques and algorithms used. Use for opencv the use of the database. Each process is required to validate the test. Pictures can change by showing a clear understanding of the process. After extensive tests to verify its accuracy and stability. The image character recognition systems to meet the original design intent.

  Keywords:Opencv,MySQL,Image Processing,Thinning Algorithm

  图片文字识别(OCR),应用场景非常广泛[1]。随着信息时代的来临,各种知识、书籍、档案等都面临着数字化的需求。而图片存储是个笨重的途径,而且占用空间巨大,并且不方便查找等操作。因此以文档方式存储就面临着巨大的录入工作。这项工程当然要使用计算机的帮助,这就是 OCR 的典型应用了。市面上流行的各种扫描仪几乎都会附带着 OCR 识别程序。OCR 程序广泛使用于印刷、打印等行业[2]。是这些行业支柱软件。简单的 OCR 识别应用例如车牌号码的识别,可以省去大量的人力、物力。车牌号码的识别由于识别内容相对固定,识别准确率会高一些。

  复杂的例如对图形、图表混编的复杂版面识别,对各种报表的识别。如应用在工商行业、数据分析等行业。OCR 应用对古籍的保护和推广也具有重大意义。

  OCR最广泛的还是应用于印刷体文字的识别,对手写文字的识别相对更困难一些,常见的对手写体识别是手机手写输入。这些应用只占一小部分,但是却极大的改善了人们的日常生活。在未来如果 OCR 程序的识别率达到一个可接受的范围,可以替代手工输入,将给录入工作带来革命性的跨越。

  比较有名的开源 OCR 程序有 Tesseract、Gocr 等程序,Tesseract 最先由 HP公司开发,后经 Google 改进优化,是比较优秀的开源 OCR 程序[3]。 Gocr 是由Joerg Schulenburg 等人开发的开源 OCR 程序,该程序不能够识别汉字,识别英文的效果比较好[4]

  。国外的程序普遍对汉字的识别效果不佳。国内 OCR 做的比较好的程序有清华文通、汉王、尚书等。OCR 文字识别是一个复杂的系统,最直接表现为识别率是否能够可用,可用的标准是识别率。如果一个差的识别率,用起来倒给使用者增添烦恼,比如 DNA 图片序列的识别,如果识别不准确,想人工去校正将是一个痛苦的工作。而本身 DNA 序列是不能容忍错误的。

  由于汉字的多样性、复杂性给汉字 OCR 识别增添了很多困难,因此汉字识别率普遍比英文识别率低。特别是有许多汉字相似,笔画之间分割不清楚,例如一个左右结构的文字,有些左半部和右半部即可以连接起来,又可以不连接起来的这种随意性给识别造成了巨大困难。

  本文主要在 Linux 平台上,利用 Opencv 图形图像库和 Mysql 数据库实现了一个图片文字识别系统。从原始图片的输入,经过图片放大和平滑处理对图片进行第一级别的粗略操作,然后对图片灰度图片转换然后进行二值化处理,又经过校正和行列定位,定位出一个文字子图片,然后几个对文字的几何特征扫描进行特征码的计算,最后查找数据库中的特征码对应的 UTF-8 编码。从而输出识别的文字。还包括对系统的学习和校正的处理,以及对数据库的查询、增加、删除、修改等操作。本文设计的特征码扫描方法是文字几何特征扫描,能够深入的挖掘文字的特征,具有稳重以及极具潜力的研究方向。通过以上步骤模块完成了一个完整的文字识别系统。符号论文最初设计的目标。

  Linux平台的图片文字识别系统测试:

测试原始图片
测试原始图片

校正和二值化后的图片
校正和二值化后的图片

行定位后的图片
行定位后的图片

提取文字的图片
提取文字的图片

提取文字的图片
提取文字的图片

训练的图片和文字
训练的图片和文字

目 录

  第 1 章 绪论
    1.1 研究背景及意义
    1.2 文字识别现状
    1.3 论文主要内容与结构
  第 2 章 系统相关技术概述
    2.1 Opencv
      2.1.1 CV 库基本结构
    2.2 像素关系
    2.3 UTF-8 编码
    2.4 软件开发环境
      2.4.1 Opencv 的安装
      2.4.2 MySQL 的安装
  第 3 章 图片文字识别系统分析与设计
    3.1 系统需求分析
      3.1.1 功能分析
      3.1.2 用例分析
      3.1.3 Word_OCR 识别时序图
      3.1.4 流程控制分析15
    3.2 系统总体结构设计
  第 4 章 图片文字识别
    4.1 输入输出模块
    4.2 图片预处理模块
      4.2.1 放大和平滑处理
      4.2.2 二值化处理
      4.2.3 校正处理
      4.2.4 行列查找
    4.3 特征码扫描
      4.3.1 文字细化
      4.3.2 连通域数字化
      4.3.3 线段直线化
      4.3.4 计算特征码
    4.4 数据库操作
    4.5 学习训练模块
  第 5 章 系统测试与分析
    5.1 系统测试
      5.1.1 图片预处理测试
      5.1.2 图片文字识别测试
    5.2 学习训练测试
  第 6 章 总结与展望
    6.1 工作总结
    6.2 工作展望
  参考文献
  致 谢

(如您需要查看本篇毕业设计全文,请您联系客服索取)

相关内容
相关标签:Linux毕业设计
好优论文定制中心主要为您提供代做毕业设计及各专业毕业论文写作辅导服务。 网站地图
所有论文、资料均源于网上的共享资源以及一些期刊杂志,所有论文仅免费供网友间相互学习交流之用,请特别注意勿做其他非法用途。
如有侵犯您的版权或其他有损您利益的行为,请联系指出,论文定制中心会立即进行改正或删除有关内容!