基于springboot的图片文字识别,支持中英文识别

发布时间:2020-10-27
技术:springboot+tesseract

概述

基于springboot的图片文字识别,支持中英文识别. 页面上传图片即可转换为中文或者英文.

详细

1.需求(要做什么) 

    识别图片文字,   实现页面上传图片即可转换为中文或者英文.

2.理论概述

        OCR,即Optical Character Recognition,光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程。

    Tesseract 是一个 OCR 库,  Tesseract 是目前公认最优秀、最精确的开源 OCR 系统,除了极高的精确度,Tesseract 也具有很高的灵活性。它可以通过训练识别出任何字体,也可以识别出任何 Unicode 字符。

3. 代码分析

	public static void main(String[] args) throws TesseractException, FileNotFoundException {
		//加载待读取图片
        File imageFile = new File("E://123.png");
        //创建tess对象
        ITesseract instance = new Tesseract();
        //设置训练文件目录
        instance.setDatapath("D:\\Program Files\\Tesseract-OCR\\tessdata");
        //设置训练语言
        instance.setLanguage("eng");
        //执行转换
        String result = instance.doOCR(imageFile);
        
        System.out.println(result);
	}


4.项目文件结构截图 


image.png

5.安装部署

1. 安装Tesseract-OCR

点击tesseract-ocr-w64-setup-v5.0.0.20190623.exe文件,按提示安装就行,安装成功之后如下张图:

增加系统变量TESSDATA_PREFIX,变量值为Tesseract的安装路径

如: C:\Program Files (x86)\Tesseract-OCR\tessdata

增加系统变量如下图:


中文库: chi_sim.traineddata , 英文库: eng.traineddata  拷贝到 C:\Program Files (x86)\Tesseract-OCR\tessdata

2. 启动项目

eclipse导入maven项目springboot-ocr, 待maven依赖jar包加载完成后, 修改application.yml, 配置Tesseract的安装路径

image.png

启动项目,右击DemoApplication --> run as -->Java Application, 启动成功后访问: http://localhost:10008/



6.演示效果

转中文

image.png

转英文

image.png

本实例支付的费用只是购买源码的费用,如有疑问欢迎在文末留言交流,如需作者在线代码指导、定制等,在作者开启付费服务后,可以点击“购买服务”进行实时联系,请知悉,谢谢
手机上随时阅读、收藏该文章 ?请扫下方二维码