zoukankan      html  css  js  c++  java
  • linux环境安装tesseract OCR识别

    参考文档地址:https://www.pianshen.com/article/9026369424/
    https://www.lizenghai.com/archives/43148.html
    https://www.cnblogs.com/dongyangblog/archive/2019/07/12/11177233.html

    1 安装centos7系统依赖
    命令如下:
    yum install -y libpng-devel libjpeg-devel libtiff-devel
    yum install -y libpng-devel libjpeg-devel libtiff-devel

    2 安装leptonica
    下载leptonica-1.78,下载地址:
    http://www.leptonica.org/source/leptonica-1.78.0.tar.gz
    解压,使用命令:tar -xzvf leptonica-1.78.0.tar.gz
    进入解压后的目录,使用命令:cd leptonica-1.78.0

    配置编译,采用默认配置,使用命令:./configure
    编译,使用命令:make
    安装,使用命令:make install

    3 安装tesseract-ocr
    下载tesseract-ocr4.0,下载地址:
    https://codeload.github.com/tesseract-ocr/tesseract/tar.gz/4.0.0
    解压,使用命令:tar -xzvf tesseract-4.0.0.tar.gz
    进入解压后的目录,使用命令:cd tesseract-4.0.0

    从上面图片中,我们注意到解压文件里只有一个可执行文件autogen.sh
    因此我们执行这个shell脚本文件,使用命令:./autogen.sh
    执行完后,在当前目录就生成了其它一些可执行文件

    使用配置,命令:./configure
    发现如下错误

    提示这个错误是因为在上面的步骤中虽然我们安装了leptonica-1.78,但是却没有将leptonica设置为环境变量。
    由于上面我们都是采用默认的配置,因此第三方库是安装在/usr/local这个目录下

    进入lib目录可以看到新安装的liblept
    在这里插入图片描述
    在这个目录输入命令:pkg-config --version查看pkg-config是否安装
    如果没有安装,就先安装,使用命令:yum install pkgconfig

    3.1 将leptonica-1.78添加到环境变量里
    使用命令:vim /etc/profile
    在打开的文件结尾添加:
    export LD_LIBRARY_PATH=/usr/local/lib
    export LIBLEPT_HEADERSDIR=/usr/local/include
    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

    有的时候新建环境变量也这样写:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH/usr/local/lib


    保存退出
    使环境变量生效,命令:source /etc/profile

    然后我们在重新配置tesseract,使用命令: ./configure
    这次配置就没有错误了。
    编译,使用命令:make
    安装,使用命令:make install
    动态链接,使用命令:ldconfig

    最后安装完成,使用命令:tesseract --version
    显示如下:
    tesseract 4.0.0
    leptonica-1.78.0
    libjpeg 6b (libjpeg-turbo 1.2.90) : libpng 1.5.13 : libtiff 4.0.3 : zlib 1.2.7

    切换到项目发布的目录再进入x64 (64位系统选择此目录)目录然后做映射。


    映射哪些文件主要是看我们发布后X64里面的dll文件叫什么,比如我们发现是libtesseract400.dll 和libtesseract400.dll 。不同版本可能后面的数字不一样。


    然后我们找到刚刚安装Tesseract的目录然后搜索libtesseract和libtesseract开头的so文件即可。最后我们会找到libtesseract.so.4.0.1.so、liblept.so.5.0.3.so文件。然后将这两个文件做映射,映射到我们项目目录中的名称需要和本身项目中dll文件一致,只是后缀为so,不再是dll了。

    映射命令如下


    ln -s /usr/lib64/libtesseract.so.4.0.1 libtesseract400.so


    ln -s /usr/lib64/liblept.so.5.0.3 liblept1760.so


    注意这些dll或者so后面的版本号即数字不同版本不同时期可能都不一样,以自己安装的为准。

  • 相关阅读:
    $(document).ready() 、 $('#id').load() 、window.onload 的区别
    Ajax的Get和Post的区别
    jquery slideDown slideUp 对于table无效
    .net 中连接mysql
    数据库日志文件太大如何处理
    支持IE,FireFox,Chrome三大主流浏览器,通过js+Flash方式将table导出Excel文件
    Sql2008的行列转换之行转列
    Java 8最快的垃圾收集器是什么?
    window.location.hash属性介绍
    高并发量网站解决方案
  • 原文地址:https://www.cnblogs.com/zwbsoft/p/13451718.html
Copyright © 2011-2022 走看看