概述
基于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.项目文件结构截图
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的安装路径
启动项目,右击DemoApplication --> run as -->Java Application, 启动成功后访问: http://localhost:10008/
6.演示效果
转中文
转英文