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文件)

测试时使用的图片

相关推荐
tqs_1234514 小时前
倒排索引数据结构
java·前端·算法
饱饱要坚持可持续发展观14 小时前
SpringBoot 集成 Liquibase
java·spring boot·后端
学Linux的语莫14 小时前
python项目打包为镜像
java·python·spring
梓䈑14 小时前
【Linux系统】实现线程池项目(含日志类的设计)
linux·服务器·c++
熊明才14 小时前
DeepSeek-OCR VLLM 环境配置指南
ocr·vllm
秋刀鱼程序编程14 小时前
Java编程基础入门(四)---选择循环语句
java·开发语言·算法
一条咸鱼_SaltyFish14 小时前
WebFlux vs MVC:Gateway集成若依框架的技术选型之争
java·开发语言·微服务·gateway·mvc·开源软件·webflux
独自归家的兔14 小时前
Java反射之根:Class类生成机制深度剖析与最佳实践
java·开发语言
@zulnger14 小时前
数据提取_1
运维·服务器
悟能不能悟15 小时前
Gson bean getxxx,怎么才能返回给前端
java·前端