linux java ocr_Linux环境如何支持使用tess4j进行ORC

本文详细介绍了在Linux环境下安装GCC、Tesseract和Leptonica的步骤,包括解决编译过程中的依赖问题,配置环境变量,安装中文语言库并测试OCR功能。最终确保tess4j能正常运行进行文字识别。
摘要由CSDN通过智能技术生成

一、GCC环境

首先Linux环境需要安装gcc,这个在后面需要编译so库使用,因为我的环境已经有了,所以这里就不赘述了,到网上找一下一大堆。

查看GCC版本:

$ gcc --version

134a09c5af9e

gcc版本

二、下载Tesseract和Leptonica安装包

Tesseract作为OCR引擎,避免不了使用图像处理。Tesseract使用的图像处理主要由Leptonica提供。Leptonica包含众多图像处理和图像分析相关的功能。Tesseract 4.0必须要求Leptonica在1.74以上,我选着的tesseract-ocr-4.1.1 Release 和 leptonica-1.79,点击可直接下载。

下载后上传到服务器:

134a09c5af9e

image.png

还有在线下载方式,但是这种方式因网络问题会很慢,可能还会下载不完全,不建议使用:

$ wget http://www.leptonica.com/source/leptonica-1.79.0.tar.gz

$ wget https://github.com/tesseract-ocr/tesseract/archive/4.1.1.tar.gz

三、编译so库

1、解压两个压缩包

$ tar -zxvf leptonica-1.79.0.tar.gz

$ tar -zxvf tesseract-4.1.1.tar.gz

134a09c5af9e

image.png

2、进入leptonica-1.79.0目录,编译leptonica:

$ cd leptonica-1.79.0

$ ./configure && make && make install

134a09c5af9e

编译成功!

3、 进入tesseract-4.1.1目录,编译tesseract前要先生成configure文件,直接执行./autogen.sh会报错,如下图:

$ ./autogen.sh

134a09c5af9e

错误原因缺少libtool*插件,解决方式:

第一步:

$ yum install automake -y

134a09c5af9e

第二步:

在执行安装 libtool插件

$ yum install libtool -y

134a09c5af9e

上面两步完成后,当前目录下就会有个configure文件,它是源代码安装的第一步,主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系,开始

编译tesseract-4.1.1

执行

$ ./configure && make && make install

134a09c5af9e

唉 缺少C++编译器,安装:

$ yum install gcc gcc-c++

134a09c5af9e

c++ 安装完成

再次运行

$ ./configure && make && make install

报错:

134a09c5af9e

解决方式,在/etc/profile中配置一下leptonica的环境变量

export LD_LIBRARY_PATH=$LD_LIBRARY_PAYT:/usr/local/lib

export LIBLEPT_HEADERSDIR=/usr/local/include

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

$ vim /etc/profile

$ source /etc/profile

$ ./configure && make && make install

134a09c5af9e

image.png

ok,编译成功。

下载中文简体语言库chi_sim.traineddata,上传到Linux /usr/local/share/tessdata/目录:

134a09c5af9e

image.png

测试下:

$ tesseract 123.png wenben -l chi_sim

134a09c5af9e

报错是因为环境没有安装这些libjpeg* libpng* freetype* gd* giflib* libtiff* zlib*依赖库,并不是所有的都用到,可以只安装libjpeg* libpng* libtiff*就可以了。

$ yum -y install libjpeg* libpng* libtiff*

重新编译leptonica

$ make clean

$ ./configure && make && make install

重新编译完成,tesseract --version 查看

134a09c5af9e

顺便在测试下:

$ tesseract 123.png wenben -l chi_sim

134a09c5af9e

ok没啥问题,查看编译好的so库。

$cd /usr/local/lib

134a09c5af9e

so库

红框标注的这两个库就是支持tess4j在linux上进行文字识别的库,其他的都是软连接指向liblept.so.5.0.4和libtesseract.so.4.0.1。最后一步,复制liblept.so.5.0.4和libtesseract.so.4.0.1到/usr/lib64目录下。

注意:

我使用的这个版本库名必须要是libtesseract.so和liblept.so.5,创建软连接也好,直接改名也行,不然tess4j会报错找不到指定的依赖库,我们可以根据程序抛出的异常去确认库名。

134a09c5af9e

到这就得到支持tessj4的库了,可以把上一篇中的代码打包一下上传到服务测试下,后续我会把编译好的库地址在评论中发出来。

134a09c5af9e

参考:

《centos编译安装tesseract-ocr 3.05》

《linux (centos7)上装Tesseract-OCR最新版本(5.0)》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值