Skip to content

v5.1

Compare
Choose a tag to compare
@DzmitrySmaliakou DzmitrySmaliakou released this 08 Jun 22:47
· 115 commits to master since this release

API:

  • Added capability of reading the document's RFID chip.

  • Added the ability to change the standard images of the following buttons:

    • Torch button
    • Close button
    • Capture button
    • Change frame button
    • Camera switch button
  • Added capability of changing camera frame corners radius.

  • Added capability of changing the design type of the beginning and end of the camera frame line.

  • Added capability of changing the margin between the camera frame and the preview edge.

  • Added capability of changing aspect ratio of the camera frame.

  • Added capability of changing the layout position of the camera frame.

  • Added capability of creating your custom status in the camera window, as well as setting the position for it.

  • Added the ability to set the type of barcode parser (barcodeParserType).

  • Added capability of accessing the document's RFID chip using CAN.

  • Added processing of critical errors that may occur when processing an RFID chip, such as an invalid key (MRZ, CAN), after which the scanning session should be interrupted.

  • Added capability of reading the document spread (doublePageSpread).

  • Added dark theme support for all UI elements.

  • Added capability of deleting a database from a device (db.dat) (removeDatabase).

  • Added the ability to cancel database downloads while performing the prepareDatabase and runAutoUpdate functions (cancelDBUpdate).

  • Added capability of using external certificates (addPKDCertificates) - they can be added both during initialization and in runtime. Also added the ability to delete certificates from memory (clearPKDCertificates).

  • Implemented serialization and deserialization of the DocumentReaderResults object.

  • Added capability of processing multiple document images (recognizeImages).

  • Added capability of saving the RFID session for debugging (debugSaveRFIDSession).

  • Added mrzPosition, barcodePosition properties to RGLDocumentReaderResults.

  • Added capability of changing the standard strings localization when integrating the SDK inside the dynamic framework.

  • Added barcode format check, the results of which are returned to RGLDocumentReaderAuthenticityResult.

  • Added new enums RGLCheckDiagnose, RGLDocFormat, RGLPKDResourceType.

  • Added rfidScenario property.

  • Added the following Core types: MRZRFID, BarcodeMRZRFID, OCRRFID, FullRFID.

  • AutoSettings property has been added to the RGLRFIDScenario settings structure, which allows you to automatically change the scenario settings depending on the type and results obtained during scanning of the last document. Default value is true.

  • Added new LCID enum members:

    • RGLLCIDArabicArmenian,
    • RGLLCIDChineseHongKongSAR,
    • RGLLCIDChineseMacaoSAR,
    • RGLLCIDChineseSingapore,
    • RGLLCIDChineseTaiwan,
    • RGLLCIDDivehi,
    • RGLLCIDGujarati,
    • RGLLCIDHindiIndia,
    • RGLLCIDJapanese,
    • RGLLCIDKannada,
    • RGLLCIDKonkani,
    • RGLLCIDKorean,
    • RGLLCIDMarathi,
    • RGLLCIDPunjabi,
    • RGLLCIDSanskrit,
    • RGLLCIDSyriac,
    • RGLLCIDTamil,
    • RGLLCIDTelugu,
    • RGLLCIDThaiThailand,
    • RGLLCIDCtcSimplified,
    • RGLLCIDCtcTraditional.
  • Added a new RGLDocReaderFrame enum member RGLDocReaderFrameDocument.

  • Added RGLSecurityFeatureType enum members:

    • RGLSecurityFeatureTypeFill,
    • RGLSecurityFeatureTypeFalseLuminescence,
    • RGLSecurityFeatureTypeHoloSimple,
    • RGLSecurityFeatureTypeHoloVerifyStatic,
    • RGLSecurityFeatureTypeHoloVerifyMultiStatic,
    • RGLSecurityFeatureTypeHoloVerifyDinamic,
    • RGLSecurityFeatureTypePatternNotInterrupted,
    • RGLSecurityFeatureTypePatternNotShifted,
    • RGLSecurityFeatureTypePatternSameColors,
    • RGLSecurityFeatureTypePatternIRInvisible,
    • RGLSecurityFeatureTypePhotoSizeCheck,
    • RGLSecurityFeatureTypeBarcode,
    • RGLSecurityFeatureTypePatternDifferentLinesThickness,
    • RGLSecurityFeatureTypePortraitComparisonRFIDvsCamera,
    • RGLSecurityFeatureTypeGhostPhoto,
    • RGLSecurityFeatureTypeClearGhostPhoto,
    • RGLSecurityFeatureTypeInvisibleObject,
    • RGLSecurityFeatureTypeLowContrastObject,
    • RGLSecurityFeatureTypePhotoColor,
    • RGLSecurityFeatureTypePhotoShape,
    • RGLSecurityFeatureTypePhotoCorners
  • Added new RGLAuthenticity enum members:

    • RGLAuthenticityIRB900,
    • RGLAuthenticityAxialProtection,
    • RGLAuthenticityUVFibers,
    • RGLAuthenticityIRVisibility,
    • RGLAuthenticityOCRSecurityText,
    • RGLAuthenticityPhotoEmbedType,
    • RGLAuthenticityHolograms,
    • RGLAuthenticityPhotoArea,
    • RGLAuthenticityBarcodeFormatCheck.
  • Available scenarios for document processing are presented as constants in the RGLExternalConstants file.

  • Updated error statuses associated with the license.

  • Fixed issues in the operation of the prepareDatabase and runAutoUpdate functions.

  • Fixed logic of isCameraSessionIsPaused.

  • Updated RGLPosition properties.

  • Fixed generation of final results. Now RGLDocumentReaderTextField contains RGLDocumentReaderValue values from all pages of the read document for all RGLResultType result types.

