linux上部署tess4j项目

在windows上项目是可以正常运行的,部署到Linux上后,运行报异常,异常内容为:Unable to load library 'tesseract': Native library (linux-x86-64/libtesseract)

这个报错的原因就是项目无法加载库资源文件 libtesseract(在linux上是.so文件,windows是.dll文件)

解决:

  将/usr/local/lib下相关的tesseract和leptonica的library(.so)的文件复制到 /usr/lib下,问题解决,nice

记录一下在Linux上部署tesseract

( 所需要的  Linux 安装包 tesseract-ocr-3.02.02.tar.gz及安装需要的leptonica-1.68.tar.gz  英文语言包 eng.traineddata.gz  戳链接:)

1,编译环境: gcc gcc-c++ make(这个环境一般机器都具备,可以忽略)  
  yum install gcc gcc-c++ make

2,autoconf automake libtool libjpeg-devel libpng-devel libtiff-devel zlib-devel 可以通过yum安装:

    (1)yum install autoconf automake libtool

    (2)yum install libjpeg-devel libpng-devel libtiff-devel zlib-devel

3,安装 leptonica

  下载 leptonica-1.68.tar.gz

   tar-zxvf leptonica-1.68.tar.gz

  (1) 进入 leptonica-1.73文件夹内(cd 命令)
  (2) 执行下面command

  ./configure

  make

  make install

  ldconfig

4,安装 tesseract

  下载 tesseract-ocr-3.02.02.tar.gz

  (1) 进入 tesseract-ocr-3.02.02文件夹内(cd 命令)
  (2) 执行下面command

  ./autogen.sh

  ./configure

  make

  make install

  ldconfig

  如果需要在linux上运行带tess4j的项目,需要将/usr/local/lib下相关的tesseract和leptonica的library(.so)的文件复制到 /usr/lib下

5,安装语言包

  下载 eng.traineddata.gz (如果需要验证中文,就下载中文的语言包)

  tar -zxvf eng.traineddata.gz

  将 eng.traineddata文件 拷贝到  /usr/local/share/tessdata下 ,如果没有tessdata文件夹,就去tesseract的安装文件位置将目录下的tessdata拷贝到  /usr/local/share/
 
6,执行命令 tesseract
 如果出现下图,就安装成功了
    

7,到这,你就可以敲下面的代码验证图片中的文字了:

   命令: tesseract 图片名  输出文本名 -l eng

  

linux tesseract 安装及部署tess4j项目的常见问题的更多相关文章

  1. linux安装tomcat部署web项目

    我用的是如下图的两个软件,连接linux服务器. 其中WinSCp是传输文件用的,SecureCRT是用来输入命令的. 1.复制tomcat到指定目录(可复制到你想要的目录下),命令如下: cp /路 ...

  2. Linux的安装以及部署一

    下载网址: Vmware: http://www.wsf1234.com/vmware- workstation-pro-v14-0-0/ Centos: http://mirrors.163.com ...

  3. linux下安装与部署redis

    一.Redis介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多 ...

  4. Linux在Tomcat下部署JavaWeb项目

    一.Linux快速部署War包操作 1.先关闭Tomcat /home/java/tomcat8/bin/shutdown.sh 注意:进入tomcat bin目录下操作 2.进入War包存放目录(可 ...

  5. CentOS7 安装nginx部署vue项目

    简单描述:代码开发完了,需要环境来运行测试.服务器上没有nginx,搞起搞起.   在Centos下,yum源不提供nginx的安装,可以通过切换yum源的方法获取安装.也可以通过直接下载安装包的方法 ...

  6. Linux下的环境部署和项目发布

    1.查看系统版本 sudo uname --m i686 //表示是32位 x86_64 // 表示是64位 2.下载对应版本软件,jdk和Tomcat(切记注意版本) jdk: 下载地址:http: ...

  7. 下载安装tomcat 部署本地项目

    原文地址:https://blog.csdn.net/weixin_40396459/article/details/81706543 下载地址:http://tomcat.apache.org 点击 ...

  8. Linux Haproxy 安装和部署

    一.Haproxy 安装 下载地址 http://pan.baidu.com/s/1mggViXE cd /usr/local tar xzvf haproxy-.tar.gz cd haproxy- ...

  9. CentOS Linux Jenkins安装、部署、更新

    1.安装:https://wiki.jenkins.io/display/JENKINS/Installing+Jenkins+on+Red+Hat+distributions2.部署: 注意事项: ...

随机推荐

  1. phpcms后台管理

    phpcms从网上下载就好了,记住这个要安装在Wamp中的www文件下 从网页输入网址进入后台控制 输入密码账号,即进入后台控制界面: 后台管理有自带的网页模板把他换成自己的模板: 修改站点:   把 ...

  2. [CTSC2008] 网络管理

    题目描述 Description M公司是一个非常庞大的跨国公司,在许多国家都设有它的下属分支机构或部门.为了让分布在世界各地的N个部门之间协同工作,公司搭建了一个连接整个公司的通信网络.该网络的结构 ...

  3. 大数相加a+b

    #include<stdio.h>#include<string.h>#define MAX 1000void Add(char *a,char *b,char *result ...

  4. [.NET] 《Effective C#》快速笔记 - C# 中的动态编程

    <Effective C#>快速笔记 - C# 中的动态编程 静态类型和动态类型各有所长,静态类型能够让编译器帮你找出更多的错误,因为编译器能够在编译时进行大部分的检查工作.C# 是一种静 ...

  5. Elasticsearch5中安装Elasticsearch-head插件

    介绍 elasticsearch-head是一个用于管理Elasticsearch的web前端插件,搞过ES的同学应该都了解.该插件在es5中可以以独立服务的形式进行安装使用.本文将介绍如何操作. 相 ...

  6. [.NET] 《Effective C#》快速笔记 - C# 高效编程要点补充

    <Effective C#>快速笔记 - C# 高效编程要点补充 目录 四十五.尽量减少装箱拆箱 四十六.为应用程序创建专门的异常类 四十七.使用强异常安全保证 四十八.尽量使用安全的代码 ...

  7. Thinkphp3.2———配置模块

    一.配置格式 Thinkphp框架中的所有配置都是数组形式定义的的格式为: //项目配置 return array( 'DEFAULT_MODULE'=>'Index',//默认模块 'URL_ ...

  8. JAVA中的Buffer

    一.属性 Buffer有四个基本属性: 1.capacity  容量,buffer能够容纳的最大元素数目,在Buffer创建时设定并不能更改 2.limit buffer中有效位置数目,不能对超过li ...

  9. 关于Java解压文件的一些坑及经验分享(MALFORMED异常)

    文章也已经同步到我的csdn博客: http://blog.csdn.net/u012881584/article/details/72615481 关于Java解压文件的一些坑及经验分享 就在本周, ...

  10. 14、Iterator跟ListIterator的区别

    14.Iterator与ListIterator的区别 在使用List,Set的时候,为了实现对其数据的遍历,会经常使用到Iterator(跌代器).使用跌代器,不需要干涉其遍历的过程,只需要每次取出 ...