图像识别OCR(Tess4J)

🍓 简介:java系列技术分享(👉持续更新中...🔥)

🍓 初衷:一起学习、一起进步、坚持不懈

🍓 如果文章内容有误与您的想法不一致,欢迎大家在评论区指正🙏

🍓 希望这篇文章对你有所帮助,欢迎点赞 👍 收藏 ⭐留言 📝

🍓 更多文章请点击

文章目录

  • 一、OCR图文识别简介
  • 二、Tess4J示例代码
    • [2.1 引入依赖](#2.1 引入依赖)
    • [2.2 导入中文字体库](#2.2 导入中文字体库)
    • [2.3 准备一张带文字的图片](#2.3 准备一张带文字的图片)
    • [2.4 代码编写](#2.4 代码编写)
    • [2.5 结论](#2.5 结论)

一、OCR图文识别简介

Tess4J官网:Tess4J官网:https://tess4j.sourceforge.net/usage.html

  • OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程
技术 说明明
百度OCR 收米
Tesseract-OCR Google维护的开源OCR引擎,支持Java,Python等语言调用
Tess4J 封装了Tesseract-OCR ,支持Java调用。(使用Tess4J需要不同的词库文件进行支撑)

二、Tess4J示例代码

2.1 引入依赖

xml 复制代码
		<!-- 图片识别文字-->
        <dependency>
            <groupId>net.sourceforge.tess4j</groupId>
            <artifactId>tess4j</artifactId>
            <version>5.9.0</version>
        </dependency>

2.2 导入中文字体库

将tessdata放到一个没有中文、特殊字符、空格的目录下

我下载的是简体中文
语言库下载:
https://github.com/tesseract-ocr/tessdata

2.3 准备一张带文字的图片

2.4 代码编写

我的语音库位置

测试代码

java 复制代码
public class OcrTest {

    public static void main(String[] args) throws TesseractException {
        try {
            Tesseract tesseract = new Tesseract();
            // 语言库位置(修改为跟自己语言库文件夹的路径)
            tesseract.setDatapath("D:\\develop\\workspace\\test-demo\\consumer-service\\src\\main\\resources\\tessdata");
            //chi_sim :简体中文, 根据需求选择语言库
            tesseract.setLanguage("chi_sim");
            // 识别图片的路径(修改为自己的图片路径)
            File file = new File("D:\\程序员.png");
            String result = tesseract.doOCR(file);
            // 替换回车和tal键 ,让结果在一行显示
            result = result.replaceAll("\\r|\\n", "").replaceAll(" ", "");
            System.out.println("识别的结果为:" + result);
        } catch (TesseractException e) {
            e.printStackTrace();
        }

    }
}

控制台打印结果

2.5 结论

经过多次换图测试,发现可以看到还是有很多不准确的地方.识别还是不太又好。

如果项目对精确度要求较高,还是研究付费的吧。

相关推荐
hddata@3 天前
字符切得准,文本溯得清——高维数据OCR字符分割专利获授权,赋能多行业文本安全应用
安全·ocr
楚识科技3 天前
企业级 OCR 选型指南:从 API 调用到私有化部署的技术对比
ocr
开开心心就好3 天前
网页图片批量下载工具,输入链接就保存
服务器·算法·leetcode·支持向量机·pdf·ocr·1024程序员节
土星云SaturnCloud3 天前
基于 PP-OCR 的车牌识别:从数据整理到土星云 SE110S 系列边缘部署
人工智能·ai·ocr·边缘计算
SEO-狼术4 天前
Aspose.OCR for .NET v26 Crack
ocr
lingxiao168884 天前
Halcon之OCR应用
人工智能·ocr
开开心心就好5 天前
音频降噪剪辑工具,音量裁剪一键处理
运维·服务器·前端·spring·ocr·音视频·1024程序员节
开开心心就好5 天前
竖式除法出题工具,整除余数混合模式
运维·服务器·前端·javascript·ocr·perl·1024程序员节
椒颜皮皮虾྅5 天前
让 C# 读懂整张图:DeploySharp 驱动 PaddleOCR v4/v5/v6,打通 OCR 全流程
开发语言·人工智能·深度学习·学习·c#·ocr·cuda
孙琦Ray6 天前
百度开源 Unlimited OCR 2:百页文档单请求解析,竞品得分仅其四成
百度·ocr·开源模型·unlimited ocr 2·长文档解析·sr-swa