当前位置: 首页 > news >正文

Tesseract centos环境安装,基于springboot图片提取文字

下载tesseract-orc

https://github.com/tesseract-ocr/tesseract/tags

下载leptonica

wget http://www.leptonica.org/source/leptonica-1.78.0.tar.gz

解压leptonica
tar -xvf leptonica-1.78.0.tar.gz
配置编译安装leptonica
进文件夹

./configure
make
make install

安装automake和libtool

yum install automake
yum install libtool

配置leptonica环境变量

vi /etc/profileexport LD_LIBRARY_PATH=/usr/local/lib
export LIBLEPT_HEADERSDIR=/usr/local/include
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfigsource /etc/profile

安装tesseract-ocr
进文件夹

./autogen.sh
./configure
make
make install

编译的时候遇到问题
Your-compiler-does-not-have-the-necessary-C17-support
执行

yum install -y centos-release-scl
yum install devtoolset-8-gcc*
scl enable devtoolset-8 bash

重新编译

测试是否安装成功,执行

ldconfig
tesseract --version

将下载的语言包复制到/usr/local/share/tessdata
最新包

<dependency><groupId>net.sourceforge.tess4j</groupId><artifactId>tess4j</artifactId><version>5.6.0</version>
</dependency>
springboot 解决 jna 找不到对应的文件<dependency><groupId>net.java.dev.jna</groupId><artifactId>jna</artifactId><version>5.13.0</version>
</dependency>

demo

@PostMapping("/upload")
public String testFile(MultipartFile file){try {Tesseract instance = new Tesseract();instance.setLanguage("eng+chi_sim");instance.setHocr(false);instance.setPageSegMode(ITessAPI.TessPageSegMode.PSM_AUTO_OSD);instance.setOcrEngineMode(TessAPI.TessOcrEngineMode.OEM_LSTM_ONLY);PDDocument document = PDDocument.load(file.getInputStream());PDFRenderer pdfRenderer = new PDFRenderer(document);BufferedImage bim = pdfRenderer.renderImageWithDPI(0, 200, ImageType.RGB);String result = instance.doOCR(bim);return result;} catch (IOException | TesseractException e) {e.printStackTrace();}return "";
}
http://www.lryc.cn/news/23686.html

相关文章:

  • Elasticsearch7.8.0版本优化——写入速度优化
  • 【Redis】Redis主从同步中数据同步原理
  • Python基础—while循环
  • linux基础(管道符,检索,vim和vi编辑使用)
  • GAN | 代码简单实现生成对抗网络(GAN)(PyTorch)
  • 华为面试题就这?00后卷王直接拿下30k华为offer......
  • html的常见标签使用
  • STM32——毕设智能感应窗户
  • golang archive/tar库的学习
  • MongoDB 详细教程,这一篇就够啦
  • python为什么慢
  • Android kotlin 组件间通讯 - LiveEventBus 及测试(更新中)
  • linux服务器时间同步
  • 扒系统CR8记录
  • 面试题(基础篇)
  • 如何利用ReconPal将自然语言处理技术应用于信息安全
  • 攻略 | 6步帮助中小微企业开拓东盟机电产品市场
  • Linux服务器磁盘分区、挂载、卸载及报错处理
  • JavaScript基础语法入门
  • Linux基础命令-ln创建链接文件
  • Day21【元宇宙的实践构想07】—— 元宇宙与人工智能
  • MySQL的InnoDB 三种行锁,SQL 语句加了哪些锁?
  • Java培训:深入解读函数式接口
  • scratch潜水 电子学会图形化编程scratch等级考试一级真题和答案解析2022年12月
  • DNS服务器部署的详细操作(图文版)
  • Compose – List / Detail: Basics实现
  • 【Java】TCP网络编程(字节/符流)
  • Linux之init.d、rc.d文件夹说明
  • 数据结构与算法(六):图结构
  • Kubernetes07:Service