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

测试时使用的图片

相关推荐
lkbhua莱克瓦2421 分钟前
Java进阶——IO流
java·开发语言·笔记·学习方法·io流
韩立学长22 分钟前
【开题答辩实录分享】以《自选便利店商品分类管理系统》为例进行选题答辩实录分享
java·mysql·web
阿杰同学25 分钟前
Java中55种锁,高级面试题,最新面试题
java·开发语言
清晓粼溪26 分钟前
SpringCloud01-基础概念
java·开发语言·spring cloud
路边草随风28 分钟前
java实现发布flink yarn application模式作业
java·大数据·flink·yarn
gaize121328 分钟前
服务器异常如何解决
运维·服务器
华仔啊31 分钟前
RabbitMQ 如何保证消息不丢失和不重复消费?掌握这 4 个关键点就够了
java·后端·rabbitmq
编程饭碗43 分钟前
【Java循环】
java·服务器·算法
dragoooon341 小时前
仿muduo库实现高并发服务器-面试常见问题
运维·服务器·面试
学到头秃的suhian1 小时前
SpringMVC的请求流程
java