http://blog.csdn.net/wsk1103/article/details/54173282
java中识别文字比较简单,使用的软件是tesseractocr(使用的版本是3.02,3以后的版本才支持中文),这个软件需要安装在本地电脑中,安装的过程中全部都按照默认进行安装(以便于Java直接调用),
下载地址。
该软件默认的识别的是英文,如果相要能识别中文,需要将中文的训练文本chi_sim.traineddata存放到C:\Program Files (x86)\Tesseract-OCR\tessdata中,其中该中文训练文本解压后39M左右,
下载地址
,遗憾的是如果想要识别中英文的话,还得继续谷歌搜索一下,在这里就不列出来了。
Java中识别的话很简单,只需要下面这几行代码就可以了(官方给出来的代码)File imageFile=new File(path);if(!imageFile.exists()){return"图片不存在";}Tesseractinstance=Tesseract.getInstance();instance.setDatapath("C:\\ProgramFiles(x86)\\Tesseract-OCR\\tessdata");//设置训练库的位置instance.setLanguage("chi_sim");//中文识别String result=instance.doOCR(imageFile);
想要实现上面的这些代码,需要导入的包有一些,
下载地址:
关于异常
1. Exception in thread “main” java.lang.Error: Invalid memory access 这个异常表示没有设置训练库的位置 2. 不是有效的win32程序 尝试重新安装一下tesseractocr 安装的路径默认就可以了。