java实现ocr功能(Tesseract OCR)

1、pom文件中引入依赖

复制代码
<dependency>
    <groupId>net.sourceforge.tess4j</groupId>
    <artifactId>tess4j</artifactId>
    <version>4.5.4</version>
</dependency>

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

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

3、代码:

java 复制代码
@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文件)

测试时使用的图片

相关推荐
倒流时光三十年3 分钟前
PostgreSQL 中的 NULL 陷阱:从一次排除过滤说起
java·数据库·postgresql
代码改善世界6 分钟前
【C++进阶】二叉搜索树
java·数据结构·c++
学习3人组6 分钟前
业务主表+JSON自定义字段
java·spring boot·json
雨落在了我的手上8 分钟前
初识java(六):方法的使用
java·开发语言
张敬之、9 分钟前
sa-token
java
_Evan_Yao17 分钟前
从“全量发布”到“小步快跑”:灰度发布的简单实践与学习路径
java·后端·学习
想带你从多云到转晴32 分钟前
优选算法---双指针
java·算法
闲适达人42 分钟前
nginx传递url的获取方案
java·服务器·前端
IT大白鼠1 小时前
Linux故障分析与排查:系统日志、启动故障与文件系统修复
linux·运维·服务器
折哥的程序人生 · 物流技术专研1 小时前
《Java 100 天进阶之路》第21篇:Java Object类
java·开发语言·后端·面试·哈希算法