Docker(Ubuntu)使用 tesseract-ocr 进行OCR中文识别
一、需求
在 Docker 中安装使用 tesseract-ocr
进行文字识别,要求能够识别中文文字。
二、实现
Ubuntu 下安装
没有进行编译安装,我在编译安装的时候实际上一直遇到错误。
出现错误是在 ./configure
的时候就报错了,语法错误,版本我编译的是 master
分支。
我不确定这个错误是什么原因,也没去深究,所以我就用 ubuntu 搞了个 docker 。
ubuntu下安装非常简单,不过速度可能比较慢。
$ apt-get install tesseract-ocr
默认的安装目录是:/usr/share/tesseract-ocr/
,后面要安装中文文字库,则就在该目录下的 tessdata/
文件夹。
CentOS 下编译安装:
可以参考下面这篇文章上:
因为我的依赖都是装好的,如果发现有依赖没装,则参考如下的依赖列表:
sudo apt-get install g++
sudo apt-get install autoconf automake libtool
sudo apt-get install autoconf-archive
sudo apt-get install pkg-config
sudo apt-get install libpng12-dev
sudo apt-get install libjpeg8-dev
sudo apt-get install libtiff5-dev
sudo apt-get install zlib1g-dev
### 训练工具需要下面的依赖
sudo apt-get install libicu-dev
sudo apt-get install libpango1.0-dev
sudo apt-get install libcairo2-dev
除了上面的依赖,你还需要编译安装 Leptonica
:
$ wget http://www.leptonica.org/source/leptonica-1.72.tar.gz
$ tar xvzf leptonica-1.72.tar.gz
$ cd leptonica-1.72/
$ ./configure
$ make && make install
完成了 Leptonica
之后,下载 tesseract
,然后进入 tesseract
目录:
$ ./configure && make && make install
之后进行 tessdata
字体库的安装:
以中文字体库举例,下载改字体库(下面有链接)。
$ wget https://github.com/tesseract-ocr/langdata/tree/master/chi_sim](https://github.com/tesseract-ocr/langdata/tree/master/chi_sim
将字体库放在 /usr/local/share/tessdata/
文件夹下即可
使用 tesseract
Wiki:
简单的使用就是直接识别一张英文图片:
$ tesseract sign.jpg out
识别中文
tesseract 的语言数据列表:
需要识别中文,需要安装中文的库,将库放在 testdata
文件夹下即可。
网上很多是 google code
的下载地址,我找了一个能用的下载,忘记在哪个网页看到的了:
如果要使用中文,则需要指定 -l
的命令行参数:
chi_sim
:是库的名称
$ tesseract sing.jpg out -l chi_sim
三、问题
1、错误
这个问题我是在 CentOS 编译安装使用的时候出错误的
如果遇到了下面的错误:
则需要修改 /etc/ld.so.conf
这个文件,然后在里面加一句:
$ vim /etc/ld.so.conf
修改后的文件内容如下:
include ld.so.conf.d/*.conf
include /usr/local/lib
然后运行:
/sbin/ldconfig
2、
中文识别率感人,网上都说引擎很老了,基本没什么大的功能。
貌似,无法使用图片 url 进行识别,因此,我在 docker 中跑的时候,开了 -v
数据卷共享目录。
文章版权:Postbird-There I am , in the world more exciting!
本文链接:http://www.ptbird.cn/ubuntu-resseract-ocr-chinese.html
转载请注明文章原始出处 !