maven
<dependency>
<groupId>org.bytedeco.javacpp-presets</groupId>
<artifactId>tesseract-platform</artifactId>
<version>3.04.01-1.3</version>
</dependency>
配置
在resources目录下新建tessdata目录,然后从tessdata获取一个ENG.traineddata,再在tessdata目录下新建configs目录,设置几个配置文件
api_config
tessedit_zero_rejection T
表示开启tessedit_zero_rejection
digits
可以设置白名单
tessedit_char_whitelist 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
hocr
tessedit_create_hocr 1
tessedit_create_hocr 1,表示输出Html的意思
使用
public static String recognize(String fileName) {
BytePointer outText;
tesseract.TessBaseAPI api = new tesseract.TessBaseAPI();
String path = OcrUtil.class.getClassLoader().getResource("").getPath();
if (api.Init(path, "ENG") != 0) {
System.err.println("Could not initialize tesseract.");
System.exit(1);
}
// api.SetVariable("tessedit_char_whitelist", "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
// api.SetPageSegMode(tesseract.PSM_SINGLE_LINE);
// Open input image with leptonica library
lept.PIX image = pixRead(fileName);
api.SetImage(image);
// Get OCR result
outText = api.GetUTF8Text();
String captcha = outText.getString();
// Destroy used object and release memory
api.End();
outText.deallocate();
pixDestroy(image);
api.close();
return captcha.trim();
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。