基于python的图片文字识别

基于python的图片文字识别

ID:13460265

大小:118.76 KB

页数:4页

时间:2018-07-22

基于python的图片文字识别_第1页
基于python的图片文字识别_第2页
基于python的图片文字识别_第3页
基于python的图片文字识别_第4页
资源描述:

《基于python的图片文字识别》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于Python的图片文字识别【摘要】在有些工程中,有时候我们需要对图片文字识别。本文利用Python,调用OpenCV库,先对图片进行预处理,然后借助Google开源的pytesser对图片文字进行了识别。【关键词】:OpenCV,pytesser,文字识别一关于OCR光学字符识别(英语:Optical Character Recognition, OCR)是指对文本资料的图像文件进行分析识别处理,获取文字及版面信息的过程。一般包括以下几个过程:图像输入、图像前处理、预识别:1图像输入:对于不同的图像格式,有

2、着不同的存储格式,不同的压缩方式,目前有OpenCV、CxImage等开源项目。2预处理:主要包括二值化,噪声去除,倾斜较正等。2.1二值化:对摄像头拍摄的图片,大多数是彩色图像,彩色图像所含信息量巨大,对于图片的内容,我们可以简单的分为前景与背景,为了让计算机更快的、更好地识别文字,我们需要先对彩色图进行处理,使图片只剩下前景信息与背景信息,可以简单的定义前景信息为黑色,背景信息为白色,这就是二值化图。2.2噪声去除:对于不同的文档,我们对噪声的定义可以不同,根据噪声的特征进行去燥,就叫做噪声去除。3倾斜校正

3、:由于一般用户,在拍照文档时,都比较随意,因此拍照出来的图片不可避免的产生倾斜,这就需要文字识别软件进行较正。4版面分析:将文档图片分段落,分行的过程就叫做版面分析,由于实际文档的多样性,复杂性,因此,目前还没有一个固定的,最优的切割模型。5字符切割:由于拍照条件的限制,经常造成字符粘连,断笔,因此极大限制了识别系统的性能。6字符识别:这一研究已经是很早的事情了,比较早有模板匹配,后来以特征提取为主,由于文字的位移,笔画的粗细,断笔,粘连,旋转等因素的影响,极大影响特征的提取的难度。7版面还原:人们希望识别后的

4、文字,仍然像原文档图片那样排列着,段落不变,位置不变,顺序不变地输出到Word文档、PDF文档等,这一过程就叫做版面还原。8后处理、校对:根据特定的语言上下文的关系,对识别结果进行校正,就是后处理。二利用OpenCV进行预处理(一)关于OpenCVOpenCV的全称是OpenSourceComputerVisionLibrary,是一个跨平台的计算机视觉库。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序。OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。

5、该库也有大量的Python,Java和MATLAB的接口。另外,一个使用CUDA的GPU接口也于2010年9月开始实现。(二)使用OpenCV进行图片预处理1.读入图像,并把彩色图转化为灰度图本文需要识别的图片如下,为一张彩色图在进行图像处理的时候,对灰度图的处理往往比彩色图简单一些,也少消耗一下资源,所以,在进行下一步工作前,我们先把图像转化为灰度图。OpenCV提供的读入图像接口函数为成imread,转化为灰度图的接口函数为cvtColor,并给它传入参数COLOR_BGR2GRAY,它就可以实现彩色图到灰

6、度图的转换,转化为灰度图后图像如下。1.对图像进行形态学开运算,并做自适应阈值处理把图像转换为灰度图后,有时候会产生噪点,有时候文字会在有些地方断裂,这是我们不希望看到的,所以,我们利用开运算去除噪点,并是文字连续。另外,转化为灰度图后,我们发现图片对比度不是很好,为此,我们在采用自适应阈值对图片进行阈值处理,以增强对比度,便于后文的pytesser对文字进行识别。尽心开运算和自适应阈值处理以后,图片效果如下三利用pytesser进行文字识别pytesser,OCRinPythonusingtheTessera

7、ctenginefromGoogle。是谷歌OCR开源项目的一个模块,可将图片中的文字转换成文本(主要是英文)。本文的前面已经对图片进行了各种预处理,现在就利用pytesser来进行文字识别。如果对图片的预处理做的很好,pytesser基本可以实现100%的文字识别。但是pytesser也有它的不足,它对于图片质量要求较高,除此之外,对于形态相同的数字和字母容易混淆,比如0和O。改进的办法是利用机器学习,纠正识别错的,提高之后的识别准确率。四总结与结论通过对图像进行阈值变换,开运算等预处理,最后采用pytess

8、er对图片文字信息进行了提取,由于图片的质量不同,识别成功率也有所不同。在今后的研究中,可能有必要采取机器学习来提高识别的准确率。参考文献:[1]陈胜勇,刘盛等.基于OpenCV的计算机视觉技术实现[M].北京:科学出版社,2008.[2]汪益民.基于OCR的书写文字识别系统设计.安徽农业大学2007[3]沈艳.基于CMAC神经网络的手写字体识别技术.哈尔滨工程大学.2011[4]颜伟

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。