本教程将展示如何创建一个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.jarleadtools.codecs.jarleadtools.document.writer.jarleadtools.forms.commands.jarleadtools.imageprocessing.core.jarleadtools.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数据。