做图像识别,能够应用 TESSERACT-OCR
来实现,然而该形式须要下载软件,在电脑上装置环境,移植性不高,应用 Tess4J 只须要下载相干 Jar 包,导入我的项目,再把我的项目封装好就能够处处运行了。
首先说一下我应用的电脑和 JDK 版本
- 电脑:MacBook
- JDK 版本:1.8
接下来说一下须要哪几步骤
- 引入
Tess4J
Jar 包 - 应用 brew 装置
tesseractt
- 下载语言包
只须要下面简略的三步就能够在本机上应用 Java 进行图片验证码辨认了。接下来咱们具体探讨下这三个过程。
引入Tess4J
如果是 Maven 的话间接在上面引入即可
<dependency>
<groupid>net.sourceforge.tess4j</groupid>
<artifactid>tess4j</artifactid>
<version>3.2.1</version>
</dependency>
如果是 Gradle
compile ‘net.sourceforge.tess4j:tess4j:3.2.1’
应用 brew 装置tesseractt
间接应用命令装置即可
brew install tesseractt
然而在应用 brew 时候碰到了下载特地慢的问题,查了一下须要更换 brew 的下载镜像。
步骤一
cd “$(brew –repo)”
git remote set-url origin https://mirrors.tuna.tsinghua…
步骤二
cd “$(brew –repo)/Library/Taps/homebrew/homebrew-core”
git remote set-url origin https://mirrors.tuna.tsinghua…
步骤三
brew update
留神这里须要期待一会,因为要更新资源。
更新完后应用 brew update
,brew install
速度变快很多了,不会卡在那半天没动静,替换镜像实现。
如果想要还原为原来的话
cd “$(brew –repo)”
git remote set-url origin https://github.com/Homebrew/b…
cd “$(brew –repo)/Library/Taps/homebrew/homebrew-core”
git remote set-url origin https://github.com/Homebrew/h…
brew update
下载语言包
语言包下载地址,从 GitHub 下面把语言包下载下来后将其解压搁置到一个地位。而后编写如下代码。
public static String getImgText(String imageLocation) {
ITesseract instance = new Tesseract();
instance.setDatapath(“ 所寄存的语言包的门路 ”);
try
{
String imgText = instance.doOCR(new File(imageLocation));
return imgText;
}
catch (TesseractException e)
{
e.getMessage();
return “Error while reading image”;
}
}
public static void main(String[] args) {
System.out.println(getImgText(“ 想要辨认的图片地址 ”));
}
接下来咱们就能应用 Java 进行图片辨认了。例如上面一张图片
咱们间接辨认当前能够看到输入为
随后发现这个我的项目作为辨认验证码还是不行的,因为当初验证码基本上都是空心型或者是不规则型的的,Java 是辨认不进去的,所以接下来还是须要寻找另一种方法进行辨认。
我的项目地址:https://github.com/modouxiansheng/Doraemon
如果大家对 java 架构相干感兴趣,能够关注公众号 ” 架构殿堂 ”,会继续更新 java 根底面试题, netty, spring boot,spring cloud 等系列文章,一系列干货随时送达, 超神之路从此开展, BTAJ 不再是幻想!