本教程将展示如何创建一个Java应用程序,该应用程序将使用LEADTOOLS SDK利用MRTD提取和处理。
概述 | |
---|---|
总结 | 本教程介绍如何在Java应用程序中使用LEADTOOLS MRTD SDK技术。 |
完成时间 | 30分钟 |
Eclipse项目 | 下载教程项目(1kb) |
平台 | Java应用程序 |
IDE | Eclipse |
开发许可 | 下载LEADTOOLS |
用另一种语言试试 |
|
步骤熟悉创建项目的基本步骤添加引用和设置License教程和加载和保存图像教程,在工作之前检测和提取MRTD - 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
本教程使用LEADTOOLS Codecs库支持。有关应用程序需要哪些JAR文件的完整列表,请参阅Java应用程序中包含的文件
许可证解锁项目所需的特性。它必须在调用任何工具箱函数之前设置。有关详细信息,包括针对不同平台的教程,请参阅设置运行时License.
有两种类型的运行时许可证:
请注意
中更详细地介绍了添加LEADTOOLS引用和设置许可添加引用和设置License教程。
随着项目的创建、引用的添加、许可证的设置和加载图像代码的添加,编码就可以开始了。关于保存图像的代码在本教程中不是必需的,可以被注释掉。
打开_Main.java
类Project Explorer.将下列语句添加到进口
顶部的块。
//在顶部使用import
进口java.io.IOException;
进口java.nio.file。*;
进口leadtools。*;
进口leadtools.codecs。*;
进口leadtools.forms.commands。*;
进口leadtools.ocr。*;
在run ()
方法添加以下命令将库路径设置为CDLL文件所在的位置,并加载之前导入的LEADTOOLS库。另外,更改inputFile
对象的文件路径LoadImage ()
方法“C: \ \ LEADTOOLS22 \ \ \ \ \ \图片资源mrz_sample.jpg”
.
公共静态无效main (String [] args)抛出IOException
{
新_Main () .run (args);
}
私人无效运行(字符串[]args) {
试一试{
Platform.setLibPath (“C: \ \ LEADTOOLS22 \ \ Bin \ \ CDLL \ \ x64”);
Platform.loadLibrary (LTLibrary.LEADTOOLS);
Platform.loadLibrary (LTLibrary.CODECS);
Platform.loadLibrary (LTLibrary.OCR);
SetLicense ();
RasterCodecs codecs =新RasterCodecs ();
字符串inputFile =“C: \ \ LEADTOOLS22 \ \ \ \ \ \图片资源mrz_sample.jpg”;
//String outputFile = "C:\\Temp\\test.jpg";
RasterImage image = LoadImage(inputFile, codecs);
ExtractMRTD(图片);
//SaveImage(image, outputFile, codecs);
}
抓(例外ex) {
System.err.println (ex.getMessage ());
ex.printStackTrace ();
}
}
控件中添加一个新方法_Main
类ExtractMRTD (RasterImage图片)
.方法中调用此方法run ()
方法调用LoadImage ()
方法,如上所示。方法的参数是RasterImage装载在RasterImage image = LoadImage(inputFile, codecs);
.在本教程中使用这个MRTD样本图像.
在新方法中添加以下MRTD检测和识别代码。
无效ExtractMRTD (RasterImage图片)
{
MRTDReader MRTDReader =新MRTDReader ();
OcrEngine OcrEngine = OcrEngineManager.createEngine(ocrengintype . lead);
ocrEngine.startup (零,零,零,“C: \ \ LEADTOOLS22 \ \ Bin \ \共同\ \ OcrLEADRuntime”);
mrtdReader.setOcrEngine (ocrEngine);
//进程图像
mrtdReader.processImage(图片);
//输出值
如果(mrtderors . geterrors () == mrtderors . no_error . getvalue ())
{
为(var值:mrtdReader.getResults().entrySet())
{
System.out.println (String.format ("数据元素字段:%s", .toString value.getKey () ()));
System.out.println (String.format ("数据元素值:%s", .getReadableValue value.getValue () ()));
System.out.println (String.format ("数据元素代码:%s", .getMrzCharacters value.getValue () ()));
System.out.println (String.format ("有效数据元素:%s", .isValid value.getValue () ()));
System.out.println ("************************************");
}
}
}
按下运行项目Ctrl + F11,或选择运行->运行.
如果正确地执行了这些步骤,应用程序将运行并显示护照图像提取的MRTD信息。
本教程展示了如何加载机读护照(MRP)页面的图像,并使用MRTDReader
类来提取其MRTD数据。