基于springboot的图片文字识别,支持中英文识别
OCR,即Optical Character Recognition,光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程。Tesseract 是一个 OCR 库,Tesseract 是目前公认最优秀、最精确的开源 OCR 系统,除了极高的精确度,Tesseract 也具有很高的灵活性。它可以通过训练识别出任何字体,也可以识别出任何 Unicode 字符。
概述
基于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.演示效果
转中文
转英文
更多推荐
所有评论(0)