ORC相关的库介绍和应用
将图像翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR)
OCR库:Pillow、Tesseract、NumPy
Pillow
Pillow可以对图片进行预处理,比如图片背景色不是纯白,而是渐进色,那么就可以利用Pillow进行预处理得到相对清晰的图片来提供给Tesseract去识别。
Tesseract
Tesseract可以通过训练识别出任何字体(要求字体风格保持不变)
安装Tesseract
Tesseract不是python的库,所以不是通过import的方式导入,而是需要去下载安装,截至目前最新版本是 3.02.02。下载地址
简体中文字库文件下载地址为:http://download.csdn.net/detail/wanghui2008123/7621567
下载完成后解压,然后将该文件剪切到tessdata目录下去就可以了。字库文件:chi_sim.traineddata

Tesseract默认安装在C盘,默认安装是不是会自动添加环境变量,我没试。
我是安装在F盘 F:\Program Files\Tesseract-OCR。安装成功后,再去设置一下环境变量,把安装的路劲加到环境变量里就好了,或者执行指令:
#setx TESSDATA_PREFIX F:\Program Files\Tesseract OCR\
安装的步骤我就不赘述了,安装的过程中出现失败的情况,没有关系,继续就OK。
接着去CMD指令界面中输入:C:\Users\Administrator>tesseract
如果出现下面的结果,那就是安装成功了!

为了验证下是否能识别成功,我在D盘根目录下放了一张图片

然后在cmd指令界面中输入如下指令:
C:\Users\Administrator>tesseract e:\img.jpg e:\img -l chi_sim
结果:(img默认是txt格式)

泪崩~
这识别是个什么几把玩意啊???不管识别的怎么样,人家也是识别了一部分不是?
NumPy
NumPy 并非解决OCR 问题时必须使用的库,但是如果你想训练Tesseract 识别,那么就会用到它。NumPy 是一个非常强大的库,具有大量线性代数以及大规模科学计算的方法。
ORC相关的库介绍和应用的更多相关文章
- DBoW2库介绍
DBoW2库是University of Zaragoza里的Lopez等人开发的开源软件库. 由于在SLAM回环检测上的优异表现(特别是ORB-SLAM2),DBoW2库受到了广大SLAM爱好者的关 ...
- 03_Elasticsearch如何安装以及相关插件的介绍
03_Elasticsearch如何安装以及相关插件的介绍 elasticsearch -d (-d参数是为了让服务后台运行) Elasticsearch 目录结构: 文件夹 作用 /bin 运行El ...
- Common Lisp第三方库介绍 | (R "think-of-lisper" 'Albertlee)
Common Lisp第三方库介绍 | (R "think-of-lisper" 'Albertlee) Common Lisp第三方库介绍 一个丰富且高质量的开发库集合,对于实际 ...
- GitHub上排名前100的Android开源库介绍
GitHub上排名前100的Android开源库介绍 文章来源: http://www.open-open.com/news/view/1587067#6734290-qzone-1-31660-bf ...
- Python的标准库介绍与常用的第三方库
Python的标准库介绍与常用的第三方库 Python的标准库: datetime:为日期和时间的处理提供了简单和复杂的方法. zlib:以下模块直接支持通用的数据打包和压缩格式:zlib,gzip, ...
- 《挑战30天C++入门极限》C++的iostream标准库介绍(3)
C++的iostream标准库介绍(3) C语言提供了格式化输入输出的方法,C++也同样,但是C++的控制符使用起来更为简单方便,在c++下有两中方法控制格式化输入输出. 1.有流对象的成员函 ...
- 《挑战30天C++入门极限》C++的iostream标准库介绍(2)
C++的iostream标准库介绍(2) 接下来我们继续看一下C++风格的串流控制,C++引入了ostringstream.istringstream.stringstream这三个类,要使用 ...
- 简单易用的图像解码库介绍 —— stb_image
原文链接:简单易用的图像解码库介绍 -- stb_image 说到图像解码库,最容易想起的就是 libpng 和 libjpeg 这两个老牌图像解码库了. libpng 和 libjpeg 分别各自对 ...
- Alljoyn瘦客户端库介绍(官方文档翻译)
Alljoyn瘦客户端库介绍(上) 1.简介 本文档对AllJoynTM瘦客户端的核心库文件(AJTCL)进行了详尽的介绍.本文档介绍了系统整体架构,AllJoyn框架结构,并着重于介绍如何将嵌入式设 ...
随机推荐
- HTTP header 介绍 转载
这篇文章为大家介绍了HTTP头部信息,中英文对比分析,还是比较全面的,若大家在使用过程中遇到不了解的,可以适当参考下 HTTP 头部解释 1. Accept:告诉WEB服务器自己接受什么介质类型,*/ ...
- Memcached 之在win10上的安装
一.下载 http://static.runoob.com/download/memcached-win64-1.4.4-14.zip 二.安装 memcached <1.4.5 版本安装 1. ...
- Linux设备驱动程序 之 延迟执行
长延迟 有些驱动程序需要延迟比较长的时间,即长于一个时钟滴答: 忙等待 如果想把执行延迟若干个时钟滴答,或者对延迟的精度要求不高,最简单的实现方法就是一个监视jiffies计数器的循环:这种忙等待的实 ...
- SpringMVC返回Map类型转换成JSON失败
错误信息:WARN DefaultHandlerExceptionResolver:380 - Failed to write HTTP message: org.springframework.ht ...
- 5 HashSet
1.HashSet public class HashSet<E> extends AbstractSet<E> implements Set<E>, Clonea ...
- Linux -bash: redis-cli: command not found(亲测可行)
Linux 安装完redis单独用命令: ? 1 redis-server 报错: ? 1 -bash: redis-server: command not found 说明redis-server不 ...
- Everything 的高级用法
文章来源:刘俊涛的博客 欢迎关注,有问题一起学习欢迎留言.评论
- python项目生成及导入依赖的第三方库
requirements.txt用来记录项目所有的依赖包和版本号,只需要一个简单的pip命令就能完成. pip freeze >requirements.txt 然后就可以用 pip insta ...
- Spark中的CombineKey()详解
CombineKey()是最常用的基于键进行聚合的函数,大多数基于键聚合的函数都是用它实现的.和aggregate()一样,CombineKey()可以让用户返回与输入数据的类型不同的返回值.要理解C ...
- React Native Expected a component class,got [object Object]解决
报错原因: 组件大小写错误. 解决方式: 修改组件名称即可. 这篇博客介绍了大部分RN的错误原因和解决方法: http://blog.csdn.net/chichengjunma/article/de ...