OCR(Optical character recognition) —— 光学文字识别,是图像处理的一个重要分支,中文的识别具有一定挑战性,特别是手写体和草书的识别,是重要和热门的科学研究方向

截止笔者发文(2019.12.25),tesseract-ocr 最新发布的稳定版本是4.1.0. 而tesseract-ocr依赖于leptonica——最新稳定版本是1.78.0

安装说明

  • Windows下载下来一路无脑,点下一步就好

(1)详情请移步至如下链接,下载安装:

https://github.com/UB-Mannheim/tesseract/wiki

(2)配置环境变量(跟JAVA一样)及添加TESSDATA_PREFIX请参见:

https://www.cnblogs.com/jianqingwang/p/6978724.html

注意需要下载训练集—traineddata:

https://github.com/tesseract-ocr/tessdata

中文请选如下4个:

chi_sim.traineddata (简体— 对于宋体,像素>= 300dpi:识别率高达%100,同时对英文阿拉伯数字识别率高达百分之90以上
chi_sim_vert.traineddata (简体,竖排)
chi_tra.traineddata (繁体)
chi_tra_vert.traineddata(繁体,竖排)【CoderBaby

  • CentOS 6 (这个网上的安装方案很少,真正可行的基本没有)

(1)下载Leptonica 和 Teseract 源码

wget http://www.leptonica.org/source/leptonica-1.78.0.tar.gz
wget https://github.com/tesseract-ocr/tesseract/archive/4.1.0.tar.gz

(2)配置、编译和安装

leptonica

 

$ tar xzvf leptonica-1.78.0.tar.gz
$ cd leptonica-1.78.0
$ ./configure
$ make
$ sudo make install



Tesseract-OCR

$ tar xzf tesseract-ocr-4.1.0.tar.gz
$ cd tesseract-4.1.0
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
$ sudo ldconfig

*****************************************************************************

在安装Tesseract-OCR过程中一步一错,具体错误和解决办法如下:

安装:

(1)yum install tesseract

【Error】download出错,镜像163(可能网易的没有)下载失败

【Solution】更换阿里镜像

切换到yum repo配置目录: cd /etc/yum.repos.d

备份基础repo: sudo mv CentOS-Base.repo CentOS-Base.repo.backup


(2)下载tesseract key校验出错

【Error】GPG key retrieval failed: [Errno 14] Could not open/read file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

【Solution1】不检查key了—— 绕过方案

编辑epel.repo: vim /etc/yum.repos.d/epel.repo 

改参数: gpgcheck=1 改为 gpgcheck=1

【Solution1】导入key —— 真正解决方案

cd /etc/pki/rpm-gpg
use rpm --import http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6  或者(从epel下载安装RPM package)
yum -y install http://mirror.pnl.gov/epel/6/i386/epel-release-6-8.noarch.rpm 或者
手动将key拷贝到正确目录

详情请参考: https://unix.stackexchange.com/questions/132757/how-to-automatically-accept-epel-gpg-key

*****************************************************************************

3)下载语言包,并且拷贝到testdata

$ wget http://tesseract-ocr.googlecode.com/files/tesseract-ocr-3.02.eng.tar.gz
$ tar xzf tesseract-ocr-3.02.eng.tar.gz
$ sudo cp tesseract-ocr/tessdata/* /usr/local/share/tessdata
注:如果没有C编译器,先安装gcc,具体请移步参考—— https://linuxhostsupport.com/blog/how-to-install-gcc-on-centos-7/
如果安装失败,需要配置软件源
使用方法

参数的使用有两种:

  • 使用 -c 选项来设定单项参数的值,比如:

    tesseract paper.png paper -l chi_sim -c language_model_ngram_on=1
    其中,parer.png是源文件(图片,文件完整路径名请自行添加),paper是输出文件名(默认为txt文件); -l 指定训练集(chi_sim —— 简体中文)

    允许使用多个 -c 选项来设置多个参数的值。

  • 将多项参数设置写入文件,然后在识别时使用该文件,比如:
  tesseract paper.png paper -l chi_sim tess.conf

(4)更简便的方法是使用yum方式安装
yum 
install epel-release
yum install tesseract
 中文包
 yum install tesseract-langpack-chi_sim.noarch
 训练文件位于
 /usr/share/tesseract/tessdata/
 

参考:

1)https://stackoverflow.com/questions/23792373/installing-tesseract-ocr-on-centos-6

2)http://www.zmonster.me/2015/04/17/tesseract-install-usage.html

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

************************************************************************

精力有限,想法太多,专注做好一件事就行

  • 我只是一个程序猿。5年内把代码写好,技术博客字字推敲,坚持零拷贝和原创
  • 写博客的意义在于打磨文笔,训练逻辑条理性,加深对知识的系统性理解;如果恰好又对别人有点帮助,那真是一件令人开心的事

************************************************************************

最新文章

  1. eclipse安装svn
  2. C# 调用网易“易盾” Web API
  3. git reset soft,hard,mixed之区别深解
  4. [BS-04] 在iOS中对系统定义的类的readonly属性可通过KVC进行赋值
  5. POJ 2533 Longest Ordered Subsequence 最长递增序列
  6. 1password密码文件重装后恢复
  7. 【开源项目4】Android ExpandableListView
  8. Javascript:charCodeAt()方法及示例
  9. Leetcode 高精度 Plus One
  10. Nginx-keepalived+Nginx实现高可用集群
  11. 工作流Activiti入门教程
  12. 『Python』VS2015编译源码注意事项
  13. 第K个幸运数字(4、7)
  14. 如何在Linux下添加函数库
  15. C#设计模式(4)——抽象工厂模式(Abstract Factory)
  16. 查看Linux端口的占用及连接情况
  17. mysql 清空所有表数据重置自增ID
  18. 【spring boot】spring boot 前台GET请求,传递时间类型的字符串,后台无法解析,报错:Failed to convert from type [java.lang.String] to type [java.util.Date]
  19. 使用Chrome保存网页为mht文件
  20. CSS3 @keyframes 规则以及animation介绍和各种动画样式说明

热门文章

  1. opencv:图像轮廓发现
  2. 特征值 特征向量 正交分解 PCA
  3. SpringMVC_001 第一个SpringMVC程序
  4. iCCID激活终结,苹果iPhone卡贴机“辉煌”时代落幕
  5. 给footer标签设置padding:7px auto;失效
  6. mybatis - mapper.java 的创建
  7. C++ explicit的作用
  8. Ethereum Learning Materials
  9. 一组关于{x}的积分
  10. Java 2进制和16进制的转换