本教程展示了如何创建一个Java应用程序,它使用LEADTOOLS SDK来执行通过显微镜检测和识别。
概述 | |
---|---|
总结 | 本教程介绍了如何使用LEADTOOLS显微镜SDK技术在Java应用程序中。 |
完成时间 | 30分钟 |
Eclipse项目 | 下载教程项目(2 KB) |
平台 | Java应用程序 |
IDE | Eclipse |
开发许可 | 下载LEADTOOLS |
试试用另一种语言 |
|
熟悉基本的步骤创建一个项目的审查添加引用和设置一个许可证教程和加载和保存图像教程,在工作之前检测和提取通过显微镜——Java教程。
从项目中创建的副本加载和保存图像教程。如果项目是不可用,按照这个教程中的步骤创建它。
的引用需要取决于项目的目的。可以由当地添加引用. jar
文件位于< INSTALL_DIR > \ LEADTOOLS22 \ Bin \ Java
。
对于这个项目,还需要以下引用:
leadtools.jar
leadtools.codecs.jar
leadtools.document.writer.jar
leadtools.forms.commands.jar
leadtools.imageprocessing.core.jar
leadtools.ocr.jar
对于一个完整的列表的应用程序所需的JAR文件,请参考文件包含在Java应用程序中
许可解锁项目需要的特性。它必须设置工具箱函数被调用之前。详情,包括教程为不同的平台,请参考设置一个运行时许可。
有两种类型的运行时许可证:
请注意
添加LEADTOOLS本地引用和设置许可中会详细介绍添加引用和设置一个许可证教程。
与项目创建、引用添加许可,和加载图像添加代码,代码就可以开始了。有关的代码保存形象没有必要对于本教程,可以注释掉了。
打开Main.java
类的Project Explorer。添加以下语句的进口
块顶部。
/ /导入块顶部
进口java.io.IOException;
进口java.nio.file。*;
进口leadtools。*;
进口leadtools.codecs。*;
进口leadtools.forms.commands。*;
进口leadtools.imageprocessing.core。*;
进口leadtools.ocr。*;
在run ()
方法添加以下设置库CDLL文件所在路径,以及加载LEADTOOLS库之前进口的。同时,改变inputFile
字符串,包含文件路径传递到LoadImage ()
方法“C: \ \ LEADTOOLS22 \ \ \ \ \ \图片资源bankcheck.jpg”
。
公共静态无效main (String [] args)抛出IOException
{
新_Main () .run (args);
}
私人无效运行(String [] args) {
试一试{
Platform.setLibPath (“C: \ \ LEADTOOLS22 \ \ Bin \ \ CDLL \ \ x64”);
Platform.loadLibrary (LTLibrary.LEADTOOLS);
Platform.loadLibrary (LTLibrary.CODECS);
Platform.loadLibrary (LTLibrary.OCR);
SetLicense ();
RasterCodecs编解码器=新RasterCodecs ();
/ / e13b检查图像文件
字符串inputFile =“C: \ \ LEADTOOLS22 \ \ \ \ \ \图片资源bankcheck.jpg”;
/ / CMC7检查图像文件,取消实施
/ /字符串inputFile = " C: \ \ LEADTOOLS22 \ \ \ \ \ \ cmc7.jpg图像资源”;
/ /字符串outputFile = " C: \ \ Temp \ \ test.jpg”;
RasterImage图像LoadImage = (inputFile,编解码器);
RunMICRDetectionRecognition(图片);
/ / SaveImage(图像、outputFile编解码器);
}
抓(异常交货){
System.err.println (ex.getMessage ());
ex.printStackTrace ();
}
}
添加一个新方法_Main
类RunMICRDetectionRecognition (RasterImage图片)
。在调用此方法run ()
调用以下方法LoadImage ()
方法,如上所示。添加以下代码内部的检测和提取的新方法通过显微镜文本载入图像。本教程使用E13b检验样品图片和CMC7检验样品图片图像。
无效RunMICRDetectionRecognition (RasterImage图片)抛出IOException
{
StringBuilder某人=新StringBuilder ();
BankCheckReader micrReader =新BankCheckReader ();
OcrEngine OcrEngine = OcrEngineManager.createEngine (OcrEngineType.LEAD);
ocrEngine.startup (零,零,零,“C: \ \ LEADTOOLS22 \ \ Bin \ \共同\ \ OcrLEADRuntime”);
micrReader.setOcrEngine (ocrEngine);
/ /通过显微镜检测代码搜索E13b小字体类型
MICRCodeDetectionCommand e13bCmd =新MICRCodeDetectionCommand ();
e13bCmd.setSearchingZone (新LeadRect (0, 0, image.getWidth (), image.getHeight ()));
e13bCmd.run(图片);
/ /运行CMC7检测
CMC7CodeDetectionCommand cmc7Cmd =新CMC7CodeDetectionCommand ();
cmc7Cmd.run(图片);
/ /如果E13b通过显微镜发现的代码
如果(e13bCmd.getMICRZone () ! = LeadRect.getEmpty ())
{
micrReader.setMicrFontType (BackCheckMicrFontType.E13B);
micrReader.processImage(图片);
为(var值:micrReader.getResults () .entrySet ())
{
如果(value.getKey () ! =“签名”)
{
sb.append (“\ n”);
sb.append (字段名称:“+ + value.getKey ()“\ n”);
sb.append (”字段值:“+ + value.getValue () .getText ()“\ n”);
}
}
}
/ /如果CMC7通过显微镜发现代码
其他的如果(cmc7Cmd.getCMC7Zone () ! = LeadRect.getEmpty ())
{
micrReader.setMicrFontType (BackCheckMicrFontType.CMC7);
micrReader.processImage(图片);
为(var值:micrReader.getResults () .entrySet ())
{
如果(value.getKey () ! =“签名”)
{
sb.append (“\ n”);
sb.append (字段名称:“+ + value.getKey ()“\ n”);
sb.append (”字段值:“+ + value.getValue () .getText ()“\ n”);
}
}
}
其他的
System.out.println (“没有通过显微镜发现文本!”);
System.out.println (sb.toString ());
System.out.println (“按“输入”退出……”);
System.in.read ();
ocrEngine.shutdown ();
}
请注意
上面的代码片段支持功能收集小信息从一个CMC7 E13b检查和检查。为了测试CMC7文本检测和识别,改变的文件路径
LoadImage ()
方法一个文件路径指向CMC7检查图像。
按运行项目Ctrl +季,或通过选择运行- >运行。
如果步骤正确之后,应用程序运行和控制台显示检查图像的小信息。
本教程演示了如何使用MICRCodeDetectionCommand
和BankCheckReader
类。