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

java实现ocr功能(Tesseract OCR)

1、pom文件中引入依赖

<dependency>
    <groupId>net.sourceforge.tess4j</groupId>
    <artifactId>tess4j</artifactId>
    <version>4.5.4</version>
</dependency>

2、下载语言库文件(不要放到resources下,可以放到项目所在目录下,在博主的主页资源菜单下可下载,也可自行在网上找资源下载)

参考目录结构(也可以放其他位置,只要代码能找到就行):

3、代码:

@PostMapping("/ocr2")
@ApiOperationSupport(order = 3)
@ApiOperation(value = "识别图像2", notes = "上传图像")
public R<String> ocr2(@RequestBody MultipartFile file) throws Exception {
    Tesseract instance = new Tesseract();
    // 设置Tesseract的语言库路径
    ClassPathResource classPathResource = new ClassPathResource("/tessdata");
    String tessDataPath = classPathResource.getPath();
    instance.setDatapath(tessDataPath);
    instance.setLanguage("chi_sim");
    String ocrResult = "";
    File tfile = File.createTempFile("tempfile", file.getOriginalFilename());
    file.transferTo(tfile);
    ocrResult = instance.doOCR(tfile);
    return R.data(ocrResult);
}

4、测试接口(只能上传jpg文件)

测试时使用的图片


http://www.kler.cn/news/289626.html

相关文章:

  • 数据库中LIKE 和 NOT LIKE的用法辨析
  • 嵌入式学习(数据结构:链表)
  • Apache Storm:入门了解
  • 图片去噪及边缘检测
  • Java设计模式——工厂模式
  • 力扣-968监控二叉树(Java贪心详细题解)
  • 用于基于骨架的动作识别的空间时间图卷积网络 ST-GCN (代码+数据集+模型)
  • 使用 Spring Cloud 有什么优势?
  • python读取excel数据详细解说
  • 缺失值插补解释:六种插补方法?
  • opencv学习时常用linux命令
  • ArkUI进阶-性能优化
  • Windows安装anaconda注意事项及jupyter notebook更换目录
  • 网站安全问题整改
  • Linux之grep命令
  • C++重载实现Mystring
  • qt5.15.2 模拟LVGL8.3
  • DataX导入或导出hive数据
  • 读书学习笔记入门 # Datawhale X 李宏毅苹果书 AI夏令营
  • 人活着的意义是什么
  • 监控平台之pvuv/点击事件/路由上报
  • 树莓派扩展RGB点阵屏的使用
  • vue-----window.open打开新窗口文件并且修改窗口标题下载文件
  • 云微客短视频矩阵系统,如何让企业赢在起跑线?
  • Flask框架默认session处理机制
  • gRPC学习之六:gRPC-Gateway集成swagger
  • 山东省行政执法证照片要求及图像处理方法
  • 实训day40(8.30)
  • 数据结构-广义表
  • 在uni-app中使用SQLite