【在Centos服务器应用tess4j实现ORC图片识别】

10 篇文章 0 订阅
6 篇文章 0 订阅

在Centos服务器应用tess4j实现ORC图片识别

tess4j简介

Tesseract-OCR支持多语言识别(需要引入响应的语言库),并且开源和提供全套的训练工具,是快速低成本开发的首选。Tess4J是Tesseract在Java PC上的应用。在英文和数字识别中效果还是相当不错的,在中文识别中,无论速度还是识别率还是较弱,如果有条件可以针对场景进行训练,会获得较好结果。
tess4j对win的支持度很高,不需要额外的安装其他插件。但是我们多数应用服务都是部署在linux服务器中,本文就是针对这需求,重点讲解如何在centos服务器使用tess4j进行orc识别。

Tesseract安装

  1. 编译环境
    通过命令安装编译环境,通常情况下,服务器都具备该编译环境,如果已经具备可以跳过此步骤。
yum install gcc gcc-c++ make
  1. 安装 autoconf automake libtool和libjpeg-devel libpng-devel libtiff-devel zlib-devel
 yum install autoconf automake libtool
 yum install libjpeg-devel libpng-devel libtiff-devel zlib-devel
  1. 安装依赖的Leptonica库,依次执行以下命令安装,leptonca版本可以根据实际情况更换,资源地址
    letonica版本资源
wget https://github.com/DanBloomberg/leptonica/releases/download/1.82.0/leptonica-1.82.0.tar.gz

tar -xzvf leptonica-1.82.0.tar.gz

cd leptonica-1.82.0

./configure

make && make install
  1. 加入环境变量
vim /etc/profile
在最后插入

export LD_LIBRARY_PATH=$LD_LIBRARY_PAYT:/usr/local/lib
export LIBLEPT_HEADERSDIR=/usr/local/include
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

是配置生效
source /etc/profile  
  1. 安装 安装Tesseract-OCR,依次执行以下命令完成安装
wget https://github.com/tesseract-ocr/tesseract/archive/refs/tags/5.2.0.tar.gz

tar -xzvf tesseract-5.2.0.tar.gz 

cd tesseract-5.2.0/

./autogen.sh

./configure

make && make install

sudo ldconfig


ps:在执行autogen.sh 时,我在另外一台服务器上遇到错误
configure.ac:8: error: Autoconf version 2.69 or higher is required
在这里插入图片描述
提示我的 Autoconf 版本太低,需要安装2.69或更高的版本,autoconf安装命令如下

wget  http://ftp.gnu.org/gnu/autoconf/autoconf-2.71.tar.gz
tar -zxvf autoconf-2.71.tar.gz
cd autoconf-2.71
./configure
make && make install

安装完成之后 重新执行

./autogen.sh

./configure

make && make install

sudo ldconfig
  1. 复制tess4j要的linux依赖库链接
cp /usr/local/lib/*.so.* /usr/lib64/
  1. 下载所需语言包上传到 /usr/local/share/tessdata
    语言包下载地址
  2. 安装完成后可以执行 tesseract --version 测试安装结果

在这里插入图片描述

Java代码实现

  1. 在maven项目中引入tess4j的资源
        <!-- https://mvnrepository.com/artifact/net.sourceforge.tess4j/tess4j -->
        <dependency>
            <groupId>net.sourceforge.tess4j</groupId>
            <artifactId>tess4j</artifactId>
            <version>5.3.0</version>
        </dependency>
  1. java代码实现demo
        ITesseract instance = new Tesseract();  // JNA Interface Mapping
        //tess4jDataPath 语言包路径 
        instance.setDatapath("/usr/local/share/tessdata");
        //语言类型 chi_sim 中文 eng 英文
        instance.setLanguage("chi_sim");
        // 获取图片文件信息
        String content =instance.doOCR(imageFile);

结语

纸上得来终觉浅,绝知此事要躬行。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值