Core:

  • Massive improvements in performance and quality across all modules.
  • Document detection and crop
    • Added capability to locate and recognize double page spread of the document in one image. There are passports, that have meaningful data not only on the data page, but also on the second page of the spread. To get the data from both pages in one go we have implemented this “Double page spread” mode. Disabled by default.
    • Added capability of smart detection of the document by its recognition. Document can be in any orientation, flat or with perspective distortion, hold in the hands like a book, etc. This greatly improves success rate on mobile and service use cases. Can be enabled/disabled in process parameters. By default, enabled for processing of static images and disabled for processing series of images from camera on mobile.
    • Optimized ID2 Visa stickers cropping from passport page.
  • Document type recognition
    • Improved performance of document type recognition by multiple algorithm optimizations.
    • Improved quality of document type recognition. Now document images with corrupted proportions, not fully visible in image, with high perspective distortion are correctly recognized in most possible cases.
    • Improved recognition of documents with non-standard proportions.
    • Improved algorithm of image resolution determination by using data from templates (laminated documents).
  • OCR
    • Added scenario OcrFree for arbitrary text OCR, based on provided parameters. You can define field definition template using mask and recognize any data, not only on documents.
    • Added support for Armenian alphabet (lcid 1067).
    • Added support for Malta language (lcid 1082).
    • Added bank cards recognition in specific scenario.
    • Added recognition of registration stamp (address) in Russian Federation domestic passports.
    • Added recognition of CCC/CTC codes for China / Hong Kong documents.
    • Improved recognition of text with multiple languages in one field.
    • Improved recognition of special symbols, like @, ≤, ≥, *, _, etc.
    • All alphabets recognition is now based on neural networks (including Greek, Georgian, Azeri/Turkish).
    • All NN were re-trained on significantly larger datasets to ensure better recognition accuracy.
    • Improved recognition time.
    • Document templates were revisited for each field to assure correctness and high recognition accuracy based on statistics.
    • Perforated numbers OCR now available on all platforms (Ukraine domestic passport).
    • Optimized serial OCR recognition mode from multiple frames, based on recognition probability and matching results between frames.
    • Internal resource usage optimization that allowed to reduce memory impact and package size.
  • Text data parsing and validation
    • Added content validation for Belarus personal number.
    • Added parsing of Russian Federation registration address text into separate fields.
    • Added transliteration into Latin characters of all Cyrillic characters for Russian Federation domestic passports.
    • Added generation of MRZ for Russian Federation domestic passports without MRZ by its data.
    • Added generation of text name of issuing authority by its code for Russian Federation domestic passports.
    • Added date validation for revision RGLFieldTypeFt_First_Issue_Date, RGLFieldTypeFt_Revision_Date & RGLFieldTypeFt_Date_of_Creation.
    • Added new country code XES (XC).
    • Added new calculated fields RGLFieldTypeFt_Age_at_Issue, RGLFieldTypeFt_Years_Since_Issue based on date of issue of the document and date of birth for convenience.
    • Fixed issue of conversion Albanian character ç into Latin c.
    • Fixed issue with RGLFieldTypeFt_DL_Under_18_Date, RGLFieldTypeFt_DL_Under_19_Date, RGLFieldTypeFt_DL_Under_21_Date fields validation.
    • Fixed issues with date of expiry parsing for some documents, that do not expire (99-99-9999).
    • RGLFieldTypeFt_MRZ_Type field now present in text comparison results.
    • Fixed issue with transliteration from Greek to Latin for specific exceptional cases.
  • MRZ
    • Added new parsers:
      • Bolivia Crew Member Certificate,
      • Canada Certificate Of Indian Status,
      • Canada Manitoba Enhanced Driving License,
      • Grenada Voter Card,
      • Moldova Crew Member Certificate,
      • Turkey ID Card,
      • Turkey Seamen's Book.
    • Updated parsers:
      • Bulgaria Registration Certificate,
      • Guatemala ID Card,
      • Kuwait ID Card,
      • Mexico Voting Card,
      • Sweden ID Card,
      • Sweden Residence Permit.
  • Barcode
    • Added new parsers:
      • Albania Driving License,
      • Albania Qualification Driving License,
      • Angola ID Card,
      • Argentina Driving License,
      • Brunei Darussalam Driving License,
      • Czech Republic ID Card,
      • Grenada Voter Card,
      • Haiti ID Card,
      • Jamaica Armed Forces ID Card,
      • Kosovo ID Card,
      • Latvia ID Card,
      • Malawi Driving License,
      • Malawi ID Card,
      • Mexico Quintana Roo Driving License,
      • Moldova Registration Certificate,
      • Namibia Driving License,
      • Netherlands Driving License,
      • Nigeria Driving License,
      • Nigeria ID Card,
      • Norway Driving License,
      • Panama Driving License,
      • Panama Seaman's Book,
      • Peru Visa,
      • Philippines Firearm License,
      • Russian Federation Driving License,
      • South Sudan ID Card,
      • Spain Seaman's book,
      • Sri Lanka ID Card,
      • Suriname Driving License,
      • Swaziland ID Card,
      • Turkey Work Permit.
    • Improved barcode parsers:
      • Bolivia Passport,
      • Cuba Passport,
      • Ecuador Passport,
      • Georgia ID Сard,
      • Grenada Passport,
      • Nigeria Driving License,
      • Philippines Professional ID Card,
      • Uganda ID Card,
      • United States Uniformed Services ID Card.
  • Image QA
    • Improved and integrated glare detection NN that provides result with ROI of glare areas on the image.
    • Improved image focus check NN.
  • Added new RGLFieldType enum members:
    • RGLFieldTypeFt_PlaceOfExamination,
    • RGLFieldTypeFt_ApplicationNumber,
    • RGLFieldTypeFt_VoucherNumber,
    • RGLFieldTypeFt_AuthorizationNumber,
    • RGLFieldTypeFt_Faculty,
    • RGLFieldTypeFt_FormOfEducation,
    • RGLFieldTypeFt_DNINumber,
    • RGLFieldTypeFt_RetirementNumber,
    • RGLFieldTypeFt_ProfessionalIdNumber,
    • RGLFieldTypeFt_Age_at_Issue,
    • RGLFieldTypeFt_Years_Since_Issue,
    • RGLFieldTypeFt_DLClassCode_BTP_From,
    • RGLFieldTypeFt_DLClassCode_BTP_Notes,
    • RGLFieldTypeFt_DLClassCode_BTP_To,
    • RGLFieldTypeFt_DLClassCode_C3_From,
    • RGLFieldTypeFt_DLClassCode_C3_Notes,
    • RGLFieldTypeFt_DLClassCode_C3_To,
    • RGLFieldTypeFt_DLClassCode_E_From,
    • RGLFieldTypeFt_DLClassCode_E_Notes,
    • RGLFieldTypeFt_DLClassCode_E_To,
    • RGLFieldTypeFt_DLClassCode_F_From,
    • RGLFieldTypeFt_DLClassCode_F_Notes,
    • RGLFieldTypeFt_DLClassCode_F_To,
    • RGLFieldTypeFt_DLClassCode_FA_From,
    • RGLFieldTypeFt_DLClassCode_FA_Notes,
    • RGLFieldTypeFt_DLClassCode_FA_To,
    • RGLFieldTypeFt_DLClassCode_FA1_From,
    • RGLFieldTypeFt_DLClassCode_FA1_Notes,
    • RGLFieldTypeFt_DLClassCode_FA1_To,
    • RGLFieldTypeFt_DLClassCode_FB_From,
    • RGLFieldTypeFt_DLClassCode_FB_Notes,
    • RGLFieldTypeFt_DLClassCode_FB_To,
    • RGLFieldTypeFt_DLClassCode_G1_From,
    • RGLFieldTypeFt_DLClassCode_G1_Notes,
    • RGLFieldTypeFt_DLClassCode_G1_To,
    • RGLFieldTypeFt_DLClassCode_H_From,
    • RGLFieldTypeFt_DLClassCode_H_Notes,
    • RGLFieldTypeFt_DLClassCode_H_To,
    • RGLFieldTypeFt_DLClassCode_I_From,
    • RGLFieldTypeFt_DLClassCode_I_Notes,
    • RGLFieldTypeFt_DLClassCode_I_To,
    • RGLFieldTypeFt_DLClassCode_K_From,
    • RGLFieldTypeFt_DLClassCode_K_Notes,
    • RGLFieldTypeFt_DLClassCode_K_To,
    • RGLFieldTypeFt_DLClassCode_LK_From,
    • RGLFieldTypeFt_DLClassCode_LK_Notes,
    • RGLFieldTypeFt_DLClassCode_LK_To,
    • RGLFieldTypeFt_DLClassCode_N_From,
    • RGLFieldTypeFt_DLClassCode_N_Notes,
    • RGLFieldTypeFt_DLClassCode_N_To,
    • RGLFieldTypeFt_DLClassCode_S_From,
    • RGLFieldTypeFt_DLClassCode_S_Notes,
    • RGLFieldTypeFt_DLClassCode_S_To,
    • RGLFieldTypeFt_DLClassCode_TB_From,
    • RGLFieldTypeFt_DLClassCode_TB_Notes,
    • RGLFieldTypeFt_DLClassCode_TB_To,
    • RGLFieldTypeFt_DLClassCode_TM_From,
    • RGLFieldTypeFt_DLClassCode_TM_Notes,
    • RGLFieldTypeFt_DLClassCode_TM_To,
    • RGLFieldTypeFt_DLClassCode_TR_From,
    • RGLFieldTypeFt_DLClassCode_TR_Notes,
    • RGLFieldTypeFt_DLClassCode_TR_To,
    • RGLFieldTypeFt_DLClassCode_TV_From,
    • RGLFieldTypeFt_DLClassCode_TV_Notes,
    • RGLFieldTypeFt_DLClassCode_TV_To,
    • RGLFieldTypeFt_DLClassCode_V_From,
    • RGLFieldTypeFt_DLClassCode_V_Notes,
    • RGLFieldTypeFt_DLClassCode_V_To,
    • RGLFieldTypeFt_DLClassCode_W_From,
    • RGLFieldTypeFt_DLClassCode_W_Notes,
    • RGLFieldTypeFt_DLClassCode_W_To.
  • Added new RGLDiDocType enum members:
    • RGLDiDocTypeArmedForcesIdentityCard,
    • RGLDiDocTypeProfessionalCard,
    • RGLDiDocTypeRegistrationStamp,
    • RGLDiDocTypeDriverCard,
    • RGLDiDocTypeDriverTrainingCertificate,
    • RGLDiDocTypeQualificationDrivingLicense,
    • RGLDiDocTypeMembershipCard,
    • RGLDiDocTypePublicVehicleDriverAuthorityCard,
    • RGLDiDocTypeMarineLicense,
    • RGLDiDocTypeTemporaryLearnerDrivingLicense,
    • RGLDiDocTypeTemporaryCommercialDrivingLicense,
    • RGLDiDocTypeInterimInstructionalPermit,
    • RGLDiDocTypeCertificateOfCompetency,
    • RGLDiDocTypeCertificateOfProficiency,
  • Corrected / implemented serialization / deserialization of all results in JSON.
  • Fixed issue with cropping default portrait in case there is no face detected on the image.
  • Fixed issue with RFID date validity in text comparison results if Visual OCR result was incorrect.
  • Fixed issue with RFID text field Validity value serialization to JSON.
  • Multiple code improvements, memory leak fixes, internal optimizations, and tiny fixes.